@vector-business-services/cristal-ds-web 0.10.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,12 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- var autocomplete = require('primereact/autocomplete');
4
+ var accordion = require('primereact/accordion');
5
5
  var react$1 = require('@phosphor-icons/react');
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
+ var autocomplete = require('primereact/autocomplete');
7
8
  var badge = require('primereact/badge');
8
9
  var button = require('primereact/button');
9
10
  var card = require('primereact/card');
11
+ var chart = require('primereact/chart');
12
+ var tooltip = require('primereact/tooltip');
10
13
  var checkbox = require('primereact/checkbox');
11
14
  var chip = require('primereact/chip');
12
15
  var divider = require('primereact/divider');
@@ -16,7 +19,6 @@ var api = require('primereact/api');
16
19
  var menu = require('primereact/menu');
17
20
  var menubar = require('primereact/menubar');
18
21
  var avatar = require('primereact/avatar');
19
- var tooltip = require('primereact/tooltip');
20
22
  var tag = require('primereact/tag');
21
23
  var message = require('primereact/message');
22
24
  var dialog = require('primereact/dialog');
@@ -32,7 +34,60 @@ var inputswitch = require('primereact/inputswitch');
32
34
  var tabview = require('primereact/tabview');
33
35
  var toast = require('primereact/toast');
34
36
 
35
- // src/components/AutoComplete/AutoComplete.tsx
37
+ // src/components/Accordion/Accordion.tsx
38
+ function AccordionTab(_props) {
39
+ return null;
40
+ }
41
+ var seta = (icon) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: "cr-accordion__toggle", "aria-hidden": "true", children: icon });
42
+ var Accordion = react.forwardRef(function Accordion2({ multiple = false, activeIndex, onTabChange, children, id, className }, ref) {
43
+ const primeRef = react.useRef(null);
44
+ react.useImperativeHandle(ref, () => primeRef.current?.getElement());
45
+ const [interno, setInterno] = react.useState(multiple ? [0] : 0);
46
+ const abertos = activeIndex === void 0 ? interno : activeIndex;
47
+ const tabs = react.Children.toArray(children).filter(
48
+ (child) => react.isValidElement(child)
49
+ );
50
+ return /* @__PURE__ */ jsxRuntime.jsx(
51
+ accordion.Accordion,
52
+ {
53
+ ...{ unstyled: true },
54
+ ref: primeRef,
55
+ id,
56
+ multiple,
57
+ activeIndex: abertos,
58
+ onTabChange: (event) => {
59
+ const index = event.index;
60
+ setInterno(index);
61
+ onTabChange?.(index);
62
+ },
63
+ expandIcon: seta(/* @__PURE__ */ jsxRuntime.jsx(react$1.CaretDown, {})),
64
+ collapseIcon: seta(/* @__PURE__ */ jsxRuntime.jsx(react$1.CaretUp, {})),
65
+ pt: { root: { className: ["cr-accordion", className].filter(Boolean).join(" ") } },
66
+ children: tabs.map((tab, index) => /* @__PURE__ */ jsxRuntime.jsx(
67
+ accordion.AccordionTab,
68
+ {
69
+ header: tab.props.header,
70
+ disabled: tab.props.disabled,
71
+ headerTemplate: tab.props.headerContent ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "cr-accordion__custom", children: tab.props.headerContent }) : /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "cr-accordion__texts", children: [
72
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "cr-accordion__title", children: tab.props.header }),
73
+ tab.props.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "cr-accordion__description", children: tab.props.description })
74
+ ] }),
75
+ pt: {
76
+ root: { className: "cr-accordion__item" },
77
+ header: { className: "cr-accordion__header" },
78
+ headerAction: { className: "cr-accordion__action" },
79
+ toggleableContent: { className: "cr-accordion__region" },
80
+ content: { className: "cr-accordion__content" },
81
+ // Sem animação: o Prime manteria o conteúdo na tela pelos 450ms da saída dele.
82
+ transition: { timeout: 0 }
83
+ },
84
+ children: tab.props.children
85
+ },
86
+ tab.key ?? index
87
+ ))
88
+ }
89
+ );
90
+ });
36
91
  var AutoComplete = react.forwardRef(function AutoComplete2({
37
92
  variant = "outline",
38
93
  size = "large",
@@ -156,6 +211,311 @@ var Card = react.forwardRef(function Card2({ padding = "xsmall", outline = false
156
211
  }
157
212
  );
158
213
  });
214
+ var resolveTargets = (target) => {
215
+ if (typeof target === "string") return Array.from(document.querySelectorAll(target));
216
+ if (target instanceof HTMLElement) return [target];
217
+ return target.current ? [target.current] : [];
218
+ };
219
+ function Tooltip({
220
+ target,
221
+ content,
222
+ type = "plain",
223
+ position = "bottom",
224
+ event = "both",
225
+ showDelay,
226
+ hideDelay,
227
+ disabled,
228
+ id,
229
+ className
230
+ }) {
231
+ const autoId = react.useId();
232
+ const tooltipId = id ?? autoId;
233
+ react.useEffect(() => {
234
+ const elements = resolveTargets(target);
235
+ elements.forEach((element) => element.setAttribute("aria-describedby", tooltipId));
236
+ return () => elements.forEach((element) => element.removeAttribute("aria-describedby"));
237
+ }, [target, tooltipId]);
238
+ const classes = ["cr-tooltip", `cr-tooltip--${type}`, className].filter(Boolean).join(" ");
239
+ const pt = {
240
+ root: (options) => {
241
+ const side = options?.state?.position ?? position;
242
+ return { className: `${classes} cr-tooltip--${side}`, "aria-hidden": false };
243
+ },
244
+ arrow: { className: "cr-tooltip__arrow" },
245
+ text: { className: "cr-tooltip__text" }
246
+ };
247
+ return /* @__PURE__ */ jsxRuntime.jsx(
248
+ tooltip.Tooltip,
249
+ {
250
+ unstyled: true,
251
+ id: tooltipId,
252
+ target,
253
+ position,
254
+ event,
255
+ showDelay,
256
+ hideDelay,
257
+ disabled,
258
+ pt,
259
+ children: content
260
+ }
261
+ );
262
+ }
263
+ var CORES = ["primary", "secondary", "tertiary", "quaternary"];
264
+ var corDe = (serie, indice) => serie.color ?? CORES[indice % CORES.length];
265
+ var tomDe = (serie, tipo) => serie.tone ?? (tipo === "bar" ? 500 : 600);
266
+ var lerTema = (el) => {
267
+ const css = getComputedStyle(el);
268
+ const v = (nome) => css.getPropertyValue(nome).trim();
269
+ const px = (nome) => parseFloat(v(nome));
270
+ return {
271
+ cor: (cor, tom) => v(`--cr-color-chart-fill-${cor}-${tom}`),
272
+ grade: v("--cr-color-chart-tertiary"),
273
+ texto: v("--cr-color-chart-secondary"),
274
+ cruz: v("--cr-color-stroke-neutral-bold"),
275
+ superficie: v("--cr-color-fill-neutral-container"),
276
+ tooltipFundo: v("--cr-color-fill-neutral-boldest"),
277
+ tooltipTexto: v("--cr-color-text-inverse-base"),
278
+ fonte: {
279
+ family: v("--cr-typography-label-small-10-semibold-font-family"),
280
+ size: px("--cr-typography-label-small-10-semibold-font-size"),
281
+ weight: Number(v("--cr-typography-label-small-10-semibold-font-weight")),
282
+ lineHeight: px("--cr-typography-label-small-10-semibold-line-height") / px("--cr-typography-label-small-10-semibold-font-size")
283
+ }
284
+ };
285
+ };
286
+ var comAlfa = (hex, alfa) => {
287
+ const n = parseInt(hex.replace("#", ""), 16);
288
+ return `rgba(${n >> 16 & 255}, ${n >> 8 & 255}, ${n & 255}, ${alfa})`;
289
+ };
290
+ var cruz = (cor) => ({
291
+ id: "crCruz",
292
+ afterDatasetsDraw(chart) {
293
+ const ativo = chart.tooltip?.getActiveElements()[0];
294
+ if (!ativo) return;
295
+ const { ctx, chartArea } = chart;
296
+ ctx.save();
297
+ ctx.strokeStyle = cor;
298
+ ctx.lineWidth = 1;
299
+ ctx.beginPath();
300
+ ctx.moveTo(ativo.element.x, chartArea.top);
301
+ ctx.lineTo(ativo.element.x, chartArea.bottom);
302
+ ctx.stroke();
303
+ ctx.restore();
304
+ }
305
+ });
306
+ var curvaDoFigma = {
307
+ id: "crCurva",
308
+ beforeDatasetsDraw(chart) {
309
+ chart.data.datasets.forEach((_, indice) => {
310
+ const meta = chart.getDatasetMeta(indice);
311
+ const pontos = meta.data;
312
+ pontos.forEach((ponto, i) => {
313
+ const antes = pontos[i - 1];
314
+ const depois = pontos[i + 1];
315
+ ponto.cp1x = antes ? (antes.x + ponto.x) / 2 : ponto.x;
316
+ ponto.cp2x = depois ? (ponto.x + depois.x) / 2 : ponto.x;
317
+ ponto.cp1y = ponto.y;
318
+ ponto.cp2y = ponto.y;
319
+ });
320
+ if (meta.dataset)
321
+ meta.dataset._pointsUpdated = true;
322
+ });
323
+ }
324
+ };
325
+ var formatar = (eixo, valor) => eixo?.format ? eixo.format(valor) : String(valor);
326
+ function Chart({
327
+ type = "line",
328
+ stacked = false,
329
+ labels,
330
+ series,
331
+ yAxis,
332
+ y2Axis,
333
+ title,
334
+ help,
335
+ helpLabel = "Ajuda",
336
+ actions,
337
+ height = 266,
338
+ id,
339
+ className
340
+ }) {
341
+ const raiz = react.useRef(null);
342
+ const ajuda = react.useRef(null);
343
+ const [tema, setTema] = react.useState();
344
+ react.useLayoutEffect(() => {
345
+ if (raiz.current) setTema(lerTema(raiz.current));
346
+ }, []);
347
+ const temDireita = series.some((s) => s.axis === "right");
348
+ const data = react.useMemo(() => {
349
+ if (!tema) return void 0;
350
+ return {
351
+ labels,
352
+ datasets: series.map((s, i) => {
353
+ const cor = tema.cor(corDe(s, i), tomDe(s, type));
354
+ if (type === "bar") {
355
+ const topo = !stacked || i === series.length - 1;
356
+ return {
357
+ type: "bar",
358
+ label: s.label,
359
+ data: s.data,
360
+ yAxisID: s.axis === "right" ? "y2" : "y",
361
+ backgroundColor: cor,
362
+ hoverBackgroundColor: cor,
363
+ barThickness: 10,
364
+ borderSkipped: false,
365
+ borderRadius: topo ? { topLeft: 2, topRight: 2, bottomLeft: 0, bottomRight: 0 } : 0
366
+ };
367
+ }
368
+ return {
369
+ type: "line",
370
+ label: s.label,
371
+ data: s.data,
372
+ yAxisID: s.axis === "right" ? "y2" : "y",
373
+ borderColor: cor,
374
+ borderWidth: 2,
375
+ tension: 0.4,
376
+ pointRadius: 0,
377
+ pointHoverRadius: 4,
378
+ pointHoverBorderWidth: 2,
379
+ pointHoverBorderColor: tema.superficie,
380
+ pointHoverBackgroundColor: cor,
381
+ fill: "origin",
382
+ backgroundColor: (ctx) => {
383
+ const area = ctx.chart.chartArea;
384
+ if (!area) return comAlfa(cor, 0.1);
385
+ const degrade = ctx.chart.ctx.createLinearGradient(0, area.top, 0, area.bottom);
386
+ degrade.addColorStop(0, comAlfa(cor, 0.1));
387
+ degrade.addColorStop(1, comAlfa(cor, 0.02));
388
+ return degrade;
389
+ }
390
+ };
391
+ })
392
+ };
393
+ }, [tema, labels, series, type, stacked]);
394
+ const options = react.useMemo(() => {
395
+ if (!tema) return void 0;
396
+ const fonte = { ...tema.fonte, weight: tema.fonte.weight };
397
+ const eixoY = (eixo, direita) => ({
398
+ position: direita ? "right" : "left",
399
+ stacked,
400
+ min: eixo?.min ?? 0,
401
+ max: eixo?.max,
402
+ // A grade tracejada do Figma (2px e 2px): no Chart.js 4, o tracejado fica em border.dash.
403
+ border: { display: false, dash: [2, 2] },
404
+ grid: direita ? { drawOnChartArea: false, drawTicks: false } : { color: tema.grade, lineWidth: 1, drawTicks: false },
405
+ ticks: {
406
+ color: tema.texto,
407
+ font: fonte,
408
+ padding: 8,
409
+ stepSize: eixo?.stepSize,
410
+ callback: (valor) => formatar(eixo, Number(valor))
411
+ }
412
+ });
413
+ return {
414
+ responsive: true,
415
+ maintainAspectRatio: false,
416
+ animation: false,
417
+ interaction: { mode: "index", intersect: false },
418
+ layout: { padding: { top: 8 } },
419
+ scales: {
420
+ x: {
421
+ stacked,
422
+ border: { display: false },
423
+ grid: { display: false },
424
+ // Os rótulos só somem quando não cabem (como no Figma, as 24 horas cabem em 638px).
425
+ ticks: { color: tema.texto, font: fonte, maxRotation: 0, padding: 8, autoSkipPadding: 2 }
426
+ },
427
+ y: eixoY(yAxis, false),
428
+ ...temDireita ? { y2: eixoY(y2Axis, true) } : {}
429
+ },
430
+ plugins: {
431
+ legend: { display: false },
432
+ tooltip: {
433
+ backgroundColor: tema.tooltipFundo,
434
+ titleColor: tema.tooltipTexto,
435
+ bodyColor: tema.tooltipTexto,
436
+ titleFont: fonte,
437
+ bodyFont: { ...fonte, weight: 400 },
438
+ padding: { x: 12, y: 8 },
439
+ cornerRadius: 8,
440
+ usePointStyle: true,
441
+ boxWidth: 8,
442
+ boxHeight: type === "bar" ? 8 : 2,
443
+ callbacks: {
444
+ label: (item) => {
445
+ const s = series[item.datasetIndex];
446
+ const eixo = s.axis === "right" ? y2Axis : yAxis;
447
+ return `${formatar(eixo, item.parsed.y ?? 0)} ${s.label}`;
448
+ },
449
+ labelPointStyle: () => ({ pointStyle: type === "bar" ? "rect" : "line", rotation: 0 })
450
+ }
451
+ }
452
+ }
453
+ };
454
+ }, [tema, yAxis, y2Axis, temDireita, series, type, stacked]);
455
+ const card = Boolean(title || actions);
456
+ const classes = ["cr-chart", card && "cr-chart--card", className].filter(Boolean).join(" ");
457
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: raiz, id, className: classes, children: [
458
+ card && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "cr-chart__header", children: [
459
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "cr-chart__title-row", children: [
460
+ title && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "cr-chart__title", children: title }),
461
+ help && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
462
+ /* @__PURE__ */ jsxRuntime.jsx("button", { ref: ajuda, type: "button", className: "cr-chart__help", "aria-label": helpLabel, children: /* @__PURE__ */ jsxRuntime.jsx(react$1.Question, { "aria-hidden": "true" }) }),
463
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip, { target: ajuda, content: help, type: "rich" })
464
+ ] })
465
+ ] }),
466
+ actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "cr-chart__actions", children: actions })
467
+ ] }),
468
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "cr-chart__body", children: [
469
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "cr-chart__plot", style: { height }, children: data && options && /* @__PURE__ */ jsxRuntime.jsx(
470
+ chart.Chart,
471
+ {
472
+ type,
473
+ data,
474
+ options,
475
+ plugins: type === "line" ? [curvaDoFigma, cruz(tema.cruz)] : [],
476
+ width: "100%",
477
+ height: "100%",
478
+ pt: {
479
+ root: { className: "cr-chart__canvas-wrap" },
480
+ canvas: {
481
+ role: "img",
482
+ "aria-label": title ?? series.map((s) => s.label).join(", ")
483
+ }
484
+ }
485
+ },
486
+ type
487
+ ) }),
488
+ series.length > 1 && /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "cr-chart__legend", children: series.map((s, i) => /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "cr-chart__legend-item", children: [
489
+ /* @__PURE__ */ jsxRuntime.jsx(
490
+ "span",
491
+ {
492
+ className: "cr-chart__swatch",
493
+ style: {
494
+ backgroundColor: `var(--cr-color-chart-fill-${corDe(s, i)}-${tomDe(s, type)})`
495
+ },
496
+ "aria-hidden": "true"
497
+ }
498
+ ),
499
+ s.label
500
+ ] }, s.label)) })
501
+ ] }),
502
+ /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "cr-chart__table", children: [
503
+ title && /* @__PURE__ */ jsxRuntime.jsx("caption", { children: title }),
504
+ /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
505
+ /* @__PURE__ */ jsxRuntime.jsx("td", {}),
506
+ series.map((s) => /* @__PURE__ */ jsxRuntime.jsx("th", { scope: "col", children: s.label }, s.label))
507
+ ] }) }),
508
+ /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: labels.map((rotulo, linha) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
509
+ /* @__PURE__ */ jsxRuntime.jsx("th", { scope: "row", children: rotulo }),
510
+ series.map((s) => {
511
+ const valor = s.data[linha];
512
+ const eixo = s.axis === "right" ? y2Axis : yAxis;
513
+ return /* @__PURE__ */ jsxRuntime.jsx("td", { children: valor == null ? "" : formatar(eixo, valor) }, s.label);
514
+ })
515
+ ] }, rotulo)) })
516
+ ] })
517
+ ] });
518
+ }
159
519
  var Checkbox = react.forwardRef(function Checkbox2({
160
520
  label,
161
521
  showLabel = true,
@@ -599,55 +959,6 @@ var Menu = react.forwardRef(function Menu2({
599
959
  );
600
960
  return context ? menu$1 : /* @__PURE__ */ jsxRuntime.jsx(api.PrimeReactProvider, { children: menu$1 });
601
961
  });
602
- var resolveTargets = (target) => {
603
- if (typeof target === "string") return Array.from(document.querySelectorAll(target));
604
- if (target instanceof HTMLElement) return [target];
605
- return target.current ? [target.current] : [];
606
- };
607
- function Tooltip({
608
- target,
609
- content,
610
- type = "plain",
611
- position = "bottom",
612
- event = "both",
613
- showDelay,
614
- hideDelay,
615
- disabled,
616
- id,
617
- className
618
- }) {
619
- const autoId = react.useId();
620
- const tooltipId = id ?? autoId;
621
- react.useEffect(() => {
622
- const elements = resolveTargets(target);
623
- elements.forEach((element) => element.setAttribute("aria-describedby", tooltipId));
624
- return () => elements.forEach((element) => element.removeAttribute("aria-describedby"));
625
- }, [target, tooltipId]);
626
- const classes = ["cr-tooltip", `cr-tooltip--${type}`, className].filter(Boolean).join(" ");
627
- const pt = {
628
- root: (options) => {
629
- const side = options?.state?.position ?? position;
630
- return { className: `${classes} cr-tooltip--${side}`, "aria-hidden": false };
631
- },
632
- arrow: { className: "cr-tooltip__arrow" },
633
- text: { className: "cr-tooltip__text" }
634
- };
635
- return /* @__PURE__ */ jsxRuntime.jsx(
636
- tooltip.Tooltip,
637
- {
638
- unstyled: true,
639
- id: tooltipId,
640
- target,
641
- position,
642
- event,
643
- showDelay,
644
- hideDelay,
645
- disabled,
646
- pt,
647
- children: content
648
- }
649
- );
650
- }
651
962
 
652
963
  // src/components/Menubar/assets/vector-logo-simbolo.svg
653
964
  var vector_logo_simbolo_default = 'data:image/svg+xml,<svg preserveAspectRatio="none" overflow="visible" style="display: block;" width="42.7061" height="20" viewBox="0 0 42.7061 20" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g id="Grupo 2380">%0A<path id="Caminho 1049" d="M26.8782 10.21C26.8393 10.1525 26.7869 10.1055 26.7255 10.0731C26.6642 10.0408 26.5958 10.024 26.5264 10.0244H4.21626C4.14666 10.024 4.07803 10.0408 4.0165 10.0733C3.95497 10.1059 3.90244 10.1531 3.8636 10.2109C3.82535 10.2676 3.80224 10.3333 3.79648 10.4015C3.79072 10.4697 3.80251 10.5383 3.8307 10.6007L7.35895 19.7545C7.39283 19.8281 7.44722 19.8905 7.51559 19.934C7.58397 19.9776 7.66345 20.0005 7.74451 20C7.82641 19.9998 7.90647 19.9758 7.97493 19.9308C8.0434 19.8859 8.09731 19.822 8.13007 19.7469L11.5604 13.47H25.3511C25.4325 13.4705 25.5123 13.4474 25.5809 13.4035C25.6494 13.3596 25.7038 13.2969 25.7375 13.2228L26.9086 10.5964C26.9365 10.5347 26.9484 10.4669 26.9431 10.3993C26.9378 10.3318 26.9154 10.2666 26.8782 10.21V10.21Z" fill="%23C1BFBF"/>%0A<g id="Grupo 2378">%0A<path id="Caminho 1050" d="M26.3926 6.06543L24.0666 19.1424C24.0588 19.2502 24.0736 19.3585 24.1103 19.4602C24.1469 19.5619 24.2045 19.6549 24.2792 19.7329C24.3554 19.813 24.447 19.8767 24.5485 19.9202C24.65 19.9637 24.7593 19.9861 24.8698 19.986H30.4229L29.2578 13.5446L26.3926 6.06543Z" fill="%231545DE"/>%0A<g id="Grupo 2377">%0A<path id="Caminho 1051" d="M42.2783 16.0921H42.0598C42.0303 11.9033 41.8911 10.7668 41.2541 10.086C40.167 9.29536 38.9793 8.65329 37.7225 8.17676C37.1378 7.91016 36.4755 7.60812 36.3684 7.52881C36.1102 7.27149 34.8768 5.05179 34.2145 3.85884C33.9378 3.36107 33.6956 2.92488 33.5311 2.63887C33.166 1.80107 32.5487 1.09795 31.7653 0.627372C30.9818 0.15679 30.0712 -0.0578392 29.16 0.0133599H21.1072C21.036 0.0134652 20.966 0.0313585 20.9036 0.0653944C20.8411 0.0994303 20.7881 0.148532 20.7494 0.208251C20.7106 0.268417 20.6872 0.337237 20.6813 0.408613C20.6754 0.479989 20.6872 0.551716 20.7157 0.617433L28.9955 19.7283C29.0285 19.8051 29.0832 19.8705 29.1529 19.9166C29.2226 19.9626 29.3043 19.9872 29.3878 19.9873H30.9849C31.0972 19.9869 31.2048 19.9425 31.2848 19.8637C31.3648 19.7848 31.4107 19.6778 31.4126 19.5655C31.4126 18.581 31.8037 17.6368 32.4999 16.9406C33.1961 16.2444 34.1403 15.8533 35.1248 15.8533C36.1093 15.8533 37.0535 16.2444 37.7497 16.9406C38.4459 17.6368 38.837 18.581 38.837 19.5655C38.839 19.6778 38.8848 19.7848 38.9648 19.8637C39.0447 19.9425 39.1524 19.9869 39.2647 19.9873H41.6396C41.6961 19.9871 41.752 19.9758 41.8041 19.9539C41.8561 19.9321 41.9034 19.9002 41.9431 19.8601C41.9828 19.82 42.0143 19.7724 42.0356 19.7201C42.0569 19.6678 42.0677 19.6119 42.0674 19.5554C42.0674 19.2179 42.0674 18.9015 42.0674 18.5911H42.2783C42.3923 18.5904 42.5013 18.5445 42.5815 18.4636C42.6617 18.3826 42.7065 18.2731 42.7061 18.1591V16.5241C42.7065 16.4101 42.6617 16.3006 42.5815 16.2196C42.5013 16.1386 42.3923 16.0928 42.2783 16.0921V16.0921ZM31.6058 8.33621H27.9359C27.7958 8.33732 27.6591 8.29246 27.547 8.20849C27.4348 8.12452 27.3533 8.00609 27.3149 7.87135L26.0545 3.91029C26.0293 3.8176 26.0262 3.72028 26.0455 3.62619C26.0649 3.5321 26.1061 3.44388 26.1658 3.36866C26.2264 3.29247 26.3034 3.23091 26.391 3.18856C26.4786 3.1462 26.5747 3.12414 26.672 3.124H28.9305C29.2861 3.13975 29.6349 3.22716 29.9558 3.38098C30.2768 3.53479 30.5634 3.75184 30.7984 4.01912C31.7475 5.02307 32.2662 6.35841 32.2437 7.73973C32.2339 7.90191 32.1624 8.05419 32.0437 8.16517C31.925 8.27615 31.7683 8.33736 31.6058 8.33621V8.33621Z" fill="%231545DE"/>%0A</g>%0A</g>%0A<path id="Caminho 1052" d="M18.318 0.208784C18.2779 0.150057 18.224 0.102045 18.1611 0.0689531C18.0981 0.0358617 18.028 0.0186933 17.9569 0.0189526H0.432107C0.361515 0.0187583 0.291932 0.0356991 0.229331 0.0683223C0.166729 0.100945 0.112985 0.148276 0.0727059 0.206248C0.0332923 0.263519 0.00898875 0.329827 0.00205642 0.399002C-0.00487591 0.468178 0.00578389 0.537987 0.0330492 0.601939L1.0404 3.29747C1.07434 3.3749 1.13023 3.44069 1.20115 3.48672C1.27206 3.53275 1.35491 3.55701 1.43945 3.55648H16.5134C16.5968 3.55702 16.6787 3.53341 16.749 3.4885C16.8194 3.44359 16.8753 3.37931 16.9099 3.30338L18.3526 0.607835C18.3813 0.543894 18.3933 0.473655 18.3872 0.403804C18.3812 0.333954 18.3573 0.266823 18.318 0.208784V0.208784Z" fill="%23C1BFBF"/>%0A<path id="Caminho 1053" d="M20.2107 5.18251C20.1706 5.12378 20.1167 5.07577 20.0538 5.04268C19.9908 5.00959 19.9207 4.99242 19.8496 4.99268H2.32482C2.25423 4.99248 2.18465 5.00943 2.12205 5.04205C2.05945 5.07467 2.0057 5.122 1.96542 5.17997C1.92601 5.23725 1.9017 5.30355 1.89477 5.37273C1.88784 5.4419 1.8985 5.51171 1.92577 5.57567L2.93311 8.2712C2.96706 8.34863 3.02294 8.41442 3.09386 8.46045C3.16478 8.50648 3.24763 8.53073 3.33217 8.53021H18.4061C18.4896 8.53075 18.5714 8.50714 18.6417 8.46224C18.7121 8.41733 18.768 8.35304 18.8026 8.27711L20.2453 5.58157C20.274 5.51761 20.2859 5.44738 20.2798 5.37754C20.2738 5.30771 20.25 5.24058 20.2107 5.18251V5.18251Z" fill="%23C1BFBF"/>%0A</g>%0A</svg>%0A';
@@ -1473,7 +1784,7 @@ var Select = react.forwardRef(function Select2({
1473
1784
  ] })
1474
1785
  ] });
1475
1786
  });
1476
- var seta = (label, icon) => (options) => /* @__PURE__ */ jsxRuntime.jsx(
1787
+ var seta2 = (label, icon) => (options) => /* @__PURE__ */ jsxRuntime.jsx(
1477
1788
  "button",
1478
1789
  {
1479
1790
  type: "button",
@@ -1519,10 +1830,10 @@ var Paginator = react.forwardRef(function Paginator2({
1519
1830
  },
1520
1831
  template: {
1521
1832
  layout: "FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown",
1522
- FirstPageLink: seta("Primeira p\xE1gina", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretDoubleLeft, { "aria-hidden": "true" })),
1523
- PrevPageLink: seta("P\xE1gina anterior", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretLeft, { "aria-hidden": "true" })),
1524
- NextPageLink: seta("Pr\xF3xima p\xE1gina", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretRight, { "aria-hidden": "true" })),
1525
- LastPageLink: seta("\xDAltima p\xE1gina", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretDoubleRight, { "aria-hidden": "true" })),
1833
+ FirstPageLink: seta2("Primeira p\xE1gina", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretDoubleLeft, { "aria-hidden": "true" })),
1834
+ PrevPageLink: seta2("P\xE1gina anterior", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretLeft, { "aria-hidden": "true" })),
1835
+ NextPageLink: seta2("Pr\xF3xima p\xE1gina", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretRight, { "aria-hidden": "true" })),
1836
+ LastPageLink: seta2("\xDAltima p\xE1gina", /* @__PURE__ */ jsxRuntime.jsx(react$1.CaretDoubleRight, { "aria-hidden": "true" })),
1526
1837
  PageLinks: (options) => {
1527
1838
  const ativa = options.page === options.currentPage;
1528
1839
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -1918,10 +2229,13 @@ var Toast = react.forwardRef(function Toast2({ position = "top-right", closeLabe
1918
2229
  );
1919
2230
  });
1920
2231
 
2232
+ exports.Accordion = Accordion;
2233
+ exports.AccordionTab = AccordionTab;
1921
2234
  exports.AutoComplete = AutoComplete;
1922
2235
  exports.Badge = Badge;
1923
2236
  exports.Button = Button;
1924
2237
  exports.Card = Card;
2238
+ exports.Chart = Chart;
1925
2239
  exports.Checkbox = Checkbox;
1926
2240
  exports.Chip = Chip;
1927
2241
  exports.Divider = Divider;