@misoto22/kioku-ui 0.0.0 → 0.2.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/dist/Alert/Alert.js +1 -0
- package/dist/AlertDialog/AlertDialog.d.ts +8 -0
- package/dist/AlertDialog/AlertDialog.doc.d.ts +11 -0
- package/dist/AlertDialog/AlertDialog.doc.js +30 -0
- package/dist/AlertDialog/AlertDialog.js +16 -0
- package/dist/AlertDialog/index.d.ts +1 -0
- package/dist/AlertDialog/index.js +2 -0
- package/dist/AppShell/AppShell.d.ts +19 -0
- package/dist/AppShell/AppShell.doc.d.ts +11 -0
- package/dist/AppShell/AppShell.doc.js +36 -0
- package/dist/AppShell/AppShell.js +61 -0
- package/dist/AppShell/index.d.ts +1 -0
- package/dist/AppShell/index.js +2 -0
- package/dist/AspectRatio/AspectRatio.d.ts +11 -0
- package/dist/AspectRatio/AspectRatio.doc.d.ts +11 -0
- package/dist/AspectRatio/AspectRatio.doc.js +15 -0
- package/dist/AspectRatio/AspectRatio.js +30 -0
- package/dist/AspectRatio/index.d.ts +1 -0
- package/dist/AspectRatio/index.js +2 -0
- package/dist/AsyncState/AsyncState.js +14 -1
- package/dist/Avatar/Avatar.d.ts +14 -0
- package/dist/{components/Button.doc.d.ts → Avatar/Avatar.doc.d.ts} +1 -1
- package/dist/Avatar/Avatar.doc.js +18 -0
- package/dist/Avatar/Avatar.js +98 -0
- package/dist/Avatar/index.d.ts +1 -0
- package/dist/Avatar/index.js +2 -0
- package/dist/AvatarGroup/AvatarGroup.d.ts +20 -0
- package/dist/AvatarGroup/AvatarGroup.doc.d.ts +11 -0
- package/dist/AvatarGroup/AvatarGroup.doc.js +21 -0
- package/dist/AvatarGroup/AvatarGroup.js +99 -0
- package/dist/AvatarGroup/index.d.ts +1 -0
- package/dist/AvatarGroup/index.js +2 -0
- package/dist/Badge/Badge.js +1 -0
- package/dist/Banner/Banner.d.ts +14 -0
- package/dist/Banner/Banner.doc.d.ts +11 -0
- package/dist/Banner/Banner.doc.js +18 -0
- package/dist/Banner/Banner.js +85 -0
- package/dist/Banner/index.d.ts +1 -0
- package/dist/Banner/index.js +2 -0
- package/dist/Blockquote/Blockquote.d.ts +11 -0
- package/dist/Blockquote/Blockquote.doc.d.ts +11 -0
- package/dist/Blockquote/Blockquote.doc.js +15 -0
- package/dist/Blockquote/Blockquote.js +28 -0
- package/dist/Blockquote/index.d.ts +1 -0
- package/dist/Blockquote/index.js +2 -0
- package/dist/BottomSheet/BottomSheet.d.ts +13 -0
- package/dist/BottomSheet/BottomSheet.doc.d.ts +11 -0
- package/dist/BottomSheet/BottomSheet.doc.js +21 -0
- package/dist/BottomSheet/BottomSheet.js +68 -0
- package/dist/BottomSheet/index.d.ts +1 -0
- package/dist/BottomSheet/index.js +2 -0
- package/dist/BottomSheetSwitcher/BottomSheetSwitcher.d.ts +35 -0
- package/dist/BottomSheetSwitcher/BottomSheetSwitcher.doc.d.ts +11 -0
- package/dist/BottomSheetSwitcher/BottomSheetSwitcher.doc.js +30 -0
- package/dist/BottomSheetSwitcher/BottomSheetSwitcher.js +104 -0
- package/dist/BottomSheetSwitcher/index.d.ts +1 -0
- package/dist/BottomSheetSwitcher/index.js +2 -0
- package/dist/Box/Box.d.ts +53 -0
- package/dist/{components/Card.doc.d.ts → Box/Box.doc.d.ts} +1 -1
- package/dist/Box/Box.doc.js +21 -0
- package/dist/Box/Box.js +120 -0
- package/dist/Box/index.d.ts +1 -0
- package/dist/Box/index.js +2 -0
- package/dist/Breadcrumbs/Breadcrumbs.d.ts +17 -0
- package/dist/Breadcrumbs/Breadcrumbs.doc.d.ts +11 -0
- package/dist/Breadcrumbs/Breadcrumbs.doc.js +18 -0
- package/dist/Breadcrumbs/Breadcrumbs.js +64 -0
- package/dist/Breadcrumbs/index.d.ts +1 -0
- package/dist/Breadcrumbs/index.js +2 -0
- package/dist/Button/Button.js +19 -8
- package/dist/ButtonGroup/ButtonGroup.d.ts +13 -0
- package/dist/ButtonGroup/ButtonGroup.doc.d.ts +11 -0
- package/dist/ButtonGroup/ButtonGroup.doc.js +18 -0
- package/dist/ButtonGroup/ButtonGroup.js +52 -0
- package/dist/ButtonGroup/index.d.ts +1 -0
- package/dist/ButtonGroup/index.js +2 -0
- package/dist/Calendar/Calendar.d.ts +27 -0
- package/dist/Calendar/Calendar.doc.d.ts +11 -0
- package/dist/Calendar/Calendar.doc.js +33 -0
- package/dist/Calendar/Calendar.js +307 -0
- package/dist/Calendar/index.d.ts +1 -0
- package/dist/Calendar/index.js +2 -0
- package/dist/Card/Card.js +1 -1
- package/dist/CardFooter/CardFooter.js +1 -1
- package/dist/CardHeader/CardHeader.js +1 -1
- package/dist/Carousel/Carousel.d.ts +14 -0
- package/dist/Carousel/Carousel.doc.d.ts +11 -0
- package/dist/Carousel/Carousel.doc.js +21 -0
- package/dist/Carousel/Carousel.js +117 -0
- package/dist/Carousel/index.d.ts +1 -0
- package/dist/Carousel/index.js +2 -0
- package/dist/Chat/Chat.d.ts +83 -0
- package/dist/{components/Table.doc.d.ts → Chat/Chat.doc.d.ts} +11 -26
- package/dist/Chat/Chat.doc.js +99 -0
- package/dist/Chat/Chat.js +361 -0
- package/dist/Chat/index.d.ts +1 -0
- package/dist/Chat/index.js +2 -0
- package/dist/CheckboxInput/CheckboxInput.d.ts +24 -0
- package/dist/CheckboxInput/CheckboxInput.doc.d.ts +11 -0
- package/dist/CheckboxInput/CheckboxInput.doc.js +27 -0
- package/dist/CheckboxInput/CheckboxInput.js +173 -0
- package/dist/CheckboxInput/index.d.ts +1 -0
- package/dist/CheckboxInput/index.js +2 -0
- package/dist/CheckboxList/CheckboxList.d.ts +30 -0
- package/dist/CheckboxList/CheckboxList.doc.d.ts +11 -0
- package/dist/CheckboxList/CheckboxList.doc.js +24 -0
- package/dist/CheckboxList/CheckboxList.js +60 -0
- package/dist/CheckboxList/index.d.ts +1 -0
- package/dist/CheckboxList/index.js +2 -0
- package/dist/Citation/Citation.d.ts +13 -0
- package/dist/Citation/Citation.doc.d.ts +11 -0
- package/dist/Citation/Citation.doc.js +18 -0
- package/dist/Citation/Citation.js +36 -0
- package/dist/Citation/index.d.ts +1 -0
- package/dist/Citation/index.js +2 -0
- package/dist/ClickableCard/ClickableCard.d.ts +10 -0
- package/dist/ClickableCard/ClickableCard.doc.d.ts +11 -0
- package/dist/ClickableCard/ClickableCard.doc.js +12 -0
- package/dist/ClickableCard/ClickableCard.js +24 -0
- package/dist/ClickableCard/index.d.ts +1 -0
- package/dist/ClickableCard/index.js +2 -0
- package/dist/Code/Code.d.ts +5 -0
- package/dist/{components/Text.doc.d.ts → Code/Code.doc.d.ts} +1 -1
- package/dist/Code/Code.doc.js +12 -0
- package/dist/Code/Code.js +19 -0
- package/dist/Code/index.d.ts +1 -0
- package/dist/Code/index.js +2 -0
- package/dist/CodeBlock/CodeBlock.d.ts +19 -0
- package/dist/CodeBlock/CodeBlock.doc.d.ts +11 -0
- package/dist/CodeBlock/CodeBlock.doc.js +24 -0
- package/dist/CodeBlock/CodeBlock.js +88 -0
- package/dist/CodeBlock/index.d.ts +1 -0
- package/dist/CodeBlock/index.js +2 -0
- package/dist/Collapsible/Collapsible.d.ts +23 -0
- package/dist/Collapsible/Collapsible.doc.d.ts +11 -0
- package/dist/Collapsible/Collapsible.doc.js +24 -0
- package/dist/Collapsible/Collapsible.js +93 -0
- package/dist/Collapsible/index.d.ts +1 -0
- package/dist/Collapsible/index.js +2 -0
- package/dist/CommandPalette/CommandPalette.d.ts +24 -0
- package/dist/CommandPalette/CommandPalette.doc.d.ts +11 -0
- package/dist/CommandPalette/CommandPalette.doc.js +30 -0
- package/dist/CommandPalette/CommandPalette.js +182 -0
- package/dist/CommandPalette/index.d.ts +1 -0
- package/dist/CommandPalette/index.js +2 -0
- package/dist/ComplexSelector/ComplexSelector.d.ts +30 -0
- package/dist/ComplexSelector/ComplexSelector.doc.d.ts +11 -0
- package/dist/ComplexSelector/ComplexSelector.doc.js +24 -0
- package/dist/ComplexSelector/ComplexSelector.js +83 -0
- package/dist/ComplexSelector/index.d.ts +1 -0
- package/dist/ComplexSelector/index.js +2 -0
- package/dist/ContextMenu/ContextMenu.d.ts +13 -0
- package/dist/ContextMenu/ContextMenu.doc.d.ts +11 -0
- package/dist/ContextMenu/ContextMenu.doc.js +18 -0
- package/dist/ContextMenu/ContextMenu.js +52 -0
- package/dist/ContextMenu/index.d.ts +1 -0
- package/dist/ContextMenu/index.js +2 -0
- package/dist/DateInput/DateInput.d.ts +5 -0
- package/dist/DateInput/DateInput.doc.d.ts +11 -0
- package/dist/DateInput/DateInput.doc.js +18 -0
- package/dist/DateInput/DateInput.js +12 -0
- package/dist/DateInput/TemporalInput.d.ts +34 -0
- package/dist/DateInput/TemporalInput.js +169 -0
- package/dist/DateInput/index.d.ts +2 -0
- package/dist/DateInput/index.js +3 -0
- package/dist/DatePicker/DatePicker.d.ts +38 -0
- package/dist/{components/AsyncState.doc.d.ts → DatePicker/DatePicker.doc.d.ts} +1 -1
- package/dist/DatePicker/DatePicker.doc.js +31 -0
- package/dist/DatePicker/DatePicker.js +111 -0
- package/dist/DatePicker/index.d.ts +1 -0
- package/dist/DatePicker/index.js +2 -0
- package/dist/DateRangeInput/DateRangeInput.d.ts +34 -0
- package/dist/DateRangeInput/DateRangeInput.doc.d.ts +11 -0
- package/dist/DateRangeInput/DateRangeInput.doc.js +27 -0
- package/dist/DateRangeInput/DateRangeInput.js +108 -0
- package/dist/DateRangeInput/index.d.ts +1 -0
- package/dist/DateRangeInput/index.js +2 -0
- package/dist/DateTimeInput/DateTimeInput.d.ts +5 -0
- package/dist/DateTimeInput/DateTimeInput.doc.d.ts +11 -0
- package/dist/DateTimeInput/DateTimeInput.doc.js +18 -0
- package/dist/DateTimeInput/DateTimeInput.js +12 -0
- package/dist/DateTimeInput/index.d.ts +1 -0
- package/dist/DateTimeInput/index.js +2 -0
- package/dist/Dialog/Dialog.d.ts +23 -0
- package/dist/Dialog/Dialog.doc.d.ts +11 -0
- package/dist/Dialog/Dialog.doc.js +33 -0
- package/dist/Dialog/Dialog.js +152 -0
- package/dist/Dialog/index.d.ts +1 -0
- package/dist/Dialog/index.js +2 -0
- package/dist/DropdownMenu/DropdownMenu.d.ts +25 -0
- package/dist/DropdownMenu/DropdownMenu.doc.d.ts +22 -0
- package/dist/DropdownMenu/DropdownMenu.doc.js +47 -0
- package/dist/DropdownMenu/DropdownMenu.js +114 -0
- package/dist/DropdownMenu/index.d.ts +1 -0
- package/dist/DropdownMenu/index.js +2 -0
- package/dist/EmptyState/EmptyState.js +4 -4
- package/dist/Eyebrow/Eyebrow.d.ts +13 -0
- package/dist/Eyebrow/Eyebrow.doc.d.ts +11 -0
- package/dist/Eyebrow/Eyebrow.doc.js +15 -0
- package/dist/Eyebrow/Eyebrow.js +47 -0
- package/dist/Eyebrow/index.d.ts +1 -0
- package/dist/Eyebrow/index.js +2 -0
- package/dist/Field/Field.js +15 -7
- package/dist/FieldStatus/FieldStatus.d.ts +13 -0
- package/dist/FieldStatus/FieldStatus.doc.d.ts +11 -0
- package/dist/FieldStatus/FieldStatus.doc.js +15 -0
- package/dist/FieldStatus/FieldStatus.js +68 -0
- package/dist/FieldStatus/index.d.ts +1 -0
- package/dist/FieldStatus/index.js +2 -0
- package/dist/FileInput/FileInput.d.ts +10 -0
- package/dist/FileInput/FileInput.doc.d.ts +11 -0
- package/dist/FileInput/FileInput.doc.js +12 -0
- package/dist/FileInput/FileInput.js +74 -0
- package/dist/FileInput/index.d.ts +1 -0
- package/dist/FileInput/index.js +2 -0
- package/dist/FormLayout/FormLayout.d.ts +14 -0
- package/dist/FormLayout/FormLayout.doc.d.ts +11 -0
- package/dist/FormLayout/FormLayout.doc.js +18 -0
- package/dist/FormLayout/FormLayout.js +40 -0
- package/dist/FormLayout/index.d.ts +1 -0
- package/dist/FormLayout/index.js +2 -0
- package/dist/HStack/HStack.d.ts +15 -0
- package/dist/HStack/HStack.doc.d.ts +11 -0
- package/dist/HStack/HStack.doc.js +21 -0
- package/dist/{components/Stack.js → HStack/HStack.js} +47 -6
- package/dist/HStack/index.d.ts +1 -0
- package/dist/HStack/index.js +2 -0
- package/dist/Heading/Heading.js +4 -1
- package/dist/HoverCard/HoverCard.d.ts +31 -0
- package/dist/HoverCard/HoverCard.doc.d.ts +11 -0
- package/dist/HoverCard/HoverCard.doc.js +30 -0
- package/dist/HoverCard/HoverCard.js +77 -0
- package/dist/HoverCard/index.d.ts +1 -0
- package/dist/HoverCard/index.js +2 -0
- package/dist/Icon/Icon.d.ts +16 -0
- package/dist/{components/Grid.doc.d.ts → Icon/Icon.doc.d.ts} +1 -1
- package/dist/Icon/Icon.doc.js +18 -0
- package/dist/Icon/Icon.js +91 -0
- package/dist/Icon/index.d.ts +1 -0
- package/dist/Icon/index.js +2 -0
- package/dist/Indicator/Indicator.d.ts +15 -0
- package/dist/Indicator/Indicator.doc.d.ts +11 -0
- package/dist/Indicator/Indicator.doc.js +24 -0
- package/dist/Indicator/Indicator.js +90 -0
- package/dist/Indicator/index.d.ts +1 -0
- package/dist/Indicator/index.js +2 -0
- package/dist/InputGroup/InputGroup.d.ts +12 -0
- package/dist/InputGroup/InputGroup.doc.d.ts +11 -0
- package/dist/InputGroup/InputGroup.doc.js +18 -0
- package/dist/InputGroup/InputGroup.js +41 -0
- package/dist/InputGroup/index.d.ts +1 -0
- package/dist/InputGroup/index.js +2 -0
- package/dist/Item/Item.d.ts +12 -0
- package/dist/{components/Badge.doc.d.ts → Item/Item.doc.d.ts} +1 -1
- package/dist/Item/Item.doc.js +18 -0
- package/dist/Item/Item.js +50 -0
- package/dist/Item/index.d.ts +1 -0
- package/dist/Item/index.js +2 -0
- package/dist/Kbd/Kbd.d.ts +5 -0
- package/dist/Kbd/Kbd.doc.d.ts +11 -0
- package/dist/Kbd/Kbd.doc.js +12 -0
- package/dist/Kbd/Kbd.js +19 -0
- package/dist/Kbd/index.d.ts +1 -0
- package/dist/Kbd/index.js +2 -0
- package/dist/Layer/Layer.d.ts +19 -0
- package/dist/{components/Alert.doc.d.ts → Layer/Layer.doc.d.ts} +1 -1
- package/dist/Layer/Layer.doc.js +15 -0
- package/dist/Layer/Layer.js +32 -0
- package/dist/Layer/index.d.ts +1 -0
- package/dist/Layer/index.js +2 -0
- package/dist/Layout/Layout.d.ts +26 -0
- package/dist/Layout/Layout.doc.d.ts +11 -0
- package/dist/Layout/Layout.doc.js +36 -0
- package/dist/Layout/Layout.js +108 -0
- package/dist/Layout/index.d.ts +1 -0
- package/dist/Layout/index.js +2 -0
- package/dist/Lightbox/Lightbox.d.ts +14 -0
- package/dist/Lightbox/Lightbox.doc.d.ts +11 -0
- package/dist/Lightbox/Lightbox.doc.js +24 -0
- package/dist/Lightbox/Lightbox.js +80 -0
- package/dist/Lightbox/index.d.ts +1 -0
- package/dist/Lightbox/index.js +2 -0
- package/dist/List/List.d.ts +18 -0
- package/dist/List/List.doc.d.ts +22 -0
- package/dist/List/List.doc.js +26 -0
- package/dist/List/List.js +113 -0
- package/dist/List/index.d.ts +1 -0
- package/dist/List/index.js +2 -0
- package/dist/Markdown/Markdown.d.ts +11 -0
- package/dist/Markdown/Markdown.doc.d.ts +11 -0
- package/dist/Markdown/Markdown.doc.js +12 -0
- package/dist/Markdown/Markdown.js +90 -0
- package/dist/Markdown/index.d.ts +2 -0
- package/dist/Markdown/index.js +3 -0
- package/dist/Markdown/parse.d.ts +42 -0
- package/dist/Markdown/parse.js +128 -0
- package/dist/MetadataList/MetadataList.d.ts +18 -0
- package/dist/MetadataList/MetadataList.doc.d.ts +11 -0
- package/dist/MetadataList/MetadataList.doc.js +15 -0
- package/dist/MetadataList/MetadataList.js +93 -0
- package/dist/MetadataList/index.d.ts +1 -0
- package/dist/MetadataList/index.js +2 -0
- package/dist/MetricGrid/MetricGrid.js +5 -5
- package/dist/MobileNav/MobileNav.d.ts +13 -0
- package/dist/MobileNav/MobileNav.doc.d.ts +11 -0
- package/dist/MobileNav/MobileNav.doc.js +21 -0
- package/dist/MobileNav/MobileNav.js +126 -0
- package/dist/MobileNav/index.d.ts +1 -0
- package/dist/MobileNav/index.js +2 -0
- package/dist/MoreMenu/MoreMenu.d.ts +14 -0
- package/dist/MoreMenu/MoreMenu.doc.d.ts +11 -0
- package/dist/MoreMenu/MoreMenu.doc.js +21 -0
- package/dist/MoreMenu/MoreMenu.js +68 -0
- package/dist/MoreMenu/index.d.ts +1 -0
- package/dist/MoreMenu/index.js +2 -0
- package/dist/MultiSelector/MultiSelector.d.ts +17 -0
- package/dist/MultiSelector/MultiSelector.doc.d.ts +11 -0
- package/dist/MultiSelector/MultiSelector.doc.js +27 -0
- package/dist/MultiSelector/MultiSelector.js +58 -0
- package/dist/MultiSelector/index.d.ts +1 -0
- package/dist/MultiSelector/index.js +2 -0
- package/dist/NavIcon/NavIcon.d.ts +10 -0
- package/dist/NavIcon/NavIcon.doc.d.ts +11 -0
- package/dist/NavIcon/NavIcon.doc.js +12 -0
- package/dist/NavIcon/NavIcon.js +21 -0
- package/dist/NavIcon/index.d.ts +1 -0
- package/dist/NavIcon/index.js +2 -0
- package/dist/NavItem/NavItem.d.ts +13 -0
- package/dist/NavItem/NavItem.doc.d.ts +11 -0
- package/dist/NavItem/NavItem.doc.js +18 -0
- package/dist/NavItem/NavItem.js +62 -0
- package/dist/NavItem/index.d.ts +1 -0
- package/dist/NavItem/index.js +2 -0
- package/dist/NavMenu/NavMenu.d.ts +13 -0
- package/dist/NavMenu/NavMenu.doc.d.ts +11 -0
- package/dist/NavMenu/NavMenu.doc.js +18 -0
- package/dist/NavMenu/NavMenu.js +58 -0
- package/dist/NavMenu/index.d.ts +2 -0
- package/dist/NavMenu/index.js +5 -0
- package/dist/NavMenu/orientation.d.ts +4 -0
- package/dist/NavMenu/orientation.js +17 -0
- package/dist/NumberInput/NumberInput.d.ts +21 -0
- package/dist/NumberInput/NumberInput.doc.d.ts +11 -0
- package/dist/NumberInput/NumberInput.doc.js +18 -0
- package/dist/NumberInput/NumberInput.js +136 -0
- package/dist/NumberInput/index.d.ts +1 -0
- package/dist/NumberInput/index.js +2 -0
- package/dist/Numeral/Numeral.d.ts +10 -0
- package/dist/Numeral/Numeral.doc.d.ts +11 -0
- package/dist/Numeral/Numeral.doc.js +12 -0
- package/dist/Numeral/Numeral.js +24 -0
- package/dist/Numeral/index.d.ts +1 -0
- package/dist/Numeral/index.js +2 -0
- package/dist/Outline/Outline.d.ts +18 -0
- package/dist/Outline/Outline.doc.d.ts +11 -0
- package/dist/Outline/Outline.doc.js +18 -0
- package/dist/Outline/Outline.js +98 -0
- package/dist/Outline/index.d.ts +1 -0
- package/dist/Outline/index.js +2 -0
- package/dist/OverflowList/OverflowList.d.ts +19 -0
- package/dist/OverflowList/OverflowList.doc.d.ts +11 -0
- package/dist/OverflowList/OverflowList.doc.js +18 -0
- package/dist/OverflowList/OverflowList.js +81 -0
- package/dist/OverflowList/index.d.ts +1 -0
- package/dist/OverflowList/index.js +2 -0
- package/dist/Overlay/Overlay.d.ts +17 -0
- package/dist/Overlay/Overlay.doc.d.ts +11 -0
- package/dist/Overlay/Overlay.doc.js +30 -0
- package/dist/Overlay/Overlay.js +74 -0
- package/dist/Overlay/index.d.ts +1 -0
- package/dist/Overlay/index.js +2 -0
- package/dist/Pagination/Pagination.d.ts +14 -0
- package/dist/Pagination/Pagination.doc.d.ts +11 -0
- package/dist/Pagination/Pagination.doc.js +24 -0
- package/dist/Pagination/Pagination.js +128 -0
- package/dist/Pagination/index.d.ts +1 -0
- package/dist/Pagination/index.js +2 -0
- package/dist/Popover/Popover.d.ts +17 -0
- package/dist/Popover/Popover.doc.d.ts +11 -0
- package/dist/Popover/Popover.doc.js +30 -0
- package/dist/Popover/Popover.js +93 -0
- package/dist/Popover/index.d.ts +1 -0
- package/dist/Popover/index.js +2 -0
- package/dist/PowerSearch/PowerSearch.d.ts +22 -0
- package/dist/PowerSearch/PowerSearch.doc.d.ts +11 -0
- package/dist/PowerSearch/PowerSearch.doc.js +27 -0
- package/dist/PowerSearch/PowerSearch.js +108 -0
- package/dist/PowerSearch/index.d.ts +1 -0
- package/dist/PowerSearch/index.js +2 -0
- package/dist/ProgressBar/ProgressBar.d.ts +12 -0
- package/dist/ProgressBar/ProgressBar.doc.d.ts +11 -0
- package/dist/ProgressBar/ProgressBar.doc.js +18 -0
- package/dist/ProgressBar/ProgressBar.js +51 -0
- package/dist/ProgressBar/index.d.ts +1 -0
- package/dist/ProgressBar/index.js +2 -0
- package/dist/RadioList/RadioList.d.ts +30 -0
- package/dist/RadioList/RadioList.doc.d.ts +11 -0
- package/dist/RadioList/RadioList.doc.js +24 -0
- package/dist/RadioList/RadioList.js +130 -0
- package/dist/RadioList/index.d.ts +1 -0
- package/dist/RadioList/index.js +2 -0
- package/dist/Resizable/Resizable.d.ts +18 -0
- package/dist/Resizable/Resizable.doc.d.ts +11 -0
- package/dist/Resizable/Resizable.doc.js +33 -0
- package/dist/Resizable/Resizable.js +100 -0
- package/dist/Resizable/index.d.ts +1 -0
- package/dist/Resizable/index.js +2 -0
- package/dist/ResizeHandle/ResizeHandle.d.ts +23 -0
- package/dist/ResizeHandle/ResizeHandle.doc.d.ts +11 -0
- package/dist/ResizeHandle/ResizeHandle.doc.js +30 -0
- package/dist/ResizeHandle/ResizeHandle.js +118 -0
- package/dist/ResizeHandle/index.d.ts +1 -0
- package/dist/ResizeHandle/index.js +2 -0
- package/dist/SegmentedControl/SegmentedControl.js +4 -4
- package/dist/SelectableCard/SelectableCard.d.ts +25 -0
- package/dist/SelectableCard/SelectableCard.doc.d.ts +11 -0
- package/dist/SelectableCard/SelectableCard.doc.js +18 -0
- package/dist/SelectableCard/SelectableCard.js +178 -0
- package/dist/SelectableCard/index.d.ts +1 -0
- package/dist/SelectableCard/index.js +2 -0
- package/dist/Selector/Selector.d.ts +29 -0
- package/dist/Selector/Selector.doc.d.ts +11 -0
- package/dist/Selector/Selector.doc.js +24 -0
- package/dist/Selector/Selector.js +83 -0
- package/dist/Selector/index.d.ts +1 -0
- package/dist/Selector/index.js +2 -0
- package/dist/SideNav/SideNav.d.ts +15 -0
- package/dist/SideNav/SideNav.doc.d.ts +22 -0
- package/dist/SideNav/SideNav.doc.js +29 -0
- package/dist/SideNav/SideNav.js +51 -0
- package/dist/SideNav/index.d.ts +1 -0
- package/dist/SideNav/index.js +2 -0
- package/dist/Skeleton/Skeleton.doc.js +1 -1
- package/dist/Skeleton/Skeleton.js +1 -2
- package/dist/Slider/Slider.d.ts +27 -0
- package/dist/Slider/Slider.doc.d.ts +11 -0
- package/dist/Slider/Slider.doc.js +30 -0
- package/dist/Slider/Slider.js +133 -0
- package/dist/Slider/index.d.ts +1 -0
- package/dist/Slider/index.js +2 -0
- package/dist/Spinner/Spinner.js +5 -1
- package/dist/StatusDot/StatusDot.d.ts +2 -2
- package/dist/StatusDot/StatusDot.js +8 -0
- package/dist/Switch/Switch.d.ts +9 -0
- package/dist/Switch/Switch.doc.d.ts +11 -0
- package/dist/Switch/Switch.doc.js +21 -0
- package/dist/Switch/Switch.js +86 -0
- package/dist/Switch/index.d.ts +1 -0
- package/dist/Switch/index.js +2 -0
- package/dist/TabList/TabList.d.ts +25 -0
- package/dist/TabList/TabList.doc.d.ts +11 -0
- package/dist/TabList/TabList.doc.js +21 -0
- package/dist/TabList/TabList.js +79 -0
- package/dist/TabList/index.d.ts +1 -0
- package/dist/TabList/index.js +2 -0
- package/dist/Table/Table.d.ts +16 -6
- package/dist/Table/Table.doc.d.ts +12 -4
- package/dist/Table/Table.doc.js +9 -0
- package/dist/Table/Table.js +78 -14
- package/dist/Text/Text.js +1 -0
- package/dist/TextArea/TextArea.js +9 -4
- package/dist/TextInput/TextInput.js +4 -4
- package/dist/Thumbnail/Thumbnail.d.ts +15 -0
- package/dist/Thumbnail/Thumbnail.doc.d.ts +11 -0
- package/dist/Thumbnail/Thumbnail.doc.js +21 -0
- package/dist/Thumbnail/Thumbnail.js +95 -0
- package/dist/Thumbnail/index.d.ts +1 -0
- package/dist/Thumbnail/index.js +2 -0
- package/dist/TimeInput/TimeInput.d.ts +5 -0
- package/dist/TimeInput/TimeInput.doc.d.ts +11 -0
- package/dist/TimeInput/TimeInput.doc.js +18 -0
- package/dist/TimeInput/TimeInput.js +12 -0
- package/dist/TimeInput/index.d.ts +1 -0
- package/dist/TimeInput/index.js +2 -0
- package/dist/Timestamp/Timestamp.d.ts +11 -0
- package/dist/Timestamp/Timestamp.doc.d.ts +11 -0
- package/dist/Timestamp/Timestamp.doc.js +15 -0
- package/dist/Timestamp/Timestamp.js +33 -0
- package/dist/Timestamp/index.d.ts +1 -0
- package/dist/Timestamp/index.js +2 -0
- package/dist/Toast/Toast.d.ts +36 -0
- package/dist/Toast/Toast.doc.d.ts +22 -0
- package/dist/Toast/Toast.doc.js +35 -0
- package/dist/Toast/Toast.js +234 -0
- package/dist/Toast/index.d.ts +1 -0
- package/dist/Toast/index.js +2 -0
- package/dist/Toggle/Toggle.js +26 -8
- package/dist/ToggleButton/ToggleButton.d.ts +24 -0
- package/dist/ToggleButton/ToggleButton.doc.d.ts +11 -0
- package/dist/ToggleButton/ToggleButton.doc.js +21 -0
- package/dist/ToggleButton/ToggleButton.js +125 -0
- package/dist/ToggleButton/index.d.ts +1 -0
- package/dist/ToggleButton/index.js +2 -0
- package/dist/ToggleButtonGroup/ToggleButtonGroup.d.ts +37 -0
- package/dist/ToggleButtonGroup/ToggleButtonGroup.doc.d.ts +11 -0
- package/dist/ToggleButtonGroup/ToggleButtonGroup.doc.js +30 -0
- package/dist/ToggleButtonGroup/ToggleButtonGroup.js +84 -0
- package/dist/ToggleButtonGroup/index.d.ts +1 -0
- package/dist/ToggleButtonGroup/index.js +2 -0
- package/dist/Token/Token.d.ts +14 -0
- package/dist/Token/Token.doc.d.ts +11 -0
- package/dist/Token/Token.doc.js +21 -0
- package/dist/Token/Token.js +57 -0
- package/dist/Token/index.d.ts +1 -0
- package/dist/Token/index.js +2 -0
- package/dist/Tokenizer/Tokenizer.d.ts +16 -0
- package/dist/Tokenizer/Tokenizer.doc.d.ts +11 -0
- package/dist/Tokenizer/Tokenizer.doc.js +24 -0
- package/dist/Tokenizer/Tokenizer.js +92 -0
- package/dist/Tokenizer/index.d.ts +1 -0
- package/dist/Tokenizer/index.js +2 -0
- package/dist/Toolbar/Toolbar.d.ts +13 -0
- package/dist/Toolbar/Toolbar.doc.d.ts +11 -0
- package/dist/Toolbar/Toolbar.doc.js +18 -0
- package/dist/Toolbar/Toolbar.js +65 -0
- package/dist/Toolbar/index.d.ts +1 -0
- package/dist/Toolbar/index.js +2 -0
- package/dist/Tooltip/Tooltip.d.ts +25 -0
- package/dist/Tooltip/Tooltip.doc.d.ts +11 -0
- package/dist/Tooltip/Tooltip.doc.js +24 -0
- package/dist/Tooltip/Tooltip.js +110 -0
- package/dist/Tooltip/index.d.ts +1 -0
- package/dist/Tooltip/index.js +2 -0
- package/dist/TopNav/TopNav.d.ts +12 -0
- package/dist/TopNav/TopNav.doc.d.ts +11 -0
- package/dist/TopNav/TopNav.doc.js +18 -0
- package/dist/TopNav/TopNav.js +39 -0
- package/dist/TopNav/index.d.ts +1 -0
- package/dist/TopNav/index.js +2 -0
- package/dist/TopNavMegaMenu/TopNavMegaMenu.d.ts +30 -0
- package/dist/TopNavMegaMenu/TopNavMegaMenu.doc.d.ts +22 -0
- package/dist/TopNavMegaMenu/TopNavMegaMenu.doc.js +38 -0
- package/dist/TopNavMegaMenu/TopNavMegaMenu.js +134 -0
- package/dist/TopNavMegaMenu/index.d.ts +1 -0
- package/dist/TopNavMegaMenu/index.js +2 -0
- package/dist/TopNavMenu/TopNavMenu.d.ts +15 -0
- package/dist/TopNavMenu/TopNavMenu.doc.d.ts +11 -0
- package/dist/TopNavMenu/TopNavMenu.doc.js +21 -0
- package/dist/TopNavMenu/TopNavMenu.js +105 -0
- package/dist/TopNavMenu/index.d.ts +1 -0
- package/dist/TopNavMenu/index.js +2 -0
- package/dist/TreeList/TreeList.d.ts +21 -0
- package/dist/TreeList/TreeList.doc.d.ts +11 -0
- package/dist/TreeList/TreeList.doc.js +27 -0
- package/dist/TreeList/TreeList.js +146 -0
- package/dist/TreeList/index.d.ts +1 -0
- package/dist/TreeList/index.js +2 -0
- package/dist/Typeahead/Typeahead.d.ts +20 -0
- package/dist/Typeahead/Typeahead.doc.d.ts +11 -0
- package/dist/Typeahead/Typeahead.doc.js +24 -0
- package/dist/Typeahead/Typeahead.js +177 -0
- package/dist/Typeahead/index.d.ts +1 -0
- package/dist/Typeahead/index.js +2 -0
- package/dist/TypeaheadItem/TypeaheadItem.d.ts +15 -0
- package/dist/TypeaheadItem/TypeaheadItem.doc.d.ts +11 -0
- package/dist/TypeaheadItem/TypeaheadItem.doc.js +24 -0
- package/dist/TypeaheadItem/TypeaheadItem.js +84 -0
- package/dist/TypeaheadItem/index.d.ts +1 -0
- package/dist/TypeaheadItem/index.js +2 -0
- package/dist/VStack/VStack.d.ts +8 -0
- package/dist/VStack/VStack.doc.d.ts +11 -0
- package/dist/VStack/VStack.doc.js +15 -0
- package/dist/VStack/VStack.js +14 -0
- package/dist/VStack/index.d.ts +1 -0
- package/dist/VStack/index.js +2 -0
- package/dist/authoring.stylex.d.ts +7 -0
- package/dist/authoring.stylex.js +7 -0
- package/dist/docs/index.d.ts +91 -1
- package/dist/docs/index.js +92 -2
- package/dist/hooks/focusableSelector.d.ts +19 -0
- package/dist/hooks/focusableSelector.js +42 -0
- package/dist/hooks/index.d.ts +11 -0
- package/dist/hooks/index.js +12 -0
- package/dist/hooks/useAnchoredPosition.d.ts +33 -0
- package/dist/hooks/useAnchoredPosition.js +121 -0
- package/dist/hooks/useAnnounce.d.ts +7 -0
- package/dist/hooks/useAnnounce.js +34 -0
- package/dist/hooks/useClipboard.d.ts +10 -0
- package/dist/hooks/useClipboard.js +36 -0
- package/dist/hooks/useDevWarning.d.ts +5 -0
- package/dist/hooks/useDevWarning.js +20 -0
- package/dist/hooks/useFocusTrap.d.ts +9 -0
- package/dist/hooks/useFocusTrap.js +57 -0
- package/dist/hooks/useHotkeys.d.ts +12 -0
- package/dist/hooks/useHotkeys.js +57 -0
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts +6 -0
- package/dist/hooks/useIsomorphicLayoutEffect.js +8 -0
- package/dist/hooks/useListFocus.d.ts +15 -0
- package/dist/hooks/useListFocus.js +61 -0
- package/dist/hooks/useMediaQuery.d.ts +5 -0
- package/dist/hooks/useMediaQuery.js +24 -0
- package/dist/hooks/useScrollLock.d.ts +5 -0
- package/dist/hooks/useScrollLock.js +29 -0
- package/dist/i18n/Internationalization.d.ts +28 -0
- package/dist/i18n/Internationalization.doc.d.ts +11 -0
- package/dist/i18n/Internationalization.doc.js +21 -0
- package/dist/i18n/Internationalization.js +52 -0
- package/dist/i18n/index.d.ts +2 -0
- package/dist/i18n/index.js +3 -0
- package/dist/i18n/messages.d.ts +29 -0
- package/dist/i18n/messages.js +29 -0
- package/dist/index.d.ts +93 -1
- package/dist/index.js +92 -0
- package/dist/navigation/LinkProvider.d.ts +17 -1
- package/dist/navigation/LinkProvider.js +39 -2
- package/dist/scrolling/index.d.ts +1 -0
- package/dist/scrolling/index.js +2 -0
- package/dist/scrolling/scrolling.d.ts +22 -0
- package/dist/scrolling/scrolling.js +26 -0
- package/dist/styles/global.stylex.d.ts +1 -0
- package/dist/styles/global.stylex.js +1 -0
- package/dist/styles/stylex.css +472 -33
- package/dist/theme/Theme.d.ts +24 -1
- package/dist/theme/Theme.js +46 -2
- package/dist/theme/index.d.ts +1 -1
- package/dist/tokens/contracts.d.ts +9 -2
- package/dist/tokens/contracts.js +9 -2
- package/dist/utils/clamp.d.ts +2 -0
- package/dist/utils/clamp.js +5 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/mergeIds.d.ts +6 -0
- package/dist/utils/mergeIds.js +10 -0
- package/dist/utils/resolveInvalid.d.ts +6 -0
- package/dist/utils/resolveInvalid.js +9 -0
- package/package.json +1 -1
- package/src/Alert/Alert.tsx +1 -0
- package/src/AlertDialog/AlertDialog.doc.ts +22 -0
- package/src/AlertDialog/AlertDialog.tsx +18 -0
- package/src/AlertDialog/index.ts +1 -0
- package/src/AppShell/AppShell.doc.ts +30 -0
- package/src/AppShell/AppShell.tsx +93 -0
- package/src/AppShell/index.ts +1 -0
- package/src/AspectRatio/AspectRatio.doc.ts +15 -0
- package/src/AspectRatio/AspectRatio.tsx +47 -0
- package/src/AspectRatio/index.ts +1 -0
- package/src/AsyncState/AsyncState.tsx +42 -1
- package/src/Avatar/Avatar.doc.ts +16 -0
- package/src/Avatar/Avatar.tsx +100 -0
- package/src/Avatar/index.ts +1 -0
- package/src/AvatarGroup/AvatarGroup.doc.ts +17 -0
- package/src/AvatarGroup/AvatarGroup.tsx +124 -0
- package/src/AvatarGroup/index.ts +5 -0
- package/src/Badge/Badge.tsx +1 -0
- package/src/Banner/Banner.doc.ts +17 -0
- package/src/Banner/Banner.tsx +87 -0
- package/src/Banner/index.ts +1 -0
- package/src/Blockquote/Blockquote.doc.ts +15 -0
- package/src/Blockquote/Blockquote.tsx +55 -0
- package/src/Blockquote/index.ts +1 -0
- package/src/BottomSheet/BottomSheet.doc.ts +18 -0
- package/src/BottomSheet/BottomSheet.tsx +119 -0
- package/src/BottomSheet/index.ts +1 -0
- package/src/BottomSheetSwitcher/BottomSheetSwitcher.doc.ts +21 -0
- package/src/BottomSheetSwitcher/BottomSheetSwitcher.tsx +166 -0
- package/src/BottomSheetSwitcher/index.ts +5 -0
- package/src/Box/Box.doc.ts +15 -0
- package/src/Box/Box.tsx +98 -0
- package/src/Box/index.ts +1 -0
- package/src/Breadcrumbs/Breadcrumbs.doc.ts +18 -0
- package/src/Breadcrumbs/Breadcrumbs.tsx +124 -0
- package/src/Breadcrumbs/index.ts +5 -0
- package/src/Button/Button.tsx +36 -9
- package/src/ButtonGroup/ButtonGroup.doc.ts +19 -0
- package/src/ButtonGroup/ButtonGroup.tsx +52 -0
- package/src/ButtonGroup/index.ts +1 -0
- package/src/Calendar/Calendar.doc.ts +28 -0
- package/src/Calendar/Calendar.tsx +425 -0
- package/src/Calendar/index.ts +1 -0
- package/src/Card/Card.tsx +1 -1
- package/src/CardFooter/CardFooter.tsx +5 -5
- package/src/CardHeader/CardHeader.tsx +5 -5
- package/src/Carousel/Carousel.doc.ts +20 -0
- package/src/Carousel/Carousel.tsx +144 -0
- package/src/Carousel/index.ts +1 -0
- package/src/Chat/Chat.doc.ts +94 -0
- package/src/Chat/Chat.tsx +534 -0
- package/src/Chat/index.ts +19 -0
- package/src/CheckboxInput/CheckboxInput.doc.ts +26 -0
- package/src/CheckboxInput/CheckboxInput.tsx +276 -0
- package/src/CheckboxInput/index.ts +1 -0
- package/src/CheckboxList/CheckboxList.doc.ts +22 -0
- package/src/CheckboxList/CheckboxList.tsx +114 -0
- package/src/CheckboxList/index.ts +5 -0
- package/src/Citation/Citation.doc.ts +14 -0
- package/src/Citation/Citation.tsx +56 -0
- package/src/Citation/index.ts +1 -0
- package/src/ClickableCard/ClickableCard.doc.ts +10 -0
- package/src/ClickableCard/ClickableCard.tsx +79 -0
- package/src/ClickableCard/index.ts +1 -0
- package/src/Code/Code.doc.ts +10 -0
- package/src/Code/Code.tsx +31 -0
- package/src/Code/index.ts +1 -0
- package/src/CodeBlock/CodeBlock.doc.ts +21 -0
- package/src/CodeBlock/CodeBlock.tsx +122 -0
- package/src/CodeBlock/index.ts +1 -0
- package/src/Collapsible/Collapsible.doc.ts +18 -0
- package/src/Collapsible/Collapsible.tsx +165 -0
- package/src/Collapsible/index.ts +1 -0
- package/src/CommandPalette/CommandPalette.doc.ts +19 -0
- package/src/CommandPalette/CommandPalette.tsx +326 -0
- package/src/CommandPalette/index.ts +5 -0
- package/src/ComplexSelector/ComplexSelector.doc.ts +22 -0
- package/src/ComplexSelector/ComplexSelector.tsx +213 -0
- package/src/ComplexSelector/index.ts +5 -0
- package/src/ContextMenu/ContextMenu.doc.ts +18 -0
- package/src/ContextMenu/ContextMenu.tsx +61 -0
- package/src/ContextMenu/index.ts +1 -0
- package/src/DateInput/DateInput.doc.ts +16 -0
- package/src/DateInput/DateInput.tsx +9 -0
- package/src/DateInput/TemporalInput.tsx +305 -0
- package/src/DateInput/index.ts +6 -0
- package/src/DatePicker/DatePicker.doc.ts +21 -0
- package/src/DatePicker/DatePicker.tsx +138 -0
- package/src/DatePicker/index.ts +1 -0
- package/src/DateRangeInput/DateRangeInput.doc.ts +20 -0
- package/src/DateRangeInput/DateRangeInput.tsx +159 -0
- package/src/DateRangeInput/index.ts +5 -0
- package/src/DateTimeInput/DateTimeInput.doc.ts +16 -0
- package/src/DateTimeInput/DateTimeInput.tsx +9 -0
- package/src/DateTimeInput/index.ts +1 -0
- package/src/Dialog/Dialog.doc.ts +27 -0
- package/src/Dialog/Dialog.tsx +160 -0
- package/src/Dialog/index.ts +6 -0
- package/src/DropdownMenu/DropdownMenu.doc.ts +41 -0
- package/src/DropdownMenu/DropdownMenu.tsx +197 -0
- package/src/DropdownMenu/index.ts +6 -0
- package/src/EmptyState/EmptyState.tsx +29 -6
- package/src/Eyebrow/Eyebrow.doc.ts +16 -0
- package/src/Eyebrow/Eyebrow.tsx +56 -0
- package/src/Eyebrow/index.ts +1 -0
- package/src/Field/Field.tsx +25 -4
- package/src/FieldStatus/FieldStatus.doc.ts +15 -0
- package/src/FieldStatus/FieldStatus.tsx +72 -0
- package/src/FieldStatus/index.ts +1 -0
- package/src/FileInput/FileInput.doc.ts +12 -0
- package/src/FileInput/FileInput.tsx +186 -0
- package/src/FileInput/index.ts +1 -0
- package/src/FormLayout/FormLayout.doc.ts +20 -0
- package/src/FormLayout/FormLayout.tsx +69 -0
- package/src/FormLayout/index.ts +5 -0
- package/src/HStack/HStack.doc.ts +15 -0
- package/src/HStack/HStack.tsx +91 -0
- package/src/HStack/index.ts +6 -0
- package/src/Heading/Heading.tsx +17 -4
- package/src/HoverCard/HoverCard.doc.ts +31 -0
- package/src/HoverCard/HoverCard.tsx +121 -0
- package/src/HoverCard/index.ts +1 -0
- package/src/Icon/Icon.doc.ts +21 -0
- package/src/Icon/Icon.tsx +83 -0
- package/src/Icon/index.ts +1 -0
- package/src/Indicator/Indicator.doc.ts +21 -0
- package/src/Indicator/Indicator.tsx +99 -0
- package/src/Indicator/index.ts +1 -0
- package/src/InputGroup/InputGroup.doc.ts +23 -0
- package/src/InputGroup/InputGroup.tsx +73 -0
- package/src/InputGroup/index.ts +1 -0
- package/src/Item/Item.doc.ts +15 -0
- package/src/Item/Item.tsx +92 -0
- package/src/Item/index.ts +1 -0
- package/src/Kbd/Kbd.doc.ts +10 -0
- package/src/Kbd/Kbd.tsx +38 -0
- package/src/Kbd/index.ts +1 -0
- package/src/Layer/Layer.doc.ts +17 -0
- package/src/Layer/Layer.tsx +37 -0
- package/src/Layer/index.ts +1 -0
- package/src/Layout/Layout.doc.ts +33 -0
- package/src/Layout/Layout.tsx +190 -0
- package/src/Layout/index.ts +1 -0
- package/src/Lightbox/Lightbox.doc.ts +20 -0
- package/src/Lightbox/Lightbox.tsx +114 -0
- package/src/Lightbox/index.ts +1 -0
- package/src/List/List.doc.ts +27 -0
- package/src/List/List.tsx +94 -0
- package/src/List/index.ts +7 -0
- package/src/Markdown/Markdown.doc.ts +14 -0
- package/src/Markdown/Markdown.tsx +115 -0
- package/src/Markdown/index.ts +7 -0
- package/src/Markdown/parse.ts +135 -0
- package/src/MetadataList/MetadataList.doc.ts +15 -0
- package/src/MetadataList/MetadataList.tsx +87 -0
- package/src/MetadataList/index.ts +6 -0
- package/src/MetricGrid/MetricGrid.tsx +31 -9
- package/src/MobileNav/MobileNav.doc.ts +15 -0
- package/src/MobileNav/MobileNav.tsx +169 -0
- package/src/MobileNav/index.ts +1 -0
- package/src/MoreMenu/MoreMenu.doc.ts +19 -0
- package/src/MoreMenu/MoreMenu.tsx +67 -0
- package/src/MoreMenu/index.ts +1 -0
- package/src/MultiSelector/MultiSelector.doc.ts +23 -0
- package/src/MultiSelector/MultiSelector.tsx +89 -0
- package/src/MultiSelector/index.ts +1 -0
- package/src/NavIcon/NavIcon.doc.ts +10 -0
- package/src/NavIcon/NavIcon.tsx +45 -0
- package/src/NavIcon/index.ts +1 -0
- package/src/NavItem/NavItem.doc.ts +16 -0
- package/src/NavItem/NavItem.tsx +146 -0
- package/src/NavItem/index.ts +1 -0
- package/src/NavMenu/NavMenu.doc.ts +18 -0
- package/src/NavMenu/NavMenu.tsx +68 -0
- package/src/NavMenu/index.ts +4 -0
- package/src/NavMenu/orientation.ts +20 -0
- package/src/NumberInput/NumberInput.doc.ts +22 -0
- package/src/NumberInput/NumberInput.tsx +286 -0
- package/src/NumberInput/index.ts +1 -0
- package/src/Numeral/Numeral.doc.ts +10 -0
- package/src/Numeral/Numeral.tsx +34 -0
- package/src/Numeral/index.ts +1 -0
- package/src/Outline/Outline.doc.ts +14 -0
- package/src/Outline/Outline.tsx +124 -0
- package/src/Outline/index.ts +1 -0
- package/src/OverflowList/OverflowList.doc.ts +22 -0
- package/src/OverflowList/OverflowList.tsx +115 -0
- package/src/OverflowList/index.ts +5 -0
- package/src/Overlay/Overlay.doc.ts +23 -0
- package/src/Overlay/Overlay.tsx +122 -0
- package/src/Overlay/index.ts +1 -0
- package/src/Pagination/Pagination.doc.ts +28 -0
- package/src/Pagination/Pagination.tsx +259 -0
- package/src/Pagination/index.ts +1 -0
- package/src/Popover/Popover.doc.ts +27 -0
- package/src/Popover/Popover.tsx +122 -0
- package/src/Popover/index.ts +1 -0
- package/src/PowerSearch/PowerSearch.doc.ts +20 -0
- package/src/PowerSearch/PowerSearch.tsx +235 -0
- package/src/PowerSearch/index.ts +5 -0
- package/src/ProgressBar/ProgressBar.doc.ts +16 -0
- package/src/ProgressBar/ProgressBar.tsx +98 -0
- package/src/ProgressBar/index.ts +1 -0
- package/src/RadioList/RadioList.doc.ts +22 -0
- package/src/RadioList/RadioList.tsx +244 -0
- package/src/RadioList/index.ts +1 -0
- package/src/Resizable/Resizable.doc.ts +24 -0
- package/src/Resizable/Resizable.tsx +118 -0
- package/src/Resizable/index.ts +1 -0
- package/src/ResizeHandle/ResizeHandle.doc.ts +21 -0
- package/src/ResizeHandle/ResizeHandle.tsx +162 -0
- package/src/ResizeHandle/index.ts +5 -0
- package/src/SegmentedControl/SegmentedControl.tsx +36 -7
- package/src/SelectableCard/SelectableCard.doc.ts +16 -0
- package/src/SelectableCard/SelectableCard.tsx +252 -0
- package/src/SelectableCard/index.ts +1 -0
- package/src/Selector/Selector.doc.ts +22 -0
- package/src/Selector/Selector.tsx +206 -0
- package/src/Selector/index.ts +1 -0
- package/src/SideNav/SideNav.doc.ts +29 -0
- package/src/SideNav/SideNav.tsx +110 -0
- package/src/SideNav/index.ts +6 -0
- package/src/Skeleton/Skeleton.doc.ts +1 -1
- package/src/Skeleton/Skeleton.tsx +6 -13
- package/src/Slider/Slider.doc.ts +24 -0
- package/src/Slider/Slider.tsx +264 -0
- package/src/Slider/index.ts +1 -0
- package/src/Spinner/Spinner.tsx +15 -4
- package/src/StatusDot/StatusDot.tsx +13 -2
- package/src/Switch/Switch.doc.ts +19 -0
- package/src/Switch/Switch.tsx +152 -0
- package/src/Switch/index.ts +1 -0
- package/src/TabList/TabList.doc.ts +28 -0
- package/src/TabList/TabList.tsx +151 -0
- package/src/TabList/index.ts +1 -0
- package/src/Table/Table.doc.ts +15 -1
- package/src/Table/Table.tsx +95 -17
- package/src/Text/Text.tsx +1 -0
- package/src/TextArea/TextArea.tsx +21 -4
- package/src/TextInput/TextInput.tsx +11 -3
- package/src/Thumbnail/Thumbnail.doc.ts +20 -0
- package/src/Thumbnail/Thumbnail.tsx +94 -0
- package/src/Thumbnail/index.ts +5 -0
- package/src/TimeInput/TimeInput.doc.ts +16 -0
- package/src/TimeInput/TimeInput.tsx +9 -0
- package/src/TimeInput/index.ts +1 -0
- package/src/Timestamp/Timestamp.doc.ts +15 -0
- package/src/Timestamp/Timestamp.tsx +52 -0
- package/src/Timestamp/index.ts +1 -0
- package/src/Toast/Toast.doc.ts +35 -0
- package/src/Toast/Toast.tsx +271 -0
- package/src/Toast/index.ts +9 -0
- package/src/Toggle/Toggle.tsx +49 -23
- package/src/ToggleButton/ToggleButton.doc.ts +21 -0
- package/src/ToggleButton/ToggleButton.tsx +163 -0
- package/src/ToggleButton/index.ts +1 -0
- package/src/ToggleButtonGroup/ToggleButtonGroup.doc.ts +22 -0
- package/src/ToggleButtonGroup/ToggleButtonGroup.tsx +108 -0
- package/src/ToggleButtonGroup/index.ts +5 -0
- package/src/Token/Token.doc.ts +20 -0
- package/src/Token/Token.tsx +131 -0
- package/src/Token/index.ts +1 -0
- package/src/Tokenizer/Tokenizer.doc.ts +21 -0
- package/src/Tokenizer/Tokenizer.tsx +168 -0
- package/src/Tokenizer/index.ts +1 -0
- package/src/Toolbar/Toolbar.doc.ts +20 -0
- package/src/Toolbar/Toolbar.tsx +74 -0
- package/src/Toolbar/index.ts +1 -0
- package/src/Tooltip/Tooltip.doc.ts +22 -0
- package/src/Tooltip/Tooltip.tsx +166 -0
- package/src/Tooltip/index.ts +1 -0
- package/src/TopNav/TopNav.doc.ts +20 -0
- package/src/TopNav/TopNav.tsx +80 -0
- package/src/TopNav/index.ts +1 -0
- package/src/TopNavMegaMenu/TopNavMegaMenu.doc.ts +36 -0
- package/src/TopNavMegaMenu/TopNavMegaMenu.tsx +251 -0
- package/src/TopNavMegaMenu/index.ts +7 -0
- package/src/TopNavMenu/TopNavMenu.doc.ts +22 -0
- package/src/TopNavMenu/TopNavMenu.tsx +166 -0
- package/src/TopNavMenu/index.ts +1 -0
- package/src/TreeList/TreeList.doc.ts +20 -0
- package/src/TreeList/TreeList.tsx +265 -0
- package/src/TreeList/index.ts +1 -0
- package/src/Typeahead/Typeahead.doc.ts +22 -0
- package/src/Typeahead/Typeahead.tsx +312 -0
- package/src/Typeahead/index.ts +5 -0
- package/src/TypeaheadItem/TypeaheadItem.doc.ts +18 -0
- package/src/TypeaheadItem/TypeaheadItem.tsx +105 -0
- package/src/TypeaheadItem/index.ts +1 -0
- package/src/VStack/VStack.doc.ts +13 -0
- package/src/VStack/VStack.tsx +12 -0
- package/src/VStack/index.ts +1 -0
- package/src/authoring.stylex.ts +7 -0
- package/src/docs/index.ts +306 -0
- package/src/hooks/focusableSelector.ts +65 -0
- package/src/hooks/index.ts +31 -0
- package/src/hooks/useAnchoredPosition.ts +176 -0
- package/src/hooks/useAnnounce.ts +49 -0
- package/src/hooks/useClipboard.ts +48 -0
- package/src/hooks/useDevWarning.ts +24 -0
- package/src/hooks/useFocusTrap.ts +62 -0
- package/src/hooks/useHotkeys.ts +81 -0
- package/src/hooks/useIsomorphicLayoutEffect.ts +8 -0
- package/src/hooks/useListFocus.ts +75 -0
- package/src/hooks/useMediaQuery.ts +35 -0
- package/src/hooks/useScrollLock.ts +28 -0
- package/src/i18n/Internationalization.doc.ts +16 -0
- package/src/i18n/Internationalization.tsx +66 -0
- package/src/i18n/index.ts +8 -0
- package/src/i18n/messages.ts +51 -0
- package/src/index.ts +271 -0
- package/src/navigation/LinkProvider.tsx +58 -4
- package/src/scrolling/index.ts +1 -0
- package/src/scrolling/scrolling.ts +25 -0
- package/src/styles/global.stylex.ts +1 -0
- package/src/theme/Theme.tsx +66 -3
- package/src/theme/index.ts +1 -0
- package/src/tokens/contracts.ts +16 -2
- package/src/utils/clamp.ts +4 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/mergeIds.ts +11 -0
- package/src/utils/resolveInvalid.ts +10 -0
- package/dist/components/Alert.d.ts +0 -7
- package/dist/components/Alert.doc.js +0 -15
- package/dist/components/Alert.js +0 -149
- package/dist/components/AsyncState.d.ts +0 -30
- package/dist/components/AsyncState.doc.js +0 -16
- package/dist/components/AsyncState.js +0 -36
- package/dist/components/Badge.d.ts +0 -10
- package/dist/components/Badge.doc.js +0 -12
- package/dist/components/Badge.js +0 -58
- package/dist/components/Button.d.ts +0 -18
- package/dist/components/Button.doc.js +0 -18
- package/dist/components/Button.js +0 -151
- package/dist/components/Card.d.ts +0 -6
- package/dist/components/Card.doc.js +0 -15
- package/dist/components/Card.js +0 -41
- package/dist/components/CardFooter.d.ts +0 -3
- package/dist/components/CardFooter.doc.d.ts +0 -11
- package/dist/components/CardFooter.doc.js +0 -12
- package/dist/components/CardFooter.js +0 -16
- package/dist/components/CardHeader.d.ts +0 -3
- package/dist/components/CardHeader.doc.d.ts +0 -11
- package/dist/components/CardHeader.doc.js +0 -12
- package/dist/components/CardHeader.js +0 -16
- package/dist/components/Center.d.ts +0 -3
- package/dist/components/Center.doc.d.ts +0 -11
- package/dist/components/Center.doc.js +0 -12
- package/dist/components/Center.js +0 -15
- package/dist/components/Divider.d.ts +0 -3
- package/dist/components/Divider.doc.d.ts +0 -11
- package/dist/components/Divider.doc.js +0 -12
- package/dist/components/Divider.js +0 -12
- package/dist/components/EmptyState.d.ts +0 -11
- package/dist/components/EmptyState.doc.d.ts +0 -16
- package/dist/components/EmptyState.doc.js +0 -25
- package/dist/components/EmptyState.js +0 -55
- package/dist/components/Field.d.ts +0 -21
- package/dist/components/Field.doc.d.ts +0 -16
- package/dist/components/Field.doc.js +0 -28
- package/dist/components/Field.js +0 -117
- package/dist/components/Grid.d.ts +0 -7
- package/dist/components/Grid.doc.js +0 -15
- package/dist/components/Grid.js +0 -76
- package/dist/components/Heading.d.ts +0 -293
- package/dist/components/Heading.doc.d.ts +0 -16
- package/dist/components/Heading.doc.js +0 -19
- package/dist/components/Heading.js +0 -46
- package/dist/components/IconButton.d.ts +0 -9
- package/dist/components/IconButton.doc.d.ts +0 -16
- package/dist/components/IconButton.doc.js +0 -22
- package/dist/components/IconButton.js +0 -11
- package/dist/components/MetricGrid.d.ts +0 -10
- package/dist/components/MetricGrid.doc.d.ts +0 -12
- package/dist/components/MetricGrid.doc.js +0 -13
- package/dist/components/MetricGrid.js +0 -37
- package/dist/components/Section.d.ts +0 -6
- package/dist/components/Section.doc.d.ts +0 -11
- package/dist/components/Section.doc.js +0 -12
- package/dist/components/Section.js +0 -49
- package/dist/components/SegmentedControl.d.ts +0 -31
- package/dist/components/SegmentedControl.doc.d.ts +0 -16
- package/dist/components/SegmentedControl.doc.js +0 -34
- package/dist/components/SegmentedControl.js +0 -108
- package/dist/components/Skeleton.d.ts +0 -5
- package/dist/components/Skeleton.doc.d.ts +0 -11
- package/dist/components/Skeleton.doc.js +0 -12
- package/dist/components/Skeleton.js +0 -20
- package/dist/components/Spinner.d.ts +0 -6
- package/dist/components/Spinner.doc.d.ts +0 -12
- package/dist/components/Spinner.doc.js +0 -13
- package/dist/components/Spinner.js +0 -25
- package/dist/components/Stack.d.ts +0 -7
- package/dist/components/Stack.doc.d.ts +0 -11
- package/dist/components/Stack.doc.js +0 -15
- package/dist/components/StatusDot.d.ts +0 -8
- package/dist/components/StatusDot.doc.d.ts +0 -16
- package/dist/components/StatusDot.doc.js +0 -16
- package/dist/components/StatusDot.js +0 -46
- package/dist/components/Table.d.ts +0 -20
- package/dist/components/Table.doc.js +0 -94
- package/dist/components/Table.js +0 -205
- package/dist/components/Text.d.ts +0 -7
- package/dist/components/Text.doc.js +0 -15
- package/dist/components/Text.js +0 -50
- package/dist/components/TextArea.d.ts +0 -16
- package/dist/components/TextArea.doc.d.ts +0 -11
- package/dist/components/TextArea.doc.js +0 -30
- package/dist/components/TextArea.js +0 -47
- package/dist/components/TextInput.d.ts +0 -16
- package/dist/components/TextInput.doc.d.ts +0 -11
- package/dist/components/TextInput.doc.js +0 -30
- package/dist/components/TextInput.js +0 -49
- package/dist/components/Toggle.d.ts +0 -16
- package/dist/components/Toggle.doc.d.ts +0 -11
- package/dist/components/Toggle.doc.js +0 -21
- package/dist/components/Toggle.js +0 -64
- package/dist/components/VisuallyHidden.d.ts +0 -3
- package/dist/components/VisuallyHidden.doc.d.ts +0 -11
- package/dist/components/VisuallyHidden.doc.js +0 -12
- package/dist/components/VisuallyHidden.js +0 -15
- package/dist/components/index.d.ts +0 -27
- package/dist/components/index.js +0 -28
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type {ComponentDoc} from '../docs/types.js';
|
|
2
|
+
|
|
3
|
+
export const chatLayoutDoc = {
|
|
4
|
+
name: 'ChatLayout',
|
|
5
|
+
description: 'Frames a scrolling transcript above a fixed composer.',
|
|
6
|
+
props: [
|
|
7
|
+
{name: 'composer', description: 'Supplies the composer to pin below.'},
|
|
8
|
+
],
|
|
9
|
+
inheritedProps: ['HTMLAttributes<HTMLDivElement> except className'],
|
|
10
|
+
example:
|
|
11
|
+
'<ChatLayout composer={<ChatComposer … />}>{transcript}</ChatLayout>',
|
|
12
|
+
storyId: 'core-chat-layout--default',
|
|
13
|
+
} satisfies ComponentDoc;
|
|
14
|
+
|
|
15
|
+
export const chatMessageListDoc = {
|
|
16
|
+
name: 'ChatMessageList',
|
|
17
|
+
description: 'Holds the transcript and announces new messages.',
|
|
18
|
+
props: [{name: 'label', description: 'Names the transcript.'}],
|
|
19
|
+
inheritedProps: [
|
|
20
|
+
'HTMLAttributes<HTMLUListElement> except className and the aria-atomic, aria-label, aria-live and aria-relevant attributes it owns',
|
|
21
|
+
],
|
|
22
|
+
example: '<ChatMessageList label="Conversation">{messages}</ChatMessageList>',
|
|
23
|
+
storyId: 'core-chat-message-list--default',
|
|
24
|
+
} satisfies ComponentDoc;
|
|
25
|
+
|
|
26
|
+
export const chatMessageDoc = {
|
|
27
|
+
name: 'ChatMessage',
|
|
28
|
+
description: 'Shows one message and names its author.',
|
|
29
|
+
props: [
|
|
30
|
+
{name: 'author', description: 'States who produced the message.'},
|
|
31
|
+
{name: 'authorName', description: 'Names the author in visible text.'},
|
|
32
|
+
{name: 'pending', description: 'Shows progress while a reply is awaited.'},
|
|
33
|
+
],
|
|
34
|
+
inheritedProps: ['HTMLAttributes<HTMLLIElement> except className'],
|
|
35
|
+
example: '<ChatMessage author="assistant" authorName="Kioku">…</ChatMessage>',
|
|
36
|
+
storyId: 'core-chat-message--default',
|
|
37
|
+
} satisfies ComponentDoc;
|
|
38
|
+
|
|
39
|
+
export const chatToolCallsDoc = {
|
|
40
|
+
name: 'ChatToolCalls',
|
|
41
|
+
description: 'Lists the tool calls behind a reply.',
|
|
42
|
+
props: [
|
|
43
|
+
{name: 'calls', description: 'Supplies the tool invocations to list.'},
|
|
44
|
+
{name: 'label', description: 'Names the list for assistive technology.'},
|
|
45
|
+
],
|
|
46
|
+
inheritedProps: [
|
|
47
|
+
'HTMLAttributes<HTMLUListElement> except aria-label, children, and className',
|
|
48
|
+
],
|
|
49
|
+
example: '<ChatToolCalls calls={calls} />',
|
|
50
|
+
storyId: 'core-chat-tool-calls--default',
|
|
51
|
+
} satisfies ComponentDoc;
|
|
52
|
+
|
|
53
|
+
export const chatComposerDoc = {
|
|
54
|
+
name: 'ChatComposer',
|
|
55
|
+
description: 'Composes a message; Enter sends, Shift+Enter adds a line.',
|
|
56
|
+
props: [
|
|
57
|
+
{
|
|
58
|
+
name: 'disabled',
|
|
59
|
+
description: 'Blocks sending while a reply is in flight.',
|
|
60
|
+
},
|
|
61
|
+
{name: 'label', description: 'Names the entry field.'},
|
|
62
|
+
{name: 'onSend', description: 'Receives the trimmed message.'},
|
|
63
|
+
{name: 'placeholder', description: 'Hints at what to write.'},
|
|
64
|
+
{name: 'sendLabel', description: 'Names the send control.'},
|
|
65
|
+
],
|
|
66
|
+
inheritedProps: [
|
|
67
|
+
'HTMLAttributes<HTMLFormElement> except children, className, and onSubmit',
|
|
68
|
+
],
|
|
69
|
+
example: '<ChatComposer label="Message" onSend={send} />',
|
|
70
|
+
storyId: 'core-chat-composer--default',
|
|
71
|
+
} satisfies ComponentDoc;
|
|
72
|
+
|
|
73
|
+
export const chatMessageMetadataDoc = {
|
|
74
|
+
name: 'ChatMessageMetadata',
|
|
75
|
+
description: 'States how a reply was produced.',
|
|
76
|
+
props: [
|
|
77
|
+
{name: 'entries', description: 'Supplies the labelled facts to list.'},
|
|
78
|
+
],
|
|
79
|
+
inheritedProps: [
|
|
80
|
+
'HTMLAttributes<HTMLUListElement> except children and className',
|
|
81
|
+
],
|
|
82
|
+
example:
|
|
83
|
+
'<ChatMessageMetadata entries={[{label: "Latency", value: "1.2s"}]} />',
|
|
84
|
+
storyId: 'core-chat-message--composition',
|
|
85
|
+
} satisfies ComponentDoc;
|
|
86
|
+
|
|
87
|
+
export const chatSystemMessageDoc = {
|
|
88
|
+
name: 'ChatSystemMessage',
|
|
89
|
+
description: 'A note in the transcript attributed to no participant.',
|
|
90
|
+
props: [{name: 'children', description: 'Supplies the note.'}],
|
|
91
|
+
inheritedProps: ['HTMLAttributes<HTMLLIElement> except className'],
|
|
92
|
+
example: '<ChatSystemMessage>Conversation started</ChatSystemMessage>',
|
|
93
|
+
storyId: 'core-chat-message--states',
|
|
94
|
+
} satisfies ComponentDoc;
|
|
@@ -0,0 +1,534 @@
|
|
|
1
|
+
import * as stylex from '@stylexjs/stylex';
|
|
2
|
+
import {
|
|
3
|
+
Children,
|
|
4
|
+
useState,
|
|
5
|
+
type FormEvent,
|
|
6
|
+
type HTMLAttributes,
|
|
7
|
+
type KeyboardEvent,
|
|
8
|
+
type ReactNode,
|
|
9
|
+
} from 'react';
|
|
10
|
+
|
|
11
|
+
import {semanticTokens} from '../authoring.stylex.js';
|
|
12
|
+
import {scrolling} from '../scrolling/index.js';
|
|
13
|
+
import {useInternationalization} from '../i18n/index.js';
|
|
14
|
+
import {Button} from '../Button/index.js';
|
|
15
|
+
import {Eyebrow} from '../Eyebrow/index.js';
|
|
16
|
+
import {Numeral} from '../Numeral/index.js';
|
|
17
|
+
import {Spinner} from '../Spinner/index.js';
|
|
18
|
+
import {TextArea} from '../TextArea/index.js';
|
|
19
|
+
|
|
20
|
+
// A line of chat stops being readable long before it reaches the width of the
|
|
21
|
+
// transcript, and where it stops is a fact about the TYPE rather than about
|
|
22
|
+
// the spacing scale. Built from `spacing2xl` this measure grew 36% at the
|
|
23
|
+
// standard density while the type inside it stayed at 13.5px — a longer line
|
|
24
|
+
// for the reader who asked for more air, which is backwards.
|
|
25
|
+
const bubbleMaxWidth = `calc(34 * ${semanticTokens.fontSizeMd})`;
|
|
26
|
+
|
|
27
|
+
// A dot, so it is two of the smallest spacing step across rather than a size
|
|
28
|
+
// of its own.
|
|
29
|
+
const progressDotSize = `calc(2 * ${semanticTokens.spacingXs})`;
|
|
30
|
+
|
|
31
|
+
const styles = stylex.create({
|
|
32
|
+
layout: {
|
|
33
|
+
// The frame fills what it is given: a transcript that scrolls above a
|
|
34
|
+
// fixed composer has to know where its bottom is, and `1fr auto` divides
|
|
35
|
+
// a height rather than supplying one. Every story had to wrap this in a
|
|
36
|
+
// sized box to see it behave.
|
|
37
|
+
blockSize: '100%',
|
|
38
|
+
display: 'grid',
|
|
39
|
+
fontFamily: semanticTokens.fontFamilyBody,
|
|
40
|
+
gap: semanticTokens.spacingMd,
|
|
41
|
+
gridTemplateRows: '1fr auto',
|
|
42
|
+
minHeight: 0,
|
|
43
|
+
},
|
|
44
|
+
list: {
|
|
45
|
+
display: 'flex',
|
|
46
|
+
flexDirection: 'column',
|
|
47
|
+
gap: semanticTokens.spacingLg,
|
|
48
|
+
listStyleType: 'none',
|
|
49
|
+
marginBlock: 0,
|
|
50
|
+
minHeight: 0,
|
|
51
|
+
overflowY: 'auto',
|
|
52
|
+
paddingInlineStart: 0,
|
|
53
|
+
},
|
|
54
|
+
message: {
|
|
55
|
+
display: 'flex',
|
|
56
|
+
flexDirection: 'column',
|
|
57
|
+
gap: semanticTokens.spacingXs,
|
|
58
|
+
},
|
|
59
|
+
fromReader: {alignItems: 'flex-end'},
|
|
60
|
+
// The eyebrow names the turn beneath it, so it stands on the same edge as
|
|
61
|
+
// the words it names. The reader's slip is inset by a step; without matching
|
|
62
|
+
// it the name and the sentence under it sat on two different margins.
|
|
63
|
+
authorInset: {paddingInline: semanticTokens.spacingMd},
|
|
64
|
+
// A transcript that has not started yet is still a transcript. Without this
|
|
65
|
+
// the region was empty markup, which reads as a component that failed.
|
|
66
|
+
listEmpty: {
|
|
67
|
+
color: semanticTokens.colorTextMuted,
|
|
68
|
+
fontSize: semanticTokens.fontSizeSm,
|
|
69
|
+
letterSpacing: semanticTokens.letterSpacingBody,
|
|
70
|
+
lineHeight: semanticTokens.lineHeightBody,
|
|
71
|
+
paddingBlock: semanticTokens.spacingMd,
|
|
72
|
+
textAlign: 'center',
|
|
73
|
+
},
|
|
74
|
+
// A transcript is a page of record, not a feed of balloons. Only the turns
|
|
75
|
+
// that need to be told apart from the page get a surface, and the accent
|
|
76
|
+
// stays reserved for focus, marks and links.
|
|
77
|
+
bubble: {
|
|
78
|
+
borderRadius: semanticTokens.radiusContainer,
|
|
79
|
+
borderStyle: 'none',
|
|
80
|
+
fontFamily: semanticTokens.fontFamilyBody,
|
|
81
|
+
fontSize: semanticTokens.fontSizeMd,
|
|
82
|
+
letterSpacing: semanticTokens.letterSpacingBody,
|
|
83
|
+
lineHeight: semanticTokens.lineHeightBody,
|
|
84
|
+
maxWidth: bubbleMaxWidth,
|
|
85
|
+
},
|
|
86
|
+
// The reader's own words are the interjection, so they are the ones set on a
|
|
87
|
+
// slip of darker stock and closed with a hairline. Muted, not raised: raised
|
|
88
|
+
// is the same paper as the card underneath it in this skin, and a slip you
|
|
89
|
+
// cannot see is a ring drawn for nothing.
|
|
90
|
+
bubbleReader: {
|
|
91
|
+
backgroundColor: semanticTokens.colorSurfaceMuted,
|
|
92
|
+
boxShadow: semanticTokens.elevationLow,
|
|
93
|
+
color: semanticTokens.colorText,
|
|
94
|
+
paddingBlock: semanticTokens.spacingSm,
|
|
95
|
+
paddingInline: semanticTokens.spacingMd,
|
|
96
|
+
},
|
|
97
|
+
// The reply is the body of the record, so it is set bare on the page. It is
|
|
98
|
+
// already named by the eyebrow above it and already the majority of the
|
|
99
|
+
// transcript; wrapping every one of them in its own card leaves a column of
|
|
100
|
+
// rings with nothing between them.
|
|
101
|
+
bubbleAssistant: {
|
|
102
|
+
backgroundColor: 'transparent',
|
|
103
|
+
boxShadow: 'none',
|
|
104
|
+
color: semanticTokens.colorText,
|
|
105
|
+
paddingBlock: 0,
|
|
106
|
+
paddingInline: 0,
|
|
107
|
+
},
|
|
108
|
+
// A note from the transcript itself, centred across the column. It overrides
|
|
109
|
+
// the bubble measure as well as the fill: a line told to centre inside a
|
|
110
|
+
// 560px box that is itself flush left is not centred on anything the reader
|
|
111
|
+
// can see.
|
|
112
|
+
bubbleSystem: {
|
|
113
|
+
backgroundColor: 'transparent',
|
|
114
|
+
boxShadow: 'none',
|
|
115
|
+
color: semanticTokens.colorTextSecondary,
|
|
116
|
+
fontSize: semanticTokens.fontSizeSm,
|
|
117
|
+
letterSpacing: semanticTokens.letterSpacingBody,
|
|
118
|
+
maxWidth: 'none',
|
|
119
|
+
paddingBlock: 0,
|
|
120
|
+
paddingInline: 0,
|
|
121
|
+
textAlign: 'center',
|
|
122
|
+
},
|
|
123
|
+
// An eyebrow: heading face, smallest size, opened right up, second rank.
|
|
124
|
+
// It names who is speaking without competing with what they said.
|
|
125
|
+
author: {
|
|
126
|
+
color: semanticTokens.colorTextSecondary,
|
|
127
|
+
fontFamily: semanticTokens.fontFamilyHeading,
|
|
128
|
+
fontSize: semanticTokens.fontSizeXs,
|
|
129
|
+
letterSpacing: semanticTokens.letterSpacingEyebrow,
|
|
130
|
+
lineHeight: semanticTokens.lineHeightHeading,
|
|
131
|
+
},
|
|
132
|
+
composer: {
|
|
133
|
+
alignItems: 'flex-end',
|
|
134
|
+
display: 'flex',
|
|
135
|
+
gap: semanticTokens.spacingMd,
|
|
136
|
+
},
|
|
137
|
+
// The composer's field is a `TextArea`; all this row asks of it is that it
|
|
138
|
+
// take the space the send control does not.
|
|
139
|
+
entry: {flexGrow: 1},
|
|
140
|
+
// A register of calls, each one a slip pressed into the reply rather than a
|
|
141
|
+
// ruled table under it. A table implies a set the reader has to read across;
|
|
142
|
+
// a call is a single line of evidence, so it takes only the width it needs
|
|
143
|
+
// and the list stops at the longest one instead of stretching to the bubble.
|
|
144
|
+
// The label names the fact and the figure states it, and the pairing is
|
|
145
|
+
// carried by `dt`/`dd` rather than by a colon baked into a text node — a
|
|
146
|
+
// separator written into the markup is one no translation can move. The two
|
|
147
|
+
// ranks come from `Eyebrow` and `Numeral`, which is where those recipes
|
|
148
|
+
// live; this file used to declare a copy of each.
|
|
149
|
+
metadataPair: {
|
|
150
|
+
alignItems: 'baseline',
|
|
151
|
+
display: 'flex',
|
|
152
|
+
gap: semanticTokens.spacingXs,
|
|
153
|
+
},
|
|
154
|
+
metadataTerm: {marginBlock: 0, marginInline: 0},
|
|
155
|
+
metadataDetail: {marginBlock: 0, marginInline: 0},
|
|
156
|
+
toolCalls: {
|
|
157
|
+
alignItems: 'flex-start',
|
|
158
|
+
display: 'flex',
|
|
159
|
+
flexDirection: 'column',
|
|
160
|
+
gap: semanticTokens.spacingXs,
|
|
161
|
+
listStyleType: 'none',
|
|
162
|
+
marginBlock: 0,
|
|
163
|
+
paddingInlineStart: 0,
|
|
164
|
+
},
|
|
165
|
+
toolCall: {
|
|
166
|
+
alignItems: 'center',
|
|
167
|
+
backgroundColor: semanticTokens.colorSurfaceMuted,
|
|
168
|
+
borderRadius: semanticTokens.radiusElement,
|
|
169
|
+
color: semanticTokens.colorTextSecondary,
|
|
170
|
+
display: 'inline-flex',
|
|
171
|
+
fontFamily: semanticTokens.fontFamilyMono,
|
|
172
|
+
fontSize: semanticTokens.fontSizeXs,
|
|
173
|
+
// Every figure in this register — row counts, durations, sizes — has to
|
|
174
|
+
// line up against the one above it.
|
|
175
|
+
fontVariantNumeric: 'tabular-nums',
|
|
176
|
+
gap: semanticTokens.spacingSm,
|
|
177
|
+
letterSpacing: semanticTokens.letterSpacingMono,
|
|
178
|
+
lineHeight: semanticTokens.lineHeightBody,
|
|
179
|
+
paddingBlock: semanticTokens.spacingXs,
|
|
180
|
+
paddingInline: semanticTokens.spacingSm,
|
|
181
|
+
},
|
|
182
|
+
// The slot is always there so every row in the register starts on one edge;
|
|
183
|
+
// only the two statuses that want the reader's attention draw into it. A
|
|
184
|
+
// hollow ring says the call is still running, where a filled dot would read
|
|
185
|
+
// as a status that had already settled.
|
|
186
|
+
toolCallMark: {
|
|
187
|
+
borderColor: 'transparent',
|
|
188
|
+
borderRadius: semanticTokens.radiusFull,
|
|
189
|
+
borderStyle: semanticTokens.borderStyle,
|
|
190
|
+
borderWidth: semanticTokens.borderWidth,
|
|
191
|
+
boxSizing: 'border-box',
|
|
192
|
+
flexShrink: 0,
|
|
193
|
+
height: progressDotSize,
|
|
194
|
+
width: progressDotSize,
|
|
195
|
+
},
|
|
196
|
+
toolCallMarkRunning: {borderColor: semanticTokens.colorTextMuted},
|
|
197
|
+
toolCallMarkFailed: {
|
|
198
|
+
backgroundColor: semanticTokens.statusDangerText,
|
|
199
|
+
borderColor: semanticTokens.statusDangerText,
|
|
200
|
+
},
|
|
201
|
+
// The name is what was called; the outcome beside it is context.
|
|
202
|
+
toolCallOutcome: {
|
|
203
|
+
color: semanticTokens.colorTextMuted,
|
|
204
|
+
fontFamily: semanticTokens.fontFamilyMono,
|
|
205
|
+
},
|
|
206
|
+
// A call that failed is the one line in the register a reader must not skim
|
|
207
|
+
// past, so it is the one that takes colour.
|
|
208
|
+
toolCallOutcomeFailed: {color: semanticTokens.statusDangerText},
|
|
209
|
+
// The row carries no type of its own: every fact inside it is set by the
|
|
210
|
+
// pair below, so a size here would have to be overridden twice.
|
|
211
|
+
metadata: {
|
|
212
|
+
display: 'flex',
|
|
213
|
+
flexWrap: 'wrap',
|
|
214
|
+
gap: semanticTokens.spacingSm,
|
|
215
|
+
lineHeight: semanticTokens.lineHeightBody,
|
|
216
|
+
listStyleType: 'none',
|
|
217
|
+
marginBlock: 0,
|
|
218
|
+
paddingInlineStart: 0,
|
|
219
|
+
},
|
|
220
|
+
});
|
|
221
|
+
|
|
222
|
+
/** Who produced a chat message. */
|
|
223
|
+
export type ChatAuthor = 'assistant' | 'reader' | 'system';
|
|
224
|
+
|
|
225
|
+
const bubbleAuthors = {
|
|
226
|
+
assistant: styles.bubbleAssistant,
|
|
227
|
+
reader: styles.bubbleReader,
|
|
228
|
+
system: styles.bubbleSystem,
|
|
229
|
+
} satisfies Record<ChatAuthor, (typeof styles)[keyof typeof styles]>;
|
|
230
|
+
|
|
231
|
+
/** Props for the message-and-composer frame. */
|
|
232
|
+
export interface ChatLayoutProps extends Omit<
|
|
233
|
+
HTMLAttributes<HTMLDivElement>,
|
|
234
|
+
'className'
|
|
235
|
+
> {
|
|
236
|
+
readonly composer: ReactNode;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/** Frames a scrolling transcript above a fixed composer. */
|
|
240
|
+
export function ChatLayout({children, composer, ...props}: ChatLayoutProps) {
|
|
241
|
+
return (
|
|
242
|
+
<div {...props} {...stylex.props(styles.layout)}>
|
|
243
|
+
{children}
|
|
244
|
+
{composer}
|
|
245
|
+
</div>
|
|
246
|
+
);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
/** Props for the scrolling transcript. */
|
|
250
|
+
export interface ChatMessageListProps extends Omit<
|
|
251
|
+
HTMLAttributes<HTMLUListElement>,
|
|
252
|
+
'aria-atomic' | 'aria-label' | 'aria-live' | 'aria-relevant' | 'className'
|
|
253
|
+
> {
|
|
254
|
+
readonly label: string;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Holds the transcript. A message is announced politely as it lands: the
|
|
259
|
+
* region is not atomic, so a reply arriving does not replay the conversation,
|
|
260
|
+
* and only additions are relevant, so a reply that streams in is announced
|
|
261
|
+
* once rather than re-read on every token.
|
|
262
|
+
*/
|
|
263
|
+
export function ChatMessageList({
|
|
264
|
+
children,
|
|
265
|
+
label,
|
|
266
|
+
...props
|
|
267
|
+
}: ChatMessageListProps) {
|
|
268
|
+
const {messages} = useInternationalization();
|
|
269
|
+
|
|
270
|
+
return (
|
|
271
|
+
<ul
|
|
272
|
+
{...props}
|
|
273
|
+
aria-atomic="false"
|
|
274
|
+
aria-label={label}
|
|
275
|
+
aria-live="polite"
|
|
276
|
+
aria-relevant="additions"
|
|
277
|
+
{...stylex.props(styles.list, scrolling.region)}
|
|
278
|
+
>
|
|
279
|
+
{Children.count(children) === 0 ? (
|
|
280
|
+
<li {...stylex.props(styles.listEmpty)}>
|
|
281
|
+
{messages.chatTranscriptEmpty}
|
|
282
|
+
</li>
|
|
283
|
+
) : (
|
|
284
|
+
children
|
|
285
|
+
)}
|
|
286
|
+
</ul>
|
|
287
|
+
);
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/** Props for one message in the transcript. */
|
|
291
|
+
export interface ChatMessageProps extends Omit<
|
|
292
|
+
HTMLAttributes<HTMLLIElement>,
|
|
293
|
+
'className'
|
|
294
|
+
> {
|
|
295
|
+
readonly author: ChatAuthor;
|
|
296
|
+
readonly authorName?: ReactNode;
|
|
297
|
+
readonly pending?: boolean;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
/**
|
|
301
|
+
* Shows one message. The author is named in text rather than implied by which
|
|
302
|
+
* side the bubble sits on, because alignment is invisible to a screen reader.
|
|
303
|
+
*/
|
|
304
|
+
export function ChatMessage({
|
|
305
|
+
author,
|
|
306
|
+
authorName,
|
|
307
|
+
children,
|
|
308
|
+
pending = false,
|
|
309
|
+
...props
|
|
310
|
+
}: ChatMessageProps) {
|
|
311
|
+
const {messages} = useInternationalization();
|
|
312
|
+
|
|
313
|
+
return (
|
|
314
|
+
<li
|
|
315
|
+
{...props}
|
|
316
|
+
{...stylex.props(
|
|
317
|
+
styles.message,
|
|
318
|
+
author === 'reader' && styles.fromReader,
|
|
319
|
+
)}
|
|
320
|
+
>
|
|
321
|
+
{authorName === undefined ? null : (
|
|
322
|
+
<span
|
|
323
|
+
{...stylex.props(
|
|
324
|
+
styles.author,
|
|
325
|
+
author === 'reader' && styles.authorInset,
|
|
326
|
+
)}
|
|
327
|
+
>
|
|
328
|
+
{authorName}
|
|
329
|
+
</span>
|
|
330
|
+
)}
|
|
331
|
+
<div {...stylex.props(styles.bubble, bubbleAuthors[author])}>
|
|
332
|
+
{pending ? <Spinner label={messages.chatWaitingForReply} /> : children}
|
|
333
|
+
</div>
|
|
334
|
+
</li>
|
|
335
|
+
);
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
/** One tool invocation attached to a message. */
|
|
339
|
+
export interface ChatToolCall {
|
|
340
|
+
readonly detail?: ReactNode;
|
|
341
|
+
readonly id: string;
|
|
342
|
+
readonly name: string;
|
|
343
|
+
readonly status?: 'done' | 'failed' | 'running';
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
/** Props for the tool calls behind a reply. */
|
|
347
|
+
export interface ChatToolCallsProps extends Omit<
|
|
348
|
+
HTMLAttributes<HTMLUListElement>,
|
|
349
|
+
'aria-label' | 'children' | 'className'
|
|
350
|
+
> {
|
|
351
|
+
readonly calls: readonly ChatToolCall[];
|
|
352
|
+
readonly label?: string;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
/** Lists the tool calls behind a reply so the work stays inspectable. */
|
|
356
|
+
export function ChatToolCalls({
|
|
357
|
+
calls,
|
|
358
|
+
label = 'Tool calls',
|
|
359
|
+
...props
|
|
360
|
+
}: ChatToolCallsProps) {
|
|
361
|
+
const {messages} = useInternationalization();
|
|
362
|
+
// `status` is an enum, not a sentence. Printed straight it put the English
|
|
363
|
+
// words "running" and "failed" into a transcript in any language, and only
|
|
364
|
+
// one of the three ever reached the page at all.
|
|
365
|
+
const outcomes = {
|
|
366
|
+
done: messages.chatToolCallDone,
|
|
367
|
+
failed: messages.chatToolCallFailed,
|
|
368
|
+
running: messages.chatToolCallRunning,
|
|
369
|
+
};
|
|
370
|
+
|
|
371
|
+
return (
|
|
372
|
+
<ul {...props} aria-label={label} {...stylex.props(styles.toolCalls)}>
|
|
373
|
+
{calls.map((call) => (
|
|
374
|
+
<li key={call.id} {...stylex.props(styles.toolCall)}>
|
|
375
|
+
<span
|
|
376
|
+
aria-hidden="true"
|
|
377
|
+
{...stylex.props(
|
|
378
|
+
styles.toolCallMark,
|
|
379
|
+
call.status === 'running' && styles.toolCallMarkRunning,
|
|
380
|
+
call.status === 'failed' && styles.toolCallMarkFailed,
|
|
381
|
+
)}
|
|
382
|
+
/>
|
|
383
|
+
<span>{call.name}</span>
|
|
384
|
+
<span
|
|
385
|
+
{...stylex.props(
|
|
386
|
+
styles.toolCallOutcome,
|
|
387
|
+
call.status === 'failed' && styles.toolCallOutcomeFailed,
|
|
388
|
+
)}
|
|
389
|
+
>
|
|
390
|
+
{call.detail ?? (call.status ? outcomes[call.status] : '')}
|
|
391
|
+
</span>
|
|
392
|
+
</li>
|
|
393
|
+
))}
|
|
394
|
+
</ul>
|
|
395
|
+
);
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
/** Props for the message composer. */
|
|
399
|
+
export interface ChatComposerProps extends Omit<
|
|
400
|
+
HTMLAttributes<HTMLFormElement>,
|
|
401
|
+
'children' | 'className' | 'onSubmit'
|
|
402
|
+
> {
|
|
403
|
+
readonly disabled?: boolean;
|
|
404
|
+
readonly label: string;
|
|
405
|
+
readonly onSend: (message: string) => void;
|
|
406
|
+
readonly placeholder?: string;
|
|
407
|
+
readonly sendLabel?: ReactNode;
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
/**
|
|
411
|
+
* Composes a message. Enter sends and Shift+Enter starts a new line, which is
|
|
412
|
+
* what a reader expects from every other chat field.
|
|
413
|
+
*/
|
|
414
|
+
export function ChatComposer({
|
|
415
|
+
disabled = false,
|
|
416
|
+
label,
|
|
417
|
+
onSend,
|
|
418
|
+
placeholder,
|
|
419
|
+
sendLabel = 'Send',
|
|
420
|
+
...props
|
|
421
|
+
}: ChatComposerProps) {
|
|
422
|
+
const [draft, setDraft] = useState('');
|
|
423
|
+
|
|
424
|
+
function send() {
|
|
425
|
+
const message = draft.trim();
|
|
426
|
+
if (message === '' || disabled) {
|
|
427
|
+
return;
|
|
428
|
+
}
|
|
429
|
+
onSend(message);
|
|
430
|
+
setDraft('');
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
function handleSubmit(event: FormEvent<HTMLFormElement>) {
|
|
434
|
+
event.preventDefault();
|
|
435
|
+
send();
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
function handleKeyDown(event: KeyboardEvent<HTMLTextAreaElement>) {
|
|
439
|
+
if (event.key === 'Enter' && !event.shiftKey) {
|
|
440
|
+
event.preventDefault();
|
|
441
|
+
send();
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
return (
|
|
446
|
+
<form {...props} onSubmit={handleSubmit} {...stylex.props(styles.composer)}>
|
|
447
|
+
{/*
|
|
448
|
+
`TextArea`, not a private copy of it. The copy had drifted: a step more
|
|
449
|
+
padding, a min-height of one control rather than four lines, and none
|
|
450
|
+
of the active, read-only or invalid states the real one carries.
|
|
451
|
+
*/}
|
|
452
|
+
<TextArea
|
|
453
|
+
aria-label={label}
|
|
454
|
+
disabled={disabled}
|
|
455
|
+
onKeyDown={handleKeyDown}
|
|
456
|
+
onValueChange={setDraft}
|
|
457
|
+
placeholder={placeholder}
|
|
458
|
+
rows={2}
|
|
459
|
+
value={draft}
|
|
460
|
+
{...stylex.props(styles.entry)}
|
|
461
|
+
/>
|
|
462
|
+
<Button disabled={disabled || draft.trim() === ''} type="submit">
|
|
463
|
+
{sendLabel}
|
|
464
|
+
</Button>
|
|
465
|
+
</form>
|
|
466
|
+
);
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
/** One labelled fact about how a message was produced. */
|
|
470
|
+
export interface ChatMetadataEntry {
|
|
471
|
+
readonly label: string;
|
|
472
|
+
readonly value: ReactNode;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
/** Props for the provenance line under a message. */
|
|
476
|
+
export interface ChatMessageMetadataProps extends Omit<
|
|
477
|
+
HTMLAttributes<HTMLDListElement>,
|
|
478
|
+
'children' | 'className'
|
|
479
|
+
> {
|
|
480
|
+
readonly entries: readonly ChatMetadataEntry[];
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
/**
|
|
484
|
+
* States how a reply was produced — model, latency, token count. Each fact
|
|
485
|
+
* carries its label in the accessible name, because "1.2s" on its own tells a
|
|
486
|
+
* screen-reader user nothing about what took that long.
|
|
487
|
+
*/
|
|
488
|
+
export function ChatMessageMetadata({
|
|
489
|
+
entries,
|
|
490
|
+
...props
|
|
491
|
+
}: ChatMessageMetadataProps) {
|
|
492
|
+
return (
|
|
493
|
+
<dl {...props} {...stylex.props(styles.metadata)}>
|
|
494
|
+
{entries.map((entry) => (
|
|
495
|
+
<div key={entry.label} {...stylex.props(styles.metadataPair)}>
|
|
496
|
+
<dt {...stylex.props(styles.metadataTerm)}>
|
|
497
|
+
<Eyebrow>{entry.label}</Eyebrow>
|
|
498
|
+
</dt>
|
|
499
|
+
<dd {...stylex.props(styles.metadataDetail)}>
|
|
500
|
+
<Numeral>{entry.value}</Numeral>
|
|
501
|
+
</dd>
|
|
502
|
+
</div>
|
|
503
|
+
))}
|
|
504
|
+
</dl>
|
|
505
|
+
);
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
/** Props for a message from the system rather than a participant. */
|
|
509
|
+
export interface ChatSystemMessageProps extends Omit<
|
|
510
|
+
HTMLAttributes<HTMLLIElement>,
|
|
511
|
+
'className'
|
|
512
|
+
> {
|
|
513
|
+
readonly children: ReactNode;
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
/**
|
|
517
|
+
* A note from the system — a conversation start, a model change, a
|
|
518
|
+
* disconnection. It sits in the transcript but is attributed to no one, so it
|
|
519
|
+
* is centred and quiet rather than dressed as either side of the exchange.
|
|
520
|
+
*/
|
|
521
|
+
export function ChatSystemMessage({
|
|
522
|
+
children,
|
|
523
|
+
...props
|
|
524
|
+
}: ChatSystemMessageProps) {
|
|
525
|
+
// The same note `ChatMessage author="system"` draws. Two renderings of one
|
|
526
|
+
// thing is two places to change it, and they had already drifted: this one
|
|
527
|
+
// had no bubble box, so a system note sat on a different rhythm from every
|
|
528
|
+
// other row in the transcript.
|
|
529
|
+
return (
|
|
530
|
+
<ChatMessage author="system" {...props}>
|
|
531
|
+
{children}
|
|
532
|
+
</ChatMessage>
|
|
533
|
+
);
|
|
534
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export {
|
|
2
|
+
ChatComposer,
|
|
3
|
+
ChatLayout,
|
|
4
|
+
ChatMessage,
|
|
5
|
+
ChatMessageList,
|
|
6
|
+
ChatMessageMetadata,
|
|
7
|
+
ChatSystemMessage,
|
|
8
|
+
ChatToolCalls,
|
|
9
|
+
type ChatAuthor,
|
|
10
|
+
type ChatComposerProps,
|
|
11
|
+
type ChatLayoutProps,
|
|
12
|
+
type ChatMessageListProps,
|
|
13
|
+
type ChatMessageMetadataProps,
|
|
14
|
+
type ChatMessageProps,
|
|
15
|
+
type ChatMetadataEntry,
|
|
16
|
+
type ChatSystemMessageProps,
|
|
17
|
+
type ChatToolCall,
|
|
18
|
+
type ChatToolCallsProps,
|
|
19
|
+
} from './Chat.js';
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type {ComponentDoc} from '../docs/types.js';
|
|
2
|
+
|
|
3
|
+
export const checkboxInputDoc = {
|
|
4
|
+
name: 'CheckboxInput',
|
|
5
|
+
description: 'Records one independent choice.',
|
|
6
|
+
props: [
|
|
7
|
+
{name: 'checked', description: 'Controls the checked state.'},
|
|
8
|
+
{
|
|
9
|
+
name: 'defaultChecked',
|
|
10
|
+
description: 'Sets the initial uncontrolled state.',
|
|
11
|
+
},
|
|
12
|
+
{name: 'description', description: 'Adds detail under the label.'},
|
|
13
|
+
{
|
|
14
|
+
name: 'indeterminate',
|
|
15
|
+
description: 'Shows a mixed state until the reader decides.',
|
|
16
|
+
},
|
|
17
|
+
{name: 'label', description: 'Names the choice.'},
|
|
18
|
+
{name: 'onCheckedChange', description: 'Receives the next checked state.'},
|
|
19
|
+
],
|
|
20
|
+
inheritedProps: [
|
|
21
|
+
'InputHTMLAttributes<HTMLInputElement> except checked, children, className, defaultChecked, onChange, and type',
|
|
22
|
+
],
|
|
23
|
+
example:
|
|
24
|
+
'<CheckboxInput label="Notify subscribers" onCheckedChange={setNotify} checked={notify} />',
|
|
25
|
+
storyId: 'core-checkbox-input--default',
|
|
26
|
+
} satisfies ComponentDoc;
|