@bysages/react 0.3.1 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. package/dist/{ai-response-BfKTmtCt.mjs → ai-response-nhDOlELQ.mjs} +4 -2
  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 +32 -2
  5. package/dist/components/affix/index.d.mts +4 -1
  6. package/dist/components/affix/index.mjs +6 -4
  7. package/dist/components/ai/index.d.mts +1 -1
  8. package/dist/components/ai/index.mjs +6 -4
  9. package/dist/components/ai-action/index.d.mts +4 -1
  10. package/dist/components/ai-action/index.mjs +4 -2
  11. package/dist/components/ai-attachments/index.d.mts +10 -4
  12. package/dist/components/ai-attachments/index.mjs +17 -45
  13. package/dist/components/ai-message/index.d.mts +4 -1
  14. package/dist/components/ai-message/index.mjs +4 -2
  15. package/dist/components/ai-prompt-input/index.d.mts +5 -2
  16. package/dist/components/ai-prompt-input/index.mjs +11 -15
  17. package/dist/components/ai-reasoning/index.d.mts +4 -1
  18. package/dist/components/ai-reasoning/index.mjs +5 -3
  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 +6 -3
  23. package/dist/components/ai-suggestion/index.d.mts +4 -1
  24. package/dist/components/ai-suggestion/index.mjs +4 -2
  25. package/dist/components/ai-tool/index.d.mts +4 -1
  26. package/dist/components/ai-tool/index.mjs +5 -3
  27. package/dist/components/alert/index.d.mts +2 -0
  28. package/dist/components/alert/index.mjs +12 -19
  29. package/dist/components/angle-slider/index.d.mts +19 -2
  30. package/dist/components/angle-slider/index.mjs +32 -9
  31. package/dist/components/aspect-ratio/index.d.mts +4 -1
  32. package/dist/components/aspect-ratio/index.mjs +4 -2
  33. package/dist/components/autocomplete/index.d.mts +3 -1
  34. package/dist/components/autocomplete/index.mjs +15 -3
  35. package/dist/components/avatar/index.d.mts +2 -2
  36. package/dist/components/avatar/index.mjs +10 -3
  37. package/dist/components/avatar-group/index.d.mts +4 -1
  38. package/dist/components/avatar-group/index.mjs +4 -2
  39. package/dist/components/back-top/index.d.mts +7 -1
  40. package/dist/components/back-top/index.mjs +13 -18
  41. package/dist/components/badge/index.d.mts +4 -1
  42. package/dist/components/badge/index.mjs +4 -2
  43. package/dist/components/banner/index.mjs +3 -12
  44. package/dist/components/bento/index.mjs +1 -1
  45. package/dist/components/block-ui/index.d.mts +4 -1
  46. package/dist/components/block-ui/index.mjs +4 -2
  47. package/dist/components/breadcrumb/index.mjs +1 -1
  48. package/dist/components/browser/index.mjs +1 -1
  49. package/dist/components/button/index.d.mts +4 -1
  50. package/dist/components/button/index.mjs +4 -2
  51. package/dist/components/button-group/index.mjs +1 -1
  52. package/dist/components/calendar/index.d.mts +3 -1
  53. package/dist/components/calendar/index.mjs +10 -11
  54. package/dist/components/card/index.mjs +1 -1
  55. package/dist/components/carousel/index.d.mts +21 -1
  56. package/dist/components/carousel/index.mjs +44 -3
  57. package/dist/components/cascade-select/index.d.mts +6 -1
  58. package/dist/components/cascade-select/index.mjs +13 -36
  59. package/dist/components/checkbox/index.d.mts +20 -2
  60. package/dist/components/checkbox/index.mjs +29 -9
  61. package/dist/components/checkbox-group/index.d.mts +8 -6
  62. package/dist/components/checkbox-group/index.mjs +45 -49
  63. package/dist/components/chip/index.d.mts +4 -1
  64. package/dist/components/chip/index.mjs +4 -2
  65. package/dist/components/client-only/index.d.mts +7 -2
  66. package/dist/components/client-only/index.mjs +5 -1
  67. package/dist/components/clipboard/index.d.mts +17 -4
  68. package/dist/components/clipboard/index.mjs +34 -6
  69. package/dist/components/collapsible/index.d.mts +16 -4
  70. package/dist/components/collapsible/index.mjs +26 -2
  71. package/dist/components/color-picker/index.d.mts +20 -4
  72. package/dist/components/color-picker/index.mjs +57 -15
  73. package/dist/components/combobox/index.d.mts +27 -1
  74. package/dist/components/combobox/index.mjs +63 -6
  75. package/dist/components/command/index.d.mts +4 -1
  76. package/dist/components/command/index.mjs +8 -2
  77. package/dist/components/comment/index.d.mts +4 -1
  78. package/dist/components/comment/index.mjs +4 -2
  79. package/dist/components/config-provider/index.d.mts +4 -1
  80. package/dist/components/config-provider/index.mjs +3 -1
  81. package/dist/components/container/index.d.mts +4 -1
  82. package/dist/components/container/index.mjs +4 -2
  83. package/dist/components/data-view/index.d.mts +4 -1
  84. package/dist/components/data-view/index.mjs +4 -2
  85. package/dist/components/date-input/index.d.mts +19 -4
  86. package/dist/components/date-input/index.mjs +34 -10
  87. package/dist/components/date-picker/index.d.mts +21 -4
  88. package/dist/components/date-picker/index.mjs +59 -12
  89. package/dist/components/deferred-content/index.d.mts +4 -1
  90. package/dist/components/deferred-content/index.mjs +4 -2
  91. package/dist/components/descriptions/index.d.mts +10 -2
  92. package/dist/components/descriptions/index.mjs +14 -9
  93. package/dist/components/dialog/index.d.mts +18 -5
  94. package/dist/components/dialog/index.mjs +44 -2
  95. package/dist/components/dock/index.mjs +1 -1
  96. package/dist/components/download-trigger/index.d.mts +7 -2
  97. package/dist/components/download-trigger/index.mjs +5 -1
  98. package/dist/components/drawer/index.d.mts +18 -6
  99. package/dist/components/drawer/index.mjs +41 -2
  100. package/dist/components/dynamic-input/index.d.mts +4 -1
  101. package/dist/components/dynamic-input/index.mjs +11 -19
  102. package/dist/components/editable/index.d.mts +28 -7
  103. package/dist/components/editable/index.mjs +44 -5
  104. package/dist/components/ellipsis/index.d.mts +4 -1
  105. package/dist/components/ellipsis/index.mjs +4 -2
  106. package/dist/components/empty/index.mjs +1 -1
  107. package/dist/components/field/index.d.mts +30 -5
  108. package/dist/components/field/index.mjs +37 -4
  109. package/dist/components/fieldset/index.d.mts +19 -4
  110. package/dist/components/fieldset/index.mjs +29 -4
  111. package/dist/components/file-upload/index.d.mts +29 -9
  112. package/dist/components/file-upload/index.mjs +47 -11
  113. package/dist/components/float-button/index.mjs +1 -1
  114. package/dist/components/floating-panel/index.d.mts +18 -6
  115. package/dist/components/floating-panel/index.mjs +56 -2
  116. package/dist/components/focus-trap/index.d.mts +7 -2
  117. package/dist/components/focus-trap/index.mjs +5 -1
  118. package/dist/components/form/index.d.mts +1 -1
  119. package/dist/components/form/index.mjs +6 -3
  120. package/dist/components/frame/index.d.mts +4 -8
  121. package/dist/components/frame/index.mjs +13 -1
  122. package/dist/components/grid/index.d.mts +4 -1
  123. package/dist/components/grid/index.mjs +4 -2
  124. package/dist/components/highlight/index.d.mts +3 -5
  125. package/dist/components/highlight/index.mjs +7 -2
  126. package/dist/components/hover-card/index.d.mts +20 -4
  127. package/dist/components/hover-card/index.mjs +33 -2
  128. package/dist/components/icon/index.d.mts +10 -8
  129. package/dist/components/icon/index.mjs +6 -4
  130. package/dist/components/image/index.d.mts +5 -2
  131. package/dist/components/image/index.mjs +15 -30
  132. package/dist/components/image-cropper/index.d.mts +13 -2
  133. package/dist/components/image-cropper/index.mjs +35 -3
  134. package/dist/components/image-viewer/index.d.mts +2 -24
  135. package/dist/components/image-viewer/index.mjs +3 -113
  136. package/dist/components/input/index.d.mts +3 -1
  137. package/dist/components/input/index.mjs +1 -1
  138. package/dist/components/input-group/index.mjs +1 -1
  139. package/dist/components/json-tree-view/index.d.mts +17 -1
  140. package/dist/components/json-tree-view/index.mjs +27 -6
  141. package/dist/components/kbd/index.d.mts +4 -1
  142. package/dist/components/kbd/index.mjs +4 -2
  143. package/dist/components/layout/index.d.mts +25 -7
  144. package/dist/components/layout/index.mjs +158 -64
  145. package/dist/components/link/index.d.mts +4 -1
  146. package/dist/components/link/index.mjs +4 -2
  147. package/dist/components/list/index.mjs +1 -1
  148. package/dist/components/listbox/index.d.mts +22 -1
  149. package/dist/components/listbox/index.mjs +37 -5
  150. package/dist/components/marquee/index.d.mts +18 -1
  151. package/dist/components/marquee/index.mjs +35 -3
  152. package/dist/components/masonry/index.d.mts +4 -1
  153. package/dist/components/masonry/index.mjs +4 -2
  154. package/dist/components/media-player/index.d.mts +2 -0
  155. package/dist/components/media-player/index.mjs +2 -0
  156. package/dist/components/mentions/index.d.mts +1 -1
  157. package/dist/components/mentions/index.mjs +1 -1
  158. package/dist/components/menu/index.d.mts +29 -11
  159. package/dist/components/menu/index.mjs +35 -13
  160. package/dist/components/menubar/index.d.mts +3 -1
  161. package/dist/components/menubar/index.mjs +7 -2
  162. package/dist/components/meter/index.mjs +1 -1
  163. package/dist/components/navigation-menu/index.d.mts +25 -1
  164. package/dist/components/navigation-menu/index.mjs +37 -2
  165. package/dist/components/number-input/index.d.mts +28 -6
  166. package/dist/components/number-input/index.mjs +34 -9
  167. package/dist/components/order-list/index.d.mts +4 -1
  168. package/dist/components/order-list/index.mjs +27 -25
  169. package/dist/components/page-header/index.mjs +1 -1
  170. package/dist/components/pagination/index.d.mts +23 -3
  171. package/dist/components/pagination/index.mjs +58 -13
  172. package/dist/components/password-input/index.d.mts +24 -6
  173. package/dist/components/password-input/index.mjs +32 -9
  174. package/dist/components/pin-input/index.d.mts +23 -5
  175. package/dist/components/pin-input/index.mjs +30 -8
  176. package/dist/components/popconfirm/index.d.mts +9 -5
  177. package/dist/components/popconfirm/index.mjs +24 -19
  178. package/dist/components/popover/index.d.mts +2 -8
  179. package/dist/components/popover/index.mjs +45 -5
  180. package/dist/components/presence/index.d.mts +10 -2
  181. package/dist/components/presence/index.mjs +6 -1
  182. package/dist/components/progress/index.d.mts +18 -3
  183. package/dist/components/progress/index.mjs +35 -10
  184. package/dist/components/progress-group/index.d.mts +4 -1
  185. package/dist/components/progress-group/index.mjs +5 -3
  186. package/dist/components/qr-code/index.d.mts +14 -1
  187. package/dist/components/qr-code/index.mjs +27 -3
  188. package/dist/components/radio-group/index.d.mts +27 -2
  189. package/dist/components/radio-group/index.mjs +33 -9
  190. package/dist/components/rating-group/index.d.mts +20 -3
  191. package/dist/components/rating-group/index.mjs +27 -9
  192. package/dist/components/result/index.d.mts +1 -1
  193. package/dist/components/result/index.mjs +3 -3
  194. package/dist/components/scroll-area/index.d.mts +14 -1
  195. package/dist/components/scroll-area/index.mjs +33 -3
  196. package/dist/components/segment-group/index.d.mts +28 -2
  197. package/dist/components/segment-group/index.mjs +35 -8
  198. package/dist/components/select/index.d.mts +2 -2
  199. package/dist/components/select/index.mjs +1 -1
  200. package/dist/components/separator/index.d.mts +4 -1
  201. package/dist/components/separator/index.mjs +4 -2
  202. package/dist/components/signature-pad/index.d.mts +25 -5
  203. package/dist/components/signature-pad/index.mjs +38 -4
  204. package/dist/components/skeleton/index.d.mts +4 -1
  205. package/dist/components/skeleton/index.mjs +4 -2
  206. package/dist/components/slider/index.d.mts +21 -2
  207. package/dist/components/slider/index.mjs +32 -9
  208. package/dist/components/spinner/index.d.mts +4 -1
  209. package/dist/components/spinner/index.mjs +4 -2
  210. package/dist/components/split-button/index.d.mts +3 -1
  211. package/dist/components/split-button/index.mjs +13 -18
  212. package/dist/components/splitter/index.d.mts +17 -4
  213. package/dist/components/splitter/index.mjs +36 -2
  214. package/dist/components/spotlight/index.d.mts +4 -1
  215. package/dist/components/spotlight/index.mjs +4 -2
  216. package/dist/components/stack/index.d.mts +4 -1
  217. package/dist/components/stack/index.mjs +7 -5
  218. package/dist/components/stat/index.mjs +1 -1
  219. package/dist/components/steps/index.d.mts +26 -6
  220. package/dist/components/steps/index.mjs +27 -12
  221. package/dist/components/swap/index.d.mts +11 -5
  222. package/dist/components/swap/index.mjs +31 -4
  223. package/dist/components/switch/index.d.mts +20 -2
  224. package/dist/components/switch/index.mjs +28 -9
  225. package/dist/components/table/index.d.mts +4 -1
  226. package/dist/components/table/index.mjs +38 -60
  227. package/dist/components/tabs/index.d.mts +24 -2
  228. package/dist/components/tabs/index.mjs +26 -10
  229. package/dist/components/tags-input/index.d.mts +33 -8
  230. package/dist/components/tags-input/index.mjs +42 -10
  231. package/dist/components/terminal/index.d.mts +4 -1
  232. package/dist/components/terminal/index.mjs +4 -2
  233. package/dist/components/textarea/index.d.mts +4 -1
  234. package/dist/components/textarea/index.mjs +4 -2
  235. package/dist/components/timeline/index.mjs +1 -1
  236. package/dist/components/timer/index.d.mts +18 -1
  237. package/dist/components/timer/index.mjs +52 -3
  238. package/dist/components/toast/index.d.mts +3 -6
  239. package/dist/components/toast/index.mjs +23 -3
  240. package/dist/components/toc/index.d.mts +19 -5
  241. package/dist/components/toc/index.mjs +32 -6
  242. package/dist/components/toggle/index.d.mts +11 -4
  243. package/dist/components/toggle/index.mjs +22 -2
  244. package/dist/components/toggle-group/index.d.mts +26 -2
  245. package/dist/components/toggle-group/index.mjs +32 -7
  246. package/dist/components/toolbar/index.d.mts +4 -1
  247. package/dist/components/toolbar/index.mjs +4 -2
  248. package/dist/components/tooltip/index.d.mts +17 -4
  249. package/dist/components/tooltip/index.mjs +29 -2
  250. package/dist/components/tour/index.d.mts +18 -9
  251. package/dist/components/tour/index.mjs +45 -3
  252. package/dist/components/transfer/index.d.mts +3 -1
  253. package/dist/components/transfer/index.mjs +15 -27
  254. package/dist/components/tree-select/index.d.mts +3 -1
  255. package/dist/components/tree-select/index.mjs +12 -23
  256. package/dist/components/tree-view/index.d.mts +22 -2
  257. package/dist/components/tree-view/index.mjs +51 -9
  258. package/dist/components/typography/index.d.mts +4 -0
  259. package/dist/components/typography/index.mjs +2 -1
  260. package/dist/components/user/index.d.mts +4 -1
  261. package/dist/components/user/index.mjs +4 -2
  262. package/dist/components/virtual-list/index.d.mts +4 -1
  263. package/dist/components/virtual-list/index.mjs +11 -13
  264. package/dist/components/watermark/index.d.mts +4 -1
  265. package/dist/components/watermark/index.mjs +5 -3
  266. package/dist/family-DE_GQeeM.mjs +9 -0
  267. package/dist/icon-BALgGtNK.mjs +18 -0
  268. package/dist/id-C37UYLwJ.mjs +13 -0
  269. package/dist/image-viewer-B-hKFkEw.mjs +141 -0
  270. package/dist/{index-Dn5mHf1g.d.mts → index-B4twHAQC.d.mts} +194 -106
  271. package/dist/{index-Uefyw7Im.d.mts → index-Bbg4heDO.d.mts} +12 -7
  272. package/dist/index-BcRdWGY-.d.mts +115 -0
  273. package/dist/{index-Iy8m0Qev.d.mts → index-D_iKc2Uw.d.mts} +31 -2
  274. package/dist/index-Dj8S4eyJ.d.mts +41 -0
  275. package/dist/index-Eu-Bttta.d.mts +24 -0
  276. package/dist/{index-uPyYiWaL.d.mts → index-PsgGWW3m.d.mts} +8 -2
  277. package/dist/index.d.mts +36 -35
  278. package/dist/index.mjs +11 -10
  279. package/dist/{input-2oezH-dY.mjs → input-BDpQ0e6G.mjs} +4 -2
  280. package/dist/media-player-DjVvo1_7.mjs +554 -0
  281. package/dist/{mentions-DMIBCBOd.mjs → mentions-BwnyvdXz.mjs} +75 -43
  282. package/dist/select-i9UZsQCU.mjs +121 -0
  283. package/package.json +9 -81
  284. package/dist/chevron-BeHvt46K.mjs +0 -17
  285. package/dist/glyph-VI989p8H.mjs +0 -14
  286. package/dist/select-eAHutw56.mjs +0 -70
@@ -1,4 +1,7 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
2
5
  import { Carousel as Carousel$1 } from "@ark-ui/react/carousel";
3
6
  //#region src/components/carousel/index.tsx
4
7
  /** Ark's Carousel, dressed in the paper-and-ink system: slides ride in one
@@ -6,7 +9,45 @@ import { Carousel as Carousel$1 } from "@ark-ui/react/carousel";
6
9
  * current indicator alone carries the ink. The API is Ark's own — Root,
7
10
  * Control, PrevTrigger, NextTrigger, ItemGroup, Item, IndicatorGroup,
8
11
  * Indicator, AutoplayTrigger, ProgressText. */
9
- const Carousel = Carousel$1;
10
- injectComponentStyle("carousel");
12
+ function CarouselRoot(props) {
13
+ injectComponentStyle("carousel");
14
+ const id = useElementId("carousel", props);
15
+ return /* @__PURE__ */ jsx(Carousel$1.Root, {
16
+ ...props,
17
+ id
18
+ });
19
+ }
20
+ /** The complete carousel behind a slide list: arrows, progress, items, and
21
+ * indicators use the common lane. Custom slides remain anatomy work. */
22
+ function CarouselFacade(props) {
23
+ const { value, defaultValue, items, spacing, label, className, style, onValueChange } = props;
24
+ const slides = items.map((item) => typeof item === "string" ? item : item.label);
25
+ return /* @__PURE__ */ jsxs(CarouselRoot, {
26
+ "aria-label": label,
27
+ slideCount: slides.length,
28
+ defaultPage: defaultValue,
29
+ page: value,
30
+ spacing,
31
+ className,
32
+ style,
33
+ onPageChange: (event) => onValueChange?.(event.page),
34
+ children: [
35
+ /* @__PURE__ */ jsxs(Carousel$1.Control, { children: [
36
+ /* @__PURE__ */ jsx(Carousel$1.PrevTrigger, { children: iconNode("chevron-left") }),
37
+ /* @__PURE__ */ jsx(Carousel$1.ProgressText, {}),
38
+ /* @__PURE__ */ jsx(Carousel$1.NextTrigger, { children: iconNode("chevron-right") })
39
+ ] }),
40
+ /* @__PURE__ */ jsx(Carousel$1.ItemGroup, { children: slides.map((slide, index) => /* @__PURE__ */ jsx(Carousel$1.Item, {
41
+ index,
42
+ children: slide
43
+ }, index)) }),
44
+ /* @__PURE__ */ jsx(Carousel$1.IndicatorGroup, { children: slides.map((_, index) => /* @__PURE__ */ jsx(Carousel$1.Indicator, { index }, index)) })
45
+ ]
46
+ });
47
+ }
48
+ const Carousel = Object.assign(CarouselFacade, {
49
+ ...Carousel$1,
50
+ Root: CarouselRoot
51
+ });
11
52
  //#endregion
12
53
  export { Carousel };
@@ -6,6 +6,8 @@ export interface CascadeSelectNode {
6
6
  children?: CascadeSelectNode[];
7
7
  disabled?: boolean;
8
8
  }
9
+ /**
10
+
9
11
  /**
10
12
  * A corridor of linked columns: pick a branch and the next column
11
13
  * dissolves open beside it, until a leaf click settles the whole path.
@@ -27,5 +29,8 @@ export interface CascadeSelectProps extends HTMLAttributes<HTMLDivElement> {
27
29
  size?: "sm" | "md" | "lg";
28
30
  onValueChange?: (value: string[][]) => void;
29
31
  }
30
- export declare function CascadeSelect({ value, data, placeholder, highlightTrigger, filterable, multiple, disabled, size, onValueChange, ...rest }: CascadeSelectProps): import("react").JSX.Element;
32
+ declare function CascadeSelectImpl({ value, data, placeholder, highlightTrigger, filterable, multiple, disabled, size, onValueChange, ...rest }: CascadeSelectProps): import("react").JSX.Element;
33
+ export declare const CascadeSelect: typeof CascadeSelectImpl & {
34
+ Root: typeof CascadeSelectImpl;
35
+ };
31
36
  //#endregion
@@ -1,48 +1,24 @@
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
3
+ import { t as withSelfRoot } from "../../family-DE_GQeeM.mjs";
1
4
  import { n as useComponentMessages } from "../../messages-1jJWtaYU.mjs";
2
- import { t as Input } from "../../input-2oezH-dY.mjs";
3
- import { injectComponentStyle } from "@bysages/core";
5
+ import { t as Input } from "../../input-BDpQ0e6G.mjs";
6
+ import { injectComponentStyle } from "@bysages/core/styling";
4
7
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
- import { useId, useMemo, useState } from "react";
8
+ import { useMemo, useState } from "react";
6
9
  import { Portal } from "@ark-ui/react/portal";
7
10
  import { useEnvironmentContext } from "@ark-ui/react/environment";
8
11
  import { useFilter, useLocaleContext } from "@ark-ui/react/locale";
9
12
  import * as cascade from "@zag-js/cascade-select";
10
13
  import { normalizeProps, useMachine } from "@zag-js/react";
11
14
  //#region src/components/cascade-select/index.tsx
12
- const chevronDown = /* @__PURE__ */ jsx("svg", {
13
- viewBox: "0 0 24 24",
14
- fill: "none",
15
- stroke: "currentColor",
16
- strokeWidth: 2,
17
- strokeLinecap: "round",
18
- strokeLinejoin: "round",
19
- "aria-hidden": "true",
20
- children: /* @__PURE__ */ jsx("path", { d: "m6 9 6 6 6-6" })
21
- });
22
- const chevronRight = /* @__PURE__ */ jsx("svg", {
23
- viewBox: "0 0 24 24",
24
- fill: "none",
25
- stroke: "currentColor",
26
- strokeWidth: 2,
27
- strokeLinecap: "round",
28
- strokeLinejoin: "round",
29
- "aria-hidden": "true",
30
- children: /* @__PURE__ */ jsx("path", { d: "m9 18 6-6-6-6" })
31
- });
32
- const checkGlyph = /* @__PURE__ */ jsx("svg", {
33
- viewBox: "0 0 24 24",
34
- fill: "none",
35
- stroke: "currentColor",
36
- strokeWidth: 3,
37
- strokeLinecap: "round",
38
- strokeLinejoin: "round",
39
- "aria-hidden": "true",
40
- children: /* @__PURE__ */ jsx("path", { d: "m5 12.5 5 5L19 7" })
41
- });
42
- function CascadeSelect({ value, data, placeholder = "Select…", highlightTrigger, filterable = false, multiple = false, disabled = false, size = "md", onValueChange, ...rest }) {
15
+ const chevronDown = iconNode("chevron-down");
16
+ const chevronRight = iconNode("chevron-right");
17
+ const checkIcon = iconNode("check");
18
+ function CascadeSelectImpl({ value, data, placeholder = "Select…", highlightTrigger, filterable = false, multiple = false, disabled = false, size = "md", onValueChange, ...rest }) {
43
19
  injectComponentStyle("cascade-select");
44
20
  const messages = useComponentMessages();
45
- const id = useId();
21
+ const id = useElementId("cascade-select", rest);
46
22
  const locale = useLocaleContext();
47
23
  const env = useEnvironmentContext();
48
24
  const collection = cascade.collection({
@@ -160,7 +136,7 @@ function CascadeSelect({ value, data, placeholder = "Select…", highlightTrigge
160
136
  }) : null,
161
137
  /* @__PURE__ */ jsx("span", {
162
138
  ...api.getItemIndicatorProps(itemProps),
163
- children: checkGlyph
139
+ children: checkIcon
164
140
  })
165
141
  ]
166
142
  }, itemValue);
@@ -229,5 +205,6 @@ function CascadeSelect({ value, data, placeholder = "Select…", highlightTrigge
229
205
  }) })]
230
206
  });
231
207
  }
208
+ const CascadeSelect = withSelfRoot(CascadeSelectImpl);
232
209
  //#endregion
233
210
  export { CascadeSelect };
@@ -5,12 +5,30 @@ type CheckboxRootProps = ComponentProps<typeof Checkbox$1.Root> & {
5
5
  /** One rung for the control's box: the tick scales with it. */
6
6
  size?: "sm" | "md" | "lg";
7
7
  };
8
- declare function CheckboxRoot({ size, ...rest }: CheckboxRootProps): import("react").JSX.Element;
8
+ declare function CheckboxRoot(props: CheckboxRootProps): import("react").JSX.Element;
9
+ export interface CheckboxFacadeProps {
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 control's box: the tick scales with it. */
18
+ size?: "sm" | "md" | "lg";
19
+ className?: string;
20
+ onValueChange?: (value: boolean) => void;
21
+ }
22
+ declare function CheckboxFacade({ value, defaultValue, label, disabled, invalid, required, readOnly, size, className, onValueChange }: CheckboxFacadeProps): import("react").JSX.Element;
23
+ declare namespace CheckboxFacade {
24
+ var displayName: string;
25
+ }
9
26
  /** Ark's Checkbox, dressed in the paper-and-ink system: a square-cut seal
10
27
  * that fills flat with primary ink when ticked, the mark springing into
11
28
  * place. The API is Ark's own — Root, Label, Control, Indicator,
12
29
  * HiddenInput. */
13
- export declare const Checkbox: Omit<typeof Checkbox$1, "Root"> & {
30
+ type CheckboxParts = Omit<typeof Checkbox$1, "Root"> & {
14
31
  Root: typeof CheckboxRoot;
15
32
  };
33
+ export declare const Checkbox: typeof CheckboxFacade & CheckboxParts;
16
34
  //#endregion
@@ -1,21 +1,41 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
- import { jsx } from "react/jsx-runtime";
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
3
5
  import { Checkbox as Checkbox$1 } from "@ark-ui/react/checkbox";
4
6
  //#region src/components/checkbox/index.tsx
5
- function CheckboxRoot({ size = "md", ...rest }) {
7
+ function CheckboxRoot(props) {
8
+ const id = useElementId("checkbox", props);
9
+ const { size = "md", ...rest } = props;
6
10
  return /* @__PURE__ */ jsx(Checkbox$1.Root, {
7
11
  ...rest,
12
+ id,
8
13
  "data-size": size
9
14
  });
10
15
  }
11
- /** Ark's Checkbox, dressed in the paper-and-ink system: a square-cut seal
12
- * that fills flat with primary ink when ticked, the mark springing into
13
- * place. The API is Ark's own — Root, Label, Control, Indicator,
14
- * HiddenInput. */
15
- const Checkbox = {
16
+ function CheckboxFacade({ value, defaultValue = false, label, disabled = false, invalid = false, required = false, readOnly = false, size = "md", className, onValueChange }) {
17
+ return /* @__PURE__ */ jsxs(CheckboxRoot, {
18
+ className,
19
+ size,
20
+ disabled,
21
+ invalid,
22
+ readOnly,
23
+ required,
24
+ defaultChecked: defaultValue,
25
+ ...value === void 0 ? {} : { checked: value },
26
+ onCheckedChange: (details) => onValueChange?.(details.checked === true),
27
+ children: [
28
+ /* @__PURE__ */ jsx(Checkbox$1.Control, { children: /* @__PURE__ */ jsx(Checkbox$1.Indicator, { children: iconNode("check") }) }),
29
+ label ? /* @__PURE__ */ jsx(Checkbox$1.Label, { children: label }) : null,
30
+ /* @__PURE__ */ jsx(Checkbox$1.HiddenInput, {})
31
+ ]
32
+ });
33
+ }
34
+ CheckboxFacade.displayName = "SCheckbox";
35
+ const Checkbox = Object.assign(CheckboxFacade, {
16
36
  ...Checkbox$1,
17
37
  Root: CheckboxRoot
18
- };
38
+ });
19
39
  injectComponentStyle("checkbox");
20
40
  //#endregion
21
41
  export { Checkbox };
@@ -1,3 +1,4 @@
1
+ import { Checkbox } from "../checkbox/index.mjs";
1
2
  import { HTMLAttributes } from "react";
2
3
  //#region src/components/checkbox-group/index.d.ts
3
4
  export interface CheckboxOption {
@@ -7,6 +8,7 @@ export interface CheckboxOption {
7
8
  }
8
9
  export interface CheckboxGroupProps extends HTMLAttributes<HTMLDivElement> {
9
10
  value?: string[];
11
+ defaultValue?: string[];
10
12
  options: CheckboxOption[];
11
13
  layout?: "vertical" | "horizontal";
12
14
  /** One register for every box: falls onto each root's data-size for
@@ -18,11 +20,11 @@ export interface CheckboxGroupProps extends HTMLAttributes<HTMLDivElement> {
18
20
  }
19
21
  /**
20
22
  * One question, many answers: a labelled stack (or row) of the seal-cut
21
- * checkboxes bound to a single array. Toggling a box adds or removes its
22
- * value; the group itself is semantics (`role="group"`), the boxes stay
23
- * the machine-driven originals. Inside a `Field.Root` the group picks up
24
- * the field context, so the invalid and disabled states a Form routes to
25
- * its name dress every box at once.
23
+ * checkboxes bound to a single array. Ark's group owns selection, form
24
+ * wiring, and limits; the facade maps an options list onto it. Inside a
25
+ * `Field.Root` the group picks up the field context, so invalid and
26
+ * disabled states dress every box at once.
26
27
  */
27
- export declare function CheckboxGroup({ value, options, layout, size, invalid, disabled, onValueChange, ...rest }: CheckboxGroupProps): import("react").JSX.Element;
28
+ declare function CheckboxGroupImpl({ value, defaultValue, options, layout, size, invalid, disabled, onValueChange, ...rest }: CheckboxGroupProps): import("react").JSX.Element;
29
+ export declare const CheckboxGroup: typeof CheckboxGroupImpl & typeof Checkbox;
28
30
  //#endregion
@@ -1,65 +1,61 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
3
+ import { Checkbox as Checkbox$1 } from "../checkbox/index.mjs";
4
+ import { injectComponentStyle } from "@bysages/core/styling";
2
5
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { useId } from "react";
4
6
  import { useFieldContext } from "@ark-ui/react/field";
5
7
  import { Checkbox } from "@ark-ui/react/checkbox";
6
8
  //#region src/components/checkbox-group/index.tsx
7
- const checkGlyph = /* @__PURE__ */ jsx("svg", {
8
- viewBox: "0 0 24 24",
9
- fill: "none",
10
- stroke: "currentColor",
11
- strokeWidth: 3,
12
- strokeLinecap: "round",
13
- strokeLinejoin: "round",
14
- "aria-hidden": "true",
15
- children: /* @__PURE__ */ jsx("path", { d: "m5 12.5 5 5L19 7" })
16
- });
9
+ const checkIcon = iconNode("check");
17
10
  /**
18
11
  * One question, many answers: a labelled stack (or row) of the seal-cut
19
- * checkboxes bound to a single array. Toggling a box adds or removes its
20
- * value; the group itself is semantics (`role="group"`), the boxes stay
21
- * the machine-driven originals. Inside a `Field.Root` the group picks up
22
- * the field context, so the invalid and disabled states a Form routes to
23
- * its name dress every box at once.
12
+ * checkboxes bound to a single array. Ark's group owns selection, form
13
+ * wiring, and limits; the facade maps an options list onto it. Inside a
14
+ * `Field.Root` the group picks up the field context, so invalid and
15
+ * disabled states dress every box at once.
24
16
  */
25
- function CheckboxGroup({ value = [], options, layout = "vertical", size = "md", invalid = false, disabled = false, onValueChange, ...rest }) {
17
+ function CheckboxGroupImpl({ value, defaultValue, options, layout = "vertical", size = "md", invalid = false, disabled = false, onValueChange, ...rest }) {
26
18
  injectComponentStyle("checkbox-group");
27
19
  injectComponentStyle("checkbox");
28
20
  const field = useFieldContext();
29
- const uid = useId();
30
- const selected = new Set(value);
21
+ const uid = useElementId("checkbox-group", rest);
31
22
  const isInvalid = invalid || field?.invalid === true;
32
23
  const isDisabled = disabled || field?.disabled === true;
33
- function toggle(option) {
34
- const next = new Set(selected);
35
- if (next.has(option)) next.delete(option);
36
- else next.add(option);
37
- onValueChange?.([...next]);
38
- }
39
- return /* @__PURE__ */ jsx("div", {
40
- ...rest,
41
- role: "group",
42
- "data-scope": "checkbox-group",
43
- "data-part": "root",
44
- "data-layout": layout,
45
- "data-invalid": isInvalid ? "" : void 0,
46
- children: options.map((option) => /* @__PURE__ */ jsxs(Checkbox.Root, {
47
- ids: {
48
- label: `${uid}:${option.value}:label`,
49
- hiddenInput: `${uid}:${option.value}:input`
50
- },
51
- "data-size": size,
52
- checked: selected.has(option.value),
53
- invalid: isInvalid,
54
- disabled: isDisabled || option.disabled === true,
55
- onCheckedChange: () => toggle(option.value),
56
- children: [
57
- /* @__PURE__ */ jsx(Checkbox.Control, { children: /* @__PURE__ */ jsx(Checkbox.Indicator, { children: checkGlyph }) }),
58
- /* @__PURE__ */ jsx(Checkbox.Label, { children: option.label }),
59
- /* @__PURE__ */ jsx(Checkbox.HiddenInput, {})
60
- ]
61
- }, option.value))
24
+ return /* @__PURE__ */ jsx(Checkbox.Group, {
25
+ asChild: true,
26
+ ...isInvalid ? { invalid: true } : {},
27
+ ...isDisabled ? { disabled: true } : {},
28
+ ...defaultValue === void 0 ? {} : { defaultValue },
29
+ ...value === void 0 ? {} : { value },
30
+ onValueChange,
31
+ children: /* @__PURE__ */ jsx("div", {
32
+ ...rest,
33
+ id: uid,
34
+ "data-scope": "checkbox-group",
35
+ "data-part": "root",
36
+ "data-layout": layout,
37
+ "data-invalid": isInvalid ? "" : void 0,
38
+ children: options.map((option) => {
39
+ const checkboxId = `${uid}:checkbox:${option.value}`;
40
+ return /* @__PURE__ */ jsxs(Checkbox.Root, {
41
+ id: checkboxId,
42
+ value: option.value,
43
+ ids: {
44
+ label: `${checkboxId}:label`,
45
+ hiddenInput: `${checkboxId}:input`
46
+ },
47
+ "data-size": size,
48
+ disabled: isDisabled || option.disabled === true,
49
+ children: [
50
+ /* @__PURE__ */ jsx(Checkbox.Control, { children: /* @__PURE__ */ jsx(Checkbox.Indicator, { children: checkIcon }) }),
51
+ /* @__PURE__ */ jsx(Checkbox.Label, { children: option.label }),
52
+ /* @__PURE__ */ jsx(Checkbox.HiddenInput, {})
53
+ ]
54
+ }, option.value);
55
+ })
56
+ })
62
57
  });
63
58
  }
59
+ const CheckboxGroup = Object.assign(CheckboxGroupImpl, Checkbox$1);
64
60
  //#endregion
65
61
  export { CheckboxGroup };
@@ -8,5 +8,8 @@ export interface ChipProps extends HTMLAttributes<HTMLSpanElement> {
8
8
  tone?: "ink" | "info" | "success" | "warning" | "danger";
9
9
  variant?: "solid" | "subtle" | "outline";
10
10
  }
11
- export declare function Chip({ value, max, tone, variant, ...rest }: ChipProps): import("react").JSX.Element;
11
+ declare function ChipImpl({ value, max, tone, variant, ...rest }: ChipProps): import("react").JSX.Element;
12
+ export declare const Chip: typeof ChipImpl & {
13
+ Root: typeof ChipImpl;
14
+ };
12
15
  //#endregion
@@ -1,7 +1,8 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { t as withSelfRoot } from "../../family-DE_GQeeM.mjs";
2
+ import { injectComponentStyle } from "@bysages/core/styling";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  //#region src/components/chip/index.tsx
4
- function Chip({ value, max, tone = "ink", variant = "solid", ...rest }) {
5
+ function ChipImpl({ value, max, tone = "ink", variant = "solid", ...rest }) {
5
6
  injectComponentStyle("chip");
6
7
  const text = max != null && value > max ? `${max}+` : String(value);
7
8
  return /* @__PURE__ */ jsx("span", {
@@ -13,5 +14,6 @@ function Chip({ value, max, tone = "ink", variant = "solid", ...rest }) {
13
14
  children: text
14
15
  });
15
16
  }
17
+ const Chip = withSelfRoot(ChipImpl);
16
18
  //#endregion
17
19
  export { Chip };
@@ -1,2 +1,7 @@
1
- import { ClientOnly, ClientOnlyProps } from "@ark-ui/react/client-only";
2
- export { ClientOnly, type ClientOnlyProps };
1
+ import { ClientOnlyProps } from "@ark-ui/react/client-only";
2
+ //#region src/components/client-only/index.d.ts
3
+ export declare const ClientOnly: ((props: import("@ark-ui/react/client-only").ClientOnlyProps) => React.ReactNode) & {
4
+ Root: (props: import("@ark-ui/react/client-only").ClientOnlyProps) => React.ReactNode;
5
+ };
6
+ //#endregion
7
+ export type { ClientOnlyProps };
@@ -1,2 +1,6 @@
1
- import { ClientOnly } from "@ark-ui/react/client-only";
1
+ import { t as withSelfRoot } from "../../family-DE_GQeeM.mjs";
2
+ import { ClientOnly as ClientOnly$1 } from "@ark-ui/react/client-only";
3
+ //#region src/components/client-only/index.tsx
4
+ const ClientOnly = withSelfRoot(ClientOnly$1);
5
+ //#endregion
2
6
  export { ClientOnly };
@@ -1,17 +1,30 @@
1
- import { ComponentProps } from "react";
1
+ import { CSSProperties, ComponentProps, HTMLAttributes } from "react";
2
2
  import { Clipboard as Clipboard$1 } from "@ark-ui/react/clipboard";
3
3
  //#region src/components/clipboard/index.d.ts
4
4
  /** Ark's Clipboard, dressed in the paper-and-ink system: a hairline value
5
5
  * field beside an icon-sized copy trigger whose ink turns bamboo while the
6
6
  * copy is confirmed. The API is Ark's own — Root, Label, Control, Input,
7
7
  * Trigger, Indicator, Context, HiddenInput. */
8
- type ClipboardRootProps = ComponentProps<typeof Clipboard$1.Root> & {
8
+ type ClipboardRootProps = ComponentProps<typeof Clipboard$1.Root> & Pick<HTMLAttributes<HTMLDivElement>, "className" | "style"> & {
9
9
  /** One rung of the control-height ladder for the value field and
10
10
  * its copy seal. */
11
11
  size?: "sm" | "md" | "lg";
12
12
  };
13
- declare function ClipboardRoot({ size, ...rest }: ClipboardRootProps): import("react").JSX.Element;
14
- export declare const Clipboard: Omit<typeof Clipboard$1, "Root"> & {
13
+ declare function ClipboardRoot(props: ClipboardRootProps): import("react").JSX.Element;
14
+ type ClipboardFacadeProps = {
15
+ value?: string;
16
+ defaultValue?: string;
17
+ label?: string;
18
+ placeholder?: string;
19
+ size?: "sm" | "md" | "lg";
20
+ className?: string;
21
+ style?: CSSProperties;
22
+ onValueChange?: (value: string) => void;
23
+ };
24
+ /** The complete copy field behind one value: a labelled read-only input and
25
+ * its confirmed copy trigger. */
26
+ declare function ClipboardFacade(props: ClipboardFacadeProps): import("react").JSX.Element;
27
+ export declare const Clipboard: typeof ClipboardFacade & Omit<typeof Clipboard$1, "Root"> & {
15
28
  Root: typeof ClipboardRoot;
16
29
  };
17
30
  //#endregion
@@ -1,17 +1,45 @@
1
- import { injectComponentStyle } from "@bysages/core";
2
- import { jsx } from "react/jsx-runtime";
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
3
5
  import { Clipboard as Clipboard$1 } from "@ark-ui/react/clipboard";
4
6
  //#region src/components/clipboard/index.tsx
5
- function ClipboardRoot({ size = "md", ...rest }) {
7
+ function ClipboardRoot(props) {
8
+ injectComponentStyle("clipboard");
9
+ const id = useElementId("clipboard", props);
10
+ const { size = "md", ...rest } = props;
6
11
  return /* @__PURE__ */ jsx(Clipboard$1.Root, {
7
12
  ...rest,
13
+ id,
8
14
  "data-size": size
9
15
  });
10
16
  }
11
- const Clipboard = {
17
+ /** The complete copy field behind one value: a labelled read-only input and
18
+ * its confirmed copy trigger. */
19
+ function ClipboardFacade(props) {
20
+ const { value, defaultValue, label, placeholder, size = "md", className, style, onValueChange } = props;
21
+ return /* @__PURE__ */ jsxs(ClipboardRoot, {
22
+ size,
23
+ defaultValue,
24
+ value,
25
+ className,
26
+ style,
27
+ onValueChange: (event) => onValueChange?.(event.value),
28
+ children: [label ? /* @__PURE__ */ jsx(Clipboard$1.Label, { children: label }) : null, /* @__PURE__ */ jsxs(Clipboard$1.Control, { children: [/* @__PURE__ */ jsx(Clipboard$1.Input, { placeholder }), /* @__PURE__ */ jsx(Clipboard$1.Trigger, { children: /* @__PURE__ */ jsx(Clipboard$1.Indicator, {
29
+ copied: iconNode("check", {
30
+ width: 14,
31
+ height: 14
32
+ }),
33
+ children: iconNode("copy", {
34
+ width: 14,
35
+ height: 14
36
+ })
37
+ }) })] })]
38
+ });
39
+ }
40
+ const Clipboard = Object.assign(ClipboardFacade, {
12
41
  ...Clipboard$1,
13
42
  Root: ClipboardRoot
14
- };
15
- injectComponentStyle("clipboard");
43
+ });
16
44
  //#endregion
17
45
  export { Clipboard };
@@ -1,7 +1,19 @@
1
+ import { ReactNode } from "react";
1
2
  import { Collapsible as Collapsible$1 } from "@ark-ui/react/collapsible";
2
3
  //#region src/components/collapsible/index.d.ts
3
- /** Ark's Collapsible, dressed in the paper-and-ink system: one control on
4
- * the paper, its panel dissolving open to the machine's measured height.
5
- * The API is Ark's own — Root, Trigger, Content, Indicator. */
6
- export declare const Collapsible: typeof Collapsible$1;
4
+ export interface CollapsibleFacadeProps {
5
+ open?: boolean;
6
+ defaultOpen?: boolean;
7
+ label: string;
8
+ disabled?: boolean;
9
+ className?: string;
10
+ children?: ReactNode;
11
+ onOpenChange?: (open: boolean) => void;
12
+ }
13
+ declare function CollapsibleFacade({ open, defaultOpen, label, disabled, className, children, onOpenChange }: CollapsibleFacadeProps): import("react").JSX.Element;
14
+ declare namespace CollapsibleFacade {
15
+ var displayName: string;
16
+ }
17
+ type CollapsibleParts = typeof Collapsible$1;
18
+ export declare const Collapsible: typeof CollapsibleFacade & CollapsibleParts;
7
19
  //#endregion
@@ -1,10 +1,34 @@
1
- import { injectComponentStyle } from "@bysages/core";
1
+ import { t as iconNode } from "../../icon-BALgGtNK.mjs";
2
+ import { t as useElementId } from "../../id-C37UYLwJ.mjs";
3
+ import { injectComponentStyle } from "@bysages/core/styling";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
2
5
  import { Collapsible as Collapsible$1 } from "@ark-ui/react/collapsible";
3
6
  //#region src/components/collapsible/index.tsx
4
7
  /** Ark's Collapsible, dressed in the paper-and-ink system: one control on
5
8
  * the paper, its panel dissolving open to the machine's measured height.
6
9
  * The API is Ark's own — Root, Trigger, Content, Indicator. */
7
- const Collapsible = Collapsible$1;
10
+ function CollapsibleRoot(props) {
11
+ const id = useElementId("collapsible", props);
12
+ return /* @__PURE__ */ jsx(Collapsible$1.Root, {
13
+ ...props,
14
+ id
15
+ });
16
+ }
17
+ function CollapsibleFacade({ open, defaultOpen = false, label, disabled = false, className, children, onOpenChange }) {
18
+ return /* @__PURE__ */ jsxs(CollapsibleRoot, {
19
+ className,
20
+ disabled,
21
+ defaultOpen,
22
+ ...open === void 0 ? {} : { open },
23
+ onOpenChange: (details) => onOpenChange?.(details.open),
24
+ children: [/* @__PURE__ */ jsxs(Collapsible$1.Trigger, { children: [label, /* @__PURE__ */ jsx(Collapsible$1.Indicator, { children: iconNode("chevron-right") })] }), /* @__PURE__ */ jsx(Collapsible$1.Content, { children })]
25
+ });
26
+ }
27
+ CollapsibleFacade.displayName = "SCollapsible";
28
+ const Collapsible = Object.assign(CollapsibleFacade, {
29
+ ...Collapsible$1,
30
+ Root: CollapsibleRoot
31
+ });
8
32
  injectComponentStyle("collapsible");
9
33
  //#endregion
10
34
  export { Collapsible };
@@ -1,11 +1,11 @@
1
- import { ComponentProps } from "react";
2
- import { ColorPicker as ColorPicker$1 } from "@ark-ui/react/color-picker";
1
+ import { CSSProperties, ComponentProps } from "react";
2
+ import { Color, ColorPicker as ColorPicker$1 } from "@ark-ui/react/color-picker";
3
3
  //#region src/components/color-picker/index.d.ts
4
4
  type ColorPickerRootProps = ComponentProps<typeof ColorPicker$1.Root> & {
5
5
  /** One rung of the control-height ladder for the swatch seal. */
6
6
  size?: "sm" | "md" | "lg";
7
7
  };
8
- declare function ColorPickerRoot({ size, ...rest }: ColorPickerRootProps): import("react").JSX.Element;
8
+ declare function ColorPickerRoot(props: ColorPickerRootProps): import("react").JSX.Element;
9
9
  /** Ark's ColorPicker, dressed in the paper-and-ink system: a seal-sized swatch
10
10
  * on the paper, opening into an area and channel sliders where pigment is
11
11
  * picked. The API is Ark's own — Root, Label, Control, Trigger, Positioner,
@@ -14,7 +14,23 @@ declare function ColorPickerRoot({ size, ...rest }: ColorPickerRootProps): impor
14
14
  * ChannelSliderValueText, ChannelInput, TransparencyGrid, SwatchGroup,
15
15
  * SwatchTrigger, SwatchIndicator, Swatch, EyeDropperTrigger, FormatTrigger,
16
16
  * FormatSelect, HiddenInput, Context. */
17
- export declare const ColorPicker: Omit<typeof ColorPicker$1, "Root"> & {
17
+ type ColorPickerFacadeProps = {
18
+ value?: string | Color;
19
+ defaultValue?: string | Color;
20
+ disabled?: boolean;
21
+ invalid?: boolean;
22
+ required?: boolean;
23
+ label?: string;
24
+ size?: "sm" | "md" | "lg";
25
+ className?: string;
26
+ style?: CSSProperties;
27
+ onValueChange?: (value: unknown) => void;
28
+ };
29
+ /** The complete picker behind one color: the hex input rides beside the
30
+ * swatch trigger, while the popup carries the area and hue/alpha tracks.
31
+ * Saved swatches and format switches remain anatomy work. */
32
+ declare function ColorPickerFacade(props: ColorPickerFacadeProps): import("react").JSX.Element;
33
+ export declare const ColorPicker: typeof ColorPickerFacade & Omit<typeof ColorPicker$1, "Root"> & {
18
34
  Root: typeof ColorPickerRoot;
19
35
  };
20
36
  //#endregion