cnhis-design-vue 3.1.49-release.2 → 3.1.50-beta.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 (174) hide show
  1. package/README.md +87 -87
  2. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  3. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
  4. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
  5. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
  6. package/es/components/classification/src/index.vue2.js +1 -1
  7. package/es/components/expand-field/index.d.ts +1622 -0
  8. package/es/components/expand-field/index.js +1 -0
  9. package/es/components/expand-field/src/components/FormBatchOptionsModal.vue.d.ts +54 -0
  10. package/es/components/expand-field/src/components/FormBatchOptionsModal.vue.js +1 -0
  11. package/es/components/expand-field/src/components/FormBatchOptionsModal.vue2.js +1 -0
  12. package/es/components/expand-field/src/components/FormItemPerson.vue.d.ts +841 -0
  13. package/es/components/expand-field/src/components/FormItemPerson.vue.js +1 -0
  14. package/es/components/expand-field/src/components/FormItemPerson.vue2.js +1 -0
  15. package/es/components/expand-field/src/components/PersonModal.vue.d.ts +777 -0
  16. package/es/components/expand-field/src/components/PersonModal.vue.js +1 -0
  17. package/es/components/expand-field/src/components/PersonModal.vue2.js +1 -0
  18. package/es/components/expand-field/src/components/form.vue.d.ts +1494 -0
  19. package/es/components/expand-field/src/components/form.vue.js +1 -0
  20. package/es/components/expand-field/src/components/form.vue2.js +1 -0
  21. package/es/components/expand-field/src/constants/index.d.ts +3 -0
  22. package/es/components/expand-field/src/constants/index.js +1 -0
  23. package/es/components/expand-field/src/hooks/useAsyncData.d.ts +6 -0
  24. package/es/components/expand-field/src/hooks/useAsyncData.js +1 -0
  25. package/es/components/expand-field/src/index.vue.d.ts +1624 -0
  26. package/es/components/expand-field/src/index.vue.js +1 -0
  27. package/es/components/expand-field/src/index.vue2.js +1 -0
  28. package/es/components/expand-field/src/types/index.d.ts +1 -0
  29. package/es/components/expand-field/src/types/index.js +1 -0
  30. package/es/components/expand-field/src/utils/constant.d.ts +17 -0
  31. package/es/components/expand-field/src/utils/constant.js +1 -0
  32. package/es/components/expand-field/src/utils/index.d.ts +6 -0
  33. package/es/components/expand-field/src/utils/index.js +1 -0
  34. package/es/components/expand-field/src/utils/tool.d.ts +2 -0
  35. package/es/components/expand-field/src/utils/tool.js +1 -0
  36. package/es/components/expand-field/style/expand-field-iconfont.ttf +0 -0
  37. package/es/components/expand-field/style/index.css +1 -0
  38. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
  39. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.js +1 -1
  40. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.d.ts +1 -1
  41. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
  42. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useLeft.js +1 -1
  43. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  44. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
  45. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.js +1 -1
  46. package/es/components/fabric-chart/src/hooks/temperature/useBottom.js +1 -1
  47. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  48. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
  49. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
  50. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  51. package/es/components/fabric-chart/src/hooks/temperature/useTop.js +1 -1
  52. package/es/components/fabric-chart/src/interface.d.ts +1 -1
  53. package/es/components/field-set/index.d.ts +177 -16
  54. package/es/components/field-set/src/FieldSet.vue.d.ts +161 -17
  55. package/es/components/field-set/src/FieldSet.vue2.js +1 -1
  56. package/es/components/field-set/src/components/Row.vue.d.ts +116 -15
  57. package/es/components/field-set/src/components/Row.vue2.js +1 -1
  58. package/es/components/field-set/src/types/index.d.ts +1 -1
  59. package/es/components/field-set/src/utils/index.js +1 -1
  60. package/es/components/field-set/style/index.css +1 -1
  61. package/es/components/form-config/index.d.ts +593 -5
  62. package/es/components/form-config/src/FormConfig.vue.d.ts +593 -5
  63. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  64. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +17 -1
  65. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +296 -4
  66. package/es/components/form-config/src/components/FormConfigEdit.vue2.js +1 -1
  67. package/es/components/form-config/src/hooks/useConfigurationField.js +1 -1
  68. package/es/components/form-render/index.d.ts +17 -1
  69. package/es/components/form-render/index.js +1 -1
  70. package/es/components/form-render/src/FormRender.vue.d.ts +17 -1
  71. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  72. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +17 -1
  73. package/es/components/form-render/src/components/renderer/complex.js +1 -1
  74. package/es/components/form-render/src/components/renderer/date.js +1 -1
  75. package/es/components/form-render/src/components/renderer/formItem.d.ts +7 -2
  76. package/es/components/form-render/src/components/renderer/formItem.js +1 -1
  77. package/es/components/form-render/src/components/renderer/inputNumber.js +1 -1
  78. package/es/components/form-render/src/components/renderer/radio_checkbox.js +1 -1
  79. package/es/components/form-render/src/components/renderer/remoteSearch.js +1 -1
  80. package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
  81. package/es/components/form-render/src/components/renderer/select.d.ts +16 -0
  82. package/es/components/form-render/src/components/renderer/select.js +1 -1
  83. package/es/components/form-render/src/components/renderer/simpleComponent.d.ts +3 -1
  84. package/es/components/form-render/src/components/renderer/simpleComponent.js +1 -1
  85. package/es/components/form-render/src/components/renderer/switch.js +1 -1
  86. package/es/components/form-render/src/components/renderer/textarea.js +1 -1
  87. package/es/components/form-render/src/constants/index.d.ts +2 -1
  88. package/es/components/form-render/src/constants/index.js +1 -1
  89. package/es/components/form-render/src/hooks/useAnchor.js +1 -1
  90. package/es/components/form-render/src/hooks/useBusinessBinding.js +1 -1
  91. package/es/components/form-render/src/hooks/useComplexOptions.js +1 -1
  92. package/es/components/form-render/src/hooks/useFieldListAdaptor.d.ts +4 -1
  93. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  94. package/es/components/form-render/src/hooks/useFieldNormalize.d.ts +4 -1
  95. package/es/components/form-render/src/hooks/useFieldNormalize.js +1 -1
  96. package/es/components/form-render/src/hooks/useFormContext.js +1 -1
  97. package/es/components/form-render/src/hooks/useFormItemDeps.js +1 -1
  98. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +4 -0
  99. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  100. package/es/components/form-render/src/hooks/useFormValidator.js +1 -1
  101. package/es/components/form-render/src/hooks/usePresetScope.js +1 -1
  102. package/es/components/form-render/src/types/fieldItem.d.ts +9 -5
  103. package/es/components/form-render/src/types/index.d.ts +1 -0
  104. package/es/components/form-render/src/utils/index.d.ts +2 -0
  105. package/es/components/form-render/src/utils/index.js +1 -1
  106. package/es/components/form-render/style/index.css +1 -1
  107. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue.d.ts +297 -3
  108. package/es/components/iho-table/src/plugins/filterRenderPlugin/filter.vue2.js +1 -1
  109. package/es/components/iho-table/src/plugins/filterVisibleEventPlugin.d.ts +1 -0
  110. package/es/components/iho-table/src/plugins/filterVisibleEventPlugin.js +1 -0
  111. package/es/components/iho-table/src/plugins/index.js +1 -1
  112. package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +1 -1
  113. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue.d.ts +2 -1
  114. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/dateRendererPlugin/editDate.vue2.js +1 -1
  115. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useAutoFocus.d.ts +6 -2
  116. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/hooks/useAutoFocus.js +1 -1
  117. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/inputRendererPlugin.js +1 -1
  118. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/numberRendererPlugin.js +1 -1
  119. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.d.ts +6 -0
  120. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  121. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue.d.ts +2 -1
  122. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/editTime.vue2.js +1 -1
  123. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/timeRendererPlugin/index.js +1 -1
  124. package/es/components/iho-table/src/types/index.d.ts +1 -0
  125. package/es/components/iho-table/style/index.css +1 -1
  126. package/es/components/index.css +1 -1
  127. package/es/components/index.d.ts +2 -1
  128. package/es/components/index.js +1 -1
  129. package/es/components/info-header/index.d.ts +42 -3
  130. package/es/components/info-header/src/InfoHeader.vue.d.ts +42 -3
  131. package/es/components/info-header/src/components/infoDescription/DescriptionItem.vue.d.ts +4 -1
  132. package/es/components/info-header/src/components/infoDescription/DescriptionList.vue.d.ts +4 -1
  133. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +21 -2
  134. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +17 -1
  135. package/es/components/keyboard/index.d.ts +3 -3
  136. package/es/components/keyboard/src/Keyboard.vue.d.ts +3 -3
  137. package/es/components/keyboard/src/Keyboard.vue2.js +1 -1
  138. package/es/components/multi-chat/src/components/ChatMain.vue2.js +1 -1
  139. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  140. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  141. package/es/components/select-person/src/SearchMultiple.vue.d.ts +0 -6
  142. package/es/components/select-person/src/SelectPerson.vue2.js +1 -1
  143. package/es/components/select-person/style/index.css +1 -1
  144. package/es/components/shortcut-setter/index.d.ts +21 -1
  145. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +21 -1
  146. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +3 -0
  147. package/es/components/table-filter/src/hooks/useAdvanced.js +1 -1
  148. package/es/env.d.ts +25 -25
  149. package/es/shared/assets/img/failure.png.js +1 -1
  150. package/es/shared/assets/img/no-permission.png.js +1 -1
  151. package/es/shared/assets/img/nodata.png.js +1 -1
  152. package/es/shared/assets/img/notfound.png.js +1 -1
  153. package/es/shared/assets/img/qr.png.js +1 -1
  154. package/es/shared/assets/img/success.png.js +1 -1
  155. package/es/shared/assets/img/video.png.js +1 -1
  156. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  157. package/es/shared/assets/img/xb_big.png.js +1 -1
  158. package/es/shared/assets/img/xb_small.png.js +1 -1
  159. package/es/shared/components/CancelRadio/CancelRadio.d.ts +10 -0
  160. package/es/shared/components/CancelRadio/CancelRadio.js +1 -0
  161. package/es/shared/components/CancelRadio/index.d.ts +2 -0
  162. package/es/shared/components/CancelRadio/index.js +1 -0
  163. package/es/shared/components/InputNumberSlash/InputNumberSlash.d.ts +40 -0
  164. package/es/shared/components/InputNumberSlash/InputNumberSlash.js +1 -0
  165. package/es/shared/components/InputNumberSlash/index.d.ts +2 -0
  166. package/es/shared/components/InputNumberSlash/index.js +1 -0
  167. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
  168. package/es/shared/hooks/useDateTime.js +1 -1
  169. package/es/shared/package.json.js +1 -1
  170. package/es/shared/utils/anime.d.ts +2 -1
  171. package/es/shared/utils/anime.js +1 -1
  172. package/es/shared/utils/fabricjs/index.d.ts +6823 -0
  173. package/es/shared/utils/tapable/index.d.ts +139 -0
  174. package/package.json +2 -2
@@ -1 +1 @@
1
- import{uuidGenerator as e}from"../../../../shared/utils/index.js";import{createSchemaField as o}from"@formily/vue";import{isObject as t}from"@vue/shared";import{cloneDeep as r}from"lodash-es";import{computed as n,provide as s,readonly as i}from"vue";import"../../index.js";import m from"../components/renderer/index.js";import{InjectionAsyncQueue as a,InjectionSchemaField as u,InjectionBusinessCollector as c,InjectionChangeContextCollector as p,InjectionFormItemDepsCollector as l,InjectionFormUUID as f,InjectionAnnotation as d}from"../constants/index.js";import{useFormRenderLifeCycle as j}from"./useFormRenderLifeCycle.js";import{usePresetScope as C}from"./usePresetScope.js";import{injectOrProvide as h,presetRequestHandler as y}from"../utils/index.js";import{useFormAsyncQueue as x}from"./useFormAsyncQueue.js";import{useBusinessBinding as g}from"./useBusinessBinding.js";import{useChangeContext as q}from"./useChangeContext.js";import{useFormItemDeps as v}from"./useFormItemDeps.js";function F(F,b){const{callLifeCycle:R}=j(F),D=h(a,(()=>x(n((()=>F.requestInstance)),n((()=>!!F.uniqueCacheData))).create(F.parallelism,{beforeRequest:(...e)=>R("beforeRequest",r(e))||e[1],afterRequest:(...e)=>R("afterRequest",r(e))||y(e[1])}))),I=h(u,(()=>o({components:{...m,...F.components},scope:Object.assign({},C(),F.scope)}).SchemaField)),S=g().create(F.businessFormatter);s(c,S);const B=q().create();s(p,B);const L=v().create();s(l,L);const Q=F.uuid||e();return s(f,Q),s(d,n({get:()=>F.annotation?i(F.annotation):null,set(e){if(!t(F.annotation)||!t(e))return;const o=F.annotation[e.property];F.annotation[e.property]=e.value,b("annotationChange",{fieldKey:e.property,value:e.value,oldValue:o})}})),{asyncQueue:D,SchemaField:I,businessCollector:S,changeContextCollector:B,formItemDepsCollector:L,formUUID:Q}}export{F as useFormContext};
1
+ import{uuidGenerator as e}from"../../../../shared/utils/index.js";import{createSchemaField as o}from"@formily/vue";import{isObject as t}from"@vue/shared";import{cloneDeep as r}from"lodash-es";import{computed as n,provide as s,readonly as i}from"vue";import"../../index.js";import m from"../components/renderer/index.js";import{InjectionAsyncQueue as a,InjectionSchemaField as u,InjectionBusinessCollector as c,InjectionChangeContextCollector as p,InjectionFormItemDepsCollector as l,InjectionFormUUID as f,InjectionAnnotation as d,InjectionFormGlobalProps as j}from"../constants/index.js";import{useFormRenderLifeCycle as C}from"./useFormRenderLifeCycle.js";import{usePresetScope as h}from"./usePresetScope.js";import{injectOrProvide as y,presetRequestHandler as x}from"../utils/index.js";import{useFormAsyncQueue as g}from"./useFormAsyncQueue.js";import{useBusinessBinding as q}from"./useBusinessBinding.js";import{useChangeContext as v}from"./useChangeContext.js";import{useFormItemDeps as F}from"./useFormItemDeps.js";function b(b,R){const{callLifeCycle:D}=C(b),I=y(a,(()=>g(n((()=>b.requestInstance)),n((()=>!!b.uniqueCacheData))).create(b.parallelism,{beforeRequest:(...e)=>D("beforeRequest",r(e))||e[1],afterRequest:(...e)=>D("afterRequest",r(e))||x(e[1])}))),S=y(u,(()=>o({components:{...m,...b.components},scope:Object.assign({},h(),b.scope)}).SchemaField)),B=q().create(b.businessFormatter);s(c,B);const L=v().create();s(p,L);const Q=F().create();s(l,Q);const U=b.uuid||e();return s(f,U),s(d,n({get:()=>b.annotation?i(b.annotation):null,set(e){if(!t(b.annotation)||!t(e))return;const o=b.annotation[e.property];b.annotation[e.property]=e.value,R("annotationChange",{fieldKey:e.property,value:e.value,oldValue:o})}})),s(j,b),{asyncQueue:I,SchemaField:S,businessCollector:B,changeContextCollector:L,formItemDepsCollector:Q,formUUID:U}}export{b as useFormContext};
@@ -1 +1 @@
1
- import{isFunction as t}from"lodash-es";import"vue";import"../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vue/shared";import"@vueuse/core";import"../../index.js";import"date-fns";import{traverseDependKey as e}from"../utils/schema.js";class r{constructor(){this.triggerDisabled=!1,this.collector=new Map}setDeps(t,r,o){e(r,(e=>{const r=this.collector.get(e)||new Map;r.set(t,o),this.collector.set(e,r)}))}getDeps(t){return this.collector.get(t)}trigger(e,r){var o;this.triggerDisabled||null==(o=this.getDeps(e))||o.forEach((e=>t(e)&&e(r)))}}function o(){return{create:function(){return new r}}}export{r as FormItemDepsCollector,o as useFormItemDeps};
1
+ import{isFunction as t}from"lodash-es";import"vue";import"../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import"@vueuse/core";import"naive-ui";import"../../index.js";import"date-fns";import{traverseDependKey as e}from"../utils/schema.js";class r{constructor(){this.triggerDisabled=!1,this.collector=new Map}setDeps(t,r,i){e(r,(e=>{const r=this.collector.get(e)||new Map;r.set(t,i),this.collector.set(e,r)}))}getDeps(t){return this.collector.get(t)}trigger(e,r){var i;this.triggerDisabled||null==(i=this.getDeps(e))||i.forEach((e=>t(e)&&e(r)))}}function i(){return{create:function(){return new r}}}export{r as FormItemDepsCollector,i as useFormItemDeps};
@@ -19,6 +19,7 @@ export declare function useRecommendOptions(props: {
19
19
  export declare function useUrlConfigOptions(props: {
20
20
  labelField?: string;
21
21
  valueField?: string;
22
+ showField?: string;
22
23
  urlConfig?: UrlConfig;
23
24
  options?: AnyObject[];
24
25
  requestCache: boolean;
@@ -26,6 +27,7 @@ export declare function useUrlConfigOptions(props: {
26
27
  }, valueRef: Ref): {
27
28
  labelKey: import("vue").ComputedRef<string>;
28
29
  loading: Ref<boolean>;
30
+ showKey: import("vue").ComputedRef<string | undefined>;
29
31
  valueKey: import("vue").ComputedRef<string>;
30
32
  remoteOptions: Ref<AnyObject[] | null>;
31
33
  filterOptions: import("vue").ComputedRef<AnyObject[]>;
@@ -36,6 +38,7 @@ export declare function useUrlConfigOptions(props: {
36
38
  export declare function useAutographOptions(props: Partial<{
37
39
  labelField: string;
38
40
  valueField: string;
41
+ showField: string;
39
42
  requestCache: boolean;
40
43
  wordbook: FormWordbook;
41
44
  autograph: string;
@@ -43,6 +46,7 @@ export declare function useAutographOptions(props: Partial<{
43
46
  options: AnyObject[];
44
47
  }>, valueRef: Ref): {
45
48
  labelKey: import("vue").ComputedRef<string>;
49
+ showKey: import("vue").ComputedRef<string | undefined>;
46
50
  loading: Ref<boolean>;
47
51
  remoteOptions: Ref<AnyObject[] | null>;
48
52
  valueKey: import("vue").ComputedRef<string>;
@@ -1 +1 @@
1
- import{checkInSetupEnv as e,jsonParse as n,keywordMatcher as t}from"../../../../shared/utils/index.js";import{useForm as l}from"@formily/vue";import{useMemoize as u}from"@vueuse/core";import{identity as o,uniqBy as r,isEqual as a,isString as i,isArray as c,omit as s,isFunction as v}from"lodash-es";import{computed as m,inject as f,ref as d,watch as y,toRaw as p}from"vue";import"../../index.js";import{InjectionAsyncQueue as h,InjectionFormLifeCycleCaller as g,InjectionFormItemDepsCollector as w}from"../constants/index.js";import{useFormField as k}from"./useFormField.js";import{createUrlConfigParams as b,formRenderLog as C}from"../utils/index.js";import{useFormRequest as R}from"./useFormRequest.js";function O(e,n){const t=d();return m({get:()=>t.value?t.value:e[n],set(e){t.value=e}})}const F=(()=>{const e=u((e=>new RegExp(`(.*)${e.split("").map((e=>`(${function(e){return e.match(/[()\[\]{}$^\/]/)?"\\"+e:e}(e)})`)).join("(.*)")}(.*)`)),{getKey:o});return(n,t)=>t.match(e(n))})();function K(){const e=d();return{searchContent:e,optionSearchFilter:function(n,l,u){if(!e.value)return n;const o=c(u)?u.filter((e=>e&&i(e))):[];return n.filter((n=>function(n,l,u){if(!e.value)return!0;const o=n?n[l]:"";return!!i(o)&&(!!F(e.value,o)||!!t(e.value,n.keyword)||!!u.length&&u.some((t=>i(n[t])&&n[t].includes(e.value))))}(n,l,o)))}}}function q(e,t,l,u,o){const a=O(e,"commonList"),i=O(e,"recentList"),{searchContent:c,optionSearchFilter:d}=K();function y(e){return n(e.itemObj)}const p=m((()=>{var e,n;return null!=(n=null==(e=a.value)?void 0:e.map(y))?n:[]})),g=m((()=>{var e,n;return null!=(n=null==(e=i.value)?void 0:e.map(y))?n:[]})),w=m((()=>{if(!e.recommend||!p.value.length&&!g.value.length)return t.value;const n=r(p.value.concat(g.value),(e=>e[o.value])),l=t.value.filter((e=>n.every((function(n){return n[o.value]!==e[o.value]}))));return[...d(n,u.value),...l]})),{getRecommendRequestInfo:b,getHttpInstance:C}=R();function F(n){const{url:t,getRecommendIds:l}=b(),u=v(l)?l():{},o=v(e.getRecommendInfo)?e.getRecommendInfo():{};return{url:t[n],info:Object.assign({},u,o)}}const{fieldKey:q}=k(),j=f(h);return{postRecommend:async function(n){if(!e.recommend)return;const t=C();if(!t)return;const{url:u,info:r}=F("post"),a=w.value.find((e=>e[o.value]===n));a&&l("postRecommend",await t.post(u,{...r,keyword:"",itemId:o.value,itemObj:JSON.stringify(a)}))},getRecommend:async function(n){if(!e.recommend)return;if(c.value=n,a.value&&i.value&&e.recommendCache)return;const t=await j.addAsync(function(n,t){const{url:l,info:u}=F("get");return{url:l,method:"get",key:n,cache:t,params:{...u,recNum:Math.max(e.commonNum,e.recentNum),keyword:""}}}(q.value,e.recommendCache)),{commonly:l,recently:u}=t.reduce(((e,n)=>("commonly"===n.type?e.commonly.push(s(n,["type"])):"recently"===n.type&&e.recently.push(s(n,["type"])),e)),{commonly:[],recently:[]});a.value=l.slice(0,e.commonNum),i.value=u.slice(0,e.recentNum)},sortedOptions:w}}function j(n,t){e();const l=f(h),u=f(g),o=m((()=>{var e,t,l;return null!=(l=null!=(t=null==(e=n.urlConfig)?void 0:e.nameKey)?t:n.labelField)?l:"text"})),r=m((()=>{var e,t,l;return null!=(l=null!=(t=null==(e=n.urlConfig)?void 0:e.valueKey)?t:n.valueField)?l:"value"})),{searchContent:c,optionSearchFilter:s}=K(),v=d(null),{field:R,fieldKey:O}=k(),F=d(!1),q=async function(e){if(c.value=e||"",!n.urlConfig)return v.value=null;try{F.value=!0;const e=await l.addAsync(await b({config:n.urlConfig,cache:n.requestCache,field:R.value}));p(v.value)!==e&&(v.value=e,u("afterOptionInit",[O.value,v.value]))}catch(e){i(e)&&C(e)}finally{F.value=!1}},j=m((()=>v.value?s(v.value,o.value):Array.isArray(n.options)?s(n.options,o.value):[])),I=m((()=>v.value||n.options||[])),x=f(w);return y((()=>n.urlConfig),((e,l)=>{if(!a(e,l)){if(v.value=null,!e)return v.value=null;x.setDeps(O.value,e.dependKey||[],(async()=>{v.value=null,t.value=null,!n.lazyRequest&&await q()})),(t.value||!n.lazyRequest)&&q()}}),{immediate:!0}),{labelKey:o,loading:F,valueKey:r,remoteOptions:v,filterOptions:j,fullOptions:I,fetchData:q,searchContent:c}}function I(n,t){e();const u=f(h),o=f(g),r=l(),s=m((()=>{var e,t,l,u;const o=null==(t=null==(e=n.wordbook)?void 0:e.render_key)?void 0:t[0];if(i(o))return o;let r=null==(l=n.wordbook)?void 0:l.show_key;return c(r)&&(r=r[0]),i(r)?r:null!=(u=n.labelField)?u:"text"})),v=m((()=>{var e,t,l;return null!=(l=null!=(t=null==(e=n.wordbook)?void 0:e.value_key)?t:n.valueField)?l:"value"})),b=m((()=>{var e;return(null==(e=n.wordbook)?void 0:e.search_key)||[]})),{searchContent:O,optionSearchFilter:F}=K(),q=d(null),{fieldKey:j}=k(),{getSearchRequestInfo:I}=R(),x=d(!1),A=async function(e){if(O.value=e||"",!n.autograph||!n.wordbook)return q.value=null;try{x.value=!0;const e=await u.addAsync(function(e,t,l){var u,o,a;const i={autograph:t,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1};if(null==(u=e.queryParams)?void 0:u.length){const n=null!=(a=null==(o=r.value)?void 0:o.getFormState().values)?a:{};e.queryParams.forEach((e=>{i[e]=n[e]}))}return{...I(),params:i,key:l,cache:n.requestCache}}(n.wordbook,n.autograph,j.value));p(q.value)!==e&&(q.value=e,o("afterOptionInit",[j.value,q.value]))}catch(e){i(e)&&C(e)}finally{x.value=!1}},S=m((()=>q.value?F(q.value,s.value,b.value):Array.isArray(n.options)?F(n.options,s.value):[])),N=m((()=>q.value||n.options||[])),_=f(w);return y((()=>n.wordbook),((e,l)=>{if(!a(e,l)){if(q.value=null,!e)return q.value=null;_.setDeps(j.value,e.queryParams||[],(async()=>{q.value=null,A()})),(t.value||!n.lazyRequest)&&A()}}),{immediate:!0}),{labelKey:s,loading:x,remoteOptions:q,valueKey:v,filterOptions:S,fullOptions:N,fetchData:A,searchContent:O}}export{F as searchContentMatcher,I as useAutographOptions,q as useRecommendOptions,j as useUrlConfigOptions};
1
+ import{checkInSetupEnv as e,arrayed as n,jsonParse as l,keywordMatcher as t}from"../../../../shared/utils/index.js";import{useForm as u}from"@formily/vue";import{useMemoize as o}from"@vueuse/core";import{identity as r,uniqBy as a,isEqual as i,isString as c,omit as s,isArray as v,isFunction as m}from"lodash-es";import{computed as d,inject as f,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{useFormField as b}from"./useFormField.js";import{createUrlConfigParams as C,formRenderLog as K}from"../utils/index.js";import{useFormRequest as F}from"./useFormRequest.js";function R(e,n){const l=y();return d({get:()=>l.value?l.value:e[n],set(e){l.value=e}})}const O=(()=>{const e=o((e=>new RegExp(`(.*)${e.split("").map((e=>`(${function(e){return e.match(/[()\[\]{}$^\/]/)?"\\"+e:e}(e)})`)).join("(.*)")}(.*)`)),{getKey:r});return(n,l)=>l.match(e(n))})();function q(){const e=y();return{searchContent:e,optionSearchFilter:function(n,l,u){if(!e.value)return n;const o=v(u)?u.filter((e=>e&&c(e))):[];return n.filter((n=>function(n,l,u){if(!e.value)return!0;const o=n?n[l]:"";return!!c(o)&&(!!O(e.value,o)||!!t(e.value,n.keyword)||!!u.length&&u.some((l=>c(n[l])&&n[l].includes(e.value))))}(n,l,o)))}}}function j(e,n,t,u,o){const r=R(e,"commonList"),i=R(e,"recentList"),{searchContent:c,optionSearchFilter:v}=q();function y(e){return l(e.itemObj)}const p=d((()=>{var e,n;return null!=(n=null==(e=r.value)?void 0:e.map(y))?n:[]})),h=d((()=>{var e,n;return null!=(n=null==(e=i.value)?void 0:e.map(y))?n:[]})),w=d((()=>{if(!e.recommend||!p.value.length&&!h.value.length)return n.value;const l=a(p.value.concat(h.value),(e=>e[o.value])),t=n.value.filter((e=>l.every((function(n){return n[o.value]!==e[o.value]}))));return[...v(l,u.value),...t]})),{getRecommendRequestInfo:k,getHttpInstance:C}=F();function K(n){const{url:l,getRecommendIds:t}=k(),u=m(t)?t():{},o=m(e.getRecommendInfo)?e.getRecommendInfo():{};return{url:l[n],info:Object.assign({},u,o)}}const{fieldKey:O}=b(),j=f(g);return{postRecommend:async function(n){if(!e.recommend)return;const l=C();if(!l)return;const{url:u,info:r}=K("post"),a=w.value.find((e=>e[o.value]===n));a&&t("postRecommend",await l.post(u,{...r,keyword:"",itemId:o.value,itemObj:JSON.stringify(a)}))},getRecommend:async function(n){if(!e.recommend)return;if(c.value=n,r.value&&i.value&&e.recommendCache)return;const l=await j.addAsync(function(n,l){const{url:t,info:u}=K("get");return{url:t,method:"get",key:n,cache:l,params:{...u,recNum:Math.max(e.commonNum,e.recentNum),keyword:""}}}(O.value,e.recommendCache)),{commonly:t,recently:u}=l.reduce(((e,n)=>("commonly"===n.type?e.commonly.push(s(n,["type"])):"recently"===n.type&&e.recently.push(s(n,["type"])),e)),{commonly:[],recently:[]});r.value=t.slice(0,e.commonNum),i.value=u.slice(0,e.recentNum)},sortedOptions:w}}function I(n,l){e();const t=f(g),u=f(w),o=d((()=>{var e,l,t;return null!=(t=null!=(l=null==(e=n.urlConfig)?void 0:e.nameKey)?l:n.labelField)?t:"text"})),r=d((()=>{var e,l,t;return null!=(t=null!=(l=null==(e=n.urlConfig)?void 0:e.valueKey)?l:n.valueField)?t:"value"})),a=d((()=>{var e,l;return null!=(l=null==(e=n.urlConfig)?void 0:e.showKey)?l:n.showField})),{searchContent:s,optionSearchFilter:v}=q(),m=y(null),{field:F,fieldKey:R}=b(),O=y(!1),j=async function(e){if(s.value=e||"",!n.urlConfig)return m.value=null;try{O.value=!0;const e=await t.addAsync(await C({config:n.urlConfig,cache:n.requestCache,field:F.value}));h(m.value)!==e&&(m.value=e,u("afterOptionInit",[R.value,m.value]))}catch(e){c(e)&&K(e)}finally{O.value=!1}},I=d((()=>m.value?v(m.value,o.value):Array.isArray(n.options)?v(n.options,o.value):[])),x=d((()=>m.value||n.options||[])),A=f(k);return p((()=>n.urlConfig),((e,t)=>{if(!i(e,t)){if(m.value=null,!e)return m.value=null;A.setDeps(R.value,e.dependKey||[],(async()=>{m.value=null,l.value=null,!n.lazyRequest&&await j()})),(l.value||!n.lazyRequest)&&j()}}),{immediate:!0}),{labelKey:o,loading:O,showKey:a,valueKey:r,remoteOptions:m,filterOptions:I,fullOptions:x,fetchData:j,searchContent:s}}function x(l,t){e();const o=f(g),r=f(w),a=u(),s=d((()=>{var e;const t=n(null==(e=l.wordbook)?void 0:e.show_key)[0];return c(t)?t:null})),v=d((()=>{var e,n,t,u;const o=null==(n=null==(e=l.wordbook)?void 0:e.render_key)?void 0:n[0];return c(o)?o:null!=(u=null!=(t=s.value)?t:l.labelField)?u:"text"})),m=d((()=>{var e,n,t;return null!=(t=null!=(n=null==(e=l.wordbook)?void 0:e.value_key)?n:l.valueField)?t:"value"})),C=d((()=>{var e;return(null==(e=l.wordbook)?void 0:e.search_key)||[]})),R=d((()=>{var e;return null!=(e=s.value)?e:l.showField})),{searchContent:O,optionSearchFilter:j}=q(),I=y(null),{fieldKey:x}=b(),{getSearchRequestInfo:A}=F(),S=y(!1),N=async function(e){if(O.value=e||"",!l.autograph||!l.wordbook)return I.value=null;try{S.value=!0;const e=await o.addAsync(function(e,n,t){var u,o,r;const i={autograph:n,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1};if(null==(u=e.queryParams)?void 0:u.length){const n=null!=(r=null==(o=a.value)?void 0:o.getFormState().values)?r:{};e.queryParams.forEach((e=>{i[e]=n[e]}))}return{...A(),params:i,key:t,cache:l.requestCache}}(l.wordbook,l.autograph,x.value));h(I.value)!==e&&(I.value=e,r("afterOptionInit",[x.value,I.value]))}catch(e){c(e)&&K(e)}finally{S.value=!1}},_=d((()=>I.value?j(I.value,v.value,C.value):Array.isArray(l.options)?j(l.options,v.value):[])),D=d((()=>I.value||l.options||[])),z=f(k);return p((()=>l.wordbook),((e,n)=>{if(!i(e,n)){if(I.value=null,!e)return I.value=null;z.setDeps(x.value,e.queryParams||[],(async()=>{I.value=null,N()})),(t.value||!l.lazyRequest)&&N()}}),{immediate:!0}),{labelKey:v,showKey:R,loading:S,remoteOptions:I,valueKey:m,filterOptions:_,fullOptions:D,fetchData:N,searchContent:O}}export{O as searchContentMatcher,x as useAutographOptions,j as useRecommendOptions,I as useUrlConfigOptions};
@@ -1 +1 @@
1
- import{arrayed as e}from"../../../../shared/utils/index.js";import{once as a,isNumber as m,isString as r}from"lodash-es";import"vue";import{registerValidateLocale as i,registerValidateRules as s}from"@formily/core";import"@formily/path";import"@vue/shared";import{isFunction as l}from"@vueuse/core";import"../../index.js";import{isIdCard as u}from"../utils/business.js";function t(){const a=new Map([["mobile",({validate:e})=>({format:"phone",message:null==e?void 0:e.message})],["integer",({validate:e})=>({format:"integer",message:null==e?void 0:e.message})],["number",({validate:e})=>({format:"number",message:null==e?void 0:e.message})],["id_card",({validate:e})=>({validator(a){var m;if(null!=a&&""!==a)return r(a)&&u(a)?void 0:null!=(m=null==e?void 0:e.message)?m:"该字段不是合法的身份证格式"}})],["regular",({validate:e,regular_expression:a,regular_error_tip:m})=>({pattern:a||(null==e?void 0:e.regular_expression)||"",message:m||(null==e?void 0:e.regular_error_tip)||(null==e?void 0:e.message)||"格式错误"})]]),m={triggerType:"onBlur"};return{createValidatorSchema:function(r){const i=[],{validate:{vali_obj:s,max_length:u,min_length:t,message:n,max_value:o,min_value:g,decimal_length:d}={},validator:v}=r;if(v&&e(v).forEach((e=>{l(e)&&i.push({validator:a=>e(a,r)})})),u&&i.push({max:u,message:n}),t&&i.push({min:t,message:n}),o&&i.push({maximum:o,message:n}),g&&i.push({minimum:g,message:n}),null!=d&&i.push(((e,a)=>{const m=null!=a?a:`小数位数最多${e}位`;return{validator(a){var r;return(null==(r=String(a).split(".")[1])?void 0:r.length)>e?m:""}}})(+d,n)),s){const e=a.get(s)||(({validate:e})=>({format:s,message:null==e?void 0:e.message}));i.push(Object.assign({},m,e(r)))}return i}}}const n=a((()=>{i({"zh-CN":{required:"${alias||name}为必填"}}),s({maximum:(e,a)=>m(Number(a.maximum))&&null!=e&&""!==e&&"/"!==e?(r(e)&&(e=+e),!m(e)||isNaN(e)?a.message||"":e>Number(a.maximum)&&a.message||""):"",minimum:(e,a)=>m(Number(a.minimum))&&null!=e&&""!==e&&"/"!==e?(r(e)&&(e=+e),!m(e)||isNaN(e)?a.message||"":e<Number(a.minimum)&&a.message||""):""})}));export{t as useFormValidator,n as validateMessageLocale};
1
+ import{arrayed as e}from"../../../../shared/utils/index.js";import{once as a,isNumber as i,isString as m}from"lodash-es";import"vue";import{registerValidateLocale as r,registerValidateRules as s}from"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import{isFunction as l}from"@vueuse/core";import"naive-ui";import"../../index.js";import{isIdCard as n}from"../utils/business.js";function o(){const a=new Map([["mobile",({validate:e})=>({format:"phone",message:null==e?void 0:e.message})],["integer",({validate:e})=>({format:"integer",message:null==e?void 0:e.message})],["number",({validate:e})=>({format:"number",message:null==e?void 0:e.message})],["id_card",({validate:e})=>({validator(a){var i;if(null!=a&&""!==a)return m(a)&&n(a)?void 0:null!=(i=null==e?void 0:e.message)?i:"该字段不是合法的身份证格式"}})],["regular",({validate:e,regular_expression:a,regular_error_tip:i})=>({pattern:a||(null==e?void 0:e.regular_expression)||"",message:i||(null==e?void 0:e.regular_error_tip)||(null==e?void 0:e.message)||"格式错误"})]]),i={triggerType:"onBlur"};return{createValidatorSchema:function(m){const r=[],{validate:{vali_obj:s,max_length:n,min_length:o,message:u,max_value:t,min_value:g,decimal_length:d}={},validator:v}=m;if(v&&e(v).forEach((e=>{l(e)&&r.push({validator:a=>e(a,m)})})),n&&r.push({max:n,message:u}),o&&r.push({min:o,message:u}),t&&r.push({maximum:t,message:u}),g&&r.push({minimum:g,message:u}),null!=d&&r.push(((e,a)=>{const i=null!=a?a:`小数位数最多${e}位`;return{validator(a){var m;return(null==(m=String(a).split(".")[1])?void 0:m.length)>e?i:""}}})(+d,u)),s){const e=a.get(s)||(({validate:e})=>({format:s,message:null==e?void 0:e.message}));r.push(Object.assign({},i,e(m)))}return r}}}const u=a((()=>{r({"zh-CN":{required:"${alias||name}为必填"}}),s({maximum:(e,a)=>i(Number(a.maximum))&&null!=e&&""!==e&&"/"!==e?(m(e)&&(e=+e),!i(e)||isNaN(e)?a.message||"":e>Number(a.maximum)&&a.message||""):"",minimum:(e,a)=>i(Number(a.minimum))&&null!=e&&""!==e&&"/"!==e?(m(e)&&(e=+e),!i(e)||isNaN(e)?a.message||"":e<Number(a.minimum)&&a.message||""):""})}));export{o as useFormValidator,u as validateMessageLocale};
@@ -1 +1 @@
1
- import{isString as i}from"lodash-es";import"vue";import"../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vue/shared";import"@vueuse/core";import"../../index.js";import{isIdCard as r,isMobile as o}from"../utils/business.js";function s(){return{isIdCard:o=>i(o)&&r(o),isMobile:r=>i(r)&&o(r),isEmail:r=>i(r)&&/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(r),isNumber:r=>i(r)&&/\d+/.test(r)}}export{s as usePresetScope};
1
+ import{isString as i}from"lodash-es";import"vue";import"../../../../shared/utils/index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import"@vue/shared";import"@vueuse/core";import"naive-ui";import"../../index.js";import{isIdCard as o,isMobile as r}from"../utils/business.js";function s(){return{isIdCard:r=>i(r)&&o(r),isMobile:o=>i(o)&&r(o),isEmail:o=>i(o)&&/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(o),isNumber:o=>i(o)&&/\d+/.test(o)}}export{s as usePresetScope};
@@ -48,11 +48,12 @@ export interface FormRenderer {
48
48
  export declare type UrlConfig = {
49
49
  url: string;
50
50
  } & Partial<{
51
- method?: FormRequestType;
52
- nameKey?: string;
53
- valueKey?: string;
54
- params?: AnyObject;
55
- dependKey?: DependKeyType;
51
+ method: FormRequestType;
52
+ nameKey: string;
53
+ valueKey: string;
54
+ showKey: string;
55
+ params: AnyObject;
56
+ dependKey: DependKeyType;
56
57
  }>;
57
58
  interface SwitchProperty {
58
59
  value?: any;
@@ -148,6 +149,9 @@ export declare type FieldItem = {
148
149
  prefix: string | AnyObject | (() => any);
149
150
  suffix: string | AnyObject | (() => any);
150
151
  allowSlash: boolean;
152
+ allowModify: '0' | '1';
153
+ show_key: string;
154
+ bordered: boolean | string;
151
155
  fieldType: SchemaTypes;
152
156
  content: string | FormRenderer | Record<string, FormRenderer>;
153
157
  lazyRequest: boolean;
@@ -142,6 +142,7 @@ export declare type FormRenderProps = Partial<{
142
142
  bordered: boolean | string;
143
143
  uniqueCacheData: boolean;
144
144
  operationalForm: FormOperationalConfig[];
145
+ outBordered: boolean;
145
146
  }>;
146
147
  export declare type FormBusinessFormatter = (payload: {
147
148
  fieldKey: string;
@@ -31,5 +31,7 @@ export declare function createUrlConfigParams({ config, field, cache }: {
31
31
  method?: import("../../../../../es/components/form-render").FormRequestType | undefined;
32
32
  nameKey?: string | undefined;
33
33
  valueKey?: string | undefined;
34
+ showKey?: string | undefined;
34
35
  dependKey?: import("../../../../../es/components/form-render").DependKeyType | undefined;
35
36
  }>;
37
+ export declare function renderDescOption(labelNode: any, option: AnyObject): JSX.Element;
@@ -1 +1 @@
1
- import{inject as e,provide as t,computed as r,createVNode as n,Fragment as o}from"vue";import{arrayed as c}from"../../../../shared/utils/index.js";import{isGeneralField as u,isField as i}from"@formily/core";import{Path as s}from"@formily/path";import{isObject as f}from"@vue/shared";import{useMemoize as a}from"@vueuse/core";import{isString as l,isFunction as p,omit as h}from"lodash-es";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as m}from"../constants/index.js";import"date-fns";import{traverseDependKey as d}from"./schema.js";export{assignClearBindVisited,assignUpdateValue,assignValueBindKey,createLinebarId,createObjSchema,createVisitedSetter,dotEscape,fieldKeyEscape,getParentLinebar,traverseDependKey,traverseSchema}from"./schema.js";function y(e){console.warn(`[FormRender]: ${e}`)}function x(e,t,r=["children","properties","suffixConfig"],n="val_key",o="default_val"){return function e(t,n){n.forEach((n=>{f(n)&&(null!=i(n)&&null==t[u(n)]&&s.setIn(t,u(n),i(n)),r.forEach((r=>{n[r]&&(t[u(n)]||(t[u(n)]={}),e(t[u(n)],c(n[r])))})))}))}(e,t),e;function u(e){return e[n]}function i(e){return e[o]}}function g(r,n){let o=e(r,null);return o||(o=n(),t(r,o)),o}function j(e){return l(e)?+e:e}function v(e,t,r){if(f(e)&&!p(e)){const r={};return Object.entries(e).forEach((([e,n])=>{p(n)&&(r[e]=()=>n(t))})),r}return{default:()=>p(e)?e(t):r?r(e):[e]}}function S(e,t){return r((()=>{const r={};return e.prefix&&(r.prefix=()=>n(o,null,[v(e.prefix,e,t).default()])),e.suffix&&(r.suffix=()=>n(o,null,[v(e.suffix,e,t).default()])),r}))}function E(e){if(!f(e))throw e;return t=e,Reflect.has(t,"map")&&Reflect.has(t,"result")?function(e){const{result:t,map:r}=e;if("SUCCESS"!==t)throw e;return r.rows}(e):function(e){return Reflect.has(e,"result")&&Reflect.has(e,"obj")}(e)?function(e){const{obj:t,result:r}=e;if("SUCCESS"!==r||!f(t))throw e;return Object.entries(t).reduce(((e,[t,r])=>(r.forEach((r=>e.push({...r,type:t}))),e)),[])}(e):function(e){return Reflect.has(e,"data")&&Reflect.has(e,"success")}(e)?function(e){const{data:t,success:r}=e;if(!r)throw e;return t}(e):[];var t}function b(e,t){return l(e)&&e?e.replace(/\$\{([^}]*)}/g,(function(e,r){const n=r.split("||");for(const e of n){const r=t[e.trim()];if(r)return r}return""})):""}function K(e){return e.reduce(((e,t)=>(l(t.extendKey)&&t.extendKey&&e.push(t),k(t)&&e.push(...K(t.children||[])),e)),[])}function w(e,t){const r=K(e);if(!r.length)return t;const n={},o=new Map;return Object.entries(t).forEach((([e,c])=>{const u=r.find((t=>t.val_key===e));if(!u)return n[e]=c;const{val_key:i,extendKey:s}=u,f=o.get(s)||{};o.set(s,f),f[i]=t[i]})),[...o.entries()].forEach((([e,t])=>{n[e]=JSON.stringify(t)})),n}function R(e,t){const r=K(e);if(!r.length)return t;const n=a((e=>{try{return f(t[e])?t[e]:JSON.parse(t[e])||{}}catch(e){return{}}})),o=h(t,r.map((e=>e.extendKey)));return r.forEach((({val_key:e,extendKey:t})=>{Reflect.has(o,e)||(o[e]=n(t)[e])})),o}function O(e){return e&&m.includes(e)}function k(e){return O(u(e)?e.componentType:e.html_type)}async function C({config:e,field:t,cache:r}){const n={},o=t.props.name.toString();try{d(e.dependKey||[],((e,r,o)=>{const c=t.query(e).take();if(!i(c)||o&&null==c.value)throw`缺少必须的参数=>${e}`;n[r]=c.value}))}catch(e){return Promise.reject(e)}return{...e,params:Object.assign({},e.params,n),key:o,cache:r}}export{w as combineExtendKey,S as createInputSlot,v as createSlot,C as createUrlConfigParams,y as formRenderLog,g as injectOrProvide,k as isNestedFieldType,O as isNestedType,x as mergeDeepProperties,j as parseNumberFromMaybeString,E as presetRequestHandler,R as splitExtendKey,b as validateMessageParser};
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 +1 @@
1
- .annotation-edit{align-items:center;color:var(--c-primary-color);cursor:pointer;display:inline-flex;font-size:16px;user-select:none}.annotation-edit.is-active{color:var(--c-primary-color);filter:hue-rotate(140deg)}.annotation-edit__icon{align-items:center;display:inline-flex}.annotation-edit__textarea{min-width:200px}.annotation-edit__footer{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;opacity:.5}.annotation-edit__footer>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annotation-edit__footer>div:first-of-type{min-width:30%}.recommend-search__menu{min-height:100px}.recommend-search__menuRecommendList{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.recommend-search__menuRecommendList .n-tag{cursor:pointer}.recommend-search__recentRecommend{margin-bottom:8px}.recommend-search__recentRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__recentRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__commonRecommend{margin-bottom:8px}.recommend-search__commonRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__commonRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__option{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:32px;justify-content:space-between;padding:0 8px}.recommend-search__optionText{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recommend-search__option.is-active{color:var(--n-color)!important}.recommend-search__option.is-active .n-icon{font-size:20px}.recommend-search__option:hover{background:rgba(0,0,0,.03)}.recommend-search__optionContainer{margin:-8px -10px}.recommend-search__empty{align-items:center;color:rgba(0,0,0,.3);display:flex;height:100px;justify-content:center}.search-cascader__menuWrapper{display:flex;flex-wrap:nowrap;margin:-8px -14px}.search-cascader__input input{cursor:pointer!important}.search-cascader__option{align-items:center;border-radius:4px;box-sizing:border-box;display:flex;height:32px;justify-content:space-between;min-width:100%;padding:0 8px 0 16px;width:fit-content}.search-cascader__option--active{background:#f8f8f8}.search-cascader__option:hover{background:#f5f5f5;cursor:pointer}.search-cascader__optionWrapper{background:#fff;height:256px;overflow-x:auto;width:calc(var(--menu-width)*1px)}.search-cascader__optionWrapper:not(:last-of-type){border:solid #e5e5e5;border-width:0 1px 0 0}.search-cascader__optionText{white-space:nowrap}.search-cascader__optionText--active{color:var(--c-primary-color)}.search-cascader__option svg{color:#bfbfbf;flex-shrink:0;font-size:12px;width:20px}.search-cascader__option svg.rotate{animation:rotate 1s linear infinite}.search-cascader__emptyWrapper{align-items:center;background:#fff;box-sizing:border-box;display:flex;height:300px;justify-content:center;padding:16px;width:100%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.form-render__wrapper{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));max-height:var(--form-height);overflow-y:auto;position:relative}.form-render__formItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__formItem .n-date-picker,.form-render__formItem .n-input-number{width:100%}.form-render__formItemLabel{align-items:center;display:inline-flex;justify-content:space-between;position:relative}.form-render__formItemLabel--operation{align-items:center;display:flex;gap:2px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.form-render__formItemLabel--tooltip{font-size:0;line-height:1;width:16px}.form-render__formItemLabel--text{white-space:nowrap}.form-render__formItem .n-form-item-label{display:inline-flex}.form-render__formItem .n-form-item-label [annotation-hover-show=true]{visibility:hidden}.form-render__formItem .n-form-item-label:hover [annotation-hover-show=true]{visibility:visible}.form-render__linebar{grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column))}.form-render__linebarHeader{align-items:center;background:#f2f2f2;border-radius:4px;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:space-between;margin-bottom:8px;padding:0 16px}.form-render__linebarHeader>svg{color:rgba(33,33,33,.4);width:14px}.form-render__linebarHeaderTitle{align-items:center;display:flex;font-size:15px;gap:4px;vertical-align:middle}.form-render__linebarHeaderTitle svg{height:16px;transform:translateY(-1px)}.form-render__linebarHeader--disabled{cursor:auto}.form-render__linebarItem{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__linebreaks{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup{align-items:start;display:grid!important;gap:0 16px;gap:0;grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column));grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__inputGroup>div{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup>div:not(:last-of-type) .n-base-selection__border,.form-render__inputGroup>div:not(:last-of-type) .n-input__border{border-bottom-right-radius:0;border-right:0;border-top-right-radius:0}.form-render__inputGroup>div:last-of-type .n-base-selection__border,.form-render__inputGroup>div:last-of-type .n-input__border{border-bottom-left-radius:0;border-top-left-radius:0}.form-render__inputGroup .n-form-item--left-labelled:not(:first-of-type)>label{display:none}.form-render__combination{width:100%}.form-render__combinationHeader{display:flex;gap:12px}.form-render__combinationHeader>h3{font-size:16px;font-weight:700;margin:0;padding:0}.form-render__combinationHeader .n-button__icon{font-size:14px;margin:0 2px 0 0}.form-render__combinationHeaderText{font-size:16px;font-weight:500}.form-render__combinationClose{font-size:16px;height:14px;position:absolute;right:5px;top:5px;width:14px}.form-render__combinationContentJson{position:relative}.form-render__combinationContent{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));position:relative}.form-render__complex{width:100%}.form-render__complexContent--grid{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__complexContent--flex{display:flex!important;gap:0 8px}.form-render__selectMenu .n-scrollbar-rail__scrollbar{display:none!important}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar,.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{display:unset!important;height:6px;width:6px}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:4px}.form-render__selectMenu .v-vl-items{min-width:100%;width:max-content}.form-render__selectOption .n-base-select-option__content{overflow:visible!important;text-overflow:unset!important;word-break:keep-all!important}.form-render__labelField{align-items:start;display:grid!important;display:inline-grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));grid-template-columns:repeat(var(--column),auto)!important;margin-left:16px}.form-render__labelField .n-form-item{display:inline-grid}.form-render__labelField label.n-form-item-label.n-form-item-label--left-mark{align-items:center}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box{background-color:transparent}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-icon .check-icon{opacity:0}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box__border{border:var(--n-border)}.form-render .form-render__formItem .n-checkbox,.form-render .form-render__formItem .n-radio{align-items:center}.form-render .form-render__formItem .n-radio-input{left:auto;right:auto}.form-render .form-render__formItem .n-checkbox-group>.n-space:not([vertical-space=true]),.form-render .form-render__formItem .n-radio-group>.n-space:not([vertical-space=true]){align-items:center!important}.form-render .form-render__formItem .n-checkbox__label{align-items:center;display:inline-flex}.form-render--no-border .n-input{border-radius:0}.form-render--no-border .n-input__border,.form-render--no-border .n-input__state-border{border-width:0!important}.form-render--no-border .n-input:hover .n-input__state-border{border-bottom-width:1px!important}.form-render--no-border .n-input--focus{border-radius:0}.form-render--no-border .n-input--focus .n-input__state-border{border-bottom-width:1px!important;box-shadow:none!important}.form-render--no-border .n-base-selection--active .n-base-selection__state-border,.form-render--no-border .n-base-selection--focus .n-base-selection__state-border,.form-render--no-border .n-base-selection:hover .n-base-selection__state-border,.form-render--no-border .n-base-selection__border,.form-render--no-border .n-base-selection__state-border{border-width:0!important;box-shadow:none!important}.form-render--underline .n-input{border-radius:0}.form-render--underline .n-input__border,.form-render--underline .n-input__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important}.form-render--underline .n-input--focus{border-radius:0}.form-render--underline .n-input--focus .n-input__state-border{box-shadow:none!important}.form-render--underline .n-base-selection--active .n-base-selection__state-border,.form-render--underline .n-base-selection--focus .n-base-selection__state-border,.form-render--underline .n-base-selection:hover .n-base-selection__state-border,.form-render--underline .n-base-selection__border,.form-render--underline .n-base-selection__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important;box-shadow:none!important}.form-render__selectChildField{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));width:100%}.form-render__selectChildFieldItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__selectOption.n-base-select-option--disabled .n-base-select-option__content{color:rgba(0,0,0,.4)}
1
+ .annotation-edit{align-items:center;color:var(--c-primary-color);cursor:pointer;display:inline-flex;font-size:16px;user-select:none}.annotation-edit.is-active{color:var(--c-primary-color);filter:hue-rotate(140deg)}.annotation-edit__icon{align-items:center;display:inline-flex}.annotation-edit__textarea{min-width:200px}.annotation-edit__footer{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;opacity:.5}.annotation-edit__footer>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.annotation-edit__footer>div:first-of-type{min-width:30%}.recommend-search__menu{min-height:100px}.recommend-search__menuRecommendList{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.recommend-search__menuRecommendList .n-tag{cursor:pointer}.recommend-search__recentRecommend{margin-bottom:8px}.recommend-search__recentRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__recentRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__commonRecommend{margin-bottom:8px}.recommend-search__commonRecommend>header{align-items:center;color:rgba(0,0,0,.4);display:flex;justify-content:space-between}.recommend-search__commonRecommend>header .n-icon:hover{color:rgba(0,0,0,.6);cursor:pointer}.recommend-search__option{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:32px;justify-content:space-between;padding:0 8px}.recommend-search__optionText{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recommend-search__option.is-active{color:var(--n-color)!important}.recommend-search__option.is-active .n-icon{font-size:20px}.recommend-search__option:hover{background:rgba(0,0,0,.03)}.recommend-search__optionContainer{margin:-8px -10px}.recommend-search__empty{align-items:center;color:rgba(0,0,0,.3);display:flex;height:100px;justify-content:center}.search-cascader__menuWrapper{display:flex;flex-wrap:nowrap;margin:-8px -14px}.search-cascader__input input{cursor:pointer!important}.search-cascader__option{align-items:center;border-radius:4px;box-sizing:border-box;display:flex;height:32px;justify-content:space-between;min-width:100%;padding:0 8px 0 16px;width:fit-content}.search-cascader__option--active{background:#f8f8f8}.search-cascader__option:hover{background:#f5f5f5;cursor:pointer}.search-cascader__optionWrapper{background:#fff;height:256px;overflow-x:auto;width:calc(var(--menu-width)*1px)}.search-cascader__optionWrapper:not(:last-of-type){border:solid #e5e5e5;border-width:0 1px 0 0}.search-cascader__optionText{white-space:nowrap}.search-cascader__optionText--active{color:var(--c-primary-color)}.search-cascader__option svg{color:#bfbfbf;flex-shrink:0;font-size:12px;width:20px}.search-cascader__option svg.rotate{animation:rotate 1s linear infinite}.search-cascader__emptyWrapper{align-items:center;background:#fff;box-sizing:border-box;display:flex;height:300px;justify-content:center;padding:16px;width:100%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.form-render__wrapper{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));max-height:var(--form-height);overflow-y:auto;position:relative}.form-render__formItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column));position:relative}.form-render__formItem .n-date-picker,.form-render__formItem .n-input-number{width:100%}.form-render__formItemLabel{align-items:center;display:inline-flex;justify-content:space-between;position:relative}.form-render__formItemLabel--operation{align-items:center;display:flex;gap:2px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.form-render__formItemLabel--tooltip{font-size:0;line-height:1;width:16px}.form-render__formItemLabel--text{white-space:nowrap}.form-render__formItem .n-form-item-label{display:inline-flex}.form-render__formItem .n-form-item-label [annotation-hover-show=true]{visibility:hidden}.form-render__formItem .n-form-item-label:hover [annotation-hover-show=true]{visibility:visible}.form-render__linebar{grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column))}.form-render__linebarHeader{align-items:center;background:#f2f2f2;border-radius:4px;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:space-between;margin-bottom:8px;padding:0 16px}.form-render__linebarHeader>svg{color:rgba(33,33,33,.4);width:14px}.form-render__linebarHeaderTitle{align-items:center;display:flex;font-size:15px;gap:4px;vertical-align:middle}.form-render__linebarHeaderTitle svg{height:16px;transform:translateY(-1px)}.form-render__linebarHeader--disabled{cursor:auto}.form-render__linebarItem{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__linebreaks{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup{align-items:start;display:grid!important;gap:0 16px;gap:0;grid-column:span min(var(--column),var(--column)) /span min(var(--column),var(--column));grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__inputGroup>div{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render__inputGroup>div:not(:last-of-type) .n-base-selection__border,.form-render__inputGroup>div:not(:last-of-type) .n-input__border{border-bottom-right-radius:0;border-right:0;border-top-right-radius:0}.form-render__inputGroup>div:last-of-type .n-base-selection__border,.form-render__inputGroup>div:last-of-type .n-input__border{border-bottom-left-radius:0;border-top-left-radius:0}.form-render__inputGroup .n-form-item--left-labelled:not(:first-of-type)>label{display:none}.form-render__combination{width:100%}.form-render__combinationHeader{display:flex;gap:12px}.form-render__combinationHeader>h3{font-size:16px;font-weight:700;margin:0;padding:0}.form-render__combinationHeader .n-button__icon{font-size:14px;margin:0 2px 0 0}.form-render__combinationHeaderText{font-size:16px;font-weight:500}.form-render__combinationClose{font-size:16px;height:14px;position:absolute;right:5px;top:5px;width:14px}.form-render__combinationContentJson{position:relative}.form-render__combinationContent{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));position:relative}.form-render__complex{width:100%}.form-render__complexContent--grid{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr))}.form-render__complexContent--flex{display:flex!important;gap:0 8px}.form-render__selectMenu .n-scrollbar-rail__scrollbar{display:none!important}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar,.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{display:unset!important;height:6px;width:6px}.form-render__selectMenu .n-virtual-list::-webkit-scrollbar-thumb{background:#bfbfbf;border-radius:4px}.form-render__selectMenu .v-vl-items{min-width:100%;width:max-content}.form-render__selectOption .n-base-select-option__content{overflow:visible!important;text-overflow:unset!important;word-break:keep-all!important}.form-render__labelField{align-items:start;display:grid!important;display:inline-grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));grid-template-columns:repeat(var(--column),auto)!important;margin-left:16px}.form-render__labelField .n-form-item{display:inline-grid}.form-render__labelField label.n-form-item-label.n-form-item-label--left-mark{align-items:center}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box{background-color:transparent}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-icon .check-icon{opacity:0}.form-render__labelField .n-checkbox[aria-checked=false] .n-checkbox-box__border{border:var(--n-border)}.form-render .form-render__formItem .n-checkbox,.form-render .form-render__formItem .n-radio{align-items:center}.form-render .form-render__formItem .n-radio-input{left:auto;right:auto}.form-render .form-render__formItem .n-checkbox-group>.n-space:not([vertical-space=true]),.form-render .form-render__formItem .n-radio-group>.n-space:not([vertical-space=true]){align-items:center!important}.form-render .form-render__formItem .n-checkbox__label{align-items:center;display:inline-flex}.form-render--no-border .n-input{border-radius:0}.form-render--no-border .n-input__border,.form-render--no-border .n-input__state-border{border-width:0!important}.form-render--no-border .n-input:hover .n-input__state-border{border-bottom-width:1px!important}.form-render--no-border .n-input--focus{border-radius:0}.form-render--no-border .n-input--focus .n-input__state-border{border-bottom-width:1px!important;box-shadow:none!important}.form-render--no-border .n-base-selection--active .n-base-selection__state-border,.form-render--no-border .n-base-selection--focus .n-base-selection__state-border,.form-render--no-border .n-base-selection:hover .n-base-selection__state-border,.form-render--no-border .n-base-selection__border,.form-render--no-border .n-base-selection__state-border{border-width:0!important;box-shadow:none!important}.form-render--underline .n-input{border-radius:0}.form-render--underline .n-input__border,.form-render--underline .n-input__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important}.form-render--underline .n-input--focus{border-radius:0}.form-render--underline .n-input--focus .n-input__state-border{box-shadow:none!important}.form-render--underline .n-base-selection--active .n-base-selection__state-border,.form-render--underline .n-base-selection--focus .n-base-selection__state-border,.form-render--underline .n-base-selection:hover .n-base-selection__state-border,.form-render--underline .n-base-selection__border,.form-render--underline .n-base-selection__state-border{border-left-width:0!important;border-right-width:0!important;border-top-width:0!important;box-shadow:none!important}.form-render__selectChildField{align-items:start;display:grid!important;gap:0 16px;grid-template-columns:repeat(var(--column),minmax(0,1fr));width:100%}.form-render__selectChildFieldItem{grid-column:span min(var(--column),var(--form-item-column)) /span min(var(--column),var(--form-item-column))}.form-render--out-border .form-render__wrapper{border:1px solid #1f2225;padding:0 8px}.form-render__selectOption.n-base-select-option--disabled .n-base-select-option__content{color:rgba(0,0,0,.4)}
@@ -1,4 +1,4 @@
1
- import { CSSProperties, PropType, ref } from 'vue';
1
+ import { CSSProperties, PropType } from 'vue';
2
2
  import { VxeColumnPropTypes, VxeTableConstructor, VxeTableMethods, VxeTablePrivateMethods } from 'vxe-table';
3
3
  declare const _default: import("vue").DefineComponent<{
4
4
  payload: {
@@ -13,6 +13,7 @@ declare const _default: import("vue").DefineComponent<{
13
13
  };
14
14
  }>> & {}>>;
15
15
  $table: (VxeTableConstructor & VxeTablePrivateMethods & VxeTableMethods) | undefined;
16
+ multipleRef: import("vue").ComputedRef<boolean>;
16
17
  optionsRef: import("vue").ComputedRef<import("vxe-table").VxeTableDefines.FilterOption[] & VxeColumnPropTypes.Filter[]>;
17
18
  checkedRef: import("vue").WritableComputedRef<string[]>;
18
19
  checkedCacheRef: import("vue").Ref<string[]>;
@@ -39,8 +40,17 @@ declare const _default: import("vue").DefineComponent<{
39
40
  checkAll: import("vue").WritableComputedRef<boolean>;
40
41
  indeterminate: import("vue").ComputedRef<boolean>;
41
42
  containerStyleWithHeight: import("vue").ComputedRef<CSSProperties>;
42
- confirmFilter: () => void;
43
+ conform: () => void;
43
44
  reset: () => void;
45
+ CancelRadio: import("vue").DefineComponent<{
46
+ currentValue: {};
47
+ cancelable: BooleanConstructor;
48
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
49
+ currentValue: {};
50
+ cancelable: BooleanConstructor;
51
+ }>>, {
52
+ cancelable: boolean;
53
+ }>;
44
54
  NButton: any;
45
55
  NButtonGroup: any;
46
56
  NCheckbox: any;
@@ -95,7 +105,291 @@ declare const _default: import("vue").DefineComponent<{
95
105
  readonly defaultValue: (string | number)[] | null;
96
106
  }>;
97
107
  NInput: any;
98
- ref: typeof ref;
108
+ NRadioGroup: import("vue").DefineComponent<{
109
+ readonly name: StringConstructor;
110
+ readonly value: PropType<string | number | boolean | null>;
111
+ readonly defaultValue: {
112
+ readonly type: PropType<string | number | boolean | null>;
113
+ readonly default: null;
114
+ };
115
+ readonly size: PropType<"small" | "medium" | "large">;
116
+ readonly disabled: {
117
+ readonly type: PropType<boolean | undefined>;
118
+ readonly default: undefined;
119
+ };
120
+ readonly 'onUpdate:value': PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/radio/src/interface").OnUpdateValue>>;
121
+ readonly onUpdateValue: PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/radio/src/interface").OnUpdateValue>>;
122
+ readonly theme: PropType<import("naive-ui/es/_mixins").Theme<"Radio", {
123
+ labelLineHeight: string;
124
+ buttonHeightSmall: string;
125
+ buttonHeightMedium: string;
126
+ buttonHeightLarge: string;
127
+ fontSizeSmall: string;
128
+ fontSizeMedium: string;
129
+ fontSizeLarge: string;
130
+ boxShadow: string;
131
+ boxShadowActive: string;
132
+ boxShadowFocus: string;
133
+ boxShadowHover: string;
134
+ boxShadowDisabled: string;
135
+ color: string;
136
+ colorDisabled: string;
137
+ colorActive: string;
138
+ textColor: string;
139
+ textColorDisabled: string;
140
+ dotColorActive: string;
141
+ dotColorDisabled: string;
142
+ buttonBorderColor: string;
143
+ buttonBorderColorActive: string;
144
+ buttonBorderColorHover: string;
145
+ buttonColor: string;
146
+ buttonColorActive: string;
147
+ buttonTextColor: string;
148
+ buttonTextColorActive: string;
149
+ buttonTextColorHover: string;
150
+ opacityDisabled: string;
151
+ buttonBoxShadowFocus: string;
152
+ buttonBoxShadowHover: string;
153
+ buttonBoxShadow: string;
154
+ buttonBorderRadius: string;
155
+ radioSizeSmall: string;
156
+ radioSizeMedium: string;
157
+ radioSizeLarge: string;
158
+ labelPadding: string;
159
+ }, any>>;
160
+ readonly themeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Radio", {
161
+ labelLineHeight: string;
162
+ buttonHeightSmall: string;
163
+ buttonHeightMedium: string;
164
+ buttonHeightLarge: string;
165
+ fontSizeSmall: string;
166
+ fontSizeMedium: string;
167
+ fontSizeLarge: string;
168
+ boxShadow: string;
169
+ boxShadowActive: string;
170
+ boxShadowFocus: string;
171
+ boxShadowHover: string;
172
+ boxShadowDisabled: string;
173
+ color: string;
174
+ colorDisabled: string;
175
+ colorActive: string;
176
+ textColor: string;
177
+ textColorDisabled: string;
178
+ dotColorActive: string;
179
+ dotColorDisabled: string;
180
+ buttonBorderColor: string;
181
+ buttonBorderColorActive: string;
182
+ buttonBorderColorHover: string;
183
+ buttonColor: string;
184
+ buttonColorActive: string;
185
+ buttonTextColor: string;
186
+ buttonTextColorActive: string;
187
+ buttonTextColorHover: string;
188
+ opacityDisabled: string;
189
+ buttonBoxShadowFocus: string;
190
+ buttonBoxShadowHover: string;
191
+ buttonBoxShadow: string;
192
+ buttonBorderRadius: string;
193
+ radioSizeSmall: string;
194
+ radioSizeMedium: string;
195
+ radioSizeLarge: string;
196
+ labelPadding: string;
197
+ }, any>>>;
198
+ readonly builtinThemeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Radio", {
199
+ labelLineHeight: string;
200
+ buttonHeightSmall: string;
201
+ buttonHeightMedium: string;
202
+ buttonHeightLarge: string;
203
+ fontSizeSmall: string;
204
+ fontSizeMedium: string;
205
+ fontSizeLarge: string;
206
+ boxShadow: string;
207
+ boxShadowActive: string;
208
+ boxShadowFocus: string;
209
+ boxShadowHover: string;
210
+ boxShadowDisabled: string;
211
+ color: string;
212
+ colorDisabled: string;
213
+ colorActive: string;
214
+ textColor: string;
215
+ textColorDisabled: string;
216
+ dotColorActive: string;
217
+ dotColorDisabled: string;
218
+ buttonBorderColor: string;
219
+ buttonBorderColorActive: string;
220
+ buttonBorderColorHover: string;
221
+ buttonColor: string;
222
+ buttonColorActive: string;
223
+ buttonTextColor: string;
224
+ buttonTextColorActive: string;
225
+ buttonTextColorHover: string;
226
+ opacityDisabled: string;
227
+ buttonBoxShadowFocus: string;
228
+ buttonBoxShadowHover: string;
229
+ buttonBoxShadow: string;
230
+ buttonBorderRadius: string;
231
+ radioSizeSmall: string;
232
+ radioSizeMedium: string;
233
+ radioSizeLarge: string;
234
+ labelPadding: string;
235
+ }, any>>>;
236
+ }, {
237
+ selfElRef: import("vue").Ref<HTMLDivElement | null>;
238
+ rtlEnabled: import("vue").Ref<import("naive-ui/es/config-provider/src/internal-interface").RtlItem | undefined> | undefined;
239
+ mergedClsPrefix: import("vue").ComputedRef<string>;
240
+ mergedValue: import("vue").ComputedRef<string | number | boolean | null>;
241
+ handleFocusout: (e: FocusEvent) => void;
242
+ handleFocusin: (e: FocusEvent) => void;
243
+ cssVars: import("vue").ComputedRef<{
244
+ '--n-font-size': string;
245
+ '--n-bezier': string;
246
+ '--n-button-border-color': string;
247
+ '--n-button-border-color-active': string;
248
+ '--n-button-border-radius': string;
249
+ '--n-button-box-shadow': string;
250
+ '--n-button-box-shadow-focus': string;
251
+ '--n-button-box-shadow-hover': string;
252
+ '--n-button-color-active': string;
253
+ '--n-button-text-color': string;
254
+ '--n-button-text-color-hover': string;
255
+ '--n-button-text-color-active': string;
256
+ '--n-height': string;
257
+ '--n-opacity-disabled': string;
258
+ }> | undefined;
259
+ themeClass: import("vue").Ref<string> | undefined;
260
+ onRender: (() => void) | undefined;
261
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
262
+ readonly name: StringConstructor;
263
+ readonly value: PropType<string | number | boolean | null>;
264
+ readonly defaultValue: {
265
+ readonly type: PropType<string | number | boolean | null>;
266
+ readonly default: null;
267
+ };
268
+ readonly size: PropType<"small" | "medium" | "large">;
269
+ readonly disabled: {
270
+ readonly type: PropType<boolean | undefined>;
271
+ readonly default: undefined;
272
+ };
273
+ readonly 'onUpdate:value': PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/radio/src/interface").OnUpdateValue>>;
274
+ readonly onUpdateValue: PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/radio/src/interface").OnUpdateValue>>;
275
+ readonly theme: PropType<import("naive-ui/es/_mixins").Theme<"Radio", {
276
+ labelLineHeight: string;
277
+ buttonHeightSmall: string;
278
+ buttonHeightMedium: string;
279
+ buttonHeightLarge: string;
280
+ fontSizeSmall: string;
281
+ fontSizeMedium: string;
282
+ fontSizeLarge: string;
283
+ boxShadow: string;
284
+ boxShadowActive: string;
285
+ boxShadowFocus: string;
286
+ boxShadowHover: string;
287
+ boxShadowDisabled: string;
288
+ color: string;
289
+ colorDisabled: string;
290
+ colorActive: string;
291
+ textColor: string;
292
+ textColorDisabled: string;
293
+ dotColorActive: string;
294
+ dotColorDisabled: string;
295
+ buttonBorderColor: string;
296
+ buttonBorderColorActive: string;
297
+ buttonBorderColorHover: string;
298
+ buttonColor: string;
299
+ buttonColorActive: string;
300
+ buttonTextColor: string;
301
+ buttonTextColorActive: string;
302
+ buttonTextColorHover: string;
303
+ opacityDisabled: string;
304
+ buttonBoxShadowFocus: string;
305
+ buttonBoxShadowHover: string;
306
+ buttonBoxShadow: string;
307
+ buttonBorderRadius: string;
308
+ radioSizeSmall: string;
309
+ radioSizeMedium: string;
310
+ radioSizeLarge: string;
311
+ labelPadding: string;
312
+ }, any>>;
313
+ readonly themeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Radio", {
314
+ labelLineHeight: string;
315
+ buttonHeightSmall: string;
316
+ buttonHeightMedium: string;
317
+ buttonHeightLarge: string;
318
+ fontSizeSmall: string;
319
+ fontSizeMedium: string;
320
+ fontSizeLarge: string;
321
+ boxShadow: string;
322
+ boxShadowActive: string;
323
+ boxShadowFocus: string;
324
+ boxShadowHover: string;
325
+ boxShadowDisabled: string;
326
+ color: string;
327
+ colorDisabled: string;
328
+ colorActive: string;
329
+ textColor: string;
330
+ textColorDisabled: string;
331
+ dotColorActive: string;
332
+ dotColorDisabled: string;
333
+ buttonBorderColor: string;
334
+ buttonBorderColorActive: string;
335
+ buttonBorderColorHover: string;
336
+ buttonColor: string;
337
+ buttonColorActive: string;
338
+ buttonTextColor: string;
339
+ buttonTextColorActive: string;
340
+ buttonTextColorHover: string;
341
+ opacityDisabled: string;
342
+ buttonBoxShadowFocus: string;
343
+ buttonBoxShadowHover: string;
344
+ buttonBoxShadow: string;
345
+ buttonBorderRadius: string;
346
+ radioSizeSmall: string;
347
+ radioSizeMedium: string;
348
+ radioSizeLarge: string;
349
+ labelPadding: string;
350
+ }, any>>>;
351
+ readonly builtinThemeOverrides: PropType<import("naive-ui/es/_mixins/use-theme").ExtractThemeOverrides<import("naive-ui/es/_mixins").Theme<"Radio", {
352
+ labelLineHeight: string;
353
+ buttonHeightSmall: string;
354
+ buttonHeightMedium: string;
355
+ buttonHeightLarge: string;
356
+ fontSizeSmall: string;
357
+ fontSizeMedium: string;
358
+ fontSizeLarge: string;
359
+ boxShadow: string;
360
+ boxShadowActive: string;
361
+ boxShadowFocus: string;
362
+ boxShadowHover: string;
363
+ boxShadowDisabled: string;
364
+ color: string;
365
+ colorDisabled: string;
366
+ colorActive: string;
367
+ textColor: string;
368
+ textColorDisabled: string;
369
+ dotColorActive: string;
370
+ dotColorDisabled: string;
371
+ buttonBorderColor: string;
372
+ buttonBorderColorActive: string;
373
+ buttonBorderColorHover: string;
374
+ buttonColor: string;
375
+ buttonColorActive: string;
376
+ buttonTextColor: string;
377
+ buttonTextColorActive: string;
378
+ buttonTextColorHover: string;
379
+ opacityDisabled: string;
380
+ buttonBoxShadowFocus: string;
381
+ buttonBoxShadowHover: string;
382
+ buttonBoxShadow: string;
383
+ buttonBorderRadius: string;
384
+ radioSizeSmall: string;
385
+ radioSizeMedium: string;
386
+ radioSizeLarge: string;
387
+ labelPadding: string;
388
+ }, any>>>;
389
+ }>>, {
390
+ readonly disabled: boolean | undefined;
391
+ readonly defaultValue: string | number | boolean | null;
392
+ }>;
99
393
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
100
394
  payload: {
101
395
  type: PropType<VxeColumnPropTypes.FilterSlotParams>;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as l,computed as a,ref as t,onDeactivated as u,openBlock as r,createElementBlock as i,unref as o,createBlock as n,createCommentVNode as v,createElementVNode as c,createVNode as s,isRef as d,withCtx as p,normalizeStyle as f,Fragment as m,renderList as h,toDisplayString as _,createTextVNode as y}from"vue";import{keywordMatcher as b,widthAppend as k}from"../../../../../shared/utils/index.js";import{useVirtualList as g}from"@vueuse/core";import{isNumber as L,isString as C}from"lodash-es";import{NInput as I,NCheckbox as S,NCheckboxGroup as x,NButtonGroup as D,NButton as U}from"naive-ui";const Y={class:"iho-table__filterWrapper"},$={class:"iho-table__filterCheckAllWrapper"},w={class:"iho-table__filterListItem"},W={class:"iho-table__filterListItem"},j=["title"],E={class:"iho-table__filterFooter"};var F=e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const F=e,O=l("$xetable"),P=a((()=>{var e,l,a;return null!=(a=null==(l=null==(e=F.payload)?void 0:e.column)?void 0:l.filters)?a:[]})),q=a({get:()=>P.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(!F.payload)return;if(P.value.forEach((l=>{F.payload.$panel.changeOption(null,e.includes(l.value),l)})),!O)return t();const{startIndex:l,endIndex:a}=O.internalData.scrollYStore;function t(){F.payload.$panel.confirmFilter(new CustomEvent("click"))}0===l&&1===a||O.reactData.scrollYLoad?t():(O.reactData.scrollYLoad=!0,t(),O.reactData.scrollYLoad=!1)}}),z=t([...q.value]),A=t("");function H(){O&&(O.reactData.filterStore.visible=!1)}u(H);const R=a((()=>{var e,l;if(!F.payload||!F.payload.column)return 10;const{filterCapacity:a}=null!=(l=null==(e=F.payload.column.editRender)?void 0:e.props)?l:{};return L(a)&&a>0?a:10})),B=a((()=>A.value?P.value.filter((e=>!!`${e.label}`.includes(A.value)||(C(e.data)?b(A.value,e.data):void 0))):P.value)),{list:G,containerProps:J,wrapperProps:K}=g(B,{itemHeight:32,overscan:3}),M=a({get:()=>B.value.every((e=>z.value.includes(e.value))),set(e){z.value=e?[...new Set([...z.value,...B.value.map((e=>e.value))])]:z.value.filter((e=>!B.value.some((l=>l.value!==e))))}}),N=a((()=>B.value.some((e=>z.value.includes(e.value)))&&!M.value)),Q=a({get:()=>z.value.length===P.value.length&&0!==P.value.length,set:e=>{z.value=e?P.value.map((e=>e.value)):[]}}),T=a((()=>!!z.value.length&&!Q.value)),V=a((()=>({...J.style,height:k(32*R.value)})));function X(){q.value=z.value,H()}function Z(){z.value=[]}return(e,l)=>(r(),i("section",Y,[o(P).length>5?(r(),n(o(I),{key:0,value:A.value,"onUpdate:value":l[0]||(l[0]=e=>A.value=e)},null,8,["value"])):v("v-if",!0),c("div",$,[c("div",w,[s(o(S),{label:"全选当前",checked:o(M),"onUpdate:checked":l[1]||(l[1]=e=>d(M)?M.value=e:null),indeterminate:o(N)},null,8,["checked","indeterminate"])]),c("div",W,[s(o(S),{label:"全选所有",checked:o(Q),"onUpdate:checked":l[2]||(l[2]=e=>d(Q)?Q.value=e:null),indeterminate:o(T)},null,8,["checked","indeterminate"])])]),s(o(x),{value:z.value,"onUpdate:value":l[4]||(l[4]=e=>z.value=e)},{default:p((()=>[c("section",{ref:o(J).ref,style:f(o(V)),onScroll:l[3]||(l[3]=(...e)=>o(J).onScroll&&o(J).onScroll(...e)),class:"iho-table__filterListWrapper"},[c("section",{style:f(o(K).style)},[(r(!0),i(m,null,h(o(G),(e=>(r(),i("div",{class:"iho-table__filterListItem",key:e.data.value},[s(o(S),{value:e.data.value},{default:p((()=>[c("div",{class:"iho-table__filterListItemContent",title:e.data.label},_(e.data.label),9,j)])),_:2},1032,["value"])])))),128))],4)],36)])),_:1},8,["value"]),c("footer",E,[c("section",null,[y(" 已选择 "),c("span",{style:f({color:"var(--c-primary-color)"})},_(z.value.length),5),y(" 项 ")]),s(o(D),{size:"small"},{default:p((()=>[s(o(U),{onClick:Z},{default:p((()=>[y("清空")])),_:1}),s(o(U),{onClick:H},{default:p((()=>[y("取消")])),_:1}),s(o(U),{type:"primary",onClick:X},{default:p((()=>[y("确定")])),_:1})])),_:1})])]))}});export{F as default};
1
+ import{defineComponent as e,inject as l,computed as a,ref as t,onDeactivated as u,openBlock as i,createElementBlock as r,unref as n,createBlock as o,createCommentVNode as v,createElementVNode as c,createVNode as s,isRef as d,withCtx as p,mergeProps as f,normalizeProps as h,guardReactiveProps as m,Fragment as _,renderList as y,toDisplayString as b,createTextVNode as k,normalizeStyle as g}from"vue";import C from"../../../../../shared/components/CancelRadio/CancelRadio.js";import{keywordMatcher as L,widthAppend as I}from"../../../../../shared/utils/index.js";import{useVirtualList as D}from"@vueuse/core";import{isNumber as x,isString as U,isEqual as S}from"lodash-es";import{NInput as W,NCheckbox as Y,NCheckboxGroup as j,NRadioGroup as w,NButtonGroup as E,NButton as F}from"naive-ui";const R={class:"iho-table__filterWrapper"},$={key:1,class:"iho-table__filterCheckAllWrapper"},O={class:"iho-table__filterListItem"},P={class:"iho-table__filterListItem"},V=["title"],q=["title"],z={class:"iho-table__filterListItemContent"},A={class:"iho-table__filterFooter"};var H=e({__name:"filter",props:{payload:{type:Object,required:!0}},setup(e){const H=e,M=l("$xetable"),B=a((()=>{var e;return!!(null==(e=H.payload)?void 0:e.column.filterMultiple)})),G=a((()=>{var e,l,a;return null!=(a=null==(l=null==(e=H.payload)?void 0:e.column)?void 0:l.filters)?a:[]})),J=a({get:()=>G.value.reduce(((e,l)=>(l.checked&&e.push(l.value),e)),[]),set(e){if(!H.payload||!M)return;const l=M.reactData.filterStore.options||[];B.value?(l.forEach((l=>l._checked=e.includes(l.value))),M.checkFilterOptions()):l.forEach((l=>l._checked=l.value===e[0]));const{startIndex:a,endIndex:t}=M.internalData.scrollYStore;if(0===a&&1===t||M.reactData.scrollYLoad)return u();function u(){H.payload.$panel.confirmFilter(new CustomEvent("click"))}M.reactData.scrollYLoad=!0,u(),M.reactData.scrollYLoad=!1}}),K=t([...J.value]),N=t("");function Q(){M&&(M.reactData.filterStore.visible=!1)}u(Q);const T=a((()=>{var e,l;if(!H.payload||!H.payload.column)return 10;const{filterCapacity:a}=null!=(l=null==(e=H.payload.column.editRender)?void 0:e.props)?l:{};return x(a)&&a>0?a:10})),X=a((()=>N.value?G.value.filter((e=>!!`${e.label}`.includes(N.value)||(U(e.data)?L(N.value,e.data):void 0))):G.value)),{list:Z,containerProps:ee,wrapperProps:le}=D(X,{itemHeight:32,overscan:3}),ae=a({get:()=>X.value.every((e=>K.value.includes(e.value))),set(e){K.value=e?[...new Set([...K.value,...X.value.map((e=>e.value))])]:K.value.filter((e=>X.value.every((l=>l.value!==e))))}}),te=a((()=>X.value.some((e=>K.value.includes(e.value)))&&!ae.value)),ue=a({get:()=>K.value.length===G.value.length&&0!==G.value.length,set:e=>{K.value=e?G.value.map((e=>e.value)):[]}}),ie=a((()=>!!K.value.length&&!ue.value)),re=a((()=>({height:I(32*T.value)})));function ne(){J.value=B.value?K.value:S(K.value[0],null)?[]:[K.value[0]],Q()}function oe(){K.value=B.value?[]:[null]}return(e,l)=>(i(),r("section",R,[n(G).length>5?(i(),o(n(W),{key:0,value:N.value,"onUpdate:value":l[0]||(l[0]=e=>N.value=e)},null,8,["value"])):v("v-if",!0),n(B)?(i(),r("div",$,[c("div",O,[s(n(Y),{label:"全选当前",checked:n(ae),"onUpdate:checked":l[1]||(l[1]=e=>d(ae)?ae.value=e:null),indeterminate:n(te)},null,8,["checked","indeterminate"])]),c("div",P,[s(n(Y),{label:"全选所有",checked:n(ue),"onUpdate:checked":l[2]||(l[2]=e=>d(ue)?ue.value=e:null),indeterminate:n(ie)},null,8,["checked","indeterminate"])])])):v("v-if",!0),n(B)?(i(),o(n(j),{key:2,value:K.value,"onUpdate:value":l[3]||(l[3]=e=>K.value=e)},{default:p((()=>[c("section",f(n(ee),{style:n(re),class:"iho-table__filterListWrapper"}),[c("section",h(m(n(le))),[(i(!0),r(_,null,y(n(Z),(e=>(i(),r("div",{class:"iho-table__filterListItem",key:e.data.value},[s(n(Y),{value:e.data.value},{default:p((()=>[c("div",{class:"iho-table__filterListItemContent",title:e.data.label},b(e.data.label),9,V)])),_:2},1032,["value"])])))),128))],16)],16)])),_:1},8,["value"])):(i(),o(n(w),{key:3,value:K.value[0],"onUpdate:value":l[5]||(l[5]=e=>K.value[0]=e)},{default:p((()=>[c("section",f(n(ee),{style:n(re),class:"iho-table__filterListWrapper"}),[c("section",h(m(n(le))),[(i(!0),r(_,null,y(n(Z),(e=>(i(),r("div",{class:"iho-table__filterListItem",key:e.data.value,title:e.data.label},[s(n(C),{value:e.data.value,currentValue:K.value[0],cancelable:"",onCancel:l[4]||(l[4]=e=>K.value=[null])},{default:p((()=>[c("div",z,b(e.data.label),1)])),_:2},1032,["value","currentValue"])],8,q)))),128))],16)],16)])),_:1},8,["value"])),c("footer",A,[c("section",null,[n(B)?(i(),r(_,{key:0},[k(" 已选择 "),c("span",{style:g({color:"var(--c-primary-color)"})},b(K.value.length),5),k(" 项 ")],64)):v("v-if",!0)]),s(n(E),{size:"small"},{default:p((()=>[s(n(F),{onClick:oe},{default:p((()=>[k("清空")])),_:1}),s(n(F),{onClick:Q},{default:p((()=>[k("取消")])),_:1}),s(n(F),{type:"primary",onClick:ne},{default:p((()=>[k("确定")])),_:1})])),_:1})])]))}});export{H as default};
@@ -0,0 +1 @@
1
+ export declare function filterVisibleEventPlugin(): import("../../../../../es/components/iho-table").TablePlugin;
@@ -0,0 +1 @@
1
+ import{nextTick as e}from"vue";import"../../index.js";import{defineTablePlugin as t}from"../hooks/useTablePlugin.js";function i(){const i="filterVisibleEventPlugin";return t({name:i,apply(t){t.eventHooks.onFilterVisible.tap(i,(({$table:t,visible:i})=>{i&&e((()=>{const e=t.getRefMaps().refTableFilter.value.$el,i=null==e?void 0:e.getBoundingClientRect(),n=Math.min(document.documentElement.clientHeight,window.innerHeight),l=parseFloat(t.reactData.filterStore.style.top);n-i.top-l<=i.height&&(e.style.transform=`translateY(${-(i.height+l)}px)`)}))}))}})}export{i as filterVisibleEventPlugin};