{"version":3,"file":"upload-dragger2.mjs","sources":["../../../../../../packages/components/upload/src/upload-dragger.vue"],"sourcesContent":["<template>\n  <div\n    :class=\"{\n      ['upload-dragger']: true,\n      'is-dragover': dragover,\n    }\"\n    @drop.prevent=\"onDrop\"\n    @dragover.prevent=\"onDragover\"\n    @dragleave.prevent=\"dragover = false\"\n  >\n    <slot></slot>\n  </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, inject } from 'vue'\nimport { uploadContextKey } from '@hongluan-ui/tokens'\nimport { throwError } from '@hongluan-ui/utils/error'\nimport { useConsistentProp } from '@hongluan-ui/hooks'\nimport { uploadDraggerEmits, uploadDraggerProps } from './upload-dragger'\n\nconst COMPONENT_NAME = 'UploadDrag'\n\ndefineOptions({\n  name: COMPONENT_NAME,\n})\n\ndefineProps(uploadDraggerProps)\nconst emit = defineEmits(uploadDraggerEmits)\n\nconst { disabled } = useConsistentProp()\n\nconst uploaderContext = inject(uploadContextKey)\nif (!uploaderContext) {\n  throwError(\n    COMPONENT_NAME,\n    'usage: <hl-upload><upload-dragger /></hl-upload>',\n  )\n}\n\nconst dragover = ref(false)\n\nconst onDrop = (e: DragEvent) => {\n  if (disabled.value) return\n  dragover.value = false\n\n  e.stopPropagation()\n\n  const files = Array.from(e.dataTransfer.files)\n  emit('file', files)\n}\n\nconst onDragover = () => {\n  if (!disabled.value) dragover.value = true\n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;oCAsBc;AAAA,EACZ,MAAM;AACR;;;;;;AAKA,UAAM,EAAE,aAAa;AAErB,UAAM,kBAAkB,OAAO,gBAAgB;AAC/C,QAAI,CAAC,iBAAiB;AACpB,iBACE,gBACA,kDACF;AAAA;AAGF,UAAM,WAAW,IAAI,KAAK;AAE1B,UAAM,SAAS,CAAC,MAAiB;AAC/B,UAAI,SAAS;AAAO;AACpB,eAAS,QAAQ;AAEjB,QAAE;AAEF,YAAM,QAAQ,MAAM,KAAK,EAAE,aAAa,KAAK;AAC7C,WAAK,QAAQ,KAAK;AAAA;AAGpB,UAAM,aAAa,MAAM;AACvB,UAAI,CAAC,SAAS;AAAO,iBAAS,QAAQ;AAAA;;;;;;;;;;;;;;;;;;;"}