@bzync/rui 0.0.3

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 (263) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +115 -0
  3. package/dist/autocomplete-CaysJRpk.cjs +1 -0
  4. package/dist/autocomplete-CfbfpcO4.js +453 -0
  5. package/dist/calendar-Bnld4G59.cjs +1 -0
  6. package/dist/calendar-CdICOROs.js +573 -0
  7. package/dist/charts-CxEy2c3M.js +1248 -0
  8. package/dist/charts-UDqS1BH1.cjs +1 -0
  9. package/dist/cn-BdjraxxU.cjs +1 -0
  10. package/dist/cn-DpgY2leY.js +1736 -0
  11. package/dist/component-styles-Ce56hn9T.js +16 -0
  12. package/dist/component-styles-TkZ7v6Ef.cjs +1 -0
  13. package/dist/components/accordion.cjs +1 -0
  14. package/dist/components/accordion.d.ts +22 -0
  15. package/dist/components/accordion.js +122 -0
  16. package/dist/components/alert.cjs +1 -0
  17. package/dist/components/alert.d.ts +13 -0
  18. package/dist/components/alert.js +165 -0
  19. package/dist/components/auth-backdrop.cjs +1 -0
  20. package/dist/components/auth-backdrop.d.ts +7 -0
  21. package/dist/components/auth-backdrop.js +10 -0
  22. package/dist/components/autocomplete/dropdown.d.ts +21 -0
  23. package/dist/components/autocomplete/icons.d.ts +8 -0
  24. package/dist/components/autocomplete/multi-trigger.d.ts +25 -0
  25. package/dist/components/autocomplete/single-trigger.d.ts +21 -0
  26. package/dist/components/autocomplete/types.d.ts +34 -0
  27. package/dist/components/autocomplete.cjs +1 -0
  28. package/dist/components/autocomplete.d.ts +5 -0
  29. package/dist/components/autocomplete.js +3 -0
  30. package/dist/components/avatar.cjs +1 -0
  31. package/dist/components/avatar.d.ts +17 -0
  32. package/dist/components/avatar.js +56 -0
  33. package/dist/components/badge.cjs +1 -0
  34. package/dist/components/badge.d.ts +12 -0
  35. package/dist/components/badge.js +32 -0
  36. package/dist/components/billing-interval-toggle.cjs +1 -0
  37. package/dist/components/billing-interval-toggle.d.ts +18 -0
  38. package/dist/components/billing-interval-toggle.js +39 -0
  39. package/dist/components/breadcrumb.cjs +1 -0
  40. package/dist/components/breadcrumb.d.ts +11 -0
  41. package/dist/components/breadcrumb.js +52 -0
  42. package/dist/components/button.cjs +1 -0
  43. package/dist/components/button.d.ts +17 -0
  44. package/dist/components/button.js +90 -0
  45. package/dist/components/calendar/month-view.d.ts +17 -0
  46. package/dist/components/calendar/types.d.ts +54 -0
  47. package/dist/components/calendar/week-view.d.ts +17 -0
  48. package/dist/components/calendar.cjs +1 -0
  49. package/dist/components/calendar.d.ts +3 -0
  50. package/dist/components/calendar.js +3 -0
  51. package/dist/components/callout.cjs +1 -0
  52. package/dist/components/callout.d.ts +9 -0
  53. package/dist/components/callout.js +131 -0
  54. package/dist/components/card.cjs +1 -0
  55. package/dist/components/card.d.ts +17 -0
  56. package/dist/components/card.js +59 -0
  57. package/dist/components/charts/bar-chart.d.ts +16 -0
  58. package/dist/components/charts/donut-chart.d.ts +10 -0
  59. package/dist/components/charts/funnel-chart.d.ts +8 -0
  60. package/dist/components/charts/gantt-chart.d.ts +15 -0
  61. package/dist/components/charts/heatmap-chart.d.ts +10 -0
  62. package/dist/components/charts/index.d.ts +11 -0
  63. package/dist/components/charts/line-chart.d.ts +16 -0
  64. package/dist/components/charts/multi-line-chart.d.ts +18 -0
  65. package/dist/components/charts/radar-chart.d.ts +13 -0
  66. package/dist/components/charts/scatter-chart.d.ts +24 -0
  67. package/dist/components/charts/shared.d.ts +15 -0
  68. package/dist/components/charts/waterfall-chart.d.ts +14 -0
  69. package/dist/components/charts.cjs +1 -0
  70. package/dist/components/charts.d.ts +2 -0
  71. package/dist/components/charts.js +2 -0
  72. package/dist/components/checkbox.cjs +1 -0
  73. package/dist/components/checkbox.d.ts +9 -0
  74. package/dist/components/checkbox.js +135 -0
  75. package/dist/components/code.cjs +7 -0
  76. package/dist/components/code.d.ts +23 -0
  77. package/dist/components/code.js +276 -0
  78. package/dist/components/command.cjs +1 -0
  79. package/dist/components/command.d.ts +29 -0
  80. package/dist/components/command.js +208 -0
  81. package/dist/components/confirm-dialog.cjs +1 -0
  82. package/dist/components/confirm-dialog.d.ts +14 -0
  83. package/dist/components/confirm-dialog.js +69 -0
  84. package/dist/components/copy-button.cjs +1 -0
  85. package/dist/components/copy-button.d.ts +8 -0
  86. package/dist/components/copy-button.js +87 -0
  87. package/dist/components/datatable/pagination-footer.d.ts +10 -0
  88. package/dist/components/datatable/rows-dropdown.d.ts +5 -0
  89. package/dist/components/datatable/skeleton-row.d.ts +3 -0
  90. package/dist/components/datatable/sort-icon.d.ts +4 -0
  91. package/dist/components/datatable/types.d.ts +30 -0
  92. package/dist/components/datatable.cjs +1 -0
  93. package/dist/components/datatable.d.ts +9 -0
  94. package/dist/components/datatable.js +3 -0
  95. package/dist/components/datepicker.cjs +1 -0
  96. package/dist/components/datepicker.d.ts +14 -0
  97. package/dist/components/datepicker.js +267 -0
  98. package/dist/components/drawer.cjs +1 -0
  99. package/dist/components/drawer.d.ts +18 -0
  100. package/dist/components/drawer.js +3 -0
  101. package/dist/components/dropdown-menu.cjs +1 -0
  102. package/dist/components/dropdown-menu.d.ts +26 -0
  103. package/dist/components/dropdown-menu.js +122 -0
  104. package/dist/components/empty-state.cjs +1 -0
  105. package/dist/components/empty-state.d.ts +10 -0
  106. package/dist/components/empty-state.js +68 -0
  107. package/dist/components/error-state.cjs +1 -0
  108. package/dist/components/error-state.d.ts +10 -0
  109. package/dist/components/error-state.js +80 -0
  110. package/dist/components/file-upload.cjs +1 -0
  111. package/dist/components/file-upload.d.ts +10 -0
  112. package/dist/components/file-upload.js +173 -0
  113. package/dist/components/form-field.cjs +1 -0
  114. package/dist/components/form-field.d.ts +10 -0
  115. package/dist/components/form-field.js +36 -0
  116. package/dist/components/info-button.cjs +1 -0
  117. package/dist/components/info-button.d.ts +4 -0
  118. package/dist/components/info-button.js +32 -0
  119. package/dist/components/input.cjs +1 -0
  120. package/dist/components/input.d.ts +19 -0
  121. package/dist/components/input.js +117 -0
  122. package/dist/components/kbd.cjs +1 -0
  123. package/dist/components/kbd.d.ts +6 -0
  124. package/dist/components/kbd.js +16 -0
  125. package/dist/components/label.cjs +1 -0
  126. package/dist/components/label.d.ts +6 -0
  127. package/dist/components/label.js +31 -0
  128. package/dist/components/layout.cjs +1 -0
  129. package/dist/components/layout.d.ts +51 -0
  130. package/dist/components/layout.js +117 -0
  131. package/dist/components/link.cjs +1 -0
  132. package/dist/components/link.d.ts +9 -0
  133. package/dist/components/link.js +48 -0
  134. package/dist/components/list.cjs +1 -0
  135. package/dist/components/list.d.ts +13 -0
  136. package/dist/components/list.js +46 -0
  137. package/dist/components/modal.cjs +1 -0
  138. package/dist/components/modal.d.ts +31 -0
  139. package/dist/components/modal.js +219 -0
  140. package/dist/components/navigation.cjs +1 -0
  141. package/dist/components/navigation.d.ts +42 -0
  142. package/dist/components/navigation.js +127 -0
  143. package/dist/components/number-input.cjs +1 -0
  144. package/dist/components/number-input.d.ts +16 -0
  145. package/dist/components/number-input.js +142 -0
  146. package/dist/components/otp-input.cjs +1 -0
  147. package/dist/components/otp-input.d.ts +13 -0
  148. package/dist/components/otp-input.js +71 -0
  149. package/dist/components/pagination.cjs +1 -0
  150. package/dist/components/pagination.d.ts +8 -0
  151. package/dist/components/pagination.js +77 -0
  152. package/dist/components/popover.cjs +1 -0
  153. package/dist/components/popover.d.ts +16 -0
  154. package/dist/components/popover.js +115 -0
  155. package/dist/components/progressbar.cjs +1 -0
  156. package/dist/components/progressbar.d.ts +15 -0
  157. package/dist/components/progressbar.js +108 -0
  158. package/dist/components/radio.cjs +1 -0
  159. package/dist/components/radio.d.ts +22 -0
  160. package/dist/components/radio.js +96 -0
  161. package/dist/components/richtext.cjs +1 -0
  162. package/dist/components/richtext.d.ts +10 -0
  163. package/dist/components/richtext.js +370 -0
  164. package/dist/components/select/option-list.d.ts +16 -0
  165. package/dist/components/select/select-multi.d.ts +2 -0
  166. package/dist/components/select/select-single.d.ts +2 -0
  167. package/dist/components/select/types.d.ts +54 -0
  168. package/dist/components/select/utils.d.ts +10 -0
  169. package/dist/components/select.cjs +1 -0
  170. package/dist/components/select.d.ts +3 -0
  171. package/dist/components/select.js +2 -0
  172. package/dist/components/seo.cjs +1 -0
  173. package/dist/components/seo.d.ts +45 -0
  174. package/dist/components/seo.js +64 -0
  175. package/dist/components/separator.cjs +1 -0
  176. package/dist/components/separator.d.ts +6 -0
  177. package/dist/components/separator.js +25 -0
  178. package/dist/components/skeleton.cjs +1 -0
  179. package/dist/components/skeleton.d.ts +37 -0
  180. package/dist/components/skeleton.js +146 -0
  181. package/dist/components/slider.cjs +1 -0
  182. package/dist/components/slider.d.ts +12 -0
  183. package/dist/components/slider.js +72 -0
  184. package/dist/components/snackbar.cjs +1 -0
  185. package/dist/components/snackbar.d.ts +35 -0
  186. package/dist/components/snackbar.js +220 -0
  187. package/dist/components/spinner.cjs +1 -0
  188. package/dist/components/spinner.d.ts +7 -0
  189. package/dist/components/spinner.js +31 -0
  190. package/dist/components/stat.cjs +1 -0
  191. package/dist/components/stat.d.ts +18 -0
  192. package/dist/components/stat.js +90 -0
  193. package/dist/components/status-dot.cjs +1 -0
  194. package/dist/components/status-dot.d.ts +10 -0
  195. package/dist/components/status-dot.js +29 -0
  196. package/dist/components/stepper.cjs +1 -0
  197. package/dist/components/stepper.d.ts +11 -0
  198. package/dist/components/stepper.js +67 -0
  199. package/dist/components/switch.cjs +1 -0
  200. package/dist/components/switch.d.ts +8 -0
  201. package/dist/components/switch.js +79 -0
  202. package/dist/components/table.cjs +1 -0
  203. package/dist/components/table.d.ts +12 -0
  204. package/dist/components/table.js +54 -0
  205. package/dist/components/tabs.cjs +1 -0
  206. package/dist/components/tabs.d.ts +22 -0
  207. package/dist/components/tabs.js +120 -0
  208. package/dist/components/tag.cjs +1 -0
  209. package/dist/components/tag.d.ts +12 -0
  210. package/dist/components/tag.js +58 -0
  211. package/dist/components/terminal/fs.d.ts +10 -0
  212. package/dist/components/terminal/shell-commands-sim.d.ts +5 -0
  213. package/dist/components/terminal/shell-commands.d.ts +16 -0
  214. package/dist/components/terminal/shell-run.d.ts +11 -0
  215. package/dist/components/terminal/terminal-block.d.ts +13 -0
  216. package/dist/components/terminal/terminal-emulator.d.ts +10 -0
  217. package/dist/components/terminal/types.d.ts +35 -0
  218. package/dist/components/terminal.cjs +1 -0
  219. package/dist/components/terminal.d.ts +2 -0
  220. package/dist/components/terminal.js +2 -0
  221. package/dist/components/textarea.cjs +1 -0
  222. package/dist/components/textarea.d.ts +13 -0
  223. package/dist/components/textarea.js +54 -0
  224. package/dist/components/theme-provider.cjs +1 -0
  225. package/dist/components/theme-provider.d.ts +89 -0
  226. package/dist/components/theme-provider.js +93 -0
  227. package/dist/components/theme-toggle.cjs +1 -0
  228. package/dist/components/theme-toggle.d.ts +9 -0
  229. package/dist/components/theme-toggle.js +4 -0
  230. package/dist/components/timeline.cjs +1 -0
  231. package/dist/components/timeline.d.ts +14 -0
  232. package/dist/components/timeline.js +54 -0
  233. package/dist/components/tooltip.cjs +1 -0
  234. package/dist/components/tooltip.d.ts +11 -0
  235. package/dist/components/tooltip.js +84 -0
  236. package/dist/components/tree.cjs +1 -0
  237. package/dist/components/tree.d.ts +16 -0
  238. package/dist/components/tree.js +92 -0
  239. package/dist/createLucideIcon-DDY8HuQR.js +42 -0
  240. package/dist/createLucideIcon-b_X_3fj-.cjs +1 -0
  241. package/dist/datatable-BB3v__r5.cjs +1 -0
  242. package/dist/datatable-DlBhUhuO.js +316 -0
  243. package/dist/drawer-Cbuh6qdL.cjs +1 -0
  244. package/dist/drawer-CqkVZT9Y.js +189 -0
  245. package/dist/focus-Dk1YWVPN.js +42 -0
  246. package/dist/focus-DmG6Ge7X.cjs +1 -0
  247. package/dist/index.cjs +1 -0
  248. package/dist/index.d.ts +70 -0
  249. package/dist/index.js +215 -0
  250. package/dist/lib/cn.d.ts +2 -0
  251. package/dist/lib/component-styles.d.ts +10 -0
  252. package/dist/select-Ch5fp1GT.js +461 -0
  253. package/dist/select-q0YCMhBP.cjs +1 -0
  254. package/dist/styles.css +3 -0
  255. package/dist/terminal-BOR2cFi1.js +1060 -0
  256. package/dist/terminal-CpraMs50.cjs +77 -0
  257. package/dist/theme-toggle-CnoiorKV.js +71 -0
  258. package/dist/theme-toggle-Dp1-24zH.cjs +1 -0
  259. package/dist/use-event-callback-DGkfO_uu.js +10 -0
  260. package/dist/use-event-callback-Du9_9eAi.cjs +1 -0
  261. package/dist/utils-CQ8pvCtk.js +72 -0
  262. package/dist/utils-DOFJTw8o.cjs +1 -0
  263. package/package.json +88 -0
@@ -0,0 +1,189 @@
1
+ import { t as e } from "./cn-DpgY2leY.js";
2
+ import { c as t } from "./component-styles-Ce56hn9T.js";
3
+ import { t as n } from "./use-event-callback-DGkfO_uu.js";
4
+ import { t as r } from "./focus-Dk1YWVPN.js";
5
+ import { t as i } from "./createLucideIcon-DDY8HuQR.js";
6
+ import { AnimatePresence as a, motion as o } from "framer-motion";
7
+ import { useEffect as s, useId as c, useRef as l } from "react";
8
+ import { Fragment as u, jsx as d, jsxs as f } from "react/jsx-runtime";
9
+ import { createPortal as p } from "react-dom";
10
+ var m = i("x", [["path", {
11
+ d: "M18 6 6 18",
12
+ key: "1bl5f8"
13
+ }], ["path", {
14
+ d: "m6 6 12 12",
15
+ key: "d8bk6v"
16
+ }]]);
17
+ //#endregion
18
+ //#region src/components/drawer.tsx
19
+ function h({ open: i, onClose: h, position: g = "left", title: _, children: v, width: y = 320, className: b, overlayClassName: x, panelClassName: S, unstyled: C = !1, ariaLabel: w = "Drawer", closeAriaLabel: T = "Close drawer", closeOnEscape: E = !0, closeOnOverlayClick: D = !0 }) {
20
+ let O = n(h), k = l(null), A = l(null), j = l(i), M = c();
21
+ i && !j.current && typeof document < "u" && document.activeElement instanceof HTMLElement && (A.current = document.activeElement), j.current = i, s(() => {
22
+ if (i) return;
23
+ let e = (e) => {
24
+ e.target instanceof HTMLElement && (A.current = e.target);
25
+ };
26
+ return !A.current && document.activeElement instanceof HTMLElement && (A.current = document.activeElement), document.addEventListener("focusin", e), () => document.removeEventListener("focusin", e);
27
+ }, [i]), s(() => {
28
+ if (!i) return;
29
+ !A.current && document.activeElement instanceof HTMLElement && (A.current = document.activeElement);
30
+ let e = document.body.style.overflow, t = (e) => {
31
+ if (e.key === "Escape" && E) {
32
+ e.preventDefault(), O();
33
+ return;
34
+ }
35
+ if (e.key === "Tab" && k.current) {
36
+ let t = r(k.current);
37
+ if (t.length === 0) {
38
+ e.preventDefault(), k.current.focus();
39
+ return;
40
+ }
41
+ let n = t[0], i = t[t.length - 1];
42
+ e.shiftKey && document.activeElement === n ? (e.preventDefault(), i.focus()) : !e.shiftKey && document.activeElement === i && (e.preventDefault(), n.focus());
43
+ }
44
+ };
45
+ document.addEventListener("keydown", t), document.body.style.overflow = "hidden";
46
+ let n = window.setTimeout(() => {
47
+ (k.current?.querySelector("a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),[tabindex]:not([tabindex=\"-1\"])") ?? k.current)?.focus();
48
+ }, 0);
49
+ return () => {
50
+ clearTimeout(n), document.removeEventListener("keydown", t), document.body.style.overflow = e;
51
+ };
52
+ }, [
53
+ E,
54
+ i,
55
+ O
56
+ ]), s(() => {
57
+ if (i || !A.current) return;
58
+ let e = A.current, t = window.setTimeout(() => e.focus(), 240);
59
+ return () => window.clearTimeout(t);
60
+ }, [i]);
61
+ let N = () => {
62
+ let e = A.current;
63
+ A.current = null, window.setTimeout(() => e?.focus(), 0);
64
+ };
65
+ if (typeof document > "u") return null;
66
+ if (C && i) return p(/* @__PURE__ */ d("div", {
67
+ ref: k,
68
+ tabIndex: -1,
69
+ role: "dialog",
70
+ "aria-modal": "true",
71
+ "aria-label": typeof _ == "string" ? _ : w,
72
+ className: e(b, S),
73
+ children: v
74
+ }), document.body);
75
+ if (g === "bottom") return p(/* @__PURE__ */ d(a, {
76
+ onExitComplete: N,
77
+ children: i && /* @__PURE__ */ f(u, { children: [/* @__PURE__ */ d(o.div, {
78
+ initial: { opacity: 0 },
79
+ animate: { opacity: 1 },
80
+ exit: { opacity: 0 },
81
+ transition: { duration: .16 },
82
+ className: e("fixed inset-0 z-[100] bg-overlay", x),
83
+ onClick: D ? O : void 0
84
+ }, "drawer-backdrop"), /* @__PURE__ */ f(o.div, {
85
+ ref: k,
86
+ tabIndex: -1,
87
+ initial: { y: "100%" },
88
+ animate: { y: 0 },
89
+ exit: { y: "100%" },
90
+ transition: {
91
+ duration: .22,
92
+ ease: [
93
+ .16,
94
+ 1,
95
+ .3,
96
+ 1
97
+ ]
98
+ },
99
+ role: "dialog",
100
+ "aria-modal": "true",
101
+ "aria-labelledby": _ ? M : void 0,
102
+ "aria-label": _ ? void 0 : w,
103
+ className: e("fixed bottom-0 left-0 right-0 z-[101] flex max-h-[80dvh] flex-col rounded-t-[var(--radius-xl)] border-t border-border bg-surface-raised shadow-overlay", S, b),
104
+ children: [
105
+ /* @__PURE__ */ d("div", {
106
+ className: "flex justify-center pb-1 pt-3 shrink-0",
107
+ "aria-hidden": "true",
108
+ children: /* @__PURE__ */ d("div", { className: "h-1 w-9 rounded-full bg-border-strong" })
109
+ }),
110
+ _ && /* @__PURE__ */ f("div", {
111
+ className: "flex items-center justify-between border-b border-border px-5 py-3 shrink-0",
112
+ children: [/* @__PURE__ */ d("h2", {
113
+ id: M,
114
+ className: "text-sm font-semibold text-foreground",
115
+ children: _
116
+ }), /* @__PURE__ */ d("button", {
117
+ type: "button",
118
+ onClick: O,
119
+ className: t,
120
+ "aria-label": T,
121
+ children: /* @__PURE__ */ d(m, {
122
+ size: 14,
123
+ "aria-hidden": "true"
124
+ })
125
+ })]
126
+ }),
127
+ /* @__PURE__ */ d("div", {
128
+ className: "flex-1 overflow-y-auto pb-safe-bottom",
129
+ children: v
130
+ })
131
+ ]
132
+ }, "drawer-panel")] })
133
+ }), document.body);
134
+ let P = g === "left" ? "-100%" : "100%";
135
+ return p(/* @__PURE__ */ d(a, {
136
+ onExitComplete: N,
137
+ children: i && /* @__PURE__ */ f(u, { children: [/* @__PURE__ */ d(o.div, {
138
+ initial: { opacity: 0 },
139
+ animate: { opacity: 1 },
140
+ exit: { opacity: 0 },
141
+ transition: { duration: .16 },
142
+ className: e("fixed inset-0 z-[100] bg-overlay", x),
143
+ onClick: D ? O : void 0
144
+ }, "drawer-backdrop"), /* @__PURE__ */ f(o.div, {
145
+ ref: k,
146
+ tabIndex: -1,
147
+ initial: { x: P },
148
+ animate: { x: 0 },
149
+ exit: { x: P },
150
+ transition: {
151
+ duration: .22,
152
+ ease: [
153
+ .16,
154
+ 1,
155
+ .3,
156
+ 1
157
+ ]
158
+ },
159
+ role: "dialog",
160
+ "aria-modal": "true",
161
+ "aria-labelledby": _ ? M : void 0,
162
+ "aria-label": _ ? void 0 : w,
163
+ className: e("fixed top-0 bottom-0 z-[101] flex max-w-[100vw] flex-col bg-surface-raised shadow-overlay", g === "left" ? "left-0 border-r border-border" : "right-0 border-l border-border", S, b),
164
+ style: { width: y },
165
+ children: [_ && /* @__PURE__ */ f("div", {
166
+ className: "flex h-14 items-center justify-between gap-3 border-b border-border px-5 shrink-0",
167
+ children: [/* @__PURE__ */ d("h2", {
168
+ id: M,
169
+ className: "min-w-0 truncate text-sm font-semibold text-foreground",
170
+ children: _
171
+ }), /* @__PURE__ */ d("button", {
172
+ type: "button",
173
+ onClick: O,
174
+ className: t,
175
+ "aria-label": T,
176
+ children: /* @__PURE__ */ d(m, {
177
+ size: 14,
178
+ "aria-hidden": "true"
179
+ })
180
+ })]
181
+ }), /* @__PURE__ */ d("div", {
182
+ className: "flex-1 overflow-y-auto",
183
+ children: v
184
+ })]
185
+ }, "drawer-panel")] })
186
+ }), document.body);
187
+ }
188
+ //#endregion
189
+ export { h as t };
@@ -0,0 +1,42 @@
1
+ //#region src/constants/index.ts
2
+ var e = [
3
+ "a[href]",
4
+ "button:not([disabled])",
5
+ "input:not([disabled])",
6
+ "select:not([disabled])",
7
+ "textarea:not([disabled])",
8
+ "[tabindex]:not([tabindex=\"-1\"])"
9
+ ].join(","), t = {
10
+ Escape: "Escape",
11
+ Enter: "Enter",
12
+ Space: " ",
13
+ ArrowUp: "ArrowUp",
14
+ ArrowDown: "ArrowDown",
15
+ ArrowLeft: "ArrowLeft",
16
+ ArrowRight: "ArrowRight",
17
+ Home: "Home",
18
+ End: "End",
19
+ Tab: "Tab"
20
+ }, n = {
21
+ instant: 0,
22
+ fast: 120,
23
+ normal: 200,
24
+ slow: 320
25
+ };
26
+ //#endregion
27
+ //#region src/utils/focus.ts
28
+ function r(t) {
29
+ return Array.from(t.querySelectorAll(e)).filter((e) => !e.hidden && e.getAttribute("aria-hidden") !== "true");
30
+ }
31
+ function i(e, t) {
32
+ if (t.key !== "Tab") return;
33
+ let n = r(e);
34
+ if (n.length === 0) {
35
+ t.preventDefault(), e.focus();
36
+ return;
37
+ }
38
+ let i = n[0], a = n[n.length - 1];
39
+ t.shiftKey && document.activeElement === i ? (t.preventDefault(), a.focus()) : !t.shiftKey && document.activeElement === a && (t.preventDefault(), i.focus());
40
+ }
41
+ //#endregion
42
+ export { t as a, e as i, i as n, n as r, r as t };
@@ -0,0 +1 @@
1
+ var e=[`a[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`,`),t={Escape:`Escape`,Enter:`Enter`,Space:` `,ArrowUp:`ArrowUp`,ArrowDown:`ArrowDown`,ArrowLeft:`ArrowLeft`,ArrowRight:`ArrowRight`,Home:`Home`,End:`End`,Tab:`Tab`},n={instant:0,fast:120,normal:200,slow:320};function r(t){return Array.from(t.querySelectorAll(e)).filter(e=>!e.hidden&&e.getAttribute(`aria-hidden`)!==`true`)}function i(e,t){if(t.key!==`Tab`)return;let n=r(e);if(n.length===0){t.preventDefault(),e.focus();return}let i=n[0],a=n[n.length-1];t.shiftKey&&document.activeElement===i?(t.preventDefault(),a.focus()):!t.shiftKey&&document.activeElement===a&&(t.preventDefault(),i.focus())}Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return t}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return e}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return r}});
package/dist/index.cjs ADDED
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./cn-BdjraxxU.cjs"),t=require("./components/accordion.cjs"),n=require("./calendar-Bnld4G59.cjs"),r=require("./components/alert.cjs"),i=require("./components/auth-backdrop.cjs"),a=require("./autocomplete-CaysJRpk.cjs"),o=require("./use-event-callback-Du9_9eAi.cjs"),s=require("./components/avatar.cjs"),c=require("./components/badge.cjs"),l=require("./components/billing-interval-toggle.cjs"),u=require("./components/breadcrumb.cjs"),d=require("./components/button.cjs"),f=require("./components/callout.cjs"),p=require("./components/card.cjs"),m=require("./charts-UDqS1BH1.cjs"),h=require("./components/checkbox.cjs"),g=require("./components/code.cjs"),_=require("./focus-DmG6Ge7X.cjs"),v=require("./components/command.cjs"),y=require("./components/modal.cjs"),b=require("./components/confirm-dialog.cjs"),x=require("./components/copy-button.cjs"),ee=require("./datatable-BB3v__r5.cjs"),te=require("./components/datepicker.cjs"),ne=require("./theme-toggle-Dp1-24zH.cjs"),re=require("./drawer-Cbuh6qdL.cjs"),ie=require("./components/dropdown-menu.cjs"),ae=require("./components/empty-state.cjs"),oe=require("./components/error-state.cjs"),se=require("./components/file-upload.cjs"),S=require("./components/form-field.cjs"),C=require("./components/input.cjs"),w=require("./components/info-button.cjs"),T=require("./components/kbd.cjs"),E=require("./components/label.cjs"),D=require("./components/link.cjs"),O=require("./components/list.cjs"),k=require("./components/layout.cjs"),A=require("./components/navigation.cjs"),j=require("./components/number-input.cjs"),M=require("./components/otp-input.cjs"),N=require("./components/pagination.cjs"),P=require("./components/popover.cjs"),F=require("./components/progressbar.cjs"),I=require("./components/radio.cjs"),L=require("./components/richtext.cjs"),R=require("./select-q0YCMhBP.cjs"),z=require("./components/separator.cjs"),B=require("./components/skeleton.cjs"),V=require("./components/slider.cjs"),H=require("./components/snackbar.cjs"),U=require("./components/spinner.cjs"),W=require("./components/stat.cjs"),G=require("./components/status-dot.cjs"),ce=require("./components/stepper.cjs"),le=require("./components/switch.cjs"),K=require("./components/table.cjs"),q=require("./components/tabs.cjs"),ue=require("./components/tag.cjs"),J=require("./terminal-CpraMs50.cjs"),de=require("./components/textarea.cjs"),fe=require("./components/timeline.cjs"),pe=require("./components/tooltip.cjs"),Y=require("./components/theme-provider.cjs"),me=require("./components/tree.cjs"),X=require("./components/seo.cjs");let Z=require("react"),Q=require("react/jsx-runtime");function he(){let e=(0,Z.useRef)(!1);return(0,Z.useEffect)(()=>(e.current=!0,()=>{e.current=!1}),[]),(0,Z.useCallback)(()=>e.current,[])}var ge=typeof window<`u`?Z.useLayoutEffect:Z.useEffect;function _e(e){let t=(0,Z.useRef)(void 0);return(0,Z.useEffect)(()=>{t.current=e},[e]),t.current}function ve(e,t){let n=(0,Z.useRef)(!1);(0,Z.useEffect)(()=>{if(!n.current){n.current=!0;return}return e()},t)}function ye({value:e,defaultValue:t,onChange:n}){let[r,i]=(0,Z.useState)(t),a=e!==void 0;return[a?e:r,(0,Z.useCallback)(e=>{a||i(e),n?.(e)},[a,n])]}function be(e){let[t,n]=(0,Z.useState)(()=>typeof window>`u`||window.matchMedia===void 0?!1:window.matchMedia(e).matches);return(0,Z.useEffect)(()=>{let t=window.matchMedia(e),r=()=>n(t.matches);return t.addEventListener?t.addEventListener(`change`,r):t.addListener(r),()=>{t.removeEventListener?t.removeEventListener(`change`,r):t.removeListener(r)}},[e]),t}function $(e=[]){let t=(0,Z.useRef)(null);return t.current===null&&(t.current=new AbortController),(0,Z.useEffect)(()=>{let e=new AbortController;return t.current=e,()=>e.abort()},e),t.current.signal}function xe(e=`rui-portal`){if(typeof document>`u`)return null;let t=document.getElementById(e);return t||(t=document.createElement(`div`),t.id=e,document.body.appendChild(t)),t}function Se(e,t){if(!e)throw Error(t)}var Ce=class extends Z.Component{state={hasError:!1,error:null};static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){this.props.onError?.(e,t)}reset=()=>{this.props.onReset?.(),this.setState({hasError:!1,error:null})};render(){if(this.state.hasError){let{fallback:e}=this.props;return typeof e==`function`?e(this.state.error,this.reset):e||(0,Q.jsxs)(`div`,{role:`alert`,className:`rounded-lg border border-red-500/20 bg-red-500/[0.06] p-4 text-sm text-red-700 dark:text-red-300`,children:[(0,Q.jsx)(`p`,{className:`font-medium`,children:`Something went wrong.`}),(0,Q.jsx)(`p`,{className:`mt-1 text-xs opacity-80`,children:this.state.error?.message}),(0,Q.jsx)(`button`,{type:`button`,onClick:this.reset,className:`mt-3 rounded-md bg-red-600 px-3 py-1.5 text-xs font-medium text-white hover:bg-red-500`,children:`Try again`})]})}return this.props.children}};function we(e,t){let n=(0,Z.useRef)(null);(0,Z.useEffect)(()=>{let t=new AbortController;n.current=t;let r=!0,i=e({signal:t.signal,isMounted:()=>r});return()=>{r=!1,t.abort(),typeof i==`function`&&i()}},t)}function Te(e){let t=o.t(e);(0,Z.useEffect)(()=>t(),[t])}function Ee(e){let t=o.t(e);(0,Z.useEffect)(()=>()=>t(),[t])}exports.Accordion=t.Accordion,exports.Alert=r.Alert,exports.AppShell=k.AppShell,exports.AppShellBody=k.AppShellBody,exports.AppShellHeader=k.AppShellHeader,exports.AppShellMain=k.AppShellMain,exports.ArticleJsonLd=X.ArticleJsonLd,exports.AuthBackdrop=i.AuthBackdrop,exports.Autocomplete=a.t,exports.Avatar=s.Avatar,exports.Badge=c.Badge,exports.BarChart=m.u,exports.BillingIntervalToggle=l.BillingIntervalToggle,exports.BottomBar=A.BottomBar,exports.BrandLink=A.BrandLink,exports.Breadcrumb=u.Breadcrumb,exports.BreadcrumbJsonLd=X.BreadcrumbJsonLd,exports.Button=d.Button,exports.Calendar=n.t,exports.Callout=f.Callout,exports.Card=p.Card,exports.CardBody=p.CardBody,exports.CardDescription=p.CardDescription,exports.CardFooter=p.CardFooter,exports.CardHeader=p.CardHeader,exports.CardTitle=p.CardTitle,exports.Checkbox=h.Checkbox,exports.CodeBlock=g.CodeBlock,exports.CodeEditor=g.CodeEditor,exports.Collapsible=t.Collapsible,exports.CommandPalette=v.CommandPalette,exports.CommandProvider=v.CommandProvider,exports.ConfirmDialog=b.ConfirmDialog,exports.Container=k.Container,exports.CopyButton=x.CopyButton,exports.DURATIONS=_.r,exports.DataTable=ee.t,exports.DatePicker=te.DatePicker,exports.DonutChart=m.s,exports.Drawer=re.t,exports.DropdownMenu=ie.DropdownMenu,exports.EmptyState=ae.EmptyState,exports.ErrorBoundary=Ce,exports.ErrorState=oe.ErrorState,exports.FOCUSABLE_SELECTOR=_.i,exports.FileUpload=se.FileUpload,exports.Footer=k.Footer,exports.FormField=S.FormField,exports.FunnelChart=m.n,exports.GanttChart=m.a,exports.HeatmapChart=m.i,exports.IconButton=A.IconButton,exports.InfoButton=w.InfoButton,exports.Inline=k.Inline,exports.InlineCode=g.InlineCode,exports.Input=C.Input,exports.KEY=_.a,exports.Kbd=T.Kbd,exports.Label=E.Label,exports.LineChart=m.l,exports.Link=D.Link,exports.List=O.List,exports.ListItem=O.ListItem,exports.Modal=y.Modal,exports.ModalBody=y.ModalBody,exports.ModalDescription=y.ModalDescription,exports.ModalFooter=y.ModalFooter,exports.ModalHeader=y.ModalHeader,exports.ModalTitle=y.ModalTitle,exports.MultiLineChart=m.c,exports.Navbar=A.Navbar,exports.NavigationLink=A.NavigationLink,exports.NumberInput=j.NumberInput,exports.OtpInput=M.OtpInput,exports.PageHeader=k.PageHeader,exports.Pagination=N.Pagination,exports.Popover=P.Popover,exports.PopoverContent=P.PopoverContent,exports.Progressbar=F.Progressbar,exports.RadarChart=m.r,exports.Radio=I.Radio,exports.RadioGroup=I.RadioGroup,exports.RichTextEditor=L.RichTextEditor,exports.ScatterChart=m.o,exports.Select=R.t,exports.SeoImage=X.SeoImage,exports.Separator=z.Separator,exports.Sidebar=A.Sidebar,exports.Skeleton=B.Skeleton,exports.SkeletonAvatar=B.SkeletonAvatar,exports.SkeletonCard=B.SkeletonCard,exports.SkeletonTable=B.SkeletonTable,exports.SkeletonText=B.SkeletonText,exports.SkeletonTopbar=B.SkeletonTopbar,exports.Slider=V.Slider,exports.SnackbarProvider=H.SnackbarProvider,exports.Spinner=U.Spinner,exports.Stack=k.Stack,exports.Stat=W.Stat,exports.StatusDot=G.StatusDot,exports.Stepper=ce.Stepper,exports.StructuredData=X.StructuredData,exports.Switch=le.Switch,exports.Table=K.Table,exports.TableBody=K.TableBody,exports.TableCell=K.TableCell,exports.TableHead=K.TableHead,exports.TableHeader=K.TableHeader,exports.TableRow=K.TableRow,exports.Tabs=q.Tabs,exports.TabsContent=q.TabsContent,exports.TabsList=q.TabsList,exports.TabsTrigger=q.TabsTrigger,exports.Tag=ue.Tag,exports.TerminalBlock=J.n,exports.TerminalEmulator=J.t,exports.Textarea=de.Textarea,exports.ThemeProvider=Y.ThemeProvider,exports.ThemeToggle=ne.t,exports.Timeline=fe.Timeline,exports.Tooltip=pe.Tooltip,exports.Topbar=A.Topbar,exports.TopbarTitle=A.TopbarTitle,exports.Tree=me.Tree,exports.WaterfallChart=m.t,exports.badgeVariants=c.badgeVariants,exports.buttonSizes=d.buttonSizes,exports.buttonVariants=d.buttonVariants,exports.cardVariants=p.cardVariants,exports.cn=e.t,exports.getFocusable=_.t,exports.invariant=Se,exports.portalTarget=xe,exports.trapFocus=_.n,exports.useAbortSignal=$,exports.useCommand=v.useCommand,exports.useControllableState=ye,exports.useEventCallback=o.t,exports.useIsMounted=he,exports.useIsomorphicLayoutEffect=ge,exports.useMediaQuery=be,exports.useMountEffect=Te,exports.usePrevious=_e,exports.useSafeEffect=we,exports.useSnackbar=H.useSnackbar,exports.useTheme=Y.useTheme,exports.useUnmountEffect=Ee,exports.useUpdateEffect=ve;
@@ -0,0 +1,70 @@
1
+ export * from './components/accordion';
2
+ export * from './components/calendar';
3
+ export * from './components/alert';
4
+ export * from './components/auth-backdrop';
5
+ export * from './components/autocomplete';
6
+ export * from './components/avatar';
7
+ export * from './components/badge';
8
+ export * from './components/billing-interval-toggle';
9
+ export * from './components/breadcrumb';
10
+ export * from './components/button';
11
+ export * from './components/callout';
12
+ export * from './components/card';
13
+ export * from './components/charts';
14
+ export * from './components/checkbox';
15
+ export * from './components/code';
16
+ export * from './components/command';
17
+ export * from './components/confirm-dialog';
18
+ export * from './components/copy-button';
19
+ export * from './components/datatable';
20
+ export * from './components/datepicker';
21
+ export * from './components/drawer';
22
+ export * from './components/dropdown-menu';
23
+ export * from './components/empty-state';
24
+ export * from './components/error-state';
25
+ export * from './components/file-upload';
26
+ export * from './components/form-field';
27
+ export * from './components/input';
28
+ export * from './components/info-button';
29
+ export * from './components/kbd';
30
+ export * from './components/label';
31
+ export * from './components/link';
32
+ export * from './components/list';
33
+ export * from './components/layout';
34
+ export * from './components/modal';
35
+ export * from './components/navigation';
36
+ export * from './components/number-input';
37
+ export * from './components/otp-input';
38
+ export * from './components/pagination';
39
+ export * from './components/popover';
40
+ export * from './components/progressbar';
41
+ export * from './components/radio';
42
+ export * from './components/richtext';
43
+ export * from './components/select';
44
+ export * from './components/separator';
45
+ export * from './components/skeleton';
46
+ export * from './components/slider';
47
+ export * from './components/snackbar';
48
+ export * from './components/spinner';
49
+ export * from './components/stat';
50
+ export * from './components/status-dot';
51
+ export * from './components/stepper';
52
+ export * from './components/switch';
53
+ export * from './components/table';
54
+ export * from './components/tabs';
55
+ export * from './components/tag';
56
+ export * from './components/terminal';
57
+ export * from './components/textarea';
58
+ export * from './components/timeline';
59
+ export * from './components/tooltip';
60
+ export * from './components/theme-provider';
61
+ export * from './components/theme-toggle';
62
+ export * from './components/tree';
63
+ export * from './lib/cn';
64
+ export * from './hooks';
65
+ export * from './types';
66
+ export * from './constants';
67
+ export * from './utils';
68
+ export * from './errors/error-boundary';
69
+ export * from './lifecycle';
70
+ export * from './components/seo';
package/dist/index.js ADDED
@@ -0,0 +1,215 @@
1
+ import { t as e } from "./cn-DpgY2leY.js";
2
+ import { Accordion as t, Collapsible as n } from "./components/accordion.js";
3
+ import { t as r } from "./calendar-CdICOROs.js";
4
+ import { Alert as i } from "./components/alert.js";
5
+ import { AuthBackdrop as a } from "./components/auth-backdrop.js";
6
+ import { t as ee } from "./autocomplete-CfbfpcO4.js";
7
+ import { t as o } from "./use-event-callback-DGkfO_uu.js";
8
+ import { Avatar as te } from "./components/avatar.js";
9
+ import { Badge as ne, badgeVariants as re } from "./components/badge.js";
10
+ import { BillingIntervalToggle as ie } from "./components/billing-interval-toggle.js";
11
+ import { Breadcrumb as ae } from "./components/breadcrumb.js";
12
+ import { Button as oe, buttonSizes as s, buttonVariants as c } from "./components/button.js";
13
+ import { Callout as l } from "./components/callout.js";
14
+ import { Card as u, CardBody as d, CardDescription as f, CardFooter as p, CardHeader as m, CardTitle as h, cardVariants as g } from "./components/card.js";
15
+ import { a as _, c as v, i as y, l as b, n as x, o as S, r as C, s as w, t as T, u as E } from "./charts-CxEy2c3M.js";
16
+ import { Checkbox as D } from "./components/checkbox.js";
17
+ import { CodeBlock as O, CodeEditor as k, InlineCode as A } from "./components/code.js";
18
+ import { a as j, i as M, n as N, r as P, t as F } from "./focus-Dk1YWVPN.js";
19
+ import { CommandPalette as I, CommandProvider as L, useCommand as R } from "./components/command.js";
20
+ import { Modal as z, ModalBody as B, ModalDescription as V, ModalFooter as H, ModalHeader as U, ModalTitle as W } from "./components/modal.js";
21
+ import { ConfirmDialog as G } from "./components/confirm-dialog.js";
22
+ import { CopyButton as K } from "./components/copy-button.js";
23
+ import { t as q } from "./datatable-DlBhUhuO.js";
24
+ import { DatePicker as se } from "./components/datepicker.js";
25
+ import { t as ce } from "./theme-toggle-CnoiorKV.js";
26
+ import { t as le } from "./drawer-CqkVZT9Y.js";
27
+ import { DropdownMenu as ue } from "./components/dropdown-menu.js";
28
+ import { EmptyState as de } from "./components/empty-state.js";
29
+ import { ErrorState as fe } from "./components/error-state.js";
30
+ import { FileUpload as pe } from "./components/file-upload.js";
31
+ import { FormField as me } from "./components/form-field.js";
32
+ import { Input as he } from "./components/input.js";
33
+ import { InfoButton as ge } from "./components/info-button.js";
34
+ import { Kbd as _e } from "./components/kbd.js";
35
+ import { Label as ve } from "./components/label.js";
36
+ import { Link as ye } from "./components/link.js";
37
+ import { List as be, ListItem as xe } from "./components/list.js";
38
+ import { AppShell as Se, AppShellBody as Ce, AppShellHeader as we, AppShellMain as Te, Container as Ee, Footer as De, Inline as Oe, PageHeader as ke, Stack as Ae } from "./components/layout.js";
39
+ import { BottomBar as je, BrandLink as Me, IconButton as Ne, Navbar as Pe, NavigationLink as Fe, Sidebar as J, Topbar as Ie, TopbarTitle as Le } from "./components/navigation.js";
40
+ import { NumberInput as Re } from "./components/number-input.js";
41
+ import { OtpInput as ze } from "./components/otp-input.js";
42
+ import { Pagination as Be } from "./components/pagination.js";
43
+ import { Popover as Ve, PopoverContent as He } from "./components/popover.js";
44
+ import { Progressbar as Ue } from "./components/progressbar.js";
45
+ import { Radio as We, RadioGroup as Ge } from "./components/radio.js";
46
+ import { RichTextEditor as Ke } from "./components/richtext.js";
47
+ import { t as qe } from "./select-Ch5fp1GT.js";
48
+ import { Separator as Je } from "./components/separator.js";
49
+ import { Skeleton as Ye, SkeletonAvatar as Xe, SkeletonCard as Ze, SkeletonTable as Qe, SkeletonText as $e, SkeletonTopbar as et } from "./components/skeleton.js";
50
+ import { Slider as tt } from "./components/slider.js";
51
+ import { SnackbarProvider as nt, useSnackbar as rt } from "./components/snackbar.js";
52
+ import { Spinner as it } from "./components/spinner.js";
53
+ import { Stat as at } from "./components/stat.js";
54
+ import { StatusDot as ot } from "./components/status-dot.js";
55
+ import { Stepper as st } from "./components/stepper.js";
56
+ import { Switch as ct } from "./components/switch.js";
57
+ import { Table as lt, TableBody as ut, TableCell as dt, TableHead as ft, TableHeader as pt, TableRow as mt } from "./components/table.js";
58
+ import { Tabs as ht, TabsContent as gt, TabsList as _t, TabsTrigger as vt } from "./components/tabs.js";
59
+ import { Tag as yt } from "./components/tag.js";
60
+ import { n as bt, t as xt } from "./terminal-BOR2cFi1.js";
61
+ import { Textarea as St } from "./components/textarea.js";
62
+ import { Timeline as Ct } from "./components/timeline.js";
63
+ import { Tooltip as wt } from "./components/tooltip.js";
64
+ import { ThemeProvider as Tt, useTheme as Et } from "./components/theme-provider.js";
65
+ import { Tree as Dt } from "./components/tree.js";
66
+ import { ArticleJsonLd as Ot, BreadcrumbJsonLd as kt, SeoImage as At, StructuredData as jt } from "./components/seo.js";
67
+ import { Component as Mt, useCallback as Y, useEffect as X, useLayoutEffect as Nt, useRef as Z, useState as Q } from "react";
68
+ import { jsx as $, jsxs as Pt } from "react/jsx-runtime";
69
+ //#region src/hooks/use-is-mounted.ts
70
+ function Ft() {
71
+ let e = Z(!1);
72
+ return X(() => (e.current = !0, () => {
73
+ e.current = !1;
74
+ }), []), Y(() => e.current, []);
75
+ }
76
+ //#endregion
77
+ //#region src/hooks/use-isomorphic-layout-effect.ts
78
+ var It = typeof window < "u" ? Nt : X;
79
+ //#endregion
80
+ //#region src/hooks/use-previous.ts
81
+ function Lt(e) {
82
+ let t = Z(void 0);
83
+ return X(() => {
84
+ t.current = e;
85
+ }, [e]), t.current;
86
+ }
87
+ //#endregion
88
+ //#region src/hooks/use-update-effect.ts
89
+ function Rt(e, t) {
90
+ let n = Z(!1);
91
+ X(() => {
92
+ if (!n.current) {
93
+ n.current = !0;
94
+ return;
95
+ }
96
+ return e();
97
+ }, t);
98
+ }
99
+ //#endregion
100
+ //#region src/hooks/use-controllable-state.ts
101
+ function zt({ value: e, defaultValue: t, onChange: n }) {
102
+ let [r, i] = Q(t), a = e !== void 0;
103
+ return [a ? e : r, Y((e) => {
104
+ a || i(e), n?.(e);
105
+ }, [a, n])];
106
+ }
107
+ //#endregion
108
+ //#region src/hooks/use-media-query.ts
109
+ function Bt(e) {
110
+ let [t, n] = Q(() => typeof window > "u" || window.matchMedia === void 0 ? !1 : window.matchMedia(e).matches);
111
+ return X(() => {
112
+ let t = window.matchMedia(e), r = () => n(t.matches);
113
+ return t.addEventListener ? t.addEventListener("change", r) : t.addListener(r), () => {
114
+ t.removeEventListener ? t.removeEventListener("change", r) : t.removeListener(r);
115
+ };
116
+ }, [e]), t;
117
+ }
118
+ //#endregion
119
+ //#region src/hooks/use-abort-signal.ts
120
+ function Vt(e = []) {
121
+ let t = Z(null);
122
+ return t.current === null && (t.current = new AbortController()), X(() => {
123
+ let e = new AbortController();
124
+ return t.current = e, () => e.abort();
125
+ }, e), t.current.signal;
126
+ }
127
+ //#endregion
128
+ //#region src/utils/portal.ts
129
+ function Ht(e = "rui-portal") {
130
+ if (typeof document > "u") return null;
131
+ let t = document.getElementById(e);
132
+ return t || (t = document.createElement("div"), t.id = e, document.body.appendChild(t)), t;
133
+ }
134
+ //#endregion
135
+ //#region src/utils/assert.ts
136
+ function Ut(e, t) {
137
+ if (!e) throw Error(t);
138
+ }
139
+ //#endregion
140
+ //#region src/errors/error-boundary.tsx
141
+ var Wt = class extends Mt {
142
+ state = {
143
+ hasError: !1,
144
+ error: null
145
+ };
146
+ static getDerivedStateFromError(e) {
147
+ return {
148
+ hasError: !0,
149
+ error: e
150
+ };
151
+ }
152
+ componentDidCatch(e, t) {
153
+ this.props.onError?.(e, t);
154
+ }
155
+ reset = () => {
156
+ this.props.onReset?.(), this.setState({
157
+ hasError: !1,
158
+ error: null
159
+ });
160
+ };
161
+ render() {
162
+ if (this.state.hasError) {
163
+ let { fallback: e } = this.props;
164
+ return typeof e == "function" ? e(this.state.error, this.reset) : e || /* @__PURE__ */ Pt("div", {
165
+ role: "alert",
166
+ className: "rounded-lg border border-red-500/20 bg-red-500/[0.06] p-4 text-sm text-red-700 dark:text-red-300",
167
+ children: [
168
+ /* @__PURE__ */ $("p", {
169
+ className: "font-medium",
170
+ children: "Something went wrong."
171
+ }),
172
+ /* @__PURE__ */ $("p", {
173
+ className: "mt-1 text-xs opacity-80",
174
+ children: this.state.error?.message
175
+ }),
176
+ /* @__PURE__ */ $("button", {
177
+ type: "button",
178
+ onClick: this.reset,
179
+ className: "mt-3 rounded-md bg-red-600 px-3 py-1.5 text-xs font-medium text-white hover:bg-red-500",
180
+ children: "Try again"
181
+ })
182
+ ]
183
+ });
184
+ }
185
+ return this.props.children;
186
+ }
187
+ };
188
+ //#endregion
189
+ //#region src/lifecycle/create-safe-effect.ts
190
+ function Gt(e, t) {
191
+ let n = Z(null);
192
+ X(() => {
193
+ let t = new AbortController();
194
+ n.current = t;
195
+ let r = !0, i = e({
196
+ signal: t.signal,
197
+ isMounted: () => r
198
+ });
199
+ return () => {
200
+ r = !1, t.abort(), typeof i == "function" && i();
201
+ };
202
+ }, t);
203
+ }
204
+ //#endregion
205
+ //#region src/lifecycle/mount.ts
206
+ function Kt(e) {
207
+ let t = o(e);
208
+ X(() => t(), [t]);
209
+ }
210
+ function qt(e) {
211
+ let t = o(e);
212
+ X(() => () => t(), [t]);
213
+ }
214
+ //#endregion
215
+ export { t as Accordion, i as Alert, Se as AppShell, Ce as AppShellBody, we as AppShellHeader, Te as AppShellMain, Ot as ArticleJsonLd, a as AuthBackdrop, ee as Autocomplete, te as Avatar, ne as Badge, E as BarChart, ie as BillingIntervalToggle, je as BottomBar, Me as BrandLink, ae as Breadcrumb, kt as BreadcrumbJsonLd, oe as Button, r as Calendar, l as Callout, u as Card, d as CardBody, f as CardDescription, p as CardFooter, m as CardHeader, h as CardTitle, D as Checkbox, O as CodeBlock, k as CodeEditor, n as Collapsible, I as CommandPalette, L as CommandProvider, G as ConfirmDialog, Ee as Container, K as CopyButton, P as DURATIONS, q as DataTable, se as DatePicker, w as DonutChart, le as Drawer, ue as DropdownMenu, de as EmptyState, Wt as ErrorBoundary, fe as ErrorState, M as FOCUSABLE_SELECTOR, pe as FileUpload, De as Footer, me as FormField, x as FunnelChart, _ as GanttChart, y as HeatmapChart, Ne as IconButton, ge as InfoButton, Oe as Inline, A as InlineCode, he as Input, j as KEY, _e as Kbd, ve as Label, b as LineChart, ye as Link, be as List, xe as ListItem, z as Modal, B as ModalBody, V as ModalDescription, H as ModalFooter, U as ModalHeader, W as ModalTitle, v as MultiLineChart, Pe as Navbar, Fe as NavigationLink, Re as NumberInput, ze as OtpInput, ke as PageHeader, Be as Pagination, Ve as Popover, He as PopoverContent, Ue as Progressbar, C as RadarChart, We as Radio, Ge as RadioGroup, Ke as RichTextEditor, S as ScatterChart, qe as Select, At as SeoImage, Je as Separator, J as Sidebar, Ye as Skeleton, Xe as SkeletonAvatar, Ze as SkeletonCard, Qe as SkeletonTable, $e as SkeletonText, et as SkeletonTopbar, tt as Slider, nt as SnackbarProvider, it as Spinner, Ae as Stack, at as Stat, ot as StatusDot, st as Stepper, jt as StructuredData, ct as Switch, lt as Table, ut as TableBody, dt as TableCell, ft as TableHead, pt as TableHeader, mt as TableRow, ht as Tabs, gt as TabsContent, _t as TabsList, vt as TabsTrigger, yt as Tag, bt as TerminalBlock, xt as TerminalEmulator, St as Textarea, Tt as ThemeProvider, ce as ThemeToggle, Ct as Timeline, wt as Tooltip, Ie as Topbar, Le as TopbarTitle, Dt as Tree, T as WaterfallChart, re as badgeVariants, s as buttonSizes, c as buttonVariants, g as cardVariants, e as cn, F as getFocusable, Ut as invariant, Ht as portalTarget, N as trapFocus, Vt as useAbortSignal, R as useCommand, zt as useControllableState, o as useEventCallback, Ft as useIsMounted, It as useIsomorphicLayoutEffect, Bt as useMediaQuery, Kt as useMountEffect, Lt as usePrevious, Gt as useSafeEffect, rt as useSnackbar, Et as useTheme, qt as useUnmountEffect, Rt as useUpdateEffect };
@@ -0,0 +1,2 @@
1
+ import { ClassValue } from 'clsx';
2
+ export declare function cn(...inputs: ClassValue[]): string;
@@ -0,0 +1,10 @@
1
+ /** Shared visual anatomy for high-frequency controls. Keep these as static
2
+ * Tailwind strings so the library stylesheet can discover every utility. */
3
+ export declare const fieldRootStyles = "flex w-full flex-col gap-1.5";
4
+ export declare const fieldLabelStyles = "text-sm font-medium leading-5 text-foreground";
5
+ export declare const fieldDescriptionStyles = "text-xs leading-5 text-muted-foreground";
6
+ export declare const fieldErrorStyles = "text-xs leading-5 text-destructive";
7
+ export declare const controlBaseStyles: string;
8
+ export declare const controlInvalidStyles = "border-destructive/60 hover:border-destructive/70 focus-within:border-destructive focus-within:ring-destructive/20";
9
+ export declare const focusRingStyles = "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-focus-ring/35 focus-visible:ring-offset-2 focus-visible:ring-offset-bg";
10
+ export declare const iconButtonStyles: string;