vxe-table 3.14.3 → 3.14.5

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 (127) hide show
  1. package/es/locale/lang/ar-EG.js +4 -1
  2. package/es/locale/lang/de-DE.js +4 -1
  3. package/es/locale/lang/en-US.js +8 -5
  4. package/es/locale/lang/es-ES.js +4 -1
  5. package/es/locale/lang/fr-FR.js +4 -1
  6. package/es/locale/lang/hu-HU.js +4 -1
  7. package/es/locale/lang/hy-AM.js +4 -1
  8. package/es/locale/lang/id-ID.js +4 -1
  9. package/es/locale/lang/it-IT.js +4 -1
  10. package/es/locale/lang/ja-JP.js +4 -1
  11. package/es/locale/lang/ko-KR.js +4 -1
  12. package/es/locale/lang/nb-NO.js +4 -1
  13. package/es/locale/lang/pt-BR.js +4 -1
  14. package/es/locale/lang/ru-RU.js +4 -1
  15. package/es/locale/lang/th-TH.js +4 -1
  16. package/es/locale/lang/ug-CN.js +4 -1
  17. package/es/locale/lang/uk-UA.js +4 -1
  18. package/es/locale/lang/vi-VN.js +4 -1
  19. package/es/locale/lang/zh-CHT.js +4 -1
  20. package/es/locale/lang/zh-CN.js +4 -1
  21. package/es/style.css +1 -1
  22. package/es/table/module/export/export-panel.js +32 -17
  23. package/es/table/module/export/mixin.js +3 -1
  24. package/es/table/module/keyboard/mixin.js +27 -9
  25. package/es/table/src/methods.js +44 -42
  26. package/es/table/src/table.js +50 -17
  27. package/es/ui/index.js +1 -1
  28. package/es/ui/src/log.js +1 -1
  29. package/lib/index.umd.js +165 -90
  30. package/lib/index.umd.min.js +1 -1
  31. package/lib/locale/lang/ar-EG.js +4 -1
  32. package/lib/locale/lang/ar-EG.min.js +1 -1
  33. package/lib/locale/lang/de-DE.js +4 -1
  34. package/lib/locale/lang/de-DE.min.js +1 -1
  35. package/lib/locale/lang/en-US.js +8 -5
  36. package/lib/locale/lang/en-US.min.js +1 -1
  37. package/lib/locale/lang/en-US.umd.js +8 -5
  38. package/lib/locale/lang/es-ES.js +4 -1
  39. package/lib/locale/lang/es-ES.min.js +1 -1
  40. package/lib/locale/lang/es-ES.umd.js +4 -1
  41. package/lib/locale/lang/fr-FR.js +4 -1
  42. package/lib/locale/lang/fr-FR.min.js +1 -1
  43. package/lib/locale/lang/hu-HU.js +4 -1
  44. package/lib/locale/lang/hu-HU.min.js +1 -1
  45. package/lib/locale/lang/hu-HU.umd.js +4 -1
  46. package/lib/locale/lang/hy-AM.js +4 -1
  47. package/lib/locale/lang/hy-AM.min.js +1 -1
  48. package/lib/locale/lang/id-ID.js +4 -1
  49. package/lib/locale/lang/id-ID.min.js +1 -1
  50. package/lib/locale/lang/it-IT.js +4 -1
  51. package/lib/locale/lang/it-IT.min.js +1 -1
  52. package/lib/locale/lang/ja-JP.js +4 -1
  53. package/lib/locale/lang/ja-JP.min.js +1 -1
  54. package/lib/locale/lang/ja-JP.umd.js +4 -1
  55. package/lib/locale/lang/ko-KR.js +4 -1
  56. package/lib/locale/lang/ko-KR.min.js +1 -1
  57. package/lib/locale/lang/ko-KR.umd.js +4 -1
  58. package/lib/locale/lang/nb-NO.js +4 -1
  59. package/lib/locale/lang/nb-NO.min.js +1 -1
  60. package/lib/locale/lang/pt-BR.js +4 -1
  61. package/lib/locale/lang/pt-BR.min.js +1 -1
  62. package/lib/locale/lang/pt-BR.umd.js +4 -1
  63. package/lib/locale/lang/ru-RU.js +4 -1
  64. package/lib/locale/lang/ru-RU.min.js +1 -1
  65. package/lib/locale/lang/ru-RU.umd.js +4 -1
  66. package/lib/locale/lang/th-TH.js +4 -1
  67. package/lib/locale/lang/th-TH.min.js +1 -1
  68. package/lib/locale/lang/ug-CN.js +4 -1
  69. package/lib/locale/lang/ug-CN.min.js +1 -1
  70. package/lib/locale/lang/uk-UA.js +4 -1
  71. package/lib/locale/lang/uk-UA.min.js +1 -1
  72. package/lib/locale/lang/uk-UA.umd.js +4 -1
  73. package/lib/locale/lang/vi-VN.js +4 -1
  74. package/lib/locale/lang/vi-VN.min.js +1 -1
  75. package/lib/locale/lang/zh-CHT.js +4 -1
  76. package/lib/locale/lang/zh-CHT.min.js +1 -1
  77. package/lib/locale/lang/zh-CHT.umd.js +4 -1
  78. package/lib/locale/lang/zh-CN.js +4 -1
  79. package/lib/locale/lang/zh-CN.min.js +1 -1
  80. package/lib/locale/lang/zh-CN.umd.js +4 -1
  81. package/lib/style.css +1 -1
  82. package/lib/table/module/export/export-panel.js +29 -17
  83. package/lib/table/module/export/export-panel.min.js +1 -1
  84. package/lib/table/module/export/mixin.js +3 -1
  85. package/lib/table/module/export/mixin.min.js +1 -1
  86. package/lib/table/module/keyboard/mixin.js +28 -9
  87. package/lib/table/module/keyboard/mixin.min.js +1 -1
  88. package/lib/table/src/methods.js +47 -43
  89. package/lib/table/src/methods.min.js +1 -1
  90. package/lib/table/src/table.js +52 -17
  91. package/lib/table/src/table.min.js +1 -1
  92. package/lib/ui/index.js +1 -1
  93. package/lib/ui/index.min.js +1 -1
  94. package/lib/ui/src/log.js +1 -1
  95. package/lib/ui/src/log.min.js +1 -1
  96. package/package.json +2 -2
  97. package/packages/locale/lang/ar-EG.ts +4 -1
  98. package/packages/locale/lang/de-DE.ts +4 -1
  99. package/packages/locale/lang/en-US.ts +8 -5
  100. package/packages/locale/lang/es-ES.ts +4 -1
  101. package/packages/locale/lang/fr-FR.ts +4 -1
  102. package/packages/locale/lang/hu-HU.ts +4 -1
  103. package/packages/locale/lang/hy-AM.ts +4 -1
  104. package/packages/locale/lang/id-ID.ts +4 -1
  105. package/packages/locale/lang/it-IT.ts +4 -1
  106. package/packages/locale/lang/ja-JP.ts +4 -1
  107. package/packages/locale/lang/ko-KR.ts +4 -1
  108. package/packages/locale/lang/nb-NO.ts +4 -1
  109. package/packages/locale/lang/pt-BR.ts +4 -1
  110. package/packages/locale/lang/ru-RU.ts +4 -1
  111. package/packages/locale/lang/th-TH.ts +4 -1
  112. package/packages/locale/lang/ug-CN.ts +4 -1
  113. package/packages/locale/lang/uk-UA.ts +4 -1
  114. package/packages/locale/lang/vi-VN.ts +4 -1
  115. package/packages/locale/lang/zh-CHT.ts +4 -1
  116. package/packages/locale/lang/zh-CN.ts +4 -1
  117. package/packages/table/module/export/export-panel.ts +33 -17
  118. package/packages/table/module/export/mixin.ts +3 -1
  119. package/packages/table/module/keyboard/mixin.ts +25 -9
  120. package/packages/table/src/methods.ts +43 -41
  121. package/packages/table/src/table.ts +52 -17
  122. /package/es/{iconfont.1743389110592.ttf → iconfont.1743479120369.ttf} +0 -0
  123. /package/es/{iconfont.1743389110592.woff → iconfont.1743479120369.woff} +0 -0
  124. /package/es/{iconfont.1743389110592.woff2 → iconfont.1743479120369.woff2} +0 -0
  125. /package/lib/{iconfont.1743389110592.ttf → iconfont.1743479120369.ttf} +0 -0
  126. /package/lib/{iconfont.1743389110592.woff → iconfont.1743479120369.woff} +0 -0
  127. /package/lib/{iconfont.1743389110592.woff2 → iconfont.1743479120369.woff2} +0 -0
@@ -291,42 +291,40 @@ var _default = exports.default = {
291
291
  }
292
292
  }), h('vxe-checkbox', {
293
293
  props: {
294
- value: defaultOptions.isFooter,
295
- disabled: !storeData.hasFooter,
296
- title: getI18n('vxe.export.expFooterTitle'),
297
- content: getI18n('vxe.export.expOptFooter')
294
+ value: isHeader ? defaultOptions.isTitle : false,
295
+ disabled: !isHeader,
296
+ title: getI18n('vxe.export.expTitleTitle'),
297
+ content: getI18n('vxe.export.expOptTitle')
298
298
  },
299
299
  on: {
300
300
  input(value) {
301
- defaultOptions.isFooter = value;
301
+ defaultOptions.isTitle = value;
302
302
  }
303
303
  }
304
304
  }), h('vxe-checkbox', {
305
305
  props: {
306
- value: hasEmptyData ? false : defaultOptions.original,
307
- disabled: hasEmptyData,
308
- title: getI18n('vxe.export.expOriginalTitle'),
309
- content: getI18n('vxe.export.expOptOriginal')
306
+ value: isHeader && hasColgroup && supportMerge ? defaultOptions.isColgroup : false,
307
+ disabled: !isHeader || !hasColgroup || !supportMerge,
308
+ title: getI18n('vxe.export.expColgroupTitle'),
309
+ content: getI18n('vxe.export.expOptColgroup')
310
310
  },
311
311
  on: {
312
312
  input(value) {
313
- defaultOptions.original = value;
313
+ defaultOptions.isColgroup = value;
314
314
  }
315
315
  }
316
316
  })]), h('div', {
317
317
  class: 'vxe-table-export--panel-option-row'
318
318
  }, [h('vxe-checkbox', {
319
319
  props: {
320
- // value: supportGroup || (isHeader && hasColgroup && supportMerge) ? defaultOptions.isColgroup : false,
321
- // disabled: !supportGroup && (!isHeader || !hasColgroup || !supportMerge),
322
- value: isHeader && hasColgroup && supportMerge ? defaultOptions.isColgroup : false,
323
- disabled: !isHeader || !hasColgroup || !supportMerge,
324
- title: getI18n('vxe.export.expColgroupTitle'),
325
- content: getI18n('vxe.export.expOptColgroup')
320
+ value: hasEmptyData ? false : defaultOptions.original,
321
+ disabled: hasEmptyData,
322
+ title: getI18n('vxe.export.expOriginalTitle'),
323
+ content: getI18n('vxe.export.expOptOriginal')
326
324
  },
327
325
  on: {
328
326
  input(value) {
329
- defaultOptions.isColgroup = value;
327
+ defaultOptions.original = value;
330
328
  }
331
329
  }
332
330
  }), h('vxe-checkbox', {
@@ -365,6 +363,20 @@ var _default = exports.default = {
365
363
  defaultOptions.isAllExpand = value;
366
364
  }
367
365
  }
366
+ })]), h('div', {
367
+ class: 'vxe-table-export--panel-option-row'
368
+ }, [h('vxe-checkbox', {
369
+ props: {
370
+ value: defaultOptions.isFooter,
371
+ disabled: !storeData.hasFooter,
372
+ title: getI18n('vxe.export.expFooterTitle'),
373
+ content: getI18n('vxe.export.expOptFooter')
374
+ },
375
+ on: {
376
+ input(value) {
377
+ defaultOptions.isFooter = value;
378
+ }
379
+ }
368
380
  })])])])]])])]), bottomSlot ? h('div', {
369
381
  class: 'vxe-table-export--panel-bottom'
370
382
  }, $xeTable.callSlot(bottomSlot, params, h)) : renderEmptyElement(this)]);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../../ui/src/utils"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,globalMixins,renderEmptyElement}=_ui.VxeUI;var _default=exports.default={name:"VxeTableExportPanel",mixins:[globalMixins.sizeMixin],props:{defaultOptions:Object,storeData:Object},components:{},inject:{$xeTable:{default:null}},data(){return{isAll:!1,isIndeterminate:!1,loading:!1}},computed:{checkedAll(){return this.storeData.columns.every(e=>e.checked)},showSheet(){return-1<["html","xml","xlsx","pdf"].indexOf(this.defaultOptions.type)},supportMerge(){var{storeData:e,defaultOptions:t}=this;return!t.original&&"current"===t.mode&&(e.isPrint||-1<["html","xlsx"].indexOf(t.type))},supportStyle(){var e=this.defaultOptions;return!e.original&&-1<["xlsx"].indexOf(e.type)}},created(){let e=_ui.VxeUI.getComponent("VxeModal"),t=_ui.VxeUI.getComponent("VxeButton"),l=_ui.VxeUI.getComponent("VxeSelect"),o=_ui.VxeUI.getComponent("VxeInput"),r=_ui.VxeUI.getComponent("VxeCheckbox");this.$nextTick(()=>{e||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),t||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),l||(0,_log.errLog)("vxe.error.reqComp",["vxe-select"]),o||(0,_log.errLog)("vxe.error.reqComp",["vxe-input"]),r||(0,_log.errLog)("vxe.error.reqComp",["vxe-checkbox"])})},render(n){let l=this.$xeTable,o=l.$xeGrid,{_e:r,checkedAll:i,isAll:a,isIndeterminate:s,showSheet:p,supportMerge:x,supportStyle:c,defaultOptions:d,storeData:h}=this,{hasTree:v,hasMerge:u,isPrint:g,hasColgroup:m,columns:b}=h,k=d.isHeader;var e=d.slots||{};let C=e.top,E=e.bottom,f=e.default,t=e.footer,I=e.parameter,O=[];return _xeUtils.default.eachTree(b,e=>{var t=(0,_utils.formatText)(e.getTitle(),1),l=e.children&&e.children.length,o=e.checked,r=e.halfChecked,i="html"===e.type;O.push(n("li",{class:["vxe-table-export--panel-column-option","level--"+e.level,{"is--group":l,"is--checked":o,"is--indeterminate":r,"is--disabled":e.disabled}],attrs:{title:t},on:{click:()=>{e.disabled||this.changeOption(e)}}},[n("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),i?n("span",{key:"1",class:"vxe-checkbox--label",domProps:{innerHTML:t}}):n("span",{key:"0",class:"vxe-checkbox--label"},t)]))}),n("vxe-modal",{ref:"modal",props:{id:"VXE_EXPORT_MODAL",value:h.visible,title:getI18n(g?"vxe.export.printTitle":"vxe.export.expTitle"),width:660,minWidth:500,minHeight:400,mask:!0,lockView:!0,showFooter:!0,escClosable:!0,maskClosable:!0,showMaximize:!0,resize:!0,loading:this.loading},on:{input(e){h.visible=e},show:this.showEvent},scopedSlots:{default:()=>{var e={$table:l,$grid:o,options:d,columns:b,params:d.params},t="empty"===d.mode;return n("div",{class:"vxe-table-export--panel"},[C?n("div",{class:"vxe-table-export--panel-top"},l.callSlot(C,e,n)):renderEmptyElement(this),n("div",{class:"vxe-table-export--panel-body"},f?l.callSlot(f,e,n):[n("table",{attrs:{class:"vxe-table-export--panel-table",cellspacing:0,cellpadding:0,border:0}},[n("tbody",[[g?r():n("tr",[n("td",getI18n("vxe.export.expName")),n("td",[n("vxe-input",{ref:"filename",props:{value:d.filename,type:"text",clearable:!0,placeholder:getI18n("vxe.export.expNamePlaceholder")},on:{modelValue(e){d.filename=e}}})])]),g?r():n("tr",[n("td",getI18n("vxe.export.expType")),n("td",[n("vxe-select",{props:{value:d.type,options:h.typeList},on:{modelValue(e){d.type=e}}})])]),g||p?n("tr",[n("td",getI18n("vxe.export.expSheetName")),n("td",[n("vxe-input",{ref:"sheetname",props:{value:d.sheetName,type:"text",clearable:!0,placeholder:getI18n("vxe.export.expSheetNamePlaceholder")},on:{modelValue(e){d.sheetName=e}}})])]):r(),n("tr",[n("td",getI18n("vxe.export.expMode")),n("td",[n("vxe-select",{props:{value:d.mode,options:h.modeList},on:{modelValue(e){d.mode=e}}})])]),n("tr",[n("td",[getI18n("vxe.export.expColumn")]),n("td",[n("div",{class:"vxe-table-export--panel-column"},[n("ul",{class:"vxe-table-export--panel-column-header"},[n("li",{class:["vxe-table-export--panel-column-option",{"is--checked":a,"is--indeterminate":s}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:this.allColumnEvent}},[n("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:a?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),n("span",{class:"vxe-checkbox--label"},getI18n("vxe.export.expCurrentColumn"))])]),n("ul",{class:"vxe-table-export--panel-column-body"},O)])])]),n("tr",[n("td",getI18n("vxe.export.expOpts")),I?n("td",[n("div",{class:"vxe-table-export--panel-option-row"},l.callSlot(I,e,n))]):n("td",[n("div",{class:"vxe-table-export--panel-option-row"},[n("vxe-checkbox",{props:{value:t||k,disabled:t,title:getI18n("vxe.export.expHeaderTitle"),content:getI18n("vxe.export.expOptHeader")},on:{input(e){d.isHeader=e}}}),n("vxe-checkbox",{props:{value:d.isFooter,disabled:!h.hasFooter,title:getI18n("vxe.export.expFooterTitle"),content:getI18n("vxe.export.expOptFooter")},on:{input(e){d.isFooter=e}}}),n("vxe-checkbox",{props:{value:!t&&d.original,disabled:t,title:getI18n("vxe.export.expOriginalTitle"),content:getI18n("vxe.export.expOptOriginal")},on:{input(e){d.original=e}}})]),n("div",{class:"vxe-table-export--panel-option-row"},[n("vxe-checkbox",{props:{value:!!(k&&m&&x)&&d.isColgroup,disabled:!k||!m||!x,title:getI18n("vxe.export.expColgroupTitle"),content:getI18n("vxe.export.expOptColgroup")},on:{input(e){d.isColgroup=e}}}),n("vxe-checkbox",{props:{value:!!(u&&x&&i)&&d.isMerge,disabled:t||!u||!x||!i,title:getI18n("vxe.export.expMergeTitle"),content:getI18n("vxe.export.expOptMerge")},on:{input(e){d.isMerge=e}}}),g?r():n("vxe-checkbox",{props:{value:!!c&&d.useStyle,disabled:!c,title:getI18n("vxe.export.expUseStyleTitle"),content:getI18n("vxe.export.expOptUseStyle")},on:{input(e){d.useStyle=e}}}),n("vxe-checkbox",{props:{value:!!v&&d.isAllExpand,disabled:t||!v,title:getI18n("vxe.export.expAllExpandTitle"),content:getI18n("vxe.export.expOptAllExpand")},on:{input(e){d.isAllExpand=e}}})])])])]])])]),E?n("div",{class:"vxe-table-export--panel-bottom"},l.callSlot(E,e,n)):renderEmptyElement(this)])},footer:()=>{var e={$table:l,$grid:o,options:d,columns:b,params:d.params};return n("div",{class:"vxe-table-export--panel-footer"},t?l.callSlot(t,e,n):[n("div",{class:"vxe-table-export--panel-btns"},[n("vxe-button",{props:{content:getI18n("vxe.export.expCancel")},on:{click:this.cancelEvent}}),n("vxe-button",{ref:"confirmBtn",props:{status:"primary",content:getI18n(g?"vxe.export.expPrint":"vxe.export.expConfirm")},on:{click:this.confirmEvent}})])])}}})},methods:{changeOption(e){let t=!e.checked;_xeUtils.default.eachTree([e],e=>{e.checked=t,e.halfChecked=!1}),this.handleOptionCheck(e),this.checkStatus()},handleOptionCheck(t){var e=_xeUtils.default.findTree(this.storeData.columns,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.checked=e.children.every(e=>e.checked),e.halfChecked=!e.checked&&e.children.some(e=>e.checked||e.halfChecked),this.handleOptionCheck(e))},checkStatus(){var e=this.storeData.columns;this.isAll=e.every(e=>e.disabled||e.checked),this.isIndeterminate=!this.isAll&&e.some(e=>!e.disabled&&(e.checked||e.halfChecked))},allColumnEvent(){let t=!this.isAll;_xeUtils.default.eachTree(this.storeData.columns,e=>{e.disabled||(e.checked=t,e.halfChecked=!1)}),this.isAll=t,this.checkStatus()},showEvent(){this.$nextTick(()=>{var e=this.$refs,e=e.filename||e.sheetname||e.confirmBtn;e&&e.focus()}),this.checkStatus()},getExportOption(){var{checkedAll:e,storeData:t,defaultOptions:l,supportMerge:o}=this,{hasMerge:t,columns:r}=t,r=_xeUtils.default.searchTree(r,e=>e.checked,{children:"children",mapChildren:"childNodes",original:!0});return Object.assign({},l,{columns:r,isMerge:!!(t&&o&&e)&&l.isMerge})},cancelEvent(){this.storeData.visible=!1},confirmEvent(e){this.storeData.isPrint?this.printEvent(e):this.exportEvent(e)},printEvent(){var e=this.$parent;this.storeData.visible=!1,e.print(Object.assign({},e.printOpts,this.getExportOption()))},exportEvent(){var e=this.$xeTable,t=e.exportOpts;this.loading=!0,e.exportData(Object.assign({},t,this.getExportOption())).then(()=>{this.loading=!1,this.storeData.visible=!1}).catch(()=>{this.loading=!1})}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../../ui/src/utils"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,globalMixins,renderEmptyElement}=_ui.VxeUI;var _default=exports.default={name:"VxeTableExportPanel",mixins:[globalMixins.sizeMixin],props:{defaultOptions:Object,storeData:Object},components:{},inject:{$xeTable:{default:null}},data(){return{isAll:!1,isIndeterminate:!1,loading:!1}},computed:{checkedAll(){return this.storeData.columns.every(e=>e.checked)},showSheet(){return-1<["html","xml","xlsx","pdf"].indexOf(this.defaultOptions.type)},supportMerge(){var{storeData:e,defaultOptions:t}=this;return!t.original&&"current"===t.mode&&(e.isPrint||-1<["html","xlsx"].indexOf(t.type))},supportStyle(){var e=this.defaultOptions;return!e.original&&-1<["xlsx"].indexOf(e.type)}},created(){let e=_ui.VxeUI.getComponent("VxeModal"),t=_ui.VxeUI.getComponent("VxeButton"),l=_ui.VxeUI.getComponent("VxeSelect"),o=_ui.VxeUI.getComponent("VxeInput"),i=_ui.VxeUI.getComponent("VxeCheckbox");this.$nextTick(()=>{e||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),t||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),l||(0,_log.errLog)("vxe.error.reqComp",["vxe-select"]),o||(0,_log.errLog)("vxe.error.reqComp",["vxe-input"]),i||(0,_log.errLog)("vxe.error.reqComp",["vxe-checkbox"])})},render(n){let l=this.$xeTable,o=l.$xeGrid,{_e:i,checkedAll:r,isAll:s,isIndeterminate:a,showSheet:p,supportMerge:x,supportStyle:c,defaultOptions:d,storeData:h}=this,{hasTree:v,hasMerge:u,isPrint:g,hasColgroup:m,columns:b}=h,k=d.isHeader;var e=d.slots||{};let C=e.top,E=e.bottom,f=e.default,t=e.footer,I=e.parameter,O=[];return _xeUtils.default.eachTree(b,e=>{var t=(0,_utils.formatText)(e.getTitle(),1),l=e.children&&e.children.length,o=e.checked,i=e.halfChecked,r="html"===e.type;O.push(n("li",{class:["vxe-table-export--panel-column-option","level--"+e.level,{"is--group":l,"is--checked":o,"is--indeterminate":i,"is--disabled":e.disabled}],attrs:{title:t},on:{click:()=>{e.disabled||this.changeOption(e)}}},[n("span",{class:["vxe-checkbox--icon",i?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),r?n("span",{key:"1",class:"vxe-checkbox--label",domProps:{innerHTML:t}}):n("span",{key:"0",class:"vxe-checkbox--label"},t)]))}),n("vxe-modal",{ref:"modal",props:{id:"VXE_EXPORT_MODAL",value:h.visible,title:getI18n(g?"vxe.export.printTitle":"vxe.export.expTitle"),width:660,minWidth:500,minHeight:400,mask:!0,lockView:!0,showFooter:!0,escClosable:!0,maskClosable:!0,showMaximize:!0,resize:!0,loading:this.loading},on:{input(e){h.visible=e},show:this.showEvent},scopedSlots:{default:()=>{var e={$table:l,$grid:o,options:d,columns:b,params:d.params},t="empty"===d.mode;return n("div",{class:"vxe-table-export--panel"},[C?n("div",{class:"vxe-table-export--panel-top"},l.callSlot(C,e,n)):renderEmptyElement(this),n("div",{class:"vxe-table-export--panel-body"},f?l.callSlot(f,e,n):[n("table",{attrs:{class:"vxe-table-export--panel-table",cellspacing:0,cellpadding:0,border:0}},[n("tbody",[[g?i():n("tr",[n("td",getI18n("vxe.export.expName")),n("td",[n("vxe-input",{ref:"filename",props:{value:d.filename,type:"text",clearable:!0,placeholder:getI18n("vxe.export.expNamePlaceholder")},on:{modelValue(e){d.filename=e}}})])]),g?i():n("tr",[n("td",getI18n("vxe.export.expType")),n("td",[n("vxe-select",{props:{value:d.type,options:h.typeList},on:{modelValue(e){d.type=e}}})])]),g||p?n("tr",[n("td",getI18n("vxe.export.expSheetName")),n("td",[n("vxe-input",{ref:"sheetname",props:{value:d.sheetName,type:"text",clearable:!0,placeholder:getI18n("vxe.export.expSheetNamePlaceholder")},on:{modelValue(e){d.sheetName=e}}})])]):i(),n("tr",[n("td",getI18n("vxe.export.expMode")),n("td",[n("vxe-select",{props:{value:d.mode,options:h.modeList},on:{modelValue(e){d.mode=e}}})])]),n("tr",[n("td",[getI18n("vxe.export.expColumn")]),n("td",[n("div",{class:"vxe-table-export--panel-column"},[n("ul",{class:"vxe-table-export--panel-column-header"},[n("li",{class:["vxe-table-export--panel-column-option",{"is--checked":s,"is--indeterminate":a}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:this.allColumnEvent}},[n("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:s?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),n("span",{class:"vxe-checkbox--label"},getI18n("vxe.export.expCurrentColumn"))])]),n("ul",{class:"vxe-table-export--panel-column-body"},O)])])]),n("tr",[n("td",getI18n("vxe.export.expOpts")),I?n("td",[n("div",{class:"vxe-table-export--panel-option-row"},l.callSlot(I,e,n))]):n("td",[n("div",{class:"vxe-table-export--panel-option-row"},[n("vxe-checkbox",{props:{value:t||k,disabled:t,title:getI18n("vxe.export.expHeaderTitle"),content:getI18n("vxe.export.expOptHeader")},on:{input(e){d.isHeader=e}}}),n("vxe-checkbox",{props:{value:!!k&&d.isTitle,disabled:!k,title:getI18n("vxe.export.expTitleTitle"),content:getI18n("vxe.export.expOptTitle")},on:{input(e){d.isTitle=e}}}),n("vxe-checkbox",{props:{value:!!(k&&m&&x)&&d.isColgroup,disabled:!k||!m||!x,title:getI18n("vxe.export.expColgroupTitle"),content:getI18n("vxe.export.expOptColgroup")},on:{input(e){d.isColgroup=e}}})]),n("div",{class:"vxe-table-export--panel-option-row"},[n("vxe-checkbox",{props:{value:!t&&d.original,disabled:t,title:getI18n("vxe.export.expOriginalTitle"),content:getI18n("vxe.export.expOptOriginal")},on:{input(e){d.original=e}}}),n("vxe-checkbox",{props:{value:!!(u&&x&&r)&&d.isMerge,disabled:t||!u||!x||!r,title:getI18n("vxe.export.expMergeTitle"),content:getI18n("vxe.export.expOptMerge")},on:{input(e){d.isMerge=e}}}),g?i():n("vxe-checkbox",{props:{value:!!c&&d.useStyle,disabled:!c,title:getI18n("vxe.export.expUseStyleTitle"),content:getI18n("vxe.export.expOptUseStyle")},on:{input(e){d.useStyle=e}}}),n("vxe-checkbox",{props:{value:!!v&&d.isAllExpand,disabled:t||!v,title:getI18n("vxe.export.expAllExpandTitle"),content:getI18n("vxe.export.expOptAllExpand")},on:{input(e){d.isAllExpand=e}}})]),n("div",{class:"vxe-table-export--panel-option-row"},[n("vxe-checkbox",{props:{value:d.isFooter,disabled:!h.hasFooter,title:getI18n("vxe.export.expFooterTitle"),content:getI18n("vxe.export.expOptFooter")},on:{input(e){d.isFooter=e}}})])])])]])])]),E?n("div",{class:"vxe-table-export--panel-bottom"},l.callSlot(E,e,n)):renderEmptyElement(this)])},footer:()=>{var e={$table:l,$grid:o,options:d,columns:b,params:d.params};return n("div",{class:"vxe-table-export--panel-footer"},t?l.callSlot(t,e,n):[n("div",{class:"vxe-table-export--panel-btns"},[n("vxe-button",{props:{content:getI18n("vxe.export.expCancel")},on:{click:this.cancelEvent}}),n("vxe-button",{ref:"confirmBtn",props:{status:"primary",content:getI18n(g?"vxe.export.expPrint":"vxe.export.expConfirm")},on:{click:this.confirmEvent}})])])}}})},methods:{changeOption(e){let t=!e.checked;_xeUtils.default.eachTree([e],e=>{e.checked=t,e.halfChecked=!1}),this.handleOptionCheck(e),this.checkStatus()},handleOptionCheck(t){var e=_xeUtils.default.findTree(this.storeData.columns,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.checked=e.children.every(e=>e.checked),e.halfChecked=!e.checked&&e.children.some(e=>e.checked||e.halfChecked),this.handleOptionCheck(e))},checkStatus(){var e=this.storeData.columns;this.isAll=e.every(e=>e.disabled||e.checked),this.isIndeterminate=!this.isAll&&e.some(e=>!e.disabled&&(e.checked||e.halfChecked))},allColumnEvent(){let t=!this.isAll;_xeUtils.default.eachTree(this.storeData.columns,e=>{e.disabled||(e.checked=t,e.halfChecked=!1)}),this.isAll=t,this.checkStatus()},showEvent(){this.$nextTick(()=>{var e=this.$refs,e=e.filename||e.sheetname||e.confirmBtn;e&&e.focus()}),this.checkStatus()},getExportOption(){var{checkedAll:e,storeData:t,defaultOptions:l,supportMerge:o}=this,{hasMerge:t,columns:i}=t,i=_xeUtils.default.searchTree(i,e=>e.checked,{children:"children",mapChildren:"childNodes",original:!0});return Object.assign({},l,{columns:i,isMerge:!!(t&&o&&e)&&l.isMerge})},cancelEvent(){this.storeData.visible=!1},confirmEvent(e){this.storeData.isPrint?this.printEvent(e):this.exportEvent(e)},printEvent(){var e=this.$parent;this.storeData.visible=!1,e.print(Object.assign({},e.printOpts,this.getExportOption()))},exportEvent(){var e=this.$xeTable,t=e.exportOpts;this.loading=!0,e.exportData(Object.assign({},t,this.getExportOption())).then(()=>{this.loading=!1,this.storeData.visible=!1}).catch(()=>{this.loading=!1})}}};
@@ -252,7 +252,7 @@ function getHeaderTitle($xeTable, opts, column) {
252
252
  column,
253
253
  options: opts,
254
254
  $table: $xeTable
255
- }) : (opts.original ? column.field : column.getTitle()) || '';
255
+ }) : (opts.isTitle ? column.getTitle() : column.field) || '';
256
256
  }
257
257
  function getFooterCellValue($xeTable, opts, row, column) {
258
258
  const columnOpts = $xeTable.computeColumnOpts;
@@ -1218,6 +1218,7 @@ function handleExportAndPrint($xeTable, options, isPrint) {
1218
1218
  const defOpts = Object.assign({
1219
1219
  message: true,
1220
1220
  isHeader: showHeader,
1221
+ isTitle: showHeader,
1221
1222
  isFooter: showFooter,
1222
1223
  isColgroup: isGroup,
1223
1224
  isMerge: hasMerge,
@@ -1410,6 +1411,7 @@ var _default = exports.default = {
1410
1411
  const opts = Object.assign({
1411
1412
  message: true,
1412
1413
  isHeader: showHeader,
1414
+ isTitle: showHeader,
1413
1415
  isFooter: showFooter,
1414
1416
  isColgroup: isGroup,
1415
1417
  isMerge: hasMerge,
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.readLocalFile=readLocalFile,exports.saveLocalFile=saveLocalFile;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer}=_ui.VxeUI,htmlCellElem,fileForm,fileInput,csvBOM="\ufeff",enterSymbol="\r\n";function hasTreeChildren(e,t){e=e.computeTreeOpts,e=e.children||e.childrenField;return t[e]&&t[e].length}function getSeq(e,t,l,o,r,i){var a=e.computeSeqOpts.seqMethod||r.seqMethod;return a?a({row:l,rowIndex:e.getRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),$columnIndex:i}):t}function defaultFilterExportColumn(e){return e.field||-1<["seq","checkbox","radio"].indexOf(e.type)}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(c,u,p,e){let{isAllExpand:a,mode:h}=u;var t=c.treeConfig;let m=c.computeRadioOpts,f=c.computeCheckboxOpts;var l=c.computeTreeOpts;let g=c.computeColumnOpts;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;let r=[],i=new Map;return _xeUtils.default.eachTree(e,(e,n,t,s,l,o)=>{let d=e._row||e;e=l&&l._row?l._row:l;if(a||!e||i.has(e)&&c.isTreeExpandByRow(e)){l=hasTreeChildren(c,d);let a={_row:d,_level:o.length-1,_hasChild:l,_expand:l&&c.isTreeExpandByRow(d)};p.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||g.exportMethod;if(r=(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)||g.exportMethod)l=r({$table:c,row:d,column:e,options:u});else switch(e.type){case"seq":var i=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===h?i:getSeq(c,i,d,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(d)),a._checkboxLabel=f.labelField?_xeUtils.default.get(d,f.labelField):"",a._checkboxDisabled=f.checkMethod&&!f.checkMethod({row:d});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(d)),a._radioLabel=m.labelField?_xeUtils.default.get(d,m.labelField):"",a._radioDisabled=m.checkMethod&&!m.checkMethod({row:d});break;default:u.original?l=(0,_util.getCellValue)(d,e):(l=c.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(i=c.getCellElement(d,e))&&!(0,_dom.hasClass)(i,"is--progress")&&(l=i.innerText.trim()))}a[e.id]=toStringValue(l)}),i.set(d,1),r.push(Object.assign(a,d))}},{children:t}),r}return e.map((a,n)=>{let s={_row:a};return p.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||g.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:c,row:a,column:e,options:u});else switch(e.type){case"seq":var i=n+1;l="all"===h?i:getSeq(c,i,a,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(a)),s._checkboxLabel=f.labelField?_xeUtils.default.get(a,f.labelField):"",s._checkboxDisabled=f.checkMethod&&!f.checkMethod({row:a});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(a)),s._radioLabel=m.labelField?_xeUtils.default.get(a,m.labelField):"",s._radioDisabled=m.checkMethod&&!m.checkMethod({row:a});break;default:u.original?l=(0,_util.getCellValue)(a,e):(l=c.getCellLabel(a,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(i=c.getCellElement(a,e))&&!(0,_dom.hasClass)(i,"is--progress")&&(l=i.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(e,t){let{columns:l,dataFilterMethod:o}=t,r=t.data;return getBodyLabelData(e,t,l,r=o?r.filter((e,t)=>o({row:e,$rowIndex:t})):r)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.original?l.field:l.getTitle())||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,i=o.editRender||o.cellRender;let a=o.footerExportMethod;a=(a=!a&&i&&i.name&&(i=renderer.get(i.name))?i.tableFooterExportMethod||i.footerExportMethod||i.footerCellExportMethod:a)||r.footerExportMethod;i=e.getVTColumnIndex(o);return a?a({$table:e,items:l,itemIndex:i,row:l,_columnIndex:i,column:o,options:t}):_xeUtils.default.isArray(l)?_xeUtils.default.toValueString(l[i]):_xeUtils.default.get(l,o.field)}function getFooterData(e,t){let l=e.footerFilterMethod;return l?t.filter((e,t)=>l({items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function toCsv(l,o,e,t){var r=l;let i=csvBOM;return o.isHeader&&(i+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{i+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(o,t).forEach(t=>{i+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),i}function toTxt(l,o,e,t){var r=l;let i="";return o.isHeader&&(i+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{i+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(o,t).forEach(t=>{i+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),i}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function toHtml(d,n,e,t){var l=d;let{id:c,border:o,treeConfig:r,headerAlign:s,align:u,footerAlign:i,showOverflow:p,showHeaderOverflow:h}=d,{isAllSelected:m,isIndeterminate:a,mergeList:f}=l,g=d.computeTreeOpts,{print:x,isHeader:v,isFooter:b,isColgroup:_,isMerge:y,colgroups:$,original:C}=n,w="check-all",E=[`<table class="${["vxe-table","border--"+toTableBorder(o),x?"is--print":"",v?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];v&&(E.push("<thead>"),_&&!C?$.forEach(e=>{E.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||s||u,l=hasEllipsis(d,t,"showHeaderOverflow",h)?["col--ellipsis"]:[],o=getHeaderTitle(d,n,t);let r=0,i=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||i++,r+=e.renderWidth},{children:"childNodes"});var a=r-i;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${x?"":`style="width: ${a}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${o}"><div ${x?"":`style="width: ${a}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):E.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||s||u,l=hasEllipsis(d,e,"showHeaderOverflow",h)?["col--ellipsis"]:[],o=getHeaderTitle(d,n,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),E.push("</thead>")),t.length&&(E.push("<tbody>"),r?t.forEach(r=>{E.push("<tr>"+e.map(t=>{var e=t.align||u,l=hasEllipsis(d,t,"showOverflow",p)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${c}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${c}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{E.push("<tr>"+e.map(e=>{var t=e.align||u,l=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],o=s[e.id];let r=1,i=1;if(y&&f.length){var a=d.getVTRowIndex(s._row),n=d.getVTColumnIndex(e),a=(0,_util.mergeBodyMethod)(f,a,n);if(a){var{rowspan:n,colspan:a}=a;if(!n||!a)return"";1<n&&(r=n),1<a&&(i=a)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${i}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${c}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${i}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${r}" colspan="${i}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}),E.push("</tbody>")),b&&(t=l.footerTableData,(l=getFooterData(n,t)).length)&&(E.push("<tfoot>"),l.forEach(r=>{E.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||i||u,l=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],o=getFooterCellValue(d,n,r,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),E.push("</tfoot>"));t=!m&&a?`<script>(function(){var a=document.querySelector(".${w}");if(a){a.indeterminate=true}})()</script>`:"";return E.push("</table>",t),x?E.join(""):(0,_util2.createHtmlPage)(n,E.join(""))}function toXML(l,o,e,t){var r=l;let i=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(i+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{i+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(o,t).forEach(t=>{i+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),i+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function saveLocalFile(e){var{filename:l,type:o,content:t}=e,l=l+"."+o;if(window.Blob){o=t instanceof Blob?t:(0,_util2.getExportBlobByContent)(_xeUtils.default.toValueString(t),e);if(navigator.msSaveBlob)navigator.msSaveBlob(o,l);else{let e=URL.createObjectURL(o),t=document.createElement("a");t.target="_blank",t.download=l,t.href=e,document.body.appendChild(t),t.click(),document.body.removeChild(t),requestAnimationFrame(()=>{t.parentNode&&t.parentNode.removeChild(t),URL.revokeObjectURL(e)})}return Promise.resolve()}return Promise.reject(new Error(getI18n("vxe.error.notExp")))}function downloadFile(e,t,l){var{filename:o,type:r,download:i}=t;if(!i)return i=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:i});saveLocalFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"}))})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,{remote:i,columns:a,colgroups:n,exportMethod:s,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r};t(s?s(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:a,colgroups:n,datas:e},()=>downloadFile(l,o,getContent(l,o,a,e))))}}).then(e=>(clearColumnConvert(a),o.print||t&&t({status:!0,options:o,$table:l,$grid:r}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(a),o.print||t&&t({status:!1,options:o,$table:l,$grid:r});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,i){e=e.split(enterSymbol);let a=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(i);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),a.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:a}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(l,e,o){let{tableFullColumn:t,_importResolve:r,_importReject:i}=l,a={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=e.getTitle();t&&(n[t]=e),l&&(s[e.getTitle()]=e)});var d={fieldMaps:n,titleMaps:s};switch(o.type){case"csv":a=parseCsv(d,e);break;case"txt":a=parseTxt(d,e);break;case"html":a=parseHTML(d,e);break;case"xml":a=parseXML(d,e)}let{fields:c,rows:u}=a;c.some(e=>n[e]||s[e])?l.createData(u).then(e=>{let t;return"insert"!==o.mode&&"insertBottom"!==o.mode||(t=l.insertAt(e,-1)),t="insertTop"===o.mode?l.insert(e):l.reloadData(e),!1!==o.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==o.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),i)&&i({status:!1})}function handleFileImport(i,a,n){let s=i;var e=i.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(a);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),i._importResolve=null,i._importReject=null},o=e=>{l(e),i._importResolve=null,i._importReject=null};if(i._importResolve=e,i._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:a,options:t,$table:i})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,i.preventEvent(null,"event.import",{file:a,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[c]),o({status:!1})},e.onload=e=>{handleImport(i,e.target.result,t)},e.readAsText(a,t.encoding||"UTF-8")}))}else(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:i})}).catch(e=>(t&&t({status:!1,options:n,$table:i}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function readLocalFile(s={}){return fileForm||(fileForm=document.createElement("form"),fileInput=document.createElement("input"),fileForm.className="vxe-table--file-form",fileInput.name="file",fileInput.type="file",fileForm.appendChild(fileInput),document.body.appendChild(fileForm)),new Promise((r,i)=>{let a=s.types||[],n=!a.length||a.some(e=>"*"===e);fileInput.multiple=!!s.multiple,fileInput.accept=n?"":"."+a.join(", ."),fileInput.onchange=e=>{var t=e.target.files,e=t[0];let l;if(!n)for(let e=0;e<t.length;e++){var o=(0,_utils.parseFile)(t[e]).type;if(!_xeUtils.default.includes(a,o)){l=o;break}}l?(!1!==s.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[l]),status:"error"})),i({status:!1,files:t,file:e})):r({status:!0,files:t,file:e})},fileForm.reset(),fileInput.click()})}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o){return(!o||!_xeUtils.default.includes(o,t.field))&&(l?!!_xeUtils.default.includes(l,t.field):e.original?t.field:defaultFilterExportColumn(t))}function handleExportAndPrint(e,t,l){var o=e.$xeGrid,{treeConfig:r,showHeader:i,showFooter:a}=e,{initStore:n,mergeList:s,mergeFooterList:d,isGroup:c,footerTableData:u,exportStore:p,exportParams:h}=e,m=e.collectColumn,f=e.computeExportOpts,g=e.computeCustomOpts,x=e.getCheckboxRecords(),v=o?o.computeProxyOpts:{},u=!!u.length,s=!(!s.length&&!d.length);let b=Object.assign({message:!0,isHeader:i,isFooter:a,isColgroup:c,isMerge:s,useStyle:!0,current:"current",modes:(v.ajax&&v.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},t);d=b.types||_xeUtils.default.keys(f._typeMaps),i=b.modes||[];let _=g.checkMethod;a=m.slice(0);let{columns:y,excludeFields:$,includeFields:C}=b;v=d.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),t=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});_xeUtils.default.eachTree(a,(e,t,l,o,r)=>{var i=e.children&&e.children.length;let a=!1;a=y&&y.length?handleFilterColumns(b,e,y):$||C?handleFilterFields(b,e,C,$):e.visible&&(i||defaultFilterExportColumn(e)),e.checked=a,e.halfChecked=!1,e.disabled=r&&r.disabled||!!_&&!_({column:e})}),Object.assign(p,{columns:a,typeList:v,modeList:t,hasFooter:u,hasMerge:s,hasTree:r,isPrint:l,hasColgroup:c,visible:!0}),Object.assign(h,{mode:x.length?"selected":"current"},b);let{filename:w,sheetName:E,mode:T,type:F}=h;return w&&(_xeUtils.default.isFunction(w)?h.filename=w({options:b,$table:e,$grid:o}):h.filename=""+w),E&&(_xeUtils.default.isFunction(E)?h.sheetName=E({options:b,$table:e,$grid:o}):h.sheetName=""+E),t.some(e=>e.value===T)||(h.mode=t[0].value),v.some(e=>e.value===F)||(h.type=v[0].value),n.export=!0,e.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let n=this;var t=n,s=n,l=n;let d=n.$xeGrid;var{treeConfig:t,showHeader:c,showFooter:u}=t,{mergeList:s,mergeFooterList:o,isGroup:r}=s;let{tableFullColumn:i,afterFullData:a,collectColumn:p}=l;var l=n.computeExportOpts,h=n.computeTreeOpts;let m=d?d.computeProxyOpts:{};s=!(!s.length&&!o.length);let f=Object.assign({message:!0,isHeader:c,isFooter:u,isColgroup:r,isMerge:s,useStyle:!0,current:"current",modes:(m.ajax&&m.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},l,e),{filename:g,sheetName:x,type:v,mode:b,columns:_,original:y,columnFilterMethod:$,beforeExportMethod:C,includeFields:w,excludeFields:E}=f,T=[],F=n.getCheckboxRecords();b=b||(F.length?"selected":"current");o=_&&_.length?_:_xeUtils.default.searchTree(p,e=>{var t=e.children&&e.children.length;let l=!1;return l=_&&_.length?handleFilterColumns(f,e,_):E||w?handleFilterFields(f,e,w,E):e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0});let M=Object.assign({},f,{filename:"",sheetName:""}),k=(o||$||(M.columnFilterMethod=({column:e})=>(!E||!_xeUtils.default.includes(E,e.field))&&(w?!!_xeUtils.default.includes(w,e.field):y?e.field:defaultFilterExportColumn(e))),T=o?(M._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(o,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=n.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=n.getColumnById(r):l&&t?o=i.find(e=>e.field===l&&e.type===t):l?o=n.getColumnByField(l):t&&(o=i.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!$||$({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(r?p:i,(e,t)=>e.visible&&(!$||$({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(T,e=>{e.children&&e.children.length||k.push(e)},{children:"childNodes"}),M.columns=k,M.colgroups=convertToRows(T),g&&(_xeUtils.default.isFunction(g)?M.filename=g({options:f,$table:n,$grid:d}):M.filename=""+g),M.filename||(M.filename=getI18n(M.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),x&&(_xeUtils.default.isFunction(x)?M.sheetName=x({options:f,$table:n,$grid:d}):M.sheetName=""+x),M.sheetName||(M.sheetName=document.title||""),!M.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(l._typeMaps),v))return(0,_log.errLog)("vxe.error.notType",[v]),"development"===process.env.NODE_ENV&&["xlsx","pdf"].includes(v)&&(0,_log.warnLog)("vxe.error.reqPlugin",[4,"plugin-export-xlsx"]),Promise.reject({status:!1});if(M.print||C&&C({options:M,$table:n,$grid:d}),!M.data)if(M.data=[],"selected"===b)-1<["html","pdf"].indexOf(v)&&t?M.data=_xeUtils.default.searchTree(n.getTableData().fullData,e=>-1<n.findRowIndexOf(F,e),Object.assign({},h,{data:"_row"})):M.data=F;else if("all"===b){if("development"!==process.env.NODE_ENV||d||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),d&&!M.remote){c=d;let e=d.computeProxyOpts;u=c.sortData;let{beforeQueryAll:t,afterQueryAll:o,ajax:l={}}=e,r=e.response||e.props||{};s=l.queryAll;let i=l.queryAllSuccess,a=l.queryAllError;if("development"!==process.env.NODE_ENV||s||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),s){let l={$table:n,$grid:d,sort:u.length?u[0]:{},sorts:u,filters:c.filterData,form:c.formData,options:M};return Promise.resolve((t||s)(l)).then(e=>{var t=r.list;return M.data=(t?_xeUtils.default.isFunction(t)?t({data:e,$grid:d}):_xeUtils.default.get(e,t):e)||[],o&&o(l),i&&i(Object.assign(Object.assign({},l),{response:e})),handleExport(n,M)}).catch(e=>{a&&a(Object.assign(Object.assign({},l),{response:e}))})}}}else"current"===b&&(M.data=a);return handleExport(n,M)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;return l&&l({options:t,$table:this}),handleFileImport(this,e,t)},_importData(e){var t=this.importOpts;let l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:o,afterImportMethod:r}=l;return o&&o({options:l,$table:this}),readLocalFile(l).catch(e=>(r&&r({status:!1,options:l,$table:this}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(this,e,l)})},_saveFile(e){return saveLocalFile(e)},_readFile(e){return readLocalFile(e)},_print(e){let l=this;var t=l.$xeGrid;let o=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});e=o.sheetName;let r="",i=(r=(r=e?_xeUtils.default.isFunction(e)?e({options:o,$table:l,$grid:t}):""+e:r)||document.title||"",o.beforePrintMethod),a=o.html||o.content;return new Promise((e,t)=>{_ui.VxeUI.print?a?e(_ui.VxeUI.print({title:r,html:a,customStyle:o.style,beforeMethod:i?({html:e})=>i({html:e,content:e,options:o,$table:l}):void 0})):e(l.exportData(o).then(({content:e})=>_ui.VxeUI.print({title:r,html:e,customStyle:o.style,beforeMethod:i?({html:e})=>i({html:e,content:e,options:o,$table:l}):void 0}))):t({status:!1})})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var t=this.importOpts,e=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(t._typeMaps),modes:["insertTop","covering"]},e,t),t=e.types||[],l=e.modes||[];!this.getTreeStatus()?(this.importConfig||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=t.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=l.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(this.importStore,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(this.importParams,e),l.some(e=>e.value===this.importParams.mode)||(this.importParams.mode=l[0].value),this.initStore.import=!0):e.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.exportOpts;return this.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,Object.assign({},t,e))},_closePrint:handleCloseExport,_openPrint(e){var t=this.printOpts;return this.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,Object.assign({},t,e),!0)}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.readLocalFile=readLocalFile,exports.saveLocalFile=saveLocalFile;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../../ui"),_util=require("../../src/util"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_util2=require("./util"),_log=require("../../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer}=_ui.VxeUI,htmlCellElem,fileForm,fileInput,csvBOM="\ufeff",enterSymbol="\r\n";function hasTreeChildren(e,t){e=e.computeTreeOpts,e=e.children||e.childrenField;return t[e]&&t[e].length}function getSeq(e,t,l,o,r,i){var a=e.computeSeqOpts.seqMethod||r.seqMethod;return a?a({row:l,rowIndex:e.getRowIndex(l),$rowIndex:o,column:r,columnIndex:e.getColumnIndex(r),$columnIndex:i}):t}function defaultFilterExportColumn(e){return e.field||-1<["seq","checkbox","radio"].indexOf(e.type)}function toTableBorder(e){return!0===e?"full":e||"default"}function toBooleanValue(e){return _xeUtils.default.isBoolean(e)?e?"TRUE":"FALSE":e}let toStringValue=e=>(0,_utils.eqEmptyValue)(e)?"":""+e;function getBodyLabelData(c,u,p,e){let{isAllExpand:a,mode:h}=u;var t=c.treeConfig;let m=c.computeRadioOpts,f=c.computeCheckboxOpts;var l=c.computeTreeOpts;let g=c.computeColumnOpts;if(htmlCellElem=htmlCellElem||document.createElement("div"),t){t=l.children||l.childrenField;let r=[],i=new Map;return _xeUtils.default.eachTree(e,(e,n,t,s,l,o)=>{let d=e._row||e;e=l&&l._row?l._row:l;if(a||!e||i.has(e)&&c.isTreeExpandByRow(e)){l=hasTreeChildren(c,d);let a={_row:d,_level:o.length-1,_hasChild:l,_expand:l&&c.isTreeExpandByRow(d)};p.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||g.exportMethod;if(r=(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)||g.exportMethod)l=r({$table:c,row:d,column:e,options:u});else switch(e.type){case"seq":var i=s.map((e,t)=>t%2==0?Number(e)+1:".").join("");l="all"===h?i:getSeq(c,i,d,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(d)),a._checkboxLabel=f.labelField?_xeUtils.default.get(d,f.labelField):"",a._checkboxDisabled=f.checkMethod&&!f.checkMethod({row:d});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(d)),a._radioLabel=m.labelField?_xeUtils.default.get(d,m.labelField):"",a._radioDisabled=m.checkMethod&&!m.checkMethod({row:d});break;default:u.original?l=(0,_util.getCellValue)(d,e):(l=c.getCellLabel(d,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(i=c.getCellElement(d,e))&&!(0,_dom.hasClass)(i,"is--progress")&&(l=i.innerText.trim()))}a[e.id]=toStringValue(l)}),i.set(d,1),r.push(Object.assign(a,d))}},{children:t}),r}return e.map((a,n)=>{let s={_row:a};return p.forEach((e,t)=>{let l="";var o=e.editRender||e.cellRender;let r=e.exportMethod||g.exportMethod;if(r=!r&&o&&o.name&&(o=renderer.get(o.name))?o.tableExportMethod||o.exportMethod:r)l=r({$table:c,row:a,column:e,options:u});else switch(e.type){case"seq":var i=n+1;l="all"===h?i:getSeq(c,i,a,n,e,t);break;case"checkbox":l=toBooleanValue(c.isCheckedByCheckboxRow(a)),s._checkboxLabel=f.labelField?_xeUtils.default.get(a,f.labelField):"",s._checkboxDisabled=f.checkMethod&&!f.checkMethod({row:a});break;case"radio":l=toBooleanValue(c.isCheckedByRadioRow(a)),s._radioLabel=m.labelField?_xeUtils.default.get(a,m.labelField):"",s._radioDisabled=m.checkMethod&&!m.checkMethod({row:a});break;default:u.original?l=(0,_util.getCellValue)(a,e):(l=c.getCellLabel(a,e),"html"===e.type?(htmlCellElem.innerHTML=l,l=htmlCellElem.innerText.trim()):(i=c.getCellElement(a,e))&&!(0,_dom.hasClass)(i,"is--progress")&&(l=i.innerText.trim()))}s[e.id]=toStringValue(l)}),s})}function getExportData(e,t){let{columns:l,dataFilterMethod:o}=t,r=t.data;return getBodyLabelData(e,t,l,r=o?r.filter((e,t)=>o({row:e,$rowIndex:t})):r)}function getBooleanValue(e){return"TRUE"===e||"true"===e||!0===e}function getHeaderTitle(e,t,l){var o=e.computeColumnOpts,o=l.headerExportMethod||o.headerExportMethod;return o?o({column:l,options:t,$table:e}):(t.isTitle?l.getTitle():l.field)||""}function getFooterCellValue(e,t,l,o){var r=e.computeColumnOpts,i=o.editRender||o.cellRender;let a=o.footerExportMethod;a=(a=!a&&i&&i.name&&(i=renderer.get(i.name))?i.tableFooterExportMethod||i.footerExportMethod||i.footerCellExportMethod:a)||r.footerExportMethod;i=e.getVTColumnIndex(o);return a?a({$table:e,items:l,itemIndex:i,row:l,_columnIndex:i,column:o,options:t}):_xeUtils.default.isArray(l)?_xeUtils.default.toValueString(l[i]):_xeUtils.default.get(l,o.field)}function getFooterData(e,t){let l=e.footerFilterMethod;return l?t.filter((e,t)=>l({items:e,$rowIndex:t})):t}function getCsvCellTypeLabel(e,t){if(t){if("seq"===e.type)return` `+t;switch(e.cellType){case"string":if(isNaN(t))break;return` `+t;case"number":break;default:if(12<=t.length&&!isNaN(t))return` `+t}}return t}function toTxtCellLabel(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function toCsv(l,o,e,t){var r=l;let i=csvBOM;return o.isHeader&&(i+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join(",")+enterSymbol),t.forEach(t=>{i+=e.map(e=>toTxtCellLabel(getCsvCellTypeLabel(e,t[e.id]))).join(",")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(o,t).forEach(t=>{i+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join(",")+enterSymbol})),i}function toTxt(l,o,e,t){var r=l;let i="";return o.isHeader&&(i+=e.map(e=>toTxtCellLabel(getHeaderTitle(l,o,e))).join("\t")+enterSymbol),t.forEach(t=>{i+=e.map(e=>toTxtCellLabel(t[e.id])).join("\t")+enterSymbol}),o.isFooter&&(t=r.footerTableData,getFooterData(o,t).forEach(t=>{i+=e.map(e=>toTxtCellLabel(getFooterCellValue(l,o,t,e))).join("\t")+enterSymbol})),i}function hasEllipsis(e,t,l,o){t=t[l],l=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?o:t;let r="title"===l||(!0===l||"tooltip"===l)||"ellipsis"===l;var{scrollXLoad:o,scrollYLoad:t}=e;return r=o||t?r||!0:r}function toHtml(d,n,e,t){var l=d;let{id:c,border:o,treeConfig:r,headerAlign:s,align:u,footerAlign:i,showOverflow:p,showHeaderOverflow:h}=d,{isAllSelected:m,isIndeterminate:a,mergeList:f}=l,g=d.computeTreeOpts,{print:x,isHeader:v,isFooter:b,isColgroup:_,isMerge:y,colgroups:$,original:C}=n,w="check-all",T=[`<table class="${["vxe-table","border--"+toTableBorder(o),x?"is--print":"",v?"is--header":""].filter(e=>e).join(" ")}" border="0" cellspacing="0" cellpadding="0">`,`<colgroup>${e.map(e=>`<col style="width:${e.renderWidth}px">`).join("")}</colgroup>`];v&&(T.push("<thead>"),_&&!C?$.forEach(e=>{T.push(`<tr>${e.map(t=>{var e=t.headerAlign||t.align||s||u,l=hasEllipsis(d,t,"showHeaderOverflow",h)?["col--ellipsis"]:[],o=getHeaderTitle(d,n,t);let r=0,i=0;_xeUtils.default.eachTree([t],e=>{e.childNodes&&t.childNodes.length||i++,r+=e.renderWidth},{children:"childNodes"});var a=r-i;return e&&l.push("col--"+e),"checkbox"===t.type?`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}"><div ${x?"":`style="width: ${a}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" colspan="${t._colSpan}" rowspan="${t._rowSpan}" title="${o}"><div ${x?"":`style="width: ${a}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`)}):T.push(`<tr>${e.map(e=>{var t=e.headerAlign||e.align||s||u,l=hasEllipsis(d,e,"showHeaderOverflow",h)?["col--ellipsis"]:[],o=getHeaderTitle(d,n,e);return t&&l.push("col--"+t),"checkbox"===e.type?`<th class="${l.join(" ")}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" class="${w}" ${m?"checked":""}><span>${o}</span></div></th>`:`<th class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><span>${(0,_utils.formatText)(o,!0)}</span></div></th>`}).join("")}</tr>`),T.push("</thead>")),t.length&&(T.push("<tbody>"),r?t.forEach(r=>{T.push("<tr>"+e.map(t=>{var e=t.align||u,l=hasEllipsis(d,t,"showOverflow",p)?["col--ellipsis"]:[],o=r[t.id];if(e&&l.push("col--"+e),t.treeNode){let e="";return r._hasChild&&(e=`<i class="${r._expand?"vxe-table--tree-fold-icon":"vxe-table--tree-unfold-icon"}"></i>`),l.push("vxe-table--tree-node"),"radio"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${c}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></div></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></div></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${r._level*g.indent}px"><div class="vxe-table--tree-icon-wrapper">${e}</div><div class="vxe-table--tree-cell">${o}</div></div></div></td>`}return"radio"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="radio" name="radio_${c}" ${r._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._radioLabel}</span></div></td>`:"checkbox"===t.type?`<td class="${l.join(" ")}"><div ${x?"":`style="width: ${t.renderWidth}px"`}><input type="checkbox" ${r._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${r._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${t.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}):t.forEach(s=>{T.push("<tr>"+e.map(e=>{var t=e.align||u,l=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],o=s[e.id];let r=1,i=1;if(y&&f.length){var a=d.getVTRowIndex(s._row),n=d.getVTColumnIndex(e),a=(0,_util.mergeBodyMethod)(f,a,n);if(a){var{rowspan:n,colspan:a}=a;if(!n||!a)return"";1<n&&(r=n),1<a&&(i=a)}}return t&&l.push("col--"+t),"radio"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${i}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="radio" name="radio_${c}" ${s._radioDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${s._radioLabel}</span></div></td>`:"checkbox"===e.type?`<td class="${l.join(" ")}" rowspan="${r}" colspan="${i}"><div ${x?"":`style="width: ${e.renderWidth}px"`}><input type="checkbox" ${s._checkboxDisabled?"disabled ":""}${getBooleanValue(o)?"checked":""}><span>${s._checkboxLabel}</span></div></td>`:`<td class="${l.join(" ")}" rowspan="${r}" colspan="${i}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")+"</tr>")}),T.push("</tbody>")),b&&(t=l.footerTableData,(l=getFooterData(n,t)).length)&&(T.push("<tfoot>"),l.forEach(r=>{T.push(`<tr>${e.map(e=>{var t=e.footerAlign||e.align||i||u,l=hasEllipsis(d,e,"showOverflow",p)?["col--ellipsis"]:[],o=getFooterCellValue(d,n,r,e);return t&&l.push("col--"+t),`<td class="${l.join(" ")}" title="${o}"><div ${x?"":`style="width: ${e.renderWidth}px"`}>${(0,_utils.formatText)(o,!0)}</div></td>`}).join("")}</tr>`)}),T.push("</tfoot>"));t=!m&&a?`<script>(function(){var a=document.querySelector(".${w}");if(a){a.indeterminate=true}})()</script>`:"";return T.push("</table>",t),x?T.join(""):(0,_util2.createHtmlPage)(n,T.join(""))}function toXML(l,o,e,t){var r=l;let i=['<?xml version="1.0"?>','<?mso-application progid="Excel.Sheet"?>','<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">','<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',"<Version>16.00</Version>","</DocumentProperties>",'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',"<WindowHeight>7920</WindowHeight>","<WindowWidth>21570</WindowWidth>","<WindowTopX>32767</WindowTopX>","<WindowTopY>32767</WindowTopY>","<ProtectStructure>False</ProtectStructure>","<ProtectWindows>False</ProtectWindows>","</ExcelWorkbook>",`<Worksheet ss:Name="${o.sheetName}">`,"<Table>",e.map(e=>`<Column ss:Width="${e.renderWidth}"/>`).join("")].join("");return o.isHeader&&(i+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getHeaderTitle(l,o,e)}</Data></Cell>`).join("")}</Row>`),t.forEach(t=>{i+="<Row>"+e.map(e=>`<Cell><Data ss:Type="String">${t[e.id]}</Data></Cell>`).join("")+"</Row>"}),o.isFooter&&(t=r.footerTableData,getFooterData(o,t).forEach(t=>{i+=`<Row>${e.map(e=>`<Cell><Data ss:Type="String">${getFooterCellValue(l,o,t,e)}</Data></Cell>`).join("")}</Row>`})),i+"</Table></Worksheet></Workbook>"}function getContent(e,t,l,o){if(l.length)switch(t.type){case"csv":return toCsv(e,t,l,o);case"txt":return toTxt(e,t,l,o);case"html":return toHtml(e,t,l,o);case"xml":return toXML(e,t,l,o)}return""}function saveLocalFile(e){var{filename:l,type:o,content:t}=e,l=l+"."+o;if(window.Blob){o=t instanceof Blob?t:(0,_util2.getExportBlobByContent)(_xeUtils.default.toValueString(t),e);if(navigator.msSaveBlob)navigator.msSaveBlob(o,l);else{let e=URL.createObjectURL(o),t=document.createElement("a");t.target="_blank",t.download=l,t.href=e,document.body.appendChild(t),t.click(),document.body.removeChild(t),requestAnimationFrame(()=>{t.parentNode&&t.parentNode.removeChild(t),URL.revokeObjectURL(e)})}return Promise.resolve()}return Promise.reject(new Error(getI18n("vxe.error.notExp")))}function downloadFile(e,t,l){var{filename:o,type:r,download:i}=t;if(!i)return i=(0,_util2.getExportBlobByContent)(l,t),Promise.resolve({type:r,content:l,blob:i});saveLocalFile({filename:o,type:r,content:l}).then(()=>{!1!==t.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.expSuccess"),status:"success"}))})}function clearColumnConvert(e){_xeUtils.default.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:"children"})}function handleExport(l,o){let r=l.$xeGrid,{remote:i,columns:a,colgroups:n,exportMethod:s,afterExportMethod:t}=o;return new Promise(t=>{if(i){var e={options:o,$table:l,$grid:r};t(s?s(e):e)}else{let e=getExportData(l,o);t(l.preventEvent(null,"event.export",{options:o,columns:a,colgroups:n,datas:e},()=>downloadFile(l,o,getContent(l,o,a,e))))}}).then(e=>(clearColumnConvert(a),o.print||t&&t({status:!0,options:o,$table:l,$grid:r}),Object.assign({status:!0},e))).catch(()=>{clearColumnConvert(a),o.print||t&&t({status:!1,options:o,$table:l,$grid:r});return Promise.reject({status:!1})})}function getElementsByTagName(e,t){return e.getElementsByTagName(t)}function getTxtCellKey(e){return`#${e}@`+_xeUtils.default.uniqueId()}function replaceTxtCell(e,t){return e.replace(/#\d+@\d+/g,e=>_xeUtils.default.hasOwnProp(t,e)?t[e]:e)}function getTxtCellValue(e,t){return replaceTxtCell(e,t).replace(/^"+$/g,e=>'"'.repeat(Math.ceil(e.length/2)))}function toExportField(e,t){var{fieldMaps:e,titleMaps:l}=e;return e[t]||(e=l[t])&&e.field&&(t=e.field),t}function parseCsvAndTxt(t,e,i){e=e.split(enterSymbol);let a=[],n=[];if(e.length){let o={},r=Date.now();e.forEach(e=>{if(e){let l={};e=(e=e.replace(/("")|(\n)/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=t?'"':"\n",l}).replace(/"(.*?)"/g,(e,t)=>{var l=getTxtCellKey(r);return o[l]=replaceTxtCell(t,o),l})).split(i);n.length?(e.forEach((e,t)=>{t<n.length&&(l[n[t]]=getTxtCellValue(e.trim(),o))}),a.push(l)):n=e.map(e=>toExportField(t,getTxtCellValue(e.trim(),o)))}})}return{fields:n,rows:a}}function parseCsv(e,t){return parseCsvAndTxt(e,t,",")}function parseTxt(e,t){return parseCsvAndTxt(e,t,"\t")}function parseHTML(t,e){var l,e=getElementsByTagName((new DOMParser).parseFromString(e,"text/html"),"body");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"table")).length&&(l=getElementsByTagName(e[0],"thead")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{_xeUtils.default.arrayEach(getElementsByTagName(e,"th"),e=>{r.push(toExportField(t,e.textContent||""))})}),(l=getElementsByTagName(e[0],"tbody")).length)&&_xeUtils.default.arrayEach(getElementsByTagName(l[0],"tr"),e=>{let l={};_xeUtils.default.arrayEach(getElementsByTagName(e,"td"),(e,t)=>{r[t]&&(l[r[t]]=e.textContent||"")}),o.push(l)}),{fields:r,rows:o}}function parseXML(t,e){var e=getElementsByTagName((new DOMParser).parseFromString(e,"application/xml"),"Worksheet");let o=[],r=[];return e.length&&(e=getElementsByTagName(e[0],"Table")).length&&(e=getElementsByTagName(e[0],"Row")).length&&(_xeUtils.default.arrayEach(getElementsByTagName(e[0],"Cell"),e=>{r.push(toExportField(t,e.textContent||""))}),_xeUtils.default.arrayEach(e,(e,t)=>{if(t){let l={};t=getElementsByTagName(e,"Cell");_xeUtils.default.arrayEach(t,(e,t)=>{r[t]&&(l[r[t]]=e.textContent)}),o.push(l)}})),{fields:r,rows:o}}function handleImport(l,e,o){let{tableFullColumn:t,_importResolve:r,_importReject:i}=l,a={fields:[],rows:[]},n={},s={};t.forEach(e=>{var t=e.field,l=e.getTitle();t&&(n[t]=e),l&&(s[e.getTitle()]=e)});var d={fieldMaps:n,titleMaps:s};switch(o.type){case"csv":a=parseCsv(d,e);break;case"txt":a=parseTxt(d,e);break;case"html":a=parseHTML(d,e);break;case"xml":a=parseXML(d,e)}let{fields:c,rows:u}=a;c.some(e=>n[e]||s[e])?l.createData(u).then(e=>{let t;return"insert"!==o.mode&&"insertBottom"!==o.mode||(t=l.insertAt(e,-1)),t="insertTop"===o.mode?l.insert(e):l.reloadData(e),!1!==o.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.table.impSuccess",[u.length]),status:"success"})),t.then(()=>{r&&r({status:!0})})}):!1!==o.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.impFields"),status:"error"}),i)&&i({status:!1})}function handleFileImport(i,a,n){let s=i;var e=i.computeImportOpts;let{importMethod:d,afterImportMethod:t}=n,{type:c,filename:u}=(0,_utils.parseFile)(a);return d||_xeUtils.default.includes(_xeUtils.default.keys(e._typeMaps),c)?new Promise((t,l)=>{let e=e=>{t(e),i._importResolve=null,i._importReject=null},o=e=>{l(e),i._importResolve=null,i._importReject=null};if(i._importResolve=e,i._importReject=o,window.FileReader){let t=Object.assign({mode:"insertTop"},n,{type:c,filename:u});var r;t.remote?d?Promise.resolve(d({file:a,options:t,$table:i})).then(()=>{e({status:!0})}).catch(()=>{e({status:!0})}):e({status:!0}):(r=s.tableFullColumn,i.preventEvent(null,"event.import",{file:a,options:t,columns:r},()=>{var e=new FileReader;e.onerror=()=>{(0,_log.errLog)("vxe.error.notType",[c]),o({status:!1})},e.onload=e=>{handleImport(i,e.target.result,t)},e.readAsText(a,t.encoding||"UTF-8")}))}else(0,_log.errLog)("vxe.error.notExp"),e({status:!0})}).then(()=>{t&&t({status:!0,options:n,$table:i})}).catch(e=>(t&&t({status:!1,options:n,$table:i}),Promise.reject(e))):(!1!==n.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[c]),status:"error"})),Promise.reject({status:!1}))}function handleCloseExport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_EXPORT_MODAL"):Promise.resolve()}function readLocalFile(s={}){return fileForm||(fileForm=document.createElement("form"),fileInput=document.createElement("input"),fileForm.className="vxe-table--file-form",fileInput.name="file",fileInput.type="file",fileForm.appendChild(fileInput),document.body.appendChild(fileForm)),new Promise((r,i)=>{let a=s.types||[],n=!a.length||a.some(e=>"*"===e);fileInput.multiple=!!s.multiple,fileInput.accept=n?"":"."+a.join(", ."),fileInput.onchange=e=>{var t=e.target.files,e=t[0];let l;if(!n)for(let e=0;e<t.length;e++){var o=(0,_utils.parseFile)(t[e]).type;if(!_xeUtils.default.includes(a,o)){l=o;break}}l?(!1!==s.message&&(_ui.VxeUI.modal||(0,_log.errLog)("vxe.error.reqModule",["Modal"]),_ui.VxeUI.modal.message({content:getI18n("vxe.error.notType",[l]),status:"error"})),i({status:!1,files:t,file:e})):r({status:!0,files:t,file:e})},fileForm.reset(),fileInput.click()})}function handleFilterColumns(e,o,t){return t.some(e=>{var t,l;return(0,_util.isColumnInfo)(e)?o.id===e.id:_xeUtils.default.isString(e)?o.field===e:(t=e.id||e.colId,l=e.type,e=e.field,t?o.id===t:e&&l?o.field===e&&o.type===l:e?o.field===e:!!l&&o.type===l)})}function handleFilterFields(e,t,l,o){return(!o||!_xeUtils.default.includes(o,t.field))&&(l?!!_xeUtils.default.includes(l,t.field):e.original?t.field:defaultFilterExportColumn(t))}function handleExportAndPrint(e,t,l){var o=e.$xeGrid,{treeConfig:r,showHeader:i,showFooter:a}=e,{initStore:n,mergeList:s,mergeFooterList:d,isGroup:c,footerTableData:u,exportStore:p,exportParams:h}=e,m=e.collectColumn,f=e.computeExportOpts,g=e.computeCustomOpts,x=e.getCheckboxRecords(),v=o?o.computeProxyOpts:{},u=!!u.length,s=!(!s.length&&!d.length);let b=Object.assign({message:!0,isHeader:i,isTitle:i,isFooter:a,isColgroup:c,isMerge:s,useStyle:!0,current:"current",modes:(v.ajax&&v.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"])},t);d=b.types||_xeUtils.default.keys(f._typeMaps),i=b.modes||[];let _=g.checkMethod;a=m.slice(0);let{columns:y,excludeFields:$,includeFields:C}=b;v=d.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),t=i.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.export.modes."+e)});_xeUtils.default.eachTree(a,(e,t,l,o,r)=>{var i=e.children&&e.children.length;let a=!1;a=y&&y.length?handleFilterColumns(b,e,y):$||C?handleFilterFields(b,e,C,$):e.visible&&(i||defaultFilterExportColumn(e)),e.checked=a,e.halfChecked=!1,e.disabled=r&&r.disabled||!!_&&!_({column:e})}),Object.assign(p,{columns:a,typeList:v,modeList:t,hasFooter:u,hasMerge:s,hasTree:r,isPrint:l,hasColgroup:c,visible:!0}),Object.assign(h,{mode:x.length?"selected":"current"},b);let{filename:w,sheetName:T,mode:E,type:F}=h;return w&&(_xeUtils.default.isFunction(w)?h.filename=w({options:b,$table:e,$grid:o}):h.filename=""+w),T&&(_xeUtils.default.isFunction(T)?h.sheetName=T({options:b,$table:e,$grid:o}):h.sheetName=""+T),t.some(e=>e.value===E)||(h.mode=t[0].value),v.some(e=>e.value===F)||(h.type=v[0].value),n.export=!0,e.$nextTick()}let getConvertColumns=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...getConvertColumns(e.childNodes))):t.push(e)}),t},convertToRows=e=>{let t=1,o=(l,e)=>{if(e&&(l._level=e._level+1,t<l._level)&&(t=l._level),l.childNodes&&l.childNodes.length){let t=0;l.childNodes.forEach(e=>{o(e,l),t+=e._colSpan}),l._colSpan=t}else l._colSpan=1},l=(e.forEach(e=>{e._level=1,o(e)}),[]);for(let e=0;e<t;e++)l.push([]);return getConvertColumns(e).forEach(e=>{e.childNodes&&e.childNodes.length?e._rowSpan=1:e._rowSpan=t-e._level+1,l[e._level-1].push(e)}),l};var _default=exports.default={methods:{_exportData(e){let n=this;var t=n,s=n,l=n;let d=n.$xeGrid;var{treeConfig:t,showHeader:c,showFooter:u}=t,{mergeList:s,mergeFooterList:o,isGroup:r}=s;let{tableFullColumn:i,afterFullData:a,collectColumn:p}=l;var l=n.computeExportOpts,h=n.computeTreeOpts;let m=d?d.computeProxyOpts:{};s=!(!s.length&&!o.length);let f=Object.assign({message:!0,isHeader:c,isTitle:c,isFooter:u,isColgroup:r,isMerge:s,useStyle:!0,current:"current",modes:(m.ajax&&m.ajax.queryAll?["all"]:[]).concat(["current","selected","empty"]),download:!0,type:"csv"},l,e),{filename:g,sheetName:x,type:v,mode:b,columns:_,original:y,columnFilterMethod:$,beforeExportMethod:C,includeFields:w,excludeFields:T}=f,E=[],F=n.getCheckboxRecords();b=b||(F.length?"selected":"current");o=_&&_.length?_:_xeUtils.default.searchTree(p,e=>{var t=e.children&&e.children.length;let l=!1;return l=_&&_.length?handleFilterColumns(f,e,_):T||w?handleFilterFields(f,e,w,T):e.visible&&(t||defaultFilterExportColumn(e))},{children:"children",mapChildren:"childNodes",original:!0});let M=Object.assign({},f,{filename:"",sheetName:""}),k=(o||$||(M.columnFilterMethod=({column:e})=>(!T||!_xeUtils.default.includes(T,e.field))&&(w?!!_xeUtils.default.includes(w,e.field):y?e.field:defaultFilterExportColumn(e))),E=o?(M._isCustomColumn=!0,_xeUtils.default.searchTree(_xeUtils.default.mapTree(o,e=>{let o;if(e){if((0,_util.isColumnInfo)(e))o=e;else if(_xeUtils.default.isString(e))o=n.getColumnByField(e);else{var r=e.id||e.colId;let t=e.type,l=e.field;r?o=n.getColumnById(r):l&&t?o=i.find(e=>e.field===l&&e.type===t):l?o=n.getColumnByField(l):t&&(o=i.find(e=>e.type===t))}return o||{}}},{children:"childNodes",mapChildren:"_children"}),(e,t)=>(0,_util.isColumnInfo)(e)&&(!$||$({column:e,$columnIndex:t})),{children:"_children",mapChildren:"childNodes",original:!0})):_xeUtils.default.searchTree(r?p:i,(e,t)=>e.visible&&(!$||$({column:e,$columnIndex:t})),{children:"children",mapChildren:"childNodes",original:!0}),[]);if(_xeUtils.default.eachTree(E,e=>{e.children&&e.children.length||k.push(e)},{children:"childNodes"}),M.columns=k,M.colgroups=convertToRows(E),g&&(_xeUtils.default.isFunction(g)?M.filename=g({options:f,$table:n,$grid:d}):M.filename=""+g),M.filename||(M.filename=getI18n(M.original?"vxe.table.expOriginFilename":"vxe.table.expFilename",[_xeUtils.default.toDateString(Date.now(),"yyyyMMddHHmmss")])),x&&(_xeUtils.default.isFunction(x)?M.sheetName=x({options:f,$table:n,$grid:d}):M.sheetName=""+x),M.sheetName||(M.sheetName=document.title||""),!M.exportMethod&&!_xeUtils.default.includes(_xeUtils.default.keys(l._typeMaps),v))return(0,_log.errLog)("vxe.error.notType",[v]),"development"===process.env.NODE_ENV&&["xlsx","pdf"].includes(v)&&(0,_log.warnLog)("vxe.error.reqPlugin",[4,"plugin-export-xlsx"]),Promise.reject({status:!1});if(M.print||C&&C({options:M,$table:n,$grid:d}),!M.data)if(M.data=[],"selected"===b)-1<["html","pdf"].indexOf(v)&&t?M.data=_xeUtils.default.searchTree(n.getTableData().fullData,e=>-1<n.findRowIndexOf(F,e),Object.assign({},h,{data:"_row"})):M.data=F;else if("all"===b){if("development"!==process.env.NODE_ENV||d||(0,_log.warnLog)("vxe.error.errProp",["all","mode=current,selected"]),d&&!M.remote){c=d;let e=d.computeProxyOpts;u=c.sortData;let{beforeQueryAll:t,afterQueryAll:o,ajax:l={}}=e,r=e.response||e.props||{};s=l.queryAll;let i=l.queryAllSuccess,a=l.queryAllError;if("development"!==process.env.NODE_ENV||s||(0,_log.warnLog)("vxe.error.notFunc",["proxy-config.ajax.queryAll"]),s){let l={$table:n,$grid:d,sort:u.length?u[0]:{},sorts:u,filters:c.filterData,form:c.formData,options:M};return Promise.resolve((t||s)(l)).then(e=>{var t=r.list;return M.data=(t?_xeUtils.default.isFunction(t)?t({data:e,$grid:d}):_xeUtils.default.get(e,t):e)||[],o&&o(l),i&&i(Object.assign(Object.assign({},l),{response:e})),handleExport(n,M)}).catch(e=>{a&&a(Object.assign(Object.assign({},l),{response:e}))})}}}else"current"===b&&(M.data=a);return handleExport(n,M)},_importByFile(e,t){var t=Object.assign({},t),l=t.beforeImportMethod;return l&&l({options:t,$table:this}),handleFileImport(this,e,t)},_importData(e){var t=this.importOpts;let l=Object.assign({types:_xeUtils.default.keys(t._typeMaps)},t,e),{beforeImportMethod:o,afterImportMethod:r}=l;return o&&o({options:l,$table:this}),readLocalFile(l).catch(e=>(r&&r({status:!1,options:l,$table:this}),Promise.reject(e))).then(e=>{e=e.file;return handleFileImport(this,e,l)})},_saveFile(e){return saveLocalFile(e)},_readFile(e){return readLocalFile(e)},_print(e){let l=this;var t=l.$xeGrid;let o=Object.assign({original:!1},this.printOpts,e,{type:"html",download:!1,remote:!1,print:!0});e=o.sheetName;let r="",i=(r=(r=e?_xeUtils.default.isFunction(e)?e({options:o,$table:l,$grid:t}):""+e:r)||document.title||"",o.beforePrintMethod),a=o.html||o.content;return new Promise((e,t)=>{_ui.VxeUI.print?a?e(_ui.VxeUI.print({title:r,html:a,customStyle:o.style,beforeMethod:i?({html:e})=>i({html:e,content:e,options:o,$table:l}):void 0})):e(l.exportData(o).then(({content:e})=>_ui.VxeUI.print({title:r,html:e,customStyle:o.style,beforeMethod:i?({html:e})=>i({html:e,content:e,options:o,$table:l}):void 0}))):t({status:!1})})},_getPrintHtml(e){var t=this.computePrintOpts,t=Object.assign({original:!1},t,e,{type:"html",download:!1,remote:!1,print:!0});return this.exportData(t).then(({content:e})=>({html:e}))},_closeImport(){return _ui.VxeUI.modal?_ui.VxeUI.modal.close("VXE_IMPORT_MODAL"):Promise.resolve()},_openImport(e){var t=this.importOpts,e=Object.assign({mode:"insertTop",message:!0,types:_xeUtils.default.keys(t._typeMaps),modes:["insertTop","covering"]},e,t),t=e.types||[],l=e.modes||[];!this.getTreeStatus()?(this.importConfig||(0,_log.errLog)("vxe.error.reqProp",["import-config"]),t=t.map(e=>({value:e,label:getI18n("vxe.export.types."+e)})),l=l.map(e=>e&&e.value?{value:e.value,label:e.label||e.value}:{value:e,label:getI18n("vxe.import.modes."+e)}),Object.assign(this.importStore,{file:null,type:"",filename:"",modeList:l,typeList:t,visible:!0}),Object.assign(this.importParams,e),l.some(e=>e.value===this.importParams.mode)||(this.importParams.mode=l[0].value),this.initStore.import=!0):e.message&&_ui.VxeUI.modal.message({content:getI18n("vxe.error.treeNotImp"),status:"error"})},_closeExport:handleCloseExport,_openExport(e){var t=this.exportOpts;return this.exportConfig||(0,_log.errLog)("vxe.error.reqProp",["export-config"]),handleExportAndPrint(this,Object.assign({},t,e))},_closePrint:handleCloseExport,_openPrint(e){var t=this.printOpts;return this.printConfig||(0,_log.errLog)("vxe.error.reqProp",["print-config"]),handleExportAndPrint(this,Object.assign({},t,e),!0)}}};
@@ -324,28 +324,47 @@ var _default = exports.default = {
324
324
  highlightCurrentColumn
325
325
  } = props;
326
326
  const rowOpts = $xeTable.computeRowOpts;
327
+ const currentRowOpts = $xeTable.computeCurrentRowOpts;
327
328
  const columnOpts = $xeTable.computeColumnOpts;
328
- handleMoveSelected($xeTable, evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow);
329
- // 当前行按键上下移动
330
- if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
331
- $xeTable.moveCurrentRow(isUpArrow, isDwArrow, evnt);
329
+ const currentColumnOpts = $xeTable.computeCurrentColumnOpts;
330
+ const params = handleMoveSelected($xeTable, evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow);
331
+ if (rowOpts.isCurrent || highlightCurrentRow) {
332
+ if (currentRowOpts.isFollowSelected) {
333
+ $xeTable.triggerCurrentRowEvent(evnt, params);
334
+ } else {
335
+ // 当前行按键上下移动
336
+ if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
337
+ $xeTable.moveCurrentRow(isUpArrow, isDwArrow, evnt);
338
+ }
339
+ }
332
340
  }
333
- // 当前行按键左右移动
334
- if ((isLeftArrow || isRightArrow) && (columnOpts.isCurrent || highlightCurrentColumn)) {
335
- $xeTable.moveCurrentColumn(isLeftArrow, isRightArrow, evnt);
341
+ if (columnOpts.isCurrent || highlightCurrentColumn) {
342
+ if (currentColumnOpts.isFollowSelected) {
343
+ $xeTable.triggerCurrentColumnEvent(evnt, params);
344
+ } else {
345
+ // 当前行按键左右移动
346
+ if ((isLeftArrow || isRightArrow) && (columnOpts.isCurrent || highlightCurrentColumn)) {
347
+ $xeTable.moveCurrentColumn(isLeftArrow, isRightArrow, evnt);
348
+ }
349
+ }
336
350
  }
337
351
  },
338
352
  moveEnterSelected(args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt) {
339
353
  const $xeTable = this;
354
+ const props = $xeTable;
355
+ const {
356
+ highlightCurrentRow,
357
+ highlightCurrentColumn
358
+ } = props;
340
359
  const rowOpts = $xeTable.computeRowOpts;
341
360
  const currentRowOpts = $xeTable.computeCurrentRowOpts;
342
361
  const columnOpts = $xeTable.computeColumnOpts;
343
362
  const currentColumnOpts = $xeTable.computeCurrentColumnOpts;
344
363
  const params = handleMoveSelected($xeTable, evnt, args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow);
345
- if (rowOpts.isCurrent && currentRowOpts.isFollowSelected) {
364
+ if ((rowOpts.isCurrent || highlightCurrentRow) && currentRowOpts.isFollowSelected) {
346
365
  $xeTable.triggerCurrentRowEvent(evnt, params);
347
366
  }
348
- if (columnOpts.isCurrent && currentColumnOpts.isFollowSelected) {
367
+ if ((columnOpts.isCurrent || highlightCurrentColumn) && currentColumnOpts.isFollowSelected) {
349
368
  $xeTable.triggerCurrentColumnEvent(evnt, params);
350
369
  }
351
370
  },
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,i=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(i&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,i&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}function getCheckboxRangeRows(t,e,l,o,r,n,i){var u=t.showOverflow,{fullAllDataRowIdData:s,isResizeCellHeight:c}=t,d=t.computeRowOpts,a=t.computeCellOpts,h=t.computeDefaultRowHeight,l=l.row;let g=0,m=[],f=0;var p=0<i,C=t.scrollYLoad,w=t.afterFullData;if(f=p?n+i:r.height-n+Math.abs(i),C){r=t.getVTRowIndex(l);if(!(c||a.height||d.height)&&u)m=p?w.slice(r,r+Math.ceil(f/h)):w.slice(r-Math.floor(f/h),r+1);else if(p)for(let e=r;e<w.length;e++){var v=w[e],x=s[t.getRowid(v)]||{};if(g+=x.resizeHeight||a.height||d.height||x.height||h,m.push(v),g>f)return m}else for(let e=r;0<=e;e--){var R=w[e],b=s[t.getRowid(R)]||{};if(g+=b.resizeHeight||a.height||d.height||b.height||h,m.push(R),g>f)return m}}else for(var T=p?"next":"previous";o&&g<f;){var I=t.getRowNode(o);I&&(m.push(I.item),g+=o.offsetHeight,o=o[T+"ElementSibling"])}return m}function handleMoveSelected(e,t,l,o,r,n,i){var{afterFullData:u,visibleColumn:s}=e;let c=Object.assign({},l);var l=e.getVTRowIndex(c.row),d=e.getVTColumnIndex(c.column);return t.preventDefault(),r&&0<l?(c.rowIndex=l-1,c.row=u[c.rowIndex]):i&&l<u.length-1?(c.rowIndex=l+1,c.row=u[c.rowIndex]):o&&d?(c.columnIndex=d-1,c.column=s[c.columnIndex]):n&&d<s.length-1&&(c.columnIndex=d+1,c.column=s[c.columnIndex]),e.scrollToRow(c.row,c.column).then(()=>{c.cell=e.getCellElement(c.row,c.column),e.handleSelected(c,t)}),c}var _default=exports.default={methods:{moveTabSelected(e,t,l){let o=this;var r=o.editConfig,{afterFullData:n,visibleColumn:i}=o,u=o.computeEditOpts,s=o.computeRowOpts,c=o.computeCurrentRowOpts,d=o.computeColumnOpts,a=o.computeCurrentColumnOpts;let h,g,m,f=Object.assign({},e);var e=o.getVTRowIndex(f.row),p=o.getVTColumnIndex(f.column),t=(l.preventDefault(),t?p<=0?0<e&&(g=e-1,h=n[g],m=i.length-1):m=p-1:p>=i.length-1?e<n.length-1&&(g=e+1,h=n[g],m=0):m=p+1,i[m]);t&&(h?(f.rowIndex=g,f.row=h):f.rowIndex=e,f.columnIndex=m,f.column=t,f.cell=o.getCellElement(f.row,f.column),s.isCurrent&&c.isFollowSelected&&o.triggerCurrentRowEvent(l,f),d.isCurrent&&a.isFollowSelected&&o.triggerCurrentColumnEvent(l,f),r?"click"!==u.trigger&&"dblclick"!==u.trigger||("row"===u.mode?o.handleEdit(f,l):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)})):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)}))},moveCurrentRow(e,t,l){let o=this;var r=o,n=o,i=o,r=r.treeConfig;let u=n.currentRow;var n=i.afterFullData,i=o.computeTreeOpts,i=i.children||i.childrenField;let s;if(u?r?({index:r,items:i}=_xeUtils.default.findTree(n,e=>e===u,{children:i}),e&&0<r?s=i[r-1]:t&&r<i.length-1&&(s=i[r+1])):(i=o.getVTRowIndex(u),e&&0<i?s=n[i-1]:t&&i<n.length-1&&(s=n[i+1])):s=n[0],s){l.preventDefault();let e={$table:o,row:s,rowIndex:o.getRowIndex(s),$rowIndex:o.getVMRowIndex(s)};o.scrollToRow(s).then(()=>o.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){let o=this;var r=o.currentColumn,n=o.visibleColumn;let i=null;if(r?(r=o.getVTColumnIndex(r),e&&0<r?i=n[r-1]:t&&r<n.length-1&&(i=n[r+1])):i=n[0],i){l.preventDefault();let e={$table:o,column:i,columnIndex:o.getColumnIndex(i),$columnIndex:o.getVMColumnIndex(i)};o.scrollToColumn(i).then(()=>o.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var i=this,{highlightCurrentRow:u,highlightCurrentColumn:s}=i,c=i.computeRowOpts,d=i.computeColumnOpts;handleMoveSelected(i,n,e,t,l,o,r),(l||r)&&(c.isCurrent||u)&&i.moveCurrentRow(l,r,n),(t||o)&&(d.isCurrent||s)&&i.moveCurrentColumn(t,o,n)},moveEnterSelected(e,t,l,o,r,n){var i=this,u=i.computeRowOpts,s=i.computeCurrentRowOpts,c=i.computeColumnOpts,d=i.computeCurrentColumnOpts,e=handleMoveSelected(i,n,e,t,l,o,r);u.isCurrent&&s.isFollowSelected&&i.triggerCurrentRowEvent(n,e),c.isCurrent&&d.isFollowSelected&&i.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){handleMoveSelected(this,n,e,t,l,o,r)},handleCellMousedownEvent(e,t){var{editConfig:l,editOpts:o,handleSelected:r,checkboxConfig:n,checkboxOpts:i,mouseConfig:u,mouseOpts:s}=this;if(u&&s.area&&this.handleCellAreaMousedownEvent)return this.handleCellAreaMousedownEvent(e,t);n&&i.range&&this.handleCheckboxRangeEvent(e,t),u&&s.selected&&(l&&"cell"!==o.mode||r(t,e))},handleCheckboxRangeEvent(e,_){let S=this;var t=S.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=_;if("checkbox"===r.type){let E=l;if(o&&"left"===r.fixed?E=o:t&&"right"===r.fixed&&(E=t),E){let t=S.$refs.refElem,u=e.clientX,s=e.clientY,c=E.querySelector(".vxe-table--checkbox-range"),d=n.parentNode,a=this.getCheckboxRecords(),h=[],g=1;l=getTargetOffset(e.target,E);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,p=E.scrollTop,i=d.offsetHeight,C=d.getBoundingClientRect(),w=s-C.y,v=null,x=!1,R=1,b=(e,t)=>{this.emitEvent("checkbox-range-"+e,{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-u,l=l-s+(E.scrollTop-p);let o=Math.abs(l),r=Math.abs(t),n=m,i=f;l<g?(n+=l)<g&&(n=g,o=m):o=Math.min(o,E.scrollHeight-m-g),t<g?(i+=t,r>f&&(i=g,r=f)):r=Math.min(r,E.clientWidth-f-g),c.style.height=o+"px",c.style.width=r+"px",c.style.left=i+"px",c.style.top=n+"px",c.style.display="block";t=getCheckboxRangeRows(this,e,_,d,C,w,l<g?-o:o);10<o&&t.length!==h.length&&(h=t,e.ctrlKey?t.forEach(e=>{S.handleBatchSelectRows([e],-1===a.indexOf(e))}):(this.setAllCheckboxRow(!1),this.handleCheckedCheckboxRow(t,!0,!1)),b("change",e))},I=()=>{clearTimeout(v),v=null},O=n=>{I(),v=setTimeout(()=>{var e,t,l,o,r;v&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=E,r=Math.ceil(50*R/i),x?t+l<o?(this.scrollTo(e,t+r),O(n),T(n)):I():t?(this.scrollTo(e,t-r),O(n),T(n)):I())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(E).boundingTop;t<l?(x=!1,R=l-t,v||O(e)):t>l+E.clientHeight?(x=!0,R=t-l-E.clientHeight,v||O(e)):v&&I(),T(e)},document.onmouseup=e=>{I(),(0,_dom.removeClass)(t,"drag--range"),c.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,b("end",e)},b("start",e)}}}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("../../src/util"),_dom=require("../../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let browseObj=_xeUtils.default.browse();function getTargetOffset(e,t){let l=0,o=0;var r,n,i=!browseObj.firefox&&(0,_dom.hasClass)(e,"vxe-checkbox--label");for(i&&(r=getComputedStyle(e),l-=_xeUtils.default.toNumber(r.paddingTop),o-=_xeUtils.default.toNumber(r.paddingLeft));e&&e!==t;)l+=e.offsetTop,o+=e.offsetLeft,e=e.offsetParent,i&&(n=getComputedStyle(e),l-=_xeUtils.default.toNumber(n.paddingTop),o-=_xeUtils.default.toNumber(n.paddingLeft));return{offsetTop:l,offsetLeft:o}}function getCheckboxRangeRows(t,e,l,o,r,n,i){var u=t.showOverflow,{fullAllDataRowIdData:s,isResizeCellHeight:c}=t,d=t.computeRowOpts,h=t.computeCellOpts,a=t.computeDefaultRowHeight,l=l.row;let g=0,m=[],f=0;var C=0<i,p=t.scrollYLoad,w=t.afterFullData;if(f=C?n+i:r.height-n+Math.abs(i),p){r=t.getVTRowIndex(l);if(!(c||h.height||d.height)&&u)m=C?w.slice(r,r+Math.ceil(f/a)):w.slice(r-Math.floor(f/a),r+1);else if(C)for(let e=r;e<w.length;e++){var v=w[e],x=s[t.getRowid(v)]||{};if(g+=x.resizeHeight||h.height||d.height||x.height||a,m.push(v),g>f)return m}else for(let e=r;0<=e;e--){var R=w[e],b=s[t.getRowid(R)]||{};if(g+=b.resizeHeight||h.height||d.height||b.height||a,m.push(R),g>f)return m}}else for(var T=C?"next":"previous";o&&g<f;){var O=t.getRowNode(o);O&&(m.push(O.item),g+=o.offsetHeight,o=o[T+"ElementSibling"])}return m}function handleMoveSelected(e,t,l,o,r,n,i){var{afterFullData:u,visibleColumn:s}=e;let c=Object.assign({},l);var l=e.getVTRowIndex(c.row),d=e.getVTColumnIndex(c.column);return t.preventDefault(),r&&0<l?(c.rowIndex=l-1,c.row=u[c.rowIndex]):i&&l<u.length-1?(c.rowIndex=l+1,c.row=u[c.rowIndex]):o&&d?(c.columnIndex=d-1,c.column=s[c.columnIndex]):n&&d<s.length-1&&(c.columnIndex=d+1,c.column=s[c.columnIndex]),e.scrollToRow(c.row,c.column).then(()=>{c.cell=e.getCellElement(c.row,c.column),e.handleSelected(c,t)}),c}var _default=exports.default={methods:{moveTabSelected(e,t,l){let o=this;var r=o.editConfig,{afterFullData:n,visibleColumn:i}=o,u=o.computeEditOpts,s=o.computeRowOpts,c=o.computeCurrentRowOpts,d=o.computeColumnOpts,h=o.computeCurrentColumnOpts;let a,g,m,f=Object.assign({},e);var e=o.getVTRowIndex(f.row),C=o.getVTColumnIndex(f.column),t=(l.preventDefault(),t?C<=0?0<e&&(g=e-1,a=n[g],m=i.length-1):m=C-1:C>=i.length-1?e<n.length-1&&(g=e+1,a=n[g],m=0):m=C+1,i[m]);t&&(a?(f.rowIndex=g,f.row=a):f.rowIndex=e,f.columnIndex=m,f.column=t,f.cell=o.getCellElement(f.row,f.column),s.isCurrent&&c.isFollowSelected&&o.triggerCurrentRowEvent(l,f),d.isCurrent&&h.isFollowSelected&&o.triggerCurrentColumnEvent(l,f),r?"click"!==u.trigger&&"dblclick"!==u.trigger||("row"===u.mode?o.handleEdit(f,l):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)})):o.scrollToRow(f.row,f.column).then(()=>{o.handleSelected(f,l)}))},moveCurrentRow(e,t,l){let o=this;var r=o,n=o,i=o,r=r.treeConfig;let u=n.currentRow;var n=i.afterFullData,i=o.computeTreeOpts,i=i.children||i.childrenField;let s;if(u?r?({index:r,items:i}=_xeUtils.default.findTree(n,e=>e===u,{children:i}),e&&0<r?s=i[r-1]:t&&r<i.length-1&&(s=i[r+1])):(i=o.getVTRowIndex(u),e&&0<i?s=n[i-1]:t&&i<n.length-1&&(s=n[i+1])):s=n[0],s){l.preventDefault();let e={$table:o,row:s,rowIndex:o.getRowIndex(s),$rowIndex:o.getVMRowIndex(s)};o.scrollToRow(s).then(()=>o.triggerCurrentRowEvent(l,e))}},moveCurrentColumn(e,t,l){let o=this;var r=o.currentColumn,n=o.visibleColumn;let i=null;if(r?(r=o.getVTColumnIndex(r),e&&0<r?i=n[r-1]:t&&r<n.length-1&&(i=n[r+1])):i=n[0],i){l.preventDefault();let e={$table:o,column:i,columnIndex:o.getColumnIndex(i),$columnIndex:o.getVMColumnIndex(i)};o.scrollToColumn(i).then(()=>o.triggerCurrentColumnEvent(l,e))}},moveArrowSelected(e,t,l,o,r,n){var i=this,{highlightCurrentRow:u,highlightCurrentColumn:s}=i,c=i.computeRowOpts,d=i.computeCurrentRowOpts,h=i.computeColumnOpts,a=i.computeCurrentColumnOpts,e=handleMoveSelected(i,n,e,t,l,o,r);(c.isCurrent||u)&&(d.isFollowSelected?i.triggerCurrentRowEvent(n,e):(l||r)&&(c.isCurrent||u)&&i.moveCurrentRow(l,r,n)),(h.isCurrent||s)&&(a.isFollowSelected?i.triggerCurrentColumnEvent(n,e):(t||o)&&(h.isCurrent||s)&&i.moveCurrentColumn(t,o,n))},moveEnterSelected(e,t,l,o,r,n){var i=this,{highlightCurrentRow:u,highlightCurrentColumn:s}=i,c=i.computeRowOpts,d=i.computeCurrentRowOpts,h=i.computeColumnOpts,a=i.computeCurrentColumnOpts,e=handleMoveSelected(i,n,e,t,l,o,r);(c.isCurrent||u)&&d.isFollowSelected&&i.triggerCurrentRowEvent(n,e),(h.isCurrent||s)&&a.isFollowSelected&&i.triggerCurrentColumnEvent(n,e)},moveSelected(e,t,l,o,r,n){handleMoveSelected(this,n,e,t,l,o,r)},handleCellMousedownEvent(e,t){var{editConfig:l,editOpts:o,handleSelected:r,checkboxConfig:n,checkboxOpts:i,mouseConfig:u,mouseOpts:s}=this;if(u&&s.area&&this.handleCellAreaMousedownEvent)return this.handleCellAreaMousedownEvent(e,t);n&&i.range&&this.handleCheckboxRangeEvent(e,t),u&&s.selected&&(l&&"cell"!==o.mode||r(t,e))},handleCheckboxRangeEvent(e,S){let _=this;var t=_.elemStore,l=(0,_util.getRefElem)(t["main-body-scroll"]),o=(0,_util.getRefElem)(t["left-body-scroll"]),t=(0,_util.getRefElem)(t["right-body-scroll"]),{column:r,cell:n}=S;if("checkbox"===r.type){let E=l;if(o&&"left"===r.fixed?E=o:t&&"right"===r.fixed&&(E=t),E){let t=_.$refs.refElem,u=e.clientX,s=e.clientY,c=E.querySelector(".vxe-table--checkbox-range"),d=n.parentNode,h=this.getCheckboxRecords(),a=[],g=1;l=getTargetOffset(e.target,E);let m=l.offsetTop+e.offsetY,f=l.offsetLeft+e.offsetX,C=E.scrollTop,i=d.offsetHeight,p=d.getBoundingClientRect(),w=s-p.y,v=null,x=!1,R=1,b=(e,t)=>{this.emitEvent("checkbox-range-"+e,{records:this.getCheckboxRecords(),reserves:this.getCheckboxReserveRecords()},t)},T=e=>{var{clientX:t,clientY:l}=e,t=t-u,l=l-s+(E.scrollTop-C);let o=Math.abs(l),r=Math.abs(t),n=m,i=f;l<g?(n+=l)<g&&(n=g,o=m):o=Math.min(o,E.scrollHeight-m-g),t<g?(i+=t,r>f&&(i=g,r=f)):r=Math.min(r,E.clientWidth-f-g),c.style.height=o+"px",c.style.width=r+"px",c.style.left=i+"px",c.style.top=n+"px",c.style.display="block";t=getCheckboxRangeRows(this,e,S,d,p,w,l<g?-o:o);10<o&&t.length!==a.length&&(a=t,e.ctrlKey?t.forEach(e=>{_.handleBatchSelectRows([e],-1===h.indexOf(e))}):(this.setAllCheckboxRow(!1),this.handleCheckedCheckboxRow(t,!0,!1)),b("change",e))},O=()=>{clearTimeout(v),v=null},I=n=>{O(),v=setTimeout(()=>{var e,t,l,o,r;v&&({scrollLeft:e,scrollTop:t,clientHeight:l,scrollHeight:o}=E,r=Math.ceil(50*R/i),x?t+l<o?(this.scrollTo(e,t+r),I(n),T(n)):O():t?(this.scrollTo(e,t-r),I(n),T(n)):O())},50)};(0,_dom.addClass)(t,"drag--range"),document.onmousemove=e=>{e.preventDefault(),e.stopPropagation();var t=e.clientY,l=(0,_dom.getAbsolutePos)(E).boundingTop;t<l?(x=!1,R=l-t,v||I(e)):t>l+E.clientHeight?(x=!0,R=t-l-E.clientHeight,v||I(e)):v&&O(),T(e)},document.onmouseup=e=>{O(),(0,_dom.removeClass)(t,"drag--range"),c.removeAttribute("style"),document.onmousemove=null,document.onmouseup=null,b("end",e)},b("start",e)}}}}};
@@ -299,39 +299,33 @@ function cacheColumnMap($xeTable) {
299
299
  htmlColumn = column;
300
300
  }
301
301
  if (treeNode) {
302
- if (process.env.NODE_ENV === 'development') {
303
- if (treeNodeColumn) {
304
- (0, _log.warnLog)('vxe.error.colRepet', ['tree-node', treeNode]);
305
- }
302
+ if (treeNodeColumn) {
303
+ (0, _log.warnLog)('vxe.error.colRepet', ['tree-node', treeNode]);
306
304
  }
307
305
  if (!treeNodeColumn) {
308
306
  treeNodeColumn = column;
309
307
  }
310
308
  } else if (type === 'expand') {
311
- if (process.env.NODE_ENV === 'development') {
312
- if (expandColumn) {
313
- (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
314
- }
309
+ if (expandColumn) {
310
+ (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
315
311
  }
316
312
  if (!expandColumn) {
317
313
  expandColumn = column;
318
314
  }
319
315
  }
320
- if (process.env.NODE_ENV === 'development') {
321
- if (type === 'checkbox') {
322
- if (checkboxColumn) {
323
- (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
324
- }
325
- if (!checkboxColumn) {
326
- checkboxColumn = column;
327
- }
328
- } else if (type === 'radio') {
329
- if (radioColumn) {
330
- (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
331
- }
332
- if (!radioColumn) {
333
- radioColumn = column;
334
- }
316
+ if (type === 'checkbox') {
317
+ if (checkboxColumn) {
318
+ (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
319
+ }
320
+ if (!checkboxColumn) {
321
+ checkboxColumn = column;
322
+ }
323
+ } else if (type === 'radio') {
324
+ if (radioColumn) {
325
+ (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
326
+ }
327
+ if (!radioColumn) {
328
+ radioColumn = column;
335
329
  }
336
330
  }
337
331
  if (isAllOverflow && column.showOverflow === false) {
@@ -3107,6 +3101,7 @@ const Methods = {
3107
3101
  lastScrollTop
3108
3102
  } = internalData;
3109
3103
  const treeOpts = $xeTable.computeTreeOpts;
3104
+ const expandOpts = $xeTable.computeExpandOpts;
3110
3105
  const {
3111
3106
  transform
3112
3107
  } = treeOpts;
@@ -3194,6 +3189,9 @@ const Methods = {
3194
3189
  scrollYStore.endIndex = scrollYStore.visibleSize;
3195
3190
  }
3196
3191
  if (sYLoad) {
3192
+ if (reactData.expandColumn && expandOpts.mode !== 'fixed') {
3193
+ (0, _log.errLog)('vxe.error.notConflictProp', ['column.type="expand', 'expand-config.mode="fixed"']);
3194
+ }
3197
3195
  // if (showOverflow) {
3198
3196
  // if (!rowOpts.height) {
3199
3197
  // const errColumn = internalData.tableFullColumn.find((column: any) => column.showOverflow === false)
@@ -4228,10 +4226,14 @@ const Methods = {
4228
4226
  getCheckboxRecords(isFull) {
4229
4227
  const $xeTable = this;
4230
4228
  const props = $xeTable;
4229
+ const reactData = $xeTable;
4231
4230
  const internalData = $xeTable;
4232
4231
  const {
4233
4232
  treeConfig
4234
4233
  } = props;
4234
+ const {
4235
+ updateCheckboxFlag
4236
+ } = reactData;
4235
4237
  const {
4236
4238
  tableFullData,
4237
4239
  afterFullData,
@@ -4252,28 +4254,30 @@ const Methods = {
4252
4254
  } = checkboxOpts;
4253
4255
  const childrenField = treeOpts.children || treeOpts.childrenField;
4254
4256
  let rowList = [];
4255
- if (checkField) {
4256
- if (treeConfig) {
4257
- const currTableData = isFull ? transform ? tableFullTreeData : tableFullData : transform ? afterTreeFullData : afterFullData;
4258
- rowList = _xeUtils.default.filterTree(currTableData, row => _xeUtils.default.get(row, checkField), {
4259
- children: transform ? mapChildrenField : childrenField
4260
- });
4261
- } else {
4262
- const currTableData = isFull ? tableFullData : afterFullData;
4263
- rowList = currTableData.filter(row => _xeUtils.default.get(row, checkField));
4264
- }
4265
- } else {
4266
- _xeUtils.default.each(selectCheckboxMaps, (row, rowid) => {
4267
- if (isFull) {
4268
- if (fullDataRowIdData[rowid]) {
4269
- rowList.push(fullDataRowIdData[rowid].row);
4270
- }
4257
+ if (updateCheckboxFlag) {
4258
+ if (checkField) {
4259
+ if (treeConfig) {
4260
+ const currTableData = isFull ? transform ? tableFullTreeData : tableFullData : transform ? afterTreeFullData : afterFullData;
4261
+ rowList = _xeUtils.default.filterTree(currTableData, row => _xeUtils.default.get(row, checkField), {
4262
+ children: transform ? mapChildrenField : childrenField
4263
+ });
4271
4264
  } else {
4272
- if (afterFullRowMaps[rowid]) {
4273
- rowList.push(afterFullRowMaps[rowid]);
4274
- }
4265
+ const currTableData = isFull ? tableFullData : afterFullData;
4266
+ rowList = currTableData.filter(row => _xeUtils.default.get(row, checkField));
4275
4267
  }
4276
- });
4268
+ } else {
4269
+ _xeUtils.default.each(selectCheckboxMaps, (row, rowid) => {
4270
+ if (isFull) {
4271
+ if (fullDataRowIdData[rowid]) {
4272
+ rowList.push(fullDataRowIdData[rowid].row);
4273
+ }
4274
+ } else {
4275
+ if (afterFullRowMaps[rowid]) {
4276
+ rowList.push(afterFullRowMaps[rowid]);
4277
+ }
4278
+ }
4279
+ });
4280
+ }
4277
4281
  }
4278
4282
  return rowList;
4279
4283
  },