@cascivo/react 0.12.0 → 0.13.1

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 (237) hide show
  1. package/dist/accordion/accordion.js +46 -44
  2. package/dist/action-sheet/action-sheet.js +16 -16
  3. package/dist/alert-dialog/alert-dialog.js +34 -34
  4. package/dist/app-shell/app-shell.css +1 -1
  5. package/dist/app-shell/app-shell.js +36 -33
  6. package/dist/app-shell/app-shell.module.js +8 -8
  7. package/dist/avatar-group/avatar-group.js +6 -6
  8. package/dist/badge/badge.js +17 -10
  9. package/dist/bottom-sheet/bottom-sheet.js +18 -18
  10. package/dist/button/button.css +1 -1
  11. package/dist/button/button.js +15 -12
  12. package/dist/button/button.module.js +1 -1
  13. package/dist/button-group/button-group.js +8 -8
  14. package/dist/card/card.css +1 -1
  15. package/dist/card/card.module.js +8 -8
  16. package/dist/carousel/carousel.js +20 -20
  17. package/dist/checkbox/checkbox.js +21 -21
  18. package/dist/checkbox-card/checkbox-card.js +15 -13
  19. package/dist/collapsible/collapsible.js +7 -7
  20. package/dist/color-picker/color-picker.js +26 -26
  21. package/dist/combobox/combobox.css +1 -1
  22. package/dist/combobox/combobox.js +86 -86
  23. package/dist/combobox/combobox.module.js +15 -15
  24. package/dist/command-menu/command-menu.js +111 -111
  25. package/dist/comparison/comparison.js +10 -10
  26. package/dist/context-menu/context-menu.js +9 -9
  27. package/dist/copy-button/copy-button.js +18 -16
  28. package/dist/data-table/data-table.css +1 -1
  29. package/dist/data-table/data-table.js +8 -2
  30. package/dist/data-table/data-table.module.js +29 -29
  31. package/dist/date-picker/date-picker.css +1 -1
  32. package/dist/date-picker/date-picker.js +25 -25
  33. package/dist/date-picker/date-picker.module.js +19 -19
  34. package/dist/date-range-picker/date-range-picker.js +26 -26
  35. package/dist/drawer/drawer.css +1 -1
  36. package/dist/drawer/drawer.js +18 -17
  37. package/dist/drawer/drawer.module.js +9 -9
  38. package/dist/dropdown/dropdown.js +48 -48
  39. package/dist/editable/editable.js +11 -11
  40. package/dist/fab/fab.js +53 -53
  41. package/dist/field/field.js +8 -8
  42. package/dist/file-uploader/file-uploader.css +1 -1
  43. package/dist/file-uploader/file-uploader.js +19 -19
  44. package/dist/file-uploader/file-uploader.module.js +14 -14
  45. package/dist/filter/filter.js +10 -9
  46. package/dist/header-panel/header-panel.js +31 -31
  47. package/dist/hover-card/hover-card.js +21 -21
  48. package/dist/icon-button/icon-button.css +1 -1
  49. package/dist/icon-button/icon-button.js +5 -5
  50. package/dist/icon-button/icon-button.module.js +1 -1
  51. package/dist/index.d.ts +1475 -251
  52. package/dist/input/input.css +1 -1
  53. package/dist/input/input.js +22 -21
  54. package/dist/input/input.module.js +5 -5
  55. package/dist/item/item.css +1 -1
  56. package/dist/item/item.module.js +6 -6
  57. package/dist/layouts/src/page-header/page-header.css +1 -0
  58. package/dist/layouts/src/page-header/page-header.js +33 -0
  59. package/dist/layouts/src/page-header/page-header.module.js +13 -0
  60. package/dist/link/link.js +14 -12
  61. package/dist/log-viewer/log-viewer.js +26 -26
  62. package/dist/menu/menu.js +20 -20
  63. package/dist/menu-button/menu-button.js +48 -48
  64. package/dist/menubar/menubar.js +42 -42
  65. package/dist/modal/modal.css +1 -1
  66. package/dist/modal/modal.js +41 -35
  67. package/dist/modal/modal.module.js +8 -7
  68. package/dist/multi-select/multi-select.css +1 -1
  69. package/dist/multi-select/multi-select.js +57 -57
  70. package/dist/multi-select/multi-select.module.js +11 -11
  71. package/dist/native-select/native-select.js +13 -11
  72. package/dist/navigation-menu/navigation-menu.js +46 -46
  73. package/dist/node/accordion/accordion.js +46 -44
  74. package/dist/node/action-sheet/action-sheet.js +16 -16
  75. package/dist/node/alert-dialog/alert-dialog.js +34 -34
  76. package/dist/node/app-shell/app-shell.js +36 -33
  77. package/dist/node/app-shell/app-shell.module.js +8 -8
  78. package/dist/node/avatar-group/avatar-group.js +6 -6
  79. package/dist/node/badge/badge.js +17 -10
  80. package/dist/node/bottom-sheet/bottom-sheet.js +18 -18
  81. package/dist/node/button/button.js +15 -12
  82. package/dist/node/button/button.module.js +1 -1
  83. package/dist/node/button-group/button-group.js +8 -8
  84. package/dist/node/card/card.module.js +8 -8
  85. package/dist/node/carousel/carousel.js +20 -20
  86. package/dist/node/checkbox/checkbox.js +21 -21
  87. package/dist/node/checkbox-card/checkbox-card.js +15 -13
  88. package/dist/node/collapsible/collapsible.js +7 -7
  89. package/dist/node/color-picker/color-picker.js +26 -26
  90. package/dist/node/combobox/combobox.js +86 -86
  91. package/dist/node/combobox/combobox.module.js +15 -15
  92. package/dist/node/command-menu/command-menu.js +111 -111
  93. package/dist/node/comparison/comparison.js +10 -10
  94. package/dist/node/context-menu/context-menu.js +9 -9
  95. package/dist/node/copy-button/copy-button.js +18 -16
  96. package/dist/node/data-table/data-table.js +8 -2
  97. package/dist/node/data-table/data-table.module.js +29 -29
  98. package/dist/node/date-picker/date-picker.js +25 -25
  99. package/dist/node/date-picker/date-picker.module.js +19 -19
  100. package/dist/node/date-range-picker/date-range-picker.js +26 -26
  101. package/dist/node/drawer/drawer.js +18 -17
  102. package/dist/node/drawer/drawer.module.js +9 -9
  103. package/dist/node/dropdown/dropdown.js +48 -48
  104. package/dist/node/editable/editable.js +11 -11
  105. package/dist/node/fab/fab.js +53 -53
  106. package/dist/node/field/field.js +8 -8
  107. package/dist/node/file-uploader/file-uploader.js +19 -19
  108. package/dist/node/file-uploader/file-uploader.module.js +14 -14
  109. package/dist/node/filter/filter.js +10 -9
  110. package/dist/node/header-panel/header-panel.js +31 -31
  111. package/dist/node/hover-card/hover-card.js +21 -21
  112. package/dist/node/icon-button/icon-button.js +5 -5
  113. package/dist/node/icon-button/icon-button.module.js +1 -1
  114. package/dist/node/input/input.js +22 -21
  115. package/dist/node/input/input.module.js +5 -5
  116. package/dist/node/item/item.module.js +6 -6
  117. package/dist/node/layouts/src/page-header/page-header.js +33 -0
  118. package/dist/node/layouts/src/page-header/page-header.module.js +12 -0
  119. package/dist/node/link/link.js +14 -12
  120. package/dist/node/log-viewer/log-viewer.js +26 -26
  121. package/dist/node/menu/menu.js +20 -20
  122. package/dist/node/menu-button/menu-button.js +48 -48
  123. package/dist/node/menubar/menubar.js +42 -42
  124. package/dist/node/modal/modal.js +41 -35
  125. package/dist/node/modal/modal.module.js +8 -7
  126. package/dist/node/multi-select/multi-select.js +57 -57
  127. package/dist/node/multi-select/multi-select.module.js +11 -11
  128. package/dist/node/native-select/native-select.js +13 -11
  129. package/dist/node/navigation-menu/navigation-menu.js +46 -46
  130. package/dist/node/notification/notification.js +50 -44
  131. package/dist/node/notification/notification.module.js +7 -7
  132. package/dist/node/number-input/number-input.js +52 -50
  133. package/dist/node/number-input/number-input.module.js +8 -8
  134. package/dist/node/otp-input/otp-input.js +8 -8
  135. package/dist/node/otp-input/otp-input.module.js +2 -2
  136. package/dist/node/overflow-menu/overflow-menu.js +18 -13
  137. package/dist/node/password-input/password-input.js +28 -27
  138. package/dist/node/password-input/password-input.module.js +7 -7
  139. package/dist/node/popover/popover.js +26 -24
  140. package/dist/node/progress/progress.js +3 -2
  141. package/dist/node/pull-to-refresh/pull-to-refresh.js +13 -13
  142. package/dist/node/radial-progress/radial-progress.js +5 -5
  143. package/dist/node/radio/radio.js +23 -22
  144. package/dist/node/radio-card/radio-card.js +27 -26
  145. package/dist/node/react/src/index.js +4 -3
  146. package/dist/node/react/src/theme.js +30 -19
  147. package/dist/node/resizable/resizable.js +11 -11
  148. package/dist/node/scroll-area/scroll-area.js +4 -4
  149. package/dist/node/search/search.js +49 -49
  150. package/dist/node/search/search.module.js +5 -5
  151. package/dist/node/select/select.js +27 -26
  152. package/dist/node/sheet/sheet.js +11 -10
  153. package/dist/node/sheet/sheet.module.js +5 -5
  154. package/dist/node/side-nav/side-nav.js +91 -91
  155. package/dist/node/skip-nav/skip-nav.js +12 -12
  156. package/dist/node/slider/slider.js +13 -11
  157. package/dist/node/stat/stat.js +6 -5
  158. package/dist/node/stat/stat.module.js +7 -7
  159. package/dist/node/status/status.js +18 -11
  160. package/dist/node/steps/steps.js +23 -23
  161. package/dist/node/structured-list/structured-list.js +33 -32
  162. package/dist/node/tabs/tabs.js +49 -47
  163. package/dist/node/tag/tag.js +22 -15
  164. package/dist/node/tags-input/tags-input.js +35 -35
  165. package/dist/node/tags-input/tags-input.module.js +4 -4
  166. package/dist/node/textarea/textarea.js +22 -21
  167. package/dist/node/tile/tile.module.js +3 -3
  168. package/dist/node/time-picker/time-picker.js +22 -21
  169. package/dist/node/time-picker/time-picker.module.js +5 -5
  170. package/dist/node/timeline/timeline.js +22 -16
  171. package/dist/node/toast/toast.js +15 -15
  172. package/dist/node/toc/toc.js +8 -8
  173. package/dist/node/toggle/toggle.js +15 -13
  174. package/dist/node/toggle-group/toggle-group.js +10 -10
  175. package/dist/node/toggletip/toggletip.js +9 -9
  176. package/dist/node/tooltip/tooltip.js +5 -5
  177. package/dist/node/tree-view/tree-view.js +32 -32
  178. package/dist/notification/notification.css +1 -1
  179. package/dist/notification/notification.js +50 -44
  180. package/dist/notification/notification.module.js +7 -7
  181. package/dist/number-input/number-input.css +1 -1
  182. package/dist/number-input/number-input.js +52 -50
  183. package/dist/number-input/number-input.module.js +8 -8
  184. package/dist/otp-input/otp-input.css +1 -1
  185. package/dist/otp-input/otp-input.js +8 -8
  186. package/dist/otp-input/otp-input.module.js +2 -2
  187. package/dist/overflow-menu/overflow-menu.js +18 -13
  188. package/dist/password-input/password-input.css +1 -1
  189. package/dist/password-input/password-input.js +28 -27
  190. package/dist/password-input/password-input.module.js +7 -7
  191. package/dist/popover/popover.js +26 -24
  192. package/dist/progress/progress.js +3 -2
  193. package/dist/pull-to-refresh/pull-to-refresh.js +13 -13
  194. package/dist/radial-progress/radial-progress.js +5 -5
  195. package/dist/radio/radio.js +23 -22
  196. package/dist/radio-card/radio-card.js +27 -26
  197. package/dist/react/src/index.js +4 -3
  198. package/dist/react/src/theme.js +30 -19
  199. package/dist/resizable/resizable.js +11 -11
  200. package/dist/scroll-area/scroll-area.js +4 -4
  201. package/dist/search/search.css +1 -1
  202. package/dist/search/search.js +49 -49
  203. package/dist/search/search.module.js +5 -5
  204. package/dist/select/select.js +27 -26
  205. package/dist/sheet/sheet.css +1 -1
  206. package/dist/sheet/sheet.js +11 -10
  207. package/dist/sheet/sheet.module.js +5 -5
  208. package/dist/side-nav/side-nav.js +91 -91
  209. package/dist/skip-nav/skip-nav.js +12 -12
  210. package/dist/slider/slider.js +13 -11
  211. package/dist/stat/stat.css +1 -1
  212. package/dist/stat/stat.js +6 -5
  213. package/dist/stat/stat.module.js +7 -7
  214. package/dist/status/status.js +18 -11
  215. package/dist/steps/steps.js +23 -23
  216. package/dist/structured-list/structured-list.js +33 -32
  217. package/dist/styles.css +87 -23
  218. package/dist/tabs/tabs.js +49 -47
  219. package/dist/tag/tag.js +22 -15
  220. package/dist/tags-input/tags-input.css +1 -1
  221. package/dist/tags-input/tags-input.js +35 -35
  222. package/dist/tags-input/tags-input.module.js +4 -4
  223. package/dist/textarea/textarea.js +22 -21
  224. package/dist/tile/tile.css +1 -1
  225. package/dist/tile/tile.module.js +3 -3
  226. package/dist/time-picker/time-picker.css +1 -1
  227. package/dist/time-picker/time-picker.js +22 -21
  228. package/dist/time-picker/time-picker.module.js +5 -5
  229. package/dist/timeline/timeline.js +22 -16
  230. package/dist/toast/toast.js +15 -15
  231. package/dist/toc/toc.js +8 -8
  232. package/dist/toggle/toggle.js +15 -13
  233. package/dist/toggle-group/toggle-group.js +10 -10
  234. package/dist/toggletip/toggletip.js +9 -9
  235. package/dist/tooltip/tooltip.js +5 -5
  236. package/dist/tree-view/tree-view.js +32 -32
  237. package/package.json +10 -4
@@ -1,34 +1,40 @@
1
1
  "use client";
2
2
 
3
3
  import e from "./timeline.module.js";
4
- import { cn as t } from "@cascivo/core";
5
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
+ import { cn as t, normalizeProgress as n } from "@cascivo/core";
5
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
6
6
  //#region ../components/src/timeline/timeline.tsx
7
- function i({ items: i, orientation: a = "vertical", className: o, ...s }) {
8
- return /* @__PURE__ */ n("ol", {
9
- "data-orientation": a,
10
- className: t(e.list, o),
11
- ...s,
12
- children: i.map((t) => /* @__PURE__ */ r("li", {
13
- "data-status": t.status ?? "upcoming",
14
- "aria-current": t.status === "current" ? "step" : void 0,
7
+ var a = {
8
+ pending: "upcoming",
9
+ active: "current",
10
+ complete: "complete",
11
+ error: "current"
12
+ };
13
+ function o({ items: o, orientation: s = "vertical", className: c, ...l }) {
14
+ return /* @__PURE__ */ r("ol", {
15
+ "data-orientation": s,
16
+ className: t(e.list, c),
17
+ ...l,
18
+ children: o.map((t) => /* @__PURE__ */ i("li", {
19
+ "data-status": a[n(t.status ?? "pending")] ?? "upcoming",
20
+ "aria-current": n(t.status ?? "pending") === "active" ? "step" : void 0,
15
21
  className: e.item,
16
- children: [/* @__PURE__ */ n("span", {
22
+ children: [/* @__PURE__ */ r("span", {
17
23
  className: e.marker,
18
24
  "aria-hidden": "true",
19
25
  children: t.icon
20
- }), /* @__PURE__ */ r("div", {
26
+ }), /* @__PURE__ */ i("div", {
21
27
  className: e.content,
22
28
  children: [
23
- /* @__PURE__ */ n("div", {
29
+ /* @__PURE__ */ r("div", {
24
30
  className: e.title,
25
31
  children: t.title
26
32
  }),
27
- t.time ? /* @__PURE__ */ n("time", {
33
+ t.time ? /* @__PURE__ */ r("time", {
28
34
  className: e.time,
29
35
  children: t.time
30
36
  }) : null,
31
- t.description ? /* @__PURE__ */ n("div", {
37
+ t.description ? /* @__PURE__ */ r("div", {
32
38
  className: e.description,
33
39
  children: t.description
34
40
  }) : null
@@ -38,4 +44,4 @@ function i({ items: i, orientation: a = "vertical", className: o, ...s }) {
38
44
  });
39
45
  }
40
46
  //#endregion
41
- export { i as Timeline };
47
+ export { o as Timeline };
@@ -2,9 +2,9 @@
2
2
 
3
3
  import e from "./toast.module.js";
4
4
  import { createMachine as t, signal as n, useMachine as r, useSignalEffect as i, useSignals as a } from "@cascivo/core";
5
- import { builtin as o, t as s } from "@cascivo/i18n";
6
- import { Fragment as c, jsx as l, jsxs as u } from "react/jsx-runtime";
7
- import { useRef as d } from "react";
5
+ import { useRef as o } from "react";
6
+ import { builtin as s, t as c } from "@cascivo/i18n";
7
+ import { Fragment as l, jsx as u, jsxs as d } from "react/jsx-runtime";
8
8
  //#region ../components/src/toast/toast.tsx
9
9
  var f = 5e3, p = 160, m = 0, h = n([]);
10
10
  function g(e) {
@@ -19,11 +19,11 @@ function _(e) {
19
19
  function v({ children: t }) {
20
20
  a();
21
21
  let n = h.value.slice(-3);
22
- return /* @__PURE__ */ u(c, { children: [t, /* @__PURE__ */ l("div", {
22
+ return /* @__PURE__ */ d(l, { children: [t, /* @__PURE__ */ u("div", {
23
23
  className: e.viewport,
24
24
  role: "region",
25
- "aria-label": s(o.toast.region),
26
- children: n.map((e) => /* @__PURE__ */ l(b, {
25
+ "aria-label": c(s.toast.region),
26
+ children: n.map((e) => /* @__PURE__ */ u(b, {
27
27
  toast: e,
28
28
  onDismiss: () => _(e.id)
29
29
  }, e.id))
@@ -38,11 +38,11 @@ var y = t({
38
38
  });
39
39
  function b({ toast: t, onDismiss: n }) {
40
40
  a();
41
- let [c, m] = r(y), h = d(n);
41
+ let [l, m] = r(y), h = o(n);
42
42
  h.current = n;
43
43
  let g = t.duration ?? f, _ = t.variant === "destructive";
44
44
  return i(() => {
45
- let e = c.value;
45
+ let e = l.value;
46
46
  if (e === "visible") {
47
47
  let e = setTimeout(() => m("DISMISS"), g);
48
48
  return () => clearTimeout(e);
@@ -51,25 +51,25 @@ function b({ toast: t, onDismiss: n }) {
51
51
  let e = setTimeout(() => h.current(), p);
52
52
  return () => clearTimeout(e);
53
53
  }
54
- }), /* @__PURE__ */ u("div", {
54
+ }), /* @__PURE__ */ d("div", {
55
55
  role: _ ? "alert" : "status",
56
56
  "aria-live": _ ? "assertive" : "polite",
57
57
  "data-variant": t.variant ?? "default",
58
- "data-state": c.value,
58
+ "data-state": l.value,
59
59
  className: e.toast,
60
- children: [/* @__PURE__ */ u("div", {
60
+ children: [/* @__PURE__ */ d("div", {
61
61
  className: e.body,
62
- children: [/* @__PURE__ */ l("div", {
62
+ children: [/* @__PURE__ */ u("div", {
63
63
  className: e.title,
64
64
  children: t.title
65
- }), t.description && /* @__PURE__ */ l("div", {
65
+ }), t.description && /* @__PURE__ */ u("div", {
66
66
  className: e.description,
67
67
  children: t.description
68
68
  })]
69
- }), /* @__PURE__ */ l("button", {
69
+ }), /* @__PURE__ */ u("button", {
70
70
  type: "button",
71
71
  className: e.close,
72
- "aria-label": s(o.toast.dismiss),
72
+ "aria-label": c(s.toast.dismiss),
73
73
  onClick: () => m("DISMISS"),
74
74
  children: "✕"
75
75
  })]
@@ -2,15 +2,15 @@
2
2
 
3
3
  import e from "./toc.module.js";
4
4
  import { cn as t, useSignal as n, useSignalEffect as r, useSignals as i } from "@cascivo/core";
5
- import { builtin as a, t as o } from "@cascivo/i18n";
6
- import { jsx as s } from "react/jsx-runtime";
7
- import { useRef as c } from "react";
5
+ import { useRef as a } from "react";
6
+ import { builtin as o, t as s } from "@cascivo/i18n";
7
+ import { jsx as c } from "react/jsx-runtime";
8
8
  //#region ../components/src/toc/toc.tsx
9
9
  function l({ items: l, activeId: u, onActiveChange: d, labels: f, className: p }) {
10
10
  i();
11
11
  let m = u !== void 0, h = n(u ?? l[0]?.id ?? "");
12
12
  m && (h.value = u);
13
- let g = c(d);
13
+ let g = a(d);
14
14
  return g.current = d, r(() => {
15
15
  if (m || typeof document > "u" || typeof IntersectionObserver > "u") return;
16
16
  let e = l.map((e) => document.getElementById(e.id)).filter((e) => e !== null);
@@ -25,12 +25,12 @@ function l({ items: l, activeId: u, onActiveChange: d, labels: f, className: p }
25
25
  });
26
26
  for (let t of e) n.observe(t);
27
27
  return () => n.disconnect();
28
- }), /* @__PURE__ */ s("nav", {
29
- "aria-label": f?.nav ?? o(a.toc.nav),
28
+ }), /* @__PURE__ */ c("nav", {
29
+ "aria-label": f?.nav ?? s(o.toc.nav),
30
30
  className: t(e.toc, p),
31
- children: /* @__PURE__ */ s("ol", { children: l.map((e) => /* @__PURE__ */ s("li", {
31
+ children: /* @__PURE__ */ c("ol", { children: l.map((e) => /* @__PURE__ */ c("li", {
32
32
  style: { "--toc-level": e.level ?? 2 },
33
- children: /* @__PURE__ */ s("a", {
33
+ children: /* @__PURE__ */ c("a", {
34
34
  href: `#${e.id}`,
35
35
  "aria-current": e.id === h.value ? "location" : void 0,
36
36
  children: e.label
@@ -2,38 +2,40 @@
2
2
 
3
3
  import e from "./toggle.module.js";
4
4
  import { cn as t, createMachine as n, useMachine as r, useSignals as i } from "@cascivo/core";
5
- import { jsx as a, jsxs as o } from "react/jsx-runtime";
5
+ import { forwardRef as a } from "react";
6
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
6
7
  //#region ../components/src/toggle/toggle.tsx
7
- function s({ checked: s, defaultChecked: c = !1, onValueChange: l, onChange: u, label: d, size: f = "md", className: p, disabled: m, ...h }) {
8
+ var c = a(function({ checked: a, defaultChecked: c = !1, onValueChange: l, onChange: u, label: d, size: f = "md", className: p, disabled: m, ...h }, g) {
8
9
  i();
9
- let [g, _] = r(n({
10
+ let [_, v] = r(n({
10
11
  initial: c ? "on" : "off",
11
12
  states: {
12
13
  off: { on: { TOGGLE: "on" } },
13
14
  on: { on: { TOGGLE: "off" } }
14
15
  }
15
- })), v = s !== void 0, y = v ? s : g.value === "on";
16
- return /* @__PURE__ */ o("button", {
16
+ })), y = a !== void 0, b = y ? a : _.value === "on";
17
+ return /* @__PURE__ */ s("button", {
17
18
  type: "button",
18
19
  role: "switch",
19
- "aria-checked": y,
20
- "data-state": y ? "on" : "off",
20
+ "aria-checked": b,
21
+ "data-state": b ? "on" : "off",
21
22
  "data-size": f,
22
23
  disabled: m,
23
24
  className: t(e.toggle, p),
24
25
  onClick: () => {
25
- v || _("TOGGLE"), (l ?? u)?.(!y);
26
+ y || v("TOGGLE"), (l ?? u)?.(!b);
26
27
  },
28
+ ref: g,
27
29
  ...h,
28
- children: [/* @__PURE__ */ a("span", {
30
+ children: [/* @__PURE__ */ o("span", {
29
31
  className: e.track,
30
32
  "aria-hidden": "true",
31
- children: /* @__PURE__ */ a("span", { className: e.thumb })
32
- }), d && /* @__PURE__ */ a("span", {
33
+ children: /* @__PURE__ */ o("span", { className: e.thumb })
34
+ }), d && /* @__PURE__ */ o("span", {
33
35
  className: e.label,
34
36
  children: d
35
37
  })]
36
38
  });
37
- }
39
+ });
38
40
  //#endregion
39
- export { s as Toggle };
41
+ export { c as Toggle };
@@ -2,30 +2,30 @@
2
2
 
3
3
  import e from "./toggle-group.module.js";
4
4
  import { cn as t, useControllableSignal as n, useRovingFocus as r, useSignals as i } from "@cascivo/core";
5
- import { jsx as a, jsxs as o } from "react/jsx-runtime";
6
- import { forwardRef as s } from "react";
5
+ import { forwardRef as a } from "react";
6
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
7
7
  //#region ../components/src/toggle-group/toggle-group.tsx
8
8
  function c(e, t) {
9
9
  return Array.isArray(e) ? e.includes(t) : e === t;
10
10
  }
11
- var l = s(function({ type: s, value: l, defaultValue: u, onValueChange: d, items: f, orientation: p = "horizontal", size: m = "md", disabled: h = !1, className: g, ..._ }, v) {
11
+ var l = a(function({ type: a, value: l, defaultValue: u, onValueChange: d, items: f, orientation: p = "horizontal", size: m = "md", disabled: h = !1, className: g, ..._ }, v) {
12
12
  i();
13
13
  let [y, b] = n({
14
14
  value: l,
15
- defaultValue: u ?? (s === "multiple" ? [] : ""),
15
+ defaultValue: u ?? (a === "multiple" ? [] : ""),
16
16
  onChange: d
17
17
  }), x = r({
18
18
  orientation: p,
19
19
  loop: !0
20
20
  }), S = (e) => {
21
21
  let t = y.value;
22
- if (s === "multiple") {
22
+ if (a === "multiple") {
23
23
  let n = Array.isArray(t) ? t : [];
24
24
  b(n.includes(e) ? n.filter((t) => t !== e) : [...n, e]);
25
25
  } else b(t === e ? "" : e);
26
26
  };
27
- return /* @__PURE__ */ a("div", {
28
- role: s === "single" ? "radiogroup" : "group",
27
+ return /* @__PURE__ */ o("div", {
28
+ role: a === "single" ? "radiogroup" : "group",
29
29
  "data-orientation": p,
30
30
  "data-size": m,
31
31
  className: t(e.toggleGroup, g),
@@ -33,9 +33,9 @@ var l = s(function({ type: s, value: l, defaultValue: u, onValueChange: d, items
33
33
  ..._,
34
34
  children: f.map((t, n) => {
35
35
  let r = c(y.value, t.value), i = h || t.disabled, { ref: l, ...u } = x.getItemProps(n);
36
- return /* @__PURE__ */ o("button", {
36
+ return /* @__PURE__ */ s("button", {
37
37
  type: "button",
38
- ...s === "single" ? {
38
+ ...a === "single" ? {
39
39
  role: "radio",
40
40
  "aria-checked": r
41
41
  } : { "aria-pressed": r },
@@ -46,7 +46,7 @@ var l = s(function({ type: s, value: l, defaultValue: u, onValueChange: d, items
46
46
  "aria-label": t.icon && !t.label ? t.value : void 0,
47
47
  className: e.item,
48
48
  onClick: () => S(t.value),
49
- children: [t.icon, t.label && /* @__PURE__ */ a("span", { children: t.label })]
49
+ children: [t.icon, t.label && /* @__PURE__ */ o("span", { children: t.label })]
50
50
  }, t.value);
51
51
  })
52
52
  });
@@ -2,9 +2,9 @@
2
2
 
3
3
  import e from "./toggletip.module.js";
4
4
  import { DismissableLayer as t, cn as n, useAnchorPosition as r, useControllableSignal as i, useSignals as a } from "@cascivo/core";
5
- import { builtin as o, t as s } from "@cascivo/i18n";
6
- import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
- import { useId as u, useRef as d } from "react";
5
+ import { useId as o, useRef as s } from "react";
6
+ import { builtin as c, t as l } from "@cascivo/i18n";
7
+ import { jsx as u, jsxs as d } from "react/jsx-runtime";
8
8
  //#region ../components/src/toggletip/toggletip.tsx
9
9
  function f({ trigger: f, children: p, placement: m = "top", defaultOpen: h = !1, open: g, onOpenChange: _, labels: v, className: y }) {
10
10
  a();
@@ -12,27 +12,27 @@ function f({ trigger: f, children: p, placement: m = "top", defaultOpen: h = !1,
12
12
  ...g !== void 0 && { value: g },
13
13
  defaultValue: h,
14
14
  ..._ && { onChange: _ }
15
- }), S = d(null), C = d(null), w = u(), { anchorStyle: T, floatingStyle: E } = r({
15
+ }), S = s(null), C = s(null), w = o(), { anchorStyle: T, floatingStyle: E } = r({
16
16
  anchorRef: S,
17
17
  floatingRef: C,
18
18
  placement: m,
19
19
  enabled: b
20
20
  });
21
- return /* @__PURE__ */ l("span", {
21
+ return /* @__PURE__ */ d("span", {
22
22
  className: n(e.root, y),
23
- children: [/* @__PURE__ */ c("button", {
23
+ children: [/* @__PURE__ */ u("button", {
24
24
  ref: S,
25
25
  type: "button",
26
26
  className: e.trigger,
27
27
  "aria-expanded": b.value,
28
28
  "aria-controls": w,
29
- "aria-label": v?.label ?? s(o.toggletip.label),
29
+ "aria-label": v?.label ?? l(c.toggletip.label),
30
30
  style: T,
31
31
  onClick: () => x(!b.value),
32
32
  children: f
33
- }), b.value ? /* @__PURE__ */ c(t, {
33
+ }), b.value ? /* @__PURE__ */ u(t, {
34
34
  onDismiss: () => x(!1),
35
- children: /* @__PURE__ */ c("div", {
35
+ children: /* @__PURE__ */ u("div", {
36
36
  ref: C,
37
37
  id: w,
38
38
  role: "status",
@@ -2,8 +2,8 @@
2
2
 
3
3
  import e from "./tooltip.module.js";
4
4
  import { createMachine as t, useId as n, useMachine as r, useSignalEffect as i, useSignals as a } from "@cascivo/core";
5
- import { jsx as o, jsxs as s } from "react/jsx-runtime";
6
- import { cloneElement as c, useRef as l } from "react";
5
+ import { cloneElement as o, useRef as s } from "react";
6
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
7
  //#region ../components/src/tooltip/tooltip.tsx
8
8
  var u = t({
9
9
  initial: "hidden",
@@ -14,7 +14,7 @@ var u = t({
14
14
  });
15
15
  function d({ content: t, placement: d = "top", children: f, delay: p = 200 }) {
16
16
  a();
17
- let [m, h] = r(u), g = n("cascivo-tooltip"), _ = n("cascivo-anchor"), v = l(void 0), y = l(null), b = m.value === "visible", x = () => {
17
+ let [m, h] = r(u), g = n("cascivo-tooltip"), _ = n("cascivo-anchor"), v = s(void 0), y = s(null), b = m.value === "visible", x = () => {
18
18
  clearTimeout(v.current), v.current = setTimeout(() => h("SHOW"), p);
19
19
  }, S = () => {
20
20
  clearTimeout(v.current), h("HIDE");
@@ -39,9 +39,9 @@ function d({ content: t, placement: d = "top", children: f, delay: p = 200 }) {
39
39
  },
40
40
  "aria-describedby": b ? g : w["aria-describedby"]
41
41
  };
42
- return /* @__PURE__ */ s("span", {
42
+ return /* @__PURE__ */ l("span", {
43
43
  className: e.root,
44
- children: [c(C, T), /* @__PURE__ */ o("span", {
44
+ children: [o(C, T), /* @__PURE__ */ c("span", {
45
45
  ref: y,
46
46
  popover: "manual",
47
47
  role: "tooltip",
@@ -2,9 +2,9 @@
2
2
 
3
3
  import e from "./tree-view.module.js";
4
4
  import { cn as t, useControllableSignal as n, useSignal as r, useSignals as i } from "@cascivo/core";
5
- import { builtin as a, t as o } from "@cascivo/i18n";
6
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
7
- import { useRef as l } from "react";
5
+ import { useRef as a } from "react";
6
+ import { builtin as o, t as s } from "@cascivo/i18n";
7
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
8
8
  //#region ../components/src/tree-view/tree-view.tsx
9
9
  function u(e, t) {
10
10
  let n = [], r = (e, i, a) => {
@@ -24,17 +24,17 @@ function u(e, t) {
24
24
  function d(e) {
25
25
  return e === void 0 ? [] : Array.isArray(e) ? e : e === "" ? [] : [e];
26
26
  }
27
- function f({ items: a, selectionMode: o = "single", selected: c, defaultSelected: f, onSelectChange: h, expanded: g, defaultExpanded: _, onExpandedChange: v, className: y, "aria-label": b }) {
27
+ function f({ items: o, selectionMode: s = "single", selected: l, defaultSelected: f, onSelectChange: h, expanded: g, defaultExpanded: _, onExpandedChange: v, className: y, "aria-label": b }) {
28
28
  i();
29
29
  let [x, S] = n({
30
30
  value: g,
31
31
  defaultValue: _ ?? [],
32
32
  onChange: v
33
33
  }), [C, w] = n({
34
- value: c,
35
- defaultValue: f ?? (o === "multi" ? [] : ""),
34
+ value: l,
35
+ defaultValue: f ?? (s === "multi" ? [] : ""),
36
36
  onChange: h
37
- }), T = r(null), E = l(/* @__PURE__ */ new Map()), D = new Set(x.value), O = u(a, D), k = new Map(O.map((e, t) => [e.id, t])), A = d(C.value), j = new Set(A), M = T.value ?? A[0] ?? O[0]?.id ?? null, N = (e) => S([...e]), P = (e) => {
37
+ }), T = r(null), E = a(/* @__PURE__ */ new Map()), D = new Set(x.value), O = u(o, D), k = new Map(O.map((e, t) => [e.id, t])), A = d(C.value), j = new Set(A), M = T.value ?? A[0] ?? O[0]?.id ?? null, N = (e) => S([...e]), P = (e) => {
38
38
  if (D.has(e)) return;
39
39
  let t = new Set(D);
40
40
  t.add(e), N(t);
@@ -45,17 +45,17 @@ function f({ items: a, selectionMode: o = "single", selected: c, defaultSelected
45
45
  }, I = (e) => {
46
46
  T.value = e, E.current.get(e)?.focus();
47
47
  }, L = (e) => {
48
- if (o === "multi") {
48
+ if (s === "multi") {
49
49
  let t = new Set(j);
50
50
  t.has(e) ? t.delete(e) : t.add(e), w([...t]);
51
51
  } else w(e);
52
- }, R = l({
52
+ }, R = a({
53
53
  buffer: "",
54
54
  at: 0
55
55
  }), z = (e, t) => {
56
56
  let n = k.get(t.id);
57
57
  if (n === void 0) return;
58
- let { hasChildren: r, level: i, parentId: o, expanded: s } = O[n];
58
+ let { hasChildren: r, level: i, parentId: a, expanded: s } = O[n];
59
59
  switch (e.key) {
60
60
  case "ArrowDown": {
61
61
  e.preventDefault();
@@ -77,7 +77,7 @@ function f({ items: a, selectionMode: o = "single", selected: c, defaultSelected
77
77
  }
78
78
  break;
79
79
  case "ArrowLeft":
80
- e.preventDefault(), r && s ? F(t.id) : o && I(o);
80
+ e.preventDefault(), r && s ? F(t.id) : a && I(a);
81
81
  break;
82
82
  case "Home":
83
83
  e.preventDefault(), O[0] && I(O[0].id);
@@ -96,17 +96,17 @@ function f({ items: a, selectionMode: o = "single", selected: c, defaultSelected
96
96
  if (e.key.length === 1 && !e.metaKey && !e.ctrlKey && !e.altKey) {
97
97
  let t = R.current, r = Date.now();
98
98
  t.buffer = r - t.at > 500 ? e.key : t.buffer + e.key, t.at = r;
99
- let i = t.buffer.toLowerCase(), o = (e) => typeof e.label == "string" && e.label.toLowerCase().startsWith(i), s = p(a, D), c = [...O.slice(n + 1), ...O.slice(0, n + 1)].find((e) => {
99
+ let i = t.buffer.toLowerCase(), a = (e) => typeof e.label == "string" && e.label.toLowerCase().startsWith(i), s = p(o, D), c = [...O.slice(n + 1), ...O.slice(0, n + 1)].find((e) => {
100
100
  let t = s.get(e.id);
101
- return t ? o(t) : !1;
101
+ return t ? a(t) : !1;
102
102
  });
103
103
  c && I(c.id);
104
104
  }
105
105
  break;
106
106
  }
107
107
  }, B = (e, t, n, r) => {
108
- let i = !!e.children && e.children.length > 0, a = D.has(e.id), o = j.has(e.id), c = M === e.id, l = e.children?.length ?? 0;
109
- return /* @__PURE__ */ s(m, {
108
+ let i = !!e.children && e.children.length > 0, a = D.has(e.id), o = j.has(e.id), s = M === e.id, l = e.children?.length ?? 0;
109
+ return /* @__PURE__ */ c(m, {
110
110
  node: e,
111
111
  level: t,
112
112
  posInSet: n,
@@ -114,7 +114,7 @@ function f({ items: a, selectionMode: o = "single", selected: c, defaultSelected
114
114
  hasChildren: i,
115
115
  isExpanded: a,
116
116
  isSelected: o,
117
- isTabbable: c,
117
+ isTabbable: s,
118
118
  itemRefs: E,
119
119
  onFocusNode: () => T.value = e.id,
120
120
  onKeyDown: (t) => z(t, e),
@@ -124,11 +124,11 @@ function f({ items: a, selectionMode: o = "single", selected: c, defaultSelected
124
124
  children: i && e.children.map((e, n) => B(e, t + 1, n + 1, l))
125
125
  }, e.id);
126
126
  };
127
- return /* @__PURE__ */ s("ul", {
127
+ return /* @__PURE__ */ c("ul", {
128
128
  role: "tree",
129
129
  "aria-label": b,
130
130
  className: t(e.tree, y),
131
- children: a.map((e, t) => B(e, 1, t + 1, a.length))
131
+ children: o.map((e, t) => B(e, 1, t + 1, o.length))
132
132
  });
133
133
  }
134
134
  function p(e, t) {
@@ -137,16 +137,16 @@ function p(e, t) {
137
137
  };
138
138
  return r(e), n;
139
139
  }
140
- function m({ node: t, level: n, posInSet: r, setSize: i, hasChildren: a, isExpanded: o, isSelected: l, isTabbable: u, itemRefs: d, onFocusNode: f, onKeyDown: p, onActivate: m, children: h }) {
141
- return /* @__PURE__ */ c("li", {
140
+ function m({ node: t, level: n, posInSet: r, setSize: i, hasChildren: a, isExpanded: o, isSelected: s, isTabbable: u, itemRefs: d, onFocusNode: f, onKeyDown: p, onActivate: m, children: h }) {
141
+ return /* @__PURE__ */ l("li", {
142
142
  role: "treeitem",
143
143
  "aria-level": n,
144
144
  "aria-posinset": r,
145
145
  "aria-setsize": i,
146
- "aria-selected": l,
146
+ "aria-selected": s,
147
147
  "aria-expanded": a ? o : void 0,
148
148
  tabIndex: u ? 0 : -1,
149
- "data-selected": l || void 0,
149
+ "data-selected": s || void 0,
150
150
  "data-state": a ? o ? "open" : "closed" : void 0,
151
151
  style: { "--cascivo-tree-level": n },
152
152
  className: e.item,
@@ -160,31 +160,31 @@ function m({ node: t, level: n, posInSet: r, setSize: i, hasChildren: a, isExpan
160
160
  onClick: (e) => {
161
161
  e.stopPropagation(), m();
162
162
  },
163
- children: [/* @__PURE__ */ c("span", {
163
+ children: [/* @__PURE__ */ l("span", {
164
164
  className: e.row,
165
165
  children: [
166
- a ? /* @__PURE__ */ s("span", {
166
+ a ? /* @__PURE__ */ c("span", {
167
167
  className: e.twisty,
168
168
  "aria-hidden": "true",
169
169
  "data-state": o ? "open" : "closed"
170
- }) : /* @__PURE__ */ s("span", {
170
+ }) : /* @__PURE__ */ c("span", {
171
171
  className: e.twistySpacer,
172
172
  "aria-hidden": "true"
173
173
  }),
174
- t.icon && /* @__PURE__ */ s("span", {
174
+ t.icon && /* @__PURE__ */ c("span", {
175
175
  className: e.icon,
176
176
  "aria-hidden": "true",
177
177
  children: t.icon
178
178
  }),
179
- /* @__PURE__ */ s("span", {
179
+ /* @__PURE__ */ c("span", {
180
180
  className: e.label,
181
181
  children: t.label
182
182
  })
183
183
  ]
184
- }), a && /* @__PURE__ */ s("div", {
184
+ }), a && /* @__PURE__ */ c("div", {
185
185
  className: e.groupWrap,
186
186
  "data-state": o ? "open" : "closed",
187
- children: /* @__PURE__ */ s("ul", {
187
+ children: /* @__PURE__ */ c("ul", {
188
188
  role: "group",
189
189
  className: e.group,
190
190
  children: h
@@ -193,9 +193,9 @@ function m({ node: t, level: n, posInSet: r, setSize: i, hasChildren: a, isExpan
193
193
  });
194
194
  }
195
195
  var h = {
196
- loading: () => o(a.treeView.loading),
197
- expand: () => o(a.treeView.expand),
198
- collapse: () => o(a.treeView.collapse)
196
+ loading: () => s(o.treeView.loading),
197
+ expand: () => s(o.treeView.expand),
198
+ collapse: () => s(o.treeView.collapse)
199
199
  };
200
200
  //#endregion
201
201
  export { f as TreeView, h as treeViewMessages };
@@ -1 +1 @@
1
- @layer cascivo.component{._notification_10586_2{gap:var(--cascivo-space-3);padding:var(--cascivo-space-4);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);font-family:var(--cascivo-font-sans);color:var(--cascivo-color-text);opacity:1;transition:opacity var(--cascivo-motion-enter);display:flex}@starting-style{._notification_10586_2{opacity:0}}._notification_10586_2[data-state=closed]{opacity:0;transition:opacity var(--cascivo-motion-exit)}._notification_10586_2[data-variant=info]{border-color:color-mix(in oklch, var(--cascivo-color-info) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-info) 5%, var(--cascivo-color-bg))}._notification_10586_2[data-variant=success]{border-color:color-mix(in oklch, var(--cascivo-color-success) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-success) 5%, var(--cascivo-color-bg))}._notification_10586_2[data-variant=warning]{border-color:color-mix(in oklch, var(--cascivo-color-warning) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-warning) 5%, var(--cascivo-color-bg))}._notification_10586_2[data-variant=error]{border-color:color-mix(in oklch, var(--cascivo-color-destructive) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-destructive) 5%, var(--cascivo-color-bg))}._icon_10586_58{flex-shrink:0;align-items:center;margin-block-start:.125rem;line-height:1;display:flex}._notification_10586_2[data-variant=info] ._icon_10586_58{color:var(--cascivo-color-info)}._notification_10586_2[data-variant=success] ._icon_10586_58{color:var(--cascivo-color-success)}._notification_10586_2[data-variant=warning] ._icon_10586_58{color:var(--cascivo-color-warning)}._notification_10586_2[data-variant=error] ._icon_10586_58{color:var(--cascivo-color-destructive)}._body_10586_79{gap:var(--cascivo-space-1);flex-direction:column;flex:1;min-inline-size:0;display:flex}._title_10586_87{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-semibold);line-height:var(--cascivo-leading-snug)}._description_10586_93{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle);line-height:var(--cascivo-leading-normal)}._actions_10586_99{gap:var(--cascivo-space-2);flex-wrap:wrap;margin-block-start:var(--cascivo-space-2);display:flex}._dismiss_10586_106{block-size:1.5rem;inline-size:1.5rem;font-size:var(--cascivo-text-xs);color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);cursor:pointer;transition:color var(--cascivo-duration-150) var(--cascivo-ease-out), background-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}._dismiss_10586_106:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._dismiss_10586_106:focus-visible{box-shadow:var(--cascivo-focus-ring);outline:none}}@media (forced-colors:active){._notification_10586_2{border:1px solid canvastext}._notification_10586_2[data-variant=info],._notification_10586_2[data-variant=success],._notification_10586_2[data-variant=warning],._notification_10586_2[data-variant=error]{border-width:2px}._dismiss_10586_106:focus-visible{outline-offset:2px;outline:2px solid highlight}}@media (prefers-contrast:more){._notification_10586_2{border-width:2px}}
1
+ @layer cascivo.component{._notification_imxvx_2{gap:var(--cascivo-space-3);padding:var(--cascivo-space-4);border:1px solid var(--cascivo-color-border);border-radius:var(--cascivo-radius-surface);background-color:var(--cascivo-color-surface);font-family:var(--cascivo-font-sans);color:var(--cascivo-color-text);opacity:1;transition:opacity var(--cascivo-motion-enter);display:flex}@starting-style{._notification_imxvx_2{opacity:0}}._notification_imxvx_2[data-state=closed]{opacity:0;transition:opacity var(--cascivo-motion-exit)}._notification_imxvx_2[data-variant=neutral]{border-color:var(--cascivo-color-border);background:var(--cascivo-color-bg)}._notification_imxvx_2[data-variant=info]{border-color:color-mix(in oklch, var(--cascivo-color-info) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-info) 5%, var(--cascivo-color-bg))}._notification_imxvx_2[data-variant=success]{border-color:color-mix(in oklch, var(--cascivo-color-success) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-success) 5%, var(--cascivo-color-bg))}._notification_imxvx_2[data-variant=warning]{border-color:color-mix(in oklch, var(--cascivo-color-warning) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-warning) 5%, var(--cascivo-color-bg))}._notification_imxvx_2[data-variant=error]{border-color:color-mix(in oklch, var(--cascivo-color-destructive) 35%, var(--cascivo-color-border));background:color-mix(in oklch, var(--cascivo-color-destructive) 5%, var(--cascivo-color-bg))}._icon_imxvx_65{flex-shrink:0;align-items:center;margin-block-start:.125rem;line-height:1;display:flex}._notification_imxvx_2[data-variant=info] ._icon_imxvx_65{color:var(--cascivo-color-info)}._notification_imxvx_2[data-variant=success] ._icon_imxvx_65{color:var(--cascivo-color-success)}._notification_imxvx_2[data-variant=warning] ._icon_imxvx_65{color:var(--cascivo-color-warning)}._notification_imxvx_2[data-variant=error] ._icon_imxvx_65{color:var(--cascivo-color-destructive)}._body_imxvx_86{gap:var(--cascivo-space-1);flex-direction:column;flex:1;min-inline-size:0;display:flex}._title_imxvx_94{font-size:var(--cascivo-text-sm);font-weight:var(--cascivo-font-semibold);line-height:var(--cascivo-leading-snug)}._description_imxvx_100{font-size:var(--cascivo-text-sm);color:var(--cascivo-color-text-subtle);line-height:var(--cascivo-leading-normal)}._actions_imxvx_106{gap:var(--cascivo-space-2);flex-wrap:wrap;margin-block-start:var(--cascivo-space-2);display:flex}._dismiss_imxvx_113{block-size:1.5rem;inline-size:1.5rem;font-size:var(--cascivo-text-xs);color:var(--cascivo-color-text-muted);border-radius:var(--cascivo-radius-control);cursor:pointer;transition:color var(--cascivo-duration-150) var(--cascivo-ease-out), background-color var(--cascivo-duration-150) var(--cascivo-ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}._dismiss_imxvx_113:hover{color:var(--cascivo-color-text);background-color:var(--cascivo-color-bg-subtle)}._dismiss_imxvx_113:focus-visible{box-shadow:var(--cascivo-focus-ring);outline:none}}@media (forced-colors:active){._notification_imxvx_2{border:1px solid canvastext}._notification_imxvx_2[data-variant=info],._notification_imxvx_2[data-variant=success],._notification_imxvx_2[data-variant=warning],._notification_imxvx_2[data-variant=error]{border-width:2px}._dismiss_imxvx_113:focus-visible{outline-offset:2px;outline:2px solid highlight}}@media (prefers-contrast:more){._notification_imxvx_2{border-width:2px}}