@conveyorhq/arrow-ds 2.0.0-beta.1 → 2.0.0-beta.10
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/package.json +34 -25
- package/public/components/Accordion/Accordion.d.ts +36 -17
- package/public/components/Accordion/Accordion.js +93 -55
- package/public/components/Accordion/context.d.ts +14 -0
- package/public/components/Accordion/context.js +33 -0
- package/public/components/Accordion/index.d.ts +1 -0
- package/public/components/Accordion/index.js +1 -0
- package/public/components/Accordion/types.d.ts +18 -0
- package/public/components/Accordion/types.js +2 -0
- package/public/components/Avatar/Avatar.d.ts +2 -1
- package/public/components/Avatar/Avatar.js +28 -23
- package/public/components/Avatar/AvatarGroup.d.ts +1 -1
- package/public/components/Avatar/AvatarGroup.js +11 -1
- package/public/components/Button/Button.d.ts +3 -2
- package/public/components/Button/Button.js +5 -2
- package/public/components/Checkbox/Checkbox.js +2 -20
- package/public/components/CloseButton/CloseButton.d.ts +1 -2
- package/public/components/ConveyorLogo/ConveyorLogo.d.ts +2 -1
- package/public/components/ConveyorLogo/ConveyorLogo.js +8 -8
- package/public/components/DatePicker/DatePicker.js +41 -9
- package/public/components/DateRangePicker/CustomDateRangeInput.js +3 -2
- package/public/components/Divider/Divider.d.ts +1 -9
- package/public/components/Divider/Divider.js +13 -24
- package/public/components/Drawer/Drawer.js +4 -2
- package/public/components/FileUpload/FileUpload.d.ts +4 -1
- package/public/components/FileUpload/FileUpload.js +4 -4
- package/public/components/FileUpload/FileUploadDnD.d.ts +3 -0
- package/public/components/FileUpload/FileUploadDnD.js +6 -3
- package/public/components/Flex/Flex.js +3 -4
- package/public/components/Frame/Frame.d.ts +1 -1
- package/public/components/Grid/Grid.d.ts +2 -2
- package/public/components/Grid/Grid.js +9 -3
- package/public/components/Icon/Icon.d.ts +24 -1
- package/public/components/Icon/Icon.js +52 -3
- package/public/components/Icon/svg/ArrowToBottom.d.ts +2 -0
- package/public/components/Icon/svg/ArrowToBottom.js +14 -0
- package/public/components/Icon/svg/BadgeCheck.d.ts +2 -0
- package/public/components/Icon/svg/BadgeCheck.js +13 -0
- package/public/components/Icon/svg/CommentAltCheck.d.ts +2 -0
- package/public/components/Icon/svg/CommentAltCheck.js +13 -0
- package/public/components/Icon/svg/Folders.d.ts +2 -0
- package/public/components/Icon/svg/Folders.js +13 -0
- package/public/components/Icon/svg/index.d.ts +4 -0
- package/public/components/Icon/svg/index.js +4 -0
- package/public/components/Input/Input.d.ts +3 -2
- package/public/components/Input/Input.js +7 -6
- package/public/components/Kbd/Kbd.d.ts +3 -0
- package/public/components/{Fixed/Fixed.js → Kbd/Kbd.js} +6 -6
- package/public/components/Kbd/index.d.ts +1 -0
- package/public/components/{Aside → Kbd}/index.js +1 -1
- package/public/components/Loading/Loading.d.ts +3 -2
- package/public/components/Loading/Loading.js +4 -7
- package/public/components/Markdown/Markdown.d.ts +1 -1
- package/public/components/Markdown/Markdown.js +4 -3
- package/public/components/MarkdownEditor/MarkdownEditor.js +1 -2
- package/public/components/MarkdownEditor/MarkdownHelp.js +4 -7
- package/public/components/MenuRenderer/MenuRenderer.js +2 -2
- package/public/components/Modal/Modal.d.ts +6 -0
- package/public/components/Modal/Modal.js +30 -20
- package/public/components/Modal/context.d.ts +6 -0
- package/public/components/Modal/context.js +15 -0
- package/public/components/Modal/index.d.ts +1 -0
- package/public/components/Modal/index.js +1 -0
- package/public/components/OptionButton/OptionButton.d.ts +28 -1
- package/public/components/OptionButton/OptionButton.js +65 -13
- package/public/components/OptionButton/context.d.ts +11 -0
- package/public/components/OptionButton/context.js +16 -0
- package/public/components/Overlay/Overlay.js +2 -2
- package/public/components/Paragraph/Paragraph.js +3 -7
- package/public/components/Popover/Popover.js +4 -4
- package/public/components/Reference/Reference.d.ts +2 -2
- package/public/components/ScrollSpy/ScrollSpy.d.ts +92 -0
- package/public/components/ScrollSpy/ScrollSpy.js +224 -0
- package/public/components/ScrollSpy/actions.d.ts +5 -0
- package/public/components/ScrollSpy/actions.js +11 -0
- package/public/components/ScrollSpy/index.d.ts +2 -0
- package/public/components/{Appbar → ScrollSpy}/index.js +2 -1
- package/public/components/ScrollSpy/reducers.d.ts +6 -0
- package/public/components/ScrollSpy/reducers.js +23 -0
- package/public/components/ScrollSpy/selectors.d.ts +3 -0
- package/public/components/ScrollSpy/selectors.js +7 -0
- package/public/components/ScrollSpy/types.d.ts +11 -0
- package/public/components/ScrollSpy/types.js +7 -0
- package/public/components/Select/Select.d.ts +3 -1
- package/public/components/Select/Select.js +20 -15
- package/public/components/Select/SelectPopover.d.ts +7 -1
- package/public/components/Select/SelectPopover.js +25 -13
- package/public/components/Select/index.d.ts +2 -0
- package/public/components/Select/index.js +3 -0
- package/public/components/Select/theme.js +22 -22
- package/public/components/SelectNew/hooks/useSelectLayout.js +2 -2
- package/public/components/Snackbar/Snackbar.d.ts +14 -22
- package/public/components/Snackbar/Snackbar.js +28 -85
- package/public/components/Snackbar/SnackbarProvider.d.ts +2 -0
- package/public/components/Snackbar/SnackbarProvider.js +21 -0
- package/public/components/Snackbar/constants.d.ts +2 -0
- package/public/components/Snackbar/constants.js +5 -0
- package/public/components/Snackbar/context.d.ts +4 -0
- package/public/components/Snackbar/context.js +17 -0
- package/public/components/Snackbar/helpers.d.ts +3 -0
- package/public/components/Snackbar/helpers.js +31 -0
- package/public/components/Snackbar/hooks.d.ts +2 -0
- package/public/components/Snackbar/hooks.js +47 -0
- package/public/components/Snackbar/index.d.ts +6 -0
- package/public/components/Snackbar/index.js +6 -0
- package/public/components/Snackbar/types.d.ts +43 -0
- package/public/components/Snackbar/types.js +2 -0
- package/public/components/SpeechBubble/SpeechBubble.d.ts +1 -0
- package/public/components/SpeechBubble/SpeechBubble.js +9 -2
- package/public/components/Stack/Stack.js +1 -1
- package/public/components/Svg/Svg.d.ts +3 -3
- package/public/components/Svg/Svg.js +1 -2
- package/public/components/Tab/Tab.js +1 -1
- package/public/components/Table/FilterDropdown.js +4 -4
- package/public/components/Table/Table.d.ts +5 -2
- package/public/components/Table/Table.js +11 -4
- package/public/components/Table/TableCell.d.ts +1 -0
- package/public/components/Table/TableCell.js +4 -2
- package/public/components/Table/TableHeaderCell.d.ts +2 -1
- package/public/components/Table/TableHeaderCell.js +24 -7
- package/public/components/Table/index.d.ts +3 -0
- package/public/components/Tag/Tag.d.ts +2 -2
- package/public/components/Toast/Toast.d.ts +3 -3
- package/public/components/Toast/Toast.js +6 -2
- package/public/components/Tooltip/Tooltip.d.ts +8 -4
- package/public/components/Tooltip/Tooltip.js +96 -72
- package/public/components/Tooltip/context.d.ts +7 -0
- package/public/components/Tooltip/context.js +15 -0
- package/public/components/Tooltip/index.d.ts +1 -0
- package/public/components/Tooltip/index.js +1 -0
- package/public/components/VisuallyHidden/VisuallyHidden.d.ts +2 -1
- package/public/components/VisuallyHidden/VisuallyHidden.js +3 -5
- package/public/css/styles.css +3400 -32484
- package/public/css/styles.min.css +1 -1
- package/public/css/styles.min.css.map +1 -1
- package/public/hooks/index.d.ts +5 -0
- package/public/hooks/index.js +11 -1
- package/public/hooks/useCopyToClipboard.d.ts +1 -0
- package/public/hooks/useCopyToClipboard.js +49 -0
- package/public/hooks/useIntersection.d.ts +8 -0
- package/public/hooks/useIntersection.js +26 -0
- package/public/hooks/useMatchMedia.d.ts +1 -0
- package/public/hooks/useMatchMedia.js +27 -0
- package/public/hooks/usePrefersReducedMotion.d.ts +1 -0
- package/public/hooks/usePrefersReducedMotion.js +9 -0
- package/public/hooks/useScreenOrientation.d.ts +1 -0
- package/public/hooks/useScreenOrientation.js +24 -0
- package/public/index.d.ts +3 -22
- package/public/index.js +4 -23
- package/public/src/style-dictionary/dist/tokens.css +378 -0
- package/public/src/style-dictionary/dist/tokens.d.ts +428 -0
- package/public/src/style-dictionary/dist/tokens.js +428 -0
- package/public/src/style-dictionary/dist/tokens.module.js +428 -0
- package/public/src/style-dictionary/tailwind.config.js +87 -0
- package/public/storybook-components/ComponentHeading.js +3 -5
- package/public/storybook-components/ComponentStatus.d.ts +1 -0
- package/public/storybook-components/ComponentStatus.js +4 -0
- package/public/storybook-components/EnumTable.js +2 -1
- package/public/storybook-components/Story.d.ts +2 -1
- package/public/storybook-components/Story.js +4 -1
- package/public/storybook-components/index.d.ts +1 -1
- package/public/storybook-components/index.js +1 -1
- package/public/style-dictionary/dist/tokens.d.ts +433 -0
- package/public/style-dictionary/dist/tokens.js +426 -0
- package/public/style-dictionary/dist/tokens.module.d.ts +431 -0
- package/public/style-dictionary/dist/tokens.module.js +424 -0
- package/public/style-dictionary/src/border-radius.d.ts +31 -0
- package/public/style-dictionary/src/border-radius.js +12 -0
- package/public/style-dictionary/src/border-width.d.ts +21 -0
- package/public/style-dictionary/src/border-width.js +11 -0
- package/public/style-dictionary/src/color.d.ts +249 -0
- package/public/style-dictionary/src/color.js +99 -0
- package/public/style-dictionary/src/font-size.d.ts +45 -0
- package/public/style-dictionary/src/font-size.js +16 -0
- package/public/style-dictionary/src/font-weight.d.ts +13 -0
- package/public/style-dictionary/src/font-weight.js +8 -0
- package/public/style-dictionary/src/height.d.ts +215 -0
- package/public/style-dictionary/src/height.js +13 -0
- package/public/style-dictionary/src/leading.d.ts +17 -0
- package/public/style-dictionary/src/leading.js +9 -0
- package/public/style-dictionary/src/screen-width.d.ts +17 -0
- package/public/style-dictionary/src/screen-width.js +9 -0
- package/public/style-dictionary/src/shadow.d.ts +63 -0
- package/public/style-dictionary/src/shadow.js +20 -0
- package/public/style-dictionary/src/spacing.d.ts +197 -0
- package/public/style-dictionary/src/spacing.js +70 -0
- package/public/style-dictionary/src/tracking.d.ts +13 -0
- package/public/style-dictionary/src/tracking.js +8 -0
- package/public/style-dictionary/src/type.d.ts +13 -0
- package/public/style-dictionary/src/type.js +35 -0
- package/public/style-dictionary/src/width.d.ts +287 -0
- package/public/style-dictionary/src/width.js +32 -0
- package/public/style-dictionary/src/z-index.d.ts +53 -0
- package/public/style-dictionary/src/z-index.js +22 -0
- package/public/style-dictionary/tailwind.config.d.ts +392 -0
- package/public/style-dictionary/tailwind.config.js +66 -0
- package/public/tokens/box-shadow.d.ts +1 -0
- package/public/tokens/box-shadow.js +10 -9
- package/public/tokens/font-family.js +1 -1
- package/public/tokens/height.d.ts +65 -43
- package/public/tokens/height.js +3 -44
- package/public/tokens/index.d.ts +526 -173
- package/public/tokens/index.js +1 -1
- package/public/tokens/margin.d.ts +129 -47
- package/public/tokens/margin.js +3 -47
- package/public/tokens/padding.d.ts +65 -24
- package/public/tokens/padding.js +2 -24
- package/public/tokens/sizing-scale.d.ts +133 -0
- package/public/tokens/sizing-scale.js +136 -0
- package/public/tokens/width.d.ts +197 -63
- package/public/tokens/width.js +6 -63
- package/public/types/index.d.ts +14 -18
- package/public/types/index.js +3 -24
- package/public/utilities/index.d.ts +1 -0
- package/public/utilities/index.js +3 -1
- package/public/utilities/mergeEventHandlers.d.ts +3 -0
- package/public/utilities/mergeEventHandlers.js +13 -0
- package/src/components/Accordion/Accordion.story.mdx +229 -22
- package/src/components/Accordion/Accordion.tsx +294 -113
- package/src/components/Accordion/context.ts +65 -0
- package/src/components/Accordion/index.css +25 -15
- package/src/components/Accordion/index.ts +1 -0
- package/src/components/Accordion/types.ts +59 -0
- package/src/components/Avatar/Avatar.story.mdx +60 -0
- package/src/components/Avatar/Avatar.tsx +62 -58
- package/src/components/Avatar/AvatarGroup.tsx +11 -9
- package/src/components/Avatar/index.css +10 -2
- package/src/components/Banner/Banner.story.mdx +4 -12
- package/src/components/Button/Button.story.mdx +116 -1
- package/src/components/Button/Button.tsx +13 -7
- package/src/components/Button/index.css +12 -6
- package/src/components/Button/product.css +12 -0
- package/src/components/Card/Card.story.mdx +56 -73
- package/src/components/Card/index.css +2 -2
- package/src/components/Checkbox/Checkbox.tsx +4 -24
- package/src/components/Checkbox/index.css +4 -3
- package/src/components/CloseButton/CloseButton.tsx +1 -1
- package/src/components/CloseButton/index.css +0 -5
- package/src/components/ConveyorLogo/ConveyorLogo.story.mdx +31 -0
- package/src/components/ConveyorLogo/ConveyorLogo.tsx +9 -6
- package/src/components/DatePicker/DatePicker.story.mdx +21 -0
- package/src/components/DatePicker/DatePicker.tsx +83 -14
- package/src/components/DatePicker/index.css +52 -8
- package/src/components/DateRangePicker/CustomDateRangeInput.tsx +25 -32
- package/src/components/DateRangePicker/index.css +1 -12
- package/src/components/Divider/Divider.tsx +26 -40
- package/src/components/Divider/index.css +16 -0
- package/src/components/Drawer/Drawer.story.mdx +68 -70
- package/src/components/Drawer/Drawer.tsx +9 -8
- package/src/components/Drawer/index.css +26 -1
- package/src/components/FileUpload/FileUpload.story.mdx +27 -1
- package/src/components/FileUpload/FileUpload.tsx +13 -6
- package/src/components/FileUpload/FileUploadDnD.tsx +21 -6
- package/src/components/FileUpload/index.css +2 -3
- package/src/components/Flex/Flex.story.mdx +130 -0
- package/src/components/Flex/Flex.tsx +7 -6
- package/src/components/Flex/index.css +3 -0
- package/src/components/Frame/Frame.story.mdx +146 -6
- package/src/components/Frame/Frame.tsx +1 -1
- package/src/components/Frame/index.css +8 -13
- package/src/components/Grid/Grid.story.mdx +205 -3
- package/src/components/Grid/Grid.tsx +44 -5
- package/src/components/Grid/index.css +3 -0
- package/src/components/Icon/Icon.tsx +93 -9
- package/src/components/Icon/svg/ArrowToBottom.tsx +17 -0
- package/src/components/Icon/svg/BadgeCheck.tsx +13 -0
- package/src/components/Icon/svg/CommentAltCheck.tsx +13 -0
- package/src/components/Icon/svg/Folders.tsx +13 -0
- package/src/components/Icon/svg/index.ts +4 -0
- package/src/components/Input/Input.story.mdx +199 -13
- package/src/components/Input/Input.tsx +39 -6
- package/src/components/Input/brand.css +6 -12
- package/src/components/Input/index.css +14 -0
- package/src/components/Input/product.css +10 -52
- package/src/components/Kbd/Kbd.story.mdx +44 -0
- package/src/components/Kbd/Kbd.tsx +11 -0
- package/src/components/Kbd/index.css +17 -0
- package/src/components/Kbd/index.ts +1 -0
- package/src/components/Link/index.css +4 -14
- package/src/components/Loading/Loading.story.mdx +16 -9
- package/src/components/Loading/Loading.tsx +17 -8
- package/src/components/Loading/index.css +1 -67
- package/src/components/Markdown/Markdown.story.mdx +67 -0
- package/src/components/Markdown/Markdown.tsx +5 -2
- package/src/components/Markdown/index.css +8 -11
- package/src/components/MarkdownEditor/MarkdownEditor.tsx +2 -3
- package/src/components/MarkdownEditor/MarkdownHelp.tsx +7 -10
- package/src/components/MarkdownEditor/index.css +5 -1
- package/src/components/Menu/index.css +2 -6
- package/src/components/MenuRenderer/MenuRenderer.story.mdx +1 -1
- package/src/components/MenuRenderer/MenuRenderer.tsx +1 -1
- package/src/components/Modal/Modal.story.mdx +83 -0
- package/src/components/Modal/Modal.tsx +61 -43
- package/src/components/Modal/context.ts +20 -0
- package/src/components/Modal/index.css +8 -3
- package/src/components/Modal/index.ts +1 -0
- package/src/components/OptionButton/OptionButton.story.mdx +175 -21
- package/src/components/OptionButton/OptionButton.tsx +215 -26
- package/src/components/OptionButton/context.ts +22 -0
- package/src/components/OptionButton/index.css +16 -4
- package/src/components/Overlay/Overlay.story.mdx +26 -0
- package/src/components/Overlay/Overlay.tsx +2 -3
- package/src/components/Overlay/index.css +1 -0
- package/src/components/Paragraph/Paragraph.story.mdx +16 -2
- package/src/components/Paragraph/Paragraph.tsx +5 -13
- package/src/components/Paragraph/index.css +6 -0
- package/src/components/Popover/Popover.tsx +1 -1
- package/src/components/Popover/index.css +5 -6
- package/src/components/Radio/index.css +3 -6
- package/src/components/Reference/Reference.tsx +2 -2
- package/src/components/Reference/index.css +1 -7
- package/src/components/ScrollSpy/ScrollSpy.story.mdx +14 -0
- package/src/components/ScrollSpy/ScrollSpy.tsx +407 -0
- package/src/components/ScrollSpy/actions.ts +8 -0
- package/src/components/ScrollSpy/index.css +7 -0
- package/src/components/ScrollSpy/index.ts +2 -0
- package/src/components/ScrollSpy/reducers.ts +24 -0
- package/src/components/ScrollSpy/selectors.ts +5 -0
- package/src/components/ScrollSpy/types.ts +13 -0
- package/src/components/Select/Select.story.mdx +54 -12
- package/src/components/Select/Select.tsx +51 -13
- package/src/components/Select/SelectPopover.tsx +68 -25
- package/src/components/Select/index.css +6 -0
- package/src/components/Select/index.ts +14 -0
- package/src/components/Select/theme.ts +22 -22
- package/src/components/SelectNew/hooks/useSelectLayout.ts +1 -1
- package/src/components/Snackbar/Snackbar.story.mdx +96 -9
- package/src/components/Snackbar/Snackbar.tsx +56 -145
- package/src/components/Snackbar/SnackbarProvider.tsx +31 -0
- package/src/components/Snackbar/constants.ts +2 -0
- package/src/components/Snackbar/context.ts +20 -0
- package/src/components/Snackbar/helpers.tsx +52 -0
- package/src/components/Snackbar/hooks.ts +57 -0
- package/src/components/Snackbar/index.css +2 -12
- package/src/components/Snackbar/index.ts +6 -0
- package/src/components/Snackbar/types.ts +180 -0
- package/src/components/SpeechBubble/SpeechBubble.story.mdx +76 -0
- package/src/components/SpeechBubble/SpeechBubble.tsx +22 -1
- package/src/components/SpeechBubble/index.css +7 -4
- package/src/components/Stack/Stack.tsx +1 -1
- package/src/components/Stack/index.css +0 -416
- package/src/components/Svg/Svg.story.mdx +36 -0
- package/src/components/Svg/Svg.tsx +6 -4
- package/src/components/Tab/Tab.tsx +2 -2
- package/src/components/Tab/index.css +4 -10
- package/src/components/Table/FilterDropdown.tsx +1 -1
- package/src/components/Table/Table.story.mdx +243 -0
- package/src/components/Table/Table.tsx +36 -1
- package/src/components/Table/TableCell.tsx +24 -1
- package/src/components/Table/TableHeaderCell.tsx +64 -11
- package/src/components/Table/index.css +138 -20
- package/src/components/Table/index.ts +3 -0
- package/src/components/Tag/Tag.story.mdx +1 -1
- package/src/components/Tag/Tag.tsx +2 -2
- package/src/components/Tag/index.css +6 -17
- package/src/components/Text/Text.story.mdx +34 -0
- package/src/components/Toast/Toast.story.mdx +1 -1
- package/src/components/Toast/Toast.tsx +14 -10
- package/src/components/Toast/index.css +4 -7
- package/src/components/Toggle/index.css +2 -16
- package/src/components/Token/Token.story.mdx +2 -2
- package/src/components/Token/index.css +2 -9
- package/src/components/Tooltip/Tooltip.story.mdx +350 -118
- package/src/components/Tooltip/Tooltip.tsx +198 -83
- package/src/components/Tooltip/context.ts +21 -0
- package/src/components/Tooltip/index.css +22 -14
- package/src/components/Tooltip/index.ts +1 -0
- package/src/components/VisuallyHidden/VisuallyHidden.story.mdx +54 -0
- package/src/components/VisuallyHidden/VisuallyHidden.tsx +10 -5
- package/src/components/VisuallyHidden/index.css +3 -0
- package/src/css/base.css +29 -0
- package/src/css/components.css +7 -13
- package/src/css/fonts.css +13 -10
- package/src/css/styles.css +1 -13
- package/src/css/utilities/animations.css +13 -0
- package/src/css/utilities.css +13 -0
- package/src/docs/Colors.story.mdx +13 -13
- package/src/docs/Spacing.story.mdx +4 -20
- package/src/docs/Tokens.story.mdx +230 -0
- package/src/docs/Typography.story.mdx +27 -101
- package/src/docs/hooks/useDisclosureHook.story.mdx +58 -0
- package/src/docs/hooks/useKeyPressHook.story.mdx +54 -0
- package/src/docs/hooks/useMatchMediaHook.story.mdx +42 -0
- package/src/docs/hooks/useOutsideClickHook.story.mdx +56 -0
- package/src/docs/hooks/usePrefersReducedMotion.story.mdx +61 -0
- package/src/docs/hooks/useScreenOrientationHook.story.mdx +56 -0
- package/src/docs/hooks/useStepHook.story.mdx +102 -0
- package/src/hooks/index.ts +5 -0
- package/src/hooks/useCopyToClipboard.ts +61 -0
- package/src/hooks/useIntersection.ts +45 -0
- package/src/hooks/useMatchMedia.ts +40 -0
- package/src/hooks/usePrefersReducedMotion.ts +9 -0
- package/src/hooks/useScreenOrientation.ts +27 -0
- package/src/index.ts +3 -22
- package/src/storybook-components/ComponentHeading.tsx +4 -19
- package/src/storybook-components/ComponentStatus.tsx +4 -0
- package/src/storybook-components/EnumTable.tsx +3 -2
- package/src/storybook-components/Story.tsx +13 -1
- package/src/storybook-components/index.tsx +1 -1
- package/src/style-dictionary/dist/tokens.css +378 -0
- package/src/style-dictionary/dist/tokens.d.ts +428 -0
- package/src/style-dictionary/dist/tokens.js +428 -0
- package/src/style-dictionary/dist/tokens.module.js +428 -0
- package/src/style-dictionary/src/border-radius.js +11 -0
- package/src/style-dictionary/src/border-width.js +10 -0
- package/src/style-dictionary/src/color.js +98 -0
- package/src/style-dictionary/src/font-size.js +15 -0
- package/src/style-dictionary/src/font-weight.js +7 -0
- package/src/style-dictionary/src/height.js +13 -0
- package/src/style-dictionary/src/leading.js +8 -0
- package/src/style-dictionary/src/screen-width.js +8 -0
- package/src/style-dictionary/src/shadow.js +20 -0
- package/src/style-dictionary/src/spacing.js +69 -0
- package/src/style-dictionary/src/tracking.js +7 -0
- package/src/style-dictionary/src/type.js +34 -0
- package/src/style-dictionary/src/width.js +32 -0
- package/src/style-dictionary/src/z-index.js +21 -0
- package/src/style-dictionary/tailwind.config.js +87 -0
- package/src/tokens/borders.ts +6 -0
- package/src/tokens/box-shadow.ts +15 -9
- package/src/tokens/colors.ts +6 -0
- package/src/tokens/font-family.ts +4 -1
- package/src/tokens/font-size.ts +3 -0
- package/src/tokens/font-weight.ts +3 -0
- package/src/tokens/height.ts +6 -44
- package/src/tokens/index.ts +5 -4
- package/src/tokens/letter-spacing.ts +3 -0
- package/src/tokens/line-height.ts +3 -0
- package/src/tokens/margin.ts +7 -47
- package/src/tokens/padding.ts +6 -24
- package/src/tokens/screens.ts +3 -0
- package/src/tokens/sizing-scale.ts +140 -0
- package/src/tokens/width.ts +16 -63
- package/src/tokens/will-change.ts +3 -0
- package/src/tokens/z-index.ts +3 -0
- package/src/types/index.ts +37 -24
- package/src/utilities/index.ts +1 -0
- package/src/utilities/mergeEventHandlers.ts +20 -0
- package/public/components/Absolute/Absolute.d.ts +0 -2
- package/public/components/Absolute/Absolute.js +0 -14
- package/public/components/Absolute/index.d.ts +0 -1
- package/public/components/Absolute/index.js +0 -5
- package/public/components/Appbar/Appbar.d.ts +0 -61
- package/public/components/Appbar/Appbar.js +0 -44
- package/public/components/Appbar/AppbarClaimProfileButton.d.ts +0 -2
- package/public/components/Appbar/AppbarClaimProfileButton.js +0 -10
- package/public/components/Appbar/AppbarDropdownIcon.d.ts +0 -1
- package/public/components/Appbar/AppbarDropdownIcon.js +0 -10
- package/public/components/Appbar/AppbarLogInButton.d.ts +0 -2
- package/public/components/Appbar/AppbarLogInButton.js +0 -26
- package/public/components/Appbar/AppbarLogo.d.ts +0 -2
- package/public/components/Appbar/AppbarLogo.js +0 -31
- package/public/components/Appbar/AppbarOrganization.d.ts +0 -17
- package/public/components/Appbar/AppbarOrganization.js +0 -35
- package/public/components/Appbar/AppbarProductMenu.d.ts +0 -13
- package/public/components/Appbar/AppbarProductMenu.js +0 -67
- package/public/components/Appbar/AppbarTabMarker.d.ts +0 -1
- package/public/components/Appbar/AppbarTabMarker.js +0 -11
- package/public/components/Appbar/AppbarTabs.d.ts +0 -10
- package/public/components/Appbar/AppbarTabs.js +0 -42
- package/public/components/Appbar/AppbarUser.d.ts +0 -27
- package/public/components/Appbar/AppbarUser.js +0 -76
- package/public/components/Appbar/config.d.ts +0 -7
- package/public/components/Appbar/config.js +0 -13
- package/public/components/Appbar/context.d.ts +0 -10
- package/public/components/Appbar/context.js +0 -16
- package/public/components/Appbar/index.d.ts +0 -1
- package/public/components/AptibleLogo/AptibleLogo.d.ts +0 -7
- package/public/components/AptibleLogo/AptibleLogo.js +0 -25
- package/public/components/AptibleLogo/AptibleLogo.story.d.ts +0 -1
- package/public/components/AptibleLogo/AptibleLogo.story.js +0 -37
- package/public/components/AptibleLogo/index.d.ts +0 -1
- package/public/components/AptibleLogo/index.js +0 -5
- package/public/components/ArrowButton/ArrowButton.d.ts +0 -9
- package/public/components/ArrowButton/ArrowButton.js +0 -22
- package/public/components/ArrowButton/index.d.ts +0 -1
- package/public/components/ArrowButton/index.js +0 -13
- package/public/components/ArrowLink/ArrowLink.d.ts +0 -9
- package/public/components/ArrowLink/ArrowLink.js +0 -21
- package/public/components/ArrowLink/index.d.ts +0 -1
- package/public/components/ArrowLink/index.js +0 -13
- package/public/components/Aside/Aside.d.ts +0 -14
- package/public/components/Aside/Aside.js +0 -28
- package/public/components/Aside/index.d.ts +0 -1
- package/public/components/Combobox/Combobox.d.ts +0 -2
- package/public/components/Combobox/Combobox.js +0 -75
- package/public/components/Combobox/ComboboxMulti.d.ts +0 -2
- package/public/components/Combobox/ComboboxMulti.js +0 -57
- package/public/components/Combobox/index.d.ts +0 -2
- package/public/components/Combobox/index.js +0 -14
- package/public/components/Combobox/ui.d.ts +0 -73
- package/public/components/Combobox/ui.js +0 -97
- package/public/components/Combobox/useSelect.d.ts +0 -60
- package/public/components/Combobox/useSelect.js +0 -239
- package/public/components/Fixed/Fixed.d.ts +0 -2
- package/public/components/Fixed/Fixed.story.d.ts +0 -1
- package/public/components/Fixed/Fixed.story.js +0 -12
- package/public/components/Fixed/index.d.ts +0 -1
- package/public/components/Fixed/index.js +0 -5
- package/public/components/Flex/Flex.story.d.ts +0 -1
- package/public/components/Flex/Flex.story.js +0 -12
- package/public/components/IntegrationLogo/IntegrationLogo.d.ts +0 -10
- package/public/components/IntegrationLogo/IntegrationLogo.js +0 -33
- package/public/components/IntegrationLogo/IntegrationLogoSvg.d.ts +0 -9
- package/public/components/IntegrationLogo/IntegrationLogoSvg.js +0 -52
- package/public/components/IntegrationLogo/index.d.ts +0 -1
- package/public/components/IntegrationLogo/index.js +0 -13
- package/public/components/IntegrationLogo/svg/addigy.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/addigy.js +0 -17
- package/public/components/IntegrationLogo/svg/aws.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/aws.js +0 -22
- package/public/components/IntegrationLogo/svg/bamboohr.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/bamboohr.js +0 -18
- package/public/components/IntegrationLogo/svg/bitbucket.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/bitbucket.js +0 -18
- package/public/components/IntegrationLogo/svg/conveyor.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/conveyor.js +0 -20
- package/public/components/IntegrationLogo/svg/default.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/default.js +0 -13
- package/public/components/IntegrationLogo/svg/deploy.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/deploy.js +0 -17
- package/public/components/IntegrationLogo/svg/events-api.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/events-api.js +0 -26
- package/public/components/IntegrationLogo/svg/gcp.d.ts +0 -3
- package/public/components/IntegrationLogo/svg/gcp.js +0 -15
- package/public/components/IntegrationLogo/svg/github.d.ts +0 -3
- package/public/components/IntegrationLogo/svg/github.js +0 -12
- package/public/components/IntegrationLogo/svg/gitlab.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/gitlab.js +0 -19
- package/public/components/IntegrationLogo/svg/gsuite.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/gsuite.js +0 -15
- package/public/components/IntegrationLogo/svg/index.d.ts +0 -21
- package/public/components/IntegrationLogo/svg/index.js +0 -54
- package/public/components/IntegrationLogo/svg/jamf.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/jamf.js +0 -20
- package/public/components/IntegrationLogo/svg/jira.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/jira.js +0 -21
- package/public/components/IntegrationLogo/svg/jumpcloud.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/jumpcloud.js +0 -28
- package/public/components/IntegrationLogo/svg/okta.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/okta.js +0 -16
- package/public/components/IntegrationLogo/svg/onelogin.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/onelogin.js +0 -18
- package/public/components/IntegrationLogo/svg/salesforce.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/salesforce.js +0 -20
- package/public/components/IntegrationLogo/svg/slack.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/slack.js +0 -19
- package/public/components/IntegrationLogo/svg/wrapper.d.ts +0 -11
- package/public/components/IntegrationLogo/svg/wrapper.js +0 -13
- package/public/components/IntegrationLogo/svg/zoom.d.ts +0 -2
- package/public/components/IntegrationLogo/svg/zoom.js +0 -23
- package/public/components/Meta/Meta.d.ts +0 -6
- package/public/components/Meta/Meta.js +0 -21
- package/public/components/Meta/Meta.story.d.ts +0 -1
- package/public/components/Meta/Meta.story.js +0 -39
- package/public/components/Meta/index.d.ts +0 -1
- package/public/components/Meta/index.js +0 -5
- package/public/components/Overlay/Overlay.story.d.ts +0 -1
- package/public/components/Overlay/Overlay.story.js +0 -12
- package/public/components/Pagination/Pagination.d.ts +0 -9
- package/public/components/Pagination/Pagination.js +0 -36
- package/public/components/Pagination/Pagination.story.d.ts +0 -1
- package/public/components/Pagination/Pagination.story.js +0 -37
- package/public/components/Pagination/index.d.ts +0 -1
- package/public/components/Pagination/index.js +0 -13
- package/public/components/ProductIcon/ProductIcon.d.ts +0 -7
- package/public/components/ProductIcon/ProductIcon.js +0 -31
- package/public/components/ProductIcon/ProductIcon.story.d.ts +0 -1
- package/public/components/ProductIcon/ProductIcon.story.js +0 -20
- package/public/components/ProductIcon/ProductIconComply.d.ts +0 -2
- package/public/components/ProductIcon/ProductIconComply.js +0 -11
- package/public/components/ProductIcon/ProductIconDeploy.d.ts +0 -2
- package/public/components/ProductIcon/ProductIconDeploy.js +0 -11
- package/public/components/ProductIcon/ProductIconExchange.d.ts +0 -2
- package/public/components/ProductIcon/ProductIconExchange.js +0 -11
- package/public/components/ProductIcon/ProductIconTrustCenter.d.ts +0 -2
- package/public/components/ProductIcon/ProductIconTrustCenter.js +0 -11
- package/public/components/ProductIcon/index.d.ts +0 -1
- package/public/components/ProductIcon/index.js +0 -5
- package/public/components/PropertyDiff/PropertyDiff.d.ts +0 -7
- package/public/components/PropertyDiff/PropertyDiff.js +0 -22
- package/public/components/PropertyDiff/index.d.ts +0 -1
- package/public/components/PropertyDiff/index.js +0 -13
- package/public/components/Relative/Relative.d.ts +0 -2
- package/public/components/Relative/Relative.js +0 -14
- package/public/components/Relative/Relative.story.d.ts +0 -1
- package/public/components/Relative/Relative.story.js +0 -12
- package/public/components/Relative/index.d.ts +0 -1
- package/public/components/Relative/index.js +0 -5
- package/public/components/SearchFilter/SearchFilter.d.ts +0 -17
- package/public/components/SearchFilter/SearchFilter.js +0 -103
- package/public/components/SearchFilter/index.d.ts +0 -1
- package/public/components/SearchFilter/index.js +0 -13
- package/public/components/SpeechBubble/SpeechBubble.story.d.ts +0 -1
- package/public/components/SpeechBubble/SpeechBubble.story.js +0 -19
- package/public/components/StatusLabel/StatusLabel.d.ts +0 -16
- package/public/components/StatusLabel/StatusLabel.js +0 -40
- package/public/components/StatusLabel/index.d.ts +0 -1
- package/public/components/StatusLabel/index.js +0 -13
- package/public/components/StatusPanel/StatusPanel.d.ts +0 -11
- package/public/components/StatusPanel/StatusPanel.js +0 -24
- package/public/components/StatusPanel/index.d.ts +0 -1
- package/public/components/StatusPanel/index.js +0 -13
- package/public/components/Sticky/Sticky.d.ts +0 -2
- package/public/components/Sticky/Sticky.js +0 -14
- package/public/components/Sticky/Sticky.story.d.ts +0 -1
- package/public/components/Sticky/Sticky.story.js +0 -12
- package/public/components/Sticky/index.d.ts +0 -1
- package/public/components/Sticky/index.js +0 -5
- package/public/components/Svg/Svg.story.d.ts +0 -1
- package/public/components/Svg/Svg.story.js +0 -14
- package/public/components/Text/Text.story.d.ts +0 -1
- package/public/components/Text/Text.story.js +0 -31
- package/public/components/TopBar/TopBar.d.ts +0 -14
- package/public/components/TopBar/TopBar.js +0 -24
- package/public/components/TopBar/TopBarBreadcrumbs.d.ts +0 -10
- package/public/components/TopBar/TopBarBreadcrumbs.js +0 -34
- package/public/components/TopBar/TopBarSubNav.d.ts +0 -2
- package/public/components/TopBar/TopBarSubNav.js +0 -16
- package/public/components/TopBar/TopBarSubNavItem.d.ts +0 -5
- package/public/components/TopBar/TopBarSubNavItem.js +0 -17
- package/public/components/TopBar/index.d.ts +0 -1
- package/public/components/TopBar/index.js +0 -13
- package/public/components/VendorLogo/VendorLogo.d.ts +0 -20
- package/public/components/VendorLogo/VendorLogo.js +0 -57
- package/public/components/VendorLogo/index.d.ts +0 -1
- package/public/components/VendorLogo/index.js +0 -13
- package/public/components/VisuallyHidden/VisuallyHidden.story.d.ts +0 -1
- package/public/components/VisuallyHidden/VisuallyHidden.story.js +0 -36
- package/public/components/useStep/ExampleSetupWizard.d.ts +0 -4
- package/public/components/useStep/ExampleSetupWizard.js +0 -33
- package/public/storybook-components/TailwindPropertyClasses.d.ts +0 -9
- package/public/storybook-components/TailwindPropertyClasses.js +0 -194
- package/public/tailwind.config.d.ts +0 -1
- package/public/tailwind.config.js +0 -4
- package/public/tokens/_tailwind-config.d.ts +0 -810
- package/public/tokens/_tailwind-config.js +0 -50
- package/src/components/Absolute/Absolute.story.mdx +0 -26
- package/src/components/Absolute/Absolute.tsx +0 -9
- package/src/components/Absolute/index.ts +0 -1
- package/src/components/Appbar/Appbar.story.mdx +0 -201
- package/src/components/Appbar/Appbar.tsx +0 -124
- package/src/components/Appbar/AppbarClaimProfileButton.tsx +0 -13
- package/src/components/Appbar/AppbarDropdownIcon.tsx +0 -6
- package/src/components/Appbar/AppbarLogInButton.tsx +0 -28
- package/src/components/Appbar/AppbarLogo.tsx +0 -43
- package/src/components/Appbar/AppbarOrganization.tsx +0 -96
- package/src/components/Appbar/AppbarProductMenu.tsx +0 -125
- package/src/components/Appbar/AppbarTabMarker.tsx +0 -5
- package/src/components/Appbar/AppbarTabs.tsx +0 -46
- package/src/components/Appbar/AppbarUser.tsx +0 -179
- package/src/components/Appbar/config.ts +0 -12
- package/src/components/Appbar/context.ts +0 -20
- package/src/components/Appbar/index.css +0 -324
- package/src/components/Appbar/index.ts +0 -1
- package/src/components/AptibleLogo/AptibleLogo.story.tsx +0 -22
- package/src/components/AptibleLogo/AptibleLogo.tsx +0 -42
- package/src/components/AptibleLogo/index.ts +0 -1
- package/src/components/ArrowButton/ArrowButton.story.mdx +0 -110
- package/src/components/ArrowButton/ArrowButton.tsx +0 -54
- package/src/components/ArrowButton/index.css +0 -42
- package/src/components/ArrowButton/index.ts +0 -1
- package/src/components/ArrowLink/ArrowLink.story.mdx +0 -65
- package/src/components/ArrowLink/ArrowLink.tsx +0 -42
- package/src/components/ArrowLink/index.ts +0 -1
- package/src/components/Aside/Aside.story.mdx +0 -65
- package/src/components/Aside/Aside.tsx +0 -59
- package/src/components/Aside/index.css +0 -11
- package/src/components/Aside/index.ts +0 -1
- package/src/components/Combobox/Combobox.story.mdx +0 -199
- package/src/components/Combobox/Combobox.tsx +0 -162
- package/src/components/Combobox/ComboboxMulti.tsx +0 -169
- package/src/components/Combobox/TODO.md +0 -33
- package/src/components/Combobox/index.css +0 -97
- package/src/components/Combobox/index.ts +0 -2
- package/src/components/Combobox/ui.tsx +0 -211
- package/src/components/Combobox/useSelect.ts +0 -347
- package/src/components/Fixed/Fixed.md +0 -16
- package/src/components/Fixed/Fixed.story.tsx +0 -12
- package/src/components/Fixed/Fixed.tsx +0 -9
- package/src/components/Fixed/index.ts +0 -1
- package/src/components/Flex/Flex.md +0 -14
- package/src/components/Flex/Flex.story.tsx +0 -12
- package/src/components/IntegrationLogo/IntegrationLogo.story.mdx +0 -159
- package/src/components/IntegrationLogo/IntegrationLogo.tsx +0 -54
- package/src/components/IntegrationLogo/IntegrationLogoSvg.tsx +0 -79
- package/src/components/IntegrationLogo/index.ts +0 -1
- package/src/components/IntegrationLogo/svg/addigy.tsx +0 -23
- package/src/components/IntegrationLogo/svg/aws.tsx +0 -52
- package/src/components/IntegrationLogo/svg/bamboohr.tsx +0 -34
- package/src/components/IntegrationLogo/svg/bitbucket.tsx +0 -37
- package/src/components/IntegrationLogo/svg/conveyor.tsx +0 -41
- package/src/components/IntegrationLogo/svg/default.tsx +0 -11
- package/src/components/IntegrationLogo/svg/deploy.tsx +0 -29
- package/src/components/IntegrationLogo/svg/events-api.tsx +0 -75
- package/src/components/IntegrationLogo/svg/gcp.tsx +0 -26
- package/src/components/IntegrationLogo/svg/github.tsx +0 -14
- package/src/components/IntegrationLogo/svg/gitlab.tsx +0 -40
- package/src/components/IntegrationLogo/svg/gsuite.tsx +0 -24
- package/src/components/IntegrationLogo/svg/index.ts +0 -21
- package/src/components/IntegrationLogo/svg/jamf.tsx +0 -36
- package/src/components/IntegrationLogo/svg/jira.tsx +0 -44
- package/src/components/IntegrationLogo/svg/jumpcloud.tsx +0 -86
- package/src/components/IntegrationLogo/svg/okta.tsx +0 -28
- package/src/components/IntegrationLogo/svg/onelogin.tsx +0 -34
- package/src/components/IntegrationLogo/svg/salesforce.tsx +0 -39
- package/src/components/IntegrationLogo/svg/slack.tsx +0 -40
- package/src/components/IntegrationLogo/svg/wrapper.tsx +0 -35
- package/src/components/IntegrationLogo/svg/zoom.tsx +0 -51
- package/src/components/Meta/Meta.md +0 -14
- package/src/components/Meta/Meta.story.tsx +0 -24
- package/src/components/Meta/Meta.tsx +0 -26
- package/src/components/Meta/index.ts +0 -1
- package/src/components/Overlay/Overlay.md +0 -14
- package/src/components/Overlay/Overlay.story.tsx +0 -12
- package/src/components/Pagination/Pagination.story.tsx +0 -25
- package/src/components/Pagination/Pagination.tsx +0 -78
- package/src/components/Pagination/index.css +0 -46
- package/src/components/Pagination/index.ts +0 -1
- package/src/components/ProductIcon/ProductIcon.md +0 -22
- package/src/components/ProductIcon/ProductIcon.story.tsx +0 -26
- package/src/components/ProductIcon/ProductIcon.tsx +0 -45
- package/src/components/ProductIcon/ProductIconComply.tsx +0 -17
- package/src/components/ProductIcon/ProductIconDeploy.tsx +0 -17
- package/src/components/ProductIcon/ProductIconExchange.tsx +0 -17
- package/src/components/ProductIcon/ProductIconTrustCenter.tsx +0 -17
- package/src/components/ProductIcon/index.css +0 -13
- package/src/components/ProductIcon/index.ts +0 -1
- package/src/components/PropertyDiff/PropertDiff.story.mdx +0 -46
- package/src/components/PropertyDiff/PropertyDiff.tsx +0 -48
- package/src/components/PropertyDiff/index.css +0 -33
- package/src/components/PropertyDiff/index.ts +0 -1
- package/src/components/Relative/Relative.md +0 -16
- package/src/components/Relative/Relative.story.tsx +0 -12
- package/src/components/Relative/Relative.tsx +0 -9
- package/src/components/Relative/index.ts +0 -1
- package/src/components/SearchFilter/SearchFilter.md +0 -17
- package/src/components/SearchFilter/SearchFilter.story.mdx +0 -186
- package/src/components/SearchFilter/SearchFilter.tsx +0 -187
- package/src/components/SearchFilter/index.css +0 -83
- package/src/components/SearchFilter/index.ts +0 -1
- package/src/components/SpeechBubble/SpeechBubble.md +0 -14
- package/src/components/SpeechBubble/SpeechBubble.story.tsx +0 -26
- package/src/components/StatusLabel/StatusLabel.story.mdx +0 -316
- package/src/components/StatusLabel/StatusLabel.tsx +0 -112
- package/src/components/StatusLabel/index.css +0 -23
- package/src/components/StatusLabel/index.ts +0 -1
- package/src/components/StatusPanel/StatusPanel.story.mdx +0 -109
- package/src/components/StatusPanel/StatusPanel.tsx +0 -51
- package/src/components/StatusPanel/index.css +0 -52
- package/src/components/StatusPanel/index.ts +0 -1
- package/src/components/Sticky/Sticky.md +0 -16
- package/src/components/Sticky/Sticky.story.tsx +0 -12
- package/src/components/Sticky/Sticky.tsx +0 -9
- package/src/components/Sticky/index.ts +0 -1
- package/src/components/Svg/Svg.md +0 -14
- package/src/components/Svg/Svg.story.tsx +0 -15
- package/src/components/Text/Text.md +0 -14
- package/src/components/Text/Text.story.tsx +0 -12
- package/src/components/TopBar/TopBar.story.mdx +0 -154
- package/src/components/TopBar/TopBar.tsx +0 -40
- package/src/components/TopBar/TopBarBreadcrumbs.tsx +0 -79
- package/src/components/TopBar/TopBarSubNav.tsx +0 -19
- package/src/components/TopBar/TopBarSubNavItem.tsx +0 -21
- package/src/components/TopBar/index.css +0 -102
- package/src/components/TopBar/index.ts +0 -1
- package/src/components/VendorLogo/VendorLogo.story.mdx +0 -209
- package/src/components/VendorLogo/VendorLogo.tsx +0 -110
- package/src/components/VendorLogo/index.css +0 -46
- package/src/components/VendorLogo/index.ts +0 -1
- package/src/components/VisuallyHidden/VisuallyHidden.md +0 -23
- package/src/components/VisuallyHidden/VisuallyHidden.story.tsx +0 -19
- package/src/components/useStep/ExampleSetupWizard.tsx +0 -63
- package/src/components/useStep/useStep.story.mdx +0 -76
- package/src/docs/TailwindClasses.story.mdx +0 -15
- package/src/docs/brand-components/BrandButton.story.mdx +0 -103
- package/src/docs/brand-components/BrandCheckbox.story.mdx +0 -63
- package/src/docs/brand-components/BrandFormGroup.story.mdx +0 -76
- package/src/docs/brand-components/BrandInput.story.mdx +0 -41
- package/src/docs/brand-components/BrandRadio.story.mdx +0 -45
- package/src/docs/brand-components/BrandTextArea.story.mdx +0 -41
- package/src/recipes/TopBarNavigation.story.mdx +0 -114
- package/src/storybook-components/TailwindPropertyClasses.tsx +0 -285
- package/src/tailwind.config.ts +0 -6
- package/src/templates/Index.story.mdx +0 -177
- package/src/tokens/_tailwind-config.ts +0 -69
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
import React, {
|
|
2
|
+
ReactNode,
|
|
3
|
+
useRef,
|
|
4
|
+
useEffect,
|
|
5
|
+
createContext,
|
|
6
|
+
useContext,
|
|
7
|
+
Dispatch,
|
|
8
|
+
HTMLAttributes,
|
|
9
|
+
forwardRef,
|
|
10
|
+
ReactElement,
|
|
11
|
+
AnchorHTMLAttributes,
|
|
12
|
+
MouseEvent,
|
|
13
|
+
ChangeEvent,
|
|
14
|
+
InputHTMLAttributes,
|
|
15
|
+
cloneElement,
|
|
16
|
+
Children,
|
|
17
|
+
memo,
|
|
18
|
+
useMemo,
|
|
19
|
+
useReducer,
|
|
20
|
+
} from "react";
|
|
21
|
+
import mergeRefs from "react-merge-refs";
|
|
22
|
+
import classNames from "classnames";
|
|
23
|
+
import { bemHOF } from "../../utilities";
|
|
24
|
+
import { useIntersection, usePrefersReducedMotion } from "../../hooks";
|
|
25
|
+
import { ScrollSpyState, ScrollSpyAction } from "./types";
|
|
26
|
+
import { reducer, scrollSpyInitialState } from "./reducers";
|
|
27
|
+
import { selectCurrentIndex, selectCurrentPage } from "./selectors";
|
|
28
|
+
import { updateIndex } from "./actions";
|
|
29
|
+
|
|
30
|
+
const cn = bemHOF("ScrollSpy");
|
|
31
|
+
const DEFAULT_ID = "scroll-spy-1";
|
|
32
|
+
|
|
33
|
+
// ------------------------------------------------------------------
|
|
34
|
+
// ScrollSpy.StateContext
|
|
35
|
+
// ------------------------------------------------------------------
|
|
36
|
+
const initialContextState = {
|
|
37
|
+
state: scrollSpyInitialState,
|
|
38
|
+
dispatch: () => {},
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export const ScrollSpyStateContext = createContext<{
|
|
42
|
+
state: ScrollSpyState;
|
|
43
|
+
dispatch: Dispatch<ScrollSpyAction>;
|
|
44
|
+
}>(initialContextState);
|
|
45
|
+
|
|
46
|
+
export function useScrollSpyStateContext() {
|
|
47
|
+
const context = useContext(ScrollSpyStateContext) || {
|
|
48
|
+
...initialContextState,
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
return context;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// ------------------------------------------------------------------
|
|
55
|
+
// ScrollSpy.Context
|
|
56
|
+
// ------------------------------------------------------------------
|
|
57
|
+
type ScrollSpyContextType = {
|
|
58
|
+
id: string;
|
|
59
|
+
itemCount: number;
|
|
60
|
+
defaultIndex: number;
|
|
61
|
+
updateCurrentRef(index: number, refItem: HTMLElement): void;
|
|
62
|
+
scrollToRef(refToScrollTo: HTMLElement): void;
|
|
63
|
+
scrollToFirst(event: MouseEvent): void;
|
|
64
|
+
scrollToLast(event: MouseEvent): void;
|
|
65
|
+
scrollToPage(page: number): void;
|
|
66
|
+
skipToPage(page: number): void;
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
const defaultRootContext: ScrollSpyContextType = {
|
|
70
|
+
id: DEFAULT_ID,
|
|
71
|
+
itemCount: 1,
|
|
72
|
+
defaultIndex: 0,
|
|
73
|
+
updateCurrentRef: () => {},
|
|
74
|
+
scrollToRef: () => {},
|
|
75
|
+
scrollToFirst: () => {},
|
|
76
|
+
scrollToLast: () => {},
|
|
77
|
+
scrollToPage: () => {},
|
|
78
|
+
skipToPage: () => {},
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export const ScrollSpyContext = createContext<ScrollSpyContextType>(
|
|
82
|
+
defaultRootContext,
|
|
83
|
+
);
|
|
84
|
+
|
|
85
|
+
export function useScrollSpyContext() {
|
|
86
|
+
const context = useContext(ScrollSpyContext) || {
|
|
87
|
+
...defaultRootContext,
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
return context;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// ------------------------------------------------------------------
|
|
94
|
+
// ScrollSpy.Input
|
|
95
|
+
// ------------------------------------------------------------------
|
|
96
|
+
export type ScrollSpyInputUsePropsHookProps = {
|
|
97
|
+
className?: string;
|
|
98
|
+
onChange?(event: ChangeEvent<HTMLInputElement>): void;
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
export const useScrollSpyInputProps = ({
|
|
102
|
+
className,
|
|
103
|
+
onChange,
|
|
104
|
+
}: ScrollSpyInputUsePropsHookProps) => {
|
|
105
|
+
const { dispatch, state } = useScrollSpyStateContext();
|
|
106
|
+
const { itemCount, skipToPage } = useScrollSpyContext();
|
|
107
|
+
const currentPage = selectCurrentPage(state);
|
|
108
|
+
|
|
109
|
+
const onChangeHandler = (event: ChangeEvent<HTMLInputElement>) => {
|
|
110
|
+
event.preventDefault();
|
|
111
|
+
event.stopPropagation();
|
|
112
|
+
|
|
113
|
+
const pageNumber = parseInt(event.target.value, 10);
|
|
114
|
+
const index = pageNumber - 1;
|
|
115
|
+
|
|
116
|
+
dispatch(updateIndex(index));
|
|
117
|
+
|
|
118
|
+
if (pageNumber && pageNumber >= 1 && pageNumber <= itemCount) {
|
|
119
|
+
skipToPage(pageNumber);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
if (onChange) {
|
|
123
|
+
onChange(event);
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
return {
|
|
128
|
+
className: classNames(cn({ e: "input" }), className),
|
|
129
|
+
type: "number",
|
|
130
|
+
min: "1",
|
|
131
|
+
max: itemCount,
|
|
132
|
+
maxLength: itemCount.toString().split("").length,
|
|
133
|
+
onChange: onChangeHandler,
|
|
134
|
+
value: currentPage,
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
export type ScrollSpyInputProps = InputHTMLAttributes<HTMLInputElement>;
|
|
139
|
+
|
|
140
|
+
export const ScrollSpyInput = memo(
|
|
141
|
+
forwardRef<HTMLInputElement, ScrollSpyInputProps>(
|
|
142
|
+
({ className, ...rest }, forwardedRef) => {
|
|
143
|
+
const props = useScrollSpyInputProps({ className });
|
|
144
|
+
return <input ref={forwardedRef} {...props} {...rest} />;
|
|
145
|
+
},
|
|
146
|
+
),
|
|
147
|
+
);
|
|
148
|
+
|
|
149
|
+
// ------------------------------------------------------------------
|
|
150
|
+
// ScrollSpy.Page
|
|
151
|
+
// ------------------------------------------------------------------
|
|
152
|
+
export interface ScrollSpyPageProps extends HTMLAttributes<HTMLDivElement> {
|
|
153
|
+
children: ReactElement;
|
|
154
|
+
index: number;
|
|
155
|
+
threshold?: number | number[] | undefined;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
export type ScrollSpyPageUsePropsHookProps = {
|
|
159
|
+
index: number;
|
|
160
|
+
id?: string;
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
export const useScrollSpyPageProps = (
|
|
164
|
+
{ index, id }: ScrollSpyPageUsePropsHookProps = { index: 0 },
|
|
165
|
+
) => {
|
|
166
|
+
const { id: rootId } = useScrollSpyContext();
|
|
167
|
+
const pageId = `${rootId}-page-${index + 1}`;
|
|
168
|
+
return {
|
|
169
|
+
id: id || pageId,
|
|
170
|
+
};
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
export const ScrollSpyPage = memo(
|
|
174
|
+
forwardRef<HTMLDivElement, ScrollSpyPageProps>(
|
|
175
|
+
(
|
|
176
|
+
{ id: idProp, children, index, threshold = 0.5, ...rest },
|
|
177
|
+
forwardedRef,
|
|
178
|
+
) => {
|
|
179
|
+
const ref = useRef<HTMLDivElement>(null);
|
|
180
|
+
const combinedRef = mergeRefs<HTMLDivElement>([ref, forwardedRef]);
|
|
181
|
+
|
|
182
|
+
const isVisible = useIntersection(ref, {
|
|
183
|
+
threshold,
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
const { dispatch } = useScrollSpyStateContext();
|
|
187
|
+
const { updateCurrentRef } = useScrollSpyContext();
|
|
188
|
+
|
|
189
|
+
const { id } = useScrollSpyPageProps({ index, id: idProp });
|
|
190
|
+
|
|
191
|
+
useEffect(() => {
|
|
192
|
+
if (ref && ref.current) {
|
|
193
|
+
updateCurrentRef(index, ref.current);
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
useEffect(() => {
|
|
198
|
+
if (isVisible) {
|
|
199
|
+
dispatch(updateIndex(index));
|
|
200
|
+
}
|
|
201
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
202
|
+
}, [isVisible]);
|
|
203
|
+
|
|
204
|
+
return (
|
|
205
|
+
<>
|
|
206
|
+
{cloneElement(Children.only(children), {
|
|
207
|
+
...rest,
|
|
208
|
+
...children.props,
|
|
209
|
+
id,
|
|
210
|
+
ref: combinedRef,
|
|
211
|
+
})}
|
|
212
|
+
</>
|
|
213
|
+
);
|
|
214
|
+
},
|
|
215
|
+
),
|
|
216
|
+
);
|
|
217
|
+
|
|
218
|
+
// ------------------------------------------------------------------
|
|
219
|
+
// ScrollSpy.Anchor
|
|
220
|
+
// ------------------------------------------------------------------
|
|
221
|
+
export interface ScrollSpyAnchorProps
|
|
222
|
+
extends AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
223
|
+
children: ReactNode;
|
|
224
|
+
index: number;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
export type ScrollSpyAnchorUsePropsHookProps = {
|
|
228
|
+
index: number;
|
|
229
|
+
id?: string;
|
|
230
|
+
href?: string;
|
|
231
|
+
onClick?(event: MouseEvent<HTMLAnchorElement>): void;
|
|
232
|
+
};
|
|
233
|
+
|
|
234
|
+
export const useScrollSpyAnchorProps = (
|
|
235
|
+
{ index, id, href, onClick }: ScrollSpyAnchorUsePropsHookProps = { index: 0 },
|
|
236
|
+
) => {
|
|
237
|
+
const { id: rootId, scrollToPage } = useScrollSpyContext();
|
|
238
|
+
const { id: pageId } = useScrollSpyPageProps({ index });
|
|
239
|
+
const anchorId = `${rootId}-anchor-${index + 1}`;
|
|
240
|
+
const { state } = useScrollSpyStateContext();
|
|
241
|
+
const currentIndex = selectCurrentIndex(state);
|
|
242
|
+
|
|
243
|
+
const onClickHandler = (event: MouseEvent<HTMLAnchorElement>) => {
|
|
244
|
+
event.preventDefault();
|
|
245
|
+
event.stopPropagation();
|
|
246
|
+
|
|
247
|
+
scrollToPage(index + 1);
|
|
248
|
+
|
|
249
|
+
if (onClick) {
|
|
250
|
+
onClick(event);
|
|
251
|
+
}
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
return {
|
|
255
|
+
id: id || anchorId,
|
|
256
|
+
href: href || `#${pageId}`,
|
|
257
|
+
onClick: onClickHandler,
|
|
258
|
+
isActive: currentIndex === index,
|
|
259
|
+
};
|
|
260
|
+
};
|
|
261
|
+
|
|
262
|
+
export const ScrollSpyAnchor = memo(
|
|
263
|
+
forwardRef<HTMLAnchorElement, ScrollSpyAnchorProps>(
|
|
264
|
+
({ id, children, onClick, index = 0, ...rest }, forwardedRef) => {
|
|
265
|
+
const { isActive, ...anchorProps } = useScrollSpyAnchorProps({
|
|
266
|
+
index,
|
|
267
|
+
id,
|
|
268
|
+
onClick,
|
|
269
|
+
});
|
|
270
|
+
|
|
271
|
+
return (
|
|
272
|
+
<a ref={forwardedRef} {...anchorProps} {...rest}>
|
|
273
|
+
{children}
|
|
274
|
+
</a>
|
|
275
|
+
);
|
|
276
|
+
},
|
|
277
|
+
),
|
|
278
|
+
);
|
|
279
|
+
|
|
280
|
+
// ------------------------------------------------------------------
|
|
281
|
+
// ScrollSpy.Root
|
|
282
|
+
// ------------------------------------------------------------------
|
|
283
|
+
export type ScrollSpyRootProps = {
|
|
284
|
+
children: ReactNode;
|
|
285
|
+
itemCount: number;
|
|
286
|
+
defaultIndex?: number;
|
|
287
|
+
id?: string;
|
|
288
|
+
};
|
|
289
|
+
|
|
290
|
+
export const ScrollSpyRoot = memo(
|
|
291
|
+
({
|
|
292
|
+
children,
|
|
293
|
+
itemCount,
|
|
294
|
+
defaultIndex = 0,
|
|
295
|
+
id = DEFAULT_ID,
|
|
296
|
+
}: ScrollSpyRootProps) => {
|
|
297
|
+
const refList = useRef<HTMLElement[]>([]);
|
|
298
|
+
const prefersReducedMotion = usePrefersReducedMotion();
|
|
299
|
+
const scrollBehavior = prefersReducedMotion ? "auto" : "smooth";
|
|
300
|
+
|
|
301
|
+
useEffect(() => {
|
|
302
|
+
refList.current = refList.current.slice(0, itemCount);
|
|
303
|
+
}, [itemCount]);
|
|
304
|
+
|
|
305
|
+
const updateCurrentRef = (index: number, refItem: HTMLElement) => {
|
|
306
|
+
refList.current[index] = refItem;
|
|
307
|
+
};
|
|
308
|
+
|
|
309
|
+
const scrollToRef = (
|
|
310
|
+
refToScrollTo: HTMLElement,
|
|
311
|
+
behavior: "auto" | "smooth" = "smooth",
|
|
312
|
+
) => {
|
|
313
|
+
refToScrollTo.scrollIntoView({ behavior });
|
|
314
|
+
};
|
|
315
|
+
|
|
316
|
+
const scrollToFirst = (event: MouseEvent) => {
|
|
317
|
+
event.stopPropagation();
|
|
318
|
+
scrollToRef(refList.current[0], scrollBehavior);
|
|
319
|
+
};
|
|
320
|
+
|
|
321
|
+
const scrollToLast = (event: MouseEvent) => {
|
|
322
|
+
event.stopPropagation();
|
|
323
|
+
scrollToRef(refList.current[itemCount - 1], scrollBehavior);
|
|
324
|
+
};
|
|
325
|
+
|
|
326
|
+
const scrollToPage = (page: number) => {
|
|
327
|
+
const index = page - 1;
|
|
328
|
+
scrollToRef(refList.current[index], scrollBehavior);
|
|
329
|
+
};
|
|
330
|
+
|
|
331
|
+
const skipToPage = (page: number) => {
|
|
332
|
+
const index = page - 1;
|
|
333
|
+
scrollToRef(refList.current[index], "auto");
|
|
334
|
+
};
|
|
335
|
+
|
|
336
|
+
useEffect(() => {
|
|
337
|
+
const lastIndex = itemCount - 1;
|
|
338
|
+
if (defaultIndex > 0 && defaultIndex <= lastIndex) {
|
|
339
|
+
skipToPage(defaultIndex + 1);
|
|
340
|
+
}
|
|
341
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
342
|
+
}, [defaultIndex, itemCount]);
|
|
343
|
+
|
|
344
|
+
const context = useMemo(() => {
|
|
345
|
+
return {
|
|
346
|
+
id,
|
|
347
|
+
itemCount,
|
|
348
|
+
defaultIndex,
|
|
349
|
+
updateCurrentRef,
|
|
350
|
+
scrollToRef,
|
|
351
|
+
scrollToFirst,
|
|
352
|
+
scrollToLast,
|
|
353
|
+
scrollToPage,
|
|
354
|
+
skipToPage,
|
|
355
|
+
};
|
|
356
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
357
|
+
}, [id, itemCount, defaultIndex]);
|
|
358
|
+
|
|
359
|
+
return (
|
|
360
|
+
<ScrollSpyContext.Provider value={context}>
|
|
361
|
+
{children}
|
|
362
|
+
</ScrollSpyContext.Provider>
|
|
363
|
+
);
|
|
364
|
+
},
|
|
365
|
+
);
|
|
366
|
+
|
|
367
|
+
export const ScrollSpyStateProvider = ({
|
|
368
|
+
children,
|
|
369
|
+
}: {
|
|
370
|
+
children: ReactNode;
|
|
371
|
+
}) => {
|
|
372
|
+
const [state, dispatch] = useReducer(reducer, {
|
|
373
|
+
index: 0,
|
|
374
|
+
page: 1,
|
|
375
|
+
});
|
|
376
|
+
const value = useMemo(() => ({ state, dispatch }), [state]);
|
|
377
|
+
return (
|
|
378
|
+
<ScrollSpyStateContext.Provider value={value}>
|
|
379
|
+
{children}
|
|
380
|
+
</ScrollSpyStateContext.Provider>
|
|
381
|
+
);
|
|
382
|
+
};
|
|
383
|
+
|
|
384
|
+
export const ScrollSpyReducers = { reducer };
|
|
385
|
+
export const ScrollSpySelectors = { selectCurrentIndex, selectCurrentPage };
|
|
386
|
+
export const ScrollSpyActions = { updateIndex };
|
|
387
|
+
|
|
388
|
+
/**
|
|
389
|
+
* @TODO get types right and re-enable these exports
|
|
390
|
+
*/
|
|
391
|
+
// ------------------------------------------------------------------
|
|
392
|
+
// ScrollSpy
|
|
393
|
+
// ------------------------------------------------------------------
|
|
394
|
+
// export type ScrollSpyProps = ScrollSpyRootProps & {
|
|
395
|
+
// Root: ScrollSpyRootProps;
|
|
396
|
+
// Anchor: ScrollSpyAnchorProps;
|
|
397
|
+
// Page: ScrollSpyPageProps;
|
|
398
|
+
// };
|
|
399
|
+
|
|
400
|
+
// export const ScrollSpy = () => ({
|
|
401
|
+
// ...ScrollSpyRoot,
|
|
402
|
+
// ...{
|
|
403
|
+
// Root: ScrollSpyRoot,
|
|
404
|
+
// Anchor: ScrollSpyAnchor,
|
|
405
|
+
// Page: ScrollSpyPage,
|
|
406
|
+
// },
|
|
407
|
+
// });
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ScrollSpyState, ScrollSpyAction, ScrollSpyActionType } from "./types";
|
|
2
|
+
|
|
3
|
+
export const scrollSpyInitialState = {
|
|
4
|
+
index: 0,
|
|
5
|
+
page: 1,
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export const reducer = (
|
|
9
|
+
state: ScrollSpyState = scrollSpyInitialState,
|
|
10
|
+
action: ScrollSpyAction,
|
|
11
|
+
) => {
|
|
12
|
+
switch (action.type) {
|
|
13
|
+
case ScrollSpyActionType.UPDATE:
|
|
14
|
+
return state.index !== action.index
|
|
15
|
+
? {
|
|
16
|
+
...state,
|
|
17
|
+
index: action.index,
|
|
18
|
+
page: action.index + 1,
|
|
19
|
+
}
|
|
20
|
+
: state;
|
|
21
|
+
default:
|
|
22
|
+
return state;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useState } from "react";
|
|
1
|
+
import { useState, useRef } from "react";
|
|
2
2
|
import { Story, Preview, Props, Meta } from "@storybook/addon-docs/blocks";
|
|
3
3
|
import classNames from "classnames";
|
|
4
4
|
import { Box } from "../Box";
|
|
@@ -6,7 +6,6 @@ import { CloseButton } from "../CloseButton";
|
|
|
6
6
|
import { Flex } from "../Flex";
|
|
7
7
|
import { Icon, ICON_TYPE } from "../Icon";
|
|
8
8
|
import { Tag } from "../Tag";
|
|
9
|
-
import { IntegrationLogo } from "../IntegrationLogo";
|
|
10
9
|
import { Reference } from "../Reference";
|
|
11
10
|
import { Select } from "./Select";
|
|
12
11
|
import { SelectPopover } from "./SelectPopover";
|
|
@@ -43,7 +42,6 @@ export const ActionButton = () => (
|
|
|
43
42
|
"duration-200",
|
|
44
43
|
"hover:border-brandGreen-400",
|
|
45
44
|
"hover:text-brandGreen-400",
|
|
46
|
-
"focus:outline-none",
|
|
47
45
|
"border-brandGreen-400",
|
|
48
46
|
"text-brandGreen-400",
|
|
49
47
|
])}
|
|
@@ -164,6 +162,20 @@ native HTML select element.
|
|
|
164
162
|
</Story>
|
|
165
163
|
</Preview>
|
|
166
164
|
|
|
165
|
+
### With an options message
|
|
166
|
+
|
|
167
|
+
<Preview>
|
|
168
|
+
<Story name="With an options message">
|
|
169
|
+
<Container>
|
|
170
|
+
<Select
|
|
171
|
+
options={options}
|
|
172
|
+
optionsMessage="Search feeling cluttered? Manage options in your organization preferences."
|
|
173
|
+
menuInPortal
|
|
174
|
+
/>
|
|
175
|
+
</Container>
|
|
176
|
+
</Story>
|
|
177
|
+
</Preview>
|
|
178
|
+
|
|
167
179
|
### Creatable
|
|
168
180
|
|
|
169
181
|
<Preview>
|
|
@@ -465,8 +477,8 @@ See https://react-select.com/async for more info and examples.
|
|
|
465
477
|
|
|
466
478
|
### Select with custom option label and single value
|
|
467
479
|
|
|
468
|
-
In this example, we want to show
|
|
469
|
-
However, we don’t want the
|
|
480
|
+
In this example, we want to show an icon next to each option within the menulist.
|
|
481
|
+
However, we don’t want the icon to appear next to the selected value. This can be
|
|
470
482
|
accomplished by using `formatOptionLabel` to create the custom options and then
|
|
471
483
|
override the `SingleValue` component to only display the selected option’s label.
|
|
472
484
|
|
|
@@ -479,16 +491,16 @@ override the `SingleValue` component to only display the selected option’s lab
|
|
|
479
491
|
isClearable
|
|
480
492
|
options={[
|
|
481
493
|
{
|
|
482
|
-
label: "
|
|
483
|
-
value:
|
|
494
|
+
label: "Calculator",
|
|
495
|
+
value: ICON_TYPE.CALCULATOR,
|
|
484
496
|
},
|
|
485
497
|
{
|
|
486
|
-
label: "
|
|
487
|
-
value:
|
|
498
|
+
label: "Clipboard",
|
|
499
|
+
value: ICON_TYPE.CLIPBOARD,
|
|
488
500
|
},
|
|
489
501
|
{
|
|
490
|
-
label: "
|
|
491
|
-
value:
|
|
502
|
+
label: "Key",
|
|
503
|
+
value: ICON_TYPE.KEY,
|
|
492
504
|
},
|
|
493
505
|
]}
|
|
494
506
|
components={{
|
|
@@ -500,7 +512,7 @@ override the `SingleValue` component to only display the selected option’s lab
|
|
|
500
512
|
return (
|
|
501
513
|
<Box className="flex justify-between">
|
|
502
514
|
<Box>{label}</Box>
|
|
503
|
-
<
|
|
515
|
+
<Icon icon={value} />
|
|
504
516
|
</Box>
|
|
505
517
|
);
|
|
506
518
|
}}
|
|
@@ -597,3 +609,33 @@ override the `SingleValue` component to only display the selected option’s lab
|
|
|
597
609
|
}}
|
|
598
610
|
</Story>
|
|
599
611
|
</Preview>
|
|
612
|
+
|
|
613
|
+
### Programmatic focus/blur
|
|
614
|
+
|
|
615
|
+
Use the `selectRef` prop to pass a Ref object to the interal React Select component. This ref can be used to programmatically focus or blur the component (similar to the examples here: https://react-select.com/advanced#accessing-internals)
|
|
616
|
+
|
|
617
|
+
<Preview>
|
|
618
|
+
<Story name="Programmtic focus">
|
|
619
|
+
{() => {
|
|
620
|
+
const ref = useRef(null);
|
|
621
|
+
const focus = () => ref.current.focus();
|
|
622
|
+
const blur = () => ref.current.blur();
|
|
623
|
+
return (
|
|
624
|
+
<Container>
|
|
625
|
+
<Stack className="w-full">
|
|
626
|
+
<Select
|
|
627
|
+
className="flex-grow"
|
|
628
|
+
selectRef={ref}
|
|
629
|
+
options={options}
|
|
630
|
+
isClearable
|
|
631
|
+
openMenuOnFocus
|
|
632
|
+
menuInPortal
|
|
633
|
+
/>
|
|
634
|
+
<Button onClick={focus}>Focus</Button>
|
|
635
|
+
<Button onClick={blur}>Blur</Button>
|
|
636
|
+
</Stack>
|
|
637
|
+
</Container>
|
|
638
|
+
);
|
|
639
|
+
}}
|
|
640
|
+
</Story>
|
|
641
|
+
</Preview>
|