nemesischart 2.0.4 → 2.0.5

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.
@@ -1,11 +1,11 @@
1
- import { ref as tt, shallowRef as Rt, onMounted as Ft, onBeforeUnmount as Et, watch as vt, openBlock as s, createElementBlock as i, normalizeStyle as y, createElementVNode as b, computed as R, unref as l, normalizeClass as rt, renderSlot as A, createTextVNode as _, toDisplayString as v, createCommentVNode as u, createVNode as dt, Fragment as pt, renderList as yt } from "vue";
2
- import { Chart as $t, Title as Tt, Tooltip as qt, Legend as zt, Filler as Lt, LineController as jt, LineElement as Vt, PointElement as Ht, BarController as Nt, BarElement as Dt, PieController as Mt, PolarAreaController as Pt, ArcElement as _t, CategoryScale as Ot, LinearScale as Wt, RadialLinearScale as It } from "chart.js";
3
- const et = (t, x) => {
4
- const a = t.__vccOpts || t;
5
- for (const [f, e] of x)
6
- a[f] = e;
7
- return a;
8
- }, Xt = {
1
+ import { ref as tt, shallowRef as Rt, onMounted as Et, onBeforeUnmount as Ft, watch as vt, openBlock as n, createElementBlock as s, normalizeStyle as y, createElementVNode as x, computed as w, unref as r, normalizeClass as rt, renderSlot as C, createTextVNode as O, toDisplayString as $, createCommentVNode as f, createVNode as dt, Fragment as pt, renderList as yt } from "vue";
2
+ import { Chart as $t, Title as Tt, Tooltip as qt, Legend as Lt, Filler as zt, LineController as jt, LineElement as Ht, PointElement as Vt, BarController as Mt, BarElement as Nt, PieController as Dt, PolarAreaController as Pt, ArcElement as Ot, CategoryScale as Wt, LinearScale as It, RadialLinearScale as Xt } from "chart.js";
3
+ const et = (t, v) => {
4
+ const e = t.__vccOpts || t;
5
+ for (const [g, o] of v)
6
+ e[g] = o;
7
+ return e;
8
+ }, Yt = {
9
9
  __name: "ChartBase",
10
10
  props: {
11
11
  type: { type: String, required: !0 },
@@ -15,123 +15,123 @@ const et = (t, x) => {
15
15
  height: { type: [String, Number], default: 300 },
16
16
  width: { type: [String, Number], default: null }
17
17
  },
18
- setup(t, { expose: x }) {
18
+ setup(t, { expose: v }) {
19
19
  $t.register(
20
20
  Tt,
21
21
  qt,
22
- zt,
23
22
  Lt,
23
+ zt,
24
24
  jt,
25
- Vt,
26
25
  Ht,
26
+ Vt,
27
+ Mt,
27
28
  Nt,
28
29
  Dt,
29
- Mt,
30
30
  Pt,
31
- _t,
32
31
  Ot,
33
32
  Wt,
34
- It
33
+ It,
34
+ Xt
35
35
  );
36
- const a = t, f = tt(null), e = Rt(null), w = {
36
+ const e = t, g = tt(null), o = Rt(null), R = {
37
37
  responsive: !0,
38
38
  maintainAspectRatio: !1,
39
39
  plugins: {
40
40
  legend: { position: "top" }
41
41
  }
42
42
  };
43
- function $() {
44
- return { ...w, ...a.options };
43
+ function S() {
44
+ return { ...R, ...e.options };
45
45
  }
46
- function z() {
47
- f.value && (e.value = new $t(f.value, {
48
- type: a.type,
49
- data: a.data,
50
- options: $(),
51
- plugins: a.plugins
46
+ function j() {
47
+ g.value && (o.value = new $t(g.value, {
48
+ type: e.type,
49
+ data: e.data,
50
+ options: S(),
51
+ plugins: e.plugins
52
52
  }));
53
53
  }
54
- function J() {
55
- e.value && (e.value.destroy(), e.value = null);
54
+ function Q() {
55
+ o.value && (o.value.destroy(), o.value = null);
56
56
  }
57
- return Ft(z), Et(J), vt(
58
- () => a.data,
59
- (G) => {
60
- if (!e.value) return;
61
- e.value.data.labels = G.labels;
62
- const F = e.value.data.datasets, D = G.datasets;
63
- F.length !== D.length ? e.value.data.datasets = D : D.forEach((I, W) => Object.assign(F[W], I)), e.value.update();
57
+ return Et(j), Ft(Q), vt(
58
+ () => e.data,
59
+ (Z) => {
60
+ if (!o.value) return;
61
+ o.value.data.labels = Z.labels;
62
+ const T = o.value.data.datasets, E = Z.datasets;
63
+ T.length !== E.length ? o.value.data.datasets = E : E.forEach((X, I) => Object.assign(T[I], X)), o.value.update();
64
64
  },
65
65
  { deep: !0 }
66
66
  ), vt(
67
- () => a.options,
67
+ () => e.options,
68
68
  () => {
69
- e.value && (e.value.options = $(), e.value.update());
69
+ o.value && (o.value.options = S(), o.value.update());
70
70
  },
71
71
  { deep: !0 }
72
- ), x({ chart: e }), (G, F) => (s(), i("div", {
72
+ ), v({ chart: o }), (Z, T) => (n(), s("div", {
73
73
  class: "nc-chart-wrapper w-full",
74
74
  style: y({
75
75
  height: typeof t.height == "number" ? `${t.height}px` : t.height,
76
76
  width: t.width ? typeof t.width == "number" ? `${t.width}px` : t.width : "100%"
77
77
  })
78
78
  }, [
79
- b("canvas", {
79
+ x("canvas", {
80
80
  ref_key: "canvasRef",
81
- ref: f
81
+ ref: g
82
82
  }, null, 512)
83
83
  ], 4));
84
84
  }
85
- }, lt = /* @__PURE__ */ et(Xt, [["__scopeId", "data-v-9828990e"]]), Yt = {
85
+ }, lt = /* @__PURE__ */ et(Yt, [["__scopeId", "data-v-9828990e"]]), Jt = {
86
86
  light: { bg: "#ffffff", text: "#000000", muted: "#64748B", grid: "rgba(15,23,42,0.06)" },
87
- dark: { bg: "#000000", text: "#ffffff", muted: "#94A3B8", grid: "rgba(255,255,255,0.08)" },
88
- transparent: { bg: "transparent", text: "inherit", muted: "#94A3B8", grid: "rgba(127,127,127,0.15)" }
87
+ dark: { bg: "#000000", text: "#ffffff", muted: "#7b7b7b", grid: "rgba(255,255,255,0.08)" },
88
+ transparent: { bg: "transparent", text: "inherit", muted: "#7b7b7b", grid: "rgba(127,127,127,0.15)" }
89
89
  };
90
- function M(t, x) {
91
- if (!t) return `rgba(59,130,246,${x})`;
90
+ function D(t, v) {
91
+ if (!t) return `rgba(59,130,246,${v})`;
92
92
  if (t.startsWith("#")) {
93
- const a = t.replace("#", ""), f = a.length === 3 ? a.split("").map((z) => z + z).join("") : a, e = parseInt(f.slice(0, 2), 16), w = parseInt(f.slice(2, 4), 16), $ = parseInt(f.slice(4, 6), 16);
94
- return `rgba(${e},${w},${$},${x})`;
93
+ const e = t.replace("#", ""), g = e.length === 3 ? e.split("").map((j) => j + j).join("") : e, o = parseInt(g.slice(0, 2), 16), R = parseInt(g.slice(2, 4), 16), S = parseInt(g.slice(4, 6), 16);
94
+ return `rgba(${o},${R},${S},${v})`;
95
95
  }
96
96
  if (t.startsWith("rgb")) {
97
- const a = t.match(/[\d.]+/g);
98
- if (a && a.length >= 3) return `rgba(${a[0]},${a[1]},${a[2]},${x})`;
97
+ const e = t.match(/[\d.]+/g);
98
+ if (e && e.length >= 3) return `rgba(${e[0]},${e[1]},${e[2]},${v})`;
99
99
  }
100
100
  return t;
101
101
  }
102
102
  function nt(t) {
103
- const x = R(() => {
104
- const f = Yt[t.tema], e = f ? { ...f, bg: t.corFundo || f.bg } : { bg: t.corFundo || t.tema, text: "#F8FAFC", muted: "#7b7b7b", grid: "rgba(255,255,255,0.08)" };
103
+ const v = w(() => {
104
+ const g = Jt[t.tema], o = g ? { ...g, bg: t.corFundo || g.bg } : { bg: t.corFundo || t.tema, text: "#F8FAFC", muted: "#7b7b7b", grid: "rgba(255,255,255,0.08)" };
105
105
  return {
106
- ...e,
107
- text: t.corTexto || e.text,
108
- muted: t.corTexto || e.muted
106
+ ...o,
107
+ text: t.corTexto || o.text,
108
+ muted: t.corTexto || o.muted
109
109
  };
110
- }), a = R(() => ({
111
- background: x.value.bg,
112
- color: x.value.text,
110
+ }), e = w(() => ({
111
+ background: v.value.bg,
112
+ color: v.value.text,
113
113
  borderRadius: typeof t.borderRadius == "number" ? `${t.borderRadius}px` : t.borderRadius,
114
114
  boxShadow: t.sombra,
115
115
  border: t.corBorda ? `1px solid ${t.corBorda}` : "none"
116
116
  }));
117
- return { palette: x, cardStyle: a, toRgba: M };
117
+ return { palette: v, cardStyle: e, toRgba: D };
118
118
  }
119
119
  function ut(t) {
120
- const x = R(() => t.tipoValor === "moeda" ? new Intl.NumberFormat(t.locale, { style: "currency", currency: t.moeda }) : t.tipoValor === "percentual" ? new Intl.NumberFormat(t.locale, { style: "percent", maximumFractionDigits: 2 }) : new Intl.NumberFormat(t.locale, { maximumFractionDigits: 2 }));
121
- function a(f) {
122
- if (f == null) return "";
123
- const e = Number(f);
124
- return Number.isNaN(e) ? String(f) : t.tipoValor === "percentual" ? x.value.format(e / 100) : x.value.format(e);
120
+ const v = w(() => t.tipoValor === "moeda" ? new Intl.NumberFormat(t.locale, { style: "currency", currency: t.moeda }) : t.tipoValor === "percentual" ? new Intl.NumberFormat(t.locale, { style: "percent", maximumFractionDigits: 2 }) : new Intl.NumberFormat(t.locale, { maximumFractionDigits: 2 }));
121
+ function e(g) {
122
+ if (g == null) return "";
123
+ const o = Number(g);
124
+ return Number.isNaN(o) ? String(g) : t.tipoValor === "percentual" ? v.value.format(o / 100) : v.value.format(o);
125
125
  }
126
- return { formatador: x, formatar: a };
126
+ return { formatador: v, formatar: e };
127
127
  }
128
- function gt(t, { caretFlexivel: x = !1 } = {}) {
129
- let a = t.querySelector(".nc-tt");
130
- if (a) return a;
131
- a = document.createElement("div"), a.className = "nc-tt", Object.assign(a.style, {
128
+ function gt(t, { caretFlexivel: v = !1 } = {}) {
129
+ let e = t.querySelector(".nc-tt");
130
+ if (e) return e;
131
+ e = document.createElement("div"), e.className = "nc-tt", Object.assign(e.style, {
132
132
  position: "absolute",
133
133
  pointerEvents: "none",
134
- transform: x ? "translateX(-50%)" : "translate(-50%, calc(-100% - 16px))",
134
+ transform: v ? "translateX(-50%)" : "translate(-50%, calc(-100% - 16px))",
135
135
  transition: "opacity .18s ease, left .12s ease, top .12s ease",
136
136
  opacity: "0",
137
137
  background: "#ffffff",
@@ -145,9 +145,9 @@ function gt(t, { caretFlexivel: x = !1 } = {}) {
145
145
  fontFamily: "inherit",
146
146
  textAlign: "left"
147
147
  });
148
- const f = document.createElement("div");
149
- f.className = "nc-tt__caret";
150
- const e = {
148
+ const g = document.createElement("div");
149
+ g.className = "nc-tt__caret";
150
+ const o = {
151
151
  position: "absolute",
152
152
  left: "50%",
153
153
  width: "10px",
@@ -156,93 +156,93 @@ function gt(t, { caretFlexivel: x = !1 } = {}) {
156
156
  transform: "translateX(-50%) rotate(45deg)",
157
157
  borderRadius: "2px"
158
158
  };
159
- x ? Object.assign(f.style, e) : Object.assign(f.style, e, {
159
+ v ? Object.assign(g.style, o) : Object.assign(g.style, o, {
160
160
  bottom: "-5px",
161
161
  borderRight: "1px solid rgba(15,23,42,.06)",
162
162
  borderBottom: "1px solid rgba(15,23,42,.06)"
163
- }), a.appendChild(f);
164
- const w = document.createElement("div");
165
- return w.className = "nc-tt__content", Object.assign(w.style, { position: "relative", background: "#fff", borderRadius: "8px" }), a.appendChild(w), t.appendChild(a), a;
163
+ }), e.appendChild(g);
164
+ const R = document.createElement("div");
165
+ return R.className = "nc-tt__content", Object.assign(R.style, { position: "relative", background: "#fff", borderRadius: "8px" }), e.appendChild(R), t.appendChild(e), e;
166
166
  }
167
- function at(t) {
168
- const x = t.canvas.parentNode;
169
- return x ? (getComputedStyle(x).position === "static" && (x.style.position = "relative"), x) : null;
167
+ function ot(t) {
168
+ const v = t.canvas.parentNode;
169
+ return v ? (getComputedStyle(v).position === "static" && (v.style.position = "relative"), v) : null;
170
170
  }
171
- function ot(t, x, a, f = 4) {
172
- const e = x / 2;
173
- return t - e < f ? e + f : t + e > a - f ? a - e - f : t;
171
+ function at(t, v, e, g = 4) {
172
+ const o = v / 2;
173
+ return t - o < g ? o + g : t + o > e - g ? e - o - g : t;
174
174
  }
175
- function St(t, x) {
176
- const a = window.getComputedStyle(t);
177
- let f = "";
178
- for (let e = 0; e < a.length; e++) {
179
- const w = a[e];
180
- let $ = a.getPropertyValue(w);
181
- if ($ && $.indexOf("url(") !== -1 && !/url\(["']?data:/.test($))
182
- if (w === "background-image" || w === "background" || w === "mask-image" || w === "border-image" || w === "border-image-source")
183
- $ = "none";
175
+ function St(t, v) {
176
+ const e = window.getComputedStyle(t);
177
+ let g = "";
178
+ for (let o = 0; o < e.length; o++) {
179
+ const R = e[o];
180
+ let S = e.getPropertyValue(R);
181
+ if (S && S.indexOf("url(") !== -1 && !/url\(["']?data:/.test(S))
182
+ if (R === "background-image" || R === "background" || R === "mask-image" || R === "border-image" || R === "border-image-source")
183
+ S = "none";
184
184
  else
185
185
  continue;
186
- f += `${w}:${$};`;
186
+ g += `${R}:${S};`;
187
187
  }
188
- x.setAttribute("style", f);
188
+ v.setAttribute("style", g);
189
189
  }
190
- function Jt(t, x) {
191
- St(t, x);
192
- const a = t.querySelectorAll("*"), f = x.querySelectorAll("*");
193
- for (let e = 0; e < a.length; e++)
194
- f[e] && St(a[e], f[e]);
190
+ function Qt(t, v) {
191
+ St(t, v);
192
+ const e = t.querySelectorAll("*"), g = v.querySelectorAll("*");
193
+ for (let o = 0; o < e.length; o++)
194
+ g[o] && St(e[o], g[o]);
195
195
  }
196
- function Qt(t, x) {
197
- const a = t.querySelectorAll("canvas"), f = x.querySelectorAll("canvas");
198
- a.forEach((e, w) => {
199
- if (!f[w]) return;
200
- const $ = document.createElement("img");
196
+ function Ut(t, v) {
197
+ const e = t.querySelectorAll("canvas"), g = v.querySelectorAll("canvas");
198
+ e.forEach((o, R) => {
199
+ if (!g[R]) return;
200
+ const S = document.createElement("img");
201
201
  try {
202
- $.src = e.toDataURL("image/png");
202
+ S.src = o.toDataURL("image/png");
203
203
  } catch {
204
204
  return;
205
205
  }
206
- const z = e.getBoundingClientRect();
207
- $.setAttribute("style", `width:${z.width}px;height:${z.height}px;display:block;`), f[w].replaceWith($);
206
+ const j = o.getBoundingClientRect();
207
+ S.setAttribute("style", `width:${j.width}px;height:${j.height}px;display:block;`), g[R].replaceWith(S);
208
208
  });
209
209
  }
210
- async function st(t, x = {}) {
210
+ async function st(t, v = {}) {
211
211
  if (!t) return;
212
212
  const {
213
- nomeArquivo: a = "componente.png",
214
- escala: f = 2,
215
- corFundo: e = null
216
- } = x, w = t.getBoundingClientRect(), $ = Math.ceil(w.width), z = Math.ceil(w.height), J = t.cloneNode(!0);
217
- Jt(t, J), Qt(t, J), J.style.margin = "0", J.style.transform = "none";
218
- const G = new XMLSerializer().serializeToString(J), F = `<svg xmlns="http://www.w3.org/2000/svg" width="${$}" height="${z}"><foreignObject width="100%" height="100%"><div xmlns="http://www.w3.org/1999/xhtml" style="width:${$}px;height:${z}px;">` + G + "</div></foreignObject></svg>", I = "data:image/svg+xml;base64," + (typeof window < "u" && window.btoa ? window.btoa(unescape(encodeURIComponent(F))) : ""), W = new Image();
219
- await new Promise((L, X) => {
220
- W.onload = L, W.onerror = X, W.src = I;
213
+ nomeArquivo: e = "componente.png",
214
+ escala: g = 2,
215
+ corFundo: o = null
216
+ } = v, R = t.getBoundingClientRect(), S = Math.ceil(R.width), j = Math.ceil(R.height), Q = t.cloneNode(!0);
217
+ Qt(t, Q), Ut(t, Q), Q.style.margin = "0", Q.style.transform = "none";
218
+ const Z = new XMLSerializer().serializeToString(Q), T = `<svg xmlns="http://www.w3.org/2000/svg" width="${S}" height="${j}"><foreignObject width="100%" height="100%"><div xmlns="http://www.w3.org/1999/xhtml" style="width:${S}px;height:${j}px;">` + Z + "</div></foreignObject></svg>", X = "data:image/svg+xml;base64," + (typeof window < "u" && window.btoa ? window.btoa(unescape(encodeURIComponent(T))) : ""), I = new Image();
219
+ await new Promise((H, Y) => {
220
+ I.onload = H, I.onerror = Y, I.src = X;
221
221
  });
222
222
  const K = document.createElement("canvas");
223
- K.width = $ * f, K.height = z * f;
224
- const Z = K.getContext("2d");
225
- Z.scale(f, f), e && (Z.fillStyle = e, Z.fillRect(0, 0, $, z)), Z.drawImage(W, 0, 0);
226
- let d;
223
+ K.width = S * g, K.height = j * g;
224
+ const _ = K.getContext("2d");
225
+ _.scale(g, g), o && (_.fillStyle = o, _.fillRect(0, 0, S, j)), _.drawImage(I, 0, 0);
226
+ let u;
227
227
  try {
228
- d = K.toDataURL("image/png");
229
- } catch (L) {
230
- console.error("Falha ao exportar imagem: canvas contaminado.", L);
228
+ u = K.toDataURL("image/png");
229
+ } catch (H) {
230
+ console.error("Falha ao exportar imagem: canvas contaminado.", H);
231
231
  return;
232
232
  }
233
- const E = document.createElement("a");
234
- E.download = a, E.href = d, document.body.appendChild(E), E.click(), document.body.removeChild(E);
233
+ const F = document.createElement("a");
234
+ F.download = e, F.href = u, document.body.appendChild(F), F.click(), document.body.removeChild(F);
235
235
  }
236
- const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></svg>', Ut = { class: "card-linhas__header flex flex-column" }, Gt = { class: "card-linhas__topo flex align-items-start justify-content-between gap-3" }, Zt = {
236
+ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></svg>', Gt = { class: "card-linhas__header flex flex-column" }, Zt = { class: "card-linhas__topo flex align-items-start justify-content-between gap-3" }, Kt = {
237
237
  key: 0,
238
- class: "card-linhas__legendas flex flex-column"
239
- }, Kt = {
238
+ class: "nc-legendas-flex flex flex-column"
239
+ }, _t = {
240
240
  key: 1,
241
- class: "card-linhas__actions inline-flex align-items-center gap-2"
241
+ class: "nc-actions inline-flex align-items-center gap-2"
242
242
  }, te = ["innerHTML"], ee = {
243
243
  key: 0,
244
244
  class: "card-linhas__titulos mt-3 mb-2 flex flex-column"
245
- }, ae = { class: "card-linhas__chart flex-1" }, oe = {
245
+ }, oe = { class: "card-linhas__chart flex-1" }, ae = {
246
246
  key: 0,
247
247
  class: "card-linhas__footer mt-3"
248
248
  }, re = {
@@ -296,76 +296,76 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
296
296
  nomeArquivoExport: { type: String, default: "card-linhas.png" }
297
297
  },
298
298
  emits: ["botaoAcao", "exportado"],
299
- setup(t, { emit: x }) {
300
- const a = t, f = x, { palette: e, cardStyle: w } = nt(a), { formatar: $ } = ut(a), z = tt(null), J = it;
301
- async function G() {
302
- await st(z.value, {
303
- nomeArquivo: a.nomeArquivoExport,
304
- corFundo: e.value.bg !== "transparent" ? e.value.bg : null
305
- }), f("exportado");
299
+ setup(t, { emit: v }) {
300
+ const e = t, g = v, { palette: o, cardStyle: R } = nt(e), { formatar: S } = ut(e), j = tt(null), Q = it;
301
+ async function Z() {
302
+ await st(j.value, {
303
+ nomeArquivo: e.nomeArquivoExport,
304
+ corFundo: o.value.bg !== "transparent" ? o.value.bg : null
305
+ }), g("exportado");
306
306
  }
307
- const F = R(() => `card-linhas--${a.direcao}`), D = R(() => a.linhasReferencia ? (Array.isArray(a.linhasReferencia) ? a.linhasReferencia : [a.linhasReferencia]).filter((h) => h && (typeof h == "number" || typeof h.valor == "number")).map((h) => typeof h == "number" ? { valor: h, rotulo: null, cor: "#0F172A", corRotulo: "#0F172A", corTexto: "#FFFFFF", tracejado: [6, 6], espessura: 1 } : {
308
- valor: h.valor,
309
- rotulo: h.rotulo ?? null,
310
- cor: h.cor || "#0F172A",
311
- corRotulo: h.corRotulo || h.cor || "#0F172A",
312
- corTexto: h.corTexto || "#FFFFFF",
313
- tracejado: h.tracejado || [6, 6],
314
- espessura: h.espessura ?? 1
315
- }) : []), I = [];
316
- let W = null;
307
+ const T = w(() => `card-linhas--${e.direcao}`), E = w(() => e.linhasReferencia ? (Array.isArray(e.linhasReferencia) ? e.linhasReferencia : [e.linhasReferencia]).filter((i) => i && (typeof i == "number" || typeof i.valor == "number")).map((i) => typeof i == "number" ? { valor: i, rotulo: null, cor: "#0F172A", corRotulo: "#0F172A", corTexto: "#FFFFFF", tracejado: [6, 6], espessura: 1 } : {
308
+ valor: i.valor,
309
+ rotulo: i.rotulo ?? null,
310
+ cor: i.cor || "#0F172A",
311
+ corRotulo: i.corRotulo || i.cor || "#0F172A",
312
+ corTexto: i.corTexto || "#FFFFFF",
313
+ tracejado: i.tracejado || [6, 6],
314
+ espessura: i.espessura ?? 1
315
+ }) : []), X = [];
316
+ let I = null;
317
317
  const K = {
318
318
  id: "linhaReferencia",
319
- afterDatasetsDraw(o) {
320
- const h = D.value;
321
- if (I.length = 0, !h.length) return;
322
- const { ctx: c, chartArea: C, scales: r } = o, p = r.y;
323
- p && h.forEach((n) => {
324
- const g = p.getPixelForValue(n.valor);
325
- if (I.push({ linha: n, pos: g, chartArea: C }), c.save(), c.beginPath(), c.setLineDash(n.tracejado), c.lineWidth = n.espessura, c.strokeStyle = n.cor, g < C.top || g > C.bottom) {
319
+ afterDatasetsDraw(d) {
320
+ const i = E.value;
321
+ if (X.length = 0, !i.length) return;
322
+ const { ctx: c, chartArea: h, scales: a } = d, m = a.y;
323
+ m && i.forEach((l) => {
324
+ const p = m.getPixelForValue(l.valor);
325
+ if (X.push({ linha: l, pos: p, chartArea: h }), c.save(), c.beginPath(), c.setLineDash(l.tracejado), c.lineWidth = l.espessura, c.strokeStyle = l.cor, p < h.top || p > h.bottom) {
326
326
  c.restore();
327
327
  return;
328
328
  }
329
- if (c.moveTo(C.left, g), c.lineTo(C.right, g), c.stroke(), c.setLineDash([]), n.rotulo) {
329
+ if (c.moveTo(h.left, p), c.lineTo(h.right, p), c.stroke(), c.setLineDash([]), l.rotulo) {
330
330
  c.font = "600 11px 'Inter', sans-serif";
331
- const m = 8, j = 5, B = c.measureText(n.rotulo).width, S = 12, V = B + m * 2, Y = S + j * 2, O = Y / 2;
332
- let q = C.left - V - 6, H = g - Y / 2;
333
- q < 0 && (q = C.left + 6), c.fillStyle = n.corRotulo, c.beginPath(), c.roundRect ? c.roundRect(q, H, V, Y, O) : (c.moveTo(q + O, H), c.lineTo(q + V - O, H), c.quadraticCurveTo(q + V, H, q + V, H + O), c.lineTo(q + V, H + Y - O), c.quadraticCurveTo(q + V, H + Y, q + V - O, H + Y), c.lineTo(q + O, H + Y), c.quadraticCurveTo(q, H + Y, q, H + Y - O), c.lineTo(q, H + O), c.quadraticCurveTo(q, H, q + O, H)), c.fill(), c.fillStyle = n.corTexto, c.textBaseline = "middle", c.textAlign = "center", c.fillText(n.rotulo, q + V / 2, H + Y / 2);
331
+ const b = 8, q = 5, A = c.measureText(l.rotulo).width, k = 12, V = A + b * 2, J = k + q * 2, W = J / 2;
332
+ let z = h.left - V - 6, M = p - J / 2;
333
+ z < 0 && (z = h.left + 6), c.fillStyle = l.corRotulo, c.beginPath(), c.roundRect ? c.roundRect(z, M, V, J, W) : (c.moveTo(z + W, M), c.lineTo(z + V - W, M), c.quadraticCurveTo(z + V, M, z + V, M + W), c.lineTo(z + V, M + J - W), c.quadraticCurveTo(z + V, M + J, z + V - W, M + J), c.lineTo(z + W, M + J), c.quadraticCurveTo(z, M + J, z, M + J - W), c.lineTo(z, M + W), c.quadraticCurveTo(z, M, z + W, M)), c.fill(), c.fillStyle = l.corTexto, c.textBaseline = "middle", c.textAlign = "center", c.fillText(l.rotulo, z + V / 2, M + J / 2);
334
334
  }
335
335
  c.restore();
336
336
  });
337
337
  },
338
- beforeEvent(o, h) {
339
- if (!I.length) {
340
- W = null;
338
+ beforeEvent(d, i) {
339
+ if (!X.length) {
340
+ I = null;
341
341
  return;
342
342
  }
343
- const c = h.event;
343
+ const c = i.event;
344
344
  if (!c || c.type === "mouseout" || c.x == null || c.y == null) {
345
- W = null;
345
+ I = null;
346
346
  return;
347
347
  }
348
- const C = 8;
349
- let r = null, p = 1 / 0;
350
- for (const n of I) {
351
- const g = Math.abs(c.y - n.pos), m = c.x >= n.chartArea.left && c.x <= n.chartArea.right;
352
- g <= C && m && g < p && (p = g, r = n);
348
+ const h = 8;
349
+ let a = null, m = 1 / 0;
350
+ for (const l of X) {
351
+ const p = Math.abs(c.y - l.pos), b = c.x >= l.chartArea.left && c.x <= l.chartArea.right;
352
+ p <= h && b && p < m && (m = p, a = l);
353
353
  }
354
- W = r;
354
+ I = a;
355
355
  },
356
- afterEvent(o, h) {
357
- if (!I.length) return;
358
- const c = h.event;
356
+ afterEvent(d, i) {
357
+ if (!X.length) return;
358
+ const c = i.event;
359
359
  if (!c) return;
360
- const C = at(o);
361
- if (!C) return;
362
- let r = C.querySelector(".nc-tt-linhaRef");
363
- if (!W) {
364
- r && (r.style.opacity = "0");
360
+ const h = ot(d);
361
+ if (!h) return;
362
+ let a = h.querySelector(".nc-tt-linhaRef");
363
+ if (!I) {
364
+ a && (a.style.opacity = "0");
365
365
  return;
366
366
  }
367
- const p = W;
368
- r || (r = document.createElement("div"), r.className = "nc-tt-linhaRef", Object.assign(r.style, {
367
+ const m = I;
368
+ a || (a = document.createElement("div"), a.className = "nc-tt-linhaRef", Object.assign(a.style, {
369
369
  position: "absolute",
370
370
  pointerEvents: "none",
371
371
  transform: "translate(-50%, calc(-100% - 12px))",
@@ -380,95 +380,95 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
380
380
  zIndex: "11",
381
381
  fontFamily: "'Inter', sans-serif",
382
382
  textAlign: "left"
383
- }), C.appendChild(r));
384
- const n = p.linha.cor || "#0F172A", g = $(p.linha.valor), m = p.linha.rotulo;
385
- r.innerHTML = (m ? `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${m}</div>` : "") + `<div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${n};box-shadow:0 0 0 2px ${M(n, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${g}</span></div>`;
386
- const j = o.canvas;
387
- r.style.opacity = "1", r.style.visibility = "hidden", r.style.left = "0px", r.style.top = "0px";
388
- const k = r.offsetWidth, B = r.offsetHeight, S = 4, V = j.offsetLeft + c.x, Y = j.offsetTop + p.pos, O = ot(V, k, C.clientWidth, S);
389
- let q = Y;
390
- const H = B + 16 + S;
391
- q < H && (q = H), r.style.left = O + "px", r.style.top = q + "px", r.style.visibility = "visible";
383
+ }), h.appendChild(a));
384
+ const l = m.linha.cor || "#0F172A", p = S(m.linha.valor), b = m.linha.rotulo;
385
+ a.innerHTML = (b ? `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${b}</div>` : "") + `<div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${l};box-shadow:0 0 0 2px ${D(l, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${p}</span></div>`;
386
+ const q = d.canvas;
387
+ a.style.opacity = "1", a.style.visibility = "hidden", a.style.left = "0px", a.style.top = "0px";
388
+ const B = a.offsetWidth, A = a.offsetHeight, k = 4, V = q.offsetLeft + c.x, J = q.offsetTop + m.pos, W = at(V, B, h.clientWidth, k);
389
+ let z = J;
390
+ const M = A + 16 + k;
391
+ z < M && (z = M), a.style.left = W + "px", a.style.top = z + "px", a.style.visibility = "visible";
392
392
  }
393
- }, Z = R(() => D.value.length ? [K] : []), d = R(() => ({
394
- labels: a.data.map((o) => o.rotulo),
393
+ }, _ = w(() => E.value.length ? [K] : []), u = w(() => ({
394
+ labels: e.data.map((d) => d.rotulo),
395
395
  datasets: [
396
396
  {
397
- data: a.data.map((o) => o.quantidade),
398
- borderColor: a.corDetalhes,
397
+ data: e.data.map((d) => d.quantidade),
398
+ borderColor: e.corDetalhes,
399
399
  borderWidth: 3,
400
400
  borderJoinStyle: "round",
401
401
  borderCapStyle: "round",
402
- backgroundColor: (o) => {
403
- const { chart: h } = o, { ctx: c, chartArea: C } = h;
404
- if (!C) return "transparent";
405
- const r = a.corDetalhes || "#0400FF", p = "#7C7C7C", n = c.createLinearGradient(0, C.top, 0, C.bottom);
406
- return n.addColorStop(0.16, M(r, 0.2)), n.addColorStop(1, M(p, 0)), n;
402
+ backgroundColor: (d) => {
403
+ const { chart: i } = d, { ctx: c, chartArea: h } = i;
404
+ if (!h) return "transparent";
405
+ const a = e.corDetalhes || "#0400FF", m = "#7C7C7C", l = c.createLinearGradient(0, h.top, 0, h.bottom);
406
+ return l.addColorStop(0.16, D(a, 0.2)), l.addColorStop(1, D(m, 0)), l;
407
407
  },
408
408
  fill: !0,
409
409
  tension: 0.45,
410
410
  pointRadius: 0,
411
411
  pointHoverRadius: 6,
412
412
  pointHoverBorderWidth: 3,
413
- pointHoverBackgroundColor: a.corDetalhes,
414
- pointHoverBorderColor: e.value.bg === "transparent" ? "#fff" : e.value.bg,
413
+ pointHoverBackgroundColor: e.corDetalhes,
414
+ pointHoverBorderColor: o.value.bg === "transparent" ? "#fff" : o.value.bg,
415
415
  clip: !1
416
416
  }
417
417
  ]
418
418
  }));
419
- function E(o) {
420
- const { chart: h, tooltip: c } = o, C = at(h);
421
- if (!C) return;
422
- const r = gt(C);
423
- if (c.opacity === 0 || W) {
424
- r.style.opacity = "0";
419
+ function F(d) {
420
+ const { chart: i, tooltip: c } = d, h = ot(i);
421
+ if (!h) return;
422
+ const a = gt(h);
423
+ if (c.opacity === 0 || I) {
424
+ a.style.opacity = "0";
425
425
  return;
426
426
  }
427
- const p = c.title || [], n = (c.body || []).flatMap((N) => N.lines), g = r.querySelector(".nc-tt__content"), m = a.corDetalhes || "#3B82F6";
428
- g.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${p.join(" ")}</div><div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${m};box-shadow:0 0 0 2px ${M(m, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${n.join(" ")}</span></div>`;
429
- const { offsetLeft: j, offsetTop: k } = h.canvas;
430
- r.style.opacity = "1", r.style.visibility = "hidden", r.style.left = "0px", r.style.top = "0px";
431
- const B = r.offsetWidth, S = r.offsetHeight, V = 4, Y = j + c.caretX, O = k + c.caretY, q = ot(Y, B, C.clientWidth, V), H = S + 16 + V, Q = O < H;
432
- let U;
433
- Q ? (r.style.transform = "translateX(-50%) translateY(16px)", U = O) : (r.style.transform = "translate(-50%, calc(-100% - 16px))", U = O), r.style.left = q + "px", r.style.top = U + "px";
434
- const T = r.querySelector(".nc-tt__caret");
435
- if (T) {
436
- const N = Y - q, P = B / 2, ft = Math.max(-P + 8, Math.min(P - 8, N));
437
- T.style.left = `calc(50% + ${ft}px)`, Q ? (T.style.bottom = "", T.style.top = "-5px", T.style.borderRight = "", T.style.borderBottom = "", T.style.borderLeft = "1px solid rgba(15,23,42,.06)", T.style.borderTop = "1px solid rgba(15,23,42,.06)") : (T.style.top = "", T.style.bottom = "-5px", T.style.borderLeft = "", T.style.borderTop = "", T.style.borderRight = "1px solid rgba(15,23,42,.06)", T.style.borderBottom = "1px solid rgba(15,23,42,.06)");
427
+ const m = c.title || [], l = (c.body || []).flatMap((N) => N.lines), p = a.querySelector(".nc-tt__content"), b = e.corDetalhes || "#3B82F6";
428
+ p.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${m.join(" ")}</div><div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${b};box-shadow:0 0 0 2px ${D(b, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${l.join(" ")}</span></div>`;
429
+ const { offsetLeft: q, offsetTop: B } = i.canvas;
430
+ a.style.opacity = "1", a.style.visibility = "hidden", a.style.left = "0px", a.style.top = "0px";
431
+ const A = a.offsetWidth, k = a.offsetHeight, V = 4, J = q + c.caretX, W = B + c.caretY, z = at(J, A, h.clientWidth, V), M = k + 16 + V, U = W < M;
432
+ let G;
433
+ U ? (a.style.transform = "translateX(-50%) translateY(16px)", G = W) : (a.style.transform = "translate(-50%, calc(-100% - 16px))", G = W), a.style.left = z + "px", a.style.top = G + "px";
434
+ const L = a.querySelector(".nc-tt__caret");
435
+ if (L) {
436
+ const N = J - z, P = A / 2, ft = Math.max(-P + 8, Math.min(P - 8, N));
437
+ L.style.left = `calc(50% + ${ft}px)`, U ? (L.style.bottom = "", L.style.top = "-5px", L.style.borderRight = "", L.style.borderBottom = "", L.style.borderLeft = "1px solid rgba(15,23,42,.06)", L.style.borderTop = "1px solid rgba(15,23,42,.06)") : (L.style.top = "", L.style.bottom = "-5px", L.style.borderLeft = "", L.style.borderTop = "", L.style.borderRight = "1px solid rgba(15,23,42,.06)", L.style.borderBottom = "1px solid rgba(15,23,42,.06)");
438
438
  }
439
- r.style.visibility = "visible";
439
+ a.style.visibility = "visible";
440
440
  }
441
- const L = R(() => ({
441
+ const H = w(() => ({
442
442
  responsive: !0,
443
443
  maintainAspectRatio: !1,
444
444
  interaction: { intersect: !1, mode: "index" },
445
445
  layout: {
446
- padding: { top: D.value.length ? 24 : 0, right: 0, bottom: 0, left: 0 }
446
+ padding: { top: E.value.length ? 24 : 0, right: 0, bottom: 0, left: 0 }
447
447
  },
448
448
  plugins: {
449
449
  legend: { display: !1 },
450
450
  tooltip: {
451
451
  enabled: !1,
452
- external: E,
452
+ external: F,
453
453
  callbacks: {
454
- title: (o) => {
455
- var h;
456
- return ((h = o[0]) == null ? void 0 : h.label) ?? "";
454
+ title: (d) => {
455
+ var i;
456
+ return ((i = d[0]) == null ? void 0 : i.label) ?? "";
457
457
  },
458
- label: (o) => $(o.parsed.y)
458
+ label: (d) => S(d.parsed.y)
459
459
  }
460
460
  }
461
461
  },
462
462
  scales: {
463
463
  x: {
464
464
  display: !0,
465
- afterFit: (o) => {
466
- o.paddingLeft = 0, o.paddingRight = 0;
465
+ afterFit: (d) => {
466
+ d.paddingLeft = 0, d.paddingRight = 0;
467
467
  },
468
468
  grid: { display: !1, drawBorder: !1 },
469
469
  border: { display: !1 },
470
470
  ticks: {
471
- color: e.value.muted,
471
+ color: o.value.muted,
472
472
  font: { size: 10, family: "'Inter', sans-serif" },
473
473
  padding: 8,
474
474
  align: "inner"
@@ -477,108 +477,109 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
477
477
  y: {
478
478
  display: !1,
479
479
  grid: { display: !1 },
480
- beginAtZero: !0
480
+ beginAtZero: !0,
481
+ suggestedMax: E.value.length ? Math.max(...E.value.map((d) => d.valor)) : void 0
481
482
  }
482
483
  }
483
484
  }));
484
- function X() {
485
- f("botaoAcao");
485
+ function Y() {
486
+ g("botaoAcao");
486
487
  }
487
- return (o, h) => (s(), i("div", {
488
+ return (d, i) => (n(), s("div", {
488
489
  ref_key: "cardRef",
489
- ref: z,
490
- class: rt(["card-linhas p-4 flex", F.value]),
491
- style: y(l(w))
490
+ ref: j,
491
+ class: rt(["card-linhas p-4 flex", T.value]),
492
+ style: y(r(R))
492
493
  }, [
493
- b("div", Ut, [
494
- b("div", Gt, [
495
- o.$slots.legenda || t.legenda || o.$slots.sublegenda || t.sublegenda ? (s(), i("div", Zt, [
496
- o.$slots.legenda || t.legenda ? (s(), i("div", {
494
+ x("div", Gt, [
495
+ x("div", Zt, [
496
+ d.$slots.legenda || t.legenda || d.$slots.sublegenda || t.sublegenda ? (n(), s("div", Kt, [
497
+ d.$slots.legenda || t.legenda ? (n(), s("div", {
497
498
  key: 0,
498
499
  class: "text-xs font-medium",
499
- style: y({ color: l(e).text, opacity: 0.85 })
500
+ style: y({ color: r(o).text, opacity: 0.85 })
500
501
  }, [
501
- A(o.$slots, "legenda", {}, () => [
502
- _(v(t.legenda), 1)
502
+ C(d.$slots, "legenda", {}, () => [
503
+ O($(t.legenda), 1)
503
504
  ], !0)
504
- ], 4)) : u("", !0),
505
- o.$slots.sublegenda || t.sublegenda ? (s(), i("div", {
505
+ ], 4)) : f("", !0),
506
+ d.$slots.sublegenda || t.sublegenda ? (n(), s("div", {
506
507
  key: 1,
507
508
  class: "text-xs",
508
- style: y({ color: l(e).muted })
509
+ style: y({ color: r(o).muted })
509
510
  }, [
510
- A(o.$slots, "sublegenda", {}, () => [
511
- _(v(t.sublegenda), 1)
511
+ C(d.$slots, "sublegenda", {}, () => [
512
+ O($(t.sublegenda), 1)
512
513
  ], !0)
513
- ], 4)) : u("", !0)
514
- ])) : u("", !0),
515
- o.$slots.actions || t.botaoVisivel || t.exportar ? (s(), i("div", Kt, [
516
- A(o.$slots, "actions", {}, () => [
517
- t.botaoVisivel ? (s(), i("button", {
514
+ ], 4)) : f("", !0)
515
+ ])) : f("", !0),
516
+ d.$slots.actions || t.botaoVisivel || t.exportar ? (n(), s("div", _t, [
517
+ C(d.$slots, "actions", {}, () => [
518
+ t.botaoVisivel ? (n(), s("button", {
518
519
  key: 0,
519
- class: "card-linhas__btn inline-flex align-items-center",
520
- style: y({ color: l(e).text, borderColor: l(M)(l(e).text, 0.18) }),
521
- onClick: X
520
+ class: "nc-btn inline-flex align-items-center",
521
+ style: y({ color: r(o).text, borderColor: r(D)(r(o).text, 0.18) }),
522
+ onClick: Y
522
523
  }, [
523
- b("span", null, v(t.textoBotao), 1)
524
- ], 4)) : u("", !0)
524
+ x("span", null, $(t.textoBotao), 1)
525
+ ], 4)) : f("", !0)
525
526
  ], !0),
526
- t.exportar ? (s(), i("button", {
527
+ t.exportar ? (n(), s("button", {
527
528
  key: 0,
528
529
  type: "button",
529
- class: "card-linhas__exportar inline-flex align-items-center justify-content-center",
530
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).text, 0.18) }),
530
+ class: "nc-exportar inline-flex align-items-center justify-content-center",
531
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).text, 0.18) }),
531
532
  title: "Exportar como imagem",
532
533
  "aria-label": "Exportar como imagem",
533
- onClick: G,
534
- innerHTML: l(J)
535
- }, null, 12, te)) : u("", !0)
536
- ])) : u("", !0)
534
+ onClick: Z,
535
+ innerHTML: r(Q)
536
+ }, null, 12, te)) : f("", !0)
537
+ ])) : f("", !0)
537
538
  ]),
538
- o.$slots.titulo || t.titulo || o.$slots.descricao || t.descricao ? (s(), i("div", ee, [
539
- o.$slots.titulo || t.titulo ? (s(), i("div", {
539
+ d.$slots.titulo || t.titulo || d.$slots.descricao || t.descricao ? (n(), s("div", ee, [
540
+ d.$slots.titulo || t.titulo ? (n(), s("div", {
540
541
  key: 0,
541
542
  class: "m-0 text-3xl font-semibold",
542
- style: y({ color: l(e).text, lineHeight: "33px", letterSpacing: "-1px" })
543
+ style: y({ color: r(o).text, lineHeight: "33px", letterSpacing: "-1px" })
543
544
  }, [
544
- A(o.$slots, "titulo", {}, () => [
545
- _(v(t.titulo), 1)
545
+ C(d.$slots, "titulo", {}, () => [
546
+ O($(t.titulo), 1)
546
547
  ], !0)
547
- ], 4)) : u("", !0),
548
- o.$slots.descricao || t.descricao ? (s(), i("div", {
548
+ ], 4)) : f("", !0),
549
+ d.$slots.descricao || t.descricao ? (n(), s("div", {
549
550
  key: 1,
550
551
  class: "text-sm mt-1",
551
- style: y({ color: l(e).muted })
552
+ style: y({ color: r(o).muted })
552
553
  }, [
553
- A(o.$slots, "descricao", {}, () => [
554
- _(v(t.descricao), 1)
554
+ C(d.$slots, "descricao", {}, () => [
555
+ O($(t.descricao), 1)
555
556
  ], !0)
556
- ], 4)) : u("", !0)
557
- ])) : u("", !0)
557
+ ], 4)) : f("", !0)
558
+ ])) : f("", !0)
558
559
  ]),
559
- b("div", ae, [
560
+ x("div", oe, [
560
561
  dt(lt, {
561
562
  type: "line",
562
- data: d.value,
563
- options: L.value,
564
- plugins: Z.value,
563
+ data: u.value,
564
+ options: H.value,
565
+ plugins: _.value,
565
566
  height: t.height
566
567
  }, null, 8, ["data", "options", "plugins", "height"])
567
568
  ]),
568
- o.$slots.footer ? (s(), i("div", oe, [
569
- A(o.$slots, "footer", {}, void 0, !0)
570
- ])) : u("", !0)
569
+ d.$slots.footer ? (n(), s("div", ae, [
570
+ C(d.$slots, "footer", {}, void 0, !0)
571
+ ])) : f("", !0)
571
572
  ], 6));
572
573
  }
573
- }, le = /* @__PURE__ */ et(re, [["__scopeId", "data-v-e8a0d601"]]), ne = { class: "card-pizza__topo flex align-items-start justify-content-between gap-3" }, se = {
574
+ }, le = /* @__PURE__ */ et(re, [["__scopeId", "data-v-223eed61"]]), ne = { class: "card-pizza__topo flex align-items-start justify-content-between gap-3" }, se = {
574
575
  key: 0,
575
- class: "card-pizza__legendas flex flex-column"
576
+ class: "nc-legendas-flex flex flex-column"
576
577
  }, ie = {
577
578
  key: 1,
578
- class: "card-pizza__actions inline-flex align-items-center gap-2"
579
- }, ce = ["innerHTML"], de = { class: "card-pizza__corpo flex align-items-center gap-4" }, ue = { class: "card-pizza__tabela flex flex-column" }, fe = { class: "card-pizza__tabela-valor" }, pe = { class: "card-pizza__tabela-rotulo inline-flex align-items-center gap-2" }, ge = { class: "card-pizza__tabela-valor" }, ye = { class: "card-pizza__chart-wrap flex align-items-center justify-content-center" }, me = { class: "card-pizza__chart" }, be = {
579
+ class: "nc-actions inline-flex align-items-center gap-2"
580
+ }, ce = ["innerHTML"], de = { class: "card-pizza__corpo flex align-items-center gap-4" }, ue = { class: "nc-tabela flex flex-column" }, fe = { class: "nc-tabela-valor" }, pe = { class: "nc-tabela-rotulo inline-flex align-items-center gap-2" }, ge = { class: "nc-tabela-valor" }, ye = { class: "card-pizza__chart-wrap flex align-items-center justify-content-center" }, me = { class: "card-pizza__chart" }, be = {
580
581
  key: 0,
581
- class: "card-pizza__centro flex flex-column align-items-center justify-content-center"
582
+ class: "nc-centro flex flex-column align-items-center justify-content-center"
582
583
  }, he = {
583
584
  key: 0,
584
585
  class: "card-pizza__footer mt-3"
@@ -634,22 +635,22 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
634
635
  nomeArquivoExport: { type: String, default: "card-pizza.png" }
635
636
  },
636
637
  emits: ["botaoAcao", "exportado"],
637
- setup(t, { emit: x }) {
638
- const a = t, f = x, { palette: e, cardStyle: w } = nt(a), { formatar: $ } = ut(a), z = tt(null);
639
- async function J() {
640
- await st(z.value, {
641
- nomeArquivo: a.nomeArquivoExport,
642
- corFundo: e.value.bg !== "transparent" ? e.value.bg : null
643
- }), f("exportado");
638
+ setup(t, { emit: v }) {
639
+ const e = t, g = v, { palette: o, cardStyle: R } = nt(e), { formatar: S } = ut(e), j = tt(null);
640
+ async function Q() {
641
+ await st(j.value, {
642
+ nomeArquivo: e.nomeArquivoExport,
643
+ corFundo: o.value.bg !== "transparent" ? o.value.bg : null
644
+ }), g("exportado");
644
645
  }
645
- const G = R(() => `card-pizza--${a.direcao}`), F = R(
646
- () => a.data.map((d, E) => a.cores[E % a.cores.length])
647
- ), D = R(() => ({
648
- labels: a.data.map((d) => d.rotulo),
646
+ const Z = w(() => `card-pizza--${e.direcao}`), T = w(
647
+ () => e.data.map((u, F) => e.cores[F % e.cores.length])
648
+ ), E = w(() => ({
649
+ labels: e.data.map((u) => u.rotulo),
649
650
  datasets: [
650
651
  {
651
- data: a.data.map((d) => d.quantidade),
652
- backgroundColor: F.value,
652
+ data: e.data.map((u) => u.quantidade),
653
+ backgroundColor: T.value,
653
654
  borderWidth: 0,
654
655
  borderColor: "transparent",
655
656
  hoverOffset: 6,
@@ -658,171 +659,171 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
658
659
  }
659
660
  ]
660
661
  }));
661
- function I(d) {
662
- const { chart: E, tooltip: L } = d, X = at(E);
663
- if (!X) return;
664
- const o = gt(X);
665
- if (L.opacity === 0) {
666
- o.style.opacity = "0";
662
+ function X(u) {
663
+ const { chart: F, tooltip: H } = u, Y = ot(F);
664
+ if (!Y) return;
665
+ const d = gt(Y);
666
+ if (H.opacity === 0) {
667
+ d.style.opacity = "0";
667
668
  return;
668
669
  }
669
- const h = L.title || [], c = L.dataPoints && L.dataPoints[0], C = c ? F.value[c.dataIndex] : "#3B82F6", r = c ? $(c.parsed) : "", p = o.querySelector(".nc-tt__content");
670
- p.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${h.join(" ")}</div><div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${C};box-shadow:0 0 0 2px ${M(C, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${r}</span></div>`;
671
- const { offsetLeft: n, offsetTop: g } = E.canvas;
672
- o.style.opacity = "1", o.style.visibility = "hidden", o.style.left = "0px", o.style.top = "0px";
673
- const m = o.offsetWidth, j = o.offsetHeight, k = 4, B = ot(n + L.caretX, m, X.clientWidth, k);
674
- let S = g + L.caretY;
675
- const V = j + 16 + k;
676
- S < V && (S = V), o.style.left = B + "px", o.style.top = S + "px", o.style.visibility = "visible";
670
+ const i = H.title || [], c = H.dataPoints && H.dataPoints[0], h = c ? T.value[c.dataIndex] : "#3B82F6", a = c ? S(c.parsed) : "", m = d.querySelector(".nc-tt__content");
671
+ m.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${i.join(" ")}</div><div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${h};box-shadow:0 0 0 2px ${D(h, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${a}</span></div>`;
672
+ const { offsetLeft: l, offsetTop: p } = F.canvas;
673
+ d.style.opacity = "1", d.style.visibility = "hidden", d.style.left = "0px", d.style.top = "0px";
674
+ const b = d.offsetWidth, q = d.offsetHeight, B = 4, A = at(l + H.caretX, b, Y.clientWidth, B);
675
+ let k = p + H.caretY;
676
+ const V = q + 16 + B;
677
+ k < V && (k = V), d.style.left = A + "px", d.style.top = k + "px", d.style.visibility = "visible";
677
678
  }
678
- const W = R(() => ({
679
+ const I = w(() => ({
679
680
  responsive: !0,
680
681
  maintainAspectRatio: !1,
681
- cutout: a.cutout,
682
+ cutout: e.cutout,
682
683
  layout: { padding: 4 },
683
684
  plugins: {
684
685
  legend: { display: !1 },
685
686
  tooltip: {
686
687
  enabled: !1,
687
- external: I,
688
+ external: X,
688
689
  callbacks: {
689
- title: (d) => {
690
- var E;
691
- return ((E = d[0]) == null ? void 0 : E.label) ?? "";
690
+ title: (u) => {
691
+ var F;
692
+ return ((F = u[0]) == null ? void 0 : F.label) ?? "";
692
693
  },
693
- label: (d) => $(d.parsed)
694
+ label: (u) => S(u.parsed)
694
695
  }
695
696
  }
696
697
  }
697
698
  }));
698
699
  function K() {
699
- f("botaoAcao");
700
+ g("botaoAcao");
700
701
  }
701
- const Z = it;
702
- return (d, E) => (s(), i("div", {
702
+ const _ = it;
703
+ return (u, F) => (n(), s("div", {
703
704
  ref_key: "cardRef",
704
- ref: z,
705
- class: rt(["card-pizza p-4 flex flex-column", G.value]),
706
- style: y(l(w))
705
+ ref: j,
706
+ class: rt(["card-pizza p-4 flex flex-column", Z.value]),
707
+ style: y(r(R))
707
708
  }, [
708
- b("div", ne, [
709
- d.$slots.legenda || t.legenda || d.$slots.sublegenda || t.sublegenda ? (s(), i("div", se, [
710
- d.$slots.legenda || t.legenda ? (s(), i("div", {
709
+ x("div", ne, [
710
+ u.$slots.legenda || t.legenda || u.$slots.sublegenda || t.sublegenda ? (n(), s("div", se, [
711
+ u.$slots.legenda || t.legenda ? (n(), s("div", {
711
712
  key: 0,
712
713
  class: "text-xs font-medium",
713
- style: y({ color: l(e).text, opacity: 0.95 })
714
+ style: y({ color: r(o).text, opacity: 0.95 })
714
715
  }, [
715
- A(d.$slots, "legenda", {}, () => [
716
- _(v(t.legenda), 1)
716
+ C(u.$slots, "legenda", {}, () => [
717
+ O($(t.legenda), 1)
717
718
  ], !0)
718
- ], 4)) : u("", !0),
719
- d.$slots.sublegenda || t.sublegenda ? (s(), i("div", {
719
+ ], 4)) : f("", !0),
720
+ u.$slots.sublegenda || t.sublegenda ? (n(), s("div", {
720
721
  key: 1,
721
722
  class: "text-xs",
722
- style: y({ color: l(e).muted })
723
+ style: y({ color: r(o).muted })
723
724
  }, [
724
- A(d.$slots, "sublegenda", {}, () => [
725
- _(v(t.sublegenda), 1)
725
+ C(u.$slots, "sublegenda", {}, () => [
726
+ O($(t.sublegenda), 1)
726
727
  ], !0)
727
- ], 4)) : u("", !0)
728
- ])) : u("", !0),
729
- d.$slots.actions || t.botaoVisivel || t.exportar ? (s(), i("div", ie, [
730
- A(d.$slots, "actions", {}, () => [
731
- t.botaoVisivel ? (s(), i("button", {
728
+ ], 4)) : f("", !0)
729
+ ])) : f("", !0),
730
+ u.$slots.actions || t.botaoVisivel || t.exportar ? (n(), s("div", ie, [
731
+ C(u.$slots, "actions", {}, () => [
732
+ t.botaoVisivel ? (n(), s("button", {
732
733
  key: 0,
733
- class: "card-pizza__btn inline-flex align-items-center",
734
- style: y({ color: l(e).text, borderColor: l(M)(l(e).text, 0.18) }),
734
+ class: "nc-btn inline-flex align-items-center",
735
+ style: y({ color: r(o).text, borderColor: r(D)(r(o).text, 0.18) }),
735
736
  onClick: K
736
737
  }, [
737
- b("span", null, v(t.textoBotao), 1)
738
- ], 4)) : u("", !0)
738
+ x("span", null, $(t.textoBotao), 1)
739
+ ], 4)) : f("", !0)
739
740
  ], !0),
740
- t.exportar ? (s(), i("button", {
741
+ t.exportar ? (n(), s("button", {
741
742
  key: 0,
742
743
  type: "button",
743
- class: "card-pizza__exportar inline-flex align-items-center justify-content-center",
744
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).text, 0.18) }),
744
+ class: "nc-exportar inline-flex align-items-center justify-content-center",
745
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).text, 0.18) }),
745
746
  title: "Exportar como imagem",
746
747
  "aria-label": "Exportar como imagem",
747
- onClick: J,
748
- innerHTML: l(Z)
749
- }, null, 12, ce)) : u("", !0)
750
- ])) : u("", !0)
748
+ onClick: Q,
749
+ innerHTML: r(_)
750
+ }, null, 12, ce)) : f("", !0)
751
+ ])) : f("", !0)
751
752
  ]),
752
- b("div", de, [
753
- b("div", ue, [
754
- t.mostrarCabecalho ? (s(), i("div", {
753
+ x("div", de, [
754
+ x("div", ue, [
755
+ t.mostrarCabecalho ? (n(), s("div", {
755
756
  key: 0,
756
- class: "card-pizza__tabela-cab flex align-items-center justify-content-between",
757
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).muted, 0.25) })
757
+ class: "nc-tabela-cab flex align-items-center justify-content-between",
758
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).muted, 0.25) })
758
759
  }, [
759
- b("span", null, v(t.rotuloCategoria), 1),
760
- b("span", fe, v(t.rotuloQuantidade), 1)
761
- ], 4)) : u("", !0),
762
- (s(!0), i(pt, null, yt(t.data, (L, X) => (s(), i("div", {
763
- key: X,
764
- class: "card-pizza__tabela-linha flex align-items-center justify-content-between",
765
- style: y({ color: l(e).text })
760
+ x("span", null, $(t.rotuloCategoria), 1),
761
+ x("span", fe, $(t.rotuloQuantidade), 1)
762
+ ], 4)) : f("", !0),
763
+ (n(!0), s(pt, null, yt(t.data, (H, Y) => (n(), s("div", {
764
+ key: Y,
765
+ class: "nc-tabela-linha flex align-items-center justify-content-between",
766
+ style: y({ color: r(o).text })
766
767
  }, [
767
- b("span", pe, [
768
- b("span", {
769
- class: "card-pizza__bolinha",
770
- style: y({ background: F.value[X] })
768
+ x("span", pe, [
769
+ x("span", {
770
+ class: "nc-bolinha",
771
+ style: y({ background: T.value[Y] })
771
772
  }, null, 4),
772
- b("span", null, v(L.rotulo), 1)
773
+ x("span", null, $(H.rotulo), 1)
773
774
  ]),
774
- b("span", ge, v(l($)(L.quantidade)), 1)
775
+ x("span", ge, $(r(S)(H.quantidade)), 1)
775
776
  ], 4))), 128))
776
777
  ]),
777
- b("div", ye, [
778
- b("div", me, [
778
+ x("div", ye, [
779
+ x("div", me, [
779
780
  dt(lt, {
780
781
  type: "doughnut",
781
- data: D.value,
782
- options: W.value,
782
+ data: E.value,
783
+ options: I.value,
783
784
  height: t.height
784
785
  }, null, 8, ["data", "options", "height"]),
785
- d.$slots.titulo || t.titulo || d.$slots.descricao || t.descricao ? (s(), i("div", be, [
786
- d.$slots.titulo || t.titulo ? (s(), i("div", {
786
+ u.$slots.titulo || t.titulo || u.$slots.descricao || t.descricao ? (n(), s("div", be, [
787
+ u.$slots.titulo || t.titulo ? (n(), s("div", {
787
788
  key: 0,
788
- class: "card-pizza__centro-titulo m-0 font-semibold",
789
- style: y({ color: l(e).text })
789
+ class: "nc-centro-titulo m-0 font-semibold",
790
+ style: y({ color: r(o).text })
790
791
  }, [
791
- A(d.$slots, "titulo", {}, () => [
792
- _(v(t.titulo), 1)
792
+ C(u.$slots, "titulo", {}, () => [
793
+ O($(t.titulo), 1)
793
794
  ], !0)
794
- ], 4)) : u("", !0),
795
- d.$slots.descricao || t.descricao ? (s(), i("div", {
795
+ ], 4)) : f("", !0),
796
+ u.$slots.descricao || t.descricao ? (n(), s("div", {
796
797
  key: 1,
797
- class: "card-pizza__centro-desc",
798
- style: y({ color: l(e).muted })
798
+ class: "nc-centro-desc",
799
+ style: y({ color: r(o).muted })
799
800
  }, [
800
- A(d.$slots, "descricao", {}, () => [
801
- _(v(t.descricao), 1)
801
+ C(u.$slots, "descricao", {}, () => [
802
+ O($(t.descricao), 1)
802
803
  ], !0)
803
- ], 4)) : u("", !0)
804
- ])) : u("", !0)
804
+ ], 4)) : f("", !0)
805
+ ])) : f("", !0)
805
806
  ])
806
807
  ])
807
808
  ]),
808
- d.$slots.footer ? (s(), i("div", he, [
809
- A(d.$slots, "footer", {}, void 0, !0)
810
- ])) : u("", !0)
809
+ u.$slots.footer ? (n(), s("div", he, [
810
+ C(u.$slots, "footer", {}, void 0, !0)
811
+ ])) : f("", !0)
811
812
  ], 6));
812
813
  }
813
- }, ve = /* @__PURE__ */ et(xe, [["__scopeId", "data-v-6c25ad40"]]), $e = { class: "card-barra__header flex flex-column" }, Se = { class: "card-barra__topo flex align-items-start justify-content-between gap-3" }, ke = {
814
+ }, ve = /* @__PURE__ */ et(xe, [["__scopeId", "data-v-227dd705"]]), $e = { class: "card-barra__header flex flex-column" }, Se = { class: "card-barra__topo flex align-items-start justify-content-between gap-3" }, ke = {
814
815
  key: 0,
815
- class: "card-barra__legendas flex flex-column"
816
+ class: "nc-legendas-flex flex flex-column"
816
817
  }, Be = {
817
818
  key: 1,
818
- class: "card-barra__actions inline-flex align-items-center gap-2"
819
+ class: "nc-actions inline-flex align-items-center gap-2"
819
820
  }, Ae = ["innerHTML"], Ce = {
820
821
  key: 0,
821
822
  class: "card-barra__titulos mt-3 mb-2 flex flex-column"
822
823
  }, we = { class: "card-barra__chart flex-1" }, Re = {
823
824
  key: 0,
824
825
  class: "card-barra__footer mt-3"
825
- }, Fe = {
826
+ }, Ee = {
826
827
  __name: "CardBarra",
827
828
  props: {
828
829
  legenda: { type: String, default: null },
@@ -884,65 +885,66 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
884
885
  raioBarra: { type: Number, default: 6 },
885
886
  linhasReferencia: { type: [Object, Array], default: null },
886
887
  exportar: { type: Boolean, default: !1 },
887
- nomeArquivoExport: { type: String, default: "card-barra.png" }
888
+ nomeArquivoExport: { type: String, default: "card-barra.png" },
889
+ corHover: { type: String, default: null }
888
890
  },
889
891
  emits: ["botaoAcao", "exportado"],
890
- setup(t, { emit: x }) {
891
- const a = t, f = x, { palette: e, cardStyle: w } = nt(a), { formatar: $ } = ut(a), z = tt(null), J = it;
892
- async function G() {
893
- await st(z.value, {
894
- nomeArquivo: a.nomeArquivoExport,
895
- corFundo: e.value.bg !== "transparent" ? e.value.bg : null
896
- }), f("exportado");
892
+ setup(t, { emit: v }) {
893
+ const e = t, g = v, { palette: o, cardStyle: R } = nt(e), { formatar: S } = ut(e), j = tt(null), Q = it;
894
+ async function Z() {
895
+ await st(j.value, {
896
+ nomeArquivo: e.nomeArquivoExport,
897
+ corFundo: o.value.bg !== "transparent" ? o.value.bg : null
898
+ }), g("exportado");
897
899
  }
898
- const F = R(() => `card-barra--${a.direcao}`), D = R(() => a.orientacao === "horizontal"), I = R(() => Array.isArray(a.series) && a.series.length > 0 ? a.series.map((r, p) => ({
899
- nome: r.nome ?? `Série ${p + 1}`,
900
- cor: r.cor || a.cores[p % a.cores.length],
901
- dados: Array.isArray(r.dados) ? r.dados : []
902
- })) : [{ nome: a.legenda || "Valores", cor: a.corDetalhes, dados: a.data }]), W = R(() => {
903
- const r = I.value[0];
904
- return r ? r.dados.map((p) => p.rotulo) : [];
905
- }), K = R(() => {
906
- const r = I.value, p = r.length - 1, n = typeof a.larguraBarra == "number" ? a.larguraBarra : Number(a.larguraBarra) || 0.6, g = a.raioBarra, m = D.value;
907
- function j(k) {
908
- if (!a.empilhado || r.length === 1) return g;
909
- const B = k === 0, S = k === p;
910
- return m ? {
911
- topLeft: B ? g : 0,
912
- bottomLeft: B ? g : 0,
913
- topRight: S ? g : 0,
914
- bottomRight: S ? g : 0
900
+ const T = w(() => `card-barra--${e.direcao}`), E = w(() => e.orientacao === "horizontal"), X = w(() => Array.isArray(e.series) && e.series.length > 0 ? e.series.map((a, m) => ({
901
+ nome: a.nome ?? `Série ${m + 1}`,
902
+ cor: a.cor || e.cores[m % e.cores.length],
903
+ dados: Array.isArray(a.dados) ? a.dados : []
904
+ })) : [{ nome: e.legenda || "Valores", cor: e.corDetalhes, dados: e.data }]), I = w(() => {
905
+ const a = X.value[0];
906
+ return a ? a.dados.map((m) => m.rotulo) : [];
907
+ }), K = w(() => {
908
+ const a = X.value, m = a.length - 1, l = typeof e.larguraBarra == "number" ? e.larguraBarra : Number(e.larguraBarra) || 0.6, p = e.raioBarra, b = E.value;
909
+ function q(B) {
910
+ if (!e.empilhado || a.length === 1) return p;
911
+ const A = B === 0, k = B === m;
912
+ return b ? {
913
+ topLeft: A ? p : 0,
914
+ bottomLeft: A ? p : 0,
915
+ topRight: k ? p : 0,
916
+ bottomRight: k ? p : 0
915
917
  } : {
916
- bottomLeft: B ? g : 0,
917
- bottomRight: B ? g : 0,
918
- topLeft: S ? g : 0,
919
- topRight: S ? g : 0
918
+ bottomLeft: A ? p : 0,
919
+ bottomRight: A ? p : 0,
920
+ topLeft: k ? p : 0,
921
+ topRight: k ? p : 0
920
922
  };
921
923
  }
922
924
  return {
923
- labels: W.value,
924
- datasets: r.map((k, B) => ({
925
- label: k.nome,
926
- data: k.dados.map((S) => S.quantidade),
927
- backgroundColor: M(k.cor, 0.72),
928
- hoverBackgroundColor: k.cor,
925
+ labels: I.value,
926
+ datasets: a.map((B, A) => ({
927
+ label: B.nome,
928
+ data: B.dados.map((k) => k.quantidade),
929
+ backgroundColor: D(B.cor, 0.72),
930
+ hoverBackgroundColor: e.corHover || B.cor,
929
931
  borderWidth: 0,
930
- borderRadius: j(B),
932
+ borderRadius: q(A),
931
933
  borderSkipped: !1,
932
934
  categoryPercentage: 1,
933
- barPercentage: n
935
+ barPercentage: l
934
936
  }))
935
937
  };
936
938
  });
937
- function Z(r, p) {
938
- p ? Object.assign(r.style, {
939
+ function _(a, m) {
940
+ m ? Object.assign(a.style, {
939
941
  top: "-5px",
940
942
  bottom: "auto",
941
943
  borderTop: "1px solid rgba(15,23,42,.06)",
942
944
  borderLeft: "1px solid rgba(15,23,42,.06)",
943
945
  borderRight: "none",
944
946
  borderBottom: "none"
945
- }) : Object.assign(r.style, {
947
+ }) : Object.assign(a.style, {
946
948
  bottom: "-5px",
947
949
  top: "auto",
948
950
  borderRight: "1px solid rgba(15,23,42,.06)",
@@ -951,60 +953,61 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
951
953
  borderLeft: "none"
952
954
  });
953
955
  }
954
- let d = null;
955
- function E(r) {
956
- const { chart: p, tooltip: n } = r, g = at(p);
957
- if (!g) return;
958
- const m = gt(g, { caretFlexivel: !0 });
959
- if (n.opacity === 0 || d) {
960
- m.style.opacity = "0";
956
+ let u = null;
957
+ function F(a) {
958
+ const { chart: m, tooltip: l } = a, p = ot(m);
959
+ if (!p) return;
960
+ const b = gt(p, { caretFlexivel: !0 });
961
+ if (l.opacity === 0 || u) {
962
+ b.style.opacity = "0";
961
963
  return;
962
964
  }
963
- const j = n.title || [], k = n.dataPoints || [], B = m.querySelector(".nc-tt__content"), S = k.map((ct) => {
965
+ const q = l.title || [], B = l.dataPoints || [], A = b.querySelector(".nc-tt__content"), k = B.map((ct) => {
964
966
  var xt;
965
- const ht = ((xt = I.value[ct.datasetIndex]) == null ? void 0 : xt.cor) || a.corDetalhes, Ct = $(D.value ? ct.parsed.x : ct.parsed.y), wt = ct.dataset.label && I.value.length > 1 ? `<span style="font-size:11px;color:#64748B;margin-right:6px;">${ct.dataset.label}</span>` : "";
966
- return `<div style="display:flex;align-items:center;gap:6px;margin-top:2px;"><span style="width:6px;height:6px;border-radius:999px;background:${ht};box-shadow:0 0 0 2px ${M(ht, 0.15)};flex:0 0 auto;"></span>` + wt + `<span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;margin-left:auto;">${Ct}</span></div>`;
967
+ const ht = ((xt = X.value[ct.datasetIndex]) == null ? void 0 : xt.cor) || e.corDetalhes, Ct = S(E.value ? ct.parsed.x : ct.parsed.y), wt = ct.dataset.label && X.value.length > 1 ? `<span style="font-size:11px;color:#64748B;margin-right:6px;">${ct.dataset.label}</span>` : "";
968
+ return `<div style="display:flex;align-items:center;gap:6px;margin-top:2px;"><span style="width:6px;height:6px;border-radius:999px;background:${ht};box-shadow:0 0 0 2px ${D(ht, 0.15)};flex:0 0 auto;"></span>` + wt + `<span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;margin-left:auto;">${Ct}</span></div>`;
967
969
  }).join("");
968
- B.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${j.join(" ")}</div>` + S;
969
- const { offsetLeft: V, offsetTop: Y } = p.canvas;
970
- m.style.opacity = "1", m.style.visibility = "hidden", m.style.left = "0px", m.style.top = "0px";
971
- const O = m.offsetWidth, q = m.offsetHeight, H = 4, Q = V + n.caretX, U = Y + n.caretY, T = ot(Q, O, g.clientWidth, H), N = O / 2, P = 14, ft = U - P - q, mt = ft < H, kt = mt ? U + P : ft, bt = m.querySelector(".nc-tt__caret");
972
- Z(bt, mt);
973
- const Bt = Q - (T - N), At = Math.max(10, Math.min(O - 10, Bt));
974
- bt.style.left = At + "px", m.style.left = T + "px", m.style.top = kt + "px", m.style.visibility = "visible";
970
+ A.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${q.join(" ")}</div>` + k;
971
+ const { offsetLeft: V, offsetTop: J } = m.canvas;
972
+ b.style.opacity = "1", b.style.visibility = "hidden", b.style.left = "0px", b.style.top = "0px";
973
+ const W = b.offsetWidth, z = b.offsetHeight, M = 4, U = V + l.caretX, G = J + l.caretY, L = at(U, W, p.clientWidth, M), N = W / 2, P = 14, ft = G - P - z, mt = ft < M, kt = mt ? G + P : ft, bt = b.querySelector(".nc-tt__caret");
974
+ _(bt, mt);
975
+ const Bt = U - (L - N), At = Math.max(10, Math.min(W - 10, Bt));
976
+ bt.style.left = At + "px", b.style.left = L + "px", b.style.top = kt + "px", b.style.visibility = "visible";
975
977
  }
976
- const L = R(() => {
977
- const r = D.value, p = {
978
+ const H = w(() => {
979
+ const a = E.value, m = {
978
980
  grid: { display: !1, drawBorder: !1 },
979
981
  border: { display: !1 },
980
- ticks: { color: e.value.muted, font: { size: 10, family: "'Inter', sans-serif" }, padding: 8 },
981
- stacked: a.empilhado
982
- }, n = {
982
+ ticks: { color: o.value.muted, font: { size: 10, family: "'Inter', sans-serif" }, padding: 8 },
983
+ stacked: e.empilhado
984
+ }, l = {
983
985
  display: !1,
984
986
  grid: { display: !1 },
985
987
  beginAtZero: !0,
986
- stacked: a.empilhado
988
+ stacked: e.empilhado,
989
+ suggestedMax: d.value.length ? Math.max(...d.value.map((p) => p.valor)) : void 0
987
990
  };
988
991
  return {
989
992
  responsive: !0,
990
993
  maintainAspectRatio: !1,
991
- indexAxis: r ? "y" : "x",
992
- interaction: { intersect: !1, mode: "index", axis: r ? "y" : "x" },
994
+ indexAxis: a ? "y" : "x",
995
+ interaction: { intersect: !1, mode: "index", axis: a ? "y" : "x" },
993
996
  layout: {
994
997
  padding: {
995
- top: o.value.length && !r ? 24 : 12,
996
- right: r ? 12 : 0,
998
+ top: d.value.length && !a ? 24 : 12,
999
+ right: a ? 12 : 0,
997
1000
  bottom: 0,
998
- left: o.value.length && r ? 60 : 0
1001
+ left: d.value.length && a ? 60 : 0
999
1002
  }
1000
1003
  },
1001
1004
  plugins: {
1002
1005
  legend: {
1003
- display: a.mostrarLegendaSeries && I.value.length > 1,
1006
+ display: e.mostrarLegendaSeries && X.value.length > 1,
1004
1007
  position: "bottom",
1005
1008
  align: "start",
1006
1009
  labels: {
1007
- color: e.value.muted,
1010
+ color: o.value.muted,
1008
1011
  boxWidth: 8,
1009
1012
  boxHeight: 8,
1010
1013
  usePointStyle: !0,
@@ -1015,94 +1018,94 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1015
1018
  },
1016
1019
  tooltip: {
1017
1020
  enabled: !1,
1018
- external: E,
1021
+ external: F,
1019
1022
  callbacks: {
1020
- title: (g) => {
1021
- var m;
1022
- return ((m = g[0]) == null ? void 0 : m.label) ?? "";
1023
+ title: (p) => {
1024
+ var b;
1025
+ return ((b = p[0]) == null ? void 0 : b.label) ?? "";
1023
1026
  },
1024
- label: (g) => $(r ? g.parsed.x : g.parsed.y)
1027
+ label: (p) => S(a ? p.parsed.x : p.parsed.y)
1025
1028
  }
1026
1029
  }
1027
1030
  },
1028
1031
  scales: {
1029
- x: r ? n : p,
1030
- y: r ? p : n
1032
+ x: a ? l : m,
1033
+ y: a ? m : l
1031
1034
  }
1032
1035
  };
1033
1036
  });
1034
- function X() {
1035
- f("botaoAcao");
1037
+ function Y() {
1038
+ g("botaoAcao");
1036
1039
  }
1037
- const o = R(() => a.linhasReferencia ? (Array.isArray(a.linhasReferencia) ? a.linhasReferencia : [a.linhasReferencia]).filter((p) => p && (typeof p == "number" || typeof p.valor == "number")).map((p) => typeof p == "number" ? { valor: p, rotulo: null, cor: "#0F172A", corRotulo: "#0F172A", corTexto: "#FFFFFF", tracejado: [6, 6], espessura: 1 } : {
1038
- valor: p.valor,
1039
- rotulo: p.rotulo ?? null,
1040
- cor: p.cor || "#0F172A",
1041
- corRotulo: p.corRotulo || p.cor || "#0F172A",
1042
- corTexto: p.corTexto || "#FFFFFF",
1043
- tracejado: p.tracejado || [6, 6],
1044
- espessura: p.espessura ?? 1
1045
- }) : []), h = [], c = {
1040
+ const d = w(() => e.linhasReferencia ? (Array.isArray(e.linhasReferencia) ? e.linhasReferencia : [e.linhasReferencia]).filter((m) => m && (typeof m == "number" || typeof m.valor == "number")).map((m) => typeof m == "number" ? { valor: m, rotulo: null, cor: "#0F172A", corRotulo: "#0F172A", corTexto: "#FFFFFF", tracejado: [6, 6], espessura: 1 } : {
1041
+ valor: m.valor,
1042
+ rotulo: m.rotulo ?? null,
1043
+ cor: m.cor || "#0F172A",
1044
+ corRotulo: m.corRotulo || m.cor || "#0F172A",
1045
+ corTexto: m.corTexto || "#FFFFFF",
1046
+ tracejado: m.tracejado || [6, 6],
1047
+ espessura: m.espessura ?? 1
1048
+ }) : []), i = [], c = {
1046
1049
  id: "linhaReferencia",
1047
- afterDatasetsDraw(r) {
1048
- const p = o.value;
1049
- if (h.length = 0, !p.length) return;
1050
- const { ctx: n, chartArea: g, scales: m } = r, j = D.value, k = j ? m.x : m.y;
1051
- k && p.forEach((B) => {
1052
- const S = k.getPixelForValue(B.valor);
1053
- if (h.push({ linha: B, pos: S, horizontal: j, chartArea: g }), n.save(), n.beginPath(), n.setLineDash(B.tracejado), n.lineWidth = B.espessura, n.strokeStyle = B.cor, j) {
1054
- if (S < g.left || S > g.right) {
1055
- n.restore();
1050
+ afterDatasetsDraw(a) {
1051
+ const m = d.value;
1052
+ if (i.length = 0, !m.length) return;
1053
+ const { ctx: l, chartArea: p, scales: b } = a, q = E.value, B = q ? b.x : b.y;
1054
+ B && m.forEach((A) => {
1055
+ const k = B.getPixelForValue(A.valor);
1056
+ if (i.push({ linha: A, pos: k, horizontal: q, chartArea: p }), l.save(), l.beginPath(), l.setLineDash(A.tracejado), l.lineWidth = A.espessura, l.strokeStyle = A.cor, q) {
1057
+ if (k < p.left || k > p.right) {
1058
+ l.restore();
1056
1059
  return;
1057
1060
  }
1058
- n.moveTo(S, g.top), n.lineTo(S, g.bottom);
1061
+ l.moveTo(k, p.top), l.lineTo(k, p.bottom);
1059
1062
  } else {
1060
- if (S < g.top || S > g.bottom) {
1061
- n.restore();
1063
+ if (k < p.top || k > p.bottom) {
1064
+ l.restore();
1062
1065
  return;
1063
1066
  }
1064
- n.moveTo(g.left, S), n.lineTo(g.right, S);
1067
+ l.moveTo(p.left, k), l.lineTo(p.right, k);
1065
1068
  }
1066
- if (n.stroke(), n.setLineDash([]), B.rotulo) {
1067
- n.font = "600 11px 'Inter', sans-serif";
1068
- const V = 8, Y = 5, q = n.measureText(B.rotulo).width, H = 12, Q = q + V * 2, U = H + Y * 2, T = U / 2;
1069
+ if (l.stroke(), l.setLineDash([]), A.rotulo) {
1070
+ l.font = "600 11px 'Inter', sans-serif";
1071
+ const V = 8, J = 5, z = l.measureText(A.rotulo).width, M = 12, U = z + V * 2, G = M + J * 2, L = G / 2;
1069
1072
  let N, P;
1070
- j ? (N = S - Q / 2, P = g.top - U - 6, P < 0 && (P = g.top + 6)) : (N = g.left - Q - 6, P = S - U / 2, N < 0 && (N = g.left + 6)), n.fillStyle = B.corRotulo, n.beginPath(), n.roundRect ? n.roundRect(N, P, Q, U, T) : (n.moveTo(N + T, P), n.lineTo(N + Q - T, P), n.quadraticCurveTo(N + Q, P, N + Q, P + T), n.lineTo(N + Q, P + U - T), n.quadraticCurveTo(N + Q, P + U, N + Q - T, P + U), n.lineTo(N + T, P + U), n.quadraticCurveTo(N, P + U, N, P + U - T), n.lineTo(N, P + T), n.quadraticCurveTo(N, P, N + T, P)), n.fill(), n.fillStyle = B.corTexto, n.textBaseline = "middle", n.textAlign = "center", n.fillText(B.rotulo, N + Q / 2, P + U / 2);
1073
+ q ? (N = k - U / 2, P = p.top - G - 6, P < 0 && (P = p.top + 6)) : (N = p.left - U - 6, P = k - G / 2, N < 0 && (N = p.left + 6)), l.fillStyle = A.corRotulo, l.beginPath(), l.roundRect ? l.roundRect(N, P, U, G, L) : (l.moveTo(N + L, P), l.lineTo(N + U - L, P), l.quadraticCurveTo(N + U, P, N + U, P + L), l.lineTo(N + U, P + G - L), l.quadraticCurveTo(N + U, P + G, N + U - L, P + G), l.lineTo(N + L, P + G), l.quadraticCurveTo(N, P + G, N, P + G - L), l.lineTo(N, P + L), l.quadraticCurveTo(N, P, N + L, P)), l.fill(), l.fillStyle = A.corTexto, l.textBaseline = "middle", l.textAlign = "center", l.fillText(A.rotulo, N + U / 2, P + G / 2);
1071
1074
  }
1072
- n.restore();
1075
+ l.restore();
1073
1076
  });
1074
1077
  },
1075
- beforeEvent(r, p) {
1076
- if (!h.length) {
1077
- d = null;
1078
+ beforeEvent(a, m) {
1079
+ if (!i.length) {
1080
+ u = null;
1078
1081
  return;
1079
1082
  }
1080
- const n = p.event;
1081
- if (!n || n.type === "mouseout" || n.x == null || n.y == null) {
1082
- d = null;
1083
+ const l = m.event;
1084
+ if (!l || l.type === "mouseout" || l.x == null || l.y == null) {
1085
+ u = null;
1083
1086
  return;
1084
1087
  }
1085
- const g = 8;
1086
- let m = null, j = 1 / 0;
1087
- for (const k of h) {
1088
- const B = k.horizontal ? Math.abs(n.x - k.pos) : Math.abs(n.y - k.pos), S = k.horizontal ? n.y >= k.chartArea.top && n.y <= k.chartArea.bottom : n.x >= k.chartArea.left && n.x <= k.chartArea.right;
1089
- B <= g && S && B < j && (j = B, m = k);
1088
+ const p = 8;
1089
+ let b = null, q = 1 / 0;
1090
+ for (const B of i) {
1091
+ const A = B.horizontal ? Math.abs(l.x - B.pos) : Math.abs(l.y - B.pos), k = B.horizontal ? l.y >= B.chartArea.top && l.y <= B.chartArea.bottom : l.x >= B.chartArea.left && l.x <= B.chartArea.right;
1092
+ A <= p && k && A < q && (q = A, b = B);
1090
1093
  }
1091
- d = m;
1094
+ u = b;
1092
1095
  },
1093
- afterEvent(r, p) {
1094
- if (!h.length) return;
1095
- const n = p.event;
1096
- if (!n) return;
1097
- const g = at(r);
1098
- if (!g) return;
1099
- let m = g.querySelector(".nc-tt-linhaRef");
1100
- if (!d) {
1101
- m && (m.style.opacity = "0");
1096
+ afterEvent(a, m) {
1097
+ if (!i.length) return;
1098
+ const l = m.event;
1099
+ if (!l) return;
1100
+ const p = ot(a);
1101
+ if (!p) return;
1102
+ let b = p.querySelector(".nc-tt-linhaRef");
1103
+ if (!u) {
1104
+ b && (b.style.opacity = "0");
1102
1105
  return;
1103
1106
  }
1104
- const j = d;
1105
- m || (m = document.createElement("div"), m.className = "nc-tt-linhaRef", Object.assign(m.style, {
1107
+ const q = u;
1108
+ b || (b = document.createElement("div"), b.className = "nc-tt-linhaRef", Object.assign(b.style, {
1106
1109
  position: "absolute",
1107
1110
  pointerEvents: "none",
1108
1111
  transform: "translate(-50%, calc(-100% - 12px))",
@@ -1117,119 +1120,119 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1117
1120
  zIndex: "11",
1118
1121
  fontFamily: "'Inter', sans-serif",
1119
1122
  textAlign: "left"
1120
- }), g.appendChild(m));
1121
- const k = j.linha.cor || "#0F172A", B = $(j.linha.valor), S = j.linha.rotulo;
1122
- m.innerHTML = (S ? `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${S}</div>` : "") + `<div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${k};box-shadow:0 0 0 2px ${M(k, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${B}</span></div>`;
1123
- const V = r.canvas;
1124
- m.style.opacity = "1", m.style.visibility = "hidden", m.style.left = "0px", m.style.top = "0px";
1125
- const Y = m.offsetWidth, O = m.offsetHeight, q = 4;
1126
- let H, Q;
1127
- j.horizontal ? (H = V.offsetLeft + j.pos, Q = V.offsetTop + n.y) : (H = V.offsetLeft + n.x, Q = V.offsetTop + j.pos);
1128
- const U = ot(H, Y, g.clientWidth, q);
1129
- let T = Q;
1130
- const N = O + 16 + q;
1131
- T < N && (T = N), m.style.left = U + "px", m.style.top = T + "px", m.style.visibility = "visible";
1123
+ }), p.appendChild(b));
1124
+ const B = q.linha.cor || "#0F172A", A = S(q.linha.valor), k = q.linha.rotulo;
1125
+ b.innerHTML = (k ? `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${k}</div>` : "") + `<div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${B};box-shadow:0 0 0 2px ${D(B, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${A}</span></div>`;
1126
+ const V = a.canvas;
1127
+ b.style.opacity = "1", b.style.visibility = "hidden", b.style.left = "0px", b.style.top = "0px";
1128
+ const J = b.offsetWidth, W = b.offsetHeight, z = 4;
1129
+ let M, U;
1130
+ q.horizontal ? (M = V.offsetLeft + q.pos, U = V.offsetTop + l.y) : (M = V.offsetLeft + l.x, U = V.offsetTop + q.pos);
1131
+ const G = at(M, J, p.clientWidth, z);
1132
+ let L = U;
1133
+ const N = W + 16 + z;
1134
+ L < N && (L = N), b.style.left = G + "px", b.style.top = L + "px", b.style.visibility = "visible";
1132
1135
  }
1133
- }, C = R(() => o.value.length ? [c] : []);
1134
- return (r, p) => (s(), i("div", {
1136
+ }, h = w(() => d.value.length ? [c] : []);
1137
+ return (a, m) => (n(), s("div", {
1135
1138
  ref_key: "cardRef",
1136
- ref: z,
1137
- class: rt(["card-barra p-4 flex", F.value]),
1138
- style: y(l(w))
1139
+ ref: j,
1140
+ class: rt(["card-barra p-4 flex", T.value]),
1141
+ style: y(r(R))
1139
1142
  }, [
1140
- b("div", $e, [
1141
- b("div", Se, [
1142
- r.$slots.legenda || t.legenda || r.$slots.sublegenda || t.sublegenda ? (s(), i("div", ke, [
1143
- r.$slots.legenda || t.legenda ? (s(), i("div", {
1143
+ x("div", $e, [
1144
+ x("div", Se, [
1145
+ a.$slots.legenda || t.legenda || a.$slots.sublegenda || t.sublegenda ? (n(), s("div", ke, [
1146
+ a.$slots.legenda || t.legenda ? (n(), s("div", {
1144
1147
  key: 0,
1145
1148
  class: "text-xs font-medium",
1146
- style: y({ color: l(e).text, opacity: 0.85 })
1149
+ style: y({ color: r(o).text, opacity: 0.85 })
1147
1150
  }, [
1148
- A(r.$slots, "legenda", {}, () => [
1149
- _(v(t.legenda), 1)
1151
+ C(a.$slots, "legenda", {}, () => [
1152
+ O($(t.legenda), 1)
1150
1153
  ], !0)
1151
- ], 4)) : u("", !0),
1152
- r.$slots.sublegenda || t.sublegenda ? (s(), i("div", {
1154
+ ], 4)) : f("", !0),
1155
+ a.$slots.sublegenda || t.sublegenda ? (n(), s("div", {
1153
1156
  key: 1,
1154
1157
  class: "text-xs",
1155
- style: y({ color: l(e).muted })
1158
+ style: y({ color: r(o).muted })
1156
1159
  }, [
1157
- A(r.$slots, "sublegenda", {}, () => [
1158
- _(v(t.sublegenda), 1)
1160
+ C(a.$slots, "sublegenda", {}, () => [
1161
+ O($(t.sublegenda), 1)
1159
1162
  ], !0)
1160
- ], 4)) : u("", !0)
1161
- ])) : u("", !0),
1162
- r.$slots.actions || t.botaoVisivel || t.exportar ? (s(), i("div", Be, [
1163
- A(r.$slots, "actions", {}, () => [
1164
- t.botaoVisivel ? (s(), i("button", {
1163
+ ], 4)) : f("", !0)
1164
+ ])) : f("", !0),
1165
+ a.$slots.actions || t.botaoVisivel || t.exportar ? (n(), s("div", Be, [
1166
+ C(a.$slots, "actions", {}, () => [
1167
+ t.botaoVisivel ? (n(), s("button", {
1165
1168
  key: 0,
1166
- class: "card-barra__btn inline-flex align-items-center",
1167
- style: y({ color: l(e).text, borderColor: l(M)(l(e).text, 0.18) }),
1168
- onClick: X
1169
+ class: "nc-btn inline-flex align-items-center",
1170
+ style: y({ color: r(o).text, borderColor: r(D)(r(o).text, 0.18) }),
1171
+ onClick: Y
1169
1172
  }, [
1170
- b("span", null, v(t.textoBotao), 1)
1171
- ], 4)) : u("", !0)
1173
+ x("span", null, $(t.textoBotao), 1)
1174
+ ], 4)) : f("", !0)
1172
1175
  ], !0),
1173
- t.exportar ? (s(), i("button", {
1176
+ t.exportar ? (n(), s("button", {
1174
1177
  key: 0,
1175
1178
  type: "button",
1176
- class: "card-barra__exportar inline-flex align-items-center justify-content-center",
1177
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).text, 0.18) }),
1179
+ class: "nc-exportar inline-flex align-items-center justify-content-center",
1180
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).text, 0.18) }),
1178
1181
  title: "Exportar como imagem",
1179
1182
  "aria-label": "Exportar como imagem",
1180
- onClick: G,
1181
- innerHTML: l(J)
1182
- }, null, 12, Ae)) : u("", !0)
1183
- ])) : u("", !0)
1183
+ onClick: Z,
1184
+ innerHTML: r(Q)
1185
+ }, null, 12, Ae)) : f("", !0)
1186
+ ])) : f("", !0)
1184
1187
  ]),
1185
- r.$slots.titulo || t.titulo || r.$slots.descricao || t.descricao ? (s(), i("div", Ce, [
1186
- r.$slots.titulo || t.titulo ? (s(), i("div", {
1188
+ a.$slots.titulo || t.titulo || a.$slots.descricao || t.descricao ? (n(), s("div", Ce, [
1189
+ a.$slots.titulo || t.titulo ? (n(), s("div", {
1187
1190
  key: 0,
1188
1191
  class: "m-0 text-3xl font-semibold",
1189
- style: y({ color: l(e).text, lineHeight: "33px", letterSpacing: "-1px" })
1192
+ style: y({ color: r(o).text, lineHeight: "33px", letterSpacing: "-1px" })
1190
1193
  }, [
1191
- A(r.$slots, "titulo", {}, () => [
1192
- _(v(t.titulo), 1)
1194
+ C(a.$slots, "titulo", {}, () => [
1195
+ O($(t.titulo), 1)
1193
1196
  ], !0)
1194
- ], 4)) : u("", !0),
1195
- r.$slots.descricao || t.descricao ? (s(), i("div", {
1197
+ ], 4)) : f("", !0),
1198
+ a.$slots.descricao || t.descricao ? (n(), s("div", {
1196
1199
  key: 1,
1197
1200
  class: "text-sm mt-1",
1198
- style: y({ color: l(e).muted })
1201
+ style: y({ color: r(o).muted })
1199
1202
  }, [
1200
- A(r.$slots, "descricao", {}, () => [
1201
- _(v(t.descricao), 1)
1203
+ C(a.$slots, "descricao", {}, () => [
1204
+ O($(t.descricao), 1)
1202
1205
  ], !0)
1203
- ], 4)) : u("", !0)
1204
- ])) : u("", !0)
1206
+ ], 4)) : f("", !0)
1207
+ ])) : f("", !0)
1205
1208
  ]),
1206
- b("div", we, [
1209
+ x("div", we, [
1207
1210
  dt(lt, {
1208
1211
  type: "bar",
1209
1212
  data: K.value,
1210
- options: L.value,
1211
- plugins: C.value,
1213
+ options: H.value,
1214
+ plugins: h.value,
1212
1215
  height: t.height
1213
1216
  }, null, 8, ["data", "options", "plugins", "height"])
1214
1217
  ]),
1215
- r.$slots.footer ? (s(), i("div", Re, [
1216
- A(r.$slots, "footer", {}, void 0, !0)
1217
- ])) : u("", !0)
1218
+ a.$slots.footer ? (n(), s("div", Re, [
1219
+ C(a.$slots, "footer", {}, void 0, !0)
1220
+ ])) : f("", !0)
1218
1221
  ], 6));
1219
1222
  }
1220
- }, Ee = /* @__PURE__ */ et(Fe, [["__scopeId", "data-v-4fd7ecb9"]]), Te = { class: "card-polar__topo flex align-items-start justify-content-between gap-3" }, qe = {
1223
+ }, Fe = /* @__PURE__ */ et(Ee, [["__scopeId", "data-v-6c196222"]]), Te = { class: "card-polar__topo flex align-items-start justify-content-between gap-3" }, qe = {
1221
1224
  key: 0,
1222
- class: "card-polar__legendas flex flex-column"
1223
- }, ze = {
1225
+ class: "nc-legendas-flex flex flex-column"
1226
+ }, Le = {
1224
1227
  key: 1,
1225
- class: "card-polar__actions inline-flex align-items-center gap-2"
1226
- }, Le = ["innerHTML"], je = { class: "card-polar__corpo flex align-items-center gap-4" }, Ve = { class: "card-polar__tabela flex flex-column" }, He = { class: "card-polar__tabela-valor" }, Ne = { class: "card-polar__tabela-rotulo inline-flex align-items-center gap-2" }, De = { class: "card-polar__tabela-valor" }, Me = { class: "card-polar__chart-wrap flex align-items-center justify-content-center" }, Pe = { class: "card-polar__chart" }, _e = {
1228
+ class: "nc-actions inline-flex align-items-center gap-2"
1229
+ }, ze = ["innerHTML"], je = { class: "card-polar__corpo flex align-items-center gap-4" }, He = { class: "nc-tabela flex flex-column" }, Ve = { class: "nc-tabela-valor" }, Me = { class: "nc-tabela-rotulo inline-flex align-items-center gap-2" }, Ne = { class: "nc-tabela-valor" }, De = { class: "card-polar__chart-wrap flex align-items-center justify-content-center" }, Pe = { class: "card-polar__chart" }, Oe = {
1227
1230
  key: 0,
1228
1231
  class: "card-polar__centro-bottom"
1229
- }, Oe = {
1232
+ }, We = {
1230
1233
  key: 0,
1231
1234
  class: "card-polar__footer mt-3"
1232
- }, We = {
1235
+ }, Ie = {
1233
1236
  __name: "CardPolar",
1234
1237
  props: {
1235
1238
  legenda: { type: String, default: null },
@@ -1281,46 +1284,46 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1281
1284
  nomeArquivoExport: { type: String, default: "card-polar.png" }
1282
1285
  },
1283
1286
  emits: ["botaoAcao", "exportado"],
1284
- setup(t, { emit: x }) {
1285
- const a = t, f = x, { palette: e, cardStyle: w } = nt(a), { formatar: $ } = ut(a), z = tt(null), J = it;
1286
- async function G() {
1287
- await st(z.value, {
1288
- nomeArquivo: a.nomeArquivoExport,
1289
- corFundo: e.value.bg !== "transparent" ? e.value.bg : null
1290
- }), f("exportado");
1287
+ setup(t, { emit: v }) {
1288
+ const e = t, g = v, { palette: o, cardStyle: R } = nt(e), { formatar: S } = ut(e), j = tt(null), Q = it;
1289
+ async function Z() {
1290
+ await st(j.value, {
1291
+ nomeArquivo: e.nomeArquivoExport,
1292
+ corFundo: o.value.bg !== "transparent" ? o.value.bg : null
1293
+ }), g("exportado");
1291
1294
  }
1292
- const F = R(() => `card-polar--${a.direcao}`), D = R(
1293
- () => a.data.map((d, E) => a.cores[E % a.cores.length])
1294
- ), I = R(() => ({
1295
- labels: a.data.map((d) => d.rotulo),
1295
+ const T = w(() => `card-polar--${e.direcao}`), E = w(
1296
+ () => e.data.map((u, F) => e.cores[F % e.cores.length])
1297
+ ), X = w(() => ({
1298
+ labels: e.data.map((u) => u.rotulo),
1296
1299
  datasets: [
1297
1300
  {
1298
- data: a.data.map((d) => d.quantidade),
1299
- backgroundColor: D.value,
1300
- borderColor: D.value,
1301
+ data: e.data.map((u) => u.quantidade),
1302
+ backgroundColor: E.value,
1303
+ borderColor: E.value,
1301
1304
  borderWidth: 0,
1302
1305
  hoverOffset: 6
1303
1306
  }
1304
1307
  ]
1305
1308
  }));
1306
- function W(d) {
1307
- const { chart: E, tooltip: L } = d, X = at(E);
1308
- if (!X) return;
1309
- const o = gt(X);
1310
- if (L.opacity === 0) {
1311
- o.style.opacity = "0";
1309
+ function I(u) {
1310
+ const { chart: F, tooltip: H } = u, Y = ot(F);
1311
+ if (!Y) return;
1312
+ const d = gt(Y);
1313
+ if (H.opacity === 0) {
1314
+ d.style.opacity = "0";
1312
1315
  return;
1313
1316
  }
1314
- const h = L.title || [], c = L.dataPoints && L.dataPoints[0], C = c ? D.value[c.dataIndex] : "#3B82F6", r = c ? $(c.parsed.r ?? c.parsed) : "", p = o.querySelector(".nc-tt__content");
1315
- p.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${h.join(" ")}</div><div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${C};box-shadow:0 0 0 2px ${M(C, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${r}</span></div>`;
1316
- const { offsetLeft: n, offsetTop: g } = E.canvas;
1317
- o.style.opacity = "1", o.style.visibility = "hidden", o.style.left = "0px", o.style.top = "0px";
1318
- const m = o.offsetWidth, j = o.offsetHeight, k = 4, B = ot(n + L.caretX, m, X.clientWidth, k);
1319
- let S = g + L.caretY;
1320
- const V = j + 16 + k;
1321
- S < V && (S = V), o.style.left = B + "px", o.style.top = S + "px", o.style.visibility = "visible";
1317
+ const i = H.title || [], c = H.dataPoints && H.dataPoints[0], h = c ? E.value[c.dataIndex] : "#3B82F6", a = c ? S(c.parsed.r ?? c.parsed) : "", m = d.querySelector(".nc-tt__content");
1318
+ m.innerHTML = `<div style="font-size:9px;font-weight:500;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;line-height:1;margin-bottom:4px;">${i.join(" ")}</div><div style="display:flex;align-items:center;gap:6px;"><span style="width:6px;height:6px;border-radius:999px;background:${h};box-shadow:0 0 0 2px ${D(h, 0.15)};flex:0 0 auto;"></span><span style="font-size:12px;font-weight:700;color:#0F172A;letter-spacing:-.01em;line-height:1.1;">${a}</span></div>`;
1319
+ const { offsetLeft: l, offsetTop: p } = F.canvas;
1320
+ d.style.opacity = "1", d.style.visibility = "hidden", d.style.left = "0px", d.style.top = "0px";
1321
+ const b = d.offsetWidth, q = d.offsetHeight, B = 4, A = at(l + H.caretX, b, Y.clientWidth, B);
1322
+ let k = p + H.caretY;
1323
+ const V = q + 16 + B;
1324
+ k < V && (k = V), d.style.left = A + "px", d.style.top = k + "px", d.style.visibility = "visible";
1322
1325
  }
1323
- const K = R(() => ({
1326
+ const K = w(() => ({
1324
1327
  responsive: !0,
1325
1328
  maintainAspectRatio: !1,
1326
1329
  layout: { padding: 4 },
@@ -1329,12 +1332,12 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1329
1332
  beginAtZero: !0,
1330
1333
  ticks: { display: !1, backdropColor: "transparent" },
1331
1334
  grid: {
1332
- display: a.mostrarLinhasGrade,
1333
- color: M(e.value.muted, 0.18)
1335
+ display: e.mostrarLinhasGrade,
1336
+ color: D(o.value.muted, 0.18)
1334
1337
  },
1335
1338
  angleLines: {
1336
- display: a.mostrarLinhasGrade,
1337
- color: M(e.value.muted, 0.18)
1339
+ display: e.mostrarLinhasGrade,
1340
+ color: D(o.value.muted, 0.18)
1338
1341
  },
1339
1342
  pointLabels: { display: !1 }
1340
1343
  }
@@ -1343,150 +1346,150 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1343
1346
  legend: { display: !1 },
1344
1347
  tooltip: {
1345
1348
  enabled: !1,
1346
- external: W,
1349
+ external: I,
1347
1350
  callbacks: {
1348
- title: (d) => {
1349
- var E;
1350
- return ((E = d[0]) == null ? void 0 : E.label) ?? "";
1351
+ title: (u) => {
1352
+ var F;
1353
+ return ((F = u[0]) == null ? void 0 : F.label) ?? "";
1351
1354
  },
1352
- label: (d) => {
1353
- var E;
1354
- return $(((E = d.parsed) == null ? void 0 : E.r) ?? d.parsed);
1355
+ label: (u) => {
1356
+ var F;
1357
+ return S(((F = u.parsed) == null ? void 0 : F.r) ?? u.parsed);
1355
1358
  }
1356
1359
  }
1357
1360
  }
1358
1361
  }
1359
1362
  }));
1360
- function Z() {
1361
- f("botaoAcao");
1363
+ function _() {
1364
+ g("botaoAcao");
1362
1365
  }
1363
- return (d, E) => (s(), i("div", {
1366
+ return (u, F) => (n(), s("div", {
1364
1367
  ref_key: "cardRef",
1365
- ref: z,
1366
- class: rt(["card-polar p-4 flex flex-column", F.value]),
1367
- style: y(l(w))
1368
+ ref: j,
1369
+ class: rt(["card-polar p-4 flex flex-column", T.value]),
1370
+ style: y(r(R))
1368
1371
  }, [
1369
- b("div", Te, [
1370
- d.$slots.legenda || t.legenda || d.$slots.sublegenda || t.sublegenda ? (s(), i("div", qe, [
1371
- d.$slots.legenda || t.legenda ? (s(), i("div", {
1372
+ x("div", Te, [
1373
+ u.$slots.legenda || t.legenda || u.$slots.sublegenda || t.sublegenda ? (n(), s("div", qe, [
1374
+ u.$slots.legenda || t.legenda ? (n(), s("div", {
1372
1375
  key: 0,
1373
1376
  class: "text-xs font-medium",
1374
- style: y({ color: l(e).text, opacity: 0.95 })
1377
+ style: y({ color: r(o).text, opacity: 0.95 })
1375
1378
  }, [
1376
- A(d.$slots, "legenda", {}, () => [
1377
- _(v(t.legenda), 1)
1379
+ C(u.$slots, "legenda", {}, () => [
1380
+ O($(t.legenda), 1)
1378
1381
  ], !0)
1379
- ], 4)) : u("", !0),
1380
- d.$slots.sublegenda || t.sublegenda ? (s(), i("div", {
1382
+ ], 4)) : f("", !0),
1383
+ u.$slots.sublegenda || t.sublegenda ? (n(), s("div", {
1381
1384
  key: 1,
1382
1385
  class: "text-xs",
1383
- style: y({ color: l(e).muted })
1386
+ style: y({ color: r(o).muted })
1384
1387
  }, [
1385
- A(d.$slots, "sublegenda", {}, () => [
1386
- _(v(t.sublegenda), 1)
1388
+ C(u.$slots, "sublegenda", {}, () => [
1389
+ O($(t.sublegenda), 1)
1387
1390
  ], !0)
1388
- ], 4)) : u("", !0)
1389
- ])) : u("", !0),
1390
- d.$slots.actions || t.botaoVisivel || t.exportar ? (s(), i("div", ze, [
1391
- A(d.$slots, "actions", {}, () => [
1392
- t.botaoVisivel ? (s(), i("button", {
1391
+ ], 4)) : f("", !0)
1392
+ ])) : f("", !0),
1393
+ u.$slots.actions || t.botaoVisivel || t.exportar ? (n(), s("div", Le, [
1394
+ C(u.$slots, "actions", {}, () => [
1395
+ t.botaoVisivel ? (n(), s("button", {
1393
1396
  key: 0,
1394
- class: "card-polar__btn inline-flex align-items-center",
1395
- style: y({ color: l(e).text, borderColor: l(M)(l(e).text, 0.18) }),
1396
- onClick: Z
1397
+ class: "nc-btn inline-flex align-items-center",
1398
+ style: y({ color: r(o).text, borderColor: r(D)(r(o).text, 0.18) }),
1399
+ onClick: _
1397
1400
  }, [
1398
- b("span", null, v(t.textoBotao), 1)
1399
- ], 4)) : u("", !0)
1401
+ x("span", null, $(t.textoBotao), 1)
1402
+ ], 4)) : f("", !0)
1400
1403
  ], !0),
1401
- t.exportar ? (s(), i("button", {
1404
+ t.exportar ? (n(), s("button", {
1402
1405
  key: 0,
1403
1406
  type: "button",
1404
- class: "card-polar__exportar inline-flex align-items-center justify-content-center",
1405
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).text, 0.18) }),
1407
+ class: "nc-exportar inline-flex align-items-center justify-content-center",
1408
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).text, 0.18) }),
1406
1409
  title: "Exportar como imagem",
1407
1410
  "aria-label": "Exportar como imagem",
1408
- onClick: G,
1409
- innerHTML: l(J)
1410
- }, null, 12, Le)) : u("", !0)
1411
- ])) : u("", !0)
1411
+ onClick: Z,
1412
+ innerHTML: r(Q)
1413
+ }, null, 12, ze)) : f("", !0)
1414
+ ])) : f("", !0)
1412
1415
  ]),
1413
- b("div", je, [
1414
- b("div", Ve, [
1415
- t.mostrarCabecalho ? (s(), i("div", {
1416
+ x("div", je, [
1417
+ x("div", He, [
1418
+ t.mostrarCabecalho ? (n(), s("div", {
1416
1419
  key: 0,
1417
- class: "card-polar__tabela-cab flex align-items-center justify-content-between",
1418
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).muted, 0.25) })
1420
+ class: "nc-tabela-cab flex align-items-center justify-content-between",
1421
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).muted, 0.25) })
1419
1422
  }, [
1420
- b("span", null, v(t.rotuloCategoria), 1),
1421
- b("span", He, v(t.rotuloQuantidade), 1)
1422
- ], 4)) : u("", !0),
1423
- (s(!0), i(pt, null, yt(t.data, (L, X) => (s(), i("div", {
1424
- key: X,
1425
- class: "card-polar__tabela-linha flex align-items-center justify-content-between",
1426
- style: y({ color: l(e).text })
1423
+ x("span", null, $(t.rotuloCategoria), 1),
1424
+ x("span", Ve, $(t.rotuloQuantidade), 1)
1425
+ ], 4)) : f("", !0),
1426
+ (n(!0), s(pt, null, yt(t.data, (H, Y) => (n(), s("div", {
1427
+ key: Y,
1428
+ class: "nc-tabela-linha flex align-items-center justify-content-between",
1429
+ style: y({ color: r(o).text })
1427
1430
  }, [
1428
- b("span", Ne, [
1429
- b("span", {
1430
- class: "card-polar__bolinha",
1431
- style: y({ background: D.value[X] })
1431
+ x("span", Me, [
1432
+ x("span", {
1433
+ class: "nc-bolinha",
1434
+ style: y({ background: E.value[Y] })
1432
1435
  }, null, 4),
1433
- b("span", null, v(L.rotulo), 1)
1436
+ x("span", null, $(H.rotulo), 1)
1434
1437
  ]),
1435
- b("span", De, v(l($)(L.quantidade)), 1)
1438
+ x("span", Ne, $(r(S)(H.quantidade)), 1)
1436
1439
  ], 4))), 128))
1437
1440
  ]),
1438
- b("div", Me, [
1439
- b("div", Pe, [
1441
+ x("div", De, [
1442
+ x("div", Pe, [
1440
1443
  dt(lt, {
1441
1444
  type: "polarArea",
1442
- data: I.value,
1445
+ data: X.value,
1443
1446
  options: K.value,
1444
1447
  height: t.height
1445
1448
  }, null, 8, ["data", "options", "height"]),
1446
- d.$slots.titulo || t.titulo || d.$slots.descricao || t.descricao ? (s(), i("div", _e, [
1447
- d.$slots.titulo || t.titulo ? (s(), i("div", {
1449
+ u.$slots.titulo || t.titulo || u.$slots.descricao || t.descricao ? (n(), s("div", Oe, [
1450
+ u.$slots.titulo || t.titulo ? (n(), s("div", {
1448
1451
  key: 0,
1449
1452
  class: "card-polar__centro-titulo m-0 text-3xl font-semibold",
1450
- style: y({ color: l(e).text, lineHeight: "33px", letterSpacing: "-1px" })
1453
+ style: y({ color: r(o).text, lineHeight: "33px", letterSpacing: "-1px" })
1451
1454
  }, [
1452
- A(d.$slots, "titulo", {}, () => [
1453
- _(v(t.titulo), 1)
1455
+ C(u.$slots, "titulo", {}, () => [
1456
+ O($(t.titulo), 1)
1454
1457
  ], !0)
1455
- ], 4)) : u("", !0),
1456
- d.$slots.descricao || t.descricao ? (s(), i("div", {
1458
+ ], 4)) : f("", !0),
1459
+ u.$slots.descricao || t.descricao ? (n(), s("div", {
1457
1460
  key: 1,
1458
1461
  class: "card-polar__centro-desc",
1459
- style: y({ color: l(e).muted })
1462
+ style: y({ color: r(o).muted })
1460
1463
  }, [
1461
- A(d.$slots, "descricao", {}, () => [
1462
- _(v(t.descricao), 1)
1464
+ C(u.$slots, "descricao", {}, () => [
1465
+ O($(t.descricao), 1)
1463
1466
  ], !0)
1464
- ], 4)) : u("", !0)
1465
- ])) : u("", !0)
1467
+ ], 4)) : f("", !0)
1468
+ ])) : f("", !0)
1466
1469
  ])
1467
1470
  ])
1468
1471
  ]),
1469
- d.$slots.footer ? (s(), i("div", Oe, [
1470
- A(d.$slots, "footer", {}, void 0, !0)
1471
- ])) : u("", !0)
1472
+ u.$slots.footer ? (n(), s("div", We, [
1473
+ C(u.$slots, "footer", {}, void 0, !0)
1474
+ ])) : f("", !0)
1472
1475
  ], 6));
1473
1476
  }
1474
- }, Ie = /* @__PURE__ */ et(We, [["__scopeId", "data-v-0c5be433"]]), Xe = { class: "card-progresso__topo flex align-items-start justify-content-between gap-3" }, Ye = {
1477
+ }, Xe = /* @__PURE__ */ et(Ie, [["__scopeId", "data-v-9dc121fd"]]), Ye = { class: "card-progresso__topo flex align-items-start justify-content-between gap-3" }, Je = {
1475
1478
  key: 0,
1476
- class: "card-progresso__legendas flex flex-column"
1477
- }, Je = {
1479
+ class: "nc-legendas-flex flex flex-column"
1480
+ }, Qe = {
1478
1481
  key: 1,
1479
- class: "card-progresso__actions inline-flex align-items-center gap-2"
1480
- }, Qe = ["innerHTML"], Ue = {
1482
+ class: "nc-actions inline-flex align-items-center gap-2"
1483
+ }, Ue = ["innerHTML"], Ge = {
1481
1484
  key: 0,
1482
1485
  class: "card-progresso__titulos mt-3 mb-2 flex flex-column"
1483
- }, Ge = { class: "card-progresso__corpo flex align-items-center gap-4 flex-wrap" }, Ze = {
1486
+ }, Ze = { class: "card-progresso__corpo flex align-items-center gap-4 flex-wrap" }, Ke = {
1484
1487
  key: 0,
1485
1488
  class: "card-progresso__chart-wrap flex align-items-center justify-content-center"
1486
- }, Ke = { class: "card-progresso__chart" }, ta = { class: "card-progresso__centro flex flex-column align-items-center justify-content-center" }, ea = { class: "card-progresso__lista flex flex-column" }, aa = { class: "card-progresso__item-cab flex align-items-center justify-content-between" }, oa = {
1489
+ }, _e = { class: "card-progresso__chart" }, to = { class: "nc-centro flex flex-column align-items-center justify-content-center" }, eo = { class: "card-progresso__lista flex flex-column" }, oo = { class: "card-progresso__item-cab flex align-items-center justify-content-between" }, ao = {
1487
1490
  key: 1,
1488
1491
  class: "card-progresso__footer mt-3"
1489
- }, ra = {
1492
+ }, ro = {
1490
1493
  __name: "CardProgresso",
1491
1494
  props: {
1492
1495
  legenda: { type: String, default: null },
@@ -1504,6 +1507,7 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1504
1507
  default: () => ["#3B82F6", "#10B981", "#F59E0B", "#EF4444", "#8B5CF6", "#06B6D4", "#EC4899"]
1505
1508
  },
1506
1509
  corDetalhes: { type: String, default: "#3B82F6" },
1510
+ corExcesso: { type: String, default: "#EF4444" },
1507
1511
  textoBotao: { type: String, default: "Ver mais" },
1508
1512
  botaoVisivel: { type: Boolean, default: !1 },
1509
1513
  direcao: {
@@ -1543,31 +1547,41 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1543
1547
  nomeArquivoExport: { type: String, default: "card-progresso.png" }
1544
1548
  },
1545
1549
  emits: ["botaoAcao", "exportado"],
1546
- setup(t, { emit: x }) {
1547
- const a = t, f = x, { palette: e, cardStyle: w } = nt(a), { formatar: $ } = ut(a), z = tt(null), J = it;
1548
- async function G() {
1549
- await st(z.value, {
1550
- nomeArquivo: a.nomeArquivoExport,
1551
- corFundo: e.value.bg !== "transparent" ? e.value.bg : null
1552
- }), f("exportado");
1550
+ setup(t, { emit: v }) {
1551
+ const e = t, g = v, { palette: o, cardStyle: R } = nt(e), { formatar: S } = ut(e), j = tt(null), Q = it;
1552
+ async function Z() {
1553
+ await st(j.value, {
1554
+ nomeArquivo: e.nomeArquivoExport,
1555
+ corFundo: o.value.bg !== "transparent" ? o.value.bg : null
1556
+ }), g("exportado");
1553
1557
  }
1554
- const F = R(() => `card-progresso--${a.direcao}`), D = R(
1555
- () => a.data.map((o, h) => {
1556
- const c = Number(o.meta ?? a.metaPadrao) || 0, C = Number(o.quantidade) || 0, r = o.cor || a.cores[h % a.cores.length], p = c > 0 ? Math.max(0, Math.min(100, C / c * 100)) : 0;
1557
- return { rotulo: o.rotulo, quantidade: C, meta: c, cor: r, percentual: p };
1558
+ const T = w(() => `card-progresso--${e.direcao}`), E = w(
1559
+ () => e.data.map((i, c) => {
1560
+ const h = Number(i.meta ?? e.metaPadrao) || 0, a = Number(i.quantidade) || 0, m = i.cor || e.cores[c % e.cores.length], l = i.modo === "reducao";
1561
+ let p;
1562
+ if (l) {
1563
+ const b = Number(i.valor_referencia) || 0, q = b - h;
1564
+ p = q > 0 ? Math.max(0, Math.min(100, (b - a) / q * 100)) : 0;
1565
+ } else
1566
+ p = h > 0 ? Math.max(0, Math.min(100, a / h * 100)) : 0;
1567
+ return { rotulo: i.rotulo, quantidade: a, meta: h, valorReferencia: i.valor_referencia ?? null, cor: m, percentual: p, reducao: l };
1558
1568
  })
1559
- ), I = R(
1560
- () => typeof a.alturaBarra == "number" ? `${a.alturaBarra}px` : a.alturaBarra
1561
- ), W = R(
1562
- () => typeof a.raioBarra == "number" ? `${a.raioBarra}px` : a.raioBarra
1563
- ), K = R(() => D.value.reduce((o, h) => o + h.quantidade, 0)), Z = R(() => D.value.reduce((o, h) => o + h.meta, 0)), d = R(() => Z.value <= 0 ? 0 : Math.max(0, Math.min(100, K.value / Z.value * 100))), E = R(() => {
1564
- const o = Math.max(0, 100 - d.value), h = a.corDetalhes;
1569
+ ), X = w(
1570
+ () => typeof e.alturaBarra == "number" ? `${e.alturaBarra}px` : e.alturaBarra
1571
+ ), I = w(
1572
+ () => typeof e.raioBarra == "number" ? `${e.raioBarra}px` : e.raioBarra
1573
+ ), K = w(() => E.value.reduce((i, c) => i + c.quantidade, 0)), _ = w(() => E.value.reduce((i, c) => i + c.meta, 0)), u = w(() => {
1574
+ if (!E.value.length) return 0;
1575
+ const i = E.value.reduce((c, h) => c + h.meta, 0);
1576
+ return i <= 0 ? 0 : E.value.reduce((c, h) => c + h.percentual * h.meta, 0) / i;
1577
+ }), F = w(() => E.value.every((i) => i.reducao)), H = w(() => {
1578
+ const i = Math.min(u.value, 100), c = Math.max(0, 100 - i), h = F.value ? e.corExcesso : e.corDetalhes;
1565
1579
  return {
1566
1580
  labels: ["Progresso", "Restante"],
1567
1581
  datasets: [
1568
1582
  {
1569
- data: [d.value, o],
1570
- backgroundColor: [h, M(e.value.muted, 0.15)],
1583
+ data: [i, c],
1584
+ backgroundColor: [h, D(o.value.muted, 0.15)],
1571
1585
  borderWidth: 0,
1572
1586
  borderColor: "transparent",
1573
1587
  hoverOffset: 0,
@@ -1575,10 +1589,10 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1575
1589
  }
1576
1590
  ]
1577
1591
  };
1578
- }), L = R(() => ({
1592
+ }), Y = w(() => ({
1579
1593
  responsive: !0,
1580
1594
  maintainAspectRatio: !1,
1581
- cutout: a.cutout,
1595
+ cutout: e.cutout,
1582
1596
  rotation: -90,
1583
1597
  circumference: 360,
1584
1598
  layout: { padding: 4 },
@@ -1587,165 +1601,174 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1587
1601
  tooltip: { enabled: !1 }
1588
1602
  }
1589
1603
  }));
1590
- function X() {
1591
- f("botaoAcao");
1604
+ function d() {
1605
+ g("botaoAcao");
1592
1606
  }
1593
- return (o, h) => (s(), i("div", {
1607
+ return (i, c) => (n(), s("div", {
1594
1608
  ref_key: "cardRef",
1595
- ref: z,
1596
- class: rt(["card-progresso p-4 flex flex-column", F.value]),
1597
- style: y(l(w))
1609
+ ref: j,
1610
+ class: rt(["card-progresso p-4 flex flex-column", T.value]),
1611
+ style: y(r(R))
1598
1612
  }, [
1599
- b("div", Xe, [
1600
- o.$slots.legenda || t.legenda || o.$slots.sublegenda || t.sublegenda ? (s(), i("div", Ye, [
1601
- o.$slots.legenda || t.legenda ? (s(), i("div", {
1613
+ x("div", Ye, [
1614
+ i.$slots.legenda || t.legenda || i.$slots.sublegenda || t.sublegenda ? (n(), s("div", Je, [
1615
+ i.$slots.legenda || t.legenda ? (n(), s("div", {
1602
1616
  key: 0,
1603
1617
  class: "text-xs font-medium",
1604
- style: y({ color: l(e).text, opacity: 0.95 })
1618
+ style: y({ color: r(o).text, opacity: 0.95 })
1605
1619
  }, [
1606
- A(o.$slots, "legenda", {}, () => [
1607
- _(v(t.legenda), 1)
1620
+ C(i.$slots, "legenda", {}, () => [
1621
+ O($(t.legenda), 1)
1608
1622
  ], !0)
1609
- ], 4)) : u("", !0),
1610
- o.$slots.sublegenda || t.sublegenda ? (s(), i("div", {
1623
+ ], 4)) : f("", !0),
1624
+ i.$slots.sublegenda || t.sublegenda ? (n(), s("div", {
1611
1625
  key: 1,
1612
1626
  class: "text-xs",
1613
- style: y({ color: l(e).muted })
1627
+ style: y({ color: r(o).muted })
1614
1628
  }, [
1615
- A(o.$slots, "sublegenda", {}, () => [
1616
- _(v(t.sublegenda), 1)
1629
+ C(i.$slots, "sublegenda", {}, () => [
1630
+ O($(t.sublegenda), 1)
1617
1631
  ], !0)
1618
- ], 4)) : u("", !0)
1619
- ])) : u("", !0),
1620
- o.$slots.actions || t.botaoVisivel || t.exportar ? (s(), i("div", Je, [
1621
- A(o.$slots, "actions", {}, () => [
1622
- t.botaoVisivel ? (s(), i("button", {
1632
+ ], 4)) : f("", !0)
1633
+ ])) : f("", !0),
1634
+ i.$slots.actions || t.botaoVisivel || t.exportar ? (n(), s("div", Qe, [
1635
+ C(i.$slots, "actions", {}, () => [
1636
+ t.botaoVisivel ? (n(), s("button", {
1623
1637
  key: 0,
1624
- class: "card-progresso__btn inline-flex align-items-center",
1625
- style: y({ color: l(e).text, borderColor: l(M)(l(e).text, 0.18) }),
1626
- onClick: X
1638
+ class: "nc-btn inline-flex align-items-center",
1639
+ style: y({ color: r(o).text, borderColor: r(D)(r(o).text, 0.18) }),
1640
+ onClick: d
1627
1641
  }, [
1628
- b("span", null, v(t.textoBotao), 1)
1629
- ], 4)) : u("", !0)
1642
+ x("span", null, $(t.textoBotao), 1)
1643
+ ], 4)) : f("", !0)
1630
1644
  ], !0),
1631
- t.exportar ? (s(), i("button", {
1645
+ t.exportar ? (n(), s("button", {
1632
1646
  key: 0,
1633
1647
  type: "button",
1634
- class: "card-progresso__exportar inline-flex align-items-center justify-content-center",
1635
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).text, 0.18) }),
1648
+ class: "nc-exportar inline-flex align-items-center justify-content-center",
1649
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).text, 0.18) }),
1636
1650
  title: "Exportar como imagem",
1637
1651
  "aria-label": "Exportar como imagem",
1638
- onClick: G,
1639
- innerHTML: l(J)
1640
- }, null, 12, Qe)) : u("", !0)
1641
- ])) : u("", !0)
1652
+ onClick: Z,
1653
+ innerHTML: r(Q)
1654
+ }, null, 12, Ue)) : f("", !0)
1655
+ ])) : f("", !0)
1642
1656
  ]),
1643
- o.$slots.titulo || t.titulo || o.$slots.descricao || t.descricao ? (s(), i("div", Ue, [
1644
- o.$slots.titulo || t.titulo ? (s(), i("div", {
1657
+ i.$slots.titulo || t.titulo || i.$slots.descricao || t.descricao ? (n(), s("div", Ge, [
1658
+ i.$slots.titulo || t.titulo ? (n(), s("div", {
1645
1659
  key: 0,
1646
1660
  class: "m-0 text-3xl font-semibold",
1647
- style: y({ color: l(e).text, lineHeight: "33px", letterSpacing: "-1px" })
1661
+ style: y({ color: r(o).text, lineHeight: "33px", letterSpacing: "-1px" })
1648
1662
  }, [
1649
- A(o.$slots, "titulo", {}, () => [
1650
- _(v(t.titulo), 1)
1663
+ C(i.$slots, "titulo", {}, () => [
1664
+ O($(t.titulo), 1)
1651
1665
  ], !0)
1652
- ], 4)) : u("", !0),
1653
- o.$slots.descricao || t.descricao ? (s(), i("div", {
1666
+ ], 4)) : f("", !0),
1667
+ i.$slots.descricao || t.descricao ? (n(), s("div", {
1654
1668
  key: 1,
1655
1669
  class: "text-sm mt-1",
1656
- style: y({ color: l(e).muted })
1670
+ style: y({ color: r(o).muted })
1657
1671
  }, [
1658
- A(o.$slots, "descricao", {}, () => [
1659
- _(v(t.descricao), 1)
1672
+ C(i.$slots, "descricao", {}, () => [
1673
+ O($(t.descricao), 1)
1660
1674
  ], !0)
1661
- ], 4)) : u("", !0)
1662
- ])) : u("", !0),
1663
- b("div", Ge, [
1664
- t.formato === "circular" ? (s(), i("div", Ze, [
1665
- b("div", Ke, [
1675
+ ], 4)) : f("", !0)
1676
+ ])) : f("", !0),
1677
+ x("div", Ze, [
1678
+ t.formato === "circular" ? (n(), s("div", Ke, [
1679
+ x("div", _e, [
1666
1680
  dt(lt, {
1667
1681
  type: "doughnut",
1668
- data: E.value,
1669
- options: L.value,
1682
+ data: H.value,
1683
+ options: Y.value,
1670
1684
  height: t.height
1671
1685
  }, null, 8, ["data", "options", "height"]),
1672
- b("div", ta, [
1673
- b("div", {
1674
- class: "card-progresso__centro-valor",
1675
- style: y({ color: l(e).text })
1676
- }, v(Math.round(d.value)) + "% ", 5),
1677
- b("div", {
1678
- class: "card-progresso__centro-desc",
1679
- style: y({ color: l(e).muted })
1680
- }, v(l($)(K.value)) + " / " + v(l($)(Z.value)), 5)
1686
+ x("div", to, [
1687
+ x("div", {
1688
+ class: "nc-centro-titulo",
1689
+ style: y({ color: F.value ? e.corExcesso : r(o).text })
1690
+ }, $(Math.round(u.value)) + "% ", 5),
1691
+ x("div", {
1692
+ class: "nc-centro-desc",
1693
+ style: y({ color: r(o).muted })
1694
+ }, $(r(S)(K.value)) + " / " + $(r(S)(_.value)), 5)
1681
1695
  ])
1682
1696
  ])
1683
- ])) : u("", !0),
1684
- b("div", ea, [
1685
- (s(!0), i(pt, null, yt(D.value, (c, C) => (s(), i("div", {
1686
- key: C,
1697
+ ])) : f("", !0),
1698
+ x("div", eo, [
1699
+ (n(!0), s(pt, null, yt(E.value, (h, a) => (n(), s("div", {
1700
+ key: a,
1687
1701
  class: "card-progresso__item flex flex-column"
1688
1702
  }, [
1689
- b("div", aa, [
1690
- b("span", {
1703
+ x("div", oo, [
1704
+ x("span", {
1691
1705
  class: "card-progresso__item-rotulo inline-flex align-items-center gap-2",
1692
- style: y({ color: l(e).text })
1706
+ style: y({ color: r(o).text })
1693
1707
  }, [
1694
- b("span", {
1695
- class: "card-progresso__bolinha",
1696
- style: y({ background: c.cor })
1708
+ x("span", {
1709
+ class: "nc-bolinha",
1710
+ style: y({ background: h.cor })
1697
1711
  }, null, 4),
1698
- b("span", null, v(c.rotulo), 1)
1712
+ x("span", null, $(h.rotulo), 1)
1699
1713
  ], 4),
1700
- t.mostrarValor || t.mostrarPercentual ? (s(), i("span", {
1714
+ t.mostrarValor || t.mostrarPercentual ? (n(), s("span", {
1701
1715
  key: 0,
1702
1716
  class: "card-progresso__item-valor inline-flex align-items-baseline gap-2",
1703
- style: y({ color: l(e).text })
1717
+ style: y({ color: r(o).text })
1704
1718
  }, [
1705
- t.mostrarValor ? (s(), i(pt, { key: 0 }, [
1706
- _(v(l($)(c.quantidade)), 1),
1707
- c.meta ? (s(), i("span", {
1719
+ t.mostrarValor ? (n(), s(pt, { key: 0 }, [
1720
+ O($(r(S)(h.quantidade)), 1),
1721
+ h.meta ? (n(), s("span", {
1708
1722
  key: 0,
1709
- style: y({ color: l(e).muted })
1710
- }, " / " + v(l($)(c.meta)), 5)) : u("", !0)
1711
- ], 64)) : u("", !0),
1712
- t.mostrarPercentual ? (s(), i("span", {
1723
+ style: y({ color: r(o).muted })
1724
+ }, " / " + $(r(S)(h.meta)), 5)) : f("", !0),
1725
+ h.reducao && h.valorReferencia != null ? (n(), s("span", {
1726
+ key: 1,
1727
+ class: "card-progresso__item-ref",
1728
+ style: y({ color: r(o).muted })
1729
+ }, " (ref: " + $(r(S)(h.valorReferencia)) + ")", 5)) : f("", !0)
1730
+ ], 64)) : f("", !0),
1731
+ t.mostrarPercentual ? (n(), s("span", {
1713
1732
  key: 1,
1714
1733
  class: "card-progresso__item-pct",
1715
- style: y({ color: l(e).muted })
1716
- }, v(Math.round(c.percentual)) + "% ", 5)) : u("", !0)
1717
- ], 4)) : u("", !0)
1734
+ style: y({ color: h.reducao ? e.corExcesso : r(o).muted })
1735
+ }, $(Math.round(h.percentual)) + "% ", 5)) : f("", !0)
1736
+ ], 4)) : f("", !0)
1718
1737
  ]),
1719
- b("div", {
1738
+ x("div", {
1720
1739
  class: "card-progresso__trilha w-full",
1721
- style: y({ height: I.value, borderRadius: W.value, background: l(M)(l(e).muted, 0.15) })
1740
+ style: y({
1741
+ height: X.value,
1742
+ borderRadius: I.value,
1743
+ background: h.reducao ? r(D)(e.corExcesso, 0.18) : r(D)(r(o).muted, 0.15)
1744
+ })
1722
1745
  }, [
1723
- b("div", {
1746
+ x("div", {
1724
1747
  class: "card-progresso__preenchimento",
1725
- style: y({ width: c.percentual + "%", background: c.cor, borderRadius: W.value })
1748
+ style: y({ width: h.percentual + "%", background: h.cor, borderRadius: I.value })
1726
1749
  }, null, 4)
1727
1750
  ], 4)
1728
1751
  ]))), 128))
1729
1752
  ])
1730
1753
  ]),
1731
- o.$slots.footer ? (s(), i("div", oa, [
1732
- A(o.$slots, "footer", {}, void 0, !0)
1733
- ])) : u("", !0)
1754
+ i.$slots.footer ? (n(), s("div", ao, [
1755
+ C(i.$slots, "footer", {}, void 0, !0)
1756
+ ])) : f("", !0)
1734
1757
  ], 6));
1735
1758
  }
1736
- }, la = /* @__PURE__ */ et(ra, [["__scopeId", "data-v-81d4a1fb"]]), na = {
1759
+ }, lo = /* @__PURE__ */ et(ro, [["__scopeId", "data-v-0183d8c4"]]), no = {
1737
1760
  key: 0,
1738
1761
  class: "card-base__topo"
1739
- }, sa = ["innerHTML"], ia = { class: "card-base__legendas flex flex-column" }, ca = {
1762
+ }, so = ["innerHTML"], io = { class: "card-base__legendas flex flex-column" }, co = {
1740
1763
  key: 1,
1741
1764
  class: "card-base__titulos flex flex-column"
1742
- }, da = {
1765
+ }, uo = {
1743
1766
  key: 2,
1744
1767
  class: "card-base__acao flex"
1745
- }, ua = {
1768
+ }, fo = {
1746
1769
  key: 3,
1747
1770
  class: "card-base__footer"
1748
- }, fa = {
1771
+ }, po = {
1749
1772
  __name: "CardBase",
1750
1773
  props: {
1751
1774
  legenda: { type: String, default: null },
@@ -1769,116 +1792,116 @@ const it = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewB
1769
1792
  nomeArquivoExport: { type: String, default: "card-base.png" }
1770
1793
  },
1771
1794
  emits: ["botaoAcao", "exportado"],
1772
- setup(t, { emit: x }) {
1773
- const a = t, f = x, { palette: e, cardStyle: w } = nt(a), $ = tt(null), z = it;
1774
- function J() {
1775
- f("botaoAcao");
1795
+ setup(t, { emit: v }) {
1796
+ const e = t, g = v, { palette: o, cardStyle: R } = nt(e), S = tt(null), j = it;
1797
+ function Q() {
1798
+ g("botaoAcao");
1776
1799
  }
1777
- async function G() {
1778
- await st($.value, {
1779
- nomeArquivo: a.nomeArquivoExport,
1780
- corFundo: e.value.bg !== "transparent" ? e.value.bg : null
1781
- }), f("exportado");
1800
+ async function Z() {
1801
+ await st(S.value, {
1802
+ nomeArquivo: e.nomeArquivoExport,
1803
+ corFundo: o.value.bg !== "transparent" ? o.value.bg : null
1804
+ }), g("exportado");
1782
1805
  }
1783
- return (F, D) => (s(), i("div", {
1806
+ return (T, E) => (n(), s("div", {
1784
1807
  ref_key: "cardRef",
1785
- ref: $,
1808
+ ref: S,
1786
1809
  class: rt(["card-base p-4 flex flex-column", `card-base--${t.alinhamento}`]),
1787
- style: y(l(w))
1810
+ style: y(r(R))
1788
1811
  }, [
1789
- t.exportar ? (s(), i("div", na, [
1790
- b("button", {
1812
+ t.exportar ? (n(), s("div", no, [
1813
+ x("button", {
1791
1814
  type: "button",
1792
- class: "card-base__exportar inline-flex align-items-center justify-content-center",
1793
- style: y({ color: l(e).muted, borderColor: l(M)(l(e).text === "inherit" ? "#0F172A" : l(e).text, 0.18) }),
1815
+ class: "nc-exportar card-base__exportar inline-flex align-items-center justify-content-center",
1816
+ style: y({ color: r(o).muted, borderColor: r(D)(r(o).text === "inherit" ? "#0F172A" : r(o).text, 0.18) }),
1794
1817
  title: "Exportar como imagem",
1795
1818
  "aria-label": "Exportar como imagem",
1796
- onClick: G,
1797
- innerHTML: l(z)
1798
- }, null, 12, sa)
1799
- ])) : u("", !0),
1800
- b("div", ia, [
1801
- F.$slots.legenda || t.legenda ? (s(), i("div", {
1819
+ onClick: Z,
1820
+ innerHTML: r(j)
1821
+ }, null, 12, so)
1822
+ ])) : f("", !0),
1823
+ x("div", io, [
1824
+ T.$slots.legenda || t.legenda ? (n(), s("div", {
1802
1825
  key: 0,
1803
- class: "card-base__legenda text-xs",
1804
- style: y({ color: l(e).text })
1826
+ class: "card-base__legenda font-medium text-xs",
1827
+ style: y({ color: r(o).text })
1805
1828
  }, [
1806
- A(F.$slots, "legenda", {}, () => [
1807
- _(v(t.legenda), 1)
1829
+ C(T.$slots, "legenda", {}, () => [
1830
+ O($(t.legenda), 1)
1808
1831
  ], !0)
1809
- ], 4)) : u("", !0),
1810
- F.$slots.sublegenda || t.sublegenda ? (s(), i("div", {
1832
+ ], 4)) : f("", !0),
1833
+ T.$slots.sublegenda || t.sublegenda ? (n(), s("div", {
1811
1834
  key: 1,
1812
1835
  class: "card-base__sublegenda text-xs",
1813
- style: y({ color: l(e).muted })
1836
+ style: y({ color: r(o).muted })
1814
1837
  }, [
1815
- A(F.$slots, "sublegenda", {}, () => [
1816
- _(v(t.sublegenda), 1)
1838
+ C(T.$slots, "sublegenda", {}, () => [
1839
+ O($(t.sublegenda), 1)
1817
1840
  ], !0)
1818
- ], 4)) : u("", !0)
1841
+ ], 4)) : f("", !0)
1819
1842
  ]),
1820
- F.$slots.titulo || t.titulo || F.$slots.descricao || t.descricao ? (s(), i("div", ca, [
1821
- F.$slots.titulo || t.titulo ? (s(), i("div", {
1843
+ T.$slots.titulo || t.titulo || T.$slots.descricao || t.descricao ? (n(), s("div", co, [
1844
+ T.$slots.titulo || t.titulo ? (n(), s("div", {
1822
1845
  key: 0,
1823
1846
  class: "card-base__titulo m-0 text-3xl font-semibold",
1824
- style: y({ color: l(e).text, lineHeight: "33px", letterSpacing: "-1px" })
1847
+ style: y({ color: r(o).text, lineHeight: "33px", letterSpacing: "-1px" })
1825
1848
  }, [
1826
- A(F.$slots, "titulo", {}, () => [
1827
- _(v(t.titulo), 1)
1849
+ C(T.$slots, "titulo", {}, () => [
1850
+ O($(t.titulo), 1)
1828
1851
  ], !0)
1829
- ], 4)) : u("", !0),
1830
- F.$slots.descricao || t.descricao ? (s(), i("div", {
1852
+ ], 4)) : f("", !0),
1853
+ T.$slots.descricao || t.descricao ? (n(), s("div", {
1831
1854
  key: 1,
1832
1855
  class: "text-sm",
1833
- style: y({ color: l(e).muted })
1856
+ style: y({ color: r(o).muted })
1834
1857
  }, [
1835
- A(F.$slots, "descricao", {}, () => [
1836
- _(v(t.descricao), 1)
1858
+ C(T.$slots, "descricao", {}, () => [
1859
+ O($(t.descricao), 1)
1837
1860
  ], !0)
1838
- ], 4)) : u("", !0)
1839
- ])) : u("", !0),
1840
- F.$slots.acao || t.botaoVisivel ? (s(), i("div", da, [
1841
- A(F.$slots, "acao", {}, () => [
1842
- t.botaoVisivel ? (s(), i("button", {
1861
+ ], 4)) : f("", !0)
1862
+ ])) : f("", !0),
1863
+ T.$slots.acao || t.botaoVisivel ? (n(), s("div", uo, [
1864
+ C(T.$slots, "acao", {}, () => [
1865
+ t.botaoVisivel ? (n(), s("button", {
1843
1866
  key: 0,
1844
1867
  type: "button",
1845
1868
  class: "card-base__link text-xs inline-flex align-items-center",
1846
- style: y({ color: l(e).text }),
1847
- onClick: J
1869
+ style: y({ color: r(o).text }),
1870
+ onClick: Q
1848
1871
  }, [
1849
- b("span", null, v(t.textoBotao), 1),
1850
- D[0] || (D[0] = b("span", {
1872
+ x("span", null, $(t.textoBotao), 1),
1873
+ E[0] || (E[0] = x("span", {
1851
1874
  class: "card-base__chevron",
1852
1875
  "aria-hidden": "true"
1853
1876
  }, "›", -1))
1854
- ], 4)) : u("", !0)
1877
+ ], 4)) : f("", !0)
1855
1878
  ], !0)
1856
- ])) : u("", !0),
1857
- F.$slots.footer ? (s(), i("div", ua, [
1858
- A(F.$slots, "footer", {}, void 0, !0)
1859
- ])) : u("", !0)
1879
+ ])) : f("", !0),
1880
+ T.$slots.footer ? (n(), s("div", fo, [
1881
+ C(T.$slots, "footer", {}, void 0, !0)
1882
+ ])) : f("", !0)
1860
1883
  ], 6));
1861
1884
  }
1862
- }, pa = /* @__PURE__ */ et(fa, [["__scopeId", "data-v-9fab1924"]]), ma = {
1885
+ }, go = /* @__PURE__ */ et(po, [["__scopeId", "data-v-95d52049"]]), bo = {
1863
1886
  install(t) {
1864
- t.component("ChartBase", lt), t.component("CardBase", pa), t.component("CardLinhas", le), t.component("CardPizza", ve), t.component("CardBarra", Ee), t.component("CardPolar", Ie), t.component("CardProgresso", la);
1887
+ t.component("ChartBase", lt), t.component("CardBase", go), t.component("CardLinhas", le), t.component("CardPizza", ve), t.component("CardBarra", Fe), t.component("CardPolar", Xe), t.component("CardProgresso", lo);
1865
1888
  }
1866
1889
  };
1867
1890
  export {
1868
- Ee as CardBarra,
1869
- pa as CardBase,
1891
+ Fe as CardBarra,
1892
+ go as CardBase,
1870
1893
  le as CardLinhas,
1871
1894
  ve as CardPizza,
1872
- Ie as CardPolar,
1873
- la as CardProgresso,
1895
+ Xe as CardPolar,
1896
+ lo as CardProgresso,
1874
1897
  lt as ChartBase,
1875
1898
  it as ICONE_EXPORTAR_SVG,
1876
- ot as clampHorizontal,
1899
+ at as clampHorizontal,
1877
1900
  gt as criarTooltipEl,
1878
- ma as default,
1901
+ bo as default,
1879
1902
  st as exportarElementoComoImagem,
1880
- at as prepararTooltipParent,
1881
- M as toRgba,
1903
+ ot as prepararTooltipParent,
1904
+ D as toRgba,
1882
1905
  ut as useFormatadorValor,
1883
1906
  nt as useTema
1884
1907
  };