forked from mirrors/homebox
bd321af29f
* new PR tasks * add homebox to know words * formatting * bump deps * generate db models * ts errors * drop id * fix accessor * drop unused time field * change CI * add expected error * add type check * resolve serveral type errors * hoise in CI
31 lines
646 B
Vue
31 lines
646 B
Vue
<template>
|
|
<div
|
|
ref="el"
|
|
class="h-24 w-full border-2 border-primary border-dashed grid place-content-center"
|
|
:class="isOverDropZone ? 'bg-primary bg-opacity-10' : ''"
|
|
>
|
|
<slot />
|
|
</div>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
defineProps({
|
|
modelValue: {
|
|
type: Boolean,
|
|
required: false,
|
|
},
|
|
});
|
|
|
|
const emit = defineEmits(["update:modelValue", "drop"]);
|
|
|
|
const el = ref<HTMLDivElement>();
|
|
const { isOverDropZone } = useDropZone(el, files => {
|
|
emit("drop", files);
|
|
});
|
|
|
|
watch(isOverDropZone, () => {
|
|
emit("update:modelValue", isOverDropZone.value);
|
|
});
|
|
</script>
|
|
|
|
<style scoped></style>
|