prime-ui-kit 0.10.0 → 0.11.1
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,20 @@
|
|
|
1
|
+
/* Layout of the SegmentedControl scenarios: semantic tokens only. */
|
|
2
|
+
|
|
3
|
+
/* controlled.tsx: the group and the content it drives, start-aligned in one column. */
|
|
4
|
+
.stack {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
align-items: flex-start;
|
|
8
|
+
gap: var(--prime-space-3);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/* in-form.tsx: field → field and fields → action at the form rhythm; controls keep their width. */
|
|
12
|
+
.form {
|
|
13
|
+
display: grid;
|
|
14
|
+
justify-items: start;
|
|
15
|
+
gap: var(--prime-space-5);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.form > :last-child {
|
|
19
|
+
margin-block-start: var(--prime-space-3);
|
|
20
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** The group fills its column; segments tend to equal widths and a long label keeps its own — `fullWidth`. */
|
|
2
|
+
import { SegmentedControl } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
export default function SegmentedControlFullWidthExample() {
|
|
5
|
+
return (
|
|
6
|
+
<SegmentedControl.Root fullWidth defaultValue="card" aria-label="Способ оплаты">
|
|
7
|
+
<SegmentedControl.Item value="card">Картой</SegmentedControl.Item>
|
|
8
|
+
<SegmentedControl.Item value="sbp">СБП</SegmentedControl.Item>
|
|
9
|
+
<SegmentedControl.Item value="invoice">По счёту для юрлиц</SegmentedControl.Item>
|
|
10
|
+
</SegmentedControl.Root>
|
|
11
|
+
);
|
|
12
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** An expense form: the choice is a labelled field with a hint, checked on submit, its error leaves as soon as a segment is chosen — `label`, `hint`, `required`, `error`. */
|
|
2
|
+
import { Button, Input, SegmentedControl } from "prime-ui-kit";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
import styles from "./examples.module.css";
|
|
6
|
+
|
|
7
|
+
export default function SegmentedControlInFormExample() {
|
|
8
|
+
const [owner, setOwner] = React.useState("");
|
|
9
|
+
const [error, setError] = React.useState<string>();
|
|
10
|
+
|
|
11
|
+
const submit = (event: React.FormEvent<HTMLFormElement>) => {
|
|
12
|
+
event.preventDefault();
|
|
13
|
+
setError(owner ? undefined : "Выберите, чей это расход");
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
return (
|
|
17
|
+
<form className={styles.form} noValidate onSubmit={submit}>
|
|
18
|
+
<Input.Root label="Сумма, ₽" required>
|
|
19
|
+
<Input.Wrapper>
|
|
20
|
+
<Input.Field name="amount" inputMode="decimal" defaultValue="12 400" />
|
|
21
|
+
<Input.InlineAffix side="end">₽</Input.InlineAffix>
|
|
22
|
+
</Input.Wrapper>
|
|
23
|
+
</Input.Root>
|
|
24
|
+
<SegmentedControl.Root
|
|
25
|
+
label="Чей расход"
|
|
26
|
+
hint="Личные расходы не попадают в отчёт компании"
|
|
27
|
+
required
|
|
28
|
+
error={error}
|
|
29
|
+
value={owner}
|
|
30
|
+
onValueChange={(next) => {
|
|
31
|
+
setOwner(next);
|
|
32
|
+
setError(undefined);
|
|
33
|
+
}}
|
|
34
|
+
>
|
|
35
|
+
<SegmentedControl.Item value="company">Компании</SegmentedControl.Item>
|
|
36
|
+
<SegmentedControl.Item value="project">Проекта</SegmentedControl.Item>
|
|
37
|
+
<SegmentedControl.Item value="personal">Личный</SegmentedControl.Item>
|
|
38
|
+
</SegmentedControl.Root>
|
|
39
|
+
<Button.Root type="submit">Сохранить расход</Button.Root>
|
|
40
|
+
</form>
|
|
41
|
+
);
|
|
42
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** One value out of a few, with a sliding thumb on the chosen segment — `defaultValue`, `aria-label`. */
|
|
2
|
+
import { SegmentedControl } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
export default function SegmentedControlOverviewExample() {
|
|
5
|
+
return (
|
|
6
|
+
<SegmentedControl.Root defaultValue="week" aria-label="Период отчёта">
|
|
7
|
+
<SegmentedControl.Item value="day">День</SegmentedControl.Item>
|
|
8
|
+
<SegmentedControl.Item value="week">Неделя</SegmentedControl.Item>
|
|
9
|
+
<SegmentedControl.Item value="month">Месяц</SegmentedControl.Item>
|
|
10
|
+
</SegmentedControl.Root>
|
|
11
|
+
);
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Segments never wrap: in a column narrower than the row it scrolls with edge fades and brings the chosen segment into view. */
|
|
2
|
+
import { SegmentedControl } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
export default function SegmentedControlScrollExample() {
|
|
5
|
+
return (
|
|
6
|
+
<SegmentedControl.Root defaultValue="month" aria-label="Диапазон графика">
|
|
7
|
+
<SegmentedControl.Item value="day">День</SegmentedControl.Item>
|
|
8
|
+
<SegmentedControl.Item value="week">Неделя</SegmentedControl.Item>
|
|
9
|
+
<SegmentedControl.Item value="month">Месяц</SegmentedControl.Item>
|
|
10
|
+
<SegmentedControl.Item value="quarter">Квартал</SegmentedControl.Item>
|
|
11
|
+
<SegmentedControl.Item value="halfYear">Полгода</SegmentedControl.Item>
|
|
12
|
+
<SegmentedControl.Item value="year">Год</SegmentedControl.Item>
|
|
13
|
+
<SegmentedControl.Item value="all">Всё время</SegmentedControl.Item>
|
|
14
|
+
</SegmentedControl.Root>
|
|
15
|
+
);
|
|
16
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** Every size tier; the outer height equals the control height of the same tier — `size`. */
|
|
2
|
+
import { SegmentedControl, Typography } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
const SIZES = ["xs", "s", "m", "l", "xl"] as const;
|
|
5
|
+
|
|
6
|
+
export default function SegmentedControlSizesExample() {
|
|
7
|
+
return (
|
|
8
|
+
<div>
|
|
9
|
+
{SIZES.map((size) => (
|
|
10
|
+
<div key={size}>
|
|
11
|
+
<SegmentedControl.Root size={size} defaultValue="week" aria-label="Период">
|
|
12
|
+
<SegmentedControl.Item value="day">День</SegmentedControl.Item>
|
|
13
|
+
<SegmentedControl.Item value="week">Неделя</SegmentedControl.Item>
|
|
14
|
+
</SegmentedControl.Root>
|
|
15
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
16
|
+
{size}
|
|
17
|
+
</Typography>
|
|
18
|
+
</div>
|
|
19
|
+
))}
|
|
20
|
+
</div>
|
|
21
|
+
);
|
|
22
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/** No selection yet, a disabled segment and a disabled group next to the default — `disabled`. */
|
|
2
|
+
import { SegmentedControl, Typography } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
export default function SegmentedControlStatesExample() {
|
|
5
|
+
return (
|
|
6
|
+
<div>
|
|
7
|
+
<div>
|
|
8
|
+
<SegmentedControl.Root defaultValue="active" aria-label="Статус кампании">
|
|
9
|
+
<SegmentedControl.Item value="active">Активные</SegmentedControl.Item>
|
|
10
|
+
<SegmentedControl.Item value="archived">Архив</SegmentedControl.Item>
|
|
11
|
+
</SegmentedControl.Root>
|
|
12
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
13
|
+
default
|
|
14
|
+
</Typography>
|
|
15
|
+
</div>
|
|
16
|
+
<div>
|
|
17
|
+
<SegmentedControl.Root aria-label="Статус кампании">
|
|
18
|
+
<SegmentedControl.Item value="active">Активные</SegmentedControl.Item>
|
|
19
|
+
<SegmentedControl.Item value="archived">Архив</SegmentedControl.Item>
|
|
20
|
+
</SegmentedControl.Root>
|
|
21
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
22
|
+
empty
|
|
23
|
+
</Typography>
|
|
24
|
+
</div>
|
|
25
|
+
<div>
|
|
26
|
+
<SegmentedControl.Root defaultValue="active" aria-label="Статус кампании">
|
|
27
|
+
<SegmentedControl.Item value="active">Активные</SegmentedControl.Item>
|
|
28
|
+
<SegmentedControl.Item value="archived" disabled>
|
|
29
|
+
Архив
|
|
30
|
+
</SegmentedControl.Item>
|
|
31
|
+
</SegmentedControl.Root>
|
|
32
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
33
|
+
Item disabled
|
|
34
|
+
</Typography>
|
|
35
|
+
</div>
|
|
36
|
+
<div>
|
|
37
|
+
<SegmentedControl.Root defaultValue="active" disabled aria-label="Статус кампании">
|
|
38
|
+
<SegmentedControl.Item value="active">Активные</SegmentedControl.Item>
|
|
39
|
+
<SegmentedControl.Item value="archived">Архив</SegmentedControl.Item>
|
|
40
|
+
</SegmentedControl.Root>
|
|
41
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
42
|
+
disabled
|
|
43
|
+
</Typography>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
);
|
|
47
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** A label and a counter on the first line, a metric on the second — `SegmentedControl.Label`, `SegmentedControl.Count`, `SegmentedControl.Description`. */
|
|
2
|
+
import { type PaletteColor, SegmentedControl } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
const QUEUES: {
|
|
5
|
+
value: string;
|
|
6
|
+
title: string;
|
|
7
|
+
count: number;
|
|
8
|
+
color: PaletteColor;
|
|
9
|
+
metric: string;
|
|
10
|
+
}[] = [
|
|
11
|
+
{ value: "new", title: "Новые", count: 12, color: "blue", metric: "3 срочных" },
|
|
12
|
+
{ value: "progress", title: "В работе", count: 5, color: "orange", metric: "2 просрочены" },
|
|
13
|
+
{ value: "done", title: "Готово", count: 148, color: "green", metric: "31 за неделю" },
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
export default function SegmentedControlTwoLineExample() {
|
|
17
|
+
return (
|
|
18
|
+
<SegmentedControl.Root fullWidth defaultValue="new" aria-label="Очередь заявок">
|
|
19
|
+
{QUEUES.map((queue) => (
|
|
20
|
+
<SegmentedControl.Item key={queue.value} value={queue.value}>
|
|
21
|
+
<SegmentedControl.Label>{queue.title}</SegmentedControl.Label>
|
|
22
|
+
<SegmentedControl.Count color={queue.color}>{queue.count}</SegmentedControl.Count>
|
|
23
|
+
<SegmentedControl.Description>{queue.metric}</SegmentedControl.Description>
|
|
24
|
+
</SegmentedControl.Item>
|
|
25
|
+
))}
|
|
26
|
+
</SegmentedControl.Root>
|
|
27
|
+
);
|
|
28
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/** An icon before the label and square icon-only segments named for screen readers — `SegmentedControl.Icon`, `aria-label`. */
|
|
2
|
+
import { Icon, SegmentedControl, Typography } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
const VIEWPORTS = [
|
|
5
|
+
{ value: "desktop", label: "Компьютер", icon: "viewport.desktop" },
|
|
6
|
+
{ value: "tablet", label: "Планшет", icon: "viewport.tablet" },
|
|
7
|
+
{ value: "mobile", label: "Телефон", icon: "viewport.mobile" },
|
|
8
|
+
] as const;
|
|
9
|
+
|
|
10
|
+
export default function SegmentedControlWithIconExample() {
|
|
11
|
+
return (
|
|
12
|
+
<div>
|
|
13
|
+
<div>
|
|
14
|
+
<SegmentedControl.Root defaultValue="light" aria-label="Тема">
|
|
15
|
+
<SegmentedControl.Item value="light">
|
|
16
|
+
<SegmentedControl.Icon>
|
|
17
|
+
<Icon name="theme.light" />
|
|
18
|
+
</SegmentedControl.Icon>
|
|
19
|
+
Светлая
|
|
20
|
+
</SegmentedControl.Item>
|
|
21
|
+
<SegmentedControl.Item value="dark">
|
|
22
|
+
<SegmentedControl.Icon>
|
|
23
|
+
<Icon name="theme.dark" />
|
|
24
|
+
</SegmentedControl.Icon>
|
|
25
|
+
Тёмная
|
|
26
|
+
</SegmentedControl.Item>
|
|
27
|
+
</SegmentedControl.Root>
|
|
28
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
29
|
+
leading
|
|
30
|
+
</Typography>
|
|
31
|
+
</div>
|
|
32
|
+
<div>
|
|
33
|
+
<SegmentedControl.Root defaultValue="desktop" aria-label="Предпросмотр письма">
|
|
34
|
+
{VIEWPORTS.map((viewport) => (
|
|
35
|
+
<SegmentedControl.Item
|
|
36
|
+
key={viewport.value}
|
|
37
|
+
value={viewport.value}
|
|
38
|
+
aria-label={viewport.label}
|
|
39
|
+
>
|
|
40
|
+
<SegmentedControl.Icon>
|
|
41
|
+
<Icon name={viewport.icon} />
|
|
42
|
+
</SegmentedControl.Icon>
|
|
43
|
+
</SegmentedControl.Item>
|
|
44
|
+
))}
|
|
45
|
+
</SegmentedControl.Root>
|
|
46
|
+
<Typography as="span" variant="caption" tone="muted">
|
|
47
|
+
icon-only
|
|
48
|
+
</Typography>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
);
|
|
52
|
+
}
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
# Select
|
|
2
|
+
|
|
3
|
+
**Category:** selection
|
|
4
|
+
**Kind:** field
|
|
5
|
+
|
|
6
|
+
> A field for choosing one value (or several with `multiple`) from a closed list.
|
|
7
|
+
|
|
8
|
+
## When to use
|
|
9
|
+
- One value from a closed list of 5+ options in forms, filters and settings: country, role, time zone.
|
|
10
|
+
- A long list where search helps (`Select.Content searchable`, `keywords`).
|
|
11
|
+
- A value out of thousands of records searched on the server (`search`, `onSearchChange`, `filter={false}`, `hasMore` + `onLoadMore`).
|
|
12
|
+
- A few values from a short list shown as comma-separated text (`multiple`).
|
|
13
|
+
- Options that need a picture, an avatar, a second line, a badge or a trailing value (rich options).
|
|
14
|
+
|
|
15
|
+
## When not to use
|
|
16
|
+
- 2–5 options that should all be visible → use [Radio](../radio/COMPONENT.md) or [SegmentedControl](../segmented-control/COMPONENT.md).
|
|
17
|
+
- The OS picker on a mobile-first form → use [NativeSelect](../native-select/COMPONENT.md).
|
|
18
|
+
- Many values shown as removable tags, or creating new values → use [TagSelect](../tag-select/COMPONENT.md).
|
|
19
|
+
- Free text → use [Input](../input/COMPONENT.md).
|
|
20
|
+
- A menu of actions (not a value) → use [Dropdown](../dropdown/COMPONENT.md).
|
|
21
|
+
- Global search / command palette → use [CommandMenu](../command-menu/COMPONENT.md).
|
|
22
|
+
- Dates → use [Datepicker](../datepicker/COMPONENT.md).
|
|
23
|
+
|
|
24
|
+
## Import
|
|
25
|
+
```tsx
|
|
26
|
+
import { Select } from "prime-ui-kit";
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Anatomy
|
|
30
|
+
```
|
|
31
|
+
Select.Root field frame: label · control · hint/error; value, open, search
|
|
32
|
+
├── Select.Trigger <button role="combobox">: [icon] [value] [clear] [chevron]
|
|
33
|
+
│ ├── Select.TriggerIcon optional leading glyph
|
|
34
|
+
│ └── Select.Value picked label or placeholder (renderValue for a rich trigger)
|
|
35
|
+
└── Select.Content portaled panel while open; closed, the items render hidden in place so the trigger knows their labels
|
|
36
|
+
├── search row with `searchable`
|
|
37
|
+
├── role="listbox"
|
|
38
|
+
│ ├── Select.Group role="group", named by `label`
|
|
39
|
+
│ │ └── Select.Item role="option": [checkbox] [icon / Avatar / Thumbnail] [text] [meta / Badge] [check]
|
|
40
|
+
│ │ ├── Select.ItemIcon · Avatar.Root · Thumbnail.Root
|
|
41
|
+
│ │ ├── Select.ItemText · Select.ItemDescription
|
|
42
|
+
│ │ └── Select.ItemMeta · Badge.Root
|
|
43
|
+
│ ├── Select.Separator full-bleed Divider
|
|
44
|
+
│ └── skeleton rows `loading` with no items, `loadingMore` at the end
|
|
45
|
+
├── empty state compact EmptyPage
|
|
46
|
+
└── load error compact EmptyPage, role="alert", retry Button (`loadError`, `onRetry`)
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## API
|
|
50
|
+
|
|
51
|
+
<!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
|
|
52
|
+
|
|
53
|
+
### Select.Root
|
|
54
|
+
`ref` → `HTMLDivElement`. The field frame (label row · control · support row) holding the value, the open state and the search query.
|
|
55
|
+
|
|
56
|
+
| Prop | Type | Default | Description |
|
|
57
|
+
|---|---|---|---|
|
|
58
|
+
| `value` | `string \| string[]` | — | Controlled value; `string[]` with `multiple`. |
|
|
59
|
+
| `defaultValue` | `string \| string[]` | — | Initial value, uncontrolled. |
|
|
60
|
+
| `onValueChange` | `(value: string) => void \| (value: string[]) => void` | — | Called with the picked value (`""` after clearing), or the new list with `multiple`. |
|
|
61
|
+
| `multiple` | `boolean` | `false` | Several values: checkboxes in the list, the list stays open on a pick, labels joined in the trigger. |
|
|
62
|
+
| `open` | `boolean` | — | Controlled open state of the list. |
|
|
63
|
+
| `defaultOpen` | `boolean` | `false` | Initial open state, uncontrolled. |
|
|
64
|
+
| `onOpenChange` | `(open: boolean) => void` | — | Called on every open and close: trigger, pick, Escape, an outside press. |
|
|
65
|
+
| `label` | `ReactNode` | — | Field label above; names the trigger. |
|
|
66
|
+
| `hint` | `ReactNode` | — | Support text under the field; linked by `aria-describedby`. |
|
|
67
|
+
| `error` | `ReactNode` | — | Error message; replaces the hint and implies `invalid`. |
|
|
68
|
+
| `required` | `boolean` | `false` | Red `*` after the label and `aria-required` on the trigger. |
|
|
69
|
+
| `optional` | `boolean` | — | Muted `labels.optional` after the label. |
|
|
70
|
+
| `invalid` | `boolean` | `false` | Danger inset ring and `aria-invalid`. |
|
|
71
|
+
| `disabled` | `boolean` | `false` | Disabled field; the list never opens. |
|
|
72
|
+
| `search` | `string` | — | Controlled search query (`Select.Content searchable`); together with `onSearchChange`. Cleared when the list closes. |
|
|
73
|
+
| `defaultSearch` | `string` | `""` | Initial query, uncontrolled. |
|
|
74
|
+
| `onSearchChange` | `(search: string) => void` | — | Called with the new query: typing, and `""` when the list closes. Load the matching options here for a server search. |
|
|
75
|
+
| `filter` | `boolean` | `true` | The list filters its items by the query. `false` when the options come from a server: every item shows, the query is still marked in the labels. |
|
|
76
|
+
| `loading` | `boolean` | `false` | Options are loading: a Spinner instead of the chevron, `aria-busy`, skeleton rows in the list while no item matches; items already on screen stay. |
|
|
77
|
+
| `loadingMore` | `boolean` | `false` | More options are loading at the end: skeleton rows after the items. |
|
|
78
|
+
| `hasMore` | `boolean` | `false` | More options exist: reaching the end of the list calls `onLoadMore`. |
|
|
79
|
+
| `onLoadMore` | `() => void \| Promise<void>` | — | Called once per round with `hasMore` when the end of the list scrolls into view or the highlight reaches the last option; set `loadingMore` while it runs. |
|
|
80
|
+
| `loadError` | `ReactNode` | — | The options failed to load: the message replaces the list in `role="alert"`. Not the field `error` (validation). |
|
|
81
|
+
| `onRetry` | `() => void` | — | A retry button (`labels.retry`) under `loadError`; Enter in the open list runs it too. |
|
|
82
|
+
| `clearable` | `boolean` | `false` | A clear segment before the chevron while a value is set; `Delete` / `Backspace` on the trigger clear too. |
|
|
83
|
+
| `name` | `string` | — | Form field name: hidden inputs submit the value (`""` while empty; one input per value with `multiple`). |
|
|
84
|
+
| `placeholder` | `string` | — | Text in the trigger while nothing is picked. |
|
|
85
|
+
| `size` | `"xs" \| "s" \| "m" \| "l" \| "xl"` | `"m"` | Field tier: trigger height, padding, text; the list rows, the label and the hint follow it. |
|
|
86
|
+
| `focusRing` | `boolean` | `true` | `false` hides the visual focus ring (`data-focus-ring="false"`), never focus or the error ring. |
|
|
87
|
+
| `id` | `string` | — | Id of the trigger; generated when omitted. |
|
|
88
|
+
| `labels` | `Partial<SelectLabels>` | — | Built-in strings, see Labels. |
|
|
89
|
+
| `children` | `ReactNode` | — (required) | Trigger and Content. |
|
|
90
|
+
| `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "id" \| "children" \| "defaultValue" \| "defaultChecked" \| "onChange">` | — | `className`, `data-*` and the other attributes of the field frame `<div>` (field-root rule: `className`, `ref` and the rest → frame, `id` → control). |
|
|
91
|
+
|
|
92
|
+
### Select.Trigger
|
|
93
|
+
`ref` → `HTMLButtonElement`. `<button role="combobox">` with the value, the clear segment and the chevron (a Spinner while `loading`). + native button props (`onFocus`, `onBlur`, `onKeyDown`… reach the button).
|
|
94
|
+
|
|
95
|
+
| Prop | Type | Default | Description |
|
|
96
|
+
|---|---|---|---|
|
|
97
|
+
| `children` | `ReactNode` | — | `Select.TriggerIcon`, `Select.Value`, optionally a Badge after it. |
|
|
98
|
+
|
|
99
|
+
### Select.Value
|
|
100
|
+
`ref` → `HTMLSpanElement`. The picked label (labels joined with `multiple`) with an ellipsis, or the placeholder.
|
|
101
|
+
|
|
102
|
+
| Prop | Type | Default | Description |
|
|
103
|
+
|---|---|---|---|
|
|
104
|
+
| `renderValue` | `(item: { value: string; label: string }) => ReactNode` | — | Single mode: draws the picked option in the trigger with the same parts as the row (Avatar, ItemText, Badge…); not called while empty. |
|
|
105
|
+
| `…rest` | `Omit<HTMLAttributes<HTMLSpanElement>, "children">` | — | `className` and the other span attributes. |
|
|
106
|
+
|
|
107
|
+
### Select.TriggerIcon · Select.ItemIcon
|
|
108
|
+
`ref` → `HTMLSpanElement`. An `aria-hidden` `<span>` with a leading glyph at the tier icon size: before the value / before the option label. + native `<span>` props.
|
|
109
|
+
|
|
110
|
+
### Select.Content
|
|
111
|
+
`ref` → `HTMLDivElement` (the panel). Portal + the floating list panel with the search row, the `role="listbox"`, the empty and load states. Closed, the items render hidden so the trigger knows their labels. Below 640px it is a bottom sheet.
|
|
112
|
+
|
|
113
|
+
| Prop | Type | Default | Description |
|
|
114
|
+
|---|---|---|---|
|
|
115
|
+
| `searchable` | `boolean` | `false` | A search field on top; items filter by label, description and `keywords` — or the owner loads them by the query (`search`, `filter={false}` on Root). |
|
|
116
|
+
| `children` | `ReactNode` | — (required) | Items, groups, separators. |
|
|
117
|
+
| `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "children" \| "hidden" \| "onKeyDown" \| "onAnimationEnd">` | — | `className` and the other attributes of the panel. |
|
|
118
|
+
|
|
119
|
+
### Select.Item
|
|
120
|
+
`ref` → `HTMLDivElement`. `role="option"` with `aria-selected`; a check on the end (single) or a Checkbox.Indicator in front (`multiple`).
|
|
121
|
+
|
|
122
|
+
| Prop | Type | Default | Description |
|
|
123
|
+
|---|---|---|---|
|
|
124
|
+
| `value` | `string` | — (required) | Value of the option. |
|
|
125
|
+
| `label` | `string` | — | Text in the trigger and for typeahead; defaults to `Select.ItemText`, then the plain text. |
|
|
126
|
+
| `keywords` | `string` | — | Extra words for the search. |
|
|
127
|
+
| `disabled` | `boolean` | `false` | Muted, skipped by the keyboard, not selectable. |
|
|
128
|
+
| `children` | `ReactNode` | — (required) | Text, or `Select.ItemIcon`, `Avatar.Root`, `Thumbnail.Root`, `Select.ItemText`, `Select.ItemDescription`, `Select.ItemMeta`, `Badge.Root` as direct children. |
|
|
129
|
+
|
|
130
|
+
### Select.ItemText · Select.ItemDescription · Select.ItemMeta
|
|
131
|
+
`ref` → `HTMLSpanElement`. Rich option parts: the title (its text is the label) / a muted second line / a trailing muted value. Leading media is an `Avatar.Root` or `Thumbnail.Root` child, a trailing status a `Badge.Root`.
|
|
132
|
+
|
|
133
|
+
### Select.Group
|
|
134
|
+
`ref` → `HTMLDivElement`. `<div role="group">` named by its `label`; hidden while the search leaves none of its options. + native `<div>` props.
|
|
135
|
+
|
|
136
|
+
| Prop | Type | Default | Description |
|
|
137
|
+
|---|---|---|---|
|
|
138
|
+
| `label` | `ReactNode` | — | Heading of the group (caption, muted); also its accessible name. |
|
|
139
|
+
|
|
140
|
+
### Select.Separator
|
|
141
|
+
`ref` → `HTMLDivElement`. A full-bleed Divider between groups; hidden while searching.
|
|
142
|
+
|
|
143
|
+
| Prop | Type | Default | Description |
|
|
144
|
+
|---|---|---|---|
|
|
145
|
+
| `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "children">` | — | `className` and the other attributes of the divider. |
|
|
146
|
+
|
|
147
|
+
## Variants
|
|
148
|
+
No `variant` or `tone`. The trigger is the field look (fill, inset control border, tier radius); the panel is the shared floating surface with menu rows.
|
|
149
|
+
|
|
150
|
+
### size
|
|
151
|
+
| Value | Looks like | Use when | Default |
|
|
152
|
+
|---|---|---|---|
|
|
153
|
+
| `xs` | 28 trigger, 12/16 text, 24 rows | Dense table filters | |
|
|
154
|
+
| `s` | 32 trigger, 13/20 text, 28 rows | Compact toolbars and side panels | |
|
|
155
|
+
| `m` | 36 trigger, 14/20 text, 32 rows | Regular forms | yes |
|
|
156
|
+
| `l` | 40 trigger, 16/24 text, 36 rows | Spacious forms | |
|
|
157
|
+
| `xl` | 48 trigger, 16/24 text, 40 rows | Touch-first screens | |
|
|
158
|
+
|
|
159
|
+
### Flags
|
|
160
|
+
| Value | Looks like | Use when | Default |
|
|
161
|
+
|---|---|---|---|
|
|
162
|
+
| `multiple` | checkbox on the left of every row, the list stays open, labels joined in the trigger | A few values from a short list | `false` |
|
|
163
|
+
| `clearable` | × segment before the chevron while a value is set (full height, one hover wash) | The field is optional and can be reset | `false` |
|
|
164
|
+
| `loading` | spinner instead of the chevron; skeleton rows in the option geometry while no item is on screen | Options load asynchronously | `false` |
|
|
165
|
+
| `loadingMore` | skeleton rows after the items | The next page is loading (`hasMore` + `onLoadMore`) | `false` |
|
|
166
|
+
| `filter={false}` | every item shows whatever the query; the query is still marked in the labels | The owner searches on the server (`search`, `onSearchChange`) | `true` |
|
|
167
|
+
| `searchable` (Content) | search row with a faint hairline at the top of the list | More than ~10 options | `false` |
|
|
168
|
+
| rich options | `Thumbnail.Root` or `Select.ItemDescription` in an item: a two-line row; `Avatar.Root` before the text and `Badge.Root` after it keep one line; the trigger the same with `renderValue` | Products, people, delivery tariffs | |
|
|
169
|
+
|
|
170
|
+
**Combinations** — `renderValue` is single-mode only; with `multiple` the trigger shows the joined labels. `error` implies `invalid`; `loadError` is a different thing — the options failed to load — and never marks the field invalid. `Select.ItemDescription` is searchable. A status Badge can follow `Select.Value` inside the trigger; it takes the tier one step down by itself. An `Avatar.Root` or `Thumbnail.Root` in a row or `renderValue` takes the tier media size (`xs` · `xs` · `s` · `s` · `m` for `xs`–`xl`) unless it sets `size`. A server search: `searchable` + `search` / `onSearchChange` + `filter={false}` + `loading`; paging adds `hasMore`, `loadingMore`, `onLoadMore`; keep the selected option among the items (or draw it with `renderValue`) so the trigger knows its label.
|
|
171
|
+
|
|
172
|
+
## States
|
|
173
|
+
| State | Driven by | DOM |
|
|
174
|
+
|---|---|---|
|
|
175
|
+
| empty | no value | `data-placeholder="true"` on Value, placeholder color |
|
|
176
|
+
| open | `open` / click / arrows | trigger `data-state="open"`, `aria-expanded`; panel `data-state`, `data-side`; chevron turns 180° |
|
|
177
|
+
| invalid | `invalid` or `error` | `data-invalid="true"`, `aria-invalid` on the trigger; error text below; the control shakes once when an error arrives (`data-shake` on the frame) |
|
|
178
|
+
| disabled | `disabled` | native `disabled`, `data-disabled="true"` |
|
|
179
|
+
| loading | `loading` | `data-loading="true"`, `aria-busy` on the trigger and the list; with no item on screen, `aria-hidden` skeleton rows (`data-skeleton`) in the list; `labels.loading` in a polite live region |
|
|
180
|
+
| loading more | `loadingMore` | skeleton rows after the items; the end of the list is watched while `hasMore` (`onLoadMore` once per batch) |
|
|
181
|
+
| load error | `loadError` | the list is `hidden`; a compact EmptyPage with `role="alert"` and a retry Button (`onRetry`) |
|
|
182
|
+
| state swap | loading ↔ items ↔ load error | the new content fades in (`swapMotion`), the first render stays still |
|
|
183
|
+
| searching | typing in the search | panel `data-searching="true"`; groups without matches and separators hide; the match in an option's title, description and plain text is a `<mark>` in `accent-text` (not in the trigger); the query clears when the list closes (`onSearchChange("")`) |
|
|
184
|
+
| nothing to show | no option matches (and not loading) | a compact EmptyPage with `role="status"`: `labels.empty`, plus `labels.emptyHint` while a query is typed |
|
|
185
|
+
| sheet | viewport below 640px | a scrim and a full-width bottom sheet with an `aria-hidden` grab handle around the panel; the sheet carries `data-state`, the panel keeps its role and ref; page scroll locked; a swipe down from the handle closes it |
|
|
186
|
+
| option highlighted / selected / disabled | keyboard and pointer / value / `disabled` | `data-highlighted`, `data-selected` + `aria-selected`, `data-disabled` + `aria-disabled`; highlight is a fill only |
|
|
187
|
+
|
|
188
|
+
## Layout & spacing
|
|
189
|
+
- The trigger is 100% wide; set the width with the layout (grid column, max-width wrapper).
|
|
190
|
+
- Label → field: tier `label-gap`; field → hint: tier `hint-gap`; field → field in a form: `--prime-space-5`.
|
|
191
|
+
- Panel: at least the trigger width and `--prime-panel-min-width`, at most twice that; max height `--prime-panel-max-height` (scrolls); flips near the viewport edge.
|
|
192
|
+
- Long values truncate with an ellipsis in the trigger.
|
|
193
|
+
- A rich row and its trigger use the same parts in the same order: leading media (`Avatar.Root`,
|
|
194
|
+
`Thumbnail.Root`) → `Select.ItemText` (+ `Select.ItemDescription`) → trailing `Badge.Root` /
|
|
195
|
+
`Select.ItemMeta`. In a row the trailing part sits before the check; in the trigger, at the end
|
|
196
|
+
before the chevron. Draw the trigger with `renderValue` returning the row's parts, so the picked
|
|
197
|
+
person keeps their avatar and role badge when the list is closed:
|
|
198
|
+
|
|
199
|
+
```tsx
|
|
200
|
+
<Select.Root label="Ответственный" defaultValue="lebedeva">
|
|
201
|
+
<Select.Trigger>
|
|
202
|
+
<Select.Value
|
|
203
|
+
renderValue={({ value, label }) => {
|
|
204
|
+
const member = BY_VALUE.get(value);
|
|
205
|
+
return (
|
|
206
|
+
<>
|
|
207
|
+
<Avatar.Root color={member?.color}>
|
|
208
|
+
<Avatar.Fallback>{member?.initials}</Avatar.Fallback>
|
|
209
|
+
</Avatar.Root>
|
|
210
|
+
<Select.ItemText>{label}</Select.ItemText>
|
|
211
|
+
{member?.role ? <Badge.Root color={member.color}>{member.role}</Badge.Root> : null}
|
|
212
|
+
</>
|
|
213
|
+
);
|
|
214
|
+
}}
|
|
215
|
+
/>
|
|
216
|
+
</Select.Trigger>
|
|
217
|
+
<Select.Content>
|
|
218
|
+
{TEAM.map((member) => (
|
|
219
|
+
<Select.Item key={member.value} value={member.value}>
|
|
220
|
+
<Avatar.Root color={member.color}>
|
|
221
|
+
<Avatar.Fallback>{member.initials}</Avatar.Fallback>
|
|
222
|
+
</Avatar.Root>
|
|
223
|
+
<Select.ItemText>{member.name}</Select.ItemText>
|
|
224
|
+
{member.role ? <Badge.Root color={member.color}>{member.role}</Badge.Root> : null}
|
|
225
|
+
</Select.Item>
|
|
226
|
+
))}
|
|
227
|
+
</Select.Content>
|
|
228
|
+
</Select.Root>
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Accessibility
|
|
232
|
+
|
|
233
|
+
### Keyboard
|
|
234
|
+
| Key | Action |
|
|
235
|
+
|---|---|
|
|
236
|
+
| `Enter` · `Space` · `ArrowDown` · `ArrowUp` | On the trigger open the list; focus moves into the search or the list. |
|
|
237
|
+
| `ArrowDown` · `ArrowUp` · `Home` · `End` | In the list move the highlight over the enabled options, wrapping. |
|
|
238
|
+
| `Enter` · `Space` | Pick the highlighted option; a single pick closes the list and returns focus to the trigger. |
|
|
239
|
+
| `A–Я` | Typeahead: the highlight jumps to the option starting with the letter or the typed prefix. |
|
|
240
|
+
| `Delete` · `Backspace` | On the trigger with `clearable` clear the value. |
|
|
241
|
+
| `Enter` | With a load error in the open list, retries (`onRetry`). |
|
|
242
|
+
| `Escape` | Closes the list; focus returns to the trigger. |
|
|
243
|
+
| `Tab` | Returns focus to the trigger, closes the list and moves on from the trigger. |
|
|
244
|
+
|
|
245
|
+
### ARIA
|
|
246
|
+
- The trigger is `role="combobox"` with `aria-expanded`, `aria-haspopup="listbox"`, `aria-controls`; `label` names it.
|
|
247
|
+
- The list is `role="listbox"` (`aria-multiselectable` with `multiple`); options are `role="option"` with `aria-selected`; the highlight goes through `aria-activedescendant`.
|
|
248
|
+
- The hint and the error are linked by `aria-describedby`; the error sets `aria-invalid`; loading sets `aria-busy`.
|
|
249
|
+
- While loading the list is `aria-busy` and `labels.loading` is announced politely; skeleton rows are hidden from screen readers; a load error is `role="alert"`.
|
|
250
|
+
- The highlight reaching the last option asks for the next batch the same way scrolling does.
|
|
251
|
+
- With `name`, hidden inputs carry the value into a native form submit; native trigger events (`onFocus`, `onBlur`, `onKeyDown`) reach the button.
|
|
252
|
+
- An outside press closes the list without moving focus back: focus follows the pointer (foundation §8).
|
|
253
|
+
|
|
254
|
+
### Labels
|
|
255
|
+
<!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
|
|
256
|
+
|
|
257
|
+
| Key | Default | Used for |
|
|
258
|
+
|---|---|---|
|
|
259
|
+
| `search` | `"Поиск"` | Placeholder and accessible name of the search field. |
|
|
260
|
+
| `empty` | `"Ничего не найдено"` | Empty state: no items or nothing matches. |
|
|
261
|
+
| `emptyHint` | `"Попробуйте изменить запрос"` | Second line of the empty state while searching; `""` hides it. |
|
|
262
|
+
| `loading` | `"Загрузка…"` | Announced while `loading` or `loadingMore`. |
|
|
263
|
+
| `retry` | `"Повторить"` | The retry button under `loadError` (`onRetry`). |
|
|
264
|
+
| `clear` | `"Очистить"` | Tooltip of the clear segment. |
|
|
265
|
+
| `optional` | `"необязательно"` | Muted marker after the label when `optional`. |
|
|
266
|
+
|
|
267
|
+
## Examples
|
|
268
|
+
| Example | Shows |
|
|
269
|
+
|---|---|
|
|
270
|
+
| [overview.tsx](examples/overview.tsx) | A labelled field with a placeholder; picking an option closes the list and shows its label — `label`, `placeholder`. |
|
|
271
|
+
| [sizes.tsx](examples/sizes.tsx) | Every size tier; the label, the list rows and the hint take the tier of the field — `size`. |
|
|
272
|
+
| [states.tsx](examples/states.tsx) | A default field next to a disabled, a loading, an invalid one and a list with nothing in it — `disabled`, `loading`, `invalid`, `labels`. |
|
|
273
|
+
| [validation.tsx](examples/validation.tsx) | Live validation: unassigning the owner shakes the field and drops the error in, picking someone clears it; required and optional markers and a hint — `required`, `optional`, `hint`, `error`. |
|
|
274
|
+
| [with-icon.tsx](examples/with-icon.tsx) | A leading icon in the trigger and an icon before every option label — `Select.TriggerIcon`, `Select.ItemIcon`. |
|
|
275
|
+
| [multiple.tsx](examples/multiple.tsx) | Several values: checkboxes in the list, the list stays open on a pick, labels joined in the trigger — `multiple`. |
|
|
276
|
+
| [searchable.tsx](examples/searchable.tsx) | A long list with a search field: options match their label and keywords, groups and the separator hide while searching — `searchable`, `keywords`, `Select.Group`. |
|
|
277
|
+
| [server-search.tsx](examples/server-search.tsx) | A client out of thousands: the parent searches on the server as the query changes and loads the next page at the end of the list — `search`, `onSearchChange`, `filter`, `loading`, `hasMore`, `loadingMore`, `onLoadMore`. |
|
|
278
|
+
| [load-error.tsx](examples/load-error.tsx) | The options failed to load: the list says so in place and a retry loads them again — `loadError`, `onRetry`, `loading`. |
|
|
279
|
+
| [clearable.tsx](examples/clearable.tsx) | An optional field that can be reset: a clear segment before the chevron, Delete or Backspace on the trigger — `clearable`. |
|
|
280
|
+
| [rich-options.tsx](examples/rich-options.tsx) | Options with a picture, a second line and a price; the trigger draws the picked option with the same parts — `renderValue`, `Select.ItemText`, `Select.ItemDescription`, `Select.ItemMeta`. |
|
|
281
|
+
| [people.tsx](examples/people.tsx) | People in the rows and the trigger: an avatar sized to the tier before the name, a role badge after it — `Avatar.Root`, `Badge.Root`, `renderValue`. |
|
|
282
|
+
| [controlled.tsx](examples/controlled.tsx) | The parent owns the value: the plan drives the price under the field and a button resets it — `value`, `onValueChange`. |
|
|
283
|
+
| [controlled-open.tsx](examples/controlled-open.tsx) | The parent owns the list: a button opens it from code, a pick or Escape closes it — `open`, `onOpenChange`. |
|
|
284
|
+
| [in-form.tsx](examples/in-form.tsx) | Regional settings form: the required country is checked on submit, the error shakes the field and leaves once a country is picked, a calm note confirms the save — `required`, `error`, `hint`. |
|
|
285
|
+
|
|
286
|
+
## Mistakes
|
|
287
|
+
- A Label + `aria-labelledby` next to the field → pass `label`, `hint`, `error` to `Select.Root`.
|
|
288
|
+
- A function inside `Select.Value` → use `renderValue`.
|
|
289
|
+
- `Select.Group` with a separate heading element → pass the heading as `label`.
|
|
290
|
+
- Rich parts wrapped in your own `<div>` → put them as direct children of the item.
|
|
291
|
+
- A system select via a prop → use [NativeSelect](../native-select/COMPONENT.md).
|
|
292
|
+
- Mixing sizes in one form → keep every field of a form at one `size`.
|
|
293
|
+
- Results from a server passed as items with the kit filter still on → set `filter={false}`, or the kit hides results that do not contain the query literally.
|
|
294
|
+
- A spinner or «Загрузка…» item drawn by hand while options load → set `loading` (skeleton rows) and `loadingMore`.
|
|
295
|
+
- A failed load shown through the field `error` → use `loadError` + `onRetry`; `error` is for validation.
|
|
296
|
+
- An Avatar wrapped in `Select.ItemIcon` → put `Avatar.Root` as a direct child of the item; it takes the tier size.
|
|
297
|
+
|
|
298
|
+
## Related
|
|
299
|
+
- **Built from:** [ScrollContainer](../scroll-container/COMPONENT.md) (list), [Checkbox](../checkbox/COMPONENT.md) (`Checkbox.Indicator` in `multiple`), [Spinner](../spinner/COMPONENT.md) (`loading` in the trigger), [Skeleton](../skeleton/COMPONENT.md) (loading rows), [EmptyPage](../empty-page/COMPONENT.md) (empty state, load error), [Button](../button/COMPONENT.md) (retry), [Divider](../divider/COMPONENT.md) (`Separator`), [Thumbnail](../thumbnail/COMPONENT.md) and [Avatar](../avatar/COMPONENT.md) (row media), [Badge](../badge/COMPONENT.md) (row badge), [VisuallyHidden](../visually-hidden/COMPONENT.md) (loading announcement), `Icon` (chevron, clear, check, search, retry), [Label](../label/COMPONENT.md) and [Hint](../hint/COMPONENT.md) (field frame)
|
|
300
|
+
- **See also:** [NativeSelect](../native-select/COMPONENT.md), [TagSelect](../tag-select/COMPONENT.md), [Dropdown](../dropdown/COMPONENT.md), [Radio](../radio/COMPONENT.md), [SegmentedControl](../segmented-control/COMPONENT.md)
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** An optional field that can be reset: a clear segment before the chevron, Delete or Backspace on the trigger — `clearable`. */
|
|
2
|
+
import { Select } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
export default function SelectClearableExample() {
|
|
5
|
+
return (
|
|
6
|
+
<Select.Root
|
|
7
|
+
label="Менеджер клиента"
|
|
8
|
+
optional
|
|
9
|
+
clearable
|
|
10
|
+
defaultValue="anna"
|
|
11
|
+
placeholder="Не назначен"
|
|
12
|
+
>
|
|
13
|
+
<Select.Trigger>
|
|
14
|
+
<Select.Value />
|
|
15
|
+
</Select.Trigger>
|
|
16
|
+
<Select.Content>
|
|
17
|
+
<Select.Item value="anna">Анна Петрова</Select.Item>
|
|
18
|
+
<Select.Item value="ivan">Иван Смирнов</Select.Item>
|
|
19
|
+
<Select.Item value="olga">Ольга Ким</Select.Item>
|
|
20
|
+
</Select.Content>
|
|
21
|
+
</Select.Root>
|
|
22
|
+
);
|
|
23
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** The parent owns the list: a button opens it from code, a pick or Escape closes it — `open`, `onOpenChange`. */
|
|
2
|
+
import { Button, Select } from "prime-ui-kit";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
export default function SelectControlledOpenExample() {
|
|
6
|
+
const [open, setOpen] = React.useState(false);
|
|
7
|
+
|
|
8
|
+
return (
|
|
9
|
+
<>
|
|
10
|
+
<Select.Root
|
|
11
|
+
label="Склад отгрузки"
|
|
12
|
+
placeholder="Склад не выбран"
|
|
13
|
+
open={open}
|
|
14
|
+
onOpenChange={setOpen}
|
|
15
|
+
>
|
|
16
|
+
<Select.Trigger>
|
|
17
|
+
<Select.Value />
|
|
18
|
+
</Select.Trigger>
|
|
19
|
+
<Select.Content>
|
|
20
|
+
<Select.Item value="msk">Москва, Южные ворота</Select.Item>
|
|
21
|
+
<Select.Item value="spb">Санкт-Петербург, Шушары</Select.Item>
|
|
22
|
+
<Select.Item value="ekb">Екатеринбург, Кольцово</Select.Item>
|
|
23
|
+
</Select.Content>
|
|
24
|
+
</Select.Root>
|
|
25
|
+
<Button.Root variant="soft" tone="neutral" onClick={() => setOpen(true)}>
|
|
26
|
+
Выбрать склад
|
|
27
|
+
</Button.Root>
|
|
28
|
+
</>
|
|
29
|
+
);
|
|
30
|
+
}
|