@flowstack-ui/brick 0.1.5 → 0.1.9

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 (343) hide show
  1. package/README.md +18 -3
  2. package/dist/agents/accordion.json +89 -0
  3. package/dist/agents/accordion.md +50 -0
  4. package/dist/agents/app-bar.json +5 -0
  5. package/dist/agents/app-bar.md +1 -0
  6. package/dist/agents/appearance.json +84 -0
  7. package/dist/agents/appearance.md +48 -0
  8. package/dist/agents/badge.json +64 -0
  9. package/dist/agents/badge.md +41 -0
  10. package/dist/agents/card.json +5 -0
  11. package/dist/agents/card.md +1 -0
  12. package/dist/agents/carousel.json +131 -0
  13. package/dist/agents/carousel.md +64 -0
  14. package/dist/agents/collapsible.json +81 -0
  15. package/dist/agents/collapsible.md +49 -0
  16. package/dist/agents/container.json +10 -4
  17. package/dist/agents/container.md +4 -2
  18. package/dist/agents/divider.json +1 -1
  19. package/dist/agents/divider.md +1 -1
  20. package/dist/agents/drawer.json +11 -1
  21. package/dist/agents/drawer.md +3 -0
  22. package/dist/agents/frame.json +74 -0
  23. package/dist/agents/frame.md +47 -0
  24. package/dist/agents/grid.json +9 -0
  25. package/dist/agents/grid.md +2 -0
  26. package/dist/agents/icon.json +98 -0
  27. package/dist/agents/icon.md +51 -0
  28. package/dist/agents/image.json +18 -2
  29. package/dist/agents/image.md +5 -1
  30. package/dist/agents/interface-composition.json +143 -6
  31. package/dist/agents/interface-composition.md +40 -6
  32. package/dist/agents/layer-selection.json +13 -1
  33. package/dist/agents/layer-selection.md +4 -0
  34. package/dist/agents/list.json +80 -0
  35. package/dist/agents/list.md +48 -0
  36. package/dist/agents/manifest.json +61 -1
  37. package/dist/agents/scroll-area.json +8 -3
  38. package/dist/agents/scroll-area.md +4 -3
  39. package/dist/agents/section.json +65 -0
  40. package/dist/agents/section.md +42 -0
  41. package/dist/agents/stack.json +29 -5
  42. package/dist/agents/stack.md +14 -4
  43. package/dist/agents/surface.json +52 -4
  44. package/dist/agents/surface.md +16 -2
  45. package/dist/agents/tabs.json +17 -2
  46. package/dist/agents/tabs.md +8 -1
  47. package/dist/agents/text.json +14 -4
  48. package/dist/agents/text.md +5 -3
  49. package/dist/agents/z-stack.json +66 -0
  50. package/dist/agents/z-stack.md +41 -0
  51. package/dist/appearance.d.ts +2 -0
  52. package/dist/appearance.d.ts.map +1 -0
  53. package/dist/appearance.js +2 -0
  54. package/dist/appearance.js.map +1 -0
  55. package/dist/carousel.d.ts +3 -0
  56. package/dist/carousel.d.ts.map +1 -0
  57. package/dist/carousel.js +3 -0
  58. package/dist/carousel.js.map +1 -0
  59. package/dist/components/_responsive-value/ResponsiveValue.d.ts +9 -0
  60. package/dist/components/_responsive-value/ResponsiveValue.d.ts.map +1 -0
  61. package/dist/components/_responsive-value/ResponsiveValue.js +22 -0
  62. package/dist/components/_responsive-value/ResponsiveValue.js.map +1 -0
  63. package/dist/components/appearance/Appearance.d.ts +14 -0
  64. package/dist/components/appearance/Appearance.d.ts.map +1 -0
  65. package/dist/components/appearance/Appearance.js +39 -0
  66. package/dist/components/appearance/Appearance.js.map +1 -0
  67. package/dist/components/appearance/index.d.ts +2 -0
  68. package/dist/components/appearance/index.d.ts.map +1 -0
  69. package/dist/components/appearance/index.js +2 -0
  70. package/dist/components/appearance/index.js.map +1 -0
  71. package/dist/components/card/Card.d.ts +1 -0
  72. package/dist/components/card/Card.d.ts.map +1 -1
  73. package/dist/components/card/Card.js +2 -1
  74. package/dist/components/card/Card.js.map +1 -1
  75. package/dist/components/carousel/Carousel.d.ts +80 -0
  76. package/dist/components/carousel/Carousel.d.ts.map +1 -0
  77. package/dist/components/carousel/Carousel.js +90 -0
  78. package/dist/components/carousel/Carousel.js.map +1 -0
  79. package/dist/components/carousel/index.d.ts +2 -0
  80. package/dist/components/carousel/index.d.ts.map +1 -0
  81. package/dist/components/carousel/index.js +2 -0
  82. package/dist/components/carousel/index.js.map +1 -0
  83. package/dist/components/divider/Divider.js +2 -2
  84. package/dist/components/divider/Divider.js.map +1 -1
  85. package/dist/components/frame/Frame.d.ts +28 -0
  86. package/dist/components/frame/Frame.d.ts.map +1 -0
  87. package/dist/components/frame/Frame.js +84 -0
  88. package/dist/components/frame/Frame.js.map +1 -0
  89. package/dist/components/frame/index.d.ts +2 -0
  90. package/dist/components/frame/index.d.ts.map +1 -0
  91. package/dist/components/frame/index.js +2 -0
  92. package/dist/components/frame/index.js.map +1 -0
  93. package/dist/components/grid/Grid.d.ts +19 -9
  94. package/dist/components/grid/Grid.d.ts.map +1 -1
  95. package/dist/components/grid/Grid.js +26 -10
  96. package/dist/components/grid/Grid.js.map +1 -1
  97. package/dist/components/grid/index.d.ts +1 -1
  98. package/dist/components/grid/index.d.ts.map +1 -1
  99. package/dist/components/grid/index.js.map +1 -1
  100. package/dist/components/image/Image.d.ts +4 -0
  101. package/dist/components/image/Image.d.ts.map +1 -1
  102. package/dist/components/image/Image.js +4 -4
  103. package/dist/components/image/Image.js.map +1 -1
  104. package/dist/components/image/index.d.ts +1 -1
  105. package/dist/components/image/index.d.ts.map +1 -1
  106. package/dist/components/image/index.js +1 -1
  107. package/dist/components/image/index.js.map +1 -1
  108. package/dist/components/section/Section.d.ts +18 -0
  109. package/dist/components/section/Section.d.ts.map +1 -0
  110. package/dist/components/section/Section.js +29 -0
  111. package/dist/components/section/Section.js.map +1 -0
  112. package/dist/components/section/index.d.ts +2 -0
  113. package/dist/components/section/index.d.ts.map +1 -0
  114. package/dist/components/section/index.js +2 -0
  115. package/dist/components/section/index.js.map +1 -0
  116. package/dist/components/stack/Stack.d.ts +33 -8
  117. package/dist/components/stack/Stack.d.ts.map +1 -1
  118. package/dist/components/stack/Stack.js +71 -14
  119. package/dist/components/stack/Stack.js.map +1 -1
  120. package/dist/components/stack/index.d.ts +1 -1
  121. package/dist/components/stack/index.d.ts.map +1 -1
  122. package/dist/components/stack/index.js.map +1 -1
  123. package/dist/components/surface/Surface.d.ts +41 -3
  124. package/dist/components/surface/Surface.d.ts.map +1 -1
  125. package/dist/components/surface/Surface.js +79 -6
  126. package/dist/components/surface/Surface.js.map +1 -1
  127. package/dist/components/surface/index.d.ts +1 -1
  128. package/dist/components/surface/index.d.ts.map +1 -1
  129. package/dist/components/surface/index.js +1 -1
  130. package/dist/components/surface/index.js.map +1 -1
  131. package/dist/components/tabs/Tabs.d.ts +27 -6
  132. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  133. package/dist/components/tabs/Tabs.js +10 -6
  134. package/dist/components/tabs/Tabs.js.map +1 -1
  135. package/dist/components/tabs/index.d.ts +1 -1
  136. package/dist/components/tabs/index.d.ts.map +1 -1
  137. package/dist/components/tabs/index.js.map +1 -1
  138. package/dist/components/z-stack/ZStack.d.ts +43 -0
  139. package/dist/components/z-stack/ZStack.d.ts.map +1 -0
  140. package/dist/components/z-stack/ZStack.js +70 -0
  141. package/dist/components/z-stack/ZStack.js.map +1 -0
  142. package/dist/components/z-stack/index.d.ts +2 -0
  143. package/dist/components/z-stack/index.d.ts.map +1 -0
  144. package/dist/components/z-stack/index.js +2 -0
  145. package/dist/components/z-stack/index.js.map +1 -0
  146. package/dist/frame.d.ts +2 -0
  147. package/dist/frame.d.ts.map +1 -0
  148. package/dist/frame.js +2 -0
  149. package/dist/frame.js.map +1 -0
  150. package/dist/grid.d.ts +1 -1
  151. package/dist/grid.d.ts.map +1 -1
  152. package/dist/grid.js.map +1 -1
  153. package/dist/image.d.ts +1 -1
  154. package/dist/image.d.ts.map +1 -1
  155. package/dist/image.js +1 -1
  156. package/dist/image.js.map +1 -1
  157. package/dist/index.d.ts +9 -4
  158. package/dist/index.d.ts.map +1 -1
  159. package/dist/index.js +7 -2
  160. package/dist/index.js.map +1 -1
  161. package/dist/section.d.ts +2 -0
  162. package/dist/section.d.ts.map +1 -0
  163. package/dist/section.js +2 -0
  164. package/dist/section.js.map +1 -0
  165. package/dist/stack.d.ts +1 -1
  166. package/dist/stack.d.ts.map +1 -1
  167. package/dist/stack.js.map +1 -1
  168. package/dist/styles/accordion.css +1 -1
  169. package/dist/styles/accordion.css.map +1 -1
  170. package/dist/styles/alert-dialog.css +1 -1
  171. package/dist/styles/alert-dialog.css.map +1 -1
  172. package/dist/styles/app-bar.css +1 -1
  173. package/dist/styles/app-bar.css.map +1 -1
  174. package/dist/styles/appearance.css +2 -0
  175. package/dist/styles/appearance.css.map +1 -0
  176. package/dist/styles/aspect-ratio.css +1 -1
  177. package/dist/styles/aspect-ratio.css.map +1 -1
  178. package/dist/styles/avatar.css +1 -1
  179. package/dist/styles/avatar.css.map +1 -1
  180. package/dist/styles/badge.css +1 -1
  181. package/dist/styles/badge.css.map +1 -1
  182. package/dist/styles/bottom-navigation.css +1 -1
  183. package/dist/styles/bottom-navigation.css.map +1 -1
  184. package/dist/styles/breadcrumb.css +1 -1
  185. package/dist/styles/breadcrumb.css.map +1 -1
  186. package/dist/styles/button.css +1 -1
  187. package/dist/styles/button.css.map +1 -1
  188. package/dist/styles/card.css +1 -1
  189. package/dist/styles/card.css.map +1 -1
  190. package/dist/styles/carousel.css +2 -0
  191. package/dist/styles/carousel.css.map +1 -0
  192. package/dist/styles/checkbox-group.css +1 -1
  193. package/dist/styles/checkbox-group.css.map +1 -1
  194. package/dist/styles/checkbox.css +1 -1
  195. package/dist/styles/checkbox.css.map +1 -1
  196. package/dist/styles/chip.css +1 -1
  197. package/dist/styles/chip.css.map +1 -1
  198. package/dist/styles/code-block.css +1 -1
  199. package/dist/styles/code-block.css.map +1 -1
  200. package/dist/styles/code.css +1 -1
  201. package/dist/styles/code.css.map +1 -1
  202. package/dist/styles/collapsible.css +1 -1
  203. package/dist/styles/collapsible.css.map +1 -1
  204. package/dist/styles/combobox.css +1 -1
  205. package/dist/styles/combobox.css.map +1 -1
  206. package/dist/styles/container.css +1 -1
  207. package/dist/styles/container.css.map +1 -1
  208. package/dist/styles/context-menu.css +1 -1
  209. package/dist/styles/context-menu.css.map +1 -1
  210. package/dist/styles/core.css +1 -1
  211. package/dist/styles/core.css.map +1 -1
  212. package/dist/styles/data-grid.css +1 -1
  213. package/dist/styles/data-grid.css.map +1 -1
  214. package/dist/styles/dialog.css +1 -1
  215. package/dist/styles/dialog.css.map +1 -1
  216. package/dist/styles/divider.css +1 -1
  217. package/dist/styles/divider.css.map +1 -1
  218. package/dist/styles/drawer.css +1 -1
  219. package/dist/styles/drawer.css.map +1 -1
  220. package/dist/styles/dropdown-menu.css +1 -1
  221. package/dist/styles/dropdown-menu.css.map +1 -1
  222. package/dist/styles/feed.css +1 -1
  223. package/dist/styles/feed.css.map +1 -1
  224. package/dist/styles/field.css +1 -1
  225. package/dist/styles/field.css.map +1 -1
  226. package/dist/styles/fieldset.css +1 -1
  227. package/dist/styles/fieldset.css.map +1 -1
  228. package/dist/styles/file-upload.css +1 -1
  229. package/dist/styles/file-upload.css.map +1 -1
  230. package/dist/styles/form.css +1 -1
  231. package/dist/styles/form.css.map +1 -1
  232. package/dist/styles/frame.css +2 -0
  233. package/dist/styles/frame.css.map +1 -0
  234. package/dist/styles/grid.css +1 -1
  235. package/dist/styles/grid.css.map +1 -1
  236. package/dist/styles/hide.css +1 -1
  237. package/dist/styles/hide.css.map +1 -1
  238. package/dist/styles/hover-card.css +1 -1
  239. package/dist/styles/hover-card.css.map +1 -1
  240. package/dist/styles/icon-button.css +1 -1
  241. package/dist/styles/icon-button.css.map +1 -1
  242. package/dist/styles/icon.css +1 -1
  243. package/dist/styles/icon.css.map +1 -1
  244. package/dist/styles/image.css +1 -1
  245. package/dist/styles/image.css.map +1 -1
  246. package/dist/styles/input.css +1 -1
  247. package/dist/styles/input.css.map +1 -1
  248. package/dist/styles/link.css +1 -1
  249. package/dist/styles/link.css.map +1 -1
  250. package/dist/styles/list.css +1 -1
  251. package/dist/styles/list.css.map +1 -1
  252. package/dist/styles/menubar.css +1 -1
  253. package/dist/styles/menubar.css.map +1 -1
  254. package/dist/styles/multi-select.css +1 -1
  255. package/dist/styles/multi-select.css.map +1 -1
  256. package/dist/styles/nav-list.css +1 -1
  257. package/dist/styles/nav-list.css.map +1 -1
  258. package/dist/styles/navigation-menu.css +1 -1
  259. package/dist/styles/navigation-menu.css.map +1 -1
  260. package/dist/styles/number-input.css +1 -1
  261. package/dist/styles/number-input.css.map +1 -1
  262. package/dist/styles/otp-field.css +1 -1
  263. package/dist/styles/otp-field.css.map +1 -1
  264. package/dist/styles/pagination.css +1 -1
  265. package/dist/styles/pagination.css.map +1 -1
  266. package/dist/styles/password-toggle-field.css +1 -1
  267. package/dist/styles/password-toggle-field.css.map +1 -1
  268. package/dist/styles/popover.css +1 -1
  269. package/dist/styles/popover.css.map +1 -1
  270. package/dist/styles/progress-circle.css +1 -1
  271. package/dist/styles/progress-circle.css.map +1 -1
  272. package/dist/styles/progress.css +1 -1
  273. package/dist/styles/progress.css.map +1 -1
  274. package/dist/styles/radio-group.css +1 -1
  275. package/dist/styles/radio-group.css.map +1 -1
  276. package/dist/styles/rating.css +1 -1
  277. package/dist/styles/rating.css.map +1 -1
  278. package/dist/styles/scroll-area.css +1 -1
  279. package/dist/styles/scroll-area.css.map +1 -1
  280. package/dist/styles/section.css +2 -0
  281. package/dist/styles/section.css.map +1 -0
  282. package/dist/styles/select.css +1 -1
  283. package/dist/styles/select.css.map +1 -1
  284. package/dist/styles/show.css +1 -1
  285. package/dist/styles/show.css.map +1 -1
  286. package/dist/styles/sidebar.css +1 -1
  287. package/dist/styles/sidebar.css.map +1 -1
  288. package/dist/styles/skeleton.css +1 -1
  289. package/dist/styles/skeleton.css.map +1 -1
  290. package/dist/styles/skip-link.css +1 -1
  291. package/dist/styles/skip-link.css.map +1 -1
  292. package/dist/styles/slider.css +1 -1
  293. package/dist/styles/slider.css.map +1 -1
  294. package/dist/styles/stack.css +1 -1
  295. package/dist/styles/stack.css.map +1 -1
  296. package/dist/styles/surface.css +1 -1
  297. package/dist/styles/surface.css.map +1 -1
  298. package/dist/styles/swipeable-item.css +1 -1
  299. package/dist/styles/swipeable-item.css.map +1 -1
  300. package/dist/styles/switch.css +1 -1
  301. package/dist/styles/switch.css.map +1 -1
  302. package/dist/styles/table.css +1 -1
  303. package/dist/styles/table.css.map +1 -1
  304. package/dist/styles/tabs.css +1 -1
  305. package/dist/styles/tabs.css.map +1 -1
  306. package/dist/styles/text.css +1 -1
  307. package/dist/styles/text.css.map +1 -1
  308. package/dist/styles/textarea.css +1 -1
  309. package/dist/styles/textarea.css.map +1 -1
  310. package/dist/styles/toast.css +1 -1
  311. package/dist/styles/toast.css.map +1 -1
  312. package/dist/styles/toggle-group.css +1 -1
  313. package/dist/styles/toggle-group.css.map +1 -1
  314. package/dist/styles/toggle.css +1 -1
  315. package/dist/styles/toggle.css.map +1 -1
  316. package/dist/styles/toolbar.css +1 -1
  317. package/dist/styles/toolbar.css.map +1 -1
  318. package/dist/styles/tooltip.css +1 -1
  319. package/dist/styles/tooltip.css.map +1 -1
  320. package/dist/styles/tree-grid.css +1 -1
  321. package/dist/styles/tree-grid.css.map +1 -1
  322. package/dist/styles/tree.css +1 -1
  323. package/dist/styles/tree.css.map +1 -1
  324. package/dist/styles/visually-hidden.css +1 -1
  325. package/dist/styles/visually-hidden.css.map +1 -1
  326. package/dist/styles/z-stack.css +2 -0
  327. package/dist/styles/z-stack.css.map +1 -0
  328. package/dist/styles.css +1 -1
  329. package/dist/styles.css.map +1 -1
  330. package/dist/surface.d.ts +1 -1
  331. package/dist/surface.d.ts.map +1 -1
  332. package/dist/surface.js +1 -1
  333. package/dist/surface.js.map +1 -1
  334. package/dist/theme-contract.json +23663 -0
  335. package/dist/tokens.css +1 -1
  336. package/dist/tokens.css.map +1 -1
  337. package/dist/z-stack.d.ts +2 -0
  338. package/dist/z-stack.d.ts.map +1 -0
  339. package/dist/z-stack.js +2 -0
  340. package/dist/z-stack.js.map +1 -0
  341. package/docs/guides/appearance-and-tokens.md +97 -1
  342. package/docs/guides/theme-contract.md +72 -0
  343. package/package.json +29 -4
@@ -1,29 +1,86 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createElement, forwardRef, } from "react";
3
- function mergeClassName(className) {
4
- return className ? `brick-stack ${className}` : "brick-stack";
2
+ import { Children, cloneElement, createElement, forwardRef, } from "react";
3
+ import { responsiveDataAttributes, } from "../_responsive-value/ResponsiveValue.js";
4
+ function mergeClassName(base, className) {
5
+ return className ? `${base} ${className}` : base;
5
6
  }
6
- function StackImpl({ as = "div", direction = "column", gap = "0", align = "stretch", justify = "start", wrap = false, className, slot = "stack", children, ...props }, ref) {
7
+ function composeRefs(...refs) {
8
+ return (value) => {
9
+ for (const ref of refs) {
10
+ if (typeof ref === "function")
11
+ ref(value);
12
+ else if (ref)
13
+ ref.current = value;
14
+ }
15
+ };
16
+ }
17
+ function mergeComposedProps(original, override) {
18
+ const merged = { ...original, ...override };
19
+ for (const [key, value] of Object.entries(override)) {
20
+ const current = original[key];
21
+ if (key.startsWith("on") && typeof current === "function" && typeof value === "function") {
22
+ merged[key] = (...args) => { value(...args); current(...args); };
23
+ }
24
+ else if (key === "className" && typeof current === "string" && typeof value === "string") {
25
+ merged[key] = `${current} ${value}`;
26
+ }
27
+ else if (key === "style" && current && value && typeof current === "object" && typeof value === "object") {
28
+ merged[key] = { ...current, ...value };
29
+ }
30
+ }
31
+ return merged;
32
+ }
33
+ function StackImpl({ as = "div", direction = "column", gap = "0", align = "stretch", justify = "start", wrap = false, startSpacing = "0", endSpacing = "0", className, slot = "stack", children, ...props }, ref) {
34
+ const wrapAttributes = responsiveDataAttributes("data-wrap", wrap, { defaultValue: false });
35
+ if (wrapAttributes["data-wrap"] === "true")
36
+ wrapAttributes["data-wrap"] = "";
7
37
  return createElement(as, {
8
38
  ...props,
9
- className: mergeClassName(className),
10
- "data-align": align !== "stretch" ? align : undefined,
11
- "data-direction": direction,
12
- "data-gap": gap,
13
- "data-justify": justify !== "start" ? justify : undefined,
39
+ ...responsiveDataAttributes("data-direction", direction, { alwaysInitial: true }),
40
+ ...responsiveDataAttributes("data-gap", gap, { alwaysInitial: true }),
41
+ ...responsiveDataAttributes("data-align", align, { defaultValue: "stretch" }),
42
+ ...responsiveDataAttributes("data-justify", justify, { defaultValue: "start" }),
43
+ ...wrapAttributes,
44
+ ...responsiveDataAttributes("data-start-spacing", startSpacing, { defaultValue: "0" }),
45
+ ...responsiveDataAttributes("data-end-spacing", endSpacing, { defaultValue: "0" }),
46
+ className: mergeClassName("brick-stack", className),
14
47
  "data-slot": slot,
15
- "data-wrap": wrap ? "" : undefined,
16
48
  ref,
17
49
  }, children);
18
50
  }
19
- export const Stack = forwardRef(StackImpl);
20
- Stack.displayName = "Stack";
51
+ function StackItemImpl({ as = "div", asChild = false, align = "auto", flex = "content", className, slot = "stack-item", style, children, ...props }, ref) {
52
+ const itemProps = {
53
+ ...props,
54
+ ...responsiveDataAttributes("data-align", align, { defaultValue: "auto" }),
55
+ ...responsiveDataAttributes("data-flex", flex, { alwaysInitial: true }),
56
+ className: mergeClassName("brick-stack-item", className),
57
+ "data-slot": slot,
58
+ ref,
59
+ style,
60
+ };
61
+ if (asChild) {
62
+ const child = Children.only(children);
63
+ const childRef = ("ref" in child.props
64
+ ? child.props.ref
65
+ : child.ref);
66
+ return cloneElement(child, mergeComposedProps(child.props, {
67
+ ...itemProps,
68
+ ref: childRef || ref ? composeRefs(childRef, ref) : undefined,
69
+ }));
70
+ }
71
+ return createElement(as, itemProps, children);
72
+ }
73
+ const StackRoot = forwardRef(StackImpl);
74
+ StackRoot.displayName = "Stack";
75
+ const StackItem = forwardRef(StackItemImpl);
76
+ StackItem.displayName = "Stack.Item";
77
+ export const Stack = Object.assign(StackRoot, { Item: StackItem });
21
78
  export const HStack = forwardRef(function HStack({ align = "center", ...props }, ref) {
22
- return _jsx(Stack, { ...props, align: align, direction: "row", ref: ref });
79
+ return _jsx(StackRoot, { ...props, align: align, direction: "row", ref: ref });
23
80
  });
24
81
  HStack.displayName = "HStack";
25
82
  export const VStack = forwardRef(function VStack(props, ref) {
26
- return _jsx(Stack, { ...props, direction: "column", ref: ref });
83
+ return _jsx(StackRoot, { ...props, direction: "column", ref: ref });
27
84
  });
28
85
  VStack.displayName = "VStack";
29
86
  //# sourceMappingURL=Stack.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.js","sourceRoot":"","sources":["../../../src/components/stack/Stack.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,UAAU,GAKX,MAAM,OAAO,CAAC;AAgDf,SAAS,cAAc,CAAC,SAA6B;IACnD,OAAO,SAAS,CAAC,CAAC,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;AAChE,CAAC;AAED,SAAS,SAAS,CAChB,EACE,EAAE,GAAG,KAAK,EACV,SAAS,GAAG,QAAQ,EACpB,GAAG,GAAG,GAAG,EACT,KAAK,GAAG,SAAS,EACjB,OAAO,GAAG,OAAO,EACjB,IAAI,GAAG,KAAK,EACZ,SAAS,EACT,IAAI,GAAG,OAAO,EACd,QAAQ,EACR,GAAG,KAAK,EACG,EACb,GAA8B;IAE9B,OAAO,aAAa,CAClB,EAAE,EACF;QACE,GAAG,KAAK;QACR,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC;QACpC,YAAY,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACrD,gBAAgB,EAAE,SAAS;QAC3B,UAAU,EAAE,GAAG;QACf,cAAc,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QACzD,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAClC,GAAG;KACJ,EACD,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,UAAU,CAA0B,SAAS,CAAC,CAAC;AACpE,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;AAE5B,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAC9B,SAAS,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IACjD,OAAO,KAAC,KAAK,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAC,KAAK,EAAC,GAAG,EAAE,GAAG,GAAI,CAAC;AACtE,CAAC,CACF,CAAC;AACF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;AAE9B,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAC9B,SAAS,MAAM,CAAC,KAAK,EAAE,GAAG;IACxB,OAAO,KAAC,KAAK,OAAK,KAAK,EAAE,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,GAAG,GAAI,CAAC;AAC3D,CAAC,CACF,CAAC;AACF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"Stack.js","sourceRoot":"","sources":["../../../src/components/stack/Stack.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,UAAU,GAOX,MAAM,OAAO,CAAC;AACf,OAAO,EACL,wBAAwB,GAGzB,MAAM,yCAAyC,CAAC;AAkDjD,SAAS,cAAc,CAAC,IAAY,EAAE,SAA6B;IACjE,OAAO,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACnD,CAAC;AAED,SAAS,WAAW,CAAI,GAAG,IAA+B;IACxD,OAAO,CAAC,KAAe,EAAE,EAAE;QACzB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,OAAO,GAAG,KAAK,UAAU;gBAAE,GAAG,CAAC,KAAK,CAAC,CAAC;iBACrC,IAAI,GAAG;gBAAE,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;QACpC,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAiC,EAAE,QAAiC;IAC9F,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;YACzF,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC3F,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,OAAO,IAAI,KAAK,EAAE,CAAC;QACtC,CAAC;aAAM,IAAI,GAAG,KAAK,OAAO,IAAI,OAAO,IAAI,KAAK,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC3G,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC;QACzC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAChB,EACE,EAAE,GAAG,KAAK,EACV,SAAS,GAAG,QAAQ,EACpB,GAAG,GAAG,GAAG,EACT,KAAK,GAAG,SAAS,EACjB,OAAO,GAAG,OAAO,EACjB,IAAI,GAAG,KAAK,EACZ,YAAY,GAAG,GAAG,EAClB,UAAU,GAAG,GAAG,EAChB,SAAS,EACT,IAAI,GAAG,OAAO,EACd,QAAQ,EACR,GAAG,KAAK,EACG,EACb,GAA8B;IAE9B,MAAM,cAAc,GAAG,wBAAwB,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5F,IAAI,cAAc,CAAC,WAAW,CAAC,KAAK,MAAM;QAAE,cAAc,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IAC7E,OAAO,aAAa,CAAC,EAAE,EAAE;QACvB,GAAG,KAAK;QACR,GAAG,wBAAwB,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACjF,GAAG,wBAAwB,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACrE,GAAG,wBAAwB,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QAC7E,GAAG,wBAAwB,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAC/E,GAAG,cAAc;QACjB,GAAG,wBAAwB,CAAC,oBAAoB,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;QACtF,GAAG,wBAAwB,CAAC,kBAAkB,EAAE,UAAU,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;QAClF,SAAS,EAAE,cAAc,CAAC,aAAa,EAAE,SAAS,CAAC;QACnD,WAAW,EAAE,IAAI;QACjB,GAAG;KACJ,EAAE,QAAQ,CAAC,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CACpB,EACE,EAAE,GAAG,KAAK,EACV,OAAO,GAAG,KAAK,EACf,KAAK,GAAG,MAAM,EACd,IAAI,GAAG,SAAS,EAChB,SAAS,EACT,IAAI,GAAG,YAAY,EACnB,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACO,EACjB,GAA8B;IAE9B,MAAM,SAAS,GAAG;QAChB,GAAG,KAAK;QACR,GAAG,wBAAwB,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QAC1E,GAAG,wBAAwB,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACvE,SAAS,EAAE,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC;QACxD,WAAW,EAAE,IAAI;QACjB,GAAG;QACH,KAAK;KACN,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAA0C,CAAC;QAC/E,MAAM,QAAQ,GAAG,CACf,KAAK,IAAI,KAAK,CAAC,KAAK;YAClB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG;YACjB,CAAC,CAAE,KAAmD,CAAC,GAAG,CAC7B,CAAC;QAClC,OAAO,YAAY,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE;YACzD,GAAG,SAAS;YACZ,GAAG,EAAE,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9D,CAAC,CAAC,CAAC;IACN,CAAC;IAED,OAAO,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,SAAS,GAAG,UAAU,CAA0B,SAAS,CAAC,CAAC;AACjE,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC;AAEhC,MAAM,SAAS,GAAG,UAAU,CAA8B,aAAa,CAAC,CAAC;AACzE,SAAS,CAAC,WAAW,GAAG,YAAY,CAAC;AAErC,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AAEnE,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAC9B,SAAS,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IACjD,OAAO,KAAC,SAAS,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAC,KAAK,EAAC,GAAG,EAAE,GAAG,GAAI,CAAC;AAC1E,CAAC,CACF,CAAC;AACF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;AAE9B,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAC9B,SAAS,MAAM,CAAC,KAAK,EAAE,GAAG;IACxB,OAAO,KAAC,SAAS,OAAK,KAAK,EAAE,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,GAAG,GAAI,CAAC;AAC/D,CAAC,CACF,CAAC;AACF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC"}
@@ -1,2 +1,2 @@
1
- export { HStack, Stack, VStack, type HStackProps, type StackAlign, type StackDirection, type StackElement, type StackGap, type StackJustify, type StackProps, type VStackProps, } from "./Stack.js";
1
+ export { HStack, Stack, VStack, type HStackProps, type ResponsiveValue, type StackAlign, type StackBreakpoint, type StackDirection, type StackElement, type StackGap, type StackItemAlign, type StackItemElement, type StackItemFlex, type StackItemProps, type StackJustify, type StackProps, type VStackProps, } from "./Stack.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/stack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/stack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/stack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,GASP,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/stack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,KAAK,EACL,MAAM,GAeP,MAAM,YAAY,CAAC"}
@@ -1,13 +1,22 @@
1
- import { type CSSProperties, type HTMLAttributes, type ReactNode } from "react";
1
+ import { type CSSProperties, type HTMLAttributes, type ReactElement, type ReactNode } from "react";
2
2
  export type SurfaceElement = "div" | "section" | "article" | "aside" | "nav" | "main" | "header" | "footer" | "form" | "li";
3
3
  export type SurfaceLevel = "canvas" | "base" | "subtle" | "raised";
4
4
  export type SurfaceElevation = "none" | "low" | "medium" | "high";
5
5
  export type SurfaceRadius = "none" | "subtle" | "surface";
6
6
  export type SurfaceInset = "none" | "sm" | "md" | "lg";
7
+ export type SurfaceScrimStrength = "soft" | "medium" | "strong";
8
+ export type SurfaceScrimDirection = "uniform" | "inline-start" | "inline-end" | "block-start" | "block-end";
7
9
  type SurfaceNativeProps = Omit<HTMLAttributes<HTMLElement>, "children" | "className" | "style">;
8
- export interface SurfaceProps extends SurfaceNativeProps {
10
+ type SurfaceHostProps = {
9
11
  as?: SurfaceElement;
12
+ asChild?: false;
10
13
  children?: ReactNode;
14
+ } | {
15
+ as?: never;
16
+ asChild: true;
17
+ children: ReactElement;
18
+ };
19
+ export type SurfaceProps = SurfaceNativeProps & SurfaceHostProps & {
11
20
  level?: SurfaceLevel;
12
21
  bordered?: boolean;
13
22
  elevation?: SurfaceElevation;
@@ -16,7 +25,36 @@ export interface SurfaceProps extends SurfaceNativeProps {
16
25
  className?: string;
17
26
  style?: CSSProperties;
18
27
  slot?: string;
28
+ };
29
+ type SurfacePartNativeProps = Omit<HTMLAttributes<HTMLDivElement>, "aria-hidden" | "children" | "className" | "style">;
30
+ export interface SurfaceMediaProps extends SurfacePartNativeProps {
31
+ children?: ReactNode;
32
+ className?: string;
33
+ style?: CSSProperties;
34
+ slot?: string;
35
+ }
36
+ export interface SurfaceScrimProps extends SurfacePartNativeProps {
37
+ direction?: SurfaceScrimDirection;
38
+ strength?: SurfaceScrimStrength;
39
+ className?: string;
40
+ style?: CSSProperties;
41
+ slot?: string;
42
+ }
43
+ export interface SurfaceContentProps extends SurfacePartNativeProps {
44
+ children?: ReactNode;
45
+ className?: string;
46
+ style?: CSSProperties;
47
+ slot?: string;
19
48
  }
20
- export declare const Surface: import("react").ForwardRefExoticComponent<SurfaceProps & import("react").RefAttributes<HTMLElement>>;
49
+ export declare const SurfaceRoot: import("react").ForwardRefExoticComponent<SurfaceProps & import("react").RefAttributes<HTMLElement>>;
50
+ export declare const SurfaceMedia: import("react").ForwardRefExoticComponent<SurfaceMediaProps & import("react").RefAttributes<HTMLDivElement>>;
51
+ export declare const SurfaceScrim: import("react").ForwardRefExoticComponent<SurfaceScrimProps & import("react").RefAttributes<HTMLDivElement>>;
52
+ export declare const SurfaceContent: import("react").ForwardRefExoticComponent<SurfaceContentProps & import("react").RefAttributes<HTMLDivElement>>;
53
+ export declare const Surface: import("react").ForwardRefExoticComponent<SurfaceProps & import("react").RefAttributes<HTMLElement>> & {
54
+ Root: import("react").ForwardRefExoticComponent<SurfaceProps & import("react").RefAttributes<HTMLElement>>;
55
+ Media: import("react").ForwardRefExoticComponent<SurfaceMediaProps & import("react").RefAttributes<HTMLDivElement>>;
56
+ Scrim: import("react").ForwardRefExoticComponent<SurfaceScrimProps & import("react").RefAttributes<HTMLDivElement>>;
57
+ Content: import("react").ForwardRefExoticComponent<SurfaceContentProps & import("react").RefAttributes<HTMLDivElement>>;
58
+ };
21
59
  export {};
22
60
  //# sourceMappingURL=Surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Surface.d.ts","sourceRoot":"","sources":["../../../src/components/surface/Surface.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,aAAa,EAElB,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,MAAM,MAAM,cAAc,GACtB,KAAK,GACL,SAAS,GACT,SAAS,GACT,OAAO,GACP,KAAK,GACL,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,IAAI,CAAC;AAET,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACnE,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAClE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvD,KAAK,kBAAkB,GAAG,IAAI,CAC5B,cAAc,CAAC,WAAW,CAAC,EAC3B,UAAU,GAAG,WAAW,GAAG,OAAO,CACnC,CAAC;AAEF,MAAM,WAAW,YAAa,SAAQ,kBAAkB;IACtD,EAAE,CAAC,EAAE,cAAc,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAsCD,eAAO,MAAM,OAAO,sGAAqD,CAAC"}
1
+ {"version":3,"file":"Surface.d.ts","sourceRoot":"","sources":["../../../src/components/surface/Surface.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,47 @@
1
- import { createElement, forwardRef, } from "react";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Children, cloneElement, createElement, forwardRef, Fragment, } from "react";
2
3
  function mergeClassName(className) {
3
4
  return className ? `brick-surface ${className}` : "brick-surface";
4
5
  }
5
- function SurfaceImpl({ as = "div", bordered = false, children, className, elevation = "none", inset = "none", level = "base", radius = "surface", slot = "surface", ...props }, ref) {
6
- return createElement(as, {
6
+ function composeRefs(...refs) {
7
+ return (value) => {
8
+ for (const ref of refs) {
9
+ if (typeof ref === "function")
10
+ ref(value);
11
+ else if (ref)
12
+ ref.current = value;
13
+ }
14
+ };
15
+ }
16
+ function mergeComposedProps(original, override) {
17
+ const merged = { ...original, ...override };
18
+ for (const [key, value] of Object.entries(override)) {
19
+ const current = original[key];
20
+ if (key.startsWith("on") &&
21
+ typeof current === "function" &&
22
+ typeof value === "function") {
23
+ merged[key] = (...args) => {
24
+ value(...args);
25
+ current(...args);
26
+ };
27
+ }
28
+ else if (key === "className" &&
29
+ typeof current === "string" &&
30
+ typeof value === "string") {
31
+ merged[key] = `${current} ${value}`;
32
+ }
33
+ else if (key === "style" &&
34
+ current &&
35
+ value &&
36
+ typeof current === "object" &&
37
+ typeof value === "object") {
38
+ merged[key] = { ...current, ...value };
39
+ }
40
+ }
41
+ return merged;
42
+ }
43
+ function SurfaceImpl({ as = "div", asChild = false, bordered = false, children, className, elevation = "none", inset = "none", level = "base", radius = "surface", slot = "surface", ...props }, ref) {
44
+ const rootProps = {
7
45
  ...props,
8
46
  className: mergeClassName(className),
9
47
  "data-bordered": bordered ? "" : undefined,
@@ -13,8 +51,43 @@ function SurfaceImpl({ as = "div", bordered = false, children, className, elevat
13
51
  "data-radius": radius,
14
52
  "data-slot": slot,
15
53
  ref,
16
- }, children);
54
+ };
55
+ if (asChild) {
56
+ const child = Children.only(children);
57
+ if (child.type === Fragment) {
58
+ throw new Error("Surface with asChild requires one DOM or component host; a Fragment cannot receive Surface paint.");
59
+ }
60
+ const childRef = ("ref" in child.props
61
+ ? child.props.ref
62
+ : child.ref);
63
+ return cloneElement(child, mergeComposedProps(child.props, {
64
+ ...rootProps,
65
+ ref: childRef || ref ? composeRefs(childRef, ref) : undefined,
66
+ }));
67
+ }
68
+ return createElement(as, rootProps, children);
69
+ }
70
+ function mergePartClassName(base, className) {
71
+ return className ? `${base} ${className}` : base;
17
72
  }
18
- export const Surface = forwardRef(SurfaceImpl);
19
- Surface.displayName = "Surface";
73
+ export const SurfaceRoot = forwardRef(SurfaceImpl);
74
+ export const SurfaceMedia = forwardRef(function SurfaceMedia({ children, className, slot = "surface-media", style, ...props }, ref) {
75
+ return (_jsx("div", { ...props, "aria-hidden": "true", className: mergePartClassName("brick-surface__media", className), "data-slot": slot, ref: ref, style: style, children: children }));
76
+ });
77
+ export const SurfaceScrim = forwardRef(function SurfaceScrim({ className, direction = "uniform", slot = "surface-scrim", strength = "medium", style, ...props }, ref) {
78
+ return (_jsx("div", { ...props, "aria-hidden": "true", className: mergePartClassName("brick-surface__scrim", className), "data-direction": direction, "data-slot": slot, "data-strength": strength, ref: ref, style: style }));
79
+ });
80
+ export const SurfaceContent = forwardRef(function SurfaceContent({ children, className, slot = "surface-content", style, ...props }, ref) {
81
+ return (_jsx("div", { ...props, className: mergePartClassName("brick-surface__content", className), "data-slot": slot, ref: ref, style: style, children: children }));
82
+ });
83
+ SurfaceRoot.displayName = "Surface.Root";
84
+ SurfaceMedia.displayName = "Surface.Media";
85
+ SurfaceScrim.displayName = "Surface.Scrim";
86
+ SurfaceContent.displayName = "Surface.Content";
87
+ export const Surface = Object.assign(SurfaceRoot, {
88
+ Root: SurfaceRoot,
89
+ Media: SurfaceMedia,
90
+ Scrim: SurfaceScrim,
91
+ Content: SurfaceContent,
92
+ });
20
93
  //# sourceMappingURL=Surface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Surface.js","sourceRoot":"","sources":["../../../src/components/surface/Surface.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,GAKX,MAAM,OAAO,CAAC;AAqCf,SAAS,cAAc,CAAC,SAA6B;IACnD,OAAO,SAAS,CAAC,CAAC,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;AACpE,CAAC;AAED,SAAS,WAAW,CAClB,EACE,EAAE,GAAG,KAAK,EACV,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,SAAS,EACT,SAAS,GAAG,MAAM,EAClB,KAAK,GAAG,MAAM,EACd,KAAK,GAAG,MAAM,EACd,MAAM,GAAG,SAAS,EAClB,IAAI,GAAG,SAAS,EAChB,GAAG,KAAK,EACK,EACf,GAA8B;IAE9B,OAAO,aAAa,CAClB,EAAE,EACF;QACE,GAAG,KAAK;QACR,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC;QACpC,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAC1C,gBAAgB,EAAE,SAAS;QAC3B,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,MAAM;QACrB,WAAW,EAAE,IAAI;QACjB,GAAG;KACJ,EACD,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAA4B,WAAW,CAAC,CAAC;AAC1E,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"Surface.js","sourceRoot":"","sources":["../../../src/components/surface/Surface.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { Surface, type SurfaceElement, type SurfaceElevation, type SurfaceInset, type SurfaceLevel, type SurfaceProps, type SurfaceRadius, } from "./Surface.js";
1
+ export { Surface, SurfaceContent, SurfaceMedia, SurfaceRoot, SurfaceScrim, type SurfaceContentProps, type SurfaceElement, type SurfaceElevation, type SurfaceInset, type SurfaceLevel, type SurfaceMediaProps, type SurfaceProps, type SurfaceRadius, type SurfaceScrimDirection, type SurfaceScrimProps, type SurfaceScrimStrength, } from "./Surface.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/surface/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/surface/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,cAAc,EACd,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC"}
@@ -1,2 +1,2 @@
1
- export { Surface, } from "./Surface.js";
1
+ export { Surface, SurfaceContent, SurfaceMedia, SurfaceRoot, SurfaceScrim, } from "./Surface.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/surface/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,GAOR,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/surface/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,cAAc,EACd,YAAY,EACZ,WAAW,EACX,YAAY,GAYb,MAAM,cAAc,CAAC"}
@@ -1,25 +1,46 @@
1
+ import { type ResponsiveValue } from "../_responsive-value/ResponsiveValue.js";
1
2
  import { type TabsContentProps as AtomTabsContentProps, type TabsIndicatorProps as AtomTabsIndicatorProps, type TabsListProps as AtomTabsListProps, type TabsRootProps as AtomTabsRootProps, type TabsTriggerProps as AtomTabsTriggerProps } from "@flowstack-ui/atom/tabs";
2
3
  export type TabsSize = "sm" | "md" | "lg";
3
4
  export type TabsVariant = "line" | "solid" | "soft" | "enclosed";
5
+ export type TabsContentInset = "none" | "sm" | "md" | "lg";
6
+ export type TabsLayout = "auto" | "stacked" | "side";
7
+ export type TabsListColumns = 1 | 2 | 3 | 4;
8
+ export type TabsListRadius = "default" | "none";
9
+ export type TabsTriggerRadius = "default" | "none";
4
10
  export interface TabsRootProps extends AtomTabsRootProps {
5
11
  size?: TabsSize;
6
12
  variant?: TabsVariant;
7
13
  fullWidth?: boolean;
14
+ layout?: ResponsiveValue<TabsLayout>;
8
15
  }
9
- export type TabsListProps = AtomTabsListProps;
16
+ export type TabsListProps = AtomTabsListProps & {
17
+ columns?: ResponsiveValue<TabsListColumns>;
18
+ radius?: TabsListRadius;
19
+ triggerRadius?: TabsTriggerRadius;
20
+ };
10
21
  export type TabsTriggerProps = AtomTabsTriggerProps;
11
- export type TabsContentProps = AtomTabsContentProps;
22
+ export interface TabsContentProps extends AtomTabsContentProps {
23
+ inset?: TabsContentInset;
24
+ }
12
25
  export type TabsIndicatorProps = AtomTabsIndicatorProps;
13
26
  export declare const TabsRoot: import("react").ForwardRefExoticComponent<TabsRootProps & import("react").RefAttributes<HTMLDivElement>>;
14
- export declare const TabsList: import("react").ForwardRefExoticComponent<AtomTabsListProps & import("react").RefAttributes<HTMLDivElement>>;
27
+ export declare const TabsList: import("react").ForwardRefExoticComponent<AtomTabsListProps & {
28
+ columns?: ResponsiveValue<TabsListColumns>;
29
+ radius?: TabsListRadius;
30
+ triggerRadius?: TabsTriggerRadius;
31
+ } & import("react").RefAttributes<HTMLDivElement>>;
15
32
  export declare const TabsTrigger: import("react").ForwardRefExoticComponent<AtomTabsTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
16
- export declare const TabsContent: import("react").ForwardRefExoticComponent<AtomTabsContentProps & import("react").RefAttributes<HTMLDivElement>>;
33
+ export declare const TabsContent: import("react").ForwardRefExoticComponent<TabsContentProps & import("react").RefAttributes<HTMLDivElement>>;
17
34
  export declare function TabsIndicator({ className, "data-slot": slot, ...props }: TabsIndicatorProps): import("react").JSX.Element;
18
35
  export declare const Tabs: Readonly<{
19
36
  Root: import("react").ForwardRefExoticComponent<TabsRootProps & import("react").RefAttributes<HTMLDivElement>>;
20
- List: import("react").ForwardRefExoticComponent<AtomTabsListProps & import("react").RefAttributes<HTMLDivElement>>;
37
+ List: import("react").ForwardRefExoticComponent<AtomTabsListProps & {
38
+ columns?: ResponsiveValue<TabsListColumns>;
39
+ radius?: TabsListRadius;
40
+ triggerRadius?: TabsTriggerRadius;
41
+ } & import("react").RefAttributes<HTMLDivElement>>;
21
42
  Trigger: import("react").ForwardRefExoticComponent<AtomTabsTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
22
- Content: import("react").ForwardRefExoticComponent<AtomTabsContentProps & import("react").RefAttributes<HTMLDivElement>>;
43
+ Content: import("react").ForwardRefExoticComponent<TabsContentProps & import("react").RefAttributes<HTMLDivElement>>;
23
44
  Indicator: typeof TabsIndicator;
24
45
  }>;
25
46
  //# sourceMappingURL=Tabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,kBAAkB,IAAI,sBAAsB,EACjD,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,gBAAgB,IAAI,oBAAoB,EAC9C,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1C,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AACD,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAC9C,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AACpD,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AACpD,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAMxD,eAAO,MAAM,QAAQ,0GAOpB,CAAC;AAEF,eAAO,MAAM,QAAQ,8GAIpB,CAAC;AAEF,eAAO,MAAM,WAAW,oHAIvB,CAAC;AAEF,eAAO,MAAM,WAAW,iHAIvB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAE3F;AAOD,eAAO,MAAM,IAAI;;;;;;EAA0H,CAAC"}
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.tsx"],"names":[],"mappings":"AACA,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,yCAAyC,CAAC;AACzG,OAAO,EAEL,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,kBAAkB,IAAI,sBAAsB,EACjD,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,gBAAgB,IAAI,oBAAoB,EAC9C,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1C,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;AACjE,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC3D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AACrD,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5C,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,MAAM,CAAC;AAChD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnD,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;CACtC;AACD,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG;IAC9C,OAAO,CAAC,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,aAAa,CAAC,EAAE,iBAAiB,CAAC;CACnC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AACpD,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB;IAC5D,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AACD,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAMxD,eAAO,MAAM,QAAQ,0GAOpB,CAAC;AAEF,eAAO,MAAM,QAAQ;cAvBT,eAAe,CAAC,eAAe,CAAC;aACjC,cAAc;oBACP,iBAAiB;kDA4BlC,CAAC;AAEF,eAAO,MAAM,WAAW,oHAIvB,CAAC;AAEF,eAAO,MAAM,WAAW,6GAIvB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAE3F;AAOD,eAAO,MAAM,IAAI;;;kBArDL,eAAe,CAAC,eAAe,CAAC;iBACjC,cAAc;wBACP,iBAAiB;;;;;EAmDwG,CAAC"}
@@ -1,20 +1,24 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
+ import { responsiveDataAttributes } from "../_responsive-value/ResponsiveValue.js";
3
4
  import { Tabs as AtomTabs, } from "@flowstack-ui/atom/tabs";
4
5
  function classes(base, className) {
5
6
  return className ? `${base} ${className}` : base;
6
7
  }
7
- export const TabsRoot = forwardRef(function TabsRoot({ className, fullWidth = false, size = "md", variant = "line", "data-slot": slot, ...props }, ref) {
8
- return _jsx(AtomTabs.Root, { ...props, className: classes("brick-tabs", className), "data-full-width": fullWidth ? "" : undefined, "data-size": size, "data-slot": slot ?? "tabs-root", "data-variant": variant, ref: ref });
8
+ export const TabsRoot = forwardRef(function TabsRoot({ className, fullWidth = false, layout = "auto", size = "md", variant = "line", "data-slot": slot, ...props }, ref) {
9
+ return _jsx(AtomTabs.Root, { ...props, ...responsiveDataAttributes("data-layout", layout, { defaultValue: "auto" }), className: classes("brick-tabs", className), "data-full-width": fullWidth ? "" : undefined, "data-size": size, "data-slot": slot ?? "tabs-root", "data-variant": variant, ref: ref });
9
10
  });
10
- export const TabsList = forwardRef(function TabsList({ className, "data-slot": slot, ...props }, ref) {
11
- return _jsx(AtomTabs.List, { ...props, className: classes("brick-tabs-list", className), "data-slot": slot ?? "tabs-list", ref: ref });
11
+ export const TabsList = forwardRef(function TabsList({ className, columns, radius = "default", triggerRadius, "data-slot": slot, ...props }, ref) {
12
+ const columnAttributes = columns === undefined
13
+ ? {}
14
+ : responsiveDataAttributes("data-columns", columns, { alwaysInitial: true });
15
+ return _jsx(AtomTabs.List, { ...props, ...columnAttributes, className: classes("brick-tabs-list", className), "data-radius": radius, "data-slot": slot ?? "tabs-list", "data-trigger-radius": triggerRadius, ref: ref });
12
16
  });
13
17
  export const TabsTrigger = forwardRef(function TabsTrigger({ className, "data-slot": slot, ...props }, ref) {
14
18
  return _jsx(AtomTabs.Trigger, { ...props, className: classes("brick-tabs-trigger", className), "data-slot": slot ?? "tabs-trigger", ref: ref });
15
19
  });
16
- export const TabsContent = forwardRef(function TabsContent({ className, "data-slot": slot, ...props }, ref) {
17
- return _jsx(AtomTabs.Content, { ...props, className: classes("brick-tabs-content", className), "data-slot": slot ?? "tabs-content", ref: ref });
20
+ export const TabsContent = forwardRef(function TabsContent({ className, inset, "data-slot": slot, ...props }, ref) {
21
+ return _jsx(AtomTabs.Content, { ...props, className: classes("brick-tabs-content", className), "data-inset": inset, "data-slot": slot ?? "tabs-content", ref: ref });
18
22
  });
19
23
  export function TabsIndicator({ className, "data-slot": slot, ...props }) {
20
24
  return _jsx(AtomTabs.Indicator, { ...props, className: classes("brick-tabs-indicator", className), "data-slot": slot ?? "tabs-indicator" });
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EACL,IAAI,IAAI,QAAQ,GAMjB,MAAM,yBAAyB,CAAC;AAejC,SAAS,OAAO,CAAC,IAAY,EAAE,SAAkB;IAC/C,OAAO,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAChC,SAAS,QAAQ,CACf,EAAE,SAAS,EAAE,SAAS,GAAG,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAC5F,GAAG;IAEH,OAAO,KAAC,QAAQ,CAAC,IAAI,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,qBAAmB,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,eAAa,IAAI,eAAa,IAAI,IAAI,WAAW,kBAAgB,OAAO,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;AAClN,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAChC,SAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IAC/D,OAAO,KAAC,QAAQ,CAAC,IAAI,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,iBAAiB,EAAE,SAAS,CAAC,eAAa,IAAI,IAAI,WAAW,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;AAClI,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CACnC,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IAClE,OAAO,KAAC,QAAQ,CAAC,OAAO,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,oBAAoB,EAAE,SAAS,CAAC,eAAa,IAAI,IAAI,cAAc,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;AAC3I,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CACnC,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IAClE,OAAO,KAAC,QAAQ,CAAC,OAAO,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,oBAAoB,EAAE,SAAS,CAAC,eAAa,IAAI,IAAI,cAAc,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;AAC3I,CAAC,CACF,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAsB;IAC1F,OAAO,KAAC,QAAQ,CAAC,SAAS,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,sBAAsB,EAAE,SAAS,CAAC,eAAa,IAAI,IAAI,gBAAgB,GAAI,CAAC;AACvI,CAAC;AAED,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;AACnC,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;AACnC,WAAW,CAAC,WAAW,GAAG,cAAc,CAAC;AACzC,WAAW,CAAC,WAAW,GAAG,cAAc,CAAC;AAEzC,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { Tabs, TabsContent, TabsIndicator, TabsList, TabsRoot, TabsTrigger, type TabsContentProps, type TabsIndicatorProps, type TabsListProps, type TabsRootProps, type TabsSize, type TabsTriggerProps, type TabsVariant, } from "./Tabs.js";
1
+ export { Tabs, TabsContent, TabsIndicator, TabsList, TabsRoot, TabsTrigger, type TabsContentInset, type TabsContentProps, type TabsIndicatorProps, type TabsLayout, type TabsListColumns, type TabsListRadius, type TabsListProps, type TabsRootProps, type TabsSize, type TabsTriggerProps, type TabsTriggerRadius, type TabsVariant, } from "./Tabs.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,WAAW,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,WAAW,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,WAAW,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,GAQZ,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,WAAW,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,GAaZ,MAAM,WAAW,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { type CSSProperties, type HTMLAttributes, type ReactElement, type ReactNode } from "react";
2
+ import { type ResponsiveValue } from "../_responsive-value/ResponsiveValue.js";
3
+ export type { ResponsiveValue };
4
+ export type ZStackElement = "div" | "span" | "section" | "article" | "nav" | "header" | "footer" | "main" | "aside" | "ul" | "ol" | "li";
5
+ export type ZStackItemElement = "div" | "span" | "section" | "article" | "header" | "footer" | "aside" | "li";
6
+ export type ZStackAlign = "stretch" | "start" | "center" | "end";
7
+ export type ZStackJustify = "stretch" | "start" | "center" | "end";
8
+ export type ZStackItemAlign = "auto" | ZStackAlign;
9
+ export type ZStackItemJustify = "auto" | ZStackJustify;
10
+ type NativeProps = Omit<HTMLAttributes<HTMLElement>, "children" | "className" | "style">;
11
+ export interface ZStackRootProps extends NativeProps {
12
+ as?: ZStackElement;
13
+ children?: ReactNode;
14
+ align?: ResponsiveValue<ZStackAlign>;
15
+ justify?: ResponsiveValue<ZStackJustify>;
16
+ className?: string;
17
+ style?: CSSProperties;
18
+ slot?: string;
19
+ }
20
+ type ZStackItemHostProps = {
21
+ as?: ZStackItemElement;
22
+ asChild?: false;
23
+ children?: ReactNode;
24
+ } | {
25
+ as?: never;
26
+ asChild: true;
27
+ children: ReactElement;
28
+ };
29
+ export type ZStackItemProps = NativeProps & ZStackItemHostProps & {
30
+ align?: ResponsiveValue<ZStackItemAlign>;
31
+ justify?: ResponsiveValue<ZStackItemJustify>;
32
+ className?: string;
33
+ style?: CSSProperties;
34
+ slot?: string;
35
+ };
36
+ declare const ZStackRoot: import("react").ForwardRefExoticComponent<ZStackRootProps & import("react").RefAttributes<HTMLElement>>;
37
+ declare const ZStackItem: import("react").ForwardRefExoticComponent<ZStackItemProps & import("react").RefAttributes<HTMLElement>>;
38
+ export declare const ZStack: Readonly<{
39
+ Root: import("react").ForwardRefExoticComponent<ZStackRootProps & import("react").RefAttributes<HTMLElement>>;
40
+ Item: import("react").ForwardRefExoticComponent<ZStackItemProps & import("react").RefAttributes<HTMLElement>>;
41
+ }>;
42
+ export { ZStackRoot, ZStackItem };
43
+ //# sourceMappingURL=ZStack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZStack.d.ts","sourceRoot":"","sources":["../../../src/components/z-stack/ZStack.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAElB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EAEf,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,yCAAyC,CAAC;AAEjD,YAAY,EAAE,eAAe,EAAE,CAAC;AAEhC,MAAM,MAAM,aAAa,GACrB,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GACzD,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACrD,MAAM,MAAM,iBAAiB,GACzB,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAC5D,OAAO,GAAG,IAAI,CAAC;AACnB,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AACjE,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AACnE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,aAAa,CAAC;AAEvD,KAAK,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,CAAC;AAEzF,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,EAAE,CAAC,EAAE,aAAa,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,KAAK,mBAAmB,GACpB;IAAE,EAAE,CAAC,EAAE,iBAAiB,CAAC;IAAC,OAAO,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,GACjE;IAAE,EAAE,CAAC,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAE,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,mBAAmB,GAAG;IAChE,KAAK,CAAC,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAwEF,QAAA,MAAM,UAAU,yGAA2D,CAAC;AAE5E,QAAA,MAAM,UAAU,yGAA2D,CAAC;AAG5E,eAAO,MAAM,MAAM;;;EAAwD,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,70 @@
1
+ import { Children, cloneElement, createElement, forwardRef, } from "react";
2
+ import { responsiveDataAttributes, } from "../_responsive-value/ResponsiveValue.js";
3
+ function classes(base, className) {
4
+ return className ? `${base} ${className}` : base;
5
+ }
6
+ function composeRefs(...refs) {
7
+ return (value) => {
8
+ for (const ref of refs) {
9
+ if (typeof ref === "function")
10
+ ref(value);
11
+ else if (ref)
12
+ ref.current = value;
13
+ }
14
+ };
15
+ }
16
+ function mergeComposedProps(original, override) {
17
+ const merged = { ...original, ...override };
18
+ for (const [key, value] of Object.entries(override)) {
19
+ const current = original[key];
20
+ if (key.startsWith("on") && typeof current === "function" && typeof value === "function") {
21
+ merged[key] = (...args) => { value(...args); current(...args); };
22
+ }
23
+ else if (key === "className" && typeof current === "string" && typeof value === "string") {
24
+ merged[key] = `${current} ${value}`;
25
+ }
26
+ else if (key === "style" && current && value && typeof current === "object" && typeof value === "object") {
27
+ merged[key] = { ...current, ...value };
28
+ }
29
+ }
30
+ return merged;
31
+ }
32
+ function ZStackRootImpl({ as = "div", align = "stretch", justify = "stretch", className, slot = "z-stack", children, ...props }, ref) {
33
+ return createElement(as, {
34
+ ...props,
35
+ ...responsiveDataAttributes("data-align", align, { defaultValue: "stretch" }),
36
+ ...responsiveDataAttributes("data-justify", justify, { defaultValue: "stretch" }),
37
+ className: classes("brick-z-stack", className),
38
+ "data-slot": slot,
39
+ ref,
40
+ }, children);
41
+ }
42
+ function ZStackItemImpl({ as = "div", asChild = false, align = "auto", justify = "auto", className, slot = "z-stack-item", style, children, ...props }, ref) {
43
+ const itemProps = {
44
+ ...props,
45
+ ...responsiveDataAttributes("data-align", align, { defaultValue: "auto" }),
46
+ ...responsiveDataAttributes("data-justify", justify, { defaultValue: "auto" }),
47
+ className: classes("brick-z-stack-item", className),
48
+ "data-slot": slot,
49
+ ref,
50
+ style,
51
+ };
52
+ if (asChild) {
53
+ const child = Children.only(children);
54
+ const childRef = ("ref" in child.props
55
+ ? child.props.ref
56
+ : child.ref);
57
+ return cloneElement(child, mergeComposedProps(child.props, {
58
+ ...itemProps,
59
+ ref: childRef || ref ? composeRefs(childRef, ref) : undefined,
60
+ }));
61
+ }
62
+ return createElement(as, itemProps, children);
63
+ }
64
+ const ZStackRoot = forwardRef(ZStackRootImpl);
65
+ ZStackRoot.displayName = "ZStack.Root";
66
+ const ZStackItem = forwardRef(ZStackItemImpl);
67
+ ZStackItem.displayName = "ZStack.Item";
68
+ export const ZStack = Object.freeze({ Root: ZStackRoot, Item: ZStackItem });
69
+ export { ZStackRoot, ZStackItem };
70
+ //# sourceMappingURL=ZStack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZStack.js","sourceRoot":"","sources":["../../../src/components/z-stack/ZStack.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { ZStack, ZStackItem, ZStackRoot, type ZStackAlign, type ZStackElement, type ZStackItemAlign, type ZStackItemElement, type ZStackItemJustify, type ZStackItemProps, type ZStackJustify, type ZStackRootProps, type ResponsiveValue, } from "./ZStack.js";
2
+ //# sourceMappingURL=index.d.ts.map