@stridge/noctis 1.0.0-beta.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 (565) hide show
  1. package/README.md +60 -0
  2. package/dist/_virtual/_rolldown/runtime.js +27 -0
  3. package/dist/components/accordion/accordion.context.js +15 -0
  4. package/dist/components/accordion/accordion.d.ts +136 -0
  5. package/dist/components/accordion/accordion.js +132 -0
  6. package/dist/components/accordion/accordion.props.d.ts +45 -0
  7. package/dist/components/accordion/accordion.props.js +53 -0
  8. package/dist/components/accordion/accordion.slots.d.ts +24 -0
  9. package/dist/components/accordion/accordion.slots.js +39 -0
  10. package/dist/components/accordion/accordion.types.d.ts +11 -0
  11. package/dist/components/accordion/index.d.ts +3 -0
  12. package/dist/components/alert-dialog/alert-dialog.context.js +16 -0
  13. package/dist/components/alert-dialog/alert-dialog.d.ts +324 -0
  14. package/dist/components/alert-dialog/alert-dialog.js +279 -0
  15. package/dist/components/alert-dialog/alert-dialog.props.d.ts +85 -0
  16. package/dist/components/alert-dialog/alert-dialog.props.js +84 -0
  17. package/dist/components/alert-dialog/alert-dialog.slots.d.ts +29 -0
  18. package/dist/components/alert-dialog/alert-dialog.slots.js +52 -0
  19. package/dist/components/alert-dialog/alert-dialog.types.d.ts +22 -0
  20. package/dist/components/alert-dialog/index.d.ts +3 -0
  21. package/dist/components/autocomplete/autocomplete.context.d.ts +5 -0
  22. package/dist/components/autocomplete/autocomplete.context.js +13 -0
  23. package/dist/components/autocomplete/autocomplete.d.ts +364 -0
  24. package/dist/components/autocomplete/autocomplete.js +373 -0
  25. package/dist/components/autocomplete/autocomplete.props.d.ts +83 -0
  26. package/dist/components/autocomplete/autocomplete.props.js +63 -0
  27. package/dist/components/autocomplete/autocomplete.slots.d.ts +32 -0
  28. package/dist/components/autocomplete/autocomplete.slots.js +61 -0
  29. package/dist/components/autocomplete/index.d.ts +3 -0
  30. package/dist/components/avatar/avatar.context.js +21 -0
  31. package/dist/components/avatar/avatar.d.ts +235 -0
  32. package/dist/components/avatar/avatar.js +208 -0
  33. package/dist/components/avatar/avatar.props.d.ts +86 -0
  34. package/dist/components/avatar/avatar.props.js +78 -0
  35. package/dist/components/avatar/avatar.slots.d.ts +35 -0
  36. package/dist/components/avatar/avatar.slots.js +49 -0
  37. package/dist/components/avatar/avatar.types.d.ts +28 -0
  38. package/dist/components/avatar/index.d.ts +2 -0
  39. package/dist/components/button/button.d.ts +91 -0
  40. package/dist/components/button/button.js +82 -0
  41. package/dist/components/button/button.props.d.ts +48 -0
  42. package/dist/components/button/button.props.js +25 -0
  43. package/dist/components/button/button.slots.d.ts +30 -0
  44. package/dist/components/button/button.slots.js +40 -0
  45. package/dist/components/button/button.types.d.ts +12 -0
  46. package/dist/components/button/index.d.ts +2 -0
  47. package/dist/components/button-group/button-group.context.js +15 -0
  48. package/dist/components/button-group/button-group.d.ts +60 -0
  49. package/dist/components/button-group/button-group.js +50 -0
  50. package/dist/components/button-group/button-group.props.d.ts +22 -0
  51. package/dist/components/button-group/button-group.props.js +33 -0
  52. package/dist/components/button-group/button-group.slots.d.ts +12 -0
  53. package/dist/components/button-group/button-group.slots.js +18 -0
  54. package/dist/components/button-group/index.d.ts +2 -0
  55. package/dist/components/checkbox/checkbox-group.d.ts +46 -0
  56. package/dist/components/checkbox/checkbox-group.js +31 -0
  57. package/dist/components/checkbox/checkbox.context.js +15 -0
  58. package/dist/components/checkbox/checkbox.d.ts +130 -0
  59. package/dist/components/checkbox/checkbox.js +117 -0
  60. package/dist/components/checkbox/checkbox.props.d.ts +84 -0
  61. package/dist/components/checkbox/checkbox.props.js +49 -0
  62. package/dist/components/checkbox/checkbox.slots.d.ts +27 -0
  63. package/dist/components/checkbox/checkbox.slots.js +40 -0
  64. package/dist/components/checkbox/index.d.ts +3 -0
  65. package/dist/components/code-block/brand-logo.d.ts +37 -0
  66. package/dist/components/code-block/brand-logo.js +212 -0
  67. package/dist/components/code-block/code-block.context.js +13 -0
  68. package/dist/components/code-block/code-block.d.ts +190 -0
  69. package/dist/components/code-block/code-block.js +267 -0
  70. package/dist/components/code-block/code-block.props.d.ts +42 -0
  71. package/dist/components/code-block/code-block.props.js +51 -0
  72. package/dist/components/code-block/code-block.slots.d.ts +16 -0
  73. package/dist/components/code-block/code-block.slots.js +31 -0
  74. package/dist/components/code-block/index.d.ts +3 -0
  75. package/dist/components/code-block/language-label.js +43 -0
  76. package/dist/components/collapsible/collapsible.context.js +18 -0
  77. package/dist/components/collapsible/collapsible.d.ts +167 -0
  78. package/dist/components/collapsible/collapsible.js +182 -0
  79. package/dist/components/collapsible/collapsible.props.d.ts +33 -0
  80. package/dist/components/collapsible/collapsible.props.js +44 -0
  81. package/dist/components/collapsible/collapsible.slots.d.ts +25 -0
  82. package/dist/components/collapsible/collapsible.slots.js +40 -0
  83. package/dist/components/collapsible/collapsible.types.d.ts +23 -0
  84. package/dist/components/collapsible/index.d.ts +2 -0
  85. package/dist/components/color-picker/area.d.ts +11 -0
  86. package/dist/components/color-picker/area.js +148 -0
  87. package/dist/components/color-picker/color-picker.d.ts +110 -0
  88. package/dist/components/color-picker/color-picker.js +149 -0
  89. package/dist/components/color-picker/color-picker.props.d.ts +69 -0
  90. package/dist/components/color-picker/color-picker.props.js +74 -0
  91. package/dist/components/color-picker/color-picker.slots.js +21 -0
  92. package/dist/components/color-picker/color.d.ts +18 -0
  93. package/dist/components/color-picker/color.js +224 -0
  94. package/dist/components/color-picker/context.d.ts +25 -0
  95. package/dist/components/color-picker/context.js +23 -0
  96. package/dist/components/color-picker/eyedropper.d.ts +14 -0
  97. package/dist/components/color-picker/eyedropper.js +50 -0
  98. package/dist/components/color-picker/format-tabs.d.ts +11 -0
  99. package/dist/components/color-picker/format-tabs.js +35 -0
  100. package/dist/components/color-picker/index.d.ts +3 -0
  101. package/dist/components/color-picker/inputs.d.ts +16 -0
  102. package/dist/components/color-picker/inputs.js +61 -0
  103. package/dist/components/color-picker/sliders.d.ts +17 -0
  104. package/dist/components/color-picker/sliders.js +94 -0
  105. package/dist/components/color-picker/store.js +48 -0
  106. package/dist/components/color-picker/swatch.d.ts +15 -0
  107. package/dist/components/color-picker/swatch.js +25 -0
  108. package/dist/components/color-swatch/color-swatch-picker.d.ts +87 -0
  109. package/dist/components/color-swatch/color-swatch-picker.js +73 -0
  110. package/dist/components/color-swatch/color-swatch.context.js +8 -0
  111. package/dist/components/color-swatch/color-swatch.d.ts +55 -0
  112. package/dist/components/color-swatch/color-swatch.js +48 -0
  113. package/dist/components/color-swatch/color-swatch.props.d.ts +54 -0
  114. package/dist/components/color-swatch/color-swatch.props.js +32 -0
  115. package/dist/components/color-swatch/color-swatch.slots.js +13 -0
  116. package/dist/components/color-swatch/index.d.ts +2 -0
  117. package/dist/components/combobox/combobox.context.js +13 -0
  118. package/dist/components/combobox/combobox.d.ts +328 -0
  119. package/dist/components/combobox/combobox.js +315 -0
  120. package/dist/components/combobox/combobox.props.d.ts +85 -0
  121. package/dist/components/combobox/combobox.props.js +79 -0
  122. package/dist/components/combobox/combobox.slots.d.ts +28 -0
  123. package/dist/components/combobox/combobox.slots.js +63 -0
  124. package/dist/components/combobox/index.d.ts +2 -0
  125. package/dist/components/context-menu/context-menu.d.ts +254 -0
  126. package/dist/components/context-menu/context-menu.js +150 -0
  127. package/dist/components/context-menu/context-menu.props.d.ts +22 -0
  128. package/dist/components/context-menu/context-menu.props.js +32 -0
  129. package/dist/components/context-menu/context-menu.slots.d.ts +24 -0
  130. package/dist/components/context-menu/context-menu.slots.js +42 -0
  131. package/dist/components/context-menu/index.d.ts +2 -0
  132. package/dist/components/copy-button/copy-button.d.ts +56 -0
  133. package/dist/components/copy-button/copy-button.js +88 -0
  134. package/dist/components/copy-button/copy-button.props.d.ts +27 -0
  135. package/dist/components/copy-button/copy-button.props.js +51 -0
  136. package/dist/components/copy-button/copy-button.slots.d.ts +20 -0
  137. package/dist/components/copy-button/copy-button.slots.js +36 -0
  138. package/dist/components/copy-button/index.d.ts +2 -0
  139. package/dist/components/dialog/dialog.context.js +15 -0
  140. package/dist/components/dialog/dialog.d.ts +299 -0
  141. package/dist/components/dialog/dialog.js +263 -0
  142. package/dist/components/dialog/dialog.props.d.ts +71 -0
  143. package/dist/components/dialog/dialog.props.js +75 -0
  144. package/dist/components/dialog/dialog.slots.d.ts +26 -0
  145. package/dist/components/dialog/dialog.slots.js +46 -0
  146. package/dist/components/dialog/dialog.types.d.ts +16 -0
  147. package/dist/components/dialog/index.d.ts +3 -0
  148. package/dist/components/field/field.d.ts +221 -0
  149. package/dist/components/field/field.js +192 -0
  150. package/dist/components/field/field.props.d.ts +66 -0
  151. package/dist/components/field/field.props.js +65 -0
  152. package/dist/components/field/field.slots.d.ts +35 -0
  153. package/dist/components/field/field.slots.js +54 -0
  154. package/dist/components/field/field.types.d.ts +5 -0
  155. package/dist/components/field/index.d.ts +4 -0
  156. package/dist/components/inline-code/index.d.ts +1 -0
  157. package/dist/components/inline-code/inline-code.d.ts +46 -0
  158. package/dist/components/inline-code/inline-code.js +36 -0
  159. package/dist/components/inline-code/inline-code.props.d.ts +17 -0
  160. package/dist/components/inline-code/inline-code.props.js +27 -0
  161. package/dist/components/inline-code/inline-code.slots.js +8 -0
  162. package/dist/components/input/index.d.ts +3 -0
  163. package/dist/components/input/input.context.js +13 -0
  164. package/dist/components/input/input.d.ts +161 -0
  165. package/dist/components/input/input.js +117 -0
  166. package/dist/components/input/input.props.d.ts +51 -0
  167. package/dist/components/input/input.props.js +50 -0
  168. package/dist/components/input/input.slots.d.ts +35 -0
  169. package/dist/components/input/input.slots.js +46 -0
  170. package/dist/components/input/input.types.d.ts +12 -0
  171. package/dist/components/kbd/glyphs.js +45 -0
  172. package/dist/components/kbd/index.d.ts +1 -0
  173. package/dist/components/kbd/kbd.d.ts +61 -0
  174. package/dist/components/kbd/kbd.js +233 -0
  175. package/dist/components/kbd/kbd.props.d.ts +30 -0
  176. package/dist/components/kbd/kbd.props.js +39 -0
  177. package/dist/components/kbd/kbd.slots.js +14 -0
  178. package/dist/components/kbd/use-apple-platform.js +25 -0
  179. package/dist/components/menu/index.d.ts +2 -0
  180. package/dist/components/menu/menu.d.ts +355 -0
  181. package/dist/components/menu/menu.js +263 -0
  182. package/dist/components/menu/menu.props.d.ts +92 -0
  183. package/dist/components/menu/menu.props.js +97 -0
  184. package/dist/components/menu/menu.slots.d.ts +32 -0
  185. package/dist/components/menu/menu.slots.js +60 -0
  186. package/dist/components/menubar/index.d.ts +2 -0
  187. package/dist/components/menubar/menubar.context.js +13 -0
  188. package/dist/components/menubar/menubar.d.ts +162 -0
  189. package/dist/components/menubar/menubar.js +122 -0
  190. package/dist/components/menubar/menubar.props.d.ts +41 -0
  191. package/dist/components/menubar/menubar.props.js +45 -0
  192. package/dist/components/menubar/menubar.slots.d.ts +26 -0
  193. package/dist/components/menubar/menubar.slots.js +40 -0
  194. package/dist/components/meter/index.d.ts +2 -0
  195. package/dist/components/meter/meter.context.d.ts +9 -0
  196. package/dist/components/meter/meter.context.js +13 -0
  197. package/dist/components/meter/meter.d.ts +163 -0
  198. package/dist/components/meter/meter.js +121 -0
  199. package/dist/components/meter/meter.props.d.ts +50 -0
  200. package/dist/components/meter/meter.props.js +33 -0
  201. package/dist/components/meter/meter.slots.d.ts +18 -0
  202. package/dist/components/meter/meter.slots.js +31 -0
  203. package/dist/components/navigation-menu/index.d.ts +2 -0
  204. package/dist/components/navigation-menu/navigation-menu.d.ts +328 -0
  205. package/dist/components/navigation-menu/navigation-menu.js +274 -0
  206. package/dist/components/navigation-menu/navigation-menu.props.d.ts +98 -0
  207. package/dist/components/navigation-menu/navigation-menu.props.js +90 -0
  208. package/dist/components/navigation-menu/navigation-menu.slots.d.ts +34 -0
  209. package/dist/components/navigation-menu/navigation-menu.slots.js +60 -0
  210. package/dist/components/number-field/index.d.ts +2 -0
  211. package/dist/components/number-field/number-field.context.d.ts +13 -0
  212. package/dist/components/number-field/number-field.context.js +13 -0
  213. package/dist/components/number-field/number-field.d.ts +197 -0
  214. package/dist/components/number-field/number-field.js +187 -0
  215. package/dist/components/number-field/number-field.props.d.ts +66 -0
  216. package/dist/components/number-field/number-field.props.js +50 -0
  217. package/dist/components/number-field/number-field.slots.d.ts +31 -0
  218. package/dist/components/number-field/number-field.slots.js +48 -0
  219. package/dist/components/otp-field/index.d.ts +3 -0
  220. package/dist/components/otp-field/otp-field.context.js +13 -0
  221. package/dist/components/otp-field/otp-field.d.ts +99 -0
  222. package/dist/components/otp-field/otp-field.js +76 -0
  223. package/dist/components/otp-field/otp-field.props.d.ts +48 -0
  224. package/dist/components/otp-field/otp-field.props.js +43 -0
  225. package/dist/components/otp-field/otp-field.slots.d.ts +28 -0
  226. package/dist/components/otp-field/otp-field.slots.js +39 -0
  227. package/dist/components/popover/index.d.ts +2 -0
  228. package/dist/components/popover/popover.d.ts +192 -0
  229. package/dist/components/popover/popover.js +152 -0
  230. package/dist/components/popover/popover.props.d.ts +34 -0
  231. package/dist/components/popover/popover.props.js +44 -0
  232. package/dist/components/popover/popover.slots.d.ts +22 -0
  233. package/dist/components/popover/popover.slots.js +42 -0
  234. package/dist/components/preview-card/index.d.ts +2 -0
  235. package/dist/components/preview-card/preview-card.d.ts +182 -0
  236. package/dist/components/preview-card/preview-card.js +146 -0
  237. package/dist/components/preview-card/preview-card.props.d.ts +37 -0
  238. package/dist/components/preview-card/preview-card.props.js +48 -0
  239. package/dist/components/preview-card/preview-card.slots.d.ts +22 -0
  240. package/dist/components/preview-card/preview-card.slots.js +39 -0
  241. package/dist/components/progress/index.d.ts +3 -0
  242. package/dist/components/progress/progress.context.d.ts +9 -0
  243. package/dist/components/progress/progress.context.js +13 -0
  244. package/dist/components/progress/progress.d.ts +139 -0
  245. package/dist/components/progress/progress.js +92 -0
  246. package/dist/components/progress/progress.props.d.ts +56 -0
  247. package/dist/components/progress/progress.props.js +38 -0
  248. package/dist/components/progress/progress.slots.d.ts +24 -0
  249. package/dist/components/progress/progress.slots.js +37 -0
  250. package/dist/components/radio/index.d.ts +2 -0
  251. package/dist/components/radio/radio.context.js +5 -0
  252. package/dist/components/radio/radio.d.ts +205 -0
  253. package/dist/components/radio/radio.js +168 -0
  254. package/dist/components/radio/radio.props.d.ts +106 -0
  255. package/dist/components/radio/radio.props.js +65 -0
  256. package/dist/components/radio/radio.slots.d.ts +29 -0
  257. package/dist/components/radio/radio.slots.js +44 -0
  258. package/dist/components/rail/index.d.ts +3 -0
  259. package/dist/components/rail/rail.context.d.ts +17 -0
  260. package/dist/components/rail/rail.context.js +23 -0
  261. package/dist/components/rail/rail.d.ts +232 -0
  262. package/dist/components/rail/rail.js +254 -0
  263. package/dist/components/rail/rail.props.d.ts +98 -0
  264. package/dist/components/rail/rail.props.js +64 -0
  265. package/dist/components/rail/rail.slots.d.ts +20 -0
  266. package/dist/components/rail/rail.slots.js +40 -0
  267. package/dist/components/scroll-area/index.d.ts +2 -0
  268. package/dist/components/scroll-area/scroll-area.context.js +15 -0
  269. package/dist/components/scroll-area/scroll-area.d.ts +217 -0
  270. package/dist/components/scroll-area/scroll-area.js +153 -0
  271. package/dist/components/scroll-area/scroll-area.props.d.ts +73 -0
  272. package/dist/components/scroll-area/scroll-area.props.js +64 -0
  273. package/dist/components/scroll-area/scroll-area.slots.d.ts +40 -0
  274. package/dist/components/scroll-area/scroll-area.slots.js +54 -0
  275. package/dist/components/scroll-area/scroll-area.types.d.ts +24 -0
  276. package/dist/components/search-dialog/index.d.ts +3 -0
  277. package/dist/components/search-dialog/parts/input.d.ts +24 -0
  278. package/dist/components/search-dialog/parts/input.js +53 -0
  279. package/dist/components/search-dialog/parts/messages.d.ts +80 -0
  280. package/dist/components/search-dialog/parts/messages.js +75 -0
  281. package/dist/components/search-dialog/parts/results.d.ts +43 -0
  282. package/dist/components/search-dialog/parts/results.js +63 -0
  283. package/dist/components/search-dialog/parts/root.d.ts +54 -0
  284. package/dist/components/search-dialog/parts/root.js +99 -0
  285. package/dist/components/search-dialog/search-dialog.context.d.ts +15 -0
  286. package/dist/components/search-dialog/search-dialog.context.js +20 -0
  287. package/dist/components/search-dialog/search-dialog.d.ts +84 -0
  288. package/dist/components/search-dialog/search-dialog.js +43 -0
  289. package/dist/components/search-dialog/search-dialog.props.d.ts +45 -0
  290. package/dist/components/search-dialog/search-dialog.props.js +49 -0
  291. package/dist/components/search-dialog/search-dialog.slots.d.ts +16 -0
  292. package/dist/components/search-dialog/search-dialog.slots.js +32 -0
  293. package/dist/components/select/index.d.ts +2 -0
  294. package/dist/components/select/select.context.js +17 -0
  295. package/dist/components/select/select.d.ts +356 -0
  296. package/dist/components/select/select.js +314 -0
  297. package/dist/components/select/select.props.d.ts +110 -0
  298. package/dist/components/select/select.props.js +103 -0
  299. package/dist/components/select/select.slots.d.ts +38 -0
  300. package/dist/components/select/select.slots.js +67 -0
  301. package/dist/components/separator/index.d.ts +2 -0
  302. package/dist/components/separator/separator.d.ts +69 -0
  303. package/dist/components/separator/separator.js +44 -0
  304. package/dist/components/separator/separator.props.d.ts +30 -0
  305. package/dist/components/separator/separator.props.js +30 -0
  306. package/dist/components/separator/separator.slots.d.ts +22 -0
  307. package/dist/components/separator/separator.slots.js +21 -0
  308. package/dist/components/separator/separator.types.d.ts +5 -0
  309. package/dist/components/sheet/index.d.ts +3 -0
  310. package/dist/components/sheet/sheet-stack.d.ts +106 -0
  311. package/dist/components/sheet/sheet-stack.js +146 -0
  312. package/dist/components/sheet/sheet.d.ts +279 -0
  313. package/dist/components/sheet/sheet.js +264 -0
  314. package/dist/components/sheet/sheet.props.d.ts +74 -0
  315. package/dist/components/sheet/sheet.props.js +77 -0
  316. package/dist/components/sheet/sheet.slots.js +22 -0
  317. package/dist/components/sheet/sheet.types.d.ts +12 -0
  318. package/dist/components/slider/index.d.ts +3 -0
  319. package/dist/components/slider/slider.context.d.ts +5 -0
  320. package/dist/components/slider/slider.context.js +29 -0
  321. package/dist/components/slider/slider.d.ts +230 -0
  322. package/dist/components/slider/slider.js +274 -0
  323. package/dist/components/slider/slider.props.d.ts +72 -0
  324. package/dist/components/slider/slider.props.js +59 -0
  325. package/dist/components/slider/slider.slots.d.ts +30 -0
  326. package/dist/components/slider/slider.slots.js +50 -0
  327. package/dist/components/surface/index.d.ts +1 -0
  328. package/dist/components/surface/surface.d.ts +84 -0
  329. package/dist/components/surface/surface.js +48 -0
  330. package/dist/components/surface/surface.props.d.ts +35 -0
  331. package/dist/components/surface/surface.props.js +26 -0
  332. package/dist/components/surface/surface.slots.js +9 -0
  333. package/dist/components/surface/surface.types.d.ts +14 -0
  334. package/dist/components/switch/index.d.ts +2 -0
  335. package/dist/components/switch/switch.context.js +14 -0
  336. package/dist/components/switch/switch.d.ts +110 -0
  337. package/dist/components/switch/switch.js +92 -0
  338. package/dist/components/switch/switch.props.d.ts +68 -0
  339. package/dist/components/switch/switch.props.js +41 -0
  340. package/dist/components/switch/switch.slots.d.ts +23 -0
  341. package/dist/components/switch/switch.slots.js +35 -0
  342. package/dist/components/table/index.d.ts +1 -0
  343. package/dist/components/table/table.d.ts +104 -0
  344. package/dist/components/table/table.js +92 -0
  345. package/dist/components/table/table.props.d.ts +38 -0
  346. package/dist/components/table/table.props.js +49 -0
  347. package/dist/components/table/table.slots.js +17 -0
  348. package/dist/components/tabs/index.d.ts +2 -0
  349. package/dist/components/tabs/tabs.context.d.ts +9 -0
  350. package/dist/components/tabs/tabs.context.js +13 -0
  351. package/dist/components/tabs/tabs.d.ts +139 -0
  352. package/dist/components/tabs/tabs.js +118 -0
  353. package/dist/components/tabs/tabs.props.d.ts +59 -0
  354. package/dist/components/tabs/tabs.props.js +39 -0
  355. package/dist/components/tabs/tabs.slots.d.ts +20 -0
  356. package/dist/components/tabs/tabs.slots.js +33 -0
  357. package/dist/components/textarea/index.d.ts +3 -0
  358. package/dist/components/textarea/textarea.context.js +13 -0
  359. package/dist/components/textarea/textarea.d.ts +142 -0
  360. package/dist/components/textarea/textarea.js +129 -0
  361. package/dist/components/textarea/textarea.props.d.ts +44 -0
  362. package/dist/components/textarea/textarea.props.js +32 -0
  363. package/dist/components/textarea/textarea.slots.d.ts +23 -0
  364. package/dist/components/textarea/textarea.slots.js +33 -0
  365. package/dist/components/textarea/textarea.types.d.ts +5 -0
  366. package/dist/components/toast/index.d.ts +4 -0
  367. package/dist/components/toast/toast.d.ts +241 -0
  368. package/dist/components/toast/toast.js +193 -0
  369. package/dist/components/toast/toast.manager.d.ts +76 -0
  370. package/dist/components/toast/toast.manager.js +71 -0
  371. package/dist/components/toast/toast.props.d.ts +66 -0
  372. package/dist/components/toast/toast.props.js +74 -0
  373. package/dist/components/toast/toast.slots.d.ts +30 -0
  374. package/dist/components/toast/toast.slots.js +49 -0
  375. package/dist/components/toast/toast.types.d.ts +19 -0
  376. package/dist/components/toggle/index.d.ts +2 -0
  377. package/dist/components/toggle/toggle.context.d.ts +11 -0
  378. package/dist/components/toggle/toggle.context.js +14 -0
  379. package/dist/components/toggle/toggle.d.ts +136 -0
  380. package/dist/components/toggle/toggle.js +101 -0
  381. package/dist/components/toggle/toggle.props.d.ts +51 -0
  382. package/dist/components/toggle/toggle.props.js +29 -0
  383. package/dist/components/toggle/toggle.slots.d.ts +26 -0
  384. package/dist/components/toggle/toggle.slots.js +36 -0
  385. package/dist/components/toolbar/index.d.ts +3 -0
  386. package/dist/components/toolbar/toolbar.context.js +23 -0
  387. package/dist/components/toolbar/toolbar.d.ts +218 -0
  388. package/dist/components/toolbar/toolbar.js +197 -0
  389. package/dist/components/toolbar/toolbar.props.d.ts +54 -0
  390. package/dist/components/toolbar/toolbar.props.js +55 -0
  391. package/dist/components/toolbar/toolbar.slots.d.ts +24 -0
  392. package/dist/components/toolbar/toolbar.slots.js +37 -0
  393. package/dist/components/toolbar/toolbar.types.d.ts +15 -0
  394. package/dist/components/tooltip/index.d.ts +2 -0
  395. package/dist/components/tooltip/tooltip.d.ts +170 -0
  396. package/dist/components/tooltip/tooltip.js +143 -0
  397. package/dist/components/tooltip/tooltip.props.d.ts +36 -0
  398. package/dist/components/tooltip/tooltip.props.js +42 -0
  399. package/dist/components/tooltip/tooltip.slots.d.ts +26 -0
  400. package/dist/components/tooltip/tooltip.slots.js +42 -0
  401. package/dist/core/derive-threshold-tone.js +35 -0
  402. package/dist/core/merge-class-name.d.ts +17 -0
  403. package/dist/core/merge-class-name.js +16 -0
  404. package/dist/core/noctis-provider.d.ts +38 -0
  405. package/dist/core/noctis-provider.js +44 -0
  406. package/dist/core/primitive/index.d.ts +1 -0
  407. package/dist/core/primitive/primitive.d.ts +44 -0
  408. package/dist/core/primitive/primitive.js +27 -0
  409. package/dist/core/radius-scope/index.d.ts +2 -0
  410. package/dist/core/radius-scope/radius-scope.d.ts +43 -0
  411. package/dist/core/radius-scope/radius-scope.js +36 -0
  412. package/dist/core/radius-scope/radius-scope.styles.d.ts +13 -0
  413. package/dist/core/radius-scope/radius-scope.styles.js +11 -0
  414. package/dist/core/render.d.ts +24 -0
  415. package/dist/core/render.js +12 -0
  416. package/dist/core/use-copy.d.ts +13 -0
  417. package/dist/core/use-copy.js +30 -0
  418. package/dist/core/use-injected-labels.js +55 -0
  419. package/dist/core/use-reduced-motion.d.ts +9 -0
  420. package/dist/core/use-reduced-motion.js +26 -0
  421. package/dist/core/visually-hidden/index.d.ts +1 -0
  422. package/dist/core/visually-hidden/visually-hidden.d.ts +24 -0
  423. package/dist/core/visually-hidden/visually-hidden.js +19 -0
  424. package/dist/i18n/default-messages.d.ts +12 -0
  425. package/dist/i18n/default-messages.js +10 -0
  426. package/dist/i18n/index.d.ts +2 -0
  427. package/dist/i18n/index.js +2 -0
  428. package/dist/i18n/messages/index.d.ts +2 -0
  429. package/dist/i18n/messages/index.js +2 -0
  430. package/dist/icons/glyphs.d.ts +2 -0
  431. package/dist/icons/glyphs.js +2 -0
  432. package/dist/icons/icon.d.ts +40 -0
  433. package/dist/icons/icon.js +26 -0
  434. package/dist/icons/icon.styles.d.ts +9 -0
  435. package/dist/icons/index.d.ts +3 -0
  436. package/dist/index.d.ts +126 -0
  437. package/dist/index.js +112 -0
  438. package/dist/primitives/accordion.d.ts +7 -0
  439. package/dist/primitives/accordion.js +8 -0
  440. package/dist/primitives/alert-dialog.d.ts +7 -0
  441. package/dist/primitives/alert-dialog.js +8 -0
  442. package/dist/primitives/autocomplete/autocomplete.d.ts +58 -0
  443. package/dist/primitives/autocomplete/autocomplete.js +58 -0
  444. package/dist/primitives/autocomplete/index.d.ts +1 -0
  445. package/dist/primitives/autocomplete.d.ts +2 -0
  446. package/dist/primitives/autocomplete.js +2 -0
  447. package/dist/primitives/avatar.d.ts +7 -0
  448. package/dist/primitives/avatar.js +8 -0
  449. package/dist/primitives/button.d.ts +7 -0
  450. package/dist/primitives/button.js +8 -0
  451. package/dist/primitives/checkbox-group.d.ts +7 -0
  452. package/dist/primitives/checkbox-group.js +8 -0
  453. package/dist/primitives/checkbox.d.ts +7 -0
  454. package/dist/primitives/checkbox.js +8 -0
  455. package/dist/primitives/collapsible.d.ts +7 -0
  456. package/dist/primitives/collapsible.js +8 -0
  457. package/dist/primitives/combobox/combobox.d.ts +71 -0
  458. package/dist/primitives/combobox/combobox.js +66 -0
  459. package/dist/primitives/combobox/index.d.ts +1 -0
  460. package/dist/primitives/combobox.d.ts +2 -0
  461. package/dist/primitives/combobox.js +2 -0
  462. package/dist/primitives/context-menu.d.ts +7 -0
  463. package/dist/primitives/context-menu.js +8 -0
  464. package/dist/primitives/csp-provider.d.ts +1 -0
  465. package/dist/primitives/csp-provider.js +2 -0
  466. package/dist/primitives/dialog.d.ts +7 -0
  467. package/dist/primitives/dialog.js +8 -0
  468. package/dist/primitives/direction-provider.d.ts +1 -0
  469. package/dist/primitives/direction-provider.js +8 -0
  470. package/dist/primitives/drawer.d.ts +1 -0
  471. package/dist/primitives/drawer.js +2 -0
  472. package/dist/primitives/field.d.ts +7 -0
  473. package/dist/primitives/field.js +8 -0
  474. package/dist/primitives/fieldset.d.ts +7 -0
  475. package/dist/primitives/fieldset.js +8 -0
  476. package/dist/primitives/form.d.ts +7 -0
  477. package/dist/primitives/form.js +8 -0
  478. package/dist/primitives/index.d.ts +79 -0
  479. package/dist/primitives/index.js +113 -0
  480. package/dist/primitives/input.d.ts +7 -0
  481. package/dist/primitives/input.js +8 -0
  482. package/dist/primitives/menu.d.ts +7 -0
  483. package/dist/primitives/menu.js +8 -0
  484. package/dist/primitives/menubar.d.ts +7 -0
  485. package/dist/primitives/menubar.js +8 -0
  486. package/dist/primitives/meter/index.d.ts +1 -0
  487. package/dist/primitives/meter/meter.d.ts +56 -0
  488. package/dist/primitives/meter/meter.js +59 -0
  489. package/dist/primitives/meter.d.ts +2 -0
  490. package/dist/primitives/meter.js +2 -0
  491. package/dist/primitives/navigation-menu.d.ts +7 -0
  492. package/dist/primitives/navigation-menu.js +8 -0
  493. package/dist/primitives/number-field/context.d.ts +13 -0
  494. package/dist/primitives/number-field/context.js +36 -0
  495. package/dist/primitives/number-field/index.d.ts +2 -0
  496. package/dist/primitives/number-field/number-field.d.ts +90 -0
  497. package/dist/primitives/number-field/number-field.js +107 -0
  498. package/dist/primitives/number-field.d.ts +3 -0
  499. package/dist/primitives/number-field.js +2 -0
  500. package/dist/primitives/otp-field.d.ts +7 -0
  501. package/dist/primitives/otp-field.js +8 -0
  502. package/dist/primitives/popover.d.ts +7 -0
  503. package/dist/primitives/popover.js +8 -0
  504. package/dist/primitives/preview-card.d.ts +7 -0
  505. package/dist/primitives/preview-card.js +8 -0
  506. package/dist/primitives/progress/index.d.ts +1 -0
  507. package/dist/primitives/progress/progress.d.ts +56 -0
  508. package/dist/primitives/progress/progress.js +59 -0
  509. package/dist/primitives/progress.d.ts +2 -0
  510. package/dist/primitives/progress.js +2 -0
  511. package/dist/primitives/radio-group.d.ts +7 -0
  512. package/dist/primitives/radio-group.js +8 -0
  513. package/dist/primitives/radio.d.ts +7 -0
  514. package/dist/primitives/radio.js +8 -0
  515. package/dist/primitives/scroll-area.d.ts +7 -0
  516. package/dist/primitives/scroll-area.js +8 -0
  517. package/dist/primitives/select.d.ts +7 -0
  518. package/dist/primitives/select.js +8 -0
  519. package/dist/primitives/separator.d.ts +7 -0
  520. package/dist/primitives/separator.js +8 -0
  521. package/dist/primitives/slider/context.d.ts +12 -0
  522. package/dist/primitives/slider/context.js +18 -0
  523. package/dist/primitives/slider/index.d.ts +2 -0
  524. package/dist/primitives/slider/slider.d.ts +83 -0
  525. package/dist/primitives/slider/slider.js +99 -0
  526. package/dist/primitives/slider.d.ts +3 -0
  527. package/dist/primitives/slider.js +2 -0
  528. package/dist/primitives/switch.d.ts +1 -0
  529. package/dist/primitives/switch.js +2 -0
  530. package/dist/primitives/tabs.d.ts +7 -0
  531. package/dist/primitives/tabs.js +8 -0
  532. package/dist/primitives/toast/context.d.ts +11 -0
  533. package/dist/primitives/toast/context.js +18 -0
  534. package/dist/primitives/toast/index.d.ts +2 -0
  535. package/dist/primitives/toast/toast.d.ts +122 -0
  536. package/dist/primitives/toast/toast.js +133 -0
  537. package/dist/primitives/toast.d.ts +3 -0
  538. package/dist/primitives/toast.js +2 -0
  539. package/dist/primitives/toggle-group.d.ts +7 -0
  540. package/dist/primitives/toggle-group.js +8 -0
  541. package/dist/primitives/toggle.d.ts +7 -0
  542. package/dist/primitives/toggle.js +8 -0
  543. package/dist/primitives/toolbar.d.ts +7 -0
  544. package/dist/primitives/toolbar.js +8 -0
  545. package/dist/primitives/tooltip.d.ts +7 -0
  546. package/dist/primitives/tooltip.js +8 -0
  547. package/dist/props.d.ts +46 -0
  548. package/dist/props.js +46 -0
  549. package/dist/styles.css +11513 -0
  550. package/dist/tailwind/cn.d.ts +33 -0
  551. package/dist/tailwind/cn.js +42 -0
  552. package/dist/tailwind/index.d.ts +3 -0
  553. package/dist/tailwind/index.js +3 -0
  554. package/dist/tailwind/tv.d.ts +20 -0
  555. package/dist/tailwind/tv.js +11 -0
  556. package/dist/tailwind.css +485 -0
  557. package/dist/theme/react.d.ts +1 -0
  558. package/dist/theme/react.js +1 -0
  559. package/dist/theme.d.ts +1 -0
  560. package/dist/theme.js +1 -0
  561. package/dist/tokens/react.d.ts +1 -0
  562. package/dist/tokens/react.js +1 -0
  563. package/dist/tokens.d.ts +1 -0
  564. package/dist/tokens.js +1 -0
  565. package/package.json +121 -0
@@ -0,0 +1,46 @@
1
+ import { checkbox_group_d_exports } from "../../primitives/checkbox-group.js";
2
+ import { groupProps } from "./checkbox.props.js";
3
+ import { ReactElement } from "react";
4
+
5
+ //#region src/components/checkbox/checkbox-group.d.ts
6
+ /** Layout axis of a `CheckboxGroup` — `vertical` stacks its children, `horizontal` lays them in a row. */
7
+ type CheckboxGroupOrientation = "vertical" | "horizontal";
8
+ /**
9
+ * Shares one ticked-value list across a set of `Checkbox.Root`s. Works controlled (`value` +
10
+ * `onValueChange`) or uncontrolled (`defaultValue`); each child checkbox identifies itself with its
11
+ * `name`/`value`. The render stamps the group slot + `data-orientation` axis the precompiled CSS keys
12
+ * off — it lays its children out with the `--noctis-checkbox-group-gap` seam — and forwards `className`
13
+ * verbatim. `CheckboxGroup.props()` is the same mapping as a spreadable static for the escape-hatch
14
+ * path (D12).
15
+ *
16
+ * A single-part component: its props and shape types live on the matching `CheckboxGroup` namespace.
17
+ */
18
+ declare function CheckboxGroupImpl({
19
+ orientation,
20
+ className,
21
+ ...props
22
+ }: CheckboxGroup.Props): ReactElement;
23
+ /**
24
+ * A group of related checkboxes sharing one selected-value list. `CheckboxGroup.props()` → its
25
+ * spreadable prop bag for the escape-hatch path (D12).
26
+ */
27
+ declare const CheckboxGroup: typeof CheckboxGroupImpl & {
28
+ props: typeof groupProps;
29
+ };
30
+ /** Per-part prop and shape types for the single-part `CheckboxGroup`; merges with the value above. */
31
+ declare namespace CheckboxGroup {
32
+ /** Layout axis — `vertical` (default) stacks the children, `horizontal` lays them in a row. */
33
+ type Orientation = CheckboxGroupOrientation;
34
+ /** Props for {@link CheckboxGroup}. */
35
+ type Props = Omit<checkbox_group_d_exports.CheckboxGroup.Props, "className"> & {
36
+ /**
37
+ * Layout axis — `horizontal` lays the children in a row. Stamped as `data-orientation`.
38
+ * @default "vertical"
39
+ */
40
+ orientation?: CheckboxGroupOrientation; /** Classes merged onto the group. */
41
+ className?: string;
42
+ };
43
+ type State = checkbox_group_d_exports.CheckboxGroup.State;
44
+ }
45
+ //#endregion
46
+ export { CheckboxGroup };
@@ -0,0 +1,31 @@
1
+ "use client";
2
+ import { CHECKBOX_SLOTS } from "./checkbox.slots.js";
3
+ import { groupProps } from "./checkbox.props.js";
4
+ import { checkbox_group_exports } from "../../primitives/checkbox-group.js";
5
+ import { jsx } from "react/jsx-runtime";
6
+ //#region src/components/checkbox/checkbox-group.tsx
7
+ /**
8
+ * Shares one ticked-value list across a set of `Checkbox.Root`s. Works controlled (`value` +
9
+ * `onValueChange`) or uncontrolled (`defaultValue`); each child checkbox identifies itself with its
10
+ * `name`/`value`. The render stamps the group slot + `data-orientation` axis the precompiled CSS keys
11
+ * off — it lays its children out with the `--noctis-checkbox-group-gap` seam — and forwards `className`
12
+ * verbatim. `CheckboxGroup.props()` is the same mapping as a spreadable static for the escape-hatch
13
+ * path (D12).
14
+ *
15
+ * A single-part component: its props and shape types live on the matching `CheckboxGroup` namespace.
16
+ */
17
+ function CheckboxGroupImpl({ orientation = "vertical", className, ...props }) {
18
+ return /* @__PURE__ */ jsx(checkbox_group_exports.CheckboxGroup, {
19
+ "data-slot": CHECKBOX_SLOTS.group,
20
+ "data-orientation": orientation,
21
+ className,
22
+ ...props
23
+ });
24
+ }
25
+ /**
26
+ * A group of related checkboxes sharing one selected-value list. `CheckboxGroup.props()` → its
27
+ * spreadable prop bag for the escape-hatch path (D12).
28
+ */
29
+ const CheckboxGroup = Object.assign(CheckboxGroupImpl, { props: groupProps });
30
+ //#endregion
31
+ export { CheckboxGroup };
@@ -0,0 +1,15 @@
1
+ "use client";
2
+ import { createContext, use } from "react";
3
+ //#region src/components/checkbox/checkbox.context.ts
4
+ const CheckboxFieldContext = createContext(null);
5
+ const CheckboxFieldProvider = CheckboxFieldContext.Provider;
6
+ /**
7
+ * Read the enclosing `Checkbox.Field` size, or `null` when a checkbox renders standalone. A
8
+ * `Checkbox.Root` inside a field inherits this size unless it sets its own, so one `size` on the field
9
+ * sizes the whole row.
10
+ */
11
+ function useCheckboxFieldContext() {
12
+ return use(CheckboxFieldContext);
13
+ }
14
+ //#endregion
15
+ export { CheckboxFieldProvider, useCheckboxFieldContext };
@@ -0,0 +1,130 @@
1
+ import { checkbox_d_exports } from "../../primitives/checkbox.js";
2
+ import { field_d_exports } from "../../primitives/field.js";
3
+ import { CheckboxPartProps, fieldProps, indicatorProps, labelProps, rootProps } from "./checkbox.props.js";
4
+ import { ReactElement } from "react";
5
+
6
+ //#region src/components/checkbox/checkbox.d.ts
7
+ /** Control size — `sm`, `md`, or `lg`. The default `md` box is `1.125rem`. */
8
+ type CheckboxSize = "sm" | "md" | "lg";
9
+ /**
10
+ * A single toggleable box. Built on Base UI's Checkbox, so it is fully keyboard-operable (Space
11
+ * toggles), exposes the hidden `<input>` for forms, and supports the indeterminate state. The render
12
+ * stamps the slot + `data-size` axis the precompiled CSS keys off; `className` is a consumer
13
+ * passthrough. `Checkbox.Root.props(...)` is the same mapping as a spreadable static for the
14
+ * escape-hatch path (D12) — see `checkbox.props.ts`.
15
+ *
16
+ * A box inside a `Checkbox.Field` inherits the field's size unless it sets its own. Read-only, invalid,
17
+ * and required states flow from Base UI's Field integration (`data-readonly`/`data-invalid`/
18
+ * `data-required`) — no wrapper prop needed. For a labelled control, compose `Checkbox.Field` +
19
+ * `Checkbox.Label`; the row holds the `--noctis-checkbox-field-gap` seam.
20
+ */
21
+ declare function CheckboxRootImpl({
22
+ size,
23
+ className,
24
+ children,
25
+ ...props
26
+ }: Checkbox.Root.Props): ReactElement;
27
+ /**
28
+ * The glyph that marks the box. Mounted while ticked or mixed: it shows a check when ticked and a
29
+ * minus when indeterminate (the CSS cross-fades the two off the box's `data-indeterminate`). Render it
30
+ * once inside `Checkbox.Root` — `Checkbox.Root` mounts a default `Indicator` when given no children, so
31
+ * the common case needs no explicit part.
32
+ */
33
+ declare function CheckboxIndicator({
34
+ className,
35
+ ...props
36
+ }: Checkbox.Indicator.Props): ReactElement;
37
+ /**
38
+ * The labelled row — pairs a `Checkbox.Label` with a `Checkbox.Root` so the whole pairing reads as one
39
+ * control. Renders Base UI's `Field.Root`, which links the label to the box (clicking the label toggles
40
+ * it, the label becomes the accessible name) and feeds the box its validity state. Lay the label and
41
+ * box in either DOM order; the row mirrors under RTL by construction and holds the box↔label gap seam.
42
+ *
43
+ * <Checkbox.Field>
44
+ * <Checkbox.Root />
45
+ * <Checkbox.Label>Subscribe to updates</Checkbox.Label>
46
+ * </Checkbox.Field>
47
+ */
48
+ declare function CheckboxField({
49
+ size,
50
+ className,
51
+ children,
52
+ ...props
53
+ }: Checkbox.Field.Props): ReactElement;
54
+ /**
55
+ * The visible label that names a checkbox inside a `Checkbox.Field`. Renders Base UI's `Field.Label`, so
56
+ * clicking it toggles the box and its text supplies the accessible name (no `aria-label` needed). It
57
+ * mirrors the field's disabled and invalid state through `data-disabled`/`data-invalid`.
58
+ */
59
+ declare function CheckboxLabel({
60
+ className,
61
+ children,
62
+ ...props
63
+ }: Checkbox.Label.Props): ReactElement;
64
+ /**
65
+ * A checkbox: a square box that toggles a boolean, with an optional indeterminate (mixed) state and a
66
+ * check / minus glyph that draws in. Three sizes (`sm` / `md` / `lg`). Built on Base UI's Checkbox, so
67
+ * Space toggles, the hidden `<input>` integrates with forms, focus shows a visible ring, and the glyph
68
+ * draw-in respects `prefers-reduced-motion`.
69
+ *
70
+ * Compose from parts: `Checkbox.Root` owns the checked state and the shared `size`, `Checkbox.Indicator`
71
+ * holds the glyph (mounted by default — pass an explicit `Indicator` only to customise it), and
72
+ * `Checkbox.Field` + `Checkbox.Label` add a labelled row that wires the label to the box and surfaces
73
+ * its read-only / invalid state.
74
+ *
75
+ * The runtime compound is a plain object (kept tree-shakeable); per-part prop and state types are
76
+ * exposed through the matching `Checkbox` namespace — e.g. `Checkbox.Root.Props`.
77
+ */
78
+ declare const Checkbox: {
79
+ /** The box. `Checkbox.Root.props({ size, checked, indeterminate, disabled, readonly, invalid, required })` → its spreadable prop bag. */Root: typeof CheckboxRootImpl & {
80
+ props: typeof rootProps;
81
+ }; /** The check / minus glyph. `Checkbox.Indicator.props()` → its spreadable prop bag. */
82
+ Indicator: typeof CheckboxIndicator & {
83
+ props: typeof indicatorProps;
84
+ }; /** The labelled row pairing a box with its label. `Checkbox.Field.props({ size })` → its spreadable prop bag. */
85
+ Field: typeof CheckboxField & {
86
+ props: typeof fieldProps;
87
+ }; /** The box's visible accessible name. `Checkbox.Label.props({ disabled, invalid })` → its spreadable prop bag. */
88
+ Label: typeof CheckboxLabel & {
89
+ props: typeof labelProps;
90
+ };
91
+ };
92
+ /**
93
+ * Per-part prop and state types, mirroring Base UI's `Component.Part.Props` convention. Types-only —
94
+ * it emits no runtime code and merges with the `Checkbox` object above, so `Checkbox.Root` is the
95
+ * component value while `Checkbox.Root.Props` is its prop type.
96
+ */
97
+ declare namespace Checkbox {
98
+ /** Control size — `sm`, `md`, or `lg`. */
99
+ type Size = CheckboxSize;
100
+ /** The spreadable data-attribute prop bag every `Checkbox.*.props()` returns (D12). */
101
+ type PartProps = CheckboxPartProps;
102
+ namespace Root {
103
+ type Props = Omit<checkbox_d_exports.Checkbox.Root.Props, "className"> & {
104
+ /**
105
+ * Control size — re-points the box and indicator metrics. Falls back to an enclosing
106
+ * `Checkbox.Field`'s size, then `md`.
107
+ */
108
+ size?: CheckboxSize; /** Classes merged onto the box. */
109
+ className?: string;
110
+ };
111
+ type State = checkbox_d_exports.Checkbox.Root.State;
112
+ }
113
+ namespace Indicator {
114
+ type Props = checkbox_d_exports.Checkbox.Indicator.Props;
115
+ type State = checkbox_d_exports.Checkbox.Indicator.State;
116
+ }
117
+ namespace Field {
118
+ /** Props for {@link Checkbox.Field} — Base UI's `Field.Root` plus the Noctis `size` axis. */
119
+ interface Props extends field_d_exports.Field.Root.Props {
120
+ /** Row size — scales the label text and cascades to the box inside. Defaults to `md`. */
121
+ size?: CheckboxSize;
122
+ }
123
+ }
124
+ namespace Label {
125
+ /** Props for {@link Checkbox.Label} — Base UI's `Field.Label`, the box's visible accessible name. */
126
+ type Props = field_d_exports.Field.Label.Props;
127
+ }
128
+ }
129
+ //#endregion
130
+ export { Checkbox };
@@ -0,0 +1,117 @@
1
+ "use client";
2
+ import { CheckIcon, MinusIcon } from "../../icons/glyphs.js";
3
+ import { checkbox_exports } from "../../primitives/checkbox.js";
4
+ import { field_exports } from "../../primitives/field.js";
5
+ import { CheckboxFieldProvider, useCheckboxFieldContext } from "./checkbox.context.js";
6
+ import { CHECKBOX_SLOTS } from "./checkbox.slots.js";
7
+ import { fieldProps, indicatorProps, labelProps, rootProps } from "./checkbox.props.js";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ //#region src/components/checkbox/checkbox.tsx
10
+ /**
11
+ * A single toggleable box. Built on Base UI's Checkbox, so it is fully keyboard-operable (Space
12
+ * toggles), exposes the hidden `<input>` for forms, and supports the indeterminate state. The render
13
+ * stamps the slot + `data-size` axis the precompiled CSS keys off; `className` is a consumer
14
+ * passthrough. `Checkbox.Root.props(...)` is the same mapping as a spreadable static for the
15
+ * escape-hatch path (D12) — see `checkbox.props.ts`.
16
+ *
17
+ * A box inside a `Checkbox.Field` inherits the field's size unless it sets its own. Read-only, invalid,
18
+ * and required states flow from Base UI's Field integration (`data-readonly`/`data-invalid`/
19
+ * `data-required`) — no wrapper prop needed. For a labelled control, compose `Checkbox.Field` +
20
+ * `Checkbox.Label`; the row holds the `--noctis-checkbox-field-gap` seam.
21
+ */
22
+ function CheckboxRootImpl({ size, className, children, ...props }) {
23
+ const field = useCheckboxFieldContext();
24
+ const resolvedSize = size ?? field?.size ?? "md";
25
+ return /* @__PURE__ */ jsx(checkbox_exports.Checkbox.Root, {
26
+ "data-slot": CHECKBOX_SLOTS.root,
27
+ "data-size": resolvedSize,
28
+ className,
29
+ ...props,
30
+ children: children ?? /* @__PURE__ */ jsx(CheckboxIndicator, {})
31
+ });
32
+ }
33
+ /**
34
+ * The glyph that marks the box. Mounted while ticked or mixed: it shows a check when ticked and a
35
+ * minus when indeterminate (the CSS cross-fades the two off the box's `data-indeterminate`). Render it
36
+ * once inside `Checkbox.Root` — `Checkbox.Root` mounts a default `Indicator` when given no children, so
37
+ * the common case needs no explicit part.
38
+ */
39
+ function CheckboxIndicator({ className, ...props }) {
40
+ return /* @__PURE__ */ jsxs(checkbox_exports.Checkbox.Indicator, {
41
+ "data-slot": CHECKBOX_SLOTS.indicator,
42
+ keepMounted: true,
43
+ className,
44
+ ...props,
45
+ children: [/* @__PURE__ */ jsx(CheckIcon, {
46
+ "aria-hidden": true,
47
+ focusable: false,
48
+ "data-checkbox-glyph": "check"
49
+ }), /* @__PURE__ */ jsx(MinusIcon, {
50
+ "aria-hidden": true,
51
+ focusable: false,
52
+ "data-checkbox-glyph": "indeterminate"
53
+ })]
54
+ });
55
+ }
56
+ /**
57
+ * The labelled row — pairs a `Checkbox.Label` with a `Checkbox.Root` so the whole pairing reads as one
58
+ * control. Renders Base UI's `Field.Root`, which links the label to the box (clicking the label toggles
59
+ * it, the label becomes the accessible name) and feeds the box its validity state. Lay the label and
60
+ * box in either DOM order; the row mirrors under RTL by construction and holds the box↔label gap seam.
61
+ *
62
+ * <Checkbox.Field>
63
+ * <Checkbox.Root />
64
+ * <Checkbox.Label>Subscribe to updates</Checkbox.Label>
65
+ * </Checkbox.Field>
66
+ */
67
+ function CheckboxField({ size = "md", className, children, ...props }) {
68
+ return /* @__PURE__ */ jsx(CheckboxFieldProvider, {
69
+ value: { size },
70
+ children: /* @__PURE__ */ jsx(field_exports.Field.Root, {
71
+ "data-slot": CHECKBOX_SLOTS.field,
72
+ "data-size": size,
73
+ className,
74
+ ...props,
75
+ children
76
+ })
77
+ });
78
+ }
79
+ /**
80
+ * The visible label that names a checkbox inside a `Checkbox.Field`. Renders Base UI's `Field.Label`, so
81
+ * clicking it toggles the box and its text supplies the accessible name (no `aria-label` needed). It
82
+ * mirrors the field's disabled and invalid state through `data-disabled`/`data-invalid`.
83
+ */
84
+ function CheckboxLabel({ className, children, ...props }) {
85
+ return /* @__PURE__ */ jsx(field_exports.Field.Label, {
86
+ "data-slot": CHECKBOX_SLOTS.label,
87
+ className,
88
+ ...props,
89
+ children
90
+ });
91
+ }
92
+ /**
93
+ * A checkbox: a square box that toggles a boolean, with an optional indeterminate (mixed) state and a
94
+ * check / minus glyph that draws in. Three sizes (`sm` / `md` / `lg`). Built on Base UI's Checkbox, so
95
+ * Space toggles, the hidden `<input>` integrates with forms, focus shows a visible ring, and the glyph
96
+ * draw-in respects `prefers-reduced-motion`.
97
+ *
98
+ * Compose from parts: `Checkbox.Root` owns the checked state and the shared `size`, `Checkbox.Indicator`
99
+ * holds the glyph (mounted by default — pass an explicit `Indicator` only to customise it), and
100
+ * `Checkbox.Field` + `Checkbox.Label` add a labelled row that wires the label to the box and surfaces
101
+ * its read-only / invalid state.
102
+ *
103
+ * The runtime compound is a plain object (kept tree-shakeable); per-part prop and state types are
104
+ * exposed through the matching `Checkbox` namespace — e.g. `Checkbox.Root.Props`.
105
+ */
106
+ const Checkbox = {
107
+ /** The box. `Checkbox.Root.props({ size, checked, indeterminate, disabled, readonly, invalid, required })` → its spreadable prop bag. */
108
+ Root: Object.assign(CheckboxRootImpl, { props: rootProps }),
109
+ /** The check / minus glyph. `Checkbox.Indicator.props()` → its spreadable prop bag. */
110
+ Indicator: Object.assign(CheckboxIndicator, { props: indicatorProps }),
111
+ /** The labelled row pairing a box with its label. `Checkbox.Field.props({ size })` → its spreadable prop bag. */
112
+ Field: Object.assign(CheckboxField, { props: fieldProps }),
113
+ /** The box's visible accessible name. `Checkbox.Label.props({ disabled, invalid })` → its spreadable prop bag. */
114
+ Label: Object.assign(CheckboxLabel, { props: labelProps })
115
+ };
116
+ //#endregion
117
+ export { Checkbox };
@@ -0,0 +1,84 @@
1
+ import { CheckboxGroup } from "./checkbox-group.js";
2
+ import { Checkbox } from "./checkbox.js";
3
+
4
+ //#region src/components/checkbox/checkbox.props.d.ts
5
+ /** A spreadable data-attribute prop bag — the shape every `Checkbox.*.props()` returns. */
6
+ type CheckboxPartProps = {
7
+ /** The slot value the matching `checkbox.css` rules anchor on. */"data-slot": string; /** Forwarded verbatim — styling is attribute-driven, so this is an optional consumer passthrough. */
8
+ className?: string; /** A data-attribute present (empty string) or absent (`undefined`); never `false`. */
9
+ [attr: `data-${string}`]: string | undefined;
10
+ };
11
+ /** Common shape: every part's `.props()` accepts an optional `className` passthrough. */
12
+ interface BasePropsArgs {
13
+ /** Forwarded verbatim onto the returned prop bag. */
14
+ className?: string;
15
+ }
16
+ /** Argument to `Checkbox.props(...)` — the box's size axis plus its checked / indeterminate / disabled / read-only / invalid state. */
17
+ interface CheckboxPropsArgs extends BasePropsArgs {
18
+ /** Control size — stamped as `data-size`, re-points the box and indicator size internals. @default "md" */
19
+ size?: Checkbox.Size;
20
+ /** Whether the box is ticked (draws the accent fill via `data-checked`). */
21
+ checked?: boolean;
22
+ /** Whether the box is in the mixed state (draws the indeterminate glyph via `data-indeterminate`). */
23
+ indeterminate?: boolean;
24
+ /** Whether the box is disabled (drives the dimmed affordance via `data-disabled`). */
25
+ disabled?: boolean;
26
+ /** Whether the box is read-only (drops the pointer and hover affordance via `data-readonly`). */
27
+ readonly?: boolean;
28
+ /** Whether the box is invalid (paints the danger border via `data-invalid`). */
29
+ invalid?: boolean;
30
+ /** Whether the box is required (surfaced for form/validation hooks via `data-required`). */
31
+ required?: boolean;
32
+ }
33
+ /** Argument to `Checkbox.Indicator.props(...)` — the glyph carries no axes of its own; its size flows from the box. */
34
+ type CheckboxIndicatorPropsArgs = BasePropsArgs;
35
+ /** Argument to `CheckboxGroup.props(...)` — the group lays its children out along its orientation axis. */
36
+ interface CheckboxGroupPropsArgs extends BasePropsArgs {
37
+ /** Layout axis — stamped as `data-orientation`; `horizontal` lays the children in a row. @default "vertical" */
38
+ orientation?: CheckboxGroup.Orientation;
39
+ }
40
+ /** Argument to `Checkbox.Field.props(...)` — the row pairs a box with its label; its size scales both. */
41
+ interface CheckboxFieldPropsArgs extends BasePropsArgs {
42
+ /** Row size — stamped as `data-size`, scales the label text and cascades to the box inside. @default "md" */
43
+ size?: Checkbox.Size;
44
+ }
45
+ /** Argument to `Checkbox.Label.props(...)` — the label mirrors the field's disabled / invalid state. */
46
+ interface CheckboxLabelPropsArgs extends BasePropsArgs {
47
+ /** Whether the field is disabled (dims the label and drops its pointer via `data-disabled`). */
48
+ disabled?: boolean;
49
+ /** Whether the field is invalid (recolours the label to danger via `data-invalid`). */
50
+ invalid?: boolean;
51
+ }
52
+ /** Box prop bag: slot anchor plus the `data-size` axis and the `data-checked`/`data-indeterminate`/`data-disabled`/`data-readonly`/`data-invalid`/`data-required` state. */
53
+ declare function rootProps({
54
+ size,
55
+ checked,
56
+ indeterminate,
57
+ disabled,
58
+ readonly,
59
+ invalid,
60
+ required,
61
+ className
62
+ }?: CheckboxPropsArgs): CheckboxPartProps;
63
+ /** Indicator prop bag: just the slot anchor (the glyph size flows from the slot). */
64
+ declare function indicatorProps({
65
+ className
66
+ }?: CheckboxIndicatorPropsArgs): CheckboxPartProps;
67
+ /** Group prop bag: slot anchor plus the `data-orientation` axis the row/column layout keys off. */
68
+ declare function groupProps({
69
+ orientation,
70
+ className
71
+ }?: CheckboxGroupPropsArgs): CheckboxPartProps;
72
+ /** Field prop bag: slot anchor plus the `data-size` axis that scales the label and cascades to the box. */
73
+ declare function fieldProps({
74
+ size,
75
+ className
76
+ }?: CheckboxFieldPropsArgs): CheckboxPartProps;
77
+ /** Label prop bag: slot anchor plus the `data-disabled`/`data-invalid` that mirror the field state. */
78
+ declare function labelProps({
79
+ disabled,
80
+ invalid,
81
+ className
82
+ }?: CheckboxLabelPropsArgs): CheckboxPartProps;
83
+ //#endregion
84
+ export { CheckboxPartProps, fieldProps, groupProps, indicatorProps, labelProps, rootProps };
@@ -0,0 +1,49 @@
1
+ import { CHECKBOX_SLOTS } from "./checkbox.slots.js";
2
+ //#region src/components/checkbox/checkbox.props.ts
3
+ /** Stamp a boolean state as a bare data-attribute: present (`""`) when on, absent (`undefined`) when off. */
4
+ const flag = (on) => on ? "" : void 0;
5
+ const withClassName = (bag, className) => className === void 0 ? bag : {
6
+ ...bag,
7
+ className
8
+ };
9
+ /** Box prop bag: slot anchor plus the `data-size` axis and the `data-checked`/`data-indeterminate`/`data-disabled`/`data-readonly`/`data-invalid`/`data-required` state. */
10
+ function rootProps({ size = "md", checked, indeterminate, disabled, readonly, invalid, required, className } = {}) {
11
+ return withClassName({
12
+ "data-slot": CHECKBOX_SLOTS.root,
13
+ "data-size": size,
14
+ "data-checked": flag(checked),
15
+ "data-indeterminate": flag(indeterminate),
16
+ "data-disabled": flag(disabled),
17
+ "data-readonly": flag(readonly),
18
+ "data-invalid": flag(invalid),
19
+ "data-required": flag(required)
20
+ }, className);
21
+ }
22
+ /** Indicator prop bag: just the slot anchor (the glyph size flows from the slot). */
23
+ function indicatorProps({ className } = {}) {
24
+ return withClassName({ "data-slot": CHECKBOX_SLOTS.indicator }, className);
25
+ }
26
+ /** Group prop bag: slot anchor plus the `data-orientation` axis the row/column layout keys off. */
27
+ function groupProps({ orientation = "vertical", className } = {}) {
28
+ return withClassName({
29
+ "data-slot": CHECKBOX_SLOTS.group,
30
+ "data-orientation": orientation
31
+ }, className);
32
+ }
33
+ /** Field prop bag: slot anchor plus the `data-size` axis that scales the label and cascades to the box. */
34
+ function fieldProps({ size = "md", className } = {}) {
35
+ return withClassName({
36
+ "data-slot": CHECKBOX_SLOTS.field,
37
+ "data-size": size
38
+ }, className);
39
+ }
40
+ /** Label prop bag: slot anchor plus the `data-disabled`/`data-invalid` that mirror the field state. */
41
+ function labelProps({ disabled, invalid, className } = {}) {
42
+ return withClassName({
43
+ "data-slot": CHECKBOX_SLOTS.label,
44
+ "data-disabled": flag(disabled),
45
+ "data-invalid": flag(invalid)
46
+ }, className);
47
+ }
48
+ //#endregion
49
+ export { fieldProps, groupProps, indicatorProps, labelProps, rootProps };
@@ -0,0 +1,27 @@
1
+ //#region src/components/checkbox/checkbox.slots.d.ts
2
+ /**
3
+ * The state attributes Base UI stamps on a checkbox, surfaced for the docs attributes table. Each
4
+ * member's value is the attribute name; its JSDoc is the description docgen renders.
5
+ */
6
+ declare enum CheckboxDataAttributes {
7
+ /** The styling/testing hook — the slot name the precompiled CSS keys off. */
8
+ slot = "data-slot",
9
+ /** Stamps the size axis (`sm` / `md` / `lg`) on the box, re-pointing the size internals. */
10
+ size = "data-size",
11
+ /** Present on the box and indicator while the checkbox is ticked. */
12
+ checked = "data-checked",
13
+ /** Present on the box and indicator while the checkbox is not ticked. */
14
+ unchecked = "data-unchecked",
15
+ /** Present while the checkbox is in the mixed (indeterminate) state. */
16
+ indeterminate = "data-indeterminate",
17
+ /** Present while the checkbox is disabled. */
18
+ disabled = "data-disabled",
19
+ /** Present while the checkbox is read-only — valid and announced, but not editable. */
20
+ readonly = "data-readonly",
21
+ /** Present while the checkbox is in an invalid state (also honours `aria-invalid`). */
22
+ invalid = "data-invalid",
23
+ /** Stamps the group's layout axis (`vertical` / `horizontal`) on `noctis-checkbox-group`. */
24
+ orientation = "data-orientation"
25
+ }
26
+ //#endregion
27
+ export { CheckboxDataAttributes };
@@ -0,0 +1,40 @@
1
+ //#region src/components/checkbox/checkbox.slots.ts
2
+ /**
3
+ * The slot vocabulary every `Checkbox` part stamps as its `data-slot`. The authored source the
4
+ * orchestration files read from, kebab-cased `{component}-{part}`; SLOTS.md still generates from the
5
+ * token-graph declarations.
6
+ */
7
+ const CHECKBOX_SLOTS = {
8
+ root: "noctis-checkbox",
9
+ indicator: "noctis-checkbox-indicator",
10
+ group: "noctis-checkbox-group",
11
+ field: "noctis-checkbox-field",
12
+ label: "noctis-checkbox-label"
13
+ };
14
+ /**
15
+ * The state attributes Base UI stamps on a checkbox, surfaced for the docs attributes table. Each
16
+ * member's value is the attribute name; its JSDoc is the description docgen renders.
17
+ */
18
+ let CheckboxDataAttributes = /* @__PURE__ */ function(CheckboxDataAttributes) {
19
+ /** The styling/testing hook — the slot name the precompiled CSS keys off. */
20
+ CheckboxDataAttributes["slot"] = "data-slot";
21
+ /** Stamps the size axis (`sm` / `md` / `lg`) on the box, re-pointing the size internals. */
22
+ CheckboxDataAttributes["size"] = "data-size";
23
+ /** Present on the box and indicator while the checkbox is ticked. */
24
+ CheckboxDataAttributes["checked"] = "data-checked";
25
+ /** Present on the box and indicator while the checkbox is not ticked. */
26
+ CheckboxDataAttributes["unchecked"] = "data-unchecked";
27
+ /** Present while the checkbox is in the mixed (indeterminate) state. */
28
+ CheckboxDataAttributes["indeterminate"] = "data-indeterminate";
29
+ /** Present while the checkbox is disabled. */
30
+ CheckboxDataAttributes["disabled"] = "data-disabled";
31
+ /** Present while the checkbox is read-only — valid and announced, but not editable. */
32
+ CheckboxDataAttributes["readonly"] = "data-readonly";
33
+ /** Present while the checkbox is in an invalid state (also honours `aria-invalid`). */
34
+ CheckboxDataAttributes["invalid"] = "data-invalid";
35
+ /** Stamps the group's layout axis (`vertical` / `horizontal`) on `noctis-checkbox-group`. */
36
+ CheckboxDataAttributes["orientation"] = "data-orientation";
37
+ return CheckboxDataAttributes;
38
+ }({});
39
+ //#endregion
40
+ export { CHECKBOX_SLOTS, CheckboxDataAttributes };
@@ -0,0 +1,3 @@
1
+ import { CheckboxGroup } from "./checkbox-group.js";
2
+ import { Checkbox } from "./checkbox.js";
3
+ import { CheckboxDataAttributes } from "./checkbox.slots.js";
@@ -0,0 +1,37 @@
1
+ import { ReactElement } from "react";
2
+
3
+ //#region src/components/code-block/brand-logo.d.ts
4
+ /** The package managers with an official multi-colour brand glyph. */
5
+ type PackageManager = "pnpm" | "npm" | "yarn" | "bun" | "deno";
6
+ /**
7
+ * The brand glyph for a fenced-code language or a package manager — one component for both, so a
8
+ * `CodeBlock.Tab`'s leading mark reads consistently whether the strip is languages or managers.
9
+ * Resolves in order: an official multi-colour package-manager mark (pnpm, npm, yarn, bun, deno), then a
10
+ * Simple Icons language mark (recoloured to stay legible on the dark well), then a muted terminal glyph
11
+ * so every tab keeps a leading icon. Reads `label` first (an explicit `Node.js` beats the raw `ts`
12
+ * fence id), then `name`.
13
+ *
14
+ * @see {@link BrandLogo.Props}
15
+ */
16
+ declare function BrandLogo({
17
+ name,
18
+ label,
19
+ size,
20
+ className,
21
+ ...rest
22
+ }: BrandLogo.Props): ReactElement;
23
+ /**
24
+ * Per-part prop types. Types-only — merges with the `BrandLogo` function above, so `BrandLogo` is the
25
+ * component value while `BrandLogo.Props` is its prop type.
26
+ */
27
+ declare namespace BrandLogo {
28
+ type Props = {
29
+ /** The thing to badge — a Shiki language id (`bash`, `ts`) or a package manager (`pnpm`, `npm`). */name?: string; /** Author-facing label (`Node.js`, `cURL`); preferred over `name`. */
30
+ label?: string; /** Square edge length in px. Defaults to 14 to match the tab text size. */
31
+ size?: number; /** Merged onto the glyph's class list. */
32
+ className?: string; /** Forwarded onto the rendered glyph — e.g. the `data-code-block-logo` hook a header logo carries. */
33
+ [attr: `data-${string}`]: string | undefined;
34
+ };
35
+ }
36
+ //#endregion
37
+ export { BrandLogo, PackageManager };