prime-ui-kit 0.15.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1105) hide show
  1. package/README.md +72 -63
  2. package/dist/chunks/{chunk-XJAVS6FH.js → chunk-4PSQ64S4.js} +3094 -1750
  3. package/dist/chunks/{chunk-THFZIHKU.js → chunk-6TPHKCUJ.js} +9392 -9225
  4. package/dist/chunks/{chunk-6TI4DSM5.js → chunk-A7OQWH6R.js} +1 -1
  5. package/dist/chunks/{chunk-2IKH55MI.js → chunk-HDBQICPW.js} +170 -138
  6. package/dist/chunks/{chunk-Q3BFRQHZ.js → chunk-U3Q2I3MY.js} +169 -10
  7. package/dist/color-picker.js +3 -3
  8. package/dist/components/accordion/Accordion.d.ts +52 -5
  9. package/dist/components/avatar/Avatar.d.ts +31 -8
  10. package/dist/components/badge/Badge.d.ts +93 -25
  11. package/dist/components/banner/Banner.d.ts +17 -10
  12. package/dist/components/breadcrumb/Breadcrumb.d.ts +18 -5
  13. package/dist/components/button/Button.d.ts +102 -43
  14. package/dist/components/button-group/ButtonGroup.d.ts +32 -8
  15. package/dist/components/card/Card.d.ts +15 -9
  16. package/dist/components/chart-frame/ChartFrame.d.ts +58 -51
  17. package/dist/components/chat/Chat.d.ts +77 -38
  18. package/dist/components/chat/ChatPinned.d.ts +20 -8
  19. package/dist/components/chat/ChatRows.d.ts +3 -0
  20. package/dist/components/chat/MessageList.d.ts +14 -19
  21. package/dist/components/chat/chatContext.d.ts +3 -3
  22. package/dist/components/chat/messageFlow.d.ts +1 -1
  23. package/dist/components/chat-list/ChatList.d.ts +88 -34
  24. package/dist/components/checkbox/Checkbox.d.ts +61 -12
  25. package/dist/components/code-block/CodeBlock.d.ts +11 -5
  26. package/dist/components/color-field/ColorField.d.ts +54 -14
  27. package/dist/components/color-picker/ColorPicker.d.ts +64 -30
  28. package/dist/components/color-picker/ColorPresets.d.ts +68 -13
  29. package/dist/components/color-swatches/ColorSwatches.d.ts +90 -18
  30. package/dist/components/command-menu/CommandMenu.d.ts +86 -27
  31. package/dist/components/composer/Composer.d.ts +82 -41
  32. package/dist/components/composer/useRecorder.d.ts +0 -2
  33. package/dist/components/confirm-dialog/ConfirmDialog.d.ts +40 -16
  34. package/dist/components/crossfade/Crossfade.d.ts +5 -8
  35. package/dist/components/data-table/ColumnsMenu.d.ts +6 -2
  36. package/dist/components/data-table/DataTable.d.ts +157 -58
  37. package/dist/components/data-table/Footer.d.ts +2 -4
  38. package/dist/components/data-table/Row.d.ts +1 -1
  39. package/dist/components/data-table/StateRows.d.ts +2 -2
  40. package/dist/components/data-table/reorder.d.ts +10 -10
  41. package/dist/components/data-table/types.d.ts +5 -0
  42. package/dist/components/data-table/useInfiniteRows.d.ts +3 -3
  43. package/dist/components/datepicker/Datepicker.d.ts +61 -12
  44. package/dist/components/datepicker/DatepickerPanel.d.ts +76 -16
  45. package/dist/components/datepicker/panelLayout.d.ts +6 -11
  46. package/dist/components/description-list/DescriptionList.d.ts +40 -11
  47. package/dist/components/digit-input/DigitInput.d.ts +50 -19
  48. package/dist/components/divider/Divider.d.ts +15 -5
  49. package/dist/components/dnd/Dnd.d.ts +152 -41
  50. package/dist/components/dnd/geometry.d.ts +0 -8
  51. package/dist/components/dnd/labels.d.ts +1 -1
  52. package/dist/components/dnd/useDropTarget.d.ts +0 -2
  53. package/dist/components/dnd/useSortableList.d.ts +6 -1
  54. package/dist/components/drawer/Drawer.d.ts +39 -18
  55. package/dist/components/dropdown/Dropdown.d.ts +90 -19
  56. package/dist/components/empty-page/EmptyPage.d.ts +14 -15
  57. package/dist/components/example-frame/ExampleFrame.d.ts +38 -8
  58. package/dist/components/field-list/FieldList.d.ts +57 -19
  59. package/dist/components/fieldset/Fieldset.d.ts +12 -7
  60. package/dist/components/file-upload/FileUpload.d.ts +119 -42
  61. package/dist/components/gallery/Gallery.d.ts +44 -16
  62. package/dist/components/gallery/layout.d.ts +4 -1
  63. package/dist/components/gantt/Gantt.d.ts +69 -34
  64. package/dist/components/gantt/GanttRow.d.ts +2 -2
  65. package/dist/components/hint/Hint.d.ts +10 -4
  66. package/dist/components/index.d.ts +19 -18
  67. package/dist/components/input/Input.d.ts +78 -25
  68. package/dist/components/kanban/Kanban.d.ts +64 -36
  69. package/dist/components/kbd/Kbd.d.ts +3 -1
  70. package/dist/components/label/Label.d.ts +33 -4
  71. package/dist/components/link-button/LinkButton.d.ts +40 -10
  72. package/dist/components/list/List.d.ts +48 -26
  73. package/dist/components/login-form/LoginForm.d.ts +66 -7
  74. package/dist/components/media-viewer/MediaViewer.d.ts +46 -18
  75. package/dist/components/media-viewer/physics.d.ts +0 -2
  76. package/dist/components/media-viewer/viewerEngine.d.ts +0 -1
  77. package/dist/components/message/Message.d.ts +27 -16
  78. package/dist/components/message/MessageCards.d.ts +49 -10
  79. package/dist/components/message/MessageFile.d.ts +19 -5
  80. package/dist/components/message/MessageParts.d.ts +44 -18
  81. package/dist/components/message/MessageReactionBar.d.ts +3 -1
  82. package/dist/components/message/MessageTyping.d.ts +10 -6
  83. package/dist/components/message/bubbleMorph.d.ts +2 -0
  84. package/dist/components/modal/Modal.d.ts +6 -6
  85. package/dist/components/native-select/NativeSelect.d.ts +22 -7
  86. package/dist/components/notification/Notification.d.ts +35 -11
  87. package/dist/components/notification/NotificationStore.d.ts +12 -3
  88. package/dist/components/page-content/PageContent.d.ts +56 -37
  89. package/dist/components/page-toolbar/PageToolbar.d.ts +7 -6
  90. package/dist/components/pagination/Pagination.d.ts +25 -6
  91. package/dist/components/popover/Popover.d.ts +54 -31
  92. package/dist/components/progress-bar/ProgressBar.d.ts +37 -12
  93. package/dist/components/progress-circle/ProgressCircle.d.ts +32 -13
  94. package/dist/components/radio/Radio.d.ts +58 -15
  95. package/dist/components/scroll-container/ScrollContainer.d.ts +28 -14
  96. package/dist/components/scroll-container/useScrollEdges.d.ts +1 -24
  97. package/dist/components/segmented-control/SegmentedControl.d.ts +73 -15
  98. package/dist/components/select/Select.d.ts +104 -30
  99. package/dist/components/select/SelectItem.d.ts +35 -8
  100. package/dist/components/select/selectContext.d.ts +7 -19
  101. package/dist/components/sheet/Sheet.d.ts +32 -15
  102. package/dist/components/skeleton/Skeleton.d.ts +9 -3
  103. package/dist/components/slider/Slider.d.ts +55 -15
  104. package/dist/components/smart-filter/SmartFilter.d.ts +39 -12
  105. package/dist/components/sparkline/Sparkline.d.ts +42 -19
  106. package/dist/components/spinner/Spinner.d.ts +11 -5
  107. package/dist/components/stepper/Stepper.d.ts +41 -19
  108. package/dist/components/switch/Switch.d.ts +37 -12
  109. package/dist/components/tabs/Tabs.d.ts +61 -18
  110. package/dist/components/tag-select/TagSelect.d.ts +74 -20
  111. package/dist/components/textarea/Textarea.d.ts +52 -25
  112. package/dist/components/thumbnail/Thumbnail.d.ts +50 -20
  113. package/dist/components/timeline/Timeline.d.ts +85 -66
  114. package/dist/components/tooltip/Tooltip.d.ts +47 -17
  115. package/dist/components/typography/Typography.d.ts +32 -6
  116. package/dist/components/video-note/VideoNote.d.ts +7 -1
  117. package/dist/{internal → components/visually-hidden}/VisuallyHidden.d.ts +5 -5
  118. package/dist/components/voice-player/VoicePlayer.d.ts +16 -3
  119. package/dist/hooks/breakpoints.d.ts +10 -0
  120. package/dist/hooks/floatingPosition.d.ts +42 -0
  121. package/dist/hooks/useDraft.d.ts +12 -0
  122. package/dist/hooks/useEdgeOverflow.d.ts +5 -3
  123. package/dist/hooks/useElementSize.d.ts +31 -0
  124. package/dist/hooks/useEnterConfirm.d.ts +2 -1
  125. package/dist/hooks/useImageStatus.d.ts +12 -5
  126. package/dist/hooks/useLoadMore.d.ts +28 -0
  127. package/dist/hooks/useMediaQuery.d.ts +1 -3
  128. package/dist/hooks/useMergedRefs.d.ts +10 -4
  129. package/dist/hooks/useModalLayer.d.ts +13 -7
  130. package/dist/hooks/usePosition.d.ts +4 -42
  131. package/dist/hooks/usePresence.d.ts +4 -7
  132. package/dist/hooks/useScrollRegion.d.ts +28 -0
  133. package/dist/hooks/useStableValue.d.ts +6 -0
  134. package/dist/hooks/useSwipeDismiss.d.ts +38 -17
  135. package/dist/hooks/useVirtualRows.d.ts +9 -3
  136. package/dist/icon-set.js +2 -2
  137. package/dist/icons/Icon.d.ts +1 -1
  138. package/dist/icons/glyph.d.ts +9 -2
  139. package/dist/index.css +1 -1
  140. package/dist/index.js +13 -3
  141. package/dist/internal/AnchorRectContext.d.ts +2 -1
  142. package/dist/internal/ChartTooltip.d.ts +1 -1
  143. package/dist/internal/CheckMark.d.ts +2 -2
  144. package/dist/internal/ChoiceField.d.ts +29 -10
  145. package/dist/internal/ControlSizeContext.d.ts +16 -0
  146. package/dist/internal/Disclosure.d.ts +38 -9
  147. package/dist/internal/FieldAction.d.ts +20 -12
  148. package/dist/internal/FieldCommit.d.ts +8 -11
  149. package/dist/internal/FieldFrame.d.ts +100 -21
  150. package/dist/internal/MenuGroup.d.ts +3 -1
  151. package/dist/internal/MorphText.d.ts +2 -1
  152. package/dist/internal/ProgressLegend.d.ts +3 -2
  153. package/dist/internal/RegionSwap.d.ts +41 -0
  154. package/dist/internal/RollingNumber.d.ts +10 -1
  155. package/dist/internal/RowAction.d.ts +26 -0
  156. package/dist/internal/SwitcherScroller.d.ts +11 -0
  157. package/dist/internal/attachmentTile.d.ts +1 -1
  158. package/dist/internal/audio.d.ts +13 -0
  159. package/dist/{components/badge/tier.d.ts → internal/chipTier.d.ts} +7 -5
  160. package/dist/internal/context.d.ts +10 -1
  161. package/dist/internal/controlValue.d.ts +7 -0
  162. package/dist/internal/edgeAutoScroll.d.ts +43 -25
  163. package/dist/internal/fieldCell.d.ts +4 -3
  164. package/dist/internal/fieldClasses.d.ts +15 -2
  165. package/dist/internal/fileSize.d.ts +5 -1
  166. package/dist/internal/formatClock.d.ts +2 -0
  167. package/dist/internal/formatNumber.d.ts +6 -0
  168. package/dist/internal/glyphSwap.d.ts +5 -9
  169. package/dist/internal/hasContent.d.ts +6 -0
  170. package/dist/internal/highlightTsx.d.ts +12 -0
  171. package/dist/internal/iconBox.d.ts +6 -0
  172. package/dist/internal/iconLayout.d.ts +2 -1
  173. package/dist/internal/imageSlot.d.ts +6 -1
  174. package/dist/internal/interactiveElement.d.ts +41 -0
  175. package/dist/internal/labels.d.ts +6 -0
  176. package/dist/internal/leaveInPlace.d.ts +6 -5
  177. package/dist/internal/listPresence.d.ts +32 -0
  178. package/dist/internal/listbox.d.ts +71 -31
  179. package/dist/internal/longPress.d.ts +42 -0
  180. package/dist/internal/mediaDisk.d.ts +7 -4
  181. package/dist/internal/mediaPlayer.d.ts +91 -27
  182. package/dist/internal/mediaSession.d.ts +0 -6
  183. package/dist/internal/messageList.d.ts +4 -3
  184. package/dist/internal/motionTiming.d.ts +34 -0
  185. package/dist/internal/namedRole.d.ts +13 -0
  186. package/dist/internal/nodeText.d.ts +6 -0
  187. package/dist/{components/modal → internal/overlay}/DialogGuard.d.ts +3 -5
  188. package/dist/{components/modal → internal/overlay}/DialogParts.d.ts +86 -89
  189. package/dist/internal/overlay/FloatingPanel.d.ts +27 -5
  190. package/dist/internal/overlay/ModalDialog.d.ts +59 -0
  191. package/dist/internal/overlay/focus.d.ts +29 -5
  192. package/dist/internal/overlay/layerStack.d.ts +8 -5
  193. package/dist/internal/overlay/useAnchorName.d.ts +14 -0
  194. package/dist/internal/overlay/useContainScroll.d.ts +7 -0
  195. package/dist/internal/overlay/useFloatingLayer.d.ts +43 -14
  196. package/dist/internal/overlay/useOpenState.d.ts +22 -0
  197. package/dist/internal/partPresence.d.ts +31 -0
  198. package/dist/internal/parts.d.ts +39 -0
  199. package/dist/internal/progressSegments.d.ts +52 -12
  200. package/dist/internal/richText.d.ts +6 -34
  201. package/dist/internal/ring.d.ts +18 -8
  202. package/dist/internal/rovingFocus.d.ts +10 -5
  203. package/dist/{components/data-table/rowEvents.d.ts → internal/rowLink.d.ts} +0 -5
  204. package/dist/internal/scrollAncestors.d.ts +14 -0
  205. package/dist/internal/selectionIndicator.d.ts +27 -0
  206. package/dist/internal/slot.d.ts +53 -5
  207. package/dist/internal/states.d.ts +61 -0
  208. package/dist/internal/sticky.d.ts +5 -1
  209. package/dist/internal/swallowNextClick.d.ts +9 -0
  210. package/dist/internal/swatch.d.ts +59 -15
  211. package/dist/internal/textFormatting.d.ts +2 -1
  212. package/dist/internal/textFormattingToolbar.d.ts +3 -2
  213. package/dist/internal/tokenDefaults.d.ts +21 -0
  214. package/dist/internal/touchTarget.d.ts +5 -0
  215. package/dist/internal/transcript.d.ts +19 -18
  216. package/dist/internal/transfer.d.ts +22 -8
  217. package/dist/internal/transferDisk.d.ts +2 -3
  218. package/dist/internal/useFlipList.d.ts +44 -0
  219. package/dist/internal/useNearView.d.ts +4 -3
  220. package/dist/internal/usePendingChanges.d.ts +23 -0
  221. package/dist/internal/useRangeSelection.d.ts +2 -1
  222. package/dist/layout/app-header/AppHeader.d.ts +29 -20
  223. package/dist/layout/app-shell/AppShell.d.ts +72 -8
  224. package/dist/layout/bottom-nav/BottomNav.d.ts +58 -22
  225. package/dist/layout/index.d.ts +2 -2
  226. package/dist/layout/sidebar/Sidebar.d.ts +232 -101
  227. package/dist/skill/SKILL.md +10 -10
  228. package/dist/skill/anti-slop.md +105 -24
  229. package/dist/skill/api-contract.md +115 -35
  230. package/dist/skill/cheatsheet.md +37 -37
  231. package/dist/skill/checklist.md +57 -89
  232. package/dist/skill/choosing.md +23 -25
  233. package/dist/skill/components.md +50 -48
  234. package/dist/skill/composition.md +68 -58
  235. package/dist/skill/foundations.md +31 -24
  236. package/dist/skill/layouts.md +81 -83
  237. package/dist/skill/motion.md +26 -31
  238. package/dist/skill/reference/components/accordion/COMPONENT.md +16 -9
  239. package/dist/skill/reference/components/accordion/examples/overview.tsx +2 -2
  240. package/dist/skill/reference/components/accordion/examples/sizes.tsx +6 -8
  241. package/dist/skill/reference/components/accordion/examples/states.tsx +27 -24
  242. package/dist/skill/reference/components/accordion/examples/variants.tsx +6 -8
  243. package/dist/skill/reference/components/accordion/examples/with-icon.tsx +22 -19
  244. package/dist/skill/reference/components/avatar/COMPONENT.md +23 -16
  245. package/dist/skill/reference/components/avatar/examples/examples.module.css +1 -4
  246. package/dist/skill/reference/components/avatar/examples/overview.tsx +3 -3
  247. package/dist/skill/reference/components/avatar/examples/presence.tsx +4 -4
  248. package/dist/skill/reference/components/avatar/examples/src-from-state.tsx +3 -3
  249. package/dist/skill/reference/components/avatar/examples/states.tsx +4 -4
  250. package/dist/skill/reference/components/avatar/examples/team-group.tsx +2 -2
  251. package/dist/skill/reference/components/badge/COMPONENT.md +66 -34
  252. package/dist/skill/reference/components/badge/examples/controlled.tsx +32 -0
  253. package/dist/skill/reference/components/badge/examples/examples.module.css +2 -2
  254. package/dist/skill/reference/components/badge/examples/filter-values.tsx +4 -6
  255. package/dist/skill/reference/components/badge/examples/in-controls.tsx +1 -1
  256. package/dist/skill/reference/components/badge/examples/overview.tsx +6 -5
  257. package/dist/skill/reference/components/badge/examples/square.tsx +21 -0
  258. package/dist/skill/reference/components/badge/examples/states.tsx +4 -4
  259. package/dist/skill/reference/components/badge/examples/with-icon.tsx +10 -1
  260. package/dist/skill/reference/components/banner/COMPONENT.md +9 -5
  261. package/dist/skill/reference/components/banner/examples/dismissible.tsx +3 -19
  262. package/dist/skill/reference/components/banner/examples/overview.tsx +1 -1
  263. package/dist/skill/reference/components/breadcrumb/COMPONENT.md +17 -11
  264. package/dist/skill/reference/components/breadcrumb/examples/examples.module.css +1 -1
  265. package/dist/skill/reference/components/breadcrumb/examples/overflow.tsx +1 -1
  266. package/dist/skill/reference/components/breadcrumb/examples/sizes.tsx +6 -8
  267. package/dist/skill/reference/components/breadcrumb/examples/with-icon.tsx +15 -8
  268. package/dist/skill/reference/components/button/COMPONENT.md +66 -30
  269. package/dist/skill/reference/components/button/examples/align.tsx +25 -0
  270. package/dist/skill/reference/components/button/examples/controlled.tsx +21 -0
  271. package/dist/skill/reference/components/button/examples/density.tsx +45 -0
  272. package/dist/skill/reference/components/button/examples/examples.module.css +14 -25
  273. package/dist/skill/reference/components/button/examples/label-morph.tsx +1 -1
  274. package/dist/skill/reference/components/button/examples/on-colored-host.tsx +19 -19
  275. package/dist/skill/reference/components/button/examples/over-media.tsx +7 -1
  276. package/dist/skill/reference/components/button/examples/toggle.tsx +2 -10
  277. package/dist/skill/reference/components/button-group/COMPONENT.md +21 -15
  278. package/dist/skill/reference/components/button-group/examples/controlled.tsx +1 -1
  279. package/dist/skill/reference/components/card/COMPONENT.md +16 -5
  280. package/dist/skill/reference/components/card/examples/content-templates.tsx +8 -2
  281. package/dist/skill/reference/components/card/examples/examples.module.css +4 -16
  282. package/dist/skill/reference/components/card/examples/overview.tsx +11 -11
  283. package/dist/skill/reference/components/card/examples/screen.tsx +9 -8
  284. package/dist/skill/reference/components/card/examples/variants.tsx +74 -47
  285. package/dist/skill/reference/components/chart-frame/COMPONENT.md +24 -28
  286. package/dist/skill/reference/components/chart-frame/examples/controlled.tsx +9 -7
  287. package/dist/skill/reference/components/chart-frame/examples/fill-height.tsx +4 -6
  288. package/dist/skill/reference/components/chart-frame/examples/narrow.tsx +24 -5
  289. package/dist/skill/reference/components/chart-frame/examples/overview.tsx +5 -2
  290. package/dist/skill/reference/components/chart-frame/examples/states.tsx +72 -64
  291. package/dist/skill/reference/components/chart-frame/examples/tooltip.tsx +27 -26
  292. package/dist/skill/reference/components/chat/COMPONENT.md +35 -22
  293. package/dist/skill/reference/components/chat/examples/group-chat.tsx +2 -2
  294. package/dist/skill/reference/components/chat/examples/overview.tsx +119 -130
  295. package/dist/skill/reference/components/chat/examples/reactions.tsx +18 -23
  296. package/dist/skill/reference/components/chat/examples/screen.tsx +108 -131
  297. package/dist/skill/reference/components/chat/examples/states.tsx +23 -22
  298. package/dist/skill/reference/components/chat-list/COMPONENT.md +10 -5
  299. package/dist/skill/reference/components/chat-list/examples/examples.module.css +0 -8
  300. package/dist/skill/reference/components/chat-list/examples/live.tsx +29 -22
  301. package/dist/skill/reference/components/chat-list/examples/sizes.tsx +6 -8
  302. package/dist/skill/reference/components/chat-list/examples/states.tsx +42 -38
  303. package/dist/skill/reference/components/checkbox/COMPONENT.md +27 -14
  304. package/dist/skill/reference/components/checkbox/examples/controlled.tsx +18 -16
  305. package/dist/skill/reference/components/checkbox/examples/examples.module.css +14 -56
  306. package/dist/skill/reference/components/checkbox/examples/in-form.tsx +16 -16
  307. package/dist/skill/reference/components/checkbox/examples/indicator.tsx +19 -64
  308. package/dist/skill/reference/components/checkbox/examples/overview.tsx +1 -1
  309. package/dist/skill/reference/components/checkbox/examples/states.tsx +1 -1
  310. package/dist/skill/reference/components/checkbox/examples/without-label.tsx +1 -1
  311. package/dist/skill/reference/components/code-block/COMPONENT.md +16 -12
  312. package/dist/skill/reference/components/code-block/examples/examples.module.css +5 -2
  313. package/dist/skill/reference/components/code-block/examples/narrow.tsx +1 -1
  314. package/dist/skill/reference/components/color-field/COMPONENT.md +15 -9
  315. package/dist/skill/reference/components/color-field/examples/examples.module.css +4 -5
  316. package/dist/skill/reference/components/color-field/examples/in-form.tsx +15 -13
  317. package/dist/skill/reference/components/color-field/examples/sizes.tsx +5 -1
  318. package/dist/skill/reference/components/color-field/examples/states.tsx +15 -3
  319. package/dist/skill/reference/components/color-picker/COMPONENT.md +55 -19
  320. package/dist/skill/reference/components/color-picker/examples/controlled.tsx +16 -5
  321. package/dist/skill/reference/components/color-picker/examples/examples.module.css +6 -7
  322. package/dist/skill/reference/components/color-picker/examples/in-form.tsx +24 -22
  323. package/dist/skill/reference/components/color-picker/examples/overview.tsx +1 -1
  324. package/dist/skill/reference/components/color-picker/examples/panel.tsx +1 -1
  325. package/dist/skill/reference/components/color-picker/examples/sizes.tsx +9 -11
  326. package/dist/skill/reference/components/color-picker/examples/states.tsx +28 -23
  327. package/dist/skill/reference/components/color-swatches/COMPONENT.md +22 -8
  328. package/dist/skill/reference/components/color-swatches/examples/examples.module.css +3 -4
  329. package/dist/skill/reference/components/color-swatches/examples/in-form.tsx +19 -17
  330. package/dist/skill/reference/components/color-swatches/examples/palette.tsx +24 -0
  331. package/dist/skill/reference/components/color-swatches/examples/wrapping.tsx +17 -2
  332. package/dist/skill/reference/components/command-menu/COMPONENT.md +60 -20
  333. package/dist/skill/reference/components/command-menu/examples/sizes.tsx +20 -15
  334. package/dist/skill/reference/components/command-menu/examples/states.tsx +46 -24
  335. package/dist/skill/reference/components/composer/COMPONENT.md +42 -24
  336. package/dist/skill/reference/components/composer/examples/examples.module.css +0 -9
  337. package/dist/skill/reference/components/composer/examples/narrow.tsx +1 -1
  338. package/dist/skill/reference/components/composer/examples/reply-edit.tsx +3 -3
  339. package/dist/skill/reference/components/composer/examples/sizes.tsx +3 -5
  340. package/dist/skill/reference/components/composer/examples/states.tsx +4 -6
  341. package/dist/skill/reference/components/confirm-dialog/COMPONENT.md +26 -13
  342. package/dist/skill/reference/components/confirm-dialog/examples/dismiss.tsx +27 -0
  343. package/dist/skill/reference/components/confirm-dialog/examples/failure.tsx +9 -16
  344. package/dist/skill/reference/components/crossfade/COMPONENT.md +11 -5
  345. package/dist/skill/reference/components/crossfade/examples/examples.module.css +1 -40
  346. package/dist/skill/reference/components/crossfade/examples/fill.tsx +16 -19
  347. package/dist/skill/reference/components/crossfade/examples/overview.tsx +14 -16
  348. package/dist/skill/reference/components/crossfade/examples/record-switch.tsx +6 -11
  349. package/dist/skill/reference/components/crossfade/examples/screen.module.css +1 -24
  350. package/dist/skill/reference/components/crossfade/examples/screen.tsx +14 -25
  351. package/dist/skill/reference/components/data-table/COMPONENT.md +31 -21
  352. package/dist/skill/reference/components/data-table/examples/controlled.tsx +14 -2
  353. package/dist/skill/reference/components/data-table/examples/examples.module.css +1 -9
  354. package/dist/skill/reference/components/data-table/examples/narrow.tsx +5 -1
  355. package/dist/skill/reference/components/data-table/examples/row-link.tsx +2 -1
  356. package/dist/skill/reference/components/data-table/examples/screen.module.css +2 -2
  357. package/dist/skill/reference/components/data-table/examples/screen.tsx +11 -10
  358. package/dist/skill/reference/components/data-table/examples/sizes.tsx +17 -17
  359. package/dist/skill/reference/components/data-table/examples/states.tsx +37 -29
  360. package/dist/skill/reference/components/datepicker/COMPONENT.md +53 -22
  361. package/dist/skill/reference/components/datepicker/examples/dismiss.tsx +15 -0
  362. package/dist/skill/reference/components/datepicker/examples/examples.module.css +3 -2
  363. package/dist/skill/reference/components/datepicker/examples/in-form.tsx +33 -25
  364. package/dist/skill/reference/components/datepicker/examples/sizes.tsx +2 -2
  365. package/dist/skill/reference/components/datepicker/examples/states.tsx +2 -2
  366. package/dist/skill/reference/components/datepicker/examples/validation.tsx +3 -3
  367. package/dist/skill/reference/components/description-list/COMPONENT.md +24 -9
  368. package/dist/skill/reference/components/description-list/examples/examples.module.css +4 -24
  369. package/dist/skill/reference/components/description-list/examples/narrow.tsx +1 -1
  370. package/dist/skill/reference/components/description-list/examples/screen.module.css +0 -18
  371. package/dist/skill/reference/components/description-list/examples/screen.tsx +19 -27
  372. package/dist/skill/reference/components/description-list/examples/sizes.tsx +2 -4
  373. package/dist/skill/reference/components/description-list/examples/structure.tsx +6 -7
  374. package/dist/skill/reference/components/description-list/examples/totals.tsx +40 -0
  375. package/dist/skill/reference/components/digit-input/COMPONENT.md +12 -6
  376. package/dist/skill/reference/components/digit-input/examples/examples.module.css +2 -2
  377. package/dist/skill/reference/components/digit-input/examples/in-form.tsx +1 -1
  378. package/dist/skill/reference/components/digit-input/examples/sizes.tsx +5 -3
  379. package/dist/skill/reference/components/digit-input/examples/states.tsx +14 -6
  380. package/dist/skill/reference/components/divider/COMPONENT.md +26 -12
  381. package/dist/skill/reference/components/divider/examples/align.tsx +2 -4
  382. package/dist/skill/reference/components/divider/examples/examples.module.css +13 -17
  383. package/dist/skill/reference/components/divider/examples/or-separator.tsx +3 -5
  384. package/dist/skill/reference/components/divider/examples/overview.tsx +18 -16
  385. package/dist/skill/reference/components/divider/examples/vertical.tsx +5 -1
  386. package/dist/skill/reference/components/divider/examples/with-icon.tsx +1 -1
  387. package/dist/skill/reference/components/dnd/COMPONENT.md +52 -34
  388. package/dist/skill/reference/components/dnd/examples/drop-zones.tsx +1 -1
  389. package/dist/skill/reference/components/dnd/examples/examples.module.css +4 -6
  390. package/dist/skill/reference/components/dnd/examples/states.tsx +41 -35
  391. package/dist/skill/reference/components/drawer/COMPONENT.md +37 -14
  392. package/dist/skill/reference/components/drawer/examples/guard.tsx +1 -3
  393. package/dist/skill/reference/components/drawer/examples/header-actions.tsx +1 -1
  394. package/dist/skill/reference/components/drawer/examples/in-form.tsx +31 -31
  395. package/dist/skill/reference/components/drawer/examples/placement.tsx +31 -26
  396. package/dist/skill/reference/components/drawer/examples/sizes.tsx +32 -27
  397. package/dist/skill/reference/components/dropdown/COMPONENT.md +58 -23
  398. package/dist/skill/reference/components/dropdown/examples/context-menu.tsx +75 -0
  399. package/dist/skill/reference/components/dropdown/examples/examples.module.css +1 -1
  400. package/dist/skill/reference/components/dropdown/examples/sizes.tsx +39 -34
  401. package/dist/skill/reference/components/dropdown/examples/states.tsx +37 -29
  402. package/dist/skill/reference/components/empty-page/COMPONENT.md +20 -9
  403. package/dist/skill/reference/components/empty-page/examples/compact.tsx +28 -18
  404. package/dist/skill/reference/components/empty-page/examples/examples.module.css +0 -43
  405. package/dist/skill/reference/components/empty-page/examples/narrow.tsx +3 -3
  406. package/dist/skill/reference/components/empty-page/examples/region-error.tsx +6 -11
  407. package/dist/skill/reference/components/empty-page/examples/sizes.tsx +13 -13
  408. package/dist/skill/reference/components/empty-page/examples/variants.tsx +34 -30
  409. package/dist/skill/reference/components/example-frame/COMPONENT.md +21 -9
  410. package/dist/skill/reference/components/example-frame/examples/controlled.tsx +3 -3
  411. package/dist/skill/reference/components/field-list/COMPONENT.md +14 -8
  412. package/dist/skill/reference/components/field-list/examples/sizes.tsx +32 -26
  413. package/dist/skill/reference/components/field-list/examples/states.tsx +37 -31
  414. package/dist/skill/reference/components/fieldset/COMPONENT.md +10 -5
  415. package/dist/skill/reference/components/fieldset/examples/examples.module.css +1 -1
  416. package/dist/skill/reference/components/file-upload/COMPONENT.md +67 -29
  417. package/dist/skill/reference/components/file-upload/examples/avatar-upload.tsx +5 -5
  418. package/dist/skill/reference/components/file-upload/examples/custom-body.tsx +12 -7
  419. package/dist/skill/reference/components/file-upload/examples/examples.module.css +4 -4
  420. package/dist/skill/reference/components/file-upload/examples/narrow.tsx +1 -1
  421. package/dist/skill/reference/components/file-upload/examples/row-parts.tsx +4 -4
  422. package/dist/skill/reference/components/file-upload/examples/screen.module.css +2 -2
  423. package/dist/skill/reference/components/file-upload/examples/screen.tsx +6 -4
  424. package/dist/skill/reference/components/file-upload/examples/sizes.tsx +1 -3
  425. package/dist/skill/reference/components/file-upload/examples/states.tsx +1 -3
  426. package/dist/skill/reference/components/file-upload/examples/variants.tsx +13 -7
  427. package/dist/skill/reference/components/gallery/COMPONENT.md +16 -7
  428. package/dist/skill/reference/components/gallery/examples/album-sizes.tsx +52 -0
  429. package/dist/skill/reference/components/gallery/examples/controlled.tsx +40 -0
  430. package/dist/skill/reference/components/gallery/examples/examples.module.css +1 -1
  431. package/dist/skill/reference/components/gallery/examples/overview.tsx +15 -43
  432. package/dist/skill/reference/components/gallery/examples/transfer.tsx +22 -13
  433. package/dist/skill/reference/components/gantt/COMPONENT.md +21 -15
  434. package/dist/skill/reference/components/gantt/examples/examples.module.css +0 -16
  435. package/dist/skill/reference/components/gantt/examples/occupancy.tsx +2 -2
  436. package/dist/skill/reference/components/gantt/examples/screen.tsx +2 -2
  437. package/dist/skill/reference/components/gantt/examples/sizes.tsx +16 -16
  438. package/dist/skill/reference/components/gantt/examples/states.tsx +34 -30
  439. package/dist/skill/reference/components/gantt/examples/variants.tsx +27 -25
  440. package/dist/skill/reference/components/hint/COMPONENT.md +24 -14
  441. package/dist/skill/reference/components/hint/examples/examples.module.css +1 -1
  442. package/dist/skill/reference/components/hint/examples/hint-or-error.tsx +2 -2
  443. package/dist/skill/reference/components/hint/examples/overview.tsx +9 -10
  444. package/dist/skill/reference/components/hint/examples/sizes.tsx +1 -1
  445. package/dist/skill/reference/components/input/COMPONENT.md +10 -6
  446. package/dist/skill/reference/components/input/examples/affixes.tsx +2 -2
  447. package/dist/skill/reference/components/input/examples/examples.module.css +1 -1
  448. package/dist/skill/reference/components/input/examples/sizes.tsx +9 -5
  449. package/dist/skill/reference/components/input/examples/states.tsx +39 -23
  450. package/dist/skill/reference/components/input/examples/with-icon.tsx +24 -16
  451. package/dist/skill/reference/components/kanban/COMPONENT.md +30 -24
  452. package/dist/skill/reference/components/kanban/examples/columns.tsx +14 -19
  453. package/dist/skill/reference/components/kanban/examples/item-link.tsx +2 -2
  454. package/dist/skill/reference/components/kanban/examples/limits.tsx +1 -1
  455. package/dist/skill/reference/components/kanban/examples/narrow.tsx +1 -1
  456. package/dist/skill/reference/components/kanban/examples/screen.module.css +1 -3
  457. package/dist/skill/reference/components/kanban/examples/screen.tsx +6 -4
  458. package/dist/skill/reference/components/kanban/examples/states.tsx +37 -58
  459. package/dist/skill/reference/components/kanban/examples/variants.tsx +0 -3
  460. package/dist/skill/reference/components/kbd/COMPONENT.md +10 -6
  461. package/dist/skill/reference/components/kbd/examples/examples.module.css +1 -20
  462. package/dist/skill/reference/components/kbd/examples/in-controls.tsx +2 -2
  463. package/dist/skill/reference/components/kbd/examples/shortcut-list.tsx +14 -26
  464. package/dist/skill/reference/components/label/COMPONENT.md +26 -11
  465. package/dist/skill/reference/components/label/examples/examples.module.css +3 -11
  466. package/dist/skill/reference/components/label/examples/overview.tsx +5 -9
  467. package/dist/skill/reference/components/label/examples/structure.tsx +2 -2
  468. package/dist/skill/reference/components/link-button/COMPONENT.md +33 -20
  469. package/dist/skill/reference/components/link-button/examples/as-child.tsx +1 -1
  470. package/dist/skill/reference/components/link-button/examples/external-link.tsx +1 -1
  471. package/dist/skill/reference/components/link-button/examples/overview.tsx +4 -2
  472. package/dist/skill/reference/components/link-button/examples/variants.tsx +2 -2
  473. package/dist/skill/reference/components/list/COMPONENT.md +24 -16
  474. package/dist/skill/reference/components/list/examples/examples.module.css +0 -8
  475. package/dist/skill/reference/components/list/examples/overflow.tsx +1 -1
  476. package/dist/skill/reference/components/list/examples/overview.tsx +31 -30
  477. package/dist/skill/reference/components/list/examples/sizes.tsx +23 -23
  478. package/dist/skill/reference/components/list/examples/states.tsx +38 -21
  479. package/dist/skill/reference/components/list/examples/with-icon.tsx +16 -14
  480. package/dist/skill/reference/components/login-form/COMPONENT.md +69 -16
  481. package/dist/skill/reference/components/login-form/examples/narrow.tsx +1 -1
  482. package/dist/skill/reference/components/login-form/examples/register.tsx +1 -1
  483. package/dist/skill/reference/components/media-viewer/COMPONENT.md +12 -8
  484. package/dist/skill/reference/components/media-viewer/examples/examples.module.css +2 -2
  485. package/dist/skill/reference/components/media-viewer/examples/video.tsx +1 -1
  486. package/dist/skill/reference/components/message/COMPONENT.md +102 -46
  487. package/dist/skill/reference/components/message/examples/typing.tsx +5 -5
  488. package/dist/skill/reference/components/modal/COMPONENT.md +71 -37
  489. package/dist/skill/reference/components/modal/examples/dismiss.tsx +35 -27
  490. package/dist/skill/reference/components/modal/examples/enter-key.tsx +22 -25
  491. package/dist/skill/reference/components/modal/examples/examples.module.css +0 -7
  492. package/dist/skill/reference/components/modal/examples/guard.tsx +2 -4
  493. package/dist/skill/reference/components/modal/examples/in-form.tsx +28 -28
  494. package/dist/skill/reference/components/modal/examples/long-content.tsx +6 -4
  495. package/dist/skill/reference/components/modal/examples/sizes.tsx +36 -31
  496. package/dist/skill/reference/components/modal/examples/structure.tsx +1 -1
  497. package/dist/skill/reference/components/native-select/COMPONENT.md +7 -3
  498. package/dist/skill/reference/components/native-select/examples/examples.module.css +3 -3
  499. package/dist/skill/reference/components/native-select/examples/in-form.tsx +28 -29
  500. package/dist/skill/reference/components/native-select/examples/sizes.tsx +2 -2
  501. package/dist/skill/reference/components/native-select/examples/states.tsx +2 -2
  502. package/dist/skill/reference/components/notification/COMPONENT.md +36 -31
  503. package/dist/skill/reference/components/notification/examples/examples.module.css +1 -2
  504. package/dist/skill/reference/components/notification/examples/in-form.tsx +28 -20
  505. package/dist/skill/reference/components/notification/examples/sizes.tsx +16 -12
  506. package/dist/skill/reference/components/notification/examples/undo.tsx +7 -15
  507. package/dist/skill/reference/components/page-content/COMPONENT.md +21 -29
  508. package/dist/skill/reference/components/page-content/examples/examples.module.css +3 -16
  509. package/dist/skill/reference/components/page-content/examples/grid.tsx +3 -1
  510. package/dist/skill/reference/components/page-content/examples/list-detail.tsx +55 -49
  511. package/dist/skill/reference/components/page-content/examples/narrow.tsx +1 -1
  512. package/dist/skill/reference/components/page-content/examples/overview.tsx +2 -2
  513. package/dist/skill/reference/components/page-content/examples/variants.tsx +7 -7
  514. package/dist/skill/reference/components/page-toolbar/COMPONENT.md +10 -6
  515. package/dist/skill/reference/components/page-toolbar/examples/overview.tsx +1 -1
  516. package/dist/skill/reference/components/page-toolbar/examples/save-changes.tsx +25 -22
  517. package/dist/skill/reference/components/pagination/COMPONENT.md +20 -17
  518. package/dist/skill/reference/components/pagination/examples/narrow.tsx +5 -5
  519. package/dist/skill/reference/components/popover/COMPONENT.md +43 -20
  520. package/dist/skill/reference/components/popover/examples/controlled-open.tsx +6 -4
  521. package/dist/skill/reference/components/popover/examples/dismiss.tsx +37 -28
  522. package/dist/skill/reference/components/popover/examples/examples.module.css +2 -2
  523. package/dist/skill/reference/components/popover/examples/sizes.tsx +32 -27
  524. package/dist/skill/reference/components/popover/examples/width.tsx +45 -0
  525. package/dist/skill/reference/components/progress-bar/COMPONENT.md +21 -29
  526. package/dist/skill/reference/components/progress-bar/examples/examples.module.css +1 -1
  527. package/dist/skill/reference/components/progress-circle/COMPONENT.md +21 -29
  528. package/dist/skill/reference/components/progress-circle/examples/examples.module.css +1 -1
  529. package/dist/skill/reference/components/progress-circle/examples/on-color.tsx +16 -0
  530. package/dist/skill/reference/components/progress-circle/examples/variants.tsx +1 -0
  531. package/dist/skill/reference/components/radio/COMPONENT.md +13 -4
  532. package/dist/skill/reference/components/radio/examples/examples.module.css +1 -1
  533. package/dist/skill/reference/components/scroll-container/COMPONENT.md +18 -12
  534. package/dist/skill/reference/components/scroll-container/examples/auto-scroll.tsx +8 -4
  535. package/dist/skill/reference/components/scroll-container/examples/edges.tsx +4 -4
  536. package/dist/skill/reference/components/scroll-container/examples/examples.module.css +7 -51
  537. package/dist/skill/reference/components/scroll-container/examples/load-more.tsx +4 -4
  538. package/dist/skill/reference/components/scroll-container/examples/lock.tsx +4 -4
  539. package/dist/skill/reference/components/scroll-container/examples/log.tsx +97 -0
  540. package/dist/skill/reference/components/scroll-container/examples/overscroll.tsx +4 -4
  541. package/dist/skill/reference/components/scroll-container/examples/overview.tsx +5 -5
  542. package/dist/skill/reference/components/scroll-container/examples/scrollbar.tsx +4 -4
  543. package/dist/skill/reference/components/scroll-container/examples/snap.tsx +2 -2
  544. package/dist/skill/reference/components/scroll-container/examples/variants.tsx +1 -0
  545. package/dist/skill/reference/components/segmented-control/COMPONENT.md +24 -12
  546. package/dist/skill/reference/components/segmented-control/examples/controlled.tsx +2 -4
  547. package/dist/skill/reference/components/segmented-control/examples/examples.module.css +0 -8
  548. package/dist/skill/reference/components/segmented-control/examples/scroll.tsx +1 -1
  549. package/dist/skill/reference/components/select/COMPONENT.md +33 -9
  550. package/dist/skill/reference/components/select/examples/dismiss.tsx +26 -0
  551. package/dist/skill/reference/components/select/examples/examples.module.css +1 -1
  552. package/dist/skill/reference/components/select/examples/server-search.tsx +6 -2
  553. package/dist/skill/reference/components/select/examples/sizes.tsx +2 -2
  554. package/dist/skill/reference/components/select/examples/states.tsx +2 -2
  555. package/dist/skill/reference/components/select/examples/with-icon.tsx +20 -18
  556. package/dist/skill/reference/components/sheet/COMPONENT.md +44 -21
  557. package/dist/skill/reference/components/sheet/examples/header-actions.tsx +23 -4
  558. package/dist/skill/reference/components/sheet/examples/overview.tsx +25 -10
  559. package/dist/skill/reference/components/skeleton/COMPONENT.md +8 -4
  560. package/dist/skill/reference/components/skeleton/examples/examples.module.css +1 -13
  561. package/dist/skill/reference/components/skeleton/examples/with-crossfade.tsx +7 -7
  562. package/dist/skill/reference/components/slider/COMPONENT.md +10 -5
  563. package/dist/skill/reference/components/slider/examples/examples.module.css +6 -7
  564. package/dist/skill/reference/components/slider/examples/hint-and-error.tsx +3 -5
  565. package/dist/skill/reference/components/slider/examples/in-form.tsx +21 -19
  566. package/dist/skill/reference/components/smart-filter/COMPONENT.md +32 -12
  567. package/dist/skill/reference/components/smart-filter/examples/examples.module.css +0 -21
  568. package/dist/skill/reference/components/smart-filter/examples/ranges.tsx +2 -1
  569. package/dist/skill/reference/components/smart-filter/examples/sizes.tsx +2 -4
  570. package/dist/skill/reference/components/sparkline/COMPONENT.md +7 -3
  571. package/dist/skill/reference/components/sparkline/examples/examples.module.css +1 -1
  572. package/dist/skill/reference/components/sparkline/examples/signed-bars.tsx +2 -2
  573. package/dist/skill/reference/components/spinner/COMPONENT.md +15 -9
  574. package/dist/skill/reference/components/spinner/examples/examples.module.css +2 -14
  575. package/dist/skill/reference/components/spinner/examples/overview.tsx +1 -1
  576. package/dist/skill/reference/components/stepper/COMPONENT.md +50 -41
  577. package/dist/skill/reference/components/stepper/examples/examples.module.css +1 -6
  578. package/dist/skill/reference/components/stepper/examples/narrow.tsx +1 -1
  579. package/dist/skill/reference/components/stepper/examples/sizes.tsx +6 -8
  580. package/dist/skill/reference/components/stepper/examples/states.tsx +44 -43
  581. package/dist/skill/reference/components/stepper/examples/with-icon.tsx +19 -17
  582. package/dist/skill/reference/components/switch/COMPONENT.md +21 -8
  583. package/dist/skill/reference/components/switch/examples/examples.module.css +2 -2
  584. package/dist/skill/reference/components/switch/examples/states.tsx +3 -3
  585. package/dist/skill/reference/components/tabs/COMPONENT.md +21 -16
  586. package/dist/skill/reference/components/tabs/examples/in-drawer.tsx +1 -1
  587. package/dist/skill/reference/components/tabs/examples/sizes.tsx +5 -10
  588. package/dist/skill/reference/components/tabs/examples/variants.tsx +19 -23
  589. package/dist/skill/reference/components/tag-select/COMPONENT.md +19 -6
  590. package/dist/skill/reference/components/tag-select/examples/creatable.tsx +2 -2
  591. package/dist/skill/reference/components/tag-select/examples/dismiss.tsx +23 -0
  592. package/dist/skill/reference/components/tag-select/examples/examples.module.css +3 -3
  593. package/dist/skill/reference/components/tag-select/examples/in-form.tsx +31 -32
  594. package/dist/skill/reference/components/tag-select/examples/sizes.tsx +2 -2
  595. package/dist/skill/reference/components/tag-select/examples/states.tsx +2 -2
  596. package/dist/skill/reference/components/textarea/COMPONENT.md +10 -6
  597. package/dist/skill/reference/components/textarea/examples/examples.module.css +3 -10
  598. package/dist/skill/reference/components/textarea/examples/in-form.tsx +3 -3
  599. package/dist/skill/reference/components/textarea/examples/sizes.tsx +10 -7
  600. package/dist/skill/reference/components/textarea/examples/states.tsx +29 -13
  601. package/dist/skill/reference/components/textarea/examples/validation.tsx +45 -36
  602. package/dist/skill/reference/components/thumbnail/COMPONENT.md +17 -13
  603. package/dist/skill/reference/components/thumbnail/examples/examples.module.css +1 -1
  604. package/dist/skill/reference/components/thumbnail/examples/states.tsx +1 -1
  605. package/dist/skill/reference/components/thumbnail/examples/variants.tsx +12 -1
  606. package/dist/skill/reference/components/timeline/COMPONENT.md +51 -35
  607. package/dist/skill/reference/components/timeline/examples/links.tsx +14 -14
  608. package/dist/skill/reference/components/timeline/examples/narrow.tsx +6 -6
  609. package/dist/skill/reference/components/timeline/examples/overview.tsx +6 -6
  610. package/dist/skill/reference/components/timeline/examples/sizes.tsx +28 -23
  611. package/dist/skill/reference/components/timeline/examples/structure.tsx +30 -30
  612. package/dist/skill/reference/components/timeline/examples/variants.tsx +40 -28
  613. package/dist/skill/reference/components/tooltip/COMPONENT.md +10 -6
  614. package/dist/skill/reference/components/tooltip/examples/examples.module.css +1 -5
  615. package/dist/skill/reference/components/tooltip/examples/non-interactive-trigger.tsx +1 -1
  616. package/dist/skill/reference/components/tooltip/examples/sizes.tsx +17 -10
  617. package/dist/skill/reference/components/typography/COMPONENT.md +17 -2
  618. package/dist/skill/reference/components/typography/examples/examples.module.css +3 -6
  619. package/dist/skill/reference/components/typography/examples/numeric.tsx +16 -0
  620. package/dist/skill/reference/components/video-note/COMPONENT.md +11 -7
  621. package/dist/skill/reference/components/visually-hidden/COMPONENT.md +8 -4
  622. package/dist/skill/reference/components/visually-hidden/examples/assertive.tsx +1 -1
  623. package/dist/skill/reference/components/visually-hidden/examples/overview.tsx +17 -7
  624. package/dist/skill/reference/components/voice-player/COMPONENT.md +15 -7
  625. package/dist/skill/reference/foundation.md +564 -0
  626. package/dist/skill/reference/layout/app-header/COMPONENT.md +27 -26
  627. package/dist/skill/reference/layout/app-header/examples/examples.module.css +4 -23
  628. package/dist/skill/reference/layout/app-header/examples/in-app-shell.tsx +3 -5
  629. package/dist/skill/reference/layout/app-header/examples/narrow.tsx +58 -20
  630. package/dist/skill/reference/layout/app-shell/COMPONENT.md +40 -10
  631. package/dist/skill/reference/layout/app-shell/examples/examples.module.css +2 -22
  632. package/dist/skill/reference/layout/app-shell/examples/footer.tsx +2 -2
  633. package/dist/skill/reference/layout/app-shell/examples/overview.tsx +3 -5
  634. package/dist/skill/reference/layout/app-shell/examples/screen.tsx +27 -21
  635. package/dist/skill/reference/layout/app-shell/examples/template.tsx +3 -3
  636. package/dist/skill/reference/layout/bottom-nav/COMPONENT.md +27 -17
  637. package/dist/skill/reference/layout/bottom-nav/examples/examples.module.css +2 -7
  638. package/dist/skill/reference/layout/bottom-nav/examples/floating-action.tsx +2 -2
  639. package/dist/skill/reference/layout/bottom-nav/examples/floating.tsx +2 -2
  640. package/dist/skill/reference/layout/bottom-nav/examples/in-app-shell.tsx +2 -2
  641. package/dist/skill/reference/layout/bottom-nav/examples/router.tsx +6 -5
  642. package/dist/skill/reference/layout/sidebar/COMPONENT.md +50 -40
  643. package/dist/skill/reference/layout/sidebar/examples/account.tsx +1 -3
  644. package/dist/skill/reference/layout/sidebar/examples/brand-header.tsx +1 -3
  645. package/dist/skill/reference/layout/sidebar/examples/collapsible-groups.tsx +1 -3
  646. package/dist/skill/reference/layout/sidebar/examples/controlled-open.tsx +1 -3
  647. package/dist/skill/reference/layout/sidebar/examples/controlled.tsx +1 -3
  648. package/dist/skill/reference/layout/sidebar/examples/custom-part.tsx +1 -3
  649. package/dist/skill/reference/layout/sidebar/examples/dismiss.tsx +47 -0
  650. package/dist/skill/reference/layout/sidebar/examples/examples.module.css +7 -32
  651. package/dist/skill/reference/layout/sidebar/examples/narrow.tsx +44 -42
  652. package/dist/skill/reference/layout/sidebar/examples/nested-items.tsx +1 -3
  653. package/dist/skill/reference/layout/sidebar/examples/overview.tsx +1 -3
  654. package/dist/skill/reference/layout/sidebar/examples/persist.tsx +1 -3
  655. package/dist/skill/reference/layout/sidebar/examples/router.tsx +12 -13
  656. package/dist/skill/reference/layout/sidebar/examples/sizes.tsx +6 -6
  657. package/dist/skill/responsive.md +48 -51
  658. package/dist/skill/ux.md +21 -9
  659. package/dist/theme/applyTheme.d.ts +7 -6
  660. package/dist/tokens/hues.d.ts +8 -0
  661. package/dist/tokens/layers.d.ts +3 -16
  662. package/dist/tokens/offGrid.d.ts +7 -0
  663. package/dist/tokens/primitives.d.ts +22 -7
  664. package/dist/tokens/semantic.d.ts +201 -51
  665. package/dist/tokens/themes/dark.d.ts +32 -31
  666. package/package.json +5 -3
  667. package/src/components/accordion/COMPONENT.md +16 -9
  668. package/src/components/accordion/examples/overview.tsx +2 -2
  669. package/src/components/accordion/examples/sizes.tsx +6 -8
  670. package/src/components/accordion/examples/states.tsx +27 -24
  671. package/src/components/accordion/examples/variants.tsx +6 -8
  672. package/src/components/accordion/examples/with-icon.tsx +22 -19
  673. package/src/components/avatar/COMPONENT.md +23 -16
  674. package/src/components/avatar/examples/examples.module.css +1 -4
  675. package/src/components/avatar/examples/overview.tsx +3 -3
  676. package/src/components/avatar/examples/presence.tsx +4 -4
  677. package/src/components/avatar/examples/src-from-state.tsx +3 -3
  678. package/src/components/avatar/examples/states.tsx +4 -4
  679. package/src/components/avatar/examples/team-group.tsx +2 -2
  680. package/src/components/badge/COMPONENT.md +66 -34
  681. package/src/components/badge/examples/controlled.tsx +32 -0
  682. package/src/components/badge/examples/examples.module.css +2 -2
  683. package/src/components/badge/examples/filter-values.tsx +4 -6
  684. package/src/components/badge/examples/in-controls.tsx +1 -1
  685. package/src/components/badge/examples/overview.tsx +6 -5
  686. package/src/components/badge/examples/square.tsx +21 -0
  687. package/src/components/badge/examples/states.tsx +4 -4
  688. package/src/components/badge/examples/with-icon.tsx +10 -1
  689. package/src/components/banner/COMPONENT.md +9 -5
  690. package/src/components/banner/examples/dismissible.tsx +3 -19
  691. package/src/components/banner/examples/overview.tsx +1 -1
  692. package/src/components/breadcrumb/COMPONENT.md +17 -11
  693. package/src/components/breadcrumb/examples/examples.module.css +1 -1
  694. package/src/components/breadcrumb/examples/overflow.tsx +1 -1
  695. package/src/components/breadcrumb/examples/sizes.tsx +6 -8
  696. package/src/components/breadcrumb/examples/with-icon.tsx +15 -8
  697. package/src/components/button/COMPONENT.md +66 -30
  698. package/src/components/button/examples/align.tsx +25 -0
  699. package/src/components/button/examples/controlled.tsx +21 -0
  700. package/src/components/button/examples/density.tsx +45 -0
  701. package/src/components/button/examples/examples.module.css +14 -25
  702. package/src/components/button/examples/label-morph.tsx +1 -1
  703. package/src/components/button/examples/on-colored-host.tsx +19 -19
  704. package/src/components/button/examples/over-media.tsx +7 -1
  705. package/src/components/button/examples/toggle.tsx +2 -10
  706. package/src/components/button-group/COMPONENT.md +21 -15
  707. package/src/components/button-group/examples/controlled.tsx +1 -1
  708. package/src/components/card/COMPONENT.md +16 -5
  709. package/src/components/card/examples/content-templates.tsx +8 -2
  710. package/src/components/card/examples/examples.module.css +4 -16
  711. package/src/components/card/examples/overview.tsx +11 -11
  712. package/src/components/card/examples/screen.tsx +9 -8
  713. package/src/components/card/examples/variants.tsx +74 -47
  714. package/src/components/chart-frame/COMPONENT.md +24 -28
  715. package/src/components/chart-frame/examples/controlled.tsx +9 -7
  716. package/src/components/chart-frame/examples/fill-height.tsx +4 -6
  717. package/src/components/chart-frame/examples/narrow.tsx +24 -5
  718. package/src/components/chart-frame/examples/overview.tsx +5 -2
  719. package/src/components/chart-frame/examples/states.tsx +72 -64
  720. package/src/components/chart-frame/examples/tooltip.tsx +27 -26
  721. package/src/components/chat/COMPONENT.md +35 -22
  722. package/src/components/chat/examples/group-chat.tsx +2 -2
  723. package/src/components/chat/examples/overview.tsx +119 -130
  724. package/src/components/chat/examples/reactions.tsx +18 -23
  725. package/src/components/chat/examples/screen.tsx +108 -131
  726. package/src/components/chat/examples/states.tsx +23 -22
  727. package/src/components/chat-list/COMPONENT.md +10 -5
  728. package/src/components/chat-list/examples/examples.module.css +0 -8
  729. package/src/components/chat-list/examples/live.tsx +29 -22
  730. package/src/components/chat-list/examples/sizes.tsx +6 -8
  731. package/src/components/chat-list/examples/states.tsx +42 -38
  732. package/src/components/checkbox/COMPONENT.md +27 -14
  733. package/src/components/checkbox/examples/controlled.tsx +18 -16
  734. package/src/components/checkbox/examples/examples.module.css +14 -56
  735. package/src/components/checkbox/examples/in-form.tsx +16 -16
  736. package/src/components/checkbox/examples/indicator.tsx +19 -64
  737. package/src/components/checkbox/examples/overview.tsx +1 -1
  738. package/src/components/checkbox/examples/states.tsx +1 -1
  739. package/src/components/checkbox/examples/without-label.tsx +1 -1
  740. package/src/components/code-block/COMPONENT.md +16 -12
  741. package/src/components/code-block/examples/examples.module.css +5 -2
  742. package/src/components/code-block/examples/narrow.tsx +1 -1
  743. package/src/components/color-field/COMPONENT.md +15 -9
  744. package/src/components/color-field/examples/examples.module.css +4 -5
  745. package/src/components/color-field/examples/in-form.tsx +15 -13
  746. package/src/components/color-field/examples/sizes.tsx +5 -1
  747. package/src/components/color-field/examples/states.tsx +15 -3
  748. package/src/components/color-picker/COMPONENT.md +55 -19
  749. package/src/components/color-picker/examples/controlled.tsx +16 -5
  750. package/src/components/color-picker/examples/examples.module.css +6 -7
  751. package/src/components/color-picker/examples/in-form.tsx +24 -22
  752. package/src/components/color-picker/examples/overview.tsx +1 -1
  753. package/src/components/color-picker/examples/panel.tsx +1 -1
  754. package/src/components/color-picker/examples/sizes.tsx +9 -11
  755. package/src/components/color-picker/examples/states.tsx +28 -23
  756. package/src/components/color-swatches/COMPONENT.md +22 -8
  757. package/src/components/color-swatches/examples/examples.module.css +3 -4
  758. package/src/components/color-swatches/examples/in-form.tsx +19 -17
  759. package/src/components/color-swatches/examples/palette.tsx +24 -0
  760. package/src/components/color-swatches/examples/wrapping.tsx +17 -2
  761. package/src/components/command-menu/COMPONENT.md +60 -20
  762. package/src/components/command-menu/examples/sizes.tsx +20 -15
  763. package/src/components/command-menu/examples/states.tsx +46 -24
  764. package/src/components/composer/COMPONENT.md +42 -24
  765. package/src/components/composer/examples/examples.module.css +0 -9
  766. package/src/components/composer/examples/narrow.tsx +1 -1
  767. package/src/components/composer/examples/reply-edit.tsx +3 -3
  768. package/src/components/composer/examples/sizes.tsx +3 -5
  769. package/src/components/composer/examples/states.tsx +4 -6
  770. package/src/components/confirm-dialog/COMPONENT.md +26 -13
  771. package/src/components/confirm-dialog/examples/dismiss.tsx +27 -0
  772. package/src/components/confirm-dialog/examples/failure.tsx +9 -16
  773. package/src/components/crossfade/COMPONENT.md +11 -5
  774. package/src/components/crossfade/examples/examples.module.css +1 -40
  775. package/src/components/crossfade/examples/fill.tsx +16 -19
  776. package/src/components/crossfade/examples/overview.tsx +14 -16
  777. package/src/components/crossfade/examples/record-switch.tsx +6 -11
  778. package/src/components/crossfade/examples/screen.module.css +1 -24
  779. package/src/components/crossfade/examples/screen.tsx +14 -25
  780. package/src/components/data-table/COMPONENT.md +31 -21
  781. package/src/components/data-table/examples/controlled.tsx +14 -2
  782. package/src/components/data-table/examples/examples.module.css +1 -9
  783. package/src/components/data-table/examples/narrow.tsx +5 -1
  784. package/src/components/data-table/examples/row-link.tsx +2 -1
  785. package/src/components/data-table/examples/screen.module.css +2 -2
  786. package/src/components/data-table/examples/screen.tsx +11 -10
  787. package/src/components/data-table/examples/sizes.tsx +17 -17
  788. package/src/components/data-table/examples/states.tsx +37 -29
  789. package/src/components/datepicker/COMPONENT.md +53 -22
  790. package/src/components/datepicker/examples/dismiss.tsx +15 -0
  791. package/src/components/datepicker/examples/examples.module.css +3 -2
  792. package/src/components/datepicker/examples/in-form.tsx +33 -25
  793. package/src/components/datepicker/examples/sizes.tsx +2 -2
  794. package/src/components/datepicker/examples/states.tsx +2 -2
  795. package/src/components/datepicker/examples/validation.tsx +3 -3
  796. package/src/components/description-list/COMPONENT.md +24 -9
  797. package/src/components/description-list/examples/examples.module.css +4 -24
  798. package/src/components/description-list/examples/narrow.tsx +1 -1
  799. package/src/components/description-list/examples/screen.module.css +0 -18
  800. package/src/components/description-list/examples/screen.tsx +19 -27
  801. package/src/components/description-list/examples/sizes.tsx +2 -4
  802. package/src/components/description-list/examples/structure.tsx +6 -7
  803. package/src/components/description-list/examples/totals.tsx +40 -0
  804. package/src/components/digit-input/COMPONENT.md +12 -6
  805. package/src/components/digit-input/examples/examples.module.css +2 -2
  806. package/src/components/digit-input/examples/in-form.tsx +1 -1
  807. package/src/components/digit-input/examples/sizes.tsx +5 -3
  808. package/src/components/digit-input/examples/states.tsx +14 -6
  809. package/src/components/divider/COMPONENT.md +26 -12
  810. package/src/components/divider/examples/align.tsx +2 -4
  811. package/src/components/divider/examples/examples.module.css +13 -17
  812. package/src/components/divider/examples/or-separator.tsx +3 -5
  813. package/src/components/divider/examples/overview.tsx +18 -16
  814. package/src/components/divider/examples/vertical.tsx +5 -1
  815. package/src/components/divider/examples/with-icon.tsx +1 -1
  816. package/src/components/dnd/COMPONENT.md +52 -34
  817. package/src/components/dnd/examples/drop-zones.tsx +1 -1
  818. package/src/components/dnd/examples/examples.module.css +4 -6
  819. package/src/components/dnd/examples/states.tsx +41 -35
  820. package/src/components/drawer/COMPONENT.md +37 -14
  821. package/src/components/drawer/examples/guard.tsx +1 -3
  822. package/src/components/drawer/examples/header-actions.tsx +1 -1
  823. package/src/components/drawer/examples/in-form.tsx +31 -31
  824. package/src/components/drawer/examples/placement.tsx +31 -26
  825. package/src/components/drawer/examples/sizes.tsx +32 -27
  826. package/src/components/dropdown/COMPONENT.md +58 -23
  827. package/src/components/dropdown/examples/context-menu.tsx +75 -0
  828. package/src/components/dropdown/examples/examples.module.css +1 -1
  829. package/src/components/dropdown/examples/sizes.tsx +39 -34
  830. package/src/components/dropdown/examples/states.tsx +37 -29
  831. package/src/components/empty-page/COMPONENT.md +20 -9
  832. package/src/components/empty-page/examples/compact.tsx +28 -18
  833. package/src/components/empty-page/examples/examples.module.css +0 -43
  834. package/src/components/empty-page/examples/narrow.tsx +3 -3
  835. package/src/components/empty-page/examples/region-error.tsx +6 -11
  836. package/src/components/empty-page/examples/sizes.tsx +13 -13
  837. package/src/components/empty-page/examples/variants.tsx +34 -30
  838. package/src/components/example-frame/COMPONENT.md +21 -9
  839. package/src/components/example-frame/examples/controlled.tsx +3 -3
  840. package/src/components/field-list/COMPONENT.md +14 -8
  841. package/src/components/field-list/examples/sizes.tsx +32 -26
  842. package/src/components/field-list/examples/states.tsx +37 -31
  843. package/src/components/fieldset/COMPONENT.md +10 -5
  844. package/src/components/fieldset/examples/examples.module.css +1 -1
  845. package/src/components/file-upload/COMPONENT.md +67 -29
  846. package/src/components/file-upload/examples/avatar-upload.tsx +5 -5
  847. package/src/components/file-upload/examples/custom-body.tsx +12 -7
  848. package/src/components/file-upload/examples/examples.module.css +4 -4
  849. package/src/components/file-upload/examples/narrow.tsx +1 -1
  850. package/src/components/file-upload/examples/row-parts.tsx +4 -4
  851. package/src/components/file-upload/examples/screen.module.css +2 -2
  852. package/src/components/file-upload/examples/screen.tsx +6 -4
  853. package/src/components/file-upload/examples/sizes.tsx +1 -3
  854. package/src/components/file-upload/examples/states.tsx +1 -3
  855. package/src/components/file-upload/examples/variants.tsx +13 -7
  856. package/src/components/gallery/COMPONENT.md +16 -7
  857. package/src/components/gallery/examples/album-sizes.tsx +52 -0
  858. package/src/components/gallery/examples/controlled.tsx +40 -0
  859. package/src/components/gallery/examples/examples.module.css +1 -1
  860. package/src/components/gallery/examples/overview.tsx +15 -43
  861. package/src/components/gallery/examples/transfer.tsx +22 -13
  862. package/src/components/gantt/COMPONENT.md +21 -15
  863. package/src/components/gantt/examples/examples.module.css +0 -16
  864. package/src/components/gantt/examples/occupancy.tsx +2 -2
  865. package/src/components/gantt/examples/screen.tsx +2 -2
  866. package/src/components/gantt/examples/sizes.tsx +16 -16
  867. package/src/components/gantt/examples/states.tsx +34 -30
  868. package/src/components/gantt/examples/variants.tsx +27 -25
  869. package/src/components/hint/COMPONENT.md +24 -14
  870. package/src/components/hint/examples/examples.module.css +1 -1
  871. package/src/components/hint/examples/hint-or-error.tsx +2 -2
  872. package/src/components/hint/examples/overview.tsx +9 -10
  873. package/src/components/hint/examples/sizes.tsx +1 -1
  874. package/src/components/input/COMPONENT.md +10 -6
  875. package/src/components/input/examples/affixes.tsx +2 -2
  876. package/src/components/input/examples/examples.module.css +1 -1
  877. package/src/components/input/examples/sizes.tsx +9 -5
  878. package/src/components/input/examples/states.tsx +39 -23
  879. package/src/components/input/examples/with-icon.tsx +24 -16
  880. package/src/components/kanban/COMPONENT.md +30 -24
  881. package/src/components/kanban/examples/columns.tsx +14 -19
  882. package/src/components/kanban/examples/item-link.tsx +2 -2
  883. package/src/components/kanban/examples/limits.tsx +1 -1
  884. package/src/components/kanban/examples/narrow.tsx +1 -1
  885. package/src/components/kanban/examples/screen.module.css +1 -3
  886. package/src/components/kanban/examples/screen.tsx +6 -4
  887. package/src/components/kanban/examples/states.tsx +37 -58
  888. package/src/components/kanban/examples/variants.tsx +0 -3
  889. package/src/components/kbd/COMPONENT.md +10 -6
  890. package/src/components/kbd/examples/examples.module.css +1 -20
  891. package/src/components/kbd/examples/in-controls.tsx +2 -2
  892. package/src/components/kbd/examples/shortcut-list.tsx +14 -26
  893. package/src/components/label/COMPONENT.md +26 -11
  894. package/src/components/label/examples/examples.module.css +3 -11
  895. package/src/components/label/examples/overview.tsx +5 -9
  896. package/src/components/label/examples/structure.tsx +2 -2
  897. package/src/components/link-button/COMPONENT.md +33 -20
  898. package/src/components/link-button/examples/as-child.tsx +1 -1
  899. package/src/components/link-button/examples/external-link.tsx +1 -1
  900. package/src/components/link-button/examples/overview.tsx +4 -2
  901. package/src/components/link-button/examples/variants.tsx +2 -2
  902. package/src/components/list/COMPONENT.md +24 -16
  903. package/src/components/list/examples/examples.module.css +0 -8
  904. package/src/components/list/examples/overflow.tsx +1 -1
  905. package/src/components/list/examples/overview.tsx +31 -30
  906. package/src/components/list/examples/sizes.tsx +23 -23
  907. package/src/components/list/examples/states.tsx +38 -21
  908. package/src/components/list/examples/with-icon.tsx +16 -14
  909. package/src/components/login-form/COMPONENT.md +69 -16
  910. package/src/components/login-form/examples/narrow.tsx +1 -1
  911. package/src/components/login-form/examples/register.tsx +1 -1
  912. package/src/components/media-viewer/COMPONENT.md +12 -8
  913. package/src/components/media-viewer/examples/examples.module.css +2 -2
  914. package/src/components/media-viewer/examples/video.tsx +1 -1
  915. package/src/components/message/COMPONENT.md +102 -46
  916. package/src/components/message/examples/typing.tsx +5 -5
  917. package/src/components/modal/COMPONENT.md +71 -37
  918. package/src/components/modal/examples/dismiss.tsx +35 -27
  919. package/src/components/modal/examples/enter-key.tsx +22 -25
  920. package/src/components/modal/examples/examples.module.css +0 -7
  921. package/src/components/modal/examples/guard.tsx +2 -4
  922. package/src/components/modal/examples/in-form.tsx +28 -28
  923. package/src/components/modal/examples/long-content.tsx +6 -4
  924. package/src/components/modal/examples/sizes.tsx +36 -31
  925. package/src/components/modal/examples/structure.tsx +1 -1
  926. package/src/components/native-select/COMPONENT.md +7 -3
  927. package/src/components/native-select/examples/examples.module.css +3 -3
  928. package/src/components/native-select/examples/in-form.tsx +28 -29
  929. package/src/components/native-select/examples/sizes.tsx +2 -2
  930. package/src/components/native-select/examples/states.tsx +2 -2
  931. package/src/components/notification/COMPONENT.md +36 -31
  932. package/src/components/notification/examples/examples.module.css +1 -2
  933. package/src/components/notification/examples/in-form.tsx +28 -20
  934. package/src/components/notification/examples/sizes.tsx +16 -12
  935. package/src/components/notification/examples/undo.tsx +7 -15
  936. package/src/components/page-content/COMPONENT.md +21 -29
  937. package/src/components/page-content/examples/examples.module.css +3 -16
  938. package/src/components/page-content/examples/grid.tsx +3 -1
  939. package/src/components/page-content/examples/list-detail.tsx +55 -49
  940. package/src/components/page-content/examples/narrow.tsx +1 -1
  941. package/src/components/page-content/examples/overview.tsx +2 -2
  942. package/src/components/page-content/examples/variants.tsx +7 -7
  943. package/src/components/page-toolbar/COMPONENT.md +10 -6
  944. package/src/components/page-toolbar/examples/overview.tsx +1 -1
  945. package/src/components/page-toolbar/examples/save-changes.tsx +25 -22
  946. package/src/components/pagination/COMPONENT.md +20 -17
  947. package/src/components/pagination/examples/narrow.tsx +5 -5
  948. package/src/components/popover/COMPONENT.md +43 -20
  949. package/src/components/popover/examples/controlled-open.tsx +6 -4
  950. package/src/components/popover/examples/dismiss.tsx +37 -28
  951. package/src/components/popover/examples/examples.module.css +2 -2
  952. package/src/components/popover/examples/sizes.tsx +32 -27
  953. package/src/components/popover/examples/width.tsx +45 -0
  954. package/src/components/progress-bar/COMPONENT.md +21 -29
  955. package/src/components/progress-bar/examples/examples.module.css +1 -1
  956. package/src/components/progress-circle/COMPONENT.md +21 -29
  957. package/src/components/progress-circle/examples/examples.module.css +1 -1
  958. package/src/components/progress-circle/examples/on-color.tsx +16 -0
  959. package/src/components/progress-circle/examples/variants.tsx +1 -0
  960. package/src/components/radio/COMPONENT.md +13 -4
  961. package/src/components/radio/examples/examples.module.css +1 -1
  962. package/src/components/scroll-container/COMPONENT.md +18 -12
  963. package/src/components/scroll-container/examples/auto-scroll.tsx +8 -4
  964. package/src/components/scroll-container/examples/edges.tsx +4 -4
  965. package/src/components/scroll-container/examples/examples.module.css +7 -51
  966. package/src/components/scroll-container/examples/load-more.tsx +4 -4
  967. package/src/components/scroll-container/examples/lock.tsx +4 -4
  968. package/src/components/scroll-container/examples/log.tsx +97 -0
  969. package/src/components/scroll-container/examples/overscroll.tsx +4 -4
  970. package/src/components/scroll-container/examples/overview.tsx +5 -5
  971. package/src/components/scroll-container/examples/scrollbar.tsx +4 -4
  972. package/src/components/scroll-container/examples/snap.tsx +2 -2
  973. package/src/components/scroll-container/examples/variants.tsx +1 -0
  974. package/src/components/segmented-control/COMPONENT.md +24 -12
  975. package/src/components/segmented-control/examples/controlled.tsx +2 -4
  976. package/src/components/segmented-control/examples/examples.module.css +0 -8
  977. package/src/components/segmented-control/examples/scroll.tsx +1 -1
  978. package/src/components/select/COMPONENT.md +33 -9
  979. package/src/components/select/examples/dismiss.tsx +26 -0
  980. package/src/components/select/examples/examples.module.css +1 -1
  981. package/src/components/select/examples/server-search.tsx +6 -2
  982. package/src/components/select/examples/sizes.tsx +2 -2
  983. package/src/components/select/examples/states.tsx +2 -2
  984. package/src/components/select/examples/with-icon.tsx +20 -18
  985. package/src/components/sheet/COMPONENT.md +44 -21
  986. package/src/components/sheet/examples/header-actions.tsx +23 -4
  987. package/src/components/sheet/examples/overview.tsx +25 -10
  988. package/src/components/skeleton/COMPONENT.md +8 -4
  989. package/src/components/skeleton/examples/examples.module.css +1 -13
  990. package/src/components/skeleton/examples/with-crossfade.tsx +7 -7
  991. package/src/components/slider/COMPONENT.md +10 -5
  992. package/src/components/slider/examples/examples.module.css +6 -7
  993. package/src/components/slider/examples/hint-and-error.tsx +3 -5
  994. package/src/components/slider/examples/in-form.tsx +21 -19
  995. package/src/components/smart-filter/COMPONENT.md +32 -12
  996. package/src/components/smart-filter/examples/examples.module.css +0 -21
  997. package/src/components/smart-filter/examples/ranges.tsx +2 -1
  998. package/src/components/smart-filter/examples/sizes.tsx +2 -4
  999. package/src/components/sparkline/COMPONENT.md +7 -3
  1000. package/src/components/sparkline/examples/examples.module.css +1 -1
  1001. package/src/components/sparkline/examples/signed-bars.tsx +2 -2
  1002. package/src/components/spinner/COMPONENT.md +15 -9
  1003. package/src/components/spinner/examples/examples.module.css +2 -14
  1004. package/src/components/spinner/examples/overview.tsx +1 -1
  1005. package/src/components/stepper/COMPONENT.md +50 -41
  1006. package/src/components/stepper/examples/examples.module.css +1 -6
  1007. package/src/components/stepper/examples/narrow.tsx +1 -1
  1008. package/src/components/stepper/examples/sizes.tsx +6 -8
  1009. package/src/components/stepper/examples/states.tsx +44 -43
  1010. package/src/components/stepper/examples/with-icon.tsx +19 -17
  1011. package/src/components/switch/COMPONENT.md +21 -8
  1012. package/src/components/switch/examples/examples.module.css +2 -2
  1013. package/src/components/switch/examples/states.tsx +3 -3
  1014. package/src/components/tabs/COMPONENT.md +21 -16
  1015. package/src/components/tabs/examples/in-drawer.tsx +1 -1
  1016. package/src/components/tabs/examples/sizes.tsx +5 -10
  1017. package/src/components/tabs/examples/variants.tsx +19 -23
  1018. package/src/components/tag-select/COMPONENT.md +19 -6
  1019. package/src/components/tag-select/examples/creatable.tsx +2 -2
  1020. package/src/components/tag-select/examples/dismiss.tsx +23 -0
  1021. package/src/components/tag-select/examples/examples.module.css +3 -3
  1022. package/src/components/tag-select/examples/in-form.tsx +31 -32
  1023. package/src/components/tag-select/examples/sizes.tsx +2 -2
  1024. package/src/components/tag-select/examples/states.tsx +2 -2
  1025. package/src/components/textarea/COMPONENT.md +10 -6
  1026. package/src/components/textarea/examples/examples.module.css +3 -10
  1027. package/src/components/textarea/examples/in-form.tsx +3 -3
  1028. package/src/components/textarea/examples/sizes.tsx +10 -7
  1029. package/src/components/textarea/examples/states.tsx +29 -13
  1030. package/src/components/textarea/examples/validation.tsx +45 -36
  1031. package/src/components/thumbnail/COMPONENT.md +17 -13
  1032. package/src/components/thumbnail/examples/examples.module.css +1 -1
  1033. package/src/components/thumbnail/examples/states.tsx +1 -1
  1034. package/src/components/thumbnail/examples/variants.tsx +12 -1
  1035. package/src/components/timeline/COMPONENT.md +51 -35
  1036. package/src/components/timeline/examples/links.tsx +14 -14
  1037. package/src/components/timeline/examples/narrow.tsx +6 -6
  1038. package/src/components/timeline/examples/overview.tsx +6 -6
  1039. package/src/components/timeline/examples/sizes.tsx +28 -23
  1040. package/src/components/timeline/examples/structure.tsx +30 -30
  1041. package/src/components/timeline/examples/variants.tsx +40 -28
  1042. package/src/components/tooltip/COMPONENT.md +10 -6
  1043. package/src/components/tooltip/examples/examples.module.css +1 -5
  1044. package/src/components/tooltip/examples/non-interactive-trigger.tsx +1 -1
  1045. package/src/components/tooltip/examples/sizes.tsx +17 -10
  1046. package/src/components/typography/COMPONENT.md +17 -2
  1047. package/src/components/typography/examples/examples.module.css +3 -6
  1048. package/src/components/typography/examples/numeric.tsx +16 -0
  1049. package/src/components/video-note/COMPONENT.md +11 -7
  1050. package/src/components/visually-hidden/COMPONENT.md +8 -4
  1051. package/src/components/visually-hidden/examples/assertive.tsx +1 -1
  1052. package/src/components/visually-hidden/examples/overview.tsx +17 -7
  1053. package/src/components/voice-player/COMPONENT.md +15 -7
  1054. package/src/layout/app-header/COMPONENT.md +27 -26
  1055. package/src/layout/app-header/examples/examples.module.css +4 -23
  1056. package/src/layout/app-header/examples/in-app-shell.tsx +3 -5
  1057. package/src/layout/app-header/examples/narrow.tsx +58 -20
  1058. package/src/layout/app-shell/COMPONENT.md +40 -10
  1059. package/src/layout/app-shell/examples/examples.module.css +2 -22
  1060. package/src/layout/app-shell/examples/footer.tsx +2 -2
  1061. package/src/layout/app-shell/examples/overview.tsx +3 -5
  1062. package/src/layout/app-shell/examples/screen.tsx +27 -21
  1063. package/src/layout/app-shell/examples/template.tsx +3 -3
  1064. package/src/layout/bottom-nav/COMPONENT.md +27 -17
  1065. package/src/layout/bottom-nav/examples/examples.module.css +2 -7
  1066. package/src/layout/bottom-nav/examples/floating-action.tsx +2 -2
  1067. package/src/layout/bottom-nav/examples/floating.tsx +2 -2
  1068. package/src/layout/bottom-nav/examples/in-app-shell.tsx +2 -2
  1069. package/src/layout/bottom-nav/examples/router.tsx +6 -5
  1070. package/src/layout/sidebar/COMPONENT.md +50 -40
  1071. package/src/layout/sidebar/examples/account.tsx +1 -3
  1072. package/src/layout/sidebar/examples/brand-header.tsx +1 -3
  1073. package/src/layout/sidebar/examples/collapsible-groups.tsx +1 -3
  1074. package/src/layout/sidebar/examples/controlled-open.tsx +1 -3
  1075. package/src/layout/sidebar/examples/controlled.tsx +1 -3
  1076. package/src/layout/sidebar/examples/custom-part.tsx +1 -3
  1077. package/src/layout/sidebar/examples/dismiss.tsx +47 -0
  1078. package/src/layout/sidebar/examples/examples.module.css +7 -32
  1079. package/src/layout/sidebar/examples/narrow.tsx +44 -42
  1080. package/src/layout/sidebar/examples/nested-items.tsx +1 -3
  1081. package/src/layout/sidebar/examples/overview.tsx +1 -3
  1082. package/src/layout/sidebar/examples/persist.tsx +1 -3
  1083. package/src/layout/sidebar/examples/router.tsx +12 -13
  1084. package/src/layout/sidebar/examples/sizes.tsx +6 -6
  1085. package/src/styles/controls.css +2 -2
  1086. package/src/styles/fonts.css +22 -0
  1087. package/src/styles/globals.css +89 -12
  1088. package/src/styles/theme-dark.css +13 -14
  1089. package/src/styles/theme-light.css +67 -23
  1090. package/src/styles/tokens.css +14 -4
  1091. package/dist/components/dnd/useFlipList.d.ts +0 -17
  1092. package/dist/components/gantt/useEdgeAutoScroll.d.ts +0 -12
  1093. package/dist/components/modal/ModalDialog.d.ts +0 -46
  1094. package/dist/hooks/useStateSwap.d.ts +0 -8
  1095. package/dist/internal/highlightTsxHtml.d.ts +0 -2
  1096. package/dist/internal/layoutPxFromPrimitives.d.ts +0 -6
  1097. package/dist/internal/mergeRefs.d.ts +0 -6
  1098. package/dist/skill/reference/components/drawer/examples/examples.module.css +0 -8
  1099. package/dist/skill/reference/components/popover/examples/match-trigger-width.tsx +0 -23
  1100. package/dist/skill/reference/components/scroll-container/examples/chat.tsx +0 -101
  1101. package/dist/skill/reference/components/spinner/examples/loading-region.tsx +0 -22
  1102. package/src/components/drawer/examples/examples.module.css +0 -8
  1103. package/src/components/popover/examples/match-trigger-width.tsx +0 -23
  1104. package/src/components/scroll-container/examples/chat.tsx +0 -101
  1105. package/src/components/spinner/examples/loading-region.tsx +0 -22
@@ -1,31 +1,36 @@
1
1
  /** A disabled area, hue slider and preset trigger keep showing the color but take no input — `disabled`. */
2
- import { ColorPresets } from "prime-ui-kit";
2
+ import { ColorPresets, Typography } from "prime-ui-kit";
3
3
  import { ColorPicker } from "prime-ui-kit/color-picker";
4
4
 
5
- import styles from "./examples.module.css";
6
-
7
5
  export default function ColorPickerStatesExample() {
8
6
  return (
9
- <>
10
- <ColorPicker.Root defaultValue="#30a46c">
11
- <ColorPicker.Panel className={styles.panel}>
12
- <ColorPicker.Area colorSpace="hsl" xChannel="saturation" yChannel="lightness" disabled>
13
- <ColorPicker.AreaThumb />
14
- </ColorPicker.Area>
15
- <ColorPicker.Slider channel="hue" colorSpace="hsl" disabled>
16
- <ColorPicker.SliderMeta label="disabled" />
17
- <ColorPicker.SliderTrack>
7
+ <div>
8
+ <div>
9
+ <ColorPicker.Root defaultValue="#30a46c">
10
+ <ColorPicker.Panel>
11
+ <ColorPicker.Area colorSpace="hsl" xChannel="saturation" yChannel="lightness" disabled>
18
12
  <ColorPicker.Thumb />
19
- </ColorPicker.SliderTrack>
20
- </ColorPicker.Slider>
21
- </ColorPicker.Panel>
22
- </ColorPicker.Root>
23
- <ColorPresets.Root disabled defaultValue="#22c55e" labels={{ trigger: "Цвет метки" }}>
24
- <ColorPresets.Trigger>
25
- <ColorPresets.SwatchButton />
26
- </ColorPresets.Trigger>
27
- <ColorPresets.Content />
28
- </ColorPresets.Root>
29
- </>
13
+ </ColorPicker.Area>
14
+ <ColorPicker.Slider channel="hue" colorSpace="hsl" disabled>
15
+ <ColorPicker.SliderMeta label="disabled" />
16
+ <ColorPicker.SliderTrack>
17
+ <ColorPicker.Thumb />
18
+ </ColorPicker.SliderTrack>
19
+ </ColorPicker.Slider>
20
+ </ColorPicker.Panel>
21
+ </ColorPicker.Root>
22
+ </div>
23
+ <div>
24
+ <ColorPresets.Root disabled defaultValue="#22c55e" labels={{ trigger: "Цвет метки" }}>
25
+ <ColorPresets.Trigger>
26
+ <ColorPresets.SwatchButton />
27
+ </ColorPresets.Trigger>
28
+ <ColorPresets.Content />
29
+ </ColorPresets.Root>
30
+ <Typography as="span" variant="caption" tone="muted">
31
+ disabled
32
+ </Typography>
33
+ </div>
34
+ </div>
30
35
  );
31
36
  }
@@ -38,11 +38,13 @@ ColorSwatches field frame: label → swatches → hint | error
38
38
 
39
39
  | Prop | Type | Default | Description |
40
40
  |---|---|---|---|
41
- | `value` | `string \| null` | — | Controlled color; `null` — no color. |
42
- | `defaultValue` | `string \| null` | `null` | Initial color when uncontrolled. |
43
- | `onValueChange` | `(value: string \| null) => void` | — | Called with the preset `value` (as written in `presets`) or `null`. |
44
- | `presets` | `readonly ColorPreset[]` | `COLOR_PRESETS` | Swatches in order: `{ value, label }`; the label is the swatch's accessible name and tooltip. |
45
- | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | `host tier, else "m"` | Tier of the swatches (height 20 · 24 · 28 · 32 · 40); the label and hint keep the host tier. Without it the swatches take the host tier too. |
41
+ | `mode` | `"color" \| "palette"` | `"color"` | `color` — any CSS color from `presets`; `palette` — a kit palette hue (`PaletteColor`) from `palette`, drawn from its solid step in both themes. |
42
+ | `value` | `string \| null · PaletteColor \| null` | — | Controlled color (a hue with `palette`); `null` — no color. |
43
+ | `defaultValue` | `string \| null · PaletteColor \| null` | `null` | Initial color when uncontrolled. |
44
+ | `onValueChange` | `(value: string \| null) => void · (value: PaletteColor \| null) => void` | — | Called with the preset `value` (as written in `presets`), the hue with `palette`, or `null`. |
45
+ | `presets` | `readonly ColorPreset[]` | `COLOR_PRESETS` | `color` mode: swatches in order, `{ value, label }`; the label is the swatch's accessible name and tooltip. |
46
+ | `palette` | `readonly PaletteColor[]` | every hue | `palette` mode: the hues in order; each is named by `labels.colorNames`. |
47
+ | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | host tier, else `"m"` | Tier of the swatches (height 20 · 24 · 28 · 32 · 40); the label and hint keep the host tier. Without it the swatches take the host tier too. |
46
48
  | `label` | `ReactNode` | — | Label above the swatches; names the radiogroup (`aria-labelledby`). |
47
49
  | `required` | `boolean` | — | Red `*` after the label and `aria-required` on the group. |
48
50
  | `optional` | `boolean` | — | Muted marker right after the label text (`labels.optional`). |
@@ -72,6 +74,12 @@ ColorSwatches field frame: label → swatches → hint | error
72
74
 
73
75
  **Sizes:** `size` sets the swatches only; the label and the hint keep the tier of the form around (else `m`), so larger swatches never enlarge the label. Without `size` the swatches take the host tier: an `m` form gets `m` swatches (28) on the same 4px rhythm as `m` fields.
74
76
 
77
+ ### mode
78
+ | Value | Looks like | Use when | Default |
79
+ |---|---|---|---|
80
+ | `color` | the `presets` as CSS colors; the value is the preset `value` | any color: a brand, a calendar event | yes |
81
+ | `palette` | the kit hues (`palette`) from their solid step, the check in the hue's own foreground; the value is the hue name | a color the kit draws elsewhere: a Badge, a Kanban column, a tag | |
82
+
75
83
  ### Flags
76
84
  | Value | Looks like | Use when | Default |
77
85
  |---|---|---|---|
@@ -98,12 +106,14 @@ Controlled with `value` + `onValueChange`; uncontrolled with `defaultValue`.
98
106
  ## Layout & spacing
99
107
  - The swatches take the container width in equal columns: each one stretches across its column (the height stays the tier's). A row wraps only when they no longer fit, and then the swatches split evenly over the rows (16 → 8 + 8, never 14 + 2); no column count to set. In a content-sized container they stand in one row at the tier size.
100
108
  - On a coarse pointer the swatches grow to the 44 px touch target (a dense grid cannot grow an invisible hit area past its neighbours) and wrap into more rows.
101
- - The keyboard focus ring sits outside the swatches; kit hosts (Modal / Drawer body, panels, cards) already keep `--prime-focus-space` padding, so the ring is never clipped. In your own `overflow` container, keep that padding.
109
+ - The keyboard focus ring sits outside the swatches; kit hosts (Modal / Drawer body, panels, cards) already keep room for it, so the ring is never clipped. In your own clipping container, keep the same room.
102
110
  - Label → swatches and swatches → hint use the tier `label-gap` / `hint-gap`; field → field 20.
103
111
 
104
112
  ## Accessibility
105
113
 
106
114
  ### Keyboard
115
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
116
+
107
117
  | Key | Action |
108
118
  |---|---|
109
119
  | `Tab` | Enters on the selected swatch (or the first one). |
@@ -112,6 +122,8 @@ Controlled with `value` + `onValueChange`; uncontrolled with `defaultValue`.
112
122
  | `Home` · `End` | Jumps to the first / last swatch and selects it. |
113
123
 
114
124
  ### ARIA
125
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
126
+
115
127
  - `role="radiogroup"` with one `role="radio"` button per swatch; the color name is the radio's name and `title`.
116
128
  - Named by `label`, `aria-labelledby`, `aria-label` or `labels.group`; the hint or the error is linked through `aria-describedby`.
117
129
  - The check mark is decorative; the selection is announced by `aria-checked`.
@@ -124,6 +136,7 @@ Controlled with `value` + `onValueChange`; uncontrolled with `defaultValue`.
124
136
  | `group` | `"Цвет"` | Accessible name of the group without a visible `label` and `aria-label`. |
125
137
  | `empty` | `"Без цвета"` | Name of the «no color» swatch (`allowEmpty`). |
126
138
  | `optional` | `"необязательно"` | Marker after the label when `optional`. |
139
+ | `colorNames` | `"Серый · Красный · Оранжевый · Жёлтый · Зелёный · Бирюзовый · Голубой · Синий · Фиолетовый · Розовый"` | Names of the palette hues (`mode="palette"`), by `PaletteColor` key; merges by key. |
127
140
 
128
141
  ## Examples
129
142
  | Example | Shows |
@@ -131,7 +144,8 @@ Controlled with `value` + `onValueChange`; uncontrolled with `defaultValue`.
131
144
  | [overview.tsx](examples/overview.tsx) | The kit palette inline under a field label, one color chosen — `label`, `defaultValue`. |
132
145
  | [sizes.tsx](examples/sizes.tsx) | Every size: the swatch height 20 to 40 px with the tier gap, the label stays the form's — `size`. |
133
146
  | [states.tsx](examples/states.tsx) | A default palette next to an invalid and a disabled one — `invalid`, `disabled`. |
134
- | [wrapping.tsx](examples/wrapping.tsx) | In a narrow column the swatches wrap by themselves into even rows and the arrows move by the visual rows. |
147
+ | [wrapping.tsx](examples/wrapping.tsx) | Twelve stage colors in a narrow column wrap by themselves into even rows, and the arrows move by the visual rows — `presets`. |
148
+ | [palette.tsx](examples/palette.tsx) | A pipeline stage takes a kit palette hue, so its badge and column read the same in both themes — `mode`, `palette`. |
135
149
  | [controlled.tsx](examples/controlled.tsx) | The parent owns the color, «no color» included, and names it in the hint — `value`, `onValueChange`, `allowEmpty`. |
136
150
  | [in-form.tsx](examples/in-form.tsx) | A calendar event form: the color is submitted by `name` and required on save: submitting an empty title or no color shakes the field, picking or typing clears the error — `name`, `required`, `error`. |
137
151
 
@@ -143,5 +157,5 @@ Controlled with `value` + `onValueChange`; uncontrolled with `defaultValue`.
143
157
  - Dozens of presets → use ColorPicker.
144
158
 
145
159
  ## Related
146
- - **Built from:** [Label](../label/COMPONENT.md) (`label`), [Hint](../hint/COMPONENT.md) (`hint`, `error`)
160
+ - **Built from:** [Label](../label/COMPONENT.md) (`label`), [Hint](../hint/COMPONENT.md) (`hint`, `error`), [VisuallyHidden](../visually-hidden/COMPONENT.md)
147
161
  - **See also:** [ColorField](../color-field/COMPONENT.md), [ColorPicker](../color-picker/COMPONENT.md) (`ColorPresets`, `ColorPicker.Swatches`), [Radio](../radio/COMPONENT.md)
@@ -1,16 +1,15 @@
1
1
  /* Layout of the ColorSwatches scenarios: semantic tokens only. */
2
2
 
3
- /* in-form.tsx: field → field 20, group → actions 32. */
3
+ /* in-form.tsx: the field column (a Fieldset, fields 20 apart) → actions 32. */
4
4
  .form {
5
5
  display: flex;
6
6
  flex-direction: column;
7
- gap: var(--prime-space-5);
8
- width: min(100%, var(--prime-modal-width-s));
7
+ gap: var(--prime-space-8);
8
+ width: min(100%, var(--prime-layout-form-width-s));
9
9
  }
10
10
 
11
11
  .actions {
12
12
  display: flex;
13
- margin-top: var(--prime-space-3);
14
13
  }
15
14
 
16
15
  /* wrapping.tsx: a narrow column. */
@@ -1,5 +1,5 @@
1
1
  /** A calendar event form: the color is submitted by `name` and required on save: submitting an empty title or no color shakes the field, picking or typing clears the error — `name`, `required`, `error`. */
2
- import { Button, ColorSwatches, Input } from "prime-ui-kit";
2
+ import { Button, ColorSwatches, Fieldset, Input } from "prime-ui-kit";
3
3
  import * as React from "react";
4
4
 
5
5
  import styles from "./examples.module.css";
@@ -17,22 +17,24 @@ export default function ColorSwatchesInFormExample() {
17
17
 
18
18
  return (
19
19
  <form className={styles.form} noValidate onSubmit={submit}>
20
- <Input.Root label="Название события" required error={titleError} reserveSupportRow>
21
- <Input.Wrapper>
22
- <Input.Field
23
- name="title"
24
- defaultValue="Встреча с поставщиком"
25
- onValueChange={() => setTitleError(undefined)}
26
- />
27
- </Input.Wrapper>
28
- </Input.Root>
29
- <ColorSwatches
30
- label="Цвет в календаре"
31
- name="color"
32
- required
33
- error={error}
34
- onValueChange={() => setError(undefined)}
35
- />
20
+ <Fieldset>
21
+ <Input.Root label="Название события" required error={titleError} reserveSupportRow>
22
+ <Input.Wrapper>
23
+ <Input.Field
24
+ name="title"
25
+ defaultValue="Встреча с поставщиком"
26
+ onValueChange={() => setTitleError(undefined)}
27
+ />
28
+ </Input.Wrapper>
29
+ </Input.Root>
30
+ <ColorSwatches
31
+ label="Цвет в календаре"
32
+ name="color"
33
+ required
34
+ error={error}
35
+ onValueChange={() => setError(undefined)}
36
+ />
37
+ </Fieldset>
36
38
  <div className={styles.actions}>
37
39
  <Button.Root type="submit">Сохранить</Button.Root>
38
40
  </div>
@@ -0,0 +1,24 @@
1
+ /** A pipeline stage takes a kit palette hue, so its badge and column read the same in both themes — `mode`, `palette`. */
2
+ import { Badge, ColorSwatches, type PaletteColor } from "prime-ui-kit";
3
+ import * as React from "react";
4
+
5
+ const STAGE_HUES: PaletteColor[] = ["gray", "blue", "teal", "green", "yellow", "orange", "red"];
6
+
7
+ export default function ColorSwatchesPaletteExample() {
8
+ const [hue, setHue] = React.useState<PaletteColor | null>("teal");
9
+
10
+ return (
11
+ <>
12
+ <ColorSwatches
13
+ mode="palette"
14
+ label="Цвет этапа «Переговоры»"
15
+ palette={STAGE_HUES}
16
+ value={hue}
17
+ onValueChange={setHue}
18
+ />
19
+ <div>
20
+ <Badge.Root color={hue ?? "gray"}>Переговоры</Badge.Root>
21
+ </div>
22
+ </>
23
+ );
24
+ }
@@ -1,12 +1,27 @@
1
- /** In a narrow column the swatches wrap by themselves into even rows and the arrows move by the visual rows. */
1
+ /** Twelve stage colors in a narrow column wrap by themselves into even rows, and the arrows move by the visual rows — `presets`. */
2
2
  import { ColorSwatches } from "prime-ui-kit";
3
3
 
4
4
  import styles from "./examples.module.css";
5
5
 
6
+ const STAGE_COLORS = [
7
+ { value: "#ef4444", label: "Красный" },
8
+ { value: "#f97316", label: "Оранжевый" },
9
+ { value: "#eab308", label: "Жёлтый" },
10
+ { value: "#22c55e", label: "Зелёный" },
11
+ { value: "#14b8a6", label: "Бирюзовый" },
12
+ { value: "#5068f5", label: "Синий" },
13
+ { value: "#b91c1c", label: "Тёмно-красный" },
14
+ { value: "#c2410c", label: "Тёмно-оранжевый" },
15
+ { value: "#a16207", label: "Горчичный" },
16
+ { value: "#15803d", label: "Тёмно-зелёный" },
17
+ { value: "#0f766e", label: "Тёмно-бирюзовый" },
18
+ { value: "#2f4ae0", label: "Тёмно-синий" },
19
+ ];
20
+
6
21
  export default function ColorSwatchesWrappingExample() {
7
22
  return (
8
23
  <div className={styles.narrow}>
9
- <ColorSwatches label="Цвет этапа" defaultValue="#14b8a6" />
24
+ <ColorSwatches label="Цвет этапа" presets={STAGE_COLORS} defaultValue="#14b8a6" />
10
25
  </div>
11
26
  );
12
27
  }
@@ -64,65 +64,101 @@ CommandMenu.Root Modal + top-aligned palette panel, query and lo
64
64
  | `onRetry` | `() => void \| Promise<void>` | — | A retry button (`labels.retry`) under `loadError`; Enter in the search field runs it too. Return the request's promise to keep the button loading until it settles. |
65
65
  | `closeOnOutsideClick` | `boolean` | `true` | A click on the scrim closes the palette; focus returns to the opener. |
66
66
  | `closeOnEscape` | `boolean` | `true` | Escape closes the palette. |
67
- | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | `"m"` | Tier of the rows and the search row: item height, text, icon. |
67
+ | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | host tier, else `"m"` | Tier of the rows and the search row: item height, text, icon. Without it the tier of the host it opens from, else `m`. |
68
68
  | `labels` | `Partial<CommandMenuLabels>` | — | Built-in strings, see Labels. |
69
69
  | `aria-label · aria-labelledby · aria-describedby` | `string` | — | Name and description of the dialog when there is no `CommandMenu.Title` / `Description`. |
70
70
  | `children` | `ReactNode` | — (required) | Title, Description, Input, List, Footer. |
71
71
  | `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "children">` | — | `className` and the other attributes of the dialog panel. |
72
72
 
73
73
  ### CommandMenu.Title · CommandMenu.Description
74
- `ref` → `HTMLHeadingElement` / `HTMLParagraphElement`. `<h2>` / `<p>` above the search row; they name and describe the dialog. + native props except `id`.
74
+ `ref` → `HTMLHeadingElement` / `HTMLParagraphElement`. `<h2>` / `<p>` above the search row; they name and describe the dialog.
75
+
76
+ | Prop | Type | Default | Description |
77
+ |---|---|---|---|
78
+ | `…rest` | `Omit<HTMLAttributes<HTMLElement>, "id">` | — | `children`, `className` and the other attributes except `id`. |
75
79
 
76
80
  ### CommandMenu.Input
77
- `ref` → `HTMLInputElement`. The search row: a search icon and `<input role="combobox">` controlling the list, showing `CommandMenu.Root` `search`; takes focus on open. + native input props except `value` / `defaultValue`.
81
+ `ref` → `HTMLInputElement`. The search row: a search icon and `<input role="combobox">` controlling the list, showing `CommandMenu.Root` `search`; takes focus on open.
78
82
 
79
83
  | Prop | Type | Default | Description |
80
84
  |---|---|---|---|
81
85
  | `placeholder` | `string` | `labels.search` | Placeholder; also the default accessible name comes from `labels.search`. |
86
+ | `…rest` | `Omit<InputHTMLAttributes<HTMLInputElement>, "size" \| "type" \| "role" \| "value" \| "defaultValue">` | — | `className` and the other input attributes except `value` / `defaultValue`. |
82
87
 
83
88
  ### CommandMenu.List
84
- `ref` → `HTMLElement`. The scrolling `role="listbox"` under the search row; draws the load states of Root: skeleton rows, more rows loading at the end, the error with a retry. + native props.
89
+ `ref` → `HTMLElement`. The scrolling `role="listbox"` under the search row; draws the load states of Root: skeleton rows, more rows loading at the end, the error with a retry.
90
+
91
+ | Prop | Type | Default | Description |
92
+ |---|---|---|---|
93
+ | `…rest` | `Omit<HTMLAttributes<HTMLElement>, "role" \| "id">` | — | `children`, `className` and the other attributes. |
85
94
 
86
95
  ### CommandMenu.Group
87
- `ref` → `HTMLDivElement`. `<div role="group">` named by its `label`; hidden while none of its items match. + native `<div>` props.
96
+ `ref` → `HTMLDivElement`. `<div role="group">` named by its `label`; hidden while none of its items match.
88
97
 
89
98
  | Prop | Type | Default | Description |
90
99
  |---|---|---|---|
91
100
  | `label` | `ReactNode` | — | Heading of the group (caption, muted); also its accessible name. |
101
+ | `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "role">` | — | `children`, `className` and the other div attributes. |
92
102
 
93
103
  ### CommandMenu.Item
94
- `ref` → `HTMLButtonElement`. `<button role="option">`; the active item has `aria-selected` and the highlight fill. + native button props.
104
+ `ref` → `HTMLButtonElement`. `<button role="option">`; the active item has `aria-selected` and the highlight fill.
95
105
 
96
106
  | Prop | Type | Default | Description |
97
107
  |---|---|---|---|
98
- | `value` | `string` | — (required) | Text matched against the query together with `keywords`. |
108
+ | `value` | `string` | — (required) | Text matched against the query together with `keywords`. With `""` the item shows only while the query is empty or `keywords` match. |
99
109
  | `keywords` | `string` | — | Extra words for the query (synonyms, English names). |
100
110
  | `onSelect` | `() => void` | — | Runs the command: a click, or Enter while the item is active. |
101
111
  | `disabled` | `boolean` | `false` | Unavailable right now: shown muted with `aria-disabled`, skipped by the arrows, does not run. |
102
112
  | `persistent` | `boolean` | `false` | Shown whatever the query and never counted as a match (`CommandMenu.Empty` still shows); the arrows reach it after the matches. One «create from the query» item at the end of the list. |
113
+ | `…rest` | `Omit<ButtonHTMLAttributes<HTMLButtonElement>, "type" \| "role" \| "id" \| "onSelect">` | — | `children`, `className` and the other button attributes. |
103
114
 
104
- ### CommandMenu.ItemIcon · CommandMenu.ItemShortcut
105
- `ref` → `HTMLSpanElement` / `HTMLElement` (the `<kbd>`). The `aria-hidden` leading glyph / a `Kbd` key hint at the end of the item — a hint, not a handler. + native props.
115
+ ### CommandMenu.ItemIcon
116
+ `ref` → `HTMLSpanElement`. The `aria-hidden` leading glyph of the item.
117
+
118
+ | Prop | Type | Default | Description |
119
+ |---|---|---|---|
120
+ | `…rest` | `HTMLAttributes<HTMLSpanElement>` | — | `children` (the `Icon`), `className` and the other span attributes. |
121
+
122
+ ### CommandMenu.ItemShortcut
123
+ `ref` → `HTMLElement` (the `<kbd>`). A `Kbd` key hint at the end of the item — a hint, not a handler.
124
+
125
+ | Prop | Type | Default | Description |
126
+ |---|---|---|---|
127
+ | `children` | `ReactNode` | — (required) | The keys («⌘K»). |
128
+ | `…rest` | `Omit<HTMLAttributes<HTMLElement>, "children">` | — | `className` and the other attributes. |
106
129
 
107
130
  ### CommandMenu.ItemText
108
- `ref` → `HTMLSpanElement`. A `<span>` column: the title with an ellipsis and an optional description line. + native `<span>` props.
131
+ `ref` → `HTMLSpanElement`. A `<span>` column: the title with an ellipsis and an optional description line.
109
132
 
110
133
  | Prop | Type | Default | Description |
111
134
  |---|---|---|---|
112
135
  | `description` | `ReactNode` | — | Second line (path, details): caption, muted. |
136
+ | `…rest` | `HTMLAttributes<HTMLSpanElement>` | — | `children` (the title), `className` and the other span attributes. |
113
137
 
114
138
  ### CommandMenu.Empty
115
139
  `ref` → `HTMLDivElement`. A compact EmptyPage (`role="status"`) shown while nothing matches and nothing loads: `labels.empty` and `labels.emptyHint`, text only. An action for the query is a `persistent` `CommandMenu.Item` at the end of the list.
116
140
 
117
- ### CommandMenu.Footer · CommandMenu.FooterHint
118
- `ref` → `HTMLDivElement` / `HTMLSpanElement`. A bottom row of hints with a hairline above / one hint: every entry of `keys` in its own `Kbd`, then the label (`children`). + native props.
141
+ | Prop | Type | Default | Description |
142
+ |---|---|---|---|
143
+ | `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "role" \| "children">` | — | `className` and the other div attributes. |
144
+
145
+ ### CommandMenu.Footer
146
+ `ref` → `HTMLDivElement`. A bottom row of `CommandMenu.FooterHint`s with a hairline above.
147
+
148
+ | Prop | Type | Default | Description |
149
+ |---|---|---|---|
150
+ | `…rest` | `HTMLAttributes<HTMLDivElement>` | — | `children`, `className` and the other div attributes. |
151
+
152
+ ### CommandMenu.FooterHint
153
+ `ref` → `HTMLSpanElement`. One hint: every entry of `keys` in its own `Kbd`, then the label (`children`).
119
154
 
120
155
  | Prop | Type | Default | Description |
121
156
  |---|---|---|---|
122
- | `keys` | `ReactNode[]` | — (required) | FooterHint: the keys (text or icons). |
157
+ | `keys` | `ReactNode[]` | — (required) | The keys (text or icons). |
158
+ | `…rest` | `HTMLAttributes<HTMLSpanElement>` | — | `children` (the label), `className` and the other span attributes. |
123
159
 
124
160
  ## Variants
125
- One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radius`, `shadow-modal`, `--prime-modal-width-l` wide, placed in the top part of the viewport so the search row never jumps while the list filters.
161
+ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radius`, `shadow-modal`, the width of a Modal of size `l`, placed in the top part of the viewport (`placement="top"`) so the search row never jumps while the list filters.
126
162
 
127
163
  ### size (Root)
128
164
  | Value | Looks like | Use when | Default |
@@ -137,11 +173,11 @@ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radiu
137
173
  | Value | Looks like | Use when | Default |
138
174
  |---|---|---|---|
139
175
  | `disabled` (Item) | muted row, `aria-disabled`, skipped by the arrows | The command is unavailable right now | `false` |
140
- | `filter={false}` | every item shows whatever the query; the query is still marked in the labels | The owner searches on the server (`search`, `onSearchChange`) | `true` |
176
+ | `filter` | items filter by the query; off, every item shows whatever the query and the query is still marked in the labels | Off when the owner searches on the server (`search`, `onSearchChange`) | `true` |
141
177
  | `loading` | skeleton rows in the item geometry while no item is on screen; items on screen stay | Results load asynchronously | `false` |
142
178
  | `loadingMore` | skeleton rows after the items | The next page is loading (`hasMore` + `onLoadMore`) | `false` |
143
- | `closeOnOutsideClick={false}` | the scrim does not close it | A required pick | |
144
- | `closeOnEscape={false}` | Escape does nothing | A required pick that must not be skipped | |
179
+ | `closeOnOutsideClick` | a click on the scrim closes it; off, the scrim does not | Off for a required pick | `true` |
180
+ | `closeOnEscape` | Escape closes it; off, Escape does nothing | Off for a required pick that must not be skipped | `true` |
145
181
 
146
182
  **Combinations** — one palette per app; open it with ⌘K / Ctrl+K and a visible button. Add a Footer with key hints when keyboard use is not obvious. A server search: `search` / `onSearchChange` + `filter={false}` + `loading`; paging adds `hasMore`, `loadingMore`, `onLoadMore`; a failed request `loadError` + `onRetry`. Creating from the query is ONE `persistent` `CommandMenu.Item` at the end of the List («Создать клиента «{query}»», rendered while the query is not empty): it stays when a namesake matches (the query may be a new client of the same name), it never counts as a match, and the arrows reach it after the matches; while nothing matches it is the active item, so Enter runs it. `CommandMenu.Empty` then holds only the text — never put the action in both places.
147
183
 
@@ -164,7 +200,7 @@ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radiu
164
200
  | size | `size` | `data-size` on the tier wrapper |
165
201
 
166
202
  ## Layout & spacing
167
- - Width `--prime-modal-width-l`, max height 1.5 × `--prime-panel-max-height`; only the list scrolls.
203
+ - The width of a Modal of size `l`; the list is at most 1.5 × `--prime-panel-max-height` tall and only it scrolls.
168
204
  - One content column: title, search icon, group labels and item icons start 16 from the edge.
169
205
  - `CommandMenu.ItemIcon` holds the glyph at the tier icon size; `CommandMenu.ItemShortcut` is a `Kbd` one tier below, pushed to the end of the item.
170
206
  - Search row and footer are separated from the list by hairlines; the search row hairline is faint.
@@ -172,6 +208,8 @@ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radiu
172
208
  ## Accessibility
173
209
 
174
210
  ### Keyboard
211
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
212
+
175
213
  | Key | Action |
176
214
  |---|---|
177
215
  | `ArrowDown` · `ArrowUp` | Move the active item, wrapping; focus stays in the search field. |
@@ -181,6 +219,8 @@ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radiu
181
219
  | `Escape` | Closes the palette (`closeOnEscape`); focus returns to the opener. |
182
220
 
183
221
  ### ARIA
222
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
223
+
184
224
  - The palette is `role="dialog"` with `aria-modal`, named by `CommandMenu.Title` or `aria-label`.
185
225
  - The search field takes focus on open and has no focus ring: the caret is the indicator. Its `onChange`, `onKeyDown`, `onFocus` and `onBlur` reach the input.
186
226
  - The field is `role="combobox"` with `aria-controls` on the list and `aria-activedescendant` on the active item; items are `role="option"`, the active one `aria-selected`.
@@ -206,7 +246,7 @@ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radiu
206
246
  | [overview.tsx](examples/overview.tsx) | A button or ⌘K opens the palette: the query filters the groups by value and keywords, Enter runs the active command — `CommandMenu.Item`, `keywords`. |
207
247
  | [structure.tsx](examples/structure.tsx) | Optional parts: a visible title and description, a description line and a key hint in items, and a footer with key hints — `CommandMenu.Title`, `CommandMenu.ItemText`, `CommandMenu.ItemShortcut`, `CommandMenu.Footer`. |
208
248
  | [sizes.tsx](examples/sizes.tsx) | Every size tier: rows, text, icons and the search row follow it; match the density of the app — `size`. |
209
- | [states.tsx](examples/states.tsx) | A disabled item stays visible but muted and is skipped by the arrows, and an empty result speaks in the words of the task — `disabled`, `labels`. |
249
+ | [states.tsx](examples/states.tsx) | The palette while its first results load, with a disabled item that stays muted and is skipped by the arrows, and with an empty result in the words of the task — `loading`, `disabled`, `labels`. |
210
250
  | [server-search.tsx](examples/server-search.tsx) | Orders searched on the server: the parent loads results for the query and the next page at the end of the list; one persistent item at the end creates an order from the query, found or not — `search`, `onSearchChange`, `filter`, `loading`, `hasMore`, `loadingMore`, `onLoadMore`, `persistent`. |
211
251
  | [load-error.tsx](examples/load-error.tsx) | The results failed to load: the palette says so instead of the list, and a retry asks again with the button loading until the server answers; the first retry fails too, the second brings the results — `loadError`, `onRetry`. |
212
252
  | [dismiss.tsx](examples/dismiss.tsx) | A required pick during an import: a stray click on the scrim does not close the palette, only Escape or a choice — `closeOnOutsideClick`, `closeOnEscape`. |
@@ -225,5 +265,5 @@ One look: the floating layer of the ladder (it is a Modal), `--prime-modal-radiu
225
265
  - The create action both in `CommandMenu.Empty` and in the list → one `persistent` item; `Empty` holds only the text.
226
266
 
227
267
  ## Related
228
- - **Built from:** [Modal](../modal/COMPONENT.md) (dialog, scrim, focus, Title / Description), [ScrollContainer](../scroll-container/COMPONENT.md) (`List`), [EmptyPage](../empty-page/COMPONENT.md) (`Empty`, load error), [Skeleton](../skeleton/COMPONENT.md) (loading rows), [Button](../button/COMPONENT.md) (retry), [Kbd](../kbd/COMPONENT.md) (`ItemShortcut`, `FooterHint`), `Icon` (search glyph, retry)
268
+ - **Built from:** [Modal](../modal/COMPONENT.md) (dialog, scrim, focus, Title / Description), [ScrollContainer](../scroll-container/COMPONENT.md) (`List`), [EmptyPage](../empty-page/COMPONENT.md) (`Empty`, load error), [Skeleton](../skeleton/COMPONENT.md) (loading rows), [Button](../button/COMPONENT.md) (retry), [Kbd](../kbd/COMPONENT.md) (`ItemShortcut`, `FooterHint`), `Icon` (search glyph, retry), [VisuallyHidden](../visually-hidden/COMPONENT.md)
229
269
  - **See also:** [Dropdown](../dropdown/COMPONENT.md), [Select](../select/COMPONENT.md), [Modal](../modal/COMPONENT.md)
@@ -1,5 +1,5 @@
1
1
  /** Every size tier: rows, text, icons and the search row follow it; match the density of the app — `size`. */
2
- import { Button, CommandMenu, type ControlSize, Icon } from "prime-ui-kit";
2
+ import { Button, CommandMenu, type ControlSize, Icon, Typography } from "prime-ui-kit";
3
3
  import * as React from "react";
4
4
 
5
5
  const SIZES: ControlSize[] = ["xs", "s", "m", "l", "xl"];
@@ -12,20 +12,25 @@ export default function CommandMenuSizesExample() {
12
12
 
13
13
  return (
14
14
  <>
15
- {SIZES.map((tier) => (
16
- <Button.Root
17
- key={tier}
18
- size={tier}
19
- variant="soft"
20
- tone="neutral"
21
- onClick={() => {
22
- setSize(tier);
23
- setOpen(true);
24
- }}
25
- >
26
- {tier}
27
- </Button.Root>
28
- ))}
15
+ <div>
16
+ {SIZES.map((tier) => (
17
+ <div key={tier}>
18
+ <Button.Root
19
+ variant="soft"
20
+ tone="neutral"
21
+ onClick={() => {
22
+ setSize(tier);
23
+ setOpen(true);
24
+ }}
25
+ >
26
+ Найти файл
27
+ </Button.Root>
28
+ <Typography as="span" variant="caption" tone="muted">
29
+ {tier}
30
+ </Typography>
31
+ </div>
32
+ ))}
33
+ </div>
29
34
  <CommandMenu.Root
30
35
  open={open}
31
36
  onOpenChange={setOpen}
@@ -1,46 +1,68 @@
1
- /** A disabled item stays visible but muted and is skipped by the arrows, and an empty result speaks in the words of the task — `disabled`, `labels`. */
2
- import { Button, CommandMenu } from "prime-ui-kit";
1
+ /** The palette while its first results load, with a disabled item that stays muted and is skipped by the arrows, and with an empty result in the words of the task — `loading`, `disabled`, `labels`. */
2
+ import { Button, CommandMenu, Typography } from "prime-ui-kit";
3
3
  import * as React from "react";
4
4
 
5
- const CITIES = [
6
- "Москва",
7
- "Санкт-Петербург",
8
- "Новосибирск",
9
- "Екатеринбург",
10
- "Казань",
11
- "Нижний Новгород",
12
- "Самара",
13
- "Краснодар",
14
- ];
5
+ type PaletteState = "loading" | "disabled" | "labels.empty";
6
+
7
+ const STATES: PaletteState[] = ["loading", "disabled", "labels.empty"];
8
+
9
+ const CITIES = ["Москва", "Санкт-Петербург", "Новосибирск", "Екатеринбург", "Казань", "Самара"];
10
+
11
+ /** A city with no warehouse: the empty state opens on it. */
12
+ const NO_WAREHOUSE_QUERY = "Владивосток";
15
13
 
16
14
  export default function CommandMenuStatesExample() {
17
15
  const [open, setOpen] = React.useState(false);
16
+ const [state, setState] = React.useState<PaletteState>("disabled");
17
+ const [search, setSearch] = React.useState("");
18
18
  const close = () => setOpen(false);
19
19
 
20
20
  return (
21
21
  <>
22
- <Button.Root variant="soft" tone="neutral" onClick={() => setOpen(true)}>
23
- Выбрать склад
24
- </Button.Root>
22
+ <div>
23
+ {STATES.map((item) => (
24
+ <div key={item}>
25
+ <Button.Root
26
+ variant="soft"
27
+ tone="neutral"
28
+ onClick={() => {
29
+ setState(item);
30
+ setSearch(item === "labels.empty" ? NO_WAREHOUSE_QUERY : "");
31
+ setOpen(true);
32
+ }}
33
+ >
34
+ Выбрать склад
35
+ </Button.Root>
36
+ <Typography as="span" variant="caption" tone="muted">
37
+ {item}
38
+ </Typography>
39
+ </div>
40
+ ))}
41
+ </div>
25
42
  <CommandMenu.Root
26
43
  open={open}
27
44
  onOpenChange={setOpen}
45
+ search={search}
46
+ onSearchChange={setSearch}
47
+ loading={state === "loading"}
28
48
  aria-label="Выбор склада"
29
49
  labels={{ empty: "Склад не найден", emptyHint: "В этом городе склада пока нет" }}
30
50
  >
31
51
  <CommandMenu.Input placeholder="Город склада" />
32
52
  <CommandMenu.List>
33
53
  <CommandMenu.Empty />
34
- <CommandMenu.Group label="Склады">
35
- {CITIES.map((city) => (
36
- <CommandMenu.Item key={city} value={city} onSelect={close}>
37
- {city}
54
+ {state === "loading" ? null : (
55
+ <CommandMenu.Group label="Склады">
56
+ {CITIES.map((city) => (
57
+ <CommandMenu.Item key={city} value={city} onSelect={close}>
58
+ {city}
59
+ </CommandMenu.Item>
60
+ ))}
61
+ <CommandMenu.Item value="Калининград" disabled onSelect={close}>
62
+ Калининград — на ремонте
38
63
  </CommandMenu.Item>
39
- ))}
40
- <CommandMenu.Item value="Калининград" disabled onSelect={close}>
41
- Калининград — на ремонте
42
- </CommandMenu.Item>
43
- </CommandMenu.Group>
64
+ </CommandMenu.Group>
65
+ )}
44
66
  </CommandMenu.List>
45
67
  </CommandMenu.Root>
46
68
  </>