v-sistec-features 1.2.2 → 1.2.3
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.
|
@@ -8,4 +8,4 @@
|
|
|
8
8
|
* Copyright 2018-2025 The Tabler Authors
|
|
9
9
|
* Copyright 2018-2025 codecalm.net Paweł Kuna
|
|
10
10
|
* Licensed under MIT (https://github.com/tabler/tabler/blob/master/LICENSE)
|
|
11
|
-
*/[data-bs-theme-base=slate]{--tblr-gray-50:#f8fafc;--tblr-gray-100:#f1f5f9;--tblr-gray-200:#e2e8f0;--tblr-gray-300:#cbd5e1;--tblr-gray-400:#94a3b8;--tblr-gray-500:#64748b;--tblr-gray-600:#475569;--tblr-gray-700:#334155;--tblr-gray-800:#1e293b;--tblr-gray-900:#0f172a;--tblr-gray-950:#020617}[data-bs-theme-base=gray]{--tblr-gray-50:#f9fafb;--tblr-gray-100:#f3f4f6;--tblr-gray-200:#e5e7eb;--tblr-gray-300:#d1d5db;--tblr-gray-400:#9ca3af;--tblr-gray-500:#6b7280;--tblr-gray-600:#4b5563;--tblr-gray-700:#374151;--tblr-gray-800:#1f2937;--tblr-gray-900:#111827;--tblr-gray-950:#030712}[data-bs-theme-base=zinc]{--tblr-gray-50:#fafafa;--tblr-gray-100:#f4f4f5;--tblr-gray-200:#e4e4e7;--tblr-gray-300:#d4d4d8;--tblr-gray-400:#a1a1aa;--tblr-gray-500:#71717a;--tblr-gray-600:#52525b;--tblr-gray-700:#3f3f46;--tblr-gray-800:#27272a;--tblr-gray-900:#18181b;--tblr-gray-950:#09090b}[data-bs-theme-base=neutral]{--tblr-gray-50:#fafafa;--tblr-gray-100:#f5f5f5;--tblr-gray-200:#e5e5e5;--tblr-gray-300:#d4d4d4;--tblr-gray-400:#a3a3a3;--tblr-gray-500:#737373;--tblr-gray-600:#525252;--tblr-gray-700:#404040;--tblr-gray-800:#262626;--tblr-gray-900:#171717;--tblr-gray-950:#0a0a0a}[data-bs-theme-base=stone]{--tblr-gray-50:#fafaf9;--tblr-gray-100:#f5f5f4;--tblr-gray-200:#e7e5e4;--tblr-gray-300:#d6d3d1;--tblr-gray-400:#a8a29e;--tblr-gray-500:#78716c;--tblr-gray-600:#57534e;--tblr-gray-700:#44403c;--tblr-gray-800:#292524;--tblr-gray-900:#1c1917;--tblr-gray-950:#0c0a09}[data-bs-theme-base=pink]{--tblr-gray-50:#fdf2f8;--tblr-gray-100:#fce7f3;--tblr-gray-200:#fbcfe8;--tblr-gray-300:#f9a8d4;--tblr-gray-400:#f472b6;--tblr-gray-500:#ec4899;--tblr-gray-600:#db2777;--tblr-gray-700:#be185d;--tblr-gray-800:#9d174d;--tblr-gray-900:#831843;--tblr-gray-950:#500724}[data-bs-theme-primary=blue]{--tblr-primary:#066fd1;--tblr-primary-rgb:6,111,209}[data-bs-theme-primary=azure]{--tblr-primary:#4299e1;--tblr-primary-rgb:66,153,225}[data-bs-theme-primary=indigo]{--tblr-primary:#4263eb;--tblr-primary-rgb:66,99,235}[data-bs-theme-primary=purple]{--tblr-primary:#ae3ec9;--tblr-primary-rgb:174,62,201}[data-bs-theme-primary=pink]{--tblr-primary:#d6336c;--tblr-primary-rgb:214,51,108}[data-bs-theme-primary=red]{--tblr-primary:#d63939;--tblr-primary-rgb:214,57,57}[data-bs-theme-primary=orange]{--tblr-primary:#f76707;--tblr-primary-rgb:247,103,7}[data-bs-theme-primary=yellow]{--tblr-primary:#f59f00;--tblr-primary-rgb:245,159,0}[data-bs-theme-primary=lime]{--tblr-primary:#74b816;--tblr-primary-rgb:116,184,22}[data-bs-theme-primary=green]{--tblr-primary:#2fb344;--tblr-primary-rgb:47,179,68}[data-bs-theme-primary=teal]{--tblr-primary:#0ca678;--tblr-primary-rgb:12,166,120}[data-bs-theme-primary=cyan]{--tblr-primary:#17a2b8;--tblr-primary-rgb:23,162,184}[data-bs-theme-radius="0"]{--tblr-border-radius-scale:0}[data-bs-theme-radius="0.5"]{--tblr-border-radius-scale:.5}[data-bs-theme-radius="1"]{--tblr-border-radius-scale:1}[data-bs-theme-radius="1.5"]{--tblr-border-radius-scale:1.5}[data-bs-theme-radius="2"]{--tblr-border-radius-scale:2}[data-bs-theme-primary=inverted]{--tblr-primary:var(--tblr-gray-800);--tblr-primary-fg:var(--tblr-light);--tblr-primary-rgb:31,41,55}[data-bs-theme-primary=inverted] [data-bs-theme=dark],[data-bs-theme-primary=inverted][data-bs-theme=dark]{--tblr-primary:#f9fafb;--tblr-primary-fg:var(--tblr-dark);--tblr-primary-rgb:249,250,251}[data-bs-theme-font=monospace]{--tblr-body-font-family:var(--tblr-font-monospace);--tblr-body-font-size:80%}[data-bs-theme-font=sans-serif]{--tblr-body-font-family:var(--tblr-font-sans-serif)}[data-bs-theme-font=serif]{--tblr-body-font-family:var(--tblr-font-serif)}[data-bs-theme-font=comic]{--tblr-body-font-family:var(--tblr-font-comic)}.rotate-180[data-v-c189f089] svg{transform:rotate(180deg)}.page-select[data-v-c189f089]{background-color:var(--tblr-primary)!important;color:#fff!important;border:none!important}.page-estilo[data-v-c189f089]{border:none;--cor-escurecida: color-mix(in srgb, var(--tblr-primary), #000 25%);background:transparent;padding:1px 10px;border-radius:7px;margin:0!important;transition:color .15s ease-in-out,background-color .15s ease-in-out}.page-estilo[data-v-c189f089]:hover{background:var(--cor-escurecida);color:#fff}.btn[data-v-c189f089]{padding:0!important;margin:0!important;background:transparent!important;border:none!important;box-shadow:none!important}[data-v-c189f089] .btn-estilo svg{padding:0!important;margin:0!important}[data-v-c189f089] .btn-estilo:hover svg{stroke:var(--tblr-primary)}.icon-tabler[data-v-c189f089]{margin:0!important;padding:0!important}.inputClose[data-v-1b6ff54b]{color:var(--tblr-icon-color);z-index:10;position:absolute;top:50%;right:0;transform:translateY(-50%);font-size:1.2em;min-width:2.5rem;display:flex;justify-content:center}.inputClose[data-v-1b6ff54b]:hover{cursor:pointer}.selected[data-v-1b6ff54b]:hover{background-color:#b02a2a!important;color:#fff!important}.table-responsive[data-v-
|
|
11
|
+
*/[data-bs-theme-base=slate]{--tblr-gray-50:#f8fafc;--tblr-gray-100:#f1f5f9;--tblr-gray-200:#e2e8f0;--tblr-gray-300:#cbd5e1;--tblr-gray-400:#94a3b8;--tblr-gray-500:#64748b;--tblr-gray-600:#475569;--tblr-gray-700:#334155;--tblr-gray-800:#1e293b;--tblr-gray-900:#0f172a;--tblr-gray-950:#020617}[data-bs-theme-base=gray]{--tblr-gray-50:#f9fafb;--tblr-gray-100:#f3f4f6;--tblr-gray-200:#e5e7eb;--tblr-gray-300:#d1d5db;--tblr-gray-400:#9ca3af;--tblr-gray-500:#6b7280;--tblr-gray-600:#4b5563;--tblr-gray-700:#374151;--tblr-gray-800:#1f2937;--tblr-gray-900:#111827;--tblr-gray-950:#030712}[data-bs-theme-base=zinc]{--tblr-gray-50:#fafafa;--tblr-gray-100:#f4f4f5;--tblr-gray-200:#e4e4e7;--tblr-gray-300:#d4d4d8;--tblr-gray-400:#a1a1aa;--tblr-gray-500:#71717a;--tblr-gray-600:#52525b;--tblr-gray-700:#3f3f46;--tblr-gray-800:#27272a;--tblr-gray-900:#18181b;--tblr-gray-950:#09090b}[data-bs-theme-base=neutral]{--tblr-gray-50:#fafafa;--tblr-gray-100:#f5f5f5;--tblr-gray-200:#e5e5e5;--tblr-gray-300:#d4d4d4;--tblr-gray-400:#a3a3a3;--tblr-gray-500:#737373;--tblr-gray-600:#525252;--tblr-gray-700:#404040;--tblr-gray-800:#262626;--tblr-gray-900:#171717;--tblr-gray-950:#0a0a0a}[data-bs-theme-base=stone]{--tblr-gray-50:#fafaf9;--tblr-gray-100:#f5f5f4;--tblr-gray-200:#e7e5e4;--tblr-gray-300:#d6d3d1;--tblr-gray-400:#a8a29e;--tblr-gray-500:#78716c;--tblr-gray-600:#57534e;--tblr-gray-700:#44403c;--tblr-gray-800:#292524;--tblr-gray-900:#1c1917;--tblr-gray-950:#0c0a09}[data-bs-theme-base=pink]{--tblr-gray-50:#fdf2f8;--tblr-gray-100:#fce7f3;--tblr-gray-200:#fbcfe8;--tblr-gray-300:#f9a8d4;--tblr-gray-400:#f472b6;--tblr-gray-500:#ec4899;--tblr-gray-600:#db2777;--tblr-gray-700:#be185d;--tblr-gray-800:#9d174d;--tblr-gray-900:#831843;--tblr-gray-950:#500724}[data-bs-theme-primary=blue]{--tblr-primary:#066fd1;--tblr-primary-rgb:6,111,209}[data-bs-theme-primary=azure]{--tblr-primary:#4299e1;--tblr-primary-rgb:66,153,225}[data-bs-theme-primary=indigo]{--tblr-primary:#4263eb;--tblr-primary-rgb:66,99,235}[data-bs-theme-primary=purple]{--tblr-primary:#ae3ec9;--tblr-primary-rgb:174,62,201}[data-bs-theme-primary=pink]{--tblr-primary:#d6336c;--tblr-primary-rgb:214,51,108}[data-bs-theme-primary=red]{--tblr-primary:#d63939;--tblr-primary-rgb:214,57,57}[data-bs-theme-primary=orange]{--tblr-primary:#f76707;--tblr-primary-rgb:247,103,7}[data-bs-theme-primary=yellow]{--tblr-primary:#f59f00;--tblr-primary-rgb:245,159,0}[data-bs-theme-primary=lime]{--tblr-primary:#74b816;--tblr-primary-rgb:116,184,22}[data-bs-theme-primary=green]{--tblr-primary:#2fb344;--tblr-primary-rgb:47,179,68}[data-bs-theme-primary=teal]{--tblr-primary:#0ca678;--tblr-primary-rgb:12,166,120}[data-bs-theme-primary=cyan]{--tblr-primary:#17a2b8;--tblr-primary-rgb:23,162,184}[data-bs-theme-radius="0"]{--tblr-border-radius-scale:0}[data-bs-theme-radius="0.5"]{--tblr-border-radius-scale:.5}[data-bs-theme-radius="1"]{--tblr-border-radius-scale:1}[data-bs-theme-radius="1.5"]{--tblr-border-radius-scale:1.5}[data-bs-theme-radius="2"]{--tblr-border-radius-scale:2}[data-bs-theme-primary=inverted]{--tblr-primary:var(--tblr-gray-800);--tblr-primary-fg:var(--tblr-light);--tblr-primary-rgb:31,41,55}[data-bs-theme-primary=inverted] [data-bs-theme=dark],[data-bs-theme-primary=inverted][data-bs-theme=dark]{--tblr-primary:#f9fafb;--tblr-primary-fg:var(--tblr-dark);--tblr-primary-rgb:249,250,251}[data-bs-theme-font=monospace]{--tblr-body-font-family:var(--tblr-font-monospace);--tblr-body-font-size:80%}[data-bs-theme-font=sans-serif]{--tblr-body-font-family:var(--tblr-font-sans-serif)}[data-bs-theme-font=serif]{--tblr-body-font-family:var(--tblr-font-serif)}[data-bs-theme-font=comic]{--tblr-body-font-family:var(--tblr-font-comic)}.rotate-180[data-v-c189f089] svg{transform:rotate(180deg)}.page-select[data-v-c189f089]{background-color:var(--tblr-primary)!important;color:#fff!important;border:none!important}.page-estilo[data-v-c189f089]{border:none;--cor-escurecida: color-mix(in srgb, var(--tblr-primary), #000 25%);background:transparent;padding:1px 10px;border-radius:7px;margin:0!important;transition:color .15s ease-in-out,background-color .15s ease-in-out}.page-estilo[data-v-c189f089]:hover{background:var(--cor-escurecida);color:#fff}.btn[data-v-c189f089]{padding:0!important;margin:0!important;background:transparent!important;border:none!important;box-shadow:none!important}[data-v-c189f089] .btn-estilo svg{padding:0!important;margin:0!important}[data-v-c189f089] .btn-estilo:hover svg{stroke:var(--tblr-primary)}.icon-tabler[data-v-c189f089]{margin:0!important;padding:0!important}.inputClose[data-v-1b6ff54b]{color:var(--tblr-icon-color);z-index:10;position:absolute;top:50%;right:0;transform:translateY(-50%);font-size:1.2em;min-width:2.5rem;display:flex;justify-content:center}.inputClose[data-v-1b6ff54b]:hover{cursor:pointer}.selected[data-v-1b6ff54b]:hover{background-color:#b02a2a!important;color:#fff!important}.table-responsive[data-v-a3a0dbd6]{overflow-x:auto}.state-feedback[data-v-a3a0dbd6]{padding:1rem;text-align:center}.state-feedback.error[data-v-a3a0dbd6]{color:red}.pagination-controls[data-v-a3a0dbd6]{margin-top:1rem;display:flex;justify-content:space-between}.placeholder-img[data-v-a3a0dbd6]{width:40px;height:40px;border-radius:4px}.container-img[data-v-a3a0dbd6]{aspect-ratio:1;display:flex;justify-content:center;overflow:hidden;position:relative;max-width:40px;min-width:40px}.container-img .img-tamanho-cover[data-v-a3a0dbd6]{position:absolute;top:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.5;filter:blur(4px)}.container-img .img-tamanho[data-v-a3a0dbd6]{object-fit:contain;width:100%;height:100%;z-index:2}.container-img.container-img-preview[data-v-a3a0dbd6]{cursor:pointer}.container-img.container-img-preview[data-v-a3a0dbd6]:hover{border-style:dashed;border-color:var(--tblr-primary);border-width:2px;transition:border-width .15s ease-in-out}.container-img.container-img-preview:hover .img-tamanho[data-v-a3a0dbd6]{opacity:.3}.erro-custom-container[data-v-a3a0dbd6]{display:inline-block;padding:.2em .6em;border-radius:4px;background-color:#fff;font-weight:700;text-transform:uppercase}.erro-custom-text[data-v-a3a0dbd6]{font-size:.8em;text-transform:uppercase;font-weight:700}.bg-img[data-v-a3a0dbd6]{background-color:#0000004d;position:absolute;top:0;width:100%;height:100%;z-index:1}.image-preview-container[data-v-a3a0dbd6]{position:fixed;z-index:9999;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0003;padding:5px;pointer-events:none;transition:opacity .2s ease-in-out}.image-preview-container .image-preview-large[data-v-a3a0dbd6]{display:block;max-width:250px;max-height:250px;border-radius:4px}.form-check-input[data-v-a3a0dbd6]{border-width:1px!important;border-color:#00000064!important;width:17px;height:17px}[data-bs-theme=dark] .form-check-input[data-v-a3a0dbd6]{border-color:#ffffff5f!important}
|
package/dist/vDataTable.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { defineComponent as F, useSlots as
|
|
2
|
-
const se = Symbol("v-datatable-key"),
|
|
1
|
+
import { defineComponent as F, useSlots as he, inject as ye, onMounted as te, computed as N, createElementBlock as n, createCommentVNode as b, openBlock as a, createElementVNode as s, toDisplayString as g, withModifiers as j, Fragment as S, renderList as T, normalizeClass as m, watch as q, resolveComponent as ke, withDirectives as ae, withKeys as be, vModelText as ne, createBlock as X, withCtx as xe, createTextVNode as D, ref as z, provide as we, readonly as Ce, nextTick as $e, renderSlot as O, createVNode as Q, resolveDynamicComponent as Z, unref as w, mergeProps as Me, normalizeStyle as Se } from "vue";
|
|
2
|
+
const se = Symbol("v-datatable-key"), Ht = /* @__PURE__ */ F({
|
|
3
3
|
__name: "VColumn",
|
|
4
4
|
props: {
|
|
5
5
|
field: { default: null },
|
|
@@ -15,7 +15,7 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
15
15
|
click: { type: [Function, null], default: null }
|
|
16
16
|
},
|
|
17
17
|
setup(y) {
|
|
18
|
-
const u = y, o =
|
|
18
|
+
const u = y, o = he(), f = ye(se);
|
|
19
19
|
if (!f)
|
|
20
20
|
throw new Error("VColumn deve ser usado dentro de um VDataTable.");
|
|
21
21
|
const v = ["text", "img", "date", "html"];
|
|
@@ -48,18 +48,18 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
48
48
|
...u.type === "img" && { deactivate_img_preview: u.deactivate_img_preview },
|
|
49
49
|
...u.type === "date" && { format: u.format }
|
|
50
50
|
});
|
|
51
|
-
}), (C,
|
|
51
|
+
}), (C, E) => null;
|
|
52
52
|
}
|
|
53
|
-
}),
|
|
53
|
+
}), ze = {
|
|
54
54
|
key: 0,
|
|
55
55
|
class: "d-flex align-items-center justify-content-between w-100"
|
|
56
|
-
},
|
|
56
|
+
}, Pe = {
|
|
57
57
|
key: 0,
|
|
58
58
|
class: "d-flex align-items-center p-2 gap-2"
|
|
59
|
-
},
|
|
59
|
+
}, Te = { class: "d-flex" }, Ne = ["disabled"], Ae = ["disabled"], De = { class: "d-flex gap-2" }, Ee = ["onClick", "disabled"], He = {
|
|
60
60
|
key: 1,
|
|
61
61
|
class: "m-0 p-0"
|
|
62
|
-
},
|
|
62
|
+
}, Ve = { class: "d-flex" }, Le = ["disabled"], je = ["disabled"], R = `
|
|
63
63
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
|
|
64
64
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
|
65
65
|
class="icon icon-tabler icons-tabler-outline icon-tabler-chevrons-left">
|
|
@@ -74,7 +74,7 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
74
74
|
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
|
75
75
|
<path d="M15 6l-6 6l6 6" />
|
|
76
76
|
</svg>
|
|
77
|
-
`,
|
|
77
|
+
`, Be = /* @__PURE__ */ F({
|
|
78
78
|
__name: "PaginationDatatable",
|
|
79
79
|
props: {
|
|
80
80
|
pagination: {},
|
|
@@ -82,19 +82,19 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
82
82
|
},
|
|
83
83
|
emits: ["tradePage"],
|
|
84
84
|
setup(y, { emit: u }) {
|
|
85
|
-
const o = y, f = u, v =
|
|
85
|
+
const o = y, f = u, v = N(() => o.pagination.limit_per_page ? Math.ceil(o.pagination.count / o.pagination.limit_per_page) : 0), C = N(() => o.pagination.current_page + 1 < v.value ? o.pagination.current_page + 1 : null), E = () => {
|
|
86
86
|
o.pagination.current_page++, f("tradePage");
|
|
87
|
-
},
|
|
87
|
+
}, V = (p) => {
|
|
88
88
|
o.pagination.current_page = p - 1, f("tradePage");
|
|
89
89
|
}, l = () => {
|
|
90
90
|
o.pagination.current_page = v.value - 1, f("tradePage");
|
|
91
|
-
},
|
|
91
|
+
}, c = () => {
|
|
92
92
|
o.pagination.current_page = 0, f("tradePage");
|
|
93
93
|
}, h = () => {
|
|
94
94
|
o.pagination.current_page > 0 && (o.pagination.current_page--, f("tradePage"));
|
|
95
|
-
}, _ =
|
|
95
|
+
}, _ = N(() => {
|
|
96
96
|
if (v.value <= 7)
|
|
97
|
-
return Array.from({ length: v.value }, (
|
|
97
|
+
return Array.from({ length: v.value }, (A, B) => B + 1);
|
|
98
98
|
const p = o.pagination.current_page + 1, k = v.value, $ = /* @__PURE__ */ new Set([
|
|
99
99
|
1,
|
|
100
100
|
2,
|
|
@@ -107,51 +107,51 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
107
107
|
k
|
|
108
108
|
// Sempre mostra as 2 últimas
|
|
109
109
|
]), x = [];
|
|
110
|
-
let
|
|
111
|
-
return Array.from($).sort((
|
|
112
|
-
|
|
110
|
+
let d = 0;
|
|
111
|
+
return Array.from($).sort((A, B) => A - B).forEach((A) => {
|
|
112
|
+
A < 1 || A > k || (A > d + 1 && x.push("..."), x.push(A), d = A);
|
|
113
113
|
}), x;
|
|
114
114
|
});
|
|
115
|
-
return (p, k) => o.pagination.count > 0 ? (
|
|
115
|
+
return (p, k) => o.pagination.count > 0 ? (a(), n("div", ze, [
|
|
116
116
|
s("span", null, " Mostrando de " + g(o.pagination.count !== 0 ? o.pagination.limit_per_page * o.pagination.current_page + 1 : 0) + " até " + g(o.pagination.limit_per_page * (o.pagination.current_page + 1) < o.pagination.count ? o.pagination.limit_per_page * (o.pagination.current_page + 1) : o.pagination.count) + " de " + g(o.pagination.count) + " registros ", 1),
|
|
117
|
-
v.value > 0 ? (
|
|
118
|
-
s("div",
|
|
117
|
+
v.value > 0 ? (a(), n("div", Pe, [
|
|
118
|
+
s("div", Te, [
|
|
119
119
|
s("button", {
|
|
120
120
|
class: "btn btn-estilo",
|
|
121
|
-
onClick: j(
|
|
121
|
+
onClick: j(c, ["prevent"]),
|
|
122
122
|
disabled: o.pagination.current_page === 0,
|
|
123
123
|
innerHTML: R
|
|
124
|
-
}, null, 8,
|
|
124
|
+
}, null, 8, Ne),
|
|
125
125
|
s("button", {
|
|
126
126
|
class: "btn btn-estilo",
|
|
127
127
|
onClick: j(h, ["prevent"]),
|
|
128
128
|
disabled: o.pagination.current_page === 0,
|
|
129
129
|
innerHTML: ee
|
|
130
|
-
}, null, 8,
|
|
130
|
+
}, null, 8, Ae)
|
|
131
131
|
]),
|
|
132
|
-
s("div",
|
|
133
|
-
(
|
|
134
|
-
typeof $ == "number" ? (
|
|
132
|
+
s("div", De, [
|
|
133
|
+
(a(!0), n(S, null, T(_.value, ($, x) => (a(), n(S, { key: x }, [
|
|
134
|
+
typeof $ == "number" ? (a(), n("button", {
|
|
135
135
|
key: 0,
|
|
136
136
|
class: m([o.pagination.current_page + 1 == $ ? "page-select" : "", "page-estilo"]),
|
|
137
|
-
onClick: j((
|
|
137
|
+
onClick: j((d) => V($), ["prevent"]),
|
|
138
138
|
disabled: o.pagination.current_page + 1 == $
|
|
139
|
-
}, g($), 11,
|
|
139
|
+
}, g($), 11, Ee)) : (a(), n("span", He, "..."))
|
|
140
140
|
], 64))), 128))
|
|
141
141
|
]),
|
|
142
|
-
s("div",
|
|
142
|
+
s("div", Ve, [
|
|
143
143
|
s("button", {
|
|
144
|
-
onClick: j(
|
|
144
|
+
onClick: j(E, ["prevent"]),
|
|
145
145
|
class: "btn btn-estilo rotate-180",
|
|
146
146
|
disabled: !C.value,
|
|
147
147
|
innerHTML: ee
|
|
148
|
-
}, null, 8,
|
|
148
|
+
}, null, 8, Le),
|
|
149
149
|
s("button", {
|
|
150
150
|
onClick: j(l, ["prevent"]),
|
|
151
151
|
class: "btn btn-estilo rotate-180",
|
|
152
152
|
disabled: !C.value,
|
|
153
153
|
innerHTML: R
|
|
154
|
-
}, null, 8,
|
|
154
|
+
}, null, 8, je)
|
|
155
155
|
])
|
|
156
156
|
])) : b("", !0)
|
|
157
157
|
])) : b("", !0);
|
|
@@ -161,19 +161,19 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
161
161
|
for (const [f, v] of u)
|
|
162
162
|
o[f] = v;
|
|
163
163
|
return o;
|
|
164
|
-
},
|
|
164
|
+
}, Ie = /* @__PURE__ */ W(Be, [["__scopeId", "data-v-c189f089"]]), Oe = { class: "dropdown d-flex" }, qe = {
|
|
165
165
|
key: 0,
|
|
166
166
|
href: "#",
|
|
167
167
|
class: "btn dropdown-toggle",
|
|
168
168
|
"data-bs-toggle": "dropdown",
|
|
169
169
|
title: "Pesquisas Prédefinidas"
|
|
170
|
-
},
|
|
170
|
+
}, Fe = { class: "input-icon" }, Ke = {
|
|
171
171
|
key: 1,
|
|
172
172
|
class: "input-icon-addon"
|
|
173
|
-
},
|
|
173
|
+
}, Ue = {
|
|
174
174
|
key: 1,
|
|
175
175
|
class: "dropdown-menu"
|
|
176
|
-
},
|
|
176
|
+
}, Ye = ["onClick"], Xe = /* @__PURE__ */ F({
|
|
177
177
|
__name: "SearchDatatable",
|
|
178
178
|
props: {
|
|
179
179
|
search: {},
|
|
@@ -183,10 +183,10 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
183
183
|
},
|
|
184
184
|
emits: ["update:search", "update:filter", "search"],
|
|
185
185
|
setup(y, { emit: u }) {
|
|
186
|
-
const o = y, f = u, v =
|
|
186
|
+
const o = y, f = u, v = N({
|
|
187
187
|
get: () => o.search,
|
|
188
188
|
set: (l) => f("update:search", l)
|
|
189
|
-
}), C =
|
|
189
|
+
}), C = N({
|
|
190
190
|
get: () => o.filter,
|
|
191
191
|
set: (l) => f("update:filter", l)
|
|
192
192
|
});
|
|
@@ -195,22 +195,22 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
195
195
|
}), q(
|
|
196
196
|
() => o.list_filter,
|
|
197
197
|
(l) => {
|
|
198
|
-
Array.isArray(l) ? (l.forEach((
|
|
199
|
-
|
|
198
|
+
Array.isArray(l) ? (l.forEach((c, h) => {
|
|
199
|
+
c?.type === 1 && !c.to && console.error(`Filtro na posição ${h} é do tipo 'router-link' mas não possui a propriedade 'to'.`);
|
|
200
200
|
}), o.item_use.includes(2) && l.length === 0 && console.error("Nenhum filtro foi passado. Certifique-se de que o array de filtros não está vazio.")) : console.error("list_filter deve ser um array.");
|
|
201
201
|
},
|
|
202
202
|
{ immediate: !0, deep: !0 }
|
|
203
203
|
);
|
|
204
|
-
function
|
|
204
|
+
function E(l) {
|
|
205
205
|
C.value === l ? C.value = "" : C.value = l;
|
|
206
206
|
}
|
|
207
|
-
function
|
|
207
|
+
function V() {
|
|
208
208
|
v.value = "", f("search");
|
|
209
209
|
}
|
|
210
|
-
return (l,
|
|
211
|
-
const h =
|
|
212
|
-
return
|
|
213
|
-
y.item_use.includes(2) ? (
|
|
210
|
+
return (l, c) => {
|
|
211
|
+
const h = ke("router-link");
|
|
212
|
+
return a(), n("div", Oe, [
|
|
213
|
+
y.item_use.includes(2) ? (a(), n("a", qe, [...c[3] || (c[3] = [
|
|
214
214
|
s("svg", {
|
|
215
215
|
xmlns: "http://www.w3.org/2000/svg",
|
|
216
216
|
class: "icon icon-tabler icon-tabler-filter",
|
|
@@ -231,23 +231,23 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
231
231
|
s("path", { d: "M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227z" })
|
|
232
232
|
], -1)
|
|
233
233
|
])])) : b("", !0),
|
|
234
|
-
s("div",
|
|
235
|
-
|
|
234
|
+
s("div", Fe, [
|
|
235
|
+
ae(s("input", {
|
|
236
236
|
type: "text",
|
|
237
237
|
class: "form-control ms-1",
|
|
238
238
|
id: "inputSearchLaudos",
|
|
239
|
-
"onUpdate:modelValue":
|
|
240
|
-
onKeyup:
|
|
239
|
+
"onUpdate:modelValue": c[0] || (c[0] = (_) => v.value = _),
|
|
240
|
+
onKeyup: c[1] || (c[1] = be((_) => l.$emit("search"), ["enter"])),
|
|
241
241
|
placeholder: "Buscar..."
|
|
242
242
|
}, null, 544), [
|
|
243
|
-
[
|
|
243
|
+
[ne, v.value]
|
|
244
244
|
]),
|
|
245
|
-
v.value ? (
|
|
245
|
+
v.value ? (a(), n("span", {
|
|
246
246
|
key: 0,
|
|
247
|
-
onClick:
|
|
247
|
+
onClick: c[2] || (c[2] = (_) => V()),
|
|
248
248
|
class: "inputClose",
|
|
249
249
|
title: "Limpar pesquisa"
|
|
250
|
-
}, [...
|
|
250
|
+
}, [...c[4] || (c[4] = [
|
|
251
251
|
s("svg", {
|
|
252
252
|
xmlns: "http://www.w3.org/2000/svg",
|
|
253
253
|
width: "24",
|
|
@@ -268,7 +268,7 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
268
268
|
s("path", { d: "M18 6l-12 12" }),
|
|
269
269
|
s("path", { d: "M6 6l12 12" })
|
|
270
270
|
], -1)
|
|
271
|
-
])])) : (
|
|
271
|
+
])])) : (a(), n("span", Ke, [...c[5] || (c[5] = [
|
|
272
272
|
s("svg", {
|
|
273
273
|
xmlns: "http://www.w3.org/2000/svg",
|
|
274
274
|
width: "24",
|
|
@@ -291,46 +291,46 @@ const se = Symbol("v-datatable-key"), zt = /* @__PURE__ */ F({
|
|
|
291
291
|
], -1)
|
|
292
292
|
])]))
|
|
293
293
|
]),
|
|
294
|
-
y.item_use.includes(2) ? (
|
|
295
|
-
(
|
|
296
|
-
"type" in _ && _.type === 1 ? (
|
|
294
|
+
y.item_use.includes(2) ? (a(), n("div", Ue, [
|
|
295
|
+
(a(!0), n(S, null, T(o.list_filter, (_, p) => (a(), n(S, { key: p }, [
|
|
296
|
+
"type" in _ && _.type === 1 ? (a(), X(h, {
|
|
297
297
|
key: 0,
|
|
298
298
|
to: _?.to,
|
|
299
299
|
class: "dropdown-item cursor-pointer"
|
|
300
300
|
}, {
|
|
301
|
-
default:
|
|
302
|
-
|
|
301
|
+
default: xe(() => [
|
|
302
|
+
D(g(_.text), 1)
|
|
303
303
|
]),
|
|
304
304
|
_: 2
|
|
305
|
-
}, 1032, ["to"])) : !("type" in _) || _.type === 2 ? (
|
|
305
|
+
}, 1032, ["to"])) : !("type" in _) || _.type === 2 ? (a(), n("a", {
|
|
306
306
|
key: 1,
|
|
307
|
-
onClick: j((k) =>
|
|
307
|
+
onClick: j((k) => E(String(_.value)), ["prevent"]),
|
|
308
308
|
class: m(["dropdown-item cursor-pointer", C.value === _?.value ? "bg-info text-dark selected" : ""])
|
|
309
|
-
}, g(_.text), 11,
|
|
309
|
+
}, g(_.text), 11, Ye)) : b("", !0)
|
|
310
310
|
], 64))), 128))
|
|
311
311
|
])) : b("", !0)
|
|
312
312
|
]);
|
|
313
313
|
};
|
|
314
314
|
}
|
|
315
|
-
}),
|
|
316
|
-
function
|
|
317
|
-
const y =
|
|
315
|
+
}), We = /* @__PURE__ */ W(Xe, [["__scopeId", "data-v-1b6ff54b"]]);
|
|
316
|
+
function Ge() {
|
|
317
|
+
const y = z(!1), u = z(""), o = z(0), f = z(0), v = N(() => ({
|
|
318
318
|
position: "fixed",
|
|
319
319
|
zIndex: 9999,
|
|
320
320
|
pointerEvents: "none",
|
|
321
321
|
top: `${f.value + 15}px`,
|
|
322
322
|
left: `${o.value + 15}px`
|
|
323
323
|
}));
|
|
324
|
-
function C(
|
|
325
|
-
const h =
|
|
324
|
+
function C(c) {
|
|
325
|
+
const h = c.clientX, _ = c.clientY, p = window.innerHeight, k = 15, $ = 300;
|
|
326
326
|
let x = _ + k;
|
|
327
327
|
x + $ > p && (x = _ - $ - k, x < 0 && (x = 0)), o.value = h, f.value = x;
|
|
328
328
|
}
|
|
329
|
-
function
|
|
330
|
-
y.value = !0, u.value = h, C(
|
|
329
|
+
function E(c, h) {
|
|
330
|
+
y.value = !0, u.value = h, C(c);
|
|
331
331
|
}
|
|
332
|
-
function
|
|
333
|
-
y.value && C(
|
|
332
|
+
function V(c) {
|
|
333
|
+
y.value && C(c);
|
|
334
334
|
}
|
|
335
335
|
function l() {
|
|
336
336
|
y.value = !1;
|
|
@@ -339,56 +339,56 @@ function Ke() {
|
|
|
339
339
|
isHovering: y,
|
|
340
340
|
previewSrc: u,
|
|
341
341
|
previewStyle: v,
|
|
342
|
-
handleMouseOver:
|
|
343
|
-
handleMouseMove:
|
|
342
|
+
handleMouseOver: E,
|
|
343
|
+
handleMouseMove: V,
|
|
344
344
|
handleMouseLeave: l
|
|
345
345
|
};
|
|
346
346
|
}
|
|
347
|
-
const
|
|
347
|
+
const Je = { class: "d-flex justify-content-between align-items-start mb-2" }, Qe = { class: "text-secondary" }, Ze = { class: "mx-2 d-inline-block" }, Re = {
|
|
348
348
|
key: 0,
|
|
349
349
|
class: "alert alert-cyan d-flex justify-content-center align-items-center py-3",
|
|
350
350
|
role: "alert"
|
|
351
|
-
},
|
|
351
|
+
}, et = { class: "alert-title m-0" }, tt = { key: 0 }, at = { key: 2 }, nt = {
|
|
352
352
|
key: 5,
|
|
353
353
|
class: "text-danger erro-custom-container"
|
|
354
|
-
},
|
|
354
|
+
}, st = { class: "badge bg-orange text-white erro-custom-text" }, lt = { key: 0 }, rt = { key: 2 }, it = {
|
|
355
355
|
key: 5,
|
|
356
356
|
class: "text-danger erro-custom-container"
|
|
357
|
-
},
|
|
357
|
+
}, ot = { class: "badge bg-orange text-white erro-custom-text" }, ut = ["colspan"], dt = {
|
|
358
358
|
key: 0,
|
|
359
359
|
class: "d-flex flex-column justify-content-center align-items-center",
|
|
360
360
|
style: { height: "6rem" }
|
|
361
|
-
},
|
|
361
|
+
}, ct = {
|
|
362
362
|
key: 1,
|
|
363
363
|
style: { height: "3rem" }
|
|
364
|
-
},
|
|
364
|
+
}, pt = {
|
|
365
365
|
key: 2,
|
|
366
366
|
class: "p-3 text-center text-secondary"
|
|
367
|
-
},
|
|
367
|
+
}, _t = {
|
|
368
368
|
key: 2,
|
|
369
369
|
class: "feedback-container text-center"
|
|
370
|
-
},
|
|
370
|
+
}, mt = {
|
|
371
371
|
key: 0,
|
|
372
372
|
class: "text-secondary"
|
|
373
|
-
},
|
|
373
|
+
}, ft = {
|
|
374
374
|
key: 1,
|
|
375
375
|
class: "text-secondary"
|
|
376
|
-
},
|
|
376
|
+
}, gt = {
|
|
377
377
|
key: 3,
|
|
378
378
|
class: "table-responsive"
|
|
379
|
-
},
|
|
379
|
+
}, vt = { key: 0 }, ht = {
|
|
380
380
|
key: 0,
|
|
381
381
|
class: "w-1"
|
|
382
|
-
},
|
|
382
|
+
}, yt = {
|
|
383
383
|
key: 0,
|
|
384
384
|
class: "w-1"
|
|
385
|
-
},
|
|
385
|
+
}, kt = ["checked", "onChange"], bt = ["onClick"], xt = ["onClick"], wt = { key: 0 }, Ct = { key: 1 }, $t = ["onClick", "innerHTML"], Mt = ["onClick"], St = ["src"], zt = ["src"], Pt = {
|
|
386
386
|
key: 5,
|
|
387
387
|
class: "text-danger erro-custom-container"
|
|
388
|
-
},
|
|
388
|
+
}, Tt = { class: "badge bg-orange text-white erro-custom-text" }, Nt = {
|
|
389
389
|
key: 1,
|
|
390
390
|
class: "text-center p-4 text-secondary"
|
|
391
|
-
},
|
|
391
|
+
}, At = ["src"], Dt = /* @__PURE__ */ F({
|
|
392
392
|
__name: "VDataTable",
|
|
393
393
|
props: {
|
|
394
394
|
fetch: {},
|
|
@@ -424,9 +424,9 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
424
424
|
previewSrc: f,
|
|
425
425
|
previewStyle: v,
|
|
426
426
|
handleMouseOver: C,
|
|
427
|
-
handleMouseMove:
|
|
428
|
-
handleMouseLeave:
|
|
429
|
-
} =
|
|
427
|
+
handleMouseMove: E,
|
|
428
|
+
handleMouseLeave: V
|
|
429
|
+
} = Ge(), l = y, c = z([]), h = z([]), _ = z(0), p = z([]), k = z(null), $ = z(!1), x = z(null), d = z({
|
|
430
430
|
current_page: 0,
|
|
431
431
|
// pagina atual
|
|
432
432
|
count: 0,
|
|
@@ -437,7 +437,7 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
437
437
|
// termo de busca
|
|
438
438
|
filter: ""
|
|
439
439
|
// filtro selecionado
|
|
440
|
-
}), { data:
|
|
440
|
+
}), { data: A, pending: B, error: K, execute: le, attempt: L } = l.fetch(l.endpoint, {
|
|
441
441
|
params: () => l.deactivate_default_params ? l.add_params && typeof l.add_params == "function" ? l.add_params() : {
|
|
442
442
|
...l.add_params
|
|
443
443
|
} : l.add_params && typeof l.add_params == "function" ? {
|
|
@@ -451,29 +451,29 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
451
451
|
retryDelay: l.retry_delay,
|
|
452
452
|
paramsReactives: !1,
|
|
453
453
|
immediate: !1
|
|
454
|
-
}, l.fetch_name), re =
|
|
454
|
+
}, l.fetch_name), re = N(() => {
|
|
455
455
|
let i = [1];
|
|
456
456
|
return l.list_filter.length > 0 && i.push(2), i;
|
|
457
|
-
}), U =
|
|
458
|
-
[l.page_param_name]:
|
|
459
|
-
[l.page_size_param_name]:
|
|
460
|
-
[l.search_param_name]:
|
|
461
|
-
[l.filter_param_name]:
|
|
462
|
-
})),
|
|
457
|
+
}), U = N(() => ({
|
|
458
|
+
[l.page_param_name]: d.value.current_page + 1,
|
|
459
|
+
[l.page_size_param_name]: d.value.limit_per_page,
|
|
460
|
+
[l.search_param_name]: d.value.search || "",
|
|
461
|
+
[l.filter_param_name]: d.value.filter || ""
|
|
462
|
+
})), ie = N(() => B.value || $.value), I = (i) => {
|
|
463
463
|
const t = l.item_key;
|
|
464
464
|
return p.value.some((r) => r[t] === i[t]);
|
|
465
|
-
}, G =
|
|
465
|
+
}, G = N(() => {
|
|
466
466
|
if (!h.value.length) return !1;
|
|
467
467
|
const i = h.value.filter((t) => I(t)).length;
|
|
468
468
|
return i === 0 ? !1 : i === h.value.length ? !0 : "indeterminate";
|
|
469
|
-
}),
|
|
469
|
+
}), oe = N(() => p.value.length > 0);
|
|
470
470
|
q([G, k], ([i]) => {
|
|
471
471
|
k.value && (i === "indeterminate" ? (console.log("entrei no indeterminate"), k.value.checked = !1, k.value.indeterminate = !0) : (k.value.checked = i, k.value.indeterminate = !1));
|
|
472
472
|
}, {
|
|
473
473
|
immediate: !0,
|
|
474
474
|
flush: "post"
|
|
475
|
-
}), q(
|
|
476
|
-
i ? (h.value = i[l.data_key] || [], _.value = i[l.total_key] || 0,
|
|
475
|
+
}), q(A, (i) => {
|
|
476
|
+
i ? (h.value = i[l.data_key] || [], _.value = i[l.total_key] || 0, d.value.count = _.value) : (h.value = [], _.value = 0);
|
|
477
477
|
}, { immediate: !0 });
|
|
478
478
|
function ue() {
|
|
479
479
|
const i = h.value;
|
|
@@ -494,43 +494,59 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
494
494
|
r > -1 ? p.value.splice(r, 1) : p.value.push(i);
|
|
495
495
|
}
|
|
496
496
|
function ce(i) {
|
|
497
|
-
|
|
497
|
+
c.value.push(i);
|
|
498
498
|
}
|
|
499
|
-
|
|
500
|
-
function
|
|
499
|
+
we(se, { addColumn: ce });
|
|
500
|
+
function P() {
|
|
501
501
|
x.value && clearTimeout(x.value), $.value = !0, x.value = setTimeout(() => {
|
|
502
502
|
$.value = !1;
|
|
503
503
|
}, l.min_loading_delay), le();
|
|
504
504
|
}
|
|
505
505
|
function pe() {
|
|
506
|
-
|
|
506
|
+
d.value.current_page = 0, P();
|
|
507
507
|
}
|
|
508
508
|
const J = (i) => {
|
|
509
509
|
const t = i.target, r = parseInt(t.value, 10);
|
|
510
|
-
r > 0 && (
|
|
510
|
+
r > 0 && (d.value.limit_per_page = r, d.value.limit_per_page = r, d.value.current_page = 0, P());
|
|
511
511
|
};
|
|
512
|
-
function
|
|
512
|
+
function H(i, t, r = null) {
|
|
513
513
|
if (!i) return t;
|
|
514
514
|
const e = i.split(".");
|
|
515
|
-
let
|
|
515
|
+
let M = t;
|
|
516
516
|
for (const Y of e)
|
|
517
|
-
|
|
518
|
-
return r && (
|
|
517
|
+
M && typeof M == "object" && Y in M ? M = M[Y] : console.error(`Caminho inválido ou valor nulo em: ${i} na parte ${Y}`);
|
|
518
|
+
return r && (M = r(M)), M;
|
|
519
519
|
}
|
|
520
520
|
function _e(i, t) {
|
|
521
521
|
return t && typeof t == "number" && t > 0 && typeof i == "string" && i.length > t ? i.substring(0, t) + "..." : i;
|
|
522
522
|
}
|
|
523
|
+
function me(i) {
|
|
524
|
+
i > 0 ? (d.value.limit_per_page = i, d.value.current_page = 0, P()) : console.warn("O limite deve ser um número maior que zero.");
|
|
525
|
+
}
|
|
526
|
+
function fe(i) {
|
|
527
|
+
d.value.search = i, d.value.current_page = 0, P();
|
|
528
|
+
}
|
|
529
|
+
function ge(i) {
|
|
530
|
+
d.value.filter = i, d.value.current_page = 0, P();
|
|
531
|
+
}
|
|
532
|
+
function ve(i) {
|
|
533
|
+
i >= 1 && i <= Math.ceil(d.value.count / d.value.limit_per_page) ? (d.value.current_page = i - 1, P()) : console.warn("Número de página inválido.");
|
|
534
|
+
}
|
|
523
535
|
return u({
|
|
524
|
-
execute:
|
|
525
|
-
pagination:
|
|
536
|
+
execute: P,
|
|
537
|
+
pagination: Ce(d),
|
|
538
|
+
set_limit_per_page: me,
|
|
539
|
+
set_search: fe,
|
|
540
|
+
set_filter: ge,
|
|
541
|
+
set_page: ve,
|
|
526
542
|
default_params: U,
|
|
527
543
|
selected_items: p,
|
|
528
|
-
atLeastOneSelected:
|
|
544
|
+
atLeastOneSelected: oe
|
|
529
545
|
}), te(() => {
|
|
530
|
-
|
|
531
|
-
|
|
546
|
+
$e(() => {
|
|
547
|
+
P();
|
|
532
548
|
});
|
|
533
|
-
}), (i, t) => (
|
|
549
|
+
}), (i, t) => (a(), n("div", null, [
|
|
534
550
|
s("div", {
|
|
535
551
|
class: m(["", l.class_container])
|
|
536
552
|
}, [
|
|
@@ -538,110 +554,116 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
538
554
|
s("div", {
|
|
539
555
|
class: m(["", l.class_content])
|
|
540
556
|
}, [
|
|
541
|
-
s("div",
|
|
557
|
+
s("div", Je, [
|
|
542
558
|
O(i.$slots, "pageSize", {
|
|
543
559
|
changePageSize: J,
|
|
544
|
-
limit_per_page:
|
|
560
|
+
limit_per_page: d.value.limit_per_page
|
|
545
561
|
}, () => [
|
|
546
|
-
s("div",
|
|
547
|
-
|
|
548
|
-
s("div",
|
|
549
|
-
|
|
562
|
+
s("div", Qe, [
|
|
563
|
+
D(g(l.first_text_page_size) + " ", 1),
|
|
564
|
+
s("div", Ze, [
|
|
565
|
+
ae(s("input", {
|
|
550
566
|
class: "form-control form-control-sm",
|
|
551
567
|
onChange: J,
|
|
552
|
-
"onUpdate:modelValue": t[0] || (t[0] = (r) =>
|
|
568
|
+
"onUpdate:modelValue": t[0] || (t[0] = (r) => d.value.limit_per_page = r),
|
|
553
569
|
min: "1",
|
|
554
570
|
size: "3",
|
|
555
|
-
"aria-label": "Número de
|
|
571
|
+
"aria-label": "Número de registros por página",
|
|
572
|
+
type: "number"
|
|
556
573
|
}, null, 544), [
|
|
557
|
-
[
|
|
574
|
+
[
|
|
575
|
+
ne,
|
|
576
|
+
d.value.limit_per_page,
|
|
577
|
+
void 0,
|
|
578
|
+
{ lazy: !0 }
|
|
579
|
+
]
|
|
558
580
|
])
|
|
559
581
|
]),
|
|
560
|
-
|
|
582
|
+
D(" " + g(l.second_text_page_size), 1)
|
|
561
583
|
])
|
|
562
584
|
], !0),
|
|
563
585
|
O(i.$slots, "fieldMiddle", {}, void 0, !0),
|
|
564
|
-
Q(
|
|
565
|
-
search:
|
|
566
|
-
"onUpdate:search": t[1] || (t[1] = (r) =>
|
|
567
|
-
filter:
|
|
568
|
-
"onUpdate:filter": t[2] || (t[2] = (r) =>
|
|
586
|
+
Q(We, {
|
|
587
|
+
search: d.value.search,
|
|
588
|
+
"onUpdate:search": t[1] || (t[1] = (r) => d.value.search = r),
|
|
589
|
+
filter: d.value.filter,
|
|
590
|
+
"onUpdate:filter": t[2] || (t[2] = (r) => d.value.filter = r),
|
|
569
591
|
list_filter: l.list_filter,
|
|
570
592
|
item_use: re.value,
|
|
571
593
|
onSearch: pe
|
|
572
594
|
}, null, 8, ["search", "filter", "list_filter", "item_use"])
|
|
573
595
|
]),
|
|
574
|
-
l.use_checkbox && p.value.length > 0 ? (
|
|
575
|
-
s("h4",
|
|
596
|
+
l.use_checkbox && p.value.length > 0 ? (a(), n("div", Re, [
|
|
597
|
+
s("h4", et, [
|
|
576
598
|
t[4] || (t[4] = s("strong", null, "Itens Selecionados:", -1)),
|
|
577
|
-
|
|
599
|
+
D(" " + g(p.value.length), 1)
|
|
578
600
|
]),
|
|
579
601
|
s("button", {
|
|
580
602
|
class: "btn btn-outline-danger ms-3 bold",
|
|
581
603
|
onClick: t[3] || (t[3] = (r) => p.value = [])
|
|
582
604
|
}, "Limpar Seleção")
|
|
583
605
|
])) : b("", !0),
|
|
584
|
-
|
|
585
|
-
l.custom_loading ? (
|
|
606
|
+
ie.value ? (a(), n(S, { key: 1 }, [
|
|
607
|
+
l.custom_loading ? (a(), X(Z(l.custom_loading), { key: 0 })) : (a(), n("table", {
|
|
586
608
|
key: 1,
|
|
587
609
|
class: m(["table table-vcenter table-selectable", l.class_table])
|
|
588
610
|
}, [
|
|
589
611
|
s("thead", null, [
|
|
590
612
|
s("tr", null, [
|
|
591
|
-
(
|
|
613
|
+
(a(!0), n(S, null, T(c.value, (r) => (a(), n("th", {
|
|
592
614
|
key: r.field || r.header,
|
|
593
615
|
class: m(r.class_column)
|
|
594
616
|
}, g(r.header), 3))), 128))
|
|
595
617
|
])
|
|
596
618
|
]),
|
|
597
619
|
s("tbody", null, [
|
|
598
|
-
l.type_loading === "placeholder" ? (
|
|
620
|
+
l.type_loading === "placeholder" ? (a(!0), n(S, { key: 0 }, T(d.value.limit_per_page, (r) => (a(), n("tr", {
|
|
599
621
|
key: "placeholder-" + r,
|
|
600
622
|
class: "placeholder-glow"
|
|
601
623
|
}, [
|
|
602
|
-
(
|
|
624
|
+
(a(!0), n(S, null, T(c.value, (e) => (a(), n("td", {
|
|
603
625
|
key: e.field || e.header,
|
|
604
626
|
class: m(e.class_row)
|
|
605
627
|
}, [
|
|
606
|
-
e.bodySlot ? (
|
|
628
|
+
e.bodySlot ? (a(), n("span", tt, [...t[5] || (t[5] = [
|
|
607
629
|
s("span", { class: "placeholder col-8" }, null, -1)
|
|
608
|
-
])])) : e.type === "text" ? (
|
|
630
|
+
])])) : e.type === "text" ? (a(), n("span", {
|
|
609
631
|
key: 1,
|
|
610
632
|
class: m(e.class_item)
|
|
611
633
|
}, [...t[6] || (t[6] = [
|
|
612
634
|
s("span", { class: "placeholder col-8" }, null, -1)
|
|
613
|
-
])], 2)) : e.type === "date" ? (
|
|
635
|
+
])], 2)) : e.type === "date" ? (a(), n("span", at, [...t[7] || (t[7] = [
|
|
614
636
|
s("span", { class: "placeholder col-9" }, null, -1)
|
|
615
|
-
])])) : e.type === "html" ? (
|
|
637
|
+
])])) : e.type === "html" ? (a(), n("div", {
|
|
616
638
|
key: 3,
|
|
617
639
|
class: m(e.class_item)
|
|
618
640
|
}, [...t[8] || (t[8] = [
|
|
619
641
|
s("div", { class: "placeholder col-12" }, null, -1)
|
|
620
|
-
])], 2)) : e.type === "img" ? (
|
|
642
|
+
])], 2)) : e.type === "img" ? (a(), n("div", {
|
|
621
643
|
key: 4,
|
|
622
644
|
class: m(e.class_item)
|
|
623
645
|
}, [...t[9] || (t[9] = [
|
|
624
646
|
s("div", { class: "placeholder placeholder-img" }, null, -1)
|
|
625
|
-
])], 2)) : (
|
|
626
|
-
t[10] || (t[10] =
|
|
627
|
-
s("span",
|
|
628
|
-
t[11] || (t[11] =
|
|
647
|
+
])], 2)) : (a(), n("span", nt, [
|
|
648
|
+
t[10] || (t[10] = D("tipo ", -1)),
|
|
649
|
+
s("span", st, g(e.type), 1),
|
|
650
|
+
t[11] || (t[11] = D(" não suportado ", -1))
|
|
629
651
|
]))
|
|
630
652
|
], 2))), 128))
|
|
631
|
-
]))), 128)) : l.type_loading === "spiner-table" ? (
|
|
653
|
+
]))), 128)) : l.type_loading === "spiner-table" ? (a(!0), n(S, { key: 1 }, T(d.value.limit_per_page, (r) => (a(), n("tr", {
|
|
632
654
|
key: "placeholder-" + r
|
|
633
655
|
}, [
|
|
634
|
-
(
|
|
656
|
+
(a(!0), n(S, null, T(c.value, (e) => (a(), n("td", {
|
|
635
657
|
key: e.field || e.header,
|
|
636
658
|
class: m(e.class_row)
|
|
637
659
|
}, [
|
|
638
|
-
e.bodySlot ? (
|
|
660
|
+
e.bodySlot ? (a(), n("span", lt, [...t[12] || (t[12] = [
|
|
639
661
|
s("span", {
|
|
640
662
|
class: "spinner-border spinner-border-sm",
|
|
641
663
|
role: "status",
|
|
642
664
|
"aria-hidden": "true"
|
|
643
665
|
}, null, -1)
|
|
644
|
-
])])) : e.type === "text" ? (
|
|
666
|
+
])])) : e.type === "text" ? (a(), n("span", {
|
|
645
667
|
key: 1,
|
|
646
668
|
class: m(e.class_item)
|
|
647
669
|
}, [...t[13] || (t[13] = [
|
|
@@ -650,13 +672,13 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
650
672
|
role: "status",
|
|
651
673
|
"aria-hidden": "true"
|
|
652
674
|
}, null, -1)
|
|
653
|
-
])], 2)) : e.type === "date" ? (
|
|
675
|
+
])], 2)) : e.type === "date" ? (a(), n("span", rt, [...t[14] || (t[14] = [
|
|
654
676
|
s("span", {
|
|
655
677
|
class: "spinner-border spinner-border-sm",
|
|
656
678
|
role: "status",
|
|
657
679
|
"aria-hidden": "true"
|
|
658
680
|
}, null, -1)
|
|
659
|
-
])])) : e.type === "html" ? (
|
|
681
|
+
])])) : e.type === "html" ? (a(), n("div", {
|
|
660
682
|
key: 3,
|
|
661
683
|
class: m(e.class_item)
|
|
662
684
|
}, [...t[15] || (t[15] = [
|
|
@@ -665,7 +687,7 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
665
687
|
role: "status",
|
|
666
688
|
"aria-hidden": "true"
|
|
667
689
|
}, null, -1)
|
|
668
|
-
])], 2)) : e.type === "img" ? (
|
|
690
|
+
])], 2)) : e.type === "img" ? (a(), n("div", {
|
|
669
691
|
key: 4,
|
|
670
692
|
class: m(["", e.class_item])
|
|
671
693
|
}, [...t[16] || (t[16] = [
|
|
@@ -676,46 +698,46 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
676
698
|
"aria-hidden": "true"
|
|
677
699
|
})
|
|
678
700
|
], -1)
|
|
679
|
-
])], 2)) : (
|
|
680
|
-
t[17] || (t[17] =
|
|
681
|
-
s("span",
|
|
682
|
-
t[18] || (t[18] =
|
|
701
|
+
])], 2)) : (a(), n("span", it, [
|
|
702
|
+
t[17] || (t[17] = D("tipo ", -1)),
|
|
703
|
+
s("span", ot, g(e.type), 1),
|
|
704
|
+
t[18] || (t[18] = D(" não suportado ", -1))
|
|
683
705
|
]))
|
|
684
706
|
], 2))), 128))
|
|
685
|
-
]))), 128)) : l.type_loading === "spiner" ? (
|
|
707
|
+
]))), 128)) : l.type_loading === "spiner" ? (a(!0), n(S, { key: 2 }, T(d.value.limit_per_page, (r) => (a(), n("tr", { key: r }, [
|
|
686
708
|
s("td", {
|
|
687
|
-
colspan:
|
|
709
|
+
colspan: c.value.length,
|
|
688
710
|
class: "text-center p-0",
|
|
689
711
|
style: { "border-bottom": "none" }
|
|
690
712
|
}, [
|
|
691
|
-
r === Math.floor(
|
|
713
|
+
r === Math.floor(d.value.limit_per_page / 2) + 1 ? (a(), n("div", dt, [...t[19] || (t[19] = [
|
|
692
714
|
s("div", {
|
|
693
715
|
class: "spinner-border",
|
|
694
716
|
style: { width: "3rem", height: "3rem" },
|
|
695
717
|
role: "status"
|
|
696
718
|
}, null, -1),
|
|
697
719
|
s("span", { class: "mt-2" }, "Carregando...", -1)
|
|
698
|
-
])])) : (
|
|
699
|
-
], 8,
|
|
720
|
+
])])) : (a(), n("div", ct))
|
|
721
|
+
], 8, ut)
|
|
700
722
|
]))), 128)) : b("", !0)
|
|
701
723
|
])
|
|
702
724
|
], 2)),
|
|
703
|
-
w(
|
|
704
|
-
], 64)) : w(K) ? (
|
|
725
|
+
w(L) && w(L).current > 1 ? (a(), n("div", pt, " A conexão falhou. Tentando novamente... (Tentativa " + g(w(L).current) + " de " + g(w(L).total) + ") ", 1)) : b("", !0)
|
|
726
|
+
], 64)) : w(K) ? (a(), n("div", _t, [
|
|
705
727
|
t[20] || (t[20] = s("h4", { class: "text-danger" }, "Ocorreu um Erro", -1)),
|
|
706
|
-
w(
|
|
728
|
+
w(L) ? (a(), n("p", mt, " Não foi possível carregar os dados após " + g(w(L).total) + " tentativa(s). ", 1)) : (a(), n("p", ft, " Não foi possível carregar os dados. Verifique sua conexão. ")),
|
|
707
729
|
s("button", {
|
|
708
730
|
class: "btn btn-primary mt-2",
|
|
709
|
-
onClick:
|
|
731
|
+
onClick: P
|
|
710
732
|
}, " Tentar Novamente ")
|
|
711
|
-
])) : h.value ? (
|
|
712
|
-
h.value.length > 0 ? (
|
|
733
|
+
])) : h.value ? (a(), n("div", gt, [
|
|
734
|
+
h.value.length > 0 ? (a(), n("div", vt, [
|
|
713
735
|
s("table", {
|
|
714
736
|
class: m(["table table-vcenter table-selectable", l.class_table])
|
|
715
737
|
}, [
|
|
716
738
|
s("thead", null, [
|
|
717
739
|
s("tr", null, [
|
|
718
|
-
l.use_checkbox ? (
|
|
740
|
+
l.use_checkbox ? (a(), n("th", ht, [
|
|
719
741
|
s("input", {
|
|
720
742
|
class: "form-check-input m-0",
|
|
721
743
|
type: "checkbox",
|
|
@@ -725,124 +747,124 @@ const Ue = { class: "d-flex justify-content-between align-items-start mb-2" }, Y
|
|
|
725
747
|
"aria-label": "Selecionar todos os itens na página"
|
|
726
748
|
}, null, 544)
|
|
727
749
|
])) : b("", !0),
|
|
728
|
-
(
|
|
750
|
+
(a(!0), n(S, null, T(c.value, (r) => (a(), n("th", {
|
|
729
751
|
key: r.field || r.header,
|
|
730
752
|
class: m(r.class_column)
|
|
731
753
|
}, g(r.header), 3))), 128))
|
|
732
754
|
])
|
|
733
755
|
]),
|
|
734
756
|
s("tbody", null, [
|
|
735
|
-
(
|
|
757
|
+
(a(!0), n(S, null, T(h.value, (r) => (a(), n("tr", {
|
|
736
758
|
key: r[l.item_key]
|
|
737
759
|
}, [
|
|
738
|
-
l.use_checkbox ? (
|
|
760
|
+
l.use_checkbox ? (a(), n("td", yt, [
|
|
739
761
|
s("input", {
|
|
740
762
|
class: "form-check-input m-0",
|
|
741
763
|
type: "checkbox",
|
|
742
764
|
checked: I(r),
|
|
743
765
|
onChange: (e) => de(r),
|
|
744
766
|
"aria-label": "Selecionar este item"
|
|
745
|
-
}, null, 40,
|
|
767
|
+
}, null, 40, kt)
|
|
746
768
|
])) : b("", !0),
|
|
747
|
-
(
|
|
769
|
+
(a(!0), n(S, null, T(c.value, (e) => (a(), n("td", {
|
|
748
770
|
key: e.field || e.header,
|
|
749
771
|
class: m(e.class_row)
|
|
750
772
|
}, [
|
|
751
|
-
e.bodySlot ? (
|
|
773
|
+
e.bodySlot ? (a(), X(Z(e.bodySlot), {
|
|
752
774
|
key: 0,
|
|
753
775
|
item: r,
|
|
754
776
|
"is-selected": I(r)
|
|
755
|
-
}, null, 8, ["item", "is-selected"])) : e.type === "text" ? (
|
|
777
|
+
}, null, 8, ["item", "is-selected"])) : e.type === "text" ? (a(), n("span", {
|
|
756
778
|
key: 1,
|
|
757
|
-
onClick: (
|
|
779
|
+
onClick: (M) => e.click ? e.click(r) : null,
|
|
758
780
|
class: m(e.class_item + (e.click ? " cursor-pointer" : ""))
|
|
759
|
-
}, g(_e(
|
|
781
|
+
}, g(_e(H(e.field, r, e.transform_function), e.limite_text ?? null)), 11, bt)) : e.type === "date" ? (a(), n("span", {
|
|
760
782
|
key: 2,
|
|
761
|
-
onClick: (
|
|
783
|
+
onClick: (M) => e.click ? e.click(r) : null,
|
|
762
784
|
class: m(e.class_item + (e.click ? " cursor-pointer" : ""))
|
|
763
785
|
}, [
|
|
764
|
-
e.format === "complete" ? (
|
|
765
|
-
e.format === "simple" ? (
|
|
786
|
+
e.format === "complete" ? (a(), n("span", wt, g(new Date(H(e.field, r)).toLocaleString()), 1)) : b("", !0),
|
|
787
|
+
e.format === "simple" ? (a(), n("span", Ct, g(new Date(H(
|
|
766
788
|
e.field,
|
|
767
789
|
r
|
|
768
790
|
)).toLocaleDateString()), 1)) : b("", !0)
|
|
769
|
-
], 10,
|
|
791
|
+
], 10, xt)) : e.type === "html" ? (a(), n("div", {
|
|
770
792
|
key: 3,
|
|
771
|
-
onClick: (
|
|
793
|
+
onClick: (M) => e.click ? e.click(r) : null,
|
|
772
794
|
class: m(e.class_item + (e.click ? " cursor-pointer" : "")),
|
|
773
|
-
innerHTML:
|
|
774
|
-
}, null, 10,
|
|
795
|
+
innerHTML: H(e.field, r)
|
|
796
|
+
}, null, 10, $t)) : e.type === "img" ? (a(), n("div", {
|
|
775
797
|
key: 4,
|
|
776
|
-
onClick: (
|
|
798
|
+
onClick: (M) => e.click ? e.click(r) : null,
|
|
777
799
|
class: m(e.class_item + (e.click ? " cursor-pointer" : ""))
|
|
778
800
|
}, [
|
|
779
|
-
|
|
801
|
+
H(e.field, r) ? (a(), n("div", Me({
|
|
780
802
|
key: 0,
|
|
781
803
|
ref_for: !0
|
|
782
804
|
}, e.deactivate_img_preview ? {
|
|
783
805
|
class: "container-img"
|
|
784
806
|
} : {
|
|
785
|
-
onMouseover: (
|
|
786
|
-
onMousemove: w(
|
|
787
|
-
onMouseleave: w(
|
|
807
|
+
onMouseover: (M) => w(C)(M, H(e.field, r)),
|
|
808
|
+
onMousemove: w(E),
|
|
809
|
+
onMouseleave: w(V),
|
|
788
810
|
class: "container-img container-img-preview"
|
|
789
811
|
}), [
|
|
790
812
|
s("img", {
|
|
791
813
|
class: "img-tamanho",
|
|
792
|
-
src:
|
|
793
|
-
}, null, 8,
|
|
814
|
+
src: H(e.field, r)
|
|
815
|
+
}, null, 8, St),
|
|
794
816
|
s("img", {
|
|
795
817
|
class: "img-tamanho-cover",
|
|
796
|
-
src:
|
|
797
|
-
}, null, 8,
|
|
818
|
+
src: H(e.field, r)
|
|
819
|
+
}, null, 8, zt),
|
|
798
820
|
t[21] || (t[21] = s("div", { class: "bg-img" }, null, -1))
|
|
799
821
|
], 16)) : b("", !0)
|
|
800
|
-
], 10,
|
|
801
|
-
t[22] || (t[22] =
|
|
802
|
-
s("span",
|
|
803
|
-
t[23] || (t[23] =
|
|
822
|
+
], 10, Mt)) : (a(), n("span", Pt, [
|
|
823
|
+
t[22] || (t[22] = D("tipo ", -1)),
|
|
824
|
+
s("span", Tt, g(e.type), 1),
|
|
825
|
+
t[23] || (t[23] = D(" não suportado", -1))
|
|
804
826
|
]))
|
|
805
827
|
], 2))), 128))
|
|
806
828
|
]))), 128))
|
|
807
829
|
])
|
|
808
830
|
], 2)
|
|
809
|
-
])) : (
|
|
831
|
+
])) : (a(), n("div", Nt, [...t[24] || (t[24] = [
|
|
810
832
|
s("p", { class: "m-0" }, "Nenhum item encontrado.", -1)
|
|
811
833
|
])]))
|
|
812
834
|
])) : b("", !0)
|
|
813
835
|
], 2)
|
|
814
836
|
], 2),
|
|
815
837
|
O(i.$slots, "pagination", {
|
|
816
|
-
pagination:
|
|
817
|
-
tradePage:
|
|
838
|
+
pagination: d.value,
|
|
839
|
+
tradePage: P,
|
|
818
840
|
error: w(K)
|
|
819
841
|
}, () => [
|
|
820
|
-
!w(K) &&
|
|
842
|
+
!w(K) && d.value.count > 0 ? (a(), n("div", {
|
|
821
843
|
key: 0,
|
|
822
844
|
class: m(["mt-3 px-3", l.class_pagination])
|
|
823
845
|
}, [
|
|
824
|
-
Q(
|
|
846
|
+
Q(Ie, {
|
|
825
847
|
filtering: !0,
|
|
826
|
-
pagination:
|
|
827
|
-
onTradePage:
|
|
848
|
+
pagination: d.value,
|
|
849
|
+
onTradePage: P
|
|
828
850
|
}, null, 8, ["pagination"])
|
|
829
851
|
], 2)) : b("", !0)
|
|
830
852
|
], !0),
|
|
831
|
-
w(o) ? (
|
|
853
|
+
w(o) ? (a(), n("div", {
|
|
832
854
|
key: 0,
|
|
833
855
|
class: "image-preview-container",
|
|
834
|
-
style:
|
|
856
|
+
style: Se(w(v))
|
|
835
857
|
}, [
|
|
836
858
|
s("img", {
|
|
837
859
|
src: w(f),
|
|
838
860
|
alt: "Preview",
|
|
839
861
|
class: "image-preview-large"
|
|
840
|
-
}, null, 8,
|
|
862
|
+
}, null, 8, At)
|
|
841
863
|
], 4)) : b("", !0)
|
|
842
864
|
]));
|
|
843
865
|
}
|
|
844
|
-
}),
|
|
866
|
+
}), Vt = /* @__PURE__ */ W(Dt, [["__scopeId", "data-v-a3a0dbd6"]]);
|
|
845
867
|
export {
|
|
846
|
-
|
|
847
|
-
|
|
868
|
+
Ht as VColumn,
|
|
869
|
+
Vt as VDataTable
|
|
848
870
|
};
|
package/package.json
CHANGED
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
<div class="text-secondary">
|
|
9
9
|
{{ props.first_text_page_size }}
|
|
10
10
|
<div class="mx-2 d-inline-block">
|
|
11
|
-
<input class="form-control form-control-sm" @change="changePageSize" v-model="pagination.limit_per_page" min="1"
|
|
12
|
-
size="3" aria-label="Número de
|
|
11
|
+
<input class="form-control form-control-sm" @change="changePageSize" v-model.lazy="pagination.limit_per_page" min="1"
|
|
12
|
+
size="3" aria-label="Número de registros por página" type="number" />
|
|
13
13
|
</div>
|
|
14
14
|
{{ props.second_text_page_size }}
|
|
15
15
|
</div>
|
|
@@ -219,7 +219,7 @@
|
|
|
219
219
|
</template>
|
|
220
220
|
|
|
221
221
|
<script setup lang="ts" generic="T extends Record<string, any>">
|
|
222
|
-
import { ref, provide, computed, watch, onMounted, nextTick, type Component, type Ref, type ComputedRef } from 'vue';
|
|
222
|
+
import { readonly,ref, provide, computed, watch, onMounted, nextTick, type Component, type Ref, type ComputedRef } from 'vue';
|
|
223
223
|
|
|
224
224
|
import PaginationDatatable from './PaginationDatatable.vue';
|
|
225
225
|
import Search from './SearchDatatable.vue';
|
|
@@ -297,6 +297,10 @@ interface ExposedFunctions {
|
|
|
297
297
|
default_params: Record<string, any>;
|
|
298
298
|
selected_items: Ref<T[]>;
|
|
299
299
|
atLeastOneSelected: ComputedRef<boolean>;
|
|
300
|
+
set_limit_per_page: (newLimit: number) => void;
|
|
301
|
+
set_search: (newSearch: string) => void;
|
|
302
|
+
set_filter: (newFilter: string) => void;
|
|
303
|
+
set_page: (newPage: number) => void;
|
|
300
304
|
}
|
|
301
305
|
|
|
302
306
|
// =======================================================
|
|
@@ -569,12 +573,43 @@ function limiteText(text: string | null, limite: number | null): string | null {
|
|
|
569
573
|
// =======================================================
|
|
570
574
|
// 7. EXPOSE E CICLO DE VIDA
|
|
571
575
|
// =======================================================
|
|
576
|
+
function set_limit_per_page(newLimit: number): void {
|
|
577
|
+
if (newLimit > 0) {
|
|
578
|
+
pagination.value.limit_per_page = newLimit;
|
|
579
|
+
pagination.value.current_page = 0;
|
|
580
|
+
fetchDataWithDelay();
|
|
581
|
+
}else {
|
|
582
|
+
console.warn("O limite deve ser um número maior que zero.");
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
function set_search(newSearch: string): void {
|
|
586
|
+
pagination.value.search = newSearch;
|
|
587
|
+
pagination.value.current_page = 0;
|
|
588
|
+
fetchDataWithDelay();
|
|
589
|
+
}
|
|
590
|
+
function set_filter(newFilter: string): void {
|
|
591
|
+
pagination.value.filter = newFilter;
|
|
592
|
+
pagination.value.current_page = 0;
|
|
593
|
+
fetchDataWithDelay();
|
|
594
|
+
}
|
|
595
|
+
function set_page(newPage: number): void {
|
|
596
|
+
if (newPage >= 1 && newPage <= Math.ceil(pagination.value.count / pagination.value.limit_per_page)) {
|
|
597
|
+
pagination.value.current_page = newPage - 1;
|
|
598
|
+
fetchDataWithDelay();
|
|
599
|
+
} else {
|
|
600
|
+
console.warn("Número de página inválido.");
|
|
601
|
+
}
|
|
602
|
+
}
|
|
572
603
|
|
|
573
604
|
defineExpose<
|
|
574
605
|
ExposedFunctions
|
|
575
606
|
>({
|
|
576
607
|
execute: fetchDataWithDelay,
|
|
577
|
-
pagination,
|
|
608
|
+
pagination: readonly(pagination),
|
|
609
|
+
set_limit_per_page: set_limit_per_page,
|
|
610
|
+
set_search: set_search,
|
|
611
|
+
set_filter: set_filter,
|
|
612
|
+
set_page: set_page,
|
|
578
613
|
default_params,
|
|
579
614
|
selected_items,
|
|
580
615
|
atLeastOneSelected,
|