cnhis-design-vue 3.1.53-release.0 → 3.1.53-release.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/es/components/annotation-edit/src/AnnotationEdit.js +1 -1
  2. package/es/components/big-table/src/components/edit-form/edit-separate.vue.d.ts +4 -4
  3. package/es/components/big-table/src/hooks/useEdit.d.ts +4 -4
  4. package/es/components/big-table/src/hooks/useSeparateRow.d.ts +4 -4
  5. package/es/components/body-select/index.d.ts +9 -4
  6. package/es/components/body-select/src/config/index.js +1 -1
  7. package/es/components/body-select/src/hooks/renderCanvas.d.ts +1 -1
  8. package/es/components/body-select/src/hooks/renderCanvas.js +1 -1
  9. package/es/components/body-select/src/index.vue.d.ts +9 -4
  10. package/es/components/body-select/src/index.vue2.js +1 -1
  11. package/es/components/button-print/index.d.ts +9 -0
  12. package/es/components/button-print/src/ButtonPrint.vue.d.ts +9 -0
  13. package/es/components/button-print/src/ButtonPrint.vue2.js +1 -1
  14. package/es/components/button-print/src/utils/dialog.d.ts +2 -2
  15. package/es/components/button-print/src/utils/print.d.ts +14 -13
  16. package/es/components/button-print/src/utils/print.js +1 -1
  17. package/es/components/callback/src/components/render/popupMaps.d.ts +69 -6
  18. package/es/components/card-reader-sdk/src/types/index.d.ts +3 -3
  19. package/es/components/date-picker/src/DatePicker.vue2.js +1 -1
  20. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
  21. package/es/components/form-config/index.d.ts +105 -26
  22. package/es/components/form-config/src/FormConfig.vue.d.ts +106 -27
  23. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  24. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +30 -6
  25. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +51 -12
  26. package/es/components/form-config/src/components/FormConfigEventSetting.vue2.js +1 -1
  27. package/es/components/form-render/index.d.ts +30 -6
  28. package/es/components/form-render/index.js +1 -1
  29. package/es/components/form-render/src/FormRender.vue.d.ts +31 -7
  30. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  31. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +31 -7
  32. package/es/components/form-render/src/components/renderer/{combination.d.ts → combination/combination.d.ts} +1 -1
  33. package/es/components/form-render/src/components/renderer/combination/combination.js +1 -0
  34. package/es/components/form-render/src/components/renderer/combination/hooks/index.d.ts +2 -0
  35. package/es/components/form-render/src/components/renderer/combination/hooks/index.js +1 -0
  36. package/es/components/form-render/src/components/renderer/combination/hooks/useCombination.d.ts +8 -0
  37. package/es/components/form-render/src/components/renderer/combination/hooks/useCombination.js +1 -0
  38. package/es/components/form-render/src/components/renderer/combination/index.d.ts +3 -0
  39. package/es/components/form-render/src/components/renderer/combination/index.js +1 -0
  40. package/es/components/form-render/src/components/renderer/combination/jsonCombination.js +1 -0
  41. package/es/components/form-render/src/components/renderer/combination/tableCombination.d.ts +61 -0
  42. package/es/components/form-render/src/components/renderer/combination/tableCombination.js +1 -0
  43. package/es/components/form-render/src/components/renderer/index.js +1 -1
  44. package/es/components/form-render/src/components/renderer/inputNumber.d.ts +5 -5
  45. package/es/components/form-render/src/components/renderer/{levelSearchCascader.d.ts → levelSearchCascader/index.d.ts} +3 -5
  46. package/es/components/form-render/src/components/renderer/levelSearchCascader/index.js +1 -0
  47. package/es/components/form-render/src/components/renderer/searchCascade.d.ts +3 -3
  48. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  49. package/es/components/form-render/src/components/renderer/select.d.ts +5 -5
  50. package/es/components/form-render/src/components/renderer/select.js +1 -1
  51. package/es/components/form-render/src/constants/index.d.ts +3 -2
  52. package/es/components/form-render/src/hooks/index.d.ts +0 -2
  53. package/es/components/form-render/src/hooks/index.js +1 -1
  54. package/es/components/form-render/src/hooks/useAnchor.d.ts +3 -3
  55. package/es/components/form-render/src/hooks/useCommonInjection.d.ts +2 -2
  56. package/es/components/form-render/src/hooks/useFieldListAdaptor.d.ts +2 -2
  57. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  58. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +10 -2
  59. package/es/components/form-render/src/hooks/useFormContext.d.ts +3 -3
  60. package/es/components/form-render/src/hooks/useFormContext.js +1 -1
  61. package/es/components/form-render/src/hooks/useFormItemDeps.d.ts +3 -3
  62. package/es/components/form-render/src/hooks/useFormRenderLifeCycle.d.ts +9 -1
  63. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +5 -5
  64. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  65. package/es/components/form-render/src/types/fieldItem.d.ts +5 -26
  66. package/es/components/form-render/src/types/index.d.ts +7 -14
  67. package/es/components/form-render/src/utils/index.d.ts +1 -2
  68. package/es/components/form-render/src/utils/index.js +1 -1
  69. package/es/components/form-render/src/utils/schema.d.ts +2 -2
  70. package/es/components/form-render/src/utils/schema.js +1 -1
  71. package/es/components/guide/src/renderer.js +1 -1
  72. package/es/components/iho-table/index.d.ts +39 -0
  73. package/es/components/iho-table/src/IhoTable.vue.d.ts +40 -0
  74. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  75. package/es/components/iho-table/src/constants/index.d.ts +4 -1
  76. package/es/components/iho-table/src/constants/index.js +1 -1
  77. package/es/components/iho-table/src/hooks/tapHooks/useEventHooks.d.ts +2 -2
  78. package/es/components/iho-table/src/hooks/tapHooks/useExposeHooks.d.ts +2 -2
  79. package/es/components/iho-table/src/hooks/useColumnConfigAdaptor.js +1 -1
  80. package/es/components/iho-table/src/plugins/defaultValuePlugin.js +1 -1
  81. package/es/components/iho-table/src/plugins/index.js +1 -1
  82. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +2 -2
  83. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useAutoFocus.js +1 -1
  84. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.d.ts +1 -0
  85. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/index.js +1 -0
  86. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/levelSearchCascade.vue.d.ts +552 -0
  87. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/levelSearchCascade.vue.js +1 -0
  88. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/levelSearchCascadePlugin/levelSearchCascade.vue2.js +1 -0
  89. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.d.ts +5 -2
  90. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  91. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
  92. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/editSeparate.vue.d.ts +2 -2
  93. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  94. package/es/components/iho-table/src/plugins/wordbookSettingPlugin.d.ts +1 -0
  95. package/es/components/iho-table/src/plugins/wordbookSettingPlugin.js +1 -0
  96. package/es/components/iho-table/src/types/index.d.ts +7 -2
  97. package/es/components/iho-table/src/types/pluginType.d.ts +3 -3
  98. package/es/components/iho-table/src/utils/index.d.ts +1 -1
  99. package/es/components/iho-table/src/utils/index.js +1 -1
  100. package/es/components/iho-table/style/index.css +1 -1
  101. package/es/components/index.css +1 -1
  102. package/es/components/index.d.ts +1 -0
  103. package/es/components/index.js +1 -1
  104. package/es/components/info-header/index.d.ts +97 -29
  105. package/es/components/info-header/src/InfoHeader.vue.d.ts +98 -30
  106. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +9 -5
  107. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +10 -6
  108. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +41 -13
  109. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +30 -6
  110. package/es/components/keyboard/src/Keyboard.vue2.js +1 -1
  111. package/es/components/search-cascader/index.d.ts +23 -3
  112. package/es/components/search-cascader/src/SearchCascader.vue.d.ts +24 -4
  113. package/es/components/search-cascader/src/SearchCascader.vue2.js +1 -1
  114. package/es/components/search-cascader/src/components/ClearIcon.vue.js +1 -0
  115. package/es/components/shortcut-setter/index.d.ts +34 -9
  116. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +35 -10
  117. package/es/components/steps-wheel/src/StepsWheel.vue2.js +1 -1
  118. package/es/components/time-picker/src/TimePicker.vue2.js +1 -1
  119. package/es/shared/components/InputNumberSlash/InputNumberSlash.d.ts +4 -4
  120. package/es/shared/components/SlotRender/SlotRender.d.ts +5 -5
  121. package/es/shared/hooks/index.d.ts +3 -0
  122. package/es/shared/hooks/index.js +1 -1
  123. package/es/shared/hooks/selectHooks/index.d.ts +4 -0
  124. package/es/shared/hooks/selectHooks/index.js +1 -0
  125. package/es/shared/hooks/selectHooks/useOptionFiltered.d.ts +10 -0
  126. package/es/shared/hooks/selectHooks/useOptionFiltered.js +1 -0
  127. package/es/shared/hooks/selectHooks/useSearchContent.d.ts +6 -0
  128. package/es/shared/hooks/selectHooks/useSearchContent.js +1 -0
  129. package/es/shared/hooks/selectHooks/useSelectAllowModify.d.ts +23 -0
  130. package/es/shared/hooks/selectHooks/useSelectAllowModify.js +1 -0
  131. package/es/shared/hooks/selectHooks/useSelectRenders.d.ts +21 -0
  132. package/es/shared/hooks/selectHooks/useSelectRenders.js +1 -0
  133. package/es/shared/hooks/{useAsyncQueue.d.ts → useAsyncQueue/index.d.ts} +7 -15
  134. package/es/shared/hooks/useAsyncQueue/index.js +1 -0
  135. package/es/shared/hooks/useAsyncQueue/types.d.ts +20 -0
  136. package/es/shared/hooks/useAsyncQueue/types.js +1 -0
  137. package/es/shared/hooks/useDateTime.d.ts +2 -2
  138. package/es/shared/hooks/useFormRequest/index.d.ts +24 -0
  139. package/es/shared/hooks/useFormRequest/index.js +1 -0
  140. package/es/shared/hooks/useFormRequest/types.d.ts +39 -0
  141. package/es/shared/hooks/useFormRequest/types.js +1 -0
  142. package/es/shared/hooks/useLevelSearchCascader.d.ts +31 -0
  143. package/es/shared/hooks/useLevelSearchCascader.js +1 -0
  144. package/es/shared/package.json.js +1 -1
  145. package/es/shared/types/business.d.ts +24 -0
  146. package/es/shared/types/index.d.ts +1 -1
  147. package/package.json +2 -2
  148. package/es/components/form-render/src/components/renderer/combination.js +0 -1
  149. package/es/components/form-render/src/components/renderer/jsonCombination/index.js +0 -1
  150. package/es/components/form-render/src/components/renderer/levelSearchCascader.js +0 -1
  151. package/es/components/form-render/src/hooks/useFormAsyncQueue.d.ts +0 -16
  152. package/es/components/form-render/src/hooks/useFormAsyncQueue.js +0 -1
  153. package/es/components/form-render/src/hooks/useFormRequest.d.ts +0 -26
  154. package/es/components/form-render/src/hooks/useFormRequest.js +0 -1
  155. package/es/shared/hooks/useAsyncQueue.js +0 -1
  156. /package/es/components/form-render/src/components/renderer/{jsonCombination → combination}/hooks/useDeepValidate.d.ts +0 -0
  157. /package/es/components/form-render/src/components/renderer/{jsonCombination → combination}/hooks/useDeepValidate.js +0 -0
  158. /package/es/components/form-render/src/components/renderer/{jsonCombination/index.d.ts → combination/jsonCombination.d.ts} +0 -0
@@ -1 +1 @@
1
- import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,pick as n}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as i,formRenderLog as r}from"../utils/index.js";import{format as s}from"date-fns";import{useFieldNormalize as l}from"./useFieldNormalize.js";import{fieldKeyEscape as a,createLinebarId as p}from"../utils/schema.js";import{useFormValidator as c}from"./useFormValidator.js";import{transformDateFormat as d}from"../utils/business.js";function m(e,o){Object.assign(e["x-component-props"],{...n(o,["wordbook","autograph"])})}function u(e,o){Object.assign(e["x-component-props"],{...n(o,["urlConfig","wordbook"])})}function f(f){const{createValidatorSchema:x}=c(),_=e=>{var o;const t={name:e.val_key,type:null!=(o=e.fieldType)?o:"string",title:e.alias||e.name,"x-component":e.html_type,default:e.default_val,"x-component-props":{placeholder:e.placeholder,clearable:"0"===e.is_empty,...e.componentProps||{}},"x-content":e.slots,"x-display":"0"===e.is_show?"hidden":"visible","x-pattern":"0"===e.is_edit?"disabled":"editable","x-compile-omitted":["title","x-component-props","x-decorator-props"]};e.reactions&&(t["x-reactions"]=e.reactions),e.noDecorator||Object.assign(t,{"x-decorator":"FORM_ITEM","x-decorator-props":{fieldItem:e,span:2*(e.elem_width||3),showLabel:"1"!==e.hide_title,remark:e.remark,propertyKey:e.val_key,annotation:e.annotation,...e.decoratorProps||{}}});const n=x(e);return n&&(t["x-validator"]=n),"0"===e.is_null&&(t.required=!0),t},h=e=>{var o,t,r,s,l,a,p;const c=_(e);e.urlConfig?u(c,e):e.autograph&&m(c,e);const d=!!e.__multiple,f="1"===e.allowModify,x=null!=(t=null==(o=e.componentProps)?void 0:o.selectAll)?t:e.selectAll;return Object.assign(c["x-component-props"],{multiple:d,options:(null==(r=e.componentProps)?void 0:r.options)||e.option,allowModify:f,allowCreate:"1"===e.free_entry||!!c["x-component-props"].allowCreate||f,shouldSave:"1"===e.save_free_entry,showField:null!=(l=e.show_key)?l:null==(s=e.componentProps)?void 0:s.showField,maxTagCount:null!=(p=i(e.multi_select_value))?p:null==(a=c["x-component-props"])?void 0:a.maxTagCount,selectAll:"1"===x||!0===x,...n(e,["lazyRequest","requestCache"])}),d&&(c.type="array"),c},g=e=>{var o,t;const n=_(e),i=null!=(t=null==(o=e.componentProps)?void 0:o.selectAll)?t:e.selectAll;return Object.assign(n["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,childWidthMode:e.childWidthMode,vertical:e.__vertical,selectAll:"1"===i||!0===i}),e.urlConfig?u(n,e):e.autograph&&m(n,e),n},y=e=>{const t=_(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},v=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{disabled:"1"===e.is_not_fold,id:p(e.val_key),show:"0"!==e.is_show,remark:e.remark}}),b=new Map([["LINEBAR",v],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=_(e);return Object.assign(o["x-component-props"],{...n(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=_(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=_(e),{decimal_length:t,validate:n,allowSlash:i}=e;return!0!==i&&"1"!==i||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:null!=t?t:null==n?void 0:n.decimal_length,whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",h],["REMOTE_SEARCH",h],["DATE",e=>{const o=_(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:d(e.date_format),validate:e.validate}),"current"===o.default&&(o.default=s(new Date,e.date_format||"yyyy-MM-dd")),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=_(e);return Object.assign(o["x-component-props"],{...n(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=_(e);return Object.assign(t["x-component-props"],{urlConfig:e.urlConfig,depth:null==(o=e.wordbook)?void 0:o.level_num,options:e.option}),t}],["COMBINATION",e=>{const o=_(e);return o.type="array",!1!==e.jsonCombination&&(o["x-component"]="JSON_COMBINATION"),Object.assign(o["x-decorator-props"],{showLabel:!1,showFeedback:!1}),Object.assign(o["x-component-props"],{title:e.alias||e.name,maxGroupNum:e.maxGroupNum,properties:e.children||[],combinationItemDeletable:e.combinationItemDeletable}),o}],["RADIO",g],["CHECKBOX",g],["SWITCH",e=>{const o=_(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close}),o}],["SLIDER",e=>{const o=_(e);return Object.assign(o["x-component-props"],{step:i(e.step_length),max:i(e.max_length),min:i(e.min_length),option:e.option}),o}],["COMPLEX",e=>{const o=_(e);Array.isArray(e.properties)&&r("COMPLEX控件的properties属性已经废弃, 请使用children作为替代, 在之后的版本中properties属性将不再支持");const t=Array.isArray(e.properties||e.children)?j(e.properties||e.children):{};return o.type=e.fieldType||"void",o.properties=t,Object.assign(o["x-decorator-props"],{showFeedback:!1}),Object.assign(o["x-component-props"],n(e,["wrapperStyle","display"])),o}]]),w=e=>{if(e.suffixConfig)return C(e);return(b.get(e.html_type)||y)(e)},C=o=>{if(!o.suffixConfig&&!o.prefixConfig)return w(o);const t=o.suffixConfig?e(o.suffixConfig):[],n=[...(o.prefixConfig?e(o.prefixConfig):[]).map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"}))),{...o,is_show:"1",hide_title:"1",suffixConfig:void 0,prefixConfig:void 0},...t.map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"})))],i=_(o),r=n.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(i,{type:"void",name:a(n),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...i["x-decorator-props"],showFeedback:!1,suffixFields:n.map((e=>e.val_key))},properties:j(n)}),i},{FieldNormalizeWaterfallHook:A,FieldListNormalizeWaterfallHook:O}=l();function j(o,n={column:9999}){let i=null;return O.call(t(o),n).reduce(((e,o,l)=>{var a;const p=null==(a=(o=A.call(o,n)).validate)?void 0:a.obj_type;return p&&f&&f.collect(p,t(o)),"LINEBAR"===o.html_type?(e[s(o)]=r(v(o),l),i=e[s(o)].properties={}):i?i[s(o)]=r(w(o),l):(i=null,e[s(o)]=r(w(o),l)),e}),{});function r(e,o){return e["x-index"]=o,e}function s(o){return o.suffixConfig?a([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:j}}export{f as useFieldListAdaptor};
1
+ import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,pick as n}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as i,formRenderLog as r}from"../utils/index.js";import{format as l}from"date-fns";import{useFieldNormalize as s}from"./useFieldNormalize.js";import{fieldKeyEscape as a,createLinebarId as p}from"../utils/schema.js";import{useFormValidator as c}from"./useFormValidator.js";import{transformDateFormat as d}from"../utils/business.js";function m(e,o){Object.assign(e["x-component-props"],{...n(o,["wordbook","autograph"])})}function u(e,o){Object.assign(e["x-component-props"],{...n(o,["urlConfig","wordbook"])})}function f(e){return"1"===e||!0===e}function _(_,x){const{createValidatorSchema:h}=c(),g=e=>{var o;const t={name:e.val_key,type:null!=(o=e.fieldType)?o:"string",title:e.alias||e.name,"x-component":e.html_type,default:e.default_val,"x-component-props":{placeholder:e.placeholder,clearable:"0"===e.is_empty,...e.componentProps||{}},"x-content":e.slots,"x-display":"0"===e.is_show?"hidden":"visible","x-pattern":"0"===e.is_edit?"disabled":"editable","x-compile-omitted":["title","x-component-props","x-decorator-props"]};e.reactions&&(t["x-reactions"]=e.reactions),e.noDecorator||Object.assign(t,{"x-decorator":"FORM_ITEM","x-decorator-props":{fieldItem:e,beforeSetValue:null==x?void 0:x.beforeSetValue,span:2*(e.elem_width||3),showLabel:"1"!==e.hide_title,remark:e.remark,propertyKey:e.val_key,annotation:e.annotation,...e.decoratorProps||{}}});const n=h(e);return n&&(t["x-validator"]=n),"0"===e.is_null&&(t.required=!0),t},y=e=>{var o,t,r,l,s,a,p,c,d,_,x,h,y;const v=g(e);e.urlConfig?u(v,e):e.autograph&&m(v,e);const b=!!e.__multiple,w=f(null!=(t=null==(o=e.componentProps)?void 0:o.allowModify)?t:e.allowModify),C=f(null!=(l=null==(r=e.componentProps)?void 0:r.selectAll)?l:e.selectAll),A=f(null!=(a=null==(s=e.componentProps)?void 0:s.shouldSave)?a:e.save_free_entry),O=f(null!=(c=null==(p=e.componentProps)?void 0:p.allowCreate)?c:e.free_entry);return Object.assign(v["x-component-props"],{multiple:b,options:(null==(d=e.componentProps)?void 0:d.options)||e.option,allowModify:w,allowCreate:O||w,shouldSave:A,showField:null!=(x=e.show_key)?x:null==(_=e.componentProps)?void 0:_.showField,maxTagCount:null!=(y=i(e.multi_select_value))?y:null==(h=v["x-component-props"])?void 0:h.maxTagCount,selectAll:C,...n(e,["lazyRequest","requestCache"])}),b&&(v.type="array"),v},v=e=>{var o,t;const n=g(e),i=null!=(t=null==(o=e.componentProps)?void 0:o.selectAll)?t:e.selectAll;return Object.assign(n["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,childWidthMode:e.childWidthMode,vertical:e.__vertical,selectAll:"1"===i||!0===i}),e.urlConfig?u(n,e):e.autograph&&m(n,e),n},b=e=>{const t=g(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},w=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{disabled:"1"===e.is_not_fold,id:p(e.val_key),show:"0"!==e.is_show,remark:e.remark}}),C=new Map([["LINEBAR",w],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=g(e);return Object.assign(o["x-component-props"],{...n(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=g(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=g(e),{decimal_length:t,validate:n,allowSlash:i}=e;return!0!==i&&"1"!==i||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:null!=t?t:null==n?void 0:n.decimal_length,whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",y],["REMOTE_SEARCH",y],["DATE",e=>{const o=g(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:d(e.date_format),validate:e.validate}),"current"===o.default&&(o.default=l(new Date,e.date_format||"yyyy-MM-dd")),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=g(e);return Object.assign(o["x-component-props"],{...n(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=g(e);return Object.assign(t["x-component-props"],{urlConfig:e.urlConfig,depth:null==(o=e.wordbook)?void 0:o.level_num,options:e.option}),t}],["COMBINATION",e=>{const o=g(e);return o.type="array","table"===e.displayMode?o["x-component"]="TABLE_COMBINATION":!1!==e.jsonCombination&&(o["x-component"]="JSON_COMBINATION"),Object.assign(o["x-decorator-props"],{showLabel:!1,showFeedback:!1}),Object.assign(o["x-component-props"],{title:e.alias||e.name,maxGroupNum:e.maxGroupNum,properties:e.children||[],combinationItemDeletable:e.combinationItemDeletable}),o}],["RADIO",v],["CHECKBOX",v],["SWITCH",e=>{const o=g(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close}),o}],["SLIDER",e=>{const o=g(e);return Object.assign(o["x-component-props"],{step:i(e.step_length),max:i(e.max_length),min:i(e.min_length),option:e.option}),o}],["COMPLEX",e=>{const o=g(e);Array.isArray(e.properties)&&r("COMPLEX控件的properties属性已经废弃, 请使用children作为替代, 在之后的版本中properties属性将不再支持");const t=Array.isArray(e.properties||e.children)?k(e.properties||e.children):{};return o.type=e.fieldType||"void",o.properties=t,Object.assign(o["x-decorator-props"],{showFeedback:!1}),Object.assign(o["x-component-props"],n(e,["wrapperStyle","display"])),o}]]),A=e=>{if(e.suffixConfig)return O(e);return(C.get(e.html_type)||b)(e)},O=o=>{if(!o.suffixConfig&&!o.prefixConfig)return A(o);const t=o.suffixConfig?e(o.suffixConfig):[],n=[...(o.prefixConfig?e(o.prefixConfig):[]).map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"}))),{...o,is_show:"1",hide_title:"1",suffixConfig:void 0,prefixConfig:void 0},...t.map((e=>({elem_width:o.elem_width,...e,hide_title:"1",is_show:"1"})))],i=g(o),r=n.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(i,{type:"void",name:a(n),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...i["x-decorator-props"],showFeedback:!1,suffixFields:n.map((e=>e.val_key))},properties:k(n)}),i},{FieldNormalizeWaterfallHook:E,FieldListNormalizeWaterfallHook:j}=s();function k(o,n={column:9999}){let i=null;return j.call(t(o),n).reduce(((e,o,s)=>{var a;const p=null==(a=(o=E.call(o,n)).validate)?void 0:a.obj_type;return p&&_&&_.collect(p,t(o)),"LINEBAR"===o.html_type?(e[l(o)]=r(w(o),s),i=e[l(o)].properties={}):i?i[l(o)]=r(A(o),s):(i=null,e[l(o)]=r(A(o),s)),e}),{});function r(e,o){return e["x-index"]=o,e}function l(o){return o.suffixConfig?a([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:k}}export{_ as useFieldListAdaptor};
@@ -73,12 +73,16 @@ export declare function useFieldNormalize(): {
73
73
  uuid: string;
74
74
  lifeCycle: Partial<{
75
75
  onSetup(): void;
76
+ beforeSetValue(fieldKey: string, value: unknown, payload: {
77
+ field: import("@formily/core").GeneralField;
78
+ oldValue: unknown;
79
+ }): any;
76
80
  beforeRequest(fieldKey: string, params?: import("../../../../../es/shared/types").AnyObject | undefined, payload?: import("../../../../../es/shared/types").AnyObject | undefined): void | import("../../../../../es/shared/types").UndefinedAble<import("../../../../../es/shared/types").AnyObject>;
77
81
  afterRequest(fieldKey: string, res?: any, payload?: import("../../../../../es/shared/types").AnyObject | undefined): import("../../../../../es/shared/types").AnyObject[];
78
82
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
79
83
  }>;
80
84
  businessFormatter: import("../types").FormBusinessFormatter;
81
- requestInstance: import("./useFormRequest").RequestInstance;
85
+ requestInstance: import("../../..").FormRequestDefine.RequestInstance;
82
86
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
83
87
  lowCodeReactions: import("../../../../../es/shared/types").FormLowCodeReactions.Config[];
84
88
  linebarAutoHidden: boolean;
@@ -160,12 +164,16 @@ export declare function useFieldNormalize(): {
160
164
  uuid: string;
161
165
  lifeCycle: Partial<{
162
166
  onSetup(): void;
167
+ beforeSetValue(fieldKey: string, value: unknown, payload: {
168
+ field: import("@formily/core").GeneralField;
169
+ oldValue: unknown;
170
+ }): any;
163
171
  beforeRequest(fieldKey: string, params?: import("../../../../../es/shared/types").AnyObject | undefined, payload?: import("../../../../../es/shared/types").AnyObject | undefined): void | import("../../../../../es/shared/types").UndefinedAble<import("../../../../../es/shared/types").AnyObject>;
164
172
  afterRequest(fieldKey: string, res?: any, payload?: import("../../../../../es/shared/types").AnyObject | undefined): import("../../../../../es/shared/types").AnyObject[];
165
173
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
166
174
  }>;
167
175
  businessFormatter: import("../types").FormBusinessFormatter;
168
- requestInstance: import("./useFormRequest").RequestInstance;
176
+ requestInstance: import("../../..").FormRequestDefine.RequestInstance;
169
177
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
170
178
  lowCodeReactions: import("../../../../../es/shared/types").FormLowCodeReactions.Config[];
171
179
  linebarAutoHidden: boolean;
@@ -1,8 +1,8 @@
1
- import { Func } from '../../../../../es/shared/types';
1
+ import { AnyFn } from '../../../../../es/shared/types';
2
2
  import { ShallowReactive } from 'vue';
3
3
  import { FormRenderProps } from '../../../../../es/components/form-render';
4
- export declare function useFormContext(props: ShallowReactive<FormRenderProps>, emit: Func): {
5
- asyncQueue: import("../../../../shared/hooks").AsyncQueue<import("../../../../../es/components/form-render").FormAsyncQueueItem, any, {
4
+ export declare function useFormContext(props: ShallowReactive<FormRenderProps>, emit: AnyFn): {
5
+ asyncQueue: import("../../../../../es/shared/hooks").AsyncQueue<import("../../../../../es/shared/hooks").FormRequestDefine.AsyncQueueItem, any, {
6
6
  label: string;
7
7
  value: unknown;
8
8
  }[]>;
@@ -1 +1 @@
1
- import{uuidGenerator as e}from"../../../../shared/utils/index.js";import{createSchemaField as o}from"@formily/vue";import{isObject as t}from"@vue/shared";import{computed as r,provide as n,readonly as s}from"vue";import"../../index.js";import i from"../components/renderer/index.js";import{InjectionAsyncQueue as m,InjectionSchemaField as a,InjectionBusinessCollector as u,InjectionChangeContextCollector as c,InjectionFormItemDepsCollector as p,InjectionFormUUID as l,InjectionAnnotation as f,InjectionFormGlobalProps as d}from"../constants/index.js";import{useFormRenderLifeCycle as j}from"./useFormRenderLifeCycle.js";import{usePresetScope as C}from"./usePresetScope.js";import{presetRequestHandler as y}from"../utils/index.js";import{useFormAsyncQueue as h}from"./useFormAsyncQueue.js";import{useBusinessBinding as x}from"./useBusinessBinding.js";import{useChangeContext as g}from"./useChangeContext.js";import{useFormItemDeps as q}from"./useFormItemDeps.js";function v(v,F){const{callLifeCycle:b}=j(v),R=h(r((()=>v.requestInstance)),r((()=>!!v.uniqueCacheData))).create(v.parallelism,{beforeRequest:(...e)=>b("beforeRequest",e)||e[1],afterRequest:(...e)=>b("afterRequest",e)||y(e[1])});n(m,R);const D=o({components:{...i,...v.components},scope:Object.assign({},C(),v.scope)}).SchemaField;n(a,D);const I=x().create(v.businessFormatter);n(u,I);const S=g().create();n(c,S);const B=q().create();n(p,B);const L=v.uuid||e();return n(l,L),n(f,r({get:()=>v.annotation?s(v.annotation):null,set(e){if(!t(v.annotation)||!t(e))return;const o=v.annotation[e.property];v.annotation[e.property]=e.value,F("annotationChange",{fieldKey:e.property,value:e.value,oldValue:o})}})),n(d,v),{asyncQueue:R,SchemaField:D,businessCollector:I,changeContextCollector:S,formItemDepsCollector:B,formUUID:L}}export{v as useFormContext};
1
+ import{uuidGenerator as e}from"../../../../shared/utils/index.js";import"lodash-es";import"naive-ui";import{computed as o,provide as t,readonly as r}from"vue";import"@vueuse/core";import"date-fns";import{useFormAsyncQueue as s,presetRequestHandler as n}from"../../../../shared/hooks/useFormRequest/index.js";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{createSchemaField as i}from"@formily/vue";import{isObject as a}from"@vue/shared";import"../../index.js";import m from"../components/renderer/index.js";import{InjectionAsyncQueue as u,InjectionSchemaField as c,InjectionBusinessCollector as p,InjectionChangeContextCollector as l,InjectionFormItemDepsCollector as f,InjectionFormUUID as d,InjectionAnnotation as h,InjectionFormGlobalProps as j}from"../constants/index.js";import{useFormRenderLifeCycle as C}from"./useFormRenderLifeCycle.js";import{usePresetScope as v}from"./usePresetScope.js";import{useBusinessBinding as x}from"./useBusinessBinding.js";import{useChangeContext as y}from"./useChangeContext.js";import{useFormItemDeps as q}from"./useFormItemDeps.js";function g(g,F){const{callLifeCycle:R}=C(g),b=s(o((()=>g.requestInstance)),o((()=>!!g.uniqueCacheData))).create(g.parallelism,{beforeRequest:(...e)=>R("beforeRequest",e)||e[1],afterRequest:(...e)=>R("afterRequest",e)||n(e[1])});t(u,b);const D=i({components:{...m,...g.components},scope:Object.assign({},v(),g.scope)}).SchemaField;t(c,D);const I=x().create(g.businessFormatter);t(p,I);const S=y().create();t(l,S);const k=q().create();t(f,k);const B=g.uuid||e();return t(d,B),t(h,o({get:()=>g.annotation?r(g.annotation):null,set(e){if(!a(g.annotation)||!a(e))return;const o=g.annotation[e.property];g.annotation[e.property]=e.value,F("annotationChange",{fieldKey:e.property,value:e.value,oldValue:o})}})),t(j,g),{asyncQueue:b,SchemaField:D,businessCollector:I,changeContextCollector:S,formItemDepsCollector:k,formUUID:B}}export{g as useFormContext};
@@ -1,10 +1,10 @@
1
- import { Func } from '../../../../../es/shared/types';
1
+ import { AnyFn } from '../../../../../es/shared/types';
2
2
  import { DependKeyType } from '../../../../../es/components/form-render';
3
3
  export declare class FormItemDepsCollector {
4
4
  triggerDisabled: boolean;
5
5
  private readonly collector;
6
- setDeps(key: string, dependKeys: DependKeyType, callback: Func): void;
7
- getDeps(dependKey: string): Map<string, Func<any[], any>> | undefined;
6
+ setDeps(key: string, dependKeys: DependKeyType, callback: AnyFn): void;
7
+ getDeps(dependKey: string): Map<string, AnyFn<any[], any>> | undefined;
8
8
  trigger(dependKey: string, payload?: unknown): void;
9
9
  }
10
10
  export declare function useFormItemDeps(): {
@@ -1,13 +1,21 @@
1
1
  import { UndefinedAble } from '../../../../../es/shared/types';
2
2
  import { FormRenderLifeCycle, FormRenderProps } from '../../../../../es/components/form-render';
3
3
  export declare function useFormRenderLifeCycle(props: FormRenderProps): {
4
- callLifeCycle: <T extends "onSetup" | "beforeRequest" | "afterRequest" | "afterOptionInit">(lifeCycleName: T, payload?: Parameters<Required<Partial<{
4
+ callLifeCycle: <T extends "onSetup" | "beforeSetValue" | "beforeRequest" | "afterRequest" | "afterOptionInit">(lifeCycleName: T, payload?: Parameters<Required<Partial<{
5
5
  onSetup(): void;
6
+ beforeSetValue(fieldKey: string, value: unknown, payload: {
7
+ field: import("@formily/core").GeneralField;
8
+ oldValue: unknown;
9
+ }): any;
6
10
  beforeRequest(fieldKey: string, params?: import("../../../../../es/shared/types").AnyObject | undefined, payload?: import("../../../../../es/shared/types").AnyObject | undefined): void | UndefinedAble<import("../../../../../es/shared/types").AnyObject>;
7
11
  afterRequest(fieldKey: string, res?: any, payload?: import("../../../../../es/shared/types").AnyObject | undefined): import("../../../../../es/shared/types").AnyObject[];
8
12
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
9
13
  }>>[T]> | undefined) => UndefinedAble<ReturnType<Required<Partial<{
10
14
  onSetup(): void;
15
+ beforeSetValue(fieldKey: string, value: unknown, payload: {
16
+ field: import("@formily/core").GeneralField;
17
+ oldValue: unknown;
18
+ }): any;
11
19
  beforeRequest(fieldKey: string, params?: import("../../../../../es/shared/types").AnyObject | undefined, payload?: import("../../../../../es/shared/types").AnyObject | undefined): void | UndefinedAble<import("../../../../../es/shared/types").AnyObject>;
12
20
  afterRequest(fieldKey: string, res?: any, payload?: import("../../../../../es/shared/types").AnyObject | undefined): import("../../../../../es/shared/types").AnyObject[];
13
21
  afterOptionInit(fieldKey: string, options: import("../../../../../es/shared/types").AnyObject[], payload?: import("../../../../../es/shared/types").AnyObject | undefined): void;
@@ -1,22 +1,22 @@
1
- import { AnyObject, Func } from '../../../../../es/shared/types';
1
+ import { FormRequestDefine } from '../../../../../es/shared/hooks';
2
+ import { AnyObject, FormWordbook, AnyFn } from '../../../../../es/shared/types';
2
3
  import { Ref } from 'vue';
3
- import { FormWordbook, RecommendIds, UrlConfig } from '../../../../../es/components/form-render';
4
+ import { UrlConfig } from '../../../../../es/components/form-render';
4
5
  import { RecommendItem } from '../../../../../es/components/recommend-search/src/types';
5
6
  declare type UseOptionHooks = Partial<Record<'onRequestConfigChange' | 'onDepsChange', (payload: {
6
7
  fetchData: (content?: string | null, otherParams?: AnyObject) => any;
7
8
  labelKey: string;
8
9
  valueKey: string;
9
10
  }) => any>>;
10
- export declare const searchContentMatcher: (searchContent: string, label: string) => RegExpMatchArray | null;
11
11
  export declare function useRecommendOptions(props: {
12
12
  recommend: boolean;
13
13
  commonList?: RecommendItem[];
14
14
  recentList?: RecommendItem[];
15
- getRecommendInfo?: () => RecommendIds;
15
+ getRecommendInfo?: () => FormRequestDefine.RecommendIds;
16
16
  recommendCache: boolean;
17
17
  commonNum: number;
18
18
  recentNum: number;
19
- }, options: Ref<AnyObject[]>, emit: Func, labelKey: Ref<string>, valueKey: Ref<string>): {
19
+ }, options: Ref<AnyObject[]>, emit: AnyFn, labelKey: Ref<string>, valueKey: Ref<string>): {
20
20
  postRecommend: (value: unknown) => Promise<void>;
21
21
  getRecommend: (content?: string) => Promise<void>;
22
22
  sortedOptions: import("vue").ComputedRef<AnyObject[]>;
@@ -1 +1 @@
1
- import{checkInSetupEnv as e,arrayed as l,jsonParse as n,keywordMatcher as u}from"../../../../shared/utils/index.js";import{useForm as t}from"@formily/vue";import{useMemoize as a}from"@vueuse/core";import{identity as o,uniqBy as r,isEqual as i,isString as v,omit as s,isArray as c,isFunction as m}from"lodash-es";import{computed as f,inject as d,ref as y,watch as p,toRaw as h}from"vue";import"../../index.js";import{InjectionAsyncQueue as g,InjectionFormLifeCycleCaller as w,InjectionFormItemDepsCollector as K}from"../constants/index.js";import{createUrlConfigParams as C,formRenderLog as b}from"../utils/index.js";import{useFormField as k}from"./useFormField.js";import{useFormRequest as R}from"./useFormRequest.js";function F(e,l){const n=y();return f({get:()=>n.value?n.value:e[l],set(e){n.value=e}})}const q=(()=>{const e=a((e=>new RegExp(`(.*)${e.split("").map((e=>`(${function(e){return e.match(/[()\[\]{}$^\/]/)?"\\"+e:e}(e)})`)).join("(.*)")}(.*)`)),{getKey:o});return(l,n)=>n.match(e(l))})();function O(){const e=y();return{searchContent:e,optionSearchFilter:function(l,n,t){if(!e.value)return l;const a=c(t)?t.filter((e=>e&&v(e))):[];return l.filter((l=>function(l,n,t){if(!e.value)return!0;const a=l?l[n]:"";return!!v(a)&&(!!q(e.value,a)||!!u(e.value,l.keyword)||!!t.length&&t.some((n=>v(l[n])&&l[n].includes(e.value))))}(l,n,a)))}}}function j(e,l,u,t,a){const o=F(e,"commonList"),i=F(e,"recentList"),{searchContent:v,optionSearchFilter:c}=O();function y(e){return n(e.itemObj)}const p=f((()=>{var e,l;return null!=(l=null==(e=o.value)?void 0:e.map(y))?l:[]})),h=f((()=>{var e,l;return null!=(l=null==(e=i.value)?void 0:e.map(y))?l:[]})),w=f((()=>{if(!e.recommend||!p.value.length&&!h.value.length)return l.value;const n=r(p.value.concat(h.value),(e=>e[a.value])),u=l.value.filter((e=>n.every((function(l){return l[a.value]!==e[a.value]}))));return[...c(n,t.value),...u]})),{getRecommendRequestInfo:K,getHttpInstance:C}=R();function b(l){const{url:n,getRecommendIds:u}=K(),t=m(u)?u():{},a=m(e.getRecommendInfo)?e.getRecommendInfo():{};return{url:n[l],info:Object.assign({},t,a)}}const{fieldKey:q,field:j}=k(),I=d(g);return{postRecommend:async function(l){if(!e.recommend)return;const n=C();if(!n)return;const{url:t,info:o}=b("post"),r=w.value.find((e=>e[a.value]===l));r&&u("postRecommend",await n.post(t,{...o,keyword:"",itemId:a.value,itemObj:JSON.stringify(r)}))},getRecommend:async function(l){if(!e.recommend)return;if(v.value=l,o.value&&i.value&&e.recommendCache)return;const n=await I.addAsync(function(l,n){const{url:u,info:o}=b("get");return{url:u,method:"get",key:l,cache:n,params:{...o,recNum:Math.max(e.commonNum,e.recentNum),keyword:""},payload:{field:j.value,labelKey:t.value,valueKey:a.value}}}(q.value,e.recommendCache)),{commonly:u,recently:r}=n.reduce(((e,l)=>("commonly"===l.type?e.commonly.push(s(l,["type"])):"recently"===l.type&&e.recently.push(s(l,["type"])),e)),{commonly:[],recently:[]});o.value=u.slice(0,e.commonNum),i.value=r.slice(0,e.recentNum)},sortedOptions:w}}function I(l,n,u){e();const t=d(g),a=d(w),o=f((()=>{var e,n,u;return null!=(u=null!=(n=null==(e=l.urlConfig)?void 0:e.nameKey)?n:l.labelField)?u:"text"})),r=f((()=>{var e,n,u;return null!=(u=null!=(n=null==(e=l.urlConfig)?void 0:e.valueKey)?n:l.valueField)?u:"value"})),s=f((()=>{var e,n;return null!=(n=null==(e=l.urlConfig)?void 0:e.showKey)?n:l.showField})),{searchContent:c,optionSearchFilter:m}=O(),R=y(null),{field:F,fieldKey:q}=k(),j=y(!1),I=async function(e,n){if(c.value=e||"",!l.urlConfig)return R.value=null;try{j.value=!0;const e={field:F.value,labelKey:o.value,valueKey:r.value},u=await t.addAsync(await C({config:{...l.urlConfig,payload:e,params:{...l.urlConfig.params,...n}},cache:l.requestCache,field:F.value}));h(R.value)!==u&&(R.value=u,a("afterOptionInit",[q.value,R.value,e]))}catch(e){v(e)&&b(e)}finally{j.value=!1}},x=f((()=>R.value?m(R.value,o.value):Array.isArray(l.options)?m(l.options,o.value):[])),D=f((()=>R.value||l.options||[])),A=d(K);return p((()=>l.urlConfig),((e,t)=>{if(i(e,t))return;if(R.value=null,!e)return R.value=null;const a={fetchData:I,labelKey:o.value,valueKey:r.value},{onRequestConfigChange:v,onDepsChange:s}=u||{};A.setDeps(q.value,e.dependKey||[],(async()=>{R.value=null,n.value=null,l.lazyRequest||(s?s(a):I())})),!n.value&&l.lazyRequest||(v?v(a):I())}),{immediate:!0}),{labelKey:o,loading:j,showKey:s,valueKey:r,remoteOptions:R,filterOptions:x,fullOptions:D,fetchData:I,searchContent:c}}function x(n,u,a){e();const o=d(g),r=d(w),s=t(),c=f((()=>{var e;const u=l(null==(e=n.wordbook)?void 0:e.show_key)[0];return v(u)?u:null})),m=f((()=>{var e,l,u,t;const a=null==(l=null==(e=n.wordbook)?void 0:e.render_key)?void 0:l[0];return v(a)?a:null!=(t=null!=(u=c.value)?u:n.labelField)?t:"text"})),C=f((()=>{var e,l,u;return null!=(u=null!=(l=null==(e=n.wordbook)?void 0:e.value_key)?l:n.valueField)?u:"value"})),F=f((()=>{var e;return(null==(e=n.wordbook)?void 0:e.search_key)||[]})),q=f((()=>{var e;return null!=(e=c.value)?e:n.showField})),{searchContent:j,optionSearchFilter:I}=O(),x=y(null),{fieldKey:D,field:A}=k(),{getSearchRequestInfo:S}=R(),N=y(!1),_=async function(e,l){if(j.value=e||"",!n.autograph||!n.wordbook)return x.value=null;try{N.value=!0;const e={field:A.value,labelKey:m.value,valueKey:C.value},u=await o.addAsync(function(e,l,u,t,a){var o,r,i;const v={autograph:l,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1,...a};if(null==(o=e.queryParams)?void 0:o.length){const l=null!=(i=null==(r=s.value)?void 0:r.getFormState().values)?i:{};e.queryParams.forEach((e=>{v[e]=l[e]}))}return{...S(),params:v,key:u,cache:n.requestCache,payload:t}}(n.wordbook,n.autograph,D.value,e,l));h(x.value)!==u&&(x.value=u,r("afterOptionInit",[D.value,x.value,e]))}catch(e){v(e)&&b(e)}finally{N.value=!1}},z=f((()=>x.value?I(x.value,m.value,F.value):Array.isArray(n.options)?I(n.options,m.value):[])),P=f((()=>x.value||n.options||[])),$=d(K);return p((()=>n.wordbook),((e,l)=>{if(i(e,l))return;if(x.value=null,!e)return x.value=null;const t={fetchData:_,labelKey:m.value,valueKey:C.value},{onRequestConfigChange:o,onDepsChange:r}=a||{};$.setDeps(D.value,e.queryParams||[],(async()=>{x.value=null,r?r(t):_()})),!u.value&&n.lazyRequest||(o?o(t):_())}),{immediate:!0}),{labelKey:m,showKey:q,loading:N,remoteOptions:x,valueKey:C,filterOptions:z,fullOptions:P,fetchData:_,searchContent:j}}export{q as searchContentMatcher,x as useAutographOptions,j as useRecommendOptions,I as useUrlConfigOptions};
1
+ import{checkInSetupEnv as e,arrayed as l,jsonParse as n}from"../../../../shared/utils/index.js";import{uniqBy as o,isEqual as t,isString as u,omit as a,isFunction as r}from"lodash-es";import"naive-ui";import{computed as i,inject as s,ref as v,watch as c,toRaw as m}from"vue";import"@vueuse/core";import"date-fns";import{useFormRequest as d}from"../../../../shared/hooks/useFormRequest/index.js";import"@vueuse/shared";import{useOptionFiltered as f}from"../../../../shared/hooks/selectHooks/useOptionFiltered.js";import{useSearchContent as y}from"../../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{useForm as p}from"@formily/vue";import"../../index.js";import{InjectionAsyncQueue as h,InjectionFormLifeCycleCaller as g,InjectionFormItemDepsCollector as k}from"../constants/index.js";import{createUrlConfigParams as K,formRenderLog as w}from"../utils/index.js";import{useFormField as C}from"./useFormField.js";function b(e,l){const n=v();return i({get:()=>n.value?n.value:e[l],set(e){n.value=e}})}function O(e,l,t,u,v){const c=b(e,"commonList"),m=b(e,"recentList"),{searchContent:f,optionSearchFilter:p}=y();function g(e){return n(e.itemObj)}const k=i((()=>{var e,l;return null!=(l=null==(e=c.value)?void 0:e.map(g))?l:[]})),K=i((()=>{var e,l;return null!=(l=null==(e=m.value)?void 0:e.map(g))?l:[]})),w=i((()=>{if(!e.recommend||!k.value.length&&!K.value.length)return l.value;const n=o(k.value.concat(K.value),(e=>e[v.value])),t=l.value.filter((e=>n.every((function(l){return l[v.value]!==e[v.value]}))));return[...p(n,u.value),...t]})),{getRecommendRequestInfo:O,getHttpInstance:R}=d();function q(l){const{url:n,getRecommendIds:o}=O(),t=r(o)?o():{},u=r(e.getRecommendInfo)?e.getRecommendInfo():{};return{url:n[l],info:Object.assign({},t,u)}}const{fieldKey:F,field:j}=C(),I=s(h);return{postRecommend:async function(l){if(!e.recommend)return;const n=R();if(!n)return;const{url:o,info:u}=q("post"),a=w.value.find((e=>e[v.value]===l));a&&t("postRecommend",await n.post(o,{...u,keyword:"",itemId:v.value,itemObj:JSON.stringify(a)}))},getRecommend:async function(l){if(!e.recommend)return;if(f.value=l,c.value&&m.value&&e.recommendCache)return;const n=await I.addAsync(function(l,n){const{url:o,info:t}=q("get");return{url:o,method:"get",key:l,cache:n,params:{...t,recNum:Math.max(e.commonNum,e.recentNum),keyword:""},payload:{field:j.value,labelKey:u.value,valueKey:v.value}}}(F.value,e.recommendCache)),{commonly:o,recently:t}=n.reduce(((e,l)=>("commonly"===l.type?e.commonly.push(a(l,["type"])):"recently"===l.type&&e.recently.push(a(l,["type"])),e)),{commonly:[],recently:[]});c.value=o.slice(0,e.commonNum),m.value=t.slice(0,e.recentNum)},sortedOptions:w}}function R(l,n,o){e();const a=s(h),r=s(g),d=i((()=>{var e,n,o;return null!=(o=null!=(n=null==(e=l.urlConfig)?void 0:e.nameKey)?n:l.labelField)?o:"text"})),y=i((()=>{var e,n,o;return null!=(o=null!=(n=null==(e=l.urlConfig)?void 0:e.valueKey)?n:l.valueField)?o:"value"})),p=i((()=>{var e,n;return null!=(n=null==(e=l.urlConfig)?void 0:e.showKey)?n:l.showField})),{remoteOptions:b,filterOptions:O,fullOptions:R,searchContent:q}=f(l,d),{field:F,fieldKey:j}=C(),I=v(!1),x=async function(e,n){if(q.value=e||"",!l.urlConfig)return b.value=null;try{I.value=!0;const e={field:F.value,labelKey:d.value,valueKey:y.value},o=await a.addAsync(await K({config:{...l.urlConfig,payload:e,params:{...l.urlConfig.params,...n}},cache:l.requestCache,field:F.value}));m(b.value)!==o&&(b.value=o,r("afterOptionInit",[j.value,b.value,e]))}catch(e){u(e)&&w(e)}finally{I.value=!1}},D=s(k);return c((()=>l.urlConfig),((e,u)=>{if(t(e,u))return;if(b.value=null,!e)return b.value=null;const a={fetchData:x,labelKey:d.value,valueKey:y.value},{onRequestConfigChange:r,onDepsChange:i}=o||{};D.setDeps(j.value,e.dependKey||[],(async()=>{b.value=null,n.value=null,l.lazyRequest||(i?i(a):x())})),!n.value&&l.lazyRequest||(r?r(a):x())}),{immediate:!0}),{labelKey:d,loading:I,showKey:p,valueKey:y,remoteOptions:b,filterOptions:O,fullOptions:R,fetchData:x,searchContent:q}}function q(n,o,a){e();const r=s(h),y=s(g),K=p(),b=i((()=>{var e;const o=l(null==(e=n.wordbook)?void 0:e.show_key)[0];return u(o)?o:null})),O=i((()=>{var e,l,o,t;const a=null==(l=null==(e=n.wordbook)?void 0:e.render_key)?void 0:l[0];return u(a)?a:null!=(t=null!=(o=b.value)?o:n.labelField)?t:"text"})),R=i((()=>{var e,l,o;return null!=(o=null!=(l=null==(e=n.wordbook)?void 0:e.value_key)?l:n.valueField)?o:"value"})),q=i((()=>{var e;return(null==(e=n.wordbook)?void 0:e.search_key)||[]})),F=i((()=>{var e;return null!=(e=b.value)?e:n.showField})),{fieldKey:j,field:I}=C(),{getSearchRequestInfo:x}=d(),{searchContent:D,remoteOptions:N,filterOptions:S,fullOptions:_}=f(n,O,q),z=v(!1),A=async function(e,l){if(D.value=e||"",!n.autograph||!n.wordbook)return N.value=null;try{z.value=!0;const e={field:I.value,labelKey:O.value,valueKey:R.value},o=await r.addAsync(function(e,l,o,t,u){var a,r,i;const s={autograph:l,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1,...u};if(null==(a=e.queryParams)?void 0:a.length){const l=null!=(i=null==(r=K.value)?void 0:r.getFormState().values)?i:{};e.queryParams.forEach((e=>{s[e]=l[e]}))}return{...x(),params:s,key:o,cache:n.requestCache,payload:t}}(n.wordbook,n.autograph,j.value,e,l));m(N.value)!==o&&(N.value=o,y("afterOptionInit",[j.value,N.value,e]))}catch(e){u(e)&&w(e)}finally{z.value=!1}},H=s(k);return c((()=>n.wordbook),((e,l)=>{if(t(e,l))return;if(N.value=null,!e)return N.value=null;const u={fetchData:A,labelKey:O.value,valueKey:R.value},{onRequestConfigChange:r,onDepsChange:i}=a||{};H.setDeps(j.value,e.queryParams||[],(async()=>{N.value=null,i?i(u):A()})),!o.value&&n.lazyRequest||(r?r(u):A())}),{immediate:!0}),{labelKey:O,showKey:F,loading:z,remoteOptions:N,valueKey:R,filterOptions:S,fullOptions:_,fetchData:A,searchContent:D}}export{q as useAutographOptions,O as useRecommendOptions,R as useUrlConfigOptions};
@@ -1,7 +1,8 @@
1
- import { AnyObject, ArrayAble, BindEventSettingItem } from '../../../../../es/shared/types';
1
+ import { FormRequestDefine } from '../../../../../es/shared/hooks';
2
+ import { AnyObject, ArrayAble, BindEventSettingItem, FormWordbook } from '../../../../../es/shared/types';
2
3
  import { SchemaEffectTypes, SchemaTypes } from '@formily/vue';
3
4
  import { CSSProperties, VNode } from 'vue';
4
- import { DependKeyType, FormCommonState, FormRequestType } from '../../../../../es/components/form-render';
5
+ import { DependKeyType, FormCommonState } from '../../../../../es/components/form-render';
5
6
  declare type FieldBusinessType = 'password' | 'id_card' | 'age' | 'age_unit' | 'mobile' | 'telephone' | 'email' | 'sex' | 'birthday' | 'bank_card' | 'website' | 'gestational_weeks' | 'gestational_stage' | 'customer_name';
6
7
  declare type HtmlType = 'INPUT' | 'TEXTAREA' | 'SELECT' | 'LINEBAR' | 'LINE_BREAKS' | 'INPUT_NUMBER' | 'REMOTE_SEARCH' | 'DATE' | 'LEVEL_SEARCH_CASCADER' | 'SEARCH_CASCADER' | 'COMBINATION' | 'RADIO' | 'CHECKBOX' | 'SWITCH' | 'SLIDER' | 'COMPLEX' | 'SEARCH' | 'PHONE_TYPE' | 'IDCARD_TYPE' | 'SEARCH_MORE' | 'DIGITAL' | 'CHECKBOX_BLOCK' | 'RADIO_BLOCK' | 'DATE-INPUT' | 'DATETIME-INPUT' | 'SWITCH_COMPONENT' | 'SLIDER_COMPONENT' | 'LEVEL_SEARCH_CASCADE' | 'SEARCH_CASCADE' | ({} & string);
7
8
  declare type ValidateType = 'mobile' | 'integer' | 'number' | 'id_card' | 'regular' | string;
@@ -47,7 +48,7 @@ export interface FormRenderer {
47
48
  export declare type UrlConfig = {
48
49
  url: string;
49
50
  } & Partial<{
50
- method: FormRequestType;
51
+ method: FormRequestDefine.RequestType;
51
52
  nameKey: string;
52
53
  valueKey: string;
53
54
  showKey: string;
@@ -74,29 +75,6 @@ interface ReactionType {
74
75
  };
75
76
  [key: string]: any;
76
77
  }
77
- export declare type FormWordbook = Partial<{
78
- level_num: number;
79
- id: string;
80
- name: string;
81
- render_key: string[];
82
- search_key: string[];
83
- value_key: string;
84
- queryParams: string[];
85
- primary_key: string;
86
- type: string;
87
- level_key: string;
88
- link_key: string;
89
- link_key_split: string;
90
- show_key: string[] | string;
91
- conObj: AnyObject[];
92
- conObjFirstLevel: AnyObject[];
93
- setting: Partial<{
94
- cascading: {
95
- 'form.name': string;
96
- value: string;
97
- }[];
98
- }>;
99
- }>;
100
78
  export declare type CombinationItemDeletableFn = (itemData: AnyObject, index: number) => boolean;
101
79
  export declare type FieldItem = {
102
80
  val_key: string;
@@ -153,6 +131,7 @@ export declare type FieldItem = {
153
131
  show_key: string;
154
132
  whiteList: string[];
155
133
  bordered: boolean | string;
134
+ displayMode: 'table' | 'form';
156
135
  fieldType: SchemaTypes;
157
136
  content: string | FormRenderer | Record<string, FormRenderer>;
158
137
  lazyRequest: boolean;
@@ -1,11 +1,10 @@
1
- import { AsyncQueue } from '../../../../../es/shared/hooks';
1
+ import { FormRequestDefine } from '../../../../../es/shared/hooks';
2
2
  import { AnyObject, FormLowCodeReactions, FormOperationalConfig, UndefinedAble } from '../../../../../es/shared/types';
3
- import { DataField, Field, Form } from '@formily/core';
3
+ import { DataField, Field, Form, GeneralField } from '@formily/core';
4
4
  import { ISchema } from '@formily/json-schema/esm/types';
5
5
  import { Component, FunctionalComponent } from 'vue';
6
6
  import { FIELD_BUSINESS_TYPE } from '../../../../../es/components/form-render/src/constants';
7
7
  import { FieldItem } from '../types';
8
- import { RequestInstance } from '../hooks';
9
8
  export * from './fieldItem';
10
9
  export declare type FormCommonState = '0' | '1';
11
10
  export interface FieldVisitorContext {
@@ -15,16 +14,6 @@ export interface FieldVisitorContext {
15
14
  insertAfter(f: FieldItem | FieldItem[]): void;
16
15
  }
17
16
  export declare type FieldVisitor = Record<string, (context: FieldVisitorContext) => void>;
18
- export declare type FormRequestType = 'post' | 'get' | 'patch' | 'delete' | 'put';
19
- export interface FormAsyncQueueItem {
20
- key: any;
21
- cache?: boolean;
22
- url: string;
23
- method?: FormRequestType;
24
- params?: AnyObject;
25
- payload?: AnyObject;
26
- }
27
- export declare type FormAsyncQueue = AsyncQueue<FormAsyncQueueItem, any, AnyObject[]>;
28
17
  export declare type AgeContext = Record<'age' | 'day' | 'month' | 'year' | 'hours', number>;
29
18
  export declare type IdCardParseInfo = Record<'sex' | 'birthday', string> & AgeContext;
30
19
  export declare type FormRenderExpose = {
@@ -121,6 +110,10 @@ export declare type DependKeyType = string | Record<string, string> | Array<{
121
110
  } | string>;
122
111
  export declare type FormRenderLifeCycle = Partial<{
123
112
  onSetup(): void;
113
+ beforeSetValue(fieldKey: string, value: unknown, payload: {
114
+ field: GeneralField;
115
+ oldValue: unknown;
116
+ }): any;
124
117
  beforeRequest(fieldKey: string, params?: AnyObject, payload?: AnyObject): UndefinedAble<AnyObject> | void;
125
118
  afterRequest(fieldKey: string, res?: any, payload?: AnyObject): AnyObject[];
126
119
  afterOptionInit(fieldKey: string, options: AnyObject[], payload?: AnyObject): void;
@@ -141,7 +134,7 @@ export declare type FormRenderProps = Partial<{
141
134
  uuid: string;
142
135
  lifeCycle: FormRenderLifeCycle;
143
136
  businessFormatter: FormBusinessFormatter;
144
- requestInstance: RequestInstance;
137
+ requestInstance: FormRequestDefine.RequestInstance;
145
138
  enterToNextWidget: boolean | ((fieldItem: FieldItem) => boolean | void);
146
139
  lowCodeReactions: FormLowCodeReactions.Config[];
147
140
  linebarAutoHidden: boolean;
@@ -13,7 +13,6 @@ export declare function createSlot(renderer: unknown, props: AnyObject, defaultR
13
13
  default(): any;
14
14
  };
15
15
  export declare function createInputSlot(props: AnyObject, defaultRenderer?: (v: unknown) => unknown[]): import("vue").ComputedRef<Record<string, FunctionalComponent<{}, {}>>>;
16
- export declare function presetRequestHandler(res: unknown): AnyObject[];
17
16
  export declare function validateMessageParser(message: string, fieldItem: Omit<FieldItem, 'reactions'>): string;
18
17
  export declare function combineExtendKey(fieldList: FieldItem[], values: AnyObject): AnyObject;
19
18
  export declare function splitExtendKey(fieldList: FieldItem[], values: AnyObject): AnyObject;
@@ -28,7 +27,7 @@ export declare function createUrlConfigParams({ config, field, cache }: {
28
27
  key: string;
29
28
  cache: boolean | undefined;
30
29
  url: string;
31
- method?: import("../../../../../es/components/form-render").FormRequestType | undefined;
30
+ method?: import("../../..").FormRequestDefine.RequestType | undefined;
32
31
  nameKey?: string | undefined;
33
32
  valueKey?: string | undefined;
34
33
  showKey?: string | undefined;
@@ -1 +1 @@
1
- import{inject as e,provide as t,computed as n,createVNode as r,Fragment as o}from"vue";import{arrayed as c}from"../../../../shared/utils/index.js";import{isGeneralField as i,isField as s}from"@formily/core";import{Path as u}from"@formily/path";import{HelpCircleSharp as f}from"@vicons/ionicons5";import{isObject as a}from"@vue/shared";import{useMemoize as l}from"@vueuse/core";import{isString as p,isFunction as m,omit as d}from"lodash-es";import{NTooltip as h,NIcon as y}from"naive-ui";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as x}from"../constants/index.js";import"date-fns";import{traverseDependKey as g}from"./schema.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./schema.js";function v(e){console.warn(`[FormRender]: ${e}`)}function j(e,t,n=["children","properties","suffixConfig"],r="val_key",o="default_val"){return function e(t,r){r.forEach((r=>{a(r)&&(null!=s(r)&&null==t[i(r)]&&u.setIn(t,i(r),s(r)),n.forEach((n=>{r[n]&&(t[i(r)]||(t[i(r)]={}),e(t[i(r)],c(r[n])))})))}))}(e,t),e;function i(e){return e[r]}function s(e){return e[o]}}function S(n,r){let o=e(n,null);return o||(o=r(),t(n,o)),o}function E(e){return p(e)?+e:e}function b(e,t,n){if(a(e)&&!m(e)){const n={};return Object.entries(e).forEach((([e,r])=>{m(r)&&(n[e]=()=>r(t))})),n}return{default:()=>m(e)?e(t):n?n(e):[e]}}function K(e,t){return n((()=>{const n={};return e.prefix&&(n.prefix=()=>r(o,null,[b(e.prefix,e,t).default()])),e.suffix&&(n.suffix=()=>r(o,null,[b(e.suffix,e,t).default()])),n}))}function w(e){if(!a(e))throw e;return t=e,Reflect.has(t,"map")&&Reflect.has(t,"result")?function(e){const{result:t,map:n}=e;if("SUCCESS"!==t)throw e;return n.rows}(e):function(e){return Reflect.has(e,"result")&&Reflect.has(e,"obj")}(e)?function(e){const{obj:t,result:n}=e;if("SUCCESS"!==n||!a(t))throw e;return Object.entries(t).reduce(((e,[t,n])=>(n.forEach((n=>e.push({...n,type:t}))),e)),[])}(e):function(e){return Reflect.has(e,"data")&&Reflect.has(e,"success")}(e)?function(e){const{data:t,success:n}=e;if(!n)throw e;return t}(e):[];var t}function R(e,t){return p(e)&&e?e.replace(/\$\{([^}]*)}/g,(function(e,n){const r=n.split("||");for(const e of r){const n=t[e.trim()];if(n)return n}return""})):""}function O(e){return e.reduce(((e,t)=>(p(t.extendKey)&&t.extendKey&&e.push(t),V(t)&&e.push(...O(t.children||[])),e)),[])}function k(e,t){const n=O(e);if(!n.length)return t;const r={},o=new Map;return Object.entries(t).forEach((([e,c])=>{const i=n.find((t=>t.val_key===e));if(!i)return r[e]=c;const{val_key:s,extendKey:u}=i,f=o.get(u)||{};o.set(u,f),f[s]=t[s]})),[...o.entries()].forEach((([e,t])=>{r[e]=JSON.stringify(t)})),r}function C(e,t){const n=O(e);if(!n.length)return t;const r=l((e=>{try{return a(t[e])?t[e]:JSON.parse(t[e])||{}}catch(e){return{}}})),o=d(t,n.map((e=>e.extendKey)));return n.forEach((({val_key:e,extendKey:t})=>{Reflect.has(o,e)||(o[e]=r(t)[e])})),o}function _(e){return e&&x.includes(e)}function V(e){return _(i(e)?e.componentType:e.html_type)}async function I({config:e,field:t,cache:n}){const r={},o=t.props.name.toString();try{g(e.dependKey||[],((e,n,o)=>{const c=t.query(e).take();if(!s(c)||o&&null==c.value)throw`缺少必须的参数=>${e}`;r[n]=c.value}))}catch(e){return Promise.reject(e)}return{...e,params:Object.assign({},e.params,r),key:o,cache:n}}function U(e,t){return r("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[e,t.desc?r(h,null,{trigger:()=>r(y,{component:f},null),default:()=>t.desc}):null])}export{k as combineExtendKey,K as createInputSlot,b as createSlot,I as createUrlConfigParams,v as formRenderLog,S as injectOrProvide,V as isNestedFieldType,_ as isNestedType,j as mergeDeepProperties,E as parseNumberFromMaybeString,w as presetRequestHandler,U as renderDescOption,C as splitExtendKey,R as validateMessageParser};
1
+ import{inject as e,provide as n,computed as t,createVNode as r,Fragment as o}from"vue";import{arrayed as i}from"../../../../shared/utils/index.js";import{isGeneralField as c,isField as u}from"@formily/core";import{Path as s}from"@formily/path";import{HelpCircleSharp as f}from"@vicons/ionicons5";import{isObject as a}from"@vue/shared";import{useMemoize as l}from"@vueuse/core";import{isString as p,isFunction as m,omit as d}from"lodash-es";import{NTooltip as h,NIcon as y}from"naive-ui";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as x}from"../constants/index.js";import"date-fns";import{traverseDependKey as g}from"./schema.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./schema.js";function v(e){console.warn(`[FormRender]: ${e}`)}function j(e,n,t=["children","properties","suffixConfig"],r="val_key",o="default_val"){return function e(n,r){r.forEach((r=>{a(r)&&(null!=u(r)&&null==n[c(r)]&&s.setIn(n,c(r),u(r)),t.forEach((t=>{r[t]&&(n[c(r)]||(n[c(r)]={}),e(n[c(r)],i(r[t])))})))}))}(e,n),e;function c(e){return e[r]}function u(e){return e[o]}}function K(t,r){let o=e(t,null);return o||(o=r(),n(t,o)),o}function E(e){return e&&p(e)?+e:e}function b(e,n,t){if(a(e)&&!m(e)){const t={};return Object.entries(e).forEach((([e,r])=>{m(r)&&(t[e]=()=>r(n))})),t}return{default:()=>m(e)?e(n):t?t(e):[e]}}function k(e,n){return t((()=>{const t={};return e.prefix&&(t.prefix=()=>r(o,null,[b(e.prefix,e,n).default()])),e.suffix&&(t.suffix=()=>r(o,null,[b(e.suffix,e,n).default()])),t}))}function O(e,n){return p(e)&&e?e.replace(/\$\{([^}]*)}/g,(function(e,t){const r=t.split("||");for(const e of r){const t=n[e.trim()];if(t)return t}return""})):""}function S(e){return e.reduce(((e,n)=>(p(n.extendKey)&&n.extendKey&&e.push(n),I(n)&&e.push(...S(n.children||[])),e)),[])}function _(e,n){const t=S(e);if(!t.length)return n;const r={},o=new Map;return Object.entries(n).forEach((([e,i])=>{const c=t.find((n=>n.val_key===e));if(!c)return r[e]=i;const{val_key:u,extendKey:s}=c,f=o.get(s)||{};o.set(s,f),f[u]=n[u]})),[...o.entries()].forEach((([e,n])=>{r[e]=JSON.stringify(n)})),r}function V(e,n){const t=S(e);if(!t.length)return n;const r=l((e=>{try{return a(n[e])?n[e]:JSON.parse(n[e])||{}}catch(e){return{}}})),o=d(n,t.map((e=>e.extendKey)));return t.forEach((({val_key:e,extendKey:n})=>{Reflect.has(o,e)||(o[e]=r(n)[e])})),o}function w(e){return e&&x.includes(e)}function I(e){return w(c(e)?e.componentType:e.html_type)}async function $({config:e,field:n,cache:t}){const r={},o=n.props.name.toString();try{g(e.dependKey||[],((e,t,o)=>{const i=n.query(e).take();if(!u(i)||o&&null==i.value)throw`缺少必须的参数=>${e}`;r[t]=i.value}))}catch(e){return Promise.reject(e)}return{...e,params:Object.assign({},e.params,r),key:o,cache:t}}function B(e,n){return r("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[e,n.desc?r(h,null,{trigger:()=>r(y,{component:f},null),default:()=>n.desc}):null])}export{_ as combineExtendKey,k as createInputSlot,b as createSlot,$ as createUrlConfigParams,v as formRenderLog,K as injectOrProvide,I as isNestedFieldType,w as isNestedType,j as mergeDeepProperties,E as parseNumberFromMaybeString,B as renderDescOption,V as splitExtendKey,O as validateMessageParser};
@@ -1,4 +1,4 @@
1
- import { AnyObject, Func } from '../../../../../es/shared/types';
1
+ import { AnyObject, AnyFn } from '../../../../../es/shared/types';
2
2
  import { GeneralField } from '@formily/core';
3
3
  import { ISchema } from '@formily/json-schema/esm/types';
4
4
  import { Ref } from 'vue';
@@ -21,4 +21,4 @@ export declare function assignClearBindVisited(props: AnyObject, field: GeneralF
21
21
  [x: string]: any;
22
22
  };
23
23
  export declare function createObjSchema(properties: Record<string, ISchema>): ISchema;
24
- export declare function createVisitedSetter(field: Ref<GeneralField>, callback?: Func): (...args: unknown[]) => any;
24
+ export declare function createVisitedSetter(field: Ref<GeneralField>, callback?: AnyFn): (...args: unknown[]) => any;
@@ -1 +1 @@
1
- import{isField as e}from"@formily/core";import{isObject as r}from"@vue/shared";import{isString as t,isArray as n,isFunction as o}from"lodash-es";function u(e,t){t(e),r(e.properties)&&Object.values(e.properties).forEach((e=>{u(e,t)}))}function i(e){return a(e.map((e=>e.val_key)).join("-"))}function a(e){return e.replace(/[.]/g,"-")}function c(e){return a(`id-${e}`)}function f(e,o){e&&function(){const o=new Map;n(e)?e.forEach((e=>{var t;r(e)?o.set(e.paramName,{key:null!=(t=e.paramValue)?t:e.paramName,required:e.required}):o.set(e,e)})):r(e)?Object.entries(e).forEach((([e,r])=>{o.set(e,r)})):t(e)&&o.set(e,e);return o}().forEach(((e,r)=>{if(t(e))return o(r,e);o(r,e.key,e.required)}))}function l(e,r){let t=null;for(const o of r){if(o.val_key===e){n(o)&&(t=null);break}n(o)&&(t=o.val_key)}return t;function n(e){return"LINEBAR"===e.html_type}}function s(r,t){const n={...r};return e(t)&&Object.assign(n,{"onUpdate:value"(e){t.setValue(e)}}),n}function p(r,t){const n={...r};return e(t)&&(n.key=void 0===n.value?0:1),n}function m(r,t){const n={...r};return e(t)&&(n.onClear=()=>t.visited=!0),n}function v(e){return{type:"object",properties:e}}function d(r,t){return(...n)=>(e(r.value)&&(r.value.visited=!0),o(t)?t(...n):void 0)}export{m as assignClearBindVisited,s as assignUpdateValue,p as assignValueBindKey,c as createLinebarId,v as createObjSchema,d as createVisitedSetter,a as dotEscape,i as fieldKeyEscape,l as getParentLinebar,f as traverseDependKey,u as traverseSchema};
1
+ import{isField as e}from"@formily/core";import{isObject as r,isPromise as t}from"@vue/shared";import{isString as n,isArray as o,isFunction as u,noop as a}from"lodash-es";function i(e,t){t(e),r(e.properties)&&Object.values(e.properties).forEach((e=>{i(e,t)}))}function c(e){return l(e.map((e=>e.val_key)).join("-"))}function l(e){return e.replace(/[.]/g,"-")}function f(e){return l(`id-${e}`)}function s(e,t){e&&function(){const t=new Map;o(e)?e.forEach((e=>{var n;r(e)?t.set(e.paramName,{key:null!=(n=e.paramValue)?n:e.paramName,required:e.required}):t.set(e,e)})):r(e)?Object.entries(e).forEach((([e,r])=>{t.set(e,r)})):n(e)&&t.set(e,e);return t}().forEach(((e,r)=>{if(n(e))return t(r,e);t(r,e.key,e.required)}))}function p(e,r){let t=null;for(const o of r){if(o.val_key===e){n(o)&&(t=null);break}n(o)&&(t=o.val_key)}return t;function n(e){return"LINEBAR"===e.html_type}}function v(r,n){const o={...r};return e(n)&&Object.assign(o,{"onUpdate:value"(e){var r;const o=null==(r=n.decoratorProps)?void 0:r.beforeSetValue;if(u(o)){const r=o(n.path.toString(),e,{field:n,oldValue:n.value});return t(r)?r.then((e=>n.setValue(e)),a):n.setValue(r)}n.setValue(e)}}),o}function d(r,t){const n={...r};return e(t)&&(n.key=void 0===n.value?0:1),n}function m(r,t){const n={...r};return e(t)&&(n.onClear=()=>t.visited=!0),n}function h(e){return{type:"object",properties:e}}function y(r,t){return(...n)=>(e(r.value)&&(r.value.visited=!0),u(t)?t(...n):void 0)}export{m as assignClearBindVisited,v as assignUpdateValue,d as assignValueBindKey,f as createLinebarId,h as createObjSchema,y as createVisitedSetter,l as dotEscape,c as fieldKeyEscape,p as getParentLinebar,s as traverseDependKey,i as traverseSchema};
@@ -1 +1 @@
1
- import{defineComponent as e,provide as t,createVNode as r}from"vue";import{useTheme as s}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isFunction as n,range as i}from"lodash-es";import{widthAppend as o}from"../../../shared/utils/index.js";import{NSpace as l,NButton as u}from"naive-ui";const d=e({props:{config:{type:Object,required:!0,default:()=>({})},index:{type:Number,required:!0},length:{type:Number,required:!0}},emits:["cancel","next","toNext"],setup(e,{emit:t,slots:d}){const p=s();function a(e,{skippable:s=!0,skipText:o="跳过",nextText:d="下一步",endText:p="结束引导"},a,c){var f;return r("footer",{class:"guide__stepFooter"},[null!=(f=n(e)?e():null)?f:r(l,{justify:"end",wrapItem:!1},{default:()=>[m(),s?r(u,{ghost:!0,bordered:!1,class:"guide__stepSkipBtn",textColor:"#c5c5c5",onClick:()=>t("cancel")},{default:()=>o}):null,r(u,{type:"primary",class:"guide__stepNextBtn",onClick:()=>t("next")},{default:()=>a===c-1?p:d})]})]);function m(){return r(l,{justify:"start",style:"flex:1"},{default:function(){return i(c).map((e=>r(u,{class:"guide__stepToBtn",bordered:!1,onClick:()=>t("toNext",e)},{default:()=>r("i",{class:["guide__stepToBtnContent",{guide__stepActiveBtn:e===a}]},null)})))}})}}return()=>{const{minWidth:t=240,maxWidth:s=300,pointer:i=!0}=e.config;return r("section",{class:"guide__stepContentWrapper",style:{minWidth:o(t),maxWidth:o(s),...p.value}},[i?r("div",{class:"guide__stepPointerWrapper"},[r("div",{class:"guide__stepPointer"},null),r("div",{class:"guide__stepPointerLine"},null)]):null,(u=d.header,r("header",{class:"guide__stepHeader"},[n(u)?u():null])),(l=d.body,r("section",{class:"guide__stepBody"},[n(l)?l():null])),a(d.footer,e.config,e.index,e.length)]);var l,u}}});function p(s){return s?e({setup(e,{attrs:n,slots:i}){const o=[];let l=(null==s?void 0:s.parent)&&Reflect.get(s.parent,"provides");for(;l;)Object.entries(l).forEach((([e,r])=>{o.includes(e)||(o.push(e),t(e,r))})),l=Object.getPrototypeOf(l);return()=>r(d,n,i)}}):d}export{p as createGuideStep};
1
+ import{defineComponent as e,provide as t,createVNode as s}from"vue";import{useTheme as r}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isFunction as o,range as n}from"lodash-es";import"@vue/shared";import{widthAppend as i}from"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NSpace as u,NButton as l}from"naive-ui";const d=e({props:{config:{type:Object,required:!0,default:()=>({})},index:{type:Number,required:!0},length:{type:Number,required:!0}},emits:["cancel","next","toNext"],setup(e,{emit:t,slots:d}){const p=r();function a(e,{skippable:r=!0,skipText:i="跳过",nextText:d="下一步",endText:p="结束引导"},a,c){var f;return s("footer",{class:"guide__stepFooter"},[null!=(f=o(e)?e():null)?f:s(u,{justify:"end",wrapItem:!1},{default:()=>[m(),r?s(l,{ghost:!0,bordered:!1,class:"guide__stepSkipBtn",textColor:"#c5c5c5",onClick:()=>t("cancel")},{default:()=>i}):null,s(l,{type:"primary",class:"guide__stepNextBtn",onClick:()=>t("next")},{default:()=>a===c-1?p:d})]})]);function m(){return s(u,{justify:"start",style:"flex:1"},{default:function(){return n(c).map((e=>s(l,{class:"guide__stepToBtn",bordered:!1,onClick:()=>t("toNext",e)},{default:()=>s("i",{class:["guide__stepToBtnContent",{guide__stepActiveBtn:e===a}]},null)})))}})}}return()=>{const{minWidth:t=240,maxWidth:r=300,pointer:n=!0}=e.config;return s("section",{class:"guide__stepContentWrapper",style:{minWidth:i(t),maxWidth:i(r),...p.value}},[n?s("div",{class:"guide__stepPointerWrapper"},[s("div",{class:"guide__stepPointer"},null),s("div",{class:"guide__stepPointerLine"},null)]):null,(l=d.header,s("header",{class:"guide__stepHeader"},[o(l)?l():null])),(u=d.body,s("section",{class:"guide__stepBody"},[o(u)?u():null])),a(d.footer,e.config,e.index,e.length)]);var u,l}}});function p(r){return r?e({setup(e,{attrs:o,slots:n}){const i=[];let u=(null==r?void 0:r.parent)&&Reflect.get(r.parent,"provides");for(;u;)Object.entries(u).forEach((([e,s])=>{i.includes(e)||(i.push(e),t(e,s))})),u=Object.getPrototypeOf(u);return()=>s(d,o,n)}}):d}export{p as createGuideStep};
@@ -19,6 +19,17 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
19
19
  annotation: {
20
20
  type: import("vue").PropType<Record<string, import("../annotation-edit/src/type").AnnotationItem>>;
21
21
  };
22
+ requestInstance: {
23
+ type: import("vue").PropType<import("..").FormRequestDefine.RequestInstance>;
24
+ };
25
+ uniqueCacheData: {
26
+ type: BooleanConstructor;
27
+ default: boolean;
28
+ };
29
+ parallelism: {
30
+ type: NumberConstructor;
31
+ default: number;
32
+ };
22
33
  }, {
23
34
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
24
35
  tableConfig: {
@@ -36,6 +47,17 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
36
47
  annotation: {
37
48
  type: import("vue").PropType<Record<string, import("../annotation-edit/src/type").AnnotationItem>>;
38
49
  };
50
+ requestInstance: {
51
+ type: import("vue").PropType<import("..").FormRequestDefine.RequestInstance>;
52
+ };
53
+ uniqueCacheData: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
57
+ parallelism: {
58
+ type: NumberConstructor;
59
+ default: number;
60
+ };
39
61
  }>> & {
40
62
  onFormChange?: ((...args: any[]) => any) | undefined;
41
63
  onCopy?: ((...args: any[]) => any) | undefined;
@@ -110,6 +132,10 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
110
132
  }>;
111
133
  eventListener: import("./src/hooks/tapHooks/useEventHooks").IhoTableEventListener;
112
134
  emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd" | "pageChange", ...args: any[]) => void;
135
+ asyncQueue: import("..").AsyncQueue<import("..").FormRequestDefine.AsyncQueueItem, any, {
136
+ label: string;
137
+ value: unknown;
138
+ }[]>;
113
139
  hooks: Readonly<{
114
140
  configHooks: import("../../../es/components/iho-table/src/types").AbstractConfigHooks;
115
141
  fieldHooks: import("../../../es/components/iho-table/src/types").AbstractFieldHooks;
@@ -4661,6 +4687,17 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
4661
4687
  annotation: {
4662
4688
  type: import("vue").PropType<Record<string, import("../annotation-edit/src/type").AnnotationItem>>;
4663
4689
  };
4690
+ requestInstance: {
4691
+ type: import("vue").PropType<import("..").FormRequestDefine.RequestInstance>;
4692
+ };
4693
+ uniqueCacheData: {
4694
+ type: BooleanConstructor;
4695
+ default: boolean;
4696
+ };
4697
+ parallelism: {
4698
+ type: NumberConstructor;
4699
+ default: number;
4700
+ };
4664
4701
  }>> & {
4665
4702
  onFormChange?: ((...args: any[]) => any) | undefined;
4666
4703
  onCopy?: ((...args: any[]) => any) | undefined;
@@ -4729,6 +4766,8 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
4729
4766
  onRowDrag?: ((...args: any[]) => any) | undefined;
4730
4767
  }, {
4731
4768
  fieldList: import("../../../es/components/iho-table/src/types").LowCodeTableFieldItem[];
4769
+ parallelism: number;
4770
+ uniqueCacheData: boolean;
4732
4771
  tableConfig: import("../../../es/components/iho-table/src/types").IhoTableConfig;
4733
4772
  tableData: import("../../../es/shared/types").AnyObject[];
4734
4773
  }>>;
@@ -1,3 +1,4 @@
1
+ import { FormRequestDefine } from '../../../../es/shared/hooks';
1
2
  import { AnyObject } from '../../../../es/shared/types';
2
3
  import { PropType } from 'vue';
3
4
  import { VxeTableInstance } from 'vxe-table';
@@ -19,6 +20,17 @@ declare const _default: import("vue").DefineComponent<{
19
20
  annotation: {
20
21
  type: PropType<Record<string, AnnotationItem>>;
21
22
  };
23
+ requestInstance: {
24
+ type: PropType<FormRequestDefine.RequestInstance>;
25
+ };
26
+ uniqueCacheData: {
27
+ type: BooleanConstructor;
28
+ default: boolean;
29
+ };
30
+ parallelism: {
31
+ type: NumberConstructor;
32
+ default: number;
33
+ };
22
34
  }, {
23
35
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
24
36
  tableConfig: {
@@ -36,6 +48,17 @@ declare const _default: import("vue").DefineComponent<{
36
48
  annotation: {
37
49
  type: PropType<Record<string, AnnotationItem>>;
38
50
  };
51
+ requestInstance: {
52
+ type: PropType<FormRequestDefine.RequestInstance>;
53
+ };
54
+ uniqueCacheData: {
55
+ type: BooleanConstructor;
56
+ default: boolean;
57
+ };
58
+ parallelism: {
59
+ type: NumberConstructor;
60
+ default: number;
61
+ };
39
62
  }>> & {
40
63
  onFormChange?: ((...args: any[]) => any) | undefined;
41
64
  onCopy?: ((...args: any[]) => any) | undefined;
@@ -110,6 +133,10 @@ declare const _default: import("vue").DefineComponent<{
110
133
  }>;
111
134
  eventListener: import("../../../../es/components/iho-table/src/hooks/tapHooks/useEventHooks").IhoTableEventListener;
112
135
  emits: (event: "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd" | "pageChange", ...args: any[]) => void;
136
+ asyncQueue: import("../../../../es/shared/hooks").AsyncQueue<FormRequestDefine.AsyncQueueItem, any, {
137
+ label: string;
138
+ value: unknown;
139
+ }[]>;
113
140
  hooks: Readonly<{
114
141
  configHooks: import("../../../../es/components/iho-table/src/types").AbstractConfigHooks;
115
142
  fieldHooks: import("../../../../es/components/iho-table/src/types").AbstractFieldHooks;
@@ -4661,6 +4688,17 @@ declare const _default: import("vue").DefineComponent<{
4661
4688
  annotation: {
4662
4689
  type: PropType<Record<string, AnnotationItem>>;
4663
4690
  };
4691
+ requestInstance: {
4692
+ type: PropType<FormRequestDefine.RequestInstance>;
4693
+ };
4694
+ uniqueCacheData: {
4695
+ type: BooleanConstructor;
4696
+ default: boolean;
4697
+ };
4698
+ parallelism: {
4699
+ type: NumberConstructor;
4700
+ default: number;
4701
+ };
4664
4702
  }>> & {
4665
4703
  onFormChange?: ((...args: any[]) => any) | undefined;
4666
4704
  onCopy?: ((...args: any[]) => any) | undefined;
@@ -4729,6 +4767,8 @@ declare const _default: import("vue").DefineComponent<{
4729
4767
  onRowDrag?: ((...args: any[]) => any) | undefined;
4730
4768
  }, {
4731
4769
  fieldList: LowCodeTableFieldItem[];
4770
+ parallelism: number;
4771
+ uniqueCacheData: boolean;
4732
4772
  tableConfig: IhoTableConfig;
4733
4773
  tableData: AnyObject[];
4734
4774
  }>;