@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
|
@@ -4,41 +4,23 @@ 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 _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
13
|
-
|
|
14
10
|
var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
|
|
15
|
-
|
|
16
11
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
17
|
-
|
|
18
12
|
var _StackView = _interopRequireDefault(require("../StackView"));
|
|
19
|
-
|
|
20
13
|
var _ThemeProvider = require("../ThemeProvider");
|
|
21
|
-
|
|
22
14
|
var _utils = require("../utils");
|
|
23
|
-
|
|
24
15
|
var _ViewportProvider = require("../ViewportProvider");
|
|
25
|
-
|
|
26
16
|
var _useCopy = _interopRequireDefault(require("../utils/useCopy"));
|
|
27
|
-
|
|
28
17
|
var _Step = _interopRequireDefault(require("./Step"));
|
|
29
|
-
|
|
30
18
|
var _dictionary = _interopRequireDefault(require("./dictionary"));
|
|
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 [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
41
|
-
|
|
42
24
|
const selectContainerStyles = _ref => {
|
|
43
25
|
let {
|
|
44
26
|
containerPaddingBottom,
|
|
@@ -53,7 +35,6 @@ const selectContainerStyles = _ref => {
|
|
|
53
35
|
paddingTop: containerPaddingTop
|
|
54
36
|
};
|
|
55
37
|
};
|
|
56
|
-
|
|
57
38
|
const selectStepTrackerLabelContainerStyles = _ref2 => {
|
|
58
39
|
let {
|
|
59
40
|
labelMarginTop
|
|
@@ -62,7 +43,6 @@ const selectStepTrackerLabelContainerStyles = _ref2 => {
|
|
|
62
43
|
marginTop: labelMarginTop
|
|
63
44
|
};
|
|
64
45
|
};
|
|
65
|
-
|
|
66
46
|
const selectStepTrackerLabelStyles = (_ref3, themeOptions) => {
|
|
67
47
|
let {
|
|
68
48
|
labelColor,
|
|
@@ -80,6 +60,7 @@ const selectStepTrackerLabelStyles = (_ref3, themeOptions) => {
|
|
|
80
60
|
themeOptions
|
|
81
61
|
});
|
|
82
62
|
};
|
|
63
|
+
|
|
83
64
|
/**
|
|
84
65
|
* StepTracker component shows the current position in a sequence of steps.
|
|
85
66
|
*
|
|
@@ -112,8 +93,6 @@ const selectStepTrackerLabelStyles = (_ref3, themeOptions) => {
|
|
|
112
93
|
* - `accessibilityValue.text` (`aria-valuetext`): `<Current Step Label>`,
|
|
113
94
|
*
|
|
114
95
|
*/
|
|
115
|
-
|
|
116
|
-
|
|
117
96
|
const StepTracker = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
118
97
|
let {
|
|
119
98
|
current = 0,
|
|
@@ -139,9 +118,7 @@ const StepTracker = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
139
118
|
copy
|
|
140
119
|
});
|
|
141
120
|
const stepTrackerLabel = showStepTrackerLabel ? (typeof copy === 'string' ? getCopy(textStepTrackerLabel ?? 1).stepTrackerLabel : getCopy('stepTrackerLabel')).replace('%{stepNumber}', current < steps.length ? current + 1 : steps.length).replace('%{stepCount}', steps.length).replace('%{stepLabel}', current < steps.length ? steps[current] : steps[steps.length - 1]) : '';
|
|
142
|
-
|
|
143
121
|
const getStepLabel = index => themeTokens.showStepLabel ? (typeof copy === 'string' ? getCopy(textStepTrackerLabel ?? 1).stepLabel : getCopy('stepLabel')).replace('%{stepNumber}', index + 1) : '';
|
|
144
|
-
|
|
145
122
|
const {
|
|
146
123
|
themeOptions
|
|
147
124
|
} = (0, _ThemeProvider.useTheme)();
|
|
@@ -186,25 +163,23 @@ const StepTracker = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
186
163
|
})
|
|
187
164
|
});
|
|
188
165
|
});
|
|
189
|
-
StepTracker.displayName = 'StepTracker';
|
|
166
|
+
StepTracker.displayName = 'StepTracker';
|
|
190
167
|
|
|
168
|
+
// If a language dictionary entry is provided, it must contain every key
|
|
191
169
|
const dictionaryContentShape = _propTypes.default.shape({
|
|
192
170
|
stepLabel: _propTypes.default.string.isRequired,
|
|
193
171
|
stepTrackerLabel: _propTypes.default.string.isRequired
|
|
194
172
|
});
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
173
|
+
StepTracker.propTypes = {
|
|
174
|
+
...selectedSystemPropTypes,
|
|
198
175
|
/**
|
|
199
176
|
* The current step, 0-based number
|
|
200
177
|
*/
|
|
201
178
|
current: _propTypes.default.number,
|
|
202
|
-
|
|
203
179
|
/**
|
|
204
180
|
* The language to use for the labels
|
|
205
181
|
*/
|
|
206
182
|
copy: _propTypes.default.oneOfType([_propTypes.default.oneOf(['en', 'fr']), dictionaryContentShape]),
|
|
207
|
-
|
|
208
183
|
/**
|
|
209
184
|
* Custom dictionary containing the labels to use for the steps
|
|
210
185
|
*/
|
|
@@ -212,7 +187,6 @@ StepTracker.propTypes = { ...selectedSystemPropTypes,
|
|
|
212
187
|
en: dictionaryContentShape,
|
|
213
188
|
fr: dictionaryContentShape
|
|
214
189
|
}),
|
|
215
|
-
|
|
216
190
|
/**
|
|
217
191
|
* An array of strings defining the step titles
|
|
218
192
|
*/
|
|
@@ -222,7 +196,6 @@ StepTracker.propTypes = { ...selectedSystemPropTypes,
|
|
|
222
196
|
};
|
|
223
197
|
var _default = StepTracker;
|
|
224
198
|
exports.default = _default;
|
|
225
|
-
|
|
226
199
|
const staticStyles = _StyleSheet.default.create({
|
|
227
200
|
stepsContainer: {
|
|
228
201
|
alignItems: 'flex-start',
|
package/lib/StepTracker/index.js
CHANGED
|
@@ -4,10 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _StepTracker = _interopRequireDefault(require("./StepTracker"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
var _default = _StepTracker.default;
|
|
13
10
|
exports.default = _default;
|
package/lib/Tabs/Tabs.js
CHANGED
|
@@ -4,53 +4,35 @@ 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 _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
11
|
-
|
|
12
9
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
|
|
14
10
|
var _airbnbPropTypes = _interopRequireDefault(require("airbnb-prop-types"));
|
|
15
|
-
|
|
16
11
|
var _ThemeProvider = require("../ThemeProvider");
|
|
17
|
-
|
|
18
12
|
var _StackView = _interopRequireDefault(require("../StackView"));
|
|
19
|
-
|
|
20
13
|
var _utils = require("../utils");
|
|
21
|
-
|
|
22
14
|
var _HorizontalScroll = _interopRequireWildcard(require("../HorizontalScroll"));
|
|
23
|
-
|
|
24
15
|
var _TabsItem = _interopRequireDefault(require("./TabsItem"));
|
|
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
|
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
35
21
|
const [selectItemProps, selectedItemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.focusHandlerProps, _utils.pressProps, _utils.viewProps]);
|
|
36
22
|
const {
|
|
37
23
|
selectHorizontalScrollTokens,
|
|
38
24
|
useItemPositions
|
|
39
25
|
} = _HorizontalScroll.horizontalScrollUtils;
|
|
40
|
-
|
|
41
26
|
const getDefaultTabItemAccessibilityRole = parentRole => {
|
|
42
27
|
switch (parentRole) {
|
|
43
28
|
case 'tablist':
|
|
44
29
|
return 'tab';
|
|
45
|
-
|
|
46
30
|
case 'navigation':
|
|
47
31
|
return 'link';
|
|
48
|
-
|
|
49
32
|
default:
|
|
50
33
|
return undefined;
|
|
51
34
|
}
|
|
52
35
|
};
|
|
53
|
-
|
|
54
36
|
const getStackViewTokens = variant => {
|
|
55
37
|
const equalWidth = variant === null || variant === void 0 ? void 0 : variant.equalWidth;
|
|
56
38
|
return _Platform.default.select({
|
|
@@ -61,6 +43,7 @@ const getStackViewTokens = variant => {
|
|
|
61
43
|
default: {}
|
|
62
44
|
});
|
|
63
45
|
};
|
|
46
|
+
|
|
64
47
|
/**
|
|
65
48
|
* Tabs renders a horizontally-scrolling menu of selectable buttons which may link
|
|
66
49
|
* to a page or control what content is displayed on this page.
|
|
@@ -69,8 +52,6 @@ const getStackViewTokens = variant => {
|
|
|
69
52
|
* `navigation`as the `accessibilityRole` to te Tabs component, this will cause
|
|
70
53
|
* TabItems to default to a role of link and obtain aria-current behaviour.
|
|
71
54
|
*/
|
|
72
|
-
|
|
73
|
-
|
|
74
55
|
const Tabs = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
75
56
|
let {
|
|
76
57
|
tokens,
|
|
@@ -138,12 +119,10 @@ const Tabs = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
138
119
|
} = _ref3;
|
|
139
120
|
const itemId = id ?? label;
|
|
140
121
|
const isSelected = Boolean(currentValue && currentValue === itemId);
|
|
141
|
-
|
|
142
122
|
const handlePress = event => {
|
|
143
123
|
if (typeof onPress === 'function') onPress(event);
|
|
144
124
|
setValue(itemId, event);
|
|
145
125
|
};
|
|
146
|
-
|
|
147
126
|
const itemProps = selectItemProps(itemRest);
|
|
148
127
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TabsItem.default, {
|
|
149
128
|
ref: itemRef,
|
|
@@ -157,7 +136,8 @@ const Tabs = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
157
136
|
index: index,
|
|
158
137
|
accessibilityRole: accessibilityRole,
|
|
159
138
|
LinkRouter: ItemLinkRouter,
|
|
160
|
-
linkRouterProps: {
|
|
139
|
+
linkRouterProps: {
|
|
140
|
+
...linkRouterProps,
|
|
161
141
|
...itemLinkRouterProps
|
|
162
142
|
},
|
|
163
143
|
...itemProps,
|
|
@@ -168,37 +148,34 @@ const Tabs = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
168
148
|
});
|
|
169
149
|
});
|
|
170
150
|
Tabs.displayName = 'Tabs';
|
|
171
|
-
Tabs.propTypes = {
|
|
151
|
+
Tabs.propTypes = {
|
|
152
|
+
...selectedSystemPropTypes,
|
|
172
153
|
..._utils.withLinkRouter.PropTypes,
|
|
173
|
-
|
|
174
154
|
/**
|
|
175
155
|
* Array of `TabsItem`s
|
|
176
156
|
*/
|
|
177
|
-
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
157
|
+
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
158
|
+
...selectedItemPropTypes,
|
|
178
159
|
..._utils.withLinkRouter.PropTypes,
|
|
179
160
|
href: _propTypes.default.string,
|
|
180
161
|
label: _propTypes.default.string,
|
|
181
162
|
id: _propTypes.default.string,
|
|
182
163
|
ref: _airbnbPropTypes.default.ref()
|
|
183
164
|
})),
|
|
184
|
-
|
|
185
165
|
/**
|
|
186
166
|
* `id` property of the current tab in the items array
|
|
187
167
|
*/
|
|
188
168
|
value: _propTypes.default.string,
|
|
189
169
|
initialValue: _propTypes.default.string,
|
|
190
|
-
|
|
191
170
|
/**
|
|
192
171
|
* Callback for when the selected tab changes
|
|
193
172
|
*/
|
|
194
173
|
onChange: _propTypes.default.func,
|
|
195
174
|
tokens: (0, _utils.getTokensPropType)('Tabs'),
|
|
196
|
-
|
|
197
175
|
/**
|
|
198
176
|
* Custom tokens for `TabsItem`
|
|
199
177
|
*/
|
|
200
178
|
itemTokens: (0, _utils.getTokensPropType)('TabsItem'),
|
|
201
|
-
|
|
202
179
|
/**
|
|
203
180
|
* Custom tokens for `HorizontalScrollButton`
|
|
204
181
|
*/
|
package/lib/Tabs/TabsItem.js
CHANGED
|
@@ -4,43 +4,26 @@ 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 _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
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 _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
|
|
19
|
-
|
|
20
13
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
21
|
-
|
|
22
14
|
var _ThemeProvider = require("../ThemeProvider");
|
|
23
|
-
|
|
24
15
|
var _utils = require("../utils");
|
|
25
|
-
|
|
26
16
|
var _Spacer = _interopRequireDefault(require("../Spacer"));
|
|
27
|
-
|
|
28
17
|
var _HorizontalScroll = require("../HorizontalScroll");
|
|
29
|
-
|
|
30
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
31
|
-
|
|
32
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
|
-
|
|
34
20
|
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); }
|
|
35
|
-
|
|
36
21
|
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; }
|
|
37
|
-
|
|
38
22
|
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
39
23
|
const {
|
|
40
24
|
itemPositionsPropType,
|
|
41
25
|
getItemPositionLayoutHandler
|
|
42
26
|
} = _HorizontalScroll.horizontalScrollUtils;
|
|
43
|
-
|
|
44
27
|
const selectHighlightBarStyles = _ref => {
|
|
45
28
|
let {
|
|
46
29
|
highlightColor,
|
|
@@ -60,7 +43,6 @@ const selectHighlightBarStyles = _ref => {
|
|
|
60
43
|
zIndex: 1 + highlightBarBorderWidth
|
|
61
44
|
};
|
|
62
45
|
};
|
|
63
|
-
|
|
64
46
|
const selectHighlightTriangleStyles = _ref2 => {
|
|
65
47
|
let {
|
|
66
48
|
highlightColor,
|
|
@@ -81,7 +63,6 @@ const selectHighlightTriangleStyles = _ref2 => {
|
|
|
81
63
|
}
|
|
82
64
|
};
|
|
83
65
|
};
|
|
84
|
-
|
|
85
66
|
const selectContainerStyles = _ref3 => {
|
|
86
67
|
let {
|
|
87
68
|
backgroundColor,
|
|
@@ -100,14 +81,13 @@ const selectContainerStyles = _ref3 => {
|
|
|
100
81
|
paddingVertical: paddingVertical - borderWidth
|
|
101
82
|
};
|
|
102
83
|
};
|
|
84
|
+
|
|
103
85
|
/**
|
|
104
86
|
* Item within a Tabs component representing one tab of content. May be rendered as a link
|
|
105
87
|
* or as a "menuitem" button depending on whether 'href' is passed.
|
|
106
88
|
*
|
|
107
89
|
* This is rendered automatically by `Tabs` and isn't intended be used directly.
|
|
108
90
|
*/
|
|
109
|
-
|
|
110
|
-
|
|
111
91
|
const TabsItem = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
112
92
|
let {
|
|
113
93
|
href,
|
|
@@ -125,22 +105,18 @@ const TabsItem = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
125
105
|
id,
|
|
126
106
|
...rawRest
|
|
127
107
|
} = _ref4;
|
|
128
|
-
|
|
129
108
|
// Convert onClick etc to onPress etc if used in an integration
|
|
130
109
|
const {
|
|
131
110
|
onPress,
|
|
132
111
|
...rest
|
|
133
112
|
} = _utils.clickProps.toPressProps(rawRest);
|
|
134
|
-
|
|
135
113
|
const {
|
|
136
114
|
themeOptions
|
|
137
115
|
} = (0, _ThemeProvider.useTheme)();
|
|
138
116
|
const getTokens = (0, _ThemeProvider.useThemeTokensCallback)('TabsItem', tokens, variant);
|
|
139
|
-
|
|
140
117
|
const resolveTokens = pressableState => (0, _utils.resolvePressableTokens)(getTokens, pressableState, {
|
|
141
118
|
selected
|
|
142
119
|
});
|
|
143
|
-
|
|
144
120
|
const getPressableStyle = pressableState => {
|
|
145
121
|
const {
|
|
146
122
|
maxWidth
|
|
@@ -151,13 +127,12 @@ const TabsItem = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
151
127
|
outline: 'none'
|
|
152
128
|
}];
|
|
153
129
|
};
|
|
130
|
+
const handleLayout = getItemPositionLayoutHandler(itemPositions.positions, index);
|
|
154
131
|
|
|
155
|
-
|
|
156
|
-
|
|
132
|
+
// On press, update the selection, call any press handler, and open any href in platform-appropriate way
|
|
157
133
|
const openHref = href && _utils.linkProps.handleHref({
|
|
158
134
|
href
|
|
159
135
|
});
|
|
160
|
-
|
|
161
136
|
const handlePress = onPress || openHref ? function () {
|
|
162
137
|
if (onPress) onPress(...arguments);
|
|
163
138
|
if (openHref) openHref(...arguments);
|
|
@@ -173,14 +148,15 @@ const TabsItem = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
173
148
|
if (selected) {
|
|
174
149
|
const position = itemPositions.positions[index];
|
|
175
150
|
const scrollEnd = itemPositions.scrollOffset + itemPositions.containerWidth;
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
scrollEnd && (position === null || position === void 0 ? void 0 : position.end) > scrollEnd ||
|
|
151
|
+
if (
|
|
152
|
+
// is off the right edge, or
|
|
153
|
+
scrollEnd && (position === null || position === void 0 ? void 0 : position.end) > scrollEnd ||
|
|
154
|
+
// is off the left edge
|
|
179
155
|
typeof (position === null || position === void 0 ? void 0 : position.start) === 'number' && position.start < itemPositions.scrollOffset) {
|
|
180
156
|
itemPositions.scrollTo(position.start);
|
|
181
157
|
}
|
|
182
|
-
}
|
|
183
|
-
|
|
158
|
+
}
|
|
159
|
+
// itemPositions is a ref object so this should only re-run when `selected` (or `index`) change
|
|
184
160
|
}, [selected, index, itemPositions]);
|
|
185
161
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Pressable.default, {
|
|
186
162
|
ref: ref,
|
|
@@ -201,7 +177,8 @@ const TabsItem = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
201
177
|
const hasHighlightTriangle = Boolean(themeTokens.highlightTriangleSize);
|
|
202
178
|
const highlightTriangleStyle = hasHighlightTriangle && selectHighlightTriangleStyles(themeTokens);
|
|
203
179
|
const containerStyles = selectContainerStyles(themeTokens);
|
|
204
|
-
const textStyles = (0, _ThemeProvider.applyTextStyles)({
|
|
180
|
+
const textStyles = (0, _ThemeProvider.applyTextStyles)({
|
|
181
|
+
...(0, _utils.selectTokens)('Typography', themeTokens),
|
|
205
182
|
themeOptions,
|
|
206
183
|
textAlign
|
|
207
184
|
});
|
|
@@ -228,7 +205,8 @@ const TabsItem = /*#__PURE__*/(0, _react.forwardRef)((_ref4, ref) => {
|
|
|
228
205
|
});
|
|
229
206
|
});
|
|
230
207
|
TabsItem.displayName = 'TabsItem';
|
|
231
|
-
TabsItem.propTypes = {
|
|
208
|
+
TabsItem.propTypes = {
|
|
209
|
+
...selectedSystemPropTypes,
|
|
232
210
|
tokens: (0, _utils.getTokensPropType)('TabsItem'),
|
|
233
211
|
variant: _utils.variantProp.propType,
|
|
234
212
|
onPress: _propTypes.default.func,
|
|
@@ -239,7 +217,6 @@ TabsItem.propTypes = { ...selectedSystemPropTypes,
|
|
|
239
217
|
children: _propTypes.default.string,
|
|
240
218
|
id: _propTypes.default.string
|
|
241
219
|
};
|
|
242
|
-
|
|
243
220
|
const staticStyles = _StyleSheet.default.create({
|
|
244
221
|
center: {
|
|
245
222
|
alignItems: 'center'
|
|
@@ -261,7 +238,5 @@ const staticStyles = _StyleSheet.default.create({
|
|
|
261
238
|
})
|
|
262
239
|
}
|
|
263
240
|
});
|
|
264
|
-
|
|
265
241
|
var _default = (0, _utils.withLinkRouter)(TabsItem);
|
|
266
|
-
|
|
267
242
|
exports.default = _default;
|
package/lib/Tabs/index.js
CHANGED
|
@@ -4,10 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Tabs = _interopRequireDefault(require("./Tabs"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
var _default = _Tabs.default;
|
|
13
10
|
exports.default = _default;
|
package/lib/Tags/Tags.js
CHANGED
|
@@ -4,44 +4,25 @@ 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 _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
15
|
-
|
|
16
11
|
var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
|
|
17
|
-
|
|
18
12
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
19
|
-
|
|
20
13
|
var _ButtonBase = _interopRequireDefault(require("../Button/ButtonBase"));
|
|
21
|
-
|
|
22
14
|
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
23
|
-
|
|
24
15
|
var _StackView = require("../StackView");
|
|
25
|
-
|
|
26
16
|
var _ViewportProvider = require("../ViewportProvider");
|
|
27
|
-
|
|
28
17
|
var _ThemeProvider = require("../ThemeProvider");
|
|
29
|
-
|
|
30
18
|
var _utils = require("../utils");
|
|
31
|
-
|
|
32
19
|
var _pressability = require("../utils/pressability");
|
|
33
|
-
|
|
34
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
35
|
-
|
|
36
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
37
|
-
|
|
38
22
|
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); }
|
|
39
|
-
|
|
40
23
|
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; }
|
|
41
|
-
|
|
42
24
|
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
43
25
|
const [selectItemProps, selectedItemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.focusHandlerProps, _utils.pressProps, _utils.viewProps]);
|
|
44
|
-
|
|
45
26
|
const separateIconTextTokens = (_ref, returnRest) => {
|
|
46
27
|
let {
|
|
47
28
|
icon,
|
|
@@ -81,11 +62,8 @@ const separateIconTextTokens = (_ref, returnRest) => {
|
|
|
81
62
|
}
|
|
82
63
|
};
|
|
83
64
|
};
|
|
84
|
-
|
|
85
65
|
const selectIconTextTokens = tokens => separateIconTextTokens(tokens, false);
|
|
86
|
-
|
|
87
66
|
const selectNonIconTextTokens = tokens => separateIconTextTokens(tokens, true);
|
|
88
|
-
|
|
89
67
|
const Tags = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
90
68
|
let {
|
|
91
69
|
variant,
|
|
@@ -113,10 +91,9 @@ const Tags = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
|
113
91
|
space
|
|
114
92
|
} = themeTokens;
|
|
115
93
|
const getItemTokens = (0, _ThemeProvider.useThemeTokensCallback)('TagsItem', tokens, variant);
|
|
116
|
-
|
|
117
|
-
|
|
94
|
+
const getButtonTokens = buttonState =>
|
|
95
|
+
// Remove icon-text-related tokens, since we want to handle them ourselves, not use ButtonBase's handling
|
|
118
96
|
(0, _utils.selectTokens)('Button', selectNonIconTextTokens(getItemTokens(buttonState)));
|
|
119
|
-
|
|
120
97
|
const {
|
|
121
98
|
currentValues,
|
|
122
99
|
toggleOneValue
|
|
@@ -133,11 +110,9 @@ const Tags = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
|
133
110
|
});
|
|
134
111
|
const itemA11yRole = 'checkbox';
|
|
135
112
|
const uniqueFields = ['id', 'label'];
|
|
136
|
-
|
|
137
113
|
if (!(0, _utils.containUniqueFields)(items, uniqueFields)) {
|
|
138
114
|
throw new Error(`Tags items must have unique ${uniqueFields.join(', ')}`);
|
|
139
115
|
}
|
|
140
|
-
|
|
141
116
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_StackView.StackWrap, {
|
|
142
117
|
ref: ref,
|
|
143
118
|
...selectedProps,
|
|
@@ -151,19 +126,18 @@ const Tags = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
|
151
126
|
ref: itemRef,
|
|
152
127
|
...itemRest
|
|
153
128
|
} = _ref3;
|
|
154
|
-
const isSelected = currentValues.includes(id);
|
|
129
|
+
const isSelected = currentValues.includes(id);
|
|
155
130
|
|
|
131
|
+
// Pass an object of relevant component state as first argument for any passed-in press handlers
|
|
156
132
|
const pressHandlers = (0, _pressability.getPressHandlersWithArgs)(rest, [{
|
|
157
133
|
id,
|
|
158
134
|
label,
|
|
159
135
|
currentValues
|
|
160
136
|
}]);
|
|
161
|
-
|
|
162
137
|
const handlePress = event => {
|
|
163
138
|
if (pressHandlers.onPress) pressHandlers.onPress(event);
|
|
164
139
|
toggleOneValue(id, event);
|
|
165
140
|
};
|
|
166
|
-
|
|
167
141
|
const itemProps = selectItemProps({
|
|
168
142
|
accessibilityState: {
|
|
169
143
|
checked: isSelected
|
|
@@ -190,6 +164,7 @@ const Tags = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
|
190
164
|
// - Icon: https://github.com/telus/universal-design-system/issues/327
|
|
191
165
|
// - IconButton: https://github.com/telus/universal-design-system/issues/281
|
|
192
166
|
// - Token sets: https://github.com/telus/universal-design-system/issues/782
|
|
167
|
+
|
|
193
168
|
const itemTokens = getItemTokens(buttonState);
|
|
194
169
|
const {
|
|
195
170
|
iconTokens,
|
|
@@ -219,51 +194,45 @@ const Tags = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
|
219
194
|
});
|
|
220
195
|
});
|
|
221
196
|
Tags.displayName = 'Tags';
|
|
222
|
-
Tags.propTypes = {
|
|
197
|
+
Tags.propTypes = {
|
|
198
|
+
...selectedSystemPropTypes,
|
|
223
199
|
tokens: (0, _utils.getTokensPropType)('Tags'),
|
|
224
200
|
variant: _utils.variantProp.propType,
|
|
225
|
-
|
|
226
201
|
/**
|
|
227
202
|
* If provided, sets a maximum number of items a user may select at once.
|
|
228
203
|
*/
|
|
229
204
|
maxValues: _propTypes.default.number,
|
|
230
|
-
|
|
231
205
|
/**
|
|
232
206
|
* The options a user may select
|
|
233
207
|
*/
|
|
234
|
-
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
235
|
-
|
|
208
|
+
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
209
|
+
...selectedItemPropTypes,
|
|
236
210
|
/**
|
|
237
211
|
* The text displayed to the user in the button, describing this option,
|
|
238
212
|
* passed to the button as its child.
|
|
239
213
|
*/
|
|
240
214
|
label: _propTypes.default.string.isRequired,
|
|
241
|
-
|
|
242
215
|
/**
|
|
243
216
|
* An optional accessibility label may be passed to ButtonGroup Buttons
|
|
244
217
|
* which is applied as normal for a React Native accessibilityLabel prop.
|
|
245
218
|
*/
|
|
246
219
|
accessibilityLabel: _propTypes.default.string,
|
|
247
|
-
|
|
248
220
|
/**
|
|
249
221
|
* An optional unique string may be provided to identify this option,
|
|
250
222
|
* which will be used in code and passed to any onChange function.
|
|
251
223
|
* If not provided, the label is used.
|
|
252
224
|
*/
|
|
253
225
|
id: _propTypes.default.string,
|
|
254
|
-
|
|
255
226
|
/**
|
|
256
227
|
* An optional ref for one individual Tag button in the tags
|
|
257
228
|
*/
|
|
258
229
|
ref: _airbnbPropTypes.default.ref()
|
|
259
230
|
})),
|
|
260
|
-
|
|
261
231
|
/**
|
|
262
232
|
* If provided, this function is called when the current selection is changed
|
|
263
233
|
* and is passed an array of the `id`s of all currently selected `items`.
|
|
264
234
|
*/
|
|
265
235
|
onChange: _propTypes.default.func,
|
|
266
|
-
|
|
267
236
|
/**
|
|
268
237
|
* If the selected item(s) in the button group are to be controlled externally by
|
|
269
238
|
* a parent component, pass an array of strings as well as an `onChange` handler.
|
|
@@ -271,14 +240,12 @@ Tags.propTypes = { ...selectedSystemPropTypes,
|
|
|
271
240
|
* expects its state to be handled via `onChange` and so doesn't handle it itself.
|
|
272
241
|
*/
|
|
273
242
|
values: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
274
|
-
|
|
275
243
|
/**
|
|
276
244
|
* If `values` is not passed, making the ButtonGroup an "uncontrolled" component
|
|
277
245
|
* managing its own selected state, a default set of selections may be provided.
|
|
278
246
|
* Changing the `initialValues` does not change the user's selections.
|
|
279
247
|
*/
|
|
280
248
|
initialValues: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
281
|
-
|
|
282
249
|
/**
|
|
283
250
|
* AccesibilityRole for the Tags
|
|
284
251
|
*/
|
package/lib/Tags/index.js
CHANGED
|
@@ -4,10 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Tags = _interopRequireDefault(require("./Tags"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
var _default = _Tags.default;
|
|
13
10
|
exports.default = _default;
|