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
@@ -59,11 +59,11 @@ The toolbar and the chips are separate parts so a page can put them in different
59
59
  | `search` | `string` | — | Search text, controlled. |
60
60
  | `defaultSearch` | `string` | `""` | Initial search text, uncontrolled. |
61
61
  | `onSearchChange` | `(search: string) => void` | — | Every keystroke; debounce in the owner when it asks a server. |
62
- | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | `"m"` | Tier of the filter button, the search, the tags and the panel. |
62
+ | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | host tier, else `"m"` | Tier of the filter button, the search, the tags and the panel. Without it the tier of its host, else `m`. |
63
63
  | `collapsedLimit` | `number` | `12` | Values of one field shown before «Ещё N» (not while searching). |
64
64
  | `labels` | `Partial<SmartFilterLabels>` | — | Built-in strings, see Labels. |
65
- | `className` | `string` | — | Class on the root. |
66
65
  | `children` | `ReactNode` | — (required) | `SmartFilter.Toolbar` and `SmartFilter.Chips`, anywhere inside. |
66
+ | `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "children" \| "defaultValue" \| "onChange">` | — | `className` and the other div attributes. |
67
67
 
68
68
  ### SmartFilter.Toolbar
69
69
  `ref` → `HTMLDivElement`. A `<div>`: the search Input first, then the filter Button (a count Badge while filters apply); the anchor of the panel, a flush Popover.
@@ -80,10 +80,12 @@ The toolbar and the chips are separate parts so a page can put them in different
80
80
  |---|---|---|---|
81
81
  | `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "children">` | — | `className` and the other attributes of the chips row. |
82
82
 
83
- ### SmartFilterField
83
+ ### Types
84
+
85
+ #### `SmartFilterField`
84
86
  One entry of `fields`: data, not a part. Selected values missing from `options` stay visible so they can be removed.
85
87
 
86
- | Prop | Type | Default | Description |
88
+ | Field | Type | Default | Description |
87
89
  |---|---|---|---|
88
90
  | `key` | `string` | — (required) | Key of the field in the value. |
89
91
  | `label` | `string` | — (required) | Field name in the panel and the chips. |
@@ -91,10 +93,24 @@ One entry of `fields`: data, not a part. Selected values missing from `options`
91
93
  | `options` | `{ value: string; label: string; icon?: ReactNode; group?: string }[]` | — (required) | `options` fields: values; `icon` is a decorative kit Icon before the label; values with one `group` stay together under that heading, groups in the order they first appear. |
92
94
  | `finite` | `boolean` | `true` | `options` fields: a fixed set — hiding every value is refused. `false` for an open set (services, users). |
93
95
  | `multiple` | `boolean` | `true` | `options` fields: many values at once. `false` — one value and no hiding: a press picks only that value, a second press clears it (an API that takes one value per field). |
94
- | `formatValue` | `(value: number) => string` | `Russian digit groups` | `range` fields: a bound in the chip («1 000 ₽»). |
96
+ | `formatValue` | `(value: number) => string` | Russian digit groups | `range` fields: a bound in the chip («1 000 ₽»). |
97
+
98
+ ### Functions
99
+
100
+ #### `matchesSmartFilter(entry, item)`
101
+ `(entry: SmartFilterFieldValue \| undefined, item: string \| number \| Date \| null \| undefined) => boolean`
102
+
103
+ Checks one item's value against a field's entry on the client; an empty entry matches everything.
104
+
105
+ #### `resolveSmartFilterValues(entry, all)`
106
+ `(entry: SmartFilterFieldValue \| undefined, all: readonly string[]) => string[]`
95
107
 
96
- ### matchesSmartFilter · resolveSmartFilterValues · isSmartFilterRange
97
- Helpers. `matchesSmartFilter(entry, item)` checks one item's value on the client. `resolveSmartFilterValues(entry, all)` turns a fixed field into the list of values to ask a server for. `isSmartFilterRange(entry)` tells a range from a selection.
108
+ Turns a fixed field's entry into the list of values to ask a server for.
109
+
110
+ #### `isSmartFilterRange(entry)`
111
+ `(entry: SmartFilterFieldValue \| undefined) => entry is SmartFilterRange<number> \| SmartFilterRange<Date>`
112
+
113
+ Tells a range entry from a selection.
98
114
 
99
115
  ## Variants
100
116
 
@@ -141,7 +157,7 @@ same height and type.
141
157
  |---|---|---|
142
158
  | closed / open | filter button, search focus | button `aria-expanded`; the panel is a Popover below the toolbar |
143
159
  | value neutral | no selection | gray Badge |
144
- | value shown | press | blue Badge, `aria-pressed="true"`, `data-mode="include"` |
160
+ | value shown | press | the Badge's pressed (selected) look, `aria-pressed="true"`, `data-mode="include"` |
145
161
  | value hidden | «−», Alt+click, Shift+Enter | red Badge with «НЕ», `data-mode="exclude"`; its «−» stays visible and unhides |
146
162
  | cannot hide | last value of a `finite` field | the «−» is disabled |
147
163
  | searching | `search` | only matching values, the match in `accent-text` (a `<mark>`); fields with nothing found in a compact EmptyPage; the «Искать» row closes the panel |
@@ -151,10 +167,10 @@ same height and type.
151
167
  | no filters | empty value | no count on the button, no Chips |
152
168
 
153
169
  ## Layout & spacing
154
- - The panel is a flush Popover as wide as the toolbar; every section is a full-width row with its own padding (`--prime-space-3` × `--prime-space-4`, footer `--prime-space-2` × `--prime-space-4`), Dividers run edge to edge, the field label column is `--prime-space-24`.
155
- - The toolbar is one row of controls (`--prime-space-2` gap): the search first, growing from 9rem (`--prime-space-24` × 1.5), then the filter button at its own width. When less than 9rem is left beside the button, the button moves under the search; every row stays one control high. Search first, filter second — the active filters (`SmartFilter.Chips`) sit right under them.
170
+ - The panel is a flush Popover as wide as the toolbar; every section is a full-width row with its own padding (`--prime-space-3` × `--prime-space-4`, footer `--prime-space-2` × `--prime-space-4`), Dividers run edge to edge, the field label column is `--prime-space-24`; a row narrower than 24rem stacks the label over the values (an intrinsic wrap, no breakpoint).
171
+ - The toolbar is one row of controls (`--prime-space-2` gap): the search first, growing from 9rem (`--prime-space-24` × 1.5), then the filter button at its own width. When less than 9rem is left beside the button, the button moves under the search; every row stays one control high. Search first, filter second — the active filters (`SmartFilter.Chips`) sit under them.
156
172
  - Chips are Badges of the toolbar tier on the badge scale (`xs` → `s`), so a tag sits lower than the controls above it; «Добавить фильтр» is a tag of the same tier and «Сбросить все» a LinkButton with the tag's text size.
157
- - Values and chips wrap with `--prime-space-2` gaps; «Сбросить все» is pushed to the end.
173
+ - Values and chips wrap with `--prime-space-2` gaps; «Сбросить все» is pushed to the end. The chips row rises in with the first filter and closes up in place with the last (`partPresence`).
158
174
  - Option groups stack `--prime-space-3` apart, a caption `--prime-space-1` above each group's values. A range row holds two equal Inputs with a dash between them, centred on the field label.
159
175
  - While typing a search a range row stays only when its field name matches.
160
176
  - The root is a flex column (`--prime-space-3`): Toolbar, then Chips.
@@ -162,6 +178,8 @@ same height and type.
162
178
  ## Accessibility
163
179
 
164
180
  ### Keyboard
181
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
182
+
165
183
  | Key | Action |
166
184
  |---|---|
167
185
  | `Tab` | Moves through the panel values and their «−» (shown on focus). |
@@ -170,6 +188,8 @@ same height and type.
170
188
  | `Enter` · `Escape` | In the search, close the panel. |
171
189
 
172
190
  ### ARIA
191
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
192
+
173
193
  - The filter button has `aria-expanded` and `aria-haspopup="dialog"`; the panel is a non-modal `role="dialog"` named by a visually hidden `labels.filter` title.
174
194
  - Values are toggle buttons with `aria-pressed`; the «−» has its own name (`labels.hideValue` / `labels.unhideValue`); a hidden value carries the «НЕ» text, so meaning is never in color alone.
175
195
  - Fields with nothing found are announced through `role="status"`.
@@ -231,5 +251,5 @@ same height and type.
231
251
  - Cutting the «−» and the search off on the client for a one-value API → `multiple: false` and `searchable={false}`.
232
252
 
233
253
  ## Related
234
- - **Built from:** [Button](../button/COMPONENT.md), [Badge](../badge/COMPONENT.md), [Input](../input/COMPONENT.md), [Datepicker](../datepicker/COMPONENT.md), [Popover](../popover/COMPONENT.md), [Divider](../divider/COMPONENT.md), [Kbd](../kbd/COMPONENT.md), [EmptyPage](../empty-page/COMPONENT.md), [LinkButton](../link-button/COMPONENT.md), [Typography](../typography/COMPONENT.md), Icon (`action.search`, `action.filter`, `action.add`, `nav.chevronDown`)
254
+ - **Built from:** [Button](../button/COMPONENT.md), [Badge](../badge/COMPONENT.md), [Input](../input/COMPONENT.md), [Datepicker](../datepicker/COMPONENT.md), [Popover](../popover/COMPONENT.md), [Divider](../divider/COMPONENT.md), [Kbd](../kbd/COMPONENT.md), [EmptyPage](../empty-page/COMPONENT.md), [LinkButton](../link-button/COMPONENT.md), [Typography](../typography/COMPONENT.md), Icon (`action.search`, `action.filter`, `action.add`, `nav.chevronDown`), [VisuallyHidden](../visually-hidden/COMPONENT.md)
235
255
  - **See also:** [PageToolbar](../page-toolbar/COMPONENT.md), [TagSelect](../tag-select/COMPONENT.md), [DataTable](../data-table/COMPONENT.md)
@@ -8,27 +8,6 @@
8
8
  min-width: 0;
9
9
  }
10
10
 
11
- /* sizes.tsx: one tier per block, its caption right under it, blocks apart. */
12
- .sizes {
13
- display: flex;
14
- flex-direction: column;
15
- gap: var(--prime-space-8);
16
- width: 100%;
17
- min-width: 0;
18
- }
19
-
20
- .size {
21
- display: flex;
22
- flex-direction: column;
23
- align-items: center;
24
- gap: var(--prime-space-2);
25
- min-width: 0;
26
- }
27
-
28
- .size > :first-child {
29
- align-self: stretch;
30
- }
31
-
32
11
  /* A request row in the list: method, route (takes the room), service. */
33
12
  .request {
34
13
  display: flex;
@@ -1,6 +1,7 @@
1
1
  /** Deals narrowed by an amount from–to and a period from the calendar; each range is one readable chip, and the bounds go to the server as from / to parameters — `kind`, `formatValue`, `matchesSmartFilter`, `isSmartFilterRange`. */
2
2
  import {
3
3
  Card,
4
+ formatDateValue,
4
5
  isSmartFilterRange,
5
6
  matchesSmartFilter,
6
7
  SmartFilter,
@@ -62,7 +63,7 @@ const DEALS = [
62
63
  const INITIAL: SmartFilterValue = { amount: { from: 50_000, to: 500_000 } };
63
64
 
64
65
  const asParam = (bound: number | Date) =>
65
- bound instanceof Date ? bound.toISOString().slice(0, 10) : String(bound);
66
+ bound instanceof Date ? formatDateValue(bound) : String(bound);
66
67
 
67
68
  /** The query a server gets: a range becomes `key_from` / `key_to`, a selection its included values. */
68
69
  function toQuery(value: SmartFilterValue) {
@@ -1,8 +1,6 @@
1
1
  /** Every size tier: the filter button, the search, the tags and the panel follow one tier — `size`. */
2
2
  import { SmartFilter, type SmartFilterField, Typography } from "prime-ui-kit";
3
3
 
4
- import styles from "./examples.module.css";
5
-
6
4
  const FIELDS: SmartFilterField[] = [
7
5
  {
8
6
  key: "method",
@@ -16,9 +14,9 @@ const SIZES = ["xs", "s", "m", "l", "xl"] as const;
16
14
 
17
15
  export default function SmartFilterSizesExample() {
18
16
  return (
19
- <div className={styles.sizes}>
17
+ <div>
20
18
  {SIZES.map((size) => (
21
- <div key={size} className={styles.size}>
19
+ <div key={size}>
22
20
  <SmartFilter.Root fields={FIELDS} size={size} defaultValue={ONLY_GET}>
23
21
  <SmartFilter.Toolbar />
24
22
  <SmartFilter.Chips />
@@ -57,13 +57,13 @@ compact: the plot alone (no head, no value row); loading — the p
57
57
  | `layout` | `"default" \| "compact"` | `"default"` | `default` — the headline over an 80 px plot; `compact` — the plot alone at an `xs` control height with the dot at rest, for a DataTable cell; the scrubbed point shows in the tooltip and `aria-valuetext`. |
58
58
  | `change` | `"previous" \| "first" \| "none"` | `"previous"` | What the change badge of a shown point compares it with: `previous` — the point before it; `first` — the first point with a value (the change over the period); `none` — no badge. |
59
59
  | `summary` | `"latest" \| "sum" \| "average"` | `"latest"` | What the headline shows at rest: `latest` — the latest point (or `highlight`), for a level (MRR, conversion); `sum` — the period total, for a flow (revenue per day); `average` — the period mean. |
60
- | `highlight` | `number` | `the latest point with a value` | Index of the point at rest with `summary="latest"` (the current month): the headline returns to it; `bars` draw the other bars quieter. Not allowed with `sum` / `average`. |
60
+ | `highlight` | `number` | the latest point with a value | Index of the point at rest with `summary="latest"` (the current month): the headline returns to it; `bars` draw the other bars quieter. Not allowed with `sum` / `average`. |
61
61
  | `compareTo` | `number` | — | The same summary for the previous period («прошлые 30 дней»): the badge at rest compares the headline with it. Without it a `sum` / `average` headline shows no change at rest. |
62
62
  | `min` | `number` | — | The value axis reaches down to at least this value: a floor of zero, or one scale for several sparklines (a table column). Data below widens the scale, never gets cut. |
63
63
  | `max` | `number` | — | The value axis reaches up to at least this value; data above widens the scale. |
64
64
  | `reference` | `number` | — | A dashed horizontal line at this value — a plan, a target, an average; the scale holds it and the chart is described by `labels.reference`. |
65
65
  | `loading` | `boolean` | `false` | The series is on its way: Skeletons of the date, the value and the plot that cross-fade into the data; the title stays, the root is `aria-busy` and the chart is not focusable yet. |
66
- | `formatValue` | `(value: number) => string` | `Russian digit groups` | Display of a value in the headline, the tooltip, the reference description and the spoken point («312 400 ₽»). |
66
+ | `formatValue` | `(value: number) => string` | Russian digit groups | Display of a value in the headline, the tooltip, the reference description and the spoken point («312 400 ₽»). |
67
67
  | `labels` | `Partial<SparklineLabels>` | — | Built-in strings, see Labels. |
68
68
  | `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "children">` | — | `className`, `data-*` and the other div attributes on the root. |
69
69
 
@@ -139,6 +139,8 @@ Put it in a `Card` for a dashboard tile.
139
139
  ## Accessibility
140
140
 
141
141
  ### Keyboard
142
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
143
+
142
144
  | Key | Action |
143
145
  |---|---|
144
146
  | `←` · `→` · `↓` · `↑` | Previous or next point: `←` / `↓` back, `→` / `↑` forward, as on a slider. |
@@ -147,6 +149,8 @@ Put it in a `Card` for a dashboard tile.
147
149
  | `Escape` | Hides the tooltip and returns the headline to rest. |
148
150
 
149
151
  ### ARIA
152
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
153
+
150
154
  - The plot is `role="slider"` named by `label`; `aria-valuetext` speaks the point («8 окт: 312 400 ₽», `labels.point`); a point with no data speaks `labels.empty` («8 окт: Нет данных»). At rest with `sum` / `average` it speaks the period and the summary («9 сен – 8 окт: 8 914 000 ₽»). With `reference` the slider is described by `labels.reference` («Ориентир: 3%», `aria-describedby`). The headline follows the point under the pointer or the arrows, in text.
151
155
  - The headline with the value and change reads as plain text.
152
156
  - The change carries a sign and an arrow, never color alone; a negative bar goes down, not only red.
@@ -190,5 +194,5 @@ Put it in a `Card` for a dashboard tile.
190
194
  - A full Sparkline squeezed into a table cell, or its headline hidden with CSS → `layout="compact"`.
191
195
 
192
196
  ## Related
193
- - **Built from:** [Badge](../badge/COMPONENT.md) (change), [Skeleton](../skeleton/COMPONENT.md) (loading), `Icon` (trend arrow), `ChartTooltip` (the chart tooltip shared with ChartFrame)
197
+ - **Built from:** [Badge](../badge/COMPONENT.md) (change), [Skeleton](../skeleton/COMPONENT.md) (loading), `Icon` (trend arrow), `ChartTooltip` (the chart tooltip shared with ChartFrame), [ScrollContainer](../scroll-container/COMPONENT.md) (the tooltip's floating panel)
194
198
  - **See also:** [ChartFrame](../chart-frame/COMPONENT.md), [DataTable](../data-table/COMPONENT.md) (a compact Sparkline per row), [Card](../card/COMPONENT.md), [ProgressBar](../progress-bar/COMPONENT.md), [SegmentedControl](../segmented-control/COMPONENT.md)
@@ -2,7 +2,7 @@
2
2
 
3
3
  /* A dashboard card's width: the chart takes the card width. */
4
4
  .card {
5
- width: min(100%, var(--prime-modal-width-s));
5
+ width: min(100%, var(--prime-layout-form-width-s));
6
6
  }
7
7
 
8
8
  /* compact: a client list, the name and its trend on one line per client. */
@@ -14,8 +14,8 @@ const PROFIT: SparklinePoint[] = [
14
14
  { label: "авг", value: 280_000 },
15
15
  { label: "сен", value: 470_000 },
16
16
  { label: "окт", value: 390_000 },
17
- { label: "ноя", value: 0 },
18
- { label: "дек", value: 0 },
17
+ { label: "ноя", value: null },
18
+ { label: "дек", value: null },
19
19
  ];
20
20
 
21
21
  /** October is the current month: November and December are still empty. */
@@ -6,7 +6,7 @@
6
6
  > An indeterminate loading indicator: the kit ring with the share unknown — a quarter arc turning on a faint track while a request runs.
7
7
 
8
8
  ## When to use
9
- - A region is busy and has no content shape to hold (a running job, a request with no layout yet).
9
+ - Something is busy and has no content shape to hold (a running job on a status line, a request with no layout yet).
10
10
  - A status line next to text («Загружаем счета…»).
11
11
  - Inside a kit component that shows loading (it is the kit's one spinner).
12
12
 
@@ -51,7 +51,7 @@ Spinner <span role="status">; size and tone
51
51
  |---|---|---|---|
52
52
  | `default` | the color of the surrounding text | inside text, buttons, rows | yes |
53
53
  | `secondary` | `text-secondary` | a status line in secondary text | |
54
- | `muted` | `text-muted` | a loading region on a card | |
54
+ | `muted` | `text-muted` | a quiet status line under content | |
55
55
  | `accent` | `accent-text` | the one loading spot that should draw the eye | |
56
56
  | `success` · `warning` · `danger` | the status `*-text` color | loading inside a status block of that tone | |
57
57
 
@@ -61,29 +61,34 @@ Spinner <span role="status">; size and tone
61
61
  | `xs` | 14px | dense rows, inside `xs` controls | |
62
62
  | `s` | 16px | next to `body-s` text | |
63
63
  | `m` | 20px | standalone next to `body-m` text | |
64
- | `l` | 24px | a loading card or panel | |
65
- | `xl` | 32px | a loading page region | |
64
+ | `l` | 24px | next to `body-l` or a title | |
65
+ | `xl` | 32px | a running job with nothing to show yet, next to its explanation | |
66
66
  | — (omitted) | the host's icon size, else the control tier (16 on `m`) | inside a kit control or next to its text | yes |
67
67
 
68
68
  ## States
69
69
  | State | Driven by | DOM |
70
70
  |---|---|---|
71
+ | appearing | mounted | fades in over `fast` (`internal/enterMotion`), so a spinner that comes and goes never blinks |
71
72
  | spinning | mounted | the ring turns at a constant speed (`--prime-motion-loop × 3` per turn, linear) |
72
73
  | reduced motion | `prefers-reduced-motion` | the ring keeps turning, twice as slow (`--prime-motion-loop × 6` per turn) and linear: a loading cue is information, so the token is not zeroed |
73
74
  | size / tone | `size`, `tone` | `data-size` (the explicit size, else the host control tier, else `m`), `data-tone` (only for a non-default tone) |
74
75
 
75
76
  ## Layout & spacing
76
77
  - The ring fills the icon box: a stroke of two border widths (the line weight, an icon's stroke) — a round-capped quarter arc in the tone color over an 18% track of it; `inline-flex`, `vertical-align: middle`. The svg turns as a whole (a compositor transform).
77
- - Next to text: one row, `align-items: center`, gap = the tier gap (`--prime-control-m-gap`).
78
- - In a loading region: centered in the region with its explanation under it, gap `--prime-space-3`.
78
+ - Next to text: one row, `align-items: center`, 8px apart (the `m` tier gap).
79
+ - A region whose content has a shape (a card, a list) shows a `Skeleton` of that shape, not a spinner.
79
80
  - Render the real layout around it; never a full-screen overlay of spinners.
80
81
 
81
82
  ## Accessibility
82
83
 
83
84
  ### Keyboard
85
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
86
+
84
87
  No keyboard interaction.
85
88
 
86
89
  ### ARIA
90
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
91
+
87
92
  - `role="status"` with a visually hidden `labels.loading`, so screen readers learn that something is loading.
88
93
  - When the host already announces it is busy (`aria-busy` on a button or a region), pass `aria-hidden="true"`.
89
94
  - Under `prefers-reduced-motion` the ring keeps turning, slower and linear, so the loading cue stays readable.
@@ -98,17 +103,18 @@ No keyboard interaction.
98
103
  ## Examples
99
104
  | Example | Shows |
100
105
  |---|---|
101
- | [overview.tsx](examples/overview.tsx) | A loading status next to a short explanation; the spinner takes the text color. |
106
+ | [overview.tsx](examples/overview.tsx) | A loading status next to a short explanation; the spinner takes the text color and names the wait — `labels`. |
102
107
  | [variants.tsx](examples/variants.tsx) | Every ring color; `default` follows the surrounding text — `tone`. |
103
108
  | [sizes.tsx](examples/sizes.tsx) | Every size on the icon scale, 14 to 32 px — `size`. |
104
- | [loading-region.tsx](examples/loading-region.tsx) | A card that loads its content: the region says it is busy and the spinner stays hidden from screen readers — `aria-hidden`. |
105
109
 
106
110
  ## Mistakes
107
111
  - A hand-made spinner (`@keyframes spin` on a bordered circle) → use `Spinner`.
108
112
  - A `Spinner` next to a `loading` Button → the button already shows one.
109
113
  - Both `aria-busy` on the region and a spoken spinner inside → add `aria-hidden="true"` to the spinner.
110
114
  - A spinner for a known progress → ProgressBar / ProgressCircle.
115
+ - A spinner in a card or a list while its content loads → a `Skeleton` in the content's shape.
116
+ - Fading a conditional spinner in by hand → the spinner fades itself in.
111
117
 
112
118
  ## Related
113
- - **Built from:** `internal/ring` (the ring drawing, shared with ProgressCircle and the circle Button)
119
+ - **Built from:** `internal/ring` (the ring drawing, shared with ProgressCircle and the circle Button), `internal/enterMotion` (the fade-in), [VisuallyHidden](../visually-hidden/COMPONENT.md)
114
120
  - **See also:** [Skeleton](../skeleton/COMPONENT.md), [ProgressBar](../progress-bar/COMPONENT.md), [ProgressCircle](../progress-circle/COMPONENT.md), [Button](../button/COMPONENT.md), [EmptyPage](../empty-page/COMPONENT.md)
@@ -1,20 +1,8 @@
1
1
  /* Layout of the Spinner scenarios: semantic tokens only. */
2
2
 
3
- /* overview.tsx: spinner and text in one line, icon → text gap of the m tier. */
3
+ /* overview.tsx: spinner and text in one line, 8px apart (the m tier gap). */
4
4
  .status {
5
5
  display: inline-flex;
6
6
  align-items: center;
7
- gap: var(--prime-control-m-gap);
8
- }
9
-
10
- /* loading-region.tsx: the Card's size and its centered body. */
11
- .region {
12
- width: min(100%, var(--prime-modal-width-s));
13
- min-height: calc(var(--prime-space-24) * 2);
14
- }
15
-
16
- .loading {
17
- align-items: center;
18
- justify-content: center;
19
- gap: var(--prime-space-3);
7
+ gap: var(--prime-space-2);
20
8
  }
@@ -1,4 +1,4 @@
1
- /** A loading status next to a short explanation; the spinner takes the text color. */
1
+ /** A loading status next to a short explanation; the spinner takes the text color and names the wait — `labels`. */
2
2
  import { Spinner, Typography } from "prime-ui-kit";
3
3
 
4
4
  import styles from "./examples.module.css";
@@ -3,7 +3,7 @@
3
3
  **Category:** navigation
4
4
  **Kind:** navigation
5
5
 
6
- > Steps of a multi-step process with pending, active, completed and danger statuses.
6
+ > Steps of a multi-step process with pending, current, completed and danger statuses.
7
7
 
8
8
  ## When to use
9
9
  - Checkout, onboarding and setup wizards where the user moves through ordered steps.
@@ -23,13 +23,12 @@ import { Stepper } from "prime-ui-kit";
23
23
 
24
24
  ## Anatomy
25
25
  ```
26
- Stepper.Root <ol>; current step; chevrons between horizontal items
26
+ Stepper.Root <ol>; current step; chevrons between horizontal items, at the end of vertical rows with `arrows`
27
27
  └─ Stepper.Item <li> with a <button>; a direct child of Root (index = order)
28
- ├─ Stepper.Indicator circle: number, check when completed, or custom content
29
- ├─ Stepper.Content text column
30
- │ ├─ Stepper.Title step name
31
- │ └─ Stepper.Description muted support text
32
- └─ Stepper.Arrow trailing chevron for vertical rows that open a page or panel
28
+ ├─ Stepper.Indicator circle: number, check when completed, danger mark, or custom content
29
+ └─ Stepper.Content text column
30
+ ├─ Stepper.Title step name
31
+ └─ Stepper.Description muted support text
33
32
  ```
34
33
 
35
34
  ## API
@@ -37,34 +36,36 @@ Stepper.Root <ol>; current step; chevrons between horizontal ite
37
36
  <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
38
37
 
39
38
  ### Stepper.Root
40
- `ref` → `HTMLOListElement`. `<ol>` of items; owns the current step, numbers the items and adds chevrons between horizontal ones.
39
+ `ref` → `HTMLOListElement`. `<ol>` of items; owns the current step, numbers the items and draws the chevrons between horizontal ones and, with `arrows`, at the end of vertical rows.
41
40
 
42
41
  | Prop | Type | Default | Description |
43
42
  |---|---|---|---|
44
43
  | `value` | `number` | — | Current step, 0-based (controlled). |
45
44
  | `defaultValue` | `number` | `0` | Initial step (uncontrolled). |
46
45
  | `onValueChange` | `(index: number) => void` | — | Called with the index of the clicked item. |
47
- | `orientation` | `"horizontal" \| "vertical"` | `"vertical"` | Column of rows, or a row with chevrons that stacks below a 480px container. |
48
- | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | `"m"` | Indicator 20 · 24 · 28 · 32 · 36, title in the control text of the tier. |
46
+ | `orientation` | `"horizontal" \| "vertical"` | `"vertical"` | Column of rows, or one row with chevrons (steps shrink and wrap their titles) that stacks below a 480px container. |
47
+ | `arrows` | `boolean` | `false` | Every vertical row ends with a chevron: each step opens a page or panel. Horizontal steps already have their chevrons. |
48
+ | `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | host tier, else `"m"` | Indicator 20 · 24 · 28 · 32 · 36, title in the control text of the tier. Without it the tier of its host, else `m`. |
49
+ | `labels` | `Partial<StepperLabels>` | — | Built-in strings, see Labels. |
49
50
  | `children` | `ReactNode` | — | `Stepper.Item`s as direct children (an array from `map` is fine). |
50
51
  | `…rest` | `Omit<OlHTMLAttributes<HTMLOListElement>, "defaultValue" \| "onChange">` | — | `aria-label`, `className` and the other list attributes. |
51
52
 
52
53
  ### Stepper.Item
53
- `ref` → `HTMLButtonElement`. One step: an `<li>` with a `<button>` (and, between horizontal steps, the decorative chevron in front of it); `aria-current="step"` when active.
54
+ `ref` → `HTMLButtonElement`. One step: an `<li>` with a `<button>` (and, between horizontal steps, the decorative chevron in front of it); `aria-current="step"` on the current one; a completed or danger step adds its status to its name.
54
55
 
55
56
  | Prop | Type | Default | Description |
56
57
  |---|---|---|---|
57
- | `status` | `"pending" \| "active" \| "completed" \| "danger"` | — | Overrides the status derived from `value` (before → `completed`, equal → `active`, after → `pending`). |
58
+ | `status` | `"pending" \| "current" \| "completed" \| "danger"` | — | Overrides the status derived from `value` (before → `completed`, equal → `current`, after → `pending`). |
58
59
  | `disabled` | `boolean` | — | The item cannot be selected. |
59
- | `children` | `ReactNode` | — | `Stepper.Indicator`, `Stepper.Content`, optional `Stepper.Arrow`. |
60
+ | `children` | `ReactNode` | — | `Stepper.Indicator` and `Stepper.Content`. |
60
61
  | `…rest` | `Omit<ButtonHTMLAttributes<HTMLButtonElement>, "type">` | — | `onClick` (runs first; `preventDefault()` stops the selection), `className` and the other button attributes. |
61
62
 
62
63
  ### Stepper.Indicator
63
- `ref` → `HTMLSpanElement`. The circle (`aria-hidden`): the item number, or a check when completed.
64
+ `ref` → `HTMLSpanElement`. The circle (`aria-hidden`): the item number, a check when completed, the danger mark on a danger step; a status change cross-fades the glyph.
64
65
 
65
66
  | Prop | Type | Default | Description |
66
67
  |---|---|---|---|
67
- | `children` | `ReactNode` | — | Replaces the default content, e.g. `<Icon name="status.danger" />`. |
68
+ | `children` | `ReactNode` | — | Replaces the default content, e.g. `<Icon name="status.info" />`. |
68
69
  | `…rest` | `HTMLAttributes<HTMLSpanElement>` | — | `className` and the other span attributes. |
69
70
 
70
71
  ### Stepper.Content
@@ -81,20 +82,18 @@ Stepper.Root <ol>; current step; chevrons between horizontal ite
81
82
  |---|---|---|---|
82
83
  | `…rest` | `HTMLAttributes<HTMLSpanElement>` | — | `className` and the other span attributes. |
83
84
 
84
- ### Stepper.Arrow
85
- `ref` → `SVGSVGElement`. Trailing chevron (`aria-hidden`) for vertical items that open a page or panel.
86
-
87
- | Prop | Type | Default | Description |
88
- |---|---|---|---|
89
- | `…rest` | `Omit<SVGAttributes<SVGSVGElement>, "children">` | — | `className` and the other svg attributes. |
90
-
91
85
  ## Variants
92
86
 
93
87
  ### orientation
94
88
  | Value | Looks like | Use when | Default |
95
89
  |---|---|---|---|
96
- | `vertical` | full-width rows (indicator · text · optional arrow); hover `fill-subtle`, active row on `fill-subtle`, danger row on `danger-soft` | side columns of wizards, step lists with descriptions | yes |
97
- | `horizontal` | items in a row with placeholder-colored chevrons between them; hover → primary text; below a 30rem container the items stack one per row and chevrons hide | checkout headers with short step names | |
90
+ | `vertical` | full-width rows (indicator · text · the chevron with `arrows`); hover `fill-subtle`, the current row on `fill-subtle`, danger row on `danger-soft` | side columns of wizards, step lists with descriptions | yes |
91
+ | `horizontal` | one row of items with placeholder-colored chevrons between them; a cramped step wraps its title, the row never wraps; hover → primary text; below a 30rem container the items stack one per row and chevrons hide | checkout headers with short step names | |
92
+
93
+ ### Flags
94
+ | Value | Looks like | Use when | Default |
95
+ |---|---|---|---|
96
+ | `arrows` | every vertical row ends with a placeholder-colored chevron (`aria-hidden`); horizontal steps keep their separators only | each vertical step opens a page or panel | off |
98
97
 
99
98
  ### size
100
99
  | Value | Looks like | Use when | Default |
@@ -111,66 +110,76 @@ Title uses the control text of the tier, Description the hint text of the tier.
111
110
  | Value | Looks like | Use when | Default |
112
111
  |---|---|---|---|
113
112
  | `pending` | `fill-muted` circle with secondary number, secondary text | steps after the current one | derived |
114
- | `active` | accent circle with a `space-1` `accent-soft` halo, primary text | the current step | derived |
115
- | `completed` | `accent-soft` circle with an accent check (`Icon action.check`), primary text | finished steps | derived |
116
- | `danger` | horizontal: `danger-soft` circle; vertical: solid danger circle on a `danger-soft` row; danger text | a step that needs attention | |
113
+ | `current` | accent circle with a `space-1` `accent-soft` halo, primary text | the current step | derived |
114
+ | `completed` | `accent-soft` circle with an accent check (`Icon action.check`), primary text; `labels.completed` added to the name | finished steps | derived |
115
+ | `danger` | the danger mark (`Icon status.danger`) — horizontal: on a `danger-soft` circle; vertical: on a solid danger circle in a `danger-soft` row; danger text; `labels.danger` added to the name | a step that needs attention | |
117
116
 
118
- Derive statuses from `value`; set `status="danger"` only on the failing step with an indicator that is not a number (`<Icon name="status.danger" />`); disable steps the user cannot reach yet. Avoid `Stepper.Arrow` in horizontal mode (the root adds chevrons) and several `active` steps.
117
+ Derive statuses from `value`; set `status="danger"` only on the failing step; disable steps the user cannot reach yet. Never mark several steps `current`.
119
118
 
120
119
  ## States
121
120
  | State | Driven by | DOM |
122
121
  |---|---|---|
123
- | status | `value` or `status` | `data-status` on the button and the indicator; `aria-current="step"` on the active item |
122
+ | status | `value` or `status` | `data-status` on the button and the indicator; `aria-current="step"` on the current item; a visually hidden status after the name of a completed or danger step |
124
123
  | disabled | `disabled` | native `disabled`, `data-disabled="true"`, `text-disabled`, muted indicator without halo |
125
- | hover / active | pointer | vertical `fill-subtle` / `fill-subtle-active`; horizontal text → primary; press scale |
124
+ | hover / press | pointer | vertical `fill-subtle` / `fill-subtle-active`; horizontal text → primary; press scale |
126
125
  | focus-visible | keyboard | outer focus ring |
127
126
 
128
127
  Root attributes: `data-orientation`, `data-size`. Uncontrolled (`defaultValue`) clicks still select items.
129
128
 
130
- Motion: a status change moves the indicator's fill, color and halo over `base`; the row fill and text color change over `fast`; press scales the step to `--prime-motion-press-scale`. Under reduced motion the indicator changes at once.
129
+ Motion: a status change fades the indicator's fill, color and halo over `base` and cross-fades its glyph (number ⇄ check ⇄ danger mark); the row fill and text color change over `fast`; press scales the step to `--prime-motion-press-scale` (the kit press). Under reduced motion the press does not scale and the glyph only fades.
131
130
 
132
131
  ## Layout & spacing
133
132
  - The root is a size container (`inline-size: 100%`): give it a definite width, a shrink-wrapped parent collapses it.
134
- - Wizard: stepper column and form side by side with `gap: var(--prime-space-8)`, stacking on narrow widths.
135
- - Vertical rows are separated by `var(--prime-space-1)` (`var(--prime-space-2)` at `size="xl"`); the same value is the row gap of a wrapping horizontal stepper.
133
+ - Wizard: stepper column and form side by side with the page gap between groups, stacking on narrow widths.
134
+ - Vertical rows are separated by `var(--prime-space-1)` (`var(--prime-space-2)` at `size="xl"`); the same value is the row gap of a horizontal stepper stacked in a narrow container.
135
+ - On a coarse pointer a step is at least the touch target high.
136
136
  - Horizontal steps and their chevrons sit 8 · 12 · 16 · 20 · 24 apart (xs → xl); below a 30rem (480px) container each step takes its own full-width row with the vertical row padding.
137
137
  - Indicator → text gap 8 (xs, s) · 12 (m, l) · 16 (xl); titles are medium weight and wrap long words.
138
138
 
139
139
  ## Accessibility
140
140
 
141
141
  ### Keyboard
142
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
143
+
142
144
  | Key | Action |
143
145
  |---|---|
144
146
  | `Tab` | Moves focus between items; a disabled one is skipped. |
145
147
  | `Enter` · `Space` | Selects the item. |
146
148
 
147
149
  ### ARIA
148
- - Semantic `<ol>`; each item is a `<button>` inside an `<li>`; the active one has `aria-current="step"`.
149
- - Separators, indicator and arrow are `aria-hidden`; the name comes from Title (and Description).
150
+ <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
151
+
152
+ - Semantic `<ol>`; each item is a `<button>` inside an `<li>`; the current one has `aria-current="step"`.
153
+ - Separators, indicator and arrows are `aria-hidden`; the name comes from Title and Description, and a completed or danger step adds `labels.completed` or `labels.danger` to it.
150
154
  - Give the `<ol>` an `aria-label` when there are several steppers on a page.
151
155
 
152
156
  ### Labels
153
157
  <!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
154
158
 
155
- No `labels`.
159
+ | Key | Default | Used for |
160
+ |---|---|---|
161
+ | `completed` | `"пройден"` | Spoken after the name of a completed step; the check is only seen. |
162
+ | `danger` | `"требует внимания"` | Spoken after the name of a step that needs attention; its colour and glyph are only seen. |
156
163
 
157
164
  ## Examples
158
165
  | Example | Shows |
159
166
  |---|---|
160
167
  | [overview.tsx](examples/overview.tsx) | Steps of a process: done ones get a check, the current one is highlighted — `defaultValue`. |
161
168
  | [sizes.tsx](examples/sizes.tsx) | Every size tier: indicator 20 to 36 px, title in the control text of the tier — `size`. |
162
- | [states.tsx](examples/states.tsx) | Statuses that come from the server, a failed step with its own indicator and a locked step — `status`, `disabled`. |
163
- | [with-icon.tsx](examples/with-icon.tsx) | Vertical rows that open a page or panel end with a chevron — `Stepper.Arrow`. |
169
+ | [states.tsx](examples/states.tsx) | Statuses that come from the server, a failed step marked by a glyph and a locked step — `status`, `disabled`. |
170
+ | [with-icon.tsx](examples/with-icon.tsx) | Vertical rows that open a page or panel end with a chevron — `arrows`. |
164
171
  | [orientation.tsx](examples/orientation.tsx) | A row of steps with chevrons between them above the content, and a column for a side panel — `orientation`. |
165
172
  | [controlled.tsx](examples/controlled.tsx) | The parent owns the current step: Back and Next move it, far steps stay locked until reached — `value`, `onValueChange`. |
166
- | [narrow.tsx](examples/narrow.tsx) | A horizontal stepper in a phone-width container stacks one step per row and hides the chevrons. |
173
+ | [narrow.tsx](examples/narrow.tsx) | A horizontal stepper in a phone-width container stacks one step per row and hides the chevrons — `orientation`. |
167
174
 
168
175
  ## Mistakes
169
176
  - Wrapping `Stepper.Item` in another component or element → it must be a direct child of Root (it throws otherwise).
170
177
  - 1-based `value` → steps are 0-based.
171
178
  - Adding separators by hand in horizontal mode → every step already draws its chevron.
172
- - `status="error"` → the status is `danger`; give it an indicator that is not a number so it does not read by color only.
179
+ - `status="error"` → the status is `danger`; its indicator shows the danger mark and its name says it, so it never reads by color only.
180
+ - A chevron added by hand at the end of a vertical row → set `arrows` on the root.
181
+ - `status="active"` → the step a person is on is `current`.
173
182
 
174
183
  ## Related
175
- - **Built from:** Icon (`action.check`, `nav.chevronRight`)
184
+ - **Built from:** Icon (`action.check`, `status.danger`, `nav.chevronRight`), `internal/glyphSwap` (the indicator glyph), [VisuallyHidden](../visually-hidden/COMPONENT.md)
176
185
  - **See also:** [Tabs](../tabs/COMPONENT.md), [Pagination](../pagination/COMPONENT.md), [Timeline](../timeline/COMPONENT.md), [ProgressBar](../progress-bar/COMPONENT.md)
@@ -1,10 +1,5 @@
1
1
  /* Layout of the Stepper scenarios: semantic tokens only. */
2
2
 
3
- /* The stepper measures its own width (container query), so its wrapper needs one. */
4
- .wide {
5
- width: 100%;
6
- }
7
-
8
3
  /* A side column for a vertical stepper (288px), with anything under it a group gap away. */
9
4
  .column {
10
5
  display: grid;
@@ -14,7 +9,7 @@
14
9
 
15
10
  /* A phone-width container (320px). */
16
11
  .narrow {
17
- width: min(100%, calc(var(--prime-drawer-width-s) - var(--prime-space-10)));
12
+ width: min(100%, var(--prime-layout-min-width));
18
13
  }
19
14
 
20
15
  /* Back / Next under the stepper. */
@@ -1,4 +1,4 @@
1
- /** A horizontal stepper in a phone-width container stacks one step per row and hides the chevrons. */
1
+ /** A horizontal stepper in a phone-width container stacks one step per row and hides the chevrons — `orientation`. */
2
2
  import { Stepper } from "prime-ui-kit";
3
3
 
4
4
  import styles from "./examples.module.css";
@@ -1,19 +1,14 @@
1
1
  /** Every size tier: indicator 20 to 36 px, title in the control text of the tier — `size`. */
2
2
  import { Stepper, Typography } from "prime-ui-kit";
3
3
 
4
- import styles from "./examples.module.css";
5
-
6
4
  const SIZES = ["xs", "s", "m", "l", "xl"] as const;
7
5
  const STEPS = ["Аккаунт", "Команда", "Готово"];
8
6
 
9
7
  export default function StepperSizesExample() {
10
8
  return (
11
- <>
9
+ <div>
12
10
  {SIZES.map((size) => (
13
- <div key={size} className={styles.wide}>
14
- <Typography as="span" variant="caption" tone="muted">
15
- {size}
16
- </Typography>
11
+ <div key={size}>
17
12
  <Stepper.Root orientation="horizontal" size={size} defaultValue={1}>
18
13
  {STEPS.map((title) => (
19
14
  <Stepper.Item key={title}>
@@ -24,8 +19,11 @@ export default function StepperSizesExample() {
24
19
  </Stepper.Item>
25
20
  ))}
26
21
  </Stepper.Root>
22
+ <Typography as="span" variant="caption" tone="muted">
23
+ {size}
24
+ </Typography>
27
25
  </div>
28
26
  ))}
29
- </>
27
+ </div>
30
28
  );
31
29
  }