@fecp/mobile 1.1.31 → 1.1.33

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 (185) hide show
  1. package/es/mobile.css +9 -9
  2. package/es/packages/mobile/src/components/base/card/Card.vue.mjs +2 -2
  3. package/es/packages/mobile/src/components/dataDisplay/table/Table.vue.mjs +3 -3
  4. package/es/packages/mobile/src/components/feedback/dropdownMenu/DropdownMenu.vue.mjs +6 -2
  5. package/es/packages/mobile/src/components/form/uploader/Uploader.vue.mjs +9 -6
  6. package/lib/mobile.css +9 -9
  7. package/lib/packages/mobile/src/components/base/card/Card.vue.js +2 -2
  8. package/lib/packages/mobile/src/components/dataDisplay/table/Table.vue.js +3 -3
  9. package/lib/packages/mobile/src/components/feedback/dropdownMenu/DropdownMenu.vue.js +6 -2
  10. package/lib/packages/mobile/src/components/form/uploader/Uploader.vue.js +9 -6
  11. package/package.json +1 -1
  12. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/index.esm.mjs +0 -121
  13. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/clipboard.mjs +0 -55
  14. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/commands.mjs +0 -44
  15. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/config.mjs +0 -24
  16. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/configStore.mjs +0 -9
  17. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/core.mjs +0 -10
  18. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/dataStore.mjs +0 -4
  19. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/event.mjs +0 -151
  20. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/formats.mjs +0 -44
  21. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/hooks.mjs +0 -5
  22. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/i18n.mjs +0 -55
  23. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/i18nStore.mjs +0 -8
  24. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/icon.mjs +0 -16
  25. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/iconStore.mjs +0 -4
  26. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/interceptor.mjs +0 -49
  27. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/log.mjs +0 -17
  28. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/menus.mjs +0 -44
  29. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/permission.mjs +0 -60
  30. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/renderer.mjs +0 -34
  31. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/resize.mjs +0 -80
  32. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/store.mjs +0 -39
  33. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/theme.mjs +0 -20
  34. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/themeStore.mjs +0 -6
  35. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/useFns.mjs +0 -27
  36. package/es/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/validators.mjs +0 -5
  37. package/es/node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/floating-bubble/FloatingBubble.mjs +0 -179
  38. package/es/node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/floating-bubble/index.mjs +0 -8
  39. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/colgroup/index.mjs +0 -14
  40. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/column/index.mjs +0 -14
  41. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/components.mjs +0 -23
  42. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/grid/index.mjs +0 -16
  43. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/grid/src/grid.mjs +0 -1221
  44. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/locale/lang/zh-CN.mjs +0 -714
  45. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/index.mjs +0 -25
  46. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/custom/hook.mjs +0 -256
  47. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/custom/panel.mjs +0 -987
  48. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/edit/hook.mjs +0 -875
  49. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/export-panel.mjs +0 -478
  50. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/hook.mjs +0 -1456
  51. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/import-panel.mjs +0 -221
  52. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/util.mjs +0 -23
  53. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/filter/hook.mjs +0 -343
  54. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/filter/panel.mjs +0 -220
  55. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/keyboard/hook.mjs +0 -474
  56. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/menu/hook.mjs +0 -283
  57. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/menu/panel.mjs +0 -150
  58. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/validator/hook.mjs +0 -471
  59. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/render/index.mjs +0 -953
  60. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/body.mjs +0 -772
  61. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/cell.mjs +0 -1058
  62. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/column.mjs +0 -166
  63. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/columnInfo.mjs +0 -161
  64. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/emits.mjs +0 -97
  65. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/footer.mjs +0 -349
  66. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/group.mjs +0 -45
  67. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/header.mjs +0 -367
  68. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/props.mjs +0 -279
  69. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/table.mjs +0 -10668
  70. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/use/cell-view.mjs +0 -37
  71. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/util.mjs +0 -537
  72. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/toolbar/index.mjs +0 -12
  73. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/toolbar/src/toolbar.mjs +0 -527
  74. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/index.mjs +0 -360
  75. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/dom.mjs +0 -157
  76. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/log.mjs +0 -9
  77. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/utils.mjs +0 -49
  78. package/es/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/vn.mjs +0 -42
  79. package/es/packages/mobile/src/components/feedback/dropdownItem/DropdownItem.vue.mjs +0 -29
  80. package/es/packages/mobile/src/components/feedback/dropdownItem/index.mjs +0 -10
  81. package/es/packages/mobile/src/components/form/calendar/Calendar.vue.mjs +0 -37
  82. package/es/packages/mobile/src/components/form/calendar/index.mjs +0 -7
  83. package/es/packages/mobile/src/components/form/cascader/Cascader.vue.mjs +0 -30
  84. package/es/packages/mobile/src/components/form/cascader/index.mjs +0 -7
  85. package/es/packages/mobile/src/components/form/datePicker/DatePicker.vue.mjs +0 -31
  86. package/es/packages/mobile/src/components/form/datePicker/index.mjs +0 -10
  87. package/es/packages/mobile/src/components/form/picker/Picker.vue.mjs +0 -31
  88. package/es/packages/mobile/src/components/form/picker/index.mjs +0 -7
  89. package/es/packages/mobile/src/components/form/pickerGroup/PickerGroup.vue.mjs +0 -30
  90. package/es/packages/mobile/src/components/form/pickerGroup/index.mjs +0 -10
  91. package/es/packages/mobile/src/components/form/radio/Radio.vue.mjs +0 -27
  92. package/es/packages/mobile/src/components/form/radio/index.mjs +0 -7
  93. package/es/packages/mobile/src/components/form/timePicker/TimePicker.vue.mjs +0 -31
  94. package/es/packages/mobile/src/components/form/timePicker/index.mjs +0 -10
  95. package/es/packages/mobile/src/components/navigation/gridItem/GridItem.vue.mjs +0 -26
  96. package/es/packages/mobile/src/components/navigation/gridItem/index.mjs +0 -7
  97. package/es/packages/mobile/src/components/navigation/tab/Tab.vue.mjs +0 -28
  98. package/es/packages/mobile/src/components/navigation/tab/index.mjs +0 -7
  99. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/index.esm.js +0 -118
  100. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/clipboard.js +0 -55
  101. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/commands.js +0 -44
  102. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/config.js +0 -24
  103. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/configStore.js +0 -9
  104. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/core.js +0 -10
  105. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/dataStore.js +0 -4
  106. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/event.js +0 -151
  107. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/formats.js +0 -44
  108. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/hooks.js +0 -5
  109. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/i18n.js +0 -55
  110. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/i18nStore.js +0 -8
  111. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/icon.js +0 -16
  112. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/iconStore.js +0 -4
  113. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/interceptor.js +0 -49
  114. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/log.js +0 -17
  115. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/menus.js +0 -44
  116. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/permission.js +0 -60
  117. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/renderer.js +0 -34
  118. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/resize.js +0 -80
  119. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/store.js +0 -39
  120. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/theme.js +0 -20
  121. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/themeStore.js +0 -6
  122. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/useFns.js +0 -27
  123. package/lib/node_modules/.pnpm/@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/src/validators.js +0 -5
  124. package/lib/node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/floating-bubble/FloatingBubble.js +0 -179
  125. package/lib/node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/floating-bubble/index.js +0 -7
  126. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/colgroup/index.js +0 -15
  127. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/column/index.js +0 -15
  128. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/components.js +0 -23
  129. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/grid/index.js +0 -16
  130. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/grid/src/grid.js +0 -1221
  131. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/locale/lang/zh-CN.js +0 -714
  132. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/index.js +0 -26
  133. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/custom/hook.js +0 -257
  134. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/custom/panel.js +0 -987
  135. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/edit/hook.js +0 -876
  136. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/export-panel.js +0 -478
  137. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/hook.js +0 -1457
  138. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/import-panel.js +0 -221
  139. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/export/util.js +0 -23
  140. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/filter/hook.js +0 -344
  141. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/filter/panel.js +0 -220
  142. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/keyboard/hook.js +0 -475
  143. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/menu/hook.js +0 -284
  144. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/menu/panel.js +0 -150
  145. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/module/validator/hook.js +0 -472
  146. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/render/index.js +0 -954
  147. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/body.js +0 -772
  148. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/cell.js +0 -1058
  149. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/column.js +0 -166
  150. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/columnInfo.js +0 -161
  151. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/emits.js +0 -97
  152. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/footer.js +0 -349
  153. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/group.js +0 -45
  154. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/header.js +0 -367
  155. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/props.js +0 -279
  156. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/table.js +0 -10668
  157. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/use/cell-view.js +0 -37
  158. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/table/src/util.js +0 -537
  159. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/toolbar/index.js +0 -13
  160. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/toolbar/src/toolbar.js +0 -527
  161. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/index.js +0 -360
  162. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/dom.js +0 -157
  163. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/log.js +0 -9
  164. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/utils.js +0 -49
  165. package/lib/node_modules/.pnpm/vxe-table@4.13.27_vue@3.5.13_typescript@5.7.3_/node_modules/vxe-table/es/ui/src/vn.js +0 -42
  166. package/lib/packages/mobile/src/components/feedback/dropdownItem/DropdownItem.vue.js +0 -29
  167. package/lib/packages/mobile/src/components/feedback/dropdownItem/index.js +0 -10
  168. package/lib/packages/mobile/src/components/form/calendar/Calendar.vue.js +0 -37
  169. package/lib/packages/mobile/src/components/form/calendar/index.js +0 -7
  170. package/lib/packages/mobile/src/components/form/cascader/Cascader.vue.js +0 -30
  171. package/lib/packages/mobile/src/components/form/cascader/index.js +0 -7
  172. package/lib/packages/mobile/src/components/form/datePicker/DatePicker.vue.js +0 -31
  173. package/lib/packages/mobile/src/components/form/datePicker/index.js +0 -10
  174. package/lib/packages/mobile/src/components/form/picker/Picker.vue.js +0 -31
  175. package/lib/packages/mobile/src/components/form/picker/index.js +0 -7
  176. package/lib/packages/mobile/src/components/form/pickerGroup/PickerGroup.vue.js +0 -30
  177. package/lib/packages/mobile/src/components/form/pickerGroup/index.js +0 -10
  178. package/lib/packages/mobile/src/components/form/radio/Radio.vue.js +0 -27
  179. package/lib/packages/mobile/src/components/form/radio/index.js +0 -7
  180. package/lib/packages/mobile/src/components/form/timePicker/TimePicker.vue.js +0 -31
  181. package/lib/packages/mobile/src/components/form/timePicker/index.js +0 -10
  182. package/lib/packages/mobile/src/components/navigation/gridItem/GridItem.vue.js +0 -26
  183. package/lib/packages/mobile/src/components/navigation/gridItem/index.js +0 -7
  184. package/lib/packages/mobile/src/components/navigation/tab/Tab.vue.js +0 -28
  185. package/lib/packages/mobile/src/components/navigation/tab/index.js +0 -7
@@ -1,1457 +0,0 @@
1
- "use strict";
2
- const vue = require("vue");
3
- const index = require("../../../../../../../../../_virtual/index.js");
4
- require("../../../ui/index.js");
5
- const util = require("../../src/util.js");
6
- const utils = require("../../../ui/src/utils.js");
7
- const dom = require("../../../ui/src/dom.js");
8
- const util$1 = require("./util.js");
9
- const log = require("../../../ui/src/log.js");
10
- const index_esm = require("../../../../../../../@vxe-ui_core@4.1.3_vue@3.5.13_typescript@5.7.3_/node_modules/@vxe-ui/core/es/index.esm.js");
11
- const { getI18n, hooks, renderer } = index_esm.VxeUI;
12
- let htmlCellElem;
13
- const csvBOM = "\uFEFF";
14
- const enterSymbol = "\r\n";
15
- function defaultFilterExportColumn(column) {
16
- return column.field || ["seq", "checkbox", "radio"].indexOf(column.type) > -1;
17
- }
18
- const getConvertColumns = (columns) => {
19
- const result = [];
20
- columns.forEach((column) => {
21
- if (column.childNodes && column.childNodes.length) {
22
- result.push(column);
23
- result.push(...getConvertColumns(column.childNodes));
24
- } else {
25
- result.push(column);
26
- }
27
- });
28
- return result;
29
- };
30
- const convertToRows = (originColumns) => {
31
- let maxLevel = 1;
32
- const traverse = (column, parent) => {
33
- if (parent) {
34
- column._level = parent._level + 1;
35
- if (maxLevel < column._level) {
36
- maxLevel = column._level;
37
- }
38
- }
39
- if (column.childNodes && column.childNodes.length) {
40
- let colSpan = 0;
41
- column.childNodes.forEach((subColumn) => {
42
- traverse(subColumn, column);
43
- colSpan += subColumn._colSpan;
44
- });
45
- column._colSpan = colSpan;
46
- } else {
47
- column._colSpan = 1;
48
- }
49
- };
50
- originColumns.forEach((column) => {
51
- column._level = 1;
52
- traverse(column);
53
- });
54
- const rows = [];
55
- for (let i = 0; i < maxLevel; i++) {
56
- rows.push([]);
57
- }
58
- const allColumns = getConvertColumns(originColumns);
59
- allColumns.forEach((column) => {
60
- if (column.childNodes && column.childNodes.length) {
61
- column._rowSpan = 1;
62
- } else {
63
- column._rowSpan = maxLevel - column._level + 1;
64
- }
65
- rows[column._level - 1].push(column);
66
- });
67
- return rows;
68
- };
69
- function toTableBorder(border) {
70
- if (border === true) {
71
- return "full";
72
- }
73
- if (border) {
74
- return border;
75
- }
76
- return "default";
77
- }
78
- function getBooleanValue(cellValue) {
79
- return cellValue === "TRUE" || cellValue === "true" || cellValue === true;
80
- }
81
- function getFooterData($xeTable, opts, footerTableData) {
82
- const { footerFilterMethod } = opts;
83
- return footerFilterMethod ? footerTableData.filter((items, index2) => footerFilterMethod({ $table: $xeTable, items, $rowIndex: index2 })) : footerTableData;
84
- }
85
- function getCsvCellTypeLabel(column, cellValue) {
86
- if (cellValue) {
87
- if (column.type === "seq") {
88
- return ` ${cellValue}`;
89
- }
90
- switch (column.cellType) {
91
- case "string":
92
- if (!isNaN(cellValue)) {
93
- return ` ${cellValue}`;
94
- }
95
- break;
96
- case "number":
97
- break;
98
- default:
99
- if (cellValue.length >= 12 && !isNaN(cellValue)) {
100
- return ` ${cellValue}`;
101
- }
102
- break;
103
- }
104
- }
105
- return cellValue;
106
- }
107
- function toTxtCellLabel(val) {
108
- if (/[",\s\n]/.test(val)) {
109
- return `"${val.replace(/"/g, '""')}"`;
110
- }
111
- return val;
112
- }
113
- function getElementsByTagName(elem, qualifiedName) {
114
- return elem.getElementsByTagName(qualifiedName);
115
- }
116
- function getTxtCellKey(now) {
117
- return `#${now}@${index.default.uniqueId()}`;
118
- }
119
- function replaceTxtCell(cell, vMaps) {
120
- return cell.replace(/#\d+@\d+/g, (key) => index.default.hasOwnProp(vMaps, key) ? vMaps[key] : key);
121
- }
122
- function getTxtCellValue(val, vMaps) {
123
- const rest = replaceTxtCell(val, vMaps);
124
- return rest.replace(/^"+$/g, (qVal) => '"'.repeat(Math.ceil(qVal.length / 2)));
125
- }
126
- function toExportField(tableConf, field) {
127
- const { fieldMaps, titleMaps } = tableConf;
128
- if (!fieldMaps[field]) {
129
- const teCol = titleMaps[field];
130
- if (teCol && teCol.field) {
131
- field = teCol.field;
132
- }
133
- }
134
- return field;
135
- }
136
- function parseCsvAndTxt(tableConf, content, cellSeparator) {
137
- const list = content.split(enterSymbol);
138
- const rows = [];
139
- let fields = [];
140
- if (list.length) {
141
- const vMaps = {};
142
- const now = Date.now();
143
- list.forEach((rVal) => {
144
- if (rVal) {
145
- const item = {};
146
- rVal = rVal.replace(/("")|(\n)/g, (text, dVal) => {
147
- const key = getTxtCellKey(now);
148
- vMaps[key] = dVal ? '"' : "\n";
149
- return key;
150
- }).replace(/"(.*?)"/g, (text, cVal) => {
151
- const key = getTxtCellKey(now);
152
- vMaps[key] = replaceTxtCell(cVal, vMaps);
153
- return key;
154
- });
155
- const cells = rVal.split(cellSeparator);
156
- if (!fields.length) {
157
- fields = cells.map((val) => toExportField(tableConf, getTxtCellValue(val.trim(), vMaps)));
158
- } else {
159
- cells.forEach((val, colIndex) => {
160
- if (colIndex < fields.length) {
161
- item[fields[colIndex]] = getTxtCellValue(val.trim(), vMaps);
162
- }
163
- });
164
- rows.push(item);
165
- }
166
- }
167
- });
168
- }
169
- return { fields, rows };
170
- }
171
- function parseCsv(tableConf, content) {
172
- return parseCsvAndTxt(tableConf, content, ",");
173
- }
174
- function parseTxt(tableConf, content) {
175
- return parseCsvAndTxt(tableConf, content, " ");
176
- }
177
- function parseHTML(tableConf, content) {
178
- const domParser = new DOMParser();
179
- const xmlDoc = domParser.parseFromString(content, "text/html");
180
- const bodyNodes = getElementsByTagName(xmlDoc, "body");
181
- const rows = [];
182
- const fields = [];
183
- if (bodyNodes.length) {
184
- const tableNodes = getElementsByTagName(bodyNodes[0], "table");
185
- if (tableNodes.length) {
186
- const theadNodes = getElementsByTagName(tableNodes[0], "thead");
187
- if (theadNodes.length) {
188
- index.default.arrayEach(getElementsByTagName(theadNodes[0], "tr"), (rowNode) => {
189
- index.default.arrayEach(getElementsByTagName(rowNode, "th"), (cellNode) => {
190
- fields.push(toExportField(tableConf, cellNode.textContent || ""));
191
- });
192
- });
193
- const tbodyNodes = getElementsByTagName(tableNodes[0], "tbody");
194
- if (tbodyNodes.length) {
195
- index.default.arrayEach(getElementsByTagName(tbodyNodes[0], "tr"), (rowNode) => {
196
- const item = {};
197
- index.default.arrayEach(getElementsByTagName(rowNode, "td"), (cellNode, colIndex) => {
198
- if (fields[colIndex]) {
199
- item[fields[colIndex]] = cellNode.textContent || "";
200
- }
201
- });
202
- rows.push(item);
203
- });
204
- }
205
- }
206
- }
207
- }
208
- return { fields, rows };
209
- }
210
- function parseXML(tableConf, content) {
211
- const domParser = new DOMParser();
212
- const xmlDoc = domParser.parseFromString(content, "application/xml");
213
- const sheetNodes = getElementsByTagName(xmlDoc, "Worksheet");
214
- const rows = [];
215
- const fields = [];
216
- if (sheetNodes.length) {
217
- const tableNodes = getElementsByTagName(sheetNodes[0], "Table");
218
- if (tableNodes.length) {
219
- const rowNodes = getElementsByTagName(tableNodes[0], "Row");
220
- if (rowNodes.length) {
221
- index.default.arrayEach(getElementsByTagName(rowNodes[0], "Cell"), (cellNode) => {
222
- fields.push(toExportField(tableConf, cellNode.textContent || ""));
223
- });
224
- index.default.arrayEach(rowNodes, (rowNode, index$1) => {
225
- if (index$1) {
226
- const item = {};
227
- const cellNodes = getElementsByTagName(rowNode, "Cell");
228
- index.default.arrayEach(cellNodes, (cellNode, colIndex) => {
229
- if (fields[colIndex]) {
230
- item[fields[colIndex]] = cellNode.textContent;
231
- }
232
- });
233
- rows.push(item);
234
- }
235
- });
236
- }
237
- }
238
- }
239
- return { fields, rows };
240
- }
241
- function clearColumnConvert(columns) {
242
- index.default.eachTree(columns, (column) => {
243
- delete column._level;
244
- delete column._colSpan;
245
- delete column._rowSpan;
246
- delete column._children;
247
- delete column.childNodes;
248
- }, { children: "children" });
249
- }
250
- const tableExportMethodKeys = ["exportData", "importByFile", "importData", "saveFile", "readFile", "print", "getPrintHtml", "openImport", "closeImport", "openExport", "closeExport", "openPrint", "closePrint"];
251
- hooks.add("tableExportModule", {
252
- setupTable($xeTable) {
253
- const { props, reactData, internalData } = $xeTable;
254
- const { computeTreeOpts, computePrintOpts, computeExportOpts, computeImportOpts, computeCustomOpts, computeSeqOpts, computeRadioOpts, computeCheckboxOpts, computeColumnOpts } = $xeTable.getComputeMaps();
255
- const $xeGrid = vue.inject("$xeGrid", null);
256
- const hasTreeChildren = (row) => {
257
- const treeOpts = computeTreeOpts.value;
258
- const childrenField = treeOpts.children || treeOpts.childrenField;
259
- return row[childrenField] && row[childrenField].length;
260
- };
261
- const getSeq = (cellValue, row, $rowIndex, column, $columnIndex) => {
262
- const seqOpts = computeSeqOpts.value;
263
- const seqMethod = seqOpts.seqMethod || column.seqMethod;
264
- if (seqMethod) {
265
- return seqMethod({
266
- $table: $xeTable,
267
- row,
268
- rowIndex: $xeTable.getRowIndex(row),
269
- $rowIndex,
270
- column,
271
- columnIndex: $xeTable.getColumnIndex(column),
272
- $columnIndex
273
- });
274
- }
275
- return cellValue;
276
- };
277
- function getHeaderTitle(opts, column) {
278
- const columnOpts = computeColumnOpts.value;
279
- const headExportMethod = column.headerExportMethod || columnOpts.headerExportMethod;
280
- return headExportMethod ? headExportMethod({ column, options: opts, $table: $xeTable }) : (opts.isTitle ? column.getTitle() : column.field) || "";
281
- }
282
- const toBooleanValue = (cellValue) => {
283
- return index.default.isBoolean(cellValue) ? cellValue ? "TRUE" : "FALSE" : cellValue;
284
- };
285
- const toStringValue = (cellValue) => {
286
- return utils.eqEmptyValue(cellValue) ? "" : `${cellValue}`;
287
- };
288
- const getBodyLabelData = (opts, columns, datas) => {
289
- const { isAllExpand, mode } = opts;
290
- const { treeConfig } = props;
291
- const radioOpts = computeRadioOpts.value;
292
- const checkboxOpts = computeCheckboxOpts.value;
293
- const treeOpts = computeTreeOpts.value;
294
- const columnOpts = computeColumnOpts.value;
295
- if (!htmlCellElem) {
296
- htmlCellElem = document.createElement("div");
297
- }
298
- if (treeConfig) {
299
- const childrenField = treeOpts.children || treeOpts.childrenField;
300
- const rest = [];
301
- const expandMaps = /* @__PURE__ */ new Map();
302
- index.default.eachTree(datas, (item, $rowIndex, items, path, parent, nodes) => {
303
- const row = item._row || item;
304
- const parentRow = parent && parent._row ? parent._row : parent;
305
- if (isAllExpand || !parentRow || expandMaps.has(parentRow) && $xeTable.isTreeExpandByRow(parentRow)) {
306
- const hasRowChild = hasTreeChildren(row);
307
- const item2 = {
308
- _row: row,
309
- _level: nodes.length - 1,
310
- _hasChild: hasRowChild,
311
- _expand: hasRowChild && $xeTable.isTreeExpandByRow(row)
312
- };
313
- columns.forEach((column, $columnIndex) => {
314
- let cellValue = "";
315
- const renderOpts = column.editRender || column.cellRender;
316
- let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
317
- if (!bodyExportMethod && renderOpts && renderOpts.name) {
318
- const compConf = renderer.get(renderOpts.name);
319
- if (compConf) {
320
- bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
321
- }
322
- }
323
- if (!bodyExportMethod) {
324
- bodyExportMethod = columnOpts.exportMethod;
325
- }
326
- if (bodyExportMethod) {
327
- cellValue = bodyExportMethod({ $table: $xeTable, row, column, options: opts });
328
- } else {
329
- switch (column.type) {
330
- case "seq": {
331
- const seqVal = path.map((num, i) => i % 2 === 0 ? Number(num) + 1 : ".").join("");
332
- cellValue = mode === "all" ? seqVal : getSeq(seqVal, row, $rowIndex, column, $columnIndex);
333
- break;
334
- }
335
- case "checkbox":
336
- cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
337
- item2._checkboxLabel = checkboxOpts.labelField ? index.default.get(row, checkboxOpts.labelField) : "";
338
- item2._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({ $table: $xeTable, row });
339
- break;
340
- case "radio":
341
- cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
342
- item2._radioLabel = radioOpts.labelField ? index.default.get(row, radioOpts.labelField) : "";
343
- item2._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({ $table: $xeTable, row });
344
- break;
345
- default:
346
- if (opts.original) {
347
- cellValue = util.getCellValue(row, column);
348
- } else {
349
- cellValue = $xeTable.getCellLabel(row, column);
350
- if (column.type === "html") {
351
- htmlCellElem.innerHTML = cellValue;
352
- cellValue = htmlCellElem.innerText.trim();
353
- } else {
354
- const cell = $xeTable.getCellElement(row, column);
355
- if (cell && !dom.hasClass(cell, "is--progress")) {
356
- cellValue = cell.innerText.trim();
357
- }
358
- }
359
- }
360
- }
361
- }
362
- item2[column.id] = toStringValue(cellValue);
363
- });
364
- expandMaps.set(row, 1);
365
- rest.push(Object.assign(item2, row));
366
- }
367
- }, { children: childrenField });
368
- return rest;
369
- }
370
- return datas.map((row, $rowIndex) => {
371
- const item = {
372
- _row: row
373
- };
374
- columns.forEach((column, $columnIndex) => {
375
- let cellValue = "";
376
- const renderOpts = column.editRender || column.cellRender;
377
- let bodyExportMethod = column.exportMethod || columnOpts.exportMethod;
378
- if (!bodyExportMethod && renderOpts && renderOpts.name) {
379
- const compConf = renderer.get(renderOpts.name);
380
- if (compConf) {
381
- bodyExportMethod = compConf.tableExportMethod || compConf.exportMethod;
382
- }
383
- }
384
- if (bodyExportMethod) {
385
- cellValue = bodyExportMethod({ $table: $xeTable, row, column, options: opts });
386
- } else {
387
- switch (column.type) {
388
- case "seq": {
389
- const seqValue = $rowIndex + 1;
390
- cellValue = mode === "all" ? seqValue : getSeq(seqValue, row, $rowIndex, column, $columnIndex);
391
- break;
392
- }
393
- case "checkbox":
394
- cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
395
- item._checkboxLabel = checkboxOpts.labelField ? index.default.get(row, checkboxOpts.labelField) : "";
396
- item._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({ $table: $xeTable, row });
397
- break;
398
- case "radio":
399
- cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
400
- item._radioLabel = radioOpts.labelField ? index.default.get(row, radioOpts.labelField) : "";
401
- item._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({ $table: $xeTable, row });
402
- break;
403
- default:
404
- if (opts.original) {
405
- cellValue = util.getCellValue(row, column);
406
- } else {
407
- cellValue = $xeTable.getCellLabel(row, column);
408
- if (column.type === "html") {
409
- htmlCellElem.innerHTML = cellValue;
410
- cellValue = htmlCellElem.innerText.trim();
411
- } else {
412
- const cell = $xeTable.getCellElement(row, column);
413
- if (cell && !dom.hasClass(cell, "is--progress")) {
414
- cellValue = cell.innerText.trim();
415
- }
416
- }
417
- }
418
- }
419
- }
420
- item[column.id] = toStringValue(cellValue);
421
- });
422
- return item;
423
- });
424
- };
425
- const getExportData = (opts) => {
426
- const { columns, dataFilterMethod } = opts;
427
- let datas = opts.data;
428
- if (dataFilterMethod) {
429
- datas = datas.filter((row, index2) => dataFilterMethod({ $table: $xeTable, row, $rowIndex: index2 }));
430
- }
431
- return getBodyLabelData(opts, columns, datas);
432
- };
433
- const getFooterCellValue = (opts, row, column) => {
434
- const columnOpts = computeColumnOpts.value;
435
- const renderOpts = column.editRender || column.cellRender;
436
- let footLabelMethod = column.footerExportMethod;
437
- if (!footLabelMethod && renderOpts && renderOpts.name) {
438
- const compConf = renderer.get(renderOpts.name);
439
- if (compConf) {
440
- footLabelMethod = compConf.tableFooterExportMethod || compConf.footerExportMethod;
441
- }
442
- }
443
- if (!footLabelMethod) {
444
- footLabelMethod = columnOpts.footerExportMethod;
445
- }
446
- const _columnIndex = $xeTable.getVTColumnIndex(column);
447
- if (footLabelMethod) {
448
- return footLabelMethod({ $table: $xeTable, items: row, itemIndex: _columnIndex, row, _columnIndex, column, options: opts });
449
- }
450
- if (index.default.isArray(row)) {
451
- return index.default.toValueString(row[_columnIndex]);
452
- }
453
- return index.default.get(row, column.field);
454
- };
455
- const toCsv = ($xeTable2, opts, columns, datas) => {
456
- let content = csvBOM;
457
- if (opts.isHeader) {
458
- content += columns.map((column) => toTxtCellLabel(getHeaderTitle(opts, column))).join(",") + enterSymbol;
459
- }
460
- datas.forEach((row) => {
461
- content += columns.map((column) => toTxtCellLabel(getCsvCellTypeLabel(column, row[column.id]))).join(",") + enterSymbol;
462
- });
463
- if (opts.isFooter) {
464
- const { footerTableData } = reactData;
465
- const footers = getFooterData($xeTable2, opts, footerTableData);
466
- footers.forEach((row) => {
467
- content += columns.map((column) => toTxtCellLabel(getFooterCellValue(opts, row, column))).join(",") + enterSymbol;
468
- });
469
- }
470
- return content;
471
- };
472
- const toTxt = ($xeTable2, opts, columns, datas) => {
473
- let content = "";
474
- if (opts.isHeader) {
475
- content += columns.map((column) => toTxtCellLabel(getHeaderTitle(opts, column))).join(" ") + enterSymbol;
476
- }
477
- datas.forEach((row) => {
478
- content += columns.map((column) => toTxtCellLabel(row[column.id])).join(" ") + enterSymbol;
479
- });
480
- if (opts.isFooter) {
481
- const { footerTableData } = reactData;
482
- const footers = getFooterData($xeTable2, opts, footerTableData);
483
- footers.forEach((row) => {
484
- content += columns.map((column) => toTxtCellLabel(getFooterCellValue(opts, row, column))).join(" ") + enterSymbol;
485
- });
486
- }
487
- return content;
488
- };
489
- const hasEllipsis = (column, property, allColumnOverflow) => {
490
- const columnOverflow = column[property];
491
- const headOverflow = index.default.isUndefined(columnOverflow) || index.default.isNull(columnOverflow) ? allColumnOverflow : columnOverflow;
492
- const showEllipsis = headOverflow === "ellipsis";
493
- const showTitle = headOverflow === "title";
494
- const showTooltip = headOverflow === true || headOverflow === "tooltip";
495
- let isEllipsis = showTitle || showTooltip || showEllipsis;
496
- const { scrollXLoad, scrollYLoad } = reactData;
497
- if ((scrollXLoad || scrollYLoad) && !isEllipsis) {
498
- isEllipsis = true;
499
- }
500
- return isEllipsis;
501
- };
502
- const toHtml = (opts, columns, datas) => {
503
- const { id, border, treeConfig, headerAlign: allHeaderAlign, align: allAlign, footerAlign: allFooterAlign, showOverflow: allColumnOverflow, showHeaderOverflow: allColumnHeaderOverflow } = props;
504
- const { isAllSelected, isIndeterminate } = reactData;
505
- const { mergeBodyCellMaps } = internalData;
506
- const treeOpts = computeTreeOpts.value;
507
- const { print: isPrint, isHeader, isFooter, isColgroup, isMerge, colgroups, original } = opts;
508
- const allCls = "check-all";
509
- const clss = [
510
- "vxe-table",
511
- `border--${toTableBorder(border)}`,
512
- isPrint ? "is--print" : "",
513
- isHeader ? "is--header" : ""
514
- ].filter((cls) => cls);
515
- const tables = [
516
- `<table class="${clss.join(" ")}" border="0" cellspacing="0" cellpadding="0">`,
517
- `<colgroup>${columns.map((column) => `<col style="width:${column.renderWidth}px">`).join("")}</colgroup>`
518
- ];
519
- if (isHeader) {
520
- tables.push("<thead>");
521
- if (isColgroup && !original) {
522
- colgroups.forEach((cols) => {
523
- tables.push(`<tr>${cols.map((column) => {
524
- const headAlign = column.headerAlign || column.align || allHeaderAlign || allAlign;
525
- const classNames = hasEllipsis(column, "showHeaderOverflow", allColumnHeaderOverflow) ? ["col--ellipsis"] : [];
526
- const cellTitle = getHeaderTitle(opts, column);
527
- let childWidth = 0;
528
- let countChild = 0;
529
- index.default.eachTree([column], (item) => {
530
- if (!item.childNodes || !column.childNodes.length) {
531
- countChild++;
532
- }
533
- childWidth += item.renderWidth;
534
- }, { children: "childNodes" });
535
- const cellWidth = childWidth - countChild;
536
- if (headAlign) {
537
- classNames.push(`col--${headAlign}`);
538
- }
539
- if (column.type === "checkbox") {
540
- return `<th class="${classNames.join(" ")}" colspan="${column._colSpan}" rowspan="${column._rowSpan}"><div ${isPrint ? "" : `style="width: ${cellWidth}px"`}><input type="checkbox" class="${allCls}" ${isAllSelected ? "checked" : ""}><span>${cellTitle}</span></div></th>`;
541
- }
542
- return `<th class="${classNames.join(" ")}" colspan="${column._colSpan}" rowspan="${column._rowSpan}" title="${cellTitle}"><div ${isPrint ? "" : `style="width: ${cellWidth}px"`}><span>${utils.formatText(cellTitle, true)}</span></div></th>`;
543
- }).join("")}</tr>`);
544
- });
545
- } else {
546
- tables.push(`<tr>${columns.map((column) => {
547
- const headAlign = column.headerAlign || column.align || allHeaderAlign || allAlign;
548
- const classNames = hasEllipsis(column, "showHeaderOverflow", allColumnHeaderOverflow) ? ["col--ellipsis"] : [];
549
- const cellTitle = getHeaderTitle(opts, column);
550
- if (headAlign) {
551
- classNames.push(`col--${headAlign}`);
552
- }
553
- if (column.type === "checkbox") {
554
- return `<th class="${classNames.join(" ")}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><input type="checkbox" class="${allCls}" ${isAllSelected ? "checked" : ""}><span>${cellTitle}</span></div></th>`;
555
- }
556
- return `<th class="${classNames.join(" ")}" title="${cellTitle}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><span>${utils.formatText(cellTitle, true)}</span></div></th>`;
557
- }).join("")}</tr>`);
558
- }
559
- tables.push("</thead>");
560
- }
561
- if (datas.length) {
562
- tables.push("<tbody>");
563
- if (treeConfig) {
564
- datas.forEach((item) => {
565
- tables.push("<tr>" + columns.map((column) => {
566
- const colid = column.id;
567
- const cellAlign = column.align || allAlign;
568
- const classNames = hasEllipsis(column, "showOverflow", allColumnOverflow) ? ["col--ellipsis"] : [];
569
- const cellValue = item[colid];
570
- if (cellAlign) {
571
- classNames.push(`col--${cellAlign}`);
572
- }
573
- if (column.treeNode) {
574
- let treeIcon = "";
575
- if (item._hasChild) {
576
- treeIcon = `<i class="${item._expand ? "vxe-table--tree-fold-icon" : "vxe-table--tree-unfold-icon"}"></i>`;
577
- }
578
- classNames.push("vxe-table--tree-node");
579
- if (column.type === "radio") {
580
- return `<td class="${classNames.join(" ")}" title="${cellValue}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${item._level * treeOpts.indent}px"><div class="vxe-table--tree-icon-wrapper">${treeIcon}</div><div class="vxe-table--tree-cell"><input type="radio" name="radio_${id}" ${item._radioDisabled ? "disabled " : ""}${getBooleanValue(cellValue) ? "checked" : ""}><span>${item._radioLabel}</span></div></div></div></td>`;
581
- } else if (column.type === "checkbox") {
582
- return `<td class="${classNames.join(" ")}" title="${cellValue}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${item._level * treeOpts.indent}px"><div class="vxe-table--tree-icon-wrapper">${treeIcon}</div><div class="vxe-table--tree-cell"><input type="checkbox" ${item._checkboxDisabled ? "disabled " : ""}${getBooleanValue(cellValue) ? "checked" : ""}><span>${item._checkboxLabel}</span></div></div></div></td>`;
583
- }
584
- return `<td class="${classNames.join(" ")}" title="${cellValue}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><div class="vxe-table--tree-node-wrapper" style="padding-left: ${item._level * treeOpts.indent}px"><div class="vxe-table--tree-icon-wrapper">${treeIcon}</div><div class="vxe-table--tree-cell">${cellValue}</div></div></div></td>`;
585
- }
586
- if (column.type === "radio") {
587
- return `<td class="${classNames.join(" ")}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><input type="radio" name="radio_${id}" ${item._radioDisabled ? "disabled " : ""}${getBooleanValue(cellValue) ? "checked" : ""}><span>${item._radioLabel}</span></div></td>`;
588
- } else if (column.type === "checkbox") {
589
- return `<td class="${classNames.join(" ")}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><input type="checkbox" ${item._checkboxDisabled ? "disabled " : ""}${getBooleanValue(cellValue) ? "checked" : ""}><span>${item._checkboxLabel}</span></div></td>`;
590
- }
591
- return `<td class="${classNames.join(" ")}" title="${cellValue}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}>${utils.formatText(cellValue, true)}</div></td>`;
592
- }).join("") + "</tr>");
593
- });
594
- } else {
595
- datas.forEach((item) => {
596
- tables.push("<tr>" + columns.map((column) => {
597
- const cellAlign = column.align || allAlign;
598
- const classNames = hasEllipsis(column, "showOverflow", allColumnOverflow) ? ["col--ellipsis"] : [];
599
- const cellValue = item[column.id];
600
- let rowSpan = 1;
601
- let colSpan = 1;
602
- if (isMerge) {
603
- const _rowIndex = $xeTable.getVTRowIndex(item._row);
604
- const _columnIndex = $xeTable.getVTColumnIndex(column);
605
- const spanRest = mergeBodyCellMaps[`${_rowIndex}:${_columnIndex}`];
606
- if (spanRest) {
607
- const { rowspan, colspan } = spanRest;
608
- if (!rowspan || !colspan) {
609
- return "";
610
- }
611
- if (rowspan > 1) {
612
- rowSpan = rowspan;
613
- }
614
- if (colspan > 1) {
615
- colSpan = colspan;
616
- }
617
- }
618
- }
619
- if (cellAlign) {
620
- classNames.push(`col--${cellAlign}`);
621
- }
622
- if (column.type === "radio") {
623
- return `<td class="${classNames.join(" ")}" rowspan="${rowSpan}" colspan="${colSpan}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><input type="radio" name="radio_${id}" ${item._radioDisabled ? "disabled " : ""}${getBooleanValue(cellValue) ? "checked" : ""}><span>${item._radioLabel}</span></div></td>`;
624
- } else if (column.type === "checkbox") {
625
- return `<td class="${classNames.join(" ")}" rowspan="${rowSpan}" colspan="${colSpan}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}><input type="checkbox" ${item._checkboxDisabled ? "disabled " : ""}${getBooleanValue(cellValue) ? "checked" : ""}><span>${item._checkboxLabel}</span></div></td>`;
626
- }
627
- return `<td class="${classNames.join(" ")}" rowspan="${rowSpan}" colspan="${colSpan}" title="${cellValue}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}>${utils.formatText(cellValue, true)}</div></td>`;
628
- }).join("") + "</tr>");
629
- });
630
- }
631
- tables.push("</tbody>");
632
- }
633
- if (isFooter) {
634
- const { footerTableData } = reactData;
635
- const footers = getFooterData($xeTable, opts, footerTableData);
636
- if (footers.length) {
637
- tables.push("<tfoot>");
638
- footers.forEach((row) => {
639
- tables.push(`<tr>${columns.map((column) => {
640
- const footAlign = column.footerAlign || column.align || allFooterAlign || allAlign;
641
- const classNames = hasEllipsis(column, "showOverflow", allColumnOverflow) ? ["col--ellipsis"] : [];
642
- const cellValue = getFooterCellValue(opts, row, column);
643
- if (footAlign) {
644
- classNames.push(`col--${footAlign}`);
645
- }
646
- return `<td class="${classNames.join(" ")}" title="${cellValue}"><div ${isPrint ? "" : `style="width: ${column.renderWidth}px"`}>${utils.formatText(cellValue, true)}</div></td>`;
647
- }).join("")}</tr>`);
648
- });
649
- tables.push("</tfoot>");
650
- }
651
- }
652
- const script = !isAllSelected && isIndeterminate ? `<script>(function(){var a=document.querySelector(".${allCls}");if(a){a.indeterminate=true}})()<\/script>` : "";
653
- tables.push("</table>", script);
654
- return isPrint ? tables.join("") : util$1.createHtmlPage(opts, tables.join(""));
655
- };
656
- const toXML = (opts, columns, datas) => {
657
- let xml = [
658
- '<?xml version="1.0"?>',
659
- '<?mso-application progid="Excel.Sheet"?>',
660
- '<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">',
661
- '<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">',
662
- "<Version>16.00</Version>",
663
- "</DocumentProperties>",
664
- '<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">',
665
- "<WindowHeight>7920</WindowHeight>",
666
- "<WindowWidth>21570</WindowWidth>",
667
- "<WindowTopX>32767</WindowTopX>",
668
- "<WindowTopY>32767</WindowTopY>",
669
- "<ProtectStructure>False</ProtectStructure>",
670
- "<ProtectWindows>False</ProtectWindows>",
671
- "</ExcelWorkbook>",
672
- `<Worksheet ss:Name="${opts.sheetName}">`,
673
- "<Table>",
674
- columns.map((column) => `<Column ss:Width="${column.renderWidth}"/>`).join("")
675
- ].join("");
676
- if (opts.isHeader) {
677
- xml += `<Row>${columns.map((column) => `<Cell><Data ss:Type="String">${getHeaderTitle(opts, column)}</Data></Cell>`).join("")}</Row>`;
678
- }
679
- datas.forEach((row) => {
680
- xml += "<Row>" + columns.map((column) => `<Cell><Data ss:Type="String">${row[column.id]}</Data></Cell>`).join("") + "</Row>";
681
- });
682
- if (opts.isFooter) {
683
- const { footerTableData } = reactData;
684
- const footers = getFooterData($xeTable, opts, footerTableData);
685
- footers.forEach((row) => {
686
- xml += `<Row>${columns.map((column) => `<Cell><Data ss:Type="String">${getFooterCellValue(opts, row, column)}</Data></Cell>`).join("")}</Row>`;
687
- });
688
- }
689
- return `${xml}</Table></Worksheet></Workbook>`;
690
- };
691
- const getContent = ($xeTable2, opts, columns, datas) => {
692
- if (columns.length) {
693
- switch (opts.type) {
694
- case "csv":
695
- return toCsv($xeTable2, opts, columns, datas);
696
- case "txt":
697
- return toTxt($xeTable2, opts, columns, datas);
698
- case "html":
699
- return toHtml(opts, columns, datas);
700
- case "xml":
701
- return toXML(opts, columns, datas);
702
- }
703
- }
704
- return "";
705
- };
706
- const downloadFile = (opts, content) => {
707
- const { filename, type, download } = opts;
708
- if (!download) {
709
- const blob = util$1.getExportBlobByContent(content, opts);
710
- return Promise.resolve({ type, content, blob });
711
- }
712
- if (index_esm.VxeUI.saveFile) {
713
- index_esm.VxeUI.saveFile({ filename, type, content }).then(() => {
714
- if (opts.message !== false) {
715
- if (index_esm.VxeUI.modal) {
716
- index_esm.VxeUI.modal.message({ content: getI18n("vxe.table.expSuccess"), status: "success" });
717
- }
718
- }
719
- });
720
- }
721
- };
722
- const handleExport = (opts) => {
723
- const { remote, columns, colgroups, exportMethod, afterExportMethod } = opts;
724
- return new Promise((resolve) => {
725
- if (remote) {
726
- const params = { options: opts, $table: $xeTable, $grid: $xeGrid };
727
- resolve(exportMethod ? exportMethod(params) : params);
728
- } else {
729
- const datas = getExportData(opts);
730
- resolve($xeTable.preventEvent(null, "event.export", { options: opts, columns, colgroups, datas }, () => {
731
- return downloadFile(opts, getContent($xeTable, opts, columns, datas));
732
- }));
733
- }
734
- }).then((params) => {
735
- clearColumnConvert(columns);
736
- if (!opts.print) {
737
- if (afterExportMethod) {
738
- afterExportMethod({ status: true, options: opts, $table: $xeTable, $grid: $xeGrid });
739
- }
740
- }
741
- return Object.assign({ status: true }, params);
742
- }).catch(() => {
743
- clearColumnConvert(columns);
744
- if (!opts.print) {
745
- if (afterExportMethod) {
746
- afterExportMethod({ status: false, options: opts, $table: $xeTable, $grid: $xeGrid });
747
- }
748
- }
749
- const params = { status: false };
750
- return Promise.reject(params);
751
- });
752
- };
753
- const handleImport = (content, opts) => {
754
- const { tableFullColumn, _importResolve, _importReject } = internalData;
755
- let rest = { fields: [], rows: [] };
756
- const tableFieldMaps = {};
757
- const tableTitleMaps = {};
758
- tableFullColumn.forEach((column) => {
759
- const field = column.field;
760
- const title = column.getTitle();
761
- if (field) {
762
- tableFieldMaps[field] = column;
763
- }
764
- if (title) {
765
- tableTitleMaps[column.getTitle()] = column;
766
- }
767
- });
768
- const tableConf = {
769
- fieldMaps: tableFieldMaps,
770
- titleMaps: tableTitleMaps
771
- };
772
- switch (opts.type) {
773
- case "csv":
774
- rest = parseCsv(tableConf, content);
775
- break;
776
- case "txt":
777
- rest = parseTxt(tableConf, content);
778
- break;
779
- case "html":
780
- rest = parseHTML(tableConf, content);
781
- break;
782
- case "xml":
783
- rest = parseXML(tableConf, content);
784
- break;
785
- }
786
- const { fields, rows } = rest;
787
- const status = fields.some((field) => tableFieldMaps[field] || tableTitleMaps[field]);
788
- if (status) {
789
- $xeTable.createData(rows).then((data) => {
790
- let loadRest;
791
- if (opts.mode === "insert" || opts.mode === "insertBottom") {
792
- loadRest = $xeTable.insertAt(data, -1);
793
- }
794
- if (opts.mode === "insertTop") {
795
- loadRest = $xeTable.insert(data);
796
- } else {
797
- loadRest = $xeTable.reloadData(data);
798
- }
799
- if (opts.message !== false) {
800
- if (index_esm.VxeUI.modal) {
801
- index_esm.VxeUI.modal.message({ content: getI18n("vxe.table.impSuccess", [rows.length]), status: "success" });
802
- }
803
- }
804
- return loadRest.then(() => {
805
- if (_importResolve) {
806
- _importResolve({ status: true });
807
- }
808
- });
809
- });
810
- } else if (opts.message !== false) {
811
- if (index_esm.VxeUI.modal) {
812
- index_esm.VxeUI.modal.message({ content: getI18n("vxe.error.impFields"), status: "error" });
813
- }
814
- if (_importReject) {
815
- _importReject({ status: false });
816
- }
817
- }
818
- };
819
- const handleFileImport = (file, opts) => {
820
- const { importMethod, afterImportMethod } = opts;
821
- const { type, filename } = utils.parseFile(file);
822
- const importOpts = computeImportOpts.value;
823
- if (!importMethod && !index.default.includes(index.default.keys(importOpts._typeMaps), type)) {
824
- if (opts.message !== false) {
825
- if (index_esm.VxeUI.modal) {
826
- index_esm.VxeUI.modal.message({ content: getI18n("vxe.error.notType", [type]), status: "error" });
827
- }
828
- }
829
- const params = { status: false };
830
- return Promise.reject(params);
831
- }
832
- const rest = new Promise((resolve, reject) => {
833
- const _importResolve = (params) => {
834
- resolve(params);
835
- internalData._importResolve = null;
836
- internalData._importReject = null;
837
- };
838
- const _importReject = (params) => {
839
- reject(params);
840
- internalData._importResolve = null;
841
- internalData._importReject = null;
842
- };
843
- internalData._importResolve = _importResolve;
844
- internalData._importReject = _importReject;
845
- if (window.FileReader) {
846
- const options = Object.assign({ mode: "insertTop" }, opts, { type, filename });
847
- if (options.remote) {
848
- if (importMethod) {
849
- Promise.resolve(importMethod({ file, options, $table: $xeTable })).then(() => {
850
- _importResolve({ status: true });
851
- }).catch(() => {
852
- _importResolve({ status: true });
853
- });
854
- } else {
855
- _importResolve({ status: true });
856
- }
857
- } else {
858
- const { tableFullColumn } = internalData;
859
- $xeTable.preventEvent(null, "event.import", { file, options, columns: tableFullColumn }, () => {
860
- const reader = new FileReader();
861
- reader.onerror = () => {
862
- log.errLog("vxe.error.notType", [type]);
863
- _importReject({ status: false });
864
- };
865
- reader.onload = (e) => {
866
- handleImport(e.target.result, options);
867
- };
868
- reader.readAsText(file, options.encoding || "UTF-8");
869
- });
870
- }
871
- } else {
872
- log.errLog("vxe.error.notExp");
873
- _importResolve({ status: true });
874
- }
875
- });
876
- return rest.then(() => {
877
- if (afterImportMethod) {
878
- afterImportMethod({ status: true, options: opts, $table: $xeTable });
879
- }
880
- }).catch((e) => {
881
- if (afterImportMethod) {
882
- afterImportMethod({ status: false, options: opts, $table: $xeTable });
883
- }
884
- return Promise.reject(e);
885
- });
886
- };
887
- const handleFilterColumns = (exportOpts, column, columns) => {
888
- return columns.some((item) => {
889
- if (util.isColumnInfo(item)) {
890
- return column.id === item.id;
891
- } else if (index.default.isString(item)) {
892
- return column.field === item;
893
- } else {
894
- const colid = item.id || item.colId;
895
- const type = item.type;
896
- const field = item.field;
897
- if (colid) {
898
- return column.id === colid;
899
- } else if (field && type) {
900
- return column.field === field && column.type === type;
901
- } else if (field) {
902
- return column.field === field;
903
- } else if (type) {
904
- return column.type === type;
905
- }
906
- }
907
- return false;
908
- });
909
- };
910
- const handleFilterFields = (exportOpts, column, includeFields, excludeFields) => {
911
- if (excludeFields) {
912
- if (index.default.includes(excludeFields, column.field)) {
913
- return false;
914
- }
915
- }
916
- if (includeFields) {
917
- if (index.default.includes(includeFields, column.field)) {
918
- return true;
919
- }
920
- return false;
921
- }
922
- return exportOpts.original ? column.field : defaultFilterExportColumn(column);
923
- };
924
- const handleExportAndPrint = (options, isPrint) => {
925
- const { treeConfig, showHeader, showFooter } = props;
926
- const { initStore, isGroup, footerTableData, exportStore, exportParams } = reactData;
927
- const { collectColumn, mergeBodyList, mergeFooterList } = internalData;
928
- const exportOpts = computeExportOpts.value;
929
- const hasTree = treeConfig;
930
- const customOpts = computeCustomOpts.value;
931
- const selectRecords = $xeTable.getCheckboxRecords();
932
- const proxyOpts = $xeGrid ? $xeGrid.getComputeMaps().computeProxyOpts.value : {};
933
- const hasFooter = !!footerTableData.length;
934
- const hasMerge = !!(mergeBodyList.length || mergeFooterList.length);
935
- const defOpts = Object.assign({
936
- message: true,
937
- isHeader: showHeader,
938
- isTitle: showHeader,
939
- isFooter: showFooter,
940
- isColgroup: isGroup,
941
- isMerge: hasMerge,
942
- useStyle: true,
943
- current: "current",
944
- modes: (proxyOpts.ajax && proxyOpts.ajax.queryAll ? ["all"] : []).concat(["current", "selected", "empty"])
945
- }, options);
946
- const types = defOpts.types || index.default.keys(exportOpts._typeMaps);
947
- const modes = defOpts.modes || [];
948
- const checkMethod = customOpts.checkMethod;
949
- const exportColumns = collectColumn.slice(0);
950
- const { columns, excludeFields, includeFields } = defOpts;
951
- const typeList = types.map((value) => {
952
- return {
953
- value,
954
- label: getI18n(`vxe.export.types.${value}`)
955
- };
956
- });
957
- const modeList = modes.map((item) => {
958
- if (item && item.value) {
959
- return {
960
- value: item.value,
961
- label: item.label || item.value
962
- };
963
- }
964
- return {
965
- value: item,
966
- label: getI18n(`vxe.export.modes.${item}`)
967
- };
968
- });
969
- index.default.eachTree(exportColumns, (column, index2, items, path, parent) => {
970
- const isColGroup = column.children && column.children.length;
971
- let isChecked = false;
972
- if (columns && columns.length) {
973
- isChecked = handleFilterColumns(defOpts, column, columns);
974
- } else if (excludeFields || includeFields) {
975
- isChecked = handleFilterFields(defOpts, column, includeFields, excludeFields);
976
- } else {
977
- isChecked = column.visible && (isColGroup || defaultFilterExportColumn(column));
978
- }
979
- column.checked = isChecked;
980
- column.halfChecked = false;
981
- column.disabled = parent && parent.disabled || (checkMethod ? !checkMethod({ $table: $xeTable, column }) : false);
982
- });
983
- Object.assign(exportStore, {
984
- columns: exportColumns,
985
- typeList,
986
- modeList,
987
- hasFooter,
988
- hasMerge,
989
- hasTree,
990
- isPrint,
991
- hasColgroup: isGroup,
992
- visible: true
993
- });
994
- Object.assign(exportParams, {
995
- mode: selectRecords.length ? "selected" : "current"
996
- }, defOpts);
997
- const { filename, sheetName, mode, type } = exportParams;
998
- if (filename) {
999
- if (index.default.isFunction(filename)) {
1000
- exportParams.filename = filename({
1001
- options: defOpts,
1002
- $table: $xeTable,
1003
- $grid: $xeGrid
1004
- });
1005
- } else {
1006
- exportParams.filename = `${filename}`;
1007
- }
1008
- }
1009
- if (sheetName) {
1010
- if (index.default.isFunction(sheetName)) {
1011
- exportParams.sheetName = sheetName({
1012
- options: defOpts,
1013
- $table: $xeTable,
1014
- $grid: $xeGrid
1015
- });
1016
- } else {
1017
- exportParams.sheetName = `${sheetName}`;
1018
- }
1019
- }
1020
- if (!modeList.some((item) => item.value === mode)) {
1021
- exportParams.mode = modeList[0].value;
1022
- }
1023
- if (!typeList.some((item) => item.value === type)) {
1024
- exportParams.type = typeList[0].value;
1025
- }
1026
- initStore.export = true;
1027
- return vue.nextTick();
1028
- };
1029
- const handleCloseExport = () => {
1030
- if (index_esm.VxeUI.modal) {
1031
- return index_esm.VxeUI.modal.close("VXE_EXPORT_MODAL");
1032
- }
1033
- return Promise.resolve();
1034
- };
1035
- const exportMethods = {
1036
- /**
1037
- * 导出文件,支持 csv/html/xml/txt
1038
- * 如果是树表格,则默认是导出所有节点
1039
- * 如果是启用了虚拟滚动,则只能导出数据源,可以配合 dataFilterMethod 函数转换数据
1040
- * @param {Object} options 参数
1041
- */
1042
- exportData(options) {
1043
- const { treeConfig, showHeader, showFooter } = props;
1044
- const { isGroup } = reactData;
1045
- const { tableFullColumn, afterFullData, collectColumn, mergeBodyList, mergeFooterList } = internalData;
1046
- const exportOpts = computeExportOpts.value;
1047
- const treeOpts = computeTreeOpts.value;
1048
- const proxyOpts = $xeGrid ? $xeGrid.getComputeMaps().computeProxyOpts.value : {};
1049
- const hasMerge = !!(mergeBodyList.length || mergeFooterList.length);
1050
- const opts = Object.assign({
1051
- message: true,
1052
- isHeader: showHeader,
1053
- isTitle: showHeader,
1054
- isFooter: showFooter,
1055
- isColgroup: isGroup,
1056
- isMerge: hasMerge,
1057
- useStyle: true,
1058
- current: "current",
1059
- modes: (proxyOpts.ajax && proxyOpts.ajax.queryAll ? ["all"] : []).concat(["current", "selected", "empty"]),
1060
- download: true,
1061
- type: "csv"
1062
- // filename: '',
1063
- // sheetName: '',
1064
- // original: false,
1065
- // isAllExpand: false,
1066
- // data: null,
1067
- // remote: false,
1068
- // dataFilterMethod: null,
1069
- // footerFilterMethod: null,
1070
- // exportMethod: null,
1071
- // columnFilterMethod: null,
1072
- // beforeExportMethod: null,
1073
- // afterExportMethod: null
1074
- }, exportOpts, options);
1075
- let { filename, sheetName, type, mode, columns, original, columnFilterMethod, beforeExportMethod, includeFields, excludeFields } = opts;
1076
- let groups = [];
1077
- const selectRecords = $xeTable.getCheckboxRecords();
1078
- if (!mode) {
1079
- mode = selectRecords.length ? "selected" : "current";
1080
- }
1081
- const customCols = columns && columns.length ? columns : index.default.searchTree(collectColumn, (column) => {
1082
- const isColGroup = column.children && column.children.length;
1083
- let isChecked = false;
1084
- if (columns && columns.length) {
1085
- isChecked = handleFilterColumns(opts, column, columns);
1086
- } else if (excludeFields || includeFields) {
1087
- isChecked = handleFilterFields(opts, column, includeFields, excludeFields);
1088
- } else {
1089
- isChecked = column.visible && (isColGroup || defaultFilterExportColumn(column));
1090
- }
1091
- return isChecked;
1092
- }, { children: "children", mapChildren: "childNodes", original: true });
1093
- const handleOptions = Object.assign({}, opts, { filename: "", sheetName: "" });
1094
- if (!customCols && !columnFilterMethod) {
1095
- handleOptions.columnFilterMethod = ({ column }) => {
1096
- if (excludeFields) {
1097
- if (index.default.includes(excludeFields, column.field)) {
1098
- return false;
1099
- }
1100
- }
1101
- if (includeFields) {
1102
- if (index.default.includes(includeFields, column.field)) {
1103
- return true;
1104
- }
1105
- return false;
1106
- }
1107
- return original ? column.field : defaultFilterExportColumn(column);
1108
- };
1109
- }
1110
- if (customCols) {
1111
- handleOptions._isCustomColumn = true;
1112
- groups = index.default.searchTree(index.default.mapTree(customCols, (item) => {
1113
- let targetColumn;
1114
- if (item) {
1115
- if (util.isColumnInfo(item)) {
1116
- targetColumn = item;
1117
- } else if (index.default.isString(item)) {
1118
- targetColumn = $xeTable.getColumnByField(item);
1119
- } else {
1120
- const colid = item.id || item.colId;
1121
- const type2 = item.type;
1122
- const field = item.field;
1123
- if (colid) {
1124
- targetColumn = $xeTable.getColumnById(colid);
1125
- } else if (field && type2) {
1126
- targetColumn = tableFullColumn.find((column) => column.field === field && column.type === type2);
1127
- } else if (field) {
1128
- targetColumn = $xeTable.getColumnByField(field);
1129
- } else if (type2) {
1130
- targetColumn = tableFullColumn.find((column) => column.type === type2);
1131
- }
1132
- }
1133
- return targetColumn || {};
1134
- }
1135
- }, {
1136
- children: "childNodes",
1137
- mapChildren: "_children"
1138
- }), (column, index2) => util.isColumnInfo(column) && (!columnFilterMethod || columnFilterMethod({ $table: $xeTable, column, $columnIndex: index2 })), {
1139
- children: "_children",
1140
- mapChildren: "childNodes",
1141
- original: true
1142
- });
1143
- } else {
1144
- groups = index.default.searchTree(isGroup ? collectColumn : tableFullColumn, (column, index2) => column.visible && (!columnFilterMethod || columnFilterMethod({ $table: $xeTable, column, $columnIndex: index2 })), { children: "children", mapChildren: "childNodes", original: true });
1145
- }
1146
- const cols = [];
1147
- index.default.eachTree(groups, (column) => {
1148
- const isColGroup = column.children && column.children.length;
1149
- if (!isColGroup) {
1150
- cols.push(column);
1151
- }
1152
- }, { children: "childNodes" });
1153
- handleOptions.columns = cols;
1154
- handleOptions.colgroups = convertToRows(groups);
1155
- if (filename) {
1156
- if (index.default.isFunction(filename)) {
1157
- handleOptions.filename = filename({
1158
- options: opts,
1159
- $table: $xeTable,
1160
- $grid: $xeGrid
1161
- });
1162
- } else {
1163
- handleOptions.filename = `${filename}`;
1164
- }
1165
- }
1166
- if (!handleOptions.filename) {
1167
- handleOptions.filename = getI18n(handleOptions.original ? "vxe.table.expOriginFilename" : "vxe.table.expFilename", [index.default.toDateString(Date.now(), "yyyyMMddHHmmss")]);
1168
- }
1169
- if (sheetName) {
1170
- if (index.default.isFunction(sheetName)) {
1171
- handleOptions.sheetName = sheetName({
1172
- options: opts,
1173
- $table: $xeTable,
1174
- $grid: $xeGrid
1175
- });
1176
- } else {
1177
- handleOptions.sheetName = `${sheetName}`;
1178
- }
1179
- }
1180
- if (!handleOptions.sheetName) {
1181
- handleOptions.sheetName = document.title || "";
1182
- }
1183
- if (!handleOptions.exportMethod && !index.default.includes(index.default.keys(exportOpts._typeMaps), type)) {
1184
- log.errLog("vxe.error.notType", [type]);
1185
- const params = { status: false };
1186
- return Promise.reject(params);
1187
- }
1188
- if (!handleOptions.print) {
1189
- if (beforeExportMethod) {
1190
- beforeExportMethod({ options: handleOptions, $table: $xeTable, $grid: $xeGrid });
1191
- }
1192
- }
1193
- if (!handleOptions.data) {
1194
- handleOptions.data = [];
1195
- if (mode === "selected") {
1196
- if (["html", "pdf"].indexOf(type) > -1 && treeConfig) {
1197
- handleOptions.data = index.default.searchTree($xeTable.getTableData().fullData, (item) => $xeTable.findRowIndexOf(selectRecords, item) > -1, Object.assign({}, treeOpts, { data: "_row" }));
1198
- } else {
1199
- handleOptions.data = selectRecords;
1200
- }
1201
- } else if (mode === "all") {
1202
- if ($xeGrid && !handleOptions.remote) {
1203
- const gridReactData = $xeGrid.reactData;
1204
- const { computeProxyOpts } = $xeGrid.getComputeMaps();
1205
- const proxyOpts2 = computeProxyOpts.value;
1206
- const { sortData } = gridReactData;
1207
- const { beforeQueryAll, afterQueryAll, ajax = {} } = proxyOpts2;
1208
- const resConfigs = proxyOpts2.response || proxyOpts2.props || {};
1209
- const ajaxMethods = ajax.queryAll;
1210
- const queryAllSuccessMethods = ajax.queryAllSuccess;
1211
- const queryAllErrorMethods = ajax.queryAllError;
1212
- if (ajaxMethods) {
1213
- const params = {
1214
- $table: $xeTable,
1215
- $grid: $xeGrid,
1216
- sort: sortData.length ? sortData[0] : {},
1217
- sorts: sortData,
1218
- filters: gridReactData.filterData,
1219
- form: gridReactData.formData,
1220
- options: handleOptions
1221
- };
1222
- return Promise.resolve((beforeQueryAll || ajaxMethods)(params)).then((rest) => {
1223
- const listProp = resConfigs.list;
1224
- handleOptions.data = (listProp ? index.default.isFunction(listProp) ? listProp({ data: rest, $grid: $xeGrid }) : index.default.get(rest, listProp) : rest) || [];
1225
- if (afterQueryAll) {
1226
- afterQueryAll(params);
1227
- }
1228
- if (queryAllSuccessMethods) {
1229
- queryAllSuccessMethods(Object.assign(Object.assign({}, params), { response: rest }));
1230
- }
1231
- return handleExport(handleOptions);
1232
- }).catch((rest) => {
1233
- if (queryAllErrorMethods) {
1234
- queryAllErrorMethods(Object.assign(Object.assign({}, params), { response: rest }));
1235
- }
1236
- });
1237
- }
1238
- }
1239
- }
1240
- if (mode === "current") {
1241
- handleOptions.data = afterFullData;
1242
- }
1243
- }
1244
- return handleExport(handleOptions);
1245
- },
1246
- importByFile(file, options) {
1247
- const opts = Object.assign({}, options);
1248
- const { beforeImportMethod } = opts;
1249
- if (beforeImportMethod) {
1250
- beforeImportMethod({ options: opts, $table: $xeTable });
1251
- }
1252
- return handleFileImport(file, opts);
1253
- },
1254
- importData(options) {
1255
- const importOpts = computeImportOpts.value;
1256
- const opts = Object.assign({
1257
- types: index.default.keys(importOpts._typeMaps)
1258
- // beforeImportMethod: null,
1259
- // afterImportMethod: null
1260
- }, importOpts, options);
1261
- const { beforeImportMethod, afterImportMethod } = opts;
1262
- if (beforeImportMethod) {
1263
- beforeImportMethod({ options: opts, $table: $xeTable });
1264
- }
1265
- return index_esm.VxeUI.readFile(opts).catch((e) => {
1266
- if (afterImportMethod) {
1267
- afterImportMethod({ status: false, options: opts, $table: $xeTable });
1268
- }
1269
- return Promise.reject(e);
1270
- }).then((params) => {
1271
- const { file } = params;
1272
- return handleFileImport(file, opts);
1273
- });
1274
- },
1275
- saveFile(options) {
1276
- return index_esm.VxeUI.saveFile(options);
1277
- },
1278
- readFile(options) {
1279
- return index_esm.VxeUI.readFile(options);
1280
- },
1281
- print(options) {
1282
- const printOpts = computePrintOpts.value;
1283
- const opts = Object.assign({
1284
- original: false
1285
- // beforePrintMethod
1286
- }, printOpts, options, {
1287
- type: "html",
1288
- download: false,
1289
- remote: false,
1290
- print: true
1291
- });
1292
- const { sheetName } = opts;
1293
- let printTitle = "";
1294
- if (sheetName) {
1295
- if (index.default.isFunction(sheetName)) {
1296
- printTitle = sheetName({
1297
- options: opts,
1298
- $table: $xeTable,
1299
- $grid: $xeGrid
1300
- });
1301
- } else {
1302
- printTitle = `${sheetName}`;
1303
- }
1304
- }
1305
- if (!printTitle) {
1306
- printTitle = document.title || "";
1307
- }
1308
- const beforePrintMethod = opts.beforePrintMethod;
1309
- const tableHtml = opts.html || opts.content;
1310
- return new Promise((resolve, reject) => {
1311
- if (index_esm.VxeUI.print) {
1312
- if (tableHtml) {
1313
- resolve(index_esm.VxeUI.print({
1314
- title: printTitle,
1315
- html: tableHtml,
1316
- customStyle: opts.style,
1317
- beforeMethod: beforePrintMethod ? ({ html }) => {
1318
- return beforePrintMethod({
1319
- html,
1320
- content: html,
1321
- options: opts,
1322
- $table: $xeTable
1323
- });
1324
- } : void 0
1325
- }));
1326
- } else {
1327
- resolve(exportMethods.exportData(opts).then(({ content }) => {
1328
- return index_esm.VxeUI.print({
1329
- title: printTitle,
1330
- html: content,
1331
- customStyle: opts.style,
1332
- beforeMethod: beforePrintMethod ? ({ html }) => {
1333
- return beforePrintMethod({
1334
- html,
1335
- content: html,
1336
- options: opts,
1337
- $table: $xeTable
1338
- });
1339
- } : void 0
1340
- });
1341
- }));
1342
- }
1343
- } else {
1344
- const e = { status: false };
1345
- reject(e);
1346
- }
1347
- });
1348
- },
1349
- getPrintHtml(options) {
1350
- const printOpts = computePrintOpts.value;
1351
- const opts = Object.assign({
1352
- original: false
1353
- // beforePrintMethod
1354
- }, printOpts, options, {
1355
- type: "html",
1356
- download: false,
1357
- remote: false,
1358
- print: true
1359
- });
1360
- return $xeTable.exportData(opts).then(({ content }) => {
1361
- return {
1362
- html: content
1363
- };
1364
- });
1365
- },
1366
- closeImport() {
1367
- if (index_esm.VxeUI.modal) {
1368
- return index_esm.VxeUI.modal.close("VXE_IMPORT_MODAL");
1369
- }
1370
- return Promise.resolve();
1371
- },
1372
- openImport(options) {
1373
- const { treeConfig, importConfig } = props;
1374
- const { initStore, importStore, importParams } = reactData;
1375
- const importOpts = computeImportOpts.value;
1376
- const defOpts = Object.assign({
1377
- mode: "insertTop",
1378
- message: true,
1379
- types: index.default.keys(importOpts._typeMaps),
1380
- modes: ["insertTop", "covering"]
1381
- }, importOpts, options);
1382
- const types = defOpts.types || [];
1383
- const modes = defOpts.modes || [];
1384
- const isTree = !!treeConfig;
1385
- if (isTree) {
1386
- if (defOpts.message) {
1387
- if (index_esm.VxeUI.modal) {
1388
- index_esm.VxeUI.modal.message({ content: getI18n("vxe.error.treeNotImp"), status: "error" });
1389
- }
1390
- }
1391
- return;
1392
- }
1393
- if (!importConfig) {
1394
- log.errLog("vxe.error.reqProp", ["import-config"]);
1395
- }
1396
- const typeList = types.map((value) => {
1397
- return {
1398
- value,
1399
- label: getI18n(`vxe.export.types.${value}`)
1400
- };
1401
- });
1402
- const modeList = modes.map((item) => {
1403
- if (item && item.value) {
1404
- return {
1405
- value: item.value,
1406
- label: item.label || item.value
1407
- };
1408
- }
1409
- return {
1410
- value: item,
1411
- label: getI18n(`vxe.import.modes.${item}`)
1412
- };
1413
- });
1414
- Object.assign(importStore, {
1415
- file: null,
1416
- type: "",
1417
- filename: "",
1418
- modeList,
1419
- typeList,
1420
- visible: true
1421
- });
1422
- Object.assign(importParams, defOpts);
1423
- if (!modeList.some((item) => item.value === importParams.mode)) {
1424
- importParams.mode = modeList[0].value;
1425
- }
1426
- initStore.import = true;
1427
- },
1428
- closeExport: handleCloseExport,
1429
- openExport(options) {
1430
- const exportOpts = computeExportOpts.value;
1431
- const defOpts = Object.assign({
1432
- message: true,
1433
- types: index.default.keys(exportOpts._typeMaps)
1434
- }, exportOpts, options);
1435
- if (!props.exportConfig) {
1436
- log.errLog("vxe.error.reqProp", ["export-config"]);
1437
- }
1438
- handleExportAndPrint(defOpts);
1439
- },
1440
- closePrint: handleCloseExport,
1441
- openPrint(options) {
1442
- const printOpts = computePrintOpts.value;
1443
- const defOpts = Object.assign({
1444
- message: true
1445
- }, printOpts, options);
1446
- if (!props.printConfig) {
1447
- log.errLog("vxe.error.reqProp", ["print-config"]);
1448
- }
1449
- handleExportAndPrint(defOpts, true);
1450
- }
1451
- };
1452
- return exportMethods;
1453
- },
1454
- setupGrid($xeGrid) {
1455
- return $xeGrid.extendTableMethods(tableExportMethodKeys);
1456
- }
1457
- });