@bysages/react 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/dist/{ai-response-BfKTmtCt.mjs → ai-response-B4DX7nmJ.mjs} +3 -1
  2. package/dist/chevron-a2nIZKN4.mjs +6 -0
  3. package/dist/components/accordion/index.d.mts +22 -4
  4. package/dist/components/accordion/index.mjs +31 -1
  5. package/dist/components/affix/index.d.mts +4 -1
  6. package/dist/components/affix/index.mjs +5 -3
  7. package/dist/components/ai/index.d.mts +1 -1
  8. package/dist/components/ai/index.mjs +5 -3
  9. package/dist/components/ai-action/index.d.mts +4 -1
  10. package/dist/components/ai-action/index.mjs +3 -1
  11. package/dist/components/ai-attachments/index.d.mts +10 -4
  12. package/dist/components/ai-attachments/index.mjs +16 -44
  13. package/dist/components/ai-message/index.d.mts +4 -1
  14. package/dist/components/ai-message/index.mjs +3 -1
  15. package/dist/components/ai-prompt-input/index.d.mts +5 -2
  16. package/dist/components/ai-prompt-input/index.mjs +10 -14
  17. package/dist/components/ai-reasoning/index.d.mts +4 -1
  18. package/dist/components/ai-reasoning/index.mjs +4 -2
  19. package/dist/components/ai-response/index.d.mts +4 -1
  20. package/dist/components/ai-response/index.mjs +1 -1
  21. package/dist/components/ai-source/index.d.mts +8 -2
  22. package/dist/components/ai-source/index.mjs +5 -2
  23. package/dist/components/ai-suggestion/index.d.mts +4 -1
  24. package/dist/components/ai-suggestion/index.mjs +3 -1
  25. package/dist/components/ai-tool/index.d.mts +4 -1
  26. package/dist/components/ai-tool/index.mjs +4 -2
  27. package/dist/components/alert/index.d.mts +2 -0
  28. package/dist/components/alert/index.mjs +11 -18
  29. package/dist/components/angle-slider/index.d.mts +19 -2
  30. package/dist/components/angle-slider/index.mjs +31 -8
  31. package/dist/components/aspect-ratio/index.d.mts +4 -1
  32. package/dist/components/aspect-ratio/index.mjs +3 -1
  33. package/dist/components/autocomplete/index.d.mts +3 -1
  34. package/dist/components/autocomplete/index.mjs +6 -1
  35. package/dist/components/avatar/index.d.mts +2 -2
  36. package/dist/components/avatar/index.mjs +9 -2
  37. package/dist/components/avatar-group/index.d.mts +4 -1
  38. package/dist/components/avatar-group/index.mjs +3 -1
  39. package/dist/components/back-top/index.d.mts +7 -1
  40. package/dist/components/back-top/index.mjs +12 -17
  41. package/dist/components/badge/index.d.mts +4 -1
  42. package/dist/components/badge/index.mjs +3 -1
  43. package/dist/components/banner/index.mjs +2 -11
  44. package/dist/components/block-ui/index.d.mts +4 -1
  45. package/dist/components/block-ui/index.mjs +3 -1
  46. package/dist/components/button/index.d.mts +4 -1
  47. package/dist/components/button/index.mjs +3 -1
  48. package/dist/components/calendar/index.d.mts +3 -1
  49. package/dist/components/calendar/index.mjs +9 -10
  50. package/dist/components/carousel/index.d.mts +21 -1
  51. package/dist/components/carousel/index.mjs +43 -2
  52. package/dist/components/cascade-select/index.d.mts +6 -1
  53. package/dist/components/cascade-select/index.mjs +12 -35
  54. package/dist/components/checkbox/index.d.mts +20 -2
  55. package/dist/components/checkbox/index.mjs +28 -8
  56. package/dist/components/checkbox-group/index.d.mts +8 -6
  57. package/dist/components/checkbox-group/index.mjs +44 -48
  58. package/dist/components/chip/index.d.mts +4 -1
  59. package/dist/components/chip/index.mjs +3 -1
  60. package/dist/components/client-only/index.d.mts +7 -2
  61. package/dist/components/client-only/index.mjs +5 -1
  62. package/dist/components/clipboard/index.d.mts +17 -4
  63. package/dist/components/clipboard/index.mjs +33 -5
  64. package/dist/components/collapsible/index.d.mts +16 -4
  65. package/dist/components/collapsible/index.mjs +25 -1
  66. package/dist/components/color-picker/index.d.mts +20 -4
  67. package/dist/components/color-picker/index.mjs +56 -14
  68. package/dist/components/combobox/index.d.mts +27 -1
  69. package/dist/components/combobox/index.mjs +62 -5
  70. package/dist/components/command/index.d.mts +4 -1
  71. package/dist/components/command/index.mjs +7 -1
  72. package/dist/components/comment/index.d.mts +4 -1
  73. package/dist/components/comment/index.mjs +3 -1
  74. package/dist/components/config-provider/index.d.mts +4 -1
  75. package/dist/components/config-provider/index.mjs +3 -1
  76. package/dist/components/container/index.d.mts +4 -1
  77. package/dist/components/container/index.mjs +3 -1
  78. package/dist/components/data-view/index.d.mts +4 -1
  79. package/dist/components/data-view/index.mjs +3 -1
  80. package/dist/components/date-input/index.d.mts +19 -4
  81. package/dist/components/date-input/index.mjs +33 -9
  82. package/dist/components/date-picker/index.d.mts +21 -4
  83. package/dist/components/date-picker/index.mjs +58 -11
  84. package/dist/components/deferred-content/index.d.mts +4 -1
  85. package/dist/components/deferred-content/index.mjs +3 -1
  86. package/dist/components/descriptions/index.d.mts +10 -2
  87. package/dist/components/descriptions/index.mjs +13 -8
  88. package/dist/components/dialog/index.d.mts +18 -5
  89. package/dist/components/dialog/index.mjs +43 -1
  90. package/dist/components/download-trigger/index.d.mts +7 -2
  91. package/dist/components/download-trigger/index.mjs +5 -1
  92. package/dist/components/drawer/index.d.mts +18 -6
  93. package/dist/components/drawer/index.mjs +40 -1
  94. package/dist/components/dynamic-input/index.d.mts +4 -1
  95. package/dist/components/dynamic-input/index.mjs +10 -18
  96. package/dist/components/editable/index.d.mts +28 -7
  97. package/dist/components/editable/index.mjs +43 -4
  98. package/dist/components/ellipsis/index.d.mts +4 -1
  99. package/dist/components/ellipsis/index.mjs +3 -1
  100. package/dist/components/field/index.d.mts +30 -5
  101. package/dist/components/field/index.mjs +36 -3
  102. package/dist/components/fieldset/index.d.mts +19 -4
  103. package/dist/components/fieldset/index.mjs +28 -3
  104. package/dist/components/file-upload/index.d.mts +29 -9
  105. package/dist/components/file-upload/index.mjs +46 -10
  106. package/dist/components/floating-panel/index.d.mts +18 -6
  107. package/dist/components/floating-panel/index.mjs +55 -1
  108. package/dist/components/focus-trap/index.d.mts +7 -2
  109. package/dist/components/focus-trap/index.mjs +5 -1
  110. package/dist/components/form/index.d.mts +1 -1
  111. package/dist/components/form/index.mjs +5 -2
  112. package/dist/components/frame/index.d.mts +4 -8
  113. package/dist/components/frame/index.mjs +13 -1
  114. package/dist/components/grid/index.d.mts +4 -1
  115. package/dist/components/grid/index.mjs +3 -1
  116. package/dist/components/highlight/index.d.mts +3 -5
  117. package/dist/components/highlight/index.mjs +6 -1
  118. package/dist/components/hover-card/index.d.mts +20 -4
  119. package/dist/components/hover-card/index.mjs +32 -1
  120. package/dist/components/icon/index.d.mts +10 -8
  121. package/dist/components/icon/index.mjs +5 -3
  122. package/dist/components/image/index.d.mts +5 -2
  123. package/dist/components/image/index.mjs +14 -29
  124. package/dist/components/image-cropper/index.d.mts +13 -2
  125. package/dist/components/image-cropper/index.mjs +34 -2
  126. package/dist/components/image-viewer/index.d.mts +2 -24
  127. package/dist/components/image-viewer/index.mjs +3 -113
  128. package/dist/components/input/index.d.mts +3 -1
  129. package/dist/components/input/index.mjs +1 -1
  130. package/dist/components/json-tree-view/index.d.mts +17 -1
  131. package/dist/components/json-tree-view/index.mjs +26 -5
  132. package/dist/components/kbd/index.d.mts +4 -1
  133. package/dist/components/kbd/index.mjs +3 -1
  134. package/dist/components/layout/index.d.mts +25 -7
  135. package/dist/components/layout/index.mjs +157 -63
  136. package/dist/components/link/index.d.mts +4 -1
  137. package/dist/components/link/index.mjs +3 -1
  138. package/dist/components/listbox/index.d.mts +22 -1
  139. package/dist/components/listbox/index.mjs +36 -4
  140. package/dist/components/marquee/index.d.mts +18 -1
  141. package/dist/components/marquee/index.mjs +34 -2
  142. package/dist/components/masonry/index.d.mts +4 -1
  143. package/dist/components/masonry/index.mjs +3 -1
  144. package/dist/components/media-player/index.d.mts +2 -0
  145. package/dist/components/media-player/index.mjs +2 -0
  146. package/dist/components/mentions/index.d.mts +1 -1
  147. package/dist/components/mentions/index.mjs +1 -1
  148. package/dist/components/menu/index.d.mts +29 -11
  149. package/dist/components/menu/index.mjs +34 -12
  150. package/dist/components/menubar/index.d.mts +3 -1
  151. package/dist/components/menubar/index.mjs +6 -1
  152. package/dist/components/navigation-menu/index.d.mts +25 -1
  153. package/dist/components/navigation-menu/index.mjs +36 -1
  154. package/dist/components/number-input/index.d.mts +28 -6
  155. package/dist/components/number-input/index.mjs +33 -8
  156. package/dist/components/order-list/index.d.mts +4 -1
  157. package/dist/components/order-list/index.mjs +26 -24
  158. package/dist/components/pagination/index.d.mts +23 -3
  159. package/dist/components/pagination/index.mjs +57 -12
  160. package/dist/components/password-input/index.d.mts +24 -6
  161. package/dist/components/password-input/index.mjs +31 -8
  162. package/dist/components/pin-input/index.d.mts +23 -5
  163. package/dist/components/pin-input/index.mjs +29 -7
  164. package/dist/components/popconfirm/index.d.mts +9 -5
  165. package/dist/components/popconfirm/index.mjs +23 -18
  166. package/dist/components/popover/index.d.mts +2 -8
  167. package/dist/components/popover/index.mjs +44 -4
  168. package/dist/components/presence/index.d.mts +10 -2
  169. package/dist/components/presence/index.mjs +6 -1
  170. package/dist/components/progress/index.d.mts +18 -3
  171. package/dist/components/progress/index.mjs +34 -9
  172. package/dist/components/progress-group/index.d.mts +4 -1
  173. package/dist/components/progress-group/index.mjs +4 -2
  174. package/dist/components/qr-code/index.d.mts +14 -1
  175. package/dist/components/qr-code/index.mjs +26 -2
  176. package/dist/components/radio-group/index.d.mts +27 -2
  177. package/dist/components/radio-group/index.mjs +32 -8
  178. package/dist/components/rating-group/index.d.mts +20 -3
  179. package/dist/components/rating-group/index.mjs +26 -8
  180. package/dist/components/result/index.d.mts +1 -1
  181. package/dist/components/result/index.mjs +2 -2
  182. package/dist/components/scroll-area/index.d.mts +14 -1
  183. package/dist/components/scroll-area/index.mjs +32 -2
  184. package/dist/components/segment-group/index.d.mts +28 -2
  185. package/dist/components/segment-group/index.mjs +34 -7
  186. package/dist/components/select/index.d.mts +2 -2
  187. package/dist/components/select/index.mjs +1 -1
  188. package/dist/components/separator/index.d.mts +4 -1
  189. package/dist/components/separator/index.mjs +3 -1
  190. package/dist/components/signature-pad/index.d.mts +25 -5
  191. package/dist/components/signature-pad/index.mjs +37 -3
  192. package/dist/components/skeleton/index.d.mts +4 -1
  193. package/dist/components/skeleton/index.mjs +3 -1
  194. package/dist/components/slider/index.d.mts +21 -2
  195. package/dist/components/slider/index.mjs +31 -8
  196. package/dist/components/spinner/index.d.mts +4 -1
  197. package/dist/components/spinner/index.mjs +3 -1
  198. package/dist/components/split-button/index.d.mts +3 -1
  199. package/dist/components/split-button/index.mjs +12 -17
  200. package/dist/components/splitter/index.d.mts +17 -4
  201. package/dist/components/splitter/index.mjs +35 -1
  202. package/dist/components/spotlight/index.d.mts +4 -1
  203. package/dist/components/spotlight/index.mjs +3 -1
  204. package/dist/components/stack/index.d.mts +4 -1
  205. package/dist/components/stack/index.mjs +6 -4
  206. package/dist/components/steps/index.d.mts +26 -6
  207. package/dist/components/steps/index.mjs +26 -11
  208. package/dist/components/swap/index.d.mts +11 -5
  209. package/dist/components/swap/index.mjs +30 -3
  210. package/dist/components/switch/index.d.mts +20 -2
  211. package/dist/components/switch/index.mjs +27 -8
  212. package/dist/components/table/index.d.mts +4 -1
  213. package/dist/components/table/index.mjs +26 -56
  214. package/dist/components/tabs/index.d.mts +24 -2
  215. package/dist/components/tabs/index.mjs +25 -9
  216. package/dist/components/tags-input/index.d.mts +33 -8
  217. package/dist/components/tags-input/index.mjs +41 -9
  218. package/dist/components/terminal/index.d.mts +4 -1
  219. package/dist/components/terminal/index.mjs +3 -1
  220. package/dist/components/textarea/index.d.mts +4 -1
  221. package/dist/components/textarea/index.mjs +3 -1
  222. package/dist/components/timer/index.d.mts +18 -1
  223. package/dist/components/timer/index.mjs +51 -2
  224. package/dist/components/toast/index.d.mts +3 -6
  225. package/dist/components/toast/index.mjs +22 -2
  226. package/dist/components/toc/index.d.mts +19 -5
  227. package/dist/components/toc/index.mjs +31 -5
  228. package/dist/components/toggle/index.d.mts +11 -4
  229. package/dist/components/toggle/index.mjs +21 -1
  230. package/dist/components/toggle-group/index.d.mts +26 -2
  231. package/dist/components/toggle-group/index.mjs +31 -6
  232. package/dist/components/toolbar/index.d.mts +4 -1
  233. package/dist/components/toolbar/index.mjs +3 -1
  234. package/dist/components/tooltip/index.d.mts +17 -4
  235. package/dist/components/tooltip/index.mjs +28 -1
  236. package/dist/components/tour/index.d.mts +18 -9
  237. package/dist/components/tour/index.mjs +44 -2
  238. package/dist/components/transfer/index.d.mts +3 -1
  239. package/dist/components/transfer/index.mjs +14 -26
  240. package/dist/components/tree-select/index.d.mts +3 -1
  241. package/dist/components/tree-select/index.mjs +11 -22
  242. package/dist/components/tree-view/index.d.mts +22 -2
  243. package/dist/components/tree-view/index.mjs +50 -8
  244. package/dist/components/typography/index.d.mts +4 -0
  245. package/dist/components/typography/index.mjs +1 -0
  246. package/dist/components/user/index.d.mts +4 -1
  247. package/dist/components/user/index.mjs +3 -1
  248. package/dist/components/virtual-list/index.d.mts +4 -1
  249. package/dist/components/virtual-list/index.mjs +10 -12
  250. package/dist/components/watermark/index.d.mts +4 -1
  251. package/dist/components/watermark/index.mjs +4 -2
  252. package/dist/family-DE_GQeeM.mjs +9 -0
  253. package/dist/icon-BALgGtNK.mjs +18 -0
  254. package/dist/id-C37UYLwJ.mjs +13 -0
  255. package/dist/image-viewer-Cf6thHax.mjs +141 -0
  256. package/dist/{index-Uefyw7Im.d.mts → index-Bbg4heDO.d.mts} +12 -7
  257. package/dist/index-BcRdWGY-.d.mts +115 -0
  258. package/dist/{index-Iy8m0Qev.d.mts → index-D_iKc2Uw.d.mts} +31 -2
  259. package/dist/{index-Dn5mHf1g.d.mts → index-DdNKngUQ.d.mts} +56 -17
  260. package/dist/index-Dj8S4eyJ.d.mts +41 -0
  261. package/dist/index-Eu-Bttta.d.mts +24 -0
  262. package/dist/{index-uPyYiWaL.d.mts → index-PsgGWW3m.d.mts} +8 -2
  263. package/dist/index.d.mts +36 -35
  264. package/dist/index.mjs +11 -10
  265. package/dist/{input-2oezH-dY.mjs → input-C21Zzuy6.mjs} +3 -1
  266. package/dist/media-player-gQrnxU52.mjs +554 -0
  267. package/dist/{mentions-DMIBCBOd.mjs → mentions-BuWibdci.mjs} +74 -42
  268. package/dist/select-ozUFq0zd.mjs +121 -0
  269. package/package.json +3 -3
  270. package/dist/chevron-BeHvt46K.mjs +0 -17
  271. package/dist/glyph-VI989p8H.mjs +0 -14
  272. package/dist/select-eAHutw56.mjs +0 -70
@@ -5,5 +5,8 @@ export interface SpinnerProps extends HTMLAttributes<HTMLElement> {
5
5
  }
6
6
  /** A wheel of waiting: one arc of ink turning about its center. Quiet by
7
7
  * default — it reports progress without claiming attention. */
8
- export declare function Spinner({ size, children, ...rest }: SpinnerProps): import("react").JSX.Element;
8
+ declare function SpinnerImpl({ size, children, ...rest }: SpinnerProps): import("react").JSX.Element;
9
+ export declare const Spinner: typeof SpinnerImpl & {
10
+ Root: typeof SpinnerImpl;
11
+ };
9
12
  //#endregion
@@ -1,10 +1,11 @@
1
+ import { t as withSelfRoot } from "../../family-DE_GQeeM.mjs";
1
2
  import { n as useComponentMessages } from "../../messages-1jJWtaYU.mjs";
2
3
  import { injectComponentStyle } from "@bysages/core";
3
4
  import { jsx, jsxs } from "react/jsx-runtime";
4
5
  //#region src/components/spinner/index.tsx
5
6
  /** A wheel of waiting: one arc of ink turning about its center. Quiet by
6
7
  * default — it reports progress without claiming attention. */
7
- function Spinner({ size = "md", children, ...rest }) {
8
+ function SpinnerImpl({ size = "md", children, ...rest }) {
8
9
  injectComponentStyle("spinner");
9
10
  const messages = useComponentMessages();
10
11
  return /* @__PURE__ */ jsxs("span", {
@@ -34,5 +35,6 @@ function Spinner({ size = "md", children, ...rest }) {
34
35
  }), children]
35
36
  });
36
37
  }
38
+ const Spinner = withSelfRoot(SpinnerImpl);
37
39
  //#endregion
38
40
  export { Spinner };
@@ -1,3 +1,4 @@
1
+ import { Menu } from "../menu/index.mjs";
1
2
  import { HTMLAttributes } from "react";
2
3
  //#region src/components/split-button/index.d.ts
3
4
  export interface SplitButtonEntry {
@@ -32,5 +33,6 @@ export interface SplitButtonProps extends Omit<HTMLAttributes<HTMLDivElement>, "
32
33
  * button stylesheet's trigger register dresses it. The popup keeps the
33
34
  * menu parts untouched.
34
35
  */
35
- export declare function SplitButton({ label, items, variant, tone, size, disabled, onClick, onSelect, ...rest }: SplitButtonProps): import("react").JSX.Element;
36
+ declare function SplitButtonImpl({ label, items, variant, tone, size, disabled, onClick, onSelect, ...rest }: SplitButtonProps): import("react").JSX.Element;
37
+ export declare const SplitButton: typeof SplitButtonImpl & typeof Menu;
36
38
  //#endregion
@@ -1,5 +1,8 @@
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
1
3
  import { n as useComponentMessages } from "../../messages-1jJWtaYU.mjs";
2
4
  import { Button } from "../button/index.mjs";
5
+ import { Menu as Menu$1 } from "../menu/index.mjs";
3
6
  import { injectComponentStyle } from "@bysages/core";
4
7
  import { jsx, jsxs } from "react/jsx-runtime";
5
8
  import { Portal } from "@ark-ui/react/portal";
@@ -14,9 +17,10 @@ import { Menu } from "@ark-ui/react/menu";
14
17
  * button stylesheet's trigger register dresses it. The popup keeps the
15
18
  * menu parts untouched.
16
19
  */
17
- function SplitButton({ label, items = [], variant = "solid", tone = "ink", size = "md", disabled = false, onClick, onSelect, ...rest }) {
20
+ function SplitButtonImpl({ label, items = [], variant = "solid", tone = "ink", size = "md", disabled = false, onClick, onSelect, ...rest }) {
18
21
  injectComponentStyle("split-button");
19
22
  injectComponentStyle("menu");
23
+ const hostId = useElementId("split-button", rest);
20
24
  const messages = useComponentMessages();
21
25
  return /* @__PURE__ */ jsxs("div", {
22
26
  ...rest,
@@ -30,6 +34,7 @@ function SplitButton({ label, items = [], variant = "solid", tone = "ink", size
30
34
  onClick,
31
35
  children: label
32
36
  }), /* @__PURE__ */ jsxs(Menu.Root, {
37
+ id: `${hostId}:menu`,
33
38
  positioning: { placement: "bottom-end" },
34
39
  children: [/* @__PURE__ */ jsx(Menu.Trigger, {
35
40
  asChild: true,
@@ -42,7 +47,7 @@ function SplitButton({ label, items = [], variant = "solid", tone = "ink", size
42
47
  "data-square": "true",
43
48
  "data-motion": "ink-ripple lit",
44
49
  "aria-label": messages.more.actions,
45
- children: chevronDown()
50
+ children: chevronDown
46
51
  })
47
52
  }), /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(Menu.Positioner, { children: /* @__PURE__ */ jsx(Menu.Content, { children: items.map((entry) => /* @__PURE__ */ jsx(Menu.Item, {
48
53
  value: entry.value,
@@ -54,20 +59,10 @@ function SplitButton({ label, items = [], variant = "solid", tone = "ink", size
54
59
  })]
55
60
  });
56
61
  }
57
- /** One stroke pointing down: all a fitted dropdown arrow needs. */
58
- function chevronDown() {
59
- return /* @__PURE__ */ jsx("svg", {
60
- width: 16,
61
- height: 16,
62
- viewBox: "0 0 24 24",
63
- fill: "none",
64
- stroke: "currentColor",
65
- strokeWidth: 1.75,
66
- strokeLinecap: "round",
67
- strokeLinejoin: "round",
68
- "aria-hidden": "true",
69
- children: /* @__PURE__ */ jsx("path", { d: "m6 9 6 6 6-6" })
70
- });
71
- }
62
+ const SplitButton = Object.assign(SplitButtonImpl, Menu$1);
63
+ const chevronDown = iconNode("chevron-down", {
64
+ width: 16,
65
+ height: 16
66
+ });
72
67
  //#endregion
73
68
  export { SplitButton };
@@ -1,7 +1,20 @@
1
1
  import { Splitter as Splitter$1 } from "@ark-ui/react/splitter";
2
2
  //#region src/components/splitter/index.d.ts
3
- /** Ark's Splitter, dressed in the paper-and-ink system: panels divide on
4
- * a hairline and a small paper-seal thumb answers the hand. The API is
5
- * Ark's own — Root, Panel, ResizeTrigger, ResizeTriggerIndicator. */
6
- export declare const Splitter: typeof Splitter$1;
3
+ export type SplitterItem = {
4
+ id: string;
5
+ label: string;
6
+ };
7
+ export interface SplitterFacadeProps {
8
+ items: SplitterItem[];
9
+ defaultValue?: number[];
10
+ value?: number[];
11
+ orientation?: "horizontal" | "vertical";
12
+ className?: string;
13
+ }
14
+ declare function SplitterFacade({ items, defaultValue, value, orientation, className }: SplitterFacadeProps): import("react").JSX.Element;
15
+ declare namespace SplitterFacade {
16
+ var displayName: string;
17
+ }
18
+ type SplitterParts = typeof Splitter$1;
19
+ export declare const Splitter: typeof SplitterFacade & SplitterParts;
7
20
  //#endregion
@@ -1,10 +1,44 @@
1
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
1
2
  import { injectComponentStyle } from "@bysages/core";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ import { Fragment as Fragment$1 } from "react";
2
5
  import { Splitter as Splitter$1 } from "@ark-ui/react/splitter";
3
6
  //#region src/components/splitter/index.tsx
4
7
  /** Ark's Splitter, dressed in the paper-and-ink system: panels divide on
5
8
  * a hairline and a small paper-seal thumb answers the hand. The API is
6
9
  * Ark's own — Root, Panel, ResizeTrigger, ResizeTriggerIndicator. */
7
- const Splitter = Splitter$1;
10
+ function SplitterRoot(props) {
11
+ const id = useElementId("splitter", props);
12
+ return /* @__PURE__ */ jsx(Splitter$1.Root, {
13
+ ...props,
14
+ id
15
+ });
16
+ }
17
+ function SplitterFacade({ items, defaultValue, value, orientation = "horizontal", className }) {
18
+ return /* @__PURE__ */ jsx(SplitterRoot, {
19
+ className,
20
+ orientation,
21
+ panels: items.map((item) => ({ id: item.id })),
22
+ ...defaultValue === void 0 ? {} : { defaultSize: defaultValue },
23
+ ...value === void 0 ? {} : { size: value },
24
+ children: items.map((item, index) => {
25
+ const next = items.at(index + 1);
26
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Splitter$1.Panel, {
27
+ id: item.id,
28
+ children: item.label
29
+ }), next ? /* @__PURE__ */ jsx(Splitter$1.ResizeTrigger, {
30
+ id: `${item.id}:${next.id}`,
31
+ "aria-label": "Resize panels",
32
+ children: /* @__PURE__ */ jsx(Splitter$1.ResizeTriggerIndicator, {})
33
+ }) : null] }, item.id);
34
+ })
35
+ });
36
+ }
37
+ SplitterFacade.displayName = "SSplitter";
38
+ const Splitter = Object.assign(SplitterFacade, {
39
+ ...Splitter$1,
40
+ Root: SplitterRoot
41
+ });
8
42
  injectComponentStyle("splitter");
9
43
  //#endregion
10
44
  export { Splitter };
@@ -8,5 +8,8 @@ export interface SpotlightProps extends HTMLAttributes<HTMLDivElement> {
8
8
  /** The ink-light card: a vessel whose rim and face take light from the
9
9
  * reader's hand. The wrapper only measures and writes the geometry —
10
10
  * the lamp itself is the two layers the stylesheet paints. */
11
- export declare function Spotlight({ radius, children, ...rest }: SpotlightProps): import("react").JSX.Element;
11
+ declare function SpotlightImpl({ radius, children, ...rest }: SpotlightProps): import("react").JSX.Element;
12
+ export declare const Spotlight: typeof SpotlightImpl & {
13
+ Root: typeof SpotlightImpl;
14
+ };
12
15
  //#endregion
@@ -1,10 +1,11 @@
1
+ import { t as withSelfRoot } from "../../family-DE_GQeeM.mjs";
1
2
  import { injectComponentStyle } from "@bysages/core";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  //#region src/components/spotlight/index.tsx
4
5
  /** The ink-light card: a vessel whose rim and face take light from the
5
6
  * reader's hand. The wrapper only measures and writes the geometry —
6
7
  * the lamp itself is the two layers the stylesheet paints. */
7
- function Spotlight({ radius, children, ...rest }) {
8
+ function SpotlightImpl({ radius, children, ...rest }) {
8
9
  injectComponentStyle("spotlight");
9
10
  const track = (event) => {
10
11
  const host = event.currentTarget;
@@ -29,5 +30,6 @@ function Spotlight({ radius, children, ...rest }) {
29
30
  children
30
31
  });
31
32
  }
33
+ const Spotlight = withSelfRoot(SpotlightImpl);
32
34
  //#endregion
33
35
  export { Spotlight };
@@ -7,5 +7,8 @@ export interface StackProps extends HTMLAttributes<HTMLDivElement> {
7
7
  align?: string;
8
8
  justify?: string;
9
9
  }
10
- export declare function Stack({ direction, gap, wrap, align, justify, ...rest }: StackProps): import("react").JSX.Element;
10
+ declare function StackImpl({ direction, gap, wrap, align, justify, ...rest }: StackProps): import("react").JSX.Element;
11
+ export declare const Stack: typeof StackImpl & {
12
+ Root: typeof StackImpl;
13
+ };
11
14
  //#endregion
@@ -1,3 +1,4 @@
1
+ import { t as withSelfRoot } from "../../family-DE_GQeeM.mjs";
1
2
  import { injectComponentStyle } from "@bysages/core";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  //#region src/components/stack/index.tsx
@@ -11,14 +12,14 @@ const gapVars = {
11
12
  lg: "var(--bs-gap-lg)",
12
13
  xl: "var(--bs-gap-xl)"
13
14
  };
14
- function Stack({ direction = "column", gap = "md", wrap = false, align, justify, ...rest }) {
15
+ function StackImpl({ direction = "column", gap = "md", wrap = false, align, justify, ...rest }) {
15
16
  injectComponentStyle("stack");
16
17
  const style = {
17
18
  ...rest.style,
18
19
  "--bs-stack-gap": gapVars[gap] ?? gapVars.md,
19
- alignItems: align,
20
- justifyContent: justify,
21
- flexWrap: wrap ? "wrap" : void 0
20
+ "--bs-stack-align": align,
21
+ "--bs-stack-justify": justify,
22
+ "--bs-stack-wrap": wrap ? "wrap" : void 0
22
23
  };
23
24
  return /* @__PURE__ */ jsx("div", {
24
25
  ...rest,
@@ -28,5 +29,6 @@ function Stack({ direction = "column", gap = "md", wrap = false, align, justify,
28
29
  "data-direction": direction
29
30
  });
30
31
  }
32
+ const Stack = withSelfRoot(StackImpl);
31
33
  //#endregion
32
34
  export { Stack };
@@ -5,7 +5,28 @@ type StepsRootProps = ComponentProps<typeof Steps$1.Root> & {
5
5
  /** One rung of the control-height ladder every indicator stands on. */
6
6
  size?: "sm" | "md" | "lg";
7
7
  };
8
- declare function StepsRoot({ size, ...rest }: StepsRootProps): import("react").JSX.Element;
8
+ declare function StepsRoot(props: StepsRootProps): import("react").JSX.Element;
9
+ type StepsItem = {
10
+ title: string;
11
+ };
12
+ export interface StepsFacadeProps {
13
+ items: StepsItem[];
14
+ step?: number;
15
+ defaultStep?: number;
16
+ linear?: boolean;
17
+ orientation?: "horizontal" | "vertical";
18
+ /** One rung of the control-height ladder every indicator stands on. */
19
+ size?: "sm" | "md" | "lg";
20
+ className?: string;
21
+ onStepChange?: (step: number) => void;
22
+ }
23
+ declare function StepsFacade({ items, step, defaultStep, linear, orientation, size, className, onStepChange }: StepsFacadeProps): import("react").JSX.Element;
24
+ declare namespace StepsFacade {
25
+ var displayName: string;
26
+ }
27
+ /** The machine wraps each tab in an item div; presentation keeps the
28
+ * tablist owned children legal while the tab itself keeps its role. */
29
+ declare function StepsItem(props: ComponentProps<typeof Steps$1.Item>): import("react").JSX.Element;
9
30
  /**
10
31
  * Steps — linear progress through a sequence.
11
32
  *
@@ -13,11 +34,10 @@ declare function StepsRoot({ size, ...rest }: StepsRootProps): import("react").J
13
34
  * PrevTrigger, NextTrigger, Progress. Indicator and Separator carry
14
35
  * data-complete / data-current / data-incomplete.
15
36
  */
16
- /** The machine wraps each tab in an item div; presentation keeps the
17
- * tablist owned children legal while the tab itself keeps its role. */
18
- declare function StepsItem(props: ComponentProps<typeof Steps$1.Item>): import("react").JSX.Element;
19
- export declare const Steps: Omit<typeof Steps$1, "Root" | "Item"> & {
37
+ type StepsParts = Omit<typeof Steps$1, "Root" | "Item"> & {
20
38
  Root: typeof StepsRoot;
21
39
  Item: typeof StepsItem;
22
40
  };
23
- //#endregion
41
+ export declare const Steps: typeof StepsFacade & StepsParts;
42
+ //#endregion
43
+ export { StepsItem };
@@ -1,20 +1,35 @@
1
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
1
2
  import { injectComponentStyle } from "@bysages/core";
2
- import { jsx } from "react/jsx-runtime";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
3
4
  import { Steps as Steps$1 } from "@ark-ui/react/steps";
4
5
  //#region src/components/steps/index.tsx
5
- function StepsRoot({ size = "md", ...rest }) {
6
+ function StepsRoot(props) {
7
+ const id = useElementId("steps", props);
8
+ const { size = "md", ...rest } = props;
6
9
  return /* @__PURE__ */ jsx(Steps$1.Root, {
7
10
  ...rest,
11
+ id,
8
12
  "data-size": size
9
13
  });
10
14
  }
11
- /**
12
- * Steps — linear progress through a sequence.
13
- *
14
- * Parts: Root, List, Item, Trigger, Indicator, Separator, Content,
15
- * PrevTrigger, NextTrigger, Progress. Indicator and Separator carry
16
- * data-complete / data-current / data-incomplete.
17
- */
15
+ function StepsFacade({ items, step, defaultStep = 0, linear = false, orientation = "horizontal", size = "md", className, onStepChange }) {
16
+ return /* @__PURE__ */ jsx(StepsRoot, {
17
+ className,
18
+ size,
19
+ count: items.length,
20
+ linear,
21
+ orientation,
22
+ defaultStep,
23
+ ...step === void 0 ? {} : { step },
24
+ onStepChange: (details) => onStepChange?.(details.step),
25
+ children: /* @__PURE__ */ jsx(Steps$1.List, { children: items.map((item, index) => /* @__PURE__ */ jsxs(Steps$1.Item, {
26
+ index,
27
+ role: "presentation",
28
+ children: [/* @__PURE__ */ jsxs(Steps$1.Trigger, { children: [/* @__PURE__ */ jsx(Steps$1.Indicator, { children: String(index + 1) }), item.title] }), /* @__PURE__ */ jsx(Steps$1.Separator, {})]
29
+ }, item.title)) })
30
+ });
31
+ }
32
+ StepsFacade.displayName = "SSteps";
18
33
  /** The machine wraps each tab in an item div; presentation keeps the
19
34
  * tablist owned children legal while the tab itself keeps its role. */
20
35
  function StepsItem(props) {
@@ -23,11 +38,11 @@ function StepsItem(props) {
23
38
  role: "presentation"
24
39
  });
25
40
  }
26
- const Steps = {
41
+ const Steps = Object.assign(StepsFacade, {
27
42
  ...Steps$1,
28
43
  Root: StepsRoot,
29
44
  Item: StepsItem
30
- };
45
+ });
31
46
  injectComponentStyle("steps");
32
47
  //#endregion
33
48
  export { Steps };
@@ -1,8 +1,14 @@
1
+ import { ReactNode } from "react";
1
2
  import { Swap as Swap$1 } from "@ark-ui/react/swap";
2
3
  //#region src/components/swap/index.d.ts
3
- /** Ark's Swap, dressed in the paper-and-ink system: two impressions
4
- * occupying one seal, the arriving one growing into place on the spring
5
- * while the departing one shrinks away. The API is Ark's own — Root,
6
- * Indicator (type="on" | "off"), RootProvider. */
7
- export declare const Swap: typeof Swap$1;
4
+ interface SwapFacadeProps {
5
+ swap?: boolean;
6
+ on?: ReactNode;
7
+ off?: ReactNode;
8
+ children?: ReactNode;
9
+ }
10
+ /** The one-tag path for the default check/cross impression; custom
11
+ * transitions and indicators stay on the anatomy. */
12
+ declare function SwapFacade({ swap, on, off }: SwapFacadeProps): import("react").JSX.Element;
13
+ export declare const Swap: typeof SwapFacade & typeof Swap$1;
8
14
  //#endregion
@@ -1,11 +1,38 @@
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
1
3
  import { injectComponentStyle } from "@bysages/core";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
2
5
  import { Swap as Swap$1 } from "@ark-ui/react/swap";
3
6
  //#region src/components/swap/index.tsx
4
- /** Ark's Swap, dressed in the paper-and-ink system: two impressions
7
+ /** Swap, dressed in the paper-and-ink system: two impressions
5
8
  * occupying one seal, the arriving one growing into place on the spring
6
- * while the departing one shrinks away. The API is Ark's own — Root,
9
+ * while the departing one shrinks away. The parts — Root,
7
10
  * Indicator (type="on" | "off"), RootProvider. */
8
- const Swap = Swap$1;
11
+ function SwapRoot(props) {
12
+ const id = useElementId("swap", props);
13
+ return /* @__PURE__ */ jsx(Swap$1.Root, {
14
+ ...props,
15
+ id
16
+ });
17
+ }
18
+ /** The one-tag path for the default check/cross impression; custom
19
+ * transitions and indicators stay on the anatomy. */
20
+ function SwapFacade({ swap = false, on, off }) {
21
+ return /* @__PURE__ */ jsxs(SwapRoot, {
22
+ swap,
23
+ children: [/* @__PURE__ */ jsx(Swap$1.Indicator, {
24
+ type: "on",
25
+ children: on ?? iconNode("check")
26
+ }), /* @__PURE__ */ jsx(Swap$1.Indicator, {
27
+ type: "off",
28
+ children: off ?? iconNode("x")
29
+ })]
30
+ });
31
+ }
32
+ const Swap = Object.assign(SwapFacade, {
33
+ ...Swap$1,
34
+ Root: SwapRoot
35
+ });
9
36
  injectComponentStyle("swap");
10
37
  //#endregion
11
38
  export { Swap };
@@ -5,12 +5,30 @@ type SwitchRootProps = ComponentProps<typeof Switch$1.Root> & {
5
5
  /** One rung for the thumb; the track travels with it. */
6
6
  size?: "sm" | "md" | "lg";
7
7
  };
8
- declare function SwitchRoot({ size, ...rest }: SwitchRootProps): import("react").JSX.Element;
8
+ declare function SwitchRoot(props: SwitchRootProps): import("react").JSX.Element;
9
+ export interface SwitchFacadeProps {
10
+ value?: boolean;
11
+ defaultValue?: boolean;
12
+ label?: string;
13
+ disabled?: boolean;
14
+ invalid?: boolean;
15
+ required?: boolean;
16
+ readOnly?: boolean;
17
+ /** One rung for the thumb; the track travels with it. */
18
+ size?: "sm" | "md" | "lg";
19
+ className?: string;
20
+ onValueChange?: (value: boolean) => void;
21
+ }
22
+ declare function SwitchFacade({ value, defaultValue, label, disabled, invalid, required, readOnly, size, className, onValueChange }: SwitchFacadeProps): import("react").JSX.Element;
23
+ declare namespace SwitchFacade {
24
+ var displayName: string;
25
+ }
9
26
  /** Ark's Switch, dressed in the paper-and-ink system: a track that rests
10
27
  * in the inset shade of the paper and fills flat with primary ink when on,
11
28
  * the thumb sliding on the spring. The API is Ark's own — Root, Label,
12
29
  * Control, Thumb, HiddenInput. */
13
- export declare const Switch: Omit<typeof Switch$1, "Root"> & {
30
+ type SwitchParts = Omit<typeof Switch$1, "Root"> & {
14
31
  Root: typeof SwitchRoot;
15
32
  };
33
+ export declare const Switch: typeof SwitchFacade & SwitchParts;
16
34
  //#endregion
@@ -1,21 +1,40 @@
1
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
1
2
  import { injectComponentStyle } from "@bysages/core";
2
- import { jsx } from "react/jsx-runtime";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
3
4
  import { Switch as Switch$1 } from "@ark-ui/react/switch";
4
5
  //#region src/components/switch/index.tsx
5
- function SwitchRoot({ size = "md", ...rest }) {
6
+ function SwitchRoot(props) {
7
+ const id = useElementId("switch", props);
8
+ const { size = "md", ...rest } = props;
6
9
  return /* @__PURE__ */ jsx(Switch$1.Root, {
7
10
  ...rest,
11
+ id,
8
12
  "data-size": size
9
13
  });
10
14
  }
11
- /** Ark's Switch, dressed in the paper-and-ink system: a track that rests
12
- * in the inset shade of the paper and fills flat with primary ink when on,
13
- * the thumb sliding on the spring. The API is Ark's own — Root, Label,
14
- * Control, Thumb, HiddenInput. */
15
- const Switch = {
15
+ function SwitchFacade({ value, defaultValue = false, label, disabled = false, invalid = false, required = false, readOnly = false, size = "md", className, onValueChange }) {
16
+ return /* @__PURE__ */ jsxs(SwitchRoot, {
17
+ className,
18
+ size,
19
+ disabled,
20
+ invalid,
21
+ readOnly,
22
+ required,
23
+ defaultChecked: defaultValue,
24
+ ...value === void 0 ? {} : { checked: value },
25
+ onCheckedChange: (details) => onValueChange?.(details.checked),
26
+ children: [
27
+ /* @__PURE__ */ jsx(Switch$1.Control, { children: /* @__PURE__ */ jsx(Switch$1.Thumb, {}) }),
28
+ label ? /* @__PURE__ */ jsx(Switch$1.Label, { children: label }) : null,
29
+ /* @__PURE__ */ jsx(Switch$1.HiddenInput, {})
30
+ ]
31
+ });
32
+ }
33
+ SwitchFacade.displayName = "SSwitch";
34
+ const Switch = Object.assign(SwitchFacade, {
16
35
  ...Switch$1,
17
36
  Root: SwitchRoot
18
- };
37
+ });
19
38
  injectComponentStyle("switch");
20
39
  //#endregion
21
40
  export { Switch };
@@ -74,6 +74,9 @@ export interface DataTableProps {
74
74
  /** Applied to the root vessel. */
75
75
  style?: CSSProperties;
76
76
  }
77
- export declare function DataTable(rawProps: DataTableProps): import("react").JSX.Element;
77
+ declare function DataTableImpl(rawProps: DataTableProps): import("react").JSX.Element;
78
+ export declare const DataTable: typeof DataTableImpl & {
79
+ Root: typeof DataTableImpl;
80
+ };
78
81
  //#endregion
79
82
  export { type ColumnDef, FlexRender, type SortingState, createColumnHelper };