@robot-admin/naive-ui-components 0.21.1 → 0.22.1
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/CHANGELOG.md +22 -0
- package/README.md +5 -1
- package/README_EN.md +5 -1
- package/SECURITY.md +10 -0
- package/THIRD_PARTY_NOTICES.md +10 -0
- package/dist/C_AntV2.cjs +1 -1
- package/dist/C_Barcode2.cjs +1 -1
- package/dist/C_Captcha.d.ts +2 -0
- package/dist/C_Editor.css +18 -18
- package/dist/C_Editor2.cjs +1 -1
- package/dist/C_Editor2.js +1 -1
- package/dist/C_FilePreview2.cjs +1 -1
- package/dist/C_FilePreview2.js +1 -1
- package/dist/C_Form.base.css +58 -58
- package/dist/C_Form.cjs +1 -1
- package/dist/C_Form.css +76 -76
- package/dist/C_Form.d.cts +3 -1
- package/dist/C_Form.d.ts +3 -2
- package/dist/C_Form.js +1 -1
- package/dist/C_FormModal.css +10 -10
- package/dist/C_FormModal.d.ts +1 -0
- package/dist/C_FormModal2.cjs +1 -1
- package/dist/C_FormModal2.js +1 -1
- package/dist/C_FormSearch.css +56 -56
- package/dist/C_FormSearch.d.ts +2 -1
- package/dist/C_FormSearch2.cjs +1 -1
- package/dist/C_FormSearch2.js +1 -1
- package/dist/C_FullCalendar2.cjs +1 -1
- package/dist/C_Login.d.ts +3 -0
- package/dist/C_Markdown.css +37 -37
- package/dist/C_Markdown2.cjs +1 -1
- package/dist/C_Markdown2.js +1 -1
- package/dist/C_QRCode2.cjs +1 -1
- package/dist/C_Table.base.css +58 -58
- package/dist/C_Table.css +76 -76
- package/dist/C_Table.d.cts +1 -1
- package/dist/C_Table.d.ts +5 -2
- package/dist/C_Tree.d.cts +1 -1
- package/dist/C_Tree.d.ts +5 -2
- package/dist/C_Upload2.cjs +1 -1
- package/dist/C_WaterFall.css +49 -31
- package/dist/C_WaterFall2.cjs +1 -1
- package/dist/C_WaterFall2.js +1 -1
- package/dist/chunk.cjs +1 -1
- package/dist/config.cjs +1 -1
- package/dist/config.d.cts +4 -1
- package/dist/config.d.ts +4 -2
- package/dist/config.js +1 -1
- package/dist/config2.d.ts +14 -0
- package/dist/constants.d.cts +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants2.d.cts +1 -1
- package/dist/constants2.d.ts +1 -1
- package/dist/constants3.d.cts +2 -2
- package/dist/constants3.d.ts +2 -2
- package/dist/constants4.d.cts +5 -5
- package/dist/constants4.d.ts +5 -5
- package/dist/data.cjs +1 -1
- package/dist/data.d.cts +7 -7
- package/dist/data.d.ts +7 -7
- package/dist/data.js +1 -1
- package/dist/dateRange.d.ts +1 -2
- package/dist/density.cjs +1 -1
- package/dist/density.js +1 -1
- package/dist/graphics.d.cts +17 -11
- package/dist/graphics.d.ts +17 -11
- package/dist/helpers.cjs +1 -1
- package/dist/helpers.js +1 -1
- package/dist/html.cjs +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +7 -5
- package/dist/index.js +1 -1
- package/dist/index.vue.d.cts +5 -5
- package/dist/index.vue.d.ts +5 -5
- package/dist/index10.vue.d.cts +2 -2
- package/dist/index10.vue.d.ts +5 -5
- package/dist/index11.vue.d.cts +5 -5
- package/dist/index11.vue.d.ts +1 -1
- package/dist/index12.vue.d.cts +1 -1
- package/dist/index12.vue.d.ts +4 -4
- package/dist/index13.vue.d.cts +4 -4
- package/dist/index13.vue.d.ts +9 -9
- package/dist/index14.vue.d.cts +9 -9
- package/dist/index17.vue.d.ts +2 -2
- package/dist/index18.vue.d.cts +2 -2
- package/dist/index18.vue.d.ts +2 -2
- package/dist/index19.vue.d.cts +2 -2
- package/dist/index19.vue.d.ts +2 -2
- package/dist/index2.vue.d.cts +2 -2
- package/dist/index2.vue.d.ts +2 -2
- package/dist/index20.vue.d.cts +1 -1
- package/dist/index20.vue.d.ts +1 -1
- package/dist/index21.vue.d.cts +1 -1
- package/dist/index21.vue.d.ts +1 -1
- package/dist/index22.vue.d.cts +1 -1
- package/dist/index22.vue.d.ts +1 -1
- package/dist/index25.vue.d.cts +2 -2
- package/dist/index25.vue.d.ts +2 -2
- package/dist/index3.vue.d.cts +6 -6
- package/dist/index3.vue.d.ts +6 -6
- package/dist/index4.vue.d.cts +2 -2
- package/dist/index8.vue.d.ts +3 -3
- package/dist/index9.vue.d.cts +3 -3
- package/dist/index9.vue.d.ts +2 -2
- package/dist/mapUtils.d.cts +2 -2
- package/dist/mapUtils.d.ts +2 -2
- package/dist/style.css +228 -210
- package/dist/types.d.ts +5 -0
- package/dist/types2.d.cts +5 -0
- package/dist/useCalendarEvents.d.cts +1 -1
- package/dist/useCalendarEvents.d.ts +1 -1
- package/dist/useCollapsePanel.d.cts +5 -5
- package/dist/useCollapsePanel.d.ts +5 -5
- package/dist/useCropperCore.d.cts +10 -10
- package/dist/useCropperCore.d.ts +10 -10
- package/dist/useDynamicFormState.d.cts +6 -579
- package/dist/useDynamicFormState.d.ts +6 -579
- package/dist/useEdgeInteraction.d.cts +2 -2
- package/dist/useEdgeInteraction.d.ts +2 -2
- package/dist/useFormConfig.cjs +1 -0
- package/dist/useFormConfig.d.cts +576 -0
- package/dist/useFormConfig.d.ts +611 -0
- package/dist/useFormConfig.js +1 -0
- package/dist/useGlobalSearch.d.cts +1 -1
- package/dist/useGlobalSearch.d.ts +1 -1
- package/dist/useInfiniteScroll.d.cts +16 -17
- package/dist/useInfiniteScroll.d.ts +16 -17
- package/dist/useQRCode.d.cts +5 -5
- package/dist/useQRCode.d.ts +5 -5
- package/dist/useSignatureHistory.d.cts +4 -4
- package/dist/useSignatureHistory.d.ts +4 -4
- package/dist/useSplitResize.d.cts +10 -10
- package/dist/useSplitResize.d.ts +10 -10
- package/dist/useTableQuery.cjs +1 -1
- package/dist/useTableQuery.d.cts +15 -13
- package/dist/useTableQuery.d.ts +17 -26
- package/dist/useTableQuery.js +1 -1
- package/dist/useWorkflowValidation.d.cts +2 -2
- package/dist/useWorkflowValidation.d.ts +2 -2
- package/dist/verification.d.cts +5 -5
- package/dist/verification.d.ts +6 -6
- package/dist/xlsx.js +143 -0
- package/dist/xlsx2.cjs +143 -0
- package/docs/architecture.en.md +1 -0
- package/docs/architecture.md +1 -0
- package/docs/guides/api-migration.md +111 -0
- package/docs/guides/form-density.en.md +17 -3
- package/docs/guides/form-density.md +17 -3
- package/docs/guides/runtime-performance.md +16 -1
- package/docs/guides/usage.en.md +1 -1
- package/docs/guides/waterfall.md +113 -0
- package/docs/runtime-review-20261019.md +2 -0
- package/licenses/SheetJS.txt +201 -0
- package/package.json +13 -9
- package/dist/contracts.d.ts +0 -24
- package/dist/density.d.ts +0 -15
package/dist/C_Table.css
CHANGED
|
@@ -298,7 +298,7 @@ html.dark .action-divider[data-v-48eb3073]:hover {
|
|
|
298
298
|
.w-e-video{box-sizing:border-box;display:flex;margin:0;max-width:100%;width:100%}.w-e-video>iframe,.w-e-video>video{display:block;max-width:100%}.w-e-textarea-video-container{background-image:linear-gradient(45deg,#eee 25%,transparent 0,transparent 75%,#eee 0,#eee),linear-gradient(45deg,#eee 25%,#fff 0,#fff 75%,#eee 0,#eee);background-position:0 0,10px 10px;background-size:20px 20px;border:1px dashed var(--w-e-textarea-border-color);border-radius:5px;margin-top:10px;overflow:auto;padding:10px 0}.w-e-video-align-left{justify-content:flex-start}.w-e-video-align-center{justify-content:center}.w-e-video-align-right{justify-content:flex-end}
|
|
299
299
|
|
|
300
300
|
/* CSS 变量 — 支持外部主题覆盖 */
|
|
301
|
-
.c-editor[data-v-
|
|
301
|
+
.c-editor[data-v-2625824a] {
|
|
302
302
|
--c-editor-toolbar-bg: #ffffff;
|
|
303
303
|
--c-editor-toolbar-border: #e5e7eb;
|
|
304
304
|
--c-editor-menu-color: #333333;
|
|
@@ -316,7 +316,7 @@ html.dark .action-divider[data-v-48eb3073]:hover {
|
|
|
316
316
|
}
|
|
317
317
|
|
|
318
318
|
/* 暗色主题 — 覆盖 CSS 变量 */
|
|
319
|
-
.editor-dark[data-v-
|
|
319
|
+
.editor-dark[data-v-2625824a] {
|
|
320
320
|
--c-editor-toolbar-bg: #1f2937;
|
|
321
321
|
--c-editor-toolbar-border: #374151;
|
|
322
322
|
--c-editor-menu-color: #e5e7eb;
|
|
@@ -329,68 +329,68 @@ html.dark .action-divider[data-v-48eb3073]:hover {
|
|
|
329
329
|
--c-editor-text-focus-bg: #111827;
|
|
330
330
|
--c-editor-text-focus-color: #e5e7eb;
|
|
331
331
|
}
|
|
332
|
-
.editor-dark[data-v-
|
|
332
|
+
.editor-dark[data-v-2625824a] .w-e-toolbar {
|
|
333
333
|
background-color: var(--c-editor-toolbar-bg) !important;
|
|
334
334
|
border-color: var(--c-editor-toolbar-border) !important;
|
|
335
335
|
}
|
|
336
|
-
.editor-dark[data-v-
|
|
336
|
+
.editor-dark[data-v-2625824a] .w-e-toolbar .w-e-menu .w-e-menu-item {
|
|
337
337
|
color: var(--c-editor-menu-color) !important;
|
|
338
338
|
}
|
|
339
|
-
.editor-dark[data-v-
|
|
339
|
+
.editor-dark[data-v-2625824a] .w-e-toolbar .w-e-menu .w-e-menu-item:hover {
|
|
340
340
|
background-color: var(--c-editor-menu-hover-bg) !important;
|
|
341
341
|
color: var(--c-editor-menu-hover-color) !important;
|
|
342
342
|
}
|
|
343
|
-
.editor-dark[data-v-
|
|
343
|
+
.editor-dark[data-v-2625824a] .w-e-toolbar .w-e-menu .w-e-menu-item.w-e-active {
|
|
344
344
|
background-color: var(--c-editor-menu-active-bg) !important;
|
|
345
345
|
color: var(--c-editor-menu-active-color) !important;
|
|
346
346
|
}
|
|
347
|
-
.editor-dark[data-v-
|
|
347
|
+
.editor-dark[data-v-2625824a] .w-e-text-container {
|
|
348
348
|
background-color: var(--c-editor-container-bg) !important;
|
|
349
349
|
border-color: var(--c-editor-container-border) !important;
|
|
350
350
|
}
|
|
351
|
-
.editor-dark[data-v-
|
|
351
|
+
.editor-dark[data-v-2625824a] .w-e-text-container .w-e-text {
|
|
352
352
|
background-color: var(--c-editor-text-bg) !important;
|
|
353
353
|
color: var(--c-editor-text-color) !important;
|
|
354
354
|
}
|
|
355
|
-
.editor-dark[data-v-
|
|
355
|
+
.editor-dark[data-v-2625824a] .w-e-text-container .w-e-text:focus {
|
|
356
356
|
background-color: var(--c-editor-text-focus-bg) !important;
|
|
357
357
|
color: var(--c-editor-text-focus-color) !important;
|
|
358
358
|
}
|
|
359
|
-
[data-v-
|
|
359
|
+
[data-v-2625824a] .w-e-toolbar,[data-v-2625824a] .w-e-text-container {
|
|
360
360
|
max-width: 100% !important;
|
|
361
361
|
overflow-x: auto !important;
|
|
362
362
|
box-sizing: border-box !important;
|
|
363
363
|
}
|
|
364
|
-
[data-v-
|
|
364
|
+
[data-v-2625824a] .w-e-text {
|
|
365
365
|
max-width: 100% !important;
|
|
366
366
|
word-wrap: break-word !important;
|
|
367
367
|
overflow-wrap: break-word !important;
|
|
368
368
|
}
|
|
369
|
-
[data-v-
|
|
369
|
+
[data-v-2625824a] .w-e-toolbar,[data-v-2625824a] .w-e-text-container,[data-v-2625824a] .w-e-text {
|
|
370
370
|
transition:
|
|
371
371
|
background-color var(--c-editor-transition-duration) ease,
|
|
372
372
|
border-color var(--c-editor-transition-duration) ease,
|
|
373
373
|
color var(--c-editor-transition-duration) ease !important;
|
|
374
374
|
}
|
|
375
|
-
.editor-focused[data-v-
|
|
375
|
+
.editor-focused[data-v-2625824a] {
|
|
376
376
|
max-width: 100% !important;
|
|
377
377
|
}
|
|
378
378
|
|
|
379
379
|
|
|
380
380
|
/* layer: default */
|
|
381
|
-
.hidden[data-v-
|
|
382
|
-
.w-full[data-v-
|
|
383
|
-
.px[data-v-
|
|
384
|
-
.transition[data-v-
|
|
385
|
-
.ease[data-v-
|
|
381
|
+
.hidden[data-v-2625824a]{display:none;}
|
|
382
|
+
.w-full[data-v-2625824a]{width:100%;}
|
|
383
|
+
.px[data-v-2625824a]{padding-left:1rem;padding-right:1rem;}
|
|
384
|
+
.transition[data-v-2625824a]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}
|
|
385
|
+
.ease[data-v-2625824a]{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);}
|
|
386
386
|
|
|
387
|
-
.c-form .c-form-actions[data-v-
|
|
387
|
+
.c-form .c-form-actions[data-v-21fb0c93] {
|
|
388
388
|
margin-top: var(--c-form-row-gap, 20px);
|
|
389
389
|
}
|
|
390
|
-
:is(.c-form--default[data-v-
|
|
390
|
+
:is(.c-form--default[data-v-21fb0c93], .c-form--compact[data-v-21fb0c93], .c-form--comfortable[data-v-21fb0c93]) .c-form-field .n-form-item-feedback-wrapper {
|
|
391
391
|
min-height: var(--c-form-item-gap);
|
|
392
392
|
}
|
|
393
|
-
:is(.c-form--default[data-v-
|
|
393
|
+
:is(.c-form--default[data-v-21fb0c93], .c-form--compact[data-v-21fb0c93], .c-form--comfortable[data-v-21fb0c93]) :is(
|
|
394
394
|
.c-form-card > .n-card,
|
|
395
395
|
.c-form-card > .form-content > .n-card,
|
|
396
396
|
.c-form-steps > .steps-container > .steps-content,
|
|
@@ -403,12 +403,12 @@ html.dark .action-divider[data-v-48eb3073]:hover {
|
|
|
403
403
|
}
|
|
404
404
|
|
|
405
405
|
/* layer: default */
|
|
406
|
-
.visible[data-v-
|
|
407
|
-
.grid[data-v-
|
|
408
|
-
.inline[data-v-
|
|
409
|
-
.px[data-v-
|
|
410
|
-
.blur[data-v-
|
|
411
|
-
.filter[data-v-
|
|
406
|
+
.visible[data-v-21fb0c93]{visibility:visible;}
|
|
407
|
+
.grid[data-v-21fb0c93]{display:grid;}
|
|
408
|
+
.inline[data-v-21fb0c93]{display:inline;}
|
|
409
|
+
.px[data-v-21fb0c93]{padding-left:1rem;padding-right:1rem;}
|
|
410
|
+
.blur[data-v-21fb0c93]{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
|
|
411
|
+
.filter[data-v-21fb0c93]{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
|
|
412
412
|
|
|
413
413
|
/* Card 布局样式 */
|
|
414
414
|
.c-form-card[data-v-7818d397] {
|
|
@@ -1037,116 +1037,116 @@ to {
|
|
|
1037
1037
|
|
|
1038
1038
|
/* Grid 布局样式 */
|
|
1039
1039
|
/* 变量定义 */
|
|
1040
|
-
.c-grid-layout[data-v-
|
|
1040
|
+
.c-grid-layout[data-v-f8588934] {
|
|
1041
1041
|
width: 100%;
|
|
1042
1042
|
/* 配置面板 */
|
|
1043
1043
|
}
|
|
1044
|
-
.c-grid-layout .config-panel[data-v-
|
|
1044
|
+
.c-grid-layout .config-panel[data-v-f8588934] {
|
|
1045
1045
|
margin-bottom: 1rem;
|
|
1046
1046
|
}
|
|
1047
|
-
.c-grid-layout .config-panel .config-header[data-v-
|
|
1047
|
+
.c-grid-layout .config-panel .config-header[data-v-f8588934] {
|
|
1048
1048
|
display: flex;
|
|
1049
1049
|
align-items: center;
|
|
1050
1050
|
gap: 0.5rem;
|
|
1051
1051
|
font-weight: 500;
|
|
1052
1052
|
margin-bottom: 8px;
|
|
1053
1053
|
}
|
|
1054
|
-
.c-grid-layout .config-panel .config-controls[data-v-
|
|
1054
|
+
.c-grid-layout .config-panel .config-controls[data-v-f8588934] {
|
|
1055
1055
|
display: flex;
|
|
1056
1056
|
gap: 1rem;
|
|
1057
1057
|
flex-wrap: wrap;
|
|
1058
1058
|
}
|
|
1059
|
-
.c-grid-layout .config-panel .config-controls .config-item[data-v-
|
|
1059
|
+
.c-grid-layout .config-panel .config-controls .config-item[data-v-f8588934] {
|
|
1060
1060
|
display: flex;
|
|
1061
1061
|
align-items: center;
|
|
1062
1062
|
gap: 0.5rem;
|
|
1063
1063
|
}
|
|
1064
|
-
.c-grid-layout .config-panel .config-controls .config-item .config-label[data-v-
|
|
1064
|
+
.c-grid-layout .config-panel .config-controls .config-item .config-label[data-v-f8588934] {
|
|
1065
1065
|
font-size: 0.875rem;
|
|
1066
1066
|
white-space: nowrap;
|
|
1067
1067
|
min-width: 3rem;
|
|
1068
1068
|
}
|
|
1069
|
-
.c-grid-layout[data-v-
|
|
1069
|
+
.c-grid-layout[data-v-f8588934] {
|
|
1070
1070
|
/* 网格容器 */
|
|
1071
1071
|
}
|
|
1072
|
-
.c-grid-layout .grid-container[data-v-
|
|
1072
|
+
.c-grid-layout .grid-container[data-v-f8588934] {
|
|
1073
1073
|
width: 100%;
|
|
1074
1074
|
}
|
|
1075
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1075
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934] {
|
|
1076
1076
|
/* 进场动画 */
|
|
1077
|
-
animation: fadeInUp-
|
|
1077
|
+
animation: fadeInUp-f8588934 0.3s ease-out both;
|
|
1078
1078
|
}
|
|
1079
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1079
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(1) {
|
|
1080
1080
|
animation-delay: 0.05s;
|
|
1081
1081
|
}
|
|
1082
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1082
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(2) {
|
|
1083
1083
|
animation-delay: 0.1s;
|
|
1084
1084
|
}
|
|
1085
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1085
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(3) {
|
|
1086
1086
|
animation-delay: 0.15s;
|
|
1087
1087
|
}
|
|
1088
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1088
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(4) {
|
|
1089
1089
|
animation-delay: 0.2s;
|
|
1090
1090
|
}
|
|
1091
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1091
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(5) {
|
|
1092
1092
|
animation-delay: 0.25s;
|
|
1093
1093
|
}
|
|
1094
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1094
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(6) {
|
|
1095
1095
|
animation-delay: 0.3s;
|
|
1096
1096
|
}
|
|
1097
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1097
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(7) {
|
|
1098
1098
|
animation-delay: 0.35s;
|
|
1099
1099
|
}
|
|
1100
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1100
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(8) {
|
|
1101
1101
|
animation-delay: 0.4s;
|
|
1102
1102
|
}
|
|
1103
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1103
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(9) {
|
|
1104
1104
|
animation-delay: 0.45s;
|
|
1105
1105
|
}
|
|
1106
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1106
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(10) {
|
|
1107
1107
|
animation-delay: 0.5s;
|
|
1108
1108
|
}
|
|
1109
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1109
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(11) {
|
|
1110
1110
|
animation-delay: 0.55s;
|
|
1111
1111
|
}
|
|
1112
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1112
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(12) {
|
|
1113
1113
|
animation-delay: 0.6s;
|
|
1114
1114
|
}
|
|
1115
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1115
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(13) {
|
|
1116
1116
|
animation-delay: 0.65s;
|
|
1117
1117
|
}
|
|
1118
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1118
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(14) {
|
|
1119
1119
|
animation-delay: 0.7s;
|
|
1120
1120
|
}
|
|
1121
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1121
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(15) {
|
|
1122
1122
|
animation-delay: 0.75s;
|
|
1123
1123
|
}
|
|
1124
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1124
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(16) {
|
|
1125
1125
|
animation-delay: 0.8s;
|
|
1126
1126
|
}
|
|
1127
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1127
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(17) {
|
|
1128
1128
|
animation-delay: 0.85s;
|
|
1129
1129
|
}
|
|
1130
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1130
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(18) {
|
|
1131
1131
|
animation-delay: 0.9s;
|
|
1132
1132
|
}
|
|
1133
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1133
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(19) {
|
|
1134
1134
|
animation-delay: 0.95s;
|
|
1135
1135
|
}
|
|
1136
|
-
.c-grid-layout .grid-container .grid-item[data-v-
|
|
1136
|
+
.c-grid-layout .grid-container .grid-item[data-v-f8588934]:nth-child(20) {
|
|
1137
1137
|
animation-delay: 1s;
|
|
1138
1138
|
}
|
|
1139
|
-
.c-grid-layout[data-v-
|
|
1139
|
+
.c-grid-layout[data-v-f8588934] {
|
|
1140
1140
|
/* 统计信息 */
|
|
1141
1141
|
}
|
|
1142
|
-
.c-grid-layout .grid-stats[data-v-
|
|
1142
|
+
.c-grid-layout .grid-stats[data-v-f8588934] {
|
|
1143
1143
|
margin-top: 1rem;
|
|
1144
1144
|
font-size: 0.875rem;
|
|
1145
1145
|
opacity: 0.8;
|
|
1146
1146
|
}
|
|
1147
1147
|
|
|
1148
1148
|
/* 动画定义 */
|
|
1149
|
-
@keyframes fadeInUp-
|
|
1149
|
+
@keyframes fadeInUp-f8588934 {
|
|
1150
1150
|
from {
|
|
1151
1151
|
opacity: 0;
|
|
1152
1152
|
transform: translateY(10px) scale(0.95);
|
|
@@ -1157,59 +1157,59 @@ to {
|
|
|
1157
1157
|
}
|
|
1158
1158
|
}
|
|
1159
1159
|
/* 表单控件统一宽度 */
|
|
1160
|
-
[data-v-
|
|
1160
|
+
[data-v-f8588934] .n-form-item .n-form-item-blank {
|
|
1161
1161
|
/* 统一所有表单控件的宽度 */
|
|
1162
1162
|
}
|
|
1163
|
-
[data-v-
|
|
1163
|
+
[data-v-f8588934] .n-form-item .n-form-item-blank .n-input,[data-v-f8588934] .n-form-item .n-form-item-blank .n-input-number,[data-v-f8588934] .n-form-item .n-form-item-blank .n-select,[data-v-f8588934] .n-form-item .n-form-item-blank .n-date-picker,[data-v-f8588934] .n-form-item .n-form-item-blank .n-time-picker,[data-v-f8588934] .n-form-item .n-form-item-blank .n-cascader,[data-v-f8588934] .n-form-item .n-form-item-blank .n-tree-select,[data-v-f8588934] .n-form-item .n-form-item-blank .n-auto-complete,[data-v-f8588934] .n-form-item .n-form-item-blank .n-dynamic-tags {
|
|
1164
1164
|
width: 100% !important;
|
|
1165
1165
|
}
|
|
1166
1166
|
|
|
1167
1167
|
/* 响应式设计 */
|
|
1168
1168
|
@media (max-width: 768px) {
|
|
1169
|
-
.c-grid-layout .config-panel .config-controls[data-v-
|
|
1169
|
+
.c-grid-layout .config-panel .config-controls[data-v-f8588934] {
|
|
1170
1170
|
flex-direction: column;
|
|
1171
1171
|
gap: 0.75rem;
|
|
1172
1172
|
}
|
|
1173
|
-
.c-grid-layout .config-panel .config-controls .config-item[data-v-
|
|
1173
|
+
.c-grid-layout .config-panel .config-controls .config-item[data-v-f8588934] {
|
|
1174
1174
|
justify-content: space-between;
|
|
1175
1175
|
}
|
|
1176
|
-
.c-grid-layout .grid-container[data-v-
|
|
1176
|
+
.c-grid-layout .grid-container[data-v-f8588934] .n-grid {
|
|
1177
1177
|
gap: 0.5rem !important;
|
|
1178
1178
|
}
|
|
1179
|
-
.c-grid-layout .grid-container .grid-item .item-wrapper[data-v-
|
|
1179
|
+
.c-grid-layout .grid-container .grid-item .item-wrapper[data-v-f8588934] {
|
|
1180
1180
|
padding: 0.125rem;
|
|
1181
1181
|
}
|
|
1182
|
-
.c-grid-layout .grid-stats[data-v-
|
|
1182
|
+
.c-grid-layout .grid-stats[data-v-f8588934] {
|
|
1183
1183
|
margin-top: 0.75rem;
|
|
1184
1184
|
font-size: 0.875rem;
|
|
1185
1185
|
}
|
|
1186
1186
|
}
|
|
1187
1187
|
@media (max-width: 480px) {
|
|
1188
|
-
.c-grid-layout .config-panel[data-v-
|
|
1188
|
+
.c-grid-layout .config-panel[data-v-f8588934] {
|
|
1189
1189
|
margin-bottom: 0.75rem;
|
|
1190
1190
|
}
|
|
1191
1191
|
}
|
|
1192
1192
|
/* 主题适配 */
|
|
1193
|
-
[data-v-
|
|
1193
|
+
[data-v-f8588934] .n-card {
|
|
1194
1194
|
--n-border-radius: 8px;
|
|
1195
1195
|
}
|
|
1196
|
-
[data-v-
|
|
1196
|
+
[data-v-f8588934] .n-input-number {
|
|
1197
1197
|
--n-width: 100%;
|
|
1198
1198
|
}
|
|
1199
1199
|
|
|
1200
1200
|
/* 暗色主题 */
|
|
1201
1201
|
@media (prefers-color-scheme: dark) {
|
|
1202
|
-
.c-grid-layout .grid-container .grid-item .item-wrapper[data-v-
|
|
1202
|
+
.c-grid-layout .grid-container .grid-item .item-wrapper[data-v-f8588934]:hover {
|
|
1203
1203
|
background-color: rgba(255, 255, 255, 0.05);
|
|
1204
1204
|
}
|
|
1205
1205
|
}
|
|
1206
1206
|
|
|
1207
1207
|
/* layer: default */
|
|
1208
|
-
.visible[data-v-
|
|
1209
|
-
.grid[data-v-
|
|
1210
|
-
.inline[data-v-
|
|
1211
|
-
.px[data-v-
|
|
1212
|
-
.blur[data-v-
|
|
1208
|
+
.visible[data-v-f8588934]{visibility:visible;}
|
|
1209
|
+
.grid[data-v-f8588934]{display:grid;}
|
|
1210
|
+
.inline[data-v-f8588934]{display:inline;}
|
|
1211
|
+
.px[data-v-f8588934]{padding-left:1rem;padding-right:1rem;}
|
|
1212
|
+
.blur[data-v-f8588934]{--un-blur:blur(8px);filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
|
|
1213
1213
|
|
|
1214
1214
|
/* Inline 布局样式 */
|
|
1215
1215
|
.c-form-inline[data-v-711f6c00] {
|
package/dist/C_Table.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { $ as MaybeRefLike, $t as PrintWatermarkOptions, At as createEditModeChecker, B as useRowEdit, Bt as mergeGlobalConfig, Ct as ExpandConfig, Dt as ToolbarConfig, Et as TableConfig, F as useCellEdit, Ft as FormatterConfig, G as _default, Gt as useCrossPageSelection, H as defineTableColumns, Ht as CrossPageSelectionConfig, I as usePagination, It as FormatterType, J as ChildSelectionState, Jt as UseRowDragReturn, K as ApiFunction, Kt as RowDragConfig, L as useTableActions, Lt as TABLE_GLOBAL_CONFIG_KEY, Mt as ExportConfig, Nt as exportTableData, Ot as TreeConfig, P as useModalEdit, Pt as ColumnFormatter, Q as EditMode, Qt as useDynamicRows, R as useTableExpand, Rt as TableGlobalConfig, St as ErrorConfig, Tt as SummaryConfig, U as defineTableConfig, Ut as UseCrossPageSelectionOptions, V as useTableColumns, Vt as useTableGlobalConfig, W as validateTableRowKeys, Wt as UseCrossPageSelectionReturn, X as CustomAction, Xt as DynamicRowsOptions, Y as ColumnWithKey, Yt as useRowDrag, Z as DataRecord, Zt as DynamicRowsReturn, _t as BatchActionsConfig, at as SelectOption, bt as DisplayConfig, ct as TableColumn, dt as TableManagerApi, en as printPresets, et as NormalTableColumn, ft as TableProps, gt as UseTableExpandReturn, ht as UseTableExpandOptions, i as useTableQuery, it as RowAction, jt as resolveConfig, kt as VirtualScrollConfig, lt as TableEmits, mt as TableRowKeyIssue, n as TableQueryResult, nt as ParentChildLinkMode, ot as SimpleTableActions, pt as TableRowKey, q as BuiltInTableColumn, qt as UseRowDragOptions, r as UseTableQueryOptions, rt as RenderFunction, st as StrictTableColumn, t as TableQueryContext, tn as usePrintWatermark, tt as PaginationConfig, ut as TableInstance, vt as ColumnDragConfig, wt as SelectionConfig, xt as EditConfig, yt as CrudBinding, z as useTableManager, zt as applyFormatter } from "./useTableQuery.cjs";
|
|
2
1
|
import { r as resolveComponentDensity, t as ComponentDensity } from "./density.cjs";
|
|
2
|
+
import { $ as MaybeRefLike, $t as PrintWatermarkOptions, At as createEditModeChecker, B as useRowEdit, Bt as mergeGlobalConfig, Ct as ExpandConfig, Dt as ToolbarConfig, Et as TableConfig, F as useCellEdit, Ft as FormatterConfig, G as _default, Gt as useCrossPageSelection, H as defineTableColumns, Ht as CrossPageSelectionConfig, I as usePagination, It as FormatterType, J as ChildSelectionState, Jt as UseRowDragReturn, K as ApiFunction, Kt as RowDragConfig, L as useTableActions, Lt as TABLE_GLOBAL_CONFIG_KEY, Mt as ExportConfig, Nt as exportTableData, Ot as TreeConfig, P as useModalEdit, Pt as ColumnFormatter, Q as EditMode, Qt as useDynamicRows, R as useTableExpand, Rt as TableGlobalConfig, St as ErrorConfig, Tt as SummaryConfig, U as defineTableConfig, Ut as UseCrossPageSelectionOptions, V as useTableColumns, Vt as useTableGlobalConfig, W as validateTableRowKeys, Wt as UseCrossPageSelectionReturn, X as CustomAction, Xt as DynamicRowsOptions, Y as ColumnWithKey, Yt as useRowDrag, Z as DataRecord, Zt as DynamicRowsReturn, _t as BatchActionsConfig, at as SelectOption, bt as DisplayConfig, ct as TableColumn, dt as TableManagerApi, en as printPresets, et as NormalTableColumn, ft as TableProps, gt as UseTableExpandReturn, ht as UseTableExpandOptions, i as useTableQuery, it as RowAction, jt as resolveConfig, kt as VirtualScrollConfig, lt as TableEmits, mt as TableRowKeyIssue, n as TableQueryResult, nt as ParentChildLinkMode, ot as SimpleTableActions, pt as TableRowKey, q as BuiltInTableColumn, qt as UseRowDragOptions, r as UseTableQueryOptions, rt as RenderFunction, st as StrictTableColumn, t as TableQueryContext, tn as usePrintWatermark, tt as PaginationConfig, ut as TableInstance, vt as ColumnDragConfig, wt as SelectionConfig, xt as EditConfig, yt as CrudBinding, z as useTableManager, zt as applyFormatter } from "./useTableQuery.cjs";
|
|
3
3
|
export { type ApiFunction, type BatchActionsConfig, type BuiltInTableColumn, _default as C_Table, type ChildSelectionState, type ColumnDragConfig, type ColumnFormatter, type ColumnWithKey, type ComponentDensity, type CrossPageSelectionConfig, type CrudBinding, type CustomAction, type DataRecord, type DisplayConfig, type DynamicRowsOptions, type DynamicRowsReturn, type EditConfig, type EditMode, type ErrorConfig, type ExpandConfig, type ExportConfig, type FormatterConfig, type FormatterType, type MaybeRefLike, type NormalTableColumn, type PaginationConfig, type ParentChildLinkMode, type PrintWatermarkOptions, type RenderFunction, type RowAction, type RowDragConfig, type SelectOption, type SimpleTableActions, type StrictTableColumn, type SummaryConfig, TABLE_GLOBAL_CONFIG_KEY, type TableColumn, type TableConfig, type TableEmits, type TableGlobalConfig, type TableInstance, type TableManagerApi, type TableProps, type TableQueryContext, type TableQueryResult, type TableRowKey, type TableRowKeyIssue, type SelectionConfig as TableSelectionConfig, type ToolbarConfig, type TreeConfig, type UseCrossPageSelectionOptions, type UseCrossPageSelectionReturn, type UseRowDragOptions, type UseRowDragReturn, type UseTableExpandOptions, type UseTableExpandReturn, type UseTableQueryOptions, type VirtualScrollConfig, applyFormatter, createEditModeChecker, defineTableColumns, defineTableConfig, exportTableData, mergeGlobalConfig, printPresets, resolveComponentDensity, resolveConfig, useCellEdit, useCrossPageSelection, useDynamicRows, useModalEdit, usePagination, usePrintWatermark, useRowDrag, useRowEdit, useTableActions, useTableColumns, useTableExpand, useTableGlobalConfig, useTableManager, useTableQuery, validateTableRowKeys };
|
package/dist/C_Table.d.ts
CHANGED
|
@@ -2,14 +2,17 @@ import "./presets.js";
|
|
|
2
2
|
import "./useEdgeInteraction.js";
|
|
3
3
|
import "./public.js";
|
|
4
4
|
import "./index4.vue.js";
|
|
5
|
-
import {
|
|
5
|
+
import { f as resolveComponentDensity, u as ComponentDensity } from "./useFormConfig.js";
|
|
6
|
+
import "./config2.js";
|
|
7
|
+
import "./verification.js";
|
|
6
8
|
import "./useDraggableLayout.js";
|
|
7
9
|
import "./useDynamicFormState.js";
|
|
8
|
-
import { r as resolveComponentDensity, t as ComponentDensity } from "./density.js";
|
|
9
10
|
import "./index11.vue.js";
|
|
10
11
|
import "./dateRange.js";
|
|
12
|
+
import "./index16.vue.js";
|
|
11
13
|
import "./mapUtils.js";
|
|
12
14
|
import "./index18.vue.js";
|
|
15
|
+
import { $ as MaybeRefLike, $t as PrintWatermarkOptions, At as createEditModeChecker, B as useRowEdit, Bt as mergeGlobalConfig, Ct as ExpandConfig, Dt as ToolbarConfig, Et as TableConfig, F as useCellEdit, Ft as FormatterConfig, G as _default, Gt as useCrossPageSelection, H as defineTableColumns, Ht as CrossPageSelectionConfig, I as usePagination, It as FormatterType, J as ChildSelectionState, Jt as UseRowDragReturn, K as ApiFunction, Kt as RowDragConfig, L as useTableActions, Lt as TABLE_GLOBAL_CONFIG_KEY, Mt as ExportConfig, Nt as exportTableData, Ot as TreeConfig, P as useModalEdit, Pt as ColumnFormatter, Q as EditMode, Qt as useDynamicRows, R as useTableExpand, Rt as TableGlobalConfig, St as ErrorConfig, Tt as SummaryConfig, U as defineTableConfig, Ut as UseCrossPageSelectionOptions, V as useTableColumns, Vt as useTableGlobalConfig, W as validateTableRowKeys, Wt as UseCrossPageSelectionReturn, X as CustomAction, Xt as DynamicRowsOptions, Y as ColumnWithKey, Yt as useRowDrag, Z as DataRecord, Zt as DynamicRowsReturn, _t as BatchActionsConfig, at as SelectOption, bt as DisplayConfig, ct as TableColumn, dt as TableManagerApi, en as printPresets, et as NormalTableColumn, ft as TableProps, gt as UseTableExpandReturn, ht as UseTableExpandOptions, i as useTableQuery, it as RowAction, jt as resolveConfig, kt as VirtualScrollConfig, lt as TableEmits, mt as TableRowKeyIssue, n as TableQueryResult, nt as ParentChildLinkMode, ot as SimpleTableActions, pt as TableRowKey, q as BuiltInTableColumn, qt as UseRowDragOptions, r as UseTableQueryOptions, rt as RenderFunction, st as StrictTableColumn, t as TableQueryContext, tn as usePrintWatermark, tt as PaginationConfig, ut as TableInstance, vt as ColumnDragConfig, wt as SelectionConfig, xt as EditConfig, yt as CrudBinding, z as useTableManager, zt as applyFormatter } from "./useTableQuery.js";
|
|
13
16
|
import "./constants5.js";
|
|
14
17
|
import "./useWorkflowValidation.js";
|
|
15
18
|
import "./index24.vue.js";
|
package/dist/C_Tree.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { C as TreeNodeData, D as TreeSlots, E as TreeRenderContext, O as TreeUpdateMeta, S as TreeNativeProps, T as TreeProps, _ as StatusType, b as TreeKey, d as _default, f as ActionConfig, g as StatusConfig, h as IconConfig, l as useTreeOperations, m as DropInfo, p as ButtonType, u as presetConfigs, v as TreeEmits, w as TreeOption, x as TreeMode, y as TreeExpose } from "./useTableQuery.cjs";
|
|
2
1
|
import { t as ComponentDensity } from "./density.cjs";
|
|
2
|
+
import { C as TreeNodeData, D as TreeSlots, E as TreeRenderContext, O as TreeUpdateMeta, S as TreeNativeProps, T as TreeProps, _ as StatusType, b as TreeKey, d as _default, f as ActionConfig, g as StatusConfig, h as IconConfig, l as useTreeOperations, m as DropInfo, p as ButtonType, u as presetConfigs, v as TreeEmits, w as TreeOption, x as TreeMode, y as TreeExpose } from "./useTableQuery.cjs";
|
|
3
3
|
export { type ActionConfig, type ButtonType, _default as C_Tree, type ComponentDensity, type DropInfo, type IconConfig, type StatusConfig, type StatusType, type TreeEmits, type TreeExpose, type TreeKey, type TreeMode, type TreeNativeProps, type TreeNodeData, type TreeOption, type TreeProps, type TreeRenderContext, type TreeSlots, type TreeUpdateMeta, presetConfigs as treePresetConfigs, useTreeOperations };
|
package/dist/C_Tree.d.ts
CHANGED
|
@@ -2,14 +2,17 @@ import "./presets.js";
|
|
|
2
2
|
import "./useEdgeInteraction.js";
|
|
3
3
|
import "./public.js";
|
|
4
4
|
import "./index4.vue.js";
|
|
5
|
-
import {
|
|
5
|
+
import { u as ComponentDensity } from "./useFormConfig.js";
|
|
6
|
+
import "./config2.js";
|
|
7
|
+
import "./verification.js";
|
|
6
8
|
import "./useDraggableLayout.js";
|
|
7
9
|
import "./useDynamicFormState.js";
|
|
8
|
-
import { t as ComponentDensity } from "./density.js";
|
|
9
10
|
import "./index11.vue.js";
|
|
10
11
|
import "./dateRange.js";
|
|
12
|
+
import "./index16.vue.js";
|
|
11
13
|
import "./mapUtils.js";
|
|
12
14
|
import "./index18.vue.js";
|
|
15
|
+
import { C as TreeNodeData, D as TreeSlots, E as TreeRenderContext, O as TreeUpdateMeta, S as TreeNativeProps, T as TreeProps, _ as StatusType, b as TreeKey, d as _default, f as ActionConfig, g as StatusConfig, h as IconConfig, l as useTreeOperations, m as DropInfo, p as ButtonType, u as presetConfigs, v as TreeEmits, w as TreeOption, x as TreeMode, y as TreeExpose } from "./useTableQuery.js";
|
|
13
16
|
import "./constants5.js";
|
|
14
17
|
import "./useWorkflowValidation.js";
|
|
15
18
|
import "./index24.vue.js";
|
package/dist/C_Upload2.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`./chunk.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`),a=require(`spark-md5`);a=e.t(a);const o=2*1024*1024,s={pending:`等待上传`,validating:`校验文件…`,hashing:`计算校验…`,uploading:`上传中…`,success:`上传成功`,error:`上传失败`,paused:`已暂停`,instant:`秒传成功`},c={pending:`default`,validating:`info`,hashing:`info`,uploading:`info`,success:`success`,error:`error`,paused:`warning`,instant:`success`},l={"image/":`mdi:file-image-outline`,"video/":`mdi:file-video-outline`,"audio/":`mdi:file-music-outline`,"application/pdf":`mdi:file-pdf-box`,"application/zip":`mdi:folder-zip-outline`,"application/x-rar":`mdi:folder-zip-outline`,"application/vnd.ms-excel":`mdi:file-excel-outline`,"application/vnd.openxmlformats-officedocument.spreadsheetml":`mdi:file-excel-outline`,"application/msword":`mdi:file-word-outline`,"application/vnd.openxmlformats-officedocument.wordprocessingml":`mdi:file-word-outline`,"text/":`mdi:file-document-outline`,default:`mdi:file-outline`};function u(e){for(let[t,n]of Object.entries(l))if(t!==`default`&&e.startsWith(t))return n;return l.default}function d(e){if(e===0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`,`TB`],n=Math.floor(Math.log(e)/Math.log(1024));return`${(e/1024**n).toFixed(n>0?1:0)} ${t[n]}`}function f(e){let t=[],n=new Set,i=0,a=!1,o=()=>{if(!a){a=!0;try{let n=Math.max(1,Math.trunc(e.value)||1);for(;i<n&&t.length;)t.shift()()}finally{a=!1}}};return(0,r.watch)(e,o),Object.assign((e,r)=>{let a=!1,s=!1,c,l=(e=!0)=>a?!1:(a=!0,n.delete(d),s&&--i,e&&o(),!0),u=()=>{if(!a){s=!0,i+=1;try{c=e({...r,onProgress:e=>{a||r.onProgress?.(e)},onSuccess:e=>{l()&&r.onSuccess?.(e)},onError:e=>{l()&&r.onError?.(e)}})}catch(e){l()&&r.onError?.(e instanceof Error?e:Error(String(e)))}}},d=()=>{let e=t.indexOf(u);if(e>=0&&t.splice(e,1),l(!1))try{c?.abort()}catch{}finally{o()}};return n.add(d),t.push(u),o(),{abort:d}},{abortAll(){let e=a;a=!0,t.length=0;try{for(let e of n)e()}finally{a=e}}})}const p=e=>new Promise((t,n)=>{let r,i,a=()=>{e?.removeEventListener(`abort`,o),r!==void 0&&cancelAnimationFrame(r),i!==void 0&&clearTimeout(i)},o=()=>{a(),n(e?.reason??new DOMException(`Hash cancelled`,`AbortError`))},s=()=>{a(),t()};if(e?.addEventListener(`abort`,o,{once:!0}),e?.aborted){o();return}typeof requestAnimationFrame==`function`?r=requestAnimationFrame(s):i=setTimeout(s,0)});function m(e){let t=(0,r.ref)(0),n=(0,r.ref)(0),i=(0,r.computed)(()=>t.value>0),o=Promise.resolve();async function s(e,t,n){let r=o,i;o=new Promise(e=>{i=e}),await r;try{return await c(e,t,n)}finally{i()}}async function c(r,i,o){o?.throwIfAborted(),t.value+=1,n.value=0,i?.(0);let s=new a.default.ArrayBuffer,c=Math.max(1,Math.trunc(Number(e.value)||1)),l=Math.max(1,Math.ceil(r.size/c));try{for(let e=0;e<l;e+=1){o?.throwIfAborted();let t=e*c,a=await r.slice(t,t+c).arrayBuffer();o?.throwIfAborted(),s.append(a),n.value=Math.round((e+1)/l*100),i?.(n.value),await p(o)}return o?.throwIfAborted(),s.end()}finally{t.value=Math.max(0,t.value-1)}}return{hashing:i,hashProgress:(0,r.readonly)(n),calculateHash:s}}function h(e){let t=new Map,n=new Map;function r(t){let n=Math.max(1,Math.trunc(Number(e.chunkSize.value)||1)),r=[],i=0,a=0;for(;a<t.size;){let e=Math.min(a+n,t.size);r.push({index:i,blob:t.slice(a,e),size:e-a,uploaded:!1}),a=e,i++}return r}async function i(t,n){if(e.uploadedChunksQuery?.value)try{let r=await e.uploadedChunksQuery.value(t);for(let e of r){let t=n[e];t&&(t.uploaded=!0)}}catch{}}function a(t){return new Promise((n,r)=>{let i=!1,a=()=>{i||(i=!0,n())},o=e=>{i||(i=!0,t.setError(),r(e instanceof Error?e:Error(String(e))))},s={action:e.action.value,headers:e.headers.value,data:{...e.data.value,hash:t.hash,chunkIndex:t.chunk.index,totalChunks:t.totalChunks,filename:t.file.name},file:t.chunk.blob,filename:t.file.name,hash:t.hash,chunkIndex:t.chunk.index,totalChunks:t.totalChunks,onProgress:()=>{},onSuccess:()=>{if(!i){if(t.isCancelled()){a();return}t.chunk.uploaded=!0,t.setUploadedBytes(t.chunk.size),t.onProgress({uploadedChunks:t.chunks.filter(e=>e.uploaded).length,totalChunks:t.totalChunks,uploadedBytes:t.chunks.filter(e=>e.uploaded).reduce((e,t)=>e+t.size,0),totalBytes:t.totalBytes}),a()}},onError:o};try{let n=e.customRequest?.value??g,r=e.scheduler?e.scheduler(n,s):n(s);t.abortControllers.push(()=>{try{r.abort()}catch{}finally{a()}})}catch(e){o(e)}})}async function o(o){let{uid:c,file:l,hash:u,onProgress:d,onSuccess:f,onError:p,isPaused:m}=o,h=Symbol(c);n.set(c,h);let g=()=>n.get(c)!==h,_=()=>{g()||n.delete(c)},v=r(l),y=v.length,b=l.size,x=0;if(await i(u,v),g()||m()){_();return}x=v.filter(e=>e.uploaded).reduce((e,t)=>e+t.size,0),d({uploadedChunks:v.filter(e=>e.uploaded).length,totalChunks:y,uploadedBytes:x,totalBytes:b});let S=v.filter(e=>!e.uploaded);if(S.length===0){try{g()||await s(u,l.name,y,f,p,g)}finally{_()}return}let C=[];t.set(c,C);let w=Math.max(1,Math.trunc(Number(e.concurrency.value)||1)),T=0,E=!1;async function D(){for(;T<S.length&&!E&&!m()&&!g();){let e=S[T++];await a({chunk:e,hash:u,file:l,totalChunks:y,chunks:v,totalBytes:b,abortControllers:C,onProgress:e=>{g()||d(e)},setUploadedBytes:e=>{x+=e},setError:()=>{E=!0},isCancelled:g})}}let O=Array.from({length:Math.min(w,S.length)},()=>D());try{let e=(await Promise.allSettled(O)).find(e=>e.status===`rejected`);e&&!g()?p(e.reason instanceof Error?e.reason:Error(String(e.reason))):!E&&!m()&&!g()&&await s(u,l.name,y,f,p,g)}finally{g()||t.delete(c),_()}}async function s(t,n,r,i,a,o){if(e.mergeChunks?.value)try{let a=await e.mergeChunks.value(t,n,r);o()||i(a)}catch(e){o()||a(e instanceof Error?e:Error(`分片合并失败`))}else o()||i({message:`分片上传完成(未配置合并函数)`})}function c(e){n.delete(e),t.get(e)?.forEach(e=>e()),t.delete(e)}function l(){n.clear(),t.forEach(e=>{e.forEach(e=>e())}),t.clear()}return{createChunks:r,uploadChunks:o,abortUpload:c,abortAll:l}}function g(e){let t=new XMLHttpRequest;t.open(`POST`,e.action),e.headers&&Object.entries(e.headers).forEach(([e,n])=>{t.setRequestHeader(e,n)}),t.upload.addEventListener(`progress`,t=>{t.lengthComputable&&e.onProgress?.(Math.round(t.loaded/t.total*100))}),t.addEventListener(`load`,()=>{if(t.status>=200&&t.status<300){let n;try{n=JSON.parse(t.responseText)}catch{n=t.responseText}e.onSuccess?.(n)}else e.onError?.(Error(`上传失败: HTTP ${t.status}`))}),t.addEventListener(`error`,()=>{e.onError?.(Error(`网络错误`))}),t.addEventListener(`abort`,()=>{e.onError?.(new DOMException(`上传已取消`,`AbortError`))});let n=new FormData;return n.append(`file`,e.file,e.filename),e.data&&Object.entries(e.data).forEach(([e,t])=>{n.append(e,String(t))}),t.send(n),{abort:()=>t.abort()}}function _(e){return e instanceof Error?e:Error(String(e))}function v(e){let t=[],n=(0,r.ref)(0),i=new Map,a=()=>{n.value=i.size},o=()=>Math.max(1,Math.trunc(Number(e.concurrency.value)||1));function s(){for(;i.size<o()&&t.length>0;){let n=t.shift(),{file:r}=n;if(!r.raw||i.has(r.uid))continue;let o=!1,c=e=>{o||(o=!0,i.delete(r.uid),a(),e?.error?n.onError(r.uid,e.error):e&&`response`in e&&n.onSuccess(r.uid,e.response),s())},l={action:e.action.value,headers:e.headers.value,data:e.data.value,file:r.raw,filename:r.name,onProgress:e=>n.onProgress(r.uid,e),onSuccess:e=>c({response:e}),onError:e=>c({error:e})};i.set(r.uid,{abort:()=>void 0,settle:c}),a();try{let t=e.customRequest?.value??y,n=e.scheduler?e.scheduler(t,l):t(l),a=i.get(r.uid);a&&(a.abort=n.abort)}catch(e){c({error:_(e)})}}}function c(e,n,r,i){l(e.uid),t.push({file:e,onProgress:n,onSuccess:r,onError:i}),s()}function l(e){for(let n=t.length-1;n>=0;--n)t[n].file.uid===e&&t.splice(n,1);let n=i.get(e);if(n){n.settle();try{n.abort()}catch{}}}function u(){t.length=0;let e=[...i.values()];i.clear(),a(),e.forEach(e=>{e.settle();try{e.abort()}catch{}})}return(0,r.watch)(e.concurrency,s),{activeCount:(0,r.readonly)(n),enqueue:c,abort:l,abortAll:u}}function y(e){let t=new XMLHttpRequest;t.open(`POST`,e.action),Object.entries(e.headers??{}).forEach(([e,n])=>{t.setRequestHeader(e,n)}),t.upload.addEventListener(`progress`,t=>{t.lengthComputable&&e.onProgress?.(Math.round(t.loaded/t.total*100))}),t.addEventListener(`load`,()=>{if(t.status>=200&&t.status<300){let n=t.responseText;try{n=JSON.parse(t.responseText)}catch{}e.onSuccess?.(n)}else e.onError?.(Error(`上传失败: HTTP ${t.status}`))}),t.addEventListener(`error`,()=>e.onError?.(Error(`网络错误`)));let n=new FormData;return n.append(`file`,e.file,e.filename),Object.entries(e.data??{}).forEach(([e,t])=>{n.append(e,String(t))}),t.send(n),{abort:()=>t.abort()}}function b(e){let t=(0,r.computed)(()=>e.action??``),n=(0,r.computed)(()=>e.headers??{}),i=(0,r.computed)(()=>e.data??{}),a=(0,r.computed)(()=>{let t=Math.trunc(Number(e.chunkSize));return Number.isFinite(t)&&t>0?t:o}),s=(0,r.computed)(()=>{let t=Math.trunc(Number(e.concurrency));return Number.isFinite(t)&&t>0?t:3}),c=(0,r.computed)(()=>e.customRequest),l=(0,r.computed)(()=>e.instantCheck),u=(0,r.computed)(()=>e.uploadedChunksQuery),d=(0,r.computed)(()=>e.mergeChunks),p=(0,r.ref)((e.defaultFileList??[]).map(e=>({...e}))),g=(0,r.reactive)(new Set),_=new Map,y=new Set,{hashing:b,hashProgress:x,calculateHash:S}=m(a),C=f(s),w=new Map,T=e=>{w.get(e)?.abort(),w.delete(e)},E=()=>{w.forEach(e=>e.abort()),w.clear()},D=h({scheduler:C,chunkSize:a,concurrency:s,action:t,headers:n,data:i,customRequest:c,uploadedChunksQuery:u,mergeChunks:d}),O=v({scheduler:C,concurrency:s,action:t,headers:n,data:i,customRequest:c}),k=(0,r.computed)(()=>{let e=p.value;if(e.length===0)return 0;let t=e.reduce((e,t)=>e+t.percent,0);return Math.round(t/e.length)});function A(){return typeof crypto<`u`&&`randomUUID`in crypto?`upload-${crypto.randomUUID()}`:`upload-${Date.now()}-${Math.random().toString(36).slice(2,10)}`}function j(e){if(e.type.startsWith(`image/`)){let t=URL.createObjectURL(e);return y.add(t),t}}function M(t){let n=[];for(let r of t){if(Number.isFinite(e.maxCount)&&(e.maxCount??0)>0&&p.value.length+n.length>=Math.trunc(e.maxCount))break;let t={uid:A(),name:r.name,size:r.size,type:r.type,status:`pending`,percent:0,raw:r,thumbUrl:j(r)};n.push(t)}return p.value.push(...n),n}function N(e,t){let n=p.value.find(t=>t.uid===e);n&&Object.assign(n,t)}function P(e){T(e),_.set(e,Symbol(e)),D.abortUpload(e),O.abort(e),g.delete(e);let t=p.value.findIndex(t=>t.uid===e);if(t!==-1){let e=p.value[t];L(e.thumbUrl),p.value.splice(t,1)}}function F(){C.abortAll(),E(),D.abortAll(),O.abortAll(),g.clear(),p.value.forEach(e=>{L(e.thumbUrl)}),p.value=[],_.clear()}async function I(t){if((e.maxSize??0)>0&&t.size>e.maxSize)return null;if(e.beforeUpload){let n=await e.beforeUpload(t);if(n===!1)return null;if(n instanceof File)return(e.maxSize??0)>0&&n.size>e.maxSize?null:n}return t}function L(e){!e||!y.has(e)||(URL.revokeObjectURL(e),y.delete(e))}function R(e,t){return _.get(e)===t&&!g.has(e)&&p.value.some(t=>t.uid===e)}async function z(e,t){T(e.uid);let n=new AbortController;w.set(e.uid,n);try{return await S(e.raw,n=>{R(e.uid,t)&&N(e.uid,{percent:n})},n.signal)}finally{w.get(e.uid)===n&&w.delete(e.uid)}}async function B(n){if(!n.raw)return;let r=Symbol(n.uid);_.set(n.uid,r),N(n.uid,{status:`validating`,error:void 0});let i;try{i=await I(n.raw)}catch(e){R(n.uid,r)&&N(n.uid,{status:`error`,error:e instanceof Error?e.message:`文件校验失败`});return}if(R(n.uid,r)){if(!i){N(n.uid,{status:`error`,error:`文件校验未通过`});return}if(i!==n.raw&&(L(n.thumbUrl),Object.assign(n,{raw:i,name:i.name,size:i.size,type:i.type,hash:void 0,chunkProgress:void 0,thumbUrl:j(i)})),!c.value&&!t.value.trim()){N(n.uid,{status:`error`,error:`未配置上传地址`});return}if(l.value&&!n.hash){N(n.uid,{status:`hashing`});try{let e=await z(n,r);if(!R(n.uid,r))return;N(n.uid,{hash:e});let t=await l.value(e,n.raw.name);if(!R(n.uid,r))return;if(t.exists){N(n.uid,{status:`instant`,percent:100,url:t.url});return}}catch{if(!R(n.uid,r))return}}e.chunked&&n.raw.size>a.value?await V(n,r):H(n,r)}}async function V(e,t){let n=e.raw,{hash:r}=e;if(!r){N(e.uid,{status:`hashing`});try{if(r=await z(e,t),!R(e.uid,t))return;N(e.uid,{hash:r})}catch{R(e.uid,t)&&N(e.uid,{status:`error`,error:`Hash 计算失败`});return}}N(e.uid,{status:`uploading`,percent:0}),await D.uploadChunks({uid:e.uid,file:n,hash:r,onProgress:n=>{if(!R(e.uid,t))return;let r=Math.round(n.uploadedBytes/n.totalBytes*100);N(e.uid,{percent:r,chunkProgress:n})},onSuccess:n=>{R(e.uid,t)&&N(e.uid,{status:`success`,percent:100,response:n})},onError:n=>{R(e.uid,t)&&N(e.uid,{status:`error`,error:n.message})},isPaused:()=>g.has(e.uid)})}function H(e,t){N(e.uid,{status:`uploading`,percent:0}),O.enqueue(e,(e,n)=>{R(e,t)&&N(e,{percent:n})},(e,n)=>{R(e,t)&&N(e,{status:`success`,percent:100,response:n})},(e,n)=>{R(e,t)&&N(e,{status:`error`,error:n.message})})}function U(){p.value.filter(e=>e.status===`pending`).forEach(e=>void B(e))}function W(){C.abortAll(),p.value.forEach(e=>{(e.status===`uploading`||e.status===`hashing`||e.status===`validating`)&&(T(e.uid),g.add(e.uid),_.set(e.uid,Symbol(e.uid)),D.abortUpload(e.uid),O.abort(e.uid),N(e.uid,{status:`paused`}))})}function G(){p.value.forEach(e=>{e.status===`paused`&&(g.delete(e.uid),N(e.uid,{status:`pending`}))}),U()}function K(e){let t=p.value.find(t=>t.uid===e);t&&t.status===`error`&&(N(e,{status:`pending`,percent:0,error:void 0}),B(t))}function q(){return p.value.filter(e=>e.status===`success`||e.status===`instant`)}return(0,r.onBeforeUnmount)(()=>{C.abortAll(),E(),D.abortAll(),O.abortAll(),_.clear(),p.value.forEach(e=>{L(e.thumbUrl)})}),{fileList:p,totalPercent:k,hashing:b,hashProgress:x,addFiles:M,removeFile:P,clearAll:F,startUpload:U,pauseAll:W,resumeAll:G,retryFile:K,processFile:B,getSuccessList:q}}function x(e,t,n,i,a){let o=(0,r.ref)(!1),s=null,c=!1;function l(e){t.value&&(e.preventDefault(),o.value=!0)}function u(e){t.value&&(e.preventDefault(),o.value=!0)}function d(n){if(!t.value)return;n.preventDefault();let r=e.value;r&&!r.contains(n.relatedTarget)&&(o.value=!1)}async function f(e){if(!t.value)return;e.preventDefault(),o.value=!1;let n=e.dataTransfer?.items;if(!n)return;let r=await S(n,e.dataTransfer);if(c||!t.value)return;let s=w(r,i.value);s.length>0&&a(s)}function p(e){if(!n.value)return;let t=e.clipboardData?.items;if(!t)return;let r=[];for(let e=0;e<t.length;e++){let n=t[e];if(n.kind===`file`){let e=n.getAsFile();e&&r.push(e)}}let o=w(r,i.value);o.length>0&&(e.preventDefault(),a(o))}function m(){let t=e.value;!t||s===t||(s=t,t.addEventListener(`dragenter`,l),t.addEventListener(`dragover`,u),t.addEventListener(`dragleave`,d),t.addEventListener(`drop`,f),n.value&&t.addEventListener(`paste`,p))}function h(){let e=s;e&&(e.removeEventListener(`dragenter`,l),e.removeEventListener(`dragover`,u),e.removeEventListener(`dragleave`,d),e.removeEventListener(`drop`,f)),e?.removeEventListener(`paste`,p),s=null}return(0,r.onMounted)(()=>{c=!1,m()}),(0,r.onBeforeUnmount)(()=>{c=!0,h()}),(0,r.watch)([e,t,n],()=>{h(),m()}),{isDragOver:(0,r.readonly)(o)}}async function S(e,t){let n=[];for(let t=0;t<e.length;t++){let r=e[t].webkitGetAsEntry?.();r&&n.push(r)}if(n.length>0)return(await Promise.all(n.map(C))).flat();let r=[],i=t?.files;if(i)for(let e=0;e<i.length;e++)r.push(i[e]);return r}async function C(e){if(e.isFile)return new Promise(t=>{e.file(e=>t([e]),()=>t([]))});if(e.isDirectory){let t=e.createReader(),n=[];for(;;){let e=await new Promise(e=>{t.readEntries(t=>e(t),()=>e([]))});if(e.length===0)break;n.push(...e)}return(await Promise.all(n.map(C))).flat()}return[]}function w(e,t){if(!t)return e;let n=t.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean);return n.length===0?e:e.filter(e=>n.some(t=>{if(t.startsWith(`.`))return e.name.toLowerCase().endsWith(t);if(t.endsWith(`/*`)){let n=t.replace(`/*`,``);return e.type.toLowerCase().startsWith(`${n}/`)}return e.type.toLowerCase()===t}))}const T=[`tabindex`,`aria-disabled`,`onKeydown`],E=[`accept`,`multiple`,`webkitdirectory`,`disabled`],D={class:`upload-area__default`},O={class:`upload-area__text`},k={key:0},A={key:1},j={key:0,class:`upload-area__tip`},M=(0,r.defineComponent)({__name:`UploadArea`,props:{accept:{default:``},multiple:{type:Boolean,default:!1},directory:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},draggable:{type:Boolean,default:!0},pasteable:{type:Boolean,default:!1},tip:{default:``}},emits:[`files`],setup(e,{expose:n,emit:i}){let a=e,o=i,s=(0,r.ref)(),c=(0,r.ref)(),{isDragOver:l}=x(s,(0,r.computed)(()=>a.draggable&&!a.disabled),(0,r.computed)(()=>a.pasteable&&!a.disabled),(0,r.computed)(()=>a.accept),e=>o(`files`,e));function u(){a.disabled||c.value?.click()}function d(e){let t=e.target,n=a.disabled?[]:w(Array.from(t.files??[]),a.accept);n.length>0&&o(`files`,n),t.value=``}return n({triggerSelect:u}),(n,i)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{ref_key:`areaRef`,ref:s,class:(0,r.normalizeClass)([`upload-area`,{"upload-area--drag-over":(0,r.unref)(l),"upload-area--disabled":e.disabled}]),role:`button`,tabindex:e.disabled?-1:0,"aria-disabled":e.disabled,onClick:u,onKeydown:[(0,r.withKeys)((0,r.withModifiers)(u,[`prevent`]),[`enter`]),(0,r.withKeys)((0,r.withModifiers)(u,[`prevent`]),[`space`])]},[(0,r.createElementVNode)(`input`,{ref_key:`inputRef`,ref:c,type:`file`,class:`upload-area__input`,accept:e.accept,multiple:e.multiple,webkitdirectory:e.directory||void 0,disabled:e.disabled,onClick:i[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onChange:d},null,40,E),(0,r.renderSlot)(n.$slots,`default`,{},()=>[(0,r.createElementVNode)(`div`,D,[(0,r.createVNode)(t.t,{name:(0,r.unref)(l)?`mdi:cloud-download-outline`:`mdi:cloud-upload-outline`,class:`upload-area__icon`},null,8,[`name`]),(0,r.createElementVNode)(`div`,O,[(0,r.unref)(l)?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,k,`释放文件到此处`)):((0,r.openBlock)(),(0,r.createElementBlock)(`span`,A,[i[4]||=(0,r.createTextVNode)(` 点击或拖拽文件到此区域上传 `,-1),e.pasteable?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[i[1]||=(0,r.createTextVNode)(` ,支持 `,-1),i[2]||=(0,r.createElementVNode)(`kbd`,null,`Ctrl+V`,-1),i[3]||=(0,r.createTextVNode)(` 粘贴 `,-1)],64)):(0,r.createCommentVNode)(`v-if`,!0)]))]),e.tip?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,j,(0,r.toDisplayString)(e.tip),1)):(0,r.createCommentVNode)(`v-if`,!0)])],!0)],42,T))}});var N=n.t(M,[[`__scopeId`,`data-v-705892ab`]]);const P={class:`file-list__thumb`},F=[`src`,`alt`],I={class:`file-list__info`},L={class:`file-list__name`},R={class:`file-list__meta`},z={class:`file-list__size`},B={key:0,class:`file-list__instant`},V={key:1,class:`file-list__chunk-info`},H={key:2,class:`file-list__error`},U={class:`file-list__actions`},W=(0,r.defineComponent)({__name:`FileList`,props:{fileList:{},showThumbnail:{type:Boolean}},emits:[`remove`,`retry`],setup(e,{emit:n}){let a=n;return(n,o)=>((0,r.openBlock)(),(0,r.createBlock)(r.TransitionGroup,{name:`file-list`,tag:`div`,class:`file-list`},{default:(0,r.withCtx)(()=>[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(e.fileList,n=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:n.uid,class:(0,r.normalizeClass)([`file-list__item`,`file-list__item--${n.status}`])},[(0,r.createCommentVNode)(` 缩略图 / 图标 `),(0,r.createElementVNode)(`div`,P,[e.showThumbnail&&n.thumbUrl?((0,r.openBlock)(),(0,r.createElementBlock)(`img`,{key:0,src:n.thumbUrl,alt:n.name,class:`file-list__thumb-img`},null,8,F)):((0,r.openBlock)(),(0,r.createBlock)(t.t,{key:1,name:(0,r.unref)(u)(n.type),class:`file-list__thumb-icon`},null,8,[`name`]))]),(0,r.createCommentVNode)(` 文件信息 `),(0,r.createElementVNode)(`div`,I,[(0,r.createElementVNode)(`div`,L,[(0,r.createVNode)((0,r.unref)(i.NEllipsis),{"line-clamp":1},{default:(0,r.withCtx)(()=>[(0,r.createTextVNode)((0,r.toDisplayString)(n.name),1)]),_:2},1024)]),(0,r.createElementVNode)(`div`,R,[(0,r.createElementVNode)(`span`,z,(0,r.toDisplayString)((0,r.unref)(d)(n.size)),1),(0,r.createVNode)((0,r.unref)(i.NTag),{type:(0,r.unref)(c)[n.status]||`default`,size:`tiny`,bordered:!1},{default:(0,r.withCtx)(()=>[(0,r.createTextVNode)((0,r.toDisplayString)((0,r.unref)(s)[n.status]||n.status),1)]),_:2},1032,[`type`]),n.status===`instant`?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,B,` ⚡ `)):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createCommentVNode)(` 进度条 `),n.status===`uploading`||n.status===`hashing`?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NProgress),{key:0,percentage:n.percent,height:4,"border-radius":2,"show-indicator":!1,status:n.status===`hashing`?`info`:`success`},null,8,[`percentage`,`status`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 分片进度描述 `),n.chunkProgress&&n.status===`uploading`?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,V,` 分片 `+(0,r.toDisplayString)(n.chunkProgress.uploadedChunks)+`/`+(0,r.toDisplayString)(n.chunkProgress.totalChunks),1)):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 错误信息 `),n.status===`error`&&n.error?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,H,(0,r.toDisplayString)(n.error),1)):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createCommentVNode)(` 操作按钮 `),(0,r.createElementVNode)(`div`,U,[n.status===`error`?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,text:``,type:`warning`,size:`tiny`,"aria-label":`重试上传`,onClick:e=>a(`retry`,n.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`})]),_:1},8,[`onClick`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{text:``,type:`error`,size:`tiny`,"aria-label":`移除文件`,onClick:e=>a(`remove`,n.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:close`})]),_:1},8,[`onClick`])])],2))),128))]),_:1}))}});var G=n.t(W,[[`__scopeId`,`data-v-04f26012`]]);const K={key:0,class:`image-preview`},q=[`src`,`alt`],J={class:`image-preview__overlay`},Y={key:0,class:`image-preview__progress`},X={class:`image-preview__actions`},Z={class:`image-preview__name`},Q=(0,r.defineComponent)({__name:`ImagePreview`,props:{fileList:{}},emits:[`remove`,`retry`],setup(e,{emit:n}){let a=e,o=n,s=(0,r.computed)(()=>a.fileList.filter(e=>e.type?.startsWith(`image/`)));return(e,n)=>s.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,K,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.uid,class:(0,r.normalizeClass)([`image-preview__item`,`image-preview__item--${e.status}`])},[e.thumbUrl?((0,r.openBlock)(),(0,r.createElementBlock)(`img`,{key:0,src:e.thumbUrl,alt:e.name,class:`image-preview__img`},null,8,q)):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 遮罩层 `),(0,r.createElementVNode)(`div`,J,[(0,r.createCommentVNode)(` 上传中进度 `),e.status===`uploading`||e.status===`hashing`?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,Y,[(0,r.createVNode)((0,r.unref)(i.NProgress),{type:`circle`,percentage:e.percent,"stroke-width":3,style:{width:`40px`}},null,8,[`percentage`])])):e.status===`success`||e.status===`instant`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[(0,r.createCommentVNode)(` 状态图标 `),(0,r.createVNode)(t.t,{name:`mdi:check-circle`,class:`image-preview__status-icon image-preview__status-icon--success`})],2112)):e.status===`error`?((0,r.openBlock)(),(0,r.createBlock)(t.t,{key:2,name:`mdi:alert-circle`,class:`image-preview__status-icon image-preview__status-icon--error`})):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 操作 `),(0,r.createElementVNode)(`div`,X,[e.status===`error`?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,circle:``,size:`tiny`,type:`warning`,"aria-label":`重试上传`,onClick:t=>o(`retry`,e.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`})]),_:1},8,[`onClick`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{circle:``,size:`tiny`,type:`error`,"aria-label":`移除文件`,onClick:t=>o(`remove`,e.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:close`})]),_:1},8,[`onClick`])])]),(0,r.createCommentVNode)(` 文件名 `),(0,r.createElementVNode)(`div`,Z,[(0,r.createVNode)((0,r.unref)(i.NEllipsis),{"line-clamp":1},{default:(0,r.withCtx)(()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.name),1)]),_:2},1024)])],2))),128))])):(0,r.createCommentVNode)(`v-if`,!0)}});var $=n.t(Q,[[`__scopeId`,`data-v-32d39ae9`]]);const ee={class:`c-upload`},te={key:0,class:`c-upload__total-progress`},ne={class:`c-upload__total-label`},re=(0,r.defineComponent)({__name:`index`,props:{action:{default:``},headers:{default:()=>({})},data:{default:()=>({})},multiple:{type:Boolean,default:!1},directory:{type:Boolean,default:!1},accept:{default:``},maxSize:{default:0},maxCount:{default:0},disabled:{type:Boolean,default:!1},draggable:{type:Boolean,default:!0},pasteable:{type:Boolean,default:!1},chunked:{type:Boolean,default:!1},chunkSize:{default:o},concurrency:{default:3},showFileList:{type:Boolean,default:!0},listType:{default:`text`},showThumbnail:{type:Boolean,default:!0},customRequest:{},instantCheck:{},uploadedChunksQuery:{},mergeChunks:{},beforeUpload:{},tip:{default:``},defaultFileList:{default:()=>[]}},emits:[`change`,`success`,`error`,`progress`,`remove`,`finish`,`exceed`],setup(e,{expose:t,emit:n}){let a=e,o=n,s=(0,r.ref)(),{fileList:c,totalPercent:l,addFiles:u,removeFile:d,clearAll:f,startUpload:p,pauseAll:m,resumeAll:h,retryFile:g,processFile:_,getSuccessList:v}=b(a),y=(0,r.computed)(()=>c.value.some(e=>e.status===`uploading`||e.status===`hashing`||e.status===`validating`)),x=e=>({...e}),S=()=>c.value.map(x);function C(e){let t=Math.max(0,Math.trunc(Number(a.maxCount)||0));if(t>0&&c.value.length+e.length>t){o(`exceed`,e,S());let n=t-c.value.length;if(n<=0)return;e=e.slice(0,n)}let n=u(e);o(`change`,S()),n.forEach(e=>void _(e))}function w(e){let t=c.value.find(t=>t.uid===e);t&&(o(`remove`,x(t)),d(e),o(`change`,S()))}function T(e){g(e)}let E=new Map,D=!1;return(0,r.watch)(c,e=>{let t=new Set(e.map(e=>e.uid));E.forEach((e,n)=>{t.has(n)||E.delete(n)}),e.forEach(e=>{let t=E.get(e.uid);t&&t.percent!==e.percent&&o(`progress`,x(e),e.percent),t&&t.status!==e.status&&(e.status===`success`||e.status===`instant`)&&o(`success`,x(e),e.response),t&&t.status!==`error`&&e.status===`error`&&o(`error`,x(e),Error(e.error||`上传失败`)),E.set(e.uid,{status:e.status,percent:e.percent})}),e.length>0&&e.every(e=>e.status===`success`||e.status===`instant`||e.status===`error`)?(D||o(`finish`,S()),D=!0):D=!1,o(`change`,S())},{deep:!0}),t({selectFiles:()=>s.value?.triggerSelect(),startUpload:p,pauseAll:m,resumeAll:h,clearAll:()=>{f(),o(`change`,S())},removeFile:e=>{w(e)},retryFile:g,getFileList:S,getSuccessList:()=>v().map(x),get totalPercent(){return l.value}}),(e,t)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,ee,[(0,r.createCommentVNode)(` 上传区域 `),(0,r.createVNode)(N,{ref_key:`uploadAreaRef`,ref:s,accept:a.accept,multiple:a.multiple,directory:a.directory,disabled:a.disabled,draggable:a.draggable,pasteable:a.pasteable,tip:a.tip,onFiles:C},{default:(0,r.withCtx)(()=>[(0,r.renderSlot)(e.$slots,`area`,{},void 0,!0)]),_:3},8,[`accept`,`multiple`,`directory`,`disabled`,`draggable`,`pasteable`,`tip`]),(0,r.createCommentVNode)(` 总进度条 `),y.value?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,te,[(0,r.createElementVNode)(`div`,ne,[t[0]||=(0,r.createElementVNode)(`span`,null,`总进度`,-1),(0,r.createElementVNode)(`span`,null,(0,r.toDisplayString)((0,r.unref)(l))+`%`,1)]),(0,r.createVNode)((0,r.unref)(i.NProgress),{percentage:(0,r.unref)(l),height:6,"border-radius":3,"show-indicator":!1,status:`success`},null,8,[`percentage`])])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 图片预览模式 `),a.listType===`image`?((0,r.openBlock)(),(0,r.createBlock)($,{key:1,"file-list":(0,r.unref)(c),onRemove:w,onRetry:T},null,8,[`file-list`])):a.showFileList&&(0,r.unref)(c).length>0?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[(0,r.createCommentVNode)(` 文件列表模式 `),(0,r.createVNode)(G,{"file-list":(0,r.unref)(c),"show-thumbnail":a.showThumbnail,onRemove:w,onRetry:T},null,8,[`file-list`,`show-thumbnail`])],2112)):(0,r.createCommentVNode)(`v-if`,!0)]))}});var ie=n.t(re,[[`__scopeId`,`data-v-58ca8e42`]]);Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return ie}});
|
|
1
|
+
const e=require(`./chunk.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`),a=require(`spark-md5`);a=e.n(a);const o=2*1024*1024,s={pending:`等待上传`,validating:`校验文件…`,hashing:`计算校验…`,uploading:`上传中…`,success:`上传成功`,error:`上传失败`,paused:`已暂停`,instant:`秒传成功`},c={pending:`default`,validating:`info`,hashing:`info`,uploading:`info`,success:`success`,error:`error`,paused:`warning`,instant:`success`},l={"image/":`mdi:file-image-outline`,"video/":`mdi:file-video-outline`,"audio/":`mdi:file-music-outline`,"application/pdf":`mdi:file-pdf-box`,"application/zip":`mdi:folder-zip-outline`,"application/x-rar":`mdi:folder-zip-outline`,"application/vnd.ms-excel":`mdi:file-excel-outline`,"application/vnd.openxmlformats-officedocument.spreadsheetml":`mdi:file-excel-outline`,"application/msword":`mdi:file-word-outline`,"application/vnd.openxmlformats-officedocument.wordprocessingml":`mdi:file-word-outline`,"text/":`mdi:file-document-outline`,default:`mdi:file-outline`};function u(e){for(let[t,n]of Object.entries(l))if(t!==`default`&&e.startsWith(t))return n;return l.default}function d(e){if(e===0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`,`TB`],n=Math.floor(Math.log(e)/Math.log(1024));return`${(e/1024**n).toFixed(n>0?1:0)} ${t[n]}`}function f(e){let t=[],n=new Set,i=0,a=!1,o=()=>{if(!a){a=!0;try{let n=Math.max(1,Math.trunc(e.value)||1);for(;i<n&&t.length;)t.shift()()}finally{a=!1}}};return(0,r.watch)(e,o),Object.assign((e,r)=>{let a=!1,s=!1,c,l=(e=!0)=>a?!1:(a=!0,n.delete(d),s&&--i,e&&o(),!0),u=()=>{if(!a){s=!0,i+=1;try{c=e({...r,onProgress:e=>{a||r.onProgress?.(e)},onSuccess:e=>{l()&&r.onSuccess?.(e)},onError:e=>{l()&&r.onError?.(e)}})}catch(e){l()&&r.onError?.(e instanceof Error?e:Error(String(e)))}}},d=()=>{let e=t.indexOf(u);if(e>=0&&t.splice(e,1),l(!1))try{c?.abort()}catch{}finally{o()}};return n.add(d),t.push(u),o(),{abort:d}},{abortAll(){let e=a;a=!0,t.length=0;try{for(let e of n)e()}finally{a=e}}})}const p=e=>new Promise((t,n)=>{let r,i,a=()=>{e?.removeEventListener(`abort`,o),r!==void 0&&cancelAnimationFrame(r),i!==void 0&&clearTimeout(i)},o=()=>{a(),n(e?.reason??new DOMException(`Hash cancelled`,`AbortError`))},s=()=>{a(),t()};if(e?.addEventListener(`abort`,o,{once:!0}),e?.aborted){o();return}typeof requestAnimationFrame==`function`?r=requestAnimationFrame(s):i=setTimeout(s,0)});function m(e){let t=(0,r.ref)(0),n=(0,r.ref)(0),i=(0,r.computed)(()=>t.value>0),o=Promise.resolve();async function s(e,t,n){let r=o,i;o=new Promise(e=>{i=e}),await r;try{return await c(e,t,n)}finally{i()}}async function c(r,i,o){o?.throwIfAborted(),t.value+=1,n.value=0,i?.(0);let s=new a.default.ArrayBuffer,c=Math.max(1,Math.trunc(Number(e.value)||1)),l=Math.max(1,Math.ceil(r.size/c));try{for(let e=0;e<l;e+=1){o?.throwIfAborted();let t=e*c,a=await r.slice(t,t+c).arrayBuffer();o?.throwIfAborted(),s.append(a),n.value=Math.round((e+1)/l*100),i?.(n.value),await p(o)}return o?.throwIfAborted(),s.end()}finally{t.value=Math.max(0,t.value-1)}}return{hashing:i,hashProgress:(0,r.readonly)(n),calculateHash:s}}function h(e){let t=new Map,n=new Map;function r(t){let n=Math.max(1,Math.trunc(Number(e.chunkSize.value)||1)),r=[],i=0,a=0;for(;a<t.size;){let e=Math.min(a+n,t.size);r.push({index:i,blob:t.slice(a,e),size:e-a,uploaded:!1}),a=e,i++}return r}async function i(t,n){if(e.uploadedChunksQuery?.value)try{let r=await e.uploadedChunksQuery.value(t);for(let e of r){let t=n[e];t&&(t.uploaded=!0)}}catch{}}function a(t){return new Promise((n,r)=>{let i=!1,a=()=>{i||(i=!0,n())},o=e=>{i||(i=!0,t.setError(),r(e instanceof Error?e:Error(String(e))))},s={action:e.action.value,headers:e.headers.value,data:{...e.data.value,hash:t.hash,chunkIndex:t.chunk.index,totalChunks:t.totalChunks,filename:t.file.name},file:t.chunk.blob,filename:t.file.name,hash:t.hash,chunkIndex:t.chunk.index,totalChunks:t.totalChunks,onProgress:()=>{},onSuccess:()=>{if(!i){if(t.isCancelled()){a();return}t.chunk.uploaded=!0,t.setUploadedBytes(t.chunk.size),t.onProgress({uploadedChunks:t.chunks.filter(e=>e.uploaded).length,totalChunks:t.totalChunks,uploadedBytes:t.chunks.filter(e=>e.uploaded).reduce((e,t)=>e+t.size,0),totalBytes:t.totalBytes}),a()}},onError:o};try{let n=e.customRequest?.value??g,r=e.scheduler?e.scheduler(n,s):n(s);t.abortControllers.push(()=>{try{r.abort()}catch{}finally{a()}})}catch(e){o(e)}})}async function o(o){let{uid:c,file:l,hash:u,onProgress:d,onSuccess:f,onError:p,isPaused:m}=o,h=Symbol(c);n.set(c,h);let g=()=>n.get(c)!==h,_=()=>{g()||n.delete(c)},v=r(l),y=v.length,b=l.size,x=0;if(await i(u,v),g()||m()){_();return}x=v.filter(e=>e.uploaded).reduce((e,t)=>e+t.size,0),d({uploadedChunks:v.filter(e=>e.uploaded).length,totalChunks:y,uploadedBytes:x,totalBytes:b});let S=v.filter(e=>!e.uploaded);if(S.length===0){try{g()||await s(u,l.name,y,f,p,g)}finally{_()}return}let C=[];t.set(c,C);let w=Math.max(1,Math.trunc(Number(e.concurrency.value)||1)),T=0,E=!1;async function D(){for(;T<S.length&&!E&&!m()&&!g();){let e=S[T++];await a({chunk:e,hash:u,file:l,totalChunks:y,chunks:v,totalBytes:b,abortControllers:C,onProgress:e=>{g()||d(e)},setUploadedBytes:e=>{x+=e},setError:()=>{E=!0},isCancelled:g})}}let O=Array.from({length:Math.min(w,S.length)},()=>D());try{let e=(await Promise.allSettled(O)).find(e=>e.status===`rejected`);e&&!g()?p(e.reason instanceof Error?e.reason:Error(String(e.reason))):!E&&!m()&&!g()&&await s(u,l.name,y,f,p,g)}finally{g()||t.delete(c),_()}}async function s(t,n,r,i,a,o){if(e.mergeChunks?.value)try{let a=await e.mergeChunks.value(t,n,r);o()||i(a)}catch(e){o()||a(e instanceof Error?e:Error(`分片合并失败`))}else o()||i({message:`分片上传完成(未配置合并函数)`})}function c(e){n.delete(e),t.get(e)?.forEach(e=>e()),t.delete(e)}function l(){n.clear(),t.forEach(e=>{e.forEach(e=>e())}),t.clear()}return{createChunks:r,uploadChunks:o,abortUpload:c,abortAll:l}}function g(e){let t=new XMLHttpRequest;t.open(`POST`,e.action),e.headers&&Object.entries(e.headers).forEach(([e,n])=>{t.setRequestHeader(e,n)}),t.upload.addEventListener(`progress`,t=>{t.lengthComputable&&e.onProgress?.(Math.round(t.loaded/t.total*100))}),t.addEventListener(`load`,()=>{if(t.status>=200&&t.status<300){let n;try{n=JSON.parse(t.responseText)}catch{n=t.responseText}e.onSuccess?.(n)}else e.onError?.(Error(`上传失败: HTTP ${t.status}`))}),t.addEventListener(`error`,()=>{e.onError?.(Error(`网络错误`))}),t.addEventListener(`abort`,()=>{e.onError?.(new DOMException(`上传已取消`,`AbortError`))});let n=new FormData;return n.append(`file`,e.file,e.filename),e.data&&Object.entries(e.data).forEach(([e,t])=>{n.append(e,String(t))}),t.send(n),{abort:()=>t.abort()}}function _(e){return e instanceof Error?e:Error(String(e))}function v(e){let t=[],n=(0,r.ref)(0),i=new Map,a=()=>{n.value=i.size},o=()=>Math.max(1,Math.trunc(Number(e.concurrency.value)||1));function s(){for(;i.size<o()&&t.length>0;){let n=t.shift(),{file:r}=n;if(!r.raw||i.has(r.uid))continue;let o=!1,c=e=>{o||(o=!0,i.delete(r.uid),a(),e?.error?n.onError(r.uid,e.error):e&&`response`in e&&n.onSuccess(r.uid,e.response),s())},l={action:e.action.value,headers:e.headers.value,data:e.data.value,file:r.raw,filename:r.name,onProgress:e=>n.onProgress(r.uid,e),onSuccess:e=>c({response:e}),onError:e=>c({error:e})};i.set(r.uid,{abort:()=>void 0,settle:c}),a();try{let t=e.customRequest?.value??y,n=e.scheduler?e.scheduler(t,l):t(l),a=i.get(r.uid);a&&(a.abort=n.abort)}catch(e){c({error:_(e)})}}}function c(e,n,r,i){l(e.uid),t.push({file:e,onProgress:n,onSuccess:r,onError:i}),s()}function l(e){for(let n=t.length-1;n>=0;--n)t[n].file.uid===e&&t.splice(n,1);let n=i.get(e);if(n){n.settle();try{n.abort()}catch{}}}function u(){t.length=0;let e=[...i.values()];i.clear(),a(),e.forEach(e=>{e.settle();try{e.abort()}catch{}})}return(0,r.watch)(e.concurrency,s),{activeCount:(0,r.readonly)(n),enqueue:c,abort:l,abortAll:u}}function y(e){let t=new XMLHttpRequest;t.open(`POST`,e.action),Object.entries(e.headers??{}).forEach(([e,n])=>{t.setRequestHeader(e,n)}),t.upload.addEventListener(`progress`,t=>{t.lengthComputable&&e.onProgress?.(Math.round(t.loaded/t.total*100))}),t.addEventListener(`load`,()=>{if(t.status>=200&&t.status<300){let n=t.responseText;try{n=JSON.parse(t.responseText)}catch{}e.onSuccess?.(n)}else e.onError?.(Error(`上传失败: HTTP ${t.status}`))}),t.addEventListener(`error`,()=>e.onError?.(Error(`网络错误`)));let n=new FormData;return n.append(`file`,e.file,e.filename),Object.entries(e.data??{}).forEach(([e,t])=>{n.append(e,String(t))}),t.send(n),{abort:()=>t.abort()}}function b(e){let t=(0,r.computed)(()=>e.action??``),n=(0,r.computed)(()=>e.headers??{}),i=(0,r.computed)(()=>e.data??{}),a=(0,r.computed)(()=>{let t=Math.trunc(Number(e.chunkSize));return Number.isFinite(t)&&t>0?t:o}),s=(0,r.computed)(()=>{let t=Math.trunc(Number(e.concurrency));return Number.isFinite(t)&&t>0?t:3}),c=(0,r.computed)(()=>e.customRequest),l=(0,r.computed)(()=>e.instantCheck),u=(0,r.computed)(()=>e.uploadedChunksQuery),d=(0,r.computed)(()=>e.mergeChunks),p=(0,r.ref)((e.defaultFileList??[]).map(e=>({...e}))),g=(0,r.reactive)(new Set),_=new Map,y=new Set,{hashing:b,hashProgress:x,calculateHash:S}=m(a),C=f(s),w=new Map,T=e=>{w.get(e)?.abort(),w.delete(e)},E=()=>{w.forEach(e=>e.abort()),w.clear()},D=h({scheduler:C,chunkSize:a,concurrency:s,action:t,headers:n,data:i,customRequest:c,uploadedChunksQuery:u,mergeChunks:d}),O=v({scheduler:C,concurrency:s,action:t,headers:n,data:i,customRequest:c}),k=(0,r.computed)(()=>{let e=p.value;if(e.length===0)return 0;let t=e.reduce((e,t)=>e+t.percent,0);return Math.round(t/e.length)});function A(){return typeof crypto<`u`&&`randomUUID`in crypto?`upload-${crypto.randomUUID()}`:`upload-${Date.now()}-${Math.random().toString(36).slice(2,10)}`}function j(e){if(e.type.startsWith(`image/`)){let t=URL.createObjectURL(e);return y.add(t),t}}function M(t){let n=[];for(let r of t){if(Number.isFinite(e.maxCount)&&(e.maxCount??0)>0&&p.value.length+n.length>=Math.trunc(e.maxCount))break;let t={uid:A(),name:r.name,size:r.size,type:r.type,status:`pending`,percent:0,raw:r,thumbUrl:j(r)};n.push(t)}return p.value.push(...n),n}function N(e,t){let n=p.value.find(t=>t.uid===e);n&&Object.assign(n,t)}function P(e){T(e),_.set(e,Symbol(e)),D.abortUpload(e),O.abort(e),g.delete(e);let t=p.value.findIndex(t=>t.uid===e);if(t!==-1){let e=p.value[t];L(e.thumbUrl),p.value.splice(t,1)}}function F(){C.abortAll(),E(),D.abortAll(),O.abortAll(),g.clear(),p.value.forEach(e=>{L(e.thumbUrl)}),p.value=[],_.clear()}async function I(t){if((e.maxSize??0)>0&&t.size>e.maxSize)return null;if(e.beforeUpload){let n=await e.beforeUpload(t);if(n===!1)return null;if(n instanceof File)return(e.maxSize??0)>0&&n.size>e.maxSize?null:n}return t}function L(e){!e||!y.has(e)||(URL.revokeObjectURL(e),y.delete(e))}function R(e,t){return _.get(e)===t&&!g.has(e)&&p.value.some(t=>t.uid===e)}async function z(e,t){T(e.uid);let n=new AbortController;w.set(e.uid,n);try{return await S(e.raw,n=>{R(e.uid,t)&&N(e.uid,{percent:n})},n.signal)}finally{w.get(e.uid)===n&&w.delete(e.uid)}}async function B(n){if(!n.raw)return;let r=Symbol(n.uid);_.set(n.uid,r),N(n.uid,{status:`validating`,error:void 0});let i;try{i=await I(n.raw)}catch(e){R(n.uid,r)&&N(n.uid,{status:`error`,error:e instanceof Error?e.message:`文件校验失败`});return}if(R(n.uid,r)){if(!i){N(n.uid,{status:`error`,error:`文件校验未通过`});return}if(i!==n.raw&&(L(n.thumbUrl),Object.assign(n,{raw:i,name:i.name,size:i.size,type:i.type,hash:void 0,chunkProgress:void 0,thumbUrl:j(i)})),!c.value&&!t.value.trim()){N(n.uid,{status:`error`,error:`未配置上传地址`});return}if(l.value&&!n.hash){N(n.uid,{status:`hashing`});try{let e=await z(n,r);if(!R(n.uid,r))return;N(n.uid,{hash:e});let t=await l.value(e,n.raw.name);if(!R(n.uid,r))return;if(t.exists){N(n.uid,{status:`instant`,percent:100,url:t.url});return}}catch{if(!R(n.uid,r))return}}e.chunked&&n.raw.size>a.value?await V(n,r):H(n,r)}}async function V(e,t){let n=e.raw,{hash:r}=e;if(!r){N(e.uid,{status:`hashing`});try{if(r=await z(e,t),!R(e.uid,t))return;N(e.uid,{hash:r})}catch{R(e.uid,t)&&N(e.uid,{status:`error`,error:`Hash 计算失败`});return}}N(e.uid,{status:`uploading`,percent:0}),await D.uploadChunks({uid:e.uid,file:n,hash:r,onProgress:n=>{if(!R(e.uid,t))return;let r=Math.round(n.uploadedBytes/n.totalBytes*100);N(e.uid,{percent:r,chunkProgress:n})},onSuccess:n=>{R(e.uid,t)&&N(e.uid,{status:`success`,percent:100,response:n})},onError:n=>{R(e.uid,t)&&N(e.uid,{status:`error`,error:n.message})},isPaused:()=>g.has(e.uid)})}function H(e,t){N(e.uid,{status:`uploading`,percent:0}),O.enqueue(e,(e,n)=>{R(e,t)&&N(e,{percent:n})},(e,n)=>{R(e,t)&&N(e,{status:`success`,percent:100,response:n})},(e,n)=>{R(e,t)&&N(e,{status:`error`,error:n.message})})}function U(){p.value.filter(e=>e.status===`pending`).forEach(e=>void B(e))}function W(){C.abortAll(),p.value.forEach(e=>{(e.status===`uploading`||e.status===`hashing`||e.status===`validating`)&&(T(e.uid),g.add(e.uid),_.set(e.uid,Symbol(e.uid)),D.abortUpload(e.uid),O.abort(e.uid),N(e.uid,{status:`paused`}))})}function G(){p.value.forEach(e=>{e.status===`paused`&&(g.delete(e.uid),N(e.uid,{status:`pending`}))}),U()}function K(e){let t=p.value.find(t=>t.uid===e);t&&t.status===`error`&&(N(e,{status:`pending`,percent:0,error:void 0}),B(t))}function q(){return p.value.filter(e=>e.status===`success`||e.status===`instant`)}return(0,r.onBeforeUnmount)(()=>{C.abortAll(),E(),D.abortAll(),O.abortAll(),_.clear(),p.value.forEach(e=>{L(e.thumbUrl)})}),{fileList:p,totalPercent:k,hashing:b,hashProgress:x,addFiles:M,removeFile:P,clearAll:F,startUpload:U,pauseAll:W,resumeAll:G,retryFile:K,processFile:B,getSuccessList:q}}function x(e,t,n,i,a){let o=(0,r.ref)(!1),s=null,c=!1;function l(e){t.value&&(e.preventDefault(),o.value=!0)}function u(e){t.value&&(e.preventDefault(),o.value=!0)}function d(n){if(!t.value)return;n.preventDefault();let r=e.value;r&&!r.contains(n.relatedTarget)&&(o.value=!1)}async function f(e){if(!t.value)return;e.preventDefault(),o.value=!1;let n=e.dataTransfer?.items;if(!n)return;let r=await S(n,e.dataTransfer);if(c||!t.value)return;let s=w(r,i.value);s.length>0&&a(s)}function p(e){if(!n.value)return;let t=e.clipboardData?.items;if(!t)return;let r=[];for(let e=0;e<t.length;e++){let n=t[e];if(n.kind===`file`){let e=n.getAsFile();e&&r.push(e)}}let o=w(r,i.value);o.length>0&&(e.preventDefault(),a(o))}function m(){let t=e.value;!t||s===t||(s=t,t.addEventListener(`dragenter`,l),t.addEventListener(`dragover`,u),t.addEventListener(`dragleave`,d),t.addEventListener(`drop`,f),n.value&&t.addEventListener(`paste`,p))}function h(){let e=s;e&&(e.removeEventListener(`dragenter`,l),e.removeEventListener(`dragover`,u),e.removeEventListener(`dragleave`,d),e.removeEventListener(`drop`,f)),e?.removeEventListener(`paste`,p),s=null}return(0,r.onMounted)(()=>{c=!1,m()}),(0,r.onBeforeUnmount)(()=>{c=!0,h()}),(0,r.watch)([e,t,n],()=>{h(),m()}),{isDragOver:(0,r.readonly)(o)}}async function S(e,t){let n=[];for(let t=0;t<e.length;t++){let r=e[t].webkitGetAsEntry?.();r&&n.push(r)}if(n.length>0)return(await Promise.all(n.map(C))).flat();let r=[],i=t?.files;if(i)for(let e=0;e<i.length;e++)r.push(i[e]);return r}async function C(e){if(e.isFile)return new Promise(t=>{e.file(e=>t([e]),()=>t([]))});if(e.isDirectory){let t=e.createReader(),n=[];for(;;){let e=await new Promise(e=>{t.readEntries(t=>e(t),()=>e([]))});if(e.length===0)break;n.push(...e)}return(await Promise.all(n.map(C))).flat()}return[]}function w(e,t){if(!t)return e;let n=t.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean);return n.length===0?e:e.filter(e=>n.some(t=>{if(t.startsWith(`.`))return e.name.toLowerCase().endsWith(t);if(t.endsWith(`/*`)){let n=t.replace(`/*`,``);return e.type.toLowerCase().startsWith(`${n}/`)}return e.type.toLowerCase()===t}))}const T=[`tabindex`,`aria-disabled`,`onKeydown`],E=[`accept`,`multiple`,`webkitdirectory`,`disabled`],D={class:`upload-area__default`},O={class:`upload-area__text`},k={key:0},A={key:1},j={key:0,class:`upload-area__tip`},M=(0,r.defineComponent)({__name:`UploadArea`,props:{accept:{default:``},multiple:{type:Boolean,default:!1},directory:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},draggable:{type:Boolean,default:!0},pasteable:{type:Boolean,default:!1},tip:{default:``}},emits:[`files`],setup(e,{expose:n,emit:i}){let a=e,o=i,s=(0,r.ref)(),c=(0,r.ref)(),{isDragOver:l}=x(s,(0,r.computed)(()=>a.draggable&&!a.disabled),(0,r.computed)(()=>a.pasteable&&!a.disabled),(0,r.computed)(()=>a.accept),e=>o(`files`,e));function u(){a.disabled||c.value?.click()}function d(e){let t=e.target,n=a.disabled?[]:w(Array.from(t.files??[]),a.accept);n.length>0&&o(`files`,n),t.value=``}return n({triggerSelect:u}),(n,i)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{ref_key:`areaRef`,ref:s,class:(0,r.normalizeClass)([`upload-area`,{"upload-area--drag-over":(0,r.unref)(l),"upload-area--disabled":e.disabled}]),role:`button`,tabindex:e.disabled?-1:0,"aria-disabled":e.disabled,onClick:u,onKeydown:[(0,r.withKeys)((0,r.withModifiers)(u,[`prevent`]),[`enter`]),(0,r.withKeys)((0,r.withModifiers)(u,[`prevent`]),[`space`])]},[(0,r.createElementVNode)(`input`,{ref_key:`inputRef`,ref:c,type:`file`,class:`upload-area__input`,accept:e.accept,multiple:e.multiple,webkitdirectory:e.directory||void 0,disabled:e.disabled,onClick:i[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onChange:d},null,40,E),(0,r.renderSlot)(n.$slots,`default`,{},()=>[(0,r.createElementVNode)(`div`,D,[(0,r.createVNode)(t.t,{name:(0,r.unref)(l)?`mdi:cloud-download-outline`:`mdi:cloud-upload-outline`,class:`upload-area__icon`},null,8,[`name`]),(0,r.createElementVNode)(`div`,O,[(0,r.unref)(l)?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,k,`释放文件到此处`)):((0,r.openBlock)(),(0,r.createElementBlock)(`span`,A,[i[4]||=(0,r.createTextVNode)(` 点击或拖拽文件到此区域上传 `,-1),e.pasteable?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[i[1]||=(0,r.createTextVNode)(` ,支持 `,-1),i[2]||=(0,r.createElementVNode)(`kbd`,null,`Ctrl+V`,-1),i[3]||=(0,r.createTextVNode)(` 粘贴 `,-1)],64)):(0,r.createCommentVNode)(`v-if`,!0)]))]),e.tip?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,j,(0,r.toDisplayString)(e.tip),1)):(0,r.createCommentVNode)(`v-if`,!0)])],!0)],42,T))}});var N=n.t(M,[[`__scopeId`,`data-v-705892ab`]]);const P={class:`file-list__thumb`},F=[`src`,`alt`],I={class:`file-list__info`},L={class:`file-list__name`},R={class:`file-list__meta`},z={class:`file-list__size`},B={key:0,class:`file-list__instant`},V={key:1,class:`file-list__chunk-info`},H={key:2,class:`file-list__error`},U={class:`file-list__actions`},W=(0,r.defineComponent)({__name:`FileList`,props:{fileList:{},showThumbnail:{type:Boolean}},emits:[`remove`,`retry`],setup(e,{emit:n}){let a=n;return(n,o)=>((0,r.openBlock)(),(0,r.createBlock)(r.TransitionGroup,{name:`file-list`,tag:`div`,class:`file-list`},{default:(0,r.withCtx)(()=>[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(e.fileList,n=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:n.uid,class:(0,r.normalizeClass)([`file-list__item`,`file-list__item--${n.status}`])},[(0,r.createCommentVNode)(` 缩略图 / 图标 `),(0,r.createElementVNode)(`div`,P,[e.showThumbnail&&n.thumbUrl?((0,r.openBlock)(),(0,r.createElementBlock)(`img`,{key:0,src:n.thumbUrl,alt:n.name,class:`file-list__thumb-img`},null,8,F)):((0,r.openBlock)(),(0,r.createBlock)(t.t,{key:1,name:(0,r.unref)(u)(n.type),class:`file-list__thumb-icon`},null,8,[`name`]))]),(0,r.createCommentVNode)(` 文件信息 `),(0,r.createElementVNode)(`div`,I,[(0,r.createElementVNode)(`div`,L,[(0,r.createVNode)((0,r.unref)(i.NEllipsis),{"line-clamp":1},{default:(0,r.withCtx)(()=>[(0,r.createTextVNode)((0,r.toDisplayString)(n.name),1)]),_:2},1024)]),(0,r.createElementVNode)(`div`,R,[(0,r.createElementVNode)(`span`,z,(0,r.toDisplayString)((0,r.unref)(d)(n.size)),1),(0,r.createVNode)((0,r.unref)(i.NTag),{type:(0,r.unref)(c)[n.status]||`default`,size:`tiny`,bordered:!1},{default:(0,r.withCtx)(()=>[(0,r.createTextVNode)((0,r.toDisplayString)((0,r.unref)(s)[n.status]||n.status),1)]),_:2},1032,[`type`]),n.status===`instant`?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,B,` ⚡ `)):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createCommentVNode)(` 进度条 `),n.status===`uploading`||n.status===`hashing`?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NProgress),{key:0,percentage:n.percent,height:4,"border-radius":2,"show-indicator":!1,status:n.status===`hashing`?`info`:`success`},null,8,[`percentage`,`status`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 分片进度描述 `),n.chunkProgress&&n.status===`uploading`?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,V,` 分片 `+(0,r.toDisplayString)(n.chunkProgress.uploadedChunks)+`/`+(0,r.toDisplayString)(n.chunkProgress.totalChunks),1)):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 错误信息 `),n.status===`error`&&n.error?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,H,(0,r.toDisplayString)(n.error),1)):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createCommentVNode)(` 操作按钮 `),(0,r.createElementVNode)(`div`,U,[n.status===`error`?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,text:``,type:`warning`,size:`tiny`,"aria-label":`重试上传`,onClick:e=>a(`retry`,n.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`})]),_:1},8,[`onClick`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{text:``,type:`error`,size:`tiny`,"aria-label":`移除文件`,onClick:e=>a(`remove`,n.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:close`})]),_:1},8,[`onClick`])])],2))),128))]),_:1}))}});var G=n.t(W,[[`__scopeId`,`data-v-04f26012`]]);const K={key:0,class:`image-preview`},q=[`src`,`alt`],J={class:`image-preview__overlay`},Y={key:0,class:`image-preview__progress`},X={class:`image-preview__actions`},Z={class:`image-preview__name`},Q=(0,r.defineComponent)({__name:`ImagePreview`,props:{fileList:{}},emits:[`remove`,`retry`],setup(e,{emit:n}){let a=e,o=n,s=(0,r.computed)(()=>a.fileList.filter(e=>e.type?.startsWith(`image/`)));return(e,n)=>s.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,K,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.uid,class:(0,r.normalizeClass)([`image-preview__item`,`image-preview__item--${e.status}`])},[e.thumbUrl?((0,r.openBlock)(),(0,r.createElementBlock)(`img`,{key:0,src:e.thumbUrl,alt:e.name,class:`image-preview__img`},null,8,q)):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 遮罩层 `),(0,r.createElementVNode)(`div`,J,[(0,r.createCommentVNode)(` 上传中进度 `),e.status===`uploading`||e.status===`hashing`?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,Y,[(0,r.createVNode)((0,r.unref)(i.NProgress),{type:`circle`,percentage:e.percent,"stroke-width":3,style:{width:`40px`}},null,8,[`percentage`])])):e.status===`success`||e.status===`instant`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[(0,r.createCommentVNode)(` 状态图标 `),(0,r.createVNode)(t.t,{name:`mdi:check-circle`,class:`image-preview__status-icon image-preview__status-icon--success`})],2112)):e.status===`error`?((0,r.openBlock)(),(0,r.createBlock)(t.t,{key:2,name:`mdi:alert-circle`,class:`image-preview__status-icon image-preview__status-icon--error`})):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 操作 `),(0,r.createElementVNode)(`div`,X,[e.status===`error`?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,circle:``,size:`tiny`,type:`warning`,"aria-label":`重试上传`,onClick:t=>o(`retry`,e.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`})]),_:1},8,[`onClick`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{circle:``,size:`tiny`,type:`error`,"aria-label":`移除文件`,onClick:t=>o(`remove`,e.uid)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:close`})]),_:1},8,[`onClick`])])]),(0,r.createCommentVNode)(` 文件名 `),(0,r.createElementVNode)(`div`,Z,[(0,r.createVNode)((0,r.unref)(i.NEllipsis),{"line-clamp":1},{default:(0,r.withCtx)(()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.name),1)]),_:2},1024)])],2))),128))])):(0,r.createCommentVNode)(`v-if`,!0)}});var $=n.t(Q,[[`__scopeId`,`data-v-32d39ae9`]]);const ee={class:`c-upload`},te={key:0,class:`c-upload__total-progress`},ne={class:`c-upload__total-label`},re=(0,r.defineComponent)({__name:`index`,props:{action:{default:``},headers:{default:()=>({})},data:{default:()=>({})},multiple:{type:Boolean,default:!1},directory:{type:Boolean,default:!1},accept:{default:``},maxSize:{default:0},maxCount:{default:0},disabled:{type:Boolean,default:!1},draggable:{type:Boolean,default:!0},pasteable:{type:Boolean,default:!1},chunked:{type:Boolean,default:!1},chunkSize:{default:o},concurrency:{default:3},showFileList:{type:Boolean,default:!0},listType:{default:`text`},showThumbnail:{type:Boolean,default:!0},customRequest:{},instantCheck:{},uploadedChunksQuery:{},mergeChunks:{},beforeUpload:{},tip:{default:``},defaultFileList:{default:()=>[]}},emits:[`change`,`success`,`error`,`progress`,`remove`,`finish`,`exceed`],setup(e,{expose:t,emit:n}){let a=e,o=n,s=(0,r.ref)(),{fileList:c,totalPercent:l,addFiles:u,removeFile:d,clearAll:f,startUpload:p,pauseAll:m,resumeAll:h,retryFile:g,processFile:_,getSuccessList:v}=b(a),y=(0,r.computed)(()=>c.value.some(e=>e.status===`uploading`||e.status===`hashing`||e.status===`validating`)),x=e=>({...e}),S=()=>c.value.map(x);function C(e){let t=Math.max(0,Math.trunc(Number(a.maxCount)||0));if(t>0&&c.value.length+e.length>t){o(`exceed`,e,S());let n=t-c.value.length;if(n<=0)return;e=e.slice(0,n)}let n=u(e);o(`change`,S()),n.forEach(e=>void _(e))}function w(e){let t=c.value.find(t=>t.uid===e);t&&(o(`remove`,x(t)),d(e),o(`change`,S()))}function T(e){g(e)}let E=new Map,D=!1;return(0,r.watch)(c,e=>{let t=new Set(e.map(e=>e.uid));E.forEach((e,n)=>{t.has(n)||E.delete(n)}),e.forEach(e=>{let t=E.get(e.uid);t&&t.percent!==e.percent&&o(`progress`,x(e),e.percent),t&&t.status!==e.status&&(e.status===`success`||e.status===`instant`)&&o(`success`,x(e),e.response),t&&t.status!==`error`&&e.status===`error`&&o(`error`,x(e),Error(e.error||`上传失败`)),E.set(e.uid,{status:e.status,percent:e.percent})}),e.length>0&&e.every(e=>e.status===`success`||e.status===`instant`||e.status===`error`)?(D||o(`finish`,S()),D=!0):D=!1,o(`change`,S())},{deep:!0}),t({selectFiles:()=>s.value?.triggerSelect(),startUpload:p,pauseAll:m,resumeAll:h,clearAll:()=>{f(),o(`change`,S())},removeFile:e=>{w(e)},retryFile:g,getFileList:S,getSuccessList:()=>v().map(x),get totalPercent(){return l.value}}),(e,t)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,ee,[(0,r.createCommentVNode)(` 上传区域 `),(0,r.createVNode)(N,{ref_key:`uploadAreaRef`,ref:s,accept:a.accept,multiple:a.multiple,directory:a.directory,disabled:a.disabled,draggable:a.draggable,pasteable:a.pasteable,tip:a.tip,onFiles:C},{default:(0,r.withCtx)(()=>[(0,r.renderSlot)(e.$slots,`area`,{},void 0,!0)]),_:3},8,[`accept`,`multiple`,`directory`,`disabled`,`draggable`,`pasteable`,`tip`]),(0,r.createCommentVNode)(` 总进度条 `),y.value?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,te,[(0,r.createElementVNode)(`div`,ne,[t[0]||=(0,r.createElementVNode)(`span`,null,`总进度`,-1),(0,r.createElementVNode)(`span`,null,(0,r.toDisplayString)((0,r.unref)(l))+`%`,1)]),(0,r.createVNode)((0,r.unref)(i.NProgress),{percentage:(0,r.unref)(l),height:6,"border-radius":3,"show-indicator":!1,status:`success`},null,8,[`percentage`])])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createCommentVNode)(` 图片预览模式 `),a.listType===`image`?((0,r.openBlock)(),(0,r.createBlock)($,{key:1,"file-list":(0,r.unref)(c),onRemove:w,onRetry:T},null,8,[`file-list`])):a.showFileList&&(0,r.unref)(c).length>0?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[(0,r.createCommentVNode)(` 文件列表模式 `),(0,r.createVNode)(G,{"file-list":(0,r.unref)(c),"show-thumbnail":a.showThumbnail,onRemove:w,onRetry:T},null,8,[`file-list`,`show-thumbnail`])],2112)):(0,r.createCommentVNode)(`v-if`,!0)]))}});var ie=n.t(re,[[`__scopeId`,`data-v-58ca8e42`]]);Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return ie}});
|