@bysages/solid 0.4.3 → 0.5.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 (315) hide show
  1. package/README.md +2 -2
  2. package/dist/ai-NX47X8sz.mjs +365 -0
  3. package/dist/ai-prompt-input-CEnnpkgi.mjs +486 -0
  4. package/dist/{ai-response-CJ-uEAgj.mjs → ai-response-BM_DVIDY.mjs} +25 -27
  5. package/dist/{chevron-BHQrYKPM.mjs → chevron-DGKPHc2O.mjs} +2 -3
  6. package/dist/components/accordion/index.d.mts +1 -2
  7. package/dist/components/accordion/index.mjs +9 -16
  8. package/dist/components/affix/index.d.mts +1 -3
  9. package/dist/components/affix/index.mjs +19 -18
  10. package/dist/components/ai/index.d.mts +95 -2
  11. package/dist/components/ai/index.mjs +7 -69
  12. package/dist/components/ai-action/index.d.mts +0 -2
  13. package/dist/components/ai-action/index.mjs +4 -5
  14. package/dist/components/ai-attachments/index.d.mts +0 -2
  15. package/dist/components/ai-attachments/index.mjs +39 -52
  16. package/dist/components/ai-message/index.d.mts +2 -15
  17. package/dist/components/ai-message/index.mjs +18 -15
  18. package/dist/components/ai-prompt-input/index.d.mts +19 -15
  19. package/dist/components/ai-prompt-input/index.mjs +1 -168
  20. package/dist/components/ai-reasoning/index.d.mts +0 -2
  21. package/dist/components/ai-reasoning/index.mjs +8 -13
  22. package/dist/components/ai-response/index.d.mts +1 -3
  23. package/dist/components/ai-response/index.mjs +1 -2
  24. package/dist/components/ai-source/index.d.mts +0 -2
  25. package/dist/components/ai-source/index.mjs +25 -26
  26. package/dist/components/ai-suggestion/index.d.mts +0 -2
  27. package/dist/components/ai-suggestion/index.mjs +3 -4
  28. package/dist/components/ai-tool/index.d.mts +2 -25
  29. package/dist/components/ai-tool/index.mjs +75 -40
  30. package/dist/components/alert/index.d.mts +1 -2
  31. package/dist/components/alert/index.mjs +38 -33
  32. package/dist/components/angle-slider/index.d.mts +1 -2
  33. package/dist/components/angle-slider/index.mjs +6 -9
  34. package/dist/components/aspect-ratio/index.d.mts +1 -3
  35. package/dist/components/aspect-ratio/index.mjs +18 -17
  36. package/dist/components/autocomplete/index.d.mts +1 -2
  37. package/dist/components/autocomplete/index.mjs +6 -8
  38. package/dist/components/avatar/index.d.mts +17 -6
  39. package/dist/components/avatar/index.mjs +66 -10
  40. package/dist/components/avatar-group/index.d.mts +1 -3
  41. package/dist/components/avatar-group/index.mjs +15 -14
  42. package/dist/components/back-top/index.d.mts +1 -3
  43. package/dist/components/back-top/index.mjs +29 -34
  44. package/dist/components/badge/index.d.mts +1 -3
  45. package/dist/components/badge/index.mjs +18 -17
  46. package/dist/components/banner/index.d.mts +18 -3
  47. package/dist/components/banner/index.mjs +108 -31
  48. package/dist/components/bento/index.d.mts +1 -3
  49. package/dist/components/bento/index.mjs +30 -31
  50. package/dist/components/block-ui/index.d.mts +1 -3
  51. package/dist/components/block-ui/index.mjs +30 -33
  52. package/dist/components/breadcrumb/index.d.mts +15 -3
  53. package/dist/components/breadcrumb/index.mjs +56 -12
  54. package/dist/components/browser/index.d.mts +1 -3
  55. package/dist/components/browser/index.mjs +50 -51
  56. package/dist/components/button/index.d.mts +1 -3
  57. package/dist/components/button/index.mjs +31 -30
  58. package/dist/components/button-group/index.d.mts +1 -3
  59. package/dist/components/button-group/index.mjs +21 -20
  60. package/dist/components/calendar/index.d.mts +0 -2
  61. package/dist/components/calendar/index.mjs +73 -116
  62. package/dist/components/card/index.d.mts +1 -3
  63. package/dist/components/card/index.mjs +3 -4
  64. package/dist/components/carousel/index.d.mts +1 -2
  65. package/dist/components/carousel/index.mjs +6 -7
  66. package/dist/components/cascade-select/index.d.mts +1 -3
  67. package/dist/components/cascade-select/index.mjs +127 -167
  68. package/dist/components/checkbox/index.d.mts +1 -2
  69. package/dist/components/checkbox/index.mjs +7 -10
  70. package/dist/components/checkbox-group/index.d.mts +1 -2
  71. package/dist/components/checkbox-group/index.mjs +9 -12
  72. package/dist/components/chip/index.d.mts +1 -3
  73. package/dist/components/chip/index.mjs +22 -25
  74. package/dist/components/client-only/index.d.mts +0 -2
  75. package/dist/components/client-only/index.mjs +2 -3
  76. package/dist/components/clipboard/index.d.mts +1 -2
  77. package/dist/components/clipboard/index.mjs +10 -17
  78. package/dist/components/collapsible/index.d.mts +1 -2
  79. package/dist/components/collapsible/index.mjs +7 -14
  80. package/dist/components/collection/index.mjs +1 -2
  81. package/dist/components/color-picker/index.d.mts +5 -2
  82. package/dist/components/color-picker/index.mjs +69 -39
  83. package/dist/components/combobox/index.d.mts +1 -2
  84. package/dist/components/combobox/index.mjs +9 -14
  85. package/dist/components/command/index.d.mts +1 -2
  86. package/dist/components/command/index.mjs +63 -80
  87. package/dist/components/comment/index.d.mts +1 -3
  88. package/dist/components/comment/index.mjs +64 -80
  89. package/dist/components/config-provider/index.d.mts +1 -3
  90. package/dist/components/config-provider/index.mjs +10 -13
  91. package/dist/components/container/index.d.mts +1 -3
  92. package/dist/components/container/index.mjs +18 -17
  93. package/dist/components/data-view/index.d.mts +1 -3
  94. package/dist/components/data-view/index.mjs +81 -90
  95. package/dist/components/date-input/index.d.mts +1 -2
  96. package/dist/components/date-input/index.mjs +6 -9
  97. package/dist/components/date-picker/index.d.mts +1 -2
  98. package/dist/components/date-picker/index.mjs +11 -16
  99. package/dist/components/deferred-content/index.d.mts +1 -3
  100. package/dist/components/deferred-content/index.mjs +24 -25
  101. package/dist/components/descriptions/index.d.mts +1 -2
  102. package/dist/components/descriptions/index.mjs +40 -39
  103. package/dist/components/dialog/index.d.mts +11 -2
  104. package/dist/components/dialog/index.mjs +78 -40
  105. package/dist/components/dock/index.d.mts +1 -3
  106. package/dist/components/dock/index.mjs +29 -30
  107. package/dist/components/download-trigger/index.d.mts +0 -2
  108. package/dist/components/download-trigger/index.mjs +2 -3
  109. package/dist/components/drawer/index.d.mts +1 -2
  110. package/dist/components/drawer/index.mjs +9 -18
  111. package/dist/components/dynamic-input/index.d.mts +1 -3
  112. package/dist/components/dynamic-input/index.mjs +73 -77
  113. package/dist/components/editable/index.d.mts +1 -2
  114. package/dist/components/editable/index.mjs +7 -10
  115. package/dist/components/ellipsis/index.d.mts +1 -3
  116. package/dist/components/ellipsis/index.mjs +21 -20
  117. package/dist/components/empty/index.d.mts +1 -3
  118. package/dist/components/empty/index.mjs +3 -4
  119. package/dist/components/field/index.d.mts +1 -2
  120. package/dist/components/field/index.mjs +4 -5
  121. package/dist/components/fieldset/index.d.mts +1 -2
  122. package/dist/components/fieldset/index.mjs +6 -9
  123. package/dist/components/file-upload/index.d.mts +1 -2
  124. package/dist/components/file-upload/index.mjs +6 -7
  125. package/dist/components/float-button/index.d.mts +25 -3
  126. package/dist/components/float-button/index.mjs +108 -39
  127. package/dist/components/floating-panel/index.d.mts +1 -2
  128. package/dist/components/floating-panel/index.mjs +10 -21
  129. package/dist/components/focus-trap/index.d.mts +0 -2
  130. package/dist/components/focus-trap/index.mjs +2 -3
  131. package/dist/components/form/index.d.mts +0 -2
  132. package/dist/components/form/index.mjs +42 -58
  133. package/dist/components/format/index.d.mts +1 -3
  134. package/dist/components/format/index.mjs +1 -2
  135. package/dist/components/frame/index.d.mts +1 -2
  136. package/dist/components/frame/index.mjs +3 -4
  137. package/dist/components/grid/index.d.mts +1 -3
  138. package/dist/components/grid/index.mjs +23 -22
  139. package/dist/components/highlight/index.d.mts +1 -3
  140. package/dist/components/highlight/index.mjs +2 -3
  141. package/dist/components/hover-card/index.d.mts +1 -2
  142. package/dist/components/hover-card/index.mjs +12 -27
  143. package/dist/components/icon/index.d.mts +1 -3
  144. package/dist/components/icon/index.mjs +35 -36
  145. package/dist/components/image/index.d.mts +1 -3
  146. package/dist/components/image/index.mjs +48 -52
  147. package/dist/components/image-cropper/index.d.mts +1 -2
  148. package/dist/components/image-cropper/index.mjs +5 -6
  149. package/dist/components/image-viewer/index.d.mts +1 -1
  150. package/dist/components/image-viewer/index.mjs +1 -2
  151. package/dist/components/input/index.d.mts +1 -3
  152. package/dist/components/input/index.mjs +1 -2
  153. package/dist/components/input-group/index.d.mts +1 -2
  154. package/dist/components/input-group/index.mjs +19 -16
  155. package/dist/components/json-tree-view/index.d.mts +1 -2
  156. package/dist/components/json-tree-view/index.mjs +5 -6
  157. package/dist/components/kbd/index.d.mts +1 -3
  158. package/dist/components/kbd/index.mjs +12 -11
  159. package/dist/components/layout/index.d.mts +1 -2
  160. package/dist/components/layout/index.mjs +92 -84
  161. package/dist/components/link/index.d.mts +1 -3
  162. package/dist/components/link/index.mjs +15 -15
  163. package/dist/components/list/index.d.mts +1 -2
  164. package/dist/components/list/index.mjs +57 -61
  165. package/dist/components/listbox/index.d.mts +1 -2
  166. package/dist/components/listbox/index.mjs +8 -11
  167. package/dist/components/marquee/index.d.mts +1 -2
  168. package/dist/components/marquee/index.mjs +7 -8
  169. package/dist/components/masonry/index.d.mts +1 -3
  170. package/dist/components/masonry/index.mjs +19 -18
  171. package/dist/components/media-player/index.d.mts +1 -1
  172. package/dist/components/media-player/index.mjs +1 -2
  173. package/dist/components/mentions/index.d.mts +2 -2
  174. package/dist/components/mentions/index.mjs +1 -3
  175. package/dist/components/menu/index.d.mts +1 -2
  176. package/dist/components/menu/index.mjs +8 -17
  177. package/dist/components/menubar/index.d.mts +1 -2
  178. package/dist/components/menubar/index.mjs +66 -72
  179. package/dist/components/meter/index.d.mts +1 -2
  180. package/dist/components/meter/index.mjs +42 -43
  181. package/dist/components/navigation-menu/index.d.mts +1 -2
  182. package/dist/components/navigation-menu/index.mjs +7 -12
  183. package/dist/components/number-input/index.d.mts +1 -2
  184. package/dist/components/number-input/index.mjs +7 -10
  185. package/dist/components/order-list/index.d.mts +1 -3
  186. package/dist/components/order-list/index.mjs +86 -101
  187. package/dist/components/page-header/index.d.mts +1 -3
  188. package/dist/components/page-header/index.mjs +3 -4
  189. package/dist/components/pagination/index.d.mts +1 -2
  190. package/dist/components/pagination/index.mjs +31 -42
  191. package/dist/components/password-input/index.d.mts +1 -2
  192. package/dist/components/password-input/index.mjs +6 -7
  193. package/dist/components/pin-input/index.d.mts +1 -2
  194. package/dist/components/pin-input/index.mjs +6 -9
  195. package/dist/components/popconfirm/index.d.mts +2 -3
  196. package/dist/components/popconfirm/index.mjs +15 -23
  197. package/dist/components/popover/index.d.mts +2 -26
  198. package/dist/components/popover/index.mjs +10 -21
  199. package/dist/components/presence/index.d.mts +0 -2
  200. package/dist/components/presence/index.mjs +2 -3
  201. package/dist/components/progress/index.d.mts +1 -2
  202. package/dist/components/progress/index.mjs +14 -26
  203. package/dist/components/progress-group/index.d.mts +1 -3
  204. package/dist/components/progress-group/index.mjs +60 -68
  205. package/dist/components/qr-code/index.d.mts +1 -2
  206. package/dist/components/qr-code/index.mjs +5 -8
  207. package/dist/components/radio-group/index.d.mts +1 -2
  208. package/dist/components/radio-group/index.mjs +6 -9
  209. package/dist/components/rating-group/index.d.mts +1 -2
  210. package/dist/components/rating-group/index.mjs +7 -10
  211. package/dist/components/result/index.d.mts +1 -2
  212. package/dist/components/result/index.mjs +28 -29
  213. package/dist/components/scroll-area/index.d.mts +8 -3
  214. package/dist/components/scroll-area/index.mjs +19 -11
  215. package/dist/components/segment-group/index.d.mts +1 -2
  216. package/dist/components/segment-group/index.mjs +5 -8
  217. package/dist/components/select/index.d.mts +1 -1
  218. package/dist/components/select/index.mjs +1 -2
  219. package/dist/components/separator/index.d.mts +1 -3
  220. package/dist/components/separator/index.mjs +21 -20
  221. package/dist/components/signature-pad/index.d.mts +1 -2
  222. package/dist/components/signature-pad/index.mjs +7 -10
  223. package/dist/components/skeleton/index.d.mts +1 -3
  224. package/dist/components/skeleton/index.mjs +12 -11
  225. package/dist/components/slider/index.d.mts +1 -2
  226. package/dist/components/slider/index.mjs +6 -9
  227. package/dist/components/spinner/index.d.mts +1 -3
  228. package/dist/components/spinner/index.mjs +20 -19
  229. package/dist/components/split-button/index.d.mts +1 -2
  230. package/dist/components/split-button/index.mjs +92 -94
  231. package/dist/components/splitter/index.d.mts +1 -2
  232. package/dist/components/splitter/index.mjs +5 -8
  233. package/dist/components/spotlight/index.d.mts +1 -3
  234. package/dist/components/spotlight/index.mjs +22 -23
  235. package/dist/components/stack/index.d.mts +1 -3
  236. package/dist/components/stack/index.mjs +24 -23
  237. package/dist/components/stat/index.d.mts +1 -2
  238. package/dist/components/stat/index.mjs +15 -14
  239. package/dist/components/steps/index.d.mts +0 -2
  240. package/dist/components/steps/index.mjs +10 -17
  241. package/dist/components/swap/index.d.mts +1 -2
  242. package/dist/components/swap/index.mjs +5 -6
  243. package/dist/components/switch/index.d.mts +1 -2
  244. package/dist/components/switch/index.mjs +6 -9
  245. package/dist/components/table/index.d.mts +0 -2
  246. package/dist/components/table/index.mjs +233 -320
  247. package/dist/components/tabs/index.d.mts +8 -12
  248. package/dist/components/tabs/index.mjs +83 -34
  249. package/dist/components/tag/index.d.mts +1 -2
  250. package/dist/components/tag/index.mjs +46 -70
  251. package/dist/components/tags-input/index.d.mts +1 -2
  252. package/dist/components/tags-input/index.mjs +7 -10
  253. package/dist/components/terminal/index.d.mts +3 -3
  254. package/dist/components/terminal/index.mjs +61 -56
  255. package/dist/components/textarea/index.d.mts +1 -3
  256. package/dist/components/textarea/index.mjs +10 -11
  257. package/dist/components/timeline/index.d.mts +1 -2
  258. package/dist/components/timeline/index.mjs +15 -14
  259. package/dist/components/timer/index.d.mts +1 -2
  260. package/dist/components/timer/index.mjs +5 -6
  261. package/dist/components/toast/index.d.mts +0 -2
  262. package/dist/components/toast/index.mjs +5 -6
  263. package/dist/components/toc/index.d.mts +1 -1
  264. package/dist/components/toc/index.mjs +1 -2
  265. package/dist/components/toggle/index.d.mts +1 -2
  266. package/dist/components/toggle/index.mjs +5 -6
  267. package/dist/components/toggle-group/index.d.mts +1 -2
  268. package/dist/components/toggle-group/index.mjs +11 -16
  269. package/dist/components/toolbar/index.d.mts +1 -3
  270. package/dist/components/toolbar/index.mjs +27 -31
  271. package/dist/components/tooltip/index.d.mts +1 -2
  272. package/dist/components/tooltip/index.mjs +7 -16
  273. package/dist/components/tour/index.d.mts +0 -2
  274. package/dist/components/tour/index.mjs +11 -16
  275. package/dist/components/transfer/index.d.mts +1 -2
  276. package/dist/components/transfer/index.mjs +115 -126
  277. package/dist/components/tree-select/index.d.mts +2 -3
  278. package/dist/components/tree-select/index.mjs +24 -33
  279. package/dist/components/tree-view/index.d.mts +10 -4
  280. package/dist/components/tree-view/index.mjs +32 -23
  281. package/dist/components/typography/index.d.mts +2 -3
  282. package/dist/components/typography/index.mjs +4 -4
  283. package/dist/components/user/index.d.mts +1 -3
  284. package/dist/components/user/index.mjs +40 -57
  285. package/dist/components/virtual-list/index.d.mts +1 -3
  286. package/dist/components/virtual-list/index.mjs +39 -45
  287. package/dist/components/watermark/index.d.mts +1 -3
  288. package/dist/components/watermark/index.mjs +15 -22
  289. package/dist/{element-dGIhOTJ6.mjs → element-liigPBUh.mjs} +1 -2
  290. package/dist/{family-Cmd8HEyK.mjs → family-B5HtE0on.mjs} +1 -2
  291. package/dist/generative/index.d.mts +0 -2
  292. package/dist/generative/index.mjs +240 -248
  293. package/dist/{icon-DTqmJCd5.mjs → icon-DQqYA2fO.mjs} +11 -17
  294. package/dist/{id-2ygNzPHF.mjs → id-DGvz-2rQ.mjs} +1 -2
  295. package/dist/{image-viewer-19s75Hz_.mjs → image-viewer-TEia4PaY.mjs} +73 -101
  296. package/dist/{index-BU5U5w04.d.mts → index-B4WyTngM.d.mts} +0 -4
  297. package/dist/index-BRvSfkKs.d.mts +25 -0
  298. package/dist/{index-DhripUtf.d.mts → index-CTsFsYdA.d.mts} +0 -4
  299. package/dist/index-CutrHCzU.d.mts +153 -0
  300. package/dist/{index-wW28BYf1.d.mts → index-CwmZdzxT.d.mts} +0 -8
  301. package/dist/index-DK7YgaAU.d.mts +37 -0
  302. package/dist/index-Dms00480.d.mts +115 -0
  303. package/dist/{index-ID48LCMU.d.mts → index-Dv6mwzIr.d.mts} +3 -7
  304. package/dist/index.d.mts +17 -17
  305. package/dist/index.mjs +12 -12
  306. package/dist/{input-BL3N3L8g.mjs → input-2xfPP-7Z.mjs} +11 -13
  307. package/dist/{media-player-yF7KVUxM.mjs → media-player-LHnTiSiN.mjs} +248 -259
  308. package/dist/mentions-CvY9IGzc.mjs +438 -0
  309. package/dist/{select-DI7pFspF.mjs → select-NaNlrYUT.mjs} +72 -96
  310. package/dist/{toc-DRHr8_eD.mjs → toc-RnPG3w7q.mjs} +5 -7
  311. package/dist/{use-component-messages-C4SCVYjD.mjs → use-component-messages-DS9ppb4C.mjs} +1 -2
  312. package/package.json +13 -13
  313. package/dist/index-DEArHiFI.d.mts +0 -104
  314. package/dist/index-DVc1L_zt.d.mts +0 -10435
  315. package/dist/mentions-DKUG7eHt.mjs +0 -279
@@ -1,15 +1,18 @@
1
- import { r as iconNode } from "../icon-DTqmJCd5.mjs";
1
+ import { r as iconNode } from "../icon-DQqYA2fO.mjs";
2
2
  import { Button } from "../components/button/index.mjs";
3
3
  import { Alert } from "../components/alert/index.mjs";
4
4
  import { Avatar } from "../components/avatar/index.mjs";
5
5
  import { Badge } from "../components/badge/index.mjs";
6
6
  import { Spinner } from "../components/spinner/index.mjs";
7
+ import { Banner } from "../components/banner/index.mjs";
8
+ import { Breadcrumb } from "../components/breadcrumb/index.mjs";
7
9
  import { Card } from "../components/card/index.mjs";
8
- import { t as Input } from "../input-BL3N3L8g.mjs";
10
+ import { t as Input } from "../input-2xfPP-7Z.mjs";
9
11
  import { Checkbox } from "../components/checkbox/index.mjs";
12
+ import { FloatButton } from "../components/float-button/index.mjs";
10
13
  import { Progress } from "../components/progress/index.mjs";
11
14
  import { RadioGroup } from "../components/radio-group/index.mjs";
12
- import { t as Select } from "../select-DI7pFspF.mjs";
15
+ import { t as Select } from "../select-NaNlrYUT.mjs";
13
16
  import { Separator } from "../components/separator/index.mjs";
14
17
  import { Slider } from "../components/slider/index.mjs";
15
18
  import { Stack } from "../components/stack/index.mjs";
@@ -17,14 +20,12 @@ import { Stat } from "../components/stat/index.mjs";
17
20
  import { Switch } from "../components/switch/index.mjs";
18
21
  import { Textarea } from "../components/textarea/index.mjs";
19
22
  import { Typography } from "../components/typography/index.mjs";
20
- import { createComponent } from "@solidjs/web";
21
- import { For, Show, createComponent as createComponent$1 } from "solid-js";
22
- import { createListCollection } from "@ark-ui/solid/collection";
23
+ import { Show, createComponent } from "solid-js";
23
24
  import { z } from "zod";
24
25
  import { defineRegistry, useBoundProp } from "@json-render/solid";
25
26
  import { defineCatalog } from "@json-render/core";
26
27
  import { schema } from "@json-render/solid/schema";
27
- //#region \0rolldown/runtime.js
28
+ // \0rolldown/runtime.js
28
29
  var __defProp = Object.defineProperty;
29
30
  var __exportAll = (all, no_symbols) => {
30
31
  let target = {};
@@ -35,8 +36,7 @@ var __exportAll = (all, no_symbols) => {
35
36
  if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
36
37
  return target;
37
38
  };
38
- //#endregion
39
- //#region src/generative/faces.generated.ts
39
+ // src/generative/faces.generated.ts
40
40
  /** Name the faces a family contributes; the identity keeps inference
41
41
  * honest at the call site. */
42
42
  function defineFace(faces) {
@@ -52,9 +52,6 @@ const headingClass = {
52
52
  "5": "text-lg",
53
53
  "6": "text-base"
54
54
  };
55
- function initials(name) {
56
- return name.split(/\s+/).filter(Boolean).slice(0, 2).map((part) => part[0]?.toUpperCase() ?? "").join("");
57
- }
58
55
  function slug(value) {
59
56
  return value.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/(^-|-$)/g, "") || value;
60
57
  }
@@ -88,6 +85,25 @@ const faces$1 = defineFace({
88
85
  }),
89
86
  description: "A person's seal: image when given, initials as the fallback."
90
87
  },
88
+ Banner: {
89
+ props: z.object({
90
+ status: z.enum([
91
+ "ink",
92
+ "info",
93
+ "success",
94
+ "warning",
95
+ "danger"
96
+ ]).optional(),
97
+ title: z.string().optional(),
98
+ message: z.string().optional(),
99
+ dismissible: z.boolean().optional()
100
+ }),
101
+ description: "A full-width notice that speaks once across the page."
102
+ },
103
+ Breadcrumb: {
104
+ props: z.object({ items: z.array(z.string()).optional() }),
105
+ description: "A trail of waymarks from home to the current page."
106
+ },
91
107
  Badge: {
92
108
  props: z.object({
93
109
  text: z.string(),
@@ -152,6 +168,29 @@ const faces$1 = defineFace({
152
168
  }),
153
169
  description: "One independent box with its label."
154
170
  },
171
+ FloatButton: {
172
+ props: z.object({
173
+ label: z.string().optional(),
174
+ actions: z.array(z.object({
175
+ label: z.string(),
176
+ icon: z.string().optional(),
177
+ disabled: z.boolean().optional()
178
+ })).optional(),
179
+ placement: z.enum([
180
+ "bottom-end",
181
+ "bottom-start",
182
+ "top-end",
183
+ "top-start"
184
+ ]).optional(),
185
+ size: z.enum([
186
+ "sm",
187
+ "md",
188
+ "lg"
189
+ ]).optional(),
190
+ defaultOpen: z.boolean().optional()
191
+ }),
192
+ description: "A floating action and its fanned alternatives; actions use curated icon names."
193
+ },
155
194
  Heading: {
156
195
  props: z.object({
157
196
  text: z.string(),
@@ -310,8 +349,7 @@ const faces$1 = defineFace({
310
349
  description: "A multi-line field for prose-length answers."
311
350
  }
312
351
  });
313
- //#endregion
314
- //#region src/generative/shared.ts
352
+ // src/generative/shared.ts
315
353
  /** Name the entries a family contributes; the identity keeps inference
316
354
  * honest at the call site. */
317
355
  function defineEntry(entries) {
@@ -328,48 +366,37 @@ const textVoices = {
328
366
  function useBound(value, path) {
329
367
  return useBoundProp(value, path);
330
368
  }
331
- const collectionCache = /* @__PURE__ */ new Map();
332
- function collectionFor(options) {
333
- const key = JSON.stringify(options);
334
- let collection = collectionCache.get(key);
335
- if (!collection) {
336
- collection = createListCollection({ items: options });
337
- collectionCache.set(key, collection);
338
- }
339
- return collection;
340
- }
341
369
  /** A labelled field: the label whispers above, the control answers. */
342
370
  function labelled(label, control) {
343
- return label ? createComponent$1(Stack, {
371
+ return label ? createComponent(Stack, {
344
372
  gap: "xs",
345
373
  get children() {
346
- return [createComponent$1(Typography.Label, { get children() {
374
+ return [createComponent(Typography.Label, { get children() {
347
375
  return label;
348
376
  } }), control];
349
377
  }
350
378
  }) : control;
351
379
  }
352
- //#endregion
353
- //#region src/components/alert/generative.tsx
354
- var generative_exports$17 = /* @__PURE__ */ __exportAll({ default: () => generative_default$17 });
380
+ // src/components/alert/generative.tsx
381
+ var generative_exports$20 = /* @__PURE__ */ __exportAll({ default: () => generative_default$20 });
355
382
  /** A bordered notice; status picks the pigment. */
356
- var generative_default$17 = defineEntry({ Alert: {
383
+ var generative_default$20 = defineEntry({ Alert: {
357
384
  ...faces$1.Alert,
358
- component: ({ props }) => createComponent$1(Alert.Root, {
385
+ component: ({ props }) => createComponent(Alert.Root, {
359
386
  get status() {
360
387
  return props.status ?? "ink";
361
388
  },
362
389
  get children() {
363
- return [createComponent$1(Alert.Icon, {}), createComponent$1(Alert.Body, { get children() {
364
- return [createComponent$1(Alert.Title, { get children() {
390
+ return [createComponent(Alert.Icon, {}), createComponent(Alert.Body, { get children() {
391
+ return [createComponent(Alert.Title, { get children() {
365
392
  return props.title;
366
- } }), createComponent$1(Show, {
393
+ } }), createComponent(Show, {
367
394
  keyed: true,
368
395
  get when() {
369
396
  return props.message != null;
370
397
  },
371
398
  get children() {
372
- return createComponent$1(Alert.Description, { get children() {
399
+ return createComponent(Alert.Description, { get children() {
373
400
  return props.message;
374
401
  } });
375
402
  }
@@ -378,45 +405,29 @@ var generative_default$17 = defineEntry({ Alert: {
378
405
  }
379
406
  })
380
407
  } });
381
- //#endregion
382
- //#region src/components/avatar/generative.tsx
383
- var generative_exports$16 = /* @__PURE__ */ __exportAll({ default: () => generative_default$16 });
408
+ // src/components/avatar/generative.tsx
409
+ var generative_exports$19 = /* @__PURE__ */ __exportAll({ default: () => generative_default$19 });
384
410
  /** A person's seal: image when given, initials as the fallback. */
385
- var generative_default$16 = defineEntry({ Avatar: {
411
+ var generative_default$19 = defineEntry({ Avatar: {
386
412
  ...faces$1.Avatar,
387
- component: ({ props }) => createComponent$1(Avatar.Root, {
413
+ component: ({ props }) => createComponent(Avatar, {
414
+ get name() {
415
+ return props.name;
416
+ },
388
417
  get size() {
389
418
  return props.size;
390
419
  },
391
- get children() {
392
- return [createComponent$1(Show, {
393
- keyed: true,
394
- get when() {
395
- return props.src != null;
396
- },
397
- get children() {
398
- return createComponent$1(Avatar.Image, {
399
- get src() {
400
- return props.src;
401
- },
402
- get alt() {
403
- return props.name;
404
- }
405
- });
406
- }
407
- }), createComponent$1(Avatar.Fallback, { get children() {
408
- return initials(props.name);
409
- } })];
420
+ get src() {
421
+ return props.src;
410
422
  }
411
423
  })
412
424
  } });
413
- //#endregion
414
- //#region src/components/badge/generative.tsx
415
- var generative_exports$15 = /* @__PURE__ */ __exportAll({ default: () => generative_default$15 });
425
+ // src/components/badge/generative.tsx
426
+ var generative_exports$18 = /* @__PURE__ */ __exportAll({ default: () => generative_default$18 });
416
427
  /** A small status seal beside content; reads at a glance. */
417
- var generative_default$15 = defineEntry({ Badge: {
428
+ var generative_default$18 = defineEntry({ Badge: {
418
429
  ...faces$1.Badge,
419
- component: ({ props }) => createComponent$1(Badge, {
430
+ component: ({ props }) => createComponent(Badge, {
420
431
  get tone() {
421
432
  return props.tone;
422
433
  },
@@ -428,13 +439,50 @@ var generative_default$15 = defineEntry({ Badge: {
428
439
  }
429
440
  })
430
441
  } });
431
- //#endregion
432
- //#region src/components/button/generative.tsx
433
- var generative_exports$14 = /* @__PURE__ */ __exportAll({ default: () => generative_default$14 });
442
+ // src/components/banner/generative.tsx
443
+ var generative_exports$17 = /* @__PURE__ */ __exportAll({ default: () => generative_default$17 });
444
+ /** A full-width notice that speaks once across the page. */
445
+ var generative_default$17 = defineEntry({ Banner: {
446
+ ...faces$1.Banner,
447
+ component: ({ props }) => createComponent(Banner, {
448
+ get status() {
449
+ return props.status;
450
+ },
451
+ get title() {
452
+ return props.title;
453
+ },
454
+ get message() {
455
+ return props.message;
456
+ },
457
+ dismissible: true
458
+ })
459
+ } });
460
+ // src/components/breadcrumb/generative.tsx
461
+ var generative_exports$16 = /* @__PURE__ */ __exportAll({ default: () => generative_default$16 });
462
+ /** A trail of waymarks from home to the current page. */
463
+ var generative_default$16 = defineEntry({ Breadcrumb: {
464
+ ...faces$1.Breadcrumb,
465
+ component: ({ props }) => {
466
+ const labels = props.items ?? [
467
+ "Home",
468
+ "Guides",
469
+ "Ink"
470
+ ];
471
+ const items = labels.map((label, index) => index === labels.length - 1 ? { label } : {
472
+ label,
473
+ href: `#${slug(label)}`
474
+ });
475
+ return createComponent(Breadcrumb, { get items() {
476
+ return items;
477
+ } });
478
+ }
479
+ } });
480
+ // src/components/button/generative.tsx
481
+ var generative_exports$15 = /* @__PURE__ */ __exportAll({ default: () => generative_default$15 });
434
482
  /** The primary action register: solid ink for the one main action, outline, ghost, or subtle for the rest. */
435
- var generative_default$14 = defineEntry({ Button: {
483
+ var generative_default$15 = defineEntry({ Button: {
436
484
  ...faces$1.Button,
437
- component: ({ props, emit }) => createComponent$1(Button, {
485
+ component: ({ props, emit }) => createComponent(Button, {
438
486
  get variant() {
439
487
  return props.variant ?? "solid";
440
488
  },
@@ -453,57 +501,55 @@ var generative_default$14 = defineEntry({ Button: {
453
501
  }
454
502
  })
455
503
  } });
456
- //#endregion
457
- //#region src/components/card/generative.tsx
458
- var generative_exports$13 = /* @__PURE__ */ __exportAll({ default: () => generative_default$13 });
504
+ // src/components/card/generative.tsx
505
+ var generative_exports$14 = /* @__PURE__ */ __exportAll({ default: () => generative_default$14 });
459
506
  /** Grouping vessel. Give title and description instead of hand-building a header; children render in the body. */
460
- var generative_default$13 = defineEntry({ Card: {
507
+ var generative_default$14 = defineEntry({ Card: {
461
508
  ...faces$1.Card,
462
- component: ({ props, children }) => createComponent$1(Card.Root, { get children() {
463
- return [createComponent$1(Show, {
509
+ component: ({ props, children }) => createComponent(Card.Root, { get children() {
510
+ return [createComponent(Show, {
464
511
  keyed: true,
465
512
  get when() {
466
513
  return props.title != null || props.description != null;
467
514
  },
468
515
  get children() {
469
- return createComponent$1(Card.Header, { get children() {
470
- return [createComponent$1(Show, {
516
+ return createComponent(Card.Header, { get children() {
517
+ return [createComponent(Show, {
471
518
  keyed: true,
472
519
  get when() {
473
520
  return props.title != null;
474
521
  },
475
522
  get children() {
476
- return createComponent$1(Card.Title, { get children() {
523
+ return createComponent(Card.Title, { get children() {
477
524
  return props.title;
478
525
  } });
479
526
  }
480
- }), createComponent$1(Show, {
527
+ }), createComponent(Show, {
481
528
  keyed: true,
482
529
  get when() {
483
530
  return props.description != null;
484
531
  },
485
532
  get children() {
486
- return createComponent$1(Card.Description, { get children() {
533
+ return createComponent(Card.Description, { get children() {
487
534
  return props.description;
488
535
  } });
489
536
  }
490
537
  })];
491
538
  } });
492
539
  }
493
- }), createComponent$1(Card.Content, { get children() {
540
+ }), createComponent(Card.Content, { get children() {
494
541
  return children;
495
542
  } })];
496
543
  } })
497
544
  } });
498
- //#endregion
499
- //#region src/components/checkbox/generative.tsx
500
- var generative_exports$12 = /* @__PURE__ */ __exportAll({ default: () => generative_default$12 });
545
+ // src/components/checkbox/generative.tsx
546
+ var generative_exports$13 = /* @__PURE__ */ __exportAll({ default: () => generative_default$13 });
501
547
  /** One independent box with its label. */
502
- var generative_default$12 = defineEntry({ Checkbox: {
548
+ var generative_default$13 = defineEntry({ Checkbox: {
503
549
  ...faces$1.Checkbox,
504
550
  component: ({ props }) => {
505
551
  const mark = iconNode("check");
506
- return createComponent$1(Checkbox.Root, {
552
+ return createComponent(Checkbox.Root, {
507
553
  get defaultChecked() {
508
554
  return props.checked ?? false;
509
555
  },
@@ -512,29 +558,57 @@ var generative_default$12 = defineEntry({ Checkbox: {
512
558
  },
513
559
  get children() {
514
560
  return [
515
- createComponent$1(Checkbox.Control, { get children() {
516
- return createComponent$1(Checkbox.Indicator, { get children() {
561
+ createComponent(Checkbox.Control, { get children() {
562
+ return createComponent(Checkbox.Indicator, { get children() {
517
563
  return mark;
518
564
  } });
519
565
  } }),
520
- createComponent$1(Checkbox.Label, { get children() {
566
+ createComponent(Checkbox.Label, { get children() {
521
567
  return props.label;
522
568
  } }),
523
- createComponent$1(Checkbox.HiddenInput, {})
569
+ createComponent(Checkbox.HiddenInput, {})
524
570
  ];
525
571
  }
526
572
  });
527
573
  }
528
574
  } });
529
- //#endregion
530
- //#region src/components/input/generative.tsx
575
+ // src/components/float-button/generative.tsx
576
+ var generative_exports$12 = /* @__PURE__ */ __exportAll({ default: () => generative_default$12 });
577
+ /** A floating action cluster; named actions fan out from one corner. */
578
+ var generative_default$12 = defineEntry({ FloatButton: {
579
+ ...faces$1.FloatButton,
580
+ component: ({ props }) => {
581
+ const actions = Array.isArray(props.actions) ? props.actions : [{ label: "Edit" }];
582
+ return createComponent(FloatButton, {
583
+ get actions() {
584
+ return actions.map((action) => ({
585
+ ...action,
586
+ icon: action.icon ?? "pencil"
587
+ }));
588
+ },
589
+ get defaultOpen() {
590
+ return true;
591
+ },
592
+ get label() {
593
+ return props.label;
594
+ },
595
+ get placement() {
596
+ return props.placement;
597
+ },
598
+ get size() {
599
+ return props.size;
600
+ }
601
+ });
602
+ }
603
+ } });
604
+ // src/components/input/generative.tsx
531
605
  var generative_exports$11 = /* @__PURE__ */ __exportAll({ default: () => generative_default$11 });
532
606
  /** A single-line field; rely on border, surface and the focus halo. */
533
607
  var generative_default$11 = defineEntry({ Input: {
534
608
  ...faces$1.Input,
535
609
  component: ({ props, bindings }) => {
536
610
  const [value, setValue] = useBound(props.value, bindings?.value);
537
- return labelled(props.label, createComponent$1(Input, {
611
+ return labelled(props.label, createComponent(Input, {
538
612
  get value() {
539
613
  return value ?? "";
540
614
  },
@@ -551,40 +625,26 @@ var generative_default$11 = defineEntry({ Input: {
551
625
  }));
552
626
  }
553
627
  } });
554
- //#endregion
555
- //#region src/components/progress/generative.tsx
628
+ // src/components/progress/generative.tsx
556
629
  var generative_exports$10 = /* @__PURE__ */ __exportAll({ default: () => generative_default$10 });
557
630
  /** A working track that fills toward done. */
558
631
  var generative_default$10 = defineEntry({ Progress: {
559
632
  ...faces$1.Progress,
560
- component: ({ props }) => createComponent$1(Progress.Root, {
633
+ component: ({ props }) => createComponent(Progress, {
561
634
  get value() {
562
635
  return props.value;
563
636
  },
564
637
  get max() {
565
638
  return props.max;
566
639
  },
567
- get children() {
568
- return [createComponent$1(Show, {
569
- keyed: true,
570
- get when() {
571
- return props.label != null;
572
- },
573
- get children() {
574
- return createComponent$1(Progress.Label, { get children() {
575
- return props.label;
576
- } });
577
- }
578
- }), createComponent$1(Progress.Track, { get children() {
579
- return createComponent$1(Progress.Range, {});
580
- } })];
640
+ get label() {
641
+ return props.label;
581
642
  }
582
643
  })
583
644
  } });
584
- //#endregion
585
- //#region src/components/radio-group/generative.tsx
645
+ // src/components/radio-group/generative.tsx
586
646
  var generative_exports$9 = /* @__PURE__ */ __exportAll({ default: () => generative_default$9 });
587
- /** Several boxes where exactly one may hold. */
647
+ /** Several choices where exactly one may hold. */
588
648
  var generative_default$9 = defineEntry({ RadioGroup: {
589
649
  ...faces$1.RadioGroup,
590
650
  component: ({ props }) => {
@@ -593,123 +653,75 @@ var generative_default$9 = defineEntry({ RadioGroup: {
593
653
  "Option B",
594
654
  "Option C"
595
655
  ];
596
- const list = createComponent$1(Stack, {
597
- gap: "sm",
598
- get children() {
599
- return createComponent(For, {
600
- get each() {
601
- return values();
602
- },
603
- children: (value) => createComponent$1(RadioGroup.Item, {
604
- get value() {
605
- return value;
606
- },
607
- get children() {
608
- return [
609
- createComponent$1(RadioGroup.ItemControl, {}),
610
- createComponent$1(RadioGroup.ItemText, { get children() {
611
- return value;
612
- } }),
613
- createComponent$1(RadioGroup.ItemHiddenInput, {})
614
- ];
615
- }
616
- })
617
- });
618
- }
619
- });
620
- return labelled(props.label, createComponent$1(RadioGroup.Root, {
656
+ return createComponent(RadioGroup, {
657
+ get label() {
658
+ return props.label;
659
+ },
660
+ get items() {
661
+ return values().map((value) => ({
662
+ value,
663
+ label: value
664
+ }));
665
+ },
621
666
  get defaultValue() {
622
667
  return slug(values()[0] ?? "");
623
- },
624
- get children() {
625
- return list;
626
668
  }
627
- }));
669
+ });
628
670
  }
629
671
  } });
630
- //#endregion
631
- //#region src/components/select/generative.tsx
672
+ // src/components/select/generative.tsx
632
673
  var generative_exports$8 = /* @__PURE__ */ __exportAll({ default: () => generative_default$8 });
633
674
  /** A choice field that opens a ruled list; options carry label and value. */
634
675
  var generative_default$8 = defineEntry({ Select: {
635
676
  ...faces$1.Select,
636
677
  component: ({ props, bindings }) => {
637
678
  const [value, setValue] = useBound(props.value, bindings?.value);
638
- const collection = collectionFor(props.options);
639
- return labelled(props.label, createComponent$1(Select.Root, {
640
- collection,
641
- get disabled() {
642
- return props.disabled;
679
+ return createComponent(Select, {
680
+ get label() {
681
+ return props.label;
682
+ },
683
+ get placeholder() {
684
+ return props.placeholder;
685
+ },
686
+ get options() {
687
+ return props.options;
643
688
  },
644
689
  get multiple() {
645
690
  return props.multiple;
646
691
  },
692
+ get disabled() {
693
+ return props.disabled;
694
+ },
647
695
  get value() {
648
- return props.multiple ? Array.isArray(value) ? value : value ? [value] : void 0 : typeof value === "string" ? [value] : void 0;
696
+ return props.multiple ? Array.isArray(value) ? value : value ? [value] : void 0 : Array.isArray(value) ? value.at(0) ?? "" : value;
649
697
  },
650
- onValueChange: (details) => setValue(props.multiple ? details.value : details.value[0] ?? ""),
651
- get children() {
652
- return [
653
- createComponent$1(Select.Control, { get children() {
654
- return [createComponent$1(Select.Trigger, { get children() {
655
- return createComponent$1(Select.ValueText, { get placeholder() {
656
- return props.placeholder;
657
- } });
658
- } }), createComponent$1(Select.Indicator, { get children() {
659
- return iconNode("chevrons-up-down");
660
- } })];
661
- } }),
662
- createComponent$1(Select.Positioner, { get children() {
663
- return createComponent$1(Select.Content, { get children() {
664
- return createComponent$1(Select.ItemGroup, { get children() {
665
- return createComponent(For, {
666
- get each() {
667
- return props.options;
668
- },
669
- children: (option) => createComponent$1(Select.Item, {
670
- get item() {
671
- return option;
672
- },
673
- get children() {
674
- return [createComponent$1(Select.ItemText, { get children() {
675
- return option.label;
676
- } }), createComponent$1(Select.ItemIndicator, { get children() {
677
- return iconNode("check");
678
- } })];
679
- }
680
- })
681
- });
682
- } });
683
- } });
684
- } }),
685
- createComponent$1(Select.HiddenSelect, {})
686
- ];
687
- }
688
- }));
698
+ onValueChange: setValue
699
+ });
689
700
  }
690
701
  } });
691
- //#endregion
692
- //#region src/components/separator/generative.tsx
702
+ // src/components/separator/generative.tsx
693
703
  var generative_exports$7 = /* @__PURE__ */ __exportAll({ default: () => generative_default$7 });
694
704
  /** Hairline divider between sections. */
695
705
  var generative_default$7 = defineEntry({ Separator: {
696
706
  ...faces$1.Separator,
697
- component: ({ props }) => createComponent$1(Separator, {
707
+ component: ({ props }) => createComponent(Separator, {
698
708
  get orientation() {
699
709
  return props.orientation ?? "horizontal";
700
710
  },
701
711
  decorative: true
702
712
  })
703
713
  } });
704
- //#endregion
705
- //#region src/components/slider/generative.tsx
714
+ // src/components/slider/generative.tsx
706
715
  var generative_exports$6 = /* @__PURE__ */ __exportAll({ default: () => generative_default$6 });
707
716
  /** A ruled track the hand slides between bounds. */
708
717
  var generative_default$6 = defineEntry({ Slider: {
709
718
  ...faces$1.Slider,
710
- component: ({ props }) => labelled(props.label, createComponent$1(Slider.Root, {
719
+ component: ({ props }) => createComponent(Slider, {
720
+ get label() {
721
+ return props.label;
722
+ },
711
723
  get defaultValue() {
712
- return [props.value ?? 50];
724
+ return props.value ?? 50;
713
725
  },
714
726
  get min() {
715
727
  return props.min;
@@ -719,23 +731,15 @@ var generative_default$6 = defineEntry({ Slider: {
719
731
  },
720
732
  get step() {
721
733
  return props.step;
722
- },
723
- get children() {
724
- return [createComponent$1(Slider.Control, { get children() {
725
- return [createComponent$1(Slider.Track, { get children() {
726
- return createComponent$1(Slider.Range, {});
727
- } }), createComponent$1(Slider.Thumb, { index: 0 })];
728
- } })];
729
734
  }
730
- }))
735
+ })
731
736
  } });
732
- //#endregion
733
- //#region src/components/spinner/generative.tsx
737
+ // src/components/spinner/generative.tsx
734
738
  var generative_exports$5 = /* @__PURE__ */ __exportAll({ default: () => generative_default$5 });
735
739
  /** A quiet wheel for work still settling. */
736
740
  var generative_default$5 = defineEntry({ Spinner: {
737
741
  ...faces$1.Spinner,
738
- component: ({ props }) => createComponent$1(Spinner, {
742
+ component: ({ props }) => createComponent(Spinner, {
739
743
  get size() {
740
744
  return props.size;
741
745
  },
@@ -744,13 +748,12 @@ var generative_default$5 = defineEntry({ Spinner: {
744
748
  }
745
749
  })
746
750
  } });
747
- //#endregion
748
- //#region src/components/stack/generative.tsx
751
+ // src/components/stack/generative.tsx
749
752
  var generative_exports$4 = /* @__PURE__ */ __exportAll({ default: () => generative_default$4 });
750
753
  /** Flex container for layout. direction column stacks vertically, row lays side by side. gap is a named spacing step. */
751
754
  var generative_default$4 = defineEntry({ Stack: {
752
755
  ...faces$1.Stack,
753
- component: ({ props, children }) => createComponent$1(Stack, {
756
+ component: ({ props, children }) => createComponent(Stack, {
754
757
  get direction() {
755
758
  return props.direction ?? "column";
756
759
  },
@@ -771,27 +774,26 @@ var generative_default$4 = defineEntry({ Stack: {
771
774
  }
772
775
  })
773
776
  } });
774
- //#endregion
775
- //#region src/components/stat/generative.tsx
777
+ // src/components/stat/generative.tsx
776
778
  var generative_exports$3 = /* @__PURE__ */ __exportAll({ default: () => generative_default$3 });
777
779
  /** One loud figure with its quiet label and an optional delta. */
778
780
  var generative_default$3 = defineEntry({ Stat: {
779
781
  ...faces$1.Stat,
780
- component: ({ props }) => createComponent$1(Stat.Root, { get children() {
782
+ component: ({ props }) => createComponent(Stat.Root, { get children() {
781
783
  return [
782
- createComponent$1(Stat.Label, { get children() {
784
+ createComponent(Stat.Label, { get children() {
783
785
  return props.label;
784
786
  } }),
785
- createComponent$1(Stat.Value, { get children() {
787
+ createComponent(Stat.Value, { get children() {
786
788
  return props.value;
787
789
  } }),
788
- createComponent$1(Show, {
790
+ createComponent(Show, {
789
791
  keyed: true,
790
792
  get when() {
791
793
  return props.change != null;
792
794
  },
793
795
  get children() {
794
- return createComponent$1(Stat.Delta, {
796
+ return createComponent(Stat.Delta, {
795
797
  get direction() {
796
798
  return props.direction ?? "flat";
797
799
  },
@@ -804,45 +806,35 @@ var generative_default$3 = defineEntry({ Stat: {
804
806
  ];
805
807
  } })
806
808
  } });
807
- //#endregion
808
- //#region src/components/switch/generative.tsx
809
+ // src/components/switch/generative.tsx
809
810
  var generative_exports$2 = /* @__PURE__ */ __exportAll({ default: () => generative_default$2 });
810
811
  /** An instant on/off; label names what it switches. */
811
812
  var generative_default$2 = defineEntry({ Switch: {
812
813
  ...faces$1.Switch,
813
814
  component: ({ props, bindings }) => {
814
815
  const [checked, setChecked] = useBound(props.checked, bindings?.checked);
815
- return createComponent$1(Switch.Root, {
816
+ return createComponent(Switch, {
816
817
  get checked() {
817
818
  return checked ?? false;
818
819
  },
820
+ get label() {
821
+ return props.label;
822
+ },
819
823
  get disabled() {
820
824
  return props.disabled;
821
825
  },
822
- onCheckedChange: (details) => setChecked(details.checked),
823
- get children() {
824
- return [
825
- createComponent$1(Switch.Control, { get children() {
826
- return createComponent$1(Switch.Thumb, {});
827
- } }),
828
- createComponent$1(Switch.Label, { get children() {
829
- return props.label;
830
- } }),
831
- createComponent$1(Switch.HiddenInput, {})
832
- ];
833
- }
826
+ onCheckedChange: (next) => setChecked(next)
834
827
  });
835
828
  }
836
829
  } });
837
- //#endregion
838
- //#region src/components/textarea/generative.tsx
830
+ // src/components/textarea/generative.tsx
839
831
  var generative_exports$1 = /* @__PURE__ */ __exportAll({ default: () => generative_default$1 });
840
832
  /** A multi-line field for prose-length answers. */
841
833
  var generative_default$1 = defineEntry({ Textarea: {
842
834
  ...faces$1.Textarea,
843
835
  component: ({ props, bindings }) => {
844
836
  const [value, setValue] = useBound(props.value, bindings?.value);
845
- return labelled(props.label, createComponent$1(Textarea, {
837
+ return labelled(props.label, createComponent(Textarea, {
846
838
  get value() {
847
839
  return value ?? "";
848
840
  },
@@ -859,14 +851,13 @@ var generative_default$1 = defineEntry({ Textarea: {
859
851
  }));
860
852
  }
861
853
  } });
862
- //#endregion
863
- //#region src/components/typography/generative.tsx
854
+ // src/components/typography/generative.tsx
864
855
  var generative_exports = /* @__PURE__ */ __exportAll({ default: () => generative_default });
865
856
  /** Section heading. One per view at level 1; do not skip levels. */
866
857
  var generative_default = defineEntry({
867
858
  Heading: {
868
859
  ...faces$1.Heading,
869
- component: ({ props }) => createComponent$1(Typography.Heading, {
860
+ component: ({ props }) => createComponent(Typography.Heading, {
870
861
  get class() {
871
862
  return headingClass[props.level ?? "2"];
872
863
  },
@@ -879,25 +870,27 @@ var generative_default = defineEntry({
879
870
  ...faces$1.Text,
880
871
  component: ({ props }) => {
881
872
  const Voice = textVoices[props.variant ?? "body"];
882
- return createComponent$1(Voice, { get children() {
873
+ return createComponent(Voice, { get children() {
883
874
  return props.text;
884
875
  } });
885
876
  }
886
877
  }
887
878
  });
888
- //#endregion
889
- //#region src/generative/index.ts
879
+ // src/generative/index.ts
890
880
  /** Every family writes its own generative face beside the component —
891
881
  * `components/<family>/generative.tsx` — and this module is where they
892
882
  * meet: one glob picks the faces up, so a family that lands in the
893
883
  * package is in the vocabulary without anyone editing this file. */
894
884
  const modules = /* #__PURE__ */ Object.assign({
895
- "../components/alert/generative.tsx": generative_exports$17,
896
- "../components/avatar/generative.tsx": generative_exports$16,
897
- "../components/badge/generative.tsx": generative_exports$15,
898
- "../components/button/generative.tsx": generative_exports$14,
899
- "../components/card/generative.tsx": generative_exports$13,
900
- "../components/checkbox/generative.tsx": generative_exports$12,
885
+ "../components/alert/generative.tsx": generative_exports$20,
886
+ "../components/avatar/generative.tsx": generative_exports$19,
887
+ "../components/badge/generative.tsx": generative_exports$18,
888
+ "../components/banner/generative.tsx": generative_exports$17,
889
+ "../components/breadcrumb/generative.tsx": generative_exports$16,
890
+ "../components/button/generative.tsx": generative_exports$15,
891
+ "../components/card/generative.tsx": generative_exports$14,
892
+ "../components/checkbox/generative.tsx": generative_exports$13,
893
+ "../components/float-button/generative.tsx": generative_exports$12,
901
894
  "../components/input/generative.tsx": generative_exports$11,
902
895
  "../components/progress/generative.tsx": generative_exports$10,
903
896
  "../components/radio-group/generative.tsx": generative_exports$9,
@@ -938,5 +931,4 @@ const { registry } = defineRegistry(catalog, {
938
931
  * several names - Layout plus its parts, Bento plus its cell - and the
939
932
  * palette groups by provenance, never by guessing from the name. */
940
933
  const faceFamilies = Object.fromEntries(Object.entries(entries).map(([name, entry]) => [name, entry._from]));
941
- //#endregion
942
934
  export { catalog, faceFamilies, registry };