@chewel611/naive-ui-plus 0.0.28 → 0.0.30
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 +761 -891
- package/dist/index.umd.cjs +1 -1
- package/es/modal/PModal.d.ts +0 -1
- package/es/modal/PModal.vue.js +31 -32
- package/es/modal/index.d.ts +0 -3
- package/es/modal/typing.d.ts +0 -1
- package/es/table/PTable.d.ts +0 -8
- package/es/table/PTable.vue.js +146 -271
- package/es/table/index.d.ts +0 -20
- package/es/table/typing.d.ts +3 -11
- package/lib/modal/PModal.d.ts +0 -1
- package/lib/modal/PModal.vue.cjs +1 -1
- package/lib/modal/index.d.ts +0 -3
- package/lib/modal/typing.d.ts +0 -1
- package/lib/table/PTable.d.ts +0 -8
- package/lib/table/PTable.vue.cjs +1 -1
- package/lib/table/index.d.ts +0 -20
- package/lib/table/typing.d.ts +3 -11
- package/package.json +1 -1
- package/es/utils/helper.js +0 -9
- package/lib/utils/helper.cjs +0 -1
package/lib/modal/index.d.ts
CHANGED
|
@@ -12,7 +12,6 @@ export declare const PModalPlugin: {
|
|
|
12
12
|
}, import('vue').PublicProps, {
|
|
13
13
|
width: number;
|
|
14
14
|
height: number;
|
|
15
|
-
closable: boolean;
|
|
16
15
|
saveBtnText: string;
|
|
17
16
|
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
|
|
18
17
|
$modal: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
|
|
@@ -2117,7 +2116,6 @@ export declare const PModalPlugin: {
|
|
|
2117
2116
|
}, {}, {}, {}, {
|
|
2118
2117
|
width: number;
|
|
2119
2118
|
height: number;
|
|
2120
|
-
closable: boolean;
|
|
2121
2119
|
saveBtnText: string;
|
|
2122
2120
|
}>;
|
|
2123
2121
|
__isFragment?: never;
|
|
@@ -2135,7 +2133,6 @@ export declare const PModalPlugin: {
|
|
|
2135
2133
|
}, string, {
|
|
2136
2134
|
width: number;
|
|
2137
2135
|
height: number;
|
|
2138
|
-
closable: boolean;
|
|
2139
2136
|
saveBtnText: string;
|
|
2140
2137
|
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
2141
2138
|
$slots: {
|
package/lib/modal/typing.d.ts
CHANGED
package/lib/table/PTable.d.ts
CHANGED
|
@@ -3,8 +3,6 @@ declare function __VLS_template(): {
|
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
5
5
|
toolbar?(_: {}): any;
|
|
6
|
-
addModal?(_: {}): any;
|
|
7
|
-
editModal?(_: {}): any;
|
|
8
6
|
};
|
|
9
7
|
refs: {
|
|
10
8
|
$table: unknown;
|
|
@@ -16,16 +14,10 @@ declare const __VLS_component: import('vue').DefineComponent<DataTableProps, {
|
|
|
16
14
|
refreshData: () => Promise<void>;
|
|
17
15
|
getData: <T>() => T[];
|
|
18
16
|
getSelectedRows: <T>() => T[];
|
|
19
|
-
closeModal: () => void;
|
|
20
17
|
resetPage: () => void;
|
|
21
18
|
getSelectedRow: <T>() => T;
|
|
22
19
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<DataTableProps> & Readonly<{}>, {
|
|
23
20
|
idField: string;
|
|
24
|
-
item: any;
|
|
25
|
-
modalWidth: number;
|
|
26
|
-
hiddenAdd: boolean;
|
|
27
|
-
hiddenEdit: boolean;
|
|
28
|
-
hiddenDelete: boolean;
|
|
29
21
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
30
22
|
$table: unknown;
|
|
31
23
|
}, any>;
|
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"),w=require("@vicons/antd"),K={class:"text-lg font-medium"},X={id:"data-content"},Y={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-4 mb-4"},G=e.defineComponent({__name:"PTable",props:{title:{},idField:{default:"id"},columns:{},onLoad:{},onDelete:{},onAdd:{},onEdit:{}},setup(y,{expose:E}){const N=e.ref(null),D=i.useDialog(),f=i.useMessage(),g=e.ref(!1),p=e.ref([]),h=e.ref([]),c=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async t=>{c.value.page=t,await d()},onUpdatePageSize:async t=>{c.value.pageSize=t,await d()}}),a=y,B=t=>{const o=n=>{const l=[];return t&&t.forEach(r=>{r.key!=="edit"&&r.key!=="delete"&&l.push({label:r.name,key:r.key,props:{onClick:()=>r.action(n)}})}),l};return{title:"操作",key:"actions",width:100,fixed:"right",render:n=>{let l=[];if(a.onEdit&&l.push({label:"编辑",key:"edit",props:{onClick:async()=>await a.onEdit(n)}}),a.onDelete&&l.push({label:"删除",key:"delete",props:{onClick:()=>O(n)}}),l=[...l,...o(n)],!(l.length<=0))return e.h(i.NDropdown,{options:l,placement:"bottom-start"},{default:()=>e.h(i.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(i.NIcon,()=>e.h(w.MoreOutlined))]})})}}},T=e.computed(()=>{const t=a.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=a.columns.reduce((n,l)=>l.key==="action"?l:n,void 0)?.action;return o&&o?.length>0||a.onEdit||a.onDelete?[{type:"selection",fixed:"left"},...t,B(o)]:[{type:"selection",fixed:"left"},...t]}),R=async()=>await d(),O=t=>x([t]),z=()=>{const t=k();x(t)},x=t=>{t&&t.length>0&&D.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(a.onDelete)try{await a.onDelete(t)?(d(),f.success("删除成功")):f.error("删除失败")}catch(o){f.error(o.message)}}})},k=()=>p.value?h.value.filter(o=>p.value.includes(o.id)).map(o=>e.toRaw(o)):[],L=()=>k()[0],H=()=>e.toRaw(h.value),d=async()=>{if(!g.value){g.value=!0;try{if(a.onLoad){var{data:t,total:o}=await a.onLoad(c.value.page,c.value.pageSize);h.value=t,c.value.itemCount=o}}catch(n){f.error(n.message)}finally{g.value=!1}}},I=e.computed(()=>{const t=e.unref(N);if(!t)return;const o=t?.$el,n=o.querySelector(".n-data-table-thead "),{bottomIncludeBody:l}=$(n),r=48;let s=12,m=24;const u=o.querySelector(".n-data-table__pagination");if(u){const v=u.offsetHeight;s+=v||0}else s+=28;return l-(r+s+m)}),P=t=>!t||!t.getBoundingClientRect?0:t.getBoundingClientRect(),$=t=>{const o=document.documentElement,n=o.scrollLeft,l=o.scrollTop,r=o.clientLeft,s=o.clientTop,m=window.pageXOffset,u=window.pageYOffset,_=P(t),{left:v,top:q,width:M,height:A}=_,j=(m||n)-(r||0),U=(u||l)-(s||0),W=v+m,F=q+u,C=W-j,b=F-U,V=window.document.documentElement.clientWidth,S=window.document.documentElement.clientHeight;return{left:C,top:b,right:V-M-C,bottom:S-A-b,rightIncludeBody:V-C,bottomIncludeBody:S-b}};return e.onMounted(async()=>await d()),E({getData:H,getSelectedRow:L,getSelectedRows:k,refreshData:d,resetPage:()=>{c.value.page=1}}),(t,o)=>{const n=i.NTooltip,l=i.NSpace,r=i.NDataTable;return e.openBlock(),e.createBlock(e.unref(i.NCard),{bordered:!1},{header:e.withCtx(()=>[e.createVNode(l,{justify:"space-between",align:"center",class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",K,e.toDisplayString(y.title),1),e.createVNode(l,null,{default:e.withCtx(()=>[a.onAdd?(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:a.onAdd},{default:e.withCtx(()=>[e.createVNode(e.unref(w.PlusSquareOutlined))]),_:1},8,["onClick"])]),default:e.withCtx(()=>[o[1]||(o[1]=e.createElementVNode("span",null,"新增",-1))]),_:1})):e.createCommentVNode("",!0),a.onDelete?(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:z},{default:e.withCtx(()=>[e.createVNode(e.unref(w.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[o[2]||(o[2]=e.createElementVNode("span",null,"删除",-1))]),_:1})):e.createCommentVNode("",!0),e.createVNode(n,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:R},{default:e.withCtx(()=>[e.createVNode(e.unref(w.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[o[3]||(o[3]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",X,[t.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",Y,[e.renderSlot(t.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(r,{remote:"",ref_key:"$table",ref:N,"checked-row-keys":p.value,"onUpdate:checkedRowKeys":o[0]||(o[0]=s=>p.value=s),"max-height":I.value,loading:g.value,bordered:!1,"single-line":!1,columns:T.value,data:h.value,pagination:c.value,"row-key":s=>s[y.idField]},null,8,["checked-row-keys","max-height","loading","columns","data","pagination","row-key"])])]),_:3})}}});exports.default=G;
|
package/lib/table/index.d.ts
CHANGED
|
@@ -4,16 +4,10 @@ export declare const PTablePlugin: {
|
|
|
4
4
|
refreshData: () => Promise<void>;
|
|
5
5
|
getData: <T>() => T[];
|
|
6
6
|
getSelectedRows: <T>() => T[];
|
|
7
|
-
closeModal: () => void;
|
|
8
7
|
resetPage: () => void;
|
|
9
8
|
getSelectedRow: <T>() => T;
|
|
10
9
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
|
|
11
10
|
idField: string;
|
|
12
|
-
item: any;
|
|
13
|
-
modalWidth: number;
|
|
14
|
-
hiddenAdd: boolean;
|
|
15
|
-
hiddenEdit: boolean;
|
|
16
|
-
hiddenDelete: boolean;
|
|
17
11
|
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
|
|
18
12
|
$table: unknown;
|
|
19
13
|
}, any, import('vue').ComponentProvideOptions, {
|
|
@@ -27,16 +21,10 @@ export declare const PTablePlugin: {
|
|
|
27
21
|
refreshData: () => Promise<void>;
|
|
28
22
|
getData: <T>() => T[];
|
|
29
23
|
getSelectedRows: <T>() => T[];
|
|
30
|
-
closeModal: () => void;
|
|
31
24
|
resetPage: () => void;
|
|
32
25
|
getSelectedRow: <T>() => T;
|
|
33
26
|
}, {}, {}, {}, {
|
|
34
27
|
idField: string;
|
|
35
|
-
item: any;
|
|
36
|
-
modalWidth: number;
|
|
37
|
-
hiddenAdd: boolean;
|
|
38
|
-
hiddenEdit: boolean;
|
|
39
|
-
hiddenDelete: boolean;
|
|
40
28
|
}>;
|
|
41
29
|
__isFragment?: never;
|
|
42
30
|
__isTeleport?: never;
|
|
@@ -45,20 +33,12 @@ export declare const PTablePlugin: {
|
|
|
45
33
|
refreshData: () => Promise<void>;
|
|
46
34
|
getData: <T>() => T[];
|
|
47
35
|
getSelectedRows: <T>() => T[];
|
|
48
|
-
closeModal: () => void;
|
|
49
36
|
resetPage: () => void;
|
|
50
37
|
getSelectedRow: <T>() => T;
|
|
51
38
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
|
|
52
39
|
idField: string;
|
|
53
|
-
item: any;
|
|
54
|
-
modalWidth: number;
|
|
55
|
-
hiddenAdd: boolean;
|
|
56
|
-
hiddenEdit: boolean;
|
|
57
|
-
hiddenDelete: boolean;
|
|
58
40
|
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
59
41
|
$slots: {
|
|
60
42
|
toolbar?(_: {}): any;
|
|
61
|
-
addModal?(_: {}): any;
|
|
62
|
-
editModal?(_: {}): any;
|
|
63
43
|
};
|
|
64
44
|
}) & import('vue').Plugin;
|
package/lib/table/typing.d.ts
CHANGED
|
@@ -17,27 +17,19 @@ export type DataTableColumnDefine = {
|
|
|
17
17
|
export type DataTableProps = {
|
|
18
18
|
title?: string;
|
|
19
19
|
idField?: string;
|
|
20
|
-
item?: any;
|
|
21
20
|
columns: DataTableColumnDefine[];
|
|
22
|
-
modalWidth?: number;
|
|
23
|
-
hiddenAdd?: boolean;
|
|
24
|
-
hiddenEdit?: boolean;
|
|
25
|
-
hiddenDelete?: boolean;
|
|
26
21
|
onLoad: (page: number, pageSize: number) => Promise<{
|
|
27
22
|
data: any[];
|
|
28
23
|
total: number;
|
|
29
24
|
}>;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
onSave?: (id?: string | number, row?: any) => Promise<boolean> | boolean;
|
|
34
|
-
onDelete?: (rows: any[]) => Promise<boolean> | boolean;
|
|
25
|
+
onDelete?: (rows: any[]) => Promise<boolean>;
|
|
26
|
+
onAdd?: () => Promise<void>;
|
|
27
|
+
onEdit?: (row: any) => Promise<void>;
|
|
35
28
|
};
|
|
36
29
|
export type DataTableMethods = {
|
|
37
30
|
refreshData: () => Promise<void>;
|
|
38
31
|
getData: <T>() => T[];
|
|
39
32
|
getSelectedRows: <T>() => T[];
|
|
40
|
-
closeModal: () => void;
|
|
41
33
|
resetPage: () => void;
|
|
42
34
|
getSelectedRow: <T>() => T;
|
|
43
35
|
};
|
package/package.json
CHANGED
package/es/utils/helper.js
DELETED
package/lib/utils/helper.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=e=>{Object.keys(e).forEach(r=>{const t=e[r];Array.isArray(t)?e[r]=[]:t!==null&&typeof t=="object"?s(t):e[r]=void 0})};exports.resetObject=s;
|