@utilitywarehouse/hearth-react-native 0.34.4 → 0.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +194 -0
- package/README.md +52 -0
- package/SKILL.md +361 -0
- package/build/components/Alert/AlertIcon.js +4 -4
- package/build/components/Badge/BadgeIcon.js +4 -4
- package/build/components/Card/CardAction/CardActionIcon.js +2 -2
- package/build/components/Card/CardAction/CardActionTrailingIcon.js +2 -2
- package/build/components/Carousel/CarouselControlItem.js +2 -2
- package/build/components/Carousel/CarouselControls.js +2 -2
- package/build/components/Checkbox/CheckboxGroup.d.ts +1 -1
- package/build/components/Checkbox/CheckboxGroup.js +5 -2
- package/build/components/Checkbox/CheckboxGroup.props.d.ts +4 -0
- package/build/components/Combobox/Combobox.js +2 -9
- package/build/components/Combobox/Combobox.utils.d.ts +2 -0
- package/build/components/Combobox/Combobox.utils.js +8 -0
- package/build/components/Combobox/Combobox.utils.test.d.ts +1 -0
- package/build/components/Combobox/Combobox.utils.test.js +27 -0
- package/build/components/DatePicker/DatePickerHeader/DatePickerNextButton.js +2 -2
- package/build/components/DatePicker/DatePickerHeader/DatePickerPrevButton.js +2 -2
- package/build/components/DatePicker/DatePickerHeader/DatePickerSelectors.js +2 -2
- package/build/components/DatePicker/utils.test.d.ts +1 -0
- package/build/components/DatePicker/utils.test.js +191 -0
- package/build/components/DatePickerInput/DatePickerInput.js +1 -8
- package/build/components/DatePickerInput/DatePickerInput.utils.d.ts +2 -0
- package/build/components/DatePickerInput/DatePickerInput.utils.js +8 -0
- package/build/components/DatePickerInput/DatePickerInput.utils.test.d.ts +1 -0
- package/build/components/DatePickerInput/DatePickerInput.utils.test.js +22 -0
- package/build/components/ExpandableCard/ExpandableCardIcon.js +2 -2
- package/build/components/Helper/HelperIcon.js +2 -2
- package/build/components/IconButton/IconButtonIcon.js +4 -4
- package/build/components/List/ListAction/ListActionTrailingIcon.js +2 -2
- package/build/components/List/ListItem/ListItemIcon.js +2 -2
- package/build/components/Modal/Modal.js +3 -1
- package/build/components/Modal/Modal.shared.types.d.ts +1 -1
- package/build/components/Modal/Modal.web.js +3 -1
- package/build/components/NavModal/NavModal.js +3 -1
- package/build/components/PillGroup/PillGroup.d.ts +1 -1
- package/build/components/PillGroup/PillGroup.js +4 -2
- package/build/components/PillGroup/PillGroup.props.d.ts +10 -0
- package/build/components/Radio/RadioGroup.d.ts +1 -1
- package/build/components/Radio/RadioGroup.js +5 -2
- package/build/components/Radio/RadioGroup.props.d.ts +4 -0
- package/build/components/RadioCard/RadioCard.d.ts +5 -24
- package/build/components/RadioCard/RadioCard.js +5 -1
- package/build/components/RadioCard/RadioCardGroup.props.d.ts +4 -0
- package/build/components/Rating/Rating.d.ts +1 -1
- package/build/components/Rating/Rating.js +3 -2
- package/build/components/Rating/Rating.props.d.ts +5 -0
- package/build/components/SegmentedControl/SegmentedControl.js +2 -2
- package/build/components/Select/Select.js +2 -3
- package/build/components/Select/Select.utils.d.ts +2 -0
- package/build/components/Select/Select.utils.js +1 -0
- package/build/components/Select/Select.utils.test.d.ts +1 -0
- package/build/components/Select/Select.utils.test.js +21 -0
- package/build/components/StepperInput/StepperInput.js +1 -62
- package/build/components/StepperInput/StepperInput.utils.d.ts +6 -0
- package/build/components/StepperInput/StepperInput.utils.js +62 -0
- package/build/components/StepperInput/StepperInput.utils.test.d.ts +1 -0
- package/build/components/StepperInput/StepperInput.utils.test.js +99 -0
- package/build/components/Switch/Switch.js +10 -8
- package/build/components/Switch/Switch.props.d.ts +11 -1
- package/build/components/Switch/Switch.web.js +10 -8
- package/build/components/TimePickerInput/TimePickerInput.js +1 -8
- package/build/components/TimePickerInput/TimePickerInput.utils.d.ts +3 -0
- package/build/components/TimePickerInput/TimePickerInput.utils.js +8 -0
- package/build/components/TimePickerInput/TimePickerInput.utils.test.d.ts +1 -0
- package/build/components/TimePickerInput/TimePickerInput.utils.test.js +20 -0
- package/build/components/Toast/ToastItem.js +2 -2
- package/build/components/ToggleButton/ToggleButtonRoot.js +1 -1
- package/build/components/ToggleButtonCard/ToggleButtonCard.d.ts +5 -1
- package/build/components/ToggleButtonCard/ToggleButtonCard.js +5 -1
- package/build/components/ToggleButtonCard/ToggleButtonCardGroup.props.d.ts +4 -0
- package/build/tokens/components/dark/chip.d.ts +14 -0
- package/build/tokens/components/dark/chip.js +13 -0
- package/build/tokens/components/dark/icon.d.ts +26 -0
- package/build/tokens/components/dark/icon.js +25 -0
- package/build/tokens/components/dark/index.d.ts +2 -0
- package/build/tokens/components/dark/index.js +2 -0
- package/build/tokens/components/light/chip.d.ts +14 -0
- package/build/tokens/components/light/chip.js +13 -0
- package/build/tokens/components/light/icon.d.ts +26 -0
- package/build/tokens/components/light/icon.js +25 -0
- package/build/tokens/components/light/index.d.ts +2 -0
- package/build/tokens/components/light/index.js +2 -0
- package/build/tokens/semantic-dark.d.ts +4 -4
- package/build/tokens/semantic-dark.js +4 -4
- package/build/tokens/semantic-light.d.ts +4 -4
- package/build/tokens/semantic-light.js +4 -4
- package/build/utils/formatThousands.test.d.ts +1 -0
- package/build/utils/formatThousands.test.js +31 -0
- package/build/utils/getFlattenedColorValue.test.d.ts +1 -0
- package/build/utils/getFlattenedColorValue.test.js +21 -0
- package/build/utils/getInitials.test.d.ts +1 -0
- package/build/utils/getInitials.test.js +23 -0
- package/build/utils/hexWithOpacity.test.d.ts +1 -0
- package/build/utils/hexWithOpacity.test.js +22 -0
- package/build/utils/isEqual.test.d.ts +1 -0
- package/build/utils/isEqual.test.js +44 -0
- package/build/utils/themeValueHelpers.test.d.ts +1 -0
- package/build/utils/themeValueHelpers.test.js +82 -0
- package/package.json +23 -7
- package/{src/components/Accordion/Accordion.docs.mdx → public/llms/components/accordion.md} +62 -97
- package/{src/components/Alert/Alert.docs.mdx → public/llms/components/alert.md} +46 -49
- package/{src/components/Avatar/Avatar.docs.mdx → public/llms/components/avatar.md} +18 -50
- package/{src/components/Badge/Badge.docs.mdx → public/llms/components/badge.md} +56 -38
- package/{src/components/Banner/Banner.docs.mdx → public/llms/components/banner.md} +487 -40
- package/{src/components/BodyText/BodyText.docs.mdx → public/llms/components/body-text.md} +32 -25
- package/{src/components/BottomSheet/BottomSheet.docs.mdx → public/llms/components/bottom-sheet.md} +25 -33
- package/{src/components/Box/Box.docs.mdx → public/llms/components/box.md} +7 -21
- package/{src/components/Button/Button.docs.mdx → public/llms/components/button.md} +118 -109
- package/{src/components/Card/Card.docs.mdx → public/llms/components/card.md} +281 -47
- package/{src/components/Carousel/Carousel.docs.mdx → public/llms/components/carousel.md} +14 -92
- package/public/llms/components/center.md +24 -0
- package/{src/components/Checkbox/Checkbox.docs.mdx → public/llms/components/checkbox.md} +114 -155
- package/{src/components/Combobox/Combobox.docs.mdx → public/llms/components/combobox.md} +53 -47
- package/{src/components/Container/Container.docs.mdx → public/llms/components/container.md} +59 -26
- package/{src/components/CurrencyInput/CurrencyInput.docs.mdx → public/llms/components/currency-input.md} +48 -44
- package/{src/components/DateInput/DateInput.docs.mdx → public/llms/components/date-input.md} +162 -29
- package/{src/components/DatePickerInput/DatePickerInput.docs.mdx → public/llms/components/date-picker-input.md} +11 -51
- package/{src/components/DatePicker/DatePicker.docs.mdx → public/llms/components/date-picker.md} +49 -26
- package/{src/components/DescriptionList/DescriptionList.docs.mdx → public/llms/components/description-list.md} +64 -31
- package/{src/components/DetailText/DetailText.docs.mdx → public/llms/components/detail-text.md} +47 -25
- package/{src/components/Divider/Divider.docs.mdx → public/llms/components/divider.md} +10 -22
- package/{src/components/ExpandableCard/ExpandableCard.docs.mdx → public/llms/components/expandable-card.md} +213 -28
- package/{src/components/Expandable/Expandable.docs.mdx → public/llms/components/expandable.md} +165 -21
- package/{src/components/Flex/Flex.docs.mdx → public/llms/components/flex.md} +18 -24
- package/{src/components/FormField/FormField.docs.mdx → public/llms/components/form-field.md} +57 -109
- package/{src/components/Grid/Grid.docs.mdx → public/llms/components/grid.md} +15 -79
- package/{src/components/Heading/Heading.docs.mdx → public/llms/components/heading.md} +32 -21
- package/{src/components/HighlightBanner/HighlightBanner.docs.mdx → public/llms/components/highlight-banner.md} +204 -41
- package/{src/components/HTMLElements/Lists.docs.mdx → public/llms/components/html-elements/lists.md} +20 -43
- package/{src/components/IconButton/IconButton.docs.mdx → public/llms/components/icon-button.md} +134 -32
- package/{src/components/IconContainer/IconContainer.docs.mdx → public/llms/components/icon-container.md} +44 -35
- package/{src/components/Icon/Icon.docs.mdx → public/llms/components/icon.md} +6 -30
- package/public/llms/components/indicator-icon-button.md +138 -0
- package/{src/components/InlineLink/InlineLink.docs.mdx → public/llms/components/inline-link.md} +7 -26
- package/{src/components/Input/Input.docs.mdx → public/llms/components/input.md} +73 -75
- package/{src/components/Link/Link.docs.mdx → public/llms/components/link.md} +5 -20
- package/{src/components/List/List.docs.mdx → public/llms/components/list.md} +192 -127
- package/{src/components/Menu/Menu.docs.mdx → public/llms/components/menu.md} +52 -29
- package/{src/components/Modal/Modal.docs.mdx → public/llms/components/modal.md} +160 -64
- package/{src/components/NavModal/NavModal.docs.mdx → public/llms/components/nav-modal.md} +81 -25
- package/{src/components/Pagination/Pagination.docs.mdx → public/llms/components/pagination.md} +38 -27
- package/public/llms/components/pill-group.md +162 -0
- package/{src/components/ProgressBar/ProgressBar.docs.mdx → public/llms/components/progress-bar.md} +42 -28
- package/public/llms/components/progress-stepper.md +144 -0
- package/{src/components/RadioCard/RadioCard.docs.mdx → public/llms/components/radio-card.md} +19 -50
- package/{src/components/Radio/Radio.docs.mdx → public/llms/components/radio.md} +146 -132
- package/public/llms/components/rating.md +147 -0
- package/{src/components/Roundel/Roundel.docs.mdx → public/llms/components/roundel.md} +19 -19
- package/{src/components/SectionHeader/Sectionheader.docs.mdx → public/llms/components/section-header.md} +46 -19
- package/{src/components/SegmentedControl/SegmentedControl.docs.mdx → public/llms/components/segmented-control.md} +40 -28
- package/{src/components/Select/Select.docs.mdx → public/llms/components/select.md} +70 -57
- package/{src/components/Skeleton/Skeleton.docs.mdx → public/llms/components/skeleton.md} +5 -9
- package/{src/components/Spinner/Spinner.docs.mdx → public/llms/components/spinner.md} +22 -22
- package/{src/components/StepperInput/StepperInput.docs.mdx → public/llms/components/stepper-input.md} +102 -29
- package/{src/components/Switch/Switch.docs.mdx → public/llms/components/switch.md} +56 -60
- package/public/llms/components/table.md +408 -0
- package/{src/components/Tabs/Tabs.docs.mdx → public/llms/components/tabs.md} +176 -41
- package/{src/components/Textarea/Textarea.docs.mdx → public/llms/components/textarea.md} +7 -49
- package/{src/components/ThemedImage/ThemedImage.docs.mdx → public/llms/components/themed-image.md} +79 -14
- package/{src/components/TimePickerInput/TimePickerInput.docs.mdx → public/llms/components/time-picker-input.md} +10 -48
- package/{src/components/TimePicker/TimePicker.docs.mdx → public/llms/components/time-picker.md} +17 -20
- package/{src/components/Timeline/Timeline.docs.mdx → public/llms/components/timeline.md} +30 -73
- package/{src/components/Toast/Toast.docs.mdx → public/llms/components/toast.md} +50 -31
- package/{src/components/ToggleButtonCard/ToggleButtonCard.docs.mdx → public/llms/components/toggle-button-card.md} +34 -56
- package/{src/components/VerificationInput/VerificationInput.docs.mdx → public/llms/components/verification-input.md} +106 -21
- package/{docs/adding-shadows.mdx → public/llms/docs/adding-shadows.md} +2 -29
- package/public/llms/docs/all-components.md +3 -0
- package/{docs/dark-mode-best-practice.mdx → public/llms/docs/dark-mode-best-practice.md} +10 -139
- package/{docs/getting-started.mdx → public/llms/docs/getting-started.md} +2 -13
- package/{docs/hooks.mdx → public/llms/docs/hooks.md} +16 -13
- package/{docs/introduction.mdx → public/llms/docs/introduction.md} +6 -12
- package/{docs/layout-components.docs.mdx → public/llms/docs/layout-components.md} +59 -26
- package/{docs/styling.mdx → public/llms/docs/styling.md} +21 -17
- package/{docs/theme-tokens.mdx → public/llms/docs/theme-tokens.md} +23 -18
- package/public/llms.txt +123 -0
- package/scripts/init-ai.js +157 -0
- package/.storybook/main.ts +0 -81
- package/.storybook/manager.ts +0 -11
- package/.storybook/preview.tsx +0 -174
- package/.storybook/prism-setup.ts +0 -104
- package/.storybook/vitest.setup.ts +0 -31
- package/.turbo/turbo-build.log +0 -1
- package/CHANGELOG.md +0 -2052
- package/chromatic.config.json +0 -6
- package/docs/all-components.mdx +0 -19
- package/docs/assets/bank-logo.png +0 -0
- package/docs/assets/bank-logo1.png +0 -0
- package/docs/assets/modal-android.mp4 +0 -0
- package/docs/assets/modal-ios.mp4 +0 -0
- package/docs/assets/pigs.png +0 -0
- package/docs/assets/toast-ios.MP4 +0 -0
- package/docs/changelog.mdx +0 -2069
- package/docs/components/AdvancedInputExample.tsx +0 -39
- package/docs/components/AllComponents.web.tsx +0 -1005
- package/docs/components/BackToTopButton.tsx +0 -58
- package/docs/components/BadgeList.tsx +0 -30
- package/docs/components/DocComponentWrap.tsx +0 -7
- package/docs/components/InputShadowExample.tsx +0 -19
- package/docs/components/NextPrevPage.tsx +0 -54
- package/docs/components/SwitchExample.tsx +0 -13
- package/docs/components/SwitchList.tsx +0 -52
- package/docs/components/UsageWrap.tsx +0 -21
- package/docs/components/VariantTitle.tsx +0 -40
- package/docs/components/ViewFigmaButton.tsx +0 -43
- package/docs/components/ViewWrap.tsx +0 -32
- package/docs/components/index.ts +0 -13
- package/docs/heplers/addReactNativePrefix.ts +0 -8
- package/docs/heplers/index.ts +0 -1
- package/docs/llm-docs/unistyles-llms-full.txt +0 -9135
- package/docs/llm-docs/unistyles-llms-small.txt +0 -247
- package/eslint.config.js +0 -35
- package/figma.config.json +0 -11
- package/scripts/copyChangelog.js +0 -57
- package/scripts/copyTokens.js +0 -96
- package/src/components/Accordion/Accordion.context.tsx +0 -13
- package/src/components/Accordion/Accordion.figma.tsx +0 -21
- package/src/components/Accordion/Accordion.props.ts +0 -43
- package/src/components/Accordion/Accordion.stories.tsx +0 -118
- package/src/components/Accordion/Accordion.tsx +0 -127
- package/src/components/Accordion/AccordionContent.tsx +0 -44
- package/src/components/Accordion/AccordionContentText.tsx +0 -10
- package/src/components/Accordion/AccordionHeader.tsx +0 -18
- package/src/components/Accordion/AccordionIcon.tsx +0 -11
- package/src/components/Accordion/AccordionItem.context.tsx +0 -11
- package/src/components/Accordion/AccordionItem.figma.tsx +0 -27
- package/src/components/Accordion/AccordionItem.props.ts +0 -20
- package/src/components/Accordion/AccordionItemRoot.tsx +0 -27
- package/src/components/Accordion/AccordionRoot.tsx +0 -35
- package/src/components/Accordion/AccordionTitleText.tsx +0 -19
- package/src/components/Accordion/AccordionTrigger.tsx +0 -54
- package/src/components/Accordion/index.ts +0 -10
- package/src/components/Alert/Alert.context.ts +0 -8
- package/src/components/Alert/Alert.figma.tsx +0 -47
- package/src/components/Alert/Alert.props.ts +0 -67
- package/src/components/Alert/Alert.stories.tsx +0 -87
- package/src/components/Alert/Alert.tsx +0 -109
- package/src/components/Alert/AlertCloseButton.tsx +0 -54
- package/src/components/Alert/AlertContent.tsx +0 -22
- package/src/components/Alert/AlertIcon.tsx +0 -54
- package/src/components/Alert/AlertIconButton.tsx +0 -49
- package/src/components/Alert/AlertLink.tsx +0 -60
- package/src/components/Alert/AlertText.tsx +0 -39
- package/src/components/Alert/AlertTitle.tsx +0 -39
- package/src/components/Alert/index.ts +0 -8
- package/src/components/Avatar/Avatar.figma.tsx +0 -23
- package/src/components/Avatar/Avatar.props.ts +0 -31
- package/src/components/Avatar/Avatar.stories.tsx +0 -76
- package/src/components/Avatar/Avatar.tsx +0 -134
- package/src/components/Avatar/index.ts +0 -2
- package/src/components/Badge/Badge.context.ts +0 -11
- package/src/components/Badge/Badge.figma.tsx +0 -47
- package/src/components/Badge/Badge.props.ts +0 -26
- package/src/components/Badge/Badge.stories.tsx +0 -184
- package/src/components/Badge/Badge.tsx +0 -300
- package/src/components/Badge/BadgeIcon.tsx +0 -158
- package/src/components/Badge/BadgeText.tsx +0 -166
- package/src/components/Badge/index.ts +0 -3
- package/src/components/Banner/Banner.context.ts +0 -11
- package/src/components/Banner/Banner.figma.tsx +0 -23
- package/src/components/Banner/Banner.props.ts +0 -99
- package/src/components/Banner/Banner.stories.tsx +0 -650
- package/src/components/Banner/Banner.tsx +0 -337
- package/src/components/Banner/BannerIllustration.figma.tsx +0 -30
- package/src/components/Banner/BannerIllustration.tsx +0 -58
- package/src/components/Banner/BannerImage.tsx +0 -63
- package/src/components/Banner/index.ts +0 -4
- package/src/components/BodyText/BodyText.props.ts +0 -10
- package/src/components/BodyText/BodyText.stories.tsx +0 -147
- package/src/components/BodyText/BodyText.tsx +0 -144
- package/src/components/BodyText/index.ts +0 -2
- package/src/components/BottomSheet/BottomSheet.context.ts +0 -15
- package/src/components/BottomSheet/BottomSheet.props.ts +0 -49
- package/src/components/BottomSheet/BottomSheet.stories.tsx +0 -335
- package/src/components/BottomSheet/BottomSheet.tsx +0 -71
- package/src/components/BottomSheet/BottomSheetBackdrop.tsx +0 -29
- package/src/components/BottomSheet/BottomSheetFlatList.tsx +0 -65
- package/src/components/BottomSheet/BottomSheetHandle.tsx +0 -48
- package/src/components/BottomSheet/BottomSheetModal.figma.tsx +0 -20
- package/src/components/BottomSheet/BottomSheetModal.tsx +0 -70
- package/src/components/BottomSheet/BottomSheetModalProvider.tsx +0 -33
- package/src/components/BottomSheet/BottomSheetScrollView.tsx +0 -74
- package/src/components/BottomSheet/BottomSheetView.tsx +0 -67
- package/src/components/BottomSheet/index.ts +0 -20
- package/src/components/BottomSheet/useBottomSheetLogic.tsx +0 -53
- package/src/components/Box/Box.props.ts +0 -13
- package/src/components/Box/Box.stories.tsx +0 -70
- package/src/components/Box/Box.tsx +0 -107
- package/src/components/Box/index.ts +0 -1
- package/src/components/Button/Button.context.ts +0 -13
- package/src/components/Button/Button.figma.tsx +0 -132
- package/src/components/Button/Button.props.tsx +0 -84
- package/src/components/Button/Button.stories.tsx +0 -293
- package/src/components/Button/Button.tsx +0 -83
- package/src/components/Button/ButtonGroup.context.ts +0 -5
- package/src/components/Button/ButtonGroup.tsx +0 -25
- package/src/components/Button/ButtonGroupRoot.tsx +0 -85
- package/src/components/Button/ButtonIcon.tsx +0 -141
- package/src/components/Button/ButtonRoot.tsx +0 -451
- package/src/components/Button/ButtonSpinner.tsx +0 -60
- package/src/components/Button/ButtonText.tsx +0 -134
- package/src/components/Button/index.ts +0 -3
- package/src/components/Card/Card.context.ts +0 -19
- package/src/components/Card/Card.figma.tsx +0 -29
- package/src/components/Card/Card.props.ts +0 -34
- package/src/components/Card/Card.stories.tsx +0 -370
- package/src/components/Card/Card.tsx +0 -10
- package/src/components/Card/CardAction/CardAction.context.ts +0 -22
- package/src/components/Card/CardAction/CardAction.figma.tsx +0 -44
- package/src/components/Card/CardAction/CardAction.props.ts +0 -86
- package/src/components/Card/CardAction/CardAction.stories.tsx +0 -412
- package/src/components/Card/CardAction/CardAction.tsx +0 -10
- package/src/components/Card/CardAction/CardActionContent.tsx +0 -20
- package/src/components/Card/CardAction/CardActionHelperText.tsx +0 -21
- package/src/components/Card/CardAction/CardActionIcon.tsx +0 -32
- package/src/components/Card/CardAction/CardActionLeadingContent.tsx +0 -9
- package/src/components/Card/CardAction/CardActionRoot.tsx +0 -270
- package/src/components/Card/CardAction/CardActionText.tsx +0 -17
- package/src/components/Card/CardAction/CardActionTrailingContent.tsx +0 -9
- package/src/components/Card/CardAction/CardActionTrailingIcon.tsx +0 -32
- package/src/components/Card/CardAction/index.ts +0 -10
- package/src/components/Card/CardActions.context.ts +0 -12
- package/src/components/Card/CardActions.tsx +0 -40
- package/src/components/Card/CardContent.tsx +0 -40
- package/src/components/Card/CardPressHandler.context.ts +0 -12
- package/src/components/Card/CardPressHandler.tsx +0 -20
- package/src/components/Card/CardRoot.tsx +0 -357
- package/src/components/Card/helpers.tsx +0 -195
- package/src/components/Card/index.ts +0 -7
- package/src/components/Carousel/Carousel.context.tsx +0 -8
- package/src/components/Carousel/Carousel.figma.tsx +0 -22
- package/src/components/Carousel/Carousel.props.ts +0 -89
- package/src/components/Carousel/Carousel.stories.tsx +0 -317
- package/src/components/Carousel/Carousel.tsx +0 -448
- package/src/components/Carousel/CarouselControlItem.tsx +0 -87
- package/src/components/Carousel/CarouselControls.tsx +0 -150
- package/src/components/Carousel/CarouselItem.tsx +0 -68
- package/src/components/Carousel/index.ts +0 -6
- package/src/components/Center/Center.docs.mdx +0 -42
- package/src/components/Center/Center.stories.tsx +0 -30
- package/src/components/Center/Center.tsx +0 -12
- package/src/components/Center/index.ts +0 -1
- package/src/components/Checkbox/Checkbox.context.ts +0 -9
- package/src/components/Checkbox/Checkbox.figma.tsx +0 -26
- package/src/components/Checkbox/Checkbox.props.ts +0 -47
- package/src/components/Checkbox/Checkbox.stories.tsx +0 -217
- package/src/components/Checkbox/Checkbox.tsx +0 -110
- package/src/components/Checkbox/CheckboxGroup.context.ts +0 -10
- package/src/components/Checkbox/CheckboxGroup.figma.tsx +0 -73
- package/src/components/Checkbox/CheckboxGroup.props.ts +0 -23
- package/src/components/Checkbox/CheckboxGroup.stories.tsx +0 -100
- package/src/components/Checkbox/CheckboxGroup.tsx +0 -114
- package/src/components/Checkbox/CheckboxGroupRoot.tsx +0 -36
- package/src/components/Checkbox/CheckboxGroupTextContent.tsx +0 -14
- package/src/components/Checkbox/CheckboxIcon.tsx +0 -30
- package/src/components/Checkbox/CheckboxImage.figma.tsx +0 -27
- package/src/components/Checkbox/CheckboxImage.tsx +0 -14
- package/src/components/Checkbox/CheckboxIndicator.tsx +0 -63
- package/src/components/Checkbox/CheckboxLabel.tsx +0 -14
- package/src/components/Checkbox/CheckboxRoot.tsx +0 -64
- package/src/components/Checkbox/CheckboxTextContent.tsx +0 -21
- package/src/components/Checkbox/CheckboxTileRoot.figma.tsx +0 -29
- package/src/components/Checkbox/CheckboxTileRoot.tsx +0 -50
- package/src/components/Checkbox/index.ts +0 -12
- package/src/components/Combobox/Combobox.context.ts +0 -26
- package/src/components/Combobox/Combobox.figma.tsx +0 -60
- package/src/components/Combobox/Combobox.props.ts +0 -187
- package/src/components/Combobox/Combobox.stories.tsx +0 -233
- package/src/components/Combobox/Combobox.tsx +0 -446
- package/src/components/Combobox/ComboboxOption.tsx +0 -100
- package/src/components/Combobox/index.ts +0 -9
- package/src/components/Container/Container.props.ts +0 -32
- package/src/components/Container/Container.stories.tsx +0 -290
- package/src/components/Container/Container.tsx +0 -52
- package/src/components/Container/index.tsx +0 -2
- package/src/components/CurrencyInput/CurrencyInput.figma.tsx +0 -72
- package/src/components/CurrencyInput/CurrencyInput.props.ts +0 -27
- package/src/components/CurrencyInput/CurrencyInput.stories.tsx +0 -147
- package/src/components/CurrencyInput/CurrencyInput.tsx +0 -101
- package/src/components/CurrencyInput/index.ts +0 -1
- package/src/components/DateInput/DateInput.figma.tsx +0 -88
- package/src/components/DateInput/DateInput.props.ts +0 -125
- package/src/components/DateInput/DateInput.stories.tsx +0 -314
- package/src/components/DateInput/DateInput.tsx +0 -135
- package/src/components/DateInput/DateInputSegment.tsx +0 -69
- package/src/components/DateInput/index.ts +0 -2
- package/src/components/DatePicker/DatePicker.context.ts +0 -23
- package/src/components/DatePicker/DatePicker.figma.tsx +0 -47
- package/src/components/DatePicker/DatePicker.props.ts +0 -139
- package/src/components/DatePicker/DatePicker.stories.tsx +0 -98
- package/src/components/DatePicker/DatePicker.tsx +0 -673
- package/src/components/DatePicker/DatePickerCalendar.tsx +0 -58
- package/src/components/DatePicker/DatePickerDay.tsx +0 -302
- package/src/components/DatePicker/DatePickerDays.tsx +0 -241
- package/src/components/DatePicker/DatePickerFooter.tsx +0 -35
- package/src/components/DatePicker/DatePickerHeader/DatePickerHeader.props.ts +0 -8
- package/src/components/DatePicker/DatePickerHeader/DatePickerMonthButton.tsx +0 -29
- package/src/components/DatePicker/DatePickerHeader/DatePickerNextButton.tsx +0 -46
- package/src/components/DatePicker/DatePickerHeader/DatePickerPrevButton.tsx +0 -46
- package/src/components/DatePicker/DatePickerHeader/DatePickerSelectors.tsx +0 -96
- package/src/components/DatePicker/DatePickerHeader/DatePickerTimeButton.tsx +0 -48
- package/src/components/DatePicker/DatePickerHeader/DatePickerYearButton.tsx +0 -50
- package/src/components/DatePicker/DatePickerHeader/index.tsx +0 -64
- package/src/components/DatePicker/DatePickerMonths.tsx +0 -101
- package/src/components/DatePicker/DatePickerWeekdays.tsx +0 -49
- package/src/components/DatePicker/DatePickerYears.tsx +0 -119
- package/src/components/DatePicker/enums.ts +0 -14
- package/src/components/DatePicker/index.ts +0 -15
- package/src/components/DatePicker/polyfill.ts +0 -21
- package/src/components/DatePicker/utils.ts +0 -549
- package/src/components/DatePickerInput/DatePickerInput.figma.tsx +0 -34
- package/src/components/DatePickerInput/DatePickerInput.props.ts +0 -56
- package/src/components/DatePickerInput/DatePickerInput.stories.tsx +0 -178
- package/src/components/DatePickerInput/DatePickerInput.tsx +0 -277
- package/src/components/DatePickerInput/DatePickerInputDoneButton.tsx +0 -42
- package/src/components/DatePickerInput/DatePickerInputDoneButton.web.tsx +0 -7
- package/src/components/DatePickerInput/index.ts +0 -2
- package/src/components/DescriptionList/DescriptionList.context.ts +0 -18
- package/src/components/DescriptionList/DescriptionList.figma.tsx +0 -47
- package/src/components/DescriptionList/DescriptionList.props.ts +0 -14
- package/src/components/DescriptionList/DescriptionList.stories.tsx +0 -172
- package/src/components/DescriptionList/DescriptionList.tsx +0 -54
- package/src/components/DescriptionList/DescriptionListItem.figma.tsx +0 -42
- package/src/components/DescriptionList/DescriptionListItem.props.ts +0 -15
- package/src/components/DescriptionList/DescriptionListItem.tsx +0 -106
- package/src/components/DescriptionList/index.ts +0 -4
- package/src/components/DetailText/DetailText.props.ts +0 -8
- package/src/components/DetailText/DetailText.stories.tsx +0 -148
- package/src/components/DetailText/DetailText.tsx +0 -147
- package/src/components/DetailText/index.ts +0 -1
- package/src/components/Divider/Divider.figma.tsx +0 -12
- package/src/components/Divider/Divider.props.ts +0 -19
- package/src/components/Divider/Divider.stories.tsx +0 -60
- package/src/components/Divider/Divider.tsx +0 -240
- package/src/components/Divider/index.ts +0 -1
- package/src/components/Expandable/Expandable.props.ts +0 -46
- package/src/components/Expandable/Expandable.stories.tsx +0 -284
- package/src/components/Expandable/Expandable.tsx +0 -92
- package/src/components/Expandable/index.ts +0 -2
- package/src/components/ExpandableCard/ExpandableCard.figma.tsx +0 -49
- package/src/components/ExpandableCard/ExpandableCard.props.ts +0 -108
- package/src/components/ExpandableCard/ExpandableCard.stories.tsx +0 -376
- package/src/components/ExpandableCard/ExpandableCard.tsx +0 -84
- package/src/components/ExpandableCard/ExpandableCardContent.tsx +0 -21
- package/src/components/ExpandableCard/ExpandableCardExpandedContent.tsx +0 -42
- package/src/components/ExpandableCard/ExpandableCardGroup.figma.tsx +0 -40
- package/src/components/ExpandableCard/ExpandableCardGroup.props.ts +0 -36
- package/src/components/ExpandableCard/ExpandableCardGroup.tsx +0 -42
- package/src/components/ExpandableCard/ExpandableCardHelperText.tsx +0 -21
- package/src/components/ExpandableCard/ExpandableCardIcon.tsx +0 -32
- package/src/components/ExpandableCard/ExpandableCardLeadingContent.tsx +0 -9
- package/src/components/ExpandableCard/ExpandableCardText.tsx +0 -14
- package/src/components/ExpandableCard/ExpandableCardTrailingContent.tsx +0 -9
- package/src/components/ExpandableCard/ExpandableCardTrailingIcon.tsx +0 -30
- package/src/components/ExpandableCard/ExpandableCardTrigger.props.ts +0 -76
- package/src/components/ExpandableCard/ExpandableCardTrigger.tsx +0 -9
- package/src/components/ExpandableCard/ExpandableCardTriggerRoot.tsx +0 -173
- package/src/components/ExpandableCard/index.ts +0 -14
- package/src/components/Flex/Flex.props.ts +0 -31
- package/src/components/Flex/Flex.stories.tsx +0 -78
- package/src/components/Flex/Flex.tsx +0 -46
- package/src/components/Flex/index.ts +0 -1
- package/src/components/FormField/FormFielInvalidIcon.tsx +0 -11
- package/src/components/FormField/FormField.context.ts +0 -11
- package/src/components/FormField/FormField.figma.tsx +0 -23
- package/src/components/FormField/FormField.props.ts +0 -20
- package/src/components/FormField/FormField.stories.tsx +0 -134
- package/src/components/FormField/FormField.tsx +0 -123
- package/src/components/FormField/FormFieldHelper.tsx +0 -23
- package/src/components/FormField/FormFieldInvalid.tsx +0 -33
- package/src/components/FormField/FormFieldLabel.tsx +0 -16
- package/src/components/FormField/FormFieldRoot.tsx +0 -21
- package/src/components/FormField/FormFieldValid.tsx +0 -33
- package/src/components/FormField/FormFieldValidIcon.tsx +0 -11
- package/src/components/FormField/index.ts +0 -16
- package/src/components/Grid/Grid.props.ts +0 -62
- package/src/components/Grid/Grid.stories.tsx +0 -199
- package/src/components/Grid/Grid.tsx +0 -146
- package/src/components/Grid/index.ts +0 -2
- package/src/components/HTMLElements/ListItem.tsx +0 -33
- package/src/components/HTMLElements/OrderedList.stories.tsx +0 -86
- package/src/components/HTMLElements/OrderedList.tsx +0 -98
- package/src/components/HTMLElements/UnorderedList.stories.tsx +0 -110
- package/src/components/HTMLElements/UnorderedList.tsx +0 -92
- package/src/components/HTMLElements/index.ts +0 -3
- package/src/components/Heading/Heading.props.ts +0 -8
- package/src/components/Heading/Heading.stories.tsx +0 -128
- package/src/components/Heading/Heading.tsx +0 -193
- package/src/components/Heading/index.ts +0 -1
- package/src/components/Helper/Helper.props.ts +0 -24
- package/src/components/Helper/Helper.tsx +0 -66
- package/src/components/Helper/HelperContext.ts +0 -6
- package/src/components/Helper/HelperIcon.tsx +0 -44
- package/src/components/Helper/HelperText.figma.tsx +0 -23
- package/src/components/Helper/HelperText.tsx +0 -46
- package/src/components/Helper/index.ts +0 -3
- package/src/components/HighlightBanner/HighlightBanner.figma.tsx +0 -46
- package/src/components/HighlightBanner/HighlightBanner.props.ts +0 -29
- package/src/components/HighlightBanner/HighlightBanner.stories.tsx +0 -314
- package/src/components/HighlightBanner/HighlightBanner.tsx +0 -127
- package/src/components/HighlightBanner/HighlightBannerImage.tsx +0 -20
- package/src/components/HighlightBanner/index.ts +0 -3
- package/src/components/Icon/Icon.props.ts +0 -17
- package/src/components/Icon/Icon.stories.tsx +0 -44
- package/src/components/Icon/Icon.tsx +0 -52
- package/src/components/Icon/index.tsx +0 -2
- package/src/components/IconButton/IconButton.context.ts +0 -13
- package/src/components/IconButton/IconButton.figma.tsx +0 -45
- package/src/components/IconButton/IconButton.props.ts +0 -45
- package/src/components/IconButton/IconButton.stories.tsx +0 -271
- package/src/components/IconButton/IconButton.tsx +0 -37
- package/src/components/IconButton/IconButtonIcon.tsx +0 -156
- package/src/components/IconButton/IconButtonRoot.tsx +0 -478
- package/src/components/IconButton/IconButtonSpinner.tsx +0 -68
- package/src/components/IconButton/index.tsx +0 -2
- package/src/components/IconContainer/IconContainer.figma.tsx +0 -44
- package/src/components/IconContainer/IconContainer.props.ts +0 -17
- package/src/components/IconContainer/IconContainer.stories.tsx +0 -135
- package/src/components/IconContainer/IconContainer.tsx +0 -178
- package/src/components/IconContainer/index.tsx +0 -2
- package/src/components/Icons/CircleIcon.tsx +0 -21
- package/src/components/Icons/index.ts +0 -1
- package/src/components/IndicatorIconButton/IndicatorIconButton.docs.mdx +0 -85
- package/src/components/IndicatorIconButton/IndicatorIconButton.figma.tsx +0 -16
- package/src/components/IndicatorIconButton/IndicatorIconButton.props.ts +0 -12
- package/src/components/IndicatorIconButton/IndicatorIconButton.stories.tsx +0 -150
- package/src/components/IndicatorIconButton/IndicatorIconButton.tsx +0 -36
- package/src/components/IndicatorIconButton/index.tsx +0 -2
- package/src/components/InlineLink/InlineLink.context.ts +0 -10
- package/src/components/InlineLink/InlineLink.props.ts +0 -10
- package/src/components/InlineLink/InlineLink.stories.tsx +0 -91
- package/src/components/InlineLink/InlineLink.tsx +0 -26
- package/src/components/InlineLink/InlineLinkRoot.tsx +0 -87
- package/src/components/InlineLink/index.ts +0 -3
- package/src/components/Input/Input.context.ts +0 -6
- package/src/components/Input/Input.figma.tsx +0 -123
- package/src/components/Input/Input.props.ts +0 -118
- package/src/components/Input/Input.stories.tsx +0 -235
- package/src/components/Input/Input.tsx +0 -215
- package/src/components/Input/InputField.tsx +0 -75
- package/src/components/Input/InputIcon.tsx +0 -30
- package/src/components/Input/InputRoot.tsx +0 -89
- package/src/components/Input/InputSlot.tsx +0 -32
- package/src/components/Input/index.ts +0 -1
- package/src/components/Label/Label.figma.tsx +0 -24
- package/src/components/Label/Label.props.ts +0 -9
- package/src/components/Label/Label.tsx +0 -44
- package/src/components/Label/index.ts +0 -1
- package/src/components/Link/Link.context.ts +0 -10
- package/src/components/Link/Link.figma.tsx +0 -35
- package/src/components/Link/Link.props.ts +0 -18
- package/src/components/Link/Link.stories.tsx +0 -75
- package/src/components/Link/Link.tsx +0 -44
- package/src/components/Link/LinkIcon.tsx +0 -60
- package/src/components/Link/LinkRoot.tsx +0 -65
- package/src/components/Link/LinkText.tsx +0 -59
- package/src/components/Link/index.ts +0 -4
- package/src/components/List/List.context.ts +0 -16
- package/src/components/List/List.figma.tsx +0 -45
- package/src/components/List/List.props.ts +0 -13
- package/src/components/List/List.stories.tsx +0 -535
- package/src/components/List/List.tsx +0 -109
- package/src/components/List/ListAction/ListAction.figma.tsx +0 -21
- package/src/components/List/ListAction/ListAction.props.ts +0 -10
- package/src/components/List/ListAction/ListAction.tsx +0 -165
- package/src/components/List/ListAction/ListActionContent.tsx +0 -21
- package/src/components/List/ListAction/ListActionText.tsx +0 -14
- package/src/components/List/ListAction/ListActionTrailingContent.tsx +0 -9
- package/src/components/List/ListAction/ListActionTrailingIcon.tsx +0 -33
- package/src/components/List/ListAction/index.ts +0 -6
- package/src/components/List/ListItem/ListItem.context.ts +0 -11
- package/src/components/List/ListItem/ListItem.figma.tsx +0 -56
- package/src/components/List/ListItem/ListItem.props.ts +0 -38
- package/src/components/List/ListItem/ListItem.tsx +0 -10
- package/src/components/List/ListItem/ListItemContent.tsx +0 -21
- package/src/components/List/ListItem/ListItemHeading.tsx +0 -20
- package/src/components/List/ListItem/ListItemHelperText.tsx +0 -20
- package/src/components/List/ListItem/ListItemIcon.tsx +0 -32
- package/src/components/List/ListItem/ListItemLeadingContent.figma.tsx +0 -29
- package/src/components/List/ListItem/ListItemLeadingContent.tsx +0 -9
- package/src/components/List/ListItem/ListItemRoot.tsx +0 -221
- package/src/components/List/ListItem/ListItemTrailingContent.figma.tsx +0 -27
- package/src/components/List/ListItem/ListItemTrailingContent.tsx +0 -9
- package/src/components/List/ListItem/ListItemTrailingIcon.tsx +0 -31
- package/src/components/List/ListItem/index.ts +0 -9
- package/src/components/List/index.ts +0 -4
- package/src/components/Menu/Menu.context.ts +0 -15
- package/src/components/Menu/Menu.figma.tsx +0 -30
- package/src/components/Menu/Menu.props.ts +0 -20
- package/src/components/Menu/Menu.stories.tsx +0 -292
- package/src/components/Menu/Menu.tsx +0 -51
- package/src/components/Menu/MenuItem.figma.tsx +0 -39
- package/src/components/Menu/MenuItem.props.ts +0 -29
- package/src/components/Menu/MenuItem.tsx +0 -145
- package/src/components/Menu/MenuTrigger.props.ts +0 -14
- package/src/components/Menu/MenuTrigger.tsx +0 -20
- package/src/components/Menu/index.ts +0 -7
- package/src/components/Modal/Modal.figma.tsx +0 -67
- package/src/components/Modal/Modal.props.ts +0 -25
- package/src/components/Modal/Modal.shared.types.ts +0 -43
- package/src/components/Modal/Modal.stories.tsx +0 -405
- package/src/components/Modal/Modal.tsx +0 -411
- package/src/components/Modal/Modal.web.tsx +0 -238
- package/src/components/Modal/ModalImage.tsx +0 -20
- package/src/components/Modal/index.ts +0 -3
- package/src/components/NavModal/NavModal.figma.tsx +0 -13
- package/src/components/NavModal/NavModal.props.ts +0 -31
- package/src/components/NavModal/NavModal.stories.tsx +0 -160
- package/src/components/NavModal/NavModal.tsx +0 -426
- package/src/components/NavModal/index.ts +0 -2
- package/src/components/Pagination/Pagination.figma.tsx +0 -20
- package/src/components/Pagination/Pagination.props.ts +0 -28
- package/src/components/Pagination/Pagination.stories.tsx +0 -88
- package/src/components/Pagination/Pagination.tsx +0 -248
- package/src/components/Pagination/Pagination.utils.test.ts +0 -20
- package/src/components/Pagination/Pagination.utils.ts +0 -37
- package/src/components/Pagination/index.ts +0 -2
- package/src/components/PillGroup/Pill.figma.tsx +0 -12
- package/src/components/PillGroup/Pill.props.ts +0 -13
- package/src/components/PillGroup/Pill.tsx +0 -118
- package/src/components/PillGroup/PillGroup.context.tsx +0 -12
- package/src/components/PillGroup/PillGroup.docs.mdx +0 -96
- package/src/components/PillGroup/PillGroup.figma.tsx +0 -20
- package/src/components/PillGroup/PillGroup.props.ts +0 -36
- package/src/components/PillGroup/PillGroup.stories.tsx +0 -158
- package/src/components/PillGroup/PillGroup.tsx +0 -70
- package/src/components/PillGroup/index.ts +0 -4
- package/src/components/ProgressBar/ProgressBar.figma.tsx +0 -79
- package/src/components/ProgressBar/ProgressBar.props.ts +0 -60
- package/src/components/ProgressBar/ProgressBar.stories.tsx +0 -117
- package/src/components/ProgressBar/ProgressBar.tsx +0 -74
- package/src/components/ProgressBar/ProgressBarCircular.tsx +0 -181
- package/src/components/ProgressBar/ProgressBarLinear.tsx +0 -127
- package/src/components/ProgressBar/index.ts +0 -7
- package/src/components/ProgressStepper/ProgressStep.figma.tsx +0 -19
- package/src/components/ProgressStepper/ProgressStep.tsx +0 -134
- package/src/components/ProgressStepper/ProgressStepper.docs.mdx +0 -87
- package/src/components/ProgressStepper/ProgressStepper.figma.tsx +0 -13
- package/src/components/ProgressStepper/ProgressStepper.props.ts +0 -27
- package/src/components/ProgressStepper/ProgressStepper.stories.tsx +0 -107
- package/src/components/ProgressStepper/ProgressStepper.tsx +0 -26
- package/src/components/ProgressStepper/ProgressStepperRoot.tsx +0 -32
- package/src/components/ProgressStepper/index.ts +0 -3
- package/src/components/Radio/Radio.context.ts +0 -9
- package/src/components/Radio/Radio.figma.tsx +0 -38
- package/src/components/Radio/Radio.props.ts +0 -38
- package/src/components/Radio/Radio.stories.tsx +0 -254
- package/src/components/Radio/Radio.tsx +0 -98
- package/src/components/Radio/RadioGroup.context.ts +0 -10
- package/src/components/Radio/RadioGroup.figma.tsx +0 -82
- package/src/components/Radio/RadioGroup.props.ts +0 -23
- package/src/components/Radio/RadioGroup.stories.tsx +0 -131
- package/src/components/Radio/RadioGroup.tsx +0 -113
- package/src/components/Radio/RadioGroupRoot.tsx +0 -36
- package/src/components/Radio/RadioGroupTextContent.tsx +0 -14
- package/src/components/Radio/RadioIcon.tsx +0 -37
- package/src/components/Radio/RadioImage.figma.tsx +0 -27
- package/src/components/Radio/RadioImage.tsx +0 -14
- package/src/components/Radio/RadioIndicator.tsx +0 -63
- package/src/components/Radio/RadioLabel.tsx +0 -14
- package/src/components/Radio/RadioRoot.tsx +0 -65
- package/src/components/Radio/RadioTextContent.tsx +0 -21
- package/src/components/Radio/RadioTile.figma.tsx +0 -38
- package/src/components/Radio/RadioTileRoot.tsx +0 -46
- package/src/components/Radio/index.ts +0 -6
- package/src/components/RadioCard/RadioCard.context.ts +0 -8
- package/src/components/RadioCard/RadioCard.figma.tsx +0 -24
- package/src/components/RadioCard/RadioCard.props.ts +0 -19
- package/src/components/RadioCard/RadioCard.stories.tsx +0 -45
- package/src/components/RadioCard/RadioCard.tsx +0 -62
- package/src/components/RadioCard/RadioCardGroup.context.ts +0 -16
- package/src/components/RadioCard/RadioCardGroup.props.ts +0 -36
- package/src/components/RadioCard/RadioCardGroup.stories.tsx +0 -94
- package/src/components/RadioCard/RadioCardGroup.tsx +0 -57
- package/src/components/RadioCard/RadioCardIcon.tsx +0 -33
- package/src/components/RadioCard/RadioCardIndicator.tsx +0 -63
- package/src/components/RadioCard/RadioCardLabel.tsx +0 -19
- package/src/components/RadioCard/RadioCardRoot.tsx +0 -85
- package/src/components/RadioCard/index.ts +0 -8
- package/src/components/Rating/Rating.docs.mdx +0 -217
- package/src/components/Rating/Rating.figma.tsx +0 -39
- package/src/components/Rating/Rating.props.ts +0 -28
- package/src/components/Rating/Rating.stories.tsx +0 -112
- package/src/components/Rating/Rating.tsx +0 -198
- package/src/components/Rating/Rating.utils.test.ts +0 -15
- package/src/components/Rating/Rating.utils.ts +0 -14
- package/src/components/Rating/RatingEmoji.tsx +0 -28
- package/src/components/Rating/RatingStarEmpty.tsx +0 -22
- package/src/components/Rating/RatingStarFilled.tsx +0 -27
- package/src/components/Rating/index.ts +0 -2
- package/src/components/Roundel/Roundel.figma.tsx +0 -17
- package/src/components/Roundel/Roundel.props.ts +0 -8
- package/src/components/Roundel/Roundel.stories.tsx +0 -49
- package/src/components/Roundel/Roundel.tsx +0 -51
- package/src/components/Roundel/index.ts +0 -2
- package/src/components/SectionHeader/SectionHeader.figma.tsx +0 -37
- package/src/components/SectionHeader/SectionHeader.props.ts +0 -29
- package/src/components/SectionHeader/SectionHeader.stories.tsx +0 -86
- package/src/components/SectionHeader/SectionHeader.tsx +0 -61
- package/src/components/SectionHeader/SectionHeaderHeading.tsx +0 -14
- package/src/components/SectionHeader/SectionHeaderHelperText.tsx +0 -21
- package/src/components/SectionHeader/SectionHeaderTextContent.tsx +0 -21
- package/src/components/SectionHeader/SectionHeaderTrailingContent.tsx +0 -20
- package/src/components/SectionHeader/index.ts +0 -5
- package/src/components/SegmentedControl/SegmentedControl.context.ts +0 -22
- package/src/components/SegmentedControl/SegmentedControl.figma.tsx +0 -39
- package/src/components/SegmentedControl/SegmentedControl.props.ts +0 -20
- package/src/components/SegmentedControl/SegmentedControl.stories.tsx +0 -98
- package/src/components/SegmentedControl/SegmentedControl.tsx +0 -260
- package/src/components/SegmentedControl/SegmentedControlOption.props.ts +0 -16
- package/src/components/SegmentedControl/SegmentedControlOption.tsx +0 -237
- package/src/components/SegmentedControl/index.ts +0 -4
- package/src/components/Select/Select.context.ts +0 -15
- package/src/components/Select/Select.figma.tsx +0 -56
- package/src/components/Select/Select.props.ts +0 -161
- package/src/components/Select/Select.stories.tsx +0 -290
- package/src/components/Select/Select.tsx +0 -321
- package/src/components/Select/SelectOption.figma.tsx +0 -18
- package/src/components/Select/SelectOption.tsx +0 -103
- package/src/components/Select/index.ts +0 -7
- package/src/components/Skeleton/Skeleton.props.ts +0 -11
- package/src/components/Skeleton/Skeleton.stories.tsx +0 -33
- package/src/components/Skeleton/Skeleton.tsx +0 -77
- package/src/components/Skeleton/index.ts +0 -1
- package/src/components/Spinner/Spinner.figma.tsx +0 -14
- package/src/components/Spinner/Spinner.props.ts +0 -10
- package/src/components/Spinner/Spinner.stories.tsx +0 -56
- package/src/components/Spinner/Spinner.tsx +0 -157
- package/src/components/Spinner/Spinner.web.tsx +0 -149
- package/src/components/Spinner/index.ts +0 -2
- package/src/components/StepperInput/StepperButton.tsx +0 -83
- package/src/components/StepperInput/StepperInput.figma.tsx +0 -45
- package/src/components/StepperInput/StepperInput.props.ts +0 -39
- package/src/components/StepperInput/StepperInput.stories.tsx +0 -270
- package/src/components/StepperInput/StepperInput.tsx +0 -322
- package/src/components/StepperInput/index.ts +0 -2
- package/src/components/Switch/Switch.figma.tsx +0 -16
- package/src/components/Switch/Switch.props.ts +0 -10
- package/src/components/Switch/Switch.stories.tsx +0 -80
- package/src/components/Switch/Switch.tsx +0 -209
- package/src/components/Switch/Switch.web.tsx +0 -207
- package/src/components/Switch/index.ts +0 -1
- package/src/components/Table/Table.context.tsx +0 -23
- package/src/components/Table/Table.docs.mdx +0 -239
- package/src/components/Table/Table.figma.tsx +0 -65
- package/src/components/Table/Table.props.ts +0 -65
- package/src/components/Table/Table.stories.tsx +0 -399
- package/src/components/Table/Table.tsx +0 -127
- package/src/components/Table/Table.utils.test.ts +0 -82
- package/src/components/Table/Table.utils.ts +0 -72
- package/src/components/Table/TableBody.tsx +0 -25
- package/src/components/Table/TableCell.tsx +0 -67
- package/src/components/Table/TableHeader.tsx +0 -41
- package/src/components/Table/TableHeaderCell.tsx +0 -145
- package/src/components/Table/TablePagination.tsx +0 -10
- package/src/components/Table/TableRow.tsx +0 -42
- package/src/components/Table/index.ts +0 -16
- package/src/components/Tabs/Tab.figma.tsx +0 -21
- package/src/components/Tabs/Tab.props.ts +0 -16
- package/src/components/Tabs/Tab.tsx +0 -114
- package/src/components/Tabs/TabPanel.props.ts +0 -10
- package/src/components/Tabs/TabPanel.tsx +0 -46
- package/src/components/Tabs/Tabs.context.ts +0 -26
- package/src/components/Tabs/Tabs.figma.tsx +0 -20
- package/src/components/Tabs/Tabs.props.ts +0 -21
- package/src/components/Tabs/Tabs.stories.tsx +0 -270
- package/src/components/Tabs/Tabs.tsx +0 -138
- package/src/components/Tabs/TabsList.props.ts +0 -8
- package/src/components/Tabs/TabsList.tsx +0 -194
- package/src/components/Tabs/index.ts +0 -8
- package/src/components/Textarea/Textarea.context.ts +0 -6
- package/src/components/Textarea/Textarea.figma.tsx +0 -64
- package/src/components/Textarea/Textarea.props.ts +0 -74
- package/src/components/Textarea/Textarea.stories.tsx +0 -106
- package/src/components/Textarea/Textarea.tsx +0 -207
- package/src/components/Textarea/TextareaField.tsx +0 -45
- package/src/components/Textarea/TextareaRoot.tsx +0 -83
- package/src/components/Textarea/index.ts +0 -1
- package/src/components/ThemedImage/ThemedImage.props.ts +0 -15
- package/src/components/ThemedImage/ThemedImage.stories.tsx +0 -175
- package/src/components/ThemedImage/ThemedImage.tsx +0 -34
- package/src/components/ThemedImage/index.tsx +0 -2
- package/src/components/TimePicker/TimePicker.figma.tsx +0 -29
- package/src/components/TimePicker/TimePicker.props.ts +0 -45
- package/src/components/TimePicker/TimePicker.stories.tsx +0 -85
- package/src/components/TimePicker/TimePicker.tsx +0 -150
- package/src/components/TimePicker/TimePickerView.tsx +0 -216
- package/src/components/TimePicker/TimePickerWheel.tsx +0 -161
- package/src/components/TimePicker/TimePickerWheel.web.tsx +0 -217
- package/src/components/TimePicker/index.ts +0 -8
- package/src/components/TimePickerInput/TimePickerInput.figma.tsx +0 -34
- package/src/components/TimePickerInput/TimePickerInput.props.ts +0 -55
- package/src/components/TimePickerInput/TimePickerInput.stories.tsx +0 -175
- package/src/components/TimePickerInput/TimePickerInput.tsx +0 -283
- package/src/components/TimePickerInput/TimePickerInputDoneButton.tsx +0 -42
- package/src/components/TimePickerInput/TimePickerInputDoneButton.web.tsx +0 -7
- package/src/components/TimePickerInput/index.ts +0 -2
- package/src/components/Timeline/Timeline.figma.tsx +0 -89
- package/src/components/Timeline/Timeline.props.ts +0 -51
- package/src/components/Timeline/Timeline.stories.tsx +0 -102
- package/src/components/Timeline/Timeline.tsx +0 -48
- package/src/components/Timeline/TimelineItem.tsx +0 -293
- package/src/components/Timeline/index.ts +0 -9
- package/src/components/Toast/Toast.context.tsx +0 -139
- package/src/components/Toast/Toast.props.ts +0 -38
- package/src/components/Toast/Toast.stories.tsx +0 -385
- package/src/components/Toast/ToastItem.figma.tsx +0 -15
- package/src/components/Toast/ToastItem.tsx +0 -205
- package/src/components/Toast/index.ts +0 -3
- package/src/components/ToggleButton/ToggleButton.props.tsx +0 -7
- package/src/components/ToggleButton/ToggleButton.stories.tsx +0 -35
- package/src/components/ToggleButton/ToggleButton.tsx +0 -32
- package/src/components/ToggleButton/ToggleButtonIcon.tsx +0 -47
- package/src/components/ToggleButton/ToggleButtonRoot.tsx +0 -98
- package/src/components/ToggleButton/ToggleButtonText.tsx +0 -29
- package/src/components/ToggleButton/index.ts +0 -2
- package/src/components/ToggleButtonCard/ToggleButtonCard.context.ts +0 -8
- package/src/components/ToggleButtonCard/ToggleButtonCard.figma.tsx +0 -24
- package/src/components/ToggleButtonCard/ToggleButtonCard.props.ts +0 -17
- package/src/components/ToggleButtonCard/ToggleButtonCard.stories.tsx +0 -45
- package/src/components/ToggleButtonCard/ToggleButtonCard.tsx +0 -32
- package/src/components/ToggleButtonCard/ToggleButtonCardGroup.props.ts +0 -34
- package/src/components/ToggleButtonCard/ToggleButtonCardGroup.stories.tsx +0 -85
- package/src/components/ToggleButtonCard/ToggleButtonCardGroup.tsx +0 -48
- package/src/components/ToggleButtonCard/ToggleButtonCardRoot.tsx +0 -97
- package/src/components/ToggleButtonCard/index.ts +0 -2
- package/src/components/UnstyledIconButton/UnstyledIconButton.context.ts +0 -11
- package/src/components/UnstyledIconButton/UnstyledIconButton.figma.tsx +0 -49
- package/src/components/UnstyledIconButton/UnstyledIconButton.props.ts +0 -34
- package/src/components/UnstyledIconButton/UnstyledIconButton.stories.tsx +0 -96
- package/src/components/UnstyledIconButton/UnstyledIconButton.tsx +0 -68
- package/src/components/UnstyledIconButton/UnstyledIconButtonIcon.tsx +0 -74
- package/src/components/UnstyledIconButton/UnstyledIconButtonRoot.tsx +0 -61
- package/src/components/UnstyledIconButton/UnstyledIconButtonSpinner.tsx +0 -39
- package/src/components/UnstyledIconButton/index.tsx +0 -2
- package/src/components/VerificationInput/VerificationInput.figma.tsx +0 -53
- package/src/components/VerificationInput/VerificationInput.props.ts +0 -66
- package/src/components/VerificationInput/VerificationInput.stories.tsx +0 -249
- package/src/components/VerificationInput/VerificationInput.tsx +0 -290
- package/src/components/VerificationInput/VerificationInput.utils.test.ts +0 -48
- package/src/components/VerificationInput/VerificationInput.utils.ts +0 -32
- package/src/components/VerificationInput/VerificationInputSlot.tsx +0 -170
- package/src/components/VerificationInput/index.ts +0 -7
- package/src/components/index.ts +0 -77
- package/src/core/breakpoints.ts +0 -10
- package/src/core/index.ts +0 -38
- package/src/core/themes.ts +0 -390
- package/src/hooks/index.ts +0 -8
- package/src/hooks/useBreakpointValue.ts +0 -62
- package/src/hooks/useColorMode.ts +0 -18
- package/src/hooks/useFormFieldAccessibility.test.tsx +0 -74
- package/src/hooks/useFormFieldAccessibility.ts +0 -67
- package/src/hooks/useMedia.ts +0 -31
- package/src/hooks/usePrevious.ts +0 -9
- package/src/hooks/useStyleProps.ts +0 -95
- package/src/hooks/useTheme.ts +0 -9
- package/src/hooks/useToken.ts +0 -40
- package/src/index.ts +0 -4
- package/src/legacyTokens/common/brand.ts +0 -18
- package/src/legacyTokens/common/index.ts +0 -10
- package/src/legacyTokens/common/service.ts +0 -22
- package/src/legacyTokens/dark/apple.ts +0 -30
- package/src/legacyTokens/dark/cyan.ts +0 -50
- package/src/legacyTokens/dark/gold.ts +0 -46
- package/src/legacyTokens/dark/grape.ts +0 -30
- package/src/legacyTokens/dark/green.ts +0 -42
- package/src/legacyTokens/dark/grey.ts +0 -62
- package/src/legacyTokens/dark/index.ts +0 -42
- package/src/legacyTokens/dark/pink.ts +0 -30
- package/src/legacyTokens/dark/purple.ts +0 -50
- package/src/legacyTokens/dark/red.ts +0 -42
- package/src/legacyTokens/dark/rose.ts +0 -30
- package/src/legacyTokens/index.ts +0 -14
- package/src/legacyTokens/light/apple.ts +0 -30
- package/src/legacyTokens/light/cyan.ts +0 -50
- package/src/legacyTokens/light/gold.ts +0 -46
- package/src/legacyTokens/light/grape.ts +0 -30
- package/src/legacyTokens/light/green.ts +0 -42
- package/src/legacyTokens/light/grey.ts +0 -62
- package/src/legacyTokens/light/index.ts +0 -42
- package/src/legacyTokens/light/pink.ts +0 -30
- package/src/legacyTokens/light/purple.ts +0 -50
- package/src/legacyTokens/light/red.ts +0 -42
- package/src/legacyTokens/light/rose.ts +0 -34
- package/src/tokens/README.md +0 -7
- package/src/tokens/border-radius.ts +0 -12
- package/src/tokens/border-width.ts +0 -8
- package/src/tokens/color.ts +0 -659
- package/src/tokens/components/dark/accordion.ts +0 -27
- package/src/tokens/components/dark/alert.ts +0 -23
- package/src/tokens/components/dark/avatar.ts +0 -19
- package/src/tokens/components/dark/badge.ts +0 -24
- package/src/tokens/components/dark/banner.ts +0 -53
- package/src/tokens/components/dark/bottom-navigation.ts +0 -30
- package/src/tokens/components/dark/bottom-sheet.ts +0 -16
- package/src/tokens/components/dark/breadcrumb.ts +0 -7
- package/src/tokens/components/dark/button.ts +0 -19
- package/src/tokens/components/dark/card-accordion.ts +0 -13
- package/src/tokens/components/dark/card-action.ts +0 -11
- package/src/tokens/components/dark/card-content.ts +0 -25
- package/src/tokens/components/dark/card.ts +0 -38
- package/src/tokens/components/dark/carousel-control.ts +0 -11
- package/src/tokens/components/dark/checkbox.ts +0 -42
- package/src/tokens/components/dark/date-picker.ts +0 -44
- package/src/tokens/components/dark/description-list.ts +0 -20
- package/src/tokens/components/dark/divider.ts +0 -11
- package/src/tokens/components/dark/drawer.ts +0 -29
- package/src/tokens/components/dark/expandable-card.ts +0 -11
- package/src/tokens/components/dark/form-field.ts +0 -10
- package/src/tokens/components/dark/icon-button.ts +0 -46
- package/src/tokens/components/dark/icon-container.ts +0 -25
- package/src/tokens/components/dark/illustrations.ts +0 -7
- package/src/tokens/components/dark/index.ts +0 -58
- package/src/tokens/components/dark/indicator-icon-button.ts +0 -11
- package/src/tokens/components/dark/inline-link.ts +0 -14
- package/src/tokens/components/dark/input.ts +0 -43
- package/src/tokens/components/dark/link.ts +0 -20
- package/src/tokens/components/dark/list.ts +0 -48
- package/src/tokens/components/dark/menu.ts +0 -34
- package/src/tokens/components/dark/modal.ts +0 -36
- package/src/tokens/components/dark/navigation.ts +0 -61
- package/src/tokens/components/dark/overlay.ts +0 -8
- package/src/tokens/components/dark/pagination.ts +0 -13
- package/src/tokens/components/dark/parts.ts +0 -33
- package/src/tokens/components/dark/pill.ts +0 -16
- package/src/tokens/components/dark/progress-bar.ts +0 -41
- package/src/tokens/components/dark/progress-stepper.ts +0 -24
- package/src/tokens/components/dark/radio.ts +0 -39
- package/src/tokens/components/dark/rating.ts +0 -8
- package/src/tokens/components/dark/section-header.ts +0 -10
- package/src/tokens/components/dark/segmented-control.ts +0 -19
- package/src/tokens/components/dark/select.ts +0 -45
- package/src/tokens/components/dark/skeleton.ts +0 -7
- package/src/tokens/components/dark/spinner.ts +0 -24
- package/src/tokens/components/dark/switch.ts +0 -25
- package/src/tokens/components/dark/table.ts +0 -27
- package/src/tokens/components/dark/tabs.ts +0 -25
- package/src/tokens/components/dark/time-picker.ts +0 -30
- package/src/tokens/components/dark/timeline.ts +0 -27
- package/src/tokens/components/dark/toast.ts +0 -17
- package/src/tokens/components/dark/toggle-button.ts +0 -13
- package/src/tokens/components/dark/tooltip.ts +0 -13
- package/src/tokens/components/dark/top-navigation.ts +0 -18
- package/src/tokens/components/index.ts +0 -6
- package/src/tokens/components/light/accordion.ts +0 -27
- package/src/tokens/components/light/alert.ts +0 -23
- package/src/tokens/components/light/avatar.ts +0 -19
- package/src/tokens/components/light/badge.ts +0 -24
- package/src/tokens/components/light/banner.ts +0 -53
- package/src/tokens/components/light/bottom-navigation.ts +0 -30
- package/src/tokens/components/light/bottom-sheet.ts +0 -16
- package/src/tokens/components/light/breadcrumb.ts +0 -7
- package/src/tokens/components/light/button.ts +0 -19
- package/src/tokens/components/light/card-accordion.ts +0 -13
- package/src/tokens/components/light/card-action.ts +0 -11
- package/src/tokens/components/light/card-content.ts +0 -25
- package/src/tokens/components/light/card.ts +0 -38
- package/src/tokens/components/light/carousel-control.ts +0 -11
- package/src/tokens/components/light/checkbox.ts +0 -42
- package/src/tokens/components/light/date-picker.ts +0 -44
- package/src/tokens/components/light/description-list.ts +0 -20
- package/src/tokens/components/light/divider.ts +0 -11
- package/src/tokens/components/light/drawer.ts +0 -29
- package/src/tokens/components/light/expandable-card.ts +0 -11
- package/src/tokens/components/light/form-field.ts +0 -10
- package/src/tokens/components/light/icon-button.ts +0 -46
- package/src/tokens/components/light/icon-container.ts +0 -25
- package/src/tokens/components/light/illustrations.ts +0 -7
- package/src/tokens/components/light/index.ts +0 -58
- package/src/tokens/components/light/indicator-icon-button.ts +0 -11
- package/src/tokens/components/light/inline-link.ts +0 -14
- package/src/tokens/components/light/input.ts +0 -43
- package/src/tokens/components/light/link.ts +0 -20
- package/src/tokens/components/light/list.ts +0 -48
- package/src/tokens/components/light/menu.ts +0 -34
- package/src/tokens/components/light/modal.ts +0 -36
- package/src/tokens/components/light/navigation.ts +0 -61
- package/src/tokens/components/light/overlay.ts +0 -8
- package/src/tokens/components/light/pagination.ts +0 -13
- package/src/tokens/components/light/parts.ts +0 -33
- package/src/tokens/components/light/pill.ts +0 -16
- package/src/tokens/components/light/progress-bar.ts +0 -41
- package/src/tokens/components/light/progress-stepper.ts +0 -24
- package/src/tokens/components/light/radio.ts +0 -39
- package/src/tokens/components/light/rating.ts +0 -8
- package/src/tokens/components/light/section-header.ts +0 -10
- package/src/tokens/components/light/segmented-control.ts +0 -19
- package/src/tokens/components/light/select.ts +0 -45
- package/src/tokens/components/light/skeleton.ts +0 -7
- package/src/tokens/components/light/spinner.ts +0 -24
- package/src/tokens/components/light/switch.ts +0 -25
- package/src/tokens/components/light/table.ts +0 -27
- package/src/tokens/components/light/tabs.ts +0 -25
- package/src/tokens/components/light/time-picker.ts +0 -30
- package/src/tokens/components/light/timeline.ts +0 -27
- package/src/tokens/components/light/toast.ts +0 -17
- package/src/tokens/components/light/toggle-button.ts +0 -13
- package/src/tokens/components/light/tooltip.ts +0 -13
- package/src/tokens/components/light/top-navigation.ts +0 -18
- package/src/tokens/font.ts +0 -29
- package/src/tokens/index.ts +0 -20
- package/src/tokens/layout.ts +0 -94
- package/src/tokens/letter-spacing.ts +0 -13
- package/src/tokens/line-height.ts +0 -16
- package/src/tokens/motion.ts +0 -23
- package/src/tokens/primitive.ts +0 -102
- package/src/tokens/semantic-dark.ts +0 -255
- package/src/tokens/semantic-light.ts +0 -255
- package/src/tokens/semantic.ts +0 -9
- package/src/tokens/shadow.ts +0 -52
- package/src/tokens/space.ts +0 -23
- package/src/tokens/typography.ts +0 -298
- package/src/types/index.ts +0 -6
- package/src/types/refs.ts +0 -8
- package/src/types/semanticColorValues.ts +0 -26
- package/src/types/states.ts +0 -11
- package/src/types/unistyles.ts +0 -12
- package/src/types/utilityProps.ts +0 -410
- package/src/types/values.ts +0 -81
- package/src/utils/coloursAsArray.ts +0 -65
- package/src/utils/formatThousands.ts +0 -14
- package/src/utils/getFlattenedColorValue.ts +0 -13
- package/src/utils/getInitials.ts +0 -7
- package/src/utils/getStyleValue.ts +0 -9
- package/src/utils/hasChildrenByDisplayName.ts +0 -43
- package/src/utils/hexWithOpacity.ts +0 -19
- package/src/utils/index.ts +0 -17
- package/src/utils/isEqual.ts +0 -30
- package/src/utils/isThemedImageProps.ts +0 -8
- package/src/utils/styleUtils.ts +0 -264
- package/src/utils/themeValueHelpers.ts +0 -98
- package/src/vite-env.d.ts +0 -19
- package/tsconfig.eslint.json +0 -14
- package/tsconfig.json +0 -45
- package/vitest.config.js +0 -37
- package/vitest.unit.config.ts +0 -9
|
@@ -1,25 +1,13 @@
|
|
|
1
|
-
import { Canvas, Controls, Meta, Story } from '@storybook/addon-docs/blocks';
|
|
2
|
-
import { BodyText, BottomSheetModal, Box, Button, Center, Flex, Heading, Modal } from '../../';
|
|
3
|
-
import StorybookLink from '../../../../../shared/storybook/StorybookLink';
|
|
4
|
-
import { BackToTopButton, UsageWrap, ViewFigmaButton } from '../../../docs/components';
|
|
5
|
-
import * as Stories from './Modal.stories';
|
|
6
|
-
|
|
7
|
-
<Meta title="Components / Modal" />
|
|
8
|
-
|
|
9
|
-
<ViewFigmaButton url="https://www.figma.com/design/6NKZXZhFSExXrcbBgc6zTR/Hearth-Components---Tokens?node-id=6300-2825&t=JmfcCbdIvO3jcjc3-4" />
|
|
10
|
-
|
|
11
|
-
<BackToTopButton />
|
|
12
|
-
|
|
13
1
|
# Modal
|
|
14
2
|
|
|
15
3
|
The `Modal` component provides a versatile dialog interface that slides up from the bottom of the screen. It's built on top of
|
|
16
|
-
the
|
|
4
|
+
the `BottomSheetModal`
|
|
17
5
|
component and includes pre-configured layouts for common modal patterns including headers, content areas, and action buttons.
|
|
18
6
|
|
|
19
7
|
The Modal component is ideal for displaying important information, collecting user input, or presenting choices that require user attention
|
|
20
8
|
without navigating away from the current screen.
|
|
21
9
|
|
|
22
|
-
If you need a modal layout inside a React Navigation modal screen, use
|
|
10
|
+
If you need a modal layout inside a React Navigation modal screen, use `NavModal` instead.
|
|
23
11
|
|
|
24
12
|
- [Playground](#playground)
|
|
25
13
|
- [Usage](#usage)
|
|
@@ -31,6 +19,7 @@ If you need a modal layout inside a React Navigation modal screen, use <Storyboo
|
|
|
31
19
|
- [Modal with Image](#modal-with-image)
|
|
32
20
|
- [Fullscreen Modal](#fullscreen-modal)
|
|
33
21
|
- [Modal with Custom Content](#modal-with-custom-content)
|
|
22
|
+
- [JSX Description](#jsx-description)
|
|
34
23
|
- [Sticky Custom Footer](#sticky-custom-footer)
|
|
35
24
|
- [Loading State](#loading-state)
|
|
36
25
|
- [Without Close Button](#without-close-button)
|
|
@@ -42,21 +31,21 @@ If you need a modal layout inside a React Navigation modal screen, use <Storyboo
|
|
|
42
31
|
|
|
43
32
|
## Playground
|
|
44
33
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
<
|
|
48
|
-
|
|
49
|
-
|
|
34
|
+
```tsx
|
|
35
|
+
// Example usage
|
|
36
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 400 } : {}}>
|
|
37
|
+
<ViewWrap>
|
|
38
|
+
<Button onPress={openModal}>Open Modal</Button>
|
|
39
|
+
|
|
40
|
+
<Modal ref={modalRef} {...args} />
|
|
41
|
+
</ViewWrap>
|
|
42
|
+
</View>
|
|
43
|
+
```
|
|
50
44
|
|
|
51
45
|
### Basic Usage
|
|
52
46
|
|
|
53
|
-
<UsageWrap>
|
|
54
|
-
<Center>
|
|
55
|
-
<Button onPress={() => {}}>Open Modal</Button>
|
|
56
|
-
</Center>
|
|
57
|
-
</UsageWrap>
|
|
58
|
-
|
|
59
47
|
```tsx
|
|
48
|
+
// Example usage
|
|
60
49
|
import { useRef, useCallback } from 'react';
|
|
61
50
|
import { Modal, Button, BottomSheetModal } from '@utilitywarehouse/hearth-react-native';
|
|
62
51
|
|
|
@@ -93,30 +82,30 @@ const MyComponent = () => {
|
|
|
93
82
|
|
|
94
83
|
The Modal component extends the `BottomSheetModal` component and accepts all of its props, plus the following additional props:
|
|
95
84
|
|
|
96
|
-
| Property | Type | Description
|
|
97
|
-
| ----------------------------- | ------------------------------------------------------------------ |
|
|
98
|
-
| `heading` | `string` | The heading text displayed at the top of the modal
|
|
99
|
-
| `description` | `
|
|
100
|
-
| `showCloseButton` | `boolean` | Whether to show the close button in the top-right corner
|
|
101
|
-
| `primaryButtonText` | `string` | Text for the primary action button
|
|
102
|
-
| `secondaryButtonText` | `string` | Text for the secondary action button
|
|
103
|
-
| `onPressPrimaryButton` | `() => void` | Callback function called when the primary button is pressed
|
|
104
|
-
| `onPressSecondaryButton` | `() => void` | Callback function called when the secondary button is pressed
|
|
105
|
-
| `onPressCloseButton` | `() => void` | Callback function called when the close button is pressed
|
|
106
|
-
| `closeOnPrimaryButtonPress` | `boolean` | Whether to automatically close the modal when the primary button is pressed
|
|
107
|
-
| `closeOnSecondaryButtonPress` | `boolean` | Whether to automatically close the modal when the secondary button is pressed
|
|
108
|
-
| `onChange` | `(index: number, position: number, `<br />` type: number) => void` | Callback function called when the modal's position changes \*
|
|
109
|
-
| `loading` | `boolean` | Whether to show a loading state with spinner
|
|
110
|
-
| `loadingHeading` | `string` | The heading text to be displayed when loading is true. If not provided, the regular heading will be shown.
|
|
111
|
-
| `loadingDescription` | `string` | The description text to be displayed when loading is true. If not provided, the regular description will be shown.
|
|
112
|
-
| `image` | `ImageProps` | Image to display in the modal (shows as centered content with text below)
|
|
113
|
-
| `children` | `ReactNode` | Custom content to display in the modal body
|
|
114
|
-
| `primaryButtonProps` | `Omit<ButtonWithoutChildrenProps, 'children'>` | Additional props to pass to the primary button (colorScheme defaults to 'highlight', variant to 'solid')
|
|
115
|
-
| `secondaryButtonProps` | `Omit<ButtonWithoutChildrenProps, 'children'>` | Additional props to pass to the secondary button (colorScheme defaults to 'functional', variant to 'outline')
|
|
116
|
-
| `footer` | `ReactNode` | Custom footer content that replaces the built-in action buttons
|
|
117
|
-
| `footerStyle` | `StyleProp<ViewStyle>` | Styles applied to the footer container, useful for sticky footer shadows or custom spacing
|
|
118
|
-
| `closeButtonProps` | `Omit<UnstyledIconButtonProps, 'children'>` | Additional props to pass to the close button
|
|
119
|
-
| `fullscreen` | `boolean` | Whether the modal should take up the full screen height
|
|
85
|
+
| Property | Type | Description | Default |
|
|
86
|
+
| ----------------------------- | ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------- | -------------- |
|
|
87
|
+
| `heading` | `string` | The heading text displayed at the top of the modal | - |
|
|
88
|
+
| `description` | `ReactNode` | The description content displayed below the heading. Pass a string for the default styling, or JSX for custom content. | - |
|
|
89
|
+
| `showCloseButton` | `boolean` | Whether to show the close button in the top-right corner | `true` |
|
|
90
|
+
| `primaryButtonText` | `string` | Text for the primary action button | - |
|
|
91
|
+
| `secondaryButtonText` | `string` | Text for the secondary action button | - |
|
|
92
|
+
| `onPressPrimaryButton` | `() => void` | Callback function called when the primary button is pressed | - |
|
|
93
|
+
| `onPressSecondaryButton` | `() => void` | Callback function called when the secondary button is pressed | - |
|
|
94
|
+
| `onPressCloseButton` | `() => void` | Callback function called when the close button is pressed | - |
|
|
95
|
+
| `closeOnPrimaryButtonPress` | `boolean` | Whether to automatically close the modal when the primary button is pressed | `true` |
|
|
96
|
+
| `closeOnSecondaryButtonPress` | `boolean` | Whether to automatically close the modal when the secondary button is pressed | `true` |
|
|
97
|
+
| `onChange` | `(index: number, position: number, `<br />` type: number) => void` | Callback function called when the modal's position changes \* | - |
|
|
98
|
+
| `loading` | `boolean` | Whether to show a loading state with spinner | `false` |
|
|
99
|
+
| `loadingHeading` | `string` | The heading text to be displayed when loading is true. If not provided, the regular heading will be shown. | `'Loading...'` |
|
|
100
|
+
| `loadingDescription` | `string` | The description text to be displayed when loading is true. If not provided, the regular description will be shown. | - |
|
|
101
|
+
| `image` | `ImageProps` | Image to display in the modal (shows as centered content with text below) | - |
|
|
102
|
+
| `children` | `ReactNode` | Custom content to display in the modal body | - |
|
|
103
|
+
| `primaryButtonProps` | `Omit<ButtonWithoutChildrenProps, 'children'>` | Additional props to pass to the primary button (colorScheme defaults to 'highlight', variant to 'solid') | - |
|
|
104
|
+
| `secondaryButtonProps` | `Omit<ButtonWithoutChildrenProps, 'children'>` | Additional props to pass to the secondary button (colorScheme defaults to 'functional', variant to 'outline') | - |
|
|
105
|
+
| `footer` | `ReactNode` | Custom footer content that replaces the built-in action buttons | - |
|
|
106
|
+
| `footerStyle` | `StyleProp<ViewStyle>` | Styles applied to the footer container, useful for sticky footer shadows or custom spacing | - |
|
|
107
|
+
| `closeButtonProps` | `Omit<UnstyledIconButtonProps, 'children'>` | Additional props to pass to the close button | - |
|
|
108
|
+
| `fullscreen` | `boolean` | Whether the modal should take up the full screen height | `false` |
|
|
120
109
|
|
|
121
110
|
When `footer` is provided, the primary and secondary button props are not available. Build your footer actions directly inside the custom footer content instead.
|
|
122
111
|
|
|
@@ -133,9 +122,7 @@ The `ModalImage` component can be used to display an image within the Modal. It
|
|
|
133
122
|
| `dark` | `ImageSourcePropType` | The source of the image to display in dark mode (use instead of source) |
|
|
134
123
|
| `...rest` | `ImageProps` | Additional props to pass to the underlying Image component |
|
|
135
124
|
|
|
136
|
-
For more details about the ThemedImage component used internally, refer to the
|
|
137
|
-
|
|
138
|
-
## Features
|
|
125
|
+
For more details about the ThemedImage component used internally, refer to the `ThemedImage` documentation.
|
|
139
126
|
|
|
140
127
|
### Automatic Layout Management
|
|
141
128
|
|
|
@@ -177,6 +164,7 @@ The Modal component is built with comprehensive accessibility support to ensure
|
|
|
177
164
|
The Modal component automatically manages focus to provide a seamless experience:
|
|
178
165
|
|
|
179
166
|
```tsx
|
|
167
|
+
// Example usage
|
|
180
168
|
// Focus is automatically set when modal opens
|
|
181
169
|
const MyModal = () => {
|
|
182
170
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
@@ -199,6 +187,7 @@ const MyModal = () => {
|
|
|
199
187
|
You can enhance accessibility by providing custom labels for buttons and close actions:
|
|
200
188
|
|
|
201
189
|
```tsx
|
|
190
|
+
// Example usage
|
|
202
191
|
<Modal
|
|
203
192
|
ref={modalRef}
|
|
204
193
|
heading="Delete Item"
|
|
@@ -223,6 +212,7 @@ You can enhance accessibility by providing custom labels for buttons and close a
|
|
|
223
212
|
Loading states are fully accessible with proper announcements:
|
|
224
213
|
|
|
225
214
|
```tsx
|
|
215
|
+
// Example usage
|
|
226
216
|
<Modal
|
|
227
217
|
ref={modalRef}
|
|
228
218
|
heading="Processing Payment"
|
|
@@ -247,6 +237,7 @@ Loading states are fully accessible with proper announcements:
|
|
|
247
237
|
To test accessibility in your Modal implementation:
|
|
248
238
|
|
|
249
239
|
```tsx
|
|
240
|
+
// Example usage
|
|
250
241
|
import { AccessibilityInfo } from 'react-native';
|
|
251
242
|
|
|
252
243
|
const TestableModal = () => {
|
|
@@ -283,19 +274,39 @@ The Modal component handles platform-specific accessibility differences:
|
|
|
283
274
|
- **Android**: Implements TalkBack-specific accessibility patterns
|
|
284
275
|
- **Cross-platform**: Consistent behavior across both platforms
|
|
285
276
|
|
|
286
|
-
## Examples
|
|
287
|
-
|
|
288
277
|
### Basic Modal
|
|
289
278
|
|
|
290
|
-
|
|
279
|
+
```tsx
|
|
280
|
+
// Example usage
|
|
281
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 400 } : {}}>
|
|
282
|
+
<ViewWrap>
|
|
283
|
+
<Button onPress={openModal}>Open Modal</Button>
|
|
284
|
+
|
|
285
|
+
<Modal ref={modalRef} {...args} />
|
|
286
|
+
</ViewWrap>
|
|
287
|
+
</View>
|
|
288
|
+
```
|
|
291
289
|
|
|
292
290
|
### Modal with Image
|
|
293
291
|
|
|
294
292
|
Use the `image` prop to display an image-centric modal with centered content:
|
|
295
293
|
|
|
296
|
-
|
|
294
|
+
```tsx
|
|
295
|
+
// Example usage
|
|
296
|
+
<Modal
|
|
297
|
+
heading="Modal Heading"
|
|
298
|
+
description="This is a modal description"
|
|
299
|
+
showCloseButton
|
|
300
|
+
primaryButtonText="Primary"
|
|
301
|
+
secondaryButtonText="Cancel"
|
|
302
|
+
onPressCloseButton={() => null}
|
|
303
|
+
onPressPrimaryButton={() => null}
|
|
304
|
+
onPressSecondaryButton={() => null}
|
|
305
|
+
/>
|
|
306
|
+
```
|
|
297
307
|
|
|
298
308
|
```tsx
|
|
309
|
+
// Example usage
|
|
299
310
|
import { Modal, ModalImage, Button } from '@utilitywarehouse/hearth-react-native';
|
|
300
311
|
|
|
301
312
|
const ImageModal = () => {
|
|
@@ -324,9 +335,34 @@ const ImageModal = () => {
|
|
|
324
335
|
|
|
325
336
|
Create a modal that takes up the full screen height:
|
|
326
337
|
|
|
327
|
-
|
|
338
|
+
```tsx
|
|
339
|
+
// Example usage
|
|
340
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 800 } : { flex: 1 }}>
|
|
341
|
+
<ViewWrap>
|
|
342
|
+
<Button onPress={openModal}>Open Fullscreen Modal</Button>
|
|
343
|
+
|
|
344
|
+
<Modal
|
|
345
|
+
ref={modalRef}
|
|
346
|
+
heading="Fullscreen Modal Heading"
|
|
347
|
+
description="This is a fullscreen modal description"
|
|
348
|
+
onPressCloseButton={closeModal}
|
|
349
|
+
primaryButtonText="Primary"
|
|
350
|
+
onPressPrimaryButton={closeModal}
|
|
351
|
+
secondaryButtonText="Cancel"
|
|
352
|
+
onPressSecondaryButton={closeModal}
|
|
353
|
+
fullscreen
|
|
354
|
+
>
|
|
355
|
+
<Box gap="200">
|
|
356
|
+
<BodyText>This is a fullscreen modal with content.</BodyText>
|
|
357
|
+
<BodyText>You can swipe it up and down to close.</BodyText>
|
|
358
|
+
</Box>
|
|
359
|
+
</Modal>
|
|
360
|
+
</ViewWrap>
|
|
361
|
+
</View>
|
|
362
|
+
```
|
|
328
363
|
|
|
329
364
|
```tsx
|
|
365
|
+
// Example usage
|
|
330
366
|
const FullscreenModal = () => {
|
|
331
367
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
332
368
|
|
|
@@ -351,9 +387,22 @@ const FullscreenModal = () => {
|
|
|
351
387
|
|
|
352
388
|
Add custom content between the header and footer sections:
|
|
353
389
|
|
|
354
|
-
|
|
390
|
+
```tsx
|
|
391
|
+
// Example usage
|
|
392
|
+
<Modal
|
|
393
|
+
heading="Modal Heading"
|
|
394
|
+
description="This is a modal description"
|
|
395
|
+
showCloseButton
|
|
396
|
+
primaryButtonText="Primary"
|
|
397
|
+
secondaryButtonText="Cancel"
|
|
398
|
+
onPressCloseButton={() => null}
|
|
399
|
+
onPressPrimaryButton={() => null}
|
|
400
|
+
onPressSecondaryButton={() => null}
|
|
401
|
+
/>
|
|
402
|
+
```
|
|
355
403
|
|
|
356
404
|
```tsx
|
|
405
|
+
// Example usage
|
|
357
406
|
const CustomContentModal = () => {
|
|
358
407
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
359
408
|
|
|
@@ -381,13 +430,43 @@ const CustomContentModal = () => {
|
|
|
381
430
|
};
|
|
382
431
|
```
|
|
383
432
|
|
|
433
|
+
### JSX Description
|
|
434
|
+
|
|
435
|
+
`description` accepts a string for the default text styling, or JSX when you need custom content such as a link:
|
|
436
|
+
|
|
437
|
+
```tsx
|
|
438
|
+
// Example usage
|
|
439
|
+
<Modal
|
|
440
|
+
ref={modalRef}
|
|
441
|
+
heading="Update available"
|
|
442
|
+
description={
|
|
443
|
+
<BodyText>
|
|
444
|
+
Read the <InlineLink onPress={() => {}}>release notes</InlineLink> before updating.
|
|
445
|
+
</BodyText>
|
|
446
|
+
}
|
|
447
|
+
/>
|
|
448
|
+
```
|
|
449
|
+
|
|
384
450
|
### Sticky Custom Footer
|
|
385
451
|
|
|
386
452
|
Replace the built-in buttons with a custom sticky footer when you need custom layouts or button arrangements:
|
|
387
453
|
|
|
388
|
-
|
|
454
|
+
```tsx
|
|
455
|
+
// Example usage
|
|
456
|
+
<Modal
|
|
457
|
+
heading="Modal Heading"
|
|
458
|
+
description="This is a modal description"
|
|
459
|
+
showCloseButton
|
|
460
|
+
primaryButtonText="Primary"
|
|
461
|
+
secondaryButtonText="Cancel"
|
|
462
|
+
onPressCloseButton={() => null}
|
|
463
|
+
onPressPrimaryButton={() => null}
|
|
464
|
+
onPressSecondaryButton={() => null}
|
|
465
|
+
/>
|
|
466
|
+
```
|
|
389
467
|
|
|
390
468
|
```tsx
|
|
469
|
+
// Example usage
|
|
391
470
|
const StickyCustomFooterModal = () => {
|
|
392
471
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
393
472
|
|
|
@@ -431,9 +510,22 @@ const StickyCustomFooterModal = () => {
|
|
|
431
510
|
|
|
432
511
|
Show a loading spinner while processing:
|
|
433
512
|
|
|
434
|
-
|
|
513
|
+
```tsx
|
|
514
|
+
// Example usage
|
|
515
|
+
<Modal
|
|
516
|
+
heading="Modal Heading"
|
|
517
|
+
description="This is a modal description"
|
|
518
|
+
showCloseButton
|
|
519
|
+
primaryButtonText="Primary"
|
|
520
|
+
secondaryButtonText="Cancel"
|
|
521
|
+
onPressCloseButton={() => null}
|
|
522
|
+
onPressPrimaryButton={() => null}
|
|
523
|
+
onPressSecondaryButton={() => null}
|
|
524
|
+
/>
|
|
525
|
+
```
|
|
435
526
|
|
|
436
527
|
```tsx
|
|
528
|
+
// Example usage
|
|
437
529
|
const LoadingModal = () => {
|
|
438
530
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
439
531
|
const [isLoading, setIsLoading] = useState(false);
|
|
@@ -469,6 +561,7 @@ const LoadingModal = () => {
|
|
|
469
561
|
Remove the close button for critical actions:
|
|
470
562
|
|
|
471
563
|
```tsx
|
|
564
|
+
// Example usage
|
|
472
565
|
const CriticalModal = () => {
|
|
473
566
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
474
567
|
|
|
@@ -496,6 +589,7 @@ const CriticalModal = () => {
|
|
|
496
589
|
Create a modal with only one action button:
|
|
497
590
|
|
|
498
591
|
```tsx
|
|
592
|
+
// Example usage
|
|
499
593
|
const AlertModal = () => {
|
|
500
594
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
501
595
|
|
|
@@ -517,7 +611,7 @@ const AlertModal = () => {
|
|
|
517
611
|
|
|
518
612
|
### Navigation Modals
|
|
519
613
|
|
|
520
|
-
For React Navigation modal screens, use
|
|
614
|
+
For React Navigation modal screens, use `NavModal`. It contains the extracted screen-based modal layout, background variants, scrollable content handling, and the Android `triggerCloseAnimation()` ref used during navigation dismissal.
|
|
521
615
|
|
|
522
616
|
### Close handlers and state management
|
|
523
617
|
|
|
@@ -529,6 +623,7 @@ The Modal component provides multiple ways to handle closing the modal and manag
|
|
|
529
623
|
- Use the `onChange` prop to detect when the modal is opened or closed based on the index parameter (0 for open, -1 for closed) and manage state accordingly.
|
|
530
624
|
|
|
531
625
|
```tsx
|
|
626
|
+
// Example usage
|
|
532
627
|
const MyModal = () => {
|
|
533
628
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
534
629
|
const [isSubmitting, setIsSubmitting] = useState(false);
|
|
@@ -566,13 +661,12 @@ const MyModal = () => {
|
|
|
566
661
|
};
|
|
567
662
|
```
|
|
568
663
|
|
|
569
|
-
## Integration Notes
|
|
570
|
-
|
|
571
664
|
### BottomSheetModalProvider
|
|
572
665
|
|
|
573
666
|
When using the Modal component, ensure your app is wrapped with `BottomSheetModalProvider`:
|
|
574
667
|
|
|
575
668
|
```tsx
|
|
669
|
+
// Example usage
|
|
576
670
|
import { BottomSheetModalProvider } from '@utilitywarehouse/hearth-react-native';
|
|
577
671
|
|
|
578
672
|
const App = () => {
|
|
@@ -583,6 +677,7 @@ const App = () => {
|
|
|
583
677
|
If your app already handles safe-area padding around modal content, you can disable Hearth's bottom-sheet safe-area spacing:
|
|
584
678
|
|
|
585
679
|
```tsx
|
|
680
|
+
// Example usage
|
|
586
681
|
import { BottomSheetModalProvider } from '@utilitywarehouse/hearth-react-native';
|
|
587
682
|
|
|
588
683
|
const App = () => {
|
|
@@ -605,6 +700,7 @@ The Modal component forwards its ref to the underlying `BottomSheetModal`, givin
|
|
|
605
700
|
- `snapToPosition(position)` - Snap to a specific position
|
|
606
701
|
|
|
607
702
|
```tsx
|
|
703
|
+
// Example usage
|
|
608
704
|
const modalRef = useRef<BottomSheetModal>(null);
|
|
609
705
|
|
|
610
706
|
// Open modal
|
|
@@ -620,5 +716,5 @@ modalRef.current?.snapToIndex(1);
|
|
|
620
716
|
## External Resources
|
|
621
717
|
|
|
622
718
|
This component is built on top of [@gorhom/bottom-sheet](https://gorhom.github.io/react-native-bottom-sheet/) (v5). For more information about the
|
|
623
|
-
underlying BottomSheet functionality, please refer to the
|
|
719
|
+
underlying BottomSheet functionality, please refer to the BottomSheet documentation and
|
|
624
720
|
the [official documentation](https://gorhom.dev/react-native-bottom-sheet/).
|
|
@@ -1,22 +1,8 @@
|
|
|
1
|
-
import { Canvas, Controls, Meta } from '@storybook/addon-docs/blocks';
|
|
2
|
-
import { BodyText, Button, Flex } from '../../';
|
|
3
|
-
import StorybookLink from '../../../../../shared/storybook/StorybookLink';
|
|
4
|
-
import modalAndroidVideo from '../../../docs/assets/modal-android.mp4';
|
|
5
|
-
import modaliOSVideo from '../../../docs/assets/modal-ios.mp4';
|
|
6
|
-
import { BackToTopButton, ViewFigmaButton } from '../../../docs/components';
|
|
7
|
-
import * as Stories from './NavModal.stories';
|
|
8
|
-
|
|
9
|
-
<Meta title="Components / Nav Modal" />
|
|
10
|
-
|
|
11
|
-
<ViewFigmaButton url="https://www.figma.com/design/dLI9bmyMr42LV7dtFeW27J/Hearth-Patterns---Guides?node-id=6314-9103&t=oq3NaPLaAu3di6Db-4" />
|
|
12
|
-
|
|
13
|
-
<BackToTopButton />
|
|
14
|
-
|
|
15
1
|
# Nav Modal
|
|
16
2
|
|
|
17
3
|
The `NavModal` component is the screen-based modal layout for navigation flows. Use it when a screen is already being presented by React Navigation with `presentation: 'modal'` or `presentation: 'fullScreenModal'` and you want Hearth's modal structure, actions, and Android close animation support.
|
|
18
4
|
|
|
19
|
-
If you need a bottom-sheet modal that you present with a ref, use
|
|
5
|
+
If you need a bottom-sheet modal that you present with a ref, use `Modal` instead.
|
|
20
6
|
|
|
21
7
|
- [Playground](#playground)
|
|
22
8
|
- [Usage](#usage)
|
|
@@ -27,13 +13,22 @@ If you need a bottom-sheet modal that you present with a ref, use <StorybookLink
|
|
|
27
13
|
|
|
28
14
|
## Playground
|
|
29
15
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<
|
|
16
|
+
```tsx
|
|
17
|
+
// Example usage
|
|
18
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 720 } : { flex: 1 }}>
|
|
19
|
+
<NavModal {...args}>
|
|
20
|
+
<Box gap="200">
|
|
21
|
+
<BodyText>This is a navigation modal with content.</BodyText>
|
|
22
|
+
<BodyText>Use it for React Navigation modal screens instead of bottom sheets.</BodyText>
|
|
23
|
+
</Box>
|
|
24
|
+
</NavModal>
|
|
25
|
+
</View>
|
|
26
|
+
```
|
|
33
27
|
|
|
34
28
|
## Usage
|
|
35
29
|
|
|
36
30
|
```tsx
|
|
31
|
+
// Example usage
|
|
37
32
|
import { useNavigation } from '@react-navigation/native';
|
|
38
33
|
import type { NavigationAction } from '@react-navigation/native';
|
|
39
34
|
import { useCallback, useEffect, useRef } from 'react';
|
|
@@ -139,7 +134,7 @@ const styles = StyleSheet.create({
|
|
|
139
134
|
| Property | Type | Description | Default |
|
|
140
135
|
| ------------------------ | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------- |
|
|
141
136
|
| `heading` | `string` | Heading text shown at the top of the modal when no `image` is provided. | - |
|
|
142
|
-
| `description` | `
|
|
137
|
+
| `description` | `ReactNode` | Supporting text shown below the heading when no `image` is provided. Pass a string for the default styling, or JSX for custom content. | - |
|
|
143
138
|
| `showCloseButton` | `boolean` | Whether to render the close button in the top-right corner. | `true` |
|
|
144
139
|
| `primaryButtonText` | `string` | Label for the primary action button. | - |
|
|
145
140
|
| `secondaryButtonText` | `string` | Label for the secondary action button. | - |
|
|
@@ -171,23 +166,68 @@ When `footer` is provided, the primary and secondary button props are not availa
|
|
|
171
166
|
|
|
172
167
|
## Examples
|
|
173
168
|
|
|
174
|
-
| ios
|
|
175
|
-
|
|
|
176
|
-
|
|
|
169
|
+
| ios | android |
|
|
170
|
+
| --- | ------- |
|
|
171
|
+
| | |
|
|
177
172
|
|
|
178
173
|
### Brand Background
|
|
179
174
|
|
|
180
|
-
|
|
175
|
+
```tsx
|
|
176
|
+
// Example usage
|
|
177
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 720 } : { flex: 1 }}>
|
|
178
|
+
<NavModal {...args}>
|
|
179
|
+
<Box gap="200">
|
|
180
|
+
<BodyText inverted>Brand background content stays readable with inverted text.</BodyText>
|
|
181
|
+
<BodyText inverted>Buttons and the close icon also invert automatically.</BodyText>
|
|
182
|
+
</Box>
|
|
183
|
+
</NavModal>
|
|
184
|
+
</View>
|
|
185
|
+
```
|
|
181
186
|
|
|
182
187
|
### Full-Screen Presentation
|
|
183
188
|
|
|
184
|
-
|
|
189
|
+
```tsx
|
|
190
|
+
// Example usage
|
|
191
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 720 } : { flex: 1 }}>
|
|
192
|
+
<NavModal {...args}>
|
|
193
|
+
<Box gap="200">
|
|
194
|
+
<BodyText>This uses the full-screen navigation modal presentation.</BodyText>
|
|
195
|
+
<BodyText>The content switches away from the sheet-style card treatment.</BodyText>
|
|
196
|
+
</Box>
|
|
197
|
+
</NavModal>
|
|
198
|
+
</View>
|
|
199
|
+
```
|
|
185
200
|
|
|
186
201
|
### Sticky Custom Footer
|
|
187
202
|
|
|
188
|
-
|
|
203
|
+
```tsx
|
|
204
|
+
// Example usage
|
|
205
|
+
<View style={Platform.OS === 'web' ? { width: 400, height: 720 } : { flex: 1 }}>
|
|
206
|
+
<NavModal
|
|
207
|
+
heading="Confirm changes"
|
|
208
|
+
description="This example replaces the default buttons with a custom sticky footer."
|
|
209
|
+
footer={
|
|
210
|
+
<Flex direction="row" spacing="md">
|
|
211
|
+
<Button variant="outline" colorScheme="functional" style={{ flex: 1 }}>
|
|
212
|
+
Back
|
|
213
|
+
</Button>
|
|
214
|
+
<Button style={{ flex: 1 }}>Continue</Button>
|
|
215
|
+
</Flex>
|
|
216
|
+
}
|
|
217
|
+
footerStyle={{
|
|
218
|
+
boxShadow: '0px -6px 12px rgba(16, 24, 40, 0.12)',
|
|
219
|
+
}}
|
|
220
|
+
>
|
|
221
|
+
<Box gap="200">
|
|
222
|
+
<BodyText>This sticky footer stays pinned while the body content scrolls.</BodyText>
|
|
223
|
+
<BodyText>Use the footer prop when you need custom layouts or custom buttons.</BodyText>
|
|
224
|
+
</Box>
|
|
225
|
+
</NavModal>
|
|
226
|
+
</View>
|
|
227
|
+
```
|
|
189
228
|
|
|
190
229
|
```tsx
|
|
230
|
+
// Example usage
|
|
191
231
|
<NavModal
|
|
192
232
|
heading="Confirm changes"
|
|
193
233
|
description="Use a custom sticky footer when your actions need a custom layout."
|
|
@@ -206,3 +246,19 @@ When `footer` is provided, the primary and secondary button props are not availa
|
|
|
206
246
|
<BodyText>This sticky footer stays pinned while the content scrolls.</BodyText>
|
|
207
247
|
</NavModal>
|
|
208
248
|
```
|
|
249
|
+
|
|
250
|
+
### JSX Description
|
|
251
|
+
|
|
252
|
+
`description` accepts a string for the default text styling, or JSX when you need custom content such as a link.
|
|
253
|
+
|
|
254
|
+
```tsx
|
|
255
|
+
// Example usage
|
|
256
|
+
<NavModal
|
|
257
|
+
heading="Update available"
|
|
258
|
+
description={
|
|
259
|
+
<BodyText>
|
|
260
|
+
Read the <InlineLink onPress={() => {}}>release notes</InlineLink> before updating.
|
|
261
|
+
</BodyText>
|
|
262
|
+
}
|
|
263
|
+
/>
|
|
264
|
+
```
|