Files
docuseal/app/javascript/template_builder/document.vue
T

54 lines
1.1 KiB
Vue
Raw Normal View History

2023-05-21 17:59:36 +03:00
<template>
2023-05-31 00:50:43 +03:00
<div>
<Page
v-for="(image, index) in sortedPreviewImages"
:key="image.id"
:number="index"
:areas="areasIndex[index]"
:is-draw="isDraw"
:is-drag="isDrag"
:class="{ 'cursor-crosshair': isDraw }"
:image="image"
@drop-field="$emit('drop-field', {...$event, attachment_uuid: document.uuid })"
@draw="$emit('draw', {...$event, attachment_uuid: document.uuid })"
/>
</div>
2023-05-21 17:59:36 +03:00
</template>
<script>
import Page from './page'
export default {
2023-05-31 23:19:20 +03:00
name: 'TemplateDocument',
2023-05-21 17:59:36 +03:00
components: {
Page
},
props: {
document: {
type: Object,
required: true
},
areasIndex: {
type: Object,
required: false,
default: () => ({})
},
isDraw: {
type: Boolean,
required: false,
default: false
2023-05-23 00:03:26 +03:00
},
isDrag: {
type: Boolean,
required: false,
default: false
2023-05-21 17:59:36 +03:00
}
},
2023-05-23 00:03:26 +03:00
emits: ['draw', 'drop-field'],
2023-05-21 17:59:36 +03:00
computed: {
sortedPreviewImages () {
return [...this.document.preview_images].sort((a, b) => parseInt(a.filename) - parseInt(b.filename))
}
}
}
</script>