cnhis-design-vue 3.1.40-beta.0 → 3.1.40-beta.10

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 (200) hide show
  1. package/README.md +12 -48
  2. package/es/components/big-table/style/index.css +1 -1
  3. package/es/components/button-print/src/utils/print.js +6 -1
  4. package/es/components/form-config/index.d.ts +66 -148
  5. package/es/components/form-config/src/FormConfig.vue.d.ts +66 -148
  6. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +33 -74
  7. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +33 -74
  8. package/es/components/form-render/index.d.ts +33 -74
  9. package/es/components/form-render/index.js +1 -1
  10. package/es/components/form-render/src/FormRender.vue.d.ts +33 -74
  11. package/es/components/form-render/src/FormRender.vue.js +37 -20
  12. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +33 -74
  13. package/es/components/form-render/src/components/renderer/searchCascade.js +2 -0
  14. package/es/components/form-render/src/components/renderer/select.js +5 -2
  15. package/es/components/form-render/src/hooks/index.js +1 -1
  16. package/es/components/form-render/src/hooks/useAnchor.d.ts +6 -3
  17. package/es/components/form-render/src/hooks/useAnchor.js +26 -26
  18. package/es/components/form-render/src/hooks/useAutoHidden.d.ts +4 -0
  19. package/es/components/form-render/src/hooks/useAutoHidden.js +43 -0
  20. package/es/components/form-render/src/hooks/useBusinessBinding.d.ts +7 -10
  21. package/es/components/form-render/src/hooks/useBusinessBinding.js +38 -36
  22. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +2 -6
  23. package/es/components/form-render/src/hooks/useFormContext.d.ts +1 -2
  24. package/es/components/form-render/src/hooks/useFormContext.js +2 -2
  25. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +1 -1
  26. package/es/components/form-render/src/hooks/useFormRenderOptions.js +25 -21
  27. package/es/components/form-render/src/types/fieldItem.d.ts +1 -1
  28. package/es/components/form-render/style/index.css +1 -1
  29. package/es/components/form-render/test/basic-config.spec.d.ts +1 -0
  30. package/es/components/form-render/test/renderer.spec.d.ts +1 -0
  31. package/es/components/iho-table/index.d.ts +121 -121
  32. package/es/components/iho-table/src/IhoTable.vue.d.ts +121 -121
  33. package/es/components/iho-table/src/IhoTable.vue.js +2 -1
  34. package/es/components/iho-table/src/constants/index.d.ts +2 -2
  35. package/es/components/iho-table/src/hooks/tapHooks/index.d.ts +59 -59
  36. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +1 -1
  37. package/es/components/index.css +1 -1
  38. package/es/components/index.d.ts +3 -1
  39. package/es/components/index.js +7 -1
  40. package/es/components/info-header/index.d.ts +18 -3
  41. package/es/components/info-header/src/HiddenContent.vue.d.ts +2 -2
  42. package/es/components/info-header/src/InfoEllipsis.vue.d.ts +1 -1
  43. package/es/components/info-header/src/InfoHeader.vue.d.ts +18 -3
  44. package/es/components/info-header/src/InfoHeader.vue.js +40 -19
  45. package/es/components/keyboard/index.d.ts +20 -2
  46. package/es/components/keyboard/src/Keyboard.vue.d.ts +20 -2
  47. package/es/components/keyboard/src/components/InputNumber.vue.d.ts +19 -2
  48. package/es/components/keyboard/src/components/InputNumber.vue.js +15 -5
  49. package/es/components/keyboard/src/components/NumberPanel.vue.d.ts +20 -2
  50. package/es/components/keyboard/src/components/NumberPanel.vue.js +14 -10
  51. package/es/components/recommend-search/index.d.ts +14 -14
  52. package/es/components/recommend-search/src/RecommendSearch.vue.d.ts +14 -14
  53. package/es/components/recommend-search/src/components/BaseSearch.vue.d.ts +2 -2
  54. package/es/components/recommend-search/src/components/RecommendInput.vue.d.ts +4 -4
  55. package/es/components/recommend-search/src/components/RecommendSelect.vue.d.ts +4 -4
  56. package/es/components/scale-view/index.d.ts +5 -2
  57. package/es/components/scale-view/src/ScaleView.vue.d.ts +8 -2
  58. package/es/components/scale-view/src/ScaleView.vue.js +4 -3
  59. package/es/components/scale-view/src/components/formitem/standard-modal.d.ts +1 -1
  60. package/es/components/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.vue.d.ts +1 -1
  61. package/es/components/scale-view/src/hooks/scaleview-computed.d.ts +1 -0
  62. package/es/components/scale-view/src/hooks/scaleview-computed.js +76 -31
  63. package/es/components/scale-view/src/hooks/use-evaluate.js +13 -13
  64. package/es/components/shortcut-provider/index.d.ts +15 -1
  65. package/es/components/shortcut-provider/src/ShortcutProvider.vue.d.ts +15 -1
  66. package/es/components/shortcut-provider/src/ShortcutProvider.vue.js +8 -2
  67. package/es/components/shortcut-setter/index.d.ts +33 -74
  68. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +33 -74
  69. package/es/components/steps-wheel/index.d.ts +1 -1
  70. package/es/components/steps-wheel/src/StepsWheel.vue.d.ts +1 -1
  71. package/es/components/table-filter/index.d.ts +8933 -0
  72. package/es/components/table-filter/index.js +21 -0
  73. package/es/components/table-filter/src/base-search-com/BaseSearch.vue.d.ts +3841 -0
  74. package/es/components/table-filter/src/base-search-com/BaseSearch.vue.js +2272 -0
  75. package/es/components/table-filter/src/classification/Classification-com.vue.d.ts +3198 -0
  76. package/es/components/table-filter/src/classification/Classification-com.vue.js +1315 -0
  77. package/es/components/table-filter/src/classification/search-class-name.vue.d.ts +71 -0
  78. package/es/components/table-filter/src/classification/search-class-name.vue.js +195 -0
  79. package/es/components/table-filter/src/classification/search-professional-model.vue.d.ts +1119 -0
  80. package/es/components/table-filter/src/classification/search-professional-model.vue.js +594 -0
  81. package/es/components/table-filter/src/components/age-com/index.vue.d.ts +119 -0
  82. package/es/components/table-filter/src/components/age-com/index.vue.js +185 -0
  83. package/es/components/table-filter/src/components/button-group/ButtonGroup.vue.d.ts +199 -0
  84. package/es/components/table-filter/src/components/button-group/ButtonGroup.vue.js +86 -0
  85. package/es/components/table-filter/src/components/button-icon/getBtnIcon.d.ts +2 -0
  86. package/es/components/table-filter/src/components/button-icon/getBtnIcon.js +30 -0
  87. package/es/components/table-filter/src/components/c-tree-select/tree-select.vue.d.ts +90 -0
  88. package/es/components/table-filter/src/components/c-tree-select/tree-select.vue.js +253 -0
  89. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +112 -0
  90. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.js +114 -0
  91. package/es/components/table-filter/src/components/classify-filter/helpers/options.d.ts +4 -0
  92. package/es/components/table-filter/src/components/classify-filter/helpers/options.js +14 -0
  93. package/es/components/table-filter/src/components/classify-filter/hooks/useDisplayCategory.d.ts +20 -0
  94. package/es/components/table-filter/src/components/classify-filter/hooks/useDisplayCategory.js +87 -0
  95. package/es/components/table-filter/src/components/classify-filter/hooks/useFilterConditions.d.ts +59 -0
  96. package/es/components/table-filter/src/components/classify-filter/hooks/useFilterConditions.js +147 -0
  97. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +278 -0
  98. package/es/components/table-filter/src/components/classify-filter/index.vue.js +304 -0
  99. package/es/components/table-filter/src/components/multi-select/multi-select.vue.d.ts +113 -0
  100. package/es/components/table-filter/src/components/multi-select/multi-select.vue.js +153 -0
  101. package/es/components/table-filter/src/components/out-quick-search/out-quick-search.vue.d.ts +266 -0
  102. package/es/components/table-filter/src/components/out-quick-search/out-quick-search.vue.js +310 -0
  103. package/es/components/table-filter/src/components/range-age/index.vue.d.ts +248 -0
  104. package/es/components/table-filter/src/components/range-age/index.vue.js +137 -0
  105. package/es/components/table-filter/src/components/render-widget/components/CheckboxGroup.vue.d.ts +104 -0
  106. package/es/components/table-filter/src/components/render-widget/components/CheckboxGroup.vue.js +64 -0
  107. package/es/components/table-filter/src/components/render-widget/components/Select.vue.d.ts +34 -0
  108. package/es/components/table-filter/src/components/render-widget/components/Select.vue.js +45 -0
  109. package/es/components/table-filter/src/components/render-widget/components/index.d.ts +3 -0
  110. package/es/components/table-filter/src/components/render-widget/components/index.js +2 -0
  111. package/es/components/table-filter/src/components/render-widget/enums.d.ts +25 -0
  112. package/es/components/table-filter/src/components/render-widget/enums.js +27 -0
  113. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.d.ts +1 -0
  114. package/es/components/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +70 -0
  115. package/es/components/table-filter/src/components/render-widget/index.vue.d.ts +32 -0
  116. package/es/components/table-filter/src/components/render-widget/index.vue.js +107 -0
  117. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +199 -0
  118. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.js +152 -0
  119. package/es/components/table-filter/src/components/search-condition/SearchCondition.vue.d.ts +789 -0
  120. package/es/components/table-filter/src/components/search-condition/SearchCondition.vue.js +1520 -0
  121. package/es/components/table-filter/src/components/search-condition/fieldTypeList.d.ts +18 -0
  122. package/es/components/table-filter/src/components/search-condition/fieldTypeList.js +171 -0
  123. package/es/components/table-filter/src/components/search-filter/SearchFilter.vue.d.ts +1217 -0
  124. package/es/components/table-filter/src/components/search-filter/SearchFilter.vue.js +199 -0
  125. package/es/components/table-filter/src/components/search-modal/set-classification.vue.d.ts +1624 -0
  126. package/es/components/table-filter/src/components/search-modal/set-classification.vue.js +241 -0
  127. package/es/components/table-filter/src/components/table-modal/TableModal.vue.d.ts +292 -0
  128. package/es/components/table-filter/src/components/table-modal/TableModal.vue.js +526 -0
  129. package/es/components/table-filter/src/const/dataOptions.d.ts +36 -0
  130. package/es/components/table-filter/src/const/dataOptions.js +107 -0
  131. package/es/components/table-filter/src/const/index.d.ts +5 -0
  132. package/es/components/table-filter/src/const/index.js +5 -0
  133. package/es/components/table-filter/src/directive/flexibleResize.d.ts +28 -0
  134. package/es/components/table-filter/src/directive/flexibleResize.js +157 -0
  135. package/es/components/table-filter/src/directive/preventReClick.d.ts +4 -0
  136. package/es/components/table-filter/src/directive/preventReClick.js +14 -0
  137. package/es/components/table-filter/src/directive/resize.d.ts +4 -0
  138. package/es/components/table-filter/src/directive/resize.js +12 -0
  139. package/es/components/table-filter/src/hooks/export.d.ts +1 -0
  140. package/es/components/table-filter/src/hooks/export.js +1 -0
  141. package/es/components/table-filter/src/hooks/useAdvanced.d.ts +28 -0
  142. package/es/components/table-filter/src/hooks/useAdvanced.js +64 -0
  143. package/es/components/table-filter/src/hooks/useMixins.d.ts +60 -0
  144. package/es/components/table-filter/src/hooks/useMixins.js +532 -0
  145. package/es/components/table-filter/src/hooks/useRenderWidget.d.ts +15 -0
  146. package/es/components/table-filter/src/hooks/useRenderWidget.js +94 -0
  147. package/es/components/table-filter/src/hooks/useTableSearchCon.d.ts +8 -0
  148. package/es/components/table-filter/src/hooks/useTableSearchCon.js +131 -0
  149. package/es/components/table-filter/src/hooks/useWordBookutils.d.ts +12 -0
  150. package/es/components/table-filter/src/hooks/useWordBookutils.js +91 -0
  151. package/es/components/table-filter/src/quick-search/QuickSearch.vue.d.ts +1942 -0
  152. package/es/components/table-filter/src/quick-search/QuickSearch.vue.js +2038 -0
  153. package/es/components/table-filter/src/tool/generateDefOptions.d.ts +14 -0
  154. package/es/components/table-filter/src/tool/generateDefOptions.js +65 -0
  155. package/es/components/table-filter/src/tool/getWidgetType.d.ts +1 -0
  156. package/es/components/table-filter/src/tool/getWidgetType.js +27 -0
  157. package/es/components/table-filter/src/tool/options.d.ts +18 -0
  158. package/es/components/table-filter/src/tool/options.js +200 -0
  159. package/es/components/table-filter/src/tool/resizeSensor.d.ts +16 -0
  160. package/es/components/table-filter/src/tool/resizeSensor.js +123 -0
  161. package/es/components/table-filter/src/tool/time-domain.d.ts +39 -0
  162. package/es/components/table-filter/src/tool/time-domain.js +100 -0
  163. package/es/components/table-filter/src/tool/transformData.d.ts +92 -0
  164. package/es/components/table-filter/src/tool/transformData.js +169 -0
  165. package/es/components/table-filter/src/tool/utils.d.ts +4 -0
  166. package/es/components/table-filter/src/tool/utils.js +29 -0
  167. package/es/components/table-filter/src/types/enums.d.ts +65 -0
  168. package/es/components/table-filter/src/types/enums.js +67 -0
  169. package/es/components/table-filter/src/types/index.d.ts +483 -0
  170. package/es/components/table-filter/src/types/index.js +1 -0
  171. package/es/components/table-filter/src/types/tool.d.ts +7 -0
  172. package/es/components/table-filter/src/types/tool.js +1 -0
  173. package/es/components/table-filter/style/index.css +1 -0
  174. package/es/shared/assets/img/failure.js +1 -1
  175. package/es/shared/assets/img/failure.png.js +1 -1
  176. package/es/shared/assets/img/icon-asc.js +1 -1
  177. package/es/shared/assets/img/icon-desc.js +1 -1
  178. package/es/shared/assets/img/no-permission.js +1 -1
  179. package/es/shared/assets/img/no-permission.png.js +1 -1
  180. package/es/shared/assets/img/nodata.js +1 -1
  181. package/es/shared/assets/img/nodata.png.js +1 -1
  182. package/es/shared/assets/img/notfound.js +1 -1
  183. package/es/shared/assets/img/notfound.png.js +1 -1
  184. package/es/shared/assets/img/qr.js +1 -1
  185. package/es/shared/assets/img/qr.png.js +1 -1
  186. package/es/shared/assets/img/success.js +1 -1
  187. package/es/shared/assets/img/success.png.js +1 -1
  188. package/es/shared/assets/img/video.js +1 -1
  189. package/es/shared/assets/img/video.png.js +1 -1
  190. package/es/shared/assets/img/video_default_cover.js +1 -1
  191. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  192. package/es/shared/assets/img/video_hover.js +1 -1
  193. package/es/shared/assets/img/video_play_hover.js +1 -1
  194. package/es/shared/assets/img/xb_big.js +1 -1
  195. package/es/shared/assets/img/xb_big.png.js +1 -1
  196. package/es/shared/assets/img/xb_small.js +1 -1
  197. package/es/shared/assets/img/xb_small.png.js +1 -1
  198. package/es/shared/components/TextOverTooltip/TextOverTooltip.vue.d.ts +1 -1
  199. package/es/shared/utils/utilExpand.js +66 -0
  200. package/package.json +3 -3
@@ -1,8 +1,9 @@
1
- import { defineComponent, computed, onMounted, ref, watch, onUnmounted, openBlock, createBlock, unref, withCtx, createElementBlock, createVNode, isRef, Fragment, renderList, createCommentVNode, createElementVNode, normalizeStyle, withKeys, withModifiers, toDisplayString } from 'vue';
2
- import { createForm, onFieldValueChange } from '@formily/core';
1
+ import { defineComponent, ref, computed, onMounted, onUnmounted, openBlock, createBlock, unref, withCtx, createElementBlock, createVNode, isRef, Fragment, renderList, createCommentVNode, createElementVNode, normalizeStyle, withKeys, withModifiers, toDisplayString } from 'vue';
2
+ import { createForm, onFieldValueChange, onFieldReact, onFormMount } from '@formily/core';
3
3
  import { FormProvider, FormConsumer } from '@formily/vue';
4
- import { cloneDeep } from 'lodash-es';
4
+ import { isNumber, cloneDeep } from 'lodash-es';
5
5
  import { NForm, NTabs, NTabPane, NConfigProvider } from 'naive-ui';
6
+ import { useAutoHidden } from './hooks/useAutoHidden.js';
6
7
  import { useComplexOptionsSpan } from './hooks/useComplexOptions.js';
7
8
  import { useFormDomEvent, useFormExposeEvent } from './hooks/useFormEvent.js';
8
9
  import { useFormRenderLifeCycle } from './hooks/useFormRenderLifeCycle.js';
@@ -28,6 +29,7 @@ import '@vueuse/core';
28
29
  import 'date-fns';
29
30
  import { useAnchor } from './hooks/useAnchor.js';
30
31
  import { useFormContext } from './hooks/useFormContext.js';
32
+ import './hooks/useFormRenderOptions.js';
31
33
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.js';
32
34
  import { createObjSchema } from './utils/schema.js';
33
35
 
@@ -64,7 +66,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
64
66
  },
65
67
  lowCodeReactions: {
66
68
  type: Array
67
- }
69
+ },
70
+ linebarAutoHidden: { type: Boolean }
68
71
  },
69
72
  emits: [
70
73
  "formChange",
@@ -75,13 +78,30 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
75
78
  const props = __props;
76
79
  const { nuiThemeOverrides } = useNuiThemeOverrides();
77
80
  validateMessageLocale();
81
+ const formRenderRef = ref();
82
+ const formHeight = computed(() => {
83
+ if (isNumber(props.maxHeight))
84
+ return props.maxHeight + "px";
85
+ return props.maxHeight;
86
+ });
87
+ const { SchemaField, businessCollector, formItemDepsCollector, changeContextCollector, formUUID } = useFormContext(
88
+ props,
89
+ emit
90
+ );
91
+ const { anchorBarRef, currentAnchor, generateAnchorList, updateAnchorList, anchorIdList, onScroll } = useAnchor(
92
+ props,
93
+ emit,
94
+ formRenderRef,
95
+ formItemDepsCollector
96
+ );
78
97
  useFormRenderLifeCycle(props).callLifeCycle("onSetup");
98
+ const { trigger: triggerAutoHidden } = useAutoHidden();
79
99
  const formModel = createForm({
80
100
  initialValues: props.initialData,
81
- effects() {
101
+ effects(_formModel) {
82
102
  onFieldValueChange("*", (field) => {
83
103
  const fieldKey = field.props.name.toString();
84
- businessCollector.trigger(fieldKey);
104
+ businessCollector.trigger(_formModel, fieldKey);
85
105
  formItemDepsCollector.trigger(fieldKey);
86
106
  emit("formChange", {
87
107
  fieldInstance: field,
@@ -92,6 +112,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
92
112
  });
93
113
  lowCodeReactionsHandler(fieldKey, field.value);
94
114
  });
115
+ if (props.linebarAutoHidden) {
116
+ onFieldReact("*", triggerAutoHidden);
117
+ onFormMount((formModel2) => formModel2.query("*").forEach(triggerAutoHidden));
118
+ }
119
+ if (props.anchor) {
120
+ onFieldReact("*", updateAnchorList);
121
+ onFormMount(generateAnchorList);
122
+ }
95
123
  }
96
124
  });
97
125
  const { lowCodeReactionsHandler, triggerAllReactionsHandler } = useLowCodeReactions(
@@ -99,12 +127,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
99
127
  formModel
100
128
  );
101
129
  onMounted(triggerAllReactionsHandler);
102
- const { SchemaField, businessCollector, formItemDepsCollector, changeContextCollector, formUUID } = useFormContext(
103
- props,
104
- formModel,
105
- emit
106
- );
107
- const formRenderRef = ref();
108
130
  const { schemaAdaptor } = useFieldListAdaptor(businessCollector);
109
131
  let _fieldList = props.fieldList || [];
110
132
  const parsedSchema = computed(() => {
@@ -117,13 +139,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
117
139
  }
118
140
  return createObjSchema({});
119
141
  });
120
- const { currentAnchor, generateAnchorList, anchorIdList, formHeight, onScroll } = useAnchor(
121
- props,
122
- emit,
123
- formRenderRef,
124
- formItemDepsCollector
125
- );
126
- watch(parsedSchema, generateAnchorList, { immediate: true });
127
142
  const { onKeydown } = useFormDomEvent({ formModel, formRenderRef, props });
128
143
  const { clearSpan } = useComplexOptionsSpan();
129
144
  onUnmounted(() => clearSpan(formUUID));
@@ -168,7 +183,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
168
183
  createVNode(unref(NTabs), {
169
184
  value: unref(currentAnchor),
170
185
  "onUpdate:value": _cache[0] || (_cache[0] = ($event) => isRef(currentAnchor) ? currentAnchor.value = $event : null),
171
- type: "line"
186
+ type: "line",
187
+ ref_key: "anchorBarRef",
188
+ ref: anchorBarRef
172
189
  }, {
173
190
  default: withCtx(() => [
174
191
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(anchorIdList), (anchor) => {
@@ -129,6 +129,9 @@ declare const _default: import("vue").DefineComponent<{}, {
129
129
  lowCodeReactions: {
130
130
  type: import("vue").PropType<import("../../../../es/components/form-render").FormLowCodeReactions.Config[]>;
131
131
  };
132
+ linebarAutoHidden: {
133
+ type: BooleanConstructor;
134
+ };
132
135
  }, {
133
136
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
134
137
  fieldList: {
@@ -254,6 +257,9 @@ declare const _default: import("vue").DefineComponent<{}, {
254
257
  lowCodeReactions: {
255
258
  type: import("vue").PropType<import("../../../../es/components/form-render").FormLowCodeReactions.Config[]>;
256
259
  };
260
+ linebarAutoHidden: {
261
+ type: BooleanConstructor;
262
+ };
257
263
  }>> & {
258
264
  onFormChange?: ((...args: any[]) => any) | undefined;
259
265
  onScroll?: ((...args: any[]) => any) | undefined;
@@ -261,17 +267,30 @@ declare const _default: import("vue").DefineComponent<{}, {
261
267
  }>>;
262
268
  emit: (event: "scroll" | "formChange" | "annotationChange", ...args: any[]) => void;
263
269
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
264
- formModel: import("../../../../es/components/form-render").Form<{
265
- [x: string]: any;
266
- }>;
267
- lowCodeReactionsHandler: (field: string, value: unknown) => void;
268
- triggerAllReactionsHandler: () => void;
270
+ formRenderRef: import("vue").Ref<HTMLElement | undefined>;
271
+ formHeight: import("vue").ComputedRef<string>;
269
272
  SchemaField: import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
270
273
  businessCollector: import("../../../../es/components/form-render").BusinessCollector;
271
274
  formItemDepsCollector: import("../../../../es/components/form-render").FormItemDepsCollector;
272
275
  changeContextCollector: import("../../../../es/components/form-render").ContextCollector;
273
276
  formUUID: string;
274
- formRenderRef: import("vue").Ref<HTMLElement | undefined>;
277
+ anchorBarRef: import("vue").Ref<{
278
+ syncBarPosition: import("../../../shared/types").Func<any[], any>;
279
+ } | undefined>;
280
+ currentAnchor: import("vue").WritableComputedRef<string>;
281
+ generateAnchorList: (formModel: import("../../../../es/components/form-render").Form<any>) => Promise<void>;
282
+ updateAnchorList: (field: import("../../../../es/components/form-render").GeneralField) => void;
283
+ anchorIdList: import("vue").Ref<{
284
+ name: string;
285
+ title: string;
286
+ }[]>;
287
+ onScroll: (scrollEvent: Event) => void;
288
+ triggerAutoHidden: (field: import("../../../../es/components/form-render").GeneralField) => Promise<void>;
289
+ formModel: import("../../../../es/components/form-render").Form<{
290
+ [x: string]: any;
291
+ }>;
292
+ lowCodeReactionsHandler: (field: string, value: unknown) => void;
293
+ triggerAllReactionsHandler: () => void;
275
294
  schemaAdaptor: (fieldList: import("../../../../es/components/form-render").FieldItem[]) => Record<string, import("@formily/json-schema").Stringify<{
276
295
  [key: symbol]: any;
277
296
  [key: `x-${string}`]: any;
@@ -387,70 +406,6 @@ declare const _default: import("vue").DefineComponent<{}, {
387
406
  "x-read-pretty"?: boolean | undefined;
388
407
  "x-compile-omitted"?: string[] | undefined;
389
408
  }>>;
390
- currentAnchor: import("vue").WritableComputedRef<string>;
391
- generateAnchorList: (schema: import("@formily/json-schema").Stringify<{
392
- [key: symbol]: any;
393
- [key: `x-${string}`]: any;
394
- [key: `x-${number}`]: any;
395
- version?: string | undefined;
396
- name?: import("@formily/json-schema").SchemaKey | undefined;
397
- title?: any;
398
- description?: any;
399
- default?: any;
400
- readOnly?: boolean | undefined;
401
- writeOnly?: boolean | undefined;
402
- type?: import("@formily/json-schema").SchemaTypes | undefined;
403
- enum?: import("@formily/json-schema").SchemaEnum<any> | undefined;
404
- const?: any;
405
- multipleOf?: number | undefined;
406
- maximum?: number | undefined;
407
- exclusiveMaximum?: number | undefined;
408
- minimum?: number | undefined;
409
- exclusiveMinimum?: number | undefined;
410
- maxLength?: number | undefined;
411
- minLength?: number | undefined;
412
- pattern?: string | RegExp | undefined;
413
- maxItems?: number | undefined;
414
- minItems?: number | undefined;
415
- uniqueItems?: boolean | undefined;
416
- maxProperties?: number | undefined;
417
- minProperties?: number | undefined;
418
- required?: string | boolean | string[] | undefined;
419
- format?: string | undefined;
420
- $ref?: string | undefined;
421
- $namespace?: string | undefined;
422
- definitions?: import("@formily/json-schema").SchemaProperties<any, any, any, any, any, any, any, any> | undefined;
423
- properties?: import("@formily/json-schema").SchemaProperties<any, any, any, any, any, any, any, any> | undefined;
424
- items?: import("@formily/json-schema").SchemaItems<any, any, any, any, any, any, any, any> | undefined;
425
- additionalItems?: import("@formily/json-schema").Stringify<any> | undefined;
426
- patternProperties?: import("@formily/json-schema").SchemaProperties<any, any, any, any, any, any, any, any> | undefined;
427
- additionalProperties?: import("@formily/json-schema").Stringify<any> | undefined;
428
- "x-value"?: any;
429
- "x-index"?: number | undefined;
430
- "x-pattern"?: any;
431
- "x-display"?: any;
432
- "x-validator"?: any;
433
- "x-decorator"?: any;
434
- "x-decorator-props"?: any;
435
- "x-component"?: any;
436
- "x-component-props"?: any;
437
- "x-reactions"?: import("@formily/json-schema").SchemaReactions<any> | undefined;
438
- "x-content"?: any;
439
- "x-data"?: any;
440
- "x-visible"?: boolean | undefined;
441
- "x-hidden"?: boolean | undefined;
442
- "x-disabled"?: boolean | undefined;
443
- "x-editable"?: boolean | undefined;
444
- "x-read-only"?: boolean | undefined;
445
- "x-read-pretty"?: boolean | undefined;
446
- "x-compile-omitted"?: string[] | undefined;
447
- }>) => void;
448
- anchorIdList: import("vue").Ref<{
449
- name: string;
450
- title: string;
451
- }[]>;
452
- formHeight: import("vue").ComputedRef<string | undefined>;
453
- onScroll: (scrollEvent: Event) => void;
454
409
  onKeydown: (event: KeyboardEvent) => void;
455
410
  clearSpan: (uuid: string) => void;
456
411
  exposeEvent: {
@@ -479,17 +434,19 @@ declare const _default: import("vue").DefineComponent<{}, {
479
434
  content: any;
480
435
  hidden: boolean;
481
436
  active: boolean;
437
+ dataSource: import("../../../../es/components/form-render").FieldDataSource;
438
+ description: string;
439
+ display: import("../../../../es/components/form-render").FieldDisplayTypes;
482
440
  mounted: boolean;
483
441
  readonly destroyed: boolean;
484
442
  unmounted: boolean;
485
443
  componentProps: Record<string, any>;
486
444
  decoratorProps: Record<string, any>;
487
- display: import("../../../../es/components/form-render").FieldDisplayTypes;
488
- description: string;
489
445
  readOnly: boolean;
490
446
  editable: boolean;
491
447
  component: import("../../../../es/components/form-render").FieldComponent<any, any>;
492
448
  decorator: import("../../../../es/components/form-render").FieldDecorator<any, any>;
449
+ readPretty: boolean;
493
450
  validating: boolean;
494
451
  submitting: boolean;
495
452
  visited: boolean;
@@ -497,7 +454,6 @@ declare const _default: import("vue").DefineComponent<{}, {
497
454
  modified: boolean;
498
455
  inputValue: string;
499
456
  inputValues: any[];
500
- dataSource: import("../../../../es/components/form-render").FieldDataSource;
501
457
  feedbacks: import("../../../../es/components/form-render").IFieldFeedback[];
502
458
  caches: import("../../../../es/components/form-render").IFieldCaches;
503
459
  selfErrors: import("../../../../es/components/form-render").FeedbackMessage;
@@ -533,7 +489,6 @@ declare const _default: import("vue").DefineComponent<{}, {
533
489
  designable: boolean;
534
490
  locate: (address: import("@formily/path").Pattern) => void;
535
491
  readonly parent: import("../../../../es/components/form-render").GeneralField;
536
- readPretty: boolean;
537
492
  setTitle: (title?: string | undefined) => void;
538
493
  setDescription: (description?: string | undefined) => void;
539
494
  setDisplay: (type?: import("../../../../es/components/form-render").FieldDisplayTypes | undefined) => void;
@@ -741,6 +696,9 @@ declare const _default: import("vue").DefineComponent<{}, {
741
696
  lowCodeReactions: {
742
697
  type: import("vue").PropType<import("../../../../es/components/form-render").FormLowCodeReactions.Config[]>;
743
698
  };
699
+ linebarAutoHidden: {
700
+ type: BooleanConstructor;
701
+ };
744
702
  }>> & {
745
703
  onFormChange?: ((...args: any[]) => any) | undefined;
746
704
  onScroll?: ((...args: any[]) => any) | undefined;
@@ -755,6 +713,7 @@ declare const _default: import("vue").DefineComponent<{}, {
755
713
  scope: import("../../../shared/types").AnyObject;
756
714
  consumer: boolean;
757
715
  enterToNextWidget: boolean | ((fieldItem: import("../../../../es/components/form-render").FieldItem) => boolean | void);
716
+ linebarAutoHidden: boolean;
758
717
  }>;
759
718
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
760
719
  export default _default;
@@ -20,9 +20,11 @@ import '../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js';
20
20
  import '../../hooks/useFormValidator.js';
21
21
  import '@formily/core';
22
22
  import 'date-fns';
23
+ import '@formily/reactive';
23
24
  import { connect, mapProps } from '@formily/vue';
24
25
  import '@vue/shared';
25
26
  import './index.js';
27
+ import '../../hooks/useFormRenderOptions.js';
26
28
  import { NCascader } from 'naive-ui';
27
29
  import { createVisitedSetter, assignUpdateValue, traverseDependKey } from '../../utils/schema.js';
28
30
 
@@ -20,10 +20,11 @@ import '../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js';
20
20
  import '../../hooks/useFormValidator.js';
21
21
  import '@formily/core';
22
22
  import 'date-fns';
23
+ import '@formily/reactive';
23
24
  import { connect, mapProps } from '@formily/vue';
24
25
  import '@vue/shared';
25
26
  import './index.js';
26
- import { useUrlConfigOptions, useAutographOptions, useRecommendOptions, optionMatcherCache } from '../../hooks/useFormRenderOptions.js';
27
+ import { useUrlConfigOptions, useAutographOptions, useRecommendOptions, searchContentMatcher } from '../../hooks/useFormRenderOptions.js';
27
28
  import { NSelect } from 'naive-ui';
28
29
  import { createVisitedSetter, assignUpdateValue, assignClearBindVisited } from '../../utils/schema.js';
29
30
 
@@ -115,7 +116,9 @@ const script = defineComponent({
115
116
  return sortedOptions.value.find((option) => option[valueKey.value] === v2);
116
117
  }
117
118
  });
119
+ let searchContent = "";
118
120
  const fetchData = useDebounceFn(async (content = "") => {
121
+ searchContent = content;
119
122
  fetchOptions(content);
120
123
  getRecommend(content);
121
124
  }, 400);
@@ -135,7 +138,7 @@ const script = defineComponent({
135
138
  const label = option[labelKey.value];
136
139
  if (!label || !isString(label))
137
140
  return "";
138
- const renderLabels = optionMatcherCache.get(option);
141
+ const renderLabels = searchContentMatcher(searchContent, label);
139
142
  if (!renderLabels)
140
143
  return label;
141
144
  return createVNode("section", null, [renderLabels.map((chars, idx) => {
@@ -12,4 +12,4 @@ export { FormItemDepsCollector, useFormItemDeps } from './useFormItemDeps.js';
12
12
  export { useAnchor } from './useAnchor.js';
13
13
  export { useFormContext } from './useFormContext.js';
14
14
  export { useCommonInjection, useSelectOptionProps } from './useCommonInjection.js';
15
- export { optionMatcherCache, useAutographOptions, useRecommendOptions, useUrlConfigOptions } from './useFormRenderOptions.js';
15
+ export { searchContentMatcher, useAutographOptions, useRecommendOptions, useUrlConfigOptions } from './useFormRenderOptions.js';
@@ -1,15 +1,18 @@
1
1
  import { Func, UndefinedAble } from '../../../../../es/shared/types';
2
- import { ISchema } from '@formily/json-schema/esm/types';
2
+ import { Form, GeneralField } from '@formily/core';
3
3
  import { Ref } from 'vue';
4
4
  import { FormItemDepsCollector, FormRenderProps } from '../../../../../es/components/form-render';
5
5
  export declare function useAnchor(props: Readonly<FormRenderProps>, emit: Func, scrollbarRef: Ref<UndefinedAble<HTMLElement>>, collector: FormItemDepsCollector): {
6
6
  currentAnchor: import("vue").WritableComputedRef<string>;
7
7
  onScroll: (scrollEvent: Event) => void;
8
- formHeight: import("vue").ComputedRef<string | undefined>;
9
8
  anchorIdList: Ref<{
10
9
  name: string;
11
10
  title: string;
12
11
  }[]>;
13
- generateAnchorList: (schema: ISchema) => void;
12
+ generateAnchorList: (formModel: Form) => Promise<void>;
13
+ updateAnchorList: (field: GeneralField) => void;
14
14
  scrollTo: (id: string) => Promise<void>;
15
+ anchorBarRef: Ref<{
16
+ syncBarPosition: Func;
17
+ } | undefined>;
15
18
  };
@@ -1,27 +1,30 @@
1
1
  import { doAnimation } from '../../../../shared/utils/anime.js';
2
- import { useDebounceFn } from '@vueuse/core';
3
- import { isNumber } from 'lodash-es';
4
- import { ref, computed, watch, nextTick } from 'vue';
2
+ import { untracked } from '@formily/reactive';
3
+ import { useDebounceFn, watchOnce } from '@vueuse/core';
4
+ import { ref, nextTick, computed } from 'vue';
5
5
  import { FormItemLineBarDepKeyPrepend } from '../constants/index.js';
6
6
  import '../utils/index.js';
7
- import { createLinebarId, traverseSchema } from '../utils/schema.js';
7
+ import { createLinebarId } from '../utils/schema.js';
8
8
 
9
9
  function useAnchor(props, emit, scrollbarRef, collector) {
10
+ const anchorBarRef = ref();
10
11
  const __currentAnchor = ref("");
11
- const formHeight = computed(() => {
12
- if (isNumber(props.maxHeight))
13
- return props.maxHeight + "px";
14
- return props.maxHeight;
15
- });
16
12
  const anchorIdList = ref([]);
17
- function generateAnchorList(schema) {
18
- anchorIdList.value.length = 0;
19
- traverseSchema(schema, (_schema) => {
20
- var _a;
21
- if (_schema["x-component"] === "LINEBAR") {
22
- anchorIdList.value.push({ title: _schema.title, name: ((_a = _schema.name) == null ? void 0 : _a.toString()) || "" });
13
+ const generateAnchorList = useDebounceFn(async function(formModel) {
14
+ var _a;
15
+ anchorIdList.value = Object.values(formModel.fields).reduce((res, field) => {
16
+ if (field.componentType === "LINEBAR" && field.selfDisplay === "visible") {
17
+ res.push({ title: field.title, name: field.address.toString() });
23
18
  }
24
- });
19
+ return res;
20
+ }, []);
21
+ await nextTick();
22
+ (_a = anchorBarRef.value) == null ? void 0 : _a.syncBarPosition();
23
+ }, 100);
24
+ function updateAnchorList(field) {
25
+ if (field.componentType !== "LINEBAR" || !field.selfDisplay)
26
+ return;
27
+ untracked(() => generateAnchorList(field.form));
25
28
  }
26
29
  let scrollLock = false;
27
30
  async function scrollTo(id) {
@@ -68,14 +71,10 @@ function useAnchor(props, emit, scrollbarRef, collector) {
68
71
  __currentAnchor.value = (_a = result == null ? void 0 : result.name) != null ? _a : "";
69
72
  emit("scroll", scrollEvent);
70
73
  }, 300);
71
- watch(
72
- anchorIdList,
73
- (_anchorIdList) => {
74
- var _a, _b;
75
- __currentAnchor.value = (_b = (_a = _anchorIdList[0]) == null ? void 0 : _a.name) != null ? _b : "";
76
- },
77
- { deep: true, immediate: true }
78
- );
74
+ watchOnce(anchorIdList, (_anchorIdList) => {
75
+ var _a, _b;
76
+ __currentAnchor.value = (_b = (_a = _anchorIdList[0]) == null ? void 0 : _a.name) != null ? _b : "";
77
+ });
79
78
  const currentAnchor = computed({
80
79
  get() {
81
80
  return __currentAnchor.value;
@@ -89,10 +88,11 @@ function useAnchor(props, emit, scrollbarRef, collector) {
89
88
  return {
90
89
  currentAnchor,
91
90
  onScroll,
92
- formHeight,
93
91
  anchorIdList,
94
92
  generateAnchorList,
95
- scrollTo
93
+ updateAnchorList,
94
+ scrollTo,
95
+ anchorBarRef
96
96
  };
97
97
  }
98
98
 
@@ -0,0 +1,4 @@
1
+ import { GeneralField } from '@formily/core';
2
+ export declare function useAutoHidden(): {
3
+ trigger: (field: GeneralField) => Promise<void>;
4
+ };
@@ -0,0 +1,43 @@
1
+ import { untracked } from '@formily/reactive';
2
+ import { nextTick } from 'vue';
3
+
4
+ function useAutoHidden() {
5
+ async function trigger(field) {
6
+ const fieldDisplay = field.selfDisplay;
7
+ untracked(async () => {
8
+ if (field.componentType === "LINEBAR") {
9
+ await nextTick();
10
+ linebarVisibleCheck(field);
11
+ } else {
12
+ const parent = field.parent;
13
+ if (!parent || parent.componentType !== "LINEBAR")
14
+ return;
15
+ if (fieldDisplay === "visible") {
16
+ parent.setDisplay("visible");
17
+ } else {
18
+ linebarVisibleCheck(parent);
19
+ }
20
+ }
21
+ });
22
+ }
23
+ return { trigger };
24
+ }
25
+ async function linebarVisibleCheck(field) {
26
+ if (field.selfDisplay === "hidden")
27
+ return;
28
+ const visible = getChildrenAddress(field).some((address) => {
29
+ const targetField = field.form.fields[address];
30
+ return targetField && targetField.selfDisplay === "visible";
31
+ });
32
+ field.setDisplay(visible ? "visible" : "hidden");
33
+ }
34
+ function getChildrenAddress(field) {
35
+ const fieldAddress = field.address.toString();
36
+ const addresses = Reflect.get(field.form.query(fieldAddress + ".*"), "addresses");
37
+ return addresses.filter((address) => {
38
+ const targetField = field.form.fields[address];
39
+ return targetField && targetField.address.parent().toString() === fieldAddress;
40
+ });
41
+ }
42
+
43
+ export { useAutoHidden };
@@ -2,26 +2,23 @@ import { Form } from '@formily/core';
2
2
  import { FieldItem, FormBusinessFormatter } from '../../../../../es/components/form-render';
3
3
  import { FIELD_BUSINESS_TYPE } from '../constants';
4
4
  export declare class BusinessCollector {
5
- private formModel;
6
5
  private businessFormatter?;
7
6
  private readonly typeLockMap;
8
7
  private readonly typeCollector;
9
8
  private readonly fieldNameCollector;
10
- constructor(formModel: Form, businessFormatter?: FormBusinessFormatter | undefined);
9
+ constructor(businessFormatter?: FormBusinessFormatter | undefined);
11
10
  private formatter;
12
11
  collect(type: FIELD_BUSINESS_TYPE, fieldItem: FieldItem): void;
13
12
  getField(type: FIELD_BUSINESS_TYPE): FieldItem | undefined;
14
- getFieldInstanceByType(type: FIELD_BUSINESS_TYPE): import("@formily/core").GeneralField | null;
13
+ getFieldInstanceByType(formModel: Form, type: FIELD_BUSINESS_TYPE): import("@formily/core").GeneralField | null;
15
14
  private getType;
16
15
  private getValueByField;
17
- getValueByType(type: FIELD_BUSINESS_TYPE): unknown;
18
- setValueByType(type: FIELD_BUSINESS_TYPE, value: unknown): void;
19
- registerChangeBusiness(type: FIELD_BUSINESS_TYPE, handler: () => void): this;
20
- registerBlurBusiness(type: FIELD_BUSINESS_TYPE, handler: () => void): this;
16
+ getValueByType(formModel: Form, type: FIELD_BUSINESS_TYPE): unknown;
17
+ setValueByType(formModel: Form, type: FIELD_BUSINESS_TYPE, value: unknown): void;
18
+ registerChangeBusiness(type: FIELD_BUSINESS_TYPE, handler: (formModel: Form) => void): this;
21
19
  private changeHandlerMap;
22
- private blurHandlerMap;
23
- trigger(fieldName: string, triggerType?: 'change' | 'blur'): Map<FIELD_BUSINESS_TYPE, number> | undefined;
20
+ trigger(formModel: Form, fieldName: string, triggerType?: 'change' | 'blur'): Map<FIELD_BUSINESS_TYPE, number> | undefined;
24
21
  }
25
22
  export declare function useBusinessBinding(): {
26
- create: (formModel: Form, formatter?: FormBusinessFormatter) => BusinessCollector;
23
+ create: (formatter?: FormBusinessFormatter) => BusinessCollector;
27
24
  };