@ovotech/element-native 5.3.0 → 5.4.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/dist/components/Accordion/Accordion.d.ts +5 -0
- package/dist/components/Accordion/Accordion.js +65 -0
- package/dist/components/Accordion/Group.d.ts +6 -0
- package/dist/components/Accordion/Group.js +15 -0
- package/dist/components/Accordion/Icon.d.ts +4 -0
- package/dist/components/Accordion/Icon.js +34 -0
- package/dist/components/Accordion/index.d.ts +4 -0
- package/dist/components/Accordion/index.js +3 -0
- package/dist/components/Accordion/styles.d.ts +1699 -0
- package/dist/components/Accordion/styles.js +45 -0
- package/dist/components/Accordion/types.d.ts +21 -0
- package/dist/components/Accordion/types.js +1 -0
- package/dist/components/ActionCard/ActionCard.d.ts +21 -0
- package/dist/components/ActionCard/ActionCard.js +103 -0
- package/dist/components/ActionCard/CloseIconShape.d.ts +3 -0
- package/dist/components/ActionCard/CloseIconShape.js +7 -0
- package/dist/components/ActionCard/IndicatorIconShape.d.ts +3 -0
- package/dist/components/ActionCard/IndicatorIconShape.js +7 -0
- package/dist/components/ActionCard/index.d.ts +1 -0
- package/dist/components/ActionCard/index.js +1 -0
- package/dist/components/ActionList/ActionList.d.ts +25 -0
- package/dist/components/ActionList/ActionList.js +24 -0
- package/dist/components/ActionList/index.d.ts +1 -0
- package/dist/components/ActionList/index.js +1 -0
- package/dist/components/ActionList/styled.d.ts +3979 -0
- package/dist/components/ActionList/styled.js +58 -0
- package/dist/components/Badge/Badge.d.ts +579 -0
- package/dist/components/Badge/Badge.js +52 -0
- package/dist/components/Badge/index.d.ts +1 -0
- package/dist/components/Badge/index.js +1 -0
- package/dist/components/CTAButton/CTAButton.d.ts +18 -0
- package/dist/components/CTAButton/CTAButton.js +81 -0
- package/dist/components/CTAButton/index.d.ts +1 -0
- package/dist/components/CTAButton/index.js +1 -0
- package/dist/components/CTALink/CTALink.d.ts +8 -0
- package/dist/components/CTALink/CTALink.js +6 -0
- package/dist/components/CTALink/index.d.ts +1 -0
- package/dist/components/CTALink/index.js +1 -0
- package/dist/components/Card/Card.d.ts +7 -0
- package/dist/components/Card/Card.js +15 -0
- package/dist/components/Card/index.d.ts +1 -0
- package/dist/components/Card/index.js +1 -0
- package/dist/components/Checkbox/Checkbox.d.ts +14 -0
- package/dist/components/Checkbox/Checkbox.js +58 -0
- package/dist/components/Checkbox/CheckboxField.d.ts +9 -0
- package/dist/components/Checkbox/CheckboxField.js +17 -0
- package/dist/components/Checkbox/index.d.ts +2 -0
- package/dist/components/Checkbox/index.js +2 -0
- package/dist/components/CurrencyField/CurrencyField.d.ts +5 -0
- package/dist/components/CurrencyField/CurrencyField.js +6 -0
- package/dist/components/CurrencyField/index.d.ts +1 -0
- package/dist/components/CurrencyField/index.js +1 -0
- package/dist/components/CurrencyInput/CurrencyInput.d.ts +9 -0
- package/dist/components/CurrencyInput/CurrencyInput.js +11 -0
- package/dist/components/CurrencyInput/index.d.ts +1 -0
- package/dist/components/CurrencyInput/index.js +1 -0
- package/dist/components/DataTable/DataTable.d.ts +2 -0
- package/dist/components/DataTable/DataTable.js +19 -0
- package/dist/components/DataTable/TableRow.d.ts +2 -0
- package/dist/components/DataTable/TableRow.js +21 -0
- package/dist/components/DataTable/index.d.ts +3 -0
- package/dist/components/DataTable/index.js +3 -0
- package/dist/components/DataTable/styles.d.ts +7356 -0
- package/dist/components/DataTable/styles.js +100 -0
- package/dist/components/DataTable/types.d.ts +21 -0
- package/dist/components/DataTable/types.js +1 -0
- package/dist/components/DateField/DateField.d.ts +22 -0
- package/dist/components/DateField/DateField.js +68 -0
- package/dist/components/DateField/index.d.ts +1 -0
- package/dist/components/DateField/index.js +1 -0
- package/dist/components/DescriptionList/DescriptionList.d.ts +10 -0
- package/dist/components/DescriptionList/DescriptionList.js +12 -0
- package/dist/components/DescriptionList/index.d.ts +1 -0
- package/dist/components/DescriptionList/index.js +1 -0
- package/dist/components/DescriptionList/styled.d.ts +570 -0
- package/dist/components/DescriptionList/styled.js +35 -0
- package/dist/components/Disclosure/Disclosure.d.ts +576 -0
- package/dist/components/Disclosure/Disclosure.js +36 -0
- package/dist/components/Disclosure/index.d.ts +1 -0
- package/dist/components/Disclosure/index.js +1 -0
- package/dist/components/Display0/Display0.d.ts +5 -0
- package/dist/components/Display0/Display0.js +23 -0
- package/dist/components/Display0/index.d.ts +1 -0
- package/dist/components/Display0/index.js +1 -0
- package/dist/components/Display1/Display1.d.ts +5 -0
- package/dist/components/Display1/Display1.js +23 -0
- package/dist/components/Display1/index.d.ts +1 -0
- package/dist/components/Display1/index.js +1 -0
- package/dist/components/Display2/Display2.d.ts +5 -0
- package/dist/components/Display2/Display2.js +23 -0
- package/dist/components/Display2/index.d.ts +1 -0
- package/dist/components/Display2/index.js +1 -0
- package/dist/components/Display3/Display3.d.ts +5 -0
- package/dist/components/Display3/Display3.js +23 -0
- package/dist/components/Display3/index.d.ts +1 -0
- package/dist/components/Display3/index.js +1 -0
- package/dist/components/Divider/Divider.d.ts +5 -0
- package/dist/components/Divider/Divider.js +14 -0
- package/dist/components/Divider/index.d.ts +1 -0
- package/dist/components/Divider/index.js +1 -0
- package/dist/components/Em/Em.d.ts +565 -0
- package/dist/components/Em/Em.js +6 -0
- package/dist/components/Em/index.d.ts +1 -0
- package/dist/components/Em/index.js +1 -0
- package/dist/components/EmailField/EmailField.d.ts +5 -0
- package/dist/components/EmailField/EmailField.js +6 -0
- package/dist/components/EmailField/index.d.ts +1 -0
- package/dist/components/EmailField/index.js +1 -0
- package/dist/components/EmailInput/EmailInput.d.ts +3 -0
- package/dist/components/EmailInput/EmailInput.js +4 -0
- package/dist/components/EmailInput/index.d.ts +1 -0
- package/dist/components/EmailInput/index.js +1 -0
- package/dist/components/ErrorSummaryNotification/ErrorSummaryNotification.d.ts +18 -0
- package/dist/components/ErrorSummaryNotification/ErrorSummaryNotification.js +23 -0
- package/dist/components/ErrorSummaryNotification/index.d.ts +1 -0
- package/dist/components/ErrorSummaryNotification/index.js +1 -0
- package/dist/components/ErrorText/ErrorText.d.ts +575 -0
- package/dist/components/ErrorText/ErrorText.js +18 -0
- package/dist/components/ErrorText/index.d.ts +1 -0
- package/dist/components/ErrorText/index.js +1 -0
- package/dist/components/Field/Field.d.ts +14 -0
- package/dist/components/Field/Field.js +38 -0
- package/dist/components/Field/index.d.ts +1 -0
- package/dist/components/Field/index.js +1 -0
- package/dist/components/FilterSelect/FilterSelect.d.ts +17 -0
- package/dist/components/FilterSelect/FilterSelect.js +67 -0
- package/dist/components/FilterSelect/index.d.ts +1 -0
- package/dist/components/FilterSelect/index.js +1 -0
- package/dist/components/FormGroup/FormGroup.d.ts +8 -0
- package/dist/components/FormGroup/FormGroup.js +9 -0
- package/dist/components/FormGroup/index.d.ts +1 -0
- package/dist/components/FormGroup/index.js +1 -0
- package/dist/components/Grid/Col.d.ts +575 -0
- package/dist/components/Grid/Col.js +35 -0
- package/dist/components/Grid/Row.d.ts +7 -0
- package/dist/components/Grid/Row.js +35 -0
- package/dist/components/Grid/index.d.ts +2 -0
- package/dist/components/Grid/index.js +2 -0
- package/dist/components/Heading1/Heading1.d.ts +5 -0
- package/dist/components/Heading1/Heading1.js +23 -0
- package/dist/components/Heading1/index.d.ts +1 -0
- package/dist/components/Heading1/index.js +1 -0
- package/dist/components/Heading2/Heading2.d.ts +5 -0
- package/dist/components/Heading2/Heading2.js +23 -0
- package/dist/components/Heading2/index.d.ts +1 -0
- package/dist/components/Heading2/index.js +1 -0
- package/dist/components/Heading3/Heading3.d.ts +5 -0
- package/dist/components/Heading3/Heading3.js +23 -0
- package/dist/components/Heading3/index.d.ts +1 -0
- package/dist/components/Heading3/index.js +1 -0
- package/dist/components/Heading4/Heading4.d.ts +5 -0
- package/dist/components/Heading4/Heading4.js +23 -0
- package/dist/components/Heading4/index.d.ts +1 -0
- package/dist/components/Heading4/index.js +1 -0
- package/dist/components/HintText/HintText.d.ts +575 -0
- package/dist/components/HintText/HintText.js +18 -0
- package/dist/components/HintText/index.d.ts +1 -0
- package/dist/components/HintText/index.js +1 -0
- package/dist/components/Icon/Icon.d.ts +9 -0
- package/dist/components/Icon/Icon.js +13 -0
- package/dist/components/Icon/index.d.ts +1 -0
- package/dist/components/Icon/index.js +1 -0
- package/dist/components/Input/Input.d.ts +13 -0
- package/dist/components/Input/Input.js +78 -0
- package/dist/components/Label/Label.d.ts +8 -0
- package/dist/components/Label/Label.js +10 -0
- package/dist/components/Label/index.d.ts +1 -0
- package/dist/components/Label/index.js +1 -0
- package/dist/components/LabelText/LabelText.d.ts +575 -0
- package/dist/components/LabelText/LabelText.js +16 -0
- package/dist/components/LabelText/index.d.ts +1 -0
- package/dist/components/LabelText/index.js +1 -0
- package/dist/components/Lead/Lead.d.ts +8 -0
- package/dist/components/Lead/Lead.js +12 -0
- package/dist/components/Lead/index.d.ts +1 -0
- package/dist/components/Lead/index.js +1 -0
- package/dist/components/LineThrough/LineThrough.d.ts +565 -0
- package/dist/components/LineThrough/LineThrough.js +4 -0
- package/dist/components/LineThrough/index.d.ts +1 -0
- package/dist/components/LineThrough/index.js +1 -0
- package/dist/components/List/List.d.ts +8 -0
- package/dist/components/List/List.js +26 -0
- package/dist/components/List/index.d.ts +1 -0
- package/dist/components/List/index.js +1 -0
- package/dist/components/List/styled.d.ts +2266 -0
- package/dist/components/List/styled.js +40 -0
- package/dist/components/Margin/Margin.d.ts +589 -0
- package/dist/components/Margin/Margin.js +36 -0
- package/dist/components/Margin/index.d.ts +1 -0
- package/dist/components/Margin/index.js +1 -0
- package/dist/components/NavHeader/IconButton.d.ts +15 -0
- package/dist/components/NavHeader/IconButton.js +13 -0
- package/dist/components/NavHeader/NavHeader.d.ts +18 -0
- package/dist/components/NavHeader/NavHeader.js +43 -0
- package/dist/components/NavHeader/NavHeader.styles.d.ts +5102 -0
- package/dist/components/NavHeader/NavHeader.styles.js +82 -0
- package/dist/components/NavHeader/index.d.ts +1 -0
- package/dist/components/NavHeader/index.js +1 -0
- package/dist/components/Notification/Notification.d.ts +1153 -0
- package/dist/components/Notification/Notification.js +81 -0
- package/dist/components/Notification/index.d.ts +1 -0
- package/dist/components/Notification/index.js +1 -0
- package/dist/components/NumberField/NumberField.d.ts +5 -0
- package/dist/components/NumberField/NumberField.js +6 -0
- package/dist/components/NumberField/index.d.ts +1 -0
- package/dist/components/NumberField/index.js +1 -0
- package/dist/components/NumberInput/NumberInput.d.ts +3 -0
- package/dist/components/NumberInput/NumberInput.js +4 -0
- package/dist/components/NumberInput/index.d.ts +1 -0
- package/dist/components/NumberInput/index.js +1 -0
- package/dist/components/P/P.d.ts +8 -0
- package/dist/components/P/P.js +14 -0
- package/dist/components/P/index.d.ts +1 -0
- package/dist/components/P/index.js +1 -0
- package/dist/components/PasswordField/PasswordField.d.ts +7 -0
- package/dist/components/PasswordField/PasswordField.js +6 -0
- package/dist/components/PasswordField/index.d.ts +1 -0
- package/dist/components/PasswordField/index.js +1 -0
- package/dist/components/PasswordInput/PasswordInput.d.ts +6 -0
- package/dist/components/PasswordInput/PasswordInput.js +8 -0
- package/dist/components/PasswordInput/PasswordInput.styled.d.ts +567 -0
- package/dist/components/PasswordInput/PasswordInput.styled.js +14 -0
- package/dist/components/PasswordInput/PasswordVisibilityToggle.d.ts +12 -0
- package/dist/components/PasswordInput/PasswordVisibilityToggle.js +22 -0
- package/dist/components/PasswordInput/index.d.ts +1 -0
- package/dist/components/PasswordInput/index.js +1 -0
- package/dist/components/PhoneField/PhoneField.d.ts +5 -0
- package/dist/components/PhoneField/PhoneField.js +6 -0
- package/dist/components/PhoneField/index.d.ts +1 -0
- package/dist/components/PhoneField/index.js +1 -0
- package/dist/components/PhoneInput/PhoneInput.d.ts +2 -0
- package/dist/components/PhoneInput/PhoneInput.js +3 -0
- package/dist/components/PhoneInput/index.d.ts +1 -0
- package/dist/components/PhoneInput/index.js +1 -0
- package/dist/components/ProductCarousel/NavigationDots.d.ts +5 -0
- package/dist/components/ProductCarousel/NavigationDots.js +48 -0
- package/dist/components/ProductCarousel/ProductCarousel.d.ts +14 -0
- package/dist/components/ProductCarousel/ProductCarousel.js +81 -0
- package/dist/components/ProductCarousel/anchor-point.d.ts +207 -0
- package/dist/components/ProductCarousel/anchor-point.js +43 -0
- package/dist/components/ProductCarousel/index.d.ts +1 -0
- package/dist/components/ProductCarousel/index.js +1 -0
- package/dist/components/Radio/Radio.d.ts +14 -0
- package/dist/components/Radio/Radio.js +52 -0
- package/dist/components/Radio/RadioField.d.ts +11 -0
- package/dist/components/Radio/RadioField.js +21 -0
- package/dist/components/Radio/index.d.ts +2 -0
- package/dist/components/Radio/index.js +2 -0
- package/dist/components/RadioCard/RadioCard.d.ts +12 -0
- package/dist/components/RadioCard/RadioCard.js +57 -0
- package/dist/components/RadioCard/index.d.ts +1 -0
- package/dist/components/RadioCard/index.js +1 -0
- package/dist/components/SegmentedControls/SegmentedControls.d.ts +18 -0
- package/dist/components/SegmentedControls/SegmentedControls.js +48 -0
- package/dist/components/SegmentedControls/components/SegmentButton.d.ts +17 -0
- package/dist/components/SegmentedControls/components/SegmentButton.js +78 -0
- package/dist/components/SegmentedControls/index.d.ts +2 -0
- package/dist/components/SegmentedControls/index.js +2 -0
- package/dist/components/SelectField/Select.d.ts +582 -0
- package/dist/components/SelectField/Select.js +93 -0
- package/dist/components/SelectField/SelectField.d.ts +7 -0
- package/dist/components/SelectField/SelectField.js +4 -0
- package/dist/components/SelectField/index.d.ts +1 -0
- package/dist/components/SelectField/index.js +1 -0
- package/dist/components/SkeletonAnimation/SkeletonAnimation.d.ts +6 -0
- package/dist/components/SkeletonAnimation/SkeletonAnimation.js +30 -0
- package/dist/components/SkeletonAnimation/index.d.ts +1 -0
- package/dist/components/SkeletonAnimation/index.js +1 -0
- package/dist/components/SkeletonCTA/SkeletonCTA.d.ts +6 -0
- package/dist/components/SkeletonCTA/SkeletonCTA.js +11 -0
- package/dist/components/SkeletonCTA/index.d.ts +1 -0
- package/dist/components/SkeletonCTA/index.js +1 -0
- package/dist/components/SkeletonCircle/SkeletonCircle.d.ts +6 -0
- package/dist/components/SkeletonCircle/SkeletonCircle.js +12 -0
- package/dist/components/SkeletonCircle/index.d.ts +1 -0
- package/dist/components/SkeletonCircle/index.js +1 -0
- package/dist/components/SkeletonHeading/SkeletonHeading.d.ts +8 -0
- package/dist/components/SkeletonHeading/SkeletonHeading.js +9 -0
- package/dist/components/SkeletonHeading/index.d.ts +1 -0
- package/dist/components/SkeletonHeading/index.js +1 -0
- package/dist/components/SkeletonText/SkeletonText.d.ts +6 -0
- package/dist/components/SkeletonText/SkeletonText.js +27 -0
- package/dist/components/SkeletonText/index.d.ts +1 -0
- package/dist/components/SkeletonText/index.js +1 -0
- package/dist/components/Small/Small.d.ts +574 -0
- package/dist/components/Small/Small.js +8 -0
- package/dist/components/Small/index.d.ts +1 -0
- package/dist/components/Small/index.js +1 -0
- package/dist/components/Spinner/Spinner.d.ts +8 -0
- package/dist/components/Spinner/Spinner.js +43 -0
- package/dist/components/Spinner/index.d.ts +1 -0
- package/dist/components/Spinner/index.js +1 -0
- package/dist/components/Stack/Stack.d.ts +9 -0
- package/dist/components/Stack/Stack.js +17 -0
- package/dist/components/Stack/index.d.ts +1 -0
- package/dist/components/Stack/index.js +1 -0
- package/dist/components/Stretch/Stretch.d.ts +7 -0
- package/dist/components/Stretch/Stretch.js +13 -0
- package/dist/components/Stretch/index.d.ts +1 -0
- package/dist/components/Stretch/index.js +1 -0
- package/dist/components/Strong/Strong.d.ts +565 -0
- package/dist/components/Strong/Strong.js +4 -0
- package/dist/components/Strong/index.d.ts +1 -0
- package/dist/components/Strong/index.js +1 -0
- package/dist/components/SubLabelText/SubLabelText.d.ts +575 -0
- package/dist/components/SubLabelText/SubLabelText.js +16 -0
- package/dist/components/SubLabelText/index.d.ts +1 -0
- package/dist/components/SubLabelText/index.js +1 -0
- package/dist/components/Tabs/Tab.d.ts +582 -0
- package/dist/components/Tabs/Tab.js +67 -0
- package/dist/components/Tabs/TabList.d.ts +10 -0
- package/dist/components/Tabs/TabList.js +21 -0
- package/dist/components/Tabs/TabPanel.d.ts +3 -0
- package/dist/components/Tabs/TabPanel.js +13 -0
- package/dist/components/Tabs/Tabs.d.ts +10 -0
- package/dist/components/Tabs/Tabs.js +42 -0
- package/dist/components/Tabs/index.d.ts +4 -0
- package/dist/components/Tabs/index.js +4 -0
- package/dist/components/TextField/TextField.d.ts +5 -0
- package/dist/components/TextField/TextField.js +6 -0
- package/dist/components/TextField/index.d.ts +1 -0
- package/dist/components/TextField/index.js +1 -0
- package/dist/components/TextGroup/TextGroup.d.ts +3 -0
- package/dist/components/TextGroup/TextGroup.js +20 -0
- package/dist/components/TextGroup/index.d.ts +1 -0
- package/dist/components/TextGroup/index.js +1 -0
- package/dist/components/TextInput/TextInput.d.ts +8 -0
- package/dist/components/TextInput/TextInput.js +4 -0
- package/dist/components/TextInput/index.d.ts +1 -0
- package/dist/components/TextInput/index.js +1 -0
- package/dist/components/TextLink/TextLink.d.ts +8 -0
- package/dist/components/TextLink/TextLink.js +21 -0
- package/dist/components/TextLink/index.d.ts +1 -0
- package/dist/components/TextLink/index.js +1 -0
- package/dist/components/TextareaField/TextareaField.d.ts +5 -0
- package/dist/components/TextareaField/TextareaField.js +6 -0
- package/dist/components/TextareaField/index.d.ts +1 -0
- package/dist/components/TextareaField/index.js +1 -0
- package/dist/components/TextareaInput/TextareaInput.d.ts +6 -0
- package/dist/components/TextareaInput/TextareaInput.js +13 -0
- package/dist/components/TextareaInput/index.d.ts +1 -0
- package/dist/components/TextareaInput/index.js +1 -0
- package/dist/components/Toast/Toast.d.ts +13 -0
- package/dist/components/Toast/Toast.js +126 -0
- package/dist/components/Toast/index.d.ts +1 -0
- package/dist/components/Toast/index.js +1 -0
- package/dist/components/Toggle/Toggle.d.ts +13 -0
- package/dist/components/Toggle/Toggle.js +25 -0
- package/dist/components/Toggle/index.d.ts +1 -0
- package/dist/components/Toggle/index.js +1 -0
- package/dist/components/Toggle/styles.d.ts +2272 -0
- package/dist/components/Toggle/styles.js +37 -0
- package/dist/components/index.d.ts +67 -0
- package/dist/components/index.js +67 -0
- package/dist/d.d.ts +4 -0
- package/dist/esm/components/Accordion/Accordion.js +65 -0
- package/dist/esm/components/Accordion/Group.js +15 -0
- package/dist/esm/components/Accordion/Icon.js +34 -0
- package/dist/esm/components/Accordion/index.js +3 -0
- package/dist/esm/components/Accordion/styles.js +45 -0
- package/dist/esm/components/Accordion/types.js +1 -0
- package/dist/esm/components/ActionCard/ActionCard.js +103 -0
- package/dist/esm/components/ActionCard/CloseIconShape.js +7 -0
- package/dist/esm/components/ActionCard/IndicatorIconShape.js +7 -0
- package/dist/esm/components/ActionCard/index.js +1 -0
- package/dist/esm/components/ActionList/ActionList.js +24 -0
- package/dist/esm/components/ActionList/index.js +1 -0
- package/dist/esm/components/ActionList/styled.js +58 -0
- package/dist/esm/components/Badge/Badge.js +52 -0
- package/dist/esm/components/Badge/index.js +1 -0
- package/dist/esm/components/CTAButton/CTAButton.js +81 -0
- package/dist/esm/components/CTAButton/index.js +1 -0
- package/dist/esm/components/CTALink/CTALink.js +6 -0
- package/dist/esm/components/CTALink/index.js +1 -0
- package/dist/esm/components/Card/Card.js +15 -0
- package/dist/esm/components/Card/index.js +1 -0
- package/dist/esm/components/Checkbox/Checkbox.js +58 -0
- package/dist/esm/components/Checkbox/CheckboxField.js +17 -0
- package/dist/esm/components/Checkbox/index.js +2 -0
- package/dist/esm/components/CurrencyField/CurrencyField.js +6 -0
- package/dist/esm/components/CurrencyField/index.js +1 -0
- package/dist/esm/components/CurrencyInput/CurrencyInput.js +11 -0
- package/dist/esm/components/CurrencyInput/index.js +1 -0
- package/dist/esm/components/DataTable/DataTable.js +19 -0
- package/dist/esm/components/DataTable/TableRow.js +21 -0
- package/dist/esm/components/DataTable/index.js +3 -0
- package/dist/esm/components/DataTable/styles.js +100 -0
- package/dist/esm/components/DataTable/types.js +1 -0
- package/dist/esm/components/DateField/DateField.js +68 -0
- package/dist/esm/components/DateField/index.js +1 -0
- package/dist/esm/components/DescriptionList/DescriptionList.js +12 -0
- package/dist/esm/components/DescriptionList/index.js +1 -0
- package/dist/esm/components/DescriptionList/styled.js +35 -0
- package/dist/esm/components/Disclosure/Disclosure.js +36 -0
- package/dist/esm/components/Disclosure/index.js +1 -0
- package/dist/esm/components/Display0/Display0.js +23 -0
- package/dist/esm/components/Display0/index.js +1 -0
- package/dist/esm/components/Display1/Display1.js +23 -0
- package/dist/esm/components/Display1/index.js +1 -0
- package/dist/esm/components/Display2/Display2.js +23 -0
- package/dist/esm/components/Display2/index.js +1 -0
- package/dist/esm/components/Display3/Display3.js +23 -0
- package/dist/esm/components/Display3/index.js +1 -0
- package/dist/esm/components/Divider/Divider.js +14 -0
- package/dist/esm/components/Divider/index.js +1 -0
- package/dist/esm/components/Em/Em.js +6 -0
- package/dist/esm/components/Em/index.js +1 -0
- package/dist/esm/components/EmailField/EmailField.js +6 -0
- package/dist/esm/components/EmailField/index.js +1 -0
- package/dist/esm/components/EmailInput/EmailInput.js +4 -0
- package/dist/esm/components/EmailInput/index.js +1 -0
- package/dist/esm/components/ErrorSummaryNotification/ErrorSummaryNotification.js +23 -0
- package/dist/esm/components/ErrorSummaryNotification/index.js +1 -0
- package/dist/esm/components/ErrorText/ErrorText.js +18 -0
- package/dist/esm/components/ErrorText/index.js +1 -0
- package/dist/esm/components/Field/Field.js +38 -0
- package/dist/esm/components/Field/index.js +1 -0
- package/dist/esm/components/FilterSelect/FilterSelect.js +67 -0
- package/dist/esm/components/FilterSelect/index.js +1 -0
- package/dist/esm/components/FormGroup/FormGroup.js +9 -0
- package/dist/esm/components/FormGroup/index.js +1 -0
- package/dist/esm/components/Grid/Col.js +35 -0
- package/dist/esm/components/Grid/Row.js +35 -0
- package/dist/esm/components/Grid/index.js +2 -0
- package/dist/esm/components/Heading1/Heading1.js +23 -0
- package/dist/esm/components/Heading1/index.js +1 -0
- package/dist/esm/components/Heading2/Heading2.js +23 -0
- package/dist/esm/components/Heading2/index.js +1 -0
- package/dist/esm/components/Heading3/Heading3.js +23 -0
- package/dist/esm/components/Heading3/index.js +1 -0
- package/dist/esm/components/Heading4/Heading4.js +23 -0
- package/dist/esm/components/Heading4/index.js +1 -0
- package/dist/esm/components/HintText/HintText.js +18 -0
- package/dist/esm/components/HintText/index.js +1 -0
- package/dist/esm/components/Icon/Icon.js +13 -0
- package/dist/esm/components/Icon/index.js +1 -0
- package/dist/esm/components/Input/Input.js +78 -0
- package/dist/esm/components/Label/Label.js +10 -0
- package/dist/esm/components/Label/index.js +1 -0
- package/dist/esm/components/LabelText/LabelText.js +16 -0
- package/dist/esm/components/LabelText/index.js +1 -0
- package/dist/esm/components/Lead/Lead.js +12 -0
- package/dist/esm/components/Lead/index.js +1 -0
- package/dist/esm/components/LineThrough/LineThrough.js +4 -0
- package/dist/esm/components/LineThrough/index.js +1 -0
- package/dist/esm/components/List/List.js +26 -0
- package/dist/esm/components/List/index.js +1 -0
- package/dist/esm/components/List/styled.js +40 -0
- package/dist/esm/components/Margin/Margin.js +36 -0
- package/dist/esm/components/Margin/index.js +1 -0
- package/dist/esm/components/NavHeader/IconButton.js +13 -0
- package/dist/esm/components/NavHeader/NavHeader.js +43 -0
- package/dist/esm/components/NavHeader/NavHeader.styles.js +82 -0
- package/dist/esm/components/NavHeader/index.js +1 -0
- package/dist/esm/components/Notification/Notification.js +81 -0
- package/dist/esm/components/Notification/index.js +1 -0
- package/dist/esm/components/NumberField/NumberField.js +6 -0
- package/dist/esm/components/NumberField/index.js +1 -0
- package/dist/esm/components/NumberInput/NumberInput.js +4 -0
- package/dist/esm/components/NumberInput/index.js +1 -0
- package/dist/esm/components/P/P.js +14 -0
- package/dist/esm/components/P/index.js +1 -0
- package/dist/esm/components/PasswordField/PasswordField.js +6 -0
- package/dist/esm/components/PasswordField/index.js +1 -0
- package/dist/esm/components/PasswordInput/PasswordInput.js +8 -0
- package/dist/esm/components/PasswordInput/PasswordInput.styled.js +14 -0
- package/dist/esm/components/PasswordInput/PasswordVisibilityToggle.js +22 -0
- package/dist/esm/components/PasswordInput/index.js +1 -0
- package/dist/esm/components/PhoneField/PhoneField.js +6 -0
- package/dist/esm/components/PhoneField/index.js +1 -0
- package/dist/esm/components/PhoneInput/PhoneInput.js +3 -0
- package/dist/esm/components/PhoneInput/index.js +1 -0
- package/dist/esm/components/ProductCarousel/NavigationDots.js +48 -0
- package/dist/esm/components/ProductCarousel/ProductCarousel.js +81 -0
- package/dist/esm/components/ProductCarousel/anchor-point.js +43 -0
- package/dist/esm/components/ProductCarousel/index.js +1 -0
- package/dist/esm/components/Radio/Radio.js +52 -0
- package/dist/esm/components/Radio/RadioField.js +21 -0
- package/dist/esm/components/Radio/index.js +2 -0
- package/dist/esm/components/RadioCard/RadioCard.js +57 -0
- package/dist/esm/components/RadioCard/index.js +1 -0
- package/dist/esm/components/SegmentedControls/SegmentedControls.js +48 -0
- package/dist/esm/components/SegmentedControls/components/SegmentButton.js +78 -0
- package/dist/esm/components/SegmentedControls/index.js +2 -0
- package/dist/esm/components/SelectField/Select.js +93 -0
- package/dist/esm/components/SelectField/SelectField.js +4 -0
- package/dist/esm/components/SelectField/index.js +1 -0
- package/dist/esm/components/SkeletonAnimation/SkeletonAnimation.js +30 -0
- package/dist/esm/components/SkeletonAnimation/index.js +1 -0
- package/dist/esm/components/SkeletonCTA/SkeletonCTA.js +11 -0
- package/dist/esm/components/SkeletonCTA/index.js +1 -0
- package/dist/esm/components/SkeletonCircle/SkeletonCircle.js +12 -0
- package/dist/esm/components/SkeletonCircle/index.js +1 -0
- package/dist/esm/components/SkeletonHeading/SkeletonHeading.js +9 -0
- package/dist/esm/components/SkeletonHeading/index.js +1 -0
- package/dist/esm/components/SkeletonText/SkeletonText.js +27 -0
- package/dist/esm/components/SkeletonText/index.js +1 -0
- package/dist/esm/components/Small/Small.js +8 -0
- package/dist/esm/components/Small/index.js +1 -0
- package/dist/esm/components/Spinner/Spinner.js +43 -0
- package/dist/esm/components/Spinner/index.js +1 -0
- package/dist/esm/components/Stack/Stack.js +17 -0
- package/dist/esm/components/Stack/index.js +1 -0
- package/dist/esm/components/Stretch/Stretch.js +13 -0
- package/dist/esm/components/Stretch/index.js +1 -0
- package/dist/esm/components/Strong/Strong.js +4 -0
- package/dist/esm/components/Strong/index.js +1 -0
- package/dist/esm/components/SubLabelText/SubLabelText.js +16 -0
- package/dist/esm/components/SubLabelText/index.js +1 -0
- package/dist/esm/components/Tabs/Tab.js +67 -0
- package/dist/esm/components/Tabs/TabList.js +21 -0
- package/dist/esm/components/Tabs/TabPanel.js +13 -0
- package/dist/esm/components/Tabs/Tabs.js +42 -0
- package/dist/esm/components/Tabs/index.js +4 -0
- package/dist/esm/components/TextField/TextField.js +6 -0
- package/dist/esm/components/TextField/index.js +1 -0
- package/dist/esm/components/TextGroup/TextGroup.js +20 -0
- package/dist/esm/components/TextGroup/index.js +1 -0
- package/dist/esm/components/TextInput/TextInput.js +4 -0
- package/dist/esm/components/TextInput/index.js +1 -0
- package/dist/esm/components/TextLink/TextLink.js +21 -0
- package/dist/esm/components/TextLink/index.js +1 -0
- package/dist/esm/components/TextareaField/TextareaField.js +6 -0
- package/dist/esm/components/TextareaField/index.js +1 -0
- package/dist/esm/components/TextareaInput/TextareaInput.js +13 -0
- package/dist/esm/components/TextareaInput/index.js +1 -0
- package/dist/esm/components/Toast/Toast.js +126 -0
- package/dist/esm/components/Toast/index.js +1 -0
- package/dist/esm/components/Toggle/Toggle.js +25 -0
- package/dist/esm/components/Toggle/index.js +1 -0
- package/dist/esm/components/Toggle/styles.js +37 -0
- package/dist/esm/components/index.js +67 -0
- package/dist/esm/hooks/index.js +2 -0
- package/dist/esm/hooks/use-breakpoint.js +12 -0
- package/dist/esm/hooks/use-full-width.js +15 -0
- package/dist/esm/hooks/use-layout.js +16 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/providers/IconsProvider.js +112 -0
- package/dist/esm/providers/icons/Address.js +3 -0
- package/dist/esm/providers/icons/Advice.js +3 -0
- package/dist/esm/providers/icons/Archive.js +3 -0
- package/dist/esm/providers/icons/ArrowDown.js +3 -0
- package/dist/esm/providers/icons/ArrowLeft.js +3 -0
- package/dist/esm/providers/icons/ArrowRight.js +3 -0
- package/dist/esm/providers/icons/ArrowUp.js +3 -0
- package/dist/esm/providers/icons/Award.js +3 -0
- package/dist/esm/providers/icons/Battery.js +3 -0
- package/dist/esm/providers/icons/Cal.js +3 -0
- package/dist/esm/providers/icons/CalBook.js +3 -0
- package/dist/esm/providers/icons/CaretArrowDown.js +3 -0
- package/dist/esm/providers/icons/CaretArrowLeft.js +3 -0
- package/dist/esm/providers/icons/CaretArrowRight.js +3 -0
- package/dist/esm/providers/icons/CaretArrowUp.js +3 -0
- package/dist/esm/providers/icons/CaretDown.js +3 -0
- package/dist/esm/providers/icons/CaretLeft.js +3 -0
- package/dist/esm/providers/icons/CaretRight.js +3 -0
- package/dist/esm/providers/icons/CaretUp.js +3 -0
- package/dist/esm/providers/icons/Chart.js +3 -0
- package/dist/esm/providers/icons/ChartFilled.js +3 -0
- package/dist/esm/providers/icons/Check.js +3 -0
- package/dist/esm/providers/icons/CheckCircle.js +3 -0
- package/dist/esm/providers/icons/ChevronDown.js +3 -0
- package/dist/esm/providers/icons/ChevronLeft.js +3 -0
- package/dist/esm/providers/icons/ChevronLeftSmall.js +3 -0
- package/dist/esm/providers/icons/ChevronLeftSmallFirst.js +3 -0
- package/dist/esm/providers/icons/ChevronRight.js +3 -0
- package/dist/esm/providers/icons/ChevronRightSmall.js +3 -0
- package/dist/esm/providers/icons/ChevronRightSmallLast.js +3 -0
- package/dist/esm/providers/icons/ChevronUp.js +3 -0
- package/dist/esm/providers/icons/Circle.js +3 -0
- package/dist/esm/providers/icons/CloseCircle.js +3 -0
- package/dist/esm/providers/icons/Cross.js +3 -0
- package/dist/esm/providers/icons/Doc.js +3 -0
- package/dist/esm/providers/icons/Dollar.js +3 -0
- package/dist/esm/providers/icons/Download.js +3 -0
- package/dist/esm/providers/icons/Eco.js +3 -0
- package/dist/esm/providers/icons/EcoHome.js +3 -0
- package/dist/esm/providers/icons/Edit.js +3 -0
- package/dist/esm/providers/icons/ElectricCar.js +3 -0
- package/dist/esm/providers/icons/ElectricHome.js +3 -0
- package/dist/esm/providers/icons/Electricity.js +3 -0
- package/dist/esm/providers/icons/EnergyAdvice.js +3 -0
- package/dist/esm/providers/icons/Equals.js +3 -0
- package/dist/esm/providers/icons/Euro.js +3 -0
- package/dist/esm/providers/icons/Gas.js +3 -0
- package/dist/esm/providers/icons/GlobeAddress.js +3 -0
- package/dist/esm/providers/icons/Help.js +3 -0
- package/dist/esm/providers/icons/HelpFilled.js +3 -0
- package/dist/esm/providers/icons/Hide.js +3 -0
- package/dist/esm/providers/icons/Home.js +3 -0
- package/dist/esm/providers/icons/HomeFilled.js +3 -0
- package/dist/esm/providers/icons/HydroPower.js +3 -0
- package/dist/esm/providers/icons/Info.js +3 -0
- package/dist/esm/providers/icons/Link.js +3 -0
- package/dist/esm/providers/icons/Logo.js +3 -0
- package/dist/esm/providers/icons/Mail.js +3 -0
- package/dist/esm/providers/icons/MailOpen.js +3 -0
- package/dist/esm/providers/icons/Menu.js +3 -0
- package/dist/esm/providers/icons/Message.js +3 -0
- package/dist/esm/providers/icons/MessageFilled.js +3 -0
- package/dist/esm/providers/icons/Minus.js +3 -0
- package/dist/esm/providers/icons/Mobile.js +3 -0
- package/dist/esm/providers/icons/NewWindow.js +3 -0
- package/dist/esm/providers/icons/PaymentCard.js +3 -0
- package/dist/esm/providers/icons/PaymentCardFilled.js +3 -0
- package/dist/esm/providers/icons/Phone.js +3 -0
- package/dist/esm/providers/icons/Plus.js +3 -0
- package/dist/esm/providers/icons/Pound.js +3 -0
- package/dist/esm/providers/icons/Pricing.js +3 -0
- package/dist/esm/providers/icons/PricingFilled.js +3 -0
- package/dist/esm/providers/icons/Search.js +3 -0
- package/dist/esm/providers/icons/Security.js +3 -0
- package/dist/esm/providers/icons/Shop.js +3 -0
- package/dist/esm/providers/icons/ShopFilled.js +3 -0
- package/dist/esm/providers/icons/Show.js +3 -0
- package/dist/esm/providers/icons/SmartHome.js +3 -0
- package/dist/esm/providers/icons/SmartMeter.js +3 -0
- package/dist/esm/providers/icons/Solar.js +3 -0
- package/dist/esm/providers/icons/Star.js +3 -0
- package/dist/esm/providers/icons/StarFilled.js +3 -0
- package/dist/esm/providers/icons/Sun.js +3 -0
- package/dist/esm/providers/icons/Torch.js +3 -0
- package/dist/esm/providers/icons/Trees.js +3 -0
- package/dist/esm/providers/icons/Tune.js +3 -0
- package/dist/esm/providers/icons/User.js +3 -0
- package/dist/esm/providers/icons/UserFilled.js +3 -0
- package/dist/esm/providers/icons/Wallet.js +3 -0
- package/dist/esm/providers/icons/WalletFilled.js +3 -0
- package/dist/esm/providers/icons/WarmHome.js +3 -0
- package/dist/esm/providers/icons/Warning.js +3 -0
- package/dist/esm/providers/icons/WebAddress.js +3 -0
- package/dist/esm/providers/icons/WindPower.js +3 -0
- package/dist/esm/providers/icons/index.js +93 -0
- package/dist/esm/providers/index.js +2 -0
- package/dist/esm/providers/types.js +1 -0
- package/dist/esm/src/components/Button/Button.js +2 -1
- package/dist/esm/src/components/Button/Button.styles.js +4 -1
- package/dist/esm/src/components/CurrencyField/CurrencyField.js +2 -2
- package/dist/esm/src/components/EmailField/EmailField.js +2 -2
- package/dist/esm/src/components/Grid/Col.js +14 -12
- package/dist/esm/src/components/Grid/Row.js +6 -10
- package/dist/esm/src/components/Heading/Heading.js +1 -1
- package/dist/esm/src/components/NavHeader/NavHeader.js +126 -29
- package/dist/esm/src/components/NavHeader/NavHeader.styles.js +84 -54
- package/dist/esm/src/components/NavHeader/NavHeaderComponents/ActionButtons.js +12 -0
- package/dist/esm/src/components/NavHeader/NavHeaderComponents/NavButton.js +23 -0
- package/dist/esm/src/components/NavHeader/NavHeaderComponents/StepCounterBars.js +5 -0
- package/dist/esm/src/components/NavHeader/utils.js +23 -0
- package/dist/esm/src/components/{NavigationIcon/NavigationIcon.js → NavIcon/NavIcon.js} +1 -1
- package/dist/esm/src/components/NavIcon/index.js +1 -0
- package/dist/esm/src/components/PasswordField/PasswordField.js +2 -2
- package/dist/esm/src/components/PasswordInput/PasswordInput.js +1 -1
- package/dist/esm/src/components/PhoneField/PhoneField.js +2 -2
- package/dist/esm/src/components/ScreenView/ScreenView.js +33 -0
- package/dist/esm/src/components/ScreenView/index.js +1 -0
- package/dist/esm/src/components/SegmentedControls/components/SegmentButton.js +1 -1
- package/dist/esm/src/components/SelectField/Select.js +5 -4
- package/dist/esm/src/components/SelectField/SelectField.js +1 -1
- package/dist/esm/src/components/TextField/TextField.js +2 -2
- package/dist/esm/src/components/TextInput/TextInput.js +1 -1
- package/dist/esm/src/components/TextareaField/TextareaField.js +2 -2
- package/dist/esm/src/components/Toggle/styles.js +1 -1
- package/dist/esm/src/components/index.js +2 -0
- package/dist/esm/src/hooks/index.js +1 -1
- package/dist/esm/src/hooks/use-full-width.js +1 -1
- package/dist/esm/styled.native.js +4 -0
- package/dist/esm/theme/index.js +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/utils.js +68 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/use-breakpoint.d.ts +7 -0
- package/dist/hooks/use-breakpoint.js +12 -0
- package/dist/hooks/use-full-width.d.ts +2 -0
- package/dist/hooks/use-full-width.js +15 -0
- package/dist/hooks/use-layout.d.ts +6 -0
- package/dist/hooks/use-layout.js +16 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/providers/IconsProvider.d.ts +8 -0
- package/dist/providers/IconsProvider.js +112 -0
- package/dist/providers/icons/Address.d.ts +2 -0
- package/dist/providers/icons/Address.js +3 -0
- package/dist/providers/icons/Advice.d.ts +2 -0
- package/dist/providers/icons/Advice.js +3 -0
- package/dist/providers/icons/Archive.d.ts +2 -0
- package/dist/providers/icons/Archive.js +3 -0
- package/dist/providers/icons/ArrowDown.d.ts +2 -0
- package/dist/providers/icons/ArrowDown.js +3 -0
- package/dist/providers/icons/ArrowLeft.d.ts +2 -0
- package/dist/providers/icons/ArrowLeft.js +3 -0
- package/dist/providers/icons/ArrowRight.d.ts +2 -0
- package/dist/providers/icons/ArrowRight.js +3 -0
- package/dist/providers/icons/ArrowUp.d.ts +2 -0
- package/dist/providers/icons/ArrowUp.js +3 -0
- package/dist/providers/icons/Award.d.ts +2 -0
- package/dist/providers/icons/Award.js +3 -0
- package/dist/providers/icons/Battery.d.ts +2 -0
- package/dist/providers/icons/Battery.js +3 -0
- package/dist/providers/icons/Cal.d.ts +2 -0
- package/dist/providers/icons/Cal.js +3 -0
- package/dist/providers/icons/CalBook.d.ts +2 -0
- package/dist/providers/icons/CalBook.js +3 -0
- package/dist/providers/icons/CaretArrowDown.d.ts +2 -0
- package/dist/providers/icons/CaretArrowDown.js +3 -0
- package/dist/providers/icons/CaretArrowLeft.d.ts +2 -0
- package/dist/providers/icons/CaretArrowLeft.js +3 -0
- package/dist/providers/icons/CaretArrowRight.d.ts +2 -0
- package/dist/providers/icons/CaretArrowRight.js +3 -0
- package/dist/providers/icons/CaretArrowUp.d.ts +2 -0
- package/dist/providers/icons/CaretArrowUp.js +3 -0
- package/dist/providers/icons/CaretDown.d.ts +2 -0
- package/dist/providers/icons/CaretDown.js +3 -0
- package/dist/providers/icons/CaretLeft.d.ts +2 -0
- package/dist/providers/icons/CaretLeft.js +3 -0
- package/dist/providers/icons/CaretRight.d.ts +2 -0
- package/dist/providers/icons/CaretRight.js +3 -0
- package/dist/providers/icons/CaretUp.d.ts +2 -0
- package/dist/providers/icons/CaretUp.js +3 -0
- package/dist/providers/icons/Chart.d.ts +2 -0
- package/dist/providers/icons/Chart.js +3 -0
- package/dist/providers/icons/ChartFilled.d.ts +2 -0
- package/dist/providers/icons/ChartFilled.js +3 -0
- package/dist/providers/icons/Check.d.ts +2 -0
- package/dist/providers/icons/Check.js +3 -0
- package/dist/providers/icons/CheckCircle.d.ts +2 -0
- package/dist/providers/icons/CheckCircle.js +3 -0
- package/dist/providers/icons/ChevronDown.d.ts +2 -0
- package/dist/providers/icons/ChevronDown.js +3 -0
- package/dist/providers/icons/ChevronLeft.d.ts +2 -0
- package/dist/providers/icons/ChevronLeft.js +3 -0
- package/dist/providers/icons/ChevronLeftSmall.d.ts +2 -0
- package/dist/providers/icons/ChevronLeftSmall.js +3 -0
- package/dist/providers/icons/ChevronLeftSmallFirst.d.ts +2 -0
- package/dist/providers/icons/ChevronLeftSmallFirst.js +3 -0
- package/dist/providers/icons/ChevronRight.d.ts +2 -0
- package/dist/providers/icons/ChevronRight.js +3 -0
- package/dist/providers/icons/ChevronRightSmall.d.ts +2 -0
- package/dist/providers/icons/ChevronRightSmall.js +3 -0
- package/dist/providers/icons/ChevronRightSmallLast.d.ts +2 -0
- package/dist/providers/icons/ChevronRightSmallLast.js +3 -0
- package/dist/providers/icons/ChevronUp.d.ts +2 -0
- package/dist/providers/icons/ChevronUp.js +3 -0
- package/dist/providers/icons/Circle.d.ts +2 -0
- package/dist/providers/icons/Circle.js +3 -0
- package/dist/providers/icons/CloseCircle.d.ts +2 -0
- package/dist/providers/icons/CloseCircle.js +3 -0
- package/dist/providers/icons/Cross.d.ts +2 -0
- package/dist/providers/icons/Cross.js +3 -0
- package/dist/providers/icons/Doc.d.ts +2 -0
- package/dist/providers/icons/Doc.js +3 -0
- package/dist/providers/icons/Dollar.d.ts +2 -0
- package/dist/providers/icons/Dollar.js +3 -0
- package/dist/providers/icons/Download.d.ts +2 -0
- package/dist/providers/icons/Download.js +3 -0
- package/dist/providers/icons/Eco.d.ts +2 -0
- package/dist/providers/icons/Eco.js +3 -0
- package/dist/providers/icons/EcoHome.d.ts +2 -0
- package/dist/providers/icons/EcoHome.js +3 -0
- package/dist/providers/icons/Edit.d.ts +2 -0
- package/dist/providers/icons/Edit.js +3 -0
- package/dist/providers/icons/ElectricCar.d.ts +2 -0
- package/dist/providers/icons/ElectricCar.js +3 -0
- package/dist/providers/icons/ElectricHome.d.ts +2 -0
- package/dist/providers/icons/ElectricHome.js +3 -0
- package/dist/providers/icons/Electricity.d.ts +2 -0
- package/dist/providers/icons/Electricity.js +3 -0
- package/dist/providers/icons/EnergyAdvice.d.ts +2 -0
- package/dist/providers/icons/EnergyAdvice.js +3 -0
- package/dist/providers/icons/Equals.d.ts +2 -0
- package/dist/providers/icons/Equals.js +3 -0
- package/dist/providers/icons/Euro.d.ts +2 -0
- package/dist/providers/icons/Euro.js +3 -0
- package/dist/providers/icons/Gas.d.ts +2 -0
- package/dist/providers/icons/Gas.js +3 -0
- package/dist/providers/icons/GlobeAddress.d.ts +2 -0
- package/dist/providers/icons/GlobeAddress.js +3 -0
- package/dist/providers/icons/Help.d.ts +2 -0
- package/dist/providers/icons/Help.js +3 -0
- package/dist/providers/icons/HelpFilled.d.ts +2 -0
- package/dist/providers/icons/HelpFilled.js +3 -0
- package/dist/providers/icons/Hide.d.ts +2 -0
- package/dist/providers/icons/Hide.js +3 -0
- package/dist/providers/icons/Home.d.ts +2 -0
- package/dist/providers/icons/Home.js +3 -0
- package/dist/providers/icons/HomeFilled.d.ts +2 -0
- package/dist/providers/icons/HomeFilled.js +3 -0
- package/dist/providers/icons/HydroPower.d.ts +2 -0
- package/dist/providers/icons/HydroPower.js +3 -0
- package/dist/providers/icons/Info.d.ts +2 -0
- package/dist/providers/icons/Info.js +3 -0
- package/dist/providers/icons/Link.d.ts +2 -0
- package/dist/providers/icons/Link.js +3 -0
- package/dist/providers/icons/Logo.d.ts +2 -0
- package/dist/providers/icons/Logo.js +3 -0
- package/dist/providers/icons/Mail.d.ts +2 -0
- package/dist/providers/icons/Mail.js +3 -0
- package/dist/providers/icons/MailOpen.d.ts +2 -0
- package/dist/providers/icons/MailOpen.js +3 -0
- package/dist/providers/icons/Menu.d.ts +2 -0
- package/dist/providers/icons/Menu.js +3 -0
- package/dist/providers/icons/Message.d.ts +2 -0
- package/dist/providers/icons/Message.js +3 -0
- package/dist/providers/icons/MessageFilled.d.ts +2 -0
- package/dist/providers/icons/MessageFilled.js +3 -0
- package/dist/providers/icons/Minus.d.ts +2 -0
- package/dist/providers/icons/Minus.js +3 -0
- package/dist/providers/icons/Mobile.d.ts +2 -0
- package/dist/providers/icons/Mobile.js +3 -0
- package/dist/providers/icons/NewWindow.d.ts +2 -0
- package/dist/providers/icons/NewWindow.js +3 -0
- package/dist/providers/icons/PaymentCard.d.ts +2 -0
- package/dist/providers/icons/PaymentCard.js +3 -0
- package/dist/providers/icons/PaymentCardFilled.d.ts +2 -0
- package/dist/providers/icons/PaymentCardFilled.js +3 -0
- package/dist/providers/icons/Phone.d.ts +2 -0
- package/dist/providers/icons/Phone.js +3 -0
- package/dist/providers/icons/Plus.d.ts +2 -0
- package/dist/providers/icons/Plus.js +3 -0
- package/dist/providers/icons/Pound.d.ts +2 -0
- package/dist/providers/icons/Pound.js +3 -0
- package/dist/providers/icons/Pricing.d.ts +2 -0
- package/dist/providers/icons/Pricing.js +3 -0
- package/dist/providers/icons/PricingFilled.d.ts +2 -0
- package/dist/providers/icons/PricingFilled.js +3 -0
- package/dist/providers/icons/Search.d.ts +2 -0
- package/dist/providers/icons/Search.js +3 -0
- package/dist/providers/icons/Security.d.ts +2 -0
- package/dist/providers/icons/Security.js +3 -0
- package/dist/providers/icons/Shop.d.ts +2 -0
- package/dist/providers/icons/Shop.js +3 -0
- package/dist/providers/icons/ShopFilled.d.ts +2 -0
- package/dist/providers/icons/ShopFilled.js +3 -0
- package/dist/providers/icons/Show.d.ts +2 -0
- package/dist/providers/icons/Show.js +3 -0
- package/dist/providers/icons/SmartHome.d.ts +2 -0
- package/dist/providers/icons/SmartHome.js +3 -0
- package/dist/providers/icons/SmartMeter.d.ts +2 -0
- package/dist/providers/icons/SmartMeter.js +3 -0
- package/dist/providers/icons/Solar.d.ts +2 -0
- package/dist/providers/icons/Solar.js +3 -0
- package/dist/providers/icons/Star.d.ts +2 -0
- package/dist/providers/icons/Star.js +3 -0
- package/dist/providers/icons/StarFilled.d.ts +2 -0
- package/dist/providers/icons/StarFilled.js +3 -0
- package/dist/providers/icons/Sun.d.ts +2 -0
- package/dist/providers/icons/Sun.js +3 -0
- package/dist/providers/icons/Torch.d.ts +2 -0
- package/dist/providers/icons/Torch.js +3 -0
- package/dist/providers/icons/Trees.d.ts +2 -0
- package/dist/providers/icons/Trees.js +3 -0
- package/dist/providers/icons/Tune.d.ts +2 -0
- package/dist/providers/icons/Tune.js +3 -0
- package/dist/providers/icons/User.d.ts +2 -0
- package/dist/providers/icons/User.js +3 -0
- package/dist/providers/icons/UserFilled.d.ts +2 -0
- package/dist/providers/icons/UserFilled.js +3 -0
- package/dist/providers/icons/Wallet.d.ts +2 -0
- package/dist/providers/icons/Wallet.js +3 -0
- package/dist/providers/icons/WalletFilled.d.ts +2 -0
- package/dist/providers/icons/WalletFilled.js +3 -0
- package/dist/providers/icons/WarmHome.d.ts +2 -0
- package/dist/providers/icons/WarmHome.js +3 -0
- package/dist/providers/icons/Warning.d.ts +2 -0
- package/dist/providers/icons/Warning.js +3 -0
- package/dist/providers/icons/WebAddress.d.ts +2 -0
- package/dist/providers/icons/WebAddress.js +3 -0
- package/dist/providers/icons/WindPower.d.ts +2 -0
- package/dist/providers/icons/WindPower.js +3 -0
- package/dist/providers/icons/index.d.ts +93 -0
- package/dist/providers/icons/index.js +93 -0
- package/dist/providers/index.d.ts +2 -0
- package/dist/providers/index.js +2 -0
- package/dist/providers/types.d.ts +5 -0
- package/dist/providers/types.js +1 -0
- package/dist/src/components/Button/Button.d.ts +3 -2
- package/dist/src/components/Button/Button.js +2 -1
- package/dist/src/components/Button/Button.styles.d.ts +1 -1
- package/dist/src/components/Button/Button.styles.js +4 -1
- package/dist/src/components/Cards/IconDataCard/IconDataCard.styles.d.ts +2 -2
- package/dist/src/components/Cards/LinkTextCard/LinkTextCard.styles.d.ts +1 -1
- package/dist/src/components/CurrencyField/CurrencyField.d.ts +1 -1
- package/dist/src/components/CurrencyField/CurrencyField.js +2 -2
- package/dist/src/components/EmailField/EmailField.d.ts +1 -1
- package/dist/src/components/EmailField/EmailField.js +2 -2
- package/dist/src/components/Grid/Col.js +14 -12
- package/dist/src/components/Grid/Row.js +6 -10
- package/dist/src/components/Heading/Heading.d.ts +3 -1
- package/dist/src/components/Heading/Heading.js +1 -1
- package/dist/src/components/NavHeader/NavHeader.d.ts +24 -21
- package/dist/src/components/NavHeader/NavHeader.js +126 -29
- package/dist/src/components/NavHeader/NavHeader.styles.d.ts +2320 -20
- package/dist/src/components/NavHeader/NavHeader.styles.js +84 -54
- package/dist/src/components/NavHeader/NavHeaderComponents/ActionButtons.d.ts +3 -0
- package/dist/src/components/NavHeader/NavHeaderComponents/ActionButtons.js +12 -0
- package/dist/src/components/NavHeader/NavHeaderComponents/NavButton.d.ts +11 -0
- package/dist/src/components/NavHeader/NavHeaderComponents/NavButton.js +23 -0
- package/dist/src/components/NavHeader/NavHeaderComponents/StepCounterBars.d.ts +7 -0
- package/dist/src/components/NavHeader/NavHeaderComponents/StepCounterBars.js +5 -0
- package/dist/src/components/NavHeader/utils.d.ts +9 -0
- package/dist/src/components/NavHeader/utils.js +23 -0
- package/dist/src/components/{NavigationIcon/NavigationIcon.d.ts → NavIcon/NavIcon.d.ts} +2 -2
- package/dist/src/components/{NavigationIcon/NavigationIcon.js → NavIcon/NavIcon.js} +1 -1
- package/dist/src/components/NavIcon/index.d.ts +1 -0
- package/dist/src/components/NavIcon/index.js +1 -0
- package/dist/src/components/PasswordField/PasswordField.d.ts +1 -1
- package/dist/src/components/PasswordField/PasswordField.js +2 -2
- package/dist/src/components/PasswordInput/PasswordInput.js +1 -1
- package/dist/src/components/PhoneField/PhoneField.d.ts +1 -1
- package/dist/src/components/PhoneField/PhoneField.js +2 -2
- package/dist/src/components/ScreenView/ScreenView.d.ts +5 -0
- package/dist/src/components/ScreenView/ScreenView.js +33 -0
- package/dist/src/components/ScreenView/index.d.ts +1 -0
- package/dist/src/components/ScreenView/index.js +1 -0
- package/dist/src/components/SegmentedControls/components/SegmentButton.js +1 -1
- package/dist/src/components/SelectField/Select.d.ts +3 -1
- package/dist/src/components/SelectField/Select.js +5 -4
- package/dist/src/components/SelectField/SelectField.d.ts +4 -1
- package/dist/src/components/SelectField/SelectField.js +1 -1
- package/dist/src/components/TextField/TextField.d.ts +1 -1
- package/dist/src/components/TextField/TextField.js +2 -2
- package/dist/src/components/TextInput/TextInput.d.ts +5 -3
- package/dist/src/components/TextInput/TextInput.js +1 -1
- package/dist/src/components/TextareaField/TextareaField.d.ts +1 -1
- package/dist/src/components/TextareaField/TextareaField.js +2 -2
- package/dist/src/components/Toggle/styles.js +1 -1
- package/dist/src/components/index.d.ts +2 -0
- package/dist/src/components/index.js +2 -0
- package/dist/src/hooks/index.d.ts +1 -1
- package/dist/src/hooks/index.js +1 -1
- package/dist/src/hooks/use-full-width.js +1 -1
- package/dist/styled.native.d.ts +3388 -0
- package/dist/styled.native.js +4 -0
- package/dist/theme/index.d.ts +1 -0
- package/dist/theme/index.js +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/utils.d.ts +15 -0
- package/dist/utils/utils.js +68 -0
- package/package.json +2 -1
- package/dist/esm/src/components/NavigationIcon/index.js +0 -1
- package/dist/src/components/NavigationIcon/index.d.ts +0 -1
- package/dist/src/components/NavigationIcon/index.js +0 -1
- /package/dist/esm/src/hooks/{use-breakpoint.js → use-breakpoint.native.js} +0 -0
- /package/dist/src/hooks/{use-breakpoint.d.ts → use-breakpoint.native.d.ts} +0 -0
- /package/dist/src/hooks/{use-breakpoint.js → use-breakpoint.native.js} +0 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import Animated, { Extrapolate, interpolate, interpolateColor, useAnimatedStyle, } from 'react-native-reanimated';
|
|
3
|
+
import styled, { useTheme } from '../../styled.native';
|
|
4
|
+
export function NavigationDots({ data, animatedValue, }) {
|
|
5
|
+
return (_jsx(SDotsContainer, { children: data.map((_, index) => (_jsx(Dot, { index: index, length: data.length, animatedValue: animatedValue }, index))) }));
|
|
6
|
+
}
|
|
7
|
+
const Dot = ({ animatedValue, index, length, width = 10 }) => {
|
|
8
|
+
const theme = useTheme();
|
|
9
|
+
const animatedStyle = useAnimatedStyle(() => {
|
|
10
|
+
let inputRange = [index - 1, index, index + 1];
|
|
11
|
+
let outputRange = [-width, 0, width];
|
|
12
|
+
if (index === 0 && animatedValue?.value > length - 1) {
|
|
13
|
+
inputRange = [length - 1, length, length + 1];
|
|
14
|
+
outputRange = [-width, 0, width];
|
|
15
|
+
}
|
|
16
|
+
const backgroundColor = interpolateColor(animatedValue?.value, inputRange, [
|
|
17
|
+
theme.core.color.brand.forest,
|
|
18
|
+
theme.core.color.brand.energised,
|
|
19
|
+
theme.core.color.brand.forest,
|
|
20
|
+
]);
|
|
21
|
+
return {
|
|
22
|
+
transform: [
|
|
23
|
+
{
|
|
24
|
+
translateX: interpolate(animatedValue?.value, inputRange, outputRange, Extrapolate.CLAMP),
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
backgroundColor,
|
|
28
|
+
};
|
|
29
|
+
}, [animatedValue, index, length]);
|
|
30
|
+
return (_jsx(SDot, { "$width": width, children: _jsx(SAnimatedDot, { style: animatedStyle }) }));
|
|
31
|
+
};
|
|
32
|
+
const SDotsContainer = styled.View `
|
|
33
|
+
position: absolute;
|
|
34
|
+
bottom: 20px;
|
|
35
|
+
flex-direction: row;
|
|
36
|
+
gap: 10px;
|
|
37
|
+
`;
|
|
38
|
+
const SDot = styled.View `
|
|
39
|
+
background-color: ${({ theme }) => theme.core.color.brand.forest};
|
|
40
|
+
width: ${({ $width }) => $width}px;
|
|
41
|
+
height: ${({ $width }) => $width}px;
|
|
42
|
+
border-radius: 50px;
|
|
43
|
+
overflow: hidden;
|
|
44
|
+
`;
|
|
45
|
+
const SAnimatedDot = styled(Animated.View) `
|
|
46
|
+
border-radius: 20px;
|
|
47
|
+
flex: 1;
|
|
48
|
+
`;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type JSX } from 'react';
|
|
2
|
+
interface ProductCarouselProps<T> {
|
|
3
|
+
data: T[];
|
|
4
|
+
children: (item: T) => JSX.Element;
|
|
5
|
+
width?: number;
|
|
6
|
+
height: number;
|
|
7
|
+
fullWidth?: boolean;
|
|
8
|
+
showArrows?: boolean;
|
|
9
|
+
showDots?: boolean;
|
|
10
|
+
loop?: boolean;
|
|
11
|
+
arrowsDistanceFromTop?: number;
|
|
12
|
+
}
|
|
13
|
+
export declare function ProductCarousel<T>({ data, children, width, height, fullWidth, showArrows, showDots, loop, arrowsDistanceFromTop, }: ProductCarouselProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { numToPx } from '@ovotech/element-core';
|
|
3
|
+
import { useRef } from 'react';
|
|
4
|
+
import { useWindowDimensions, View } from 'react-native';
|
|
5
|
+
import Animated, { Extrapolation, interpolate, useAnimatedStyle, useSharedValue, } from 'react-native-reanimated';
|
|
6
|
+
import Carousel from 'react-native-reanimated-carousel';
|
|
7
|
+
import Svg, { Path } from 'react-native-svg';
|
|
8
|
+
import { useBreakpoint } from '../../hooks';
|
|
9
|
+
import styled, { useTheme } from '../../styled.native';
|
|
10
|
+
import { Icon } from '../Icon';
|
|
11
|
+
import { NavigationDots } from './NavigationDots';
|
|
12
|
+
import { withAnchorPoint } from './anchor-point';
|
|
13
|
+
export function ProductCarousel({ data, children, width, height, fullWidth, showArrows = true, showDots = false, loop = true, arrowsDistanceFromTop, }) {
|
|
14
|
+
const theme = useTheme();
|
|
15
|
+
const { mediumAndUp } = useBreakpoint();
|
|
16
|
+
const carouselRef = useRef(null);
|
|
17
|
+
const progressValue = useSharedValue(0);
|
|
18
|
+
const windowWidth = useWindowDimensions().width;
|
|
19
|
+
const carouselWidth = fullWidth ? windowWidth : width || windowWidth;
|
|
20
|
+
return (_jsxs(View, { children: [mediumAndUp ? null : _jsx(SkewLine, {}), _jsxs(SCarouselContainer, { children: [_jsx(Carousel, { ref: carouselRef, data: data, renderItem: ({ item, animationValue }) => (_jsx(Card, { animationValue: animationValue, height: height, width: carouselWidth, children: children(item) })), vertical: false, width: carouselWidth, height: height, onProgressChange: (_, absoluteProgress) => (progressValue.value = absoluteProgress), panGestureHandlerProps: {
|
|
21
|
+
activeOffsetX: [-20, 20],
|
|
22
|
+
}, loop: loop, testID: "carousel", scrollAnimationDuration: 700 }), showArrows && data.length > 1 && (_jsxs(_Fragment, { children: [_jsx(SActionPressable, { onPress: () => carouselRef.current?.prev(), "$top": arrowsDistanceFromTop, mediumAndUp: mediumAndUp, hitSlop: {
|
|
23
|
+
top: 32,
|
|
24
|
+
bottom: 32,
|
|
25
|
+
left: 16,
|
|
26
|
+
right: 16,
|
|
27
|
+
}, children: _jsx(Icon, { name: "arrow-left", size: 32, color: theme.core.color.brand.white }) }), _jsx(SActionPressable, { "$next": true, onPress: () => carouselRef.current?.next(), "$top": arrowsDistanceFromTop, mediumAndUp: mediumAndUp, hitSlop: {
|
|
28
|
+
top: 32,
|
|
29
|
+
bottom: 32,
|
|
30
|
+
left: 16,
|
|
31
|
+
right: 16,
|
|
32
|
+
}, children: _jsx(Icon, { name: "arrow-right", size: 32, color: theme.core.color.brand.white }) })] })), showDots && data.length > 1 && (_jsx(NavigationDots, { data: data, animatedValue: progressValue }))] })] }));
|
|
33
|
+
}
|
|
34
|
+
const Card = ({ children, animationValue, height, width, }) => {
|
|
35
|
+
const WIDTH = width / 1.3;
|
|
36
|
+
const HEIGHT = height / 1.3;
|
|
37
|
+
const cardStyle = useAnimatedStyle(() => {
|
|
38
|
+
const scale = interpolate(animationValue.value, [-0.1, 0, 1], [0.95, 1, 1], Extrapolation.CLAMP);
|
|
39
|
+
const opacity = interpolate(animationValue.value, [-0.75, 0, 1], [0, 1, 0]);
|
|
40
|
+
const translateX = interpolate(animationValue.value, [-1, -0.2, 0, 1], [0, WIDTH * 0.3, 0, 0]);
|
|
41
|
+
const transform = {
|
|
42
|
+
transform: [
|
|
43
|
+
{ scale },
|
|
44
|
+
{ translateX },
|
|
45
|
+
{ perspective: 200 },
|
|
46
|
+
{
|
|
47
|
+
rotateY: `${interpolate(animationValue.value, [-1, 0, 0.4, 1], [30, 0, -25, -25], Extrapolation.CLAMP)}deg`,
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
return {
|
|
52
|
+
...withAnchorPoint(transform, { x: 0.5, y: 0.5 }, { width: WIDTH, height: HEIGHT }),
|
|
53
|
+
opacity,
|
|
54
|
+
};
|
|
55
|
+
}, []);
|
|
56
|
+
return (_jsx(Animated.View, { style: {
|
|
57
|
+
flex: 1,
|
|
58
|
+
justifyContent: 'center',
|
|
59
|
+
alignItems: 'center',
|
|
60
|
+
}, children: _jsx(Animated.View, { style: [
|
|
61
|
+
{
|
|
62
|
+
width: WIDTH,
|
|
63
|
+
height: HEIGHT,
|
|
64
|
+
},
|
|
65
|
+
cardStyle,
|
|
66
|
+
], children: children }) }));
|
|
67
|
+
};
|
|
68
|
+
const SCarouselContainer = styled.View `
|
|
69
|
+
align-items: center;
|
|
70
|
+
background-color: #0a9828;
|
|
71
|
+
overflow: hidden;
|
|
72
|
+
margin-top: -0.5px;
|
|
73
|
+
`;
|
|
74
|
+
const SActionPressable = styled.Pressable `
|
|
75
|
+
position: absolute;
|
|
76
|
+
top: ${({ $top }) => ($top ? `${$top}px` : '30%')};
|
|
77
|
+
${({ theme, $next, mediumAndUp }) => $next
|
|
78
|
+
? `right: ${mediumAndUp ? '25%' : numToPx(theme.core.space[14])}`
|
|
79
|
+
: `left: ${mediumAndUp ? '25%' : numToPx(theme.core.space[14])}`};
|
|
80
|
+
`;
|
|
81
|
+
const SkewLine = (props) => (_jsx(Svg, { width: "100%", height: 69, ...props, children: _jsx(Path, { fill: "#0A9828", d: "M768 0 0 68.776h768V0Z" }) }));
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import type { TransformsStyle } from 'react-native';
|
|
2
|
+
export interface Point {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
}
|
|
6
|
+
export interface Size {
|
|
7
|
+
width: number;
|
|
8
|
+
height: number;
|
|
9
|
+
}
|
|
10
|
+
export declare const withAnchorPoint: (transform: TransformsStyle, anchorPoint: Point, size: Size) => TransformsStyle | {
|
|
11
|
+
transform: any[] | readonly (({
|
|
12
|
+
translateX: import("react-native").AnimatableNumericValue | `${number}%`;
|
|
13
|
+
} & {
|
|
14
|
+
translateY?: undefined;
|
|
15
|
+
scale?: undefined;
|
|
16
|
+
scaleX?: undefined;
|
|
17
|
+
scaleY?: undefined;
|
|
18
|
+
skewX?: undefined;
|
|
19
|
+
skewY?: undefined;
|
|
20
|
+
perspective?: undefined;
|
|
21
|
+
rotate?: undefined;
|
|
22
|
+
rotateX?: undefined;
|
|
23
|
+
rotateY?: undefined;
|
|
24
|
+
rotateZ?: undefined;
|
|
25
|
+
matrix?: undefined;
|
|
26
|
+
}) | ({
|
|
27
|
+
translateY: import("react-native").AnimatableNumericValue | `${number}%`;
|
|
28
|
+
} & {
|
|
29
|
+
translateX?: undefined;
|
|
30
|
+
scale?: undefined;
|
|
31
|
+
scaleX?: undefined;
|
|
32
|
+
scaleY?: undefined;
|
|
33
|
+
skewX?: undefined;
|
|
34
|
+
skewY?: undefined;
|
|
35
|
+
perspective?: undefined;
|
|
36
|
+
rotate?: undefined;
|
|
37
|
+
rotateX?: undefined;
|
|
38
|
+
rotateY?: undefined;
|
|
39
|
+
rotateZ?: undefined;
|
|
40
|
+
matrix?: undefined;
|
|
41
|
+
}) | ({
|
|
42
|
+
scale: import("react-native").AnimatableNumericValue;
|
|
43
|
+
} & {
|
|
44
|
+
translateX?: undefined;
|
|
45
|
+
translateY?: undefined;
|
|
46
|
+
scaleX?: undefined;
|
|
47
|
+
scaleY?: undefined;
|
|
48
|
+
skewX?: undefined;
|
|
49
|
+
skewY?: undefined;
|
|
50
|
+
perspective?: undefined;
|
|
51
|
+
rotate?: undefined;
|
|
52
|
+
rotateX?: undefined;
|
|
53
|
+
rotateY?: undefined;
|
|
54
|
+
rotateZ?: undefined;
|
|
55
|
+
matrix?: undefined;
|
|
56
|
+
}) | ({
|
|
57
|
+
scaleX: import("react-native").AnimatableNumericValue;
|
|
58
|
+
} & {
|
|
59
|
+
translateX?: undefined;
|
|
60
|
+
translateY?: undefined;
|
|
61
|
+
scale?: undefined;
|
|
62
|
+
scaleY?: undefined;
|
|
63
|
+
skewX?: undefined;
|
|
64
|
+
skewY?: undefined;
|
|
65
|
+
perspective?: undefined;
|
|
66
|
+
rotate?: undefined;
|
|
67
|
+
rotateX?: undefined;
|
|
68
|
+
rotateY?: undefined;
|
|
69
|
+
rotateZ?: undefined;
|
|
70
|
+
matrix?: undefined;
|
|
71
|
+
}) | ({
|
|
72
|
+
scaleY: import("react-native").AnimatableNumericValue;
|
|
73
|
+
} & {
|
|
74
|
+
translateX?: undefined;
|
|
75
|
+
translateY?: undefined;
|
|
76
|
+
scale?: undefined;
|
|
77
|
+
scaleX?: undefined;
|
|
78
|
+
skewX?: undefined;
|
|
79
|
+
skewY?: undefined;
|
|
80
|
+
perspective?: undefined;
|
|
81
|
+
rotate?: undefined;
|
|
82
|
+
rotateX?: undefined;
|
|
83
|
+
rotateY?: undefined;
|
|
84
|
+
rotateZ?: undefined;
|
|
85
|
+
matrix?: undefined;
|
|
86
|
+
}) | ({
|
|
87
|
+
skewX: import("react-native").AnimatableStringValue;
|
|
88
|
+
} & {
|
|
89
|
+
translateX?: undefined;
|
|
90
|
+
translateY?: undefined;
|
|
91
|
+
scale?: undefined;
|
|
92
|
+
scaleX?: undefined;
|
|
93
|
+
scaleY?: undefined;
|
|
94
|
+
skewY?: undefined;
|
|
95
|
+
perspective?: undefined;
|
|
96
|
+
rotate?: undefined;
|
|
97
|
+
rotateX?: undefined;
|
|
98
|
+
rotateY?: undefined;
|
|
99
|
+
rotateZ?: undefined;
|
|
100
|
+
matrix?: undefined;
|
|
101
|
+
}) | ({
|
|
102
|
+
skewY: import("react-native").AnimatableStringValue;
|
|
103
|
+
} & {
|
|
104
|
+
translateX?: undefined;
|
|
105
|
+
translateY?: undefined;
|
|
106
|
+
scale?: undefined;
|
|
107
|
+
scaleX?: undefined;
|
|
108
|
+
scaleY?: undefined;
|
|
109
|
+
skewX?: undefined;
|
|
110
|
+
perspective?: undefined;
|
|
111
|
+
rotate?: undefined;
|
|
112
|
+
rotateX?: undefined;
|
|
113
|
+
rotateY?: undefined;
|
|
114
|
+
rotateZ?: undefined;
|
|
115
|
+
matrix?: undefined;
|
|
116
|
+
}) | ({
|
|
117
|
+
perspective: import("react-native").AnimatableNumericValue;
|
|
118
|
+
} & {
|
|
119
|
+
translateX?: undefined;
|
|
120
|
+
translateY?: undefined;
|
|
121
|
+
scale?: undefined;
|
|
122
|
+
scaleX?: undefined;
|
|
123
|
+
scaleY?: undefined;
|
|
124
|
+
skewX?: undefined;
|
|
125
|
+
skewY?: undefined;
|
|
126
|
+
rotate?: undefined;
|
|
127
|
+
rotateX?: undefined;
|
|
128
|
+
rotateY?: undefined;
|
|
129
|
+
rotateZ?: undefined;
|
|
130
|
+
matrix?: undefined;
|
|
131
|
+
}) | ({
|
|
132
|
+
rotate: import("react-native").AnimatableStringValue;
|
|
133
|
+
} & {
|
|
134
|
+
translateX?: undefined;
|
|
135
|
+
translateY?: undefined;
|
|
136
|
+
scale?: undefined;
|
|
137
|
+
scaleX?: undefined;
|
|
138
|
+
scaleY?: undefined;
|
|
139
|
+
skewX?: undefined;
|
|
140
|
+
skewY?: undefined;
|
|
141
|
+
perspective?: undefined;
|
|
142
|
+
rotateX?: undefined;
|
|
143
|
+
rotateY?: undefined;
|
|
144
|
+
rotateZ?: undefined;
|
|
145
|
+
matrix?: undefined;
|
|
146
|
+
}) | ({
|
|
147
|
+
rotateX: import("react-native").AnimatableStringValue;
|
|
148
|
+
} & {
|
|
149
|
+
translateX?: undefined;
|
|
150
|
+
translateY?: undefined;
|
|
151
|
+
scale?: undefined;
|
|
152
|
+
scaleX?: undefined;
|
|
153
|
+
scaleY?: undefined;
|
|
154
|
+
skewX?: undefined;
|
|
155
|
+
skewY?: undefined;
|
|
156
|
+
perspective?: undefined;
|
|
157
|
+
rotate?: undefined;
|
|
158
|
+
rotateY?: undefined;
|
|
159
|
+
rotateZ?: undefined;
|
|
160
|
+
matrix?: undefined;
|
|
161
|
+
}) | ({
|
|
162
|
+
rotateY: import("react-native").AnimatableStringValue;
|
|
163
|
+
} & {
|
|
164
|
+
translateX?: undefined;
|
|
165
|
+
translateY?: undefined;
|
|
166
|
+
scale?: undefined;
|
|
167
|
+
scaleX?: undefined;
|
|
168
|
+
scaleY?: undefined;
|
|
169
|
+
skewX?: undefined;
|
|
170
|
+
skewY?: undefined;
|
|
171
|
+
perspective?: undefined;
|
|
172
|
+
rotate?: undefined;
|
|
173
|
+
rotateX?: undefined;
|
|
174
|
+
rotateZ?: undefined;
|
|
175
|
+
matrix?: undefined;
|
|
176
|
+
}) | ({
|
|
177
|
+
rotateZ: import("react-native").AnimatableStringValue;
|
|
178
|
+
} & {
|
|
179
|
+
translateX?: undefined;
|
|
180
|
+
translateY?: undefined;
|
|
181
|
+
scale?: undefined;
|
|
182
|
+
scaleX?: undefined;
|
|
183
|
+
scaleY?: undefined;
|
|
184
|
+
skewX?: undefined;
|
|
185
|
+
skewY?: undefined;
|
|
186
|
+
perspective?: undefined;
|
|
187
|
+
rotate?: undefined;
|
|
188
|
+
rotateX?: undefined;
|
|
189
|
+
rotateY?: undefined;
|
|
190
|
+
matrix?: undefined;
|
|
191
|
+
}) | ({
|
|
192
|
+
matrix: import("react-native").AnimatableNumericValue[];
|
|
193
|
+
} & {
|
|
194
|
+
translateX?: undefined;
|
|
195
|
+
translateY?: undefined;
|
|
196
|
+
scale?: undefined;
|
|
197
|
+
scaleX?: undefined;
|
|
198
|
+
scaleY?: undefined;
|
|
199
|
+
skewX?: undefined;
|
|
200
|
+
skewY?: undefined;
|
|
201
|
+
perspective?: undefined;
|
|
202
|
+
rotate?: undefined;
|
|
203
|
+
rotateX?: undefined;
|
|
204
|
+
rotateY?: undefined;
|
|
205
|
+
rotateZ?: undefined;
|
|
206
|
+
}))[];
|
|
207
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
const isValidSize = (size) => {
|
|
2
|
+
'worklet';
|
|
3
|
+
return size && size.width > 0 && size.height > 0;
|
|
4
|
+
};
|
|
5
|
+
const defaultAnchorPoint = { x: 0.5, y: 0.5 };
|
|
6
|
+
export const withAnchorPoint = (transform, anchorPoint, size) => {
|
|
7
|
+
'worklet';
|
|
8
|
+
if (!isValidSize(size))
|
|
9
|
+
return transform;
|
|
10
|
+
let injectedTransform = transform.transform;
|
|
11
|
+
if (!injectedTransform)
|
|
12
|
+
return transform;
|
|
13
|
+
if (anchorPoint.x !== defaultAnchorPoint.x && size.width) {
|
|
14
|
+
const shiftTranslateX = [];
|
|
15
|
+
// shift before rotation
|
|
16
|
+
shiftTranslateX.push({
|
|
17
|
+
translateX: size.width * (anchorPoint.x - defaultAnchorPoint.x),
|
|
18
|
+
});
|
|
19
|
+
injectedTransform = [
|
|
20
|
+
...shiftTranslateX,
|
|
21
|
+
...injectedTransform,
|
|
22
|
+
];
|
|
23
|
+
// shift after rotation
|
|
24
|
+
injectedTransform.push({
|
|
25
|
+
translateX: size.width * (defaultAnchorPoint.x - anchorPoint.x),
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
if (!Array.isArray(injectedTransform))
|
|
29
|
+
return { transform: injectedTransform };
|
|
30
|
+
if (anchorPoint.y !== defaultAnchorPoint.y && size.height) {
|
|
31
|
+
const shiftTranslateY = [];
|
|
32
|
+
// shift before rotation
|
|
33
|
+
shiftTranslateY.push({
|
|
34
|
+
translateY: size.height * (anchorPoint.y - defaultAnchorPoint.y),
|
|
35
|
+
});
|
|
36
|
+
injectedTransform = [...shiftTranslateY, ...injectedTransform];
|
|
37
|
+
// shift after rotation
|
|
38
|
+
injectedTransform.push({
|
|
39
|
+
translateY: size.height * (defaultAnchorPoint.y - anchorPoint.y),
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
return { transform: injectedTransform };
|
|
43
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ProductCarousel } from './ProductCarousel';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ProductCarousel } from './ProductCarousel';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ReactNode, Ref } from 'react';
|
|
2
|
+
import { TouchableOpacityProps, View } from 'react-native';
|
|
3
|
+
type Props = Omit<TouchableOpacityProps, 'children'> & {
|
|
4
|
+
label: ReactNode;
|
|
5
|
+
value: string;
|
|
6
|
+
hint?: ReactNode;
|
|
7
|
+
checked?: boolean;
|
|
8
|
+
invalid?: boolean;
|
|
9
|
+
onValueChange?: (value?: string) => void;
|
|
10
|
+
activeOpacity?: number;
|
|
11
|
+
ref?: Ref<View>;
|
|
12
|
+
};
|
|
13
|
+
declare const Radio: ({ label, hint, checked, invalid, value, activeOpacity, testID, ref, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export { Radio };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { numToPx } from '@ovotech/element-core';
|
|
3
|
+
import { TouchableOpacity, View, } from 'react-native';
|
|
4
|
+
import styled from '../../styled.native';
|
|
5
|
+
import { HintText } from '../HintText';
|
|
6
|
+
import { LabelText } from '../LabelText';
|
|
7
|
+
const StyledRadioInputWrapper = styled.View(({ theme: { core } }) => {
|
|
8
|
+
return `
|
|
9
|
+
width: ${numToPx(core.space[6])};
|
|
10
|
+
height: ${numToPx(core.space[6])};
|
|
11
|
+
margin-right: 10px;
|
|
12
|
+
`;
|
|
13
|
+
});
|
|
14
|
+
const StyledRadioInput = styled.View(({ theme: { core, semantic }, invalid, checked }) => {
|
|
15
|
+
return `
|
|
16
|
+
width: ${numToPx(core.space[6])};
|
|
17
|
+
height: ${numToPx(core.space[6])};
|
|
18
|
+
border: ${numToPx(core.borderWidth.small)} solid;
|
|
19
|
+
align-items: center;
|
|
20
|
+
justify-content: center;
|
|
21
|
+
border-radius: ${numToPx(core.space[6])};
|
|
22
|
+
border-color: ${invalid
|
|
23
|
+
? semantic.message.error
|
|
24
|
+
: checked
|
|
25
|
+
? core.color.blue.dark
|
|
26
|
+
: semantic.border.functional};
|
|
27
|
+
background: ${checked ? core.color.blue.lightest : 'transparent'};
|
|
28
|
+
`;
|
|
29
|
+
});
|
|
30
|
+
const StyledRadioInputDot = styled.View(({ theme: { core }, checked }) => {
|
|
31
|
+
return `
|
|
32
|
+
width: ${numToPx(core.space[3])};
|
|
33
|
+
height: ${numToPx(core.space[3])};
|
|
34
|
+
border-radius: ${numToPx(core.space[3])};
|
|
35
|
+
background: ${core.color.blue.dark};
|
|
36
|
+
opacity: ${checked ? 1 : 0};
|
|
37
|
+
`;
|
|
38
|
+
});
|
|
39
|
+
const Input = ({ checked, invalid, testID, ...rest }) => {
|
|
40
|
+
return (_jsx(StyledRadioInputWrapper, { ...rest, children: _jsx(StyledRadioInput, { invalid: invalid, checked: checked, testID: testID, children: _jsx(StyledRadioInputDot, { checked: checked }) }) }));
|
|
41
|
+
};
|
|
42
|
+
const StyledWrapper = styled.View(({ theme: { core } }) => `
|
|
43
|
+
padding-top: ${numToPx(core.space[3])};
|
|
44
|
+
flex-direction: row;
|
|
45
|
+
`);
|
|
46
|
+
const Radio = ({ label, hint, checked, invalid,
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
48
|
+
value, // "value" is needed for RadioGroup, but isn't actually used in the radio anywhere
|
|
49
|
+
activeOpacity = 0.8, testID, ref, ...rest }) => {
|
|
50
|
+
return (_jsx(TouchableOpacity, { ref: ref, accessible: true, accessibilityRole: "radio", activeOpacity: activeOpacity, accessibilityState: { checked }, ...rest, children: _jsxs(StyledWrapper, { children: [_jsx(Input, { checked: checked, invalid: invalid, testID: testID }), _jsxs(View, { style: { flexShrink: 1 }, children: [_jsx(LabelText, { children: label }), hint ? _jsx(HintText, { children: hint }) : null] })] }) }));
|
|
51
|
+
};
|
|
52
|
+
export { Radio };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
|
+
type Props = PropsWithChildren<{
|
|
3
|
+
label: ReactNode;
|
|
4
|
+
value: string;
|
|
5
|
+
onValueChange: (newValue: string | undefined) => void;
|
|
6
|
+
hint?: ReactNode;
|
|
7
|
+
error?: ReactNode;
|
|
8
|
+
optional?: boolean;
|
|
9
|
+
}>;
|
|
10
|
+
declare const RadioField: ({ label, hint, error, children, optional, value, onValueChange, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export { RadioField };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Children, cloneElement } from 'react';
|
|
3
|
+
import { View } from 'react-native';
|
|
4
|
+
import { callAll, getValidChildren } from '../../utils';
|
|
5
|
+
import { ErrorText } from '../ErrorText';
|
|
6
|
+
import { FormGroup } from '../FormGroup';
|
|
7
|
+
import { HintText } from '../HintText';
|
|
8
|
+
import { LabelText } from '../LabelText';
|
|
9
|
+
import { Stack } from '../Stack';
|
|
10
|
+
const RadioField = ({ label, hint, error, children, optional = false, value, onValueChange, ...rest }) => {
|
|
11
|
+
const hasError = !!error;
|
|
12
|
+
const validChildren = getValidChildren(children);
|
|
13
|
+
return (_jsx(FormGroup, { ...rest, error: hasError, children: _jsxs(Stack, { spaceBetween: 1, children: [_jsxs(View, { children: [_jsxs(LabelText, { children: [label, optional ? ' (optional)' : null] }), hint ? _jsx(HintText, { children: hint }) : null, error ? _jsx(ErrorText, { children: error }) : null] }), _jsx(View, { accessible: true, accessibilityRole: "radiogroup", children: Children.map(validChildren, child => cloneElement(child, {
|
|
14
|
+
invalid: hasError ? true : child.props.invalid,
|
|
15
|
+
checked: child.props.checked != null
|
|
16
|
+
? child.props.checked
|
|
17
|
+
: value && (value === child.props.value ? true : false),
|
|
18
|
+
onPress: callAll(onValueChange && (() => onValueChange(child.props.value)), child.props.onPress),
|
|
19
|
+
})) })] }) }));
|
|
20
|
+
};
|
|
21
|
+
export { RadioField };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ReactNode, Ref } from 'react';
|
|
2
|
+
import { TouchableOpacityProps, View } from 'react-native';
|
|
3
|
+
type Props = Omit<TouchableOpacityProps, 'children'> & {
|
|
4
|
+
label: ReactNode;
|
|
5
|
+
checked?: boolean;
|
|
6
|
+
invalid?: boolean;
|
|
7
|
+
activeOpacity?: number;
|
|
8
|
+
hasInput?: boolean;
|
|
9
|
+
ref?: Ref<View>;
|
|
10
|
+
};
|
|
11
|
+
export declare const RadioCard: ({ label, checked, invalid, activeOpacity, testID, hasInput, ref, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { numToPx } from '@ovotech/element-core';
|
|
3
|
+
import { TouchableOpacity, } from 'react-native';
|
|
4
|
+
import { css } from 'styled-components';
|
|
5
|
+
import styled from '../../styled.native';
|
|
6
|
+
import { LabelText } from '../LabelText';
|
|
7
|
+
const StyledRadioInputWrapper = styled.View(({ theme: { core } }) => {
|
|
8
|
+
return `
|
|
9
|
+
width: ${numToPx(core.space[6])};
|
|
10
|
+
height: ${numToPx(core.space[6])};
|
|
11
|
+
margin-top: ${numToPx(core.space[2])};
|
|
12
|
+
`;
|
|
13
|
+
});
|
|
14
|
+
const StyledRadioInput = styled.View(({ theme: { core, semantic }, invalid, checked }) => {
|
|
15
|
+
return `
|
|
16
|
+
width: ${numToPx(core.space[6])};
|
|
17
|
+
height: ${numToPx(core.space[6])};
|
|
18
|
+
border: ${numToPx(core.borderWidth.small)} solid;
|
|
19
|
+
align-items: center;
|
|
20
|
+
justify-content: center;
|
|
21
|
+
border-radius: ${numToPx(core.space[6])};
|
|
22
|
+
border-color: ${invalid
|
|
23
|
+
? semantic.message.error
|
|
24
|
+
: checked
|
|
25
|
+
? core.color.blue.dark
|
|
26
|
+
: semantic.border.functional};
|
|
27
|
+
background: ${checked ? core.color.blue.lightest : 'transparent'};
|
|
28
|
+
`;
|
|
29
|
+
});
|
|
30
|
+
const StyledRadioInputDot = styled.View(({ theme: { core }, checked }) => {
|
|
31
|
+
return `
|
|
32
|
+
width: ${numToPx(core.space[3])};
|
|
33
|
+
height: ${numToPx(core.space[3])};
|
|
34
|
+
border-radius: ${numToPx(core.space[3])};
|
|
35
|
+
background: ${core.color.blue.dark};
|
|
36
|
+
opacity: ${checked ? 1 : 0};
|
|
37
|
+
`;
|
|
38
|
+
});
|
|
39
|
+
const Input = ({ checked, invalid, testID, ...rest }) => {
|
|
40
|
+
return (_jsx(StyledRadioInputWrapper, { ...rest, children: _jsx(StyledRadioInput, { invalid: invalid, checked: checked, testID: testID, children: _jsx(StyledRadioInputDot, { checked: checked }) }) }));
|
|
41
|
+
};
|
|
42
|
+
const StyledWrapper = styled.View(({ theme: { core, semantic }, checked, invalid }) => css `
|
|
43
|
+
align-items: center;
|
|
44
|
+
background: ${semantic.surface.elevated};
|
|
45
|
+
padding: ${numToPx(core.space[2])};
|
|
46
|
+
min-width: 82px;
|
|
47
|
+
border-radius: ${numToPx(core.radius.small)};
|
|
48
|
+
border: ${numToPx(core.borderWidth.medium)} solid;
|
|
49
|
+
border-color: ${invalid
|
|
50
|
+
? semantic.message.error
|
|
51
|
+
: checked
|
|
52
|
+
? core.color.blue.dark
|
|
53
|
+
: 'transparent'};
|
|
54
|
+
`);
|
|
55
|
+
export const RadioCard = ({ label, checked, invalid, activeOpacity = 0.8, testID, hasInput = true, ref, ...rest }) => {
|
|
56
|
+
return (_jsx(TouchableOpacity, { ref: ref, accessible: true, accessibilityRole: "radio", activeOpacity: activeOpacity, accessibilityState: { checked }, ...rest, children: _jsxs(StyledWrapper, { checked: checked, invalid: invalid, children: [typeof label === 'string' ? _jsx(LabelText, { children: label }) : label, hasInput ? (_jsx(Input, { checked: checked, invalid: invalid, testID: testID })) : null] }) }));
|
|
57
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { RadioCard } from './RadioCard';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { RadioCard } from './RadioCard';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { JSX } from 'react';
|
|
2
|
+
import { ViewProps } from 'react-native';
|
|
3
|
+
export type Segment = {
|
|
4
|
+
key: string;
|
|
5
|
+
label: string;
|
|
6
|
+
accessibilityLabel?: string;
|
|
7
|
+
accessibilityHint?: string;
|
|
8
|
+
};
|
|
9
|
+
type SegmentedControlsProps = ViewProps & {
|
|
10
|
+
activeSegment: Segment[][number];
|
|
11
|
+
segments: Segment[];
|
|
12
|
+
setActiveSegment: (...args: any[]) => void;
|
|
13
|
+
inline?: boolean;
|
|
14
|
+
multipleRows?: boolean;
|
|
15
|
+
size?: 'small' | 'large';
|
|
16
|
+
};
|
|
17
|
+
export declare const SegmentedControls: ({ activeSegment, setActiveSegment, segments, inline, multipleRows, size, ...rest }: SegmentedControlsProps) => JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import Animated, { useAnimatedStyle, useSharedValue, withSpring, } from 'react-native-reanimated';
|
|
3
|
+
import styled, { useTheme } from '../../styled.native';
|
|
4
|
+
import { SegmentButton } from './components/SegmentButton';
|
|
5
|
+
/* These settings were found to be nice and fast whilst maintaining spring */
|
|
6
|
+
const springSettings = {
|
|
7
|
+
damping: 25,
|
|
8
|
+
mass: 0.25,
|
|
9
|
+
};
|
|
10
|
+
export const SegmentedControls = ({ activeSegment, setActiveSegment, segments, inline = false, multipleRows, size = 'large', ...rest }) => {
|
|
11
|
+
const animatedX = useSharedValue(0);
|
|
12
|
+
const animatedY = useSharedValue(0);
|
|
13
|
+
const animatedHeight = useSharedValue(0);
|
|
14
|
+
const animatedWidth = useSharedValue(0);
|
|
15
|
+
const theme = useTheme();
|
|
16
|
+
const animatedBackgroundStyle = useAnimatedStyle(() => ({
|
|
17
|
+
left: animatedX.value,
|
|
18
|
+
top: animatedY.value + theme.core.space[size === 'small' ? 2 : 3],
|
|
19
|
+
width: animatedWidth.value,
|
|
20
|
+
height: animatedHeight.value,
|
|
21
|
+
position: 'absolute',
|
|
22
|
+
borderRadius: theme.core.radius.max,
|
|
23
|
+
backgroundColor: theme.semantic.surface.elevated,
|
|
24
|
+
}), [animatedX, animatedY, animatedWidth, animatedHeight]);
|
|
25
|
+
return (_jsxs(SegmentsContainer, { "$inline": inline, "$multipleRows": multipleRows, ...rest, children: [_jsx(Animated.View, { style: animatedBackgroundStyle }), segments.map(segment => (_jsx(SegmentButton, { isSelected: activeSegment.key === segment.key, label: segment.label, accessibilityLabel: segment.accessibilityLabel, accessibilityHint: segment.accessibilityHint, setAnimatedValues: (x, y, width) => {
|
|
26
|
+
animatedX.value = withSpring(x, springSettings);
|
|
27
|
+
animatedY.value = withSpring(y, springSettings);
|
|
28
|
+
animatedWidth.value = width;
|
|
29
|
+
}, onPress: () => setActiveSegment(segment), onLayout: (width, height, x, y) => {
|
|
30
|
+
if (activeSegment.key === segment.key) {
|
|
31
|
+
animatedX.value = x;
|
|
32
|
+
animatedY.value = y;
|
|
33
|
+
animatedHeight.value = height;
|
|
34
|
+
animatedWidth.value = width;
|
|
35
|
+
}
|
|
36
|
+
}, multipleRows: multipleRows, size: size, inline: inline, testID: `${rest.testID ?? 'segment'}-${segment.key}`, segmentCount: segments.length ?? 0 }, segment.key)))] }));
|
|
37
|
+
};
|
|
38
|
+
const SegmentsContainer = styled.View(({ theme: { core, semantic }, $inline, $multipleRows }) => `
|
|
39
|
+
flex-direction: row;
|
|
40
|
+
flex-wrap: ${$multipleRows ? '' : 'no-'}wrap;
|
|
41
|
+
justify-content: ${$multipleRows ? 'space-between' : 'space-around'};
|
|
42
|
+
align-items: center;
|
|
43
|
+
width: ${$inline ? 'auto' : '100%'};
|
|
44
|
+
align-self: ${$inline ? 'flex-start' : 'stretch'};
|
|
45
|
+
padding: ${core.space[1]}px;
|
|
46
|
+
background-color: ${semantic.surface.cutout};
|
|
47
|
+
border-radius: ${core.radius.max}px;
|
|
48
|
+
`);
|