@aplus-frontend/ui
Version:
2 lines (1 loc) • 4.29 kB
JavaScript
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),l=require("@aplus-frontend/antdv");require("../../../config-provider/index.js");const y=require("../icons/line-eye.vue.js");require("../../../ap-form/ap-form.vue.js");const q=require("../../../ap-field/index.js");require("../../../ap-button/index.js");const D=require("dayjs"),S=require("../hooks/use-view-provide.js"),b=require("../utils/uuid.js"),f=require("lodash-unified"),F=require("../../../config-provider/hooks/use-locale.js"),z=require("../../../config-provider/hooks/use-namespace.js"),c=require("../../../ap-form/ap-form.vue2.js"),v=require("../../../ap-button/ap-button.vue.js"),T=e.defineComponent({__name:"main-button-content",props:{maxViewNum:{}},setup(w){const u=w,{t}=F.useLocale(),{b:n}=z.useNamespace("ap-view"),p=e.ref(),{tableKey:V,popoverOpen:i,viewList:o,saveDataSource:m,viewListCRUD:N}=S.useViewInject(),d=e.computed({get:()=>i.value&&o.value.length<u.maxViewNum+1,set:r=>{o.value.length<u.maxViewNum+1&&(i.value=r)}});e.watch(i,r=>{r&&(p.value?.resetFields(),setTimeout(()=>{p.value?.setFieldsValue({isDefault:!o.value.some(a=>a.isDefault)})}))});const h=async r=>{const{viewName:a,isDefault:s}=r,x=b.generateUniqueKey(),_=f.cloneDeep(m?.getSearchFormValues?.(!!m?.searchFormTransform)),g=f.cloneDeep(m?.getSearchFormSorterItems?.()),C={searchForm:_,sorterItems:g};await N.addView?.({tableKey:V,viewKey:x,viewName:a,isDefault:s,viewConfig:C}),i.value=!1};return(r,a)=>(e.openBlock(),e.createBlock(e.unref(l.Popover),{open:d.value,"onUpdate:open":a[1]||(a[1]=s=>d.value=s),placement:"bottom",trigger:"click",arrow:!1,"overlay-inner-style":{padding:"12px 16px"}},{content:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass([e.unref(n)("main-content-popover")])},[e.createVNode(c.default,{ref_key:"formRef",ref:p,layout:"vertical","initial-values":{viewName:`${e.unref(t)("ap.apView.newView")} ${e.unref(D)().format("YYYY-MM-DD").toString()}`},onFinish:h},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass([e.unref(n)("main-content-popover-title-content")])},[e.createElementVNode("div",{class:e.normalizeClass([e.unref(n)("main-content-popover-title-content-title")])},e.toDisplayString(e.unref(t)("ap.apView.saveNewView")),3),e.createVNode(c.default.FormItem,{name:"isDefault","value-prop-name":"checked"},{default:e.withCtx(()=>[e.createVNode(e.unref(l.Checkbox),null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("ap.apView.setDefault")),1)]),_:1})]),_:1})],2),e.createVNode(c.default.FormItem,{label:e.unref(t)("ap.apView.viewName"),name:"viewName",rules:[{required:!0,message:e.unref(t)("ap.apView.notEmpty")}]},{default:e.withCtx(()=>[e.createVNode(e.unref(q.ApField).Text,{placeholder:e.unref(t)("ap.apView.viewName"),maxlength:20,"show-count":""},null,8,["placeholder"])]),_:1},8,["label","rules"]),e.createVNode(c.default.FormItem,{class:e.normalizeClass([e.unref(n)("main-content-popover-btn")])},{default:e.withCtx(()=>[e.createVNode(e.unref(l.Space),{size:8},{default:e.withCtx(()=>[e.createVNode(e.unref(v.default),{size:"small",onClick:a[0]||(a[0]=s=>i.value=!1)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("ap.apView.cancel")),1)]),_:1}),e.createVNode(e.unref(v.default),{type:"primary",size:"small","html-type":"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("ap.apView.save")),1)]),_:1})]),_:1})]),_:1},8,["class"])]),_:1},8,["initial-values"])],2)]),default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass({[e.unref(n)("main-content")]:!0,[e.unref(n)("main-content-disabled")]:e.unref(o).length>=u.maxViewNum+1})},[e.createVNode(e.unref(l.Tooltip),{placement:"bottom"},e.createSlots({default:e.withCtx(()=>[e.createVNode(e.unref(l.Space),{size:4},{default:e.withCtx(()=>[e.createVNode(y.default,{class:e.normalizeClass([e.unref(n)("icon")])},null,8,["class"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("ap.apView.saveView")),1)]),_:1})]),_:2},[e.unref(o).length>=u.maxViewNum+1?{name:"title",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("ap.apView.maxTip")),1)]),key:"0"}:void 0]),1024)],2)]),_:1},8,["open"]))}});exports.default=T;