prime-ui-kit 0.10.0 → 0.11.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.
- package/README.md +114 -58
- package/bin/prime-ui-kit.js +52 -0
- package/dist/chunks/{chunk-EJ2ZVQYL.js → chunk-6TI4DSM5.js} +1904 -2040
- package/dist/chunks/chunk-CUH6DJ57.js +29335 -0
- package/dist/chunks/{chunk-T7CLQXGB.js → chunk-GKX3QAUC.js} +159 -6
- package/dist/chunks/chunk-Q3BFRQHZ.js +1729 -0
- package/dist/chunks/chunk-WDTSHOTD.js +6841 -0
- package/dist/color-picker.d.ts +5 -3
- package/dist/color-picker.js +7 -3
- package/dist/components/accordion/Accordion.d.ts +1 -1
- package/dist/components/avatar/Avatar.d.ts +2 -2
- package/dist/components/badge/Badge.d.ts +17 -5
- package/dist/components/badge/tier.d.ts +6 -2
- package/dist/components/banner/Banner.d.ts +1 -1
- package/dist/components/breadcrumb/Breadcrumb.d.ts +1 -1
- package/dist/components/button/Button.d.ts +42 -10
- package/dist/components/button-group/ButtonGroup.d.ts +22 -5
- package/dist/components/card/Card.d.ts +19 -3
- package/dist/components/chart-frame/ChartFrame.d.ts +229 -0
- package/dist/components/chat/Chat.d.ts +192 -0
- package/dist/components/chat/ChatPinned.d.ts +44 -0
- package/dist/components/chat/ChatRows.d.ts +30 -0
- package/dist/components/chat/MessageList.d.ts +95 -0
- package/dist/components/chat/chatContext.d.ts +54 -0
- package/dist/components/chat/groupMessages.d.ts +50 -0
- package/dist/components/chat/messageFlow.d.ts +42 -0
- package/dist/components/checkbox/Checkbox.d.ts +9 -4
- package/dist/components/code-block/CodeBlock.d.ts +1 -1
- package/dist/components/color-field/ColorField.d.ts +44 -0
- package/dist/components/color-picker/ColorPicker.d.ts +5 -4
- package/dist/components/color-picker/ColorPresets.d.ts +22 -14
- package/dist/components/color-swatches/ColorSwatches.d.ts +9 -4
- package/dist/components/command-menu/CommandMenu.d.ts +41 -11
- package/dist/components/composer/Composer.d.ts +234 -0
- package/dist/components/composer/format.d.ts +39 -0
- package/dist/components/composer/liveWave.d.ts +30 -0
- package/dist/components/composer/useRecorder.d.ts +72 -0
- package/dist/components/confirm-dialog/ConfirmDialog.d.ts +57 -0
- package/dist/components/crossfade/Crossfade.d.ts +8 -2
- package/dist/components/data-table/ColumnsMenu.d.ts +19 -0
- package/dist/components/data-table/DataTable.d.ts +72 -8
- package/dist/components/data-table/Footer.d.ts +1 -1
- package/dist/components/data-table/Head.d.ts +6 -2
- package/dist/components/data-table/Row.d.ts +33 -5
- package/dist/components/data-table/StateRows.d.ts +4 -2
- package/dist/components/data-table/context.d.ts +14 -0
- package/dist/components/data-table/reorder.d.ts +86 -0
- package/dist/components/data-table/rowEvents.d.ts +14 -0
- package/dist/components/data-table/rows.d.ts +17 -1
- package/dist/components/data-table/serverMode.d.ts +8 -0
- package/dist/components/data-table/types.d.ts +16 -0
- package/dist/components/data-table/useColumnHover.d.ts +2 -1
- package/dist/components/data-table/useInfiniteRows.d.ts +4 -1
- package/dist/components/data-table/useRowSelection.d.ts +5 -4
- package/dist/components/datepicker/Datepicker.d.ts +8 -3
- package/dist/components/datepicker/DatepickerPanel.d.ts +2 -2
- package/dist/components/datepicker/panelLayout.d.ts +2 -2
- package/dist/components/description-list/DescriptionList.d.ts +59 -0
- package/dist/components/digit-input/DigitInput.d.ts +12 -5
- package/dist/components/divider/Divider.d.ts +1 -1
- package/dist/components/dnd/Dnd.d.ts +48 -20
- package/dist/components/dnd/dragSession.d.ts +27 -2
- package/dist/components/dnd/geometry.d.ts +12 -4
- package/dist/components/dnd/labels.d.ts +12 -1
- package/dist/components/dnd/useDragSource.d.ts +2 -0
- package/dist/components/dnd/useDropTarget.d.ts +6 -3
- package/dist/components/dnd/useFlipList.d.ts +8 -2
- package/dist/components/dnd/useSortableList.d.ts +13 -10
- package/dist/components/drawer/Drawer.d.ts +14 -12
- package/dist/components/dropdown/Dropdown.d.ts +23 -4
- package/dist/components/empty-page/EmptyPage.d.ts +35 -5
- package/dist/components/fieldset/Fieldset.d.ts +24 -0
- package/dist/components/file-upload/FileUpload.d.ts +152 -14
- package/dist/components/gallery/Gallery.d.ts +79 -0
- package/dist/components/gallery/layout.d.ts +34 -0
- package/dist/components/gantt/Gantt.d.ts +102 -0
- package/dist/components/gantt/GanttBar.d.ts +51 -0
- package/dist/components/gantt/GanttRow.d.ts +75 -0
- package/dist/components/gantt/ganttModel.d.ts +133 -0
- package/dist/components/gantt/useEdgeAutoScroll.d.ts +12 -0
- package/dist/components/hint/Hint.d.ts +1 -1
- package/dist/components/index.d.ts +53 -22
- package/dist/components/input/Input.d.ts +58 -4
- package/dist/components/kanban/Kanban.d.ts +77 -12
- package/dist/components/kbd/Kbd.d.ts +1 -1
- package/dist/components/label/Label.d.ts +1 -1
- package/dist/components/link-button/LinkButton.d.ts +2 -2
- package/dist/components/login-form/LoginForm.d.ts +1 -1
- package/dist/components/media-viewer/MediaViewer.d.ts +55 -0
- package/dist/components/media-viewer/ViewerVideo.d.ts +53 -0
- package/dist/components/media-viewer/originShape.d.ts +17 -0
- package/dist/components/media-viewer/physics.d.ts +81 -0
- package/dist/components/media-viewer/types.d.ts +59 -0
- package/dist/components/media-viewer/viewerEngine.d.ts +202 -0
- package/dist/components/message/Message.d.ts +83 -0
- package/dist/components/message/MessageCards.d.ts +64 -0
- package/dist/components/message/MessageFile.d.ts +36 -0
- package/dist/components/message/MessageMedia.d.ts +12 -0
- package/dist/components/message/MessageParts.d.ts +206 -0
- package/dist/components/message/MessageReactionBar.d.ts +35 -0
- package/dist/components/message/MessageTyping.d.ts +25 -0
- package/dist/components/message/bubbleHug.d.ts +10 -0
- package/dist/components/message/bubbleMorph.d.ts +43 -0
- package/dist/components/message/formatMessageTime.d.ts +2 -0
- package/dist/components/message/types.d.ts +21 -0
- package/dist/components/modal/DialogGuard.d.ts +21 -0
- package/dist/components/modal/DialogParts.d.ts +90 -15
- package/dist/components/modal/Modal.d.ts +9 -47
- package/dist/components/modal/ModalDialog.d.ts +46 -0
- package/dist/components/native-select/NativeSelect.d.ts +3 -3
- package/dist/components/notification/Notification.d.ts +7 -1
- package/dist/components/page-content/PageContent.d.ts +58 -1
- package/dist/components/page-toolbar/PageToolbar.d.ts +8 -7
- package/dist/components/pagination/Pagination.d.ts +1 -1
- package/dist/components/popover/Popover.d.ts +12 -4
- package/dist/components/progress-bar/ProgressBar.d.ts +30 -10
- package/dist/components/progress-circle/ProgressCircle.d.ts +42 -7
- package/dist/components/radio/Radio.d.ts +4 -4
- package/dist/components/scroll-container/ScrollContainer.d.ts +27 -7
- package/dist/components/scroll-container/useFitFlag.d.ts +5 -0
- package/dist/components/scroll-container/useScrollEdges.d.ts +53 -0
- package/dist/components/scroll-container/useWheelToInline.d.ts +10 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +23 -6
- package/dist/components/select/Select.d.ts +38 -8
- package/dist/components/select/SelectItem.d.ts +7 -4
- package/dist/components/select/selectContext.d.ts +12 -3
- package/dist/components/sheet/Sheet.d.ts +49 -0
- package/dist/components/skeleton/Skeleton.d.ts +1 -1
- package/dist/components/slider/Slider.d.ts +17 -3
- package/dist/components/smart-filter/SmartFilter.d.ts +48 -6
- package/dist/components/smart-filter/model.d.ts +31 -11
- package/dist/components/sparkline/Sparkline.d.ts +19 -4
- package/dist/components/spinner/Spinner.d.ts +4 -3
- package/dist/components/stepper/Stepper.d.ts +2 -2
- package/dist/components/switch/Switch.d.ts +14 -4
- package/dist/components/tabs/Tabs.d.ts +5 -3
- package/dist/components/tag-select/TagOptionMenu.d.ts +6 -2
- package/dist/components/tag-select/TagSelect.d.ts +27 -9
- package/dist/components/tag-select/VirtualOptions.d.ts +24 -0
- package/dist/components/textarea/Textarea.d.ts +48 -2
- package/dist/components/thumbnail/Thumbnail.d.ts +48 -6
- package/dist/components/timeline/Timeline.d.ts +1 -1
- package/dist/components/tooltip/Tooltip.d.ts +9 -4
- package/dist/components/typography/Typography.d.ts +1 -1
- package/dist/components/video-note/VideoNote.d.ts +27 -0
- package/dist/components/voice-player/VoicePlayer.d.ts +33 -0
- package/dist/components/voice-player/getWaveform.d.ts +7 -0
- package/dist/hooks/useEdgeOverflow.d.ts +17 -8
- package/dist/hooks/useImageStatus.d.ts +10 -10
- package/dist/hooks/useModalLayer.d.ts +6 -4
- package/dist/hooks/usePosition.d.ts +16 -1
- package/dist/hooks/usePresence.d.ts +1 -1
- package/dist/hooks/useSwipeDismiss.d.ts +11 -19
- package/dist/hooks/useTokenValue.d.ts +10 -0
- package/dist/hooks/useUploadQueue.d.ts +60 -0
- package/dist/hooks/useVirtualRows.d.ts +74 -0
- package/dist/icon-set.d.ts +29 -0
- package/dist/{icons.js → icon-set.js} +75 -15
- package/dist/icons/Icon.d.ts +6 -5
- package/dist/icons/glyph.d.ts +18 -3
- package/dist/icons/glyphs/bike.d.ts +2 -0
- package/dist/icons/glyphs/captions.d.ts +2 -0
- package/dist/icons/glyphs/chart-gantt.d.ts +2 -0
- package/dist/icons/glyphs/circle-alert.d.ts +2 -0
- package/dist/icons/glyphs/code.d.ts +2 -0
- package/dist/icons/glyphs/columns-3.d.ts +2 -0
- package/dist/icons/glyphs/crown.d.ts +2 -0
- package/dist/icons/glyphs/disc.d.ts +2 -0
- package/dist/icons/glyphs/file.d.ts +2 -0
- package/dist/icons/glyphs/flag.d.ts +2 -0
- package/dist/icons/glyphs/forward.d.ts +2 -0
- package/dist/icons/glyphs/fuel.d.ts +2 -0
- package/dist/icons/glyphs/funnel.d.ts +2 -0
- package/dist/icons/glyphs/globe.d.ts +2 -0
- package/dist/icons/glyphs/headset.d.ts +2 -0
- package/dist/icons/glyphs/megaphone.d.ts +2 -0
- package/dist/icons/glyphs/motorbike.d.ts +2 -0
- package/dist/icons/glyphs/pin.d.ts +2 -0
- package/dist/icons/glyphs/reply.d.ts +2 -0
- package/dist/icons/glyphs/scale.d.ts +2 -0
- package/dist/icons/glyphs/star.d.ts +2 -0
- package/dist/icons/glyphs/strikethrough.d.ts +2 -0
- package/dist/icons/glyphs/text-quote.d.ts +2 -0
- package/dist/icons/glyphs/trophy.d.ts +2 -0
- package/dist/icons/glyphs/video.d.ts +2 -0
- package/dist/icons/glyphs/volume-2.d.ts +2 -0
- package/dist/icons/glyphs/volume-x.d.ts +2 -0
- package/dist/icons/glyphs/zoom-in.d.ts +2 -0
- package/dist/icons/glyphs/zoom-out.d.ts +2 -0
- package/dist/icons/index.d.ts +1 -1
- package/dist/icons/registry.d.ts +59 -0
- package/dist/index.css +1 -13089
- package/dist/index.d.ts +7 -2
- package/dist/index.js +57 -9
- package/dist/internal/AnchorRectContext.d.ts +9 -0
- package/dist/internal/ChoiceField.d.ts +2 -2
- package/dist/internal/ControlSizeContext.d.ts +1 -1
- package/dist/internal/Disclosure.d.ts +15 -0
- package/dist/internal/FieldAction.d.ts +38 -0
- package/dist/internal/FieldCommit.d.ts +46 -0
- package/dist/internal/FieldFrame.d.ts +1 -1
- package/dist/internal/HighlightMatch.d.ts +5 -3
- package/dist/internal/MorphText.d.ts +3 -2
- package/dist/internal/ProgressLegend.d.ts +18 -0
- package/dist/internal/VisuallyHidden.d.ts +5 -1
- package/dist/internal/attachmentTile.d.ts +64 -0
- package/dist/internal/attachmentTile.module.css.d.ts +2 -0
- package/dist/internal/disabledContext.d.ts +7 -0
- package/dist/internal/edgeAutoScroll.d.ts +30 -0
- package/dist/internal/fileFormat.d.ts +5 -0
- package/dist/internal/fileName.d.ts +9 -0
- package/dist/internal/fileSize.d.ts +2 -0
- package/dist/internal/formatClock.d.ts +2 -0
- package/dist/internal/glyphSwap.d.ts +19 -0
- package/dist/internal/iconBox.module.css.d.ts +2 -0
- package/dist/internal/imageSlot.d.ts +3 -1
- package/dist/internal/leaveInPlace.d.ts +9 -0
- package/dist/internal/listbox.d.ts +19 -0
- package/dist/internal/mediaDisk.d.ts +14 -0
- package/dist/internal/mediaFrame.d.ts +2 -0
- package/dist/internal/mediaKind.d.ts +7 -0
- package/dist/internal/mediaPlayer.d.ts +135 -0
- package/dist/internal/mediaSession.d.ts +13 -0
- package/dist/internal/messageList.d.ts +121 -0
- package/dist/internal/messagePart.d.ts +106 -0
- package/dist/internal/overlay/FloatingPanel.d.ts +1 -1
- package/dist/internal/overlay/focus.d.ts +23 -2
- package/dist/internal/overlay/useFloatingLayer.d.ts +2 -2
- package/dist/internal/palette.d.ts +7 -0
- package/dist/internal/progressSegments.d.ts +39 -2
- package/dist/internal/readReceipts.d.ts +11 -0
- package/dist/internal/richText.d.ts +40 -0
- package/dist/internal/ring.d.ts +64 -0
- package/dist/internal/sticky.d.ts +2 -0
- package/dist/internal/surfaceDepth.d.ts +2 -0
- package/dist/internal/transcript.d.ts +73 -0
- package/dist/internal/transfer.d.ts +79 -0
- package/dist/internal/transferDisk.d.ts +76 -0
- package/dist/internal/useNearView.d.ts +7 -0
- package/dist/internal/usePendingChanges.d.ts +18 -0
- package/dist/internal/useRangeSelection.d.ts +41 -0
- package/dist/layout/app-header/AppHeader.d.ts +21 -3
- package/dist/layout/bottom-nav/BottomNav.d.ts +27 -7
- package/dist/layout/index.d.ts +2 -2
- package/dist/layout/sidebar/Sidebar.d.ts +1 -1
- package/dist/skill/SKILL.md +130 -0
- package/dist/skill/anti-slop.md +224 -0
- package/dist/skill/api-contract.md +295 -0
- package/dist/skill/cheatsheet.md +317 -0
- package/dist/skill/checklist.md +91 -0
- package/dist/skill/choosing.md +164 -0
- package/dist/skill/components.md +177 -0
- package/dist/skill/composition.md +312 -0
- package/dist/skill/foundations.md +186 -0
- package/dist/skill/layouts.md +262 -0
- package/dist/skill/motion.md +211 -0
- package/dist/skill/patterns/chat.module.css +33 -0
- package/dist/skill/patterns/chat.tsx +838 -0
- package/dist/skill/patterns/dashboard.module.css +44 -0
- package/dist/skill/patterns/dashboard.tsx +326 -0
- package/dist/skill/patterns/detail-page.module.css +74 -0
- package/dist/skill/patterns/detail-page.tsx +209 -0
- package/dist/skill/patterns/form-drawer.module.css +14 -0
- package/dist/skill/patterns/form-drawer.tsx +240 -0
- package/dist/skill/patterns/list-page.module.css +19 -0
- package/dist/skill/patterns/list-page.tsx +334 -0
- package/dist/skill/patterns/screen-states.module.css +54 -0
- package/dist/skill/patterns/screen-states.tsx +186 -0
- package/dist/skill/patterns/settings-page.module.css +47 -0
- package/dist/skill/patterns/settings-page.tsx +217 -0
- package/dist/skill/reference/components/accordion/COMPONENT.md +175 -0
- package/dist/skill/reference/components/accordion/examples/collapsible.tsx +27 -0
- package/dist/skill/reference/components/accordion/examples/controlled.tsx +36 -0
- package/dist/skill/reference/components/accordion/examples/examples.module.css +10 -0
- package/dist/skill/reference/components/accordion/examples/multiple.tsx +31 -0
- package/dist/skill/reference/components/accordion/examples/overview.tsx +39 -0
- package/dist/skill/reference/components/accordion/examples/sizes.tsx +28 -0
- package/dist/skill/reference/components/accordion/examples/states.tsx +31 -0
- package/dist/skill/reference/components/accordion/examples/variants.tsx +35 -0
- package/dist/skill/reference/components/accordion/examples/with-icon.tsx +47 -0
- package/dist/skill/reference/components/avatar/COMPONENT.md +166 -0
- package/dist/skill/reference/components/avatar/examples/examples.module.css +25 -0
- package/dist/skill/reference/components/avatar/examples/overview.tsx +18 -0
- package/dist/skill/reference/components/avatar/examples/presence.tsx +47 -0
- package/dist/skill/reference/components/avatar/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/avatar/examples/src-from-state.tsx +30 -0
- package/dist/skill/reference/components/avatar/examples/states.tsx +39 -0
- package/dist/skill/reference/components/avatar/examples/team-group.tsx +41 -0
- package/dist/skill/reference/components/avatar/examples/variants.tsx +40 -0
- package/dist/skill/reference/components/badge/COMPONENT.md +193 -0
- package/dist/skill/reference/components/badge/examples/applied-filters.tsx +47 -0
- package/dist/skill/reference/components/badge/examples/examples.module.css +32 -0
- package/dist/skill/reference/components/badge/examples/filter-values.tsx +39 -0
- package/dist/skill/reference/components/badge/examples/in-controls.tsx +23 -0
- package/dist/skill/reference/components/badge/examples/overview.tsx +13 -0
- package/dist/skill/reference/components/badge/examples/server-tags.tsx +61 -0
- package/dist/skill/reference/components/badge/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/badge/examples/states.tsx +59 -0
- package/dist/skill/reference/components/badge/examples/variants.tsx +38 -0
- package/dist/skill/reference/components/badge/examples/with-icon.tsx +50 -0
- package/dist/skill/reference/components/banner/COMPONENT.md +165 -0
- package/dist/skill/reference/components/banner/examples/dismissible.tsx +38 -0
- package/dist/skill/reference/components/banner/examples/examples.module.css +32 -0
- package/dist/skill/reference/components/banner/examples/narrow.tsx +23 -0
- package/dist/skill/reference/components/banner/examples/overview.tsx +18 -0
- package/dist/skill/reference/components/banner/examples/page-strip.tsx +53 -0
- package/dist/skill/reference/components/banner/examples/sizes.tsx +29 -0
- package/dist/skill/reference/components/banner/examples/structure.tsx +45 -0
- package/dist/skill/reference/components/banner/examples/variants.tsx +43 -0
- package/dist/skill/reference/components/breadcrumb/COMPONENT.md +137 -0
- package/dist/skill/reference/components/breadcrumb/examples/ellipsis.tsx +12 -0
- package/dist/skill/reference/components/breadcrumb/examples/examples.module.css +11 -0
- package/dist/skill/reference/components/breadcrumb/examples/overflow.tsx +26 -0
- package/dist/skill/reference/components/breadcrumb/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/breadcrumb/examples/sizes.tsx +24 -0
- package/dist/skill/reference/components/breadcrumb/examples/with-icon.tsx +14 -0
- package/dist/skill/reference/components/button/COMPONENT.md +211 -0
- package/dist/skill/reference/components/button/examples/as-child.tsx +15 -0
- package/dist/skill/reference/components/button/examples/circle.tsx +67 -0
- package/dist/skill/reference/components/button/examples/download.tsx +45 -0
- package/dist/skill/reference/components/button/examples/examples.module.css +54 -0
- package/dist/skill/reference/components/button/examples/hold-to-confirm.tsx +34 -0
- package/dist/skill/reference/components/button/examples/in-form.tsx +45 -0
- package/dist/skill/reference/components/button/examples/label-morph.tsx +38 -0
- package/dist/skill/reference/components/button/examples/on-colored-host.tsx +29 -0
- package/dist/skill/reference/components/button/examples/over-media.tsx +36 -0
- package/dist/skill/reference/components/button/examples/overview.tsx +13 -0
- package/dist/skill/reference/components/button/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/button/examples/states.tsx +38 -0
- package/dist/skill/reference/components/button/examples/toggle.tsx +21 -0
- package/dist/skill/reference/components/button/examples/variants.tsx +32 -0
- package/dist/skill/reference/components/button/examples/with-icon.tsx +41 -0
- package/dist/skill/reference/components/button-group/COMPONENT.md +172 -0
- package/dist/skill/reference/components/button-group/examples/controlled.tsx +29 -0
- package/dist/skill/reference/components/button-group/examples/examples.module.css +8 -0
- package/dist/skill/reference/components/button-group/examples/full-width.tsx +19 -0
- package/dist/skill/reference/components/button-group/examples/in-form.tsx +55 -0
- package/dist/skill/reference/components/button-group/examples/orientation.tsx +19 -0
- package/dist/skill/reference/components/button-group/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/button-group/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/button-group/examples/states.tsx +33 -0
- package/dist/skill/reference/components/button-group/examples/with-icon.tsx +45 -0
- package/dist/skill/reference/components/card/COMPONENT.md +218 -0
- package/dist/skill/reference/components/card/examples/content-templates.tsx +67 -0
- package/dist/skill/reference/components/card/examples/examples.module.css +84 -0
- package/dist/skill/reference/components/card/examples/flat.tsx +25 -0
- package/dist/skill/reference/components/card/examples/interactive.tsx +28 -0
- package/dist/skill/reference/components/card/examples/kpi-media.tsx +42 -0
- package/dist/skill/reference/components/card/examples/narrow.tsx +47 -0
- package/dist/skill/reference/components/card/examples/overview.tsx +39 -0
- package/dist/skill/reference/components/card/examples/panel-chart.tsx +44 -0
- package/dist/skill/reference/components/card/examples/variants.tsx +40 -0
- package/dist/skill/reference/components/chart-frame/COMPONENT.md +265 -0
- package/dist/skill/reference/components/chart-frame/examples/controlled.tsx +92 -0
- package/dist/skill/reference/components/chart-frame/examples/examples.module.css +6 -0
- package/dist/skill/reference/components/chart-frame/examples/narrow.tsx +46 -0
- package/dist/skill/reference/components/chart-frame/examples/overview.tsx +127 -0
- package/dist/skill/reference/components/chart-frame/examples/states.tsx +78 -0
- package/dist/skill/reference/components/chart-frame/examples/tooltip.tsx +158 -0
- package/dist/skill/reference/components/chat/COMPONENT.md +336 -0
- package/dist/skill/reference/components/chat/examples/controlled.tsx +68 -0
- package/dist/skill/reference/components/chat/examples/examples.module.css +38 -0
- package/dist/skill/reference/components/chat/examples/group-chat.tsx +130 -0
- package/dist/skill/reference/components/chat/examples/live.tsx +89 -0
- package/dist/skill/reference/components/chat/examples/narrow.tsx +46 -0
- package/dist/skill/reference/components/chat/examples/overview.tsx +839 -0
- package/dist/skill/reference/components/chat/examples/search.tsx +61 -0
- package/dist/skill/reference/components/chat/examples/structure.tsx +28 -0
- package/dist/skill/reference/components/checkbox/COMPONENT.md +171 -0
- package/dist/skill/reference/components/checkbox/examples/controlled.tsx +41 -0
- package/dist/skill/reference/components/checkbox/examples/examples.module.css +69 -0
- package/dist/skill/reference/components/checkbox/examples/in-form.tsx +34 -0
- package/dist/skill/reference/components/checkbox/examples/indicator.tsx +54 -0
- package/dist/skill/reference/components/checkbox/examples/overview.tsx +10 -0
- package/dist/skill/reference/components/checkbox/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/checkbox/examples/states.tsx +48 -0
- package/dist/skill/reference/components/checkbox/examples/variants.tsx +30 -0
- package/dist/skill/reference/components/checkbox/examples/without-label.tsx +13 -0
- package/dist/skill/reference/components/code-block/COMPONENT.md +108 -0
- package/dist/skill/reference/components/code-block/examples/color-scheme.tsx +16 -0
- package/dist/skill/reference/components/code-block/examples/examples.module.css +21 -0
- package/dist/skill/reference/components/code-block/examples/narrow.tsx +14 -0
- package/dist/skill/reference/components/code-block/examples/overview.tsx +19 -0
- package/dist/skill/reference/components/code-block/examples/variants.tsx +21 -0
- package/dist/skill/reference/components/color-field/COMPONENT.md +163 -0
- package/dist/skill/reference/components/color-field/examples/controlled.tsx +33 -0
- package/dist/skill/reference/components/color-field/examples/examples.module.css +22 -0
- package/dist/skill/reference/components/color-field/examples/in-form.tsx +45 -0
- package/dist/skill/reference/components/color-field/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/color-field/examples/presets.tsx +20 -0
- package/dist/skill/reference/components/color-field/examples/sizes.tsx +14 -0
- package/dist/skill/reference/components/color-field/examples/states.tsx +12 -0
- package/dist/skill/reference/components/color-field/examples/validation.tsx +29 -0
- package/dist/skill/reference/components/color-picker/COMPONENT.md +339 -0
- package/dist/skill/reference/components/color-picker/examples/controlled.tsx +37 -0
- package/dist/skill/reference/components/color-picker/examples/examples.module.css +48 -0
- package/dist/skill/reference/components/color-picker/examples/formats.tsx +26 -0
- package/dist/skill/reference/components/color-picker/examples/in-form.tsx +52 -0
- package/dist/skill/reference/components/color-picker/examples/overview.tsx +37 -0
- package/dist/skill/reference/components/color-picker/examples/panel.tsx +41 -0
- package/dist/skill/reference/components/color-picker/examples/presets-sizes.tsx +28 -0
- package/dist/skill/reference/components/color-picker/examples/presets.tsx +35 -0
- package/dist/skill/reference/components/color-picker/examples/sizes.tsx +26 -0
- package/dist/skill/reference/components/color-picker/examples/states.tsx +22 -0
- package/dist/skill/reference/components/color-picker/examples/validation.tsx +24 -0
- package/dist/skill/reference/components/color-swatches/COMPONENT.md +146 -0
- package/dist/skill/reference/components/color-swatches/examples/controlled.tsx +22 -0
- package/dist/skill/reference/components/color-swatches/examples/examples.module.css +19 -0
- package/dist/skill/reference/components/color-swatches/examples/in-form.tsx +41 -0
- package/dist/skill/reference/components/color-swatches/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/color-swatches/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/color-swatches/examples/states.tsx +20 -0
- package/dist/skill/reference/components/color-swatches/examples/wrapping.tsx +12 -0
- package/dist/skill/reference/components/command-menu/COMPONENT.md +225 -0
- package/dist/skill/reference/components/command-menu/examples/controlled-open.tsx +29 -0
- package/dist/skill/reference/components/command-menu/examples/controlled.tsx +42 -0
- package/dist/skill/reference/components/command-menu/examples/dismiss.tsx +39 -0
- package/dist/skill/reference/components/command-menu/examples/load-error.tsx +65 -0
- package/dist/skill/reference/components/command-menu/examples/overview.tsx +61 -0
- package/dist/skill/reference/components/command-menu/examples/server-search.tsx +91 -0
- package/dist/skill/reference/components/command-menu/examples/sizes.tsx +53 -0
- package/dist/skill/reference/components/command-menu/examples/states.tsx +48 -0
- package/dist/skill/reference/components/command-menu/examples/structure.tsx +54 -0
- package/dist/skill/reference/components/composer/COMPONENT.md +310 -0
- package/dist/skill/reference/components/composer/examples/attachments.tsx +36 -0
- package/dist/skill/reference/components/composer/examples/controlled.tsx +46 -0
- package/dist/skill/reference/components/composer/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/composer/examples/formatting.tsx +15 -0
- package/dist/skill/reference/components/composer/examples/narrow.tsx +22 -0
- package/dist/skill/reference/components/composer/examples/overview.tsx +39 -0
- package/dist/skill/reference/components/composer/examples/reply-edit.tsx +68 -0
- package/dist/skill/reference/components/composer/examples/sizes.tsx +23 -0
- package/dist/skill/reference/components/composer/examples/states.tsx +31 -0
- package/dist/skill/reference/components/composer/examples/typing.tsx +24 -0
- package/dist/skill/reference/components/composer/examples/voice.tsx +21 -0
- package/dist/skill/reference/components/confirm-dialog/COMPONENT.md +124 -0
- package/dist/skill/reference/components/confirm-dialog/examples/controlled-open.tsx +35 -0
- package/dist/skill/reference/components/confirm-dialog/examples/failure.tsx +37 -0
- package/dist/skill/reference/components/confirm-dialog/examples/overview.tsx +24 -0
- package/dist/skill/reference/components/confirm-dialog/examples/variants.tsx +44 -0
- package/dist/skill/reference/components/crossfade/COMPONENT.md +118 -0
- package/dist/skill/reference/components/crossfade/examples/examples.module.css +93 -0
- package/dist/skill/reference/components/crossfade/examples/fill.tsx +79 -0
- package/dist/skill/reference/components/crossfade/examples/overview.tsx +102 -0
- package/dist/skill/reference/components/crossfade/examples/record-switch.tsx +67 -0
- package/dist/skill/reference/components/data-table/COMPONENT.md +366 -0
- package/dist/skill/reference/components/data-table/examples/appearance.tsx +62 -0
- package/dist/skill/reference/components/data-table/examples/columns-visibility.tsx +151 -0
- package/dist/skill/reference/components/data-table/examples/content-width.tsx +65 -0
- package/dist/skill/reference/components/data-table/examples/controlled.tsx +56 -0
- package/dist/skill/reference/components/data-table/examples/detail-panel.tsx +101 -0
- package/dist/skill/reference/components/data-table/examples/examples.module.css +86 -0
- package/dist/skill/reference/components/data-table/examples/fill-height.tsx +55 -0
- package/dist/skill/reference/components/data-table/examples/groups.tsx +73 -0
- package/dist/skill/reference/components/data-table/examples/heatmap.tsx +44 -0
- package/dist/skill/reference/components/data-table/examples/infinite-scroll.tsx +53 -0
- package/dist/skill/reference/components/data-table/examples/narrow.tsx +50 -0
- package/dist/skill/reference/components/data-table/examples/nested-rows.tsx +128 -0
- package/dist/skill/reference/components/data-table/examples/numeric.tsx +41 -0
- package/dist/skill/reference/components/data-table/examples/overview.tsx +54 -0
- package/dist/skill/reference/components/data-table/examples/reorder.tsx +61 -0
- package/dist/skill/reference/components/data-table/examples/row-link.tsx +100 -0
- package/dist/skill/reference/components/data-table/examples/row-open.tsx +129 -0
- package/dist/skill/reference/components/data-table/examples/selection.tsx +60 -0
- package/dist/skill/reference/components/data-table/examples/server.tsx +181 -0
- package/dist/skill/reference/components/data-table/examples/sizes.tsx +56 -0
- package/dist/skill/reference/components/data-table/examples/states.tsx +50 -0
- package/dist/skill/reference/components/data-table/examples/sticky.tsx +54 -0
- package/dist/skill/reference/components/data-table/examples/toolbar.tsx +124 -0
- package/dist/skill/reference/components/datepicker/COMPONENT.md +228 -0
- package/dist/skill/reference/components/datepicker/examples/controlled-open.tsx +32 -0
- package/dist/skill/reference/components/datepicker/examples/controlled.tsx +39 -0
- package/dist/skill/reference/components/datepicker/examples/examples.module.css +26 -0
- package/dist/skill/reference/components/datepicker/examples/in-form.tsx +74 -0
- package/dist/skill/reference/components/datepicker/examples/inline-panel.tsx +14 -0
- package/dist/skill/reference/components/datepicker/examples/narrow.tsx +14 -0
- package/dist/skill/reference/components/datepicker/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/datepicker/examples/range-presets.tsx +22 -0
- package/dist/skill/reference/components/datepicker/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/datepicker/examples/states.tsx +20 -0
- package/dist/skill/reference/components/datepicker/examples/validation.tsx +36 -0
- package/dist/skill/reference/components/datepicker/examples/yearless.tsx +20 -0
- package/dist/skill/reference/components/description-list/COMPONENT.md +132 -0
- package/dist/skill/reference/components/description-list/examples/examples.module.css +41 -0
- package/dist/skill/reference/components/description-list/examples/narrow.tsx +20 -0
- package/dist/skill/reference/components/description-list/examples/overview.tsx +35 -0
- package/dist/skill/reference/components/description-list/examples/sizes.tsx +24 -0
- package/dist/skill/reference/components/description-list/examples/structure.tsx +29 -0
- package/dist/skill/reference/components/description-list/examples/vertical.tsx +21 -0
- package/dist/skill/reference/components/digit-input/COMPONENT.md +165 -0
- package/dist/skill/reference/components/digit-input/examples/controlled.tsx +23 -0
- package/dist/skill/reference/components/digit-input/examples/examples.module.css +25 -0
- package/dist/skill/reference/components/digit-input/examples/full-width.tsx +13 -0
- package/dist/skill/reference/components/digit-input/examples/grouped.tsx +11 -0
- package/dist/skill/reference/components/digit-input/examples/in-form.tsx +50 -0
- package/dist/skill/reference/components/digit-input/examples/on-complete.tsx +33 -0
- package/dist/skill/reference/components/digit-input/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/digit-input/examples/sizes.tsx +14 -0
- package/dist/skill/reference/components/digit-input/examples/states.tsx +11 -0
- package/dist/skill/reference/components/digit-input/examples/validation.tsx +24 -0
- package/dist/skill/reference/components/divider/COMPONENT.md +113 -0
- package/dist/skill/reference/components/divider/examples/align.tsx +14 -0
- package/dist/skill/reference/components/divider/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/divider/examples/or-separator.tsx +19 -0
- package/dist/skill/reference/components/divider/examples/overview.tsx +30 -0
- package/dist/skill/reference/components/divider/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/divider/examples/vertical.tsx +21 -0
- package/dist/skill/reference/components/divider/examples/with-icon.tsx +26 -0
- package/dist/skill/reference/components/dnd/COMPONENT.md +260 -0
- package/dist/skill/reference/components/dnd/examples/board.tsx +91 -0
- package/dist/skill/reference/components/dnd/examples/drop-zones.tsx +82 -0
- package/dist/skill/reference/components/dnd/examples/examples.module.css +112 -0
- package/dist/skill/reference/components/dnd/examples/grid.tsx +48 -0
- package/dist/skill/reference/components/dnd/examples/handle.tsx +58 -0
- package/dist/skill/reference/components/dnd/examples/locked.tsx +57 -0
- package/dist/skill/reference/components/dnd/examples/narrow.tsx +42 -0
- package/dist/skill/reference/components/dnd/examples/overview.tsx +45 -0
- package/dist/skill/reference/components/drawer/COMPONENT.md +229 -0
- package/dist/skill/reference/components/drawer/examples/controlled-open.tsx +40 -0
- package/dist/skill/reference/components/drawer/examples/dismiss.tsx +55 -0
- package/dist/skill/reference/components/drawer/examples/examples.module.css +21 -0
- package/dist/skill/reference/components/drawer/examples/guard.tsx +80 -0
- package/dist/skill/reference/components/drawer/examples/header-actions.tsx +63 -0
- package/dist/skill/reference/components/drawer/examples/in-form.tsx +87 -0
- package/dist/skill/reference/components/drawer/examples/long-content.tsx +40 -0
- package/dist/skill/reference/components/drawer/examples/overview.tsx +56 -0
- package/dist/skill/reference/components/drawer/examples/placement.tsx +40 -0
- package/dist/skill/reference/components/drawer/examples/sizes.tsx +43 -0
- package/dist/skill/reference/components/drawer/examples/structure.tsx +35 -0
- package/dist/skill/reference/components/dropdown/COMPONENT.md +235 -0
- package/dist/skill/reference/components/dropdown/examples/checkbox-items.tsx +48 -0
- package/dist/skill/reference/components/dropdown/examples/controlled-open.tsx +32 -0
- package/dist/skill/reference/components/dropdown/examples/dismiss.tsx +17 -0
- package/dist/skill/reference/components/dropdown/examples/examples.module.css +22 -0
- package/dist/skill/reference/components/dropdown/examples/item-description.tsx +30 -0
- package/dist/skill/reference/components/dropdown/examples/link-items.tsx +29 -0
- package/dist/skill/reference/components/dropdown/examples/long-list.tsx +42 -0
- package/dist/skill/reference/components/dropdown/examples/match-trigger-width.tsx +23 -0
- package/dist/skill/reference/components/dropdown/examples/overview.tsx +41 -0
- package/dist/skill/reference/components/dropdown/examples/placement.tsx +33 -0
- package/dist/skill/reference/components/dropdown/examples/sizes.tsx +43 -0
- package/dist/skill/reference/components/dropdown/examples/states.tsx +35 -0
- package/dist/skill/reference/components/dropdown/examples/structure.tsx +56 -0
- package/dist/skill/reference/components/empty-page/COMPONENT.md +167 -0
- package/dist/skill/reference/components/empty-page/examples/compact.tsx +23 -0
- package/dist/skill/reference/components/empty-page/examples/data-region.tsx +32 -0
- package/dist/skill/reference/components/empty-page/examples/examples.module.css +54 -0
- package/dist/skill/reference/components/empty-page/examples/narrow.tsx +26 -0
- package/dist/skill/reference/components/empty-page/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/empty-page/examples/region-error.tsx +86 -0
- package/dist/skill/reference/components/empty-page/examples/sizes.tsx +25 -0
- package/{src/components/empty-page/examples/icon-tones.tsx → dist/skill/reference/components/empty-page/examples/variants.tsx} +10 -9
- package/dist/skill/reference/components/example-frame/COMPONENT.md +140 -0
- package/dist/skill/reference/components/example-frame/examples/controlled.tsx +42 -0
- package/dist/skill/reference/components/example-frame/examples/overview.tsx +16 -0
- package/dist/skill/reference/components/fieldset/COMPONENT.md +107 -0
- package/dist/skill/reference/components/fieldset/examples/examples.module.css +14 -0
- package/dist/skill/reference/components/fieldset/examples/in-form.tsx +59 -0
- package/dist/skill/reference/components/fieldset/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/fieldset/examples/states.tsx +35 -0
- package/dist/skill/reference/components/file-upload/COMPONENT.md +407 -0
- package/dist/skill/reference/components/file-upload/examples/attachment-tray.tsx +99 -0
- package/dist/skill/reference/components/file-upload/examples/avatar-upload.tsx +56 -0
- package/dist/skill/reference/components/file-upload/examples/controlled.tsx +77 -0
- package/dist/skill/reference/components/file-upload/examples/custom-body.tsx +44 -0
- package/dist/skill/reference/components/file-upload/examples/examples.module.css +122 -0
- package/dist/skill/reference/components/file-upload/examples/file-cards.tsx +64 -0
- package/dist/skill/reference/components/file-upload/examples/gallery.tsx +104 -0
- package/dist/skill/reference/components/file-upload/examples/in-form.tsx +79 -0
- package/dist/skill/reference/components/file-upload/examples/narrow.tsx +73 -0
- package/dist/skill/reference/components/file-upload/examples/overview.tsx +49 -0
- package/dist/skill/reference/components/file-upload/examples/row-parts.tsx +41 -0
- package/dist/skill/reference/components/file-upload/examples/saving.tsx +71 -0
- package/dist/skill/reference/components/file-upload/examples/sizes.tsx +26 -0
- package/dist/skill/reference/components/file-upload/examples/states.tsx +23 -0
- package/dist/skill/reference/components/file-upload/examples/validation.tsx +42 -0
- package/dist/skill/reference/components/file-upload/examples/variants.tsx +32 -0
- package/dist/skill/reference/components/gallery/COMPONENT.md +151 -0
- package/dist/skill/reference/components/gallery/examples/controlled-open.tsx +39 -0
- package/dist/skill/reference/components/gallery/examples/examples.module.css +14 -0
- package/dist/skill/reference/components/gallery/examples/overview.tsx +52 -0
- package/dist/skill/reference/components/gallery/examples/transfer.tsx +45 -0
- package/dist/skill/reference/components/gantt/COMPONENT.md +224 -0
- package/dist/skill/reference/components/gantt/examples/controlled.tsx +72 -0
- package/dist/skill/reference/components/gantt/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/gantt/examples/large.tsx +96 -0
- package/dist/skill/reference/components/gantt/examples/narrow.tsx +54 -0
- package/dist/skill/reference/components/gantt/examples/occupancy.tsx +149 -0
- package/dist/skill/reference/components/gantt/examples/overview.tsx +82 -0
- package/dist/skill/reference/components/gantt/examples/sizes.tsx +48 -0
- package/dist/skill/reference/components/gantt/examples/states.tsx +68 -0
- package/dist/skill/reference/components/gantt/examples/variants.tsx +82 -0
- package/dist/skill/reference/components/hint/COMPONENT.md +113 -0
- package/dist/skill/reference/components/hint/examples/examples.module.css +14 -0
- package/dist/skill/reference/components/hint/examples/hint-or-error.tsx +27 -0
- package/dist/skill/reference/components/hint/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/hint/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/hint/examples/states.tsx +27 -0
- package/dist/skill/reference/components/hint/examples/with-icon.tsx +31 -0
- package/dist/skill/reference/components/input/COMPONENT.md +297 -0
- package/dist/skill/reference/components/input/examples/affixes.tsx +22 -0
- package/dist/skill/reference/components/input/examples/controlled.tsx +39 -0
- package/dist/skill/reference/components/input/examples/edge-actions.tsx +30 -0
- package/dist/skill/reference/components/input/examples/examples.module.css +38 -0
- package/dist/skill/reference/components/input/examples/in-form.tsx +107 -0
- package/dist/skill/reference/components/input/examples/inline-edit.tsx +52 -0
- package/dist/skill/reference/components/input/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/input/examples/password-strength.tsx +13 -0
- package/dist/skill/reference/components/input/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/input/examples/states.tsx +27 -0
- package/dist/skill/reference/components/input/examples/validation.tsx +60 -0
- package/dist/skill/reference/components/input/examples/with-icon.tsx +25 -0
- package/dist/skill/reference/components/input/examples/without-focus-ring.tsx +25 -0
- package/dist/skill/reference/components/kanban/COMPONENT.md +239 -0
- package/dist/skill/reference/components/kanban/examples/cards.tsx +152 -0
- package/dist/skill/reference/components/kanban/examples/columns.tsx +182 -0
- package/dist/skill/reference/components/kanban/examples/controlled.tsx +78 -0
- package/dist/skill/reference/components/kanban/examples/examples.module.css +37 -0
- package/dist/skill/reference/components/kanban/examples/limits.tsx +60 -0
- package/dist/skill/reference/components/kanban/examples/narrow.tsx +76 -0
- package/dist/skill/reference/components/kanban/examples/overview.tsx +130 -0
- package/dist/skill/reference/components/kanban/examples/saving.tsx +83 -0
- package/dist/skill/reference/components/kanban/examples/states.tsx +75 -0
- package/dist/skill/reference/components/kanban/examples/structure.tsx +76 -0
- package/dist/skill/reference/components/kanban/examples/variants.tsx +57 -0
- package/dist/skill/reference/components/kbd/COMPONENT.md +99 -0
- package/dist/skill/reference/components/kbd/examples/examples.module.css +37 -0
- package/dist/skill/reference/components/kbd/examples/in-controls.tsx +34 -0
- package/dist/skill/reference/components/kbd/examples/overview.tsx +24 -0
- package/dist/skill/reference/components/kbd/examples/shortcut-list.tsx +49 -0
- package/dist/skill/reference/components/kbd/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/label/COMPONENT.md +126 -0
- package/dist/skill/reference/components/label/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/label/examples/overview.tsx +20 -0
- package/dist/skill/reference/components/label/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/label/examples/states.tsx +23 -0
- package/dist/skill/reference/components/label/examples/structure.tsx +32 -0
- package/dist/skill/reference/components/label/examples/with-icon.tsx +31 -0
- package/dist/skill/reference/components/link-button/COMPONENT.md +128 -0
- package/dist/skill/reference/components/link-button/examples/as-child.tsx +18 -0
- package/dist/skill/reference/components/link-button/examples/external-link.tsx +14 -0
- package/dist/skill/reference/components/link-button/examples/overview.tsx +11 -0
- package/dist/skill/reference/components/link-button/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/link-button/examples/states.tsx +31 -0
- package/dist/skill/reference/components/link-button/examples/variants.tsx +21 -0
- package/dist/skill/reference/components/link-button/examples/with-icon.tsx +27 -0
- package/dist/skill/reference/components/login-form/COMPONENT.md +163 -0
- package/dist/skill/reference/components/login-form/examples/examples.module.css +39 -0
- package/dist/skill/reference/components/login-form/examples/forgot-password.tsx +39 -0
- package/dist/skill/reference/components/login-form/examples/narrow.tsx +32 -0
- package/dist/skill/reference/components/login-form/examples/overview.tsx +58 -0
- package/dist/skill/reference/components/login-form/examples/register.tsx +80 -0
- package/dist/skill/reference/components/login-form/examples/reset-password.tsx +60 -0
- package/dist/skill/reference/components/login-form/examples/sizes.tsx +38 -0
- package/dist/skill/reference/components/login-form/examples/states.tsx +71 -0
- package/dist/skill/reference/components/login-form/examples/structure.tsx +28 -0
- package/dist/skill/reference/components/login-form/examples/verification-code.tsx +57 -0
- package/dist/skill/reference/components/media-viewer/COMPONENT.md +207 -0
- package/dist/skill/reference/components/media-viewer/examples/actions.tsx +86 -0
- package/dist/skill/reference/components/media-viewer/examples/controlled-open.tsx +30 -0
- package/dist/skill/reference/components/media-viewer/examples/controlled.tsx +54 -0
- package/dist/skill/reference/components/media-viewer/examples/dismiss.tsx +34 -0
- package/dist/skill/reference/components/media-viewer/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/media-viewer/examples/origin.tsx +60 -0
- package/dist/skill/reference/components/media-viewer/examples/overview.tsx +75 -0
- package/dist/skill/reference/components/media-viewer/examples/thumbnails.tsx +49 -0
- package/dist/skill/reference/components/media-viewer/examples/video.tsx +55 -0
- package/dist/skill/reference/components/message/COMPONENT.md +444 -0
- package/dist/skill/reference/components/message/examples/author.tsx +74 -0
- package/dist/skill/reference/components/message/examples/contact.tsx +24 -0
- package/dist/skill/reference/components/message/examples/context-menu.tsx +71 -0
- package/dist/skill/reference/components/message/examples/examples.module.css +18 -0
- package/dist/skill/reference/components/message/examples/file.tsx +79 -0
- package/dist/skill/reference/components/message/examples/kinds.tsx +93 -0
- package/dist/skill/reference/components/message/examples/link-preview.tsx +17 -0
- package/dist/skill/reference/components/message/examples/location.tsx +30 -0
- package/dist/skill/reference/components/message/examples/media.tsx +93 -0
- package/dist/skill/reference/components/message/examples/narrow.tsx +29 -0
- package/dist/skill/reference/components/message/examples/overview.tsx +52 -0
- package/dist/skill/reference/components/message/examples/reactions.tsx +73 -0
- package/dist/skill/reference/components/message/examples/status.tsx +45 -0
- package/dist/skill/reference/components/message/examples/structure.tsx +32 -0
- package/dist/skill/reference/components/message/examples/text-formatting.tsx +27 -0
- package/dist/skill/reference/components/message/examples/typing.tsx +22 -0
- package/dist/skill/reference/components/message/examples/voice.tsx +39 -0
- package/dist/skill/reference/components/modal/COMPONENT.md +247 -0
- package/dist/skill/reference/components/modal/examples/controlled-open.tsx +33 -0
- package/dist/skill/reference/components/modal/examples/custom-container.tsx +29 -0
- package/dist/skill/reference/components/modal/examples/dismiss.tsx +54 -0
- package/dist/skill/reference/components/modal/examples/examples.module.css +21 -0
- package/dist/skill/reference/components/modal/examples/guard.tsx +87 -0
- package/dist/skill/reference/components/modal/examples/in-form.tsx +83 -0
- package/dist/skill/reference/components/modal/examples/long-content.tsx +52 -0
- package/dist/skill/reference/components/modal/examples/overview.tsx +35 -0
- package/dist/skill/reference/components/modal/examples/sizes.tsx +48 -0
- package/dist/skill/reference/components/modal/examples/structure.tsx +53 -0
- package/dist/skill/reference/components/native-select/COMPONENT.md +132 -0
- package/dist/skill/reference/components/native-select/examples/controlled.tsx +26 -0
- package/dist/skill/reference/components/native-select/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/native-select/examples/in-form.tsx +58 -0
- package/dist/skill/reference/components/native-select/examples/option-groups.tsx +17 -0
- package/dist/skill/reference/components/native-select/examples/overview.tsx +16 -0
- package/dist/skill/reference/components/native-select/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/native-select/examples/states.tsx +21 -0
- package/dist/skill/reference/components/native-select/examples/validation.tsx +31 -0
- package/dist/skill/reference/components/notification/COMPONENT.md +193 -0
- package/dist/skill/reference/components/notification/examples/dismiss.tsx +50 -0
- package/dist/skill/reference/components/notification/examples/examples.module.css +52 -0
- package/dist/skill/reference/components/notification/examples/in-form.tsx +64 -0
- package/dist/skill/reference/components/notification/examples/overview.tsx +24 -0
- package/dist/skill/reference/components/notification/examples/placement.tsx +66 -0
- package/dist/skill/reference/components/notification/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/notification/examples/stacking.tsx +45 -0
- package/dist/skill/reference/components/notification/examples/structure.tsx +20 -0
- package/dist/skill/reference/components/notification/examples/tones.tsx +25 -0
- package/dist/skill/reference/components/notification/examples/undo.tsx +61 -0
- package/dist/skill/reference/components/page-content/COMPONENT.md +215 -0
- package/dist/skill/reference/components/page-content/examples/examples.module.css +76 -0
- package/dist/skill/reference/components/page-content/examples/list-detail.tsx +114 -0
- package/dist/skill/reference/components/page-content/examples/narrow.tsx +25 -0
- package/dist/skill/reference/components/page-content/examples/overview.tsx +41 -0
- package/dist/skill/reference/components/page-content/examples/variants.tsx +39 -0
- package/dist/skill/reference/components/page-toolbar/COMPONENT.md +141 -0
- package/dist/skill/reference/components/page-toolbar/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/page-toolbar/examples/narrow.tsx +103 -0
- package/dist/skill/reference/components/page-toolbar/examples/overview.tsx +113 -0
- package/dist/skill/reference/components/page-toolbar/examples/save-changes.tsx +40 -0
- package/dist/skill/reference/components/page-toolbar/examples/without-search.tsx +60 -0
- package/dist/skill/reference/components/pagination/COMPONENT.md +132 -0
- package/dist/skill/reference/components/pagination/examples/controlled.tsx +51 -0
- package/dist/skill/reference/components/pagination/examples/examples.module.css +24 -0
- package/dist/skill/reference/components/pagination/examples/narrow.tsx +25 -0
- package/dist/skill/reference/components/pagination/examples/overflow.tsx +23 -0
- package/dist/skill/reference/components/pagination/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/pagination/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/popover/COMPONENT.md +183 -0
- package/dist/skill/reference/components/popover/examples/controlled-open.tsx +32 -0
- package/dist/skill/reference/components/popover/examples/dismiss.tsx +49 -0
- package/dist/skill/reference/components/popover/examples/examples.module.css +49 -0
- package/dist/skill/reference/components/popover/examples/flush.tsx +47 -0
- package/dist/skill/reference/components/popover/examples/from-menu.tsx +56 -0
- package/dist/skill/reference/components/popover/examples/in-form.tsx +76 -0
- package/dist/skill/reference/components/popover/examples/match-trigger-width.tsx +23 -0
- package/dist/skill/reference/components/popover/examples/overview.tsx +43 -0
- package/dist/skill/reference/components/popover/examples/placement.tsx +34 -0
- package/dist/skill/reference/components/popover/examples/sizes.tsx +36 -0
- package/dist/skill/reference/components/popover/examples/structure.tsx +50 -0
- package/dist/skill/reference/components/progress-bar/COMPONENT.md +199 -0
- package/dist/skill/reference/components/progress-bar/examples/custom-max.tsx +12 -0
- package/dist/skill/reference/components/progress-bar/examples/examples.module.css +17 -0
- package/dist/skill/reference/components/progress-bar/examples/legend.tsx +28 -0
- package/dist/skill/reference/components/progress-bar/examples/milestone.tsx +43 -0
- package/dist/skill/reference/components/progress-bar/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/progress-bar/examples/ranking.tsx +28 -0
- package/dist/skill/reference/components/progress-bar/examples/segments.tsx +32 -0
- package/dist/skill/reference/components/progress-bar/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/progress-bar/examples/states.tsx +43 -0
- package/dist/skill/reference/components/progress-bar/examples/steps.tsx +35 -0
- package/dist/skill/reference/components/progress-bar/examples/variants.tsx +34 -0
- package/dist/skill/reference/components/progress-circle/COMPONENT.md +189 -0
- package/dist/skill/reference/components/progress-circle/examples/examples.module.css +22 -0
- package/dist/skill/reference/components/progress-circle/examples/inner-content.tsx +35 -0
- package/dist/skill/reference/components/progress-circle/examples/legend.tsx +33 -0
- package/dist/skill/reference/components/progress-circle/examples/overview.tsx +10 -0
- package/dist/skill/reference/components/progress-circle/examples/segments.tsx +64 -0
- package/dist/skill/reference/components/progress-circle/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/progress-circle/examples/states.tsx +25 -0
- package/dist/skill/reference/components/progress-circle/examples/under-way.tsx +54 -0
- package/dist/skill/reference/components/progress-circle/examples/variants.tsx +28 -0
- package/dist/skill/reference/components/radio/COMPONENT.md +165 -0
- package/dist/skill/reference/components/radio/examples/controlled.tsx +30 -0
- package/dist/skill/reference/components/radio/examples/group.tsx +23 -0
- package/dist/skill/reference/components/radio/examples/orientation.tsx +34 -0
- package/dist/skill/reference/components/radio/examples/overview.tsx +18 -0
- package/dist/skill/reference/components/radio/examples/sizes.tsx +20 -0
- package/dist/skill/reference/components/radio/examples/states.tsx +48 -0
- package/dist/skill/reference/components/scroll-container/COMPONENT.md +179 -0
- package/dist/skill/reference/components/scroll-container/examples/auto-scroll.tsx +52 -0
- package/dist/skill/reference/components/scroll-container/examples/chat.tsx +101 -0
- package/dist/skill/reference/components/scroll-container/examples/edges.tsx +43 -0
- package/dist/skill/reference/components/scroll-container/examples/examples.module.css +139 -0
- package/dist/skill/reference/components/scroll-container/examples/lock.tsx +49 -0
- package/dist/skill/reference/components/scroll-container/examples/overscroll.tsx +27 -0
- package/dist/skill/reference/components/scroll-container/examples/overview.tsx +27 -0
- package/dist/skill/reference/components/scroll-container/examples/scrollbar.tsx +52 -0
- package/dist/skill/reference/components/scroll-container/examples/snap.tsx +36 -0
- package/dist/skill/reference/components/scroll-container/examples/variants.tsx +54 -0
- package/dist/skill/reference/components/segmented-control/COMPONENT.md +214 -0
- package/dist/skill/reference/components/segmented-control/examples/colors.tsx +18 -0
- package/dist/skill/reference/components/segmented-control/examples/controlled.tsx +28 -0
- package/dist/skill/reference/components/segmented-control/examples/examples.module.css +20 -0
- package/dist/skill/reference/components/segmented-control/examples/full-width.tsx +12 -0
- package/dist/skill/reference/components/segmented-control/examples/in-form.tsx +42 -0
- package/dist/skill/reference/components/segmented-control/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/segmented-control/examples/scroll.tsx +16 -0
- package/dist/skill/reference/components/segmented-control/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/segmented-control/examples/states.tsx +47 -0
- package/dist/skill/reference/components/segmented-control/examples/two-line.tsx +28 -0
- package/dist/skill/reference/components/segmented-control/examples/with-icon.tsx +52 -0
- package/dist/skill/reference/components/select/COMPONENT.md +300 -0
- package/dist/skill/reference/components/select/examples/clearable.tsx +23 -0
- package/dist/skill/reference/components/select/examples/controlled-open.tsx +30 -0
- package/dist/skill/reference/components/select/examples/controlled.tsx +34 -0
- package/dist/skill/reference/components/select/examples/examples.module.css +35 -0
- package/dist/skill/reference/components/select/examples/in-form.tsx +88 -0
- package/dist/skill/reference/components/select/examples/load-error.tsx +45 -0
- package/dist/skill/reference/components/select/examples/multiple.tsx +26 -0
- package/dist/skill/reference/components/select/examples/overview.tsx +17 -0
- package/dist/skill/reference/components/select/examples/people.tsx +53 -0
- package/dist/skill/reference/components/select/examples/rich-options.tsx +72 -0
- package/dist/skill/reference/components/select/examples/searchable.tsx +42 -0
- package/dist/skill/reference/components/select/examples/server-search.tsx +93 -0
- package/dist/skill/reference/components/select/examples/sizes.tsx +23 -0
- package/dist/skill/reference/components/select/examples/states.tsx +67 -0
- package/dist/skill/reference/components/select/examples/validation.tsx +46 -0
- package/dist/skill/reference/components/select/examples/with-icon.tsx +35 -0
- package/dist/skill/reference/components/sheet/COMPONENT.md +216 -0
- package/dist/skill/reference/components/sheet/examples/controlled-open.tsx +37 -0
- package/dist/skill/reference/components/sheet/examples/dismiss.tsx +42 -0
- package/dist/skill/reference/components/sheet/examples/examples.module.css +13 -0
- package/dist/skill/reference/components/sheet/examples/in-form.tsx +65 -0
- package/dist/skill/reference/components/sheet/examples/overview.tsx +50 -0
- package/{src/components/drawer/examples/date-sheet.tsx → dist/skill/reference/components/sheet/examples/structure.tsx} +11 -17
- package/dist/skill/reference/components/skeleton/COMPONENT.md +104 -0
- package/dist/skill/reference/components/skeleton/examples/examples.module.css +89 -0
- package/dist/skill/reference/components/skeleton/examples/form.tsx +20 -0
- package/dist/skill/reference/components/skeleton/examples/overview.tsx +21 -0
- package/dist/skill/reference/components/skeleton/examples/sizes.tsx +24 -0
- package/dist/skill/reference/components/skeleton/examples/with-crossfade.tsx +68 -0
- package/dist/skill/reference/components/slider/COMPONENT.md +186 -0
- package/dist/skill/reference/components/slider/examples/autosave.tsx +39 -0
- package/dist/skill/reference/components/slider/examples/controlled.tsx +39 -0
- package/dist/skill/reference/components/slider/examples/examples.module.css +24 -0
- package/dist/skill/reference/components/slider/examples/hint-and-error.tsx +33 -0
- package/dist/skill/reference/components/slider/examples/orientation.tsx +27 -0
- package/dist/skill/reference/components/slider/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/slider/examples/range-step.tsx +19 -0
- package/dist/skill/reference/components/slider/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/slider/examples/states.tsx +18 -0
- package/dist/skill/reference/components/slider/examples/value-format.tsx +32 -0
- package/dist/skill/reference/components/slider/examples/variants.tsx +23 -0
- package/dist/skill/reference/components/smart-filter/COMPONENT.md +235 -0
- package/dist/skill/reference/components/smart-filter/examples/controlled.tsx +48 -0
- package/dist/skill/reference/components/smart-filter/examples/examples.module.css +56 -0
- package/dist/skill/reference/components/smart-filter/examples/many-values.tsx +53 -0
- package/dist/skill/reference/components/smart-filter/examples/narrow.tsx +38 -0
- package/dist/skill/reference/components/smart-filter/examples/option-groups.tsx +40 -0
- package/dist/skill/reference/components/smart-filter/examples/overview.tsx +109 -0
- package/dist/skill/reference/components/smart-filter/examples/ranges.tsx +89 -0
- package/dist/skill/reference/components/smart-filter/examples/single-value.tsx +41 -0
- package/dist/skill/reference/components/smart-filter/examples/sizes.tsx +33 -0
- package/dist/skill/reference/components/sparkline/COMPONENT.md +127 -0
- package/dist/skill/reference/components/sparkline/examples/examples.module.css +13 -0
- package/dist/skill/reference/components/sparkline/examples/overview.tsx +27 -0
- package/dist/skill/reference/components/sparkline/examples/period.tsx +46 -0
- package/dist/skill/reference/components/sparkline/examples/signed-bars.tsx +41 -0
- package/dist/skill/reference/components/sparkline/examples/states.tsx +30 -0
- package/dist/skill/reference/components/sparkline/examples/variants.tsx +29 -0
- package/dist/skill/reference/components/spinner/COMPONENT.md +114 -0
- package/dist/skill/reference/components/spinner/examples/examples.module.css +20 -0
- package/dist/skill/reference/components/spinner/examples/loading-region.tsx +22 -0
- package/dist/skill/reference/components/spinner/examples/overview.tsx +15 -0
- package/dist/skill/reference/components/spinner/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/spinner/examples/variants.tsx +19 -0
- package/dist/skill/reference/components/stepper/COMPONENT.md +176 -0
- package/dist/skill/reference/components/stepper/examples/controlled.tsx +46 -0
- package/dist/skill/reference/components/stepper/examples/examples.module.css +24 -0
- package/dist/skill/reference/components/stepper/examples/narrow.tsx +23 -0
- package/dist/skill/reference/components/stepper/examples/orientation.tsx +35 -0
- package/dist/skill/reference/components/stepper/examples/overview.tsx +28 -0
- package/dist/skill/reference/components/stepper/examples/sizes.tsx +31 -0
- package/dist/skill/reference/components/stepper/examples/states.tsx +49 -0
- package/dist/skill/reference/components/stepper/examples/with-icon.tsx +29 -0
- package/dist/skill/reference/components/switch/COMPONENT.md +147 -0
- package/dist/skill/reference/components/switch/examples/controlled.tsx +17 -0
- package/dist/skill/reference/components/switch/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/switch/examples/in-form.tsx +36 -0
- package/dist/skill/reference/components/switch/examples/overview.tsx +10 -0
- package/dist/skill/reference/components/switch/examples/saving.tsx +53 -0
- package/dist/skill/reference/components/switch/examples/settings-row.tsx +24 -0
- package/dist/skill/reference/components/switch/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/switch/examples/states.tsx +48 -0
- package/dist/skill/reference/components/tabs/COMPONENT.md +276 -0
- package/dist/skill/reference/components/tabs/examples/closable.tsx +48 -0
- package/dist/skill/reference/components/tabs/examples/controlled.tsx +33 -0
- package/dist/skill/reference/components/tabs/examples/examples.module.css +38 -0
- package/dist/skill/reference/components/tabs/examples/in-drawer.tsx +100 -0
- package/dist/skill/reference/components/tabs/examples/orientation.tsx +94 -0
- package/dist/skill/reference/components/tabs/examples/overflow.tsx +60 -0
- package/dist/skill/reference/components/tabs/examples/overview.tsx +30 -0
- package/dist/skill/reference/components/tabs/examples/sizes.tsx +30 -0
- package/dist/skill/reference/components/tabs/examples/states.tsx +26 -0
- package/dist/skill/reference/components/tabs/examples/two-line.tsx +56 -0
- package/dist/skill/reference/components/tabs/examples/variants.tsx +40 -0
- package/dist/skill/reference/components/tabs/examples/with-icon.tsx +44 -0
- package/dist/skill/reference/components/tag-select/COMPONENT.md +179 -0
- package/dist/skill/reference/components/tag-select/examples/confirm-delete.tsx +60 -0
- package/dist/skill/reference/components/tag-select/examples/controlled-open.tsx +29 -0
- package/dist/skill/reference/components/tag-select/examples/controlled.tsx +26 -0
- package/dist/skill/reference/components/tag-select/examples/creatable.tsx +49 -0
- package/dist/skill/reference/components/tag-select/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/tag-select/examples/in-form.tsx +85 -0
- package/dist/skill/reference/components/tag-select/examples/manage-tags.tsx +38 -0
- package/dist/skill/reference/components/tag-select/examples/many-tags.tsx +20 -0
- package/dist/skill/reference/components/tag-select/examples/overview.tsx +21 -0
- package/dist/skill/reference/components/tag-select/examples/sizes.tsx +27 -0
- package/dist/skill/reference/components/tag-select/examples/states.tsx +24 -0
- package/dist/skill/reference/components/tag-select/examples/validation.tsx +40 -0
- package/dist/skill/reference/components/textarea/COMPONENT.md +206 -0
- package/dist/skill/reference/components/textarea/examples/auto-resize.tsx +28 -0
- package/dist/skill/reference/components/textarea/examples/controlled.tsx +21 -0
- package/dist/skill/reference/components/textarea/examples/edge-actions.tsx +24 -0
- package/dist/skill/reference/components/textarea/examples/examples.module.css +27 -0
- package/dist/skill/reference/components/textarea/examples/in-form.tsx +76 -0
- package/dist/skill/reference/components/textarea/examples/inline-edit.tsx +42 -0
- package/dist/skill/reference/components/textarea/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/textarea/examples/sizes.tsx +20 -0
- package/dist/skill/reference/components/textarea/examples/states.tsx +21 -0
- package/dist/skill/reference/components/textarea/examples/validation.tsx +50 -0
- package/dist/skill/reference/components/textarea/examples/without-focus-ring.tsx +12 -0
- package/dist/skill/reference/components/thumbnail/COMPONENT.md +191 -0
- package/dist/skill/reference/components/thumbnail/examples/controlled.tsx +61 -0
- package/dist/skill/reference/components/thumbnail/examples/examples.module.css +76 -0
- package/dist/skill/reference/components/thumbnail/examples/full-width.tsx +45 -0
- package/dist/skill/reference/components/thumbnail/examples/overview.tsx +27 -0
- package/dist/skill/reference/components/thumbnail/examples/pressable.tsx +56 -0
- package/dist/skill/reference/components/thumbnail/examples/ratios.tsx +25 -0
- package/dist/skill/reference/components/thumbnail/examples/ring.tsx +29 -0
- package/dist/skill/reference/components/thumbnail/examples/sizes.tsx +23 -0
- package/dist/skill/reference/components/thumbnail/examples/states.tsx +38 -0
- package/dist/skill/reference/components/thumbnail/examples/variants.tsx +28 -0
- package/dist/skill/reference/components/thumbnail/examples/video.tsx +46 -0
- package/dist/skill/reference/components/timeline/COMPONENT.md +181 -0
- package/dist/skill/reference/components/timeline/examples/examples.module.css +25 -0
- package/dist/skill/reference/components/timeline/examples/links.tsx +28 -0
- package/dist/skill/reference/components/timeline/examples/narrow.tsx +41 -0
- package/dist/skill/reference/components/timeline/examples/overview.tsx +47 -0
- package/dist/skill/reference/components/timeline/examples/sizes.tsx +33 -0
- package/dist/skill/reference/components/timeline/examples/structure.tsx +56 -0
- package/dist/skill/reference/components/timeline/examples/variants.tsx +56 -0
- package/dist/skill/reference/components/tooltip/COMPONENT.md +167 -0
- package/dist/skill/reference/components/tooltip/examples/controlled-open.tsx +23 -0
- package/dist/skill/reference/components/tooltip/examples/delay.tsx +25 -0
- package/dist/skill/reference/components/tooltip/examples/disabled-trigger.tsx +13 -0
- package/dist/skill/reference/components/tooltip/examples/examples.module.css +20 -0
- package/dist/skill/reference/components/tooltip/examples/long-content.tsx +18 -0
- package/dist/skill/reference/components/tooltip/examples/non-interactive-trigger.tsx +31 -0
- package/dist/skill/reference/components/tooltip/examples/overview.tsx +17 -0
- package/dist/skill/reference/components/tooltip/examples/placement.tsx +30 -0
- package/dist/skill/reference/components/tooltip/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/tooltip/examples/toolbar.tsx +35 -0
- package/dist/skill/reference/components/typography/COMPONENT.md +126 -0
- package/dist/skill/reference/components/typography/examples/article.tsx +36 -0
- package/dist/skill/reference/components/typography/examples/examples.module.css +41 -0
- package/dist/skill/reference/components/typography/examples/inline-emphasis.tsx +20 -0
- package/dist/skill/reference/components/typography/examples/overview.tsx +20 -0
- package/dist/skill/reference/components/typography/examples/semantic-tag.tsx +17 -0
- package/dist/skill/reference/components/typography/examples/truncate.tsx +19 -0
- package/dist/skill/reference/components/typography/examples/variants.tsx +50 -0
- package/dist/skill/reference/components/typography/examples/weights.tsx +31 -0
- package/dist/skill/reference/components/video-note/COMPONENT.md +173 -0
- package/dist/skill/reference/components/video-note/examples/controlled.tsx +28 -0
- package/dist/skill/reference/components/video-note/examples/examples.module.css +4 -0
- package/dist/skill/reference/components/video-note/examples/in-message.tsx +22 -0
- package/dist/skill/reference/components/video-note/examples/overview.tsx +8 -0
- package/dist/skill/reference/components/video-note/examples/states.tsx +74 -0
- package/dist/skill/reference/components/video-note/examples/transcript.tsx +29 -0
- package/dist/skill/reference/components/video-note/examples/transfer.tsx +76 -0
- package/dist/skill/reference/components/visually-hidden/COMPONENT.md +81 -0
- package/dist/skill/reference/components/visually-hidden/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/voice-player/COMPONENT.md +192 -0
- package/dist/skill/reference/components/voice-player/examples/call-recording.tsx +34 -0
- package/dist/skill/reference/components/voice-player/examples/controlled.tsx +38 -0
- package/dist/skill/reference/components/voice-player/examples/examples.module.css +23 -0
- package/dist/skill/reference/components/voice-player/examples/in-message.tsx +29 -0
- package/dist/skill/reference/components/voice-player/examples/overview.tsx +13 -0
- package/dist/skill/reference/components/voice-player/examples/states.tsx +81 -0
- package/dist/skill/reference/components/voice-player/examples/transcript.tsx +50 -0
- package/dist/skill/reference/components/voice-player/examples/transfer.tsx +88 -0
- package/dist/skill/reference/icon-set.ts +530 -0
- package/dist/skill/reference/layout/app-header/COMPONENT.md +203 -0
- package/dist/skill/reference/layout/app-header/examples/breadcrumbs.tsx +36 -0
- package/dist/skill/reference/layout/app-header/examples/examples.module.css +47 -0
- package/dist/skill/reference/layout/app-header/examples/in-app-shell.tsx +70 -0
- package/dist/skill/reference/layout/app-header/examples/narrow.tsx +29 -0
- package/dist/skill/reference/layout/app-header/examples/overview.tsx +36 -0
- package/dist/skill/reference/layout/app-header/examples/page-title.tsx +85 -0
- package/dist/skill/reference/layout/app-shell/COMPONENT.md +156 -0
- package/dist/skill/reference/layout/app-shell/examples/contained.tsx +30 -0
- package/dist/skill/reference/layout/app-shell/examples/examples.module.css +44 -0
- package/dist/skill/reference/layout/app-shell/examples/footer.tsx +59 -0
- package/dist/skill/reference/layout/app-shell/examples/overview.tsx +83 -0
- package/dist/skill/reference/layout/app-shell/examples/template.tsx +54 -0
- package/dist/skill/reference/layout/bottom-nav/COMPONENT.md +169 -0
- package/dist/skill/reference/layout/bottom-nav/examples/examples.module.css +46 -0
- package/dist/skill/reference/layout/bottom-nav/examples/floating-action.tsx +91 -0
- package/dist/skill/reference/layout/bottom-nav/examples/floating.tsx +89 -0
- package/dist/skill/reference/layout/bottom-nav/examples/icon-only.tsx +41 -0
- package/dist/skill/reference/layout/bottom-nav/examples/in-app-shell.tsx +64 -0
- package/dist/skill/reference/layout/bottom-nav/examples/overview.tsx +44 -0
- package/dist/skill/reference/layout/bottom-nav/examples/router.tsx +31 -0
- package/dist/skill/reference/layout/bottom-nav/examples/structure.tsx +47 -0
- package/dist/skill/reference/layout/sidebar/COMPONENT.md +402 -0
- package/dist/skill/reference/layout/sidebar/examples/account.tsx +88 -0
- package/dist/skill/reference/layout/sidebar/examples/brand-header.tsx +45 -0
- package/dist/skill/reference/layout/sidebar/examples/collapsible-groups.tsx +77 -0
- package/dist/skill/reference/layout/sidebar/examples/controlled-open.tsx +55 -0
- package/dist/skill/reference/layout/sidebar/examples/controlled.tsx +68 -0
- package/dist/skill/reference/layout/sidebar/examples/examples.module.css +64 -0
- package/dist/skill/reference/layout/sidebar/examples/nested-items.tsx +74 -0
- package/dist/skill/reference/layout/sidebar/examples/overview.tsx +126 -0
- package/dist/skill/reference/layout/sidebar/examples/router.tsx +33 -0
- package/dist/skill/reference/layout/sidebar/examples/sizes.tsx +39 -0
- package/dist/skill/reference/layout/sidebar/examples/structure.tsx +81 -0
- package/dist/skill/responsive.md +274 -0
- package/dist/theme/chartColors.d.ts +20 -0
- package/dist/tokens/primitives.d.ts +30 -0
- package/dist/tokens/semantic.d.ts +188 -18
- package/dist/tokens/themes/dark.d.ts +41 -2
- package/package.json +14 -10
- package/src/components/accordion/COMPONENT.md +1 -1
- package/src/components/avatar/COMPONENT.md +5 -3
- package/src/components/avatar/examples/presence.tsx +17 -2
- package/src/components/avatar/examples/team-group.tsx +27 -7
- package/src/components/badge/COMPONENT.md +17 -6
- package/src/components/badge/examples/server-tags.tsx +61 -0
- package/src/components/badge/examples/states.tsx +9 -1
- package/src/components/banner/COMPONENT.md +1 -1
- package/src/components/breadcrumb/COMPONENT.md +2 -2
- package/src/components/button/COMPONENT.md +40 -14
- package/src/components/button/examples/circle.tsx +67 -0
- package/src/components/button/examples/examples.module.css +22 -0
- package/src/components/button/examples/hold-to-confirm.tsx +13 -2
- package/src/components/button/examples/over-media.tsx +36 -0
- package/src/components/button/examples/toggle.tsx +21 -0
- package/src/components/button-group/COMPONENT.md +30 -13
- package/src/components/button-group/examples/in-form.tsx +42 -7
- package/src/components/card/COMPONENT.md +37 -13
- package/src/components/card/examples/interactive.tsx +28 -0
- package/src/components/card/examples/panel-chart.tsx +2 -1
- package/src/components/card/examples/variants.tsx +3 -1
- package/src/components/chart-frame/COMPONENT.md +265 -0
- package/src/components/chart-frame/examples/controlled.tsx +92 -0
- package/src/components/chart-frame/examples/examples.module.css +6 -0
- package/src/components/chart-frame/examples/narrow.tsx +46 -0
- package/src/components/chart-frame/examples/overview.tsx +127 -0
- package/src/components/chart-frame/examples/states.tsx +78 -0
- package/src/components/chart-frame/examples/tooltip.tsx +158 -0
- package/src/components/chat/COMPONENT.md +336 -0
- package/src/components/chat/examples/controlled.tsx +68 -0
- package/src/components/chat/examples/examples.module.css +38 -0
- package/src/components/chat/examples/group-chat.tsx +130 -0
- package/src/components/chat/examples/live.tsx +89 -0
- package/src/components/chat/examples/narrow.tsx +46 -0
- package/src/components/chat/examples/overview.tsx +839 -0
- package/src/components/chat/examples/search.tsx +61 -0
- package/src/components/chat/examples/structure.tsx +28 -0
- package/src/components/checkbox/COMPONENT.md +14 -3
- package/src/components/checkbox/examples/variants.tsx +30 -0
- package/src/components/color-field/COMPONENT.md +163 -0
- package/src/components/color-field/examples/controlled.tsx +33 -0
- package/src/components/color-field/examples/examples.module.css +22 -0
- package/src/components/color-field/examples/in-form.tsx +45 -0
- package/src/components/color-field/examples/overview.tsx +6 -0
- package/src/components/color-field/examples/presets.tsx +20 -0
- package/src/components/color-field/examples/sizes.tsx +14 -0
- package/src/components/color-field/examples/states.tsx +12 -0
- package/src/components/color-field/examples/validation.tsx +29 -0
- package/src/components/color-picker/COMPONENT.md +26 -16
- package/src/components/color-picker/examples/overview.tsx +1 -1
- package/src/components/color-picker/examples/presets-sizes.tsx +3 -1
- package/src/components/color-picker/examples/presets.tsx +5 -3
- package/src/components/color-swatches/COMPONENT.md +13 -12
- package/src/components/color-swatches/examples/sizes.tsx +1 -1
- package/src/components/color-swatches/examples/wrapping.tsx +1 -1
- package/src/components/command-menu/COMPONENT.md +46 -17
- package/src/components/command-menu/examples/controlled.tsx +3 -3
- package/src/components/command-menu/examples/load-error.tsx +65 -0
- package/src/components/command-menu/examples/server-search.tsx +91 -0
- package/src/components/composer/COMPONENT.md +310 -0
- package/src/components/composer/examples/attachments.tsx +36 -0
- package/src/components/composer/examples/controlled.tsx +46 -0
- package/src/components/composer/examples/examples.module.css +30 -0
- package/src/components/composer/examples/formatting.tsx +15 -0
- package/src/components/composer/examples/narrow.tsx +22 -0
- package/src/components/composer/examples/overview.tsx +39 -0
- package/src/components/composer/examples/reply-edit.tsx +68 -0
- package/src/components/composer/examples/sizes.tsx +23 -0
- package/src/components/composer/examples/states.tsx +31 -0
- package/src/components/composer/examples/typing.tsx +24 -0
- package/src/components/composer/examples/voice.tsx +21 -0
- package/src/components/confirm-dialog/COMPONENT.md +124 -0
- package/src/components/confirm-dialog/examples/controlled-open.tsx +35 -0
- package/src/components/confirm-dialog/examples/failure.tsx +37 -0
- package/src/components/confirm-dialog/examples/overview.tsx +24 -0
- package/src/components/confirm-dialog/examples/variants.tsx +44 -0
- package/src/components/crossfade/COMPONENT.md +16 -2
- package/src/components/crossfade/examples/examples.module.css +28 -0
- package/src/components/crossfade/examples/fill.tsx +79 -0
- package/src/components/data-table/COMPONENT.md +136 -29
- package/src/components/data-table/examples/columns-visibility.tsx +26 -42
- package/src/components/data-table/examples/examples.module.css +9 -0
- package/src/components/data-table/examples/fill-height.tsx +55 -0
- package/src/components/data-table/examples/groups.tsx +73 -0
- package/src/components/data-table/examples/heatmap.tsx +44 -0
- package/src/components/data-table/examples/reorder.tsx +61 -0
- package/src/components/data-table/examples/row-link.tsx +100 -0
- package/src/components/data-table/examples/row-open.tsx +129 -0
- package/src/components/data-table/examples/server.tsx +181 -0
- package/src/components/datepicker/COMPONENT.md +14 -10
- package/src/components/datepicker/examples/in-form.tsx +12 -3
- package/src/components/datepicker/examples/inline-panel.tsx +9 -3
- package/src/components/description-list/COMPONENT.md +132 -0
- package/src/components/description-list/examples/examples.module.css +41 -0
- package/src/components/description-list/examples/narrow.tsx +20 -0
- package/src/components/description-list/examples/overview.tsx +35 -0
- package/src/components/description-list/examples/sizes.tsx +24 -0
- package/src/components/description-list/examples/structure.tsx +29 -0
- package/src/components/description-list/examples/vertical.tsx +21 -0
- package/src/components/digit-input/COMPONENT.md +12 -6
- package/src/components/digit-input/examples/on-complete.tsx +19 -7
- package/src/components/divider/COMPONENT.md +1 -1
- package/src/components/dnd/COMPONENT.md +93 -30
- package/src/components/dnd/examples/board.tsx +16 -8
- package/src/components/dnd/examples/drop-zones.tsx +2 -2
- package/src/components/dnd/examples/examples.module.css +23 -0
- package/src/components/dnd/examples/grid.tsx +48 -0
- package/src/components/dnd/examples/handle.tsx +7 -2
- package/src/components/dnd/examples/locked.tsx +57 -0
- package/src/components/dnd/examples/narrow.tsx +1 -1
- package/src/components/drawer/COMPONENT.md +66 -33
- package/src/components/drawer/examples/controlled-open.tsx +8 -1
- package/src/components/drawer/examples/examples.module.css +0 -5
- package/src/components/drawer/examples/guard.tsx +80 -0
- package/src/components/drawer/examples/header-actions.tsx +63 -0
- package/src/components/drawer/examples/overview.tsx +9 -1
- package/src/components/drawer/examples/placement.tsx +9 -4
- package/src/components/drawer/examples/sizes.tsx +7 -0
- package/src/components/dropdown/COMPONENT.md +35 -17
- package/src/components/dropdown/examples/item-description.tsx +30 -0
- package/src/components/dropdown/examples/link-items.tsx +29 -0
- package/src/components/dropdown/examples/overview.tsx +1 -1
- package/src/components/dropdown/examples/structure.tsx +1 -1
- package/src/components/empty-page/COMPONENT.md +44 -16
- package/src/components/empty-page/examples/examples.module.css +19 -2
- package/src/components/empty-page/examples/region-error.tsx +86 -0
- package/src/components/empty-page/examples/variants.tsx +43 -0
- package/src/components/example-frame/COMPONENT.md +3 -2
- package/src/components/fieldset/COMPONENT.md +107 -0
- package/src/components/fieldset/examples/examples.module.css +14 -0
- package/src/components/fieldset/examples/in-form.tsx +59 -0
- package/src/components/fieldset/examples/overview.tsx +22 -0
- package/src/components/fieldset/examples/states.tsx +35 -0
- package/src/components/file-upload/COMPONENT.md +254 -62
- package/src/components/file-upload/examples/attachment-tray.tsx +99 -0
- package/src/components/file-upload/examples/controlled.tsx +77 -0
- package/src/components/file-upload/examples/examples.module.css +38 -7
- package/src/components/file-upload/examples/file-cards.tsx +64 -0
- package/src/components/file-upload/examples/gallery.tsx +104 -0
- package/src/components/file-upload/examples/in-form.tsx +33 -54
- package/src/components/file-upload/examples/narrow.tsx +64 -8
- package/src/components/file-upload/examples/overview.tsx +34 -37
- package/src/components/file-upload/examples/row-parts.tsx +41 -0
- package/src/components/file-upload/examples/saving.tsx +71 -0
- package/src/components/file-upload/examples/sizes.tsx +13 -14
- package/src/components/file-upload/examples/states.tsx +12 -3
- package/src/components/file-upload/examples/validation.tsx +17 -25
- package/src/components/file-upload/examples/variants.tsx +21 -2
- package/src/components/gallery/COMPONENT.md +151 -0
- package/src/components/gallery/examples/controlled-open.tsx +39 -0
- package/src/components/gallery/examples/examples.module.css +14 -0
- package/src/components/gallery/examples/overview.tsx +52 -0
- package/src/components/gallery/examples/transfer.tsx +45 -0
- package/src/components/gantt/COMPONENT.md +224 -0
- package/src/components/gantt/examples/controlled.tsx +72 -0
- package/src/components/gantt/examples/examples.module.css +30 -0
- package/src/components/gantt/examples/large.tsx +96 -0
- package/src/components/gantt/examples/narrow.tsx +54 -0
- package/src/components/gantt/examples/occupancy.tsx +149 -0
- package/src/components/gantt/examples/overview.tsx +82 -0
- package/src/components/gantt/examples/sizes.tsx +48 -0
- package/src/components/gantt/examples/states.tsx +68 -0
- package/src/components/gantt/examples/variants.tsx +82 -0
- package/src/components/hint/COMPONENT.md +3 -3
- package/src/components/hint/examples/overview.tsx +10 -22
- package/src/components/input/COMPONENT.md +69 -13
- package/src/components/input/examples/edge-actions.tsx +30 -0
- package/src/components/input/examples/inline-edit.tsx +52 -0
- package/src/components/input/examples/password-strength.tsx +2 -1
- package/src/components/kanban/COMPONENT.md +94 -36
- package/src/components/kanban/examples/cards.tsx +152 -0
- package/src/components/kanban/examples/columns.tsx +182 -0
- package/src/components/kanban/examples/examples.module.css +6 -0
- package/src/components/kanban/examples/limits.tsx +5 -3
- package/src/components/kanban/examples/saving.tsx +83 -0
- package/src/components/kanban/examples/variants.tsx +57 -0
- package/src/components/label/COMPONENT.md +4 -4
- package/src/components/label/examples/overview.tsx +11 -8
- package/src/components/link-button/COMPONENT.md +3 -1
- package/src/components/login-form/COMPONENT.md +4 -3
- package/src/components/login-form/examples/overview.tsx +2 -2
- package/src/components/login-form/examples/register.tsx +2 -7
- package/src/components/login-form/examples/states.tsx +18 -22
- package/src/components/media-viewer/COMPONENT.md +207 -0
- package/src/components/media-viewer/examples/actions.tsx +86 -0
- package/src/components/media-viewer/examples/controlled-open.tsx +30 -0
- package/src/components/media-viewer/examples/controlled.tsx +54 -0
- package/src/components/media-viewer/examples/dismiss.tsx +34 -0
- package/src/components/media-viewer/examples/examples.module.css +16 -0
- package/src/components/media-viewer/examples/origin.tsx +60 -0
- package/src/components/media-viewer/examples/overview.tsx +75 -0
- package/src/components/media-viewer/examples/thumbnails.tsx +49 -0
- package/src/components/media-viewer/examples/video.tsx +55 -0
- package/src/components/message/COMPONENT.md +444 -0
- package/src/components/message/examples/author.tsx +74 -0
- package/src/components/message/examples/contact.tsx +24 -0
- package/src/components/message/examples/context-menu.tsx +71 -0
- package/src/components/message/examples/examples.module.css +18 -0
- package/src/components/message/examples/file.tsx +79 -0
- package/src/components/message/examples/kinds.tsx +93 -0
- package/src/components/message/examples/link-preview.tsx +17 -0
- package/src/components/message/examples/location.tsx +30 -0
- package/src/components/message/examples/media.tsx +93 -0
- package/src/components/message/examples/narrow.tsx +29 -0
- package/src/components/message/examples/overview.tsx +52 -0
- package/src/components/message/examples/reactions.tsx +73 -0
- package/src/components/message/examples/status.tsx +45 -0
- package/src/components/message/examples/structure.tsx +32 -0
- package/src/components/message/examples/text-formatting.tsx +27 -0
- package/src/components/message/examples/typing.tsx +22 -0
- package/src/components/message/examples/voice.tsx +39 -0
- package/src/components/modal/COMPONENT.md +51 -20
- package/src/components/modal/examples/guard.tsx +87 -0
- package/src/components/modal/examples/sizes.tsx +2 -1
- package/src/components/native-select/COMPONENT.md +1 -1
- package/src/components/notification/COMPONENT.md +4 -1
- package/src/components/notification/examples/examples.module.css +11 -1
- package/src/components/notification/examples/undo.tsx +61 -0
- package/src/components/page-content/COMPONENT.md +78 -11
- package/src/components/page-content/examples/examples.module.css +54 -0
- package/src/components/page-content/examples/list-detail.tsx +114 -0
- package/src/components/page-content/examples/variants.tsx +1 -1
- package/src/components/page-toolbar/COMPONENT.md +21 -22
- package/src/components/page-toolbar/examples/narrow.tsx +4 -4
- package/src/components/page-toolbar/examples/overview.tsx +4 -4
- package/src/components/pagination/COMPONENT.md +1 -1
- package/src/components/popover/COMPONENT.md +15 -7
- package/src/components/popover/examples/examples.module.css +5 -0
- package/src/components/popover/examples/from-menu.tsx +56 -0
- package/src/components/progress-bar/COMPONENT.md +57 -13
- package/src/components/progress-bar/examples/legend.tsx +28 -0
- package/src/components/progress-bar/examples/ranking.tsx +28 -0
- package/src/components/progress-bar/examples/states.tsx +43 -0
- package/src/components/progress-circle/COMPONENT.md +70 -27
- package/src/components/progress-circle/examples/examples.module.css +5 -0
- package/src/components/progress-circle/examples/legend.tsx +33 -0
- package/src/components/progress-circle/examples/states.tsx +25 -0
- package/src/components/progress-circle/examples/under-way.tsx +54 -0
- package/src/components/radio/COMPONENT.md +3 -3
- package/src/components/scroll-container/COMPONENT.md +85 -24
- package/src/components/scroll-container/examples/auto-scroll.tsx +52 -0
- package/src/components/scroll-container/examples/chat.tsx +101 -0
- package/src/components/scroll-container/examples/edges.tsx +43 -0
- package/src/components/scroll-container/examples/examples.module.css +73 -0
- package/src/components/scroll-container/examples/lock.tsx +49 -0
- package/src/components/scroll-container/examples/scrollbar.tsx +52 -0
- package/src/components/scroll-container/examples/snap.tsx +36 -0
- package/src/components/segmented-control/COMPONENT.md +32 -13
- package/src/components/segmented-control/examples/examples.module.css +11 -0
- package/src/components/segmented-control/examples/in-form.tsx +42 -0
- package/src/components/select/COMPONENT.md +89 -21
- package/src/components/select/examples/load-error.tsx +45 -0
- package/src/components/select/examples/people.tsx +53 -0
- package/src/components/select/examples/server-search.tsx +93 -0
- package/src/components/sheet/COMPONENT.md +216 -0
- package/src/components/sheet/examples/controlled-open.tsx +37 -0
- package/src/components/sheet/examples/dismiss.tsx +42 -0
- package/src/components/sheet/examples/examples.module.css +13 -0
- package/src/components/sheet/examples/in-form.tsx +65 -0
- package/src/components/sheet/examples/overview.tsx +50 -0
- package/src/components/sheet/examples/structure.tsx +35 -0
- package/src/components/skeleton/COMPONENT.md +1 -1
- package/src/components/slider/COMPONENT.md +21 -4
- package/src/components/slider/examples/autosave.tsx +39 -0
- package/src/components/slider/examples/examples.module.css +6 -0
- package/src/components/slider/examples/orientation.tsx +27 -0
- package/src/components/smart-filter/COMPONENT.md +67 -16
- package/src/components/smart-filter/examples/option-groups.tsx +40 -0
- package/src/components/smart-filter/examples/ranges.tsx +89 -0
- package/src/components/smart-filter/examples/single-value.tsx +41 -0
- package/src/components/sparkline/COMPONENT.md +48 -19
- package/src/components/sparkline/examples/signed-bars.tsx +41 -0
- package/src/components/sparkline/examples/states.tsx +30 -0
- package/src/components/sparkline/examples/variants.tsx +29 -0
- package/src/components/spinner/COMPONENT.md +10 -8
- package/src/components/stepper/COMPONENT.md +4 -0
- package/src/components/switch/COMPONENT.md +11 -5
- package/src/components/switch/examples/in-form.tsx +3 -1
- package/src/components/switch/examples/saving.tsx +53 -0
- package/src/components/switch/examples/states.tsx +6 -1
- package/src/components/tabs/COMPONENT.md +46 -26
- package/src/components/tabs/examples/examples.module.css +6 -0
- package/src/components/tabs/examples/in-drawer.tsx +100 -0
- package/src/components/tabs/examples/overview.tsx +1 -1
- package/src/components/tag-select/COMPONENT.md +34 -21
- package/src/components/tag-select/examples/confirm-delete.tsx +60 -0
- package/src/components/tag-select/examples/creatable.tsx +23 -2
- package/src/components/tag-select/examples/in-form.tsx +9 -2
- package/src/components/tag-select/examples/manage-tags.tsx +10 -6
- package/src/components/textarea/COMPONENT.md +57 -10
- package/src/components/textarea/examples/auto-resize.tsx +8 -1
- package/src/components/textarea/examples/edge-actions.tsx +24 -0
- package/src/components/textarea/examples/inline-edit.tsx +42 -0
- package/src/components/thumbnail/COMPONENT.md +51 -10
- package/src/components/thumbnail/examples/controlled.tsx +61 -0
- package/src/components/thumbnail/examples/examples.module.css +31 -0
- package/src/components/thumbnail/examples/full-width.tsx +2 -5
- package/src/components/thumbnail/examples/overview.tsx +2 -6
- package/src/components/thumbnail/examples/pressable.tsx +56 -0
- package/src/components/thumbnail/examples/video.tsx +46 -0
- package/src/components/timeline/COMPONENT.md +2 -1
- package/src/components/tooltip/COMPONENT.md +13 -7
- package/src/components/tooltip/examples/disabled-trigger.tsx +2 -7
- package/src/components/tooltip/examples/examples.module.css +6 -9
- package/src/components/tooltip/examples/non-interactive-trigger.tsx +31 -0
- package/src/components/typography/COMPONENT.md +2 -0
- package/src/components/video-note/COMPONENT.md +173 -0
- package/src/components/video-note/examples/controlled.tsx +28 -0
- package/src/components/video-note/examples/examples.module.css +4 -0
- package/src/components/video-note/examples/in-message.tsx +22 -0
- package/src/components/video-note/examples/overview.tsx +8 -0
- package/src/components/video-note/examples/states.tsx +74 -0
- package/src/components/video-note/examples/transcript.tsx +29 -0
- package/src/components/video-note/examples/transfer.tsx +76 -0
- package/src/components/visually-hidden/COMPONENT.md +81 -0
- package/src/components/visually-hidden/examples/overview.tsx +22 -0
- package/src/components/voice-player/COMPONENT.md +192 -0
- package/src/components/voice-player/examples/call-recording.tsx +34 -0
- package/src/components/voice-player/examples/controlled.tsx +38 -0
- package/src/components/voice-player/examples/examples.module.css +23 -0
- package/src/components/voice-player/examples/in-message.tsx +29 -0
- package/src/components/voice-player/examples/overview.tsx +13 -0
- package/src/components/voice-player/examples/states.tsx +81 -0
- package/src/components/voice-player/examples/transcript.tsx +50 -0
- package/src/components/voice-player/examples/transfer.tsx +88 -0
- package/src/layout/app-header/COMPONENT.md +35 -10
- package/src/layout/app-header/examples/page-title.tsx +85 -0
- package/src/layout/app-shell/COMPONENT.md +11 -5
- package/src/layout/app-shell/examples/examples.module.css +1 -1
- package/src/layout/app-shell/examples/footer.tsx +1 -1
- package/src/layout/bottom-nav/COMPONENT.md +50 -34
- package/src/layout/bottom-nav/examples/examples.module.css +8 -1
- package/src/layout/bottom-nav/examples/floating-action.tsx +91 -0
- package/src/layout/bottom-nav/examples/floating.tsx +6 -6
- package/src/layout/bottom-nav/examples/in-app-shell.tsx +1 -1
- package/src/layout/sidebar/COMPONENT.md +18 -13
- package/src/layout/sidebar/examples/account.tsx +1 -1
- package/src/layout/sidebar/examples/overview.tsx +1 -1
- package/src/styles/controls.css +138 -0
- package/src/styles/globals.css +8 -0
- package/src/styles/reset.css +34 -30
- package/src/styles/theme-dark.css +30 -2
- package/src/styles/theme-light.css +72 -6
- package/src/styles/tokens.css +17 -0
- package/dist/chunks/chunk-4TRNUP45.js +0 -4052
- package/dist/chunks/chunk-GFKDZFQR.js +0 -1208
- package/dist/chunks/chunk-K4FACFQ2.js +0 -13552
- package/dist/components/dnd/autoScroll.d.ts +0 -5
- package/src/components/file-upload/examples/upload-progress.tsx +0 -39
- package/src/components/scroll-container/examples/edge-fade.tsx +0 -53
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
# Anti-slop
|
|
2
|
+
|
|
3
|
+
What makes a screen look generated. Each rule: bad → good. Screen-level mistakes (cards around
|
|
4
|
+
everything, one gap for the whole page, two primary buttons) are listed in
|
|
5
|
+
[composition.md](composition.md#13-screen-level-anti-slop).
|
|
6
|
+
|
|
7
|
+
## 1. Same-looking things built differently
|
|
8
|
+
|
|
9
|
+
Two status labels, one a Badge and one a styled `span`; three cards with three different paddings.
|
|
10
|
+
|
|
11
|
+
```tsx partial
|
|
12
|
+
// bad
|
|
13
|
+
<span className={styles.paid}>Оплачен</span>
|
|
14
|
+
<Badge.Root color="orange">Ожидает</Badge.Root>
|
|
15
|
+
|
|
16
|
+
// good — one component, one hue per meaning everywhere
|
|
17
|
+
<Badge.Root color="green">Оплачен</Badge.Root>
|
|
18
|
+
<Badge.Root color="orange">Ожидает</Badge.Root>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Map statuses to colors once (`const STATUS_COLOR: Record<Status, PaletteColor>`) and reuse it.
|
|
22
|
+
|
|
23
|
+
## 2. Inline styles, raw values, primitive tokens
|
|
24
|
+
|
|
25
|
+
```tsx partial
|
|
26
|
+
// bad
|
|
27
|
+
<div style={{ display: "flex", gap: 12, padding: "18px", color: "#6b7280" }} />
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
```css
|
|
31
|
+
/* bad */
|
|
32
|
+
.row { gap: 12px; color: var(--prime-ref-color-gray-500); }
|
|
33
|
+
|
|
34
|
+
/* good */
|
|
35
|
+
.row { display: flex; gap: var(--prime-space-3); }
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Text color goes through `Typography tone="secondary"`, not CSS.
|
|
39
|
+
|
|
40
|
+
## 3. Borders instead of fill; card in a card
|
|
41
|
+
|
|
42
|
+
```css
|
|
43
|
+
/* bad */
|
|
44
|
+
.panel { border: 1px solid var(--prime-color-border-default); background: transparent; }
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
```tsx partial
|
|
48
|
+
// bad — a card around a card around a table
|
|
49
|
+
<Card.Root><Card.Root><DataTable columns={columns} rows={rows} /></Card.Root></Card.Root>
|
|
50
|
+
|
|
51
|
+
// good — DataTable already is a filled block; a section heading is enough
|
|
52
|
+
<Typography as="h2" variant="title-m">Последние оплаты</Typography>
|
|
53
|
+
<DataTable columns={columns} rows={rows} />
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## 3a. Hover that merges with the neighbour
|
|
57
|
+
|
|
58
|
+
A 4% wash (`fill-subtle`) is exactly one step of the surface ladder. On an opaque card it turns the
|
|
59
|
+
card into the color of what it lies on — the page, a column, a zebra row — and the card vanishes
|
|
60
|
+
under the pointer. A fixed layer color (`--prime-color-layer-floating-bg`) on something that can lie
|
|
61
|
+
on different hosts does the same: on a white host the "white card" is already the host.
|
|
62
|
+
|
|
63
|
+
```css
|
|
64
|
+
/* bad — the clickable card washes one step: on hover it is the page's own gray */
|
|
65
|
+
.tile { background: var(--prime-color-layer-1-bg); }
|
|
66
|
+
.tile:hover { background: var(--prime-color-fill-subtle); }
|
|
67
|
+
|
|
68
|
+
/* good — a whole surface lifts; a part touching the edge goes two steps; colors come from context */
|
|
69
|
+
.tile { position: relative; transition: box-shadow var(--prime-motion-duration-fast) var(--prime-motion-easing-standard); }
|
|
70
|
+
.tile:hover { z-index: 1; box-shadow: var(--prime-shadow-overlay); } /* above its neighbours, or they cover the shadow */
|
|
71
|
+
.row:hover { background: var(--prime-color-fill-muted-hover); }
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Build the tile as a `Card` (it takes the right layer wherever it lands). Check every hover on the page
|
|
75
|
+
and inside a card, in both themes: rest, hover and the neighbour must be three different colors.
|
|
76
|
+
|
|
77
|
+
## 4. Mixed control sizes in one row
|
|
78
|
+
|
|
79
|
+
```tsx partial
|
|
80
|
+
// bad
|
|
81
|
+
<Input.Root size="s">…</Input.Root>
|
|
82
|
+
<Button.Root>Найти</Button.Root>
|
|
83
|
+
|
|
84
|
+
// good
|
|
85
|
+
<Input.Root size="s">…</Input.Root>
|
|
86
|
+
<Button.Root size="s">Найти</Button.Root>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## 5. Placeholder instead of label
|
|
90
|
+
|
|
91
|
+
```tsx partial
|
|
92
|
+
// bad
|
|
93
|
+
<Input.Root>
|
|
94
|
+
<Input.Wrapper>
|
|
95
|
+
<Input.Field placeholder="Email" />
|
|
96
|
+
</Input.Wrapper>
|
|
97
|
+
</Input.Root>
|
|
98
|
+
|
|
99
|
+
// good
|
|
100
|
+
<Input.Root label="Почта">
|
|
101
|
+
<Input.Wrapper>
|
|
102
|
+
<Input.Field placeholder="name@company.ru" />
|
|
103
|
+
</Input.Wrapper>
|
|
104
|
+
</Input.Root>
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
A search field in a toolbar may go without a visible label, but then it needs `aria-label`.
|
|
108
|
+
|
|
109
|
+
## 6. Everything on one level of air
|
|
110
|
+
|
|
111
|
+
```css
|
|
112
|
+
/* bad — 16 between fields, groups and sections alike */
|
|
113
|
+
.page, .form, .group { display: grid; gap: var(--prime-space-4); }
|
|
114
|
+
|
|
115
|
+
/* good — proximity scale */
|
|
116
|
+
.form { display: grid; gap: var(--prime-space-8); } /* group → group 32 */
|
|
117
|
+
.group { display: grid; gap: var(--prime-space-5); } /* field → field 20 */
|
|
118
|
+
/* section → section 40 comes from PageContent.Body */
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 7. `div` instead of a ready component
|
|
122
|
+
|
|
123
|
+
| Instead of | Use |
|
|
124
|
+
|---|---|
|
|
125
|
+
| `<div className={styles.line} />` | `<Divider />` |
|
|
126
|
+
| `<span className={styles.key}>⌘</span>` | `<Kbd aria-label="Command">⌘</Kbd>` |
|
|
127
|
+
| `<h2 className={styles.title}>` with custom font size | `<Typography as="h2" variant="title-m">` |
|
|
128
|
+
| `<span className={styles.pill}>Новый</span>` | `<Badge.Root color="blue">Новый</Badge.Root>` |
|
|
129
|
+
| `<div className={styles.box}>` with bg + radius | `<Card.Root variant="panel">` |
|
|
130
|
+
| `<a className={styles.link}>` | `<LinkButton href="…">` |
|
|
131
|
+
| a list of `<button>`s for navigation | `Sidebar.Item href`, `Tabs.Item` |
|
|
132
|
+
| `<Button.Root onClick={() => location.assign(url)}>` | `<Button.Root asChild><a href={url}>…</a></Button.Root>` or `LinkButton` |
|
|
133
|
+
| a hand-built spinner, shimmer, grey placeholder box or «Loading…» text | `loading` on Button / Select / DataTable; a region: `Skeleton` of its content inside `Crossfade`; no shape to hold: `Spinner` |
|
|
134
|
+
| `{loading ? <Spinner /> : <List />}` — a state that flips | `<Crossfade state={status}>` around the region, `Skeleton` while loading |
|
|
135
|
+
| a search Input + a row of filter Selects above a table | `SmartFilter` in the DataTable `toolbar` |
|
|
136
|
+
| a grid of «label: value» text pairs for one record | `DescriptionList.Root` + `DescriptionList.Item` |
|
|
137
|
+
| a Modal hand-built as «Удалить?» with your own pending flag | `ConfirmDialog.Root` with an async `onConfirm` |
|
|
138
|
+
| a `<fieldset>` reset by hand, or `disabled` on every field while saving | `<Fieldset label disabled={saving}>` |
|
|
139
|
+
| your own list of files with progress bars and retry | `useUploadQueue` → FileUpload `queue` |
|
|
140
|
+
| chat bubbles from Cards or a Timeline, a Textarea with a send button, a chat header and scroller of your own | `Chat` (`Chat.Messages` of `Message.Root`, `Chat.Footer` with `Composer.Root`) |
|
|
141
|
+
| bars of dates drawn by hand, or a DataTable of start / end dates | `Gantt` |
|
|
142
|
+
| a hand-made `<span>` hidden with CSS for screen readers | `<VisuallyHidden>` |
|
|
143
|
+
| a `div` with `overflow: auto` | `ScrollContainer` (`edges`, `scrollbar="hidden"`, `snap`) |
|
|
144
|
+
| an `<img>` with your own radius and loading box | `Thumbnail.Root` / `Avatar.Root` |
|
|
145
|
+
| a lightbox, or a Modal with an `<img>` | `Gallery` (opens `MediaViewer` itself) or `MediaViewer` |
|
|
146
|
+
| a `position: fixed` bottom tab bar | `BottomNav` in `AppShell.Footer` |
|
|
147
|
+
| a bottom panel built from a Drawer or a `div` | `Sheet` |
|
|
148
|
+
|
|
149
|
+
## 7a. Fighting the table
|
|
150
|
+
|
|
151
|
+
```css
|
|
152
|
+
/* bad — fixed rows squash two-line cells; restyled sort icons and dividers */
|
|
153
|
+
.table :global(td) { height: 44px; padding: 0; }
|
|
154
|
+
.table :global(th) svg { color: var(--prime-color-accent-default); }
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
```tsx partial
|
|
158
|
+
// good — content drives the height, cell controls one tier down, kit draws dividers and sort icons
|
|
159
|
+
<DataTable columns={columns} rows={rows} getRowKey={(row) => row.id} />
|
|
160
|
+
// in a column cell: <Button.Root size="s" variant="ghost" tone="neutral">Настроить</Button.Root>
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## 8. Decoration and filler
|
|
164
|
+
|
|
165
|
+
- No emoji in UI. No icon next to every label — an icon earns its place when it speeds recognition
|
|
166
|
+
(navigation, file types, status) or is the only content (icon-only button with `aria-label`).
|
|
167
|
+
- No subtitle that repeats the title («Настройки — здесь вы можете изменить настройки»).
|
|
168
|
+
- No placeholder text in empty states like «Здесь пока ничего нет :(» — say what to do and give the action.
|
|
169
|
+
- No gradients, glows, extra shadows, colored section backgrounds. The kit's fill hierarchy is the style.
|
|
170
|
+
- One primary (solid accent) button per area. Five solid buttons in a row is noise.
|
|
171
|
+
|
|
172
|
+
## 8a. Icons from elsewhere, icons that do not move
|
|
173
|
+
|
|
174
|
+
Kit icons are animated: each glyph plays its gesture when its button, link, tab, menu item or row is
|
|
175
|
+
hovered or pressed. A glyph from another source sits dead next to them, and a hand-made hover spin
|
|
176
|
+
fights them.
|
|
177
|
+
|
|
178
|
+
```tsx partial
|
|
179
|
+
// bad — a raw lucide glyph, an inline svg, and a hover spin of your own
|
|
180
|
+
import { Archive } from "lucide-react";
|
|
181
|
+
<Button.Icon><Archive /></Button.Icon>
|
|
182
|
+
<svg viewBox="0 0 24 24"><path d="M3 6h18" /></svg>
|
|
183
|
+
.button:hover .icon { transform: rotate(90deg); }
|
|
184
|
+
|
|
185
|
+
// good — the semantic name first, then the full animated set, createIcon only for the rest
|
|
186
|
+
<Button.Icon><Icon name="action.settings" /></Button.Icon>
|
|
187
|
+
import { ArchiveIcon } from "prime-ui-kit/icons";
|
|
188
|
+
<Button.Icon><ArchiveIcon /></Button.Icon>
|
|
189
|
+
const IconTractor = createIcon(Tractor); // only a glyph neither set has
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
## 9. Hand-made overlays
|
|
193
|
+
|
|
194
|
+
```tsx partial
|
|
195
|
+
// bad
|
|
196
|
+
{open && <div className={styles.backdrop}><div className={styles.dialog}>…</div></div>}
|
|
197
|
+
<div className={styles.tooltip} hidden={!hover}>Копировать</div>
|
|
198
|
+
|
|
199
|
+
// good
|
|
200
|
+
<Modal.Root open={open} onOpenChange={setOpen}>…</Modal.Root>
|
|
201
|
+
<Tooltip.Root>
|
|
202
|
+
<Tooltip.Trigger>
|
|
203
|
+
<Button.Root variant="ghost" tone="neutral" aria-label="Копировать ссылку">
|
|
204
|
+
<Button.Icon>
|
|
205
|
+
<Icon name="action.copy" />
|
|
206
|
+
</Button.Icon>
|
|
207
|
+
</Button.Root>
|
|
208
|
+
</Tooltip.Trigger>
|
|
209
|
+
<Tooltip.Content>Копировать</Tooltip.Content>
|
|
210
|
+
</Tooltip.Root>
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
Kit overlays handle focus trap, Escape, outside click, stacking and motion. A custom one gets all of
|
|
214
|
+
these wrong.
|
|
215
|
+
|
|
216
|
+
## 10. Overriding kit styles
|
|
217
|
+
|
|
218
|
+
```css
|
|
219
|
+
/* bad */
|
|
220
|
+
.myForm :global(button) { border-radius: 2px; height: 30px; }
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
Need a different look? Use the component's `variant`/`tone`/`size`. If none fits, the design is off-
|
|
224
|
+
system — ask instead of patching.
|
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
# API contract v1
|
|
2
|
+
|
|
3
|
+
One name per concept across the whole kit. If a prop name below does not appear in a component's
|
|
4
|
+
`COMPONENT.md` API table, the component does not have it — do not invent it.
|
|
5
|
+
|
|
6
|
+
## Shared vocabulary (exported types)
|
|
7
|
+
|
|
8
|
+
```ts
|
|
9
|
+
import type { ControlSize, PaletteColor, TextTone, Tone, Variant } from "prime-ui-kit";
|
|
10
|
+
// ControlSize "xs" | "s" | "m" | "l" | "xl" default "m"
|
|
11
|
+
// Variant "solid" | "soft" | "outline" | "ghost" each component uses a subset
|
|
12
|
+
// Tone "neutral" | "accent" | "success" | "warning" | "danger" | "info"
|
|
13
|
+
// PaletteColor "gray" | "blue" | "green" | "orange" | "red" | "yellow" | "purple" | "sky" | "pink" | "teal"
|
|
14
|
+
// TextTone "default" | "secondary" | "muted" | "accent" | "success" | "warning" | "danger"
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
| Concept | API | Notes |
|
|
18
|
+
|---|---|---|
|
|
19
|
+
| Size | `size` | Default `m`, on the root only; parts read it from the root. Avatar adds `2xl`; an overlay `Content` (Modal, Drawer, Popover, Dropdown, Tooltip) takes `size` for its width. Without `size` these take the tier of a sized host (Popover, Banner, LoginForm, DataTable toolbar, `ControlSizeProvider`), else `m`: Input, Textarea, DigitInput, Checkbox, Radio, Switch, Slider, FileUpload, ColorSwatches, ColorPresets, SegmentedControl, Button, ButtonGroup, LinkButton, Label, Badge, Spinner, Skeleton, DescriptionList, Composer, `Icon`, `Checkbox.Indicator`. Select, NativeSelect, TagSelect, Datepicker, Tabs and SmartFilter do **not** read the host — give them `size` yourself. |
|
|
20
|
+
| Treatment | `variant` | `solid · soft · outline · ghost`; Button also takes `shade` (the media shade with a blur, a button over media); structural variants are component-specific (Card templates, FileUpload `dashed \| solid`). Tabs has no variant. |
|
|
21
|
+
| Meaning | `tone` | Button: `accent \| neutral \| success \| danger` (`success` for a done action), plus `inherit` (with `ghost \| soft \| outline`) for an action on a colored host — it takes the host's text color; never recolor a Button with a CSS override. Destructive is `danger`, never `error`. |
|
|
22
|
+
| Decoration | `color` | Badge, Avatar, Thumbnail, Icon, `SegmentedControl.Item`, `Tabs.Count` / `SegmentedControl.Count`, `Sidebar.ItemCount` / `BottomNav.ItemCount`, `FileUpload.FormatBadge`, `Timeline.Item`, `Message.Author` / `Message.Reply` / `Message.Contact`; in data: TagSelect options, Kanban columns, Gantt bars. |
|
|
23
|
+
| Validation | `invalid`, `hint`, `error` | Props, never parts. A non-empty `error` implies `invalid`; sets `aria-invalid`, `data-invalid`. |
|
|
24
|
+
| Value | `value` / `defaultValue` / `onValueChange(value)` | Select, NativeSelect, TagSelect, Tabs, SegmentedControl, Slider, Datepicker, Accordion, Radio.Group, DigitInput, Pagination, SmartFilter, ColorPicker, ColorField, ColorSwatches, Kanban, FileUpload (its files), Composer (its text). |
|
|
25
|
+
| Text value | native `value` / `onChange` + `onValueChange(string)` | Input (`Input.Field`), Textarea. |
|
|
26
|
+
| Other state | `x` / `defaultX` / `onXChange(x)` | DataTable `sort`, `page`, `selected`, `expanded`, `hiddenColumns`; SmartFilter, Select and CommandMenu `search`; Sidebar `mode`; Kanban `columnOrder`; Gantt `scale`; `Chat.Root` `selected` and `search`; Composer `recordMode`; VoicePlayer `rate`; MediaViewer and Gallery `index`; ChartFrame `hiddenSeries`; ColorPicker `format`; VoicePlayer / VideoNote `transcriptExpanded`. |
|
|
27
|
+
| Checked | `checked` / `defaultChecked` / `onCheckedChange(checked)` | Checkbox, Switch. |
|
|
28
|
+
| Open | `open` / `defaultOpen` / `onOpenChange(open)` | Every overlay and disclosure (Modal, Drawer, Sheet, ConfirmDialog, Popover, Dropdown, Tooltip, CommandMenu, MediaViewer, Select, TagSelect, Datepicker, ColorPicker, Sidebar off-canvas). |
|
|
29
|
+
| Dismiss | `closeOnOutsideClick` (default `true`), `closeOnEscape` (default `true`) | Both on every overlay: Modal, Drawer, Sheet, CommandMenu, Popover, Dropdown, MediaViewer. A destructive confirm is `ConfirmDialog` (it turns outside click off itself; Escape is held while `onConfirm` runs); a form holds closing with `Modal.Guard` / `Drawer.Guard` / `Sheet.Guard`. |
|
|
30
|
+
| Selection mode | `multiple` | One vs many (Select, Accordion) — never `type`. `mode` only for structurally different values (Datepicker `single \| range`). |
|
|
31
|
+
| Status words | `selected`, `current`, `pressed` | `current` marks a navigation location (`Sidebar.Item`, `Breadcrumb.Item`) and sets `aria-current`; `pressed` a toggle button. |
|
|
32
|
+
| Flags | `disabled`, `readOnly`, `required`, `optional`, `loading`, `fullWidth` | Same names everywhere. |
|
|
33
|
+
| Focus ring | `focusRing` (default `true`) | Fields only; `false` only where focus is obvious otherwise. |
|
|
34
|
+
| System strings | `labels?: Partial<XLabels>` | aria labels, counters, default texts; Russian defaults; values as `{token}` templates. Visible content goes in children or props. |
|
|
35
|
+
| Structure | `X.Root` + `X.Part` | Only for components with parts. Leaves are single exports: `Typography`, `Kbd`, `Divider`, `Spinner`, `Skeleton`, `Crossfade`, `LinkButton`, `NativeSelect`, `DigitInput`, `Slider`, `TagSelect`, `ColorSwatches`, `CodeBlock`, `ProgressBar`, `ProgressCircle`, `Sparkline`, `Pagination`, `DataTable`, `Gantt`, `Fieldset`, `VisuallyHidden`, `ColorField`, `ExampleFrame`, `VoicePlayer`, `VideoNote`, `ScrollContainer`, `Gallery`, `MediaViewer`. This is the one list; other files link here. A group of roots is `X.Group` (`Radio.Group`, `Avatar.Group`). |
|
|
36
|
+
| Icons in parts | `X.Icon`, `X.ItemIcon` | `Button.Icon`, `Input.Icon`, `Sidebar.ItemIcon`, `Dropdown.ItemIcon`… — never an `icon` prop on a component. Only data arrays (`notify()`, `options`) carry `icon: ReactNode`. |
|
|
37
|
+
| DOM state | `data-size`, `data-variant`, `data-tone`, `data-color`, `data-invalid`, `data-disabled`, `data-loading`, `data-state` | Style your wrappers from these, not from class names of kit internals. |
|
|
38
|
+
|
|
39
|
+
## Controlled vs uncontrolled
|
|
40
|
+
|
|
41
|
+
Uncontrolled by default — pass `defaultValue`/`defaultChecked`/`defaultOpen`. Control only when another
|
|
42
|
+
part of the screen reacts to the value:
|
|
43
|
+
|
|
44
|
+
```tsx
|
|
45
|
+
import { SegmentedControl } from "prime-ui-kit";
|
|
46
|
+
import { useState } from "react";
|
|
47
|
+
|
|
48
|
+
export function PeriodFilter() {
|
|
49
|
+
const [period, setPeriod] = useState("week");
|
|
50
|
+
return (
|
|
51
|
+
<SegmentedControl.Root value={period} onValueChange={setPeriod} aria-label="Период">
|
|
52
|
+
<SegmentedControl.Item value="day">День</SegmentedControl.Item>
|
|
53
|
+
<SegmentedControl.Item value="week">Неделя</SegmentedControl.Item>
|
|
54
|
+
</SegmentedControl.Root>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Events
|
|
60
|
+
|
|
61
|
+
- State changes come through the triad: `value` / `defaultValue` / `onValueChange`, and the same shape
|
|
62
|
+
for every other stateful aspect (`open`, `sort`, `page`, `hiddenColumns`…). The new value is the first
|
|
63
|
+
argument.
|
|
64
|
+
- A triad can be a request: with DataTable `source="server"` the table never sorts or slices `rows`;
|
|
65
|
+
`onSortChange` / `onPageChange` start the fetch, `rowCount` is the server total, and the owner keeps
|
|
66
|
+
the old rows with `loading` until the answer replaces them.
|
|
67
|
+
- Native events (`onChange`, `onBlur`, `onFocus`, `onKeyDown`, `onPaste`…) go on the part that renders
|
|
68
|
+
the native control: `Input.Field`, not `Input.Root` (a field root's attributes go to its frame).
|
|
69
|
+
- There are no `onBeforeX` / `onAfterX` props. To refuse a change, control the value and do not apply
|
|
70
|
+
it. A slow or destructive action is an async event — return a Promise from it: the component shows
|
|
71
|
+
the pending state on the affected element and keeps the old state; resolve = applied, reject = not
|
|
72
|
+
applied (the component restores what was there; you say why with `error` or a notification). Never
|
|
73
|
+
return `true` / `false` (or `{ ok }`) from an event. A controlled owner applies the new value before
|
|
74
|
+
resolving. The async events: Input / Textarea `onCommit`, ConfirmDialog `onConfirm`,
|
|
75
|
+
`EmptyPage.RetryButton` and CommandMenu `onRetry`, Button `onConfirm` (`holdToConfirm`), Slider
|
|
76
|
+
`onCommit`, DigitInput `onComplete`, Tabs `onRemove`, Switch `onCheckedChange`, Badge `onRemove`,
|
|
77
|
+
FileUpload `onValueChange`, TagSelect `onCreate` / `onOptionUpdate` / `onOptionDelete`, DataTable
|
|
78
|
+
and Dnd `onReorder`, Kanban `onValueChange` / `onColumnOrderChange`, Gantt `onBarChange` /
|
|
79
|
+
`onBarCreate`, Composer `onSend` / `onSendVoice` / `onSendVideoNote`, `Message.Root`
|
|
80
|
+
`onReactionToggle` and `onRetry`, the `onRetry` / `onCancel` of `Message.File`, the
|
|
81
|
+
`onLoadMore` / `onReachStart` / `onReachEnd` of lists that load more.
|
|
82
|
+
- A notification of what happened, with no state to control, is a plain event with the subject
|
|
83
|
+
first: `Chat.Messages` `onNewMessage(value, { direction })` (a message added at the end after
|
|
84
|
+
mount, decided from the data — never the first render, a history load or a row scrolled into view) and `onRead(values)` (incoming messages the
|
|
85
|
+
reader has seen, batched); Composer `onActivityChange(activity)` fires on a change only (`typing`,
|
|
86
|
+
`voice`, `video`, `null`) — the «печатает…» signal, never a per-keystroke event.
|
|
87
|
+
- Media playback is the `playing` / `defaultPlaying` / `onPlayingChange` triad (VoicePlayer,
|
|
88
|
+
VideoNote — the two players share every prop they have in common). One sound plays at a time on
|
|
89
|
+
the page: starting one pauses the other, which reports `onPlayingChange(false)`. Where the owner
|
|
90
|
+
tracks the request itself, the flag is `loading` (Button, Switch, Badge).
|
|
91
|
+
- A transfer of content, either way, is one set: `transfer` (`remote` · `queued` · `loading` ·
|
|
92
|
+
`failed` · `done`), `transferProgress`, `transferDirection` (`upload` / `download`, the words
|
|
93
|
+
only), `onCancel` / `onRetry` / `onDownload` (VoicePlayer, VideoNote, `Message.File`; on `Message.Media` / `Gallery` the state sits on
|
|
94
|
+
each item and the handlers on the root, called with the item's index); `useUploadQueue` items carry the same states in `status`.
|
|
95
|
+
- A value that settles at the end of a gesture has its own event beside the triad: Slider
|
|
96
|
+
`onValueChange` follows the drag, `onCommit` fires once on release (or after a key moves it) —
|
|
97
|
+
save there.
|
|
98
|
+
- Verbs: `onSelect` activates a menu or command item, `onRemove` takes a value out of a selection,
|
|
99
|
+
`onDelete` destroys an entity, `onDismiss` closes a message.
|
|
100
|
+
|
|
101
|
+
## Forms
|
|
102
|
+
|
|
103
|
+
- Every field has its frame built in: `label`, `hint`, `error`, `required`, `optional` on Input,
|
|
104
|
+
Textarea, Select, NativeSelect, TagSelect, Datepicker, DigitInput, FileUpload,
|
|
105
|
+
ColorField, ColorSwatches, SegmentedControl, ButtonGroup and `Radio.Group`, and Slider (ColorPicker: `label`, `hint`, `error` on `ColorPicker.HexInput`). The label row, hint row and
|
|
106
|
+
spacing come with it — never put a `Label` or `Hint` next to a field that has `label`.
|
|
107
|
+
- Checkbox, Switch and Radio: the root renders the `<label>` with the input; the visible text is the
|
|
108
|
+
`X.Label` part; `hint` and `error` are props of `X.Root` (`Radio.Root` takes `hint`).
|
|
109
|
+
- `required` → red `*` after the label + native `required`. `optional` → muted «необязательно».
|
|
110
|
+
- Placeholder is an example (`name@company.ru`), never the label.
|
|
111
|
+
- Units and prefixes in affixes are hidden from screen readers — put the meaning into the label or hint
|
|
112
|
+
too («Бюджет, ₽», «Адрес: prime.app/p/…»).
|
|
113
|
+
- Mark the minority: when most fields are required, mark only the optional ones (`optional`); when most
|
|
114
|
+
are optional, mark the required ones; on a tie mark the required ones. Validate in code either way.
|
|
115
|
+
- Show `error` after the user leaves the field or on submit, not while typing the first character.
|
|
116
|
+
- Submit flow: `<form noValidate onSubmit>` → validate all fields → set each field's `error` → focus the
|
|
117
|
+
first invalid field → keep the submit Button `loading` while the request runs and disable the fields
|
|
118
|
+
(`Fieldset disabled` does it for a group) → map server field errors (e.g. «уже занят») to that
|
|
119
|
+
field's `error`, other failures to a Notification → on success a Notification and navigate/reset.
|
|
120
|
+
- Fields stack with `gap: var(--prime-space-5)`; actions sit at the end, primary last, gap 8.
|
|
121
|
+
- Use a real `<form>` with `onSubmit`; the submit button is `<Button.Root type="submit">`. A submit
|
|
122
|
+
button outside the form (Modal / Drawer footer) points at it with `form={formId}`.
|
|
123
|
+
- A form inside a Card: wrap the whole `Card.Root` in the `<form>` (Card parts are styled as direct
|
|
124
|
+
children of Root — never put a wrapper between `Card.Root` and `Card.Body` / `Card.Footer`).
|
|
125
|
+
- Fields side by side in a grid row: `align-items: start`. Input and Textarea have `reserveSupportRow`
|
|
126
|
+
to keep bottoms aligned when only one shows an error; other fields do not.
|
|
127
|
+
- Your own control without a frame: `Label` (with `id`; `htmlFor` when the control is a native input)
|
|
128
|
+
above, the control, then `Hint` (`invalid` for the error) below, in a grid with
|
|
129
|
+
`--prime-control-m-label-gap` / `--prime-control-m-hint-gap`; the control references the label with
|
|
130
|
+
`aria-labelledby`.
|
|
131
|
+
|
|
132
|
+
```tsx
|
|
133
|
+
import { Button, Input, Select } from "prime-ui-kit";
|
|
134
|
+
import styles from "./InviteForm.module.css";
|
|
135
|
+
|
|
136
|
+
export function InviteForm() {
|
|
137
|
+
return (
|
|
138
|
+
<form className={styles.form} noValidate onSubmit={(event) => event.preventDefault()}>
|
|
139
|
+
<Input.Root label="Почта" required error="Введите почту в формате name@company.ru">
|
|
140
|
+
<Input.Wrapper>
|
|
141
|
+
<Input.Field type="email" name="email" placeholder="name@company.ru" />
|
|
142
|
+
</Input.Wrapper>
|
|
143
|
+
</Input.Root>
|
|
144
|
+
<Select.Root label="Роль" defaultValue="editor">
|
|
145
|
+
<Select.Trigger>
|
|
146
|
+
<Select.Value />
|
|
147
|
+
</Select.Trigger>
|
|
148
|
+
<Select.Content>
|
|
149
|
+
<Select.Item value="viewer">Наблюдатель</Select.Item>
|
|
150
|
+
<Select.Item value="editor">Редактор</Select.Item>
|
|
151
|
+
</Select.Content>
|
|
152
|
+
</Select.Root>
|
|
153
|
+
<Button.Root type="submit">Пригласить</Button.Root>
|
|
154
|
+
</form>
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
(`.form { display: grid; gap: var(--prime-space-5); }`.) A full create form with groups, validation,
|
|
160
|
+
loading and a toast: [patterns/form-drawer.tsx](patterns/form-drawer.tsx).
|
|
161
|
+
|
|
162
|
+
## Loading without DataTable
|
|
163
|
+
|
|
164
|
+
DataTable (`loading`), Select (`loading`) and Button (`loading`, `progress`) have built-in states. For
|
|
165
|
+
any other card or region that loads: wrap its content in `Crossfade state={status}` with
|
|
166
|
+
`aria-busy={status === "loading"}`, and render a `Skeleton` in the geometry of the data while it loads
|
|
167
|
+
(same rows, gaps and heights). A `Spinner` only where there is no shape to hold. Show the error in
|
|
168
|
+
place (a `Banner` for the page, `EmptyPage` with `EmptyPage.Icon tone="danger"` and a retry for a
|
|
169
|
+
region). Never draw your own spinners or shimmer blocks. See
|
|
170
|
+
[patterns/screen-states.tsx](patterns/screen-states.tsx) and [motion.md](motion.md).
|
|
171
|
+
|
|
172
|
+
## Secondary actions
|
|
173
|
+
|
|
174
|
+
- Page and card forms: dismiss or revert with `variant="ghost" tone="neutral"`, before the primary.
|
|
175
|
+
- Modal / Drawer footers: cancel is `variant="outline" tone="neutral"` (as in Modal COMPONENT.md).
|
|
176
|
+
- One label per action per screen («Отмена» to leave, «Отменить изменения» to revert, «Сбросить
|
|
177
|
+
фильтры»), and the same action keeps the same variant in the header, toolbars and menus. If «Отмена»
|
|
178
|
+
would clash with the action itself («Отменить заказ»), use an unambiguous label («Не отменять»).
|
|
179
|
+
- A control that navigates is a link: `LinkButton href`, `Button.Root asChild` with `<a>` / router
|
|
180
|
+
`Link`, `Sidebar.Item href` or `asChild`. Never `onClick={() => location.assign(…)}`.
|
|
181
|
+
|
|
182
|
+
## Destructive actions
|
|
183
|
+
|
|
184
|
+
`tone="danger"`. A standalone trigger that opens a confirm (danger zone) is `variant="outline"`; inside
|
|
185
|
+
a bar of other actions (DataTable bulk bar, card actions) it is `soft`; in a Dropdown it is the last item
|
|
186
|
+
with `tone="danger"`; an inline remove in a media or file row is `ghost`. The confirm itself is
|
|
187
|
+
[ConfirmDialog](reference/components/confirm-dialog/COMPONENT.md) — never a hand-built Modal: it is a
|
|
188
|
+
Modal `s` with a solid danger confirm (`tone="accent"` for a weighty but safe action), no dismiss by a
|
|
189
|
+
press outside, Cancel focused first. `onConfirm` returns the request's Promise: while it runs the confirm
|
|
190
|
+
shows `loading` and Cancel, the close button and Escape are off; resolve closes the dialog (say «Удалено»
|
|
191
|
+
with a Notification), reject keeps it open with `error` (the owner's reason) or `labels.error`.
|
|
192
|
+
|
|
193
|
+
```tsx
|
|
194
|
+
import { Button, ConfirmDialog } from "prime-ui-kit";
|
|
195
|
+
|
|
196
|
+
export function DeleteProject({ onDelete }: { onDelete: () => Promise<void> }) {
|
|
197
|
+
return (
|
|
198
|
+
<ConfirmDialog.Root
|
|
199
|
+
title="Удалить проект?"
|
|
200
|
+
description="Проект и его задачи удалятся без возможности восстановления."
|
|
201
|
+
confirmLabel="Удалить"
|
|
202
|
+
onConfirm={onDelete}
|
|
203
|
+
>
|
|
204
|
+
<ConfirmDialog.Trigger>
|
|
205
|
+
<Button.Root variant="outline" tone="danger">
|
|
206
|
+
Удалить проект
|
|
207
|
+
</Button.Root>
|
|
208
|
+
</ConfirmDialog.Trigger>
|
|
209
|
+
</ConfirmDialog.Root>
|
|
210
|
+
);
|
|
211
|
+
}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
Leaving a form with unsaved changes is the same contract: `Modal.Guard` / `Drawer.Guard` inside the
|
|
215
|
+
content with `dirty` (any dismiss asks «Не сохранять изменения?») and `busy` (nothing closes it while
|
|
216
|
+
it saves).
|
|
217
|
+
|
|
218
|
+
## Providers and helpers
|
|
219
|
+
|
|
220
|
+
| Export | Use |
|
|
221
|
+
|---|---|
|
|
222
|
+
| `applyTheme(scheme, element?)` | switch `data-theme` without a transition flash |
|
|
223
|
+
| `NotificationProvider`, `useNotifications()` | toasts; provider once at the app root, `notify({ tone, title, description, action })` |
|
|
224
|
+
| `Tooltip.Provider` | shared delay for many tooltips |
|
|
225
|
+
| `ControlSizeProvider` | one `size` for a region (dense toolbar, compact form) — for the components that read the host tier (see Size above); pass `size` to the others |
|
|
226
|
+
| `celebrate({ origin })` | a short confetti burst for a rare milestone; nothing under reduced motion — see [motion.md](motion.md) |
|
|
227
|
+
| `getPasswordStrength(value)` | the 0–4 estimate behind `Input.Root strength`; replace it with `getStrength` |
|
|
228
|
+
| `COLOR_PRESETS` | the kit's 16 palette colors for `ColorSwatches` / `ColorPresets` `presets` |
|
|
229
|
+
| `datepickerPresets`, `DEFAULT_DATEPICKER_PRESETS`, `formatDatepickerValue` | quick ranges and value display for `Datepicker` |
|
|
230
|
+
| `moveBefore(items, id, beforeId, getId)` | apply a `Dnd` reorder to your array in `onReorder`; `canDrop` returns `true` or the reason it refuses (a string, announced and shown at the carried copy) |
|
|
231
|
+
| `useUploadQueue({ upload, concurrency })` | the upload queue behind FileUpload `queue`: `upload(file, { signal, onProgress })` is yours, the queue runs it a few at a time, aborts on remove, retries |
|
|
232
|
+
| `groupMessages(messages, options)`, `formatMessageDate`, `formatMessageTime`, `hueOf(id)` | turn chat data into dated runs of one author (positions, the date separators — `Chat.Messages items` does it for you), format their dates and times, and give a person a palette hue stable per id |
|
|
233
|
+
| `useSidebar()` | Sidebar state for custom parts inside `Sidebar.Root` |
|
|
234
|
+
| `matchesSmartFilter`, `resolveSmartFilterValues` | apply a SmartFilter value to your rows |
|
|
235
|
+
| `Icon`, `createIcon` | kit icon set and domain glyphs — see Icons below |
|
|
236
|
+
| `chartColors` | the chart palette as CSS values for a chart library: `series` 1…8 in order, `other`, `grid`, `axis`, `scale` — follows the theme |
|
|
237
|
+
| `useTokenValue("--prime-space-7")` | a length token in px for geometry CSS cannot take (SVG coordinates, canvas, virtual rows); follows a theme switch |
|
|
238
|
+
| `VisuallyHidden` | text for screen readers only (an icon-only part's name, a spoken count); `role="status"` on it for a polite announcement |
|
|
239
|
+
|
|
240
|
+
## Icons
|
|
241
|
+
|
|
242
|
+
`<Icon name="…" />` names:
|
|
243
|
+
- `nav.*`: `chevronDown`, `chevronLeft`, `chevronRight`, `chevronUp`, `chevronsLeft`, `chevronsUpDown`,
|
|
244
|
+
`dashboard`, `home`, `itemDot`, `layoutGrid`, `menu`, `sidebarCollapse`, `sidebarExpand`;
|
|
245
|
+
- `action.*`: `add`, `addContact`, `attach`, `check`, `close`, `copy`, `delete`, `download`, `drag`,
|
|
246
|
+
`edit`, `externalLink`, `eyedropper`, `filter`, `forward`, `login`, `logout`, `more`, `pause`,
|
|
247
|
+
`pin`, `play`, `react`, `refresh`, `remove`, `reply`, `report`, `search`, `send`, `settings`,
|
|
248
|
+
`transcribe`, `upload`, `video`, `voice`, `zoomIn`, `zoomOut`;
|
|
249
|
+
- `field.*`: `calendar`, `email`, `password.hide`, `password.show`;
|
|
250
|
+
- `format.*`: `bold`, `code`, `italic`, `link`, `list`, `quote`, `strikethrough`, `underline`;
|
|
251
|
+
- `object.*`: `activity`, `bell`, `bike`, `book`, `cart`, `chart`, `crown`, `disc`, `document`, `file`, `fuel`,
|
|
252
|
+
`funnel`, `globe`, `headset`, `image`, `inbox`, `key`, `mapPin`, `megaphone`, `message`,
|
|
253
|
+
`motorbike`, `package`, `phone`, `receipt`, `rocket`, `scale`, `storage`, `tasks`, `trophy`,
|
|
254
|
+
`truck`, `user`, `users`, `wallet`;
|
|
255
|
+
- `sort.*`: `ascending`, `descending`, `none`;
|
|
256
|
+
- `status.*`: `danger`, `emailSent`, `failed`, `favorite`, `info`, `locked`, `muted`, `offline`,
|
|
257
|
+
`pending`, `read`, `sent`, `sound`, `success`, `trendUp`, `warning`;
|
|
258
|
+
- `theme.*`: `dark`, `light`; `view.*`: `code`, `columns`, `preview`; `viewport.*`: `desktop`, `mobile`, `tablet`.
|
|
259
|
+
|
|
260
|
+
Every glyph comes from the kit, in this order:
|
|
261
|
+
|
|
262
|
+
1. **A semantic name above** — `<Icon name="object.bell" />`. The meaning is in the name, so the same
|
|
263
|
+
action has the same glyph across the app.
|
|
264
|
+
2. **The full animated set** — `prime-ui-kit/icons`: about 500 named components, each a Lucide drawing
|
|
265
|
+
with its own gesture, with the same `size`, `tone`, `strokeWidth`, `animated` props.
|
|
266
|
+
`import { BellIcon } from "prime-ui-kit/icons"` → `<BellIcon />`; only what you import is bundled.
|
|
267
|
+
The name is the Lucide name + `Icon` (`ArrowBigDown` → `ArrowBigDownIcon`); the full list is
|
|
268
|
+
[icon-set.ts](reference/icon-set.ts) — search it before reaching further.
|
|
269
|
+
3. **Only a glyph neither has** comes from `lucide-react` (add it to the app's dependencies — the kit does not ship it) or any SVG
|
|
270
|
+
component (SVGR), wrapped
|
|
271
|
+
once at module level with `createIcon` so it sizes, tones and plays like a kit icon:
|
|
272
|
+
`const IconTractor = createIcon(Tractor);` → `<IconTractor />`.
|
|
273
|
+
|
|
274
|
+
Never a raw `lucide-react` component, another icon library, an inline `<svg>` or an icon font. Icon-only buttons need `aria-label`;
|
|
275
|
+
decorative icons inside kit slots (`Button.Icon`, `Input.Icon`, `Sidebar.ItemIcon`) are hidden
|
|
276
|
+
automatically. An icon that carries information alone (a «system» or «pinned» mark) takes `label`:
|
|
277
|
+
it becomes `role="img"` with that name, and inside `Tooltip.Trigger` it is focusable. A category
|
|
278
|
+
colour from data is `color` (a `PaletteColor`, never a hex); `tone` stays for meaning.
|
|
279
|
+
|
|
280
|
+
Every kit icon is animated: its gesture plays once when the host it sits in (button, link, tab,
|
|
281
|
+
label, menu item, option, table row) is hovered or pressed on touch — nothing to wire. The nearest
|
|
282
|
+
host owns the icon (hovering a card does not play the icons of its buttons); outside any host the
|
|
283
|
+
icon plays when it is hovered itself. Keyboard focus, disabled and loading hosts and reduced motion
|
|
284
|
+
stay still. A `createIcon` glyph gets a soft pop. Never animate an icon yourself (no hover rotate,
|
|
285
|
+
spin or bounce in your CSS). `animated={false}` keeps one icon still — for a glyph repeated in every
|
|
286
|
+
row of a long list, where a gesture on each row hover would be noise ([motion.md](motion.md)).
|
|
287
|
+
|
|
288
|
+
## Styling your own wrappers
|
|
289
|
+
|
|
290
|
+
CSS Modules + tokens. Never override kit internals (`.root button { … }`), never pass `style`.
|
|
291
|
+
`className` on a kit part is for placement only (grid area, width, flex, `align-self`, order) — not for
|
|
292
|
+
color, padding, radius or the gap inside a kit container. Never hide a part at a breakpoint: rearrange
|
|
293
|
+
it ([responsive.md](responsive.md)). The only
|
|
294
|
+
exceptions are the ones a component's `COMPONENT.md` documents (e.g. the round avatar drop zone of
|
|
295
|
+
FileUpload).
|