@telus-uds/components-base 1.84.0 → 1.85.1
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 +26 -2
- package/lib/A11yInfoProvider/index.js +8 -10
- package/lib/A11yText/index.js +2 -4
- package/lib/ActivityIndicator/Spinner.js +3 -4
- package/lib/ActivityIndicator/Spinner.native.js +2 -4
- package/lib/Autocomplete/Autocomplete.js +13 -17
- package/lib/Autocomplete/Loading.js +4 -2
- package/lib/Autocomplete/Suggestions.js +2 -4
- package/lib/Badge/Badge.js +2 -4
- package/lib/BaseProvider/HydrationContext.js +5 -7
- package/lib/Box/Box.js +5 -7
- package/lib/Button/Button.js +3 -3
- package/lib/Button/ButtonBase.js +2 -7
- package/lib/Button/ButtonDropdown.js +3 -3
- package/lib/Button/ButtonGroup.js +2 -4
- package/lib/Button/ButtonLink.js +3 -3
- package/lib/Card/Card.js +159 -16
- package/lib/Card/CardBase.js +2 -4
- package/lib/Card/PressableCardBase.js +3 -5
- package/lib/CardGroup/CardGroup.js +220 -0
- package/lib/CardGroup/dictionary.js +15 -0
- package/lib/CardGroup/index.js +10 -0
- package/lib/Carousel/Carousel.js +67 -57
- package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +2 -4
- package/lib/Carousel/CarouselItem/CarouselItem.js +3 -2
- package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +4 -2
- package/lib/Carousel/CarouselTabs/CarouselTabs.js +2 -4
- package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +6 -8
- package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +3 -5
- package/lib/Carousel/CarouselThumbnail.js +4 -2
- package/lib/Carousel/CarouselThumbnailNavigation.js +2 -4
- package/lib/Checkbox/Checkbox.js +2 -4
- package/lib/Checkbox/CheckboxButton.js +3 -5
- package/lib/Checkbox/CheckboxGroup.js +2 -4
- package/lib/Checkbox/CheckboxInput.js +4 -14
- package/lib/CheckboxCard/CheckboxCard.js +3 -3
- package/lib/CheckboxCardGroup/CheckboxCardGroup.js +3 -3
- package/lib/ColourToggle/ColourBubble.js +5 -6
- package/lib/ColourToggle/ColourToggle.js +3 -5
- package/lib/Divider/Divider.js +2 -4
- package/lib/ExpandCollapse/Accordion.js +2 -4
- package/lib/ExpandCollapse/Control.js +2 -4
- package/lib/ExpandCollapse/ExpandCollapse.js +2 -4
- package/lib/ExpandCollapse/Panel.js +3 -5
- package/lib/Feedback/Feedback.js +2 -4
- package/lib/Fieldset/Fieldset.js +2 -4
- package/lib/Fieldset/FieldsetContainer.js +2 -4
- package/lib/Fieldset/FieldsetContainer.native.js +2 -4
- package/lib/Fieldset/Legend.js +2 -4
- package/lib/Fieldset/Legend.native.js +2 -4
- package/lib/FlexGrid/Col/Col.js +3 -5
- package/lib/FlexGrid/FlexGrid.js +2 -4
- package/lib/FlexGrid/Row/Row.js +2 -4
- package/lib/Footnote/Footnote.js +9 -9
- package/lib/Footnote/FootnoteLink.js +9 -3
- package/lib/HorizontalScroll/HorizontalScroll.js +8 -10
- package/lib/HorizontalScroll/HorizontalScrollButton.js +2 -4
- package/lib/HorizontalScroll/ScrollViewEnd.js +5 -10
- package/lib/HorizontalScroll/ScrollViewEnd.native.js +2 -4
- package/lib/Icon/Icon.js +2 -4
- package/lib/Icon/IconText.js +3 -3
- package/lib/IconButton/IconButton.js +2 -4
- package/lib/InputLabel/InputLabel.js +2 -4
- package/lib/InputLabel/LabelContent.js +2 -4
- package/lib/InputLabel/LabelContent.native.js +2 -4
- package/lib/InputSupports/InputSupports.js +4 -5
- package/lib/Link/ChevronLink.js +2 -4
- package/lib/Link/InlinePressable.js +8 -7
- package/lib/Link/InlinePressable.native.js +10 -8
- package/lib/Link/Link.js +2 -4
- package/lib/Link/LinkBase.js +2 -4
- package/lib/Link/TextButton.js +2 -4
- package/lib/List/List.js +13 -11
- package/lib/List/ListItem.js +2 -4
- package/lib/List/ListItemBase.js +6 -10
- package/lib/List/ListItemContent.js +4 -2
- package/lib/List/ListItemMark.js +4 -2
- package/lib/List/PressableListItemBase.js +2 -4
- package/lib/Listbox/GroupControl.js +4 -2
- package/lib/Listbox/Listbox.js +6 -6
- package/lib/Listbox/ListboxContext.js +3 -4
- package/lib/Listbox/ListboxGroup.js +2 -4
- package/lib/Listbox/ListboxItem.js +2 -6
- package/lib/Listbox/ListboxOverlay.js +2 -6
- package/lib/Listbox/PressableItem.js +2 -6
- package/lib/Modal/Modal.js +5 -7
- package/lib/Modal/ModalContent.js +7 -7
- package/lib/Modal/WebModal.js +16 -9
- package/lib/MultiSelectFilter/ModalOverlay.js +2 -4
- package/lib/MultiSelectFilter/MultiSelectFilter.js +10 -10
- package/lib/Notification/Notification.js +5 -7
- package/lib/OrderedList/Item.js +4 -10
- package/lib/OrderedList/ItemBase.js +2 -4
- package/lib/OrderedList/OrderedList.js +5 -13
- package/lib/OrderedList/OrderedListBase.js +2 -4
- package/lib/Pagination/PageButton.js +1 -1
- package/lib/Pagination/Pagination.js +1 -1
- package/lib/Pagination/SideButton.js +2 -4
- package/lib/PriceLockup/PriceLockup.js +5 -5
- package/lib/ProductCard/ProductCard.js +3 -2
- package/lib/ProductCardGroup/ProductCardGroup.js +5 -6
- package/lib/Progress/Progress.js +2 -4
- package/lib/Progress/ProgressBar.js +2 -4
- package/lib/Progress/ProgressBarBackground.js +2 -4
- package/lib/QuickLinks/QuickLinks.js +2 -4
- package/lib/QuickLinks/QuickLinksCard.js +4 -2
- package/lib/QuickLinks/QuickLinksItem.js +2 -4
- package/lib/QuickLinksFeature/QuickLinksFeature.js +9 -7
- package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +10 -12
- package/lib/Radio/Radio.js +3 -3
- package/lib/Radio/RadioButton.js +61 -15
- package/lib/Radio/RadioGroup.js +2 -4
- package/lib/Radio/RadioInput.js +6 -18
- package/lib/RadioCard/RadioCard.js +3 -3
- package/lib/RadioCard/RadioCardGroup.js +3 -3
- package/lib/Responsive/Responsive.js +3 -2
- package/lib/Responsive/ResponsiveWithMediaQueryStyleSheet.js +3 -2
- package/lib/Search/Search.js +2 -4
- package/lib/Select/Group.js +4 -2
- package/lib/Select/Item.js +4 -2
- package/lib/Select/Picker.js +2 -4
- package/lib/Select/Picker.native.js +3 -5
- package/lib/Select/Select.js +4 -6
- package/lib/SideNav/Item.js +2 -4
- package/lib/SideNav/ItemContent.js +4 -2
- package/lib/SideNav/ItemsGroup.js +2 -4
- package/lib/SideNav/SideNav.js +2 -2
- package/lib/Skeleton/Skeleton.js +2 -4
- package/lib/SkipLink/SkipLink.js +2 -4
- package/lib/Spacer/Spacer.js +2 -4
- package/lib/StackView/StackView.js +2 -4
- package/lib/StackView/StackWrap.js +3 -5
- package/lib/StackView/StackWrapBox.js +2 -4
- package/lib/StackView/StackWrapGap.js +2 -4
- package/lib/StackView/getStackedContent.js +3 -3
- package/lib/StepTracker/Step.js +4 -2
- package/lib/StepTracker/StepTracker.js +2 -4
- package/lib/Tabs/Tabs.js +4 -4
- package/lib/Tabs/TabsItem.js +3 -5
- package/lib/Tags/Tags.js +2 -4
- package/lib/TextInput/TextArea.js +3 -5
- package/lib/TextInput/TextInput.js +2 -4
- package/lib/TextInput/TextInputBase.js +7 -9
- package/lib/ThemeProvider/ThemeProvider.js +5 -7
- package/lib/Timeline/Timeline.js +2 -4
- package/lib/ToggleSwitch/ToggleSwitch.js +2 -4
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +2 -4
- package/lib/Tooltip/Tooltip.js +6 -8
- package/lib/Tooltip/Tooltip.native.js +12 -14
- package/lib/TooltipButton/TooltipButton.js +4 -2
- package/lib/Typography/Typography.js +2 -4
- package/lib/Validator/Validator.js +11 -13
- package/lib/ViewportProvider/ViewportProvider.js +2 -4
- package/lib/index.js +8 -0
- package/lib/utils/BaseView/BaseView.js +2 -4
- package/lib/utils/children.js +4 -6
- package/lib/utils/withLinkRouter.js +3 -5
- package/lib-module/A11yInfoProvider/index.js +8 -8
- package/lib-module/A11yText/index.js +2 -2
- package/lib-module/ActivityIndicator/Spinner.js +2 -2
- package/lib-module/ActivityIndicator/Spinner.native.js +2 -2
- package/lib-module/Autocomplete/Autocomplete.js +13 -14
- package/lib-module/Autocomplete/Loading.js +4 -2
- package/lib-module/Autocomplete/Suggestions.js +2 -2
- package/lib-module/Badge/Badge.js +2 -2
- package/lib-module/BaseProvider/HydrationContext.js +5 -5
- package/lib-module/Box/Box.js +5 -5
- package/lib-module/Button/Button.js +2 -2
- package/lib-module/Button/ButtonBase.js +2 -5
- package/lib-module/Button/ButtonDropdown.js +2 -2
- package/lib-module/Button/ButtonGroup.js +2 -2
- package/lib-module/Button/ButtonLink.js +2 -2
- package/lib-module/Card/Card.js +159 -14
- package/lib-module/Card/CardBase.js +2 -2
- package/lib-module/Card/PressableCardBase.js +4 -4
- package/lib-module/CardGroup/CardGroup.js +210 -0
- package/lib-module/CardGroup/dictionary.js +8 -0
- package/lib-module/CardGroup/index.js +2 -0
- package/lib-module/Carousel/Carousel.js +67 -55
- package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +2 -2
- package/lib-module/Carousel/CarouselItem/CarouselItem.js +3 -2
- package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +4 -2
- package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +2 -2
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +6 -6
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +3 -3
- package/lib-module/Carousel/CarouselThumbnail.js +4 -2
- package/lib-module/Carousel/CarouselThumbnailNavigation.js +2 -2
- package/lib-module/Checkbox/Checkbox.js +2 -2
- package/lib-module/Checkbox/CheckboxButton.js +3 -3
- package/lib-module/Checkbox/CheckboxGroup.js +2 -2
- package/lib-module/Checkbox/CheckboxInput.js +4 -12
- package/lib-module/CheckboxCard/CheckboxCard.js +2 -2
- package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +2 -2
- package/lib-module/ColourToggle/ColourBubble.js +5 -4
- package/lib-module/ColourToggle/ColourToggle.js +3 -3
- package/lib-module/Divider/Divider.js +2 -2
- package/lib-module/ExpandCollapse/Accordion.js +2 -2
- package/lib-module/ExpandCollapse/Control.js +2 -2
- package/lib-module/ExpandCollapse/ExpandCollapse.js +2 -2
- package/lib-module/ExpandCollapse/Panel.js +3 -3
- package/lib-module/Feedback/Feedback.js +2 -2
- package/lib-module/Fieldset/Fieldset.js +2 -2
- package/lib-module/Fieldset/FieldsetContainer.js +2 -2
- package/lib-module/Fieldset/FieldsetContainer.native.js +2 -2
- package/lib-module/Fieldset/Legend.js +2 -2
- package/lib-module/Fieldset/Legend.native.js +2 -2
- package/lib-module/FlexGrid/Col/Col.js +3 -3
- package/lib-module/FlexGrid/FlexGrid.js +2 -2
- package/lib-module/FlexGrid/Row/Row.js +2 -2
- package/lib-module/Footnote/Footnote.js +9 -7
- package/lib-module/Footnote/FootnoteLink.js +9 -4
- package/lib-module/HorizontalScroll/HorizontalScroll.js +8 -8
- package/lib-module/HorizontalScroll/HorizontalScrollButton.js +2 -2
- package/lib-module/HorizontalScroll/ScrollViewEnd.js +5 -8
- package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +2 -2
- package/lib-module/Icon/Icon.js +2 -2
- package/lib-module/Icon/IconText.js +2 -2
- package/lib-module/IconButton/IconButton.js +2 -2
- package/lib-module/InputLabel/InputLabel.js +2 -2
- package/lib-module/InputLabel/LabelContent.js +2 -2
- package/lib-module/InputLabel/LabelContent.native.js +2 -2
- package/lib-module/InputSupports/InputSupports.js +4 -3
- package/lib-module/Link/ChevronLink.js +2 -2
- package/lib-module/Link/InlinePressable.js +10 -4
- package/lib-module/Link/InlinePressable.native.js +12 -6
- package/lib-module/Link/Link.js +2 -2
- package/lib-module/Link/LinkBase.js +2 -2
- package/lib-module/Link/TextButton.js +2 -2
- package/lib-module/List/List.js +13 -9
- package/lib-module/List/ListItem.js +2 -2
- package/lib-module/List/ListItemBase.js +6 -8
- package/lib-module/List/ListItemContent.js +4 -2
- package/lib-module/List/ListItemMark.js +4 -2
- package/lib-module/List/PressableListItemBase.js +2 -2
- package/lib-module/Listbox/GroupControl.js +4 -2
- package/lib-module/Listbox/Listbox.js +7 -7
- package/lib-module/Listbox/ListboxContext.js +2 -2
- package/lib-module/Listbox/ListboxGroup.js +2 -2
- package/lib-module/Listbox/ListboxItem.js +2 -3
- package/lib-module/Listbox/ListboxOverlay.js +2 -3
- package/lib-module/Listbox/PressableItem.js +2 -3
- package/lib-module/Modal/Modal.js +5 -5
- package/lib-module/Modal/ModalContent.js +7 -5
- package/lib-module/Modal/WebModal.js +16 -9
- package/lib-module/MultiSelectFilter/ModalOverlay.js +2 -2
- package/lib-module/MultiSelectFilter/MultiSelectFilter.js +10 -8
- package/lib-module/Notification/Notification.js +5 -5
- package/lib-module/OrderedList/Item.js +4 -8
- package/lib-module/OrderedList/ItemBase.js +2 -2
- package/lib-module/OrderedList/OrderedList.js +6 -12
- package/lib-module/OrderedList/OrderedListBase.js +2 -2
- package/lib-module/Pagination/PageButton.js +2 -2
- package/lib-module/Pagination/Pagination.js +2 -2
- package/lib-module/Pagination/SideButton.js +2 -2
- package/lib-module/PriceLockup/PriceLockup.js +5 -5
- package/lib-module/ProductCard/ProductCard.js +3 -2
- package/lib-module/ProductCardGroup/ProductCardGroup.js +5 -4
- package/lib-module/Progress/Progress.js +2 -2
- package/lib-module/Progress/ProgressBar.js +2 -2
- package/lib-module/Progress/ProgressBarBackground.js +2 -2
- package/lib-module/QuickLinks/QuickLinks.js +2 -2
- package/lib-module/QuickLinks/QuickLinksCard.js +4 -2
- package/lib-module/QuickLinks/QuickLinksItem.js +2 -2
- package/lib-module/QuickLinksFeature/QuickLinksFeature.js +9 -5
- package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +10 -10
- package/lib-module/Radio/Radio.js +2 -2
- package/lib-module/Radio/RadioButton.js +62 -14
- package/lib-module/Radio/RadioGroup.js +2 -2
- package/lib-module/Radio/RadioInput.js +6 -16
- package/lib-module/RadioCard/RadioCard.js +2 -2
- package/lib-module/RadioCard/RadioCardGroup.js +2 -2
- package/lib-module/Responsive/Responsive.js +3 -2
- package/lib-module/Responsive/ResponsiveWithMediaQueryStyleSheet.js +3 -2
- package/lib-module/Search/Search.js +2 -2
- package/lib-module/Select/Group.js +4 -2
- package/lib-module/Select/Item.js +4 -2
- package/lib-module/Select/Picker.js +2 -2
- package/lib-module/Select/Picker.native.js +3 -3
- package/lib-module/Select/Select.js +4 -4
- package/lib-module/SideNav/Item.js +2 -2
- package/lib-module/SideNav/ItemContent.js +4 -2
- package/lib-module/SideNav/ItemsGroup.js +2 -2
- package/lib-module/SideNav/SideNav.js +3 -3
- package/lib-module/Skeleton/Skeleton.js +2 -2
- package/lib-module/SkipLink/SkipLink.js +2 -2
- package/lib-module/Spacer/Spacer.js +2 -2
- package/lib-module/StackView/StackView.js +2 -2
- package/lib-module/StackView/StackWrap.js +3 -3
- package/lib-module/StackView/StackWrapBox.js +2 -2
- package/lib-module/StackView/StackWrapGap.js +2 -2
- package/lib-module/StackView/getStackedContent.js +4 -4
- package/lib-module/StepTracker/Step.js +4 -2
- package/lib-module/StepTracker/StepTracker.js +2 -2
- package/lib-module/Tabs/Tabs.js +3 -3
- package/lib-module/Tabs/TabsItem.js +3 -3
- package/lib-module/Tags/Tags.js +2 -2
- package/lib-module/TextInput/TextArea.js +3 -3
- package/lib-module/TextInput/TextInput.js +2 -2
- package/lib-module/TextInput/TextInputBase.js +7 -7
- package/lib-module/ThemeProvider/ThemeProvider.js +5 -5
- package/lib-module/Timeline/Timeline.js +2 -2
- package/lib-module/ToggleSwitch/ToggleSwitch.js +2 -2
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +2 -2
- package/lib-module/Tooltip/Tooltip.js +6 -6
- package/lib-module/Tooltip/Tooltip.native.js +12 -12
- package/lib-module/TooltipButton/TooltipButton.js +4 -2
- package/lib-module/Typography/Typography.js +2 -2
- package/lib-module/Validator/Validator.js +11 -11
- package/lib-module/ViewportProvider/ViewportProvider.js +2 -2
- package/lib-module/index.js +1 -0
- package/lib-module/utils/BaseView/BaseView.js +2 -2
- package/lib-module/utils/children.js +4 -4
- package/lib-module/utils/withLinkRouter.js +3 -3
- package/package.json +2 -2
- package/src/A11yInfoProvider/index.jsx +8 -8
- package/src/A11yText/index.jsx +2 -2
- package/src/ActivityIndicator/Spinner.jsx +2 -2
- package/src/ActivityIndicator/Spinner.native.jsx +2 -2
- package/src/Autocomplete/Autocomplete.jsx +15 -14
- package/src/Autocomplete/Loading.jsx +6 -3
- package/src/Autocomplete/Suggestions.jsx +2 -2
- package/src/Badge/Badge.jsx +2 -2
- package/src/BaseProvider/HydrationContext.jsx +5 -5
- package/src/Box/Box.jsx +5 -5
- package/src/Button/Button.jsx +11 -9
- package/src/Button/ButtonBase.jsx +2 -3
- package/src/Button/ButtonDropdown.jsx +2 -2
- package/src/Button/ButtonGroup.jsx +2 -2
- package/src/Button/ButtonLink.jsx +2 -2
- package/src/Card/Card.jsx +151 -11
- package/src/Card/CardBase.jsx +2 -2
- package/src/Card/PressableCardBase.jsx +18 -4
- package/src/CardGroup/CardGroup.jsx +249 -0
- package/src/CardGroup/dictionary.js +8 -0
- package/src/CardGroup/index.js +3 -0
- package/src/Carousel/Carousel.jsx +69 -53
- package/src/Carousel/CarouselFirstFocus/CarouselFirstFocus.jsx +2 -2
- package/src/Carousel/CarouselItem/CarouselItem.jsx +19 -17
- package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +5 -3
- package/src/Carousel/CarouselTabs/CarouselTabs.jsx +2 -2
- package/src/Carousel/CarouselTabs/CarouselTabsPanel.jsx +6 -6
- package/src/Carousel/CarouselTabs/CarouselTabsPanelItem.jsx +3 -3
- package/src/Carousel/CarouselThumbnail.jsx +6 -2
- package/src/Carousel/CarouselThumbnailNavigation.jsx +2 -2
- package/src/Checkbox/Checkbox.jsx +2 -2
- package/src/Checkbox/CheckboxButton.jsx +5 -7
- package/src/Checkbox/CheckboxGroup.jsx +2 -2
- package/src/Checkbox/CheckboxInput.jsx +15 -12
- package/src/CheckboxCard/CheckboxCard.jsx +2 -2
- package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +2 -2
- package/src/ColourToggle/ColourBubble.jsx +5 -4
- package/src/ColourToggle/ColourToggle.jsx +3 -3
- package/src/Divider/Divider.jsx +2 -2
- package/src/ExpandCollapse/Accordion.jsx +4 -2
- package/src/ExpandCollapse/Control.jsx +2 -2
- package/src/ExpandCollapse/ExpandCollapse.jsx +2 -2
- package/src/ExpandCollapse/Panel.jsx +3 -3
- package/src/Feedback/Feedback.jsx +2 -2
- package/src/Fieldset/Fieldset.jsx +2 -2
- package/src/Fieldset/FieldsetContainer.jsx +2 -2
- package/src/Fieldset/FieldsetContainer.native.jsx +2 -2
- package/src/Fieldset/Legend.jsx +2 -2
- package/src/Fieldset/Legend.native.jsx +2 -2
- package/src/FlexGrid/Col/Col.jsx +3 -3
- package/src/FlexGrid/FlexGrid.jsx +2 -2
- package/src/FlexGrid/Row/Row.jsx +2 -2
- package/src/Footnote/Footnote.jsx +111 -98
- package/src/Footnote/FootnoteLink.jsx +38 -31
- package/src/HorizontalScroll/HorizontalScroll.jsx +8 -8
- package/src/HorizontalScroll/HorizontalScrollButton.jsx +2 -2
- package/src/HorizontalScroll/ScrollViewEnd.jsx +4 -8
- package/src/HorizontalScroll/ScrollViewEnd.native.jsx +2 -2
- package/src/Icon/Icon.jsx +2 -2
- package/src/Icon/IconText.jsx +2 -2
- package/src/IconButton/IconButton.jsx +2 -2
- package/src/InputLabel/InputLabel.jsx +2 -2
- package/src/InputLabel/LabelContent.jsx +2 -2
- package/src/InputLabel/LabelContent.native.jsx +2 -2
- package/src/InputSupports/InputSupports.jsx +4 -3
- package/src/Link/ChevronLink.jsx +2 -2
- package/src/Link/InlinePressable.jsx +22 -15
- package/src/Link/InlinePressable.native.jsx +12 -6
- package/src/Link/Link.jsx +2 -2
- package/src/Link/LinkBase.jsx +2 -2
- package/src/Link/TextButton.jsx +2 -2
- package/src/List/List.jsx +15 -7
- package/src/List/ListItem.jsx +2 -2
- package/src/List/ListItemBase.jsx +6 -12
- package/src/List/ListItemContent.jsx +5 -2
- package/src/List/ListItemMark.jsx +5 -3
- package/src/List/PressableListItemBase.jsx +2 -2
- package/src/Listbox/GroupControl.jsx +5 -2
- package/src/Listbox/Listbox.jsx +7 -7
- package/src/Listbox/ListboxContext.js +2 -2
- package/src/Listbox/ListboxGroup.jsx +2 -2
- package/src/Listbox/ListboxItem.jsx +2 -3
- package/src/Listbox/ListboxOverlay.jsx +2 -3
- package/src/Listbox/PressableItem.jsx +2 -3
- package/src/Modal/Modal.jsx +5 -5
- package/src/Modal/ModalContent.jsx +132 -125
- package/src/Modal/WebModal.jsx +13 -8
- package/src/MultiSelectFilter/ModalOverlay.jsx +2 -2
- package/src/MultiSelectFilter/MultiSelectFilter.jsx +263 -252
- package/src/Notification/Notification.jsx +5 -5
- package/src/OrderedList/Item.jsx +4 -6
- package/src/OrderedList/ItemBase.jsx +2 -2
- package/src/OrderedList/OrderedList.jsx +4 -7
- package/src/OrderedList/OrderedListBase.jsx +2 -2
- package/src/Pagination/PageButton.jsx +2 -2
- package/src/Pagination/Pagination.jsx +2 -2
- package/src/Pagination/SideButton.jsx +2 -2
- package/src/PriceLockup/PriceLockup.jsx +93 -88
- package/src/ProductCard/ProductCard.jsx +90 -84
- package/src/ProductCardGroup/ProductCardGroup.jsx +5 -5
- package/src/Progress/Progress.jsx +2 -2
- package/src/Progress/ProgressBar.jsx +2 -2
- package/src/Progress/ProgressBarBackground.jsx +4 -2
- package/src/QuickLinks/QuickLinks.jsx +2 -2
- package/src/QuickLinks/QuickLinksCard.jsx +9 -3
- package/src/QuickLinks/QuickLinksItem.jsx +2 -2
- package/src/QuickLinksFeature/QuickLinksFeature.jsx +31 -27
- package/src/QuickLinksFeature/QuickLinksFeatureItem.jsx +3 -3
- package/src/Radio/Radio.jsx +2 -2
- package/src/Radio/RadioButton.jsx +58 -6
- package/src/Radio/RadioGroup.jsx +2 -2
- package/src/Radio/RadioInput.jsx +15 -14
- package/src/RadioCard/RadioCard.jsx +2 -2
- package/src/RadioCard/RadioCardGroup.jsx +2 -2
- package/src/Responsive/Responsive.jsx +8 -3
- package/src/Responsive/ResponsiveWithMediaQueryStyleSheet.jsx +23 -16
- package/src/Search/Search.jsx +2 -2
- package/src/Select/Group.jsx +9 -3
- package/src/Select/Item.jsx +7 -1
- package/src/Select/Picker.jsx +2 -2
- package/src/Select/Picker.native.jsx +3 -3
- package/src/Select/Select.jsx +4 -4
- package/src/SideNav/Item.jsx +2 -2
- package/src/SideNav/ItemContent.jsx +7 -3
- package/src/SideNav/ItemsGroup.jsx +2 -2
- package/src/SideNav/SideNav.jsx +3 -3
- package/src/Skeleton/Skeleton.jsx +2 -2
- package/src/SkipLink/SkipLink.jsx +2 -2
- package/src/Spacer/Spacer.jsx +2 -2
- package/src/StackView/StackView.jsx +2 -2
- package/src/StackView/StackWrap.jsx +3 -3
- package/src/StackView/StackWrapBox.jsx +2 -2
- package/src/StackView/StackWrapGap.jsx +2 -2
- package/src/StackView/getStackedContent.jsx +4 -4
- package/src/StepTracker/Step.jsx +75 -67
- package/src/StepTracker/StepTracker.jsx +2 -2
- package/src/Tabs/Tabs.jsx +3 -3
- package/src/Tabs/TabsItem.jsx +3 -3
- package/src/Tags/Tags.jsx +2 -2
- package/src/TextInput/TextArea.jsx +3 -3
- package/src/TextInput/TextInput.jsx +2 -2
- package/src/TextInput/TextInputBase.jsx +7 -7
- package/src/ThemeProvider/ThemeProvider.jsx +5 -5
- package/src/Timeline/Timeline.jsx +2 -2
- package/src/ToggleSwitch/ToggleSwitch.jsx +2 -2
- package/src/ToggleSwitch/ToggleSwitchGroup.jsx +2 -2
- package/src/Tooltip/Tooltip.jsx +6 -6
- package/src/Tooltip/Tooltip.native.jsx +12 -12
- package/src/TooltipButton/TooltipButton.jsx +5 -2
- package/src/Typography/Typography.jsx +2 -2
- package/src/Validator/Validator.jsx +11 -11
- package/src/ViewportProvider/ViewportProvider.jsx +2 -2
- package/src/index.js +1 -0
- package/src/utils/BaseView/BaseView.jsx +2 -2
- package/src/utils/children.jsx +4 -4
- package/src/utils/withLinkRouter.jsx +3 -3
- package/types/ExpandCollapse.d.ts +1 -1
package/lib/Card/Card.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _react =
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
10
10
|
var _ThemeProvider = require("../ThemeProvider");
|
|
@@ -13,11 +13,51 @@ var _ViewportProvider = require("../ViewportProvider");
|
|
|
13
13
|
var _props = require("../utils/props");
|
|
14
14
|
var _CardBase = _interopRequireDefault(require("./CardBase"));
|
|
15
15
|
var _PressableCardBase = _interopRequireDefault(require("./PressableCardBase"));
|
|
16
|
+
var _CheckboxButton = _interopRequireDefault(require("../Checkbox/CheckboxButton"));
|
|
17
|
+
var _RadioButton = _interopRequireDefault(require("../Radio/RadioButton"));
|
|
16
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
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); }
|
|
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; }
|
|
20
20
|
const [selectProps, selectedSystemPropTypes] = (0, _props.selectSystemProps)([_props.a11yProps, _props.viewProps]);
|
|
21
|
+
const SelectionType = {
|
|
22
|
+
Checkbox: 'checkbox',
|
|
23
|
+
Radio: 'radiogroup',
|
|
24
|
+
None: undefined
|
|
25
|
+
};
|
|
26
|
+
const selectInputStyle = _ref => {
|
|
27
|
+
let {
|
|
28
|
+
paddingTop,
|
|
29
|
+
paddingRight
|
|
30
|
+
} = _ref;
|
|
31
|
+
return {
|
|
32
|
+
position: 'absolute',
|
|
33
|
+
top: paddingTop,
|
|
34
|
+
right: paddingRight
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
const getInputProps = _ref2 => {
|
|
38
|
+
let {
|
|
39
|
+
id,
|
|
40
|
+
checkColor,
|
|
41
|
+
boxBackgroundColor,
|
|
42
|
+
checkBackgroundColor,
|
|
43
|
+
isControlled,
|
|
44
|
+
isChecked,
|
|
45
|
+
isInactive,
|
|
46
|
+
handleChange
|
|
47
|
+
} = _ref2;
|
|
48
|
+
return {
|
|
49
|
+
inputId: id,
|
|
50
|
+
tokens: {
|
|
51
|
+
iconColor: checkColor,
|
|
52
|
+
inputBackgroundColor: boxBackgroundColor,
|
|
53
|
+
iconBackgroundColor: checkBackgroundColor
|
|
54
|
+
},
|
|
55
|
+
isControlled,
|
|
56
|
+
isChecked,
|
|
57
|
+
inactive: isInactive,
|
|
58
|
+
handleChange
|
|
59
|
+
};
|
|
60
|
+
};
|
|
21
61
|
|
|
22
62
|
/**
|
|
23
63
|
* A basic card component, unstyled by default.
|
|
@@ -67,16 +107,18 @@ const [selectProps, selectedSystemPropTypes] = (0, _props.selectSystemProps)([_p
|
|
|
67
107
|
* you automatically make inaccessible its children, which may or may not be appropriate
|
|
68
108
|
* depending on what you are trying to achieve.
|
|
69
109
|
*/
|
|
70
|
-
const Card = /*#__PURE__*/
|
|
110
|
+
const Card = /*#__PURE__*/_react.default.forwardRef((_ref3, ref) => {
|
|
111
|
+
var _interactiveCard$vari, _interactiveCard$vari2;
|
|
71
112
|
let {
|
|
72
113
|
children,
|
|
73
114
|
tokens,
|
|
74
115
|
variant,
|
|
75
116
|
dataSet,
|
|
76
117
|
onPress,
|
|
118
|
+
id,
|
|
77
119
|
interactiveCard,
|
|
78
120
|
...rest
|
|
79
|
-
} =
|
|
121
|
+
} = _ref3;
|
|
80
122
|
const viewport = (0, _ViewportProvider.useViewport)();
|
|
81
123
|
const {
|
|
82
124
|
themeOptions
|
|
@@ -88,6 +130,9 @@ const Card = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
88
130
|
const themeTokens = useTokens('Card', tokens, variant, !enableMediaQueryStyleSheet && {
|
|
89
131
|
viewport
|
|
90
132
|
});
|
|
133
|
+
const selected = interactiveCard === null || interactiveCard === void 0 ? void 0 : (_interactiveCard$vari = interactiveCard.variant) === null || _interactiveCard$vari === void 0 ? void 0 : _interactiveCard$vari.selected;
|
|
134
|
+
const inactive = interactiveCard === null || interactiveCard === void 0 ? void 0 : (_interactiveCard$vari2 = interactiveCard.variant) === null || _interactiveCard$vari2 === void 0 ? void 0 : _interactiveCard$vari2.inactive;
|
|
135
|
+
const selectionType = interactiveCard === null || interactiveCard === void 0 ? void 0 : interactiveCard.selectionType;
|
|
91
136
|
const getThemeTokens = (0, _ThemeProvider.useThemeTokensCallback)('Card', interactiveCard === null || interactiveCard === void 0 ? void 0 : interactiveCard.tokens, {
|
|
92
137
|
interactive: true,
|
|
93
138
|
...((interactiveCard === null || interactiveCard === void 0 ? void 0 : interactiveCard.variant) || {})
|
|
@@ -100,7 +145,45 @@ const Card = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
100
145
|
paddingLeft,
|
|
101
146
|
paddingRight,
|
|
102
147
|
...restOfTokens
|
|
103
|
-
} = themeTokens;
|
|
148
|
+
} = selectionType ? getThemeTokens() : themeTokens;
|
|
149
|
+
const {
|
|
150
|
+
inputBackgroundColor,
|
|
151
|
+
iconBackgroundColor,
|
|
152
|
+
iconColor,
|
|
153
|
+
icon,
|
|
154
|
+
inputBorderRadius,
|
|
155
|
+
inputHeight,
|
|
156
|
+
inputWidth,
|
|
157
|
+
iconSize,
|
|
158
|
+
inputShadow,
|
|
159
|
+
inputBorderWidth,
|
|
160
|
+
inputBorderColor
|
|
161
|
+
} = getThemeTokens();
|
|
162
|
+
const checkboxTokens = {
|
|
163
|
+
inputBackgroundColor,
|
|
164
|
+
iconBackgroundColor,
|
|
165
|
+
icon,
|
|
166
|
+
iconColor,
|
|
167
|
+
inputBorderRadius,
|
|
168
|
+
inputHeight,
|
|
169
|
+
inputWidth,
|
|
170
|
+
iconSize,
|
|
171
|
+
inputShadow,
|
|
172
|
+
inputBorderWidth,
|
|
173
|
+
inputBorderColor
|
|
174
|
+
};
|
|
175
|
+
const radioTokens = {
|
|
176
|
+
iconBackgroundColor,
|
|
177
|
+
iconColor,
|
|
178
|
+
containerShadow: inputShadow,
|
|
179
|
+
icon,
|
|
180
|
+
inputBackgroundColor,
|
|
181
|
+
inputBorderRadius,
|
|
182
|
+
inputSize: inputHeight,
|
|
183
|
+
checkedSize: iconSize,
|
|
184
|
+
inputBorderWidth,
|
|
185
|
+
inputBorderColor
|
|
186
|
+
};
|
|
104
187
|
let cardStyles;
|
|
105
188
|
let mediaIds;
|
|
106
189
|
if (enableMediaQueryStyleSheet) {
|
|
@@ -116,6 +199,43 @@ const Card = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
116
199
|
} else {
|
|
117
200
|
cardStyles = themeTokens;
|
|
118
201
|
}
|
|
202
|
+
const renderInputPerSelectionType = props => {
|
|
203
|
+
switch (selectionType) {
|
|
204
|
+
case SelectionType.Checkbox:
|
|
205
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
206
|
+
style: selectInputStyle(getThemeTokens()),
|
|
207
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CheckboxButton.default, {
|
|
208
|
+
...props,
|
|
209
|
+
tokens: {
|
|
210
|
+
...checkboxTokens,
|
|
211
|
+
...(props === null || props === void 0 ? void 0 : props.tokens)
|
|
212
|
+
}
|
|
213
|
+
})
|
|
214
|
+
});
|
|
215
|
+
case SelectionType.Radio:
|
|
216
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
217
|
+
style: selectInputStyle(getThemeTokens()),
|
|
218
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadioButton.default, {
|
|
219
|
+
...props,
|
|
220
|
+
tokens: {
|
|
221
|
+
...radioTokens,
|
|
222
|
+
...(props === null || props === void 0 ? void 0 : props.tokens)
|
|
223
|
+
}
|
|
224
|
+
})
|
|
225
|
+
});
|
|
226
|
+
default:
|
|
227
|
+
return null;
|
|
228
|
+
}
|
|
229
|
+
};
|
|
230
|
+
const renderNoSelectionView = () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
231
|
+
style: {
|
|
232
|
+
paddingTop,
|
|
233
|
+
paddingBottom,
|
|
234
|
+
paddingLeft,
|
|
235
|
+
paddingRight
|
|
236
|
+
},
|
|
237
|
+
children: children
|
|
238
|
+
});
|
|
119
239
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
120
240
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardBase.default, {
|
|
121
241
|
ref: ref,
|
|
@@ -131,16 +251,31 @@ const Card = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
131
251
|
dataSet: dataSet,
|
|
132
252
|
onPress: onPress,
|
|
133
253
|
...selectProps(rest),
|
|
134
|
-
children:
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
254
|
+
children: cardState => {
|
|
255
|
+
const {
|
|
256
|
+
iconColor: checkColor,
|
|
257
|
+
inputBackgroundColor: boxBackgroundColor,
|
|
258
|
+
iconBackgroundColor: checkBackgroundColor
|
|
259
|
+
} = getThemeTokens({
|
|
260
|
+
...cardState,
|
|
261
|
+
selected,
|
|
262
|
+
interactive: true,
|
|
263
|
+
isControl: true
|
|
264
|
+
}, interactiveCard === null || interactiveCard === void 0 ? void 0 : interactiveCard.tokens);
|
|
265
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
266
|
+
children: [renderInputPerSelectionType(getInputProps({
|
|
267
|
+
id,
|
|
268
|
+
checkColor,
|
|
269
|
+
boxBackgroundColor,
|
|
270
|
+
checkBackgroundColor,
|
|
271
|
+
isControlled: true,
|
|
272
|
+
isChecked: selected || (cardState === null || cardState === void 0 ? void 0 : cardState.hover),
|
|
273
|
+
isInactive: inactive,
|
|
274
|
+
onPress
|
|
275
|
+
})), interactiveCard === null || interactiveCard === void 0 ? void 0 : interactiveCard.body]
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
}), children && selectionType !== SelectionType.None ? renderNoSelectionView() : null]
|
|
144
279
|
}) : children
|
|
145
280
|
})
|
|
146
281
|
});
|
|
@@ -165,15 +300,23 @@ Card.propTypes = {
|
|
|
165
300
|
* Note: This is only available when `interactiveCard` prop is used.
|
|
166
301
|
*/
|
|
167
302
|
onPress: _propTypes.default.func,
|
|
303
|
+
/**
|
|
304
|
+
* Card ID.
|
|
305
|
+
*/
|
|
306
|
+
id: _propTypes.default.string,
|
|
168
307
|
/**
|
|
169
308
|
* Object to set interactive card's properties
|
|
170
309
|
* - body: The body of the interactive card, can be any renderable node
|
|
171
310
|
* - tokens: The tokens to be used for the interactive card
|
|
311
|
+
* - selectionType: If the card has `isControl` variant set to `true`, the selectionType can have one of the following options:
|
|
312
|
+
- `radiogroup`
|
|
313
|
+
- `checkbox`
|
|
172
314
|
* - variant: The variant to be used for the interactive card
|
|
173
315
|
*/
|
|
174
316
|
interactiveCard: _propTypes.default.shape({
|
|
175
317
|
body: _propTypes.default.node,
|
|
176
318
|
tokens: (0, _utils.getTokensPropType)('Card'),
|
|
319
|
+
selectionType: _propTypes.default.oneOf(Object.values(SelectionType)),
|
|
177
320
|
variant: _utils.variantProp.propType
|
|
178
321
|
})
|
|
179
322
|
};
|
package/lib/Card/CardBase.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _react =
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
10
10
|
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
@@ -13,8 +13,6 @@ var _utils = require("../utils");
|
|
|
13
13
|
var _props = require("../utils/props");
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
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); }
|
|
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; }
|
|
18
16
|
const [selectProps, selectedSystemPropTypes] = (0, _props.selectSystemProps)([_props.a11yProps, _props.viewProps]);
|
|
19
17
|
|
|
20
18
|
// Ensure explicit selection of tokens
|
|
@@ -58,7 +56,7 @@ const selectStyles = _ref => {
|
|
|
58
56
|
* A themeless base component for Card which components can apply theme tokens to. Not
|
|
59
57
|
* intended to be used in apps or sites directly: build themed components on top of this.
|
|
60
58
|
*/
|
|
61
|
-
const CardBase = /*#__PURE__*/
|
|
59
|
+
const CardBase = /*#__PURE__*/_react.default.forwardRef((_ref2, ref) => {
|
|
62
60
|
let {
|
|
63
61
|
children,
|
|
64
62
|
tokens,
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.selectPressableCardTokens = exports.default = void 0;
|
|
7
|
-
var _react =
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _Pressable = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Pressable"));
|
|
10
10
|
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
@@ -14,10 +14,8 @@ var _utils = require("../utils");
|
|
|
14
14
|
var _CardBase = _interopRequireDefault(require("./CardBase"));
|
|
15
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
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); }
|
|
18
|
-
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; }
|
|
19
17
|
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.focusHandlerProps, _utils.viewProps]);
|
|
20
|
-
const tokenKeys = [
|
|
18
|
+
const tokenKeys = ['flex', 'backgroundColor', 'borderColor', 'gradient', 'borderRadius', 'borderWidth', 'paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop', 'minWidth', 'shadow', 'contentAlignItems', 'contentJustifyContent', 'contentFlexGrow', 'contentFlexShrink',
|
|
21
19
|
// Outer border tokens. TODO: centralise common token sets like these as part of
|
|
22
20
|
// https://github.com/telus/universal-design-system/issues/782
|
|
23
21
|
'outerBorderColor', 'outerBorderWidth', 'outerBorderGap'];
|
|
@@ -29,7 +27,7 @@ const selectPressableCardTokens = tokens => Object.fromEntries(tokenKeys.map(key
|
|
|
29
27
|
* apps or sites directly: build themed components on top of this.
|
|
30
28
|
*/
|
|
31
29
|
exports.selectPressableCardTokens = selectPressableCardTokens;
|
|
32
|
-
const PressableCardBase = /*#__PURE__*/
|
|
30
|
+
const PressableCardBase = /*#__PURE__*/_react.default.forwardRef((_ref, ref) => {
|
|
33
31
|
let {
|
|
34
32
|
children,
|
|
35
33
|
tokens,
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _utils = require("../utils");
|
|
10
|
+
var _dictionary = _interopRequireDefault(require("./dictionary"));
|
|
11
|
+
var _ViewportProvider = require("../ViewportProvider");
|
|
12
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
13
|
+
var _StackView = _interopRequireWildcard(require("../StackView"));
|
|
14
|
+
var _Card = _interopRequireDefault(require("../Card"));
|
|
15
|
+
var _Fieldset = _interopRequireDefault(require("../Fieldset"));
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
+
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); }
|
|
18
|
+
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; }
|
|
19
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
|
+
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
21
|
+
const [selectItemProps, selectedItemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.focusHandlerProps, _utils.viewProps]);
|
|
22
|
+
const uniqueFields = ['id'];
|
|
23
|
+
const CardGroup = /*#__PURE__*/_react.default.forwardRef((_ref, ref) => {
|
|
24
|
+
let {
|
|
25
|
+
copy = 'en',
|
|
26
|
+
tokens = {},
|
|
27
|
+
variant = {},
|
|
28
|
+
items = [],
|
|
29
|
+
validation,
|
|
30
|
+
feedback,
|
|
31
|
+
initialCheckedIds,
|
|
32
|
+
checkedIds,
|
|
33
|
+
onChange,
|
|
34
|
+
role = 'radiogroup',
|
|
35
|
+
isInactive,
|
|
36
|
+
name: inputGroupName,
|
|
37
|
+
dictionary = _dictionary.default,
|
|
38
|
+
...rest
|
|
39
|
+
} = _ref;
|
|
40
|
+
const getCopy = (0, _utils.useCopy)({
|
|
41
|
+
dictionary,
|
|
42
|
+
copy
|
|
43
|
+
});
|
|
44
|
+
const viewport = (0, _ViewportProvider.useViewport)();
|
|
45
|
+
const cardGroupTokens = (0, _ThemeProvider.useThemeTokens)('CardGroup', tokens, variant, {
|
|
46
|
+
viewport
|
|
47
|
+
});
|
|
48
|
+
const {
|
|
49
|
+
space,
|
|
50
|
+
fieldSpace,
|
|
51
|
+
direction,
|
|
52
|
+
showIcon,
|
|
53
|
+
outlineWidth,
|
|
54
|
+
borderTopLeftRadius,
|
|
55
|
+
borderTopRightRadius,
|
|
56
|
+
borderBottomLeftRadius,
|
|
57
|
+
borderBottomRightRadius,
|
|
58
|
+
outlineOffset,
|
|
59
|
+
paddingTop,
|
|
60
|
+
paddingBottom,
|
|
61
|
+
paddingLeft,
|
|
62
|
+
paddingRight
|
|
63
|
+
} = cardGroupTokens;
|
|
64
|
+
const borderTokens = {
|
|
65
|
+
outlineWidth,
|
|
66
|
+
borderTopLeftRadius,
|
|
67
|
+
borderTopRightRadius,
|
|
68
|
+
borderBottomLeftRadius,
|
|
69
|
+
borderBottomRightRadius,
|
|
70
|
+
outlineOffset
|
|
71
|
+
};
|
|
72
|
+
const singleSelection = role === 'radiogroup';
|
|
73
|
+
const inputControl = {
|
|
74
|
+
value: checkedIds,
|
|
75
|
+
initialValue: initialCheckedIds,
|
|
76
|
+
onChange,
|
|
77
|
+
readOnly: isInactive
|
|
78
|
+
};
|
|
79
|
+
const singleInputValue = (0, _utils.useInputValue)(inputControl);
|
|
80
|
+
const multipleInputValues = (0, _utils.useMultipleInputValues)(inputControl);
|
|
81
|
+
const StackContainer = direction === 'row' ? _StackView.StackWrap : _StackView.default;
|
|
82
|
+
if (!(0, _utils.containUniqueFields)(items, uniqueFields)) {
|
|
83
|
+
throw new Error(`CardGroup items must have unique ${uniqueFields.join(', ')}`);
|
|
84
|
+
}
|
|
85
|
+
const handleChange = _react.default.useCallback((checked, event, cardId, itemOnChange) => {
|
|
86
|
+
if (checked && singleSelection) {
|
|
87
|
+
singleInputValue.setValue(cardId, event);
|
|
88
|
+
} else {
|
|
89
|
+
multipleInputValues.toggleOneValue(cardId, event);
|
|
90
|
+
}
|
|
91
|
+
return itemOnChange === null || itemOnChange === void 0 ? void 0 : itemOnChange(checked, event);
|
|
92
|
+
}, [singleInputValue, multipleInputValues, singleSelection]);
|
|
93
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Fieldset.default, {
|
|
94
|
+
copy: copy,
|
|
95
|
+
ref: ref,
|
|
96
|
+
name: inputGroupName,
|
|
97
|
+
space: fieldSpace,
|
|
98
|
+
feedback: feedback,
|
|
99
|
+
validation: validation,
|
|
100
|
+
tokens: borderTokens,
|
|
101
|
+
inactive: isInactive,
|
|
102
|
+
showErrorBorder: true,
|
|
103
|
+
showIcon: showIcon,
|
|
104
|
+
accessibilityRole: role,
|
|
105
|
+
...selectProps(rest),
|
|
106
|
+
children: props => /*#__PURE__*/(0, _jsxRuntime.jsx)(StackContainer, {
|
|
107
|
+
space: space,
|
|
108
|
+
children: items.map((_ref2, index) => {
|
|
109
|
+
let {
|
|
110
|
+
id,
|
|
111
|
+
interactiveCard,
|
|
112
|
+
card,
|
|
113
|
+
onPress: itemOnChange,
|
|
114
|
+
...itemRest
|
|
115
|
+
} = _ref2;
|
|
116
|
+
const cardId = id || `${getCopy('prefixId')}[${index}]`;
|
|
117
|
+
const itemHandleChange = (checked, event) => handleChange(checked, event, cardId, itemOnChange);
|
|
118
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.default, {
|
|
119
|
+
id: cardId,
|
|
120
|
+
onPress: itemHandleChange,
|
|
121
|
+
interactiveCard: {
|
|
122
|
+
...interactiveCard,
|
|
123
|
+
tokens: {
|
|
124
|
+
paddingTop,
|
|
125
|
+
paddingBottom,
|
|
126
|
+
paddingLeft,
|
|
127
|
+
paddingRight,
|
|
128
|
+
...(interactiveCard === null || interactiveCard === void 0 ? void 0 : interactiveCard.tokens)
|
|
129
|
+
},
|
|
130
|
+
variant: {
|
|
131
|
+
isControl: true,
|
|
132
|
+
selected: singleSelection ? singleInputValue.currentValue === cardId : multipleInputValues.currentValues.includes(cardId),
|
|
133
|
+
inactive: isInactive
|
|
134
|
+
},
|
|
135
|
+
selectionType: role
|
|
136
|
+
},
|
|
137
|
+
...selectItemProps(itemRest),
|
|
138
|
+
...props,
|
|
139
|
+
children: card === null || card === void 0 ? void 0 : card.body
|
|
140
|
+
}, cardId);
|
|
141
|
+
})
|
|
142
|
+
})
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
CardGroup.displayName = 'CardGroup';
|
|
146
|
+
const dictionaryContentShape = _propTypes.default.shape({
|
|
147
|
+
prefixId: _propTypes.default.string.isRequired
|
|
148
|
+
});
|
|
149
|
+
CardGroup.propTypes = {
|
|
150
|
+
...selectedSystemPropTypes,
|
|
151
|
+
copy: _utils.copyPropTypes,
|
|
152
|
+
/**
|
|
153
|
+
* Override the default dictionary, by passing the complete dictionary object for `en` and `fr`
|
|
154
|
+
*/
|
|
155
|
+
dictionary: _propTypes.default.shape({
|
|
156
|
+
en: dictionaryContentShape,
|
|
157
|
+
fr: dictionaryContentShape
|
|
158
|
+
}),
|
|
159
|
+
/**
|
|
160
|
+
* Optional theme token overrides for the outer RadioCardGroup component
|
|
161
|
+
*/
|
|
162
|
+
tokens: (0, _utils.getTokensPropType)('CardGroup'),
|
|
163
|
+
/**
|
|
164
|
+
* Theme variants, shared between both RadioCardGroup and RadioCard
|
|
165
|
+
*/
|
|
166
|
+
variant: _utils.variantProp.propType,
|
|
167
|
+
/**
|
|
168
|
+
* Array of objects containing specifics for each Card to be rendered in the group.
|
|
169
|
+
*/
|
|
170
|
+
items: _propTypes.default.arrayOf(_propTypes.default.exact({
|
|
171
|
+
...selectedItemPropTypes,
|
|
172
|
+
id: _propTypes.default.string,
|
|
173
|
+
interactiveCard: _propTypes.default.object,
|
|
174
|
+
card: _propTypes.default.object,
|
|
175
|
+
onPress: _propTypes.default.func
|
|
176
|
+
})),
|
|
177
|
+
/**
|
|
178
|
+
* Current validation status of the group, passed to the feedback element if there is one.
|
|
179
|
+
*/
|
|
180
|
+
validation: _propTypes.default.oneOf(['error', 'success']),
|
|
181
|
+
/**
|
|
182
|
+
* If provided, a Feedback element is rendered containing this text.
|
|
183
|
+
*/
|
|
184
|
+
feedback: _propTypes.default.string,
|
|
185
|
+
/**
|
|
186
|
+
* If provided, the card with this id is selected on first render.
|
|
187
|
+
* If the role is radiogroup, it's a string
|
|
188
|
+
* If the role is checkbox, it's a array of string.
|
|
189
|
+
* Can have 'null' as value
|
|
190
|
+
*/
|
|
191
|
+
initialCheckedIds: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),
|
|
192
|
+
/**
|
|
193
|
+
* If not undefined, the card with this id is selected (or none is selected if `null`), and the
|
|
194
|
+
* element's selection state will be controlled by its parent using the `onChange` function.
|
|
195
|
+
* If the role is radiogroup, it's a string
|
|
196
|
+
* If the role is checkbox, it's a array of string.
|
|
197
|
+
* Can have 'null' as value
|
|
198
|
+
*/
|
|
199
|
+
checkedIds: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),
|
|
200
|
+
/**
|
|
201
|
+
* Function to call on change in selection state. Is required if the selection state is controlled
|
|
202
|
+
* by a parent using checkedId and the input is not readOnly.
|
|
203
|
+
*/
|
|
204
|
+
onChange: _propTypes.default.func,
|
|
205
|
+
/**
|
|
206
|
+
* Renders the card group like a radio card group or a checkbox card group
|
|
207
|
+
*/
|
|
208
|
+
role: _propTypes.default.oneOf(['radiogroup', 'checkbox']),
|
|
209
|
+
/**
|
|
210
|
+
* If true, the card cannot be interacted with, elements are set as `disabled` and if the
|
|
211
|
+
* theme supports `inactive` appearances rules, these are applied.
|
|
212
|
+
*/
|
|
213
|
+
isInactive: _propTypes.default.bool,
|
|
214
|
+
/**
|
|
215
|
+
* On Web, this is passed to the `name` attribute of the fieldset and each input.
|
|
216
|
+
*/
|
|
217
|
+
name: _propTypes.default.string
|
|
218
|
+
};
|
|
219
|
+
var _default = CardGroup;
|
|
220
|
+
exports.default = _default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _CardGroup = _interopRequireDefault(require("./CardGroup"));
|
|
8
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
|
+
var _default = _CardGroup.default;
|
|
10
|
+
exports.default = _default;
|