@telus-uds/components-base 1.96.0 → 1.97.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 +30 -2
- package/babel.config.cjs +35 -0
- package/{jest.config-android.js → jest.config-android.cjs} +1 -1
- package/{jest.config-ios.js → jest.config-ios.cjs} +1 -1
- package/{jest.config-web.js → jest.config-web.cjs} +1 -1
- package/jest.config.cjs +40 -0
- package/lib/A11yInfoProvider/index.js +29 -35
- package/lib/A11yText/index.js +16 -24
- package/lib/ActionCard/ActionCard.js +47 -55
- package/lib/ActionCard/index.js +2 -10
- package/lib/ActivityIndicator/Spinner.js +20 -28
- package/lib/ActivityIndicator/Spinner.native.js +32 -40
- package/lib/ActivityIndicator/index.js +18 -22
- package/lib/ActivityIndicator/shared.js +12 -23
- package/lib/Autocomplete/Autocomplete.js +90 -99
- package/lib/Autocomplete/Loading.js +14 -22
- package/lib/Autocomplete/Suggestions.js +23 -31
- package/lib/Autocomplete/constants.js +4 -14
- package/lib/Autocomplete/dictionary.js +2 -9
- package/lib/Autocomplete/index.js +2 -10
- package/lib/Badge/Badge.js +18 -26
- package/lib/Badge/index.js +2 -10
- package/lib/BaseProvider/HydrationContext.js +13 -23
- package/lib/BaseProvider/index.js +24 -29
- package/lib/Box/Box.js +60 -68
- package/lib/Box/backgroundImageStylesMap.js +2 -9
- package/lib/Box/index.js +2 -10
- package/lib/Button/Button.js +15 -25
- package/lib/Button/ButtonBase.js +37 -46
- package/lib/Button/ButtonDropdown.js +37 -47
- package/lib/Button/ButtonGroup.js +53 -61
- package/lib/Button/ButtonLink.js +21 -29
- package/lib/Button/index.js +5 -34
- package/lib/Button/propTypes.js +16 -25
- package/lib/Card/Card.js +47 -55
- package/lib/Card/CardBase.js +27 -35
- package/lib/Card/PressableCardBase.js +26 -35
- package/lib/Card/index.js +4 -33
- package/lib/CardGroup/CardGroup.js +45 -55
- package/lib/CardGroup/dictionary.js +2 -9
- package/lib/CardGroup/index.js +2 -10
- package/lib/Carousel/Carousel.js +138 -146
- package/lib/Carousel/CarouselContext.js +19 -27
- package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +15 -22
- package/lib/Carousel/CarouselItem/CarouselItem.js +44 -56
- package/lib/Carousel/CarouselItem/index.js +2 -10
- package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +12 -20
- package/lib/Carousel/CarouselStepTracker/index.js +2 -10
- package/lib/Carousel/CarouselTabs/CarouselTabs.js +16 -23
- package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +20 -28
- package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +23 -31
- package/lib/Carousel/CarouselTabs/index.js +2 -10
- package/lib/Carousel/CarouselThumbnail.js +19 -27
- package/lib/Carousel/CarouselThumbnailNavigation.js +22 -30
- package/lib/Carousel/dictionary.js +2 -9
- package/lib/Carousel/index.js +3 -36
- package/lib/Checkbox/Checkbox.js +52 -60
- package/lib/Checkbox/CheckboxButton.js +32 -41
- package/lib/Checkbox/CheckboxGroup.js +41 -49
- package/lib/Checkbox/CheckboxInput.js +15 -21
- package/lib/Checkbox/CheckboxInput.native.js +1 -8
- package/lib/Checkbox/index.js +3 -17
- package/lib/CheckboxCard/CheckboxCard.js +45 -55
- package/lib/CheckboxCard/index.js +2 -10
- package/lib/CheckboxCardGroup/CheckboxCardGroup.js +42 -52
- package/lib/CheckboxCardGroup/index.js +2 -10
- package/lib/ColourToggle/ColourBubble.js +23 -31
- package/lib/ColourToggle/ColourToggle.js +27 -35
- package/lib/ColourToggle/index.js +2 -10
- package/lib/Divider/Divider.js +23 -31
- package/lib/Divider/index.js +2 -10
- package/lib/DownloadApp/DownloadApp.js +32 -40
- package/lib/DownloadApp/dictionary.js +2 -9
- package/lib/DownloadApp/index.js +2 -10
- package/lib/ExpandCollapse/Accordion.js +7 -13
- package/lib/ExpandCollapse/Control.js +26 -34
- package/lib/ExpandCollapse/ExpandCollapse.js +22 -30
- package/lib/ExpandCollapse/Panel.js +43 -51
- package/lib/ExpandCollapse/dictionary.js +2 -9
- package/lib/ExpandCollapse/index.js +7 -20
- package/lib/Feedback/Feedback.js +33 -41
- package/lib/Feedback/index.js +2 -10
- package/lib/Fieldset/Fieldset.js +37 -43
- package/lib/Fieldset/FieldsetContainer.js +17 -25
- package/lib/Fieldset/FieldsetContainer.native.js +12 -20
- package/lib/Fieldset/Legend.js +10 -16
- package/lib/Fieldset/Legend.native.js +11 -17
- package/lib/Fieldset/cssReset.js +2 -9
- package/lib/Fieldset/index.js +2 -10
- package/lib/FileUpload/FileUpload.js +50 -58
- package/lib/FileUpload/NotificationContent.js +12 -18
- package/lib/FileUpload/dictionary.js +2 -9
- package/lib/FileUpload/index.js +2 -10
- package/lib/FlexGrid/Col/Col.js +35 -43
- package/lib/FlexGrid/Col/index.js +2 -10
- package/lib/FlexGrid/FlexGrid.js +38 -46
- package/lib/FlexGrid/Row/Row.js +24 -32
- package/lib/FlexGrid/Row/index.js +2 -10
- package/lib/FlexGrid/helpers/index.js +1 -8
- package/lib/FlexGrid/index.js +2 -10
- package/lib/FlexGrid/providers/GutterContext.js +3 -11
- package/lib/Footnote/Footnote.js +63 -71
- package/lib/Footnote/FootnoteLink.js +30 -38
- package/lib/Footnote/dictionary.js +2 -9
- package/lib/Footnote/index.js +4 -12
- package/lib/HorizontalScroll/HorizontalScroll.js +32 -41
- package/lib/HorizontalScroll/HorizontalScrollButton.js +25 -33
- package/lib/HorizontalScroll/ScrollViewEnd.js +12 -20
- package/lib/HorizontalScroll/ScrollViewEnd.native.js +9 -16
- package/lib/HorizontalScroll/dictionary.js +2 -9
- package/lib/HorizontalScroll/index.js +11 -28
- package/lib/HorizontalScroll/itemPositions.js +17 -27
- package/lib/Icon/Icon.js +21 -30
- package/lib/Icon/IconText.js +29 -39
- package/lib/Icon/index.js +4 -25
- package/lib/IconButton/IconButton.js +35 -42
- package/lib/IconButton/index.js +2 -10
- package/lib/InputLabel/InputLabel.js +38 -47
- package/lib/InputLabel/LabelContent.js +8 -16
- package/lib/InputLabel/LabelContent.native.js +8 -17
- package/lib/InputLabel/index.js +2 -10
- package/lib/InputSupports/InputSupports.js +27 -35
- package/lib/InputSupports/index.js +2 -10
- package/lib/InputSupports/useInputSupports.js +5 -13
- package/lib/Link/ChevronLink.js +22 -28
- package/lib/Link/InlinePressable.js +13 -19
- package/lib/Link/InlinePressable.native.js +14 -23
- package/lib/Link/Link.js +9 -17
- package/lib/Link/LinkBase.js +40 -48
- package/lib/Link/TextButton.js +16 -22
- package/lib/Link/index.js +5 -34
- package/lib/List/List.js +22 -30
- package/lib/List/ListItem.js +12 -18
- package/lib/List/ListItemBase.js +33 -40
- package/lib/List/ListItemContent.js +22 -31
- package/lib/List/ListItemMark.js +24 -33
- package/lib/List/PressableListItemBase.js +32 -40
- package/lib/List/index.js +5 -24
- package/lib/Listbox/GroupControl.js +29 -33
- package/lib/Listbox/Listbox.js +40 -50
- package/lib/Listbox/ListboxContext.js +4 -12
- package/lib/Listbox/ListboxGroup.js +31 -40
- package/lib/Listbox/ListboxItem.js +23 -31
- package/lib/Listbox/ListboxOverlay.js +26 -35
- package/lib/Listbox/PressableItem.js +22 -30
- package/lib/Listbox/index.js +2 -10
- package/lib/Modal/Modal.js +75 -85
- package/lib/Modal/ModalContent.js +51 -58
- package/lib/Modal/WebModal.js +15 -23
- package/lib/Modal/dictionary.js +2 -9
- package/lib/Modal/index.js +2 -10
- package/lib/MultiSelectFilter/ModalOverlay.js +45 -53
- package/lib/MultiSelectFilter/MultiSelectFilter.js +110 -118
- package/lib/MultiSelectFilter/dictionary.js +2 -9
- package/lib/MultiSelectFilter/index.js +2 -10
- package/lib/Notification/Notification.js +59 -67
- package/lib/Notification/dictionary.js +2 -9
- package/lib/Notification/index.js +2 -10
- package/lib/OrderedList/Item.js +31 -39
- package/lib/OrderedList/ItemBase.js +13 -22
- package/lib/OrderedList/OrderedList.js +17 -25
- package/lib/OrderedList/OrderedListBase.js +12 -21
- package/lib/OrderedList/index.js +2 -10
- package/lib/Pagination/PageButton.js +22 -32
- package/lib/Pagination/Pagination.js +48 -51
- package/lib/Pagination/SideButton.js +25 -32
- package/lib/Pagination/constants.js +3 -0
- package/lib/Pagination/dictionary.js +2 -9
- package/lib/Pagination/index.js +2 -10
- package/lib/Pagination/usePagination.js +14 -12
- package/lib/Portal/Portal.js +8 -15
- package/lib/Portal/Portal.native.js +2 -9
- package/lib/Portal/index.js +2 -10
- package/lib/PriceLockup/PriceLockup.js +37 -45
- package/lib/PriceLockup/index.js +2 -10
- package/lib/PriceLockup/utils/renderFootnoteContent.js +20 -28
- package/lib/PriceLockup/utils/renderFootnoteLinks.js +5 -13
- package/lib/PriceLockup/utils/renderPrice.js +30 -38
- package/lib/PriceLockup/utils/renderTypography.js +5 -13
- package/lib/ProductCard/ProductCard.js +62 -70
- package/lib/ProductCard/dictionary.js +2 -9
- package/lib/ProductCard/index.js +2 -10
- package/lib/ProductCardGroup/ProductCardGroup.js +20 -28
- package/lib/ProductCardGroup/index.js +2 -10
- package/lib/Progress/Progress.js +15 -23
- package/lib/Progress/ProgressBar.js +23 -31
- package/lib/Progress/ProgressBarBackground.js +10 -18
- package/lib/Progress/index.js +4 -12
- package/lib/QuickLinks/QuickLinks.js +23 -29
- package/lib/QuickLinks/QuickLinksCard.js +14 -20
- package/lib/QuickLinks/QuickLinksItem.js +22 -28
- package/lib/QuickLinks/index.js +4 -12
- package/lib/QuickLinksFeature/QuickLinksFeature.js +20 -27
- package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +31 -38
- package/lib/QuickLinksFeature/index.js +4 -12
- package/lib/Radio/Radio.js +43 -53
- package/lib/Radio/RadioButton.js +34 -43
- package/lib/Radio/RadioGroup.js +43 -51
- package/lib/Radio/RadioInput.js +15 -21
- package/lib/Radio/RadioInput.native.js +1 -8
- package/lib/Radio/index.js +3 -17
- package/lib/RadioCard/RadioCard.js +43 -53
- package/lib/RadioCard/RadioCardGroup.js +42 -52
- package/lib/RadioCard/index.js +3 -17
- package/lib/Responsive/Responsive.js +16 -22
- package/lib/Responsive/ResponsiveProp.js +13 -21
- package/lib/Responsive/ResponsiveWithMediaQueryStyleSheet.js +15 -23
- package/lib/Responsive/index.js +2 -10
- package/lib/Search/Search.js +47 -55
- package/lib/Search/dictionary.js +2 -9
- package/lib/Search/index.js +2 -10
- package/lib/Select/Group.js +9 -17
- package/lib/Select/Group.native.js +5 -13
- package/lib/Select/Item.js +8 -16
- package/lib/Select/Item.native.js +1 -8
- package/lib/Select/Picker.js +27 -35
- package/lib/Select/Picker.native.js +34 -41
- package/lib/Select/Select.js +45 -54
- package/lib/Select/constants.js +4 -14
- package/lib/Select/index.js +6 -14
- package/lib/SideNav/Item.js +29 -37
- package/lib/SideNav/ItemContent.js +17 -26
- package/lib/SideNav/ItemsGroup.js +25 -32
- package/lib/SideNav/SideNav.js +28 -38
- package/lib/SideNav/index.js +1 -13
- package/lib/Skeleton/Skeleton.js +32 -40
- package/lib/Skeleton/index.js +2 -10
- package/lib/Skeleton/skeleton.constant.js +2 -10
- package/lib/Skeleton/skeletonWebAnimation.js +1 -8
- package/lib/Skeleton/useSkeletonNativeAnimation.js +14 -22
- package/lib/SkipLink/SkipLink.js +24 -33
- package/lib/SkipLink/index.js +2 -10
- package/lib/Spacer/Spacer.js +15 -21
- package/lib/Spacer/index.js +2 -10
- package/lib/StackView/StackView.js +28 -36
- package/lib/StackView/StackWrap.js +14 -21
- package/lib/StackView/StackWrap.native.js +2 -9
- package/lib/StackView/StackWrapBox.js +27 -35
- package/lib/StackView/StackWrapGap.js +22 -30
- package/lib/StackView/common.js +4 -13
- package/lib/StackView/getStackedContent.js +14 -22
- package/lib/StackView/index.js +5 -24
- package/lib/Status/Status.js +27 -35
- package/lib/Status/index.js +2 -10
- package/lib/StepTracker/Step.js +35 -43
- package/lib/StepTracker/StepTracker.js +38 -46
- package/lib/StepTracker/dictionary.js +2 -9
- package/lib/StepTracker/index.js +2 -10
- package/lib/TabBar/TabBar.js +28 -36
- package/lib/TabBar/TabBarItem.js +33 -42
- package/lib/TabBar/index.js +2 -10
- package/lib/Tabs/Tabs.js +38 -48
- package/lib/Tabs/TabsItem.js +45 -53
- package/lib/Tabs/index.js +2 -10
- package/lib/Tags/Tags.js +47 -55
- package/lib/Tags/index.js +2 -10
- package/lib/TextInput/TextArea.js +19 -27
- package/lib/TextInput/TextInput.js +18 -26
- package/lib/TextInput/TextInputBase.js +64 -73
- package/lib/TextInput/dictionary.js +2 -9
- package/lib/TextInput/index.js +3 -20
- package/lib/TextInput/propTypes.js +8 -15
- package/lib/ThemeProvider/ThemeProvider.js +25 -36
- package/lib/ThemeProvider/index.js +7 -60
- package/lib/ThemeProvider/useResponsiveThemeTokens.js +10 -18
- package/lib/ThemeProvider/useSetTheme.js +5 -12
- package/lib/ThemeProvider/useTheme.js +4 -11
- package/lib/ThemeProvider/useThemeTokens.js +15 -24
- package/lib/ThemeProvider/utils/index.js +2 -27
- package/lib/ThemeProvider/utils/styles.js +12 -24
- package/lib/ThemeProvider/utils/theme-tokens.js +19 -34
- package/lib/Timeline/Timeline.js +28 -34
- package/lib/Timeline/index.js +2 -10
- package/lib/ToggleSwitch/ToggleSwitch.js +40 -48
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +43 -51
- package/lib/ToggleSwitch/index.js +3 -20
- package/lib/Tooltip/Backdrop.js +8 -16
- package/lib/Tooltip/Backdrop.native.js +16 -22
- package/lib/Tooltip/Tooltip.js +42 -50
- package/lib/Tooltip/Tooltip.native.js +80 -61
- package/lib/Tooltip/dictionary.js +2 -9
- package/lib/Tooltip/getTooltipPosition.js +1 -9
- package/lib/Tooltip/index.js +5 -13
- package/lib/Tooltip/shared.js +17 -20
- package/lib/TooltipButton/TooltipButton.js +25 -33
- package/lib/TooltipButton/index.js +2 -10
- package/lib/Typography/Typography.js +39 -46
- package/lib/Typography/index.js +2 -10
- package/lib/Validator/Validator.js +42 -50
- package/lib/Validator/index.js +2 -10
- package/lib/ViewportProvider/ViewportProvider.js +13 -19
- package/lib/ViewportProvider/index.js +3 -23
- package/lib/ViewportProvider/useViewport.js +3 -11
- package/lib/ViewportProvider/useViewportListener.js +10 -17
- package/lib/index.js +71 -772
- package/lib/server.js +4 -40
- package/lib/utils/BaseView/BaseView.js +14 -20
- package/lib/utils/BaseView/BaseView.native.js +2 -10
- package/lib/utils/BaseView/index.js +2 -10
- package/lib/utils/a11y/index.js +2 -27
- package/lib/utils/a11y/semantics.js +11 -35
- package/lib/utils/a11y/textSize.js +7 -16
- package/lib/utils/animation/index.js +2 -13
- package/lib/utils/animation/useVerticalExpandAnimation.js +19 -26
- package/lib/utils/children.js +12 -20
- package/lib/utils/containUniqueFields.js +1 -8
- package/lib/utils/convertFromMegaByteToByte.js +1 -7
- package/lib/utils/floating-ui/index.js +1 -42
- package/lib/utils/floating-ui/index.native.js +1 -42
- package/lib/utils/formatImageSource.js +1 -8
- package/lib/utils/hasOwnProperty.js +1 -7
- package/lib/utils/htmlAttrs.js +11 -19
- package/lib/utils/index.js +25 -245
- package/lib/utils/info/index.js +6 -13
- package/lib/utils/info/platform/index.js +8 -13
- package/lib/utils/info/platform/platform.android.js +1 -8
- package/lib/utils/info/platform/platform.ios.js +1 -8
- package/lib/utils/info/platform/platform.js +1 -8
- package/lib/utils/info/platform/platform.native.js +1 -8
- package/lib/utils/info/versions.js +4 -11
- package/lib/utils/input.js +13 -21
- package/lib/utils/pressability.js +14 -22
- package/lib/utils/props/a11yProps.js +90 -98
- package/lib/utils/props/clickProps.js +4 -12
- package/lib/utils/props/componentPropType.js +1 -7
- package/lib/utils/props/copyPropTypes.js +2 -10
- package/lib/utils/props/getPropSelector.js +6 -11
- package/lib/utils/props/handlerProps.js +23 -31
- package/lib/utils/props/hrefAttrsProp.js +6 -13
- package/lib/utils/props/index.js +19 -168
- package/lib/utils/props/inputSupportsProps.js +12 -20
- package/lib/utils/props/linkProps.js +16 -24
- package/lib/utils/props/paddingProp.js +8 -16
- package/lib/utils/props/pressProps.js +22 -31
- package/lib/utils/props/rectProp.js +8 -16
- package/lib/utils/props/responsiveProps.js +5 -13
- package/lib/utils/props/selectSystemProps.js +1 -7
- package/lib/utils/props/spacingProps.js +12 -19
- package/lib/utils/props/textInputProps.js +56 -62
- package/lib/utils/props/textProps.js +18 -24
- package/lib/utils/props/tokens.js +16 -26
- package/lib/utils/props/variantProp.js +4 -11
- package/lib/utils/props/viewProps.js +10 -18
- package/lib/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +8 -16
- package/lib/utils/ssr-media-query/create-stylesheet/index.android.js +2 -10
- package/lib/utils/ssr-media-query/create-stylesheet/index.ios.js +2 -10
- package/lib/utils/ssr-media-query/create-stylesheet/index.js +12 -20
- package/lib/utils/ssr-media-query/hash.js +1 -7
- package/lib/utils/ssr-media-query/index.js +4 -17
- package/lib/utils/ssr-media-query/utils/common.js +1 -12
- package/lib/utils/ssr-media-query/utils/create-declaration-block.js +6 -14
- package/lib/utils/ssr-media-query/utils/create-media-query-styles.js +5 -12
- package/lib/utils/ssr-media-query/utils/hyphenate-style-name.js +1 -8
- package/lib/utils/ssr-media-query/utils/inject.js +8 -18
- package/lib/utils/ssr.js +19 -28
- package/lib/utils/transformGradient.js +3 -11
- package/lib/utils/useCopy.js +2 -10
- package/lib/utils/useHash.js +7 -14
- package/lib/utils/useHash.native.js +1 -8
- package/lib/utils/useOverlaidPosition.js +17 -25
- package/lib/utils/useResponsiveProp.js +10 -19
- package/lib/utils/useSafeLayoutEffect.js +6 -13
- package/lib/utils/useScrollBlocking.js +10 -17
- package/lib/utils/useScrollBlocking.native.js +1 -8
- package/lib/utils/useSpacingScale.js +7 -14
- package/lib/utils/useUniqueId.js +3 -10
- package/lib/utils/withLinkRouter.js +13 -19
- package/package.json +20 -25
- package/src/A11yInfoProvider/index.jsx +5 -2
- package/src/ActivityIndicator/index.jsx +12 -3
- package/src/BaseProvider/index.jsx +5 -2
- package/src/Carousel/Carousel.jsx +1 -1
- package/src/Carousel/CarouselItem/CarouselItem.jsx +16 -22
- package/src/Icon/IconText.jsx +0 -1
- package/src/InputLabel/InputLabel.jsx +2 -3
- package/src/List/ListItemBase.jsx +6 -1
- package/src/Listbox/GroupControl.jsx +6 -1
- package/src/Modal/ModalContent.jsx +3 -2
- package/src/Pagination/Pagination.jsx +9 -2
- package/src/Pagination/constants.js +3 -0
- package/src/Pagination/usePagination.js +14 -3
- package/src/TextInput/TextInputBase.jsx +1 -1
- package/src/Timeline/Timeline.jsx +6 -2
- package/src/Tooltip/Tooltip.native.jsx +31 -3
- package/src/Tooltip/shared.js +5 -0
- package/src/index.js +9 -10
- package/src/utils/a11y/semantics.js +0 -7
- package/types/FileUpload.d.ts +40 -0
- package/types/index.d.ts +3 -0
- package/lib-module/A11yInfoProvider/index.js +0 -62
- package/lib-module/A11yText/index.js +0 -68
- package/lib-module/ActionCard/ActionCard.js +0 -343
- package/lib-module/ActionCard/index.js +0 -2
- package/lib-module/ActivityIndicator/Spinner.js +0 -80
- package/lib-module/ActivityIndicator/Spinner.native.js +0 -144
- package/lib-module/ActivityIndicator/index.js +0 -44
- package/lib-module/ActivityIndicator/shared.js +0 -14
- package/lib-module/Autocomplete/Autocomplete.js +0 -481
- package/lib-module/Autocomplete/Loading.js +0 -36
- package/lib-module/Autocomplete/Suggestions.js +0 -66
- package/lib-module/Autocomplete/constants.js +0 -4
- package/lib-module/Autocomplete/dictionary.js +0 -12
- package/lib-module/Autocomplete/index.js +0 -2
- package/lib-module/Badge/Badge.js +0 -102
- package/lib-module/Badge/index.js +0 -2
- package/lib-module/BaseProvider/HydrationContext.js +0 -48
- package/lib-module/BaseProvider/index.js +0 -38
- package/lib-module/Box/Box.js +0 -379
- package/lib-module/Box/backgroundImageStylesMap.js +0 -94
- package/lib-module/Box/index.js +0 -2
- package/lib-module/Button/Button.js +0 -34
- package/lib-module/Button/ButtonBase.js +0 -347
- package/lib-module/Button/ButtonDropdown.js +0 -173
- package/lib-module/Button/ButtonGroup.js +0 -272
- package/lib-module/Button/ButtonLink.js +0 -50
- package/lib-module/Button/index.js +0 -5
- package/lib-module/Button/propTypes.js +0 -46
- package/lib-module/Card/Card.js +0 -330
- package/lib-module/Card/CardBase.js +0 -114
- package/lib-module/Card/PressableCardBase.js +0 -112
- package/lib-module/Card/index.js +0 -4
- package/lib-module/CardGroup/CardGroup.js +0 -210
- package/lib-module/CardGroup/dictionary.js +0 -8
- package/lib-module/CardGroup/index.js +0 -2
- package/lib-module/Carousel/Carousel.js +0 -894
- package/lib-module/Carousel/CarouselContext.js +0 -51
- package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +0 -53
- package/lib-module/Carousel/CarouselItem/CarouselItem.js +0 -150
- package/lib-module/Carousel/CarouselItem/index.js +0 -2
- package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -54
- package/lib-module/Carousel/CarouselStepTracker/index.js +0 -2
- package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +0 -50
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +0 -89
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +0 -118
- package/lib-module/Carousel/CarouselTabs/index.js +0 -2
- package/lib-module/Carousel/CarouselThumbnail.js +0 -113
- package/lib-module/Carousel/CarouselThumbnailNavigation.js +0 -71
- package/lib-module/Carousel/dictionary.js +0 -22
- package/lib-module/Carousel/index.js +0 -3
- package/lib-module/Checkbox/Checkbox.js +0 -343
- package/lib-module/Checkbox/CheckboxButton.js +0 -164
- package/lib-module/Checkbox/CheckboxGroup.js +0 -240
- package/lib-module/Checkbox/CheckboxInput.js +0 -50
- package/lib-module/Checkbox/CheckboxInput.native.js +0 -5
- package/lib-module/Checkbox/index.js +0 -3
- package/lib-module/CheckboxCard/CheckboxCard.js +0 -183
- package/lib-module/CheckboxCard/index.js +0 -2
- package/lib-module/CheckboxCardGroup/CheckboxCardGroup.js +0 -206
- package/lib-module/CheckboxCardGroup/index.js +0 -2
- package/lib-module/ColourToggle/ColourBubble.js +0 -126
- package/lib-module/ColourToggle/ColourToggle.js +0 -92
- package/lib-module/ColourToggle/index.js +0 -2
- package/lib-module/Divider/Divider.js +0 -133
- package/lib-module/Divider/index.js +0 -2
- package/lib-module/DownloadApp/DownloadApp.js +0 -160
- package/lib-module/DownloadApp/dictionary.js +0 -10
- package/lib-module/DownloadApp/index.js +0 -2
- package/lib-module/ExpandCollapse/Accordion.js +0 -15
- package/lib-module/ExpandCollapse/Control.js +0 -165
- package/lib-module/ExpandCollapse/ExpandCollapse.js +0 -98
- package/lib-module/ExpandCollapse/Panel.js +0 -242
- package/lib-module/ExpandCollapse/dictionary.js +0 -10
- package/lib-module/ExpandCollapse/index.js +0 -7
- package/lib-module/Feedback/Feedback.js +0 -161
- package/lib-module/Feedback/index.js +0 -2
- package/lib-module/Fieldset/Fieldset.js +0 -194
- package/lib-module/Fieldset/FieldsetContainer.js +0 -48
- package/lib-module/Fieldset/FieldsetContainer.native.js +0 -32
- package/lib-module/Fieldset/Legend.js +0 -24
- package/lib-module/Fieldset/Legend.native.js +0 -31
- package/lib-module/Fieldset/cssReset.js +0 -14
- package/lib-module/Fieldset/index.js +0 -2
- package/lib-module/FileUpload/FileUpload.js +0 -329
- package/lib-module/FileUpload/NotificationContent.js +0 -55
- package/lib-module/FileUpload/dictionary.js +0 -40
- package/lib-module/FileUpload/index.js +0 -2
- package/lib-module/FlexGrid/Col/Col.js +0 -257
- package/lib-module/FlexGrid/Col/index.js +0 -2
- package/lib-module/FlexGrid/FlexGrid.js +0 -158
- package/lib-module/FlexGrid/Row/Row.js +0 -181
- package/lib-module/FlexGrid/Row/index.js +0 -2
- package/lib-module/FlexGrid/helpers/index.js +0 -15
- package/lib-module/FlexGrid/index.js +0 -2
- package/lib-module/FlexGrid/providers/GutterContext.js +0 -3
- package/lib-module/Footnote/Footnote.js +0 -317
- package/lib-module/Footnote/FootnoteLink.js +0 -107
- package/lib-module/Footnote/dictionary.js +0 -12
- package/lib-module/Footnote/index.js +0 -4
- package/lib-module/HorizontalScroll/HorizontalScroll.js +0 -165
- package/lib-module/HorizontalScroll/HorizontalScrollButton.js +0 -79
- package/lib-module/HorizontalScroll/ScrollViewEnd.js +0 -46
- package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -26
- package/lib-module/HorizontalScroll/dictionary.js +0 -11
- package/lib-module/HorizontalScroll/index.js +0 -11
- package/lib-module/HorizontalScroll/itemPositions.js +0 -113
- package/lib-module/Icon/Icon.js +0 -93
- package/lib-module/Icon/IconText.js +0 -114
- package/lib-module/Icon/index.js +0 -4
- package/lib-module/IconButton/IconButton.js +0 -203
- package/lib-module/IconButton/index.js +0 -2
- package/lib-module/InputLabel/InputLabel.js +0 -146
- package/lib-module/InputLabel/LabelContent.js +0 -28
- package/lib-module/InputLabel/LabelContent.native.js +0 -18
- package/lib-module/InputLabel/index.js +0 -2
- package/lib-module/InputSupports/InputSupports.js +0 -108
- package/lib-module/InputSupports/index.js +0 -2
- package/lib-module/InputSupports/useInputSupports.js +0 -31
- package/lib-module/Link/ChevronLink.js +0 -68
- package/lib-module/Link/InlinePressable.js +0 -48
- package/lib-module/Link/InlinePressable.native.js +0 -87
- package/lib-module/Link/Link.js +0 -28
- package/lib-module/Link/LinkBase.js +0 -269
- package/lib-module/Link/TextButton.js +0 -43
- package/lib-module/Link/index.js +0 -5
- package/lib-module/List/List.js +0 -77
- package/lib-module/List/ListItem.js +0 -32
- package/lib-module/List/ListItemBase.js +0 -164
- package/lib-module/List/ListItemContent.js +0 -73
- package/lib-module/List/ListItemMark.js +0 -126
- package/lib-module/List/PressableListItemBase.js +0 -112
- package/lib-module/List/index.js +0 -5
- package/lib-module/Listbox/GroupControl.js +0 -102
- package/lib-module/Listbox/Listbox.js +0 -172
- package/lib-module/Listbox/ListboxContext.js +0 -4
- package/lib-module/Listbox/ListboxGroup.js +0 -125
- package/lib-module/Listbox/ListboxItem.js +0 -76
- package/lib-module/Listbox/ListboxOverlay.js +0 -78
- package/lib-module/Listbox/PressableItem.js +0 -140
- package/lib-module/Listbox/index.js +0 -2
- package/lib-module/Modal/Modal.js +0 -373
- package/lib-module/Modal/ModalContent.js +0 -179
- package/lib-module/Modal/WebModal.js +0 -76
- package/lib-module/Modal/dictionary.js +0 -9
- package/lib-module/Modal/index.js +0 -2
- package/lib-module/MultiSelectFilter/ModalOverlay.js +0 -156
- package/lib-module/MultiSelectFilter/MultiSelectFilter.js +0 -526
- package/lib-module/MultiSelectFilter/dictionary.js +0 -12
- package/lib-module/MultiSelectFilter/index.js +0 -2
- package/lib-module/Notification/Notification.js +0 -429
- package/lib-module/Notification/dictionary.js +0 -8
- package/lib-module/Notification/index.js +0 -2
- package/lib-module/OrderedList/Item.js +0 -160
- package/lib-module/OrderedList/ItemBase.js +0 -43
- package/lib-module/OrderedList/OrderedList.js +0 -64
- package/lib-module/OrderedList/OrderedListBase.js +0 -36
- package/lib-module/OrderedList/index.js +0 -2
- package/lib-module/Pagination/PageButton.js +0 -74
- package/lib-module/Pagination/Pagination.js +0 -211
- package/lib-module/Pagination/SideButton.js +0 -113
- package/lib-module/Pagination/dictionary.js +0 -18
- package/lib-module/Pagination/index.js +0 -2
- package/lib-module/Pagination/usePagination.js +0 -69
- package/lib-module/Portal/Portal.js +0 -50
- package/lib-module/Portal/Portal.native.js +0 -2
- package/lib-module/Portal/index.js +0 -2
- package/lib-module/PriceLockup/PriceLockup.js +0 -225
- package/lib-module/PriceLockup/index.js +0 -2
- package/lib-module/PriceLockup/utils/renderFootnoteContent.js +0 -87
- package/lib-module/PriceLockup/utils/renderFootnoteLinks.js +0 -28
- package/lib-module/PriceLockup/utils/renderPrice.js +0 -141
- package/lib-module/PriceLockup/utils/renderTypography.js +0 -23
- package/lib-module/ProductCard/ProductCard.js +0 -232
- package/lib-module/ProductCard/dictionary.js +0 -38
- package/lib-module/ProductCard/index.js +0 -2
- package/lib-module/ProductCardGroup/ProductCardGroup.js +0 -70
- package/lib-module/ProductCardGroup/index.js +0 -2
- package/lib-module/Progress/Progress.js +0 -88
- package/lib-module/Progress/ProgressBar.js +0 -133
- package/lib-module/Progress/ProgressBarBackground.js +0 -40
- package/lib-module/Progress/index.js +0 -4
- package/lib-module/QuickLinks/QuickLinks.js +0 -78
- package/lib-module/QuickLinks/QuickLinksCard.js +0 -33
- package/lib-module/QuickLinks/QuickLinksItem.js +0 -51
- package/lib-module/QuickLinks/index.js +0 -4
- package/lib-module/QuickLinksFeature/QuickLinksFeature.js +0 -69
- package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +0 -147
- package/lib-module/QuickLinksFeature/index.js +0 -4
- package/lib-module/Radio/Radio.js +0 -283
- package/lib-module/Radio/RadioButton.js +0 -184
- package/lib-module/Radio/RadioGroup.js +0 -255
- package/lib-module/Radio/RadioInput.js +0 -50
- package/lib-module/Radio/RadioInput.native.js +0 -5
- package/lib-module/Radio/index.js +0 -3
- package/lib-module/RadioCard/RadioCard.js +0 -211
- package/lib-module/RadioCard/RadioCardGroup.js +0 -257
- package/lib-module/RadioCard/index.js +0 -3
- package/lib-module/Responsive/Responsive.js +0 -65
- package/lib-module/Responsive/ResponsiveProp.js +0 -39
- package/lib-module/Responsive/ResponsiveWithMediaQueryStyleSheet.js +0 -68
- package/lib-module/Responsive/index.js +0 -2
- package/lib-module/Search/Search.js +0 -242
- package/lib-module/Search/dictionary.js +0 -12
- package/lib-module/Search/index.js +0 -2
- package/lib-module/Select/Group.js +0 -24
- package/lib-module/Select/Group.native.js +0 -16
- package/lib-module/Select/Item.js +0 -23
- package/lib-module/Select/Item.native.js +0 -2
- package/lib-module/Select/Picker.js +0 -97
- package/lib-module/Select/Picker.native.js +0 -120
- package/lib-module/Select/Select.js +0 -337
- package/lib-module/Select/constants.js +0 -5
- package/lib-module/Select/index.js +0 -6
- package/lib-module/SideNav/Item.js +0 -143
- package/lib-module/SideNav/ItemContent.js +0 -50
- package/lib-module/SideNav/ItemsGroup.js +0 -121
- package/lib-module/SideNav/SideNav.js +0 -131
- package/lib-module/SideNav/index.js +0 -1
- package/lib-module/Skeleton/Skeleton.js +0 -177
- package/lib-module/Skeleton/index.js +0 -2
- package/lib-module/Skeleton/skeleton.constant.js +0 -2
- package/lib-module/Skeleton/skeletonWebAnimation.js +0 -14
- package/lib-module/Skeleton/useSkeletonNativeAnimation.js +0 -28
- package/lib-module/SkipLink/SkipLink.js +0 -190
- package/lib-module/SkipLink/index.js +0 -2
- package/lib-module/Spacer/Spacer.js +0 -95
- package/lib-module/Spacer/index.js +0 -2
- package/lib-module/StackView/StackView.js +0 -126
- package/lib-module/StackView/StackWrap.js +0 -51
- package/lib-module/StackView/StackWrap.native.js +0 -4
- package/lib-module/StackView/StackWrapBox.js +0 -114
- package/lib-module/StackView/StackWrapGap.js +0 -61
- package/lib-module/StackView/common.js +0 -35
- package/lib-module/StackView/getStackedContent.js +0 -123
- package/lib-module/StackView/index.js +0 -5
- package/lib-module/Status/Status.js +0 -167
- package/lib-module/Status/index.js +0 -2
- package/lib-module/StepTracker/Step.js +0 -265
- package/lib-module/StepTracker/StepTracker.js +0 -208
- package/lib-module/StepTracker/dictionary.js +0 -30
- package/lib-module/StepTracker/index.js +0 -2
- package/lib-module/TabBar/TabBar.js +0 -125
- package/lib-module/TabBar/TabBarItem.js +0 -177
- package/lib-module/TabBar/index.js +0 -2
- package/lib-module/Tabs/Tabs.js +0 -179
- package/lib-module/Tabs/TabsItem.js +0 -239
- package/lib-module/Tabs/index.js +0 -2
- package/lib-module/Tags/Tags.js +0 -245
- package/lib-module/Tags/index.js +0 -2
- package/lib-module/TextInput/TextArea.js +0 -97
- package/lib-module/TextInput/TextInput.js +0 -80
- package/lib-module/TextInput/TextInputBase.js +0 -436
- package/lib-module/TextInput/dictionary.js +0 -12
- package/lib-module/TextInput/index.js +0 -3
- package/lib-module/TextInput/propTypes.js +0 -34
- package/lib-module/ThemeProvider/ThemeProvider.js +0 -84
- package/lib-module/ThemeProvider/index.js +0 -7
- package/lib-module/ThemeProvider/useResponsiveThemeTokens.js +0 -81
- package/lib-module/ThemeProvider/useSetTheme.js +0 -24
- package/lib-module/ThemeProvider/useTheme.js +0 -11
- package/lib-module/ThemeProvider/useThemeTokens.js +0 -109
- package/lib-module/ThemeProvider/utils/index.js +0 -2
- package/lib-module/ThemeProvider/utils/styles.js +0 -198
- package/lib-module/ThemeProvider/utils/theme-tokens.js +0 -160
- package/lib-module/Timeline/Timeline.js +0 -168
- package/lib-module/Timeline/index.js +0 -2
- package/lib-module/ToggleSwitch/ToggleSwitch.js +0 -280
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +0 -208
- package/lib-module/ToggleSwitch/index.js +0 -3
- package/lib-module/Tooltip/Backdrop.js +0 -50
- package/lib-module/Tooltip/Backdrop.native.js +0 -41
- package/lib-module/Tooltip/Tooltip.js +0 -280
- package/lib-module/Tooltip/Tooltip.native.js +0 -328
- package/lib-module/Tooltip/dictionary.js +0 -8
- package/lib-module/Tooltip/getTooltipPosition.js +0 -170
- package/lib-module/Tooltip/index.js +0 -5
- package/lib-module/Tooltip/shared.js +0 -36
- package/lib-module/TooltipButton/TooltipButton.js +0 -90
- package/lib-module/TooltipButton/index.js +0 -2
- package/lib-module/Typography/Typography.js +0 -254
- package/lib-module/Typography/index.js +0 -2
- package/lib-module/Validator/Validator.js +0 -222
- package/lib-module/Validator/index.js +0 -2
- package/lib-module/ViewportProvider/ViewportProvider.js +0 -27
- package/lib-module/ViewportProvider/index.js +0 -3
- package/lib-module/ViewportProvider/useViewport.js +0 -3
- package/lib-module/ViewportProvider/useViewportListener.js +0 -37
- package/lib-module/index.js +0 -76
- package/lib-module/server.js +0 -4
- package/lib-module/utils/BaseView/BaseView.js +0 -42
- package/lib-module/utils/BaseView/BaseView.native.js +0 -5
- package/lib-module/utils/BaseView/index.js +0 -2
- package/lib-module/utils/a11y/index.js +0 -2
- package/lib-module/utils/a11y/semantics.js +0 -144
- package/lib-module/utils/a11y/textSize.js +0 -35
- package/lib-module/utils/animation/index.js +0 -2
- package/lib-module/utils/animation/useVerticalExpandAnimation.js +0 -86
- package/lib-module/utils/children.js +0 -117
- package/lib-module/utils/containUniqueFields.js +0 -24
- package/lib-module/utils/convertFromMegaByteToByte.js +0 -10
- package/lib-module/utils/floating-ui/index.js +0 -1
- package/lib-module/utils/floating-ui/index.native.js +0 -1
- package/lib-module/utils/formatImageSource.js +0 -27
- package/lib-module/utils/hasOwnProperty.js +0 -11
- package/lib-module/utils/htmlAttrs.js +0 -23
- package/lib-module/utils/index.js +0 -25
- package/lib-module/utils/info/index.js +0 -8
- package/lib-module/utils/info/platform/index.js +0 -14
- package/lib-module/utils/info/platform/platform.android.js +0 -1
- package/lib-module/utils/info/platform/platform.ios.js +0 -1
- package/lib-module/utils/info/platform/platform.js +0 -1
- package/lib-module/utils/info/platform/platform.native.js +0 -4
- package/lib-module/utils/info/versions.js +0 -6
- package/lib-module/utils/input.js +0 -185
- package/lib-module/utils/pressability.js +0 -112
- package/lib-module/utils/props/a11yProps.js +0 -310
- package/lib-module/utils/props/clickProps.js +0 -25
- package/lib-module/utils/props/componentPropType.js +0 -50
- package/lib-module/utils/props/copyPropTypes.js +0 -2
- package/lib-module/utils/props/getPropSelector.js +0 -52
- package/lib-module/utils/props/handlerProps.js +0 -105
- package/lib-module/utils/props/hrefAttrsProp.js +0 -33
- package/lib-module/utils/props/index.js +0 -19
- package/lib-module/utils/props/inputSupportsProps.js +0 -68
- package/lib-module/utils/props/linkProps.js +0 -43
- package/lib-module/utils/props/paddingProp.js +0 -9
- package/lib-module/utils/props/pressProps.js +0 -42
- package/lib-module/utils/props/rectProp.js +0 -9
- package/lib-module/utils/props/responsiveProps.js +0 -28
- package/lib-module/utils/props/selectSystemProps.js +0 -23
- package/lib-module/utils/props/spacingProps.js +0 -57
- package/lib-module/utils/props/textInputProps.js +0 -188
- package/lib-module/utils/props/textProps.js +0 -61
- package/lib-module/utils/props/tokens.js +0 -130
- package/lib-module/utils/props/variantProp.js +0 -18
- package/lib-module/utils/props/viewProps.js +0 -21
- package/lib-module/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +0 -48
- package/lib-module/utils/ssr-media-query/create-stylesheet/index.android.js +0 -2
- package/lib-module/utils/ssr-media-query/create-stylesheet/index.ios.js +0 -2
- package/lib-module/utils/ssr-media-query/create-stylesheet/index.js +0 -36
- package/lib-module/utils/ssr-media-query/hash.js +0 -13
- package/lib-module/utils/ssr-media-query/index.js +0 -6
- package/lib-module/utils/ssr-media-query/utils/common.js +0 -33
- package/lib-module/utils/ssr-media-query/utils/create-declaration-block.js +0 -16
- package/lib-module/utils/ssr-media-query/utils/create-media-query-styles.js +0 -60
- package/lib-module/utils/ssr-media-query/utils/hyphenate-style-name.js +0 -12
- package/lib-module/utils/ssr-media-query/utils/inject.js +0 -39
- package/lib-module/utils/ssr.js +0 -142
- package/lib-module/utils/transformGradient.js +0 -15
- package/lib-module/utils/useCopy.js +0 -42
- package/lib-module/utils/useHash.js +0 -41
- package/lib-module/utils/useHash.native.js +0 -6
- package/lib-module/utils/useOverlaidPosition.js +0 -214
- package/lib-module/utils/useResponsiveProp.js +0 -45
- package/lib-module/utils/useSafeLayoutEffect.js +0 -28
- package/lib-module/utils/useScrollBlocking.js +0 -51
- package/lib-module/utils/useScrollBlocking.native.js +0 -2
- package/lib-module/utils/useSpacingScale.js +0 -123
- package/lib-module/utils/useUniqueId.js +0 -11
- package/lib-module/utils/withLinkRouter.js +0 -84
|
@@ -1,24 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
var _IconButton = _interopRequireDefault(require("../IconButton"));
|
|
16
|
-
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
17
|
-
var _utils = require("../utils");
|
|
18
|
-
var _dictionary = _interopRequireDefault(require("./dictionary"));
|
|
19
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
-
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.textInputHandlerProps, _utils.textInputProps, _utils.viewProps]);
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import Platform from "react-native-web/dist/exports/Platform";
|
|
4
|
+
import StyleSheet from "react-native-web/dist/exports/StyleSheet";
|
|
5
|
+
import NativeTextInput from "react-native-web/dist/exports/TextInput";
|
|
6
|
+
import View from "react-native-web/dist/exports/View";
|
|
7
|
+
import { applyTextStyles, useTheme, useThemeTokens, applyOuterBorder } from '../ThemeProvider';
|
|
8
|
+
import StackView from '../StackView';
|
|
9
|
+
import IconButton from '../IconButton';
|
|
10
|
+
import Icon from '../Icon';
|
|
11
|
+
import { a11yProps, getTokensPropType, selectSystemProps, textInputHandlerProps, textInputProps, useCopy, useInputValue, useSpacingScale, variantProp, viewProps } from '../utils';
|
|
12
|
+
import dictionary from './dictionary';
|
|
13
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, textInputHandlerProps, textInputProps, viewProps]);
|
|
22
15
|
const selectInputStyles = function (_ref, themeOptions, inactive, type) {
|
|
23
16
|
let {
|
|
24
17
|
backgroundColor,
|
|
@@ -47,7 +40,7 @@ const selectInputStyles = function (_ref, themeOptions, inactive, type) {
|
|
|
47
40
|
// Subtract border width from padding so overall input width/height doesn't
|
|
48
41
|
// jump around if the border width changes (avoiding NaN and negative padding)
|
|
49
42
|
const offsetBorder = value => typeof value === 'number' ? Math.max(0, value - borderWidth) : value;
|
|
50
|
-
const textStyles =
|
|
43
|
+
const textStyles = applyTextStyles({
|
|
51
44
|
fontName: isPassword ? undefined : fontName,
|
|
52
45
|
// In this case, we don't want to apply the fontName to the input if it's a password because Monotype don't have support for the masked characters in mobile.
|
|
53
46
|
fontSize,
|
|
@@ -63,14 +56,13 @@ const selectInputStyles = function (_ref, themeOptions, inactive, type) {
|
|
|
63
56
|
}
|
|
64
57
|
const minHeight = linesToHeight(minLines);
|
|
65
58
|
const maxHeight = linesToHeight(maxLines);
|
|
66
|
-
const webStyles =
|
|
59
|
+
const webStyles = Platform.select({
|
|
67
60
|
web: {
|
|
68
61
|
outline: 'none',
|
|
69
62
|
cursor: inactive ? 'not-allowed' : undefined,
|
|
70
63
|
resize: minHeight !== maxHeight ? 'vertical' : 'none' // does nothing for an input, only needed for textarea
|
|
71
64
|
}
|
|
72
65
|
});
|
|
73
|
-
|
|
74
66
|
const buttonSpacing = isPassword ? buttonsGapSize : -buttonsGapSize;
|
|
75
67
|
const adjustedPaddingRight = paddingRight + (buttonCount ? 1 : 0) * (buttonSize + buttonSpacing);
|
|
76
68
|
const adjustedPaddingWithButtons = buttonCount > 1 ? paddingRight : adjustedPaddingRight;
|
|
@@ -102,7 +94,7 @@ const selectOuterBorderStyles = _ref2 => {
|
|
|
102
94
|
} = _ref2;
|
|
103
95
|
return {
|
|
104
96
|
background: outerBackgroundColor,
|
|
105
|
-
...
|
|
97
|
+
...applyOuterBorder({
|
|
106
98
|
outerBorderColor,
|
|
107
99
|
outerBorderWidth,
|
|
108
100
|
borderRadius
|
|
@@ -180,7 +172,7 @@ const getIcon = function () {
|
|
|
180
172
|
testID: 'mastercard'
|
|
181
173
|
};
|
|
182
174
|
if (visaRange) selectedIcon = objVisaIcon;else if (amexRange) selectedIcon = objAmexIcon;else if (masterCardRange) selectedIcon = objMasterCardIcon;
|
|
183
|
-
return /*#__PURE__*/(
|
|
175
|
+
return /*#__PURE__*/_jsx(Icon, {
|
|
184
176
|
icon: selectedIcon.icon,
|
|
185
177
|
variant: {
|
|
186
178
|
size: 'large'
|
|
@@ -188,7 +180,7 @@ const getIcon = function () {
|
|
|
188
180
|
testID: selectedIcon.testID
|
|
189
181
|
});
|
|
190
182
|
};
|
|
191
|
-
const TextInputBase = /*#__PURE__*/
|
|
183
|
+
const TextInputBase = /*#__PURE__*/React.forwardRef((_ref7, ref) => {
|
|
192
184
|
let {
|
|
193
185
|
buttons = [],
|
|
194
186
|
copy = 'en',
|
|
@@ -211,8 +203,8 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
211
203
|
onKeyPress,
|
|
212
204
|
...rest
|
|
213
205
|
} = _ref7;
|
|
214
|
-
const [isFocused, setIsFocused] =
|
|
215
|
-
const [showPassword, setShowPassword] =
|
|
206
|
+
const [isFocused, setIsFocused] = React.useState(false);
|
|
207
|
+
const [showPassword, setShowPassword] = React.useState(false);
|
|
216
208
|
const handleFocus = event => {
|
|
217
209
|
setIsFocused(true);
|
|
218
210
|
if (typeof onFocus === 'function') onFocus(event);
|
|
@@ -221,7 +213,7 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
221
213
|
setIsFocused(false);
|
|
222
214
|
if (typeof onBlur === 'function') onBlur(event);
|
|
223
215
|
};
|
|
224
|
-
const [isHovered, setIsHovered] =
|
|
216
|
+
const [isHovered, setIsHovered] = React.useState(false);
|
|
225
217
|
const handleMouseOver = event => {
|
|
226
218
|
setIsHovered(true);
|
|
227
219
|
if (typeof onMouseOver === 'function') onMouseOver(event);
|
|
@@ -230,7 +222,7 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
230
222
|
setIsHovered(false);
|
|
231
223
|
if (typeof onMouseOut === 'function') onMouseOut(event);
|
|
232
224
|
};
|
|
233
|
-
const defaultRef =
|
|
225
|
+
const defaultRef = React.useRef();
|
|
234
226
|
const inputRef = ref ?? defaultRef;
|
|
235
227
|
const {
|
|
236
228
|
currentValue,
|
|
@@ -238,7 +230,7 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
238
230
|
setValue,
|
|
239
231
|
isControlled,
|
|
240
232
|
isDirty
|
|
241
|
-
} =
|
|
233
|
+
} = useInputValue({
|
|
242
234
|
value,
|
|
243
235
|
initialValue,
|
|
244
236
|
inputRef,
|
|
@@ -252,8 +244,8 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
252
244
|
const isNumeric = numeric || type === 'card' || type === 'number';
|
|
253
245
|
const isPassword = password || type === 'password';
|
|
254
246
|
const element = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current;
|
|
255
|
-
|
|
256
|
-
if (
|
|
247
|
+
React.useEffect(() => {
|
|
248
|
+
if (Platform.OS === 'web' && pattern && element) {
|
|
257
249
|
// React Native Web doesn't support `pattern`, so we have to attach it via a ref,
|
|
258
250
|
// which a `pattern` user must provide anyway to call .checkValidity() on the element.
|
|
259
251
|
element.pattern = pattern;
|
|
@@ -277,12 +269,12 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
277
269
|
hover: isHovered,
|
|
278
270
|
inactive
|
|
279
271
|
};
|
|
280
|
-
const themeTokens =
|
|
272
|
+
const themeTokens = useThemeTokens('TextInput', tokens, variant, states);
|
|
281
273
|
const handleClear = event => {
|
|
282
274
|
var _inputRef$current;
|
|
283
|
-
onClear === null || onClear === void 0
|
|
275
|
+
onClear === null || onClear === void 0 || onClear(event);
|
|
284
276
|
resetValue(event);
|
|
285
|
-
inputRef === null || inputRef === void 0
|
|
277
|
+
inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
|
|
286
278
|
};
|
|
287
279
|
const handleShowOrHide = () => {
|
|
288
280
|
if (!variant.inactive) setShowPassword(!showPassword);
|
|
@@ -298,14 +290,14 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
298
290
|
visaIcon,
|
|
299
291
|
masterCardIcon
|
|
300
292
|
} = themeTokens;
|
|
301
|
-
const buttonsGapSize =
|
|
302
|
-
const getCopy =
|
|
303
|
-
dictionary
|
|
293
|
+
const buttonsGapSize = useSpacingScale(buttonsGap);
|
|
294
|
+
const getCopy = useCopy({
|
|
295
|
+
dictionary,
|
|
304
296
|
copy
|
|
305
297
|
});
|
|
306
298
|
const textInputButtons = buttons;
|
|
307
299
|
if (onClear && isDirty) {
|
|
308
|
-
textInputButtons === null || textInputButtons === void 0
|
|
300
|
+
textInputButtons === null || textInputButtons === void 0 || textInputButtons.unshift(/*#__PURE__*/_jsx(IconButton, {
|
|
309
301
|
accessibilityLabel: getCopy('clearButtonAccessibilityLabel'),
|
|
310
302
|
icon: ClearButtonIcon,
|
|
311
303
|
onPress: handleClear,
|
|
@@ -315,7 +307,7 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
315
307
|
}, "clear"));
|
|
316
308
|
}
|
|
317
309
|
if (isPassword) {
|
|
318
|
-
textInputButtons === null || textInputButtons === void 0
|
|
310
|
+
textInputButtons === null || textInputButtons === void 0 || textInputButtons.unshift(/*#__PURE__*/_jsx(IconButton, {
|
|
319
311
|
accessibilityLabel: !showPassword ? getCopy('hidePasswordAccessibilityLabel') : getCopy('showPasswordAccessibilityLabel'),
|
|
320
312
|
icon: !showPassword ? passwordShowButtonIcon : passwordHideButtonIcon,
|
|
321
313
|
onPress: handleShowOrHide,
|
|
@@ -346,14 +338,14 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
346
338
|
};
|
|
347
339
|
const {
|
|
348
340
|
themeOptions
|
|
349
|
-
} =
|
|
341
|
+
} = useTheme();
|
|
350
342
|
const nativeInputStyle = selectInputStyles({
|
|
351
343
|
...themeTokens,
|
|
352
344
|
height
|
|
353
345
|
}, themeOptions, inactive, type, buttons === null || buttons === void 0 ? void 0 : buttons.length, themeTokens.buttonSize, buttonsGapSize, isPassword);
|
|
354
|
-
return /*#__PURE__*/(
|
|
346
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
355
347
|
style: selectOuterBorderStyles(themeTokens),
|
|
356
|
-
children: [type === 'card' && /*#__PURE__*/(
|
|
348
|
+
children: [type === 'card' && /*#__PURE__*/_jsx(View, {
|
|
357
349
|
pointerEvents: "none",
|
|
358
350
|
style: [staticStyles.leftIconContainer, selectLeftIconContainerStyles(themeTokens)],
|
|
359
351
|
children: getIcon(currentValue, {
|
|
@@ -362,26 +354,26 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
362
354
|
visaIcon,
|
|
363
355
|
masterCardIcon
|
|
364
356
|
})
|
|
365
|
-
}), /*#__PURE__*/(
|
|
357
|
+
}), /*#__PURE__*/_jsx(NativeTextInput, {
|
|
366
358
|
ref: inputRef,
|
|
367
359
|
keyboardType: isNumeric ? 'numeric' : 'default',
|
|
368
|
-
inputMode: isNumeric
|
|
360
|
+
inputMode: isNumeric ? 'numeric' : undefined,
|
|
369
361
|
style: nativeInputStyle,
|
|
370
362
|
secureTextEntry: isPassword && !showPassword,
|
|
371
363
|
...inputProps
|
|
372
|
-
}), IconComponent && /*#__PURE__*/(
|
|
364
|
+
}), IconComponent && /*#__PURE__*/_jsx(View, {
|
|
373
365
|
pointerEvents: "none" // avoid hijacking input press events
|
|
374
366
|
,
|
|
375
367
|
style: [staticStyles.rightIconContainer, selectIconContainerStyles({
|
|
376
368
|
...themeTokens,
|
|
377
369
|
buttonsGapSize
|
|
378
370
|
}, buttons === null || buttons === void 0 ? void 0 : buttons.length)],
|
|
379
|
-
children: /*#__PURE__*/(
|
|
371
|
+
children: /*#__PURE__*/_jsx(IconComponent, {
|
|
380
372
|
...selectIconTokens(themeTokens)
|
|
381
373
|
})
|
|
382
|
-
}), (buttons === null || buttons === void 0 ? void 0 : buttons.length) > 0 && /*#__PURE__*/(
|
|
374
|
+
}), (buttons === null || buttons === void 0 ? void 0 : buttons.length) > 0 && /*#__PURE__*/_jsx(View, {
|
|
383
375
|
style: [staticStyles.buttonsContainer, selectButtonsContainerStyle(themeTokens)],
|
|
384
|
-
children: /*#__PURE__*/(
|
|
376
|
+
children: /*#__PURE__*/_jsx(StackView, {
|
|
385
377
|
direction: "row",
|
|
386
378
|
space: buttonsGap,
|
|
387
379
|
children: textInputButtons
|
|
@@ -392,34 +384,33 @@ const TextInputBase = /*#__PURE__*/_react.default.forwardRef((_ref7, ref) => {
|
|
|
392
384
|
TextInputBase.displayName = 'TextInputBase';
|
|
393
385
|
TextInputBase.propTypes = {
|
|
394
386
|
...selectedSystemPropTypes,
|
|
395
|
-
buttons:
|
|
387
|
+
buttons: PropTypes.arrayOf(PropTypes.node),
|
|
396
388
|
/**
|
|
397
389
|
* Select English or French copy for the accessible labels.
|
|
398
390
|
* You may also pass in a custom dictionary object.
|
|
399
391
|
*/
|
|
400
|
-
copy:
|
|
401
|
-
clearButtonAccessibilityLabel:
|
|
392
|
+
copy: PropTypes.oneOfType([PropTypes.oneOf(['en', 'fr']), PropTypes.shape({
|
|
393
|
+
clearButtonAccessibilityLabel: PropTypes.string
|
|
402
394
|
})]),
|
|
403
|
-
type:
|
|
404
|
-
height:
|
|
405
|
-
inactive:
|
|
406
|
-
initialValue:
|
|
407
|
-
onBlur:
|
|
408
|
-
onChange:
|
|
409
|
-
onChangeText:
|
|
410
|
-
onClear:
|
|
411
|
-
onFocus:
|
|
412
|
-
onMouseOut:
|
|
413
|
-
onMouseOver:
|
|
414
|
-
onKeyPress:
|
|
415
|
-
readOnly:
|
|
416
|
-
tokens:
|
|
417
|
-
value:
|
|
418
|
-
variant:
|
|
395
|
+
type: PropTypes.oneOfType([PropTypes.oneOf(['password', 'card', 'number'])]),
|
|
396
|
+
height: PropTypes.number,
|
|
397
|
+
inactive: PropTypes.bool,
|
|
398
|
+
initialValue: PropTypes.string,
|
|
399
|
+
onBlur: PropTypes.func,
|
|
400
|
+
onChange: PropTypes.func,
|
|
401
|
+
onChangeText: PropTypes.func,
|
|
402
|
+
onClear: PropTypes.func,
|
|
403
|
+
onFocus: PropTypes.func,
|
|
404
|
+
onMouseOut: PropTypes.func,
|
|
405
|
+
onMouseOver: PropTypes.func,
|
|
406
|
+
onKeyPress: PropTypes.func,
|
|
407
|
+
readOnly: PropTypes.bool,
|
|
408
|
+
tokens: getTokensPropType('TextInput', 'TextArea'),
|
|
409
|
+
value: PropTypes.string,
|
|
410
|
+
variant: variantProp.propType
|
|
419
411
|
};
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
const staticStyles = _StyleSheet.default.create({
|
|
412
|
+
export default TextInputBase;
|
|
413
|
+
const staticStyles = StyleSheet.create({
|
|
423
414
|
buttonsContainer: {
|
|
424
415
|
position: 'absolute',
|
|
425
416
|
flexDirection: 'row',
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _default = {
|
|
1
|
+
export default {
|
|
8
2
|
en: {
|
|
9
3
|
clearButtonAccessibilityLabel: 'Clear',
|
|
10
4
|
showPasswordAccessibilityLabel: 'Show Password',
|
|
@@ -15,5 +9,4 @@ var _default = {
|
|
|
15
9
|
showPasswordAccessibilityLabel: 'montrer le mot de passe',
|
|
16
10
|
hidePasswordAccessibilityLabel: 'masquer le mot de passe'
|
|
17
11
|
}
|
|
18
|
-
};
|
|
19
|
-
exports.default = _default;
|
|
12
|
+
};
|
package/lib/TextInput/index.js
CHANGED
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "TextArea", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _TextArea.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
Object.defineProperty(exports, "TextInput", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return _TextInput.default;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
var _TextInput = _interopRequireDefault(require("./TextInput"));
|
|
19
|
-
var _TextArea = _interopRequireDefault(require("./TextArea"));
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
1
|
+
import TextInput from './TextInput';
|
|
2
|
+
import TextArea from './TextArea';
|
|
3
|
+
export { TextInput, TextArea };
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
2
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
3
|
// These are prop types specific to UDS TextInput; see also ../utils/props/textInputProps
|
|
10
4
|
// for generic React Native props and HTML input attrs that are passed through.
|
|
11
5
|
const textInputPropTypes = {
|
|
@@ -13,29 +7,28 @@ const textInputPropTypes = {
|
|
|
13
7
|
* If the input's state is to be controlled by a parent component, use this prop
|
|
14
8
|
* together with the `onChange` to pass down and update the lifted state.
|
|
15
9
|
*/
|
|
16
|
-
value:
|
|
10
|
+
value: PropTypes.string,
|
|
17
11
|
/**
|
|
18
12
|
* Use this to set the type of the input. Defaults to `text`.
|
|
19
13
|
*/
|
|
20
|
-
type:
|
|
14
|
+
type: PropTypes.string,
|
|
21
15
|
/**
|
|
22
16
|
* Use this to set the initial value of an uncontrolled input.
|
|
23
17
|
* Updating `initialValue` will **not** update the actual value.
|
|
24
18
|
*/
|
|
25
|
-
initialValue:
|
|
19
|
+
initialValue: PropTypes.string,
|
|
26
20
|
/**
|
|
27
21
|
* Disables all user interactions with the input.
|
|
28
22
|
*/
|
|
29
|
-
inactive:
|
|
23
|
+
inactive: PropTypes.bool,
|
|
30
24
|
/**
|
|
31
25
|
* Makes it impossible to change the input's value.
|
|
32
26
|
*/
|
|
33
|
-
readOnly:
|
|
27
|
+
readOnly: PropTypes.bool,
|
|
34
28
|
/**
|
|
35
29
|
* Use to react upon input's value changes. Required when the `value` prop is set.
|
|
36
30
|
* Will receive the input's value as an argument.
|
|
37
31
|
*/
|
|
38
|
-
onChange:
|
|
32
|
+
onChange: PropTypes.func
|
|
39
33
|
};
|
|
40
|
-
|
|
41
|
-
exports.default = _default;
|
|
34
|
+
export default textInputPropTypes;
|
|
@@ -1,24 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var _utils = require("./utils");
|
|
10
|
-
var _responsiveProps = _interopRequireDefault(require("../utils/props/responsiveProps"));
|
|
11
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
const uninitialisedError = new Error('Theme context used outside of ThemeProvider');
|
|
14
|
-
exports.uninitialisedError = uninitialisedError;
|
|
15
|
-
const ThemeContext = /*#__PURE__*/_react.default.createContext(uninitialisedError);
|
|
16
|
-
exports.ThemeContext = ThemeContext;
|
|
17
|
-
const ThemeSetterContext = /*#__PURE__*/_react.default.createContext(uninitialisedError);
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { validateThemeTokensVersion } from './utils';
|
|
4
|
+
import responsiveProps from '../utils/props/responsiveProps';
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
export const uninitialisedError = new Error('Theme context used outside of ThemeProvider');
|
|
7
|
+
export const ThemeContext = /*#__PURE__*/React.createContext(uninitialisedError);
|
|
8
|
+
export const ThemeSetterContext = /*#__PURE__*/React.createContext(uninitialisedError);
|
|
18
9
|
|
|
19
10
|
// These options default to `true` in v1.x to match legacy defaults and avoid breaking changes.
|
|
20
11
|
// This should change in future major releases to become "opt-in" legacy support.
|
|
21
|
-
exports.ThemeSetterContext = ThemeSetterContext;
|
|
22
12
|
const defaultThemeOptions = {
|
|
23
13
|
// TODO: switch `forceAbsoluteFontSizing` to be false by default in the next major version
|
|
24
14
|
forceAbsoluteFontSizing: true,
|
|
@@ -34,8 +24,8 @@ const ThemeProvider = _ref => {
|
|
|
34
24
|
defaultTheme,
|
|
35
25
|
themeOptions = {}
|
|
36
26
|
} = _ref;
|
|
37
|
-
const [theme, setTheme] =
|
|
38
|
-
|
|
27
|
+
const [theme, setTheme] = React.useState(defaultTheme);
|
|
28
|
+
React.useEffect(() => {
|
|
39
29
|
if (theme.metadata.name !== defaultTheme.metadata.name) {
|
|
40
30
|
setTheme(defaultTheme);
|
|
41
31
|
}
|
|
@@ -48,10 +38,10 @@ const ThemeProvider = _ref => {
|
|
|
48
38
|
// Validate the theme tokens version on every render.
|
|
49
39
|
// This will intentionally break the application when attempting to use an invalid theme.
|
|
50
40
|
// This will surface an incompatibility quickly rather than allowing the potential for strange bugs due to missing or incompatible tokens.
|
|
51
|
-
|
|
52
|
-
return /*#__PURE__*/(
|
|
41
|
+
validateThemeTokensVersion(theme);
|
|
42
|
+
return /*#__PURE__*/_jsx(ThemeSetterContext.Provider, {
|
|
53
43
|
value: setTheme,
|
|
54
|
-
children: /*#__PURE__*/(
|
|
44
|
+
children: /*#__PURE__*/_jsx(ThemeContext.Provider, {
|
|
55
45
|
value: {
|
|
56
46
|
...theme,
|
|
57
47
|
themeOptions: appliedThemeOptions
|
|
@@ -61,11 +51,11 @@ const ThemeProvider = _ref => {
|
|
|
61
51
|
});
|
|
62
52
|
};
|
|
63
53
|
ThemeProvider.propTypes = {
|
|
64
|
-
children:
|
|
65
|
-
defaultTheme:
|
|
66
|
-
metadata:
|
|
67
|
-
themeTokensVersion:
|
|
68
|
-
name:
|
|
54
|
+
children: PropTypes.node.isRequired,
|
|
55
|
+
defaultTheme: PropTypes.shape({
|
|
56
|
+
metadata: PropTypes.shape({
|
|
57
|
+
themeTokensVersion: PropTypes.string.isRequired,
|
|
58
|
+
name: PropTypes.string.isRequired
|
|
69
59
|
}).isRequired
|
|
70
60
|
}).isRequired,
|
|
71
61
|
/**
|
|
@@ -83,13 +73,12 @@ ThemeProvider.propTypes = {
|
|
|
83
73
|
* instances (which may cause a memory leak). See React Helmet's docs: https://github.com/nfl/react-helmet
|
|
84
74
|
* - `enableMediaQueryStyleSheet`: enables the use of Media Query StyleSheet.
|
|
85
75
|
*/
|
|
86
|
-
themeOptions:
|
|
87
|
-
forceAbsoluteFontSizing:
|
|
88
|
-
forceZIndex:
|
|
89
|
-
enableHelmetSSR:
|
|
90
|
-
contentMaxWidth:
|
|
91
|
-
enableMediaQueryStyleSheet:
|
|
76
|
+
themeOptions: PropTypes.shape({
|
|
77
|
+
forceAbsoluteFontSizing: PropTypes.bool,
|
|
78
|
+
forceZIndex: PropTypes.bool,
|
|
79
|
+
enableHelmetSSR: PropTypes.bool,
|
|
80
|
+
contentMaxWidth: responsiveProps.getTypeOptionallyByViewport(PropTypes.number),
|
|
81
|
+
enableMediaQueryStyleSheet: PropTypes.bool
|
|
92
82
|
})
|
|
93
83
|
};
|
|
94
|
-
|
|
95
|
-
exports.default = _default;
|
|
84
|
+
export default ThemeProvider;
|
|
@@ -1,60 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
useSetTheme: true,
|
|
9
|
-
useResponsiveThemeTokens: true
|
|
10
|
-
};
|
|
11
|
-
exports.default = void 0;
|
|
12
|
-
Object.defineProperty(exports, "useResponsiveThemeTokens", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return _useResponsiveThemeTokens.default;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
Object.defineProperty(exports, "useSetTheme", {
|
|
19
|
-
enumerable: true,
|
|
20
|
-
get: function () {
|
|
21
|
-
return _useSetTheme.default;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
Object.defineProperty(exports, "useTheme", {
|
|
25
|
-
enumerable: true,
|
|
26
|
-
get: function () {
|
|
27
|
-
return _useTheme.default;
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
var _ThemeProvider = _interopRequireDefault(require("./ThemeProvider"));
|
|
31
|
-
var _useTheme = _interopRequireDefault(require("./useTheme"));
|
|
32
|
-
var _useSetTheme = _interopRequireDefault(require("./useSetTheme"));
|
|
33
|
-
var _useResponsiveThemeTokens = _interopRequireDefault(require("./useResponsiveThemeTokens"));
|
|
34
|
-
var _useThemeTokens = require("./useThemeTokens");
|
|
35
|
-
Object.keys(_useThemeTokens).forEach(function (key) {
|
|
36
|
-
if (key === "default" || key === "__esModule") return;
|
|
37
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
38
|
-
if (key in exports && exports[key] === _useThemeTokens[key]) return;
|
|
39
|
-
Object.defineProperty(exports, key, {
|
|
40
|
-
enumerable: true,
|
|
41
|
-
get: function () {
|
|
42
|
-
return _useThemeTokens[key];
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
var _utils = require("./utils");
|
|
47
|
-
Object.keys(_utils).forEach(function (key) {
|
|
48
|
-
if (key === "default" || key === "__esModule") return;
|
|
49
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
50
|
-
if (key in exports && exports[key] === _utils[key]) return;
|
|
51
|
-
Object.defineProperty(exports, key, {
|
|
52
|
-
enumerable: true,
|
|
53
|
-
get: function () {
|
|
54
|
-
return _utils[key];
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
59
|
-
var _default = _ThemeProvider.default;
|
|
60
|
-
exports.default = _default;
|
|
1
|
+
import ThemeProvider from './ThemeProvider';
|
|
2
|
+
export { default as useTheme } from './useTheme';
|
|
3
|
+
export { default as useSetTheme } from './useSetTheme';
|
|
4
|
+
export { default as useResponsiveThemeTokens } from './useResponsiveThemeTokens';
|
|
5
|
+
export * from './useThemeTokens';
|
|
6
|
+
export * from './utils';
|
|
7
|
+
export default ThemeProvider;
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _systemConstants = require("@telus-uds/system-constants");
|
|
8
|
-
var _useTheme = _interopRequireDefault(require("./useTheme"));
|
|
9
|
-
var _utils = require("./utils");
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
1
|
+
import { viewports } from '@telus-uds/system-constants';
|
|
2
|
+
import useTheme from './useTheme';
|
|
3
|
+
import { getComponentTheme, mergeAppearances, resolveThemeTokens } from './utils';
|
|
11
4
|
const getResponsiveThemeTokens = function (_ref, tokensProp) {
|
|
12
5
|
let {
|
|
13
6
|
rules = [],
|
|
@@ -15,8 +8,8 @@ const getResponsiveThemeTokens = function (_ref, tokensProp) {
|
|
|
15
8
|
} = _ref;
|
|
16
9
|
let variants = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
17
10
|
let states = arguments.length > 3 ? arguments[3] : undefined;
|
|
18
|
-
const appearances =
|
|
19
|
-
const tokensByViewport = Object.fromEntries(
|
|
11
|
+
const appearances = mergeAppearances(variants, states);
|
|
12
|
+
const tokensByViewport = Object.fromEntries(viewports.keys.map(viewport => [viewport, {
|
|
20
13
|
...defaultThemeTokens
|
|
21
14
|
}]));
|
|
22
15
|
|
|
@@ -24,7 +17,7 @@ const getResponsiveThemeTokens = function (_ref, tokensProp) {
|
|
|
24
17
|
rules.forEach(rule => {
|
|
25
18
|
if (doesRuleApply(rule, appearances)) {
|
|
26
19
|
// If the rule does not have a viewport specified, we collect it in all viewports
|
|
27
|
-
let targetViewports = rule.if.viewport ||
|
|
20
|
+
let targetViewports = rule.if.viewport || viewports.keys;
|
|
28
21
|
if (!Array.isArray(targetViewports)) {
|
|
29
22
|
targetViewports = [targetViewports];
|
|
30
23
|
}
|
|
@@ -37,7 +30,7 @@ const getResponsiveThemeTokens = function (_ref, tokensProp) {
|
|
|
37
30
|
}
|
|
38
31
|
});
|
|
39
32
|
Object.keys(tokensByViewport).forEach(viewport => {
|
|
40
|
-
tokensByViewport[viewport] =
|
|
33
|
+
tokensByViewport[viewport] = resolveThemeTokens(tokensByViewport[viewport], appearances, tokensProp);
|
|
41
34
|
});
|
|
42
35
|
return tokensByViewport;
|
|
43
36
|
};
|
|
@@ -80,10 +73,9 @@ const useResponsiveThemeTokens = function (componentName) {
|
|
|
80
73
|
let tokens = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
81
74
|
let variants = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
82
75
|
let states = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
83
|
-
const theme = (
|
|
84
|
-
const componentTheme =
|
|
76
|
+
const theme = useTheme();
|
|
77
|
+
const componentTheme = getComponentTheme(theme, componentName);
|
|
85
78
|
const themeTokens = getResponsiveThemeTokens(componentTheme, tokens, variants, states);
|
|
86
79
|
return themeTokens;
|
|
87
80
|
};
|
|
88
|
-
|
|
89
|
-
exports.default = _default;
|
|
81
|
+
export default useResponsiveThemeTokens;
|
|
@@ -1,21 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _ThemeProvider = require("./ThemeProvider");
|
|
1
|
+
import { useCallback, useContext } from 'react';
|
|
2
|
+
import { ThemeSetterContext } from './ThemeProvider';
|
|
9
3
|
const useSetTheme = () => {
|
|
10
4
|
// Replace current theme with provided object
|
|
11
|
-
const setTheme =
|
|
5
|
+
const setTheme = useContext(ThemeSetterContext);
|
|
12
6
|
// Fail fast if dev uses useSetTheme outside of ThemeProvider
|
|
13
7
|
if (setTheme instanceof Error) {
|
|
14
8
|
throw setTheme;
|
|
15
9
|
}
|
|
16
10
|
|
|
17
11
|
// Merge provided object into current theme
|
|
18
|
-
const editTheme =
|
|
12
|
+
const editTheme = useCallback(newTheme => setTheme(function () {
|
|
19
13
|
let oldTheme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
20
14
|
return {
|
|
21
15
|
...oldTheme,
|
|
@@ -27,5 +21,4 @@ const useSetTheme = () => {
|
|
|
27
21
|
editTheme
|
|
28
22
|
};
|
|
29
23
|
};
|
|
30
|
-
|
|
31
|
-
exports.default = _default;
|
|
24
|
+
export default useSetTheme;
|