cnhis-design-vue 3.1.16-beta.9 → 3.1.17-beta.1

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 (112) hide show
  1. package/es/packages/big-table/src/BigTable.vue.d.ts +6 -1
  2. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.js +2 -2
  3. package/es/packages/big-table/src/components/edit-form/edit-date.js +13 -3
  4. package/es/packages/big-table/src/components/edit-form/edit-time.js +1 -0
  5. package/es/packages/big-table/src/components/separate.js +1 -1
  6. package/es/packages/big-table/src/hooks/useSeparateRow.js +7 -4
  7. package/es/packages/button-print/index.d.ts +4 -1
  8. package/es/packages/button-print/src/ButtonPrint.vue.d.ts +4 -1
  9. package/es/packages/button-print/src/components/IdentityVerification.js +5 -7
  10. package/es/packages/button-print/src/components/IdentityVerification.vue.d.ts +4 -1
  11. package/es/packages/fabric-chart/index.d.ts +2 -0
  12. package/es/packages/fabric-chart/src/FabricChart.js +21 -6
  13. package/es/packages/fabric-chart/src/FabricChart.vue.d.ts +2 -0
  14. package/es/packages/fabric-chart/src/components/PopupTip.js +2 -2
  15. package/es/packages/fabric-chart/src/hooks/constant.js +1 -1
  16. package/es/packages/fabric-chart/src/hooks/useCenter.js +30 -20
  17. package/es/packages/fabric-chart/src/hooks/useLeft.d.ts +3 -1
  18. package/es/packages/fabric-chart/src/hooks/useLeft.js +30 -12
  19. package/es/packages/fabric-chart/src/hooks/useOther.js +63 -13
  20. package/es/packages/fabric-chart/src/hooks/useRight.d.ts +1 -1
  21. package/es/packages/fabric-chart/src/hooks/useRight.js +11 -69
  22. package/es/packages/fabric-chart/src/interface.d.ts +3 -0
  23. package/es/packages/form-config/index.d.ts +14 -9
  24. package/es/packages/form-config/src/FormConfig.vue.d.ts +14 -9
  25. package/es/packages/form-config/src/components/FormConfigCreator.js +2 -0
  26. package/es/packages/form-config/src/components/FormConfigCreator.vue.d.ts +6 -4
  27. package/es/packages/form-config/src/components/FormConfigEdit.js +1 -0
  28. package/es/packages/form-config/src/components/FormConfigEdit.vue.d.ts +8 -5
  29. package/es/packages/form-config/src/constants/index.d.ts +2 -2
  30. package/es/packages/form-config/src/hooks/useConfigurationField.js +9 -9
  31. package/es/packages/form-config/src/types/index.d.ts +1 -0
  32. package/es/packages/form-config/style/index.css +1 -1
  33. package/es/packages/form-render/index.d.ts +6 -4
  34. package/es/packages/form-render/index.js +1 -2
  35. package/es/packages/form-render/src/FormRender.js +8 -9
  36. package/es/packages/form-render/src/FormRender.vue.d.ts +6 -4
  37. package/es/packages/form-render/src/components/renderer/{combination/index.d.ts → combination.d.ts} +3 -3
  38. package/es/packages/form-render/src/components/renderer/combination.js +92 -0
  39. package/es/packages/form-render/src/components/renderer/date.js +12 -4
  40. package/es/packages/form-render/src/components/renderer/formItem.js +12 -5
  41. package/es/packages/form-render/src/components/renderer/index.d.ts +1 -0
  42. package/es/packages/form-render/src/components/renderer/index.js +2 -1
  43. package/es/packages/form-render/src/components/renderer/inputGroup.js +1 -1
  44. package/es/packages/form-render/src/components/renderer/{combination → jsonCombination}/hooks/useDeepValidate.d.ts +0 -0
  45. package/es/packages/form-render/src/components/renderer/{combination → jsonCombination}/hooks/useDeepValidate.js +0 -0
  46. package/es/packages/form-render/src/components/renderer/jsonCombination/index.d.ts +44 -0
  47. package/es/packages/form-render/src/components/renderer/{combination → jsonCombination}/index.js +29 -14
  48. package/es/packages/form-render/src/components/renderer/select.js +11 -8
  49. package/es/packages/form-render/src/constants/index.d.ts +2 -2
  50. package/es/packages/form-render/src/hooks/index.d.ts +1 -2
  51. package/es/packages/form-render/src/hooks/index.js +1 -2
  52. package/es/packages/form-render/src/hooks/useAnchor.d.ts +3 -3
  53. package/es/packages/form-render/src/hooks/useAsyncQueue.d.ts +2 -2
  54. package/es/packages/form-render/src/hooks/useBusinessBinding.d.ts +5 -6
  55. package/es/packages/form-render/src/hooks/useBusinessBinding.js +22 -20
  56. package/es/packages/form-render/src/hooks/useFieldListAdaptor.d.ts +1 -1
  57. package/es/packages/form-render/src/hooks/useFieldListAdaptor.js +11 -7
  58. package/es/packages/form-render/src/hooks/useFieldNormalize.d.ts +5 -0
  59. package/es/packages/form-render/src/hooks/useFieldNormalize.js +58 -0
  60. package/es/packages/form-render/src/hooks/useFieldVisitor.js +2 -5
  61. package/es/packages/form-render/src/hooks/useFormRenderLifeCycle.d.ts +4 -4
  62. package/es/packages/form-render/src/hooks/useFormRequest.d.ts +2 -2
  63. package/es/packages/form-render/src/types/fieldItem.d.ts +4 -0
  64. package/es/packages/form-render/src/types/index.d.ts +4 -4
  65. package/es/packages/form-render/src/utils/dom.d.ts +2 -2
  66. package/es/packages/form-render/src/utils/index.js +3 -2
  67. package/es/packages/form-render/src/utils/schema.d.ts +62 -2
  68. package/es/packages/form-render/src/utils/schema.js +5 -2
  69. package/es/packages/form-render/style/index.css +11 -8
  70. package/es/packages/index.css +12 -9
  71. package/es/packages/index.js +1 -2
  72. package/es/packages/shortcut-provider/src/hooks/useShortcuts.js +1 -0
  73. package/es/packages/shortcut-setter/index.d.ts +7 -4
  74. package/es/packages/shortcut-setter/src/ShortcutSetter.vue.d.ts +7 -4
  75. package/es/src/types/index.d.ts +2 -2
  76. package/es/src/utils/index.d.ts +1 -0
  77. package/es/src/utils/index.js +11 -1
  78. package/es/src/utils/tapable/AsyncParallelBailHook.d.ts +3 -0
  79. package/es/src/utils/tapable/AsyncParallelBailHook.js +78 -0
  80. package/es/src/utils/tapable/AsyncParallelHook.d.ts +3 -0
  81. package/es/src/utils/tapable/AsyncParallelHook.js +27 -0
  82. package/es/src/utils/tapable/AsyncSeriesBailHook.d.ts +3 -0
  83. package/es/src/utils/tapable/AsyncSeriesBailHook.js +33 -0
  84. package/es/src/utils/tapable/AsyncSeriesHook.d.ts +3 -0
  85. package/es/src/utils/tapable/AsyncSeriesHook.js +27 -0
  86. package/es/src/utils/tapable/AsyncSeriesLoopHook.d.ts +3 -0
  87. package/es/src/utils/tapable/AsyncSeriesLoopHook.js +27 -0
  88. package/es/src/utils/tapable/AsyncSeriesWaterfallHook.d.ts +3 -0
  89. package/es/src/utils/tapable/AsyncSeriesWaterfallHook.js +40 -0
  90. package/es/src/utils/tapable/Hook.d.ts +50 -0
  91. package/es/src/utils/tapable/Hook.js +140 -0
  92. package/es/src/utils/tapable/HookCodeFactory.d.ts +58 -0
  93. package/es/src/utils/tapable/HookCodeFactory.js +444 -0
  94. package/es/src/utils/tapable/HookMap.d.ts +11 -0
  95. package/es/src/utils/tapable/HookMap.js +32 -0
  96. package/es/src/utils/tapable/MultiHook.d.ts +12 -0
  97. package/es/src/utils/tapable/MultiHook.js +38 -0
  98. package/es/src/utils/tapable/SyncBailHook.d.ts +3 -0
  99. package/es/src/utils/tapable/SyncBailHook.js +40 -0
  100. package/es/src/utils/tapable/SyncHook.d.ts +3 -0
  101. package/es/src/utils/tapable/SyncHook.js +34 -0
  102. package/es/src/utils/tapable/SyncLoopHook.d.ts +3 -0
  103. package/es/src/utils/tapable/SyncLoopHook.js +34 -0
  104. package/es/src/utils/tapable/SyncWaterfallHook.d.ts +3 -0
  105. package/es/src/utils/tapable/SyncWaterfallHook.js +48 -0
  106. package/es/src/utils/tapable/index.d.ts +139 -0
  107. package/es/src/utils/tapable/index.js +12 -0
  108. package/package.json +4 -4
  109. package/es/packages/form-render/src/hooks/useInitialData.d.ts +0 -5
  110. package/es/packages/form-render/src/hooks/useInitialData.js +0 -16
  111. package/es/packages/form-render/src/hooks/useTypeNormalize.d.ts +0 -4
  112. package/es/packages/form-render/src/hooks/useTypeNormalize.js +0 -45
@@ -1,11 +1,11 @@
1
1
  import { isObject } from '@vueuse/core';
2
- import { pick } from 'lodash-es';
3
- import { useFormValidator, useTypeNormalize } from '../../../../packages/form-render';
2
+ import { cloneDeep, pick } from 'lodash-es';
3
+ import { useFormValidator, useFieldNormalize } from '../../../../packages/form-render';
4
4
  import { arrayed, parseNumberFromMaybeString, formRenderLog } from '../utils/index.js';
5
- import { fieldKeyEscape, createLinebarId, elementIdEscape } from '../utils/schema.js';
5
+ import { fieldKeyEscape, createLinebarId } from '../utils/schema.js';
6
6
  import { transformDateFormat } from '../utils/business.js';
7
7
 
8
- function useFieldListAdaptor(collector, uuid) {
8
+ function useFieldListAdaptor(collector) {
9
9
  const { createValidatorSchema } = useFormValidator();
10
10
  const createStandardSchema = (item) => {
11
11
  var _a;
@@ -14,6 +14,7 @@ function useFieldListAdaptor(collector, uuid) {
14
14
  type: (_a = item.fieldType) != null ? _a : "string",
15
15
  title: item.alias || item.name,
16
16
  "x-component": item.html_type,
17
+ default: item.default_val,
17
18
  "x-component-props": {
18
19
  placeholder: item.placeholder,
19
20
  clearable: item.is_empty === "0",
@@ -38,7 +39,6 @@ function useFieldListAdaptor(collector, uuid) {
38
39
  showLabel: item.hide_title !== "1",
39
40
  propertyKey: item.val_key,
40
41
  annotation: item.annotation,
41
- id: elementIdEscape(`${uuid}-${item.val_key}`),
42
42
  ...item.decoratorProps || {}
43
43
  }
44
44
  });
@@ -102,6 +102,10 @@ function useFieldListAdaptor(collector, uuid) {
102
102
  };
103
103
  const createCombinationSchema = (item) => {
104
104
  const schema = createStandardSchema(item);
105
+ schema.type = "array";
106
+ if (item.jsonCombination !== false) {
107
+ schema["x-component"] = "JSON_COMBINATION";
108
+ }
105
109
  Object.assign(schema["x-decorator-props"], {
106
110
  showLabel: false,
107
111
  showFeedback: false
@@ -204,12 +208,12 @@ function useFieldListAdaptor(collector, uuid) {
204
208
  properties: schemaAdaptor(fieldList)
205
209
  };
206
210
  };
207
- const { normalize } = useTypeNormalize();
211
+ const { FieldNormalizeWaterfallHook } = useFieldNormalize();
208
212
  function schemaAdaptor(fieldList) {
209
213
  let prevLinebar = null;
210
214
  return fieldList.reduce((fin, cur, idx) => {
211
215
  var _a;
212
- normalize(cur);
216
+ cur = FieldNormalizeWaterfallHook.call(cloneDeep(cur));
213
217
  const obj_type = (_a = cur.validate) == null ? void 0 : _a.obj_type;
214
218
  obj_type && collector.collect(obj_type, cur.val_key);
215
219
  if (cur.html_type === "LINEBAR") {
@@ -0,0 +1,5 @@
1
+ import { SyncWaterfallHook } from '../../../../../es/src/utils/tapable';
2
+ import { FieldItem } from '../types';
3
+ export declare function useFieldNormalize(): {
4
+ FieldNormalizeWaterfallHook: SyncWaterfallHook<FieldItem, import("../../../../../es/src/utils/tapable").UnsetAdditionalOptions>;
5
+ };
@@ -0,0 +1,58 @@
1
+ import { SyncWaterfallHook } from '../../../../src/utils/tapable';
2
+ import { FIELD_BUSINESS_TYPE } from '../../../../packages/form-render/src/constants';
3
+
4
+ function useFieldNormalize() {
5
+ const FieldNormalizeWaterfallHook = new SyncWaterfallHook(["fieldItem"]);
6
+ FieldNormalizeWaterfallHook.tap("__block", (fieldItem) => {
7
+ if (["CHECKBOX_BLOCK", "RADIO_BLOCK"].includes(fieldItem.html_type)) {
8
+ fieldItem.__vertical = true;
9
+ }
10
+ return fieldItem;
11
+ });
12
+ FieldNormalizeWaterfallHook.tap("__line", (fieldItem) => {
13
+ if (["LINE_BREAKS"].includes(fieldItem.html_type)) {
14
+ fieldItem.__line = true;
15
+ fieldItem.is_show = "1";
16
+ }
17
+ return fieldItem;
18
+ });
19
+ FieldNormalizeWaterfallHook.tap("__age", (fieldItem) => {
20
+ if (fieldItem.html_type === "AGE") {
21
+ fieldItem.html_type = "INPUT_NUMBER";
22
+ fieldItem.suffixConfig = [
23
+ {
24
+ validate: { obj_type: FIELD_BUSINESS_TYPE.AGE_UNIT },
25
+ val_key: fieldItem.val_key_unit,
26
+ html_type: "SELECT",
27
+ option: fieldItem.option,
28
+ urlConfig: fieldItem.urlConfig
29
+ }
30
+ ];
31
+ }
32
+ return fieldItem;
33
+ });
34
+ const types = [
35
+ [["SEARCH", "PHONE_TYPE", "IDCARD_TYPE"], "SELECT"],
36
+ ["DIGITAL", "INPUT_NUMBER"],
37
+ ["CHECKBOX_BLOCK", "CHECKBOX"],
38
+ ["RADIO_BLOCK", "RADIO"],
39
+ [["DATE-INPUT", "DATETIME-INPUT"], "DATE"],
40
+ ["SWITCH_COMPONENT", "SWITCH"],
41
+ ["SLIDER_COMPONENT", "SLIDER"],
42
+ ["LINE_BREAKS", "LINEBAR"]
43
+ ];
44
+ FieldNormalizeWaterfallHook.tap("__normalize", (fieldItem) => {
45
+ types.some(([rule, target]) => {
46
+ const match = Array.isArray(rule) ? rule.includes(fieldItem.html_type) : rule === fieldItem.html_type;
47
+ return match && (fieldItem.html_type = target);
48
+ });
49
+ return fieldItem;
50
+ });
51
+ FieldNormalizeWaterfallHook.tap("__elem_width", (fieldItem) => {
52
+ fieldItem.elem_width = ~~((fieldItem.elem_width || 3) * 2);
53
+ return fieldItem;
54
+ });
55
+ return { FieldNormalizeWaterfallHook };
56
+ }
57
+
58
+ export { useFieldNormalize };
@@ -3,8 +3,6 @@ import { isFunction } from '@vueuse/core';
3
3
 
4
4
  function useFieldVisitor() {
5
5
  function traverse(fieldList, visitorMap, key = "val_key") {
6
- if (!visitorMap)
7
- return fieldList;
8
6
  return fieldList.reduce((fin, field) => {
9
7
  if (Array.isArray(field.children)) {
10
8
  field.children = traverse(field.children, visitorMap, key);
@@ -15,7 +13,7 @@ function useFieldVisitor() {
15
13
  if (field.suffixConfig) {
16
14
  field.suffixConfig = traverse(arrayed(field.suffixConfig), visitorMap, key);
17
15
  }
18
- const visitor = visitorMap[field[key]];
16
+ const visitor = visitorMap == null ? void 0 : visitorMap[field[key]];
19
17
  let current = field;
20
18
  const before = [];
21
19
  const after = [];
@@ -31,8 +29,7 @@ function useFieldVisitor() {
31
29
  after.push(...arrayed(field2));
32
30
  }
33
31
  });
34
- fin.push(...before, current, ...after);
35
- return fin;
32
+ return fin.concat([...before, current, ...after]);
36
33
  }, []);
37
34
  }
38
35
  return { traverse };
@@ -1,13 +1,13 @@
1
- import { WithUndefined } from '../../../../../es/src/types';
1
+ import { UndefinedAble } from '../../../../../es/src/types';
2
2
  import { FormRenderLifeCycle, FormRenderProps } from '../../../../../es/packages/form-render';
3
3
  export declare function useFormRenderLifeCycle(props: FormRenderProps): {
4
4
  callLifeCycle: <T extends "onSetup" | "beforeRequest" | "afterRequest">(lifeCycleName: T, payload?: Parameters<Required<Partial<{
5
5
  onSetup(): void;
6
- beforeRequest(fieldKey: string, params?: import("../../../../../es/src/types").AnyObject | undefined): void | WithUndefined<import("../../../../../es/src/types").AnyObject>;
6
+ beforeRequest(fieldKey: string, params?: import("../../../../../es/src/types").AnyObject | undefined): void | UndefinedAble<import("../../../../../es/src/types").AnyObject>;
7
7
  afterRequest(fieldKey: string, payload?: any): import("../../../../../es/src/types").AnyObject[];
8
- }>>[T]> | undefined) => WithUndefined<ReturnType<Required<Partial<{
8
+ }>>[T]> | undefined) => UndefinedAble<ReturnType<Required<Partial<{
9
9
  onSetup(): void;
10
- beforeRequest(fieldKey: string, params?: import("../../../../../es/src/types").AnyObject | undefined): void | WithUndefined<import("../../../../../es/src/types").AnyObject>;
10
+ beforeRequest(fieldKey: string, params?: import("../../../../../es/src/types").AnyObject | undefined): void | UndefinedAble<import("../../../../../es/src/types").AnyObject>;
11
11
  afterRequest(fieldKey: string, payload?: any): import("../../../../../es/src/types").AnyObject[];
12
12
  }>>[T]>>;
13
13
  };
@@ -1,7 +1,7 @@
1
- import { Func, WithNull } from '../../../../../es/src/types';
1
+ import { Func, Nullable } from '../../../../../es/src/types';
2
2
  declare type RequestInstance = Record<string, Func>;
3
3
  export declare function useFormRequest(): {
4
- getHttpInstance: () => WithNull<RequestInstance>;
4
+ getHttpInstance: () => Nullable<RequestInstance>;
5
5
  registGlobHttpInstance: (instance: RequestInstance) => void;
6
6
  };
7
7
  export {};
@@ -171,6 +171,10 @@ export declare type FieldItem = {
171
171
  * COMBINATION控件最大表单组数量
172
172
  */
173
173
  maxGroupNum: number;
174
+ /**
175
+ * COMBINATION json format
176
+ */
177
+ jsonCombination: boolean;
174
178
  /**
175
179
  * COMBINATION控件子项
176
180
  */
@@ -1,4 +1,4 @@
1
- import { AnyObject, WithUndefined } from '../../../../../es/src/types';
1
+ import { AnyObject, UndefinedAble } from '../../../../../es/src/types';
2
2
  import { DataField, Field } from '@formily/core';
3
3
  import { ISchema } from '@formily/json-schema/esm/types';
4
4
  import { Component, FunctionalComponent } from 'vue';
@@ -25,7 +25,7 @@ export declare type FormAsyncQueue = AsyncQueue<FormAsyncQueueItem, any, AnyObje
25
25
  export declare type AgeContext = Record<'age' | 'day' | 'month' | 'year', number>;
26
26
  export declare type IdCardParseInfo = Record<'sex' | 'birthday', string> & AgeContext;
27
27
  export declare type FormRenderExpose = {
28
- validate(path?: string): Promise<void>;
28
+ validate(path?: string): Promise<unknown>;
29
29
  getFormValues(): AnyObject;
30
30
  setFieldState(path: string, setter: (field: Field) => void): void;
31
31
  resetFields(path?: string): void;
@@ -43,7 +43,7 @@ export declare type FormChangePayload = {
43
43
  fieldKey: string;
44
44
  fieldName: string;
45
45
  fieldInstance: DataField;
46
- context: FormChangeContext;
46
+ context?: FormChangeContext;
47
47
  };
48
48
  export declare type DependKeyType = string | Record<string, string> | Array<{
49
49
  paramName: string;
@@ -52,7 +52,7 @@ export declare type DependKeyType = string | Record<string, string> | Array<{
52
52
  } | string>;
53
53
  export declare type FormRenderLifeCycle = Partial<{
54
54
  onSetup(): void;
55
- beforeRequest(fieldKey: string, params?: AnyObject): WithUndefined<AnyObject> | void;
55
+ beforeRequest(fieldKey: string, params?: AnyObject): UndefinedAble<AnyObject> | void;
56
56
  afterRequest(fieldKey: string, payload?: any): AnyObject[];
57
57
  }>;
58
58
  export declare type FormRenderProps = Partial<{
@@ -1,6 +1,6 @@
1
- import { WithNull } from '../../../../../es/src/types';
1
+ import { Nullable } from '../../../../../es/src/types';
2
2
  export declare function queryDecorator(key: string, wrapperElement: HTMLElement, formUUID: string): HTMLElement | null;
3
- export declare function queryInput(decoratorElement?: WithNull<HTMLElement>): {
3
+ export declare function queryInput(decoratorElement?: Nullable<HTMLElement>): {
4
4
  widgetElement: HTMLInputElement | null | undefined;
5
5
  widgetElementList: HTMLInputElement[];
6
6
  };
@@ -1,9 +1,10 @@
1
1
  import { inject, provide, computed, createVNode, Fragment } from 'vue';
2
+ import { Path } from '@formily/path';
2
3
  import { isObject } from '@vue/shared';
3
4
  import { isNumber, isString, isFunction } from 'lodash-es';
4
5
  export { isIdCard, isMobile, parseAge2Birthday, parseAge2FromContext, parseBirthday, parseIdCard, transformDateFormat } from './business.js';
5
6
  export { queryDecorator, queryInput } from './dom.js';
6
- export { assignUpdateValue, createLinebarId, elementIdEscape, fieldKeyEscape, getParentLinebar, traverseDependKey, traverseFieldList, traverseSchema } from './schema.js';
7
+ export { assignUpdateValue, createLinebarId, createObjSchema, elementIdEscape, fieldKeyEscape, getParentLinebar, traverseDependKey, traverseFieldList, traverseSchema } from './schema.js';
7
8
 
8
9
  function formRenderLog(message, type = "log") {
9
10
  console[type](`[FormRender]: ${message}`);
@@ -19,7 +20,7 @@ function mergeDeepProperties(target, fieldList, traverseProperties = ["children"
19
20
  if (!isObject(field))
20
21
  return;
21
22
  if (targetPropertyFor(field) != null && _target[propertyFor(field)] == null) {
22
- _target[propertyFor(field)] = targetPropertyFor(field);
23
+ Path.setIn(_target, propertyFor(field), targetPropertyFor(field));
23
24
  }
24
25
  traverseProperties.forEach((p) => {
25
26
  if (!field[p])
@@ -1,4 +1,4 @@
1
- import { AnyObject, WithNull } from '../../../../../es/src/types';
1
+ import { AnyObject } from '../../../../../es/src/types';
2
2
  import { GeneralField } from '@formily/core';
3
3
  import { ISchema } from '@formily/json-schema/esm/types';
4
4
  import { DependKeyType, FieldItem } from '../../../../../es/packages/form-render';
@@ -9,8 +9,68 @@ export declare function createLinebarId(id: string): string;
9
9
  export declare function traverseDependKey(dependKeys: DependKeyType, handler: {
10
10
  (dependKey: string, valueKey: string, required?: boolean): void;
11
11
  }): void;
12
- export declare function getParentLinebar(key: string, fieldList: FieldItem[]): WithNull<string>;
12
+ export declare function getParentLinebar(key: string, fieldList: FieldItem[]): string | null;
13
13
  export declare function assignUpdateValue(props: AnyObject, field: GeneralField): {
14
14
  [x: string]: any;
15
15
  };
16
16
  export declare function traverseFieldList(fieldList: FieldItem[], handler: (field: FieldItem) => void): void;
17
+ export declare function createObjSchema(properties: Record<string, ISchema>): {
18
+ type: string;
19
+ properties: Record<string, import("@formily/json-schema/esm/types").Stringify<{
20
+ [key: symbol]: any;
21
+ [key: `x-${string}`]: any;
22
+ [key: `x-${number}`]: any;
23
+ version?: string | undefined;
24
+ name?: import("@formily/json-schema/esm/types").SchemaKey | undefined;
25
+ title?: any;
26
+ description?: any;
27
+ default?: any;
28
+ readOnly?: boolean | undefined;
29
+ writeOnly?: boolean | undefined;
30
+ type?: import("@formily/json-schema/esm/types").SchemaTypes | undefined;
31
+ enum?: import("@formily/json-schema/esm/types").SchemaEnum<any> | undefined;
32
+ const?: any;
33
+ multipleOf?: number | undefined;
34
+ maximum?: number | undefined;
35
+ exclusiveMaximum?: number | undefined;
36
+ minimum?: number | undefined;
37
+ exclusiveMinimum?: number | undefined;
38
+ maxLength?: number | undefined;
39
+ minLength?: number | undefined;
40
+ pattern?: string | RegExp | undefined;
41
+ maxItems?: number | undefined;
42
+ minItems?: number | undefined;
43
+ uniqueItems?: boolean | undefined;
44
+ maxProperties?: number | undefined;
45
+ minProperties?: number | undefined;
46
+ required?: string | boolean | string[] | undefined;
47
+ format?: string | undefined;
48
+ $ref?: string | undefined;
49
+ $namespace?: string | undefined;
50
+ definitions?: import("@formily/json-schema/esm/types").SchemaProperties<any, any, any, any, any, any, any, any> | undefined;
51
+ properties?: import("@formily/json-schema/esm/types").SchemaProperties<any, any, any, any, any, any, any, any> | undefined;
52
+ items?: import("@formily/json-schema/esm/types").SchemaItems<any, any, any, any, any, any, any, any> | undefined;
53
+ additionalItems?: import("@formily/json-schema/esm/types").Stringify<any> | undefined;
54
+ patternProperties?: import("@formily/json-schema/esm/types").SchemaProperties<any, any, any, any, any, any, any, any> | undefined;
55
+ additionalProperties?: import("@formily/json-schema/esm/types").Stringify<any> | undefined;
56
+ "x-value"?: any;
57
+ "x-index"?: number | undefined;
58
+ "x-pattern"?: any;
59
+ "x-display"?: any;
60
+ "x-validator"?: any;
61
+ "x-decorator"?: any;
62
+ "x-decorator-props"?: any;
63
+ "x-component"?: any;
64
+ "x-component-props"?: any;
65
+ "x-reactions"?: import("@formily/json-schema/esm/types").SchemaReactions<any> | undefined;
66
+ "x-content"?: any;
67
+ "x-data"?: any;
68
+ "x-visible"?: boolean | undefined;
69
+ "x-hidden"?: boolean | undefined;
70
+ "x-disabled"?: boolean | undefined;
71
+ "x-editable"?: boolean | undefined;
72
+ "x-read-only"?: boolean | undefined;
73
+ "x-read-pretty"?: boolean | undefined;
74
+ "x-compile-omitted"?: string[] | undefined;
75
+ }>>;
76
+ };
@@ -14,7 +14,7 @@ function fieldKeyEscape(fieldList) {
14
14
  return fieldList.map((f) => f.val_key).join("-").replace(/[.]/g, "_");
15
15
  }
16
16
  function elementIdEscape(id) {
17
- return id.replace(".", "-");
17
+ return id.replace(/[.]/g, "-");
18
18
  }
19
19
  function createLinebarId(id) {
20
20
  return elementIdEscape(`id-${id}`);
@@ -90,5 +90,8 @@ function traverseFieldList(fieldList, handler) {
90
90
  }
91
91
  traverse(fieldList);
92
92
  }
93
+ function createObjSchema(properties) {
94
+ return { type: "object", properties };
95
+ }
93
96
 
94
- export { assignUpdateValue, createLinebarId, elementIdEscape, fieldKeyEscape, getParentLinebar, traverseDependKey, traverseFieldList, traverseSchema };
97
+ export { assignUpdateValue, createLinebarId, createObjSchema, elementIdEscape, fieldKeyEscape, getParentLinebar, traverseDependKey, traverseFieldList, traverseSchema };
@@ -105,6 +105,10 @@
105
105
  padding: 0;
106
106
  margin: 0;
107
107
  }
108
+ .form-render__combinationHeader .n-button__icon {
109
+ font-size: 14px;
110
+ margin: 0 2px 0 0;
111
+ }
108
112
  .form-render__combinationHeaderText {
109
113
  font-size: 16px;
110
114
  font-weight: 500;
@@ -115,18 +119,17 @@
115
119
  top: 5px;
116
120
  width: 14px;
117
121
  height: 14px;
118
- border-radius: 50%;
119
- background: red;
120
- cursor: pointer;
121
- display: inline-flex;
122
- align-items: center;
123
- justify-content: center;
124
- color: white;
125
- vertical-align: middle;
126
122
  font-size: 16px;
127
123
  }
124
+ .form-render__combinationContentJson {
125
+ position: relative;
126
+ }
128
127
  .form-render__combinationContent {
129
128
  position: relative;
129
+ display: grid !important;
130
+ grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
131
+ align-items: start;
132
+ gap: 0 16px;
130
133
  }
131
134
  .form-render__complex {
132
135
  width: 100%;
@@ -2926,6 +2926,10 @@ body > .vxe-table--tooltip-wrapper {
2926
2926
  padding: 0;
2927
2927
  margin: 0;
2928
2928
  }
2929
+ .form-render__combinationHeader .n-button__icon {
2930
+ font-size: 14px;
2931
+ margin: 0 2px 0 0;
2932
+ }
2929
2933
  .form-render__combinationHeaderText {
2930
2934
  font-size: 16px;
2931
2935
  font-weight: 500;
@@ -2936,18 +2940,17 @@ body > .vxe-table--tooltip-wrapper {
2936
2940
  top: 5px;
2937
2941
  width: 14px;
2938
2942
  height: 14px;
2939
- border-radius: 50%;
2940
- background: red;
2941
- cursor: pointer;
2942
- display: inline-flex;
2943
- align-items: center;
2944
- justify-content: center;
2945
- color: white;
2946
- vertical-align: middle;
2947
2943
  font-size: 16px;
2948
2944
  }
2945
+ .form-render__combinationContentJson {
2946
+ position: relative;
2947
+ }
2949
2948
  .form-render__combinationContent {
2950
2949
  position: relative;
2950
+ display: grid !important;
2951
+ grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
2952
+ align-items: start;
2953
+ gap: 0 16px;
2951
2954
  }
2952
2955
  .form-render__complex {
2953
2956
  width: 100%;
@@ -3248,7 +3251,7 @@ body > .vxe-table--tooltip-wrapper {
3248
3251
  padding: 16px;
3249
3252
  box-sizing: border-box;
3250
3253
  flex-shrink: 0;
3251
- width: 220px;
3254
+ width: 240px;
3252
3255
  background: white;
3253
3256
  }
3254
3257
  .form-config__configHeader {
@@ -46,12 +46,11 @@ export { useCommonLog } from './form-render/src/hooks/useCommonLog.js';
46
46
  export { useFormField } from './form-render/src/hooks/useFormField.js';
47
47
  export { AsyncQueue, useAsyncQueue } from './form-render/src/hooks/useAsyncQueue.js';
48
48
  export { useFieldVisitor } from './form-render/src/hooks/useFieldVisitor.js';
49
- export { useTypeNormalize } from './form-render/src/hooks/useTypeNormalize.js';
49
+ export { useFieldNormalize } from './form-render/src/hooks/useFieldNormalize.js';
50
50
  export { useFormValidator } from './form-render/src/hooks/useFormValidator.js';
51
51
  export { BusinessCollector, useBusinessBinding } from './form-render/src/hooks/useBusinessBinding.js';
52
52
  export { ContextCollector, useChangeContext } from './form-render/src/hooks/useChangeContext.js';
53
53
  export { FormItemDepsCollector, useFormItemDeps } from './form-render/src/hooks/useFormItemDeps.js';
54
- export { useInitialData } from './form-render/src/hooks/useInitialData.js';
55
54
  export { useAnchor } from './form-render/src/hooks/useAnchor.js';
56
55
  export { useFormContext } from './form-render/src/hooks/useFormContext.js';
57
56
  export { GlobalShortcutProvider, ShortcutManager, useShortcuts } from './shortcut-provider/src/hooks/useShortcuts.js';
@@ -88,6 +88,7 @@ class ShortcutManager {
88
88
  const callback = this.shortcutCallbackMap.get(keySignature);
89
89
  if (!callback)
90
90
  return;
91
+ event.preventDefault();
91
92
  const shortcutItem = Object.values(this.shortcutCache.value).find((item) => item.currentKeySignature === keySignature);
92
93
  if (!shortcutItem || shortcutItem.status !== ShortcutStatus.ACTIVE || shortcutItem.disabled)
93
94
  return;
@@ -122,6 +122,7 @@ declare const ShortcutSetter: SFCWithInstall<import("vue").DefineComponent<{
122
122
  content?: string | import("..").FormRenderer | Record<string, import("..").FormRenderer> | undefined;
123
123
  lazyRequest?: boolean | undefined;
124
124
  maxGroupNum?: number | undefined;
125
+ jsonCombination?: boolean | undefined;
125
126
  children?: any[] | undefined;
126
127
  properties?: any[] | undefined;
127
128
  componentProps?: import("../../../es/src/types").AnyObject | undefined;
@@ -1807,7 +1808,7 @@ declare const ShortcutSetter: SFCWithInstall<import("vue").DefineComponent<{
1807
1808
  lifeCycle: {
1808
1809
  type: import("vue").PropType<Partial<{
1809
1810
  onSetup(): void;
1810
- beforeRequest(fieldKey: string, params?: import("../../../es/src/types").AnyObject | undefined): void | import("../../../es/src/types").WithUndefined<import("../../../es/src/types").AnyObject>;
1811
+ beforeRequest(fieldKey: string, params?: import("../../../es/src/types").AnyObject | undefined): void | import("../../../es/src/types").UndefinedAble<import("../../../es/src/types").AnyObject>;
1811
1812
  afterRequest(fieldKey: string, payload?: any): import("../../../es/src/types").AnyObject[];
1812
1813
  }>>;
1813
1814
  };
@@ -1922,7 +1923,7 @@ declare const ShortcutSetter: SFCWithInstall<import("vue").DefineComponent<{
1922
1923
  lifeCycle: {
1923
1924
  type: import("vue").PropType<Partial<{
1924
1925
  onSetup(): void;
1925
- beforeRequest(fieldKey: string, params?: import("../../../es/src/types").AnyObject | undefined): void | import("../../../es/src/types").WithUndefined<import("../../../es/src/types").AnyObject>;
1926
+ beforeRequest(fieldKey: string, params?: import("../../../es/src/types").AnyObject | undefined): void | import("../../../es/src/types").UndefinedAble<import("../../../es/src/types").AnyObject>;
1926
1927
  afterRequest(fieldKey: string, payload?: any): import("../../../es/src/types").AnyObject[];
1927
1928
  }>>;
1928
1929
  };
@@ -1931,7 +1932,9 @@ declare const ShortcutSetter: SFCWithInstall<import("vue").DefineComponent<{
1931
1932
  }>>;
1932
1933
  emit: (event: "formChange", ...args: any[]) => void;
1933
1934
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
1934
- formModel: import("@formily/core").Form<any>;
1935
+ formModel: import("@formily/core").Form<{
1936
+ [x: string]: any;
1937
+ }>;
1935
1938
  SchemaField: import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
1936
1939
  businessCollector: import("..").BusinessCollector;
1937
1940
  formItemDepsCollector: import("..").FormItemDepsCollector;
@@ -3422,7 +3425,7 @@ declare const ShortcutSetter: SFCWithInstall<import("vue").DefineComponent<{
3422
3425
  lifeCycle: {
3423
3426
  type: import("vue").PropType<Partial<{
3424
3427
  onSetup(): void;
3425
- beforeRequest(fieldKey: string, params?: import("../../../es/src/types").AnyObject | undefined): void | import("../../../es/src/types").WithUndefined<import("../../../es/src/types").AnyObject>;
3428
+ beforeRequest(fieldKey: string, params?: import("../../../es/src/types").AnyObject | undefined): void | import("../../../es/src/types").UndefinedAble<import("../../../es/src/types").AnyObject>;
3426
3429
  afterRequest(fieldKey: string, payload?: any): import("../../../es/src/types").AnyObject[];
3427
3430
  }>>;
3428
3431
  };
@@ -124,6 +124,7 @@ declare const _default: import("vue").DefineComponent<{
124
124
  content?: string | import("../../../../es/packages/form-render").FormRenderer | Record<string, import("../../../../es/packages/form-render").FormRenderer> | undefined;
125
125
  lazyRequest?: boolean | undefined;
126
126
  maxGroupNum?: number | undefined;
127
+ jsonCombination?: boolean | undefined;
127
128
  children?: any[] | undefined;
128
129
  properties?: any[] | undefined;
129
130
  componentProps?: import("../../../../es/src/types").AnyObject | undefined;
@@ -1809,7 +1810,7 @@ declare const _default: import("vue").DefineComponent<{
1809
1810
  lifeCycle: {
1810
1811
  type: import("vue").PropType<Partial<{
1811
1812
  onSetup(): void;
1812
- beforeRequest(fieldKey: string, params?: import("../../../../es/src/types").AnyObject | undefined): void | import("../../../../es/src/types").WithUndefined<import("../../../../es/src/types").AnyObject>;
1813
+ beforeRequest(fieldKey: string, params?: import("../../../../es/src/types").AnyObject | undefined): void | import("../../../../es/src/types").UndefinedAble<import("../../../../es/src/types").AnyObject>;
1813
1814
  afterRequest(fieldKey: string, payload?: any): import("../../../../es/src/types").AnyObject[];
1814
1815
  }>>;
1815
1816
  };
@@ -1924,7 +1925,7 @@ declare const _default: import("vue").DefineComponent<{
1924
1925
  lifeCycle: {
1925
1926
  type: import("vue").PropType<Partial<{
1926
1927
  onSetup(): void;
1927
- beforeRequest(fieldKey: string, params?: import("../../../../es/src/types").AnyObject | undefined): void | import("../../../../es/src/types").WithUndefined<import("../../../../es/src/types").AnyObject>;
1928
+ beforeRequest(fieldKey: string, params?: import("../../../../es/src/types").AnyObject | undefined): void | import("../../../../es/src/types").UndefinedAble<import("../../../../es/src/types").AnyObject>;
1928
1929
  afterRequest(fieldKey: string, payload?: any): import("../../../../es/src/types").AnyObject[];
1929
1930
  }>>;
1930
1931
  };
@@ -1933,7 +1934,9 @@ declare const _default: import("vue").DefineComponent<{
1933
1934
  }>>;
1934
1935
  emit: (event: "formChange", ...args: any[]) => void;
1935
1936
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
1936
- formModel: import("@formily/core").Form<any>;
1937
+ formModel: import("@formily/core").Form<{
1938
+ [x: string]: any;
1939
+ }>;
1937
1940
  SchemaField: Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
1938
1941
  businessCollector: import("../../../../es/packages/form-render").BusinessCollector;
1939
1942
  formItemDepsCollector: import("../../../../es/packages/form-render").FormItemDepsCollector;
@@ -3424,7 +3427,7 @@ declare const _default: import("vue").DefineComponent<{
3424
3427
  lifeCycle: {
3425
3428
  type: import("vue").PropType<Partial<{
3426
3429
  onSetup(): void;
3427
- beforeRequest(fieldKey: string, params?: import("../../../../es/src/types").AnyObject | undefined): void | import("../../../../es/src/types").WithUndefined<import("../../../../es/src/types").AnyObject>;
3430
+ beforeRequest(fieldKey: string, params?: import("../../../../es/src/types").AnyObject | undefined): void | import("../../../../es/src/types").UndefinedAble<import("../../../../es/src/types").AnyObject>;
3428
3431
  afterRequest(fieldKey: string, payload?: any): import("../../../../es/src/types").AnyObject[];
3429
3432
  }>>;
3430
3433
  };
@@ -4,7 +4,7 @@ export declare type SFCWithInstall<T> = T & {
4
4
  };
5
5
  export declare type AnyObject = Record<string, any>;
6
6
  export declare type Func<T extends Array<any> = any[], P = any> = (...args: T) => P;
7
- export declare type WithNull<T> = T | null;
8
- export declare type WithUndefined<T> = T | undefined;
7
+ export declare type Nullable<T> = T | null | undefined;
8
+ export declare type UndefinedAble<T> = T | undefined;
9
9
  export declare type ArrayAble<T> = T | T[];
10
10
  export declare type MapValue<T> = T extends Map<any, infer P> ? P : any;
@@ -1,2 +1,3 @@
1
1
  import { App, Component } from 'vue';
2
2
  export declare function safeComponentRegister(app: App, component: Component, cName?: string | undefined, scheduler?: () => void): void;
3
+ export declare function generateTimeFormat(format: string): string | undefined;
@@ -1,3 +1,5 @@
1
+ import { isString } from 'lodash-es';
2
+
1
3
  function safeComponentRegister(app, component, cName = component.name, scheduler) {
2
4
  if (!cName)
3
5
  throw new Error(`[CUI]: invalid component name for ${component}`);
@@ -11,5 +13,13 @@ function safeComponentRegister(app, component, cName = component.name, scheduler
11
13
  app.component(cName, component);
12
14
  }
13
15
  }
16
+ function generateTimeFormat(format) {
17
+ if (!isString(format))
18
+ return;
19
+ const matched = format.match(/[Hms:]+/);
20
+ if (!matched)
21
+ return;
22
+ return matched[0];
23
+ }
14
24
 
15
- export { safeComponentRegister };
25
+ export { generateTimeFormat, safeComponentRegister };
@@ -0,0 +1,3 @@
1
+ export default AsyncParallelBailHook;
2
+ declare function AsyncParallelBailHook(args?: any[], name?: undefined): Hook;
3
+ import Hook from "./Hook";