@ianicdev/datatables2 0.10.0 → 0.10.1

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