cnhis-design-vue 3.1.42-beta.5 → 3.1.42-beta.51

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 (250) hide show
  1. package/README.md +87 -87
  2. package/es/components/annotation-edit/src/AnnotationEdit.js +1 -1
  3. package/es/components/base-search/index.d.ts +2 -2
  4. package/es/components/base-search/src/index.vue.d.ts +2 -2
  5. package/es/components/base-search/style/index.css +1 -1
  6. package/es/components/big-table/index.d.ts +3 -4
  7. package/es/components/big-table/src/BigTable.vue.d.ts +3 -4
  8. package/es/components/big-table/src/BigTable.vue2.js +1 -1
  9. package/es/components/big-table/src/components/edit-form/edit-select-table.d.ts +1 -1
  10. package/es/components/big-table/src/components/edit-form/edit-select.js +1 -1
  11. package/es/components/big-table/src/hooks/useEvent.js +1 -1
  12. package/es/components/big-table/src/hooks/useFormat.js +1 -1
  13. package/es/components/big-table/src/hooks/useNestTable.js +1 -1
  14. package/es/components/big-table/src/hooks/useTableParse.js +1 -1
  15. package/es/components/big-table/src/utils.d.ts +11 -1
  16. package/es/components/big-table/src/utils.js +1 -1
  17. package/es/components/big-table/style/index.css +1 -1
  18. package/es/components/bpmn-workflow/index.d.ts +12 -0
  19. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  20. package/es/components/bpmn-workflow/src/BpmnWorkflow.vue.d.ts +12 -0
  21. package/es/components/bpmn-workflow/src/BpmnWorkflow.vue.js +1 -1
  22. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  23. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  24. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  25. package/es/components/button-print/index.d.ts +4 -4
  26. package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -4
  27. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  28. package/es/components/button-print/src/components/EditFormat.vue.d.ts +4 -4
  29. package/es/components/button-print/src/components/IdentityVerification.vue.d.ts +4 -4
  30. package/es/components/button-print/src/utils/print.js +1 -1
  31. package/es/components/classification/index.d.ts +1 -1
  32. package/es/components/classification/src/index.vue.d.ts +2 -2
  33. package/es/components/classification/style/index.css +1 -1
  34. package/es/components/config-provider/src/ConfigProvider.js +1 -1
  35. package/es/components/config-provider/src/interface.d.ts +4 -4
  36. package/es/components/date-picker/index.d.ts +4 -0
  37. package/es/components/date-picker/src/DatePicker.vue.d.ts +4 -0
  38. package/es/components/date-picker/src/DatePicker.vue.js +1 -1
  39. package/es/components/fabric-chart/index.d.ts +2 -2
  40. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +2 -2
  41. package/es/components/fabric-chart/src/hooks/useBirthProcess.d.ts +1 -0
  42. package/es/components/fabric-chart/src/hooks/useBirthProcess.js +1 -1
  43. package/es/components/fabric-chart/src/hooks/useBirthProcessChart.js +1 -1
  44. package/es/components/fabric-chart/src/hooks/useCenter.js +1 -1
  45. package/es/components/fabric-chart/src/hooks/useLeft.js +1 -1
  46. package/es/components/fabric-chart/src/hooks/useScaleColumn.d.ts +16 -0
  47. package/es/components/fabric-chart/src/hooks/useScaleColumn.js +1 -0
  48. package/es/components/fabric-chart/src/utils/index.d.ts +6823 -0
  49. package/es/components/field-set/index.d.ts +26 -81
  50. package/es/components/field-set/src/FieldSet.vue.d.ts +28 -32
  51. package/es/components/field-set/src/FieldSet.vue.js +1 -1
  52. package/es/components/field-set/style/index.css +1 -1
  53. package/es/components/form-config/index.d.ts +65 -39
  54. package/es/components/form-config/src/FormConfig.vue.d.ts +65 -39
  55. package/es/components/form-config/src/FormConfig.vue.js +1 -1
  56. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +28 -14
  57. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +33 -21
  58. package/es/components/form-config/src/components/FormConfigEdit.vue.js +1 -1
  59. package/es/components/form-config/src/components/renderer/DefaultNode.vue.js +1 -1
  60. package/es/components/form-config/src/constants/index.d.ts +12 -1
  61. package/es/components/form-config/src/constants/index.js +1 -1
  62. package/es/components/form-config/src/hooks/useConfigurationField.js +1 -1
  63. package/es/components/form-config/src/types/index.d.ts +1 -0
  64. package/es/components/form-render/index.d.ts +28 -14
  65. package/es/components/form-render/index.js +1 -1
  66. package/es/components/form-render/src/FormRender.vue.d.ts +28 -14
  67. package/es/components/form-render/src/FormRender.vue.js +1 -1
  68. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +28 -14
  69. package/es/components/form-render/src/components/renderer/combination.js +1 -1
  70. package/es/components/form-render/src/components/renderer/complex.d.ts +1 -1
  71. package/es/components/form-render/src/components/renderer/jsonCombination/index.js +1 -1
  72. package/es/components/form-render/src/components/renderer/levelSearchCascader.d.ts +18 -0
  73. package/es/components/form-render/src/components/renderer/levelSearchCascader.js +1 -1
  74. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -1
  75. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -1
  76. package/es/components/form-render/src/components/renderer/radio&checkbox.d.ts +38 -2
  77. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  78. package/es/components/form-render/src/components/renderer/remoteSearch.d.ts +18 -0
  79. package/es/components/form-render/src/components/renderer/remoteSearch.js +1 -1
  80. package/es/components/form-render/src/components/renderer/searchCascade.d.ts +18 -0
  81. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  82. package/es/components/form-render/src/components/renderer/select.d.ts +32 -5
  83. package/es/components/form-render/src/components/renderer/select.js +1 -1
  84. package/es/components/form-render/src/hooks/index.d.ts +1 -1
  85. package/es/components/form-render/src/hooks/index.js +1 -1
  86. package/es/components/form-render/src/hooks/useFormAsyncQueue.d.ts +16 -0
  87. package/es/components/form-render/src/hooks/useFormAsyncQueue.js +1 -0
  88. package/es/components/form-render/src/hooks/useFormContext.js +1 -1
  89. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +13 -8
  90. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  91. package/es/components/form-render/src/types/fieldItem.d.ts +3 -4
  92. package/es/components/form-render/src/types/index.d.ts +2 -1
  93. package/es/components/form-render/style/index.css +1 -1
  94. package/es/components/iho-table/index.d.ts +24 -5
  95. package/es/components/iho-table/src/IhoTable.vue.d.ts +24 -5
  96. package/es/components/iho-table/src/IhoTable.vue.js +1 -1
  97. package/es/components/iho-table/src/constants/index.d.ts +2 -2
  98. package/es/components/iho-table/src/constants/index.js +1 -1
  99. package/es/components/iho-table/src/hooks/tapHooks/index.d.ts +4 -4
  100. package/es/components/iho-table/src/hooks/tapHooks/index.js +1 -1
  101. package/es/components/iho-table/src/hooks/tapHooks/useConfigHooks.d.ts +22 -21
  102. package/es/components/iho-table/src/hooks/tapHooks/useConfigHooks.js +1 -1
  103. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +60 -237
  104. package/es/components/iho-table/src/hooks/tapHooks/useExposeHooks.d.ts +1 -4
  105. package/es/components/iho-table/src/hooks/tapHooks/useFieldHooks.d.ts +4 -16
  106. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks.d.ts +2 -2
  107. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks.js +1 -1
  108. package/es/components/iho-table/src/plugins/anchorPlugin/useAnchor.js +1 -1
  109. package/es/components/iho-table/src/plugins/defaultConfigPlugin/index.js +1 -1
  110. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +1 -1
  111. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.js +1 -1
  112. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  113. package/es/components/iho-table/src/plugins/highLightSetPlugin.d.ts +1 -0
  114. package/es/components/iho-table/src/plugins/highLightSetPlugin.js +1 -0
  115. package/es/components/iho-table/src/plugins/index.js +1 -1
  116. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +1 -1
  117. package/es/components/iho-table/src/plugins/maxCheckSizePlugin.d.ts +1 -0
  118. package/es/components/iho-table/src/plugins/maxCheckSizePlugin.js +1 -0
  119. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +4 -0
  120. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.d.ts +25 -3
  121. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  122. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  123. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  124. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +1 -1
  125. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.js +1 -1
  126. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/defaultRendererPlugin.js +1 -1
  127. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/seqRendererPlugin.js +1 -1
  128. package/es/components/iho-table/src/plugins/rowDragPlugin/index.d.ts +1 -0
  129. package/es/components/iho-table/src/plugins/rowDragPlugin/index.js +1 -0
  130. package/es/components/iho-table/src/plugins/{rendererPlugins/widgets/variableHeightRendererPlugin.d.ts → varialbleHeightPlugin/index.d.ts} +1 -1
  131. package/es/components/iho-table/src/plugins/varialbleHeightPlugin/index.js +1 -0
  132. package/es/components/iho-table/src/types/index.d.ts +22 -5
  133. package/es/components/iho-table/src/types/pluginType.d.ts +10 -25
  134. package/es/components/iho-table/src/utils/index.d.ts +3 -0
  135. package/es/components/iho-table/src/utils/index.js +1 -1
  136. package/es/components/iho-table/style/iconfont.ttf +0 -0
  137. package/es/components/iho-table/style/index.css +1 -1
  138. package/es/components/index.css +1 -1
  139. package/es/components/index.js +1 -1
  140. package/es/components/info-header/index.d.ts +60 -32
  141. package/es/components/info-header/src/InfoHeader.vue.d.ts +60 -32
  142. package/es/components/info-header/src/InfoHeader.vue.js +1 -1
  143. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +3 -3
  144. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +3 -3
  145. package/es/components/info-header/src/components/infoDescription/HiddenContent.vue.d.ts +2 -2
  146. package/es/components/info-header/src/components/infoDescription/HiddenContent.vue.js +1 -1
  147. package/es/components/info-header/src/components/infoDescription/InfoEllipsis.vue.d.ts +1 -1
  148. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +31 -17
  149. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +28 -14
  150. package/es/components/info-header/style/index.css +1 -1
  151. package/es/components/keyboard/index.d.ts +1 -1
  152. package/es/components/keyboard/src/Keyboard.vue.d.ts +1 -1
  153. package/es/components/keyboard/src/Keyboard.vue.js +1 -1
  154. package/es/components/keyboard/src/constants/index.js +1 -1
  155. package/es/components/keyboard/style/index.css +1 -1
  156. package/es/components/map/index.d.ts +2 -14
  157. package/es/components/map/src/Map.vue.d.ts +1 -14
  158. package/es/components/map/src/types/index.d.ts +19 -0
  159. package/es/components/map/src/types/index.js +1 -0
  160. package/es/components/recommend-search/index.d.ts +13 -128
  161. package/es/components/recommend-search/src/RecommendSearch.vue.d.ts +15 -130
  162. package/es/components/recommend-search/src/RecommendSearch.vue.js +1 -1
  163. package/es/components/recommend-search/src/components/BaseSearch.d.ts +84 -0
  164. package/es/components/recommend-search/src/components/BaseSearch.js +1 -0
  165. package/es/components/recommend-search/src/components/RecommendInput.vue.d.ts +3 -63
  166. package/es/components/recommend-search/src/components/RecommendInput.vue.js +1 -1
  167. package/es/components/recommend-search/src/components/RecommendMenu.vue.d.ts +1 -3
  168. package/es/components/recommend-search/src/components/RecommendMenu.vue.js +1 -1
  169. package/es/components/recommend-search/src/components/RecommendSelect.vue.d.ts +4 -62
  170. package/es/components/recommend-search/src/components/RecommendSelect.vue.js +1 -1
  171. package/es/components/recommend-search/src/constant/index.d.ts +3 -0
  172. package/es/components/recommend-search/src/constant/index.js +1 -1
  173. package/es/components/scale-view/index.d.ts +29 -94
  174. package/es/components/scale-view/index.js +1 -1
  175. package/es/components/scale-view/src/ScaleView.vue.d.ts +29 -94
  176. package/es/components/scale-view/src/ScaleView.vue.js +1 -1
  177. package/es/components/scale-view/src/components/formitem/r-address.js +1 -1
  178. package/es/components/scale-view/src/components/formitem/r-checkbox.js +1 -1
  179. package/es/components/scale-view/src/components/formitem/r-datetime.js +1 -1
  180. package/es/components/scale-view/src/components/formitem/r-map.js +1 -1
  181. package/es/components/scale-view/src/components/formitem/standard-modal.d.ts +4 -4
  182. package/es/components/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.vue.d.ts +1 -1
  183. package/es/components/scale-view/src/hooks/scaleview-computed.d.ts +1 -1
  184. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  185. package/es/components/scale-view/src/hooks/scaleview-init.js +1 -1
  186. package/es/components/scale-view/src/hooks/scaleview-submit.js +1 -1
  187. package/es/components/scale-view/src/hooks/scaleview-validate.js +1 -1
  188. package/es/components/scale-view/src/hooks/use-component.d.ts +73 -3
  189. package/es/components/scale-view/src/hooks/use-evaluate.js +1 -1
  190. package/es/components/scale-view/src/hooks/use-event.js +1 -1
  191. package/es/components/scale-view/style/index.css +1 -1
  192. package/es/components/search-cascader/index.d.ts +12 -1
  193. package/es/components/search-cascader/src/SearchCascader.vue.d.ts +12 -1
  194. package/es/components/search-cascader/src/SearchCascader.vue.js +1 -1
  195. package/es/components/search-cascader/src/components/SearchMenu.d.ts +8 -1
  196. package/es/components/search-cascader/src/components/SearchMenu.js +1 -1
  197. package/es/components/search-cascader/src/constants/index.d.ts +1 -0
  198. package/es/components/search-cascader/src/constants/index.js +1 -1
  199. package/es/components/select-label/src/LabelFormContent.vue.js +1 -1
  200. package/es/components/select-label/src/SelectLabel.vue2.js +1 -1
  201. package/es/components/select-label/style/index.css +1 -1
  202. package/es/components/select-person/index.d.ts +1 -1
  203. package/es/components/select-person/src/SelectPerson.vue.d.ts +1 -1
  204. package/es/components/shortcut-setter/index.d.ts +29 -16
  205. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +29 -16
  206. package/es/components/steps-wheel/src/StepsWheel.vue.js +1 -1
  207. package/es/components/steps-wheel/src/constants/index.js +1 -1
  208. package/es/components/steps-wheel/style/index.css +1 -1
  209. package/es/components/table-filter/src/components/render-widget/components/CheckboxGroup.vue.d.ts +1 -1
  210. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +1 -1
  211. package/es/components/table-filter/src/types/index.d.ts +11 -2
  212. package/es/components/time-picker/src/TimePicker.vue.js +1 -1
  213. package/es/components/vod-chunk-upload/index.d.ts +73 -3
  214. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.d.ts +73 -3
  215. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.js +1 -1
  216. package/es/env.d.ts +25 -24
  217. package/es/shared/components/TextOverTooltip/TextOverTooltip.vue.d.ts +1 -1
  218. package/es/shared/components/TextOverTooltip/TextOverTooltip.vue.js +1 -1
  219. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  220. package/es/shared/{mixins → hooks}/index.d.ts +1 -0
  221. package/es/shared/{mixins → hooks}/index.js +1 -1
  222. package/es/{components/form-render/src → shared}/hooks/useAsyncQueue.d.ts +0 -14
  223. package/es/shared/hooks/useAsyncQueue.js +1 -0
  224. package/es/shared/{mixins → hooks}/useDateTime.d.ts +2 -2
  225. package/es/shared/hooks/useDateTime.js +1 -0
  226. package/es/shared/utils/anime.d.ts +1 -1
  227. package/es/shared/utils/anime.js +1 -1
  228. package/es/shared/utils/index.d.ts +3 -3
  229. package/es/shared/utils/index.js +1 -1
  230. package/es/shared/utils/tapable/index.d.ts +139 -0
  231. package/es/shared/utils/vexutils.d.ts +2 -2
  232. package/es/shared/utils/vexutils.js +1 -1
  233. package/es/shared/utils/vexutilsExpand.d.ts +254 -0
  234. package/es/shared/utils/vexutilsExpand.js +1 -0
  235. package/package.json +2 -2
  236. package/es/components/form-render/src/hooks/useAsyncQueue.js +0 -1
  237. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/variableHeightRendererPlugin.js +0 -1
  238. package/es/components/recommend-search/src/components/BaseSearch.vue.d.ts +0 -143
  239. package/es/components/recommend-search/src/components/BaseSearch.vue.js +0 -1
  240. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +0 -115
  241. package/es/components/scale-view/src/hooks/scaleview-props.js +0 -1
  242. package/es/shared/mixins/useDateTime.js +0 -1
  243. package/es/shared/utils/colorLog.d.ts +0 -31
  244. package/es/shared/utils/colorLog.js +0 -1
  245. /package/es/components/base-search/style/{iconfont.ttf → base-search-iconfont.ttf} +0 -0
  246. /package/es/components/classification/style/{iconfont.ttf → classification-iconfont.ttf} +0 -0
  247. /package/es/components/info-header/style/{iconfont.ttf → info-header-font.ttf} +0 -0
  248. /package/es/components/select-label/style/{iconfont.ttf → select-label-iconfont.ttf} +0 -0
  249. /package/es/shared/{mixins → hooks}/useTheme.d.ts +0 -0
  250. /package/es/shared/{mixins → hooks}/useTheme.js +0 -0
@@ -2,22 +2,10 @@ import { AsyncParallelHook, SyncWaterfallHook } from '../../../../../../es/share
2
2
  import { FieldHookContext, IhoTableFieldItem } from '../../../../../../es/components/iho-table/src/types';
3
3
  import { AbstractFieldHooks } from '../../../../../../es/components/iho-table/src/types';
4
4
  declare class FieldHooks extends AbstractFieldHooks {
5
- readonly fieldStart: AsyncParallelHook<[import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, {
6
- $table: import("vue").Ref<import("../../../../../shared/types").Nullable<import("vxe-table").VxeTableInstance>>;
7
- emits: import("../../../../../../es/components/iho-table/src/types").IhoTableEmits;
8
- }], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
9
- readonly field: SyncWaterfallHook<[IhoTableFieldItem, FieldHookContext, import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, {
10
- $table: import("vue").Ref<import("../../../../../shared/types").Nullable<import("vxe-table").VxeTableInstance>>;
11
- emits: import("../../../../../../es/components/iho-table/src/types").IhoTableEmits;
12
- }], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
13
- readonly fieldList: SyncWaterfallHook<[IhoTableFieldItem[], import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, {
14
- $table: import("vue").Ref<import("../../../../../shared/types").Nullable<import("vxe-table").VxeTableInstance>>;
15
- emits: import("../../../../../../es/components/iho-table/src/types").IhoTableEmits;
16
- }], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
17
- readonly fieldEnd: AsyncParallelHook<[import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, {
18
- $table: import("vue").Ref<import("../../../../../shared/types").Nullable<import("vxe-table").VxeTableInstance>>;
19
- emits: import("../../../../../../es/components/iho-table/src/types").IhoTableEmits;
20
- }], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
5
+ readonly fieldStart: AsyncParallelHook<[import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, import("../../../../../../es/components/iho-table/src/types").IhoTableHandlerContext<true>], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
6
+ readonly field: SyncWaterfallHook<[IhoTableFieldItem, FieldHookContext, import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, import("../../../../../../es/components/iho-table/src/types").IhoTableHandlerContext<true>], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
7
+ readonly fieldList: SyncWaterfallHook<[IhoTableFieldItem[], import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, import("../../../../../../es/components/iho-table/src/types").IhoTableHandlerContext<true>], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
8
+ readonly fieldEnd: AsyncParallelHook<[import("../../../../../../es/components/iho-table/src/types").IhoTableConfig, import("../../../../../../es/components/iho-table/src/types").IhoTableHandlerContext<true>], import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
21
9
  }
22
10
  export declare function useFieldHooks(): {
23
11
  create: () => FieldHooks;
@@ -1,8 +1,8 @@
1
1
  import { SyncHook } from '../../../../../../es/shared/utils/tapable';
2
2
  import { Ref } from 'vue';
3
- import { AbstractSetupHooks, IhoTableConfig, IhoTableFieldItem } from '../../../../../../es/components/iho-table';
3
+ import { AbstractSetupHooks, IhoTableConfig, IhoTableFieldItem, IhoTableHandlerContext } from '../../../../../../es/components/iho-table';
4
4
  declare class SetupHooks extends AbstractSetupHooks {
5
- readonly setup: SyncHook<[Ref<IhoTableConfig>, Ref<IhoTableFieldItem[]>], void, import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
5
+ readonly setup: SyncHook<[Ref<IhoTableConfig>, Ref<IhoTableFieldItem[]>, IhoTableHandlerContext<true>], void, import("../../../../../../es/shared/utils/tapable").UnsetAdditionalOptions>;
6
6
  }
7
7
  export declare function useSetupHooks(): {
8
8
  create: () => SetupHooks;
@@ -1 +1 @@
1
- import s from"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../../index.js";import{AbstractSetupHooks as e}from"../../types/pluginType.js";class t extends e{constructor(){super(...arguments),this.setup=new s(["config","fieldList"])}}function o(){return{create:function(){return new t}}}export{o as useSetupHooks};
1
+ import s from"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../../index.js";import{AbstractSetupHooks as t}from"../../types/pluginType.js";class e extends t{constructor(){super(...arguments),this.setup=new s(["config","fieldList","context"])}}function o(){return{create:function(){return new e}}}export{o as useSetupHooks};
@@ -1 +1 @@
1
- import{shallowOmit as l}from"../../../../../shared/utils/index.js";import{ref as e,watch as t,unref as i}from"vue";import{useThrottleFn as n}from"@vueuse/core";import{cloneDeep as o,findLastIndex as u}from"lodash-es";function r(e,t){e.forEach((e=>{var i;if(null==(i=e.children)?void 0:i.length){const i=l(o(e),["children"]);i.width=0,t.push(i),r(e.children,t)}else(function(l){return l.visible||!Reflect.has(l,"visible")})(e)&&t.push(e)}))}const c=(l,c,d)=>{const f=e([]),a=e();let s=!0;const v=n((function({scrollLeft:l,bodyWidth:e}){if(!f.value.length||!s)return;const t=l+e/2,i=u(f.value,(l=>t>=l.left));~i&&(a.value=f.value[i].field)}),800);return t([d,l],(()=>{!function(){var e,t,n;if(null==(e=i(l))?void 0:e.length){let e=0;const u=[];r(o(d.value),u),u.forEach((t=>{var n;const{field:o="",minWidth:u,width:r,fixed:c,title:d=""}=t,a=+(null!=(n=null!=u?u:r)?n:0);"left"==c||(e+=a,i(l).find((l=>l===o))&&f.value.push({field:o,title:d,left:e-a}))})),a.value=(null==(n=null==(t=f.value)?void 0:t[0])?void 0:n.field)||""}}()}),{immediate:!0,deep:!0}),{updateAnchor:async function(l){var e,t;s=!1;const i=f.value.find((e=>e.field===l));await(null==(t=c.value)?void 0:t.scrollTo(null!=(e=null==i?void 0:i.left)?e:0)),setTimeout((()=>{s=!0}),900)},onScroll:v,currentAnchorList:f,anchorValue:a}};export{c as useAnchor};
1
+ import{shallowOmit as l}from"../../../../../shared/utils/index.js";import{ref as e,watch as t,unref as i}from"vue";import{useThrottleFn as n}from"@vueuse/core";import{cloneDeep as o,findLastIndex as u}from"lodash-es";function r(e,t){e.forEach((e=>{var i;if(null==(i=e.children)?void 0:i.length){const i=l(o(e),["children"]);i.width=0,t.push(i),r(e.children,t)}else(function(l){return l.visible||!Reflect.has(l,"visible")})(e)&&t.push(e)}))}const a=(l,a,c)=>{const d=e([]),f=e();let v=!0;const s=n((function({scrollLeft:l,bodyWidth:e}){if(!d.value.length||!v)return;const t=l+e/2,i=u(d.value,(l=>t>=l.left));~i&&(f.value=d.value[i].field)}),800);return t([()=>c.value,()=>l.value],(()=>{!function(){var e,t,n;if(d.value=[],null==(e=i(l))?void 0:e.length){let e=0;const u=[];r(o(c.value),u),u.forEach((t=>{var n;const{field:o="",minWidth:u,width:r,fixed:a,title:c=""}=t,f=+(null!=(n=null!=u?u:r)?n:0);"left"==a||(e+=f,i(l).find((l=>l===o))&&d.value.push({field:o,title:c,left:e-f}))})),f.value=(null==(n=null==(t=d.value)?void 0:t[0])?void 0:n.field)||""}}()}),{immediate:!0,deep:!0}),{updateAnchor:async function(l){var e,t;v=!1;const i=d.value.find((e=>e.field===l));await(null==(t=a.value)?void 0:t.scrollTo(null!=(e=null==i?void 0:i.left)?e:0)),setTimeout((()=>{v=!0}),900)},onScroll:s,currentAnchorList:d,anchorValue:f}};export{a as useAnchor};
@@ -1 +1 @@
1
- import{mergeWith as e,isObject as o}from"lodash-es";import{HIGHEST_PRIORITY as i}from"../../constants/index.js";import{defineTablePlugin as t}from"../../hooks/useTablePlugin.js";import{IhoTableStatusHelper as s}from"../../utils/index.js";function n(){const n="defaultTablePlugin";return t({name:n,apply(t){t.configHooks.config.tap({name:n,stage:i},(o=>{const i=e({height:"100%",border:!0,showSeq:!0,columnConfig:{resizable:!0},rowConfig:{height:36,useKey:!0,isHover:!0,isCurrent:!0,keyField:"theUniqueKey"},showOverflow:"tooltip",editConfig:{trigger:"click",mode:"cell"}},o);return(s.isPositive(o.isBatchSelect)||o.selectType)&&(i.selectType=o.selectType||"checkbox"),i})),t.configHooks.mouseConfig.tap({name:n,stage:i},((e,i)=>o(i.keyboardConfig)?Object.assign({selected:!!i.keyboardConfig.isEdit},e):e))}})}export{n as defaultConfigPlugin};
1
+ import{mergeWith as e,isObject as o}from"lodash-es";import{HIGHEST_PRIORITY as i}from"../../constants/index.js";import{defineTablePlugin as t}from"../../hooks/useTablePlugin.js";import{IhoTableStatusHelper as s}from"../../utils/index.js";function n(){const n="defaultTablePlugin";return t({name:n,apply(t){t.configHooks.config.tap({name:n,stage:i},(o=>{const i=e({border:!0,showSeq:!0,columnConfig:{resizable:!0},rowConfig:{height:36,useKey:!0,isHover:!0,isCurrent:!0,keyField:"theUniqueKey"},showOverflow:"tooltip",editConfig:{trigger:"click",mode:"cell"}},o,{height:o.height?"auto":void 0});return(s.isPositive(o.isBatchSelect)||o.selectType)&&(i.selectType=o.selectType||"checkbox"),i})),t.configHooks.mouseConfig.tap({name:n,stage:i},((e,i)=>o(i.keyboardConfig)?Object.assign({selected:!!i.keyboardConfig.isEdit},e):e))}})}export{n as defaultConfigPlugin};
@@ -21,7 +21,7 @@ declare const _default: import("vue").DefineComponent<{
21
21
  searchFilterText: import("vue").Ref<string>;
22
22
  close: () => void;
23
23
  OPTION_ITEM_HEIGHT: number;
24
- VIEW_CAPACITY: number;
24
+ viewCapacity: import("vue").ComputedRef<number>;
25
25
  list: import("vue").Ref<import("@vueuse/core").UseVirtualListItem<VxeTableDefines.FilterOption>[]>;
26
26
  containerProps: {
27
27
  ref: import("vue").Ref<any>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as l,inject as t,ref as a,onDeactivated as u,openBlock as o,createElementBlock as n,unref as i,Fragment as r,renderList as s,createElementVNode as v,normalizeClass as c,createBlock as d,createCommentVNode as p,createTextVNode as f,toDisplayString as m,createVNode as h,isRef as _,withCtx as y,normalizeStyle as g}from"vue";import{widthAppend as b}from"../../../../../shared/utils/index.js";import{CheckmarkOutline as k}from"@vicons/ionicons5";import{useVirtualList as C}from"@vueuse/core";import{NInput as x,NCheckbox as S,NCheckboxGroup as $,NButtonGroup as E,NButton as j}from"naive-ui";import w from"../../../../../_virtual/plugin-vue_export-helper.js";const A={class:"iho-table__filterWrapper"},I={key:0},L=["onClick"],U={class:"iho-table__filterListItem"},B={class:"iho-table__filterFooter"};var F=w(e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const w=e,F=l((()=>{var e,l,t;return null==(t=null==(l=null==(e=w.payload)?void 0:e.column.editRender)?void 0:l.props)?void 0:t.sortable})),O=l((()=>{var e,l,t;return null!=(t=null==(l=null==(e=w.payload)?void 0:e.column)?void 0:l.filters)?t:[]})),P=l({get:()=>O.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(w.payload)return O.value.forEach((l=>{w.payload.$panel.changeOption(null,e.includes(l.value),l)})),w.payload.$panel.confirmFilter(new CustomEvent("click"))}}),W=t("$xetable"),Z=l({get(){if(!W)return null;const e=W.getSortColumns().find((e=>{var l;return e.column===(null==(l=w.payload)?void 0:l.column)}));return e?e.order:null},set(e){W&&w.payload&&w.payload.$panel&&W.triggerSortEvent(new CustomEvent("click"),w.payload.column,e)}}),q=a([...P.value]),z=a("");function D(){W&&(W.reactData.filterStore.visible=!1)}u(D);const{list:H,containerProps:R,wrapperProps:G}=C(l((()=>z.value?O.value.filter((e=>`${e.label}`.includes(z.value))):O.value)),{itemHeight:32,overscan:3}),J=l((()=>!!q.value.length&&q.value.length!==O.value.length)),K=l({get:()=>q.value.length===O.value.length&&0!==O.value.length,set:e=>{q.value=e?O.value.map((e=>e.value)):[]}}),M=l((()=>({...R.style,height:b(320)})));function N(){P.value=q.value,D()}function Q(){q.value=[]}const T=[{status:"asc",text:"升序 A to Z"},{status:"desc",text:"降序 Z to A"}];return(e,l)=>(o(),n("section",A,[i(F)?(o(),n("div",I,[(o(),n(r,null,s(T,(e=>v("div",{key:e.status,class:c(["iho-table__filterButton",{"iho-table__filterButton--active":i(Z)===e.status}]),onClick:l=>{return t=e.status,Z.value=t,void D();var t}},[i(Z)===e.status?(o(),d(i(k),{key:0,class:"iho-table__sortActiveIcon"})):p("v-if",!0),f(" "+m(e.text),1)],10,L))),64))])):p("v-if",!0),i(O).length>5?(o(),d(i(x),{key:1,value:z.value,"onUpdate:value":l[0]||(l[0]=e=>z.value=e)},null,8,["value"])):p("v-if",!0),v("div",U,[h(i(S),{label:"全选",checked:i(K),"onUpdate:checked":l[1]||(l[1]=e=>_(K)?K.value=e:null),indeterminate:i(J)},null,8,["checked","indeterminate"])]),h(i($),{value:q.value,"onUpdate:value":l[3]||(l[3]=e=>q.value=e)},{default:y((()=>[v("section",{ref:i(R).ref,style:g(i(M)),onScroll:l[2]||(l[2]=(...e)=>i(R).onScroll&&i(R).onScroll(...e)),class:"iho-table__filterListWrapper"},[v("section",{style:g(i(G).style)},[(o(!0),n(r,null,s(i(H),(e=>(o(),n("div",{class:"iho-table__filterListItem",key:e.data.value},[h(i(S),{value:e.data.value,label:e.data.label},null,8,["value","label"])])))),128))],4)],36)])),_:1},8,["value"]),v("footer",B,[v("section",null,m(`已选择${q.value.length}项`),1),h(i(E),{size:"small"},{default:y((()=>[h(i(j),{onClick:Q},{default:y((()=>[f("清空")])),_:1}),h(i(j),{onClick:D},{default:y((()=>[f("取消")])),_:1}),h(i(j),{type:"primary",onClick:N},{default:y((()=>[f("确定")])),_:1})])),_:1})])]))}}),[["__file","filter.vue"]]);export{F as default};
1
+ import{defineComponent as e,computed as l,inject as t,ref as a,onDeactivated as o,openBlock as u,createElementBlock as n,unref as r,Fragment as i,renderList as s,createElementVNode as v,normalizeClass as c,createBlock as d,createCommentVNode as p,createTextVNode as f,toDisplayString as m,createVNode as h,isRef as _,withCtx as y,normalizeStyle as g}from"vue";import{widthAppend as b}from"../../../../../shared/utils/index.js";import{CheckmarkOutline as k}from"@vicons/ionicons5";import{useVirtualList as C}from"@vueuse/core";import{isNumber as x}from"lodash-es";import{NInput as S,NCheckbox as $,NCheckboxGroup as E,NButtonGroup as j,NButton as w}from"naive-ui";import A from"../../../../../_virtual/plugin-vue_export-helper.js";const I={class:"iho-table__filterWrapper"},L={key:0},U=["onClick"],B={class:"iho-table__filterListItem"},F={class:"iho-table__filterFooter"};var O=A(e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const A=e,O=l((()=>{var e,l,t;return null==(t=null==(l=null==(e=A.payload)?void 0:e.column.editRender)?void 0:l.props)?void 0:t.sortable})),P=l((()=>{var e,l,t;return null!=(t=null==(l=null==(e=A.payload)?void 0:e.column)?void 0:l.filters)?t:[]})),R=l({get:()=>P.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(A.payload)return P.value.forEach((l=>{A.payload.$panel.changeOption(null,e.includes(l.value),l)})),A.payload.$panel.confirmFilter(new CustomEvent("click"))}}),W=t("$xetable"),Z=l({get(){if(!W)return null;const e=W.getSortColumns().find((e=>{var l;return e.column===(null==(l=A.payload)?void 0:l.column)}));return e?e.order:null},set(e){W&&A.payload&&A.payload.$panel&&W.triggerSortEvent(new CustomEvent("click"),A.payload.column,e)}}),q=a([...R.value]),z=a("");function D(){W&&(W.reactData.filterStore.visible=!1)}o(D);const H=l((()=>{var e,l;if(!A.payload||!A.payload.column)return 10;const{filterCapacity:t}=null!=(l=null==(e=A.payload.column.editRender)?void 0:e.props)?l:{};return x(t)&&t>0?t:10})),{list:G,containerProps:J,wrapperProps:K}=C(l((()=>z.value?P.value.filter((e=>`${e.label}`.includes(z.value))):P.value)),{itemHeight:32,overscan:3}),M=l((()=>!!q.value.length&&q.value.length!==P.value.length)),N=l({get:()=>q.value.length===P.value.length&&0!==P.value.length,set:e=>{q.value=e?P.value.map((e=>e.value)):[]}}),Q=l((()=>({...J.style,height:b(32*H.value)})));function T(){R.value=q.value,D()}function V(){q.value=[]}const X=[{status:"asc",text:"升序 A to Z"},{status:"desc",text:"降序 Z to A"}];return(e,l)=>(u(),n("section",I,[r(O)?(u(),n("div",L,[(u(),n(i,null,s(X,(e=>v("div",{key:e.status,class:c(["iho-table__filterButton",{"iho-table__filterButton--active":r(Z)===e.status}]),onClick:l=>{return t=e.status,Z.value=t,void D();var t}},[r(Z)===e.status?(u(),d(r(k),{key:0,class:"iho-table__sortActiveIcon"})):p("v-if",!0),f(" "+m(e.text),1)],10,U))),64))])):p("v-if",!0),r(P).length>5?(u(),d(r(S),{key:1,value:z.value,"onUpdate:value":l[0]||(l[0]=e=>z.value=e)},null,8,["value"])):p("v-if",!0),v("div",B,[h(r($),{label:"全选",checked:r(N),"onUpdate:checked":l[1]||(l[1]=e=>_(N)?N.value=e:null),indeterminate:r(M)},null,8,["checked","indeterminate"])]),h(r(E),{value:q.value,"onUpdate:value":l[3]||(l[3]=e=>q.value=e)},{default:y((()=>[v("section",{ref:r(J).ref,style:g(r(Q)),onScroll:l[2]||(l[2]=(...e)=>r(J).onScroll&&r(J).onScroll(...e)),class:"iho-table__filterListWrapper"},[v("section",{style:g(r(K).style)},[(u(!0),n(i,null,s(r(G),(e=>(u(),n("div",{class:"iho-table__filterListItem",key:e.data.value},[h(r($),{value:e.data.value,label:e.data.label},null,8,["value","label"])])))),128))],4)],36)])),_:1},8,["value"]),v("footer",F,[v("section",null,m(`已选择${q.value.length}项`),1),h(r(j),{size:"small"},{default:y((()=>[h(r(w),{onClick:V},{default:y((()=>[f("清空")])),_:1}),h(r(w),{onClick:D},{default:y((()=>[f("取消")])),_:1}),h(r(w),{type:"primary",onClick:T},{default:y((()=>[f("确定")])),_:1})])),_:1})])]))}}),[["__file","filter.vue"]]);export{O as default};
@@ -1 +1 @@
1
- import{createVNode as e,nextTick as r}from"vue";import{jsonParse as t,traverse as l,arrayed as i}from"../../../../../shared/utils/index.js";import{isObject as n,first as o,isArray as s}from"lodash-es";import"../../../index.js";import{IHO_TABLE_NUMBER_STATUS as u}from"../../constants/index.js";import{IhoTableRenderHelper as a,IhoTableUtils as d}from"../../utils/index.js";import f from"./filter.vue.js";import{defineTablePlugin as p}from"../../hooks/useTablePlugin.js";function c(){const c="filterRenderPlugin";return p({name:c,vxe(r){r.renderer.mixin({filterRenderPlugin:{showFilterFooter:!1,renderFilter:(r,t)=>e(f,{payload:t},null)}})},apply(e){let f=[];e.fieldHooks.field.tap(c,(e=>{var r,l,i,f,p,c;const v=null==(r=e.editRender)?void 0:r.props;if(!n(v))return e;const m=t(v.fieldSetting||"");if(!a.hasFilter(m))return e;e.editRender={...e.editRender,props:{...null==(l=e.editRender)?void 0:l.props,sortable:e.sortable}},e.filterRender={name:"filterRenderPlugin"};let h=null!=(p=null==(f=null==(i=m.mapping)?void 0:i.mappingFiled)?void 0:f.reduce(((e,r)=>{const t=o(r.value);return n(t)&&e.push({label:t.key,value:t.value,data:t.value}),e}),[]))?p:[];return function(e){const r=["SEARCH","SELECT","RADIO","CHECKBOX"];return(e.notParticipatingSearch||"")!==u.POSITIVE&&r.includes(d.getCellType(e))&&s(e.options)&&e.options.length}(v)&&(h=null!=(c=v.options)?c:[]),e.filters=h,e.sortable?e.headerClassName=({$table:e,column:r})=>{const t=["iho-table__hideSortIcon"];return e.isSort(r)&&t.push("is--filter-active"),t}:e.headerClassName="iho-table__hideSortIcon",e})),e.fieldHooks.fieldList.tap(c,(e=>f=e)),e.fieldHooks.fieldEnd.tapPromise(c,(async(e,{$table:t})=>{var i;try{if(await r(),!t.value)return;const o=null!=(i=t.value.getColumns())?i:[],s=[];if(l(f,(e=>{o.find((r=>r.field===e.field))||s.push(e)})),!s.length)return;setTimeout((()=>{var r,l;if(null==(r=e.sortConfig)?void 0:r.multiple){const e=null!=(l=t.value.getColumns())?l:[],r=s.concat(e).reduce(((e,r)=>{var t;const l=null==(t=r.editRender)?void 0:t.props;return n(l)&&v(l.isOrder)&&e.push({field:r.field,order:l.isOrder}),e}),[]);t.value.sort(r)}else s.reverse().some((e=>{var r;const l=null==(r=e.editRender)?void 0:r.props;if(n(l)&&v(l.isOrder))return e&&t.value.sort(e.field,l.isOrder),!0}))}),100)}finally{f=[]}})),e.exposeHooks.expose.tap(c,((e,r,{$table:t})=>(Object.assign(e,{setSort(e,r){t.value&&t.value.sort(e,r)},setFilter(e,r){if(!t.value)return;const l=t.value.getColumnByField(e);if(!l||!s(l.filters))return;const n=i(r);l.filters.forEach((e=>{e.checked=n.includes(e.value)})),t.value.updateData()}}),e)))}})}function v(e){return["asc","desc",null].includes(e)}export{c as filterRenderPlugin};
1
+ import{createVNode as e,nextTick as l}from"vue";import{jsonParse as t,traverse as i,arrayed as r}from"../../../../../shared/utils/index.js";import{isObject as n,isArray as o,first as s,isString as u}from"lodash-es";import"../../../index.js";import{IHO_TABLE_NUMBER_STATUS as a}from"../../constants/index.js";import{IhoTableRenderHelper as d,parseRichContent as f,IhoTableUtils as c}from"../../utils/index.js";import p from"./filter.vue.js";import{defineTablePlugin as v}from"../../hooks/useTablePlugin.js";function h(){const h="filterRenderPlugin";return v({name:h,vxe(l){l.renderer.mixin({filterRenderPlugin:{showFilterFooter:!1,renderFilter:(l,t)=>e(p,{payload:t,key:t.column.field},null)}})},apply(e){let p=[];e.fieldHooks.field.tap(h,((e,l,i,{$table:r})=>{var p,v,h,m,g,b,C,R;const k=null==(p=e.editRender)?void 0:p.props;if(!n(k))return e;const y=t(k.fieldSetting||"");if(!d.hasFilter(y))return e;e.editRender={...e.editRender,props:{...null==(v=e.editRender)?void 0:v.props,sortable:e.sortable}},e.filterRender={name:"filterRenderPlugin"};const x=null==(h=r.value)?void 0:h.getColumnByField(e.field),S={};x&&o(x.filters)&&x.filters.forEach((e=>{e&&(S[`${e.label}_${e.value}`]=e.checked)}));let E=null!=(b=null==(g=null==(m=y.mapping)?void 0:m.mappingFiled)?void 0:g.reduce(((e,l)=>{const t=s(l.value);return n(t)&&e.push({label:t.key,value:t.value,data:t.value,checked:!!S[`${t.key}_${t.value}`]}),e}),[]))?b:[];if(function(e){const l=["SEARCH","SELECT","RADIO","CHECKBOX"];return(e.notParticipatingSearch||"")!==a.POSITIVE&&l.includes(c.getCellType(e))&&o(e.options)&&e.options.length}(k)&&(E=null!=(C=k.options)?C:[]),e.filters=E,!e.filterMethod){const l=null==(R=i.treeConfig)?void 0:R.children;e.filterMethod=function({option:e,column:t,row:i}){if(l&&o(i[l])&&i[l].length)return!1;const r=i[t.field];if(!u(r))return!1;if(r===e.label)return!0;const{value:n,change_text:s}=f(r);return s===e.label||n===e.value}}return e.sortable?e.headerClassName=({$table:e,column:l})=>{const t=["iho-table__hideSortIcon"];return e.isSort(l)&&t.push("is--filter-active"),t}:e.headerClassName="iho-table__hideSortIcon",i.filterConfig={iconMatch:"iho-table--iconfont iho-table-icon-filter",iconNone:"iho-table--iconfont iho-table-icon-filter",...i.filterConfig},e})),e.fieldHooks.fieldList.tap(h,(e=>p=e)),e.fieldHooks.fieldEnd.tapPromise(h,(async(e,{$table:t})=>{var r;try{if(await l(),!t.value)return;const o=null!=(r=t.value.getColumns())?r:[],s=[];if(i(p,(e=>{o.find((l=>l.field===e.field))||s.push(e)})),!s.length)return;setTimeout((()=>{var l,i;if(null==(l=e.sortConfig)?void 0:l.multiple){const e=null!=(i=t.value.getColumns())?i:[],l=s.concat(e).reduce(((e,l)=>{var t;const i=null==(t=l.editRender)?void 0:t.props;return n(i)&&m(i.isOrder)&&e.push({field:l.field,order:i.isOrder}),e}),[]);t.value.sort(l)}else s.reverse().some((e=>{var l;const i=null==(l=e.editRender)?void 0:l.props;if(n(i)&&m(i.isOrder))return e&&t.value.sort(e.field,i.isOrder),!0}))}),100)}finally{p=[]}})),e.exposeHooks.expose.tap(h,((e,l,{$table:t})=>(Object.assign(e,{setSort(e,l){t.value&&t.value.sort(e,l)},setFilter(e,l){if(!t.value)return;const i=t.value.getColumnByField(e);if(!i||!o(i.filters))return;const n=r(l);i.filters.forEach((e=>{e.checked=n.includes(e.value)})),t.value.updateData()}}),e)))}})}function m(e){return["asc","desc",null].includes(e)}export{h as filterRenderPlugin};
@@ -0,0 +1 @@
1
+ export declare function highLightSetPlugin(): import("../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{hex2rgba as o}from"../../../../shared/utils/index.js";import{isFunction as r,isString as t,isObject as n}from"lodash-es";import"../../index.js";import{useUUIDMap as e}from"../utils/index.js";import{defineTablePlugin as s}from"../hooks/useTablePlugin.js";function u(){const u="highLightSetPlugin",{getItemFromUUID:i,removeItemFromUUID:l,setItemFromUUID:a}=e((()=>!1));return s({name:u,apply(e){e.dataHooks.data.tapPromise(u,(async(o,r)=>{r.uuid&&(o.rowColor||o.fontColor)&&a(r.uuid,!0)})),e.dataHooks.dataEnd.tap(u,(e=>{if(!e.uuid||!i(e.uuid))return;const s=e.rowStyle;e.rowStyle=function(t){if(t.row.rowColor||t.row.fontColor){const[n,e,u,i]=o(t.row.rowColor||"",.2),l={"--row-background-color":`rgba(${n}, ${e}, ${u}, ${i})`,color:t.row.fontColor};return r(s)?Object.assign(l,s(t)):l}return r(s)?s(t):null};const u=e.rowClassName;e.rowClassName=function(o){if(o.row.rowColor){const e="row--custom";if(t(u))return`${e} ${u}`;if(r(u)){const r=u(o);return n(r)?Object.assign({"row--custom":!0},r):t(r)?`${e} ${r}`:null}return e}return r(u)?u(o):t(u)?u:null},l(e.uuid)}))}})}export{u as highLightSetPlugin};
@@ -1 +1 @@
1
- import*as e from"./anchorPlugin/index.js";import*as r from"./defaultConfigPlugin/index.js";import*as i from"./filterRenderPlugin/index.js";import*as n from"./keyboardEventPlugin/index.js";import*as d from"./lowCodeFieldAdaptorPlugin/index.js";import*as s from"./rendererPlugins/editableWidgets/dateRendererPlugin/index.js";import*as t from"./rendererPlugins/editableWidgets/inputRendererPlugin.js";import*as l from"./rendererPlugins/editableWidgets/numberRendererPlugin.js";import*as g from"./rendererPlugins/editableWidgets/selectRendererPlugin/index.js";import*as u from"./rendererPlugins/editableWidgets/separateRendererPlugin/index.js";import*as P from"./rendererPlugins/editableWidgets/timeRendererPlugin/index.js";import*as o from"./rendererPlugins/widgets/checkRendererPlugin.js";import*as a from"./rendererPlugins/widgets/colorRendererPlugin.js";import*as m from"./rendererPlugins/widgets/defaultRendererPlugin.js";import*as x from"./rendererPlugins/widgets/labelRendererPlugin.js";import*as p from"./rendererPlugins/widgets/pictureRendererPlugin.js";import*as f from"./rendererPlugins/widgets/seqRendererPlugin.js";import*as R from"./rendererPlugins/widgets/variableHeightRendererPlugin.js";import*as j from"./rowClickPlugin/index.js";import*as b from"./rowGroupSettingPlugin/index.js";import*as w from"./virtualTreePlugin/index.js";import{separateMetaModule as c}from"../../../../shared/utils/index.js";var W=c(Object.assign({"./anchorPlugin/index.tsx":e,"./defaultConfigPlugin/index.ts":r,"./filterRenderPlugin/index.tsx":i,"./keyboardEventPlugin/index.ts":n,"./lowCodeFieldAdaptorPlugin/index.tsx":d,"./rendererPlugins/editableWidgets/dateRendererPlugin/index.tsx":s,"./rendererPlugins/editableWidgets/inputRendererPlugin.tsx":t,"./rendererPlugins/editableWidgets/numberRendererPlugin.tsx":l,"./rendererPlugins/editableWidgets/selectRendererPlugin/index.tsx":g,"./rendererPlugins/editableWidgets/separateRendererPlugin/index.tsx":u,"./rendererPlugins/editableWidgets/timeRendererPlugin/index.tsx":P,"./rendererPlugins/widgets/checkRendererPlugin.tsx":o,"./rendererPlugins/widgets/colorRendererPlugin.tsx":a,"./rendererPlugins/widgets/defaultRendererPlugin.tsx":m,"./rendererPlugins/widgets/labelRendererPlugin.tsx":x,"./rendererPlugins/widgets/pictureRendererPlugin.tsx":p,"./rendererPlugins/widgets/seqRendererPlugin.tsx":f,"./rendererPlugins/widgets/variableHeightRendererPlugin.tsx":R,"./rowClickPlugin/index.ts":j,"./rowGroupSettingPlugin/index.ts":b,"./virtualTreePlugin/index.ts":w}));export{W as default};
1
+ import*as e from"./anchorPlugin/index.js";import*as r from"./defaultConfigPlugin/index.js";import*as i from"./filterRenderPlugin/index.js";import*as n from"./highLightSetPlugin.js";import*as s from"./keyboardEventPlugin/index.js";import*as d from"./lowCodeFieldAdaptorPlugin/index.js";import*as t from"./maxCheckSizePlugin.js";import*as l from"./rendererPlugins/editableWidgets/dateRendererPlugin/index.js";import*as g from"./rendererPlugins/editableWidgets/inputRendererPlugin.js";import*as u from"./rendererPlugins/editableWidgets/numberRendererPlugin.js";import*as o from"./rendererPlugins/editableWidgets/selectRendererPlugin/index.js";import*as P from"./rendererPlugins/editableWidgets/separateRendererPlugin/index.js";import*as a from"./rendererPlugins/editableWidgets/timeRendererPlugin/index.js";import*as m from"./rendererPlugins/widgets/checkRendererPlugin.js";import*as x from"./rendererPlugins/widgets/colorRendererPlugin.js";import*as p from"./rendererPlugins/widgets/defaultRendererPlugin.js";import*as f from"./rendererPlugins/widgets/labelRendererPlugin.js";import*as j from"./rendererPlugins/widgets/pictureRendererPlugin.js";import*as R from"./rendererPlugins/widgets/seqRendererPlugin.js";import*as b from"./rowClickPlugin/index.js";import*as w from"./rowDragPlugin/index.js";import*as c from"./rowGroupSettingPlugin/index.js";import*as h from"./varialbleHeightPlugin/index.js";import*as W from"./virtualTreePlugin/index.js";import{separateMetaModule as k}from"../../../../shared/utils/index.js";var C=k(Object.assign({"./anchorPlugin/index.tsx":e,"./defaultConfigPlugin/index.ts":r,"./filterRenderPlugin/index.tsx":i,"./highLightSetPlugin.tsx":n,"./keyboardEventPlugin/index.ts":s,"./lowCodeFieldAdaptorPlugin/index.tsx":d,"./maxCheckSizePlugin.ts":t,"./rendererPlugins/editableWidgets/dateRendererPlugin/index.tsx":l,"./rendererPlugins/editableWidgets/inputRendererPlugin.tsx":g,"./rendererPlugins/editableWidgets/numberRendererPlugin.tsx":u,"./rendererPlugins/editableWidgets/selectRendererPlugin/index.tsx":o,"./rendererPlugins/editableWidgets/separateRendererPlugin/index.tsx":P,"./rendererPlugins/editableWidgets/timeRendererPlugin/index.tsx":a,"./rendererPlugins/widgets/checkRendererPlugin.tsx":m,"./rendererPlugins/widgets/colorRendererPlugin.tsx":x,"./rendererPlugins/widgets/defaultRendererPlugin.tsx":p,"./rendererPlugins/widgets/labelRendererPlugin.tsx":f,"./rendererPlugins/widgets/pictureRendererPlugin.tsx":j,"./rendererPlugins/widgets/seqRendererPlugin.tsx":R,"./rowClickPlugin/index.ts":b,"./rowDragPlugin/index.ts":w,"./rowGroupSettingPlugin/index.ts":c,"./varialbleHeightPlugin/index.tsx":h,"./virtualTreePlugin/index.ts":W}));export{C as default};
@@ -1 +1 @@
1
- import{toRaw as e,h as t,inject as i,createVNode as l}from"vue";import{widthAppend as o,arrayed as n}from"../../../../../shared/utils/index.js";import{isObject as s,isFunction as d,cloneDeep as r,isString as a}from"lodash-es";import{NEllipsis as u}from"naive-ui";import f from"../../../../annotation-edit/index.js";import{HIGHEST_PRIORITY as m,IHO_TABLE_FIXED_STATUS as c,LOWEST_PRIORITY as p,WIDGET_TYPE as h,InjectionIhoTableAnnotation as b,InjectionIhoTableConfig as v}from"../../constants/index.js";import{defineTablePlugin as g}from"../../hooks/useTablePlugin.js";import{IhoTableStatusHelper as j,IhoTableUtils as R,IhoTableRenderHelper as P}from"../../utils/index.js";import{getDefaultValue as x}from"../rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";function S(){const S="lowCodeFieldAdaptorPlugin";return g({name:S,apply(g){g.fieldHooks.field.tap({name:S,stage:m},((m,p,g)=>{const S=m,F={className:S.bold?"iho-table__boldCell":"",field:S.columnName,showOverflow:"tooltip",visible:j.notNegative(S.isShow),minWidth:S.colWidth,sortable:j.isPositive(S.isSort),fixed:c[S.isFixed],...S,title:S.alias||S.title};return function(e,r){const m={default:r.slotFn,header:r.headerSlotFn,edit:r.editSlotFn,footer:r.footerSlotFn,...r.slots};if(d(r.checkEditStatus)){const{default:e}=m;d(e)&&(m.default=i=>r.checkEditStatus(i)?e(i):[t("span",null,x(i.row,i.column.editRender.props))])}if(!1!==r.annotation){const e=m.header;m.header=t=>function(e,t,r){const m=i(b),c=i(v),p=e.column||{},h=s(null==m?void 0:m.value)&&!1!==t.annotation,g=P.isEditableColumn(c.value,p),j=p.sortable||P.hasFilter(t.fieldSetting),R=a(r)?r:d(r)?r(e):null;return l("section",{class:"iho-table__headerWrapper"},[l("section",{style:{width:o(p.renderWidth-(h?36:20)-(j?24:0)-(g?20:0))}},[[...n(null!=R?R:l(u,{style:{maxWidth:"100%"}},{default:()=>p.title}))]]),h?l(f,{modelValue:m.value[p.field],"onUpdate:modelValue":e=>m.value[p.field]=e},null):null])}(t,r,e)}e.slots=m}(F,S),function(t,i,l){var o,n;const a=r(e(i));a.componentProps={size:"mini"===l.size?"small":l.size,...a.componentProps},t.editRender={autofocus:"input",name:R.getCellType(i),props:a},t.editRender.enabled=!Reflect.get(h,t.editRender.name),d(null==(o=t.slots)?void 0:o.default)&&(t.editRender.enabled=t.editRender.enabled&&d(null==(n=t.slots)?void 0:n.edit));if(!s(i.settingObj))return;Reflect.has(i.settingObj,"isHide")&&(t.visible=t.visible&&j.notPositive(i.settingObj.isHide))}(F,S,g),F})),g.fieldHooks.field.tap({name:S+"After",stage:p},(e=>(s(e.slots)&&Object.entries(e.slots).forEach((([t,i])=>{null==i&&Reflect.deleteProperty(e.slots,t)})),e)))}})}export{S as lowCodeFieldAdaptorPlugin};
1
+ import{toRaw as e,h as t,inject as i,createVNode as l}from"vue";import{arrayed as o,widthAppend as s}from"../../../../../shared/utils/index.js";import{isObject as n,isFunction as d,cloneDeep as a,isString as r}from"lodash-es";import{NEllipsis as u}from"naive-ui";import f from"../../../../annotation-edit/index.js";import{HIGHEST_PRIORITY as m,IHO_TABLE_FIXED_STATUS as c,LOWEST_PRIORITY as p,WIDGET_TYPE as h,InjectionIhoTableAnnotation as v,InjectionIhoTableConfig as b}from"../../constants/index.js";import{defineTablePlugin as g}from"../../hooks/useTablePlugin.js";import{IhoTableStatusHelper as R,IhoTableUtils as j,IhoTableRenderHelper as x}from"../../utils/index.js";import{getDefaultValue as P}from"../rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";function S(){const S="lowCodeFieldAdaptorPlugin";return g({name:S,apply(g){g.fieldHooks.field.tap({name:S,stage:m},((m,p,g)=>{const S=m,F={className:S.bold?"iho-table__boldCell":"",field:S.columnName,showOverflow:"tooltip",visible:R.notNegative(S.isShow),minWidth:S.colWidth,sortable:R.isPositive(S.isSort),fixed:c[S.isFixed],...S,title:S.alias||S.title};return function(e,a){const m={default:a.slotFn,header:a.headerSlotFn,edit:a.editSlotFn,footer:a.footerSlotFn,...a.slots};if(d(a.checkEditStatus)){const{default:e}=m;d(e)&&(m.default=i=>a.checkEditStatus(i)?e(i):[t("span",null,P(i.row,i.column.editRender.props))])}const c=m.header;m.header=e=>function(e,t,a){const m=i(v),c=i(b),p=e.column||{},h=n(null==m?void 0:m.value)&&!1!==t.annotation,g=x.isEditableColumn(c.value,p),R=p.sortable||x.hasFilter(t.fieldSetting),j=r(a)?a:d(a)?a(e):null;let P=!1;if(c.value){const e=c.value.editRules&&c.value.editRules[p.field];e&&(P=o(e).some((e=>e.required)))}return l("section",{class:"iho-table__headerWrapper"},[l("section",{style:{width:s(Math.max(0,p.renderWidth-20-(P?14:0)-(h?18:0)-(R?23:0)-(g?22:0)))}},[null!=j?j:l(u,{style:{maxWidth:"100%"}},{default:()=>p.title})]),h?l(f,{modelValue:m.value[p.field],"onUpdate:modelValue":e=>m.value[p.field]=e},null):null])}(e,a,c),e.slots=m}(F,S),function(t,i,l){var o,s;const r=a(e(i));r.componentProps={size:"mini"===l.size?"small":l.size,...r.componentProps},t.editRender={autofocus:"input",name:j.getCellType(i),props:r},t.editRender.enabled=!Reflect.get(h,t.editRender.name),d(null==(o=t.slots)?void 0:o.default)&&(t.editRender.enabled=t.editRender.enabled&&d(null==(s=t.slots)?void 0:s.edit));if(!n(i.settingObj))return;Reflect.has(i.settingObj,"isHide")&&(t.visible=t.visible&&R.notPositive(i.settingObj.isHide))}(F,S,g),F})),g.fieldHooks.field.tap({name:S+"After",stage:p},(e=>(n(e.slots)&&Object.entries(e.slots).forEach((([t,i])=>{null==i&&Reflect.deleteProperty(e.slots,t)})),e)))}})}export{S as lowCodeFieldAdaptorPlugin};
@@ -0,0 +1 @@
1
+ export declare function maxCheckSizePlugin(): import("../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{isNumber as e,isFunction as o}from"lodash-es";import"../../index.js";import{defineTablePlugin as n}from"../hooks/useTablePlugin.js";function t(){const t="maxCheckSizePlugin";return n({name:t,apply(n){n.configHooks.checkboxConfig.tap(t,((n,t,{$table:r})=>{if(n&&e(n.maxCheckSize)){const e=n.checkMethod,t=({row:e})=>{if(!r.value)return!0;const o=r.value.getCheckboxRecords()||[];return o.length<n.maxCheckSize||o.includes(e)};n.checkMethod=o(e)?function(o){return t(o)&&e(o)}:t,n.showHeader=!1}return n}))}})}export{t as maxCheckSizePlugin};
@@ -71,9 +71,13 @@ declare const _default: import("vue").DefineComponent<{
71
71
  [x: string]: unknown;
72
72
  };
73
73
  datePickerRef: import("vue").Ref<AnyObject | null>;
74
+ panelInstRef: import("vue").Ref<null>;
75
+ isDateTime: import("vue").ComputedRef<boolean>;
74
76
  formatRef: import("vue").ComputedRef<string>;
77
+ panelFormatRef: import("vue").ComputedRef<string | [string, string]>;
75
78
  focus: () => any;
76
79
  blur: () => any;
80
+ onUpdateShow: (show: boolean) => void;
77
81
  NDatePicker: any;
78
82
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
79
83
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -1,10 +1,10 @@
1
1
  import { PropType } from 'vue';
2
2
  import { VxeTableDefines } from 'vxe-table';
3
3
  import { AnyObject } from '../../../../../../../../es/shared/types';
4
+ import { IhoTableLowCodeField } from '../../../../../../../../es/components/iho-table';
4
5
  declare const _default: import("vue").DefineComponent<{
5
6
  value: {
6
7
  type: PropType<string | number | (string | number)[]>;
7
- default: undefined;
8
8
  };
9
9
  column: {
10
10
  type: PropType<VxeTableDefines.ColumnInfo>;
@@ -18,10 +18,20 @@ declare const _default: import("vue").DefineComponent<{
18
18
  type: NumberConstructor;
19
19
  required: true;
20
20
  };
21
+ options: {
22
+ type: PropType<AnyObject[]>;
23
+ default: () => never[];
24
+ };
25
+ queryOptions: {
26
+ type: PropType<IhoTableLowCodeField.QueryOptions>;
27
+ };
28
+ placeholder: {
29
+ type: StringConstructor;
30
+ default: string;
31
+ };
21
32
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
22
33
  value: {
23
34
  type: PropType<string | number | (string | number)[]>;
24
- default: undefined;
25
35
  };
26
36
  column: {
27
37
  type: PropType<VxeTableDefines.ColumnInfo>;
@@ -35,9 +45,21 @@ declare const _default: import("vue").DefineComponent<{
35
45
  type: NumberConstructor;
36
46
  required: true;
37
47
  };
48
+ options: {
49
+ type: PropType<AnyObject[]>;
50
+ default: () => never[];
51
+ };
52
+ queryOptions: {
53
+ type: PropType<IhoTableLowCodeField.QueryOptions>;
54
+ };
55
+ placeholder: {
56
+ type: StringConstructor;
57
+ default: string;
58
+ };
38
59
  }>> & {
39
60
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
40
61
  }, {
41
- value: string | number | (string | number)[];
62
+ options: AnyObject[];
63
+ placeholder: string;
42
64
  }>;
43
65
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as o,createVNode as t,mergeProps as r}from"vue";import{NSelect as n}from"naive-ui";import{useIhoTableFormEvent as a}from"../../../../utils/index.js";import{useAutoFocus as l}from"../hooks/useAutoFocus.js";import{useDebounceFn as i}from"@vueuse/core";var u=e({name:"EditSelect",inheritAttrs:!1,components:{NSelect:n},props:{value:{type:[Array,String,Number],default:void 0},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0}},emits:["update:value"],setup(e,{attrs:u,emit:s}){const{isShow:c,setRef:p}=l(),{emitFormChangeWithParams:d}=a(e),m=o({placeholder:u.placeholder||"请选择",options:u.options});async function v(o){var t;m.loading=!0;const r={keyword:o,row:e.row,column:e.column,rowIndex:e.rowIndex};try{m.options=await(null==(t=u.queryOptions)?void 0:t.call(u,r)),m.loading=!1}catch(o){console.log(`获取${e.column.field}_options错误`)}}function f(o){const t=e.value;s("update:value",o),d({oldValue:t})}return m.options||(m.remote=!0,m.loading=!1,m.onSearch=i(v,800),m.onSearch("")),()=>t(n,r({ref:p,show:c.value,"onUpdate:show":e=>c.value=e},u,m,{value:e.value,consistentMenuWidth:!1,clearable:!0,filterable:!0,onUpdateValue:f}),null)}});export{u as default};
1
+ import{defineComponent as e,reactive as o,watch as t,createVNode as r,mergeProps as n}from"vue";import{NSelect as l}from"naive-ui";import{useIhoTableFormEvent as a}from"../../../../utils/index.js";import{useAutoFocus as u}from"../hooks/useAutoFocus.js";import{useDebounceFn as i}from"@vueuse/core";import{isFunction as s,isArray as p}from"lodash-es";var c=e({name:"EditSelect",props:{value:{type:[Array,String,Number]},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0},options:{type:Array,default:()=>[]},queryOptions:{type:Function},placeholder:{type:String,default:"请选择"}},emits:["update:value"],setup(e,{emit:c}){const{isShow:d,setRef:m,formRef:f}=u(),{emitFormChangeWithParams:y}=a(e),h=o({options:e.options,loading:!1,remote:!1,onSearch:null}),v=i((async function(o=""){h.loading=!0;try{if(!s(e.queryOptions))return;h.options=await e.queryOptions({keyword:o,row:e.row,column:e.column,rowIndex:e.rowIndex})}catch(o){console.log(`获取${e.column.field}_options错误`)}finally{h.loading=!1}}),400);function w(o){const t=e.value;c("update:value",o),y({oldValue:t})}function b(e){var o,t;"Tab"===e.key&&f.value&&(null==(t=(o=f.value).handleKeydown)||t.call(o,{...e,key:"Enter",preventDefault:e.preventDefault.bind(e)}))}t((()=>e.options),(e=>{if(p(e)&&e.length)return h.options=e,h.remote=!1,void(h.onSearch=null);h.remote=!0,h.onSearch=v,h.onSearch()}),{immediate:!0});const g=()=>({class:"iho-table__selectOption"}),S={class:"iho-table__selectMenu"};return()=>r(l,n({ref:m,show:d.value,"onUpdate:show":e=>d.value=e,placeholder:e.placeholder},h,{value:e.value,clearable:!0,filterable:!0,nodeProps:g,menuProps:S,onUpdateValue:w,onKeydown:b}),null)}});export{c as default};
@@ -1 +1 @@
1
- import{reactive as e,inject as o,createVNode as i,mergeProps as n}from"vue";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as t,InjectionIhoTableUUID as r}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as l,IhoTableRenderHelper as d}from"../../../../utils/index.js";import s from"./editSelect.js";import{getDefaultValue as p}from"./selectUtils.js";import{defineTablePlugin as u}from"../../../../hooks/useTablePlugin.js";function a(){const a="selectRendererPlugin",c=e(new Map),f=e(new Map);return u({name:a,vxe(e){e.interceptor.add("event.clearActived",l(t.SELECT,(e=>e.classList.contains("n-base-select-menu-option-wrapper")))),e.renderer.add(t.SELECT,{renderCell({props:e},{row:n,column:t,rowIndex:l}){var d;const s=o(r),u=(null==(d=c.get(s).find((e=>e.field===t.field)))?void 0:d.options)||[],a=p(n,e,u);return[i("span",null,[a])]},renderEdit:d.createRenderEdit((({fieldItem:e,emitFormClick:o,row:t,column:r,$rowIndex:l})=>[i(s,n({options:e.options,queryOptions:e.queryOptions},e.componentProps,{column:r,row:t,"row-index":l,value:t[r.field],"onUpdate:value":e=>t[r.field]=e,onClick:o}),null)]))})},apply(e){e.fieldHooks.fieldList.tap(a,((e,{uuid:o})=>(o&&f.set(o,e),e))),e.dataHooks.data.tapPromise(a,(async(e,o,{index:i,$table:n})=>{var t;if(!o.uuid)return;const r=f.get(o.uuid),l=c.get(o.uuid)||[];for(const n of r)if(n.field){if("select"===n.formType){if(l.findIndex((e=>e.field===n.field))>-1)continue;let o=n.options||[];if(n.queryOptions)try{const r={keyword:"",row:e,column:n,rowIndex:i};o=await(null==(t=n.queryOptions)?void 0:t.call(n,r))}catch(e){console.log(`获取${n.field}_options错误`)}l.push({field:n.field,options:o})}c.set(o.uuid,l)}}))}})}export{a as selectRendererPlugin};
1
+ import{reactive as e,inject as o,createVNode as t,mergeProps as i,onBeforeUnmount as n}from"vue";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as l,InjectionIhoTableUUID as r}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as s,IhoTableRenderHelper as d}from"../../../../utils/index.js";import u from"./editSelect.js";import{getDefaultValue as a}from"./selectUtils.js";import{defineTablePlugin as p}from"../../../../hooks/useTablePlugin.js";function f(){const f="selectRendererPlugin",c=e(new Map),m=e(new Map);return p({name:f,vxe(e){e.interceptor.add("event.clearActived",s(l.SELECT,(e=>e.classList.contains("iho-table__selectMenu")))),e.renderer.add(l.SELECT,{renderCell({props:e},{row:i,column:n}){var l;const s=o(r),d=(null==(l=c.get(s).find((e=>e.field===n.field)))?void 0:l.options)||[],u=a(i,e,d);return[t("span",null,[u])]},renderEdit:d.createRenderEdit((({fieldItem:e,emitFormClick:n,row:l,column:s,$rowIndex:d})=>{var a;const p=o(r),f=(null==(a=c.get(p).find((e=>e.field===s.field)))?void 0:a.options)||[];return[t(u,i({queryOptions:e.queryOptions},e.componentProps,{options:f,column:s,row:l,"row-index":d,value:l[s.field],"onUpdate:value":e=>l[s.field]=e,onClick:n}),null)]}))})},apply(e){e.fieldHooks.fieldList.tap(f,((e,{uuid:o})=>(o&&(m.set(o,e),c.set(o,[])),e))),e.fieldHooks.fieldEnd.tapPromise(f,(async({uuid:e},{$table:o})=>{if(!e)return;const t=m.get(e),i=c.get(e);t.forEach((async o=>{var t;if(o.field&&"select"===o.formType){if(i.findIndex((e=>e.field===o.field))>-1)return;let n=o.options||[];if(o.queryOptions)try{const e={keyword:"",column:o,isFullData:!0};n=await(null==(t=o.queryOptions)?void 0:t.call(o,e))}catch(e){console.log(`获取${o.field}_options错误`)}i.push({field:o.field,options:n}),c.set(e,i)}}))})),e.setupHooks.setup.tap(f,(e=>{n((()=>{e.value.uuid&&(m.delete(e.value.uuid),c.delete(e.value.uuid))}))}))}})}export{f as selectRendererPlugin};
@@ -1 +1 @@
1
- import{reactive as e,inject as t,createVNode as o,toRaw as n,h as i,onBeforeUnmount as r}from"vue";import{traverse as a}from"../../../../../../../shared/utils/index.js";import{isFunction as d,isObject as s,range as l}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as u,InjectionIhoTableUUID as c}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as p,IhoTableRenderHelper as f,getRowHeight as m,getColumnRenderWidth as v}from"../../../../utils/index.js";import{isSeparateColumn as h,contentSeparate as A,getColumnInfoMaxLength as E,generateSeparateRowData as g}from"./separateUtils.js";import k from"./editSeparate.vue.js";import{defineTablePlugin as x}from"../../../../hooks/useTablePlugin.js";function b(){const b="separateRendererPlugins",w=e(new Map);function P(e,t){var o;return null==(o=w.get(e))?void 0:o.get(t)}function R(e,t,o){const n=w.get(e)||new WeakMap;w.set(e,n),n.set(t,o)}const T=e(new Map);return x({name:b,vxe(e){e.interceptor.add("event.clearActived",p(u.SEPARATE,(e=>e.classList.contains("v-binder-follower-content")))),e.renderer.add(u.SEPARATE,{renderCell(e,{column:n,row:i}){const r=P(t(c),i)||{separateData:{}};return o("section",null,[r.separateData[n.field]])},renderEdit:f.createRenderEdit((({fieldItem:e,column:r,row:a,emitFormClick:l})=>{var u,p,f;const v=P(t(c),a),h=m(),A={};let E=null!=(p=null==(u=e.componentProps)?void 0:u.separateSlot)?p:e.separateSlot;return E&&(E=n(E),A.menu=d(E)?E:s(E)?e=>i(E,e):void 0),[o(k,{value:a[r.field],"onUpdate:value":e=>a[r.field]=e,"row-index":null==v?void 0:v.index,height:h,column:r,row:a,"display-content":null==(f=null==v?void 0:v.separateData)?void 0:f[r.field],onClick:l},A)]}))})},apply(e){function t(e){return(...t)=>{var o;return!(null==(o=t[0].row)?void 0:o.$__SEPARATE)&&(!d(e)||e(...t))}}e.fieldHooks.fieldList.tap(b,((e,{uuid:t})=>(t&&T.set(t,e.reduce(((e,t)=>(a(t,(t=>{h(t)&&e.push(n(t))})),e)),[])),e))),e.dataHooks.data.tapPromise(b,(async(e,t,{insertAfter:o,index:n,$table:i})=>{if(!t.uuid)return;const r=T.get(t.uuid);if(!r||!r.length)return;const a=[];for(const t of r){if(!t.field)continue;const o=await v(t,i);a.push({field:t.field,data:A(e[t.field],t,o)})}l(E(a)).forEach(((i,r)=>{const d=g(a,r);if(0===r)return R(t.uuid,e,{index:n,separateData:d}),void(e.$__SEPARATE_DATA=[d]);const s={$__SEPARATE:!0};R(t.uuid,s,{index:n,separateData:d}),e.$__SEPARATE_DATA.push(d),o(s)}))})),e.eventHooks.onResizableChange.tap(b,(async({column:e},t,o)=>{h(e)&&o.updateTableDataRef()})),e.configHooks.editConfig.tap(b,((e={},o)=>(e.beforeEditMethod=t(e.beforeEditMethod),e))),e.configHooks.checkboxConfig.tap(b,((e={},o)=>(e.checkMethod=t(e.checkMethod),e.visibleMethod=t(e.visibleMethod),e))),e.setupHooks.setup.tap(b,(e=>{r((()=>{e.value.uuid&&(w.delete(e.value.uuid),T.delete(e.value.uuid))}))}))}})}export{b as separateRendererPlugins};
1
+ import{reactive as e,inject as t,createVNode as o,toRaw as n,h as i,onBeforeUnmount as r}from"vue";import{traverse as a}from"../../../../../../../shared/utils/index.js";import{isFunction as d,isObject as s,range as l}from"lodash-es";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as u,InjectionIhoTableUUID as c}from"../../../../constants/index.js";import{createIhoTableClearActivedInterceptor as p,IhoTableRenderHelper as f,getRowHeight as m,getColumnRenderWidth as v,parseMergeField as h}from"../../../../utils/index.js";import{isSeparateColumn as A,contentSeparate as E,getColumnInfoMaxLength as g,generateSeparateRowData as k}from"./separateUtils.js";import x from"./editSeparate.vue.js";import{defineTablePlugin as b}from"../../../../hooks/useTablePlugin.js";function w(){const w="separateRendererPlugins",P=e(new Map);function R(e,t){var o;return null==(o=P.get(e))?void 0:o.get(t)}function T(e,t,o){const n=P.get(e)||new WeakMap;P.set(e,n),n.set(t,o)}const _=e(new Map);return b({name:w,vxe(e){e.interceptor.add("event.clearActived",p(u.SEPARATE,(e=>e.classList.contains("v-binder-follower-content")))),e.renderer.add(u.SEPARATE,{renderCell(e,{column:n,row:i}){const r=R(t(c),i)||{separateData:{}};return o("section",null,[r.separateData[n.field]])},renderEdit:f.createRenderEdit((({fieldItem:e,column:r,row:a,emitFormClick:l})=>{var u,p,f;const v=R(t(c),a),h=m(),A={};let E=null!=(p=null==(u=e.componentProps)?void 0:u.separateSlot)?p:e.separateSlot;return E&&(E=n(E),A.menu=d(E)?E:s(E)?e=>i(E,e):void 0),[o(x,{value:a[r.field],"onUpdate:value":e=>a[r.field]=e,"row-index":null==v?void 0:v.index,height:h,column:r,row:a,"display-content":null==(f=null==v?void 0:v.separateData)?void 0:f[r.field],onClick:l},A)]}))})},apply(e){function t(e){return(...t)=>{var o;return!(null==(o=t[0].row)?void 0:o.$__SEPARATE)&&(!d(e)||e(...t))}}e.fieldHooks.fieldList.tap(w,((e,{uuid:t})=>(t&&_.set(t,e.reduce(((e,t)=>(a(t,(t=>{A(t)&&e.push(n(t))})),e)),[])),e))),e.dataHooks.data.tapPromise(w,(async(e,t,{insertAfter:o,index:n,$table:i})=>{if(!t.uuid)return;const r=_.get(t.uuid);if(!r||!r.length)return;const a=[];for(const t of r){if(!t.field)continue;const o=await v(t,i);a.push({field:t.field,data:E(h(e,t),t,o)})}l(g(a)).forEach(((i,r)=>{const d=k(a,r);if(0===r)return T(t.uuid,e,{index:n,separateData:d}),void(e.$__SEPARATE_DATA=[d]);const s={$__SEPARATE:!0};T(t.uuid,s,{index:n,separateData:d}),e.$__SEPARATE_DATA.push(d),o(s)}))})),e.eventHooks.onResizableChange.tap(w,(async({column:e},t,o)=>{A(e)&&o.updateTableDataRef()})),e.configHooks.editConfig.tap(w,((e={},o)=>(e.beforeEditMethod=t(e.beforeEditMethod),e))),e.configHooks.checkboxConfig.tap(w,((e={},o)=>(e.checkMethod=t(e.checkMethod),e.visibleMethod=t(e.visibleMethod),e))),e.setupHooks.setup.tap(w,(e=>{r((()=>{e.value.uuid&&(P.delete(e.value.uuid),_.delete(e.value.uuid))}))}))}})}export{w as separateRendererPlugins};
@@ -54,7 +54,7 @@ declare const _default: import("vue").DefineComponent<{
54
54
  clickShortcutOption: (item: string) => void;
55
55
  onUpdateFormattedValue: (value: string) => void;
56
56
  onBlur: () => void;
57
- onKeyUp: (event: AnyObject) => void;
57
+ onKeyUp: (event: KeyboardEvent) => void;
58
58
  NInput: any;
59
59
  NPopover: any;
60
60
  NSpace: any;
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as t,ref as a,openBlock as o,createBlock as l,unref as r,mergeProps as u,withCtx as i,createVNode as m,isRef as n,createElementBlock as d,Fragment as f,renderList as s,createTextVNode as c,toDisplayString as p,createCommentVNode as v}from"vue";import{NPopover as _,NInput as h,NSpace as y,NScrollbar as k,NButton as V}from"naive-ui";import{useIhoTableFormEvent as w}from"../../../../utils/index.js";import{useAutoFocus as b}from"../hooks/useAutoFocus.js";import g from"../../../../../../time-picker/index.js";import{parse as C,isValid as j,format as F}from"date-fns";import x from"../../../../../../../_virtual/plugin-vue_export-helper.js";var H=x(e({__name:"editTime",props:{formattedValue:{type:String,default:void 0},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0}},emits:["update:formattedValue","click"],setup(e,{emit:x}){const H=e,q=t(),{emitFormChangeWithParams:O}=w(H),{formRef:A,isShow:M}=b(),R=a(H.formattedValue);let S=H.formattedValue;const{placeholder:T="请选择",valueFormat:U="HH:mm",shortcutOptions:z=[]}=q,B={placeholder:T,valueFormat:U,format:U||"yyyy-MM-dd HH:mm:ss"};function D(e){R.value=e,S!==e&&(x("update:formattedValue",e),O({oldValue:S}),S=e)}function I(){const e=C(H.formattedValue||"",B.valueFormat.replace(/:/,""),new Date);if(j(e)){D(F(e,B.valueFormat))}}function K(e){var t;const{keyCode:a=0}=e;13==a&&(null==(t=A.value)||t.blur(),M.value=!1)}return(t,a)=>(o(),l(r(_),u({show:r(M),trigger:"click",showArrow:!1,placement:"bottom-start",style:{padding:"0"}},t.$attrs,{onClickoutside:a[3]||(a[3]=()=>M.value=!1)}),{trigger:i((()=>[m(r(h),{ref_key:"formRef",ref:A,clearable:"",value:e.formattedValue,"onUpdate:value":a[0]||(a[0]=e=>n(formattedValue)?formattedValue.value=e:null),onClick:a[1]||(a[1]=()=>M.value=!0),onBlur:I,onKeyup:K},null,8,["value"])])),default:i((()=>[m(r(y),null,{default:i((()=>[m(r(g),u({show:"","formatted-value":R.value},r(B),{class:"iho-table__time-picker",to:!1,"onUpdate:formattedValue":D,onConfirm:a[2]||(a[2]=()=>M.value=!1)}),null,16,["formatted-value"]),m(r(k),{class:"iho-table__scrollbar"},{default:i((()=>[r(z).length?(o(),l(r(y),{key:0,vertical:"",wrap:!1},{default:i((()=>[(o(!0),d(f,null,s(r(z),(e=>(o(),l(r(V),{size:"tiny",key:e,onClick:t=>function(e){D(e),M.value=!1}(e)},{default:i((()=>[c(p(e),1)])),_:2},1032,["onClick"])))),128))])),_:1})):v("v-if",!0)])),_:1})])),_:1})])),_:1},16,["show"]))}}),[["__file","editTime.vue"]]);export{H as default};
1
+ import{defineComponent as e,useAttrs as t,ref as a,openBlock as l,createBlock as o,unref as r,mergeProps as u,withCtx as i,createVNode as m,isRef as n,createElementBlock as f,Fragment as d,renderList as s,createTextVNode as c,toDisplayString as p,createCommentVNode as v}from"vue";import{NPopover as _,NInput as h,NSpace as k,NScrollbar as y,NButton as V}from"naive-ui";import{useIhoTableFormEvent as w}from"../../../../utils/index.js";import{useAutoFocus as b}from"../hooks/useAutoFocus.js";import g from"../../../../../../time-picker/index.js";import{parse as j,isValid as C,format as F}from"date-fns";import x from"../../../../../../../_virtual/plugin-vue_export-helper.js";var q=x(e({__name:"editTime",props:{formattedValue:{type:String,default:void 0},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0}},emits:["update:formattedValue","click"],setup(e,{emit:x}){const q=e,O=t(),{emitFormChangeWithParams:A}=w(q),{formRef:H,isShow:R}=b(),S=a(q.formattedValue);let T=q.formattedValue;const{placeholder:U="请选择",valueFormat:z="HH:mm",shortcutOptions:B=[]}=O,D={placeholder:U,valueFormat:z,format:z};function E(e){S.value=e,T!==e&&(x("update:formattedValue",e),A({oldValue:T}),T=e)}function I(){const e=j(q.formattedValue||"",D.valueFormat.replace(/:/,""),new Date);if(C(e)){E(F(e,D.valueFormat))}}function K(e){var t;const{key:a}=e;"Enter"===a&&(null==(t=H.value)||t.blur(),R.value=!1)}return(t,a)=>(l(),o(r(_),u({show:r(R),trigger:"click",showArrow:!1,placement:"bottom-start",style:{padding:"0"}},t.$attrs,{onClickoutside:a[3]||(a[3]=()=>R.value=!1)}),{trigger:i((()=>[m(r(h),{ref_key:"formRef",ref:H,clearable:"",value:e.formattedValue,"onUpdate:value":a[0]||(a[0]=e=>n(formattedValue)?formattedValue.value=e:null),onClick:a[1]||(a[1]=()=>R.value=!0),onBlur:I,onKeyup:K},null,8,["value"])])),default:i((()=>[m(r(k),null,{default:i((()=>[m(r(g),u({show:"","formatted-value":S.value},r(D),{class:"iho-table__time-picker",to:!1,"onUpdate:formattedValue":E,onConfirm:a[2]||(a[2]=()=>R.value=!1)}),null,16,["formatted-value"]),m(r(y),{class:"iho-table__scrollbar"},{default:i((()=>[r(B).length?(l(),o(r(k),{key:0,vertical:"",wrap:!1},{default:i((()=>[(l(!0),f(d,null,s(r(B),(e=>(l(),o(r(V),{size:"tiny",key:e,onClick:t=>function(e){E(e),R.value=!1}(e)},{default:i((()=>[c(p(e),1)])),_:2},1032,["onClick"])))),128))])),_:1})):v("v-if",!0)])),_:1})])),_:1})])),_:1},16,["show"]))}}),[["__file","editTime.vue"]]);export{q as default};
@@ -1 +1 @@
1
- import{createVNode as n}from"vue";import{isMatchLowCodeCondition as r}from"../../../../../../shared/utils/index.js";import{isString as o,isObject as e,isArray as t}from"lodash-es";import"../../../../index.js";import{WIDGET_TYPE as i}from"../../../constants/index.js";import{IhoTableWarn as c}from"../../../utils/index.js";import{defineTablePlugin as l}from"../../../hooks/useTablePlugin.js";function d(){return l({name:"defaultRendererPlugin",vxe(l){l.renderer.add(i.DEFAULT,{renderCell(i,{row:l,column:d}){const u=l[d.field],s=function(n){return o(n)&&!!n.match(/^###\{[^{}]+}$/)}(u)?function(r){const o=t(r);return[n("div",{style:{color:o.background||o.icon}},[e(o.icon),o.change_text])];function e(r){return r?r.match(/#[\da-f]{6}|[\da-f]{3}/i)?n("i",{class:"icon-dot",style:{"--table-icon-color":r,"--table-icon-shadow":r}},null):n("i",{class:o.icon},null):null}function t(n){try{return JSON.parse(n.replace(/^###/,""))}catch(r){return c(`invalid json-content ${n}`),{}}}}(u):[u];return function(o,e,i,c){if(!t(o)||!o.length)return c;const l=o.find((n=>n.condition&&n.condition.find((n=>{const o=e[n.field_key||i.field];return r(o,n)}))));return l?n("div",{style:{color:l.color},class:l.icon},[c]):c}(function(n){var r,o,t;const i=null==(r=n.editRender)?void 0:r.props;if(!e(i))return;return null!=(t=i.colorAndIcon)?t:null==(o=i.settingObj)?void 0:o.colorAndIcon}(d),l,d,s)}}),l.renderer.add(i.STATUS,l.renderer.get(i.DEFAULT))}})}export{d as defaultRendererPlugin};
1
+ import{createVNode as n}from"vue";import{isMatchLowCodeCondition as o}from"../../../../../../shared/utils/index.js";import{isObject as r,isArray as e}from"lodash-es";import"../../../../index.js";import{WIDGET_TYPE as t}from"../../../constants/index.js";import{parseMergeField as i,isRichContent as l,parseRichContent as c}from"../../../utils/index.js";import{defineTablePlugin as d}from"../../../hooks/useTablePlugin.js";function s(){return d({name:"defaultRendererPlugin",vxe(d){d.renderer.add(t.DEFAULT,{renderCell(t,{row:d,column:s}){const u=i(d,s),a=l(u)?function(o){const r=c(o);return[n("div",{style:{color:r.background||r.icon}},[e(r.icon),r.change_text])];function e(o){return o?o.match(/#[\da-f]{6}|[\da-f]{3}/i)?n("i",{class:"icon-dot",style:{"--table-icon-color":o,"--table-icon-shadow":o}},null):n("i",{class:r.icon},null):null}}(u):[u];return function(r,t,i,l){if(!e(r)||!r.length)return l;const c=r.find((n=>n.condition&&n.condition.find((n=>{const r=t[n.field_key||i.field];return o(r,n)}))));return c?n("div",{style:{color:c.color},class:c.icon},[l]):l}(function(n){var o,e,t;const i=null==(o=n.editRender)?void 0:o.props;if(!r(i))return;return null!=(t=i.colorAndIcon)?t:null==(e=i.settingObj)?void 0:e.colorAndIcon}(s),d,s,a)}}),d.renderer.add(t.STATUS,d.renderer.get(t.DEFAULT))}})}export{s as defaultRendererPlugin};
@@ -1 +1 @@
1
- import{inject as o,createVNode as e}from"vue";import{SettingsSharp as n}from"@vicons/ionicons5";import{isFunction as i}from"lodash-es";import{NIcon as t}from"naive-ui";import"../../../../index.js";import{InjectionIhoTableEmits as r}from"../../../constants/index.js";import{IhoTableStatusHelper as s}from"../../../utils/index.js";import{defineTablePlugin as l}from"../../../hooks/useTablePlugin.js";function f(){const f="seqRendererPlugin";return l({name:f,apply(l){l.fieldHooks.field.tap({name:f,before:"checkRendererPlugin"},((l,{index:m,insertBefore:u},c)=>{var d;if(0===m&&c.showSeq){const l={align:"center",fixed:"left",width:50,type:"seq",field:f,annotation:!1,slots:{header(){if(s.isPositive(c.hideSettingBtn))return[];const i=o(r);return[e(t,{style:{cursor:"pointer"},size:"14",color:"#777",component:n,onClick:function(){i&&i("settingClick")}},null)]}}};i(null==(d=c.columnConfig)?void 0:d.seqSlotFn)&&(l.slots||(l.slots={}),l.slots.default=c.columnConfig.seqSlotFn),u(l)}return l}))}})}export{f as seqRendererPlugin};
1
+ import{inject as o,createVNode as e}from"vue";import{SettingsSharp as n}from"@vicons/ionicons5";import{isFunction as i}from"lodash-es";import{NIcon as t}from"naive-ui";import"../../../../index.js";import{InjectionIhoTableEmits as r}from"../../../constants/index.js";import{IhoTableStatusHelper as s}from"../../../utils/index.js";import{defineTablePlugin as l}from"../../../hooks/useTablePlugin.js";function f(){const f="seqRendererPlugin";return l({name:f,apply(l){l.fieldHooks.field.tap({name:f,before:"checkRendererPlugin"},((l,{index:m,insertBefore:c},u)=>{var a,d;if(0===m&&u.showSeq){const l={align:"center",fixed:"left",width:50,type:"seq",field:f,annotation:!1,slots:{header(){if(s.isPositive(u.hideSettingBtn))return[];const i=o(r);return[e(t,{style:{cursor:"pointer"},size:"14",color:"#777",component:n,onClick:function(){i&&i("settingClick")}},null)]}}};i(null==(a=u.columnConfig)?void 0:a.seqSlotFn)&&(l.slots||(l.slots={}),l.slots.default=u.columnConfig.seqSlotFn),(null==(d=u.sortableConfig)?void 0:d.enable)&&(l.className="col--drag"),c(l)}return l}))}})}export{f as seqRendererPlugin};
@@ -0,0 +1 @@
1
+ export declare function rowDragPlugin(): import("../../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{promiseTimeout as e}from"@vueuse/shared";import{isFunction as o}from"lodash-es";import{nextTick as n,onBeforeUnmount as t}from"vue";import"../../../index.js";import l from"sortablejs";import{defineTablePlugin as r}from"../../hooks/useTablePlugin.js";function u(){const u="rowDragPlugin",a=new Map;return r({name:u,apply(r){r.fieldHooks.fieldEnd.tapPromise(u,(async(t,{$table:r,emits:u})=>{const{uuid:i}=t,d=t.sortableConfig||{};i&&d.enable&&!a.get(i)&&(await n(),async function n(t=0){var s,v,c;if(t>2)return;const f=null==(c=null==(v=null==(s=r.value)?void 0:s.$el)?void 0:v.querySelector)?void 0:c.call(v,".body--wrapper>.vxe-table--body tbody");if(f){const e=l.create(f,{handle:".col--seq",...d,onEnd:e=>{var n,t,l,a,i;const s={},{oldIndex:v=0,newIndex:c=0,item:f}=e,{virtualY:m}=(null==(n=r.value)?void 0:n.getScroll())||{};if(m){const{item:e}=(null==(t=r.value)?void 0:t.getRowNode(f))||{},o=null!=(i=null!=(a=e.__currentIndex)?a:null==(l=r.value)?void 0:l.getVTRowIndex(e))?i:0,n=o+(c-v);e.__currentIndex=n,s.oldIndex=o,s.newIndex=n}u("rowDrag",{...e,...s}),o(d.onEnd)&&d.onEnd(e),d.usePreset&&function(e,o,n){n.treeConfig&&n.treeConfig.transform}(0,0,r.value)}});return a.set(i,e)}await e(100),n(++t)}())})),r.setupHooks.setup.tap(u,(e=>{t((()=>{var o;const n=null==(o=e.value)?void 0:o.uuid;n&&a.has(n)&&a.delete(n)}))}))}})}export{u as rowDragPlugin};
@@ -1 +1 @@
1
- export declare function variableHeightRendererPlugin(): import("../../../../../../../es/components/iho-table").TablePlugin;
1
+ export declare function variableHeightRendererPlugin(): import("../../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{defineComponent as e,inject as t,ref as o,computed as l,provide as n,watch as r,onMounted as a,createVNode as s,h as i,unref as u,onBeforeUnmount as c,shallowReactive as d}from"vue";import{traverse as p}from"../../../../../shared/utils/index.js";import{doAnimation as f}from"../../../../../shared/utils/anime.js";import{useThrottleFn as m}from"@vueuse/core";import{promiseTimeout as h}from"@vueuse/shared";import{isFunction as g,last as v,omit as x}from"lodash-es";import"../../../index.js";import{InjectionIhoTableUUID as I,WIDGET_TYPE as b}from"../../constants/index.js";import{useUUIDMap as w}from"../../utils/index.js";import{defineTablePlugin as y}from"../../hooks/useTablePlugin.js";class T{constructor(){this.records={},this.maxRecords=d(new Map)}set(e,t,o){if(this.records[e]||(this.records[e]={}),this.records[e][t]===o)return;this.records[e][t]=o;const l=Math.max(...Object.values(this.records[e]),0);this.maxRecords.get(e)!==l&&this.maxRecords.set(e,l)}getMax(e){return this.maxRecords.get(e)||0}}const{getItemFromUUID:R,removeItemFromUUID:H}=w((()=>new T),!0),{getItemFromUUID:D,removeItemFromUUID:M,setItemFromUUID:S}=w((()=>null)),{getItemFromUUID:U,removeItemFromUUID:C,setItemFromUUID:$}=w((()=>{})),E=e({props:{payload:{type:Object,required:!0}},setup(e){const u=t(I),c=t("$xetable"),d=o(),p=R(u),f=l((()=>e.payload.row[e.payload.column.field]));function m(){const{row:t,column:o}=e.payload,l=c.getRowSeq(t);if(!p||null==l||!d.value)return;const n=d.value.clientHeight;p.set(l,o.field,n)}n("updateCellHeight",m),r([()=>e.payload.rowIndex,()=>e.payload.column.field,f,()=>e.payload.column.renderWidth],(async()=>{await h(0),m()})),a((()=>{c&&!D(u)&&S(u,c),m()}));const v=l((()=>{var t,o,l,n;const r=null!=(o=null==(t=e.payload.column.editRender)?void 0:t.props)?o:{},a=null!=(n=null==(l=r.slots)?void 0:l.default)?n:r.slotFn;return g(a)?a:()=>f.value}));return()=>s("div",{ref:d,style:"padding:7px 0"},[i(v.value,e.payload)])}});function k(e,t,{scrollTop:o=0}){var l,n;const{uuid:r,rowConfig:a={}}=t;if(!r)return;const s=R(r),{oSize:i=0,gt:c=100}=null!=(l=U(r))?l:{},{internalData:d,reactData:p}=e,{scrollYStore:f,elemStore:m,afterFullData:h,fullDataRowIdData:x}=d;if(c>h.length)return;const I=null!=(n=a.height)?n:36,b=m["main-body-wrapper"],w=b?u(b):null;let y=w?Math.max(8,Math.ceil(w.clientHeight/I)+2+i):8;const T=[0];let H=0;if(o&&h.find(((t,l)=>{const n=e.getRowSeq(t),r=(v(T)||0)+Math.max(I,s.getMax(n));if(T.push(r),r>o)return H=Math.max(0,l-i),y+=Math.min(H,i),!0})),H>0&&g(t.spanMethod)){const{spanMethod:o}=t,l={rowspan:1,colspan:1};for(;H>0;){if(!e.getColumns().some(((e,t)=>{const{rowspan:n,colspan:r}=o({column:e,columnIndex:t,$columnIndex:t,row:h[H],rowIndex:H,$rowIndex:H,_rowIndex:H,isHidden:!e.visible,fixed:e.fixed,type:e.type,visibleData:h})||l;if(0===n&&0===r)return H--,!0})))break}}const D=`${T[H]}px`,M=`${h.reduce(((t,o)=>{const l=e.getRowSeq(o);return t+Math.max(I,s.getMax(l))}),0)}px`;["main","left","right"].forEach((e=>{const t=m[`${e}-body-table`],l=t?u(t):null;l&&(l.style.marginTop=D,l.scrollTop=o),["header","body","footer"].forEach((t=>{const o=m[`${e}-${t}-ySpace`],l=o?u(o):null;l&&(l.style.height=M)}))}));const S=Math.min(h.length,H+y);if(f.startIndex===H&&f.endIndex===S)return;f.startIndex=H,f.endIndex=S;const C=h.slice(f.startIndex,f.endIndex);C.forEach(((t,o)=>{const l=e.getRowid(t),n=x[l];n&&(n.$index=o)})),p.tableData.length=0,p.tableData.push(...C)}const F=m(k,300);function j(){const e="variableHeightRendererPlugin";return y({name:e,vxe(e){e.renderer.add(b.VARIABLE_HEIGHT,{renderCell:(e,t)=>s(E,{payload:t},null)})},apply(t){function o(e){const t=D(e.uuid);if(!t)return;e.scrollY={enabled:!1},t.reactData.scrollYLoad=!1;const o=function(e){const t=e.internalData.elemStore["main-body-wrapper"];return t?u(t):null}(t);o&&k(t,e,{scrollTop:o.scrollTop})}function l(e){if(!e.uuid)return;const t=U(e.uuid);t&&(e.scrollY=t),setTimeout((()=>o(e)),300)}t.dataHooks.dataStart.tap(e,l),t.eventHooks.onFilterChange.tap(e,((e,t)=>l(t))),t.eventHooks.onSortChange.tap(e,((e,t)=>l(t))),t.eventHooks.onToggleTreeExpand.tap(e,((e,t)=>l(t))),t.eventHooks.onResizableChange.tap(e,(async({column:e},t)=>{if(!e.editRender||!e.editRender.props)return;e.editRender.props.variableHeight&&l(t)})),t.eventHooks.onScroll.tap(e,m(((e,t)=>{if(e.isX)return;const{uuid:o}=t;if(!o)return;const l=D(o);l&&k(l,t,e)}),100,!0,!0)),t.fieldHooks.field.tap(e,(e=>{if(Reflect.get(e,"variableHeight")){const t=e.slots;e.slots=x(t,["default"]),e.editRender={...e.editRender,name:b.VARIABLE_HEIGHT};const o=e.className,l="variable-height";e.className=o?function(e){return g(o)?[o(e),l]:[o,l]}:l}return e})),t.fieldHooks.fieldList.tap(e,((e,t,{$table:l})=>(t.uuid&&p(e,((n,r)=>{var a,s,i;if((null==(a=n.editRender)?void 0:a.name)===b.VARIABLE_HEIGHT){const n=null!=(i=null==(s=t.rowConfig)?void 0:s.height)?i:36,a=R(t.uuid),c=t.cellStyle;if(t.cellStyle=function(e){const t={};if(e.column.fixed&&Reflect.get(e,"fixed")&&l.value){const o=Math.max(n,a.getMax(l.value.getRowSeq(e.row)));t.height=`${o}px`}return Object.assign(t,c?g(c)?c(e):c:null)},t.sortableConfig&&t.sortableConfig.enable){const e=t.sortableConfig.onEnd;t.sortableConfig.onEnd=function(o){const l=D(t.uuid);if(l){const{internalData:{elemStore:e}}=l,o=e["main-table-body"];o&&u(o)&&k(l,t,{scrollTop:u(o).scrollTop})}g(e)&&e(o)}}t.showOverflow="tooltip",p(e,(e=>{e.showOverflow="tooltip"})),t.scrollY={...t.scrollY,mode:"default"},t.onWheel=function(e){let t=null,o=0,l=!0;return function(n){if(!e.uuid)return;const r=D(e.uuid);if(!r)return;const{internalData:a}=r,{isHover:s}=e.rowConfig||{},{deltaX:i,deltaY:c}=n,{refTableLeftBody:d,refTableRightBody:p,refTableBody:m}=r.getRefMaps(),h=c,g=i,v=h<0,x=u(m),I=x?x.$el:null;if(!I)return;if(v?I.scrollTop<=0:I.scrollTop>=I.scrollHeight-I.clientHeight)return;const b=I.scrollTop+h,w=I.scrollLeft+g;if(b===a.lastScrollTop)return;n.preventDefault(),a.lastScrollTop=b,a.lastScrollLeft=w,a.lastScrollTime=Date.now(),s&&r.clearHoverRow();const y=d.value,T=p.value,R=y?y.$el:null,H=T?T.$el:null,M=Math.min(100,Math.abs(Math.floor(h/2)));l&&(o=I.scrollTop,l=!1),o+=M*(v?-1:1),t&&t(),t=f(I.scrollTop,o,400,(e=>{I.scrollTop=e,R&&(R.scrollTop=e),H&&(H.scrollTop=e)}),"easeOutCubic",(()=>{o=I.scrollTop,l=!0})),F(r,e,I)}}(t),setTimeout((()=>{$(t.uuid,t.scrollY),o(t)}),300),r()}})),e))),t.setupHooks.setup.tap(e,(e=>{c((()=>{e.value.uuid&&(H(e.value.uuid),M(e.value.uuid),C(e.value.uuid))}))}))}})}export{j as variableHeightRendererPlugin};
@@ -3,6 +3,7 @@ import { LOW_CODE_VALUE_RELATION } from '../../../../../es/shared/utils';
3
3
  import { VxeTableProps, VxeTableDefines, VxeTableInstance, VxeColumnPropTypes, VxeTablePropTypes } from 'vxe-table';
4
4
  import { VxeTableListeners } from 'vxe-table/types/table';
5
5
  import { IHO_TABLE_STRING_STATUS, IhoTableEventNameTuple, IhoTableRowGroupSequence } from '../../../../../es/components/iho-table/src/constants';
6
+ import Sortable from 'sortablejs';
6
7
  export * from './pluginType';
7
8
  export interface IhoTableRowGroupItem {
8
9
  groupName?: string;
@@ -25,6 +26,12 @@ export declare type IhoTableConfig = VxeTableProps & Partial<{
25
26
  };
26
27
  checkboxConfig: Partial<VxeTableProps['checkboxConfig'] & {
27
28
  slots: VxeColumnPropTypes.Slots;
29
+ maxCheckSize: number;
30
+ }>;
31
+ sortableConfig: Partial<{
32
+ enable: boolean;
33
+ usePreset: boolean;
34
+ [K: string]: any;
28
35
  }>;
29
36
  [K: string]: unknown;
30
37
  }>;
@@ -34,18 +41,19 @@ export declare type IhoTableFieldItem = {
34
41
  annotation: boolean;
35
42
  }>;
36
43
  export declare namespace IhoTableLowCodeField {
37
- type FieldSetting = {
44
+ type FieldSetting = Partial<{
45
+ mergedFeildExpression: string;
38
46
  notParticipatingSearch: IHO_TABLE_STRING_STATUS;
39
- mapping?: {
47
+ mapping: {
40
48
  type: string;
41
49
  mappingFiled: Array<{
42
50
  value: Array<Record<'key' | 'value', string>>;
43
51
  }>;
44
52
  };
45
- };
53
+ }>;
46
54
  type ColorAndIconItem = {
47
55
  condition?: {
48
- con: LOW_CODE_VALUE_RELATION & string;
56
+ con: LOW_CODE_VALUE_RELATION | string;
49
57
  value: unknown;
50
58
  field_key?: string;
51
59
  }[];
@@ -58,6 +66,12 @@ export declare namespace IhoTableLowCodeField {
58
66
  colorAndIcon: ColorAndIconItem[];
59
67
  [K: string]: unknown;
60
68
  }>;
69
+ type QueryOptions = (payload: {
70
+ keyword: string;
71
+ row: AnyObject;
72
+ column: VxeTableDefines.ColumnInfo;
73
+ rowIndex: number;
74
+ }) => Promise<AnyObject[]>;
61
75
  }
62
76
  export declare type LowCodeTableFieldItem = {
63
77
  columnName: string;
@@ -74,6 +88,7 @@ export declare type LowCodeTableFieldItem = {
74
88
  isOrder: MaybeString<0> | VxeTablePropTypes.SortOrder;
75
89
  formType: string;
76
90
  fieldSetting: string;
91
+ filterCapacity: number;
77
92
  componentProps: AnyObject;
78
93
  options: {
79
94
  label?: string;
@@ -81,6 +96,7 @@ export declare type LowCodeTableFieldItem = {
81
96
  value: string;
82
97
  disabled?: boolean;
83
98
  }[];
99
+ queryOptions: IhoTableLowCodeField.QueryOptions;
84
100
  annotation: boolean;
85
101
  slotFn: NonNullable<IhoTableFieldItem['slots']>['default'];
86
102
  headerSlotFn: NonNullable<IhoTableFieldItem['slots']>['header'];
@@ -92,6 +108,7 @@ export declare type LowCodeTableFieldItem = {
92
108
  */
93
109
  checkEditStatus: (payload: VxeTableDefines.CellRenderBodyParams) => boolean | void;
94
110
  colorAndIcon: IhoTableLowCodeField.ColorAndIconItem[];
111
+ variableHeight: boolean;
95
112
  }> & Partial<VxeTableDefines.ColumnInfo>;
96
113
  export declare type IhoTableFormChangePayload = {
97
114
  column: IhoTableFieldItem;
@@ -109,7 +126,7 @@ export declare type IhoTableEventNameUnion = TupleToUnion<typeof IhoTableEventNa
109
126
  export declare type IHoTableKeyboardPayload = IhoTableFormChangePayload & {
110
127
  key: string;
111
128
  };
112
- export declare type IhoTableEmitPayload<T extends typeof IhoTableEventNameTuple[number]> = T extends 'formChange' | 'formClick' ? [IhoTableFormChangePayload] : T extends 'keyboard' ? [IHoTableKeyboardPayload] : T extends 'settingClick' ? [] : T extends keyof VxeTableListeners ? Parameters<NonNullable<VxeTableListeners[T]>> : [];
129
+ export declare type IhoTableEmitPayload<T extends typeof IhoTableEventNameTuple[number]> = T extends 'formChange' | 'formClick' ? [IhoTableFormChangePayload] : T extends 'keyboard' ? [IHoTableKeyboardPayload] : T extends 'settingClick' ? [] : T extends 'rowDrag' ? [Sortable.SortableEvent] : T extends keyof VxeTableListeners ? Parameters<NonNullable<VxeTableListeners[T]>> : [];
113
130
  export declare type IhoTableAnchorItem = {
114
131
  field: string;
115
132
  title: string;
@@ -19,6 +19,10 @@ export declare type TablePlugin = {
19
19
  vxe?(vxeTable: IhoTableInstance): void;
20
20
  apply?(hooks: TableHooks): void;
21
21
  };
22
+ export declare type IhoTableHandlerContext<isRef extends boolean = true> = {
23
+ $table: isRef extends true ? Ref<Nullable<VxeTableInstance>> : Nullable<VxeTableInstance>;
24
+ emits: IhoTableEmits;
25
+ };
22
26
  export declare type TableHooks = Readonly<{
23
27
  configHooks: AbstractConfigHooks;
24
28
  fieldHooks: AbstractFieldHooks;
@@ -29,9 +33,9 @@ export declare type TableHooks = Readonly<{
29
33
  exposeHooks: AbstractExposeHooks;
30
34
  }>;
31
35
  export declare type WithTableConfig<T = []> = T extends any[] ? [...T, IhoTableConfig] : [T, IhoTableConfig];
32
- declare type ConfigHookType<T> = SyncWaterfallHook<WithTableConfig<T>>;
36
+ declare type ConfigHookType<T> = SyncWaterfallHook<[...WithTableConfig<[T]>, IhoTableHandlerContext]>;
33
37
  export declare abstract class AbstractConfigHooks {
34
- abstract readonly config: SyncWaterfallHook<IhoTableConfig>;
38
+ abstract readonly config: SyncWaterfallHook<[IhoTableConfig, IhoTableHandlerContext]>;
35
39
  abstract readonly rowConfig: ConfigHookType<IhoTableConfig['rowConfig']>;
36
40
  abstract readonly editConfig: ConfigHookType<IhoTableConfig['editConfig']>;
37
41
  abstract readonly columnConfig: ConfigHookType<IhoTableConfig['columnConfig']>;
@@ -56,26 +60,14 @@ export interface FieldHookContext {
56
60
  insertBefore(field: ArrayAble<IhoTableFieldItem>): void;
57
61
  insertAfter(field: ArrayAble<IhoTableFieldItem>): void;
58
62
  }
59
- export declare type WithFieldHookContext<T = []> = [
60
- ...WithTableConfig<T>,
61
- {
62
- $table: Ref<Nullable<VxeTableInstance>>;
63
- emits: IhoTableEmits;
64
- }
65
- ];
63
+ export declare type WithFieldHookContext<T = []> = [...WithTableConfig<T>, IhoTableHandlerContext];
66
64
  export declare abstract class AbstractFieldHooks {
67
65
  abstract readonly fieldStart: AsyncParallelHook<WithFieldHookContext>;
68
66
  abstract readonly field: SyncWaterfallHook<WithFieldHookContext<[IhoTableFieldItem, FieldHookContext]>>;
69
67
  abstract readonly fieldList: SyncWaterfallHook<WithFieldHookContext<[IhoTableFieldItem[]]>>;
70
68
  abstract readonly fieldEnd: AsyncParallelHook<WithFieldHookContext>;
71
69
  }
72
- export declare type WithIhoEventContext<T> = [
73
- ...WithTableConfig<T>,
74
- IhoTableHandler & {
75
- $table: Nullable<VxeTableInstance>;
76
- emits: IhoTableEmits;
77
- }
78
- ];
70
+ export declare type WithIhoEventContext<T> = [...WithTableConfig<T>, IhoTableHandler & IhoTableHandlerContext<false>];
79
71
  declare type EventHookType<T extends Func> = AsyncParallelHook<WithIhoEventContext<Parameters<T>>>;
80
72
  declare type VxeEventTypes = Required<{
81
73
  readonly [K in keyof VxeTableEventProps]: EventHookType<NonNullable<VxeTableEventProps[K]>>;
@@ -155,20 +147,13 @@ export declare abstract class AbstractDataHooks {
155
147
  abstract readonly dataEnd: AsyncParallelHook<WithTableConfig>;
156
148
  }
157
149
  export declare abstract class AbstractSetupHooks {
158
- abstract readonly setup: SyncHook<[Ref<IhoTableConfig>, Ref<IhoTableFieldItem[]>]>;
150
+ abstract readonly setup: SyncHook<[Ref<IhoTableConfig>, Ref<IhoTableFieldItem[]>, IhoTableHandlerContext]>;
159
151
  }
160
152
  export declare abstract class AbstractDomInsertHooks {
161
153
  abstract readonly header: SyncWaterfallHook<[VNode[]]>;
162
154
  abstract readonly footer: SyncWaterfallHook<[VNode[]]>;
163
155
  }
164
- export declare type WithExposeHookConfig<T = []> = [
165
- ...(T extends any[] ? T : [T]),
166
- Ref<IhoTableConfig>,
167
- {
168
- $table: Ref<Nullable<VxeTableInstance>>;
169
- emits: IhoTableEmits;
170
- }
171
- ];
156
+ export declare type WithExposeHookConfig<T = []> = [...(T extends any[] ? T : [T]), Ref<IhoTableConfig>, IhoTableHandlerContext];
172
157
  export declare abstract class AbstractExposeHooks {
173
158
  abstract readonly expose: SyncWaterfallHook<WithExposeHookConfig<Record<string, Func>>>;
174
159
  }
@@ -48,4 +48,7 @@ export declare const createIhoTableClearActivedInterceptor: (type: EDITABLE_WIDG
48
48
  column: VxeTableDefines.ColumnInfo;
49
49
  }) => boolean;
50
50
  export declare function isTransformTreeType(config: IhoTableConfig): boolean;
51
+ export declare function isRichContent(content: string): content is string;
52
+ export declare function parseRichContent(richContent: string): any;
53
+ export declare function parseMergeField(row: AnyObject, column: VxeTableDefines.ColumnInfo): any;
51
54
  export {};