@telus-uds/components-base 1.65.0 → 1.67.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/CHANGELOG.md +22 -2
- package/lib/A11yInfoProvider/index.js +5 -20
- package/lib/A11yText/index.js +3 -17
- package/lib/ActivityIndicator/Spinner.js +2 -9
- package/lib/ActivityIndicator/Spinner.native.js +4 -27
- package/lib/ActivityIndicator/index.js +1 -13
- package/lib/ActivityIndicator/shared.js +0 -3
- package/lib/Autocomplete/Autocomplete.js +34 -85
- package/lib/Autocomplete/Loading.js +0 -10
- package/lib/Autocomplete/Suggestions.js +0 -11
- package/lib/Autocomplete/index.js +0 -3
- package/lib/BaseProvider/HydrationContext.js +4 -18
- package/lib/BaseProvider/index.js +0 -12
- package/lib/Box/Box.js +10 -35
- package/lib/Box/index.js +0 -3
- package/lib/Button/Button.js +4 -13
- package/lib/Button/ButtonBase.js +23 -55
- package/lib/Button/ButtonDropdown.js +7 -32
- package/lib/Button/ButtonGroup.js +15 -48
- package/lib/Button/ButtonLink.js +3 -17
- package/lib/Button/index.js +0 -5
- package/lib/Button/propTypes.js +0 -15
- package/lib/Card/Card.js +3 -14
- package/lib/Card/CardBase.js +5 -16
- package/lib/Card/PressableCardBase.js +7 -30
- package/lib/Card/index.js +0 -7
- package/lib/Carousel/Carousel.js +22 -115
- package/lib/Carousel/CarouselContext.js +0 -14
- package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +6 -18
- package/lib/Carousel/CarouselItem/CarouselItem.js +5 -20
- package/lib/Carousel/CarouselItem/index.js +0 -3
- package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -9
- package/lib/Carousel/CarouselStepTracker/index.js +0 -3
- package/lib/Carousel/CarouselTabs/CarouselTabs.js +5 -15
- package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +7 -16
- package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +2 -22
- package/lib/Carousel/CarouselTabs/index.js +0 -3
- package/lib/Carousel/CarouselThumbnail.js +1 -16
- package/lib/Carousel/CarouselThumbnailNavigation.js +0 -15
- package/lib/Carousel/index.js +0 -5
- package/lib/Checkbox/Checkbox.js +5 -44
- package/lib/Checkbox/CheckboxButton.js +7 -33
- package/lib/Checkbox/CheckboxGroup.js +5 -37
- package/lib/Checkbox/CheckboxInput.js +1 -11
- package/lib/Checkbox/CheckboxInput.native.js +0 -2
- package/lib/Checkbox/index.js +0 -4
- package/lib/CheckboxCard/CheckboxCard.js +4 -37
- package/lib/CheckboxCard/index.js +0 -3
- package/lib/CheckboxCardGroup/CheckboxCardGroup.js +215 -0
- package/lib/CheckboxCardGroup/index.js +10 -0
- package/lib/Divider/Divider.js +13 -24
- package/lib/Divider/index.js +0 -3
- package/lib/ExpandCollapse/Accordion.js +1 -9
- package/lib/ExpandCollapse/Control.js +10 -32
- package/lib/ExpandCollapse/ExpandCollapse.js +3 -19
- package/lib/ExpandCollapse/Panel.js +13 -38
- package/lib/ExpandCollapse/index.js +0 -5
- package/lib/Feedback/Feedback.js +13 -30
- package/lib/Feedback/index.js +0 -3
- package/lib/Fieldset/Fieldset.js +6 -37
- package/lib/Fieldset/FieldsetContainer.js +1 -10
- package/lib/Fieldset/FieldsetContainer.native.js +0 -8
- package/lib/Fieldset/Legend.js +1 -10
- package/lib/Fieldset/Legend.native.js +1 -13
- package/lib/Fieldset/index.js +0 -3
- package/lib/FlexGrid/Col/Col.js +10 -53
- package/lib/FlexGrid/Col/index.js +0 -3
- package/lib/FlexGrid/FlexGrid.js +3 -34
- package/lib/FlexGrid/Row/Row.js +0 -38
- package/lib/FlexGrid/Row/index.js +0 -3
- package/lib/FlexGrid/helpers/index.js +0 -4
- package/lib/FlexGrid/index.js +0 -3
- package/lib/FlexGrid/providers/GutterContext.js +0 -4
- package/lib/HorizontalScroll/HorizontalScroll.js +17 -45
- package/lib/HorizontalScroll/HorizontalScrollButton.js +1 -17
- package/lib/HorizontalScroll/ScrollViewEnd.js +5 -13
- package/lib/HorizontalScroll/ScrollViewEnd.native.js +1 -10
- package/lib/HorizontalScroll/index.js +0 -7
- package/lib/HorizontalScroll/itemPositions.js +8 -19
- package/lib/Icon/Icon.js +4 -17
- package/lib/Icon/IconText.js +5 -25
- package/lib/Icon/index.js +0 -6
- package/lib/IconButton/IconButton.js +5 -37
- package/lib/IconButton/index.js +0 -3
- package/lib/InputLabel/InputLabel.js +4 -28
- package/lib/InputLabel/LabelContent.js +2 -8
- package/lib/InputLabel/LabelContent.native.js +0 -8
- package/lib/InputLabel/index.js +0 -3
- package/lib/InputSupports/InputSupports.js +0 -21
- package/lib/InputSupports/index.js +0 -3
- package/lib/InputSupports/useInputSupports.js +2 -6
- package/lib/Link/ChevronLink.js +7 -18
- package/lib/Link/InlinePressable.js +0 -10
- package/lib/Link/InlinePressable.native.js +5 -18
- package/lib/Link/Link.js +0 -8
- package/lib/Link/LinkBase.js +17 -47
- package/lib/Link/TextButton.js +3 -16
- package/lib/Link/index.js +0 -5
- package/lib/List/List.js +5 -21
- package/lib/List/ListItem.js +1 -11
- package/lib/List/ListItemBase.js +5 -34
- package/lib/List/ListItemContent.js +1 -14
- package/lib/List/ListItemMark.js +3 -23
- package/lib/List/PressableListItemBase.js +2 -28
- package/lib/List/index.js +0 -4
- package/lib/Listbox/GroupControl.js +0 -14
- package/lib/Listbox/Listbox.js +15 -40
- package/lib/Listbox/ListboxContext.js +0 -7
- package/lib/Listbox/ListboxGroup.js +7 -19
- package/lib/Listbox/ListboxItem.js +3 -17
- package/lib/Listbox/ListboxOverlay.js +4 -20
- package/lib/Listbox/PressableItem.js +3 -18
- package/lib/Listbox/index.js +0 -3
- package/lib/Modal/Modal.js +94 -45
- package/lib/Modal/ModalContent.js +184 -0
- package/lib/Modal/index.js +0 -3
- package/lib/MultiSelectFilter/ModalOverlay.js +1 -20
- package/lib/MultiSelectFilter/MultiSelectFilter.js +20 -69
- package/lib/MultiSelectFilter/index.js +0 -3
- package/lib/Notification/Notification.js +11 -38
- package/lib/Notification/index.js +0 -3
- package/lib/Pagination/PageButton.js +2 -22
- package/lib/Pagination/Pagination.js +21 -42
- package/lib/Pagination/SideButton.js +0 -24
- package/lib/Pagination/index.js +0 -3
- package/lib/Pagination/usePagination.js +4 -9
- package/lib/Progress/Progress.js +3 -17
- package/lib/Progress/ProgressBar.js +3 -25
- package/lib/Progress/ProgressBarBackground.js +0 -12
- package/lib/Progress/index.js +0 -4
- package/lib/QuickLinks/QuickLinks.js +1 -18
- package/lib/QuickLinks/QuickLinksCard.js +1 -11
- package/lib/QuickLinks/QuickLinksItem.js +3 -17
- package/lib/QuickLinks/index.js +0 -4
- package/lib/QuickLinksFeature/QuickLinksFeature.js +3 -20
- package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +7 -30
- package/lib/QuickLinksFeature/index.js +0 -4
- package/lib/Radio/Radio.js +5 -39
- package/lib/Radio/RadioButton.js +7 -26
- package/lib/Radio/RadioGroup.js +6 -39
- package/lib/Radio/RadioInput.js +1 -11
- package/lib/Radio/RadioInput.native.js +0 -2
- package/lib/Radio/index.js +0 -4
- package/lib/RadioCard/RadioCard.js +5 -38
- package/lib/RadioCard/RadioCardGroup.js +7 -38
- package/lib/RadioCard/index.js +0 -4
- package/lib/Responsive/Responsive.js +1 -14
- package/lib/Responsive/index.js +0 -3
- package/lib/Search/Search.js +22 -45
- package/lib/Search/index.js +0 -3
- package/lib/Select/Group.js +0 -8
- package/lib/Select/Group.native.js +0 -6
- package/lib/Select/Item.js +0 -7
- package/lib/Select/Item.native.js +0 -2
- package/lib/Select/Picker.js +0 -8
- package/lib/Select/Picker.native.js +6 -22
- package/lib/Select/Select.js +9 -52
- package/lib/Select/index.js +0 -5
- package/lib/SideNav/Item.js +5 -29
- package/lib/SideNav/ItemContent.js +1 -14
- package/lib/SideNav/ItemsGroup.js +9 -31
- package/lib/SideNav/SideNav.js +9 -33
- package/lib/SideNav/index.js +0 -2
- package/lib/Skeleton/Skeleton.js +10 -42
- package/lib/Skeleton/index.js +0 -3
- package/lib/Skeleton/skeletonWebAnimation.js +0 -2
- package/lib/Skeleton/useSkeletonNativeAnimation.js +1 -9
- package/lib/SkipLink/SkipLink.js +7 -27
- package/lib/SkipLink/index.js +0 -3
- package/lib/Spacer/Spacer.js +4 -20
- package/lib/Spacer/index.js +0 -3
- package/lib/StackView/StackView.js +3 -21
- package/lib/StackView/StackWrap.js +11 -21
- package/lib/StackView/StackWrap.native.js +0 -3
- package/lib/StackView/StackWrapBox.js +5 -21
- package/lib/StackView/StackWrapGap.js +1 -14
- package/lib/StackView/common.js +0 -6
- package/lib/StackView/getStackedContent.js +10 -21
- package/lib/StackView/index.js +0 -5
- package/lib/StepTracker/Step.js +3 -27
- package/lib/StepTracker/StepTracker.js +5 -32
- package/lib/StepTracker/index.js +0 -3
- package/lib/Tabs/Tabs.js +7 -30
- package/lib/Tabs/TabsItem.js +13 -38
- package/lib/Tabs/index.js +0 -3
- package/lib/Tags/Tags.js +9 -42
- package/lib/Tags/index.js +0 -3
- package/lib/TextInput/TextArea.js +11 -20
- package/lib/TextInput/TextInput.js +7 -16
- package/lib/TextInput/TextInputBase.js +106 -69
- package/lib/TextInput/index.js +0 -3
- package/lib/TextInput/propTypes.js +4 -7
- package/lib/ThemeProvider/ThemeProvider.js +10 -18
- package/lib/ThemeProvider/index.js +0 -9
- package/lib/ThemeProvider/useSetTheme.js +6 -9
- package/lib/ThemeProvider/useTheme.js +2 -7
- package/lib/ThemeProvider/useThemeTokens.js +1 -9
- package/lib/ThemeProvider/utils/index.js +0 -4
- package/lib/ThemeProvider/utils/styles.js +14 -35
- package/lib/ThemeProvider/utils/theme-tokens.js +15 -43
- package/lib/Timeline/Timeline.js +11 -27
- package/lib/Timeline/index.js +0 -3
- package/lib/ToggleSwitch/ToggleSwitch.js +12 -43
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +4 -38
- package/lib/ToggleSwitch/index.js +0 -3
- package/lib/Tooltip/Backdrop.js +4 -11
- package/lib/Tooltip/Backdrop.native.js +1 -14
- package/lib/Tooltip/Tooltip.js +9 -37
- package/lib/Tooltip/Tooltip.native.js +14 -45
- package/lib/Tooltip/getTooltipPosition.js +26 -31
- package/lib/Tooltip/index.js +0 -5
- package/lib/Tooltip/shared.js +0 -10
- package/lib/TooltipButton/TooltipButton.js +5 -20
- package/lib/TooltipButton/index.js +0 -3
- package/lib/Typography/Typography.js +15 -38
- package/lib/Typography/index.js +0 -3
- package/lib/Validator/Validator.js +10 -58
- package/lib/Validator/index.js +0 -3
- package/lib/ViewportProvider/ViewportProvider.js +1 -13
- package/lib/ViewportProvider/index.js +0 -5
- package/lib/ViewportProvider/useViewport.js +0 -4
- package/lib/ViewportProvider/useViewportListener.js +3 -12
- package/lib/index.js +8 -71
- package/lib/utils/BaseView/BaseView.js +3 -17
- package/lib/utils/BaseView/BaseView.native.js +0 -3
- package/lib/utils/BaseView/index.js +0 -3
- package/lib/utils/a11y/index.js +0 -4
- package/lib/utils/a11y/semantics.js +14 -32
- package/lib/utils/a11y/textSize.js +1 -8
- package/lib/utils/animation/index.js +0 -2
- package/lib/utils/animation/useVerticalExpandAnimation.js +5 -18
- package/lib/utils/children.js +16 -28
- package/lib/utils/containUniqueFields.js +2 -5
- package/lib/utils/floating-ui/index.js +0 -1
- package/lib/utils/floating-ui/index.native.js +0 -1
- package/lib/utils/hasOwnProperty.js +0 -1
- package/lib/utils/htmlAttrs.js +2 -4
- package/lib/utils/index.js +0 -31
- package/lib/utils/info/index.js +0 -4
- package/lib/utils/info/platform/index.js +0 -4
- package/lib/utils/info/versions.js +0 -3
- package/lib/utils/input.js +12 -24
- package/lib/utils/pressability.js +7 -21
- package/lib/utils/props/a11yProps.js +19 -25
- package/lib/utils/props/clickProps.js +0 -4
- package/lib/utils/props/componentPropType.js +0 -14
- package/lib/utils/props/copyPropTypes.js +0 -4
- package/lib/utils/props/getPropSelector.js +11 -12
- package/lib/utils/props/handlerProps.js +2 -23
- package/lib/utils/props/hrefAttrsProp.js +0 -4
- package/lib/utils/props/index.js +0 -22
- package/lib/utils/props/inputSupportsProps.js +0 -9
- package/lib/utils/props/linkProps.js +2 -12
- package/lib/utils/props/paddingProp.js +0 -3
- package/lib/utils/props/pressProps.js +2 -8
- package/lib/utils/props/rectProp.js +0 -3
- package/lib/utils/props/responsiveProps.js +1 -5
- package/lib/utils/props/selectSystemProps.js +4 -6
- package/lib/utils/props/spacingProps.js +3 -10
- package/lib/utils/props/textInputProps.js +11 -31
- package/lib/utils/props/textProps.js +6 -11
- package/lib/utils/props/tokens.js +7 -26
- package/lib/utils/props/variantProp.js +0 -3
- package/lib/utils/props/viewProps.js +0 -5
- package/lib/utils/ssr.js +13 -33
- package/lib/utils/useCopy.js +3 -6
- package/lib/utils/useHash.js +5 -10
- package/lib/utils/useHash.native.js +0 -2
- package/lib/utils/useOverlaidPosition.js +6 -29
- package/lib/utils/useResponsiveProp.js +6 -13
- package/lib/utils/useSafeLayoutEffect.js +5 -10
- package/lib/utils/useScrollBlocking.js +3 -11
- package/lib/utils/useScrollBlocking.native.js +0 -2
- package/lib/utils/useSpacingScale.js +5 -8
- package/lib/utils/useUniqueId.js +0 -4
- package/lib/utils/withLinkRouter.js +13 -18
- package/lib-module/A11yInfoProvider/index.js +5 -9
- package/lib-module/A11yText/index.js +3 -4
- package/lib-module/ActivityIndicator/Spinner.js +2 -2
- package/lib-module/ActivityIndicator/Spinner.native.js +4 -6
- package/lib-module/ActivityIndicator/index.js +1 -5
- package/lib-module/ActivityIndicator/shared.js +2 -1
- package/lib-module/Autocomplete/Autocomplete.js +34 -59
- package/lib-module/Autocomplete/Loading.js +0 -2
- package/lib-module/BaseProvider/HydrationContext.js +4 -7
- package/lib-module/BaseProvider/index.js +0 -3
- package/lib-module/Box/Box.js +10 -24
- package/lib-module/Button/Button.js +4 -2
- package/lib-module/Button/ButtonBase.js +23 -35
- package/lib-module/Button/ButtonDropdown.js +7 -16
- package/lib-module/Button/ButtonGroup.js +15 -32
- package/lib-module/Button/ButtonLink.js +3 -2
- package/lib-module/Button/propTypes.js +0 -7
- package/lib-module/Card/Card.js +3 -2
- package/lib-module/Card/CardBase.js +5 -4
- package/lib-module/Card/PressableCardBase.js +7 -11
- package/lib-module/Carousel/Carousel.js +22 -60
- package/lib-module/Carousel/CarouselContext.js +0 -5
- package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +7 -5
- package/lib-module/Carousel/CarouselItem/CarouselItem.js +5 -11
- package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -2
- package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +3 -4
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +7 -6
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +2 -10
- package/lib-module/Carousel/CarouselThumbnail.js +1 -7
- package/lib-module/Carousel/CarouselThumbnailNavigation.js +0 -2
- package/lib-module/Checkbox/Checkbox.js +5 -23
- package/lib-module/Checkbox/CheckboxButton.js +7 -17
- package/lib-module/Checkbox/CheckboxGroup.js +5 -23
- package/lib-module/Checkbox/CheckboxInput.js +1 -3
- package/lib-module/Checkbox/CheckboxInput.native.js +0 -1
- package/lib-module/CheckboxCard/CheckboxCard.js +4 -21
- package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +205 -0
- package/lib-module/CheckboxCardGroup/index.js +2 -0
- package/lib-module/Divider/Divider.js +13 -11
- package/lib-module/ExpandCollapse/Accordion.js +1 -1
- package/lib-module/ExpandCollapse/Control.js +10 -17
- package/lib-module/ExpandCollapse/ExpandCollapse.js +3 -9
- package/lib-module/ExpandCollapse/Panel.js +13 -23
- package/lib-module/Feedback/Feedback.js +13 -16
- package/lib-module/Fieldset/Fieldset.js +6 -25
- package/lib-module/Fieldset/FieldsetContainer.js +1 -1
- package/lib-module/Fieldset/FieldsetContainer.native.js +0 -1
- package/lib-module/Fieldset/Legend.js +1 -1
- package/lib-module/Fieldset/Legend.native.js +1 -1
- package/lib-module/FlexGrid/Col/Col.js +10 -37
- package/lib-module/FlexGrid/FlexGrid.js +3 -17
- package/lib-module/FlexGrid/Row/Row.js +0 -25
- package/lib-module/FlexGrid/helpers/index.js +0 -3
- package/lib-module/HorizontalScroll/HorizontalScroll.js +17 -27
- package/lib-module/HorizontalScroll/HorizontalScrollButton.js +1 -3
- package/lib-module/HorizontalScroll/ScrollViewEnd.js +5 -4
- package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -1
- package/lib-module/HorizontalScroll/itemPositions.js +11 -10
- package/lib-module/Icon/Icon.js +4 -8
- package/lib-module/Icon/IconText.js +6 -17
- package/lib-module/IconButton/IconButton.js +7 -20
- package/lib-module/InputLabel/InputLabel.js +4 -13
- package/lib-module/InputLabel/LabelContent.js +2 -1
- package/lib-module/InputLabel/LabelContent.native.js +0 -1
- package/lib-module/InputSupports/InputSupports.js +0 -9
- package/lib-module/InputSupports/useInputSupports.js +2 -4
- package/lib-module/Link/ChevronLink.js +7 -7
- package/lib-module/Link/InlinePressable.js +0 -2
- package/lib-module/Link/InlinePressable.native.js +4 -12
- package/lib-module/Link/LinkBase.js +17 -25
- package/lib-module/Link/TextButton.js +3 -5
- package/lib-module/List/List.js +5 -9
- package/lib-module/List/ListItem.js +1 -1
- package/lib-module/List/ListItemBase.js +5 -17
- package/lib-module/List/ListItemContent.js +1 -4
- package/lib-module/List/ListItemMark.js +3 -16
- package/lib-module/List/PressableListItemBase.js +2 -6
- package/lib-module/Listbox/GroupControl.js +0 -2
- package/lib-module/Listbox/Listbox.js +15 -23
- package/lib-module/Listbox/ListboxContext.js +0 -2
- package/lib-module/Listbox/ListboxGroup.js +6 -4
- package/lib-module/Listbox/ListboxItem.js +2 -1
- package/lib-module/Listbox/ListboxOverlay.js +3 -4
- package/lib-module/Listbox/PressableItem.js +2 -7
- package/lib-module/Modal/Modal.js +94 -25
- package/lib-module/Modal/ModalContent.js +175 -0
- package/lib-module/MultiSelectFilter/ModalOverlay.js +1 -4
- package/lib-module/MultiSelectFilter/MultiSelectFilter.js +20 -42
- package/lib-module/Notification/Notification.js +11 -22
- package/lib-module/Pagination/PageButton.js +2 -6
- package/lib-module/Pagination/Pagination.js +21 -21
- package/lib-module/Pagination/SideButton.js +3 -8
- package/lib-module/Pagination/usePagination.js +4 -8
- package/lib-module/Progress/Progress.js +3 -7
- package/lib-module/Progress/ProgressBar.js +3 -11
- package/lib-module/Progress/ProgressBarBackground.js +0 -2
- package/lib-module/QuickLinks/QuickLinks.js +1 -6
- package/lib-module/QuickLinks/QuickLinksCard.js +1 -3
- package/lib-module/QuickLinks/QuickLinksItem.js +3 -2
- package/lib-module/QuickLinksFeature/QuickLinksFeature.js +5 -9
- package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +9 -13
- package/lib-module/Radio/Radio.js +5 -22
- package/lib-module/Radio/RadioButton.js +8 -10
- package/lib-module/Radio/RadioGroup.js +6 -25
- package/lib-module/Radio/RadioInput.js +1 -3
- package/lib-module/Radio/RadioInput.native.js +0 -1
- package/lib-module/RadioCard/RadioCard.js +5 -21
- package/lib-module/RadioCard/RadioCardGroup.js +7 -25
- package/lib-module/Responsive/Responsive.js +1 -6
- package/lib-module/Search/Search.js +22 -31
- package/lib-module/Select/Group.js +0 -3
- package/lib-module/Select/Group.native.js +0 -3
- package/lib-module/Select/Item.js +0 -3
- package/lib-module/Select/Item.native.js +0 -1
- package/lib-module/Select/Picker.native.js +8 -10
- package/lib-module/Select/Select.js +10 -35
- package/lib-module/SideNav/Item.js +5 -16
- package/lib-module/SideNav/ItemContent.js +1 -2
- package/lib-module/SideNav/ItemsGroup.js +9 -19
- package/lib-module/SideNav/SideNav.js +9 -22
- package/lib-module/Skeleton/Skeleton.js +10 -25
- package/lib-module/Skeleton/skeletonWebAnimation.js +0 -1
- package/lib-module/Skeleton/useSkeletonNativeAnimation.js +1 -3
- package/lib-module/SkipLink/SkipLink.js +7 -9
- package/lib-module/Spacer/Spacer.js +4 -7
- package/lib-module/StackView/StackView.js +3 -7
- package/lib-module/StackView/StackWrap.js +13 -13
- package/lib-module/StackView/StackWrap.native.js +2 -1
- package/lib-module/StackView/StackWrapBox.js +5 -8
- package/lib-module/StackView/StackWrapGap.js +1 -1
- package/lib-module/StackView/getStackedContent.js +10 -10
- package/lib-module/StepTracker/Step.js +3 -14
- package/lib-module/StepTracker/StepTracker.js +5 -13
- package/lib-module/Tabs/Tabs.js +7 -16
- package/lib-module/Tabs/TabsItem.js +13 -16
- package/lib-module/Tags/Tags.js +9 -26
- package/lib-module/TextInput/TextArea.js +11 -8
- package/lib-module/TextInput/TextInput.js +7 -5
- package/lib-module/TextInput/TextInputBase.js +107 -51
- package/lib-module/TextInput/propTypes.js +7 -6
- package/lib-module/ThemeProvider/ThemeProvider.js +10 -9
- package/lib-module/ThemeProvider/useSetTheme.js +6 -7
- package/lib-module/ThemeProvider/useTheme.js +2 -5
- package/lib-module/ThemeProvider/useThemeTokens.js +1 -2
- package/lib-module/ThemeProvider/utils/styles.js +15 -27
- package/lib-module/ThemeProvider/utils/theme-tokens.js +15 -20
- package/lib-module/Timeline/Timeline.js +11 -17
- package/lib-module/ToggleSwitch/ToggleSwitch.js +13 -26
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +4 -23
- package/lib-module/Tooltip/Backdrop.js +4 -7
- package/lib-module/Tooltip/Backdrop.native.js +1 -4
- package/lib-module/Tooltip/Tooltip.js +9 -18
- package/lib-module/Tooltip/Tooltip.native.js +14 -23
- package/lib-module/Tooltip/getTooltipPosition.js +26 -30
- package/lib-module/Tooltip/shared.js +0 -6
- package/lib-module/TooltipButton/TooltipButton.js +5 -8
- package/lib-module/Typography/Typography.js +14 -22
- package/lib-module/Validator/Validator.js +10 -42
- package/lib-module/ViewportProvider/ViewportProvider.js +1 -3
- package/lib-module/ViewportProvider/useViewportListener.js +6 -8
- package/lib-module/index.js +1 -0
- package/lib-module/utils/BaseView/BaseView.js +3 -4
- package/lib-module/utils/BaseView/BaseView.native.js +0 -1
- package/lib-module/utils/a11y/semantics.js +14 -27
- package/lib-module/utils/a11y/textSize.js +1 -2
- package/lib-module/utils/animation/useVerticalExpandAnimation.js +8 -11
- package/lib-module/utils/children.js +17 -19
- package/lib-module/utils/containUniqueFields.js +2 -4
- package/lib-module/utils/htmlAttrs.js +2 -1
- package/lib-module/utils/info/index.js +2 -1
- package/lib-module/utils/info/platform/index.js +4 -1
- package/lib-module/utils/info/versions.js +2 -1
- package/lib-module/utils/input.js +11 -19
- package/lib-module/utils/pressability.js +8 -7
- package/lib-module/utils/props/a11yProps.js +22 -20
- package/lib-module/utils/props/clickProps.js +0 -1
- package/lib-module/utils/props/componentPropType.js +0 -13
- package/lib-module/utils/props/getPropSelector.js +12 -8
- package/lib-module/utils/props/handlerProps.js +2 -19
- package/lib-module/utils/props/hrefAttrsProp.js +2 -2
- package/lib-module/utils/props/inputSupportsProps.js +0 -6
- package/lib-module/utils/props/linkProps.js +2 -3
- package/lib-module/utils/props/pressProps.js +2 -2
- package/lib-module/utils/props/responsiveProps.js +1 -3
- package/lib-module/utils/props/selectSystemProps.js +4 -5
- package/lib-module/utils/props/spacingProps.js +4 -3
- package/lib-module/utils/props/textInputProps.js +14 -27
- package/lib-module/utils/props/textProps.js +9 -7
- package/lib-module/utils/props/tokens.js +10 -13
- package/lib-module/utils/props/variantProp.js +1 -1
- package/lib-module/utils/props/viewProps.js +0 -1
- package/lib-module/utils/ssr.js +14 -18
- package/lib-module/utils/useCopy.js +3 -5
- package/lib-module/utils/useHash.js +5 -9
- package/lib-module/utils/useHash.native.js +0 -1
- package/lib-module/utils/useOverlaidPosition.js +6 -25
- package/lib-module/utils/useResponsiveProp.js +6 -7
- package/lib-module/utils/useSafeLayoutEffect.js +5 -7
- package/lib-module/utils/useScrollBlocking.js +3 -10
- package/lib-module/utils/useSpacingScale.js +4 -4
- package/lib-module/utils/useUniqueId.js +0 -2
- package/lib-module/utils/withLinkRouter.js +13 -10
- package/package.json +2 -2
- package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +230 -0
- package/src/CheckboxCardGroup/index.js +3 -0
- package/src/Modal/Modal.jsx +98 -5
- package/src/Modal/ModalContent.jsx +171 -0
- package/src/TextInput/TextInputBase.jsx +67 -12
- package/src/TextInput/propTypes.js +4 -0
- package/src/index.js +1 -0
- package/src/utils/props/textInputProps.js +1 -0
package/lib/List/ListItemMark.js
CHANGED
|
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.tokenTypes = exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
-
|
|
14
10
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
15
|
-
|
|
16
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
-
|
|
18
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
13
|
const tokenTypes = {
|
|
21
14
|
itemIconSize: _propTypes.default.number.isRequired,
|
|
22
15
|
itemIconColor: _propTypes.default.string.isRequired,
|
|
@@ -24,7 +17,6 @@ const tokenTypes = {
|
|
|
24
17
|
iconMarginTop: _propTypes.default.number.isRequired
|
|
25
18
|
};
|
|
26
19
|
exports.tokenTypes = tokenTypes;
|
|
27
|
-
|
|
28
20
|
const selectItemIconTokens = _ref => {
|
|
29
21
|
let {
|
|
30
22
|
itemIconSize,
|
|
@@ -35,7 +27,6 @@ const selectItemIconTokens = _ref => {
|
|
|
35
27
|
color: itemIconColor
|
|
36
28
|
};
|
|
37
29
|
};
|
|
38
|
-
|
|
39
30
|
const selectSideItemContainerStyles = _ref2 => {
|
|
40
31
|
let {
|
|
41
32
|
listGutter,
|
|
@@ -45,9 +36,9 @@ const selectSideItemContainerStyles = _ref2 => {
|
|
|
45
36
|
marginTop: iconMarginTop,
|
|
46
37
|
marginRight: listGutter
|
|
47
38
|
};
|
|
48
|
-
};
|
|
49
|
-
|
|
39
|
+
};
|
|
50
40
|
|
|
41
|
+
// Align bullets with the top line of text the same way icons are aligned
|
|
51
42
|
const selectBulletPositioningStyles = _ref3 => {
|
|
52
43
|
let {
|
|
53
44
|
itemIconSize
|
|
@@ -57,7 +48,6 @@ const selectBulletPositioningStyles = _ref3 => {
|
|
|
57
48
|
height: itemIconSize
|
|
58
49
|
};
|
|
59
50
|
};
|
|
60
|
-
|
|
61
51
|
const selectBulletStyles = _ref4 => {
|
|
62
52
|
let {
|
|
63
53
|
itemBulletWidth,
|
|
@@ -71,7 +61,6 @@ const selectBulletStyles = _ref4 => {
|
|
|
71
61
|
backgroundColor: itemBulletColor
|
|
72
62
|
};
|
|
73
63
|
};
|
|
74
|
-
|
|
75
64
|
const selectBulletContainerStyles = _ref5 => {
|
|
76
65
|
let {
|
|
77
66
|
itemBulletContainerWidth,
|
|
@@ -82,6 +71,7 @@ const selectBulletContainerStyles = _ref5 => {
|
|
|
82
71
|
alignItems: itemBulletContainerAlign
|
|
83
72
|
};
|
|
84
73
|
};
|
|
74
|
+
|
|
85
75
|
/**
|
|
86
76
|
* Subcomponent used within ListItem and similar components for rendering bullets or icons
|
|
87
77
|
* that sit alongside a ListIconContent in a { flexDirection: row } container.
|
|
@@ -89,8 +79,6 @@ const selectBulletContainerStyles = _ref5 => {
|
|
|
89
79
|
* It's the responsibility of themes to make sure that the supplied tokens align the
|
|
90
80
|
* icon or bullet nicely against the first line of text in a ListIconContent.
|
|
91
81
|
*/
|
|
92
|
-
|
|
93
|
-
|
|
94
82
|
const ListItemMark = _ref6 => {
|
|
95
83
|
let {
|
|
96
84
|
icon,
|
|
@@ -101,7 +89,6 @@ const ListItemMark = _ref6 => {
|
|
|
101
89
|
const IconComponent = icon || /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {});
|
|
102
90
|
const themeTokens = typeof tokens === 'function' ? tokens() : tokens;
|
|
103
91
|
const sideItemContainerStyles = selectSideItemContainerStyles(themeTokens);
|
|
104
|
-
|
|
105
92
|
if (icon) {
|
|
106
93
|
const iconTokens = selectItemIconTokens(themeTokens);
|
|
107
94
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
@@ -112,7 +99,6 @@ const ListItemMark = _ref6 => {
|
|
|
112
99
|
})
|
|
113
100
|
});
|
|
114
101
|
}
|
|
115
|
-
|
|
116
102
|
const itemBulletContainerStyles = selectBulletContainerStyles(themeTokens);
|
|
117
103
|
const itemBulletStyles = selectBulletStyles(themeTokens);
|
|
118
104
|
const itemBulletPositioningStyles = selectBulletPositioningStyles(themeTokens);
|
|
@@ -127,32 +113,26 @@ const ListItemMark = _ref6 => {
|
|
|
127
113
|
})
|
|
128
114
|
});
|
|
129
115
|
};
|
|
130
|
-
|
|
131
116
|
ListItemMark.propTypes = {
|
|
132
117
|
tokens: _propTypes.default.shape(tokenTypes).isRequired,
|
|
133
|
-
|
|
134
118
|
/**
|
|
135
119
|
* Renders side item icon
|
|
136
120
|
*/
|
|
137
121
|
icon: _propTypes.default.elementType,
|
|
138
|
-
|
|
139
122
|
/**
|
|
140
123
|
* Will set display icon color
|
|
141
124
|
*/
|
|
142
125
|
iconColor: _propTypes.default.string,
|
|
143
|
-
|
|
144
126
|
/**
|
|
145
127
|
* Allow the user define the icon size
|
|
146
128
|
*/
|
|
147
129
|
iconSize: _propTypes.default.number
|
|
148
130
|
};
|
|
149
|
-
|
|
150
131
|
const staticStyles = _StyleSheet.default.create({
|
|
151
132
|
bulletPositioning: {
|
|
152
133
|
alignItems: 'center',
|
|
153
134
|
justifyContent: 'center'
|
|
154
135
|
}
|
|
155
136
|
});
|
|
156
|
-
|
|
157
137
|
var _default = ListItemMark;
|
|
158
138
|
exports.default = _default;
|
|
@@ -4,35 +4,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _airbnbPropTypes = _interopRequireDefault(require("airbnb-prop-types"));
|
|
13
|
-
|
|
14
10
|
var _Pressable = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Pressable"));
|
|
15
|
-
|
|
16
11
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
17
|
-
|
|
18
12
|
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
19
|
-
|
|
20
13
|
var _utils = require("../utils");
|
|
21
|
-
|
|
22
14
|
var _ListItemBase = _interopRequireDefault(require("./ListItemBase"));
|
|
23
|
-
|
|
24
15
|
var _ListItemContent = _interopRequireDefault(require("./ListItemContent"));
|
|
25
|
-
|
|
26
16
|
var _ListItemMark = _interopRequireDefault(require("./ListItemMark"));
|
|
27
|
-
|
|
28
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
29
|
-
|
|
30
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
|
-
|
|
32
19
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
33
|
-
|
|
34
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
35
|
-
|
|
36
21
|
const selectPressableStyles = _ref => {
|
|
37
22
|
let {
|
|
38
23
|
backgroundColor,
|
|
@@ -58,7 +43,6 @@ const selectPressableStyles = _ref => {
|
|
|
58
43
|
})
|
|
59
44
|
};
|
|
60
45
|
};
|
|
61
|
-
|
|
62
46
|
const PressableListItemBase = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
63
47
|
let {
|
|
64
48
|
href,
|
|
@@ -68,22 +52,18 @@ const PressableListItemBase = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) =
|
|
|
68
52
|
listItemRef,
|
|
69
53
|
...rest
|
|
70
54
|
} = _ref2;
|
|
71
|
-
|
|
72
55
|
const {
|
|
73
56
|
onPress,
|
|
74
57
|
...props
|
|
75
58
|
} = _utils.clickProps.toPressProps(rest);
|
|
76
|
-
|
|
77
59
|
const {
|
|
78
60
|
hrefAttrs,
|
|
79
61
|
rest: listItemProps
|
|
80
62
|
} = _utils.hrefAttrsProp.bundle(props);
|
|
81
|
-
|
|
82
63
|
const handlePress = _utils.linkProps.handleHref({
|
|
83
64
|
href,
|
|
84
65
|
onPress
|
|
85
66
|
});
|
|
86
|
-
|
|
87
67
|
const listItemTokens = (0, _utils.selectTokens)('List', typeof tokens === 'function' ? tokens() : tokens);
|
|
88
68
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItemBase.default, {
|
|
89
69
|
ref: listItemRef,
|
|
@@ -93,13 +73,10 @@ const PressableListItemBase = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) =
|
|
|
93
73
|
let {
|
|
94
74
|
isLastItem
|
|
95
75
|
} = _ref3;
|
|
96
|
-
|
|
97
76
|
const getTokens = pressableState => (0, _utils.resolvePressableTokens)(tokens, pressableState, {
|
|
98
77
|
last: isLastItem
|
|
99
78
|
});
|
|
100
|
-
|
|
101
79
|
const getPressableStyle = pressableState => [staticStyles.itemContainer, selectPressableStyles(getTokens(pressableState))];
|
|
102
|
-
|
|
103
80
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Pressable.default, {
|
|
104
81
|
onPress: handlePress,
|
|
105
82
|
href: href,
|
|
@@ -123,15 +100,14 @@ const PressableListItemBase = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) =
|
|
|
123
100
|
});
|
|
124
101
|
});
|
|
125
102
|
PressableListItemBase.displayName = 'PressableListItemBase';
|
|
126
|
-
|
|
127
103
|
const staticStyles = _StyleSheet.default.create({
|
|
128
104
|
itemContainer: {
|
|
129
105
|
flexDirection: 'row',
|
|
130
106
|
flex: 1
|
|
131
107
|
}
|
|
132
108
|
});
|
|
133
|
-
|
|
134
|
-
|
|
109
|
+
PressableListItemBase.propTypes = {
|
|
110
|
+
..._utils.withLinkRouter.propTypes,
|
|
135
111
|
href: _propTypes.default.string,
|
|
136
112
|
onPress: _propTypes.default.func,
|
|
137
113
|
// eslint-disable-next-line react/forbid-prop-types
|
|
@@ -140,7 +116,5 @@ PressableListItemBase.propTypes = { ..._utils.withLinkRouter.propTypes,
|
|
|
140
116
|
children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
141
117
|
listItemRef: _airbnbPropTypes.default.ref()
|
|
142
118
|
};
|
|
143
|
-
|
|
144
119
|
var _default = (0, _utils.withLinkRouter)(PressableListItemBase);
|
|
145
|
-
|
|
146
120
|
exports.default = _default;
|
package/lib/List/index.js
CHANGED
|
@@ -16,13 +16,9 @@ Object.defineProperty(exports, "ListItem", {
|
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
18
|
exports.default = void 0;
|
|
19
|
-
|
|
20
19
|
var _List = _interopRequireDefault(require("./List"));
|
|
21
|
-
|
|
22
20
|
var _ListItem = _interopRequireDefault(require("./ListItem"));
|
|
23
|
-
|
|
24
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
22
|
_List.default.Item = _ListItem.default;
|
|
27
23
|
var _default = _List.default;
|
|
28
24
|
exports.default = _default;
|
|
@@ -4,29 +4,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
-
|
|
14
10
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
15
|
-
|
|
16
11
|
var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
|
|
17
|
-
|
|
18
12
|
var _ThemeProvider = require("../ThemeProvider");
|
|
19
|
-
|
|
20
13
|
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
21
|
-
|
|
22
14
|
var _Spacer = _interopRequireDefault(require("../Spacer"));
|
|
23
|
-
|
|
24
15
|
var _ListboxContext = require("./ListboxContext");
|
|
25
|
-
|
|
26
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
27
|
-
|
|
28
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
-
|
|
30
18
|
const styles = _StyleSheet.default.create({
|
|
31
19
|
controlWrapper: {
|
|
32
20
|
width: '100%',
|
|
@@ -37,7 +25,6 @@ const styles = _StyleSheet.default.create({
|
|
|
37
25
|
boxSizing: 'border-box'
|
|
38
26
|
}
|
|
39
27
|
});
|
|
40
|
-
|
|
41
28
|
const GroupControl = _ref => {
|
|
42
29
|
let {
|
|
43
30
|
expanded,
|
|
@@ -108,7 +95,6 @@ const GroupControl = _ref => {
|
|
|
108
95
|
})]
|
|
109
96
|
});
|
|
110
97
|
};
|
|
111
|
-
|
|
112
98
|
GroupControl.propTypes = {
|
|
113
99
|
id: _propTypes.default.string,
|
|
114
100
|
expanded: _propTypes.default.bool,
|
package/lib/Listbox/Listbox.js
CHANGED
|
@@ -4,48 +4,29 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
-
|
|
14
10
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
15
|
-
|
|
16
11
|
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
17
|
-
|
|
18
12
|
var _ThemeProvider = require("../ThemeProvider");
|
|
19
|
-
|
|
20
13
|
var _utils = require("../utils");
|
|
21
|
-
|
|
22
14
|
var _ExpandCollapse = _interopRequireDefault(require("../ExpandCollapse"));
|
|
23
|
-
|
|
24
15
|
var _ListboxGroup = _interopRequireDefault(require("./ListboxGroup"));
|
|
25
|
-
|
|
26
16
|
var _ListboxItem = _interopRequireDefault(require("./ListboxItem"));
|
|
27
|
-
|
|
28
17
|
var _ListboxContext = require("./ListboxContext");
|
|
29
|
-
|
|
30
18
|
var _ListboxOverlay = _interopRequireDefault(require("./ListboxOverlay"));
|
|
31
|
-
|
|
32
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
33
|
-
|
|
34
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
|
-
|
|
36
21
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
37
|
-
|
|
38
22
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
39
|
-
|
|
40
23
|
const styles = _StyleSheet.default.create({
|
|
41
24
|
list: {
|
|
42
25
|
padding: 0,
|
|
43
26
|
margin: 0
|
|
44
27
|
}
|
|
45
28
|
});
|
|
46
|
-
|
|
47
29
|
const getInitialOpen = (items, selectedId) => items.filter(item => item.items && item.items.some(nestedItem => (nestedItem.id ?? nestedItem.label) === selectedId)).map(item => item.id ?? item.label);
|
|
48
|
-
|
|
49
30
|
const Listbox = _ref => {
|
|
50
31
|
let {
|
|
51
32
|
items = [],
|
|
@@ -65,25 +46,23 @@ const Listbox = _ref => {
|
|
|
65
46
|
const {
|
|
66
47
|
minHeight,
|
|
67
48
|
minWidth
|
|
68
|
-
} = (0, _ThemeProvider.useThemeTokens)('Listbox', variant, tokens);
|
|
69
|
-
// focus on a specific item via keyboard navigation
|
|
49
|
+
} = (0, _ThemeProvider.useThemeTokens)('Listbox', variant, tokens);
|
|
70
50
|
|
|
51
|
+
// We need to keep track of each item's ref in order to be able to
|
|
52
|
+
// focus on a specific item via keyboard navigation
|
|
71
53
|
const itemRefs = (0, _react.useRef)([]);
|
|
72
54
|
if (firstItemRef !== null && firstItemRef !== void 0 && firstItemRef.current) itemRefs.current[0] = firstItemRef.current;
|
|
73
55
|
const [focusedIndex, setFocusedIndex] = (0, _react.useState)(0);
|
|
74
56
|
const handleKeydown = (0, _react.useCallback)(event => {
|
|
75
57
|
const nextItemRef = itemRefs.current[focusedIndex + 1];
|
|
76
58
|
const prevItemRef = itemRefs.current[focusedIndex - 1];
|
|
77
|
-
|
|
78
59
|
if (event.key === 'ArrowUp' || event.shiftKey && event.key === 'Tab') {
|
|
79
60
|
var _parentRef$current;
|
|
80
|
-
|
|
81
61
|
// Move the focus to the previous item or to the parent one if on the first
|
|
82
62
|
if (prevItemRef) {
|
|
83
63
|
event.preventDefault();
|
|
84
64
|
prevItemRef.focus();
|
|
85
65
|
} else if (parentRef) (_parentRef$current = parentRef.current) === null || _parentRef$current === void 0 ? void 0 : _parentRef$current.focus();
|
|
86
|
-
|
|
87
66
|
setFocusedIndex(focusedIndex - 1);
|
|
88
67
|
} else if ((event.key === 'ArrowDown' || event.key === 'Tab') && nextItemRef) {
|
|
89
68
|
event.preventDefault();
|
|
@@ -91,15 +70,15 @@ const Listbox = _ref => {
|
|
|
91
70
|
nextItemRef.focus();
|
|
92
71
|
} else if (event.key === 'Escape') {
|
|
93
72
|
var _parentRef$current2, _parentRef$current3;
|
|
94
|
-
|
|
95
73
|
// Close the dropdown
|
|
96
|
-
parentRef === null || parentRef === void 0 ? void 0 : (_parentRef$current2 = parentRef.current) === null || _parentRef$current2 === void 0 ? void 0 : _parentRef$current2.click();
|
|
97
|
-
|
|
74
|
+
parentRef === null || parentRef === void 0 ? void 0 : (_parentRef$current2 = parentRef.current) === null || _parentRef$current2 === void 0 ? void 0 : _parentRef$current2.click();
|
|
75
|
+
// Return focus to the dropdown control after leaving the last item
|
|
98
76
|
parentRef === null || parentRef === void 0 ? void 0 : (_parentRef$current3 = parentRef.current) === null || _parentRef$current3 === void 0 ? void 0 : _parentRef$current3.focus();
|
|
99
77
|
if (onClose) onClose(event);
|
|
100
78
|
}
|
|
101
|
-
}, [focusedIndex, onClose, parentRef]);
|
|
79
|
+
}, [focusedIndex, onClose, parentRef]);
|
|
102
80
|
|
|
81
|
+
// Add listeners for mouse clicks outside and for key presses
|
|
103
82
|
(0, _react.useEffect)(() => {
|
|
104
83
|
if (_Platform.default.OS === 'web') {
|
|
105
84
|
window.addEventListener('click', onClose);
|
|
@@ -111,7 +90,6 @@ const Listbox = _ref => {
|
|
|
111
90
|
window.removeEventListener('touchstart', onClose);
|
|
112
91
|
};
|
|
113
92
|
}
|
|
114
|
-
|
|
115
93
|
return () => {};
|
|
116
94
|
}, [onClose, handleKeydown]);
|
|
117
95
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListboxContext.ListboxContext.Provider, {
|
|
@@ -134,14 +112,15 @@ const Listbox = _ref => {
|
|
|
134
112
|
label,
|
|
135
113
|
items: nestedItems
|
|
136
114
|
} = item;
|
|
137
|
-
const itemId = id ?? label;
|
|
115
|
+
const itemId = id ?? label;
|
|
138
116
|
|
|
117
|
+
// Give the list of refs.
|
|
139
118
|
const itemRef = ref => {
|
|
140
119
|
itemRefs.current[index] = ref;
|
|
141
120
|
return ref;
|
|
142
121
|
};
|
|
143
|
-
|
|
144
|
-
|
|
122
|
+
return nestedItems ? /*#__PURE__*/(0, _react.createElement)(_ListboxGroup.default, {
|
|
123
|
+
...item,
|
|
145
124
|
expandProps: expandProps,
|
|
146
125
|
LinkRouter: LinkRouter,
|
|
147
126
|
itemRouterProps: itemRouterProps,
|
|
@@ -149,7 +128,8 @@ const Listbox = _ref => {
|
|
|
149
128
|
nextItemRef: itemRefs.current[index + 1] ?? null,
|
|
150
129
|
ref: index === 0 ? firstItemRef : itemRef,
|
|
151
130
|
key: itemId
|
|
152
|
-
}) : /*#__PURE__*/(0, _react.createElement)(_ListboxItem.default, {
|
|
131
|
+
}) : /*#__PURE__*/(0, _react.createElement)(_ListboxItem.default, {
|
|
132
|
+
...item,
|
|
153
133
|
key: itemId,
|
|
154
134
|
id: itemId,
|
|
155
135
|
LinkRouter: LinkRouter,
|
|
@@ -163,31 +143,26 @@ const Listbox = _ref => {
|
|
|
163
143
|
})
|
|
164
144
|
});
|
|
165
145
|
};
|
|
166
|
-
|
|
167
|
-
|
|
146
|
+
Listbox.propTypes = {
|
|
147
|
+
..._utils.withLinkRouter.propTypes,
|
|
168
148
|
tokens: (0, _utils.getTokensPropType)('Listbox'),
|
|
169
|
-
|
|
170
149
|
/**
|
|
171
150
|
* Focus will be moved to the item with this ref once within the menu.
|
|
172
151
|
*/
|
|
173
152
|
firstItemRef: _propTypes.default.object,
|
|
174
|
-
|
|
175
153
|
/**
|
|
176
154
|
* Focus will be returned to the dropdown control with this ref after leaving
|
|
177
155
|
* the last menu item.
|
|
178
156
|
*/
|
|
179
157
|
parentRef: _propTypes.default.object,
|
|
180
|
-
|
|
181
158
|
/**
|
|
182
159
|
* `Listbox` items
|
|
183
160
|
*/
|
|
184
161
|
items: _propTypes.default.array,
|
|
185
|
-
|
|
186
162
|
/**
|
|
187
163
|
* To select an item by default
|
|
188
164
|
*/
|
|
189
165
|
selectedId: _propTypes.default.string,
|
|
190
|
-
|
|
191
166
|
/**
|
|
192
167
|
* onClose event
|
|
193
168
|
*/
|
|
@@ -4,17 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useListboxContext = exports.ListboxContext = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
|
-
|
|
12
9
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
13
|
-
|
|
14
10
|
const ListboxContext = /*#__PURE__*/_react.default.createContext({});
|
|
15
|
-
|
|
16
11
|
exports.ListboxContext = ListboxContext;
|
|
17
|
-
|
|
18
12
|
const useListboxContext = () => (0, _react.useContext)(ListboxContext);
|
|
19
|
-
|
|
20
13
|
exports.useListboxContext = useListboxContext;
|
|
@@ -4,34 +4,21 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
-
|
|
14
10
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
15
|
-
|
|
16
11
|
var _utils = require("../utils");
|
|
17
|
-
|
|
18
12
|
var _ExpandCollapse = _interopRequireDefault(require("../ExpandCollapse"));
|
|
19
|
-
|
|
20
13
|
var _ListboxItem = _interopRequireDefault(require("./ListboxItem"));
|
|
21
|
-
|
|
22
14
|
var _ListboxContext = require("./ListboxContext");
|
|
23
|
-
|
|
24
15
|
var _GroupControl = _interopRequireDefault(require("./GroupControl"));
|
|
25
|
-
|
|
26
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
27
|
-
|
|
28
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
-
|
|
30
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
31
|
-
|
|
32
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
33
|
-
|
|
34
20
|
/* eslint-disable react-native-a11y/has-valid-accessibility-role */
|
|
21
|
+
|
|
35
22
|
const styles = _StyleSheet.default.create({
|
|
36
23
|
groupWrapper: {
|
|
37
24
|
margin: 0,
|
|
@@ -43,7 +30,6 @@ const styles = _StyleSheet.default.create({
|
|
|
43
30
|
padding: 0
|
|
44
31
|
}
|
|
45
32
|
});
|
|
46
|
-
|
|
47
33
|
const ListboxGroup = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
48
34
|
let {
|
|
49
35
|
id,
|
|
@@ -58,8 +44,9 @@ const ListboxGroup = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
58
44
|
} = _ref;
|
|
59
45
|
const {
|
|
60
46
|
selectedId
|
|
61
|
-
} = (0, _ListboxContext.useListboxContext)();
|
|
47
|
+
} = (0, _ListboxContext.useListboxContext)();
|
|
62
48
|
|
|
49
|
+
// TODO: implement keyboard navigation via refs for grouped items separately here
|
|
63
50
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
64
51
|
id: "test",
|
|
65
52
|
style: styles.groupWrapper,
|
|
@@ -76,7 +63,8 @@ const ListboxGroup = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
76
63
|
borderColor: 'transparent',
|
|
77
64
|
textLine: 'none',
|
|
78
65
|
borderWidth: 0
|
|
79
|
-
}
|
|
66
|
+
}
|
|
67
|
+
// TODO refactor
|
|
80
68
|
// eslint-disable-next-line react/no-unstable-nested-components
|
|
81
69
|
,
|
|
82
70
|
control: controlProps => /*#__PURE__*/(0, _jsxRuntime.jsx)(_GroupControl.default, {
|
|
@@ -122,7 +110,8 @@ const ListboxGroup = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
122
110
|
});
|
|
123
111
|
});
|
|
124
112
|
ListboxGroup.displayName = 'ListboxGroup';
|
|
125
|
-
ListboxGroup.propTypes = {
|
|
113
|
+
ListboxGroup.propTypes = {
|
|
114
|
+
..._utils.withLinkRouter.propTypes,
|
|
126
115
|
label: _propTypes.default.string,
|
|
127
116
|
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
128
117
|
href: _propTypes.default.string,
|
|
@@ -132,7 +121,6 @@ ListboxGroup.propTypes = { ..._utils.withLinkRouter.propTypes,
|
|
|
132
121
|
expandProps: _propTypes.default.object,
|
|
133
122
|
nextItemRef: _propTypes.default.object,
|
|
134
123
|
prevItemRef: _propTypes.default.object,
|
|
135
|
-
|
|
136
124
|
/**
|
|
137
125
|
* Use this callback to redirect the focus after it leaves the last item of the group.
|
|
138
126
|
*/
|
|
@@ -4,32 +4,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
|
|
12
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
-
|
|
14
10
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
15
|
-
|
|
16
11
|
var _utils = require("../utils");
|
|
17
|
-
|
|
18
12
|
var _PressableItem = _interopRequireDefault(require("./PressableItem"));
|
|
19
|
-
|
|
20
13
|
var _ThemeProvider = require("../ThemeProvider");
|
|
21
|
-
|
|
22
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
23
|
-
|
|
24
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
-
|
|
28
17
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
-
|
|
30
18
|
/* eslint-disable react/require-default-props */
|
|
31
|
-
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.htmlAttrs]);
|
|
32
19
|
|
|
20
|
+
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.htmlAttrs]);
|
|
33
21
|
const styles = _StyleSheet.default.create({
|
|
34
22
|
itemContainer: {
|
|
35
23
|
display: 'flex',
|
|
@@ -42,7 +30,6 @@ const styles = _StyleSheet.default.create({
|
|
|
42
30
|
paddingLeft: 24
|
|
43
31
|
}
|
|
44
32
|
});
|
|
45
|
-
|
|
46
33
|
const ListboxItem = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
47
34
|
let {
|
|
48
35
|
href,
|
|
@@ -86,7 +73,8 @@ const ListboxItem = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
86
73
|
});
|
|
87
74
|
});
|
|
88
75
|
ListboxItem.displayName = 'ListboxItem';
|
|
89
|
-
ListboxItem.propTypes = {
|
|
76
|
+
ListboxItem.propTypes = {
|
|
77
|
+
...selectedSystemPropTypes,
|
|
90
78
|
..._utils.withLinkRouter.propTypes,
|
|
91
79
|
href: _propTypes.default.string,
|
|
92
80
|
isChild: _propTypes.default.bool,
|
|
@@ -96,7 +84,5 @@ ListboxItem.propTypes = { ...selectedSystemPropTypes,
|
|
|
96
84
|
onPress: _propTypes.default.func,
|
|
97
85
|
nestedChild: _propTypes.default.bool
|
|
98
86
|
};
|
|
99
|
-
|
|
100
87
|
var _default = (0, _utils.withLinkRouter)(ListboxItem);
|
|
101
|
-
|
|
102
88
|
exports.default = _default;
|