@koi-design/uxd-ui 14.0.27 → 14.0.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/Modal/ConfirmDialog.mjs +2 -2
- package/es/components/Modal/ConfirmDialog.mjs.map +1 -1
- package/es/components/Upload/Upload.d.ts +9 -0
- package/es/components/Upload/Upload.mjs +2 -1
- package/es/components/Upload/Upload.mjs.map +1 -1
- package/es/components/Upload/Upload.type.d.ts +4 -0
- package/es/components/Upload/Upload.type.mjs +4 -0
- package/es/components/Upload/Upload.type.mjs.map +1 -1
- package/es/components/Upload/UploadDragger.mjs +8 -1
- package/es/components/Upload/UploadDragger.mjs.map +1 -1
- package/es/components/Upload/UploadDragger.vue.d.ts +9 -0
- package/es/components/Upload/Uploader.mjs +6 -1
- package/es/components/Upload/Uploader.mjs.map +1 -1
- package/es/components/Upload/Uploader.vue.d.ts +18 -0
- package/es/components/Upload/index.d.ts +15 -0
- package/lib/components/Modal/ConfirmDialog.js +2 -2
- package/lib/components/Modal/ConfirmDialog.js.map +1 -1
- package/lib/components/Upload/Upload.d.ts +9 -0
- package/lib/components/Upload/Upload.js +2 -1
- package/lib/components/Upload/Upload.js.map +1 -1
- package/lib/components/Upload/Upload.type.d.ts +4 -0
- package/lib/components/Upload/Upload.type.js +4 -0
- package/lib/components/Upload/Upload.type.js.map +1 -1
- package/lib/components/Upload/UploadDragger.js +8 -1
- package/lib/components/Upload/UploadDragger.js.map +1 -1
- package/lib/components/Upload/UploadDragger.vue.d.ts +9 -0
- package/lib/components/Upload/Uploader.js +6 -1
- package/lib/components/Upload/Uploader.js.map +1 -1
- package/lib/components/Upload/Uploader.vue.d.ts +18 -0
- package/lib/components/Upload/index.d.ts +15 -0
- package/package.json +1 -1
- package/styles/components/upload/index.css +1 -1
- package/styles/components/upload/index.less +5 -0
- package/styles/index.css +1 -1
- package/types/components/Upload/Upload.d.ts +9 -0
- package/types/components/Upload/Upload.type.d.ts +4 -0
- package/types/components/Upload/UploadDragger.vue.d.ts +9 -0
- package/types/components/Upload/Uploader.vue.d.ts +18 -0
- package/types/components/Upload/index.d.ts +15 -0
- package/uxd-ui.css +1 -1
- package/uxd-ui.esm.min.mjs +4 -4
- package/uxd-ui.esm.mjs +23 -6
- package/uxd-ui.umd.js +23 -6
- package/uxd-ui.umd.min.js +2 -2
|
@@ -107,7 +107,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
107
107
|
_: 1
|
|
108
108
|
}, 8, ["size", "onClick"])) : createCommentVNode("v-if", true),
|
|
109
109
|
createVNode(_component_UButton, {
|
|
110
|
-
type:
|
|
110
|
+
type: _ctx.okType,
|
|
111
111
|
size: _ctx.size,
|
|
112
112
|
loading: _ctx.stateLoading,
|
|
113
113
|
onClick: _ctx.handleOk
|
|
@@ -116,7 +116,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
116
116
|
createTextVNode(toDisplayString(_ctx.okText || _ctx.computedLocale.okText), 1)
|
|
117
117
|
]),
|
|
118
118
|
_: 1
|
|
119
|
-
}, 8, ["size", "loading", "onClick"])
|
|
119
|
+
}, 8, ["type", "size", "loading", "onClick"])
|
|
120
120
|
]),
|
|
121
121
|
default: withCtx(() => [
|
|
122
122
|
createElementVNode("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmDialog.mjs","sources":["../../../../src/components/Modal/ConfirmDialog.vue"],"sourcesContent":["<template>\n <Modal\n :id=\"id\"\n :visible=\"visible\"\n :custom-class=\"confirmClass\"\n :mask-closable=\"false\"\n :width=\"computedWidth\"\n :size=\"size\"\n :after-close=\"afterClose\"\n :closable=\"closable\"\n @close=\"closableClose\"\n >\n <div :class=\"`${prefixCls}-confirm-body-wrapper`\">\n <div :class=\"`${prefixCls}-confirm-body`\">\n <UIcon :class=\"`${prefixCls}-confirm-icon`\">\n <component :is=\"iconName\" />\n </UIcon>\n <div :class=\"`${prefixCls}-confirm-content-wrap`\">\n <span v-if=\"title !== undefined\" :class=\"`${prefixCls}-confirm-title`\">\n {{ title }}\n </span>\n <div :class=\"`${prefixCls}-confirm-content`\">\n <template v-if=\"typeof content === 'function'\">\n <Render :render=\"content\" />\n </template>\n <template v-else> {{ content }} </template>\n </div>\n </div>\n </div>\n </div>\n <template #footer>\n <UButton v-if=\"okCancel\" :size=\"size\" @click=\"handleCancel\">\n {{ cancelText || computedLocale.cancelText }}\n </UButton>\n <UButton type=\"
|
|
1
|
+
{"version":3,"file":"ConfirmDialog.mjs","sources":["../../../../src/components/Modal/ConfirmDialog.vue"],"sourcesContent":["<template>\n <Modal\n :id=\"id\"\n :visible=\"visible\"\n :custom-class=\"confirmClass\"\n :mask-closable=\"false\"\n :width=\"computedWidth\"\n :size=\"size\"\n :after-close=\"afterClose\"\n :closable=\"closable\"\n @close=\"closableClose\"\n >\n <div :class=\"`${prefixCls}-confirm-body-wrapper`\">\n <div :class=\"`${prefixCls}-confirm-body`\">\n <UIcon :class=\"`${prefixCls}-confirm-icon`\">\n <component :is=\"iconName\" />\n </UIcon>\n <div :class=\"`${prefixCls}-confirm-content-wrap`\">\n <span v-if=\"title !== undefined\" :class=\"`${prefixCls}-confirm-title`\">\n {{ title }}\n </span>\n <div :class=\"`${prefixCls}-confirm-content`\">\n <template v-if=\"typeof content === 'function'\">\n <Render :render=\"content\" />\n </template>\n <template v-else> {{ content }} </template>\n </div>\n </div>\n </div>\n </div>\n <template #footer>\n <UButton v-if=\"okCancel\" :size=\"size\" @click=\"handleCancel\">\n {{ cancelText || computedLocale.cancelText }}\n </UButton>\n <UButton :type=\"okType\" :size=\"size\" :loading=\"stateLoading\" @click=\"handleOk\">\n {{ okText || computedLocale.okText }}\n </UButton>\n </template>\n </Modal>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\n\nimport UIcon from '@uxd-ui/components/Icon';\nimport { Info, CheckCircle, CircleX, CircleAlert, HelpCircle, CircleHelp } from 'lucide-vue-next';\nimport UButton from '@uxd-ui/components/Button';\nimport Render from '../base/Render';\nimport Modal from './Modal.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport { confirmDialogProps, type ModalCloseType } from './Modal.type';\n\nexport default defineComponent({\n name: 'ConfirmDialog',\n components: {\n Modal,\n UIcon,\n UButton,\n Info,\n CheckCircle,\n CircleX,\n CircleAlert,\n HelpCircle,\n CircleHelp,\n Render\n },\n props: confirmDialogProps,\n setup(props) {\n const { prefixCls, config: globalConfig } = useGlobalConfig('modal');\n const stateLoading = ref(false);\n // ===================== computed ============================\n const confirmClass = computed(() => {\n return [`${prefixCls.value}-confirm`, `${prefixCls.value}-confirm-${props.type}`, `${prefixCls.value}-${props.type}`];\n });\n const computedLocale = computed(() => {\n return props.locale || globalConfig.locale.modal;\n });\n // ===================== computed ============================\n const closeConfirm = () => {\n if (props.close) {\n props.close();\n }\n };\n const handleCancel = () => {\n if (props.onCancel) {\n props.onCancel();\n }\n closeConfirm();\n };\n const handleOk = () => {\n if (props.onOk) {\n props.onOk();\n }\n if (props.loading) {\n stateLoading.value = true;\n } else {\n closeConfirm();\n }\n };\n\n const closableClose = (type: ModalCloseType) => {\n if (props.closable && type === 'close') {\n closeConfirm();\n }\n };\n\n const computedWidth = computed(() => {\n if (props.width) {\n return props.width;\n }\n if (props.size === 'small') {\n return 384;\n }\n return 416;\n });\n\n return {\n prefixCls,\n confirmClass,\n stateLoading,\n computedLocale,\n computedWidth,\n handleOk,\n handleCancel,\n closableClose\n };\n }\n});\n</script>\n"],"names":["_createBlock","_withCtx","_createVNode","_createElementVNode","_normalizeClass","_resolveDynamicComponent","_createElementBlock","_Fragment"],"mappings":";;;;;;;;;;AAoDA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AACF,EACA,OAAO;AAAA,EACP,MAAM,OAAO;UACL,EAAE,WAAW,QAAQ,iBAAiB,gBAAgB,OAAO;UAC7D,eAAe,IAAI,KAAK;UAExB,eAAe,SAAS,MAAM;aAC3B,CAAC,GAAG,UAAU,iBAAiB,GAAG,UAAU,iBAAiB,MAAM,QAAQ,GAAG,UAAU,SAAS,MAAM,MAAM;AAAA,KACrH;UACK,iBAAiB,SAAS,MAAM;aAC7B,MAAM,UAAU,aAAa,OAAO;AAAA,KAC5C;UAEK,eAAe,MAAM;UACrB,MAAM,OAAO;cACT;AAAM;AACd;UAEI,eAAe,MAAM;UACrB,MAAM,UAAU;cACZ;AAAS;;AAEJ;UAET,WAAW,MAAM;UACjB,MAAM,MAAM;cACR;AAAK;UAET,MAAM,SAAS;qBACJ,QAAQ;AAAA,aAChB;;AACQ;AACf;UAGI,gBAAgB,CAAC,SAAyB;UAC1C,MAAM,YAAY,SAAS,SAAS;;AACzB;AACf;UAGI,gBAAgB,SAAS,MAAM;UAC/B,MAAM,OAAO;eACR,MAAM;AAAA;UAEX,MAAM,SAAS,SAAS;eACnB;AAAA;aAEF;AAAA,KACR;WAEM;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;;;;;sBA9HCA,YAqCQ;IApCL,IAAI;IACJ,SAAS;IACT,gBAAc;IACd,iBAAe;AAAA,IACf,OAAO;IACP,MAAM;IACN,eAAa;IACb,UAAU;IACV,SAAO;;IAoBG,QAAMC,QACf,MAEU;AAAA,MAFK,8BAAfD,YAEU;;QAFgB,MAAM;QAAO,SAAO;;yBAC5C,MAA6C;AAAA,0CAA1C,mBAAc,oBAAe,UAAU;;;;MAE5CE,YAEU;QAFA,MAAM;QAAS,MAAM;QAAO,SAAS;QAAe,SAAO;;yBACnE,MAAqC;AAAA,0CAAlC,eAAU,oBAAe,MAAM;;;;;qBAvBtC,MAiBM;AAAA,MAjBNC,mBAiBM;QAjBA,OAAKC,kBAAK,qCAAS;AAAA;QACvBD,mBAeM;UAfA,OAAKC,kBAAK,6BAAS;AAAA;UACvBF,YAEQ;YAFA,OAAKE,kBAAK,6BAAS;AAAA;6BACzB,MAA4B;AAAA,4BAA5BJ,YAA4BK,wBAAZ,aAAQ;;;;UAE1BF,mBAUM;YAVA,OAAKC,kBAAK,qCAAS;AAAA;YACX,eAAU,uBAAtBE,mBAEO;;cAF2B,OAAKF,kBAAK,8BAAS;AAAA,+BAChD,UAAK;YAEVD,mBAKM;cALA,OAAKC,kBAAK,gCAAS;AAAA;qBACA,iBAAO,2BAC5BJ,YAA4B;;gBAAnB,QAAQ;uDAEnBM,mBAA2CC;gDAAtB,YAAO;;;;;;;;;;;;;;"}
|
|
@@ -80,6 +80,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
80
80
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
81
81
|
default: () => void;
|
|
82
82
|
};
|
|
83
|
+
error: {
|
|
84
|
+
type: BooleanConstructor;
|
|
85
|
+
default: boolean;
|
|
86
|
+
};
|
|
83
87
|
}>, {
|
|
84
88
|
prefixCls: import("vue").ComputedRef<string>;
|
|
85
89
|
uploaderRef: import("vue").Ref<any, any>;
|
|
@@ -201,6 +205,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
201
205
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
202
206
|
default: () => void;
|
|
203
207
|
};
|
|
208
|
+
error: {
|
|
209
|
+
type: BooleanConstructor;
|
|
210
|
+
default: boolean;
|
|
211
|
+
};
|
|
204
212
|
}>> & Readonly<{
|
|
205
213
|
onChange?: (file: FileInfo, fileList: FileInfo[]) => any;
|
|
206
214
|
onPreview?: (file: FileInfo) => any;
|
|
@@ -209,6 +217,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
209
217
|
}>, {
|
|
210
218
|
data: Record<string, any>;
|
|
211
219
|
drag: boolean;
|
|
220
|
+
error: boolean;
|
|
212
221
|
name: string;
|
|
213
222
|
onProgress: import("./Upload.type").OnUploadProgress;
|
|
214
223
|
onError: import("./Upload.type").OnUploadError;
|
|
@@ -104,7 +104,8 @@ var Upload = defineComponent({
|
|
|
104
104
|
"withCredentials": this.withCredentials,
|
|
105
105
|
"disabled": this.disabled,
|
|
106
106
|
"limit": limit,
|
|
107
|
-
"customRequest": this.customRequest
|
|
107
|
+
"customRequest": this.customRequest,
|
|
108
|
+
"error": this.error
|
|
108
109
|
}), _isSlot(_slot = this.getChild()) ? _slot : {
|
|
109
110
|
default: () => [_slot]
|
|
110
111
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Upload.mjs","sources":["../../../../src/components/Upload/Upload.tsx"],"sourcesContent":["import { defineComponent, provide } from 'vue';\nimport { getSlot, cloneVNode } from '../../utils/slots';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Uploader from './Uploader.vue';\nimport UploadList from './UploadList.vue';\nimport useFileUpload from './hooks/useFileUpload';\nimport { type FileInfo, uploadProps, uploadEmits } from './Upload.type';\n\nexport default defineComponent({\n name: 'UUpload',\n inheritAttrs: false,\n props: uploadProps,\n emits: uploadEmits,\n setup(props, { slots, emit }) {\n const { prefixCls } = useGlobalConfig('upload');\n\n const { uploaderRef, uploadFileList, abort, clearFiles, submit, handleError, handleSuccess, handleProgress, handleStart, handleRemove } =\n useFileUpload(props, emit);\n\n const getChild = () => {\n const children = getSlot(slots);\n const newChildren = children.map((child) => {\n return cloneVNode(child as any, {\n disabled: props.disabled ? true : undefined\n });\n });\n return newChildren;\n };\n\n const handleExceed = (files: File[]) => {\n props.onError('exceed the upload limit', files, uploadFileList.value);\n };\n\n const handlePreview = (file: FileInfo) => {\n emit('preview', file);\n };\n\n const handleItemClick = (file: FileInfo) => {\n emit('item-click', file);\n };\n\n provide('UploadContext', {\n uploadFileList,\n handleError,\n handleSuccess,\n handleProgress,\n handleStart,\n handleRemove,\n handleExceed,\n handlePreview\n });\n\n return {\n prefixCls,\n uploaderRef,\n uploadFileList,\n abort,\n clearFiles,\n submit,\n handleRemove,\n handlePreview,\n handleItemClick,\n getChild\n };\n },\n render() {\n const { showFileList, listType, prefixCls } = this;\n\n let limit;\n if (this.limit && typeof this.limit === 'number') {\n limit = this.limit - this.uploadFileList.length;\n limit = limit > 0 ? limit : 0;\n }\n\n const attrs = this.$attrs;\n\n const uploader = (\n <Uploader\n ref=\"uploaderRef\"\n {...attrs}\n prefixCls={prefixCls}\n action={this.action}\n name={this.name}\n multiple={this.multiple}\n listType={this.listType}\n accept={this.accept}\n headers={this.headers}\n drag={this.drag}\n data={this.data}\n beforeUpload={this.beforeUpload}\n withCredentials={this.withCredentials}\n disabled={this.disabled}\n limit={limit}\n customRequest={this.customRequest}\n >\n {this.getChild()}\n </Uploader>\n );\n\n const uploadList = (append?: any) =>\n showFileList ? (\n <UploadList\n prefixCls={prefixCls}\n disabled={this.disabled}\n files={this.uploadFileList}\n listType={listType}\n listItemClass={this.listItemClass}\n onRemove={this.handleRemove}\n onPreview={this.handlePreview}\n onClick={this.handleItemClick}\n v-slots={{\n ...(this.$slots.file\n ? {\n default: ({ file }: { file: FileInfo }) => {\n return this.$slots.file?.({\n file\n });\n }\n }\n : {}),\n\n ...(append\n ? {\n append: () => append\n }\n : {})\n }}\n ></UploadList>\n ) : null;\n\n const tips = <div class={`${prefixCls}-tip`}>{this.$slots.tip?.()}</div>;\n\n if (this.listType === 'picture-card' && showFileList) {\n return <>{[uploadList(uploader), tips]}</>;\n }\n return <>{[uploader, tips, uploadList()]}</>;\n }\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","inheritAttrs","props","uploadProps","emits","uploadEmits","setup","slots","emit","prefixCls","useGlobalConfig","uploaderRef","uploadFileList","abort","clearFiles","submit","handleError","handleSuccess","handleProgress","handleStart","handleRemove","useFileUpload","getChild","children","getSlot","newChildren","map","child","cloneVNode","disabled","undefined","handleExceed","files","onError","value","handlePreview","file","handleItemClick","provide","render","_slot","showFileList","listType","limit","length","attrs","$attrs","uploader","_createVNode","Uploader","_mergeProps","action","multiple","accept","headers","drag","data","beforeUpload","withCredentials","customRequest","default","uploadList","append","UploadList","listItemClass","$slots","_a","_b","tips","tip","_Fragment"],"mappings":";;;;;;;;AAMwE,SAAAA,QAAAC;AAAA,gBAAAA,oBAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,4BAAAK,QAAAL,CAAA;AAAA;AAExE,aAAeM,gBAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,cAAc;AAAA,EACdC,OAAOC;AAAAA,EACPC,OAAOC;AAAAA,EACPC,MAAMJ,OAAO;AAAA,IAAEK;AAAAA,IAAOC;AAAAA,KAAQ;AAC5B,UAAM;AAAA,MAAEC;AAAAA,QAAcC,gBAAgB,QAAQ;AAE9C,UAAM;AAAA,MAAEC;AAAAA,MAAaC;AAAAA,MAAgBC;AAAAA,MAAOC;AAAAA,MAAYC;AAAAA,MAAQC;AAAAA,MAAaC;AAAAA,MAAeC;AAAAA,MAAgBC;AAAAA,MAAaC;AAAAA,QACvHC,cAAcnB,OAAOM,IAAI;AAE3B,UAAMc,WAAWA,MAAM;AACrB,YAAMC,WAAWC,QAAQjB,KAAK;AAC9B,YAAMkB,cAAcF,SAASG,IAAKC,WAAU;AAC1C,eAAOC,WAAWD,OAAc;AAAA,UAC9BE,UAAU3B,MAAM2B,WAAW,OAAOC;AAAAA,SACnC;AAAA,OACF;AACD,aAAOL;AAAAA;AAGT,UAAMM,eAAgBC,WAAkB;AACtC9B,YAAM+B,QAAQ,2BAA2BD,OAAOpB,eAAesB,KAAK;AAAA;AAGtE,UAAMC,gBAAiBC,UAAmB;AACxC5B,WAAK,WAAW4B,IAAI;AAAA;AAGtB,UAAMC,kBAAmBD,UAAmB;AAC1C5B,WAAK,cAAc4B,IAAI;AAAA;AAGzBE,YAAQ,iBAAiB;AAAA,MACvB1B;AAAAA,MACAI;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAW;AAAAA,MACAI;AAAAA,KACD;AAED,WAAO;AAAA,MACL1B;AAAAA,MACAE;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAK;AAAAA,MACAe;AAAAA,MACAE;AAAAA,MACAf;AAAAA;AACF;AACF,EACAiB,SAAS;AAjEX;AAiEW,QAAAC;AACP,UAAM;AAAA,MAAEC;AAAAA,MAAcC;AAAAA,MAAUjC;AAAAA,QAAc;AAE9C,QAAIkC;AACJ,QAAI,KAAKA,SAAS,OAAO,KAAKA,UAAU,UAAU;AAChDA,cAAQ,KAAKA,QAAQ,KAAK/B,eAAegC;AACzCD,cAAQA,QAAQ,IAAIA,QAAQ;AAAA;AAG9B,UAAME,QAAQ,KAAKC;AAEnB,UAAMC,WAAQC,YAAAC,UAAAC;MAAA;OAGNL;MAAK,aACEpC;AAAAA,MAAS,UACZ,KAAK0C;AAAAA,MAAM,QACb,KAAKnD;AAAAA,MAAI,YACL,KAAKoD;AAAAA,MAAQ,YACb,KAAKV;AAAAA,MAAQ,UACf,KAAKW;AAAAA,MAAM,WACV,KAAKC;AAAAA,MAAO,QACf,KAAKC;AAAAA,MAAI,QACT,KAAKC;AAAAA,MAAI,gBACD,KAAKC;AAAAA,MAAY,mBACd,KAAKC;AAAAA,MAAe,YAC3B,KAAK7B;AAAAA,MAAQ,SAChBc;AAAAA,MAAK,iBACG,KAAKgB;AAAAA,
|
|
1
|
+
{"version":3,"file":"Upload.mjs","sources":["../../../../src/components/Upload/Upload.tsx"],"sourcesContent":["import { defineComponent, provide } from 'vue';\nimport { getSlot, cloneVNode } from '../../utils/slots';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Uploader from './Uploader.vue';\nimport UploadList from './UploadList.vue';\nimport useFileUpload from './hooks/useFileUpload';\nimport { type FileInfo, uploadProps, uploadEmits } from './Upload.type';\n\nexport default defineComponent({\n name: 'UUpload',\n inheritAttrs: false,\n props: uploadProps,\n emits: uploadEmits,\n setup(props, { slots, emit }) {\n const { prefixCls } = useGlobalConfig('upload');\n\n const { uploaderRef, uploadFileList, abort, clearFiles, submit, handleError, handleSuccess, handleProgress, handleStart, handleRemove } =\n useFileUpload(props, emit);\n\n const getChild = () => {\n const children = getSlot(slots);\n const newChildren = children.map((child) => {\n return cloneVNode(child as any, {\n disabled: props.disabled ? true : undefined\n });\n });\n return newChildren;\n };\n\n const handleExceed = (files: File[]) => {\n props.onError('exceed the upload limit', files, uploadFileList.value);\n };\n\n const handlePreview = (file: FileInfo) => {\n emit('preview', file);\n };\n\n const handleItemClick = (file: FileInfo) => {\n emit('item-click', file);\n };\n\n provide('UploadContext', {\n uploadFileList,\n handleError,\n handleSuccess,\n handleProgress,\n handleStart,\n handleRemove,\n handleExceed,\n handlePreview\n });\n\n return {\n prefixCls,\n uploaderRef,\n uploadFileList,\n abort,\n clearFiles,\n submit,\n handleRemove,\n handlePreview,\n handleItemClick,\n getChild\n };\n },\n render() {\n const { showFileList, listType, prefixCls } = this;\n\n let limit;\n if (this.limit && typeof this.limit === 'number') {\n limit = this.limit - this.uploadFileList.length;\n limit = limit > 0 ? limit : 0;\n }\n\n const attrs = this.$attrs;\n\n const uploader = (\n <Uploader\n ref=\"uploaderRef\"\n {...attrs}\n prefixCls={prefixCls}\n action={this.action}\n name={this.name}\n multiple={this.multiple}\n listType={this.listType}\n accept={this.accept}\n headers={this.headers}\n drag={this.drag}\n data={this.data}\n beforeUpload={this.beforeUpload}\n withCredentials={this.withCredentials}\n disabled={this.disabled}\n limit={limit}\n customRequest={this.customRequest}\n error={this.error}\n >\n {this.getChild()}\n </Uploader>\n );\n\n const uploadList = (append?: any) =>\n showFileList ? (\n <UploadList\n prefixCls={prefixCls}\n disabled={this.disabled}\n files={this.uploadFileList}\n listType={listType}\n listItemClass={this.listItemClass}\n onRemove={this.handleRemove}\n onPreview={this.handlePreview}\n onClick={this.handleItemClick}\n v-slots={{\n ...(this.$slots.file\n ? {\n default: ({ file }: { file: FileInfo }) => {\n return this.$slots.file?.({\n file\n });\n }\n }\n : {}),\n\n ...(append\n ? {\n append: () => append\n }\n : {})\n }}\n ></UploadList>\n ) : null;\n\n const tips = <div class={`${prefixCls}-tip`}>{this.$slots.tip?.()}</div>;\n\n if (this.listType === 'picture-card' && showFileList) {\n return <>{[uploadList(uploader), tips]}</>;\n }\n return <>{[uploader, tips, uploadList()]}</>;\n }\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","inheritAttrs","props","uploadProps","emits","uploadEmits","setup","slots","emit","prefixCls","useGlobalConfig","uploaderRef","uploadFileList","abort","clearFiles","submit","handleError","handleSuccess","handleProgress","handleStart","handleRemove","useFileUpload","getChild","children","getSlot","newChildren","map","child","cloneVNode","disabled","undefined","handleExceed","files","onError","value","handlePreview","file","handleItemClick","provide","render","_slot","showFileList","listType","limit","length","attrs","$attrs","uploader","_createVNode","Uploader","_mergeProps","action","multiple","accept","headers","drag","data","beforeUpload","withCredentials","customRequest","error","default","uploadList","append","UploadList","listItemClass","$slots","_a","_b","tips","tip","_Fragment"],"mappings":"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"}
|
|
@@ -125,6 +125,10 @@ export declare const uploadProps: {
|
|
|
125
125
|
type: PropType<OnUploadError>;
|
|
126
126
|
default: () => void;
|
|
127
127
|
};
|
|
128
|
+
error: {
|
|
129
|
+
type: BooleanConstructor;
|
|
130
|
+
default: boolean;
|
|
131
|
+
};
|
|
128
132
|
};
|
|
129
133
|
export type UploadProps = ExtractPropTypes<typeof uploadProps>;
|
|
130
134
|
export declare const uploadEmits: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Upload.type.mjs","sources":["../../../../src/components/Upload/Upload.type.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType, Ref } from 'vue';\nimport type { EmitFn } from '../../utils/globalType';\nimport { oneOf } from '../../utils/propsValidators';\n\nexport type FileStatus = 'ready' | 'uploading' | 'fail' | 'done';\n\nexport type ListType = 'text' | 'picture' | 'picture-card';\n\nexport type RawFile = any & { uid: string };\nexport interface FileInfo {\n type?: string;\n uid?: string;\n name?: string;\n url?: string;\n thumbUrl?: string;\n status?: FileStatus;\n size?: number;\n raw?: any;\n percent?: number;\n response?: any;\n}\n\nexport interface UploadError extends Error {\n status?: number;\n method?: string;\n url?: string;\n}\n\nexport type BeforeUpload = (file: RawFile, isLast: boolean) => boolean | Promise<any>;\nexport type BeforeRemove = (files: FileInfo, uploadFileList: FileInfo[]) => boolean | Promise<boolean>;\nexport type OnUploadRemove = (files: FileInfo, uploadFileList: FileInfo[]) => void;\nexport type OnUploadProgress = (e: any, files: FileInfo, uploadFileList: FileInfo[]) => void;\nexport type OnUploadSuccess = (files: FileInfo, uploadFileList: FileInfo[]) => void;\nexport type OnUploadError = (msg: string | UploadError, files: FileInfo | File[], uploadFileList: FileInfo[]) => void;\nexport interface UploadProgress extends ProgressEvent {\n percent?: number;\n}\nexport interface UploadRequestConfig {\n method?: string;\n headers: Record<string, any>;\n withCredentials: boolean;\n file: any;\n data: Record<string, any>;\n fileName: string;\n action: string;\n onProgress: (e: UploadProgress) => void;\n onSuccess: (rep: Request) => void;\n onError: (err: UploadError) => void;\n}\n\nexport type UploadRequest = (params: UploadRequestConfig) => Promise<any>;\n\nconst NOOP = () => {};\n\nexport const uploadProps = {\n action: {\n type: String\n },\n name: {\n type: String,\n default: 'file'\n },\n data: {\n type: Object,\n default: () => ({})\n },\n multiple: {\n type: Boolean,\n default: false\n },\n max: {\n type: Number\n },\n headers: {\n type: Object,\n default: () => ({})\n },\n drag: {\n type: Boolean,\n default: false\n },\n accept: {\n type: String\n },\n limit: {\n type: Number\n },\n disabled: {\n type: Boolean,\n default: false\n },\n withCredentials: {\n type: Boolean,\n default: false\n },\n beforeUpload: {\n type: Function as PropType<BeforeUpload>\n },\n customRequest: {\n type: Function as PropType<UploadRequest>\n },\n showFileList: {\n type: Boolean,\n default: true\n },\n fileList: {\n type: Array as PropType<FileInfo[]>\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n validator: oneOf(['text', 'picture', 'picture-card'])\n },\n listItemClass: {\n type: String\n },\n beforeRemove: {\n type: Function as PropType<BeforeRemove>\n },\n onRemove: {\n type: Function as PropType<OnUploadRemove>,\n default: NOOP\n },\n onProgress: {\n type: Function as PropType<OnUploadProgress>,\n default: NOOP\n },\n onSuccess: {\n type: Function as PropType<OnUploadSuccess>,\n default: NOOP\n },\n onError: {\n type: Function as PropType<OnUploadError>,\n default: NOOP\n }\n};\n\nexport type UploadProps = ExtractPropTypes<typeof uploadProps>;\n\nexport const uploadEmits = {\n change: (file: FileInfo, fileList: FileInfo[]) => file.uid !== undefined && Array.isArray(fileList),\n preview: (file: FileInfo) => file.uid !== undefined,\n 'item-click': (file: FileInfo) => file.uid !== undefined,\n 'update:fileList': (fileList: FileInfo[]) => Array.isArray(fileList)\n};\n\nexport type UploadEmits = typeof uploadEmits;\n\nexport type UploadEmit = EmitFn<UploadEmits>;\n\nexport interface UploadContext {\n uploadFileList: Ref<FileInfo[]>;\n handleError: (err: UploadError, rawFile: RawFile) => void;\n handleSuccess: (res: Request, rawFile: RawFile) => void;\n handleProgress: (e: UploadProgress, rawFile: RawFile) => void;\n handleStart: (rawFile: RawFile) => void;\n handleRemove: (rawFile: RawFile) => void;\n handleExceed: (files: File[]) => void;\n handlePreview: (file: FileInfo) => void;\n}\n"],"names":[],"mappings":";;AAoDA,MAAM,OAAO,MAAM;AAAC;MAEP,cAAc;AAAA,EACzB,QAAQ;AAAA,IACN,MAAM;AAAA;AACR,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS,OAAO;AAAC;AACnB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,KAAK;AAAA,IACH,MAAM;AAAA;AACR,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS,OAAO;AAAC;AACnB,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,QAAQ;AAAA,IACN,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,cAAc;AAAA,IACZ,MAAM;AAAA;AACR,EACA,eAAe;AAAA,IACb,MAAM;AAAA;AACR,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,UAAU;AAAA,IACR,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAW,MAAM,CAAC,QAAQ,WAAW,cAAc,CAAC;AAAA;AACtD,EACA,eAAe;AAAA,IACb,MAAM;AAAA;AACR,EACA,cAAc;AAAA,IACZ,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AAEb;MAIa,cAAc;AAAA,EACzB,QAAQ,CAAC,MAAgB,aAAyB,KAAK,QAAQ,UAAa,MAAM,QAAQ,QAAQ;AAAA,EAClG,SAAS,CAAC,SAAmB,KAAK,QAAQ;AAAA,EAC1C,cAAc,CAAC,SAAmB,KAAK,QAAQ;AAAA,EAC/C,mBAAmB,CAAC,aAAyB,MAAM,QAAQ,QAAQ;AACrE;;;;"}
|
|
1
|
+
{"version":3,"file":"Upload.type.mjs","sources":["../../../../src/components/Upload/Upload.type.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType, Ref } from 'vue';\nimport type { EmitFn } from '../../utils/globalType';\nimport { oneOf } from '../../utils/propsValidators';\n\nexport type FileStatus = 'ready' | 'uploading' | 'fail' | 'done';\n\nexport type ListType = 'text' | 'picture' | 'picture-card';\n\nexport type RawFile = any & { uid: string };\nexport interface FileInfo {\n type?: string;\n uid?: string;\n name?: string;\n url?: string;\n thumbUrl?: string;\n status?: FileStatus;\n size?: number;\n raw?: any;\n percent?: number;\n response?: any;\n}\n\nexport interface UploadError extends Error {\n status?: number;\n method?: string;\n url?: string;\n}\n\nexport type BeforeUpload = (file: RawFile, isLast: boolean) => boolean | Promise<any>;\nexport type BeforeRemove = (files: FileInfo, uploadFileList: FileInfo[]) => boolean | Promise<boolean>;\nexport type OnUploadRemove = (files: FileInfo, uploadFileList: FileInfo[]) => void;\nexport type OnUploadProgress = (e: any, files: FileInfo, uploadFileList: FileInfo[]) => void;\nexport type OnUploadSuccess = (files: FileInfo, uploadFileList: FileInfo[]) => void;\nexport type OnUploadError = (msg: string | UploadError, files: FileInfo | File[], uploadFileList: FileInfo[]) => void;\nexport interface UploadProgress extends ProgressEvent {\n percent?: number;\n}\nexport interface UploadRequestConfig {\n method?: string;\n headers: Record<string, any>;\n withCredentials: boolean;\n file: any;\n data: Record<string, any>;\n fileName: string;\n action: string;\n onProgress: (e: UploadProgress) => void;\n onSuccess: (rep: Request) => void;\n onError: (err: UploadError) => void;\n}\n\nexport type UploadRequest = (params: UploadRequestConfig) => Promise<any>;\n\nconst NOOP = () => {};\n\nexport const uploadProps = {\n action: {\n type: String\n },\n name: {\n type: String,\n default: 'file'\n },\n data: {\n type: Object,\n default: () => ({})\n },\n multiple: {\n type: Boolean,\n default: false\n },\n max: {\n type: Number\n },\n headers: {\n type: Object,\n default: () => ({})\n },\n drag: {\n type: Boolean,\n default: false\n },\n accept: {\n type: String\n },\n limit: {\n type: Number\n },\n disabled: {\n type: Boolean,\n default: false\n },\n withCredentials: {\n type: Boolean,\n default: false\n },\n beforeUpload: {\n type: Function as PropType<BeforeUpload>\n },\n customRequest: {\n type: Function as PropType<UploadRequest>\n },\n showFileList: {\n type: Boolean,\n default: true\n },\n fileList: {\n type: Array as PropType<FileInfo[]>\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n validator: oneOf(['text', 'picture', 'picture-card'])\n },\n listItemClass: {\n type: String\n },\n beforeRemove: {\n type: Function as PropType<BeforeRemove>\n },\n onRemove: {\n type: Function as PropType<OnUploadRemove>,\n default: NOOP\n },\n onProgress: {\n type: Function as PropType<OnUploadProgress>,\n default: NOOP\n },\n onSuccess: {\n type: Function as PropType<OnUploadSuccess>,\n default: NOOP\n },\n onError: {\n type: Function as PropType<OnUploadError>,\n default: NOOP\n },\n error: {\n type: Boolean,\n default: false\n }\n};\n\nexport type UploadProps = ExtractPropTypes<typeof uploadProps>;\n\nexport const uploadEmits = {\n change: (file: FileInfo, fileList: FileInfo[]) => file.uid !== undefined && Array.isArray(fileList),\n preview: (file: FileInfo) => file.uid !== undefined,\n 'item-click': (file: FileInfo) => file.uid !== undefined,\n 'update:fileList': (fileList: FileInfo[]) => Array.isArray(fileList)\n};\n\nexport type UploadEmits = typeof uploadEmits;\n\nexport type UploadEmit = EmitFn<UploadEmits>;\n\nexport interface UploadContext {\n uploadFileList: Ref<FileInfo[]>;\n handleError: (err: UploadError, rawFile: RawFile) => void;\n handleSuccess: (res: Request, rawFile: RawFile) => void;\n handleProgress: (e: UploadProgress, rawFile: RawFile) => void;\n handleStart: (rawFile: RawFile) => void;\n handleRemove: (rawFile: RawFile) => void;\n handleExceed: (files: File[]) => void;\n handlePreview: (file: FileInfo) => void;\n}\n"],"names":[],"mappings":";;AAoDA,MAAM,OAAO,MAAM;AAAC;MAEP,cAAc;AAAA,EACzB,QAAQ;AAAA,IACN,MAAM;AAAA;AACR,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS,OAAO;AAAC;AACnB,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,KAAK;AAAA,IACH,MAAM;AAAA;AACR,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS,OAAO;AAAC;AACnB,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,QAAQ;AAAA,IACN,MAAM;AAAA;AACR,EACA,OAAO;AAAA,IACL,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,cAAc;AAAA,IACZ,MAAM;AAAA;AACR,EACA,eAAe;AAAA,IACb,MAAM;AAAA;AACR,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,UAAU;AAAA,IACR,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,IACT,WAAW,MAAM,CAAC,QAAQ,WAAW,cAAc,CAAC;AAAA;AACtD,EACA,eAAe;AAAA,IACb,MAAM;AAAA;AACR,EACA,cAAc;AAAA,IACZ,MAAM;AAAA;AACR,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA;AAEb;MAIa,cAAc;AAAA,EACzB,QAAQ,CAAC,MAAgB,aAAyB,KAAK,QAAQ,UAAa,MAAM,QAAQ,QAAQ;AAAA,EAClG,SAAS,CAAC,SAAmB,KAAK,QAAQ;AAAA,EAC1C,cAAc,CAAC,SAAmB,KAAK,QAAQ;AAAA,EAC/C,mBAAmB,CAAC,aAAyB,MAAM,QAAQ,QAAQ;AACrE;;;;"}
|
|
@@ -14,6 +14,10 @@ const _sfc_main = defineComponent({
|
|
|
14
14
|
},
|
|
15
15
|
accept: {
|
|
16
16
|
type: String
|
|
17
|
+
},
|
|
18
|
+
error: {
|
|
19
|
+
type: Boolean,
|
|
20
|
+
default: false
|
|
17
21
|
}
|
|
18
22
|
},
|
|
19
23
|
emits: ["file"],
|
|
@@ -24,6 +28,7 @@ const _sfc_main = defineComponent({
|
|
|
24
28
|
return;
|
|
25
29
|
if (!props.accept) {
|
|
26
30
|
emit("file", e.dataTransfer.files);
|
|
31
|
+
dragover.value = false;
|
|
27
32
|
} else {
|
|
28
33
|
const { accept } = props;
|
|
29
34
|
const files = Array.from(e.dataTransfer.files).filter((file) => {
|
|
@@ -42,6 +47,7 @@ const _sfc_main = defineComponent({
|
|
|
42
47
|
});
|
|
43
48
|
});
|
|
44
49
|
emit("file", files);
|
|
50
|
+
dragover.value = false;
|
|
45
51
|
}
|
|
46
52
|
};
|
|
47
53
|
const onDragover = () => {
|
|
@@ -65,7 +71,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
65
71
|
class: normalizeClass({
|
|
66
72
|
[`${_ctx.prefixCls}-dragger`]: true,
|
|
67
73
|
[`${_ctx.prefixCls}-dragger-hover`]: _ctx.dragover,
|
|
68
|
-
[`${_ctx.prefixCls}-dragger-disabled`]: _ctx.disabled
|
|
74
|
+
[`${_ctx.prefixCls}-dragger-disabled`]: _ctx.disabled,
|
|
75
|
+
[`${_ctx.prefixCls}-dragger-error`]: _ctx.error
|
|
69
76
|
}),
|
|
70
77
|
onDrop: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.onDrop && _ctx.onDrop(...args), ["prevent"])),
|
|
71
78
|
onDragover: _cache[1] || (_cache[1] = withModifiers((...args) => _ctx.onDragover && _ctx.onDragover(...args), ["prevent"])),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadDragger.mjs","sources":["../../../../src/components/Upload/UploadDragger.vue"],"sourcesContent":["<template>\n <div\n :class=\"{\n [`${prefixCls}-dragger`]: true,\n [`${prefixCls}-dragger-hover`]: dragover,\n [`${prefixCls}-dragger-disabled`]: disabled\n }\"\n @drop.prevent=\"onDrop\"\n @dragover.prevent=\"onDragover\"\n @dragleave.prevent=\"onDragLeave\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue';\n\nexport default defineComponent({\n name: 'UUploadDragger',\n props: {\n prefixCls: {\n type: String,\n default: ''\n },\n disabled: {\n type: Boolean,\n default: false\n },\n accept: {\n type: String\n }\n },\n emits: ['file'],\n setup(props, { emit }) {\n const dragover = ref(false);\n\n const onDrop = (e: any) => {\n if (props.disabled) return;\n if (!props.accept) {\n emit('file', e.dataTransfer.files);\n } else {\n const { accept } = props;\n const files = Array.from(e.dataTransfer.files).filter((file) => {\n const { type, name } = file as any;\n const extname = name.indexOf('.') > -1 ? `.${name.split('.').pop()}` : '';\n const baseType = type.replace(/\\/.*/, '');\n return accept.split(',').some((acceptType) => {\n const validType = acceptType.trim();\n if (validType.startsWith('.')) {\n return extname === validType;\n }\n if (/\\/\\*$/.test(validType)) {\n return baseType === validType.replace(/\\/.*$/, '');\n }\n return type === validType;\n });\n });\n emit('file', files);\n }\n };\n\n const onDragover = () => {\n if (!props.disabled) {\n dragover.value = true;\n }\n };\n\n const onDragLeave = () => {\n dragover.value = false;\n };\n\n return {\n dragover,\n onDrop,\n onDragover,\n onDragLeave\n };\n }\n});\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"UploadDragger.mjs","sources":["../../../../src/components/Upload/UploadDragger.vue"],"sourcesContent":["<template>\n <div\n :class=\"{\n [`${prefixCls}-dragger`]: true,\n [`${prefixCls}-dragger-hover`]: dragover,\n [`${prefixCls}-dragger-disabled`]: disabled,\n [`${prefixCls}-dragger-error`]: error\n }\"\n @drop.prevent=\"onDrop\"\n @dragover.prevent=\"onDragover\"\n @dragleave.prevent=\"onDragLeave\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue';\n\nexport default defineComponent({\n name: 'UUploadDragger',\n props: {\n prefixCls: {\n type: String,\n default: ''\n },\n disabled: {\n type: Boolean,\n default: false\n },\n accept: {\n type: String\n },\n error: {\n type: Boolean,\n default: false\n }\n },\n emits: ['file'],\n setup(props, { emit }) {\n const dragover = ref(false);\n\n const onDrop = (e: any) => {\n if (props.disabled) return;\n if (!props.accept) {\n emit('file', e.dataTransfer.files);\n dragover.value = false;\n } else {\n const { accept } = props;\n const files = Array.from(e.dataTransfer.files).filter((file) => {\n const { type, name } = file as any;\n const extname = name.indexOf('.') > -1 ? `.${name.split('.').pop()}` : '';\n const baseType = type.replace(/\\/.*/, '');\n return accept.split(',').some((acceptType) => {\n const validType = acceptType.trim();\n if (validType.startsWith('.')) {\n return extname === validType;\n }\n if (/\\/\\*$/.test(validType)) {\n return baseType === validType.replace(/\\/.*$/, '');\n }\n return type === validType;\n });\n });\n\n emit('file', files);\n dragover.value = false;\n }\n };\n\n const onDragover = () => {\n if (!props.disabled) {\n dragover.value = true;\n }\n };\n\n const onDragLeave = () => {\n dragover.value = false;\n };\n\n return {\n dragover,\n onDrop,\n onDragover,\n onDragLeave\n };\n }\n});\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot"],"mappings":";;;AAmBA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,QAAQ;AAAA,MACN,MAAM;AAAA;AACR,IACA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA;AACX;AACF,EACA,OAAO,CAAC,MAAM;AAAA,EACd,MAAM,OAAO,EAAE,QAAQ;UACf,WAAW,IAAI,KAAK;UAEpB,SAAS,CAAC,MAAW;UACrB,MAAM;;UACN,CAAC,MAAM,QAAQ;aACZ,QAAQ,EAAE,aAAa,KAAK;iBACxB,QAAQ;AAAA,aACZ;cACC,EAAE,WAAW;cACb,QAAQ,MAAM,KAAK,EAAE,aAAa,KAAK,EAAE,OAAO,CAAC,SAAS;gBACxD,EAAE,MAAM,SAAS;gBACjB,UAAU,KAAK,QAAQ,GAAG,IAAI,KAAK,IAAI,KAAK,MAAM,GAAG,EAAE,UAAU;gBACjE,WAAW,KAAK,QAAQ,QAAQ,EAAE;iBACjC,OAAO,MAAM,GAAG,EAAE,KAAK,CAAC,eAAe;kBACtC,YAAY,WAAW;gBACzB,UAAU,WAAW,GAAG,GAAG;qBACtB,YAAY;AAAA;gBAEjB,QAAQ,KAAK,SAAS,GAAG;qBACpB,aAAa,UAAU,QAAQ,SAAS,EAAE;AAAA;mBAE5C,SAAS;AAAA,WACjB;AAAA,SACF;aAEI,QAAQ,KAAK;iBACT,QAAQ;AAAA;AACnB;UAGI,aAAa,MAAM;UACnB,CAAC,MAAM,UAAU;iBACV,QAAQ;AAAA;AACnB;UAGI,cAAc,MAAM;eACf,QAAQ;AAAA;WAGZ;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;sBAtFCA,mBAYM;IAXH,OAAKC;UAAc,2BAAS;AAAA,UAA6B,iCAA4B;UAAoB,oCAA+B;UAAoB,iCAA4B;;IAMxL,QAAI,qDAAU,qCAAM;IACpB,YAAQ,qDAAU,6CAAU;IAC5B,aAAS,qDAAU,+CAAW;;IAE/BC,WAAQ;;;;;;;"}
|
|
@@ -10,6 +10,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
10
10
|
accept: {
|
|
11
11
|
type: StringConstructor;
|
|
12
12
|
};
|
|
13
|
+
error: {
|
|
14
|
+
type: BooleanConstructor;
|
|
15
|
+
default: boolean;
|
|
16
|
+
};
|
|
13
17
|
}>, {
|
|
14
18
|
dragover: import("vue").Ref<boolean, boolean>;
|
|
15
19
|
onDrop: (e: any) => void;
|
|
@@ -27,9 +31,14 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
27
31
|
accept: {
|
|
28
32
|
type: StringConstructor;
|
|
29
33
|
};
|
|
34
|
+
error: {
|
|
35
|
+
type: BooleanConstructor;
|
|
36
|
+
default: boolean;
|
|
37
|
+
};
|
|
30
38
|
}>> & Readonly<{
|
|
31
39
|
onFile?: (...args: any[]) => any;
|
|
32
40
|
}>, {
|
|
41
|
+
error: boolean;
|
|
33
42
|
prefixCls: string;
|
|
34
43
|
disabled: boolean;
|
|
35
44
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -61,6 +61,10 @@ const _sfc_main = defineComponent({
|
|
|
61
61
|
},
|
|
62
62
|
customRequest: {
|
|
63
63
|
type: Function
|
|
64
|
+
},
|
|
65
|
+
error: {
|
|
66
|
+
type: Boolean,
|
|
67
|
+
default: false
|
|
64
68
|
}
|
|
65
69
|
},
|
|
66
70
|
setup(props) {
|
|
@@ -205,6 +209,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
205
209
|
key: 0,
|
|
206
210
|
disabled: _ctx.disabled,
|
|
207
211
|
"prefix-cls": _ctx.prefixCls,
|
|
212
|
+
error: _ctx.error,
|
|
208
213
|
accept: _ctx.accept,
|
|
209
214
|
onFile: _ctx.uploadFiles
|
|
210
215
|
}, {
|
|
@@ -212,7 +217,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
212
217
|
renderSlot(_ctx.$slots, "default")
|
|
213
218
|
]),
|
|
214
219
|
_: 3
|
|
215
|
-
}, 8, ["disabled", "prefix-cls", "accept", "onFile"])) : renderSlot(_ctx.$slots, "default", { key: 1 }),
|
|
220
|
+
}, 8, ["disabled", "prefix-cls", "error", "accept", "onFile"])) : renderSlot(_ctx.$slots, "default", { key: 1 }),
|
|
216
221
|
createElementVNode("input", {
|
|
217
222
|
ref: "fileRef",
|
|
218
223
|
class: normalizeClass(`${_ctx.prefixCls}-input`),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Uploader.mjs","sources":["../../../../src/components/Upload/Uploader.vue"],"sourcesContent":["<template>\n <div\n :class=\"{\n [`${prefixCls}`]: true,\n [`${prefixCls}-${listType}`]: true,\n [`${prefixCls}-drag`]: drag,\n [`${prefixCls}-disabled`]: disabled\n }\"\n tabindex=\"0\"\n @click=\"handleClick\"\n @keydown.enter=\"handleEnter\"\n >\n <template v-if=\"drag\">\n <UploadDragger :disabled=\"disabled\" :prefix-cls=\"prefixCls\" :accept=\"accept\" @file=\"uploadFiles\">\n <slot />\n </UploadDragger>\n </template>\n <template v-else>\n <slot />\n </template>\n <input ref=\"fileRef\" :class=\"`${prefixCls}-input`\" type=\"file\" :name=\"name\" :multiple=\"multiple\" :accept=\"accept\" @change=\"handleChange\" />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from 'vue';\nimport type { PropType } from 'vue';\nimport defaultRequest from './uitls/request';\nimport UploadDragger from './UploadDragger.vue';\nimport getUid from './uitls/uid';\nimport type { BeforeUpload, ListType, UploadContext, UploadRequest, RawFile, FileInfo, UploadProgress, UploadError } from './Upload.type';\n\nexport default defineComponent({\n name: 'UUploader',\n components: {\n UploadDragger\n },\n props: {\n prefixCls: {\n type: String,\n default: ''\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n validator: (v: string) => ['text', 'picture', 'picture-card'].includes(v)\n },\n action: {\n type: String\n },\n name: {\n type: String,\n default: 'file'\n },\n data: {\n type: Object,\n default: () => ({})\n },\n multiple: {\n type: Boolean,\n default: false\n },\n headers: {\n type: Object,\n default: () => ({})\n },\n drag: {\n type: Boolean,\n default: false\n },\n accept: {\n type: String\n },\n limit: {\n type: Number\n },\n disabled: {\n type: Boolean,\n default: false\n },\n withCredentials: {\n type: Boolean,\n default: false\n },\n beforeUpload: {\n type: Function as PropType<BeforeUpload>\n },\n customRequest: {\n type: Function as PropType<UploadRequest>\n }\n },\n setup(props) {\n const reqs = ref<Record<string, XMLHttpRequest | undefined>>({});\n const fileRef = ref<any | null>(null);\n\n const { handleError, handleSuccess, handleProgress, handleStart, handleExceed } = inject<UploadContext>('UploadContext', {} as UploadContext);\n\n const post = (rawFile: any) => {\n const { uid } = rawFile;\n if (!props.action) {\n return;\n }\n const option = {\n headers: props.headers,\n withCredentials: props.withCredentials,\n file: rawFile,\n data: props.data,\n fileName: props.name,\n action: props.action,\n onProgress: (e: UploadProgress) => {\n handleProgress(e, rawFile);\n },\n onSuccess: (res: any) => {\n handleSuccess(res, rawFile);\n delete reqs.value[uid];\n },\n onError: (err: UploadError) => {\n handleError(err, rawFile);\n delete reqs.value[uid];\n }\n };\n const request = defaultRequest || props.customRequest;\n const req = request(option) as XMLHttpRequest;\n handleStart(rawFile);\n reqs.value[uid] = req;\n if (req instanceof Promise) {\n req.then(option.onSuccess, option.onError);\n }\n };\n\n const upload = (rawFile: RawFile, isLast = false) => {\n if (fileRef.value) {\n fileRef.value.value = '';\n }\n if (!props.beforeUpload) {\n return post(rawFile);\n }\n const before = props.beforeUpload(rawFile, isLast);\n if (before instanceof Promise) {\n before\n .then((processedFile) => {\n const processedFileType = Object.prototype.toString.call(processedFile);\n if (processedFileType === '[object File]' || processedFileType === '[object Blob]') {\n post(processedFile);\n } else {\n post(rawFile);\n }\n })\n .catch((e) => {\n handleError(e, rawFile);\n });\n } else if (before !== false) {\n post(rawFile);\n }\n };\n\n const abort = (file: FileInfo) => {\n const _reqs = reqs.value;\n if (file) {\n const uid = file.uid!;\n if (_reqs[uid] && _reqs[uid]?.abort) {\n _reqs[uid]?.abort();\n }\n delete _reqs[uid];\n } else {\n Object.keys(_reqs).forEach((uid) => {\n if (_reqs[uid]) _reqs[uid]?.abort();\n delete _reqs[uid];\n });\n }\n };\n\n const uploadFiles = (files: File[]) => {\n if (props.limit !== undefined && files.length > props.limit) {\n handleExceed(files);\n return;\n }\n let postFiles = Array.from(files);\n if (!props.multiple) {\n postFiles = postFiles.slice(0, 1);\n }\n if (postFiles.length === 0) {\n return;\n }\n postFiles\n .map((f) => {\n (f as RawFile).uid = getUid();\n return f;\n })\n .forEach((rawFile, i) => {\n upload(rawFile, i === postFiles.length - 1);\n });\n };\n\n const handleClick = () => {\n if (!props.disabled) {\n if (fileRef.value) {\n fileRef.value.value = '';\n fileRef.value.click();\n }\n }\n };\n\n const handleEnter = () => {\n handleClick();\n };\n\n const handleChange = (e: any) => {\n const { files } = e.target;\n if (!files) return;\n uploadFiles(files);\n };\n\n return {\n abort,\n upload,\n fileRef,\n uploadFiles,\n handleClick,\n handleEnter,\n handleChange\n };\n }\n});\n</script>\n"],"names":["defaultRequest","upload","_a","_createElementBlock","_normalizeClass","_createBlock","_renderSlot","_createElementVNode"],"mappings":";;;;;;AAgCA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA;AACF,EACA,OAAO;AAAA,IACL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,MAAc,CAAC,QAAQ,WAAW,cAAc,EAAE,SAAS,CAAC;AAAA;AAC1E,IACA,QAAQ;AAAA,MACN,MAAM;AAAA;AACR,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS,OAAO;AAAC;AACnB,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,OAAO;AAAC;AACnB,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,QAAQ;AAAA,MACN,MAAM;AAAA;AACR,IACA,OAAO;AAAA,MACL,MAAM;AAAA;AACR,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,cAAc;AAAA,MACZ,MAAM;AAAA;AACR,IACA,eAAe;AAAA,MACb,MAAM;AAAA;AACR;AACF,EACA,MAAM,OAAO;UACL,OAAO,IAAgD,EAAE;UACzD,UAAU,IAAgB,IAAI;UAE9B,EAAE,aAAa,eAAe,gBAAgB,aAAa,iBAAiB,OAAsB,iBAAiB,EAAmB;UAEtI,OAAO,CAAC,YAAiB;YACvB,EAAE,QAAQ;UACZ,CAAC,MAAM,QAAQ;;;YAGb,SAAS;AAAA,QACb,SAAS,MAAM;AAAA,QACf,iBAAiB,MAAM;AAAA,QACvB,MAAM;AAAA,QACN,MAAM,MAAM;AAAA,QACZ,UAAU,MAAM;AAAA,QAChB,QAAQ,MAAM;AAAA,QACd,YAAY,CAAC,MAAsB;yBAClB,GAAG,OAAO;AAAA;AAC3B,QACA,WAAW,CAAC,QAAa;wBACT,KAAK,OAAO;iBACnB,KAAK,MAAM;AAAA;AACpB,QACA,SAAS,CAAC,QAAqB;sBACjB,KAAK,OAAO;iBACjB,KAAK,MAAM;AAAA;AACpB;YAEI,UAAUA,UAAkB,MAAM;YAClC,MAAM,QAAQ,MAAM;kBACd,OAAO;WACd,MAAM,OAAO;UACd,eAAe,SAAS;YACtB,KAAK,OAAO,WAAW,OAAO,OAAO;AAAA;AAC3C;UAGIC,WAAS,CAAC,SAAkB,SAAS,UAAU;UAC/C,QAAQ,OAAO;gBACT,MAAM,QAAQ;AAAA;UAEpB,CAAC,MAAM,cAAc;eAChB,KAAK,OAAO;AAAA;YAEf,SAAS,MAAM,aAAa,SAAS,MAAM;UAC7C,kBAAkB,SAAS;eAE1B,KAAK,CAAC,kBAAkB;gBACjB,oBAAoB,OAAO,UAAU,SAAS,KAAK,aAAa;cAClE,sBAAsB,mBAAmB,sBAAsB,iBAAiB;iBAC7E,aAAa;AAAA,iBACb;iBACA,OAAO;AAAA;AACd,SACD,EACA,MAAM,CAAC,MAAM;sBACA,GAAG,OAAO;AAAA,SACvB;AAAA,iBACM,WAAW,OAAO;aACtB,OAAO;AAAA;AACd;UAGI,QAAQ,CAAC,SAAmB;
|
|
1
|
+
{"version":3,"file":"Uploader.mjs","sources":["../../../../src/components/Upload/Uploader.vue"],"sourcesContent":["<template>\n <div\n :class=\"{\n [`${prefixCls}`]: true,\n [`${prefixCls}-${listType}`]: true,\n [`${prefixCls}-drag`]: drag,\n [`${prefixCls}-disabled`]: disabled\n }\"\n tabindex=\"0\"\n @click=\"handleClick\"\n @keydown.enter=\"handleEnter\"\n >\n <template v-if=\"drag\">\n <UploadDragger :disabled=\"disabled\" :prefix-cls=\"prefixCls\" :error=\"error\" :accept=\"accept\" @file=\"uploadFiles\">\n <slot />\n </UploadDragger>\n </template>\n <template v-else>\n <slot />\n </template>\n <input ref=\"fileRef\" :class=\"`${prefixCls}-input`\" type=\"file\" :name=\"name\" :multiple=\"multiple\" :accept=\"accept\" @change=\"handleChange\" />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from 'vue';\nimport type { PropType } from 'vue';\nimport defaultRequest from './uitls/request';\nimport UploadDragger from './UploadDragger.vue';\nimport getUid from './uitls/uid';\nimport type { BeforeUpload, ListType, UploadContext, UploadRequest, RawFile, FileInfo, UploadProgress, UploadError } from './Upload.type';\n\nexport default defineComponent({\n name: 'UUploader',\n components: {\n UploadDragger\n },\n props: {\n prefixCls: {\n type: String,\n default: ''\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n validator: (v: string) => ['text', 'picture', 'picture-card'].includes(v)\n },\n action: {\n type: String\n },\n name: {\n type: String,\n default: 'file'\n },\n data: {\n type: Object,\n default: () => ({})\n },\n multiple: {\n type: Boolean,\n default: false\n },\n headers: {\n type: Object,\n default: () => ({})\n },\n drag: {\n type: Boolean,\n default: false\n },\n accept: {\n type: String\n },\n limit: {\n type: Number\n },\n disabled: {\n type: Boolean,\n default: false\n },\n withCredentials: {\n type: Boolean,\n default: false\n },\n beforeUpload: {\n type: Function as PropType<BeforeUpload>\n },\n customRequest: {\n type: Function as PropType<UploadRequest>\n },\n error: {\n type: Boolean,\n default: false\n }\n },\n setup(props) {\n const reqs = ref<Record<string, XMLHttpRequest | undefined>>({});\n const fileRef = ref<any | null>(null);\n\n const { handleError, handleSuccess, handleProgress, handleStart, handleExceed } = inject<UploadContext>('UploadContext', {} as UploadContext);\n\n const post = (rawFile: any) => {\n const { uid } = rawFile;\n if (!props.action) {\n return;\n }\n const option = {\n headers: props.headers,\n withCredentials: props.withCredentials,\n file: rawFile,\n data: props.data,\n fileName: props.name,\n action: props.action,\n onProgress: (e: UploadProgress) => {\n handleProgress(e, rawFile);\n },\n onSuccess: (res: any) => {\n handleSuccess(res, rawFile);\n delete reqs.value[uid];\n },\n onError: (err: UploadError) => {\n handleError(err, rawFile);\n delete reqs.value[uid];\n }\n };\n const request = defaultRequest || props.customRequest;\n const req = request(option) as XMLHttpRequest;\n handleStart(rawFile);\n reqs.value[uid] = req;\n if (req instanceof Promise) {\n req.then(option.onSuccess, option.onError);\n }\n };\n\n const upload = (rawFile: RawFile, isLast = false) => {\n if (fileRef.value) {\n fileRef.value.value = '';\n }\n if (!props.beforeUpload) {\n return post(rawFile);\n }\n const before = props.beforeUpload(rawFile, isLast);\n if (before instanceof Promise) {\n before\n .then((processedFile) => {\n const processedFileType = Object.prototype.toString.call(processedFile);\n if (processedFileType === '[object File]' || processedFileType === '[object Blob]') {\n post(processedFile);\n } else {\n post(rawFile);\n }\n })\n .catch((e) => {\n handleError(e, rawFile);\n });\n } else if (before !== false) {\n post(rawFile);\n }\n };\n\n const abort = (file: FileInfo) => {\n const _reqs = reqs.value;\n if (file) {\n const uid = file.uid!;\n if (_reqs[uid] && _reqs[uid]?.abort) {\n _reqs[uid]?.abort();\n }\n delete _reqs[uid];\n } else {\n Object.keys(_reqs).forEach((uid) => {\n if (_reqs[uid]) _reqs[uid]?.abort();\n delete _reqs[uid];\n });\n }\n };\n\n const uploadFiles = (files: File[]) => {\n if (props.limit !== undefined && files.length > props.limit) {\n handleExceed(files);\n return;\n }\n let postFiles = Array.from(files);\n if (!props.multiple) {\n postFiles = postFiles.slice(0, 1);\n }\n if (postFiles.length === 0) {\n return;\n }\n postFiles\n .map((f) => {\n (f as RawFile).uid = getUid();\n return f;\n })\n .forEach((rawFile, i) => {\n upload(rawFile, i === postFiles.length - 1);\n });\n };\n\n const handleClick = () => {\n if (!props.disabled) {\n if (fileRef.value) {\n fileRef.value.value = '';\n fileRef.value.click();\n }\n }\n };\n\n const handleEnter = () => {\n handleClick();\n };\n\n const handleChange = (e: any) => {\n const { files } = e.target;\n if (!files) return;\n uploadFiles(files);\n };\n\n return {\n abort,\n upload,\n fileRef,\n uploadFiles,\n handleClick,\n handleEnter,\n handleChange\n };\n }\n});\n</script>\n"],"names":["defaultRequest","upload","_a","_createElementBlock","_normalizeClass","_createBlock","_renderSlot","_createElementVNode"],"mappings":"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"}
|
|
@@ -53,6 +53,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
53
53
|
customRequest: {
|
|
54
54
|
type: PropType<UploadRequest>;
|
|
55
55
|
};
|
|
56
|
+
error: {
|
|
57
|
+
type: BooleanConstructor;
|
|
58
|
+
default: boolean;
|
|
59
|
+
};
|
|
56
60
|
}>, {
|
|
57
61
|
abort: (file: FileInfo) => void;
|
|
58
62
|
upload: (rawFile: RawFile, isLast?: boolean) => void;
|
|
@@ -114,7 +118,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
114
118
|
customRequest: {
|
|
115
119
|
type: PropType<UploadRequest>;
|
|
116
120
|
};
|
|
121
|
+
error: {
|
|
122
|
+
type: BooleanConstructor;
|
|
123
|
+
default: boolean;
|
|
124
|
+
};
|
|
117
125
|
}>> & Readonly<{}>, {
|
|
126
|
+
error: boolean;
|
|
118
127
|
name: string;
|
|
119
128
|
prefixCls: string;
|
|
120
129
|
data: Record<string, any>;
|
|
@@ -137,6 +146,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
137
146
|
accept: {
|
|
138
147
|
type: StringConstructor;
|
|
139
148
|
};
|
|
149
|
+
error: {
|
|
150
|
+
type: BooleanConstructor;
|
|
151
|
+
default: boolean;
|
|
152
|
+
};
|
|
140
153
|
}>, {
|
|
141
154
|
dragover: import("vue").Ref<boolean, boolean>;
|
|
142
155
|
onDrop: (e: any) => void;
|
|
@@ -154,9 +167,14 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
154
167
|
accept: {
|
|
155
168
|
type: StringConstructor;
|
|
156
169
|
};
|
|
170
|
+
error: {
|
|
171
|
+
type: BooleanConstructor;
|
|
172
|
+
default: boolean;
|
|
173
|
+
};
|
|
157
174
|
}>> & Readonly<{
|
|
158
175
|
onFile?: (...args: any[]) => any;
|
|
159
176
|
}>, {
|
|
177
|
+
error: boolean;
|
|
160
178
|
prefixCls: string;
|
|
161
179
|
disabled: boolean;
|
|
162
180
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -80,6 +80,10 @@ export declare const UUpload: {
|
|
|
80
80
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
81
81
|
default: () => void;
|
|
82
82
|
};
|
|
83
|
+
error: {
|
|
84
|
+
type: BooleanConstructor;
|
|
85
|
+
default: boolean;
|
|
86
|
+
};
|
|
83
87
|
}>> & Readonly<{
|
|
84
88
|
onChange?: (file: import("./Upload.type").FileInfo, fileList: import("./Upload.type").FileInfo[]) => any;
|
|
85
89
|
onPreview?: (file: import("./Upload.type").FileInfo) => any;
|
|
@@ -126,6 +130,7 @@ export declare const UUpload: {
|
|
|
126
130
|
'item-click': (file: import("./Upload.type").FileInfo) => boolean;
|
|
127
131
|
'update:fileList': (fileList: import("./Upload.type").FileInfo[]) => boolean;
|
|
128
132
|
}, import("vue").PublicProps, {
|
|
133
|
+
error: boolean;
|
|
129
134
|
name: string;
|
|
130
135
|
data: Record<string, any>;
|
|
131
136
|
onError: import("./Upload.type").OnUploadError;
|
|
@@ -227,6 +232,10 @@ export declare const UUpload: {
|
|
|
227
232
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
228
233
|
default: () => void;
|
|
229
234
|
};
|
|
235
|
+
error: {
|
|
236
|
+
type: BooleanConstructor;
|
|
237
|
+
default: boolean;
|
|
238
|
+
};
|
|
230
239
|
}>> & Readonly<{
|
|
231
240
|
onChange?: (file: import("./Upload.type").FileInfo, fileList: import("./Upload.type").FileInfo[]) => any;
|
|
232
241
|
onPreview?: (file: import("./Upload.type").FileInfo) => any;
|
|
@@ -268,6 +277,7 @@ export declare const UUpload: {
|
|
|
268
277
|
[key: string]: any;
|
|
269
278
|
}>[];
|
|
270
279
|
}, {}, {}, {}, {
|
|
280
|
+
error: boolean;
|
|
271
281
|
name: string;
|
|
272
282
|
data: Record<string, any>;
|
|
273
283
|
onError: import("./Upload.type").OnUploadError;
|
|
@@ -366,6 +376,10 @@ export declare const UUpload: {
|
|
|
366
376
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
367
377
|
default: () => void;
|
|
368
378
|
};
|
|
379
|
+
error: {
|
|
380
|
+
type: BooleanConstructor;
|
|
381
|
+
default: boolean;
|
|
382
|
+
};
|
|
369
383
|
}>> & Readonly<{
|
|
370
384
|
onChange?: (file: import("./Upload.type").FileInfo, fileList: import("./Upload.type").FileInfo[]) => any;
|
|
371
385
|
onPreview?: (file: import("./Upload.type").FileInfo) => any;
|
|
@@ -412,6 +426,7 @@ export declare const UUpload: {
|
|
|
412
426
|
'item-click': (file: import("./Upload.type").FileInfo) => boolean;
|
|
413
427
|
'update:fileList': (fileList: import("./Upload.type").FileInfo[]) => boolean;
|
|
414
428
|
}, string, {
|
|
429
|
+
error: boolean;
|
|
415
430
|
name: string;
|
|
416
431
|
data: Record<string, any>;
|
|
417
432
|
onError: import("./Upload.type").OnUploadError;
|
|
@@ -111,7 +111,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
111
111
|
_: 1
|
|
112
112
|
}, 8, ["size", "onClick"])) : vue.createCommentVNode("v-if", true),
|
|
113
113
|
vue.createVNode(_component_UButton, {
|
|
114
|
-
type:
|
|
114
|
+
type: _ctx.okType,
|
|
115
115
|
size: _ctx.size,
|
|
116
116
|
loading: _ctx.stateLoading,
|
|
117
117
|
onClick: _ctx.handleOk
|
|
@@ -120,7 +120,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
120
120
|
vue.createTextVNode(vue.toDisplayString(_ctx.okText || _ctx.computedLocale.okText), 1)
|
|
121
121
|
]),
|
|
122
122
|
_: 1
|
|
123
|
-
}, 8, ["size", "loading", "onClick"])
|
|
123
|
+
}, 8, ["type", "size", "loading", "onClick"])
|
|
124
124
|
]),
|
|
125
125
|
default: vue.withCtx(() => [
|
|
126
126
|
vue.createElementVNode("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmDialog.js","sources":["../../../../src/components/Modal/ConfirmDialog.vue"],"sourcesContent":["<template>\n <Modal\n :id=\"id\"\n :visible=\"visible\"\n :custom-class=\"confirmClass\"\n :mask-closable=\"false\"\n :width=\"computedWidth\"\n :size=\"size\"\n :after-close=\"afterClose\"\n :closable=\"closable\"\n @close=\"closableClose\"\n >\n <div :class=\"`${prefixCls}-confirm-body-wrapper`\">\n <div :class=\"`${prefixCls}-confirm-body`\">\n <UIcon :class=\"`${prefixCls}-confirm-icon`\">\n <component :is=\"iconName\" />\n </UIcon>\n <div :class=\"`${prefixCls}-confirm-content-wrap`\">\n <span v-if=\"title !== undefined\" :class=\"`${prefixCls}-confirm-title`\">\n {{ title }}\n </span>\n <div :class=\"`${prefixCls}-confirm-content`\">\n <template v-if=\"typeof content === 'function'\">\n <Render :render=\"content\" />\n </template>\n <template v-else> {{ content }} </template>\n </div>\n </div>\n </div>\n </div>\n <template #footer>\n <UButton v-if=\"okCancel\" :size=\"size\" @click=\"handleCancel\">\n {{ cancelText || computedLocale.cancelText }}\n </UButton>\n <UButton type=\"
|
|
1
|
+
{"version":3,"file":"ConfirmDialog.js","sources":["../../../../src/components/Modal/ConfirmDialog.vue"],"sourcesContent":["<template>\n <Modal\n :id=\"id\"\n :visible=\"visible\"\n :custom-class=\"confirmClass\"\n :mask-closable=\"false\"\n :width=\"computedWidth\"\n :size=\"size\"\n :after-close=\"afterClose\"\n :closable=\"closable\"\n @close=\"closableClose\"\n >\n <div :class=\"`${prefixCls}-confirm-body-wrapper`\">\n <div :class=\"`${prefixCls}-confirm-body`\">\n <UIcon :class=\"`${prefixCls}-confirm-icon`\">\n <component :is=\"iconName\" />\n </UIcon>\n <div :class=\"`${prefixCls}-confirm-content-wrap`\">\n <span v-if=\"title !== undefined\" :class=\"`${prefixCls}-confirm-title`\">\n {{ title }}\n </span>\n <div :class=\"`${prefixCls}-confirm-content`\">\n <template v-if=\"typeof content === 'function'\">\n <Render :render=\"content\" />\n </template>\n <template v-else> {{ content }} </template>\n </div>\n </div>\n </div>\n </div>\n <template #footer>\n <UButton v-if=\"okCancel\" :size=\"size\" @click=\"handleCancel\">\n {{ cancelText || computedLocale.cancelText }}\n </UButton>\n <UButton :type=\"okType\" :size=\"size\" :loading=\"stateLoading\" @click=\"handleOk\">\n {{ okText || computedLocale.okText }}\n </UButton>\n </template>\n </Modal>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\n\nimport UIcon from '@uxd-ui/components/Icon';\nimport { Info, CheckCircle, CircleX, CircleAlert, HelpCircle, CircleHelp } from 'lucide-vue-next';\nimport UButton from '@uxd-ui/components/Button';\nimport Render from '../base/Render';\nimport Modal from './Modal.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport { confirmDialogProps, type ModalCloseType } from './Modal.type';\n\nexport default defineComponent({\n name: 'ConfirmDialog',\n components: {\n Modal,\n UIcon,\n UButton,\n Info,\n CheckCircle,\n CircleX,\n CircleAlert,\n HelpCircle,\n CircleHelp,\n Render\n },\n props: confirmDialogProps,\n setup(props) {\n const { prefixCls, config: globalConfig } = useGlobalConfig('modal');\n const stateLoading = ref(false);\n // ===================== computed ============================\n const confirmClass = computed(() => {\n return [`${prefixCls.value}-confirm`, `${prefixCls.value}-confirm-${props.type}`, `${prefixCls.value}-${props.type}`];\n });\n const computedLocale = computed(() => {\n return props.locale || globalConfig.locale.modal;\n });\n // ===================== computed ============================\n const closeConfirm = () => {\n if (props.close) {\n props.close();\n }\n };\n const handleCancel = () => {\n if (props.onCancel) {\n props.onCancel();\n }\n closeConfirm();\n };\n const handleOk = () => {\n if (props.onOk) {\n props.onOk();\n }\n if (props.loading) {\n stateLoading.value = true;\n } else {\n closeConfirm();\n }\n };\n\n const closableClose = (type: ModalCloseType) => {\n if (props.closable && type === 'close') {\n closeConfirm();\n }\n };\n\n const computedWidth = computed(() => {\n if (props.width) {\n return props.width;\n }\n if (props.size === 'small') {\n return 384;\n }\n return 416;\n });\n\n return {\n prefixCls,\n confirmClass,\n stateLoading,\n computedLocale,\n computedWidth,\n handleOk,\n handleCancel,\n closableClose\n };\n }\n});\n</script>\n"],"names":["defineComponent","Modal","UIcon","UButton","Info","CheckCircle","CircleX","CircleAlert","HelpCircle","CircleHelp","Render","confirmDialogProps","useGlobalConfig","ref","computed","_createBlock","_withCtx","_createVNode","_createElementVNode","_normalizeClass","_resolveDynamicComponent","_createElementBlock","_Fragment"],"mappings":";;;;;;;;;;;;;;AAoDA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,WACVC;AAAA,WACAC;AAAA,aACAC;AAAA,UACAC;AAAA,iBACAC;AAAA,aACAC;AAAA,iBACAC;AAAA,gBACAC;AAAA,gBACAC;AAAA,YACAC;AAAA;AACF,EACA,OAAOC;AAAA,EACP,MAAM,OAAO;UACL,EAAE,WAAW,QAAQ,iBAAiBC,2BAAgB,OAAO;UAC7D,eAAeC,QAAI,KAAK;UAExB,eAAeC,aAAS,MAAM;aAC3B,CAAC,GAAG,UAAU,iBAAiB,GAAG,UAAU,iBAAiB,MAAM,QAAQ,GAAG,UAAU,SAAS,MAAM,MAAM;AAAA,KACrH;UACK,iBAAiBA,aAAS,MAAM;aAC7B,MAAM,UAAU,aAAa,OAAO;AAAA,KAC5C;UAEK,eAAe,MAAM;UACrB,MAAM,OAAO;cACT;AAAM;AACd;UAEI,eAAe,MAAM;UACrB,MAAM,UAAU;cACZ;AAAS;;AAEJ;UAET,WAAW,MAAM;UACjB,MAAM,MAAM;cACR;AAAK;UAET,MAAM,SAAS;qBACJ,QAAQ;AAAA,aAChB;;AACQ;AACf;UAGI,gBAAgB,CAAC,SAAyB;UAC1C,MAAM,YAAY,SAAS,SAAS;;AACzB;AACf;UAGI,gBAAgBA,aAAS,MAAM;UAC/B,MAAM,OAAO;eACR,MAAM;AAAA;UAEX,MAAM,SAAS,SAAS;eACnB;AAAA;aAEF;AAAA,KACR;WAEM;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;;;;;0BA9HCC,gBAqCQ;IApCL,IAAI;IACJ,SAAS;IACT,gBAAc;IACd,iBAAe;AAAA,IACf,OAAO;IACP,MAAM;IACN,eAAa;IACb,UAAU;IACV,SAAO;;IAoBG,QAAMC,YACf,MAEU;AAAA,MAFK,kCAAfD,gBAEU;;QAFgB,MAAM;QAAO,SAAO;;6BAC5C,MAA6C;AAAA,kDAA1C,mBAAc,oBAAe,UAAU;;;;MAE5CE,gBAEU;QAFA,MAAM;QAAS,MAAM;QAAO,SAAS;QAAe,SAAO;;6BACnE,MAAqC;AAAA,kDAAlC,eAAU,oBAAe,MAAM;;;;;yBAvBtC,MAiBM;AAAA,MAjBNC,uBAiBM;QAjBA,OAAKC,sBAAK,qCAAS;AAAA;QACvBD,uBAeM;UAfA,OAAKC,sBAAK,6BAAS;AAAA;UACvBF,gBAEQ;YAFA,OAAKE,sBAAK,6BAAS;AAAA;iCACzB,MAA4B;AAAA,gCAA5BJ,gBAA4BK,4BAAZ,aAAQ;;;;UAE1BF,uBAUM;YAVA,OAAKC,sBAAK,qCAAS;AAAA;YACX,eAAU,2BAAtBE,uBAEO;;cAF2B,OAAKF,sBAAK,8BAAS;AAAA,mCAChD,UAAK;YAEVD,uBAKM;cALA,OAAKC,sBAAK,gCAAS;AAAA;qBACA,iBAAO,+BAC5BJ,gBAA4B;;gBAAnB,QAAQ;2DAEnBM,uBAA2CC;wDAAtB,YAAO;;;;;;;;;;;;;;"}
|
|
@@ -80,6 +80,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
80
80
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
81
81
|
default: () => void;
|
|
82
82
|
};
|
|
83
|
+
error: {
|
|
84
|
+
type: BooleanConstructor;
|
|
85
|
+
default: boolean;
|
|
86
|
+
};
|
|
83
87
|
}>, {
|
|
84
88
|
prefixCls: import("vue").ComputedRef<string>;
|
|
85
89
|
uploaderRef: import("vue").Ref<any, any>;
|
|
@@ -201,6 +205,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
201
205
|
type: import("vue").PropType<import("./Upload.type").OnUploadError>;
|
|
202
206
|
default: () => void;
|
|
203
207
|
};
|
|
208
|
+
error: {
|
|
209
|
+
type: BooleanConstructor;
|
|
210
|
+
default: boolean;
|
|
211
|
+
};
|
|
204
212
|
}>> & Readonly<{
|
|
205
213
|
onChange?: (file: FileInfo, fileList: FileInfo[]) => any;
|
|
206
214
|
onPreview?: (file: FileInfo) => any;
|
|
@@ -209,6 +217,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
209
217
|
}>, {
|
|
210
218
|
data: Record<string, any>;
|
|
211
219
|
drag: boolean;
|
|
220
|
+
error: boolean;
|
|
212
221
|
name: string;
|
|
213
222
|
onProgress: import("./Upload.type").OnUploadProgress;
|
|
214
223
|
onError: import("./Upload.type").OnUploadError;
|
|
@@ -108,7 +108,8 @@ var Upload = vue.defineComponent({
|
|
|
108
108
|
"withCredentials": this.withCredentials,
|
|
109
109
|
"disabled": this.disabled,
|
|
110
110
|
"limit": limit,
|
|
111
|
-
"customRequest": this.customRequest
|
|
111
|
+
"customRequest": this.customRequest,
|
|
112
|
+
"error": this.error
|
|
112
113
|
}), _isSlot(_slot = this.getChild()) ? _slot : {
|
|
113
114
|
default: () => [_slot]
|
|
114
115
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Upload.js","sources":["../../../../src/components/Upload/Upload.tsx"],"sourcesContent":["import { defineComponent, provide } from 'vue';\nimport { getSlot, cloneVNode } from '../../utils/slots';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Uploader from './Uploader.vue';\nimport UploadList from './UploadList.vue';\nimport useFileUpload from './hooks/useFileUpload';\nimport { type FileInfo, uploadProps, uploadEmits } from './Upload.type';\n\nexport default defineComponent({\n name: 'UUpload',\n inheritAttrs: false,\n props: uploadProps,\n emits: uploadEmits,\n setup(props, { slots, emit }) {\n const { prefixCls } = useGlobalConfig('upload');\n\n const { uploaderRef, uploadFileList, abort, clearFiles, submit, handleError, handleSuccess, handleProgress, handleStart, handleRemove } =\n useFileUpload(props, emit);\n\n const getChild = () => {\n const children = getSlot(slots);\n const newChildren = children.map((child) => {\n return cloneVNode(child as any, {\n disabled: props.disabled ? true : undefined\n });\n });\n return newChildren;\n };\n\n const handleExceed = (files: File[]) => {\n props.onError('exceed the upload limit', files, uploadFileList.value);\n };\n\n const handlePreview = (file: FileInfo) => {\n emit('preview', file);\n };\n\n const handleItemClick = (file: FileInfo) => {\n emit('item-click', file);\n };\n\n provide('UploadContext', {\n uploadFileList,\n handleError,\n handleSuccess,\n handleProgress,\n handleStart,\n handleRemove,\n handleExceed,\n handlePreview\n });\n\n return {\n prefixCls,\n uploaderRef,\n uploadFileList,\n abort,\n clearFiles,\n submit,\n handleRemove,\n handlePreview,\n handleItemClick,\n getChild\n };\n },\n render() {\n const { showFileList, listType, prefixCls } = this;\n\n let limit;\n if (this.limit && typeof this.limit === 'number') {\n limit = this.limit - this.uploadFileList.length;\n limit = limit > 0 ? limit : 0;\n }\n\n const attrs = this.$attrs;\n\n const uploader = (\n <Uploader\n ref=\"uploaderRef\"\n {...attrs}\n prefixCls={prefixCls}\n action={this.action}\n name={this.name}\n multiple={this.multiple}\n listType={this.listType}\n accept={this.accept}\n headers={this.headers}\n drag={this.drag}\n data={this.data}\n beforeUpload={this.beforeUpload}\n withCredentials={this.withCredentials}\n disabled={this.disabled}\n limit={limit}\n customRequest={this.customRequest}\n >\n {this.getChild()}\n </Uploader>\n );\n\n const uploadList = (append?: any) =>\n showFileList ? (\n <UploadList\n prefixCls={prefixCls}\n disabled={this.disabled}\n files={this.uploadFileList}\n listType={listType}\n listItemClass={this.listItemClass}\n onRemove={this.handleRemove}\n onPreview={this.handlePreview}\n onClick={this.handleItemClick}\n v-slots={{\n ...(this.$slots.file\n ? {\n default: ({ file }: { file: FileInfo }) => {\n return this.$slots.file?.({\n file\n });\n }\n }\n : {}),\n\n ...(append\n ? {\n append: () => append\n }\n : {})\n }}\n ></UploadList>\n ) : null;\n\n const tips = <div class={`${prefixCls}-tip`}>{this.$slots.tip?.()}</div>;\n\n if (this.listType === 'picture-card' && showFileList) {\n return <>{[uploadList(uploader), tips]}</>;\n }\n return <>{[uploader, tips, uploadList()]}</>;\n }\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","inheritAttrs","props","uploadProps","emits","uploadEmits","setup","slots","emit","prefixCls","useGlobalConfig","uploaderRef","uploadFileList","abort","clearFiles","submit","handleError","handleSuccess","handleProgress","handleStart","handleRemove","useFileUpload","getChild","children","getSlot","newChildren","map","child","cloneVNode","disabled","undefined","handleExceed","files","onError","value","handlePreview","file","handleItemClick","provide","render","_slot","showFileList","listType","limit","length","attrs","$attrs","uploader","_createVNode","Uploader","_mergeProps","action","multiple","accept","headers","drag","data","beforeUpload","withCredentials","customRequest","default","uploadList","append","UploadList","listItemClass","$slots","_a","_b","tips","tip","_Fragment"],"mappings":";;;;;;;;;;;;AAMwE,SAAAA,QAAAC;AAAA,gBAAAA,oBAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,4BAAAK,YAAAL,CAAA;AAAA;AAExE,aAAeM,oBAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,cAAc;AAAA,EACdC,OAAOC;AAAAA,EACPC,OAAOC;AAAAA,EACPC,MAAMJ,OAAO;AAAA,WAAEK;AAAAA,IAAOC;AAAAA,KAAQ;AAC5B,UAAM;AAAA,MAAEC;AAAAA,QAAcC,2BAAgB,QAAQ;AAE9C,UAAM;AAAA,MAAEC;AAAAA,MAAaC;AAAAA,MAAgBC;AAAAA,MAAOC;AAAAA,MAAYC;AAAAA,MAAQC;AAAAA,MAAaC;AAAAA,MAAeC;AAAAA,MAAgBC;AAAAA,MAAaC;AAAAA,QACvHC,yBAAcnB,OAAOM,IAAI;AAE3B,UAAMc,WAAWA,MAAM;AACrB,YAAMC,WAAWC,cAAQjB,OAAK;AAC9B,YAAMkB,cAAcF,SAASG,IAAKC,WAAU;AAC1C,eAAOC,eAAWD,OAAc;AAAA,UAC9BE,UAAU3B,MAAM2B,WAAW,OAAOC;AAAAA,SACnC;AAAA,OACF;AACD,aAAOL;AAAAA;AAGT,UAAMM,eAAgBC,WAAkB;AACtC9B,YAAM+B,QAAQ,2BAA2BD,OAAOpB,eAAesB,KAAK;AAAA;AAGtE,UAAMC,gBAAiBC,UAAmB;AACxC5B,WAAK,WAAW4B,IAAI;AAAA;AAGtB,UAAMC,kBAAmBD,UAAmB;AAC1C5B,WAAK,cAAc4B,IAAI;AAAA;AAGzBE,gBAAQ,iBAAiB;AAAA,MACvB1B;AAAAA,MACAI;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAW;AAAAA,MACAI;AAAAA,KACD;AAED,WAAO;AAAA,MACL1B;AAAAA,MACAE;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MACAK;AAAAA,MACAe;AAAAA,MACAE;AAAAA,MACAf;AAAAA;AACF;AACF,EACAiB,SAAS;AAjEX;AAiEW,QAAAC;AACP,UAAM;AAAA,MAAEC;AAAAA,MAAcC;AAAAA,MAAUjC;AAAAA,QAAc;AAE9C,QAAIkC;AACJ,QAAI,KAAKA,SAAS,OAAO,KAAKA,UAAU,UAAU;AAChDA,cAAQ,KAAKA,QAAQ,KAAK/B,eAAegC;AACzCD,cAAQA,QAAQ,IAAIA,QAAQ;AAAA;AAG9B,UAAME,QAAQ,KAAKC;AAEnB,UAAMC,WAAQC,gBAAAC,qBAAAC;MAAA;OAGNL;MAAK,aACEpC;AAAAA,MAAS,UACZ,KAAK0C;AAAAA,MAAM,QACb,KAAKnD;AAAAA,MAAI,YACL,KAAKoD;AAAAA,MAAQ,YACb,KAAKV;AAAAA,MAAQ,UACf,KAAKW;AAAAA,MAAM,WACV,KAAKC;AAAAA,MAAO,QACf,KAAKC;AAAAA,MAAI,QACT,KAAKC;AAAAA,MAAI,gBACD,KAAKC;AAAAA,MAAY,mBACd,KAAKC;AAAAA,MAAe,YAC3B,KAAK7B;AAAAA,MAAQ,SAChBc;AAAAA,MAAK,iBACG,KAAKgB;AAAAA,
|
|
1
|
+
{"version":3,"file":"Upload.js","sources":["../../../../src/components/Upload/Upload.tsx"],"sourcesContent":["import { defineComponent, provide } from 'vue';\nimport { getSlot, cloneVNode } from '../../utils/slots';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport Uploader from './Uploader.vue';\nimport UploadList from './UploadList.vue';\nimport useFileUpload from './hooks/useFileUpload';\nimport { type FileInfo, uploadProps, uploadEmits } from './Upload.type';\n\nexport default defineComponent({\n name: 'UUpload',\n inheritAttrs: false,\n props: uploadProps,\n emits: uploadEmits,\n setup(props, { slots, emit }) {\n const { prefixCls } = useGlobalConfig('upload');\n\n const { uploaderRef, uploadFileList, abort, clearFiles, submit, handleError, handleSuccess, handleProgress, handleStart, handleRemove } =\n useFileUpload(props, emit);\n\n const getChild = () => {\n const children = getSlot(slots);\n const newChildren = children.map((child) => {\n return cloneVNode(child as any, {\n disabled: props.disabled ? true : undefined\n });\n });\n return newChildren;\n };\n\n const handleExceed = (files: File[]) => {\n props.onError('exceed the upload limit', files, uploadFileList.value);\n };\n\n const handlePreview = (file: FileInfo) => {\n emit('preview', file);\n };\n\n const handleItemClick = (file: FileInfo) => {\n emit('item-click', file);\n };\n\n provide('UploadContext', {\n uploadFileList,\n handleError,\n handleSuccess,\n handleProgress,\n handleStart,\n handleRemove,\n handleExceed,\n handlePreview\n });\n\n return {\n prefixCls,\n uploaderRef,\n uploadFileList,\n abort,\n clearFiles,\n submit,\n handleRemove,\n handlePreview,\n handleItemClick,\n getChild\n };\n },\n render() {\n const { showFileList, listType, prefixCls } = this;\n\n let limit;\n if (this.limit && typeof this.limit === 'number') {\n limit = this.limit - this.uploadFileList.length;\n limit = limit > 0 ? limit : 0;\n }\n\n const attrs = this.$attrs;\n\n const uploader = (\n <Uploader\n ref=\"uploaderRef\"\n {...attrs}\n prefixCls={prefixCls}\n action={this.action}\n name={this.name}\n multiple={this.multiple}\n listType={this.listType}\n accept={this.accept}\n headers={this.headers}\n drag={this.drag}\n data={this.data}\n beforeUpload={this.beforeUpload}\n withCredentials={this.withCredentials}\n disabled={this.disabled}\n limit={limit}\n customRequest={this.customRequest}\n error={this.error}\n >\n {this.getChild()}\n </Uploader>\n );\n\n const uploadList = (append?: any) =>\n showFileList ? (\n <UploadList\n prefixCls={prefixCls}\n disabled={this.disabled}\n files={this.uploadFileList}\n listType={listType}\n listItemClass={this.listItemClass}\n onRemove={this.handleRemove}\n onPreview={this.handlePreview}\n onClick={this.handleItemClick}\n v-slots={{\n ...(this.$slots.file\n ? {\n default: ({ file }: { file: FileInfo }) => {\n return this.$slots.file?.({\n file\n });\n }\n }\n : {}),\n\n ...(append\n ? {\n append: () => append\n }\n : {})\n }}\n ></UploadList>\n ) : null;\n\n const tips = <div class={`${prefixCls}-tip`}>{this.$slots.tip?.()}</div>;\n\n if (this.listType === 'picture-card' && showFileList) {\n return <>{[uploadList(uploader), tips]}</>;\n }\n return <>{[uploader, tips, uploadList()]}</>;\n }\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","inheritAttrs","props","uploadProps","emits","uploadEmits","setup","slots","emit","prefixCls","useGlobalConfig","uploaderRef","uploadFileList","abort","clearFiles","submit","handleError","handleSuccess","handleProgress","handleStart","handleRemove","useFileUpload","getChild","children","getSlot","newChildren","map","child","cloneVNode","disabled","undefined","handleExceed","files","onError","value","handlePreview","file","handleItemClick","provide","render","_slot","showFileList","listType","limit","length","attrs","$attrs","uploader","_createVNode","Uploader","_mergeProps","action","multiple","accept","headers","drag","data","beforeUpload","withCredentials","customRequest","error","default","uploadList","append","UploadList","listItemClass","$slots","_a","_b","tips","tip","_Fragment"],"mappings":"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"}
|
|
@@ -125,6 +125,10 @@ export declare const uploadProps: {
|
|
|
125
125
|
type: PropType<OnUploadError>;
|
|
126
126
|
default: () => void;
|
|
127
127
|
};
|
|
128
|
+
error: {
|
|
129
|
+
type: BooleanConstructor;
|
|
130
|
+
default: boolean;
|
|
131
|
+
};
|
|
128
132
|
};
|
|
129
133
|
export type UploadProps = ExtractPropTypes<typeof uploadProps>;
|
|
130
134
|
export declare const uploadEmits: {
|