Files
veridian/app/components/Attachment/Preview.vue
T

32 lines
807 B
Vue

<script setup lang="ts">
import Display from './Display.vue';
const props = defineProps<{
file: {
id: string;
name: string;
mimeType: string;
status: 'uploading' | 'uploaded' | 'error';
url: string;
}
}>();
const emit = defineEmits<{
delete: [];
}>();
const handleDelete = async () => {
emit('delete');
};
</script>
<template>
<div class="relative h-full w-fit">
<Display :file="props.file" />
<button @click="handleDelete"
class="absolute top-0 right-0 translate-x-1/2 -translate-y-1/2 flex items-center justify-center w-4 h-4 rounded-full bg-[var(--bg-base)] border border-[var(--color-border)] text-xs text-[#ff3b3b]">
<span class="i-mynaui-x text-3"></span>
</button>
</div>
</template>