@chewel611/naive-ui-plus 0.0.27 → 0.0.29
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.
- package/dist/index.js +795 -700
- package/dist/index.umd.cjs +1 -1
- package/dist/style.css +1 -1
- package/es/components.d.ts +1 -0
- package/es/components.js +15 -13
- package/es/index.js +21 -19
- package/es/layout/PLayout.css +1 -1
- package/es/layout/PLayout.vue.js +1 -1
- package/es/layout/PLayout.vue2.js +11 -9
- package/es/page/PPage.d.ts +48 -0
- package/es/page/PPage.vue.js +87 -0
- package/es/page/PPage.vue2.js +4 -0
- package/es/page/index.d.ts +66 -0
- package/es/page/index.js +6 -0
- package/es/table/PTable.vue.js +147 -136
- package/es/table/typing.d.ts +1 -0
- package/lib/components.cjs +1 -1
- package/lib/components.d.ts +1 -0
- package/lib/index.cjs +1 -1
- package/lib/layout/PLayout.css +1 -1
- package/lib/layout/PLayout.vue.cjs +1 -1
- package/lib/layout/PLayout.vue2.cjs +1 -1
- package/lib/page/PPage.d.ts +48 -0
- package/lib/page/PPage.vue.cjs +1 -0
- package/lib/page/PPage.vue2.cjs +1 -0
- package/lib/page/index.cjs +1 -0
- package/lib/page/index.d.ts +66 -0
- package/lib/table/PTable.vue.cjs +1 -1
- package/lib/table/typing.d.ts +1 -0
- package/package.json +1 -1
package/lib/table/PTable.vue.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("naive-ui"),e=require("vue"),b=require("@vicons/antd"),ne=require("../utils/helper.cjs"),ae=require("lodash"),ie={class:"text-lg font-medium"},se={id:"data-content"},de={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-4 mb-4"},re={key:1},ce={key:2},ue=e.defineComponent({__name:"PTable",props:{title:{},idField:{default:"id"},item:{default:{}},columns:{},modalWidth:{default:800},hiddenAdd:{type:Boolean,default:!1},hiddenEdit:{type:Boolean,default:!1},hiddenDelete:{type:Boolean,default:!1},onLoad:{},onGet:{},onOpenModal:{},onCloseModal:{},onSave:{},onDelete:{}},setup(c,{expose:z}){const E=e.ref(null),L=i.useDialog(),p=i.useMessage(),v=e.ref(!1),y=e.ref([]),C=e.ref([]),u=e.ref(null),g=e.ref(!1),m=e.ref(!1),k=e.ref(!1),M=e.ref({}),f=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async t=>{f.value.page=t,await h()},onUpdatePageSize:async t=>{f.value.pageSize=t,await h()}}),l=c,H=t=>{const o=n=>{const a=[];return t&&t.forEach(d=>{d.key!=="edit"&&d.key!=="delete"&&a.push({label:d.name,key:d.key,props:{onClick:()=>d.action(n)}})}),a};return{title:"操作",key:"actions",width:100,fixed:"right",render:n=>{let a=[];if(l.hiddenEdit||a.push({label:"编辑",key:"edit",props:{onClick:()=>A(n)}}),l.hiddenDelete||a.push({label:"删除",key:"delete",props:{onClick:()=>q(n)}}),a=[...a,...o(n)],!(a.length<=0))return e.h(i.NDropdown,{options:a,placement:"bottom-start"},{default:()=>e.h(i.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(i.NIcon,()=>e.h(b.MoreOutlined))]})})}}},I=e.computed(()=>{const t=l.columns.filter(n=>n.key!="action").map(n=>({title:n.title,key:n.key,width:n.width,fixed:n.fixed??!1,render:n.render,ellipsis:n.ellipsis?{tooltip:!0}:!1})),o=l.columns.reduce((n,a)=>a.key==="action"?a:n,void 0)?.action;return o&&o?.length>0||!l.hiddenDelete||!l.hiddenEdit?[{type:"selection",fixed:"left"},...t,H(o)]:[{type:"selection",fixed:"left"},...t]}),j=async()=>{await h()},q=t=>{D([t])},P=()=>{const t=x();D(t)},D=t=>{t&&t.length>0&&L.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(l.onDelete)try{await l.onDelete(t)?(h(),p.success("删除成功")):p.error("删除失败")}catch(o){p.error(o.message)}}})},W=()=>{u.value=null,T()},A=async t=>{u.value=ae.cloneDeep(t),T(u.value,async()=>{l.onGet&&(u.value=await l.onGet(t[l.idField])),Object.assign(l.item,u.value)})},R=async()=>{if(l.onSave)try{k.value=!0,(g.value?await l.onSave(void 0,e.toRaw(l.item)):await l.onSave(u.value[l.idField],e.toRaw(l.item)))&&(N(),await h())}catch(t){p.error(t.message)}finally{k.value=!1}},T=async(t,o)=>{l.onOpenModal?.(t),await o?.(),t?(g.value=!1,m.value=!0):(m.value=!1,g.value=!0)},N=()=>{u.value=null,ne.resetObject(l.item),Object.assign(l.item,{...e.toRaw(M.value)}),l.onCloseModal?.(l.item),g.value=!1,m.value=!1},x=()=>y.value?C.value.filter(o=>y.value.includes(o.id)).map(o=>e.toRaw(o)):[],U=()=>x()[0],F=()=>e.toRaw(C.value),h=async()=>{if(!v.value){v.value=!0;try{if(l.onLoad){var{data:t,total:o}=await l.onLoad(f.value.page,f.value.pageSize);C.value=t,f.value.itemCount=o}}catch(n){p.error(n.message)}finally{v.value=!1}}},G=e.computed(()=>{const t=e.unref(E);if(!t)return;const o=t?.$el,n=o.querySelector(".n-data-table-thead "),{bottomIncludeBody:a}=X(n),d=48;let r=12,s=24;const w=o.querySelector(".n-data-table__pagination");if(w){const V=w.offsetHeight;r+=V||0}else r+=28;return a-(d+r+s)}),K=t=>!t||!t.getBoundingClientRect?0:t.getBoundingClientRect(),X=t=>{const o=document.documentElement,n=o.scrollLeft,a=o.scrollTop,d=o.clientLeft,r=o.clientTop,s=window.pageXOffset,w=window.pageYOffset,O=K(t),{left:V,top:J,width:Q,height:Z}=O,ee=(s||n)-(d||0),te=(w||a)-(r||0),oe=V+s,le=J+w,S=oe-ee,B=le-te,_=window.document.documentElement.clientWidth,$=window.document.documentElement.clientHeight;return{left:S,top:B,right:_-Q-S,bottom:$-Z-B,rightIncludeBody:_-S,bottomIncludeBody:$-B}},Y=()=>{M.value={...e.toRaw(l.item)}};return e.onMounted(async()=>{Y(),await h()}),z({getData:F,getSelectedRow:U,getSelectedRows:x,closeModal:N,refreshData:h,resetPage:()=>{f.value.page=1}}),(t,o)=>{const n=i.NTooltip,a=i.NSpace,d=i.NDataTable,r=i.NModal;return e.openBlock(),e.createBlock(e.unref(i.NCard),{bordered:!1},{header:e.withCtx(()=>[e.createVNode(a,{justify:"space-between",align:"center",class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",ie,e.toDisplayString(c.title),1),e.createVNode(a,null,{default:e.withCtx(()=>[c.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:W},{default:e.withCtx(()=>[e.createVNode(e.unref(b.PlusSquareOutlined))]),_:1})]),default:e.withCtx(()=>[o[3]||(o[3]=e.createElementVNode("span",null,"新增",-1))]),_:1})),c.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:P},{default:e.withCtx(()=>[e.createVNode(e.unref(b.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[o[4]||(o[4]=e.createElementVNode("span",null,"删除",-1))]),_:1})),e.createVNode(n,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:j},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[o[5]||(o[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",se,[t.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",de,[e.renderSlot(t.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(d,{remote:"",ref_key:"$table",ref:E,"checked-row-keys":y.value,"onUpdate:checkedRowKeys":o[0]||(o[0]=s=>y.value=s),"max-height":G.value,loading:v.value,bordered:!1,"single-line":!1,columns:I.value,data:C.value,pagination:f.value,"row-key":s=>s[c.idField]},null,8,["checked-row-keys","max-height","loading","columns","data","pagination","row-key"]),t.$slots.addModal?(e.openBlock(),e.createElementBlock("div",re,[e.createVNode(r,{title:"新增",preset:"card",show:g.value,"onUpdate:show":o[1]||(o[1]=s=>g.value=s),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${c.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(a,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.NButton),{type:"primary",loading:k.value,onClick:R},{default:e.withCtx(()=>[...o[6]||(o[6]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(i.NButton),{onClick:N},{default:e.withCtx(()=>[...o[7]||(o[7]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"addModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0),t.$slots.editModal?(e.openBlock(),e.createElementBlock("div",ce,[e.createVNode(r,{title:"编辑",show:m.value,"onUpdate:show":o[2]||(o[2]=s=>m.value=s),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${c.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(a,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.NButton),{type:"primary",loading:k.value,onClick:R},{default:e.withCtx(()=>[...o[8]||(o[8]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(i.NButton),{onClick:N},{default:e.withCtx(()=>[...o[9]||(o[9]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"editModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0)])]),_:3})}}});exports.default=ue;
|
package/lib/table/typing.d.ts
CHANGED