cnhis-design-vue 3.1.51-beta.0 → 3.1.51-beta.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 (44) hide show
  1. package/es/components/base-search/index.d.ts +0 -1
  2. package/es/components/base-search/src/index.vue.d.ts +0 -1
  3. package/es/components/classification/index.d.ts +57 -15
  4. package/es/components/classification/src/components/search-filter/index.vue.d.ts +57 -15
  5. package/es/components/classification/src/components/set-classification/index.vue.d.ts +57 -15
  6. package/es/components/classification/src/index.vue.d.ts +57 -15
  7. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
  8. package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcessChart.js +1 -1
  9. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
  10. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useLeft.js +1 -1
  11. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useOther.js +1 -1
  12. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useTop.js +1 -1
  13. package/es/components/fabric-chart/src/hooks/temperature/useBottom.js +1 -1
  14. package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
  15. package/es/components/fabric-chart/src/hooks/temperature/useLeft.js +1 -1
  16. package/es/components/fabric-chart/src/hooks/temperature/useOther.js +1 -1
  17. package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
  18. package/es/components/fabric-chart/src/hooks/temperature/useTop.js +1 -1
  19. package/es/components/form-render/src/components/renderer/remoteSearch.d.ts +79 -2
  20. package/es/components/form-render/src/components/renderer/remoteSearch.js +1 -1
  21. package/es/components/form-render/src/components/renderer/select.d.ts +10 -1
  22. package/es/components/form-render/src/components/renderer/select.js +1 -1
  23. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -1
  24. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +16 -10
  25. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  26. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.d.ts +1 -1
  27. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +52 -7
  28. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue2.js +1 -1
  29. package/es/components/table-filter/src/components/classify-filter/components/Date.vue.d.ts +1 -1
  30. package/es/components/table-filter/src/components/classify-filter/components/DateRange.vue.d.ts +1 -1
  31. package/es/components/table-filter/src/components/classify-filter/components/InputFilter.vue.d.ts +34 -2
  32. package/es/components/table-filter/src/components/classify-filter/components/InputFilter.vue2.js +1 -1
  33. package/es/components/table-filter/src/components/classify-filter/components/index.d.ts +36 -4
  34. package/es/components/table-filter/src/components/classify-filter/hooks/useFilterConditions.d.ts +1 -6
  35. package/es/components/table-filter/src/components/classify-filter/hooks/useFilterConditions.js +1 -1
  36. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +57 -15
  37. package/es/components/table-filter/src/components/classify-filter/index.vue2.js +1 -1
  38. package/es/components/table-filter/src/hooks/useAdvanced.js +1 -1
  39. package/es/components/table-filter/src/hooks/useRenderWidget.js +1 -1
  40. package/es/components/table-filter/src/tool/transformData.d.ts +1 -6
  41. package/es/components/table-filter/src/tool/transformData.js +1 -1
  42. package/es/components/table-filter/src/types/index.d.ts +11 -2
  43. package/es/shared/package.json.js +1 -1
  44. package/package.json +2 -2
@@ -3,7 +3,7 @@ import { PropType } from 'vue';
3
3
  import { UrlConfig } from '../../../../../../es/components/form-render';
4
4
  export declare const REMOTE_SEARCH: import("vue").DefineComponent<{
5
5
  value: {
6
- type: PropType<String | null>;
6
+ type: PropType<string | null>;
7
7
  };
8
8
  requestCache: {
9
9
  type: BooleanConstructor;
@@ -22,17 +22,54 @@ export declare const REMOTE_SEARCH: import("vue").DefineComponent<{
22
22
  type: StringConstructor;
23
23
  default: string;
24
24
  };
25
+ showField: {
26
+ type: StringConstructor;
27
+ };
25
28
  urlConfig: {
26
29
  type: PropType<UrlConfig>;
27
30
  };
31
+ autograph: {
32
+ type: StringConstructor;
33
+ };
34
+ wordbook: {
35
+ type: PropType<Partial<{
36
+ level_num: number;
37
+ id: string;
38
+ name: string;
39
+ render_key: string[];
40
+ search_key: string[];
41
+ value_key: string;
42
+ queryParams: string[];
43
+ primary_key: string;
44
+ type: string;
45
+ level_key: string;
46
+ link_key: string;
47
+ link_key_split: string;
48
+ show_key: string | string[];
49
+ conObj: AnyObject[];
50
+ conObjFirstLevel: AnyObject[];
51
+ setting: Partial<{
52
+ cascading: {
53
+ 'form.name': string;
54
+ value: string;
55
+ }[];
56
+ }>;
57
+ }>>;
58
+ };
28
59
  onChange: {};
29
60
  useLoading: {
30
61
  type: BooleanConstructor;
31
62
  default: boolean;
32
63
  };
64
+ lazyRequest: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ };
68
+ multiple: BooleanConstructor;
69
+ deletable: BooleanConstructor;
33
70
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:value"[], "update:value", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
34
71
  value: {
35
- type: PropType<String | null>;
72
+ type: PropType<string | null>;
36
73
  };
37
74
  requestCache: {
38
75
  type: BooleanConstructor;
@@ -51,21 +88,61 @@ export declare const REMOTE_SEARCH: import("vue").DefineComponent<{
51
88
  type: StringConstructor;
52
89
  default: string;
53
90
  };
91
+ showField: {
92
+ type: StringConstructor;
93
+ };
54
94
  urlConfig: {
55
95
  type: PropType<UrlConfig>;
56
96
  };
97
+ autograph: {
98
+ type: StringConstructor;
99
+ };
100
+ wordbook: {
101
+ type: PropType<Partial<{
102
+ level_num: number;
103
+ id: string;
104
+ name: string;
105
+ render_key: string[];
106
+ search_key: string[];
107
+ value_key: string;
108
+ queryParams: string[];
109
+ primary_key: string;
110
+ type: string;
111
+ level_key: string;
112
+ link_key: string;
113
+ link_key_split: string;
114
+ show_key: string | string[];
115
+ conObj: AnyObject[];
116
+ conObjFirstLevel: AnyObject[];
117
+ setting: Partial<{
118
+ cascading: {
119
+ 'form.name': string;
120
+ value: string;
121
+ }[];
122
+ }>;
123
+ }>>;
124
+ };
57
125
  onChange: {};
58
126
  useLoading: {
59
127
  type: BooleanConstructor;
60
128
  default: boolean;
61
129
  };
130
+ lazyRequest: {
131
+ type: BooleanConstructor;
132
+ default: boolean;
133
+ };
134
+ multiple: BooleanConstructor;
135
+ deletable: BooleanConstructor;
62
136
  }>> & {
63
137
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
64
138
  }, {
65
139
  options: AnyObject[];
140
+ multiple: boolean;
66
141
  labelField: string;
67
142
  valueField: string;
143
+ lazyRequest: boolean;
68
144
  requestCache: boolean;
145
+ deletable: boolean;
69
146
  allowCreate: boolean;
70
147
  useLoading: boolean;
71
148
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,computed as a,inject as u,watch as n,createVNode as o}from"vue";import{connect as t,mapProps as r}from"@formily/vue";import{HelpCircleSharp as i}from"@vicons/ionicons5";import{useVModel as s,useDebounceFn as v}from"@vueuse/core";import{isString as p,isArray as d,cloneDeep as m,isEqual as c}from"lodash-es";import{NSelect as f,NSpin as y,NEmpty as g,NTooltip as C,NIcon as h}from"naive-ui";import"../../../index.js";import{InjectionAsyncQueue as j,InjectionChangeContextCollector as F,InjectionFormItemDepsCollector as x}from"../../constants/index.js";import{createUrlConfigParams as b,formRenderLog as w}from"../../utils/index.js";import{useCommonInjection as K,useSelectOptionProps as S}from"../../hooks/useCommonInjection.js";import{assignUpdateValue as k,assignClearBindVisited as B,createVisitedSetter as L}from"../../utils/schema.js";import{useFormField as V}from"../../hooks/useFormField.js";const q=t(e({name:"FormRemoteSearch",props:{value:{type:String},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},allowCreate:Boolean,labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},urlConfig:{type:Object},onChange:{},useLoading:{type:Boolean,default:!0}},emits:["update:value"],setup(e,{slots:t,emit:r}){const k=s(e,"value",r),{field:B,fieldKey:q}=V(),A=l(null),I=a((()=>{var l,a,u;return null!=(u=null!=(a=null==(l=e.urlConfig)?void 0:l.nameKey)?a:e.labelField)?u:"text"})),O=a((()=>{var l,a,u;return null!=(u=null!=(a=null==(l=e.urlConfig)?void 0:l.valueKey)?a:e.valueField)?u:"value"})),P=u(j),U=l(""),D=l(!1),R=v((async(l="",a="label")=>{if(U.value=l,!e.urlConfig)return A.value=null;try{D.value=!0,A.value=[],A.value=await P.addAsync(await b({config:{...e.urlConfig,params:{...e.urlConfig.params,["value"===a?O.value:"keyword"]:l}},cache:e.requestCache,field:B.value}))}catch(e){p(e)&&w(e)}finally{D.value=!1}})),z=a((()=>d(A.value)?A.value:d(e.options)?e.options:[])),{injectValueValidate:E,injectValueBindKey:G}=K();E(k);const H=G(k);n(k,(e=>{if(e&&!z.value.find((l=>l[O.value]===e)))return R(e,"value")}));u(F).setContext(q.value,(e=>{return{currentOption:m((l=e,z.value.find((e=>e[O.value]===l))))};var l}));const J=u(x);n((()=>e.urlConfig),((e,l)=>{c(e,l)||(A.value=null,e&&(J.setDeps(q.value,e.dependKey||[],(async()=>{A.value=null,k.value=null})),k.value&&R(k.value,"value")))}),{immediate:!0});const{menuProps:M,nodeProps:N}=S(),Q=a((()=>z.value.length||!e.allowCreate?z.value:U.value?[{[I.value]:U.value,[O.value]:U.value},...z.value]:z.value));async function T(e){D.value=e,e&&R()}function W(e){const l=e.alias||e[I.value];if(!l||!p(l))return"";const a=l;return e.desc?o("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[a,e.desc?o(C,null,{trigger:()=>o(h,{component:i},null),default:()=>e.desc}):null]):a}return()=>o(f,{remote:!0,filterable:!0,key:H.value,value:k.value,"onUpdate:value":e=>k.value=e,labelField:I.value,valueField:O.value,"menu-props":M,"node-props":N,onSearch:R,"onUpdate:show":T,options:Q.value,onFocus:L(B),renderLabel:W},{empty:()=>e.useLoading&&D.value?o(y,null,null):o(g,{description:"无数据"},null),...t})}}),r(k,B));export{q as REMOTE_SEARCH};
1
+ import{defineComponent as e,watch as l,inject as o,computed as a,createVNode as t}from"vue";import{connect as n,mapProps as u}from"@formily/vue";import{HelpCircleSharp as r}from"@vicons/ionicons5";import{useVModel as i,useDebounceFn as s}from"@vueuse/core";import{cloneDeep as p,isString as v}from"lodash-es";import{NSelect as d,NSpin as m,NEmpty as f,NTooltip as c,NIcon as y,NTag as g}from"naive-ui";import"../../../index.js";import{InjectionChangeContextCollector as h}from"../../constants/index.js";import{useCommonInjection as C,useSelectOptionProps as b}from"../../hooks/useCommonInjection.js";import{assignUpdateValue as j,assignClearBindVisited as F,createVisitedSetter as w}from"../../utils/schema.js";import{useFormField as x}from"../../hooks/useFormField.js";import{useUrlConfigOptions as B,useAutographOptions as K}from"../../hooks/useFormRenderOptions.js";const S=n(e({name:"FormRemoteSearch",props:{value:{type:String},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},allowCreate:Boolean,labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},showField:{type:String},urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},onChange:{},useLoading:{type:Boolean,default:!0},lazyRequest:{type:Boolean,default:!0},multiple:Boolean,deletable:Boolean},emits:["update:value"],setup(e,{slots:n,emit:u}){const j=i(e,"value",u),{field:F,fieldKey:S}=x(),{injectValueValidate:k,injectValueBindKey:O}=C();k(j);const D=O(j),R={onRequestConfigChange:({fetchData:e,valueKey:l})=>e(j.value,{[l]:j.value}),onDepsChange:({fetchData:e,valueKey:l})=>e(j.value,{[l]:j.value})},{labelKey:q,valueKey:L,showKey:P,fetchData:V,searchContent:I,fullOptions:U,loading:z}=e.urlConfig?B(e,j,R):K(e,j,R),A=s(((e="",l="label")=>V(e,{["value"===l?L.value:"keyword"]:e})),300);l(j,(e=>{if(e&&!U.value.find((l=>l[L.value]===e)))return A(e,"value")}));o(h).setContext(S.value,(e=>{return{currentOption:p((l=e,U.value.find((e=>e[L.value]===l))))};var l}));const{menuProps:T,nodeProps:$}=b(),E=a((()=>U.value.length||!e.allowCreate?U.value:I.value?[{[q.value]:I.value,[L.value]:I.value},...U.value]:U.value));async function G(e){z.value=e,e&&A()}function H(e){const l=e.alias||e[q.value];if(!l||!v(l))return"";const o=l;return e.desc?t("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[o,e.desc?t(c,null,{trigger:()=>t(y,{component:r},null),default:()=>e.desc}):null]):o}function J({option:l,handleClose:o}){var a;const n=null!=(a=P.value&&l[P.value])?a:l[q.value];if(!e.multiple)return n;return e.deletable?t(g,{closable:!0,onClose:function(e){e.stopPropagation(),o()}},{default:()=>n}):`${n};`}return()=>t(d,{remote:!0,filterable:!0,key:D.value,value:j.value,"onUpdate:value":e=>j.value=e,labelField:q.value,valueField:L.value,"menu-props":T,"node-props":$,onSearch:A,"onUpdate:show":G,options:E.value,onFocus:w(F),renderLabel:H,renderTag:J},{empty:()=>e.useLoading&&z.value?t(m,null,null):t(f,{description:"无数据"},null),...n})}}),u(j,F));export{S as REMOTE_SEARCH};
@@ -102,6 +102,10 @@ export declare const SELECT: import("vue").DefineComponent<{
102
102
  multiple: {
103
103
  type: BooleanConstructor;
104
104
  };
105
+ deletable: {
106
+ type: BooleanConstructor;
107
+ default: boolean;
108
+ };
105
109
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "postRecommend")[], "update:value" | "postRecommend", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
106
110
  value: {
107
111
  type: PropType<ArrayAble<string | number> | null>;
@@ -201,6 +205,10 @@ export declare const SELECT: import("vue").DefineComponent<{
201
205
  multiple: {
202
206
  type: BooleanConstructor;
203
207
  };
208
+ deletable: {
209
+ type: BooleanConstructor;
210
+ default: boolean;
211
+ };
204
212
  }>> & {
205
213
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
206
214
  onPostRecommend?: ((...args: any[]) => any) | undefined;
@@ -212,13 +220,14 @@ export declare const SELECT: import("vue").DefineComponent<{
212
220
  allowModify: boolean;
213
221
  lazyRequest: boolean;
214
222
  requestCache: boolean;
223
+ deletable: boolean;
224
+ shouldSave: boolean;
215
225
  recommend: boolean;
216
226
  recommendCache: boolean;
217
227
  commonNum: number;
218
228
  recentNum: number;
219
229
  allowCreate: boolean;
220
230
  useLoading: boolean;
221
- shouldSave: boolean;
222
231
  showCustomValue: boolean;
223
232
  cursorPlacement: "end" | "start";
224
233
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as l,inject as t,useAttrs as o,ref as a,createVNode as u,mergeProps as n,toRaw as r,nextTick as s}from"vue";import{arrayed as i}from"../../../../../shared/utils/index.js";import{HelpCircleSharp as p}from"@vicons/ionicons5";import{promiseTimeout as m}from"@vueuse/shared";import{cloneDeep as c,isArray as d,isString as v,isObject as f,omit as y}from"lodash-es";import{useCommonInjection as h,useSelectOptionProps as g}from"../../hooks/useCommonInjection.js";import{useComplexOptions as S,useComplexOptionsSpan as j}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as b,InjectionFormUUID as C}from"../../constants/index.js";import"../../../index.js";import"@formily/core";import"@formily/path";import"@vue/shared";import"@vueuse/core";import{NSelect as w,NTooltip as k,NIcon as F,NTag as B}from"naive-ui";import"date-fns";import{assignUpdateValue as x,assignClearBindVisited as O,createVisitedSetter as A}from"../../utils/schema.js";import{useFormField as H}from"../../hooks/useFormField.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import{connect as P,mapProps as R}from"@formily/vue";import"./index.js";import{useUrlConfigOptions as V,useAutographOptions as K,useRecommendOptions as L,searchContentMatcher as E}from"../../hooks/useFormRenderOptions.js";const _=P(e({name:"FormSelect",props:{value:{type:[String,Array,Number]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},showField:{type:String},allowCreate:Boolean,shouldSave:Boolean,allowModify:Boolean,showCustomValue:Boolean,cursorPlacement:{type:String,default:"end"},urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},commonNum:{type:Number,default:10},recentNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1},useLoading:{type:Boolean,default:!0},multiple:{type:Boolean}},emits:["update:value","postRecommend"],setup(e,{slots:x,emit:O}){const P=l({get:()=>e.value,async set(e){O("update:value",e),Q(e)}}),R=l((()=>(e.multiple&&e.allowModify&&console.warn("多选模式下不支持allowModify"),!e.multiple&&e.allowModify))),{labelKey:_,valueKey:I,showKey:N,fetchData:M,searchContent:W,fullOptions:q,filterOptions:U,remoteOptions:z,loading:D}=e.urlConfig?V(e,P):K(e,P),{renderComplexOption:T,hasComplexOption:G}=S(e,P),{getRecommend:J,postRecommend:Q,sortedOptions:X}=L(e,U,O,_,I),{field:Y,fieldKey:Z}=H();t(b).setContext(Z.value,(e=>({currentOption:c(function(e){const l=re(q.value);return d(e)?function(e){const t=l.reduce(((e,l)=>(e[l[I.value]]=l,e)),{});return e.map((e=>t[e]))}(e):(t=e,l.find((e=>e[I.value]===t)));var t}(e))})));const $=async(e="")=>(W.value=e,Promise.allSettled([M(e),J(e)])),{injectValueValidate:ee,injectValueWatchFromEmpty:le,injectValueBindKey:te}=h();le(P,$),ee(P);const oe=te(P),{menuProps:ae,nodeProps:ue}=g();function ne(e){const l=e[_.value];if(!l||!v(l))return"";const t=W.value?E(W.value,l):null,o=t?u("section",null,[t.map(((e,l)=>0!==l&&e?u("span",{style:{color:l%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):l;return e.desc?u("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[o,e.desc?u(k,null,{trigger:()=>u(F,{component:p},null),default:()=>e.desc}):null]):o}function re(l){return e.allowCreate&&W.value&&!l.some((e=>e[_.value]===W.value))?[...l,{[_.value]:W.value,[I.value]:W.value,created:!0,shouldSave:e.shouldSave}]:l}const se=l((()=>re(R.value?q.value:X.value))),ie=o(),pe=l((()=>{if(e.allowCreate||e.showCustomValue)return P.value;const l=e.multiple&&d(P.value);return q.value.find((e=>l?P.value.includes(e[I.value]):e[I.value]===P.value))?P.value:null})),me=a(!1);async function ce(e){e&&await $(),me.value=e}let de=null;async function ve(l,t){P.value=l,de&&f(t)&&R.value&&(de.focus(),await s(),de.value=t[_.value]||"",de.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&de.setSelectionRange(0,0)),z.value&&t&&i(t).forEach((e=>{if(!f(e))return;const l=e;l.created&&l.shouldSave&&z.value.push(y(r(l),["created","shouldSave"]))}))}const fe=t(C),{getSpan:ye}=j(),he=A(Y,(async l=>{var t,o,a;R.value&&(de=l.target,de&&P.value&&(await s(),de.value=null!=(a=null!=(o=null==(t=q.value.find((e=>e[I.value]===P.value)))?void 0:t[_.value])?o:P.value)?a:"",de.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&(await m(0),de.setSelectionRange(0,0))))}));function ge(e){if(!R.value)return;if(de=e.target,!de)return;if(!de.value)return P.value=null;const l=q.value.find((e=>e[_.value]===de.value));l?P.value=l[I.value]:(W.value=de.value,P.value=de.value)}function Se({option:l,handleClose:t}){var o;const a=null!=(o=N.value&&l[N.value])?o:l[_.value];return e.multiple?u(B,{closable:!0,onClose:e=>{e.stopPropagation(),t()}},{default:()=>a}):a}function je(l){return u(w,n({key:oe.value,multiple:e.multiple,remote:!0,filterable:!0,loading:D.value,value:pe.value,onUpdateValue:ve,"menu-props":ae,"node-props":ue,labelField:_.value,valueField:I.value,options:se.value,onSearch:$,show:me.value,"onUpdate:show":ce,onFocus:he,onBlur:ge,renderLabel:ne,renderTag:Se},l,ie),x)}return()=>{var e,l;if(!G.value)return je();const t=null!=(l=null==(e=Y.value.decoratorProps)?void 0:e.span)?l:6,o=ye(fe,Y.value.address);return u("section",{class:"form-render__selectChildField",style:{"--column":o+t}},[je({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),q.value.map((e=>T({option:e,value:P.value,valueKey:I.value,labelKey:_.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":o}}})))])}}}),R({dataSource:"options"},x,O));export{_ as SELECT};
1
+ import{defineComponent as e,computed as l,inject as t,useAttrs as o,ref as a,createVNode as u,mergeProps as n,toRaw as r,nextTick as s}from"vue";import{arrayed as i}from"../../../../../shared/utils/index.js";import{HelpCircleSharp as p}from"@vicons/ionicons5";import{promiseTimeout as m}from"@vueuse/shared";import{cloneDeep as c,isArray as d,isString as v,isObject as f,omit as y}from"lodash-es";import{useCommonInjection as h,useSelectOptionProps as g}from"../../hooks/useCommonInjection.js";import{useComplexOptions as S,useComplexOptionsSpan as b}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as j,InjectionFormUUID as C}from"../../constants/index.js";import"../../../index.js";import"@formily/core";import"@formily/path";import"@vue/shared";import"@vueuse/core";import{NSelect as w,NTooltip as k,NIcon as F,NTag as B}from"naive-ui";import"date-fns";import{assignUpdateValue as x,assignClearBindVisited as O,createVisitedSetter as A}from"../../utils/schema.js";import{useFormField as H}from"../../hooks/useFormField.js";import"../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../shared/utils/tapable/SyncBailHook.js";import"../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import"../../hooks/useFormValidator.js";import{connect as P,mapProps as R}from"@formily/vue";import"./index.js";import{useUrlConfigOptions as V,useAutographOptions as K,useRecommendOptions as L,searchContentMatcher as E}from"../../hooks/useFormRenderOptions.js";const _=P(e({name:"FormSelect",props:{value:{type:[String,Array,Number]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},showField:{type:String},allowCreate:Boolean,shouldSave:Boolean,allowModify:Boolean,showCustomValue:Boolean,cursorPlacement:{type:String,default:"end"},urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},commonNum:{type:Number,default:10},recentNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1},useLoading:{type:Boolean,default:!0},multiple:{type:Boolean},deletable:{type:Boolean,default:!0}},emits:["update:value","postRecommend"],setup(e,{slots:x,emit:O}){const P=l({get:()=>e.value,async set(e){O("update:value",e),J(e)}}),R=l((()=>(e.multiple&&e.allowModify&&console.warn("多选模式下不支持allowModify"),!e.multiple&&e.allowModify))),{labelKey:_,valueKey:I,showKey:N,fetchData:M,searchContent:W,fullOptions:q,filterOptions:U,remoteOptions:z,loading:D}=e.urlConfig?V(e,P):K(e,P),{renderComplexOption:T,hasComplexOption:$}=S(e,P),{getRecommend:G,postRecommend:J,sortedOptions:Q}=L(e,U,O,_,I),{field:X,fieldKey:Y}=H();t(j).setContext(Y.value,(e=>({currentOption:c(function(e){const l=re(q.value);return d(e)?function(e){const t=l.reduce(((e,l)=>(e[l[I.value]]=l,e)),{});return e.map((e=>t[e]))}(e):(t=e,l.find((e=>e[I.value]===t)));var t}(e))})));const Z=async(e="")=>(W.value=e,Promise.allSettled([M(e),G(e)])),{injectValueValidate:ee,injectValueWatchFromEmpty:le,injectValueBindKey:te}=h();le(P,Z),ee(P);const oe=te(P),{menuProps:ae,nodeProps:ue}=g();function ne(e){const l=e[_.value];if(!l||!v(l))return"";const t=W.value?E(W.value,l):null,o=t?u("section",null,[t.map(((e,l)=>0!==l&&e?u("span",{style:{color:l%2==0?"var(--n-option-text-color-active)":""}},[e]):null))]):l;return e.desc?u("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[o,e.desc?u(k,null,{trigger:()=>u(F,{component:p},null),default:()=>e.desc}):null]):o}function re(l){return e.allowCreate&&W.value&&!l.some((e=>e[_.value]===W.value))?[...l,{[_.value]:W.value,[I.value]:W.value,created:!0,shouldSave:e.shouldSave}]:l}const se=l((()=>re(R.value?q.value:Q.value))),ie=o(),pe=l((()=>{if(e.allowCreate||e.showCustomValue)return P.value;const l=e.multiple&&d(P.value);return q.value.find((e=>l?P.value.includes(e[I.value]):e[I.value]===P.value))?P.value:null})),me=a(!1);async function ce(e){e&&await Z(),me.value=e}let de=null;async function ve(l,t){P.value=l,de&&f(t)&&R.value&&(de.focus(),await s(),de.value=t[_.value]||"",de.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&de.setSelectionRange(0,0)),z.value&&t&&i(t).forEach((e=>{if(!f(e))return;const l=e;l.created&&l.shouldSave&&z.value.push(y(r(l),["created","shouldSave"]))}))}const fe=t(C),{getSpan:ye}=b(),he=A(X,(async l=>{var t,o,a;R.value&&(de=l.target,de&&P.value&&(await s(),de.value=null!=(a=null!=(o=null==(t=q.value.find((e=>e[I.value]===P.value)))?void 0:t[_.value])?o:P.value)?a:"",de.dispatchEvent(new CustomEvent("input")),"start"===e.cursorPlacement&&(await m(0),de.setSelectionRange(0,0))))}));function ge(e){if(!R.value)return;if(de=e.target,!de)return;if(!de.value)return P.value=null;const l=q.value.find((e=>e[_.value]===de.value));l?P.value=l[I.value]:(W.value=de.value,P.value=de.value)}function Se({option:l,handleClose:t}){var o;const a=null!=(o=N.value&&l[N.value])?o:l[_.value];return e.multiple?e.deletable?u(B,{closable:!0,onClose:e=>{e.stopPropagation(),t()}},{default:()=>a}):`${a} ;`:a}function be(l){return u(w,n({key:oe.value,multiple:e.multiple,remote:!0,filterable:!0,loading:D.value,value:pe.value,onUpdateValue:ve,"menu-props":ae,"node-props":ue,labelField:_.value,valueField:I.value,options:se.value,onSearch:Z,show:me.value,"onUpdate:show":ce,onFocus:he,onBlur:ge,renderLabel:ne,renderTag:Se},l,ie),x)}return()=>{var e,l;if(!$.value)return be();const t=null!=(l=null==(e=X.value.decoratorProps)?void 0:e.span)?l:6,o=ye(fe,X.value.address);return u("section",{class:"form-render__selectChildField",style:{"--column":o+t}},[be({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),q.value.map((e=>T({option:e,value:P.value,valueKey:I.value,labelKey:_.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":o}}})))])}}}),R({dataSource:"options"},x,O));export{_ as SELECT};
@@ -1 +1 @@
1
- import{arrayed as e,deepOmit as o}from"../../../../shared/utils/index.js";import{cloneDeep as t,pick as i}from"lodash-es";import"../../index.js";import{parseNumberFromMaybeString as n,formRenderLog as r}from"../utils/index.js";import{useFieldNormalize as s}from"./useFieldNormalize.js";import{fieldKeyEscape as a,createLinebarId as p}from"../utils/schema.js";import{useFormValidator as l}from"./useFormValidator.js";import{transformDateFormat as c}from"../utils/business.js";function m(e,o){Object.assign(e["x-component-props"],{...i(o,["wordbook","autograph"])})}function d(e,o){Object.assign(e["x-component-props"],{...i(o,["urlConfig","wordbook"])})}function u(u){const{createValidatorSchema:f}=l(),_=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 i=f(e);return i&&(t["x-validator"]=i),"0"===e.is_null&&(t.required=!0),t},x=e=>{var o;const t=_(e);e.urlConfig?d(t,e):e.autograph&&m(t,e);const r=!!e.__multiple;return Object.assign(t["x-component-props"],{multiple:r,options:e.option||(null==(o=e.componentProps)?void 0:o.options),allowModify:"1"===e.allowModify,allowCreate:"1"===e.free_entry||!!t["x-component-props"].allowCreate||"1"===e.allowModify,shouldSave:"1"===e.save_free_entry,showField:e.show_key,maxTagCount:n(e.multi_select_value),...i(e,["lazyRequest","requestCache"])}),r&&(t.type="array"),t},h=e=>{const o=_(e);return Object.assign(o["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,vertical:e.__vertical}),e.urlConfig?d(o,e):e.autograph&&m(o,e),o},g=e=>{const t=_(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},y=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{disabled:"1"===e.is_not_fold,id:p(e.val_key),show:"0"!==e.is_show,remark:e.remark}}),b=new Map([["LINEBAR",y],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=_(e);return Object.assign(o["x-component-props"],{...i(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:i,allowSlash:n}=e;return!0!==n&&"1"!==n||(o["x-component"]="INPUT_NUMBER_SLASH",o.type="string"),Object.assign(o["x-component-props"],{precision:null!=t?t:null==i?void 0:i.decimal_length,whiteList:e.whiteList,prefix:e.prefix,suffix:e.suffix}),o}],["SELECT",x],["REMOTE_SEARCH",x],["DATE",e=>{const o=_(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:c(e.date_format),validate:e.validate}),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=_(e);return Object.assign(o["x-component-props"],{...i(e,["wordbook","lazyRequest","autograph"])}),"1"===e.is_allow_check_mid&&e.allow_check_mid_level&&(o["x-component-props"].checkAbleLevel=+e.allow_check_mid_level),o}],["SEARCH_CASCADER",e=>{var o;const t=_(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",h],["CHECKBOX",h],["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:n(e.step_length),max:n(e.max_length),min:n(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"],i(e,["wrapperStyle","display"])),o}]]),v=e=>{if(e.suffixConfig)return w(e);return(b.get(e.html_type)||g)(e)},w=o=>{if(!o.suffixConfig&&!o.prefixConfig)return v(o);const t=o.suffixConfig?e(o.suffixConfig):[],i=[...(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"})))],n=_(o),r=i.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(n,{type:"void",name:a(i),title:o.alias||o.name,"x-component":"INPUT_GROUP","x-component-props":{span:r},"x-decorator-props":{...n["x-decorator-props"],showFeedback:!1,suffixFields:i.map((e=>e.val_key))},properties:j(i)}),n},{FieldNormalizeWaterfallHook:C,FieldListNormalizeWaterfallHook:O}=s();function j(o,i={column:9999}){let n=null;return O.call(t(o),i).reduce(((e,o,a)=>{var p;const l=null==(p=(o=C.call(o,i)).validate)?void 0:p.obj_type;return l&&u&&u.collect(l,t(o)),"LINEBAR"===o.html_type?(e[s(o)]=r(y(o),a),n=e[s(o)].properties={}):n?n[s(o)]=r(v(o),a):(n=null,e[s(o)]=r(v(o),a)),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{u 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{useFieldNormalize as s}from"./useFieldNormalize.js";import{fieldKeyEscape as p,createLinebarId as a}from"../utils/schema.js";import{useFormValidator as l}from"./useFormValidator.js";import{transformDateFormat as c}from"../utils/business.js";function m(e,o){Object.assign(e["x-component-props"],{...n(o,["wordbook","autograph"])})}function d(e,o){Object.assign(e["x-component-props"],{...n(o,["urlConfig","wordbook"])})}function u(u){const{createValidatorSchema:f}=l(),x=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=f(e);return n&&(t["x-validator"]=n),"0"===e.is_null&&(t.required=!0),t},_=e=>{var o,t,r,s,p;const a=x(e);e.urlConfig?d(a,e):e.autograph&&m(a,e);const l=!!e.__multiple,c="1"===e.allowModify;return Object.assign(a["x-component-props"],{multiple:l,options:e.option||(null==(o=e.componentProps)?void 0:o.options),allowModify:c,allowCreate:"1"===e.free_entry||!!a["x-component-props"].allowCreate||c,shouldSave:"1"===e.save_free_entry,showField:null!=(r=e.show_key)?r:null==(t=e.componentProps)?void 0:t.showField,maxTagCount:null!=(p=i(e.multi_select_value))?p:null==(s=a["x-component-props"])?void 0:s.maxTagCount,...n(e,["lazyRequest","requestCache"])}),l&&(a.type="array"),a},h=e=>{const o=x(e);return Object.assign(o["x-component-props"],{options:e.option,childFieldStrategy:e.childFieldStrategy,vertical:e.__vertical}),e.urlConfig?d(o,e):e.autograph&&m(o,e),o},g=e=>{const t=x(e);return Object.assign(t["x-component-props"],{fieldItem:o(e,["reactions"])}),t},y=e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINEBAR","x-display":"visible","x-component-props":{disabled:"1"===e.is_not_fold,id:a(e.val_key),show:"0"!==e.is_show,remark:e.remark}}),b=new Map([["LINEBAR",y],["LINE_BREAKS",e=>({name:e.val_key,type:"void",title:e.alias||e.name,"x-component":"LINE_BREAKS","x-component-props":{border:e.lineBreaksBorder},"x-display":"0"===e.is_show?"hidden":"visible"})],["INPUT",e=>{const o=x(e);return Object.assign(o["x-component-props"],{...n(e,["prefix","suffix"])}),o}],["TEXTAREA",e=>{const o=x(e);return Object.assign(o["x-component-props"],{rows:e.initialize_high||3}),o}],["INPUT_NUMBER",e=>{const o=x(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",_],["REMOTE_SEARCH",_],["DATE",e=>{const o=x(e);return Object.assign(o["x-component-props"],{valueFormat:e.date_format,type:c(e.date_format),validate:e.validate}),o}],["LEVEL_SEARCH_CASCADER",e=>{const o=x(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=x(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=x(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",h],["CHECKBOX",h],["SWITCH",e=>{const o=x(e);return Object.assign(o["x-component-props"],{openDescription:e.open,closeDescription:e.close}),o}],["SLIDER",e=>{const o=x(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=x(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}]]),v=e=>{if(e.suffixConfig)return w(e);return(b.get(e.html_type)||g)(e)},w=o=>{if(!o.suffixConfig&&!o.prefixConfig)return v(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=x(o),r=n.reduce(((e,o)=>e+2*(o.elem_width||3)),0);return Object.assign(i,{type:"void",name:p(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:C,FieldListNormalizeWaterfallHook:O}=s();function j(o,n={column:9999}){let i=null;return O.call(t(o),n).reduce(((e,o,p)=>{var a;const l=null==(a=(o=C.call(o,n)).validate)?void 0:a.obj_type;return l&&u&&u.collect(l,t(o)),"LINEBAR"===o.html_type?(e[s(o)]=r(y(o),p),i=e[s(o)].properties={}):i?i[s(o)]=r(v(o),p):(i=null,e[s(o)]=r(v(o),p)),e}),{});function r(e,o){return e["x-index"]=o,e}function s(o){return o.suffixConfig?p([o,...e(o.suffixConfig)]):o.val_key}}return{schemaAdaptor:j}}export{u as useFieldListAdaptor};
@@ -2,6 +2,11 @@ import { AnyObject, Func } from '../../../../../es/shared/types';
2
2
  import { Ref } from 'vue';
3
3
  import { FormWordbook, RecommendIds, UrlConfig } from '../../../../../es/components/form-render';
4
4
  import { RecommendItem } from '../../../../../es/components/recommend-search/src/types';
5
+ declare type UseOptionHooks = Partial<Record<'onRequestConfigChange' | 'onDepsChange', (payload: {
6
+ fetchData: (content?: string | null, otherParams?: AnyObject) => any;
7
+ labelKey: string;
8
+ valueKey: string;
9
+ }) => any>>;
5
10
  export declare const searchContentMatcher: (searchContent: string, label: string) => RegExpMatchArray | null;
6
11
  export declare function useRecommendOptions(props: {
7
12
  recommend: boolean;
@@ -16,15 +21,15 @@ export declare function useRecommendOptions(props: {
16
21
  getRecommend: (content?: string) => Promise<void>;
17
22
  sortedOptions: import("vue").ComputedRef<AnyObject[]>;
18
23
  };
19
- export declare function useUrlConfigOptions(props: {
20
- labelField?: string;
21
- valueField?: string;
22
- showField?: string;
23
- urlConfig?: UrlConfig;
24
- options?: AnyObject[];
24
+ export declare function useUrlConfigOptions(props: Partial<{
25
+ labelField: string;
26
+ valueField: string;
27
+ showField: string;
28
+ urlConfig: UrlConfig;
29
+ options: AnyObject[];
25
30
  requestCache: boolean;
26
31
  lazyRequest: boolean;
27
- }, valueRef: Ref): {
32
+ }>, valueRef: Ref, hooks?: UseOptionHooks): {
28
33
  labelKey: import("vue").ComputedRef<string>;
29
34
  loading: Ref<boolean>;
30
35
  showKey: import("vue").ComputedRef<string | undefined>;
@@ -32,7 +37,7 @@ export declare function useUrlConfigOptions(props: {
32
37
  remoteOptions: Ref<AnyObject[] | null>;
33
38
  filterOptions: import("vue").ComputedRef<AnyObject[]>;
34
39
  fullOptions: import("vue").ComputedRef<AnyObject[]>;
35
- fetchData: (content?: string) => Promise<null | undefined>;
40
+ fetchData: (content?: string | null, otherParams?: AnyObject) => Promise<null | undefined>;
36
41
  searchContent: Ref<string | undefined>;
37
42
  };
38
43
  export declare function useAutographOptions(props: Partial<{
@@ -44,7 +49,7 @@ export declare function useAutographOptions(props: Partial<{
44
49
  autograph: string;
45
50
  lazyRequest: boolean;
46
51
  options: AnyObject[];
47
- }>, valueRef: Ref): {
52
+ }>, valueRef: Ref, hooks?: UseOptionHooks): {
48
53
  labelKey: import("vue").ComputedRef<string>;
49
54
  showKey: import("vue").ComputedRef<string | undefined>;
50
55
  loading: Ref<boolean>;
@@ -52,6 +57,7 @@ export declare function useAutographOptions(props: Partial<{
52
57
  valueKey: import("vue").ComputedRef<string>;
53
58
  filterOptions: import("vue").ComputedRef<AnyObject[]>;
54
59
  fullOptions: import("vue").ComputedRef<AnyObject[]>;
55
- fetchData: (content?: string) => Promise<null | undefined>;
60
+ fetchData: (content?: string | null, otherParams?: AnyObject) => Promise<null | undefined>;
56
61
  searchContent: Ref<string | undefined>;
57
62
  };
63
+ export {};
@@ -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 c,isArray as s,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 k}from"./useFormField.js";import{createUrlConfigParams as b,formRenderLog as C}from"../utils/index.js";import{useFormRequest as F}from"./useFormRequest.js";function R(e,l){const n=y();return d({get:()=>n.value?n.value:e[l],set(e){n.value=e}})}const O=(()=>{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 q(){const e=y();return{searchContent:e,optionSearchFilter:function(l,n,t){if(!e.value)return l;const a=s(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)&&(!!O(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=R(e,"commonList"),i=R(e,"recentList"),{searchContent:v,optionSearchFilter:s}=q();function y(e){return n(e.itemObj)}const p=d((()=>{var e,l;return null!=(l=null==(e=o.value)?void 0:e.map(y))?l:[]})),h=d((()=>{var e,l;return null!=(l=null==(e=i.value)?void 0:e.map(y))?l:[]})),w=d((()=>{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[...s(n,t.value),...u]})),{getRecommendRequestInfo:K,getHttpInstance:b}=F();function C(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:O,field:j}=k(),I=f(g);return{postRecommend:async function(l){if(!e.recommend)return;const n=b();if(!n)return;const{url:t,info:o}=C("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}=C("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}}}(O.value,e.recommendCache)),{commonly:u,recently:r}=n.reduce(((e,l)=>("commonly"===l.type?e.commonly.push(c(l,["type"])):"recently"===l.type&&e.recently.push(c(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){e();const u=f(g),t=f(w),a=d((()=>{var e,n,u;return null!=(u=null!=(n=null==(e=l.urlConfig)?void 0:e.nameKey)?n:l.labelField)?u:"text"})),o=d((()=>{var e,n,u;return null!=(u=null!=(n=null==(e=l.urlConfig)?void 0:e.valueKey)?n:l.valueField)?u:"value"})),r=d((()=>{var e,n;return null!=(n=null==(e=l.urlConfig)?void 0:e.showKey)?n:l.showField})),{searchContent:c,optionSearchFilter:s}=q(),m=y(null),{field:F,fieldKey:R}=k(),O=y(!1),j=async function(e){if(c.value=e||"",!l.urlConfig)return m.value=null;try{O.value=!0;const e={field:F.value,labelKey:a.value,valueKey:o.value},n=await u.addAsync(await b({config:{...l.urlConfig,payload:e},cache:l.requestCache,field:F.value}));h(m.value)!==n&&(m.value=n,t("afterOptionInit",[R.value,m.value,e]))}catch(e){v(e)&&C(e)}finally{O.value=!1}},I=d((()=>m.value?s(m.value,a.value):Array.isArray(l.options)?s(l.options,a.value):[])),x=d((()=>m.value||l.options||[])),A=f(K);return p((()=>l.urlConfig),((e,u)=>{if(!i(e,u)){if(m.value=null,!e)return m.value=null;A.setDeps(R.value,e.dependKey||[],(async()=>{m.value=null,n.value=null,!l.lazyRequest&&await j()})),(n.value||!l.lazyRequest)&&j()}}),{immediate:!0}),{labelKey:a,loading:O,showKey:r,valueKey:o,remoteOptions:m,filterOptions:I,fullOptions:x,fetchData:j,searchContent:c}}function x(n,u){e();const a=f(g),o=f(w),r=t(),c=d((()=>{var e;const u=l(null==(e=n.wordbook)?void 0:e.show_key)[0];return v(u)?u:null})),s=d((()=>{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"})),m=d((()=>{var e,l,u;return null!=(u=null!=(l=null==(e=n.wordbook)?void 0:e.value_key)?l:n.valueField)?u:"value"})),b=d((()=>{var e;return(null==(e=n.wordbook)?void 0:e.search_key)||[]})),R=d((()=>{var e;return null!=(e=c.value)?e:n.showField})),{searchContent:O,optionSearchFilter:j}=q(),I=y(null),{fieldKey:x,field:A}=k(),{getSearchRequestInfo:S}=F(),N=y(!1),_=async function(e){if(O.value=e||"",!n.autograph||!n.wordbook)return I.value=null;try{N.value=!0;const e={field:A.value,labelKey:s.value,valueKey:m.value},l=await a.addAsync(function(e,l,u,t){var a,o,i;const v={autograph:l,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1};if(null==(a=e.queryParams)?void 0:a.length){const l=null!=(i=null==(o=r.value)?void 0:o.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,x.value,e));h(I.value)!==l&&(I.value=l,o("afterOptionInit",[x.value,I.value,e]))}catch(e){v(e)&&C(e)}finally{N.value=!1}},D=d((()=>I.value?j(I.value,s.value,b.value):Array.isArray(n.options)?j(n.options,s.value):[])),z=d((()=>I.value||n.options||[])),P=f(K);return p((()=>n.wordbook),((e,l)=>{if(!i(e,l)){if(I.value=null,!e)return I.value=null;P.setDeps(x.value,e.queryParams||[],(async()=>{I.value=null,_()})),(u.value||!n.lazyRequest)&&_()}}),{immediate:!0}),{labelKey:s,showKey:R,loading:N,remoteOptions:I,valueKey:m,filterOptions:D,fullOptions:z,fetchData:_,searchContent:O}}export{O as searchContentMatcher,x as useAutographOptions,j as useRecommendOptions,I as useUrlConfigOptions};
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};
@@ -115,8 +115,8 @@ declare const _default: import("vue").DefineComponent<{
115
115
  labelField: string;
116
116
  valueField: string;
117
117
  placeholder: string;
118
+ shouldSave: boolean;
118
119
  consistentMenuWidth: boolean;
119
120
  allowCreate: boolean;
120
- shouldSave: boolean;
121
121
  }>;
122
122
  export default _default;
@@ -11,6 +11,9 @@ declare const _default: import("vue").DefineComponent<{
11
11
  type: StringConstructor;
12
12
  default: null;
13
13
  };
14
+ isAccurate: {
15
+ type: BooleanConstructor;
16
+ };
14
17
  }, {
15
18
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
16
19
  paramCfg: {
@@ -25,13 +28,18 @@ declare const _default: import("vue").DefineComponent<{
25
28
  type: StringConstructor;
26
29
  default: null;
27
30
  };
31
+ isAccurate: {
32
+ type: BooleanConstructor;
33
+ };
28
34
  }>> & {
29
35
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
36
+ "onUpdate:isAccurate"?: ((...args: any[]) => any) | undefined;
30
37
  "onUpdate:presetVal"?: ((...args: any[]) => any) | undefined;
31
38
  }>>;
32
- emit: (event: "update:modelValue" | "update:presetVal", ...args: any[]) => void;
39
+ emit: (event: "update:modelValue" | "update:isAccurate" | "update:presetVal", ...args: any[]) => void;
33
40
  valueCp: import("vue").WritableComputedRef<any>;
34
41
  presetValCp: import("vue").WritableComputedRef<string>;
42
+ isAccurateCp: import("vue").WritableComputedRef<boolean>;
35
43
  widgetType: import("vue").ComputedRef<any>;
36
44
  Date: import("vue").DefineComponent<{
37
45
  componentCfg: {
@@ -181,35 +189,67 @@ declare const _default: import("vue").DefineComponent<{
181
189
  "onUpdate:presetVal"?: ((...args: any[]) => any) | undefined;
182
190
  }, {
183
191
  modelValue: string | number | unknown[];
184
- presetVal: string;
185
192
  paramCfg: Record<string, any>;
193
+ presetVal: string;
186
194
  }>;
187
195
  InputFilter: import("vue").DefineComponent<{
196
+ paramCfg: {
197
+ type: ObjectConstructor;
198
+ default: null;
199
+ };
188
200
  modelValue: {
189
201
  type: (ArrayConstructor | NumberConstructor | StringConstructor)[];
190
202
  default: null;
191
203
  };
204
+ isAccurateFilter: {
205
+ type: BooleanConstructor;
206
+ };
192
207
  }, {
193
208
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
209
+ paramCfg: {
210
+ type: ObjectConstructor;
211
+ default: null;
212
+ };
194
213
  modelValue: {
195
214
  type: (ArrayConstructor | NumberConstructor | StringConstructor)[];
196
215
  default: null;
197
216
  };
217
+ isAccurateFilter: {
218
+ type: BooleanConstructor;
219
+ };
198
220
  }>> & {
199
221
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
222
+ "onUpdate:isAccurateFilter"?: ((...args: any[]) => any) | undefined;
200
223
  }>>;
201
- emit: (event: "update:modelValue", ...args: any[]) => void;
224
+ emit: (event: "update:modelValue" | "update:isAccurateFilter", ...args: any[]) => void;
225
+ optionList: import("vue").Ref<{
226
+ label: string;
227
+ value: number;
228
+ }[]>;
202
229
  valueCp: import("vue").WritableComputedRef<any>;
230
+ isAccurateFilterCp: import("vue").WritableComputedRef<number>;
231
+ isShowSearch: import("vue").ComputedRef<any>;
203
232
  NInput: any;
204
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
233
+ NSelect: any;
234
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:isAccurateFilter")[], "update:modelValue" | "update:isAccurateFilter", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
235
+ paramCfg: {
236
+ type: ObjectConstructor;
237
+ default: null;
238
+ };
205
239
  modelValue: {
206
240
  type: (ArrayConstructor | NumberConstructor | StringConstructor)[];
207
241
  default: null;
208
242
  };
243
+ isAccurateFilter: {
244
+ type: BooleanConstructor;
245
+ };
209
246
  }>> & {
210
247
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
248
+ "onUpdate:isAccurateFilter"?: ((...args: any[]) => any) | undefined;
211
249
  }, {
212
250
  modelValue: string | number | unknown[];
251
+ paramCfg: Record<string, any>;
252
+ isAccurateFilter: boolean;
213
253
  }>;
214
254
  InputNumber: import("vue").DefineComponent<{
215
255
  modelValue: {
@@ -738,8 +778,8 @@ declare const _default: import("vue").DefineComponent<{
738
778
  "onUpdate:presetVal"?: ((...args: any[]) => any) | undefined;
739
779
  }, {
740
780
  modelValue: string | number | unknown[];
741
- presetVal: string;
742
781
  paramCfg: Record<string, any>;
782
+ presetVal: string;
743
783
  }>;
744
784
  SelectLabel: import("vue").DefineComponent<{
745
785
  paramCfg: {
@@ -805,7 +845,7 @@ declare const _default: import("vue").DefineComponent<{
805
845
  SELECTLABEL: string;
806
846
  SELECTDYNAMIC: string;
807
847
  };
808
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:presetVal")[], "update:modelValue" | "update:presetVal", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
848
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:isAccurate" | "update:presetVal")[], "update:modelValue" | "update:isAccurate" | "update:presetVal", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
809
849
  paramCfg: {
810
850
  type: ObjectConstructor;
811
851
  default: null;
@@ -818,12 +858,17 @@ declare const _default: import("vue").DefineComponent<{
818
858
  type: StringConstructor;
819
859
  default: null;
820
860
  };
861
+ isAccurate: {
862
+ type: BooleanConstructor;
863
+ };
821
864
  }>> & {
822
865
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
866
+ "onUpdate:isAccurate"?: ((...args: any[]) => any) | undefined;
823
867
  "onUpdate:presetVal"?: ((...args: any[]) => any) | undefined;
824
868
  }, {
825
869
  modelValue: string | number | unknown[];
826
- presetVal: string;
827
870
  paramCfg: Record<string, any>;
871
+ presetVal: string;
872
+ isAccurate: boolean;
828
873
  }>;
829
874
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as l,openBlock as a,createElementBlock as u,createCommentVNode as p,unref as m,createBlock as t,isRef as d}from"vue";import{InputNumber as o,InputFilter as r,SelectFilter as n,Date as V,SelectDynamic as f,InputNumberGroup as g,DateRange as s,SelectLabel as C}from"./components/index.js";import{WidgetTypeEnums as v}from"../../types/enums.js";const i={class:"value-cfg_wrapper"};var E=e({__name:"ValueCfg",props:{paramCfg:{type:Object,default:null},modelValue:{type:[String,Number,Array],default:null},presetVal:{type:String,default:null}},emits:["update:modelValue","update:presetVal"],setup(e,{emit:E}){const y=e,U=l({set(e){E("update:modelValue",e)},get:()=>y.modelValue}),N=l({set(e){E("update:presetVal",e)},get:()=>y.presetVal}),T=l((()=>{var e;return null==(e=y.paramCfg)?void 0:e.type}));return(l,E)=>(a(),u("div",i,[p(" 数字框 "),m(T)===m(v).INPUT_NUMBER?(a(),t(m(o),{key:0,modelValue:m(U),"onUpdate:modelValue":E[0]||(E[0]=e=>d(U)?U.value=e:null)},null,8,["modelValue"])):p("v-if",!0),p(" 文本框 "),m(T)===m(v).INPUT?(a(),t(m(r),{key:1,modelValue:m(U),"onUpdate:modelValue":E[1]||(E[1]=e=>d(U)?U.value=e:null)},null,8,["modelValue"])):p("v-if",!0),p(" 普通下拉框 "),m(T)===m(v).SELECT?(a(),t(m(n),{key:2,paramCfg:e.paramCfg,widgetType:m(T),modelValue:m(U),"onUpdate:modelValue":E[2]||(E[2]=e=>d(U)?U.value=e:null)},null,8,["paramCfg","widgetType","modelValue"])):p("v-if",!0),p(" 日期框、日期时间框 "),m(T)===m(v).DATE||m(T)===m(v).DATE_TIME?(a(),t(m(V),{key:3,paramCfg:e.paramCfg,modelValue:m(U),"onUpdate:modelValue":E[3]||(E[3]=e=>d(U)?U.value=e:null),presetVal:m(N),"onUpdate:presetVal":E[4]||(E[4]=e=>d(N)?N.value=e:null)},null,8,["paramCfg","modelValue","presetVal"])):p("v-if",!0),p(" 异步数据源下拉框 "),m(T)===m(v).SELECTDYNAMIC?(a(),t(m(f),{key:4,paramCfg:e.paramCfg,modelValue:m(U),"onUpdate:modelValue":E[5]||(E[5]=e=>d(U)?U.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0),p(" 数字框范围 "),m(T)===m(v).INPUTNUMBER_RANGE?(a(),t(m(g),{key:5,paramCfg:e.paramCfg,modelValue:m(U),"onUpdate:modelValue":E[6]||(E[6]=e=>d(U)?U.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0),p(" 日期、日期时间范围 "),m(T)===m(v).DATE_RANGE_INNER||m(T)===m(v).DATETIME_RANGE_INNER?(a(),t(m(s),{key:6,paramCfg:e.paramCfg,modelValue:m(U),"onUpdate:modelValue":E[7]||(E[7]=e=>d(U)?U.value=e:null),presetVal:m(N),"onUpdate:presetVal":E[8]||(E[8]=e=>d(N)?N.value=e:null)},null,8,["paramCfg","modelValue","presetVal"])):p("v-if",!0),p(" label标签选择 "),m(T)===m(v).SELECTLABEL?(a(),t(m(C),{key:7,paramCfg:e.paramCfg,modelValue:m(U),"onUpdate:modelValue":E[9]||(E[9]=e=>d(U)?U.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0)]))}});export{E as default};
1
+ import{defineComponent as e,computed as a,openBlock as l,createElementBlock as u,createCommentVNode as p,unref as t,createBlock as r,isRef as m}from"vue";import{InputNumber as d,InputFilter as o,SelectFilter as n,Date as f,SelectDynamic as V,InputNumberGroup as g,DateRange as s,SelectLabel as C}from"./components/index.js";import{WidgetTypeEnums as i}from"../../types/enums.js";const v={class:"value-cfg_wrapper"};var c=e({__name:"ValueCfg",props:{paramCfg:{type:Object,default:null},modelValue:{type:[String,Number,Array],default:null},presetVal:{type:String,default:null},isAccurate:{type:Boolean}},emits:["update:modelValue","update:presetVal","update:isAccurate"],setup(e,{emit:c}){const E=e,y=a({set(e){c("update:modelValue",e)},get:()=>E.modelValue}),A=a({set(e){c("update:presetVal",e)},get:()=>E.presetVal}),U=a({set(e){c("update:isAccurate",e)},get:()=>E.isAccurate}),N=a((()=>{var e;return null==(e=E.paramCfg)?void 0:e.type}));return(a,c)=>(l(),u("div",v,[p(" 数字框 "),t(N)===t(i).INPUT_NUMBER?(l(),r(t(d),{key:0,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[0]||(c[0]=e=>m(y)?y.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0),p(" 文本框 "),t(N)===t(i).INPUT?(l(),r(t(o),{key:1,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[1]||(c[1]=e=>m(y)?y.value=e:null),isAccurateFilter:t(U),"onUpdate:isAccurateFilter":c[2]||(c[2]=e=>m(U)?U.value=e:null)},null,8,["paramCfg","modelValue","isAccurateFilter"])):p("v-if",!0),p(" 普通下拉框 "),t(N)===t(i).SELECT?(l(),r(t(n),{key:2,paramCfg:e.paramCfg,widgetType:t(N),modelValue:t(y),"onUpdate:modelValue":c[3]||(c[3]=e=>m(y)?y.value=e:null)},null,8,["paramCfg","widgetType","modelValue"])):p("v-if",!0),p(" 日期框、日期时间框 "),t(N)===t(i).DATE||t(N)===t(i).DATE_TIME?(l(),r(t(f),{key:3,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[4]||(c[4]=e=>m(y)?y.value=e:null),presetVal:t(A),"onUpdate:presetVal":c[5]||(c[5]=e=>m(A)?A.value=e:null)},null,8,["paramCfg","modelValue","presetVal"])):p("v-if",!0),p(" 异步数据源下拉框 "),t(N)===t(i).SELECTDYNAMIC?(l(),r(t(V),{key:4,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[6]||(c[6]=e=>m(y)?y.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0),p(" 数字框范围 "),t(N)===t(i).INPUTNUMBER_RANGE?(l(),r(t(g),{key:5,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[7]||(c[7]=e=>m(y)?y.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0),p(" 日期、日期时间范围 "),t(N)===t(i).DATE_RANGE_INNER||t(N)===t(i).DATETIME_RANGE_INNER?(l(),r(t(s),{key:6,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[8]||(c[8]=e=>m(y)?y.value=e:null),presetVal:t(A),"onUpdate:presetVal":c[9]||(c[9]=e=>m(A)?A.value=e:null)},null,8,["paramCfg","modelValue","presetVal"])):p("v-if",!0),p(" label标签选择 "),t(N)===t(i).SELECTLABEL?(l(),r(t(C),{key:7,paramCfg:e.paramCfg,modelValue:t(y),"onUpdate:modelValue":c[10]||(c[10]=e=>m(y)?y.value=e:null)},null,8,["paramCfg","modelValue"])):p("v-if",!0)]))}});export{c as default};
@@ -146,7 +146,7 @@ declare const _default: import("vue").DefineComponent<{
146
146
  "onUpdate:presetVal"?: ((...args: any[]) => any) | undefined;
147
147
  }, {
148
148
  modelValue: string | number | unknown[];
149
- presetVal: string;
150
149
  paramCfg: Record<string, any>;
150
+ presetVal: string;
151
151
  }>;
152
152
  export default _default;
@@ -155,7 +155,7 @@ declare const _default: import("vue").DefineComponent<{
155
155
  "onUpdate:presetVal"?: ((...args: any[]) => any) | undefined;
156
156
  }, {
157
157
  modelValue: string | number | unknown[];
158
- presetVal: string;
159
158
  paramCfg: Record<string, any>;
159
+ presetVal: string;
160
160
  }>;
161
161
  export default _default;
@@ -1,28 +1,60 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
+ paramCfg: {
3
+ type: ObjectConstructor;
4
+ default: null;
5
+ };
2
6
  modelValue: {
3
7
  type: (ArrayConstructor | NumberConstructor | StringConstructor)[];
4
8
  default: null;
5
9
  };
10
+ isAccurateFilter: {
11
+ type: BooleanConstructor;
12
+ };
6
13
  }, {
7
14
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
15
+ paramCfg: {
16
+ type: ObjectConstructor;
17
+ default: null;
18
+ };
8
19
  modelValue: {
9
20
  type: (ArrayConstructor | NumberConstructor | StringConstructor)[];
10
21
  default: null;
11
22
  };
23
+ isAccurateFilter: {
24
+ type: BooleanConstructor;
25
+ };
12
26
  }>> & {
13
27
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
28
+ "onUpdate:isAccurateFilter"?: ((...args: any[]) => any) | undefined;
14
29
  }>>;
15
- emit: (event: "update:modelValue", ...args: any[]) => void;
30
+ emit: (event: "update:modelValue" | "update:isAccurateFilter", ...args: any[]) => void;
31
+ optionList: import("vue").Ref<{
32
+ label: string;
33
+ value: number;
34
+ }[]>;
16
35
  valueCp: import("vue").WritableComputedRef<any>;
36
+ isAccurateFilterCp: import("vue").WritableComputedRef<number>;
37
+ isShowSearch: import("vue").ComputedRef<any>;
17
38
  NInput: any;
18
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
39
+ NSelect: any;
40
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:isAccurateFilter")[], "update:modelValue" | "update:isAccurateFilter", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
41
+ paramCfg: {
42
+ type: ObjectConstructor;
43
+ default: null;
44
+ };
19
45
  modelValue: {
20
46
  type: (ArrayConstructor | NumberConstructor | StringConstructor)[];
21
47
  default: null;
22
48
  };
49
+ isAccurateFilter: {
50
+ type: BooleanConstructor;
51
+ };
23
52
  }>> & {
24
53
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
54
+ "onUpdate:isAccurateFilter"?: ((...args: any[]) => any) | undefined;
25
55
  }, {
26
56
  modelValue: string | number | unknown[];
57
+ paramCfg: Record<string, any>;
58
+ isAccurateFilter: boolean;
27
59
  }>;
28
60
  export default _default;