element-plus
Version:
A Component Library for Vue 3
1 lines • 11.7 kB
Source Map (JSON)
{"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=\"disabled ? undefined : 0\"\n :aria-disabled=\"disabled\"\n role=\"button\"\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 '@element-plus/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 '@element-plus/hooks'\nimport ElProgress from '@element-plus/components/progress'\nimport { useFormDisabled } from '@element-plus/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', disabled.value),\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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"}