Files
nocodb/packages/nc-gui/components/cell/attachment/Preview/Pdf.vue
2025-01-28 13:18:34 +00:00

29 lines
610 B
Vue

<script setup lang="ts">
interface Props {
src: string[]
class?: string
}
const props = defineProps<Props>()
const emits = defineEmits(['error'])
const currentIndex = ref(0)
const handleError = async () => {
if (currentIndex.value < props.src.length - 1) {
currentIndex.value = currentIndex.value + 1
} else {
const isURLExp = await isURLExpired(props.src[0])
if (isURLExp.isExpired) {
emits('error')
}
currentIndex.value = 0
}
}
</script>
<template>
<pdf-object :class="props.class" :url="src[currentIndex]" class="w-full h-full" @error="handleError" />
</template>