tdesign-vue-next
Version:
TDesign Component for vue-next
547 lines (539 loc) • 27.3 kB
JavaScript
/**
* tdesign v1.15.2
* (c) 2025 tdesign
* @license MIT
*/
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var Vue = require('vue');
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
var tdesignIconsVueNext = require('tdesign-icons-vue-next');
require('@babel/runtime/helpers/typeof');
require('../../_chunks/dep-040b3cbb.js');
var index = require('../../_chunks/dep-9b6bbd57.js');
require('../../config-provider/hooks/useConfig.js');
var index$1 = require('../../_chunks/dep-4c12d7dc.js');
require('@babel/runtime/helpers/slicedToArray');
var utils = require('../../_chunks/dep-f4362a59.js');
require('../../_chunks/dep-682444b3.js');
var imageViewer_index = require('../../image-viewer/index.js');
var upload_consts_index = require('../consts/index.js');
var button_index = require('../../button/index.js');
var upload_hooks_useDrag = require('../hooks/useDrag.js');
var loading_index = require('../../loading/index.js');
var link_index = require('../../link/index.js');
var image_index = require('../../image/index.js');
var isFunction = require('../../_chunks/dep-3e1aa2e0.js');
var isObject = require('../../_chunks/dep-63ff6e12.js');
require('../../_chunks/dep-0f5dd876.js');
require('../../_chunks/dep-0a9c2d75.js');
require('../../_chunks/dep-c6c5ec69.js');
require('../../_chunks/dep-79f734cc.js');
require('../../_chunks/dep-ce0157af.js');
require('../../_chunks/dep-41b6fe49.js');
require('../../_chunks/dep-eada02ce.js');
require('../../_chunks/dep-d388e00e.js');
require('../../_chunks/dep-15ce91d8.js');
require('../../_chunks/dep-baaf07d6.js');
require('../../_chunks/dep-27e5c925.js');
require('../../_chunks/dep-13d731e3.js');
require('../../_chunks/dep-7cb54b29.js');
require('../../_chunks/dep-2544aa61.js');
require('../../_chunks/dep-ee4f84a5.js');
require('../../_chunks/dep-66f974a3.js');
require('dayjs');
require('../../_chunks/dep-5e94db90.js');
require('../../_chunks/dep-2f309208.js');
require('../../_chunks/dep-7154c044.js');
require('../../_chunks/dep-020c2a7e.js');
require('../../_chunks/dep-79cd6be1.js');
require('../../_chunks/dep-06f7d92f.js');
require('../../_chunks/dep-0c415789.js');
require('../../_chunks/dep-57045e93.js');
require('../../_chunks/dep-c66679ef.js');
require('../../_chunks/dep-3df90229.js');
require('../../_chunks/dep-93426c60.js');
require('../../_chunks/dep-1ec17e27.js');
require('../../_chunks/dep-15b276e6.js');
require('../../_chunks/dep-4d3ddec0.js');
require('../../_chunks/dep-d0f125b5.js');
require('../../_chunks/dep-8d4fdd76.js');
require('@babel/runtime/helpers/createClass');
require('@babel/runtime/helpers/classCallCheck');
require('../../image-viewer/image-viewer.js');
require('../../_chunks/dep-ac087407.js');
require('../../_chunks/dep-bf717a05.js');
require('../../_chunks/dep-9523c147.js');
require('../../loading/icon/gradient.js');
require('../../_chunks/dep-6097d12c.js');
require('../../_chunks/dep-faba77b7.js');
require('@babel/runtime/helpers/objectWithoutProperties');
require('../../_chunks/dep-2ab243e3.js');
require('../../_chunks/dep-def9c618.js');
require('../../_chunks/dep-d47112ce.js');
require('../../_chunks/dep-8848ca1b.js');
require('../../loading/props.js');
require('../../_chunks/dep-00be0637.js');
require('../../image-viewer/base/ImageItem.js');
require('@babel/runtime/helpers/asyncToGenerator');
require('@babel/runtime/regenerator');
require('../../_chunks/dep-9dfff3a7.js');
require('../../image-viewer/hooks/index.js');
require('../../_chunks/dep-6194d0a9.js');
require('../../_chunks/dep-8ecb6c78.js');
require('../../_chunks/dep-4007ed52.js');
require('../../_chunks/dep-770305d5.js');
require('../../_chunks/dep-d2306059.js');
require('../../image-viewer/base/ImageModalIcon.js');
require('../../image-viewer/base/ImageViewerModal.js');
require('../../dialog/index.js');
require('../../dialog/dialog.js');
require('../../dialog/props.js');
require('../../_chunks/dep-9086aab1.js');
require('../../dialog/hooks/useSameTarget.js');
require('../../_chunks/dep-07a0b189.js');
require('../../dialog/utils/index.js');
require('../../dialog/dialog-card.js');
require('../../dialog/dialog-card-props.js');
require('../../dialog/hooks/useAction.js');
require('../../_chunks/dep-f29f22c2.js');
require('../../_chunks/dep-bd33cda1.js');
require('../../_chunks/dep-421d07b8.js');
require('../../_chunks/dep-c78b3175.js');
require('../../button/button.js');
require('../../button/props.js');
require('../../_chunks/dep-ffd5bd7c.js');
require('../../_chunks/dep-1532a597.js');
require('../../_chunks/dep-0e845ebd.js');
require('../../_chunks/dep-32dc80e0.js');
require('../../loading/plugin.js');
require('../../_chunks/dep-de22f208.js');
require('../../_chunks/dep-7d172afa.js');
require('../../_chunks/dep-70bb30fa.js');
require('../../_chunks/dep-02dd9454.js');
require('../../_chunks/dep-2bfd653a.js');
require('../../_chunks/dep-4a827320.js');
require('../../_chunks/dep-5c27b967.js');
require('../../_chunks/dep-304b5191.js');
require('../../_chunks/dep-0ff81c06.js');
require('../../dialog/plugin.js');
require('../../image-viewer/props.js');
require('../../image-viewer/base/ImageViewerUtils.js');
require('../../tooltip/index.js');
require('../../tooltip/tooltip.js');
require('../../tooltip/props.js');
require('../../popup/props.js');
require('../../popup/index.js');
require('../../popup/popup.js');
require('@popperjs/core');
require('../../popup/container.js');
require('../../_chunks/dep-b048575a.js');
require('../../_chunks/dep-bc2c6af0.js');
require('../../_chunks/dep-37ade253.js');
require('../../tooltip/utils/index.js');
require('../../image-viewer/consts/index.js');
require('../../image-viewer/utils/index.js');
require('../../image/image.js');
require('../../_chunks/dep-dd949e1b.js');
require('../../image/props.js');
require('../../space/index.js');
require('../../space/space.js');
require('../../space/props.js');
require('../../_chunks/dep-cfa5d4ff.js');
require('../../link/link.js');
require('../../link/props.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _isSlot(s) {
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !Vue.isVNode(s);
}
var MultipleFlowList = Vue.defineComponent({
name: "UploadMultipleFlowList",
props: _objectSpread(_objectSpread({}, upload_consts_index.commonProps), {}, {
showThumbnail: Boolean,
uploadFiles: Function,
cancelUpload: Function,
dragEvents: Object,
disabled: Boolean,
isBatchUpload: Boolean,
draggable: Boolean,
showImageFileName: Boolean,
uploadButton: Object,
cancelUploadButton: Object,
onPreview: Function
}),
setup: function setup(props, _ref) {
var slots = _ref.slots;
var _toRefs = Vue.toRefs(props),
uploading = _toRefs.uploading,
disabled = _toRefs.disabled,
displayFiles = _toRefs.displayFiles,
classPrefix = _toRefs.classPrefix,
accept = _toRefs.accept;
var uploadPrefix = Vue.computed(function () {
return "".concat(classPrefix.value, "-upload");
});
var locale = Vue.computed(function () {
return props.locale;
});
var renderTNodeJSX = index.useTNodeJSX();
var _useGlobalIcon = index$1.useGlobalIcon({
BrowseIcon: tdesignIconsVueNext.BrowseIcon,
DeleteIcon: tdesignIconsVueNext.DeleteIcon,
CheckCircleFilledIcon: tdesignIconsVueNext.CheckCircleFilledIcon,
ErrorCircleFilledIcon: tdesignIconsVueNext.ErrorCircleFilledIcon,
TimeFilledIcon: tdesignIconsVueNext.TimeFilledIcon,
FileExcelIcon: tdesignIconsVueNext.FileExcelIcon,
FilePdfIcon: tdesignIconsVueNext.FilePdfIcon,
FileWordIcon: tdesignIconsVueNext.FileWordIcon,
FilePowerpointIcon: tdesignIconsVueNext.FilePowerpointIcon,
FileIcon: tdesignIconsVueNext.FileIcon,
VideoIcon: tdesignIconsVueNext.VideoIcon
}),
BrowseIcon = _useGlobalIcon.BrowseIcon,
DeleteIcon = _useGlobalIcon.DeleteIcon,
CheckCircleFilledIcon = _useGlobalIcon.CheckCircleFilledIcon,
ErrorCircleFilledIcon = _useGlobalIcon.ErrorCircleFilledIcon,
TimeFilledIcon = _useGlobalIcon.TimeFilledIcon,
FileExcelIcon = _useGlobalIcon.FileExcelIcon,
FilePdfIcon = _useGlobalIcon.FilePdfIcon,
FileWordIcon = _useGlobalIcon.FileWordIcon,
FilePowerpointIcon = _useGlobalIcon.FilePowerpointIcon,
FileIcon = _useGlobalIcon.FileIcon,
VideoIcon = _useGlobalIcon.VideoIcon;
var drag = upload_hooks_useDrag["default"](props.dragEvents, accept);
var currentPreviewFile = Vue.ref([]);
var previewIndex = Vue.ref(0);
var uploadText = Vue.computed(function () {
if (uploading.value) return "".concat(locale.value.progress.uploadingText);
return locale.value.triggerUploadText.normal;
});
var innerDragEvents = Vue.computed(function () {
var draggable = props.draggable === void 0 ? true : props.draggable;
return draggable ? {
onDrop: drag.handleDrop,
onDragenter: drag.handleDragenter,
onDragover: drag.handleDragover,
onDragleave: drag.handleDragleave
} : {};
});
var getStatusMap = function getStatusMap() {
var iconMap = {
success: Vue.createVNode(CheckCircleFilledIcon, null, null),
fail: Vue.createVNode(ErrorCircleFilledIcon, null, null),
progress: Vue.createVNode(loading_index.Loading, null, null),
waiting: Vue.createVNode(TimeFilledIcon, null, null)
};
var progress = locale.value.progress;
var textMap = {
success: progress === null || progress === void 0 ? void 0 : progress.successText,
fail: progress === null || progress === void 0 ? void 0 : progress.failText,
progress: progress === null || progress === void 0 ? void 0 : progress.uploadingText,
waiting: progress === null || progress === void 0 ? void 0 : progress.waitingText
};
return {
iconMap: iconMap,
textMap: textMap
};
};
var renderEmpty = function renderEmpty() {
return Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__flow-empty")
}, [drag.dragActive.value ? locale.value.dragger.dragDropText : locale.value.dragger.clickAndDragText]);
};
var renderImgItem = function renderImgItem(file, index) {
var _file$response;
var _getStatusMap = getStatusMap(),
iconMap = _getStatusMap.iconMap,
textMap = _getStatusMap.textMap;
var fileName = props.abridgeName && file.name ? utils.abridgeName.apply(void 0, [file.name].concat(_toConsumableArray__default["default"](props.abridgeName))) : file.name;
return Vue.createVNode("li", {
"class": "".concat(uploadPrefix.value, "__card-item"),
"key": file.name + index + file.percent + file.status || "0"
}, [Vue.createVNode("div", {
"class": ["".concat(uploadPrefix.value, "__card-content"), _defineProperty__default["default"]({}, "".concat(classPrefix.value, "-is-bordered"), file.status !== "waiting")]
}, [file.status === "progress" && Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__card-status-wrap ").concat(uploadPrefix.value, "__").concat(props.theme, "-progress")
}, [iconMap[file.status], Vue.createVNode("p", null, [textMap[file.status], props.showUploadProgress && " ".concat(file.percent, "%")])]), file.status === "fail" && Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__card-status-wrap ").concat(uploadPrefix.value, "__").concat(props.theme, "-fail")
}, [iconMap[file.status], Vue.createVNode("p", null, [((_file$response = file.response) === null || _file$response === void 0 ? void 0 : _file$response.error) || textMap[file.status]])]), (["waiting", "success"].includes(file.status) || !file.status && file.url) && Vue.createVNode(image_index.Image, {
"class": "".concat(uploadPrefix.value, "__card-image"),
"src": file.url || file.raw,
"error": "",
"loading": "",
"fit": "contain"
}, null), Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__card-mask")
}, [(file.url || file.raw) && !["progress", "fail"].includes(file.status) && Vue.createVNode("span", {
"class": "".concat(uploadPrefix.value, "__card-mask-item")
}, [Vue.createVNode(BrowseIcon, {
"onClick": function onClick(_ref3) {
var _props$onPreview;
var e = _ref3.e;
previewIndex.value = index;
currentPreviewFile.value = displayFiles.value;
(_props$onPreview = props.onPreview) === null || _props$onPreview === void 0 || _props$onPreview.call(props, {
file: file,
index: index,
e: e
});
}
}, null), Vue.createVNode("span", {
"class": "".concat(uploadPrefix.value, "__card-mask-item-divider")
}, null)]), !disabled.value && Vue.createVNode("span", {
"class": "".concat(uploadPrefix.value, "__card-mask-item ").concat(uploadPrefix.value, "__delete"),
"onClick": function onClick(e) {
return props.onRemove({
e: e,
index: index,
file: file
});
}
}, [Vue.createVNode(DeleteIcon, null, null)])])]), props.showImageFileName && Vue.createVNode("p", {
"class": ["".concat(uploadPrefix.value, "__card-name"), "".concat(uploadPrefix.value, "__flow-status")]
}, [["success", "waiting"].includes(file.status) && iconMap[file.status], fileName])]);
};
var renderStatus = function renderStatus(file) {
var _file$response2, _file$response3;
var _getStatusMap2 = getStatusMap(),
iconMap = _getStatusMap2.iconMap,
textMap = _getStatusMap2.textMap;
return Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__flow-status")
}, [iconMap[file.status], Vue.createVNode("span", {
"class": "".concat(uploadPrefix.value, "__").concat(props.theme, "-").concat(file.status)
}, [(_file$response2 = file.response) !== null && _file$response2 !== void 0 && _file$response2.error ? ((_file$response3 = file.response) === null || _file$response3 === void 0 ? void 0 : _file$response3.error) || textMap[file.status] : textMap[file.status], props.showUploadProgress && file.status === "progress" ? " ".concat(file.percent || 0, "%") : ""])]);
};
var renderNormalActionCol = function renderNormalActionCol(file, index) {
var _locale$value;
return Vue.createVNode("td", null, [Vue.createVNode(button_index.Button, {
"theme": "primary",
"variant": "text",
"content": (_locale$value = locale.value) === null || _locale$value === void 0 || (_locale$value = _locale$value.triggerUploadText) === null || _locale$value === void 0 ? void 0 : _locale$value["delete"],
"class": "".concat(uploadPrefix.value, "__delete"),
"onClick": function onClick(e) {
return props.onRemove({
e: e,
index: index,
file: file
});
}
}, null)]);
};
var renderBatchActionCol = function renderBatchActionCol(index) {
var _locale$value2;
return index === 0 ? Vue.createVNode("td", {
"rowspan": displayFiles.value.length,
"class": "".concat(uploadPrefix.value, "__flow-table__batch-row")
}, [Vue.createVNode(button_index.Button, {
"theme": "primary",
"variant": "text",
"content": (_locale$value2 = locale.value) === null || _locale$value2 === void 0 || (_locale$value2 = _locale$value2.triggerUploadText) === null || _locale$value2 === void 0 ? void 0 : _locale$value2["delete"],
"class": "".concat(uploadPrefix.value, "__delete"),
"onClick": function onClick(e) {
return props.onRemove({
e: e,
index: -1,
file: void 0
});
}
}, null)]) : null;
};
var getFileThumbnailIcon = function getFileThumbnailIcon(fileType) {
if (utils.FILE_PDF_REGEXP.test(fileType)) {
return Vue.createVNode(FilePdfIcon, null, null);
}
if (utils.FILE_EXCEL_REGEXP.test(fileType)) {
return Vue.createVNode(FileExcelIcon, null, null);
}
if (utils.FILE_WORD_REGEXP.test(fileType)) {
return Vue.createVNode(FileWordIcon, null, null);
}
if (utils.FILE_PPT_REGEXP.test(fileType)) {
return Vue.createVNode(FilePowerpointIcon, null, null);
}
if (utils.VIDEO_REGEXP.test(fileType)) {
return Vue.createVNode(VideoIcon, null, null);
}
return Vue.createVNode(FileIcon, null, null);
};
var renderFileThumbnail = function renderFileThumbnail(file) {
if (!file || !file.raw && file.url) return null;
var fileType = file.raw.type;
var className = "".concat(uploadPrefix.value, "__file-thumbnail");
if (utils.IMAGE_REGEXP.test(fileType)) {
return Vue.createVNode(image_index.Image, {
"class": className,
"src": file.url || file.raw,
"fit": "scale-down",
"error": "",
"loading": "",
"onClick": function onClick(e) {
var _props$onPreview2;
e.preventDefault();
currentPreviewFile.value = [file];
previewIndex.value = 0;
(_props$onPreview2 = props.onPreview) === null || _props$onPreview2 === void 0 || _props$onPreview2.call(props, {
file: file,
index: 0,
e: e
});
}
}, null);
}
return Vue.createVNode("div", {
"class": className
}, [getFileThumbnailIcon(fileType)]);
};
var renderFileList = function renderFileList() {
var _locale$value$file, _locale$value$file2, _locale$value$file3, _locale$value$file4;
var customList = renderTNodeJSX("fileListDisplay", {
params: {
cancelUpload: props.cancelUpload,
uploadFiles: props.uploadFiles,
onPreview: props.onPreview,
onRemove: props.onRemove,
toUploadFiles: props.toUploadFiles,
sizeOverLimitMessage: props.sizeOverLimitMessage,
locale: props.locale,
files: props.displayFiles,
dragEvents: innerDragEvents.value
}
});
if (customList || props.fileListDisplay) return customList;
return Vue.createVNode("table", Vue.mergeProps({
"class": "".concat(uploadPrefix.value, "__flow-table")
}, innerDragEvents.value), [Vue.createVNode("thead", null, [Vue.createVNode("tr", null, [Vue.createVNode("th", null, [(_locale$value$file = locale.value.file) === null || _locale$value$file === void 0 ? void 0 : _locale$value$file.fileNameText]), Vue.createVNode("th", {
"style": {
minWidth: "120px"
}
}, [(_locale$value$file2 = locale.value.file) === null || _locale$value$file2 === void 0 ? void 0 : _locale$value$file2.fileSizeText]), Vue.createVNode("th", {
"style": {
minWidth: "120px"
}
}, [(_locale$value$file3 = locale.value.file) === null || _locale$value$file3 === void 0 ? void 0 : _locale$value$file3.fileStatusText]), disabled.value ? null : Vue.createVNode("th", null, [(_locale$value$file4 = locale.value.file) === null || _locale$value$file4 === void 0 ? void 0 : _locale$value$file4.fileOperationText])])]), Vue.createVNode("tbody", null, [!displayFiles.value.length && Vue.createVNode("tr", null, [Vue.createVNode("td", {
"colspan": 4
}, [renderEmpty()])]), displayFiles.value.map(function (file, index) {
var _props$abridgeName;
var showBatchUploadAction = props.isBatchUpload;
var deleteNode = showBatchUploadAction && displayFiles.value.every(function (item) {
return item.status === "success" || !item.status;
}) ? renderBatchActionCol(index) : renderNormalActionCol(file, index);
var fileName = (_props$abridgeName = props.abridgeName) !== null && _props$abridgeName !== void 0 && _props$abridgeName.length ? utils.abridgeName.apply(void 0, [file.name].concat(_toConsumableArray__default["default"](props.abridgeName))) : file.name;
var thumbnailNode = props.showThumbnail ? Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__file-info")
}, [renderFileThumbnail(file), fileName]) : fileName;
var fileNameNode = file.url ? Vue.createVNode(link_index.Link, {
"href": file.url,
"target": "_blank",
"hover": "color",
"disabled": false
}, _isSlot(thumbnailNode) ? thumbnailNode : {
"default": function _default() {
return [thumbnailNode];
}
}) : thumbnailNode;
return Vue.createVNode("tr", {
"key": file.name + index + file.size
}, [Vue.createVNode("td", {
"class": "".concat(uploadPrefix.value, "__file-name"),
"key": file.name + file.url
}, [fileNameNode]), Vue.createVNode("td", null, [utils.returnFileSize(file.size)]), Vue.createVNode("td", null, [renderStatus(file)]), disabled.value ? null : deleteNode]);
})])]);
};
var renderImageList = function renderImageList() {
var customList = renderTNodeJSX("fileListDisplay", {
params: {
cancelUpload: props.cancelUpload,
uploadFiles: props.uploadFiles,
onRemove: props.onRemove,
onPreview: props.onPreview,
toUploadFiles: props.toUploadFiles,
sizeOverLimitMessage: props.sizeOverLimitMessage,
locale: props.locale,
files: props.displayFiles,
dragEvents: innerDragEvents.value
}
});
if (customList || props.fileListDisplay) return customList;
return Vue.createVNode("ul", {
"class": "".concat(uploadPrefix.value, "__card clearfix")
}, [props.displayFiles.map(function (file, index) {
return renderImgItem(file, index);
})]);
};
return function () {
var _slots$default, _locale$value3, _locale$value4;
var cardClassName = "".concat(uploadPrefix.value, "__flow-card-area");
var cancelUploadDisabled = disabled.value || !uploading.value;
var hasCancelUploadTNode = slots.uploadButton || isFunction.isFunction(props.uploadButton);
var uploadButtonDisabled = Boolean(disabled.value || uploading.value || !displayFiles.value.length);
var hasUploadButtonTNode = slots.cancelUploadButton || isFunction.isFunction(props.cancelUploadButton);
return Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__flow ").concat(uploadPrefix.value, "__flow-").concat(props.theme)
}, [Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__flow-op")
}, [(_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots), props.placeholder && Vue.createVNode("small", {
"class": "".concat(uploadPrefix.value, "__flow-placeholder ").concat(uploadPrefix.value, "__placeholder")
}, [props.placeholder])]), props.theme === "image-flow" && Vue.createVNode("div", Vue.mergeProps({
"class": cardClassName
}, innerDragEvents.value), [displayFiles.value.length ? renderImageList() : renderEmpty()]), props.theme === "file-flow" && (displayFiles.value.length ? renderFileList() : Vue.createVNode("div", Vue.mergeProps({
"class": cardClassName
}, innerDragEvents.value), [renderEmpty()])), !props.autoUpload && (props.uploadButton !== null || props.cancelUploadButton !== null) && Vue.createVNode("div", {
"class": "".concat(uploadPrefix.value, "__flow-bottom")
}, [props.cancelUploadButton !== null && (hasCancelUploadTNode ? renderTNodeJSX("cancelUploadButton", {
params: {
disabled: cancelUploadDisabled,
cancelUploadText: (_locale$value3 = locale.value) === null || _locale$value3 === void 0 ? void 0 : _locale$value3.cancelUploadText,
cancelUpload: props.cancelUpload
}
}) : Vue.createVNode(button_index.Button, Vue.mergeProps({
"theme": "default",
"disabled": cancelUploadDisabled,
"content": (_locale$value4 = locale.value) === null || _locale$value4 === void 0 ? void 0 : _locale$value4.cancelUploadText,
"class": "".concat(uploadPrefix.value, "__cancel"),
"onClick": function onClick(e) {
var _props$cancelUpload;
return (_props$cancelUpload = props.cancelUpload) === null || _props$cancelUpload === void 0 ? void 0 : _props$cancelUpload.call(props, {
e: e
});
}
}, isObject.isObject(props.cancelUploadButton) ? props.cancelUploadButton : {}), null)), props.uploadButton !== null && (hasUploadButtonTNode ? renderTNodeJSX("uploadButton", {
params: {
disabled: uploadButtonDisabled,
uploading: uploading.value,
uploadText: uploadText.value,
uploadFiles: props.uploadFiles
}
}) : Vue.createVNode(button_index.Button, Vue.mergeProps({
"disabled": uploadButtonDisabled,
"theme": "primary",
"loading": uploading.value,
"class": "".concat(uploadPrefix.value, "__continue"),
"content": uploadText.value,
"onClick": function onClick() {
var _props$uploadFiles;
return (_props$uploadFiles = props.uploadFiles) === null || _props$uploadFiles === void 0 ? void 0 : _props$uploadFiles.call(props);
}
}, isObject.isObject(props.uploadButton) ? props.uploadButton : {}), null))]), Vue.createVNode(imageViewer_index.ImageViewer, Vue.mergeProps({
"images": currentPreviewFile.value.map(function (t) {
return t.url || t.raw;
}),
"visible": !!currentPreviewFile.value.length,
"onClose": function onClose() {
currentPreviewFile.value = [];
},
"index": previewIndex.value,
"onIndexChange": function onIndexChange(val) {
return previewIndex.value = val;
}
}, props.imageViewerProps), null)]);
};
}
});
exports["default"] = MultipleFlowList;
//# sourceMappingURL=multiple-flow-list.js.map