@ianicdev/datatables2 0.11.5 → 0.11.7

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 (47) hide show
  1. package/dist/{Comparison-DL9ojj3w.js → Comparison-BGS-fuIe.js} +1 -1
  2. package/dist/{Comparison-zf9wgAkk.cjs → Comparison-De27pAUU.cjs} +1 -1
  3. package/dist/Datepicker-CIuhuD6k.cjs +2 -0
  4. package/dist/{Datepicker-Duwv3zQB.js → Datepicker-Cw_J535b.js} +514 -509
  5. package/dist/{Options-BE82c0Zz.cjs → Options-DEe2eGBJ.cjs} +1 -1
  6. package/dist/{Options-CurNvolo.js → Options-I1PQEYFi.js} +5 -5
  7. package/dist/{RefreshTable-Cc0I1PA5.cjs → RefreshTable-CwKNOxC1.cjs} +1 -1
  8. package/dist/{RefreshTable-Cn3y6Lyg.js → RefreshTable-DJh8kVcF.js} +2 -2
  9. package/dist/{Search-BUb6ZctR.js → Search-C8e4aEIt.js} +2 -2
  10. package/dist/{Search-CvOD_IHr.cjs → Search-_MWrcP0W.cjs} +1 -1
  11. package/dist/{Table-DRC6dqmS.cjs → Table-BJ5tGV-x.cjs} +1 -1
  12. package/dist/{Table-D5xj84Hx.js → Table-ubU5wjVY.js} +3 -3
  13. package/dist/{TableServer-BrktC88-.cjs → TableServer-CDPE93Bi.cjs} +1 -1
  14. package/dist/{TableServer-DGx2_VC7.js → TableServer-DuwL1c97.js} +3 -3
  15. package/dist/cellRender-Dh2_N7Hn.cjs +1 -0
  16. package/dist/cellRender-u5Pfy695.js +2363 -0
  17. package/dist/dataTables-BxXcbziu.cjs +4 -0
  18. package/dist/{dataTables-BEIZ1GFJ.js → dataTables-Du4VyMxR.js} +2337 -2166
  19. package/dist/datatables.cjs +1 -1
  20. package/dist/datatables.js +1 -1
  21. package/dist/datatables2.css +1 -1
  22. package/dist/index-BeStYA4v.cjs +1 -0
  23. package/dist/{index-kEBJD9Uz.cjs → index-BebQe8X1.cjs} +1 -1
  24. package/dist/{index-DdbT75rv.js → index-CTF3ArB5.js} +2 -2
  25. package/dist/{index-C9IAfraU.cjs → index-Cfk_p1QT.cjs} +1 -1
  26. package/dist/{index-A7VzNfop.js → index-D0oTlDPt.js} +2 -2
  27. package/dist/index-Dlb5c56z.js +4618 -0
  28. package/dist/{index-Db7uKS4O.cjs → index-R3Q-lW3h.cjs} +1 -1
  29. package/dist/{index-BfwTwETw.js → index-pVnRXL21.js} +2 -2
  30. package/dist/{index.es-DB0V-0tm.js → index.es-BMrS5t0X.js} +1 -1
  31. package/dist/{index.es-DZnpWbiI.cjs → index.es-bmkO-qSm.cjs} +1 -1
  32. package/dist/{jspdf-BDAGZhm6.cjs → jspdf-BCsjByej.cjs} +24 -24
  33. package/dist/{jspdf-DpfxfImq.js → jspdf-BEHFm2qd.js} +480 -464
  34. package/dist/useColumns-BpprQUUi.cjs +1 -0
  35. package/dist/{useColumns-Dmca5HPg.js → useColumns-Csi8mDCk.js} +302 -286
  36. package/dist/{useDownload-DVYhgsLa.js → useDownload-B9YtKO_M.js} +1 -1
  37. package/dist/{useDownload-YBEDFv5z.cjs → useDownload-CELkYaWd.cjs} +1 -1
  38. package/dist/{useRefreshTable-BjtSww_t.cjs → useRefreshTable-CYZLF_fz.cjs} +1 -1
  39. package/dist/{useRefreshTable-BoTF0YZF.js → useRefreshTable-DkrhQ57E.js} +1 -1
  40. package/package.json +16 -16
  41. package/dist/Datepicker-Dg15YseP.cjs +0 -2
  42. package/dist/cellRender-DN6k6hHB.js +0 -2252
  43. package/dist/cellRender-DcK06KSn.cjs +0 -1
  44. package/dist/dataTables-DocfWkcv.cjs +0 -4
  45. package/dist/index-CqeIrUKn.cjs +0 -1
  46. package/dist/index-DIJYRSnI.js +0 -4482
  47. package/dist/useColumns-FMszZoTi.cjs +0 -1
@@ -1,2252 +0,0 @@
1
- import { toRef as C, provide as X, toRaw as le, inject as U, ref as M, computed as V, toValue as Ft, watch as ce, shallowRef as He, onBeforeUpdate as Tt, createVNode as k, normalizeStyle as Pe, normalizeClass as G, createElementVNode as S, mergeProps as B, nextTick as Fe, watchEffect as Ct, capitalize as _t, Fragment as z, createTextVNode as Te, withModifiers as ne, toDisplayString as Bt, toRefs as Ot, defineComponent as Et, h as At } from "vue";
2
- import { aQ as Lt, a8 as Nt, E as q, p as _, aR as ue, ad as je, v as Me, c as he, a4 as J, aS as Rt, y as Y, aT as re, aU as $t, g as $, u as Ht, s as we, b as fe, t as pe, f as jt, aV as oe, h as W, aL as K, aW as Ce, k as O, w as Mt, x as ke, n as Ge, N as Gt, Q as Wt, T as We, U as te, q as Ke, W as Kt, a7 as Ie, aX as zt, ak as A, aY as qt, ag as Ut, Y as ze, aj as Qt, i as _e, al as Xt, o as De, X as ye, af as xe, A as Yt, ap as se, ax as Zt, Z as Jt, B as ea, a2 as ta } from "./dataTables-BEIZ1GFJ.js";
3
- import { V as qe, b as aa, c as de, e as la, m as na, u as ra, d as oa, a as sa } from "./index-DIJYRSnI.js";
4
- import ie from "moment";
5
- function Be(e, t, a) {
6
- return Object.keys(e).filter((l) => Lt(l) && l.endsWith(t)).reduce((l, n) => (l[n.slice(0, -t.length)] = (r) => Nt(e[n], r, a(r)), l), {});
7
- }
8
- const ia = _({
9
- expandOnClick: Boolean,
10
- showExpand: Boolean,
11
- expanded: {
12
- type: Array,
13
- default: () => []
14
- }
15
- }, "DataTable-expand"), Ue = /* @__PURE__ */ Symbol.for("vuetify:datatable:expanded");
16
- function ua(e) {
17
- const t = C(() => e.expandOnClick), a = q(e, "expanded", e.expanded, (f) => new Set(f), (f) => [...f.values()]);
18
- function l(f, u) {
19
- const c = new Set(a.value), m = le(f.value);
20
- if (u)
21
- c.add(m);
22
- else {
23
- const h = [...a.value].find((o) => le(o) === m);
24
- c.delete(h);
25
- }
26
- a.value = c;
27
- }
28
- function n(f) {
29
- const u = le(f.value);
30
- return [...a.value].some((c) => le(c) === u);
31
- }
32
- function r(f) {
33
- l(f, !n(f));
34
- }
35
- const i = {
36
- expand: l,
37
- expanded: a,
38
- expandOnClick: t,
39
- isExpanded: n,
40
- toggleExpand: r
41
- };
42
- return X(Ue, i), i;
43
- }
44
- function Qe() {
45
- const e = U(Ue);
46
- if (!e) throw new Error("foo");
47
- return e;
48
- }
49
- const da = _({
50
- groupBy: {
51
- type: Array,
52
- default: () => []
53
- }
54
- }, "DataTable-group"), Xe = /* @__PURE__ */ Symbol.for("vuetify:data-table-group");
55
- function ca(e) {
56
- return {
57
- groupBy: q(e, "groupBy")
58
- };
59
- }
60
- function fa(e) {
61
- const {
62
- disableSort: t,
63
- groupBy: a,
64
- sortBy: l
65
- } = e, n = M(/* @__PURE__ */ new Set()), r = V(() => a.value.map((m) => ({
66
- ...m,
67
- order: m.order ?? !1
68
- })).concat(t?.value ? [] : l.value));
69
- function i(m) {
70
- return n.value.has(m.id);
71
- }
72
- function f(m) {
73
- const h = new Set(n.value);
74
- i(m) ? h.delete(m.id) : h.add(m.id), n.value = h;
75
- }
76
- function u(m) {
77
- function h(o) {
78
- const s = [];
79
- for (const b of o.items)
80
- "type" in b && b.type === "group" ? s.push(...h(b)) : s.push(b);
81
- return [...new Set(s)];
82
- }
83
- return h({
84
- items: m
85
- });
86
- }
87
- const c = {
88
- sortByWithGroups: r,
89
- toggleGroup: f,
90
- opened: n,
91
- groupBy: a,
92
- extractRows: u,
93
- isGroupOpen: i
94
- };
95
- return X(Xe, c), c;
96
- }
97
- function Ye() {
98
- const e = U(Xe);
99
- if (!e) throw new Error("Missing group!");
100
- return e;
101
- }
102
- function va(e, t) {
103
- if (!e.length) return [];
104
- const a = /* @__PURE__ */ new Map();
105
- for (const l of e) {
106
- const n = ue(l.raw, t);
107
- a.has(n) || a.set(n, []), a.get(n).push(l);
108
- }
109
- return a;
110
- }
111
- function Ze(e, t) {
112
- let a = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 0, l = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "root";
113
- if (!t.length) return [];
114
- const n = va(e, t[0]), r = [], i = t.slice(1);
115
- return n.forEach((f, u) => {
116
- const c = t[0], m = `${l}_${c}_${u}`;
117
- r.push({
118
- depth: a,
119
- id: m,
120
- key: c,
121
- value: u,
122
- items: i.length ? Ze(f, i, a + 1, m) : f,
123
- type: "group"
124
- });
125
- }), r;
126
- }
127
- function Je(e, t, a) {
128
- const l = [];
129
- for (const n of e)
130
- "type" in n && n.type === "group" ? (n.value != null && l.push(n), (t.has(n.id) || n.value == null) && (l.push(...Je(n.items, t, a)), a && l.push({
131
- ...n,
132
- type: "group-summary"
133
- }))) : l.push(n);
134
- return l;
135
- }
136
- function ga(e, t, a, l) {
137
- return {
138
- flatItems: V(() => {
139
- if (!t.value.length) return e.value;
140
- const r = Ze(e.value, t.value.map((i) => i.key));
141
- return Je(r, a.value, Ft(l));
142
- })
143
- };
144
- }
145
- function ma(e) {
146
- let {
147
- page: t,
148
- itemsPerPage: a,
149
- sortBy: l,
150
- groupBy: n,
151
- search: r
152
- } = e;
153
- const i = je("VDataTable"), f = () => ({
154
- page: t.value,
155
- itemsPerPage: a.value,
156
- sortBy: l.value,
157
- groupBy: n.value,
158
- search: r.value
159
- });
160
- let u = null;
161
- ce(f, (c) => {
162
- Me(u, c) || (u && u.search !== c.search && (t.value = 1), i.emit("update:options", c), u = c);
163
- }, {
164
- deep: !0,
165
- immediate: !0
166
- });
167
- }
168
- const ba = _({
169
- page: {
170
- type: [Number, String],
171
- default: 1
172
- },
173
- itemsPerPage: {
174
- type: [Number, String],
175
- default: 10
176
- }
177
- }, "DataTable-paginate"), et = /* @__PURE__ */ Symbol.for("vuetify:data-table-pagination");
178
- function ha(e) {
179
- const t = q(e, "page", void 0, (l) => Number(l ?? 1)), a = q(e, "itemsPerPage", void 0, (l) => Number(l ?? 10));
180
- return {
181
- page: t,
182
- itemsPerPage: a
183
- };
184
- }
185
- function ya(e) {
186
- const {
187
- page: t,
188
- itemsPerPage: a,
189
- itemsLength: l
190
- } = e, n = V(() => a.value === -1 ? 0 : a.value * (t.value - 1)), r = V(() => a.value === -1 ? l.value : Math.min(l.value, n.value + a.value)), i = V(() => a.value === -1 || l.value === 0 ? 1 : Math.ceil(l.value / a.value));
191
- ce([t, i], () => {
192
- t.value > i.value && (t.value = i.value);
193
- });
194
- function f(o) {
195
- a.value = o, t.value = 1;
196
- }
197
- function u() {
198
- t.value = he(t.value + 1, 1, i.value);
199
- }
200
- function c() {
201
- t.value = he(t.value - 1, 1, i.value);
202
- }
203
- function m(o) {
204
- t.value = he(o, 1, i.value);
205
- }
206
- const h = {
207
- page: t,
208
- itemsPerPage: a,
209
- startIndex: n,
210
- stopIndex: r,
211
- pageCount: i,
212
- itemsLength: l,
213
- nextPage: u,
214
- prevPage: c,
215
- setPage: m,
216
- setItemsPerPage: f
217
- };
218
- return X(et, h), h;
219
- }
220
- function pa() {
221
- const e = U(et);
222
- if (!e) throw new Error("Missing pagination!");
223
- return e;
224
- }
225
- function xa(e) {
226
- const t = je("usePaginatedItems"), {
227
- items: a,
228
- startIndex: l,
229
- stopIndex: n,
230
- itemsPerPage: r
231
- } = e, i = V(() => r.value <= 0 ? a.value : a.value.slice(l.value, n.value));
232
- return ce(i, (f) => {
233
- t.emit("update:currentItems", f);
234
- }, {
235
- immediate: !0
236
- }), {
237
- paginatedItems: i
238
- };
239
- }
240
- const Sa = {
241
- showSelectAll: !1,
242
- allSelected: () => [],
243
- select: (e) => {
244
- let {
245
- items: t,
246
- value: a
247
- } = e;
248
- return new Set(a ? [t[0]?.value] : []);
249
- },
250
- selectAll: (e) => {
251
- let {
252
- selected: t
253
- } = e;
254
- return t;
255
- }
256
- }, tt = {
257
- showSelectAll: !0,
258
- allSelected: (e) => {
259
- let {
260
- currentPage: t
261
- } = e;
262
- return t;
263
- },
264
- select: (e) => {
265
- let {
266
- items: t,
267
- value: a,
268
- selected: l
269
- } = e;
270
- for (const n of t)
271
- a ? l.add(n.value) : l.delete(n.value);
272
- return l;
273
- },
274
- selectAll: (e) => {
275
- let {
276
- value: t,
277
- currentPage: a,
278
- selected: l
279
- } = e;
280
- return tt.select({
281
- items: a,
282
- value: t,
283
- selected: l
284
- });
285
- }
286
- }, Pa = {
287
- showSelectAll: !0,
288
- allSelected: (e) => {
289
- let {
290
- allItems: t
291
- } = e;
292
- return t;
293
- },
294
- select: (e) => {
295
- let {
296
- items: t,
297
- value: a,
298
- selected: l
299
- } = e;
300
- for (const n of t)
301
- a ? l.add(n.value) : l.delete(n.value);
302
- return l;
303
- },
304
- selectAll: (e) => {
305
- let {
306
- value: t,
307
- allItems: a
308
- } = e;
309
- return new Set(t ? a.map((l) => l.value) : []);
310
- }
311
- }, wa = _({
312
- showSelect: Boolean,
313
- selectStrategy: {
314
- type: [String, Object],
315
- default: "page"
316
- },
317
- modelValue: {
318
- type: Array,
319
- default: () => []
320
- },
321
- valueComparator: Function
322
- }, "DataTable-select"), at = /* @__PURE__ */ Symbol.for("vuetify:data-table-selection");
323
- function ka(e, t) {
324
- let {
325
- allItems: a,
326
- currentPage: l
327
- } = t;
328
- const n = q(e, "modelValue", e.modelValue, (y) => {
329
- const D = e.valueComparator;
330
- return D ? new Set(J(y).map((T) => a.value.find((P) => D(T, P.value))?.value ?? T)) : new Set(J(y).map((T) => Rt(T) ? a.value.find((P) => T === P.value)?.value ?? T : a.value.find((P) => Me(T, P.value))?.value ?? T));
331
- }, (y) => [...y.values()]), r = V(() => a.value.filter((y) => y.selectable)), i = V(() => l.value.filter((y) => y.selectable)), f = V(() => {
332
- if (typeof e.selectStrategy == "object") return e.selectStrategy;
333
- switch (e.selectStrategy) {
334
- case "single":
335
- return Sa;
336
- case "all":
337
- return Pa;
338
- default:
339
- return tt;
340
- }
341
- }), u = He(null);
342
- function c(y) {
343
- return J(y).every((D) => n.value.has(D.value));
344
- }
345
- function m(y) {
346
- return J(y).some((D) => n.value.has(D.value));
347
- }
348
- function h(y, D) {
349
- const T = f.value.select({
350
- items: y,
351
- value: D,
352
- selected: new Set(n.value)
353
- });
354
- n.value = T;
355
- }
356
- function o(y, D, T) {
357
- const P = [];
358
- if (D = D ?? l.value.findIndex((E) => E.value === y.value), e.selectStrategy !== "single" && T?.shiftKey && u.value !== null) {
359
- const [E, N] = [u.value, D].sort((p, x) => p - x);
360
- P.push(...l.value.slice(E, N + 1).filter((p) => p.selectable));
361
- } else
362
- P.push(y), u.value = D;
363
- h(P, !c([y]));
364
- }
365
- function s(y) {
366
- const D = f.value.selectAll({
367
- value: y,
368
- allItems: r.value,
369
- currentPage: i.value,
370
- selected: new Set(n.value)
371
- });
372
- n.value = D;
373
- }
374
- const b = V(() => n.value.size > 0), d = V(() => {
375
- const y = f.value.allSelected({
376
- allItems: r.value,
377
- currentPage: i.value
378
- });
379
- return !!y.length && c(y);
380
- }), v = C(() => f.value.showSelectAll), I = {
381
- toggleSelect: o,
382
- select: h,
383
- selectAll: s,
384
- isSelected: c,
385
- isSomeSelected: m,
386
- someSelected: b,
387
- allSelected: d,
388
- showSelectAll: v,
389
- lastSelectedIndex: u,
390
- selectStrategy: f
391
- };
392
- return X(at, I), I;
393
- }
394
- function ve() {
395
- const e = U(at);
396
- if (!e) throw new Error("Missing selection!");
397
- return e;
398
- }
399
- const Ia = _({
400
- initialSortOrder: {
401
- type: String,
402
- default: "asc",
403
- validator: (e) => !e || ["asc", "desc"].includes(e)
404
- },
405
- sortBy: {
406
- type: Array,
407
- default: () => []
408
- },
409
- customKeySort: Object,
410
- multiSort: {
411
- type: [Boolean, Object],
412
- default: !1
413
- },
414
- mustSort: Boolean
415
- }, "DataTable-sort"), lt = /* @__PURE__ */ Symbol.for("vuetify:data-table-sort");
416
- function Da(e) {
417
- const t = C(() => e.initialSortOrder), a = q(e, "sortBy"), l = C(() => e.mustSort), n = C(() => e.multiSort);
418
- return {
419
- initialSortOrder: t,
420
- sortBy: a,
421
- multiSort: n,
422
- mustSort: l
423
- };
424
- }
425
- function Va(e, t) {
426
- if (!$t(e))
427
- return {
428
- active: !!e
429
- };
430
- const {
431
- key: a,
432
- mode: l,
433
- modifier: n
434
- } = e, r = n === "alt" && t?.altKey || n === "shift" && t?.shiftKey;
435
- return {
436
- active: !a || t?.ctrlKey || t?.metaKey || !1,
437
- mode: r ? l === "append" ? "prepend" : "append" : l
438
- };
439
- }
440
- function Fa(e) {
441
- const {
442
- initialSortOrder: t,
443
- sortBy: a,
444
- mustSort: l,
445
- multiSort: n,
446
- page: r
447
- } = e, i = (c, m) => {
448
- if (c.key == null) return;
449
- let h = a.value.map((d) => ({
450
- ...d
451
- })) ?? [];
452
- const o = h.find((d) => d.key === c.key), s = t.value, b = t.value === "desc" ? "asc" : "desc";
453
- if (o)
454
- o.order === b ? l.value && h.length === 1 ? o.order = t.value : h = h.filter((d) => d.key !== c.key) : o.order = b;
455
- else {
456
- const {
457
- active: d,
458
- mode: v
459
- } = Va(n.value, m);
460
- d ? v === "prepend" ? h.unshift({
461
- key: c.key,
462
- order: s
463
- }) : h.push({
464
- key: c.key,
465
- order: s
466
- }) : h = [{
467
- key: c.key,
468
- order: s
469
- }];
470
- }
471
- a.value = h, r && (r.value = 1);
472
- };
473
- function f(c) {
474
- return !!a.value.find((m) => m.key === c.key);
475
- }
476
- const u = {
477
- sortBy: a,
478
- toggleSort: i,
479
- isSorted: f
480
- };
481
- return X(lt, u), u;
482
- }
483
- function nt() {
484
- const e = U(lt);
485
- if (!e) throw new Error("Missing sort!");
486
- return e;
487
- }
488
- function Ta(e, t, a, l) {
489
- const n = Y();
490
- return {
491
- sortedItems: V(() => a.value.length ? Ca(t.value, a.value, n.current.value, {
492
- transform: l?.transform,
493
- sortFunctions: {
494
- ...e.customKeySort,
495
- ...l?.sortFunctions?.value
496
- },
497
- sortRawFunctions: l?.sortRawFunctions?.value
498
- }) : t.value)
499
- };
500
- }
501
- function Ca(e, t, a, l) {
502
- const n = new Intl.Collator(a, {
503
- sensitivity: "accent",
504
- usage: "sort"
505
- });
506
- return e.map((i) => [i, l?.transform ? l.transform(i) : i]).sort((i, f) => {
507
- for (let u = 0; u < t.length; u++) {
508
- let c = !1;
509
- const m = t[u].key, h = t[u].order ?? "asc";
510
- if (h === !1) continue;
511
- let o = ue(i[1], m), s = ue(f[1], m), b = i[0].raw, d = f[0].raw;
512
- if (h === "desc" && ([o, s] = [s, o], [b, d] = [d, b]), l?.sortRawFunctions?.[m]) {
513
- const v = l.sortRawFunctions[m](b, d);
514
- if (v == null) continue;
515
- if (c = !0, v) return v;
516
- }
517
- if (l?.sortFunctions?.[m]) {
518
- const v = l.sortFunctions[m](o, s);
519
- if (v == null) continue;
520
- if (c = !0, v) return v;
521
- }
522
- if (!c && (o instanceof Date && s instanceof Date && (o = o.getTime(), s = s.getTime()), [o, s] = [o, s].map((v) => v != null ? v.toString().toLocaleLowerCase() : v), o !== s))
523
- return re(o) && re(s) ? 0 : re(o) ? -1 : re(s) ? 1 : !isNaN(o) && !isNaN(s) ? Number(o) - Number(s) : n.compare(o, s);
524
- }
525
- return 0;
526
- }).map((i) => {
527
- let [f] = i;
528
- return f;
529
- });
530
- }
531
- function _a() {
532
- const e = M([]);
533
- Tt(() => e.value = []);
534
- function t(a, l) {
535
- e.value[l] = a;
536
- }
537
- return {
538
- refs: e,
539
- updateRef: t
540
- };
541
- }
542
- const Ba = _({
543
- activeColor: String,
544
- start: {
545
- type: [Number, String],
546
- default: 1
547
- },
548
- modelValue: {
549
- type: Number,
550
- default: (e) => e.start
551
- },
552
- disabled: Boolean,
553
- length: {
554
- type: [Number, String],
555
- default: 1,
556
- validator: (e) => e % 1 === 0
557
- },
558
- totalVisible: [Number, String],
559
- firstIcon: {
560
- type: O,
561
- default: "$first"
562
- },
563
- prevIcon: {
564
- type: O,
565
- default: "$prev"
566
- },
567
- nextIcon: {
568
- type: O,
569
- default: "$next"
570
- },
571
- lastIcon: {
572
- type: O,
573
- default: "$last"
574
- },
575
- ariaLabel: {
576
- type: String,
577
- default: "$vuetify.pagination.ariaLabel.root"
578
- },
579
- pageAriaLabel: {
580
- type: String,
581
- default: "$vuetify.pagination.ariaLabel.page"
582
- },
583
- currentPageAriaLabel: {
584
- type: String,
585
- default: "$vuetify.pagination.ariaLabel.currentPage"
586
- },
587
- firstAriaLabel: {
588
- type: String,
589
- default: "$vuetify.pagination.ariaLabel.first"
590
- },
591
- previousAriaLabel: {
592
- type: String,
593
- default: "$vuetify.pagination.ariaLabel.previous"
594
- },
595
- nextAriaLabel: {
596
- type: String,
597
- default: "$vuetify.pagination.ariaLabel.next"
598
- },
599
- lastAriaLabel: {
600
- type: String,
601
- default: "$vuetify.pagination.ariaLabel.last"
602
- },
603
- ellipsis: {
604
- type: String,
605
- default: "..."
606
- },
607
- showFirstLastPage: Boolean,
608
- ...Kt(),
609
- ...Ke(),
610
- ...te(),
611
- ...We(),
612
- ...Wt(),
613
- ...Gt(),
614
- ...Ge({
615
- tag: "nav"
616
- }),
617
- ...ke(),
618
- ...Mt({
619
- variant: "text"
620
- })
621
- }, "VPagination"), Oe = $()({
622
- name: "VPagination",
623
- props: Ba(),
624
- emits: {
625
- "update:modelValue": (e) => !0,
626
- first: (e) => !0,
627
- prev: (e) => !0,
628
- next: (e) => !0,
629
- last: (e) => !0
630
- },
631
- setup(e, t) {
632
- let {
633
- slots: a,
634
- emit: l
635
- } = t;
636
- const n = q(e, "modelValue"), {
637
- t: r,
638
- n: i
639
- } = Y(), {
640
- isRtl: f
641
- } = Ht(), {
642
- themeClasses: u
643
- } = we(e), {
644
- width: c
645
- } = fe(), m = He(-1);
646
- pe(void 0, {
647
- scoped: !0
648
- });
649
- const {
650
- resizeRef: h
651
- } = jt((p) => {
652
- if (!p.length) return;
653
- const {
654
- target: x,
655
- contentRect: g
656
- } = p[0], w = x.querySelector(".v-pagination__list > *");
657
- if (!w) return;
658
- const F = g.width, R = w.offsetWidth + parseFloat(getComputedStyle(w).marginRight) * 2;
659
- m.value = d(F, R);
660
- }), o = V(() => parseInt(e.length, 10)), s = V(() => parseInt(e.start, 10)), b = V(() => e.totalVisible != null ? parseInt(e.totalVisible, 10) : m.value >= 0 ? m.value : d(c.value, 58));
661
- function d(p, x) {
662
- const g = e.showFirstLastPage ? 5 : 3;
663
- return Math.max(0, Math.floor(
664
- // Round to two decimal places to avoid floating point errors
665
- Number(((p - x * g) / x).toFixed(2))
666
- ));
667
- }
668
- const v = V(() => {
669
- if (o.value <= 0 || isNaN(o.value) || o.value > Number.MAX_SAFE_INTEGER) return [];
670
- if (b.value <= 0) return [];
671
- if (b.value === 1) return [n.value];
672
- if (o.value <= b.value)
673
- return oe(o.value, s.value);
674
- const p = b.value % 2 === 0, x = p ? b.value / 2 : Math.floor(b.value / 2), g = p ? x : x + 1, w = o.value - x;
675
- if (g - n.value >= 0)
676
- return [...oe(Math.max(1, b.value - 1), s.value), e.ellipsis, o.value];
677
- if (n.value - w >= (p ? 1 : 0)) {
678
- const F = b.value - 1, R = o.value - F + s.value;
679
- return [s.value, e.ellipsis, ...oe(F, R)];
680
- } else {
681
- const F = Math.max(1, b.value - 2), R = F === 1 ? n.value : n.value - Math.ceil(F / 2) + s.value;
682
- return [s.value, e.ellipsis, ...oe(F, R), e.ellipsis, o.value];
683
- }
684
- });
685
- function I(p, x, g) {
686
- p.preventDefault(), n.value = x, g && l(g, x);
687
- }
688
- const {
689
- refs: y,
690
- updateRef: D
691
- } = _a();
692
- pe({
693
- VPaginationBtn: {
694
- color: C(() => e.color),
695
- border: C(() => e.border),
696
- density: C(() => e.density),
697
- size: C(() => e.size),
698
- variant: C(() => e.variant),
699
- rounded: C(() => e.rounded),
700
- elevation: C(() => e.elevation)
701
- }
702
- });
703
- const T = V(() => v.value.map((p, x) => {
704
- const g = (w) => D(w, x);
705
- if (typeof p == "string")
706
- return {
707
- isActive: !1,
708
- key: `ellipsis-${x}`,
709
- page: p,
710
- props: {
711
- ref: g,
712
- ellipsis: !0,
713
- icon: !0,
714
- disabled: !0
715
- }
716
- };
717
- {
718
- const w = p === n.value;
719
- return {
720
- isActive: w,
721
- key: p,
722
- page: i(p),
723
- props: {
724
- ref: g,
725
- ellipsis: !1,
726
- icon: !0,
727
- disabled: !!e.disabled || Number(e.length) < 2,
728
- color: w ? e.activeColor : e.color,
729
- "aria-current": w,
730
- "aria-label": r(w ? e.currentPageAriaLabel : e.pageAriaLabel, p),
731
- onClick: (F) => I(F, p)
732
- }
733
- };
734
- }
735
- })), P = V(() => {
736
- const p = !!e.disabled || n.value <= s.value, x = !!e.disabled || n.value >= s.value + o.value - 1;
737
- return {
738
- first: e.showFirstLastPage ? {
739
- icon: f.value ? e.lastIcon : e.firstIcon,
740
- onClick: (g) => I(g, s.value, "first"),
741
- disabled: p,
742
- "aria-label": r(e.firstAriaLabel),
743
- "aria-disabled": p
744
- } : void 0,
745
- prev: {
746
- icon: f.value ? e.nextIcon : e.prevIcon,
747
- onClick: (g) => I(g, n.value - 1, "prev"),
748
- disabled: p,
749
- "aria-label": r(e.previousAriaLabel),
750
- "aria-disabled": p
751
- },
752
- next: {
753
- icon: f.value ? e.prevIcon : e.nextIcon,
754
- onClick: (g) => I(g, n.value + 1, "next"),
755
- disabled: x,
756
- "aria-label": r(e.nextAriaLabel),
757
- "aria-disabled": x
758
- },
759
- last: e.showFirstLastPage ? {
760
- icon: f.value ? e.firstIcon : e.lastIcon,
761
- onClick: (g) => I(g, s.value + o.value - 1, "last"),
762
- disabled: x,
763
- "aria-label": r(e.lastAriaLabel),
764
- "aria-disabled": x
765
- } : void 0
766
- };
767
- });
768
- function E() {
769
- const p = n.value - s.value;
770
- y.value[p]?.$el.focus();
771
- }
772
- function N(p) {
773
- p.key === Ce.left && !e.disabled && n.value > Number(e.start) ? (n.value = n.value - 1, Fe(E)) : p.key === Ce.right && !e.disabled && n.value < s.value + o.value - 1 && (n.value = n.value + 1, Fe(E));
774
- }
775
- return W(() => k(e.tag, {
776
- ref: h,
777
- class: G(["v-pagination", u.value, e.class]),
778
- style: Pe(e.style),
779
- role: "navigation",
780
- "aria-label": r(e.ariaLabel),
781
- onKeydown: N,
782
- "data-test": "v-pagination-root"
783
- }, {
784
- default: () => [S("ul", {
785
- class: "v-pagination__list"
786
- }, [e.showFirstLastPage && S("li", {
787
- key: "first",
788
- class: "v-pagination__first",
789
- "data-test": "v-pagination-first"
790
- }, [a.first ? a.first(P.value.first) : k(K, B({
791
- _as: "VPaginationBtn"
792
- }, P.value.first), null)]), S("li", {
793
- key: "prev",
794
- class: "v-pagination__prev",
795
- "data-test": "v-pagination-prev"
796
- }, [a.prev ? a.prev(P.value.prev) : k(K, B({
797
- _as: "VPaginationBtn"
798
- }, P.value.prev), null)]), T.value.map((p, x) => S("li", {
799
- key: p.key,
800
- class: G(["v-pagination__item", {
801
- "v-pagination__item--is-active": p.isActive
802
- }]),
803
- "data-test": "v-pagination-item"
804
- }, [a.item ? a.item(p) : k(K, B({
805
- _as: "VPaginationBtn"
806
- }, p.props), {
807
- default: () => [p.page]
808
- })])), S("li", {
809
- key: "next",
810
- class: "v-pagination__next",
811
- "data-test": "v-pagination-next"
812
- }, [a.next ? a.next(P.value.next) : k(K, B({
813
- _as: "VPaginationBtn"
814
- }, P.value.next), null)]), e.showFirstLastPage && S("li", {
815
- key: "last",
816
- class: "v-pagination__last",
817
- "data-test": "v-pagination-last"
818
- }, [a.last ? a.last(P.value.last) : k(K, B({
819
- _as: "VPaginationBtn"
820
- }, P.value.last), null)])])]
821
- })), {};
822
- }
823
- }), rt = _({
824
- color: String,
825
- prevIcon: {
826
- type: O,
827
- default: "$prev"
828
- },
829
- nextIcon: {
830
- type: O,
831
- default: "$next"
832
- },
833
- firstIcon: {
834
- type: O,
835
- default: "$first"
836
- },
837
- lastIcon: {
838
- type: O,
839
- default: "$last"
840
- },
841
- itemsPerPageText: {
842
- type: String,
843
- default: "$vuetify.dataFooter.itemsPerPageText"
844
- },
845
- pageText: {
846
- type: String,
847
- default: "$vuetify.dataFooter.pageText"
848
- },
849
- firstPageLabel: {
850
- type: String,
851
- default: "$vuetify.dataFooter.firstPage"
852
- },
853
- prevPageLabel: {
854
- type: String,
855
- default: "$vuetify.dataFooter.prevPage"
856
- },
857
- nextPageLabel: {
858
- type: String,
859
- default: "$vuetify.dataFooter.nextPage"
860
- },
861
- lastPageLabel: {
862
- type: String,
863
- default: "$vuetify.dataFooter.lastPage"
864
- },
865
- itemsPerPageOptions: {
866
- type: Array,
867
- default: () => [{
868
- value: 10,
869
- title: "10"
870
- }, {
871
- value: 25,
872
- title: "25"
873
- }, {
874
- value: 50,
875
- title: "50"
876
- }, {
877
- value: 100,
878
- title: "100"
879
- }, {
880
- value: -1,
881
- title: "$vuetify.dataFooter.itemsPerPageAll"
882
- }]
883
- },
884
- showCurrentPage: Boolean
885
- }, "VDataTableFooter"), Ee = $()({
886
- name: "VDataTableFooter",
887
- props: rt(),
888
- setup(e, t) {
889
- let {
890
- slots: a
891
- } = t;
892
- const {
893
- t: l
894
- } = Y(), {
895
- page: n,
896
- pageCount: r,
897
- startIndex: i,
898
- stopIndex: f,
899
- itemsLength: u,
900
- itemsPerPage: c,
901
- setItemsPerPage: m
902
- } = pa(), h = V(() => e.itemsPerPageOptions.map((o) => typeof o == "number" ? {
903
- value: o,
904
- title: o === -1 ? l("$vuetify.dataFooter.itemsPerPageAll") : String(o)
905
- } : {
906
- ...o,
907
- title: isNaN(Number(o.title)) ? l(o.title) : o.title
908
- }));
909
- return W(() => {
910
- const o = Oe.filterProps(e);
911
- return S("div", {
912
- class: "v-data-table-footer"
913
- }, [a.prepend?.(), S("div", {
914
- class: "v-data-table-footer__items-per-page"
915
- }, [S("span", null, [l(e.itemsPerPageText)]), k(qe, {
916
- items: h.value,
917
- itemColor: e.color,
918
- modelValue: c.value,
919
- "onUpdate:modelValue": (s) => m(Number(s)),
920
- density: "compact",
921
- variant: "outlined",
922
- "aria-label": l(e.itemsPerPageText),
923
- hideDetails: !0
924
- }, null)]), S("div", {
925
- class: "v-data-table-footer__info"
926
- }, [S("div", null, [l(e.pageText, u.value ? i.value + 1 : 0, f.value, u.value)])]), S("div", {
927
- class: "v-data-table-footer__pagination"
928
- }, [k(Oe, B({
929
- modelValue: n.value,
930
- "onUpdate:modelValue": (s) => n.value = s,
931
- density: "comfortable",
932
- firstAriaLabel: e.firstPageLabel,
933
- lastAriaLabel: e.lastPageLabel,
934
- length: r.value,
935
- nextAriaLabel: e.nextPageLabel,
936
- previousAriaLabel: e.prevPageLabel,
937
- rounded: !0,
938
- showFirstLastPage: !0,
939
- totalVisible: e.showCurrentPage ? 1 : 0,
940
- variant: "plain"
941
- }, Ie(o, ["color"])), null)])]);
942
- }), {};
943
- }
944
- }), ee = zt({
945
- align: {
946
- type: String,
947
- default: "start"
948
- },
949
- fixed: {
950
- type: [Boolean, String],
951
- default: !1
952
- },
953
- fixedOffset: [Number, String],
954
- fixedEndOffset: [Number, String],
955
- height: [Number, String],
956
- lastFixed: Boolean,
957
- firstFixedEnd: Boolean,
958
- noPadding: Boolean,
959
- indent: [Number, String],
960
- empty: Boolean,
961
- tag: String,
962
- width: [Number, String],
963
- maxWidth: [Number, String],
964
- nowrap: Boolean
965
- }, (e, t) => {
966
- let {
967
- slots: a
968
- } = t;
969
- const l = e.tag ?? "td", n = typeof e.fixed == "string" ? e.fixed : e.fixed ? "start" : "none";
970
- return k(l, {
971
- class: G(["v-data-table__td", {
972
- "v-data-table-column--fixed": n === "start",
973
- "v-data-table-column--fixed-end": n === "end",
974
- "v-data-table-column--last-fixed": e.lastFixed,
975
- "v-data-table-column--first-fixed-end": e.firstFixedEnd,
976
- "v-data-table-column--no-padding": e.noPadding,
977
- "v-data-table-column--nowrap": e.nowrap,
978
- "v-data-table-column--empty": e.empty
979
- }, `v-data-table-column--align-${e.align}`]),
980
- style: {
981
- height: A(e.height),
982
- width: A(e.width),
983
- maxWidth: A(e.maxWidth),
984
- left: n === "start" ? A(e.fixedOffset || null) : void 0,
985
- right: n === "end" ? A(e.fixedEndOffset || null) : void 0,
986
- paddingInlineStart: e.indent ? A(e.indent) : void 0
987
- }
988
- }, {
989
- default: () => [a.default?.()]
990
- });
991
- }), Oa = _({
992
- headers: Array
993
- }, "DataTable-header"), ot = /* @__PURE__ */ Symbol.for("vuetify:data-table-headers"), st = {
994
- title: "",
995
- sortable: !1
996
- }, Ea = {
997
- ...st,
998
- width: 48
999
- };
1000
- function Aa() {
1001
- const t = (arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : []).map((a) => ({
1002
- element: a,
1003
- priority: 0
1004
- }));
1005
- return {
1006
- enqueue: (a, l) => {
1007
- let n = !1;
1008
- for (let r = 0; r < t.length; r++)
1009
- if (t[r].priority > l) {
1010
- t.splice(r, 0, {
1011
- element: a,
1012
- priority: l
1013
- }), n = !0;
1014
- break;
1015
- }
1016
- n || t.push({
1017
- element: a,
1018
- priority: l
1019
- });
1020
- },
1021
- size: () => t.length,
1022
- count: () => {
1023
- let a = 0;
1024
- if (!t.length) return 0;
1025
- const l = Math.floor(t[0].priority);
1026
- for (let n = 0; n < t.length; n++)
1027
- Math.floor(t[n].priority) === l && (a += 1);
1028
- return a;
1029
- },
1030
- dequeue: () => t.shift()
1031
- };
1032
- }
1033
- function Se(e) {
1034
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
1035
- if (!e.children)
1036
- t.push(e);
1037
- else
1038
- for (const a of e.children)
1039
- Se(a, t);
1040
- return t;
1041
- }
1042
- function it(e) {
1043
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : /* @__PURE__ */ new Set();
1044
- for (const a of e)
1045
- a.key && t.add(a.key), a.children && it(a.children, t);
1046
- return t;
1047
- }
1048
- function La(e) {
1049
- if (e.key) {
1050
- if (e.key === "data-table-group") return st;
1051
- if (["data-table-expand", "data-table-select"].includes(e.key)) return Ea;
1052
- }
1053
- }
1054
- function Ve(e) {
1055
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
1056
- return e.children ? Math.max(t, ...e.children.map((a) => Ve(a, t + 1))) : t;
1057
- }
1058
- function Na(e) {
1059
- let t = !1;
1060
- function a(r, i) {
1061
- let f = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "none";
1062
- if (r)
1063
- if (f !== "none" && (r.fixed = f), r.fixed === !0 && (r.fixed = "start"), r.fixed === i)
1064
- if (r.children)
1065
- if (i === "start")
1066
- for (let u = r.children.length - 1; u >= 0; u--)
1067
- a(r.children[u], i, i);
1068
- else
1069
- for (let u = 0; u < r.children.length; u++)
1070
- a(r.children[u], i, i);
1071
- else
1072
- !t && i === "start" ? r.lastFixed = !0 : !t && i === "end" ? r.firstFixedEnd = !0 : isNaN(Number(r.width)) ? qt(`Multiple fixed columns should have a static width (key: ${r.key})`) : r.minWidth = Math.max(Number(r.width) || 0, Number(r.minWidth) || 0), t = !0;
1073
- else if (r.children)
1074
- if (i === "start")
1075
- for (let u = r.children.length - 1; u >= 0; u--)
1076
- a(r.children[u], i);
1077
- else
1078
- for (let u = 0; u < r.children.length; u++)
1079
- a(r.children[u], i);
1080
- else
1081
- t = !1;
1082
- }
1083
- for (let r = e.length - 1; r >= 0; r--)
1084
- a(e[r], "start");
1085
- for (let r = 0; r < e.length; r++)
1086
- a(e[r], "end");
1087
- let l = 0;
1088
- for (let r = 0; r < e.length; r++)
1089
- l = ut(e[r], l);
1090
- let n = 0;
1091
- for (let r = e.length - 1; r >= 0; r--)
1092
- n = dt(e[r], n);
1093
- }
1094
- function ut(e) {
1095
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
1096
- if (!e) return t;
1097
- if (e.children) {
1098
- e.fixedOffset = t;
1099
- for (const a of e.children)
1100
- t = ut(a, t);
1101
- } else e.fixed && e.fixed !== "end" && (e.fixedOffset = t, t += parseFloat(e.width || "0") || 0);
1102
- return t;
1103
- }
1104
- function dt(e) {
1105
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
1106
- if (!e) return t;
1107
- if (e.children) {
1108
- e.fixedEndOffset = t;
1109
- for (const a of e.children)
1110
- t = dt(a, t);
1111
- } else e.fixed === "end" && (e.fixedEndOffset = t, t += parseFloat(e.width || "0") || 0);
1112
- return t;
1113
- }
1114
- function Ra(e, t) {
1115
- const a = [];
1116
- let l = 0;
1117
- const n = Aa(e);
1118
- for (; n.size() > 0; ) {
1119
- let i = n.count();
1120
- const f = [];
1121
- let u = 1;
1122
- for (; i > 0; ) {
1123
- const {
1124
- element: c,
1125
- priority: m
1126
- } = n.dequeue(), h = t - l - Ve(c);
1127
- if (f.push({
1128
- ...c,
1129
- rowspan: h ?? 1,
1130
- colspan: c.children ? Se(c).length : 1
1131
- }), c.children)
1132
- for (const o of c.children) {
1133
- const s = m % 1 + u / Math.pow(10, l + 2);
1134
- n.enqueue(o, l + h + s);
1135
- }
1136
- u += 1, i -= 1;
1137
- }
1138
- l += 1, a.push(f);
1139
- }
1140
- return {
1141
- columns: e.map((i) => Se(i)).flat(),
1142
- headers: a
1143
- };
1144
- }
1145
- function ct(e) {
1146
- const t = [];
1147
- for (const a of e) {
1148
- const l = {
1149
- ...La(a),
1150
- ...a
1151
- }, n = l.key ?? (typeof l.value == "string" ? l.value : null), r = l.value ?? n ?? null, i = {
1152
- ...l,
1153
- key: n,
1154
- value: r,
1155
- sortable: l.sortable ?? (l.key != null || !!l.sort),
1156
- children: l.children ? ct(l.children) : void 0
1157
- };
1158
- t.push(i);
1159
- }
1160
- return t;
1161
- }
1162
- function $a(e, t) {
1163
- const a = M([]), l = M([]), n = M({}), r = M({}), i = M({});
1164
- Ct(() => {
1165
- const c = (e.headers || Object.keys(e.items[0] ?? {}).map((d) => ({
1166
- key: d,
1167
- title: _t(d)
1168
- }))).slice(), m = it(c);
1169
- t?.groupBy?.value.length && !m.has("data-table-group") && c.unshift({
1170
- key: "data-table-group",
1171
- title: "Group"
1172
- }), t?.showSelect?.value && !m.has("data-table-select") && c.unshift({
1173
- key: "data-table-select"
1174
- }), t?.showExpand?.value && !m.has("data-table-expand") && c.push({
1175
- key: "data-table-expand"
1176
- });
1177
- const h = ct(c);
1178
- Na(h);
1179
- const o = Math.max(...h.map((d) => Ve(d))) + 1, s = Ra(h, o);
1180
- a.value = s.headers, l.value = s.columns;
1181
- const b = s.headers.flat(1);
1182
- for (const d of b)
1183
- d.key && (d.sortable && (d.sort && (n.value[d.key] = d.sort), d.sortRaw && (r.value[d.key] = d.sortRaw)), d.filter && (i.value[d.key] = d.filter));
1184
- });
1185
- const f = {
1186
- headers: a,
1187
- columns: l,
1188
- sortFunctions: n,
1189
- sortRawFunctions: r,
1190
- filterFunctions: i
1191
- };
1192
- return X(ot, f), f;
1193
- }
1194
- function ge() {
1195
- const e = U(ot);
1196
- if (!e) throw new Error("Missing headers!");
1197
- return e;
1198
- }
1199
- const ft = _({
1200
- color: String,
1201
- disableSort: Boolean,
1202
- fixedHeader: Boolean,
1203
- multiSort: Boolean,
1204
- initialSortOrder: String,
1205
- sortAscIcon: {
1206
- type: O,
1207
- default: "$sortAsc"
1208
- },
1209
- sortDescIcon: {
1210
- type: O,
1211
- default: "$sortDesc"
1212
- },
1213
- headerProps: {
1214
- type: Object
1215
- },
1216
- /** @deprecated */
1217
- sticky: Boolean,
1218
- ...te(),
1219
- ...De(),
1220
- ...Xt()
1221
- }, "VDataTableHeaders"), Ae = $()({
1222
- name: "VDataTableHeaders",
1223
- props: ft(),
1224
- setup(e, t) {
1225
- let {
1226
- slots: a
1227
- } = t;
1228
- const {
1229
- t: l
1230
- } = Y(), {
1231
- toggleSort: n,
1232
- sortBy: r,
1233
- isSorted: i
1234
- } = nt(), {
1235
- someSelected: f,
1236
- allSelected: u,
1237
- selectAll: c,
1238
- showSelectAll: m
1239
- } = ve(), {
1240
- columns: h,
1241
- headers: o
1242
- } = ge(), {
1243
- loaderClasses: s
1244
- } = Ut(e);
1245
- function b(x, g) {
1246
- if (!(e.sticky || e.fixedHeader) && !x.fixed) return;
1247
- const w = typeof x.fixed == "string" ? x.fixed : x.fixed ? "start" : "none";
1248
- return {
1249
- position: "sticky",
1250
- left: w === "start" ? A(x.fixedOffset) : void 0,
1251
- right: w === "end" ? A(x.fixedEndOffset) : void 0,
1252
- top: e.sticky || e.fixedHeader ? `calc(var(--v-table-header-height) * ${g})` : void 0
1253
- };
1254
- }
1255
- function d(x, g) {
1256
- x.key === "Enter" && !e.disableSort && n(g, x);
1257
- }
1258
- function v(x) {
1259
- const g = r.value.find((w) => w.key === x.key);
1260
- return !g && e.initialSortOrder === "asc" || g?.order === "asc" ? e.sortAscIcon : e.sortDescIcon;
1261
- }
1262
- const {
1263
- backgroundColorClasses: I,
1264
- backgroundColorStyles: y
1265
- } = ze(() => e.color), {
1266
- displayClasses: D,
1267
- mobile: T
1268
- } = fe(e), P = V(() => ({
1269
- headers: o.value,
1270
- columns: h.value,
1271
- toggleSort: n,
1272
- isSorted: i,
1273
- sortBy: r.value,
1274
- someSelected: f.value,
1275
- allSelected: u.value,
1276
- selectAll: c,
1277
- getSortIcon: v
1278
- })), E = V(() => ["v-data-table__th", {
1279
- "v-data-table__th--sticky": e.sticky || e.fixedHeader
1280
- }, D.value, s.value]), N = (x) => {
1281
- let {
1282
- column: g,
1283
- x: w,
1284
- y: F
1285
- } = x;
1286
- const R = g.key === "data-table-select" || g.key === "data-table-expand", ae = g.key === "data-table-group" && g.width === 0 && !g.title, be = B(e.headerProps ?? {}, g.headerProps ?? {});
1287
- return k(ee, B({
1288
- tag: "th",
1289
- align: g.align,
1290
- class: [{
1291
- "v-data-table__th--sortable": g.sortable && !e.disableSort,
1292
- "v-data-table__th--sorted": i(g),
1293
- "v-data-table__th--fixed": g.fixed
1294
- }, ...E.value],
1295
- style: {
1296
- width: A(g.width),
1297
- minWidth: A(g.minWidth),
1298
- maxWidth: A(g.maxWidth),
1299
- ...b(g, F)
1300
- },
1301
- colspan: g.colspan,
1302
- rowspan: g.rowspan,
1303
- fixed: g.fixed,
1304
- nowrap: g.nowrap,
1305
- lastFixed: g.lastFixed,
1306
- firstFixedEnd: g.firstFixedEnd,
1307
- noPadding: R,
1308
- empty: ae,
1309
- tabindex: g.sortable ? 0 : void 0,
1310
- onClick: g.sortable ? (H) => n(g, H) : void 0,
1311
- onKeydown: g.sortable ? (H) => d(H, g) : void 0
1312
- }, be), {
1313
- default: () => {
1314
- const H = `header.${g.key}`, Q = {
1315
- column: g,
1316
- selectAll: c,
1317
- isSorted: i,
1318
- toggleSort: n,
1319
- sortBy: r.value,
1320
- someSelected: f.value,
1321
- allSelected: u.value,
1322
- getSortIcon: v
1323
- };
1324
- return a[H] ? a[H](Q) : ae ? "" : g.key === "data-table-select" ? a["header.data-table-select"]?.(Q) ?? (m.value && k(de, {
1325
- color: e.color,
1326
- density: e.density,
1327
- modelValue: u.value,
1328
- indeterminate: f.value && !u.value,
1329
- "onUpdate:modelValue": c
1330
- }, null)) : S("div", {
1331
- class: "v-data-table-header__content"
1332
- }, [S("span", null, [g.title]), g.sortable && !e.disableSort && k(_e, {
1333
- key: "icon",
1334
- class: "v-data-table-header__sort-icon",
1335
- icon: v(g)
1336
- }, null), e.multiSort && i(g) && S("div", {
1337
- key: "badge",
1338
- class: G(["v-data-table-header__sort-badge", ...I.value]),
1339
- style: Pe(y.value)
1340
- }, [r.value.findIndex((Z) => Z.key === g.key) + 1])]);
1341
- }
1342
- });
1343
- }, p = () => {
1344
- const x = V(() => h.value.filter((w) => w?.sortable && !e.disableSort)), g = h.value.find((w) => w.key === "data-table-select");
1345
- return k(ee, B({
1346
- tag: "th",
1347
- class: [...E.value],
1348
- colspan: o.value.length + 1
1349
- }, e.headerProps), {
1350
- default: () => [S("div", {
1351
- class: "v-data-table-header__content"
1352
- }, [k(qe, {
1353
- chips: !0,
1354
- color: e.color,
1355
- class: "v-data-table__td-sort-select",
1356
- clearable: !0,
1357
- density: "default",
1358
- items: x.value,
1359
- label: l("$vuetify.dataTable.sortBy"),
1360
- multiple: e.multiSort,
1361
- variant: "underlined",
1362
- "onClick:clear": () => r.value = []
1363
- }, {
1364
- append: g ? () => k(de, {
1365
- color: e.color,
1366
- density: "compact",
1367
- modelValue: u.value,
1368
- indeterminate: f.value && !u.value,
1369
- "onUpdate:modelValue": () => c(!u.value)
1370
- }, null) : void 0,
1371
- chip: (w) => k(aa, {
1372
- onClick: w.item.raw?.sortable ? () => n(w.item.raw) : void 0,
1373
- onMousedown: (F) => {
1374
- F.preventDefault(), F.stopPropagation();
1375
- }
1376
- }, {
1377
- default: () => [w.item.title, k(_e, {
1378
- class: G(["v-data-table__td-sort-icon", i(w.item.raw) && "v-data-table__td-sort-icon-active"]),
1379
- icon: v(w.item.raw),
1380
- size: "small"
1381
- }, null)]
1382
- })
1383
- })])]
1384
- });
1385
- };
1386
- W(() => T.value ? S("tr", null, [k(p, null, null)]) : S(z, null, [a.headers ? a.headers(P.value) : o.value.map((x, g) => S("tr", null, [x.map((w, F) => k(N, {
1387
- column: w,
1388
- x: F,
1389
- y: g
1390
- }, null))])), e.loading && S("tr", {
1391
- class: "v-data-table-progress"
1392
- }, [S("th", {
1393
- colspan: h.value.length
1394
- }, [k(Qt, {
1395
- name: "v-data-table-progress",
1396
- absolute: !0,
1397
- active: !0,
1398
- color: typeof e.loading == "boolean" || e.loading === "true" ? e.color : e.loading,
1399
- indeterminate: !0
1400
- }, {
1401
- default: a.loader
1402
- })])])]));
1403
- }
1404
- }), vt = _({
1405
- item: {
1406
- type: Object,
1407
- required: !0
1408
- },
1409
- groupCollapseIcon: {
1410
- type: O,
1411
- default: "$tableGroupCollapse"
1412
- },
1413
- groupExpandIcon: {
1414
- type: O,
1415
- default: "$tableGroupExpand"
1416
- },
1417
- ...te()
1418
- }, "VDataTableGroupHeaderRow"), Ha = $()({
1419
- name: "VDataTableGroupHeaderRow",
1420
- props: vt(),
1421
- setup(e, t) {
1422
- let {
1423
- slots: a
1424
- } = t;
1425
- const {
1426
- isGroupOpen: l,
1427
- toggleGroup: n,
1428
- extractRows: r
1429
- } = Ye(), {
1430
- isSelected: i,
1431
- isSomeSelected: f,
1432
- select: u
1433
- } = ve(), {
1434
- columns: c
1435
- } = ge(), m = V(() => r([e.item])), h = C(() => c.value.length - (c.value.some((o) => o.key === "data-table-select") ? 1 : 0));
1436
- return () => S("tr", {
1437
- class: "v-data-table-group-header-row",
1438
- style: {
1439
- "--v-data-table-group-header-row-depth": e.item.depth
1440
- }
1441
- }, [c.value.map((o) => {
1442
- if (o.key === "data-table-group") {
1443
- const s = l(e.item) ? e.groupCollapseIcon : e.groupExpandIcon, b = () => n(e.item);
1444
- return a["data-table-group"]?.({
1445
- item: e.item,
1446
- count: m.value.length,
1447
- props: {
1448
- icon: s,
1449
- onClick: b
1450
- }
1451
- }) ?? k(ee, {
1452
- class: "v-data-table-group-header-row__column",
1453
- colspan: h.value
1454
- }, {
1455
- default: () => [k(K, {
1456
- size: "small",
1457
- variant: "text",
1458
- icon: s,
1459
- onClick: b
1460
- }, null), S("span", null, [e.item.value]), S("span", null, [Te("("), m.value.length, Te(")")])]
1461
- });
1462
- } else if (o.key === "data-table-select") {
1463
- const s = m.value.filter((I) => I.selectable), b = s.length > 0 && i(s), d = f(s) && !b, v = (I) => u(s, I);
1464
- return a["data-table-select"]?.({
1465
- props: {
1466
- modelValue: b,
1467
- indeterminate: d,
1468
- "onUpdate:modelValue": v
1469
- }
1470
- }) ?? k(ee, {
1471
- class: "v-data-table__td--select-row",
1472
- noPadding: !0
1473
- }, {
1474
- default: () => [k(de, {
1475
- density: e.density,
1476
- disabled: s.length === 0,
1477
- modelValue: b,
1478
- indeterminate: d,
1479
- "onUpdate:modelValue": v
1480
- }, null)]
1481
- });
1482
- }
1483
- return "";
1484
- })]);
1485
- }
1486
- }), gt = _({
1487
- color: String,
1488
- index: Number,
1489
- item: Object,
1490
- cellProps: [Object, Function],
1491
- collapseIcon: {
1492
- type: O,
1493
- default: "$collapse"
1494
- },
1495
- expandIcon: {
1496
- type: O,
1497
- default: "$expand"
1498
- },
1499
- onClick: ye(),
1500
- onContextmenu: ye(),
1501
- onDblclick: ye(),
1502
- ...te(),
1503
- ...De()
1504
- }, "VDataTableRow"), ja = $()({
1505
- name: "VDataTableRow",
1506
- props: gt(),
1507
- setup(e, t) {
1508
- let {
1509
- slots: a
1510
- } = t;
1511
- const {
1512
- displayClasses: l,
1513
- mobile: n
1514
- } = fe(e, "v-data-table__tr"), {
1515
- isSelected: r,
1516
- toggleSelect: i,
1517
- someSelected: f,
1518
- allSelected: u,
1519
- selectAll: c
1520
- } = ve(), {
1521
- isExpanded: m,
1522
- toggleExpand: h
1523
- } = Qe(), {
1524
- toggleSort: o,
1525
- sortBy: s,
1526
- isSorted: b
1527
- } = nt(), {
1528
- columns: d
1529
- } = ge();
1530
- W(() => S("tr", {
1531
- class: G(["v-data-table__tr", {
1532
- "v-data-table__tr--clickable": !!(e.onClick || e.onContextmenu || e.onDblclick)
1533
- }, l.value]),
1534
- onClick: e.onClick,
1535
- onContextmenu: e.onContextmenu,
1536
- onDblclick: e.onDblclick
1537
- }, [e.item && d.value.map((v, I) => {
1538
- const y = e.item, D = `item.${v.key}`, T = `header.${v.key}`, P = {
1539
- index: e.index,
1540
- item: y.raw,
1541
- internalItem: y,
1542
- value: ue(y.columns, v.key),
1543
- column: v,
1544
- isSelected: r,
1545
- toggleSelect: i,
1546
- isExpanded: m,
1547
- toggleExpand: h
1548
- }, E = {
1549
- column: v,
1550
- selectAll: c,
1551
- isSorted: b,
1552
- toggleSort: o,
1553
- sortBy: s.value,
1554
- someSelected: f.value,
1555
- allSelected: u.value,
1556
- getSortIcon: () => ""
1557
- }, N = typeof e.cellProps == "function" ? e.cellProps({
1558
- index: P.index,
1559
- item: P.item,
1560
- internalItem: P.internalItem,
1561
- value: P.value,
1562
- column: v
1563
- }) : e.cellProps, p = typeof v.cellProps == "function" ? v.cellProps({
1564
- index: P.index,
1565
- item: P.item,
1566
- internalItem: P.internalItem,
1567
- value: P.value
1568
- }) : v.cellProps, x = v.key === "data-table-select" || v.key === "data-table-expand", g = v.key === "data-table-group" && v.width === 0 && !v.title;
1569
- return k(ee, B({
1570
- align: v.align,
1571
- indent: v.indent,
1572
- class: {
1573
- "v-data-table__td--expanded-row": v.key === "data-table-expand",
1574
- "v-data-table__td--select-row": v.key === "data-table-select"
1575
- },
1576
- fixed: v.fixed,
1577
- fixedOffset: v.fixedOffset,
1578
- fixedEndOffset: v.fixedEndOffset,
1579
- lastFixed: v.lastFixed,
1580
- firstFixedEnd: v.firstFixedEnd,
1581
- maxWidth: n.value ? void 0 : v.maxWidth,
1582
- noPadding: x,
1583
- empty: g,
1584
- nowrap: v.nowrap,
1585
- width: n.value ? void 0 : v.width
1586
- }, N, p), {
1587
- default: () => {
1588
- if (v.key === "data-table-select")
1589
- return a["item.data-table-select"]?.({
1590
- ...P,
1591
- props: {
1592
- color: e.color,
1593
- disabled: !y.selectable,
1594
- modelValue: r([y]),
1595
- onClick: ne(() => i(y), ["stop"])
1596
- }
1597
- }) ?? k(de, {
1598
- color: e.color,
1599
- disabled: !y.selectable,
1600
- density: e.density,
1601
- modelValue: r([y]),
1602
- onClick: ne((F) => i(y, e.index, F), ["stop"])
1603
- }, null);
1604
- if (v.key === "data-table-expand")
1605
- return a["item.data-table-expand"]?.({
1606
- ...P,
1607
- props: {
1608
- icon: m(y) ? e.collapseIcon : e.expandIcon,
1609
- size: "small",
1610
- variant: "text",
1611
- onClick: ne(() => h(y), ["stop"])
1612
- }
1613
- }) ?? k(K, {
1614
- icon: m(y) ? e.collapseIcon : e.expandIcon,
1615
- size: "small",
1616
- variant: "text",
1617
- onClick: ne(() => h(y), ["stop"])
1618
- }, null);
1619
- if (a[D] && !n.value) return a[D](P);
1620
- const w = Bt(P.value);
1621
- return n.value ? S(z, null, [S("div", {
1622
- class: "v-data-table__td-title"
1623
- }, [a[T]?.(E) ?? v.title]), S("div", {
1624
- class: "v-data-table__td-value"
1625
- }, [a[D]?.(P) ?? w])]) : w;
1626
- }
1627
- });
1628
- })]));
1629
- }
1630
- }), mt = _({
1631
- color: String,
1632
- loading: [Boolean, String],
1633
- loadingText: {
1634
- type: String,
1635
- default: "$vuetify.dataIterator.loadingText"
1636
- },
1637
- hideNoData: Boolean,
1638
- items: {
1639
- type: Array,
1640
- default: () => []
1641
- },
1642
- noDataText: {
1643
- type: String,
1644
- default: "$vuetify.noDataText"
1645
- },
1646
- rowProps: [Object, Function],
1647
- cellProps: [Object, Function],
1648
- ...xe(gt(), ["collapseIcon", "expandIcon", "density"]),
1649
- ...xe(vt(), ["groupCollapseIcon", "groupExpandIcon", "density"]),
1650
- ...De()
1651
- }, "VDataTableRows"), Le = $()({
1652
- name: "VDataTableRows",
1653
- inheritAttrs: !1,
1654
- props: mt(),
1655
- setup(e, t) {
1656
- let {
1657
- attrs: a,
1658
- slots: l
1659
- } = t;
1660
- const {
1661
- columns: n
1662
- } = ge(), {
1663
- expandOnClick: r,
1664
- toggleExpand: i,
1665
- isExpanded: f
1666
- } = Qe(), {
1667
- isSelected: u,
1668
- toggleSelect: c
1669
- } = ve(), {
1670
- toggleGroup: m,
1671
- isGroupOpen: h
1672
- } = Ye(), {
1673
- t: o
1674
- } = Y(), {
1675
- mobile: s
1676
- } = fe(e);
1677
- return W(() => {
1678
- const b = xe(e, ["groupCollapseIcon", "groupExpandIcon", "density"]);
1679
- return e.loading && (!e.items.length || l.loading) ? S("tr", {
1680
- class: "v-data-table-rows-loading",
1681
- key: "loading"
1682
- }, [S("td", {
1683
- colspan: n.value.length
1684
- }, [l.loading?.() ?? o(e.loadingText)])]) : !e.loading && !e.items.length && !e.hideNoData ? S("tr", {
1685
- class: "v-data-table-rows-no-data",
1686
- key: "no-data"
1687
- }, [S("td", {
1688
- colspan: n.value.length
1689
- }, [l["no-data"]?.() ?? o(e.noDataText)])]) : S(z, null, [e.items.map((d, v) => {
1690
- if (d.type === "group") {
1691
- const D = {
1692
- index: v,
1693
- item: d,
1694
- columns: n.value,
1695
- isExpanded: f,
1696
- toggleExpand: i,
1697
- isSelected: u,
1698
- toggleSelect: c,
1699
- toggleGroup: m,
1700
- isGroupOpen: h
1701
- };
1702
- return l["group-header"] ? l["group-header"](D) : k(Ha, B({
1703
- key: `group-header_${d.id}`,
1704
- item: d
1705
- }, Be(a, ":groupHeader", () => D), b), l);
1706
- }
1707
- if (d.type === "group-summary") {
1708
- const D = {
1709
- index: v,
1710
- item: d,
1711
- columns: n.value,
1712
- toggleGroup: m
1713
- };
1714
- return l["group-summary"]?.(D) ?? "";
1715
- }
1716
- const I = {
1717
- index: d.virtualIndex ?? v,
1718
- item: d.raw,
1719
- internalItem: d,
1720
- columns: n.value,
1721
- isExpanded: f,
1722
- toggleExpand: i,
1723
- isSelected: u,
1724
- toggleSelect: c
1725
- }, y = {
1726
- ...I,
1727
- props: B({
1728
- key: `item_${d.key ?? d.index}`,
1729
- onClick: r.value ? () => {
1730
- i(d);
1731
- } : void 0,
1732
- index: v,
1733
- item: d,
1734
- color: e.color,
1735
- cellProps: e.cellProps,
1736
- collapseIcon: e.collapseIcon,
1737
- expandIcon: e.expandIcon,
1738
- density: e.density,
1739
- mobile: s.value
1740
- }, Be(a, ":row", () => I), typeof e.rowProps == "function" ? e.rowProps({
1741
- item: I.item,
1742
- index: I.index,
1743
- internalItem: I.internalItem
1744
- }) : e.rowProps)
1745
- };
1746
- return S(z, {
1747
- key: y.props.key
1748
- }, [l.item ? l.item(y) : k(ja, y.props, l), f(d) && l["expanded-row"]?.(I)]);
1749
- })]);
1750
- }), {};
1751
- }
1752
- }), bt = _({
1753
- fixedHeader: Boolean,
1754
- fixedFooter: Boolean,
1755
- height: [Number, String],
1756
- hover: Boolean,
1757
- striped: {
1758
- type: String,
1759
- default: null,
1760
- validator: (e) => ["even", "odd"].includes(e)
1761
- },
1762
- ...Ke(),
1763
- ...te(),
1764
- ...Ge(),
1765
- ...ke()
1766
- }, "VTable"), Ne = $()({
1767
- name: "VTable",
1768
- props: bt(),
1769
- setup(e, t) {
1770
- let {
1771
- slots: a,
1772
- emit: l
1773
- } = t;
1774
- const {
1775
- themeClasses: n
1776
- } = we(e), {
1777
- densityClasses: r
1778
- } = Yt(e);
1779
- return W(() => k(e.tag, {
1780
- class: G(["v-table", {
1781
- "v-table--fixed-height": !!e.height,
1782
- "v-table--fixed-header": e.fixedHeader,
1783
- "v-table--fixed-footer": e.fixedFooter,
1784
- "v-table--has-top": !!a.top,
1785
- "v-table--has-bottom": !!a.bottom,
1786
- "v-table--hover": e.hover,
1787
- "v-table--striped-even": e.striped === "even",
1788
- "v-table--striped-odd": e.striped === "odd"
1789
- }, n.value, r.value, e.class]),
1790
- style: Pe(e.style)
1791
- }, {
1792
- default: () => [a.top?.(), a.default ? S("div", {
1793
- class: "v-table__wrapper",
1794
- style: {
1795
- height: A(e.height)
1796
- }
1797
- }, [S("table", null, [a.default()])]) : a.wrapper?.(), a.bottom?.()]
1798
- })), {};
1799
- }
1800
- }), Ma = _({
1801
- items: {
1802
- type: Array,
1803
- default: () => []
1804
- },
1805
- itemValue: {
1806
- type: [String, Array, Function],
1807
- default: "id"
1808
- },
1809
- itemSelectable: {
1810
- type: [String, Array, Function],
1811
- default: null
1812
- },
1813
- rowProps: [Object, Function],
1814
- cellProps: [Object, Function],
1815
- returnObject: Boolean
1816
- }, "DataTable-items");
1817
- function Ga(e, t, a, l) {
1818
- const n = e.returnObject ? t : se(t, e.itemValue), r = se(t, e.itemSelectable, !0), i = l.reduce((f, u) => (u.key != null && (f[u.key] = se(t, u.value)), f), {});
1819
- return {
1820
- type: "item",
1821
- key: e.returnObject ? se(t, e.itemValue) : n,
1822
- index: a,
1823
- value: n,
1824
- selectable: r,
1825
- columns: i,
1826
- raw: t
1827
- };
1828
- }
1829
- function Wa(e, t, a) {
1830
- return t.map((l, n) => Ga(e, l, n, a));
1831
- }
1832
- function Ka(e, t) {
1833
- return {
1834
- items: V(() => Wa(e, e.items, t.value))
1835
- };
1836
- }
1837
- const za = _({
1838
- ...mt(),
1839
- hideDefaultBody: Boolean,
1840
- hideDefaultFooter: Boolean,
1841
- hideDefaultHeader: Boolean,
1842
- width: [String, Number],
1843
- search: String,
1844
- ...ia(),
1845
- ...da(),
1846
- ...Oa(),
1847
- ...Ma(),
1848
- ...wa(),
1849
- ...Ia(),
1850
- ...Ie(ft(), ["multiSort", "initialSortOrder"]),
1851
- ...bt()
1852
- }, "DataTable"), qa = _({
1853
- ...ba(),
1854
- ...za(),
1855
- ...na(),
1856
- ...rt()
1857
- }, "VDataTable"), al = $()({
1858
- name: "VDataTable",
1859
- props: qa(),
1860
- emits: {
1861
- "update:modelValue": (e) => !0,
1862
- "update:page": (e) => !0,
1863
- "update:itemsPerPage": (e) => !0,
1864
- "update:sortBy": (e) => !0,
1865
- "update:options": (e) => !0,
1866
- "update:groupBy": (e) => !0,
1867
- "update:expanded": (e) => !0,
1868
- "update:currentItems": (e) => !0
1869
- },
1870
- setup(e, t) {
1871
- let {
1872
- attrs: a,
1873
- slots: l
1874
- } = t;
1875
- const {
1876
- groupBy: n
1877
- } = ca(e), {
1878
- initialSortOrder: r,
1879
- sortBy: i,
1880
- multiSort: f,
1881
- mustSort: u
1882
- } = Da(e), {
1883
- page: c,
1884
- itemsPerPage: m
1885
- } = ha(e), {
1886
- disableSort: h
1887
- } = Ot(e), {
1888
- columns: o,
1889
- headers: s,
1890
- sortFunctions: b,
1891
- sortRawFunctions: d,
1892
- filterFunctions: v
1893
- } = $a(e, {
1894
- groupBy: n,
1895
- showSelect: C(() => e.showSelect),
1896
- showExpand: C(() => e.showExpand)
1897
- }), {
1898
- items: I
1899
- } = Ka(e, o), y = C(() => e.search), {
1900
- filteredItems: D
1901
- } = la(e, I, y, {
1902
- transform: (j) => j.columns,
1903
- customKeyFilter: v
1904
- }), {
1905
- toggleSort: T
1906
- } = Fa({
1907
- initialSortOrder: r,
1908
- sortBy: i,
1909
- multiSort: f,
1910
- mustSort: u,
1911
- page: c
1912
- }), {
1913
- sortByWithGroups: P,
1914
- opened: E,
1915
- extractRows: N,
1916
- isGroupOpen: p,
1917
- toggleGroup: x
1918
- } = fa({
1919
- groupBy: n,
1920
- sortBy: i,
1921
- disableSort: h
1922
- }), {
1923
- sortedItems: g
1924
- } = Ta(e, D, P, {
1925
- transform: (j) => ({
1926
- ...j.raw,
1927
- ...j.columns
1928
- }),
1929
- sortFunctions: b,
1930
- sortRawFunctions: d
1931
- }), {
1932
- flatItems: w
1933
- } = ga(g, n, E, () => !!l["group-summary"]), F = V(() => w.value.length), {
1934
- startIndex: R,
1935
- stopIndex: ae,
1936
- pageCount: be,
1937
- setItemsPerPage: H
1938
- } = ya({
1939
- page: c,
1940
- itemsPerPage: m,
1941
- itemsLength: F
1942
- }), {
1943
- paginatedItems: Q
1944
- } = xa({
1945
- items: w,
1946
- startIndex: R,
1947
- stopIndex: ae,
1948
- itemsPerPage: m
1949
- }), Z = V(() => N(Q.value)), {
1950
- isSelected: ht,
1951
- select: yt,
1952
- selectAll: pt,
1953
- toggleSelect: xt,
1954
- someSelected: St,
1955
- allSelected: Pt
1956
- } = ka(e, {
1957
- allItems: I,
1958
- currentPage: Z
1959
- }), {
1960
- isExpanded: wt,
1961
- toggleExpand: kt
1962
- } = ua(e);
1963
- ma({
1964
- page: c,
1965
- itemsPerPage: m,
1966
- sortBy: i,
1967
- groupBy: n,
1968
- search: y
1969
- }), pe({
1970
- VDataTableRows: {
1971
- hideNoData: C(() => e.hideNoData),
1972
- noDataText: C(() => e.noDataText),
1973
- loading: C(() => e.loading),
1974
- loadingText: C(() => e.loadingText)
1975
- }
1976
- });
1977
- const L = V(() => ({
1978
- page: c.value,
1979
- itemsPerPage: m.value,
1980
- sortBy: i.value,
1981
- pageCount: be.value,
1982
- toggleSort: T,
1983
- setItemsPerPage: H,
1984
- someSelected: St.value,
1985
- allSelected: Pt.value,
1986
- isSelected: ht,
1987
- select: yt,
1988
- selectAll: pt,
1989
- toggleSelect: xt,
1990
- isExpanded: wt,
1991
- toggleExpand: kt,
1992
- isGroupOpen: p,
1993
- toggleGroup: x,
1994
- items: Z.value.map((j) => j.raw),
1995
- internalItems: Z.value,
1996
- groupedItems: Q.value,
1997
- columns: o.value,
1998
- headers: s.value
1999
- }));
2000
- return W(() => {
2001
- const j = Ee.filterProps(e), It = Ae.filterProps(Ie(e, ["multiSort"])), Dt = Le.filterProps(e), Vt = Ne.filterProps(e);
2002
- return k(Ne, B({
2003
- class: ["v-data-table", {
2004
- "v-data-table--show-select": e.showSelect,
2005
- "v-data-table--loading": e.loading
2006
- }, e.class],
2007
- style: e.style
2008
- }, Vt, {
2009
- fixedHeader: e.fixedHeader || e.sticky
2010
- }), {
2011
- top: () => l.top?.(L.value),
2012
- default: () => l.default ? l.default(L.value) : S(z, null, [l.colgroup?.(L.value), !e.hideDefaultHeader && S("thead", {
2013
- key: "thead"
2014
- }, [k(Ae, B(It, {
2015
- multiSort: !!e.multiSort
2016
- }), l)]), l.thead?.(L.value), !e.hideDefaultBody && S("tbody", null, [l["body.prepend"]?.(L.value), l.body ? l.body(L.value) : k(Le, B(a, Dt, {
2017
- items: Q.value
2018
- }), l), l["body.append"]?.(L.value)]), l.tbody?.(L.value), l.tfoot?.(L.value)]),
2019
- bottom: () => l.bottom ? l.bottom(L.value) : !e.hideDefaultFooter && S(z, null, [k(Zt, null, null), k(Ee, j, {
2020
- prepend: l["footer.prepend"]
2021
- })])
2022
- });
2023
- }), {};
2024
- }
2025
- }), Ua = {
2026
- actions: "button@2",
2027
- article: "heading, paragraph",
2028
- avatar: "avatar",
2029
- button: "button",
2030
- card: "image, heading",
2031
- "card-avatar": "image, list-item-avatar",
2032
- chip: "chip",
2033
- "date-picker": "list-item, heading, divider, date-picker-options, date-picker-days, actions",
2034
- "date-picker-options": "text, avatar@2",
2035
- "date-picker-days": "avatar@28",
2036
- divider: "divider",
2037
- heading: "heading",
2038
- image: "image",
2039
- "list-item": "text",
2040
- "list-item-avatar": "avatar, text",
2041
- "list-item-two-line": "sentences",
2042
- "list-item-avatar-two-line": "avatar, sentences",
2043
- "list-item-three-line": "paragraph",
2044
- "list-item-avatar-three-line": "avatar, paragraph",
2045
- ossein: "ossein",
2046
- paragraph: "text@3",
2047
- sentences: "text@2",
2048
- subtitle: "text",
2049
- table: "table-heading, table-thead, table-tbody, table-tfoot",
2050
- "table-heading": "chip, text",
2051
- "table-thead": "heading@6",
2052
- "table-tbody": "table-row-divider@6",
2053
- "table-row-divider": "table-row, divider",
2054
- "table-row": "text@6",
2055
- "table-tfoot": "text@2, avatar@2",
2056
- text: "text"
2057
- };
2058
- function Qa(e) {
2059
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
2060
- return S("div", {
2061
- class: G(["v-skeleton-loader__bone", `v-skeleton-loader__${e}`])
2062
- }, [t]);
2063
- }
2064
- function Re(e) {
2065
- const [t, a] = e.split("@");
2066
- return Array.from({
2067
- length: a
2068
- }).map(() => me(t));
2069
- }
2070
- function me(e) {
2071
- let t = [];
2072
- if (!e) return t;
2073
- const a = Ua[e];
2074
- if (e !== a) {
2075
- if (e.includes(",")) return $e(e);
2076
- if (e.includes("@")) return Re(e);
2077
- a.includes(",") ? t = $e(a) : a.includes("@") ? t = Re(a) : a && t.push(me(a));
2078
- }
2079
- return [Qa(e, t)];
2080
- }
2081
- function $e(e) {
2082
- return e.replace(/\s/g, "").split(",").map(me);
2083
- }
2084
- const Xa = _({
2085
- boilerplate: Boolean,
2086
- color: String,
2087
- loading: Boolean,
2088
- loadingText: {
2089
- type: String,
2090
- default: "$vuetify.loading"
2091
- },
2092
- type: {
2093
- type: [String, Array],
2094
- default: "ossein"
2095
- },
2096
- ...ta(),
2097
- ...We(),
2098
- ...ke()
2099
- }, "VSkeletonLoader"), ll = $()({
2100
- name: "VSkeletonLoader",
2101
- inheritAttrs: !1,
2102
- props: Xa(),
2103
- setup(e, t) {
2104
- let {
2105
- attrs: a,
2106
- slots: l
2107
- } = t;
2108
- const {
2109
- backgroundColorClasses: n,
2110
- backgroundColorStyles: r
2111
- } = ze(() => e.color), {
2112
- dimensionStyles: i
2113
- } = Jt(e), {
2114
- elevationClasses: f
2115
- } = ea(e), {
2116
- themeClasses: u
2117
- } = we(e), {
2118
- t: c
2119
- } = Y(), m = V(() => me(J(e.type).join(",")));
2120
- return W(() => {
2121
- const h = !l.default || e.loading, o = e.boilerplate || !h ? {} : {
2122
- ariaLive: "polite",
2123
- ariaLabel: c(e.loadingText),
2124
- role: "alert"
2125
- };
2126
- return h ? S("div", B({
2127
- class: ["v-skeleton-loader", {
2128
- "v-skeleton-loader--boilerplate": e.boilerplate
2129
- }, u.value, n.value, f.value],
2130
- style: [r.value, i.value]
2131
- }, o, a), [m.value]) : S(z, null, [l.default?.()]);
2132
- }), {};
2133
- }
2134
- });
2135
- function Ya(e, t, a) {
2136
- switch (a) {
2137
- case ">":
2138
- return e > t;
2139
- case "<":
2140
- return e < t;
2141
- case ">=":
2142
- return e >= t;
2143
- case "<=":
2144
- return e <= t;
2145
- case "=":
2146
- return e === t;
2147
- default:
2148
- throw new Error(`Invalid operator: ${a}`);
2149
- }
2150
- }
2151
- function nl() {
2152
- const { advancedFiltersState: e, hardFiltersState: t } = ra(), a = U("table_props"), l = M(), n = V(() => {
2153
- let o = l.value;
2154
- if (!o) return o;
2155
- const s = u(e.value, t.value);
2156
- return !s || Object.keys(s).length === 0 || Object.keys(s).forEach((b) => {
2157
- const { value: d, comparison: v = "=" } = s[b];
2158
- if (!d) return;
2159
- const I = h(a.headers, b);
2160
- I && (o = o.filter((y) => {
2161
- const D = m(y, b, I);
2162
- return I.advancedFilter?.customFilterFn && typeof I.advancedFilter.customFilterFn == "function" ? I.advancedFilter.customFilterFn({ value: D, filterValue: d, filterComparison: v, header: I, item: y }) : f(D, d, v, I);
2163
- }));
2164
- }), o;
2165
- });
2166
- function r(o, s) {
2167
- const b = Array.isArray(s) ? s : [s], d = ie(b[0]).startOf("day").isSameOrBefore(ie(o).format()), v = ie(b[b.length - 1]).endOf("day").isSameOrAfter(ie(o).format());
2168
- return d && v;
2169
- }
2170
- function i(o, s) {
2171
- return Array.isArray(s) ? s.map((b) => b.toString().toLowerCase()).includes(o.toString().toLowerCase()) : o?.toString().toLowerCase().includes(s.toString().toLowerCase());
2172
- }
2173
- function f(o, s, b, d) {
2174
- switch (d.advancedFilter?.component) {
2175
- case "datepicker":
2176
- return r(o, s);
2177
- case "comparison":
2178
- return Ya(Number(o), Number(s), b);
2179
- default:
2180
- return i(o, s);
2181
- }
2182
- }
2183
- function u(o, s) {
2184
- const b = Object.values(s).filter((d) => d.args).map((d) => d.args).reduce((d, v) => ({ ...d, ...v }), {});
2185
- return { ...o, ...b };
2186
- }
2187
- function c(o, s) {
2188
- return s.split(".").reduce((b, d) => b && b[d], o);
2189
- }
2190
- function m(o, s, b) {
2191
- const d = oa(o), v = b.advancedFilter?.filterReturnValue;
2192
- return typeof v == "function" && (d[s] = v({
2193
- value: o[s],
2194
- item: o
2195
- })), c(d, s);
2196
- }
2197
- function h(o, s) {
2198
- return o.find((b) => (b.advancedFilter?.key ?? b.key) === s);
2199
- }
2200
- return ce(
2201
- () => a.data,
2202
- (o, s) => {
2203
- sa(o ?? [], s ?? []) || (l.value = o);
2204
- },
2205
- { deep: !0, immediate: !0 }
2206
- ), { tableData: l, filteredData: n };
2207
- }
2208
- const rl = Et({
2209
- props: {
2210
- render: {
2211
- type: [Function, Object, String, Number, Date],
2212
- required: !0
2213
- },
2214
- props: {
2215
- type: Object,
2216
- default: () => ({})
2217
- },
2218
- params: {
2219
- type: Object,
2220
- default: () => ({})
2221
- }
2222
- },
2223
- setup: (e) => () => {
2224
- const t = { ...e.props, ...e.params };
2225
- return typeof e.render == "function" ? e.render(t) : typeof e.render == "object" && e.render !== null ? At(e.render, t) : e.render;
2226
- }
2227
- });
2228
- export {
2229
- rl as C,
2230
- al as V,
2231
- ll as a,
2232
- Da as b,
2233
- ca as c,
2234
- ha as d,
2235
- $a as e,
2236
- Ka as f,
2237
- fa as g,
2238
- ya as h,
2239
- ga as i,
2240
- ka as j,
2241
- ua as k,
2242
- ma as l,
2243
- Ee as m,
2244
- Ae as n,
2245
- Le as o,
2246
- Fa as p,
2247
- Ne as q,
2248
- rt as r,
2249
- za as s,
2250
- ba as t,
2251
- nl as u
2252
- };