UNPKG

@aplus-frontend/ui

Version:

2 lines (1 loc) 6.39 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),r=require("@aplus-frontend/antdv");require("../ap-form.vue.js");require("../item/index.vue2.js");const W=require("../item-group/helper.js");require("../../config-provider/index.js");const S=require("lodash-unified"),D=require("../../utils/index.js"),F=require("./utils.js");require("./components/popover-filter.vue.js");const X=require("./hooks/use-count-per-row.js");require("./components/popover-sorter/index.vue.js");const Y=require("./hooks/use-sorter.js"),Z=require("./hooks/use-collapse-input-count.js"),O=require("@fruits-chain/utils"),ee=require("../../utils/warning.js"),te=require("../../config-provider/hooks/use-namespace.js"),ne=require("../../config-provider/hooks/use-locale.js"),z=require("../item/index.vue.js"),oe=require("./components/popover-filter.vue2.js"),ae=require("./components/popover-sorter/index.vue2.js"),re=require("../ap-form.vue2.js");function le(d){return typeof d=="function"||Object.prototype.toString.call(d)==="[object Object]"&&!e.isVNode(d)}const l=100,se=e.defineComponent({name:"ApFormSearchForm",__name:"index",props:{layout:{default:"horizontal"},labelCol:{},wrapperCol:{},colon:{type:Boolean,default:!0},labelAlign:{default:"right"},labelWrap:{type:Boolean},prefixCls:{},requiredMark:{},hideRequiredMark:{type:Boolean,default:!1},rules:{},validateMessages:{},validateOnRuleChange:{type:Boolean,default:!0},scrollToFirstError:{},onSubmit:{},name:{},validateTrigger:{default:"change"},size:{},disabled:{type:Boolean},onFieldsChange:{},onFinish:{},onFinishFailed:{},onValidate:{},variant:{},initialValues:{},onValuesChange:{},syncToUrl:{type:[Boolean,Function]},syncToUrlPriority:{type:Boolean},collapse:{type:Boolean,default:void 0},defaultCollapse:{type:Boolean,default:!0},"onUpdate:collapse":{},searchText:{},resetText:{},onReset:{},customReset:{type:Boolean,default:!1},extraInAction:{type:Boolean,default:!1},forceExpand:{type:Boolean,default:!1},countPerRow:{default:5},submitLoading:{type:Boolean},maxRows:{default:2},sortable:{type:Boolean,default:!0},resizeTarget:{},resize:{},loadingDelay:{default:300}},setup(d,{expose:L}){const g=e.useSlots(),n=d;ee.useDevWarning("SearchForm").deprecated(typeof n.resizeTarget<"u","resizeTarget","resize.target");const{b:p}=te.useNamespace("ap-form-search-form"),{t:R}=ne.useLocale(),x=e.ref(),B=e.ref(),j=X.useCountPerRow(n,B),b=e.ref();function k(){const t=x.value?.getFieldsValueTransformed(!0);F.execFunc(n.onSubmit,t)}function $(){n.customReset||x.value?.resetFields?.(),F.execFunc(n.onReset)}const M=t=>D.isDef(t)?(S.isArray(t)?t:[t]).join(""):Date.now();let q=[];const f=e.shallowRef(W.genRealChildren(g.default())),c=e.shallowRef(g.extra?.()),V=e.computed(()=>O.floorWith(l/e.unref(j),4)),{items:v,sorted:A,handleClickConfirm:C}=Y.useSorter(f);e.watch(()=>g.default(),t=>{q=f.value,f.value=F.diffFormItem(q,W.genRealChildren(t)),A.value=!1}),e.watch(()=>g.extra?.(),t=>{c.value=t});function U(t){return O.floorWith(t*(l/24),4)}const o=e.computed(()=>{const t=f.value,i=[],a=[],h=[],s=e.unref(V);let y=0,N=0;const J=l*n.maxRows-s*(e.unref(c)&&!n.extraInAction?2:1);t.forEach(w=>{const T=Z.getTargetNode(w);if(!T)return;const u=T.props;if(S.isBoolean(u.hidden)?!!u.hidden:D.isDef(u.hidden))i.push(w);else{let _=u.span?U(u.span):s;const P={node:w,span:_,key:`ApFormSearchFormItem-${M(u.name)}-${u._signal}`},E=l-y%l;E<_&&(_+=E),y+=_,y>J?a.push(P):(N=y,h.push(P))}});const I=l-(N+s)%l,K=Math.ceil(N)%l<s,Q=I<s?l:I;return{hideNode:e.createVNode(e.Fragment,null,[i]),nodes:h,collapseNodes:a,extraSpan:Q,lastRowOnlyIncludeActionAndExtra:K}}),m=t=>`${t}%`,H=e.computed(()=>{let t;const i=o.value.collapseNodes.length||n.sortable&&f.value.length,a=e.createVNode(r.Col,{flex:m(e.unref(V)),key:"actionWrapper"},{default:()=>[e.createVNode(z.default,null,{default:()=>[e.createVNode(r.Flex,{wrap:"wrap",justify:o.value.lastRowOnlyIncludeActionAndExtra&&!(e.unref(c)&&n.extraInAction)?"flex-end":"space-between"},{default:()=>[e.createVNode(r.Flex,{gap:8,wrap:"wrap"},{default:()=>[i?e.createVNode("div",{class:p("column-setting-trigger-wrapper")},[o.value.collapseNodes.length?e.createVNode(oe.default,{onSubmit:k,config:o.value.collapseNodes,submitLoading:n.submitLoading},null):null,n.sortable&&v.value.length?e.createVNode(ae.default,{ref:b,items:v.value,onClickConfirm:C,sorted:A.value},null):null]):null,e.createVNode(r.Button,{type:"primary",onClick:k,loading:n.submitLoading?{delay:n.loadingDelay}:!1,htmlType:"submit",class:p("action-btn")},{default:()=>[n.searchText||R("ap.apForm.search.search")]}),e.createVNode(r.Button,{onClick:$,type:"text",class:[p("action-btn"),p("action-btn-reset")]},{default:()=>[n.resetText||R("ap.apForm.search.reset")]})]}),n.extraInAction?e.unref(c):null]})]})]}),h=!n.extraInAction&&e.unref(c)?e.createVNode(r.Col,{flex:m(o.value.extraSpan),key:"extraNode"},{default:()=>[e.createVNode(z.default,null,{default:()=>[e.createVNode(r.Flex,{justify:o.value.extraSpan===l||o.value.lastRowOnlyIncludeActionAndExtra?"start":"flex-end"},le(t=e.unref(c))?t:{default:()=>[t]})]})]}):null,s=e.createVNode(r.Col,{flex:m(o.value.extraSpan)},null);return o.value.lastRowOnlyIncludeActionAndExtra?e.createVNode(e.Fragment,null,[h||s,a]):e.createVNode(e.Fragment,null,[a,h])});function G(){const t=b.value?.getCachedList();C(t)}return L({apForm:e.computed(()=>e.unref(x)),getSorterItems:()=>v.value,setSorterItems:C,resetSorterItems:G}),(t,i)=>(e.openBlock(),e.createBlock(re.default,e.mergeProps({ref_key:"apForm",ref:x,class:e.unref(p)()},e.unref(S.omit)(n,["collapse","defaultCollapse","onUpdate:collapse","searchText","resetText","onSubmit","onReset","extraInAction","forceExpand","countPerRow"])),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value.hideNode))),e.createVNode(e.unref(r.Row),{ref_key:"contentWrapperRef",ref:B,gutter:8},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value.nodes,a=>(e.openBlock(),e.createBlock(e.unref(r.Col),{key:a.key,flex:m(a.span),style:e.normalizeStyle({maxWidth:m(a.span)})},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.node)))]),_:2},1032,["flex","style"]))),128)),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(H.value)))]),_:1},512)]),_:1},16,["class"]))}});exports.default=se;