@wallarm-org/design-system 0.1.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 +92 -0
- package/dist/components/Alert/Alert.d.ts +25 -0
- package/dist/components/Alert/Alert.figma.d.ts +1 -0
- package/dist/components/Alert/Alert.figma.js +240 -0
- package/dist/components/Alert/Alert.js +37 -0
- package/dist/components/Alert/AlertClose.d.ts +12 -0
- package/dist/components/Alert/AlertClose.js +28 -0
- package/dist/components/Alert/AlertContent.d.ts +10 -0
- package/dist/components/Alert/AlertContent.js +10 -0
- package/dist/components/Alert/AlertControls.d.ts +11 -0
- package/dist/components/Alert/AlertControls.js +12 -0
- package/dist/components/Alert/AlertDescription.d.ts +15 -0
- package/dist/components/Alert/AlertDescription.js +22 -0
- package/dist/components/Alert/AlertIcon.d.ts +14 -0
- package/dist/components/Alert/AlertIcon.js +57 -0
- package/dist/components/Alert/AlertTitle.d.ts +15 -0
- package/dist/components/Alert/AlertTitle.js +23 -0
- package/dist/components/Alert/const.d.ts +2 -0
- package/dist/components/Alert/const.js +3 -0
- package/dist/components/Alert/index.d.ts +8 -0
- package/dist/components/Alert/index.js +9 -0
- package/dist/components/Badge/Badge.d.ts +12 -0
- package/dist/components/Badge/Badge.js +32 -0
- package/dist/components/Badge/classes.d.ts +10 -0
- package/dist/components/Badge/classes.js +54 -0
- package/dist/components/Badge/constants.d.ts +30 -0
- package/dist/components/Badge/constants.js +31 -0
- package/dist/components/Badge/generateBadgeVariants.d.ts +14 -0
- package/dist/components/Badge/generateBadgeVariants.js +232 -0
- package/dist/components/Badge/index.d.ts +2 -0
- package/dist/components/Badge/index.js +3 -0
- package/dist/components/Badge/types.d.ts +3 -0
- package/dist/components/Badge/types.js +0 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +9 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.figma.d.ts +1 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.figma.js +38 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.js +31 -0
- package/dist/components/Breadcrumbs/BreadcrumbsEllipsis.d.ts +18 -0
- package/dist/components/Breadcrumbs/BreadcrumbsEllipsis.js +22 -0
- package/dist/components/Breadcrumbs/BreadcrumbsItem.d.ts +38 -0
- package/dist/components/Breadcrumbs/BreadcrumbsItem.js +51 -0
- package/dist/components/Breadcrumbs/BreadcrumbsSeparator.d.ts +23 -0
- package/dist/components/Breadcrumbs/BreadcrumbsSeparator.js +14 -0
- package/dist/components/Breadcrumbs/index.d.ts +4 -0
- package/dist/components/Breadcrumbs/index.js +5 -0
- package/dist/components/Button/Button.d.ts +11 -0
- package/dist/components/Button/Button.figma.d.ts +1 -0
- package/dist/components/Button/Button.figma.js +276 -0
- package/dist/components/Button/Button.js +105 -0
- package/dist/components/Button/index.d.ts +1 -0
- package/dist/components/Button/index.js +2 -0
- package/dist/components/ButtonBase/ButtonBase.d.ts +13 -0
- package/dist/components/ButtonBase/ButtonBase.js +40 -0
- package/dist/components/ButtonBase/classes.d.ts +7 -0
- package/dist/components/ButtonBase/classes.js +59 -0
- package/dist/components/ButtonBase/index.d.ts +2 -0
- package/dist/components/ButtonBase/index.js +3 -0
- package/dist/components/Checkbox/Checkbox.d.ts +4 -0
- package/dist/components/Checkbox/Checkbox.figma.d.ts +1 -0
- package/dist/components/Checkbox/Checkbox.figma.js +98 -0
- package/dist/components/Checkbox/Checkbox.js +13 -0
- package/dist/components/Checkbox/CheckboxDescription.d.ts +3 -0
- package/dist/components/Checkbox/CheckboxDescription.js +12 -0
- package/dist/components/Checkbox/CheckboxGroup.d.ts +11 -0
- package/dist/components/Checkbox/CheckboxGroup.figma.d.ts +1 -0
- package/dist/components/Checkbox/CheckboxGroup.figma.js +12 -0
- package/dist/components/Checkbox/CheckboxGroup.js +20 -0
- package/dist/components/Checkbox/CheckboxIndicator.d.ts +2 -0
- package/dist/components/Checkbox/CheckboxIndicator.js +16 -0
- package/dist/components/Checkbox/CheckboxLabel.d.ts +4 -0
- package/dist/components/Checkbox/CheckboxLabel.js +9 -0
- package/dist/components/Checkbox/index.d.ts +5 -0
- package/dist/components/Checkbox/index.js +6 -0
- package/dist/components/Checkmark/Checkmark.d.ts +9 -0
- package/dist/components/Checkmark/Checkmark.js +10 -0
- package/dist/components/Checkmark/index.d.ts +1 -0
- package/dist/components/Checkmark/index.js +2 -0
- package/dist/components/Code/Code.d.ts +19 -0
- package/dist/components/Code/Code.js +49 -0
- package/dist/components/Code/index.d.ts +1 -0
- package/dist/components/Code/index.js +2 -0
- package/dist/components/CodeSnippet/CodeSnippet.figma.d.ts +1 -0
- package/dist/components/CodeSnippet/CodeSnippet.figma.js +32 -0
- package/dist/components/CodeSnippet/CodeSnippetAdapterProvider.d.ts +25 -0
- package/dist/components/CodeSnippet/CodeSnippetAdapterProvider.js +29 -0
- package/dist/components/CodeSnippet/CodeSnippetCode.d.ts +5 -0
- package/dist/components/CodeSnippet/CodeSnippetCode.js +43 -0
- package/dist/components/CodeSnippet/CodeSnippetContent.d.ts +11 -0
- package/dist/components/CodeSnippet/CodeSnippetContent.js +94 -0
- package/dist/components/CodeSnippet/CodeSnippetContext.d.ts +42 -0
- package/dist/components/CodeSnippet/CodeSnippetContext.js +4 -0
- package/dist/components/CodeSnippet/CodeSnippetLineNumbers.d.ts +5 -0
- package/dist/components/CodeSnippet/CodeSnippetLineNumbers.js +25 -0
- package/dist/components/CodeSnippet/CodeSnippetRoot.d.ts +32 -0
- package/dist/components/CodeSnippet/CodeSnippetRoot.js +111 -0
- package/dist/components/CodeSnippet/InlineCodeSnippet.d.ts +22 -0
- package/dist/components/CodeSnippet/InlineCodeSnippet.figma.d.ts +1 -0
- package/dist/components/CodeSnippet/InlineCodeSnippet.figma.js +18 -0
- package/dist/components/CodeSnippet/InlineCodeSnippet.js +67 -0
- package/dist/components/CodeSnippet/adapters/highlightjs.d.ts +2 -0
- package/dist/components/CodeSnippet/adapters/highlightjs.js +136 -0
- package/dist/components/CodeSnippet/adapters/index.d.ts +20 -0
- package/dist/components/CodeSnippet/adapters/index.js +14 -0
- package/dist/components/CodeSnippet/adapters/plain.d.ts +2 -0
- package/dist/components/CodeSnippet/adapters/plain.js +22 -0
- package/dist/components/CodeSnippet/adapters/prism.d.ts +2 -0
- package/dist/components/CodeSnippet/adapters/prism.js +140 -0
- package/dist/components/CodeSnippet/adapters/shiki.d.ts +2 -0
- package/dist/components/CodeSnippet/adapters/shiki.js +88 -0
- package/dist/components/CodeSnippet/adapters/types.d.ts +22 -0
- package/dist/components/CodeSnippet/adapters/types.js +0 -0
- package/dist/components/CodeSnippet/hooks/index.d.ts +2 -0
- package/dist/components/CodeSnippet/hooks/index.js +3 -0
- package/dist/components/CodeSnippet/hooks/useAdapter.d.ts +2 -0
- package/dist/components/CodeSnippet/hooks/useAdapter.js +4 -0
- package/dist/components/CodeSnippet/hooks/useCodeSnippet.d.ts +2 -0
- package/dist/components/CodeSnippet/hooks/useCodeSnippet.js +8 -0
- package/dist/components/CodeSnippet/index.d.ts +10 -0
- package/dist/components/CodeSnippet/index.js +9 -0
- package/dist/components/CodeSnippet/internal/CodeContent.d.ts +7 -0
- package/dist/components/CodeSnippet/internal/CodeContent.js +11 -0
- package/dist/components/CodeSnippet/internal/CodeLine.d.ts +13 -0
- package/dist/components/CodeSnippet/internal/CodeLine.js +35 -0
- package/dist/components/CodeSnippet/internal/CodeSnippetHighlights.d.ts +3 -0
- package/dist/components/CodeSnippet/internal/CodeSnippetHighlights.js +26 -0
- package/dist/components/CodeSnippet/internal/CodeToken.d.ts +8 -0
- package/dist/components/CodeSnippet/internal/CodeToken.js +26 -0
- package/dist/components/CodeSnippet/internal/ColorStickColumn.d.ts +9 -0
- package/dist/components/CodeSnippet/internal/ColorStickColumn.js +18 -0
- package/dist/components/CodeSnippet/internal/PrefixColumn.d.ts +9 -0
- package/dist/components/CodeSnippet/internal/PrefixColumn.js +19 -0
- package/dist/components/CodeSnippet/internal/TokenizedCodeLine.d.ts +14 -0
- package/dist/components/CodeSnippet/internal/TokenizedCodeLine.js +19 -0
- package/dist/components/CodeSnippet/internal/index.d.ts +6 -0
- package/dist/components/CodeSnippet/internal/index.js +7 -0
- package/dist/components/CodeSnippet/lib/lineStyles.d.ts +19 -0
- package/dist/components/CodeSnippet/lib/lineStyles.js +48 -0
- package/dist/components/CodeSnippet/lib/lineUtils.d.ts +12 -0
- package/dist/components/CodeSnippet/lib/lineUtils.js +13 -0
- package/dist/components/Dialog/Dialog.d.ts +4 -0
- package/dist/components/Dialog/Dialog.js +11 -0
- package/dist/components/Dialog/DialogBody.d.ts +4 -0
- package/dist/components/Dialog/DialogBody.js +4 -0
- package/dist/components/Dialog/DialogClose.d.ts +5 -0
- package/dist/components/Dialog/DialogClose.js +4 -0
- package/dist/components/Dialog/DialogContent.d.ts +7 -0
- package/dist/components/Dialog/DialogContent.js +27 -0
- package/dist/components/Dialog/DialogFooter.d.ts +5 -0
- package/dist/components/Dialog/DialogFooter.js +4 -0
- package/dist/components/Dialog/DialogFooterControls.d.ts +4 -0
- package/dist/components/Dialog/DialogFooterControls.js +4 -0
- package/dist/components/Dialog/DialogHeader.d.ts +5 -0
- package/dist/components/Dialog/DialogHeader.js +4 -0
- package/dist/components/Dialog/DialogPositioner.d.ts +5 -0
- package/dist/components/Dialog/DialogPositioner.js +12 -0
- package/dist/components/Dialog/DialogTitle.d.ts +5 -0
- package/dist/components/Dialog/DialogTitle.js +4 -0
- package/dist/components/Dialog/DialogTrigger.d.ts +5 -0
- package/dist/components/Dialog/DialogTrigger.js +4 -0
- package/dist/components/Dialog/constants.d.ts +11 -0
- package/dist/components/Dialog/constants.js +10 -0
- package/dist/components/Dialog/index.d.ts +10 -0
- package/dist/components/Dialog/index.js +11 -0
- package/dist/components/Drawer/Drawer.d.ts +21 -0
- package/dist/components/Drawer/Drawer.js +19 -0
- package/dist/components/Drawer/DrawerBody.d.ts +6 -0
- package/dist/components/Drawer/DrawerBody.js +20 -0
- package/dist/components/Drawer/DrawerClose.d.ts +8 -0
- package/dist/components/Drawer/DrawerClose.js +50 -0
- package/dist/components/Drawer/DrawerContent.d.ts +7 -0
- package/dist/components/Drawer/DrawerContent.js +32 -0
- package/dist/components/Drawer/DrawerContext/DrawerContext.d.ts +2 -0
- package/dist/components/Drawer/DrawerContext/DrawerContext.js +3 -0
- package/dist/components/Drawer/DrawerContext/DrawerProvider.d.ts +18 -0
- package/dist/components/Drawer/DrawerContext/DrawerProvider.js +34 -0
- package/dist/components/Drawer/DrawerContext/index.d.ts +4 -0
- package/dist/components/Drawer/DrawerContext/index.js +4 -0
- package/dist/components/Drawer/DrawerContext/types.d.ts +12 -0
- package/dist/components/Drawer/DrawerContext/types.js +0 -0
- package/dist/components/Drawer/DrawerContext/useDrawerContext.d.ts +1 -0
- package/dist/components/Drawer/DrawerContext/useDrawerContext.js +8 -0
- package/dist/components/Drawer/DrawerFooter.d.ts +6 -0
- package/dist/components/Drawer/DrawerFooter.js +10 -0
- package/dist/components/Drawer/DrawerFooterControls.d.ts +12 -0
- package/dist/components/Drawer/DrawerFooterControls.js +19 -0
- package/dist/components/Drawer/DrawerHeader.d.ts +6 -0
- package/dist/components/Drawer/DrawerHeader.js +14 -0
- package/dist/components/Drawer/DrawerOverlay.d.ts +6 -0
- package/dist/components/Drawer/DrawerOverlay.js +10 -0
- package/dist/components/Drawer/DrawerPortal.d.ts +6 -0
- package/dist/components/Drawer/DrawerPortal.js +8 -0
- package/dist/components/Drawer/DrawerPositioner.d.ts +6 -0
- package/dist/components/Drawer/DrawerPositioner.js +12 -0
- package/dist/components/Drawer/DrawerResizeHandle.d.ts +6 -0
- package/dist/components/Drawer/DrawerResizeHandle.js +88 -0
- package/dist/components/Drawer/DrawerRoot.d.ts +8 -0
- package/dist/components/Drawer/DrawerRoot.js +21 -0
- package/dist/components/Drawer/DrawerTitle.d.ts +6 -0
- package/dist/components/Drawer/DrawerTitle.js +10 -0
- package/dist/components/Drawer/DrawerTrigger.d.ts +8 -0
- package/dist/components/Drawer/DrawerTrigger.js +9 -0
- package/dist/components/Drawer/classes.d.ts +6 -0
- package/dist/components/Drawer/classes.js +17 -0
- package/dist/components/Drawer/constants.d.ts +11 -0
- package/dist/components/Drawer/constants.js +10 -0
- package/dist/components/Drawer/index.d.ts +15 -0
- package/dist/components/Drawer/index.js +16 -0
- package/dist/components/DropdownMenu/DropdownMenu.d.ts +3 -0
- package/dist/components/DropdownMenu/DropdownMenu.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.d.ts +7 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.js +30 -0
- package/dist/components/DropdownMenu/DropdownMenuGroup.d.ts +3 -0
- package/dist/components/DropdownMenu/DropdownMenuGroup.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.d.ts +13 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.js +13 -0
- package/dist/components/DropdownMenu/DropdownMenuItemContent.d.ts +2 -0
- package/dist/components/DropdownMenu/DropdownMenuItemContent.js +8 -0
- package/dist/components/DropdownMenu/DropdownMenuItemDescription.d.ts +2 -0
- package/dist/components/DropdownMenu/DropdownMenuItemDescription.js +9 -0
- package/dist/components/DropdownMenu/DropdownMenuItemIcon.d.ts +2 -0
- package/dist/components/DropdownMenu/DropdownMenuItemIcon.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuItemText.d.ts +2 -0
- package/dist/components/DropdownMenu/DropdownMenuItemText.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.d.ts +11 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.js +12 -0
- package/dist/components/DropdownMenu/DropdownMenuPortal.d.ts +3 -0
- package/dist/components/DropdownMenu/DropdownMenuPortal.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.d.ts +6 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.js +9 -0
- package/dist/components/DropdownMenu/DropdownMenuShortcut.d.ts +2 -0
- package/dist/components/DropdownMenu/DropdownMenuShortcut.js +8 -0
- package/dist/components/DropdownMenu/DropdownMenuSub.d.ts +3 -0
- package/dist/components/DropdownMenu/DropdownMenuSub.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuSubContent.d.ts +7 -0
- package/dist/components/DropdownMenu/DropdownMenuSubContent.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
- package/dist/components/DropdownMenu/DropdownMenuSubTrigger.js +21 -0
- package/dist/components/DropdownMenu/DropdownMenuTrigger.d.ts +3 -0
- package/dist/components/DropdownMenu/DropdownMenuTrigger.js +7 -0
- package/dist/components/DropdownMenu/classes.d.ts +8 -0
- package/dist/components/DropdownMenu/classes.js +28 -0
- package/dist/components/DropdownMenu/index.d.ts +13 -0
- package/dist/components/DropdownMenu/index.js +14 -0
- package/dist/components/Field/Field.d.ts +11 -0
- package/dist/components/Field/Field.js +44 -0
- package/dist/components/Field/FieldAction.d.ts +9 -0
- package/dist/components/Field/FieldAction.js +17 -0
- package/dist/components/Field/FieldContent.d.ts +4 -0
- package/dist/components/Field/FieldContent.js +9 -0
- package/dist/components/Field/FieldDescription.d.ts +4 -0
- package/dist/components/Field/FieldDescription.js +9 -0
- package/dist/components/Field/FieldError.d.ts +4 -0
- package/dist/components/Field/FieldError.js +23 -0
- package/dist/components/Field/FieldGroup.d.ts +4 -0
- package/dist/components/Field/FieldGroup.js +9 -0
- package/dist/components/Field/FieldIndicator.d.ts +2 -0
- package/dist/components/Field/FieldIndicator.js +12 -0
- package/dist/components/Field/FieldLabel.d.ts +5 -0
- package/dist/components/Field/FieldLabel.js +17 -0
- package/dist/components/Field/FieldLegend.d.ts +8 -0
- package/dist/components/Field/FieldLegend.js +10 -0
- package/dist/components/Field/FieldSeparator.d.ts +5 -0
- package/dist/components/Field/FieldSeparator.js +7 -0
- package/dist/components/Field/FieldSet.d.ts +4 -0
- package/dist/components/Field/FieldSet.js +9 -0
- package/dist/components/Field/FieldTitle.d.ts +4 -0
- package/dist/components/Field/FieldTitle.js +9 -0
- package/dist/components/Field/index.d.ts +11 -0
- package/dist/components/Field/index.js +12 -0
- package/dist/components/Field/utils.d.ts +2 -0
- package/dist/components/Field/utils.js +7 -0
- package/dist/components/Flex/Flex.d.ts +21 -0
- package/dist/components/Flex/Flex.js +120 -0
- package/dist/components/Flex/index.d.ts +1 -0
- package/dist/components/Flex/index.js +2 -0
- package/dist/components/Heading/Heading.d.ts +20 -0
- package/dist/components/Heading/Heading.js +60 -0
- package/dist/components/Heading/index.d.ts +1 -0
- package/dist/components/Heading/index.js +2 -0
- package/dist/components/Input/Input.d.ts +10 -0
- package/dist/components/Input/Input.figma.d.ts +1 -0
- package/dist/components/Input/Input.figma.js +43 -0
- package/dist/components/Input/Input.js +21 -0
- package/dist/components/Input/classes.d.ts +3 -0
- package/dist/components/Input/classes.js +19 -0
- package/dist/components/Input/index.d.ts +2 -0
- package/dist/components/Input/index.js +3 -0
- package/dist/components/InputGroup/InputGroup.d.ts +4 -0
- package/dist/components/InputGroup/InputGroup.js +10 -0
- package/dist/components/InputGroup/InputGroupAddon.d.ts +8 -0
- package/dist/components/InputGroup/InputGroupAddon.js +70 -0
- package/dist/components/InputGroup/InputGroupInput.d.ts +4 -0
- package/dist/components/InputGroup/InputGroupInput.js +10 -0
- package/dist/components/InputGroup/InputGroupText.d.ts +5 -0
- package/dist/components/InputGroup/InputGroupText.js +9 -0
- package/dist/components/InputGroup/index.d.ts +4 -0
- package/dist/components/InputGroup/index.js +5 -0
- package/dist/components/Kbd/Kbd.d.ts +9 -0
- package/dist/components/Kbd/Kbd.figma.d.ts +1 -0
- package/dist/components/Kbd/Kbd.figma.js +21 -0
- package/dist/components/Kbd/Kbd.js +20 -0
- package/dist/components/Kbd/KbdGroup.d.ts +4 -0
- package/dist/components/Kbd/KbdGroup.js +9 -0
- package/dist/components/Kbd/index.d.ts +2 -0
- package/dist/components/Kbd/index.js +3 -0
- package/dist/components/Label/Label.d.ts +6 -0
- package/dist/components/Label/Label.js +10 -0
- package/dist/components/Label/index.d.ts +1 -0
- package/dist/components/Label/index.js +2 -0
- package/dist/components/Link/Link.d.ts +11 -0
- package/dist/components/Link/Link.figma.d.ts +1 -0
- package/dist/components/Link/Link.figma.js +125 -0
- package/dist/components/Link/Link.js +16 -0
- package/dist/components/Link/classes.d.ts +5 -0
- package/dist/components/Link/classes.js +22 -0
- package/dist/components/Link/index.d.ts +2 -0
- package/dist/components/Link/index.js +3 -0
- package/dist/components/Loader/Loader.d.ts +15 -0
- package/dist/components/Loader/Loader.figma.d.ts +1 -0
- package/dist/components/Loader/Loader.figma.js +64 -0
- package/dist/components/Loader/Loader.js +41 -0
- package/dist/components/Loader/LoaderCircle.d.ts +6 -0
- package/dist/components/Loader/LoaderCircle.js +19 -0
- package/dist/components/Loader/LoaderSonner.d.ts +4 -0
- package/dist/components/Loader/LoaderSonner.js +59 -0
- package/dist/components/Loader/index.d.ts +1 -0
- package/dist/components/Loader/index.js +2 -0
- package/dist/components/NumberInput/NumberInput.d.ts +10 -0
- package/dist/components/NumberInput/NumberInput.js +31 -0
- package/dist/components/NumberInput/index.d.ts +1 -0
- package/dist/components/NumberInput/index.js +2 -0
- package/dist/components/NumericBadge/NumericBadge.d.ts +10 -0
- package/dist/components/NumericBadge/NumericBadge.figma.d.ts +1 -0
- package/dist/components/NumericBadge/NumericBadge.figma.js +21 -0
- package/dist/components/NumericBadge/NumericBadge.js +25 -0
- package/dist/components/NumericBadge/index.d.ts +1 -0
- package/dist/components/NumericBadge/index.js +2 -0
- package/dist/components/OverflowList/OverflowList.d.ts +13 -0
- package/dist/components/OverflowList/OverflowList.js +80 -0
- package/dist/components/OverflowList/index.d.ts +2 -0
- package/dist/components/OverflowList/index.js +2 -0
- package/dist/components/OverflowTooltip/OverflowTooltip.d.ts +13 -0
- package/dist/components/OverflowTooltip/OverflowTooltip.js +23 -0
- package/dist/components/OverflowTooltip/OverflowTooltipContent.d.ts +15 -0
- package/dist/components/OverflowTooltip/OverflowTooltipContent.js +13 -0
- package/dist/components/OverflowTooltip/OverflowTooltipContext.d.ts +8 -0
- package/dist/components/OverflowTooltip/OverflowTooltipContext.js +8 -0
- package/dist/components/OverflowTooltip/OverflowTooltipTrigger.d.ts +11 -0
- package/dist/components/OverflowTooltip/OverflowTooltipTrigger.js +47 -0
- package/dist/components/OverflowTooltip/index.d.ts +6 -0
- package/dist/components/OverflowTooltip/index.js +4 -0
- package/dist/components/Overlay/Overlay.d.ts +6 -0
- package/dist/components/Overlay/Overlay.js +8 -0
- package/dist/components/Overlay/index.d.ts +1 -0
- package/dist/components/Overlay/index.js +2 -0
- package/dist/components/Polymorphic/Polymorphic.d.ts +15 -0
- package/dist/components/Polymorphic/Polymorphic.js +11 -0
- package/dist/components/Polymorphic/index.d.ts +1 -0
- package/dist/components/Polymorphic/index.js +2 -0
- package/dist/components/Popover/Popover.d.ts +8 -0
- package/dist/components/Popover/Popover.js +23 -0
- package/dist/components/Popover/PopoverContent.d.ts +11 -0
- package/dist/components/Popover/PopoverContent.js +51 -0
- package/dist/components/Popover/PopoverTrigger.d.ts +10 -0
- package/dist/components/Popover/PopoverTrigger.js +14 -0
- package/dist/components/Popover/constants.d.ts +5 -0
- package/dist/components/Popover/constants.js +5 -0
- package/dist/components/Popover/index.d.ts +4 -0
- package/dist/components/Popover/index.js +4 -0
- package/dist/components/Popover/types.d.ts +1 -0
- package/dist/components/Popover/types.js +0 -0
- package/dist/components/Radio/Radio.d.ts +4 -0
- package/dist/components/Radio/Radio.figma.d.ts +1 -0
- package/dist/components/Radio/Radio.figma.js +69 -0
- package/dist/components/Radio/Radio.js +13 -0
- package/dist/components/Radio/RadioDescription.d.ts +3 -0
- package/dist/components/Radio/RadioDescription.js +12 -0
- package/dist/components/Radio/RadioGroup.d.ts +11 -0
- package/dist/components/Radio/RadioGroup.figma.d.ts +1 -0
- package/dist/components/Radio/RadioGroup.figma.js +13 -0
- package/dist/components/Radio/RadioGroup.js +20 -0
- package/dist/components/Radio/RadioIndicator.d.ts +2 -0
- package/dist/components/Radio/RadioIndicator.js +13 -0
- package/dist/components/Radio/RadioLabel.d.ts +4 -0
- package/dist/components/Radio/RadioLabel.js +8 -0
- package/dist/components/Radio/index.d.ts +5 -0
- package/dist/components/Radio/index.js +6 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts +4 -0
- package/dist/components/ScrollArea/ScrollArea.js +9 -0
- package/dist/components/ScrollArea/ScrollAreaContent.d.ts +4 -0
- package/dist/components/ScrollArea/ScrollAreaContent.js +9 -0
- package/dist/components/ScrollArea/ScrollAreaCorner.d.ts +2 -0
- package/dist/components/ScrollArea/ScrollAreaCorner.js +4 -0
- package/dist/components/ScrollArea/ScrollAreaScrollbar.d.ts +4 -0
- package/dist/components/ScrollArea/ScrollAreaScrollbar.js +51 -0
- package/dist/components/ScrollArea/ScrollAreaViewport.d.ts +6 -0
- package/dist/components/ScrollArea/ScrollAreaViewport.js +8 -0
- package/dist/components/ScrollArea/index.d.ts +5 -0
- package/dist/components/ScrollArea/index.js +6 -0
- package/dist/components/SegmentedControl/SegmentedControl.d.ts +31 -0
- package/dist/components/SegmentedControl/SegmentedControl.figma.d.ts +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.figma.js +118 -0
- package/dist/components/SegmentedControl/SegmentedControl.js +34 -0
- package/dist/components/SegmentedControl/SegmentedControlButton.d.ts +13 -0
- package/dist/components/SegmentedControl/SegmentedControlButton.js +12 -0
- package/dist/components/SegmentedControl/SegmentedControlItem.d.ts +17 -0
- package/dist/components/SegmentedControl/SegmentedControlItem.js +29 -0
- package/dist/components/SegmentedControl/SegmentedControlSeparator.d.ts +20 -0
- package/dist/components/SegmentedControl/SegmentedControlSeparator.js +47 -0
- package/dist/components/SegmentedControl/classes.d.ts +5 -0
- package/dist/components/SegmentedControl/classes.js +16 -0
- package/dist/components/SegmentedControl/index.d.ts +5 -0
- package/dist/components/SegmentedControl/index.js +6 -0
- package/dist/components/SegmentedTabs/SegmentedTabs.d.ts +18 -0
- package/dist/components/SegmentedTabs/SegmentedTabs.figma.d.ts +1 -0
- package/dist/components/SegmentedTabs/SegmentedTabs.figma.js +186 -0
- package/dist/components/SegmentedTabs/SegmentedTabs.js +38 -0
- package/dist/components/SegmentedTabs/SegmentedTabsButton.d.ts +1 -0
- package/dist/components/SegmentedTabs/SegmentedTabsButton.js +4 -0
- package/dist/components/SegmentedTabs/SegmentedTabsContent.d.ts +8 -0
- package/dist/components/SegmentedTabs/SegmentedTabsContent.js +10 -0
- package/dist/components/SegmentedTabs/SegmentedTabsList.d.ts +2 -0
- package/dist/components/SegmentedTabs/SegmentedTabsList.js +14 -0
- package/dist/components/SegmentedTabs/SegmentedTabsSeparator.d.ts +1 -0
- package/dist/components/SegmentedTabs/SegmentedTabsSeparator.js +4 -0
- package/dist/components/SegmentedTabs/SegmentedTabsTrigger.d.ts +9 -0
- package/dist/components/SegmentedTabs/SegmentedTabsTrigger.js +12 -0
- package/dist/components/SegmentedTabs/SegmentedTabsTriggerButton.d.ts +7 -0
- package/dist/components/SegmentedTabs/SegmentedTabsTriggerButton.js +15 -0
- package/dist/components/SegmentedTabs/index.d.ts +7 -0
- package/dist/components/SegmentedTabs/index.js +8 -0
- package/dist/components/Select/Select.d.ts +11 -0
- package/dist/components/Select/Select.js +31 -0
- package/dist/components/Select/SelectArrow.d.ts +6 -0
- package/dist/components/Select/SelectArrow.js +10 -0
- package/dist/components/Select/SelectButton.d.ts +11 -0
- package/dist/components/Select/SelectButton.js +34 -0
- package/dist/components/Select/SelectButtonTag/SelectButtonTag.d.ts +5 -0
- package/dist/components/Select/SelectButtonTag/SelectButtonTag.js +22 -0
- package/dist/components/Select/SelectButtonTag/SelectButtonTagValue.d.ts +6 -0
- package/dist/components/Select/SelectButtonTag/SelectButtonTagValue.js +6 -0
- package/dist/components/Select/SelectButtonTag/index.d.ts +2 -0
- package/dist/components/Select/SelectButtonTag/index.js +3 -0
- package/dist/components/Select/SelectClearTrigger.d.ts +9 -0
- package/dist/components/Select/SelectClearTrigger.js +14 -0
- package/dist/components/Select/SelectContent.d.ts +5 -0
- package/dist/components/Select/SelectContent.js +28 -0
- package/dist/components/Select/SelectEmptyState.d.ts +2 -0
- package/dist/components/Select/SelectEmptyState.js +13 -0
- package/dist/components/Select/SelectFooter.d.ts +3 -0
- package/dist/components/Select/SelectFooter.js +8 -0
- package/dist/components/Select/SelectGroup.d.ts +2 -0
- package/dist/components/Select/SelectGroup.js +9 -0
- package/dist/components/Select/SelectGroupLabel.d.ts +5 -0
- package/dist/components/Select/SelectGroupLabel.js +12 -0
- package/dist/components/Select/SelectHeader.d.ts +3 -0
- package/dist/components/Select/SelectHeader.js +8 -0
- package/dist/components/Select/SelectInput/SelectInput.d.ts +5 -0
- package/dist/components/Select/SelectInput/SelectInput.js +85 -0
- package/dist/components/Select/SelectInput/SelectInputClear.d.ts +2 -0
- package/dist/components/Select/SelectInput/SelectInputClear.js +19 -0
- package/dist/components/Select/SelectInput/SelectInputItemRenderer.d.ts +2 -0
- package/dist/components/Select/SelectInput/SelectInputItemRenderer.js +22 -0
- package/dist/components/Select/SelectInput/SelectInputOverflowRenderer.d.ts +2 -0
- package/dist/components/Select/SelectInput/SelectInputOverflowRenderer.js +34 -0
- package/dist/components/Select/SelectInput/index.d.ts +1 -0
- package/dist/components/Select/SelectInput/index.js +2 -0
- package/dist/components/Select/SelectOption.d.ts +12 -0
- package/dist/components/Select/SelectOption.js +14 -0
- package/dist/components/Select/SelectOptionDescription.d.ts +5 -0
- package/dist/components/Select/SelectOptionDescription.js +8 -0
- package/dist/components/Select/SelectOptionIndicator.d.ts +5 -0
- package/dist/components/Select/SelectOptionIndicator.js +23 -0
- package/dist/components/Select/SelectOptionText.d.ts +5 -0
- package/dist/components/Select/SelectOptionText.js +7 -0
- package/dist/components/Select/SelectPositioner.d.ts +5 -0
- package/dist/components/Select/SelectPositioner.js +17 -0
- package/dist/components/Select/SelectSearchInput.d.ts +7 -0
- package/dist/components/Select/SelectSearchInput.js +22 -0
- package/dist/components/Select/SelectSeparator.d.ts +1 -0
- package/dist/components/Select/SelectSeparator.js +4 -0
- package/dist/components/Select/SelectSharedContext/SelectSharedContext.d.ts +4 -0
- package/dist/components/Select/SelectSharedContext/SelectSharedContext.js +3 -0
- package/dist/components/Select/SelectSharedContext/SelectSharedContextProvider.d.ts +7 -0
- package/dist/components/Select/SelectSharedContext/SelectSharedContextProvider.js +7 -0
- package/dist/components/Select/SelectSharedContext/index.d.ts +2 -0
- package/dist/components/Select/SelectSharedContext/index.js +3 -0
- package/dist/components/Select/SelectSharedContext/useSelectSharedContext.d.ts +2 -0
- package/dist/components/Select/SelectSharedContext/useSelectSharedContext.js +8 -0
- package/dist/components/Select/SelectValueIcon.d.ts +6 -0
- package/dist/components/Select/SelectValueIcon.js +9 -0
- package/dist/components/Select/SelectValueText.d.ts +4 -0
- package/dist/components/Select/SelectValueText.js +9 -0
- package/dist/components/Select/index.d.ts +18 -0
- package/dist/components/Select/index.js +18 -0
- package/dist/components/Select/types.d.ts +10 -0
- package/dist/components/Select/types.js +0 -0
- package/dist/components/Separator/Separator.d.ts +12 -0
- package/dist/components/Separator/Separator.figma.d.ts +1 -0
- package/dist/components/Separator/Separator.figma.js +15 -0
- package/dist/components/Separator/Separator.js +269 -0
- package/dist/components/Separator/index.d.ts +1 -0
- package/dist/components/Separator/index.js +2 -0
- package/dist/components/Stack/HStack.d.ts +4 -0
- package/dist/components/Stack/HStack.js +10 -0
- package/dist/components/Stack/Stack.d.ts +17 -0
- package/dist/components/Stack/Stack.js +85 -0
- package/dist/components/Stack/VStack.d.ts +6 -0
- package/dist/components/Stack/VStack.js +10 -0
- package/dist/components/Stack/index.d.ts +3 -0
- package/dist/components/Stack/index.js +4 -0
- package/dist/components/Stack/utils.d.ts +2 -0
- package/dist/components/Stack/utils.js +3 -0
- package/dist/components/Switch/Switch.d.ts +6 -0
- package/dist/components/Switch/Switch.js +19 -0
- package/dist/components/Switch/SwitchContext.d.ts +4 -0
- package/dist/components/Switch/SwitchContext.js +5 -0
- package/dist/components/Switch/SwitchControl.d.ts +2 -0
- package/dist/components/Switch/SwitchControl.js +27 -0
- package/dist/components/Switch/SwitchDescription.d.ts +3 -0
- package/dist/components/Switch/SwitchDescription.js +12 -0
- package/dist/components/Switch/SwitchLabel.d.ts +4 -0
- package/dist/components/Switch/SwitchLabel.js +9 -0
- package/dist/components/Switch/index.d.ts +5 -0
- package/dist/components/Switch/index.js +6 -0
- package/dist/components/Tabs/Tabs.d.ts +15 -0
- package/dist/components/Tabs/Tabs.js +27 -0
- package/dist/components/Tabs/TabsButton.d.ts +14 -0
- package/dist/components/Tabs/TabsButton.js +14 -0
- package/dist/components/Tabs/TabsContent.d.ts +7 -0
- package/dist/components/Tabs/TabsContent.js +10 -0
- package/dist/components/Tabs/TabsLineActions.d.ts +6 -0
- package/dist/components/Tabs/TabsLineActions.js +8 -0
- package/dist/components/Tabs/TabsList/TabsList.d.ts +6 -0
- package/dist/components/Tabs/TabsList/TabsList.js +93 -0
- package/dist/components/Tabs/TabsList/TabsListIndicator.d.ts +2 -0
- package/dist/components/Tabs/TabsList/TabsListIndicator.js +22 -0
- package/dist/components/Tabs/TabsList/TabsListScrollArea.d.ts +6 -0
- package/dist/components/Tabs/TabsList/TabsListScrollArea.js +13 -0
- package/dist/components/Tabs/TabsList/TabsListScrollButton.d.ts +7 -0
- package/dist/components/Tabs/TabsList/TabsListScrollButton.js +74 -0
- package/dist/components/Tabs/TabsList/index.d.ts +1 -0
- package/dist/components/Tabs/TabsList/index.js +2 -0
- package/dist/components/Tabs/TabsSeparator.d.ts +1 -0
- package/dist/components/Tabs/TabsSeparator.js +4 -0
- package/dist/components/Tabs/TabsSharedContext/TabsSharedContext.d.ts +8 -0
- package/dist/components/Tabs/TabsSharedContext/TabsSharedContext.js +9 -0
- package/dist/components/Tabs/TabsSharedContext/TabsSharedContextProvider.d.ts +8 -0
- package/dist/components/Tabs/TabsSharedContext/TabsSharedContextProvider.js +15 -0
- package/dist/components/Tabs/TabsSharedContext/index.d.ts +2 -0
- package/dist/components/Tabs/TabsSharedContext/index.js +3 -0
- package/dist/components/Tabs/TabsSharedContext/useTabsSharedContext.d.ts +1 -0
- package/dist/components/Tabs/TabsSharedContext/useTabsSharedContext.js +8 -0
- package/dist/components/Tabs/TabsTrigger.d.ts +11 -0
- package/dist/components/Tabs/TabsTrigger.js +38 -0
- package/dist/components/Tabs/classes.d.ts +3 -0
- package/dist/components/Tabs/classes.js +14 -0
- package/dist/components/Tabs/constants.d.ts +1 -0
- package/dist/components/Tabs/constants.js +2 -0
- package/dist/components/Tabs/index.d.ts +7 -0
- package/dist/components/Tabs/index.js +8 -0
- package/dist/components/Tabs/types.d.ts +2 -0
- package/dist/components/Tabs/types.js +0 -0
- package/dist/components/Tag/Tag.d.ts +17 -0
- package/dist/components/Tag/Tag.js +39 -0
- package/dist/components/Tag/TagClose.d.ts +6 -0
- package/dist/components/Tag/TagClose.js +14 -0
- package/dist/components/Tag/index.d.ts +2 -0
- package/dist/components/Tag/index.js +3 -0
- package/dist/components/Text/Text.d.ts +20 -0
- package/dist/components/Text/Text.js +58 -0
- package/dist/components/Text/index.d.ts +1 -0
- package/dist/components/Text/index.js +2 -0
- package/dist/components/Textarea/Textarea.d.ts +14 -0
- package/dist/components/Textarea/Textarea.figma.d.ts +1 -0
- package/dist/components/Textarea/Textarea.figma.js +61 -0
- package/dist/components/Textarea/Textarea.js +48 -0
- package/dist/components/Textarea/index.d.ts +1 -0
- package/dist/components/Textarea/index.js +2 -0
- package/dist/components/ThemeProvider/ThemeProvider.d.ts +9 -0
- package/dist/components/ThemeProvider/ThemeProvider.js +30 -0
- package/dist/components/ThemeProvider/ThemeProviderContext.d.ts +6 -0
- package/dist/components/ThemeProvider/ThemeProviderContext.js +6 -0
- package/dist/components/ThemeProvider/index.d.ts +3 -0
- package/dist/components/ThemeProvider/index.js +3 -0
- package/dist/components/ThemeProvider/types.d.ts +1 -0
- package/dist/components/ThemeProvider/types.js +0 -0
- package/dist/components/ThemeProvider/useTheme.d.ts +1 -0
- package/dist/components/ThemeProvider/useTheme.js +8 -0
- package/dist/components/Toast/Toast.d.ts +19 -0
- package/dist/components/Toast/Toast.js +112 -0
- package/dist/components/Toast/ToastActions.d.ts +2 -0
- package/dist/components/Toast/ToastActions.js +8 -0
- package/dist/components/Toast/ToastClose.d.ts +4 -0
- package/dist/components/Toast/ToastClose.js +17 -0
- package/dist/components/Toast/ToastDescription.d.ts +12 -0
- package/dist/components/Toast/ToastDescription.js +22 -0
- package/dist/components/Toast/ToastIcon.d.ts +2 -0
- package/dist/components/Toast/ToastIcon.js +8 -0
- package/dist/components/Toast/ToastTitle.d.ts +12 -0
- package/dist/components/Toast/ToastTitle.js +26 -0
- package/dist/components/Toast/Toaster.d.ts +15 -0
- package/dist/components/Toast/Toaster.js +33 -0
- package/dist/components/Toast/index.d.ts +5 -0
- package/dist/components/Toast/index.js +5 -0
- package/dist/components/Toast/useToast.d.ts +17 -0
- package/dist/components/Toast/useToast.js +9 -0
- package/dist/components/ToggleButton/ToggleButton.d.ts +16 -0
- package/dist/components/ToggleButton/ToggleButton.figma.d.ts +1 -0
- package/dist/components/ToggleButton/ToggleButton.figma.js +267 -0
- package/dist/components/ToggleButton/ToggleButton.js +97 -0
- package/dist/components/ToggleButton/index.d.ts +1 -0
- package/dist/components/ToggleButton/index.js +2 -0
- package/dist/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.figma.d.ts +1 -0
- package/dist/components/Tooltip/Tooltip.figma.js +22 -0
- package/dist/components/Tooltip/Tooltip.js +7 -0
- package/dist/components/Tooltip/TooltipContent.d.ts +7 -0
- package/dist/components/Tooltip/TooltipContent.js +37 -0
- package/dist/components/Tooltip/TooltipProvider.d.ts +3 -0
- package/dist/components/Tooltip/TooltipProvider.js +7 -0
- package/dist/components/Tooltip/TooltipTrigger.d.ts +2 -0
- package/dist/components/Tooltip/TooltipTrigger.js +9 -0
- package/dist/components/Tooltip/index.d.ts +4 -0
- package/dist/components/Tooltip/index.js +5 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +4 -0
- package/dist/hooks/useControlled.d.ts +12 -0
- package/dist/hooks/useControlled.js +17 -0
- package/dist/hooks/useCopyToClipboard.d.ts +23 -0
- package/dist/hooks/useCopyToClipboard.js +31 -0
- package/dist/hooks/useOverflowItems.d.ts +17 -0
- package/dist/hooks/useOverflowItems.js +100 -0
- package/dist/icons/Activity.d.ts +3 -0
- package/dist/icons/Activity.js +16 -0
- package/dist/icons/Alt.d.ts +3 -0
- package/dist/icons/Alt.js +34 -0
- package/dist/icons/ArrowBigUp.d.ts +3 -0
- package/dist/icons/ArrowBigUp.js +16 -0
- package/dist/icons/ArrowBigUpDash.d.ts +3 -0
- package/dist/icons/ArrowBigUpDash.js +26 -0
- package/dist/icons/ArrowDown.d.ts +3 -0
- package/dist/icons/ArrowDown.js +16 -0
- package/dist/icons/ArrowDownLeft.d.ts +3 -0
- package/dist/icons/ArrowDownLeft.js +26 -0
- package/dist/icons/ArrowDownRight.d.ts +3 -0
- package/dist/icons/ArrowDownRight.js +26 -0
- package/dist/icons/ArrowLeft.d.ts +3 -0
- package/dist/icons/ArrowLeft.js +16 -0
- package/dist/icons/ArrowRight.d.ts +3 -0
- package/dist/icons/ArrowRight.js +16 -0
- package/dist/icons/ArrowUp.d.ts +3 -0
- package/dist/icons/ArrowUp.js +16 -0
- package/dist/icons/ArrowUpLeft.d.ts +3 -0
- package/dist/icons/ArrowUpLeft.js +26 -0
- package/dist/icons/ArrowUpRight.d.ts +3 -0
- package/dist/icons/ArrowUpRight.js +16 -0
- package/dist/icons/Check.d.ts +3 -0
- package/dist/icons/Check.js +12 -0
- package/dist/icons/CheckCheck.d.ts +3 -0
- package/dist/icons/CheckCheck.js +26 -0
- package/dist/icons/ChevronDown.d.ts +3 -0
- package/dist/icons/ChevronDown.js +16 -0
- package/dist/icons/ChevronFirst.d.ts +3 -0
- package/dist/icons/ChevronFirst.js +26 -0
- package/dist/icons/ChevronLast.d.ts +3 -0
- package/dist/icons/ChevronLast.js +26 -0
- package/dist/icons/ChevronLeft.d.ts +3 -0
- package/dist/icons/ChevronLeft.js +16 -0
- package/dist/icons/ChevronRight.d.ts +3 -0
- package/dist/icons/ChevronRight.js +16 -0
- package/dist/icons/ChevronUp.d.ts +3 -0
- package/dist/icons/ChevronUp.js +16 -0
- package/dist/icons/ChevronsDown.d.ts +3 -0
- package/dist/icons/ChevronsDown.js +26 -0
- package/dist/icons/ChevronsLeft.d.ts +3 -0
- package/dist/icons/ChevronsLeft.js +26 -0
- package/dist/icons/ChevronsRight.d.ts +3 -0
- package/dist/icons/ChevronsRight.js +26 -0
- package/dist/icons/ChevronsUp.d.ts +3 -0
- package/dist/icons/ChevronsUp.js +26 -0
- package/dist/icons/Circle.d.ts +3 -0
- package/dist/icons/Circle.js +18 -0
- package/dist/icons/CircleArrowDown.d.ts +3 -0
- package/dist/icons/CircleArrowDown.js +36 -0
- package/dist/icons/CircleArrowLeft.d.ts +3 -0
- package/dist/icons/CircleArrowLeft.js +36 -0
- package/dist/icons/CircleArrowOutDownLeft.d.ts +3 -0
- package/dist/icons/CircleArrowOutDownLeft.js +34 -0
- package/dist/icons/CircleArrowOutDownRight.d.ts +3 -0
- package/dist/icons/CircleArrowOutDownRight.js +34 -0
- package/dist/icons/CircleArrowOutUpLeft.d.ts +3 -0
- package/dist/icons/CircleArrowOutUpLeft.js +34 -0
- package/dist/icons/CircleArrowOutUpRight.d.ts +3 -0
- package/dist/icons/CircleArrowOutUpRight.js +34 -0
- package/dist/icons/CircleArrowRight.d.ts +3 -0
- package/dist/icons/CircleArrowRight.js +36 -0
- package/dist/icons/CircleArrowUp.d.ts +3 -0
- package/dist/icons/CircleArrowUp.js +36 -0
- package/dist/icons/CircleCheck.d.ts +3 -0
- package/dist/icons/CircleCheck.js +26 -0
- package/dist/icons/CircleCheckBig.d.ts +3 -0
- package/dist/icons/CircleCheckBig.js +26 -0
- package/dist/icons/CircleChevronDown.d.ts +3 -0
- package/dist/icons/CircleChevronDown.js +26 -0
- package/dist/icons/CircleChevronLeft.d.ts +3 -0
- package/dist/icons/CircleChevronLeft.js +26 -0
- package/dist/icons/CircleChevronRight.d.ts +3 -0
- package/dist/icons/CircleChevronRight.js +26 -0
- package/dist/icons/CircleChevronUp.d.ts +3 -0
- package/dist/icons/CircleChevronUp.js +26 -0
- package/dist/icons/CircleDashed.d.ts +3 -0
- package/dist/icons/CircleDashed.js +74 -0
- package/dist/icons/CircleDotDashed.d.ts +3 -0
- package/dist/icons/CircleDotDashed.js +84 -0
- package/dist/icons/CircleEllipsis.d.ts +3 -0
- package/dist/icons/CircleEllipsis.js +48 -0
- package/dist/icons/CircleHelp.d.ts +3 -0
- package/dist/icons/CircleHelp.js +36 -0
- package/dist/icons/CirclePlus.d.ts +3 -0
- package/dist/icons/CirclePlus.js +36 -0
- package/dist/icons/Command.d.ts +3 -0
- package/dist/icons/Command.js +16 -0
- package/dist/icons/Ctrl.d.ts +3 -0
- package/dist/icons/Ctrl.js +34 -0
- package/dist/icons/Dot.d.ts +3 -0
- package/dist/icons/Dot.js +17 -0
- package/dist/icons/Earth.d.ts +3 -0
- package/dist/icons/Earth.js +36 -0
- package/dist/icons/EarthLock.d.ts +3 -0
- package/dist/icons/EarthLock.js +45 -0
- package/dist/icons/Ellipsis.d.ts +3 -0
- package/dist/icons/Ellipsis.js +40 -0
- package/dist/icons/Filter.d.ts +3 -0
- package/dist/icons/Filter.js +16 -0
- package/dist/icons/FilterX.d.ts +3 -0
- package/dist/icons/FilterX.js +34 -0
- package/dist/icons/Folder.d.ts +3 -0
- package/dist/icons/Folder.js +16 -0
- package/dist/icons/FunnelPlus.d.ts +3 -0
- package/dist/icons/FunnelPlus.js +42 -0
- package/dist/icons/GitCommitHorizontal.d.ts +3 -0
- package/dist/icons/GitCommitHorizontal.js +28 -0
- package/dist/icons/GitCommitVertical.d.ts +3 -0
- package/dist/icons/GitCommitVertical.js +36 -0
- package/dist/icons/GitCompare.d.ts +3 -0
- package/dist/icons/GitCompare.js +46 -0
- package/dist/icons/GitCompareArrows.d.ts +3 -0
- package/dist/icons/GitCompareArrows.js +70 -0
- package/dist/icons/GitFork.d.ts +3 -0
- package/dist/icons/GitFork.js +56 -0
- package/dist/icons/GitGraph.d.ts +3 -0
- package/dist/icons/GitGraph.js +64 -0
- package/dist/icons/GitMerge.d.ts +3 -0
- package/dist/icons/GitMerge.js +38 -0
- package/dist/icons/GitPullRequest.d.ts +3 -0
- package/dist/icons/GitPullRequest.js +46 -0
- package/dist/icons/GitPullRequestArrow.d.ts +3 -0
- package/dist/icons/GitPullRequestArrow.js +62 -0
- package/dist/icons/GitPullRequestClosed.d.ts +3 -0
- package/dist/icons/GitPullRequestClosed.js +62 -0
- package/dist/icons/GitPullRequestCreate.d.ts +3 -0
- package/dist/icons/GitPullRequestCreate.js +52 -0
- package/dist/icons/GitPullRequestCreateArrow.d.ts +3 -0
- package/dist/icons/GitPullRequestCreateArrow.js +68 -0
- package/dist/icons/GitPullRequestDraft.d.ts +3 -0
- package/dist/icons/GitPullRequestDraft.js +54 -0
- package/dist/icons/Globe.d.ts +3 -0
- package/dist/icons/Globe.js +36 -0
- package/dist/icons/GlobeLock.d.ts +3 -0
- package/dist/icons/GlobeLock.js +45 -0
- package/dist/icons/History.d.ts +3 -0
- package/dist/icons/History.js +34 -0
- package/dist/icons/Home.d.ts +3 -0
- package/dist/icons/Home.js +26 -0
- package/dist/icons/Icons.figma.d.ts +1 -0
- package/dist/icons/Icons.figma.js +418 -0
- package/dist/icons/Info.d.ts +3 -0
- package/dist/icons/Info.js +36 -0
- package/dist/icons/KeyRound.d.ts +3 -0
- package/dist/icons/KeyRound.js +24 -0
- package/dist/icons/KeySquare.d.ts +3 -0
- package/dist/icons/KeySquare.js +42 -0
- package/dist/icons/Keyboard.d.ts +3 -0
- package/dist/icons/Keyboard.js +86 -0
- package/dist/icons/Layers.d.ts +3 -0
- package/dist/icons/Layers.js +26 -0
- package/dist/icons/Layers2.d.ts +3 -0
- package/dist/icons/Layers2.js +26 -0
- package/dist/icons/Layers3.d.ts +3 -0
- package/dist/icons/Layers3.js +34 -0
- package/dist/icons/LayoutDashboard.d.ts +3 -0
- package/dist/icons/LayoutDashboard.js +58 -0
- package/dist/icons/LayoutGrid.d.ts +3 -0
- package/dist/icons/LayoutGrid.js +58 -0
- package/dist/icons/LayoutList.d.ts +3 -0
- package/dist/icons/LayoutList.js +66 -0
- package/dist/icons/LayoutPanelLeft.d.ts +3 -0
- package/dist/icons/LayoutPanelLeft.js +31 -0
- package/dist/icons/LayoutPanelTop.d.ts +3 -0
- package/dist/icons/LayoutPanelTop.js +31 -0
- package/dist/icons/LayoutTemplate.d.ts +3 -0
- package/dist/icons/LayoutTemplate.js +46 -0
- package/dist/icons/LibraryBig.d.ts +3 -0
- package/dist/icons/LibraryBig.js +54 -0
- package/dist/icons/Loader.d.ts +3 -0
- package/dist/icons/Loader.js +90 -0
- package/dist/icons/LoaderCircle.d.ts +3 -0
- package/dist/icons/LoaderCircle.js +16 -0
- package/dist/icons/Lock.d.ts +3 -0
- package/dist/icons/Lock.js +31 -0
- package/dist/icons/LockOpen.d.ts +3 -0
- package/dist/icons/LockOpen.js +31 -0
- package/dist/icons/Maximize.d.ts +3 -0
- package/dist/icons/Maximize.js +74 -0
- package/dist/icons/Maximize2.d.ts +3 -0
- package/dist/icons/Maximize2.js +42 -0
- package/dist/icons/Megaphone.d.ts +3 -0
- package/dist/icons/Megaphone.js +26 -0
- package/dist/icons/MegaphoneOff.d.ts +3 -0
- package/dist/icons/MegaphoneOff.js +42 -0
- package/dist/icons/MessageSquare.d.ts +3 -0
- package/dist/icons/MessageSquare.js +16 -0
- package/dist/icons/MessageSquareText.d.ts +3 -0
- package/dist/icons/MessageSquareText.js +34 -0
- package/dist/icons/MessageSquareWarning.d.ts +3 -0
- package/dist/icons/MessageSquareWarning.js +34 -0
- package/dist/icons/MessageSquareX.d.ts +3 -0
- package/dist/icons/MessageSquareX.js +34 -0
- package/dist/icons/MessagesSquare.d.ts +3 -0
- package/dist/icons/MessagesSquare.js +26 -0
- package/dist/icons/Minus.d.ts +3 -0
- package/dist/icons/Minus.js +16 -0
- package/dist/icons/Mouse.d.ts +3 -0
- package/dist/icons/Mouse.js +30 -0
- package/dist/icons/Move3D.d.ts +3 -0
- package/dist/icons/Move3D.js +42 -0
- package/dist/icons/NotebookPen.d.ts +3 -0
- package/dist/icons/NotebookPen.js +34 -0
- package/dist/icons/NotepadText.d.ts +3 -0
- package/dist/icons/NotepadText.js +70 -0
- package/dist/icons/OctagonAlert.d.ts +3 -0
- package/dist/icons/OctagonAlert.js +38 -0
- package/dist/icons/PanelBottom.d.ts +3 -0
- package/dist/icons/PanelBottom.js +30 -0
- package/dist/icons/PanelBottomOpen.d.ts +3 -0
- package/dist/icons/PanelBottomOpen.js +42 -0
- package/dist/icons/PanelRight.d.ts +3 -0
- package/dist/icons/PanelRight.js +30 -0
- package/dist/icons/PanelRightClose.d.ts +3 -0
- package/dist/icons/PanelRightClose.js +38 -0
- package/dist/icons/PanelRightDashed.d.ts +3 -0
- package/dist/icons/PanelRightDashed.js +54 -0
- package/dist/icons/PanelRightOpen.d.ts +3 -0
- package/dist/icons/PanelRightOpen.js +42 -0
- package/dist/icons/Paperclip.d.ts +3 -0
- package/dist/icons/Paperclip.js +16 -0
- package/dist/icons/Pen.d.ts +3 -0
- package/dist/icons/Pen.js +16 -0
- package/dist/icons/PenLine.d.ts +3 -0
- package/dist/icons/PenLine.js +26 -0
- package/dist/icons/PenOff.d.ts +3 -0
- package/dist/icons/PenOff.js +34 -0
- package/dist/icons/PenTool.d.ts +3 -0
- package/dist/icons/PenTool.js +44 -0
- package/dist/icons/Pencil.d.ts +3 -0
- package/dist/icons/Pencil.js +16 -0
- package/dist/icons/PencilLine.d.ts +3 -0
- package/dist/icons/PencilLine.js +26 -0
- package/dist/icons/PencilOff.d.ts +3 -0
- package/dist/icons/PencilOff.js +42 -0
- package/dist/icons/PencilRuler.d.ts +3 -0
- package/dist/icons/PencilRuler.js +42 -0
- package/dist/icons/Pentagon.d.ts +3 -0
- package/dist/icons/Pentagon.js +16 -0
- package/dist/icons/Plus.d.ts +3 -0
- package/dist/icons/Plus.js +26 -0
- package/dist/icons/Quote.d.ts +3 -0
- package/dist/icons/Quote.js +26 -0
- package/dist/icons/Redo.d.ts +3 -0
- package/dist/icons/Redo.js +26 -0
- package/dist/icons/Redo2.d.ts +3 -0
- package/dist/icons/Redo2.js +26 -0
- package/dist/icons/RedoDot.d.ts +3 -0
- package/dist/icons/RedoDot.js +36 -0
- package/dist/icons/RefreshCcw.d.ts +3 -0
- package/dist/icons/RefreshCcw.js +42 -0
- package/dist/icons/RefreshCwOff.d.ts +3 -0
- package/dist/icons/RefreshCwOff.js +50 -0
- package/dist/icons/Search.d.ts +3 -0
- package/dist/icons/Search.js +28 -0
- package/dist/icons/Shift.d.ts +3 -0
- package/dist/icons/Shift.js +34 -0
- package/dist/icons/Skull.d.ts +3 -0
- package/dist/icons/Skull.js +54 -0
- package/dist/icons/SlidersHorizontal.d.ts +3 -0
- package/dist/icons/SlidersHorizontal.js +100 -0
- package/dist/icons/SlidersVertical.d.ts +3 -0
- package/dist/icons/SlidersVertical.js +100 -0
- package/dist/icons/Space.d.ts +3 -0
- package/dist/icons/Space.js +34 -0
- package/dist/icons/SquareArrowOutUpRight.d.ts +3 -0
- package/dist/icons/SquareArrowOutUpRight.js +34 -0
- package/dist/icons/SvgIcon.d.ts +16 -0
- package/dist/icons/SvgIcon.js +34 -0
- package/dist/icons/Trash.d.ts +3 -0
- package/dist/icons/Trash.js +34 -0
- package/dist/icons/Trash2.d.ts +3 -0
- package/dist/icons/Trash2.js +54 -0
- package/dist/icons/TriangleAlert.d.ts +3 -0
- package/dist/icons/TriangleAlert.js +34 -0
- package/dist/icons/Undo.d.ts +3 -0
- package/dist/icons/Undo.js +26 -0
- package/dist/icons/Undo2.d.ts +3 -0
- package/dist/icons/Undo2.js +26 -0
- package/dist/icons/UndoDot.d.ts +3 -0
- package/dist/icons/UndoDot.js +36 -0
- package/dist/icons/Wrench.d.ts +3 -0
- package/dist/icons/Wrench.js +16 -0
- package/dist/icons/X.d.ts +3 -0
- package/dist/icons/X.js +26 -0
- package/dist/icons/ZoomIn.d.ts +3 -0
- package/dist/icons/ZoomIn.js +48 -0
- package/dist/icons/ZoomOut.d.ts +3 -0
- package/dist/icons/ZoomOut.js +38 -0
- package/dist/icons/index.d.ts +145 -0
- package/dist/icons/index.js +145 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.js +36 -0
- package/dist/theme/blur.css +9 -0
- package/dist/theme/colors/grayscale.css +49 -0
- package/dist/theme/colors/other.css +5 -0
- package/dist/theme/colors/primary.css +85 -0
- package/dist/theme/colors/secondary.css +145 -0
- package/dist/theme/components/dialog.css +5 -0
- package/dist/theme/components/drawer.css +8 -0
- package/dist/theme/focus.css +6 -0
- package/dist/theme/icon.css +13 -0
- package/dist/theme/index.css +38 -0
- package/dist/theme/radius.css +11 -0
- package/dist/theme/semantic.css +470 -0
- package/dist/theme/shadow.css +9 -0
- package/dist/theme/spacing.css +26 -0
- package/dist/theme/typography.css +79 -0
- package/dist/theme/utilities/hover-overlay.css +27 -0
- package/dist/utils/cn.d.ts +2 -0
- package/dist/utils/cn.js +4 -0
- package/dist/utils/hasNonTextEnd.d.ts +2 -0
- package/dist/utils/hasNonTextEnd.js +11 -0
- package/dist/utils/isIconOnly.d.ts +2 -0
- package/dist/utils/isIconOnly.js +4 -0
- package/dist/utils/isValidSvg.d.ts +2 -0
- package/dist/utils/isValidSvg.js +8 -0
- package/package.json +143 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "../../utils/cn.js";
|
|
3
|
+
import { useCodeSnippet } from "./hooks/index.js";
|
|
4
|
+
import { LINE_COLOR_STYLES, SIZE_LINE_HEIGHT_CLASSES } from "./lib/lineStyles.js";
|
|
5
|
+
const CodeSnippetLineNumbers = ({ className, ...props })=>{
|
|
6
|
+
const { tokens, startingLineNumber, lines, size } = useCodeSnippet();
|
|
7
|
+
const lineHeightClass = SIZE_LINE_HEIGHT_CLASSES[size];
|
|
8
|
+
if (!tokens) return null;
|
|
9
|
+
return /*#__PURE__*/ jsx("div", {
|
|
10
|
+
"data-slot": "code-snippet-line-numbers",
|
|
11
|
+
className: cn('flex flex-col text-text-secondary select-none text-right', className),
|
|
12
|
+
...props,
|
|
13
|
+
children: tokens.map((_, index)=>{
|
|
14
|
+
const lineNumber = startingLineNumber + index;
|
|
15
|
+
const lineConfig = lines.get(lineNumber);
|
|
16
|
+
const colorStyles = lineConfig?.color ? LINE_COLOR_STYLES[lineConfig.color] : void 0;
|
|
17
|
+
return /*#__PURE__*/ jsx("span", {
|
|
18
|
+
className: cn(lineHeightClass, 'px-8 bg-bg-primary', colorStyles?.text, colorStyles?.bg),
|
|
19
|
+
children: lineNumber
|
|
20
|
+
}, lineNumber);
|
|
21
|
+
})
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
CodeSnippetLineNumbers.displayName = 'CodeSnippetLineNumbers';
|
|
25
|
+
export { CodeSnippetLineNumbers };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode, Ref } from 'react';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
import { type LineConfig } from './CodeSnippetContext';
|
|
4
|
+
declare const codeSnippetRootVariants: (props?: ({
|
|
5
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
type CodeSnippetRootVariantProps = VariantProps<typeof codeSnippetRootVariants>;
|
|
8
|
+
type CodeSnippetRootNativeProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'>;
|
|
9
|
+
export type CodeSnippetRootProps<TLanguage extends string = string> = CodeSnippetRootNativeProps & CodeSnippetRootVariantProps & {
|
|
10
|
+
ref?: Ref<HTMLDivElement>;
|
|
11
|
+
/** The code string to display */
|
|
12
|
+
code: string;
|
|
13
|
+
/** Programming language for syntax highlighting */
|
|
14
|
+
language: TLanguage;
|
|
15
|
+
/** Per-line configuration (color, prefix) keyed by line number */
|
|
16
|
+
lines?: Record<number, LineConfig>;
|
|
17
|
+
/** Starting line number (default: 1) */
|
|
18
|
+
startingLineNumber?: number;
|
|
19
|
+
/** Enable line wrapping */
|
|
20
|
+
wrapLines?: boolean;
|
|
21
|
+
/** Max lines before collapsing (for ShowMore) */
|
|
22
|
+
maxLines?: number;
|
|
23
|
+
/** Callback when code is copied */
|
|
24
|
+
onCopy?: (code: string) => void;
|
|
25
|
+
/** Child components */
|
|
26
|
+
children?: ReactNode;
|
|
27
|
+
};
|
|
28
|
+
export declare const CodeSnippetRoot: {
|
|
29
|
+
<TLanguage extends string = string>({ code, language, size, lines, startingLineNumber, wrapLines: initialWrapLines, maxLines, onCopy, className, children, ...props }: CodeSnippetRootProps<TLanguage>): import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
displayName: string;
|
|
31
|
+
};
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
3
|
+
import { cva } from "class-variance-authority";
|
|
4
|
+
import { cn } from "../../utils/cn.js";
|
|
5
|
+
import { plainAdapter } from "./adapters/plain.js";
|
|
6
|
+
import { CodeSnippetContext } from "./CodeSnippetContext.js";
|
|
7
|
+
import { useAdapter } from "./hooks/index.js";
|
|
8
|
+
const codeSnippetRootVariants = cva("relative bg-component-code-snippet-bg rounded-6 font-mono text-text-primary overflow-hidden flex flex-col [&::selection]:bg-[var(--color-syntax-highlight-selected-bg)] [&::selection]:text-[var(--color-syntax-highlight-selected-code)] [&_*::selection]:bg-[var(--color-syntax-highlight-selected-bg)] [&_*::selection]:text-[var(--color-syntax-highlight-selected-code)]", {
|
|
9
|
+
variants: {
|
|
10
|
+
size: {
|
|
11
|
+
sm: 'text-xs',
|
|
12
|
+
md: 'text-sm',
|
|
13
|
+
lg: 'text-base'
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
size: 'md'
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
const CodeSnippetRoot = ({ code, language, size = 'md', lines = {}, startingLineNumber = 1, wrapLines: initialWrapLines = false, maxLines = 0, onCopy, className, children, ...props })=>{
|
|
21
|
+
const adapterContext = useAdapter();
|
|
22
|
+
const [wrapLines, setWrapLines] = useState(initialWrapLines);
|
|
23
|
+
const [isExpanded, setIsExpanded] = useState(false);
|
|
24
|
+
const [tokens, setTokens] = useState(null);
|
|
25
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
26
|
+
const adapter = adapterContext?.adapter ?? plainAdapter;
|
|
27
|
+
useEffect(()=>{
|
|
28
|
+
let cancelled = false;
|
|
29
|
+
const highlight = async ()=>{
|
|
30
|
+
setIsLoading(true);
|
|
31
|
+
try {
|
|
32
|
+
const result = await adapter.highlight(code, language);
|
|
33
|
+
if (!cancelled) setTokens(result.tokens);
|
|
34
|
+
} catch {
|
|
35
|
+
if (!cancelled) {
|
|
36
|
+
const plainTokens = code.split('\n').map((line)=>[
|
|
37
|
+
{
|
|
38
|
+
content: line,
|
|
39
|
+
type: 'plain'
|
|
40
|
+
}
|
|
41
|
+
]);
|
|
42
|
+
setTokens(plainTokens);
|
|
43
|
+
}
|
|
44
|
+
} finally{
|
|
45
|
+
if (!cancelled) setIsLoading(false);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
highlight();
|
|
49
|
+
return ()=>{
|
|
50
|
+
cancelled = true;
|
|
51
|
+
};
|
|
52
|
+
}, [
|
|
53
|
+
code,
|
|
54
|
+
language,
|
|
55
|
+
adapter
|
|
56
|
+
]);
|
|
57
|
+
const copyToClipboard = useCallback(async ()=>{
|
|
58
|
+
await navigator.clipboard.writeText(code);
|
|
59
|
+
onCopy?.(code);
|
|
60
|
+
}, [
|
|
61
|
+
code,
|
|
62
|
+
onCopy
|
|
63
|
+
]);
|
|
64
|
+
const contextValue = useMemo(()=>({
|
|
65
|
+
code,
|
|
66
|
+
language,
|
|
67
|
+
tokens,
|
|
68
|
+
isLoading,
|
|
69
|
+
size: size ?? 'md',
|
|
70
|
+
wrapLines,
|
|
71
|
+
startingLineNumber,
|
|
72
|
+
inlineGutter: false,
|
|
73
|
+
showLineNumbers: false,
|
|
74
|
+
lines: new Map(Object.entries(lines).map(([k, v])=>[
|
|
75
|
+
Number(k),
|
|
76
|
+
v
|
|
77
|
+
])),
|
|
78
|
+
isExpanded,
|
|
79
|
+
maxLines,
|
|
80
|
+
copyToClipboard,
|
|
81
|
+
setWrapLines,
|
|
82
|
+
setIsExpanded,
|
|
83
|
+
adapter
|
|
84
|
+
}), [
|
|
85
|
+
code,
|
|
86
|
+
language,
|
|
87
|
+
tokens,
|
|
88
|
+
isLoading,
|
|
89
|
+
size,
|
|
90
|
+
wrapLines,
|
|
91
|
+
startingLineNumber,
|
|
92
|
+
lines,
|
|
93
|
+
isExpanded,
|
|
94
|
+
maxLines,
|
|
95
|
+
copyToClipboard,
|
|
96
|
+
adapter
|
|
97
|
+
]);
|
|
98
|
+
return /*#__PURE__*/ jsx(CodeSnippetContext.Provider, {
|
|
99
|
+
value: contextValue,
|
|
100
|
+
children: /*#__PURE__*/ jsx("div", {
|
|
101
|
+
"data-slot": "code-snippet",
|
|
102
|
+
className: cn(codeSnippetRootVariants({
|
|
103
|
+
size
|
|
104
|
+
}), className),
|
|
105
|
+
...props,
|
|
106
|
+
children: children
|
|
107
|
+
})
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
CodeSnippetRoot.displayName = 'CodeSnippetRoot';
|
|
111
|
+
export { CodeSnippetRoot };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type ComponentPropsWithRef, type FC } from 'react';
|
|
2
|
+
export interface InlineCodeSnippetProps extends Omit<ComponentPropsWithRef<'code'>, 'children'> {
|
|
3
|
+
/** The code content to display */
|
|
4
|
+
code: string;
|
|
5
|
+
/** Size variant */
|
|
6
|
+
size?: 'sm' | 'md' | 'lg' | 'inherit';
|
|
7
|
+
/** Render as child element using Radix Slot */
|
|
8
|
+
asChild?: boolean;
|
|
9
|
+
/** Enable click to copy functionality (default: true) */
|
|
10
|
+
copyable?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* InlineCodeSnippet - A simple inline code display component with optional copy functionality.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```tsx
|
|
17
|
+
* <p>
|
|
18
|
+
* Run <InlineCodeSnippet code="npm install" /> to install dependencies.
|
|
19
|
+
* </p>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare const InlineCodeSnippet: FC<InlineCodeSnippetProps>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import code_connect from "@figma/code-connect";
|
|
3
|
+
import { InlineCodeSnippet } from "./InlineCodeSnippet.js";
|
|
4
|
+
const figmaNodeUrl = 'https://www.figma.com/design/VKb5gW46uSGw0rqrhZsbXT/WADS-Components?node-id=2983-55138';
|
|
5
|
+
code_connect.connect(InlineCodeSnippet, figmaNodeUrl, {
|
|
6
|
+
props: {
|
|
7
|
+
code: code_connect.string('Code'),
|
|
8
|
+
size: code_connect["enum"]('Size', {
|
|
9
|
+
sm: 'sm',
|
|
10
|
+
md: 'md',
|
|
11
|
+
lg: 'lg'
|
|
12
|
+
})
|
|
13
|
+
},
|
|
14
|
+
example: ({ code, size })=>/*#__PURE__*/ jsx(InlineCodeSnippet, {
|
|
15
|
+
code: code,
|
|
16
|
+
size: size
|
|
17
|
+
})
|
|
18
|
+
});
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect } from "react";
|
|
3
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
4
|
+
import { cva } from "class-variance-authority";
|
|
5
|
+
import { useCopyToClipboard } from "../../hooks/index.js";
|
|
6
|
+
import { cn } from "../../utils/cn.js";
|
|
7
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from "../Tooltip/index.js";
|
|
8
|
+
const inlineCodeSnippetVariants = cva("inline-flex items-center bg-component-code-snippet-bg rounded-6 font-mono font-normal text-syntax-no-syntax", {
|
|
9
|
+
variants: {
|
|
10
|
+
size: {
|
|
11
|
+
sm: 'text-xs px-4 py-2',
|
|
12
|
+
md: 'text-sm px-4 py-2',
|
|
13
|
+
lg: 'text-base leading-sm px-4 py-2',
|
|
14
|
+
inherit: 'text-[1em] px-[0.25em] py-[0.125em]'
|
|
15
|
+
},
|
|
16
|
+
copyable: {
|
|
17
|
+
true: 'cursor-pointer hover:bg-states-primary-hover active:bg-states-primary-pressed',
|
|
18
|
+
false: ''
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const InlineCodeSnippet = (props)=>{
|
|
23
|
+
const { code, size = 'inherit', asChild = false, copyable = true, className, onClick, ref, ...otherProps } = props;
|
|
24
|
+
const { copied, copy, reset, isSupported } = useCopyToClipboard();
|
|
25
|
+
const Comp = asChild ? Slot : 'code';
|
|
26
|
+
const isCopyable = copyable && isSupported;
|
|
27
|
+
useEffect(()=>{
|
|
28
|
+
if (!copied || "u" < typeof document) return;
|
|
29
|
+
const handleClickOutside = ()=>reset();
|
|
30
|
+
document.addEventListener('click', handleClickOutside);
|
|
31
|
+
return ()=>document.removeEventListener('click', handleClickOutside);
|
|
32
|
+
}, [
|
|
33
|
+
copied,
|
|
34
|
+
reset
|
|
35
|
+
]);
|
|
36
|
+
const handleClick = (event)=>{
|
|
37
|
+
event.stopPropagation();
|
|
38
|
+
if (isCopyable) copy(code);
|
|
39
|
+
onClick?.(event);
|
|
40
|
+
};
|
|
41
|
+
const codeElement = /*#__PURE__*/ jsx(Comp, {
|
|
42
|
+
ref: ref,
|
|
43
|
+
"data-slot": "inline-code-snippet",
|
|
44
|
+
className: cn(inlineCodeSnippetVariants({
|
|
45
|
+
size,
|
|
46
|
+
copyable: isCopyable
|
|
47
|
+
}), className),
|
|
48
|
+
...otherProps,
|
|
49
|
+
onClick: handleClick,
|
|
50
|
+
children: code
|
|
51
|
+
});
|
|
52
|
+
if (!isCopyable) return codeElement;
|
|
53
|
+
return /*#__PURE__*/ jsxs(Tooltip, {
|
|
54
|
+
open: copied || void 0,
|
|
55
|
+
children: [
|
|
56
|
+
/*#__PURE__*/ jsx(TooltipTrigger, {
|
|
57
|
+
asChild: true,
|
|
58
|
+
children: codeElement
|
|
59
|
+
}),
|
|
60
|
+
/*#__PURE__*/ jsx(TooltipContent, {
|
|
61
|
+
children: copied ? 'Copied' : 'Click to copy'
|
|
62
|
+
})
|
|
63
|
+
]
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
InlineCodeSnippet.displayName = 'InlineCodeSnippet';
|
|
67
|
+
export { InlineCodeSnippet };
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
let hljsPromise = null;
|
|
2
|
+
const SUPPORTED_LANGUAGES = [
|
|
3
|
+
"javascript",
|
|
4
|
+
"typescript",
|
|
5
|
+
'bash',
|
|
6
|
+
'json',
|
|
7
|
+
'html',
|
|
8
|
+
'xml',
|
|
9
|
+
'css',
|
|
10
|
+
'python',
|
|
11
|
+
'go',
|
|
12
|
+
'sql'
|
|
13
|
+
];
|
|
14
|
+
function mapHljsClassToTokenType(className) {
|
|
15
|
+
const classMap = {
|
|
16
|
+
'hljs-keyword': 'keyword',
|
|
17
|
+
'hljs-built_in': 'builtin',
|
|
18
|
+
'hljs-type': 'class-name',
|
|
19
|
+
'hljs-literal': 'boolean',
|
|
20
|
+
'hljs-number': 'number',
|
|
21
|
+
'hljs-string': 'string',
|
|
22
|
+
'hljs-regexp': 'regex',
|
|
23
|
+
'hljs-comment': 'comment',
|
|
24
|
+
'hljs-doctag': 'comment',
|
|
25
|
+
'hljs-function': 'function',
|
|
26
|
+
'hljs-title': 'function',
|
|
27
|
+
'hljs-class': 'class-name',
|
|
28
|
+
'hljs-variable': 'variable',
|
|
29
|
+
'hljs-template-variable': 'variable',
|
|
30
|
+
'hljs-attr': 'attr-name',
|
|
31
|
+
'hljs-attribute': 'attr-name',
|
|
32
|
+
'hljs-tag': 'tag',
|
|
33
|
+
'hljs-name': 'tag',
|
|
34
|
+
'hljs-selector-tag': 'tag',
|
|
35
|
+
'hljs-selector-id': 'property',
|
|
36
|
+
'hljs-selector-class': 'property',
|
|
37
|
+
'hljs-property': 'property',
|
|
38
|
+
'hljs-operator': 'operator',
|
|
39
|
+
'hljs-punctuation': 'punctuation',
|
|
40
|
+
'hljs-meta': 'keyword',
|
|
41
|
+
'hljs-params': 'variable',
|
|
42
|
+
'hljs-symbol': 'constant'
|
|
43
|
+
};
|
|
44
|
+
const classes = className.split(' ');
|
|
45
|
+
for (const cls of classes)if (classMap[cls]) return classMap[cls];
|
|
46
|
+
return 'plain';
|
|
47
|
+
}
|
|
48
|
+
function parseHljsHtml(html) {
|
|
49
|
+
const tokens = [];
|
|
50
|
+
let pos = 0;
|
|
51
|
+
const classStack = [];
|
|
52
|
+
while(pos < html.length){
|
|
53
|
+
if (html.startsWith('<span class="', pos)) {
|
|
54
|
+
const classStart = pos + 13;
|
|
55
|
+
const classEnd = html.indexOf('"', classStart);
|
|
56
|
+
if (-1 !== classEnd) {
|
|
57
|
+
const className = html.slice(classStart, classEnd);
|
|
58
|
+
classStack.push(className);
|
|
59
|
+
pos = classEnd + 2;
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
if (html.startsWith('</span>', pos)) {
|
|
64
|
+
classStack.pop();
|
|
65
|
+
pos += 7;
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
if ('<' === html[pos]) {
|
|
69
|
+
const tagEnd = html.indexOf('>', pos);
|
|
70
|
+
if (-1 !== tagEnd) {
|
|
71
|
+
pos = tagEnd + 1;
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
let textEnd = html.indexOf('<', pos);
|
|
76
|
+
if (-1 === textEnd) textEnd = html.length;
|
|
77
|
+
if (textEnd > pos) {
|
|
78
|
+
const content = decodeHtmlEntities(html.slice(pos, textEnd));
|
|
79
|
+
if (content) {
|
|
80
|
+
const currentClass = classStack[classStack.length - 1] || '';
|
|
81
|
+
tokens.push({
|
|
82
|
+
content,
|
|
83
|
+
type: currentClass ? mapHljsClassToTokenType(currentClass) : 'plain'
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
pos = textEnd;
|
|
87
|
+
} else pos++;
|
|
88
|
+
}
|
|
89
|
+
return tokens;
|
|
90
|
+
}
|
|
91
|
+
function decodeHtmlEntities(text) {
|
|
92
|
+
return text.replace(/</g, '<').replace(/>/g, '>').replace(/&/g, '&').replace(/"/g, '"').replace(/'/g, "'").replace(/'/g, "'");
|
|
93
|
+
}
|
|
94
|
+
async function getHljs() {
|
|
95
|
+
if (!hljsPromise) hljsPromise = import("highlight.js").then((module)=>module.default);
|
|
96
|
+
return hljsPromise;
|
|
97
|
+
}
|
|
98
|
+
const highlightJsAdapter = {
|
|
99
|
+
name: 'highlight.js',
|
|
100
|
+
async highlight (code, language) {
|
|
101
|
+
try {
|
|
102
|
+
const hljs = await getHljs();
|
|
103
|
+
const result = hljs.highlight(code, {
|
|
104
|
+
language
|
|
105
|
+
});
|
|
106
|
+
const lines = result.value.split('\n');
|
|
107
|
+
const tokens = lines.map((line)=>{
|
|
108
|
+
if (!line) return [
|
|
109
|
+
{
|
|
110
|
+
content: '',
|
|
111
|
+
type: 'plain'
|
|
112
|
+
}
|
|
113
|
+
];
|
|
114
|
+
return parseHljsHtml(line);
|
|
115
|
+
});
|
|
116
|
+
return {
|
|
117
|
+
tokens,
|
|
118
|
+
html: result.value
|
|
119
|
+
};
|
|
120
|
+
} catch {
|
|
121
|
+
const tokens = code.split('\n').map((line)=>[
|
|
122
|
+
{
|
|
123
|
+
content: line,
|
|
124
|
+
type: 'plain'
|
|
125
|
+
}
|
|
126
|
+
]);
|
|
127
|
+
return {
|
|
128
|
+
tokens
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
getSupportedLanguages () {
|
|
133
|
+
return SUPPORTED_LANGUAGES;
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
export { highlightJsAdapter };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export { plainAdapter } from './plain';
|
|
2
|
+
export type { HighlightJsLanguage, HighlightResult, PlainLanguage, PrismLanguage, ShikiLanguage, SyntaxAdapter, Token, TokenType, } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Lazily load the Prism adapter for syntax highlighting.
|
|
5
|
+
* Lightweight, good for most use cases.
|
|
6
|
+
* Bundle size: ~15KB gzipped
|
|
7
|
+
*/
|
|
8
|
+
export declare const loadPrismAdapter: () => Promise<import("./types").SyntaxAdapter<import("./types").PrismLanguage>>;
|
|
9
|
+
/**
|
|
10
|
+
* Lazily load the Shiki adapter for syntax highlighting.
|
|
11
|
+
* High-quality highlighting with VS Code themes, supports more languages.
|
|
12
|
+
* Bundle size: ~200KB+ gzipped (includes WASM)
|
|
13
|
+
*/
|
|
14
|
+
export declare const loadShikiAdapter: () => Promise<import("./types").SyntaxAdapter<import("./types").ShikiLanguage>>;
|
|
15
|
+
/**
|
|
16
|
+
* Lazily load the highlight.js adapter for syntax highlighting.
|
|
17
|
+
* Well-established library, good language support.
|
|
18
|
+
* Bundle size: ~30KB gzipped (core + common languages)
|
|
19
|
+
*/
|
|
20
|
+
export declare const loadHighlightJsAdapter: () => Promise<import("./types").SyntaxAdapter<import("./types").HighlightJsLanguage>>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { plainAdapter } from "./plain.js";
|
|
2
|
+
const loadPrismAdapter = async ()=>{
|
|
3
|
+
const { prismAdapter } = await import("./prism.js");
|
|
4
|
+
return prismAdapter;
|
|
5
|
+
};
|
|
6
|
+
const loadShikiAdapter = async ()=>{
|
|
7
|
+
const { shikiAdapter } = await import("./shiki.js");
|
|
8
|
+
return shikiAdapter;
|
|
9
|
+
};
|
|
10
|
+
const loadHighlightJsAdapter = async ()=>{
|
|
11
|
+
const { highlightJsAdapter } = await import("./highlightjs.js");
|
|
12
|
+
return highlightJsAdapter;
|
|
13
|
+
};
|
|
14
|
+
export { loadHighlightJsAdapter, loadPrismAdapter, loadShikiAdapter, plainAdapter };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
const SUPPORTED_LANGUAGES = [
|
|
2
|
+
'text',
|
|
3
|
+
'plain'
|
|
4
|
+
];
|
|
5
|
+
const plainAdapter = {
|
|
6
|
+
name: 'plain',
|
|
7
|
+
async highlight (code) {
|
|
8
|
+
const tokens = code.split('\n').map((line)=>[
|
|
9
|
+
{
|
|
10
|
+
content: line,
|
|
11
|
+
type: 'plain'
|
|
12
|
+
}
|
|
13
|
+
]);
|
|
14
|
+
return {
|
|
15
|
+
tokens
|
|
16
|
+
};
|
|
17
|
+
},
|
|
18
|
+
getSupportedLanguages () {
|
|
19
|
+
return SUPPORTED_LANGUAGES;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
export { plainAdapter };
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { Prism } from "prism-react-renderer";
|
|
2
|
+
("u" > typeof globalThis ? globalThis : window).Prism = Prism;
|
|
3
|
+
let languagesLoaded = false;
|
|
4
|
+
async function loadAdditionalLanguages() {
|
|
5
|
+
if (languagesLoaded) return;
|
|
6
|
+
languagesLoaded = true;
|
|
7
|
+
await import("prismjs/components/prism-bash");
|
|
8
|
+
}
|
|
9
|
+
const SUPPORTED_LANGUAGES = [
|
|
10
|
+
"javascript",
|
|
11
|
+
"typescript",
|
|
12
|
+
'jsx',
|
|
13
|
+
'tsx',
|
|
14
|
+
'bash',
|
|
15
|
+
'shell',
|
|
16
|
+
'json',
|
|
17
|
+
'html',
|
|
18
|
+
'xml',
|
|
19
|
+
'css',
|
|
20
|
+
'python',
|
|
21
|
+
'go',
|
|
22
|
+
'sql',
|
|
23
|
+
'yaml',
|
|
24
|
+
'markdown'
|
|
25
|
+
];
|
|
26
|
+
function mapTokenType(prismType) {
|
|
27
|
+
const typeMap = {
|
|
28
|
+
plain: 'plain',
|
|
29
|
+
keyword: 'keyword',
|
|
30
|
+
string: 'string',
|
|
31
|
+
comment: 'comment',
|
|
32
|
+
function: 'function',
|
|
33
|
+
number: 'number',
|
|
34
|
+
operator: 'operator',
|
|
35
|
+
punctuation: 'punctuation',
|
|
36
|
+
'class-name': 'class-name',
|
|
37
|
+
property: 'property',
|
|
38
|
+
tag: 'tag',
|
|
39
|
+
'attr-name': 'attr-name',
|
|
40
|
+
'attr-value': 'attr-value',
|
|
41
|
+
boolean: 'boolean',
|
|
42
|
+
builtin: 'builtin',
|
|
43
|
+
constant: 'constant',
|
|
44
|
+
regex: 'regex',
|
|
45
|
+
variable: 'variable',
|
|
46
|
+
parameter: 'variable',
|
|
47
|
+
'template-string': 'string',
|
|
48
|
+
'template-punctuation': 'punctuation',
|
|
49
|
+
interpolation: 'variable',
|
|
50
|
+
'interpolation-punctuation': 'punctuation',
|
|
51
|
+
module: 'builtin',
|
|
52
|
+
imports: 'keyword',
|
|
53
|
+
exports: 'keyword',
|
|
54
|
+
'maybe-class-name': 'class-name',
|
|
55
|
+
'known-class-name': 'class-name',
|
|
56
|
+
'function-variable': 'function',
|
|
57
|
+
method: 'function',
|
|
58
|
+
'method-variable': 'function',
|
|
59
|
+
'property-access': 'property',
|
|
60
|
+
dom: 'builtin',
|
|
61
|
+
console: 'builtin',
|
|
62
|
+
'assign-left': 'variable',
|
|
63
|
+
environment: 'variable',
|
|
64
|
+
shebang: 'comment',
|
|
65
|
+
"file-descriptor": 'number'
|
|
66
|
+
};
|
|
67
|
+
return typeMap[prismType] ?? 'plain';
|
|
68
|
+
}
|
|
69
|
+
function flattenToken(token, parentType = 'plain') {
|
|
70
|
+
if ('string' == typeof token) return [
|
|
71
|
+
{
|
|
72
|
+
content: token,
|
|
73
|
+
type: mapTokenType(parentType)
|
|
74
|
+
}
|
|
75
|
+
];
|
|
76
|
+
const tokenType = token.type || parentType;
|
|
77
|
+
const content = token.content;
|
|
78
|
+
if ('string' == typeof content) return [
|
|
79
|
+
{
|
|
80
|
+
content,
|
|
81
|
+
type: mapTokenType(tokenType)
|
|
82
|
+
}
|
|
83
|
+
];
|
|
84
|
+
if (Array.isArray(content)) return content.flatMap((item)=>{
|
|
85
|
+
if ('string' == typeof item) return [
|
|
86
|
+
{
|
|
87
|
+
content: item,
|
|
88
|
+
type: mapTokenType(tokenType)
|
|
89
|
+
}
|
|
90
|
+
];
|
|
91
|
+
return flattenToken(item, tokenType);
|
|
92
|
+
});
|
|
93
|
+
return flattenToken(content, tokenType);
|
|
94
|
+
}
|
|
95
|
+
const prismAdapter = {
|
|
96
|
+
name: 'prism',
|
|
97
|
+
async highlight (code, language) {
|
|
98
|
+
await loadAdditionalLanguages();
|
|
99
|
+
const grammar = Prism.languages[language];
|
|
100
|
+
if (!grammar) {
|
|
101
|
+
const tokens = code.split('\n').map((line)=>[
|
|
102
|
+
{
|
|
103
|
+
content: line,
|
|
104
|
+
type: 'plain'
|
|
105
|
+
}
|
|
106
|
+
]);
|
|
107
|
+
return {
|
|
108
|
+
tokens
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
const prismTokens = Prism.tokenize(code, grammar);
|
|
112
|
+
const tokens = [];
|
|
113
|
+
let currentLine = [];
|
|
114
|
+
for (const token of prismTokens){
|
|
115
|
+
const flatTokens = flattenToken(token);
|
|
116
|
+
for (const flatToken of flatTokens){
|
|
117
|
+
const parts = flatToken.content.split('\n');
|
|
118
|
+
for(let i = 0; i < parts.length; i++){
|
|
119
|
+
if (i > 0) {
|
|
120
|
+
tokens.push(currentLine);
|
|
121
|
+
currentLine = [];
|
|
122
|
+
}
|
|
123
|
+
const content = parts[i];
|
|
124
|
+
if (content) currentLine.push({
|
|
125
|
+
content,
|
|
126
|
+
type: flatToken.type
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
tokens.push(currentLine);
|
|
132
|
+
return {
|
|
133
|
+
tokens
|
|
134
|
+
};
|
|
135
|
+
},
|
|
136
|
+
getSupportedLanguages () {
|
|
137
|
+
return SUPPORTED_LANGUAGES;
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
export { prismAdapter };
|