cnhis-design-vue 3.1.22 → 3.1.23-beta.0

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 (58) hide show
  1. package/es/components/big-table/index.d.ts +8 -0
  2. package/es/components/big-table/src/BigTable.vue.d.ts +8 -0
  3. package/es/components/big-table/src/components/edit-form/edit-separate.js +4 -1
  4. package/es/components/big-table/src/hooks/useSeparateRow2.js +1 -41
  5. package/es/components/field-set/src/FieldSet.js +5 -1
  6. package/es/components/form-render/src/hooks/useFormContext2.js +2 -1
  7. package/es/components/form-render/src/utils/index.d.ts +0 -1
  8. package/es/components/form-render/src/utils/index.js +1 -10
  9. package/es/components/iho-table/index.d.ts +141 -277
  10. package/es/components/iho-table/index.js +1 -1
  11. package/es/components/iho-table/src/IhoTable.js +52 -31
  12. package/es/components/iho-table/src/IhoTable.vue.d.ts +142 -278
  13. package/es/components/iho-table/src/constants/index.d.ts +5 -2
  14. package/es/components/iho-table/src/constants/index.js +1 -1
  15. package/es/components/iho-table/src/constants/index2.js +8 -5
  16. package/es/components/iho-table/src/hooks/tapHooks/index.d.ts +10 -3
  17. package/es/components/iho-table/src/hooks/tapHooks/index2.js +32 -21
  18. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks.d.ts +5 -3
  19. package/es/components/iho-table/src/hooks/tapHooks/useDataHooks2.js +3 -3
  20. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +177 -60
  21. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks2.js +223 -59
  22. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks.d.ts +10 -0
  23. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks.js +1 -0
  24. package/es/components/iho-table/src/hooks/tapHooks/useSetupHooks2.js +27 -0
  25. package/es/components/iho-table/src/plugins/index.js +2 -1
  26. package/es/components/iho-table/src/plugins/index2.js +2 -1
  27. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index2.js +2 -1
  28. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/index.d.ts +2 -0
  29. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/index.js +2 -0
  30. package/es/components/iho-table/src/plugins/rendererPlugins/{inputs → editableWidgets}/inputRendererPlugins.d.ts +0 -0
  31. package/es/components/iho-table/src/plugins/rendererPlugins/{inputs → editableWidgets}/inputRendererPlugins.js +0 -5
  32. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/edit-separate.js +110 -0
  33. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/edit-separate.vue.d.ts +107 -0
  34. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.d.ts +1 -0
  35. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +158 -0
  36. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/separate-utils.d.ts +14 -0
  37. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/separate-utils.js +1 -0
  38. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/separate-utils2.js +54 -0
  39. package/es/components/iho-table/src/plugins/rendererPlugins/index.d.ts +1 -1
  40. package/es/components/iho-table/src/plugins/rendererPlugins/index.js +2 -1
  41. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/pictureRendererPlugin.js +2 -1
  42. package/es/components/iho-table/src/types/index.d.ts +8 -3
  43. package/es/components/iho-table/src/types/index.js +1 -1
  44. package/es/components/iho-table/src/types/pluginType.d.ts +97 -83
  45. package/es/components/iho-table/src/types/pluginType.js +1 -1
  46. package/es/components/iho-table/src/types/pluginType2.js +3 -1
  47. package/es/components/iho-table/src/utils/index2.js +1 -1
  48. package/es/components/index.js +1 -1
  49. package/es/components/info-header/index.d.ts +2 -0
  50. package/es/components/info-header/src/InfoHeader.js +3 -1
  51. package/es/components/info-header/src/InfoHeader.vue.d.ts +2 -0
  52. package/es/shared/utils/index.d.ts +4 -0
  53. package/es/shared/utils/index.js +1 -1
  54. package/es/shared/utils/index2.js +60 -2
  55. package/es/shared/utils/tapable/AsyncSeriesHook.js +17 -2
  56. package/package.json +2 -2
  57. package/es/components/iho-table/src/plugins/rendererPlugins/inputs/index.d.ts +0 -1
  58. package/es/components/iho-table/src/plugins/rendererPlugins/inputs/index.js +0 -1
@@ -1,3 +1,3 @@
1
1
  export { default, useIhoTablePresetPlugins } from './index2.js';
2
2
  export { defineTablePlugin, useTablePlugin } from './src/hooks/useTablePlugin2.js';
3
- export { AbstractConfigHooks, AbstractDataHooks, AbstractEventHooks, AbstractFieldHooks } from './src/types/pluginType2.js';
3
+ export { AbstractConfigHooks, AbstractDataHooks, AbstractEventHooks, AbstractFieldHooks, AbstractSetupHooks } from './src/types/pluginType2.js';
@@ -1,8 +1,9 @@
1
- import { defineComponent, provide, ref, computed, resolveComponent, openBlock, createElementBlock, createVNode, mergeProps, unref, withCtx, Fragment, renderList, createBlock } from 'vue';
2
- import { watchDebounced } from '@vueuse/shared';
3
- import { isArray } from 'lodash-es';
4
- import { VxeEventListenerNameList, InjectionIhoTableEmits, InjectionIhoTableConfig } from './constants/index2.js';
5
- import { createTableHooks, createTableEventHandlers, applyTableConfigHooks, applyTableFieldHooks } from './hooks/tapHooks/index2.js';
1
+ import { defineComponent, provide, ref, computed, watch, resolveComponent, openBlock, createElementBlock, createVNode, mergeProps, unref, withCtx, Fragment, renderList, createBlock } from 'vue';
2
+ import { uuidGenerator } from '../../../shared/utils/index2.js';
3
+ import { useDebounceFn } from '@vueuse/core';
4
+ import { VxeEventListenerNameList, InjectionIhoTableEmits, InjectionIhoTableUUID, InjectionIhoTableConfig, InjectionIhoTableHandler } from './constants/index2.js';
5
+ import { createTableHooks, applyTableConfigHooks, applyTableFieldHooks, createTableEventHandlers, createDataTransfer } from './hooks/tapHooks/index2.js';
6
+ import 'lodash-es';
6
7
  import { getEventName } from './utils/index2.js';
7
8
  import ColumnComponent from './components/IhoTableColumn.js';
8
9
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.js';
@@ -11,8 +12,8 @@ const _hoisted_1 = { class: "iho-table" };
11
12
  const _sfc_main = /* @__PURE__ */ defineComponent({
12
13
  __name: "IhoTable",
13
14
  props: {
14
- tableConfig: { type: Object },
15
- fieldList: { type: Array, required: true },
15
+ tableConfig: { type: Object, default: () => ({}) },
16
+ fieldList: { type: Array, default: () => [] },
16
17
  tableData: { type: Array, default: () => [] }
17
18
  },
18
19
  emits: [
@@ -21,42 +22,62 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
21
22
  ...VxeEventListenerNameList.map(getEventName)
22
23
  ],
23
24
  setup(__props, { expose, emit: emits }) {
25
+ var _a, _b;
24
26
  const props = __props;
25
27
  provide(InjectionIhoTableEmits, emits);
26
- const vxeTableRef = ref();
28
+ const uuid = uuidGenerator();
29
+ const uuidRef = ref(uuid);
30
+ provide(InjectionIhoTableUUID, uuidRef);
31
+ const $table = ref();
27
32
  const hooks = createTableHooks();
28
- const configRef = ref({});
33
+ const configRef = ref({ uuid: (_b = (_a = props.tableConfig) == null ? void 0 : _a.uuid) != null ? _b : uuid });
29
34
  provide(InjectionIhoTableConfig, configRef);
30
- function updateConfigRef(config) {
31
- if (!config)
32
- return;
33
- configRef.value = applyTableConfigHooks(hooks, config);
34
- }
35
+ const updateConfigRef = useDebounceFn(() => {
36
+ configRef.value = applyTableConfigHooks(hooks, props.tableConfig);
37
+ configRef.value.uuid = uuidRef.value;
38
+ }, 10);
35
39
  const fieldListRef = ref([]);
36
- function updateFieldListRef(fieldList, config) {
37
- if (!isArray(fieldList) || !config)
38
- return;
39
- fieldListRef.value = applyTableFieldHooks(hooks, fieldList, config);
40
- }
41
- const eventHookHandler = createTableEventHandlers(hooks, configRef, vxeTableRef, emits);
40
+ const updateFieldListRef = useDebounceFn(() => {
41
+ fieldListRef.value = applyTableFieldHooks(hooks, props.fieldList, configRef.value);
42
+ }, 10);
43
+ const dataTransfer = createDataTransfer(hooks, configRef, $table);
44
+ const tableDataRef = ref([]);
45
+ const updateTableDataRef = useDebounceFn(async () => {
46
+ var _a2;
47
+ tableDataRef.value = await dataTransfer(props.tableData);
48
+ (_a2 = $table.value) == null ? void 0 : _a2.recalculate(true);
49
+ }, 10);
50
+ const tableHandler = { updateTableDataRef, updateConfigRef, updateFieldListRef };
51
+ provide(InjectionIhoTableHandler, tableHandler);
52
+ const eventHookHandler = createTableEventHandlers({
53
+ hooks,
54
+ config: configRef,
55
+ $table,
56
+ context: tableHandler,
57
+ emits
58
+ });
42
59
  const bindProperties = computed(() => ({ ...configRef.value, ...eventHookHandler }));
43
- watchDebounced(() => props.tableConfig, (config) => {
44
- updateConfigRef(config);
45
- updateFieldListRef(props.fieldList);
46
- }, { immediate: true, flush: "post", deep: true, debounce: 50 });
47
- watchDebounced(() => props.fieldList, (fieldList) => {
48
- updateFieldListRef(fieldList, configRef.value);
49
- }, { immediate: true, flush: "post", deep: true, debounce: 50 });
50
- expose({ vxeTable: vxeTableRef });
60
+ watch(() => props.tableConfig, () => {
61
+ updateConfigRef();
62
+ updateFieldListRef();
63
+ updateTableDataRef();
64
+ }, { immediate: true, deep: true });
65
+ watch(() => props.fieldList, () => {
66
+ updateFieldListRef();
67
+ updateTableDataRef();
68
+ }, { immediate: true, deep: true });
69
+ watch(() => props.tableData, updateTableDataRef, { immediate: true });
70
+ expose({ $table });
71
+ hooks.setupHooks.setup.call(configRef, fieldListRef);
51
72
  return (_ctx, _cache) => {
52
73
  const _component_vxe_table = resolveComponent("vxe-table");
53
74
  return openBlock(), createElementBlock("section", _hoisted_1, [
54
75
  createVNode(_component_vxe_table, mergeProps({
55
- ref_key: "vxeTableRef",
56
- ref: vxeTableRef
76
+ ref_key: "$table",
77
+ ref: $table
57
78
  }, unref(bindProperties), {
58
79
  eventHookHandler: "",
59
- data: __props.tableData
80
+ data: tableDataRef.value
60
81
  }), {
61
82
  default: withCtx(() => [
62
83
  (openBlock(true), createElementBlock(Fragment, null, renderList(fieldListRef.value, (field) => {