cnhis-design-vue 3.1.42-beta.4 → 3.1.42-beta.40

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 (222) hide show
  1. package/README.md +87 -87
  2. package/es/components/annotation-edit/src/AnnotationEdit.js +1 -1
  3. package/es/components/base-search/index.d.ts +2 -2
  4. package/es/components/base-search/src/index.vue.d.ts +2 -2
  5. package/es/components/base-search/src/index.vue.js +1 -1
  6. package/es/components/base-search/style/index.css +1 -1
  7. package/es/components/big-table/index.d.ts +3 -4
  8. package/es/components/big-table/src/BigTable.vue.d.ts +3 -4
  9. package/es/components/big-table/src/BigTable.vue2.js +1 -1
  10. package/es/components/big-table/style/index.css +1 -1
  11. package/es/components/bpmn-workflow/index.d.ts +12 -0
  12. package/es/components/bpmn-workflow/src/BpmnWorkflow.vue.d.ts +12 -0
  13. package/es/components/bpmn-workflow/src/BpmnWorkflow.vue.js +1 -1
  14. package/es/components/button-print/index.d.ts +4 -4
  15. package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -4
  16. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  17. package/es/components/button-print/src/components/EditFormat.vue.d.ts +4 -4
  18. package/es/components/button-print/src/components/IdentityVerification.vue.d.ts +4 -4
  19. package/es/components/button-print/src/utils/print.js +1 -1
  20. package/es/components/classification/index.d.ts +1 -1
  21. package/es/components/classification/src/index.vue.d.ts +2 -2
  22. package/es/components/classification/style/index.css +1 -1
  23. package/es/components/config-provider/src/ConfigProvider.js +1 -1
  24. package/es/components/config-provider/src/interface.d.ts +4 -4
  25. package/es/components/date-picker/index.d.ts +4 -0
  26. package/es/components/date-picker/src/DatePicker.vue.d.ts +4 -0
  27. package/es/components/date-picker/src/DatePicker.vue.js +1 -1
  28. package/es/components/fabric-chart/index.d.ts +2 -2
  29. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +2 -2
  30. package/es/components/fabric-chart/src/hooks/useBirthProcess.d.ts +1 -0
  31. package/es/components/fabric-chart/src/hooks/useBirthProcess.js +1 -1
  32. package/es/components/fabric-chart/src/hooks/useBirthProcessChart.js +1 -1
  33. package/es/components/fabric-chart/src/hooks/useCenter.js +1 -1
  34. package/es/components/fabric-chart/src/hooks/useLeft.js +1 -1
  35. package/es/components/fabric-chart/src/hooks/useScaleColumn.d.ts +16 -0
  36. package/es/components/fabric-chart/src/hooks/useScaleColumn.js +1 -0
  37. package/es/components/field-set/index.d.ts +26 -81
  38. package/es/components/field-set/src/FieldSet.vue.d.ts +28 -32
  39. package/es/components/field-set/src/FieldSet.vue.js +1 -1
  40. package/es/components/field-set/style/index.css +1 -1
  41. package/es/components/form-config/index.d.ts +39 -39
  42. package/es/components/form-config/src/FormConfig.vue.d.ts +39 -39
  43. package/es/components/form-config/src/FormConfig.vue.js +1 -1
  44. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +15 -14
  45. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +20 -21
  46. package/es/components/form-config/src/components/FormConfigEdit.vue.js +1 -1
  47. package/es/components/form-config/src/components/renderer/DefaultNode.vue.js +1 -1
  48. package/es/components/form-config/src/constants/index.d.ts +12 -1
  49. package/es/components/form-config/src/constants/index.js +1 -1
  50. package/es/components/form-config/src/hooks/useConfigurationField.js +1 -1
  51. package/es/components/form-config/src/types/index.d.ts +1 -0
  52. package/es/components/form-render/index.d.ts +15 -14
  53. package/es/components/form-render/index.js +1 -1
  54. package/es/components/form-render/src/FormRender.vue.d.ts +15 -14
  55. package/es/components/form-render/src/FormRender.vue.js +1 -1
  56. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +15 -14
  57. package/es/components/form-render/src/components/renderer/combination.js +1 -1
  58. package/es/components/form-render/src/components/renderer/complex.d.ts +1 -1
  59. package/es/components/form-render/src/components/renderer/jsonCombination/index.js +1 -1
  60. package/es/components/form-render/src/components/renderer/levelSearchCascader.d.ts +18 -0
  61. package/es/components/form-render/src/components/renderer/levelSearchCascader.js +1 -1
  62. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +1 -1
  63. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +1 -1
  64. package/es/components/form-render/src/components/renderer/radio&checkbox.d.ts +38 -2
  65. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  66. package/es/components/form-render/src/components/renderer/remoteSearch.d.ts +18 -0
  67. package/es/components/form-render/src/components/renderer/remoteSearch.js +1 -1
  68. package/es/components/form-render/src/components/renderer/searchCascade.d.ts +18 -0
  69. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  70. package/es/components/form-render/src/components/renderer/select.d.ts +32 -5
  71. package/es/components/form-render/src/components/renderer/select.js +1 -1
  72. package/es/components/form-render/src/hooks/index.d.ts +1 -1
  73. package/es/components/form-render/src/hooks/index.js +1 -1
  74. package/es/components/form-render/src/hooks/useFormAsyncQueue.d.ts +16 -0
  75. package/es/components/form-render/src/hooks/useFormAsyncQueue.js +1 -0
  76. package/es/components/form-render/src/hooks/useFormContext.js +1 -1
  77. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +13 -8
  78. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  79. package/es/components/form-render/src/types/fieldItem.d.ts +3 -4
  80. package/es/components/form-render/src/types/index.d.ts +2 -1
  81. package/es/components/iho-table/index.d.ts +14 -5
  82. package/es/components/iho-table/src/IhoTable.vue.d.ts +14 -5
  83. package/es/components/iho-table/src/IhoTable.vue.js +1 -1
  84. package/es/components/iho-table/src/constants/index.d.ts +2 -2
  85. package/es/components/iho-table/src/constants/index.js +1 -1
  86. package/es/components/iho-table/src/hooks/tapHooks/index.d.ts +4 -4
  87. package/es/components/iho-table/src/hooks/tapHooks/index.js +1 -1
  88. package/es/components/iho-table/src/hooks/tapHooks/useConfigHooks.d.ts +22 -21
  89. package/es/components/iho-table/src/hooks/tapHooks/useConfigHooks.js +1 -1
  90. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +1 -1
  91. package/es/components/iho-table/src/plugins/defaultConfigPlugin/index.js +1 -1
  92. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +1 -1
  93. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.js +1 -1
  94. package/es/components/iho-table/src/plugins/filterRenderPlugin/index.js +1 -1
  95. package/es/components/iho-table/src/plugins/highLightSetPlugin.d.ts +1 -0
  96. package/es/components/iho-table/src/plugins/highLightSetPlugin.js +1 -0
  97. package/es/components/iho-table/src/plugins/index.js +1 -1
  98. package/es/components/iho-table/src/plugins/keyboardEventPlugin/index.js +1 -1
  99. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +1 -1
  100. package/es/components/iho-table/src/plugins/maxCheckSizePlugin.d.ts +1 -0
  101. package/es/components/iho-table/src/plugins/maxCheckSizePlugin.js +1 -0
  102. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +4 -0
  103. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  104. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  105. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.d.ts +1 -1
  106. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js +1 -1
  107. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  108. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +1 -1
  109. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.js +1 -1
  110. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/defaultRendererPlugin.js +1 -1
  111. package/es/components/iho-table/src/plugins/rowDragPlugin/index.d.ts +1 -0
  112. package/es/components/iho-table/src/plugins/rowDragPlugin/index.js +1 -0
  113. package/es/components/iho-table/src/plugins/{rendererPlugins/widgets/variableHeightRendererPlugin.d.ts → varialbleHeightPlugin/index.d.ts} +1 -1
  114. package/es/components/iho-table/src/plugins/varialbleHeightPlugin/index.js +1 -0
  115. package/es/components/iho-table/src/types/index.d.ts +10 -5
  116. package/es/components/iho-table/src/types/pluginType.d.ts +6 -3
  117. package/es/components/iho-table/src/utils/index.d.ts +3 -0
  118. package/es/components/iho-table/src/utils/index.js +1 -1
  119. package/es/components/iho-table/style/iconfont.ttf +0 -0
  120. package/es/components/iho-table/style/index.css +1 -1
  121. package/es/components/index.css +1 -1
  122. package/es/components/index.js +1 -1
  123. package/es/components/info-header/index.d.ts +34 -32
  124. package/es/components/info-header/src/InfoHeader.vue.d.ts +34 -32
  125. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +3 -3
  126. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +3 -3
  127. package/es/components/info-header/src/components/infoDescription/HiddenContent.vue.d.ts +2 -2
  128. package/es/components/info-header/src/components/infoDescription/HiddenContent.vue.js +1 -1
  129. package/es/components/info-header/src/components/infoDescription/InfoEllipsis.vue.d.ts +1 -1
  130. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +18 -17
  131. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +15 -14
  132. package/es/components/info-header/style/index.css +1 -1
  133. package/es/components/keyboard/index.d.ts +1 -1
  134. package/es/components/keyboard/src/Keyboard.vue.d.ts +1 -1
  135. package/es/components/keyboard/src/Keyboard.vue.js +1 -1
  136. package/es/components/keyboard/src/constants/index.js +1 -1
  137. package/es/components/keyboard/style/index.css +1 -1
  138. package/es/components/map/index.d.ts +2 -14
  139. package/es/components/map/src/Map.vue.d.ts +1 -14
  140. package/es/components/map/src/types/index.d.ts +19 -0
  141. package/es/components/map/src/types/index.js +1 -0
  142. package/es/components/recommend-search/index.d.ts +13 -128
  143. package/es/components/recommend-search/src/RecommendSearch.vue.d.ts +15 -130
  144. package/es/components/recommend-search/src/RecommendSearch.vue.js +1 -1
  145. package/es/components/recommend-search/src/components/BaseSearch.d.ts +84 -0
  146. package/es/components/recommend-search/src/components/BaseSearch.js +1 -0
  147. package/es/components/recommend-search/src/components/RecommendInput.vue.d.ts +3 -63
  148. package/es/components/recommend-search/src/components/RecommendInput.vue.js +1 -1
  149. package/es/components/recommend-search/src/components/RecommendMenu.vue.d.ts +1 -3
  150. package/es/components/recommend-search/src/components/RecommendMenu.vue.js +1 -1
  151. package/es/components/recommend-search/src/components/RecommendSelect.vue.d.ts +4 -62
  152. package/es/components/recommend-search/src/components/RecommendSelect.vue.js +1 -1
  153. package/es/components/recommend-search/src/constant/index.d.ts +3 -0
  154. package/es/components/recommend-search/src/constant/index.js +1 -1
  155. package/es/components/scale-view/index.d.ts +29 -94
  156. package/es/components/scale-view/src/ScaleView.vue.d.ts +29 -94
  157. package/es/components/scale-view/src/ScaleView.vue.js +1 -1
  158. package/es/components/scale-view/src/components/formitem/standard-modal.d.ts +4 -4
  159. package/es/components/scale-view/src/hooks/scaleview-computed.d.ts +1 -1
  160. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  161. package/es/components/scale-view/src/hooks/use-component.d.ts +73 -3
  162. package/es/components/scale-view/style/index.css +1 -1
  163. package/es/components/select-label/src/LabelFormContent.vue.js +1 -1
  164. package/es/components/select-label/style/index.css +1 -1
  165. package/es/components/select-person/index.d.ts +1 -1
  166. package/es/components/select-person/src/SelectPerson.vue.d.ts +1 -1
  167. package/es/components/shortcut-setter/index.d.ts +16 -16
  168. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +16 -16
  169. package/es/components/steps-wheel/src/StepsWheel.vue.js +1 -1
  170. package/es/components/steps-wheel/src/constants/index.js +1 -1
  171. package/es/components/steps-wheel/style/index.css +1 -1
  172. package/es/components/table-filter/index.d.ts +0 -1
  173. package/es/components/table-filter/index.js +1 -1
  174. package/es/components/table-filter/src/components/render-widget/components/CheckboxGroup.vue.d.ts +1 -1
  175. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.d.ts +1 -1
  176. package/es/components/table-filter/src/components/render-widget/widgetCfgMaps.js +1 -1
  177. package/es/components/table-filter/src/hooks/useMixins.js +1 -1
  178. package/es/components/table-filter/src/tool/baseOptions.d.ts +0 -10
  179. package/es/components/table-filter/src/tool/baseOptions.js +1 -1
  180. package/es/components/table-filter/src/tool/generateDefOptions.d.ts +0 -7
  181. package/es/components/table-filter/src/tool/generateDefOptions.js +1 -1
  182. package/es/components/table-filter/src/types/index.d.ts +11 -76
  183. package/es/components/time-picker/src/TimePicker.vue.js +1 -1
  184. package/es/components/vod-chunk-upload/index.d.ts +73 -3
  185. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.d.ts +73 -3
  186. package/es/components/vod-chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue.js +1 -1
  187. package/es/env.d.ts +24 -24
  188. package/es/shared/{mixins → hooks}/index.d.ts +1 -0
  189. package/es/shared/{mixins → hooks}/index.js +1 -1
  190. package/es/{components/form-render/src → shared}/hooks/useAsyncQueue.d.ts +0 -14
  191. package/es/shared/hooks/useAsyncQueue.js +1 -0
  192. package/es/shared/{mixins → hooks}/useDateTime.d.ts +2 -2
  193. package/es/shared/hooks/useDateTime.js +1 -0
  194. package/es/shared/utils/index.d.ts +3 -3
  195. package/es/shared/utils/index.js +1 -1
  196. package/package.json +2 -2
  197. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  198. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  199. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  200. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  201. package/es/components/fabric-chart/src/utils/index.d.ts +0 -6823
  202. package/es/components/form-render/src/hooks/useAsyncQueue.js +0 -1
  203. package/es/components/iho-table/src/plugins/rendererPlugins/widgets/variableHeightRendererPlugin.js +0 -1
  204. package/es/components/recommend-search/src/components/BaseSearch.vue.d.ts +0 -143
  205. package/es/components/recommend-search/src/components/BaseSearch.vue.js +0 -1
  206. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +0 -115
  207. package/es/components/scale-view/src/hooks/scaleview-props.js +0 -1
  208. package/es/components/table-filter/src/hooks/export.d.ts +0 -1
  209. package/es/components/table-filter/src/hooks/export.js +0 -1
  210. package/es/components/table-filter/src/tool/getWidgetType.d.ts +0 -1
  211. package/es/components/table-filter/src/tool/getWidgetType.js +0 -1
  212. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  213. package/es/shared/mixins/useDateTime.js +0 -1
  214. package/es/shared/utils/colorLog.d.ts +0 -31
  215. package/es/shared/utils/colorLog.js +0 -1
  216. package/es/shared/utils/tapable/index.d.ts +0 -139
  217. /package/es/components/base-search/style/{iconfont.ttf → base-search-iconfont.ttf} +0 -0
  218. /package/es/components/classification/style/{iconfont.ttf → classification-iconfont.ttf} +0 -0
  219. /package/es/components/info-header/style/{iconfont.ttf → info-header-font.ttf} +0 -0
  220. /package/es/components/select-label/style/{iconfont.ttf → select-label-iconfont.ttf} +0 -0
  221. /package/es/shared/{mixins → hooks}/useTheme.d.ts +0 -0
  222. /package/es/shared/{mixins → hooks}/useTheme.js +0 -0
@@ -266,7 +266,8 @@ declare const _default: import("vue").DefineComponent<{}, {
266
266
  onScroll?: ((...args: any[]) => any) | undefined;
267
267
  onAnnotationChange?: ((...args: any[]) => any) | undefined;
268
268
  }>>;
269
- emit: (event: "scroll" | "formChange" | "annotationChange", ...args: any[]) => void;
269
+ emit: (event: "formChange" | "scroll" | "annotationChange", ...args: any[]) => void;
270
+ cssVars: import("vue").ComputedRef<import("vue").CSSProperties>;
270
271
  nuiThemeOverrides: import("naive-ui").GlobalThemeOverrides;
271
272
  formRenderRef: import("vue").Ref<HTMLElement | undefined>;
272
273
  formHeight: import("vue").ComputedRef<string>;
@@ -422,32 +423,32 @@ declare const _default: import("vue").DefineComponent<{}, {
422
423
  data: any;
423
424
  loading: boolean;
424
425
  required: boolean;
425
- hidden: boolean;
426
- visible: boolean;
427
- content: any;
428
- reset: (options?: import("../../../../es/components/form-render").IFieldResetOptions | undefined) => Promise<void>;
429
- active: boolean;
430
- disabled: boolean;
431
- display: import("../../../../es/components/form-render").FieldDisplayTypes;
432
426
  value: string;
433
427
  readonly index: string | number;
428
+ disabled: boolean;
434
429
  onFocus: (...args: any[]) => Promise<void>;
435
430
  onBlur: (...args: any[]) => Promise<void>;
436
431
  onInput: (...args: any[]) => Promise<void>;
432
+ reset: (options?: import("../../../../es/components/form-render").IFieldResetOptions | undefined) => Promise<void>;
433
+ title: string;
434
+ editable: boolean;
435
+ visible: boolean;
437
436
  submit: <T>(onSubmit?: ((values: any) => void | Promise<T>) | undefined) => Promise<T>;
438
437
  validator: import("../../../../es/components/form-render").FieldValidator;
439
438
  pattern: import("../../../../es/components/form-render").FieldPatternTypes;
440
- title: string;
441
439
  form: import("../../../../es/components/form-render").Form<any>;
440
+ content: any;
442
441
  componentProps: Record<string, any>;
443
442
  decoratorProps: Record<string, any>;
443
+ display: import("../../../../es/components/form-render").FieldDisplayTypes;
444
444
  description: string;
445
445
  readOnly: boolean;
446
- editable: boolean;
446
+ hidden: boolean;
447
447
  component: import("../../../../es/components/form-render").FieldComponent<any, any>;
448
448
  decorator: import("../../../../es/components/form-render").FieldDecorator<any, any>;
449
449
  validating: boolean;
450
450
  submitting: boolean;
451
+ active: boolean;
451
452
  visited: boolean;
452
453
  selfModified: boolean;
453
454
  modified: boolean;
@@ -534,7 +535,7 @@ declare const _default: import("vue").DefineComponent<{}, {
534
535
  };
535
536
  readonly disabled: BooleanConstructor;
536
537
  readonly displayDirective: {
537
- readonly type: import("vue").PropType<"show" | "if" | "show:lazy">;
538
+ readonly type: import("vue").PropType<"if" | "show" | "show:lazy">;
538
539
  readonly default: "if";
539
540
  };
540
541
  readonly closable: {
@@ -559,7 +560,7 @@ declare const _default: import("vue").DefineComponent<{}, {
559
560
  };
560
561
  readonly disabled: BooleanConstructor;
561
562
  readonly displayDirective: {
562
- readonly type: import("vue").PropType<"show" | "if" | "show:lazy">;
563
+ readonly type: import("vue").PropType<"if" | "show" | "show:lazy">;
563
564
  readonly default: "if";
564
565
  };
565
566
  readonly closable: {
@@ -573,10 +574,10 @@ declare const _default: import("vue").DefineComponent<{}, {
573
574
  }>>, {
574
575
  readonly disabled: boolean;
575
576
  readonly closable: boolean | undefined;
576
- readonly displayDirective: "show" | "if" | "show:lazy";
577
+ readonly displayDirective: "if" | "show" | "show:lazy";
577
578
  }>;
578
579
  NTabs: any;
579
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("scroll" | "formChange" | "annotationChange")[], "scroll" | "formChange" | "annotationChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
580
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("formChange" | "scroll" | "annotationChange")[], "scroll" | "formChange" | "annotationChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
580
581
  fieldList: {
581
582
  type: import("vue").PropType<import("../../../../es/components/form-render").FieldItem[]>;
582
583
  };
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,watch as r,inject as i,createVNode as n}from"vue";import{isObjectField as a}from"@formily/core";import{RecursionField as m,connect as s}from"@formily/vue";import{AddCircleOutline as l,RemoveCircle as u}from"@vicons/ionicons5";import{isNumber as p,isArray as c,range as d}from"lodash-es";import{NButton as f,NIcon as v}from"naive-ui";import"../../../index.js";import{InjectionBusinessCollector as y}from"../../constants/index.js";import"../../utils/index.js";import{useFormField as x}from"../../hooks/useFormField.js";import{useFieldListAdaptor as h}from"../../hooks/useFieldListAdaptor.js";import{createObjSchema as b}from"../../utils/schema.js";const _=s(e({name:"FormCombination",props:{title:{type:String,default:""},value:{type:Array},maxGroupNum:{type:Number},disabled:{type:Boolean},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e){const{field:s,fieldKey:_}=x(),j=o(1),C=t((()=>p(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));function g(){j.value++}r((()=>e.value),(e=>{c(e)&&(j.value=Math.min(Math.max(e.length,1),C.value))}),{immediate:!0});const k=i(y),{schemaAdaptor:F}=h(k);return()=>n("section",{class:"form-render__combination"},[n("header",{class:"form-render__combinationHeader"},[n("div",{class:"form-render__combinationHeaderText"},[e.title]),n(f,{onClick:g,type:"info",text:!0,disabled:j.value>=C.value||e.disabled},{icon:()=>n(v,{component:l},null),default:()=>"新增"})]),d(j.value).map(((o,t)=>n("section",{class:"form-render__combinationContent"},[n(m,{schema:b(F(e.getProperties())),name:t},null),n(f,{text:!0,type:"error",class:"form-render__combinationClose",onClick:()=>async function(e){if(j.value>1)j.value--,await s.value.remove(e);else{const o=s.value.query(`${_.value}.${e}`).take();if(!o||!a(o))return;await o.reset()}}(t)},{icon:()=>n(v,{component:u},null)})])))])}}));export{_ as COMBINATION};
1
+ import{defineComponent as e,ref as o,computed as t,watch as r,inject as i,createVNode as n}from"vue";import{isObjectField as a}from"@formily/core";import{RecursionField as m,connect as l}from"@formily/vue";import{AddCircleOutline as s,RemoveCircle as u}from"@vicons/ionicons5";import{isNumber as c,isArray as p,range as d}from"lodash-es";import{NButton as f,NIcon as v}from"naive-ui";import"../../../index.js";import{InjectionBusinessCollector as y}from"../../constants/index.js";import"../../utils/index.js";import{useFormField as x}from"../../hooks/useFormField.js";import{useFieldListAdaptor as h}from"../../hooks/useFieldListAdaptor.js";import{createObjSchema as b}from"../../utils/schema.js";const _=l(e({name:"FormCombination",props:{title:{type:String,default:""},value:{type:Array},maxGroupNum:{type:Number},disabled:{type:Boolean},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e){const{field:l,fieldKey:_}=x(),j=o(1),C=t((()=>c(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));function g(){j.value++}r((()=>e.value),(e=>{p(e)&&(j.value=Math.min(Math.max(e.length,1),C.value))}),{immediate:!0});const k=i(y),{schemaAdaptor:F}=h(k);return()=>n("section",{class:"form-render__combination"},[n("header",{class:"form-render__combinationHeader"},[n("div",{class:"form-render__combinationHeaderText"},[e.title]),n(f,{onClick:g,text:!0,style:{"--n-text-color":"var(--c-primary-color)"},disabled:j.value>=C.value||e.disabled},{icon:()=>n(v,{component:s},null),default:()=>"新增"})]),d(j.value).map(((o,t)=>n("section",{class:"form-render__combinationContent"},[n(m,{schema:b(F(e.getProperties())),name:t},null),n(f,{text:!0,type:"error",class:"form-render__combinationClose",onClick:()=>async function(e){if(j.value>1)j.value--,await l.value.remove(e);else{const o=l.value.query(`${_.value}.${e}`).take();if(!o||!a(o))return;await o.reset()}}(t)},{icon:()=>n(v,{component:u},null)})])))])}}));export{_ as COMBINATION};
@@ -28,7 +28,7 @@ export declare const COMPLEX: import("vue").DefineComponent<{
28
28
  default: () => {};
29
29
  };
30
30
  }>>, {
31
- display: "flex" | "grid";
32
31
  span: number;
32
+ display: "flex" | "grid";
33
33
  wrapperStyle: CSSProperties;
34
34
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,watch as n,onMounted as r,createVNode as i}from"vue";import{isField as l}from"@formily/core";import{Path as a}from"@formily/path";import{AddCircleOutline as u,RemoveCircle as s}from"@vicons/ionicons5";import{isNumber as m,range as c,isArray as p,isEqual as f}from"lodash-es";import{useDeepValidate as v}from"./hooks/useDeepValidate.js";import{formRenderLog as d,mergeDeepProperties as h}from"../../../utils/index.js";import{connect as y,mapProps as g}from"@formily/vue";import{useDebounceFn as b,isObject as N}from"@vueuse/core";import{NButton as _,NIcon as x}from"naive-ui";import C from"../../../FormRender.vue.js";import{assignUpdateValue as j}from"../../../utils/schema.js";const F=y(e({name:"FormJsonCombination",props:{title:{type:String,default:""},value:{type:[String,Array]},maxGroupNum:{type:Number},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e,{emit:y}){d("当前COMBINATION控件为json模式,推荐使用非json模式,FieldItem.jsonCombination=false");const g=b((function(){y("update:value",JSON.stringify(j.value))}),300),j=o([]),F=t((()=>j.value.length));function I(o,t=!1){p(o)&&(o.length||o.push({}),o=JSON.stringify(o));const n=function(e){try{if(!e)return null;const o=JSON.parse(e);return Array.isArray(o)?o:null}catch(e){return null}}(o);var r;(r=n)&&!f(r,j.value)&&(n.splice(A.value),n.forEach((function(o,n){if(!N(o))return;j.value[n]=o,t&&h(o,e.getProperties())})),j.value.splice(n.length),j.value.forEach(J))}n((()=>e.value),(e=>I(e))),r((()=>{I(e.value||"[{}]",!0),g()}));const S=o([]);function J(e,o){var t;null==(t=S.value[o])||t.setFieldState("*",(o=>{l(o)&&(o.value=a.getIn(e,o.path))}))}function O(){j.value.push(h({},e.getProperties())),g()}v().bindDeepValidate(S);const A=t((()=>m(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));n(A,(e=>{F.value<=e||(j.value.splice(e),g(),S.value.splice(e))}),{immediate:!0});const G=C;return()=>i("section",{class:"form-render__combination"},[i("header",{class:"form-render__combinationHeader"},[i("div",{class:"form-render__combinationHeaderText"},[e.title]),i(_,{onClick:O,type:"info",text:!0,disabled:F.value>=A.value},{icon:()=>i(x,{component:u},null),default:()=>"新增"})]),c(F.value).map(((o,t)=>i("section",{class:"form-render__combinationContentJson"},[i(G,{ref:e=>function(e,o){S.value[e]=o,J(j.value[e]||{},e)}(t,e),fieldList:e.getProperties(),onFormChange:e=>function(e,{fieldKey:o,value:t}){!j.value[e]&&(j.value[e]={}),a.setIn(j.value[e],o,t),g()}(t,e)},null),i(_,{text:!0,class:"form-render__combinationClose",type:"error",onClick:()=>function(e){j.value.length>1?(j.value.splice(e,1),S.value.splice(e,1)):j.value.splice(e,1,{}),g()}(t)},{icon:()=>i(x,{component:s},null)})])))])}}),g(j));export{F as JSON_COMBINATION};
1
+ import{defineComponent as e,ref as o,computed as t,watch as r,onMounted as n,createVNode as i}from"vue";import{isField as l}from"@formily/core";import{Path as a}from"@formily/path";import{AddCircleOutline as u,RemoveCircle as s}from"@vicons/ionicons5";import{isNumber as m,range as c,isArray as p,isEqual as f}from"lodash-es";import{useDeepValidate as v}from"./hooks/useDeepValidate.js";import{formRenderLog as d,mergeDeepProperties as h}from"../../../utils/index.js";import{connect as y,mapProps as g}from"@formily/vue";import{useDebounceFn as b,isObject as x}from"@vueuse/core";import{NButton as N,NIcon as _}from"naive-ui";import C from"../../../FormRender.vue.js";import{assignUpdateValue as j}from"../../../utils/schema.js";const F=y(e({name:"FormJsonCombination",props:{title:{type:String,default:""},value:{type:[String,Array]},maxGroupNum:{type:Number},getProperties:{type:Function,default:()=>[]},onInput:{},onBlur:{},onChange:{}},emits:["update:value"],setup(e,{emit:y}){d("当前COMBINATION控件为json模式,推荐使用非json模式,FieldItem.jsonCombination=false");const g=b((function(){y("update:value",JSON.stringify(j.value))}),300),j=o([]),F=t((()=>j.value.length));function I(o,t=!1){p(o)&&(o.length||o.push({}),o=JSON.stringify(o));const r=function(e){try{if(!e)return null;const o=JSON.parse(e);return Array.isArray(o)?o:null}catch(e){return null}}(o);var n;(n=r)&&!f(n,j.value)&&(r.splice(A.value),r.forEach((function(o,r){if(!x(o))return;j.value[r]=o,t&&h(o,e.getProperties())})),j.value.splice(r.length),j.value.forEach(J))}r((()=>e.value),(e=>I(e))),n((()=>{I(e.value||"[{}]",!0),g()}));const S=o([]);function J(e,o){var t;null==(t=S.value[o])||t.setFieldState("*",(o=>{l(o)&&(o.value=a.getIn(e,o.path))}))}function O(){j.value.push(h({},e.getProperties())),g()}v().bindDeepValidate(S);const A=t((()=>m(e.maxGroupNum)?e.maxGroupNum<1?0:~~e.maxGroupNum:1/0));r(A,(e=>{F.value<=e||(j.value.splice(e),g(),S.value.splice(e))}),{immediate:!0});const G=C;return()=>i("section",{class:"form-render__combination"},[i("header",{class:"form-render__combinationHeader"},[i("div",{class:"form-render__combinationHeaderText"},[e.title]),i(N,{onClick:O,style:{"--n-text-color":"var(--c-primary-color)"},text:!0,disabled:F.value>=A.value},{icon:()=>i(_,{component:u},null),default:()=>"新增"})]),c(F.value).map(((o,t)=>i("section",{class:"form-render__combinationContentJson"},[i(G,{ref:e=>function(e,o){S.value[e]=o,J(j.value[e]||{},e)}(t,e),fieldList:e.getProperties(),onFormChange:e=>function(e,{fieldKey:o,value:t}){!j.value[e]&&(j.value[e]={}),a.setIn(j.value[e],o,t),g()}(t,e)},null),i(N,{text:!0,class:"form-render__combinationClose",type:"error",onClick:()=>function(e){j.value.length>1?(j.value.splice(e,1),S.value.splice(e,1)):j.value.splice(e,1,{}),g()}(t)},{icon:()=>i(_,{component:s},null)})])))])}}),g(j));export{F as JSON_COMBINATION};
@@ -6,6 +6,14 @@ export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
6
6
  type: PropType<AnyObject[]>;
7
7
  default: () => never[];
8
8
  };
9
+ labelField: {
10
+ type: StringConstructor;
11
+ default: string;
12
+ };
13
+ valueField: {
14
+ type: StringConstructor;
15
+ default: string;
16
+ };
9
17
  autograph: {
10
18
  type: StringConstructor;
11
19
  required: true;
@@ -46,6 +54,14 @@ export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
46
54
  type: PropType<AnyObject[]>;
47
55
  default: () => never[];
48
56
  };
57
+ labelField: {
58
+ type: StringConstructor;
59
+ default: string;
60
+ };
61
+ valueField: {
62
+ type: StringConstructor;
63
+ default: string;
64
+ };
49
65
  autograph: {
50
66
  type: StringConstructor;
51
67
  required: true;
@@ -85,6 +101,8 @@ export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
85
101
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
86
102
  }, {
87
103
  options: AnyObject[];
104
+ labelField: string;
105
+ valueField: string;
88
106
  lazyRequest: boolean;
89
107
  requestCache: boolean;
90
108
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as r,computed as o,inject as t,watch as a,createVNode as n}from"vue";import{useVModel as u}from"@vueuse/core";import{isEqual as i,isString as l,isEmpty as s,isFunction as c,omit as d}from"lodash-es";import"../../../index.js";import{InjectionAsyncQueue as p}from"../../constants/index.js";import{useCommonInjection as m}from"../../hooks/useCommonInjection.js";import{formRenderLog as f}from"../../utils/index.js";import{connect as y,mapProps as v}from"@formily/vue";import h from"../../../../search-cascader/index.js";import k from"../../../../../shared/components/no-data/NoData.vue.js";import{createVisitedSetter as j,assignUpdateValue as _}from"../../utils/schema.js";import{useFormField as w}from"../../hooks/useFormField.js";import{useFormRequest as b}from"../../hooks/useFormRequest.js";const g=y(e({name:"FormSearchCascade",props:{options:{type:Array,default:()=>[]},autograph:{type:String,required:!0},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},wordbook:{type:Object,required:!0},onChange:{},value:{type:[String,Array]}},emits:["update:value"],setup(e,{emit:y}){const v=u(e,"value",y),_=r(!1),g=r([]),{field:K,fieldKey:O}=w(),q=o((()=>{var r,o,t;return null!=(t=null==(o=null==(r=e.wordbook)?void 0:r.render_key)?void 0:o[0])?t:"text"})),F=o((()=>{var r,o;return null!=(o=null==(r=e.wordbook)?void 0:r.value_key)?o:"value"})),S=o((()=>{var r;return(null==(r=e.wordbook)?void 0:r.level_num)||1/0})),x=t(p),{getSearchRequestInfo:C}=b();async function L(r,o){try{if(r&&!r.__keyword&&r.isLeaf)return t(r);if(null==r?void 0:r.__keyword){if(!l(r.id_link))return Promise.reject();const o=r.id_link.split("_").filter((e=>e)),t=await async function(r){if(!C().primaryKeyUrl)return[];try{return await x.addAsync(o(e.wordbook,e.autograph,r,O.value))}catch(e){l(e)&&f(e)}function o(r,o,t,a){const n=C();return{key:a,params:{autograph:o,tableId:r.id,primaryKeyValue:t.join(","),page:1},...n,url:n.primaryKeyUrl,cache:e.requestCache}}}(o);if(!t)return Promise.reject();const{lastOption:a,options:n}=function(e,r){let o=e[0];return{options:r.reduce(((r,a,n)=>{const u=t(e,a);return 0===n?(o=u,[u]):(Object.assign(u,{parent:o,isLeaf:n+1>=S.value}),o.children=[u],o=u,r)}),[]),lastOption:o};function t(e,r){return e.find((e=>e[F.value]===r))}}(t,o);return await L(a),s(a.children)?(v.value=function(e,r){return r.map((r=>e.find((e=>e[F.value]===r))))}(t,o),_.value=!1,Promise.reject()):(g.value=n,a)}{const n=await x.addAsync(function(r,t,a,n,u){const i={autograph:()=>t,wordbookId:"id",wordbookType:"type",fieldKeys:()=>r.search_key?JSON.stringify(r.search_key):void 0,conObj:()=>JSON.stringify(function(e,r,o){return r?e.conObj||[]:o?[{con:"EQ",is_compare_field:!1,field_key:e.level_key,value:o[F.value]}]:e.conObjFirstLevel||[]}(r,o,n)),primaryKey:"primary_key",levelKey:"level_key",keyword:()=>o,page:()=>1},s=Object.entries(i).reduce(((e,[o,t])=>(e[o]=l(t)?r[t]:c(t)?t():void 0,e)),{});return{...C(),params:s,key:u,cache:e.requestCache}}(e.wordbook,e.autograph,K.value,r,O.value));if(r){if(!n.length)return t(r);r.children=n.map((e=>function(e,r,o){return{...e,parent:r,isLeaf:a(r)+1>=o}}(e,r,S.value)))}else g.value=n.map((e=>function(e,r){return e.__keyword=!!r,e.isLeaf=!!r,e}(e,o)))}}catch(e){l(e)&&f(e)}function t(e){return v.value=function(e){const r=[];let o=e;for(;o;)r.unshift(d(o,["parent","isLeaf","__keyword","children"])),o=o.parent;return r}(e),_.value=!1,Promise.reject()}function a(e){let r=1,o=e.parent;for(;o;)r++,o=o.parent;return r}}a((()=>e.wordbook),((r,o)=>{i(r,o)||(g.value=[],r&&(v.value||!e.lazyRequest)&&L())}),{immediate:!0});const{injectValueValidate:V,injectValueWatchFromEmpty:A,injectValueBindKey:I}=m();A(v,L),V(v);const P=I(v);return()=>n(h,{value:v.value,"onUpdate:value":e=>v.value=e,show:_.value,"onUpdate:show":e=>_.value=e,options:g.value,key:P.value,labelKey:q.value,valueKey:F.value,search:L,onFocus:j(K)},{empty:()=>n(k,null,null)})}}),v({dataSource:"options"},_));export{g as LEVEL_SEARCH_CASCADER};
1
+ import{defineComponent as e,ref as r,computed as t,inject as o,watch as a,createVNode as n}from"vue";import{useVModel as u}from"@vueuse/core";import{isEqual as i,isString as l,isEmpty as s,isFunction as c,omit as d}from"lodash-es";import"../../../index.js";import{InjectionAsyncQueue as p}from"../../constants/index.js";import{useCommonInjection as f}from"../../hooks/useCommonInjection.js";import{formRenderLog as m}from"../../utils/index.js";import{connect as y,mapProps as v}from"@formily/vue";import h from"../../../../search-cascader/index.js";import k from"../../../../../shared/components/no-data/NoData.vue.js";import{createVisitedSetter as j,assignUpdateValue as _}from"../../utils/schema.js";import{useFormField as w}from"../../hooks/useFormField.js";import{useFormRequest as b}from"../../hooks/useFormRequest.js";const g=y(e({name:"FormSearchCascade",props:{options:{type:Array,default:()=>[]},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},autograph:{type:String,required:!0},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},wordbook:{type:Object,required:!0},onChange:{},value:{type:[String,Array]}},emits:["update:value"],setup(e,{emit:y}){const v=u(e,"value",y),_=r(!1),g=r([]),{field:F,fieldKey:K}=w(),O=t((()=>{var r,t,o,a;return null!=(a=null!=(o=null==(t=null==(r=e.wordbook)?void 0:r.render_key)?void 0:t[0])?o:e.labelField)?a:"text"})),q=t((()=>{var r,t,o;return null!=(o=null!=(t=null==(r=e.wordbook)?void 0:r.value_key)?t:e.valueField)?o:"value"})),S=t((()=>{var r;return(null==(r=e.wordbook)?void 0:r.level_num)||1/0})),x=o(p),{getSearchRequestInfo:C}=b();async function L(r,t){try{if(r&&!r.__keyword&&r.isLeaf)return o(r);if(null==r?void 0:r.__keyword){if(!l(r.id_link))return Promise.reject();const t=r.id_link.split("_").filter((e=>e)),o=await async function(r){if(!C().primaryKeyUrl)return[];try{return await x.addAsync(t(e.wordbook,e.autograph,r,K.value))}catch(e){l(e)&&m(e)}function t(r,t,o,a){const n=C();return{key:a,params:{autograph:t,tableId:r.id,primaryKeyValue:o.join(","),page:1},...n,url:n.primaryKeyUrl,cache:e.requestCache}}}(t);if(!o)return Promise.reject();const{lastOption:a,options:n}=function(e,r){let t=e[0];return{options:r.reduce(((r,a,n)=>{const u=o(e,a);return 0===n?(t=u,[u]):(Object.assign(u,{parent:t,isLeaf:n+1>=S.value}),t.children=[u],t=u,r)}),[]),lastOption:t};function o(e,r){return e.find((e=>e[q.value]===r))}}(o,t);return await L(a),s(a.children)?(v.value=function(e,r){return r.map((r=>e.find((e=>e[q.value]===r))))}(o,t),_.value=!1,Promise.reject()):(g.value=n,a)}{const n=await x.addAsync(function(r,o,a,n,u){const i={autograph:()=>o,wordbookId:"id",wordbookType:"type",fieldKeys:()=>r.search_key?JSON.stringify(r.search_key):void 0,conObj:()=>JSON.stringify(function(e,r,t){return r?e.conObj||[]:t?[{con:"EQ",is_compare_field:!1,field_key:e.level_key,value:t[q.value]}]:e.conObjFirstLevel||[]}(r,t,n)),primaryKey:"primary_key",levelKey:"level_key",keyword:()=>t,page:()=>1},s=Object.entries(i).reduce(((e,[t,o])=>(e[t]=l(o)?r[o]:c(o)?o():void 0,e)),{});return{...C(),params:s,key:u,cache:e.requestCache}}(e.wordbook,e.autograph,F.value,r,K.value));if(r){if(!n.length)return o(r);r.children=n.map((e=>function(e,r,t){return{...e,parent:r,isLeaf:a(r)+1>=t}}(e,r,S.value)))}else g.value=n.map((e=>function(e,r){return e.__keyword=!!r,e.isLeaf=!!r,e}(e,t)))}}catch(e){l(e)&&m(e)}function o(e){return v.value=function(e){const r=[];let t=e;for(;t;)r.unshift(d(t,["parent","isLeaf","__keyword","children"])),t=t.parent;return r}(e),_.value=!1,Promise.reject()}function a(e){let r=1,t=e.parent;for(;t;)r++,t=t.parent;return r}}a((()=>e.wordbook),((r,t)=>{i(r,t)||(g.value=[],r&&(v.value||!e.lazyRequest)&&L())}),{immediate:!0});const{injectValueValidate:V,injectValueWatchFromEmpty:A,injectValueBindKey:I}=f();A(v,L),V(v);const P=I(v);return()=>n(h,{value:v.value,"onUpdate:value":e=>v.value=e,show:_.value,"onUpdate:show":e=>_.value=e,options:g.value,key:P.value,labelKey:O.value,valueKey:q.value,search:L,onFocus:j(F)},{empty:()=>n(k,null,null)})}}),v({dataSource:"options"},_));export{g as LEVEL_SEARCH_CASCADER};
@@ -65,8 +65,8 @@ declare const _default: import("vue").DefineComponent<{
65
65
  default: boolean;
66
66
  };
67
67
  }>>, {
68
- show: boolean;
69
68
  disabled: boolean;
69
+ show: boolean;
70
70
  title: string;
71
71
  }>;
72
72
  export default _default;
@@ -65,7 +65,7 @@ export declare const LINEBAR: import("vue").DefineComponent<{
65
65
  default: boolean;
66
66
  };
67
67
  }>>, {
68
- show: boolean;
69
68
  disabled: boolean;
69
+ show: boolean;
70
70
  title: string;
71
71
  }>;
@@ -19,6 +19,14 @@ export declare const RADIO: import("vue").DefineComponent<{
19
19
  type: BooleanConstructor;
20
20
  default: boolean;
21
21
  };
22
+ labelField: {
23
+ type: StringConstructor;
24
+ default: string;
25
+ };
26
+ valueField: {
27
+ type: StringConstructor;
28
+ default: string;
29
+ };
22
30
  wordbook: {
23
31
  type: PropType<Partial<{
24
32
  level_num: number;
@@ -61,6 +69,14 @@ export declare const RADIO: import("vue").DefineComponent<{
61
69
  type: BooleanConstructor;
62
70
  default: boolean;
63
71
  };
72
+ labelField: {
73
+ type: StringConstructor;
74
+ default: string;
75
+ };
76
+ valueField: {
77
+ type: StringConstructor;
78
+ default: string;
79
+ };
64
80
  wordbook: {
65
81
  type: PropType<Partial<{
66
82
  level_num: number;
@@ -87,10 +103,12 @@ export declare const RADIO: import("vue").DefineComponent<{
87
103
  }>> & {
88
104
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
89
105
  }, {
90
- vertical: boolean;
91
106
  options: AnyObject[];
107
+ labelField: string;
108
+ valueField: string;
92
109
  lazyRequest: boolean;
93
110
  requestCache: boolean;
111
+ vertical: boolean;
94
112
  }>;
95
113
  export declare const CHECKBOX: import("vue").DefineComponent<{
96
114
  value: {
@@ -111,6 +129,14 @@ export declare const CHECKBOX: import("vue").DefineComponent<{
111
129
  type: BooleanConstructor;
112
130
  default: boolean;
113
131
  };
132
+ labelField: {
133
+ type: StringConstructor;
134
+ default: string;
135
+ };
136
+ valueField: {
137
+ type: StringConstructor;
138
+ default: string;
139
+ };
114
140
  wordbook: {
115
141
  type: PropType<Partial<{
116
142
  level_num: number;
@@ -153,6 +179,14 @@ export declare const CHECKBOX: import("vue").DefineComponent<{
153
179
  type: BooleanConstructor;
154
180
  default: boolean;
155
181
  };
182
+ labelField: {
183
+ type: StringConstructor;
184
+ default: string;
185
+ };
186
+ valueField: {
187
+ type: StringConstructor;
188
+ default: string;
189
+ };
156
190
  wordbook: {
157
191
  type: PropType<Partial<{
158
192
  level_num: number;
@@ -179,8 +213,10 @@ export declare const CHECKBOX: import("vue").DefineComponent<{
179
213
  }>> & {
180
214
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
181
215
  }, {
182
- vertical: boolean;
183
216
  options: AnyObject[];
217
+ labelField: string;
218
+ valueField: string;
184
219
  lazyRequest: boolean;
185
220
  requestCache: boolean;
221
+ vertical: boolean;
186
222
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,createVNode as o,isVNode as t}from"vue";import{connect as a,mapProps as l}from"@formily/vue";import{NSpace as r,NRadio as u,NRadioGroup as i,NCheckbox as n,NCheckboxGroup as p}from"naive-ui";import"../../../index.js";import{useComplexOptions as s}from"../../hooks/useComplexOptions.js";import"../../utils/index.js";import{useAutographOptions as m}from"../../hooks/useFormRenderOptions.js";import{useCommonInjection as v}from"../../hooks/useCommonInjection.js";import{assignUpdateValue as c,createVisitedSetter as d}from"../../utils/schema.js";import{useFormField as f}from"../../hooks/useFormField.js";function y(a,l,u){return e({name:a,props:{value:{type:[String,Number,Object,Array]},options:{type:Array,default:()=>[]},autograph:{type:String},lazyRequest:{type:Boolean,default:!1},requestCache:{type:Boolean,default:!0},wordbook:{type:Object},vertical:{type:Boolean,default:!1},onChange:{}},emits:["update:value"],setup(e,{emit:a}){const{field:i}=f(),{renderComplexOption:n,valueRef:p}=s(e,a),{labelKey:c,valueKey:y,fullOptions:j}=m(e,p),{injectValueBindKey:b,injectValueValidate:h}=v();h(p);const k=b(p);return()=>o(l,{key:k.value,value:p.value,"onUpdate:value":e=>p.value=e,onClick:d(i)},{default:()=>[o(r,{vertical:e.vertical,"vertical-space":e.vertical},{default:()=>{var e;return[null==(e=j.value)?void 0:e.map((e=>{let a;return o(u,{key:e[y.value],value:e[y.value],disabled:e.disabled},"function"==typeof(l=a=n({value:p.value,option:e,valueKey:y.value,labelKey:c.value}))||"[object Object]"===Object.prototype.toString.call(l)&&!t(l)?a:{default:()=>[a]});var l}))]}})]})}})}const j=a(y("FormRadio",i,u),l({dataSource:"options"},c)),b=a(y("FormCheckbox",p,n),l({dataSource:"options"},c));export{b as CHECKBOX,j as RADIO};
1
+ import{defineComponent as e,createVNode as t,isVNode as o}from"vue";import{connect as a,mapProps as l}from"@formily/vue";import{NSpace as r,NRadio as u,NRadioGroup as i,NCheckbox as n,NCheckboxGroup as p}from"naive-ui";import"../../../index.js";import{useComplexOptions as s}from"../../hooks/useComplexOptions.js";import"../../utils/index.js";import{useAutographOptions as m}from"../../hooks/useFormRenderOptions.js";import{useCommonInjection as v}from"../../hooks/useCommonInjection.js";import{assignUpdateValue as d,createVisitedSetter as c}from"../../utils/schema.js";import{useFormField as f}from"../../hooks/useFormField.js";function y(a,l,u){return e({name:a,props:{value:{type:[String,Number,Object,Array]},options:{type:Array,default:()=>[]},autograph:{type:String},lazyRequest:{type:Boolean,default:!1},requestCache:{type:Boolean,default:!0},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},wordbook:{type:Object},vertical:{type:Boolean,default:!1},onChange:{}},emits:["update:value"],setup(e,{emit:a}){const{field:i}=f(),{renderComplexOption:n,valueRef:p}=s(e,a),{labelKey:d,valueKey:y,fullOptions:j}=m(e,p),{injectValueBindKey:b,injectValueValidate:h}=v();h(p);const k=b(p);return()=>t(l,{key:k.value,value:p.value,"onUpdate:value":e=>p.value=e,onClick:c(i)},{default:()=>[t(r,{vertical:e.vertical,"vertical-space":e.vertical},{default:()=>{var e;return[null==(e=j.value)?void 0:e.map((e=>{let a;return t(u,{key:e[y.value],value:e[y.value],disabled:e.disabled},"function"==typeof(l=a=n({value:p.value,option:e,valueKey:y.value,labelKey:d.value}))||"[object Object]"===Object.prototype.toString.call(l)&&!o(l)?a:{default:()=>[a]});var l}))]}})]})}})}const j=a(y("FormRadio",i,u),l({dataSource:"options"},d)),b=a(y("FormCheckbox",p,n),l({dataSource:"options"},d));export{b as CHECKBOX,j as RADIO};
@@ -13,6 +13,14 @@ export declare const REMOTE_SEARCH: import("vue").DefineComponent<{
13
13
  type: PropType<AnyObject[]>;
14
14
  default: () => never[];
15
15
  };
16
+ labelField: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ valueField: {
21
+ type: StringConstructor;
22
+ default: string;
23
+ };
16
24
  urlConfig: {
17
25
  type: PropType<UrlConfig>;
18
26
  };
@@ -29,6 +37,14 @@ export declare const REMOTE_SEARCH: import("vue").DefineComponent<{
29
37
  type: PropType<AnyObject[]>;
30
38
  default: () => never[];
31
39
  };
40
+ labelField: {
41
+ type: StringConstructor;
42
+ default: string;
43
+ };
44
+ valueField: {
45
+ type: StringConstructor;
46
+ default: string;
47
+ };
32
48
  urlConfig: {
33
49
  type: PropType<UrlConfig>;
34
50
  };
@@ -37,5 +53,7 @@ export declare const REMOTE_SEARCH: import("vue").DefineComponent<{
37
53
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
38
54
  }, {
39
55
  options: AnyObject[];
56
+ labelField: string;
57
+ valueField: string;
40
58
  requestCache: boolean;
41
59
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,computed as o,inject as u,watch as a,createVNode as r}from"vue";import{connect as t,mapProps as n}from"@formily/vue";import{useVModel as i,useDebounceFn as s}from"@vueuse/core";import{isString as v,isArray as m,cloneDeep as p,isEqual as d}from"lodash-es";import{NSelect as f}from"naive-ui";import"../../../index.js";import{InjectionAsyncQueue as c,InjectionChangeContextCollector as y,InjectionFormItemDepsCollector as h}from"../../constants/index.js";import{createUrlConfigParams as C,formRenderLog as g}from"../../utils/index.js";import{useCommonInjection as j,useSelectOptionProps as x}from"../../hooks/useCommonInjection.js";import{useFormField as F}from"../../hooks/useFormField.js";import{createVisitedSetter as K,assignUpdateValue as b,assignClearBindVisited as k}from"../../utils/schema.js";const w=t(e({name:"FormRemoteSearch",props:{value:{type:String},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},urlConfig:{type:Object},onChange:{}},emits:["update:value"],setup(e,{slots:t,emit:n}){const b=i(e,"value",n),{field:k,fieldKey:w}=F(),S=l(null),V=o((()=>{var l,o;return null!=(o=null==(l=e.urlConfig)?void 0:l.nameKey)?o:"text"})),q=o((()=>{var l,o;return null!=(o=null==(l=e.urlConfig)?void 0:l.valueKey)?o:"value"})),A=u(c),B=s((async(l="",o="label")=>{if(!e.urlConfig)return S.value=null;try{S.value=await A.addAsync(await C({config:{...e.urlConfig,params:{...e.urlConfig.params,["value"===o?q.value:"keyword"]:l}},cache:e.requestCache,field:k.value}))}catch(e){v(e)&&g(e)}})),O=o((()=>m(S.value)?S.value:m(e.options)?e.options:[])),{injectValueValidate:P,injectValueBindKey:U}=j();P(b);const D=U(b);a(b,(e=>{if(e&&!O.value.find((l=>l[q.value]===e)))return B(e,"value")}));u(y).setContext(w.value,(e=>{return{currentOption:p((l=e,O.value.find((e=>e[q.value]===l))))};var l}));const I=u(h);a((()=>e.urlConfig),((e,l)=>{d(e,l)||(S.value=null,e&&(I.setDeps(w.value,e.dependKey||[],(async()=>{S.value=null,b.value=null})),b.value&&B(b.value,"value")))}),{immediate:!0});const{menuProps:R,nodeProps:z}=x();return()=>r(f,{remote:!0,filterable:!0,key:D.value,value:b.value,"onUpdate:value":e=>b.value=e,labelField:V.value,valueField:q.value,"menu-props":R,"node-props":z,onSearch:B,"onUpdate:show":e=>e&&B(),options:O.value,onFocus:K(k)},t)}}),n(b,k));export{w as REMOTE_SEARCH};
1
+ import{defineComponent as e,ref as l,computed as u,inject as a,watch as o,createVNode as t}from"vue";import{connect as n,mapProps as r}from"@formily/vue";import{useVModel as i,useDebounceFn as s}from"@vueuse/core";import{isString as v,isArray as m,cloneDeep as p,isEqual as d}from"lodash-es";import{NSelect as f}from"naive-ui";import"../../../index.js";import{InjectionAsyncQueue as c,InjectionChangeContextCollector as y,InjectionFormItemDepsCollector as g}from"../../constants/index.js";import{createUrlConfigParams as h,formRenderLog as C}from"../../utils/index.js";import{useCommonInjection as j,useSelectOptionProps as F}from"../../hooks/useCommonInjection.js";import{useFormField as x}from"../../hooks/useFormField.js";import{createVisitedSetter as b,assignUpdateValue as K,assignClearBindVisited as S}from"../../utils/schema.js";const k=n(e({name:"FormRemoteSearch",props:{value:{type:String},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},urlConfig:{type:Object},onChange:{}},emits:["update:value"],setup(e,{slots:n,emit:r}){const K=i(e,"value",r),{field:S,fieldKey:k}=x(),w=l(null),V=u((()=>{var l,u,a;return null!=(a=null!=(u=null==(l=e.urlConfig)?void 0:l.nameKey)?u:e.labelField)?a:"text"})),q=u((()=>{var l,u,a;return null!=(a=null!=(u=null==(l=e.urlConfig)?void 0:l.valueKey)?u:e.valueField)?a:"value"})),A=a(c),B=s((async(l="",u="label")=>{if(!e.urlConfig)return w.value=null;try{w.value=await A.addAsync(await h({config:{...e.urlConfig,params:{...e.urlConfig.params,["value"===u?q.value:"keyword"]:l}},cache:e.requestCache,field:S.value}))}catch(e){v(e)&&C(e)}})),O=u((()=>m(w.value)?w.value:m(e.options)?e.options:[])),{injectValueValidate:P,injectValueBindKey:U}=j();P(K);const D=U(K);o(K,(e=>{if(e&&!O.value.find((l=>l[q.value]===e)))return B(e,"value")}));a(y).setContext(k.value,(e=>{return{currentOption:p((l=e,O.value.find((e=>e[q.value]===l))))};var l}));const I=a(g);o((()=>e.urlConfig),((e,l)=>{d(e,l)||(w.value=null,e&&(I.setDeps(k.value,e.dependKey||[],(async()=>{w.value=null,K.value=null})),K.value&&B(K.value,"value")))}),{immediate:!0});const{menuProps:R,nodeProps:z}=F();return()=>t(f,{remote:!0,filterable:!0,key:D.value,value:K.value,"onUpdate:value":e=>K.value=e,labelField:V.value,valueField:q.value,"menu-props":R,"node-props":z,onSearch:B,"onUpdate:show":e=>e&&B(),options:O.value,onFocus:b(S)},n)}}),r(K,S));export{k as REMOTE_SEARCH};
@@ -23,6 +23,14 @@ export declare const SEARCH_CASCADER: import("vue").DefineComponent<{
23
23
  type: BooleanConstructor;
24
24
  default: boolean;
25
25
  };
26
+ labelField: {
27
+ type: StringConstructor;
28
+ default: string;
29
+ };
30
+ valueField: {
31
+ type: StringConstructor;
32
+ default: string;
33
+ };
26
34
  onChange: {};
27
35
  value: {};
28
36
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -47,12 +55,22 @@ export declare const SEARCH_CASCADER: import("vue").DefineComponent<{
47
55
  type: BooleanConstructor;
48
56
  default: boolean;
49
57
  };
58
+ labelField: {
59
+ type: StringConstructor;
60
+ default: string;
61
+ };
62
+ valueField: {
63
+ type: StringConstructor;
64
+ default: string;
65
+ };
50
66
  onChange: {};
51
67
  value: {};
52
68
  }>> & {
53
69
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
54
70
  }, {
55
71
  options: AnyObject[];
72
+ labelField: string;
73
+ valueField: string;
56
74
  requestCache: boolean;
57
75
  filterable: boolean;
58
76
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as a,inject as o,watch as r,createVNode as l,nextTick as n}from"vue";import{isEqual as i,isArray as u}from"lodash-es";import"../../../index.js";import{useCommonInjection as s}from"../../hooks/useCommonInjection.js";import{InjectionAsyncQueue as c,InjectionFormUUID as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../utils/index.js";import{useFormField as m}from"../../hooks/useFormField.js";import"@vueuse/core";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import"@formily/core";import"date-fns";import"@formily/reactive";import{connect as d,mapProps as v}from"@formily/vue";import"@vue/shared";import"./index.js";import"../../hooks/useFormRenderOptions.js";import{NCascader as f}from"naive-ui";import{createVisitedSetter as h,assignUpdateValue as y,traverseDependKey as j}from"../../utils/schema.js";const b=d(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:d,emit:v}){const y=t(),{field:b,title:k}=m(),C=a((()=>{var t,a;return null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:"text"})),g=a((()=>{var t,a;return null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:"value"})),A=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");return Array.isArray(t)&&t.length?t.map((e=>e[C.value])).join(" / "):null}catch(e){return null}}));function S(e,t,a){v("update:value",a.map((function(e){return{...e,label:e[C.value],children:void 0,parent:void 0}})))}const F=o(c);async function w(t){e.filterable?await async function(){if(!e.urlConfig||y.value&&e.requestCache)return;const t=await F.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:k.value,cache:e.requestCache});function a(e,t){const o={[C.value]:e[C.value],[g.value]:e[g.value],depth:t+1,isLeaf:!0};return u(e.children)&&(o.children=e.children.map((e=>a(e,t+1))),o.isLeaf=!e.children.length),o}y.value=t.map((e=>a(e,0)))}():await async function(t){if(r(e,t))return;const a=await F.addAsync(l(s(t),u(e),k.value,t));if(!a.length&&t)return t.isLeaf=!0,S(0,0,n(t)),void(K.value=!1);const o=a.map((e=>i(e,s(t))));function r(e,t){return!u(e)||!t&&y.value&&e.requestCache||s(t)>=s(e)-1}function l(t,a,o,r){const l={lvlnr:t+1+""};return r&&a.dependKey&&j(a.dependKey,((e,t)=>{l[t]=r[e]})),{params:l,...a,key:o,cache:e.requestCache}}function n(e){let t=e;const a=[e];for(;t.parent;)a.unshift(t.parent),t=t.parent;return a}function i(a,o){return{[C.value]:a[C.value],[g.value]:a[g.value],depth:o+1,parent:t,isLeaf:o+2>=s(e)}}function u(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=o:y.value=o}(t),await x()}const H=`form-render__cascade--menu-${o(p)}`;async function x(){await n();const e=document.querySelector(`.${H} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}const{injectValueValidate:L,injectValueWatchFromEmpty:q,injectValueBindKey:B}=s();q((()=>e.value),w),L((()=>e.value)),r((()=>e.urlConfig),(async(e,t)=>{i(e,t)||(y.value=null,await w())}));const K=t(!1);function V(e){K.value=!!e,e&&w()}const E=a((()=>y.value||e.options||[])),O=a((()=>!e.filterable)),W=B(A);return()=>l(f,{key:W.value,remote:O.value,filterable:e.filterable,"menu-props":{class:H,onClick:x},checkStrategy:"child",show:!!K.value,"onUpdate:show":V,value:A.value,"onUpdate:value":S,labelField:C.value,valueField:g.value,options:E.value,onLoad:w,onFocus:h(b)},d)}}),v({dataSource:"options"},y));export{b as SEARCH_CASCADER};
1
+ import{defineComponent as e,ref as t,computed as a,inject as l,watch as r,createVNode as o,nextTick as n}from"vue";import{isEqual as i,isArray as u}from"lodash-es";import"../../../index.js";import{useCommonInjection as s}from"../../hooks/useCommonInjection.js";import{InjectionAsyncQueue as c,InjectionFormUUID as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../utils/index.js";import{useFormField as d}from"../../hooks/useFormField.js";import{NCascader as m}from"naive-ui";import"@vueuse/core";import"date-fns";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import"@formily/core";import"@formily/reactive";import{connect as v,mapProps as f}from"@formily/vue";import"@vue/shared";import"./index.js";import"../../hooks/useFormRenderOptions.js";import{createVisitedSetter as h,assignUpdateValue as y,traverseDependKey as j}from"../../utils/schema.js";const b=v(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:v,emit:f}){const y=t(),{field:b,title:k}=d(),C=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:e.labelField)?l:"text"})),g=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:e.valueField)?l:"value"})),F=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");return Array.isArray(t)&&t.length?t.map((e=>e[C.value])).join(" / "):null}catch(e){return null}}));function S(e,t,a){f("update:value",u(a)?a.map((function(e){return{...e,label:e[C.value],children:void 0,parent:void 0}})):null)}const A=l(c);async function w(t){e.filterable?await async function(){if(!e.urlConfig||y.value&&e.requestCache)return;const t=await A.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:k.value,cache:e.requestCache});function a(e,t){const l={[C.value]:e[C.value],[g.value]:e[g.value],depth:t+1,isLeaf:!0};return u(e.children)&&(l.children=e.children.map((e=>a(e,t+1))),l.isLeaf=!e.children.length),l}y.value=t.map((e=>a(e,0)))}():await async function(t){if(r(e,t))return;const a=await A.addAsync(o(s(t),u(e),k.value,t));if(!a.length&&t)return t.isLeaf=!0,S(0,0,n(t)),void(K.value=!1);const l=a.map((e=>i(e,s(t))));function r(e,t){return!u(e)||!t&&y.value&&e.requestCache||s(t)>=s(e)-1}function o(t,a,l,r){const o={lvlnr:t+1+""};return r&&a.dependKey&&j(a.dependKey,((e,t)=>{o[t]=r[e]})),{params:o,...a,key:l,cache:e.requestCache}}function n(e){let t=e;const a=[e];for(;t.parent;)a.unshift(t.parent),t=t.parent;return a}function i(a,l){return{[C.value]:a[C.value],[g.value]:a[g.value],depth:l+1,parent:t,isLeaf:l+2>=s(e)}}function u(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=l:y.value=l}(t),await x()}const H=`form-render__cascade--menu-${l(p)}`;async function x(){await n();const e=document.querySelector(`.${H} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}const{injectValueValidate:L,injectValueWatchFromEmpty:q,injectValueBindKey:B}=s();q((()=>e.value),w),L((()=>e.value)),r((()=>e.urlConfig),(async(e,t)=>{i(e,t)||(y.value=null,await w())}));const K=t(!1);function V(e){K.value=!!e,e&&w()}const E=a((()=>y.value||e.options||[])),O=a((()=>!e.filterable)),W=B(F);return()=>o(m,{key:W.value,remote:O.value,filterable:e.filterable,"menu-props":{class:H,onClick:x},checkStrategy:"child",show:!!K.value,"onUpdate:show":V,value:F.value,"onUpdate:value":S,labelField:C.value,valueField:g.value,options:E.value,onLoad:w,onFocus:h(b)},v)}}),f({dataSource:"options"},y));export{b as SEARCH_CASCADER};
@@ -5,7 +5,7 @@ import { UrlConfig } from '../../types';
5
5
  import { PropType } from 'vue';
6
6
  export declare const SELECT: import("vue").DefineComponent<{
7
7
  value: {
8
- type: PropType<ArrayAble<string> | null>;
8
+ type: PropType<ArrayAble<string | number> | null>;
9
9
  };
10
10
  lazyRequest: {
11
11
  type: BooleanConstructor;
@@ -20,6 +20,14 @@ export declare const SELECT: import("vue").DefineComponent<{
20
20
  default: () => never[];
21
21
  };
22
22
  onChange: {};
23
+ labelField: {
24
+ type: StringConstructor;
25
+ default: string;
26
+ };
27
+ valueField: {
28
+ type: StringConstructor;
29
+ default: string;
30
+ };
23
31
  allowCreate: BooleanConstructor;
24
32
  urlConfig: {
25
33
  type: PropType<UrlConfig>;
@@ -58,7 +66,11 @@ export declare const SELECT: import("vue").DefineComponent<{
58
66
  getRecommendInfo: {
59
67
  type: PropType<() => RecommendIds>;
60
68
  };
61
- recommendNum: {
69
+ commonNum: {
70
+ type: NumberConstructor;
71
+ default: number;
72
+ };
73
+ recentNum: {
62
74
  type: NumberConstructor;
63
75
  default: number;
64
76
  };
@@ -68,7 +80,7 @@ export declare const SELECT: import("vue").DefineComponent<{
68
80
  };
69
81
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "postRecommend")[], "update:value" | "postRecommend", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
70
82
  value: {
71
- type: PropType<ArrayAble<string> | null>;
83
+ type: PropType<ArrayAble<string | number> | null>;
72
84
  };
73
85
  lazyRequest: {
74
86
  type: BooleanConstructor;
@@ -83,6 +95,14 @@ export declare const SELECT: import("vue").DefineComponent<{
83
95
  default: () => never[];
84
96
  };
85
97
  onChange: {};
98
+ labelField: {
99
+ type: StringConstructor;
100
+ default: string;
101
+ };
102
+ valueField: {
103
+ type: StringConstructor;
104
+ default: string;
105
+ };
86
106
  allowCreate: BooleanConstructor;
87
107
  urlConfig: {
88
108
  type: PropType<UrlConfig>;
@@ -121,7 +141,11 @@ export declare const SELECT: import("vue").DefineComponent<{
121
141
  getRecommendInfo: {
122
142
  type: PropType<() => RecommendIds>;
123
143
  };
124
- recommendNum: {
144
+ commonNum: {
145
+ type: NumberConstructor;
146
+ default: number;
147
+ };
148
+ recentNum: {
125
149
  type: NumberConstructor;
126
150
  default: number;
127
151
  };
@@ -134,10 +158,13 @@ export declare const SELECT: import("vue").DefineComponent<{
134
158
  onPostRecommend?: ((...args: any[]) => any) | undefined;
135
159
  }, {
136
160
  options: AnyObject[];
161
+ labelField: string;
162
+ valueField: string;
137
163
  lazyRequest: boolean;
138
164
  requestCache: boolean;
139
165
  recommend: boolean;
140
166
  recommendCache: boolean;
141
- recommendNum: number;
167
+ commonNum: number;
168
+ recentNum: number;
142
169
  allowCreate: boolean;
143
170
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as o,inject as t,ref as a,createVNode as r}from"vue";import{useDebounceFn as l}from"@vueuse/core";import{cloneDeep as s,isString as i}from"lodash-es";import{useCommonInjection as n,useSelectOptionProps as u}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as p}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../../index.js";import"../../utils/index.js";import{useFormField as m}from"../../hooks/useFormField.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import"@formily/core";import"date-fns";import"@formily/reactive";import{connect as c,mapProps as d}from"@formily/vue";import"@vue/shared";import"./index.js";import{useUrlConfigOptions as y,useAutographOptions as v,useRecommendOptions as f,searchContentMatcher as h}from"../../hooks/useFormRenderOptions.js";import{NSelect as j}from"naive-ui";import{createVisitedSetter as b,assignUpdateValue as k,assignClearBindVisited as S}from"../../utils/schema.js";const g=c(e({name:"FormSelect",props:{value:{type:[String,Array]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},allowCreate:Boolean,urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},recommendNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1}},emits:["update:value","postRecommend"],setup(e,{slots:c,emit:d}){const k=o({get:()=>e.value,async set(e){d("update:value",e),C(e)}}),{labelKey:S,valueKey:g,fetchData:A,fullOptions:F,filterOptions:H}=e.urlConfig?y(e,k):v(e,k),{getRecommend:B,postRecommend:C,sortedOptions:x}=f(e,H,d,S,g),{field:O,fieldKey:R}=m();t(p).setContext(R.value,(e=>{return{currentOption:s((o=e,F.value.find((e=>e[g.value]===o))))};var o}));const L=a(""),V=l((async(e="")=>{L.value=e,A(e),B(e)}),300),{injectValueValidate:w,injectValueWatchFromEmpty:K,injectValueBindKey:P}=n();K(k,V),w(k);const W=P(k),{menuProps:q,nodeProps:I}=u();function N(e){const o=e[S.value];if(!o||!i(o))return"";const t=h(L.value,o);return t?r("section",null,[t.map(((e,o)=>0!==o&&e?r("span",{style:{color:o%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):o}const U=o((()=>x.value.length||!e.allowCreate?x.value:L.value?[{[S.value]:L.value,[g.value]:L.value},...x.value]:x.value));return()=>r(j,{key:W.value,remote:!0,filterable:!0,value:k.value,"onUpdate:value":e=>k.value=e,"menu-props":q,"node-props":I,labelField:S.value,valueField:g.value,options:U.value,onSearch:V,"onUpdate:show":e=>e&&V(),onFocus:b(O),renderLabel:N},c)}}),d({dataSource:"options"},k,S));export{g as SELECT};
1
+ import{defineComponent as e,computed as o,inject as t,ref as a,createVNode as r}from"vue";import{useDebounceFn as l}from"@vueuse/core";import{cloneDeep as s,isArray as i,isString as n}from"lodash-es";import{useCommonInjection as u,useSelectOptionProps as p}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as m}from"../../constants/index.js";import"../../../../../shared/utils/index.js";import"../../../index.js";import"../../utils/index.js";import{useFormField as c}from"../../hooks/useFormField.js";import{NSelect as d}from"naive-ui";import"date-fns";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import"@formily/core";import"@formily/reactive";import{connect as y,mapProps as v}from"@formily/vue";import"@vue/shared";import"./index.js";import{useUrlConfigOptions as f,useAutographOptions as h,useRecommendOptions as j,searchContentMatcher as b}from"../../hooks/useFormRenderOptions.js";import{createVisitedSetter as k,assignUpdateValue as S,assignClearBindVisited as g}from"../../utils/schema.js";const F=y(e({name:"FormSelect",props:{value:{type:[String,Array,Number]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},allowCreate:Boolean,urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},commonNum:{type:Number,default:10},recentNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1}},emits:["update:value","postRecommend"],setup(e,{slots:y,emit:v}){const S=o({get:()=>e.value,async set(e){v("update:value",e),C(e)}}),{labelKey:g,valueKey:F,fetchData:A,fullOptions:H,filterOptions:x}=e.urlConfig?f(e,S):h(e,S),{getRecommend:B,postRecommend:C,sortedOptions:O}=j(e,x,v,g,F),{field:R,fieldKey:L}=c();t(m).setContext(L.value,(e=>{return{currentOption:s((o=e,i(o)?function(e){const o=H.value.reduce(((e,o)=>(e[o[F.value]]=o,e)),{});return e.map((e=>o[e]))}(o):(t=o,H.value.find((e=>e[F.value]===t)))))};var o,t}));const N=a(""),V=l((async(e="")=>{N.value=e,A(e),B(e)}),300),{injectValueValidate:w,injectValueWatchFromEmpty:K,injectValueBindKey:P}=u();K(S,V),w(S);const W=P(S),{menuProps:q,nodeProps:I}=p();function U(e){const o=e[g.value];if(!o||!n(o))return"";const t=b(N.value,o);return t?r("section",null,[t.map(((e,o)=>0!==o&&e?r("span",{style:{color:o%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):o}const z=o((()=>O.value.length||!e.allowCreate?O.value:N.value?[{[g.value]:N.value,[F.value]:N.value},...O.value]:O.value));return()=>r(d,{key:W.value,remote:!0,filterable:!0,value:S.value,"onUpdate:value":e=>S.value=e,"menu-props":q,"node-props":I,labelField:g.value,valueField:F.value,options:z.value,onSearch:V,"onUpdate:show":e=>e&&V(),onFocus:k(R),renderLabel:U},y)}}),v({dataSource:"options"},S,g));export{F as SELECT};
@@ -2,7 +2,7 @@ export * from './useFieldListAdaptor';
2
2
  export * from './useFormRequest';
3
3
  export * from './useCommonLog';
4
4
  export * from './useFormField';
5
- export * from './useAsyncQueue';
5
+ export * from './useFormAsyncQueue';
6
6
  export * from './useFieldVisitor';
7
7
  export * from './useFieldNormalize';
8
8
  export * from './useFormValidator';
@@ -1 +1 @@
1
- export{useFieldListAdaptor}from"./useFieldListAdaptor.js";export{useFormRequest}from"./useFormRequest.js";export{useCommonLog}from"./useCommonLog.js";export{useFormField}from"./useFormField.js";export{AsyncQueue,useAsyncQueue}from"./useAsyncQueue.js";export{useFieldVisitor}from"./useFieldVisitor.js";export{useFieldNormalize}from"./useFieldNormalize.js";export{useFormValidator,validateMessageLocale}from"./useFormValidator.js";export{BusinessCollector,useBusinessBinding}from"./useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./useChangeContext.js";export{FormItemDepsCollector,useFormItemDeps}from"./useFormItemDeps.js";export{useAnchor}from"./useAnchor.js";export{useFormContext}from"./useFormContext.js";export{useCommonInjection,useSelectOptionProps}from"./useCommonInjection.js";export{searchContentMatcher,useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./useFormRenderOptions.js";
1
+ export{useFieldListAdaptor}from"./useFieldListAdaptor.js";export{useFormRequest}from"./useFormRequest.js";export{useCommonLog}from"./useCommonLog.js";export{useFormField}from"./useFormField.js";export{useFormAsyncQueue}from"./useFormAsyncQueue.js";export{useFieldVisitor}from"./useFieldVisitor.js";export{useFieldNormalize}from"./useFieldNormalize.js";export{useFormValidator,validateMessageLocale}from"./useFormValidator.js";export{BusinessCollector,useBusinessBinding}from"./useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./useChangeContext.js";export{FormItemDepsCollector,useFormItemDeps}from"./useFormItemDeps.js";export{useAnchor}from"./useAnchor.js";export{useFormContext}from"./useFormContext.js";export{useCommonInjection,useSelectOptionProps}from"./useCommonInjection.js";export{searchContentMatcher,useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./useFormRenderOptions.js";
@@ -0,0 +1,16 @@
1
+ import { AsyncQueue } from '../../../../../es/shared/hooks';
2
+ import { AnyObject, UndefinedAble } from '../../../../../es/shared/types';
3
+ import { ComputedRef } from 'vue';
4
+ import { FormAsyncQueueItem } from '../types';
5
+ import { RequestInstance } from '../../../../../es/components/form-render';
6
+ declare type ProcessorOption = Partial<{
7
+ afterRequest(key: string, payload?: unknown): AnyObject[];
8
+ beforeRequest(key: string, params?: unknown): UndefinedAble<AnyObject> | void;
9
+ }>;
10
+ export declare function useFormAsyncQueue(requestInstance: ComputedRef<UndefinedAble<RequestInstance>>): {
11
+ create: (parallelism?: number, option?: ProcessorOption) => AsyncQueue<FormAsyncQueueItem, any, {
12
+ label: string;
13
+ value: unknown;
14
+ }[]>;
15
+ };
16
+ export {};
@@ -0,0 +1 @@
1
+ import{uuidGenerator as e}from"../../../../shared/utils/index.js";import{isFunction as r}from"lodash-es";import"naive-ui";import{unref as t}from"vue";import"@vueuse/core";import"date-fns";import{AsyncQueue as o}from"../../../../shared/hooks/useAsyncQueue.js";import"../../index.js";import{useCommonLog as s}from"./useCommonLog.js";import{useFormRequest as n}from"./useFormRequest.js";function a(a){const{getHttpInstance:i}=n();return{create:function(n=3,u){return new o({name:"FormRenderAsyncQueue",parallelism:n,async processor({key:e,method:o="post",cache:n,params:m,url:p},c,f){var l,d;const h=null!=(l=t(a))?l:i();if(!h)return s().invalidHttpInstanceLog(),c(),void f();try{u&&r(u.beforeRequest)&&(m=null!=(d=u.beforeRequest(e,m))?d:{});let t=await h[o](p,m);u&&r(u.afterRequest)&&(t=u.afterRequest(e,t)),c(void 0,Array.isArray(t)?t:[]),!n&&f()}catch(e){c(new Error(`Request error => ${e}`)),f()}},getKey:({url:r,method:t="post",cache:o,params:s})=>o?r+t+JSON.stringify(s||{}):e()})}}}export{a as useFormAsyncQueue};
@@ -1 +1 @@
1
- import{uuidGenerator as e}from"../../../../shared/utils/index.js";import{createSchemaField as o}from"@formily/vue";import{isObject as t}from"@vue/shared";import{cloneDeep as r}from"lodash-es";import{computed as s,provide as n,readonly as i}from"vue";import"../../index.js";import m from"../components/renderer/index.js";import{InjectionAsyncQueue as a,InjectionSchemaField as u,InjectionBusinessCollector as p,InjectionChangeContextCollector as c,InjectionFormItemDepsCollector as l,InjectionFormUUID as f,InjectionAnnotation as d}from"../constants/index.js";import{useFormRenderLifeCycle as j}from"./useFormRenderLifeCycle.js";import{usePresetScope as y}from"./usePresetScope.js";import{injectOrProvide as C,presetRequestHandler as h}from"../utils/index.js";import{useAsyncQueue as x}from"./useAsyncQueue.js";import{useBusinessBinding as g}from"./useBusinessBinding.js";import{useChangeContext as v}from"./useChangeContext.js";import{useFormItemDeps as b}from"./useFormItemDeps.js";function q(q,F){const{callLifeCycle:R}=j(q),I=C(a,(()=>x(s((()=>q.requestInstance))).create(q.parallelism,{beforeRequest:(...e)=>R("beforeRequest",r(e))||e[1],afterRequest:(...e)=>R("afterRequest",r(e))||h(e[1])}))),D=C(u,(()=>o({components:{...m,...q.components},scope:Object.assign({},y(),q.scope)}).SchemaField)),S=g().create(q.businessFormatter);n(p,S);const B=v().create();n(c,B);const L=b().create();n(l,L);const Q=q.uuid||e();return n(f,Q),n(d,s({get:()=>q.annotation?i(q.annotation):null,set(e){if(!t(q.annotation)||!t(e))return;const o=q.annotation[e.property];q.annotation[e.property]=e.value,F("annotationChange",{fieldKey:e.property,value:e.value,oldValue:o})}})),{asyncQueue:I,SchemaField:D,businessCollector:S,changeContextCollector:B,formItemDepsCollector:L,formUUID:Q}}export{q as useFormContext};
1
+ import{uuidGenerator as e}from"../../../../shared/utils/index.js";import{createSchemaField as o}from"@formily/vue";import{isObject as t}from"@vue/shared";import{cloneDeep as r}from"lodash-es";import{computed as s,provide as n,readonly as i}from"vue";import"../../index.js";import m from"../components/renderer/index.js";import{InjectionAsyncQueue as a,InjectionSchemaField as u,InjectionBusinessCollector as p,InjectionChangeContextCollector as c,InjectionFormItemDepsCollector as l,InjectionFormUUID as f,InjectionAnnotation as d}from"../constants/index.js";import{useFormRenderLifeCycle as j}from"./useFormRenderLifeCycle.js";import{usePresetScope as y}from"./usePresetScope.js";import{injectOrProvide as C,presetRequestHandler as h}from"../utils/index.js";import{useFormAsyncQueue as x}from"./useFormAsyncQueue.js";import{useBusinessBinding as g}from"./useBusinessBinding.js";import{useChangeContext as v}from"./useChangeContext.js";import{useFormItemDeps as F}from"./useFormItemDeps.js";function b(b,q){const{callLifeCycle:R}=j(b),I=C(a,(()=>x(s((()=>b.requestInstance))).create(b.parallelism,{beforeRequest:(...e)=>R("beforeRequest",r(e))||e[1],afterRequest:(...e)=>R("afterRequest",r(e))||h(e[1])}))),D=C(u,(()=>o({components:{...m,...b.components},scope:Object.assign({},y(),b.scope)}).SchemaField)),S=g().create(b.businessFormatter);n(p,S);const B=v().create();n(c,B);const L=F().create();n(l,L);const Q=b.uuid||e();return n(f,Q),n(d,s({get:()=>b.annotation?i(b.annotation):null,set(e){if(!t(b.annotation)||!t(e))return;const o=b.annotation[e.property];b.annotation[e.property]=e.value,q("annotationChange",{fieldKey:e.property,value:e.value,oldValue:o})}})),{asyncQueue:I,SchemaField:D,businessCollector:S,changeContextCollector:B,formItemDepsCollector:L,formUUID:Q}}export{b as useFormContext};