@starter-solutions/inertia-data-table-vue 0.5.1 → 0.6.0
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.cjs +1 -1
- package/dist/index.js +134 -97
- package/dist/types/config.d.ts +1 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@inertiajs/vue3"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@inertiajs/vue3"),r=require("vue"),O=(e,p)=>{const c=m.usePage(),l=r.computed(()=>{const a=r.toValue(p),s=r.toValue(e),d=r.toValue(a==null?void 0:a.pagePropsKey)??s,o=r.toValue(a==null?void 0:a.useUrlQuery)??!1,y=r.toValue(a==null?void 0:a.reloadOnly)?[d,...r.toValue(a==null?void 0:a.reloadOnly)]:[d];return{tableKey:s,pagePropsKey:d,useUrlQuery:o,reloadOnly:y}}),_=r.computed(()=>{var a,s;return((s=(a=c.props)==null?void 0:a.inertiaDataTable)==null?void 0:s.stateRoutes)??{set:"",drop:"",dropAll:""}}),g=r.computed(()=>{var a,s;return((s=(a=c.props)==null?void 0:a.inertiaDataTable)==null?void 0:s.queryParams)??{tableKey:"tableKey",perPage:"per_page",sortBy:"sort_by",descending:"descending",pageName:"page",filter:"filter"}}),n=r.computed(()=>{var a,s;return((s=(a=c.props)==null?void 0:a.inertiaDataTable)==null?void 0:s.defaults)??{perPage:15,sortBy:"id"}});return{settings:l,stateRoutes:_,queryParams:g,defaults:n}},h=e=>{const p=r.computed(()=>R(r.toValue(e))),c=r.computed(()=>p.value.data),l=r.computed(()=>p.value.pagination);return{data:c,pagination:l,getPaginatedRequest:(n={})=>({page:n.page??l.value.current_page,per_page:n.per_page??l.value.per_page,sort_by:n.sort_by??l.value.sort_by,descending:n.descending??l.value.descending}),validPage:n=>n>0&&n<=l.value.last_page}},R=e=>({data:(e==null?void 0:e.data)??[],pagination:V(e)}),q=e=>"meta"in e&&typeof e.meta=="object"&&e.meta!==null,V=e=>{if(!e)return{current_page:1,last_page:1,per_page:10,total:0,from:null,to:null,path:"",links:[],first_page_url:null,last_page_url:null,next_page_url:null,prev_page_url:null,sort_by:"id",descending:!1};if(q(e))return{current_page:e.meta.current_page,last_page:e.meta.last_page,per_page:e.meta.per_page,total:e.meta.total,from:e.meta.from,to:e.meta.to,path:e.meta.path,links:e.meta.links,first_page_url:e.links.first,last_page_url:e.links.last,next_page_url:e.links.next,prev_page_url:e.links.prev,sort_by:e.meta.sort_by??"id",descending:e.meta.descending??!1};const{current_page:p,last_page:c,per_page:l,total:_,from:g,to:n,path:a,links:s,first_page_url:d,last_page_url:o,next_page_url:y,prev_page_url:f,sort_by:P,descending:K}=e;return{current_page:p,last_page:c,per_page:l,total:_,from:g,to:n,path:a,links:s,first_page_url:d,last_page_url:o,next_page_url:y,prev_page_url:f,sort_by:P??"id",descending:K??!1}},Q=(e,p)=>{var k;const{stateRoutes:c,settings:l}=O(e,p);r.onBeforeUnmount(()=>{m.router.delete(c.value.drop,{preserveScroll:!0,preserveState:!0,data:{tableKey:l.value.tableKey}})});const _=m.usePage(),g=r.computed(()=>{var t;return((t=_.props)==null?void 0:t[l.value.pagePropsKey])??null}),{data:n,pagination:a,getPaginatedRequest:s,validPage:d}=h(g),o=t=>{t=s(t),l.value.useUrlQuery?m.router.reload({only:l.value.reloadOnly,data:{tableKey:l.value.tableKey,filter:u,...t}}):m.router.post(c.value.set,{tableKey:l.value.tableKey,filter:u,pagination:t},{preserveState:!0,preserveScroll:!0,only:l.value.reloadOnly})},y=()=>{v(1)},f=()=>{v(a.value.current_page-1)},P=()=>{v(a.value.current_page+1)},K=()=>{v(a.value.last_page)},v=t=>{if(!d(t)){console.error(`Invalid page: ${t}`);return}o({page:t})},S=t=>{o({per_page:t,page:1})},j=(t,i)=>{const b=i??a.value.sort_by===t?!a.value.descending:!1;o({sort_by:t,descending:b})},u=r.reactive(((k=g.value)==null?void 0:k.filter)??{});r.watch(()=>{var t;return(t=g.value)==null?void 0:t.filter},t=>{Object.keys(u).forEach(i=>delete u[i]),Object.assign(u,t??{})});const x=(t,i)=>{u[t]=i,o({page:1})},I=t=>{t.forEach(({key:i,value:b})=>{u[i]=b}),o({page:1})},U=t=>{delete u[t],o({page:1})},B=()=>{Object.keys(u).forEach(t=>delete u[t]),o({page:1})},T=r.computed(()=>g.value.additional??{});return{data:n,reload:o,pagination:a,firstPage:y,previousPage:f,nextPage:P,lastPage:K,goToPage:v,itemsPerPage:S,sortBy:j,filter:u,setFilter:x,setFilters:I,removeFilter:U,resetFilters:B,additional:T,getAdditional:(t,i=void 0)=>t.split(".").reduce((D,F)=>D==null?void 0:D[F],T.value)??i}};function z(){return{install(e){}}}exports.createInertiaDataTable=z;exports.getPaginationMeta=V;exports.isResource=q;exports.normalizePagination=R;exports.useDataTable=Q;exports.useInertiaDataTableConfig=O;exports.useLaravelPagination=h;
|
package/dist/index.js
CHANGED
|
@@ -1,46 +1,69 @@
|
|
|
1
|
-
import { usePage as R, router as
|
|
2
|
-
import { computed as
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const a =
|
|
1
|
+
import { usePage as R, router as O } from "@inertiajs/vue3";
|
|
2
|
+
import { computed as p, toValue as d, onBeforeUnmount as Q, reactive as S, watch as A } from "vue";
|
|
3
|
+
const E = (e, i) => {
|
|
4
|
+
const u = R(), r = p(() => {
|
|
5
|
+
const a = d(i), l = d(e), _ = d(a == null ? void 0 : a.pagePropsKey) ?? l, n = d(a == null ? void 0 : a.useUrlQuery) ?? !1, v = d(a == null ? void 0 : a.reloadOnly) ? [_, ...d(a == null ? void 0 : a.reloadOnly)] : [_];
|
|
6
6
|
return {
|
|
7
|
-
tableKey:
|
|
8
|
-
pagePropsKey:
|
|
9
|
-
useUrlQuery:
|
|
7
|
+
tableKey: l,
|
|
8
|
+
pagePropsKey: _,
|
|
9
|
+
useUrlQuery: n,
|
|
10
10
|
reloadOnly: v
|
|
11
11
|
};
|
|
12
|
-
}),
|
|
13
|
-
() =>
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
}), y = p(
|
|
13
|
+
() => {
|
|
14
|
+
var a, l;
|
|
15
|
+
return ((l = (a = u.props) == null ? void 0 : a.inertiaDataTable) == null ? void 0 : l.stateRoutes) ?? {
|
|
16
|
+
set: "",
|
|
17
|
+
drop: "",
|
|
18
|
+
dropAll: ""
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
), c = p(
|
|
22
|
+
() => {
|
|
23
|
+
var a, l;
|
|
24
|
+
return ((l = (a = u.props) == null ? void 0 : a.inertiaDataTable) == null ? void 0 : l.queryParams) ?? {
|
|
25
|
+
tableKey: "tableKey",
|
|
26
|
+
perPage: "per_page",
|
|
27
|
+
sortBy: "sort_by",
|
|
28
|
+
descending: "descending",
|
|
29
|
+
pageName: "page",
|
|
30
|
+
filter: "filter"
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
), s = p(
|
|
34
|
+
() => {
|
|
35
|
+
var a, l;
|
|
36
|
+
return ((l = (a = u.props) == null ? void 0 : a.inertiaDataTable) == null ? void 0 : l.defaults) ?? {
|
|
37
|
+
perPage: 15,
|
|
38
|
+
sortBy: "id"
|
|
39
|
+
};
|
|
40
|
+
}
|
|
18
41
|
);
|
|
19
42
|
return {
|
|
20
43
|
settings: r,
|
|
21
|
-
stateRoutes:
|
|
22
|
-
queryParams:
|
|
23
|
-
defaults:
|
|
44
|
+
stateRoutes: y,
|
|
45
|
+
queryParams: c,
|
|
46
|
+
defaults: s
|
|
24
47
|
};
|
|
25
|
-
},
|
|
26
|
-
const
|
|
27
|
-
() =>
|
|
48
|
+
}, I = (e) => {
|
|
49
|
+
const i = p(() => z(d(e))), u = p(() => i.value.data), r = p(
|
|
50
|
+
() => i.value.pagination
|
|
28
51
|
);
|
|
29
52
|
return {
|
|
30
|
-
data:
|
|
53
|
+
data: u,
|
|
31
54
|
pagination: r,
|
|
32
|
-
getPaginatedRequest: (
|
|
33
|
-
page:
|
|
34
|
-
per_page:
|
|
35
|
-
sort_by:
|
|
36
|
-
descending:
|
|
55
|
+
getPaginatedRequest: (s = {}) => ({
|
|
56
|
+
page: s.page ?? r.value.current_page,
|
|
57
|
+
per_page: s.per_page ?? r.value.per_page,
|
|
58
|
+
sort_by: s.sort_by ?? r.value.sort_by,
|
|
59
|
+
descending: s.descending ?? r.value.descending
|
|
37
60
|
}),
|
|
38
|
-
validPage: (
|
|
61
|
+
validPage: (s) => s > 0 && s <= r.value.last_page
|
|
39
62
|
};
|
|
40
|
-
},
|
|
63
|
+
}, z = (e) => ({
|
|
41
64
|
data: (e == null ? void 0 : e.data) ?? [],
|
|
42
|
-
pagination:
|
|
43
|
-
}),
|
|
65
|
+
pagination: L(e)
|
|
66
|
+
}), C = (e) => "meta" in e && typeof e.meta == "object" && e.meta !== null, L = (e) => {
|
|
44
67
|
if (!e)
|
|
45
68
|
return {
|
|
46
69
|
current_page: 1,
|
|
@@ -60,7 +83,7 @@ const j = (e, u) => {
|
|
|
60
83
|
sort_by: "id",
|
|
61
84
|
descending: !1
|
|
62
85
|
};
|
|
63
|
-
if (
|
|
86
|
+
if (C(e))
|
|
64
87
|
return {
|
|
65
88
|
current_page: e.meta.current_page,
|
|
66
89
|
last_page: e.meta.last_page,
|
|
@@ -80,17 +103,17 @@ const j = (e, u) => {
|
|
|
80
103
|
descending: e.meta.descending ?? !1
|
|
81
104
|
};
|
|
82
105
|
const {
|
|
83
|
-
current_page:
|
|
84
|
-
last_page:
|
|
106
|
+
current_page: i,
|
|
107
|
+
last_page: u,
|
|
85
108
|
per_page: r,
|
|
86
|
-
total:
|
|
87
|
-
from:
|
|
88
|
-
to:
|
|
109
|
+
total: y,
|
|
110
|
+
from: c,
|
|
111
|
+
to: s,
|
|
89
112
|
path: a,
|
|
90
|
-
links:
|
|
113
|
+
links: l,
|
|
91
114
|
//links
|
|
92
|
-
first_page_url:
|
|
93
|
-
last_page_url:
|
|
115
|
+
first_page_url: _,
|
|
116
|
+
last_page_url: n,
|
|
94
117
|
next_page_url: v,
|
|
95
118
|
prev_page_url: b,
|
|
96
119
|
//custom
|
|
@@ -98,50 +121,54 @@ const j = (e, u) => {
|
|
|
98
121
|
descending: K
|
|
99
122
|
} = e;
|
|
100
123
|
return {
|
|
101
|
-
current_page:
|
|
102
|
-
last_page:
|
|
124
|
+
current_page: i,
|
|
125
|
+
last_page: u,
|
|
103
126
|
per_page: r,
|
|
104
|
-
total:
|
|
105
|
-
from:
|
|
106
|
-
to:
|
|
127
|
+
total: y,
|
|
128
|
+
from: c,
|
|
129
|
+
to: s,
|
|
107
130
|
path: a,
|
|
108
|
-
links:
|
|
131
|
+
links: l,
|
|
109
132
|
//links
|
|
110
|
-
first_page_url:
|
|
111
|
-
last_page_url:
|
|
133
|
+
first_page_url: _,
|
|
134
|
+
last_page_url: n,
|
|
112
135
|
next_page_url: v,
|
|
113
136
|
prev_page_url: b,
|
|
114
137
|
//custom
|
|
115
138
|
sort_by: P ?? "id",
|
|
116
139
|
descending: K ?? !1
|
|
117
140
|
};
|
|
118
|
-
},
|
|
119
|
-
|
|
141
|
+
}, $ = (e, i) => {
|
|
142
|
+
var D;
|
|
143
|
+
const { stateRoutes: u, settings: r } = E(
|
|
120
144
|
e,
|
|
121
|
-
|
|
145
|
+
i
|
|
122
146
|
);
|
|
123
|
-
|
|
124
|
-
|
|
147
|
+
Q(() => {
|
|
148
|
+
O.delete(u.value.drop, {
|
|
125
149
|
preserveScroll: !0,
|
|
126
150
|
preserveState: !0,
|
|
127
151
|
data: { tableKey: r.value.tableKey }
|
|
128
152
|
});
|
|
129
153
|
});
|
|
130
|
-
const
|
|
131
|
-
() =>
|
|
132
|
-
|
|
133
|
-
|
|
154
|
+
const y = R(), c = p(
|
|
155
|
+
() => {
|
|
156
|
+
var t;
|
|
157
|
+
return ((t = y.props) == null ? void 0 : t[r.value.pagePropsKey]) ?? null;
|
|
158
|
+
}
|
|
159
|
+
), { data: s, pagination: a, getPaginatedRequest: l, validPage: _ } = I(c), n = (t) => {
|
|
160
|
+
t = l(t), r.value.useUrlQuery ? O.reload({
|
|
134
161
|
only: r.value.reloadOnly,
|
|
135
162
|
data: {
|
|
136
163
|
tableKey: r.value.tableKey,
|
|
137
|
-
filter:
|
|
164
|
+
filter: o,
|
|
138
165
|
...t
|
|
139
166
|
}
|
|
140
|
-
}) :
|
|
141
|
-
|
|
167
|
+
}) : O.post(
|
|
168
|
+
u.value.set,
|
|
142
169
|
{
|
|
143
170
|
tableKey: r.value.tableKey,
|
|
144
|
-
filter:
|
|
171
|
+
filter: o,
|
|
145
172
|
pagination: t
|
|
146
173
|
},
|
|
147
174
|
{
|
|
@@ -159,30 +186,40 @@ const j = (e, u) => {
|
|
|
159
186
|
}, K = () => {
|
|
160
187
|
f(a.value.last_page);
|
|
161
188
|
}, f = (t) => {
|
|
162
|
-
if (!
|
|
189
|
+
if (!_(t)) {
|
|
163
190
|
console.error(`Invalid page: ${t}`);
|
|
164
191
|
return;
|
|
165
192
|
}
|
|
166
|
-
|
|
193
|
+
n({ page: t });
|
|
167
194
|
}, T = (t) => {
|
|
168
|
-
|
|
169
|
-
},
|
|
170
|
-
const m =
|
|
171
|
-
|
|
172
|
-
},
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
195
|
+
n({ per_page: t, page: 1 });
|
|
196
|
+
}, x = (t, g) => {
|
|
197
|
+
const m = g ?? a.value.sort_by === t ? !a.value.descending : !1;
|
|
198
|
+
n({ sort_by: t, descending: m });
|
|
199
|
+
}, o = S(((D = c.value) == null ? void 0 : D.filter) ?? {});
|
|
200
|
+
A(
|
|
201
|
+
() => {
|
|
202
|
+
var t;
|
|
203
|
+
return (t = c.value) == null ? void 0 : t.filter;
|
|
204
|
+
},
|
|
205
|
+
(t) => {
|
|
206
|
+
Object.keys(o).forEach((g) => delete o[g]), Object.assign(o, t ?? {});
|
|
207
|
+
}
|
|
208
|
+
);
|
|
209
|
+
const q = (t, g) => {
|
|
210
|
+
o[t] = g, n({ page: 1 });
|
|
178
211
|
}, U = (t) => {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
},
|
|
212
|
+
t.forEach(({ key: g, value: m }) => {
|
|
213
|
+
o[g] = m;
|
|
214
|
+
}), n({ page: 1 });
|
|
215
|
+
}, j = (t) => {
|
|
216
|
+
delete o[t], n({ page: 1 });
|
|
217
|
+
}, B = () => {
|
|
218
|
+
Object.keys(o).forEach((t) => delete o[t]), n({ page: 1 });
|
|
219
|
+
}, h = p(() => c.value.additional ?? {});
|
|
183
220
|
return {
|
|
184
|
-
data:
|
|
185
|
-
reload:
|
|
221
|
+
data: s,
|
|
222
|
+
reload: n,
|
|
186
223
|
pagination: a,
|
|
187
224
|
firstPage: v,
|
|
188
225
|
previousPage: b,
|
|
@@ -190,31 +227,31 @@ const j = (e, u) => {
|
|
|
190
227
|
lastPage: K,
|
|
191
228
|
goToPage: f,
|
|
192
229
|
itemsPerPage: T,
|
|
193
|
-
sortBy:
|
|
194
|
-
filter:
|
|
195
|
-
setFilter:
|
|
196
|
-
setFilters:
|
|
197
|
-
removeFilter:
|
|
198
|
-
resetFilters:
|
|
199
|
-
additional:
|
|
200
|
-
getAdditional: (t,
|
|
201
|
-
(k,
|
|
202
|
-
|
|
203
|
-
) ??
|
|
230
|
+
sortBy: x,
|
|
231
|
+
filter: o,
|
|
232
|
+
setFilter: q,
|
|
233
|
+
setFilters: U,
|
|
234
|
+
removeFilter: j,
|
|
235
|
+
resetFilters: B,
|
|
236
|
+
additional: h,
|
|
237
|
+
getAdditional: (t, g = void 0) => t.split(".").reduce(
|
|
238
|
+
(k, F) => k == null ? void 0 : k[F],
|
|
239
|
+
h.value
|
|
240
|
+
) ?? g
|
|
204
241
|
};
|
|
205
242
|
};
|
|
206
|
-
function
|
|
243
|
+
function w() {
|
|
207
244
|
return {
|
|
208
245
|
install(e) {
|
|
209
246
|
}
|
|
210
247
|
};
|
|
211
248
|
}
|
|
212
249
|
export {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
250
|
+
w as createInertiaDataTable,
|
|
251
|
+
L as getPaginationMeta,
|
|
252
|
+
C as isResource,
|
|
253
|
+
z as normalizePagination,
|
|
254
|
+
$ as useDataTable,
|
|
255
|
+
E as useInertiaDataTableConfig,
|
|
256
|
+
I as useLaravelPagination
|
|
220
257
|
};
|
package/dist/types/config.d.ts
CHANGED