@snksergio/design-system 0.46.0 → 0.47.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 (44) hide show
  1. package/dist-lib/chunks/{avatar-DFWEwBKu.mjs → avatar-Cj_m-wJy.mjs} +42 -42
  2. package/dist-lib/chunks/{avatar-DFWEwBKu.mjs.map → avatar-Cj_m-wJy.mjs.map} +1 -1
  3. package/dist-lib/chunks/{input-CfmzMYtd.mjs → input-CwRzwVPt.mjs} +2 -2
  4. package/dist-lib/chunks/{input-CfmzMYtd.mjs.map → input-CwRzwVPt.mjs.map} +1 -1
  5. package/dist-lib/chunks/{kpi-delta-DuxCD93G.mjs → kpi-delta-D9p1xD4T.mjs} +3 -3
  6. package/dist-lib/chunks/{kpi-delta-DuxCD93G.mjs.map → kpi-delta-D9p1xD4T.mjs.map} +1 -1
  7. package/dist-lib/chunks/{page-header--cPS_Z-a.mjs → page-header-DUxZjGdR.mjs} +2 -2
  8. package/dist-lib/chunks/{page-header--cPS_Z-a.mjs.map → page-header-DUxZjGdR.mjs.map} +1 -1
  9. package/dist-lib/chunks/{panel-BxYvTvlN.mjs → panel-BlMiCA9Z.mjs} +5 -5
  10. package/dist-lib/chunks/{panel-BxYvTvlN.mjs.map → panel-BlMiCA9Z.mjs.map} +1 -1
  11. package/dist-lib/chunks/{sheet-D1vQth7X.mjs → sheet-Bc-LMBDF.mjs} +2 -2
  12. package/dist-lib/chunks/{sheet-D1vQth7X.mjs.map → sheet-Bc-LMBDF.mjs.map} +1 -1
  13. package/dist-lib/chunks/{toggle-group-DPzjrk6O.mjs → toggle-group-Bol3G73g.mjs} +27 -14
  14. package/dist-lib/chunks/toggle-group-Bol3G73g.mjs.map +1 -0
  15. package/dist-lib/chunks/{toggle-group-FJHFIlJP.cjs → toggle-group-sXg1B2wN.cjs} +14 -1
  16. package/dist-lib/chunks/toggle-group-sXg1B2wN.cjs.map +1 -0
  17. package/dist-lib/chunks/{useTheme-CS_no6zP.mjs → useTheme-DNqHuA6o.mjs} +2 -2
  18. package/dist-lib/chunks/{useTheme-CS_no6zP.mjs.map → useTheme-DNqHuA6o.mjs.map} +1 -1
  19. package/dist-lib/index.cjs +90 -2
  20. package/dist-lib/index.cjs.map +1 -1
  21. package/dist-lib/index.mjs +235 -147
  22. package/dist-lib/index.mjs.map +1 -1
  23. package/dist-lib/preview/chat.mjs +3 -3
  24. package/dist-lib/preview/clientes.mjs +6 -6
  25. package/dist-lib/preview/dashboard.mjs +4 -4
  26. package/dist-lib/shadcn.cjs +2 -14
  27. package/dist-lib/shadcn.cjs.map +1 -1
  28. package/dist-lib/shadcn.mjs +56 -69
  29. package/dist-lib/shadcn.mjs.map +1 -1
  30. package/dist-lib/src/components/index.d.ts +1 -0
  31. package/dist-lib/src/components/index.d.ts.map +1 -1
  32. package/dist-lib/src/components/ui/ScreenLoader/index.d.ts +3 -0
  33. package/dist-lib/src/components/ui/ScreenLoader/index.d.ts.map +1 -0
  34. package/dist-lib/src/components/ui/ScreenLoader/screen-loader.d.ts +21 -0
  35. package/dist-lib/src/components/ui/ScreenLoader/screen-loader.d.ts.map +1 -0
  36. package/dist-lib/src/components/ui/ScreenLoader/screen-loader.styles.d.ts +111 -0
  37. package/dist-lib/src/components/ui/ScreenLoader/screen-loader.styles.d.ts.map +1 -0
  38. package/dist-lib/src/components/ui/ScreenLoader/screen-loader.types.d.ts +26 -0
  39. package/dist-lib/src/components/ui/ScreenLoader/screen-loader.types.d.ts.map +1 -0
  40. package/dist-lib/src/components/ui/Spinner/spinner.styles.d.ts +9 -0
  41. package/dist-lib/src/components/ui/Spinner/spinner.styles.d.ts.map +1 -1
  42. package/package.json +1 -1
  43. package/dist-lib/chunks/toggle-group-DPzjrk6O.mjs.map +0 -1
  44. package/dist-lib/chunks/toggle-group-FJHFIlJP.cjs.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
2
  import { useState, useRef, useEffect, useCallback, useMemo } from "react";
3
- import { t as tv, y as DropdownMenu, Q as DropdownMenuTrigger, B as Button, E as DropdownMenuContent, G as DropdownMenuItem, L as DropdownMenuSeparator, A as Avatar, a as AvatarFallback, c as cn } from "../chunks/avatar-DFWEwBKu.mjs";
4
- import { C as Chip, a as ChipGroup, b as ChipGroupItem, u as useTheme, A as AppShell } from "../chunks/useTheme-CS_no6zP.mjs";
3
+ import { a8 as tv, x as DropdownMenu, O as DropdownMenuTrigger, a7 as Button, z as DropdownMenuContent, E as DropdownMenuItem, J as DropdownMenuSeparator, A as Avatar, a as AvatarFallback, c as cn } from "../chunks/avatar-Cj_m-wJy.mjs";
4
+ import { C as Chip, a as ChipGroup, b as ChipGroupItem, u as useTheme, A as AppShell } from "../chunks/useTheme-DNqHuA6o.mjs";
5
5
  import { MoreVertical, CheckCircle2, Phone, Video, Tag, UserPlus, Archive, CheckCheck, Check, ArrowLeft, PanelRightClose, PanelRightOpen, Paperclip, Smile, Send, Mic, ChevronDown, X, Plus, Menu, Search } from "lucide-react";
6
6
  import { e as APP_SHELL_THEME_OPTIONS, c as APP_SHELL_MESSAGES, d as APP_SHELL_NOTIFICATIONS, A as APP_SHELL_COMMANDS, a as APP_SHELL_CONTEXTS } from "../chunks/app-shell-mocks-kWIVSzLs.mjs";
7
7
  import { C as CHANNEL_LABEL, a as CHANNEL_HEX, S as SAMPLE_MESSAGES, b as STATUS_DOT, F as FILTER_GROUPS, d as CONVERSATIONS, e as CONVERSATION_DETAILS, D as DEFAULT_DETAIL } from "../chunks/chat-v2-mocks-DvZRkhmz.mjs";
8
- import { I as Input } from "../chunks/input-CfmzMYtd.mjs";
8
+ import { I as Input } from "../chunks/input-CwRzwVPt.mjs";
9
9
  const chatV2Styles = tv({
10
10
  slots: {
11
11
  /** Body do AppShell — flex row com gap entre colunas. `relative` pra mobile overlays. */
@@ -1,13 +1,13 @@
1
1
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
2
  import { useState, useEffect, useRef, useCallback, useMemo } from "react";
3
- import { a as ChipGroup, b as ChipGroupItem, C as Chip, u as useTheme, A as AppShell } from "../chunks/useTheme-CS_no6zP.mjs";
3
+ import { a as ChipGroup, b as ChipGroupItem, C as Chip, u as useTheme, A as AppShell } from "../chunks/useTheme-DNqHuA6o.mjs";
4
4
  import { Pencil, Trash2, ChevronDown, MoreHorizontal, Plus, Download, Maximize2, Copy, Upload, RotateCcw, MessageSquare, Archive, Clock } from "lucide-react";
5
5
  import { S as STATUSES, a as STATUS_DOT, C as CATEGORIES, b as CITIES, A as AGENTS, d as CATEGORY_KIND, f as formatBRL, e as formatShortDate, g as CLIENTS_87, K as KANBAN_COLUMNS, h as STATUS_OPTIONS, i as CATEGORY_OPTIONS, j as AGENTS_LOOKUP, k as AGENT_OPTIONS } from "../chunks/clientes-showcase-mocks-CwWGCCmf.mjs";
6
- import { P as Panel, F as FormFieldInput, a as FormField, b as FormFieldSelect, c as FormFieldTextarea, d as FloatingPanel, p as presetView, D as DataTable, B as BulkActionButton, A as AlertModal } from "../chunks/panel-BxYvTvlN.mjs";
7
- import { t as tv, B as Button, A as Avatar, a as AvatarFallback } from "../chunks/avatar-DFWEwBKu.mjs";
8
- import "../chunks/input-CfmzMYtd.mjs";
9
- import "../chunks/sheet-D1vQth7X.mjs";
10
- import { P as PageHeader } from "../chunks/page-header--cPS_Z-a.mjs";
6
+ import { P as Panel, F as FormFieldInput, a as FormField, b as FormFieldSelect, c as FormFieldTextarea, d as FloatingPanel, p as presetView, D as DataTable, B as BulkActionButton, A as AlertModal } from "../chunks/panel-BlMiCA9Z.mjs";
7
+ import { a8 as tv, a7 as Button, A as Avatar, a as AvatarFallback } from "../chunks/avatar-Cj_m-wJy.mjs";
8
+ import "../chunks/input-CwRzwVPt.mjs";
9
+ import "../chunks/sheet-Bc-LMBDF.mjs";
10
+ import { P as PageHeader } from "../chunks/page-header-DUxZjGdR.mjs";
11
11
  import "react-dom";
12
12
  import { b as APP_SHELL_LAYOUT_OPTIONS, f as APP_SHELL_USER, e as APP_SHELL_THEME_OPTIONS, c as APP_SHELL_MESSAGES, d as APP_SHELL_NOTIFICATIONS, A as APP_SHELL_COMMANDS, a as APP_SHELL_CONTEXTS } from "../chunks/app-shell-mocks-kWIVSzLs.mjs";
13
13
  const drawerFormStyles = tv({
@@ -1,11 +1,11 @@
1
1
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
2
  import { useState } from "react";
3
- import { u as useTheme, A as AppShell, C as Chip } from "../chunks/useTheme-CS_no6zP.mjs";
3
+ import { u as useTheme, A as AppShell, C as Chip } from "../chunks/useTheme-DNqHuA6o.mjs";
4
4
  import { MoreVertical, ChevronDown, Calendar, Phone, Timer, CheckCircle2, UserPlus, Clock, TrendingUp, Star, Headphones, Bot, Sun, ArrowRight, MessageSquare, Send, Mail, Search } from "lucide-react";
5
5
  import { ResponsiveContainer, BarChart, CartesianGrid, XAxis, YAxis, Tooltip, Bar, PieChart, Pie, Cell, RadialBarChart, PolarAngleAxis, RadialBar, AreaChart, Area } from "recharts";
6
- import { B as Button, c as cn, A as Avatar, a as AvatarFallback } from "../chunks/avatar-DFWEwBKu.mjs";
7
- import { P as PageHeader } from "../chunks/page-header--cPS_Z-a.mjs";
8
- import { K as KpiGroup, a as Kpi, b as KpiDelta } from "../chunks/kpi-delta-DuxCD93G.mjs";
6
+ import { a7 as Button, c as cn, A as Avatar, a as AvatarFallback } from "../chunks/avatar-Cj_m-wJy.mjs";
7
+ import { P as PageHeader } from "../chunks/page-header-DUxZjGdR.mjs";
8
+ import { K as KpiGroup, a as Kpi, b as KpiDelta } from "../chunks/kpi-delta-D9p1xD4T.mjs";
9
9
  import { e as APP_SHELL_THEME_OPTIONS, c as APP_SHELL_MESSAGES, d as APP_SHELL_NOTIFICATIONS, A as APP_SHELL_COMMANDS, a as APP_SHELL_CONTEXTS } from "../chunks/app-shell-mocks-kWIVSzLs.mjs";
10
10
  const BRAZIL_VIEWBOX = "0 0 1000 912";
11
11
  const BRAZIL_PATHS = [
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const toggleGroup = require("./chunks/toggle-group-FJHFIlJP.cjs");
3
+ const toggleGroup = require("./chunks/toggle-group-sXg1B2wN.cjs");
4
4
  const sheet = require("./chunks/sheet-j-d_UX7R.cjs");
5
5
  const AspectRatioPrimitive = require("@radix-ui/react-aspect-ratio");
6
6
  const avatar = require("./chunks/avatar-eM5txRFZ.cjs");
@@ -28,18 +28,6 @@ function _interopNamespaceDefault(e) {
28
28
  const AspectRatioPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(AspectRatioPrimitive);
29
29
  const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
30
30
  const AspectRatio = AspectRatioPrimitive__namespace.Root;
31
- function Skeleton({
32
- className,
33
- ...props
34
- }) {
35
- return /* @__PURE__ */ jsxRuntime.jsx(
36
- "div",
37
- {
38
- className: avatar.cn("animate-pulse rounded-radius-md bg-bg-muted", className),
39
- ...props
40
- }
41
- );
42
- }
43
31
  const Toaster = ({ ...props }) => {
44
32
  const [isDark, setIsDark] = React__namespace.useState(
45
33
  () => typeof document !== "undefined" && document.documentElement.classList.contains("dark")
@@ -165,6 +153,7 @@ exports.RadioGroupItem = toggleGroup.RadioGroupItem;
165
153
  exports.ScrollArea = toggleGroup.ScrollArea;
166
154
  exports.ScrollBar = toggleGroup.ScrollBar;
167
155
  exports.Separator = toggleGroup.Separator;
156
+ exports.Skeleton = toggleGroup.Skeleton;
168
157
  exports.Slider = toggleGroup.Slider;
169
158
  exports.Tabs = toggleGroup.Tabs;
170
159
  exports.TabsContent = toggleGroup.TabsContent;
@@ -289,6 +278,5 @@ exports.inputGroupVariants = avatar.inputGroupVariants;
289
278
  exports.Input = input.Input;
290
279
  exports.inputVariants = input.inputVariants;
291
280
  exports.AspectRatio = AspectRatio;
292
- exports.Skeleton = Skeleton;
293
281
  exports.Toaster = Toaster;
294
282
  //# sourceMappingURL=shadcn.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadcn.cjs","sources":["../src/components/shadcn/aspect-ratio.tsx","../src/components/shadcn/skeleton.tsx","../src/components/shadcn/sonner.tsx"],"sourcesContent":["import * as AspectRatioPrimitive from \"@radix-ui/react-aspect-ratio\"\r\n\r\nconst AspectRatio = AspectRatioPrimitive.Root\r\n\r\nexport { AspectRatio }\r\n","import * as React from \"react\";\r\nimport { cn } from \"@/lib/utils\";\r\n\r\n/**\r\n * Skeleton — placeholder de carregamento (pulse). Tokenizado iGreen:\r\n * `bg-bg-muted` + `rounded-radius-md`. Componha vários pra desenhar a\r\n * silhueta do conteúdo (linha de texto, avatar, card) enquanto carrega.\r\n */\r\nfunction Skeleton({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) {\r\n return (\r\n <div\r\n className={cn(\"animate-pulse rounded-radius-md bg-bg-muted\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Skeleton };\r\n","import * as React from \"react\";\r\nimport {\r\n CircleCheck,\r\n Info,\r\n LoaderCircle,\r\n OctagonX,\r\n TriangleAlert,\r\n} from \"lucide-react\";\r\nimport { Toaster as Sonner } from \"sonner\";\r\n\r\ntype ToasterProps = React.ComponentProps<typeof Sonner>;\r\n\r\n/**\r\n * Toaster (Sonner) — notificações/toasts. Tokenizado iGreen: surface +\r\n * border-default + shadow-lg, texto via tokens fg, ícones por status.\r\n * Self-contained: segue o tema observando a classe `.dark` no <html>\r\n * (não depende de next-themes nem de hook externo — portável no copy-in).\r\n *\r\n * Monte UMA vez no root da app (`<Toaster />`) e dispare com\r\n * `toast.success(\"...\")` / `toast.error(...)` etc. do pacote `sonner`.\r\n */\r\nconst Toaster = ({ ...props }: ToasterProps) => {\r\n const [isDark, setIsDark] = React.useState(\r\n () =>\r\n typeof document !== \"undefined\" &&\r\n document.documentElement.classList.contains(\"dark\"),\r\n );\r\n\r\n React.useEffect(() => {\r\n const root = document.documentElement;\r\n const sync = () => setIsDark(root.classList.contains(\"dark\"));\r\n sync();\r\n const observer = new MutationObserver(sync);\r\n observer.observe(root, { attributes: true, attributeFilter: [\"class\"] });\r\n return () => observer.disconnect();\r\n }, []);\r\n\r\n return (\r\n <Sonner\r\n theme={isDark ? \"dark\" : \"light\"}\r\n className=\"toaster group\"\r\n icons={{\r\n success: <CircleCheck className=\"size-icon-sm\" />,\r\n info: <Info className=\"size-icon-sm\" />,\r\n warning: <TriangleAlert className=\"size-icon-sm\" />,\r\n error: <OctagonX className=\"size-icon-sm\" />,\r\n loading: <LoaderCircle className=\"size-icon-sm animate-spin\" />,\r\n }}\r\n toastOptions={{\r\n classNames: {\r\n toast:\r\n \"group toast group-[.toaster]:bg-bg-surface group-[.toaster]:text-fg-default group-[.toaster]:border-border-default group-[.toaster]:shadow-sh-lg\",\r\n description: \"group-[.toast]:text-fg-muted\",\r\n actionButton:\r\n \"group-[.toast]:bg-bg-brand group-[.toast]:text-fg-on-brand\",\r\n cancelButton:\r\n \"group-[.toast]:bg-bg-muted group-[.toast]:text-fg-muted\",\r\n },\r\n }}\r\n {...props}\r\n />\r\n );\r\n};\r\n\r\nexport { Toaster };\r\n"],"names":["AspectRatioPrimitive","jsx","cn","React","Sonner","CircleCheck","Info","TriangleAlert","OctagonX","LoaderCircle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAM,cAAcA,gCAAqB;ACMzC,SAAS,SAAS;AAAA,EAChB;AAAA,EACA,GAAG;AACL,GAAyC;AACvC,SACEC,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,OAAAA,GAAG,+CAA+C,SAAS;AAAA,MACrE,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;ACGA,MAAM,UAAU,CAAC,EAAE,GAAG,YAA0B;AAC9C,QAAM,CAAC,QAAQ,SAAS,IAAIC,iBAAM;AAAA,IAChC,MACE,OAAO,aAAa,eACpB,SAAS,gBAAgB,UAAU,SAAS,MAAM;AAAA,EAAA;AAGtDA,mBAAM,UAAU,MAAM;AACpB,UAAM,OAAO,SAAS;AACtB,UAAM,OAAO,MAAM,UAAU,KAAK,UAAU,SAAS,MAAM,CAAC;AAC5D,SAAA;AACA,UAAM,WAAW,IAAI,iBAAiB,IAAI;AAC1C,aAAS,QAAQ,MAAM,EAAE,YAAY,MAAM,iBAAiB,CAAC,OAAO,GAAG;AACvE,WAAO,MAAM,SAAS,WAAA;AAAA,EACxB,GAAG,CAAA,CAAE;AAEL,SACEF,2BAAAA;AAAAA,IAACG,OAAAA;AAAAA,IAAA;AAAA,MACC,OAAO,SAAS,SAAS;AAAA,MACzB,WAAU;AAAA,MACV,OAAO;AAAA,QACL,SAASH,2BAAAA,IAACI,YAAAA,aAAA,EAAY,WAAU,eAAA,CAAe;AAAA,QAC/C,MAAMJ,2BAAAA,IAACK,YAAAA,MAAA,EAAK,WAAU,eAAA,CAAe;AAAA,QACrC,SAASL,2BAAAA,IAACM,YAAAA,eAAA,EAAc,WAAU,eAAA,CAAe;AAAA,QACjD,OAAON,2BAAAA,IAACO,YAAAA,UAAA,EAAS,WAAU,eAAA,CAAe;AAAA,QAC1C,SAASP,2BAAAA,IAACQ,YAAAA,cAAA,EAAa,WAAU,4BAAA,CAA4B;AAAA,MAAA;AAAA,MAE/D,cAAc;AAAA,QACZ,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cACE;AAAA,UACF,cACE;AAAA,QAAA;AAAA,MACJ;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"shadcn.cjs","sources":["../src/components/shadcn/aspect-ratio.tsx","../src/components/shadcn/sonner.tsx"],"sourcesContent":["import * as AspectRatioPrimitive from \"@radix-ui/react-aspect-ratio\"\r\n\r\nconst AspectRatio = AspectRatioPrimitive.Root\r\n\r\nexport { AspectRatio }\r\n","import * as React from \"react\";\r\nimport {\r\n CircleCheck,\r\n Info,\r\n LoaderCircle,\r\n OctagonX,\r\n TriangleAlert,\r\n} from \"lucide-react\";\r\nimport { Toaster as Sonner } from \"sonner\";\r\n\r\ntype ToasterProps = React.ComponentProps<typeof Sonner>;\r\n\r\n/**\r\n * Toaster (Sonner) — notificações/toasts. Tokenizado iGreen: surface +\r\n * border-default + shadow-lg, texto via tokens fg, ícones por status.\r\n * Self-contained: segue o tema observando a classe `.dark` no <html>\r\n * (não depende de next-themes nem de hook externo — portável no copy-in).\r\n *\r\n * Monte UMA vez no root da app (`<Toaster />`) e dispare com\r\n * `toast.success(\"...\")` / `toast.error(...)` etc. do pacote `sonner`.\r\n */\r\nconst Toaster = ({ ...props }: ToasterProps) => {\r\n const [isDark, setIsDark] = React.useState(\r\n () =>\r\n typeof document !== \"undefined\" &&\r\n document.documentElement.classList.contains(\"dark\"),\r\n );\r\n\r\n React.useEffect(() => {\r\n const root = document.documentElement;\r\n const sync = () => setIsDark(root.classList.contains(\"dark\"));\r\n sync();\r\n const observer = new MutationObserver(sync);\r\n observer.observe(root, { attributes: true, attributeFilter: [\"class\"] });\r\n return () => observer.disconnect();\r\n }, []);\r\n\r\n return (\r\n <Sonner\r\n theme={isDark ? \"dark\" : \"light\"}\r\n className=\"toaster group\"\r\n icons={{\r\n success: <CircleCheck className=\"size-icon-sm\" />,\r\n info: <Info className=\"size-icon-sm\" />,\r\n warning: <TriangleAlert className=\"size-icon-sm\" />,\r\n error: <OctagonX className=\"size-icon-sm\" />,\r\n loading: <LoaderCircle className=\"size-icon-sm animate-spin\" />,\r\n }}\r\n toastOptions={{\r\n classNames: {\r\n toast:\r\n \"group toast group-[.toaster]:bg-bg-surface group-[.toaster]:text-fg-default group-[.toaster]:border-border-default group-[.toaster]:shadow-sh-lg\",\r\n description: \"group-[.toast]:text-fg-muted\",\r\n actionButton:\r\n \"group-[.toast]:bg-bg-brand group-[.toast]:text-fg-on-brand\",\r\n cancelButton:\r\n \"group-[.toast]:bg-bg-muted group-[.toast]:text-fg-muted\",\r\n },\r\n }}\r\n {...props}\r\n />\r\n );\r\n};\r\n\r\nexport { Toaster };\r\n"],"names":["AspectRatioPrimitive","React","jsx","Sonner","CircleCheck","Info","TriangleAlert","OctagonX","LoaderCircle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAM,cAAcA,gCAAqB;ACmBzC,MAAM,UAAU,CAAC,EAAE,GAAG,YAA0B;AAC9C,QAAM,CAAC,QAAQ,SAAS,IAAIC,iBAAM;AAAA,IAChC,MACE,OAAO,aAAa,eACpB,SAAS,gBAAgB,UAAU,SAAS,MAAM;AAAA,EAAA;AAGtDA,mBAAM,UAAU,MAAM;AACpB,UAAM,OAAO,SAAS;AACtB,UAAM,OAAO,MAAM,UAAU,KAAK,UAAU,SAAS,MAAM,CAAC;AAC5D,SAAA;AACA,UAAM,WAAW,IAAI,iBAAiB,IAAI;AAC1C,aAAS,QAAQ,MAAM,EAAE,YAAY,MAAM,iBAAiB,CAAC,OAAO,GAAG;AACvE,WAAO,MAAM,SAAS,WAAA;AAAA,EACxB,GAAG,CAAA,CAAE;AAEL,SACEC,2BAAAA;AAAAA,IAACC,OAAAA;AAAAA,IAAA;AAAA,MACC,OAAO,SAAS,SAAS;AAAA,MACzB,WAAU;AAAA,MACV,OAAO;AAAA,QACL,SAASD,2BAAAA,IAACE,YAAAA,aAAA,EAAY,WAAU,eAAA,CAAe;AAAA,QAC/C,MAAMF,2BAAAA,IAACG,YAAAA,MAAA,EAAK,WAAU,eAAA,CAAe;AAAA,QACrC,SAASH,2BAAAA,IAACI,YAAAA,eAAA,EAAc,WAAU,eAAA,CAAe;AAAA,QACjD,OAAOJ,2BAAAA,IAACK,YAAAA,UAAA,EAAS,WAAU,eAAA,CAAe;AAAA,QAC1C,SAASL,2BAAAA,IAACM,YAAAA,cAAA,EAAa,WAAU,4BAAA,CAA4B;AAAA,MAAA;AAAA,MAE/D,cAAc;AAAA,QACZ,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cACE;AAAA,UACF,cACE;AAAA,QAAA;AAAA,MACJ;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,26 +1,13 @@
1
- import { A, a, b, c, d, e, f, B, g, h, i, j, k, l, m, C, n, o, p, q, r, s, t, u, v, w, x, y, z, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, _, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, au, av, aw, ax, ay, az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK } from "./chunks/toggle-group-DPzjrk6O.mjs";
2
- import { A as A2, a as a10, b as b2, c as c2, d as d2, e as e2, f as f2, g as g2, h as h2, i as i2, j as j2, C as C2, k as k2, l as l2, P as P2, m as m2, n as n2, o as o2, p as p2, q as q2, r as r2, s as s2, t as t2, S as S2, u as u2, v as v2, w as w2, x as x2, y as y2, z as z2, B as B2, D as D2, E as E2, F as F2, G as G2, H as H2, I as I2, J as J2, K as K2, L as L2, M as M2, N as N2, O as O2, Q as Q2, T as T2, R as R2, U as U2, V as V2, W as W2 } from "./chunks/sheet-D1vQth7X.mjs";
1
+ import { A, a, b, c, d, e, f, B, g, h, i, j, k, l, m, C, n, o, p, q, r, s, t, u, v, w, x, y, z, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, _, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, au, av, aw, ax, ay, az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK, aL } from "./chunks/toggle-group-Bol3G73g.mjs";
2
+ import { A as A2, a as a10, b as b2, c as c2, d as d2, e as e2, f as f2, g as g2, h as h2, i as i2, j as j2, C as C2, k as k2, l as l2, P as P2, m as m2, n as n2, o as o2, p as p2, q as q2, r as r2, s as s2, t as t2, S as S2, u as u2, v as v2, w as w2, x as x2, y as y2, z as z2, B as B2, D as D2, E as E2, F as F2, G as G2, H as H2, I as I2, J as J2, K as K2, L as L2, M as M2, N as N2, O as O2, Q as Q2, T as T2, R as R2, U as U2, V as V2, W as W2 } from "./chunks/sheet-Bc-LMBDF.mjs";
3
3
  import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
4
- import { c as cn } from "./chunks/avatar-DFWEwBKu.mjs";
5
- import { A as A3, a as a11, b as b3, C as C3, d as d3, e as e3, f as f3, g as g3, h as h3, i as i3, j as j3, k as k3, l as l3, m as m3, n as n3, D as D3, o as o3, p as p3, q as q3, r as r3, s as s3, u as u3, v as v3, w as w3, x as x3, y as y3, z as z3, E as E3, F as F3, G as G3, H as H3, I as I3, J as J3, K as K3, L as L3, M as M3, N as N3, O as O3, P as P3, Q as Q3, R as R3, S as S3, T as T3, U as U3, V as V3, W as W3, X as X2, Y as Y2, Z as Z2, _ as _2, $ as $2, a0 as a02, a1 as a12, a2 as a22, a3 as a32, a4 as a42, a5 as a52, a6 as a62, a7 as a72, a8 as a82 } from "./chunks/avatar-DFWEwBKu.mjs";
6
- import { I as I4, i as i4 } from "./chunks/input-CfmzMYtd.mjs";
4
+ import { A as A3, a as a11, b as b3, C as C3, d as d3, e as e3, f as f3, g as g3, h as h3, i as i3, j as j3, k as k3, l as l3, m as m3, n as n3, D as D3, o as o3, p as p3, q as q3, r as r3, s as s3, t as t3, u as u3, v as v3, w as w3, x as x3, y as y3, z as z3, B as B3, E as E3, F as F3, G as G3, H as H3, I as I3, J as J3, K as K3, L as L3, M as M3, N as N3, O as O3, P as P3, Q as Q3, R as R3, S as S3, T as T3, U as U3, V as V3, W as W3, X as X2, Y as Y2, Z as Z2, _ as _2, $ as $2, a0 as a02, a1 as a12, a2 as a22, a3 as a32, a4 as a42, a5 as a52, a6 as a62 } from "./chunks/avatar-Cj_m-wJy.mjs";
5
+ import { I as I4, i as i4 } from "./chunks/input-CwRzwVPt.mjs";
7
6
  import { jsx } from "react/jsx-runtime";
8
7
  import * as React from "react";
9
8
  import { LoaderCircle, OctagonX, TriangleAlert, Info, CircleCheck } from "lucide-react";
10
9
  import { Toaster as Toaster$1 } from "sonner";
11
10
  const AspectRatio = AspectRatioPrimitive.Root;
12
- function Skeleton({
13
- className,
14
- ...props
15
- }) {
16
- return /* @__PURE__ */ jsx(
17
- "div",
18
- {
19
- className: cn("animate-pulse rounded-radius-md bg-bg-muted", className),
20
- ...props
21
- }
22
- );
23
- }
24
11
  const Toaster = ({ ...props }) => {
25
12
  const [isDark, setIsDark] = React.useState(
26
13
  () => typeof document !== "undefined" && document.documentElement.classList.contains("dark")
@@ -135,10 +122,10 @@ export {
135
122
  q3 as DialogDescription,
136
123
  r3 as DialogFooter,
137
124
  s3 as DialogHeader,
138
- u3 as DialogOverlay,
139
- v3 as DialogPortal,
140
- w3 as DialogTitle,
141
- x3 as DialogTrigger,
125
+ t3 as DialogOverlay,
126
+ u3 as DialogPortal,
127
+ v3 as DialogTitle,
128
+ w3 as DialogTrigger,
142
129
  P as Drawer,
143
130
  Q as DrawerClose,
144
131
  R as DrawerContent,
@@ -149,31 +136,31 @@ export {
149
136
  W as DrawerPortal,
150
137
  X as DrawerTitle,
151
138
  Y as DrawerTrigger,
152
- y3 as DropdownMenu,
153
- z3 as DropdownMenuCheckboxItem,
154
- E3 as DropdownMenuContent,
155
- F3 as DropdownMenuGroup,
156
- G3 as DropdownMenuItem,
157
- H3 as DropdownMenuLabel,
158
- I3 as DropdownMenuPortal,
159
- J3 as DropdownMenuRadioGroup,
160
- K3 as DropdownMenuRadioItem,
161
- L3 as DropdownMenuSeparator,
162
- M3 as DropdownMenuShortcut,
163
- N3 as DropdownMenuSub,
164
- O3 as DropdownMenuSubContent,
165
- P3 as DropdownMenuSubTrigger,
166
- Q3 as DropdownMenuTrigger,
139
+ x3 as DropdownMenu,
140
+ y3 as DropdownMenuCheckboxItem,
141
+ z3 as DropdownMenuContent,
142
+ B3 as DropdownMenuGroup,
143
+ E3 as DropdownMenuItem,
144
+ F3 as DropdownMenuLabel,
145
+ G3 as DropdownMenuPortal,
146
+ H3 as DropdownMenuRadioGroup,
147
+ I3 as DropdownMenuRadioItem,
148
+ J3 as DropdownMenuSeparator,
149
+ K3 as DropdownMenuShortcut,
150
+ L3 as DropdownMenuSub,
151
+ M3 as DropdownMenuSubContent,
152
+ N3 as DropdownMenuSubTrigger,
153
+ O3 as DropdownMenuTrigger,
167
154
  Z as HoverCard,
168
155
  _ as HoverCardContent,
169
156
  $ as HoverCardTrigger,
170
157
  I4 as Input,
171
- R3 as InputGroup,
172
- S3 as InputGroupAddon,
173
- T3 as InputGroupButton,
174
- U3 as InputGroupInput,
175
- V3 as InputGroupText,
176
- W3 as InputGroupTextarea,
158
+ P3 as InputGroup,
159
+ Q3 as InputGroupAddon,
160
+ R3 as InputGroupButton,
161
+ S3 as InputGroupInput,
162
+ T3 as InputGroupText,
163
+ U3 as InputGroupTextarea,
177
164
  a0 as InputOTP,
178
165
  a1 as InputOTPGroup,
179
166
  a2 as InputOTPSeparator,
@@ -212,11 +199,11 @@ export {
212
199
  r2 as PaginationLink,
213
200
  s2 as PaginationNext,
214
201
  t2 as PaginationPrevious,
215
- X2 as Popover,
216
- Y2 as PopoverAnchor,
217
- Z2 as PopoverClose,
218
- _2 as PopoverContent,
219
- $2 as PopoverTrigger,
202
+ V3 as Popover,
203
+ W3 as PopoverAnchor,
204
+ X2 as PopoverClose,
205
+ Y2 as PopoverContent,
206
+ Z2 as PopoverTrigger,
220
207
  at as Progress,
221
208
  au as RadioGroup,
222
209
  av as RadioGroupItem,
@@ -243,35 +230,35 @@ export {
243
230
  M2 as SheetPortal,
244
231
  N2 as SheetTitle,
245
232
  O2 as SheetTrigger,
246
- Skeleton,
247
- az as Slider,
233
+ az as Skeleton,
234
+ aA as Slider,
248
235
  Q2 as Switch,
249
- aA as Tabs,
250
- aB as TabsContent,
251
- aC as TabsList,
252
- aD as TabsTrigger,
236
+ aB as Tabs,
237
+ aC as TabsContent,
238
+ aD as TabsList,
239
+ aE as TabsTrigger,
253
240
  T2 as Textarea,
254
241
  Toaster,
255
- aE as Toggle,
256
- aF as ToggleGroup,
257
- aG as ToggleGroupItem,
258
- a02 as Tooltip,
259
- a12 as TooltipContent,
260
- a22 as TooltipProvider,
261
- a32 as TooltipTrigger,
262
- aH as badgeVariants,
242
+ aF as Toggle,
243
+ aG as ToggleGroup,
244
+ aH as ToggleGroupItem,
245
+ _2 as Tooltip,
246
+ $2 as TooltipContent,
247
+ a02 as TooltipProvider,
248
+ a12 as TooltipTrigger,
249
+ aI as badgeVariants,
263
250
  R2 as getPaginationRange,
264
- a42 as inputGroupAddonVariants,
265
- a52 as inputGroupButtonVariants,
266
- a62 as inputGroupInputVariants,
267
- a72 as inputGroupTextareaVariants,
268
- a82 as inputGroupVariants,
251
+ a22 as inputGroupAddonVariants,
252
+ a32 as inputGroupButtonVariants,
253
+ a42 as inputGroupInputVariants,
254
+ a52 as inputGroupTextareaVariants,
255
+ a62 as inputGroupVariants,
269
256
  i4 as inputVariants,
270
- aI as navigationMenuTriggerStyle,
257
+ aJ as navigationMenuTriggerStyle,
271
258
  U2 as paginationLinkVariants,
272
259
  V2 as paginationNavVariants,
273
- aJ as slotVariants,
260
+ aK as slotVariants,
274
261
  W2 as textareaVariants,
275
- aK as toggleVariants
262
+ aL as toggleVariants
276
263
  };
277
264
  //# sourceMappingURL=shadcn.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadcn.mjs","sources":["../src/components/shadcn/aspect-ratio.tsx","../src/components/shadcn/skeleton.tsx","../src/components/shadcn/sonner.tsx"],"sourcesContent":["import * as AspectRatioPrimitive from \"@radix-ui/react-aspect-ratio\"\r\n\r\nconst AspectRatio = AspectRatioPrimitive.Root\r\n\r\nexport { AspectRatio }\r\n","import * as React from \"react\";\r\nimport { cn } from \"@/lib/utils\";\r\n\r\n/**\r\n * Skeleton — placeholder de carregamento (pulse). Tokenizado iGreen:\r\n * `bg-bg-muted` + `rounded-radius-md`. Componha vários pra desenhar a\r\n * silhueta do conteúdo (linha de texto, avatar, card) enquanto carrega.\r\n */\r\nfunction Skeleton({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) {\r\n return (\r\n <div\r\n className={cn(\"animate-pulse rounded-radius-md bg-bg-muted\", className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Skeleton };\r\n","import * as React from \"react\";\r\nimport {\r\n CircleCheck,\r\n Info,\r\n LoaderCircle,\r\n OctagonX,\r\n TriangleAlert,\r\n} from \"lucide-react\";\r\nimport { Toaster as Sonner } from \"sonner\";\r\n\r\ntype ToasterProps = React.ComponentProps<typeof Sonner>;\r\n\r\n/**\r\n * Toaster (Sonner) — notificações/toasts. Tokenizado iGreen: surface +\r\n * border-default + shadow-lg, texto via tokens fg, ícones por status.\r\n * Self-contained: segue o tema observando a classe `.dark` no <html>\r\n * (não depende de next-themes nem de hook externo — portável no copy-in).\r\n *\r\n * Monte UMA vez no root da app (`<Toaster />`) e dispare com\r\n * `toast.success(\"...\")` / `toast.error(...)` etc. do pacote `sonner`.\r\n */\r\nconst Toaster = ({ ...props }: ToasterProps) => {\r\n const [isDark, setIsDark] = React.useState(\r\n () =>\r\n typeof document !== \"undefined\" &&\r\n document.documentElement.classList.contains(\"dark\"),\r\n );\r\n\r\n React.useEffect(() => {\r\n const root = document.documentElement;\r\n const sync = () => setIsDark(root.classList.contains(\"dark\"));\r\n sync();\r\n const observer = new MutationObserver(sync);\r\n observer.observe(root, { attributes: true, attributeFilter: [\"class\"] });\r\n return () => observer.disconnect();\r\n }, []);\r\n\r\n return (\r\n <Sonner\r\n theme={isDark ? \"dark\" : \"light\"}\r\n className=\"toaster group\"\r\n icons={{\r\n success: <CircleCheck className=\"size-icon-sm\" />,\r\n info: <Info className=\"size-icon-sm\" />,\r\n warning: <TriangleAlert className=\"size-icon-sm\" />,\r\n error: <OctagonX className=\"size-icon-sm\" />,\r\n loading: <LoaderCircle className=\"size-icon-sm animate-spin\" />,\r\n }}\r\n toastOptions={{\r\n classNames: {\r\n toast:\r\n \"group toast group-[.toaster]:bg-bg-surface group-[.toaster]:text-fg-default group-[.toaster]:border-border-default group-[.toaster]:shadow-sh-lg\",\r\n description: \"group-[.toast]:text-fg-muted\",\r\n actionButton:\r\n \"group-[.toast]:bg-bg-brand group-[.toast]:text-fg-on-brand\",\r\n cancelButton:\r\n \"group-[.toast]:bg-bg-muted group-[.toast]:text-fg-muted\",\r\n },\r\n }}\r\n {...props}\r\n />\r\n );\r\n};\r\n\r\nexport { Toaster };\r\n"],"names":["Sonner"],"mappings":";;;;;;;;;;AAEA,MAAM,cAAc,qBAAqB;ACMzC,SAAS,SAAS;AAAA,EAChB;AAAA,EACA,GAAG;AACL,GAAyC;AACvC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,GAAG,+CAA+C,SAAS;AAAA,MACrE,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;ACGA,MAAM,UAAU,CAAC,EAAE,GAAG,YAA0B;AAC9C,QAAM,CAAC,QAAQ,SAAS,IAAI,MAAM;AAAA,IAChC,MACE,OAAO,aAAa,eACpB,SAAS,gBAAgB,UAAU,SAAS,MAAM;AAAA,EAAA;AAGtD,QAAM,UAAU,MAAM;AACpB,UAAM,OAAO,SAAS;AACtB,UAAM,OAAO,MAAM,UAAU,KAAK,UAAU,SAAS,MAAM,CAAC;AAC5D,SAAA;AACA,UAAM,WAAW,IAAI,iBAAiB,IAAI;AAC1C,aAAS,QAAQ,MAAM,EAAE,YAAY,MAAM,iBAAiB,CAAC,OAAO,GAAG;AACvE,WAAO,MAAM,SAAS,WAAA;AAAA,EACxB,GAAG,CAAA,CAAE;AAEL,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC,OAAO,SAAS,SAAS;AAAA,MACzB,WAAU;AAAA,MACV,OAAO;AAAA,QACL,SAAS,oBAAC,aAAA,EAAY,WAAU,eAAA,CAAe;AAAA,QAC/C,MAAM,oBAAC,MAAA,EAAK,WAAU,eAAA,CAAe;AAAA,QACrC,SAAS,oBAAC,eAAA,EAAc,WAAU,eAAA,CAAe;AAAA,QACjD,OAAO,oBAAC,UAAA,EAAS,WAAU,eAAA,CAAe;AAAA,QAC1C,SAAS,oBAAC,cAAA,EAAa,WAAU,4BAAA,CAA4B;AAAA,MAAA;AAAA,MAE/D,cAAc;AAAA,QACZ,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cACE;AAAA,UACF,cACE;AAAA,QAAA;AAAA,MACJ;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
1
+ {"version":3,"file":"shadcn.mjs","sources":["../src/components/shadcn/aspect-ratio.tsx","../src/components/shadcn/sonner.tsx"],"sourcesContent":["import * as AspectRatioPrimitive from \"@radix-ui/react-aspect-ratio\"\r\n\r\nconst AspectRatio = AspectRatioPrimitive.Root\r\n\r\nexport { AspectRatio }\r\n","import * as React from \"react\";\r\nimport {\r\n CircleCheck,\r\n Info,\r\n LoaderCircle,\r\n OctagonX,\r\n TriangleAlert,\r\n} from \"lucide-react\";\r\nimport { Toaster as Sonner } from \"sonner\";\r\n\r\ntype ToasterProps = React.ComponentProps<typeof Sonner>;\r\n\r\n/**\r\n * Toaster (Sonner) — notificações/toasts. Tokenizado iGreen: surface +\r\n * border-default + shadow-lg, texto via tokens fg, ícones por status.\r\n * Self-contained: segue o tema observando a classe `.dark` no <html>\r\n * (não depende de next-themes nem de hook externo — portável no copy-in).\r\n *\r\n * Monte UMA vez no root da app (`<Toaster />`) e dispare com\r\n * `toast.success(\"...\")` / `toast.error(...)` etc. do pacote `sonner`.\r\n */\r\nconst Toaster = ({ ...props }: ToasterProps) => {\r\n const [isDark, setIsDark] = React.useState(\r\n () =>\r\n typeof document !== \"undefined\" &&\r\n document.documentElement.classList.contains(\"dark\"),\r\n );\r\n\r\n React.useEffect(() => {\r\n const root = document.documentElement;\r\n const sync = () => setIsDark(root.classList.contains(\"dark\"));\r\n sync();\r\n const observer = new MutationObserver(sync);\r\n observer.observe(root, { attributes: true, attributeFilter: [\"class\"] });\r\n return () => observer.disconnect();\r\n }, []);\r\n\r\n return (\r\n <Sonner\r\n theme={isDark ? \"dark\" : \"light\"}\r\n className=\"toaster group\"\r\n icons={{\r\n success: <CircleCheck className=\"size-icon-sm\" />,\r\n info: <Info className=\"size-icon-sm\" />,\r\n warning: <TriangleAlert className=\"size-icon-sm\" />,\r\n error: <OctagonX className=\"size-icon-sm\" />,\r\n loading: <LoaderCircle className=\"size-icon-sm animate-spin\" />,\r\n }}\r\n toastOptions={{\r\n classNames: {\r\n toast:\r\n \"group toast group-[.toaster]:bg-bg-surface group-[.toaster]:text-fg-default group-[.toaster]:border-border-default group-[.toaster]:shadow-sh-lg\",\r\n description: \"group-[.toast]:text-fg-muted\",\r\n actionButton:\r\n \"group-[.toast]:bg-bg-brand group-[.toast]:text-fg-on-brand\",\r\n cancelButton:\r\n \"group-[.toast]:bg-bg-muted group-[.toast]:text-fg-muted\",\r\n },\r\n }}\r\n {...props}\r\n />\r\n );\r\n};\r\n\r\nexport { Toaster };\r\n"],"names":["Sonner"],"mappings":";;;;;;;;;AAEA,MAAM,cAAc,qBAAqB;ACmBzC,MAAM,UAAU,CAAC,EAAE,GAAG,YAA0B;AAC9C,QAAM,CAAC,QAAQ,SAAS,IAAI,MAAM;AAAA,IAChC,MACE,OAAO,aAAa,eACpB,SAAS,gBAAgB,UAAU,SAAS,MAAM;AAAA,EAAA;AAGtD,QAAM,UAAU,MAAM;AACpB,UAAM,OAAO,SAAS;AACtB,UAAM,OAAO,MAAM,UAAU,KAAK,UAAU,SAAS,MAAM,CAAC;AAC5D,SAAA;AACA,UAAM,WAAW,IAAI,iBAAiB,IAAI;AAC1C,aAAS,QAAQ,MAAM,EAAE,YAAY,MAAM,iBAAiB,CAAC,OAAO,GAAG;AACvE,WAAO,MAAM,SAAS,WAAA;AAAA,EACxB,GAAG,CAAA,CAAE;AAEL,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC,OAAO,SAAS,SAAS;AAAA,MACzB,WAAU;AAAA,MACV,OAAO;AAAA,QACL,SAAS,oBAAC,aAAA,EAAY,WAAU,eAAA,CAAe;AAAA,QAC/C,MAAM,oBAAC,MAAA,EAAK,WAAU,eAAA,CAAe;AAAA,QACrC,SAAS,oBAAC,eAAA,EAAc,WAAU,eAAA,CAAe;AAAA,QACjD,OAAO,oBAAC,UAAA,EAAS,WAAU,eAAA,CAAe;AAAA,QAC1C,SAAS,oBAAC,cAAA,EAAa,WAAU,4BAAA,CAA4B;AAAA,MAAA;AAAA,MAE/D,cAAc;AAAA,QACZ,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cACE;AAAA,UACF,cACE;AAAA,QAAA;AAAA,MACJ;AAAA,MAED,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
@@ -39,6 +39,7 @@ export * from './ui/Modal';
39
39
  export * from './ui/MonthYearPicker';
40
40
  export * from './ui/PageHeader';
41
41
  export * from './ui/Panel';
42
+ export * from './ui/ScreenLoader';
42
43
  export * from './ui/SingleMenuSidebar';
43
44
  export * from './ui/Spinner';
44
45
  export * from './ui/Table';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { ScreenLoader } from './screen-loader';
2
+ export type { ScreenLoaderProps, ScreenLoaderSize, ScreenLoaderVariant, } from './screen-loader.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/ScreenLoader/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { ScreenLoaderProps } from './screen-loader.types';
2
+ /**
3
+ * ScreenLoader — estado de carregamento de página/área. Coloque DENTRO do
4
+ * container que está carregando (slot de conteúdo do AppShell, card, section):
5
+ * ele preenche o pai e centraliza o indicador — nunca `position: fixed`.
6
+ *
7
+ * Duas variações:
8
+ * - `spinner` (default): Spinner centrado + título + descrição — primeira
9
+ * carga genérica, quando o layout final não é conhecido.
10
+ * - `skeleton`: silhueta genérica de página, deliberadamente sem prever o
11
+ * layout final. `skeletonLayout` escolhe os blocos: "page" (header +
12
+ * conteúdo, default), "dashboard" (header + linha de KPIs + conteúdo) e
13
+ * "kpis" (linha de KPIs + conteúdo, sem header). Layout conhecido →
14
+ * componha `Skeleton` na mão em vez desta variante.
15
+ *
16
+ * A11y: o root anuncia via `role="status"`; o Spinner interno vai `aria-hidden`
17
+ * (o título já anuncia — evita leitura duplicada) e a silhueta skeleton é
18
+ * decorativa (o título vira sr-only).
19
+ */
20
+ export declare const ScreenLoader: import('react').ForwardRefExoticComponent<ScreenLoaderProps & import('react').RefAttributes<HTMLDivElement>>;
21
+ //# sourceMappingURL=screen-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screen-loader.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/ScreenLoader/screen-loader.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAS/D;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,YAAY,8GA2DxB,CAAC"}
@@ -0,0 +1,111 @@
1
+ import { VariantProps } from '../../../utils/tv';
2
+ /**
3
+ * ScreenLoader — estado de carregamento de página/área. Preenche o PAI (que
4
+ * precisa ter altura), nunca o viewport — irmão do EmptyState (mesma família
5
+ * de "estado de área": um pro vazio, um pro carregando).
6
+ *
7
+ * Anatomia (só o wrapper; Spinner/Skeleton trazem os próprios estilos):
8
+ * root = preenche o container (h-full w-full flex-1); a variante
9
+ * decide o arranjo (centrado vs coluna de silhueta)
10
+ * title = título forte (text-title-sm/md, fg-strong) — só `spinner`
11
+ * description = texto auxiliar (body-sm, fg-muted) — só `spinner`
12
+ * skeleton* = silhueta genérica de página (header + bloco de conteúdo),
13
+ * deliberadamente SEM prever o layout final — quando o layout
14
+ * é conhecido, componha `Skeleton` na mão
15
+ *
16
+ * Sem color variants nem foco próprio: componente declarativo de display, sem
17
+ * nada interativo — por isso não há ring nem compoundVariant de disabled.
18
+ */
19
+ export declare const screenLoaderStyles: import('tailwind-variants').TVReturnType<{
20
+ variant: {
21
+ spinner: {
22
+ root: string;
23
+ };
24
+ skeleton: {
25
+ root: string;
26
+ };
27
+ };
28
+ size: {
29
+ sm: {
30
+ title: string;
31
+ };
32
+ md: {
33
+ title: string;
34
+ };
35
+ lg: {
36
+ title: string;
37
+ };
38
+ };
39
+ }, {
40
+ root: string;
41
+ text: string;
42
+ title: string;
43
+ description: string;
44
+ skeletonHeader: string;
45
+ skeletonHeaderText: string;
46
+ skeletonKpis: string;
47
+ skeletonKpiCard: string;
48
+ skeletonBody: string;
49
+ }, undefined, {
50
+ variant: {
51
+ spinner: {
52
+ root: string;
53
+ };
54
+ skeleton: {
55
+ root: string;
56
+ };
57
+ };
58
+ size: {
59
+ sm: {
60
+ title: string;
61
+ };
62
+ md: {
63
+ title: string;
64
+ };
65
+ lg: {
66
+ title: string;
67
+ };
68
+ };
69
+ }, {
70
+ root: string;
71
+ text: string;
72
+ title: string;
73
+ description: string;
74
+ skeletonHeader: string;
75
+ skeletonHeaderText: string;
76
+ skeletonKpis: string;
77
+ skeletonKpiCard: string;
78
+ skeletonBody: string;
79
+ }, import('tailwind-variants').TVReturnType<{
80
+ variant: {
81
+ spinner: {
82
+ root: string;
83
+ };
84
+ skeleton: {
85
+ root: string;
86
+ };
87
+ };
88
+ size: {
89
+ sm: {
90
+ title: string;
91
+ };
92
+ md: {
93
+ title: string;
94
+ };
95
+ lg: {
96
+ title: string;
97
+ };
98
+ };
99
+ }, {
100
+ root: string;
101
+ text: string;
102
+ title: string;
103
+ description: string;
104
+ skeletonHeader: string;
105
+ skeletonHeaderText: string;
106
+ skeletonKpis: string;
107
+ skeletonKpiCard: string;
108
+ skeletonBody: string;
109
+ }, undefined, unknown, unknown, undefined>>;
110
+ export type ScreenLoaderVariantProps = VariantProps<typeof screenLoaderStyles>;
111
+ //# sourceMappingURL=screen-loader.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screen-loader.styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/ScreenLoader/screen-loader.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAoC7B,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { SpinnerProps } from '../Spinner';
3
+ import { ScreenLoaderVariantProps } from './screen-loader.styles';
4
+ /** Variação visual: spinner centrado com texto, ou silhueta skeleton genérica. */
5
+ export type ScreenLoaderVariant = NonNullable<ScreenLoaderVariantProps["variant"]>;
6
+ /** Tamanho (spinner + tipografia do título). Sem efeito na variante skeleton. */
7
+ export type ScreenLoaderSize = NonNullable<ScreenLoaderVariantProps["size"]>;
8
+ export interface ScreenLoaderProps extends Omit<ComponentPropsWithoutRef<"div">, "color" | "title">, ScreenLoaderVariantProps {
9
+ /**
10
+ * Título do estado de carregamento. Visível na variante `spinner`; na
11
+ * `skeleton` vira texto sr-only (leitores de tela anunciam, a tela mostra
12
+ * só a silhueta). Default `"Carregando…"`.
13
+ */
14
+ title?: string;
15
+ /** Texto auxiliar opcional sob o título (só na variante `spinner`). */
16
+ description?: string;
17
+ /** Cor do Spinner (repassada). Default `"brand"`. Só na variante `spinner`. */
18
+ color?: SpinnerProps["color"];
19
+ /**
20
+ * Blocos da silhueta (só na variante `skeleton`): `"page"` (header +
21
+ * conteúdo, default), `"dashboard"` (header + linha de 4 KPIs + conteúdo)
22
+ * ou `"kpis"` (linha de 4 KPIs + conteúdo, sem header).
23
+ */
24
+ skeletonLayout?: "page" | "dashboard" | "kpis";
25
+ }
26
+ //# sourceMappingURL=screen-loader.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screen-loader.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/ScreenLoader/screen-loader.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAEvE,kFAAkF;AAClF,MAAM,MAAM,mBAAmB,GAAG,WAAW,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;AAEnF,iFAAiF;AACjF,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC;AAE7E,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAC9D,wBAAwB;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;CAChD"}
@@ -9,6 +9,9 @@ import { VariantProps } from '../../../utils/tv';
9
9
  *
10
10
  * Variantes:
11
11
  * - size: sm (size-icon-sm) | md (size-icon-md) | lg (size-icon-lg)
12
+ * | xl (size-icon-xl, 32px) | 2xl (size-icon-2xl, 40px) — os dois
13
+ * maiores existem pra loading de área/página (ScreenLoader), onde
14
+ * os 24px do lg somem no espaço
12
15
  * - color: current (herda o texto do pai) | default | muted | brand | on-brand
13
16
  */
14
17
  export declare const spinnerStyles: import('tailwind-variants').TVReturnType<{
@@ -16,6 +19,8 @@ export declare const spinnerStyles: import('tailwind-variants').TVReturnType<{
16
19
  sm: string;
17
20
  md: string;
18
21
  lg: string;
22
+ xl: string;
23
+ "2xl": string;
19
24
  };
20
25
  color: {
21
26
  current: string;
@@ -29,6 +34,8 @@ export declare const spinnerStyles: import('tailwind-variants').TVReturnType<{
29
34
  sm: string;
30
35
  md: string;
31
36
  lg: string;
37
+ xl: string;
38
+ "2xl": string;
32
39
  };
33
40
  color: {
34
41
  current: string;
@@ -42,6 +49,8 @@ export declare const spinnerStyles: import('tailwind-variants').TVReturnType<{
42
49
  sm: string;
43
50
  md: string;
44
51
  lg: string;
52
+ xl: string;
53
+ "2xl": string;
45
54
  };
46
55
  color: {
47
56
  current: string;
@@ -1 +1 @@
1
- {"version":3,"file":"spinner.styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Spinner/spinner.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAoBxB,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"spinner.styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Spinner/spinner.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDAsBxB,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snksergio/design-system",
3
- "version": "0.46.0",
3
+ "version": "0.47.0",
4
4
  "//distribuicao": "Canal PRIMARIO = registry shadcn (copy-in) + CLI @snksergio/create-design-system; sobe sozinho no merge (Vercel). Canal SECUNDARIO = este pacote npm (@snksergio/design-system), publicado por passo MANUAL do mantenedor, entao costuma ficar atras do registry. SECUNDARIO descreve a ORDEM DE PUBLICACAO, nao o nivel de suporte: NAO e depreciado, e desde a 0.37.0 entrega 41 dos 42 componentes ui/ no barrel raiz + os 41 primitivos shadcn no subpath ./shadcn (so TabelaTeste, demo interno, fica de fora). Publish so pelo Passo 7 do .claude/skills/ds-dev/release.md (valida com `npm run lib:verify`, pede o token, publica, revoga). Ver DISTRIBUICAO.md.",
5
5
  "description": "iGreen Design System — internal library for SaaS CRM, admin panels and dashboards. React 19 + Tailwind v4 + Shadcn + Radix.",
6
6
  "license": "UNLICENSED",