prime-ui-kit 0.10.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +114 -58
- package/bin/prime-ui-kit.js +52 -0
- package/dist/chunks/{chunk-EJ2ZVQYL.js → chunk-6TI4DSM5.js} +1904 -2040
- package/dist/chunks/chunk-CUH6DJ57.js +29335 -0
- package/dist/chunks/{chunk-T7CLQXGB.js → chunk-GKX3QAUC.js} +159 -6
- package/dist/chunks/chunk-Q3BFRQHZ.js +1729 -0
- package/dist/chunks/chunk-WDTSHOTD.js +6841 -0
- package/dist/color-picker.d.ts +5 -3
- package/dist/color-picker.js +7 -3
- package/dist/components/accordion/Accordion.d.ts +1 -1
- package/dist/components/avatar/Avatar.d.ts +2 -2
- package/dist/components/badge/Badge.d.ts +17 -5
- package/dist/components/badge/tier.d.ts +6 -2
- package/dist/components/banner/Banner.d.ts +1 -1
- package/dist/components/breadcrumb/Breadcrumb.d.ts +1 -1
- package/dist/components/button/Button.d.ts +42 -10
- package/dist/components/button-group/ButtonGroup.d.ts +22 -5
- package/dist/components/card/Card.d.ts +19 -3
- package/dist/components/chart-frame/ChartFrame.d.ts +229 -0
- package/dist/components/chat/Chat.d.ts +192 -0
- package/dist/components/chat/ChatPinned.d.ts +44 -0
- package/dist/components/chat/ChatRows.d.ts +30 -0
- package/dist/components/chat/MessageList.d.ts +95 -0
- package/dist/components/chat/chatContext.d.ts +54 -0
- package/dist/components/chat/groupMessages.d.ts +50 -0
- package/dist/components/chat/messageFlow.d.ts +42 -0
- package/dist/components/checkbox/Checkbox.d.ts +9 -4
- package/dist/components/code-block/CodeBlock.d.ts +1 -1
- package/dist/components/color-field/ColorField.d.ts +44 -0
- package/dist/components/color-picker/ColorPicker.d.ts +5 -4
- package/dist/components/color-picker/ColorPresets.d.ts +22 -14
- package/dist/components/color-swatches/ColorSwatches.d.ts +9 -4
- package/dist/components/command-menu/CommandMenu.d.ts +41 -11
- package/dist/components/composer/Composer.d.ts +234 -0
- package/dist/components/composer/format.d.ts +39 -0
- package/dist/components/composer/liveWave.d.ts +30 -0
- package/dist/components/composer/useRecorder.d.ts +72 -0
- package/dist/components/confirm-dialog/ConfirmDialog.d.ts +57 -0
- package/dist/components/crossfade/Crossfade.d.ts +8 -2
- package/dist/components/data-table/ColumnsMenu.d.ts +19 -0
- package/dist/components/data-table/DataTable.d.ts +72 -8
- package/dist/components/data-table/Footer.d.ts +1 -1
- package/dist/components/data-table/Head.d.ts +6 -2
- package/dist/components/data-table/Row.d.ts +33 -5
- package/dist/components/data-table/StateRows.d.ts +4 -2
- package/dist/components/data-table/context.d.ts +14 -0
- package/dist/components/data-table/reorder.d.ts +86 -0
- package/dist/components/data-table/rowEvents.d.ts +14 -0
- package/dist/components/data-table/rows.d.ts +17 -1
- package/dist/components/data-table/serverMode.d.ts +8 -0
- package/dist/components/data-table/types.d.ts +16 -0
- package/dist/components/data-table/useColumnHover.d.ts +2 -1
- package/dist/components/data-table/useInfiniteRows.d.ts +4 -1
- package/dist/components/data-table/useRowSelection.d.ts +5 -4
- package/dist/components/datepicker/Datepicker.d.ts +8 -3
- package/dist/components/datepicker/DatepickerPanel.d.ts +2 -2
- package/dist/components/datepicker/panelLayout.d.ts +2 -2
- package/dist/components/description-list/DescriptionList.d.ts +59 -0
- package/dist/components/digit-input/DigitInput.d.ts +12 -5
- package/dist/components/divider/Divider.d.ts +1 -1
- package/dist/components/dnd/Dnd.d.ts +48 -20
- package/dist/components/dnd/dragSession.d.ts +27 -2
- package/dist/components/dnd/geometry.d.ts +12 -4
- package/dist/components/dnd/labels.d.ts +12 -1
- package/dist/components/dnd/useDragSource.d.ts +2 -0
- package/dist/components/dnd/useDropTarget.d.ts +6 -3
- package/dist/components/dnd/useFlipList.d.ts +8 -2
- package/dist/components/dnd/useSortableList.d.ts +13 -10
- package/dist/components/drawer/Drawer.d.ts +14 -12
- package/dist/components/dropdown/Dropdown.d.ts +23 -4
- package/dist/components/empty-page/EmptyPage.d.ts +35 -5
- package/dist/components/fieldset/Fieldset.d.ts +24 -0
- package/dist/components/file-upload/FileUpload.d.ts +152 -14
- package/dist/components/gallery/Gallery.d.ts +79 -0
- package/dist/components/gallery/layout.d.ts +34 -0
- package/dist/components/gantt/Gantt.d.ts +102 -0
- package/dist/components/gantt/GanttBar.d.ts +51 -0
- package/dist/components/gantt/GanttRow.d.ts +75 -0
- package/dist/components/gantt/ganttModel.d.ts +133 -0
- package/dist/components/gantt/useEdgeAutoScroll.d.ts +12 -0
- package/dist/components/hint/Hint.d.ts +1 -1
- package/dist/components/index.d.ts +53 -22
- package/dist/components/input/Input.d.ts +58 -4
- package/dist/components/kanban/Kanban.d.ts +77 -12
- package/dist/components/kbd/Kbd.d.ts +1 -1
- package/dist/components/label/Label.d.ts +1 -1
- package/dist/components/link-button/LinkButton.d.ts +2 -2
- package/dist/components/login-form/LoginForm.d.ts +1 -1
- package/dist/components/media-viewer/MediaViewer.d.ts +55 -0
- package/dist/components/media-viewer/ViewerVideo.d.ts +53 -0
- package/dist/components/media-viewer/originShape.d.ts +17 -0
- package/dist/components/media-viewer/physics.d.ts +81 -0
- package/dist/components/media-viewer/types.d.ts +59 -0
- package/dist/components/media-viewer/viewerEngine.d.ts +202 -0
- package/dist/components/message/Message.d.ts +83 -0
- package/dist/components/message/MessageCards.d.ts +64 -0
- package/dist/components/message/MessageFile.d.ts +36 -0
- package/dist/components/message/MessageMedia.d.ts +12 -0
- package/dist/components/message/MessageParts.d.ts +206 -0
- package/dist/components/message/MessageReactionBar.d.ts +35 -0
- package/dist/components/message/MessageTyping.d.ts +25 -0
- package/dist/components/message/bubbleHug.d.ts +10 -0
- package/dist/components/message/bubbleMorph.d.ts +43 -0
- package/dist/components/message/formatMessageTime.d.ts +2 -0
- package/dist/components/message/types.d.ts +21 -0
- package/dist/components/modal/DialogGuard.d.ts +21 -0
- package/dist/components/modal/DialogParts.d.ts +90 -15
- package/dist/components/modal/Modal.d.ts +9 -47
- package/dist/components/modal/ModalDialog.d.ts +46 -0
- package/dist/components/native-select/NativeSelect.d.ts +3 -3
- package/dist/components/notification/Notification.d.ts +7 -1
- package/dist/components/page-content/PageContent.d.ts +58 -1
- package/dist/components/page-toolbar/PageToolbar.d.ts +8 -7
- package/dist/components/pagination/Pagination.d.ts +1 -1
- package/dist/components/popover/Popover.d.ts +12 -4
- package/dist/components/progress-bar/ProgressBar.d.ts +30 -10
- package/dist/components/progress-circle/ProgressCircle.d.ts +42 -7
- package/dist/components/radio/Radio.d.ts +4 -4
- package/dist/components/scroll-container/ScrollContainer.d.ts +27 -7
- package/dist/components/scroll-container/useFitFlag.d.ts +5 -0
- package/dist/components/scroll-container/useScrollEdges.d.ts +53 -0
- package/dist/components/scroll-container/useWheelToInline.d.ts +10 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +23 -6
- package/dist/components/select/Select.d.ts +38 -8
- package/dist/components/select/SelectItem.d.ts +7 -4
- package/dist/components/select/selectContext.d.ts +12 -3
- package/dist/components/sheet/Sheet.d.ts +49 -0
- package/dist/components/skeleton/Skeleton.d.ts +1 -1
- package/dist/components/slider/Slider.d.ts +17 -3
- package/dist/components/smart-filter/SmartFilter.d.ts +48 -6
- package/dist/components/smart-filter/model.d.ts +31 -11
- package/dist/components/sparkline/Sparkline.d.ts +19 -4
- package/dist/components/spinner/Spinner.d.ts +4 -3
- package/dist/components/stepper/Stepper.d.ts +2 -2
- package/dist/components/switch/Switch.d.ts +14 -4
- package/dist/components/tabs/Tabs.d.ts +5 -3
- package/dist/components/tag-select/TagOptionMenu.d.ts +6 -2
- package/dist/components/tag-select/TagSelect.d.ts +27 -9
- package/dist/components/tag-select/VirtualOptions.d.ts +24 -0
- package/dist/components/textarea/Textarea.d.ts +48 -2
- package/dist/components/thumbnail/Thumbnail.d.ts +48 -6
- package/dist/components/timeline/Timeline.d.ts +1 -1
- package/dist/components/tooltip/Tooltip.d.ts +9 -4
- package/dist/components/typography/Typography.d.ts +1 -1
- package/dist/components/video-note/VideoNote.d.ts +27 -0
- package/dist/components/voice-player/VoicePlayer.d.ts +33 -0
- package/dist/components/voice-player/getWaveform.d.ts +7 -0
- package/dist/hooks/useEdgeOverflow.d.ts +17 -8
- package/dist/hooks/useImageStatus.d.ts +10 -10
- package/dist/hooks/useModalLayer.d.ts +6 -4
- package/dist/hooks/usePosition.d.ts +16 -1
- package/dist/hooks/usePresence.d.ts +1 -1
- package/dist/hooks/useSwipeDismiss.d.ts +11 -19
- package/dist/hooks/useTokenValue.d.ts +10 -0
- package/dist/hooks/useUploadQueue.d.ts +60 -0
- package/dist/hooks/useVirtualRows.d.ts +74 -0
- package/dist/icon-set.d.ts +29 -0
- package/dist/{icons.js → icon-set.js} +75 -15
- package/dist/icons/Icon.d.ts +6 -5
- package/dist/icons/glyph.d.ts +18 -3
- package/dist/icons/glyphs/bike.d.ts +2 -0
- package/dist/icons/glyphs/captions.d.ts +2 -0
- package/dist/icons/glyphs/chart-gantt.d.ts +2 -0
- package/dist/icons/glyphs/circle-alert.d.ts +2 -0
- package/dist/icons/glyphs/code.d.ts +2 -0
- package/dist/icons/glyphs/columns-3.d.ts +2 -0
- package/dist/icons/glyphs/crown.d.ts +2 -0
- package/dist/icons/glyphs/disc.d.ts +2 -0
- package/dist/icons/glyphs/file.d.ts +2 -0
- package/dist/icons/glyphs/flag.d.ts +2 -0
- package/dist/icons/glyphs/forward.d.ts +2 -0
- package/dist/icons/glyphs/fuel.d.ts +2 -0
- package/dist/icons/glyphs/funnel.d.ts +2 -0
- package/dist/icons/glyphs/globe.d.ts +2 -0
- package/dist/icons/glyphs/headset.d.ts +2 -0
- package/dist/icons/glyphs/megaphone.d.ts +2 -0
- package/dist/icons/glyphs/motorbike.d.ts +2 -0
- package/dist/icons/glyphs/pin.d.ts +2 -0
- package/dist/icons/glyphs/reply.d.ts +2 -0
- package/dist/icons/glyphs/scale.d.ts +2 -0
- package/dist/icons/glyphs/star.d.ts +2 -0
- package/dist/icons/glyphs/strikethrough.d.ts +2 -0
- package/dist/icons/glyphs/text-quote.d.ts +2 -0
- package/dist/icons/glyphs/trophy.d.ts +2 -0
- package/dist/icons/glyphs/video.d.ts +2 -0
- package/dist/icons/glyphs/volume-2.d.ts +2 -0
- package/dist/icons/glyphs/volume-x.d.ts +2 -0
- package/dist/icons/glyphs/zoom-in.d.ts +2 -0
- package/dist/icons/glyphs/zoom-out.d.ts +2 -0
- package/dist/icons/index.d.ts +1 -1
- package/dist/icons/registry.d.ts +59 -0
- package/dist/index.css +1 -13089
- package/dist/index.d.ts +7 -2
- package/dist/index.js +57 -9
- package/dist/internal/AnchorRectContext.d.ts +9 -0
- package/dist/internal/ChoiceField.d.ts +2 -2
- package/dist/internal/ControlSizeContext.d.ts +1 -1
- package/dist/internal/Disclosure.d.ts +15 -0
- package/dist/internal/FieldAction.d.ts +38 -0
- package/dist/internal/FieldCommit.d.ts +46 -0
- package/dist/internal/FieldFrame.d.ts +1 -1
- package/dist/internal/HighlightMatch.d.ts +5 -3
- package/dist/internal/MorphText.d.ts +3 -2
- package/dist/internal/ProgressLegend.d.ts +18 -0
- package/dist/internal/VisuallyHidden.d.ts +5 -1
- package/dist/internal/attachmentTile.d.ts +64 -0
- package/dist/internal/attachmentTile.module.css.d.ts +2 -0
- package/dist/internal/disabledContext.d.ts +7 -0
- package/dist/internal/edgeAutoScroll.d.ts +30 -0
- package/dist/internal/fileFormat.d.ts +5 -0
- package/dist/internal/fileName.d.ts +9 -0
- package/dist/internal/fileSize.d.ts +2 -0
- package/dist/internal/formatClock.d.ts +2 -0
- package/dist/internal/glyphSwap.d.ts +19 -0
- package/dist/internal/iconBox.module.css.d.ts +2 -0
- package/dist/internal/imageSlot.d.ts +3 -1
- package/dist/internal/leaveInPlace.d.ts +9 -0
- package/dist/internal/listbox.d.ts +19 -0
- package/dist/internal/mediaDisk.d.ts +14 -0
- package/dist/internal/mediaFrame.d.ts +2 -0
- package/dist/internal/mediaKind.d.ts +7 -0
- package/dist/internal/mediaPlayer.d.ts +135 -0
- package/dist/internal/mediaSession.d.ts +13 -0
- package/dist/internal/messageList.d.ts +121 -0
- package/dist/internal/messagePart.d.ts +106 -0
- package/dist/internal/overlay/FloatingPanel.d.ts +1 -1
- package/dist/internal/overlay/focus.d.ts +23 -2
- package/dist/internal/overlay/useFloatingLayer.d.ts +2 -2
- package/dist/internal/palette.d.ts +7 -0
- package/dist/internal/progressSegments.d.ts +39 -2
- package/dist/internal/readReceipts.d.ts +11 -0
- package/dist/internal/richText.d.ts +40 -0
- package/dist/internal/ring.d.ts +64 -0
- package/dist/internal/sticky.d.ts +2 -0
- package/dist/internal/surfaceDepth.d.ts +2 -0
- package/dist/internal/transcript.d.ts +73 -0
- package/dist/internal/transfer.d.ts +79 -0
- package/dist/internal/transferDisk.d.ts +76 -0
- package/dist/internal/useNearView.d.ts +7 -0
- package/dist/internal/usePendingChanges.d.ts +18 -0
- package/dist/internal/useRangeSelection.d.ts +41 -0
- package/dist/layout/app-header/AppHeader.d.ts +21 -3
- package/dist/layout/bottom-nav/BottomNav.d.ts +27 -7
- package/dist/layout/index.d.ts +2 -2
- package/dist/layout/sidebar/Sidebar.d.ts +1 -1
- package/dist/skill/SKILL.md +130 -0
- package/dist/skill/anti-slop.md +224 -0
- package/dist/skill/api-contract.md +295 -0
- package/dist/skill/cheatsheet.md +317 -0
- package/dist/skill/checklist.md +91 -0
- package/dist/skill/choosing.md +164 -0
- package/dist/skill/components.md +177 -0
- package/dist/skill/composition.md +312 -0
- package/dist/skill/foundations.md +186 -0
- package/dist/skill/layouts.md +262 -0
- package/dist/skill/motion.md +211 -0
- package/dist/skill/patterns/chat.module.css +33 -0
- package/dist/skill/patterns/chat.tsx +838 -0
- package/dist/skill/patterns/dashboard.module.css +44 -0
- package/dist/skill/patterns/dashboard.tsx +326 -0
- package/dist/skill/patterns/detail-page.module.css +74 -0
- package/dist/skill/patterns/detail-page.tsx +209 -0
- package/dist/skill/patterns/form-drawer.module.css +14 -0
- package/dist/skill/patterns/form-drawer.tsx +240 -0
- package/dist/skill/patterns/list-page.module.css +19 -0
- package/dist/skill/patterns/list-page.tsx +334 -0
- package/dist/skill/patterns/screen-states.module.css +54 -0
- package/dist/skill/patterns/screen-states.tsx +186 -0
- package/dist/skill/patterns/settings-page.module.css +47 -0
- package/dist/skill/patterns/settings-page.tsx +217 -0
- package/dist/skill/reference/components/accordion/COMPONENT.md +175 -0
- package/dist/skill/reference/components/accordion/examples/collapsible.tsx +27 -0
- package/dist/skill/reference/components/accordion/examples/controlled.tsx +36 -0
- package/dist/skill/reference/components/accordion/examples/examples.module.css +10 -0
- package/dist/skill/reference/components/accordion/examples/multiple.tsx +31 -0
- package/dist/skill/reference/components/accordion/examples/overview.tsx +39 -0
- package/dist/skill/reference/components/accordion/examples/sizes.tsx +28 -0
- package/dist/skill/reference/components/accordion/examples/states.tsx +31 -0
- package/dist/skill/reference/components/accordion/examples/variants.tsx +35 -0
- package/dist/skill/reference/components/accordion/examples/with-icon.tsx +47 -0
- package/dist/skill/reference/components/avatar/COMPONENT.md +166 -0
- package/dist/skill/reference/components/avatar/examples/examples.module.css +25 -0
- package/dist/skill/reference/components/avatar/examples/overview.tsx +18 -0
- package/dist/skill/reference/components/avatar/examples/presence.tsx +47 -0
- package/dist/skill/reference/components/avatar/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/avatar/examples/src-from-state.tsx +30 -0
- package/dist/skill/reference/components/avatar/examples/states.tsx +39 -0
- package/dist/skill/reference/components/avatar/examples/team-group.tsx +41 -0
- package/dist/skill/reference/components/avatar/examples/variants.tsx +40 -0
- package/dist/skill/reference/components/badge/COMPONENT.md +193 -0
- package/dist/skill/reference/components/badge/examples/applied-filters.tsx +47 -0
- package/dist/skill/reference/components/badge/examples/examples.module.css +32 -0
- package/dist/skill/reference/components/badge/examples/filter-values.tsx +39 -0
- package/dist/skill/reference/components/badge/examples/in-controls.tsx +23 -0
- package/dist/skill/reference/components/badge/examples/overview.tsx +13 -0
- package/dist/skill/reference/components/badge/examples/server-tags.tsx +61 -0
- package/dist/skill/reference/components/badge/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/badge/examples/states.tsx +59 -0
- package/dist/skill/reference/components/badge/examples/variants.tsx +38 -0
- package/dist/skill/reference/components/badge/examples/with-icon.tsx +50 -0
- package/dist/skill/reference/components/banner/COMPONENT.md +165 -0
- package/dist/skill/reference/components/banner/examples/dismissible.tsx +38 -0
- package/dist/skill/reference/components/banner/examples/examples.module.css +32 -0
- package/dist/skill/reference/components/banner/examples/narrow.tsx +23 -0
- package/dist/skill/reference/components/banner/examples/overview.tsx +18 -0
- package/dist/skill/reference/components/banner/examples/page-strip.tsx +53 -0
- package/dist/skill/reference/components/banner/examples/sizes.tsx +29 -0
- package/dist/skill/reference/components/banner/examples/structure.tsx +45 -0
- package/dist/skill/reference/components/banner/examples/variants.tsx +43 -0
- package/dist/skill/reference/components/breadcrumb/COMPONENT.md +137 -0
- package/dist/skill/reference/components/breadcrumb/examples/ellipsis.tsx +12 -0
- package/dist/skill/reference/components/breadcrumb/examples/examples.module.css +11 -0
- package/dist/skill/reference/components/breadcrumb/examples/overflow.tsx +26 -0
- package/dist/skill/reference/components/breadcrumb/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/breadcrumb/examples/sizes.tsx +24 -0
- package/dist/skill/reference/components/breadcrumb/examples/with-icon.tsx +14 -0
- package/dist/skill/reference/components/button/COMPONENT.md +211 -0
- package/dist/skill/reference/components/button/examples/as-child.tsx +15 -0
- package/dist/skill/reference/components/button/examples/circle.tsx +67 -0
- package/dist/skill/reference/components/button/examples/download.tsx +45 -0
- package/dist/skill/reference/components/button/examples/examples.module.css +54 -0
- package/dist/skill/reference/components/button/examples/hold-to-confirm.tsx +34 -0
- package/dist/skill/reference/components/button/examples/in-form.tsx +45 -0
- package/dist/skill/reference/components/button/examples/label-morph.tsx +38 -0
- package/dist/skill/reference/components/button/examples/on-colored-host.tsx +29 -0
- package/dist/skill/reference/components/button/examples/over-media.tsx +36 -0
- package/dist/skill/reference/components/button/examples/overview.tsx +13 -0
- package/dist/skill/reference/components/button/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/button/examples/states.tsx +38 -0
- package/dist/skill/reference/components/button/examples/toggle.tsx +21 -0
- package/dist/skill/reference/components/button/examples/variants.tsx +32 -0
- package/dist/skill/reference/components/button/examples/with-icon.tsx +41 -0
- package/dist/skill/reference/components/button-group/COMPONENT.md +172 -0
- package/dist/skill/reference/components/button-group/examples/controlled.tsx +29 -0
- package/dist/skill/reference/components/button-group/examples/examples.module.css +8 -0
- package/dist/skill/reference/components/button-group/examples/full-width.tsx +19 -0
- package/dist/skill/reference/components/button-group/examples/in-form.tsx +55 -0
- package/dist/skill/reference/components/button-group/examples/orientation.tsx +19 -0
- package/dist/skill/reference/components/button-group/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/button-group/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/button-group/examples/states.tsx +33 -0
- package/dist/skill/reference/components/button-group/examples/with-icon.tsx +45 -0
- package/dist/skill/reference/components/card/COMPONENT.md +218 -0
- package/dist/skill/reference/components/card/examples/content-templates.tsx +67 -0
- package/dist/skill/reference/components/card/examples/examples.module.css +84 -0
- package/dist/skill/reference/components/card/examples/flat.tsx +25 -0
- package/dist/skill/reference/components/card/examples/interactive.tsx +28 -0
- package/dist/skill/reference/components/card/examples/kpi-media.tsx +42 -0
- package/dist/skill/reference/components/card/examples/narrow.tsx +47 -0
- package/dist/skill/reference/components/card/examples/overview.tsx +39 -0
- package/dist/skill/reference/components/card/examples/panel-chart.tsx +44 -0
- package/dist/skill/reference/components/card/examples/variants.tsx +40 -0
- package/dist/skill/reference/components/chart-frame/COMPONENT.md +265 -0
- package/dist/skill/reference/components/chart-frame/examples/controlled.tsx +92 -0
- package/dist/skill/reference/components/chart-frame/examples/examples.module.css +6 -0
- package/dist/skill/reference/components/chart-frame/examples/narrow.tsx +46 -0
- package/dist/skill/reference/components/chart-frame/examples/overview.tsx +127 -0
- package/dist/skill/reference/components/chart-frame/examples/states.tsx +78 -0
- package/dist/skill/reference/components/chart-frame/examples/tooltip.tsx +158 -0
- package/dist/skill/reference/components/chat/COMPONENT.md +336 -0
- package/dist/skill/reference/components/chat/examples/controlled.tsx +68 -0
- package/dist/skill/reference/components/chat/examples/examples.module.css +38 -0
- package/dist/skill/reference/components/chat/examples/group-chat.tsx +130 -0
- package/dist/skill/reference/components/chat/examples/live.tsx +89 -0
- package/dist/skill/reference/components/chat/examples/narrow.tsx +46 -0
- package/dist/skill/reference/components/chat/examples/overview.tsx +839 -0
- package/dist/skill/reference/components/chat/examples/search.tsx +61 -0
- package/dist/skill/reference/components/chat/examples/structure.tsx +28 -0
- package/dist/skill/reference/components/checkbox/COMPONENT.md +171 -0
- package/dist/skill/reference/components/checkbox/examples/controlled.tsx +41 -0
- package/dist/skill/reference/components/checkbox/examples/examples.module.css +69 -0
- package/dist/skill/reference/components/checkbox/examples/in-form.tsx +34 -0
- package/dist/skill/reference/components/checkbox/examples/indicator.tsx +54 -0
- package/dist/skill/reference/components/checkbox/examples/overview.tsx +10 -0
- package/dist/skill/reference/components/checkbox/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/checkbox/examples/states.tsx +48 -0
- package/dist/skill/reference/components/checkbox/examples/variants.tsx +30 -0
- package/dist/skill/reference/components/checkbox/examples/without-label.tsx +13 -0
- package/dist/skill/reference/components/code-block/COMPONENT.md +108 -0
- package/dist/skill/reference/components/code-block/examples/color-scheme.tsx +16 -0
- package/dist/skill/reference/components/code-block/examples/examples.module.css +21 -0
- package/dist/skill/reference/components/code-block/examples/narrow.tsx +14 -0
- package/dist/skill/reference/components/code-block/examples/overview.tsx +19 -0
- package/dist/skill/reference/components/code-block/examples/variants.tsx +21 -0
- package/dist/skill/reference/components/color-field/COMPONENT.md +163 -0
- package/dist/skill/reference/components/color-field/examples/controlled.tsx +33 -0
- package/dist/skill/reference/components/color-field/examples/examples.module.css +22 -0
- package/dist/skill/reference/components/color-field/examples/in-form.tsx +45 -0
- package/dist/skill/reference/components/color-field/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/color-field/examples/presets.tsx +20 -0
- package/dist/skill/reference/components/color-field/examples/sizes.tsx +14 -0
- package/dist/skill/reference/components/color-field/examples/states.tsx +12 -0
- package/dist/skill/reference/components/color-field/examples/validation.tsx +29 -0
- package/dist/skill/reference/components/color-picker/COMPONENT.md +339 -0
- package/dist/skill/reference/components/color-picker/examples/controlled.tsx +37 -0
- package/dist/skill/reference/components/color-picker/examples/examples.module.css +48 -0
- package/dist/skill/reference/components/color-picker/examples/formats.tsx +26 -0
- package/dist/skill/reference/components/color-picker/examples/in-form.tsx +52 -0
- package/dist/skill/reference/components/color-picker/examples/overview.tsx +37 -0
- package/dist/skill/reference/components/color-picker/examples/panel.tsx +41 -0
- package/dist/skill/reference/components/color-picker/examples/presets-sizes.tsx +28 -0
- package/dist/skill/reference/components/color-picker/examples/presets.tsx +35 -0
- package/dist/skill/reference/components/color-picker/examples/sizes.tsx +26 -0
- package/dist/skill/reference/components/color-picker/examples/states.tsx +22 -0
- package/dist/skill/reference/components/color-picker/examples/validation.tsx +24 -0
- package/dist/skill/reference/components/color-swatches/COMPONENT.md +146 -0
- package/dist/skill/reference/components/color-swatches/examples/controlled.tsx +22 -0
- package/dist/skill/reference/components/color-swatches/examples/examples.module.css +19 -0
- package/dist/skill/reference/components/color-swatches/examples/in-form.tsx +41 -0
- package/dist/skill/reference/components/color-swatches/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/color-swatches/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/color-swatches/examples/states.tsx +20 -0
- package/dist/skill/reference/components/color-swatches/examples/wrapping.tsx +12 -0
- package/dist/skill/reference/components/command-menu/COMPONENT.md +225 -0
- package/dist/skill/reference/components/command-menu/examples/controlled-open.tsx +29 -0
- package/dist/skill/reference/components/command-menu/examples/controlled.tsx +42 -0
- package/dist/skill/reference/components/command-menu/examples/dismiss.tsx +39 -0
- package/dist/skill/reference/components/command-menu/examples/load-error.tsx +65 -0
- package/dist/skill/reference/components/command-menu/examples/overview.tsx +61 -0
- package/dist/skill/reference/components/command-menu/examples/server-search.tsx +91 -0
- package/dist/skill/reference/components/command-menu/examples/sizes.tsx +53 -0
- package/dist/skill/reference/components/command-menu/examples/states.tsx +48 -0
- package/dist/skill/reference/components/command-menu/examples/structure.tsx +54 -0
- package/dist/skill/reference/components/composer/COMPONENT.md +310 -0
- package/dist/skill/reference/components/composer/examples/attachments.tsx +36 -0
- package/dist/skill/reference/components/composer/examples/controlled.tsx +46 -0
- package/dist/skill/reference/components/composer/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/composer/examples/formatting.tsx +15 -0
- package/dist/skill/reference/components/composer/examples/narrow.tsx +22 -0
- package/dist/skill/reference/components/composer/examples/overview.tsx +39 -0
- package/dist/skill/reference/components/composer/examples/reply-edit.tsx +68 -0
- package/dist/skill/reference/components/composer/examples/sizes.tsx +23 -0
- package/dist/skill/reference/components/composer/examples/states.tsx +31 -0
- package/dist/skill/reference/components/composer/examples/typing.tsx +24 -0
- package/dist/skill/reference/components/composer/examples/voice.tsx +21 -0
- package/dist/skill/reference/components/confirm-dialog/COMPONENT.md +124 -0
- package/dist/skill/reference/components/confirm-dialog/examples/controlled-open.tsx +35 -0
- package/dist/skill/reference/components/confirm-dialog/examples/failure.tsx +37 -0
- package/dist/skill/reference/components/confirm-dialog/examples/overview.tsx +24 -0
- package/dist/skill/reference/components/confirm-dialog/examples/variants.tsx +44 -0
- package/dist/skill/reference/components/crossfade/COMPONENT.md +118 -0
- package/dist/skill/reference/components/crossfade/examples/examples.module.css +93 -0
- package/dist/skill/reference/components/crossfade/examples/fill.tsx +79 -0
- package/dist/skill/reference/components/crossfade/examples/overview.tsx +102 -0
- package/dist/skill/reference/components/crossfade/examples/record-switch.tsx +67 -0
- package/dist/skill/reference/components/data-table/COMPONENT.md +366 -0
- package/dist/skill/reference/components/data-table/examples/appearance.tsx +62 -0
- package/dist/skill/reference/components/data-table/examples/columns-visibility.tsx +151 -0
- package/dist/skill/reference/components/data-table/examples/content-width.tsx +65 -0
- package/dist/skill/reference/components/data-table/examples/controlled.tsx +56 -0
- package/dist/skill/reference/components/data-table/examples/detail-panel.tsx +101 -0
- package/dist/skill/reference/components/data-table/examples/examples.module.css +86 -0
- package/dist/skill/reference/components/data-table/examples/fill-height.tsx +55 -0
- package/dist/skill/reference/components/data-table/examples/groups.tsx +73 -0
- package/dist/skill/reference/components/data-table/examples/heatmap.tsx +44 -0
- package/dist/skill/reference/components/data-table/examples/infinite-scroll.tsx +53 -0
- package/dist/skill/reference/components/data-table/examples/narrow.tsx +50 -0
- package/dist/skill/reference/components/data-table/examples/nested-rows.tsx +128 -0
- package/dist/skill/reference/components/data-table/examples/numeric.tsx +41 -0
- package/dist/skill/reference/components/data-table/examples/overview.tsx +54 -0
- package/dist/skill/reference/components/data-table/examples/reorder.tsx +61 -0
- package/dist/skill/reference/components/data-table/examples/row-link.tsx +100 -0
- package/dist/skill/reference/components/data-table/examples/row-open.tsx +129 -0
- package/dist/skill/reference/components/data-table/examples/selection.tsx +60 -0
- package/dist/skill/reference/components/data-table/examples/server.tsx +181 -0
- package/dist/skill/reference/components/data-table/examples/sizes.tsx +56 -0
- package/dist/skill/reference/components/data-table/examples/states.tsx +50 -0
- package/dist/skill/reference/components/data-table/examples/sticky.tsx +54 -0
- package/dist/skill/reference/components/data-table/examples/toolbar.tsx +124 -0
- package/dist/skill/reference/components/datepicker/COMPONENT.md +228 -0
- package/dist/skill/reference/components/datepicker/examples/controlled-open.tsx +32 -0
- package/dist/skill/reference/components/datepicker/examples/controlled.tsx +39 -0
- package/dist/skill/reference/components/datepicker/examples/examples.module.css +26 -0
- package/dist/skill/reference/components/datepicker/examples/in-form.tsx +74 -0
- package/dist/skill/reference/components/datepicker/examples/inline-panel.tsx +14 -0
- package/dist/skill/reference/components/datepicker/examples/narrow.tsx +14 -0
- package/dist/skill/reference/components/datepicker/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/datepicker/examples/range-presets.tsx +22 -0
- package/dist/skill/reference/components/datepicker/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/datepicker/examples/states.tsx +20 -0
- package/dist/skill/reference/components/datepicker/examples/validation.tsx +36 -0
- package/dist/skill/reference/components/datepicker/examples/yearless.tsx +20 -0
- package/dist/skill/reference/components/description-list/COMPONENT.md +132 -0
- package/dist/skill/reference/components/description-list/examples/examples.module.css +41 -0
- package/dist/skill/reference/components/description-list/examples/narrow.tsx +20 -0
- package/dist/skill/reference/components/description-list/examples/overview.tsx +35 -0
- package/dist/skill/reference/components/description-list/examples/sizes.tsx +24 -0
- package/dist/skill/reference/components/description-list/examples/structure.tsx +29 -0
- package/dist/skill/reference/components/description-list/examples/vertical.tsx +21 -0
- package/dist/skill/reference/components/digit-input/COMPONENT.md +165 -0
- package/dist/skill/reference/components/digit-input/examples/controlled.tsx +23 -0
- package/dist/skill/reference/components/digit-input/examples/examples.module.css +25 -0
- package/dist/skill/reference/components/digit-input/examples/full-width.tsx +13 -0
- package/dist/skill/reference/components/digit-input/examples/grouped.tsx +11 -0
- package/dist/skill/reference/components/digit-input/examples/in-form.tsx +50 -0
- package/dist/skill/reference/components/digit-input/examples/on-complete.tsx +33 -0
- package/dist/skill/reference/components/digit-input/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/digit-input/examples/sizes.tsx +14 -0
- package/dist/skill/reference/components/digit-input/examples/states.tsx +11 -0
- package/dist/skill/reference/components/digit-input/examples/validation.tsx +24 -0
- package/dist/skill/reference/components/divider/COMPONENT.md +113 -0
- package/dist/skill/reference/components/divider/examples/align.tsx +14 -0
- package/dist/skill/reference/components/divider/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/divider/examples/or-separator.tsx +19 -0
- package/dist/skill/reference/components/divider/examples/overview.tsx +30 -0
- package/dist/skill/reference/components/divider/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/divider/examples/vertical.tsx +21 -0
- package/dist/skill/reference/components/divider/examples/with-icon.tsx +26 -0
- package/dist/skill/reference/components/dnd/COMPONENT.md +260 -0
- package/dist/skill/reference/components/dnd/examples/board.tsx +91 -0
- package/dist/skill/reference/components/dnd/examples/drop-zones.tsx +82 -0
- package/dist/skill/reference/components/dnd/examples/examples.module.css +112 -0
- package/dist/skill/reference/components/dnd/examples/grid.tsx +48 -0
- package/dist/skill/reference/components/dnd/examples/handle.tsx +58 -0
- package/dist/skill/reference/components/dnd/examples/locked.tsx +57 -0
- package/dist/skill/reference/components/dnd/examples/narrow.tsx +42 -0
- package/dist/skill/reference/components/dnd/examples/overview.tsx +45 -0
- package/dist/skill/reference/components/drawer/COMPONENT.md +229 -0
- package/dist/skill/reference/components/drawer/examples/controlled-open.tsx +40 -0
- package/dist/skill/reference/components/drawer/examples/dismiss.tsx +55 -0
- package/dist/skill/reference/components/drawer/examples/examples.module.css +21 -0
- package/dist/skill/reference/components/drawer/examples/guard.tsx +80 -0
- package/dist/skill/reference/components/drawer/examples/header-actions.tsx +63 -0
- package/dist/skill/reference/components/drawer/examples/in-form.tsx +87 -0
- package/dist/skill/reference/components/drawer/examples/long-content.tsx +40 -0
- package/dist/skill/reference/components/drawer/examples/overview.tsx +56 -0
- package/dist/skill/reference/components/drawer/examples/placement.tsx +40 -0
- package/dist/skill/reference/components/drawer/examples/sizes.tsx +43 -0
- package/dist/skill/reference/components/drawer/examples/structure.tsx +35 -0
- package/dist/skill/reference/components/dropdown/COMPONENT.md +235 -0
- package/dist/skill/reference/components/dropdown/examples/checkbox-items.tsx +48 -0
- package/dist/skill/reference/components/dropdown/examples/controlled-open.tsx +32 -0
- package/dist/skill/reference/components/dropdown/examples/dismiss.tsx +17 -0
- package/dist/skill/reference/components/dropdown/examples/examples.module.css +22 -0
- package/dist/skill/reference/components/dropdown/examples/item-description.tsx +30 -0
- package/dist/skill/reference/components/dropdown/examples/link-items.tsx +29 -0
- package/dist/skill/reference/components/dropdown/examples/long-list.tsx +42 -0
- package/dist/skill/reference/components/dropdown/examples/match-trigger-width.tsx +23 -0
- package/dist/skill/reference/components/dropdown/examples/overview.tsx +41 -0
- package/dist/skill/reference/components/dropdown/examples/placement.tsx +33 -0
- package/dist/skill/reference/components/dropdown/examples/sizes.tsx +43 -0
- package/dist/skill/reference/components/dropdown/examples/states.tsx +35 -0
- package/dist/skill/reference/components/dropdown/examples/structure.tsx +56 -0
- package/dist/skill/reference/components/empty-page/COMPONENT.md +167 -0
- package/dist/skill/reference/components/empty-page/examples/compact.tsx +23 -0
- package/dist/skill/reference/components/empty-page/examples/data-region.tsx +32 -0
- package/dist/skill/reference/components/empty-page/examples/examples.module.css +54 -0
- package/dist/skill/reference/components/empty-page/examples/narrow.tsx +26 -0
- package/dist/skill/reference/components/empty-page/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/empty-page/examples/region-error.tsx +86 -0
- package/dist/skill/reference/components/empty-page/examples/sizes.tsx +25 -0
- package/{src/components/empty-page/examples/icon-tones.tsx → dist/skill/reference/components/empty-page/examples/variants.tsx} +10 -9
- package/dist/skill/reference/components/example-frame/COMPONENT.md +140 -0
- package/dist/skill/reference/components/example-frame/examples/controlled.tsx +42 -0
- package/dist/skill/reference/components/example-frame/examples/overview.tsx +16 -0
- package/dist/skill/reference/components/fieldset/COMPONENT.md +107 -0
- package/dist/skill/reference/components/fieldset/examples/examples.module.css +14 -0
- package/dist/skill/reference/components/fieldset/examples/in-form.tsx +59 -0
- package/dist/skill/reference/components/fieldset/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/fieldset/examples/states.tsx +35 -0
- package/dist/skill/reference/components/file-upload/COMPONENT.md +407 -0
- package/dist/skill/reference/components/file-upload/examples/attachment-tray.tsx +99 -0
- package/dist/skill/reference/components/file-upload/examples/avatar-upload.tsx +56 -0
- package/dist/skill/reference/components/file-upload/examples/controlled.tsx +77 -0
- package/dist/skill/reference/components/file-upload/examples/custom-body.tsx +44 -0
- package/dist/skill/reference/components/file-upload/examples/examples.module.css +122 -0
- package/dist/skill/reference/components/file-upload/examples/file-cards.tsx +64 -0
- package/dist/skill/reference/components/file-upload/examples/gallery.tsx +104 -0
- package/dist/skill/reference/components/file-upload/examples/in-form.tsx +79 -0
- package/dist/skill/reference/components/file-upload/examples/narrow.tsx +73 -0
- package/dist/skill/reference/components/file-upload/examples/overview.tsx +49 -0
- package/dist/skill/reference/components/file-upload/examples/row-parts.tsx +41 -0
- package/dist/skill/reference/components/file-upload/examples/saving.tsx +71 -0
- package/dist/skill/reference/components/file-upload/examples/sizes.tsx +26 -0
- package/dist/skill/reference/components/file-upload/examples/states.tsx +23 -0
- package/dist/skill/reference/components/file-upload/examples/validation.tsx +42 -0
- package/dist/skill/reference/components/file-upload/examples/variants.tsx +32 -0
- package/dist/skill/reference/components/gallery/COMPONENT.md +151 -0
- package/dist/skill/reference/components/gallery/examples/controlled-open.tsx +39 -0
- package/dist/skill/reference/components/gallery/examples/examples.module.css +14 -0
- package/dist/skill/reference/components/gallery/examples/overview.tsx +52 -0
- package/dist/skill/reference/components/gallery/examples/transfer.tsx +45 -0
- package/dist/skill/reference/components/gantt/COMPONENT.md +224 -0
- package/dist/skill/reference/components/gantt/examples/controlled.tsx +72 -0
- package/dist/skill/reference/components/gantt/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/gantt/examples/large.tsx +96 -0
- package/dist/skill/reference/components/gantt/examples/narrow.tsx +54 -0
- package/dist/skill/reference/components/gantt/examples/occupancy.tsx +149 -0
- package/dist/skill/reference/components/gantt/examples/overview.tsx +82 -0
- package/dist/skill/reference/components/gantt/examples/sizes.tsx +48 -0
- package/dist/skill/reference/components/gantt/examples/states.tsx +68 -0
- package/dist/skill/reference/components/gantt/examples/variants.tsx +82 -0
- package/dist/skill/reference/components/hint/COMPONENT.md +113 -0
- package/dist/skill/reference/components/hint/examples/examples.module.css +14 -0
- package/dist/skill/reference/components/hint/examples/hint-or-error.tsx +27 -0
- package/dist/skill/reference/components/hint/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/hint/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/hint/examples/states.tsx +27 -0
- package/dist/skill/reference/components/hint/examples/with-icon.tsx +31 -0
- package/dist/skill/reference/components/input/COMPONENT.md +297 -0
- package/dist/skill/reference/components/input/examples/affixes.tsx +22 -0
- package/dist/skill/reference/components/input/examples/controlled.tsx +39 -0
- package/dist/skill/reference/components/input/examples/edge-actions.tsx +30 -0
- package/dist/skill/reference/components/input/examples/examples.module.css +38 -0
- package/dist/skill/reference/components/input/examples/in-form.tsx +107 -0
- package/dist/skill/reference/components/input/examples/inline-edit.tsx +52 -0
- package/dist/skill/reference/components/input/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/input/examples/password-strength.tsx +13 -0
- package/dist/skill/reference/components/input/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/input/examples/states.tsx +27 -0
- package/dist/skill/reference/components/input/examples/validation.tsx +60 -0
- package/dist/skill/reference/components/input/examples/with-icon.tsx +25 -0
- package/dist/skill/reference/components/input/examples/without-focus-ring.tsx +25 -0
- package/dist/skill/reference/components/kanban/COMPONENT.md +239 -0
- package/dist/skill/reference/components/kanban/examples/cards.tsx +152 -0
- package/dist/skill/reference/components/kanban/examples/columns.tsx +182 -0
- package/dist/skill/reference/components/kanban/examples/controlled.tsx +78 -0
- package/dist/skill/reference/components/kanban/examples/examples.module.css +37 -0
- package/dist/skill/reference/components/kanban/examples/limits.tsx +60 -0
- package/dist/skill/reference/components/kanban/examples/narrow.tsx +76 -0
- package/dist/skill/reference/components/kanban/examples/overview.tsx +130 -0
- package/dist/skill/reference/components/kanban/examples/saving.tsx +83 -0
- package/dist/skill/reference/components/kanban/examples/states.tsx +75 -0
- package/dist/skill/reference/components/kanban/examples/structure.tsx +76 -0
- package/dist/skill/reference/components/kanban/examples/variants.tsx +57 -0
- package/dist/skill/reference/components/kbd/COMPONENT.md +99 -0
- package/dist/skill/reference/components/kbd/examples/examples.module.css +37 -0
- package/dist/skill/reference/components/kbd/examples/in-controls.tsx +34 -0
- package/dist/skill/reference/components/kbd/examples/overview.tsx +24 -0
- package/dist/skill/reference/components/kbd/examples/shortcut-list.tsx +49 -0
- package/dist/skill/reference/components/kbd/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/label/COMPONENT.md +126 -0
- package/dist/skill/reference/components/label/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/label/examples/overview.tsx +20 -0
- package/dist/skill/reference/components/label/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/label/examples/states.tsx +23 -0
- package/dist/skill/reference/components/label/examples/structure.tsx +32 -0
- package/dist/skill/reference/components/label/examples/with-icon.tsx +31 -0
- package/dist/skill/reference/components/link-button/COMPONENT.md +128 -0
- package/dist/skill/reference/components/link-button/examples/as-child.tsx +18 -0
- package/dist/skill/reference/components/link-button/examples/external-link.tsx +14 -0
- package/dist/skill/reference/components/link-button/examples/overview.tsx +11 -0
- package/dist/skill/reference/components/link-button/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/link-button/examples/states.tsx +31 -0
- package/dist/skill/reference/components/link-button/examples/variants.tsx +21 -0
- package/dist/skill/reference/components/link-button/examples/with-icon.tsx +27 -0
- package/dist/skill/reference/components/login-form/COMPONENT.md +163 -0
- package/dist/skill/reference/components/login-form/examples/examples.module.css +39 -0
- package/dist/skill/reference/components/login-form/examples/forgot-password.tsx +39 -0
- package/dist/skill/reference/components/login-form/examples/narrow.tsx +32 -0
- package/dist/skill/reference/components/login-form/examples/overview.tsx +58 -0
- package/dist/skill/reference/components/login-form/examples/register.tsx +80 -0
- package/dist/skill/reference/components/login-form/examples/reset-password.tsx +60 -0
- package/dist/skill/reference/components/login-form/examples/sizes.tsx +38 -0
- package/dist/skill/reference/components/login-form/examples/states.tsx +71 -0
- package/dist/skill/reference/components/login-form/examples/structure.tsx +28 -0
- package/dist/skill/reference/components/login-form/examples/verification-code.tsx +57 -0
- package/dist/skill/reference/components/media-viewer/COMPONENT.md +207 -0
- package/dist/skill/reference/components/media-viewer/examples/actions.tsx +86 -0
- package/dist/skill/reference/components/media-viewer/examples/controlled-open.tsx +30 -0
- package/dist/skill/reference/components/media-viewer/examples/controlled.tsx +54 -0
- package/dist/skill/reference/components/media-viewer/examples/dismiss.tsx +34 -0
- package/dist/skill/reference/components/media-viewer/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/media-viewer/examples/origin.tsx +60 -0
- package/dist/skill/reference/components/media-viewer/examples/overview.tsx +75 -0
- package/dist/skill/reference/components/media-viewer/examples/thumbnails.tsx +49 -0
- package/dist/skill/reference/components/media-viewer/examples/video.tsx +55 -0
- package/dist/skill/reference/components/message/COMPONENT.md +444 -0
- package/dist/skill/reference/components/message/examples/author.tsx +74 -0
- package/dist/skill/reference/components/message/examples/contact.tsx +24 -0
- package/dist/skill/reference/components/message/examples/context-menu.tsx +71 -0
- package/dist/skill/reference/components/message/examples/examples.module.css +18 -0
- package/dist/skill/reference/components/message/examples/file.tsx +79 -0
- package/dist/skill/reference/components/message/examples/kinds.tsx +93 -0
- package/dist/skill/reference/components/message/examples/link-preview.tsx +17 -0
- package/dist/skill/reference/components/message/examples/location.tsx +30 -0
- package/dist/skill/reference/components/message/examples/media.tsx +93 -0
- package/dist/skill/reference/components/message/examples/narrow.tsx +29 -0
- package/dist/skill/reference/components/message/examples/overview.tsx +52 -0
- package/dist/skill/reference/components/message/examples/reactions.tsx +73 -0
- package/dist/skill/reference/components/message/examples/status.tsx +45 -0
- package/dist/skill/reference/components/message/examples/structure.tsx +32 -0
- package/dist/skill/reference/components/message/examples/text-formatting.tsx +27 -0
- package/dist/skill/reference/components/message/examples/typing.tsx +22 -0
- package/dist/skill/reference/components/message/examples/voice.tsx +39 -0
- package/dist/skill/reference/components/modal/COMPONENT.md +247 -0
- package/dist/skill/reference/components/modal/examples/controlled-open.tsx +33 -0
- package/dist/skill/reference/components/modal/examples/custom-container.tsx +29 -0
- package/dist/skill/reference/components/modal/examples/dismiss.tsx +54 -0
- package/dist/skill/reference/components/modal/examples/examples.module.css +21 -0
- package/dist/skill/reference/components/modal/examples/guard.tsx +87 -0
- package/dist/skill/reference/components/modal/examples/in-form.tsx +83 -0
- package/dist/skill/reference/components/modal/examples/long-content.tsx +52 -0
- package/dist/skill/reference/components/modal/examples/overview.tsx +35 -0
- package/dist/skill/reference/components/modal/examples/sizes.tsx +48 -0
- package/dist/skill/reference/components/modal/examples/structure.tsx +53 -0
- package/dist/skill/reference/components/native-select/COMPONENT.md +132 -0
- package/dist/skill/reference/components/native-select/examples/controlled.tsx +26 -0
- package/dist/skill/reference/components/native-select/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/native-select/examples/in-form.tsx +58 -0
- package/dist/skill/reference/components/native-select/examples/option-groups.tsx +17 -0
- package/dist/skill/reference/components/native-select/examples/overview.tsx +16 -0
- package/dist/skill/reference/components/native-select/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/native-select/examples/states.tsx +21 -0
- package/dist/skill/reference/components/native-select/examples/validation.tsx +31 -0
- package/dist/skill/reference/components/notification/COMPONENT.md +193 -0
- package/dist/skill/reference/components/notification/examples/dismiss.tsx +50 -0
- package/dist/skill/reference/components/notification/examples/examples.module.css +52 -0
- package/dist/skill/reference/components/notification/examples/in-form.tsx +64 -0
- package/dist/skill/reference/components/notification/examples/overview.tsx +24 -0
- package/dist/skill/reference/components/notification/examples/placement.tsx +66 -0
- package/dist/skill/reference/components/notification/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/notification/examples/stacking.tsx +45 -0
- package/dist/skill/reference/components/notification/examples/structure.tsx +20 -0
- package/dist/skill/reference/components/notification/examples/tones.tsx +25 -0
- package/dist/skill/reference/components/notification/examples/undo.tsx +61 -0
- package/dist/skill/reference/components/page-content/COMPONENT.md +215 -0
- package/dist/skill/reference/components/page-content/examples/examples.module.css +76 -0
- package/dist/skill/reference/components/page-content/examples/list-detail.tsx +114 -0
- package/dist/skill/reference/components/page-content/examples/narrow.tsx +25 -0
- package/dist/skill/reference/components/page-content/examples/overview.tsx +41 -0
- package/dist/skill/reference/components/page-content/examples/variants.tsx +39 -0
- package/dist/skill/reference/components/page-toolbar/COMPONENT.md +141 -0
- package/dist/skill/reference/components/page-toolbar/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/page-toolbar/examples/narrow.tsx +103 -0
- package/dist/skill/reference/components/page-toolbar/examples/overview.tsx +113 -0
- package/dist/skill/reference/components/page-toolbar/examples/save-changes.tsx +40 -0
- package/dist/skill/reference/components/page-toolbar/examples/without-search.tsx +60 -0
- package/dist/skill/reference/components/pagination/COMPONENT.md +132 -0
- package/dist/skill/reference/components/pagination/examples/controlled.tsx +51 -0
- package/dist/skill/reference/components/pagination/examples/examples.module.css +24 -0
- package/dist/skill/reference/components/pagination/examples/narrow.tsx +25 -0
- package/dist/skill/reference/components/pagination/examples/overflow.tsx +23 -0
- package/dist/skill/reference/components/pagination/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/pagination/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/popover/COMPONENT.md +183 -0
- package/dist/skill/reference/components/popover/examples/controlled-open.tsx +32 -0
- package/dist/skill/reference/components/popover/examples/dismiss.tsx +49 -0
- package/dist/skill/reference/components/popover/examples/examples.module.css +49 -0
- package/dist/skill/reference/components/popover/examples/flush.tsx +47 -0
- package/dist/skill/reference/components/popover/examples/from-menu.tsx +56 -0
- package/dist/skill/reference/components/popover/examples/in-form.tsx +76 -0
- package/dist/skill/reference/components/popover/examples/match-trigger-width.tsx +23 -0
- package/dist/skill/reference/components/popover/examples/overview.tsx +43 -0
- package/dist/skill/reference/components/popover/examples/placement.tsx +34 -0
- package/dist/skill/reference/components/popover/examples/sizes.tsx +36 -0
- package/dist/skill/reference/components/popover/examples/structure.tsx +50 -0
- package/dist/skill/reference/components/progress-bar/COMPONENT.md +199 -0
- package/dist/skill/reference/components/progress-bar/examples/custom-max.tsx +12 -0
- package/dist/skill/reference/components/progress-bar/examples/examples.module.css +17 -0
- package/dist/skill/reference/components/progress-bar/examples/legend.tsx +28 -0
- package/dist/skill/reference/components/progress-bar/examples/milestone.tsx +43 -0
- package/dist/skill/reference/components/progress-bar/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/progress-bar/examples/ranking.tsx +28 -0
- package/dist/skill/reference/components/progress-bar/examples/segments.tsx +32 -0
- package/dist/skill/reference/components/progress-bar/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/progress-bar/examples/states.tsx +43 -0
- package/dist/skill/reference/components/progress-bar/examples/steps.tsx +35 -0
- package/dist/skill/reference/components/progress-bar/examples/variants.tsx +34 -0
- package/dist/skill/reference/components/progress-circle/COMPONENT.md +189 -0
- package/dist/skill/reference/components/progress-circle/examples/examples.module.css +22 -0
- package/dist/skill/reference/components/progress-circle/examples/inner-content.tsx +35 -0
- package/dist/skill/reference/components/progress-circle/examples/legend.tsx +33 -0
- package/dist/skill/reference/components/progress-circle/examples/overview.tsx +10 -0
- package/dist/skill/reference/components/progress-circle/examples/segments.tsx +64 -0
- package/dist/skill/reference/components/progress-circle/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/progress-circle/examples/states.tsx +25 -0
- package/dist/skill/reference/components/progress-circle/examples/under-way.tsx +54 -0
- package/dist/skill/reference/components/progress-circle/examples/variants.tsx +28 -0
- package/dist/skill/reference/components/radio/COMPONENT.md +165 -0
- package/dist/skill/reference/components/radio/examples/controlled.tsx +30 -0
- package/dist/skill/reference/components/radio/examples/group.tsx +23 -0
- package/dist/skill/reference/components/radio/examples/orientation.tsx +34 -0
- package/dist/skill/reference/components/radio/examples/overview.tsx +18 -0
- package/dist/skill/reference/components/radio/examples/sizes.tsx +20 -0
- package/dist/skill/reference/components/radio/examples/states.tsx +48 -0
- package/dist/skill/reference/components/scroll-container/COMPONENT.md +179 -0
- package/dist/skill/reference/components/scroll-container/examples/auto-scroll.tsx +52 -0
- package/dist/skill/reference/components/scroll-container/examples/chat.tsx +101 -0
- package/dist/skill/reference/components/scroll-container/examples/edges.tsx +43 -0
- package/dist/skill/reference/components/scroll-container/examples/examples.module.css +139 -0
- package/dist/skill/reference/components/scroll-container/examples/lock.tsx +49 -0
- package/dist/skill/reference/components/scroll-container/examples/overscroll.tsx +27 -0
- package/dist/skill/reference/components/scroll-container/examples/overview.tsx +27 -0
- package/dist/skill/reference/components/scroll-container/examples/scrollbar.tsx +52 -0
- package/dist/skill/reference/components/scroll-container/examples/snap.tsx +36 -0
- package/dist/skill/reference/components/scroll-container/examples/variants.tsx +54 -0
- package/dist/skill/reference/components/segmented-control/COMPONENT.md +214 -0
- package/dist/skill/reference/components/segmented-control/examples/colors.tsx +18 -0
- package/dist/skill/reference/components/segmented-control/examples/controlled.tsx +28 -0
- package/dist/skill/reference/components/segmented-control/examples/examples.module.css +20 -0
- package/dist/skill/reference/components/segmented-control/examples/full-width.tsx +12 -0
- package/dist/skill/reference/components/segmented-control/examples/in-form.tsx +42 -0
- package/dist/skill/reference/components/segmented-control/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/segmented-control/examples/scroll.tsx +16 -0
- package/dist/skill/reference/components/segmented-control/examples/sizes.tsx +22 -0
- package/dist/skill/reference/components/segmented-control/examples/states.tsx +47 -0
- package/dist/skill/reference/components/segmented-control/examples/two-line.tsx +28 -0
- package/dist/skill/reference/components/segmented-control/examples/with-icon.tsx +52 -0
- package/dist/skill/reference/components/select/COMPONENT.md +300 -0
- package/dist/skill/reference/components/select/examples/clearable.tsx +23 -0
- package/dist/skill/reference/components/select/examples/controlled-open.tsx +30 -0
- package/dist/skill/reference/components/select/examples/controlled.tsx +34 -0
- package/dist/skill/reference/components/select/examples/examples.module.css +35 -0
- package/dist/skill/reference/components/select/examples/in-form.tsx +88 -0
- package/dist/skill/reference/components/select/examples/load-error.tsx +45 -0
- package/dist/skill/reference/components/select/examples/multiple.tsx +26 -0
- package/dist/skill/reference/components/select/examples/overview.tsx +17 -0
- package/dist/skill/reference/components/select/examples/people.tsx +53 -0
- package/dist/skill/reference/components/select/examples/rich-options.tsx +72 -0
- package/dist/skill/reference/components/select/examples/searchable.tsx +42 -0
- package/dist/skill/reference/components/select/examples/server-search.tsx +93 -0
- package/dist/skill/reference/components/select/examples/sizes.tsx +23 -0
- package/dist/skill/reference/components/select/examples/states.tsx +67 -0
- package/dist/skill/reference/components/select/examples/validation.tsx +46 -0
- package/dist/skill/reference/components/select/examples/with-icon.tsx +35 -0
- package/dist/skill/reference/components/sheet/COMPONENT.md +216 -0
- package/dist/skill/reference/components/sheet/examples/controlled-open.tsx +37 -0
- package/dist/skill/reference/components/sheet/examples/dismiss.tsx +42 -0
- package/dist/skill/reference/components/sheet/examples/examples.module.css +13 -0
- package/dist/skill/reference/components/sheet/examples/in-form.tsx +65 -0
- package/dist/skill/reference/components/sheet/examples/overview.tsx +50 -0
- package/{src/components/drawer/examples/date-sheet.tsx → dist/skill/reference/components/sheet/examples/structure.tsx} +11 -17
- package/dist/skill/reference/components/skeleton/COMPONENT.md +104 -0
- package/dist/skill/reference/components/skeleton/examples/examples.module.css +89 -0
- package/dist/skill/reference/components/skeleton/examples/form.tsx +20 -0
- package/dist/skill/reference/components/skeleton/examples/overview.tsx +21 -0
- package/dist/skill/reference/components/skeleton/examples/sizes.tsx +24 -0
- package/dist/skill/reference/components/skeleton/examples/with-crossfade.tsx +68 -0
- package/dist/skill/reference/components/slider/COMPONENT.md +186 -0
- package/dist/skill/reference/components/slider/examples/autosave.tsx +39 -0
- package/dist/skill/reference/components/slider/examples/controlled.tsx +39 -0
- package/dist/skill/reference/components/slider/examples/examples.module.css +24 -0
- package/dist/skill/reference/components/slider/examples/hint-and-error.tsx +33 -0
- package/dist/skill/reference/components/slider/examples/orientation.tsx +27 -0
- package/dist/skill/reference/components/slider/examples/overview.tsx +6 -0
- package/dist/skill/reference/components/slider/examples/range-step.tsx +19 -0
- package/dist/skill/reference/components/slider/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/slider/examples/states.tsx +18 -0
- package/dist/skill/reference/components/slider/examples/value-format.tsx +32 -0
- package/dist/skill/reference/components/slider/examples/variants.tsx +23 -0
- package/dist/skill/reference/components/smart-filter/COMPONENT.md +235 -0
- package/dist/skill/reference/components/smart-filter/examples/controlled.tsx +48 -0
- package/dist/skill/reference/components/smart-filter/examples/examples.module.css +56 -0
- package/dist/skill/reference/components/smart-filter/examples/many-values.tsx +53 -0
- package/dist/skill/reference/components/smart-filter/examples/narrow.tsx +38 -0
- package/dist/skill/reference/components/smart-filter/examples/option-groups.tsx +40 -0
- package/dist/skill/reference/components/smart-filter/examples/overview.tsx +109 -0
- package/dist/skill/reference/components/smart-filter/examples/ranges.tsx +89 -0
- package/dist/skill/reference/components/smart-filter/examples/single-value.tsx +41 -0
- package/dist/skill/reference/components/smart-filter/examples/sizes.tsx +33 -0
- package/dist/skill/reference/components/sparkline/COMPONENT.md +127 -0
- package/dist/skill/reference/components/sparkline/examples/examples.module.css +13 -0
- package/dist/skill/reference/components/sparkline/examples/overview.tsx +27 -0
- package/dist/skill/reference/components/sparkline/examples/period.tsx +46 -0
- package/dist/skill/reference/components/sparkline/examples/signed-bars.tsx +41 -0
- package/dist/skill/reference/components/sparkline/examples/states.tsx +30 -0
- package/dist/skill/reference/components/sparkline/examples/variants.tsx +29 -0
- package/dist/skill/reference/components/spinner/COMPONENT.md +114 -0
- package/dist/skill/reference/components/spinner/examples/examples.module.css +20 -0
- package/dist/skill/reference/components/spinner/examples/loading-region.tsx +22 -0
- package/dist/skill/reference/components/spinner/examples/overview.tsx +15 -0
- package/dist/skill/reference/components/spinner/examples/sizes.tsx +19 -0
- package/dist/skill/reference/components/spinner/examples/variants.tsx +19 -0
- package/dist/skill/reference/components/stepper/COMPONENT.md +176 -0
- package/dist/skill/reference/components/stepper/examples/controlled.tsx +46 -0
- package/dist/skill/reference/components/stepper/examples/examples.module.css +24 -0
- package/dist/skill/reference/components/stepper/examples/narrow.tsx +23 -0
- package/dist/skill/reference/components/stepper/examples/orientation.tsx +35 -0
- package/dist/skill/reference/components/stepper/examples/overview.tsx +28 -0
- package/dist/skill/reference/components/stepper/examples/sizes.tsx +31 -0
- package/dist/skill/reference/components/stepper/examples/states.tsx +49 -0
- package/dist/skill/reference/components/stepper/examples/with-icon.tsx +29 -0
- package/dist/skill/reference/components/switch/COMPONENT.md +147 -0
- package/dist/skill/reference/components/switch/examples/controlled.tsx +17 -0
- package/dist/skill/reference/components/switch/examples/examples.module.css +30 -0
- package/dist/skill/reference/components/switch/examples/in-form.tsx +36 -0
- package/dist/skill/reference/components/switch/examples/overview.tsx +10 -0
- package/dist/skill/reference/components/switch/examples/saving.tsx +53 -0
- package/dist/skill/reference/components/switch/examples/settings-row.tsx +24 -0
- package/dist/skill/reference/components/switch/examples/sizes.tsx +18 -0
- package/dist/skill/reference/components/switch/examples/states.tsx +48 -0
- package/dist/skill/reference/components/tabs/COMPONENT.md +276 -0
- package/dist/skill/reference/components/tabs/examples/closable.tsx +48 -0
- package/dist/skill/reference/components/tabs/examples/controlled.tsx +33 -0
- package/dist/skill/reference/components/tabs/examples/examples.module.css +38 -0
- package/dist/skill/reference/components/tabs/examples/in-drawer.tsx +100 -0
- package/dist/skill/reference/components/tabs/examples/orientation.tsx +94 -0
- package/dist/skill/reference/components/tabs/examples/overflow.tsx +60 -0
- package/dist/skill/reference/components/tabs/examples/overview.tsx +30 -0
- package/dist/skill/reference/components/tabs/examples/sizes.tsx +30 -0
- package/dist/skill/reference/components/tabs/examples/states.tsx +26 -0
- package/dist/skill/reference/components/tabs/examples/two-line.tsx +56 -0
- package/dist/skill/reference/components/tabs/examples/variants.tsx +40 -0
- package/dist/skill/reference/components/tabs/examples/with-icon.tsx +44 -0
- package/dist/skill/reference/components/tag-select/COMPONENT.md +179 -0
- package/dist/skill/reference/components/tag-select/examples/confirm-delete.tsx +60 -0
- package/dist/skill/reference/components/tag-select/examples/controlled-open.tsx +29 -0
- package/dist/skill/reference/components/tag-select/examples/controlled.tsx +26 -0
- package/dist/skill/reference/components/tag-select/examples/creatable.tsx +49 -0
- package/dist/skill/reference/components/tag-select/examples/examples.module.css +16 -0
- package/dist/skill/reference/components/tag-select/examples/in-form.tsx +85 -0
- package/dist/skill/reference/components/tag-select/examples/manage-tags.tsx +38 -0
- package/dist/skill/reference/components/tag-select/examples/many-tags.tsx +20 -0
- package/dist/skill/reference/components/tag-select/examples/overview.tsx +21 -0
- package/dist/skill/reference/components/tag-select/examples/sizes.tsx +27 -0
- package/dist/skill/reference/components/tag-select/examples/states.tsx +24 -0
- package/dist/skill/reference/components/tag-select/examples/validation.tsx +40 -0
- package/dist/skill/reference/components/textarea/COMPONENT.md +206 -0
- package/dist/skill/reference/components/textarea/examples/auto-resize.tsx +28 -0
- package/dist/skill/reference/components/textarea/examples/controlled.tsx +21 -0
- package/dist/skill/reference/components/textarea/examples/edge-actions.tsx +24 -0
- package/dist/skill/reference/components/textarea/examples/examples.module.css +27 -0
- package/dist/skill/reference/components/textarea/examples/in-form.tsx +76 -0
- package/dist/skill/reference/components/textarea/examples/inline-edit.tsx +42 -0
- package/dist/skill/reference/components/textarea/examples/overview.tsx +12 -0
- package/dist/skill/reference/components/textarea/examples/sizes.tsx +20 -0
- package/dist/skill/reference/components/textarea/examples/states.tsx +21 -0
- package/dist/skill/reference/components/textarea/examples/validation.tsx +50 -0
- package/dist/skill/reference/components/textarea/examples/without-focus-ring.tsx +12 -0
- package/dist/skill/reference/components/thumbnail/COMPONENT.md +191 -0
- package/dist/skill/reference/components/thumbnail/examples/controlled.tsx +61 -0
- package/dist/skill/reference/components/thumbnail/examples/examples.module.css +76 -0
- package/dist/skill/reference/components/thumbnail/examples/full-width.tsx +45 -0
- package/dist/skill/reference/components/thumbnail/examples/overview.tsx +27 -0
- package/dist/skill/reference/components/thumbnail/examples/pressable.tsx +56 -0
- package/dist/skill/reference/components/thumbnail/examples/ratios.tsx +25 -0
- package/dist/skill/reference/components/thumbnail/examples/ring.tsx +29 -0
- package/dist/skill/reference/components/thumbnail/examples/sizes.tsx +23 -0
- package/dist/skill/reference/components/thumbnail/examples/states.tsx +38 -0
- package/dist/skill/reference/components/thumbnail/examples/variants.tsx +28 -0
- package/dist/skill/reference/components/thumbnail/examples/video.tsx +46 -0
- package/dist/skill/reference/components/timeline/COMPONENT.md +181 -0
- package/dist/skill/reference/components/timeline/examples/examples.module.css +25 -0
- package/dist/skill/reference/components/timeline/examples/links.tsx +28 -0
- package/dist/skill/reference/components/timeline/examples/narrow.tsx +41 -0
- package/dist/skill/reference/components/timeline/examples/overview.tsx +47 -0
- package/dist/skill/reference/components/timeline/examples/sizes.tsx +33 -0
- package/dist/skill/reference/components/timeline/examples/structure.tsx +56 -0
- package/dist/skill/reference/components/timeline/examples/variants.tsx +56 -0
- package/dist/skill/reference/components/tooltip/COMPONENT.md +167 -0
- package/dist/skill/reference/components/tooltip/examples/controlled-open.tsx +23 -0
- package/dist/skill/reference/components/tooltip/examples/delay.tsx +25 -0
- package/dist/skill/reference/components/tooltip/examples/disabled-trigger.tsx +13 -0
- package/dist/skill/reference/components/tooltip/examples/examples.module.css +20 -0
- package/dist/skill/reference/components/tooltip/examples/long-content.tsx +18 -0
- package/dist/skill/reference/components/tooltip/examples/non-interactive-trigger.tsx +31 -0
- package/dist/skill/reference/components/tooltip/examples/overview.tsx +17 -0
- package/dist/skill/reference/components/tooltip/examples/placement.tsx +30 -0
- package/dist/skill/reference/components/tooltip/examples/sizes.tsx +21 -0
- package/dist/skill/reference/components/tooltip/examples/toolbar.tsx +35 -0
- package/dist/skill/reference/components/typography/COMPONENT.md +126 -0
- package/dist/skill/reference/components/typography/examples/article.tsx +36 -0
- package/dist/skill/reference/components/typography/examples/examples.module.css +41 -0
- package/dist/skill/reference/components/typography/examples/inline-emphasis.tsx +20 -0
- package/dist/skill/reference/components/typography/examples/overview.tsx +20 -0
- package/dist/skill/reference/components/typography/examples/semantic-tag.tsx +17 -0
- package/dist/skill/reference/components/typography/examples/truncate.tsx +19 -0
- package/dist/skill/reference/components/typography/examples/variants.tsx +50 -0
- package/dist/skill/reference/components/typography/examples/weights.tsx +31 -0
- package/dist/skill/reference/components/video-note/COMPONENT.md +173 -0
- package/dist/skill/reference/components/video-note/examples/controlled.tsx +28 -0
- package/dist/skill/reference/components/video-note/examples/examples.module.css +4 -0
- package/dist/skill/reference/components/video-note/examples/in-message.tsx +22 -0
- package/dist/skill/reference/components/video-note/examples/overview.tsx +8 -0
- package/dist/skill/reference/components/video-note/examples/states.tsx +74 -0
- package/dist/skill/reference/components/video-note/examples/transcript.tsx +29 -0
- package/dist/skill/reference/components/video-note/examples/transfer.tsx +76 -0
- package/dist/skill/reference/components/visually-hidden/COMPONENT.md +81 -0
- package/dist/skill/reference/components/visually-hidden/examples/overview.tsx +22 -0
- package/dist/skill/reference/components/voice-player/COMPONENT.md +192 -0
- package/dist/skill/reference/components/voice-player/examples/call-recording.tsx +34 -0
- package/dist/skill/reference/components/voice-player/examples/controlled.tsx +38 -0
- package/dist/skill/reference/components/voice-player/examples/examples.module.css +23 -0
- package/dist/skill/reference/components/voice-player/examples/in-message.tsx +29 -0
- package/dist/skill/reference/components/voice-player/examples/overview.tsx +13 -0
- package/dist/skill/reference/components/voice-player/examples/states.tsx +81 -0
- package/dist/skill/reference/components/voice-player/examples/transcript.tsx +50 -0
- package/dist/skill/reference/components/voice-player/examples/transfer.tsx +88 -0
- package/dist/skill/reference/icon-set.ts +530 -0
- package/dist/skill/reference/layout/app-header/COMPONENT.md +203 -0
- package/dist/skill/reference/layout/app-header/examples/breadcrumbs.tsx +36 -0
- package/dist/skill/reference/layout/app-header/examples/examples.module.css +47 -0
- package/dist/skill/reference/layout/app-header/examples/in-app-shell.tsx +70 -0
- package/dist/skill/reference/layout/app-header/examples/narrow.tsx +29 -0
- package/dist/skill/reference/layout/app-header/examples/overview.tsx +36 -0
- package/dist/skill/reference/layout/app-header/examples/page-title.tsx +85 -0
- package/dist/skill/reference/layout/app-shell/COMPONENT.md +156 -0
- package/dist/skill/reference/layout/app-shell/examples/contained.tsx +30 -0
- package/dist/skill/reference/layout/app-shell/examples/examples.module.css +44 -0
- package/dist/skill/reference/layout/app-shell/examples/footer.tsx +59 -0
- package/dist/skill/reference/layout/app-shell/examples/overview.tsx +83 -0
- package/dist/skill/reference/layout/app-shell/examples/template.tsx +54 -0
- package/dist/skill/reference/layout/bottom-nav/COMPONENT.md +169 -0
- package/dist/skill/reference/layout/bottom-nav/examples/examples.module.css +46 -0
- package/dist/skill/reference/layout/bottom-nav/examples/floating-action.tsx +91 -0
- package/dist/skill/reference/layout/bottom-nav/examples/floating.tsx +89 -0
- package/dist/skill/reference/layout/bottom-nav/examples/icon-only.tsx +41 -0
- package/dist/skill/reference/layout/bottom-nav/examples/in-app-shell.tsx +64 -0
- package/dist/skill/reference/layout/bottom-nav/examples/overview.tsx +44 -0
- package/dist/skill/reference/layout/bottom-nav/examples/router.tsx +31 -0
- package/dist/skill/reference/layout/bottom-nav/examples/structure.tsx +47 -0
- package/dist/skill/reference/layout/sidebar/COMPONENT.md +402 -0
- package/dist/skill/reference/layout/sidebar/examples/account.tsx +88 -0
- package/dist/skill/reference/layout/sidebar/examples/brand-header.tsx +45 -0
- package/dist/skill/reference/layout/sidebar/examples/collapsible-groups.tsx +77 -0
- package/dist/skill/reference/layout/sidebar/examples/controlled-open.tsx +55 -0
- package/dist/skill/reference/layout/sidebar/examples/controlled.tsx +68 -0
- package/dist/skill/reference/layout/sidebar/examples/examples.module.css +64 -0
- package/dist/skill/reference/layout/sidebar/examples/nested-items.tsx +74 -0
- package/dist/skill/reference/layout/sidebar/examples/overview.tsx +126 -0
- package/dist/skill/reference/layout/sidebar/examples/router.tsx +33 -0
- package/dist/skill/reference/layout/sidebar/examples/sizes.tsx +39 -0
- package/dist/skill/reference/layout/sidebar/examples/structure.tsx +81 -0
- package/dist/skill/responsive.md +274 -0
- package/dist/theme/chartColors.d.ts +20 -0
- package/dist/tokens/primitives.d.ts +30 -0
- package/dist/tokens/semantic.d.ts +188 -18
- package/dist/tokens/themes/dark.d.ts +41 -2
- package/package.json +14 -10
- package/src/components/accordion/COMPONENT.md +1 -1
- package/src/components/avatar/COMPONENT.md +5 -3
- package/src/components/avatar/examples/presence.tsx +17 -2
- package/src/components/avatar/examples/team-group.tsx +27 -7
- package/src/components/badge/COMPONENT.md +17 -6
- package/src/components/badge/examples/server-tags.tsx +61 -0
- package/src/components/badge/examples/states.tsx +9 -1
- package/src/components/banner/COMPONENT.md +1 -1
- package/src/components/breadcrumb/COMPONENT.md +2 -2
- package/src/components/button/COMPONENT.md +40 -14
- package/src/components/button/examples/circle.tsx +67 -0
- package/src/components/button/examples/examples.module.css +22 -0
- package/src/components/button/examples/hold-to-confirm.tsx +13 -2
- package/src/components/button/examples/over-media.tsx +36 -0
- package/src/components/button/examples/toggle.tsx +21 -0
- package/src/components/button-group/COMPONENT.md +30 -13
- package/src/components/button-group/examples/in-form.tsx +42 -7
- package/src/components/card/COMPONENT.md +37 -13
- package/src/components/card/examples/interactive.tsx +28 -0
- package/src/components/card/examples/panel-chart.tsx +2 -1
- package/src/components/card/examples/variants.tsx +3 -1
- package/src/components/chart-frame/COMPONENT.md +265 -0
- package/src/components/chart-frame/examples/controlled.tsx +92 -0
- package/src/components/chart-frame/examples/examples.module.css +6 -0
- package/src/components/chart-frame/examples/narrow.tsx +46 -0
- package/src/components/chart-frame/examples/overview.tsx +127 -0
- package/src/components/chart-frame/examples/states.tsx +78 -0
- package/src/components/chart-frame/examples/tooltip.tsx +158 -0
- package/src/components/chat/COMPONENT.md +336 -0
- package/src/components/chat/examples/controlled.tsx +68 -0
- package/src/components/chat/examples/examples.module.css +38 -0
- package/src/components/chat/examples/group-chat.tsx +130 -0
- package/src/components/chat/examples/live.tsx +89 -0
- package/src/components/chat/examples/narrow.tsx +46 -0
- package/src/components/chat/examples/overview.tsx +839 -0
- package/src/components/chat/examples/search.tsx +61 -0
- package/src/components/chat/examples/structure.tsx +28 -0
- package/src/components/checkbox/COMPONENT.md +14 -3
- package/src/components/checkbox/examples/variants.tsx +30 -0
- package/src/components/color-field/COMPONENT.md +163 -0
- package/src/components/color-field/examples/controlled.tsx +33 -0
- package/src/components/color-field/examples/examples.module.css +22 -0
- package/src/components/color-field/examples/in-form.tsx +45 -0
- package/src/components/color-field/examples/overview.tsx +6 -0
- package/src/components/color-field/examples/presets.tsx +20 -0
- package/src/components/color-field/examples/sizes.tsx +14 -0
- package/src/components/color-field/examples/states.tsx +12 -0
- package/src/components/color-field/examples/validation.tsx +29 -0
- package/src/components/color-picker/COMPONENT.md +26 -16
- package/src/components/color-picker/examples/overview.tsx +1 -1
- package/src/components/color-picker/examples/presets-sizes.tsx +3 -1
- package/src/components/color-picker/examples/presets.tsx +5 -3
- package/src/components/color-swatches/COMPONENT.md +13 -12
- package/src/components/color-swatches/examples/sizes.tsx +1 -1
- package/src/components/color-swatches/examples/wrapping.tsx +1 -1
- package/src/components/command-menu/COMPONENT.md +46 -17
- package/src/components/command-menu/examples/controlled.tsx +3 -3
- package/src/components/command-menu/examples/load-error.tsx +65 -0
- package/src/components/command-menu/examples/server-search.tsx +91 -0
- package/src/components/composer/COMPONENT.md +310 -0
- package/src/components/composer/examples/attachments.tsx +36 -0
- package/src/components/composer/examples/controlled.tsx +46 -0
- package/src/components/composer/examples/examples.module.css +30 -0
- package/src/components/composer/examples/formatting.tsx +15 -0
- package/src/components/composer/examples/narrow.tsx +22 -0
- package/src/components/composer/examples/overview.tsx +39 -0
- package/src/components/composer/examples/reply-edit.tsx +68 -0
- package/src/components/composer/examples/sizes.tsx +23 -0
- package/src/components/composer/examples/states.tsx +31 -0
- package/src/components/composer/examples/typing.tsx +24 -0
- package/src/components/composer/examples/voice.tsx +21 -0
- package/src/components/confirm-dialog/COMPONENT.md +124 -0
- package/src/components/confirm-dialog/examples/controlled-open.tsx +35 -0
- package/src/components/confirm-dialog/examples/failure.tsx +37 -0
- package/src/components/confirm-dialog/examples/overview.tsx +24 -0
- package/src/components/confirm-dialog/examples/variants.tsx +44 -0
- package/src/components/crossfade/COMPONENT.md +16 -2
- package/src/components/crossfade/examples/examples.module.css +28 -0
- package/src/components/crossfade/examples/fill.tsx +79 -0
- package/src/components/data-table/COMPONENT.md +136 -29
- package/src/components/data-table/examples/columns-visibility.tsx +26 -42
- package/src/components/data-table/examples/examples.module.css +9 -0
- package/src/components/data-table/examples/fill-height.tsx +55 -0
- package/src/components/data-table/examples/groups.tsx +73 -0
- package/src/components/data-table/examples/heatmap.tsx +44 -0
- package/src/components/data-table/examples/reorder.tsx +61 -0
- package/src/components/data-table/examples/row-link.tsx +100 -0
- package/src/components/data-table/examples/row-open.tsx +129 -0
- package/src/components/data-table/examples/server.tsx +181 -0
- package/src/components/datepicker/COMPONENT.md +14 -10
- package/src/components/datepicker/examples/in-form.tsx +12 -3
- package/src/components/datepicker/examples/inline-panel.tsx +9 -3
- package/src/components/description-list/COMPONENT.md +132 -0
- package/src/components/description-list/examples/examples.module.css +41 -0
- package/src/components/description-list/examples/narrow.tsx +20 -0
- package/src/components/description-list/examples/overview.tsx +35 -0
- package/src/components/description-list/examples/sizes.tsx +24 -0
- package/src/components/description-list/examples/structure.tsx +29 -0
- package/src/components/description-list/examples/vertical.tsx +21 -0
- package/src/components/digit-input/COMPONENT.md +12 -6
- package/src/components/digit-input/examples/on-complete.tsx +19 -7
- package/src/components/divider/COMPONENT.md +1 -1
- package/src/components/dnd/COMPONENT.md +93 -30
- package/src/components/dnd/examples/board.tsx +16 -8
- package/src/components/dnd/examples/drop-zones.tsx +2 -2
- package/src/components/dnd/examples/examples.module.css +23 -0
- package/src/components/dnd/examples/grid.tsx +48 -0
- package/src/components/dnd/examples/handle.tsx +7 -2
- package/src/components/dnd/examples/locked.tsx +57 -0
- package/src/components/dnd/examples/narrow.tsx +1 -1
- package/src/components/drawer/COMPONENT.md +66 -33
- package/src/components/drawer/examples/controlled-open.tsx +8 -1
- package/src/components/drawer/examples/examples.module.css +0 -5
- package/src/components/drawer/examples/guard.tsx +80 -0
- package/src/components/drawer/examples/header-actions.tsx +63 -0
- package/src/components/drawer/examples/overview.tsx +9 -1
- package/src/components/drawer/examples/placement.tsx +9 -4
- package/src/components/drawer/examples/sizes.tsx +7 -0
- package/src/components/dropdown/COMPONENT.md +35 -17
- package/src/components/dropdown/examples/item-description.tsx +30 -0
- package/src/components/dropdown/examples/link-items.tsx +29 -0
- package/src/components/dropdown/examples/overview.tsx +1 -1
- package/src/components/dropdown/examples/structure.tsx +1 -1
- package/src/components/empty-page/COMPONENT.md +44 -16
- package/src/components/empty-page/examples/examples.module.css +19 -2
- package/src/components/empty-page/examples/region-error.tsx +86 -0
- package/src/components/empty-page/examples/variants.tsx +43 -0
- package/src/components/example-frame/COMPONENT.md +3 -2
- package/src/components/fieldset/COMPONENT.md +107 -0
- package/src/components/fieldset/examples/examples.module.css +14 -0
- package/src/components/fieldset/examples/in-form.tsx +59 -0
- package/src/components/fieldset/examples/overview.tsx +22 -0
- package/src/components/fieldset/examples/states.tsx +35 -0
- package/src/components/file-upload/COMPONENT.md +254 -62
- package/src/components/file-upload/examples/attachment-tray.tsx +99 -0
- package/src/components/file-upload/examples/controlled.tsx +77 -0
- package/src/components/file-upload/examples/examples.module.css +38 -7
- package/src/components/file-upload/examples/file-cards.tsx +64 -0
- package/src/components/file-upload/examples/gallery.tsx +104 -0
- package/src/components/file-upload/examples/in-form.tsx +33 -54
- package/src/components/file-upload/examples/narrow.tsx +64 -8
- package/src/components/file-upload/examples/overview.tsx +34 -37
- package/src/components/file-upload/examples/row-parts.tsx +41 -0
- package/src/components/file-upload/examples/saving.tsx +71 -0
- package/src/components/file-upload/examples/sizes.tsx +13 -14
- package/src/components/file-upload/examples/states.tsx +12 -3
- package/src/components/file-upload/examples/validation.tsx +17 -25
- package/src/components/file-upload/examples/variants.tsx +21 -2
- package/src/components/gallery/COMPONENT.md +151 -0
- package/src/components/gallery/examples/controlled-open.tsx +39 -0
- package/src/components/gallery/examples/examples.module.css +14 -0
- package/src/components/gallery/examples/overview.tsx +52 -0
- package/src/components/gallery/examples/transfer.tsx +45 -0
- package/src/components/gantt/COMPONENT.md +224 -0
- package/src/components/gantt/examples/controlled.tsx +72 -0
- package/src/components/gantt/examples/examples.module.css +30 -0
- package/src/components/gantt/examples/large.tsx +96 -0
- package/src/components/gantt/examples/narrow.tsx +54 -0
- package/src/components/gantt/examples/occupancy.tsx +149 -0
- package/src/components/gantt/examples/overview.tsx +82 -0
- package/src/components/gantt/examples/sizes.tsx +48 -0
- package/src/components/gantt/examples/states.tsx +68 -0
- package/src/components/gantt/examples/variants.tsx +82 -0
- package/src/components/hint/COMPONENT.md +3 -3
- package/src/components/hint/examples/overview.tsx +10 -22
- package/src/components/input/COMPONENT.md +69 -13
- package/src/components/input/examples/edge-actions.tsx +30 -0
- package/src/components/input/examples/inline-edit.tsx +52 -0
- package/src/components/input/examples/password-strength.tsx +2 -1
- package/src/components/kanban/COMPONENT.md +94 -36
- package/src/components/kanban/examples/cards.tsx +152 -0
- package/src/components/kanban/examples/columns.tsx +182 -0
- package/src/components/kanban/examples/examples.module.css +6 -0
- package/src/components/kanban/examples/limits.tsx +5 -3
- package/src/components/kanban/examples/saving.tsx +83 -0
- package/src/components/kanban/examples/variants.tsx +57 -0
- package/src/components/label/COMPONENT.md +4 -4
- package/src/components/label/examples/overview.tsx +11 -8
- package/src/components/link-button/COMPONENT.md +3 -1
- package/src/components/login-form/COMPONENT.md +4 -3
- package/src/components/login-form/examples/overview.tsx +2 -2
- package/src/components/login-form/examples/register.tsx +2 -7
- package/src/components/login-form/examples/states.tsx +18 -22
- package/src/components/media-viewer/COMPONENT.md +207 -0
- package/src/components/media-viewer/examples/actions.tsx +86 -0
- package/src/components/media-viewer/examples/controlled-open.tsx +30 -0
- package/src/components/media-viewer/examples/controlled.tsx +54 -0
- package/src/components/media-viewer/examples/dismiss.tsx +34 -0
- package/src/components/media-viewer/examples/examples.module.css +16 -0
- package/src/components/media-viewer/examples/origin.tsx +60 -0
- package/src/components/media-viewer/examples/overview.tsx +75 -0
- package/src/components/media-viewer/examples/thumbnails.tsx +49 -0
- package/src/components/media-viewer/examples/video.tsx +55 -0
- package/src/components/message/COMPONENT.md +444 -0
- package/src/components/message/examples/author.tsx +74 -0
- package/src/components/message/examples/contact.tsx +24 -0
- package/src/components/message/examples/context-menu.tsx +71 -0
- package/src/components/message/examples/examples.module.css +18 -0
- package/src/components/message/examples/file.tsx +79 -0
- package/src/components/message/examples/kinds.tsx +93 -0
- package/src/components/message/examples/link-preview.tsx +17 -0
- package/src/components/message/examples/location.tsx +30 -0
- package/src/components/message/examples/media.tsx +93 -0
- package/src/components/message/examples/narrow.tsx +29 -0
- package/src/components/message/examples/overview.tsx +52 -0
- package/src/components/message/examples/reactions.tsx +73 -0
- package/src/components/message/examples/status.tsx +45 -0
- package/src/components/message/examples/structure.tsx +32 -0
- package/src/components/message/examples/text-formatting.tsx +27 -0
- package/src/components/message/examples/typing.tsx +22 -0
- package/src/components/message/examples/voice.tsx +39 -0
- package/src/components/modal/COMPONENT.md +51 -20
- package/src/components/modal/examples/guard.tsx +87 -0
- package/src/components/modal/examples/sizes.tsx +2 -1
- package/src/components/native-select/COMPONENT.md +1 -1
- package/src/components/notification/COMPONENT.md +4 -1
- package/src/components/notification/examples/examples.module.css +11 -1
- package/src/components/notification/examples/undo.tsx +61 -0
- package/src/components/page-content/COMPONENT.md +78 -11
- package/src/components/page-content/examples/examples.module.css +54 -0
- package/src/components/page-content/examples/list-detail.tsx +114 -0
- package/src/components/page-content/examples/variants.tsx +1 -1
- package/src/components/page-toolbar/COMPONENT.md +21 -22
- package/src/components/page-toolbar/examples/narrow.tsx +4 -4
- package/src/components/page-toolbar/examples/overview.tsx +4 -4
- package/src/components/pagination/COMPONENT.md +1 -1
- package/src/components/popover/COMPONENT.md +15 -7
- package/src/components/popover/examples/examples.module.css +5 -0
- package/src/components/popover/examples/from-menu.tsx +56 -0
- package/src/components/progress-bar/COMPONENT.md +57 -13
- package/src/components/progress-bar/examples/legend.tsx +28 -0
- package/src/components/progress-bar/examples/ranking.tsx +28 -0
- package/src/components/progress-bar/examples/states.tsx +43 -0
- package/src/components/progress-circle/COMPONENT.md +70 -27
- package/src/components/progress-circle/examples/examples.module.css +5 -0
- package/src/components/progress-circle/examples/legend.tsx +33 -0
- package/src/components/progress-circle/examples/states.tsx +25 -0
- package/src/components/progress-circle/examples/under-way.tsx +54 -0
- package/src/components/radio/COMPONENT.md +3 -3
- package/src/components/scroll-container/COMPONENT.md +85 -24
- package/src/components/scroll-container/examples/auto-scroll.tsx +52 -0
- package/src/components/scroll-container/examples/chat.tsx +101 -0
- package/src/components/scroll-container/examples/edges.tsx +43 -0
- package/src/components/scroll-container/examples/examples.module.css +73 -0
- package/src/components/scroll-container/examples/lock.tsx +49 -0
- package/src/components/scroll-container/examples/scrollbar.tsx +52 -0
- package/src/components/scroll-container/examples/snap.tsx +36 -0
- package/src/components/segmented-control/COMPONENT.md +32 -13
- package/src/components/segmented-control/examples/examples.module.css +11 -0
- package/src/components/segmented-control/examples/in-form.tsx +42 -0
- package/src/components/select/COMPONENT.md +89 -21
- package/src/components/select/examples/load-error.tsx +45 -0
- package/src/components/select/examples/people.tsx +53 -0
- package/src/components/select/examples/server-search.tsx +93 -0
- package/src/components/sheet/COMPONENT.md +216 -0
- package/src/components/sheet/examples/controlled-open.tsx +37 -0
- package/src/components/sheet/examples/dismiss.tsx +42 -0
- package/src/components/sheet/examples/examples.module.css +13 -0
- package/src/components/sheet/examples/in-form.tsx +65 -0
- package/src/components/sheet/examples/overview.tsx +50 -0
- package/src/components/sheet/examples/structure.tsx +35 -0
- package/src/components/skeleton/COMPONENT.md +1 -1
- package/src/components/slider/COMPONENT.md +21 -4
- package/src/components/slider/examples/autosave.tsx +39 -0
- package/src/components/slider/examples/examples.module.css +6 -0
- package/src/components/slider/examples/orientation.tsx +27 -0
- package/src/components/smart-filter/COMPONENT.md +67 -16
- package/src/components/smart-filter/examples/option-groups.tsx +40 -0
- package/src/components/smart-filter/examples/ranges.tsx +89 -0
- package/src/components/smart-filter/examples/single-value.tsx +41 -0
- package/src/components/sparkline/COMPONENT.md +48 -19
- package/src/components/sparkline/examples/signed-bars.tsx +41 -0
- package/src/components/sparkline/examples/states.tsx +30 -0
- package/src/components/sparkline/examples/variants.tsx +29 -0
- package/src/components/spinner/COMPONENT.md +10 -8
- package/src/components/stepper/COMPONENT.md +4 -0
- package/src/components/switch/COMPONENT.md +11 -5
- package/src/components/switch/examples/in-form.tsx +3 -1
- package/src/components/switch/examples/saving.tsx +53 -0
- package/src/components/switch/examples/states.tsx +6 -1
- package/src/components/tabs/COMPONENT.md +46 -26
- package/src/components/tabs/examples/examples.module.css +6 -0
- package/src/components/tabs/examples/in-drawer.tsx +100 -0
- package/src/components/tabs/examples/overview.tsx +1 -1
- package/src/components/tag-select/COMPONENT.md +34 -21
- package/src/components/tag-select/examples/confirm-delete.tsx +60 -0
- package/src/components/tag-select/examples/creatable.tsx +23 -2
- package/src/components/tag-select/examples/in-form.tsx +9 -2
- package/src/components/tag-select/examples/manage-tags.tsx +10 -6
- package/src/components/textarea/COMPONENT.md +57 -10
- package/src/components/textarea/examples/auto-resize.tsx +8 -1
- package/src/components/textarea/examples/edge-actions.tsx +24 -0
- package/src/components/textarea/examples/inline-edit.tsx +42 -0
- package/src/components/thumbnail/COMPONENT.md +51 -10
- package/src/components/thumbnail/examples/controlled.tsx +61 -0
- package/src/components/thumbnail/examples/examples.module.css +31 -0
- package/src/components/thumbnail/examples/full-width.tsx +2 -5
- package/src/components/thumbnail/examples/overview.tsx +2 -6
- package/src/components/thumbnail/examples/pressable.tsx +56 -0
- package/src/components/thumbnail/examples/video.tsx +46 -0
- package/src/components/timeline/COMPONENT.md +2 -1
- package/src/components/tooltip/COMPONENT.md +13 -7
- package/src/components/tooltip/examples/disabled-trigger.tsx +2 -7
- package/src/components/tooltip/examples/examples.module.css +6 -9
- package/src/components/tooltip/examples/non-interactive-trigger.tsx +31 -0
- package/src/components/typography/COMPONENT.md +2 -0
- package/src/components/video-note/COMPONENT.md +173 -0
- package/src/components/video-note/examples/controlled.tsx +28 -0
- package/src/components/video-note/examples/examples.module.css +4 -0
- package/src/components/video-note/examples/in-message.tsx +22 -0
- package/src/components/video-note/examples/overview.tsx +8 -0
- package/src/components/video-note/examples/states.tsx +74 -0
- package/src/components/video-note/examples/transcript.tsx +29 -0
- package/src/components/video-note/examples/transfer.tsx +76 -0
- package/src/components/visually-hidden/COMPONENT.md +81 -0
- package/src/components/visually-hidden/examples/overview.tsx +22 -0
- package/src/components/voice-player/COMPONENT.md +192 -0
- package/src/components/voice-player/examples/call-recording.tsx +34 -0
- package/src/components/voice-player/examples/controlled.tsx +38 -0
- package/src/components/voice-player/examples/examples.module.css +23 -0
- package/src/components/voice-player/examples/in-message.tsx +29 -0
- package/src/components/voice-player/examples/overview.tsx +13 -0
- package/src/components/voice-player/examples/states.tsx +81 -0
- package/src/components/voice-player/examples/transcript.tsx +50 -0
- package/src/components/voice-player/examples/transfer.tsx +88 -0
- package/src/layout/app-header/COMPONENT.md +35 -10
- package/src/layout/app-header/examples/page-title.tsx +85 -0
- package/src/layout/app-shell/COMPONENT.md +11 -5
- package/src/layout/app-shell/examples/examples.module.css +1 -1
- package/src/layout/app-shell/examples/footer.tsx +1 -1
- package/src/layout/bottom-nav/COMPONENT.md +50 -34
- package/src/layout/bottom-nav/examples/examples.module.css +8 -1
- package/src/layout/bottom-nav/examples/floating-action.tsx +91 -0
- package/src/layout/bottom-nav/examples/floating.tsx +6 -6
- package/src/layout/bottom-nav/examples/in-app-shell.tsx +1 -1
- package/src/layout/sidebar/COMPONENT.md +18 -13
- package/src/layout/sidebar/examples/account.tsx +1 -1
- package/src/layout/sidebar/examples/overview.tsx +1 -1
- package/src/styles/controls.css +138 -0
- package/src/styles/globals.css +8 -0
- package/src/styles/reset.css +34 -30
- package/src/styles/theme-dark.css +30 -2
- package/src/styles/theme-light.css +72 -6
- package/src/styles/tokens.css +17 -0
- package/dist/chunks/chunk-4TRNUP45.js +0 -4052
- package/dist/chunks/chunk-GFKDZFQR.js +0 -1208
- package/dist/chunks/chunk-K4FACFQ2.js +0 -13552
- package/dist/components/dnd/autoScroll.d.ts +0 -5
- package/src/components/file-upload/examples/upload-progress.tsx +0 -39
- package/src/components/scroll-container/examples/edge-fade.tsx +0 -53
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
/** Users keep their own tag dictionary: the row «⋯» menu renames, recolors or deletes an option — `onOptionUpdate`, `onOptionDelete`. */
|
|
1
|
+
/** Users keep their own tag dictionary on the server: the row «⋯» menu renames, recolors or deletes an option, and «⋯» spins while a change is saved — `onOptionUpdate`, `onOptionDelete`. */
|
|
2
2
|
import { TagSelect, type TagSelectOption } from "prime-ui-kit";
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
|
|
5
5
|
const INITIAL_OPTIONS: TagSelectOption[] = [
|
|
6
|
-
{ value: "
|
|
6
|
+
{ value: "chat", label: "Чат на сайте", color: "blue" },
|
|
7
7
|
{ value: "whatsapp", label: "WhatsApp", color: "green" },
|
|
8
8
|
{ value: "email", label: "Почта", color: "purple" },
|
|
9
9
|
{ value: "phone", label: "Телефон", color: "orange" },
|
|
10
10
|
];
|
|
11
11
|
|
|
12
|
+
/** The server saving a change of the dictionary, a beat later. */
|
|
13
|
+
const saveDictionary = () => new Promise<void>((resolve) => setTimeout(resolve, 600));
|
|
14
|
+
|
|
12
15
|
export default function TagSelectManageTagsExample() {
|
|
13
16
|
const [options, setOptions] = React.useState(INITIAL_OPTIONS);
|
|
14
17
|
|
|
@@ -16,15 +19,16 @@ export default function TagSelectManageTagsExample() {
|
|
|
16
19
|
<TagSelect
|
|
17
20
|
label="Каналы связи"
|
|
18
21
|
options={options}
|
|
19
|
-
defaultValue={["
|
|
22
|
+
defaultValue={["chat", "email"]}
|
|
20
23
|
creatable
|
|
21
|
-
onOptionUpdate={(value, updates) =>
|
|
24
|
+
onOptionUpdate={async (value, updates) => {
|
|
25
|
+
await saveDictionary();
|
|
22
26
|
setOptions((prev) =>
|
|
23
27
|
prev.some((option) => option.value === value)
|
|
24
28
|
? prev.map((option) => (option.value === value ? { ...option, ...updates } : option))
|
|
25
29
|
: [...prev, { value, label: updates.label ?? value, color: updates.color }],
|
|
26
|
-
)
|
|
27
|
-
}
|
|
30
|
+
);
|
|
31
|
+
}}
|
|
28
32
|
onOptionDelete={(value) =>
|
|
29
33
|
setOptions((prev) => prev.filter((option) => option.value !== value))
|
|
30
34
|
}
|
|
@@ -7,12 +7,14 @@
|
|
|
7
7
|
|
|
8
8
|
## When to use
|
|
9
9
|
- Free-form text longer than one line: comments, descriptions, reviews, support requests, notes.
|
|
10
|
+
- A plain growing input (`rows={1} maxRows={8}`) when a full chat composer with attachments, reply and voice is not needed.
|
|
10
11
|
- Text with a length limit shown to the user (`Textarea.Counter`).
|
|
11
12
|
|
|
12
13
|
## When not to use
|
|
13
14
|
- A single-line value (name, e-mail, search) → use [Input](../input/COMPONENT.md).
|
|
14
15
|
- A one-time code split into cells → use [DigitInput](../digit-input/COMPONENT.md).
|
|
15
16
|
- Read-only code or logs → use [CodeBlock](../code-block/COMPONENT.md).
|
|
17
|
+
- A chat message input with send, attachments, reply / edit and voice → use [Composer](../composer/COMPONENT.md).
|
|
16
18
|
|
|
17
19
|
## Import
|
|
18
20
|
```tsx
|
|
@@ -22,9 +24,11 @@ import { Textarea } from "prime-ui-kit";
|
|
|
22
24
|
## Anatomy
|
|
23
25
|
```
|
|
24
26
|
Textarea.Root label row → field box with the native <textarea> → support row (hint | error · counter)
|
|
27
|
+
├─ Textarea.CopyButton children: copies the text from the top end corner (kit-rendered)
|
|
28
|
+
└─ Textarea.Action children: the consumer's named icon action with a tooltip (button or asChild link)
|
|
25
29
|
Textarea.Counter goes into Textarea.Root `counter` (right side of the support row)
|
|
26
30
|
```
|
|
27
|
-
Unlike Input, Textarea has no Wrapper / Field parts: `Textarea.Root` renders the whole field and takes native `<textarea>` props directly.
|
|
31
|
+
Unlike Input, Textarea has no Wrapper / Field parts: `Textarea.Root` renders the whole field and takes native `<textarea>` props directly. Its children are only the corner actions: they sit in the top end corner as full-height segments flush with the box edges, in JSX order, after the commit status of `onCommit`.
|
|
28
32
|
|
|
29
33
|
## API
|
|
30
34
|
|
|
@@ -45,10 +49,14 @@ Unlike Input, Textarea has no Wrapper / Field parts: `Textarea.Root` renders the
|
|
|
45
49
|
| `focusRing` | `boolean` | `true` | `false` hides only the visual focus ring on the field box (`data-focus-ring="false"`); focus, keyboard, ARIA and the invalid ring stay. |
|
|
46
50
|
| `counter` | `ReactNode` | — | Right side of the support row, usually `<Textarea.Counter />`. |
|
|
47
51
|
| `reserveSupportRow` | `boolean` | `false` | Always render the support row (min height = hint line height), so an appearing error does not shift the layout. |
|
|
48
|
-
| `autoResize` | `boolean` | `true` | Height follows the content (minimum
|
|
52
|
+
| `autoResize` | `boolean` | `true` | Height follows the content (minimum `rows` lines, no resize handle; up to `maxRows` lines when set, then it scrolls inside). `false` → fixed height of `rows` lines with native vertical resize. |
|
|
53
|
+
| `rows` | `number` | `3` | Minimum height in lines; with `autoResize={false}` the fixed height. `rows={1}` makes a field that starts as one line, like an Input. |
|
|
54
|
+
| `maxRows` | `number` | — | With `autoResize`: the field grows up to this many lines, then scrolls inside (a chat composer: `rows={1} maxRows={8}`). Without it the field grows without a limit. |
|
|
49
55
|
| `onValueChange` | `(value: string) => void` | — | Called with the new string; native `onChange` still fires first. |
|
|
50
56
|
| `id` | `string` | — | Id of the `<textarea>` (auto-generated when omitted); hint id is `<id>-hint`, error id is `<id>-error`. |
|
|
51
57
|
| `aria-describedby` | `string` | — | Merged before the hint/error ids. |
|
|
58
|
+
| `onCommit` | `(value: string) => void \| Promise<void>` | — | Inline save: fires with a changed value on blur and Mod+Enter; Escape reverts. Return a Promise: the field shows a spinner and stays editable; a rejection restores the value — show why through `error`. |
|
|
59
|
+
| `children` | `ReactNode` | — | Actions in the field's top end corner: `Textarea.CopyButton`, `Textarea.Action`. |
|
|
52
60
|
| `labels` | `Partial<TextareaLabels>` | — | Built-in strings, see Labels. |
|
|
53
61
|
| `className` | `string` | — | Class on the field frame `<div>` (label, field box, support row), as on every field root. |
|
|
54
62
|
| `…rest` | `Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, "size" \| "children">` | — | `value`, `defaultValue`, `onChange`, `placeholder`, `rows`, `maxLength`, `name`, `disabled`, `readOnly`, `aria-label`… |
|
|
@@ -62,6 +70,24 @@ Unlike Input, Textarea has no Wrapper / Field parts: `Textarea.Root` renders the
|
|
|
62
70
|
| `max` | `number` | — (required) | Limit; `current > max` turns the counter danger (`data-invalid="true"`). Add `maxLength` on the root for a hard limit. |
|
|
63
71
|
| `…rest` | `Omit<HTMLAttributes<HTMLSpanElement>, "children">` | — | `className` and the other attributes of the `<span>`. |
|
|
64
72
|
|
|
73
|
+
### Textarea.CopyButton
|
|
74
|
+
`ref` → `HTMLButtonElement`. Copies the field's value from the field's top end corner (a read-only result): the copy glyph morphs into a check, the name and tooltip switch to `labels.copied` (`labels.copyError` when the clipboard refuses), a polite live region repeats it.
|
|
75
|
+
|
|
76
|
+
| Prop | Type | Default | Description |
|
|
77
|
+
|---|---|---|---|
|
|
78
|
+
| `value` | `string` | `the field's value` | Text to copy instead of the field's current value. |
|
|
79
|
+
| `…rest` | `Omit<ButtonHTMLAttributes<HTMLButtonElement>, "type" \| "children" \| "aria-label">` | — | `onClick`, `disabled` and the other button attributes. |
|
|
80
|
+
|
|
81
|
+
### Textarea.Action
|
|
82
|
+
`ref` → `HTMLButtonElement` (the child with `asChild`). The consumer's icon action in the field's top end corner: a full-height button segment named by `label`, with a tooltip and the touch hit area.
|
|
83
|
+
|
|
84
|
+
| Prop | Type | Default | Description |
|
|
85
|
+
|---|---|---|---|
|
|
86
|
+
| `label` | `string` | — (required) | Accessible name and tooltip («Позвонить», «Открыть профиль»). |
|
|
87
|
+
| `asChild` | `boolean` | `false` | Renders the one child (an `<a href>`, a router link) with the segment's look; `disabled` becomes `aria-disabled`. |
|
|
88
|
+
| `children` | `ReactNode` | — (required) | The glyph (`<Icon name>`), or with `asChild` the element that carries it. |
|
|
89
|
+
| `…rest` | `Omit<ButtonHTMLAttributes<HTMLButtonElement>, "aria-label" \| "children">` | — | `onClick`, `disabled` and the other button attributes. |
|
|
90
|
+
|
|
65
91
|
## Variants
|
|
66
92
|
Textarea has no `variant` or `tone`: one field treatment (fill, no visible border).
|
|
67
93
|
|
|
@@ -70,7 +96,7 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
70
96
|
|---|---|---|---|
|
|
71
97
|
| `xs` | Text 12/16, padX 8, radius 6, label 12/16, hint 12/16 | Dense panels next to `xs` controls | |
|
|
72
98
|
| `s` | Text 13/20, padX 8, radius 8, label 12/16, hint 12/16 | Compact side panels, comments in lists | |
|
|
73
|
-
| `m` | Text 14/20, padX 12, radius 8, label 13/20, hint 12/16 | Regular forms | yes |
|
|
99
|
+
| `m` | Text 14/20, padX 12, radius 8, label 13/20, hint 12/16 | Regular forms | yes (without `size`: the host's tier, else `m`) |
|
|
74
100
|
| `l` | Text 16/24, padX 12, radius 10, label 14/20, hint 13/20 | Spacious forms, long reading text | |
|
|
75
101
|
| `xl` | Text 16/24, padX 16, radius 12, label 14/20, hint 13/20 | Hero forms next to `xl` inputs | |
|
|
76
102
|
|
|
@@ -79,8 +105,8 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
79
105
|
### autoResize
|
|
80
106
|
| Value | Looks like | Use when | Default |
|
|
81
107
|
|---|---|---|---|
|
|
82
|
-
| `true` | Box grows line by line with the text
|
|
83
|
-
| `false` | Fixed height
|
|
108
|
+
| `true` | Box grows line by line with the text from `rows` lines (three by default), no resize handle; with `maxRows` it stops there and scrolls inside | Comments, descriptions — most cases; `rows={1} maxRows={8}` for a chat input | yes |
|
|
109
|
+
| `false` | Fixed height of `rows` lines, native vertical resize handle, scrolls inside | Very long text where the page must not grow, or a fixed layout | |
|
|
84
110
|
|
|
85
111
|
### Flags
|
|
86
112
|
| Value | Looks like | Use when | Default |
|
|
@@ -101,10 +127,17 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
101
127
|
| focus | keyboard focus | focus fill and inset focus ring on the field box; clicking the box padding focuses the textarea |
|
|
102
128
|
| no focus ring | `focusRing={false}` | `data-focus-ring="false"` on the field box |
|
|
103
129
|
| invalid | `invalid` or non-empty `error` | `data-invalid="true"` on the outer wrapper and the field box, `aria-invalid="true"`, danger ring; the control shakes once when an error arrives (`data-shake` on the frame) |
|
|
104
|
-
| disabled | `disabled` | `data-disabled="true"` on the field box, disabled fill and text; label and hint dimmed |
|
|
130
|
+
| disabled | `disabled`, or a disabled `Fieldset` around it | `data-disabled="true"` on the field box, disabled fill and text; label and hint dimmed |
|
|
131
|
+
| capped | `autoResize` with `maxRows` | `data-capped="true"` on the field box; the box grows line by line up to `maxRows` lines, then the textarea scrolls inside with the thin scrollbar |
|
|
105
132
|
| read-only | `readOnly` | `data-readonly="true"` on the field box, no hover, default cursor |
|
|
106
133
|
| reserved support row | `reserveSupportRow` | `data-reserve="true"` on the support row |
|
|
107
134
|
| counter over limit | `current > max` | `data-invalid="true"` on `Textarea.Counter` |
|
|
135
|
+
| saving | `onCommit` returned a pending Promise | `aria-busy="true"` on the textarea, a `Spinner` in the top end corner (`data-commit="pending"`); the field stays editable; a live region says `labels.saving` |
|
|
136
|
+
| saved | the Promise resolved (or `onCommit` returned nothing) | the spinner cross-fades into a success check (`data-commit="saved"`) that fades out; the live region says `labels.saved` |
|
|
137
|
+
| save refused | the Promise rejected | the committed text is put back (unless the person typed on); the owner shows why through `error` |
|
|
138
|
+
| copied | `Textarea.CopyButton` pressed | the copy glyph cross-fades into a check, the name becomes `labels.copied` (or `labels.copyError`) |
|
|
139
|
+
|
|
140
|
+
Inline save (`onCommit`): the text at focus is the committed one; blur and Mod+Enter (Ctrl or ⌘ with Enter — a plain Enter is a line break) commit a changed text, Escape puts the committed text back and is consumed. An unchanged text never fires. Return a Promise for a server save: pending shows a spinner while the field stays editable and Tab moves on, reject restores the text, resolve shows the check.
|
|
108
141
|
|
|
109
142
|
`data-size` is set on the outer wrapper and the field box. Controlled: `value` + `onValueChange` (or `onChange`). Uncontrolled: `defaultValue`.
|
|
110
143
|
|
|
@@ -119,13 +152,17 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
119
152
|
### Keyboard
|
|
120
153
|
| Key | Action |
|
|
121
154
|
|---|---|
|
|
122
|
-
| `Tab` | Focuses the field; Enter inserts a line break instead of submitting the form. |
|
|
155
|
+
| `Tab` | Focuses the field, then the buttons in its corner; Enter inserts a line break instead of submitting the form. |
|
|
156
|
+
| `Mod+Enter` | With `onCommit`: saves a changed text; focus stays in the field. |
|
|
157
|
+
| `Escape` | With `onCommit`: puts the committed text back. |
|
|
123
158
|
|
|
124
159
|
### ARIA
|
|
125
160
|
- `label` renders `<label htmlFor>` bound to the textarea; without it set `aria-label`. A placeholder never replaces the label.
|
|
126
161
|
- Hint and error are linked via `aria-describedby`; the error replaces the hint and sets `aria-invalid="true"`.
|
|
127
162
|
- The field box is a `<div>`, not a `<label>`, so counter and hint never leak into the accessible name; clicking its padding focuses the textarea.
|
|
128
163
|
- `Textarea.Counter` shows `12/280` visually and announces `labels.counter` (`aria-live="polite"`).
|
|
164
|
+
- `Textarea.Action` and `Textarea.CopyButton` are buttons (or a link with `asChild`) named by their label, with a tooltip; copying announces `labels.copied`. A press on them never moves focus into the textarea.
|
|
165
|
+
- With `onCommit` the textarea carries `aria-busy="true"` while saving; a polite live region says `labels.saving`, then `labels.saved`.
|
|
129
166
|
|
|
130
167
|
### Labels
|
|
131
168
|
<!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
|
|
@@ -134,6 +171,11 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
134
171
|
|---|---|---|
|
|
135
172
|
| `optional` | `"необязательно"` | Marker after the label when `optional`. |
|
|
136
173
|
| `counter` | `"{current} из {max} символов"` | Screen-reader text of `Textarea.Counter`; `{current}` and `{max}` are replaced. |
|
|
174
|
+
| `copy` | `"Копировать"` | Name and tooltip of the copy button. |
|
|
175
|
+
| `copied` | `"Скопировано"` | Name, tooltip and announcement once the value is copied. |
|
|
176
|
+
| `copyError` | `"Не удалось скопировать"` | Name, tooltip and announcement when the clipboard refuses. |
|
|
177
|
+
| `saving` | `"Сохранение"` | Announced while an `onCommit` save is pending. |
|
|
178
|
+
| `saved` | `"Сохранено"` | Announced once an `onCommit` save succeeds. |
|
|
137
179
|
|
|
138
180
|
## Examples
|
|
139
181
|
| Example | Shows |
|
|
@@ -142,8 +184,10 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
142
184
|
| [sizes.tsx](examples/sizes.tsx) | Every size tier; text, padding, label and hint follow the tier — `size`. |
|
|
143
185
|
| [states.tsx](examples/states.tsx) | A default field next to a read-only and a disabled one — `readOnly`, `disabled`. |
|
|
144
186
|
| [validation.tsx](examples/validation.tsx) | Live validation: an error shakes the field as it arrives, drops in and leaves as soon as the text is fixed; required and optional markers, a hint and a support row that does not shift — `required`, `optional`, `hint`, `error`, `reserveSupportRow`. |
|
|
145
|
-
| [auto-resize.tsx](examples/auto-resize.tsx) | A field that grows with its text
|
|
187
|
+
| [auto-resize.tsx](examples/auto-resize.tsx) | A field that grows with its text, one that starts as a line and stops growing at five, and a fixed one with a resize handle — `autoResize`, `rows`, `maxRows`. |
|
|
146
188
|
| [without-focus-ring.tsx](examples/without-focus-ring.tsx) | A single reply composer where the caret and the lighter fill show focus — `focusRing`. |
|
|
189
|
+
| [edge-actions.tsx](examples/edge-actions.tsx) | A read-only generated reply with copying and a link to the template in the field's corner — `Textarea.CopyButton`, `Textarea.Action`. |
|
|
190
|
+
| [inline-edit.tsx](examples/inline-edit.tsx) | A record card note that saves on blur and Mod+Enter, reverts on Escape and shows the server's refusal — `onCommit`, `error`. |
|
|
147
191
|
| [controlled.tsx](examples/controlled.tsx) | The parent owns the text; the counter follows it and `maxLength` stops extra input — `value`, `onValueChange`, `Textarea.Counter`, `maxLength`. |
|
|
148
192
|
| [in-form.tsx](examples/in-form.tsx) | Support request form: the description is checked on submit, its error leaves as soon as the text is long enough and does not shift the form, a sent request turns the button green — `required`, `error`, `reserveSupportRow`. |
|
|
149
193
|
|
|
@@ -152,8 +196,11 @@ Textarea has no `variant` or `tone`: one field treatment (fill, no visible borde
|
|
|
152
196
|
- Counter without `maxLength` when the limit is hard → add `maxLength` so extra input is blocked.
|
|
153
197
|
- `className` expected on the field box → it lands on the field frame (label, box, support row), as on every field root; size the box through the frame's layout.
|
|
154
198
|
- Expecting a fixed height with the default `autoResize` → set `autoResize={false}` (and `rows`) for a fixed box with a resize handle.
|
|
199
|
+
- A field that pushes the page down without end (a chat input, a note in a narrow panel) → cap it with `maxRows`; past it the field scrolls inside.
|
|
155
200
|
- Only a placeholder, no label → add `label` or `aria-label`.
|
|
201
|
+
- A copy `Button` under a read-only result → `Textarea.CopyButton` as a child of the root.
|
|
202
|
+
- Other children than `Textarea.CopyButton` / `Textarea.Action` → the root renders the textarea itself; children are only the corner actions.
|
|
156
203
|
|
|
157
204
|
## Related
|
|
158
|
-
- **Built from:** [Label](../label/COMPONENT.md) (`label`), [Hint](../hint/COMPONENT.md) (`hint`, `error`)
|
|
159
|
-
- **See also:** [Input](../input/COMPONENT.md) — the same field contract for one line; [CodeBlock](../code-block/COMPONENT.md)
|
|
205
|
+
- **Built from:** [Label](../label/COMPONENT.md) (`label`), [Hint](../hint/COMPONENT.md) (`hint`, `error`), [Tooltip](../tooltip/COMPONENT.md) (corner actions), [Spinner](../spinner/COMPONENT.md) (`onCommit`)
|
|
206
|
+
- **See also:** [Input](../input/COMPONENT.md) — the same field contract for one line; [Composer](../composer/COMPONENT.md) — a chat message input built on Textarea; [CodeBlock](../code-block/COMPONENT.md)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** A field that grows with its text
|
|
1
|
+
/** A field that grows with its text, one that starts as a line and stops growing at five, and a fixed one with a resize handle — `autoResize`, `rows`, `maxRows`. */
|
|
2
2
|
import { Textarea } from "prime-ui-kit";
|
|
3
3
|
|
|
4
4
|
export default function TextareaAutoResizeExample() {
|
|
@@ -9,6 +9,13 @@ export default function TextareaAutoResizeExample() {
|
|
|
9
9
|
placeholder="Состав, размеры, уход"
|
|
10
10
|
hint="Высота растёт вместе с текстом, минимум три строки"
|
|
11
11
|
/>
|
|
12
|
+
<Textarea.Root
|
|
13
|
+
label="Комментарий к заказу"
|
|
14
|
+
rows={1}
|
|
15
|
+
maxRows={5}
|
|
16
|
+
placeholder="Например, позвонить за час"
|
|
17
|
+
hint="Начинается с одной строки, после пяти строк прокручивается"
|
|
18
|
+
/>
|
|
12
19
|
<Textarea.Root
|
|
13
20
|
label="Условия договора"
|
|
14
21
|
autoResize={false}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** A read-only generated reply with copying and a link to the template in the field's corner — `Textarea.CopyButton`, `Textarea.Action`. */
|
|
2
|
+
import { Icon, Textarea } from "prime-ui-kit";
|
|
3
|
+
|
|
4
|
+
const REPLY = `Добрый день, Ирина!
|
|
5
|
+
|
|
6
|
+
Счёт № 1042 на сумму 184 500 ₽ выставлен и отправлен на почту бухгалтерии. Оплатить его можно до 15 ноября.`;
|
|
7
|
+
|
|
8
|
+
export default function TextareaEdgeActionsExample() {
|
|
9
|
+
return (
|
|
10
|
+
<Textarea.Root
|
|
11
|
+
label="Ответ клиенту"
|
|
12
|
+
hint="Собран из шаблона «Счёт выставлен»"
|
|
13
|
+
readOnly
|
|
14
|
+
value={REPLY}
|
|
15
|
+
>
|
|
16
|
+
<Textarea.Action label="Открыть шаблон" asChild>
|
|
17
|
+
<a href="#template-invoice-sent">
|
|
18
|
+
<Icon name="object.document" />
|
|
19
|
+
</a>
|
|
20
|
+
</Textarea.Action>
|
|
21
|
+
<Textarea.CopyButton />
|
|
22
|
+
</Textarea.Root>
|
|
23
|
+
);
|
|
24
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** A record card note that saves on blur and Mod+Enter, reverts on Escape and shows the server's refusal — `onCommit`, `error`. */
|
|
2
|
+
import { Textarea } from "prime-ui-kit";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
const SAVE_DELAY_MS = 900;
|
|
6
|
+
const MAX_NOTE_LENGTH = 500;
|
|
7
|
+
|
|
8
|
+
/** Stands in for the API call: a note over the limit is refused like a server validation error. */
|
|
9
|
+
function saveNote(value: string) {
|
|
10
|
+
return new Promise<void>((resolve, reject) => {
|
|
11
|
+
window.setTimeout(() => {
|
|
12
|
+
if (value.length > MAX_NOTE_LENGTH) reject(new Error("Заметка длиннее 500 символов"));
|
|
13
|
+
else resolve();
|
|
14
|
+
}, SAVE_DELAY_MS);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export default function TextareaInlineEditExample() {
|
|
19
|
+
const [note, setNote] = React.useState(
|
|
20
|
+
"Перезвонить после согласования бюджета. Интересует годовой тариф на 40 мест.",
|
|
21
|
+
);
|
|
22
|
+
const [error, setError] = React.useState<string>();
|
|
23
|
+
|
|
24
|
+
return (
|
|
25
|
+
<Textarea.Root
|
|
26
|
+
label="Заметка по сделке"
|
|
27
|
+
hint="Сохраняется при выходе из поля и по Ctrl+Enter, Escape отменяет правку"
|
|
28
|
+
error={error}
|
|
29
|
+
value={note}
|
|
30
|
+
onValueChange={setNote}
|
|
31
|
+
onCommit={async (value) => {
|
|
32
|
+
setError(undefined);
|
|
33
|
+
try {
|
|
34
|
+
await saveNote(value);
|
|
35
|
+
} catch (reason) {
|
|
36
|
+
setError(reason instanceof Error ? reason.message : "Не удалось сохранить");
|
|
37
|
+
throw reason;
|
|
38
|
+
}
|
|
39
|
+
}}
|
|
40
|
+
/>
|
|
41
|
+
);
|
|
42
|
+
}
|
|
@@ -3,12 +3,15 @@
|
|
|
3
3
|
**Category:** data-display
|
|
4
4
|
**Kind:** primitive
|
|
5
5
|
|
|
6
|
-
> A preview of an object — product, vehicle, file, cover — at a fixed aspect ratio, with a colored icon fallback.
|
|
6
|
+
> A preview of an object — product, vehicle, file, cover, video — at a fixed aspect ratio, with a colored icon fallback; it can open the object or be selected.
|
|
7
7
|
|
|
8
8
|
## When to use
|
|
9
9
|
- An object next to its name in a table cell or list row (vehicle, product, document).
|
|
10
10
|
- Covers in a card grid or gallery (`fullWidth`).
|
|
11
11
|
- Any picture of a thing, with a fallback while it loads or when there is none.
|
|
12
|
+
- A video, a GIF-like clip or a video message in the same frame (`Thumbnail.Video`).
|
|
13
|
+
- A preview that opens a viewer or the object (`asChild` on a `<button>` / `<a>`).
|
|
14
|
+
- A tile of a media library that is picked (`checked` / `onCheckedChange`).
|
|
12
15
|
|
|
13
16
|
## When not to use
|
|
14
17
|
- A person or an organization's account → use [Avatar](../avatar/COMPONENT.md).
|
|
@@ -22,9 +25,11 @@ import { Thumbnail } from "prime-ui-kit";
|
|
|
22
25
|
|
|
23
26
|
## Anatomy
|
|
24
27
|
```
|
|
25
|
-
Thumbnail.Root frame
|
|
28
|
+
Thumbnail.Root frame (a <div>; the child with asChild; a <button role="checkbox"> when selectable)
|
|
26
29
|
├─ Thumbnail.Image <img>, covers the frame; fades in when loaded, hidden on error
|
|
27
|
-
|
|
30
|
+
│ or Thumbnail.Video <video>, first frame or poster; play mark (the media disk) and duration (media shade)
|
|
31
|
+
├─ Thumbnail.Fallback icon or short label on the fill, under the image
|
|
32
|
+
└─ check Checkbox.Indicator in the start corner (selectable only)
|
|
28
33
|
```
|
|
29
34
|
|
|
30
35
|
## API
|
|
@@ -32,7 +37,7 @@ Thumbnail.Root frame: tier height, width from ratio, radius, palette fi
|
|
|
32
37
|
<!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
|
|
33
38
|
|
|
34
39
|
### Thumbnail.Root
|
|
35
|
-
`ref` → `HTMLDivElement
|
|
40
|
+
`ref` → `HTMLDivElement` (the `<button>` of a selectable tile, the child with `asChild`). The frame: height of the tier, width from `ratio`, radius, palette fill; tracks the image load for the Fallback.
|
|
36
41
|
|
|
37
42
|
| Prop | Type | Default | Description |
|
|
38
43
|
|---|---|---|---|
|
|
@@ -42,10 +47,14 @@ Thumbnail.Root frame: tier height, width from ratio, radius, palette fi
|
|
|
42
47
|
| `variant` | `"soft" \| "solid"` | `"soft"` | Fallback fill: a soft tint with a hue icon, or a solid hue with a contrasting icon. |
|
|
43
48
|
| `fullWidth` | `boolean` | `false` | Fills the container width (cards, galleries); the height follows `ratio`. |
|
|
44
49
|
| `ring` | `boolean` | `false` | A faint inner ring, for photos with a white background on a light surface. |
|
|
45
|
-
|
|
|
50
|
+
| `asChild` | `boolean` | `false` | Puts the frame, with hover, press and focus ring, on its one child — a `<button>` that opens a viewer or an `<a>` to the object. Name the child (`aria-label`) when the picture is all it shows. |
|
|
51
|
+
| `checked` | `boolean` | — | Selected (controlled). Any of the checked triad makes a selectable tile — a `<button role="checkbox">` with a check in the corner. Name it with `aria-label` or the image `alt`. |
|
|
52
|
+
| `defaultChecked` | `boolean` | — | Initially selected (uncontrolled); makes the tile selectable. |
|
|
53
|
+
| `onCheckedChange` | `(checked: boolean) => void` | — | Selection changed by click, Space or Enter; makes the tile selectable. |
|
|
54
|
+
| `…rest` | `Omit<HTMLAttributes<HTMLDivElement>, "color" \| "defaultChecked" \| "onChange">` | — | `className`, `aria-label` + `role` for a fallback-only thumbnail, and the other attributes of the frame. |
|
|
46
55
|
|
|
47
56
|
### Thumbnail.Image
|
|
48
|
-
`ref` → `HTMLImageElement`. The picture; hidden while it loads and after an error, so the Fallback shows through. A new `src` starts again.
|
|
57
|
+
`ref` → `HTMLImageElement`. The picture; hidden while it loads and after an error, so the Fallback shows through. A new `src` starts again. Loads lazily and decodes off the main thread (`loading="lazy"`, `decoding="async"`; pass either to override).
|
|
49
58
|
|
|
50
59
|
| Prop | Type | Default | Description |
|
|
51
60
|
|---|---|---|---|
|
|
@@ -54,6 +63,19 @@ Thumbnail.Root frame: tier height, width from ratio, radius, palette fi
|
|
|
54
63
|
| `fit` | `"cover" \| "contain"` | `"cover"` | `cover` crops to fill; `contain` shows the whole image on the fallback fill (logos). |
|
|
55
64
|
| `…rest` | `Omit<ImgHTMLAttributes<HTMLImageElement>, "src" \| "alt">` | — | `className`, `onLoad`, `onError` and the other img attributes. |
|
|
56
65
|
|
|
66
|
+
### Thumbnail.Video
|
|
67
|
+
`ref` → `HTMLVideoElement`. A video in the frame (`preload="metadata"`, `playsInline`); the Fallback shows until its first frame. Without `controls` it shows the duration, and a play mark while it is still (not looping, not playing).
|
|
68
|
+
|
|
69
|
+
| Prop | Type | Default | Description |
|
|
70
|
+
|---|---|---|---|
|
|
71
|
+
| `src` | `string` | — (required) | Video URL. Without a `poster` the first frame is asked for (`#t=0.001` is added when the URL has no fragment). |
|
|
72
|
+
| `poster` | `string` | — | A still shown before playing. |
|
|
73
|
+
| `controls` | `boolean` | `false` | Native controls: a video message or a clip to watch in place; no play mark or duration of the kit. |
|
|
74
|
+
| `autoPlay` | `boolean` | `false` | A GIF-like clip: plays muted, in a loop, inline. Off under `prefers-reduced-motion` (read once): the first frame stands still with the play mark. |
|
|
75
|
+
| `fit` | `"cover" \| "contain"` | `"cover"` | `cover` crops to fill; `contain` letterboxes on the fallback fill. |
|
|
76
|
+
| `formatDuration` | `(seconds: number) => string` | `m:ss (h:mm:ss from an hour)` | Display of the duration badge. |
|
|
77
|
+
| `…rest` | `Omit<VideoHTMLAttributes<HTMLVideoElement>, "src" \| "poster" \| "controls" \| "autoPlay" \| "muted" \| "loop" \| "children">` | — | `className`, `aria-label`, `onLoadedData`, `onError` and the other video attributes. |
|
|
78
|
+
|
|
57
79
|
### Thumbnail.Fallback
|
|
58
80
|
`ref` → `HTMLSpanElement`. A `<span>` with an icon (sized to the tier) or a short label on the fill; `aria-hidden` once the image has loaded.
|
|
59
81
|
|
|
@@ -97,6 +119,10 @@ Thumbnail.Root frame: tier height, width from ratio, radius, palette fi
|
|
|
97
119
|
|---|---|---|---|
|
|
98
120
|
| `fullWidth` | takes the container width, height from `ratio` | card covers, galleries | `false` |
|
|
99
121
|
| `ring` | faint inner ring | white-background photos on a light surface | `false` |
|
|
122
|
+
| `asChild` | the frame on a button or link: hover lift, press, focus ring | the preview opens a viewer or the object | `false` |
|
|
123
|
+
| `checked` triad | a checkbox tile: the check in the corner, an accent ring when selected | picking media in a library | — |
|
|
124
|
+
| `controls` (Video) | native video controls, no kit marks | a video message, a clip to watch in place | `false` |
|
|
125
|
+
| `autoPlay` (Video) | muted looping clip; still under reduced motion | GIF-like previews | `false` |
|
|
100
126
|
|
|
101
127
|
## States
|
|
102
128
|
| State | Driven by | DOM |
|
|
@@ -106,6 +132,10 @@ Thumbnail.Root frame: tier height, width from ratio, radius, palette fi
|
|
|
106
132
|
| loaded | image `load` | `data-status="loaded"`, the image fades in; Fallback `aria-hidden` |
|
|
107
133
|
| error | image `error` | `data-status="error"`, image hidden, Fallback visible |
|
|
108
134
|
| frame | props | `data-size`, `data-ratio`, `data-color`, `data-variant`, `data-full-width`, `data-ring` |
|
|
135
|
+
| video loading | `Thumbnail.Video` mounted | `data-status="loading"` until the first frame (`loadeddata`), then `loaded`; `error` falls back like an image |
|
|
136
|
+
| video still | no `controls`, not playing | a play mark in the centre (from `m`): the still media disk (`internal/mediaDisk`) — the look and size of the shade circle Button over media (40, a 20 glyph, `--prime-color-media-disk` under `--prime-media-disk-blur`), at 60% of a lower frame's height; the duration at the end corner (from `l` and `fullWidth`) on `--prime-color-media-shade` |
|
|
137
|
+
| hover / press / focus | `asChild` or selectable | `data-interactive`: lift on `--prime-shadow-overlay` (`@media (hover: hover)`), scale 0.98 while pressed (`fast`), focus ring |
|
|
138
|
+
| selected | `checked` | `aria-checked="true"`, `data-checked="true"`: an accent ring over the picture and a checked indicator; the indicator is always shown, never hover-only |
|
|
109
139
|
|
|
110
140
|
## Layout & spacing
|
|
111
141
|
- Thumbnail + text in a row: flex, `align-items: center`, gap `--prime-space-3`; the text column `min-width: 0` with `truncate`.
|
|
@@ -116,12 +146,17 @@ Thumbnail.Root frame: tier height, width from ratio, radius, palette fi
|
|
|
116
146
|
## Accessibility
|
|
117
147
|
|
|
118
148
|
### Keyboard
|
|
119
|
-
|
|
149
|
+
| Key | Action |
|
|
150
|
+
|---|---|
|
|
151
|
+
| `Tab` | Focuses a pressable (`asChild`) or selectable tile; a plain thumbnail takes no focus. |
|
|
152
|
+
| `Enter` · `Space` | Opens the object (`asChild`) or toggles a selectable tile. |
|
|
120
153
|
|
|
121
154
|
### ARIA
|
|
122
155
|
- Next to a name the thumbnail is decorative: keep `alt=""` (default) and mark fallback icons `aria-hidden`.
|
|
123
156
|
- Alone: give `Thumbnail.Image` a descriptive `alt`, or `role="img"` + `aria-label` on Root for a fallback-only thumbnail.
|
|
124
|
-
-
|
|
157
|
+
- A preview that opens the object is `asChild` on a `<button>` or `<a>`; name it (`aria-label`) when the picture is all it shows.
|
|
158
|
+
- A selectable tile is a `<button role="checkbox">` with `aria-checked`, named by `aria-label` or the image `alt`; its indicator is `aria-hidden`, and the state is not only color (the check).
|
|
159
|
+
- Name a `Thumbnail.Video` with `aria-label`; the play mark is decorative, the duration is text. Under `prefers-reduced-motion` an `autoPlay` clip stands still.
|
|
125
160
|
|
|
126
161
|
### Labels
|
|
127
162
|
<!-- Generated from api.ts by `bun run docs:build`. Edit api.ts, not this section. -->
|
|
@@ -138,13 +173,19 @@ No `labels`.
|
|
|
138
173
|
| [ratios.tsx](examples/ratios.tsx) | Every aspect ratio at the same height; keep one ratio per list — `ratio`. |
|
|
139
174
|
| [ring.tsx](examples/ring.tsx) | A faint inner ring for a white-background photo on a light surface, where the edge would vanish — `ring`. |
|
|
140
175
|
| [full-width.tsx](examples/full-width.tsx) | Covers in a card grid take the card width and keep 16:9, so every cover has one height — `fullWidth`. |
|
|
176
|
+
| [video.tsx](examples/video.tsx) | Videos in the frame: a walkthrough without a poster shows its first frame, a play mark and the duration; a short clip loops muted like a GIF; a video message plays in place with its controls — `Thumbnail.Video`, `autoPlay`, `controls`. |
|
|
177
|
+
| [pressable.tsx](examples/pressable.tsx) | Photos of a delivery that open a viewer: the frame is put on a button, so it lifts on hover, presses and takes the focus ring — `asChild`. |
|
|
178
|
+
| [controlled.tsx](examples/controlled.tsx) | A media library picks photos for a listing: each tile is a checkbox with its check in the corner, the selection lives in the parent and a button clears it — `checked`, `onCheckedChange`. |
|
|
141
179
|
|
|
142
180
|
## Mistakes
|
|
143
181
|
- `Avatar` for a product or vehicle → a circle crops the object; use `Thumbnail`.
|
|
144
182
|
- A `div` with a background image and fixed sizes → use `Thumbnail.Root` with `ratio` and `size`.
|
|
145
183
|
- Width or height in CSS → change `size`, `ratio` or `fullWidth`.
|
|
146
184
|
- No `Thumbnail.Fallback` → a broken image leaves an empty box; always add an icon.
|
|
185
|
+
- A `<button>` wrapped around a Thumbnail by hand → `asChild` on the root with the button as its child.
|
|
186
|
+
- A `<label>` with a checkbox laid over a tile → the checked triad on the root.
|
|
187
|
+
- A bare `<video>` sized in CSS next to thumbnails → `Thumbnail.Video` in the same frame.
|
|
147
188
|
|
|
148
189
|
## Related
|
|
149
|
-
- **Built from:**
|
|
150
|
-
- **See also:** [Avatar](../avatar/COMPONENT.md), [Card](../card/COMPONENT.md), [DataTable](../data-table/COMPONENT.md), [Select](../select/COMPONENT.md)
|
|
190
|
+
- **Built from:** [Checkbox](../checkbox/COMPONENT.md) (`Checkbox.Indicator` of a selectable tile), `internal/mediaDisk` (the play mark, one look with the shade circle [Button](../button/COMPONENT.md))
|
|
191
|
+
- **See also:** [Avatar](../avatar/COMPONENT.md), [Card](../card/COMPONENT.md), [DataTable](../data-table/COMPONENT.md), [Select](../select/COMPONENT.md), [FileUpload](../file-upload/COMPONENT.md) (`FileUpload.ItemPreview` is a Thumbnail; its tiles draw videos with `Thumbnail.Video`)
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/** A media library picks photos for a listing: each tile is a checkbox with its check in the corner, the selection lives in the parent and a button clears it — `checked`, `onCheckedChange`. */
|
|
2
|
+
import { Button, Icon, Thumbnail, Typography } from "prime-ui-kit";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
|
|
5
|
+
import styles from "./examples.module.css";
|
|
6
|
+
|
|
7
|
+
const LIBRARY = [
|
|
8
|
+
{ id: "hall", title: "Холл" },
|
|
9
|
+
{ id: "office", title: "Офис" },
|
|
10
|
+
{ id: "kitchen", title: "Кухня" },
|
|
11
|
+
{ id: "meeting", title: "Переговорная" },
|
|
12
|
+
{ id: "terrace", title: "Терраса" },
|
|
13
|
+
{ id: "parking", title: "Парковка" },
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
export default function ThumbnailControlledExample() {
|
|
17
|
+
const [selected, setSelected] = React.useState<ReadonlySet<string>>(new Set(["hall"]));
|
|
18
|
+
|
|
19
|
+
const toggle = (id: string, checked: boolean) =>
|
|
20
|
+
setSelected((current) => {
|
|
21
|
+
const next = new Set(current);
|
|
22
|
+
if (checked) next.add(id);
|
|
23
|
+
else next.delete(id);
|
|
24
|
+
return next;
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<div className={styles.library}>
|
|
29
|
+
<div className={styles.libraryBar}>
|
|
30
|
+
<Typography as="span" variant="body-s" tone="muted" aria-live="polite">
|
|
31
|
+
{selected.size === 0 ? "Ничего не выбрано" : `Выбрано: ${selected.size}`}
|
|
32
|
+
</Typography>
|
|
33
|
+
<Button.Root
|
|
34
|
+
variant="ghost"
|
|
35
|
+
tone="neutral"
|
|
36
|
+
disabled={selected.size === 0}
|
|
37
|
+
onClick={() => setSelected(new Set())}
|
|
38
|
+
>
|
|
39
|
+
Снять выбор
|
|
40
|
+
</Button.Root>
|
|
41
|
+
</div>
|
|
42
|
+
<div className={styles.libraryGrid}>
|
|
43
|
+
{LIBRARY.map((photo) => (
|
|
44
|
+
<Thumbnail.Root
|
|
45
|
+
key={photo.id}
|
|
46
|
+
fullWidth
|
|
47
|
+
ratio="4:3"
|
|
48
|
+
aria-label={photo.title}
|
|
49
|
+
checked={selected.has(photo.id)}
|
|
50
|
+
onCheckedChange={(checked) => toggle(photo.id, checked)}
|
|
51
|
+
>
|
|
52
|
+
<Thumbnail.Image src={`https://picsum.photos/seed/office-${photo.id}/240/180`} />
|
|
53
|
+
<Thumbnail.Fallback>
|
|
54
|
+
<Icon name="object.image" />
|
|
55
|
+
</Thumbnail.Fallback>
|
|
56
|
+
</Thumbnail.Root>
|
|
57
|
+
))}
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
);
|
|
61
|
+
}
|
|
@@ -38,6 +38,37 @@
|
|
|
38
38
|
grid-template-columns: repeat(auto-fill, minmax(min(100%, calc(var(--prime-space-16) * 3)), 1fr));
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
/* video.tsx: three videos side by side, wrapping on a narrow page. */
|
|
42
|
+
.media {
|
|
43
|
+
display: grid;
|
|
44
|
+
gap: var(--prime-space-4);
|
|
45
|
+
width: 100%;
|
|
46
|
+
grid-template-columns: repeat(auto-fill, minmax(min(100%, calc(var(--prime-space-16) * 3)), 1fr));
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/* controlled.tsx: the selection bar over a grid of tiles. */
|
|
50
|
+
.library {
|
|
51
|
+
display: grid;
|
|
52
|
+
gap: var(--prime-space-3);
|
|
53
|
+
width: min(100%, calc(var(--prime-space-24) * 5));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.libraryBar {
|
|
57
|
+
display: flex;
|
|
58
|
+
align-items: center;
|
|
59
|
+
justify-content: space-between;
|
|
60
|
+
gap: var(--prime-space-3);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.libraryGrid {
|
|
64
|
+
display: grid;
|
|
65
|
+
gap: var(--prime-space-3);
|
|
66
|
+
grid-template-columns: repeat(
|
|
67
|
+
auto-fill,
|
|
68
|
+
minmax(min(100%, calc(var(--prime-space-24) * 1.25)), 1fr)
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
|
|
41
72
|
.cardContent {
|
|
42
73
|
display: grid;
|
|
43
74
|
gap: var(--prime-space-3);
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
/** Covers in a card grid take the card width and keep 16:9, so every cover has one height — `fullWidth`. */
|
|
2
|
-
import {
|
|
3
|
-
import { Card, createIcon, type PaletteColor, Thumbnail, Typography } from "prime-ui-kit";
|
|
2
|
+
import { Card, Icon, type PaletteColor, Thumbnail, Typography } from "prime-ui-kit";
|
|
4
3
|
|
|
5
4
|
import styles from "./examples.module.css";
|
|
6
5
|
|
|
7
|
-
const IconBike = createIcon(Bike);
|
|
8
|
-
|
|
9
6
|
const BIKES: { id: string; title: string; meta: string; color: PaletteColor; photo?: string }[] = [
|
|
10
7
|
{ id: "1", title: "Honda ADV 350", meta: "2026 · 5672", color: "red" },
|
|
11
8
|
{
|
|
@@ -28,7 +25,7 @@ export default function ThumbnailFullWidthExample() {
|
|
|
28
25
|
<Thumbnail.Root ratio="16:9" color={bike.color} fullWidth>
|
|
29
26
|
{bike.photo ? <Thumbnail.Image src={bike.photo} /> : null}
|
|
30
27
|
<Thumbnail.Fallback>
|
|
31
|
-
<
|
|
28
|
+
<Icon name="object.bike" />
|
|
32
29
|
</Thumbnail.Fallback>
|
|
33
30
|
</Thumbnail.Root>
|
|
34
31
|
<div className={styles.entityText}>
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
/** A vehicle next to its name: the photo with an icon fallback underneath — `Thumbnail.Image`, `Thumbnail.Fallback`, `ratio`. */
|
|
2
|
-
import {
|
|
3
|
-
import { createIcon, Thumbnail, Typography } from "prime-ui-kit";
|
|
2
|
+
import { Icon, Thumbnail, Typography } from "prime-ui-kit";
|
|
4
3
|
|
|
5
4
|
import styles from "./examples.module.css";
|
|
6
5
|
|
|
7
|
-
/** A domain glyph the kit lacks, turned into a kit icon once. */
|
|
8
|
-
const IconBike = createIcon(Bike);
|
|
9
|
-
|
|
10
6
|
const PHOTO = "https://picsum.photos/seed/nmax/320/180";
|
|
11
7
|
|
|
12
8
|
export default function ThumbnailOverviewExample() {
|
|
@@ -15,7 +11,7 @@ export default function ThumbnailOverviewExample() {
|
|
|
15
11
|
<Thumbnail.Root ratio="16:9" color="gray">
|
|
16
12
|
<Thumbnail.Image src={PHOTO} />
|
|
17
13
|
<Thumbnail.Fallback>
|
|
18
|
-
<
|
|
14
|
+
<Icon name="object.bike" />
|
|
19
15
|
</Thumbnail.Fallback>
|
|
20
16
|
</Thumbnail.Root>
|
|
21
17
|
<div className={styles.entityText}>
|