prime-ui-kit 0.9.0 → 0.9.2

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 (982) hide show
  1. package/README.md +61 -47
  2. package/dist/chunks/chunk-IQELQNMR.js +379 -0
  3. package/dist/chunks/chunk-LXGRKN34.js +13260 -0
  4. package/dist/chunks/chunk-ZEFCDEEQ.js +3493 -0
  5. package/dist/color-picker.d.ts +7 -0
  6. package/dist/color-picker.js +9 -0
  7. package/dist/components/accordion/Accordion.d.ts +44 -32
  8. package/dist/components/avatar/Avatar.d.ts +36 -53
  9. package/dist/components/badge/Badge.d.ts +50 -13
  10. package/dist/components/badge/edgeIcons.d.ts +13 -0
  11. package/dist/components/badge/tier.d.ts +0 -1
  12. package/dist/components/banner/Banner.d.ts +29 -60
  13. package/dist/components/breadcrumb/Breadcrumb.d.ts +11 -23
  14. package/dist/components/button/Button.d.ts +22 -36
  15. package/dist/components/button-group/ButtonGroup.d.ts +17 -17
  16. package/dist/components/card/Card.d.ts +75 -202
  17. package/dist/components/checkbox/Checkbox.d.ts +37 -38
  18. package/dist/components/code-block/CodeBlock.d.ts +5 -13
  19. package/dist/components/color-picker/ColorPicker.d.ts +76 -52
  20. package/dist/components/color-picker/ColorPresets.d.ts +18 -30
  21. package/dist/components/color-swatches/ColorSwatches.d.ts +40 -0
  22. package/dist/components/command-menu/CommandMenu.d.ts +138 -78
  23. package/dist/components/crossfade/Crossfade.d.ts +14 -0
  24. package/dist/components/data-table/DataTable.d.ts +35 -81
  25. package/dist/components/data-table/Footer.d.ts +16 -0
  26. package/dist/components/data-table/Head.d.ts +21 -0
  27. package/dist/components/data-table/Row.d.ts +56 -0
  28. package/dist/components/data-table/StateRows.d.ts +18 -0
  29. package/dist/components/data-table/rows.d.ts +60 -0
  30. package/dist/components/data-table/types.d.ts +40 -0
  31. package/dist/components/data-table/useColumnHover.d.ts +9 -0
  32. package/dist/components/data-table/useFrozenColumns.d.ts +16 -0
  33. package/dist/components/data-table/useInfiniteRows.d.ts +24 -0
  34. package/dist/components/data-table/useRowSelection.d.ts +35 -0
  35. package/dist/components/datepicker/Datepicker.d.ts +9 -126
  36. package/dist/components/datepicker/DatepickerPanel.d.ts +113 -0
  37. package/dist/components/datepicker/datepickerModel.d.ts +16 -22
  38. package/dist/components/datepicker/panelLayout.d.ts +50 -0
  39. package/dist/components/digit-input/DigitInput.d.ts +24 -19
  40. package/dist/components/divider/Divider.d.ts +7 -15
  41. package/dist/components/dnd/Dnd.d.ts +135 -0
  42. package/dist/components/dnd/DragOverlay.d.ts +6 -0
  43. package/dist/components/dnd/autoScroll.d.ts +5 -0
  44. package/dist/components/dnd/context.d.ts +5 -0
  45. package/dist/components/dnd/dragSession.d.ts +102 -0
  46. package/dist/components/dnd/geometry.d.ts +30 -0
  47. package/dist/components/dnd/labels.d.ts +18 -0
  48. package/dist/components/dnd/store.d.ts +9 -0
  49. package/dist/components/dnd/useDragSource.d.ts +36 -0
  50. package/dist/components/dnd/useDropTarget.d.ts +44 -0
  51. package/dist/components/dnd/useFlipList.d.ts +11 -0
  52. package/dist/components/dnd/useSortableList.d.ts +62 -0
  53. package/dist/components/drawer/Drawer.d.ts +13 -21
  54. package/dist/components/dropdown/Dropdown.d.ts +78 -84
  55. package/dist/components/empty-page/EmptyPage.d.ts +48 -48
  56. package/dist/components/example-frame/ExampleFrame.d.ts +20 -27
  57. package/dist/components/file-upload/FileUpload.d.ts +79 -134
  58. package/dist/components/hint/Hint.d.ts +10 -11
  59. package/dist/components/index.d.ts +58 -42
  60. package/dist/components/input/Input.d.ts +35 -37
  61. package/dist/components/kanban/Kanban.d.ts +129 -0
  62. package/dist/components/kbd/Kbd.d.ts +6 -12
  63. package/dist/components/label/Label.d.ts +18 -15
  64. package/dist/components/link-button/LinkButton.d.ts +14 -15
  65. package/dist/components/login-form/LoginForm.d.ts +115 -0
  66. package/dist/components/modal/DialogParts.d.ts +57 -16
  67. package/dist/components/modal/Modal.d.ts +9 -20
  68. package/dist/components/native-select/NativeSelect.d.ts +28 -0
  69. package/dist/components/notification/Notification.d.ts +50 -16
  70. package/dist/components/notification/NotificationStore.d.ts +2 -6
  71. package/dist/components/page-content/PageContent.d.ts +43 -52
  72. package/dist/components/page-toolbar/PageToolbar.d.ts +53 -0
  73. package/dist/components/pagination/Pagination.d.ts +11 -23
  74. package/dist/components/popover/Popover.d.ts +62 -26
  75. package/dist/components/progress-bar/ProgressBar.d.ts +17 -13
  76. package/dist/components/progress-circle/ProgressCircle.d.ts +14 -15
  77. package/dist/components/radio/Radio.d.ts +46 -54
  78. package/dist/components/scroll-container/ScrollContainer.d.ts +10 -13
  79. package/dist/components/segmented-control/SegmentedControl.d.ts +20 -29
  80. package/dist/components/select/Select.d.ts +54 -135
  81. package/dist/components/select/SelectItem.d.ts +68 -0
  82. package/dist/components/select/selectContext.d.ts +61 -0
  83. package/dist/components/skeleton/Skeleton.d.ts +22 -0
  84. package/dist/components/slider/Slider.d.ts +24 -16
  85. package/dist/components/smart-filter/SmartFilter.d.ts +105 -0
  86. package/dist/components/smart-filter/model.d.ts +33 -0
  87. package/dist/components/spinner/Spinner.d.ts +22 -0
  88. package/dist/components/stepper/Stepper.d.ts +32 -42
  89. package/dist/components/switch/Switch.d.ts +19 -37
  90. package/dist/components/tabs/Tabs.d.ts +65 -38
  91. package/dist/components/tag-select/TagOptionMenu.d.ts +29 -0
  92. package/dist/components/tag-select/TagSelect.d.ts +15 -16
  93. package/dist/components/tag-select/useChipOverflow.d.ts +19 -0
  94. package/dist/components/textarea/Textarea.d.ts +16 -31
  95. package/dist/components/thumbnail/Thumbnail.d.ts +41 -0
  96. package/dist/components/timeline/Timeline.d.ts +46 -61
  97. package/dist/components/tooltip/Tooltip.d.ts +21 -17
  98. package/dist/components/typography/Typography.d.ts +5 -21
  99. package/dist/hooks/useControllableState.d.ts +0 -1
  100. package/dist/hooks/useEdgeOverflow.d.ts +12 -0
  101. package/dist/hooks/useEnterConfirm.d.ts +15 -0
  102. package/dist/hooks/useImageStatus.d.ts +19 -0
  103. package/dist/hooks/useInertSiblings.d.ts +9 -0
  104. package/dist/hooks/useMediaQuery.d.ts +7 -0
  105. package/dist/hooks/useMergedRefs.d.ts +6 -2
  106. package/dist/hooks/useModalLayer.d.ts +22 -0
  107. package/dist/hooks/usePosition.d.ts +46 -40
  108. package/dist/hooks/usePresence.d.ts +0 -1
  109. package/dist/hooks/useScrollLock.d.ts +3 -5
  110. package/dist/hooks/useStateSwap.d.ts +8 -0
  111. package/dist/hooks/useSwipeDismiss.d.ts +34 -0
  112. package/dist/icons/Icon.d.ts +24 -7
  113. package/dist/icons/index.d.ts +2 -44
  114. package/dist/icons/registry.d.ts +85 -0
  115. package/dist/index.css +7053 -6846
  116. package/dist/index.d.ts +0 -1
  117. package/dist/index.js +106 -13830
  118. package/dist/internal/AnchorRectContext.d.ts +12 -0
  119. package/dist/internal/ChoiceField.d.ts +34 -0
  120. package/dist/internal/ControlSizeContext.d.ts +6 -2
  121. package/dist/internal/FieldFrame.d.ts +47 -8
  122. package/dist/internal/HighlightMatch.d.ts +13 -0
  123. package/dist/internal/MenuGroup.d.ts +8 -0
  124. package/dist/internal/Portal.d.ts +0 -1
  125. package/dist/internal/VisuallyHidden.d.ts +11 -0
  126. package/dist/internal/context.d.ts +0 -1
  127. package/dist/internal/cx.d.ts +0 -1
  128. package/dist/internal/data-attributes.d.ts +0 -1
  129. package/dist/internal/fieldClasses.d.ts +9 -0
  130. package/dist/internal/formatLabel.d.ts +6 -0
  131. package/dist/internal/highlightTsxHtml.d.ts +1 -2
  132. package/dist/internal/iconBox.d.ts +9 -0
  133. package/dist/internal/iconLayout.d.ts +15 -0
  134. package/dist/internal/imageSlot.d.ts +29 -0
  135. package/dist/internal/layoutPxFromPrimitives.d.ts +2 -3
  136. package/dist/internal/listbox.d.ts +40 -0
  137. package/dist/internal/mergeRefs.d.ts +4 -2
  138. package/dist/internal/overlay/FloatingPanel.d.ts +36 -0
  139. package/dist/internal/overlay/focus.d.ts +14 -0
  140. package/dist/internal/overlay/layerStack.d.ts +41 -0
  141. package/dist/internal/overlay/useFloatingLayer.d.ts +70 -0
  142. package/dist/internal/polymorphic.d.ts +9 -0
  143. package/dist/internal/progressSegments.d.ts +63 -0
  144. package/dist/internal/rovingFocus.d.ts +18 -0
  145. package/dist/internal/scrollAncestors.d.ts +1 -2
  146. package/dist/internal/slot.d.ts +11 -5
  147. package/dist/internal/states.d.ts +3 -2
  148. package/dist/internal/swatch.d.ts +56 -0
  149. package/dist/internal/touchTarget.d.ts +4 -0
  150. package/dist/layout/app-header/AppHeader.d.ts +110 -0
  151. package/dist/layout/app-shell/AppShell.d.ts +47 -22
  152. package/dist/layout/bottom-nav/BottomNav.d.ts +80 -0
  153. package/dist/layout/index.d.ts +6 -3
  154. package/dist/layout/sidebar/Sidebar.d.ts +206 -35
  155. package/dist/theme/applyTheme.d.ts +0 -1
  156. package/dist/tokens/naming.d.ts +6 -0
  157. package/dist/tokens/primitives.d.ts +26 -80
  158. package/dist/tokens/semantic.d.ts +122 -25
  159. package/dist/tokens/themes/dark.d.ts +7 -1
  160. package/package.json +30 -24
  161. package/src/components/accordion/COMPONENT.md +91 -101
  162. package/src/components/accordion/examples/collapsible.tsx +27 -0
  163. package/src/components/accordion/examples/controlled.tsx +36 -0
  164. package/src/components/accordion/examples/examples.module.css +6 -39
  165. package/src/components/accordion/examples/multiple.tsx +31 -0
  166. package/src/components/accordion/examples/overview.tsx +39 -0
  167. package/src/components/accordion/examples/sizes.tsx +14 -25
  168. package/src/components/accordion/examples/states.tsx +23 -48
  169. package/src/components/accordion/examples/variants.tsx +35 -0
  170. package/src/components/accordion/examples/with-icon.tsx +47 -0
  171. package/src/components/avatar/COMPONENT.md +88 -153
  172. package/src/components/avatar/examples/examples.module.css +6 -44
  173. package/src/components/avatar/examples/overview.tsx +18 -0
  174. package/src/components/avatar/examples/presence.tsx +20 -17
  175. package/src/components/avatar/examples/sizes.tsx +8 -10
  176. package/src/components/avatar/examples/src-from-state.tsx +4 -5
  177. package/src/components/avatar/examples/states.tsx +17 -27
  178. package/src/components/avatar/examples/team-group.tsx +21 -0
  179. package/src/components/avatar/examples/variants.tsx +40 -0
  180. package/src/components/badge/COMPONENT.md +113 -122
  181. package/src/components/{tag → badge}/examples/applied-filters.tsx +10 -11
  182. package/src/components/badge/examples/examples.module.css +14 -59
  183. package/src/components/badge/examples/filter-values.tsx +39 -0
  184. package/src/components/badge/examples/in-controls.tsx +14 -26
  185. package/src/components/badge/examples/overview.tsx +13 -0
  186. package/src/components/badge/examples/sizes.tsx +8 -10
  187. package/src/components/badge/examples/states.tsx +35 -29
  188. package/src/components/badge/examples/variants.tsx +27 -36
  189. package/src/components/badge/examples/with-icon.tsx +50 -0
  190. package/src/components/banner/COMPONENT.md +89 -94
  191. package/src/components/banner/examples/dismissible.tsx +38 -0
  192. package/src/components/banner/examples/examples.module.css +6 -22
  193. package/src/components/banner/examples/narrow.tsx +23 -0
  194. package/src/components/banner/examples/overview.tsx +18 -0
  195. package/src/components/banner/examples/page-strip.tsx +53 -0
  196. package/src/components/banner/examples/sizes.tsx +22 -21
  197. package/src/components/banner/examples/structure.tsx +45 -0
  198. package/src/components/banner/examples/variants.tsx +28 -55
  199. package/src/components/breadcrumb/COMPONENT.md +55 -59
  200. package/src/components/breadcrumb/examples/ellipsis.tsx +12 -0
  201. package/src/components/breadcrumb/examples/examples.module.css +3 -52
  202. package/src/components/breadcrumb/examples/overflow.tsx +26 -0
  203. package/src/components/breadcrumb/examples/overview.tsx +12 -0
  204. package/src/components/breadcrumb/examples/sizes.tsx +11 -14
  205. package/src/components/breadcrumb/examples/with-icon.tsx +14 -0
  206. package/src/components/button/COMPONENT.md +65 -66
  207. package/src/components/button/examples/as-child.tsx +8 -32
  208. package/src/components/button/examples/examples.module.css +18 -76
  209. package/src/components/button/examples/in-form.tsx +20 -14
  210. package/src/components/button/examples/on-colored-host.tsx +29 -0
  211. package/src/components/button/examples/overview.tsx +13 -0
  212. package/src/components/button/examples/sizes.tsx +7 -9
  213. package/src/components/button/examples/states.tsx +18 -28
  214. package/src/components/button/examples/variants.tsx +31 -0
  215. package/src/components/button/examples/with-icon.tsx +35 -23
  216. package/src/components/button-group/COMPONENT.md +64 -55
  217. package/src/components/button-group/examples/controlled.tsx +3 -3
  218. package/src/components/button-group/examples/examples.module.css +4 -39
  219. package/src/components/button-group/examples/full-width.tsx +10 -14
  220. package/src/components/button-group/examples/in-form.tsx +3 -3
  221. package/src/components/button-group/examples/orientation.tsx +6 -8
  222. package/src/components/button-group/examples/overview.tsx +12 -0
  223. package/src/components/button-group/examples/sizes.tsx +8 -10
  224. package/src/components/button-group/examples/states.tsx +28 -7
  225. package/src/components/button-group/examples/with-icon.tsx +45 -0
  226. package/src/components/card/COMPONENT.md +99 -298
  227. package/src/components/card/examples/{content.tsx → content-templates.tsx} +23 -29
  228. package/src/components/card/examples/examples.module.css +0 -8
  229. package/src/components/card/examples/flat.tsx +9 -14
  230. package/src/components/card/examples/kpi-media.tsx +42 -0
  231. package/src/components/card/examples/narrow.tsx +47 -0
  232. package/src/components/card/examples/{settings.tsx → overview.tsx} +7 -8
  233. package/src/components/card/examples/panel-chart.tsx +26 -34
  234. package/src/components/card/examples/{metrics.tsx → variants.tsx} +12 -18
  235. package/src/components/checkbox/COMPONENT.md +92 -96
  236. package/src/components/checkbox/examples/controlled.tsx +41 -0
  237. package/src/components/checkbox/examples/examples.module.css +47 -43
  238. package/src/components/checkbox/examples/in-form.tsx +34 -0
  239. package/src/components/checkbox/examples/indicator.tsx +54 -0
  240. package/src/components/checkbox/examples/overview.tsx +10 -0
  241. package/src/components/checkbox/examples/sizes.tsx +5 -10
  242. package/src/components/checkbox/examples/states.tsx +42 -23
  243. package/src/components/checkbox/examples/without-label.tsx +3 -7
  244. package/src/components/code-block/COMPONENT.md +55 -57
  245. package/src/components/code-block/examples/color-scheme.tsx +4 -15
  246. package/src/components/code-block/examples/examples.module.css +9 -40
  247. package/src/components/code-block/examples/{long-lines.tsx → narrow.tsx} +3 -4
  248. package/src/components/code-block/examples/overview.tsx +19 -0
  249. package/src/components/code-block/examples/variants.tsx +12 -21
  250. package/src/components/color-picker/COMPONENT.md +196 -165
  251. package/src/components/color-picker/examples/controlled.tsx +37 -0
  252. package/src/components/color-picker/examples/examples.module.css +19 -88
  253. package/src/components/color-picker/examples/formats.tsx +13 -18
  254. package/src/components/color-picker/examples/in-form.tsx +44 -0
  255. package/src/components/color-picker/examples/overview.tsx +37 -0
  256. package/src/components/color-picker/examples/panel.tsx +12 -13
  257. package/src/components/color-picker/examples/presets-sizes.tsx +15 -20
  258. package/src/components/color-picker/examples/presets.tsx +33 -0
  259. package/src/components/color-picker/examples/sizes.tsx +26 -0
  260. package/src/components/color-picker/examples/states.tsx +4 -14
  261. package/src/components/color-picker/examples/validation.tsx +18 -0
  262. package/src/components/color-swatches/COMPONENT.md +145 -0
  263. package/src/components/color-swatches/examples/controlled.tsx +22 -0
  264. package/src/components/color-swatches/examples/examples.module.css +19 -0
  265. package/src/components/color-swatches/examples/in-form.tsx +35 -0
  266. package/src/components/color-swatches/examples/overview.tsx +6 -0
  267. package/src/components/color-swatches/examples/sizes.tsx +19 -0
  268. package/src/components/color-swatches/examples/states.tsx +20 -0
  269. package/src/components/color-swatches/examples/wrapping.tsx +12 -0
  270. package/src/components/command-menu/COMPONENT.md +117 -180
  271. package/src/components/command-menu/examples/controlled-open.tsx +29 -0
  272. package/src/components/command-menu/examples/controlled.tsx +19 -26
  273. package/src/components/command-menu/examples/dismiss.tsx +39 -0
  274. package/src/components/command-menu/examples/overview.tsx +61 -0
  275. package/src/components/command-menu/examples/sizes.tsx +30 -51
  276. package/src/components/command-menu/examples/states.tsx +6 -16
  277. package/src/components/command-menu/examples/structure.tsx +54 -0
  278. package/src/components/crossfade/COMPONENT.md +104 -0
  279. package/src/components/crossfade/examples/examples.module.css +65 -0
  280. package/src/components/crossfade/examples/overview.tsx +102 -0
  281. package/src/components/crossfade/examples/record-switch.tsx +67 -0
  282. package/src/components/data-table/COMPONENT.md +181 -182
  283. package/src/components/data-table/examples/appearance.tsx +31 -34
  284. package/src/components/data-table/examples/columns-visibility.tsx +167 -0
  285. package/src/components/data-table/examples/content-width.tsx +46 -26
  286. package/src/components/data-table/examples/controlled.tsx +56 -0
  287. package/src/components/data-table/examples/detail-panel.tsx +23 -28
  288. package/src/components/data-table/examples/examples.module.css +20 -91
  289. package/src/components/data-table/examples/infinite-scroll.tsx +17 -18
  290. package/src/components/data-table/examples/narrow.tsx +28 -38
  291. package/src/components/data-table/examples/nested-rows.tsx +32 -54
  292. package/src/components/data-table/examples/numeric.tsx +10 -19
  293. package/src/components/data-table/examples/overview.tsx +54 -0
  294. package/src/components/data-table/examples/selection.tsx +11 -15
  295. package/src/components/data-table/examples/sizes.tsx +22 -33
  296. package/src/components/data-table/examples/states.tsx +23 -24
  297. package/src/components/data-table/examples/sticky.tsx +17 -24
  298. package/src/components/data-table/examples/toolbar.tsx +21 -23
  299. package/src/components/datepicker/COMPONENT.md +152 -164
  300. package/src/components/datepicker/examples/controlled-open.tsx +32 -0
  301. package/src/components/datepicker/examples/controlled.tsx +39 -0
  302. package/src/components/datepicker/examples/examples.module.css +9 -23
  303. package/src/components/datepicker/examples/in-form.tsx +32 -45
  304. package/src/components/datepicker/examples/inline-panel.tsx +3 -3
  305. package/src/components/datepicker/examples/narrow.tsx +1 -1
  306. package/src/components/datepicker/examples/overview.tsx +6 -0
  307. package/src/components/datepicker/examples/range-presets.tsx +6 -5
  308. package/src/components/datepicker/examples/sizes.tsx +7 -10
  309. package/src/components/datepicker/examples/states.tsx +9 -30
  310. package/src/components/datepicker/examples/validation.tsx +26 -0
  311. package/src/components/datepicker/examples/yearless.tsx +9 -8
  312. package/src/components/digit-input/COMPONENT.md +96 -58
  313. package/src/components/digit-input/examples/controlled.tsx +6 -15
  314. package/src/components/digit-input/examples/examples.module.css +13 -38
  315. package/src/components/digit-input/examples/full-width.tsx +13 -0
  316. package/src/components/digit-input/examples/grouped.tsx +11 -0
  317. package/src/components/digit-input/examples/in-form.tsx +32 -0
  318. package/src/components/digit-input/examples/on-complete.tsx +20 -0
  319. package/src/components/digit-input/examples/overview.tsx +6 -0
  320. package/src/components/digit-input/examples/sizes.tsx +5 -17
  321. package/src/components/digit-input/examples/states.tsx +6 -50
  322. package/src/components/digit-input/examples/validation.tsx +17 -0
  323. package/src/components/divider/COMPONENT.md +62 -53
  324. package/src/components/divider/examples/align.tsx +14 -0
  325. package/src/components/divider/examples/examples.module.css +6 -20
  326. package/src/components/divider/examples/or-separator.tsx +19 -0
  327. package/src/components/divider/examples/overview.tsx +30 -0
  328. package/src/components/divider/examples/sizes.tsx +11 -10
  329. package/src/components/divider/examples/vertical.tsx +21 -0
  330. package/src/components/divider/examples/with-icon.tsx +26 -0
  331. package/src/components/dnd/COMPONENT.md +197 -0
  332. package/src/components/dnd/examples/board.tsx +83 -0
  333. package/src/components/dnd/examples/drop-zones.tsx +82 -0
  334. package/src/components/dnd/examples/examples.module.css +89 -0
  335. package/src/components/dnd/examples/handle.tsx +53 -0
  336. package/src/components/dnd/examples/narrow.tsx +42 -0
  337. package/src/components/dnd/examples/overview.tsx +45 -0
  338. package/src/components/drawer/COMPONENT.md +114 -105
  339. package/src/components/drawer/examples/controlled-open.tsx +33 -0
  340. package/src/components/drawer/examples/date-sheet.tsx +41 -0
  341. package/src/components/drawer/examples/dismiss.tsx +55 -0
  342. package/src/components/drawer/examples/examples.module.css +8 -24
  343. package/src/components/drawer/examples/in-form.tsx +82 -0
  344. package/src/components/drawer/examples/long-content.tsx +40 -0
  345. package/src/components/drawer/examples/overview.tsx +48 -0
  346. package/src/components/drawer/examples/{variants-sides.tsx → placement.tsx} +13 -14
  347. package/src/components/drawer/examples/sizes.tsx +9 -15
  348. package/src/components/drawer/examples/structure.tsx +35 -0
  349. package/src/components/dropdown/COMPONENT.md +119 -148
  350. package/src/components/dropdown/examples/checkbox-items.tsx +48 -0
  351. package/src/components/dropdown/examples/controlled-open.tsx +32 -0
  352. package/src/components/dropdown/examples/dismiss.tsx +17 -0
  353. package/src/components/dropdown/examples/examples.module.css +11 -45
  354. package/src/components/dropdown/examples/long-list.tsx +42 -0
  355. package/src/components/dropdown/examples/{full-width.tsx → match-trigger-width.tsx} +5 -4
  356. package/src/components/dropdown/examples/overview.tsx +41 -0
  357. package/src/components/dropdown/examples/placement.tsx +16 -13
  358. package/src/components/dropdown/examples/sizes.tsx +18 -15
  359. package/src/components/dropdown/examples/states.tsx +21 -29
  360. package/src/components/dropdown/examples/structure.tsx +56 -0
  361. package/src/components/empty-page/COMPONENT.md +72 -76
  362. package/src/components/empty-page/examples/compact.tsx +23 -0
  363. package/src/components/empty-page/examples/data-region.tsx +8 -11
  364. package/src/components/empty-page/examples/examples.module.css +22 -25
  365. package/src/components/empty-page/examples/icon-tones.tsx +5 -6
  366. package/src/components/empty-page/examples/narrow.tsx +26 -0
  367. package/src/components/empty-page/examples/{no-results.tsx → overview.tsx} +4 -5
  368. package/src/components/empty-page/examples/sizes.tsx +14 -20
  369. package/src/components/example-frame/COMPONENT.md +64 -66
  370. package/src/components/example-frame/examples/controlled.tsx +42 -0
  371. package/src/components/example-frame/examples/overview.tsx +16 -0
  372. package/src/components/file-upload/COMPONENT.md +128 -186
  373. package/src/components/file-upload/examples/avatar-upload.tsx +7 -12
  374. package/src/components/file-upload/examples/custom-body.tsx +44 -0
  375. package/src/components/file-upload/examples/examples.module.css +46 -64
  376. package/src/components/file-upload/examples/in-form.tsx +76 -0
  377. package/src/components/file-upload/examples/narrow.tsx +17 -0
  378. package/src/components/file-upload/examples/overview.tsx +52 -0
  379. package/src/components/file-upload/examples/sizes.tsx +16 -37
  380. package/src/components/file-upload/examples/states.tsx +6 -98
  381. package/src/components/file-upload/examples/upload-progress.tsx +39 -0
  382. package/src/components/file-upload/examples/validation.tsx +19 -0
  383. package/src/components/file-upload/examples/variants.tsx +5 -18
  384. package/src/components/hint/COMPONENT.md +42 -48
  385. package/src/components/hint/examples/examples.module.css +3 -45
  386. package/src/components/hint/examples/hint-or-error.tsx +5 -5
  387. package/src/components/hint/examples/overview.tsx +34 -0
  388. package/src/components/hint/examples/sizes.tsx +8 -10
  389. package/src/components/hint/examples/states.tsx +21 -14
  390. package/src/components/hint/examples/with-icon.tsx +31 -0
  391. package/src/components/input/COMPONENT.md +70 -88
  392. package/src/components/input/examples/affixes.tsx +22 -0
  393. package/src/components/input/examples/controlled.tsx +9 -10
  394. package/src/components/input/examples/examples.module.css +3 -116
  395. package/src/components/input/examples/in-form.tsx +35 -14
  396. package/src/components/input/examples/overview.tsx +12 -0
  397. package/src/components/input/examples/sizes.tsx +6 -11
  398. package/src/components/input/examples/states.tsx +6 -23
  399. package/src/components/input/examples/validation.tsx +35 -0
  400. package/src/components/input/examples/with-icon.tsx +25 -0
  401. package/src/components/input/examples/{search-without-focus-ring.tsx → without-focus-ring.tsx} +5 -5
  402. package/src/components/kanban/COMPONENT.md +181 -0
  403. package/src/components/kanban/examples/controlled.tsx +78 -0
  404. package/src/components/kanban/examples/examples.module.css +31 -0
  405. package/src/components/kanban/examples/limits.tsx +58 -0
  406. package/src/components/kanban/examples/narrow.tsx +76 -0
  407. package/src/components/kanban/examples/overview.tsx +130 -0
  408. package/src/components/kanban/examples/states.tsx +75 -0
  409. package/src/components/kanban/examples/structure.tsx +76 -0
  410. package/src/components/kbd/COMPONENT.md +50 -65
  411. package/src/components/kbd/examples/examples.module.css +11 -41
  412. package/src/components/kbd/examples/in-controls.tsx +25 -31
  413. package/src/components/kbd/examples/overview.tsx +24 -0
  414. package/src/components/kbd/examples/shortcut-list.tsx +12 -12
  415. package/src/components/kbd/examples/sizes.tsx +8 -13
  416. package/src/components/label/COMPONENT.md +45 -44
  417. package/src/components/label/examples/examples.module.css +8 -29
  418. package/src/components/label/examples/overview.tsx +17 -0
  419. package/src/components/label/examples/sizes.tsx +9 -13
  420. package/src/components/label/examples/states.tsx +17 -14
  421. package/src/components/label/examples/structure.tsx +32 -0
  422. package/src/components/label/examples/with-icon.tsx +25 -17
  423. package/src/components/link-button/COMPONENT.md +56 -39
  424. package/src/components/link-button/examples/as-child.tsx +18 -0
  425. package/src/components/link-button/examples/external-link.tsx +6 -6
  426. package/src/components/link-button/examples/overview.tsx +11 -0
  427. package/src/components/link-button/examples/sizes.tsx +9 -11
  428. package/src/components/link-button/examples/states.tsx +25 -12
  429. package/src/components/link-button/examples/variants.tsx +21 -0
  430. package/src/components/link-button/examples/with-icon.tsx +21 -13
  431. package/src/components/login-form/COMPONENT.md +162 -0
  432. package/src/components/login-form/examples/examples.module.css +39 -0
  433. package/src/components/login-form/examples/forgot-password.tsx +39 -0
  434. package/src/components/login-form/examples/narrow.tsx +32 -0
  435. package/src/components/login-form/examples/overview.tsx +58 -0
  436. package/src/components/login-form/examples/register.tsx +85 -0
  437. package/src/components/login-form/examples/reset-password.tsx +60 -0
  438. package/src/components/login-form/examples/sizes.tsx +38 -0
  439. package/src/components/login-form/examples/states.tsx +75 -0
  440. package/src/components/login-form/examples/structure.tsx +28 -0
  441. package/src/components/login-form/examples/verification-code.tsx +57 -0
  442. package/src/components/modal/COMPONENT.md +71 -88
  443. package/src/components/modal/examples/{controlled.tsx → controlled-open.tsx} +6 -12
  444. package/src/components/modal/examples/custom-container.tsx +29 -0
  445. package/src/components/modal/examples/dismiss.tsx +54 -0
  446. package/src/components/modal/examples/examples.module.css +4 -20
  447. package/src/components/modal/examples/in-form.tsx +78 -0
  448. package/src/components/modal/examples/long-content.tsx +52 -0
  449. package/src/components/modal/examples/overview.tsx +35 -0
  450. package/src/components/modal/examples/sizes.tsx +7 -9
  451. package/src/components/modal/examples/structure.tsx +53 -0
  452. package/src/components/native-select/COMPONENT.md +132 -0
  453. package/src/components/native-select/examples/controlled.tsx +26 -0
  454. package/src/components/native-select/examples/examples.module.css +14 -0
  455. package/src/components/native-select/examples/in-form.tsx +43 -0
  456. package/src/components/native-select/examples/option-groups.tsx +17 -0
  457. package/src/components/native-select/examples/overview.tsx +16 -0
  458. package/src/components/native-select/examples/sizes.tsx +18 -0
  459. package/src/components/native-select/examples/states.tsx +21 -0
  460. package/src/components/native-select/examples/validation.tsx +26 -0
  461. package/src/components/notification/COMPONENT.md +108 -122
  462. package/src/components/notification/examples/dismiss.tsx +50 -0
  463. package/src/components/notification/examples/examples.module.css +10 -23
  464. package/src/components/notification/examples/in-form.tsx +64 -0
  465. package/src/components/notification/examples/overview.tsx +24 -0
  466. package/src/components/notification/examples/placement.tsx +66 -0
  467. package/src/components/notification/examples/sizes.tsx +11 -18
  468. package/src/components/notification/examples/stacking.tsx +45 -0
  469. package/src/components/notification/examples/structure.tsx +20 -0
  470. package/src/components/notification/examples/tones.tsx +14 -26
  471. package/src/components/page-content/COMPONENT.md +50 -75
  472. package/src/components/page-content/examples/examples.module.css +4 -8
  473. package/src/components/page-content/examples/narrow.tsx +25 -0
  474. package/src/components/page-content/examples/overview.tsx +41 -0
  475. package/src/components/page-content/examples/variants.tsx +39 -0
  476. package/src/components/page-toolbar/COMPONENT.md +142 -0
  477. package/src/components/page-toolbar/examples/examples.module.css +16 -0
  478. package/src/components/page-toolbar/examples/narrow.tsx +103 -0
  479. package/src/components/page-toolbar/examples/overview.tsx +113 -0
  480. package/src/components/page-toolbar/examples/save-changes.tsx +40 -0
  481. package/src/components/page-toolbar/examples/without-search.tsx +60 -0
  482. package/src/components/pagination/COMPONENT.md +73 -64
  483. package/src/components/pagination/examples/controlled.tsx +51 -0
  484. package/src/components/pagination/examples/examples.module.css +6 -55
  485. package/src/components/pagination/examples/narrow.tsx +25 -0
  486. package/src/components/pagination/examples/overflow.tsx +23 -0
  487. package/src/components/pagination/examples/overview.tsx +6 -0
  488. package/src/components/pagination/examples/sizes.tsx +10 -18
  489. package/src/components/popover/COMPONENT.md +89 -99
  490. package/src/components/popover/examples/controlled-open.tsx +32 -0
  491. package/src/components/popover/examples/dismiss.tsx +49 -0
  492. package/src/components/popover/examples/examples.module.css +21 -41
  493. package/src/components/popover/examples/flush.tsx +47 -0
  494. package/src/components/popover/examples/in-form.tsx +54 -0
  495. package/src/components/popover/examples/{full-width.tsx → match-trigger-width.tsx} +7 -7
  496. package/src/components/popover/examples/overview.tsx +43 -0
  497. package/src/components/popover/examples/placement.tsx +17 -15
  498. package/src/components/popover/examples/sizes.tsx +12 -9
  499. package/src/components/popover/examples/structure.tsx +50 -0
  500. package/src/components/progress-bar/COMPONENT.md +103 -62
  501. package/src/components/progress-bar/examples/custom-max.tsx +12 -0
  502. package/src/components/progress-bar/examples/examples.module.css +4 -34
  503. package/src/components/progress-bar/examples/overview.tsx +12 -0
  504. package/src/components/progress-bar/examples/segments.tsx +32 -0
  505. package/src/components/progress-bar/examples/sizes.tsx +11 -8
  506. package/src/components/progress-bar/examples/variants.tsx +34 -0
  507. package/src/components/progress-circle/COMPONENT.md +102 -61
  508. package/src/components/progress-circle/examples/examples.module.css +2 -39
  509. package/src/components/progress-circle/examples/inner-content.tsx +35 -0
  510. package/src/components/progress-circle/examples/overview.tsx +10 -0
  511. package/src/components/progress-circle/examples/segments.tsx +64 -0
  512. package/src/components/progress-circle/examples/sizes.tsx +10 -12
  513. package/src/components/progress-circle/examples/variants.tsx +28 -0
  514. package/src/components/radio/COMPONENT.md +93 -114
  515. package/src/components/radio/examples/controlled.tsx +30 -0
  516. package/src/components/radio/examples/group.tsx +23 -0
  517. package/src/components/radio/examples/orientation.tsx +34 -0
  518. package/src/components/radio/examples/overview.tsx +18 -0
  519. package/src/components/radio/examples/sizes.tsx +7 -12
  520. package/src/components/radio/examples/states.tsx +42 -30
  521. package/src/components/scroll-container/COMPONENT.md +57 -29
  522. package/src/components/scroll-container/examples/edge-fade.tsx +53 -0
  523. package/src/components/scroll-container/examples/examples.module.css +7 -7
  524. package/src/components/scroll-container/examples/overscroll.tsx +27 -0
  525. package/src/components/scroll-container/examples/overview.tsx +27 -0
  526. package/src/components/scroll-container/examples/variants.tsx +54 -0
  527. package/src/components/segmented-control/COMPONENT.md +93 -107
  528. package/src/components/segmented-control/examples/colors.tsx +8 -13
  529. package/src/components/segmented-control/examples/controlled.tsx +10 -6
  530. package/src/components/segmented-control/examples/examples.module.css +2 -88
  531. package/src/components/segmented-control/examples/full-width.tsx +7 -44
  532. package/src/components/segmented-control/examples/overview.tsx +12 -0
  533. package/src/components/segmented-control/examples/scroll.tsx +16 -0
  534. package/src/components/segmented-control/examples/sizes.tsx +8 -20
  535. package/src/components/segmented-control/examples/states.tsx +28 -34
  536. package/src/components/segmented-control/examples/two-line.tsx +17 -104
  537. package/src/components/segmented-control/examples/with-icon.tsx +52 -0
  538. package/src/components/select/COMPONENT.md +155 -208
  539. package/src/components/select/examples/clearable.tsx +23 -0
  540. package/src/components/select/examples/controlled-open.tsx +30 -0
  541. package/src/components/select/examples/controlled.tsx +17 -10
  542. package/src/components/select/examples/examples.module.css +18 -38
  543. package/src/components/select/examples/in-form.tsx +59 -70
  544. package/src/components/select/examples/multiple.tsx +21 -33
  545. package/src/components/select/examples/overview.tsx +17 -0
  546. package/src/components/select/examples/rich-options.tsx +43 -69
  547. package/src/components/select/examples/searchable.tsx +42 -0
  548. package/src/components/select/examples/sizes.tsx +13 -17
  549. package/src/components/select/examples/states.tsx +34 -48
  550. package/src/components/select/examples/validation.tsx +41 -0
  551. package/src/components/select/examples/with-icon.tsx +35 -0
  552. package/src/components/skeleton/COMPONENT.md +104 -0
  553. package/src/components/skeleton/examples/examples.module.css +89 -0
  554. package/src/components/skeleton/examples/form.tsx +20 -0
  555. package/src/components/skeleton/examples/overview.tsx +21 -0
  556. package/src/components/skeleton/examples/sizes.tsx +24 -0
  557. package/src/components/skeleton/examples/with-crossfade.tsx +68 -0
  558. package/src/components/slider/COMPONENT.md +105 -68
  559. package/src/components/slider/examples/controlled.tsx +26 -30
  560. package/src/components/slider/examples/examples.module.css +8 -32
  561. package/src/components/slider/examples/hint-and-error.tsx +33 -0
  562. package/src/components/slider/examples/overview.tsx +6 -0
  563. package/src/components/slider/examples/range-step.tsx +7 -17
  564. package/src/components/slider/examples/sizes.tsx +8 -6
  565. package/src/components/slider/examples/states.tsx +11 -8
  566. package/src/components/slider/examples/value-format.tsx +13 -25
  567. package/src/components/slider/examples/variants.tsx +23 -0
  568. package/src/components/smart-filter/COMPONENT.md +184 -0
  569. package/src/components/smart-filter/examples/controlled.tsx +48 -0
  570. package/src/components/smart-filter/examples/examples.module.css +56 -0
  571. package/src/components/smart-filter/examples/many-values.tsx +53 -0
  572. package/src/components/smart-filter/examples/narrow.tsx +38 -0
  573. package/src/components/smart-filter/examples/overview.tsx +109 -0
  574. package/src/components/smart-filter/examples/sizes.tsx +33 -0
  575. package/src/components/spinner/COMPONENT.md +112 -0
  576. package/src/components/spinner/examples/examples.module.css +20 -0
  577. package/src/components/spinner/examples/loading-region.tsx +22 -0
  578. package/src/components/spinner/examples/overview.tsx +15 -0
  579. package/src/components/spinner/examples/sizes.tsx +19 -0
  580. package/src/components/spinner/examples/variants.tsx +19 -0
  581. package/src/components/stepper/COMPONENT.md +83 -78
  582. package/src/components/stepper/examples/controlled.tsx +46 -0
  583. package/src/components/stepper/examples/examples.module.css +9 -40
  584. package/src/components/stepper/examples/narrow.tsx +11 -19
  585. package/src/components/stepper/examples/orientation.tsx +21 -59
  586. package/src/components/stepper/examples/overview.tsx +28 -0
  587. package/src/components/stepper/examples/sizes.tsx +19 -28
  588. package/src/components/stepper/examples/states.tsx +20 -21
  589. package/src/components/stepper/examples/with-icon.tsx +29 -0
  590. package/src/components/switch/COMPONENT.md +75 -94
  591. package/src/components/switch/examples/controlled.tsx +8 -6
  592. package/src/components/switch/examples/examples.module.css +13 -45
  593. package/src/components/switch/examples/in-form.tsx +20 -24
  594. package/src/components/switch/examples/overview.tsx +10 -0
  595. package/src/components/switch/examples/settings-row.tsx +14 -22
  596. package/src/components/switch/examples/sizes.tsx +5 -10
  597. package/src/components/switch/examples/states.tsx +37 -25
  598. package/src/components/tabs/COMPONENT.md +156 -86
  599. package/src/components/tabs/examples/closable.tsx +48 -0
  600. package/src/components/tabs/examples/controlled.tsx +14 -20
  601. package/src/components/tabs/examples/examples.module.css +13 -93
  602. package/src/components/tabs/examples/orientation.tsx +40 -0
  603. package/src/components/tabs/examples/overflow.tsx +60 -0
  604. package/src/components/tabs/examples/overview.tsx +30 -0
  605. package/src/components/tabs/examples/sizes.tsx +19 -19
  606. package/src/components/tabs/examples/states.tsx +20 -55
  607. package/src/components/tabs/examples/two-line.tsx +22 -29
  608. package/src/components/tabs/examples/variants.tsx +40 -0
  609. package/src/components/tabs/examples/with-icon.tsx +44 -0
  610. package/src/components/tag-select/COMPONENT.md +119 -122
  611. package/src/components/tag-select/examples/controlled-open.tsx +29 -0
  612. package/src/components/tag-select/examples/controlled.tsx +26 -0
  613. package/src/components/tag-select/examples/creatable.tsx +28 -0
  614. package/src/components/tag-select/examples/examples.module.css +3 -22
  615. package/src/components/tag-select/examples/in-form.tsx +44 -41
  616. package/src/components/tag-select/examples/manage-tags.tsx +20 -39
  617. package/src/components/tag-select/examples/many-tags.tsx +20 -0
  618. package/src/components/tag-select/examples/overview.tsx +21 -0
  619. package/src/components/tag-select/examples/sizes.tsx +7 -10
  620. package/src/components/tag-select/examples/states.tsx +11 -36
  621. package/src/components/tag-select/examples/validation.tsx +35 -0
  622. package/src/components/textarea/COMPONENT.md +50 -50
  623. package/src/components/textarea/examples/auto-resize.tsx +21 -0
  624. package/src/components/textarea/examples/controlled.tsx +12 -16
  625. package/src/components/textarea/examples/examples.module.css +15 -48
  626. package/src/components/textarea/examples/in-form.tsx +52 -48
  627. package/src/components/textarea/examples/overview.tsx +12 -0
  628. package/src/components/textarea/examples/sizes.tsx +6 -7
  629. package/src/components/textarea/examples/states.tsx +9 -13
  630. package/src/components/textarea/examples/validation.tsx +34 -0
  631. package/src/components/textarea/examples/without-focus-ring.tsx +12 -0
  632. package/src/components/thumbnail/COMPONENT.md +150 -0
  633. package/src/components/thumbnail/examples/examples.module.css +45 -0
  634. package/src/components/thumbnail/examples/full-width.tsx +48 -0
  635. package/src/components/thumbnail/examples/overview.tsx +31 -0
  636. package/src/components/thumbnail/examples/ratios.tsx +25 -0
  637. package/src/components/thumbnail/examples/ring.tsx +29 -0
  638. package/src/components/thumbnail/examples/sizes.tsx +23 -0
  639. package/src/components/thumbnail/examples/states.tsx +38 -0
  640. package/src/components/thumbnail/examples/variants.tsx +28 -0
  641. package/src/components/timeline/COMPONENT.md +92 -203
  642. package/src/components/timeline/examples/examples.module.css +5 -20
  643. package/src/components/timeline/examples/links.tsx +28 -0
  644. package/src/components/timeline/examples/narrow.tsx +30 -38
  645. package/src/components/timeline/examples/{activity-feed.tsx → overview.tsx} +9 -17
  646. package/src/components/timeline/examples/sizes.tsx +22 -28
  647. package/src/components/timeline/examples/{service-history.tsx → structure.tsx} +10 -8
  648. package/src/components/timeline/examples/{colors-and-tones.tsx → variants.tsx} +11 -16
  649. package/src/components/tooltip/COMPONENT.md +74 -62
  650. package/src/components/tooltip/examples/{controlled.tsx → controlled-open.tsx} +5 -7
  651. package/src/components/tooltip/examples/delay.tsx +19 -28
  652. package/src/components/tooltip/examples/disabled-trigger.tsx +18 -0
  653. package/src/components/tooltip/examples/examples.module.css +3 -33
  654. package/src/components/tooltip/examples/long-content.tsx +12 -15
  655. package/src/components/tooltip/examples/overview.tsx +17 -0
  656. package/src/components/tooltip/examples/placement.tsx +30 -0
  657. package/src/components/tooltip/examples/sizes.tsx +12 -15
  658. package/src/components/tooltip/examples/toolbar.tsx +35 -0
  659. package/src/components/typography/COMPONENT.md +68 -99
  660. package/src/components/typography/examples/article.tsx +23 -36
  661. package/src/components/typography/examples/examples.module.css +20 -54
  662. package/src/components/typography/examples/inline-emphasis.tsx +20 -0
  663. package/src/components/typography/examples/overview.tsx +20 -0
  664. package/src/components/typography/examples/semantic-tag.tsx +17 -0
  665. package/src/components/typography/examples/truncate.tsx +7 -7
  666. package/src/components/typography/examples/variants.tsx +43 -42
  667. package/src/components/typography/examples/weights.tsx +31 -0
  668. package/src/layout/app-header/COMPONENT.md +178 -0
  669. package/src/layout/app-header/examples/breadcrumbs.tsx +36 -0
  670. package/src/layout/app-header/examples/examples.module.css +47 -0
  671. package/src/layout/app-header/examples/in-app-shell.tsx +70 -0
  672. package/src/layout/app-header/examples/narrow.tsx +29 -0
  673. package/src/layout/app-header/examples/overview.tsx +36 -0
  674. package/src/layout/app-shell/COMPONENT.md +63 -63
  675. package/src/layout/app-shell/examples/contained.tsx +5 -5
  676. package/src/layout/app-shell/examples/examples.module.css +24 -0
  677. package/src/layout/app-shell/examples/footer.tsx +59 -0
  678. package/src/layout/app-shell/examples/overview.tsx +83 -0
  679. package/src/layout/app-shell/examples/template.tsx +54 -0
  680. package/src/layout/bottom-nav/COMPONENT.md +153 -0
  681. package/src/layout/bottom-nav/examples/examples.module.css +39 -0
  682. package/src/layout/bottom-nav/examples/floating.tsx +89 -0
  683. package/src/layout/bottom-nav/examples/icon-only.tsx +41 -0
  684. package/src/layout/bottom-nav/examples/in-app-shell.tsx +64 -0
  685. package/src/layout/bottom-nav/examples/overview.tsx +44 -0
  686. package/src/layout/bottom-nav/examples/router.tsx +31 -0
  687. package/src/layout/bottom-nav/examples/structure.tsx +47 -0
  688. package/src/layout/sidebar/COMPONENT.md +304 -111
  689. package/src/layout/sidebar/examples/account.tsx +88 -0
  690. package/src/layout/sidebar/examples/brand-header.tsx +45 -0
  691. package/src/layout/sidebar/examples/collapsible-groups.tsx +77 -0
  692. package/src/layout/sidebar/examples/controlled-open.tsx +55 -0
  693. package/src/layout/sidebar/examples/controlled.tsx +68 -0
  694. package/src/layout/sidebar/examples/examples.module.css +17 -3
  695. package/src/layout/sidebar/examples/nested-items.tsx +74 -0
  696. package/src/layout/sidebar/examples/overview.tsx +126 -0
  697. package/src/layout/sidebar/examples/router.tsx +19 -13
  698. package/src/layout/sidebar/examples/sizes.tsx +17 -12
  699. package/src/layout/sidebar/examples/structure.tsx +81 -0
  700. package/src/styles/fonts.css +4 -0
  701. package/src/styles/globals.css +18 -29
  702. package/src/styles/reset.css +2 -0
  703. package/src/styles/theme-dark.css +6 -0
  704. package/src/styles/theme-light.css +58 -23
  705. package/src/styles/tokens.css +11 -77
  706. package/dist/components/accordion/Accordion.d.ts.map +0 -1
  707. package/dist/components/avatar/Avatar.d.ts.map +0 -1
  708. package/dist/components/badge/Badge.d.ts.map +0 -1
  709. package/dist/components/badge/tier.d.ts.map +0 -1
  710. package/dist/components/banner/Banner.d.ts.map +0 -1
  711. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +0 -1
  712. package/dist/components/button/Button.d.ts.map +0 -1
  713. package/dist/components/button-group/ButtonGroup.d.ts.map +0 -1
  714. package/dist/components/card/Card.d.ts.map +0 -1
  715. package/dist/components/checkbox/Checkbox.d.ts.map +0 -1
  716. package/dist/components/code-block/CodeBlock.d.ts.map +0 -1
  717. package/dist/components/color-picker/ColorPicker.d.ts.map +0 -1
  718. package/dist/components/color-picker/ColorPresets.d.ts.map +0 -1
  719. package/dist/components/command-menu/CommandMenu.d.ts.map +0 -1
  720. package/dist/components/data-table/DataTable.d.ts.map +0 -1
  721. package/dist/components/datepicker/Datepicker.d.ts.map +0 -1
  722. package/dist/components/datepicker/datepickerModel.d.ts.map +0 -1
  723. package/dist/components/digit-input/DigitInput.d.ts.map +0 -1
  724. package/dist/components/divider/Divider.d.ts.map +0 -1
  725. package/dist/components/drawer/Drawer.d.ts.map +0 -1
  726. package/dist/components/dropdown/Dropdown.d.ts.map +0 -1
  727. package/dist/components/dropdown/dropdownGeometry.d.ts +0 -10
  728. package/dist/components/dropdown/dropdownGeometry.d.ts.map +0 -1
  729. package/dist/components/dropdown/menuKeyboard.d.ts +0 -4
  730. package/dist/components/dropdown/menuKeyboard.d.ts.map +0 -1
  731. package/dist/components/dropdown/useDropdownPosition.d.ts +0 -18
  732. package/dist/components/dropdown/useDropdownPosition.d.ts.map +0 -1
  733. package/dist/components/empty-page/EmptyPage.d.ts.map +0 -1
  734. package/dist/components/example-frame/ExampleFrame.d.ts.map +0 -1
  735. package/dist/components/file-upload/FileUpload.d.ts.map +0 -1
  736. package/dist/components/hint/Hint.d.ts.map +0 -1
  737. package/dist/components/index.css +0 -11181
  738. package/dist/components/index.css.map +0 -7
  739. package/dist/components/index.d.ts.map +0 -1
  740. package/dist/components/index.js +0 -13833
  741. package/dist/components/index.js.map +0 -7
  742. package/dist/components/input/Input.d.ts.map +0 -1
  743. package/dist/components/kbd/Kbd.d.ts.map +0 -1
  744. package/dist/components/label/Label.d.ts.map +0 -1
  745. package/dist/components/link-button/LinkButton.d.ts.map +0 -1
  746. package/dist/components/modal/DialogParts.d.ts.map +0 -1
  747. package/dist/components/modal/Modal.d.ts.map +0 -1
  748. package/dist/components/modal/useInertSiblings.d.ts +0 -7
  749. package/dist/components/modal/useInertSiblings.d.ts.map +0 -1
  750. package/dist/components/notification/Notification.d.ts.map +0 -1
  751. package/dist/components/notification/NotificationStore.d.ts.map +0 -1
  752. package/dist/components/page-content/PageContent.d.ts.map +0 -1
  753. package/dist/components/pagination/Pagination.d.ts.map +0 -1
  754. package/dist/components/popover/Popover.d.ts.map +0 -1
  755. package/dist/components/popover/popoverGeometry.d.ts +0 -6
  756. package/dist/components/popover/popoverGeometry.d.ts.map +0 -1
  757. package/dist/components/popover/usePopoverPosition.d.ts +0 -18
  758. package/dist/components/popover/usePopoverPosition.d.ts.map +0 -1
  759. package/dist/components/progress-bar/ProgressBar.d.ts.map +0 -1
  760. package/dist/components/progress-circle/ProgressCircle.d.ts.map +0 -1
  761. package/dist/components/radio/Radio.d.ts.map +0 -1
  762. package/dist/components/scroll-container/ScrollContainer.d.ts.map +0 -1
  763. package/dist/components/segmented-control/SegmentedControl.d.ts.map +0 -1
  764. package/dist/components/segmented-progress-bar/SegmentedProgressBar.d.ts +0 -29
  765. package/dist/components/segmented-progress-bar/SegmentedProgressBar.d.ts.map +0 -1
  766. package/dist/components/select/Select.d.ts.map +0 -1
  767. package/dist/components/select/selectIcons.d.ts +0 -15
  768. package/dist/components/select/selectIcons.d.ts.map +0 -1
  769. package/dist/components/select/selectListbox.d.ts +0 -13
  770. package/dist/components/select/selectListbox.d.ts.map +0 -1
  771. package/dist/components/slider/Slider.d.ts.map +0 -1
  772. package/dist/components/stepper/Stepper.d.ts.map +0 -1
  773. package/dist/components/switch/Switch.d.ts.map +0 -1
  774. package/dist/components/tabs/Tabs.d.ts.map +0 -1
  775. package/dist/components/tag/Tag.d.ts +0 -47
  776. package/dist/components/tag/Tag.d.ts.map +0 -1
  777. package/dist/components/tag-select/TagSelect.d.ts.map +0 -1
  778. package/dist/components/textarea/Textarea.d.ts.map +0 -1
  779. package/dist/components/timeline/Timeline.d.ts.map +0 -1
  780. package/dist/components/tooltip/Tooltip.d.ts.map +0 -1
  781. package/dist/components/typography/Typography.d.ts.map +0 -1
  782. package/dist/hooks/useControllableState.d.ts.map +0 -1
  783. package/dist/hooks/useEscapeKey.d.ts +0 -7
  784. package/dist/hooks/useEscapeKey.d.ts.map +0 -1
  785. package/dist/hooks/useFieldIds.d.ts +0 -17
  786. package/dist/hooks/useFieldIds.d.ts.map +0 -1
  787. package/dist/hooks/useFocusTrap.d.ts +0 -20
  788. package/dist/hooks/useFocusTrap.d.ts.map +0 -1
  789. package/dist/hooks/useMergedRefs.d.ts.map +0 -1
  790. package/dist/hooks/useModalKeyboard.d.ts +0 -14
  791. package/dist/hooks/useModalKeyboard.d.ts.map +0 -1
  792. package/dist/hooks/useOutsideClick.d.ts +0 -26
  793. package/dist/hooks/useOutsideClick.d.ts.map +0 -1
  794. package/dist/hooks/useOverlayModal.d.ts +0 -7
  795. package/dist/hooks/useOverlayModal.d.ts.map +0 -1
  796. package/dist/hooks/usePosition.d.ts.map +0 -1
  797. package/dist/hooks/usePresence.d.ts.map +0 -1
  798. package/dist/hooks/useResponsiveMonths.d.ts +0 -18
  799. package/dist/hooks/useResponsiveMonths.d.ts.map +0 -1
  800. package/dist/hooks/useScrollLock.d.ts.map +0 -1
  801. package/dist/icons/Icon.d.ts.map +0 -1
  802. package/dist/icons/index.d.ts.map +0 -1
  803. package/dist/index.css.map +0 -7
  804. package/dist/index.d.ts.map +0 -1
  805. package/dist/index.js.map +0 -7
  806. package/dist/internal/ControlSizeContext.d.ts.map +0 -1
  807. package/dist/internal/DividerContentContext.d.ts +0 -4
  808. package/dist/internal/DividerContentContext.d.ts.map +0 -1
  809. package/dist/internal/FieldFrame.d.ts.map +0 -1
  810. package/dist/internal/OverlayPortalLayerContext.d.ts +0 -13
  811. package/dist/internal/OverlayPortalLayerContext.d.ts.map +0 -1
  812. package/dist/internal/Portal.d.ts.map +0 -1
  813. package/dist/internal/context.d.ts.map +0 -1
  814. package/dist/internal/cx.d.ts.map +0 -1
  815. package/dist/internal/data-attributes.d.ts.map +0 -1
  816. package/dist/internal/highlightTsxHtml.d.ts.map +0 -1
  817. package/dist/internal/layoutPxFromPrimitives.d.ts.map +0 -1
  818. package/dist/internal/mergeRefs.d.ts.map +0 -1
  819. package/dist/internal/runtimeUnits.d.ts +0 -3
  820. package/dist/internal/runtimeUnits.d.ts.map +0 -1
  821. package/dist/internal/scrollAncestors.d.ts.map +0 -1
  822. package/dist/internal/slot.d.ts.map +0 -1
  823. package/dist/internal/states.d.ts.map +0 -1
  824. package/dist/internal/useFieldDescriptions.d.ts +0 -18
  825. package/dist/internal/useFieldDescriptions.d.ts.map +0 -1
  826. package/dist/layout/app-shell/AppShell.d.ts.map +0 -1
  827. package/dist/layout/index.d.ts.map +0 -1
  828. package/dist/layout/sidebar/Sidebar.d.ts.map +0 -1
  829. package/dist/theme/applyTheme.d.ts.map +0 -1
  830. package/dist/tokens/primitives.d.ts.map +0 -1
  831. package/dist/tokens/semantic.d.ts.map +0 -1
  832. package/dist/tokens/themes/dark.d.ts.map +0 -1
  833. package/dist/tokens/themes/light.d.ts +0 -3
  834. package/dist/tokens/themes/light.d.ts.map +0 -1
  835. package/src/components/accordion/examples/checkout.tsx +0 -73
  836. package/src/components/accordion/examples/layouts.tsx +0 -58
  837. package/src/components/avatar/examples/colors.tsx +0 -29
  838. package/src/components/avatar/examples/group.tsx +0 -35
  839. package/src/components/avatar/examples/team-card.tsx +0 -70
  840. package/src/components/badge/examples/icons.tsx +0 -37
  841. package/src/components/badge/examples/order-list.tsx +0 -48
  842. package/src/components/badge/examples/palette.tsx +0 -44
  843. package/src/components/badge/examples/surfaces.tsx +0 -21
  844. package/src/components/banner/examples/dismiss.tsx +0 -48
  845. package/src/components/banner/examples/placement.tsx +0 -92
  846. package/src/components/breadcrumb/examples/collapse.tsx +0 -56
  847. package/src/components/breadcrumb/examples/page-header.tsx +0 -31
  848. package/src/components/button/examples/composition.tsx +0 -46
  849. package/src/components/button/examples/controlled.tsx +0 -18
  850. package/src/components/button/examples/full-width.tsx +0 -15
  851. package/src/components/button/examples/icon-only.tsx +0 -42
  852. package/src/components/button/examples/surfaces.tsx +0 -18
  853. package/src/components/button/examples/variants-tones.tsx +0 -39
  854. package/src/components/button-group/examples/composition.tsx +0 -99
  855. package/src/components/card/examples/mini-media.tsx +0 -55
  856. package/src/components/card/examples/responsive.tsx +0 -72
  857. package/src/components/checkbox/examples/hint-error.tsx +0 -22
  858. package/src/components/checkbox/examples/select-all.tsx +0 -40
  859. package/src/components/checkbox/examples/settings-card.tsx +0 -76
  860. package/src/components/code-block/examples/api-docs.tsx +0 -31
  861. package/src/components/code-block/examples/controlled.tsx +0 -38
  862. package/src/components/code-block/examples/surfaces.tsx +0 -7
  863. package/src/components/color-picker/examples/brand-color.tsx +0 -73
  864. package/src/components/color-picker/examples/hex-input-sizes.tsx +0 -54
  865. package/src/components/color-picker/examples/presets-quick.tsx +0 -57
  866. package/src/components/color-picker/examples/presets-tags.tsx +0 -52
  867. package/src/components/command-menu/examples/composition.tsx +0 -91
  868. package/src/components/command-menu/examples/examples.module.css +0 -9
  869. package/src/components/command-menu/examples/keyboard-search.tsx +0 -94
  870. package/src/components/data-table/examples/dashboard.tsx +0 -205
  871. package/src/components/data-table/examples/sorting-pagination.tsx +0 -66
  872. package/src/components/datepicker/examples/badge.tsx +0 -19
  873. package/src/components/datepicker/examples/single.tsx +0 -16
  874. package/src/components/digit-input/examples/length-and-complete.tsx +0 -30
  875. package/src/components/digit-input/examples/surfaces.tsx +0 -6
  876. package/src/components/digit-input/examples/verification-step.tsx +0 -62
  877. package/src/components/divider/examples/composition.tsx +0 -49
  878. package/src/components/divider/examples/variants.tsx +0 -62
  879. package/src/components/drawer/examples/composition.tsx +0 -94
  880. package/src/components/drawer/examples/controlled.tsx +0 -42
  881. package/src/components/drawer/examples/features.tsx +0 -48
  882. package/src/components/drawer/examples/states.tsx +0 -54
  883. package/src/components/dropdown/examples/as-child.tsx +0 -23
  884. package/src/components/dropdown/examples/composition.tsx +0 -91
  885. package/src/components/dropdown/examples/controlled.tsx +0 -32
  886. package/src/components/dropdown/examples/row-actions.tsx +0 -56
  887. package/src/components/dropdown/examples/variants.tsx +0 -52
  888. package/src/components/example-frame/examples/basic.tsx +0 -18
  889. package/src/components/file-upload/examples/file-list.tsx +0 -67
  890. package/src/components/file-upload/examples/in-card.tsx +0 -84
  891. package/src/components/hint/examples/field-states.tsx +0 -60
  892. package/src/components/hint/examples/in-form.tsx +0 -45
  893. package/src/components/input/examples/anatomy.tsx +0 -70
  894. package/src/components/input/examples/control-alignment.tsx +0 -57
  895. package/src/components/input/examples/full-width.tsx +0 -23
  896. package/src/components/input/examples/icons-and-affixes.tsx +0 -32
  897. package/src/components/input/examples/reserved-support-row.tsx +0 -33
  898. package/src/components/input/examples/surfaces.tsx +0 -12
  899. package/src/components/input/examples/with-badge.tsx +0 -40
  900. package/src/components/kbd/examples/modifier-keys.tsx +0 -24
  901. package/src/components/label/examples/in-form.tsx +0 -39
  902. package/src/components/label/examples/markers.tsx +0 -27
  903. package/src/components/link-button/examples/composition.tsx +0 -30
  904. package/src/components/link-button/examples/examples.module.css +0 -46
  905. package/src/components/link-button/examples/tones.tsx +0 -15
  906. package/src/components/modal/examples/composition.tsx +0 -87
  907. package/src/components/modal/examples/features.tsx +0 -68
  908. package/src/components/modal/examples/link.tsx +0 -79
  909. package/src/components/modal/examples/states.tsx +0 -73
  910. package/src/components/notification/examples/features.tsx +0 -42
  911. package/src/components/notification/examples/live.tsx +0 -128
  912. package/src/components/notification/examples/save-form.tsx +0 -59
  913. package/src/components/page-content/examples/readable.tsx +0 -24
  914. package/src/components/page-content/examples/settings-page.tsx +0 -49
  915. package/src/components/page-content/examples/widths.tsx +0 -39
  916. package/src/components/pagination/examples/compact.tsx +0 -36
  917. package/src/components/pagination/examples/list-footer.tsx +0 -50
  918. package/src/components/pagination/examples/states.tsx +0 -44
  919. package/src/components/popover/examples/as-child.tsx +0 -29
  920. package/src/components/popover/examples/composition.tsx +0 -45
  921. package/src/components/popover/examples/controlled.tsx +0 -39
  922. package/src/components/popover/examples/features.tsx +0 -56
  923. package/src/components/popover/examples/inset-variants.tsx +0 -58
  924. package/src/components/popover/examples/states.tsx +0 -48
  925. package/src/components/progress-bar/examples/file-upload.tsx +0 -52
  926. package/src/components/progress-bar/examples/values-and-tones.tsx +0 -17
  927. package/src/components/progress-circle/examples/goals-card.tsx +0 -37
  928. package/src/components/progress-circle/examples/values-and-tones.tsx +0 -56
  929. package/src/components/radio/examples/examples.module.css +0 -43
  930. package/src/components/radio/examples/hint-error.tsx +0 -28
  931. package/src/components/radio/examples/horizontal.tsx +0 -33
  932. package/src/components/radio/examples/plan-picker.tsx +0 -55
  933. package/src/components/scroll-container/examples/both-axes.tsx +0 -57
  934. package/src/components/scroll-container/examples/list.tsx +0 -44
  935. package/src/components/segmented-control/examples/item-content.tsx +0 -78
  936. package/src/components/segmented-control/examples/surfaces.tsx +0 -82
  937. package/src/components/segmented-control/examples/toolbar.tsx +0 -56
  938. package/src/components/segmented-progress-bar/COMPONENT.md +0 -128
  939. package/src/components/segmented-progress-bar/examples/examples.module.css +0 -68
  940. package/src/components/segmented-progress-bar/examples/segment-gap.tsx +0 -24
  941. package/src/components/segmented-progress-bar/examples/sizes.tsx +0 -31
  942. package/src/components/segmented-progress-bar/examples/storage-distribution.tsx +0 -41
  943. package/src/components/select/examples/native.tsx +0 -21
  944. package/src/components/select/examples/search-groups.tsx +0 -61
  945. package/src/components/select/examples/with-badge.tsx +0 -47
  946. package/src/components/slider/examples/basic.tsx +0 -6
  947. package/src/components/slider/examples/display-settings.tsx +0 -41
  948. package/src/components/stepper/examples/wizard.tsx +0 -62
  949. package/src/components/switch/examples/notification-settings.tsx +0 -37
  950. package/src/components/switch/examples/on-off.tsx +0 -15
  951. package/src/components/switch/examples/validation.tsx +0 -19
  952. package/src/components/tabs/examples/horizontal.tsx +0 -30
  953. package/src/components/tabs/examples/vertical.tsx +0 -101
  954. package/src/components/tag/COMPONENT.md +0 -179
  955. package/src/components/tag/examples/colors.tsx +0 -49
  956. package/src/components/tag/examples/examples.module.css +0 -47
  957. package/src/components/tag/examples/sizes.tsx +0 -23
  958. package/src/components/tag/examples/states.tsx +0 -19
  959. package/src/components/tag/examples/surfaces.tsx +0 -16
  960. package/src/components/tag/examples/with-icon.tsx +0 -29
  961. package/src/components/textarea/examples/height-and-limits.tsx +0 -45
  962. package/src/components/textarea/examples/hint-and-error.tsx +0 -21
  963. package/src/components/textarea/examples/reserved-support-row.tsx +0 -37
  964. package/src/components/textarea/examples/surfaces.tsx +0 -11
  965. package/src/components/textarea/examples/with-label.tsx +0 -22
  966. package/src/components/timeline/examples/hover-highlight.tsx +0 -48
  967. package/src/components/timeline/examples/in-card.tsx +0 -48
  968. package/src/components/timeline/examples/selectable.tsx +0 -58
  969. package/src/components/tooltip/examples/composition.tsx +0 -37
  970. package/src/components/tooltip/examples/side.tsx +0 -29
  971. package/src/components/tooltip/examples/states.tsx +0 -45
  972. package/src/components/typography/examples/as-prop.tsx +0 -25
  973. package/src/components/typography/examples/composition.tsx +0 -23
  974. package/src/components/typography/examples/full-width.tsx +0 -29
  975. package/src/components/typography/examples/reading-and-form.tsx +0 -35
  976. package/src/components/typography/examples/states.tsx +0 -23
  977. package/src/components/typography/examples/tones.tsx +0 -34
  978. package/src/components/typography/examples/variant-catalog.tsx +0 -41
  979. package/src/layout/app-shell/examples/with-sidebar.tsx +0 -63
  980. package/src/layout/sidebar/examples/modes.tsx +0 -55
  981. package/src/layout/sidebar/examples/responsive.tsx +0 -44
  982. package/src/layout/sidebar/examples/states.tsx +0 -34
@@ -1,9 +1,21 @@
1
1
  import * as React from "react";
2
- import { type ColorAreaProps as AriaColorAreaProps, ColorField as AriaColorField, type ColorSliderProps as AriaColorSliderProps, type ColorSwatchPickerItemProps as AriaColorSwatchPickerItemProps, type ColorSwatchPickerProps as AriaColorSwatchPickerProps, type ColorSwatchProps as AriaColorSwatchProps, type ColorThumbProps as AriaColorThumbProps, type SliderOutputProps as AriaSliderOutputProps, type SliderTrackProps as AriaSliderTrackProps, type Color, parseColor } from "react-aria-components";
2
+ import { type ColorAreaProps as AriaColorAreaProps, type ColorSliderProps as AriaColorSliderProps, type ColorThumbProps as AriaColorThumbProps, type SliderTrackProps as AriaSliderTrackProps, type Color, parseColor } from "react-aria-components";
3
3
  import { Button } from "@/components/button/Button";
4
+ import { type ColorSwatchesProps } from "@/components/color-swatches/ColorSwatches";
5
+ import type { FieldRootDomProps } from "@/internal/FieldFrame";
4
6
  import type { ControlSize } from "@/internal/states";
5
7
  export type { Color as ColorPickerColorValue } from "react-aria-components";
6
8
  export type ColorValueFormat = "hsl" | "rgb" | "hex";
9
+ declare global {
10
+ interface Window {
11
+ /** The EyeDropper API (Chromium); absent elsewhere. */
12
+ EyeDropper?: new () => {
13
+ open: () => Promise<{
14
+ sRGBHex: string;
15
+ }>;
16
+ };
17
+ }
18
+ }
7
19
  export type ColorPickerLabels = {
8
20
  /** `ColorPicker.FormatSelect` trigger. */
9
21
  format: string;
@@ -29,23 +41,27 @@ export type ColorPickerRootProps = {
29
41
  labels?: Partial<ColorPickerLabels>;
30
42
  children: React.ReactNode;
31
43
  };
32
- export type ColorPickerHexInputProps = {
44
+ export type ColorPickerHexInputProps = FieldRootDomProps & {
45
+ /** Tier. Default: the tier of the surrounding control (a panel, a popover), else `m`. */
33
46
  size?: ControlSize;
34
47
  label?: React.ReactNode;
48
+ hint?: React.ReactNode;
49
+ /** Error message in the hint slot; implies `invalid`. */
50
+ error?: React.ReactNode;
35
51
  /**
36
52
  * Draws the focus ring on the focused field (default). `false` sets `data-focus-ring="false"` and
37
53
  * hides only the visual ring — focus, keyboard and ARIA are unchanged, the error ring still shows.
38
54
  * Turn it off only where focus is otherwise obvious; WCAG 2.4.7.
39
55
  */
40
56
  focusRing?: boolean;
41
- className?: string;
42
57
  };
43
58
  export { parseColor };
44
- declare function FormatSelect({ className }: {
45
- className?: string;
46
- }): import("react/jsx-runtime").JSX.Element;
47
- export type ColorPickerChannelStripProps = {
48
- className?: string;
59
+ type DivProps = Omit<React.HTMLAttributes<HTMLDivElement>, "children"> & {
60
+ ref?: React.Ref<HTMLDivElement>;
61
+ };
62
+ export type ColorPickerFormatSelectProps = DivProps;
63
+ declare function FormatSelect({ className, ...rest }: ColorPickerFormatSelectProps): import("react/jsx-runtime").JSX.Element;
64
+ export type ColorPickerChannelStripProps = DivProps & {
49
65
  /**
50
66
  * Draws the focus ring on the focused field (default). `false` sets `data-focus-ring="false"` and
51
67
  * hides only the visual ring — focus, keyboard and ARIA are unchanged, the error ring still shows.
@@ -54,75 +70,87 @@ export type ColorPickerChannelStripProps = {
54
70
  focusRing?: boolean;
55
71
  };
56
72
  /** Channel row: eyedropper on the left, then the cells of the current format. */
57
- declare function ChannelStrip({ className, focusRing }: ColorPickerChannelStripProps): import("react/jsx-runtime").JSX.Element;
73
+ declare function ChannelStrip({ className, focusRing, ...rest }: ColorPickerChannelStripProps): import("react/jsx-runtime").JSX.Element;
58
74
  export type ColorPickerPanelProps = React.HTMLAttributes<HTMLDivElement> & {
59
75
  /**
60
76
  * `none` (default) — layout only, for use inside Popover / Card that already provide a surface.
61
77
  * `raised` — standalone floating panel: raised background, panel radius/padding, overlay shadow.
62
78
  */
63
79
  surface?: "none" | "raised";
80
+ ref?: React.Ref<HTMLDivElement>;
64
81
  };
82
+ /** Vertical stack for picker parts with the standard gap; optional raised surface. */
83
+ declare function Panel({ surface, className, ...rest }: ColorPickerPanelProps): import("react/jsx-runtime").JSX.Element;
84
+ declare namespace Panel {
85
+ var displayName: string;
86
+ }
65
87
  declare function ColorPickerRoot({ value, defaultValue, onValueChange, defaultFormat, labels: labelsProp, children, }: ColorPickerRootProps): import("react/jsx-runtime").JSX.Element;
66
88
  declare namespace ColorPickerRoot {
67
89
  var displayName: string;
68
90
  }
69
- export type ColorPickerFieldProps = React.ComponentProps<typeof AriaColorField> & {
70
- /**
71
- * Draws the focus ring on the focused field (default). `false` sets `data-focus-ring="false"` and
72
- * hides only the visual ring — focus, keyboard and ARIA are unchanged, the error ring still shows.
73
- * Turn it off only where focus is otherwise obvious; WCAG 2.4.7.
74
- */
75
- focusRing?: boolean;
76
- };
77
- declare function Field({ className, focusRing, ...props }: ColorPickerFieldProps): import("react/jsx-runtime").JSX.Element;
78
91
  export type ColorPickerSliderProps = Omit<AriaColorSliderProps, "isDisabled"> & {
79
92
  disabled?: boolean;
93
+ ref?: React.Ref<HTMLDivElement>;
80
94
  };
81
95
  declare function Slider({ className, disabled, ...props }: ColorPickerSliderProps): import("react/jsx-runtime").JSX.Element;
82
96
  export type ColorPickerAreaProps = Omit<AriaColorAreaProps, "isDisabled"> & {
83
97
  disabled?: boolean;
98
+ ref?: React.Ref<HTMLDivElement>;
84
99
  };
85
- declare function Area({ className, disabled, ...props }: ColorPickerAreaProps): import("react/jsx-runtime").JSX.Element;
86
- declare function SliderTrack({ className, style, ...props }: AriaSliderTrackProps): import("react/jsx-runtime").JSX.Element;
87
- declare function Thumb({ className, ...props }: AriaColorThumbProps): import("react/jsx-runtime").JSX.Element;
88
- declare function AreaThumb({ className, ...props }: AriaColorThumbProps): import("react/jsx-runtime").JSX.Element;
89
- export type ColorPickerSwatchPickerProps = Omit<AriaColorSwatchPickerProps, "onChange"> & {
90
- onValueChange?: (color: Color) => void;
100
+ export type ColorPickerSliderTrackProps = AriaSliderTrackProps & {
101
+ ref?: React.Ref<HTMLDivElement>;
91
102
  };
92
- /** Preset group. Inside `Root` it follows the picker color; standalone it takes `value` itself. */
93
- declare function SwatchPicker({ className, onValueChange, ...props }: ColorPickerSwatchPickerProps): import("react/jsx-runtime").JSX.Element;
94
- export type ColorPickerSwatchPickerItemProps = Omit<AriaColorSwatchPickerItemProps, "isDisabled"> & {
95
- disabled?: boolean;
103
+ export type ColorPickerThumbProps = AriaColorThumbProps & {
104
+ ref?: React.Ref<HTMLDivElement>;
96
105
  };
97
- declare function SwatchPickerItem({ className, disabled, ...props }: ColorPickerSwatchPickerItemProps): import("react/jsx-runtime").JSX.Element;
98
- declare function Swatch({ className, style, ...props }: AriaColorSwatchProps): import("react/jsx-runtime").JSX.Element;
99
- declare function Output(props: AriaSliderOutputProps): import("react/jsx-runtime").JSX.Element;
100
- declare function SliderMeta({ label }: {
106
+ declare function Area({ className, disabled, ...props }: ColorPickerAreaProps): import("react/jsx-runtime").JSX.Element;
107
+ declare function SliderTrack({ className, style, ...props }: ColorPickerSliderTrackProps): import("react/jsx-runtime").JSX.Element;
108
+ declare function Thumb({ className, ...props }: ColorPickerThumbProps): import("react/jsx-runtime").JSX.Element;
109
+ declare function AreaThumb({ className, ...props }: ColorPickerThumbProps): import("react/jsx-runtime").JSX.Element;
110
+ export type ColorPickerSwatchesProps = Omit<ColorSwatchesProps, "value" | "defaultValue" | "onValueChange" | "allowEmpty" | "name">;
111
+ /**
112
+ * Preset swatches bound to the picker color: picking one sets the color, editing the color
113
+ * elsewhere moves the selection. The kit `ColorSwatches`, so presets carry names.
114
+ */
115
+ declare function Swatches(props: ColorPickerSwatchesProps): import("react/jsx-runtime").JSX.Element;
116
+ declare namespace Swatches {
117
+ var displayName: string;
118
+ }
119
+ export type ColorPickerSliderMetaProps = DivProps & {
120
+ /** The channel name. */
101
121
  label: React.ReactNode;
102
- }): import("react/jsx-runtime").JSX.Element;
103
- declare function HexInput({ size, label, focusRing, className }: ColorPickerHexInputProps): import("react/jsx-runtime").JSX.Element | null;
104
- export type ColorPickerEyeDropperButtonProps = Omit<React.ComponentPropsWithoutRef<typeof Button.Root>, "variant" | "tone" | "size" | "aria-label">;
105
- export type ColorPickerTriggerSwatchProps = {
106
- className?: string;
122
+ };
123
+ /** Slider heading: the label and the current channel value. */
124
+ declare function SliderMeta({ label, className, ...rest }: ColorPickerSliderMetaProps): import("react/jsx-runtime").JSX.Element;
125
+ declare function HexInput({ label, hint, error, focusRing, ...rest }: ColorPickerHexInputProps): import("react/jsx-runtime").JSX.Element;
126
+ declare namespace HexInput {
127
+ var displayName: string;
128
+ }
129
+ export type ColorPickerEyeDropperButtonProps = Omit<React.ComponentPropsWithoutRef<typeof Button.Root>, "variant" | "tone" | "size" | "aria-label"> & {
130
+ ref?: React.Ref<HTMLButtonElement>;
131
+ };
132
+ /**
133
+ * Square soft button that opens the native EyeDropper (name: `labels.eyeDropper`). Without
134
+ * browser support it renders disabled and hidden from assistive tech. Default icon: pipette.
135
+ */
136
+ declare function EyeDropperButton({ children, onClick, type, className, ref, ...rest }: ColorPickerEyeDropperButtonProps): import("react/jsx-runtime").JSX.Element;
137
+ declare namespace EyeDropperButton {
138
+ var displayName: string;
139
+ }
140
+ export type ColorPickerTriggerSwatchProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "children"> & {
141
+ ref?: React.Ref<HTMLSpanElement>;
107
142
  };
108
143
  /** Square of the current color, e.g. inside the popover trigger button. */
109
- declare function TriggerSwatch({ className }: ColorPickerTriggerSwatchProps): import("react/jsx-runtime").JSX.Element;
144
+ declare function TriggerSwatch(props: ColorPickerTriggerSwatchProps): import("react/jsx-runtime").JSX.Element;
110
145
  declare namespace TriggerSwatch {
111
146
  var displayName: string;
112
147
  }
113
148
  export declare const ColorPicker: {
114
149
  Root: typeof ColorPickerRoot;
115
- Panel: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
116
- /**
117
- * `none` (default) — layout only, for use inside Popover / Card that already provide a surface.
118
- * `raised` — standalone floating panel: raised background, panel radius/padding, overlay shadow.
119
- */
120
- surface?: "none" | "raised";
121
- } & React.RefAttributes<HTMLDivElement>>;
150
+ Panel: typeof Panel;
122
151
  TriggerSwatch: typeof TriggerSwatch;
123
152
  FormatSelect: typeof FormatSelect;
124
153
  ChannelStrip: typeof ChannelStrip;
125
- Field: typeof Field;
126
154
  HexInput: typeof HexInput;
127
155
  Area: typeof Area;
128
156
  AreaThumb: typeof AreaThumb;
@@ -130,10 +158,6 @@ export declare const ColorPicker: {
130
158
  SliderMeta: typeof SliderMeta;
131
159
  SliderTrack: typeof SliderTrack;
132
160
  Thumb: typeof Thumb;
133
- Output: typeof Output;
134
- SwatchPicker: typeof SwatchPicker;
135
- SwatchPickerItem: typeof SwatchPickerItem;
136
- Swatch: typeof Swatch;
137
- EyeDropperButton: React.ForwardRefExoticComponent<ColorPickerEyeDropperButtonProps & React.RefAttributes<HTMLButtonElement>>;
161
+ Swatches: typeof Swatches;
162
+ EyeDropperButton: typeof EyeDropperButton;
138
163
  };
139
- //# sourceMappingURL=ColorPicker.d.ts.map
@@ -1,18 +1,8 @@
1
1
  import * as React from "react";
2
2
  import type { PositionAlign, PositionSide } from "@/hooks/usePosition";
3
3
  import type { ControlSize } from "@/internal/states";
4
- export type ColorPreset = {
5
- /** CSS color stored as the value (`onValueChange` returns it as is). */
6
- value: string;
7
- /** Human-readable name: the option's accessible name and the trigger's `aria-label` suffix. */
8
- label: string;
9
- };
10
- /**
11
- * Default quick colors: the kit palette primitives (`tokens/primitives.ts`).
12
- * Row 1 — step 500 of eight hues, row 2 — step 700 of the same hues.
13
- * Take `COLOR_PRESETS.slice(0, 8)` for a single row of eight.
14
- */
15
- export declare const COLOR_PRESETS: readonly ColorPreset[];
4
+ import { COLOR_PRESETS, type ColorPreset } from "@/internal/swatch";
5
+ export { COLOR_PRESETS, type ColorPreset };
16
6
  export type ColorPresetsLabels = {
17
7
  /** Trigger name prefix: `aria-label` = "<trigger>: <color name>". */
18
8
  trigger: string;
@@ -33,7 +23,7 @@ export type ColorPresetsRootProps = {
33
23
  presets?: readonly ColorPreset[];
34
24
  /** Grid columns. Default: one row for up to 8 presets (+ "no color"), else 8; 16 → 8 × 2. */
35
25
  columns?: number;
36
- /** Tier of the trigger, swatches and panel. */
26
+ /** Tier of the trigger, swatches and panel. Default: the host tier, else `m`. */
37
27
  size?: ControlSize;
38
28
  disabled?: boolean;
39
29
  /** Adds the "no color" swatch after the presets (value `null`); hue rows stay aligned. */
@@ -43,18 +33,18 @@ export type ColorPresetsRootProps = {
43
33
  labels?: Partial<ColorPresetsLabels>;
44
34
  children: React.ReactNode;
45
35
  };
46
- declare function ColorPresetsRoot({ value: valueProp, defaultValue, onValueChange, open: openProp, defaultOpen, onOpenChange, presets, columns: columnsProp, size, disabled, allowEmpty, closeOnSelect, labels: labelsProp, children, }: ColorPresetsRootProps): import("react/jsx-runtime").JSX.Element;
36
+ declare function ColorPresetsRoot({ value: valueProp, defaultValue, onValueChange, open: openProp, defaultOpen, onOpenChange, presets, columns: columnsProp, size: sizeProp, disabled, allowEmpty, closeOnSelect, labels: labelsProp, children, }: ColorPresetsRootProps): import("react/jsx-runtime").JSX.Element;
47
37
  declare namespace ColorPresetsRoot {
48
38
  var displayName: string;
49
39
  }
50
- export type ColorPresetsSwatchProps = {
51
- className?: string;
40
+ export type ColorPresetsSwatchProps = Omit<React.HTMLAttributes<HTMLSpanElement>, "children"> & {
41
+ ref?: React.Ref<HTMLSpanElement>;
52
42
  };
53
43
  /**
54
44
  * The current color as a small square for a custom trigger (e.g. inside `Button.Root`). Sized from
55
45
  * the host's `--prime-icon-size`; `aria-hidden` — the trigger carries the name.
56
46
  */
57
- declare function Swatch({ className }: ColorPresetsSwatchProps): import("react/jsx-runtime").JSX.Element;
47
+ declare function Swatch(props: ColorPresetsSwatchProps): import("react/jsx-runtime").JSX.Element;
58
48
  declare namespace Swatch {
59
49
  var displayName: string;
60
50
  }
@@ -65,31 +55,29 @@ export type ColorPresetsTriggerProps = Omit<React.ButtonHTMLAttributes<HTMLButto
65
55
  */
66
56
  asChild?: boolean;
67
57
  children?: React.ReactElement;
58
+ ref?: React.Ref<HTMLButtonElement>;
68
59
  };
69
- export type ColorPresetsContentProps = {
60
+ /** Opens the panel. Name: `aria-label` ?? "<labels.trigger>: <color name>". */
61
+ declare function Trigger({ asChild, children, className, onKeyDown, "aria-label": ariaLabel, ref: forwardedRef, ...rest }: ColorPresetsTriggerProps): import("react/jsx-runtime").JSX.Element;
62
+ declare namespace Trigger {
63
+ var displayName: string;
64
+ }
65
+ export type ColorPresetsContentProps = Omit<React.HTMLAttributes<HTMLDivElement>, "children" | "role"> & {
70
66
  /** Visible heading above the grid; also the list's accessible name (else `labels.list`). */
71
67
  label?: React.ReactNode;
72
68
  align?: PositionAlign;
73
69
  side?: PositionSide;
74
- className?: string;
70
+ /** The floating panel. */
71
+ ref?: React.Ref<HTMLDivElement>;
75
72
  };
76
73
  /** Floating panel (Popover overlay contract) with the swatch grid: `role="listbox"`. */
77
- declare function Content({ label, align, side, className }: ColorPresetsContentProps): import("react/jsx-runtime").JSX.Element;
74
+ declare function Content({ label, align, side, ...rest }: ColorPresetsContentProps): import("react/jsx-runtime").JSX.Element;
78
75
  declare namespace Content {
79
76
  var displayName: string;
80
77
  }
81
78
  export declare const ColorPresets: {
82
79
  Root: typeof ColorPresetsRoot;
83
- Trigger: React.ForwardRefExoticComponent<Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "value" | "children" | "disabled"> & {
84
- /**
85
- * `false` (default) — the kit square swatch button of the Root tier. `true` — `children` (one
86
- * element, e.g. `Button.Root` with `ColorPresets.Swatch`) becomes the trigger.
87
- */
88
- asChild?: boolean;
89
- children?: React.ReactElement;
90
- } & React.RefAttributes<HTMLButtonElement>>;
80
+ Trigger: typeof Trigger;
91
81
  Swatch: typeof Swatch;
92
82
  Content: typeof Content;
93
83
  };
94
- export {};
95
- //# sourceMappingURL=ColorPresets.d.ts.map
@@ -0,0 +1,40 @@
1
+ import { type FieldFrameProps, type FieldRootDomProps } from "@/internal/FieldFrame";
2
+ import type { ControlSize } from "@/internal/states";
3
+ import { type ColorPreset } from "@/internal/swatch";
4
+ export type ColorSwatchesLabels = {
5
+ /** Accessible name of the group when there is no visible `label` and no `aria-label`. */
6
+ group: string;
7
+ /** The "no color" swatch (`allowEmpty`). */
8
+ empty: string;
9
+ /** Muted marker after the label for `optional`. */
10
+ optional: string;
11
+ };
12
+ export type ColorSwatchesProps = FieldRootDomProps & Omit<FieldFrameProps, "focusRing"> & {
13
+ /** Controlled color; `null` — no color. */
14
+ value?: string | null;
15
+ defaultValue?: string | null;
16
+ onValueChange?: (value: string | null) => void;
17
+ /** Swatches in order. Default: `COLOR_PRESETS` (16). */
18
+ presets?: readonly ColorPreset[];
19
+ /**
20
+ * Tier: swatch = control height − 8 (20 · 24 · 28 · 32 · 40), gap = tier gap. Default: the
21
+ * tier of the surrounding control, else `m`.
22
+ */
23
+ size?: ControlSize;
24
+ disabled?: boolean;
25
+ invalid?: boolean;
26
+ /** Adds the "no color" swatch after the presets (value `null`). */
27
+ allowEmpty?: boolean;
28
+ /** Form field name: a hidden input submits the selected color (empty string for no color). */
29
+ name?: string;
30
+ id?: string;
31
+ "aria-label"?: string;
32
+ "aria-labelledby"?: string;
33
+ "aria-describedby"?: string;
34
+ labels?: Partial<ColorSwatchesLabels>;
35
+ };
36
+ /**
37
+ * Inline color choice: a wrapping grid of swatches, one selected (`role="radiogroup"`).
38
+ * Fits forms and dialogs where opening a palette popover would be one step too many.
39
+ */
40
+ export declare function ColorSwatches({ value: valueProp, defaultValue, onValueChange, presets, size: sizeProp, disabled, invalid, allowEmpty, name, id, className, label, required, optional, hint, error, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, labels: labelsProp, ...rest }: ColorSwatchesProps): import("react/jsx-runtime").JSX.Element;
@@ -1,112 +1,172 @@
1
1
  import * as React from "react";
2
- import { type ModalContentProps, type ModalRootProps } from "@/components/modal/Modal";
3
- import type { ControlSize, Variant } from "@/internal/states";
2
+ import type { ControlSize } from "@/internal/states";
4
3
  export type CommandMenuLabels = {
5
4
  /** Default placeholder and accessible name of `CommandMenu.Input`. */
6
5
  search: string;
7
6
  /** `CommandMenu.Empty`: nothing matches the query. */
8
7
  empty: string;
9
- /** Second line of `CommandMenu.Empty`. */
8
+ /** Second line of `CommandMenu.Empty`; `""` hides it. */
10
9
  emptyHint: string;
11
10
  };
12
- export type CommandMenuDialogProps = Pick<ModalRootProps, "open" | "defaultOpen" | "onOpenChange" | "closeOnEscape" | "closeOnOutsideClick"> & Pick<ModalContentProps, "children" | "className" | "overlayClassName" | "aria-label" | "aria-labelledby" | "aria-describedby"> & {
13
- /** Tier of the list rows and the search row: item height, text, icon. Default `m`. */
11
+ export type CommandMenuRootProps = Omit<React.HTMLAttributes<HTMLDivElement>, "children" | "defaultValue"> & {
12
+ open?: boolean;
13
+ defaultOpen?: boolean;
14
+ onOpenChange?: (open: boolean) => void;
15
+ /** The query (controlled); together with `onValueChange`. Cleared when the palette closes. */
16
+ value?: string;
17
+ /** The initial query, uncontrolled. Default `""`. */
18
+ defaultValue?: string;
19
+ /** Called with the new query (typing, and `""` when the palette closes). */
20
+ onValueChange?: (value: string) => void;
21
+ /** Escape closes the palette. Default `true`. */
22
+ closeOnEscape?: boolean;
23
+ /** A click on the scrim closes the palette. Default `true`. */
24
+ closeOnOutsideClick?: boolean;
25
+ /** Tier of the rows and the search row: item height, text, icon. */
14
26
  size?: ControlSize;
15
27
  labels?: Partial<CommandMenuLabels>;
28
+ /** Name of the dialog when there is no `CommandMenu.Title`. */
29
+ "aria-label"?: string;
30
+ "aria-labelledby"?: string;
31
+ "aria-describedby"?: string;
32
+ children: React.ReactNode;
33
+ /** The dialog panel. */
34
+ ref?: React.Ref<HTMLDivElement>;
16
35
  };
17
- declare function CommandMenuDialog({ children, overlayClassName, className, open, defaultOpen, onOpenChange, closeOnEscape, closeOnOutsideClick, size, labels: labelsProp, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, }: CommandMenuDialogProps): import("react/jsx-runtime").JSX.Element;
18
- declare function CommandMenuDialogTitle({ className, ...rest }: React.HTMLAttributes<HTMLHeadingElement>): import("react/jsx-runtime").JSX.Element;
19
- declare function CommandMenuDialogDescription({ className, ...rest }: React.HTMLAttributes<HTMLParagraphElement>): import("react/jsx-runtime").JSX.Element;
20
- export type CommandMenuInputRowProps = React.HTMLAttributes<HTMLDivElement> & {
21
- /** Слот слева; по умолчанию — иконка поиска. `null` — без иконки. */
22
- leading?: React.ReactNode;
23
- trailing?: React.ReactNode;
36
+ declare function CommandMenuRoot({ open, defaultOpen, onOpenChange, value, defaultValue, onValueChange, closeOnEscape, closeOnOutsideClick, size, labels: labelsProp, className, children, ...rest }: CommandMenuRootProps): import("react/jsx-runtime").JSX.Element;
37
+ declare namespace CommandMenuRoot {
38
+ var displayName: string;
39
+ }
40
+ export type CommandMenuTitleProps = Omit<React.HTMLAttributes<HTMLHeadingElement>, "id"> & {
41
+ ref?: React.Ref<HTMLHeadingElement>;
24
42
  };
25
- /** Search row; its height follows the Dialog `size` (taller on `l` / `xl`). */
26
- declare function CommandMenuInputRow({ leading, trailing, children, className, ...rest }: CommandMenuInputRowProps): import("react/jsx-runtime").JSX.Element;
27
- export type CommandMenuInputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, "size" | "type"> & {
28
- /** Called with the new query; native `onChange` still fires. */
29
- onValueChange?: (value: string) => void;
43
+ /** Visible heading above the search row; names the dialog. */
44
+ declare function CommandMenuTitle({ className, ...rest }: CommandMenuTitleProps): import("react/jsx-runtime").JSX.Element;
45
+ declare namespace CommandMenuTitle {
46
+ var displayName: string;
47
+ }
48
+ export type CommandMenuDescriptionProps = Omit<React.HTMLAttributes<HTMLParagraphElement>, "id"> & {
49
+ ref?: React.Ref<HTMLParagraphElement>;
30
50
  };
31
- export type CommandMenuListProps = React.HTMLAttributes<HTMLDivElement>;
32
- export type CommandMenuGroupProps = React.HTMLAttributes<HTMLDivElement> & {
33
- heading?: React.ReactNode;
51
+ /** Secondary line under the title; describes the dialog. */
52
+ declare function CommandMenuDescription({ className, ...rest }: CommandMenuDescriptionProps): import("react/jsx-runtime").JSX.Element;
53
+ declare namespace CommandMenuDescription {
54
+ var displayName: string;
55
+ }
56
+ export type CommandMenuInputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, "size" | "type" | "role" | "value" | "defaultValue"> & {
57
+ ref?: React.Ref<HTMLInputElement>;
34
58
  };
35
- declare function CommandMenuGroup({ heading, className, children, ...rest }: CommandMenuGroupProps): import("react/jsx-runtime").JSX.Element;
36
- export type CommandMenuItemProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onSelect"> & {
59
+ /**
60
+ * The search row: a search icon and the query field (the query is `CommandMenu.Root` `value`). It
61
+ * is the permanent focus of the palette, so it draws no focus ring (foundation §7); focus lands
62
+ * here on open; arrows, Home, End and Enter drive the list from it.
63
+ */
64
+ declare function CommandMenuInput({ className, onKeyDown, onChange, placeholder, "aria-label": ariaLabel, ...rest }: CommandMenuInputProps): import("react/jsx-runtime").JSX.Element;
65
+ declare namespace CommandMenuInput {
66
+ var displayName: string;
67
+ }
68
+ export type CommandMenuListProps = Omit<React.HTMLAttributes<HTMLElement>, "role" | "id"> & {
69
+ ref?: React.Ref<HTMLElement>;
70
+ };
71
+ /** The scrolling `role="listbox"` of results under the search row. */
72
+ declare function CommandMenuList({ className, ...rest }: CommandMenuListProps): import("react/jsx-runtime").JSX.Element;
73
+ declare namespace CommandMenuList {
74
+ var displayName: string;
75
+ }
76
+ export type CommandMenuGroupProps = Omit<React.HTMLAttributes<HTMLDivElement>, "role"> & {
77
+ /** Visible heading of the group; names it for screen readers. */
78
+ label?: React.ReactNode;
79
+ ref?: React.Ref<HTMLDivElement>;
80
+ };
81
+ /** A labelled section of items; hidden while none of its items match the query. */
82
+ declare function CommandMenuGroup({ className, ...rest }: CommandMenuGroupProps): import("react/jsx-runtime").JSX.Element;
83
+ declare namespace CommandMenuGroup {
84
+ var displayName: string;
85
+ }
86
+ export type CommandMenuItemProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "role" | "id" | "onSelect"> & {
37
87
  /** Text matched with `keywords`; with `""` the item shows only while the query is empty or `keywords` match. */
38
88
  value: string;
89
+ /** Extra words for the query (synonyms, English names). */
39
90
  keywords?: string;
91
+ /** Unavailable right now: shown muted with `aria-disabled`, skipped by the arrows, not runnable. */
92
+ disabled?: boolean;
93
+ /** Runs the command: a click, or Enter while the item is active. */
40
94
  onSelect?: () => void;
95
+ ref?: React.Ref<HTMLButtonElement>;
41
96
  };
42
- export type CommandMenuItemIconProps<T extends React.ElementType = "span"> = {
43
- as?: T;
44
- className?: string;
45
- } & Omit<React.ComponentPropsWithoutRef<T>, "as" | "className">;
46
- declare function CommandMenuItemIcon<T extends React.ElementType = "span">({ as, className, ...rest }: CommandMenuItemIconProps<T>): import("react/jsx-runtime").JSX.Element;
47
- export type CommandMenuTagSectionProps = React.HTMLAttributes<HTMLDivElement>;
48
- declare function CommandMenuTagSection({ className, ...rest }: CommandMenuTagSectionProps): import("react/jsx-runtime").JSX.Element;
49
- export type CommandMenuTagSectionLabelProps = React.HTMLAttributes<HTMLDivElement>;
50
- declare function CommandMenuTagSectionLabel({ className, ...rest }: CommandMenuTagSectionLabelProps): import("react/jsx-runtime").JSX.Element;
51
- export type CommandMenuTagRowProps = React.HTMLAttributes<HTMLDivElement>;
52
- declare function CommandMenuTagRow({ className, ...rest }: CommandMenuTagRowProps): import("react/jsx-runtime").JSX.Element;
53
- export type CommandMenuFooterProps = React.HTMLAttributes<HTMLDivElement>;
54
- declare function CommandMenuFooter({ className, ...rest }: CommandMenuFooterProps): import("react/jsx-runtime").JSX.Element;
55
- export type CommandMenuFooterKeyBoxProps = Omit<React.HTMLAttributes<HTMLElement>, "color"> & {
56
- /** `soft` — клавиша на мягкой подложке (по умолчанию), `ghost` — только текст. */
57
- variant?: Extract<Variant, "soft" | "ghost">;
97
+ declare function CommandMenuItem({ className, value, keywords, disabled, onSelect, onClick, onPointerMove, ref, children, ...rest }: CommandMenuItemProps): import("react/jsx-runtime").JSX.Element;
98
+ declare namespace CommandMenuItem {
99
+ var displayName: string;
100
+ }
101
+ export type CommandMenuItemIconProps = React.HTMLAttributes<HTMLSpanElement> & {
102
+ ref?: React.Ref<HTMLSpanElement>;
58
103
  };
59
- export type CommandMenuFooterHintProps = React.HTMLAttributes<HTMLSpanElement> & {
60
- /** Клавиши (строки или иконки), каждая — отдельный `FooterKeyBox`. */
61
- keys: React.ReactNode[];
62
- };
63
- /** Подсказка футера: клавиши + подпись («↑ ↓ Навигация»). */
64
- declare function CommandMenuFooterHint({ keys, children, className, ...rest }: CommandMenuFooterHintProps): import("react/jsx-runtime").JSX.Element;
65
- export type CommandMenuEmptyProps = React.HTMLAttributes<HTMLDivElement>;
66
- /**
67
- * Пустое состояние: показывается, только когда по запросу нет ни одного пункта.
68
- * Текст — `labels.empty` / `labels.emptyHint` у Dialog; `children` — действие под ним.
69
- */
70
- declare function CommandMenuEmpty({ children, className, ...rest }: CommandMenuEmptyProps): import("react/jsx-runtime").JSX.Element | null;
71
- export type CommandMenuItemShortcutProps = React.HTMLAttributes<HTMLElement>;
72
- /** Сочетание клавиш справа в пункте (приглушённый Kbd). */
73
- declare function CommandMenuItemShortcut({ className, ...rest }: CommandMenuItemShortcutProps): import("react/jsx-runtime").JSX.Element;
104
+ /** Leading glyph of an item at the tier icon size (a kit `Icon` follows it). */
105
+ declare function CommandMenuItemIcon({ className, ...rest }: CommandMenuItemIconProps): import("react/jsx-runtime").JSX.Element;
106
+ declare namespace CommandMenuItemIcon {
107
+ var displayName: string;
108
+ }
74
109
  export type CommandMenuItemTextProps = React.HTMLAttributes<HTMLSpanElement> & {
75
- /** Вторая строка (путь, описание) — caption, muted. */
110
+ /** Second line (path, details): caption, muted. */
76
111
  description?: React.ReactNode;
112
+ ref?: React.Ref<HTMLSpanElement>;
77
113
  };
78
- /** Текст пункта: заголовок с многоточием + необязательное описание. */
114
+ /** Item text: a title with an ellipsis and an optional description line. */
79
115
  declare function CommandMenuItemText({ description, children, className, ...rest }: CommandMenuItemTextProps): import("react/jsx-runtime").JSX.Element;
116
+ declare namespace CommandMenuItemText {
117
+ var displayName: string;
118
+ }
119
+ export type CommandMenuItemShortcutProps = Omit<React.HTMLAttributes<HTMLElement>, "children"> & {
120
+ children: React.ReactNode;
121
+ ref?: React.Ref<HTMLElement>;
122
+ };
123
+ /** Key hint at the end of an item (a Kbd one tier below). A hint only — not a handler. */
124
+ declare function CommandMenuItemShortcut({ className, ...rest }: CommandMenuItemShortcutProps): import("react/jsx-runtime").JSX.Element;
125
+ declare namespace CommandMenuItemShortcut {
126
+ var displayName: string;
127
+ }
128
+ export type CommandMenuEmptyProps = Omit<React.HTMLAttributes<HTMLDivElement>, "role"> & {
129
+ ref?: React.Ref<HTMLDivElement>;
130
+ };
131
+ /**
132
+ * Shown only while nothing matches the query: `labels.empty` and `labels.emptyHint`; `children`
133
+ * is an action under them.
134
+ */
135
+ declare function CommandMenuEmpty({ children, ...rest }: CommandMenuEmptyProps): import("react/jsx-runtime").JSX.Element | null;
136
+ declare namespace CommandMenuEmpty {
137
+ var displayName: string;
138
+ }
139
+ export type CommandMenuFooterProps = React.HTMLAttributes<HTMLDivElement> & {
140
+ ref?: React.Ref<HTMLDivElement>;
141
+ };
142
+ /** Bottom row of key hints, hairline above. */
143
+ declare function CommandMenuFooter({ className, ...rest }: CommandMenuFooterProps): import("react/jsx-runtime").JSX.Element;
144
+ declare namespace CommandMenuFooter {
145
+ var displayName: string;
146
+ }
147
+ export type CommandMenuFooterHintProps = React.HTMLAttributes<HTMLSpanElement> & {
148
+ /** Keys (text or icons), each in its own Kbd. */
149
+ keys: React.ReactNode[];
150
+ ref?: React.Ref<HTMLSpanElement>;
151
+ };
152
+ /** A footer hint: keys and what they do («↑ ↓ Навигация»). */
153
+ declare function CommandMenuFooterHint({ keys, children, className, ...rest }: CommandMenuFooterHintProps): import("react/jsx-runtime").JSX.Element;
154
+ declare namespace CommandMenuFooterHint {
155
+ var displayName: string;
156
+ }
80
157
  export declare const CommandMenu: {
81
- Dialog: typeof CommandMenuDialog;
82
- DialogTitle: typeof CommandMenuDialogTitle;
83
- DialogDescription: typeof CommandMenuDialogDescription;
84
- InputRow: typeof CommandMenuInputRow;
85
- Input: React.ForwardRefExoticComponent<Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "size"> & {
86
- /** Called with the new query; native `onChange` still fires. */
87
- onValueChange?: (value: string) => void;
88
- } & React.RefAttributes<HTMLInputElement>>;
89
- List: React.ForwardRefExoticComponent<CommandMenuListProps & React.RefAttributes<HTMLDivElement>>;
158
+ Root: typeof CommandMenuRoot;
159
+ Title: typeof CommandMenuTitle;
160
+ Description: typeof CommandMenuDescription;
161
+ Input: typeof CommandMenuInput;
162
+ List: typeof CommandMenuList;
90
163
  Group: typeof CommandMenuGroup;
91
- Item: React.ForwardRefExoticComponent<Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onSelect" | "type"> & {
92
- /** Text matched with `keywords`; with `""` the item shows only while the query is empty or `keywords` match. */
93
- value: string;
94
- keywords?: string;
95
- onSelect?: () => void;
96
- } & React.RefAttributes<HTMLButtonElement>>;
164
+ Item: typeof CommandMenuItem;
97
165
  ItemIcon: typeof CommandMenuItemIcon;
98
166
  ItemText: typeof CommandMenuItemText;
99
167
  ItemShortcut: typeof CommandMenuItemShortcut;
100
168
  Empty: typeof CommandMenuEmpty;
101
- TagSection: typeof CommandMenuTagSection;
102
- TagSectionLabel: typeof CommandMenuTagSectionLabel;
103
- TagRow: typeof CommandMenuTagRow;
104
169
  Footer: typeof CommandMenuFooter;
105
- FooterKeyBox: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLElement>, "color"> & {
106
- /** `soft` — клавиша на мягкой подложке (по умолчанию), `ghost` — только текст. */
107
- variant?: Extract<Variant, "soft" | "ghost">;
108
- } & React.RefAttributes<HTMLElement>>;
109
170
  FooterHint: typeof CommandMenuFooterHint;
110
171
  };
111
172
  export {};
112
- //# sourceMappingURL=CommandMenu.d.ts.map
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ export type CrossfadeProps = React.HTMLAttributes<HTMLDivElement> & {
3
+ /**
4
+ * Key of what the region shows: `"loading"`, `"error"`, `"empty"`, `"ready"`, a record id.
5
+ * A new value cross-fades the old content into the new one; the same value updates in place.
6
+ */
7
+ state: string | number;
8
+ ref?: React.Ref<HTMLDivElement>;
9
+ };
10
+ /**
11
+ * Cross-fades a region between its states (loading → data → empty → error) and glides its height,
12
+ * so the page below does not jump. Nothing moves on the first render.
13
+ */
14
+ export declare function Crossfade({ state, children, className, ref, ...rest }: CrossfadeProps): import("react/jsx-runtime").JSX.Element;