cnhis-design-vue 3.2.6-beta.2 → 3.2.6-beta.21

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 (187) hide show
  1. package/README.md +87 -87
  2. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  3. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  4. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  5. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  6. package/es/components/button-print/index.d.ts +4 -0
  7. package/es/components/button-print/src/ButtonPrint.vue.d.ts +4 -0
  8. package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +4 -0
  9. package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
  10. package/es/components/button-print/src/utils/print.d.ts +4 -2
  11. package/es/components/button-print/src/utils/print.js +1 -1
  12. package/es/components/callback/src/components/render/popupMaps.d.ts +6 -4
  13. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  14. package/es/components/default-page/index.d.ts +11 -3
  15. package/es/components/default-page/src/constants/index.d.ts +1 -0
  16. package/es/components/default-page/src/constants/index.js +1 -1
  17. package/es/components/default-page/src/index.vue.d.ts +11 -3
  18. package/es/components/default-page/src/index.vue2.js +1 -1
  19. package/es/components/default-page/style/index.css +1 -1
  20. package/es/components/expand-field/index.d.ts +1109 -321
  21. package/es/components/expand-field/src/components/FormItemPerson.vue.d.ts +1109 -321
  22. package/es/components/expand-field/src/components/PersonModal.vue.d.ts +1109 -321
  23. package/es/components/expand-field/src/components/form.vue.d.ts +1109 -321
  24. package/es/components/expand-field/src/index.vue.d.ts +1109 -321
  25. package/es/components/fabric-chart/src/constants/index.js +1 -1
  26. package/es/components/fabric-chart/src/hooks/temperature/useCenter.d.ts +1 -0
  27. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  28. package/es/components/fabric-chart/src/hooks/temperature/useOther.d.ts +2 -2
  29. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
  30. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  31. package/es/components/fabric-chart/src/hooks/useDraw.js +1 -1
  32. package/es/components/form-config/index.d.ts +12 -8
  33. package/es/components/form-config/src/FormConfig.vue.d.ts +12 -8
  34. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  35. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +6 -4
  36. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +6 -4
  37. package/es/components/form-config/src/utils/index.d.ts +1 -0
  38. package/es/components/form-config/src/utils/index.js +1 -1
  39. package/es/components/form-render/index.d.ts +6 -4
  40. package/es/components/form-render/index.js +1 -1
  41. package/es/components/form-render/src/FormRender.vue.d.ts +5 -3
  42. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  43. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +6 -4
  44. package/es/components/form-render/src/FormRenderWrapper.vue2.js +1 -1
  45. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  46. package/es/components/form-render/src/components/renderer/select.js +1 -1
  47. package/es/components/form-render/src/hooks/index.d.ts +0 -1
  48. package/es/components/form-render/src/hooks/index.js +1 -1
  49. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  50. package/es/components/form-render/src/hooks/useFormEvent.d.ts +1 -1
  51. package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
  52. package/es/components/form-render/src/hooks/usePresetScope.d.ts +1 -0
  53. package/es/components/form-render/src/hooks/usePresetScope.js +1 -1
  54. package/es/components/form-render/src/types/index.d.ts +4 -1
  55. package/es/components/form-render/src/utils/index.d.ts +1 -0
  56. package/es/components/form-render/src/utils/index.js +1 -1
  57. package/es/components/iho-chat/index.d.ts +543 -35
  58. package/es/components/iho-chat/src/Index.vue.d.ts +549 -40
  59. package/es/components/iho-chat/src/Index.vue2.js +1 -1
  60. package/es/components/iho-chat/src/api/index.d.ts +5 -0
  61. package/es/components/iho-chat/src/api/index.js +1 -1
  62. package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +89 -0
  63. package/es/components/iho-chat/src/components/ChatAdd.vue.js +1 -0
  64. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -0
  65. package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +1 -1
  66. package/es/components/iho-chat/src/components/ChatFile.vue2.js +1 -1
  67. package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +103 -30
  68. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  69. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +131 -5
  70. package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
  71. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +26 -3
  72. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  73. package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +1 -2
  74. package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
  75. package/es/components/iho-chat/src/components/ChatSearch.vue.d.ts +10 -3
  76. package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
  77. package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +16 -1
  78. package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
  79. package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +133 -0
  80. package/es/components/iho-chat/src/components/MultipleVideo.vue.js +1 -0
  81. package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +1 -0
  82. package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +15 -1
  83. package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
  84. package/es/components/iho-chat/src/components/SiderList.vue2.js +1 -1
  85. package/es/components/iho-chat/src/components/Video.vue.d.ts +43 -27
  86. package/es/components/iho-chat/src/components/Video.vue.js +1 -0
  87. package/es/components/iho-chat/src/components/Video.vue2.js +1 -0
  88. package/es/components/iho-chat/src/constants/index.d.ts +10 -1
  89. package/es/components/iho-chat/src/constants/index.js +1 -1
  90. package/es/components/iho-chat/src/hooks/index.d.ts +1 -0
  91. package/es/components/iho-chat/src/hooks/index.js +1 -1
  92. package/es/components/iho-chat/src/hooks/useSession.d.ts +1 -0
  93. package/es/components/iho-chat/src/hooks/useSession.js +1 -1
  94. package/es/components/iho-chat/src/hooks/useState.d.ts +5 -0
  95. package/es/components/iho-chat/src/hooks/useState.js +1 -1
  96. package/es/components/iho-chat/src/hooks/useVideo.d.ts +24 -0
  97. package/es/components/iho-chat/src/hooks/useVideo.js +1 -0
  98. package/es/components/iho-chat/src/types/index.d.ts +5 -0
  99. package/es/components/iho-chat/src/utils/index.d.ts +3 -2
  100. package/es/components/iho-chat/src/utils/index.js +1 -1
  101. package/es/components/iho-chat/style/index.css +1 -1
  102. package/es/components/iho-table/src/plugins/keyboardEventPlugin.js +1 -1
  103. package/es/components/iho-table/src/plugins/verticalTablePlugin/src/renderer.js +1 -1
  104. package/es/components/index.css +1 -1
  105. package/es/components/index.js +1 -1
  106. package/es/components/info-header/index.d.ts +18 -14
  107. package/es/components/info-header/src/InfoHeader.vue.d.ts +18 -14
  108. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +6 -6
  109. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +6 -6
  110. package/es/components/info-header/src/components/infoDescription/HiddenContent.vue.d.ts +3 -3
  111. package/es/components/info-header/src/components/infoDescription/InfoEllipsis.vue.d.ts +3 -3
  112. package/es/components/info-header/src/components/infoDescription/InfoEllipsis.vue2.js +1 -1
  113. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +12 -10
  114. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +6 -4
  115. package/es/components/recommend-search/index.d.ts +8 -8
  116. package/es/components/recommend-search/src/RecommendSearch.vue.d.ts +8 -8
  117. package/es/components/recommend-search/src/components/BaseSearch.d.ts +1 -1
  118. package/es/components/recommend-search/src/components/RecommendInput.vue.d.ts +3 -3
  119. package/es/components/recommend-search/src/components/RecommendSelect.vue.d.ts +3 -3
  120. package/es/components/scale-view/index.d.ts +29 -1
  121. package/es/components/scale-view/src/ScaleView.vue.d.ts +29 -1
  122. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  123. package/es/components/scale-view/src/hooks/scaleview-computed.d.ts +3 -1
  124. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  125. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +8 -0
  126. package/es/components/scale-view/src/hooks/scaleview-props.js +1 -1
  127. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  128. package/es/components/select-person/index.d.ts +1109 -321
  129. package/es/components/select-person/index.js +1 -1
  130. package/es/components/select-person/src/SelectPerson.vue.d.ts +4 -10
  131. package/es/components/select-person/src/SelectPerson.vue2.js +1 -1
  132. package/es/components/select-person/src/SelectPersonType.vue.d.ts +314 -0
  133. package/es/components/select-person/src/SelectPersonType.vue.js +1 -0
  134. package/es/components/select-person/src/SelectPersonType.vue2.js +1 -0
  135. package/es/components/select-person/src/components/SearchMultiple.vue.js +1 -0
  136. package/es/components/select-person/src/components/SearchOrgAndStaff.vue.js +1 -0
  137. package/es/components/select-person/src/constants/index.d.ts +2 -0
  138. package/es/components/select-person/src/constants/index.js +1 -0
  139. package/es/components/select-person/src/index.vue.d.ts +1385 -0
  140. package/es/components/select-person/src/index.vue.js +1 -0
  141. package/es/components/select-person/src/index.vue2.js +1 -0
  142. package/es/components/shortcut-setter/index.d.ts +6 -4
  143. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +6 -4
  144. package/es/env.d.ts +25 -25
  145. package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
  146. package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
  147. package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
  148. package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
  149. package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
  150. package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
  151. package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
  152. package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
  153. package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
  154. package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
  155. package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
  156. package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
  157. package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
  158. package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
  159. package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
  160. package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
  161. package/es/shared/assets/img/failure.png.js +1 -1
  162. package/es/shared/assets/img/no-permission.png.js +1 -1
  163. package/es/shared/assets/img/nodata.png.js +1 -1
  164. package/es/shared/assets/img/notfound.png.js +1 -1
  165. package/es/shared/assets/img/qr.png.js +1 -1
  166. package/es/shared/assets/img/success.png.js +1 -1
  167. package/es/shared/assets/img/table_style_2.png.js +1 -1
  168. package/es/shared/assets/img/video.png.js +1 -1
  169. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  170. package/es/shared/assets/img/xb_big.png.js +1 -1
  171. package/es/shared/assets/img/xb_small.png.js +1 -1
  172. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  173. package/es/shared/hooks/useAsyncQueue/index.d.ts +3 -0
  174. package/es/shared/hooks/useAsyncQueue/index.js +1 -1
  175. package/es/shared/package.json.js +1 -1
  176. package/es/shared/utils/business.js +1 -1
  177. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  178. package/es/shared/utils/tapable/index.d.ts +139 -0
  179. package/package.json +2 -2
  180. package/es/components/form-render/src/hooks/useAutoHidden.d.ts +0 -4
  181. package/es/components/form-render/src/hooks/useAutoHidden.js +0 -1
  182. package/es/components/select-person/src/SearchMultiple.vue.js +0 -1
  183. package/es/components/select-person/src/SearchOrgAndStaff.vue.js +0 -1
  184. /package/es/components/select-person/src/{SearchMultiple.vue.d.ts → components/SearchMultiple.vue.d.ts} +0 -0
  185. /package/es/components/select-person/src/{SearchMultiple.vue2.js → components/SearchMultiple.vue2.js} +0 -0
  186. /package/es/components/select-person/src/{SearchOrgAndStaff.vue.d.ts → components/SearchOrgAndStaff.vue.d.ts} +0 -0
  187. /package/es/components/select-person/src/{SearchOrgAndStaff.vue2.js → components/SearchOrgAndStaff.vue2.js} +0 -0
@@ -410,6 +410,10 @@ declare const _default: import("vue").DefineComponent<{
410
410
  businessCollector: import("./hooks").BusinessCollector;
411
411
  formItemDepsCollector: import("./hooks").FormItemDepsCollector;
412
412
  changeContextCollector: import("./hooks").ContextCollector;
413
+ asyncQueue: import("../../../shared/hooks").AsyncQueue<FormRequestDefine.AsyncQueueItem, any, {
414
+ label: string;
415
+ value: unknown;
416
+ }[]>;
413
417
  formUUID: string;
414
418
  anchorBarRef: import("vue").Ref<{
415
419
  syncBarPosition: import("../../../shared/types").AnyFn;
@@ -441,13 +445,11 @@ declare const _default: import("vue").DefineComponent<{
441
445
  afterRequest(fieldKey: string, res?: any, payload?: AnyObject | undefined): AnyObject[] | Promise<AnyObject[]>;
442
446
  afterOptionInit(fieldKey: string, options: AnyObject[], payload?: AnyObject | undefined): void;
443
447
  }>>[T]>>;
444
- triggerAutoHidden: (field: import("@formily/core").GeneralField, includeLinebar?: boolean) => Promise<void>;
445
448
  observeFormGraph: Record<string, import("@formily/core").GeneralField>;
446
449
  setGraph: (field: import("@formily/core").GeneralField) => void;
447
450
  removeGraph: (field: import("@formily/core").GeneralField) => void;
448
451
  lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
449
452
  emitFormChange: import("vue").Ref<boolean>;
450
- isReady: boolean;
451
453
  formModel: import("@formily/core").Form<{
452
454
  [x: string]: any;
453
455
  }>;
@@ -737,7 +739,7 @@ declare const _default: import("vue").DefineComponent<{
737
739
  startIncrementalRender: () => void;
738
740
  onKeydown: (event: KeyboardEvent) => Promise<void>;
739
741
  clearSpan: (uuid: string) => void;
740
- exposeEvent: Omit<FormRenderExpose, "getFieldList" | "formModel" | "reload">;
742
+ exposeEvent: Omit<FormRenderExpose, "getFieldList" | "optionInited" | "formModel" | "reload">;
741
743
  useVersion: typeof useVersion;
742
744
  FormConsumer: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
743
745
  FormProvider: import("vue").DefineComponent<Record<"form", any>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<Record<"form", any>>>, {
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,provide as t,computed as r,nextTick as a,onUnmounted as s,openBlock as i,createBlock as l,unref as n,mergeProps as m,withCtx as d,createElementBlock as p,createVNode as u,isRef as c,Fragment as f,renderList as h,createCommentVNode as y,createElementVNode as g,normalizeStyle as b,toDisplayString as j,renderSlot as v}from"vue";import{useTheme as k}from"../../../shared/hooks/useTheme.js";import{useElementSize as F}from"@vueuse/core";import"date-fns";import{isNumber as C,cloneDeep as S}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NForm as x,NTabs as w,NTabPane as H,NConfigProvider as A}from"naive-ui";import{useVersion as B}from"../../../shared/hooks/useVersion.js";import{createForm as R,onFormMount as L,onFieldValueChange as O,onFieldMount as I,onFieldUnmount as V,onFieldReact as N}from"@formily/core";import{Path as _}from"@formily/path";import{FormProvider as D,FormConsumer as T}from"@formily/vue";import{InjectionFormColumnWidth as E,InjectionFormLifeCycleCaller as W,InjectionFormGraph as q}from"./constants/index.js";import{createObjSchema as U}from"./utils/schema.js";import{useAnchor as G}from"./hooks/useAnchor.js";import{useAutoHidden as M}from"./hooks/useAutoHidden.js";import"../index.js";import{useComplexOptionsSpan as K}from"./hooks/useComplexOptions.js";import{useFieldListAdaptor as P}from"./hooks/useFieldListAdaptor.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{useFieldVisitor as z}from"./hooks/useFieldVisitor.js";import{useFormContext as J}from"./hooks/useFormContext.js";import{useFormDomEvent as $,useFormExposeEvent as Q}from"./hooks/useFormEvent.js";import{useFormGraph as X}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as Y}from"./hooks/useFormRenderLifeCycle.js";import{validateMessageLocale as Z}from"./hooks/useFormValidator.js";import{useLowCodeEvent as ee}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as oe}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as te}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as re}from"./hooks/useOperationalForm.js";import{useWordbookSetting as ae}from"./hooks/useWordbookSetting.js";import{useNewLowCodeReactions as se}from"./hooks/useNewLowCodeReactions.js";const ie={key:0,style:{height:"54px"}},le={style:{"white-space":"pre"}};var ne=e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},annotationShortcuts:{type:Array},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},autoExpand:Boolean,lowCodeReactions:{type:Array},newLowCodeReactions:{type:Array},operationalForm:{type:Array},dateOperationalForm:{type:Object},operationalFormInit:{type:Boolean,default:!0},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},labelPlacementOverwrite:Boolean,outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean,wordSplitFilter:{type:Boolean,default:!0},selectMode:Boolean,selectedFields:{type:Array},linebarDirection:{type:String,default:"vertical"},linebarTextDirection:{type:String,default:"horizontal"},linebarWidth:{type:[Number,String],default:120},autoWidth:{type:[Boolean,Number],default:!1},incrementalRender:{type:Boolean,default:!1}},emits:["formChange","annotationChange","scroll","update:selectedFields","linebarChange","ready"],setup(e,{expose:ne,emit:me}){const de=e,pe=k(),{nuiThemeOverrides:ue}=te();Z();const ce=o(),{width:fe}=F(ce);t(E,r((()=>fe.value?(fe.value-16*(de.column-1))/24:0)));const he=r((()=>C(de.maxHeight)?de.maxHeight+"px":de.maxHeight)),{SchemaField:ye,businessCollector:ge,formItemDepsCollector:be,changeContextCollector:je,formUUID:ve}=J(de,me),{anchorBarRef:ke,currentAnchor:Fe,updateAnchorList:Ce,anchorIdList:Se,onScroll:xe}=G(de,me,ce,be),{callLifeCycle:we}=Y(de);t(W,we),we("onSetup");const{trigger:He}=M(),{observeFormGraph:Ae,setGraph:Be,removeGraph:Re}=X();t(q,Ae);const{lowCodeEventTrigger:Le}=ee(),Oe=o(!0);let Ie=!de.incrementalRender;const Ve=R({initialValues:de.initialData,effects(e){const o={};L((()=>{Object.assign(o,S(e.values))})),O("*",(t=>{const r=_.getIn(o,t.path);_.setIn(o,t.path,t.value);const a=t.props.name.toString();ge.trigger(e,a),be.trigger(t.path),Oe.value&&me("formChange",{fieldInstance:t,fieldKey:a,oldValue:r,fieldName:t.title,value:t.value,context:je.getContext(a,t.value)}),Le(t),Ne(a),_e(a),De.trigger(a),Te.trigger(a,t.value)})),I("*",Be),I("*",(e=>{const o=e.props.name.toString();Ne(o),_e(o),de.operationalFormInit&&De.trigger(o)})),V("*",Re),N("*",(e=>Ie&&He(e,de.linebarAutoHidden))),L((e=>e.query("*").forEach((e=>He(e,de.linebarAutoHidden))))),de.anchor&&N("*",Ce)}}),{lowCodeReactionsHandler:Ne}=oe(r((()=>de.lowCodeReactions)),Ve),{newLowCodeReactionsHandler:_e}=se(r((()=>de.newLowCodeReactions)),Ve),De=re(de,Ve),Te=ae().create(Ve,je),{schemaAdaptor:Ee}=P(ge,de.lifeCycle);let We=de.fieldList||[],qe=[];const Ue=r((()=>{let e=!1;const o=de.schema?de.schema:de.fieldList?(We!==de.fieldList&&0!==We.length||(e=!0),We=z().traverse(S(de.fieldList),de.fieldVisitor),U(Ee(We,de))):U({});return de.incrementalRender&&e&&(qe=[],Object.values(o.properties).forEach((e=>{var o;"visible"===e["x-display"]&&"LINEBAR"===e["x-component"]&&!1!==(null==(o=e["x-component-props"])?void 0:o.show)&&(qe.push(e),e["x-component-props"].show=!1)})),Ge()),o}));function Ge(){qe.length&&setTimeout((()=>{const e=qe.shift();e&&(be.trigger(_.parse(e.name),!0),qe.length?Ge():a().then((()=>{me("ready"),Ie=!0,de.linebarAutoHidden&&Ve.query("*").forEach((e=>He(e,de.linebarAutoHidden)))})))}),300)}const{onKeydown:Me}=$({formModel:Ve,formRenderRef:ce,props:de,formUUID:ve}),{clearSpan:Ke}=K();s((()=>Ke(ve)));const Pe=Q({formModel:Ve,formRenderRef:ce,formItemDepsCollector:be,businessCollector:ge,wordbookSettingHandler:Te,operationalFormHandler:De,getFieldList:()=>We,formUUID:ve,changeContextCollector:je,emitFormChange:Oe});return ne({formModel:Ve,validate:(e="*",o={})=>Pe.validate(e,o),getFormValues:(e=!0)=>Pe.getFormValues(e),setFormValues:async(e,o={})=>Pe.setFormValues(e,o),setFieldState(e,o){Pe.setFieldState(e,o)},resetFields(e="*"){Pe.resetFields(e)},queryWidget:async e=>Pe.queryWidget(e),getFieldList:()=>We,applySelectedSetting:e=>Pe.applySelectedSetting(e),async reload(){console.error("reload function is abstract,it should be overwrite!")},getTextFormValues:()=>Pe.getTextFormValues()}),(o,t)=>(i(),l(n(x),m({class:["form-render",{"form-render--out-border":e.outBordered}],"require-mark-placement":"left",style:n(pe)},n(B)(),{uuid:n(ve)}),{default:d((()=>[e.anchor?(i(),p("section",ie,[u(n(w),{value:n(Fe),"onUpdate:value":t[0]||(t[0]=e=>c(Fe)?Fe.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ke},{default:d((()=>[(i(!0),p(f,null,h(n(Se),(e=>(i(),l(n(H),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):y("v-if",!0),u(n(A),{"theme-overrides":n(ue)},{default:d((()=>[g("section",{class:"form-render__wrapper",style:b({"--column":e.column,"--form-height":n(he)}),ref_key:"formRenderRef",ref:ce,onScroll:t[1]||(t[1]=(...e)=>n(xe)&&n(xe)(...e)),onKeydownCapture:t[2]||(t[2]=(...e)=>n(Me)&&n(Me)(...e))},[u(n(D),{form:n(Ve)},{default:d((()=>[u(n(ye),{schema:n(Ue)},null,8,["schema"]),e.consumer?(i(),l(n(T),{key:0},{default:d((({form:e})=>[g("div",le,j(JSON.stringify(e.values,null,2)),1)])),_:1})):y("v-if",!0),v(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},16,["class","style","uuid"]))}});export{ne as default};
1
+ import{defineComponent as e,ref as o,provide as t,computed as r,nextTick as a,onUnmounted as s,openBlock as i,createBlock as l,unref as n,mergeProps as m,withCtx as p,createElementBlock as u,createVNode as d,isRef as c,Fragment as f,renderList as h,createCommentVNode as y,createElementVNode as g,normalizeStyle as v,toDisplayString as b,renderSlot as j}from"vue";import{useTheme as k}from"../../../shared/hooks/useTheme.js";import{useElementSize as C}from"@vueuse/core";import"date-fns";import{isNumber as F,cloneDeep as S}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NForm as w,NTabs as x,NTabPane as B,NConfigProvider as A}from"naive-ui";import{useVersion as L}from"../../../shared/hooks/useVersion.js";import{createForm as R,onFormMount as H,onFieldValueChange as O,onFieldMount as I,onFieldUnmount as T,onFieldReact as V}from"@formily/core";import{Path as N}from"@formily/path";import{FormProvider as _,FormConsumer as D}from"@formily/vue";import{InjectionFormColumnWidth as W,InjectionFormLifeCycleCaller as U,InjectionFormGraph as E}from"./constants/index.js";import{createObjSchema as q}from"./utils/schema.js";import{useAnchor as P}from"./hooks/useAnchor.js";import"../index.js";import{useComplexOptionsSpan as G}from"./hooks/useComplexOptions.js";import{useFieldListAdaptor as M}from"./hooks/useFieldListAdaptor.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{useFieldVisitor as K}from"./hooks/useFieldVisitor.js";import{useFormContext as z}from"./hooks/useFormContext.js";import{useFormDomEvent as J,useFormExposeEvent as Q}from"./hooks/useFormEvent.js";import{useFormGraph as $}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as X}from"./hooks/useFormRenderLifeCycle.js";import{validateMessageLocale as Y}from"./hooks/useFormValidator.js";import{useLowCodeEvent as Z}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as ee}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as oe}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as te}from"./hooks/useOperationalForm.js";import{useWordbookSetting as re}from"./hooks/useWordbookSetting.js";import{useNewLowCodeReactions as ae}from"./hooks/useNewLowCodeReactions.js";const se={key:0,style:{height:"54px"}},ie={style:{"white-space":"pre"}};var le=e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:5},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},annotationShortcuts:{type:Array},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},autoExpand:Boolean,lowCodeReactions:{type:Array},newLowCodeReactions:{type:Array},operationalForm:{type:Array},dateOperationalForm:{type:Object},operationalFormInit:{type:Boolean,default:!0},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},labelPlacementOverwrite:Boolean,outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean,wordSplitFilter:{type:Boolean,default:!0},selectMode:Boolean,selectedFields:{type:Array},linebarDirection:{type:String,default:"vertical"},linebarTextDirection:{type:String,default:"horizontal"},linebarWidth:{type:[Number,String],default:120},autoWidth:{type:[Boolean,Number],default:!1},incrementalRender:{type:Boolean,default:!1}},emits:["formChange","annotationChange","scroll","update:selectedFields","linebarChange","ready"],setup(e,{expose:le,emit:ne}){const me=e,pe=k(),{nuiThemeOverrides:ue}=oe();Y();const de=o(),{width:ce}=C(de);t(W,r((()=>ce.value?(ce.value-16*(me.column-1))/24:0)));const fe=r((()=>F(me.maxHeight)?me.maxHeight+"px":me.maxHeight)),{SchemaField:he,businessCollector:ye,formItemDepsCollector:ge,changeContextCollector:ve,asyncQueue:be,formUUID:je}=z(me,ne),{anchorBarRef:ke,currentAnchor:Ce,updateAnchorList:Fe,anchorIdList:Se,onScroll:we}=P(me,ne,de,ge),{callLifeCycle:xe}=X(me);t(U,xe),xe("onSetup");const{observeFormGraph:Be,setGraph:Ae,removeGraph:Le}=$();t(E,Be);const{lowCodeEventTrigger:Re}=Z(),He=o(!0),Oe=R({initialValues:me.initialData,effects(e){const o={};H((()=>{Object.assign(o,S(e.values))})),O("*",(t=>{const r=N.getIn(o,t.path);N.setIn(o,t.path,t.value);const a=t.props.name.toString();ye.trigger(e,a),ge.trigger(t.path),He.value&&ne("formChange",{fieldInstance:t,fieldKey:a,oldValue:r,fieldName:t.title,value:t.value,context:ve.getContext(a,t.value)}),Re(t),Ie(a),Te(a),Ve.trigger(a),Ne.trigger(a,t.value)})),I("*",Ae),I("*",(e=>{const o=e.props.name.toString();Ie(o),Te(o),me.operationalFormInit&&Ve.trigger(o)})),T("*",Le),me.anchor&&V("*",Fe)}}),{lowCodeReactionsHandler:Ie}=ee(r((()=>me.lowCodeReactions)),Oe),{newLowCodeReactionsHandler:Te}=ae(r((()=>me.newLowCodeReactions)),Oe),Ve=te(me,Oe),Ne=re().create(Oe,ve),{schemaAdaptor:_e}=M(ye,me.lifeCycle);let De=me.fieldList||[],We=[];const Ue=r((()=>{let e=!1;const o=me.schema?me.schema:me.fieldList?(De!==me.fieldList&&0!==De.length||(e=!0),De=K().traverse(S(me.fieldList),me.fieldVisitor),q(_e(De,me))):q({});return me.incrementalRender&&e&&(We=[],Object.values(o.properties).forEach((e=>{var o;"visible"===e["x-display"]&&"LINEBAR"===e["x-component"]&&!1!==(null==(o=e["x-component-props"])?void 0:o.show)&&(We.push(e),e["x-component-props"].show=!1)})),Ee()),o}));function Ee(){We.length&&setTimeout((()=>{const e=We.shift();e&&(ge.trigger(N.parse(e.name),!0),Oe.setFieldState(e.name,(e=>{e.componentProps.show=!0})),We.length?Ee():a().then((()=>{ne("ready")})))}),300)}const{onKeydown:qe}=J({formModel:Oe,formRenderRef:de,props:me,formUUID:je}),{clearSpan:Pe}=G();s((()=>Pe(je)));const Ge=Q({formModel:Oe,formRenderRef:de,formItemDepsCollector:ge,businessCollector:ye,wordbookSettingHandler:Ne,operationalFormHandler:Ve,getFieldList:()=>De,formUUID:je,changeContextCollector:ve,emitFormChange:He});return le({formModel:Oe,validate:(e="*",o={})=>Ge.validate(e,o),getFormValues:(e=!0)=>Ge.getFormValues(e),setFormValues:async(e,o={})=>Ge.setFormValues(e,o),setFieldState(e,o){Ge.setFieldState(e,o)},resetFields(e="*"){Ge.resetFields(e)},queryWidget:async e=>Ge.queryWidget(e),getFieldList:()=>De,applySelectedSetting:e=>Ge.applySelectedSetting(e),async reload(){console.error("reload function is abstract,it should be overwrite!")},async optionInited(e={}){if(await a(),be.activeTasks)return new Promise((o=>{var t;const r=()=>{o(),be.onActiveTaskChange=null};be.onActiveTaskChange=()=>{be.activeTasks||r()},setTimeout(r,null!=(t=e.timeout)?t:5e3)}))},getTextFormValues:()=>Ge.getTextFormValues()}),(o,t)=>(i(),l(n(w),m({class:["form-render",{"form-render--out-border":e.outBordered}],"require-mark-placement":"left",style:n(pe)},n(L)(),{uuid:n(je)}),{default:p((()=>[e.anchor?(i(),u("section",se,[d(n(x),{value:n(Ce),"onUpdate:value":t[0]||(t[0]=e=>c(Ce)?Ce.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ke},{default:p((()=>[(i(!0),u(f,null,h(n(Se),(e=>(i(),l(n(B),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):y("v-if",!0),d(n(A),{"theme-overrides":n(ue)},{default:p((()=>[g("section",{class:"form-render__wrapper",style:v({"--column":e.column,"--form-height":n(fe)}),ref_key:"formRenderRef",ref:de,onScroll:t[1]||(t[1]=(...e)=>n(we)&&n(we)(...e)),onKeydownCapture:t[2]||(t[2]=(...e)=>n(qe)&&n(qe)(...e))},[d(n(_),{form:n(Oe)},{default:p((()=>[d(n(he),{schema:n(Ue)},null,8,["schema"]),e.consumer?(i(),l(n(D),{key:0},{default:p((({form:e})=>[g("div",ie,b(JSON.stringify(e.values,null,2)),1)])),_:1})):y("v-if",!0),j(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},16,["class","style","uuid"]))}});export{le as default};
@@ -4,7 +4,7 @@ declare const _default: import("vue").DefineComponent<{}, {
4
4
  formRenderRef: import("vue").Ref<FormRenderExpose | undefined>;
5
5
  key: import("vue").Ref<number>;
6
6
  reload: () => Promise<void>;
7
- formRenderExposeKeyList: readonly ["validate", "getFormValues", "setFormValues", "setFieldState", "resetFields", "queryWidget", "getFieldList", "applySelectedSetting", "getTextFormValues"];
7
+ formRenderExposeKeyList: readonly ["validate", "getFormValues", "setFormValues", "setFieldState", "resetFields", "queryWidget", "getFieldList", "applySelectedSetting", "getTextFormValues", "optionInited"];
8
8
  exposed: Partial<FormRenderExpose>;
9
9
  FormRender: import("vue").DefineComponent<{
10
10
  fieldList: {
@@ -413,6 +413,10 @@ declare const _default: import("vue").DefineComponent<{}, {
413
413
  businessCollector: import("../../../components/form-render").BusinessCollector;
414
414
  formItemDepsCollector: import("../../../components/form-render").FormItemDepsCollector;
415
415
  changeContextCollector: import("../../../components/form-render").ContextCollector;
416
+ asyncQueue: import("../../../shared/hooks").AsyncQueue<import("../../../shared/hooks").FormRequestDefine.AsyncQueueItem, any, {
417
+ label: string;
418
+ value: unknown;
419
+ }[]>;
416
420
  formUUID: string;
417
421
  anchorBarRef: import("vue").Ref<{
418
422
  syncBarPosition: AnyFn;
@@ -444,13 +448,11 @@ declare const _default: import("vue").DefineComponent<{}, {
444
448
  afterRequest(fieldKey: string, res?: any, payload?: import("../../../shared/types").AnyObject | undefined): import("../../../shared/types").AnyObject[] | Promise<import("../../../shared/types").AnyObject[]>;
445
449
  afterOptionInit(fieldKey: string, options: import("../../../shared/types").AnyObject[], payload?: import("../../../shared/types").AnyObject | undefined): void;
446
450
  }>>[T]>>;
447
- triggerAutoHidden: (field: import("@formily/core").GeneralField, includeLinebar?: boolean) => Promise<void>;
448
451
  observeFormGraph: Record<string, import("@formily/core").GeneralField>;
449
452
  setGraph: (field: import("@formily/core").GeneralField) => void;
450
453
  removeGraph: (field: import("@formily/core").GeneralField) => void;
451
454
  lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
452
455
  emitFormChange: import("vue").Ref<boolean>;
453
- isReady: boolean;
454
456
  formModel: import("@formily/core").Form<{
455
457
  [x: string]: any;
456
458
  }>;
@@ -740,7 +742,7 @@ declare const _default: import("vue").DefineComponent<{}, {
740
742
  startIncrementalRender: () => void;
741
743
  onKeydown: (event: KeyboardEvent) => Promise<void>;
742
744
  clearSpan: (uuid: string) => void;
743
- exposeEvent: Omit<FormRenderExpose, "getFieldList" | "formModel" | "reload">;
745
+ exposeEvent: Omit<FormRenderExpose, "getFieldList" | "optionInited" | "formModel" | "reload">;
744
746
  useVersion: typeof import("../../../shared/hooks").useVersion;
745
747
  FormConsumer: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
746
748
  FormProvider: import("vue").DefineComponent<Record<"form", any>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<Record<"form", any>>>, {
@@ -1 +1 @@
1
- import{defineComponent as e,ref as r,computed as t,openBlock as l,createBlock as a,withCtx as o,renderSlot as u,nextTick as d}from"vue";import s from"./FormRender.vue.js";var n=e({__name:"FormRenderWrapper",setup(e,{expose:n}){const i=r(),m=r(0);return n({...["validate","getFormValues","setFormValues","setFieldState","resetFields","queryWidget","getFieldList","applySelectedSetting","getTextFormValues"].reduce(((e,r)=>(e[r]=(...e)=>{var t;return(null==(t=i.value)?void 0:t[r]).call(t,...e)},e)),{}),formModel:t((()=>{var e;return null==(e=i.value)?void 0:e.formModel})),reload:async function(){m.value++,await d()}}),(e,r)=>(l(),a(s,{key:m.value,ref_key:"formRenderRef",ref:i},{default:o((()=>[u(e.$slots,"default")])),_:3}))}});export{n as default};
1
+ import{defineComponent as e,ref as r,computed as t,openBlock as l,createBlock as a,withCtx as o,renderSlot as u,nextTick as d}from"vue";import n from"./FormRender.vue.js";var s=e({__name:"FormRenderWrapper",setup(e,{expose:s}){const i=r(),m=r(0);return s({...["validate","getFormValues","setFormValues","setFieldState","resetFields","queryWidget","getFieldList","applySelectedSetting","getTextFormValues","optionInited"].reduce(((e,r)=>(e[r]=(...e)=>{var t;return(null==(t=i.value)?void 0:t[r]).call(t,...e)},e)),{}),formModel:t((()=>{var e;return null==(e=i.value)?void 0:e.formModel})),reload:async function(){m.value++,await d()}}),(e,r)=>(l(),a(n,{key:m.value,ref_key:"formRenderRef",ref:i},{default:o((()=>[u(e.$slots,"default")])),_:3}))}});export{s as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as a,inject as l,watch as o,createVNode as r,nextTick as n}from"vue";import{connect as u,mapProps as i}from"@formily/vue";import{isEqual as s,isArray as c,isString as p}from"lodash-es";import{NCascader as d}from"naive-ui";import"../../../index.js";import{useCommonInjection as v}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as m,InjectionAsyncQueue as f,InjectionFormUUID as y}from"../../constants/index.js";import"@formily/path";import"@vueuse/core";import"../../../../../shared/utils/index.js";import"@formily/core";import"@vicons/ionicons5";import"@vue/shared";import"date-fns";import{assignUpdateValue as h,createVisitedSetter as k,traverseDependKey as j}from"../../utils/schema.js";import"@formily/reactive";import"../../hooks/useComplexOptions.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"@vueuse/shared";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import"./index.js";import{useFormField as g}from"../../hooks/useFormField.js";import"../../hooks/useFormValidator.js";const b=u(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},checkStrategy:{type:String,default:"child"},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:u,emit:i}){const h=t(),{field:b,title:C,fieldKey:S}=g(),F=t(1),w=t(!0);const A=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:e.labelField)?l:"text"})),H=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:e.valueField)?l:"value"}));l(m).setContext(S.value,(()=>({labelField:A.value,valueField:H.value})));const x=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");if(!Array.isArray(t)||!t.length)return null;const a=t.map((e=>e[H.value])).slice(-1).join(""),l=t.map((e=>e[A.value])).join(" / ");return a||l}catch(e){return null}}));function q(e,t,a){i("update:value",c(a)?a.map((function(e){return{...e,label:e[A.value],children:void 0,parent:void 0,mergeItemValue:void 0}})):null)}const K=l(f);async function V(t){e.filterable?await async function(){if(!e.urlConfig||h.value&&e.requestCache)return;const t=await K.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:C.value,cache:e.requestCache,payload:{field:b.value,labelKey:A.value,valueKey:H.value}});function a(e,t,o){const r=[...o,...l(e)],n={[A.value]:e[A.value],[H.value]:e[H.value],depth:t+1,isLeaf:!0,keyword:e.keyword,mergeItemValue:r};return c(e.children)&&(n.children=e.children.map((e=>a(e,t+1,r))),n.isLeaf=!e.children.length),F.value=Math.max(F.value,t+1),n}function l(e){let t=[];if(p(e[A.value])&&(t=[...t,e[A.value]]),p(e.keyword)&&e.keyword.length>0){const a=e.keyword.split(",");t=[...t,...a]}return t}h.value=t.map((e=>a(e,0,[])))}():await async function(t){if(o(e,t))return;const a=await K.addAsync(r(s(t),i(e),C.value,t));if(!a.length&&t)return t.isLeaf=!0,q(0,0,n(t)),void(z.value=!1);const l=a.map((e=>u(e,s(t))));function o(e,t){return!i(e)||!t&&h.value&&e.requestCache||s(t)>=s(e)-1}function r(t,a,l,o){const r={lvlnr:t+1+""};return o&&a.dependKey&&j(a.dependKey,((e,t)=>{r[t]=o[e]})),{params:r,...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 u(a,l){return{[A.value]:a[A.value],[H.value]:a[H.value],depth:l+1,parent:t,isLeaf:l+2>=s(e)}}function i(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=l:h.value=l}(t),await L()}const B=`form-render__cascade--menu-${l(y)}`;async function L(){await n();const e=document.querySelector(`.${B} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}function I(t,a){if(!t||!a)return!1;const{mergeItemValue:l}=a;return!(e.checkStrategy.includes("child")&&a.depth<F.value)&&(l.length>0&&l.some((e=>e.includes(t.trim()))))}const{injectValueValidate:E,injectValueWatchFromEmpty:O,injectValueBindKey:W}=v();O((()=>e.value),V),E((()=>e.value)),o((()=>e.urlConfig),(async(t,a)=>{s(t,a)||(h.value=null,w.value?e.lazyRequest||(V(),w.value=!w.value):await V())}),{immediate:!0});const z=t(!1);function N(e){z.value=!!e,e&&V()}const P=a((()=>h.value||e.options||[])),R=a((()=>!e.filterable)),U=W(x);return()=>r(d,{key:U.value,remote:R.value,filterable:e.filterable,"menu-props":{class:B,onClick:L},"check-strategy":e.checkStrategy,show:!!z.value,"onUpdate:show":N,value:x.value,filter:I,"onUpdate:value":q,labelField:A.value,valueField:H.value,options:P.value,onLoad:V,onFocus:k(b)},u)}}),i({dataSource:"options"},h));export{b as SEARCH_CASCADER};
1
+ import{defineComponent as e,ref as t,computed as a,inject as l,watch as o,createVNode as r,nextTick as n}from"vue";import{connect as u,mapProps as i}from"@formily/vue";import{isEqual as s,isArray as c,isString as p}from"lodash-es";import{NCascader as d}from"naive-ui";import"../../../index.js";import{useCommonInjection as v}from"../../hooks/useCommonInjection.js";import{InjectionChangeContextCollector as m,InjectionAsyncQueue as f,InjectionFormUUID as y}from"../../constants/index.js";import"@formily/path";import"@vueuse/core";import"../../../../../shared/utils/index.js";import"@formily/core";import"@vicons/ionicons5";import"@vue/shared";import"date-fns";import{assignUpdateValue as h,createVisitedSetter as k,traverseDependKey as j}from"../../utils/schema.js";import"../../hooks/useComplexOptions.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"@vueuse/shared";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import"./index.js";import{useFormField as g}from"../../hooks/useFormField.js";import"@formily/reactive";import"../../hooks/useFormValidator.js";const b=u(e({name:"FormCascader",props:{options:{type:Array,default:()=>[]},depth:{type:[Number,String]},urlConfig:{type:Object},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},onFocus:{type:Function},filterable:{type:Boolean,default:!1},checkStrategy:{type:String,default:"child"},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},onChange:{},value:{}},emits:["update:value"],setup(e,{slots:u,emit:i}){const h=t(),{field:b,title:C,fieldKey:S}=g(),F=t(1),w=t(!0);const A=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.nameKey)?a:e.labelField)?l:"text"})),H=a((()=>{var t,a,l;return null!=(l=null!=(a=null==(t=e.urlConfig)?void 0:t.valueKey)?a:e.valueField)?l:"value"}));l(m).setContext(S.value,(()=>({labelField:A.value,valueField:H.value})));const x=a((()=>{try{const t=Array.isArray(e.value)?e.value:JSON.parse(e.value||"");if(!Array.isArray(t)||!t.length)return null;const a=t.map((e=>e[H.value])).slice(-1).join(""),l=t.map((e=>e[A.value])).join(" / ");return a||l}catch(e){return null}}));function q(e,t,a){i("update:value",c(a)?a.map((function(e){return{...e,label:e[A.value],children:void 0,parent:void 0,mergeItemValue:void 0}})):null)}const K=l(f);async function V(t){e.filterable?await async function(){if(!e.urlConfig||h.value&&e.requestCache)return;const t=await K.addAsync({...e.urlConfig,params:{lvlnr:"1"},key:C.value,cache:e.requestCache,payload:{field:b.value,labelKey:A.value,valueKey:H.value}});function a(e,t,o){const r=[...o,...l(e)],n={[A.value]:e[A.value],[H.value]:e[H.value],depth:t+1,isLeaf:!0,keyword:e.keyword,mergeItemValue:r};return c(e.children)&&(n.children=e.children.map((e=>a(e,t+1,r))),n.isLeaf=!e.children.length),F.value=Math.max(F.value,t+1),n}function l(e){let t=[];if(p(e[A.value])&&(t=[...t,e[A.value]]),p(e.keyword)&&e.keyword.length>0){const a=e.keyword.split(",");t=[...t,...a]}return t}h.value=t.map((e=>a(e,0,[])))}():await async function(t){if(o(e,t))return;const a=await K.addAsync(r(s(t),i(e),C.value,t));if(!a.length&&t)return t.isLeaf=!0,q(0,0,n(t)),void(z.value=!1);const l=a.map((e=>u(e,s(t))));function o(e,t){return!i(e)||!t&&h.value&&e.requestCache||s(t)>=s(e)-1}function r(t,a,l,o){const r={lvlnr:t+1+""};return o&&a.dependKey&&j(a.dependKey,((e,t)=>{r[t]=o[e]})),{params:r,...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 u(a,l){return{[A.value]:a[A.value],[H.value]:a[H.value],depth:l+1,parent:t,isLeaf:l+2>=s(e)}}function i(e){return e.urlConfig}function s(e){var t;return null!=(t=null==e?void 0:e.depth)?t:-1}t?t.children=l:h.value=l}(t),await L()}const B=`form-render__cascade--menu-${l(y)}`;async function L(){await n();const e=document.querySelector(`.${B} .v-vl`);e&&e.dispatchEvent(new CustomEvent("scroll"))}function I(t,a){if(!t||!a)return!1;const{mergeItemValue:l}=a;return!(e.checkStrategy.includes("child")&&a.depth<F.value)&&(l.length>0&&l.some((e=>e.includes(t.trim()))))}const{injectValueValidate:E,injectValueWatchFromEmpty:O,injectValueBindKey:W}=v();O((()=>e.value),V),E((()=>e.value)),o((()=>e.urlConfig),(async(t,a)=>{s(t,a)||(h.value=null,w.value?e.lazyRequest||(V(),w.value=!w.value):await V())}),{immediate:!0});const z=t(!1);function N(e){z.value=!!e,e&&V()}const P=a((()=>h.value||e.options||[])),R=a((()=>!e.filterable)),U=W(x);return()=>r(d,{key:U.value,remote:R.value,filterable:e.filterable,"menu-props":{class:B,onClick:L},"check-strategy":e.checkStrategy,show:!!z.value,"onUpdate:show":N,value:x.value,filter:I,"onUpdate:value":q,labelField:A.value,valueField:H.value,options:P.value,onLoad:V,onFocus:k(b)},u)}}),i({dataSource:"options"},h));export{b as SEARCH_CASCADER};
@@ -1 +1 @@
1
- import{defineComponent as e,computed as o,inject as t,useAttrs as l,ref as a,createVNode as r,mergeProps as s,toRaw as n}from"vue";import{arrayed as u}from"../../../../../shared/utils/index.js";import{NSelect as i}from"naive-ui";import"@vueuse/core";import"date-fns";import{cloneDeep as p,isArray as m,isObject as d,omit as c,xor as v}from"lodash-es";import"@vue/shared";import{useSelectAllowModify as y}from"../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as f}from"../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{connect as h,mapProps as b}from"@formily/vue";import{useCommonInjection as j,useSelectOptionProps as S}from"../../hooks/useCommonInjection.js";import{useComplexOptions as k,useComplexOptionsSpan as g}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as C,InjectionFormUUID as F}from"../../constants/index.js";import"@formily/path";import"@formily/core";import"@vicons/ionicons5";import{assignUpdateValue as B,assignClearBindVisited as w,createVisitedSetter as A}from"../../utils/schema.js";import"@formily/reactive";import"../../../index.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"./index.js";import"@vueuse/shared";import{useFormField as H}from"../../hooks/useFormField.js";import{useUrlConfigOptions as O,useAutographOptions as K,useRecommendOptions as R}from"../../hooks/useFormRenderOptions.js";import"../../hooks/useFormValidator.js";const x=h(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"},showField:{type:String},allowCreate:Boolean,shouldSave:Boolean,allowModify:Boolean,showCustomValue:Boolean,cursorPlacement:{type:String,default:"end"},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},useLoading:{type:Boolean,default:!0},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean},searchByValue:{type:Boolean},wordSplitFilter:{}},emits:["update:value","postRecommend"],setup(e,{slots:h,emit:b}){const B=o({get:()=>e.value,async set(e){b("update:value",e),D(e)}}),{labelKey:w,valueKey:x,showKey:V,fetchData:L,searchContent:P,fullOptions:_,filterOptions:N,remoteOptions:I,loading:W}=e.urlConfig?O(e,B):K(e,B),{modifyEvent:q,modifyAbleRef:E,getOptionsWithCreated:z}=y(e,{searchContent:P,labelKey:w,valueKey:x,valueRef:B,fullOptions:_}),{renderComplexOption:M,hasComplexOption:T}=k(e,B),{getRecommend:U,postRecommend:D,sortedOptions:G}=R(e,N,b,w,x),{field:J,fieldKey:Q}=H();t(C).setContext(Q.value,(e=>({currentOption:p(function(e){const o=z(_.value);return m(e)?function(e){const t=o.reduce(((e,o)=>(e[o[x.value]]=o,e)),{});return e.map((e=>t[e]))}(e):(t=e,o.find((e=>e[x.value]===t)));var t}(e)),labelField:w.value,valueField:x.value})));const X=async e=>(P.value=e,Promise.allSettled([L(e),U(e)])),{injectValueValidate:Y,injectValueWatchFromEmpty:Z,injectValueBindKey:$}=j();Z(B,(()=>e.lazyRequest&&X())),Y(B);const ee=$(B),{menuProps:oe,nodeProps:te}=S(),{renderTag:le,renderLabel:ae,renderSelectAll:re,titleRef:se}=f(e,{labelKey:w,valueKey:x,valueRef:B,showKey:V,searchContent:P}),ne=o((()=>z(E.value?_.value:G.value))),ue=l(),ie=o((()=>{if(e.allowCreate||e.showCustomValue)return B.value;const o=e.multiple&&m(B.value);return _.value.find((e=>o?B.value.includes(e[x.value]):e[x.value]===B.value))?B.value:null})),pe=a(!1);async function me(e){e&&await X(),pe.value=e}async function de(e,o){await q.updateValue(e,o),I.value&&o&&u(o).forEach((e=>{if(!d(e))return;const o=e;o.created&&o.shouldSave&&I.value.push(c(n(o),["created","shouldSave"]))}))}const ce=t(F),{getSpan:ve}=g(),ye=A(J,q.focus);function fe(o){if(!e.multiple)return;const t=o?ne.value.map((e=>e[x.value])):[];v(t,e.value).length&&(B.value=t)}function he(o){let t=h;return e.multiple&&e.selectAll&&(t={action:()=>re(fe),...h}),r(i,s({title:se.value,key:ee.value,multiple:e.multiple,remote:!0,filterable:!0,loading:W.value,value:ie.value,onUpdateValue:de,"menu-props":oe,"node-props":te,labelField:w.value,valueField:x.value,options:ne.value,onSearch:X,show:pe.value,"onUpdate:show":me,onFocus:ye,onBlur:q.blur,renderLabel:ae,renderTag:le},o,ue),t)}return()=>{var e,o;if(!T.value)return he();const t=null!=(o=null==(e=J.value.decoratorProps)?void 0:e.span)?o:6,l=ve(ce,J.value.address);return r("section",{class:"form-render__selectChildField",style:{"--column":l+t}},[he({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),_.value.map((e=>M({option:e,value:B.value,valueKey:x.value,labelKey:w.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":l}}})))])}}}),b({dataSource:"options"},B,w));export{x as SELECT};
1
+ import{defineComponent as e,computed as o,inject as t,useAttrs as l,ref as a,createVNode as r,mergeProps as s,toRaw as n}from"vue";import{arrayed as u}from"../../../../../shared/utils/index.js";import{NSelect as i}from"naive-ui";import"@vueuse/core";import"date-fns";import{cloneDeep as p,isArray as m,isObject as d,omit as c,xor as v}from"lodash-es";import"@vue/shared";import{useSelectAllowModify as y}from"../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as f}from"../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{connect as h,mapProps as b}from"@formily/vue";import{useCommonInjection as j,useSelectOptionProps as S}from"../../hooks/useCommonInjection.js";import{useComplexOptions as k,useComplexOptionsSpan as g}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as C,InjectionFormUUID as F}from"../../constants/index.js";import"@formily/path";import"@formily/core";import"@vicons/ionicons5";import{assignUpdateValue as B,assignClearBindVisited as w,createVisitedSetter as A}from"../../utils/schema.js";import"../../../index.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"./index.js";import"@vueuse/shared";import{useFormField as H}from"../../hooks/useFormField.js";import"@formily/reactive";import{useUrlConfigOptions as O,useAutographOptions as K,useRecommendOptions as R}from"../../hooks/useFormRenderOptions.js";import"../../hooks/useFormValidator.js";const x=h(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"},showField:{type:String},allowCreate:Boolean,shouldSave:Boolean,allowModify:Boolean,showCustomValue:Boolean,cursorPlacement:{type:String,default:"end"},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},useLoading:{type:Boolean,default:!0},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean},searchByValue:{type:Boolean},wordSplitFilter:{}},emits:["update:value","postRecommend"],setup(e,{slots:h,emit:b}){const B=o({get:()=>e.value,async set(e){b("update:value",e),D(e)}}),{labelKey:w,valueKey:x,showKey:V,fetchData:L,searchContent:P,fullOptions:_,filterOptions:N,remoteOptions:I,loading:W}=e.urlConfig?O(e,B):K(e,B),{modifyEvent:q,modifyAbleRef:E,getOptionsWithCreated:z}=y(e,{searchContent:P,labelKey:w,valueKey:x,valueRef:B,fullOptions:_}),{renderComplexOption:M,hasComplexOption:T}=k(e,B),{getRecommend:U,postRecommend:D,sortedOptions:G}=R(e,N,b,w,x),{field:J,fieldKey:Q}=H();t(C).setContext(Q.value,(e=>({currentOption:p(function(e){const o=z(_.value);return m(e)?function(e){const t=o.reduce(((e,o)=>(e[o[x.value]]=o,e)),{});return e.map((e=>t[e]))}(e):(t=e,o.find((e=>e[x.value]===t)));var t}(e)),labelField:w.value,valueField:x.value})));const X=async e=>(P.value=e,Promise.allSettled([L(e),U(e)])),{injectValueValidate:Y,injectValueWatchFromEmpty:Z,injectValueBindKey:$}=j();Z(B,(()=>e.lazyRequest&&X())),Y(B);const ee=$(B),{menuProps:oe,nodeProps:te}=S(),{renderTag:le,renderLabel:ae,renderSelectAll:re,titleRef:se}=f(e,{labelKey:w,valueKey:x,valueRef:B,showKey:V,searchContent:P}),ne=o((()=>z(E.value?_.value:G.value))),ue=l(),ie=o((()=>{if(e.allowCreate||e.showCustomValue)return B.value;const o=e.multiple&&m(B.value);return _.value.find((e=>o?B.value.includes(e[x.value]):e[x.value]===B.value))?B.value:null})),pe=a(!1);async function me(e){e&&await X(),pe.value=e}async function de(e,o){await q.updateValue(e,o),I.value&&o&&u(o).forEach((e=>{if(!d(e))return;const o=e;o.created&&o.shouldSave&&I.value.push(c(n(o),["created","shouldSave"]))}))}const ce=t(F),{getSpan:ve}=g(),ye=A(J,q.focus);function fe(o){if(!e.multiple)return;const t=o?ne.value.map((e=>e[x.value])):[];v(t,e.value).length&&(B.value=t)}function he(o){let t=h;return e.multiple&&e.selectAll&&(t={action:()=>re(fe),...h}),r(i,s({title:se.value,key:ee.value,multiple:e.multiple,remote:!0,filterable:!0,loading:W.value,value:ie.value,onUpdateValue:de,"menu-props":oe,"node-props":te,labelField:w.value,valueField:x.value,options:ne.value,onSearch:X,show:pe.value,"onUpdate:show":me,onFocus:ye,onBlur:q.blur,renderLabel:ae,renderTag:le},o,ue),t)}return()=>{var e,o;if(!T.value)return he();const t=null!=(o=null==(e=J.value.decoratorProps)?void 0:e.span)?o:6,l=ve(ce,J.value.address);return r("section",{class:"form-render__selectChildField",style:{"--column":l+t}},[he({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),_.value.map((e=>M({option:e,value:B.value,valueKey:x.value,labelKey:w.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":l}}})))])}}}),b({dataSource:"options"},B,w));export{x as SELECT};
@@ -1,5 +1,4 @@
1
1
  export * from './useAnchor';
2
- export * from './useAutoHidden';
3
2
  export * from './useBusinessBinding';
4
3
  export * from './useChangeContext';
5
4
  export * from './useCommonInjection';
@@ -1 +1 @@
1
- export{useAnchor}from"./useAnchor.js";export{useAutoHidden}from"./useAutoHidden.js";export{BusinessCollector,useBusinessBinding}from"./useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./useChangeContext.js";export{useCommonInjection,useSelectOptionProps}from"./useCommonInjection.js";export{useCommonLog}from"./useCommonLog.js";export{useComplexOptions,useComplexOptionsSpan}from"./useComplexOptions.js";export{useFieldListAdaptor}from"./useFieldListAdaptor.js";export{useFieldNormalize}from"./useFieldNormalize.js";export{useFieldVisitor}from"./useFieldVisitor.js";export{useFormContext}from"./useFormContext.js";export{useFormDomEvent,useFormExposeEvent}from"./useFormEvent.js";export{useFormField}from"./useFormField.js";export{useFormGraph}from"./useFormGraph.js";export{FormItemDepsCollector,useFormItemDeps}from"./useFormItemDeps.js";export{useFormRenderLifeCycle}from"./useFormRenderLifeCycle.js";export{useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./useFormRenderOptions.js";export{useFormValidator,validateMessageLocale}from"./useFormValidator.js";export{useLowCodeEvent}from"./useLowCodeEvent.js";export{useLowCodeReactions}from"./useLowCodeReactions.js";export{useNuiThemeOverrides}from"./useNuiThemeOverrides.js";export{useOperationalForm}from"./useOperationalForm.js";export{usePresetScope}from"./usePresetScope.js";export{useWordbookSetting,wordbookSettingHandler}from"./useWordbookSetting.js";export{useNewLowCodeReactions}from"./useNewLowCodeReactions.js";export{useSelectedSetting}from"./useSelectedSetting.js";
1
+ export{useAnchor}from"./useAnchor.js";export{BusinessCollector,useBusinessBinding}from"./useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./useChangeContext.js";export{useCommonInjection,useSelectOptionProps}from"./useCommonInjection.js";export{useCommonLog}from"./useCommonLog.js";export{useComplexOptions,useComplexOptionsSpan}from"./useComplexOptions.js";export{useFieldListAdaptor}from"./useFieldListAdaptor.js";export{useFieldNormalize}from"./useFieldNormalize.js";export{useFieldVisitor}from"./useFieldVisitor.js";export{useFormContext}from"./useFormContext.js";export{useFormDomEvent,useFormExposeEvent}from"./useFormEvent.js";export{useFormField}from"./useFormField.js";export{useFormGraph}from"./useFormGraph.js";export{FormItemDepsCollector,useFormItemDeps}from"./useFormItemDeps.js";export{useFormRenderLifeCycle}from"./useFormRenderLifeCycle.js";export{useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./useFormRenderOptions.js";export{useFormValidator,validateMessageLocale}from"./useFormValidator.js";export{useLowCodeEvent}from"./useLowCodeEvent.js";export{useLowCodeReactions}from"./useLowCodeReactions.js";export{useNuiThemeOverrides}from"./useNuiThemeOverrides.js";export{useOperationalForm}from"./useOperationalForm.js";export{usePresetScope}from"./usePresetScope.js";export{useWordbookSetting,wordbookSettingHandler}from"./useWordbookSetting.js";export{useNewLowCodeReactions}from"./useNewLowCodeReactions.js";export{useSelectedSetting}from"./useSelectedSetting.js";
@@ -1 +1 @@
1
- import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,pick as n}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as i,formRenderLog as r}from"../utils/index.js";import{useFieldNormalize as l}from"./useFieldNormalize.js";import{fieldKeyEscape as s,createLinebarId as a}from"../utils/schema.js";import{useFormValidator as p}from"./useFormValidator.js";import{transformDateFormat as c}from"../utils/business.js";function d(e,o){Object.assign(e["x-component-props"],{...n(o,["wordbook","autograph"])})}function m(e,o){Object.assign(e["x-component-props"],{...n(o,["urlConfig","wordbook"])})}function u(e){return"1"===e||!0===e}function f(f,x){const{createValidatorSchema:_}=p(),h=e=>{var o;const t={name:e.val_key,type:null!=(o=e.fieldType)?o:"string",title:e.alias||e.name,"x-component":e.html_type,default:e.default_val,"x-component-props":{placeholder:e.placeholder,clearable:"0"===e.is_empty,...e.componentProps||{}},"x-content":e.slots,"x-display":"0"===e.is_show?"hidden":"visible","x-pattern":"0"===e.is_edit?"disabled":"editable","x-compile-omitted":["title","x-component-props","x-decorator-props"]};e.reactions&&(t["x-reactions"]=e.reactions),e.noDecorator||Object.assign(t,{"x-decorator":"FORM_ITEM","x-decorator-props":{fieldItem:e,beforeSetValue:null==x?void 0:x.beforeSetValue,span:2*(e.elem_width||3),showLabel:"1"!==e.hide_title,remark:e.remark,propertyKey:e.val_key,annotation:e.annotation,...e.decoratorProps||{}}});const n=_(e);return n&&(t["x-validator"]=n),"0"===e.is_null&&(t.required=!0),t},b=e=>{var o,t,r,l,s,a,p,c,f,x,_,b,g,v;const y=h(e);e.urlConfig?m(y,e):e.autograph&&d(y,e);const w=!!e.__multiple,C=u(null!=(t=null==(o=e.componentProps)?void 0:o.allowModify)?t:e.allowModify),O=u(null!=(l=null==(r=e.componentProps)?void 0:r.selectAll)?l:e.selectAll),A=u(null!=(a=null==(s=e.componentProps)?void 0:s.shouldSave)?a:e.save_free_entry),E=u(null!=(c=null==(p=e.componentProps)?void 0:p.allowCreate)?c:e.free_entry),j=null!=(x=null==(f=e.componentProps)?void 0:f.showField)?x:e.show_key,k=null!=(b=null==(_=e.componentProps)?void 0:_.options)?b:e.option,N=null!=(v=i(e.multi_select_value))?v:null==(g=e.componentProps)?void 0:g.maxTagCount;return Object.assign(y["x-component-props"],{multiple:w,options:k,allowModify:C,allowCreate:E||C,shouldSave:A,showField:j,maxTagCount:N,selectAll:O,...n(e,["lazyRequest","requestCache"])}),w&&(y.type="array"),y},g=e=>{var o,t;const n=h(e),i=null!=(t=null==(o=e.componentProps)?void 0:o.selectAll)?t:e.selectAll;return Object.assign(n["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,childWidthMode:e.childWidthMode,vertical:e.__vertical,selectAll:"1"===i||!0===i}),e.urlConfig?m(n,e):e.autograph&&d(n,e),n},v=e=>{const t=h(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},y=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{linebarTextDirection:e.linebarTextDirection,linebarDirection:e.linebarDirection,linebarWidth:e.linebarWidth,disabled:"1"===e.is_not_fold,id:a(e.val_key),show:"0"!==e.is_show,remark:e.remark},"x-content":e.slots}),w=new Map([["LINEBAR",y],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=h(e);return Object.assign(o["x-component-props"],{...n(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=h(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=h(e),{decimal_length:t,validate:n,allowSlash:r}=e;return!0!==r&&"1"!==r||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:i(null!=t?t:null==n?void 0:n.decimal_length),whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",b],["REMOTE_SEARCH",b],["DATE",e=>{const o=h(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:c(e.date_format),validate:e.validate}),o}],["TIME",e=>{const o=h(e);return Object.assign(o["x-component-props"],{format:e.date_format,type:c(e.date_format),validate:e.validate}),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=h(e);return Object.assign(o["x-component-props"],{...n(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=h(e);return Object.assign(t["x-component-props"],{urlConfig:e.urlConfig,depth:null==(o=e.wordbook)?void 0:o.level_num,options:e.option}),t}],["COMBINATION",e=>{const o=h(e);return o.type="array","table"===e.displayMode?o["x-component"]="TABLE_COMBINATION":!1!==e.jsonCombination&&(o["x-component"]="JSON_COMBINATION"),Object.assign(o["x-decorator-props"],{showLabel:!1,showFeedback:!1}),Object.assign(o["x-component-props"],{title:e.alias||e.name,maxGroupNum:e.maxGroupNum,minGroupNum:e.minGroupNum,showLabel:"1"!==e.hide_title,properties:e.children||[],combinationItemDeletable:e.combinationItemDeletable}),o}],["RADIO",g],["CHECKBOX",g],["SWITCH",e=>{const o=h(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close,showMode:e.show_mode}),o}],["SLIDER",e=>{const o=h(e);return Object.assign(o["x-component-props"],{step:i(e.step_length),max:i(e.max_length),min:i(e.min_length),option:e.option}),o}],["COMPLEX",e=>{const o=h(e);Array.isArray(e.properties)&&r("COMPLEX控件的properties属性已经废弃, 请使用children作为替代, 在之后的版本中properties属性将不再支持");const t=Array.isArray(e.properties||e.children)?j(e.properties||e.children):{};return o.type=e.fieldType||"void",o.properties=t,Object.assign(o["x-decorator-props"],{showFeedback:!1}),Object.assign(o["x-component-props"],n(e,["wrapperStyle","display"])),o}]]),C=e=>{if(e.suffixConfig)return O(e);return(w.get(e.html_type)||v)(e)},O=o=>{if(!o.suffixConfig&&!o.prefixConfig)return C(o);const t=o.suffixConfig?e(o.suffixConfig):[],n=[...(o.prefixConfig?e(o.prefixConfig):[]).map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"}))),{...o,is_show:"1",hide_title:"1",suffixConfig:void 0,prefixConfig:void 0},...t.map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"})))],i=h(o),r=n.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(i,{type:"void",name:s(n),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...i["x-decorator-props"],showFeedback:!1,suffixFields:n.map((e=>e.val_key))},properties:j(n)}),i},{FieldNormalizeWaterfallHook:A,FieldListNormalizeWaterfallHook:E}=l();function j(o,n={column:9999}){let i=null;return E.call(t(o),n).reduce(((e,o,s)=>{var a;const p=null==(a=(o=A.call(o,n)).validate)?void 0:a.obj_type;return p&&f&&f.collect(p,t(o)),"LINEBAR"===o.html_type?(e[l(o)]=r(y(o),s),i=e[l(o)].properties={}):i?i[l(o)]=r(C(o),s):(i=null,e[l(o)]=r(C(o),s)),e}),{});function r(e,o){return e["x-index"]=o,e["x-decorator-props"]={_index:o,...e["x-decorator-props"]},e}function l(o){return o.suffixConfig?s([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:j}}export{f as useFieldListAdaptor};
1
+ import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,castArray as n,pick as i}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as r,formRenderLog as l}from"../utils/index.js";import{useFieldNormalize as s}from"./useFieldNormalize.js";import{fieldKeyEscape as a,createLinebarId as p}from"../utils/schema.js";import{useFormValidator as c}from"./useFormValidator.js";import{transformDateFormat as d}from"../utils/business.js";function m(e,o){Object.assign(e["x-component-props"],{...i(o,["wordbook","autograph"])})}function u(e,o){Object.assign(e["x-component-props"],{...i(o,["urlConfig","wordbook"])})}function f(e){return"1"===e||!0===e}function x(x,_){const{createValidatorSchema:h}=c(),b=e=>{var o;const t={name:e.val_key,type:null!=(o=e.fieldType)?o:"string",title:e.alias||e.name,"x-component":e.html_type,default:e.default_val,"x-component-props":{placeholder:e.placeholder,clearable:"0"===e.is_empty,...e.componentProps||{}},"x-content":e.slots,"x-display":"0"===e.is_show?"hidden":"visible","x-pattern":"0"===e.is_edit?"disabled":"editable","x-compile-omitted":["title","x-component-props","x-decorator-props"]};e.reactions&&(t["x-reactions"]=e.reactions),e.noDecorator||Object.assign(t,{"x-decorator":"FORM_ITEM","x-decorator-props":{fieldItem:e,beforeSetValue:null==_?void 0:_.beforeSetValue,span:2*(e.elem_width||3),showLabel:"1"!==e.hide_title,remark:e.remark,propertyKey:e.val_key,annotation:e.annotation,...e.decoratorProps||{}}});const n=h(e);return n&&(t["x-validator"]=n),"0"===e.is_null&&(t.required=!0),t},v=e=>{var o,t,n,l,s,a,p,c,d,x,_,h,v,g;const y=b(e);e.urlConfig?u(y,e):e.autograph&&m(y,e);const w=!!e.__multiple,C=f(null!=(t=null==(o=e.componentProps)?void 0:o.allowModify)?t:e.allowModify),O=f(null!=(l=null==(n=e.componentProps)?void 0:n.selectAll)?l:e.selectAll),A=f(null!=(a=null==(s=e.componentProps)?void 0:s.shouldSave)?a:e.save_free_entry),E=f(null!=(c=null==(p=e.componentProps)?void 0:p.allowCreate)?c:e.free_entry),j=null!=(x=null==(d=e.componentProps)?void 0:d.showField)?x:e.show_key,k=null!=(h=null==(_=e.componentProps)?void 0:_.options)?h:e.option,N=null!=(g=r(e.multi_select_value))?g:null==(v=e.componentProps)?void 0:v.maxTagCount;return Object.assign(y["x-component-props"],{multiple:w,options:k,allowModify:C,allowCreate:E||C,shouldSave:A,showField:j,maxTagCount:N,selectAll:O,...i(e,["lazyRequest","requestCache"])}),w&&(y.type="array"),y},g=e=>{var o,t;const n=b(e),i=null!=(t=null==(o=e.componentProps)?void 0:o.selectAll)?t:e.selectAll;return Object.assign(n["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,childWidthMode:e.childWidthMode,vertical:e.__vertical,selectAll:"1"===i||!0===i}),e.urlConfig?u(n,e):e.autograph&&m(n,e),n},y=e=>{const t=b(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},w=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{linebarTextDirection:e.linebarTextDirection,linebarDirection:e.linebarDirection,linebarWidth:e.linebarWidth,disabled:"1"===e.is_not_fold,id:p(e.val_key),show:"0"!==e.is_show,remark:e.remark},"x-content":e.slots}),C=new Map([["LINEBAR",w],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=b(e);return Object.assign(o["x-component-props"],{...i(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=b(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=b(e),{decimal_length:t,validate:n,allowSlash:i}=e;return!0!==i&&"1"!==i||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:r(null!=t?t:null==n?void 0:n.decimal_length),whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",v],["REMOTE_SEARCH",v],["DATE",e=>{const o=b(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:d(e.date_format),validate:e.validate}),o}],["TIME",e=>{const o=b(e);return Object.assign(o["x-component-props"],{format:e.date_format,type:d(e.date_format),validate:e.validate}),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=b(e);return Object.assign(o["x-component-props"],{...i(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=b(e);return Object.assign(t["x-component-props"],{urlConfig:e.urlConfig,depth:null==(o=e.wordbook)?void 0:o.level_num,options:e.option}),t}],["COMBINATION",e=>{const o=b(e);return o.type="array","table"===e.displayMode?o["x-component"]="TABLE_COMBINATION":!1!==e.jsonCombination&&(o["x-component"]="JSON_COMBINATION"),Object.assign(o["x-decorator-props"],{showLabel:!1,showFeedback:!1}),Object.assign(o["x-component-props"],{title:e.alias||e.name,maxGroupNum:e.maxGroupNum,minGroupNum:e.minGroupNum,showLabel:"1"!==e.hide_title,properties:e.children||[],combinationItemDeletable:e.combinationItemDeletable}),o}],["RADIO",g],["CHECKBOX",g],["SWITCH",e=>{const o=b(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close,showMode:e.show_mode}),o}],["SLIDER",e=>{const o=b(e);return Object.assign(o["x-component-props"],{step:r(e.step_length),max:r(e.max_length),min:r(e.min_length),option:e.option}),o}],["COMPLEX",e=>{const o=b(e);Array.isArray(e.properties)&&l("COMPLEX控件的properties属性已经废弃, 请使用children作为替代, 在之后的版本中properties属性将不再支持");const t=Array.isArray(e.properties||e.children)?k(e.properties||e.children):{};return o.type=e.fieldType||"void",o.properties=t,Object.assign(o["x-decorator-props"],{showFeedback:!1}),Object.assign(o["x-component-props"],i(e,["wrapperStyle","display"])),o}]]),O=e=>{if(e.suffixConfig)return A(e);return(C.get(e.html_type)||y)(e)},A=o=>{if(!o.suffixConfig&&!o.prefixConfig)return O(o);const t=o.suffixConfig?e(o.suffixConfig):[],n=[...(o.prefixConfig?e(o.prefixConfig):[]).map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"}))),{...o,is_show:"1",hide_title:"1",suffixConfig:void 0,prefixConfig:void 0},...t.map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"})))],i=b(o),r=n.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(i,{type:"void",name:a(n),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...i["x-decorator-props"],showFeedback:!1,suffixFields:n.map((e=>e.val_key))},properties:k(n)}),i},{FieldNormalizeWaterfallHook:E,FieldListNormalizeWaterfallHook:j}=s();function k(o,i={column:9999}){let r=null;const l=j.call(t(o),i).reduce(((e,o,n)=>{var l;const a=null==(l=(o=E.call(o,i)).validate)?void 0:l.obj_type;return a&&x&&x.collect(a,t(o)),"LINEBAR"===o.html_type?(e[p(o)]=s(w(o),n),r=e[p(o)].properties={}):r?r[p(o)]=s(O(o),n):(r=null,e[p(o)]=s(O(o),n)),e}),{});return i.linebarAutoHidden&&Object.values(l).forEach((e=>{if("LINEBAR"!==e["x-component"])return;e["x-reactions"]?e["x-reactions"]=n(e["x-reactions"]):e["x-reactions"]=[];const o=Object.keys(e.properties||{}).map((o=>`${e.name}.${o}#selfDisplay`));e["x-reactions"].push({dependencies:o,fulfill:{state:{visible:"{{hasVisible($deps)}}"}}})})),l;function s(e,o){return e["x-index"]=o,e["x-decorator-props"]={_index:o,...e["x-decorator-props"]},e}function p(o){return o.suffixConfig?a([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:k}}export{x as useFieldListAdaptor};
@@ -13,7 +13,7 @@ export declare function useFormExposeEvent({ formModel, formRenderRef, formUUID,
13
13
  operationalFormHandler: ReturnType<typeof useOperationalForm>;
14
14
  changeContextCollector: ContextCollector;
15
15
  emitFormChange: Ref<boolean>;
16
- }): Omit<FormRenderExpose, 'formModel' | 'reload' | 'getFieldList'>;
16
+ }): Omit<FormRenderExpose, 'formModel' | 'reload' | 'getFieldList' | 'optionInited'>;
17
17
  export declare function useFormDomEvent({ props, formRenderRef, formModel, formUUID }: {
18
18
  props: FormRenderProps;
19
19
  formRenderRef: Ref<HTMLElement | undefined>;
@@ -1 +1 @@
1
- import{arrayed as e,findAncestor as t,targetStringIncludes as r}from"../../../../shared/utils/index.js";import{isField as o}from"@formily/core";import{Path as n}from"@formily/path";import{isObject as i}from"@vue/shared";import{promiseTimeout as a}from"@vueuse/shared";import{isFunction as s,isArray as d,isString as l}from"lodash-es";import{nextTick as u}from"vue";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as c}from"../constants/index.js";import{formValueFormatter as m}from"../utils/valueFormatter.js";import{queryDecoratorByAddress as f,queryInput as p,queryDecoratorByFieldKey as g,findNextWidget as v}from"../utils/dom.js";import{validateMessageParser as y,combineExtendKey as h,splitExtendKey as S}from"../utils/index.js";import{getParentLinebar as b}from"../utils/schema.js";import{useSelectedSetting as x}from"./useSelectedSetting.js";function F({formModel:t,formRenderRef:r,formUUID:a,getFieldList:c,formItemDepsCollector:v,businessCollector:F,wordbookSettingHandler:C,operationalFormHandler:E,changeContextCollector:D,emitFormChange:I}){const{applySelectedSetting:j}=x();return{validate(n,{force:u}={}){if(null==n&&(n="*"),s(n)){const e=Object.entries(t.fields).reduce(((e,[t,r])=>(n(r)&&e.push(t),e)),[]);if(!e.length)return Promise.resolve();n=e.length?`*(${e.join(",")})`:"*"}const c=[];u&&t.setFieldState(n,(e=>{"visible"===e.display&&"editable"!==e.pattern&&o(e)&&(c.push({pattern:e.pattern,state:e}),e.pattern="editable")}));const m=t.validate(n).catch((e=>Promise.reject(Array.isArray(e)?e.reduce(g,[]):e)));return u&&c.forEach((({pattern:e,state:t})=>t.pattern=e)),m;function g(t,r){if(!i(r))return t;let o=!1;return d(r.messages)&&r.messages.forEach((r=>{i(r)&&(t.push(...e(r).map(v)),o=!0)})),!o&&t.push(v(r)),t}function v(e){if(e.decoratorElement)return e;const o=t.query(e.path),n=o.get("title"),s=e.messages.map((e=>function(e,t){if(!t||!i(t.fieldItem))return e;const r=t.fieldItem.defined_error_msg;return y(r&&l(r)?r:e,t.fieldItem)}(e,o.get("decoratorProps")))),d=f(e.address,r.value,a);return{...e,messages:s,title:n,decoratorElement:d,...p(d)}}},getFormValues(e=!0){let r=t.getFormState().values;return e&&(r=h(c(),r)),r},async setFormValues(e,r){r=Object.assign({avoidDependKeyConnection:!0,needSplitExtendKey:!0,avoidWordbookSettingConnection:!0,avoidOperationalFormConnection:!0,dependKeyKeepValue:!1,avoidBusinessConnection:!1,avoidFormChangeEvent:!1,overwrite:!0},r),F.triggerDisabled=r.avoidBusinessConnection,v.triggerDisabled=r.avoidDependKeyConnection,v.keepValue=r.dependKeyKeepValue,C.triggerDisabled=r.avoidWordbookSettingConnection,E.triggerDisabled=r.avoidOperationalFormConnection,r.needSplitExtendKey&&(e=S(c(),e)),r.avoidFormChangeEvent&&(I.value=!1),t.setFieldState("*",(t=>{o(t)&&(r.overwrite||n.existIn(e,t.path))&&(t.value=n.getIn(e,t.path))})),await u(),I.value=!0,F.triggerDisabled=!1,v.triggerDisabled=!1,C.triggerDisabled=!1,E.triggerDisabled=!1,v.keepValue=!1},setFieldState(e,r){t.setFieldState(e,r)},resetFields:(e="*")=>t.reset(e),queryWidget:e=>async function(e,t,o){if(!r.value)return d();const i=g(e,t,a);if(i)return d(i);const s=b(e,o);return s?(v.trigger(n.parse(s),!0),await u(),d(g(e,t,a))):d();function d(e){return{decoratorElement:e,...p(e)}}}(e,r.value,c()),applySelectedSetting(e){const r=t.getFormState().values;j(r,e,((e,r)=>{t.setFieldState(e,(e=>{o(e)&&e.setValue(r)}))}))},getTextFormValues:()=>m(t,D)}}function C({props:e,formRenderRef:o,formModel:n,formUUID:i}){return{onKeydown:async function d(l){var u;if(!l.isComposing)if("Enter"===l.code){if(e.enterToNextWidget&&l.target){if("TEXTAREA"===l.target.tagName&&!l.ctrlKey)return;l.preventDefault()}if(await a(0),Reflect.get(l,"stopCapture")||!e.enterToNextWidget||!o.value)return;const r=t(l.target,(e=>e.classList.contains("form-render__formItem")));if(!r)return;const i=`.form-render__formItem${c.map((e=>`:not([widget-type=${e}])`)).join("")}`,f=Array.from(o.value.querySelectorAll(i)),p=f.findIndex((e=>e.id===r.id));if(!~p)return;const{widget:g,field:y}=v(f,p,l.target);if(!g)return;if(s(e.enterToNextWidget)){const t=y&&n.query(y).take();!t||e.enterToNextWidget(null==(u=t.decoratorProps)?void 0:u.fieldItem)?m(g,e.autoExpand):d({target:g,code:"Enter"})}else m(g,e.autoExpand)}else if("Tab"===l.code){if(!e.autoExpand)return;await a(0);const t=document.querySelector(":focus");if(!t)return;m(t,!0)}async function m(e,o){if(await a(0),e.focus(),!o)return;if(!t(e,(e=>e.getAttribute("uuid")===i)))return;if(!r(["radio","checkbox"],e.className))if(e.click(),"INPUT"!==e.tagName){const t=e.querySelector("input");if(!t)return;t.focus(),n(t)}else n(e);function n(e){if("INPUT"!==e.tagName)return;const t=e.value;t&&t.match(/^\d{4}-\d{2}/)&&e.setSelectionRange(0,4)}}}}}export{C as useFormDomEvent,F as useFormExposeEvent};
1
+ import{arrayed as e,findAncestor as t,targetStringIncludes as r}from"../../../../shared/utils/index.js";import{isField as o}from"@formily/core";import{Path as i}from"@formily/path";import{isObject as n}from"@vue/shared";import{promiseTimeout as a}from"@vueuse/shared";import{isFunction as s,isArray as l,castArray as d,isString as u}from"lodash-es";import{nextTick as c}from"vue";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as m}from"../constants/index.js";import{formValueFormatter as f}from"../utils/valueFormatter.js";import{queryDecoratorByAddress as p,queryInput as g,queryDecoratorByFieldKey as v,findNextWidget as y}from"../utils/dom.js";import{validateMessageParser as h,combineExtendKey as S,splitExtendKey as b,isEnter as x}from"../utils/index.js";import{getParentLinebar as F}from"../utils/schema.js";import{useSelectedSetting as C}from"./useSelectedSetting.js";function E({formModel:t,formRenderRef:r,formUUID:a,getFieldList:m,formItemDepsCollector:y,businessCollector:x,wordbookSettingHandler:E,operationalFormHandler:D,changeContextCollector:I,emitFormChange:j}){const{applySelectedSetting:w}=C();return{validate(i,{force:c}={}){if(null==i&&(i="*"),s(i)){const e=Object.entries(t.fields).reduce(((e,[t,r])=>(i(r)&&e.push(t),e)),[]);if(!e.length)return Promise.resolve();i=e.length?`*(${e.join(",")})`:"*"}const m=[];c&&t.setFieldState(i,(e=>{"visible"===e.display&&"editable"!==e.pattern&&o(e)&&(m.push({pattern:e.pattern,state:e}),e.pattern="editable")}));const f=t.validate(i).catch((e=>Promise.reject(Array.isArray(e)?e.reduce(v,[]):e)));return c&&m.forEach((({pattern:e,state:t})=>t.pattern=e)),f;function v(t,r){if(!n(r))return t;let o=!1;return l(r.messages)&&r.messages.forEach((r=>{n(r)&&(t.push(...e(r).map(y)),o=!0)})),!o&&t.push(y(r)),t}function y(e){if(e.decoratorElement)return e;const o=t.query(e.path),i=o.get("title"),s=d(e.messages).map((e=>function(e,t){if(!t||!n(t.fieldItem))return e;const r=t.fieldItem.defined_error_msg;return h(r&&u(r)?r:e,t.fieldItem)}(e,o.get("decoratorProps")))),l=p(e.address,r.value,a);return{...e,messages:s,title:i,decoratorElement:l,...g(l)}}},getFormValues(e=!0){let r=t.getFormState().values;return e&&(r=S(m(),r)),r},async setFormValues(e,r){r=Object.assign({avoidDependKeyConnection:!0,needSplitExtendKey:!0,avoidWordbookSettingConnection:!0,avoidOperationalFormConnection:!0,dependKeyKeepValue:!1,avoidBusinessConnection:!1,avoidFormChangeEvent:!1,overwrite:!0},r),x.triggerDisabled=r.avoidBusinessConnection,y.triggerDisabled=r.avoidDependKeyConnection,y.keepValue=r.dependKeyKeepValue,E.triggerDisabled=r.avoidWordbookSettingConnection,D.triggerDisabled=r.avoidOperationalFormConnection,r.needSplitExtendKey&&(e=b(m(),e)),r.avoidFormChangeEvent&&(j.value=!1),t.setFieldState("*",(t=>{o(t)&&(r.overwrite||i.existIn(e,t.path))&&(t.value=i.getIn(e,t.path))})),await c(),j.value=!0,x.triggerDisabled=!1,y.triggerDisabled=!1,E.triggerDisabled=!1,D.triggerDisabled=!1,y.keepValue=!1},setFieldState(e,r){t.setFieldState(e,r)},resetFields:(e="*")=>t.reset(e),queryWidget:e=>async function(e,t,o){if(!r.value)return l();const n=v(e,t,a);if(n)return l(n);const s=F(e,o);return s?(y.trigger(i.parse(s),!0),await c(),l(v(e,t,a))):l();function l(e){return{decoratorElement:e,...g(e)}}}(e,r.value,m()),applySelectedSetting(e){const r=t.getFormState().values;w(r,e,((e,r)=>{t.setFieldState(e,(e=>{o(e)&&e.setValue(r)}))}))},getTextFormValues:()=>f(t,I)}}function D({props:e,formRenderRef:o,formModel:i,formUUID:n}){return{onKeydown:async function l(d){var u;if(!d.isComposing)if(x(d)){if(e.enterToNextWidget&&d.target){if("TEXTAREA"===d.target.tagName&&!d.ctrlKey)return;d.preventDefault()}if(await a(0),Reflect.get(d,"stopCapture")||!e.enterToNextWidget||!o.value)return;const r=t(d.target,(e=>e.classList.contains("form-render__formItem")));if(!r)return;const n=`.form-render__formItem${m.map((e=>`:not([widget-type=${e}])`)).join("")}`,f=Array.from(o.value.querySelectorAll(n)),p=f.findIndex((e=>e.id===r.id));if(!~p)return;const{widget:g,field:v}=y(f,p,d.target);if(!g)return;if(s(e.enterToNextWidget)){const t=v&&i.query(v).take();!t||e.enterToNextWidget(null==(u=t.decoratorProps)?void 0:u.fieldItem)?c(g,e.autoExpand):l({target:g,code:"Enter"})}else c(g,e.autoExpand)}else if("Tab"===d.code){if(!e.autoExpand)return;await a(0);const t=document.querySelector(":focus");if(!t)return;c(t,!0)}async function c(e,o){if(await a(0),e.focus(),!o)return;if(!t(e,(e=>e.getAttribute("uuid")===n)))return;if(!r(["radio","checkbox"],e.className))if(e.click(),"INPUT"!==e.tagName){const t=e.querySelector("input");if(!t)return;t.focus(),i(t)}else i(e);function i(e){if("INPUT"!==e.tagName)return;const t=e.value;t&&t.match(/^\d{4}-\d{2}/)&&e.setSelectionRange(0,4)}}}}}export{D as useFormDomEvent,E as useFormExposeEvent};
@@ -3,4 +3,5 @@ export declare function usePresetScope(): {
3
3
  isMobile(value: unknown): boolean;
4
4
  isEmail(value: unknown): boolean;
5
5
  isNumber(value: unknown): boolean;
6
+ hasVisible(visibleStates: string[]): boolean;
6
7
  };
@@ -1 +1 @@
1
- import{isString as i}from"lodash-es";import"vue";import"../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import"@vueuse/core";import"naive-ui";import{isIdCard as o,isMobile as r}from"../utils/business.js";function s(){return{isIdCard:r=>i(r)&&o(r),isMobile:o=>i(o)&&r(o),isEmail:o=>i(o)&&/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(o),isNumber:o=>i(o)&&/\d+/.test(o)}}export{s as usePresetScope};
1
+ import{isString as i,isEmpty as o}from"lodash-es";import"vue";import"../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import"@vueuse/core";import"naive-ui";import{isIdCard as s,isMobile as r}from"../utils/business.js";function e(){return{isIdCard:o=>i(o)&&s(o),isMobile:o=>i(o)&&r(o),isEmail:o=>i(o)&&/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(o),isNumber:o=>i(o)&&/\d+/.test(o),hasVisible:i=>!o(i)&&i.some((i=>!i||"visible"===i))}}export{e as usePresetScope};
@@ -97,9 +97,12 @@ export type FormRenderExpose = {
97
97
  /**
98
98
  * @desc 完全重置表单
99
99
  */
100
- reload(): Promise<any>;
100
+ reload(): Promise<void>;
101
101
  applySelectedSetting(settings: LowCodeTypes.selectedSettingConfig[]): void;
102
102
  getTextFormValues(): AnyObject;
103
+ optionInited(options?: Partial<{
104
+ timeout: number;
105
+ }>): Promise<void>;
103
106
  };
104
107
  export type FormChangeContext = Partial<{
105
108
  currentOption: AnyObject;
@@ -29,3 +29,4 @@ export declare function replace2Any(str: string, replacer: {
29
29
  from: string;
30
30
  to: any;
31
31
  }[]): any[];
32
+ export declare function isEnter(event: KeyboardEvent): boolean;
@@ -1 +1 @@
1
- import{inject as t,provide as n,computed as e,createVNode as r,Fragment as o}from"vue";import{traverse as i,arrayed as u}from"../../../../shared/utils/index.js";import{isGeneralField as c}from"@formily/core";import{Path as f}from"@formily/path";import{HelpCircleSharp as s}from"@vicons/ionicons5";import{isObject as l}from"@vue/shared";import{useMemoize as p}from"@vueuse/core";import{isString as a,isFunction as d,omit as E,castArray as T,flattenDeep as h}from"lodash-es";import{NTooltip as m,NIcon as R}from"naive-ui";import{NESTED_FORM_ITEM_TYPE as v}from"../constants/index.js";import"date-fns";function x(t){console.warn(`[FormRender]: ${t}`)}function y(t,n,e=["children","properties","suffixConfig"],r="val_key",o="default_val"){return function t(n,r){r.forEach((r=>{l(r)&&(null!=c(r)&&null==n[i(r)]&&f.setIn(n,i(r),c(r)),e.forEach((e=>{r[e]&&(n[i(r)]||(n[i(r)]={}),t(n[i(r)],u(r[e])))})))}))}(t,n),t;function i(t){return t[r]}function c(t){return t[o]}}function g(e,r){let o=t(e,null);return o||(o=r(),n(e,o)),o}function I(t){return t&&a(t)?+t:t}function A(t,n,e){if(l(t)&&!d(t)){const e={};return Object.entries(t).forEach((([t,r])=>{d(r)&&(e[t]=()=>r(n))})),e}return{default:()=>d(t)?t(n):e?e(t):[t]}}function W(t,n){return e((()=>{const e={};return t.prefix&&(e.prefix=()=>r(o,null,[A(t.prefix,t,n).default()])),t.suffix&&(e.suffix=()=>r(o,null,[A(t.suffix,t,n).default()])),e}))}function _(t,n){return a(t)&&t?t.replace(/\$\{([^}]*)}/g,(function(t,e){const r=e.split("||");for(const t of r){const e=n[t.trim()];if(e)return e}return""})):""}function D(t){return t.reduce(((t,n)=>(a(n.extendKey)&&n.extendKey&&t.push(n),$(n)&&t.push(...D(n.children||[])),t)),[])}function G(t,n){const e=D(t);if(!e.length)return n;const r={},o=new Map;return Object.entries(n).forEach((([t,i])=>{const u=e.find((n=>n.val_key===t));if(!u)return r[t]=i;const{val_key:c,extendKey:f}=u,s=o.get(f)||{};o.set(f,s),s[c]=n[c]})),[...o.entries()].forEach((([t,n])=>{r[t]=JSON.stringify(n)})),r}function P(t,n){const e=D(t);if(!e.length)return n;const r=p((t=>{try{return l(n[t])?n[t]:JSON.parse(n[t])||{}}catch(t){return{}}})),o=E(n,e.map((t=>t.extendKey)));return e.forEach((({val_key:t,extendKey:n})=>{Reflect.has(o,t)||(o[t]=r(n)[t])})),o}function S(t){return t&&v.includes(t)}function $(t){return S(c(t)?t.componentType:t.html_type)}function w(t,n){return r("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[t,n.desc?r(m,null,{trigger:()=>r(R,{component:s},null),default:()=>n.desc}):null])}function K(t,n){return f.parse(t.startsWith(".")?t:`.${t}`,n).toString()}function X(t){return t.replace(/&lt;/g,"<").replace(/&gt;/g,">")}function j(t,n){return t.reduce(((t,e)=>(n(e)||(t.push(e),e.properties&&(e.properties=j(e.properties,n)),e.children&&(e.children=j(e.children,n))),t)),[])}function k(t,n){let e=null;return i(t,((t,r)=>{n(t)&&(e=t,r())}),["children","properties"]),e}var O=function(t){return t[t.PREPARE=0]="PREPARE",t[t.TEXT=1]="TEXT",t[t.WIDGET_START=2]="WIDGET_START",t[t.WIDGET=3]="WIDGET",t}(O||{});function b(t){const n=[...t],e=[];let r=O.PREPARE,o="";function i(t){switch(r=t,r){case O.PREPARE:case O.WIDGET_START:case O.WIDGET:o=""}}function u(t="text",n=o){e.push({type:t,content:n})}function c(){const t=e.pop();t&&("text"===t.type?o=t.content:e.push(t))}return n.forEach(((t,e)=>{const f=e===n.length-1;switch(r){case O.PREPARE:return"#"===t?(i(O.WIDGET_START),void(f&&u())):(i(O.TEXT),o=t,void(f&&u()));case O.TEXT:return"#"===t?void(f?(o+=t,u()):(u(),i(O.WIDGET_START))):(o+=t,void(f&&u()));case O.WIDGET_START:return"{"!==t||f?(c(),i(O.TEXT),o+=`#${t}`,void(f&&u())):void i(O.WIDGET);case O.WIDGET:return"}"===t?(u("widget"),void i(O.PREPARE)):"#"===t?(c(),u(),i(O.WIDGET_START),o+=`#${t}`,void(f&&u())):(o+=t,void(f&&u("text",`#{${o}`)))}})),e}function J(t,n){let e=T(t);return n.forEach((({from:t,to:n})=>{e.forEach(((r,o)=>{a(r)&&(e[o]=r.split(t).map(((t,e,r)=>[t,e<r.length-1?n:null])))})),e=h(e)})),e}export{j as FieldListFilter,G as combineExtendKey,W as createInputSlot,A as createSlot,X as editorUnescape,k as findItemByValCondition,x as formRenderLog,K as getAbsoluteKey,g as injectOrProvide,$ as isNestedFieldType,S as isNestedType,y as mergeDeepProperties,b as parseEnhanceText,I as parseNumberFromMaybeString,w as renderDescOption,J as replace2Any,P as splitExtendKey,_ as validateMessageParser};
1
+ import{inject as t,provide as n,computed as e,createVNode as r,Fragment as o}from"vue";import{traverse as i,arrayed as u}from"../../../../shared/utils/index.js";import{isGeneralField as c}from"@formily/core";import{Path as f}from"@formily/path";import{HelpCircleSharp as s}from"@vicons/ionicons5";import{isObject as l}from"@vue/shared";import{useMemoize as p}from"@vueuse/core";import{isString as a,isFunction as d,omit as E,castArray as T,flattenDeep as h}from"lodash-es";import{NTooltip as m,NIcon as R}from"naive-ui";import{NESTED_FORM_ITEM_TYPE as v}from"../constants/index.js";import"date-fns";function x(t){console.warn(`[FormRender]: ${t}`)}function y(t,n,e=["children","properties","suffixConfig"],r="val_key",o="default_val"){return function t(n,r){r.forEach((r=>{l(r)&&(null!=c(r)&&null==n[i(r)]&&f.setIn(n,i(r),c(r)),e.forEach((e=>{r[e]&&(n[i(r)]||(n[i(r)]={}),t(n[i(r)],u(r[e])))})))}))}(t,n),t;function i(t){return t[r]}function c(t){return t[o]}}function g(e,r){let o=t(e,null);return o||(o=r(),n(e,o)),o}function I(t){return t&&a(t)?+t:t}function A(t,n,e){if(l(t)&&!d(t)){const e={};return Object.entries(t).forEach((([t,r])=>{d(r)&&(e[t]=()=>r(n))})),e}return{default:()=>d(t)?t(n):e?e(t):[t]}}function W(t,n){return e((()=>{const e={};return t.prefix&&(e.prefix=()=>r(o,null,[A(t.prefix,t,n).default()])),t.suffix&&(e.suffix=()=>r(o,null,[A(t.suffix,t,n).default()])),e}))}function _(t,n){return a(t)&&t?t.replace(/\$\{([^}]*)}/g,(function(t,e){const r=e.split("||");for(const t of r){const e=n[t.trim()];if(e)return e}return""})):""}function D(t){return t.reduce(((t,n)=>(a(n.extendKey)&&n.extendKey&&t.push(n),$(n)&&t.push(...D(n.children||[])),t)),[])}function G(t,n){const e=D(t);if(!e.length)return n;const r={},o=new Map;return Object.entries(n).forEach((([t,i])=>{const u=e.find((n=>n.val_key===t));if(!u)return r[t]=i;const{val_key:c,extendKey:f}=u,s=o.get(f)||{};o.set(f,s),s[c]=n[c]})),[...o.entries()].forEach((([t,n])=>{r[t]=JSON.stringify(n)})),r}function P(t,n){const e=D(t);if(!e.length)return n;const r=p((t=>{try{return l(n[t])?n[t]:JSON.parse(n[t])||{}}catch(t){return{}}})),o=E(n,e.map((t=>t.extendKey)));return e.forEach((({val_key:t,extendKey:n})=>{Reflect.has(o,t)||(o[t]=r(n)[t])})),o}function S(t){return t&&v.includes(t)}function $(t){return S(c(t)?t.componentType:t.html_type)}function w(t,n){return r("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[t,n.desc?r(m,null,{trigger:()=>r(R,{component:s},null),default:()=>n.desc}):null])}function K(t,n){return f.parse(t.startsWith(".")?t:`.${t}`,n).toString()}function X(t){return t.replace(/&lt;/g,"<").replace(/&gt;/g,">")}function j(t,n){return t.reduce(((t,e)=>(n(e)||(t.push(e),e.properties&&(e.properties=j(e.properties,n)),e.children&&(e.children=j(e.children,n))),t)),[])}function k(t,n){let e=null;return i(t,((t,r)=>{n(t)&&(e=t,r())}),["children","properties"]),e}var O=function(t){return t[t.PREPARE=0]="PREPARE",t[t.TEXT=1]="TEXT",t[t.WIDGET_START=2]="WIDGET_START",t[t.WIDGET=3]="WIDGET",t}(O||{});function N(t){const n=[...t],e=[];let r=O.PREPARE,o="";function i(t){switch(r=t,r){case O.PREPARE:case O.WIDGET_START:case O.WIDGET:o=""}}function u(t="text",n=o){e.push({type:t,content:n})}function c(){const t=e.pop();t&&("text"===t.type?o=t.content:e.push(t))}return n.forEach(((t,e)=>{const f=e===n.length-1;switch(r){case O.PREPARE:return"#"===t?(i(O.WIDGET_START),void(f&&u())):(i(O.TEXT),o=t,void(f&&u()));case O.TEXT:return"#"===t?void(f?(o+=t,u()):(u(),i(O.WIDGET_START))):(o+=t,void(f&&u()));case O.WIDGET_START:return"{"!==t||f?(c(),i(O.TEXT),o+=`#${t}`,void(f&&u())):void i(O.WIDGET);case O.WIDGET:return"}"===t?(u("widget"),void i(O.PREPARE)):"#"===t?(c(),u(),i(O.WIDGET_START),o+=`#${t}`,void(f&&u())):(o+=t,void(f&&u("text",`#{${o}`)))}})),e}function b(t,n){let e=T(t);return n.forEach((({from:t,to:n})=>{e.forEach(((r,o)=>{a(r)&&(e[o]=r.split(t).map(((t,e,r)=>[t,e<r.length-1?n:null])))})),e=h(e)})),e}function J(t){return"Enter"===t.code||"NumpadEnter"===t.code}export{j as FieldListFilter,G as combineExtendKey,W as createInputSlot,A as createSlot,X as editorUnescape,k as findItemByValCondition,x as formRenderLog,K as getAbsoluteKey,g as injectOrProvide,J as isEnter,$ as isNestedFieldType,S as isNestedType,y as mergeDeepProperties,N as parseEnhanceText,I as parseNumberFromMaybeString,w as renderDescOption,b as replace2Any,P as splitExtendKey,_ as validateMessageParser};