@camunda/design-system 0.59.0 → 0.60.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 (103) hide show
  1. package/dist/carbon-compat/filterable-multi-select.d.ts.map +1 -1
  2. package/dist/carbon-compat/filterable-multi-select.js +6 -1
  3. package/dist/carbon-compat/filterable-multi-select.js.map +1 -1
  4. package/dist/carbon-compat/multi-select.d.ts.map +1 -1
  5. package/dist/carbon-compat/multi-select.js +5 -1
  6. package/dist/carbon-compat/multi-select.js.map +1 -1
  7. package/dist/src/components/ui/alert-dialog.d.ts +11 -1
  8. package/dist/src/components/ui/alert-dialog.d.ts.map +1 -1
  9. package/dist/src/components/ui/alert-dialog.js +5 -4
  10. package/dist/src/components/ui/alert-dialog.js.map +1 -1
  11. package/dist/src/components/ui/alert.d.ts +1 -1
  12. package/dist/src/components/ui/alert.d.ts.map +1 -1
  13. package/dist/src/components/ui/alert.js +3 -1
  14. package/dist/src/components/ui/alert.js.map +1 -1
  15. package/dist/src/components/ui/app-sidebar.d.ts.map +1 -1
  16. package/dist/src/components/ui/app-sidebar.js +57 -16
  17. package/dist/src/components/ui/app-sidebar.js.map +1 -1
  18. package/dist/src/components/ui/card.d.ts.map +1 -1
  19. package/dist/src/components/ui/card.js +15 -1
  20. package/dist/src/components/ui/card.js.map +1 -1
  21. package/dist/src/components/ui/code-block.d.ts.map +1 -1
  22. package/dist/src/components/ui/code-block.js +1 -13
  23. package/dist/src/components/ui/code-block.js.map +1 -1
  24. package/dist/src/components/ui/combobox.d.ts.map +1 -1
  25. package/dist/src/components/ui/combobox.js +48 -15
  26. package/dist/src/components/ui/combobox.js.map +1 -1
  27. package/dist/src/components/ui/date-range-picker.d.ts.map +1 -1
  28. package/dist/src/components/ui/date-range-picker.js +20 -1
  29. package/dist/src/components/ui/date-range-picker.js.map +1 -1
  30. package/dist/src/components/ui/dialog.d.ts +18 -2
  31. package/dist/src/components/ui/dialog.d.ts.map +1 -1
  32. package/dist/src/components/ui/dialog.js +9 -6
  33. package/dist/src/components/ui/dialog.js.map +1 -1
  34. package/dist/src/components/ui/file-uploader.d.ts.map +1 -1
  35. package/dist/src/components/ui/file-uploader.js +21 -2
  36. package/dist/src/components/ui/file-uploader.js.map +1 -1
  37. package/dist/src/components/ui/form-error-summary.d.ts +13 -0
  38. package/dist/src/components/ui/form-error-summary.d.ts.map +1 -0
  39. package/dist/src/components/ui/form-error-summary.js +53 -0
  40. package/dist/src/components/ui/form-error-summary.js.map +1 -0
  41. package/dist/src/components/ui/inline-edit.d.ts.map +1 -1
  42. package/dist/src/components/ui/inline-edit.js +14 -1
  43. package/dist/src/components/ui/inline-edit.js.map +1 -1
  44. package/dist/src/components/ui/multi-select.d.ts +7 -0
  45. package/dist/src/components/ui/multi-select.d.ts.map +1 -1
  46. package/dist/src/components/ui/multi-select.js +79 -27
  47. package/dist/src/components/ui/multi-select.js.map +1 -1
  48. package/dist/src/components/ui/multi-step-dialog.d.ts +11 -1
  49. package/dist/src/components/ui/multi-step-dialog.d.ts.map +1 -1
  50. package/dist/src/components/ui/multi-step-dialog.js +32 -4
  51. package/dist/src/components/ui/multi-step-dialog.js.map +1 -1
  52. package/dist/src/components/ui/overflow-strip.d.ts +18 -0
  53. package/dist/src/components/ui/overflow-strip.d.ts.map +1 -0
  54. package/dist/src/components/ui/overflow-strip.js +103 -0
  55. package/dist/src/components/ui/overflow-strip.js.map +1 -0
  56. package/dist/src/components/ui/scorecard.d.ts.map +1 -1
  57. package/dist/src/components/ui/scorecard.js +20 -1
  58. package/dist/src/components/ui/scorecard.js.map +1 -1
  59. package/dist/src/components/ui/select.d.ts +2 -2
  60. package/dist/src/components/ui/select.d.ts.map +1 -1
  61. package/dist/src/components/ui/select.js +123 -6
  62. package/dist/src/components/ui/select.js.map +1 -1
  63. package/dist/src/components/ui/tabs.d.ts +2 -1
  64. package/dist/src/components/ui/tabs.d.ts.map +1 -1
  65. package/dist/src/components/ui/tabs.js +16 -4
  66. package/dist/src/components/ui/tabs.js.map +1 -1
  67. package/dist/src/components/ui/toast.d.ts +4 -3
  68. package/dist/src/components/ui/toast.d.ts.map +1 -1
  69. package/dist/src/components/ui/toast.js +209 -23
  70. package/dist/src/components/ui/toast.js.map +1 -1
  71. package/dist/src/components/ui/toggle-group.d.ts +7 -1
  72. package/dist/src/components/ui/toggle-group.d.ts.map +1 -1
  73. package/dist/src/components/ui/toggle-group.js +23 -4
  74. package/dist/src/components/ui/toggle-group.js.map +1 -1
  75. package/dist/src/components/ui/tree-view.d.ts.map +1 -1
  76. package/dist/src/components/ui/tree-view.js +61 -45
  77. package/dist/src/components/ui/tree-view.js.map +1 -1
  78. package/dist/src/hooks/use-is-truncated.d.ts +9 -5
  79. package/dist/src/hooks/use-is-truncated.d.ts.map +1 -1
  80. package/dist/src/hooks/use-is-truncated.js +20 -7
  81. package/dist/src/hooks/use-is-truncated.js.map +1 -1
  82. package/dist/src/index.d.ts +2 -0
  83. package/dist/src/index.d.ts.map +1 -1
  84. package/dist/src/index.js +2 -0
  85. package/dist/src/index.js.map +1 -1
  86. package/dist/src/lib/focus-visible-on-close.d.ts +28 -0
  87. package/dist/src/lib/focus-visible-on-close.d.ts.map +1 -1
  88. package/dist/src/lib/focus-visible-on-close.js +54 -1
  89. package/dist/src/lib/focus-visible-on-close.js.map +1 -1
  90. package/dist/src/lib/i18n/dictionary.d.ts +3 -0
  91. package/dist/src/lib/i18n/dictionary.d.ts.map +1 -1
  92. package/dist/src/lib/i18n/dictionary.js +3 -0
  93. package/dist/src/lib/i18n/dictionary.js.map +1 -1
  94. package/dist/src/lib/merge-refs.d.ts +8 -0
  95. package/dist/src/lib/merge-refs.d.ts.map +1 -0
  96. package/dist/src/lib/merge-refs.js +15 -0
  97. package/dist/src/lib/merge-refs.js.map +1 -0
  98. package/dist/src/lib/with-ref.d.ts +3 -1
  99. package/dist/src/lib/with-ref.d.ts.map +1 -1
  100. package/dist/src/lib/with-ref.js +0 -10
  101. package/dist/src/lib/with-ref.js.map +1 -1
  102. package/dist/styles.css +65 -6
  103. package/package.json +2 -1
@@ -1,12 +1,17 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
3
  import { cva } from "class-variance-authority";
4
4
  import { Tabs as TabsPrimitive } from "radix-ui";
5
5
  import { cn } from "../../lib/utils.js";
6
+ import { withRef } from "../../lib/with-ref.js";
7
+ import { mergeRefs } from "../../lib/merge-refs.js";
8
+ import { OverflowStripArrow, useOverflowStrip } from "./overflow-strip.js";
6
9
  function Tabs({ className, orientation = "horizontal", ...props }) {
7
10
  return (_jsx(TabsPrimitive.Root, { "data-slot": "tabs", "data-orientation": orientation, className: cn("group/tabs flex gap-2 data-horizontal:flex-col", className), ...props }));
8
11
  }
9
- const tabsListVariants = cva("group/tabs-list inline-flex w-fit items-center justify-center gap-1 rounded-xl p-1 text-neutral-foreground-subtle group-data-horizontal/tabs:h-9 group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none", {
12
+ // `justify-start`, not `center`: a centred flex row that overflows its scroll
13
+ // container hangs past the start edge where no scroll position can reach it.
14
+ const tabsListVariants = cva("group/tabs-list inline-flex w-fit items-center justify-start gap-1 rounded-xl p-1 text-neutral-foreground-subtle group-data-horizontal/tabs:h-9 group-data-horizontal/tabs:min-w-0 group-data-horizontal/tabs:max-w-full group-data-horizontal/tabs:overflow-x-auto group-data-horizontal/tabs:[scrollbar-width:none] group-data-horizontal/tabs:[&::-webkit-scrollbar]:hidden group-data-horizontal/tabs:motion-safe:scroll-smooth group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col group-data-vertical/tabs:overflow-visible data-[variant=line]:rounded-none", {
10
15
  variants: {
11
16
  variant: {
12
17
  default: "bg-neutral-background-medium",
@@ -17,9 +22,16 @@ const tabsListVariants = cva("group/tabs-list inline-flex w-fit items-center jus
17
22
  variant: "default",
18
23
  },
19
24
  });
20
- function TabsList({ className, variant = "default", ...props }) {
21
- return (_jsx(TabsPrimitive.List, { "data-slot": "tabs-list", "data-variant": variant, className: cn(tabsListVariants({ variant }), className), ...props }));
25
+ function TabsListImpl({ ref, className, variant = "default", ...props }) {
26
+ const { ref: scrollRef, hasMoreBefore, hasMoreAfter, scrollByStep, } = useOverflowStrip();
27
+ const listRef = React.useMemo(() => mergeRefs(ref, scrollRef), [ref, scrollRef]);
28
+ return (
29
+ // The arrows are siblings of the tablist inside this wrapper, never
30
+ // children of it — rendering them inside would count toward the tab
31
+ // total and break Radix's roving focus (Home/End, arrow-key wrap).
32
+ _jsxs("div", { "data-slot": "tabs-list-scroller", className: "flex min-w-0 max-w-full group-data-horizontal/tabs:items-center group-data-vertical/tabs:items-start", children: [hasMoreBefore && (_jsx(OverflowStripArrow, { direction: "before", onScroll: () => scrollByStep("before") })), _jsx(TabsPrimitive.List, { ref: listRef, "data-slot": "tabs-list", "data-variant": variant, className: cn(tabsListVariants({ variant }), className), ...props }), hasMoreAfter && (_jsx(OverflowStripArrow, { direction: "after", onScroll: () => scrollByStep("after") }))] }));
22
33
  }
34
+ const TabsList = withRef(TabsListImpl);
23
35
  function TabsTrigger({ className, ...props }) {
24
36
  return (_jsx(TabsPrimitive.Trigger, { "data-slot": "tabs-trigger", className: cn("relative inline-flex h-[calc(100%-2px)] flex-1 cursor-pointer items-center justify-center gap-1.5 rounded-lg border border-transparent px-3 py-1 text-sm font-medium whitespace-nowrap text-neutral-foreground-strong transition-all duration-200 group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 dark:text-neutral-foreground-subtle group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", "not-data-active:hover:bg-neutral-background-strong", "group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent", "data-active:bg-neutral-background-subtle data-active:text-neutral-foreground-strong dark:data-active:border-input dark:data-active:text-neutral-foreground-strong", "after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100", className), ...props }));
25
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/ui/tabs.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjD,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAE/B,SAAS,IAAI,CAAC,EACZ,SAAS,EACT,WAAW,GAAG,YAAY,EAC1B,GAAG,KAAK,EACwC;IAChD,OAAO,CACL,KAAC,aAAa,CAAC,IAAI,iBACP,MAAM,sBACE,WAAW,EAC7B,SAAS,EAAE,EAAE,CACX,gDAAgD,EAChD,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,MAAM,gBAAgB,GAAG,GAAG,CAC1B,oPAAoP,EACpP;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,8BAA8B;YACvC,IAAI,EAAE,sBAAsB;SAC7B;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAEF,SAAS,QAAQ,CAAC,EAChB,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,GAAG,KAAK,EAE6B;IACrC,OAAO,CACL,KAAC,aAAa,CAAC,IAAI,iBACP,WAAW,kBACP,OAAO,EACrB,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,KACnD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EAC2C;IACnD,OAAO,CACL,KAAC,aAAa,CAAC,OAAO,iBACV,cAAc,EACxB,SAAS,EAAE,EAAE,CACX,ouBAAouB,EACpuB,oDAAoD,EACpD,+PAA+P,EAC/P,mKAAmK,EACnK,sYAAsY,EACtY,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EAC2C;IACnD,OAAO,CACL,KAAC,aAAa,CAAC,OAAO,iBACV,cAAc,EACxB,SAAS,EAAE,EAAE,CAAC,6BAA6B,EAAE,SAAS,CAAC,KACnD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"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"}
@@ -43,9 +43,10 @@ type ToastFn = {
43
43
  declare function Toaster({ position, dismissLabel }: ToasterProps): React.JSX.Element;
44
44
  /**
45
45
  * The callable used everywhere else — never sonner's own `toast` re-exported directly.
46
- * `options.duration` resolution uses `??`, not `||`: sonner treats a literal
47
- * `duration: 0` as falsy and silently falls back to its own ~4s default (verified in
48
- * source) — `??` is required so an explicit `0` isn't confused with "not passed".
46
+ * `options.duration` resolution (inside `toExternalToast`) uses `??`, not `||`: sonner
47
+ * treats a literal `duration: 0` as falsy and silently falls back to its own ~4s default
48
+ * (verified in source) — `??` is required so an explicit `0` isn't confused with "not
49
+ * passed".
49
50
  */
50
51
  declare const toast: ToastFn;
51
52
  export { Toaster, toast };
@@ -1 +1 @@
1
- {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/toast.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAuB/B,KAAK,aAAa,GACd,UAAU,GACV,WAAW,GACX,YAAY,GACZ,aAAa,GACb,cAAc,GACd,eAAe,CAAC;AAEpB,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,KAAK,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAE1D,KAAK,YAAY,GAAG;IAClB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC5B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,OAAO,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1D,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;CAChE,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;IACpE,OAAO,EAAE,CACP,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,CAAC,EAAE,YAAY,KACnB,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,MAAM,GAAG,MAAM,CAAC;IAC5E,OAAO,EAAE,CACP,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,CAAC,EAAE,YAAY,KACnB,MAAM,GAAG,MAAM,CAAC;IACrB,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,MAAM,GAAG,MAAM,CAAC;IAC7E,OAAO,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC3E,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;CACzC,CAAC;AAyMF;;;;;;;GAOG;AACH,iBAAS,OAAO,CAAC,EAAE,QAAsB,EAAE,YAAY,EAAE,EAAE,YAAY,qBAiBtE;AA+BD;;;;;GAKG;AACH,QAAA,MAAM,KAAK,EAAE,OAuCZ,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAC1B,YAAY,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,mBAAmB,GACpB,CAAC"}
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/toast.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAyB/B,KAAK,aAAa,GACd,UAAU,GACV,WAAW,GACX,YAAY,GACZ,aAAa,GACb,cAAc,GACd,eAAe,CAAC;AAEpB,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,KAAK,WAAW,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAE1D,KAAK,YAAY,GAAG;IAClB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC5B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,OAAO,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1D,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;CAChE,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;IACpE,OAAO,EAAE,CACP,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,CAAC,EAAE,YAAY,KACnB,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,MAAM,GAAG,MAAM,CAAC;IAC5E,OAAO,EAAE,CACP,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,CAAC,EAAE,YAAY,KACnB,MAAM,GAAG,MAAM,CAAC;IACrB,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,MAAM,GAAG,MAAM,CAAC;IAC7E,OAAO,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC3E,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;CACzC,CAAC;AAiUF;;;;;;;GAOG;AACH,iBAAS,OAAO,CAAC,EAAE,QAAsB,EAAE,YAAY,EAAE,EAAE,YAAY,qBAiBtE;AAyID;;;;;;GAMG;AACH,QAAA,MAAM,KAAK,EAAE,OA4GZ,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAC1B,YAAY,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,mBAAmB,GACpB,CAAC"}
@@ -1,10 +1,12 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
3
  import { Toaster as SonnerToaster, toast as sonnerToast, } from "sonner";
4
4
  import { CheckCircle2, CircleAlert, Info, Loader2, TriangleAlert, X, } from "../../icons/lucide.js";
5
5
  import { cn } from "../../lib/utils.js";
6
6
  import { useC4Dictionary } from "../../lib/i18n/context.js";
7
+ import { useIsTruncated } from "../../hooks/use-is-truncated.js";
7
8
  import { buttonVariants } from "./button.js";
9
+ import { Tooltip, TooltipContent, TooltipTrigger } from "./tooltip.js";
8
10
  import { typographyVariants } from "./typography.js";
9
11
  // ── Styling contract — neutral floating surface, icon-only kind color ──────
10
12
  //
@@ -101,18 +103,22 @@ const TOAST_CLASSNAMES = {
101
103
  // sibling, not the `~` general-sibling used for the icon/close fix above) matches
102
104
  // the actual DOM exactly: title and description are always immediate siblings
103
105
  // inside `[data-content]`, so this only reserves the gap when one is actually there.
104
- // `line-clamp-2` — long titles truncate with an ellipsis past 2 lines instead of
105
- // growing the card indefinitely (fixes #520; short titles are unaffected, this only
106
- // engages once content exceeds the clamp). Consumers should still keep titles short
107
- // (toast.specs.ts's antiPatterns) — this is a rendering backstop, not a substitute
108
- // for writing toast copy that fits a transient, glanceable notification.
109
- title: cn(typographyVariants({ variant: "label-md-strong" }), "line-clamp-2 [&:has(+[data-description])]:mb-1"),
106
+ // `line-clamp-2` used to live here, on sonner's own `[data-title]` wrapper div —
107
+ // moved onto `ToastTitleText`'s inner span instead (see below), which is what
108
+ // `useIsTruncated` needs a ref on to detect the clamp (scrollHeight > clientHeight)
109
+ // and reveal the full value via Tooltip on hover/focus (fixes #659 for the
110
+ // multi-line case; this div-level class list only carries type + spacing now).
111
+ // Consumers should still keep titles short (toast.specs.ts's antiPatterns) — the
112
+ // clamp+reveal is a backstop for when they don't, not a substitute for writing
113
+ // toast copy that fits a transient, glanceable notification.
114
+ title: cn(typographyVariants({ variant: "label-md-strong" }), "[&:has(+[data-description])]:mb-1"),
110
115
  // `text-neutral-foreground-subtle` decouples description color from the (now neutral)
111
116
  // container/title color — matches sonner's own native description color, a muted
112
117
  // gray distinct from the title, not inherited from the card.
113
- // `line-clamp-4` — same rationale as the title's, with more room since descriptions
114
- // are expected to carry more detail.
115
- description: cn(typographyVariants({ variant: "label-md" }), "text-neutral-foreground-subtle line-clamp-4"),
118
+ // `line-clamp-4` — same rationale as the title's `line-clamp-2` above (moved onto
119
+ // `ToastDescriptionText`'s inner span for the same reason) — with more room since
120
+ // descriptions are expected to carry more detail.
121
+ description: cn(typographyVariants({ variant: "label-md" }), "text-neutral-foreground-subtle"),
116
122
  // `ml-auto` keeps the button against the trailing edge whether it shares the first
117
123
  // line or has wrapped onto its own. It keeps `buttonVariants`' base `shrink-0` and
118
124
  // `whitespace-nowrap`: with wrapping available, the label stays on one line at its
@@ -159,6 +165,38 @@ const TOAST_ICONS = {
159
165
  // (Loader2 + animate-spin), colored with a semantic token instead.
160
166
  loading: (_jsx(Loader2, { className: "h-4 w-4 animate-spin text-neutral-foreground-subtle", "aria-hidden": "true" })),
161
167
  };
168
+ function ToastTitleText({ children, onRevealOpen, onRevealClose, }) {
169
+ const { ref, isTruncated, measure } = useIsTruncated();
170
+ React.useLayoutEffect(() => {
171
+ measure();
172
+ });
173
+ const span = (_jsx("span", { ref: ref, tabIndex: 0, onPointerEnter: measure, onFocus: () => {
174
+ measure();
175
+ if (isTruncated)
176
+ onRevealOpen?.();
177
+ }, onBlur: () => {
178
+ if (isTruncated)
179
+ onRevealClose?.();
180
+ }, className: "line-clamp-2 rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", children: children }));
181
+ // Mounted only when clipped — see nav-breadcrumb.tsx for why an
182
+ // unconditionally-mounted Tooltip is never the right default.
183
+ return isTruncated ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: span }), _jsx(TooltipContent, { children: children })] })) : (span);
184
+ }
185
+ function ToastDescriptionText({ children, onRevealOpen, onRevealClose, }) {
186
+ const { ref, isTruncated, measure } = useIsTruncated();
187
+ React.useLayoutEffect(() => {
188
+ measure();
189
+ });
190
+ const span = (_jsx("span", { ref: ref, tabIndex: 0, onPointerEnter: measure, onFocus: () => {
191
+ measure();
192
+ if (isTruncated)
193
+ onRevealOpen?.();
194
+ }, onBlur: () => {
195
+ if (isTruncated)
196
+ onRevealClose?.();
197
+ }, className: "line-clamp-4 rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", children: children }));
198
+ return isTruncated ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: span }), _jsx(TooltipContent, { children: children })] })) : (span);
199
+ }
162
200
  // ── Toaster ──────────────────────────────────────────────────────────────────
163
201
  /**
164
202
  * The one-time host, mounted once at the application's true root (inside
@@ -179,10 +217,52 @@ function Toaster({ position = "top-right", dismissLabel }) {
179
217
  } }));
180
218
  }
181
219
  // ── toast ────────────────────────────────────────────────────────────────────
182
- function toExternalToast(options, defaultDuration) {
220
+ // ── Focus-driven dismiss pause ──────────────────────────────────────────────
221
+ //
222
+ // Sonner pauses each toast's own auto-dismiss timer while the pointer is over its
223
+ // stack, or while the stack has been expanded via its Alt+T hotkey (`expanded`/
224
+ // `interacting`, set only by `onMouseEnter`/`onMouseMove`/`onPointerDown`/`onPointerUp`
225
+ // on its own <ol> — verified in sonner@2.0.8's index.mjs, ~line 1190-1204) — but never
226
+ // on focus. The <ol>'s own `onFocus` handler (~line 1182) only tracks focus-restoration
227
+ // bookkeeping, never sets `expanded`/`interacting`. So a keyboard user who Tabs onto a
228
+ // clamped title/description, opens its Tooltip reveal via focus, and starts reading,
229
+ // gets no pause at all: the toast can vanish mid-read for a default-duration (5000ms)
230
+ // toast — a WCAG 1.4.13 (Content on Hover or Focus) violation for exactly the users the
231
+ // reveal above was built to help.
232
+ //
233
+ // `makeToast` below pauses each toast's OWN dismissal (via sonner's update-by-id path —
234
+ // re-calling the same creating method with a matching `id` merges into the existing
235
+ // toast rather than creating a new one) while its title/description has focus, and
236
+ // resumes it on blur. Resuming always restarts the FULL original duration rather than
237
+ // tracking exact remaining time — the simplest defensible choice, and also what sonner
238
+ // itself does to any duration change: its `remainingTime.current = duration` effect
239
+ // resets unconditionally whenever `duration` changes, so a full restart is not a special
240
+ // case bolted on top, it's what an update naturally produces.
241
+ //
242
+ // The `id`, and the exact sonner method that created a toast, are threaded through
243
+ // deliberately: sonner's own update-by-id merge sets `title` unconditionally from the
244
+ // `message` argument (so it must be re-passed identically on every update, not omitted)
245
+ // and sets `type` unconditionally from whichever public method handled the call (the
246
+ // bare call always resets it to `undefined`) — so pausing/resuming a `success` toast
247
+ // through the bare method would silently strip its icon back to neutral. Re-dispatching
248
+ // through the exact same method avoids that. Passing the SAME already-constructed title
249
+ // element back on every update (not a freshly created one) also matters: React bails out
250
+ // of re-rendering a child subtree when the element reference itself is unchanged (same
251
+ // type, same props object), which avoids remounting `ToastTitleText` — and thus avoids
252
+ // losing focus, or worse, unmounting the very element mid-focus-event and retriggering
253
+ // another focus/blur pair — verified live via Storybook + Playwright, see the dev
254
+ // report / toast.specs.ts.
255
+ let toastIdCounter = 0;
256
+ function nextToastId() {
257
+ return `c4-toast-${++toastIdCounter}`;
258
+ }
259
+ function toExternalToast(options, defaultDuration, reveal) {
183
260
  const action = options?.action;
184
261
  return {
185
- description: options?.description,
262
+ // Wrapped only when present — sonner conditionally renders `[data-description]`
263
+ // at all based on truthiness, and `:has([data-description])` selectors elsewhere
264
+ // in TOAST_CLASSNAMES key off that same presence (see the Styling contract).
265
+ description: options?.description ? (_jsx(ToastDescriptionText, { onRevealOpen: reveal.onRevealOpen, onRevealClose: reveal.onRevealClose, children: options.description })) : undefined,
186
266
  duration: options?.duration ?? defaultDuration,
187
267
  action: action
188
268
  ? {
@@ -202,27 +282,133 @@ function toExternalToast(options, defaultDuration) {
202
282
  : undefined,
203
283
  };
204
284
  }
285
+ /**
286
+ * Builds and dispatches one toast, wiring its title/description with the
287
+ * focus-driven pause/resume above. `kind` must be the exact sonner method used to
288
+ * create it (`sonnerToast` itself for the untyped/default kind, or one of
289
+ * `.success`/`.info`/`.warning`/`.error`) — see the "Focus-driven dismiss pause"
290
+ * note for why re-dispatching through any other method would corrupt the toast's
291
+ * type/icon.
292
+ */
293
+ function makeToast(kind, message, options, defaultDuration) {
294
+ const id = nextToastId();
295
+ const duration = options?.duration ?? defaultDuration;
296
+ // `pause`/`resume` reference `titleNode` before its own declaration below —
297
+ // safe because both only ever run later, from a focus/blur event, by which
298
+ // point `titleNode`'s initializer has long since run.
299
+ const pause = () => {
300
+ if (duration === Infinity)
301
+ return; // no auto-dismiss timer exists to pause
302
+ // Same guard as `resume` below: a focus event landing in the same animation
303
+ // frame as a `toast.dismiss(id)` call must not resurrect the toast the
304
+ // consumer just closed — sonner's `create()` un-dismisses a matching id
305
+ // otherwise (index.mjs ~181-194).
306
+ if (!sonnerToast.getToasts().some((t) => t.id === id))
307
+ return;
308
+ kind(titleNode, { id, duration: Infinity });
309
+ };
310
+ const resume = () => {
311
+ if (duration === Infinity)
312
+ return;
313
+ // A toast the user already dismissed (or that auto-closed) must not be
314
+ // resurrected by a stray blur — sonner's `create()` un-dismisses a matching
315
+ // id otherwise (index.mjs ~181-194).
316
+ if (!sonnerToast.getToasts().some((t) => t.id === id))
317
+ return;
318
+ kind(titleNode, { id, duration });
319
+ };
320
+ const titleNode = (_jsx(ToastTitleText, { onRevealOpen: pause, onRevealClose: resume, children: message }));
321
+ return kind(titleNode, {
322
+ ...toExternalToast(options, defaultDuration, {
323
+ onRevealOpen: pause,
324
+ onRevealClose: resume,
325
+ }),
326
+ id,
327
+ });
328
+ }
205
329
  /**
206
330
  * The callable used everywhere else — never sonner's own `toast` re-exported directly.
207
- * `options.duration` resolution uses `??`, not `||`: sonner treats a literal
208
- * `duration: 0` as falsy and silently falls back to its own ~4s default (verified in
209
- * source) — `??` is required so an explicit `0` isn't confused with "not passed".
331
+ * `options.duration` resolution (inside `toExternalToast`) uses `??`, not `||`: sonner
332
+ * treats a literal `duration: 0` as falsy and silently falls back to its own ~4s default
333
+ * (verified in source) — `??` is required so an explicit `0` isn't confused with "not
334
+ * passed".
210
335
  */
211
- const toast = Object.assign((message, options) => sonnerToast(message, toExternalToast(options, 5000)), {
212
- success: (message, options) => sonnerToast.success(message, toExternalToast(options, 5000)),
213
- info: (message, options) => sonnerToast.info(message, toExternalToast(options, 5000)),
214
- warning: (message, options) => sonnerToast.warning(message, toExternalToast(options, 5000)),
336
+ const toast = Object.assign((message, options) => makeToast(sonnerToast, message, options, 5000), {
337
+ success: (message, options) => makeToast(sonnerToast.success, message, options, 5000),
338
+ info: (message, options) => makeToast(sonnerToast.info, message, options, 5000),
339
+ warning: (message, options) => makeToast(sonnerToast.warning, message, options, 5000),
215
340
  error: (message, options) =>
216
341
  // Default Infinity — errors persist until manually dismissed (toast.specs.ts).
217
- sonnerToast.error(message, toExternalToast(options, Infinity)),
342
+ makeToast(sonnerToast.error, message, options, Infinity),
218
343
  promise: (promise, options) => {
219
344
  // Discard sonner's own return value (string|number & { unwrap }) — the spec's
220
345
  // contract is `=> void`; the loading → success/error swap is automatic and there
221
346
  // is no toast id to combine with toast.dismiss(id).
347
+ //
348
+ // loading/success/error are wrapped in `ToastTitleText` too — they render into
349
+ // the same `[data-title]` slot (styled by the same `classNames.title`, clamped
350
+ // the same way) as every other kind, so they get the same truncation reveal.
351
+ // `success`/`error` accept a plain value or a function of the resolved
352
+ // data/caught error (PromiseToastOptions<T>'s own shape) — resolve that first,
353
+ // then wrap the result; sonner is what actually calls this function with the
354
+ // real data/error at resolve/reject time.
355
+ //
356
+ // Pause/resume: the loading phase is `type: "loading"`, which sonner's own timer
357
+ // effect excludes from auto-dismissal entirely (no timer ever starts for it —
358
+ // index.mjs ~644) — nothing to pause there. Only the resolved *success* toast can
359
+ // auto-dismiss, so it alone is wired below, with its own explicit 5000ms duration
360
+ // (sonner's own internal default for a `.promise()` resolution is 4000ms, and
361
+ // unlike `toExternalToast`'s call sites, `resume` here has no other way to learn
362
+ // what to restore). The resolved *error* toast persists until manually dismissed —
363
+ // `duration: Infinity` is set EXPLICITLY below, matching `toast.error`'s own
364
+ // default: sonner's update merge only touches keys present in the returned
365
+ // object, so omitting `duration` here does not inherit Infinity from anywhere,
366
+ // it falls back to sonner's own internal ~4000ms default instead (this was a
367
+ // real, Validator-caught bug — the error toast was silently auto-dismissing with
368
+ // no pause protection, the exact gap this whole feature exists to close). With
369
+ // `duration: Infinity` actually set, no timer ever starts, so no pause/resume is
370
+ // wired for it either.
371
+ const id = nextToastId();
372
+ const successDuration = 5000;
373
+ let successTitleNode;
374
+ const pauseSuccess = () => {
375
+ // Same guard as `resumeSuccess` below — see `makeToast`'s `pause` for why.
376
+ if (!sonnerToast.getToasts().some((t) => t.id === id))
377
+ return;
378
+ sonnerToast.success(successTitleNode, { id, duration: Infinity });
379
+ };
380
+ const resumeSuccess = () => {
381
+ if (!sonnerToast.getToasts().some((t) => t.id === id))
382
+ return;
383
+ sonnerToast.success(successTitleNode, {
384
+ id,
385
+ duration: successDuration,
386
+ });
387
+ };
222
388
  sonnerToast.promise(promise, {
223
- loading: options.loading,
224
- success: options.success,
225
- error: options.error,
389
+ id,
390
+ loading: _jsx(ToastTitleText, { children: options.loading }),
391
+ success: (data) => {
392
+ const content = typeof options.success === "function"
393
+ ? options.success(data)
394
+ : options.success;
395
+ successTitleNode = (_jsx(ToastTitleText, { onRevealOpen: pauseSuccess, onRevealClose: resumeSuccess, children: content }));
396
+ return { message: successTitleNode, duration: successDuration };
397
+ },
398
+ error: (error) => {
399
+ const content = typeof options.error === "function"
400
+ ? options.error(error)
401
+ : options.error;
402
+ // `duration: Infinity` must be explicit here — sonner's own merge only
403
+ // touches keys present in this return value, and with none supplied it
404
+ // falls back to its own internal ~4000ms default, not our Infinity intent.
405
+ // (Found by the Validator: this toast was silently auto-dismissing behind
406
+ // an unpaused timer, contradicting this file's own comment above.)
407
+ return {
408
+ message: _jsx(ToastTitleText, { children: content }),
409
+ duration: Infinity,
410
+ };
411
+ },
226
412
  });
227
413
  },
228
414
  dismiss: (id) => {
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/ui/toast.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/ui/toast.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,OAAO,IAAI,aAAa,EACxB,KAAK,IAAI,WAAW,GAGrB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,YAAY,EACZ,WAAW,EACX,IAAI,EACJ,OAAO,EACP,aAAa,EACb,CAAC,GACF,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAoDlD,8EAA8E;AAC9E,EAAE;AACF,uFAAuF;AACvF,mFAAmF;AACnF,qFAAqF;AACrF,sFAAsF;AACtF,iFAAiF;AACjF,sFAAsF;AACtF,6EAA6E;AAC7E,gFAAgF;AAChF,gEAAgE;AAChE,MAAM,gBAAgB,GAAoB;IACxC,kFAAkF;IAClF,gFAAgF;IAChF,oFAAoF;IACpF,iFAAiF;IACjF,mEAAmE;IACnE,mFAAmF;IACnF,oFAAoF;IACpF,sFAAsF;IACtF,gFAAgF;IAChF,gFAAgF;IAChF,kFAAkF;IAClF,4EAA4E;IAC5E,gFAAgF;IAChF,4EAA4E;IAC5E,qFAAqF;IACrF,+EAA+E;IAC/E,gFAAgF;IAChF,qFAAqF;IACrF,sFAAsF;IACtF,gDAAgD;IAChD,EAAE;IACF,qFAAqF;IACrF,sFAAsF;IACtF,kFAAkF;IAClF,0DAA0D;IAC1D,EAAE;IACF,oFAAoF;IACpF,gFAAgF;IAChF,+EAA+E;IAC/E,iFAAiF;IACjF,+EAA+E;IAC/E,6EAA6E;IAC7E,oFAAoF;IACpF,qFAAqF;IACrF,+EAA+E;IAC/E,qFAAqF;IACrF,mFAAmF;IACnF,oFAAoF;IACpF,+EAA+E;IAC/E,6EAA6E;IAC7E,mFAAmF;IACnF,iFAAiF;IACjF,6EAA6E;IAC7E,gFAAgF;IAChF,uCAAuC;IACvC,EAAE;IACF,6EAA6E;IAC7E,iFAAiF;IACjF,iFAAiF;IACjF,iFAAiF;IACjF,mFAAmF;IACnF,kFAAkF;IAClF,mFAAmF;IACnF,wEAAwE;IACxE,KAAK,EACH,wOAAwO;IAC1O,mFAAmF;IACnF,oFAAoF;IACpF,gFAAgF;IAChF,sFAAsF;IACtF,iBAAiB;IACjB,EAAE;IACF,qFAAqF;IACrF,sFAAsF;IACtF,mFAAmF;IACnF,qFAAqF;IACrF,+EAA+E;IAC/E,qFAAqF;IACrF,qFAAqF;IACrF,wEAAwE;IACxE,IAAI,EAAE,8EAA8E;IACpF,sFAAsF;IACtF,oFAAoF;IACpF,uFAAuF;IACvF,sFAAsF;IACtF,+CAA+C;IAC/C,OAAO,EAAE,0BAA0B;IACnC,iFAAiF;IACjF,gFAAgF;IAChF,oFAAoF;IACpF,kFAAkF;IAClF,kFAAkF;IAClF,8EAA8E;IAC9E,qFAAqF;IACrF,iFAAiF;IACjF,8EAA8E;IAC9E,oFAAoF;IACpF,2EAA2E;IAC3E,+EAA+E;IAC/E,iFAAiF;IACjF,+EAA+E;IAC/E,6DAA6D;IAC7D,KAAK,EAAE,EAAE,CACP,kBAAkB,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAClD,mCAAmC,CACpC;IACD,sFAAsF;IACtF,iFAAiF;IACjF,6DAA6D;IAC7D,kFAAkF;IAClF,kFAAkF;IAClF,kDAAkD;IAClD,WAAW,EAAE,EAAE,CACb,kBAAkB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,EAC3C,gCAAgC,CACjC;IACD,mFAAmF;IACnF,mFAAmF;IACnF,mFAAmF;IACnF,kEAAkE;IAClE,YAAY,EAAE,EAAE,CACd,cAAc,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EACpD,SAAS,CACV;IACD,WAAW,EAAE,EAAE,CACb,cAAc,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACrD,6EAA6E;IAC7E,oFAAoF;IACpF,qFAAqF;IACrF,mFAAmF;IACnF,mFAAmF;IACnF,qFAAqF;IACrF,iFAAiF;IACjF,0EAA0E;IAC1E,EAAE;IACF,+EAA+E;IAC/E,wDAAwD;IACxD,wFAAwF,EACxF,iCAAiC,EACjC,wDAAwD,CACzD;CACF,CAAC;AAQF,sFAAsF;AACtF,iFAAiF;AACjF,8EAA8E;AAC9E,EAAE;AACF,kFAAkF;AAClF,kFAAkF;AAClF,yEAAyE;AACzE,iFAAiF;AACjF,mFAAmF;AACnF,4DAA4D;AAC5D,MAAM,WAAW,GAAiB;IAChC,OAAO,EAAE,CACP,KAAC,YAAY,IACX,SAAS,EAAC,wCAAwC,iBACtC,MAAM,GAClB,CACH;IACD,IAAI,EAAE,CACJ,KAAC,IAAI,IAAC,SAAS,EAAC,kCAAkC,iBAAa,MAAM,GAAG,CACzE;IACD,OAAO,EAAE,CACP,KAAC,aAAa,IACZ,SAAS,EAAC,wCAAwC,iBACtC,MAAM,GAClB,CACH;IACD,KAAK,EAAE,CACL,KAAC,WAAW,IACV,SAAS,EAAC,uCAAuC,iBACrC,MAAM,GAClB,CACH;IACD,0EAA0E;IAC1E,2DAA2D;IAC3D,KAAK,EAAE,KAAC,CAAC,IAAC,SAAS,EAAC,SAAS,iBAAa,MAAM,GAAG;IACnD,+EAA+E;IAC/E,iFAAiF;IACjF,qFAAqF;IACrF,oFAAoF;IACpF,yEAAyE;IACzE,iFAAiF;IACjF,mEAAmE;IACnE,OAAO,EAAE,CACP,KAAC,OAAO,IACN,SAAS,EAAC,qDAAqD,iBACnD,MAAM,GAClB,CACH;CACF,CAAC;AAsCF,SAAS,cAAc,CAAC,EACtB,QAAQ,EACR,YAAY,EACZ,aAAa,GACoC;IACjD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,cAAc,EAAmB,CAAC;IAExE,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,CACX,eACE,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,CAAC,EACX,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO,EAAE,CAAC;YACV,IAAI,WAAW;gBAAE,YAAY,EAAE,EAAE,CAAC;QACpC,CAAC,EACD,MAAM,EAAE,GAAG,EAAE;YACX,IAAI,WAAW;gBAAE,aAAa,EAAE,EAAE,CAAC;QACrC,CAAC,EACD,SAAS,EAAC,4GAA4G,YAErH,QAAQ,GACJ,CACR,CAAC;IAEF,gEAAgE;IAChE,8DAA8D;IAC9D,OAAO,WAAW,CAAC,CAAC,CAAC,CACnB,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBAAE,IAAI,GAAkB,EAC/C,KAAC,cAAc,cAAE,QAAQ,GAAkB,IACnC,CACX,CAAC,CAAC,CAAC,CACF,IAAI,CACL,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,EAC5B,QAAQ,EACR,YAAY,EACZ,aAAa,GACoC;IACjD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,cAAc,EAAmB,CAAC;IAExE,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,CACX,eACE,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,CAAC,EACX,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO,EAAE,CAAC;YACV,IAAI,WAAW;gBAAE,YAAY,EAAE,EAAE,CAAC;QACpC,CAAC,EACD,MAAM,EAAE,GAAG,EAAE;YACX,IAAI,WAAW;gBAAE,aAAa,EAAE,EAAE,CAAC;QACrC,CAAC,EACD,SAAS,EAAC,4GAA4G,YAErH,QAAQ,GACJ,CACR,CAAC;IAEF,OAAO,WAAW,CAAC,CAAC,CAAC,CACnB,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBAAE,IAAI,GAAkB,EAC/C,KAAC,cAAc,cAAE,QAAQ,GAAkB,IACnC,CACX,CAAC,CAAC,CAAC,CACF,IAAI,CACL,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF;;;;;;;GAOG;AACH,SAAS,OAAO,CAAC,EAAE,QAAQ,GAAG,WAAW,EAAE,YAAY,EAAgB;IACrE,MAAM,EAAE,CAAC,EAAE,GAAG,eAAe,EAAE,CAAC;IAChC,OAAO,CACL,KAAC,aAAa,IACZ,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,KAAK,EACjB,WAAW,QACX,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE;YACZ,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,gBAAgB;YAC5B,wEAAwE;YACxE,2EAA2E;YAC3E,oBAAoB,EAAE,YAAY,IAAI,CAAC,CAAC,eAAe,CAAC;SACzD,GACD,CACH,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,+EAA+E;AAC/E,EAAE;AACF,kFAAkF;AAClF,gFAAgF;AAChF,wFAAwF;AACxF,uFAAuF;AACvF,wFAAwF;AACxF,uFAAuF;AACvF,qFAAqF;AACrF,sFAAsF;AACtF,wFAAwF;AACxF,kCAAkC;AAClC,EAAE;AACF,wFAAwF;AACxF,oFAAoF;AACpF,mFAAmF;AACnF,sFAAsF;AACtF,uFAAuF;AACvF,oFAAoF;AACpF,yFAAyF;AACzF,8DAA8D;AAC9D,EAAE;AACF,mFAAmF;AACnF,sFAAsF;AACtF,wFAAwF;AACxF,qFAAqF;AACrF,qFAAqF;AACrF,wFAAwF;AACxF,wFAAwF;AACxF,yFAAyF;AACzF,uFAAuF;AACvF,uFAAuF;AACvF,uFAAuF;AACvF,kFAAkF;AAClF,2BAA2B;AAC3B,IAAI,cAAc,GAAG,CAAC,CAAC;AACvB,SAAS,WAAW;IAClB,OAAO,YAAY,EAAE,cAAc,EAAE,CAAC;AACxC,CAAC;AAOD,SAAS,eAAe,CACtB,OAAiC,EACjC,eAAuB,EACvB,MAAkC;IAElC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,OAAO;QACL,gFAAgF;QAChF,iFAAiF;QACjF,6EAA6E;QAC7E,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAClC,KAAC,oBAAoB,IACnB,YAAY,EAAE,MAAM,CAAC,YAAY,EACjC,aAAa,EAAE,MAAM,CAAC,aAAa,YAElC,OAAO,CAAC,WAAW,GACC,CACxB,CAAC,CAAC,CAAC,SAAS;QACb,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,eAAe;QAC9C,MAAM,EAAE,MAAM;YACZ,CAAC,CAAC;gBACE,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,CAAC,KAA0C,EAAE,EAAE;oBACtD,4EAA4E;oBAC5E,4EAA4E;oBAC5E,4EAA4E;oBAC5E,yEAAyE;oBACzE,mEAAmE;oBACnE,6EAA6E;oBAC7E,sEAAsE;oBACtE,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,CAAC;aACF;YACH,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAChB,IAAiB,EACjB,OAAwB,EACxB,OAAiC,EACjC,eAAuB;IAEvB,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,eAAe,CAAC;IACtD,4EAA4E;IAC5E,2EAA2E;IAC3E,sDAAsD;IACtD,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO,CAAC,wCAAwC;QAC3E,4EAA4E;QAC5E,uEAAuE;QACvE,wEAAwE;QACxE,kCAAkC;QAClC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;YAAE,OAAO;QAC9D,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,uEAAuE;QACvE,4EAA4E;QAC5E,qCAAqC;QACrC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;YAAE,OAAO;QAC9D,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC;IACF,MAAM,SAAS,GAAoB,CACjC,KAAC,cAAc,IAAC,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YACvD,OAAO,GACO,CAClB,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,EAAE;QACrB,GAAG,eAAe,CAAC,OAAO,EAAE,eAAe,EAAE;YAC3C,YAAY,EAAE,KAAK;YACnB,aAAa,EAAE,MAAM;SACtB,CAAC;QACF,EAAE;KACH,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,KAAK,GAAY,MAAM,CAAC,MAAM,CAClC,CAAC,OAAwB,EAAE,OAAsB,EAAmB,EAAE,CACpE,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAChD;IACE,OAAO,EAAE,CACP,OAAwB,EACxB,OAAsB,EACL,EAAE,CACnB,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;IACxD,IAAI,EAAE,CAAC,OAAwB,EAAE,OAAsB,EAAmB,EAAE,CAC1E,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;IACrD,OAAO,EAAE,CACP,OAAwB,EACxB,OAAsB,EACL,EAAE,CACnB,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;IACxD,KAAK,EAAE,CACL,OAAwB,EACxB,OAAsB,EACL,EAAE;IACnB,+EAA+E;IAC/E,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;IAC1D,OAAO,EAAE,CACP,OAAmB,EACnB,OAA+B,EACzB,EAAE;QACR,8EAA8E;QAC9E,iFAAiF;QACjF,oDAAoD;QACpD,EAAE;QACF,+EAA+E;QAC/E,+EAA+E;QAC/E,6EAA6E;QAC7E,uEAAuE;QACvE,+EAA+E;QAC/E,6EAA6E;QAC7E,0CAA0C;QAC1C,EAAE;QACF,iFAAiF;QACjF,8EAA8E;QAC9E,kFAAkF;QAClF,kFAAkF;QAClF,8EAA8E;QAC9E,iFAAiF;QACjF,mFAAmF;QACnF,6EAA6E;QAC7E,2EAA2E;QAC3E,+EAA+E;QAC/E,6EAA6E;QAC7E,iFAAiF;QACjF,+EAA+E;QAC/E,iFAAiF;QACjF,uBAAuB;QACvB,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;QACzB,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,IAAI,gBAAiC,CAAC;QACtC,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,2EAA2E;YAC3E,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;gBAAE,OAAO;YAC9D,WAAW,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC;QACF,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;gBAAE,OAAO;YAC9D,WAAW,CAAC,OAAO,CAAC,gBAAgB,EAAE;gBACpC,EAAE;gBACF,QAAQ,EAAE,eAAe;aAC1B,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE;YAC3B,EAAE;YACF,OAAO,EAAE,KAAC,cAAc,cAAE,OAAO,CAAC,OAAO,GAAkB;YAC3D,OAAO,EAAE,CAAC,IAAO,EAAE,EAAE;gBACnB,MAAM,OAAO,GACX,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU;oBACnC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;oBACvB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBACtB,gBAAgB,GAAG,CACjB,KAAC,cAAc,IACb,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,YAE3B,OAAO,GACO,CAClB,CAAC;gBACF,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YAClE,CAAC;YACD,KAAK,EAAE,CAAC,KAAc,EAAE,EAAE;gBACxB,MAAM,OAAO,GACX,OAAO,OAAO,CAAC,KAAK,KAAK,UAAU;oBACjC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;oBACtB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;gBACpB,uEAAuE;gBACvE,uEAAuE;gBACvE,2EAA2E;gBAC3E,0EAA0E;gBAC1E,mEAAmE;gBACnE,OAAO;oBACL,OAAO,EAAE,KAAC,cAAc,cAAE,OAAO,GAAkB;oBACnD,QAAQ,EAAE,QAAQ;iBACnB,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,CAAC,EAAoB,EAAQ,EAAE;QACtC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;CACF,CACF,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -2,7 +2,13 @@ import * as React from "react";
2
2
  import { ToggleGroup as ToggleGroupPrimitive } from "radix-ui";
3
3
  import { type VariantProps } from "class-variance-authority";
4
4
  import { toggleVariants } from "./toggle.js";
5
- declare function ToggleGroup({ className, variant, size, children, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): React.JSX.Element;
5
+ declare const ToggleGroup: React.ForwardRefExoticComponent<(Omit<ToggleGroupPrimitive.ToggleGroupSingleProps & React.RefAttributes<HTMLDivElement> & VariantProps<(props?: ({
6
+ variant?: "default" | "outline" | null | undefined;
7
+ size?: "default" | "sm" | "lg" | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string>, "ref"> | Omit<ToggleGroupPrimitive.ToggleGroupMultipleProps & React.RefAttributes<HTMLDivElement> & VariantProps<(props?: ({
9
+ variant?: "default" | "outline" | null | undefined;
10
+ size?: "default" | "sm" | "lg" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string>, "ref">) & React.RefAttributes<HTMLDivElement>>;
6
12
  declare function ToggleGroupItem({ className, children, variant, size, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): React.JSX.Element;
7
13
  export { ToggleGroup, ToggleGroupItem };
8
14
  //# sourceMappingURL=toggle-group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAS1C,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAmB,EACnB,IAAgB,EAChB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,qBAiBpC;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,qBA0BpC;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAM7D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAiF1C,QAAA,MAAM,WAAW;;;;;;+HAA6D,CAAC;AAE/E,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,qBA6BpC;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC"}
@@ -1,17 +1,32 @@
1
1
  "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import * as React from "react";
4
4
  import { ToggleGroup as ToggleGroupPrimitive } from "radix-ui";
5
5
  import {} from "class-variance-authority";
6
6
  import { cn } from "../../lib/utils.js";
7
+ import { withRef } from "../../lib/with-ref.js";
8
+ import { mergeRefs } from "../../lib/merge-refs.js";
9
+ import { OverflowStripArrow, useOverflowStrip } from "./overflow-strip.js";
7
10
  import { toggleVariants } from "./toggle.js";
8
11
  // Empty default — `ToggleGroupItem` standalone (no surrounding `ToggleGroup`)
9
12
  // must fall back to its own `variant`/`size` props, and a non-empty default
10
13
  // here would clobber those.
11
14
  const ToggleGroupContext = React.createContext({});
12
- function ToggleGroup({ className, variant = "default", size = "default", children, ...props }) {
13
- return (_jsx(ToggleGroupPrimitive.Root, { "data-slot": "toggle-group", "data-variant": variant, "data-size": size, className: cn("group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-none", className), ...props, children: _jsx(ToggleGroupContext.Provider, { value: { variant, size }, children: children }) }));
15
+ function ToggleGroupImpl({ ref, className, variant = "default", size = "default", orientation, children, ...props }) {
16
+ const { ref: scrollRef, hasMoreBefore, hasMoreAfter, scrollByStep, } = useOverflowStrip();
17
+ const rootRef = React.useMemo(() => mergeRefs(ref, scrollRef), [ref, scrollRef]);
18
+ // `orientation` stays optional so an unset group keeps Radix's default, in
19
+ // which all four arrow keys move focus.
20
+ const isVertical = orientation === "vertical";
21
+ return (
22
+ // The arrows are siblings of the group root inside this wrapper, never
23
+ // children of it — rendering them inside would count toward the item
24
+ // total and break Radix's roving focus (Home/End, arrow-key wrap).
25
+ _jsxs("div", { "data-slot": "toggle-group-scroller", className: cn("flex min-w-0 max-w-full", isVertical ? "items-start" : "items-center"), children: [hasMoreBefore && (_jsx(OverflowStripArrow, { direction: "before", onScroll: () => scrollByStep("before") })), _jsx(ToggleGroupPrimitive.Root, { ref: rootRef, "data-slot": "toggle-group", "data-variant": variant, "data-size": size, orientation: orientation, className: cn("group/toggle-group flex w-fit items-center rounded-md data-[variant=outline]:shadow-none", isVertical
26
+ ? "overflow-visible"
27
+ : "min-w-0 max-w-full overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden motion-safe:scroll-smooth", className), ...props, children: _jsx(ToggleGroupContext.Provider, { value: { variant, size }, children: children }) }), hasMoreAfter && (_jsx(OverflowStripArrow, { direction: "after", onScroll: () => scrollByStep("after") }))] }));
14
28
  }
29
+ const ToggleGroup = withRef(ToggleGroupImpl);
15
30
  function ToggleGroupItem({ className, children, variant, size, ...props }) {
16
31
  const context = React.useContext(ToggleGroupContext);
17
32
  // Group context wins when present (shadcn pattern: the group controls the
@@ -22,7 +37,11 @@ function ToggleGroupItem({ className, children, variant, size, ...props }) {
22
37
  return (_jsx(ToggleGroupPrimitive.Item, { "data-slot": "toggle-group-item", "data-variant": resolvedVariant, "data-size": resolvedSize, className: cn(toggleVariants({
23
38
  variant: resolvedVariant,
24
39
  size: resolvedSize,
25
- }), "min-w-0 flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l", className), ...props, children: children }));
40
+ }),
41
+ // An item is never narrower than its label (`min-w-fit`); a group that
42
+ // does not fit scrolls. The focus ring sits inside the item because the
43
+ // group is a scroll container, which clips anything drawn outside it.
44
+ "min-w-fit flex-1 shrink-0 rounded-none shadow-none first:rounded-l-md last:rounded-r-md focus:z-10 focus-visible:z-10 focus-visible:ring-inset data-[variant=outline]:border-l-0 data-[variant=outline]:first:border-l", className), ...props, children: children }));
26
45
  }
27
46
  export { ToggleGroup, ToggleGroupItem };
28
47
  //# sourceMappingURL=toggle-group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.js","sourceRoot":"","sources":["../../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAqB,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,8EAA8E;AAC9E,4EAA4E;AAC5E,4BAA4B;AAC5B,MAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAE5C,EAAE,CAAC,CAAC;AAEN,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,SAAS,EAChB,QAAQ,EACR,GAAG,KAAK,EAE2B;IACnC,OAAO,CACL,KAAC,oBAAoB,CAAC,IAAI,iBACd,cAAc,kBACV,OAAO,eACV,IAAI,EACf,SAAS,EAAE,EAAE,CACX,0FAA0F,EAC1F,SAAS,CACV,KACG,KAAK,YAET,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,YAClD,QAAQ,GACmB,GACJ,CAC7B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EAE2B;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACrD,0EAA0E;IAC1E,sEAAsE;IACtE,sCAAsC;IACtC,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC;IACnD,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC;IAE1C,OAAO,CACL,KAAC,oBAAoB,CAAC,IAAI,iBACd,mBAAmB,kBACf,eAAe,eAClB,YAAY,EACvB,SAAS,EAAE,EAAE,CACX,cAAc,CAAC;YACb,OAAO,EAAE,eAAe;YACxB,IAAI,EAAE,YAAY;SACnB,CAAC,EACF,6LAA6L,EAC7L,SAAS,CACV,KACG,KAAK,YAER,QAAQ,GACiB,CAC7B,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"toggle-group.js","sourceRoot":"","sources":["../../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tree-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/tree-view.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAkB/B,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sFAAsF;IACtF,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;IACrB,mGAAmG;IACnG,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;IACrE,kDAAkD;IAClD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACnC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,mFAAmF;IACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,4CAA4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8GAA8G;IAC9G,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AA4BD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAEpD;AAaD,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,SAAiB,EACjB,IAAI,EAAE,QAAQ,EACd,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,QAAQ,EACR,aAAwB,EACxB,IAAW,EACX,mBAAmB,EACnB,UAAU,EACV,OAAe,EACf,eAAmB,EACnB,YAAY,EACZ,SAAS,EACT,KAAK,EACL,EAAE,GACH,EAAE,aAAa,qBAknBf"}
1
+ {"version":3,"file":"tree-view.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/tree-view.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAoB/B,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sFAAsF;IACtF,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;IACrB,mGAAmG;IACnG,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;IACrE,kDAAkD;IAClD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACnC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,mFAAmF;IACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,4CAA4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8GAA8G;IAC9G,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AA4BD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAEpD;AA2MD,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,SAAiB,EACjB,IAAI,EAAE,QAAQ,EACd,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,QAAQ,EACR,aAAwB,EACxB,IAAW,EACX,mBAAmB,EACnB,UAAU,EACV,OAAe,EACf,eAAmB,EACnB,YAAY,EACZ,SAAS,EACT,KAAK,EACL,EAAE,GACH,EAAE,aAAa,qBAmhBf"}