@snksergio/design-system 0.42.1 → 0.43.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 (34) hide show
  1. package/dist-lib/chunks/{kpi-delta-DaDwKOaP.mjs → kpi-delta-B_1xjDu_.mjs} +2 -2
  2. package/dist-lib/chunks/{kpi-delta-DaDwKOaP.mjs.map → kpi-delta-B_1xjDu_.mjs.map} +1 -1
  3. package/dist-lib/chunks/{kpi-delta-DAfakvFp.cjs → kpi-delta-CXGg2nBx.cjs} +2 -2
  4. package/dist-lib/chunks/{kpi-delta-DAfakvFp.cjs.map → kpi-delta-CXGg2nBx.cjs.map} +1 -1
  5. package/dist-lib/chunks/{panel-BSyHW2J5.cjs → panel-C3fekbdr.cjs} +34 -13
  6. package/dist-lib/chunks/panel-C3fekbdr.cjs.map +1 -0
  7. package/dist-lib/chunks/{panel-CMRliQb2.mjs → panel-UwUWfDLf.mjs} +34 -13
  8. package/dist-lib/chunks/panel-UwUWfDLf.mjs.map +1 -0
  9. package/dist-lib/chunks/{useTheme-3iZAognE.cjs → useTheme-C9Y6vxTf.cjs} +103 -52
  10. package/dist-lib/chunks/useTheme-C9Y6vxTf.cjs.map +1 -0
  11. package/dist-lib/chunks/{useTheme-B3ZakPqk.mjs → useTheme-DCmzLBUR.mjs} +103 -52
  12. package/dist-lib/chunks/{useTheme-3iZAognE.cjs.map → useTheme-DCmzLBUR.mjs.map} +1 -1
  13. package/dist-lib/index.cjs +3 -3
  14. package/dist-lib/index.mjs +5 -5
  15. package/dist-lib/preview/chat.cjs +1 -1
  16. package/dist-lib/preview/chat.mjs +1 -1
  17. package/dist-lib/preview/clientes.cjs +7 -13
  18. package/dist-lib/preview/clientes.cjs.map +1 -1
  19. package/dist-lib/preview/clientes.mjs +7 -13
  20. package/dist-lib/preview/clientes.mjs.map +1 -1
  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/DataTable/column-types/definitions/date-column-type.d.ts.map +1 -1
  24. package/dist-lib/src/components/ui/DataTable/column-types/definitions/datetime-column-type.d.ts.map +1 -1
  25. package/dist-lib/src/components/ui/DataTable/utils/calculate-column-widths.d.ts.map +1 -1
  26. package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.d.ts.map +1 -1
  27. package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.styles.d.ts +82 -3
  28. package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.styles.d.ts.map +1 -1
  29. package/dist-lib/src/preview/pages/ChatV2/components/FiltersColumn/filters-column.styles.d.ts +3 -3
  30. package/dist-lib/src/preview/pages/ClientesShowcase/ClientesShowcase.d.ts.map +1 -1
  31. package/package.json +1 -1
  32. package/dist-lib/chunks/panel-BSyHW2J5.cjs.map +0 -1
  33. package/dist-lib/chunks/panel-CMRliQb2.mjs.map +0 -1
  34. package/dist-lib/chunks/useTheme-B3ZakPqk.mjs.map +0 -1
@@ -1292,7 +1292,7 @@ const sidebarRailUserDefault = tv({
1292
1292
  "bg-bg-brand text-fg-on-brand font-bold text-caption-sm uppercase tracking-[0.02em]"
1293
1293
  ]
1294
1294
  });
1295
- const sidebarPanel = tv({
1295
+ const sidebarPanel$1 = tv({
1296
1296
  base: [
1297
1297
  "w-[264px] flex-none h-full sticky top-0 flex flex-col overflow-hidden",
1298
1298
  "bg-bg-sidebar border-r border-border-sidebar",
@@ -1980,7 +1980,7 @@ function SidebarPanel({
1980
1980
  return /* @__PURE__ */ jsxs(
1981
1981
  "aside",
1982
1982
  {
1983
- className: cn(sidebarPanel({ collapsed, floating, mobile }), className),
1983
+ className: cn(sidebarPanel$1({ collapsed, floating, mobile }), className),
1984
1984
  "aria-hidden": collapsed,
1985
1985
  children: [
1986
1986
  /* @__PURE__ */ jsx("div", { className: sidebarPanelHeader(), children: hasSwitcher ? /* @__PURE__ */ jsxs(DropdownMenu, { children: [
@@ -2317,21 +2317,62 @@ function useSingleMenuSidebarState(defaultExpanded, controlledExpanded, onExpand
2317
2317
  };
2318
2318
  }
2319
2319
  const sidebarRoot = tv({
2320
+ base: "relative h-full shrink-0",
2321
+ variants: {
2322
+ // Largura NO FLUXO. `rail` cobre recolhida E peek por hover — é isso que
2323
+ // impede o conteúdo ao lado de se mexer durante a espiada.
2324
+ flowWidth: {
2325
+ rail: "hidden md:block md:w-20",
2326
+ full: "w-full md:w-[280px]"
2327
+ }
2328
+ },
2329
+ defaultVariants: {
2330
+ flowWidth: "full"
2331
+ }
2332
+ });
2333
+ const sidebarPanel = tv({
2320
2334
  base: [
2321
- "relative flex h-full flex-col overflow-x-hidden",
2335
+ "flex h-full flex-col overflow-x-hidden",
2322
2336
  "border-r border-border-sidebar bg-bg-sidebar",
2323
2337
  "transition-[width] duration-300 ease-in-out"
2324
2338
  ],
2325
2339
  variants: {
2326
- // Mobile (< md): expandida = 100% da largura; recolhida = SOME (hidden).
2327
- // Desktop (md+): largura fixa, expandida (280px) ou recolhida (rail 80px).
2328
- expanded: {
2329
- true: "w-full md:w-[280px]",
2330
- false: "hidden md:flex md:w-20"
2340
+ /**
2341
+ * `overlay` segue o estado TRAVADO, não o hover e isso é o que evita um
2342
+ * defeito medido.
2343
+ *
2344
+ * A versão ligava `overlay` ao `isHoverExpand`. Ao sair do hover, o
2345
+ * `position` voltava a `static` **antes** de a largura terminar de animar:
2346
+ * aferido, aos +400ms o painel estava `static` com **279px** dentro de um
2347
+ * `<aside>` de 80px, sem `z-index` — grande, no fluxo e passível de ser
2348
+ * pintado atrás do conteúdo por ~300ms.
2349
+ *
2350
+ * Amarrando ao travado, o `position` **nunca troca durante a animação**:
2351
+ * fora do estado travado o painel é sempre absoluto, e só a largura anima.
2352
+ *
2353
+ * `md:` em tudo porque overlay é comportamento de DESKTOP — abaixo de md a
2354
+ * sidebar é drawer de largura cheia e não existe hover em touch.
2355
+ */
2356
+ overlay: {
2357
+ true: "md:absolute md:inset-y-0 md:left-0 md:z-40",
2358
+ false: ""
2359
+ },
2360
+ /** Largura VISUAL — independente da que o `<aside>` ocupa no fluxo. */
2361
+ visualWidth: {
2362
+ rail: "w-full md:w-20",
2363
+ full: "w-full md:w-[280px]"
2331
2364
  }
2332
2365
  },
2366
+ compoundVariants: [
2367
+ // Sombra só na espiada: é ela que indica "isto está flutuando sobre o
2368
+ // conteúdo". Recolhida, o painel também é absoluto (pra não trocar de
2369
+ // `position` no meio da animação), mas ali ele coincide com o rail e uma
2370
+ // sombra seria ruído.
2371
+ { overlay: true, visualWidth: "full", class: "md:shadow-sh-lg" }
2372
+ ],
2333
2373
  defaultVariants: {
2334
- expanded: true
2374
+ overlay: false,
2375
+ visualWidth: "full"
2335
2376
  }
2336
2377
  });
2337
2378
  const category = tv({
@@ -2919,57 +2960,67 @@ function SingleMenuSidebar({
2919
2960
  setOpenCategoryId
2920
2961
  ]
2921
2962
  );
2963
+ const travadaAberta = expanded && !isHoverExpand;
2922
2964
  return /* @__PURE__ */ jsxs(SingleMenuSidebarContext.Provider, { value: contextValue, children: [
2923
- /* @__PURE__ */ jsx(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsxs(
2965
+ /* @__PURE__ */ jsx(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx(
2924
2966
  "aside",
2925
2967
  {
2926
2968
  "aria-label": "Navegação lateral",
2927
- className: cn(sidebarRoot({ expanded }), className),
2969
+ className: cn(sidebarRoot({ flowWidth: travadaAberta ? "full" : "rail" }), className),
2928
2970
  onMouseEnter,
2929
2971
  onMouseLeave,
2930
2972
  ...props,
2931
- children: [
2932
- /* @__PURE__ */ jsx(
2933
- SingleMenuHeader,
2934
- {
2935
- logo,
2936
- title,
2937
- showToggleIndicator
2938
- }
2939
- ),
2940
- /* @__PURE__ */ jsx("div", { className: styles.divider }),
2941
- expanded && (moduleDisplay || showSearch) && /* @__PURE__ */ jsxs("div", { className: cn(styles.sectionPadding, styles.textFadeIn), children: [
2942
- moduleDisplay && /* @__PURE__ */ jsx(SingleMenuModuleSelector, { ...moduleDisplay }),
2943
- showSearch && /* @__PURE__ */ jsx(
2944
- SingleMenuSearch,
2945
- {
2946
- placeholder: searchPlaceholder,
2947
- onOpen: () => setCommandOpen(true)
2948
- }
2949
- )
2950
- ] }),
2951
- expanded && /* @__PURE__ */ jsx("div", { className: styles.divider }),
2952
- /* @__PURE__ */ jsx(
2953
- "nav",
2954
- {
2955
- className: cn(
2956
- styles.navContainer,
2957
- expanded ? styles.navContainerExpanded : styles.navContainerCollapsed
2973
+ children: /* @__PURE__ */ jsxs(
2974
+ "div",
2975
+ {
2976
+ className: sidebarPanel({
2977
+ overlay: !travadaAberta,
2978
+ visualWidth: expanded ? "full" : "rail"
2979
+ }),
2980
+ children: [
2981
+ /* @__PURE__ */ jsx(
2982
+ SingleMenuHeader,
2983
+ {
2984
+ logo,
2985
+ title,
2986
+ showToggleIndicator
2987
+ }
2958
2988
  ),
2959
- children: /* @__PURE__ */ jsx("div", { className: styles.navList, children: effectiveCategories.map((cat) => /* @__PURE__ */ jsx(
2960
- SingleMenuCategory,
2989
+ /* @__PURE__ */ jsx("div", { className: styles.divider }),
2990
+ expanded && (moduleDisplay || showSearch) && /* @__PURE__ */ jsxs("div", { className: cn(styles.sectionPadding, styles.textFadeIn), children: [
2991
+ moduleDisplay && /* @__PURE__ */ jsx(SingleMenuModuleSelector, { ...moduleDisplay }),
2992
+ showSearch && /* @__PURE__ */ jsx(
2993
+ SingleMenuSearch,
2994
+ {
2995
+ placeholder: searchPlaceholder,
2996
+ onOpen: () => setCommandOpen(true)
2997
+ }
2998
+ )
2999
+ ] }),
3000
+ expanded && /* @__PURE__ */ jsx("div", { className: styles.divider }),
3001
+ /* @__PURE__ */ jsx(
3002
+ "nav",
2961
3003
  {
2962
- ...cat,
2963
- activeItemId,
2964
- onItemClick,
2965
- renderLink
2966
- },
2967
- cat.id
2968
- )) })
2969
- }
2970
- ),
2971
- /* @__PURE__ */ jsx(SingleMenuFooter, { ...user })
2972
- ]
3004
+ className: cn(
3005
+ styles.navContainer,
3006
+ expanded ? styles.navContainerExpanded : styles.navContainerCollapsed
3007
+ ),
3008
+ children: /* @__PURE__ */ jsx("div", { className: styles.navList, children: effectiveCategories.map((cat) => /* @__PURE__ */ jsx(
3009
+ SingleMenuCategory,
3010
+ {
3011
+ ...cat,
3012
+ activeItemId,
3013
+ onItemClick,
3014
+ renderLink
3015
+ },
3016
+ cat.id
3017
+ )) })
3018
+ }
3019
+ ),
3020
+ /* @__PURE__ */ jsx(SingleMenuFooter, { ...user })
3021
+ ]
3022
+ }
3023
+ )
2973
3024
  }
2974
3025
  ) }),
2975
3026
  showSearch && /* @__PURE__ */ jsx(
@@ -3442,4 +3493,4 @@ export {
3442
3493
  useControllable as v,
3443
3494
  useMediaQuery as w
3444
3495
  };
3445
- //# sourceMappingURL=useTheme-B3ZakPqk.mjs.map
3496
+ //# sourceMappingURL=useTheme-DCmzLBUR.mjs.map