vxe-table 4.23.7 → 4.23.9

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.
Files changed (148) hide show
  1. package/dist/all.esm.js +5859 -4018
  2. package/es/colgroup/index.js +1 -1
  3. package/es/column/index.js +1 -1
  4. package/es/components.d.ts +3 -0
  5. package/es/components.js +4 -8
  6. package/es/grid/index.js +1 -1
  7. package/es/grid/src/emits.js +1 -15
  8. package/es/grid/src/grid.js +398 -121
  9. package/es/grid/src/props.js +1 -1
  10. package/es/index.esm.js +6 -0
  11. package/es/index.js +6 -0
  12. package/es/table/index.js +1 -1
  13. package/es/table/module/custom/hook.js +50 -43
  14. package/es/table/module/custom/panel.js +778 -528
  15. package/es/table/module/edit/hook.js +141 -63
  16. package/es/table/module/export/export-panel.js +400 -317
  17. package/es/table/module/export/hook.js +396 -338
  18. package/es/table/module/export/import-panel.js +153 -124
  19. package/es/table/module/filter/hook.js +17 -3
  20. package/es/table/module/filter/panel.js +147 -85
  21. package/es/table/module/keyboard/hook.js +9 -5
  22. package/es/table/module/menu/hook.js +1 -1
  23. package/es/table/module/menu/panel.js +198 -127
  24. package/es/table/module/validator/hook.js +1 -1
  25. package/es/table/render/index.js +152 -99
  26. package/es/table/src/body.js +356 -234
  27. package/es/table/src/cell.js +427 -270
  28. package/es/table/src/columnInfo.js +2 -1
  29. package/es/table/src/footer.js +145 -100
  30. package/es/table/src/group.js +7 -3
  31. package/es/table/src/header.js +230 -173
  32. package/es/table/src/props.js +1 -1
  33. package/es/table/src/table.js +1504 -1031
  34. package/es/table/src/util.js +15 -19
  35. package/es/toolbar/index.js +1 -1
  36. package/es/toolbar/src/toolbar.js +133 -76
  37. package/es/ui/index.d.ts +0 -1
  38. package/es/ui/index.js +1 -2
  39. package/es/ui/src/dom.js +9 -6
  40. package/es/ui/src/log.js +1 -1
  41. package/es/ui/src/utils.d.ts +1 -1
  42. package/es/v-x-e-table/index.d.ts +0 -1
  43. package/es/v-x-e-table/index.js +0 -1
  44. package/lib/colgroup/index.js +5 -5
  45. package/lib/column/index.js +5 -5
  46. package/lib/components.js +8 -12
  47. package/lib/grid/index.js +4 -4
  48. package/lib/grid/src/emits.js +1 -15
  49. package/lib/grid/src/grid.js +419 -142
  50. package/lib/grid/src/props.js +2 -2
  51. package/lib/index.common.js +6 -0
  52. package/lib/index.js +6 -0
  53. package/lib/index.umd.js +5825 -3945
  54. package/lib/index.umd.min.js +3 -3
  55. package/lib/table/index.js +5 -5
  56. package/lib/table/module/custom/hook.js +51 -44
  57. package/lib/table/module/custom/panel.js +790 -540
  58. package/lib/table/module/edit/hook.js +142 -64
  59. package/lib/table/module/export/export-panel.js +406 -323
  60. package/lib/table/module/export/hook.js +419 -361
  61. package/lib/table/module/export/import-panel.js +157 -128
  62. package/lib/table/module/filter/hook.js +18 -4
  63. package/lib/table/module/filter/panel.js +149 -87
  64. package/lib/table/module/keyboard/hook.js +10 -6
  65. package/lib/table/module/menu/hook.js +2 -2
  66. package/lib/table/module/menu/panel.js +199 -128
  67. package/lib/table/module/validator/hook.js +2 -2
  68. package/lib/table/render/index.js +153 -100
  69. package/lib/table/src/body.js +357 -235
  70. package/lib/table/src/cell.js +428 -271
  71. package/lib/table/src/columnInfo.js +3 -2
  72. package/lib/table/src/footer.js +146 -101
  73. package/lib/table/src/group.js +7 -3
  74. package/lib/table/src/header.js +231 -174
  75. package/lib/table/src/props.js +2 -2
  76. package/lib/table/src/table.js +1487 -1045
  77. package/lib/table/src/util.js +15 -19
  78. package/lib/toolbar/index.js +4 -4
  79. package/lib/toolbar/src/toolbar.js +135 -78
  80. package/lib/ui/index.js +1 -3
  81. package/lib/ui/src/dom.js +9 -6
  82. package/lib/ui/src/log.js +1 -1
  83. package/lib/v-x-e-table/index.js +0 -2
  84. package/package.json +8 -3
  85. package/packages/colgroup/index.ts +22 -22
  86. package/packages/column/index.ts +22 -22
  87. package/packages/components.ts +41 -43
  88. package/packages/grid/index.ts +18 -18
  89. package/packages/grid/src/emits.ts +5 -19
  90. package/packages/grid/src/grid.ts +2229 -1925
  91. package/packages/grid/src/props.ts +22 -23
  92. package/packages/index.ts +11 -4
  93. package/packages/locale/lang/fr-FR.ts +15 -15
  94. package/packages/locale/lang/it-IT.ts +4 -4
  95. package/packages/locale/lang/uk-UA.ts +1 -1
  96. package/packages/locale/lang/uz-UZ.ts +13 -13
  97. package/packages/locale/lang/zh-CN.ts +907 -907
  98. package/packages/table/index.ts +26 -26
  99. package/packages/table/module/custom/hook.ts +510 -503
  100. package/packages/table/module/custom/panel.ts +2002 -1743
  101. package/packages/table/module/edit/hook.ts +1224 -1131
  102. package/packages/table/module/export/export-panel.ts +697 -611
  103. package/packages/table/module/export/hook.ts +2160 -2059
  104. package/packages/table/module/export/import-panel.ts +319 -279
  105. package/packages/table/module/export/util.ts +25 -24
  106. package/packages/table/module/filter/hook.ts +519 -501
  107. package/packages/table/module/filter/panel.ts +368 -304
  108. package/packages/table/module/keyboard/hook.ts +498 -494
  109. package/packages/table/module/menu/hook.ts +330 -330
  110. package/packages/table/module/menu/panel.ts +272 -201
  111. package/packages/table/module/validator/hook.ts +653 -635
  112. package/packages/table/render/index.ts +1819 -1744
  113. package/packages/table/src/body.ts +1078 -955
  114. package/packages/table/src/cell.ts +1524 -1359
  115. package/packages/table/src/column.ts +192 -192
  116. package/packages/table/src/columnInfo.ts +232 -232
  117. package/packages/table/src/emits.ts +134 -134
  118. package/packages/table/src/footer.ts +425 -380
  119. package/packages/table/src/group.ts +67 -63
  120. package/packages/table/src/header.ts +642 -581
  121. package/packages/table/src/props.ts +336 -336
  122. package/packages/table/src/store.ts +14 -14
  123. package/packages/table/src/table.ts +16011 -15454
  124. package/packages/table/src/use/cell-view.ts +41 -44
  125. package/packages/table/src/use/index.ts +1 -1
  126. package/packages/table/src/util.ts +1206 -1216
  127. package/packages/toolbar/index.ts +18 -18
  128. package/packages/toolbar/src/toolbar.ts +768 -706
  129. package/packages/ui/index.ts +519 -521
  130. package/packages/ui/src/anime.ts +51 -52
  131. package/packages/ui/src/comp.ts +3 -3
  132. package/packages/ui/src/dom.ts +466 -463
  133. package/packages/ui/src/log.ts +19 -19
  134. package/packages/ui/src/utils.ts +66 -66
  135. package/packages/ui/src/vn.ts +55 -55
  136. package/packages/v-x-e-table/index.d.ts +3 -4
  137. package/packages/v-x-e-table/index.ts +3 -4
  138. package/types/all.d.ts +76 -76
  139. package/types/index.d.ts +4 -4
  140. /package/dist/{iconfont.1792979665397.ttf → iconfont.1793009263429.ttf} +0 -0
  141. /package/dist/{iconfont.1792979665397.woff → iconfont.1793009263429.woff} +0 -0
  142. /package/dist/{iconfont.1792979665397.woff2 → iconfont.1793009263429.woff2} +0 -0
  143. /package/es/{iconfont.1792979665397.ttf → iconfont.1793009263429.ttf} +0 -0
  144. /package/es/{iconfont.1792979665397.woff → iconfont.1793009263429.woff} +0 -0
  145. /package/es/{iconfont.1792979665397.woff2 → iconfont.1793009263429.woff2} +0 -0
  146. /package/lib/{iconfont.1792979665397.ttf → iconfont.1793009263429.ttf} +0 -0
  147. /package/lib/{iconfont.1792979665397.woff → iconfont.1793009263429.woff} +0 -0
  148. /package/lib/{iconfont.1792979665397.woff2 → iconfont.1793009263429.woff2} +0 -0
@@ -33,12 +33,12 @@ __export(export_panel_exports, {
33
33
  module.exports = __toCommonJS(export_panel_exports);
34
34
  var import_vue = require("vue");
35
35
  var import_comp = require("../../../ui/src/comp");
36
- var import_ui = require("../../../ui");
36
+ var import_core = require("@vxe-ui/core");
37
37
  var import_xe_utils = __toESM(require("xe-utils"));
38
38
  var import_utils = require("../../../ui/src/utils");
39
39
  var import_log = require("../../../ui/src/log");
40
40
  const { errLog } = (0, import_log.createComponentLog)("table");
41
- const { getI18n, getIcon, renderEmptyElement } = import_ui.VxeUI;
41
+ const { getI18n, getIcon, renderEmptyElement } = import_core.VxeUI;
42
42
  var export_panel_default = (0, import_comp.defineVxeComponent)({
43
43
  name: "VxeTableExportPanel",
44
44
  props: {
@@ -52,11 +52,11 @@ var export_panel_default = (0, import_comp.defineVxeComponent)({
52
52
  }
53
53
  },
54
54
  setup(props) {
55
- const VxeUIModalComponent = import_ui.VxeUI.getComponent("VxeModal");
56
- const VxeUIButtonComponent = import_ui.VxeUI.getComponent("VxeButton");
57
- const VxeUISelectComponent = import_ui.VxeUI.getComponent("VxeSelect");
58
- const VxeUIInputComponent = import_ui.VxeUI.getComponent("VxeInput");
59
- const VxeUICheckboxComponent = import_ui.VxeUI.getComponent("VxeCheckbox");
55
+ const VxeUIModalComponent = import_core.VxeUI.getComponent("VxeModal");
56
+ const VxeUIButtonComponent = import_core.VxeUI.getComponent("VxeButton");
57
+ const VxeUISelectComponent = import_core.VxeUI.getComponent("VxeSelect");
58
+ const VxeUIInputComponent = import_core.VxeUI.getComponent("VxeInput");
59
+ const VxeUICheckboxComponent = import_core.VxeUI.getComponent("VxeCheckbox");
60
60
  const $xeTable = (0, import_vue.inject)("$xeTable", {});
61
61
  const { computeExportOpts, computePrintOpts } = $xeTable.getComputeMaps();
62
62
  const reactData = (0, import_vue.reactive)({
@@ -211,330 +211,413 @@ var export_panel_default = (0, import_comp.defineVxeComponent)({
211
211
  const indeterminate = column.halfChecked;
212
212
  const isHtml = column.type === "html";
213
213
  colVNs.push(
214
- (0, import_vue.h)("li", {
215
- key: column.id,
216
- class: ["vxe-table-export--panel-column-option", `level--${column.level}`, {
217
- "is--group": isColGroup,
218
- "is--checked": isChecked,
219
- "is--indeterminate": indeterminate,
220
- "is--disabled": column.disabled
221
- }],
222
- title: isHtml ? "" : colTitle,
223
- onClick: () => {
224
- if (!column.disabled) {
225
- changeOption(column);
214
+ (0, import_vue.h)(
215
+ "li",
216
+ {
217
+ key: column.id,
218
+ class: [
219
+ "vxe-table-export--panel-column-option",
220
+ `level--${column.level}`,
221
+ {
222
+ "is--group": isColGroup,
223
+ "is--checked": isChecked,
224
+ "is--indeterminate": indeterminate,
225
+ "is--disabled": column.disabled
226
+ }
227
+ ],
228
+ title: isHtml ? "" : colTitle,
229
+ onClick: () => {
230
+ if (!column.disabled) {
231
+ changeOption(column);
232
+ }
226
233
  }
227
- }
228
- }, [
229
- (0, import_vue.h)("span", {
230
- class: ["vxe-checkbox--icon", indeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
231
- }),
232
- isHtml ? (0, import_vue.h)("span", {
233
- key: "1",
234
- class: "vxe-checkbox--label",
235
- innerHTML: colTitle
236
- }) : (0, import_vue.h)("span", {
237
- key: "0",
238
- class: "vxe-checkbox--label"
239
- }, colTitle)
240
- ])
234
+ },
235
+ [
236
+ (0, import_vue.h)("span", {
237
+ class: ["vxe-checkbox--icon", indeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
238
+ }),
239
+ isHtml ? (0, import_vue.h)("span", {
240
+ key: "1",
241
+ class: "vxe-checkbox--label",
242
+ innerHTML: colTitle
243
+ }) : (0, import_vue.h)(
244
+ "span",
245
+ {
246
+ key: "0",
247
+ class: "vxe-checkbox--label"
248
+ },
249
+ colTitle
250
+ )
251
+ ]
252
+ )
241
253
  );
242
254
  });
243
- return VxeUIModalComponent ? (0, import_vue.h)(VxeUIModalComponent, {
244
- id: "VXE_EXPORT_MODAL",
245
- modelValue: storeData.visible,
246
- title: modelOptions.title || getI18n(isPrint ? "vxe.export.printTitle" : "vxe.export.expTitle"),
247
- className: "vxe-table-export-popup-wrapper",
248
- width: modelOptions.width || 660,
249
- height: modelOptions.height,
250
- minWidth: modelOptions.minWidth || 500,
251
- minHeight: modelOptions.minHeight || 400,
252
- mask: (0, import_utils.getDefaultConfig)(modelOptions.mask, true),
253
- lockView: (0, import_utils.getDefaultConfig)(modelOptions.lockView, true),
254
- showFooter: true,
255
- escClosable: true,
256
- maskClosable: true,
257
- position: modelOptions.position,
258
- fullscreen: modelOptions.fullscreen,
259
- remember: modelOptions.remember,
260
- showMinimize: modelOptions.showMinimize,
261
- showMaximize: (0, import_utils.getDefaultConfig)(modelOptions.showMaximize, true),
262
- resize: (0, import_utils.getDefaultConfig)(modelOptions.resize, true),
263
- loading: reactData.loading,
264
- "onUpdate:modelValue"(value) {
265
- storeData.visible = value;
255
+ return VxeUIModalComponent ? (0, import_vue.h)(
256
+ VxeUIModalComponent,
257
+ {
258
+ id: "VXE_EXPORT_MODAL",
259
+ modelValue: storeData.visible,
260
+ title: modelOptions.title || getI18n(isPrint ? "vxe.export.printTitle" : "vxe.export.expTitle"),
261
+ className: "vxe-table-export-popup-wrapper",
262
+ width: modelOptions.width || 660,
263
+ height: modelOptions.height,
264
+ minWidth: modelOptions.minWidth || 500,
265
+ minHeight: modelOptions.minHeight || 400,
266
+ mask: (0, import_utils.getDefaultConfig)(modelOptions.mask, true),
267
+ lockView: (0, import_utils.getDefaultConfig)(modelOptions.lockView, true),
268
+ showFooter: true,
269
+ escClosable: true,
270
+ maskClosable: true,
271
+ position: modelOptions.position,
272
+ fullscreen: modelOptions.fullscreen,
273
+ remember: modelOptions.remember,
274
+ showMinimize: modelOptions.showMinimize,
275
+ showMaximize: (0, import_utils.getDefaultConfig)(modelOptions.showMaximize, true),
276
+ resize: (0, import_utils.getDefaultConfig)(modelOptions.resize, true),
277
+ loading: reactData.loading,
278
+ "onUpdate:modelValue"(value) {
279
+ storeData.visible = value;
280
+ },
281
+ onShow: showEvent
266
282
  },
267
- onShow: showEvent
268
- }, {
269
- default: () => {
270
- const params = {
271
- $table: $xeTable,
272
- $grid: $xeGrid,
273
- $gantt: $xeGantt,
274
- options: defaultOptions,
275
- columns,
276
- params: defaultOptions.params
277
- };
278
- const hasEmptyData = defaultOptions.mode === "empty";
279
- return (0, import_vue.h)("div", {
280
- class: "vxe-table-export--panel"
281
- }, [
282
- topSlot ? (0, import_vue.h)("div", {
283
- class: "vxe-table-export--panel-top"
284
- }, $xeTable.callSlot(topSlot, params)) : renderEmptyElement($xeTable),
285
- (0, import_vue.h)("div", {
286
- class: "vxe-table-export--panel-body"
287
- }, defaultSlot ? $xeTable.callSlot(defaultSlot, params) : [
288
- (0, import_vue.h)("table", {
289
- class: "vxe-table-export--panel-table",
290
- cellspacing: 0,
291
- cellpadding: 0,
292
- border: 0
293
- }, [
294
- (0, import_vue.h)("tbody", [
295
- [
296
- isPrint || settingOptions.showFileName === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
297
- (0, import_vue.h)("td", getI18n("vxe.export.expName")),
298
- (0, import_vue.h)("td", [
299
- VxeUIInputComponent ? (0, import_vue.h)(VxeUIInputComponent, {
300
- ref: xInputFilename,
301
- modelValue: defaultOptions.filename,
302
- type: "text",
303
- clearable: true,
304
- placeholder: getI18n("vxe.export.expNamePlaceholder"),
305
- "onUpdate:modelValue"(value) {
306
- defaultOptions.filename = value;
307
- }
308
- }) : renderEmptyElement($xeTable)
309
- ])
310
- ]),
311
- isPrint || settingOptions.showType === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
312
- (0, import_vue.h)("td", getI18n("vxe.export.expType")),
313
- (0, import_vue.h)("td", [
314
- VxeUISelectComponent ? (0, import_vue.h)(VxeUISelectComponent, {
315
- modelValue: defaultOptions.type,
316
- options: storeData.typeList,
317
- "onUpdate:modelValue"(value) {
318
- defaultOptions.type = value;
319
- }
320
- }) : renderEmptyElement($xeTable)
321
- ])
322
- ]),
323
- (isPrint || showSheet) && settingOptions.showSheet !== false ? (0, import_vue.h)("tr", [
324
- (0, import_vue.h)("td", getI18n("vxe.export.expSheetName")),
325
- (0, import_vue.h)("td", [
326
- VxeUIInputComponent ? (0, import_vue.h)(VxeUIInputComponent, {
327
- ref: xInputSheetname,
328
- modelValue: defaultOptions.sheetName,
329
- type: "text",
330
- clearable: true,
331
- placeholder: getI18n("vxe.export.expSheetNamePlaceholder"),
332
- "onUpdate:modelValue"(value) {
333
- defaultOptions.sheetName = value;
334
- }
335
- }) : renderEmptyElement($xeTable)
336
- ])
337
- ]) : renderEmptyElement($xeTable),
338
- settingOptions.showMode === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
339
- (0, import_vue.h)("td", getI18n("vxe.export.expMode")),
340
- (0, import_vue.h)("td", [
341
- VxeUISelectComponent ? (0, import_vue.h)(VxeUISelectComponent, {
342
- modelValue: defaultOptions.mode,
343
- options: storeData.modeList.map((item) => {
344
- return {
345
- value: item.value,
346
- label: getI18n(item.label)
347
- };
348
- }),
349
- "onUpdate:modelValue"(value) {
350
- defaultOptions.mode = value;
351
- }
352
- }) : renderEmptyElement($xeTable)
353
- ])
354
- ]),
355
- settingOptions.showColumn === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
356
- (0, import_vue.h)("td", [getI18n("vxe.export.expColumn")]),
357
- (0, import_vue.h)("td", [
358
- (0, import_vue.h)("div", {
359
- class: "vxe-table-export--panel-column"
360
- }, [
361
- (0, import_vue.h)("ul", {
362
- class: "vxe-table-export--panel-column-header"
363
- }, [
364
- (0, import_vue.h)("li", {
365
- class: ["vxe-table-export--panel-column-option", {
366
- "is--checked": isAllChecked,
367
- "is--indeterminate": isAllIndeterminate
368
- }],
369
- title: getI18n("vxe.table.allTitle"),
370
- onClick: allColumnEvent
371
- }, [
372
- (0, import_vue.h)("span", {
373
- class: ["vxe-checkbox--icon", isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
374
- }),
375
- (0, import_vue.h)("span", {
376
- class: "vxe-checkbox--label"
377
- }, getI18n("vxe.export.expCurrentColumn"))
283
+ {
284
+ default: () => {
285
+ const params = {
286
+ $table: $xeTable,
287
+ $grid: $xeGrid,
288
+ $gantt: $xeGantt,
289
+ options: defaultOptions,
290
+ columns,
291
+ params: defaultOptions.params
292
+ };
293
+ const hasEmptyData = defaultOptions.mode === "empty";
294
+ return (0, import_vue.h)(
295
+ "div",
296
+ {
297
+ class: "vxe-table-export--panel"
298
+ },
299
+ [
300
+ topSlot ? (0, import_vue.h)(
301
+ "div",
302
+ {
303
+ class: "vxe-table-export--panel-top"
304
+ },
305
+ $xeTable.callSlot(topSlot, params)
306
+ ) : renderEmptyElement($xeTable),
307
+ (0, import_vue.h)(
308
+ "div",
309
+ {
310
+ class: "vxe-table-export--panel-body"
311
+ },
312
+ defaultSlot ? $xeTable.callSlot(defaultSlot, params) : [
313
+ (0, import_vue.h)(
314
+ "table",
315
+ {
316
+ class: "vxe-table-export--panel-table",
317
+ cellspacing: 0,
318
+ cellpadding: 0,
319
+ border: 0
320
+ },
321
+ [
322
+ (0, import_vue.h)("tbody", [
323
+ [
324
+ isPrint || settingOptions.showFileName === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
325
+ (0, import_vue.h)("td", getI18n("vxe.export.expName")),
326
+ (0, import_vue.h)("td", [
327
+ VxeUIInputComponent ? (0, import_vue.h)(VxeUIInputComponent, {
328
+ ref: xInputFilename,
329
+ modelValue: defaultOptions.filename,
330
+ type: "text",
331
+ clearable: true,
332
+ placeholder: getI18n("vxe.export.expNamePlaceholder"),
333
+ "onUpdate:modelValue"(value) {
334
+ defaultOptions.filename = value;
335
+ }
336
+ }) : renderEmptyElement($xeTable)
337
+ ])
338
+ ]),
339
+ isPrint || settingOptions.showType === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
340
+ (0, import_vue.h)("td", getI18n("vxe.export.expType")),
341
+ (0, import_vue.h)("td", [
342
+ VxeUISelectComponent ? (0, import_vue.h)(VxeUISelectComponent, {
343
+ modelValue: defaultOptions.type,
344
+ options: storeData.typeList,
345
+ "onUpdate:modelValue"(value) {
346
+ defaultOptions.type = value;
347
+ }
348
+ }) : renderEmptyElement($xeTable)
349
+ ])
350
+ ]),
351
+ (isPrint || showSheet) && settingOptions.showSheet !== false ? (0, import_vue.h)("tr", [
352
+ (0, import_vue.h)("td", getI18n("vxe.export.expSheetName")),
353
+ (0, import_vue.h)("td", [
354
+ VxeUIInputComponent ? (0, import_vue.h)(VxeUIInputComponent, {
355
+ ref: xInputSheetname,
356
+ modelValue: defaultOptions.sheetName,
357
+ type: "text",
358
+ clearable: true,
359
+ placeholder: getI18n("vxe.export.expSheetNamePlaceholder"),
360
+ "onUpdate:modelValue"(value) {
361
+ defaultOptions.sheetName = value;
362
+ }
363
+ }) : renderEmptyElement($xeTable)
364
+ ])
365
+ ]) : renderEmptyElement($xeTable),
366
+ settingOptions.showMode === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
367
+ (0, import_vue.h)("td", getI18n("vxe.export.expMode")),
368
+ (0, import_vue.h)("td", [
369
+ VxeUISelectComponent ? (0, import_vue.h)(VxeUISelectComponent, {
370
+ modelValue: defaultOptions.mode,
371
+ options: storeData.modeList.map((item) => {
372
+ return {
373
+ value: item.value,
374
+ label: getI18n(item.label)
375
+ };
376
+ }),
377
+ "onUpdate:modelValue"(value) {
378
+ defaultOptions.mode = value;
379
+ }
380
+ }) : renderEmptyElement($xeTable)
381
+ ])
382
+ ]),
383
+ settingOptions.showColumn === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
384
+ (0, import_vue.h)("td", [getI18n("vxe.export.expColumn")]),
385
+ (0, import_vue.h)("td", [
386
+ (0, import_vue.h)(
387
+ "div",
388
+ {
389
+ class: "vxe-table-export--panel-column"
390
+ },
391
+ [
392
+ (0, import_vue.h)(
393
+ "ul",
394
+ {
395
+ class: "vxe-table-export--panel-column-header"
396
+ },
397
+ [
398
+ (0, import_vue.h)(
399
+ "li",
400
+ {
401
+ class: [
402
+ "vxe-table-export--panel-column-option",
403
+ {
404
+ "is--checked": isAllChecked,
405
+ "is--indeterminate": isAllIndeterminate
406
+ }
407
+ ],
408
+ title: getI18n("vxe.table.allTitle"),
409
+ onClick: allColumnEvent
410
+ },
411
+ [
412
+ (0, import_vue.h)("span", {
413
+ class: ["vxe-checkbox--icon", isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
414
+ }),
415
+ (0, import_vue.h)(
416
+ "span",
417
+ {
418
+ class: "vxe-checkbox--label"
419
+ },
420
+ getI18n("vxe.export.expCurrentColumn")
421
+ )
422
+ ]
423
+ )
424
+ ]
425
+ ),
426
+ (0, import_vue.h)(
427
+ "ul",
428
+ {
429
+ class: "vxe-table-export--panel-column-body"
430
+ },
431
+ colVNs
432
+ )
433
+ ]
434
+ )
435
+ ])
436
+ ]),
437
+ isPrint && settingOptions.showWidthMode !== false ? (0, import_vue.h)("tr", [
438
+ (0, import_vue.h)("td", getI18n("vxe.export.widthMode")),
439
+ (0, import_vue.h)("td", [
440
+ VxeUISelectComponent ? (0, import_vue.h)(VxeUISelectComponent, {
441
+ modelValue: defaultOptions.widthMode,
442
+ options: colWidthModeOptions,
443
+ "onUpdate:modelValue"(value) {
444
+ defaultOptions.widthMode = value;
445
+ }
446
+ }) : renderEmptyElement($xeTable)
447
+ ])
448
+ ]) : renderEmptyElement($xeTable),
449
+ settingOptions.showParameter === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
450
+ (0, import_vue.h)("td", getI18n("vxe.export.expOpts")),
451
+ parameterSlot ? (0, import_vue.h)("td", [
452
+ (0, import_vue.h)(
453
+ "div",
454
+ {
455
+ class: "vxe-table-export--panel-option-row"
456
+ },
457
+ $xeTable.callSlot(parameterSlot, params)
458
+ )
459
+ ]) : (0, import_vue.h)("td", [
460
+ (0, import_vue.h)(
461
+ "div",
462
+ {
463
+ class: "vxe-table-export--panel-option-row"
464
+ },
465
+ VxeUICheckboxComponent ? [
466
+ (0, import_vue.h)(VxeUICheckboxComponent, {
467
+ modelValue: hasEmptyData || isHeader,
468
+ disabled: hasEmptyData,
469
+ title: getI18n("vxe.export.expHeaderTitle"),
470
+ content: getI18n("vxe.export.expOptHeader"),
471
+ "onUpdate:modelValue"(value) {
472
+ defaultOptions.isHeader = value;
473
+ }
474
+ }),
475
+ (0, import_vue.h)(VxeUICheckboxComponent, {
476
+ modelValue: defaultOptions.isFooter,
477
+ disabled: !storeData.hasFooter,
478
+ title: getI18n("vxe.export.expFooterTitle"),
479
+ content: getI18n("vxe.export.expOptFooter"),
480
+ "onUpdate:modelValue"(value) {
481
+ defaultOptions.isFooter = value;
482
+ }
483
+ }),
484
+ (0, import_vue.h)(VxeUICheckboxComponent, {
485
+ modelValue: isHeader ? defaultOptions.isTitle : false,
486
+ disabled: !isHeader,
487
+ title: getI18n("vxe.export.expTitleTitle"),
488
+ content: getI18n("vxe.export.expOptTitle"),
489
+ "onUpdate:modelValue"(value) {
490
+ defaultOptions.isTitle = value;
491
+ }
492
+ }),
493
+ (0, import_vue.h)(VxeUICheckboxComponent, {
494
+ modelValue: isHeader && hasColgroup && supportMerge ? defaultOptions.isColgroup : false,
495
+ title: getI18n("vxe.export.expColgroupTitle"),
496
+ disabled: !isHeader || !hasColgroup || !supportMerge,
497
+ content: getI18n("vxe.export.expOptColgroup"),
498
+ "onUpdate:modelValue"(value) {
499
+ defaultOptions.isColgroup = value;
500
+ }
501
+ })
502
+ ] : []
503
+ ),
504
+ (0, import_vue.h)(
505
+ "div",
506
+ {
507
+ class: "vxe-table-export--panel-option-row"
508
+ },
509
+ VxeUICheckboxComponent ? [
510
+ (0, import_vue.h)(VxeUICheckboxComponent, {
511
+ modelValue: hasEmptyData ? false : defaultOptions.original,
512
+ disabled: hasEmptyData,
513
+ title: getI18n("vxe.export.expOriginalTitle"),
514
+ content: getI18n("vxe.export.expOptOriginal"),
515
+ "onUpdate:modelValue"(value) {
516
+ defaultOptions.original = value;
517
+ }
518
+ }),
519
+ (0, import_vue.h)(VxeUICheckboxComponent, {
520
+ modelValue: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false,
521
+ title: getI18n("vxe.export.expMergeTitle"),
522
+ disabled: hasEmptyData || !hasMerge || !supportMerge || !checkedAll,
523
+ content: getI18n("vxe.export.expOptMerge"),
524
+ "onUpdate:modelValue"(value) {
525
+ defaultOptions.isMerge = value;
526
+ }
527
+ }),
528
+ isPrint ? renderEmptyElement($xeTable) : (0, import_vue.h)(VxeUICheckboxComponent, {
529
+ modelValue: supportStyle ? defaultOptions.useStyle : false,
530
+ disabled: !supportStyle,
531
+ title: getI18n("vxe.export.expUseStyleTitle"),
532
+ content: getI18n("vxe.export.expOptUseStyle"),
533
+ "onUpdate:modelValue"(value) {
534
+ defaultOptions.useStyle = value;
535
+ }
536
+ })
537
+ ] : []
538
+ ),
539
+ (0, import_vue.h)(
540
+ "div",
541
+ {
542
+ class: "vxe-table-export--panel-option-row"
543
+ },
544
+ VxeUICheckboxComponent ? [
545
+ (0, import_vue.h)(VxeUICheckboxComponent, {
546
+ modelValue: hasTree ? defaultOptions.isTreeAllExpanded : false,
547
+ disabled: hasEmptyData || !hasTree,
548
+ title: getI18n("vxe.export.expTreeAllExpandTitle"),
549
+ content: getI18n("vxe.export.expOptTreeAllExpand"),
550
+ "onUpdate:modelValue"(value) {
551
+ defaultOptions.isTreeAllExpanded = value;
552
+ }
553
+ }),
554
+ (0, import_vue.h)(VxeUICheckboxComponent, {
555
+ modelValue: hasRowGroup ? defaultOptions.isRowGroupAllExpanded : false,
556
+ disabled: hasEmptyData || !hasRowGroup,
557
+ title: getI18n("vxe.export.expRowGroupAllExpandTitle"),
558
+ content: getI18n("vxe.export.expOptRowGroupAllExpand"),
559
+ "onUpdate:modelValue"(value) {
560
+ defaultOptions.isRowGroupAllExpanded = value;
561
+ }
562
+ })
563
+ ] : []
564
+ )
565
+ ])
378
566
  ])
379
- ]),
380
- (0, import_vue.h)("ul", {
381
- class: "vxe-table-export--panel-column-body"
382
- }, colVNs)
567
+ ]
383
568
  ])
384
- ])
385
- ]),
386
- isPrint && settingOptions.showWidthMode !== false ? (0, import_vue.h)("tr", [
387
- (0, import_vue.h)("td", getI18n("vxe.export.widthMode")),
388
- (0, import_vue.h)("td", [
389
- VxeUISelectComponent ? (0, import_vue.h)(VxeUISelectComponent, {
390
- modelValue: defaultOptions.widthMode,
391
- options: colWidthModeOptions,
392
- "onUpdate:modelValue"(value) {
393
- defaultOptions.widthMode = value;
394
- }
395
- }) : renderEmptyElement($xeTable)
396
- ])
397
- ]) : renderEmptyElement($xeTable),
398
- settingOptions.showParameter === false ? renderEmptyElement($xeTable) : (0, import_vue.h)("tr", [
399
- (0, import_vue.h)("td", getI18n("vxe.export.expOpts")),
400
- parameterSlot ? (0, import_vue.h)("td", [
401
- (0, import_vue.h)("div", {
402
- class: "vxe-table-export--panel-option-row"
403
- }, $xeTable.callSlot(parameterSlot, params))
404
- ]) : (0, import_vue.h)("td", [
405
- (0, import_vue.h)("div", {
406
- class: "vxe-table-export--panel-option-row"
407
- }, VxeUICheckboxComponent ? [
408
- (0, import_vue.h)(VxeUICheckboxComponent, {
409
- modelValue: hasEmptyData || isHeader,
410
- disabled: hasEmptyData,
411
- title: getI18n("vxe.export.expHeaderTitle"),
412
- content: getI18n("vxe.export.expOptHeader"),
413
- "onUpdate:modelValue"(value) {
414
- defaultOptions.isHeader = value;
415
- }
416
- }),
417
- (0, import_vue.h)(VxeUICheckboxComponent, {
418
- modelValue: defaultOptions.isFooter,
419
- disabled: !storeData.hasFooter,
420
- title: getI18n("vxe.export.expFooterTitle"),
421
- content: getI18n("vxe.export.expOptFooter"),
422
- "onUpdate:modelValue"(value) {
423
- defaultOptions.isFooter = value;
424
- }
425
- }),
426
- (0, import_vue.h)(VxeUICheckboxComponent, {
427
- modelValue: isHeader ? defaultOptions.isTitle : false,
428
- disabled: !isHeader,
429
- title: getI18n("vxe.export.expTitleTitle"),
430
- content: getI18n("vxe.export.expOptTitle"),
431
- "onUpdate:modelValue"(value) {
432
- defaultOptions.isTitle = value;
433
- }
434
- }),
435
- (0, import_vue.h)(VxeUICheckboxComponent, {
436
- modelValue: isHeader && hasColgroup && supportMerge ? defaultOptions.isColgroup : false,
437
- title: getI18n("vxe.export.expColgroupTitle"),
438
- disabled: !isHeader || !hasColgroup || !supportMerge,
439
- content: getI18n("vxe.export.expOptColgroup"),
440
- "onUpdate:modelValue"(value) {
441
- defaultOptions.isColgroup = value;
442
- }
443
- })
444
- ] : []),
445
- (0, import_vue.h)("div", {
446
- class: "vxe-table-export--panel-option-row"
447
- }, VxeUICheckboxComponent ? [
448
- (0, import_vue.h)(VxeUICheckboxComponent, {
449
- modelValue: hasEmptyData ? false : defaultOptions.original,
450
- disabled: hasEmptyData,
451
- title: getI18n("vxe.export.expOriginalTitle"),
452
- content: getI18n("vxe.export.expOptOriginal"),
453
- "onUpdate:modelValue"(value) {
454
- defaultOptions.original = value;
455
- }
456
- }),
457
- (0, import_vue.h)(VxeUICheckboxComponent, {
458
- modelValue: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false,
459
- title: getI18n("vxe.export.expMergeTitle"),
460
- disabled: hasEmptyData || !hasMerge || !supportMerge || !checkedAll,
461
- content: getI18n("vxe.export.expOptMerge"),
462
- "onUpdate:modelValue"(value) {
463
- defaultOptions.isMerge = value;
464
- }
465
- }),
466
- isPrint ? renderEmptyElement($xeTable) : (0, import_vue.h)(VxeUICheckboxComponent, {
467
- modelValue: supportStyle ? defaultOptions.useStyle : false,
468
- disabled: !supportStyle,
469
- title: getI18n("vxe.export.expUseStyleTitle"),
470
- content: getI18n("vxe.export.expOptUseStyle"),
471
- "onUpdate:modelValue"(value) {
472
- defaultOptions.useStyle = value;
473
- }
474
- })
475
- ] : []),
476
- (0, import_vue.h)("div", {
477
- class: "vxe-table-export--panel-option-row"
478
- }, VxeUICheckboxComponent ? [
479
- (0, import_vue.h)(VxeUICheckboxComponent, {
480
- modelValue: hasTree ? defaultOptions.isTreeAllExpanded : false,
481
- disabled: hasEmptyData || !hasTree,
482
- title: getI18n("vxe.export.expTreeAllExpandTitle"),
483
- content: getI18n("vxe.export.expOptTreeAllExpand"),
484
- "onUpdate:modelValue"(value) {
485
- defaultOptions.isTreeAllExpanded = value;
486
- }
487
- }),
488
- (0, import_vue.h)(VxeUICheckboxComponent, {
489
- modelValue: hasRowGroup ? defaultOptions.isRowGroupAllExpanded : false,
490
- disabled: hasEmptyData || !hasRowGroup,
491
- title: getI18n("vxe.export.expRowGroupAllExpandTitle"),
492
- content: getI18n("vxe.export.expOptRowGroupAllExpand"),
493
- "onUpdate:modelValue"(value) {
494
- defaultOptions.isRowGroupAllExpanded = value;
495
- }
496
- })
497
- ] : [])
498
- ])
499
- ])
569
+ ]
570
+ )
500
571
  ]
501
- ])
502
- ])
503
- ]),
504
- bottomSlot ? (0, import_vue.h)("div", {
505
- class: "vxe-table-export--panel-bottom"
506
- }, $xeTable.callSlot(bottomSlot, params)) : renderEmptyElement($xeTable)
507
- ]);
508
- },
509
- footer() {
510
- const params = {
511
- $table: $xeTable,
512
- $grid: $xeGrid,
513
- $gantt: $xeGantt,
514
- options: defaultOptions,
515
- columns,
516
- params: defaultOptions.params
517
- };
518
- return (0, import_vue.h)("div", {
519
- class: "vxe-table-export--panel-footer"
520
- }, footerSlot ? $xeTable.callSlot(footerSlot, params) : [
521
- (0, import_vue.h)("div", {
522
- class: "vxe-table-export--panel-btns"
523
- }, [
524
- VxeUIButtonComponent ? (0, import_vue.h)(VxeUIButtonComponent, {
525
- content: getI18n("vxe.export.expCancel"),
526
- onClick: cancelEvent
527
- }) : renderEmptyElement($xeTable),
528
- VxeUIButtonComponent ? (0, import_vue.h)(VxeUIButtonComponent, {
529
- ref: xButtonConfirm,
530
- status: "primary",
531
- content: getI18n(isPrint ? "vxe.export.expPrint" : "vxe.export.expConfirm"),
532
- onClick: confirmEvent
533
- }) : renderEmptyElement($xeTable)
534
- ])
535
- ]);
572
+ ),
573
+ bottomSlot ? (0, import_vue.h)(
574
+ "div",
575
+ {
576
+ class: "vxe-table-export--panel-bottom"
577
+ },
578
+ $xeTable.callSlot(bottomSlot, params)
579
+ ) : renderEmptyElement($xeTable)
580
+ ]
581
+ );
582
+ },
583
+ footer() {
584
+ const params = {
585
+ $table: $xeTable,
586
+ $grid: $xeGrid,
587
+ $gantt: $xeGantt,
588
+ options: defaultOptions,
589
+ columns,
590
+ params: defaultOptions.params
591
+ };
592
+ return (0, import_vue.h)(
593
+ "div",
594
+ {
595
+ class: "vxe-table-export--panel-footer"
596
+ },
597
+ footerSlot ? $xeTable.callSlot(footerSlot, params) : [
598
+ (0, import_vue.h)(
599
+ "div",
600
+ {
601
+ class: "vxe-table-export--panel-btns"
602
+ },
603
+ [
604
+ VxeUIButtonComponent ? (0, import_vue.h)(VxeUIButtonComponent, {
605
+ content: getI18n("vxe.export.expCancel"),
606
+ onClick: cancelEvent
607
+ }) : renderEmptyElement($xeTable),
608
+ VxeUIButtonComponent ? (0, import_vue.h)(VxeUIButtonComponent, {
609
+ ref: xButtonConfirm,
610
+ status: "primary",
611
+ content: getI18n(isPrint ? "vxe.export.expPrint" : "vxe.export.expConfirm"),
612
+ onClick: confirmEvent
613
+ }) : renderEmptyElement($xeTable)
614
+ ]
615
+ )
616
+ ]
617
+ );
618
+ }
536
619
  }
537
- }) : renderEmptyElement($xeTable);
620
+ ) : renderEmptyElement($xeTable);
538
621
  };
539
622
  (0, import_vue.nextTick)(() => {
540
623
  if (!VxeUIModalComponent) {