cnhis-design-vue 3.1.10 → 3.1.11-beta.2

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 (93) hide show
  1. package/.versionrc.json +32 -0
  2. package/es/packages/big-table/src/BigTable.vue.d.ts +16 -1
  3. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.js +2 -4
  4. package/es/packages/big-table/src/components/edit-form/edit-select.js +3 -1
  5. package/es/packages/fabric-chart/index.d.ts +1 -32
  6. package/es/packages/fabric-chart/src/FabricChart.vue.d.ts +1 -33
  7. package/es/packages/fabric-chart/src/FabricChart.vue_vue_type_script_setup_true_lang.js +2 -131
  8. package/es/packages/fabric-chart/src/hooks/useCenter.d.ts +0 -4
  9. package/es/packages/fabric-chart/src/hooks/useCenter.js +0 -6
  10. package/es/packages/fabric-chart/src/hooks/useDraw.d.ts +0 -42
  11. package/es/packages/fabric-chart/src/hooks/useDraw.js +0 -75
  12. package/es/packages/fabric-chart/src/hooks/useGrid.d.ts +0 -4
  13. package/es/packages/fabric-chart/src/hooks/useGrid.js +0 -44
  14. package/es/packages/fabric-chart/src/hooks/useLeft.d.ts +0 -4
  15. package/es/packages/fabric-chart/src/hooks/useLeft.js +0 -65
  16. package/es/packages/fabric-chart/src/hooks/useRight.d.ts +0 -0
  17. package/es/packages/fabric-chart/src/hooks/useRight.js +1 -0
  18. package/es/packages/fabric-chart/src/hooks/useTop.d.ts +0 -4
  19. package/es/packages/fabric-chart/src/hooks/useTop.js +0 -123
  20. package/es/packages/fabric-chart/src/interface.d.ts +0 -88
  21. package/es/packages/fabric-chart/src/interface.js +0 -3
  22. package/es/packages/form-render/index.d.ts +724 -3
  23. package/es/packages/form-render/index.js +2 -0
  24. package/es/packages/form-render/src/FormRender.vue.d.ts +724 -3
  25. package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.js +90 -58
  26. package/es/packages/form-render/src/components/index.d.ts +0 -16
  27. package/es/packages/form-render/src/components/index.js +1 -16
  28. package/es/packages/form-render/src/components/{cascader.d.ts → renderer/cascader.d.ts} +2 -2
  29. package/es/packages/form-render/src/components/{cascader.js → renderer/cascader.js} +3 -3
  30. package/es/packages/form-render/src/components/{checkbox.d.ts → renderer/checkbox.d.ts} +1 -1
  31. package/es/packages/form-render/src/components/{checkbox.js → renderer/checkbox.js} +1 -1
  32. package/es/packages/form-render/src/components/{combination.d.ts → renderer/combination.d.ts} +1 -1
  33. package/es/packages/form-render/src/components/{combination.js → renderer/combination.js} +3 -3
  34. package/es/packages/form-render/src/components/{complex.d.ts → renderer/complex.d.ts} +0 -0
  35. package/es/packages/form-render/src/components/{complex.js → renderer/complex.js} +1 -1
  36. package/es/packages/form-render/src/components/{date.d.ts → renderer/date.d.ts} +0 -0
  37. package/es/packages/form-render/src/components/{date.js → renderer/date.js} +0 -0
  38. package/es/packages/form-render/src/components/{formItem.d.ts → renderer/formItem.d.ts} +0 -0
  39. package/es/packages/form-render/src/components/{formItem.js → renderer/formItem.js} +0 -0
  40. package/es/packages/form-render/src/components/renderer/index.d.ts +16 -0
  41. package/es/packages/form-render/src/components/renderer/index.js +16 -0
  42. package/es/packages/form-render/src/components/{input.d.ts → renderer/input.d.ts} +0 -0
  43. package/es/packages/form-render/src/components/{input.js → renderer/input.js} +1 -1
  44. package/es/packages/form-render/src/components/{inputGroup.d.ts → renderer/inputGroup.d.ts} +0 -0
  45. package/es/packages/form-render/src/components/{inputGroup.js → renderer/inputGroup.js} +0 -0
  46. package/es/packages/form-render/src/components/{inputNumber.d.ts → renderer/inputNumber.d.ts} +0 -0
  47. package/es/packages/form-render/src/components/{inputNumber.js → renderer/inputNumber.js} +1 -1
  48. package/es/packages/form-render/src/components/{labelSelect.d.ts → renderer/labelSelect.d.ts} +0 -0
  49. package/es/packages/form-render/src/components/{labelSelect.js → renderer/labelSelect.js} +0 -0
  50. package/es/packages/form-render/src/components/{collapse.d.ts → renderer/linebar.d.ts} +1 -1
  51. package/es/packages/form-render/src/components/{collapse.js → renderer/linebar.js} +17 -8
  52. package/es/packages/form-render/src/components/{radio.d.ts → renderer/radio.d.ts} +1 -1
  53. package/es/packages/form-render/src/components/{radio.js → renderer/radio.js} +1 -1
  54. package/es/packages/form-render/src/components/{select.d.ts → renderer/select.d.ts} +2 -2
  55. package/es/packages/form-render/src/components/{select.js → renderer/select.js} +3 -3
  56. package/es/packages/form-render/src/components/{slider.d.ts → renderer/slider.d.ts} +0 -0
  57. package/es/packages/form-render/src/components/{slider.js → renderer/slider.js} +1 -1
  58. package/es/packages/form-render/src/components/{switch.d.ts → renderer/switch.d.ts} +0 -0
  59. package/es/packages/form-render/src/components/{switch.js → renderer/switch.js} +1 -1
  60. package/es/packages/form-render/src/components/{textarea.d.ts → renderer/textarea.d.ts} +0 -0
  61. package/es/packages/form-render/src/components/{textarea.js → renderer/textarea.js} +1 -1
  62. package/es/packages/form-render/src/constants/index.d.ts +1 -0
  63. package/es/packages/form-render/src/constants/index.js +2 -1
  64. package/es/packages/form-render/src/hooks/index.d.ts +2 -0
  65. package/es/packages/form-render/src/hooks/index.js +2 -0
  66. package/es/packages/form-render/src/hooks/useAnchor.d.ts +16 -0
  67. package/es/packages/form-render/src/hooks/useAnchor.js +81 -0
  68. package/es/packages/form-render/src/hooks/useAsyncQueue.js +1 -2
  69. package/es/packages/form-render/src/hooks/useChangeContext.d.ts +1 -1
  70. package/es/packages/form-render/src/hooks/useFieldList2Schema.d.ts +1 -1
  71. package/es/packages/form-render/src/hooks/useFieldList2Schema.js +11 -11
  72. package/es/packages/form-render/src/hooks/useFormContext.d.ts +8 -0
  73. package/es/packages/form-render/src/hooks/useFormContext.js +26 -0
  74. package/es/packages/form-render/src/hooks/useFormItemDeps.d.ts +1 -1
  75. package/es/packages/form-render/src/hooks/useFormItemDeps.js +2 -2
  76. package/es/packages/form-render/src/hooks/useInitialData.d.ts +1 -1
  77. package/es/packages/form-render/src/types/index.d.ts +1 -0
  78. package/es/packages/form-render/src/utils/index.d.ts +2 -0
  79. package/es/packages/form-render/src/utils/index.js +10 -1
  80. package/es/packages/form-render/style/index.css +6 -3
  81. package/es/packages/index.css +6 -3
  82. package/es/packages/index.js +2 -0
  83. package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.js +8 -3
  84. package/es/packages/scale-view/src/hooks/scaleview-init.js +1 -3
  85. package/es/packages/scale-view/src/hooks/scaleview-validate.js +2 -2
  86. package/es/packages/select-person/index.d.ts +1 -1
  87. package/es/packages/select-person/src/SelectPerson.vue.d.ts +6 -6
  88. package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.js +14 -3
  89. package/es/src/utils/anime.d.ts +1 -1
  90. package/es/src/utils/anime.js +4 -1
  91. package/package.json +1 -1
  92. package/es/packages/fabric-chart/src/utils/index.d.ts +0 -2
  93. package/es/packages/fabric-chart/src/utils/index.js +0 -15334
@@ -0,0 +1,81 @@
1
+ import { doAnimation } from '../../../../src/utils/anime';
2
+ import { useDebounceFn } from '@vueuse/core';
3
+ import { isNumber } from 'lodash-es';
4
+ import { ref, computed, nextTick, watch } from 'vue';
5
+ import { FormItemLineBarDepKeyPrepend } from '../../../../packages/form-render/src/constants';
6
+ import { traverseSchema } from '../../../../packages/form-render/src/utils';
7
+
8
+ function useAnchor(props, collector) {
9
+ const currentAnchor = ref("");
10
+ async function updateCurrentAnchor(id) {
11
+ currentAnchor.value = id;
12
+ await new Promise((resolve) => setTimeout(resolve, 100));
13
+ await scrollTo(id);
14
+ }
15
+ const formHeight = computed(() => {
16
+ if (isNumber(props.maxHeight))
17
+ return props.maxHeight + "px";
18
+ return props.maxHeight;
19
+ });
20
+ const anchorIdList = ref([]);
21
+ function generateAnchorList(schema) {
22
+ anchorIdList.value.length = 0;
23
+ traverseSchema(schema, (_schema) => {
24
+ var _a;
25
+ if (_schema["x-component"] === "LINEBAR") {
26
+ anchorIdList.value.push({ title: _schema.title, name: ((_a = _schema.name) == null ? void 0 : _a.toString()) || "" });
27
+ }
28
+ });
29
+ }
30
+ const scrollbarRef = ref();
31
+ let scrollLock = false;
32
+ async function scrollTo(id) {
33
+ scrollLock = true;
34
+ try {
35
+ if (!scrollbarRef.value)
36
+ return;
37
+ collector.trigger(FormItemLineBarDepKeyPrepend + id, true);
38
+ await nextTick();
39
+ const targetAnchor = scrollbarRef.value.querySelector(`#${id}`);
40
+ if (!targetAnchor)
41
+ return;
42
+ await new Promise((resolve) => {
43
+ doAnimation(scrollbarRef.value.scrollTop, targetAnchor.offsetTop, 300, (top) => {
44
+ var _a;
45
+ (_a = scrollbarRef.value) == null ? void 0 : _a.scrollTo({ top });
46
+ }, "easeInBounce", resolve);
47
+ });
48
+ } finally {
49
+ scrollLock = false;
50
+ }
51
+ }
52
+ const onScroll = useDebounceFn(async function() {
53
+ var _a;
54
+ if (scrollLock || !scrollbarRef.value)
55
+ return;
56
+ const { scrollTop, clientHeight } = scrollbarRef.value;
57
+ const result = anchorIdList.value.find((anchor) => {
58
+ const node = scrollbarRef.value.querySelector(`#${anchor.name}`);
59
+ if (!node)
60
+ return;
61
+ return node.offsetTop >= scrollTop || node.offsetTop < scrollTop && node.clientHeight + node.offsetTop > scrollTop + clientHeight;
62
+ }) || anchorIdList.value[anchorIdList.value.length - 1];
63
+ currentAnchor.value = (_a = result == null ? void 0 : result.name) != null ? _a : "";
64
+ }, 300);
65
+ watch(anchorIdList, (anchorIdList2) => {
66
+ var _a, _b;
67
+ currentAnchor.value = (_b = (_a = anchorIdList2[0]) == null ? void 0 : _a.name) != null ? _b : "";
68
+ }, { deep: true, immediate: true });
69
+ return {
70
+ currentAnchor,
71
+ updateCurrentAnchor,
72
+ onScroll,
73
+ formHeight,
74
+ anchorIdList,
75
+ generateAnchorList,
76
+ scrollbarRef,
77
+ scrollTo
78
+ };
79
+ }
80
+
81
+ export { useAnchor };
@@ -1,5 +1,4 @@
1
- import { useCommonLog } from './useCommonLog.js';
2
- import { useFormRequest } from './useFormRequest.js';
1
+ import { useFormRequest, useCommonLog } from '../../../../packages/form-render';
3
2
 
4
3
  class AsyncQueueEntry {
5
4
  constructor(item, key, callback) {
@@ -1,4 +1,4 @@
1
- import { FormChangeContext } from '../../../../../es/packages/form-render';
1
+ import { FormChangeContext } from '../types';
2
2
  export declare class ContextCollector {
3
3
  private readonly contextMap;
4
4
  setContext(key: string, prop: keyof FormChangeContext, value: any): void;
@@ -1,5 +1,5 @@
1
1
  import { FieldItem } from '../types';
2
- import { BusinessCollector } from './useBusinessBinding';
2
+ import { BusinessCollector } from '../../../../../es/packages/form-render';
3
3
  /**
4
4
  * @description 胶水层, 将低代码平台中的fieldList转换为JSONSchema
5
5
  */
@@ -1,7 +1,6 @@
1
1
  import { arrayed, transformDateFormat } from '../utils/index.js';
2
- import { useFormValidator } from './useFormValidator.js';
2
+ import { useFormValidator, useTypeNormalize } from '../../../../packages/form-render';
3
3
  import { isObject } from '@vueuse/core';
4
- import { useTypeNormalize } from './useTypeNormalize.js';
5
4
 
6
5
  function useFieldList2Schema(collector) {
7
6
  const { createValidatorSchema } = useFormValidator();
@@ -115,14 +114,15 @@ function useFieldList2Schema(collector) {
115
114
  });
116
115
  return schema;
117
116
  };
118
- const createCollapseSchema = (item) => {
117
+ const createLinebarSchema = (item) => {
119
118
  return {
120
119
  name: item.val_key,
121
120
  type: "void",
122
121
  title: item.alias || item.name,
123
- "x-component": "COLLAPSE",
122
+ "x-component": "LINEBAR",
124
123
  "x-component-props": {
125
124
  disabled: item.is_not_fold === "1",
125
+ id: item.val_key,
126
126
  show: !!item.is_show
127
127
  }
128
128
  };
@@ -135,7 +135,7 @@ function useFieldList2Schema(collector) {
135
135
  return schema;
136
136
  };
137
137
  const creatorMap = /* @__PURE__ */ new Map([
138
- ["LINEBAR", createCollapseSchema],
138
+ ["LINEBAR", createLinebarSchema],
139
139
  ["INPUT", createInputSchema],
140
140
  ["INPUT_NUMBER", createInputNumberSchema],
141
141
  ["SELECT", createSelectSchema],
@@ -169,19 +169,19 @@ function useFieldList2Schema(collector) {
169
169
  };
170
170
  const { normalize } = useTypeNormalize();
171
171
  function transform(fieldList) {
172
- let prevCollapse = null;
172
+ let prevLinebar = null;
173
173
  return fieldList.reduce((fin, cur) => {
174
174
  var _a;
175
175
  normalize(cur);
176
176
  const obj_type = (_a = cur.validate) == null ? void 0 : _a.obj_type;
177
177
  obj_type && collector.collect(obj_type, cur.val_key);
178
178
  if (cur.html_type === "LINEBAR") {
179
- fin[cur.val_key] = createCollapseSchema(cur);
180
- prevCollapse = fin[cur.val_key].properties = {};
181
- } else if (prevCollapse) {
182
- prevCollapse[cur.val_key] = createWidgetSchema(cur);
179
+ fin[cur.val_key] = createLinebarSchema(cur);
180
+ prevLinebar = fin[cur.val_key].properties = {};
181
+ } else if (prevLinebar) {
182
+ prevLinebar[cur.val_key] = createWidgetSchema(cur);
183
183
  } else {
184
- prevCollapse = null;
184
+ prevLinebar = null;
185
185
  fin[cur.val_key] = createWidgetSchema(cur);
186
186
  }
187
187
  return fin;
@@ -0,0 +1,8 @@
1
+ import { AnyObject } from '../../../../../es/src/types';
2
+ export declare function useFormContext(props: AnyObject): {
3
+ asyncQueue: import("../../../../../es/packages/form-render").FormAsyncQueue;
4
+ SchemaField: import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
5
+ businessCollector: import("../../../../../es/packages/form-render").BusinessCollector;
6
+ changeContextCollector: import("../../../../../es/packages/form-render").ContextCollector;
7
+ formItemDepsCollector: import("../../../../../es/packages/form-render").FormItemDepsCollector;
8
+ };
@@ -0,0 +1,26 @@
1
+ import { provide } from 'vue';
2
+ import { createSchemaField } from '@formily/vue';
3
+ import { useAsyncQueue, useBusinessBinding, useChangeContext, useFormItemDeps } from '../../../../packages/form-render';
4
+ import * as components from '../../../../packages/form-render/src/components/renderer';
5
+ import { injectOrProvide } from '../../../../packages/form-render/src/utils';
6
+ import { InjectAsyncQueue, InjectionSchemaField, InjectionBusinessCollector, InjectionChangeContextCollector, InjectionFormItemDepsCollector } from '../../../../packages/form-render/src/constants';
7
+
8
+ function useFormContext(props) {
9
+ const asyncQueue = injectOrProvide(InjectAsyncQueue, () => useAsyncQueue().create(props.parallelism));
10
+ const SchemaField = injectOrProvide(InjectionSchemaField, () => createSchemaField({
11
+ components: {
12
+ ...components,
13
+ ...props.components
14
+ },
15
+ scope: props.scope
16
+ }).SchemaField);
17
+ const businessCollector = useBusinessBinding().create();
18
+ provide(InjectionBusinessCollector, businessCollector);
19
+ const changeContextCollector = useChangeContext().create();
20
+ provide(InjectionChangeContextCollector, changeContextCollector);
21
+ const formItemDepsCollector = useFormItemDeps().create();
22
+ provide(InjectionFormItemDepsCollector, formItemDepsCollector);
23
+ return { asyncQueue, SchemaField, businessCollector, changeContextCollector, formItemDepsCollector };
24
+ }
25
+
26
+ export { useFormContext };
@@ -1,7 +1,7 @@
1
1
  export declare class FormItemDepsCollector {
2
2
  private readonly collector;
3
3
  setDeps(key: string, dependKey: string | string[], callback: Function): void;
4
- trigger(dependKey: string): void;
4
+ trigger(dependKey: string, payload?: any): void;
5
5
  }
6
6
  export declare function useFormItemDeps(): {
7
7
  create: () => FormItemDepsCollector;
@@ -12,10 +12,10 @@ class FormItemDepsCollector {
12
12
  this.collector.set(dependKey2, map);
13
13
  });
14
14
  }
15
- trigger(dependKey) {
15
+ trigger(dependKey, payload) {
16
16
  const map = this.collector.get(dependKey);
17
17
  map && map.forEach((cb) => {
18
- typeof cb === "function" && cb();
18
+ typeof cb === "function" && cb(payload);
19
19
  });
20
20
  }
21
21
  }
@@ -1,5 +1,5 @@
1
1
  import { AnyObject } from '../../../../../es/src/types';
2
- import { FieldItem } from '../../../../../es/packages/form-render';
2
+ import { FieldItem } from '../types';
3
3
  export declare function useInitialData(): {
4
4
  assignInitialData: (initialData?: AnyObject, fieldList?: FieldItem[]) => AnyObject;
5
5
  };
@@ -23,6 +23,7 @@ export declare type FormRenderExpose = {
23
23
  validate(): Promise<void>;
24
24
  getFormValues(): AnyObject;
25
25
  setFieldState(path: string, setter: (field: Field) => void): void;
26
+ resetFields(path?: string): void;
26
27
  };
27
28
  export declare type FormChangeContext = Partial<{
28
29
  currentOption: AnyObject;
@@ -1,4 +1,5 @@
1
1
  import { AnyObject } from '../../../../../es/src/types';
2
+ import { ISchema } from '@formily/json-schema/esm/types';
2
3
  import { GeneralField } from '@formily/core';
3
4
  import { InjectionKey } from 'vue';
4
5
  import { IdCardParseInfo } from '../types';
@@ -12,3 +13,4 @@ export declare function isIdCard(idCardNo: string): boolean;
12
13
  export declare function parseIdCard(idCardNo: string): IdCardParseInfo;
13
14
  export declare function injectOrProvide<T>(key: InjectionKey<T>, creator: () => T): T;
14
15
  export declare function generateUrlParams(field: GeneralField, dependKeys?: string | string[]): AnyObject;
16
+ export declare function traverseSchema(schema: ISchema, handler: (_s: ISchema) => void): void;
@@ -1,3 +1,4 @@
1
+ import { isObject } from 'lodash-es';
1
2
  import { FIELD_SEX_VALUE } from '../constants/index.js';
2
3
  import { isField } from '@formily/core';
3
4
  import differenceInDays from '../../../../node_modules/date-fns/esm/differenceInDays/index.js';
@@ -67,5 +68,13 @@ function generateUrlParams(field, dependKeys) {
67
68
  }
68
69
  return result;
69
70
  }
71
+ function traverseSchema(schema, handler) {
72
+ handler(schema);
73
+ if (isObject(schema.properties)) {
74
+ Object.values(schema.properties).forEach((_s) => {
75
+ traverseSchema(_s, handler);
76
+ });
77
+ }
78
+ }
70
79
 
71
- export { arrayed, assignUpdateValue, formRenderLog, generateUrlParams, injectOrProvide, isIdCard, parseIdCard, transformDateFormat };
80
+ export { arrayed, assignUpdateValue, formRenderLog, generateUrlParams, injectOrProvide, isIdCard, parseIdCard, transformDateFormat, traverseSchema };
@@ -2,6 +2,9 @@
2
2
  display: grid !important;
3
3
  grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
4
4
  gap: 0 8px;
5
+ max-height: var(--form-height);
6
+ overflow-y: auto;
7
+ position: relative;
5
8
  }
6
9
  .form-render__formItem {
7
10
  grid-column: span var(--form-item-column) / span var(--form-item-column);
@@ -9,10 +12,10 @@
9
12
  .form-render__formItem .n-date-picker {
10
13
  width: 100%;
11
14
  }
12
- .form-render__collapse {
15
+ .form-render__linebar {
13
16
  grid-column: span var(--column) / span var(--column);
14
17
  }
15
- .form-render__collapseHeader {
18
+ .form-render__linebarHeader {
16
19
  cursor: pointer;
17
20
  display: flex;
18
21
  background: #fafafa;
@@ -22,7 +25,7 @@
22
25
  margin-bottom: 8px;
23
26
  border: 1px solid #d9d9d9;
24
27
  }
25
- .form-render__collapseItem {
28
+ .form-render__linebarItem {
26
29
  display: grid !important;
27
30
  grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
28
31
  gap: 0 8px;
@@ -2618,6 +2618,9 @@ body > .vxe-table--tooltip-wrapper {
2618
2618
  display: grid !important;
2619
2619
  grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
2620
2620
  gap: 0 8px;
2621
+ max-height: var(--form-height);
2622
+ overflow-y: auto;
2623
+ position: relative;
2621
2624
  }
2622
2625
  .form-render__formItem {
2623
2626
  grid-column: span var(--form-item-column) / span var(--form-item-column);
@@ -2625,10 +2628,10 @@ body > .vxe-table--tooltip-wrapper {
2625
2628
  .form-render__formItem .n-date-picker {
2626
2629
  width: 100%;
2627
2630
  }
2628
- .form-render__collapse {
2631
+ .form-render__linebar {
2629
2632
  grid-column: span var(--column) / span var(--column);
2630
2633
  }
2631
- .form-render__collapseHeader {
2634
+ .form-render__linebarHeader {
2632
2635
  cursor: pointer;
2633
2636
  display: flex;
2634
2637
  background: #fafafa;
@@ -2638,7 +2641,7 @@ body > .vxe-table--tooltip-wrapper {
2638
2641
  margin-bottom: 8px;
2639
2642
  border: 1px solid #d9d9d9;
2640
2643
  }
2641
- .form-render__collapseItem {
2644
+ .form-render__linebarItem {
2642
2645
  display: grid !important;
2643
2646
  grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
2644
2647
  gap: 0 8px;
@@ -44,6 +44,8 @@ export { BusinessCollector, useBusinessBinding } from './form-render/src/hooks/u
44
44
  export { ContextCollector, useChangeContext } from './form-render/src/hooks/useChangeContext.js';
45
45
  export { FormItemDepsCollector, useFormItemDeps } from './form-render/src/hooks/useFormItemDeps.js';
46
46
  export { useInitialData } from './form-render/src/hooks/useInitialData.js';
47
+ export { useAnchor } from './form-render/src/hooks/useAnchor.js';
48
+ export { useFormContext } from './form-render/src/hooks/useFormContext.js';
47
49
 
48
50
  const components = {
49
51
  CGrid: Grid,
@@ -264,6 +264,7 @@ var script = /* @__PURE__ */ defineComponent({
264
264
  positiveText: "\u786E\u5B9A",
265
265
  negativeText: "\u53D6\u6D88",
266
266
  maskClosable: false,
267
+ closable: false,
267
268
  onPositiveClick: () => {
268
269
  onSubmitForm();
269
270
  },
@@ -380,14 +381,18 @@ var script = /* @__PURE__ */ defineComponent({
380
381
  }, 8, ["model", "rules"])
381
382
  ], 6),
382
383
  unref(showSaveBtn) ? (openBlock(), createElementBlock("div", _hoisted_6, [
383
- createVNode(unref(NButton), { onClick: cancel }, {
384
+ createCommentVNode(" \u5206\u4EAB\u7684\u94FE\u63A5 \u9690\u85CF\u53D6\u6D88\u6309\u94AE "),
385
+ props.sourceType !== "guage" ? (openBlock(), createBlock(unref(NButton), {
386
+ key: 0,
387
+ onClick: cancel
388
+ }, {
384
389
  default: withCtx(() => [
385
390
  _hoisted_7
386
391
  ]),
387
392
  _: 1
388
- }),
393
+ })) : createCommentVNode("v-if", true),
389
394
  !props.isLock ? (openBlock(), createBlock(unref(NButton), {
390
- key: 0,
395
+ key: 1,
391
396
  onClick: onSubmit,
392
397
  disabled: state.banSubmit,
393
398
  type: "primary"
@@ -127,9 +127,7 @@ const ScaleViewInit = (props, state, emit, config) => {
127
127
  list = list.filter((v) => !filterArr.includes(v.type));
128
128
  state.formArray = formatArray(list || []);
129
129
  state.form = defaultFormValue(state.formArray);
130
- if (!props.noBtn) {
131
- state.rules = formatRules(state.formArray);
132
- }
130
+ state.rules = formatRules(state.formArray);
133
131
  state.fontSize = data.fontSize;
134
132
  state.spinning = false;
135
133
  state.hasFrontAddress = false;
@@ -165,13 +165,13 @@ const ScaleViewValidate = (props, state, config) => {
165
165
  state.choiceComObj[formKey(item)] = {};
166
166
  rules[newTitle].push({
167
167
  validator: (rule, value) => checkRadio(rule, value, item),
168
- trigger: "change"
168
+ trigger: ["change", "blur"]
169
169
  });
170
170
  } else if (item.type === "CHECKBOX_BLOCK") {
171
171
  state.choiceComObj[formKey(item)] = {};
172
172
  rules[newTitle].push({
173
173
  validator: (rule, value) => checkCheckbox(rule, value, item),
174
- trigger: "change"
174
+ trigger: ["change", "blur"]
175
175
  });
176
176
  }
177
177
  });
@@ -183,7 +183,7 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
183
183
  staticDataSearch: () => void;
184
184
  onExpand: (expandedKeys: any) => void;
185
185
  searchClick: () => void;
186
- isAllCheck: (checkedKeys?: never[]) => void;
186
+ isAllCheck: (checkedKeys?: never[], isTo?: boolean) => void;
187
187
  addCheckedkeysMain: (keys: any) => void;
188
188
  getParentKey: (key: any, tree: any) => any;
189
189
  radioChange: (checked: any) => void;
@@ -182,7 +182,7 @@ declare const _default: import("vue").DefineComponent<{
182
182
  staticDataSearch: () => void;
183
183
  onExpand: (expandedKeys: any) => void;
184
184
  searchClick: () => void;
185
- isAllCheck: (checkedKeys?: never[]) => void;
185
+ isAllCheck: (checkedKeys?: never[], isTo?: boolean) => void;
186
186
  addCheckedkeysMain: (keys: any) => void;
187
187
  getParentKey: (key: any, tree: any) => any;
188
188
  radioChange: (checked: any) => void;
@@ -1676,7 +1676,9 @@ declare const _default: import("vue").DefineComponent<{
1676
1676
  onBlur: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: FocusEvent) => void>>;
1677
1677
  onClick: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: MouseEvent) => void>>;
1678
1678
  onChange: import("vue").PropType<import("naive-ui/es/input/src/interface").OnUpdateValue>;
1679
- onClear: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: MouseEvent) => void>>;
1679
+ onClear: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: MouseEvent) => void>>; /**
1680
+ * 过滤默认值的右边展示
1681
+ */
1680
1682
  status: import("vue").PropType<import("naive-ui/es/form/src/interface").FormValidationStatus>;
1681
1683
  'onUpdate:value': import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/input/src/interface").OnUpdateValue>>;
1682
1684
  onUpdateValue: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/input/src/interface").OnUpdateValue>>;
@@ -2138,7 +2140,7 @@ declare const _default: import("vue").DefineComponent<{
2138
2140
  '--n-box-shadow-focus-warning': string;
2139
2141
  '--n-border-warning': string;
2140
2142
  '--n-border-focus-warning': string;
2141
- '--n-border-hover-warning': string; /** 提交映射 */
2143
+ '--n-border-hover-warning': string;
2142
2144
  '--n-loading-color-warning': string;
2143
2145
  '--n-caret-color-error': string;
2144
2146
  '--n-color-focus-error': string;
@@ -2794,9 +2796,7 @@ declare const _default: import("vue").DefineComponent<{
2794
2796
  tableColorHover: string;
2795
2797
  tableColorStriped: string;
2796
2798
  pressedColor: string;
2797
- opacityDisabled: string; /**
2798
- * 过滤默认值的右边展示
2799
- */
2799
+ opacityDisabled: string;
2800
2800
  inputColorDisabled: string;
2801
2801
  buttonColor2: string;
2802
2802
  buttonColor2Hover: string;
@@ -236,6 +236,7 @@ var script = /* @__PURE__ */ defineComponent({
236
236
  return;
237
237
  state.treeData.main = JSON.parse(JSON.stringify(props.data));
238
238
  generateDataList(state.treeData.main, state.dataList.main);
239
+ generateDataList(state.treeData.main, state.dataList.other);
239
240
  };
240
241
  const getcheckedKeys = () => {
241
242
  let checkedKeysMain = [], checkedKeysOther = [];
@@ -508,7 +509,9 @@ var script = /* @__PURE__ */ defineComponent({
508
509
  state.expandedKeys = [];
509
510
  if (!state.title) {
510
511
  state.treeData.main = JSON.parse(JSON.stringify(props.data));
512
+ state.dataList.main = [];
511
513
  generateDataList(state.treeData.main, state.dataList.main);
514
+ state.checkedKeys.main = state.checkedKeys.other.slice();
512
515
  isAllCheck();
513
516
  return;
514
517
  }
@@ -525,7 +528,7 @@ var script = /* @__PURE__ */ defineComponent({
525
528
  }) || [];
526
529
  state.dataList.main = [];
527
530
  generateDataList(state.treeData.main, state.dataList.main);
528
- const currentKeys = state.checkedKeys.main.slice();
531
+ const currentKeys = state.checkedKeys.other.slice();
529
532
  state.checkedKeys.main = [];
530
533
  const setCheckedKeys = (data) => {
531
534
  if (!(data == null ? void 0 : data.length))
@@ -537,6 +540,7 @@ var script = /* @__PURE__ */ defineComponent({
537
540
  });
538
541
  };
539
542
  setCheckedKeys(state.treeData.main);
543
+ state.checkedKeys.other = currentKeys;
540
544
  };
541
545
  const onExpand = (expandedKeys) => {
542
546
  state.expandedKeys = expandedKeys;
@@ -552,8 +556,8 @@ var script = /* @__PURE__ */ defineComponent({
552
556
  state.searchPage = 1;
553
557
  searchFetch();
554
558
  };
555
- const isAllCheck = (checkedKeys = []) => {
556
- if (!checkedKeys || checkedKeys.length == 0) {
559
+ const isAllCheck = (checkedKeys = [], isTo = false) => {
560
+ if (!checkedKeys || checkedKeys.length == 0 && !isTo) {
557
561
  state.indeterminate = false;
558
562
  state.singleChecked = false;
559
563
  } else {
@@ -574,6 +578,12 @@ var script = /* @__PURE__ */ defineComponent({
574
578
  let keys = getAllKeys(state.treeData.main);
575
579
  state.indeterminate = !(keys == state.checkedKeys.main.length);
576
580
  state.singleChecked = keys == state.checkedKeys.main.length;
581
+ if (typeof props.queryTreeSearch !== "function") {
582
+ state.checkedKeys.other = [...new Set(state.checkedKeys.other.concat(state.checkedKeys.main))];
583
+ state.checkedKeys.other = state.checkedKeys.other.filter((v) => {
584
+ return state.checkedKeys.main.includes(v) || !state.checkedKeys.main.includes(v) && state.dataList.main.findIndex((item) => item.key == v) == -1;
585
+ });
586
+ }
577
587
  }
578
588
  };
579
589
  const addCheckedkeysMain = (keys) => {
@@ -631,6 +641,7 @@ var script = /* @__PURE__ */ defineComponent({
631
641
  } else if (type == 2) {
632
642
  state.checkedKeys.main = [];
633
643
  state.autoExpandParent = true;
644
+ isAllCheck([], true);
634
645
  }
635
646
  };
636
647
  const checkAllSearchTree = (type) => {
@@ -31,5 +31,5 @@ declare const animeType: {
31
31
  easeOutBounce: typeof bounceOut;
32
32
  easeInOutBounce: (x: number) => number;
33
33
  };
34
- export declare const doAnimation: (startValue: number, endValue: number, during: number | undefined, callback: (v: number) => any, type?: keyof typeof animeType) => void;
34
+ export declare const doAnimation: (startValue: number, endValue: number, during: number | undefined, callback: (v: number) => any, type?: keyof typeof animeType, onAnimationEnd?: () => void) => void;
35
35
  export {};
@@ -101,7 +101,7 @@ const animeType = {
101
101
  return x < 0.5 ? (1 - bounceOut(1 - 2 * x)) / 2 : (1 + bounceOut(2 * x - 1)) / 2;
102
102
  }
103
103
  };
104
- const doAnimation = (startValue, endValue, during = 1e3, callback, type = "easeInBack") => {
104
+ const doAnimation = (startValue, endValue, during = 1e3, callback, type = "easeInBack", onAnimationEnd) => {
105
105
  const changeValue = endValue - startValue;
106
106
  const updateTime = 1e3 / 60;
107
107
  const updateCount = during / updateTime;
@@ -118,6 +118,9 @@ const doAnimation = (startValue, endValue, during = 1e3, callback, type = "easeI
118
118
  position += perUpdateDistance;
119
119
  if (position < endPosition) {
120
120
  rAF(step);
121
+ } else {
122
+ rAF(() => callback(endValue));
123
+ onAnimationEnd == null ? void 0 : onAnimationEnd();
121
124
  }
122
125
  }
123
126
  step();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
3
  "private": false,
4
- "version": "3.1.10",
4
+ "version": "3.1.11-beta.2",
5
5
  "license": "ISC",
6
6
  "module": "es/packages/index.js",
7
7
  "main": "es/packages/index.js",
@@ -1,2 +0,0 @@
1
- /*! Fabric.js Copyright 2008-2015, Printio (Juriy Zaytsev, Maxim Chernyak) */
2
- export const fabric: any;