cnhis-design-vue 3.1.53-beta.2 → 3.1.53-hotfix.0

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 (138) hide show
  1. package/README.md +87 -87
  2. package/es/components/annotation-edit/src/AnnotationEdit.js +1 -1
  3. package/es/components/big-table/src/components/edit-form/edit-separate.vue.d.ts +4 -4
  4. package/es/components/big-table/src/hooks/useEdit.d.ts +4 -4
  5. package/es/components/big-table/src/hooks/useSeparateRow.d.ts +4 -4
  6. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  7. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  8. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  9. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  10. package/es/components/button-print/src/ButtonPrint.vue.d.ts +1 -3
  11. package/es/components/button-print/src/utils/dialog.d.ts +2 -2
  12. package/es/components/button-print/src/utils/print.d.ts +13 -14
  13. package/es/components/button-print/src/utils/print.js +1 -1
  14. package/es/components/callback/src/components/render/popupMaps.d.ts +5 -44
  15. package/es/components/card-reader-sdk/src/cardReaderSDK.js +1 -1
  16. package/es/components/card-reader-sdk/src/types/index.d.ts +3 -3
  17. package/es/components/date-picker/src/DatePicker.vue2.js +1 -1
  18. package/es/components/expand-field/src/components/form.vue2.js +1 -1
  19. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
  20. package/es/components/form-config/index.d.ts +24 -24
  21. package/es/components/form-config/src/FormConfig.vue.d.ts +25 -25
  22. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  23. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +5 -5
  24. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +11 -11
  25. package/es/components/form-config/src/components/FormConfigEventSetting.vue2.js +1 -1
  26. package/es/components/form-render/index.d.ts +5 -5
  27. package/es/components/form-render/index.js +1 -1
  28. package/es/components/form-render/src/FormRender.vue.d.ts +6 -6
  29. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  30. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +6 -6
  31. package/es/components/form-render/src/components/renderer/index.js +1 -1
  32. package/es/components/form-render/src/components/renderer/inputNumber.d.ts +5 -5
  33. package/es/components/form-render/src/components/renderer/{levelSearchCascader/index.d.ts → levelSearchCascader.d.ts} +5 -3
  34. package/es/components/form-render/src/components/renderer/levelSearchCascader.js +1 -0
  35. package/es/components/form-render/src/components/renderer/searchCascade.d.ts +3 -3
  36. package/es/components/form-render/src/components/renderer/select.d.ts +3 -3
  37. package/es/components/form-render/src/components/renderer/select.js +1 -1
  38. package/es/components/form-render/src/constants/index.d.ts +2 -3
  39. package/es/components/form-render/src/hooks/index.d.ts +2 -0
  40. package/es/components/form-render/src/hooks/index.js +1 -1
  41. package/es/components/form-render/src/hooks/useAnchor.d.ts +3 -3
  42. package/es/components/form-render/src/hooks/useCommonInjection.d.ts +2 -2
  43. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +2 -2
  44. package/es/components/form-render/src/hooks/useFormAsyncQueue.d.ts +16 -0
  45. package/es/components/form-render/src/hooks/useFormAsyncQueue.js +1 -0
  46. package/es/components/form-render/src/hooks/useFormContext.d.ts +3 -3
  47. package/es/components/form-render/src/hooks/useFormContext.js +1 -1
  48. package/es/components/form-render/src/hooks/useFormItemDeps.d.ts +3 -3
  49. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +4 -5
  50. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  51. package/es/components/form-render/src/hooks/useFormRequest.d.ts +26 -0
  52. package/es/components/form-render/src/hooks/useFormRequest.js +1 -0
  53. package/es/components/form-render/src/types/fieldItem.d.ts +26 -4
  54. package/es/components/form-render/src/types/index.d.ts +13 -2
  55. package/es/components/form-render/src/utils/index.d.ts +2 -1
  56. package/es/components/form-render/src/utils/index.js +1 -1
  57. package/es/components/form-render/src/utils/schema.d.ts +2 -2
  58. package/es/components/guide/src/renderer.js +1 -1
  59. package/es/components/iho-table/index.d.ts +0 -39
  60. package/es/components/iho-table/src/IhoTable.vue.d.ts +0 -40
  61. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  62. package/es/components/iho-table/src/constants/index.d.ts +1 -4
  63. package/es/components/iho-table/src/constants/index.js +1 -1
  64. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +2 -2
  65. package/es/components/iho-table/src/hooks/tapHooks/useExposeHooks.d.ts +2 -2
  66. package/es/components/iho-table/src/plugins/defaultValuePlugin.js +1 -1
  67. package/es/components/iho-table/src/plugins/index.js +1 -1
  68. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +2 -2
  69. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useAutoFocus.js +1 -1
  70. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  71. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/editSeparate.vue.d.ts +2 -2
  72. package/es/components/iho-table/src/types/index.d.ts +2 -7
  73. package/es/components/iho-table/src/types/pluginType.d.ts +3 -3
  74. package/es/components/iho-table/style/index.css +1 -1
  75. package/es/components/index.css +1 -1
  76. package/es/components/index.d.ts +0 -1
  77. package/es/components/index.js +1 -1
  78. package/es/components/info-header/index.d.ts +27 -27
  79. package/es/components/info-header/src/InfoHeader.vue.d.ts +28 -28
  80. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +5 -5
  81. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +6 -6
  82. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +12 -12
  83. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +5 -5
  84. package/es/components/keyboard/src/Keyboard.vue2.js +1 -1
  85. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  86. package/es/components/search-cascader/index.d.ts +3 -23
  87. package/es/components/search-cascader/src/SearchCascader.vue.d.ts +4 -24
  88. package/es/components/search-cascader/src/SearchCascader.vue2.js +1 -1
  89. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  90. package/es/components/select-person/src/SearchMultiple.vue.d.ts +0 -6
  91. package/es/components/shortcut-setter/index.d.ts +8 -8
  92. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +9 -9
  93. package/es/components/steps-wheel/src/StepsWheel.vue2.js +1 -1
  94. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +3 -0
  95. package/es/components/time-picker/src/TimePicker.vue2.js +1 -1
  96. package/es/env.d.ts +25 -25
  97. package/es/shared/assets/img/failure.png.js +1 -1
  98. package/es/shared/assets/img/no-permission.png.js +1 -1
  99. package/es/shared/assets/img/nodata.png.js +1 -1
  100. package/es/shared/assets/img/notfound.png.js +1 -1
  101. package/es/shared/assets/img/qr.png.js +1 -1
  102. package/es/shared/assets/img/success.png.js +1 -1
  103. package/es/shared/assets/img/video.png.js +1 -1
  104. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  105. package/es/shared/assets/img/xb_big.png.js +1 -1
  106. package/es/shared/assets/img/xb_small.png.js +1 -1
  107. package/es/shared/components/InputNumberSlash/InputNumberSlash.d.ts +4 -4
  108. package/es/shared/components/SlotRender/SlotRender.d.ts +5 -5
  109. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  110. package/es/shared/hooks/index.d.ts +0 -2
  111. package/es/shared/hooks/index.js +1 -1
  112. package/es/shared/hooks/{useAsyncQueue/index.d.ts → useAsyncQueue.d.ts} +15 -7
  113. package/es/shared/hooks/useAsyncQueue.js +1 -0
  114. package/es/shared/hooks/useDateTime.d.ts +2 -2
  115. package/es/shared/package.json.js +1 -1
  116. package/es/shared/types/business.d.ts +0 -24
  117. package/es/shared/types/index.d.ts +1 -1
  118. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  119. package/es/shared/utils/tapable/index.d.ts +139 -0
  120. package/package.json +2 -2
  121. package/es/components/form-render/src/components/renderer/levelSearchCascader/index.js +0 -1
  122. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.d.ts +0 -1
  123. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.js +0 -1
  124. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/levelSearchCascade.vue.d.ts +0 -552
  125. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/levelSearchCascade.vue.js +0 -1
  126. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/levelSearchCascade.vue2.js +0 -1
  127. package/es/components/iho-table/src/plugins/wordbookSettingPlugin.d.ts +0 -1
  128. package/es/components/iho-table/src/plugins/wordbookSettingPlugin.js +0 -1
  129. package/es/components/search-cascader/src/components/ClearIcon.vue.js +0 -1
  130. package/es/shared/hooks/useAsyncQueue/index.js +0 -1
  131. package/es/shared/hooks/useAsyncQueue/types.d.ts +0 -20
  132. package/es/shared/hooks/useAsyncQueue/types.js +0 -1
  133. package/es/shared/hooks/useFormRequest/index.d.ts +0 -24
  134. package/es/shared/hooks/useFormRequest/index.js +0 -1
  135. package/es/shared/hooks/useFormRequest/types.d.ts +0 -39
  136. package/es/shared/hooks/useFormRequest/types.js +0 -1
  137. package/es/shared/hooks/useLevelSearchCascader.d.ts +0 -31
  138. package/es/shared/hooks/useLevelSearchCascader.js +0 -1
@@ -137,7 +137,7 @@ declare const _default: import("vue").DefineComponent<{}, {
137
137
  }>>;
138
138
  };
139
139
  requestInstance: {
140
- type: import("vue").PropType<import("../../..").FormRequestDefine.RequestInstance>;
140
+ type: import("vue").PropType<import("../../../../../es/components/form-render").RequestInstance>;
141
141
  };
142
142
  enterToNextWidget: {
143
143
  type: import("vue").PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -282,7 +282,7 @@ declare const _default: import("vue").DefineComponent<{}, {
282
282
  }>>;
283
283
  };
284
284
  requestInstance: {
285
- type: import("vue").PropType<import("../../..").FormRequestDefine.RequestInstance>;
285
+ type: import("vue").PropType<import("../../../../../es/components/form-render").RequestInstance>;
286
286
  };
287
287
  enterToNextWidget: {
288
288
  type: import("vue").PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -336,7 +336,7 @@ declare const _default: import("vue").DefineComponent<{}, {
336
336
  changeContextCollector: import("../../../../../es/components/form-render").ContextCollector;
337
337
  formUUID: string;
338
338
  anchorBarRef: import("vue").Ref<{
339
- syncBarPosition: import("../../..").AnyFn<any[], any>;
339
+ syncBarPosition: import("../../..").Func<any[], any>;
340
340
  } | undefined>;
341
341
  currentAnchor: import("vue").WritableComputedRef<string>;
342
342
  updateAnchorList: (field: import("@formily/core").GeneralField) => void;
@@ -449,7 +449,7 @@ declare const _default: import("vue").DefineComponent<{}, {
449
449
  afterOptionInit(fieldKey: string, options: AnyObject[], payload?: AnyObject | undefined): void;
450
450
  }>;
451
451
  businessFormatter: import("../../../../../es/components/form-render").FormBusinessFormatter;
452
- requestInstance: import("../../..").FormRequestDefine.RequestInstance;
452
+ requestInstance: import("../../../../../es/components/form-render").RequestInstance;
453
453
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
454
454
  lowCodeReactions: import("../../..").FormLowCodeReactions.Config[];
455
455
  linebarAutoHidden: boolean;
@@ -857,7 +857,7 @@ declare const _default: import("vue").DefineComponent<{}, {
857
857
  }>>;
858
858
  };
859
859
  requestInstance: {
860
- type: import("vue").PropType<import("../../..").FormRequestDefine.RequestInstance>;
860
+ type: import("vue").PropType<import("../../../../../es/components/form-render").RequestInstance>;
861
861
  };
862
862
  enterToNextWidget: {
863
863
  type: import("vue").PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -87,7 +87,7 @@ declare const _default: import("vue").DefineComponent<{
87
87
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
88
88
  }>;
89
89
  businessFormatter: import("../../../../../es/components/form-render").FormBusinessFormatter;
90
- requestInstance: import("../../../../../es/components/index").FormRequestDefine.RequestInstance;
90
+ requestInstance: import("../../../../../es/components/form-render").RequestInstance;
91
91
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
92
92
  lowCodeReactions: import("../../../../../es/shared/types").FormLowCodeReactions.Config[];
93
93
  linebarAutoHidden: boolean;
@@ -185,7 +185,7 @@ declare const _default: import("vue").DefineComponent<{
185
185
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
186
186
  }>;
187
187
  businessFormatter: import("../../../../../es/components/form-render").FormBusinessFormatter;
188
- requestInstance: import("../../../../../es/components/index").FormRequestDefine.RequestInstance;
188
+ requestInstance: import("../../../../../es/components/form-render").RequestInstance;
189
189
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
190
190
  lowCodeReactions: import("../../../../../es/shared/types").FormLowCodeReactions.Config[];
191
191
  linebarAutoHidden: boolean;
@@ -297,7 +297,7 @@ declare const _default: import("vue").DefineComponent<{
297
297
  urlConfig?: {
298
298
  [x: string]: any;
299
299
  url: string;
300
- method?: import("../../../../../es/components/index").FormRequestDefine.RequestType | undefined;
300
+ method?: import("../../../../../es/components/form-render").FormRequestType | undefined;
301
301
  nameKey?: string | undefined;
302
302
  valueKey?: string | undefined;
303
303
  showKey?: string | undefined;
@@ -2055,7 +2055,7 @@ declare const _default: import("vue").DefineComponent<{
2055
2055
  urlConfig?: {
2056
2056
  [x: string]: any;
2057
2057
  url: string;
2058
- method?: import("../../../../../es/components/index").FormRequestDefine.RequestType | undefined;
2058
+ method?: import("../../../../../es/components/form-render").FormRequestType | undefined;
2059
2059
  nameKey?: string | undefined;
2060
2060
  valueKey?: string | undefined;
2061
2061
  showKey?: string | undefined;
@@ -3786,7 +3786,7 @@ declare const _default: import("vue").DefineComponent<{
3786
3786
  urlConfig?: {
3787
3787
  [x: string]: any;
3788
3788
  url: string;
3789
- method?: import("../../../../../es/components/index").FormRequestDefine.RequestType | undefined;
3789
+ method?: import("../../../../../es/components/form-render").FormRequestType | undefined;
3790
3790
  nameKey?: string | undefined;
3791
3791
  valueKey?: string | undefined;
3792
3792
  showKey?: string | undefined;
@@ -5548,7 +5548,7 @@ declare const _default: import("vue").DefineComponent<{
5548
5548
  }>>;
5549
5549
  };
5550
5550
  requestInstance: {
5551
- type: PropType<import("../../../../../es/components/index").FormRequestDefine.RequestInstance>;
5551
+ type: PropType<import("../../../../../es/components/form-render").RequestInstance>;
5552
5552
  };
5553
5553
  enterToNextWidget: {
5554
5554
  type: PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -5693,7 +5693,7 @@ declare const _default: import("vue").DefineComponent<{
5693
5693
  }>>;
5694
5694
  };
5695
5695
  requestInstance: {
5696
- type: PropType<import("../../../../../es/components/index").FormRequestDefine.RequestInstance>;
5696
+ type: PropType<import("../../../../../es/components/form-render").RequestInstance>;
5697
5697
  };
5698
5698
  enterToNextWidget: {
5699
5699
  type: PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -5747,7 +5747,7 @@ declare const _default: import("vue").DefineComponent<{
5747
5747
  changeContextCollector: import("../../../../../es/components/form-render").ContextCollector;
5748
5748
  formUUID: string;
5749
5749
  anchorBarRef: import("vue").Ref<{
5750
- syncBarPosition: import("../../../../../es/shared/types").AnyFn<any[], any>;
5750
+ syncBarPosition: import("../../../../../es/shared/types").Func<any[], any>;
5751
5751
  } | undefined>;
5752
5752
  currentAnchor: import("vue").WritableComputedRef<string>;
5753
5753
  updateAnchorList: (field: import("@formily/core").GeneralField) => void;
@@ -5860,7 +5860,7 @@ declare const _default: import("vue").DefineComponent<{
5860
5860
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
5861
5861
  }>;
5862
5862
  businessFormatter: import("../../../../../es/components/form-render").FormBusinessFormatter;
5863
- requestInstance: import("../../../../../es/components/index").FormRequestDefine.RequestInstance;
5863
+ requestInstance: import("../../../../../es/components/form-render").RequestInstance;
5864
5864
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
5865
5865
  lowCodeReactions: import("../../../../../es/shared/types").FormLowCodeReactions.Config[];
5866
5866
  linebarAutoHidden: boolean;
@@ -6268,7 +6268,7 @@ declare const _default: import("vue").DefineComponent<{
6268
6268
  }>>;
6269
6269
  };
6270
6270
  requestInstance: {
6271
- type: PropType<import("../../../../../es/components/index").FormRequestDefine.RequestInstance>;
6271
+ type: PropType<import("../../../../../es/components/form-render").RequestInstance>;
6272
6272
  };
6273
6273
  enterToNextWidget: {
6274
6274
  type: PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -6403,7 +6403,7 @@ declare const _default: import("vue").DefineComponent<{
6403
6403
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
6404
6404
  }>;
6405
6405
  businessFormatter: import("../../../../../es/components/form-render").FormBusinessFormatter;
6406
- requestInstance: import("../../../../../es/components/index").FormRequestDefine.RequestInstance;
6406
+ requestInstance: import("../../../../../es/components/form-render").RequestInstance;
6407
6407
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
6408
6408
  lowCodeReactions: import("../../../../../es/shared/types").FormLowCodeReactions.Config[];
6409
6409
  linebarAutoHidden: boolean;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,watchEffect as o,watch as n,inject as i,computed as t,reactive as a,openBlock as s,createElementBlock as d,createVNode as u,unref as p,withCtx as r,createTextVNode as c,normalizeStyle as _,createElementVNode as v,Fragment as f,renderList as m,createBlock as h,toDisplayString as g,withModifiers as y,createCommentVNode as b,normalizeClass as F}from"vue";import{useTheme as k}from"../../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{cloneDeep as x,isEmpty as O,isArray as j,union as C,omit as T}from"lodash-es";import"@vue/shared";import{traverse as B}from"../../../../shared/utils/index.js";import{HelpCircleSharp as E}from"@vicons/ionicons5";import{useDialog as N,NButton as U,NModal as L,NScrollbar as z,NCollapse as q,NCollapseItem as w,NEllipsis as P,NThing as R,NSpace as $,NInputGroup as I,NSelect as A,NInput as D,NTooltip as V,NIcon as M,NEmpty as W}from"naive-ui";import{conditionOppositeMap as H,connectionTypeOptions as S,connectionTypeOppositeMap as X,InjectionFieldList as G,conditionTypeOptions as J}from"../constants/index.js";const K={class:"form-config__connectionOperation"},Q={class:"form-config__connectionConditionHeaderDesc"},Y={class:"form-config__connectionCondition"},Z={class:"form-config__connectionConditionItem"},ee={style:{"margin-right":"8px"}},le={class:"form-config__connectionFieldType"},oe=["onClick"],ne={style:{display:"inline-flex","align-items":"center",gap:"4px","margin-bottom":"4px"}};var ie=e({__name:"FormConfigEventSetting",props:{modelValue:{default:()=>[]}},emits:["update:modelValue","validateFailure"],setup(e,{emit:ie}){const te=e,ae=k(),se=l([]),de=l("");function ue(){se.value.push({conObj:[]}),de.value=se.value.length-1+""}function pe(e){return e.__oppositeBindField?`已绑定互斥联动: 联动${se.value.findIndex((l=>l===e.__oppositeBindField))+1}`:e.__oppositeTargetField?`已关联互斥联动: 联动${se.value.findIndex((l=>l===e.__oppositeTargetField))+1}`:void 0}function re(e){return null==e?void 0:e.replace(/(AND|OR)/g,(e=>"AND"===e?"OR":"AND"))}function ce(e){var l;const o=e.__oppositeTargetField||{conObj:[]};return o.conObj=x(e.conObj),null==(l=o.conObj)||l.forEach((e=>{e.con=H[e.con]})),o.sqlExpression=re(e.sqlExpression),S.forEach((({value:l})=>{O(e[l])?Reflect.deleteProperty(o,X[l]):o[X[l]]=x(e[l])})),o.__oppositeBindField=e,o}function _e(e,l){var o,n,i,t;return(null==(o=e.conObj)?void 0:o.length)===(null==(n=l.conObj)?void 0:n.length)&&(!(e.conObj&&l.conObj&&e.conObj.some((e=>!l.conObj.find((l=>{return n=l,(o=e).field_key===n.field_key&&o.con&&H[o.con]===n.con&&o.value===n.value;var o,n})))))&&(i=e.sqlExpression,t=l.sqlExpression,(!i&&!t||re(i)===t)&&!S.some((({value:o})=>{return n=e[o],i=l[X[o]],!(n&&i?n.length===i.length&&n.every((e=>i.some((l=>e===l)))):!n&&!i);var n,i}))))}function ve(e){de.value=e[0]}function fe(e){const l=se.value[e];if(!l)return"";const o=l.conObj||[],n=S.reduce(((e,{value:o})=>(j(l[o])&&l[o].length&&e.push(...l[o].map(t)),e)),[]),i=C([...o.map((({field_key:e})=>t(e))),...n]).filter((e=>!!e));return i.length?`( 相关字段: ${i} )`:"";function t(e){var l,o;return null!=(o=null==(l=ge.value.find((l=>e===l.key)))?void 0:l.name)?o:e}}o((()=>{se.value.forEach((e=>{e.__oppositeTargetField&&(e.__oppositeTargetField=ce(e))}))}));const me=l(!1);n(me,(e=>{e&&(se.value=x(te.modelValue),se.value.forEach(((e,l)=>{if(e.__oppositeBindField||e.__oppositeTargetField)return;const o=se.value.find(((o,n)=>n!==l&&!o.__oppositeBindField&&!o.__oppositeTargetField&&_e(o,e)));o&&(o.__oppositeBindField=e,e.__oppositeTargetField=o)})))}));const he=i(G,l([])),ge=t((()=>{const e=[];return B(he.value,(l=>{!["NEWLINE","LINE_BAR","COMPLEX","COMBINATION"].includes(l.type)&&e.push(l)})),e})),ye=a([]),be=N();async function Fe(){be.warning({title:"提示",content:"直接关闭弹窗会丢失已编辑的配置, 确定要关闭吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:()=>{me.value=!1,se.value=[]}})}async function ke(){try{await function(){var e;const l=[];return null==(e=se.value)||e.forEach(((e,o)=>{const n=[];e.conObj&&e.conObj.length?e.conObj.forEach(((e,l)=>{e.field_key||n.push(`条件${l+1}字段为空`),e.con||n.push(`条件${l+1}判断类型为空`),["NULL","NOT_NULL"].includes(e.con)||!e.con||e.value||n.push(`条件${l+1}值为空`)})):n.push("联动条件为空"),S.every((({value:l})=>!e[l]||!e[l].length))&&n.push("联动字段为空"),n.length&&l.push(`联动${o+1}: ${n}`)})),l.length?Promise.reject(l):Promise.resolve()}(),me.value=!1,ie("update:modelValue",se.value.map((e=>T(e,["__oppositeBindField","__oppositeTargetField"]))))}catch(e){ie("validateFailure",e)}}return(e,l)=>(s(),d("section",null,[u(p(U),{size:"small",onClick:l[0]||(l[0]=e=>me.value=!0)},{default:r((()=>[c("调整联动绑定")])),_:1}),u(p(L),{show:me.value,"onUpdate:show":l[1]||(l[1]=e=>me.value=e),closable:!1,bordered:!1,"show-icon":!1,title:"联动绑定设置",preset:"dialog","mask-closable":!1,"close-on-esc":!1,style:_({width:"1000px",...p(ae)}),class:"form-config__connectionModal"},{action:r((()=>[u(p(U),{size:"small",onClick:Fe},{default:r((()=>[c("取消")])),_:1}),u(p(U),{size:"small",onClick:ke,type:"primary"},{default:r((()=>[c("确定")])),_:1})])),default:r((()=>[v("header",K,[u(p(U),{onClick:ue,size:"small"},{default:r((()=>[c("新增联动")])),_:1})]),u(p(z),{style:{"max-height":"500px","min-height":"500px"}},{default:r((()=>[u(p(q),{accordion:"","expanded-names":de.value,"onUpdate:expandedNames":ve},{default:r((()=>[(s(!0),d(f,null,m(se.value,((e,l)=>(s(),h(p(w),{name:l+""},{header:r((()=>[c(" 联动"+g(l+1)+" ",1),u(p(P),{class:"form-config__connectionConditionHeaderDesc",style:{"max-width":"500px"}},{default:r((()=>[c(g(fe(l)),1)])),_:2},1024)])),"header-extra":r((()=>[e.__oppositeBindField||e.__oppositeTargetField?(s(),d(f,{key:1},[v("span",Q,"( "+g(pe(e))+" )",1),u(p(U),{quaternary:"",type:"primary",size:"small",onClick:y((l=>function(e){const l=e.__oppositeTargetField||e.__oppositeBindField;l&&[l,e].forEach((e=>{Reflect.deleteProperty(e,"__oppositeBindField"),Reflect.deleteProperty(e,"__oppositeTargetField")}))}(e)),["stop"])},{default:r((()=>[c("解除互斥")])),_:2},1032,["onClick"])],64)):(s(),h(p(U),{key:0,onClick:y((l=>function(e){se.value.push(e.__oppositeTargetField=ce(e))}(e)),["stop"]),quaternary:"",type:"primary",size:"small"},{default:r((()=>[c(" 创建互斥条件 ")])),_:2},1032,["onClick"])),u(p(U),{onClick:y((e=>function(e){var l;const o=null==(l=se.value)?void 0:l.splice(e,1);null==o||o.forEach((e=>{const l=e.__oppositeTargetField||e.__oppositeBindField;l&&(Reflect.deleteProperty(l,"__oppositeTargetField"),Reflect.deleteProperty(l,"__oppositeBindField"))})),ye.splice(e,1),!de.value||+de.value<e||(de.value=de.value===e+""?"":+de.value-1+"")}(l)),["stop"]),quaternary:"",type:"error",size:"small"},{default:r((()=>[c("移除")])),_:2},1032,["onClick"])])),default:r((()=>[u(p(R),{class:"form-config__connectionWrapper"},{default:r((()=>[u(p($),{justify:"space-between",wrap:!1},{default:r((()=>[v("section",Y,[v("header",null,[c(" 条件 "),e.__oppositeBindField?b("v-if",!0):(s(),h(p(U),{key:0,size:"small",quaternary:"",type:"primary",onClick:l=>{var o;j((o=e).conObj)?o.conObj.push({}):o.conObj=[{}]}},{default:r((()=>[c(" 添加条件 ")])),_:2},1032,["onClick"]))]),u(p(z),{style:{"max-height":"145px","min-height":"145px"},class:"form-config__connectionWrapper"},{default:r((()=>[(s(!0),d(f,null,m(e.conObj||[],((l,o)=>(s(),d("div",Z,[v("span",ee,g(o+1),1),u(p(I),{size:"small"},{default:r((()=>[u(p(A),{value:l.field_key,"onUpdate:value":e=>l.field_key=e,disabled:!!e.__oppositeBindField,placeholder:"请选择字段",options:p(ge),"label-field":"name","value-field":"key",filterable:""},null,8,["value","onUpdate:value","disabled","options"]),u(p(A),{value:l.con,disabled:!!e.__oppositeBindField,"onUpdate:value":e=>function(e,l){e.con=l,["NOT_NULL","NULL"].includes(l)&&Reflect.deleteProperty(e,"value")}(l,e),placeholder:"请选择判断类型",options:p(J)},null,8,["value","disabled","onUpdate:value","options"]),l.con&&!["NULL","NOT_NULL"].includes(l.con)?(s(),h(p(D),{key:0,disabled:!!e.__oppositeBindField,value:l.value,"onUpdate:value":e=>l.value=e,placeholder:"请输入值",clearable:""},null,8,["disabled","value","onUpdate:value"])):b("v-if",!0)])),_:2},1024),u(p(U),{disabled:!!e.__oppositeBindField,quaternary:"",onClick:l=>function(e,l){j(e.conObj)&&e.conObj.splice(l,1)}(e,o),type:"error",size:"small"},{default:r((()=>[c(" 移除 ")])),_:2},1032,["disabled","onClick"])])))),256))])),_:2},1024)]),v("section",le,[v("div",null,[(s(!0),d(f,null,m(p(S),(o=>{var n,i;return s(),d("div",{key:o.value,class:F({"is-active":ye[l]===o.value}),onClick:e=>ye[l]=o.value},g(o.label)+" ( "+g(null!=(i=null==(n=e[o.value])?void 0:n.length)?i:0)+" ) ",11,oe)})),128))]),v("div",null,[ye[l]?(s(),h(p(A),{key:0,value:e[ye[l]],"onUpdate:value":o=>e[ye[l]]=o,disabled:!!e.__oppositeBindField,multiple:"",placeholder:"请选择字段",options:p(ge),"label-field":"name","value-field":"key",filterable:"","max-tag-count":10},null,8,["value","onUpdate:value","disabled","options"])):b("v-if",!0)])])])),_:2},1024),v("section",null,[v("label",null,[v("span",ne,[c(" 条件逻辑 "),u(p(V),null,{trigger:r((()=>[u(p(M),{size:"16",component:p(E)},null,8,["component"])])),default:r((()=>[c(" 非必填, 默认为需要全部满足. 示例: (1 AND 2) OR 3, 表示 条件1和2需要满足其一, 条件3必须满足 ")])),_:1})]),u(p(D),{value:e.sqlExpression,"onUpdate:value":l=>e.sqlExpression=l,disabled:!!e.__oppositeBindField,placeholder:"请输入条件逻辑"},null,8,["value","onUpdate:value","disabled"])])])])),_:2},1024)])),_:2},1032,["name"])))),256))])),_:1},8,["expanded-names"]),se.value.length?b("v-if",!0):(s(),h(p(W),{key:0,size:"huge",style:{"margin-top":"20px"},description:"无联动配置"}))])),_:1})])),_:1},8,["show","style"])]))}});export{ie as default};
1
+ import{defineComponent as e,ref as l,watchEffect as o,watch as n,inject as i,computed as t,reactive as a,openBlock as s,createElementBlock as d,createVNode as u,unref as p,withCtx as r,createTextVNode as c,normalizeStyle as _,createElementVNode as v,Fragment as f,renderList as m,createBlock as h,toDisplayString as g,withModifiers as y,createCommentVNode as b,normalizeClass as F}from"vue";import{useTheme as k}from"../../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{cloneDeep as x,isEmpty as O,isArray as j,union as C,omit as T}from"lodash-es";import{traverse as B}from"../../../../shared/utils/index.js";import{HelpCircleSharp as E}from"@vicons/ionicons5";import{useDialog as N,NButton as U,NModal as L,NScrollbar as z,NCollapse as q,NCollapseItem as w,NEllipsis as P,NThing as R,NSpace as $,NInputGroup as I,NSelect as A,NInput as D,NTooltip as V,NIcon as M,NEmpty as W}from"naive-ui";import{conditionOppositeMap as H,connectionTypeOptions as S,connectionTypeOppositeMap as X,InjectionFieldList as G,conditionTypeOptions as J}from"../constants/index.js";const K={class:"form-config__connectionOperation"},Q={class:"form-config__connectionConditionHeaderDesc"},Y={class:"form-config__connectionCondition"},Z={class:"form-config__connectionConditionItem"},ee={style:{"margin-right":"8px"}},le={class:"form-config__connectionFieldType"},oe=["onClick"],ne={style:{display:"inline-flex","align-items":"center",gap:"4px","margin-bottom":"4px"}};var ie=e({__name:"FormConfigEventSetting",props:{modelValue:{default:()=>[]}},emits:["update:modelValue","validateFailure"],setup(e,{emit:ie}){const te=e,ae=k(),se=l([]),de=l("");function ue(){se.value.push({conObj:[]}),de.value=se.value.length-1+""}function pe(e){return e.__oppositeBindField?`已绑定互斥联动: 联动${se.value.findIndex((l=>l===e.__oppositeBindField))+1}`:e.__oppositeTargetField?`已关联互斥联动: 联动${se.value.findIndex((l=>l===e.__oppositeTargetField))+1}`:void 0}function re(e){return null==e?void 0:e.replace(/(AND|OR)/g,(e=>"AND"===e?"OR":"AND"))}function ce(e){var l;const o=e.__oppositeTargetField||{conObj:[]};return o.conObj=x(e.conObj),null==(l=o.conObj)||l.forEach((e=>{e.con=H[e.con]})),o.sqlExpression=re(e.sqlExpression),S.forEach((({value:l})=>{O(e[l])?Reflect.deleteProperty(o,X[l]):o[X[l]]=x(e[l])})),o.__oppositeBindField=e,o}function _e(e,l){var o,n,i,t;return(null==(o=e.conObj)?void 0:o.length)===(null==(n=l.conObj)?void 0:n.length)&&(!(e.conObj&&l.conObj&&e.conObj.some((e=>!l.conObj.find((l=>{return n=l,(o=e).field_key===n.field_key&&o.con&&H[o.con]===n.con&&o.value===n.value;var o,n})))))&&(i=e.sqlExpression,t=l.sqlExpression,(!i&&!t||re(i)===t)&&!S.some((({value:o})=>{return n=e[o],i=l[X[o]],!(n&&i?n.length===i.length&&n.every((e=>i.some((l=>e===l)))):!n&&!i);var n,i}))))}function ve(e){de.value=e[0]}function fe(e){const l=se.value[e];if(!l)return"";const o=l.conObj||[],n=S.reduce(((e,{value:o})=>(j(l[o])&&l[o].length&&e.push(...l[o].map(t)),e)),[]),i=C([...o.map((({field_key:e})=>t(e))),...n]).filter((e=>!!e));return i.length?`( 相关字段: ${i} )`:"";function t(e){var l,o;return null!=(o=null==(l=ge.value.find((l=>e===l.key)))?void 0:l.name)?o:e}}o((()=>{se.value.forEach((e=>{e.__oppositeTargetField&&(e.__oppositeTargetField=ce(e))}))}));const me=l(!1);n(me,(e=>{e&&(se.value=x(te.modelValue),se.value.forEach(((e,l)=>{if(e.__oppositeBindField||e.__oppositeTargetField)return;const o=se.value.find(((o,n)=>n!==l&&!o.__oppositeBindField&&!o.__oppositeTargetField&&_e(o,e)));o&&(o.__oppositeBindField=e,e.__oppositeTargetField=o)})))}));const he=i(G,l([])),ge=t((()=>{const e=[];return B(he.value,(l=>{!["NEWLINE","LINE_BAR","COMPLEX","COMBINATION"].includes(l.type)&&e.push(l)})),e})),ye=a([]),be=N();async function Fe(){be.warning({title:"提示",content:"直接关闭弹窗会丢失已编辑的配置, 确定要关闭吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:()=>{me.value=!1,se.value=[]}})}async function ke(){try{await function(){var e;const l=[];return null==(e=se.value)||e.forEach(((e,o)=>{const n=[];e.conObj&&e.conObj.length?e.conObj.forEach(((e,l)=>{e.field_key||n.push(`条件${l+1}字段为空`),e.con||n.push(`条件${l+1}判断类型为空`),["NULL","NOT_NULL"].includes(e.con)||!e.con||e.value||n.push(`条件${l+1}值为空`)})):n.push("联动条件为空"),S.every((({value:l})=>!e[l]||!e[l].length))&&n.push("联动字段为空"),n.length&&l.push(`联动${o+1}: ${n}`)})),l.length?Promise.reject(l):Promise.resolve()}(),me.value=!1,ie("update:modelValue",se.value.map((e=>T(e,["__oppositeBindField","__oppositeTargetField"]))))}catch(e){ie("validateFailure",e)}}return(e,l)=>(s(),d("section",null,[u(p(U),{size:"small",onClick:l[0]||(l[0]=e=>me.value=!0)},{default:r((()=>[c("调整联动绑定")])),_:1}),u(p(L),{show:me.value,"onUpdate:show":l[1]||(l[1]=e=>me.value=e),closable:!1,bordered:!1,"show-icon":!1,title:"联动绑定设置",preset:"dialog","mask-closable":!1,"close-on-esc":!1,style:_({width:"1000px",...p(ae)}),class:"form-config__connectionModal"},{action:r((()=>[u(p(U),{size:"small",onClick:Fe},{default:r((()=>[c("取消")])),_:1}),u(p(U),{size:"small",onClick:ke,type:"primary"},{default:r((()=>[c("确定")])),_:1})])),default:r((()=>[v("header",K,[u(p(U),{onClick:ue,size:"small"},{default:r((()=>[c("新增联动")])),_:1})]),u(p(z),{style:{"max-height":"500px","min-height":"500px"}},{default:r((()=>[u(p(q),{accordion:"","expanded-names":de.value,"onUpdate:expandedNames":ve},{default:r((()=>[(s(!0),d(f,null,m(se.value,((e,l)=>(s(),h(p(w),{name:l+""},{header:r((()=>[c(" 联动"+g(l+1)+" ",1),u(p(P),{class:"form-config__connectionConditionHeaderDesc",style:{"max-width":"500px"}},{default:r((()=>[c(g(fe(l)),1)])),_:2},1024)])),"header-extra":r((()=>[e.__oppositeBindField||e.__oppositeTargetField?(s(),d(f,{key:1},[v("span",Q,"( "+g(pe(e))+" )",1),u(p(U),{quaternary:"",type:"primary",size:"small",onClick:y((l=>function(e){const l=e.__oppositeTargetField||e.__oppositeBindField;l&&[l,e].forEach((e=>{Reflect.deleteProperty(e,"__oppositeBindField"),Reflect.deleteProperty(e,"__oppositeTargetField")}))}(e)),["stop"])},{default:r((()=>[c("解除互斥")])),_:2},1032,["onClick"])],64)):(s(),h(p(U),{key:0,onClick:y((l=>function(e){se.value.push(e.__oppositeTargetField=ce(e))}(e)),["stop"]),quaternary:"",type:"primary",size:"small"},{default:r((()=>[c(" 创建互斥条件 ")])),_:2},1032,["onClick"])),u(p(U),{onClick:y((e=>function(e){var l;const o=null==(l=se.value)?void 0:l.splice(e,1);null==o||o.forEach((e=>{const l=e.__oppositeTargetField||e.__oppositeBindField;l&&(Reflect.deleteProperty(l,"__oppositeTargetField"),Reflect.deleteProperty(l,"__oppositeBindField"))})),ye.splice(e,1),!de.value||+de.value<e||(de.value=de.value===e+""?"":+de.value-1+"")}(l)),["stop"]),quaternary:"",type:"error",size:"small"},{default:r((()=>[c("移除")])),_:2},1032,["onClick"])])),default:r((()=>[u(p(R),{class:"form-config__connectionWrapper"},{default:r((()=>[u(p($),{justify:"space-between",wrap:!1},{default:r((()=>[v("section",Y,[v("header",null,[c(" 条件 "),e.__oppositeBindField?b("v-if",!0):(s(),h(p(U),{key:0,size:"small",quaternary:"",type:"primary",onClick:l=>{var o;j((o=e).conObj)?o.conObj.push({}):o.conObj=[{}]}},{default:r((()=>[c(" 添加条件 ")])),_:2},1032,["onClick"]))]),u(p(z),{style:{"max-height":"145px","min-height":"145px"},class:"form-config__connectionWrapper"},{default:r((()=>[(s(!0),d(f,null,m(e.conObj||[],((l,o)=>(s(),d("div",Z,[v("span",ee,g(o+1),1),u(p(I),{size:"small"},{default:r((()=>[u(p(A),{value:l.field_key,"onUpdate:value":e=>l.field_key=e,disabled:!!e.__oppositeBindField,placeholder:"请选择字段",options:p(ge),"label-field":"name","value-field":"key",filterable:""},null,8,["value","onUpdate:value","disabled","options"]),u(p(A),{value:l.con,disabled:!!e.__oppositeBindField,"onUpdate:value":e=>function(e,l){e.con=l,["NOT_NULL","NULL"].includes(l)&&Reflect.deleteProperty(e,"value")}(l,e),placeholder:"请选择判断类型",options:p(J)},null,8,["value","disabled","onUpdate:value","options"]),l.con&&!["NULL","NOT_NULL"].includes(l.con)?(s(),h(p(D),{key:0,disabled:!!e.__oppositeBindField,value:l.value,"onUpdate:value":e=>l.value=e,placeholder:"请输入值",clearable:""},null,8,["disabled","value","onUpdate:value"])):b("v-if",!0)])),_:2},1024),u(p(U),{disabled:!!e.__oppositeBindField,quaternary:"",onClick:l=>function(e,l){j(e.conObj)&&e.conObj.splice(l,1)}(e,o),type:"error",size:"small"},{default:r((()=>[c(" 移除 ")])),_:2},1032,["disabled","onClick"])])))),256))])),_:2},1024)]),v("section",le,[v("div",null,[(s(!0),d(f,null,m(p(S),(o=>{var n,i;return s(),d("div",{key:o.value,class:F({"is-active":ye[l]===o.value}),onClick:e=>ye[l]=o.value},g(o.label)+" ( "+g(null!=(i=null==(n=e[o.value])?void 0:n.length)?i:0)+" ) ",11,oe)})),128))]),v("div",null,[ye[l]?(s(),h(p(A),{key:0,value:e[ye[l]],"onUpdate:value":o=>e[ye[l]]=o,disabled:!!e.__oppositeBindField,multiple:"",placeholder:"请选择字段",options:p(ge),"label-field":"name","value-field":"key",filterable:"","max-tag-count":10},null,8,["value","onUpdate:value","disabled","options"])):b("v-if",!0)])])])),_:2},1024),v("section",null,[v("label",null,[v("span",ne,[c(" 条件逻辑 "),u(p(V),null,{trigger:r((()=>[u(p(M),{size:"16",component:p(E)},null,8,["component"])])),default:r((()=>[c(" 非必填, 默认为需要全部满足. 示例: (1 AND 2) OR 3, 表示 条件1和2需要满足其一, 条件3必须满足 ")])),_:1})]),u(p(D),{value:e.sqlExpression,"onUpdate:value":l=>e.sqlExpression=l,disabled:!!e.__oppositeBindField,placeholder:"请输入条件逻辑"},null,8,["value","onUpdate:value","disabled"])])])])),_:2},1024)])),_:2},1032,["name"])))),256))])),_:1},8,["expanded-names"]),se.value.length?b("v-if",!0):(s(),h(p(W),{key:0,size:"huge",style:{"margin-top":"20px"},description:"无联动配置"}))])),_:1})])),_:1},8,["show","style"])]))}});export{ie as default};
@@ -124,7 +124,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
124
124
  }>>;
125
125
  };
126
126
  requestInstance: {
127
- type: import("vue").PropType<import("..").FormRequestDefine.RequestInstance>;
127
+ type: import("vue").PropType<import("./src/hooks").RequestInstance>;
128
128
  };
129
129
  enterToNextWidget: {
130
130
  type: import("vue").PropType<boolean | ((fieldItem: import("./src/types").FieldItem) => boolean | void)>;
@@ -269,7 +269,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
269
269
  }>>;
270
270
  };
271
271
  requestInstance: {
272
- type: import("vue").PropType<import("..").FormRequestDefine.RequestInstance>;
272
+ type: import("vue").PropType<import("./src/hooks").RequestInstance>;
273
273
  };
274
274
  enterToNextWidget: {
275
275
  type: import("vue").PropType<boolean | ((fieldItem: import("./src/types").FieldItem) => boolean | void)>;
@@ -323,7 +323,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
323
323
  changeContextCollector: import("./src/hooks").ContextCollector;
324
324
  formUUID: string;
325
325
  anchorBarRef: import("vue").Ref<{
326
- syncBarPosition: import("../../../es/shared/types").AnyFn<any[], any>;
326
+ syncBarPosition: import("../../../es/shared/types").Func<any[], any>;
327
327
  } | undefined>;
328
328
  currentAnchor: import("vue").WritableComputedRef<string>;
329
329
  updateAnchorList: (field: import("@formily/core").GeneralField) => void;
@@ -436,7 +436,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
436
436
  afterOptionInit(fieldKey: string, options: import("../../../es/shared/types").AnyObject[], payload?: import("../../../es/shared/types").AnyObject | undefined): void;
437
437
  }>;
438
438
  businessFormatter: import("./src/types").FormBusinessFormatter;
439
- requestInstance: import("..").FormRequestDefine.RequestInstance;
439
+ requestInstance: import("./src/hooks").RequestInstance;
440
440
  enterToNextWidget: boolean | ((fieldItem: import("./src/types").FieldItem) => boolean | void);
441
441
  lowCodeReactions: import("../../../es/shared/types").FormLowCodeReactions.Config[];
442
442
  linebarAutoHidden: boolean;
@@ -844,7 +844,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
844
844
  }>>;
845
845
  };
846
846
  requestInstance: {
847
- type: import("vue").PropType<import("..").FormRequestDefine.RequestInstance>;
847
+ type: import("vue").PropType<import("./src/hooks").RequestInstance>;
848
848
  };
849
849
  enterToNextWidget: {
850
850
  type: import("vue").PropType<boolean | ((fieldItem: import("./src/types").FieldItem) => boolean | void)>;
@@ -1 +1 @@
1
- import{COMPONENT_NAMESPACE as e}from"../../shared/global/variable.js";import{safeComponentRegister as s}from"../../shared/utils/index.js";import r from"./src/FormRenderWrapper.vue.js";export{useFieldListAdaptor}from"./src/hooks/useFieldListAdaptor.js";export{useCommonLog}from"./src/hooks/useCommonLog.js";export{useFormField}from"./src/hooks/useFormField.js";export{useFieldVisitor}from"./src/hooks/useFieldVisitor.js";export{useFieldNormalize}from"./src/hooks/useFieldNormalize.js";export{useFormValidator,validateMessageLocale}from"./src/hooks/useFormValidator.js";export{BusinessCollector,useBusinessBinding}from"./src/hooks/useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./src/hooks/useChangeContext.js";export{FormItemDepsCollector,useFormItemDeps}from"./src/hooks/useFormItemDeps.js";export{useAnchor}from"./src/hooks/useAnchor.js";export{useFormContext}from"./src/hooks/useFormContext.js";export{useCommonInjection,useSelectOptionProps}from"./src/hooks/useCommonInjection.js";export{searchContentMatcher,useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./src/hooks/useFormRenderOptions.js";export{combineExtendKey,createInputSlot,createSlot,createUrlConfigParams,formRenderLog,injectOrProvide,isNestedFieldType,isNestedType,mergeDeepProperties,parseNumberFromMaybeString,renderDescOption,splitExtendKey,validateMessageParser}from"./src/utils/index.js";export{businessDateParser,isIdCard,isMobile,parseAge2Birthday,parseAgeFromContext,parseBirthday,parseIdCard,transformDateFormat}from"./src/utils/business.js";export{findNextWidget,queryDecoratorByAddress,queryDecoratorByFieldKey,queryInput}from"./src/utils/dom.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./src/utils/schema.js";const o=r;o.install=function(r){s(r,o,e+"FormRender")};export{o as default};
1
+ import{COMPONENT_NAMESPACE as e}from"../../shared/global/variable.js";import{safeComponentRegister as s}from"../../shared/utils/index.js";import r from"./src/FormRenderWrapper.vue.js";export{useFieldListAdaptor}from"./src/hooks/useFieldListAdaptor.js";export{useFormRequest}from"./src/hooks/useFormRequest.js";export{useCommonLog}from"./src/hooks/useCommonLog.js";export{useFormField}from"./src/hooks/useFormField.js";export{useFormAsyncQueue}from"./src/hooks/useFormAsyncQueue.js";export{useFieldVisitor}from"./src/hooks/useFieldVisitor.js";export{useFieldNormalize}from"./src/hooks/useFieldNormalize.js";export{useFormValidator,validateMessageLocale}from"./src/hooks/useFormValidator.js";export{BusinessCollector,useBusinessBinding}from"./src/hooks/useBusinessBinding.js";export{ContextCollector,useChangeContext}from"./src/hooks/useChangeContext.js";export{FormItemDepsCollector,useFormItemDeps}from"./src/hooks/useFormItemDeps.js";export{useAnchor}from"./src/hooks/useAnchor.js";export{useFormContext}from"./src/hooks/useFormContext.js";export{useCommonInjection,useSelectOptionProps}from"./src/hooks/useCommonInjection.js";export{searchContentMatcher,useAutographOptions,useRecommendOptions,useUrlConfigOptions}from"./src/hooks/useFormRenderOptions.js";export{combineExtendKey,createInputSlot,createSlot,createUrlConfigParams,formRenderLog,injectOrProvide,isNestedFieldType,isNestedType,mergeDeepProperties,parseNumberFromMaybeString,presetRequestHandler,renderDescOption,splitExtendKey,validateMessageParser}from"./src/utils/index.js";export{businessDateParser,isIdCard,isMobile,parseAge2Birthday,parseAgeFromContext,parseBirthday,parseIdCard,transformDateFormat}from"./src/utils/business.js";export{findNextWidget,queryDecoratorByAddress,queryDecoratorByFieldKey,queryInput}from"./src/utils/dom.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./src/utils/schema.js";const o=r;o.install=function(r){s(r,o,e+"FormRender")};export{o as default};
@@ -1,7 +1,7 @@
1
- import { FormRequestDefine } from '../../../../es/shared/hooks';
2
1
  import { AnyObject, FormLowCodeReactions, FormOperationalConfig } from '../../../../es/shared/types';
3
2
  import { Field } from '@formily/core';
4
3
  import { Component, FunctionalComponent, PropType } from 'vue';
4
+ import { RequestInstance } from './hooks';
5
5
  import { FieldItem, FieldVisitor, FormBusinessFormatter } from './types';
6
6
  declare const _default: import("vue").DefineComponent<{
7
7
  fieldList: {
@@ -119,7 +119,7 @@ declare const _default: import("vue").DefineComponent<{
119
119
  }>>;
120
120
  };
121
121
  requestInstance: {
122
- type: PropType<FormRequestDefine.RequestInstance>;
122
+ type: PropType<RequestInstance>;
123
123
  };
124
124
  enterToNextWidget: {
125
125
  type: PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -264,7 +264,7 @@ declare const _default: import("vue").DefineComponent<{
264
264
  }>>;
265
265
  };
266
266
  requestInstance: {
267
- type: PropType<FormRequestDefine.RequestInstance>;
267
+ type: PropType<RequestInstance>;
268
268
  };
269
269
  enterToNextWidget: {
270
270
  type: PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -318,7 +318,7 @@ declare const _default: import("vue").DefineComponent<{
318
318
  changeContextCollector: import("./hooks").ContextCollector;
319
319
  formUUID: string;
320
320
  anchorBarRef: import("vue").Ref<{
321
- syncBarPosition: import("../../../../es/shared/types").AnyFn<any[], any>;
321
+ syncBarPosition: import("../../../../es/shared/types").Func<any[], any>;
322
322
  } | undefined>;
323
323
  currentAnchor: import("vue").WritableComputedRef<string>;
324
324
  updateAnchorList: (field: import("@formily/core").GeneralField) => void;
@@ -431,7 +431,7 @@ declare const _default: import("vue").DefineComponent<{
431
431
  afterOptionInit(fieldKey: string, options: AnyObject[], payload?: AnyObject | undefined): void;
432
432
  }>;
433
433
  businessFormatter: FormBusinessFormatter;
434
- requestInstance: FormRequestDefine.RequestInstance;
434
+ requestInstance: RequestInstance;
435
435
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
436
436
  lowCodeReactions: FormLowCodeReactions.Config[];
437
437
  linebarAutoHidden: boolean;
@@ -839,7 +839,7 @@ declare const _default: import("vue").DefineComponent<{
839
839
  }>>;
840
840
  };
841
841
  requestInstance: {
842
- type: PropType<FormRequestDefine.RequestInstance>;
842
+ type: PropType<RequestInstance>;
843
843
  };
844
844
  enterToNextWidget: {
845
845
  type: PropType<boolean | ((fieldItem: FieldItem) => boolean | void)>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,provide as r,onMounted as s,onUnmounted as a,nextTick as i,openBlock as l,createBlock as n,unref as m,normalizeClass as d,normalizeStyle as p,withCtx as u,createElementBlock as c,createVNode as f,isRef as h,Fragment as y,renderList as g,createCommentVNode as b,createElementVNode as j,withKeys as v,toDisplayString as k,renderSlot as F}from"vue";import{useTheme as C}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as S,cloneDeep as H,isObject as x,isBoolean as A}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import{createForm as L,onFormMount as O,onFieldValueChange as B,onFieldMount as R,onFieldUnmount as w,onFieldReact as D}from"@formily/core";import{Path as _}from"@formily/path";import{FormProvider as V,FormConsumer as I}from"@formily/vue";import{NForm as N,NTabs as W,NTabPane as q,NConfigProvider as E}from"naive-ui";import{InjectionFormLifeCycleCaller as K,InjectionFormGraph as T}from"./constants/index.js";import{useAutoHidden as U}from"./hooks/useAutoHidden.js";import{useComplexOptionsSpan as G}from"./hooks/useComplexOptions.js";import{useFormDomEvent as M,useFormExposeEvent as P}from"./hooks/useFormEvent.js";import{useFormGraph as J}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as $}from"./hooks/useFormRenderLifeCycle.js";import{useLowCodeEvent as z}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as Q}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as X}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as Y}from"./hooks/useOperationalForm.js";import{useWordbookSetting as Z}from"./hooks/useWordbookSetting.js";import"@vicons/ionicons5";import"../index.js";import{createObjSchema as ee}from"./utils/schema.js";import{useFieldListAdaptor as oe}from"./hooks/useFieldListAdaptor.js";import{useFieldVisitor as te}from"./hooks/useFieldVisitor.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{validateMessageLocale as re}from"./hooks/useFormValidator.js";import{useAnchor as se}from"./hooks/useAnchor.js";import{useFormContext as ae}from"./hooks/useFormContext.js";import"./hooks/useFormRenderOptions.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},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},lowCodeReactions:{type:Array},operationalForm:{type:Object},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean},emits:["formChange","annotationChange","scroll"],setup(e,{expose:ne,emit:me}){const de=e,pe=C(),{nuiThemeOverrides:ue}=X();re();const ce=o(),fe=t((()=>S(de.maxHeight)?de.maxHeight+"px":de.maxHeight)),{SchemaField:he,businessCollector:ye,formItemDepsCollector:ge,changeContextCollector:be,formUUID:je}=ae(de,me),{anchorBarRef:ve,currentAnchor:ke,updateAnchorList:Fe,anchorIdList:Ce,onScroll:Se}=se(de,me,ce,ge),{callLifeCycle:He}=$(de);r(K,He),He("onSetup");const{trigger:xe}=U(),{observeFormGraph:Ae,setGraph:Le,removeGraph:Oe}=J();r(T,Ae);const{lowCodeEventTrigger:Be}=z(),Re=L({initialValues:de.initialData,effects(e){const o={};O((()=>{Object.assign(o,H(e.values))})),B("*",(t=>{const r=_.getIn(o,t.path);_.setIn(o,t.path,t.value);const s=t.props.name.toString();ye.trigger(e,s),ge.trigger(s),me("formChange",{fieldInstance:t,fieldKey:s,oldValue:r,fieldName:t.title,value:t.value,context:be.getContext(s,t.value)}),Be(t),we(s),_e(s),Ie.trigger(s,t.value)})),R("*",Le),w("*",Oe),de.linebarAutoHidden&&(D("*",xe),O((e=>e.query("*").forEach(xe)))),de.anchor&&D("*",Fe)}}),{lowCodeReactionsHandler:we,triggerAllReactionsHandler:De}=Q(t((()=>de.lowCodeReactions)),Re),{operationalFormHandler:_e,triggerAllOperationalFormHandler:Ve}=Y(t((()=>de.operationalForm)),Re),Ie=Z(Re,be);s(De),s(Ve);const{schemaAdaptor:Ne}=oe(ye);let We=de.fieldList||[];const qe=t((()=>de.schema?de.schema:de.fieldList?(We=te().traverse(H(de.fieldList),de.fieldVisitor),ee(Ne(We,de))):ee({}))),{onKeydown:Ee}=M({formModel:Re,formRenderRef:ce,props:de}),{clearSpan:Ke}=G();a((()=>Ke(je)));const Te=P({formModel:Re,formRenderRef:ce,formItemDepsCollector:ge,getFieldList:()=>We,formUUID:je});return ne({formModel:Re,validate:(e="*",o={})=>Te.validate(e,o),getFormValues:(e=!0)=>Te.getFormValues(e),async setFormValues(e,o={},t=!1,r=!0){var s,a,l,n,m;let d=!0,p=!0,u=!0;x(o)?(p=null==(s=o.needSplitExtendKey)||s,d=null==(a=o.avoidDependKeyConnection)||a,t=null!=(l=o.avoidBusinessConnection)&&l,u=null==(n=o.avoidWordbookSettingConnection)||n,r=null==(m=o.overwrite)||m):A(o)&&(p=o),t&&(ye.triggerLock=!0),d&&(ge.triggerDisabled=!0),u&&Ie.setDisabled(!0),Te.setFormValues(e,p,r),await i(),ye.triggerLock=!1,ge.triggerDisabled=!1,Ie.setDisabled(!1)},setFieldState(e,o){Te.setFieldState(e,o)},resetFields(e="*"){Te.resetFields(e)},queryWidget:async e=>Te.queryWidget(e),getFieldList:()=>We,async reload(){console.error("reload function is abstract,it should be overwrite!")}}),(o,t)=>(l(),n(m(N),{class:d(["form-render",{"form-render--out-border":e.outBordered}]),"require-mark-placement":"left",style:p(m(pe))},{default:u((()=>[e.anchor?(l(),c("section",ie,[f(m(W),{value:m(ke),"onUpdate:value":t[0]||(t[0]=e=>h(ke)?ke.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ve},{default:u((()=>[(l(!0),c(y,null,g(m(Ce),(e=>(l(),n(m(q),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):b("v-if",!0),f(m(E),{"theme-overrides":m(ue)},{default:u((()=>[j("section",{class:"form-render__wrapper",style:p({"--column":e.column,"--form-height":m(fe)}),ref_key:"formRenderRef",ref:ce,onScroll:t[1]||(t[1]=(...e)=>m(Se)&&m(Se)(...e)),onKeydownCapture:t[2]||(t[2]=v(((...e)=>m(Ee)&&m(Ee)(...e)),["enter"]))},[f(m(V),{form:m(Re)},{default:u((()=>[f(m(he),{schema:m(qe)},null,8,["schema"]),e.consumer?(l(),n(m(I),{key:0},{default:u((({form:e})=>[j("div",le,k(JSON.stringify(e.values,null,2)),1)])),_:1})):b("v-if",!0),F(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},8,["class","style"]))}});export{ne as default};
1
+ import{defineComponent as e,ref as o,computed as t,provide as r,onMounted as s,onUnmounted as a,nextTick as i,openBlock as l,createBlock as n,unref as m,normalizeClass as d,normalizeStyle as p,withCtx as u,createElementBlock as c,createVNode as f,isRef as h,Fragment as y,renderList as g,createCommentVNode as b,createElementVNode as j,withKeys as v,toDisplayString as k,renderSlot as F}from"vue";import{useTheme as C}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as S,cloneDeep as H,isObject as x,isBoolean as A}from"lodash-es";import{createForm as L,onFormMount as O,onFieldValueChange as B,onFieldMount as R,onFieldUnmount as w,onFieldReact as D}from"@formily/core";import{Path as _}from"@formily/path";import{FormProvider as V,FormConsumer as I}from"@formily/vue";import{NForm as N,NTabs as W,NTabPane as q,NConfigProvider as E}from"naive-ui";import{InjectionFormLifeCycleCaller as K,InjectionFormGraph as T}from"./constants/index.js";import{useAutoHidden as U}from"./hooks/useAutoHidden.js";import{useComplexOptionsSpan as G}from"./hooks/useComplexOptions.js";import{useFormDomEvent as M,useFormExposeEvent as P}from"./hooks/useFormEvent.js";import{useFormGraph as J}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as $}from"./hooks/useFormRenderLifeCycle.js";import{useLowCodeEvent as z}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as Q}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as X}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as Y}from"./hooks/useOperationalForm.js";import{useWordbookSetting as Z}from"./hooks/useWordbookSetting.js";import"../../../shared/utils/index.js";import"@vicons/ionicons5";import"@vue/shared";import"../index.js";import{createObjSchema as ee}from"./utils/schema.js";import{useFieldListAdaptor as oe}from"./hooks/useFieldListAdaptor.js";import{useFieldVisitor as te}from"./hooks/useFieldVisitor.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{validateMessageLocale as re}from"./hooks/useFormValidator.js";import{useAnchor as se}from"./hooks/useAnchor.js";import{useFormContext as ae}from"./hooks/useFormContext.js";import"./hooks/useFormRenderOptions.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},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},lowCodeReactions:{type:Array},operationalForm:{type:Object},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean},emits:["formChange","annotationChange","scroll"],setup(e,{expose:ne,emit:me}){const de=e,pe=C(),{nuiThemeOverrides:ue}=X();re();const ce=o(),fe=t((()=>S(de.maxHeight)?de.maxHeight+"px":de.maxHeight)),{SchemaField:he,businessCollector:ye,formItemDepsCollector:ge,changeContextCollector:be,formUUID:je}=ae(de,me),{anchorBarRef:ve,currentAnchor:ke,updateAnchorList:Fe,anchorIdList:Ce,onScroll:Se}=se(de,me,ce,ge),{callLifeCycle:He}=$(de);r(K,He),He("onSetup");const{trigger:xe}=U(),{observeFormGraph:Ae,setGraph:Le,removeGraph:Oe}=J();r(T,Ae);const{lowCodeEventTrigger:Be}=z(),Re=L({initialValues:de.initialData,effects(e){const o={};O((()=>{Object.assign(o,H(e.values))})),B("*",(t=>{const r=_.getIn(o,t.path);_.setIn(o,t.path,t.value);const s=t.props.name.toString();ye.trigger(e,s),ge.trigger(s),me("formChange",{fieldInstance:t,fieldKey:s,oldValue:r,fieldName:t.title,value:t.value,context:be.getContext(s,t.value)}),Be(t),we(s),_e(s),Ie.trigger(s,t.value)})),R("*",Le),w("*",Oe),de.linebarAutoHidden&&(D("*",xe),O((e=>e.query("*").forEach(xe)))),de.anchor&&D("*",Fe)}}),{lowCodeReactionsHandler:we,triggerAllReactionsHandler:De}=Q(t((()=>de.lowCodeReactions)),Re),{operationalFormHandler:_e,triggerAllOperationalFormHandler:Ve}=Y(t((()=>de.operationalForm)),Re),Ie=Z(Re,be);s(De),s(Ve);const{schemaAdaptor:Ne}=oe(ye);let We=de.fieldList||[];const qe=t((()=>de.schema?de.schema:de.fieldList?(We=te().traverse(H(de.fieldList),de.fieldVisitor),ee(Ne(We,de))):ee({}))),{onKeydown:Ee}=M({formModel:Re,formRenderRef:ce,props:de}),{clearSpan:Ke}=G();a((()=>Ke(je)));const Te=P({formModel:Re,formRenderRef:ce,formItemDepsCollector:ge,getFieldList:()=>We,formUUID:je});return ne({formModel:Re,validate:(e="*",o={})=>Te.validate(e,o),getFormValues:(e=!0)=>Te.getFormValues(e),async setFormValues(e,o={},t=!1,r=!0){var s,a,l,n,m;let d=!0,p=!0,u=!0;x(o)?(p=null==(s=o.needSplitExtendKey)||s,d=null==(a=o.avoidDependKeyConnection)||a,t=null!=(l=o.avoidBusinessConnection)&&l,u=null==(n=o.avoidWordbookSettingConnection)||n,r=null==(m=o.overwrite)||m):A(o)&&(p=o),t&&(ye.triggerLock=!0),d&&(ge.triggerDisabled=!0),u&&Ie.setDisabled(!0),Te.setFormValues(e,p,r),await i(),ye.triggerLock=!1,ge.triggerDisabled=!1,Ie.setDisabled(!1)},setFieldState(e,o){Te.setFieldState(e,o)},resetFields(e="*"){Te.resetFields(e)},queryWidget:async e=>Te.queryWidget(e),getFieldList:()=>We,async reload(){console.error("reload function is abstract,it should be overwrite!")}}),(o,t)=>(l(),n(m(N),{class:d(["form-render",{"form-render--out-border":e.outBordered}]),"require-mark-placement":"left",style:p(m(pe))},{default:u((()=>[e.anchor?(l(),c("section",ie,[f(m(W),{value:m(ke),"onUpdate:value":t[0]||(t[0]=e=>h(ke)?ke.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ve},{default:u((()=>[(l(!0),c(y,null,g(m(Ce),(e=>(l(),n(m(q),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):b("v-if",!0),f(m(E),{"theme-overrides":m(ue)},{default:u((()=>[j("section",{class:"form-render__wrapper",style:p({"--column":e.column,"--form-height":m(fe)}),ref_key:"formRenderRef",ref:ce,onScroll:t[1]||(t[1]=(...e)=>m(Se)&&m(Se)(...e)),onKeydownCapture:t[2]||(t[2]=v(((...e)=>m(Ee)&&m(Ee)(...e)),["enter"]))},[f(m(V),{form:m(Re)},{default:u((()=>[f(m(he),{schema:m(qe)},null,8,["schema"]),e.consumer?(l(),n(m(I),{key:0},{default:u((({form:e})=>[j("div",le,k(JSON.stringify(e.values,null,2)),1)])),_:1})):b("v-if",!0),F(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},8,["class","style"]))}});export{ne as default};
@@ -1,4 +1,4 @@
1
- import { AnyFn } from '../../../../es/shared/types';
1
+ import { Func } from '../../../../es/shared/types';
2
2
  import { FormRenderExpose } from '../../../../es/components/form-render';
3
3
  declare const _default: import("vue").DefineComponent<{}, {
4
4
  formRenderRef: import("vue").Ref<FormRenderExpose | undefined>;
@@ -122,7 +122,7 @@ declare const _default: import("vue").DefineComponent<{}, {
122
122
  }>>;
123
123
  };
124
124
  requestInstance: {
125
- type: import("vue").PropType<import("../..").FormRequestDefine.RequestInstance>;
125
+ type: import("vue").PropType<import("../../../../es/components/form-render").RequestInstance>;
126
126
  };
127
127
  enterToNextWidget: {
128
128
  type: import("vue").PropType<boolean | ((fieldItem: import("../../../../es/components/form-render").FieldItem) => boolean | void)>;
@@ -267,7 +267,7 @@ declare const _default: import("vue").DefineComponent<{}, {
267
267
  }>>;
268
268
  };
269
269
  requestInstance: {
270
- type: import("vue").PropType<import("../..").FormRequestDefine.RequestInstance>;
270
+ type: import("vue").PropType<import("../../../../es/components/form-render").RequestInstance>;
271
271
  };
272
272
  enterToNextWidget: {
273
273
  type: import("vue").PropType<boolean | ((fieldItem: import("../../../../es/components/form-render").FieldItem) => boolean | void)>;
@@ -321,7 +321,7 @@ declare const _default: import("vue").DefineComponent<{}, {
321
321
  changeContextCollector: import("../../../../es/components/form-render").ContextCollector;
322
322
  formUUID: string;
323
323
  anchorBarRef: import("vue").Ref<{
324
- syncBarPosition: AnyFn<any[], any>;
324
+ syncBarPosition: Func<any[], any>;
325
325
  } | undefined>;
326
326
  currentAnchor: import("vue").WritableComputedRef<string>;
327
327
  updateAnchorList: (field: import("@formily/core").GeneralField) => void;
@@ -434,7 +434,7 @@ declare const _default: import("vue").DefineComponent<{}, {
434
434
  afterOptionInit(fieldKey: string, options: import("../../../../es/shared/types").AnyObject[], payload?: import("../../../../es/shared/types").AnyObject | undefined): void;
435
435
  }>;
436
436
  businessFormatter: import("../../../../es/components/form-render").FormBusinessFormatter;
437
- requestInstance: import("../..").FormRequestDefine.RequestInstance;
437
+ requestInstance: import("../../../../es/components/form-render").RequestInstance;
438
438
  enterToNextWidget: boolean | ((fieldItem: import("../../../../es/components/form-render").FieldItem) => boolean | void);
439
439
  lowCodeReactions: import("../../../../es/shared/types").FormLowCodeReactions.Config[];
440
440
  linebarAutoHidden: boolean;
@@ -842,7 +842,7 @@ declare const _default: import("vue").DefineComponent<{}, {
842
842
  }>>;
843
843
  };
844
844
  requestInstance: {
845
- type: import("vue").PropType<import("../..").FormRequestDefine.RequestInstance>;
845
+ type: import("vue").PropType<import("../../../../es/components/form-render").RequestInstance>;
846
846
  };
847
847
  enterToNextWidget: {
848
848
  type: import("vue").PropType<boolean | ((fieldItem: import("../../../../es/components/form-render").FieldItem) => boolean | void)>;
@@ -1 +1 @@
1
- import*as s from"./combination.js";import*as t from"./complex.js";import*as o from"./date.js";import*as r from"./formItem.js";import*as m from"./input.js";import*as e from"./inputGroup.js";import*as i from"./inputNumber.js";import*as a from"./jsonCombination/index.js";import*as p from"./levelSearchCascader/index.js";import*as n from"./lineBar/index.js";import*as x from"./radio_checkbox.js";import*as c from"./remoteSearch.js";import*as f from"./searchCascade.js";import*as j from"./select.js";import*as d from"./simpleComponent.js";import*as l from"./slider.js";import*as u from"./switch.js";import*as h from"./textarea.js";import{separateMetaModule as b}from"../../../../../shared/utils/index.js";var C=b(Object.assign({"./combination.tsx":s,"./complex.tsx":t,"./date.tsx":o,"./formItem.tsx":r,"./input.tsx":m,"./inputGroup.ts":e,"./inputNumber.tsx":i,"./jsonCombination/index.tsx":a,"./levelSearchCascader/index.tsx":p,"./lineBar/index.ts":n,"./radio&checkbox.tsx":x,"./remoteSearch.tsx":c,"./searchCascade.tsx":f,"./select.tsx":j,"./simpleComponent.tsx":d,"./slider.tsx":l,"./switch.tsx":u,"./textarea.tsx":h}));export{C as default};
1
+ import*as s from"./combination.js";import*as t from"./complex.js";import*as o from"./date.js";import*as r from"./formItem.js";import*as m from"./input.js";import*as e from"./inputGroup.js";import*as a from"./inputNumber.js";import*as i from"./jsonCombination/index.js";import*as p from"./levelSearchCascader.js";import*as n from"./lineBar/index.js";import*as x from"./radio_checkbox.js";import*as c from"./remoteSearch.js";import*as f from"./searchCascade.js";import*as j from"./select.js";import*as d from"./simpleComponent.js";import*as l from"./slider.js";import*as u from"./switch.js";import*as h from"./textarea.js";import{separateMetaModule as b}from"../../../../../shared/utils/index.js";var C=b(Object.assign({"./combination.tsx":s,"./complex.tsx":t,"./date.tsx":o,"./formItem.tsx":r,"./input.tsx":m,"./inputGroup.ts":e,"./inputNumber.tsx":a,"./jsonCombination/index.tsx":i,"./levelSearchCascader.tsx":p,"./lineBar/index.ts":n,"./radio&checkbox.tsx":x,"./remoteSearch.tsx":c,"./searchCascade.tsx":f,"./select.tsx":j,"./simpleComponent.tsx":d,"./slider.tsx":l,"./switch.tsx":u,"./textarea.tsx":h}));export{C as default};
@@ -1,11 +1,11 @@
1
- import { AnyFn } from '../../../../../../es/shared/types';
1
+ import { Func } from '../../../../../../es/shared/types';
2
2
  import { PropType } from 'vue';
3
3
  export declare const INPUT_NUMBER: import("vue").DefineComponent<{
4
4
  value: {
5
5
  type: (NumberConstructor | StringConstructor)[];
6
6
  };
7
7
  onChange: {
8
- type: PropType<AnyFn<any[], any>>;
8
+ type: PropType<Func<any[], any>>;
9
9
  required: true;
10
10
  };
11
11
  prefix: {
@@ -19,7 +19,7 @@ export declare const INPUT_NUMBER: import("vue").DefineComponent<{
19
19
  type: (NumberConstructor | StringConstructor)[];
20
20
  };
21
21
  onChange: {
22
- type: PropType<AnyFn<any[], any>>;
22
+ type: PropType<Func<any[], any>>;
23
23
  required: true;
24
24
  };
25
25
  prefix: {
@@ -34,7 +34,7 @@ export declare const INPUT_NUMBER_SLASH: import("vue").DefineComponent<{
34
34
  type: (NumberConstructor | StringConstructor)[];
35
35
  };
36
36
  onChange: {
37
- type: PropType<AnyFn<any[], any>>;
37
+ type: PropType<Func<any[], any>>;
38
38
  required: true;
39
39
  };
40
40
  prefix: {
@@ -51,7 +51,7 @@ export declare const INPUT_NUMBER_SLASH: import("vue").DefineComponent<{
51
51
  type: (NumberConstructor | StringConstructor)[];
52
52
  };
53
53
  onChange: {
54
- type: PropType<AnyFn<any[], any>>;
54
+ type: PropType<Func<any[], any>>;
55
55
  required: true;
56
56
  };
57
57
  prefix: {
@@ -1,5 +1,6 @@
1
- import { AnyObject } from '../../../../../../../es/shared/types';
1
+ import { AnyObject } from '../../../../../../es/shared/types';
2
2
  import { PropType } from 'vue';
3
+ declare type ValueType = string | AnyObject[];
3
4
  export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
4
5
  options: {
5
6
  type: PropType<AnyObject[]>;
@@ -53,7 +54,7 @@ export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
53
54
  };
54
55
  onChange: {};
55
56
  value: {
56
- type: PropType<string | AnyObject[]>;
57
+ type: PropType<ValueType>;
57
58
  };
58
59
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
59
60
  options: {
@@ -108,7 +109,7 @@ export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
108
109
  };
109
110
  onChange: {};
110
111
  value: {
111
- type: PropType<string | AnyObject[]>;
112
+ type: PropType<ValueType>;
112
113
  };
113
114
  }>> & {
114
115
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
@@ -119,3 +120,4 @@ export declare const LEVEL_SEARCH_CASCADER: import("vue").DefineComponent<{
119
120
  lazyRequest: boolean;
120
121
  requestCache: boolean;
121
122
  }>;
123
+ export {};
@@ -0,0 +1 @@
1
+ import{defineComponent as e,computed as r,ref as a,inject as t,watch as l,createVNode as o}from"vue";import{isEqual as u,isArray as n,isEmpty as i,isString as s,isNumber as v,isFunction as d,omit as c,cloneDeep as p}from"lodash-es";import"../../../index.js";import{InjectionAsyncQueue as f}from"../../constants/index.js";import{useCommonInjection as y}from"../../hooks/useCommonInjection.js";import{formRenderLog as m}from"../../utils/index.js";import{connect as h,mapProps as k}from"@formily/vue";import g from"../../../../search-cascader/index.js";import j from"../../../../../shared/components/no-data/NoData.vue.js";import{assignUpdateValue as w}from"../../utils/schema.js";import{useFormField as _}from"../../hooks/useFormField.js";import{useFormRequest as b}from"../../hooks/useFormRequest.js";const K=h(e({name:"FormSearchCascade",props:{options:{type:Array,default:()=>[]},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},autograph:{type:String,required:!0},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},wordbook:{type:Object,required:!0},onChange:{},value:{type:[String,Array]}},emits:["update:value"],setup(e,{emit:h}){const k=r({get:()=>e.value,set(r){u(r,e.value)||h("update:value",r)}}),w=a(!1),K=a([]),{field:F,fieldKey:O}=_(),q=r((()=>{var r,a,t;return null!=(t=null==(a=null==(r=e.wordbook)?void 0:r.show_key)?void 0:a[0])?t:e.labelField})),S=r((()=>{var r,a;return null!=(a=null==(r=e.wordbook)?void 0:r.value_key)?a:e.valueField})),x=r((()=>{var r,a;return null==(a=null==(r=e.wordbook)?void 0:r.render_key)?void 0:a[0]})),C=r((()=>{var r;return(null==(r=e.wordbook)?void 0:r.level_num)||1/0})),L=t(f),{getSearchRequestInfo:P}=b(),A=a(150),I=a();async function R(r,a,t=!0){var l,o,u,f;if(A.value=a&&(null==(l=I.value)?void 0:l.getWidth())||150,n(e.value)&&!i(e.value)&&e.value.every((e=>e[S.value]))&&!r&&!a){const r=1===e.value.length,a=null==(o=K.value)?void 0:o.length,[t,l]=function(e){if(!e.length)return[];const r=[(e=p(e))[0]];let a=e[0];for(let r=1;r<e.length;r++){const t=e[r];t&&(a.children=[t],t.parent=a,a=t)}return[e,r]}(e.value),u=t[Math.max(0,t.length-2)];if(!r){K.value=l;const e=t[Math.max(0,t.length-2)];return await R(e,void 0),e}if(a)return u}try{if(r&&!r.__keyword&&r.isLeaf)return y(r);if(!(null==r?void 0:r.__keyword)){const l=await L.addAsync(function(r,t,l,o,u){const n={autograph:()=>t,wordbookId:"id",wordbookType:"type",fieldKeys:()=>r.search_key?JSON.stringify(r.search_key):void 0,conObj:()=>JSON.stringify(function(e,r,a){return r?e.conObj||[]:a?[{con:"EQ",is_compare_field:!1,field_key:e.level_key,value:a[S.value]}]:e.conObjFirstLevel||[]}(r,a,o)),primaryKey:"primary_key",levelKey:"level_key",keyword:()=>a,page:()=>1},i=Object.entries(n).reduce(((e,[a,t])=>(e[a]=s(t)?r[t]:d(t)?t():void 0,e)),{});return{...P(),params:i,key:u,cache:e.requestCache,payload:{field:l,labelKey:q.value,valueKey:S.value}}}(e.wordbook,e.autograph,F.value,r,O.value));if(r){if(!l.length)return t?y(r):Promise.reject();r.children=l.map((e=>function(e,r,a){return{...e,parent:r,isLeaf:h(r)+1>=a}}(e,r,C.value)))}else K.value=l.map((e=>function(e,r){e.__keyword=!!r,e.isLeaf=!!r,r&&(e[q.value]=e[x.value||q.value]||e[q.value]);return e}(e,a))),a&&(null==(u=I.value)||u.setCursor(K.value[0]));return}if(!s(r.id_link))return Promise.reject();const l=r.id_link.split("_").filter((e=>e));v(C.value)&&C.value!==1/0&&l.splice(C.value);const o=await async function(r){if(!P().primaryKeyUrl)return[];try{return await L.addAsync(a(e.wordbook,e.autograph,r,O.value))}catch(e){s(e)&&m(e)}function a(r,a,t,l){const o=P();return{key:l,params:{autograph:a,tableId:r.id,primaryKeyValue:t.join(","),page:1},...o,url:o.primaryKeyUrl,cache:e.requestCache,payload:{field:F.value,labelKey:q.value,valueKey:S.value}}}}(l);if(!o)return Promise.reject();const{lastOption:n,options:c}=function(e,r){let a=e[0];return{options:r.reduce(((r,l,o)=>{const u=t(e,l);return 0===o?(a=u,[u]):(Object.assign(u,{parent:a,isLeaf:o+1>=C.value}),a.children=[u],a=u,r)}),[]),lastOption:a};function t(e,r){return e.find((e=>e[S.value]===r))}}(o,l);return c.length<C.value&&(await R(n),i(n.children))?(k.value=function(e,r){return r.map((r=>e.find((e=>e[S.value]===r))))}(o,l),w.value=!1,Promise.reject()):(K.value=c,null==(f=I.value)||f.setCursor(n),n)}catch(e){s(e)&&m(e)}function y(e){return k.value=function(e){const r=[];let a=e;for(;a;)r.unshift(c(a,["parent","isLeaf","__keyword","children"])),a=a.parent;return r}(e),w.value=!1,Promise.reject()}function h(e){let r=1,a=e.parent;for(;a;)r++,a=a.parent;return r}}function U(){A.value=150}l((()=>e.wordbook),((r,a)=>{u(r,a)||(K.value=[],r&&(k.value||!e.lazyRequest)&&R())}),{immediate:!0});const{injectValueValidate:V,injectValueBindKey:B}=y();V(k);const N=B(k);return()=>o(g,{ref:I,value:k.value,"onUpdate:value":e=>k.value=e,show:w.value,"onUpdate:show":e=>w.value=e,options:K.value,key:N.value,labelKey:q.value,valueKey:S.value,search:R,onFocus:U,menuWidth:A.value},{empty:()=>o(j,null,null)})}}),k({dataSource:"options"},w));export{K as LEVEL_SEARCH_CASCADER};
@@ -1,4 +1,4 @@
1
- import { AnyObject, AnyFn } from '../../../../../../es/shared/types';
1
+ import { AnyObject, Func } from '../../../../../../es/shared/types';
2
2
  import { PropType } from 'vue';
3
3
  import { UrlConfig } from '../../../../../../es/components/form-render';
4
4
  export declare const SEARCH_CASCADER: import("vue").DefineComponent<{
@@ -21,7 +21,7 @@ export declare const SEARCH_CASCADER: import("vue").DefineComponent<{
21
21
  default: boolean;
22
22
  };
23
23
  onFocus: {
24
- type: PropType<AnyFn<any[], any>>;
24
+ type: PropType<Func<any[], any>>;
25
25
  };
26
26
  filterable: {
27
27
  type: BooleanConstructor;
@@ -61,7 +61,7 @@ export declare const SEARCH_CASCADER: import("vue").DefineComponent<{
61
61
  default: boolean;
62
62
  };
63
63
  onFocus: {
64
- type: PropType<AnyFn<any[], any>>;
64
+ type: PropType<Func<any[], any>>;
65
65
  };
66
66
  filterable: {
67
67
  type: BooleanConstructor;
@@ -1,6 +1,6 @@
1
- import { FormRequestDefine } from '../../../../../../es/shared/hooks';
2
1
  import { AnyObject, ArrayAble } from '../../../../../../es/shared/types';
3
2
  import { RecommendItem } from '../../../../../../es/components/recommend-search/src/types';
3
+ import { RecommendIds } from '../../hooks';
4
4
  import { UrlConfig } from '../../types';
5
5
  import { PropType } from 'vue';
6
6
  export declare const SELECT: import("vue").DefineComponent<{
@@ -81,7 +81,7 @@ export declare const SELECT: import("vue").DefineComponent<{
81
81
  type: PropType<RecommendItem[]>;
82
82
  };
83
83
  getRecommendInfo: {
84
- type: PropType<() => FormRequestDefine.RecommendIds>;
84
+ type: PropType<() => RecommendIds>;
85
85
  };
86
86
  commonNum: {
87
87
  type: NumberConstructor;
@@ -187,7 +187,7 @@ export declare const SELECT: import("vue").DefineComponent<{
187
187
  type: PropType<RecommendItem[]>;
188
188
  };
189
189
  getRecommendInfo: {
190
- type: PropType<() => FormRequestDefine.RecommendIds>;
190
+ type: PropType<() => RecommendIds>;
191
191
  };
192
192
  commonNum: {
193
193
  type: NumberConstructor;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as l,inject as t,useAttrs as a,ref as o,createVNode as u,mergeProps as n,toRaw as r,nextTick as s,createTextVNode as i}from"vue";import{arrayed as p}from"../../../../../shared/utils/index.js";import{HelpCircleSharp as m}from"@vicons/ionicons5";import{promiseTimeout as c}from"@vueuse/shared";import{cloneDeep as d,isArray as v,isString as f,isObject as y,omit as h,xor as g}from"lodash-es";import{useCommonInjection as S,useSelectOptionProps as b}from"../../hooks/useCommonInjection.js";import{useComplexOptions as j,useComplexOptionsSpan as C}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as w,InjectionFormUUID as k}from"../../constants/index.js";import"../../../index.js";import"@formily/core";import"@formily/path";import"@vue/shared";import"@vueuse/core";import{NSelect as B,NTooltip as F,NIcon as x,NTag as A,NButton as O}from"naive-ui";import"date-fns";import{assignUpdateValue as H,assignClearBindVisited as P,createVisitedSetter as R}from"../../utils/schema.js";import{useFormField as V}from"../../hooks/useFormField.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import{connect as K,mapProps as L}from"@formily/vue";import"./index.js";import{useUrlConfigOptions as E,useAutographOptions as _,useRecommendOptions as I,searchContentMatcher as M}from"../../hooks/useFormRenderOptions.js";const N=K(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}},emits:["update:value","postRecommend"],setup(e,{slots:H,emit:P}){const K=l({get:()=>e.value,async set(e){P("update:value",e),Y(e)}}),L=l((()=>(e.multiple&&e.allowModify&&console.warn("多选模式下不支持allowModify"),!e.multiple&&e.allowModify))),{labelKey:N,valueKey:q,showKey:z,fetchData:W,searchContent:U,fullOptions:D,filterOptions:T,remoteOptions:$,loading:G}=e.urlConfig?E(e,K):_(e,K),{renderComplexOption:J,hasComplexOption:Q}=j(e,K),{getRecommend:X,postRecommend:Y,sortedOptions:Z}=I(e,T,P,N,q),{field:ee,fieldKey:le}=V();t(w).setContext(le.value,(e=>({currentOption:d(function(e){const l=pe(D.value);return v(e)?function(e){const t=l.reduce(((e,l)=>(e[l[q.value]]=l,e)),{});return e.map((e=>t[e]))}(e):(t=e,l.find((e=>e[q.value]===t)));var t}(e))})));const te=async(e="")=>(U.value=e,Promise.allSettled([W(e),X(e)])),{injectValueValidate:ae,injectValueWatchFromEmpty:oe,injectValueBindKey:ue}=S();oe(K,te),ae(K);const ne=ue(K),{menuProps:re,nodeProps:se}=b();function ie(e){const l=e[N.value];if(!l||!f(l))return"";const t=U.value?M(U.value,l):null,a=t?u("section",null,[t.map(((e,l)=>0!==l&&e?u("span",{style:{color:l%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):l;return e.desc?u("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[a,e.desc?u(F,null,{trigger:()=>u(x,{component:m},null),default:()=>e.desc}):null]):a}function pe(l){return e.allowCreate&&U.value&&!l.some((e=>e[N.value]===U.value))?[...l,{[N.value]:U.value,[q.value]:U.value,created:!0,shouldSave:e.shouldSave}]:l}const me=l((()=>pe(L.value?D.value:Z.value))),ce=a(),de=l((()=>{if(e.allowCreate||e.showCustomValue)return K.value;const l=e.multiple&&v(K.value);return D.value.find((e=>l?K.value.includes(e[q.value]):e[q.value]===K.value))?K.value:null})),ve=o(!1);async function fe(e){e&&await te(),ve.value=e}let ye=null;async function he(l,t){!t||v(t)?K.value=l:t&&(K.value=t[e.allowModify?N.value:q.value]),ye&&y(t)&&L.value&&(ye.focus(),await s(),ye.value=t[N.value]||"",ye.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&ye.setSelectionRange(0,0)),$.value&&t&&p(t).forEach((e=>{if(!y(e))return;const l=e;l.created&&l.shouldSave&&$.value.push(h(r(l),["created","shouldSave"]))}))}const ge=t(k),{getSpan:Se}=C(),be=R(ee,(async l=>{var t,a,o;L.value&&(ye=l.target,ye&&K.value&&(await s(),ye.value=null!=(o=null!=(a=null==(t=D.value.find((e=>e[q.value]===K.value)))?void 0:t[N.value])?a:K.value)?o:"",ye.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&(await c(0),ye.setSelectionRange(0,0))))}));function je(e){if(L.value&&(ye=e.target,ye)){if(!ye.value)return K.value=null;U.value=ye.value,K.value=ye.value}}const Ce=o("");function we({option:l,handleClose:t}){var a;const o=null!=(a=z.value&&l[z.value])?a:l[N.value];return e.multiple?(Ce.value="",e.deletable?u(A,{closable:!0,onClose:e=>{e.stopPropagation(),t()}},{default:()=>u("span",{title:o},[o])}):`${o} ;`):(Ce.value=o,o)}function ke(l){if(!e.multiple)return;const t=l?me.value.map((e=>e[q.value])):[];g(t,e.value).length&&(K.value=t)}function Be(){return[u(O,{quaternary:!0,type:"primary",size:"tiny",onClick:()=>ke(!0)},{default:()=>[i("全选")]}),u(O,{quaternary:!0,type:"primary",size:"tiny",onClick:()=>ke(!1)},{default:()=>[i("清空")]})]}function Fe(l){let t=H;return e.multiple&&e.selectAll&&(t={action:Be,...H}),u(B,n({title:Ce.value,key:ne.value,multiple:e.multiple,remote:!0,filterable:!0,loading:G.value,value:de.value,onUpdateValue:he,"menu-props":re,"node-props":se,labelField:N.value,valueField:q.value,options:me.value,onSearch:te,show:ve.value,"onUpdate:show":fe,onFocus:be,onBlur:je,renderLabel:ie,renderTag:we},l,ce),t)}return()=>{var e,l;if(!Q.value)return Fe();const t=null!=(l=null==(e=ee.value.decoratorProps)?void 0:e.span)?l:6,a=Se(ge,ee.value.address);return u("section",{class:"form-render__selectChildField",style:{"--column":a+t}},[Fe({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),D.value.map((e=>J({option:e,value:K.value,valueKey:q.value,labelKey:N.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":a}}})))])}}}),L({dataSource:"options"},H,P));export{N as SELECT};
1
+ import{defineComponent as e,computed as l,inject as t,useAttrs as a,ref as o,createVNode as u,mergeProps as n,toRaw as r,nextTick as s,createTextVNode as i}from"vue";import{arrayed as p}from"../../../../../shared/utils/index.js";import{HelpCircleSharp as m}from"@vicons/ionicons5";import{promiseTimeout as c}from"@vueuse/shared";import{cloneDeep as d,isArray as v,isString as f,isObject as y,omit as h,xor as g}from"lodash-es";import{useCommonInjection as S,useSelectOptionProps as b}from"../../hooks/useCommonInjection.js";import{useComplexOptions as j,useComplexOptionsSpan as C}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as w,InjectionFormUUID as k}from"../../constants/index.js";import"../../../index.js";import"@formily/core";import"@formily/path";import"@vue/shared";import"@vueuse/core";import{NSelect as B,NTooltip as F,NIcon as x,NTag as A,NButton as O}from"naive-ui";import"date-fns";import{assignUpdateValue as H,assignClearBindVisited as P,createVisitedSetter as R}from"../../utils/schema.js";import{useFormField as V}from"../../hooks/useFormField.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import{connect as K,mapProps as L}from"@formily/vue";import"./index.js";import{useUrlConfigOptions as E,useAutographOptions as _,useRecommendOptions as I,searchContentMatcher as N}from"../../hooks/useFormRenderOptions.js";const q=K(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}},emits:["update:value","postRecommend"],setup(e,{slots:H,emit:P}){const K=l({get:()=>e.value,async set(e){P("update:value",e),Y(e)}}),L=l((()=>(e.multiple&&e.allowModify&&console.warn("多选模式下不支持allowModify"),!e.multiple&&e.allowModify))),{labelKey:q,valueKey:M,showKey:z,fetchData:W,searchContent:U,fullOptions:D,filterOptions:T,remoteOptions:$,loading:G}=e.urlConfig?E(e,K):_(e,K),{renderComplexOption:J,hasComplexOption:Q}=j(e,K),{getRecommend:X,postRecommend:Y,sortedOptions:Z}=I(e,T,P,q,M),{field:ee,fieldKey:le}=V();t(w).setContext(le.value,(e=>({currentOption:d(function(e){const l=pe(D.value);return v(e)?function(e){const t=l.reduce(((e,l)=>(e[l[M.value]]=l,e)),{});return e.map((e=>t[e]))}(e):(t=e,l.find((e=>e[M.value]===t)));var t}(e))})));const te=async(e="")=>(U.value=e,Promise.allSettled([W(e),X(e)])),{injectValueValidate:ae,injectValueWatchFromEmpty:oe,injectValueBindKey:ue}=S();oe(K,te),ae(K);const ne=ue(K),{menuProps:re,nodeProps:se}=b();function ie(e){const l=e[q.value];if(!l||!f(l))return"";const t=U.value?N(U.value,l):null,a=t?u("section",null,[t.map(((e,l)=>0!==l&&e?u("span",{style:{color:l%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):l;return e.desc?u("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[a,e.desc?u(F,null,{trigger:()=>u(x,{component:m},null),default:()=>e.desc}):null]):a}function pe(l){return e.allowCreate&&U.value&&!l.some((e=>e[q.value]===U.value))?[...l,{[q.value]:U.value,[M.value]:U.value,created:!0,shouldSave:e.shouldSave}]:l}const me=l((()=>pe(L.value?D.value:Z.value))),ce=a(),de=l((()=>{if(e.allowCreate||e.showCustomValue)return K.value;const l=e.multiple&&v(K.value);return D.value.find((e=>l?K.value.includes(e[M.value]):e[M.value]===K.value))?K.value:null})),ve=o(!1);async function fe(e){e&&await te(),ve.value=e}let ye=null;async function he(l,t){K.value=l,ye&&y(t)&&L.value&&(ye.focus(),await s(),ye.value=t[q.value]||"",ye.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&ye.setSelectionRange(0,0)),$.value&&t&&p(t).forEach((e=>{if(!y(e))return;const l=e;l.created&&l.shouldSave&&$.value.push(h(r(l),["created","shouldSave"]))}))}const ge=t(k),{getSpan:Se}=C(),be=R(ee,(async l=>{var t,a,o;L.value&&(ye=l.target,ye&&K.value&&(await s(),ye.value=null!=(o=null!=(a=null==(t=D.value.find((e=>e[M.value]===K.value)))?void 0:t[q.value])?a:K.value)?o:"",ye.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&(await c(0),ye.setSelectionRange(0,0))))}));function je(e){if(!L.value)return;if(ye=e.target,!ye)return;if(!ye.value)return K.value=null;const l=D.value.find((e=>e[q.value]===ye.value));l?K.value=l[M.value]:(U.value=ye.value,K.value=ye.value)}const Ce=o("");function we({option:l,handleClose:t}){var a;const o=null!=(a=z.value&&l[z.value])?a:l[q.value];return e.multiple?(Ce.value="",e.deletable?u(A,{closable:!0,onClose:e=>{e.stopPropagation(),t()}},{default:()=>u("span",{title:o},[o])}):`${o} ;`):(Ce.value=o,o)}function ke(l){if(!e.multiple)return;const t=l?me.value.map((e=>e[M.value])):[];g(t,e.value).length&&(K.value=t)}function Be(){return[u(O,{quaternary:!0,type:"primary",size:"tiny",onClick:()=>ke(!0)},{default:()=>[i("全选")]}),u(O,{quaternary:!0,type:"primary",size:"tiny",onClick:()=>ke(!1)},{default:()=>[i("清空")]})]}function Fe(l){let t=H;return e.multiple&&e.selectAll&&(t={action:Be,...H}),u(B,n({title:Ce.value,key:ne.value,multiple:e.multiple,remote:!0,filterable:!0,loading:G.value,value:de.value,onUpdateValue:he,"menu-props":re,"node-props":se,labelField:q.value,valueField:M.value,options:me.value,onSearch:te,show:ve.value,"onUpdate:show":fe,onFocus:be,onBlur:je,renderLabel:ie,renderTag:we},l,ce),t)}return()=>{var e,l;if(!Q.value)return Fe();const t=null!=(l=null==(e=ee.value.decoratorProps)?void 0:e.span)?l:6,a=Se(ge,ee.value.address);return u("section",{class:"form-render__selectChildField",style:{"--column":a+t}},[Fe({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),D.value.map((e=>J({option:e,value:K.value,valueKey:M.value,labelKey:q.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":a}}})))])}}}),L({dataSource:"options"},H,P));export{q as SELECT};