{"version":3,"file":"upload-list2.mjs","sources":["../../../../../../../packages/components/upload/src/upload-list.vue"],"sourcesContent":["<template>\n  <transition-group tag=\"ul\" :class=\"containerKls\" :name=\"nsList.b()\">\n    <li\n      v-for=\"(file, index) in files\"\n      :key=\"file.uid || file.name\"\n      :class=\"[\n        nsUpload.be('list', 'item'),\n        nsUpload.is(file.status),\n        { focusing },\n      ]\"\n      tabindex=\"0\"\n      @keydown.delete=\"!disabled && handleRemove(file)\"\n      @focus=\"focusing = true\"\n      @blur=\"focusing = false\"\n      @click=\"focusing = false\"\n    >\n      <slot :file=\"file\" :index=\"index\">\n        <img\n          v-if=\"\n            listType === 'picture' ||\n            (file.status !== 'uploading' && listType === 'picture-card')\n          \"\n          :class=\"nsUpload.be('list', 'item-thumbnail')\"\n          :src=\"file.url\"\n          :crossorigin=\"crossorigin\"\n          alt=\"\"\n        />\n        <div\n          v-if=\"file.status === 'uploading' || listType !== 'picture-card'\"\n          :class=\"nsUpload.be('list', 'item-info')\"\n        >\n          <a\n            :class=\"nsUpload.be('list', 'item-name')\"\n            @click.prevent=\"handlePreview(file)\"\n          >\n            <el-icon :class=\"nsIcon.m('document')\">\n              <Document />\n            </el-icon>\n            <span\n              :class=\"nsUpload.be('list', 'item-file-name')\"\n              :title=\"file.name\"\n            >\n              {{ file.name }}\n            </span>\n          </a>\n          <el-progress\n            v-if=\"file.status === 'uploading'\"\n            :type=\"listType === 'picture-card' ? 'circle' : 'line'\"\n            :stroke-width=\"listType === 'picture-card' ? 6 : 2\"\n            :percentage=\"Number(file.percentage)\"\n            :style=\"listType === 'picture-card' ? '' : 'margin-top: 0.5rem'\"\n          />\n        </div>\n\n        <label :class=\"nsUpload.be('list', 'item-status-label')\">\n          <el-icon\n            v-if=\"listType === 'text'\"\n            :class=\"[nsIcon.m('upload-success'), nsIcon.m('circle-check')]\"\n          >\n            <circle-check />\n          </el-icon>\n          <el-icon\n            v-else-if=\"['picture-card', 'picture'].includes(listType)\"\n            :class=\"[nsIcon.m('upload-success'), nsIcon.m('check')]\"\n          >\n            <Check />\n          </el-icon>\n        </label>\n        <el-icon\n          v-if=\"!disabled\"\n          :class=\"nsIcon.m('close')\"\n          @click=\"handleRemove(file)\"\n        >\n          <Close />\n        </el-icon>\n        <!-- Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn-->\n        <!-- This is a bug which needs to be fixed -->\n        <!-- TODO: Fix the incorrect navigation interaction -->\n        <i v-if=\"!disabled\" :class=\"nsIcon.m('close-tip')\">{{\n          t('el.upload.deleteTip')\n        }}</i>\n        <span\n          v-if=\"listType === 'picture-card'\"\n          :class=\"nsUpload.be('list', 'item-actions')\"\n        >\n          <span\n            :class=\"nsUpload.be('list', 'item-preview')\"\n            @click=\"handlePreview(file)\"\n          >\n            <el-icon :class=\"nsIcon.m('zoom-in')\"><zoom-in /></el-icon>\n          </span>\n          <span\n            v-if=\"!disabled\"\n            :class=\"nsUpload.be('list', 'item-delete')\"\n            @click=\"handleRemove(file)\"\n          >\n            <el-icon :class=\"nsIcon.m('delete')\">\n              <Delete />\n            </el-icon>\n          </span>\n        </span>\n      </slot>\n    </li>\n    <slot name=\"append\" />\n  </transition-group>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport { ElIcon } from '@hd-front-end/components/icon'\nimport {\n  Check,\n  CircleCheck,\n  Close,\n  Delete,\n  Document,\n  ZoomIn,\n} from '@element-plus/icons-vue'\nimport { useLocale, useNamespace } from '@hd-front-end/hooks'\nimport ElProgress from '@hd-front-end/components/progress'\nimport { useFormDisabled } from '@hd-front-end/components/form'\nimport { uploadListEmits, uploadListProps } from './upload-list'\n\nimport type { UploadFile } from './upload'\n\ndefineOptions({\n  name: 'ElUploadList',\n})\n\nconst props = defineProps(uploadListProps)\nconst emit = defineEmits(uploadListEmits)\n\nconst { t } = useLocale()\nconst nsUpload = useNamespace('upload')\nconst nsIcon = useNamespace('icon')\nconst nsList = useNamespace('list')\nconst disabled = useFormDisabled()\n\nconst focusing = ref(false)\n\nconst containerKls = computed(() => [\n  nsUpload.b('list'),\n  nsUpload.bm('list', props.listType),\n  nsUpload.is('disabled', props.disabled),\n])\n\nconst handleRemove = (file: UploadFile) => {\n  emit('remove', file)\n}\n</script>\n"],"names":["_createBlock","_TransitionGroup","_normalizeClass","_unref","_openBlock","_createElementBlock","_Fragment","files","_withKeys","_renderSlot","listType","crossorigin","_createCommentVNode","_createElementVNode","_withModifiers","handlePreview","_createVNode","_toDisplayString","_normalizeStyle"],"mappings":"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"}