@chewel611/naive-ui-plus 0.0.19 → 0.0.21

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 (153) hide show
  1. package/LICENSE +21 -0
  2. package/dist/index.js +804 -676
  3. package/dist/index.umd.cjs +1 -1
  4. package/dist/style.css +1 -1
  5. package/es/application/PApplication.vue.js +16 -16
  6. package/es/application/index.d.ts +1 -2
  7. package/es/application/index.js +4 -4
  8. package/es/components.d.ts +9 -5
  9. package/es/components.js +20 -9
  10. package/es/error/P403.css +1 -0
  11. package/es/error/P403.d.ts +2 -0
  12. package/es/error/P403.vue.js +19 -0
  13. package/es/error/P404.css +1 -0
  14. package/es/error/P404.d.ts +2 -0
  15. package/es/error/P404.vue.js +19 -0
  16. package/es/error/P500.css +1 -0
  17. package/es/error/P500.d.ts +2 -0
  18. package/es/error/P500.vue.js +19 -0
  19. package/es/error/index.d.ts +39 -0
  20. package/es/error/index.js +10 -0
  21. package/es/iframe/PIframe.css +1 -0
  22. package/es/iframe/PIframe.d.ts +4 -0
  23. package/es/iframe/PIframe.vue.js +7 -0
  24. package/es/iframe/PIframe.vue2.js +46 -0
  25. package/es/iframe/index.d.ts +15 -0
  26. package/es/iframe/index.js +6 -0
  27. package/es/index.d.ts +5 -1
  28. package/es/index.js +34 -21
  29. package/es/languages/PLanguage.vue.js +28 -28
  30. package/es/languages/index.d.ts +3 -4
  31. package/es/languages/index.js +4 -5
  32. package/es/languages/store.d.ts +1 -1
  33. package/es/languages/store.js +1 -1
  34. package/es/layout/PEmptyLayout.d.ts +2 -0
  35. package/es/layout/PEmptyLayout.vue.js +11 -0
  36. package/es/layout/PLayout.css +1 -1
  37. package/es/layout/PLayout.vue.js +1 -1
  38. package/es/layout/PLayout.vue2.js +6 -6
  39. package/es/layout/content/PContent.vue.js +10 -10
  40. package/es/layout/content/PTabs.css +1 -1
  41. package/es/layout/content/PTabs.vue.js +2 -2
  42. package/es/layout/content/PTabs.vue2.js +60 -57
  43. package/es/layout/header/PHeader.css +1 -1
  44. package/es/layout/header/PHeader.vue.js +2 -2
  45. package/es/layout/header/PHeader.vue2.js +10 -17
  46. package/es/layout/index.d.ts +16 -3
  47. package/es/layout/index.js +6 -4
  48. package/es/layout/sider/PLogo.css +1 -1
  49. package/es/layout/sider/PLogo.vue.js +2 -2
  50. package/es/layout/sider/PLogo.vue2.js +5 -5
  51. package/es/layout/sider/PMenus.vue.js +5 -5
  52. package/es/layout/{layout.d.ts → store.d.ts} +236 -251
  53. package/es/layout/{layout.js → store.js} +1 -1
  54. package/es/layout/typing.d.ts +25 -0
  55. package/es/modal/PModal.d.ts +87 -59
  56. package/es/modal/PModal.vue.js +37 -38
  57. package/es/modal/index.d.ts +47 -33
  58. package/es/modal/index.js +4 -4
  59. package/es/modal/typing.d.ts +2 -2
  60. package/es/oidc/POidc.css +1 -0
  61. package/es/oidc/POidc.d.ts +2 -0
  62. package/es/oidc/POidc.vue.js +7 -0
  63. package/es/oidc/POidc.vue2.js +25 -0
  64. package/es/oidc/index.d.ts +15 -0
  65. package/es/oidc/index.js +6 -0
  66. package/es/oidc/store.d.ts +17 -0
  67. package/es/oidc/store.js +24 -0
  68. package/es/oidc/typing.d.ts +5 -0
  69. package/es/redirect/PRedirect.d.ts +2 -0
  70. package/es/redirect/PRedirect.vue.js +19 -0
  71. package/es/redirect/PRedirect.vue2.js +4 -0
  72. package/es/redirect/index.d.ts +13 -0
  73. package/es/redirect/index.js +6 -0
  74. package/es/table/PTable.vue.js +114 -121
  75. package/es/table/index.d.ts +2 -2
  76. package/es/table/index.js +4 -4
  77. package/es/table/typing.d.ts +8 -8
  78. package/lib/application/PApplication.vue.cjs +1 -1
  79. package/lib/application/index.cjs +1 -1
  80. package/lib/application/index.d.ts +1 -2
  81. package/lib/components.cjs +1 -1
  82. package/lib/components.d.ts +9 -5
  83. package/lib/error/P403.css +1 -0
  84. package/lib/error/P403.d.ts +2 -0
  85. package/lib/error/P403.vue.cjs +1 -0
  86. package/lib/error/P404.css +1 -0
  87. package/lib/error/P404.d.ts +2 -0
  88. package/lib/error/P404.vue.cjs +1 -0
  89. package/lib/error/P500.css +1 -0
  90. package/lib/error/P500.d.ts +2 -0
  91. package/lib/error/P500.vue.cjs +1 -0
  92. package/lib/error/index.cjs +1 -0
  93. package/lib/error/index.d.ts +39 -0
  94. package/lib/iframe/PIframe.css +1 -0
  95. package/lib/iframe/PIframe.d.ts +4 -0
  96. package/lib/iframe/PIframe.vue.cjs +1 -0
  97. package/lib/iframe/PIframe.vue2.cjs +1 -0
  98. package/lib/iframe/index.cjs +1 -0
  99. package/lib/iframe/index.d.ts +15 -0
  100. package/lib/index.cjs +1 -1
  101. package/lib/index.d.ts +5 -1
  102. package/lib/languages/PLanguage.vue.cjs +1 -1
  103. package/lib/languages/index.cjs +1 -1
  104. package/lib/languages/index.d.ts +3 -4
  105. package/lib/languages/store.cjs +1 -1
  106. package/lib/languages/store.d.ts +1 -1
  107. package/lib/layout/PEmptyLayout.d.ts +2 -0
  108. package/lib/layout/PEmptyLayout.vue.cjs +1 -0
  109. package/lib/layout/PLayout.css +1 -1
  110. package/lib/layout/PLayout.vue.cjs +1 -1
  111. package/lib/layout/PLayout.vue2.cjs +1 -1
  112. package/lib/layout/content/PContent.vue.cjs +1 -1
  113. package/lib/layout/content/PTabs.css +1 -1
  114. package/lib/layout/content/PTabs.vue.cjs +1 -1
  115. package/lib/layout/content/PTabs.vue2.cjs +1 -1
  116. package/lib/layout/header/PHeader.css +1 -1
  117. package/lib/layout/header/PHeader.vue.cjs +1 -1
  118. package/lib/layout/header/PHeader.vue2.cjs +1 -1
  119. package/lib/layout/index.cjs +1 -1
  120. package/lib/layout/index.d.ts +16 -3
  121. package/lib/layout/sider/PLogo.css +1 -1
  122. package/lib/layout/sider/PLogo.vue.cjs +1 -1
  123. package/lib/layout/sider/PLogo.vue2.cjs +1 -1
  124. package/lib/layout/sider/PMenus.vue.cjs +1 -1
  125. package/lib/layout/{layout.cjs → store.cjs} +1 -1
  126. package/lib/layout/{layout.d.ts → store.d.ts} +236 -251
  127. package/lib/layout/typing.d.ts +25 -0
  128. package/lib/modal/PModal.d.ts +87 -59
  129. package/lib/modal/PModal.vue.cjs +1 -1
  130. package/lib/modal/index.cjs +1 -1
  131. package/lib/modal/index.d.ts +47 -33
  132. package/lib/modal/typing.d.ts +2 -2
  133. package/lib/oidc/POidc.css +1 -0
  134. package/lib/oidc/POidc.d.ts +2 -0
  135. package/lib/oidc/POidc.vue.cjs +1 -0
  136. package/lib/oidc/POidc.vue2.cjs +1 -0
  137. package/lib/oidc/index.cjs +1 -0
  138. package/lib/oidc/index.d.ts +15 -0
  139. package/lib/oidc/store.cjs +1 -0
  140. package/lib/oidc/store.d.ts +17 -0
  141. package/lib/oidc/typing.d.ts +5 -0
  142. package/lib/redirect/PRedirect.d.ts +2 -0
  143. package/lib/redirect/PRedirect.vue.cjs +1 -0
  144. package/lib/redirect/PRedirect.vue2.cjs +1 -0
  145. package/lib/redirect/index.cjs +1 -0
  146. package/lib/redirect/index.d.ts +13 -0
  147. package/lib/table/PTable.vue.cjs +1 -1
  148. package/lib/table/index.cjs +1 -1
  149. package/lib/table/index.d.ts +2 -2
  150. package/lib/table/typing.d.ts +8 -8
  151. package/package.json +21 -24
  152. package/es/typing.d.ts +0 -5
  153. package/lib/typing.d.ts +0 -5
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("naive-ui"),e=require("vue"),N=require("@vicons/antd"),ne=require("../utils/helper.cjs"),ae=require("lodash"),se={id:"data-content"},ie={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-5 mb-5"},re={key:1},de={key:2},ce=e.defineComponent({__name:"PTable",props:{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($,{expose:z}){const S=e.ref(null),L=s.useDialog(),h=s.useMessage(),v=e.ref(!1),w=e.ref([]),y=e.ref([]),c=e.ref(null),p=e.ref(!1),g=e.ref(!1),k=e.ref(!1),B=e.ref({}),u=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async t=>{u.value.page=t,await f()},onUpdatePageSize:async t=>{u.value.pageSize=t,await f()}}),l=$,H=t=>{const o=n=>{const a=[];return t&&t.forEach(i=>{i.key!=="edit"&&i.key!=="delete"&&a.push({label:i.name,key:i.key,props:{onClick:()=>i.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:()=>j(n)}}),a=[...a,...o(n)],!(a.length<=0))return e.h(s.NDropdown,{options:a,placement:"bottom-start"},{default:()=>e.h(s.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(s.NIcon,()=>e.h(N.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]}),q=async()=>{await f()},j=t=>{E([t])},P=()=>{const t=b();E(t)},E=t=>{t&&t.length>0&&L.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(l.onDelete)try{await l.onDelete(t)?(f(),h.success("删除成功")):h.error("删除失败")}catch(o){h.error(o.message)}}})},W=()=>{c.value=null,D()},A=async t=>{c.value=ae.cloneDeep(t),D(c.value,async()=>{l.onGet&&(c.value=await l.onGet(t[l.idField])),Object.assign(l.item,c.value)})},M=async()=>{if(l.onSave)try{k.value=!0,(p.value?await l.onSave(void 0,e.toRaw(l.item)):await l.onSave(c.value[l.idField],e.toRaw(l.item)))&&(C(),await f())}catch(t){h.error(t.message)}finally{k.value=!1}},D=async(t,o)=>{l.onOpenModal?.(t),await o?.(),t?(p.value=!1,g.value=!0):(g.value=!1,p.value=!0)},C=()=>{c.value=null,ne.resetObject(l.item),Object.assign(l.item,{...e.toRaw(B.value)}),l.onCloseModal?.(l.item),p.value=!1,g.value=!1},b=()=>w.value?y.value.filter(o=>w.value.includes(o.id)).map(o=>e.toRaw(o)):[],U=()=>b()[0],F=()=>e.toRaw(y.value),f=async()=>{if(!v.value){v.value=!0;try{if(l.onLoad){var{data:t,total:o}=await l.onLoad(u.value.page,u.value.pageSize);y.value=t,u.value.itemCount=o}}catch(n){h.error(n.message)}finally{v.value=!1}}},G=e.computed(()=>{const t=e.unref(S);if(!t)return;const o=t?.$el,n=o.querySelector(".n-data-table-thead "),{bottomIncludeBody:a}=X(n),i=64;let d=2,r=24;const m=o.querySelector(".n-data-table__pagination");if(m){const x=m.offsetHeight;d+=x||0}else d+=28;return a-(i+d+r)}),K=t=>!t||!t.getBoundingClientRect?0:t.getBoundingClientRect(),X=t=>{const o=document.documentElement,n=o.scrollLeft,a=o.scrollTop,i=o.clientLeft,d=o.clientTop,r=window.pageXOffset,m=window.pageYOffset,R=K(t),{left:x,top:J,width:Q,height:Z}=R,ee=(r||n)-(i||0),te=(m||a)-(d||0),oe=x+r,le=J+m,V=oe-ee,_=le-te,T=window.document.documentElement.clientWidth,O=window.document.documentElement.clientHeight;return{left:V,top:_,right:T-Q-V,bottom:O-Z-_,rightIncludeBody:T-V,bottomIncludeBody:O-_}},Y=()=>{B.value={...e.toRaw(l.item)}};return e.onMounted(async()=>{Y(),await f()}),z({getData:F,getSelectedRow:U,getSelectedRows:b,closeModal:C,refreshData:f,resetPage:()=>{u.value.page=1}}),(t,o)=>{const n=s.NTooltip,a=s.NDataTable,i=s.NSpace,d=s.NModal;return e.openBlock(),e.createBlock(e.unref(s.NCard),{title:" ","header-class":"p-4","content-class":"pl-4 pr-4",bordered:!1},{"header-extra":e.withCtx(()=>[t.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:W},{default:e.withCtx(()=>[e.createVNode(e.unref(N.PlusSquareOutlined))]),_:1})]),default:e.withCtx(()=>[o[3]||(o[3]=e.createElementVNode("span",null,"新增",-1))]),_:1,__:[3]})),t.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:P},{default:e.withCtx(()=>[e.createVNode(e.unref(N.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[o[4]||(o[4]=e.createElementVNode("span",null,"删除",-1))]),_:1,__:[4]})),e.createVNode(n,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:q},{default:e.withCtx(()=>[e.createVNode(e.unref(N.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[o[5]||(o[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1,__:[5]})]),default:e.withCtx(()=>[e.createElementVNode("div",se,[t.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",ie,[e.renderSlot(t.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(a,{remote:"",ref_key:"$table",ref:S,"checked-row-keys":w.value,"onUpdate:checkedRowKeys":o[0]||(o[0]=r=>w.value=r),"max-height":G.value,loading:v.value,bordered:!1,"single-line":!1,columns:I.value,data:y.value,pagination:u.value,"row-key":r=>r[t.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(d,{title:"新增",preset:"card",show:p.value,"onUpdate:show":o[1]||(o[1]=r=>p.value=r),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${t.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(i,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(s.NButton),{type:"primary",loading:k.value,onClick:M},{default:e.withCtx(()=>o[6]||(o[6]=[e.createTextVNode("保存",-1)])),_:1,__:[6]},8,["loading"]),e.createVNode(e.unref(s.NButton),{onClick:C},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode("取消",-1)])),_:1,__:[7]})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"addModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0),t.$slots.editModal?(e.openBlock(),e.createElementBlock("div",de,[e.createVNode(d,{title:"编辑",show:g.value,"onUpdate:show":o[2]||(o[2]=r=>g.value=r),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${t.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(i,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(s.NButton),{type:"primary",loading:k.value,onClick:M},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode("保存",-1)])),_:1,__:[8]},8,["loading"]),e.createVNode(e.unref(s.NButton),{onClick:C},{default:e.withCtx(()=>o[9]||(o[9]=[e.createTextVNode("取消",-1)])),_:1,__:[9]})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"editModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0)])]),_:3})}}});exports.default=ce;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("naive-ui"),e=require("vue"),b=require("@vicons/antd"),ne=require("../utils/helper.cjs"),ae=require("lodash"),se={id:"data-content"},ie={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-5 mb-5"},re={key:1},de={key:2},ce=e.defineComponent({__name:"PTable",props:{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(p,{expose:L}){const E=e.ref(null),_=s.useDialog(),g=s.useMessage(),w=e.ref(!1),y=e.ref([]),k=e.ref([]),c=e.ref(null),h=e.ref(!1),m=e.ref(!1),C=e.ref(!1),M=e.ref({}),u=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async t=>{u.value.page=t,await f()},onUpdatePageSize:async t=>{u.value.pageSize=t,await f()}}),l=p,H=t=>{const o=n=>{const a=[];return t&&t.forEach(i=>{i.key!=="edit"&&i.key!=="delete"&&a.push({label:i.name,key:i.key,props:{onClick:()=>i.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:()=>j(n)}}),a=[...a,...o(n)],!(a.length<=0))return e.h(s.NDropdown,{options:a,placement:"bottom-start"},{default:()=>e.h(s.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(s.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]}),q=async()=>{await f()},j=t=>{D([t])},P=()=>{const t=x();D(t)},D=t=>{t&&t.length>0&&_.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(l.onDelete)try{await l.onDelete(t)?(f(),g.success("删除成功")):g.error("删除失败")}catch(o){g.error(o.message)}}})},W=()=>{c.value=null,T()},A=async t=>{c.value=ae.cloneDeep(t),T(c.value,async()=>{l.onGet&&(c.value=await l.onGet(t[l.idField])),Object.assign(l.item,c.value)})},R=async()=>{if(l.onSave)try{C.value=!0,(h.value?await l.onSave(void 0,e.toRaw(l.item)):await l.onSave(c.value[l.idField],e.toRaw(l.item)))&&(N(),await f())}catch(t){g.error(t.message)}finally{C.value=!1}},T=async(t,o)=>{l.onOpenModal?.(t),await o?.(),t?(h.value=!1,m.value=!0):(m.value=!1,h.value=!0)},N=()=>{c.value=null,ne.resetObject(l.item),Object.assign(l.item,{...e.toRaw(M.value)}),l.onCloseModal?.(l.item),h.value=!1,m.value=!1},x=()=>y.value?k.value.filter(o=>y.value.includes(o.id)).map(o=>e.toRaw(o)):[],U=()=>x()[0],F=()=>e.toRaw(k.value),f=async()=>{if(!w.value){w.value=!0;try{if(l.onLoad){var{data:t,total:o}=await l.onLoad(u.value.page,u.value.pageSize);k.value=t,u.value.itemCount=o}}catch(n){g.error(n.message)}finally{w.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),i=64;let d=2,r=24;const v=o.querySelector(".n-data-table__pagination");if(v){const V=v.offsetHeight;d+=V||0}else d+=28;return a-(i+d+r)}),K=t=>!t||!t.getBoundingClientRect?0:t.getBoundingClientRect(),X=t=>{const o=document.documentElement,n=o.scrollLeft,a=o.scrollTop,i=o.clientLeft,d=o.clientTop,r=window.pageXOffset,v=window.pageYOffset,O=K(t),{left:V,top:J,width:Q,height:Z}=O,ee=(r||n)-(i||0),te=(v||a)-(d||0),oe=V+r,le=J+v,S=oe-ee,B=le-te,$=window.document.documentElement.clientWidth,z=window.document.documentElement.clientHeight;return{left:S,top:B,right:$-Q-S,bottom:z-Z-B,rightIncludeBody:$-S,bottomIncludeBody:z-B}},Y=()=>{M.value={...e.toRaw(l.item)}};return e.onMounted(async()=>{Y(),await f()}),L({getData:F,getSelectedRow:U,getSelectedRows:x,closeModal:N,refreshData:f,resetPage:()=>{u.value.page=1}}),(t,o)=>{const n=s.NTooltip,a=s.NDataTable,i=s.NSpace,d=s.NModal;return e.openBlock(),e.createBlock(e.unref(s.NCard),{title:" ","header-class":"p-4","content-class":"pl-4 pr-4",bordered:!1},{"header-extra":e.withCtx(()=>[p.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.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})),p.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.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(s.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:q},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[o[5]||(o[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",se,[t.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",ie,[e.renderSlot(t.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(a,{remote:"",ref_key:"$table",ref:E,"checked-row-keys":y.value,"onUpdate:checkedRowKeys":o[0]||(o[0]=r=>y.value=r),"max-height":G.value,loading:w.value,bordered:!1,"single-line":!1,columns:I.value,data:k.value,pagination:u.value,"row-key":r=>r[p.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(d,{title:"新增",preset:"card",show:h.value,"onUpdate:show":o[1]||(o[1]=r=>h.value=r),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${p.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(i,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(s.NButton),{type:"primary",loading:C.value,onClick:R},{default:e.withCtx(()=>[...o[6]||(o[6]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(s.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",de,[e.createVNode(d,{title:"编辑",show:m.value,"onUpdate:show":o[2]||(o[2]=r=>m.value=r),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${p.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(i,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(s.NButton),{type:"primary",loading:C.value,onClick:R},{default:e.withCtx(()=>[...o[8]||(o[8]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(s.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=ce;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./PTable.vue.cjs"),t=require("../utils/install.cjs"),u=t.withInstall(e.default);exports.default=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./PTable.vue.cjs"),t=require("../utils/install.cjs"),l=t.withInstall(e.default);exports.PTablePlugin=l;
@@ -1,4 +1,5 @@
1
- declare const _default: {
1
+ export type * from './typing';
2
+ export declare const PTablePlugin: {
2
3
  new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('./typing').DataTableProps> & Readonly<{}>, {
3
4
  refreshData: () => Promise<void>;
4
5
  getData: <T>() => T[];
@@ -61,4 +62,3 @@ declare const _default: {
61
62
  editModal?(_: {}): any;
62
63
  };
63
64
  }) & import('vue').Plugin;
64
- export default _default;
@@ -1,11 +1,11 @@
1
1
  import { VNodeChild } from 'vue';
2
- export interface DataTableColumnActionDefine {
2
+ export type DataTableColumnActionDefine = {
3
3
  name: string;
4
4
  key: string;
5
5
  icon?: string;
6
6
  action: (row: any) => void;
7
- }
8
- export interface DataTableColumnDefine {
7
+ };
8
+ export type DataTableColumnDefine = {
9
9
  title: string;
10
10
  key: string;
11
11
  width?: number;
@@ -13,8 +13,8 @@ export interface DataTableColumnDefine {
13
13
  ellipsis?: boolean;
14
14
  action?: DataTableColumnActionDefine[];
15
15
  render?: (data: any, index: number) => VNodeChild;
16
- }
17
- export interface DataTableProps {
16
+ };
17
+ export type DataTableProps = {
18
18
  idField?: string;
19
19
  item?: any;
20
20
  columns: DataTableColumnDefine[];
@@ -31,12 +31,12 @@ export interface DataTableProps {
31
31
  onCloseModal?: (item?: any) => void;
32
32
  onSave?: (id?: string | number, row?: any) => Promise<boolean> | boolean;
33
33
  onDelete?: (rows: any[]) => Promise<boolean> | boolean;
34
- }
35
- export interface DataTableMethods {
34
+ };
35
+ export type DataTableMethods = {
36
36
  refreshData: () => Promise<void>;
37
37
  getData: <T>() => T[];
38
38
  getSelectedRows: <T>() => T[];
39
39
  closeModal: () => void;
40
40
  resetPage: () => void;
41
41
  getSelectedRow: <T>() => T;
42
- }
42
+ };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@chewel611/naive-ui-plus",
3
3
  "private": false,
4
- "version": "0.0.19",
4
+ "version": "0.0.21",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "sideEffects": false,
@@ -24,7 +24,7 @@
24
24
  "format": "prettier --write src/ components/",
25
25
  "clean": "rimraf dist es lib",
26
26
  "build:components": "run-p type-check build:dist build-only",
27
- "type-check": "vue-tsc --build --force",
27
+ "type-check": "vue-tsc --skipLibCheck --noEmit",
28
28
  "build:dist": "vite build -- dir=dist",
29
29
  "build-only": "vite build",
30
30
  "preview": "vite preview",
@@ -33,45 +33,42 @@
33
33
  "peerDependency": {
34
34
  "@tailwindcss/vite": "^4.1.11",
35
35
  "@vicons/antd": "^0.13.0",
36
- "pinia": "^3.0.3",
37
- "less": "^4.4.0",
36
+ "pinia": "^3.0.4",
37
+ "less": "^4.5.1",
38
38
  "less-loader": "^12.3.0",
39
- "vue-router": "^4.5.1"
39
+ "vue-router": "^5.0.2"
40
40
  },
41
41
  "dependencies": {
42
42
  "@vicons/antd": "^0.13.0",
43
43
  "element-resize-detector": "^1.2.4",
44
- "less": "^4.4.0",
45
- "less-loader": "^12.3.0",
46
- "pinia": "^3.0.3",
44
+ "pinia": "^3.0.4",
47
45
  "vuedraggable": "^4.1.0"
48
46
  },
49
47
  "devDependencies": {
50
- "@tailwindcss/vite": "^4.1.11",
48
+ "@tailwindcss/vite": "^4.1.18",
51
49
  "@types/element-resize-detector": "^1.1.6",
52
50
  "@types/minimist": "^1.2.5",
53
51
  "@types/node": "^24.1.0",
54
52
  "@vicons/antd": "^0.13.0",
55
- "@vitejs/plugin-vue": "^6.0.0",
56
- "@vue/tsconfig": "^0.7.0",
53
+ "@vitejs/plugin-vue": "^6.0.4",
54
+ "@vue/tsconfig": "^0.8.1",
57
55
  "less": "^4.4.0",
58
56
  "less-loader": "^12.3.0",
59
57
  "minimist": "^1.2.8",
60
- "naive-ui": "^2.42.0",
58
+ "naive-ui": "^2.43.2",
61
59
  "npm-run-all2": "^8.0.4",
62
- "pinia": "^3.0.3",
63
- "prettier": "^3.6.2",
64
- "rimraf": "^6.0.1",
65
- "rollup": "^4.46.2",
66
- "tailwindcss": "^4.1.11",
67
- "typescript": "~5.8.3",
68
- "unplugin-vue-components": "^28.8.0",
69
- "vite": "^7.0.4",
60
+ "prettier": "^3.8.1",
61
+ "rimraf": "^6.1.2",
62
+ "rollup": "^4.57.1",
63
+ "tailwindcss": "^4.1.18",
64
+ "typescript": "^5.9.3",
65
+ "unplugin-vue-components": "^31.0.0",
66
+ "vite": "^7.3.1",
70
67
  "vite-plugin-dts": "^4.5.4",
71
- "vite-plugin-vue-devtools": "^8.0.0",
72
- "vue": "^3.5.17",
73
- "vue-router": "^4.5.1",
74
- "vue-tsc": "^2.2.12"
68
+ "vite-plugin-vue-devtools": "^8.0.6",
69
+ "vue": "^3.5.27",
70
+ "vue-router": "^5.0.2",
71
+ "vue-tsc": "^3.2.4"
75
72
  },
76
73
  "homepage": "https://gitee.com/chewel/naive-ui-plus",
77
74
  "repository": {
package/es/typing.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export * from './table/typing';
2
- export type * from './modal/typing';
3
- export type * from './languages/typing';
4
- export { usePLayoutStore } from './layout';
5
- export { usePLanguageStore } from './languages';
package/lib/typing.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export * from './table/typing';
2
- export type * from './modal/typing';
3
- export type * from './languages/typing';
4
- export { usePLayoutStore } from './layout';
5
- export { usePLanguageStore } from './languages';