element-plus
Version:
A Component Library for Vue 3
1 lines • 6.58 kB
Source Map (JSON)
{"version":3,"file":"upload.vue2.mjs","sources":["../../../../../../packages/components/upload/src/upload.vue"],"sourcesContent":["<template>\n <div>\n <upload-list\n v-if=\"isPictureCard && showFileList\"\n :disabled=\"disabled\"\n :list-type=\"listType\"\n :files=\"uploadFiles\"\n :crossorigin=\"crossorigin\"\n :handle-preview=\"onPreview\"\n @remove=\"handleRemove\"\n >\n <template v-if=\"$slots.file\" #default=\"{ file, index }\">\n <slot name=\"file\" :file=\"file\" :index=\"index\" />\n </template>\n <template #append>\n <upload-content ref=\"uploadRef\" v-bind=\"uploadContentProps\">\n <slot v-if=\"$slots.trigger\" name=\"trigger\" />\n <slot v-if=\"!$slots.trigger && $slots.default\" />\n </upload-content>\n </template>\n </upload-list>\n\n <upload-content\n v-if=\"!isPictureCard || (isPictureCard && !showFileList)\"\n ref=\"uploadRef\"\n v-bind=\"uploadContentProps\"\n >\n <slot v-if=\"$slots.trigger\" name=\"trigger\" />\n <slot v-if=\"!$slots.trigger && $slots.default\" />\n </upload-content>\n\n <slot v-if=\"$slots.trigger\" />\n <slot name=\"tip\" />\n <upload-list\n v-if=\"!isPictureCard && showFileList\"\n :disabled=\"disabled\"\n :list-type=\"listType\"\n :files=\"uploadFiles\"\n :crossorigin=\"crossorigin\"\n :handle-preview=\"onPreview\"\n @remove=\"handleRemove\"\n >\n <template v-if=\"$slots.file\" #default=\"{ file, index }\">\n <slot name=\"file\" :file=\"file\" :index=\"index\" />\n </template>\n </upload-list>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onBeforeUnmount, provide, shallowRef, toRef } from 'vue'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport { uploadContextKey } from './constants'\nimport UploadList from './upload-list.vue'\nimport UploadContent from './upload-content.vue'\nimport { useHandlers } from './use-handlers'\nimport { uploadPropsDefaults } from './upload'\n\nimport type { UploadProps } from './upload'\nimport type {\n UploadContentInstance,\n UploadContentProps,\n} from './upload-content'\n\ndefineOptions({\n name: 'ElUpload',\n})\n\nconst props = withDefaults(defineProps<UploadProps>(), uploadPropsDefaults)\n\nconst disabled = useFormDisabled()\n\nconst uploadRef = shallowRef<UploadContentInstance>()\nconst {\n abort,\n submit,\n clearFiles,\n uploadFiles,\n handleStart,\n handleError,\n handleRemove,\n handleSuccess,\n handleProgress,\n revokeFileObjectURL,\n} = useHandlers(props, uploadRef)\n\nconst isPictureCard = computed(() => props.listType === 'picture-card')\n\nconst uploadContentProps = computed<UploadContentProps>(() => ({\n ...props,\n fileList: uploadFiles.value,\n onStart: handleStart,\n onProgress: handleProgress,\n onSuccess: handleSuccess,\n onError: handleError,\n onRemove: handleRemove,\n}))\n\nonBeforeUnmount(() => {\n uploadFiles.value.forEach(revokeFileObjectURL)\n})\n\nprovide(uploadContextKey, {\n accept: toRef(props, 'accept'),\n})\n\ndefineExpose({\n /** @description cancel upload request */\n abort,\n /** @description upload the file list manually */\n submit,\n /** @description clear the file list */\n clearFiles,\n /** @description select the file manually */\n handleStart,\n /** @description remove the file manually */\n handleRemove,\n})\n</script>\n"],"names":["_createElementBlock","_createBlock","UploadList","_unref","_createVNode","UploadContent","_mergeProps","$slots","_renderSlot","_openBlock"],"mappings":"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"}