cnhis-design-vue 3.1.53-release.3 → 3.1.54-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 (63) hide show
  1. package/es/components/callback/src/components/render/popupMaps.d.ts +2 -0
  2. package/es/components/fabric-chart/index.d.ts +8 -9
  3. package/es/components/fabric-chart/src/FabricChart.vue.d.ts +8 -9
  4. package/es/components/fabric-chart/src/FabricChart.vue2.js +1 -1
  5. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogram.d.ts +6 -0
  6. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogram.js +1 -0
  7. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.d.ts +11 -0
  8. package/es/components/fabric-chart/src/hooks/electrocardiogram/useElectrocardiogramChart.js +1 -0
  9. package/es/components/fabric-chart/src/hooks/electrocardiogram/useMeasureInstrument.d.ts +9 -0
  10. package/es/components/fabric-chart/src/hooks/electrocardiogram/useMeasureInstrument.js +1 -0
  11. package/es/components/fabric-chart/src/hooks/index.d.ts +1 -0
  12. package/es/components/fabric-chart/src/hooks/index.js +1 -1
  13. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useSurgicalAnesthesiaChart.js +1 -1
  14. package/es/components/fabric-chart/src/interface.d.ts +1 -1
  15. package/es/components/field-set/index.d.ts +12 -2
  16. package/es/components/field-set/src/FieldSet.vue.d.ts +13 -3
  17. package/es/components/field-set/src/FieldSet.vue2.js +1 -1
  18. package/es/components/field-set/src/components/Row.vue.d.ts +2 -3
  19. package/es/components/field-set/src/components/Row.vue2.js +1 -1
  20. package/es/components/field-set/src/types/index.d.ts +1 -0
  21. package/es/components/field-set/style/index.css +1 -1
  22. package/es/components/form-config/index.d.ts +3 -0
  23. package/es/components/form-config/src/FormConfig.vue.d.ts +4 -0
  24. package/es/components/form-config/src/FormConfig.vue2.js +1 -1
  25. package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +1 -0
  26. package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +1 -0
  27. package/es/components/form-render/index.d.ts +1 -0
  28. package/es/components/form-render/src/FormRender.vue.d.ts +2 -1
  29. package/es/components/form-render/src/FormRender.vue2.js +1 -1
  30. package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +1 -0
  31. package/es/components/form-render/src/components/renderer/inputNumber.js +1 -1
  32. package/es/components/form-render/src/components/renderer/remoteSearch.js +1 -1
  33. package/es/components/form-render/src/components/renderer/select.d.ts +7 -0
  34. package/es/components/form-render/src/components/renderer/select.js +1 -1
  35. package/es/components/form-render/src/hooks/useFormRenderOptions.d.ts +4 -3
  36. package/es/components/form-render/src/hooks/useFormRenderOptions.js +1 -1
  37. package/es/components/form-render/src/utils/business.js +1 -1
  38. package/es/components/iho-table/index.d.ts +1 -0
  39. package/es/components/iho-table/src/IhoTable.vue.d.ts +2 -1
  40. package/es/components/iho-table/src/IhoTable.vue2.js +1 -1
  41. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.d.ts +13 -8
  42. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
  43. package/es/components/index.css +1 -1
  44. package/es/components/index.js +1 -1
  45. package/es/components/info-header/index.d.ts +3 -0
  46. package/es/components/info-header/src/InfoHeader.vue.d.ts +17 -13
  47. package/es/components/info-header/src/InfoHeader.vue2.js +1 -1
  48. package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +1 -0
  49. package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +1 -0
  50. package/es/components/shortcut-provider/index.d.ts +1 -0
  51. package/es/components/shortcut-provider/src/ShortcutProvider.vue.d.ts +2 -0
  52. package/es/components/shortcut-provider/src/ShortcutProvider.vue2.js +1 -1
  53. package/es/components/shortcut-setter/index.d.ts +2 -0
  54. package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +8 -5
  55. package/es/components/shortcut-setter/src/ShortcutSetter.vue2.js +1 -1
  56. package/es/shared/hooks/index.d.ts +1 -0
  57. package/es/shared/hooks/index.js +1 -1
  58. package/es/shared/hooks/selectHooks/useOptionFiltered.d.ts +8 -3
  59. package/es/shared/hooks/selectHooks/useOptionFiltered.js +1 -1
  60. package/es/shared/hooks/useVersion.d.ts +3 -0
  61. package/es/shared/hooks/useVersion.js +1 -0
  62. package/es/shared/package.json.js +1 -1
  63. package/package.json +2 -2
@@ -1 +1 @@
1
- import{defineComponent as e,ref as o,computed as t,provide as r,onMounted as s,onUnmounted as a,nextTick as i,openBlock as l,createBlock as n,unref as m,normalizeClass as d,normalizeStyle as p,withCtx as u,createElementBlock as c,createVNode as f,isRef as h,Fragment as y,renderList as g,createCommentVNode as b,createElementVNode as j,withKeys as v,toDisplayString as k,renderSlot as C}from"vue";import{useTheme as F}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as S,cloneDeep as H,isObject as x,isBoolean as A}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NForm as L,NTabs as B,NTabPane as O,NConfigProvider as R}from"naive-ui";import{createForm as w,onFormMount as D,onFieldValueChange as _,onFieldMount as V,onFieldUnmount as I,onFieldReact as N}from"@formily/core";import{Path as W}from"@formily/path";import{FormProvider as q,FormConsumer as E}from"@formily/vue";import{InjectionFormLifeCycleCaller as K,InjectionFormGraph as T}from"./constants/index.js";import{useAutoHidden as U}from"./hooks/useAutoHidden.js";import{useComplexOptionsSpan as G}from"./hooks/useComplexOptions.js";import{useFormDomEvent as M,useFormExposeEvent as P}from"./hooks/useFormEvent.js";import{useFormGraph as J}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as $}from"./hooks/useFormRenderLifeCycle.js";import{useLowCodeEvent as z}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as Q}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as X}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as Y}from"./hooks/useOperationalForm.js";import{useWordbookSetting as Z}from"./hooks/useWordbookSetting.js";import"../index.js";import{createObjSchema as ee}from"./utils/schema.js";import{useFieldListAdaptor as oe}from"./hooks/useFieldListAdaptor.js";import{useFieldVisitor as te}from"./hooks/useFieldVisitor.js";import"../../../shared/utils/tapable/SyncHook.js";import"../../../shared/utils/tapable/SyncBailHook.js";import"../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../shared/utils/tapable/SyncLoopHook.js";import"../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import{validateMessageLocale as re}from"./hooks/useFormValidator.js";import{useAnchor as se}from"./hooks/useAnchor.js";import{useFormContext as ae}from"./hooks/useFormContext.js";const ie={key:0,style:{height:"54px"}},le={style:{"white-space":"pre"}};var ne=e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},lowCodeReactions:{type:Array},operationalForm:{type:Object},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean},emits:["formChange","annotationChange","scroll"],setup(e,{expose:ne,emit:me}){const de=e,pe=F(),{nuiThemeOverrides:ue}=X();re();const ce=o(),fe=t((()=>S(de.maxHeight)?de.maxHeight+"px":de.maxHeight)),{SchemaField:he,businessCollector:ye,formItemDepsCollector:ge,changeContextCollector:be,formUUID:je}=ae(de,me),{anchorBarRef:ve,currentAnchor:ke,updateAnchorList:Ce,anchorIdList:Fe,onScroll:Se}=se(de,me,ce,ge),{callLifeCycle:He}=$(de);r(K,He),He("onSetup");const{trigger:xe}=U(),{observeFormGraph:Ae,setGraph:Le,removeGraph:Be}=J();r(T,Ae);const{lowCodeEventTrigger:Oe}=z(),Re=w({initialValues:de.initialData,effects(e){const o={};D((()=>{Object.assign(o,H(e.values))})),_("*",(t=>{const r=W.getIn(o,t.path);W.setIn(o,t.path,t.value);const s=t.props.name.toString();ye.trigger(e,s),ge.trigger(s),me("formChange",{fieldInstance:t,fieldKey:s,oldValue:r,fieldName:t.title,value:t.value,context:be.getContext(s,t.value)}),Oe(t),we(s),_e(s),Ie.trigger(s,t.value)})),V("*",Le),I("*",Be),de.linebarAutoHidden&&(N("*",xe),D((e=>e.query("*").forEach(xe)))),de.anchor&&N("*",Ce)}}),{lowCodeReactionsHandler:we,triggerAllReactionsHandler:De}=Q(t((()=>de.lowCodeReactions)),Re),{operationalFormHandler:_e,triggerAllOperationalFormHandler:Ve}=Y(t((()=>de.operationalForm)),Re),Ie=Z(Re,be);s(De),s(Ve);const{schemaAdaptor:Ne}=oe(ye,de.lifeCycle);let We=de.fieldList||[];const qe=t((()=>de.schema?de.schema:de.fieldList?(We=te().traverse(H(de.fieldList),de.fieldVisitor),ee(Ne(We,de))):ee({}))),{onKeydown:Ee}=M({formModel:Re,formRenderRef:ce,props:de}),{clearSpan:Ke}=G();a((()=>Ke(je)));const Te=P({formModel:Re,formRenderRef:ce,formItemDepsCollector:ge,getFieldList:()=>We,formUUID:je});return ne({formModel:Re,validate:(e="*",o={})=>Te.validate(e,o),getFormValues:(e=!0)=>Te.getFormValues(e),async setFormValues(e,o={},t=!1,r=!0){var s,a,l,n,m;let d=!0,p=!0,u=!0;x(o)?(p=null==(s=o.needSplitExtendKey)||s,d=null==(a=o.avoidDependKeyConnection)||a,t=null!=(l=o.avoidBusinessConnection)&&l,u=null==(n=o.avoidWordbookSettingConnection)||n,r=null==(m=o.overwrite)||m):A(o)&&(p=o),t&&(ye.triggerLock=!0),d&&(ge.triggerDisabled=!0),u&&Ie.setDisabled(!0),Te.setFormValues(e,p,r),await i(),ye.triggerLock=!1,ge.triggerDisabled=!1,Ie.setDisabled(!1)},setFieldState(e,o){Te.setFieldState(e,o)},resetFields(e="*"){Te.resetFields(e)},queryWidget:async e=>Te.queryWidget(e),getFieldList:()=>We,async reload(){console.error("reload function is abstract,it should be overwrite!")}}),(o,t)=>(l(),n(m(L),{class:d(["form-render",{"form-render--out-border":e.outBordered}]),"require-mark-placement":"left",style:p(m(pe))},{default:u((()=>[e.anchor?(l(),c("section",ie,[f(m(B),{value:m(ke),"onUpdate:value":t[0]||(t[0]=e=>h(ke)?ke.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ve},{default:u((()=>[(l(!0),c(y,null,g(m(Fe),(e=>(l(),n(m(O),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):b("v-if",!0),f(m(R),{"theme-overrides":m(ue)},{default:u((()=>[j("section",{class:"form-render__wrapper",style:p({"--column":e.column,"--form-height":m(fe)}),ref_key:"formRenderRef",ref:ce,onScroll:t[1]||(t[1]=(...e)=>m(Se)&&m(Se)(...e)),onKeydownCapture:t[2]||(t[2]=v(((...e)=>m(Ee)&&m(Ee)(...e)),["enter"]))},[f(m(q),{form:m(Re)},{default:u((()=>[f(m(he),{schema:m(qe)},null,8,["schema"]),e.consumer?(l(),n(m(E),{key:0},{default:u((({form:e})=>[j("div",le,k(JSON.stringify(e.values,null,2)),1)])),_:1})):b("v-if",!0),C(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},8,["class","style"]))}});export{ne as default};
1
+ import{defineComponent as e,ref as o,computed as t,provide as r,onMounted as s,onUnmounted as a,nextTick as i,openBlock as l,createBlock as n,unref as m,mergeProps as d,withCtx as p,createElementBlock as u,createVNode as c,isRef as f,Fragment as h,renderList as y,createCommentVNode as g,createElementVNode as j,normalizeStyle as b,withKeys as v,toDisplayString as k,renderSlot as C}from"vue";import{useTheme as F}from"../../../shared/hooks/useTheme.js";import"@vueuse/core";import"date-fns";import{isNumber as S,cloneDeep as H,isObject as x,isBoolean as A}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NForm as L,NTabs as B,NTabPane as O,NConfigProvider as R}from"naive-ui";import{useVersion as w}from"../../../shared/hooks/useVersion.js";import{createForm as D,onFormMount as V,onFieldValueChange as _,onFieldMount as I,onFieldUnmount as N,onFieldReact as W}from"@formily/core";import{Path as q}from"@formily/path";import{FormProvider as E,FormConsumer as K}from"@formily/vue";import{InjectionFormLifeCycleCaller as T,InjectionFormGraph as U}from"./constants/index.js";import{useAutoHidden as G}from"./hooks/useAutoHidden.js";import{useComplexOptionsSpan as M}from"./hooks/useComplexOptions.js";import{useFormDomEvent as P,useFormExposeEvent as J}from"./hooks/useFormEvent.js";import{useFormGraph as $}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as z}from"./hooks/useFormRenderLifeCycle.js";import{useLowCodeEvent as Q}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as X}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as Y}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as Z}from"./hooks/useOperationalForm.js";import{useWordbookSetting as ee}from"./hooks/useWordbookSetting.js";import"../index.js";import{createObjSchema as oe}from"./utils/schema.js";import{useFieldListAdaptor as te}from"./hooks/useFieldListAdaptor.js";import{useFieldVisitor as re}from"./hooks/useFieldVisitor.js";import"../../../shared/utils/tapable/SyncHook.js";import"../../../shared/utils/tapable/SyncBailHook.js";import"../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../shared/utils/tapable/SyncLoopHook.js";import"../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import{validateMessageLocale as se}from"./hooks/useFormValidator.js";import{useAnchor as ae}from"./hooks/useAnchor.js";import{useFormContext as ie}from"./hooks/useFormContext.js";const le={key:0,style:{height:"54px"}},ne={style:{"white-space":"pre"}};var me=e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},lowCodeReactions:{type:Array},operationalForm:{type:Object},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean},emits:["formChange","annotationChange","scroll"],setup(e,{expose:me,emit:de}){const pe=e,ue=F(),{nuiThemeOverrides:ce}=Y();se();const fe=o(),he=t((()=>S(pe.maxHeight)?pe.maxHeight+"px":pe.maxHeight)),{SchemaField:ye,businessCollector:ge,formItemDepsCollector:je,changeContextCollector:be,formUUID:ve}=ie(pe,de),{anchorBarRef:ke,currentAnchor:Ce,updateAnchorList:Fe,anchorIdList:Se,onScroll:He}=ae(pe,de,fe,je),{callLifeCycle:xe}=z(pe);r(T,xe),xe("onSetup");const{trigger:Ae}=G(),{observeFormGraph:Le,setGraph:Be,removeGraph:Oe}=$();r(U,Le);const{lowCodeEventTrigger:Re}=Q(),we=D({initialValues:pe.initialData,effects(e){const o={};V((()=>{Object.assign(o,H(e.values))})),_("*",(t=>{const r=q.getIn(o,t.path);q.setIn(o,t.path,t.value);const s=t.props.name.toString();ge.trigger(e,s),je.trigger(s),de("formChange",{fieldInstance:t,fieldKey:s,oldValue:r,fieldName:t.title,value:t.value,context:be.getContext(s,t.value)}),Re(t),De(s),_e(s),Ne.trigger(s,t.value)})),I("*",Be),N("*",Oe),pe.linebarAutoHidden&&(W("*",Ae),V((e=>e.query("*").forEach(Ae)))),pe.anchor&&W("*",Fe)}}),{lowCodeReactionsHandler:De,triggerAllReactionsHandler:Ve}=X(t((()=>pe.lowCodeReactions)),we),{operationalFormHandler:_e,triggerAllOperationalFormHandler:Ie}=Z(t((()=>pe.operationalForm)),we),Ne=ee(we,be);s(Ve),s(Ie);const{schemaAdaptor:We}=te(ge,pe.lifeCycle);let qe=pe.fieldList||[];const Ee=t((()=>pe.schema?pe.schema:pe.fieldList?(qe=re().traverse(H(pe.fieldList),pe.fieldVisitor),oe(We(qe,pe))):oe({}))),{onKeydown:Ke}=P({formModel:we,formRenderRef:fe,props:pe}),{clearSpan:Te}=M();a((()=>Te(ve)));const Ue=J({formModel:we,formRenderRef:fe,formItemDepsCollector:je,getFieldList:()=>qe,formUUID:ve});return me({formModel:we,validate:(e="*",o={})=>Ue.validate(e,o),getFormValues:(e=!0)=>Ue.getFormValues(e),async setFormValues(e,o={},t=!1,r=!0){var s,a,l,n,m;let d=!0,p=!0,u=!0;x(o)?(p=null==(s=o.needSplitExtendKey)||s,d=null==(a=o.avoidDependKeyConnection)||a,t=null!=(l=o.avoidBusinessConnection)&&l,u=null==(n=o.avoidWordbookSettingConnection)||n,r=null==(m=o.overwrite)||m):A(o)&&(p=o),t&&(ge.triggerLock=!0),d&&(je.triggerDisabled=!0),u&&Ne.setDisabled(!0),Ue.setFormValues(e,p,r),await i(),ge.triggerLock=!1,je.triggerDisabled=!1,Ne.setDisabled(!1)},setFieldState(e,o){Ue.setFieldState(e,o)},resetFields(e="*"){Ue.resetFields(e)},queryWidget:async e=>Ue.queryWidget(e),getFieldList:()=>qe,async reload(){console.error("reload function is abstract,it should be overwrite!")}}),(o,t)=>(l(),n(m(L),d({class:["form-render",{"form-render--out-border":e.outBordered}],"require-mark-placement":"left",style:m(ue)},m(w)()),{default:p((()=>[e.anchor?(l(),u("section",le,[c(m(B),{value:m(Ce),"onUpdate:value":t[0]||(t[0]=e=>f(Ce)?Ce.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ke},{default:p((()=>[(l(!0),u(h,null,y(m(Se),(e=>(l(),n(m(O),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):g("v-if",!0),c(m(R),{"theme-overrides":m(ce)},{default:p((()=>[j("section",{class:"form-render__wrapper",style:b({"--column":e.column,"--form-height":m(he)}),ref_key:"formRenderRef",ref:fe,onScroll:t[1]||(t[1]=(...e)=>m(He)&&m(He)(...e)),onKeydownCapture:t[2]||(t[2]=v(((...e)=>m(Ke)&&m(Ke)(...e)),["enter"]))},[c(m(E),{form:m(we)},{default:p((()=>[c(m(ye),{schema:m(Ee)},null,8,["schema"]),e.consumer?(l(),n(m(K),{key:0},{default:p((({form:e})=>[j("div",ne,k(JSON.stringify(e.values,null,2)),1)])),_:1})):g("v-if",!0),C(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},16,["class","style"]))}});export{me as default};
@@ -688,6 +688,7 @@ declare const _default: import("vue").DefineComponent<{}, {
688
688
  decoratorElement: HTMLElement | null | undefined;
689
689
  } | null>;
690
690
  };
691
+ useVersion: typeof import("../..").useVersion;
691
692
  FormConsumer: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
692
693
  FormProvider: import("vue").DefineComponent<Record<"form", any>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<Record<"form", any>>>, {
693
694
  form: any;
@@ -1 +1 @@
1
- import{defineComponent as e,watch as t,computed as n,createVNode as u,mergeProps as o}from"vue";import r from"../../../../../shared/components/InputNumberSlash/InputNumberSlash.js";import{connect as i,mapProps as a}from"@formily/vue";import{isString as l,isNumber as p}from"lodash-es";import{NInputNumber as s}from"naive-ui";import{useCommonInjection as m}from"../../hooks/useCommonInjection.js";import{createInputSlot as c,parseNumberFromMaybeString as v}from"../../utils/index.js";import{assignUpdateValue as f,assignClearBindVisited as y}from"../../utils/schema.js";const g=i(e({props:{value:{type:[Number,String]},onChange:{type:Function,required:!0},prefix:{type:[String,Function,Object]},suffix:{type:[String,Function,Object]}},setup(e){const o=c(e);m().injectValueValidate((()=>e.value)),t((()=>e.value),(t=>{if(null!=t)return!l(t)&&!p(t)||Number.isNaN(+t)?e.onChange(null):void e.onChange(+t)}));const r=n({get:()=>v(e.value),set:t=>{var n;return null==(n=e.onChange)?void 0:n.call(e,t)}}),i=m().injectValueBindKey(r);return()=>u(s,{key:i.value,value:r.value,"onUpdate:value":e=>r.value=e,"show-button":!1},o.value)}}),a(f,y)),h=i(e({props:{value:{type:[Number,String]},onChange:{type:Function,required:!0},prefix:{type:[String,Function,Object]},suffix:{type:[String,Function,Object]},precision:{type:Number}},setup(e){const t=m().injectValueBindKey((()=>e.value));return()=>u(r,o(e,{key:t.value}),null)}}),a(f,y));export{g as INPUT_NUMBER,h as INPUT_NUMBER_SLASH};
1
+ import{defineComponent as e,watch as t,computed as n,createVNode as u,mergeProps as o}from"vue";import r from"../../../../../shared/components/InputNumberSlash/InputNumberSlash.js";import{connect as i,mapProps as a}from"@formily/vue";import{isString as l,isNumber as p}from"lodash-es";import{NInputNumber as s}from"naive-ui";import{useCommonInjection as m}from"../../hooks/useCommonInjection.js";import{createInputSlot as c,parseNumberFromMaybeString as v}from"../../utils/index.js";import{assignUpdateValue as f,assignClearBindVisited as y}from"../../utils/schema.js";const g=i(e({props:{value:{type:[Number,String]},onChange:{type:Function,required:!0},prefix:{type:[String,Function,Object]},suffix:{type:[String,Function,Object]}},setup(e){const o=c(e);m().injectValueValidate((()=>e.value)),t((()=>e.value),(t=>{if(null!=t)return!l(t)&&!p(t)||Number.isNaN(+t)?e.onChange(null):void e.onChange(+t)}));const r=n({get:()=>v(e.value),set:t=>{var n;return null==(n=e.onChange)?void 0:n.call(e,t)}}),i=m().injectValueBindKey(r);return()=>u(s,{key:i.value,value:r.value,"onUpdate:value":e=>r.value=e,"show-button":!1},o.value)}}),a(f,y)),h=i(e({props:{value:{type:[Number,String]},onChange:{type:Function,required:!0},prefix:{type:[String,Function,Object]},suffix:{type:[String,Function,Object]},precision:{type:Number}},setup(e){const t=m().injectValueBindKey((()=>e.value)),n=c(e);return()=>u(r,o(e,{key:t.value}),n.value)}}),a(f,y));export{g as INPUT_NUMBER,h as INPUT_NUMBER_SLASH};
@@ -1 +1 @@
1
- import{defineComponent as e,watch as l,inject as o,computed as a,ref as t,createVNode as n}from"vue";import{connect as u,mapProps as r}from"@formily/vue";import{HelpCircleSharp as i}from"@vicons/ionicons5";import{useVModel as s,useDebounceFn as p}from"@vueuse/core";import{cloneDeep as v,isString as d}from"lodash-es";import{NSelect as m,NSpin as c,NEmpty as f,NTooltip as y,NIcon as g,NTag as h}from"naive-ui";import"../../../index.js";import{InjectionChangeContextCollector as C}from"../../constants/index.js";import{useCommonInjection as b,useSelectOptionProps as j}from"../../hooks/useCommonInjection.js";import{assignUpdateValue as F,assignClearBindVisited as w,createVisitedSetter as x}from"../../utils/schema.js";import{useFormField as B}from"../../hooks/useFormField.js";import{useUrlConfigOptions as K,useAutographOptions as S}from"../../hooks/useFormRenderOptions.js";const k=u(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:u,emit:r}){const F=s(e,"value",r),{field:w,fieldKey:k}=B(),{injectValueValidate:O,injectValueBindKey:D}=b();O(F);const R=D(F),q={onRequestConfigChange:({fetchData:e,valueKey:l})=>e(F.value,{[l]:F.value}),onDepsChange:({fetchData:e,valueKey:l})=>e(F.value,{[l]:F.value})},{labelKey:L,valueKey:P,showKey:V,fetchData:I,searchContent:U,fullOptions:z,loading:A}=e.urlConfig?K(e,F,q):S(e,F,q),T=p(((e="",l="label")=>I(e,{["value"===l?P.value:"keyword"]:e})),300);l(F,(e=>{if(e&&!z.value.find((l=>l[P.value]===e)))return T(e,"value")}));o(C).setContext(k.value,(e=>{return{currentOption:v((l=e,z.value.find((e=>e[P.value]===l))))};var l}));const{menuProps:$,nodeProps:E}=j(),G=a((()=>z.value.length||!e.allowCreate?z.value:U.value?[{[L.value]:U.value,[P.value]:U.value},...z.value]:z.value));async function H(e){A.value=e,e&&T()}function J(e){const l=e.alias||e[L.value];if(!l||!d(l))return"";const o=l;return e.desc?n("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[o,e.desc?n(y,null,{trigger:()=>n(g,{component:i},null),default:()=>e.desc}):null]):o}function M({option:l,handleClose:o}){var a;const t=null!=(a=V.value&&l[V.value])?a:l[L.value];if(!e.multiple)return N.value=t,t;return N.value="",e.deletable?n(h,{closable:!0,onClose:function(e){e.stopPropagation(),o()}},{default:()=>t}):`${t};`}const N=t("");return()=>n(m,{title:N.value,remote:!0,filterable:!0,key:R.value,value:F.value,"onUpdate:value":e=>F.value=e,labelField:L.value,valueField:P.value,"menu-props":$,"node-props":E,onSearch:T,"onUpdate:show":H,options:G.value,onFocus:x(w),renderLabel:J,renderTag:M},{empty:()=>e.useLoading&&A.value?n(c,null,null):n(f,{description:"无数据"},null),...u})}}),r(F,w));export{k as REMOTE_SEARCH};
1
+ import{defineComponent as e,watch as l,inject as o,computed as a,ref as t,createVNode as n}from"vue";import{connect as u,mapProps as r}from"@formily/vue";import{HelpCircleSharp as i}from"@vicons/ionicons5";import{useVModel as s,useDebounceFn as p}from"@vueuse/core";import{cloneDeep as v,isString as d}from"lodash-es";import{NSelect as m,NSpin as c,NEmpty as f,NTooltip as y,NIcon as g,NTag as h}from"naive-ui";import"../../../index.js";import{InjectionChangeContextCollector as C}from"../../constants/index.js";import{useCommonInjection as b,useSelectOptionProps as j}from"../../hooks/useCommonInjection.js";import{assignUpdateValue as F,assignClearBindVisited as w,createVisitedSetter as x}from"../../utils/schema.js";import{useFormField as B}from"../../hooks/useFormField.js";import{useUrlConfigOptions as K,useAutographOptions as S}from"../../hooks/useFormRenderOptions.js";const k=u(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:u,emit:r}){const F=s(e,"value",r),{field:w,fieldKey:k}=B(),{injectValueValidate:O,injectValueBindKey:D}=b();O(F);const R=D(F),q={onRequestConfigChange:({fetchData:e,valueKey:l})=>e(F.value,{[l]:F.value}),onDepsChange:({fetchData:e,valueKey:l})=>e(F.value,{[l]:F.value})},{labelKey:L,valueKey:P,showKey:V,fetchData:I,searchContent:U,fullOptions:z,loading:A}=e.urlConfig?K(e,F,q):S(e,F,q),T=p(((e,l="label")=>I(e,{["value"===l?P.value:"keyword"]:e})),300);l(F,(e=>{if(e&&!z.value.find((l=>l[P.value]===e)))return T(e,"value")}));o(C).setContext(k.value,(e=>{return{currentOption:v((l=e,z.value.find((e=>e[P.value]===l))))};var l}));const{menuProps:$,nodeProps:E}=j(),G=a((()=>z.value.length||!e.allowCreate?z.value:U.value?[{[L.value]:U.value,[P.value]:U.value},...z.value]:z.value));async function H(e){A.value=e,e&&T()}function J(e){const l=e.alias||e[L.value];if(!l||!d(l))return"";const o=l;return e.desc?n("section",{style:{display:"flex",alignItems:"center",gap:"4px"}},[o,e.desc?n(y,null,{trigger:()=>n(g,{component:i},null),default:()=>e.desc}):null]):o}function M({option:l,handleClose:o}){var a;const t=null!=(a=V.value&&l[V.value])?a:l[L.value];if(!e.multiple)return N.value=t,t;return N.value="",e.deletable?n(h,{closable:!0,onClose:function(e){e.stopPropagation(),o()}},{default:()=>t}):`${t};`}const N=t("");return()=>n(m,{title:N.value,remote:!0,filterable:!0,key:R.value,value:F.value,"onUpdate:value":e=>F.value=e,labelField:L.value,valueField:P.value,"menu-props":$,"node-props":E,onSearch:T,"onUpdate:show":H,options:G.value,onFocus:x(w),renderLabel:J,renderTag:M},{empty:()=>e.useLoading&&A.value?n(c,null,null):n(f,{description:"无数据"},null),...u})}}),r(F,w));export{k as REMOTE_SEARCH};
@@ -109,6 +109,9 @@ export declare const SELECT: import("vue").DefineComponent<{
109
109
  selectAll: {
110
110
  type: BooleanConstructor;
111
111
  };
112
+ searchByValue: {
113
+ type: BooleanConstructor;
114
+ };
112
115
  }, () => 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<{
113
116
  value: {
114
117
  type: PropType<ArrayAble<string | number> | null>;
@@ -215,6 +218,9 @@ export declare const SELECT: import("vue").DefineComponent<{
215
218
  selectAll: {
216
219
  type: BooleanConstructor;
217
220
  };
221
+ searchByValue: {
222
+ type: BooleanConstructor;
223
+ };
218
224
  }>> & {
219
225
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
220
226
  onPostRecommend?: ((...args: any[]) => any) | undefined;
@@ -234,6 +240,7 @@ export declare const SELECT: import("vue").DefineComponent<{
234
240
  recommendCache: boolean;
235
241
  commonNum: number;
236
242
  recentNum: number;
243
+ searchByValue: boolean;
237
244
  useLoading: boolean;
238
245
  showCustomValue: boolean;
239
246
  cursorPlacement: "end" | "start";
@@ -1 +1 @@
1
- import{defineComponent as e,computed as o,inject as t,useAttrs as l,ref as a,createVNode as r,mergeProps as s,toRaw as n}from"vue";import{arrayed as u}from"../../../../../shared/utils/index.js";import{cloneDeep as i,isArray as p,isObject as m,omit as d,xor as c}from"lodash-es";import{NSelect as f}from"naive-ui";import"@vueuse/core";import"date-fns";import"@vue/shared";import{useSelectAllowModify as v}from"../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as y}from"../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{connect as h,mapProps as b}from"@formily/vue";import{useCommonInjection as j,useSelectOptionProps as S}from"../../hooks/useCommonInjection.js";import{useComplexOptions as k,useComplexOptionsSpan as g}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as C,InjectionFormUUID as B}from"../../constants/index.js";import"../../../index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import{assignUpdateValue as F,assignClearBindVisited as A,createVisitedSetter as w}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"./index.js";import{useUrlConfigOptions as O,useAutographOptions as K,useRecommendOptions as R}from"../../hooks/useFormRenderOptions.js";const x=h(e({name:"FormSelect",props:{value:{type:[String,Array,Number]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},showField:{type:String},allowCreate:Boolean,shouldSave:Boolean,allowModify:Boolean,showCustomValue:Boolean,cursorPlacement:{type:String,default:"end"},urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},commonNum:{type:Number,default:10},recentNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1},useLoading:{type:Boolean,default:!0},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean}},emits:["update:value","postRecommend"],setup(e,{slots:h,emit:b}){const F=o({get:()=>e.value,async set(e){b("update:value",e),D(e)}}),{labelKey:A,valueKey:x,showKey:V,fetchData:L,searchContent:P,fullOptions:_,filterOptions:N,remoteOptions:I,loading:W}=e.urlConfig?O(e,F):K(e,F),{modifyEvent:E,modifyAbleRef:q,getOptionsWithCreated:M}=v(e,{searchContent:P,labelKey:A,valueKey:x,valueRef:F,fullOptions:_}),{renderComplexOption:T,hasComplexOption:U}=k(e,F),{getRecommend:z,postRecommend:D,sortedOptions:G}=R(e,N,b,A,x),{field:J,fieldKey:Q}=H();t(C).setContext(Q.value,(e=>({currentOption:i(function(e){const o=M(_.value);return p(e)?function(e){const t=o.reduce(((e,o)=>(e[o[x.value]]=o,e)),{});return e.map((e=>t[e]))}(e):(t=e,o.find((e=>e[x.value]===t)));var t}(e))})));const X=async(e="")=>(P.value=e,Promise.allSettled([L(e),z(e)])),{injectValueValidate:Y,injectValueWatchFromEmpty:Z,injectValueBindKey:$}=j();Z(F,X),Y(F);const ee=$(F),{menuProps:oe,nodeProps:te}=S(),{renderTag:le,renderLabel:ae,renderSelectAll:re,titleRef:se}=y(e,{labelKey:A,valueKey:x,valueRef:F,showKey:V,searchContent:P}),ne=o((()=>M(q.value?_.value:G.value))),ue=l(),ie=o((()=>{if(e.allowCreate||e.showCustomValue)return F.value;const o=e.multiple&&p(F.value);return _.value.find((e=>o?F.value.includes(e[x.value]):e[x.value]===F.value))?F.value:null})),pe=a(!1);async function me(e){e&&await X(),pe.value=e}async function de(e,o){await E.updateValue(e,o),I.value&&o&&u(o).forEach((e=>{if(!m(e))return;const o=e;o.created&&o.shouldSave&&I.value.push(d(n(o),["created","shouldSave"]))}))}const ce=t(B),{getSpan:fe}=g(),ve=w(J,E.focus);function ye(o){if(!e.multiple)return;const t=o?ne.value.map((e=>e[x.value])):[];c(t,e.value).length&&(F.value=t)}function he(o){let t=h;return e.multiple&&e.selectAll&&(t={action:()=>re(ye),...h}),r(f,s({title:se.value,key:ee.value,multiple:e.multiple,remote:!0,filterable:!0,loading:W.value,value:ie.value,onUpdateValue:de,"menu-props":oe,"node-props":te,labelField:A.value,valueField:x.value,options:ne.value,onSearch:X,show:pe.value,"onUpdate:show":me,onFocus:ve,onBlur:E.blur,renderLabel:ae,renderTag:le},o,ue),t)}return()=>{var e,o;if(!U.value)return he();const t=null!=(o=null==(e=J.value.decoratorProps)?void 0:e.span)?o:6,l=fe(ce,J.value.address);return r("section",{class:"form-render__selectChildField",style:{"--column":l+t}},[he({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),_.value.map((e=>T({option:e,value:F.value,valueKey:x.value,labelKey:A.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":l}}})))])}}}),b({dataSource:"options"},F,A));export{x as SELECT};
1
+ import{defineComponent as e,computed as o,inject as t,useAttrs as l,ref as a,createVNode as r,mergeProps as s,toRaw as n}from"vue";import{arrayed as u}from"../../../../../shared/utils/index.js";import{cloneDeep as i,isArray as p,isObject as m,omit as d,xor as c}from"lodash-es";import{NSelect as f}from"naive-ui";import"@vueuse/core";import"date-fns";import"@vue/shared";import{useSelectAllowModify as y}from"../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import"../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as v}from"../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{connect as h,mapProps as b}from"@formily/vue";import{useCommonInjection as j,useSelectOptionProps as S}from"../../hooks/useCommonInjection.js";import{useComplexOptions as k,useComplexOptionsSpan as g}from"../../hooks/useComplexOptions.js";import{InjectionChangeContextCollector as C,InjectionFormUUID as B}from"../../constants/index.js";import"../../../index.js";import"@formily/core";import"@formily/path";import"@vicons/ionicons5";import{assignUpdateValue as F,assignClearBindVisited as A,createVisitedSetter as w}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"./index.js";import{useUrlConfigOptions as O,useAutographOptions as K,useRecommendOptions as R}from"../../hooks/useFormRenderOptions.js";const x=h(e({name:"FormSelect",props:{value:{type:[String,Array,Number]},lazyRequest:{type:Boolean,default:!0},requestCache:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},onChange:{},labelField:{type:String,default:"text"},valueField:{type:String,default:"value"},showField:{type:String},allowCreate:Boolean,shouldSave:Boolean,allowModify:Boolean,showCustomValue:Boolean,cursorPlacement:{type:String,default:"end"},urlConfig:{type:Object},autograph:{type:String},wordbook:{type:Object},recommend:{type:Boolean,default:!1},commonList:{type:Array},recentList:{type:Array},getRecommendInfo:{type:Function},commonNum:{type:Number,default:10},recentNum:{type:Number,default:10},recommendCache:{type:Boolean,default:!1},useLoading:{type:Boolean,default:!0},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean},searchByValue:{type:Boolean}},emits:["update:value","postRecommend"],setup(e,{slots:h,emit:b}){const F=o({get:()=>e.value,async set(e){b("update:value",e),D(e)}}),{labelKey:A,valueKey:x,showKey:V,fetchData:L,searchContent:P,fullOptions:_,filterOptions:N,remoteOptions:I,loading:W}=e.urlConfig?O(e,F):K(e,F),{modifyEvent:E,modifyAbleRef:q,getOptionsWithCreated:M}=y(e,{searchContent:P,labelKey:A,valueKey:x,valueRef:F,fullOptions:_}),{renderComplexOption:T,hasComplexOption:U}=k(e,F),{getRecommend:z,postRecommend:D,sortedOptions:G}=R(e,N,b,A,x),{field:J,fieldKey:Q}=H();t(C).setContext(Q.value,(e=>({currentOption:i(function(e){const o=M(_.value);return p(e)?function(e){const t=o.reduce(((e,o)=>(e[o[x.value]]=o,e)),{});return e.map((e=>t[e]))}(e):(t=e,o.find((e=>e[x.value]===t)));var t}(e))})));const X=async e=>(P.value=e,Promise.allSettled([L(e),z(e)])),{injectValueValidate:Y,injectValueWatchFromEmpty:Z,injectValueBindKey:$}=j();Z(F,X),Y(F);const ee=$(F),{menuProps:oe,nodeProps:te}=S(),{renderTag:le,renderLabel:ae,renderSelectAll:re,titleRef:se}=v(e,{labelKey:A,valueKey:x,valueRef:F,showKey:V,searchContent:P}),ne=o((()=>M(q.value?_.value:G.value))),ue=l(),ie=o((()=>{if(e.allowCreate||e.showCustomValue)return F.value;const o=e.multiple&&p(F.value);return _.value.find((e=>o?F.value.includes(e[x.value]):e[x.value]===F.value))?F.value:null})),pe=a(!1);async function me(e){e&&await X(),pe.value=e}async function de(e,o){await E.updateValue(e,o),I.value&&o&&u(o).forEach((e=>{if(!m(e))return;const o=e;o.created&&o.shouldSave&&I.value.push(d(n(o),["created","shouldSave"]))}))}const ce=t(B),{getSpan:fe}=g(),ye=w(J,E.focus);function ve(o){if(!e.multiple)return;const t=o?ne.value.map((e=>e[x.value])):[];c(t,e.value).length&&(F.value=t)}function he(o){let t=h;return e.multiple&&e.selectAll&&(t={action:()=>re(ve),...h}),r(f,s({title:se.value,key:ee.value,multiple:e.multiple,remote:!0,filterable:!0,loading:W.value,value:ie.value,onUpdateValue:de,"menu-props":oe,"node-props":te,labelField:A.value,valueField:x.value,options:ne.value,onSearch:X,show:pe.value,"onUpdate:show":me,onFocus:ye,onBlur:E.blur,renderLabel:ae,renderTag:le},o,ue),t)}return()=>{var e,o;if(!U.value)return he();const t=null!=(o=null==(e=J.value.decoratorProps)?void 0:e.span)?o:6,l=fe(ce,J.value.address);return r("section",{class:"form-render__selectChildField",style:{"--column":l+t}},[he({class:"form-render__selectChildFieldItem",style:{"--form-item-column":t}}),_.value.map((e=>T({option:e,value:F.value,valueKey:x.value,labelKey:A.value,childFieldStrategy:"checked",renderLabel:!1,attrs:{class:"form-render__selectChildFieldItem",style:{"--form-item-column":l}}})))])}}}),b({dataSource:"options"},F,A));export{x as SELECT};
@@ -4,7 +4,7 @@ import { Ref } from 'vue';
4
4
  import { UrlConfig } from '../../../../../es/components/form-render';
5
5
  import { RecommendItem } from '../../../../../es/components/recommend-search/src/types';
6
6
  declare type UseOptionHooks = Partial<Record<'onRequestConfigChange' | 'onDepsChange', (payload: {
7
- fetchData: (content?: string | null, otherParams?: AnyObject) => any;
7
+ fetchData: (content?: string, otherParams?: AnyObject) => any;
8
8
  labelKey: string;
9
9
  valueKey: string;
10
10
  }) => any>>;
@@ -29,6 +29,7 @@ export declare function useUrlConfigOptions(props: Partial<{
29
29
  options: AnyObject[];
30
30
  requestCache: boolean;
31
31
  lazyRequest: boolean;
32
+ searchByValue: boolean;
32
33
  }>, valueRef: Ref, hooks?: UseOptionHooks): {
33
34
  labelKey: import("vue").ComputedRef<string>;
34
35
  loading: Ref<boolean>;
@@ -37,7 +38,7 @@ export declare function useUrlConfigOptions(props: Partial<{
37
38
  remoteOptions: Ref<AnyObject[] | null>;
38
39
  filterOptions: import("vue").ComputedRef<AnyObject[]>;
39
40
  fullOptions: import("vue").ComputedRef<AnyObject[]>;
40
- fetchData: (content?: string | null, otherParams?: AnyObject) => Promise<null | undefined>;
41
+ fetchData: (content?: string, otherParams?: AnyObject) => Promise<null | undefined>;
41
42
  searchContent: Ref<string | undefined>;
42
43
  };
43
44
  export declare function useAutographOptions(props: Partial<{
@@ -57,7 +58,7 @@ export declare function useAutographOptions(props: Partial<{
57
58
  valueKey: import("vue").ComputedRef<string>;
58
59
  filterOptions: import("vue").ComputedRef<AnyObject[]>;
59
60
  fullOptions: import("vue").ComputedRef<AnyObject[]>;
60
- fetchData: (content?: string | null, otherParams?: AnyObject) => Promise<null | undefined>;
61
+ fetchData: (content?: string, otherParams?: AnyObject) => Promise<null | undefined>;
61
62
  searchContent: Ref<string | undefined>;
62
63
  };
63
64
  export {};
@@ -1 +1 @@
1
- import{checkInSetupEnv as e,arrayed as l,jsonParse as n}from"../../../../shared/utils/index.js";import{uniqBy as o,isEqual as t,isString as u,omit as a,isFunction as r}from"lodash-es";import"naive-ui";import{computed as i,inject as s,ref as v,watch as c,toRaw as m}from"vue";import"@vueuse/core";import"date-fns";import{useFormRequest as d}from"../../../../shared/hooks/useFormRequest/index.js";import"@vueuse/shared";import{useOptionFiltered as f}from"../../../../shared/hooks/selectHooks/useOptionFiltered.js";import{useSearchContent as y}from"../../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{useForm as p}from"@formily/vue";import"../../index.js";import{InjectionAsyncQueue as h,InjectionFormLifeCycleCaller as g,InjectionFormItemDepsCollector as k}from"../constants/index.js";import{createUrlConfigParams as K,formRenderLog as w}from"../utils/index.js";import{useFormField as C}from"./useFormField.js";function b(e,l){const n=v();return i({get:()=>n.value?n.value:e[l],set(e){n.value=e}})}function O(e,l,t,u,v){const c=b(e,"commonList"),m=b(e,"recentList"),{searchContent:f,optionSearchFilter:p}=y();function g(e){return n(e.itemObj)}const k=i((()=>{var e,l;return null!=(l=null==(e=c.value)?void 0:e.map(g))?l:[]})),K=i((()=>{var e,l;return null!=(l=null==(e=m.value)?void 0:e.map(g))?l:[]})),w=i((()=>{if(!e.recommend||!k.value.length&&!K.value.length)return l.value;const n=o(k.value.concat(K.value),(e=>e[v.value])),t=l.value.filter((e=>n.every((function(l){return l[v.value]!==e[v.value]}))));return[...p(n,u.value),...t]})),{getRecommendRequestInfo:O,getHttpInstance:R}=d();function q(l){const{url:n,getRecommendIds:o}=O(),t=r(o)?o():{},u=r(e.getRecommendInfo)?e.getRecommendInfo():{};return{url:n[l],info:Object.assign({},t,u)}}const{fieldKey:F,field:j}=C(),I=s(h);return{postRecommend:async function(l){if(!e.recommend)return;const n=R();if(!n)return;const{url:o,info:u}=q("post"),a=w.value.find((e=>e[v.value]===l));a&&t("postRecommend",await n.post(o,{...u,keyword:"",itemId:v.value,itemObj:JSON.stringify(a)}))},getRecommend:async function(l){if(!e.recommend)return;if(f.value=l,c.value&&m.value&&e.recommendCache)return;const n=await I.addAsync(function(l,n){const{url:o,info:t}=q("get");return{url:o,method:"get",key:l,cache:n,params:{...t,recNum:Math.max(e.commonNum,e.recentNum),keyword:""},payload:{field:j.value,labelKey:u.value,valueKey:v.value}}}(F.value,e.recommendCache)),{commonly:o,recently:t}=n.reduce(((e,l)=>("commonly"===l.type?e.commonly.push(a(l,["type"])):"recently"===l.type&&e.recently.push(a(l,["type"])),e)),{commonly:[],recently:[]});c.value=o.slice(0,e.commonNum),m.value=t.slice(0,e.recentNum)},sortedOptions:w}}function R(l,n,o){e();const a=s(h),r=s(g),d=i((()=>{var e,n,o;return null!=(o=null!=(n=null==(e=l.urlConfig)?void 0:e.nameKey)?n:l.labelField)?o:"text"})),y=i((()=>{var e,n,o;return null!=(o=null!=(n=null==(e=l.urlConfig)?void 0:e.valueKey)?n:l.valueField)?o:"value"})),p=i((()=>{var e,n;return null!=(n=null==(e=l.urlConfig)?void 0:e.showKey)?n:l.showField})),{remoteOptions:b,filterOptions:O,fullOptions:R,searchContent:q}=f(l,d),{field:F,fieldKey:j}=C(),I=v(!1),x=async function(e,n){if(q.value=e||"",!l.urlConfig)return b.value=null;try{I.value=!0;const e={field:F.value,labelKey:d.value,valueKey:y.value},o=await a.addAsync(await K({config:{...l.urlConfig,payload:e,params:{...l.urlConfig.params,...n}},cache:l.requestCache,field:F.value}));m(b.value)!==o&&(b.value=o,r("afterOptionInit",[j.value,b.value,e]))}catch(e){u(e)&&w(e)}finally{I.value=!1}},D=s(k);return c((()=>l.urlConfig),((e,u)=>{if(t(e,u))return;if(b.value=null,!e)return b.value=null;const a={fetchData:x,labelKey:d.value,valueKey:y.value},{onRequestConfigChange:r,onDepsChange:i}=o||{};D.setDeps(j.value,e.dependKey||[],(async()=>{b.value=null,n.value=null,l.lazyRequest||(i?i(a):x())})),!n.value&&l.lazyRequest||(r?r(a):x())}),{immediate:!0}),{labelKey:d,loading:I,showKey:p,valueKey:y,remoteOptions:b,filterOptions:O,fullOptions:R,fetchData:x,searchContent:q}}function q(n,o,a){e();const r=s(h),y=s(g),K=p(),b=i((()=>{var e;const o=l(null==(e=n.wordbook)?void 0:e.show_key)[0];return u(o)?o:null})),O=i((()=>{var e,l,o,t;const a=null==(l=null==(e=n.wordbook)?void 0:e.render_key)?void 0:l[0];return u(a)?a:null!=(t=null!=(o=b.value)?o:n.labelField)?t:"text"})),R=i((()=>{var e,l,o;return null!=(o=null!=(l=null==(e=n.wordbook)?void 0:e.value_key)?l:n.valueField)?o:"value"})),q=i((()=>{var e;return(null==(e=n.wordbook)?void 0:e.search_key)||[]})),F=i((()=>{var e;return null!=(e=b.value)?e:n.showField})),{fieldKey:j,field:I}=C(),{getSearchRequestInfo:x}=d(),{searchContent:D,remoteOptions:N,filterOptions:S,fullOptions:_}=f(n,O,q),z=v(!1),A=async function(e,l){if(D.value=e||"",!n.autograph||!n.wordbook)return N.value=null;try{z.value=!0;const e={field:I.value,labelKey:O.value,valueKey:R.value},o=await r.addAsync(function(e,l,o,t,u){var a,r,i;const s={autograph:l,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1,...u};if(null==(a=e.queryParams)?void 0:a.length){const l=null!=(i=null==(r=K.value)?void 0:r.getFormState().values)?i:{};e.queryParams.forEach((e=>{s[e]=l[e]}))}return{...x(),params:s,key:o,cache:n.requestCache,payload:t}}(n.wordbook,n.autograph,j.value,e,l));m(N.value)!==o&&(N.value=o,y("afterOptionInit",[j.value,N.value,e]))}catch(e){u(e)&&w(e)}finally{z.value=!1}},H=s(k);return c((()=>n.wordbook),((e,l)=>{if(t(e,l))return;if(N.value=null,!e)return N.value=null;const u={fetchData:A,labelKey:O.value,valueKey:R.value},{onRequestConfigChange:r,onDepsChange:i}=a||{};H.setDeps(j.value,e.queryParams||[],(async()=>{N.value=null,i?i(u):A()})),!o.value&&n.lazyRequest||(r?r(u):A())}),{immediate:!0}),{labelKey:O,showKey:F,loading:z,remoteOptions:N,valueKey:R,filterOptions:S,fullOptions:_,fetchData:A,searchContent:D}}export{q as useAutographOptions,O as useRecommendOptions,R as useUrlConfigOptions};
1
+ import{checkInSetupEnv as e,arrayed as l,jsonParse as n}from"../../../../shared/utils/index.js";import{uniqBy as u,isEqual as o,isString as a,omit as t,isFunction as r}from"lodash-es";import"naive-ui";import{computed as i,inject as s,ref as v,watch as c,toRaw as m}from"vue";import"@vueuse/core";import"date-fns";import{useFormRequest as d}from"../../../../shared/hooks/useFormRequest/index.js";import"@vueuse/shared";import{useOptionFiltered as f}from"../../../../shared/hooks/selectHooks/useOptionFiltered.js";import{useSearchContent as y}from"../../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{useForm as p}from"@formily/vue";import"../../index.js";import{InjectionAsyncQueue as h,InjectionFormLifeCycleCaller as g,InjectionFormItemDepsCollector as K}from"../constants/index.js";import{createUrlConfigParams as k,formRenderLog as b}from"../utils/index.js";import{useFormField as w}from"./useFormField.js";function C(e,l){const n=v();return i({get:()=>n.value?n.value:e[l],set(e){n.value=e}})}function O(e,l,o,a,v){const c=C(e,"commonList"),m=C(e,"recentList"),{searchContent:f,optionSearchFilter:p}=y();function g(e){return n(e.itemObj)}const K=i((()=>{var e,l;return null!=(l=null==(e=c.value)?void 0:e.map(g))?l:[]})),k=i((()=>{var e,l;return null!=(l=null==(e=m.value)?void 0:e.map(g))?l:[]})),b=i((()=>{if(!e.recommend||!K.value.length&&!k.value.length)return l.value;const n=u(K.value.concat(k.value),(e=>e[v.value])),o=l.value.filter((e=>n.every((function(l){return l[v.value]!==e[v.value]}))));return[...p(n,a.value),...o]})),{getRecommendRequestInfo:O,getHttpInstance:R}=d();function q(l){const{url:n,getRecommendIds:u}=O(),o=r(u)?u():{},a=r(e.getRecommendInfo)?e.getRecommendInfo():{};return{url:n[l],info:Object.assign({},o,a)}}const{fieldKey:F,field:j}=w(),I=s(h);return{postRecommend:async function(l){if(!e.recommend)return;const n=R();if(!n)return;const{url:u,info:a}=q("post"),t=b.value.find((e=>e[v.value]===l));t&&o("postRecommend",await n.post(u,{...a,keyword:"",itemId:v.value,itemObj:JSON.stringify(t)}))},getRecommend:async function(l){if(!e.recommend)return;if(f.value=l,c.value&&m.value&&e.recommendCache)return;const n=await I.addAsync(function(l,n){const{url:u,info:o}=q("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:a.value,valueKey:v.value}}}(F.value,e.recommendCache)),{commonly:u,recently:o}=n.reduce(((e,l)=>("commonly"===l.type?e.commonly.push(t(l,["type"])):"recently"===l.type&&e.recently.push(t(l,["type"])),e)),{commonly:[],recently:[]});c.value=u.slice(0,e.commonNum),m.value=o.slice(0,e.recentNum)},sortedOptions:b}}function R(l,n,u){e();const t=s(h),r=s(g),d=i((()=>{var e,n,u;return null!=(u=null!=(n=null==(e=l.urlConfig)?void 0:e.nameKey)?n:l.labelField)?u:"text"})),y=i((()=>{var e,n,u;return null!=(u=null!=(n=null==(e=l.urlConfig)?void 0:e.valueKey)?n:l.valueField)?u:"value"})),p=i((()=>{var e,n;return null!=(n=null==(e=l.urlConfig)?void 0:e.showKey)?n:l.showField})),{remoteOptions:C,filterOptions:O,fullOptions:R,searchContent:q}=f(l,{labelKey:d,valueKey:y}),{field:F,fieldKey:j}=w(),I=v(!1),x=async function(e,n){if(q.value=e,!l.urlConfig)return C.value=null;if(null==q.value)try{I.value=!0;const e={field:F.value,labelKey:d.value,valueKey:y.value},u=await t.addAsync(await k({config:{...l.urlConfig,payload:e,params:{...l.urlConfig.params,...n}},cache:l.requestCache,field:F.value}));m(C.value)!==u&&(C.value=u,r("afterOptionInit",[j.value,C.value,e]))}catch(e){a(e)&&b(e)}finally{I.value=!1}},D=s(K);return c((()=>l.urlConfig),((e,a)=>{if(o(e,a))return;if(C.value=null,!e)return C.value=null;const t={fetchData:x,labelKey:d.value,valueKey:y.value},{onRequestConfigChange:r,onDepsChange:i}=u||{};D.setDeps(j.value,e.dependKey||[],(async()=>{C.value=null,n.value=null,l.lazyRequest||(i?i(t):x())})),!n.value&&l.lazyRequest||(r?r(t):x())}),{immediate:!0}),{labelKey:d,loading:I,showKey:p,valueKey:y,remoteOptions:C,filterOptions:O,fullOptions:R,fetchData:x,searchContent:q}}function q(n,u,t){e();const r=s(h),y=s(g),k=p(),C=i((()=>{var e;const u=l(null==(e=n.wordbook)?void 0:e.show_key)[0];return a(u)?u:null})),O=i((()=>{var e,l,u,o;const t=null==(l=null==(e=n.wordbook)?void 0:e.render_key)?void 0:l[0];return a(t)?t:null!=(o=null!=(u=C.value)?u:n.labelField)?o:"text"})),R=i((()=>{var e,l,u;return null!=(u=null!=(l=null==(e=n.wordbook)?void 0:e.value_key)?l:n.valueField)?u:"value"})),q=i((()=>{var e;return(null==(e=n.wordbook)?void 0:e.search_key)||[]})),F=i((()=>{var e;return null!=(e=C.value)?e:n.showField})),{fieldKey:j,field:I}=w(),{getSearchRequestInfo:x}=d(),{searchContent:D,remoteOptions:N,filterOptions:S,fullOptions:_}=f(n,{labelKey:O,valueKey:R,searchKey:q}),z=v(!1),A=async function(e,l){if(D.value=e,!n.autograph||!n.wordbook)return N.value=null;if(null==D.value)try{z.value=!0;const e={field:I.value,labelKey:O.value,valueKey:R.value},u=await r.addAsync(function(e,l,u,o,a){var t,r,i;const s={autograph:l,wordbookId:e.id,wordbookType:e.type,fieldKeys:e.search_key,keyword:"",page:1,...a};if(null==(t=e.queryParams)?void 0:t.length){const l=null!=(i=null==(r=k.value)?void 0:r.getFormState().values)?i:{};e.queryParams.forEach((e=>{s[e]=l[e]}))}return{...x(),params:s,key:u,cache:n.requestCache,payload:o}}(n.wordbook,n.autograph,j.value,e,l));m(N.value)!==u&&(N.value=u,y("afterOptionInit",[j.value,N.value,e]))}catch(e){a(e)&&b(e)}finally{z.value=!1}},H=s(K);return c((()=>n.wordbook),((e,l)=>{if(o(e,l))return;if(N.value=null,!e)return N.value=null;const a={fetchData:A,labelKey:O.value,valueKey:R.value},{onRequestConfigChange:r,onDepsChange:i}=t||{};H.setDeps(j.value,e.queryParams||[],(async()=>{N.value=null,i?i(a):A()})),!u.value&&n.lazyRequest||(r?r(a):A())}),{immediate:!0}),{labelKey:O,showKey:F,loading:z,remoteOptions:N,valueKey:R,filterOptions:S,fullOptions:_,fetchData:A,searchContent:D}}export{q as useAutographOptions,O as useRecommendOptions,R as useUrlConfigOptions};
@@ -1 +1 @@
1
- import{differenceInDays as t,differenceInMonths as e,differenceInYears as n,differenceInHours as a,format as r}from"date-fns";import{isString as s}from"lodash-es";import{FIELD_AGE_UNIT as o,FIELD_SEX_VALUE as u}from"../constants/index.js";function c(t){return((t,e,n)=>{const a={},r=1-t.substr(e,1)%2;a.sex=1===r?u.FEMALE:u.MALE;const s=(2==n?"19":"")+t.substr(6,n),o=t.substr(6+n,2),c=t.substr(8+n,2);a.birthday=s+"-"+o+"-"+c+" 00:00";const d=new Date,i=d.getMonth()+1<parseInt(o,10)||d.getMonth()+1==parseInt(o,10)&&d.getDate()<parseInt(c,10)?1:0;return Object.assign(a,g(a.birthday)),a.age=a.year=d.getFullYear()-parseInt(s,10)-i,a})(t,15==t.length?14:16,15==t.length?2:4)}function d(t=""){return function(t){return t&&"YYYY-MM"===t.toUpperCase()}(t)?"month":t.includes("HH")?"datetime":"date"}const i=/^\d{6}(((19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}(\d|x|X))|(\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}))$/;function h(t){return i.test(t)&&function(t){if(!t||18!==t.length)return!1;const e=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];let n=0;for(let a=0;a<17;a++)n+=+t[a]*e[a];return t.charAt(17).toUpperCase()===["1","0","X","9","8","7","6","5","4","3","2"][n%11]}(t)}function f(t){return/^1(3\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\d|9[0-35-9])\d{8}$/.test(t)}function g(r){const s={},o=new Date,u=new Date(r);return s.day=t(o,u),s.month=e(o,u),s.age=s.year=n(o,u),s.hours=a(o,u),s}function M(t,e,n="yyyy-MM-dd HH:mm"){var a;const s=new Date,u={[o.MINUTE]:()=>c(s,"Minutes",t),[o.HOUR]:()=>c(s,"Hours",t),[o.DAY]:()=>c(s,"Date",t),[o.WEEK]:()=>c(s,"Date",7*t),[o.MONTH]:()=>c(s,"Month",t),[o.YEAR]:()=>c(s,"FullYear",t)};return null==(a=u[e])||a.call(u),r(function(t,e){const n=[{[o.DAY]:"Date",[o.WEEK]:"Date",[o.MONTH]:"Date",[o.YEAR]:"Date"},{[o.HOUR]:"Hours"},{[o.MINUTE]:"Minutes"}],a=n.findIndex((t=>Reflect.has(t,e)));~a&&n.slice(a+1).forEach((e=>{Object.values(e).forEach((e=>{t[`set${e}`]("Date"===e?1:0)}))}));return t.setSeconds(0),t}(s,e),n);function c(t,e,n){t[`set${e}`](t[`get${e}`]()-n)}}function l(t){const e=t.hours<24?{ageUnit:o.HOUR,age:Math.max(t.hours,1)}:t.day<30?{ageUnit:o.DAY,age:Math.max(t.day,1)}:t.day<365?{ageUnit:o.MONTH,age:Math.max(t.month,1)}:{ageUnit:o.YEAR,age:Math.max(t.year,1)};return e.age=Math.max(e.age,1),e}const m=/^(\d{4})-?(\d{2})-?(\d{2})?\s?(\d{2})?:?(\d{2})?:?(\d{2})?$/;function D(t){if(!s(t))return;const e=t.match(m);if(!e)return;const[,n,a,r,o,u,c]=e;return new Date(`${n}-${a}-${r||"01"} ${o||"00"}:${u||"00"}:${c||"00"}`)}export{D as businessDateParser,h as isIdCard,f as isMobile,M as parseAge2Birthday,l as parseAgeFromContext,g as parseBirthday,c as parseIdCard,d as transformDateFormat};
1
+ import{differenceInDays as t,differenceInMonths as e,differenceInYears as n,differenceInHours as a,format as r}from"date-fns";import{isString as s}from"lodash-es";import{FIELD_AGE_UNIT as o,FIELD_SEX_VALUE as u}from"../constants/index.js";function d(t){return((t,e,n)=>{const a={},r=1-t.substr(e,1)%2;a.sex=1===r?u.FEMALE:u.MALE;const s=(2==n?"19":"")+t.substr(6,n),o=t.substr(6+n,2),d=t.substr(8+n,2);a.birthday=s+"-"+o+"-"+d+" 00:00";const c=new Date,i=c.getMonth()+1<parseInt(o,10)||c.getMonth()+1==parseInt(o,10)&&c.getDate()<parseInt(d,10)?1:0;return Object.assign(a,M(a.birthday)),a.age=a.year=c.getFullYear()-parseInt(s,10)-i,a})(t,15==t.length?14:16,15==t.length?2:4)}function c(t=""){return function(t){return t&&"YYYY-MM"===t.toUpperCase()}(t)?"month":t.includes("HH")?"datetime":"date"}const i=/^\d{6}(((19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}(\d|x|X))|(\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}))$/,h=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}$/;function f(t){return i.test(t)&&function(t){if(!t||18!==t.length)return!1;const e=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];let n=0;for(let a=0;a<17;a++)n+=+t[a]*e[a];return t.charAt(17).toUpperCase()===["1","0","X","9","8","7","6","5","4","3","2"][n%11]}(t)||h.test(t)}function g(t){return/^1(3\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\d|9[0-35-9])\d{8}$/.test(t)}function M(r){const s={},o=new Date,u=new Date(r);return s.day=t(o,u),s.month=e(o,u),s.age=s.year=n(o,u),s.hours=a(o,u),s}function l(t,e,n="yyyy-MM-dd HH:mm"){var a;const s=new Date,u={[o.MINUTE]:()=>d(s,"Minutes",t),[o.HOUR]:()=>d(s,"Hours",t),[o.DAY]:()=>d(s,"Date",t),[o.WEEK]:()=>d(s,"Date",7*t),[o.MONTH]:()=>d(s,"Month",t),[o.YEAR]:()=>d(s,"FullYear",t)};return null==(a=u[e])||a.call(u),r(function(t,e){const n=[{[o.DAY]:"Date",[o.WEEK]:"Date",[o.MONTH]:"Date",[o.YEAR]:"Date"},{[o.HOUR]:"Hours"},{[o.MINUTE]:"Minutes"}],a=n.findIndex((t=>Reflect.has(t,e)));~a&&n.slice(a+1).forEach((e=>{Object.values(e).forEach((e=>{t[`set${e}`]("Date"===e?1:0)}))}));return t.setSeconds(0),t}(s,e),n);function d(t,e,n){t[`set${e}`](t[`get${e}`]()-n)}}function m(t){const e=t.hours<24?{ageUnit:o.HOUR,age:Math.max(t.hours,1)}:t.day<30?{ageUnit:o.DAY,age:Math.max(t.day,1)}:t.day<365?{ageUnit:o.MONTH,age:Math.max(t.month,1)}:{ageUnit:o.YEAR,age:Math.max(t.year,1)};return e.age=Math.max(e.age,1),e}const D=/^(\d{4})-?(\d{2})-?(\d{2})?\s?(\d{2})?:?(\d{2})?:?(\d{2})?$/;function E(t){if(!s(t))return;const e=t.match(D);if(!e)return;const[,n,a,r,o,u,d]=e;return new Date(`${n}-${a}-${r||"01"} ${o||"00"}:${u||"00"}:${d||"00"}`)}export{E as businessDateParser,f as isIdCard,g as isMobile,l as parseAge2Birthday,m as parseAgeFromContext,M as parseBirthday,d as parseIdCard,c as transformDateFormat};
@@ -4671,6 +4671,7 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
4671
4671
  header: any;
4672
4672
  footer: any;
4673
4673
  slotPropertiesPicker: (args: import("../../../es/shared/types").AnyObject) => Pick<import("../../../es/shared/types").AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
4674
+ useVersion: typeof import("..").useVersion;
4674
4675
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd" | "pageChange")[], "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd" | "pageChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
4675
4676
  tableConfig: {
4676
4677
  type: import("vue").PropType<import("../../../es/components/iho-table/src/types").IhoTableConfig>;
@@ -1,4 +1,4 @@
1
- import { FormRequestDefine } from '../../../../es/shared/hooks';
1
+ import { FormRequestDefine, useVersion } from '../../../../es/shared/hooks';
2
2
  import { AnyObject } from '../../../../es/shared/types';
3
3
  import { PropType } from 'vue';
4
4
  import { VxeTableInstance } from 'vxe-table';
@@ -4672,6 +4672,7 @@ declare const _default: import("vue").DefineComponent<{
4672
4672
  header: any;
4673
4673
  footer: any;
4674
4674
  slotPropertiesPicker: (args: AnyObject) => Pick<AnyObject, "row" | "column" | "rowIndex" | "checked" | "$rowIndex" | "disabled" | "columnIndex" | "$columnIndex" | "_columnIndex" | "indeterminate">;
4675
+ useVersion: typeof useVersion;
4675
4676
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd" | "pageChange")[], "toggleRowExpand" | "toggleTreeExpand" | "copy" | "scroll" | "formChange" | "settingClick" | "formClick" | "keyboard" | "rowDrag" | "cut" | "paste" | "keydown" | "keydownStart" | "keydownEnd" | "currentChange" | "radioChange" | "checkboxChange" | "checkboxAll" | "checkboxRangeStart" | "checkboxRangeChange" | "checkboxRangeEnd" | "cellClick" | "cellDblclick" | "cellMenu" | "cellMouseenter" | "cellMouseleave" | "headerCellClick" | "headerCellDblclick" | "headerCellMenu" | "footerCellClick" | "footerCellDblclick" | "footerCellMenu" | "sortChange" | "filterChange" | "filterVisible" | "resizableChange" | "menuClick" | "editClosed" | "editActived" | "editDisabled" | "validError" | "custom" | "openFnr" | "fnrChange" | "fnrFind" | "fnrFindAll" | "fnrReplace" | "fnrReplaceAll" | "cellAreaCopy" | "cellAreaCut" | "cellAreaPaste" | "cellAreaMerge" | "clearCellAreaMerge" | "headerCellAreaSelection" | "cellAreaSelectionStart" | "cellAreaSelectionDrag" | "cellAreaSelectionEnd" | "cellAreaExtensionStart" | "cellAreaExtensionDrag" | "cellAreaExtensionEnd" | "cellAreaArrowsStart" | "cellAreaArrowsEnd" | "activeCellChangeStart" | "activeCellChangeEnd" | "pageChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
4676
4677
  tableConfig: {
4677
4678
  type: PropType<IhoTableConfig>;
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,provide as a,ref as o,toRaw as l,watch as n,resolveComponent as s,openBlock as r,createElementBlock as i,unref as u,normalizeStyle as c,createBlock as d,resolveDynamicComponent as f,createElementVNode as m,createVNode as v,mergeProps as p,createSlots as b,renderList as h,withCtx as g,createCommentVNode as x,renderSlot as k,normalizeProps as y,guardReactiveProps as D}from"vue";import{useTheme as C}from"../../../shared/hooks/useTheme.js";import{useDebounceFn as j}from"@vueuse/core";import"date-fns";import{isString as $,isEqualWith as I,isFunction as w,pick as q}from"lodash-es";import{useFormAsyncQueue as R,presetRequestHandler as H}from"../../../shared/hooks/useFormRequest/index.js";import{promiseTimeout as T}from"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import"naive-ui";import{widthAppend as _,uuidGenerator as A}from"../../../shared/utils/index.js";import{VxeTableEventNameList as L,InjectionIhoTableEmits as S,InjectionTableAsyncQueue as F,InjectionIhoTableAnnotation as O,InjectionIhoTableUUID as B,InjectionIhoTableInstance as E,InjectionIhoTableConfig as N,InjectionIhoTableFieldList as W,InjectionIhoTableHandler as z}from"./constants/index.js";import{createTableHooks as G,applyTableConfigHooks as J,applyTableFieldHooks as K,createTableEventHandlers as M,createDomInsertComponent as P,createDataTransfer as Q}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as U}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as V}from"./utils/index.js";const X=["id"];var Y=e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object},requestInstance:{type:Object},uniqueCacheData:{type:Boolean,default:!1},parallelism:{type:Number,default:3}},emits:["formChange","settingClick","formClick","keyboard","rowDrag",...L],setup(e,{expose:L,emit:Y}){var Z,ee;const te=e,ae=C({"--c-border-color":"#d0d0d0","--c-head-bg-color":"#f2f2f2","--c-hover-color":"#e6e6e6","--c-stripe-color":"#f6f6f6"}),oe=t((()=>{var e,t;const a=null!=(t=null==(e=te.tableConfig)?void 0:e.height)?t:"100%";return{height:"auto"===a?"100%":$(a)&&(a.includes("calc")||a.endsWith("%"))?a:_(a)}})),le=U(),ne=function(e,...t){Y(e,...t);const a=u(ce)[V(e)];w(a)&&a(...t),le.trigger(e,...t)};a(S,ne);const se=R(t((()=>te.requestInstance)),t((()=>!!te.uniqueCacheData))).create(te.parallelism,{beforeRequest:(e,t)=>t,afterRequest:(e,t)=>H(t)});a(F,se);const re=G();a(O,t((()=>te.annotation)));const ie=A();a(B,ie);const ue=o();a(E,ue);const ce=o({uuid:null!=(ee=null==(Z=te.tableConfig)?void 0:Z.uuid)?ee:ie});a(N,ce);const de=j(fe,10);function fe(){ce.value=J(re,te.tableConfig,{$table:ue,emits:ne}),ce.value.uuid=ie}const me=o([]);a(W,me);const ve=j(pe,10);function pe(){const e=K(re,te.fieldList,ce.value,{$table:ue,emits:ne});I(e,l(me.value),((e,t)=>{if(w(e)&&w(t))return e.toString()===t.toString()}))||(me.value=e)}const be=Q(re,ce,ue),he=o([]);async function ge(){var e,t;const a=await be(te.tableData),o=null==(e=ue.value)?void 0:e.getTableData().fullData;if(o){let e=0;if(!(o.some((t=>{var o;if(!(null==(o=ue.value)?void 0:o.isInsertByRow(t))){if(t!==a[e])return!0;e++}}))||e!==a.length))return}he.value=a,null==(t=ue.value)||t.recalculate(!0)}const xe={updateTableDataRef:j(ge,10),updateConfigRef:de,updateFieldListRef:ve};a(z,xe);const ke=M({hooks:re,config:ce,$table:ue,context:xe,emits:ne}),ye=t((()=>({...ce.value,...ke})));let De=!1,Ce=!1,je=!1;const $e=j((()=>{De&&fe(),Ce&&pe(),je&&ge(),De=!1,Ce=!1,je=!1}),10);n((()=>te.tableConfig),(()=>{De=!0,Ce=!0,je=!0,$e()}),{deep:!0}),n((()=>te.fieldList),(()=>{Ce=!0,je=!0,$e()}),{deep:!0}),n([()=>[...te.tableData],()=>{var e;return null==(e=te.tableData)?void 0:e.length}],(()=>{je=!0,$e()})),n([()=>te.tableData,()=>{var e;return null==(e=te.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=ce.value.treeConfig)?void 0:e.expandAll)&&(await T(11),null==(t=ue.value)||t.setAllTreeExpand(!0))})),fe(),pe(),ge();const{header:Ie,footer:we}=P(re);function qe(e){return q(e,["row","rowIndex","$rowIndex","column","columnIndex","$columnIndex","_columnIndex","checked","disabled","indeterminate"])}return L({$table:ue,async loadData(e){var t;null==(t=ue.value)||t.loadData(await be(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),reload(){var e,t;null==(e=ue.value)||e.loadColumn([]),null==(t=ue.value)||t.loadData([]),fe(),pe(),ge()},...re.exposeHooks.expose.call({},ce,{$table:ue,emits:ne})}),re.setupHooks.setup.call(ce,me,{$table:ue,emits:ne}),(e,t)=>{const a=s("vxe-grid");return r(),i("section",{class:"iho-table",id:u(ie),style:c(u(ae))},[(r(),d(f(u(Ie)))),m("section",{style:c(u(oe))},[v(a,p({ref_key:"$table",ref:ue},u(ye),{columns:me.value,data:he.value}),b({_:2},[h(e.$slots,((t,a)=>({name:a,fn:g((t=>[x(" 实际上所有的vxe-grid插槽都支持 "),k(e.$slots,a,y(D(qe(t))))]))})))]),1040,["columns","data"])],4),(r(),d(f(u(we))))],12,X)}}});export{Y as default};
1
+ import{defineComponent as e,computed as t,provide as o,ref as a,toRaw as l,watch as n,resolveComponent as s,openBlock as r,createElementBlock as i,mergeProps as u,unref as c,createBlock as d,resolveDynamicComponent as f,createElementVNode as m,normalizeStyle as v,createVNode as p,createSlots as h,renderList as b,withCtx as g,createCommentVNode as x,renderSlot as k,normalizeProps as y,guardReactiveProps as D}from"vue";import{useTheme as C}from"../../../shared/hooks/useTheme.js";import{useDebounceFn as j}from"@vueuse/core";import"date-fns";import{isString as $,isEqualWith as I,isFunction as w,pick as q}from"lodash-es";import{useFormAsyncQueue as R,presetRequestHandler as H}from"../../../shared/hooks/useFormRequest/index.js";import{promiseTimeout as T}from"@vueuse/shared";import{widthAppend as _,uuidGenerator as A}from"../../../shared/utils/index.js";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import"naive-ui";import{useVersion as L}from"../../../shared/hooks/useVersion.js";import{VxeTableEventNameList as S,InjectionIhoTableEmits as F,InjectionTableAsyncQueue as O,InjectionIhoTableAnnotation as B,InjectionIhoTableUUID as E,InjectionIhoTableInstance as N,InjectionIhoTableConfig as V,InjectionIhoTableFieldList as W,InjectionIhoTableHandler as z}from"./constants/index.js";import{createTableHooks as G,applyTableConfigHooks as J,applyTableFieldHooks as K,createTableEventHandlers as M,createDomInsertComponent as P,createDataTransfer as Q}from"./hooks/tapHooks/index.js";import{provideIhoTableEventListener as U}from"./hooks/tapHooks/useEventHooks.js";import{eventName2EventListener as X}from"./utils/index.js";const Y=["id"];var Z=e({__name:"IhoTable",props:{tableConfig:{type:Object,default:()=>({})},fieldList:{type:Array,default:()=>[]},tableData:{type:Array,default:()=>[]},annotation:{type:Object},requestInstance:{type:Object},uniqueCacheData:{type:Boolean,default:!1},parallelism:{type:Number,default:3}},emits:["formChange","settingClick","formClick","keyboard","rowDrag",...S],setup(e,{expose:S,emit:Z}){var ee,te;const oe=e,ae=C({"--c-border-color":"#d0d0d0","--c-head-bg-color":"#f2f2f2","--c-hover-color":"#e6e6e6","--c-stripe-color":"#f6f6f6"}),le=t((()=>{var e,t;const o=null!=(t=null==(e=oe.tableConfig)?void 0:e.height)?t:"100%";return{height:"auto"===o?"100%":$(o)&&(o.includes("calc")||o.endsWith("%"))?o:_(o)}})),ne=U(),se=function(e,...t){Z(e,...t);const o=c(de)[X(e)];w(o)&&o(...t),ne.trigger(e,...t)};o(F,se);const re=R(t((()=>oe.requestInstance)),t((()=>!!oe.uniqueCacheData))).create(oe.parallelism,{beforeRequest:(e,t)=>t,afterRequest:(e,t)=>H(t)});o(O,re);const ie=G();o(B,t((()=>oe.annotation)));const ue=A();o(E,ue);const ce=a();o(N,ce);const de=a({uuid:null!=(te=null==(ee=oe.tableConfig)?void 0:ee.uuid)?te:ue});o(V,de);const fe=j(me,10);function me(){de.value=J(ie,oe.tableConfig,{$table:ce,emits:se}),de.value.uuid=ue}const ve=a([]);o(W,ve);const pe=j(he,10);function he(){const e=K(ie,oe.fieldList,de.value,{$table:ce,emits:se});I(e,l(ve.value),((e,t)=>{if(w(e)&&w(t))return e.toString()===t.toString()}))||(ve.value=e)}const be=Q(ie,de,ce),ge=a([]);async function xe(){var e,t;const o=await be(oe.tableData),a=null==(e=ce.value)?void 0:e.getTableData().fullData;if(a){let e=0;if(!(a.some((t=>{var a;if(!(null==(a=ce.value)?void 0:a.isInsertByRow(t))){if(t!==o[e])return!0;e++}}))||e!==o.length))return}ge.value=o,null==(t=ce.value)||t.recalculate(!0)}const ke={updateTableDataRef:j(xe,10),updateConfigRef:fe,updateFieldListRef:pe};o(z,ke);const ye=M({hooks:ie,config:de,$table:ce,context:ke,emits:se}),De=t((()=>({...de.value,...ye})));let Ce=!1,je=!1,$e=!1;const Ie=j((()=>{Ce&&me(),je&&he(),$e&&xe(),Ce=!1,je=!1,$e=!1}),10);n((()=>oe.tableConfig),(()=>{Ce=!0,je=!0,$e=!0,Ie()}),{deep:!0}),n((()=>oe.fieldList),(()=>{je=!0,$e=!0,Ie()}),{deep:!0}),n([()=>[...oe.tableData],()=>{var e;return null==(e=oe.tableData)?void 0:e.length}],(()=>{$e=!0,Ie()})),n([()=>oe.tableData,()=>{var e;return null==(e=oe.tableData)?void 0:e.length}],(async()=>{var e,t;(null==(e=de.value.treeConfig)?void 0:e.expandAll)&&(await T(11),null==(t=ce.value)||t.setAllTreeExpand(!0))})),me(),he(),xe();const{header:we,footer:qe}=P(ie);function Re(e){return q(e,["row","rowIndex","$rowIndex","column","columnIndex","$columnIndex","_columnIndex","checked","disabled","indeterminate"])}return S({$table:ce,async loadData(e){var t;null==(t=ce.value)||t.loadData(await be(e))},setSort:(e,t)=>({field:e,value:t}),setFilter:(e,t)=>({field:e,value:t}),reload(){var e,t;null==(e=ce.value)||e.loadColumn([]),null==(t=ce.value)||t.loadData([]),me(),he(),xe()},...ie.exposeHooks.expose.call({},de,{$table:ce,emits:se})}),ie.setupHooks.setup.call(de,ve,{$table:ce,emits:se}),(e,t)=>{const o=s("vxe-grid");return r(),i("section",u({class:"iho-table",id:c(ue),style:c(ae)},c(L)()),[(r(),d(f(c(we)))),m("section",{style:v(c(le))},[p(o,u({ref_key:"$table",ref:ce},c(De),{columns:ve.value,data:ge.value}),h({_:2},[b(e.$slots,((t,o)=>({name:o,fn:g((t=>[x(" 实际上所有的vxe-grid插槽都支持 "),k(e.$slots,o,y(D(Re(t))))]))})))]),1040,["columns","data"])],4),(r(),d(f(c(qe))))],16,Y)}}});export{Z as default};
@@ -29,14 +29,14 @@ declare const _default: import("vue").DefineComponent<{
29
29
  type: StringConstructor;
30
30
  default: string;
31
31
  };
32
- allowModify: BooleanConstructor;
32
+ allowModify: {
33
+ type: BooleanConstructor;
34
+ };
33
35
  allowCreate: {
34
36
  type: BooleanConstructor;
35
- default: boolean;
36
37
  };
37
38
  shouldSave: {
38
39
  type: BooleanConstructor;
39
- default: boolean;
40
40
  };
41
41
  consistentMenuWidth: {
42
42
  type: BooleanConstructor;
@@ -58,7 +58,6 @@ declare const _default: import("vue").DefineComponent<{
58
58
  };
59
59
  multiple: {
60
60
  type: BooleanConstructor;
61
- default: boolean;
62
61
  };
63
62
  deletable: {
64
63
  type: BooleanConstructor;
@@ -68,6 +67,9 @@ declare const _default: import("vue").DefineComponent<{
68
67
  type: BooleanConstructor;
69
68
  default: boolean;
70
69
  };
70
+ searchByValue: {
71
+ type: BooleanConstructor;
72
+ };
71
73
  }, () => 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<{
72
74
  value: {
73
75
  type: PropType<string | number | (string | number)[]>;
@@ -95,14 +97,14 @@ declare const _default: import("vue").DefineComponent<{
95
97
  type: StringConstructor;
96
98
  default: string;
97
99
  };
98
- allowModify: BooleanConstructor;
100
+ allowModify: {
101
+ type: BooleanConstructor;
102
+ };
99
103
  allowCreate: {
100
104
  type: BooleanConstructor;
101
- default: boolean;
102
105
  };
103
106
  shouldSave: {
104
107
  type: BooleanConstructor;
105
- default: boolean;
106
108
  };
107
109
  consistentMenuWidth: {
108
110
  type: BooleanConstructor;
@@ -124,7 +126,6 @@ declare const _default: import("vue").DefineComponent<{
124
126
  };
125
127
  multiple: {
126
128
  type: BooleanConstructor;
127
- default: boolean;
128
129
  };
129
130
  deletable: {
130
131
  type: BooleanConstructor;
@@ -134,6 +135,9 @@ declare const _default: import("vue").DefineComponent<{
134
135
  type: BooleanConstructor;
135
136
  default: boolean;
136
137
  };
138
+ searchByValue: {
139
+ type: BooleanConstructor;
140
+ };
137
141
  }>> & {
138
142
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
139
143
  }, {
@@ -147,6 +151,7 @@ declare const _default: import("vue").DefineComponent<{
147
151
  selectAll: boolean;
148
152
  shouldSave: boolean;
149
153
  allowCreate: boolean;
154
+ searchByValue: boolean;
150
155
  consistentMenuWidth: boolean;
151
156
  }>;
152
157
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as l,ref as o,computed as t,onBeforeUnmount as n,nextTick as a,createVNode as r,toRaw as u}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import{isFunction as s,isEmpty as d,isArray as c,isObject as p,omit as v,cloneDeep as f,xor as m}from"lodash-es";import{NSelect as y}from"naive-ui";import{useVModel as h,useDebounceFn as b}from"@vueuse/core";import"date-fns";import"@vue/shared";import{useSelectAllowModify as w}from"../../../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import{useOptionFiltered as S}from"../../../../../../../shared/hooks/selectHooks/useOptionFiltered.js";import"../../../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as g}from"../../../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{InjectionIhoTableUUID as F}from"../../../../constants/index.js";import{useIhoTableFormEvent as O}from"../../../../utils/index.js";import{getSelectOptions as k,selectOptionsMap as j}from"../hooks/useSelectOption.js";var x=e({name:"EditSelect",props:{value:{type:[Array,String,Number]},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0},options:{type:Array,default:()=>[]},queryOptions:{type:Function},placeholder:{type:String,default:"请选择"},allowModify:Boolean,allowCreate:{type:Boolean,default:!1},shouldSave:{type:Boolean,default:!1},consistentMenuWidth:{type:Boolean,default:!0},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},aliasField:{type:String},menuProps:{type:Object},multiple:{type:Boolean,default:!1},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean,default:!0}},emits:["update:value"],setup(e,{emit:x}){const $=l("$xetable"),q=h(e,"value",x),B=o(null),{emitFormChangeWithParams:C}=O({...e,$table:$}),R=t((()=>e.labelField)),A=t((()=>e.valueField)),K=t((()=>e.aliasField)),{fullOptions:M,filterOptions:P,searchContent:_,remoteOptions:E}=S(e,R),{modifyEvent:H,modifyAbleRef:T,getOptionsWithCreated:W}=w(e,{searchContent:_,labelKey:R,valueKey:A,valueRef:q,fullOptions:M}),D=t((()=>W(T.value?M.value:P.value))),V=o(!1),I=b((async function(l=""){_.value=l;try{if(V.value=!0,!s(e.queryOptions)||!d(e.options))return;E.value=await e.queryOptions({keyword:l,row:e.row,column:e.column,rowIndex:e.rowIndex})}catch(l){console.log(`获取${e.column.field}options错误`)}finally{V.value=!1}}),400),L=l(F);function N(){U(),I()}async function U(l=!1){var o,t,n;if(!e.multiple)return;await a();const{refTableLeftBody:r,refTableBody:u}=$.getRefMaps(),i=null==(o=null==r?void 0:r.value)?void 0:o.$el;if(!i)return;const s=null==(t=null==u?void 0:u.value)?void 0:t.$el,d=$.getRowid(e.row),c=null==(n=s.querySelector(`.vxe-body--row[rowid="${d}"]`))?void 0:n.clientHeight;i.querySelector(`.vxe-body--row[rowid="${d}"]`).style.height=l?"unset":c+"px"}async function z(l,o){var t,n;const a=e.value;await H.updateValue(l,o);const r=k(L,e.column.field,e.row,$);L&&c(r)&&i(o).forEach((e=>{if(!p(e))return;const l=e;l.created&&l.shouldSave&&r.push(v(u(l),["created","shouldSave"]))}));const s=null==(t=e.column.editRender)?void 0:t.props;if(L&&(null==s?void 0:s.connectField)){const o=null==(n=s.connectField)?void 0:n.split(","),t=j.get(L);o.forEach((async o=>{var n;const{tableColumn:a}=$.reactData,r=a.find((e=>e.field===o)),u=null==(n=null==r?void 0:r.editRender)?void 0:n.props;if(null==u?void 0:u.queryOptions){const n=l?`${o}__${e.column.field}-${l}`:o;if(t[n])return;t[n]=await u.queryOptions({row:e.row,column:r,isFullData:!0,connectColumn:e.column})}}))}return C({oldValue:a,option:f(o)}),U()}function G(e){var l,o;"Tab"===e.key&&B.value&&(null==(o=(l=B.value).handleKeydown)||o.call(l,{...e,key:"Enter",preventDefault:e.preventDefault.bind(e)}))}n((()=>U(!0)));const{renderTag:J,renderLabel:Q,renderSelectAll:X}=g(e,{labelKey:R,valueKey:A,valueRef:q,showKey:K,searchContent:_});function Y(l){if(!e.multiple)return;const o=l?D.value.map((e=>e[A.value])):[];if(!m(o,q.value).length)return;const t=q.value;q.value=o,C({oldValue:t,option:l?D.value:[]})}const Z=()=>({class:"iho-table__selectOption"}),ee=t((()=>{var l,o;return{...e.menuProps,class:`iho-table__selectMenu ${null!=(o=null==(l=e.menuProps)?void 0:l.class)?o:""}`}}));return()=>{const l={};return e.multiple&&e.selectAll&&(l.action=()=>X(Y)),r(y,{ref:B.value,consistentMenuWidth:e.consistentMenuWidth,placeholder:e.placeholder,labelField:e.labelField,valueField:e.valueField,loading:V.value,options:D.value,multiple:e.multiple,value:e.value,remote:!0,onSearch:I,clearable:!0,filterable:!0,nodeProps:Z,menuProps:ee.value,renderTag:J,renderLabel:Q,onUpdateShow:N,onUpdateValue:z,onKeydown:G,onFocus:H.focus,onBlur:H.blur},l)}}});export{x as default};
1
+ import{defineComponent as e,inject as l,ref as o,computed as t,onBeforeUnmount as n,nextTick as a,createVNode as r,toRaw as u}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import{isFunction as s,isEmpty as d,isArray as c,isObject as p,omit as v,cloneDeep as f,xor as m}from"lodash-es";import{NSelect as y}from"naive-ui";import{useVModel as h,useDebounceFn as b}from"@vueuse/core";import"date-fns";import"@vue/shared";import{useSelectAllowModify as w}from"../../../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import{useOptionFiltered as S}from"../../../../../../../shared/hooks/selectHooks/useOptionFiltered.js";import"../../../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as g}from"../../../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{InjectionIhoTableUUID as F}from"../../../../constants/index.js";import{useIhoTableFormEvent as O}from"../../../../utils/index.js";import{getSelectOptions as k,selectOptionsMap as B}from"../hooks/useSelectOption.js";var j=e({name:"EditSelect",props:{value:{type:[Array,String,Number]},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0},options:{type:Array,default:()=>[]},queryOptions:{type:Function},placeholder:{type:String,default:"请选择"},allowModify:{type:Boolean},allowCreate:{type:Boolean},shouldSave:{type:Boolean},consistentMenuWidth:{type:Boolean,default:!0},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},aliasField:{type:String},menuProps:{type:Object},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean,default:!0},searchByValue:{type:Boolean}},emits:["update:value"],setup(e,{emit:j}){const x=l("$xetable"),$=h(e,"value",j),q=o(null),{emitFormChangeWithParams:C}=O({...e,$table:x}),K=t((()=>e.labelField)),R=t((()=>e.valueField)),A=t((()=>e.aliasField)),{fullOptions:M,filterOptions:P,searchContent:_,remoteOptions:E}=S(e,{labelKey:K,valueKey:R}),{modifyEvent:H,modifyAbleRef:T,getOptionsWithCreated:V}=w(e,{searchContent:_,labelKey:K,valueKey:R,valueRef:$,fullOptions:M}),W=t((()=>V(T.value?M.value:P.value))),D=o(!1),I=b((async function(l=""){_.value=l;try{if(D.value=!0,!s(e.queryOptions)||!d(e.options))return;E.value=await e.queryOptions({keyword:l,row:e.row,column:e.column,rowIndex:e.rowIndex})}catch(l){console.log(`获取${e.column.field}options错误`)}finally{D.value=!1}}),400),L=l(F);function N(){U(),I()}async function U(l=!1){var o,t,n;if(!e.multiple)return;await a();const{refTableLeftBody:r,refTableBody:u}=x.getRefMaps(),i=null==(o=null==r?void 0:r.value)?void 0:o.$el;if(!i)return;const s=null==(t=null==u?void 0:u.value)?void 0:t.$el,d=x.getRowid(e.row),c=null==(n=s.querySelector(`.vxe-body--row[rowid="${d}"]`))?void 0:n.clientHeight;i.querySelector(`.vxe-body--row[rowid="${d}"]`).style.height=l?"unset":c+"px"}async function z(l,o){var t,n;const a=e.value;await H.updateValue(l,o);const r=k(L,e.column.field,e.row,x);L&&c(r)&&i(o).forEach((e=>{if(!p(e))return;const l=e;l.created&&l.shouldSave&&r.push(v(u(l),["created","shouldSave"]))}));const s=null==(t=e.column.editRender)?void 0:t.props;if(L&&(null==s?void 0:s.connectField)){const o=null==(n=s.connectField)?void 0:n.split(","),t=B.get(L);o.forEach((async o=>{var n;const{tableColumn:a}=x.reactData,r=a.find((e=>e.field===o)),u=null==(n=null==r?void 0:r.editRender)?void 0:n.props;if(null==u?void 0:u.queryOptions){const n=l?`${o}__${e.column.field}-${l}`:o;if(t[n])return;t[n]=await u.queryOptions({row:e.row,column:r,isFullData:!0,connectColumn:e.column})}}))}return C({oldValue:a,option:f(o)}),U()}function G(e){var l,o;"Tab"===e.key&&q.value&&(null==(o=(l=q.value).handleKeydown)||o.call(l,{...e,key:"Enter",preventDefault:e.preventDefault.bind(e)}))}n((()=>U(!0)));const{renderTag:J,renderLabel:Q,renderSelectAll:X}=g(e,{labelKey:K,valueKey:R,valueRef:$,showKey:A,searchContent:_});function Y(l){if(!e.multiple)return;const o=l?W.value.map((e=>e[R.value])):[];if(!m(o,$.value).length)return;const t=$.value;$.value=o,C({oldValue:t,option:l?W.value:[]})}const Z=()=>({class:"iho-table__selectOption"}),ee=t((()=>{var l,o;return{...e.menuProps,class:`iho-table__selectMenu ${null!=(o=null==(l=e.menuProps)?void 0:l.class)?o:""}`}}));return()=>{const l={};return e.multiple&&e.selectAll&&(l.action=()=>X(Y)),r(y,{ref:q.value,consistentMenuWidth:e.consistentMenuWidth,placeholder:e.placeholder,labelField:e.labelField,valueField:e.valueField,loading:D.value,options:W.value,multiple:e.multiple,value:e.value,remote:!0,onSearch:I,clearable:!0,filterable:!0,nodeProps:Z,menuProps:ee.value,renderTag:J,renderLabel:Q,onUpdateShow:N,onUpdateValue:z,onKeydown:G,onFocus:H.focus,onBlur:H.blur},l)}}});export{j as default};