@snksergio/design-system 0.37.2 → 0.38.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.
Files changed (47) hide show
  1. package/dist-lib/chunks/{kpi-delta-0eogwK3C.mjs → kpi-delta-BQ6waavJ.mjs} +2 -2
  2. package/dist-lib/chunks/{kpi-delta-0eogwK3C.mjs.map → kpi-delta-BQ6waavJ.mjs.map} +1 -1
  3. package/dist-lib/chunks/{kpi-delta-Cz6qAe4c.cjs → kpi-delta-NM4hUgz4.cjs} +2 -2
  4. package/dist-lib/chunks/{kpi-delta-Cz6qAe4c.cjs.map → kpi-delta-NM4hUgz4.cjs.map} +1 -1
  5. package/dist-lib/chunks/{panel-NCZKvmDE.mjs → panel-BYgb6UTx.mjs} +2 -2
  6. package/dist-lib/chunks/{panel-NCZKvmDE.mjs.map → panel-BYgb6UTx.mjs.map} +1 -1
  7. package/dist-lib/chunks/{panel-DNobvn1Z.cjs → panel-CmmbJAIs.cjs} +2 -2
  8. package/dist-lib/chunks/{panel-DNobvn1Z.cjs.map → panel-CmmbJAIs.cjs.map} +1 -1
  9. package/dist-lib/chunks/{useTheme-BeD_2lZN.cjs → useTheme-C8eZFGSb.cjs} +175 -33
  10. package/dist-lib/chunks/useTheme-C8eZFGSb.cjs.map +1 -0
  11. package/dist-lib/chunks/{useTheme-CYMBVr3I.mjs → useTheme-Chash1gR.mjs} +178 -36
  12. package/dist-lib/chunks/useTheme-Chash1gR.mjs.map +1 -0
  13. package/dist-lib/index.cjs +7 -3
  14. package/dist-lib/index.cjs.map +1 -1
  15. package/dist-lib/index.mjs +221 -217
  16. package/dist-lib/index.mjs.map +1 -1
  17. package/dist-lib/preview/chat.cjs +1 -1
  18. package/dist-lib/preview/chat.mjs +1 -1
  19. package/dist-lib/preview/clientes.cjs +2 -2
  20. package/dist-lib/preview/clientes.mjs +2 -2
  21. package/dist-lib/preview/dashboard.cjs +2 -2
  22. package/dist-lib/preview/dashboard.mjs +2 -2
  23. package/dist-lib/src/components/ui/AppShell/app-shell.d.ts +1 -1
  24. package/dist-lib/src/components/ui/AppShell/app-shell.d.ts.map +1 -1
  25. package/dist-lib/src/components/ui/AppShell/app-shell.types.d.ts +23 -3
  26. package/dist-lib/src/components/ui/AppShell/app-shell.types.d.ts.map +1 -1
  27. package/dist-lib/src/components/ui/MenuSidebar/index.d.ts +3 -1
  28. package/dist-lib/src/components/ui/MenuSidebar/index.d.ts.map +1 -1
  29. package/dist-lib/src/components/ui/MenuSidebar/menu-sidebar.d.ts +1 -1
  30. package/dist-lib/src/components/ui/MenuSidebar/menu-sidebar.d.ts.map +1 -1
  31. package/dist-lib/src/components/ui/MenuSidebar/nav-link.d.ts +29 -0
  32. package/dist-lib/src/components/ui/MenuSidebar/nav-link.d.ts.map +1 -0
  33. package/dist-lib/src/components/ui/MenuSidebar/sidebar-item.d.ts +16 -1
  34. package/dist-lib/src/components/ui/MenuSidebar/sidebar-item.d.ts.map +1 -1
  35. package/dist-lib/src/components/ui/MenuSidebar/sidebar-panel.d.ts +6 -4
  36. package/dist-lib/src/components/ui/MenuSidebar/sidebar-panel.d.ts.map +1 -1
  37. package/dist-lib/src/components/ui/MenuSidebar/sidebar-rail.d.ts +7 -3
  38. package/dist-lib/src/components/ui/MenuSidebar/sidebar-rail.d.ts.map +1 -1
  39. package/dist-lib/src/components/ui/MenuSidebar/sidebar-section.d.ts +4 -2
  40. package/dist-lib/src/components/ui/MenuSidebar/sidebar-section.d.ts.map +1 -1
  41. package/dist-lib/src/components/ui/MenuSidebar/sidebar-subgroup.d.ts +6 -3
  42. package/dist-lib/src/components/ui/MenuSidebar/sidebar-subgroup.d.ts.map +1 -1
  43. package/dist-lib/src/components/ui/MenuSidebar/sidebar.types.d.ts +56 -2
  44. package/dist-lib/src/components/ui/MenuSidebar/sidebar.types.d.ts.map +1 -1
  45. package/package.json +7 -4
  46. package/dist-lib/chunks/useTheme-BeD_2lZN.cjs.map +0 -1
  47. package/dist-lib/chunks/useTheme-CYMBVr3I.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
- import { g as getContrastTextColor, a as FormField, e as Avatar, i as isFilterEntryActive, f as FilterPopover, T as ToolbarToolButton, h as ButtonGroup, j as ToolbarSimpleFilterDrawer, k as ACTIONS_COLUMN_WIDTH, l as TableToolbar, m as ToolbarActions, n as ToolbarFilterButton, o as ToolbarSearch, q as ToolbarApplied, r as ToolbarTabs, s as columnTypeRegistry, L as ListItem, t as List } from "./chunks/panel-NCZKvmDE.mjs";
2
- import { u, A, B, v, C, w, x, y, D, z, E, G, H, I, J, K, M, N, d, O, Q, R, S, U, F, b, V, c, W, X, P, Y, Z, _, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, p, aj, ak, al, am, an } from "./chunks/panel-NCZKvmDE.mjs";
3
- import { C as Chip } from "./chunks/useTheme-CYMBVr3I.mjs";
4
- import { A as A2, a, b as b2, H as H2, c as c2, d as d2, e, f, g, M as M2, S as S2, h, i, j, k, l, m, U as U2, n, o, p as p2, q, u as u2 } from "./chunks/useTheme-CYMBVr3I.mjs";
1
+ import { g as getContrastTextColor, a as FormField, e as Avatar, i as isFilterEntryActive, f as FilterPopover, T as ToolbarToolButton, h as ButtonGroup, j as ToolbarSimpleFilterDrawer, k as ACTIONS_COLUMN_WIDTH, l as TableToolbar, m as ToolbarActions, n as ToolbarFilterButton, o as ToolbarSearch, q as ToolbarApplied, r as ToolbarTabs, s as columnTypeRegistry, L as ListItem, t as List } from "./chunks/panel-BYgb6UTx.mjs";
2
+ import { u, A, B, v, C, w, x, y, D, z, E, G, H, I, J, K, M, N, d, O, Q, R, S, U, F, b, V, c, W, X, P, Y, Z, _, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, p, aj, ak, al, am, an } from "./chunks/panel-BYgb6UTx.mjs";
3
+ import { C as Chip } from "./chunks/useTheme-Chash1gR.mjs";
4
+ import { A as A2, a, b as b2, H as H2, c as c2, d as d2, e, f, g, M as M2, S as S2, h, i, j, k, l, m, U as U2, n, o, p as p2, q, r, s, t, v as v2, u as u2 } from "./chunks/useTheme-Chash1gR.mjs";
5
5
  import { t as tv, U as Popover, Y as PopoverTrigger, X as PopoverContent, B as Button, D as Dialog, u as DialogTrigger, c as cn, m as DialogContent, s as DialogTitle, V as PopoverAnchor, l as DialogClose, n as DialogDescription, v as DropdownMenu, N as DropdownMenuTrigger, x as DropdownMenuContent, z as DropdownMenuItem, d as CommandDialog, g as CommandInput, i as CommandList, e as CommandEmpty, f as CommandGroup, h as CommandItem, y as DropdownMenuGroup, E as DropdownMenuLabel, I as DropdownMenuSeparator } from "./chunks/avatar-c1_uhYC5.mjs";
6
6
  import { O as O2, P as P2, Q as Q2, R as R2, S as S3, T, w as w2, G as G2, H as H3, a2 as a22, a1 as a12 } from "./chunks/avatar-c1_uhYC5.mjs";
7
7
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
@@ -19,7 +19,7 @@ import "@radix-ui/react-collapsible";
19
19
  import { I as Input } from "./chunks/input-SiP1JWBU.mjs";
20
20
  import { i as i2 } from "./chunks/input-SiP1JWBU.mjs";
21
21
  import { toast as toast$1 } from "sonner";
22
- import { a as a10, b as b3, K as K2 } from "./chunks/kpi-delta-0eogwK3C.mjs";
22
+ import { a as a10, b as b3, K as K2 } from "./chunks/kpi-delta-BQ6waavJ.mjs";
23
23
  import { P as P3, p as p3 } from "./chunks/page-header-D3hIqlo2.mjs";
24
24
  import * as RechartsPrimitive from "recharts";
25
25
  import { useVirtualizer } from "@tanstack/react-virtual";
@@ -390,7 +390,7 @@ const markdownTextStyles = tv({
390
390
  });
391
391
  const CODE_RE = /```([\s\S]+?)```|`([^`]+?)`/g;
392
392
  const URL_RE = /((?:https?:\/\/|www\.)[^\s<>()]+[^\s<>().,!?;:'"])/g;
393
- function parseInline(text, s, prefix) {
393
+ function parseInline(text, s2, prefix) {
394
394
  const markers = [
395
395
  { re: /\*([^*\n]+?)\*/, slot: "strong", el: "strong" },
396
396
  { re: /_([^_\n]+?)_/, slot: "em", el: "em" },
@@ -403,16 +403,16 @@ function parseInline(text, s, prefix) {
403
403
  const inner = m2[1];
404
404
  const after = text.slice(m2.index + m2[0].length);
405
405
  const Tag = el;
406
- const className = slot === "strong" ? s.strong() : slot === "em" ? s.em() : s.strike();
406
+ const className = slot === "strong" ? s2.strong() : slot === "em" ? s2.em() : s2.strike();
407
407
  return [
408
- ...parseInline(before, s, `${prefix}-b`),
409
- /* @__PURE__ */ jsx(Tag, { className, children: parseInline(inner, s, `${prefix}-i`) }, `${prefix}-${slot}`),
410
- ...parseInline(after, s, `${prefix}-a`)
408
+ ...parseInline(before, s2, `${prefix}-b`),
409
+ /* @__PURE__ */ jsx(Tag, { className, children: parseInline(inner, s2, `${prefix}-i`) }, `${prefix}-${slot}`),
410
+ ...parseInline(after, s2, `${prefix}-a`)
411
411
  ];
412
412
  }
413
413
  return text ? [text] : [];
414
414
  }
415
- function parseLinksAndInline(text, s, prefix) {
415
+ function parseLinksAndInline(text, s2, prefix) {
416
416
  const out = [];
417
417
  let last = 0;
418
418
  let i3 = 0;
@@ -420,7 +420,7 @@ function parseLinksAndInline(text, s, prefix) {
420
420
  let m2;
421
421
  while ((m2 = URL_RE.exec(text)) !== null) {
422
422
  if (m2.index > last) {
423
- out.push(...parseInline(text.slice(last, m2.index), s, `${prefix}-${i3}t`));
423
+ out.push(...parseInline(text.slice(last, m2.index), s2, `${prefix}-${i3}t`));
424
424
  }
425
425
  const raw = m2[0];
426
426
  const href = raw.startsWith("www.") ? `https://${raw}` : raw;
@@ -431,7 +431,7 @@ function parseLinksAndInline(text, s, prefix) {
431
431
  href,
432
432
  target: "_blank",
433
433
  rel: "noopener noreferrer",
434
- className: s.link(),
434
+ className: s2.link(),
435
435
  children: raw
436
436
  },
437
437
  `${prefix}-${i3}link`
@@ -441,11 +441,11 @@ function parseLinksAndInline(text, s, prefix) {
441
441
  i3 += 1;
442
442
  }
443
443
  if (last < text.length) {
444
- out.push(...parseInline(text.slice(last), s, `${prefix}-${i3}t`));
444
+ out.push(...parseInline(text.slice(last), s2, `${prefix}-${i3}t`));
445
445
  }
446
446
  return out;
447
447
  }
448
- function parseMarkdown(source, s) {
448
+ function parseMarkdown(source, s2) {
449
449
  const out = [];
450
450
  let last = 0;
451
451
  let i3 = 0;
@@ -453,17 +453,17 @@ function parseMarkdown(source, s) {
453
453
  let m2;
454
454
  while ((m2 = CODE_RE.exec(source)) !== null) {
455
455
  if (m2.index > last) {
456
- out.push(...parseLinksAndInline(source.slice(last, m2.index), s, `${i3}t`));
456
+ out.push(...parseLinksAndInline(source.slice(last, m2.index), s2, `${i3}t`));
457
457
  }
458
458
  const codeContent = m2[1] ?? m2[2] ?? "";
459
459
  out.push(
460
- /* @__PURE__ */ jsx("code", { className: s.code(), children: codeContent }, `${i3}code`)
460
+ /* @__PURE__ */ jsx("code", { className: s2.code(), children: codeContent }, `${i3}code`)
461
461
  );
462
462
  last = m2.index + m2[0].length;
463
463
  i3 += 1;
464
464
  }
465
465
  if (last < source.length) {
466
- out.push(...parseLinksAndInline(source.slice(last), s, `${i3}t`));
466
+ out.push(...parseLinksAndInline(source.slice(last), s2, `${i3}t`));
467
467
  }
468
468
  return out;
469
469
  }
@@ -761,7 +761,7 @@ function useToolbarSort(options) {
761
761
  const toggle = useCallback(
762
762
  (columnKey) => {
763
763
  setList((prev) => {
764
- const idx = prev.findIndex((s) => s.columnKey === columnKey);
764
+ const idx = prev.findIndex((s2) => s2.columnKey === columnKey);
765
765
  if (idx === -1) {
766
766
  const next = [...prev, { columnKey, direction: "asc" }];
767
767
  if (next.length > maxColumns) next.shift();
@@ -781,7 +781,7 @@ function useToolbarSort(options) {
781
781
  const set = useCallback(
782
782
  (columnKey, direction) => {
783
783
  setList((prev) => {
784
- const idx = prev.findIndex((s) => s.columnKey === columnKey);
784
+ const idx = prev.findIndex((s2) => s2.columnKey === columnKey);
785
785
  if (idx === -1) {
786
786
  const next2 = [...prev, { columnKey, direction }];
787
787
  if (next2.length > maxColumns) next2.shift();
@@ -795,7 +795,7 @@ function useToolbarSort(options) {
795
795
  [maxColumns]
796
796
  );
797
797
  const remove = useCallback((columnKey) => {
798
- setList((prev) => prev.filter((s) => s.columnKey !== columnKey));
798
+ setList((prev) => prev.filter((s2) => s2.columnKey !== columnKey));
799
799
  }, []);
800
800
  const clear = useCallback(() => setList([]), []);
801
801
  const replaceAll = useCallback(
@@ -803,7 +803,7 @@ function useToolbarSort(options) {
803
803
  []
804
804
  );
805
805
  const directionOf = useCallback(
806
- (columnKey) => list.find((s) => s.columnKey === columnKey)?.direction,
806
+ (columnKey) => list.find((s2) => s2.columnKey === columnKey)?.direction,
807
807
  [list]
808
808
  );
809
809
  return {
@@ -998,15 +998,15 @@ const DatePicker = React.forwardRef(
998
998
  let label = null;
999
999
  let calendar;
1000
1000
  if (props.mode === "range") {
1001
- const v2 = props.value;
1002
- label = v2?.from ? v2.to ? `${formatShort(v2.from)} – ${formatShort(v2.to)}` : formatShort(v2.from) : null;
1001
+ const v3 = props.value;
1002
+ label = v3?.from ? v3.to ? `${formatShort(v3.from)} – ${formatShort(v3.to)}` : formatShort(v3.from) : null;
1003
1003
  calendar = /* @__PURE__ */ jsx(
1004
1004
  Calendar,
1005
1005
  {
1006
1006
  mode: "range",
1007
1007
  min: 1,
1008
1008
  numberOfMonths: props.numberOfMonths ?? 2,
1009
- selected: v2,
1009
+ selected: v3,
1010
1010
  onSelect: (range) => {
1011
1011
  props.onValueChange?.(range);
1012
1012
  if (range?.from && range?.to) setOpen(false);
@@ -1015,27 +1015,27 @@ const DatePicker = React.forwardRef(
1015
1015
  }
1016
1016
  );
1017
1017
  } else if (props.mode === "multiple") {
1018
- const v2 = props.value;
1019
- label = v2 && v2.length > 0 ? v2.length === 1 ? "1 data selecionada" : `${v2.length} datas selecionadas` : null;
1018
+ const v3 = props.value;
1019
+ label = v3 && v3.length > 0 ? v3.length === 1 ? "1 data selecionada" : `${v3.length} datas selecionadas` : null;
1020
1020
  calendar = /* @__PURE__ */ jsx(
1021
1021
  Calendar,
1022
1022
  {
1023
1023
  mode: "multiple",
1024
1024
  numberOfMonths: props.numberOfMonths,
1025
- selected: v2,
1025
+ selected: v3,
1026
1026
  onSelect: (dates) => props.onValueChange?.(dates),
1027
1027
  autoFocus: true
1028
1028
  }
1029
1029
  );
1030
1030
  } else {
1031
- const v2 = props.value;
1032
- label = v2 ? formatFull(v2) : null;
1031
+ const v3 = props.value;
1032
+ label = v3 ? formatFull(v3) : null;
1033
1033
  calendar = /* @__PURE__ */ jsx(
1034
1034
  Calendar,
1035
1035
  {
1036
1036
  mode: "single",
1037
1037
  numberOfMonths: props.numberOfMonths,
1038
- selected: v2,
1038
+ selected: v3,
1039
1039
  onSelect: (date) => {
1040
1040
  props.onValueChange?.(date);
1041
1041
  setOpen(false);
@@ -3522,7 +3522,7 @@ const iconStyles = tv({
3522
3522
  }
3523
3523
  });
3524
3524
  const PRESETS = ["xs", "sm", "md", "lg", "xl"];
3525
- const isPresetSize = (s) => typeof s === "string" && PRESETS.includes(s);
3525
+ const isPresetSize = (s2) => typeof s2 === "string" && PRESETS.includes(s2);
3526
3526
  const VIEWBOX_18 = /* @__PURE__ */ new Set([
3527
3527
  "line-outline",
3528
3528
  "line-close",
@@ -3738,7 +3738,7 @@ function resolveIsImage(value, preview, accept) {
3738
3738
  }
3739
3739
  function matchesAccept(file, accept) {
3740
3740
  if (!accept) return true;
3741
- const tokens = accept.split(",").map((t) => t.trim().toLowerCase());
3741
+ const tokens = accept.split(",").map((t2) => t2.trim().toLowerCase());
3742
3742
  const name = file.name.toLowerCase();
3743
3743
  const mime = file.type.toLowerCase();
3744
3744
  return tokens.some((token) => {
@@ -4167,13 +4167,13 @@ function MessageBubble({
4167
4167
  className
4168
4168
  }) {
4169
4169
  const [actionsOpen, setActionsOpen] = useState(false);
4170
- const s = messageBubbleStyles({ side, tail });
4170
+ const s2 = messageBubbleStyles({ side, tail });
4171
4171
  const time = formatTime(createdAt);
4172
4172
  const hasMedia = !isDeleted && mediaType !== "text";
4173
4173
  const showAck = side === "sent" && ack !== void 0 && !isDeleted;
4174
- return /* @__PURE__ */ jsxs("div", { className: s.row({ className }), children: [
4175
- avatar ? /* @__PURE__ */ jsx("div", { className: s.avatarSlot(), children: avatar }) : null,
4176
- /* @__PURE__ */ jsx("div", { className: s.column(), children: /* @__PURE__ */ jsxs("div", { className: s.bubble(), children: [
4174
+ return /* @__PURE__ */ jsxs("div", { className: s2.row({ className }), children: [
4175
+ avatar ? /* @__PURE__ */ jsx("div", { className: s2.avatarSlot(), children: avatar }) : null,
4176
+ /* @__PURE__ */ jsx("div", { className: s2.column(), children: /* @__PURE__ */ jsxs("div", { className: s2.bubble(), children: [
4177
4177
  actions && !isDeleted ? /* @__PURE__ */ jsxs(
4178
4178
  Popover,
4179
4179
  {
@@ -4191,7 +4191,7 @@ function MessageBubble({
4191
4191
  "aria-label": "Ações da mensagem",
4192
4192
  "aria-haspopup": "menu",
4193
4193
  "aria-expanded": actionsOpen,
4194
- className: s.actionsTrigger(),
4194
+ className: s2.actionsTrigger(),
4195
4195
  onClick: () => setActionsOpen((o2) => !o2),
4196
4196
  children: /* @__PURE__ */ jsx(MoreVertical, { "aria-hidden": "true" })
4197
4197
  }
@@ -4201,30 +4201,30 @@ function MessageBubble({
4201
4201
  {
4202
4202
  align: side === "sent" ? "end" : "start",
4203
4203
  role: "menu",
4204
- className: s.actionsContent(),
4204
+ className: s2.actionsContent(),
4205
4205
  children: actions
4206
4206
  }
4207
4207
  )
4208
4208
  ]
4209
4209
  }
4210
4210
  ) : null,
4211
- authorName && !isDeleted ? /* @__PURE__ */ jsx("span", { className: s.author(), children: authorName }) : null,
4212
- quotedMessage && !isDeleted ? /* @__PURE__ */ jsxs("div", { className: s.quoted(), children: [
4213
- quotedMessage.authorName ? /* @__PURE__ */ jsx("span", { className: s.quotedAuthor(), children: quotedMessage.fromMe ? "Você" : quotedMessage.authorName }) : null,
4214
- /* @__PURE__ */ jsxs("div", { className: s.quotedPreview(), children: [
4211
+ authorName && !isDeleted ? /* @__PURE__ */ jsx("span", { className: s2.author(), children: authorName }) : null,
4212
+ quotedMessage && !isDeleted ? /* @__PURE__ */ jsxs("div", { className: s2.quoted(), children: [
4213
+ quotedMessage.authorName ? /* @__PURE__ */ jsx("span", { className: s2.quotedAuthor(), children: quotedMessage.fromMe ? "Você" : quotedMessage.authorName }) : null,
4214
+ /* @__PURE__ */ jsxs("div", { className: s2.quotedPreview(), children: [
4215
4215
  quotedMessage.mediaType === "image" && quotedMessage.mediaUrl ? /* @__PURE__ */ jsx(
4216
4216
  "img",
4217
4217
  {
4218
4218
  src: quotedMessage.mediaUrl,
4219
4219
  alt: "",
4220
- className: s.quotedThumb()
4220
+ className: s2.quotedThumb()
4221
4221
  }
4222
4222
  ) : null,
4223
- /* @__PURE__ */ jsx("span", { className: s.quotedPreviewText(), children: quotedMessage.body ? /* @__PURE__ */ jsx(MarkdownText, { inline: true, children: quotedMessage.body }) : MEDIA_LABEL[quotedMessage.mediaType ?? "text"] || "Mensagem" })
4223
+ /* @__PURE__ */ jsx("span", { className: s2.quotedPreviewText(), children: quotedMessage.body ? /* @__PURE__ */ jsx(MarkdownText, { inline: true, children: quotedMessage.body }) : MEDIA_LABEL[quotedMessage.mediaType ?? "text"] || "Mensagem" })
4224
4224
  ] })
4225
4225
  ] }) : null,
4226
- isDeleted ? /* @__PURE__ */ jsxs("span", { className: s.deleted(), children: [
4227
- /* @__PURE__ */ jsx(Ban, { className: s.deletedIcon(), "aria-hidden": "true" }),
4226
+ isDeleted ? /* @__PURE__ */ jsxs("span", { className: s2.deleted(), children: [
4227
+ /* @__PURE__ */ jsx(Ban, { className: s2.deletedIcon(), "aria-hidden": "true" }),
4228
4228
  "Mensagem apagada"
4229
4229
  ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
4230
4230
  hasMedia ? media ?? /* @__PURE__ */ jsx(
@@ -4236,11 +4236,11 @@ function MessageBubble({
4236
4236
  onMediaClick
4237
4237
  }
4238
4238
  ) : null,
4239
- body2 && (mediaType === "text" || !hasMedia) ? /* @__PURE__ */ jsx(MarkdownText, { className: s.body(), children: body2 }) : null
4239
+ body2 && (mediaType === "text" || !hasMedia) ? /* @__PURE__ */ jsx(MarkdownText, { className: s2.body(), children: body2 }) : null
4240
4240
  ] }),
4241
- /* @__PURE__ */ jsxs("div", { className: s.meta(), children: [
4242
- isEdited && !isDeleted ? /* @__PURE__ */ jsx("span", { className: s.metaEdited(), children: "editada" }) : null,
4243
- /* @__PURE__ */ jsx("span", { className: s.metaTime(), children: time }),
4241
+ /* @__PURE__ */ jsxs("div", { className: s2.meta(), children: [
4242
+ isEdited && !isDeleted ? /* @__PURE__ */ jsx("span", { className: s2.metaEdited(), children: "editada" }) : null,
4243
+ /* @__PURE__ */ jsx("span", { className: s2.metaTime(), children: time }),
4244
4244
  showAck ? /* @__PURE__ */ jsx(MessageAck, { ack, error: ackError }) : null
4245
4245
  ] })
4246
4246
  ] }) })
@@ -4957,9 +4957,9 @@ function useSingleMenuSidebarState(defaultExpanded, controlledExpanded, onExpand
4957
4957
  const suppressHoverRef = useRef(false);
4958
4958
  const suppressTimerRef = useRef(null);
4959
4959
  const setExpanded = useCallback(
4960
- (v2) => {
4961
- if (!isControlled) setInternal(v2);
4962
- onExpandedChange?.(v2);
4960
+ (v3) => {
4961
+ if (!isControlled) setInternal(v3);
4962
+ onExpandedChange?.(v3);
4963
4963
  },
4964
4964
  [isControlled, onExpandedChange]
4965
4965
  );
@@ -5218,34 +5218,34 @@ function SingleMenuModuleSelector({
5218
5218
  options,
5219
5219
  onModuleChange
5220
5220
  }) {
5221
- const s = styles.module;
5221
+ const s2 = styles.module;
5222
5222
  const triggerContent = /* @__PURE__ */ jsxs(Fragment, { children: [
5223
- /* @__PURE__ */ jsx("div", { className: s.iconContainer, children: icon }),
5224
- /* @__PURE__ */ jsxs("div", { className: s.textContainer, children: [
5225
- /* @__PURE__ */ jsx("span", { className: s.title, children: title2 }),
5226
- /* @__PURE__ */ jsx("span", { className: s.subtitle, children: subtitle })
5223
+ /* @__PURE__ */ jsx("div", { className: s2.iconContainer, children: icon }),
5224
+ /* @__PURE__ */ jsxs("div", { className: s2.textContainer, children: [
5225
+ /* @__PURE__ */ jsx("span", { className: s2.title, children: title2 }),
5226
+ /* @__PURE__ */ jsx("span", { className: s2.subtitle, children: subtitle })
5227
5227
  ] }),
5228
- /* @__PURE__ */ jsx(ChevronsUpDown, { className: s.chevron })
5228
+ /* @__PURE__ */ jsx(ChevronsUpDown, { className: s2.chevron })
5229
5229
  ] });
5230
5230
  if (!options || options.length === 0) {
5231
- return /* @__PURE__ */ jsx("div", { className: s.trigger, children: triggerContent });
5231
+ return /* @__PURE__ */ jsx("div", { className: s2.trigger, children: triggerContent });
5232
5232
  }
5233
5233
  return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
5234
- /* @__PURE__ */ jsx(DropdownMenuTrigger, { className: s.trigger, children: triggerContent }),
5234
+ /* @__PURE__ */ jsx(DropdownMenuTrigger, { className: s2.trigger, children: triggerContent }),
5235
5235
  /* @__PURE__ */ jsx(DropdownMenuContent, { side: "bottom", sideOffset: 4, align: "start", children: options.map((option) => {
5236
5236
  const isSelected = option.label === title2;
5237
5237
  return /* @__PURE__ */ jsxs(
5238
5238
  DropdownMenuItem,
5239
5239
  {
5240
5240
  className: cn(
5241
- s.dropdownItem,
5242
- isSelected && s.dropdownItemSelected
5241
+ s2.dropdownItem,
5242
+ isSelected && s2.dropdownItemSelected
5243
5243
  ),
5244
5244
  onClick: () => onModuleChange?.(option.id),
5245
5245
  children: [
5246
- /* @__PURE__ */ jsx("div", { className: s.dropdownItemIcon, children: option.icon }),
5247
- /* @__PURE__ */ jsx("span", { className: s.dropdownItemLabel, children: option.label }),
5248
- isSelected && /* @__PURE__ */ jsx(Check, { className: s.dropdownItemCheck })
5246
+ /* @__PURE__ */ jsx("div", { className: s2.dropdownItemIcon, children: option.icon }),
5247
+ /* @__PURE__ */ jsx("span", { className: s2.dropdownItemLabel, children: option.label }),
5248
+ isSelected && /* @__PURE__ */ jsx(Check, { className: s2.dropdownItemCheck })
5249
5249
  ]
5250
5250
  },
5251
5251
  option.id
@@ -5258,13 +5258,13 @@ function SingleMenuSearch({
5258
5258
  placeholder = "Buscar",
5259
5259
  onOpen
5260
5260
  }) {
5261
- const s = styles.search;
5262
- return /* @__PURE__ */ jsxs("button", { type: "button", onClick: onOpen, className: s.wrapper, children: [
5263
- /* @__PURE__ */ jsxs("div", { className: s.inner, children: [
5264
- /* @__PURE__ */ jsx(Search, { className: s.icon }),
5265
- /* @__PURE__ */ jsx("span", { className: s.text, children: placeholder })
5261
+ const s2 = styles.search;
5262
+ return /* @__PURE__ */ jsxs("button", { type: "button", onClick: onOpen, className: s2.wrapper, children: [
5263
+ /* @__PURE__ */ jsxs("div", { className: s2.inner, children: [
5264
+ /* @__PURE__ */ jsx(Search, { className: s2.icon }),
5265
+ /* @__PURE__ */ jsx("span", { className: s2.text, children: placeholder })
5266
5266
  ] }),
5267
- /* @__PURE__ */ jsx("div", { className: s.shortcutBadge, children: /* @__PURE__ */ jsx("span", { className: s.shortcutText, children: "⌘K" }) })
5267
+ /* @__PURE__ */ jsx("div", { className: s2.shortcutBadge, children: /* @__PURE__ */ jsx("span", { className: s2.shortcutText, children: "⌘K" }) })
5268
5268
  ] });
5269
5269
  }
5270
5270
  SingleMenuSearch.displayName = "SingleMenuSearch";
@@ -5318,10 +5318,10 @@ function SingleMenuItem({
5318
5318
  selected = false,
5319
5319
  onClick
5320
5320
  }) {
5321
- const s = menuItem({ selected });
5322
- return /* @__PURE__ */ jsxs("button", { type: "button", onClick, className: s.root(), children: [
5323
- /* @__PURE__ */ jsx("div", { className: s.border() }),
5324
- /* @__PURE__ */ jsx("span", { className: s.text(), children: label })
5321
+ const s2 = menuItem({ selected });
5322
+ return /* @__PURE__ */ jsxs("button", { type: "button", onClick, className: s2.root(), children: [
5323
+ /* @__PURE__ */ jsx("div", { className: s2.border() }),
5324
+ /* @__PURE__ */ jsx("span", { className: s2.text(), children: label })
5325
5325
  ] });
5326
5326
  }
5327
5327
  SingleMenuItem.displayName = "SingleMenuItem";
@@ -5342,7 +5342,7 @@ function SingleMenuCategory({
5342
5342
  const containsActive = hasItems && items.some((item) => item.id === activeItemId);
5343
5343
  const selected = !expanded ? hasItems ? isOpen || containsActive : isLeafActive : hasItems ? isOpen : isLeafActive && openCategoryId == null;
5344
5344
  const state = selected ? "selected" : "default";
5345
- const s = category({ state, collapsed: !expanded });
5345
+ const s2 = category({ state, collapsed: !expanded });
5346
5346
  const handleToggle = () => {
5347
5347
  if (hasItems) {
5348
5348
  setOpenCategoryId(isOpen ? null : id);
@@ -5367,17 +5367,17 @@ function SingleMenuCategory({
5367
5367
  handleToggle();
5368
5368
  }
5369
5369
  },
5370
- className: s.root(),
5371
- children: /* @__PURE__ */ jsx("span", { className: s.icon(), children: icon })
5370
+ className: s2.root(),
5371
+ children: /* @__PURE__ */ jsx("span", { className: s2.icon(), children: icon })
5372
5372
  }
5373
5373
  ),
5374
5374
  /* @__PURE__ */ jsx(TooltipContent, { side: "right", sideOffset: 8, children: label })
5375
5375
  ] });
5376
5376
  }
5377
5377
  if (!hasItems) {
5378
- return /* @__PURE__ */ jsxs("button", { type: "button", onClick: handleToggle, className: s.root(), children: [
5379
- /* @__PURE__ */ jsx("span", { className: s.icon(), children: icon }),
5380
- /* @__PURE__ */ jsx("span", { className: cn(s.text(), styles.textFadeIn), children: label })
5378
+ return /* @__PURE__ */ jsxs("button", { type: "button", onClick: handleToggle, className: s2.root(), children: [
5379
+ /* @__PURE__ */ jsx("span", { className: s2.icon(), children: icon }),
5380
+ /* @__PURE__ */ jsx("span", { className: cn(s2.text(), styles.textFadeIn), children: label })
5381
5381
  ] });
5382
5382
  }
5383
5383
  return /* @__PURE__ */ jsxs(
@@ -5389,10 +5389,10 @@ function SingleMenuCategory({
5389
5389
  onCategoryClick?.();
5390
5390
  },
5391
5391
  children: [
5392
- /* @__PURE__ */ jsxs(CollapsibleTrigger, { className: s.root(), children: [
5393
- /* @__PURE__ */ jsx("span", { className: s.icon(), children: icon }),
5394
- /* @__PURE__ */ jsx("span", { className: cn(s.text(), styles.textFadeIn), children: label }),
5395
- /* @__PURE__ */ jsx(ChevronDown, { className: cn(s.chevron(), isOpen && "rotate-180") })
5392
+ /* @__PURE__ */ jsxs(CollapsibleTrigger, { className: s2.root(), children: [
5393
+ /* @__PURE__ */ jsx("span", { className: s2.icon(), children: icon }),
5394
+ /* @__PURE__ */ jsx("span", { className: cn(s2.text(), styles.textFadeIn), children: label }),
5395
+ /* @__PURE__ */ jsx(ChevronDown, { className: cn(s2.chevron(), isOpen && "rotate-180") })
5396
5396
  ] }),
5397
5397
  /* @__PURE__ */ jsx(CollapsibleContent, { children: /* @__PURE__ */ jsx("div", { className: styles.subItemList, children: items.map((item) => /* @__PURE__ */ jsx(
5398
5398
  SingleMenuItem,
@@ -5416,25 +5416,25 @@ function SingleMenuFooter({
5416
5416
  onAction
5417
5417
  }) {
5418
5418
  const { expanded } = useSingleMenuSidebar();
5419
- const s = styles.footer;
5419
+ const s2 = styles.footer;
5420
5420
  const triggerContent = /* @__PURE__ */ jsxs(Fragment, { children: [
5421
- /* @__PURE__ */ jsx("div", { className: s.avatar, children: avatar ?? /* @__PURE__ */ jsx(User, { className: s.avatarIcon }) }),
5421
+ /* @__PURE__ */ jsx("div", { className: s2.avatar, children: avatar ?? /* @__PURE__ */ jsx(User, { className: s2.avatarIcon }) }),
5422
5422
  expanded && /* @__PURE__ */ jsxs(Fragment, { children: [
5423
- /* @__PURE__ */ jsxs("div", { className: s.textContainer, children: [
5424
- /* @__PURE__ */ jsx("span", { className: s.name, children: name }),
5425
- /* @__PURE__ */ jsx("span", { className: s.email, children: email })
5423
+ /* @__PURE__ */ jsxs("div", { className: s2.textContainer, children: [
5424
+ /* @__PURE__ */ jsx("span", { className: s2.name, children: name }),
5425
+ /* @__PURE__ */ jsx("span", { className: s2.email, children: email })
5426
5426
  ] }),
5427
- /* @__PURE__ */ jsx(ChevronsUpDown, { className: s.chevron })
5427
+ /* @__PURE__ */ jsx(ChevronsUpDown, { className: s2.chevron })
5428
5428
  ] })
5429
5429
  ] });
5430
5430
  if (!actions || actions.length === 0) {
5431
- return /* @__PURE__ */ jsx("div", { className: s.wrapper, children: /* @__PURE__ */ jsx("div", { className: cn(s.button, !expanded && "justify-center px-0"), children: triggerContent }) });
5431
+ return /* @__PURE__ */ jsx("div", { className: s2.wrapper, children: /* @__PURE__ */ jsx("div", { className: cn(s2.button, !expanded && "justify-center px-0"), children: triggerContent }) });
5432
5432
  }
5433
- return /* @__PURE__ */ jsx("div", { className: s.wrapper, children: /* @__PURE__ */ jsxs(DropdownMenu, { children: [
5433
+ return /* @__PURE__ */ jsx("div", { className: s2.wrapper, children: /* @__PURE__ */ jsxs(DropdownMenu, { children: [
5434
5434
  /* @__PURE__ */ jsx(
5435
5435
  DropdownMenuTrigger,
5436
5436
  {
5437
- className: cn(s.button, !expanded && "justify-center px-0"),
5437
+ className: cn(s2.button, !expanded && "justify-center px-0"),
5438
5438
  children: triggerContent
5439
5439
  }
5440
5440
  ),
@@ -5445,9 +5445,9 @@ function SingleMenuFooter({
5445
5445
  sideOffset: 8,
5446
5446
  align: expanded ? "end" : "start",
5447
5447
  children: [
5448
- /* @__PURE__ */ jsx(DropdownMenuGroup, { children: /* @__PURE__ */ jsxs(DropdownMenuLabel, { className: s.dropdownLabel, children: [
5449
- /* @__PURE__ */ jsx("span", { className: s.dropdownLabelName, children: name }),
5450
- /* @__PURE__ */ jsx("span", { className: s.dropdownLabelEmail, children: email })
5448
+ /* @__PURE__ */ jsx(DropdownMenuGroup, { children: /* @__PURE__ */ jsxs(DropdownMenuLabel, { className: s2.dropdownLabel, children: [
5449
+ /* @__PURE__ */ jsx("span", { className: s2.dropdownLabelName, children: name }),
5450
+ /* @__PURE__ */ jsx("span", { className: s2.dropdownLabelEmail, children: email })
5451
5451
  ] }) }),
5452
5452
  /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
5453
5453
  actions.map((action) => /* @__PURE__ */ jsxs(
@@ -5455,9 +5455,9 @@ function SingleMenuFooter({
5455
5455
  {
5456
5456
  variant: action.variant === "destructive" ? "destructive" : "default",
5457
5457
  onClick: () => onAction?.(action.id),
5458
- className: s.dropdownItem,
5458
+ className: s2.dropdownItem,
5459
5459
  children: [
5460
- action.icon && /* @__PURE__ */ jsx("span", { className: s.dropdownItemIcon, children: action.icon }),
5460
+ action.icon && /* @__PURE__ */ jsx("span", { className: s2.dropdownItemIcon, children: action.icon }),
5461
5461
  /* @__PURE__ */ jsx("span", { children: action.label })
5462
5462
  ]
5463
5463
  },
@@ -5916,8 +5916,8 @@ function circleStream(stream, radius, delta, direction, t0, t1) {
5916
5916
  t1 = circleRadius(cosRadius, t1);
5917
5917
  if (direction > 0 ? t0 < t1 : t0 > t1) t0 += direction * tau;
5918
5918
  }
5919
- for (var point, t = t0; direction > 0 ? t > t1 : t < t1; t -= step) {
5920
- point = spherical([cosRadius, -sinRadius * cos(t), -sinRadius * sin(t)]);
5919
+ for (var point, t2 = t0; direction > 0 ? t2 > t1 : t2 < t1; t2 -= step) {
5920
+ point = spherical([cosRadius, -sinRadius * cos(t2), -sinRadius * sin(t2)]);
5921
5921
  stream.point(point[0], point[1]);
5922
5922
  }
5923
5923
  }
@@ -6238,16 +6238,16 @@ function clipCircle(radius) {
6238
6238
  clean = 1;
6239
6239
  },
6240
6240
  point: function(lambda, phi) {
6241
- var point1 = [lambda, phi], point2, v2 = visible(lambda, phi), c3 = smallRadius ? v2 ? 0 : code(lambda, phi) : v2 ? code(lambda + (lambda < 0 ? pi : -pi), phi) : 0;
6242
- if (!point0 && (v00 = v0 = v2)) stream.lineStart();
6243
- if (v2 !== v0) {
6241
+ var point1 = [lambda, phi], point2, v3 = visible(lambda, phi), c3 = smallRadius ? v3 ? 0 : code(lambda, phi) : v3 ? code(lambda + (lambda < 0 ? pi : -pi), phi) : 0;
6242
+ if (!point0 && (v00 = v0 = v3)) stream.lineStart();
6243
+ if (v3 !== v0) {
6244
6244
  point2 = intersect(point0, point1);
6245
6245
  if (!point2 || pointEqual(point0, point2) || pointEqual(point1, point2))
6246
6246
  point1[2] = 1;
6247
6247
  }
6248
- if (v2 !== v0) {
6248
+ if (v3 !== v0) {
6249
6249
  clean = 0;
6250
- if (v2) {
6250
+ if (v3) {
6251
6251
  stream.lineStart();
6252
6252
  point2 = intersect(point1, point0);
6253
6253
  stream.point(point2[0], point2[1]);
@@ -6257,27 +6257,27 @@ function clipCircle(radius) {
6257
6257
  stream.lineEnd();
6258
6258
  }
6259
6259
  point0 = point2;
6260
- } else if (notHemisphere && point0 && smallRadius ^ v2) {
6261
- var t;
6262
- if (!(c3 & c0) && (t = intersect(point1, point0, true))) {
6260
+ } else if (notHemisphere && point0 && smallRadius ^ v3) {
6261
+ var t2;
6262
+ if (!(c3 & c0) && (t2 = intersect(point1, point0, true))) {
6263
6263
  clean = 0;
6264
6264
  if (smallRadius) {
6265
6265
  stream.lineStart();
6266
- stream.point(t[0][0], t[0][1]);
6267
- stream.point(t[1][0], t[1][1]);
6266
+ stream.point(t2[0][0], t2[0][1]);
6267
+ stream.point(t2[1][0], t2[1][1]);
6268
6268
  stream.lineEnd();
6269
6269
  } else {
6270
- stream.point(t[1][0], t[1][1]);
6270
+ stream.point(t2[1][0], t2[1][1]);
6271
6271
  stream.lineEnd();
6272
6272
  stream.lineStart();
6273
- stream.point(t[0][0], t[0][1], 3);
6273
+ stream.point(t2[0][0], t2[0][1], 3);
6274
6274
  }
6275
6275
  }
6276
6276
  }
6277
- if (v2 && (!point0 || !pointEqual(point0, point1))) {
6277
+ if (v3 && (!point0 || !pointEqual(point0, point1))) {
6278
6278
  stream.point(point1[0], point1[1]);
6279
6279
  }
6280
- point0 = point1, v0 = v2, c0 = c3;
6280
+ point0 = point1, v0 = v3, c0 = c3;
6281
6281
  },
6282
6282
  lineEnd: function() {
6283
6283
  if (v0) stream.lineEnd();
@@ -6298,7 +6298,7 @@ function clipCircle(radius) {
6298
6298
  cartesianAddInPlace(A3, B3);
6299
6299
  var u3 = n1xn2, w3 = cartesianDot(A3, u3), uu = cartesianDot(u3, u3), t2 = w3 * w3 - uu * (cartesianDot(A3, A3) - 1);
6300
6300
  if (t2 < 0) return;
6301
- var t = sqrt(t2), q2 = cartesianScale(u3, (-w3 - t) / uu);
6301
+ var t3 = sqrt(t2), q2 = cartesianScale(u3, (-w3 - t3) / uu);
6302
6302
  cartesianAddInPlace(q2, A3);
6303
6303
  q2 = spherical(q2);
6304
6304
  if (!two) return q2;
@@ -6307,62 +6307,62 @@ function clipCircle(radius) {
6307
6307
  var delta2 = lambda1 - lambda0, polar = abs(delta2 - pi) < epsilon, meridian = polar || delta2 < epsilon;
6308
6308
  if (!polar && phi1 < phi0) z2 = phi0, phi0 = phi1, phi1 = z2;
6309
6309
  if (meridian ? polar ? phi0 + phi1 > 0 ^ q2[1] < (abs(q2[0] - lambda0) < epsilon ? phi0 : phi1) : phi0 <= q2[1] && q2[1] <= phi1 : delta2 > pi ^ (lambda0 <= q2[0] && q2[0] <= lambda1)) {
6310
- var q1 = cartesianScale(u3, (-w3 + t) / uu);
6310
+ var q1 = cartesianScale(u3, (-w3 + t3) / uu);
6311
6311
  cartesianAddInPlace(q1, A3);
6312
6312
  return [q2, spherical(q1)];
6313
6313
  }
6314
6314
  }
6315
6315
  function code(lambda, phi) {
6316
- var r = smallRadius ? radius : pi - radius, code2 = 0;
6317
- if (lambda < -r) code2 |= 1;
6318
- else if (lambda > r) code2 |= 2;
6319
- if (phi < -r) code2 |= 4;
6320
- else if (phi > r) code2 |= 8;
6316
+ var r2 = smallRadius ? radius : pi - radius, code2 = 0;
6317
+ if (lambda < -r2) code2 |= 1;
6318
+ else if (lambda > r2) code2 |= 2;
6319
+ if (phi < -r2) code2 |= 4;
6320
+ else if (phi > r2) code2 |= 8;
6321
6321
  return code2;
6322
6322
  }
6323
6323
  return clip(visible, clipLine2, interpolate, smallRadius ? [0, -radius] : [-pi, radius - pi]);
6324
6324
  }
6325
6325
  function clipLine(a11, b4, x02, y02, x12, y12) {
6326
- var ax = a11[0], ay = a11[1], bx = b4[0], by = b4[1], t0 = 0, t1 = 1, dx = bx - ax, dy = by - ay, r;
6327
- r = x02 - ax;
6328
- if (!dx && r > 0) return;
6329
- r /= dx;
6326
+ var ax = a11[0], ay = a11[1], bx = b4[0], by = b4[1], t0 = 0, t1 = 1, dx = bx - ax, dy = by - ay, r2;
6327
+ r2 = x02 - ax;
6328
+ if (!dx && r2 > 0) return;
6329
+ r2 /= dx;
6330
6330
  if (dx < 0) {
6331
- if (r < t0) return;
6332
- if (r < t1) t1 = r;
6331
+ if (r2 < t0) return;
6332
+ if (r2 < t1) t1 = r2;
6333
6333
  } else if (dx > 0) {
6334
- if (r > t1) return;
6335
- if (r > t0) t0 = r;
6334
+ if (r2 > t1) return;
6335
+ if (r2 > t0) t0 = r2;
6336
6336
  }
6337
- r = x12 - ax;
6338
- if (!dx && r < 0) return;
6339
- r /= dx;
6337
+ r2 = x12 - ax;
6338
+ if (!dx && r2 < 0) return;
6339
+ r2 /= dx;
6340
6340
  if (dx < 0) {
6341
- if (r > t1) return;
6342
- if (r > t0) t0 = r;
6341
+ if (r2 > t1) return;
6342
+ if (r2 > t0) t0 = r2;
6343
6343
  } else if (dx > 0) {
6344
- if (r < t0) return;
6345
- if (r < t1) t1 = r;
6344
+ if (r2 < t0) return;
6345
+ if (r2 < t1) t1 = r2;
6346
6346
  }
6347
- r = y02 - ay;
6348
- if (!dy && r > 0) return;
6349
- r /= dy;
6347
+ r2 = y02 - ay;
6348
+ if (!dy && r2 > 0) return;
6349
+ r2 /= dy;
6350
6350
  if (dy < 0) {
6351
- if (r < t0) return;
6352
- if (r < t1) t1 = r;
6351
+ if (r2 < t0) return;
6352
+ if (r2 < t1) t1 = r2;
6353
6353
  } else if (dy > 0) {
6354
- if (r > t1) return;
6355
- if (r > t0) t0 = r;
6354
+ if (r2 > t1) return;
6355
+ if (r2 > t0) t0 = r2;
6356
6356
  }
6357
- r = y12 - ay;
6358
- if (!dy && r < 0) return;
6359
- r /= dy;
6357
+ r2 = y12 - ay;
6358
+ if (!dy && r2 < 0) return;
6359
+ r2 /= dy;
6360
6360
  if (dy < 0) {
6361
- if (r > t1) return;
6362
- if (r > t0) t0 = r;
6361
+ if (r2 > t1) return;
6362
+ if (r2 > t0) t0 = r2;
6363
6363
  } else if (dy > 0) {
6364
- if (r < t0) return;
6365
- if (r < t1) t1 = r;
6364
+ if (r2 < t0) return;
6365
+ if (r2 < t1) t1 = r2;
6366
6366
  }
6367
6367
  if (t0 > 0) a11[0] = ax + t0 * dx, a11[1] = ay + t0 * dy;
6368
6368
  if (t1 < 1) b4[0] = ax + t1 * dx, b4[1] = ay + t1 * dy;
@@ -6455,17 +6455,17 @@ function clipRectangle(x02, y02, x12, y12) {
6455
6455
  if (v_) activeStream.lineEnd();
6456
6456
  }
6457
6457
  function linePoint(x2, y2) {
6458
- var v2 = visible(x2, y2);
6458
+ var v3 = visible(x2, y2);
6459
6459
  if (polygon) ring.push([x2, y2]);
6460
6460
  if (first) {
6461
- x__ = x2, y__ = y2, v__ = v2;
6461
+ x__ = x2, y__ = y2, v__ = v3;
6462
6462
  first = false;
6463
- if (v2) {
6463
+ if (v3) {
6464
6464
  activeStream.lineStart();
6465
6465
  activeStream.point(x2, y2);
6466
6466
  }
6467
6467
  } else {
6468
- if (v2 && v_) activeStream.point(x2, y2);
6468
+ if (v3 && v_) activeStream.point(x2, y2);
6469
6469
  else {
6470
6470
  var a11 = [x_ = Math.max(clipMin, Math.min(clipMax, x_)), y_ = Math.max(clipMin, Math.min(clipMax, y_))], b4 = [x2 = Math.max(clipMin, Math.min(clipMax, x2)), y2 = Math.max(clipMin, Math.min(clipMax, y2))];
6471
6471
  if (clipLine(a11, b4, x02, y02, x12, y12)) {
@@ -6474,16 +6474,16 @@ function clipRectangle(x02, y02, x12, y12) {
6474
6474
  activeStream.point(a11[0], a11[1]);
6475
6475
  }
6476
6476
  activeStream.point(b4[0], b4[1]);
6477
- if (!v2) activeStream.lineEnd();
6477
+ if (!v3) activeStream.lineEnd();
6478
6478
  clean = false;
6479
- } else if (v2) {
6479
+ } else if (v3) {
6480
6480
  activeStream.lineStart();
6481
6481
  activeStream.point(x2, y2);
6482
6482
  clean = false;
6483
6483
  }
6484
6484
  }
6485
6485
  }
6486
- x_ = x2, y_ = y2, v_ = v2;
6486
+ x_ = x2, y_ = y2, v_ = v3;
6487
6487
  }
6488
6488
  return clipStream;
6489
6489
  };
@@ -6715,14 +6715,14 @@ class PathString {
6715
6715
  default: {
6716
6716
  this._append`M${x2},${y2}`;
6717
6717
  if (this._radius !== cacheRadius || this._append !== cacheAppend) {
6718
- const r = this._radius;
6719
- const s = this._;
6718
+ const r2 = this._radius;
6719
+ const s2 = this._;
6720
6720
  this._ = "";
6721
- this._append`m0,${r}a${r},${r} 0 1,1 0,${-2 * r}a${r},${r} 0 1,1 0,${2 * r}z`;
6722
- cacheRadius = r;
6721
+ this._append`m0,${r2}a${r2},${r2} 0 1,1 0,${-2 * r2}a${r2},${r2} 0 1,1 0,${2 * r2}z`;
6722
+ cacheRadius = r2;
6723
6723
  cacheAppend = this._append;
6724
6724
  cacheCircle = this._;
6725
- this._ = s;
6725
+ this._ = s2;
6726
6726
  }
6727
6727
  this._ += cacheCircle;
6728
6728
  break;
@@ -6815,10 +6815,10 @@ function geoPath(projection2, context) {
6815
6815
  }
6816
6816
  function transformer(methods) {
6817
6817
  return function(stream) {
6818
- var s = new TransformStream();
6819
- for (var key in methods) s[key] = methods[key];
6820
- s.stream = stream;
6821
- return s;
6818
+ var s2 = new TransformStream();
6819
+ for (var key in methods) s2[key] = methods[key];
6820
+ s2.stream = stream;
6821
+ return s2;
6822
6822
  };
6823
6823
  }
6824
6824
  function TransformStream() {
@@ -6956,8 +6956,8 @@ var transformRadians = transformer({
6956
6956
  function transformRotate(rotate) {
6957
6957
  return transformer({
6958
6958
  point: function(x2, y2) {
6959
- var r = rotate(x2, y2);
6960
- return this.stream.point(r[0], r[1]);
6959
+ var r2 = rotate(x2, y2);
6960
+ return this.stream.point(r2[0], r2[1]);
6961
6961
  }
6962
6962
  });
6963
6963
  }
@@ -7092,8 +7092,8 @@ function mercatorProjection(project) {
7092
7092
  return arguments.length ? (_2 == null ? x02 = y02 = x12 = y12 = null : (x02 = +_2[0][0], y02 = +_2[0][1], x12 = +_2[1][0], y12 = +_2[1][1]), reclip()) : x02 == null ? null : [[x02, y02], [x12, y12]];
7093
7093
  };
7094
7094
  function reclip() {
7095
- var k2 = pi * scale(), t = m2(rotation(m2.rotate()).invert([0, 0]));
7096
- return clipExtent(x02 == null ? [[t[0] - k2, t[1] - k2], [t[0] + k2, t[1] + k2]] : project === mercatorRaw ? [[Math.max(t[0] - k2, x02), y02], [Math.min(t[0] + k2, x12), y12]] : [[x02, Math.max(t[1] - k2, y02)], [x12, Math.min(t[1] + k2, y12)]]);
7095
+ var k2 = pi * scale(), t2 = m2(rotation(m2.rotate()).invert([0, 0]));
7096
+ return clipExtent(x02 == null ? [[t2[0] - k2, t2[1] - k2], [t2[0] + k2, t2[1] + k2]] : project === mercatorRaw ? [[Math.max(t2[0] - k2, x02), y02], [Math.min(t2[0] + k2, x12), y12]] : [[x02, Math.max(t2[1] - k2, y02)], [x12, Math.min(t2[1] + k2, y12)]]);
7097
7097
  }
7098
7098
  return reclip();
7099
7099
  }
@@ -7113,8 +7113,8 @@ function transform(transform2) {
7113
7113
  };
7114
7114
  }
7115
7115
  function reverse(array, n2) {
7116
- var t, j2 = array.length, i3 = j2 - n2;
7117
- while (i3 < --j2) t = array[i3], array[i3++] = array[j2], array[j2] = t;
7116
+ var t2, j2 = array.length, i3 = j2 - n2;
7117
+ while (i3 < --j2) t2 = array[i3], array[i3++] = array[j2], array[j2] = t2;
7118
7118
  }
7119
7119
  function topojsonFeature(topology, o2) {
7120
7120
  if (typeof o2 === "string") o2 = topology.objects[o2];
@@ -7279,7 +7279,7 @@ const ChoroplethMap = forwardRef(
7279
7279
  return String(p4.name ?? p4.nome ?? p4.NOME ?? p4.Name ?? getId(f2));
7280
7280
  };
7281
7281
  const numeric = Object.values(values).filter(
7282
- (v2) => typeof v2 === "number" && Number.isFinite(v2)
7282
+ (v3) => typeof v3 === "number" && Number.isFinite(v3)
7283
7283
  );
7284
7284
  const min = domain ? domain[0] : numeric.length ? Math.min(...numeric) : 0;
7285
7285
  const max = domain ? domain[1] : numeric.length ? Math.max(...numeric) : 0;
@@ -7290,12 +7290,12 @@ const ChoroplethMap = forwardRef(
7290
7290
  if (value === void 0 || !Number.isFinite(value)) return noDataVar;
7291
7291
  if (colorScale) return colorScale(value, { min, max });
7292
7292
  const range = max - min;
7293
- const t = range > 0 ? (value - min) / range : 1;
7294
- const clamped = Math.max(0, Math.min(1, t));
7293
+ const t2 = range > 0 ? (value - min) / range : 1;
7294
+ const clamped = Math.max(0, Math.min(1, t2));
7295
7295
  const pct = 12 + clamped * 88;
7296
7296
  return `color-mix(in srgb, ${scaleVar} ${pct}%, ${surfaceVar})`;
7297
7297
  };
7298
- const fmt = formatValue ?? ((v2) => new Intl.NumberFormat("pt-BR").format(v2));
7298
+ const fmt = formatValue ?? ((v3) => new Intl.NumberFormat("pt-BR").format(v3));
7299
7299
  const [hover, setHover] = useState(null);
7300
7300
  const legendGradient = `linear-gradient(to right, ${surfaceVar}, ${scaleVar})`;
7301
7301
  return /* @__PURE__ */ jsxs("div", { ref, className: styles2.root({ className }), children: [
@@ -7589,13 +7589,13 @@ function getPayloadConfigFromPayload(config, payload, key) {
7589
7589
  }
7590
7590
  return configLabelKey in config ? config[configLabelKey] : config[key];
7591
7591
  }
7592
- function asText$1(v2) {
7593
- return v2 == null ? "" : String(v2);
7592
+ function asText$1(v3) {
7593
+ return v3 == null ? "" : String(v3);
7594
7594
  }
7595
- function isEmptyVal(v2) {
7596
- if (v2 == null) return true;
7597
- if (typeof v2 === "string") return v2.length === 0;
7598
- if (Array.isArray(v2)) return v2.length === 0;
7595
+ function isEmptyVal(v3) {
7596
+ if (v3 == null) return true;
7597
+ if (typeof v3 === "string") return v3.length === 0;
7598
+ if (Array.isArray(v3)) return v3.length === 0;
7599
7599
  return false;
7600
7600
  }
7601
7601
  function matchOp(op, val, fv) {
@@ -7652,8 +7652,8 @@ function applyFilterModel(items, model, fieldsById) {
7652
7652
  const anyOf = group.filter((g2) => g2.operator === "isAnyOf").map((g2) => g2.value);
7653
7653
  const noneOf = group.filter((g2) => g2.operator === "isNoneOf").map((g2) => g2.value);
7654
7654
  const scalar = group.filter((g2) => g2.operator !== "isAnyOf" && g2.operator !== "isNoneOf");
7655
- if (anyOf.length && !anyOf.some((v2) => matchOp("equals", val, v2))) return false;
7656
- if (noneOf.length && noneOf.some((v2) => matchOp("equals", val, v2))) return false;
7655
+ if (anyOf.length && !anyOf.some((v3) => matchOp("equals", val, v3))) return false;
7656
+ if (noneOf.length && noneOf.some((v3) => matchOp("equals", val, v3))) return false;
7657
7657
  for (const g2 of scalar) {
7658
7658
  if (!matchOp(g2.operator, val, g2.value)) return false;
7659
7659
  }
@@ -7668,8 +7668,8 @@ function applyFilterModel(items, model, fieldsById) {
7668
7668
  }
7669
7669
  const EMPTY_MODEL = { items: [], logicOperator: "AND" };
7670
7670
  const EMPTY_QUERY = { search: "", filterModel: EMPTY_MODEL };
7671
- function asText(v2) {
7672
- return typeof v2 === "string" || typeof v2 === "number" ? String(v2) : "";
7671
+ function asText(v3) {
7672
+ return typeof v3 === "string" || typeof v3 === "number" ? String(v3) : "";
7673
7673
  }
7674
7674
  function loadPersisted(key) {
7675
7675
  if (!key || typeof localStorage === "undefined") return null;
@@ -7714,8 +7714,8 @@ function useDataList({
7714
7714
  onQueryChangeRef.current = onQueryChange;
7715
7715
  useEffect(() => {
7716
7716
  if (mode !== "server") return;
7717
- const t = setTimeout(() => onQueryChangeRef.current?.(query), 250);
7718
- return () => clearTimeout(t);
7717
+ const t2 = setTimeout(() => onQueryChangeRef.current?.(query), 250);
7718
+ return () => clearTimeout(t2);
7719
7719
  }, [mode, query]);
7720
7720
  const setSearch = useCallback((search) => {
7721
7721
  setActiveViewId(null);
@@ -7768,15 +7768,15 @@ function useDataList({
7768
7768
  }, [filterFields]);
7769
7769
  const matchesSearch = useCallback(
7770
7770
  (item) => {
7771
- const s = query.search.trim().toLowerCase();
7772
- if (!s) return true;
7771
+ const s2 = query.search.trim().toLowerCase();
7772
+ if (!s2) return true;
7773
7773
  const hay = [
7774
7774
  asText(item.title),
7775
7775
  asText(item.subtitle),
7776
7776
  asText(item.description),
7777
7777
  ...(filterFields ?? []).map((f2) => asText(f2.accessor(item)))
7778
7778
  ].join(" ").toLowerCase();
7779
- return hay.includes(s);
7779
+ return hay.includes(s2);
7780
7780
  },
7781
7781
  [query.search, filterFields]
7782
7782
  );
@@ -7824,11 +7824,11 @@ function toAppliedFilters(model, fieldsById) {
7824
7824
  return Array.from(grouped.entries()).map(([key, items]) => {
7825
7825
  const field = fieldsById.get(items[0].field);
7826
7826
  const columnLabel = field?.label ?? items[0].field;
7827
- const labelOf = (v2) => field?.options?.find((o2) => o2.value === String(v2))?.label ?? String(v2);
7827
+ const labelOf = (v3) => field?.options?.find((o2) => o2.value === String(v3))?.label ?? String(v3);
7828
7828
  const values = [];
7829
7829
  for (const it of items) {
7830
7830
  if (Array.isArray(it.value))
7831
- for (const v2 of it.value) values.push(labelOf(v2));
7831
+ for (const v3 of it.value) values.push(labelOf(v3));
7832
7832
  else if (it.value != null && it.value !== "")
7833
7833
  values.push(labelOf(it.value));
7834
7834
  }
@@ -7881,7 +7881,7 @@ function DataListToolbar({
7881
7881
  );
7882
7882
  const filterCount = appliedFilters.length;
7883
7883
  const [openChipKey, setOpenChipKey] = useState(null);
7884
- const isEmptyVal2 = (v2) => v2 == null || v2 === "" || Array.isArray(v2) && v2.length === 0;
7884
+ const isEmptyVal2 = (v3) => v3 == null || v3 === "" || Array.isArray(v3) && v3.length === 0;
7885
7885
  const setGroupValue = (field, operator, value) => {
7886
7886
  const rest = filterModel.items.filter(
7887
7887
  (i3) => !(i3.field === field && i3.operator === operator)
@@ -7920,7 +7920,7 @@ function DataListToolbar({
7920
7920
  /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: defaultChip }),
7921
7921
  /* @__PURE__ */ jsx(PopoverContent, { align: "start", className: "p-0", children: def.renderFastFilterInput({
7922
7922
  value: currentValue,
7923
- onChange: (v2) => setGroupValue(field, operator, v2),
7923
+ onChange: (v3) => setGroupValue(field, operator, v3),
7924
7924
  options: fieldDef.options,
7925
7925
  onClose: () => setOpenChipKey(null)
7926
7926
  }) })
@@ -7930,7 +7930,7 @@ function DataListToolbar({
7930
7930
  };
7931
7931
  const tabs = views.length > 0 ? [
7932
7932
  { id: ALL_VIEW_ID, name: title2 ?? "Todos" },
7933
- ...views.map((v2) => ({ id: v2.id, name: v2.label }))
7933
+ ...views.map((v3) => ({ id: v3.id, name: v3.label }))
7934
7934
  ] : void 0;
7935
7935
  const savedViewsSlot = tabs ? /* @__PURE__ */ jsx(
7936
7936
  ToolbarTabs,
@@ -7938,7 +7938,7 @@ function DataListToolbar({
7938
7938
  tabs,
7939
7939
  activeId: activeViewId ?? ALL_VIEW_ID,
7940
7940
  onSelect: (id) => onApplyView(
7941
- id === ALL_VIEW_ID ? null : views.find((v2) => v2.id === id) ?? null
7941
+ id === ALL_VIEW_ID ? null : views.find((v3) => v3.id === id) ?? null
7942
7942
  ),
7943
7943
  ariaLabel: "Visões"
7944
7944
  }
@@ -8050,7 +8050,7 @@ function DataListVirtualized({
8050
8050
  }) {
8051
8051
  const parentRef = useRef(null);
8052
8052
  const gap = density === "compact" ? 8 : 10;
8053
- const v2 = useVirtualizer({
8053
+ const v3 = useVirtualizer({
8054
8054
  count: items.length,
8055
8055
  getScrollElement: () => parentRef.current,
8056
8056
  estimateSize: () => estimateItemSize,
@@ -8060,13 +8060,13 @@ function DataListVirtualized({
8060
8060
  overscan: 8,
8061
8061
  gap
8062
8062
  });
8063
- return /* @__PURE__ */ jsx("div", { ref: parentRef, className: "overflow-auto scrollbar-thin", style: { height }, children: /* @__PURE__ */ jsx("div", { style: { height: v2.getTotalSize(), position: "relative", width: "100%" }, children: v2.getVirtualItems().map((row) => {
8063
+ return /* @__PURE__ */ jsx("div", { ref: parentRef, className: "overflow-auto scrollbar-thin", style: { height }, children: /* @__PURE__ */ jsx("div", { style: { height: v3.getTotalSize(), position: "relative", width: "100%" }, children: v3.getVirtualItems().map((row) => {
8064
8064
  const item = items[row.index];
8065
8065
  return /* @__PURE__ */ jsx(
8066
8066
  "div",
8067
8067
  {
8068
8068
  "data-index": row.index,
8069
- ref: v2.measureElement,
8069
+ ref: v3.measureElement,
8070
8070
  style: {
8071
8071
  position: "absolute",
8072
8072
  top: 0,
@@ -8393,22 +8393,22 @@ function ToastCard({
8393
8393
  onClose,
8394
8394
  toastId
8395
8395
  }) {
8396
- const s = toastVariants({ status });
8396
+ const s2 = toastVariants({ status });
8397
8397
  const hasFooter = Boolean(cancel);
8398
8398
  const inlineAction = action && !hasFooter ? action : null;
8399
8399
  const handleClose = () => {
8400
8400
  onClose?.();
8401
8401
  if (toastId !== void 0) toast$1.dismiss(toastId);
8402
8402
  };
8403
- return /* @__PURE__ */ jsxs("div", { className: s.root(), children: [
8404
- /* @__PURE__ */ jsxs("div", { className: s.row(), children: [
8405
- /* @__PURE__ */ jsx("span", { className: s.iconChip(), children: icon ?? DEFAULT_ICON[status] }),
8406
- /* @__PURE__ */ jsxs("div", { className: s.content(), children: [
8407
- /* @__PURE__ */ jsx("div", { className: s.title(), children: title2 }),
8408
- description2 && /* @__PURE__ */ jsx("div", { className: s.description(), children: description2 })
8403
+ return /* @__PURE__ */ jsxs("div", { className: s2.root(), children: [
8404
+ /* @__PURE__ */ jsxs("div", { className: s2.row(), children: [
8405
+ /* @__PURE__ */ jsx("span", { className: s2.iconChip(), children: icon ?? DEFAULT_ICON[status] }),
8406
+ /* @__PURE__ */ jsxs("div", { className: s2.content(), children: [
8407
+ /* @__PURE__ */ jsx("div", { className: s2.title(), children: title2 }),
8408
+ description2 && /* @__PURE__ */ jsx("div", { className: s2.description(), children: description2 })
8409
8409
  ] }),
8410
- (meta || inlineAction || onClose) && /* @__PURE__ */ jsxs("div", { className: s.rightCluster(), children: [
8411
- meta && /* @__PURE__ */ jsx("span", { className: s.meta(), children: meta }),
8410
+ (meta || inlineAction || onClose) && /* @__PURE__ */ jsxs("div", { className: s2.rightCluster(), children: [
8411
+ meta && /* @__PURE__ */ jsx("span", { className: s2.meta(), children: meta }),
8412
8412
  inlineAction && /* @__PURE__ */ jsx(ActionButton, { action: inlineAction }),
8413
8413
  onClose && /* @__PURE__ */ jsx(
8414
8414
  Button,
@@ -8423,7 +8423,7 @@ function ToastCard({
8423
8423
  )
8424
8424
  ] })
8425
8425
  ] }),
8426
- hasFooter && /* @__PURE__ */ jsxs("div", { className: s.footer(), children: [
8426
+ hasFooter && /* @__PURE__ */ jsxs("div", { className: s2.footer(), children: [
8427
8427
  cancel && /* @__PURE__ */ jsx(ActionButton, { action: { tone: "neutral", ...cancel } }),
8428
8428
  action && /* @__PURE__ */ jsx(ActionButton, { action })
8429
8429
  ] })
@@ -8435,7 +8435,7 @@ const STRIP_SONNER_BOX = {
8435
8435
  function show(opts, status) {
8436
8436
  const { duration, position, id, ...card } = opts;
8437
8437
  return toast$1.custom(
8438
- (t) => /* @__PURE__ */ jsx(ToastCard, { ...card, status, toastId: t }),
8438
+ (t2) => /* @__PURE__ */ jsx(ToastCard, { ...card, status, toastId: t2 }),
8439
8439
  { duration, position, id, classNames: STRIP_SONNER_BOX }
8440
8440
  );
8441
8441
  }
@@ -8493,7 +8493,7 @@ function useBrand(options) {
8493
8493
  }, []);
8494
8494
  useEffect(() => {
8495
8495
  if (typeof window === "undefined") return;
8496
- const valido = (v2) => typeof v2 === "string" && ids.split(",").includes(v2);
8496
+ const valido = (v3) => typeof v3 === "string" && ids.split(",").includes(v3);
8497
8497
  const onCustom = (e2) => {
8498
8498
  const next = e2.detail;
8499
8499
  if (valido(next)) setBrandState(next);
@@ -8681,7 +8681,10 @@ export {
8681
8681
  icons,
8682
8682
  a12 as inputGroupVariants,
8683
8683
  i2 as inputVariants,
8684
+ p2 as isExternalHref,
8684
8685
  isFilterEntryActive,
8686
+ q as isHashHref,
8687
+ r as isModifiedClick,
8685
8688
  markdownTextStyles,
8686
8689
  messageAckStyles,
8687
8690
  messageBubbleStyles,
@@ -8693,6 +8696,7 @@ export {
8693
8696
  phoneColumn,
8694
8697
  p as presetView,
8695
8698
  aj as savedViewsMockService,
8699
+ s as shouldPreventNavigation,
8696
8700
  statusColumn,
8697
8701
  textColumn,
8698
8702
  toast,
@@ -8701,10 +8705,10 @@ export {
8701
8705
  useChart,
8702
8706
  ak as useColumnResize,
8703
8707
  al as useColumnWidths,
8704
- p2 as useControllable,
8708
+ t as useControllable,
8705
8709
  am as useDataTableContext,
8706
8710
  an as useFloatingPanelResize,
8707
- q as useMediaQuery,
8711
+ v2 as useMediaQuery,
8708
8712
  u2 as useTheme,
8709
8713
  useToolbarFilterControl,
8710
8714
  useToolbarFilters,