@ornikar/kitt-universal 16.4.1 → 16.4.2
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/definitions/Picker/Picker.web.d.ts.map +1 -1
- package/dist/definitions/Picker/PickerOption.d.ts +8 -3
- package/dist/definitions/Picker/PickerOption.d.ts.map +1 -1
- package/dist/definitions/native-base/KittNativeBaseProvider.d.ts +29 -1
- package/dist/definitions/native-base/KittNativeBaseProvider.d.ts.map +1 -1
- package/dist/index-browser-all.es.android.js +98 -80
- package/dist/index-browser-all.es.android.js.map +1 -1
- package/dist/index-browser-all.es.ios.js +98 -80
- package/dist/index-browser-all.es.ios.js.map +1 -1
- package/dist/index-browser-all.es.js +98 -80
- package/dist/index-browser-all.es.js.map +1 -1
- package/dist/index-browser-all.es.web.js +161 -115
- package/dist/index-browser-all.es.web.js.map +1 -1
- package/dist/index-node-14.17.cjs.js +21 -2
- package/dist/index-node-14.17.cjs.js.map +1 -1
- package/dist/index-node-14.17.cjs.web.css +4 -0
- package/dist/index-node-14.17.cjs.web.js +88 -39
- package/dist/index-node-14.17.cjs.web.js.map +1 -1
- package/dist/styles.css +4 -0
- package/dist/tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-browser-all.es.web.js","sources":["../src/native-base/primitives.ts","../src/utils/hexToRgba.ts","../src/themes/palettes/lateOceanColorPalette.ts","../src/themes/late-ocean/colors.ts","../src/themes/late-ocean/actionCard.ts","../src/themes/late-ocean/avatar.ts","../src/themes/late-ocean/spacing.ts","../src/themes/late-ocean/bottomSheet.ts","../src/themes/late-ocean/button.ts","../src/themes/late-ocean/card.ts","../src/themes/late-ocean/cardModal.ts","../src/themes/late-ocean/choices.ts","../src/themes/late-ocean/dialogModal.ts","../src/themes/late-ocean/feedback.ts","../src/themes/late-ocean/autocomplete.ts","../src/themes/late-ocean/checkbox.ts","../src/themes/late-ocean/datePicker.ts","../src/themes/late-ocean/typography.ts","../src/themes/late-ocean/input.ts","../src/themes/late-ocean/inputField.ts","../src/themes/late-ocean/inputTag.ts","../src/themes/late-ocean/radio.ts","../src/themes/late-ocean/radioButtonGroup.ts","../src/themes/late-ocean/textArea.ts","../src/themes/late-ocean/timePicker.ts","../src/themes/late-ocean/forms.ts","../src/themes/late-ocean/fullscreenModal.ts","../src/themes/late-ocean/highlight.ts","../src/themes/late-ocean/iconButton.ts","../src/themes/late-ocean/listItem.ts","../src/themes/late-ocean/pageLoader.ts","../src/themes/late-ocean/picker.ts","../src/themes/late-ocean/shadows.ts","../src/themes/late-ocean/skeleton.ts","../src/themes/late-ocean/tag.ts","../src/themes/late-ocean/tooltip.ts","../src/themes/late-ocean/verticalSteps.ts","../src/themes/default.ts","../src/KittThemeContext.tsx","../src/ActionCard/utils/getStateKey.ts","../src/ActionCard/utils/getThemeName.ts","../src/ActionCard/ActionCardContentWrapper.tsx","../src/ActionCard/ActionCardDisabled.tsx","../src/ActionCard/ActionCard.tsx","../src/native-base/layout.ts","../src/utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp.ts","../src/utils/warnings.ts","../src/native-base/utils.ts","../src/Button/utils/getCurrentBackgroundColorForNativeBaseTheme.ts","../src/Button/utils/getCurrentScale.ts","../src/Button/AnimatedContainer.web.tsx","../src/KittBreakpoints.ts","../src/typography/typographyColors.ts","../src/typography/utils/getNBThemeColorFromColorProps.ts","../src/typography/utils/getTypographyColorValue.ts","../src/typography/utils/isTypeHeader.ts","../src/typography/utils/isTypographyHeader.ts","../src/typography/Typography.tsx","../src/Icon/Icon.tsx","../src/typography/TypographyIcon.tsx","../src/Button/utils/getTextColorByType.ts","../src/Button/ButtonContent.tsx","../src/Button/ButtonPadding.tsx","../src/Button/DisabledBorder.tsx","../src/Button/FocusBorder.tsx","../src/Button/hooks/useNativeAnimation.web.ts","../src/Button/utils/getButtonSize.ts","../src/Button/Button.tsx","../src/Icon/SpinningIcon.web.tsx","../src/LoaderIcon/LoaderIcon.tsx","../src/Actions/ActionsItem.tsx","../src/Actions/ActionsButton.tsx","../src/Actions/Actions.tsx","../src/Avatar/utils/getCurrentRadius.ts","../src/Avatar/utils/getCurrentSize.ts","../src/Avatar/utils/getIconSize.ts","../src/Avatar/utils/getInitials.ts","../src/Avatar/Avatar.tsx","../src/BottomSheet/BottomSheet.web.tsx","../src/BottomSheet/useBottomSheet.ts","../src/BottomSheet/useStaticBottomSheet.tsx","../src/ModalBehaviour/ModalBehaviourPortal.web.tsx","../src/ModalBehaviour/OnCloseContext.tsx","../src/ModalBehaviour/ModalBehaviour.tsx","../src/Overlay/Overlay.tsx","../src/CardModal/CardModalAnimation/CardModalRotationContainer.tsx","../src/CardModal/CardModalAnimation/CardModalAnimation.web.tsx","../src/CardModal/CardModalBehaviour.tsx","../src/CardModal/CardModalBody.tsx","../src/CardModal/CardModalFooter.tsx","../src/CardModal/CardModalHeader.tsx","../src/CardModal/CardModal.tsx","../src/Choices/utils/getBackgroundColor.ts","../src/Choices/utils/getBorderRadius.ts","../src/Choices/AnimatedChoiceItemView.web.tsx","../src/Choices/hooks/useNativeAnimation.web.tsx","../src/Choices/utils/getCurrentTextColor.ts","../src/Choices/ChoiceItem.tsx","../src/Choices/ChoiceItemContainer.tsx","../src/Choices/Choices.tsx","../src/DialogModal/DialogModalAnimation/DialogModalAnimation.web.tsx","../src/DialogModal/DialogModalBehaviour.tsx","../src/DialogModal/DialogModal.tsx","../src/Emoji/Emoji.tsx","../src/ExternalAppLink/ExternalAppLink.tsx","../src/ExternalLink/ExternalLinkOpenLinkBehavior.ts","../src/ExternalLink/ExternalLink.web.tsx","../src/forms/InputIcon/InputIcon.tsx","../src/forms/InputPressable/InputPressable.tsx","../src/forms/InputText/InputTextContainer.web.tsx","../src/forms/InputText/InputText.tsx","../src/forms/Autocomplete/AutocompleteItem.tsx","../src/forms/Autocomplete/AutocompleteItemsListContainer.tsx","../src/forms/Autocomplete/AutocompleteOption.tsx","../src/forms/Autocomplete/Autocomplete.tsx","../src/forms/Checkbox/utils/getBackgroundColor.ts","../src/forms/Checkbox/utils/getBorderColor.ts","../src/forms/Checkbox/Checkbox.tsx","../src/utils/getReturnKeyTypeForNumericInput/getReturnKeyTypeForNumericInput.ts","../src/forms/DatePicker/utils/dateFormatter.ts","../src/forms/DatePicker/utils/datePartInInterval.ts","../src/forms/DatePicker/reducers/keyboardDatePickerReducer.ts","../src/forms/DatePicker/utils/isNumber.ts","../src/forms/DatePicker/utils/onDatePartChange.ts","../src/forms/DatePicker/utils/stringToNumber.ts","../src/forms/DatePicker/components/InputPart.tsx","../src/forms/DatePicker/components/PartContainer.tsx","../src/forms/DatePicker/components/KeyboardDatePicker.tsx","../src/forms/DatePicker/DatePicker.web.tsx","../src/GoogleMapsApiKeyProvider/GoogleMapsApiKeyProvider.tsx","../src/GoogleMapsApiKeyProvider/hooks/useGoogleMapApiKey.ts","../src/GoogleMapsAutocompleteProvider/hooks/useGoogleMapsApi.web.ts","../src/GoogleMapsAutocompleteProvider/reducer/googleMapsAutocompleteReducer.ts","../src/GoogleMapsAutocompleteProvider/utils/formatAddressFromGoogle.ts","../src/GoogleMapsAutocompleteProvider/GoogleMapsAutocompleteProvider.tsx","../src/GoogleMapsAutocompleteProvider/hooks/useGoogleMapsAutocomplete.ts","../src/forms/InputAddress/InputAddressOption.tsx","../src/forms/InputAddress/utils/defaultItemToString.ts","../src/forms/InputAddress/utils/formatInitialValueToAutocompletePrediction.ts","../src/forms/InputAddress/InputAddress.tsx","../src/forms/InputEmail/InputEmail.tsx","../src/forms/InputFeedback/InputFeedback.tsx","../src/forms/InputField/InputField.tsx","../src/forms/InputPassword/InputPassword.tsx","../src/forms/InputPhone/InputPhone.tsx","../src/forms/InputTag/InputTag.tsx","../src/forms/Label/Label.tsx","../src/forms/Radio/InnerCircle.tsx","../src/forms/Radio/utils/getBackgroundColor.ts","../src/forms/Radio/utils/getBorderColor.ts","../src/forms/Radio/OuterCircle.tsx","../src/forms/Radio/Radio.tsx","../src/forms/RadioButtonGroup/utils/getCurrentBackgroundColor.ts","../src/forms/RadioButtonGroup/utils/getCurrentBorderColor.ts","../src/forms/RadioButtonGroup/AnimatedContainer/AnimatedContainer.web.tsx","../src/forms/RadioButtonGroup/HoverBorder.tsx","../src/forms/RadioButtonGroup/hooks/useNativeAnimation.web.ts","../src/forms/RadioButtonGroup/utils/getCurrentTextColor.ts","../src/forms/RadioButtonGroup/RadioButton.tsx","../src/forms/RadioButtonGroup/RadioButtonGroup.tsx","../src/forms/TextArea/TextArea.tsx","../src/FullscreenModal/Body.tsx","../src/FullscreenModal/Footer.tsx","../src/FullscreenModal/FullscreenModalAnimation.web.tsx","../src/FullscreenModal/FullscreenModalBehaviour.tsx","../src/FullscreenModal/FullscreenModalContainer.tsx","../src/FullscreenModal/Header.tsx","../src/FullscreenModal/FullscreenModal.tsx","../src/Highlight/Highlight.tsx","../src/IconButton/Background.tsx","../src/IconButton/AnimatedBackground.web.tsx","../src/IconButton/AnimatedScale.web.tsx","../src/IconButton/hooks/useNativeAnimation.web.ts","../src/IconButton/IconButton.tsx","../src/KittMapConfigProvider/KittMapConfigProvider.tsx","../src/KittMapConfigProvider/hooks/useKittMapConfig.ts","../src/ListItem/ListItemContent.tsx","../src/ListItem/ListItemSideContent.tsx","../src/ListItem/ListItem.tsx","../src/MapMarker/assets/marker-large.inline.svg","../src/MapMarker/assets/marker.inline.svg","../src/MapMarker/assets/position-marker.inline.svg","../src/MapMarker/MapMarker.tsx","../src/BaseMessage/IconContent.tsx","../src/BaseMessage/helper.ts","../src/BaseMessage/BaseMessage.tsx","../src/Message/Message.tsx","../src/native-base/KittNativeBaseProvider.tsx","../src/NavigationModal/NavigationModalBehaviour.tsx","../src/NavigationModal/NavigationModal.tsx","../src/Notification/Notification.tsx","../src/PageLoader/PageLoader.web.tsx","../src/Picker/PickerItem.web.tsx","../src/Picker/PickerOption.tsx","../src/Picker/reducer/webUseSelectReducer.ts","../src/Picker/Picker.web.tsx","../src/SegmentedProgressBar/assets/stripes.inline.svg","../src/SegmentedProgressBar/SegmentedProgressBar.tsx","../src/Skeleton/SkeletonContent.web.tsx","../src/Skeleton/Skeleton.tsx","../src/StaticMap/utils/getStaticMapImageUrl.ts","../src/StaticMap/hooks/useGetStaticMapImageUrl.ts","../src/StaticMap/StaticMapError.tsx","../src/StaticMap/StaticMapImage.tsx","../src/StaticMap/StaticMapLoader.tsx","../src/StaticMap/StaticMapMarker.tsx","../src/StaticMap/utils/getRangedWidthValue.ts","../src/StaticMap/utils/getShouldDisplay2x.web.ts","../src/StaticMap/StaticMap.tsx","../src/story-components/Flex.tsx","../src/story-components/theme.ts","../src/story-components/StoryBlock.tsx","../src/story-components/StoryTitle.tsx","../src/story-components/Story.tsx","../src/story-components/StorySection.tsx","../src/story-components/StoryContainer.web.tsx","../src/story-components/StoryDecorator.tsx","../src/story-components/StoryGrid.tsx","../src/Tag/Tag.tsx","../src/TimePicker/TimePicker.web.tsx","../src/Tooltip/Arrow.tsx","../src/Tooltip/TooltipContent.tsx","../src/Tooltip/hooks/useShouldRenderArrow.ts","../src/Tooltip/utils/getHasArrowEnoughSpace.ts","../src/Tooltip/Tooltip.web.tsx","../src/typography/TypographyEmoji.tsx","../src/typography/TypographyLinkWebWrapper.web.tsx","../src/typography/TypographyLink.tsx","../src/useKittTheme.tsx","../src/utils/storybook/KittThemeDecorator.tsx","../src/utils/StyleWebWrapper.tsx","../src/utils/windowSize/useMatchWindowSize.ts","../src/utils/windowSize/MatchWindowSize.tsx","../src/utils/windowSize/useCurrentBreakpointName.ts","../src/VerticalSteps/StepIcon.tsx","../src/VerticalSteps/Step.tsx","../src/VerticalSteps/utils/getStepState.ts","../src/VerticalSteps/VerticalSteps.tsx"],"sourcesContent":["import type { IImageProps, IPressableProps, IScrollViewProps } from 'native-base';\nimport {\n FlatList as NativeBaseFlatList,\n Image as NativeBaseImage,\n Pressable as NativeBasePressable,\n ScrollView as NativeBaseScrollView,\n SectionList as NativeBaseSectionList,\n View as NativeBaseView,\n} from 'native-base';\nimport type {\n IFlatListProps,\n InterfaceFlatListProps,\n} from 'native-base/lib/typescript/components/basic/FlatList/types';\nimport type { InterfaceScrollViewProps } from 'native-base/lib/typescript/components/basic/ScrollView/types';\nimport type {\n ISectionListProps,\n InterfaceSectionListProps,\n} from 'native-base/lib/typescript/components/basic/SectionList/types';\nimport type { IViewProps, InterfaceViewProps } from 'native-base/lib/typescript/components/basic/View/types';\nimport type { InterfacePressableProps } from 'native-base/lib/typescript/components/primitives/Pressable/types';\nimport type { ForwardedRef, MutableRefObject } from 'react';\nimport type {\n FlatList as NativeFlatList,\n FlatListProps as NativeFlatListProps,\n PressableProps as NativePressableProps,\n ScrollViewProps as NativeScrollViewProps,\n SectionList as NativeSectionList,\n SectionListProps as NativeSectionListProps,\n ViewProps as NativeViewProps,\n} from 'react-native';\nimport type {\n ForwardRefComponent,\n NativeBaseAcceptedBorderProps,\n NativeBaseAcceptedBorderRadiusProps,\n NativeBaseAcceptedColorsProps,\n NativeBaseAcceptedFlexboxProps,\n NativeBaseAcceptedLayoutProps,\n NativeBaseAcceptedPositionProps,\n NativeBaseAcceptedShadowProps,\n NativeBaseAcceptedSpaceProps,\n} from './acceptable-native-base-props';\n\ntype NativeBaseAcceptedViewProps = Extract<keyof InterfaceViewProps, 'children' | keyof NativeViewProps>;\n\nexport interface ViewProps\n extends Pick<\n IViewProps,\n | NativeBaseAcceptedViewProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const View = NativeBaseView as ForwardRefComponent<ViewProps>;\n\ntype NativeBaseAcceptedScrollViewProps = Extract<\n keyof InterfaceScrollViewProps,\n 'children' | '_contentContainerStyle' | keyof NativeScrollViewProps\n>;\nexport interface ScrollViewProps\n extends Pick<\n IScrollViewProps,\n | NativeBaseAcceptedScrollViewProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const ScrollView = NativeBaseScrollView as ForwardRefComponent<ScrollViewProps>;\n\ntype NativeBaseAcceptedPressableProps = Extract<\n keyof InterfacePressableProps,\n | 'children'\n | 'onHoverIn'\n | 'onHoverOut'\n | 'onFocus'\n | 'onBlur'\n | '_hover'\n | '_pressed'\n | '_focus'\n | '_disabled'\n | 'isDisabled'\n | 'isHovered'\n | 'isPressed'\n | 'isFocused'\n | 'isFocusVisible'\n | '_focusVisible'\n | keyof NativePressableProps\n>;\nexport interface PressableProps\n extends Pick<\n IPressableProps,\n | NativeBaseAcceptedPressableProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const Pressable = NativeBasePressable as ForwardRefComponent<PressableProps>;\n\nexport const Image = NativeBaseImage as ForwardRefComponent<IImageProps>;\n\ntype NativeBaseAcceptedFlatListProps<ItemT> = Extract<\n keyof InterfaceFlatListProps<ItemT>,\n 'ref' | '_contentContainerStyle' | keyof NativeFlatListProps<ItemT>\n>;\nexport interface FlatListProps<ItemT>\n extends Pick<\n IFlatListProps<ItemT>,\n | NativeBaseAcceptedFlatListProps<ItemT>\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\n// See: https://fettblog.eu/typescript-react-generic-forward-refs/\nexport const FlatList = NativeBaseFlatList as <ItemT>(\n props: FlatListProps<ItemT> & { ref?: MutableRefObject<NativeFlatList<ItemT> | undefined> },\n) => ReturnType<typeof NativeBaseFlatList>;\n\ntype NativeBaseAcceptedSectionListProps<ItemT, SectionT> = Extract<\n keyof InterfaceSectionListProps<ItemT, SectionT>,\n 'ref' | keyof NativeSectionListProps<ItemT, SectionT>\n>;\nexport interface SectionListProps<ItemT, SectionT>\n extends Pick<\n ISectionListProps<ItemT, SectionT>,\n | NativeBaseAcceptedSectionListProps<ItemT, SectionT>\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\n// See: https://fettblog.eu/typescript-react-generic-forward-refs/\nexport const SectionList = NativeBaseSectionList as <ItemT, SectionT>(\n props: SectionListProps<ItemT, SectionT> & { ref?: ForwardedRef<NativeSectionList<ItemT, SectionT> | undefined> },\n) => ReturnType<typeof NativeBaseSectionList>;\n","export const hex2rgba = (hex: string, alpha = 1): string => {\n const r = parseInt(hex.slice(1, 3), 16);\n const g = parseInt(hex.slice(3, 5), 16);\n const b = parseInt(hex.slice(5, 7), 16);\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n};\n","export const lateOceanColorPalette = {\n lateOcean: '#4C34E0',\n lateOceanLight1: '#705DE6',\n lateOceanLight2: '#9485EC',\n lateOceanLight3: '#D6BAF9',\n lateOceanDark1: '#291D94',\n\n warmEmbrace: '#F4D3CE',\n warmEmbraceLight1: '#FFEDE6',\n\n black1000: '#000000',\n black800: '#333333',\n black555: '#737373',\n black400: '#999999',\n black200: '#CCCCCC',\n black100: '#E5E5E5',\n black50: '#F2F2F2',\n black25: '#F9F9F9',\n white: '#FFFFFF',\n\n viride: '#38836D',\n englishVermillon: '#D44148',\n goldCrayola: '#F8C583',\n aero: '#89BDDD',\n seaShell: '#FFF9F3',\n\n transparent: 'transparent',\n\n moonPurple: '#DBD6F9',\n moonPurpleLight1: '#EDEBFC',\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\n\nexport const colors = {\n primary: lateOceanColorPalette.lateOcean,\n primaryLight: lateOceanColorPalette.lateOceanLight1,\n accent: lateOceanColorPalette.warmEmbrace,\n accentLight: lateOceanColorPalette.warmEmbraceLight1,\n success: lateOceanColorPalette.viride,\n correct: lateOceanColorPalette.viride,\n danger: lateOceanColorPalette.englishVermillon,\n info: lateOceanColorPalette.aero,\n warning: lateOceanColorPalette.goldCrayola,\n separator: lateOceanColorPalette.black100,\n hover: lateOceanColorPalette.black100,\n white: lateOceanColorPalette.white,\n black: lateOceanColorPalette.black1000,\n blackDisabled: lateOceanColorPalette.black400,\n blackLight: lateOceanColorPalette.black555,\n blackAnthracite: lateOceanColorPalette.black800,\n uiBackground: lateOceanColorPalette.black25,\n uiBackgroundLight: lateOceanColorPalette.white,\n transparent: lateOceanColorPalette.transparent,\n disabled: lateOceanColorPalette.black50,\n overlay: {\n dark: 'rgba(41, 48, 51, 0.25)',\n light: 'rgba(255, 255, 255, 0.90)',\n },\n};\n","import { hex2rgba } from '../../utils/hexToRgba';\nimport { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface ActionCardState {\n backgroundColor: string;\n borderColor?: string;\n borderWidth: number;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n translateY: number;\n}\n\nexport interface ActionCardVariant {\n default: ActionCardState;\n disabled: ActionCardState;\n hovered: ActionCardState;\n pressed: ActionCardState;\n focused: ActionCardState;\n}\n\nexport interface ActionCardTheme {\n borderRadius: number;\n primary: ActionCardVariant;\n 'primary-border-soft': ActionCardVariant;\n 'primary-border-hard': ActionCardVariant;\n secondary: ActionCardVariant;\n highlight: ActionCardVariant;\n}\n\nexport const actionCard: ActionCardTheme = {\n borderRadius: 20,\n primary: {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.black100,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.black100,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.black100,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n 'primary-border-soft': {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n 'primary-border-hard': {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.lateOcean,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.lateOcean,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.lateOcean,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n secondary: {\n default: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n },\n highlight: {\n default: {\n backgroundColor: lateOceanColorPalette.moonPurpleLight1,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: hex2rgba(lateOceanColorPalette.moonPurpleLight1, 0.6),\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: hex2rgba(lateOceanColorPalette.moonPurpleLight1, 0.6),\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: hex2rgba(lateOceanColorPalette.moonPurpleLight1, 0.6),\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport const defaultAvatarSize = 40;\nexport const defaultAvatarIconSize = 20;\n\nexport const largeAvatarSize = 120;\nexport const largeAvatarIconSize = 30;\n\nexport interface AvatarThemeColorVariant {\n backgroundColor: string;\n}\n\nexport interface AvatarThemeSizeVariant {\n borderRadius: number;\n size: number;\n iconSize: number;\n}\n\nexport interface AvatarTheme {\n borderRadius: number;\n size: number;\n iconSize: number;\n default: AvatarThemeColorVariant;\n light: AvatarThemeColorVariant;\n large: AvatarThemeSizeVariant;\n}\n\nexport const avatar: AvatarTheme = {\n borderRadius: 10,\n size: defaultAvatarSize,\n iconSize: defaultAvatarIconSize,\n default: {\n backgroundColor: colors.primary,\n },\n light: {\n backgroundColor: lateOceanColorPalette.black100,\n },\n large: {\n borderRadius: 30,\n size: largeAvatarSize,\n iconSize: largeAvatarIconSize,\n },\n};\n","export const spacing = 4;\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { spacing } from './spacing';\n\nexport interface BottomSheetTheme {\n container: {\n padding: number;\n };\n handle: {\n backgroundColor: string;\n };\n}\n\nexport const bottomSheet: BottomSheetTheme = {\n container: {\n padding: spacing * 4,\n },\n handle: {\n backgroundColor: lateOceanColorPalette.black200,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface BaseVariantTheme {\n backgroundColor: string;\n pressedBackgroundColor: string;\n hoverBackgroundColor: string;\n focusBorderColor: string;\n}\n\nexport interface GhostVariantTheme extends BaseVariantTheme {\n color: string;\n hoverColor: string;\n activeColor: string;\n}\nexport interface BaseButtonTheme {\n default: BaseVariantTheme;\n}\n\nexport interface BaseButtonWithVariant extends BaseButtonTheme {\n ghost: GhostVariantTheme;\n}\n\nexport interface SubtleBaseVariantTheme extends BaseVariantTheme {\n color: string;\n hoverColor: string;\n activeColor: string;\n}\n\nexport interface SubtleButtonTheme extends BaseButtonTheme {\n default: SubtleBaseVariantTheme;\n}\n\nexport interface DisabledBaseVariantTheme extends BaseVariantTheme {\n borderColor: string;\n}\n\nexport interface DisabledButtonTheme extends BaseButtonTheme {\n default: DisabledBaseVariantTheme;\n}\n\ninterface ButtonPadding {\n horizontal: number;\n vertical: number;\n}\n\nexport interface ButtonTheme {\n borderRadius: number;\n borderWidth: {\n disabled: number;\n focus: number;\n };\n minHeight: number;\n minWidth: number;\n maxWidth: number;\n scale: {\n base: {\n default: number;\n hover: number;\n active: number;\n };\n medium: {\n hover: number;\n };\n };\n /**\n * @deprecated use `padding` instead\n */\n contentPadding: {\n default: string;\n large: string;\n xLarge: string;\n disabled: string;\n };\n padding: {\n default: ButtonPadding;\n large: ButtonPadding;\n xLarge: ButtonPadding;\n disabled: ButtonPadding;\n };\n transition: {\n duration: string;\n timingFunction: string;\n };\n default: BaseButtonWithVariant;\n primary: BaseButtonWithVariant;\n danger: BaseButtonWithVariant;\n white: BaseButtonTheme;\n subtle: SubtleButtonTheme;\n 'subtle-dark': SubtleButtonTheme;\n disabled: DisabledButtonTheme;\n}\n\nexport const button: ButtonTheme = {\n borderRadius: 30,\n borderWidth: {\n disabled: 2,\n focus: 3,\n },\n minHeight: 40,\n minWidth: 40,\n maxWidth: 335,\n scale: {\n base: {\n default: 1,\n hover: 0.95,\n active: 0.95,\n },\n medium: {\n hover: 1.05,\n },\n },\n contentPadding: {\n default: '7px 16px 7px',\n large: '11px 24px 11px',\n xLarge: '15px 24px 15px',\n disabled: '5px 14px 5px',\n },\n padding: {\n default: {\n horizontal: 16,\n vertical: 7,\n },\n large: {\n horizontal: 24,\n vertical: 11,\n },\n xLarge: {\n horizontal: 24,\n vertical: 15,\n },\n disabled: {\n horizontal: 14,\n vertical: 5,\n },\n },\n transition: {\n duration: '200ms',\n timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n },\n default: {\n default: {\n backgroundColor: 'rgba(0, 0, 0, 0.05)',\n pressedBackgroundColor: 'rgba(0, 0, 0, 0.1)',\n hoverBackgroundColor: 'rgba(0, 0, 0, 0.1)',\n focusBorderColor: 'rgba(0, 0, 0, 0.1)',\n },\n ghost: {\n backgroundColor: 'rgba(255, 255, 255, 0.1)',\n pressedBackgroundColor: 'rgba(255, 255, 255, 0.05)',\n hoverBackgroundColor: 'rgba(255, 255, 255, 0.05)',\n focusBorderColor: 'rgba(255, 255, 255, 0.4)',\n color: lateOceanColorPalette.white,\n hoverColor: lateOceanColorPalette.white,\n activeColor: lateOceanColorPalette.white,\n },\n },\n primary: {\n default: {\n backgroundColor: colors.primary,\n pressedBackgroundColor: colors.primaryLight,\n hoverBackgroundColor: colors.primaryLight,\n focusBorderColor: 'rgba(76, 52, 224, 0.2)',\n },\n ghost: {\n backgroundColor: colors.uiBackgroundLight,\n pressedBackgroundColor: colors.uiBackground,\n hoverBackgroundColor: colors.hover,\n focusBorderColor: 'rgba(255,255,255, 0.4)',\n color: colors.primary,\n hoverColor: colors.hover,\n activeColor: colors.hover,\n },\n },\n white: {\n default: {\n backgroundColor: 'rgba(255, 255, 255, 0.05)',\n pressedBackgroundColor: 'rgba(255, 255, 255, 0.1)',\n hoverBackgroundColor: 'rgba(255, 255, 255, 0.1)',\n focusBorderColor: 'rgba(255, 255, 255, 0.1)',\n },\n },\n danger: {\n default: {\n backgroundColor: lateOceanColorPalette.warmEmbraceLight1,\n pressedBackgroundColor: lateOceanColorPalette.warmEmbrace,\n hoverBackgroundColor: lateOceanColorPalette.warmEmbrace,\n focusBorderColor: lateOceanColorPalette.warmEmbrace,\n },\n ghost: {\n backgroundColor: colors.uiBackgroundLight,\n pressedBackgroundColor: 'rgba(255, 255, 255, 0.75)',\n hoverBackgroundColor: 'rgba(255, 255, 255, 0.75)',\n focusBorderColor: 'rgba(255, 255, 255, 0.5)',\n color: lateOceanColorPalette.englishVermillon,\n hoverColor: lateOceanColorPalette.englishVermillon,\n activeColor: lateOceanColorPalette.englishVermillon,\n },\n },\n subtle: {\n default: {\n backgroundColor: colors.transparent,\n pressedBackgroundColor: colors.transparent,\n hoverBackgroundColor: colors.transparent,\n focusBorderColor: 'rgba(76, 52, 224, 0.2)',\n color: colors.primary,\n hoverColor: 'rgba(76, 52, 224, 0.8)',\n activeColor: 'rgba(76, 52, 224, 0.8)',\n },\n },\n 'subtle-dark': {\n default: {\n backgroundColor: colors.transparent,\n pressedBackgroundColor: colors.transparent,\n hoverBackgroundColor: colors.transparent,\n focusBorderColor: 'rgba(0, 0, 0, 0.1)',\n color: colors.black,\n hoverColor: 'rgba(0, 0, 0, 0.8)',\n activeColor: 'rgba(0, 0, 0, 0.8)',\n },\n },\n disabled: {\n default: {\n backgroundColor: colors.disabled,\n pressedBackgroundColor: colors.disabled,\n hoverBackgroundColor: colors.disabled,\n focusBorderColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.black100,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface CardThemeType {\n backgroundColor: string;\n borderColor: string;\n}\nexport interface CardTheme {\n borderRadius: number;\n borderWidth: number;\n primary: CardThemeType;\n secondary: CardThemeType;\n subtle: CardThemeType;\n}\n\nexport const card: CardTheme = {\n borderRadius: 20,\n borderWidth: 2,\n primary: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.primary,\n },\n secondary: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.separator,\n },\n subtle: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: colors.separator,\n },\n};\n","import { colors } from './colors';\n\nexport interface CardModalTheme {\n borderRadius: number;\n maxWidth: number;\n maxWidthWithPadding: number;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n header: {\n height: number;\n borderWidth: number;\n borderColor: string;\n };\n footer: {\n borderWidth: number;\n borderColor: string;\n };\n overlayPadding: {\n horizontal: number;\n vertical: number;\n };\n animation: {\n overlay: {\n duration: number;\n easing: number[];\n };\n content: {\n duration: number;\n easing: number[];\n };\n };\n}\n\nexport const webAnimationContentDuration = 400;\nexport const webAnimationContentEasing = [0.77, 0, 0.175, 1];\n\nexport const webAnimationOverlayDuration = 250;\nexport const webAnimationOverlayEasing = [0.42, 0, 1, 1];\n\nconst maxWidth = 540;\nconst overlayHorizontalPadding = 24;\n\nexport const cardModal: CardModalTheme = {\n borderRadius: 20,\n maxWidth,\n maxWidthWithPadding: maxWidth + overlayHorizontalPadding * 2,\n shadow: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n header: {\n height: 56,\n borderWidth: 1,\n borderColor: colors.separator,\n },\n footer: {\n borderWidth: 1,\n borderColor: colors.separator,\n },\n overlayPadding: {\n horizontal: 24,\n vertical: 32,\n },\n animation: {\n overlay: {\n duration: webAnimationOverlayDuration,\n easing: webAnimationOverlayEasing,\n },\n content: {\n duration: webAnimationContentDuration,\n easing: webAnimationContentEasing,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface ChoicesItemTheme {\n borderRadius: number;\n /** @deprecated use kitt.x spacings values instead */\n padding: {\n base: number;\n small: number;\n };\n backgroundColor: {\n default: string;\n disabled: string;\n selected: string;\n pressed: string;\n hover: string;\n hoverWhenSelected: string;\n };\n disabled: {\n border: {\n width: number;\n color: string;\n };\n };\n transition: {\n property: string;\n duration: number;\n timingFunction: string;\n };\n}\n\nexport interface ChoicesTheme {\n /** @deprecated use kitt.x spacings values instead */\n spacing: {\n row: number;\n column: number;\n };\n item: ChoicesItemTheme;\n}\n\nexport const choices: ChoicesTheme = {\n spacing: {\n row: 12,\n column: 12,\n },\n item: {\n borderRadius: 10,\n padding: {\n base: 16,\n small: 24,\n },\n backgroundColor: {\n default: lateOceanColorPalette.black50,\n disabled: colors.disabled,\n selected: colors.primary,\n pressed: lateOceanColorPalette.lateOceanLight1,\n hover: lateOceanColorPalette.black100,\n hoverWhenSelected: lateOceanColorPalette.lateOceanLight1,\n },\n disabled: {\n border: {\n width: 2,\n color: lateOceanColorPalette.black100,\n },\n },\n transition: {\n property: 'all',\n duration: 300,\n timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n },\n },\n};\n","import { colors } from './colors';\n\nexport interface DialogModalTheme {\n borderRadius: number;\n maxWidth: number;\n overlayPadding: {\n horizontal: number;\n vertical: number;\n };\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n animation: {\n overlay: {\n duration: number;\n easing: number[];\n };\n content: {\n duration: number;\n easing: number[];\n };\n };\n}\n\nexport const webAnimationContentDuration = 400;\nexport const webAnimationContentEasing = [0.77, 0, 0.175, 1];\n\nexport const webAnimationOverlayDuration = 250;\nexport const webAnimationOverlayEasing = [0.42, 0, 1, 1];\n\nexport const dialogModal: DialogModalTheme = {\n borderRadius: 20,\n maxWidth: 540,\n overlayPadding: {\n horizontal: 24,\n vertical: 32,\n },\n shadow: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n animation: {\n overlay: {\n duration: webAnimationOverlayDuration,\n easing: webAnimationOverlayEasing,\n },\n content: {\n duration: webAnimationContentDuration,\n easing: webAnimationContentEasing,\n },\n },\n};\n","import { colors } from './colors';\n\nexport interface FeedbackMessageVariantTheme {\n backgroundColor: string;\n}\n\nexport interface FeedbackMessageTheme {\n minHeight: number;\n danger: FeedbackMessageVariantTheme;\n info: FeedbackMessageVariantTheme;\n success: FeedbackMessageVariantTheme;\n warning: FeedbackMessageVariantTheme;\n}\n\nexport const feedbackMessage: FeedbackMessageTheme = {\n minHeight: 60,\n danger: {\n backgroundColor: colors.danger,\n },\n success: {\n backgroundColor: colors.success,\n },\n info: {\n backgroundColor: colors.info,\n },\n warning: {\n backgroundColor: colors.warning,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface AutocompleteTheme {\n option: {\n verticalPadding: number;\n minHeight: number;\n default: { backgroundColor: string };\n hovered: { backgroundColor: string };\n focused: { backgroundColor: string };\n selected: { backgroundColor: string };\n highlighted: { backgroundColor: string };\n pressed: { backgroundColor: string };\n };\n optionsContainer: {\n borderRadius: number;\n backgroundColor: string;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n };\n}\n\nexport const autocomplete: AutocompleteTheme = {\n option: {\n verticalPadding: 2,\n minHeight: 40,\n default: {\n backgroundColor: colors.white,\n },\n hovered: { backgroundColor: lateOceanColorPalette.black50 },\n focused: { backgroundColor: lateOceanColorPalette.black50 },\n selected: { backgroundColor: lateOceanColorPalette.black50 },\n highlighted: { backgroundColor: lateOceanColorPalette.black50 },\n pressed: { backgroundColor: lateOceanColorPalette.black100 },\n },\n optionsContainer: {\n borderRadius: 10,\n backgroundColor: colors.white,\n shadow: { color: colors.black, offsetX: 0, offsetY: 10, opacity: 0.15, radius: 20 },\n },\n};\n","import { colors } from './colors';\n\nexport const checkbox = {\n borderWidth: 2,\n borderRadius: 5,\n height: 20,\n width: 20,\n iconSize: 14,\n markColor: colors.uiBackgroundLight,\n textSpacing: 10,\n default: {\n borderColor: colors.separator,\n backgroundColor: colors.uiBackgroundLight,\n },\n checked: {\n borderColor: colors.primary,\n backgroundColor: colors.primary,\n },\n focus: {\n borderColor: colors.primary,\n backgroundColor: colors.uiBackgroundLight,\n },\n hover: {\n borderColor: colors.primary,\n backgroundColor: colors.uiBackgroundLight,\n },\n pressed: {\n borderColor: colors.primary,\n backgroundColor: colors.uiBackgroundLight,\n },\n disabled: {\n borderColor: colors.separator,\n backgroundColor: colors.disabled,\n },\n transition: {\n duration: '200ms',\n timingFunction: 'ease-out',\n },\n};\n","interface DatePickerPartTheme {\n minWidth: number;\n}\n\nexport interface DatePickerTheme {\n day: DatePickerPartTheme;\n month: DatePickerPartTheme;\n year: DatePickerPartTheme;\n}\n\nexport const datePicker: DatePickerTheme = {\n day: {\n minWidth: 64,\n },\n month: {\n minWidth: 64,\n },\n year: {\n minWidth: 82,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors as kittColors } from './colors';\n\nexport const calcLineHeight = (fontSize: number, lineHeightMultiplier: number): number =>\n Math.round(fontSize * lineHeightMultiplier);\n\nexport interface TypographyTypeBreakpointRangeConfig {\n fontSize: number;\n lineHeight: number;\n}\n\nexport interface TypographyTypeConfig {\n baseAndSmall: TypographyTypeBreakpointRangeConfig;\n mediumAndWide: TypographyTypeBreakpointRangeConfig;\n}\n\nexport const createTypographyTypeConfig = (\n lineHeightMultiplier: number,\n baseAndSmallFontSize: number,\n mediumAndWideFontSize: number,\n): TypographyTypeConfig => ({\n baseAndSmall: {\n fontSize: baseAndSmallFontSize,\n lineHeight: calcLineHeight(baseAndSmallFontSize, lineHeightMultiplier),\n },\n mediumAndWide: {\n fontSize: mediumAndWideFontSize,\n lineHeight: calcLineHeight(mediumAndWideFontSize, lineHeightMultiplier),\n },\n});\n\nexport const typography = {\n colors: {\n black: kittColors.black,\n 'black-anthracite': kittColors.blackAnthracite,\n 'black-disabled': lateOceanColorPalette.black400,\n 'black-light': lateOceanColorPalette.black555,\n white: kittColors.white,\n 'white-light': kittColors.white,\n primary: kittColors.primary,\n 'primary-light': kittColors.primaryLight,\n accent: kittColors.accent,\n success: kittColors.success,\n danger: kittColors.danger,\n warning: kittColors.warning,\n },\n types: {\n headers: {\n fontFamily: {\n native: {\n regular: 'Moderat-Black',\n bold: 'Moderat-Black',\n },\n web: {\n regular: 'Moderat',\n bold: 'Moderat',\n },\n },\n fontWeight: 400,\n fontStyle: 'normal',\n configs: {\n // also known as xxlarge\n header1: createTypographyTypeConfig(1.3, 38, 62),\n // also known as xlarge\n header2: createTypographyTypeConfig(1.3, 32, 48),\n // also known as medium\n header3: createTypographyTypeConfig(1.3, 24, 36),\n // also known as xsmall\n header4: createTypographyTypeConfig(1.3, 18, 24),\n // also known as xxsmall\n header5: createTypographyTypeConfig(1.3, 18, 18),\n },\n },\n bodies: {\n fontFamily: {\n web: {\n regular: 'Noto Sans',\n bold: 'Noto Sans',\n },\n native: {\n regular: 'NotoSans',\n bold: 'NotoSans-Bold',\n },\n },\n fontWeight: {\n regular: 400,\n bold: 700,\n },\n fontStyle: {\n regular: 'normal',\n bold: 'normal',\n },\n configs: {\n 'body-large': createTypographyTypeConfig(1.6, 18, 24),\n 'body-medium': createTypographyTypeConfig(1.6, 18, 18),\n body: createTypographyTypeConfig(1.6, 16, 16),\n 'body-small': createTypographyTypeConfig(1.6, 14, 14),\n 'body-xsmall': createTypographyTypeConfig(1.6, 12, 12),\n },\n },\n },\n link: {\n /** @deprecated not used in kitt anymore, use Typography instead */\n disabledColor: kittColors.blackDisabled,\n },\n};\n","import type { InputUIState } from '../../forms/utils';\nimport { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\nimport { typography } from './typography';\n\nexport interface InputStateStyle {\n backgroundColor?: string;\n borderColor: string;\n color: string;\n}\n\nexport type InputStateTheme = Record<InputUIState, InputStateStyle>;\n\nconst inputStatesStyle: InputStateTheme = {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.separator,\n color: colors.black,\n },\n pending: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.separator,\n color: colors.black,\n },\n valid: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.black100,\n color: colors.black,\n },\n hover: {\n borderColor: lateOceanColorPalette.black200,\n color: colors.black,\n },\n focus: {\n borderColor: colors.primary,\n color: colors.black,\n },\n disabled: {\n backgroundColor: colors.disabled,\n borderColor: colors.separator,\n color: colors.blackDisabled,\n },\n invalid: {\n borderColor: colors.separator,\n color: colors.black,\n },\n};\n\nexport interface InputTheme {\n minHeight: number;\n color: {\n selection: string;\n placeholder: string;\n };\n borderWidth: number;\n borderRadius: number;\n icon: {\n size: number;\n };\n padding: {\n horizontal: number;\n vertical: number;\n };\n rightContainer: {\n padding: number;\n };\n transition: {\n property: string;\n duration: string;\n timingFunction: string;\n };\n states: InputStateTheme;\n}\n\nexport const webAnimationDuration = '200ms';\nexport const webAnimationTimingFunction = 'ease-in-out';\nexport const webAnimationProperty = 'border-color';\n\nexport const input: InputTheme = {\n minHeight: 40,\n color: {\n selection: colors.primary,\n placeholder: typography.colors['black-light'],\n },\n borderWidth: 2,\n borderRadius: 10,\n icon: {\n size: 20,\n },\n rightContainer: {\n padding: 10,\n },\n padding: {\n horizontal: 16,\n vertical: 5,\n },\n transition: {\n property: webAnimationProperty,\n duration: webAnimationDuration,\n timingFunction: webAnimationTimingFunction,\n },\n states: inputStatesStyle,\n};\n","export const inputField = {\n containerPaddingTop: 5,\n containerPaddingBottom: 10,\n feedbackPaddingTop: { base: 5, small: 10 },\n labelContainerPaddingBottom: 5,\n labelFeedbackMarginLeft: 6,\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\ninterface InputTagTypeTheme {\n backgroundColor: string;\n labelColor: string;\n}\nexport interface InputTagTheme {\n borderRadius: number;\n iconSize: number;\n default: InputTagTypeTheme;\n success: InputTagTypeTheme;\n danger: InputTagTypeTheme;\n}\n\nexport const inputTag: InputTagTheme = {\n success: {\n backgroundColor: colors.success,\n labelColor: colors.uiBackgroundLight,\n },\n danger: {\n backgroundColor: colors.danger,\n labelColor: colors.uiBackgroundLight,\n },\n default: {\n backgroundColor: lateOceanColorPalette.black50,\n labelColor: colors.black,\n },\n borderRadius: 10,\n iconSize: 13.5,\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface RadioTheme {\n size: number;\n unchecked: {\n backgroundColor: string;\n borderColor: string;\n borderWidth: number;\n };\n checked: {\n backgroundColor: string;\n borderColor: string;\n innerBackgroundColor: string;\n innerSize: number;\n };\n hover: {\n backgroundColor: string;\n borderColor: string;\n };\n pressed: {\n backgroundColor: string;\n borderColor: string;\n };\n disabled: {\n backgroundColor: string;\n borderColor: string;\n };\n transition: {\n duration: string;\n timingFunction: string;\n };\n}\n\nexport const radio: RadioTheme = {\n size: 18,\n unchecked: {\n borderWidth: 2,\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.black200,\n },\n checked: {\n backgroundColor: colors.primary,\n borderColor: colors.transparent,\n innerSize: 5,\n innerBackgroundColor: colors.uiBackgroundLight,\n },\n hover: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.primary,\n },\n pressed: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.primary,\n },\n disabled: {\n backgroundColor: colors.disabled,\n borderColor: colors.separator,\n },\n transition: {\n duration: '200ms',\n timingFunction: 'ease-out',\n },\n};\n","import { colors } from './colors';\n\nexport interface RadioButtonGroupTheme {\n item: {\n minHeight: number;\n borderWidth: number;\n borderColor: {\n default: string;\n hover: string;\n pressed: string;\n active: string;\n disabled: string;\n [key: string]: string;\n };\n backgroundColor: {\n default: string;\n hover: string;\n pressed: string;\n active: string;\n disabled: string;\n };\n borderRadius: number;\n padding: {\n horizontal: number;\n vertical: number;\n };\n transition: {\n property: string;\n duration: string;\n timingFunction: string;\n };\n };\n}\n\nexport const radioButtonGroup: RadioButtonGroupTheme = {\n item: {\n minHeight: 40,\n borderWidth: 2,\n borderRadius: 20,\n borderColor: {\n default: colors.separator,\n hover: colors.primary,\n pressed: colors.primary,\n active: colors.primary,\n disabled: colors.separator,\n },\n backgroundColor: {\n default: colors.uiBackgroundLight,\n hover: colors.white,\n pressed: colors.primary,\n active: colors.primary,\n disabled: colors.disabled,\n },\n padding: {\n horizontal: 18,\n vertical: 6,\n },\n transition: {\n property: 'all',\n duration: '200ms',\n timingFunction: 'ease-in-out',\n },\n },\n};\n","export interface TextAreaTheme {\n minHeight: number;\n}\n\nexport const textArea: TextAreaTheme = {\n minHeight: 120,\n};\n","export interface TimePickerTheme {\n minWidth: number;\n}\n\nexport const timePicker: TimePickerTheme = {\n minWidth: 100,\n};\n","import { autocomplete } from './autocomplete';\nimport { checkbox } from './checkbox';\nimport { datePicker } from './datePicker';\nimport { input } from './input';\nimport { inputField } from './inputField';\nimport { inputTag } from './inputTag';\nimport { radio } from './radio';\nimport { radioButtonGroup } from './radioButtonGroup';\nimport { textArea } from './textArea';\nimport { timePicker } from './timePicker';\n\nexport const forms = {\n autocomplete,\n datePicker,\n input,\n radio,\n inputField,\n textArea,\n checkbox,\n inputTag,\n radioButtonGroup,\n timePicker,\n};\n","export interface FullscreenModalTheme {\n header: {\n height: number;\n };\n footer: {\n verticalPadding: number;\n };\n sharedHorizontalPadding: number;\n body: {\n verticalPadding: number;\n };\n animation: {\n overlay: {\n duration: number;\n easing: number[];\n };\n content: {\n duration: number;\n easing: number[];\n };\n };\n}\n\nexport const webAnimationContentDuration = 600;\nexport const webAnimationContentEasing = [0.77, 0, 0.175, 1];\n\nexport const webAnimationOverlayDuration = 250;\nexport const webAnimationOverlayEasing = [0.42, 0, 1, 1];\n\nexport const fullscreenModal: FullscreenModalTheme = {\n header: {\n height: 56,\n },\n sharedHorizontalPadding: 16,\n footer: {\n verticalPadding: 12,\n },\n body: {\n verticalPadding: 24,\n },\n animation: {\n overlay: {\n duration: webAnimationOverlayDuration,\n easing: webAnimationOverlayEasing,\n },\n content: {\n duration: webAnimationContentDuration,\n easing: webAnimationContentEasing,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\nimport { spacing } from './spacing';\n\nexport interface HighlightThemeType {\n backgroundColor: string;\n}\n\nexport interface HighlightTheme {\n borderRadius: number;\n padding: number;\n regular: HighlightThemeType;\n primary: HighlightThemeType;\n secondary: HighlightThemeType;\n dark: HighlightThemeType;\n}\n\nexport const highlight: HighlightTheme = {\n borderRadius: spacing * 5,\n /** @deprecated use primary instead */\n regular: {\n backgroundColor: colors.accentLight,\n },\n primary: {\n backgroundColor: colors.accentLight,\n },\n secondary: {\n backgroundColor: lateOceanColorPalette.moonPurple,\n },\n dark: {\n backgroundColor: lateOceanColorPalette.black100,\n },\n padding: spacing * 5,\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { button } from './button';\n\ninterface IconButtonVariationValues {\n pressedBackgroundColor: string;\n}\n\nexport interface IconButtonTheme {\n backgroundColor: string;\n width: number;\n height: number;\n borderRadius: number;\n borderWidth: number;\n borderColor: string;\n transition: {\n property: string;\n duration: string;\n timingFunction: string;\n };\n scale: {\n base: {\n default: number;\n hover: number;\n active: number;\n };\n medium: {\n default: number;\n hover: number;\n active: number;\n };\n };\n disabled: {\n scale: number;\n backgroundColor: string;\n borderColor: string;\n };\n default: IconButtonVariationValues;\n white: IconButtonVariationValues;\n primary: IconButtonVariationValues;\n}\n\nexport const iconButton: IconButtonTheme = {\n backgroundColor: 'transparent',\n width: 40,\n height: 40,\n borderRadius: 20,\n borderWidth: 2,\n borderColor: 'transparent',\n transition: {\n property: 'all',\n duration: '200ms',\n timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n },\n scale: {\n base: {\n default: 1,\n hover: 0.95,\n active: 0.95,\n },\n medium: {\n default: 1,\n hover: 1.05,\n active: 0.95,\n },\n },\n disabled: {\n scale: 1,\n backgroundColor: button.disabled.default.backgroundColor,\n borderColor: button.disabled.default.borderColor,\n },\n default: {\n pressedBackgroundColor: button.default.default.pressedBackgroundColor,\n },\n white: {\n pressedBackgroundColor: button.white.default.hoverBackgroundColor,\n },\n primary: {\n pressedBackgroundColor: lateOceanColorPalette.moonPurpleLight1,\n },\n};\n","import { colors } from './colors';\n\nexport interface ListItemTheme {\n /** @deprecated -- use verticalPadding and horizontalPadding instead */\n padding: string;\n verticalPadding: number;\n horizontalPadding: number;\n borderColor: string;\n borderWidth: number;\n innerMargin: number;\n}\n\nexport const listItem: ListItemTheme = {\n padding: '12px 16px',\n verticalPadding: 12,\n horizontalPadding: 16,\n borderColor: colors.separator,\n borderWidth: 1,\n innerMargin: 8,\n};\n","import { colors } from './colors';\n\nexport interface PageLoaderTheme {\n size: number;\n strokeWidth: number;\n colors: {\n base: string;\n fill: string;\n };\n animation: {\n delay: number;\n circleBackgroundFillDuration: number;\n filledCircleFillDuration: number;\n groupFilledCircleRotationDuration: number;\n filledCircleRotationDuration: number;\n fillEasingFunction: [number, number, number, number];\n };\n}\n\nexport const pageLoaderSize = 60;\nexport const pageLoaderStrokeWidth = 3;\n\nexport const webAnimationDelay = 500;\nexport const webAnimationCircleBackgroundFillDuration = 1000;\nexport const webAnimationFilledCircleFillDuration = 1800;\nexport const webAnimationFilledCircleRotationDuration = 2160;\nexport const fillEasingFunction: [number, number, number, number] = [0.39, 0.575, 0.565, 1];\n\nexport const pageLoader: PageLoaderTheme = {\n size: pageLoaderSize,\n strokeWidth: pageLoaderStrokeWidth,\n colors: {\n base: colors.separator,\n fill: colors.primary,\n },\n animation: {\n delay: webAnimationDelay,\n circleBackgroundFillDuration: webAnimationCircleBackgroundFillDuration,\n filledCircleFillDuration: webAnimationFilledCircleFillDuration,\n groupFilledCircleRotationDuration: 1800,\n filledCircleRotationDuration: webAnimationFilledCircleRotationDuration,\n fillEasingFunction,\n },\n};\n","import type { TextStyle } from 'react-native';\nimport { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\nimport { typography } from './typography';\n\nexport interface PickerTheme {\n ios: {\n default: TextStyle;\n landscape: TextStyle;\n selected: {\n color: string;\n };\n };\n android: {\n option: {\n verticalPadding: number;\n horizontalPadding: number;\n default: {\n backgroundColor: string;\n };\n selected: {\n backgroundColor: string;\n color: string;\n };\n };\n };\n web: {\n optionsContainer: {\n borderRadius: number;\n backgroundColor: string;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n };\n option: {\n verticalPadding: number;\n horizontalPadding: number;\n default: {\n backgroundColor: string;\n };\n highlighted: {\n backgroundColor: string;\n };\n selected: {\n backgroundColor: string;\n };\n hovered: {\n backgroundColor: string;\n };\n pressed: {\n backgroundColor: string;\n };\n focused: {\n backgroundColor: string;\n };\n };\n };\n}\n\nexport const picker: PickerTheme = {\n ios: {\n default: {\n fontFamily: typography.types.bodies.fontFamily.native.regular,\n ...typography.types.bodies.configs.body.baseAndSmall,\n fontSize: 16,\n color: typography.colors['black-light'],\n // Default height is hard coded in module because of iOS constraint (https://github.com/react-native-picker/picker/blob/abd5f9076baa3ef2277ea7e711fa5823683c110e/js/PickerIOS.ios.js#L156)\n height: 216,\n },\n landscape: {\n height: 108,\n },\n selected: {\n color: typography.colors.primary,\n },\n },\n web: {\n optionsContainer: {\n borderRadius: 10,\n backgroundColor: colors.white,\n shadow: { color: colors.black, offsetX: 0, offsetY: 10, opacity: 0.15, radius: 20 },\n },\n option: {\n verticalPadding: 3,\n horizontalPadding: 16,\n default: {\n backgroundColor: colors.transparent,\n },\n hovered: { backgroundColor: lateOceanColorPalette.black50 },\n focused: { backgroundColor: lateOceanColorPalette.black50 },\n selected: { backgroundColor: lateOceanColorPalette.black50 },\n highlighted: { backgroundColor: lateOceanColorPalette.black50 },\n pressed: { backgroundColor: lateOceanColorPalette.black100 },\n },\n },\n android: {\n option: {\n verticalPadding: 12,\n horizontalPadding: 24,\n default: {\n backgroundColor: colors.transparent,\n },\n selected: {\n backgroundColor: colors.primary,\n color: typography.colors.white,\n },\n },\n },\n};\n","import { colors } from './colors';\n\ninterface ShadowShapeTheme {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n}\n\nexport interface ShadowsTheme {\n medium: string;\n cards: Record<string, ShadowShapeTheme>;\n navigation: Record<string, ShadowShapeTheme>;\n panel: ShadowShapeTheme;\n}\n\nexport const shadows: ShadowsTheme = {\n /** @deprecated: use cards.medium instead - shorthand shadow doesnt work with Native Base */\n medium: '0px 10px 20px rgba(41, 48, 51, 0.25)',\n cards: {\n low: {\n color: colors.black,\n offsetX: 0,\n offsetY: 5,\n opacity: 0.1,\n radius: 20,\n },\n medium: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n highBase: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n highMedium: {\n color: colors.black,\n offsetX: 0,\n offsetY: 60,\n opacity: 0.08,\n radius: 40,\n },\n highLarge: {\n color: colors.black,\n offsetX: 0,\n offsetY: 80,\n opacity: 0.08,\n radius: 60,\n },\n },\n navigation: {\n left: {\n color: colors.black,\n offsetX: 10,\n offsetY: 0,\n opacity: 0.15,\n radius: 30,\n },\n right: {\n color: colors.black,\n offsetX: -10,\n offsetY: 0,\n opacity: 0.15,\n radius: 30,\n },\n },\n panel: {\n color: colors.black,\n offsetX: 0,\n offsetY: 20,\n opacity: 1,\n radius: 40,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\n\ninterface SkeletonShapeTheme {\n size: number;\n borderRadius: number;\n}\nexport interface SkeletonTheme {\n backgroundColor: string;\n flareColor: string;\n animationDuration: number;\n shape: Record<string, SkeletonShapeTheme>;\n}\n\nexport const skeletonBackgroundColor = lateOceanColorPalette.black100;\nexport const skeletonFlareColor = lateOceanColorPalette.black200;\n\nexport const skeleton: SkeletonTheme = {\n backgroundColor: skeletonBackgroundColor,\n flareColor: skeletonFlareColor,\n animationDuration: 1000,\n shape: {\n bar: {\n size: 8,\n borderRadius: 4,\n },\n circle: {\n size: 48,\n borderRadius: 24,\n },\n square: {\n size: 48,\n borderRadius: 6,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface TagVariantTheme {\n borderWidth: number;\n backgroundColor: string;\n borderColor: string;\n}\n\nexport interface TagTypeTheme {\n fill: TagVariantTheme;\n outline: TagVariantTheme;\n}\n\nexport interface TagTheme {\n borderRadius: number;\n /** @deprecated -- Use verticalPadding and horizontalPadding instead */\n padding: string;\n verticalPadding: number;\n horizontalPadding: number;\n primary: TagTypeTheme;\n default: TagTypeTheme;\n danger: TagTypeTheme;\n warn: TagTypeTheme;\n}\n\nexport const tag: TagTheme = {\n borderRadius: 10,\n padding: '2px 12px',\n verticalPadding: 2,\n horizontalPadding: 12,\n primary: {\n fill: {\n backgroundColor: lateOceanColorPalette.moonPurpleLight1,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.primary,\n },\n },\n default: {\n fill: {\n backgroundColor: lateOceanColorPalette.black50,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.black,\n },\n },\n danger: {\n fill: {\n backgroundColor: colors.danger,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.danger,\n },\n },\n warn: {\n fill: {\n backgroundColor: colors.warning,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.warning,\n },\n },\n};\n","import { hex2rgba } from '../../utils/hexToRgba';\nimport { colors } from './colors';\n\ninterface TooltipTransition {\n duration: string;\n timingFunction: string;\n property: string;\n}\n\nexport interface TooltipTheme {\n backgroundColor: string;\n borderRadius: number;\n opacity: number;\n horizontalPadding: number;\n verticalPadding: number;\n floatingPadding: number;\n maxWidth: number;\n transition: {\n in: TooltipTransition;\n out: TooltipTransition;\n };\n arrow: {\n width: number;\n height: number;\n };\n}\n\nexport const tooltip: TooltipTheme = {\n backgroundColor: hex2rgba(colors.black, 0.95),\n borderRadius: 10,\n opacity: 0.95,\n horizontalPadding: 16,\n verticalPadding: 8,\n floatingPadding: 8,\n maxWidth: 328,\n transition: {\n in: {\n duration: '150ms',\n timingFunction: 'ease-out',\n property: 'opacity',\n },\n out: {\n duration: '75ms',\n timingFunction: 'ease-out',\n property: 'opacity',\n },\n },\n arrow: {\n width: 39,\n height: 9,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\ninterface StepStateTheme {\n icon: {\n backgroundColor: string;\n textColor: string;\n };\n}\n\nexport interface VerticalStepsTheme {\n active: StepStateTheme;\n done: StepStateTheme;\n default: StepStateTheme;\n}\n\nexport const verticalSteps: VerticalStepsTheme = {\n active: {\n icon: {\n backgroundColor: colors.primary,\n textColor: colors.white,\n },\n },\n done: {\n icon: {\n backgroundColor: lateOceanColorPalette.moonPurple,\n textColor: colors.primary,\n },\n },\n default: {\n icon: {\n backgroundColor: colors.disabled,\n textColor: colors.blackDisabled,\n },\n },\n};\n","import { actionCard } from './late-ocean/actionCard';\nimport { avatar } from './late-ocean/avatar';\nimport { bottomSheet } from './late-ocean/bottomSheet';\nimport { button } from './late-ocean/button';\nimport { card } from './late-ocean/card';\nimport { cardModal } from './late-ocean/cardModal';\nimport { choices } from './late-ocean/choices';\nimport { colors } from './late-ocean/colors';\nimport { dialogModal } from './late-ocean/dialogModal';\nimport { feedbackMessage } from './late-ocean/feedback';\nimport { forms } from './late-ocean/forms';\nimport { fullscreenModal } from './late-ocean/fullscreenModal';\nimport { highlight } from './late-ocean/highlight';\nimport { iconButton } from './late-ocean/iconButton';\nimport { listItem } from './late-ocean/listItem';\nimport { pageLoader } from './late-ocean/pageLoader';\nimport { picker } from './late-ocean/picker';\nimport { shadows } from './late-ocean/shadows';\nimport { skeleton } from './late-ocean/skeleton';\nimport { spacing } from './late-ocean/spacing';\nimport { tag } from './late-ocean/tag';\nimport { tooltip } from './late-ocean/tooltip';\nimport { typography } from './late-ocean/typography';\nimport { verticalSteps } from './late-ocean/verticalSteps';\nimport { lateOceanColorPalette } from './palettes/lateOceanColorPalette';\n\nconst breakpoints = {\n values: {\n base: 0,\n small: 480,\n medium: 768,\n large: 1024,\n wide: 1280,\n },\n min: {\n smallBreakpoint: 'min-width: 480px',\n mediumBreakpoint: 'min-width: 768px',\n largeBreakpoint: 'min-width: 1024px',\n wideBreakpoint: 'min-width: 1280px',\n },\n max: {\n smallBreakpoint: 'max-width: 479px',\n mediumBreakpoint: 'max-width: 767px',\n largeBreakpoint: 'max-width: 1023px',\n wideBreakpoint: 'max-width: 1279px',\n },\n};\n\n// eslint-disable-next-line unicorn/expiring-todo-comments\n// TODO : seperate brand color usage definition from proper theme definition and add typings - https://ornikar.atlassian.net/browse/CME-156\nexport const theme = {\n spacing,\n getSpacing: (multiplier: number): number => spacing * multiplier,\n colors,\n palettes: { lateOcean: lateOceanColorPalette },\n avatar,\n breakpoints,\n button,\n bottomSheet,\n card,\n cardModal,\n choices,\n dialogModal,\n feedbackMessage,\n forms,\n highlight,\n iconButton,\n listItem,\n pageLoader,\n picker,\n shadows,\n skeleton,\n tag,\n tooltip,\n typography,\n fullscreenModal,\n actionCard,\n verticalSteps,\n};\n\nexport type Theme = typeof theme;\n","import { createContext, useContext } from 'react';\nimport type { Theme as KittTheme } from './themes/default';\nimport { theme as kittTheme } from './themes/default';\n\nexport interface KittThemeContextValue {\n kitt: KittTheme;\n}\n\nexport const KittThemeContext = createContext<KittThemeContextValue>({\n kitt: kittTheme,\n});\n\nexport const useTheme = (): KittThemeContextValue => useContext(KittThemeContext);\n","import type { ActionCardVariant } from '../../themes/late-ocean/actionCard';\n\nexport const getStateKey = (isHovered?: boolean, isPressed?: boolean, isFocused?: boolean): keyof ActionCardVariant => {\n if (isPressed) {\n return 'pressed';\n }\n\n if (isFocused) {\n return 'focused';\n }\n\n if (isHovered) {\n return 'hovered';\n }\n\n return 'default';\n};\n","import type { ActionCardTheme } from '../../themes/late-ocean/actionCard';\nimport type { ActionCardBorderVariantType, ActionCardVariantType } from '../types';\n\nexport const getThemeName = (\n variant: ActionCardVariantType,\n borderVariant: ActionCardBorderVariantType,\n): keyof ActionCardTheme => {\n if (borderVariant === 'soft') {\n return 'primary-border-soft';\n }\n if (borderVariant === 'hard') {\n return 'primary-border-hard';\n }\n\n return variant;\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ActionCardBorderVariantType, ActionCardVariantType } from './types';\nimport { getStateKey } from './utils/getStateKey';\nimport { getThemeName } from './utils/getThemeName';\n\ninterface ActionCardContentWrapperProps {\n isHovered?: boolean;\n isPressed?: boolean;\n isFocused?: boolean;\n variant: ActionCardVariantType;\n borderVariant?: ActionCardBorderVariantType;\n children: ReactNode;\n}\n\nexport function ActionCardContentWrapper({\n isHovered,\n isPressed,\n isFocused,\n variant,\n borderVariant = 'none',\n children,\n}: ActionCardContentWrapperProps): ReactElement {\n const theme = useTheme();\n const state = getStateKey(isHovered, isPressed, isFocused);\n\n if (__DEV__ && borderVariant !== 'none' && variant !== 'primary') {\n throw new Error(`borderVariant=${borderVariant} is only allowed with variant=primary`);\n }\n\n const { translateY } = theme.kitt.actionCard[variant][state];\n\n const sharedTransform = translateY\n ? {\n transform: [{ translateY }],\n }\n : {};\n\n const themeName = getThemeName(variant, borderVariant);\n\n return (\n <View\n _ios={{ style: sharedTransform }}\n _android={{ style: sharedTransform }}\n _web={{\n style: sharedTransform,\n }}\n width=\"100%\"\n backgroundColor={`kitt.actionCard.${themeName}.${state}.backgroundColor`}\n borderRadius=\"kitt.actionCard.borderRadius\"\n borderColor={`kitt.actionCard.${themeName}.${state}.borderColor`}\n borderWidth={`kitt.actionCard.${themeName}.${state}.borderWidth`}\n shadow={`kitt.actionCard.${themeName}.${state}.shadow`}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { ActionCardVariantType } from './types';\n\ninterface ActionCardDisabledProps {\n variant: ActionCardVariantType;\n children: ReactNode;\n}\n\nexport function ActionCardDisabled({ variant, children }: ActionCardDisabledProps): ReactElement {\n return (\n <View\n borderRadius=\"kitt.actionCard.borderRadius\"\n borderStyle=\"solid\"\n borderWidth={`kitt.actionCard.${variant}.disabled.borderWidth`}\n borderColor={`kitt.actionCard.${variant}.disabled.borderColor`}\n backgroundColor={`kitt.actionCard.${variant}.disabled.backgroundColor`}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { PressableProps, ViewProps } from '../native-base/primitives';\nimport { Pressable, View } from '../native-base/primitives';\nimport { ActionCardContentWrapper } from './ActionCardContentWrapper';\nimport { ActionCardDisabled } from './ActionCardDisabled';\nimport type { ActionCardBorderVariantType, ActionCardVariantType } from './types';\n\nexport interface ActionCardProps extends Pick<ViewProps, 'testID'> {\n variant?: ActionCardVariantType;\n borderVariant?: ActionCardBorderVariantType;\n disabled?: boolean;\n children: ReactNode;\n /** @internal used by ActionCard.Pressable only */\n isHovered?: boolean;\n /** @internal used by ActionCard.Pressable only */\n isPressed?: boolean;\n /** @internal used by ActionCard.Pressable only */\n isFocused?: boolean;\n}\n\nexport function ActionCard({\n children,\n variant = 'secondary',\n borderVariant = 'none',\n disabled,\n testID,\n isHovered,\n isPressed,\n isFocused,\n}: ActionCardProps): ReactElement {\n return (\n <View testID={testID}>\n {disabled ? (\n <ActionCardDisabled variant={variant}>{children}</ActionCardDisabled>\n ) : (\n <ActionCardContentWrapper\n variant={variant}\n borderVariant={borderVariant}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n >\n {children}\n </ActionCardContentWrapper>\n )}\n </View>\n );\n}\n\nexport interface ActionCardPressableProps\n extends ActionCardProps,\n Pick<PressableProps, 'testID' | 'href' | 'hrefAttrs' | 'accessibilityRole' | 'onPress'> {\n /** @internal for story purpose */\n isHoveredInternal?: boolean;\n /** @internal for story purpose */\n isPressedInternal?: boolean;\n /** @internal for story purpose */\n isFocusedInternal?: boolean;\n}\n\nconst ActionCardPressable = forwardRef<typeof Pressable, ActionCardPressableProps>(\n (\n {\n children,\n variant = 'secondary',\n borderVariant = 'none',\n disabled,\n testID,\n href,\n hrefAttrs,\n accessibilityRole = 'button',\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onPress,\n }: ActionCardPressableProps,\n ref,\n ): ReactElement => {\n return (\n <Pressable\n ref={ref}\n accessibilityRole={accessibilityRole}\n disabled={disabled}\n testID={testID}\n href={href}\n hrefAttrs={hrefAttrs}\n width=\"100%\"\n onPress={onPress}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <ActionCard\n variant={variant}\n borderVariant={borderVariant}\n disabled={disabled}\n isHovered={isHovered || isHoveredInternal}\n isFocused={isFocused || isFocusedInternal}\n isPressed={isPressed || isPressedInternal}\n >\n {children}\n </ActionCard>\n )}\n </Pressable>\n );\n },\n);\n\nActionCard.Pressable = ActionCardPressable;\n","import type { ICenterProps, IStackProps } from 'native-base';\nimport {\n Center as NativeBaseCenter,\n HStack as NativeBaseHStack,\n Stack as NativeBaseStack,\n VStack as NativeBaseVStack,\n} from 'native-base';\nimport type { InterfaceStackProps } from 'native-base/lib/typescript/components/primitives/Stack/Stack';\nimport type { SafeAreaProps, SpaceType } from 'native-base/lib/typescript/components/types';\nimport type { ViewProps as NativeViewProps } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { KittResponsivePropOrValue } from '../KittBreakpoints';\nimport type {\n ForwardRefComponent,\n NativeBaseAcceptedBorderProps,\n NativeBaseAcceptedBorderRadiusProps,\n NativeBaseAcceptedChildrenProp,\n NativeBaseAcceptedColorsProps,\n NativeBaseAcceptedFlexboxProps,\n NativeBaseAcceptedLayoutProps,\n NativeBaseAcceptedPositionProps,\n NativeBaseAcceptedShadowProps,\n NativeBaseAcceptedSpaceProps,\n} from './acceptable-native-base-props';\n\ntype NativeBaseAcceptedStackProps = Extract<\n keyof InterfaceStackProps,\n | 'divider'\n | 'reversed'\n | 'direction'\n | 'isHovered'\n | 'isFocused'\n | 'isDisabled'\n | 'isInvalid'\n | 'isReadOnly'\n | keyof NativeViewProps\n | keyof SafeAreaProps\n>;\n\nexport interface StackProps\n extends Pick<\n IStackProps,\n | NativeBaseAcceptedChildrenProp\n | NativeBaseAcceptedStackProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {\n space?: KittResponsivePropOrValue<SpaceType>;\n}\n\nexport const Stack = NativeBaseStack as ForwardRefComponent<StackProps>;\n\nexport interface VStackProps extends Except<StackProps, 'direction'> {\n direction?: Extract<StackProps['direction'], 'column' | 'column-reverse'>;\n}\nexport const VStack = NativeBaseVStack as ForwardRefComponent<VStackProps>;\n\nexport interface HStackProps extends Except<StackProps, 'direction'> {\n direction?: Extract<StackProps['direction'], 'row' | 'row-reverse'>;\n}\nexport const HStack = NativeBaseHStack as ForwardRefComponent<HStackProps>;\n\nexport interface CenterProps\n extends Pick<\n ICenterProps,\n | keyof NativeViewProps\n | keyof SafeAreaProps\n | NativeBaseAcceptedChildrenProp\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const Center = NativeBaseCenter as ForwardRefComponent<CenterProps>;\n","import type { KittBreakpointNameEnum } from '../../KittBreakpoints';\n\nexport type ResponsiveRecordValue<T> = { [key in KittBreakpointNameEnum]?: T };\nexport type ResponsiveValue<T> = T | ResponsiveRecordValue<T> | undefined;\n\nexport function createResponsiveStyleFromProp<PossibleStyleValue>(\n responsiveBooleanValue: ResponsiveValue<boolean | undefined>,\n valueIfTrue: PossibleStyleValue,\n valueIfFalse?: PossibleStyleValue,\n): ResponsiveValue<PossibleStyleValue> {\n // Handles simple boolean values\n if (!responsiveBooleanValue) return valueIfFalse;\n\n if (responsiveBooleanValue === true) return valueIfTrue;\n\n // Handles responsive value object\n const keys = Object.keys(responsiveBooleanValue) as KittBreakpointNameEnum[];\n\n if (keys.length === 0) return valueIfFalse;\n\n const responsiveValue = {} as ResponsiveRecordValue<PossibleStyleValue>;\n\n keys.forEach((breakpointName) => {\n responsiveValue[breakpointName] = responsiveBooleanValue[breakpointName] ? valueIfTrue : valueIfFalse;\n });\n\n return responsiveValue;\n}\n","export function warn(message: string): void {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(message);\n }\n}\n\nexport function deprecatedMessage(symbol: string, deprecation: string, replaceBy?: string): void {\n const replaceMessage = replaceBy === undefined ? '' : `, please use ${replaceBy} instead`;\n\n warn(`[Deprecation] in ${symbol}: ${deprecation} is deprecated${replaceMessage}.`);\n}\n\nexport function deprecatedInComponent(component: string, deprecation: string, replaceBy?: string): void {\n deprecatedMessage(`<${component} />`, deprecation, replaceBy);\n}\n","// eslint-disable-next-line no-restricted-imports\nimport { useBreakpointValue as useBreakpointValueNativeBaseBadlyTyped } from 'native-base';\nimport type { ITheme } from 'native-base';\nimport type { SetRequired } from 'type-fest';\n\nexport type { StyledProps } from 'native-base';\nexport { useClipboard, useSx, useToken } from 'native-base';\n\ntype UseBreakpointValueParam<T> = {\n [key in keyof ITheme['breakpoints']]?: T;\n};\n\nexport type BreakpointValueHookValues<T> = SetRequired<UseBreakpointValueParam<T>, 'base'>;\n\nexport const useBreakpointValue = useBreakpointValueNativeBaseBadlyTyped as <T>(\n values: BreakpointValueHookValues<T>,\n) => T;\n","import type { ButtonType, ButtonVariant } from '../Button';\n\ninterface GetCurrentBackgroundColorParams {\n type: ButtonType;\n variant: ButtonVariant;\n isDisabled?: boolean;\n isHovered?: boolean;\n isPressed?: boolean;\n}\n\nexport function getCurrentBackgroundColorForNativeBaseTheme({\n type,\n variant,\n isDisabled,\n isHovered,\n isPressed,\n}: GetCurrentBackgroundColorParams): string {\n if (isDisabled) return 'kitt.button.disabled.default.backgroundColor';\n\n const baseKey = `kitt.button.${type}.${variant}`;\n\n if (isHovered || isPressed) {\n return `${baseKey}.hoverBackgroundColor`;\n }\n\n return `${baseKey}.backgroundColor`;\n}\n","interface GetCurrentScaleParams {\n hoverScaleValue: number;\n pressedScaleValue: number;\n isDisabled?: boolean;\n isHovered?: boolean;\n isPressed?: boolean;\n}\n\nexport function getCurrentScale({\n hoverScaleValue,\n pressedScaleValue,\n isDisabled,\n isHovered,\n isPressed,\n}: GetCurrentScaleParams): number {\n if (isDisabled) return 1;\n\n if (isPressed) {\n return pressedScaleValue;\n }\n\n if (isHovered) {\n return hoverScaleValue;\n }\n\n return 1;\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport { useBreakpointValue } from '../native-base/utils';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { AnimatedContainerProps } from './AnimatedContainer';\nimport { getCurrentBackgroundColorForNativeBaseTheme } from './utils/getCurrentBackgroundColorForNativeBaseTheme';\nimport { getCurrentScale } from './utils/getCurrentScale';\n\nexport function AnimatedContainer({\n children,\n type,\n variant,\n isHovered,\n isPressed,\n isStretch,\n disabled,\n}: AnimatedContainerProps): ReactElement {\n const theme = useTheme();\n\n const {\n transition: { duration, timingFunction },\n scale,\n } = theme.kitt.button;\n\n const responsiveHoverScaleValue = useBreakpointValue({\n base: scale.base.hover,\n medium: scale.medium.hover,\n });\n\n const currentScale = getCurrentScale({\n hoverScaleValue: responsiveHoverScaleValue,\n pressedScaleValue: scale.base.active,\n isHovered,\n isPressed,\n isDisabled: !!disabled,\n });\n\n const currentBackgroundColor = getCurrentBackgroundColorForNativeBaseTheme({\n type,\n variant,\n isDisabled: !!disabled,\n isHovered,\n isPressed,\n });\n\n return (\n <View\n _web={{\n style: {\n transitionProperty: 'all',\n transitionDuration: duration,\n transitionTimingFunction: timingFunction,\n /* Simplifies the animation to just the front of the object – avoid blurry scale */\n backfaceVisibility: 'hidden',\n transform: [\n {\n scale: currentScale,\n },\n ],\n },\n }}\n width={createResponsiveStyleFromProp(isStretch, '100%', 'auto')}\n alignSelf=\"baseline\"\n borderRadius=\"kitt.button.borderRadius\"\n backgroundColor={currentBackgroundColor}\n >\n {children}\n </View>\n );\n}\n","export const KittBreakpoints = {\n /**\n * min-width: 0\n */\n BASE: 0,\n /**\n * min-width: 480px\n */\n SMALL: 480,\n /**\n * min-width: 768px\n */\n MEDIUM: 768,\n /**\n * min-width: 1024px\n */\n LARGE: 1024,\n /**\n * min-width: 1280px\n */\n WIDE: 1280,\n};\n\nexport const KittBreakpointsMax = {\n /**\n * max-width: 479px\n */\n BASE: KittBreakpoints.SMALL - 1,\n /**\n * max-width: 767px\n */\n SMALL: KittBreakpoints.MEDIUM - 1,\n /**\n * max-width: 1023px\n */\n MEDIUM: KittBreakpoints.LARGE - 1,\n /**\n * max-width: 1279px\n */\n LARGE: KittBreakpoints.WIDE - 1,\n};\n\nexport type KittBreakpoint = (typeof KittBreakpoints)[keyof typeof KittBreakpoints];\nexport type KittBreakpointMax = (typeof KittBreakpointsMax)[keyof typeof KittBreakpointsMax];\n\nexport enum KittBreakpointNameEnum {\n BASE = 'base',\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n WIDE = 'wide',\n}\n\nexport type KittResponsiveProp<Value> = Record<KittBreakpointNameEnum.BASE, Value> &\n Partial<Record<Exclude<KittBreakpointNameEnum, KittBreakpointNameEnum.BASE>, Value>>;\n\nexport type KittResponsivePropOrValue<Value> = KittResponsiveProp<Value> | Value;\n","export const typographyColors = [\n 'black',\n 'black-anthracite',\n 'black-disabled',\n 'black-light',\n 'white',\n 'white-light',\n 'primary',\n 'primary-light',\n 'accent',\n 'success',\n 'danger',\n 'warning',\n] as const;\n","import type { TypographyColor } from '../Typography';\n\nexport function getNBThemeColorFromColorProps(colorName: TypographyColor): string {\n return `kitt.typography.${colorName}`;\n}\n","import type { ITextProps } from 'native-base';\nimport type { ExtendedTypographyColor, TypographyColor } from '../Typography';\nimport { typographyColors } from '../typographyColors';\nimport { getNBThemeColorFromColorProps } from './getNBThemeColorFromColorProps';\n\nexport function isColorTypographyColor(colorName: unknown): colorName is TypographyColor {\n if (!colorName || typeof colorName !== 'string') return false;\n\n return (typographyColors as readonly string[]).includes(colorName);\n}\n\nexport function getTypographyColorValue(colorName: ExtendedTypographyColor | undefined): ITextProps['color'] {\n if (!colorName) return undefined;\n\n if (isColorTypographyColor(colorName)) {\n return getNBThemeColorFromColorProps(colorName);\n }\n\n return colorName;\n}\n","import type { TypographyHeaderType, TypographyType } from '../Typography';\n\nexport const isTypeHeader = (type: TypographyType): type is TypographyHeaderType => type.startsWith('header');\n","import type { TypographyHeaderType, TypographyType } from '../Typography';\nimport { isTypeHeader } from './isTypeHeader';\n\nexport const isTypographyHeader = (\n type: TypographyType | undefined,\n isHeaderTypographyInContext: boolean | undefined,\n): type is TypographyHeaderType => {\n if (type) return isTypeHeader(type);\n if (isHeaderTypographyInContext != null) return isHeaderTypographyInContext;\n throw new Error('You must set a \"base\" prop or wrap this Typography in one that does.');\n};\n","import type { ITextProps } from 'native-base';\nimport { Text as NBText, useSx } from 'native-base';\nimport type { PlatformProps } from 'native-base/lib/typescript/components/types';\nimport type { FC, ReactElement, ReactNode } from 'react';\nimport { createContext, useContext } from 'react';\nimport type { TextProps, TextStyle } from 'react-native';\nimport { Platform } from 'react-native';\nimport type { Except, SetOptional } from 'type-fest';\nimport type { KittResponsiveProp } from '../KittBreakpoints';\nimport { KittBreakpointNameEnum } from '../KittBreakpoints';\nimport type { NativeBaseAcceptedFlexboxProps } from '../native-base/acceptable-native-base-props';\nimport type { TypographyTypeConfig } from '../themes/late-ocean/typography';\nimport type { typographyColors } from './typographyColors';\nimport { getTypographyColorValue } from './utils/getTypographyColorValue';\nimport { isTypeHeader } from './utils/isTypeHeader';\nimport { isTypographyHeader } from './utils/isTypographyHeader';\n\nexport type TypographyColor = (typeof typographyColors)[number];\n\n// eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents\nexport type ExtendedTypographyColor = TypographyColor | NonNullable<ITextProps['color']> | string;\n\nexport type TypographyHeaderType = `header${'1' | '2' | '3' | '4' | '5'}`;\nexport type TypographyBodyType = 'body' | `body-${'large' | 'medium' | 'small' | 'xsmall'}`;\nexport type TypographyType = TypographyHeaderType | TypographyBodyType;\ntype TypographyVariant = 'regular' | 'bold';\n\nconst IsHeaderTypographyContext = createContext<boolean | undefined>(undefined);\nconst TypographyColorContext = createContext<ExtendedTypographyColor>('black');\n\nexport function useTypographyColor(): ExtendedTypographyColor {\n return useContext(TypographyColorContext);\n}\n\nconst TypographyDefaultColorContext = createContext<ExtendedTypographyColor | undefined>(undefined);\n\nfunction useTypographyDefaultColor(): ExtendedTypographyColor | undefined {\n return useContext(TypographyDefaultColorContext);\n}\n\nexport function getTypographyTypeConfigKeyFromTypeName(\n breakpointName: KittBreakpointNameEnum,\n): keyof TypographyTypeConfig {\n return breakpointName === KittBreakpointNameEnum.BASE || breakpointName === KittBreakpointNameEnum.SMALL\n ? 'baseAndSmall'\n : 'mediumAndWide';\n}\n\nexport type TypographyBreakpointType = Partial<KittResponsiveProp<TypographyType>>;\n\ntype NativeBaseTextPropsAcceptedProps = Pick<\n ITextProps,\n | keyof Except<TextProps, 'accessibilityRole'>\n | 'textAlign'\n | 'textTransform'\n | 'underline'\n | NativeBaseAcceptedFlexboxProps\n> &\n Pick<TextStyle, 'cursor' | 'transitionProperty' | 'transitionDuration' | 'transitionTimingFunction'>;\n// TODO[native-base@>=3.4.19] this currently does not work. Retest when updating native-base.\n// & {\n// _active?: Pick<NativeBaseTextPropsAcceptedProps, 'underline'>;\n// _hover?: Pick<NativeBaseTextPropsAcceptedProps, 'underline'>;\n// } ;\n\nexport interface TypographyProps\n extends TypographyBreakpointType,\n NativeBaseTextPropsAcceptedProps,\n Pick<PlatformProps<NativeBaseTextPropsAcceptedProps>, '_android' | '_ios' | '_web'> {\n type?: TypographyBreakpointType;\n // Find mapping for web here: https://www.w3.org/TR/html-aria/\n accessibilityRole: NonNullable<TextProps['accessibilityRole']> | 'paragraph' | null;\n /** Default to regular for bodies and bold of headers. Is not inherited. */\n variant?: TypographyVariant;\n /** Inherited from parent Typography if not specified, or black if no Typography parent found. */\n color?: ExtendedTypographyColor;\n children: ReactNode;\n}\nexport type TypographyPropsWithoutRole = Except<TypographyProps, 'accessibilityRole'>;\n\nexport function createNativeBaseFontSize(type: TypographyBreakpointType): ITextProps['fontSize'] {\n const typeWithMediumForced = {\n ...type,\n medium: type.medium || type.small || type.base,\n };\n\n const fontSizeForNativeBase: ITextProps['fontSize'] = {};\n [\n KittBreakpointNameEnum.BASE,\n KittBreakpointNameEnum.SMALL,\n KittBreakpointNameEnum.MEDIUM,\n KittBreakpointNameEnum.LARGE,\n KittBreakpointNameEnum.WIDE,\n ].forEach((typeName) => {\n const value = typeWithMediumForced[typeName];\n if (value) {\n fontSizeForNativeBase[typeName] = `${getTypographyTypeConfigKeyFromTypeName(typeName)}.${value}`;\n }\n });\n\n return fontSizeForNativeBase;\n}\n\nexport function Typography({\n accessibilityRole,\n base: legacyBase,\n small: legacySmall,\n medium: legacyMedium,\n large: legacyLarge,\n wide: legacyWide,\n type = { base: legacyBase, small: legacySmall, medium: legacyMedium, large: legacyLarge, wide: legacyWide },\n variant,\n color,\n ...otherProps\n}: TypographyProps): ReactElement | null {\n const sx = useSx();\n\n const isHeaderTypographyInContext = useContext(IsHeaderTypographyContext);\n\n const defaultColor = useTypographyDefaultColor();\n\n const hasTypographyAncestor = isHeaderTypographyInContext !== undefined;\n const baseOrDefaultToBody = hasTypographyAncestor ? type.base : type.base ?? 'body';\n const isHeader = isTypographyHeader(baseOrDefaultToBody, isHeaderTypographyInContext);\n const nonNullableVariant: TypographyVariant = variant ?? (isHeader ? 'bold' : 'regular');\n\n const fontSizeForNativeBase = createNativeBaseFontSize({ ...type, base: baseOrDefaultToBody });\n\n const currentColor = !color && !hasTypographyAncestor ? defaultColor : color;\n\n const colorStyles = sx({\n color: getTypographyColorValue(currentColor),\n textDecorationColor: getTypographyColorValue(currentColor),\n });\n\n if (process.env.NODE_ENV !== 'production') {\n Object.entries(type).forEach(([key, value]) => {\n if (value && isTypeHeader(value) !== isHeader) {\n throw new Error(\n `Invalid value for \"${key}\": \"${value}\" is ${isHeader ? 'not' : ''} an header. Don't mix headers and bodies.`,\n );\n }\n });\n }\n\n const text = (\n <NBText\n accessibilityRole={(accessibilityRole as TextProps['accessibilityRole']) || undefined}\n fontSize={fontSizeForNativeBase}\n lineHeight={hasTypographyAncestor ? undefined : fontSizeForNativeBase}\n fontWeight={isHeader ? `headers.${nonNullableVariant}` : `bodies.${nonNullableVariant}`}\n fontFamily={isHeader ? `headers.${nonNullableVariant}` : `bodies.${nonNullableVariant}`}\n {...colorStyles}\n {...otherProps}\n />\n );\n\n const content = baseOrDefaultToBody ? (\n <IsHeaderTypographyContext.Provider value={isHeader}>{text}</IsHeaderTypographyContext.Provider>\n ) : (\n text\n );\n\n return color ? <TypographyColorContext.Provider value={color}>{content}</TypographyColorContext.Provider> : content;\n}\n\nexport type TypographyTextProps = SetOptional<TypographyProps, 'accessibilityRole'>;\nfunction TypographyText(props: TypographyTextProps): ReactElement {\n return <Typography accessibilityRole={null} {...props} />;\n}\n\nfunction TypographyParagraph(props: TypographyTextProps): ReactElement {\n // role 'paragraph' does not exist in native, it's a web feature only.\n return <Typography accessibilityRole={Platform.OS === 'web' ? 'paragraph' : null} {...props} />;\n}\n\nexport type TypographyHeadingProps = TypographyPropsWithoutRole;\n\nconst createHeading = (\n level: number,\n /** @deprecated accessibility and design should be independent */\n defaultBase?: TypographyHeadingProps['base'],\n): FC<TypographyHeadingProps> => {\n // https://github.com/necolas/react-native-web/issues/401\n function TypographyHeading(props: TypographyHeadingProps): ReactElement {\n return <Typography accessibilityRole=\"header\" base={defaultBase} {...props} accessibilityLevel={level} />;\n }\n TypographyHeading.displayName = `TypographyHeading${level}`;\n return TypographyHeading;\n};\n\nTypography.SetDefaultColor = TypographyDefaultColorContext.Provider;\n\nTypography.Text = TypographyText;\nTypography.Paragraph = TypographyParagraph;\nTypography.Header1 = createHeading(1);\nTypography.Header2 = createHeading(2);\nTypography.Header3 = createHeading(3);\nTypography.Header4 = createHeading(4);\nTypography.Header5 = createHeading(5);\nTypography.Header6 = createHeading(6);\n\n/** @deprecated use Typography.Header1 */\nTypography.h1 = createHeading(1, 'header1');\n/** @deprecated use Typography.Header2 */\nTypography.h2 = createHeading(2, 'header2');\n/** @deprecated use Typography.Header3 */\nTypography.h3 = createHeading(3, 'header3');\n/** @deprecated use Typography.Header4 */\nTypography.h4 = createHeading(4, 'header4');\n/** @deprecated use Typography.Header6 */\nTypography.h5 = createHeading(5, 'header5');\n","import type { ReactElement } from 'react';\nimport { cloneElement } from 'react';\nimport type { ViewStyle } from 'react-native';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface IconProps {\n icon: ReactElement;\n size?: ViewProps['size'];\n color: string;\n align?: ViewStyle['alignSelf'];\n testID?: ViewProps['testID'];\n}\n\nexport function Icon({ icon, size = 'kitt.icon.defaultSize', align = 'auto', color }: IconProps): ReactElement {\n const clonedIcon = cloneElement(icon, { color });\n\n return (\n <View color={color} alignSelf={align} size={size}>\n {clonedIcon}\n </View>\n );\n}\n","import { useSx } from 'native-base';\nimport type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport type { IconProps } from '../Icon/Icon';\nimport { Icon } from '../Icon/Icon';\nimport type { SetNonNullable } from '../utils/typeUtils';\nimport type { TypographyProps } from './Typography';\nimport { useTypographyColor } from './Typography';\nimport { getTypographyColorValue } from './utils/getTypographyColorValue';\n\nexport interface TypographyIconProps extends Except<IconProps, 'color'> {\n color?: TypographyProps['color'] | 'inherit';\n}\n\nfunction TypographyIconSpecifiedColor({ color, ...props }: SetNonNullable<TypographyIconProps, 'color'>): ReactElement {\n const sx = useSx();\n\n const colorStyle = sx({\n color: getTypographyColorValue(color),\n });\n\n return <Icon {...props} {...colorStyle} />;\n}\n\nfunction TypographyIconInheritColor(props: TypographyIconProps): ReactElement {\n const color = useTypographyColor();\n\n return <TypographyIconSpecifiedColor color={color} {...props} />;\n}\n\nexport function TypographyIcon({ color, ...props }: TypographyIconProps): ReactElement {\n if (color) {\n return <TypographyIconSpecifiedColor color={color} {...props} />;\n }\n\n return <TypographyIconInheritColor {...props} />;\n}\n","import type { TypographyColor } from '../../typography/Typography';\nimport type { ButtonType, ButtonVariant } from '../Button';\n\nexport const getTextColorByType = (\n type: ButtonType,\n variant: ButtonVariant,\n isHovered: boolean,\n isPressed: boolean,\n): TypographyColor => {\n const isButtonInteractedWith = isHovered || isPressed;\n\n switch (type) {\n case 'primary':\n return variant === 'ghost' ? 'primary' : 'white';\n case 'white':\n return 'white';\n case 'danger':\n return 'danger';\n case 'subtle':\n return isButtonInteractedWith ? 'primary-light' : 'primary';\n case 'subtle-dark':\n return isButtonInteractedWith ? 'black-light' : 'black';\n case 'default':\n return variant === 'ghost' ? 'white' : 'black';\n default:\n return 'black';\n }\n};\n","import type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { TypographyIconProps } from '../typography/TypographyIcon';\nimport { TypographyIcon } from '../typography/TypographyIcon';\nimport type { ButtonProps, ButtonType, ButtonVariant } from './Button';\nimport { getTextColorByType } from './utils/getTextColorByType';\n\ninterface ButtonIconProps {\n icon: NonNullable<ButtonContentProps['icon']>;\n iconPosition: ButtonContentProps['iconPosition'];\n color: TypographyIconProps['color'];\n testID?: string;\n}\n\nfunction ButtonIcon({ icon, color, iconPosition, testID }: ButtonIconProps): ReactElement | null {\n return (\n <View marginRight={iconPosition === 'left' ? 'kitt.2' : 0} marginLeft={iconPosition === 'right' ? 'kitt.2' : 0}>\n <TypographyIcon icon={icon} testID={testID} color={color} />\n </View>\n );\n}\n\ninterface ButtonContentProps extends Except<ButtonProps, 'onPress' | 'disabled' | 'stretch'> {\n isDisabled?: boolean;\n type: NonNullable<ButtonType>;\n variant: NonNullable<ButtonVariant>;\n isHovered: boolean;\n isPressed: boolean;\n isFocused: boolean;\n}\n\ninterface ButtonContentChildrenProps extends Except<ButtonProps, 'onPress' | 'disabled' | 'stretch'> {\n isDisabled?: boolean;\n type: NonNullable<ButtonType>;\n color: TypographyColor;\n}\n\nexport function ButtonContentChildren({\n type,\n icon,\n iconPosition,\n color,\n children,\n}: ButtonContentChildrenProps): ReactElement | null {\n if (__DEV__) {\n if (!(children || icon)) {\n throw new Error('kitt(Button): You should provide at least a children or a icon');\n }\n }\n\n if (!children) {\n return (\n <TypographyIcon\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n icon={icon!}\n color={color}\n />\n );\n }\n\n const buttonIconSharedProps = {\n type,\n iconPosition,\n color,\n };\n\n // Make the multilines case work properly on native - Breaks the web implem\n const sharedNativeStyle = {\n flexShrink: 1,\n };\n\n return (\n <View alignItems=\"center\" justifyContent=\"center\" flexDirection=\"row\">\n {icon && iconPosition === 'left' ? (\n <ButtonIcon {...buttonIconSharedProps} testID=\"button.ButtonContent.leftButtonIcon\" icon={icon} />\n ) : null}\n\n <Typography.Text\n /* On native code, this is the only way to ensure that the text is centered */\n textAlign=\"center\"\n _android={sharedNativeStyle}\n _ios={sharedNativeStyle}\n base=\"body\"\n variant=\"bold\"\n color={color}\n >\n {children}\n </Typography.Text>\n\n {icon && iconPosition === 'right' ? <ButtonIcon {...buttonIconSharedProps} icon={icon} /> : null}\n </View>\n );\n}\n\nexport function ButtonContent({\n type,\n variant,\n isDisabled,\n icon,\n children,\n isHovered,\n isPressed,\n isFocused,\n ...props\n}: ButtonContentProps): ReactElement {\n const color = isDisabled ? 'black-light' : getTextColorByType(type, variant, isHovered, isPressed);\n\n return (\n <View\n _web={{\n // Make the multilines case work properly on web\n // We don't apply those styles on native because it will break\n flexGrow: 0,\n flexShrink: 1,\n flexBasis: 'auto',\n }}\n >\n <ButtonContentChildren icon={icon} type={type} isDisabled={isDisabled} color={color} {...props}>\n {children}\n </ButtonContentChildren>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { ButtonTheme } from '../themes/late-ocean/button';\nimport type { ButtonSize } from './Button';\n\ninterface GetCurrentPaddingConfigParams {\n size?: ButtonSize;\n isDisabled?: boolean;\n}\n\nfunction getCurrentPaddingConfig({ size, isDisabled }: GetCurrentPaddingConfigParams): keyof ButtonTheme['padding'] {\n if (size === 'large') return 'large';\n if (size === 'xLarge') return 'xLarge';\n if (isDisabled) return 'disabled';\n\n return 'default';\n}\n\ninterface ButtonPaddingProps {\n children: ReactNode;\n size?: ButtonSize;\n isDisabled?: boolean;\n}\n\nexport function ButtonPadding({ children, size, isDisabled }: ButtonPaddingProps): ReactElement {\n const currentPaddingKey = getCurrentPaddingConfig({ size, isDisabled });\n\n return (\n <View\n position=\"relative\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"center\"\n paddingX={`kitt.button.padding.${currentPaddingKey}.horizontal`}\n paddingY={`kitt.button.padding.${currentPaddingKey}.vertical`}\n minHeight=\"kitt.button.minHeight\"\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { View } from '../native-base/primitives';\n\nexport function DisabledBorder(): ReactElement {\n return (\n <View\n position=\"absolute\"\n top={0}\n left={0}\n right={0}\n bottom={0}\n borderWidth=\"kitt.button.borderWidth.disabled\"\n borderColor=\"kitt.button.disabled.default.borderColor\"\n borderRadius=\"kitt.button.borderRadius\"\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ButtonType, ButtonVariant } from './Button';\n\ninterface FocusBorderProps {\n type: ButtonType;\n variant: ButtonVariant;\n isFocused?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n}\n\nexport function FocusBorder({ type, variant, isFocused, isHovered, isPressed }: FocusBorderProps): ReactElement {\n const {\n kitt: { button: buttonTheme },\n } = useTheme();\n\n const hasPointerInteraction = isPressed || isHovered;\n\n return (\n <View\n _web={{\n style: {\n width: `calc(100% + ${buttonTheme.borderWidth.focus * 2}px)`,\n height: `calc(100% + ${buttonTheme.borderWidth.focus * 2}px)`,\n transitionProperty: 'opacity',\n transitionDuration: buttonTheme.transition.duration,\n transitionTimingFunction: buttonTheme.transition.timingFunction,\n },\n }}\n opacity={isFocused && !hasPointerInteraction ? 1 : 0}\n position=\"absolute\"\n left={-buttonTheme.borderWidth.focus}\n top={-buttonTheme.borderWidth.focus}\n borderWidth=\"kitt.button.borderWidth.focus\"\n borderColor={`kitt.button.${type}.${variant}.focusBorderColor`}\n borderRadius=\"kitt.button.borderRadius\"\n />\n );\n}\n","import type { NativeAnimation, UseNativeAnimationOptions } from './useNativeAnimation';\n\nexport function useNativeAnimation(options: UseNativeAnimationOptions): NativeAnimation {\n return {\n onPressIn: undefined,\n onPressOut: undefined,\n animatedStyles: {},\n };\n}\n","import type { ButtonProps } from '../Button';\n\nexport const getButtonSize = ({ large, xLarge, size }: Partial<ButtonProps>): ButtonProps['size'] => {\n if (large) return 'large';\n if (xLarge) return 'xLarge';\n return size;\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { PressableProps } from 'react-native';\nimport type { View } from '../native-base/primitives';\nimport { Pressable } from '../native-base/primitives';\nimport type { ResponsiveValue } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { deprecatedInComponent } from '../utils/warnings';\nimport { AnimatedContainer } from './AnimatedContainer';\nimport { ButtonContent } from './ButtonContent';\nimport { ButtonPadding } from './ButtonPadding';\nimport { DisabledBorder } from './DisabledBorder';\nimport { FocusBorder } from './FocusBorder';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\nimport { getButtonSize } from './utils/getButtonSize';\n\nexport type SubtleButtonType = 'subtle' | 'subtle-dark';\nexport type ButtonType = 'primary' | 'default' | SubtleButtonType | 'white' | 'danger';\nexport type ButtonSize = 'large' | 'xLarge';\nexport type ButtonVariant = 'default' | 'ghost';\n\ntype IconPosition = 'right' | 'left';\n\nconst allowedGhostTypes = ['primary', 'default', 'danger'];\n\nexport interface ButtonProps {\n children?: ReactNode;\n type?: ButtonType;\n variant?: ButtonVariant;\n disabled?: boolean;\n stretch?: ResponsiveValue<boolean | undefined>;\n /**\n * @deprecated use `size` instead\n */\n large?: boolean;\n /**\n * @deprecated use `size` instead\n */\n xLarge?: boolean;\n size?: ButtonSize;\n icon?: ReactElement;\n iconPosition?: IconPosition;\n testID?: PressableProps['testID'];\n href?: PressableProps['href'];\n hrefAttrs?: PressableProps['hrefAttrs'];\n accessibilityRole?: PressableProps['accessibilityRole'];\n /**\n * @deprecated props className is not supported\n */\n className?: string;\n style?: PressableProps['style'];\n /** @internal for story purpose */\n isHoveredInternal?: boolean;\n /** @internal for story purpose */\n isPressedInternal?: boolean;\n /** @internal for story purpose */\n isFocusedInternal?: boolean;\n onPress?: PressableProps['onPress'];\n}\n\nexport const Button = forwardRef<typeof View, ButtonProps>(\n (\n {\n children,\n type = 'default',\n variant = 'default',\n disabled,\n stretch,\n large,\n xLarge,\n icon,\n size: sizeProp,\n iconPosition = 'left',\n testID,\n href,\n hrefAttrs,\n accessibilityRole = 'button',\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onPress,\n }: ButtonProps,\n ref,\n ): ReactElement => {\n const { onPressIn, onPressOut, animatedStyles } = useNativeAnimation({\n type,\n variant,\n });\n\n if (__DEV__ && variant === 'ghost' && !allowedGhostTypes.includes(type)) {\n throw new Error('variant=ghost is only allowed with type=primary or default');\n }\n\n if (large || xLarge) {\n const deprecatedProp = large ? 'large' : 'xLarge';\n deprecatedInComponent('Button', `${deprecatedProp} prop`, 'size');\n }\n\n const size = getButtonSize({ large, xLarge, size: sizeProp });\n\n return (\n <Pressable\n ref={ref}\n disabled={disabled}\n accessibilityRole={accessibilityRole}\n testID={testID}\n href={href}\n hrefAttrs={hrefAttrs}\n /* Emulate inline-* css display by making the button taking only its necessary space */\n alignSelf={createResponsiveStyleFromProp(stretch, undefined, 'flex-start')}\n minWidth=\"kitt.button.minWidth\"\n maxWidth={createResponsiveStyleFromProp(stretch, '100%', 'kitt.button.maxWidth')}\n width={createResponsiveStyleFromProp(stretch, '100%', 'auto')}\n onPress={onPress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <AnimatedContainer\n animatedStyles={animatedStyles}\n type={type}\n isHovered={isHovered || isHoveredInternal}\n isPressed={isPressed || isPressedInternal}\n disabled={!!disabled}\n variant={variant}\n isStretch={stretch}\n >\n <ButtonPadding size={size} isDisabled={disabled}>\n <ButtonContent\n type={type}\n variant={variant}\n isDisabled={disabled}\n icon={icon}\n iconPosition={iconPosition}\n isHovered={isHovered}\n isPressed={isPressed}\n isFocused={isFocused}\n >\n {children}\n </ButtonContent>\n {disabled ? <DisabledBorder /> : null}\n <FocusBorder\n type={type}\n variant={variant}\n isFocused={isFocused || isFocusedInternal}\n isHovered={isHovered}\n isPressed={isPressed}\n />\n </ButtonPadding>\n </AnimatedContainer>\n )}\n </Pressable>\n );\n },\n);\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { cloneElement } from 'react';\nimport type { SpinningIconProps } from './SpinningIcon';\n\nconst spinningIcon = css`\n display: inline-flex;\n\n & > svg {\n animation: spin 1.1s infinite linear;\n }\n\n @keyframes spin {\n 0% {\n transform: rotate(-1deg);\n }\n\n 100% {\n transform: rotate(359deg);\n }\n }\n`;\n\nexport function SpinningIcon({ icon, color }: SpinningIconProps): ReactElement {\n const clonedIcon = cloneElement(icon, { color });\n return <div className={spinningIcon}>{clonedIcon}</div>;\n}\n","import { ArcIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport type { SpinningIconProps } from '../Icon/SpinningIcon';\nimport { SpinningIcon } from '../Icon/SpinningIcon';\n\nexport interface LoaderIconProps {\n color?: SpinningIconProps['color'];\n}\n\nexport function LoaderIcon({ color }: LoaderIconProps): ReactElement {\n return <SpinningIcon color={color} icon={<ArcIcon />} />;\n}\n","import type { ComponentProps, ElementType, ReactElement, VoidFunctionComponent } from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport type { ButtonProps } from '../Button/Button';\nimport { LoaderIcon } from '../LoaderIcon/LoaderIcon';\nimport { View } from '../native-base/primitives';\n\ninterface ActionsItemMinimumRequiredProps extends Pick<ButtonProps, 'onPress'> {}\n\nexport interface ActionsItemProps<C extends VoidFunctionComponent<any>> {\n readonly onPress?: (\n e: Parameters<NonNullable<ButtonProps['onPress']>>[0],\n // eslint-disable-next-line @typescript-eslint/no-invalid-void-type\n ) => Promise<void | undefined | null> | void | undefined | null;\n readonly as: C;\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-types\ntype ActionsItemSendableComponentProps<C extends VoidFunctionComponent<any>> = Omit<\n ComponentProps<C>,\n keyof ActionsItemProps<C> & keyof ActionsItemMinimumRequiredProps\n>;\n\nexport function ActionsItem<C extends VoidFunctionComponent<any>>({\n as,\n onPress,\n disabled,\n icon,\n stretch = { base: true, medium: false },\n ...props\n}: ActionsItemProps<C> & ActionsItemSendableComponentProps<C>): ReactElement {\n const [isLoading, setIsLoading] = useState(false);\n const mountedRef = useRef(false);\n\n // effect just for tracking mounted state, as onPress can unmount the ActionButton\n useEffect(() => {\n mountedRef.current = true;\n return () => {\n mountedRef.current = false;\n };\n }, []);\n\n const handlePress: ButtonProps['onPress'] = (e) => {\n const callPressAndUpdateLoadingState = async (): Promise<void> => {\n if (!onPress) return;\n setIsLoading(true);\n try {\n await onPress(e);\n if (mountedRef.current) {\n setIsLoading(false);\n }\n } catch (error) {\n if (mountedRef.current) {\n setIsLoading(false);\n }\n throw error;\n }\n };\n\n callPressAndUpdateLoadingState();\n };\n\n const Component: ElementType = as;\n\n return (\n <View>\n <Component\n {...props}\n stretch={stretch}\n disabled={isLoading ? true : disabled}\n icon={isLoading ? <LoaderIcon /> : icon}\n onPress={handlePress}\n />\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ButtonProps } from '../Button/Button';\nimport { Button } from '../Button/Button';\nimport type { ActionsItemProps } from './ActionsItem';\nimport { ActionsItem } from './ActionsItem';\n\nexport interface ActionsButtonProps\n extends Except<ButtonProps, 'onPress'>,\n Pick<ActionsItemProps<typeof Button>, 'onPress'> {}\n\nexport function ActionsButton({ ...props }: ActionsButtonProps): ReactElement {\n return <ActionsItem as={Button} {...props} />;\n}\n","import type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport { Stack } from '../native-base/layout';\nimport type { StackProps } from '../native-base/layout';\nimport type { ResponsiveValue } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { ActionsButton } from './ActionsButton';\nimport { ActionsItem } from './ActionsItem';\n\ntype ActionsLayout = 'column' | 'row';\n\nfunction getCurrentLayout(layout: ActionsLayout | undefined): StackProps['alignItems'] {\n if (!layout) return { base: 'stretch', medium: 'center' };\n\n if (layout === 'column') return 'stretch';\n\n return 'center';\n}\n\nfunction getCurrentDirection(layout: ActionsLayout | undefined): StackProps['direction'] {\n if (!layout) return { base: 'column', medium: 'row' };\n\n if (layout === 'column') return 'column';\n\n return 'row';\n}\n\nfunction getCurrentAlignSelf(layout: ActionsLayout | undefined): StackProps['alignSelf'] {\n if (!layout) return { base: 'stretch', medium: undefined };\n\n if (layout === 'column') return 'stretch';\n\n return undefined;\n}\n\nexport interface ActionsProps extends Except<StackProps, 'space' | 'reversed'> {\n layout?: ActionsLayout;\n reversed?: ResponsiveValue<boolean | undefined>;\n}\n\nexport function Actions({ children, layout, reversed, ...props }: ActionsProps): ReactElement {\n const currentAlignItems = getCurrentLayout(layout);\n const currentDirection = getCurrentDirection(layout);\n const currentAlignSelf = getCurrentAlignSelf(layout);\n\n return (\n <Stack\n alignItems={currentAlignItems}\n alignSelf={currentAlignSelf}\n direction={currentDirection}\n flexGrow={1}\n reversed={!!createResponsiveStyleFromProp(reversed, true, false)}\n {...props}\n space=\"kitt.3\"\n >\n {children}\n </Stack>\n );\n}\n\nActions.Button = ActionsButton;\nActions.Item = ActionsItem;\n","import { defaultAvatarSize, largeAvatarSize } from '../../themes/late-ocean/avatar';\nimport type { AvatarSizeVariant } from '../Avatar';\n\ninterface GetCurrentRadiusParams {\n size?: number;\n sizeVariant?: AvatarSizeVariant;\n round?: boolean;\n}\n\nexport function getCurrentRadius({ size, sizeVariant, round }: GetCurrentRadiusParams): string | number {\n if (round) {\n if (size) return size * 0.5;\n\n if (sizeVariant === 'large') return largeAvatarSize * 0.5;\n\n return defaultAvatarSize * 0.5;\n }\n\n if (sizeVariant === 'large') return 'kitt.avatar.large.borderRadius';\n\n return 'kitt.avatar.borderRadius';\n}\n","import type { AvatarSizeVariant } from '../Avatar';\n\ninterface GetCurrentSizeParams {\n size?: number;\n sizeVariant?: AvatarSizeVariant;\n}\n\nexport function getCurrentSize({ size, sizeVariant }: GetCurrentSizeParams): string | number {\n if (size) return size;\n\n if (sizeVariant === 'large') return 'kitt.avatar.large.size';\n\n return 'kitt.avatar.size';\n}\n","import { defaultAvatarIconSize, largeAvatarIconSize } from '../../themes/late-ocean/avatar';\nimport type { AvatarSizeVariant } from '../Avatar';\n\nexport function getIconSize(size: string | number, sizeVariant?: AvatarSizeVariant): number {\n if (typeof size === 'number') return size * 0.5;\n\n if (sizeVariant === 'large') return largeAvatarIconSize;\n\n return defaultAvatarIconSize;\n}\n","export function getInitials(firstname: string, lastname: string): string {\n return `${firstname[0]}${lastname[0]}`.toUpperCase();\n}\n","import { UserIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { Icon } from '../Icon/Icon';\nimport { Image, View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { getCurrentRadius } from './utils/getCurrentRadius';\nimport { getCurrentSize } from './utils/getCurrentSize';\nimport { getIconSize } from './utils/getIconSize';\nimport { getInitials } from './utils/getInitials';\n\nexport type AvatarSizeVariant = 'large';\n\ninterface AvatarContentProps extends Omit<AvatarProps, 'light' | 'round' | 'size'> {\n size: string | number;\n isLight?: boolean;\n sizeVariant?: AvatarSizeVariant;\n}\n\nfunction AvatarContent({\n size,\n src,\n firstname,\n lastname,\n alt,\n isLight,\n sizeVariant,\n}: AvatarContentProps): ReactElement {\n if (src) {\n return <Image source={{ uri: src }} width={size} height={size} alt={alt} accessibilityLabel={alt} />;\n }\n\n if (firstname && lastname) {\n return (\n <Typography.Text\n base={sizeVariant === 'large' ? 'body-large' : 'body-small'}\n variant={sizeVariant === 'large' ? 'bold' : 'regular'}\n color={isLight ? 'black' : 'white'}\n >\n {getInitials(firstname, lastname)}\n </Typography.Text>\n );\n }\n\n return <Icon icon={<UserIcon />} color={isLight ? 'black' : 'white'} size={getIconSize(size, sizeVariant)} />;\n}\n\nexport interface AvatarProps {\n size?: number;\n src?: string;\n alt?: string;\n firstname?: string | null;\n lastname?: string | null;\n round?: boolean;\n light?: boolean;\n sizeVariant?: AvatarSizeVariant;\n}\n\nexport function Avatar({ size, round, light, sizeVariant, ...props }: AvatarProps): ReactElement {\n const currentSize = getCurrentSize({ size, sizeVariant });\n const currentBorderRadius = getCurrentRadius({ size, sizeVariant, round });\n\n return (\n <View\n overflow=\"hidden\"\n alignItems=\"center\"\n justifyContent=\"center\"\n width={currentSize}\n height={currentSize}\n borderRadius={currentBorderRadius}\n backgroundColor={`kitt.avatar.${light ? 'light' : 'default'}.backgroundColor`}\n >\n <AvatarContent size={currentSize} isLight={light} sizeVariant={sizeVariant} {...props} />\n </View>\n );\n}\n","import type { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';\nimport type { ForwardRefExoticComponent, RefAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport type { BottomSheetProps } from './BottomSheet';\n\nfunction BottomSheetComponent(): null {\n // noop\n return null;\n}\n\nexport const BottomSheet = forwardRef(BottomSheetComponent) as ForwardRefExoticComponent<\n Pick<BottomSheetProps, 'children' | 'hasScrollView' | 'hasHandle' | 'hasBackdrop'> &\n RefAttributes<BottomSheetModalMethods>\n> & { View: () => void };\n\nBottomSheet.View = function View(): null {\n return null;\n};\n","import type { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';\nimport type { RefObject } from 'react';\nimport { useRef } from 'react';\n\nexport function useBottomSheet(): RefObject<BottomSheetModalMethods> {\n const ref = useRef<BottomSheetModalMethods>(null);\n\n return ref;\n}\n","import type { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';\nimport type { ComponentType, ElementType, ReactElement, RefObject } from 'react';\nimport { useMemo, useRef } from 'react';\nimport type { BottomSheetProps } from './BottomSheet';\nimport { BottomSheet } from './BottomSheet';\n\ninterface BottomSheetRef<T> extends BottomSheetModalMethods {\n present: (bottomSheetComponenProps: T) => void;\n}\n\ntype ReducedBottomSheetProps = Pick<BottomSheetProps, 'hasScrollView'>;\n\n// This is used to fix:\n// React.ComponentProps<O> -> if O is a function component without any props it will return unknown but we want to have undefined\ntype IsExact<T, U> = [T] extends [U] ? ([U] extends [T] ? true : false) : false;\n\ntype BottomSheetComponentProps<O extends ElementType> = IsExact<React.ComponentProps<O>, unknown> extends true\n ? undefined\n : React.ComponentProps<O>;\n\nexport function useStaticBottomSheet<T extends ComponentType<P>, P>(\n Content: T,\n): {\n bottomSheetRef: RefObject<BottomSheetRef<BottomSheetComponentProps<T>>>;\n BottomSheet: (props: ReducedBottomSheetProps) => ReactElement;\n} {\n const bottomSheetRef = useRef<BottomSheetRef<BottomSheetComponentProps<T>>>(null);\n\n const BottomSheetMemoized = useMemo(\n () =>\n function renderBottomSheet(props: ReducedBottomSheetProps) {\n return (\n <BottomSheet<P> {...props} ref={bottomSheetRef}>\n {Content}\n </BottomSheet>\n );\n },\n [Content],\n );\n\n return {\n bottomSheetRef,\n BottomSheet: BottomSheetMemoized,\n };\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { useEffect } from 'react';\nimport { Portal } from 'react-portal';\nimport type { ModalBehaviourPortalProps } from './ModalBehaviourPortal';\n\nconst overflowHidden = css`\n overflow: hidden;\n`;\n\nfunction useBlockBodyScroll(isScrollBlocked: boolean): void {\n useEffect(() => {\n if (isScrollBlocked) {\n document.body.classList.add(overflowHidden);\n } else {\n document.body.classList.remove(overflowHidden);\n }\n\n return () => {\n document.body.classList.remove(overflowHidden);\n };\n }, [isScrollBlocked]);\n}\n\nexport function ModalBehaviourPortal({ visible, children }: ModalBehaviourPortalProps): ReactElement {\n useBlockBodyScroll(Boolean(visible));\n\n // eslint-disable-next-line react/jsx-no-useless-fragment -- Portal propTypes define a required children, preventing a null children value\n return <Portal>{children || <></>}</Portal>;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext, useContext } from 'react';\n\ntype OnCloseCallback = () => void;\n\nexport const OnCloseContext = createContext<OnCloseCallback>(() => {});\n\ninterface OnCloseProviderProps {\n children: ReactNode;\n onClose: OnCloseCallback;\n}\n\nexport function OnCloseProvider({ children, onClose }: OnCloseProviderProps): ReactElement {\n return <OnCloseContext.Provider value={onClose}>{children}</OnCloseContext.Provider>;\n}\n\nexport function useOnCloseModalBehaviour(): OnCloseCallback {\n const onClose = useContext(OnCloseContext);\n return onClose;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { cloneElement } from 'react';\nimport { View } from '../native-base/primitives';\nimport { ModalBehaviourPortal } from './ModalBehaviourPortal';\nimport { OnCloseProvider, useOnCloseModalBehaviour } from './OnCloseContext';\n\ninterface CloseButtonProps {\n children: ReactElement;\n onPress?: () => void;\n}\n\nfunction CloseButton({ children, onPress }: CloseButtonProps): ReactElement {\n const onCloseContextCallback = useOnCloseModalBehaviour();\n\n const handleClose = (): void => {\n if (onPress) onPress();\n onCloseContextCallback();\n };\n\n return cloneElement(children, { onPress: handleClose });\n}\n\nexport interface ModalBehaviourProps {\n children: ReactNode;\n visible?: boolean;\n onClose: () => void;\n}\n\nexport function ModalBehaviour({ children, visible, onClose }: ModalBehaviourProps): ReactElement {\n return (\n <OnCloseProvider onClose={onClose}>\n <ModalBehaviourPortal visible={visible}>\n {visible ? (\n <View\n _web={{\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n }}\n >\n {children}\n </View>\n ) : null}\n </ModalBehaviourPortal>\n </OnCloseProvider>\n );\n}\n\nModalBehaviour.CloseButton = CloseButton;\n","import type { ReactElement } from 'react';\nimport type { PressableProps } from 'react-native';\nimport { Pressable } from '../native-base/primitives';\n\ninterface OverlayProps extends Pick<PressableProps, 'onPress'> {}\n\nexport function Overlay({ onPress }: OverlayProps): ReactElement {\n return (\n <Pressable\n accessibilityRole=\"none\"\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n right=\"0\"\n bottom=\"0\"\n backgroundColor=\"kitt.overlay.dark\"\n onPress={onPress}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\n\ninterface CardModalRotationContainerProps extends ViewProps {}\n\nexport function CardModalRotationContainer(props: CardModalRotationContainerProps): ReactElement {\n return (\n <View\n paddingX=\"kitt.cardModal.overlayPadding.horizontal\"\n paddingY=\"kitt.cardModal.overlayPadding.vertical\"\n maxWidth=\"kitt.cardModal.maxWidthWithPadding\"\n width=\"100%\"\n {...props}\n />\n );\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { useTheme } from '../../KittThemeContext';\nimport { Overlay } from '../../Overlay/Overlay';\nimport { View } from '../../native-base/primitives';\nimport {\n webAnimationContentDuration,\n webAnimationContentEasing,\n webAnimationOverlayDuration,\n webAnimationOverlayEasing,\n} from '../../themes/late-ocean/cardModal';\nimport type { CardModalAnimationProps } from './CardModalAnimation';\nimport { CardModalRotationContainer } from './CardModalRotationContainer';\n\nconst [x1, y1, x2, y2] = webAnimationContentEasing;\n\nconst cubicBezierSlideIn = `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;\n\nconst contentAnimationEnter = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n`;\n\nconst contentAnimatioEnterActive = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimatioExit = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n`;\n\nconst contentAnimatioExitActive = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimationClassNames = {\n appear: contentAnimationEnter,\n appearActive: contentAnimatioEnterActive,\n enter: contentAnimationEnter,\n enterActive: contentAnimatioEnterActive,\n exit: contentAnimatioExit,\n exitActive: contentAnimatioExitActive,\n};\n\nconst [xA, yA, xB, yB] = webAnimationOverlayEasing;\n\nconst cubicBezierOverlayEasing = `cubic-bezier(${xA}, ${yA}, ${xB}, ${yB})`;\n\nconst opacityEnter = css`\n opacity: 0;\n`;\n\nconst opacityEnterActive = css`\n opacity: 1;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityExit = css`\n opacity: 1;\n`;\n\nconst opacityExitActive = css`\n opacity: 0;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityClassNames = {\n appear: opacityEnter,\n appearActive: opacityEnterActive,\n enter: opacityEnter,\n enterActive: opacityEnterActive,\n exit: opacityExit,\n exitActive: opacityExitActive,\n};\n\nexport function CardModalAnimation({\n children,\n appear = true,\n visible,\n unmountOnExit = true,\n isAnimationEnabled = true,\n onEnter,\n onEntered,\n onExit,\n onExited,\n onClose,\n ...props\n}: CardModalAnimationProps): ReactElement {\n const theme = useTheme();\n const { animation } = theme.kitt.cardModal;\n\n const sharedProps = {\n in: visible,\n appear,\n unmountOnExit,\n };\n\n return (\n <View {...props} height=\"100%\" justifyContent=\"center\">\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.overlay.duration : 0}\n classNames={opacityClassNames}\n >\n <Overlay onPress={onClose} />\n </CSSTransition>\n\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.content.duration : 0}\n classNames={contentAnimationClassNames}\n onEnter={onEnter}\n onEntered={onEntered}\n onExit={onExit}\n onExited={onExited}\n >\n <CardModalRotationContainer alignItems=\"center\" margin=\"auto\">\n {children}\n </CardModalRotationContainer>\n </CSSTransition>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport { Platform } from 'react-native';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport { ScrollView, View } from '../native-base/primitives';\nimport type { ScrollViewProps } from '../native-base/primitives';\nimport type { CardModalAnimationProps } from './CardModalAnimation/CardModalAnimation';\nimport { CardModalAnimation } from './CardModalAnimation/CardModalAnimation';\n\ninterface ScrollContainerProps extends ScrollViewProps {}\n\nexport function CardModalScrollContainer({ children, ...props }: ScrollContainerProps): ReactElement {\n if (Platform.OS !== 'web') {\n return <View>{children}</View>;\n }\n\n return <ScrollView {...props}>{children}</ScrollView>;\n}\n\nexport interface CardModalBehaviourProps extends CardModalAnimationProps {\n onClose: ModalBehaviourProps['onClose'];\n}\n\nexport function CardModalBehaviour({\n children,\n visible,\n onClose,\n onExited,\n ...props\n}: CardModalBehaviourProps): ReactElement {\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <CardModalScrollContainer bounces={false} contentContainerStyle={{ flexGrow: 1 }}>\n <CardModalAnimation {...props} visible={visible} onExited={handleExitAnimationDone} onClose={onClose}>\n {children}\n </CardModalAnimation>\n </CardModalScrollContainer>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface CardModalBodyProps extends ViewProps {\n children: NonNullable<ReactNode>;\n}\n\nexport function CardModalBody({\n children,\n paddingX = { base: 'kitt.4', medium: 'kitt.6' },\n paddingY = 'kitt.4',\n ...props\n}: CardModalBodyProps): ReactElement {\n return (\n <View paddingX={paddingX} paddingY={paddingY} {...props}>\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface CardModalFooterProps extends ViewProps {\n hasSeparator?: boolean;\n}\n\nexport function CardModalFooter({\n children,\n padding = { base: 'kitt.4', medium: 'kitt.2' },\n hasSeparator = true,\n ...props\n}: CardModalFooterProps): ReactElement {\n return (\n <View\n {...props}\n marginTop=\"kitt.2\"\n padding={padding}\n borderTopWidth={hasSeparator ? 'kitt.cardModal.footer.borderWidth' : 0}\n borderColor=\"kitt.separator\"\n alignItems={{ base: undefined, medium: 'flex-end' }}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\n\ninterface BaseHeaderProps extends Except<ViewProps, 'left' | 'right'> {\n hasSeparator?: boolean;\n left?: ReactNode;\n right?: ReactNode;\n}\n\ninterface TitledHeaderProps extends BaseHeaderProps {\n title?: ReactNode;\n children?: never;\n}\n\ninterface ComponentHeaderProps extends BaseHeaderProps {\n title?: never;\n children?: ReactNode;\n}\n\nexport type CardModalHeaderProps = TitledHeaderProps | ComponentHeaderProps;\n\nexport function CardModalHeader({\n children,\n title,\n paddingBottom = { base: 'kitt.4', medium: 'kitt.2' },\n hasSeparator = true,\n right,\n left,\n ...props\n}: CardModalHeaderProps): ReactElement {\n const defaultContainerPadding = { base: 'kitt.4', medium: 'kitt.6' };\n\n return (\n <View\n {...props}\n padding={paddingBottom}\n borderBottomWidth={hasSeparator ? 'kitt.cardModal.footer.borderWidth' : 0}\n borderColor=\"kitt.separator\"\n justifyContent=\"center\"\n width=\"100%\"\n height=\"kitt.cardModal.header.height\"\n paddingRight={right ? 'kitt.2' : defaultContainerPadding}\n paddingLeft={left ? 'kitt.2' : defaultContainerPadding}\n >\n <View alignItems=\"center\" flexDirection=\"row\" justifyContent={!children && !left ? 'flex-end' : 'space-between'}>\n {left ? <View width=\"kitt.iconButton.width\">{left}</View> : null}\n\n <View flexGrow=\"1\" paddingRight={right ? 'kitt.2' : 0} paddingLeft={left ? 'kitt.2' : 0}>\n {title ? (\n <Typography.Text textAlign={!left && right ? 'left' : 'center'} variant=\"bold\">\n {title}\n </Typography.Text>\n ) : null}\n {children}\n </View>\n\n {right ? <View width=\"kitt.iconButton.width\">{right}</View> : null}\n </View>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { CardModalBehaviour } from './CardModalBehaviour';\nimport { CardModalBody } from './CardModalBody';\nimport { CardModalFooter } from './CardModalFooter';\nimport { CardModalHeader } from './CardModalHeader';\n\ninterface BaseCardModalProps extends Except<ViewProps, 'children'> {\n withoutShadow?: boolean;\n}\n\ninterface CardModalWithChildren extends BaseCardModalProps {\n children: ReactNode;\n header?: never;\n footer?: never;\n body?: never;\n}\n\ninterface CardModalWithoutChildren extends BaseCardModalProps {\n children?: never;\n header?: ReactNode;\n footer?: ReactNode;\n body: ReactNode;\n}\n\nexport type CardModalProps = CardModalWithChildren | CardModalWithoutChildren;\n\nexport function CardModal({\n backgroundColor = 'kitt.uiBackgroundLight',\n maxWidth = 'kitt.cardModal.maxWidth',\n withoutShadow,\n children,\n header,\n body,\n footer,\n ...props\n}: CardModalProps): ReactElement {\n return (\n <View\n {...props}\n overflow=\"hidden\"\n backgroundColor={backgroundColor}\n shadow={withoutShadow ? undefined : 'kitt.cardModal.shadow'}\n borderRadius=\"kitt.cardModal.borderRadius\"\n width=\"100%\"\n maxHeight=\"100%\"\n maxWidth={maxWidth}\n >\n {children || (\n <>\n {header || null}\n {body || null}\n {footer || null}\n </>\n )}\n </View>\n );\n}\n\nCardModal.Body = CardModalBody;\nCardModal.Header = CardModalHeader;\nCardModal.Footer = CardModalFooter;\nCardModal.ModalBehaviour = CardModalBehaviour;\n","interface GetBackgroundColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isHovered?: boolean;\n isPressed?: boolean;\n}\n\nexport function getBackgroundColor({ isDisabled, isSelected, isHovered, isPressed }: GetBackgroundColorParams): string {\n if (isDisabled) return 'kitt.choices.item.disabled.backgroundColor';\n\n if (isSelected && isHovered) return 'kitt.choices.item.hoverWhenSelected.backgroundColor';\n\n if (isPressed) return 'kitt.choices.item.pressed.backgroundColor';\n\n if (isHovered) return 'kitt.choices.item.hover.backgroundColor';\n\n if (isSelected) return 'kitt.choices.item.selected.backgroundColor';\n\n return 'kitt.choices.item.default.backgroundColor';\n}\n","import type { ChoiceItemVariant } from '../ChoiceItem';\n\nexport function getBorderRadius(variant?: ChoiceItemVariant): number | string {\n // The clean way to have the rounded effect would have been to know the children height since radius >= height * 0.5\n // We don't control over the height of the rendered children we just go with a arbitrary really high value\n return variant === 'rounded' ? Number.MAX_SAFE_INTEGER : 'kitt.choices.item.borderRadius';\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { AnimatedChoiceItemViewProps } from './AnimatedChoiceItemView';\nimport { getBackgroundColor } from './utils/getBackgroundColor';\nimport { getBorderRadius } from './utils/getBorderRadius';\n\nexport function AnimatedChoiceItemView({\n children,\n variant,\n size,\n isHovered,\n isPressed,\n isDisabled,\n isSelected,\n}: AnimatedChoiceItemViewProps): ReactElement {\n const theme = useTheme();\n\n return (\n <View\n position=\"relative\"\n borderRadius={getBorderRadius(variant)}\n backgroundColor={getBackgroundColor({ isDisabled, isSelected, isHovered, isPressed })}\n paddingX={size === 'small' ? 'kitt.4' : { base: 'kitt.4', small: 'kitt.6' }}\n paddingY={size === 'small' ? 'kitt.2' : { base: 'kitt.4', small: 'kitt.6' }}\n _web={{\n style: {\n transitionProperty: theme.kitt.choices.item.transition.property,\n transitionDuration: `${theme.kitt.choices.item.transition.duration}ms`,\n transitionTimingFunction: theme.kitt.choices.item.transition.timingFunction,\n },\n }}\n >\n {children}\n </View>\n );\n}\n","import type { ViewStyle } from 'react-native';\n\nexport const useNativeAnimation = (): {\n onPressIn: () => void;\n onPressOut: () => void;\n backgroundStyles?: ViewStyle;\n} => {\n return {\n onPressIn: () => {},\n onPressOut: () => {},\n backgroundStyles: undefined,\n };\n};\n","import type { TypographyColor } from '../../typography/Typography';\n\ninterface GetCurrentTextColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n}\n\nexport function getCurrentTextColor({\n isDisabled,\n isSelected,\n isPressed,\n isHovered,\n}: GetCurrentTextColorParams): TypographyColor {\n if (isDisabled) return 'black-light';\n\n if (isSelected && isHovered) return 'white';\n\n if (isSelected || isPressed) return 'white';\n\n return 'black';\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Pressable, View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { AnimatedChoiceItemView } from './AnimatedChoiceItemView';\nimport type { BaseChoicesProps } from './Choices';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\nimport { getBorderRadius } from './utils/getBorderRadius';\nimport { getCurrentTextColor } from './utils/getCurrentTextColor';\n\nexport type ChoiceItemVariant = 'rounded';\nexport type ChoiceItemSize = BaseChoicesProps<null>['size'];\n\nexport type ChoiceItemType = 'button' | 'radio' | 'checkbox' | undefined;\n\nexport interface BaseChoiceItemProps<V> {\n type?: ChoiceItemType;\n children: ReactNode;\n disabled?: boolean;\n variant?: ChoiceItemVariant;\n size?: ChoiceItemSize;\n value?: V;\n selected?: boolean;\n /**\n * @internal Used to display pressed UI for testing and storybook purpose\n */\n isPressedInternal?: boolean;\n /**\n * @internal Used to display hovered UI for testing and storybook purpose\n */\n isHoveredInternal?: boolean;\n onPress?: () => void;\n onChange?: (value?: V) => void;\n onFocus?: (e?: any | GestureResponderEvent) => void;\n onBlur?: (e?: any | GestureResponderEvent) => void;\n}\n\nexport interface ChoiceItemButtonProps<V> extends BaseChoiceItemProps<V> {\n type?: 'button';\n value?: never;\n selected?: never;\n onChange?: never;\n}\n\nexport interface ChoiceItemFormElementProps<V> extends BaseChoiceItemProps<V> {\n type: 'radio' | 'checkbox';\n onPress?: never;\n}\n\nexport type ChoiceItemProps<V> = ChoiceItemButtonProps<V> | ChoiceItemFormElementProps<V>;\n\nexport function ChoiceItem<V>({\n type = 'button',\n value,\n selected,\n disabled,\n variant,\n children,\n isPressedInternal,\n isHoveredInternal,\n onPress,\n onChange,\n onBlur,\n onFocus,\n size,\n}: ChoiceItemProps<V>): ReactElement {\n const { onPressIn, onPressOut, backgroundStyles } = useNativeAnimation({ selected, disabled, isPressedInternal });\n\n const handleChange = (): void => {\n if (!onChange) return;\n\n // Checkbox can be toggled\n if (type === 'checkbox') {\n onChange(selected ? undefined : value);\n return;\n }\n\n onChange(value);\n };\n\n const handlePress = (e: GestureResponderEvent): void => {\n if (onFocus) onFocus(e);\n\n if (onPress) onPress();\n handleChange();\n\n if (onBlur) onBlur(e);\n };\n\n return (\n <Pressable\n disabled={disabled}\n accessibilityRole={type}\n accessibilityState={{ checked: selected }}\n onBlur={onBlur}\n onFocus={onFocus}\n onPress={handlePress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n >\n {({ isHovered, isPressed }) => (\n <AnimatedChoiceItemView\n animatedStyles={backgroundStyles}\n isHovered={isHovered || isHoveredInternal}\n isDisabled={disabled}\n isSelected={selected}\n isPressed={isPressed || isPressedInternal}\n variant={variant}\n size={size}\n >\n <Typography.SetDefaultColor\n value={getCurrentTextColor({\n isDisabled: disabled,\n isSelected: selected || isPressedInternal,\n isPressed,\n isHovered: isHovered || isHoveredInternal,\n })}\n >\n {children}\n </Typography.SetDefaultColor>\n {disabled ? (\n <View\n borderRadius={getBorderRadius(variant)}\n borderWidth=\"kitt.choices.item.disabled.borderWidth\"\n borderColor=\"kitt.choices.item.disabled.borderColor\"\n position=\"absolute\"\n top=\"0\"\n right=\"0\"\n left=\"0\"\n bottom=\"0\"\n />\n ) : null}\n </AnimatedChoiceItemView>\n )}\n </Pressable>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { ChoicesDirection } from './Choices';\n\ninterface ChoiceItemContainerProps {\n children: ReactNode;\n isLast?: boolean;\n direction: ChoicesDirection;\n}\n\nexport function ChoiceItemContainer({ children, direction, isLast }: ChoiceItemContainerProps): ReactElement {\n const currentItemMarginValue = isLast ? undefined : 'kitt.3';\n return (\n <View\n marginRight={direction === 'row' ? currentItemMarginValue : undefined}\n marginBottom={direction === 'column' ? currentItemMarginValue : undefined}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Children, cloneElement, useState } from 'react';\nimport type { ViewProps } from 'react-native';\nimport { ScrollView, View } from 'react-native';\nimport type { Except, SetOptional } from 'type-fest';\nimport type { ChoiceItemButtonProps, ChoiceItemFormElementProps, ChoiceItemType } from './ChoiceItem';\nimport { ChoiceItem } from './ChoiceItem';\nimport { ChoiceItemContainer } from './ChoiceItemContainer';\n\nexport type ChoicesDirection = 'row' | 'column';\n\ninterface ChoicesContainerProps extends ViewProps {\n children: ReactNode;\n direction: ChoicesDirection;\n}\n\nfunction ChoicesContainer({ direction, ...props }: ChoicesContainerProps): ReactElement {\n if (direction === 'row') {\n return <ScrollView horizontal {...props} />;\n }\n\n return <View {...props} />;\n}\n\ntype ChoicesPropsToPick = 'type' | 'variant' | 'disabled' | 'value' | 'onPress' | 'onChange' | 'onBlur' | 'onFocus';\ntype ChoicesSize = 'small';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport interface BaseChoicesProps<V> {\n id?: string;\n testID?: string;\n children: ReactNode;\n direction?: ChoicesDirection;\n size?: ChoicesSize;\n}\n\nexport interface ChoicesButtonProps<V, ChoiceType extends ChoiceItemButtonProps<V>['type']>\n extends BaseChoicesProps<V>,\n Pick<ChoiceItemButtonProps<V>, ChoicesPropsToPick> {\n type?: ChoiceType;\n}\n\nexport interface ChoicesFormElementProps<V, ChoiceType extends ChoiceItemFormElementProps<V>['type']>\n extends BaseChoicesProps<V>,\n Pick<ChoiceItemFormElementProps<V>, ChoicesPropsToPick> {\n type: ChoiceType;\n}\n\nexport type ChoicesItemPropsFromChoiceType<\n V,\n ChoiceType extends ChoiceItemType,\n> = ChoiceType extends ChoiceItemFormElementProps<V>['type'] ? ChoiceItemFormElementProps<V> : ChoiceItemButtonProps<V>;\n\nexport type ChoicesProps<\n V,\n ChoiceType extends ChoiceItemType,\n> = ChoiceType extends ChoiceItemFormElementProps<V>['type']\n ? ChoicesFormElementProps<V, ChoiceType>\n : ChoicesButtonProps<V, 'button'>;\n\ntype ExcludeChoiceItemProvidedByChoices = 'type' | 'onPress' | 'onChange' | 'onFocus' | 'onBlur';\ntype OptionalChoiceItemProvidedByChoices = 'variant' | 'disabled' | 'size';\n\nfunction Choices<V, ChoiceType extends ChoiceItemType>({\n id,\n testID,\n type,\n direction = 'column',\n disabled,\n children,\n value,\n variant,\n onPress,\n onChange,\n onFocus,\n onBlur,\n size,\n}: ChoicesProps<V, ChoiceType>): ReactElement {\n const [currentValue, setCurrentValue] = useState(value);\n\n const isForm = type && ['radio', 'checkbox'].includes(type);\n\n const childrenArray = Children.toArray(children) as ReactElement<\n ChoicesItemPropsFromChoiceType<V, ChoiceType>,\n typeof ChoiceItem\n >[];\n\n const handleChange: ChoicesItemPropsFromChoiceType<V, ChoiceType>['onChange'] = (newValue) => {\n setCurrentValue(newValue);\n if (onChange) onChange(newValue);\n };\n\n const sharedProps: Pick<\n ChoicesItemPropsFromChoiceType<V, ChoiceType>,\n ExcludeChoiceItemProvidedByChoices | OptionalChoiceItemProvidedByChoices\n > = {\n type,\n disabled,\n variant,\n onPress: !isForm ? onPress : undefined,\n onChange: isForm ? handleChange : undefined,\n onFocus,\n onBlur,\n size,\n };\n\n return (\n <ChoicesContainer direction={direction} testID={testID} nativeID={id}>\n {childrenArray.map((child, index) => {\n const element = cloneElement<ChoicesItemPropsFromChoiceType<V, ChoiceType>>(child, {\n selected: isForm ? child.props.value === currentValue : undefined,\n ...sharedProps,\n } as any);\n\n return (\n <ChoiceItemContainer key={child.key} direction={direction} isLast={index === childrenArray.length - 1}>\n {element}\n </ChoiceItemContainer>\n );\n })}\n </ChoicesContainer>\n );\n}\n\nChoices.Item = ChoiceItem;\n\nexport interface CreateChoices<V, ChoiceType extends ChoiceItemType> {\n (props: ChoicesProps<V, ChoiceType>): ReactElement;\n Item: (\n props: SetOptional<\n Except<ChoicesItemPropsFromChoiceType<V, ChoiceType>, OptionalChoiceItemProvidedByChoices>,\n ExcludeChoiceItemProvidedByChoices\n >,\n ) => ReactElement;\n}\n\nexport function createChoicesComponent<V, ChoiceType extends ChoiceItemType>(): CreateChoices<V, ChoiceType> {\n return Choices as CreateChoices<V, ChoiceType>;\n}\n\nconst ButtonChoices = createChoicesComponent<never, 'button'>();\n\nChoices.ButtonChoices = ButtonChoices;\n\nexport const ChoicesElements = {\n Item: ChoiceItem,\n ButtonChoices,\n};\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { useTheme } from '../../KittThemeContext';\nimport { Overlay } from '../../Overlay/Overlay';\nimport { View } from '../../native-base/primitives';\nimport {\n webAnimationContentDuration,\n webAnimationContentEasing,\n webAnimationOverlayDuration,\n webAnimationOverlayEasing,\n} from '../../themes/late-ocean/dialogModal';\nimport type { DialogModalAnimationProps } from './DialogModalAnimation';\n\nconst [x1, y1, x2, y2] = webAnimationContentEasing;\n\nconst cubicBezierSlideIn = `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;\n\nconst contentAnimationEnter = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n`;\n\nconst contentAnimatioEnterActive = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimatioExit = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n`;\n\nconst contentAnimatioExitActive = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimationClassNames = {\n appear: contentAnimationEnter,\n appearActive: contentAnimatioEnterActive,\n enter: contentAnimationEnter,\n enterActive: contentAnimatioEnterActive,\n exit: contentAnimatioExit,\n exitActive: contentAnimatioExitActive,\n};\n\nconst [xA, yA, xB, yB] = webAnimationOverlayEasing;\n\nconst cubicBezierOverlayEasing = `cubic-bezier(${xA}, ${yA}, ${xB}, ${yB})`;\n\nconst opacityEnter = css`\n opacity: 0;\n`;\n\nconst opacityEnterActive = css`\n opacity: 1;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityExit = css`\n opacity: 1;\n`;\n\nconst opacityExitActive = css`\n opacity: 0;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityClassNames = {\n appear: opacityEnter,\n appearActive: opacityEnterActive,\n enter: opacityEnter,\n enterActive: opacityEnterActive,\n exit: opacityExit,\n exitActive: opacityExitActive,\n};\n\nexport function DialogModalAnimation({\n children,\n appear = true,\n visible,\n unmountOnExit = true,\n isAnimationEnabled = true,\n onEnter,\n onEntered,\n onExit,\n onExited,\n onClose,\n ...props\n}: DialogModalAnimationProps): ReactElement {\n const theme = useTheme();\n const { animation } = theme.kitt.dialogModal;\n\n const sharedProps = {\n in: visible,\n appear,\n unmountOnExit,\n };\n\n return (\n <View {...props} height=\"100%\" justifyContent=\"center\">\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.overlay.duration : 0}\n classNames={opacityClassNames}\n >\n <Overlay onPress={onClose} />\n </CSSTransition>\n\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.content.duration : 0}\n classNames={contentAnimationClassNames}\n onEnter={onEnter}\n onEntered={onEntered}\n onExit={onExit}\n onExited={onExited}\n >\n <View\n alignItems=\"center\"\n paddingX=\"kitt.dialogModal.overlayPadding.horizontal\"\n paddingY=\"kitt.dialogModal.overlayPadding.vertical\"\n margin=\"auto\"\n >\n {children}\n </View>\n </CSSTransition>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport { ScrollView } from '../native-base/primitives';\nimport type { DialogModalAnimationProps } from './DialogModalAnimation/DialogModalAnimation';\nimport { DialogModalAnimation } from './DialogModalAnimation/DialogModalAnimation';\n\nexport interface DialogModalBehaviourProps extends DialogModalAnimationProps {\n onClose: ModalBehaviourProps['onClose'];\n}\n\nexport function DialogModalBehaviour({\n children,\n visible,\n onClose,\n onExited,\n ...props\n}: DialogModalBehaviourProps): ReactElement {\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <ScrollView bounces={false} contentContainerStyle={{ flexGrow: 1 }}>\n <DialogModalAnimation {...props} visible={visible} onExited={handleExitAnimationDone} onClose={onClose}>\n {children}\n </DialogModalAnimation>\n </ScrollView>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ActionsButtonProps } from '..';\nimport { Actions } from '../Actions/Actions';\nimport { View } from '../native-base/primitives';\nimport { DialogModalBehaviour } from './DialogModalBehaviour';\n\nexport interface DialogModalProps {\n illustration?: ReactNode;\n actions?: ReactNode;\n title?: ReactNode;\n children: ReactNode;\n}\n\nexport function DialogModal({ illustration, title, children, actions }: DialogModalProps): ReactElement {\n return (\n <View\n alignItems=\"center\"\n maxWidth=\"kitt.dialogModal.maxWidth\"\n backgroundColor=\"kitt.uiBackgroundLight\"\n borderRadius=\"kitt.dialogModal.borderRadius\"\n shadow=\"kitt.dialogModal.shadow\"\n >\n {illustration ? <View>{illustration}</View> : null}\n\n <View\n width=\"100%\"\n alignItems=\"center\"\n padding={{ base: 'kitt.4', medium: 'kitt.6' }}\n paddingTop={illustration ? 'kitt.8' : 'kitt.6'}\n >\n {title ? <View marginBottom=\"kitt.2\">{title}</View> : null}\n\n <View marginBottom=\"kitt.8\">{children}</View>\n\n {actions ? (\n <Actions flex={undefined} width=\"100%\" layout=\"column\">\n {actions}\n </Actions>\n ) : null}\n </View>\n </View>\n );\n}\n\nDialogModal.ModalBehaviour = DialogModalBehaviour;\n\ninterface DialogModalButtonProps extends ActionsButtonProps {}\n\nfunction DialogModalButton({ stretch = true, ...props }: DialogModalButtonProps): ReactElement {\n return <Actions.Button stretch={stretch} {...props} />;\n}\n\nDialogModal.Button = DialogModalButton;\n","import type { IImageProps } from 'native-base';\nimport { Image } from 'native-base';\nimport type { ReactElement } from 'react';\nimport { useMemo } from 'react';\nimport type { ImageProps } from 'react-native';\nimport { Platform } from 'react-native';\nimport { parse } from 'twemoji-parser';\nimport type { KittResponsiveProp } from '../KittBreakpoints';\n\nexport interface EmojiProps extends Pick<ImageProps, 'style' | 'testID'> {\n emoji: string;\n size: number | KittResponsiveProp<number>;\n alignSelf?: IImageProps['alignSelf'];\n _web?: IImageProps['_web'];\n}\n\nexport function Emoji({ emoji, size, alignSelf, _web, style, testID }: EmojiProps): ReactElement | null {\n const [emojiData] = useMemo(\n () =>\n parse(emoji, {\n // on native plaforms, you can't display svg as Image\n assetType: Platform.OS === 'web' ? 'svg' : 'png',\n }),\n [emoji],\n );\n\n if (!emojiData) return null;\n\n return (\n <Image\n testID={testID}\n size={size}\n alt={emojiData.text}\n accessibilityLabel={emojiData.text}\n source={{ uri: emojiData.url }}\n style={style}\n alignSelf={alignSelf}\n _web={_web}\n />\n );\n}\n","import type { ComponentProps, ReactElement, VoidFunctionComponent } from 'react';\nimport type { GestureResponderEvent, PressableProps, TextProps } from 'react-native';\nimport { Linking } from 'react-native';\n\ntype ExternalAppLinkScheme = 'sms' | 'tel' | 'mailto';\n\nexport interface ExternalAppLinkAsComponentMinimumRequiredProps {\n href?: TextProps['href'];\n hrefAttrs?: TextProps['hrefAttrs'];\n onPress?: PressableProps['onPress'];\n}\n\nexport interface ExternalAppLinkProps<C extends VoidFunctionComponent<any>> {\n as: C;\n appScheme: ExternalAppLinkScheme;\n appValue: string;\n onPress?: PressableProps['onPress'];\n onOpenAppError?: (err: string) => void;\n}\n\nexport interface ExternalAppLinkPhoneProps<C extends VoidFunctionComponent<any>>\n extends Partial<ExternalAppLinkProps<C>> {\n phoneNumber: string;\n}\n\nexport interface ExternalAppLinkMailProps<C extends VoidFunctionComponent<any>>\n extends Partial<ExternalAppLinkProps<C>> {\n emailAddress: string;\n}\n\n/** @internal for ExternalAppLink.web.tsx only */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type ExternalAppLinkSendableComponentProps<C extends VoidFunctionComponent<any>> = Omit<\n ComponentProps<C>,\n keyof ExternalAppLinkProps<C> & keyof ExternalAppLinkAsComponentMinimumRequiredProps\n>;\n\nexport function ExternalAppLink<C extends VoidFunctionComponent<any>>({\n as: Component,\n appScheme,\n appValue,\n onPress,\n onOpenAppError,\n ...rest\n}: ExternalAppLinkProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n const href = `${appScheme}:${appValue}`;\n\n const handleOnPress = async (e: GestureResponderEvent): Promise<void> => {\n try {\n const canOpen = await Linking.canOpenURL(href);\n\n if (canOpen) {\n if (onPress) {\n onPress(e);\n if (e?.defaultPrevented) return;\n }\n\n Linking.openURL(href).catch((error) => {\n console.error(`An error occurred while opening ${href}`, error);\n\n onOpenAppError?.(`An error occurred while opening ${href}`);\n });\n } else {\n onOpenAppError?.(`Cannot open url: ${href}`);\n }\n } catch {\n onOpenAppError?.('An error occured with Linkinf.canOpenURL');\n }\n };\n\n return <Component href={href} {...(rest as any)} onPress={handleOnPress} />;\n}\n\nExternalAppLink.Sms = function ExternalAppLinkSms<C extends VoidFunctionComponent<any>>({\n phoneNumber,\n children,\n ...rest\n}: ExternalAppLinkPhoneProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n return (\n <ExternalAppLink {...(rest as any)} appScheme=\"sms\" appValue={phoneNumber}>\n {children}\n </ExternalAppLink>\n );\n};\n\nExternalAppLink.Tel = function ExternalAppLinkTel<C extends VoidFunctionComponent<any>>({\n phoneNumber,\n children,\n ...rest\n}: ExternalAppLinkPhoneProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n return (\n <ExternalAppLink {...(rest as any)} appScheme=\"tel\" appValue={phoneNumber}>\n {children}\n </ExternalAppLink>\n );\n};\n\nExternalAppLink.Mail = function ExternalAppLinkMail<C extends VoidFunctionComponent<any>>({\n emailAddress,\n children,\n ...rest\n}: ExternalAppLinkMailProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n return (\n <ExternalAppLink {...(rest as any)} appScheme=\"mailto\" appValue={emailAddress}>\n {children}\n </ExternalAppLink>\n );\n};\n","export interface ExternalLinkOpenLinkBehavior {\n /**\n * @default 'openInModal'\n *\n * @description open link behavior in native\n *\n * \"openInModal\": open via [expo-web-browser](https://docs.expo.dev/versions/latest/sdk/webbrowser/)\n *\n * \"openBrowserApp\": open via [Linking](https://docs.expo.dev/guides/linking/#opening-links-from-your-app)\n */\n native?: 'openInModal' | 'openBrowserApp';\n\n /**\n * @default 'targetBlank'\n *\n * @description open link behavior in native\n *\n * \"targetSelf\": no dom attributes added, behave like `target=\"_self\"`\n *\n * \"targetBlank\": dome attributes: `target=\"_blank\" rel=\"noopener noreferrer\"`\n */\n web?: 'targetSelf' | 'targetBlank';\n}\n\nexport const defaultOpenLinkBehavior: ExternalLinkOpenLinkBehavior = {\n native: 'openInModal',\n web: 'targetBlank',\n};\n","import type { ReactElement, VoidFunctionComponent } from 'react';\nimport type { ExternalLinkProps, ExternalLinkSendableComponentProps } from './ExternalLink';\nimport { defaultOpenLinkBehavior } from './ExternalLinkOpenLinkBehavior';\n\nexport function ExternalLink<C extends VoidFunctionComponent<any>>({\n as: Component,\n href,\n openLinkBehavior = defaultOpenLinkBehavior,\n onPress,\n ...rest\n}: ExternalLinkProps<C> & ExternalLinkSendableComponentProps<C>): ReactElement {\n return (\n <Component\n {...(rest as any)}\n href={href}\n hrefAttrs={openLinkBehavior?.web === 'targetSelf' ? undefined : { target: '_blank', rel: 'noopener noreferrer' }}\n onPress={onPress}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport type { TypographyIconProps } from '../../typography/TypographyIcon';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\nimport type { InputFormState } from '../utils';\n\nfunction getIconColor(state?: InputFormState, disabled?: boolean): TypographyIconProps['color'] {\n if (disabled) return 'black-light';\n\n switch (state) {\n case 'invalid':\n return 'danger';\n case 'valid':\n return 'success';\n default:\n return undefined;\n }\n}\n\nexport interface InputIconProps {\n icon: NonNullable<ReactElement>;\n disabled?: boolean;\n state?: InputFormState;\n}\n\nexport function InputIcon({ icon, state, disabled }: InputIconProps): ReactElement {\n const theme = useTheme();\n\n const color = getIconColor(state, disabled);\n\n return <TypographyIcon color={color} icon={icon} size={theme.kitt.forms.input.icon.size} />;\n}\n","import type { ReactElement } from 'react';\nimport type { PressableProps } from 'react-native';\nimport { Pressable } from 'react-native';\n\nexport interface InputPressableProps extends PressableProps {}\n\nexport function InputPressable({ ...props }: InputPressableProps): ReactElement {\n return <Pressable {...props} />;\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { webAnimationDuration, webAnimationProperty, webAnimationTimingFunction } from '../../themes/late-ocean/input';\nimport type { InputTextContainerProps } from './InputTextContainer';\n\nconst inputTextContainer = css`\n display: flex;\n position: relative;\n\n & > *::-ms-clear,\n & > *::-ms-reveal {\n display: none;\n }\n\n & > * {\n transition: ${webAnimationProperty} ${webAnimationDuration} ${webAnimationTimingFunction};\n }\n`;\n\nexport function InputTextContainer(props: InputTextContainerProps): ReactElement {\n return <div className={inputTextContainer} {...props} />;\n}\n","import { Input } from 'native-base';\nimport type { ResponsiveValue } from 'native-base/lib/typescript/components/types';\nimport type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput, TextInputProps as RNTextInputProps } from 'react-native';\nimport { Platform } from 'react-native';\nimport type { Except } from 'type-fest';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\nimport { createNativeBaseFontSize } from '../../typography/Typography';\nimport type { InputFormState, InputUIState } from '../utils';\nimport { InputTextContainer } from './InputTextContainer';\n\nexport interface InputTextProps extends Except<RNTextInputProps, 'nativeID'> {\n id?: string;\n name?: string;\n // See InterfaceInputProps from native-base\n variant?: ResponsiveValue<'outline' | 'unstyled'>;\n disabled?: boolean;\n minHeight?: number | string;\n state?: InputFormState;\n right?: ReactNode;\n /**\n * @internal\n * @deprecated\n */\n internalForceState?: InputUIState;\n}\n\nexport const InputText = forwardRef<RNTextInput, InputTextProps>(\n (\n {\n id,\n right,\n state: formState,\n variant = 'outline',\n internalForceState,\n disabled = false,\n autoCorrect = true,\n textContentType = 'none',\n autoComplete = 'off',\n keyboardType = 'default',\n multiline,\n onSubmitEditing,\n ...props\n }: InputTextProps,\n ref,\n ): ReactElement => {\n const theme = useTheme();\n const fontSizeForNativeBase = createNativeBaseFontSize({ base: 'body' });\n const shouldHandleSingleLineOnIOS = Platform.OS === 'ios' && !multiline;\n\n return (\n <InputTextContainer>\n <Input\n ref={ref as any}\n multiline={multiline}\n nativeID={id}\n isDisabled={internalForceState ? internalForceState === 'disabled' : disabled}\n isHovered={internalForceState ? internalForceState === 'hover' : undefined}\n isFocused={internalForceState ? internalForceState === 'focus' : undefined}\n keyboardType={keyboardType}\n autoComplete={autoComplete}\n autoCorrect={autoCorrect}\n textContentType={textContentType}\n fontSize={fontSizeForNativeBase}\n lineHeight={\n // On basic text input, we set the line-height to zero for iOS to fix vertical text alignment\n // This is a iOS only fix since having 0 as a line-height value breaks text inputs on Android\n shouldHandleSingleLineOnIOS ? 0 : fontSizeForNativeBase\n }\n fontWeight=\"bodies.regular\"\n fontFamily=\"bodies.regular\"\n py={!multiline && Platform.OS !== 'web' ? 0 : undefined}\n variant={variant}\n {...props}\n onSubmitEditing={multiline ? () => null : onSubmitEditing}\n />\n {right ? (\n <View\n position=\"absolute\"\n right={0}\n top={0}\n bottom={0}\n justifyContent=\"center\"\n padding={theme.kitt.forms.input.rightContainer.padding}\n >\n {right}\n </View>\n ) : null}\n </InputTextContainer>\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../../native-base/primitives';\n\ninterface UIState {\n isSelected?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n isHighlighted?: boolean;\n}\n\nfunction getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused }: UIState): string {\n const baseKey = 'kitt.forms.autocomplete.option';\n\n if (isHighlighted) {\n return `${baseKey}.highlighted.backgroundColor`;\n }\n\n if (isPressed) {\n return `${baseKey}.pressed.backgroundColor`;\n }\n\n if (isHovered) {\n return `${baseKey}.hovered.backgroundColor`;\n }\n\n if (isFocused) {\n return `${baseKey}.focused.backgroundColor`;\n }\n\n if (isSelected) {\n return `${baseKey}.selected.backgroundColor`;\n }\n\n return `${baseKey}.default.backgroundColor`;\n}\n\ninterface AutocompleteItemProps<T extends object> {\n item: T;\n children: ReactNode;\n isSelected?: boolean;\n isHighlighted?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n}\n\nexport function AutocompleteItem<T extends object>({\n children,\n isSelected,\n isHighlighted,\n isHovered,\n isFocused,\n isPressed,\n}: AutocompleteItemProps<T>): ReactElement {\n return (\n <View\n justifyContent=\"center\"\n width=\"100%\"\n minHeight=\"kitt.forms.autocomplete.option.minHeight\"\n borderRadius=\"kitt.1\"\n padding=\"kitt.1\"\n backgroundColor={getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused })}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\n\ninterface AutocompleteItemsListContainerProps {\n testID: ViewProps['testID'];\n zIndex?: ViewProps['zIndex'];\n children: ReactNode;\n}\n\nexport function AutocompleteItemsListContainer({\n testID,\n children,\n zIndex = 1000,\n}: AutocompleteItemsListContainerProps): ReactElement {\n return (\n <View\n testID={testID}\n zIndex={zIndex}\n top=\"kitt.2\"\n left={0}\n position=\"absolute\"\n flexGrow={1}\n width=\"100%\"\n paddingY=\"kitt.2\"\n borderRadius=\"kitt.forms.autocomplete.optionsContainer.borderRadius\"\n backgroundColor=\"kitt.forms.autocomplete.optionsContainer.backgroundColor\"\n shadow=\"kitt.forms.autocomplete.optionsContainer.shadow\"\n _android={{ style: { elevation: 2 } }}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\n\nexport interface AutocompleteOptionProps extends ViewProps {\n item: unknown;\n children: ReactNode;\n}\n\nexport function AutocompleteOption({ children, ...props }: AutocompleteOptionProps): ReactElement {\n return (\n <View\n paddingX={{ base: 'kitt.2', small: 'kitt.4' }}\n paddingY=\"kitt.forms.autocomplete.option.verticalPadding\"\n {...props}\n >\n {children}\n </View>\n );\n}\n","import { ArrowDownIcon, ArrowUpIcon } from '@ornikar/kitt-icons';\nimport type { DownshiftProps } from 'downshift';\nimport Downshift from 'downshift';\nimport type { ComponentType, ReactElement, ReactNode } from 'react';\nimport { Children } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Platform } from 'react-native';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { Pressable, View } from '../../native-base/primitives';\nimport { InputIcon } from '../InputIcon/InputIcon';\nimport { InputPressable } from '../InputPressable/InputPressable';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\nimport { AutocompleteItem } from './AutocompleteItem';\nimport { AutocompleteItemsListContainer } from './AutocompleteItemsListContainer';\nimport { AutocompleteOption } from './AutocompleteOption';\n\n// When testing with jest on native, e is undefined, we need to patch it to make it work\nfunction patchNativeEvent(event?: GestureResponderEvent): GestureResponderEvent {\n return event || ({ preventDownshiftDefault: false, preventDefault: () => {} } as unknown as GestureResponderEvent);\n}\n\ninterface BaseItemProps<T> {\n item: T;\n}\n\ntype ComponentWithItemProp<T> = ComponentType<BaseItemProps<T>>;\n\nexport interface AutocompleteProps<T extends object> extends Omit<InputTextProps, 'onChange'> {\n children: ReactElement<ComponentWithItemProp<T>>[];\n isInitialOpen?: DownshiftProps<T>['defaultIsOpen'];\n initialValue?: T;\n containerProps?: Exclude<ViewProps, 'ref'>;\n filterItemBasedOnCurrentInputValue?: (item: T, inputValue: string) => boolean;\n checkSelectedItem: (selectedItem: T | undefined, item: T) => boolean;\n itemToString: (item?: T) => string;\n right?: InputTextProps['right'];\n errorElement?: ReactNode;\n emptyResultsElement?: ReactNode;\n inputTestID?: ViewProps['testID'];\n listContainerTestID?: ViewProps['testID'];\n zIndex?: ViewProps['zIndex'];\n onChange?: DownshiftProps<T>['onChange'];\n onInputChange?: DownshiftProps<T>['onInputValueChange'];\n onSelectItem?: DownshiftProps<T>['onSelect'];\n onOuterPress?: DownshiftProps<T>['onOuterClick'];\n}\n\nfunction isReactElement(element: unknown): element is ReactElement {\n return typeof element === 'object' && element !== null && 'type' in element && 'props' in element;\n}\n\nexport function Autocomplete<T extends object>({\n children,\n name,\n disabled,\n placeholder,\n isInitialOpen,\n initialValue,\n containerProps,\n filterItemBasedOnCurrentInputValue,\n checkSelectedItem,\n itemToString,\n right,\n onChange,\n onFocus,\n onBlur,\n onInputChange,\n onSelectItem,\n /**\n * @description web only callback\n */\n onOuterPress,\n errorElement,\n emptyResultsElement,\n inputTestID = 'kitt.Autocomplete.inputText',\n listContainerTestID = 'kitt.Autocomplete.listContainer',\n zIndex = 1000,\n ...props\n}: AutocompleteProps<T>): ReactElement {\n const childrenArray = Children.toArray(children);\n\n const items: { child: ReactElement; item: T }[] = childrenArray\n .filter(isReactElement)\n .map((child) => ({ child, item: child.props.item }));\n\n const handleItemToString = (item: T | null): string => {\n // Prevents returning null values\n if (!itemToString) return '';\n return itemToString(item || undefined);\n };\n\n return (\n <Downshift\n defaultIsOpen={isInitialOpen}\n initialSelectedItem={initialValue}\n initialInputValue={initialValue ? itemToString(initialValue) : undefined}\n itemToString={handleItemToString}\n stateReducer={(state, changes) => {\n switch (changes.type) {\n case Downshift.stateChangeTypes.changeInput:\n return {\n ...changes,\n selectedItem: null,\n };\n default:\n return changes;\n }\n }}\n onChange={(selectedItem, stateAndHelpers) => {\n if (onChange) {\n onChange(selectedItem, stateAndHelpers);\n }\n }}\n onSelect={onSelectItem}\n onOuterClick={onOuterPress}\n onInputValueChange={onInputChange}\n >\n {({\n getRootProps,\n getInputProps,\n getMenuProps,\n getItemProps,\n getToggleButtonProps,\n isOpen,\n inputValue,\n highlightedIndex,\n selectedItem,\n openMenu,\n }) => {\n const shouldSuppressRefError = Platform.OS !== 'web';\n\n const rootProps = getRootProps(undefined, { suppressRefError: shouldSuppressRefError });\n const menuProps = getMenuProps(undefined, { suppressRefError: shouldSuppressRefError });\n const { onClick: onClickToggle, onPress: onPressToggle, ...toggleProps } = getToggleButtonProps({ disabled });\n\n const {\n onKeyDown,\n onFocus: onSearchInputFocus,\n onBlur: onSearchInputBlur,\n onChange: onSearchInputChange,\n ...inputProps\n } = getInputProps({ placeholder, disabled });\n\n const hasCurrentSearch = inputValue && inputValue.length > 0;\n\n const currentItems =\n hasCurrentSearch && filterItemBasedOnCurrentInputValue\n ? items.filter(({ item }) => {\n if (!filterItemBasedOnCurrentInputValue) return true;\n return filterItemBasedOnCurrentInputValue(item, inputValue || '');\n })\n : items;\n\n // We need to check if the menu is open and if there is at least one item or an error element to prevent displaying an empty container\n const isCurrentlyOpen = isOpen ? currentItems.length > 0 || !!errorElement || !!emptyResultsElement : false;\n\n const handleTogglePress = (e?: GestureResponderEvent): void => {\n if (Platform.OS === 'web') {\n onClickToggle(e);\n return;\n }\n onPressToggle(patchNativeEvent(e));\n };\n\n const canDisplayCollapseButton = currentItems.length > 0 || !!errorElement || !!emptyResultsElement;\n\n return (\n <View {...rootProps} {...containerProps} zIndex={zIndex} position=\"relative\">\n <InputText\n {...inputProps}\n {...props}\n name={name}\n testID={inputTestID}\n right={\n right ||\n (canDisplayCollapseButton ? (\n <InputPressable\n {...toggleProps}\n testID=\"kitt.Autocomplete.listToggle\"\n hitSlop={40}\n onPress={handleTogglePress}\n >\n <InputIcon icon={isCurrentlyOpen ? <ArrowUpIcon /> : <ArrowDownIcon />} />\n </InputPressable>\n ) : null)\n }\n onFocus={(e) => {\n openMenu();\n /** @ts-expect-error onFocus wants web events */\n if (Platform.OS !== 'android' && onSearchInputFocus) onSearchInputFocus(e);\n\n if (onFocus) onFocus(e);\n }}\n onBlur={(e) => {\n /** @ts-expect-error onBlur wants web events */\n if (Platform.OS !== 'android' && onSearchInputBlur) onSearchInputBlur(e);\n\n if (onBlur) onBlur(e);\n }}\n /** @ts-expect-error onSearchInputChange wants web events */\n onChange={onSearchInputChange}\n /** @ts-expect-error onKeyDown wants web events */\n onKeyPress={onKeyDown}\n />\n <View {...menuProps} position=\"relative\">\n {isCurrentlyOpen ? (\n <AutocompleteItemsListContainer testID={listContainerTestID}>\n {currentItems.map(({ child, item }, index) => {\n const {\n onClick,\n onPress,\n role,\n 'aria-selected': ariaSelected,\n ...itemProps\n } = getItemProps({ item, index });\n\n return (\n <Pressable\n key={itemProps.id}\n {...itemProps}\n accessibilityRole={Platform.OS === 'android' ? undefined : role}\n accessibilityState={{ selected: ariaSelected }}\n disabled={disabled}\n onPress={(e) => {\n if (Platform.OS === 'web') {\n if (onClick) onClick(e);\n return;\n }\n\n if (onPress) onPress(patchNativeEvent(e));\n }}\n >\n {({ isHovered, isFocused, isPressed }) => (\n <AutocompleteItem<T>\n item={item}\n isHighlighted={highlightedIndex === index}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n isSelected={checkSelectedItem(selectedItem || undefined, item)}\n >\n {child}\n </AutocompleteItem>\n )}\n </Pressable>\n );\n })}\n\n {errorElement}\n {emptyResultsElement}\n </AutocompleteItemsListContainer>\n ) : null}\n </View>\n </View>\n );\n }}\n </Downshift>\n );\n}\n\nAutocomplete.Option = AutocompleteOption;\n/**\n * @description: This is exported for testing purposes only\n */\nAutocomplete.UnsafeInternalItem = AutocompleteItem;\n","interface GetBackgroundColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBackgroundColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBackgroundColorParams): string {\n if (isChecked) return 'kitt.forms.checkbox.checked.backgroundColor';\n\n if (isDisabled) return 'kitt.forms.checkbox.disabled.backgroundColor';\n\n if (isPressed) return 'kitt.forms.checkbox.pressed.backgroundColor';\n\n if (isHovered) return 'kitt.forms.checkbox.hover.backgroundColor';\n\n if (isFocused) return 'kitt.forms.checkbox.focus.backgroundColor';\n\n return 'kitt.forms.checkbox.default.backgroundColor';\n}\n","interface GetBorderColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBorderColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBorderColorParams): string {\n if (isChecked) return 'kitt.forms.checkbox.checked.borderColor';\n\n if (isDisabled) return 'kitt.forms.checkbox.disabled.borderColor';\n\n if (isPressed) return 'kitt.forms.checkbox.pressed.borderColor';\n\n if (isHovered) return 'kitt.forms.checkbox.hover.borderColor';\n\n if (isFocused) return 'kitt.forms.checkbox.focus.borderColor';\n\n return 'kitt.forms.checkbox.default.borderColor';\n}\n","import { CheckboxMark } from '@ornikar/kitt-icons';\nimport type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { GestureResponderEvent, PressableProps } from 'react-native';\nimport { Icon } from '../../Icon/Icon';\nimport { useTheme } from '../../KittThemeContext';\nimport { HStack } from '../../native-base/layout';\nimport { Pressable, View } from '../../native-base/primitives';\nimport { getBackgroundColor } from './utils/getBackgroundColor';\nimport { getBorderColor } from './utils/getBorderColor';\n\nexport interface CheckboxProps {\n checked?: boolean;\n hitSlop?: number;\n testID?: string;\n id?: PressableProps['testID'];\n children?: ReactNode;\n disabled?: boolean;\n onChange?: (checked: boolean, e: GestureResponderEvent) => void;\n onBlur?: (e: any) => void;\n onFocus?: (e: any) => void;\n}\n\nexport const Checkbox = forwardRef<PressableProps, CheckboxProps>(\n (\n { checked, hitSlop = 40, id, children, disabled, testID, onChange, onBlur, onFocus }: CheckboxProps,\n ref,\n ): ReactElement => {\n const theme = useTheme();\n\n const handlePress = (e: GestureResponderEvent): void => {\n if (onFocus) onFocus(e);\n if (onChange) onChange(!checked, e);\n if (onBlur) onBlur(e);\n };\n\n return (\n <Pressable\n ref={ref}\n nativeID={id}\n testID={testID}\n accessibilityRole=\"checkbox\"\n accessibilityState={{ checked: !!checked, disabled }}\n hitSlop={hitSlop}\n disabled={disabled}\n onPress={handlePress}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <HStack space={children ? 'kitt.forms.checkbox.textSpacing' : undefined}>\n <View\n display=\"flex\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"center\"\n marginTop={children ? 'kitt.1' : undefined}\n height=\"kitt.forms.checkbox.height\"\n width=\"kitt.forms.checkbox.width\"\n borderRadius=\"kitt.forms.checkbox.borderRadius\"\n borderWidth=\"kitt.forms.checkbox.borderWidth\"\n borderColor={getBorderColor({\n isDisabled: disabled,\n isFocused,\n isHovered,\n isPressed,\n isChecked: checked,\n })}\n backgroundColor={getBackgroundColor({\n isDisabled: disabled,\n isFocused,\n isHovered,\n isPressed,\n isChecked: checked,\n })}\n _web={{\n style: {\n transitionDuration: theme.kitt.forms.checkbox.transition.duration,\n transitionProperty: 'all',\n transitionTimingFunction: theme.kitt.forms.checkbox.transition.timingFunction,\n },\n }}\n >\n <View\n opacity={checked ? 1 : 0}\n _web={{\n style: {\n transitionDuration: theme.kitt.forms.checkbox.transition.duration,\n transitionProperty: 'opacity',\n transitionTimingFunction: theme.kitt.forms.checkbox.transition.timingFunction,\n },\n }}\n >\n <Icon\n align=\"center\"\n color={theme.kitt.forms.checkbox.markColor}\n size={theme.kitt.forms.checkbox.iconSize}\n icon={<CheckboxMark />}\n />\n </View>\n </View>\n\n {children ? <View flexShrink={1}>{children}</View> : null}\n </HStack>\n )}\n </Pressable>\n );\n },\n);\n","import type { TextInputProps } from 'react-native';\nimport { Platform } from 'react-native';\n\nexport function getReturnKeyTypeForNumericInput(\n returnKeyType: TextInputProps['returnKeyType'],\n): TextInputProps['returnKeyType'] {\n // returnKey is only displayed on number input on iOS if value is done\n if (Platform.OS === 'ios') return 'done';\n\n return returnKeyType;\n}\n","function prefixWithZero(value: number, maxLength = 2): string {\n return `${value}`.padStart(maxLength, '0');\n}\n\nexport function dayFormatter(day: number): string {\n return prefixWithZero(day);\n}\n\nexport function monthFormatter(month: number): string {\n return prefixWithZero(month);\n}\n\nexport function yearFormatter(year: number): string {\n return prefixWithZero(year, 4);\n}\n","export function getDayInInterval(value: number | undefined): number | undefined {\n const minValue = 1;\n const maxValue = 31;\n\n return value !== undefined ? Math.max(minValue, Math.min(maxValue, value)) : value;\n}\n\nexport function getMonthInInterval(\n value: number | undefined,\n minDate: Date | undefined,\n maxDate: Date | undefined,\n): number | undefined {\n const maxMonthInYear = 12;\n\n const minValue = minDate ? minDate.getMonth() + 1 : 1;\n const maxValue = maxDate ? maxDate.getMonth() + 1 : maxMonthInYear;\n\n return value !== undefined ? Math.max(minValue, Math.min(maxValue, value)) : value;\n}\n\nexport function getYearInInterval(\n value: number | undefined,\n minDate: Date | undefined,\n maxDate: Date | undefined,\n): number | undefined {\n const maxPossibleYear = 9999;\n\n const minValue = minDate ? minDate.getFullYear() : 1;\n const maxValue = maxDate ? maxDate.getFullYear() : maxPossibleYear;\n\n return value !== undefined ? Math.max(minValue, Math.min(maxValue, value)) : value;\n}\n","import type { Reducer } from 'react';\nimport type { DatePickerProps } from '../DatePicker';\nimport { dayFormatter, monthFormatter, yearFormatter } from '../utils/dateFormatter';\nimport { getDayInInterval, getMonthInInterval, getYearInInterval } from '../utils/datePartInInterval';\n\nfunction getValueToDisplayedString(value: number | undefined): string {\n // We exclude the undefined value since 0 is a valid number\n if (value === undefined) return '';\n\n return value.toString();\n}\n\nexport interface State {\n currentValue: DatePickerProps['value'];\n currentDay?: number;\n currentMonth?: number;\n currentYear?: number;\n displayedDay?: string;\n displayedMonth?: string;\n displayedYear?: string;\n minDate: DatePickerProps['minDate'];\n maxDate: DatePickerProps['maxDate'];\n}\n\ninterface DayChangeAction {\n type: 'day-change';\n nextDay?: number;\n}\n\ninterface MonthChangeAction {\n type: 'month-change';\n nextMonth?: number;\n}\n\ninterface YearChangeAction {\n type: 'year-change';\n nextYear?: number;\n}\n\ninterface DayBlurAction {\n type: 'day-blur';\n}\n\ninterface MonthBlurAction {\n type: 'month-blur';\n}\n\ninterface YearBlurAction {\n type: 'year-blur';\n}\n\ntype Actions =\n | DayChangeAction\n | MonthChangeAction\n | YearChangeAction\n | DayBlurAction\n | MonthBlurAction\n | YearBlurAction;\n\nexport const keyboardDatePickerReducer: Reducer<State, Actions> = (state, action) => {\n switch (action.type) {\n case 'day-change': {\n const { nextDay } = action;\n\n return {\n ...state,\n currentDay: nextDay,\n displayedDay: getValueToDisplayedString(nextDay),\n };\n }\n\n case 'month-change': {\n const { nextMonth } = action;\n\n return {\n ...state,\n currentMonth: nextMonth,\n displayedMonth: getValueToDisplayedString(nextMonth),\n };\n }\n\n case 'year-change': {\n const { nextYear } = action;\n\n return {\n ...state,\n currentYear: nextYear,\n displayedYear: getValueToDisplayedString(nextYear),\n };\n }\n\n case 'day-blur': {\n const nextCurrentDay = getDayInInterval(state.currentDay);\n\n return {\n ...state,\n displayedDay: nextCurrentDay ? dayFormatter(nextCurrentDay) : state.displayedDay,\n };\n }\n\n case 'month-blur': {\n const { minDate, maxDate } = state;\n\n const nextCurrentMonth = getMonthInInterval(state.currentMonth, minDate, maxDate);\n\n return {\n ...state,\n currentMonth: nextCurrentMonth,\n displayedMonth: nextCurrentMonth !== undefined ? monthFormatter(nextCurrentMonth) : state.displayedMonth,\n };\n }\n\n case 'year-blur': {\n const { minDate, maxDate } = state;\n\n const nextCurrentYear = getYearInInterval(state.currentYear, minDate, maxDate);\n\n return {\n ...state,\n currentYear: nextCurrentYear,\n displayedYear: nextCurrentYear !== undefined ? yearFormatter(nextCurrentYear) : state.displayedYear,\n };\n }\n\n default:\n return state;\n }\n};\n","export function isNumber(input?: unknown): boolean {\n // Number.isNaN and isNaN are not consistent\n // eslint-disable-next-line no-restricted-globals\n return !isNaN(input as any);\n}\n","interface OnDatePartChangeParams {\n day?: number;\n month?: number;\n year?: number;\n validYearMinLength?: number;\n minDate?: Date;\n maxDate?: Date;\n onChange: (v?: Date) => void;\n onBlur?: () => void;\n onFocus?: () => void;\n}\n\nexport function onDatePartChange({\n day,\n month,\n year,\n validYearMinLength = 4,\n minDate,\n maxDate,\n onChange,\n onBlur,\n onFocus,\n}: OnDatePartChangeParams): void {\n const arrayParts = [day, month, year];\n\n const isEverythingUndefined = arrayParts.every((v) => v === undefined);\n const isEverythingDefined = arrayParts.every(Boolean);\n\n // every parts are undefined\n if (isEverythingUndefined) {\n if (onFocus) onFocus();\n onChange(undefined);\n if (onBlur) onBlur();\n\n return;\n }\n\n // Do nothing if some input parts are empty\n if (!isEverythingDefined) {\n return;\n }\n\n const nextValue = new Date();\n\n const isValidYear = year && year.toString().length >= validYearMinLength;\n\n if (!isValidYear) {\n return;\n }\n\n if (day) nextValue.setDate(day);\n if (month) nextValue.setMonth(month - 1);\n if (year) nextValue.setFullYear(year);\n\n nextValue.setMinutes(0);\n nextValue.setHours(0);\n nextValue.setSeconds(0);\n nextValue.setMilliseconds(0);\n\n if (minDate) {\n minDate.setMinutes(0);\n minDate.setHours(0);\n minDate.setSeconds(0);\n minDate.setMilliseconds(0);\n const isMinDateAfterNextValue = minDate.getTime() > nextValue.getTime();\n\n if (isMinDateAfterNextValue) {\n if (onFocus) onFocus();\n onChange(undefined);\n if (onBlur) onBlur();\n\n return;\n }\n }\n\n if (maxDate) {\n maxDate.setMinutes(0);\n maxDate.setHours(0);\n maxDate.setSeconds(0);\n maxDate.setMilliseconds(0);\n\n const isMaxDateBeforeNextValue = nextValue.getTime() > maxDate.getTime();\n\n if (isMaxDateBeforeNextValue) {\n if (onFocus) onFocus();\n onChange(undefined);\n if (onBlur) onBlur();\n\n return;\n }\n }\n\n if (onFocus) onFocus();\n onChange(nextValue);\n if (onBlur) onBlur();\n}\n","export function stringToNumber(text: string): number | undefined {\n if (text.length === 0) return undefined;\n return parseInt(text, 10);\n}\n","import type { ReactElement, Ref } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput } from 'react-native';\nimport type { InputTextProps } from '../../InputText/InputText';\nimport { InputText } from '../../InputText/InputText';\nimport type { InputUIState } from '../../utils';\n\ninterface GetCurrentInternalForcedStateParams {\n isDisabled?: boolean;\n isFocusedInternal?: boolean;\n isPressedInternal?: boolean;\n isHoveredInternal?: boolean;\n}\n\nfunction getCurrentInternalForcedState({\n isDisabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n}: GetCurrentInternalForcedStateParams): InputUIState | 'disabled' {\n if (isDisabled) return 'disabled';\n\n if (isHoveredInternal) return 'hover';\n\n if (isFocusedInternal) return 'focus';\n\n if (isPressedInternal) return 'hover';\n\n return 'default';\n}\n\ninterface InputPartProps {\n id?: string;\n value?: string;\n placeholder?: InputTextProps['placeholder'];\n disabled?: boolean;\n isFocusedInternal?: boolean;\n isHoveredInternal?: boolean;\n isPressedInternal?: boolean;\n returnKeyType?: InputTextProps['returnKeyType'];\n onChange?: InputTextProps['onChange'];\n onBlur?: () => void;\n onSubmitEditing?: InputTextProps['onSubmitEditing'];\n}\n\nexport const InputPart = forwardRef(\n (\n {\n id,\n value,\n placeholder,\n disabled,\n isFocusedInternal,\n isHoveredInternal,\n isPressedInternal,\n returnKeyType,\n onChange,\n onBlur,\n onSubmitEditing,\n }: InputPartProps,\n ref: Ref<TextInput>,\n ): ReactElement => {\n return (\n <InputText\n ref={ref}\n id={id}\n internalForceState={getCurrentInternalForcedState({\n isDisabled: disabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n })}\n value={value}\n placeholder={placeholder}\n disabled={disabled}\n keyboardType=\"numeric\"\n returnKeyType={returnKeyType}\n textAlign=\"center\"\n onChange={onChange}\n onBlur={onBlur}\n onSubmitEditing={onSubmitEditing}\n />\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../../../native-base/primitives';\nimport { View } from '../../../native-base/primitives';\nimport { createResponsiveStyleFromProp } from '../../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { DatePickerProps } from '../DatePicker';\n\ninterface PartContainerProps {\n children: ReactNode;\n isStretch?: DatePickerProps['stretch'];\n width?: ViewProps['width'];\n}\n\nexport function PartContainer({ children, isStretch, width }: PartContainerProps): ReactElement {\n return (\n <View\n flex={createResponsiveStyleFromProp(isStretch, 0.33)}\n flexGrow={createResponsiveStyleFromProp(isStretch, 1)}\n width={isStretch ? undefined : width}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { forwardRef, useReducer, useRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport { HStack } from '../../../native-base/layout';\nimport { View } from '../../../native-base/primitives';\nimport { getReturnKeyTypeForNumericInput } from '../../../utils/getReturnKeyTypeForNumericInput/getReturnKeyTypeForNumericInput';\nimport type { InputTextProps } from '../../InputText/InputText';\nimport type { DatePickerProps } from '../DatePicker';\nimport { keyboardDatePickerReducer } from '../reducers/keyboardDatePickerReducer';\nimport { dayFormatter, monthFormatter, yearFormatter } from '../utils/dateFormatter';\nimport { isNumber } from '../utils/isNumber';\nimport { onDatePartChange } from '../utils/onDatePartChange';\nimport { stringToNumber } from '../utils/stringToNumber';\nimport { InputPart } from './InputPart';\nimport { PartContainer } from './PartContainer';\n\ninterface KeyboardDatePickerProps extends DatePickerProps {\n onSubmitEditing?: InputTextProps['onSubmitEditing'];\n}\n\nexport const KeyboardDatePicker = forwardRef<RNTextInput, KeyboardDatePickerProps>(\n (\n {\n id,\n value,\n testID,\n stretch,\n placeholder,\n minDate,\n maxDate,\n disabled,\n isFocusedInternal,\n isHoveredInternal,\n isPressedInternal,\n returnKeyType,\n onChange,\n onBlur,\n onFocus,\n onSubmitEditing,\n ...props\n }: KeyboardDatePickerProps,\n ref,\n ): ReactElement => {\n const monthRef = useRef<RNTextInput>(null);\n const yearRef = useRef<RNTextInput>(null);\n\n const defaultValue = value;\n\n const defaultDay = defaultValue?.getDate();\n const defaultMonth = defaultValue ? defaultValue.getMonth() + 1 : undefined;\n const defaultYear = defaultValue?.getFullYear();\n\n const [state, dispatch] = useReducer(keyboardDatePickerReducer, {\n currentValue: defaultValue,\n currentDay: defaultDay,\n currentMonth: defaultMonth,\n currentYear: defaultYear,\n displayedDay: defaultDay ? dayFormatter(defaultDay) : '',\n displayedMonth: defaultMonth ? monthFormatter(defaultMonth) : '',\n displayedYear: defaultYear ? yearFormatter(defaultYear) : '',\n minDate,\n maxDate,\n });\n\n const sharedInputPartProps = {\n isFocusedInternal,\n isHoveredInternal,\n isPressedInternal,\n disabled,\n };\n\n const handleDatePartChange = (\n day: number | undefined,\n month: number | undefined,\n year: number | undefined,\n ): void => {\n onDatePartChange({ day, month, year, minDate: state.minDate, maxDate: state.maxDate, onFocus, onBlur, onChange });\n };\n\n const handleAutoFocusNextField = (currentFieldValue: string, nextFieldRef: React.RefObject<RNTextInput>): void => {\n if (currentFieldValue.length === 2 && nextFieldRef.current) {\n nextFieldRef.current.focus();\n }\n };\n\n return (\n <View testID={testID} nativeID={id}>\n <HStack space=\"kitt.2\">\n <PartContainer isStretch={stretch} width=\"kitt.forms.datePicker.day.minWidth\">\n <InputPart\n ref={ref}\n id={id ? `${id}-day` : undefined}\n {...sharedInputPartProps}\n placeholder={placeholder?.day}\n value={state.displayedDay}\n returnKeyType={getReturnKeyTypeForNumericInput('next')}\n onChange={(e) => {\n const nextDay = stringToNumber(e.nativeEvent.text);\n\n dispatch({ type: 'day-change', nextDay });\n\n if (nextDay && isNumber(nextDay)) {\n handleDatePartChange(nextDay, state.currentMonth, state.currentYear);\n }\n\n handleAutoFocusNextField(e.nativeEvent.text, monthRef);\n }}\n onBlur={() => dispatch({ type: 'day-blur' })}\n onSubmitEditing={() => {\n monthRef.current?.focus();\n }}\n />\n </PartContainer>\n\n <PartContainer isStretch={stretch} width=\"kitt.forms.datePicker.month.minWidth\">\n <InputPart\n ref={monthRef}\n id={id ? `${id}-month` : undefined}\n {...sharedInputPartProps}\n placeholder={placeholder?.month}\n value={state.displayedMonth}\n returnKeyType={getReturnKeyTypeForNumericInput('next')}\n onChange={(e) => {\n const nextMonth = stringToNumber(e.nativeEvent.text);\n\n dispatch({ type: 'month-change', nextMonth });\n\n if (nextMonth && isNumber(nextMonth)) {\n handleDatePartChange(state.currentDay, nextMonth, state.currentYear);\n }\n\n handleAutoFocusNextField(e.nativeEvent.text, yearRef);\n }}\n onBlur={() => dispatch({ type: 'month-blur' })}\n onSubmitEditing={() => {\n yearRef.current?.focus();\n }}\n />\n </PartContainer>\n\n <PartContainer isStretch={stretch} width=\"kitt.forms.datePicker.year.minWidth\">\n <InputPart\n ref={yearRef}\n id={id ? `${id}-year` : undefined}\n {...sharedInputPartProps}\n placeholder={placeholder?.year}\n value={state.displayedYear}\n returnKeyType={returnKeyType ? getReturnKeyTypeForNumericInput(returnKeyType) : undefined}\n onChange={(e) => {\n const nextYear = stringToNumber(e.nativeEvent.text);\n\n dispatch({ type: 'year-change', nextYear });\n\n if (nextYear && isNumber(nextYear)) {\n handleDatePartChange(state.currentDay, state.currentMonth, nextYear);\n }\n }}\n onBlur={() => dispatch({ type: 'year-blur' })}\n onSubmitEditing={onSubmitEditing}\n />\n </PartContainer>\n </HStack>\n </View>\n );\n },\n);\n","import type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport type { DatePickerProps } from './DatePicker';\nimport { KeyboardDatePicker } from './components/KeyboardDatePicker';\n\nexport const DatePicker = forwardRef<RNTextInput, DatePickerProps>(\n ({ value, ...props }: DatePickerProps, ref): ReactElement => {\n // in apps, final-form can give a string value that will break the component\n const currentValue = value || undefined;\n\n return <KeyboardDatePicker ref={ref} {...props} value={currentValue} />;\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext } from 'react';\n\nexport const GoogleMapsApiKeyContext = createContext<string | undefined>(undefined);\n\nexport interface GoogleMapsApiKeyProviderProps {\n children: ReactNode;\n apiKey: string;\n}\n\nexport function GoogleMapsApiKeyProvider({ children, apiKey }: GoogleMapsApiKeyProviderProps): ReactElement {\n return <GoogleMapsApiKeyContext.Provider value={apiKey}>{children}</GoogleMapsApiKeyContext.Provider>;\n}\n","import { useContext } from 'react';\nimport { GoogleMapsApiKeyContext } from '../GoogleMapsApiKeyProvider';\n\nexport function useGoogleMapApiKey(): string {\n const context = useContext(GoogleMapsApiKeyContext);\n\n if (!context) {\n throw new Error('<GoogleMapsApiKeyContext> missing in the react tree');\n }\n\n return context;\n}\n","import { Loader } from '@googlemaps/js-api-loader';\nimport { useEffect, useRef } from 'react';\nimport { useGoogleMapApiKey } from '../../GoogleMapsApiKeyProvider/hooks/useGoogleMapApiKey';\nimport type { GetDetailsResponse, GetPlacePredictions, UseGooglePlacesServices } from './useGoogleMapsApi';\n\nexport function useGoogleMapsApi(): UseGooglePlacesServices {\n const apiKey = useGoogleMapApiKey();\n\n const autoCompleteServiceInstanceRef = useRef<google.maps.places.AutocompleteService | null>(null);\n const placesServiceInstanceRef = useRef<google.maps.places.PlacesService | null>(null);\n\n useEffect(() => {\n if (autoCompleteServiceInstanceRef.current && placesServiceInstanceRef.current) return;\n\n const loader = new Loader({\n apiKey,\n libraries: ['places'],\n });\n\n async function loadMapsApi(): Promise<void> {\n try {\n const placeApi = await loader.importLibrary('places');\n autoCompleteServiceInstanceRef.current = new placeApi.AutocompleteService();\n placesServiceInstanceRef.current = new placeApi.PlacesService(document.createElement('div'));\n } catch (error) {\n console.error(error);\n }\n }\n\n loadMapsApi();\n }, [apiKey]);\n\n return {\n autoComplete: {\n getPlacePredictions: (input: string): Promise<GetPlacePredictions> => {\n const promise = new Promise<GetPlacePredictions>((resolve) => {\n autoCompleteServiceInstanceRef.current?.getPlacePredictions({ input }, (predictions, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n resolve({ status, results: [] });\n return;\n }\n\n resolve({\n results: predictions,\n status,\n });\n });\n });\n\n return promise;\n },\n },\n placesService: {\n getDetails: (placeId: string): Promise<GetDetailsResponse> => {\n const promise = new Promise<GetDetailsResponse>((resolve) => {\n placesServiceInstanceRef.current?.getDetails({ placeId }, (place, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n resolve({ status, result: undefined });\n return;\n }\n\n resolve({\n result: place,\n status,\n });\n });\n });\n\n return promise;\n },\n },\n };\n}\n","import type { Reducer } from 'react';\n\nexport interface State {\n currentSelectedValue?: google.maps.places.PlaceResult;\n items: google.maps.places.AutocompletePrediction[];\n isLoadingSearch?: boolean;\n hasSearchError?: boolean;\n hasSelectResultError?: boolean;\n isLoadingResultDetails?: boolean;\n shouldDisplayEmptyStateWhenNoResults?: boolean;\n}\n\ninterface SearchChangeAction {\n type: 'search-change';\n}\n\ninterface SearchSuccessAction {\n type: 'search-success';\n payload: {\n results: google.maps.places.AutocompletePrediction[];\n };\n}\n\ninterface SearchErrorAction {\n type: 'search-error';\n}\n\ninterface SelectResultAction {\n type: 'select-result';\n}\n\ninterface SelectResultSuccessAction {\n type: 'select-result-success';\n payload: {\n result: google.maps.places.PlaceResult;\n };\n}\n\ninterface SelectResultErrorAction {\n type: 'select-result-error';\n}\n\ntype Actions =\n | SearchChangeAction\n | SelectResultAction\n | SearchSuccessAction\n | SearchErrorAction\n | SelectResultSuccessAction\n | SelectResultErrorAction;\n\nexport const googleMapsAutocompleteReducer: Reducer<State, Actions> = (state, action) => {\n switch (action.type) {\n case 'search-change': {\n return {\n ...state,\n hasSearchError: false,\n isLoadingSearch: true,\n };\n }\n\n case 'search-success': {\n return {\n ...state,\n hasSearchError: false,\n isLoadingSearch: false,\n items: action.payload.results,\n };\n }\n\n case 'search-error': {\n return {\n ...state,\n hasSearchError: true,\n isLoadingSearch: false,\n items: [],\n };\n }\n\n case 'select-result': {\n return {\n ...state,\n hasSelectResultError: false,\n isLoadingResultDetails: true,\n };\n }\n\n case 'select-result-success': {\n return {\n ...state,\n hasSelectResultError: false,\n isLoadingResultDetails: false,\n currentSelectedValue: action.payload.result,\n };\n }\n\n case 'select-result-error': {\n return {\n ...state,\n hasSelectResultError: true,\n isLoadingResultDetails: false,\n currentSelectedValue: undefined,\n };\n }\n\n default:\n return state;\n }\n};\n","import type { GeocoderAddressComponent } from '../types';\n\nexport function findComponentByType(\n typeName: string,\n components: GeocoderAddressComponent[],\n): GeocoderAddressComponent | undefined {\n return components.find((component) => component.types.includes(typeName));\n}\n\nconst matchStreetNumberWithOriginalAddress = (streetNumber = '', address = ''): string => {\n const regex = / *(\\d*[-/_]{0,1}\\d*) *(bis|ter|quater|quinquies|sexies|septies|octies|novies|decies|[a-z])? /i;\n const [, number = '', extension = ''] = regex.exec(address) || [];\n\n if (number) return `${number}${extension}`;\n\n return streetNumber;\n};\n\ntype GooglePlaceResult = google.maps.places.PlaceResult;\n\nexport interface AutoCompleteAddress {\n source: 'google';\n lat?: number;\n lng?: number;\n streetNumber?: string;\n streetName?: string;\n zipcode?: string;\n locality?: string;\n subLocality?: string;\n country?: string;\n administrativeAreaLevel1?: string;\n administrativeAreaLevel2?: string;\n}\n\nexport const formatAddressFromGoogle = (\n placeResult: GooglePlaceResult,\n originalAddress?: string,\n): AutoCompleteAddress => {\n const { address_components: addressComponents = [] } = placeResult;\n\n return {\n source: 'google',\n lat: placeResult.geometry?.location.lat(),\n lng: placeResult.geometry?.location.lng(),\n locality: findComponentByType('locality', addressComponents)?.long_name,\n subLocality: findComponentByType('sublocality', addressComponents)?.long_name,\n zipcode: findComponentByType('postal_code', addressComponents)?.long_name,\n streetName: findComponentByType('route', addressComponents)?.long_name,\n streetNumber: matchStreetNumberWithOriginalAddress(\n findComponentByType('street_number', addressComponents)?.long_name,\n originalAddress,\n ),\n country: findComponentByType('country', addressComponents)?.long_name,\n administrativeAreaLevel1: findComponentByType('administrative_area_level_1', addressComponents)?.long_name,\n administrativeAreaLevel2: findComponentByType('administrative_area_level_1', addressComponents)?.long_name,\n };\n};\n","import type { ReactElement } from 'react';\nimport { createContext, useCallback, useMemo, useReducer, useRef } from 'react';\nimport { useDebouncedCallback } from 'use-debounce';\nimport { useGoogleMapsApi } from './hooks/useGoogleMapsApi';\nimport { googleMapsAutocompleteReducer } from './reducer/googleMapsAutocompleteReducer';\nimport type { State } from './reducer/googleMapsAutocompleteReducer';\nimport type { AutoCompletePrediction } from './types';\nimport type { AutoCompleteAddress } from './utils/formatAddressFromGoogle';\nimport { formatAddressFromGoogle } from './utils/formatAddressFromGoogle';\n\nexport interface GoogleMapsAutocompleteContextApi {\n state: State;\n onInputChange: (value: string) => Promise<void> | undefined;\n onSelectItem: (item: AutoCompletePrediction | null, onChange: (nextValue?: AutoCompleteAddress) => void) => void;\n}\n\nexport const GoogleMapsAutocompleteContext = createContext<GoogleMapsAutocompleteContextApi>({\n state: {\n items: [],\n currentSelectedValue: undefined,\n isLoadingSearch: false,\n hasSearchError: false,\n hasSelectResultError: false,\n isLoadingResultDetails: false,\n shouldDisplayEmptyStateWhenNoResults: false,\n },\n onInputChange: (value) => {\n return Promise.resolve();\n },\n onSelectItem: (item) => {},\n});\n\nexport interface GoogleMapsAutocompleteProviderProps {\n children: ReactElement;\n minCharsToSearch?: number;\n debounceTimeout?: number;\n}\n\nexport function GoogleMapsAutocompleteProvider({\n children,\n minCharsToSearch = 3,\n debounceTimeout = 950,\n}: GoogleMapsAutocompleteProviderProps): ReactElement {\n const mapsApi = useGoogleMapsApi();\n\n const searchResultsCache = useRef<Record<string, AutoCompletePrediction[]>>({});\n const resultDetailsCache = useRef<Record<string, google.maps.places.PlaceResult>>({});\n\n const [state, dispatch] = useReducer(googleMapsAutocompleteReducer, {\n items: [],\n shouldDisplayEmptyStateWhenNoResults: false,\n });\n\n const handleInputChange = useDebouncedCallback(\n useCallback(\n async (value: string): Promise<void> => {\n if (value.length < minCharsToSearch) return;\n\n dispatch({ type: 'search-change' });\n\n // If the user types the same value as the previous search, we don't need to call the API again\n const predictionsPromise = searchResultsCache.current[value]\n ? Promise.resolve({ results: searchResultsCache.current[value], status: 'OK' })\n : mapsApi.autoComplete.getPlacePredictions(value);\n\n try {\n const { results, status } = await predictionsPromise;\n\n if (status !== 'OK') {\n dispatch({ type: 'search-error' });\n return;\n }\n\n // We cache the results to avoid calling the API again if the user types the same value\n searchResultsCache.current[value] = results;\n\n dispatch({ type: 'search-success', payload: { results } });\n } catch (error) {\n dispatch({ type: 'search-error' });\n }\n },\n [mapsApi.autoComplete, minCharsToSearch],\n ),\n debounceTimeout,\n );\n\n const handleSelectItem = useCallback(\n async (\n item: AutoCompletePrediction | null,\n onChange: (nextValue?: AutoCompleteAddress) => void,\n ): Promise<AutoCompleteAddress | undefined> => {\n // This case should never happen but it's here to avoid a TS error\n if (!item?.place_id) {\n if (onChange) onChange(undefined);\n return;\n }\n\n dispatch({ type: 'select-result' });\n\n try {\n // If we already have the details in cache, we don't need to fetch them again\n const placePromise = resultDetailsCache.current[item.place_id]\n ? Promise.resolve(resultDetailsCache.current[item.place_id])\n : mapsApi.placesService.getDetails(item.place_id).then(({ result }) => result);\n\n const place = await placePromise;\n\n if (!place) {\n dispatch({ type: 'select-result-error' });\n\n if (onChange) onChange(undefined);\n return;\n }\n\n dispatch({\n type: 'select-result-success',\n payload: {\n result: place,\n },\n });\n\n const formattedAddress = formatAddressFromGoogle(place, item.description);\n\n // We cache the result details to avoid fetching them again if the user selects the same item\n resultDetailsCache.current[item.place_id] = place;\n\n if (onChange) onChange(formattedAddress);\n } catch (error) {\n dispatch({ type: 'select-result-error' });\n\n if (onChange) onChange(undefined);\n }\n },\n [mapsApi.placesService],\n );\n\n const api = useMemo(\n () => ({ state, onSelectItem: handleSelectItem, onInputChange: handleInputChange }),\n [handleInputChange, handleSelectItem, state],\n );\n\n return <GoogleMapsAutocompleteContext.Provider value={api}>{children}</GoogleMapsAutocompleteContext.Provider>;\n}\n","import { useContext } from 'react';\nimport type { GoogleMapsAutocompleteContextApi } from '../GoogleMapsAutocompleteProvider';\nimport { GoogleMapsAutocompleteContext } from '../GoogleMapsAutocompleteProvider';\n\nexport function useGoogleMapsAutocomplete(): GoogleMapsAutocompleteContextApi {\n const context = useContext(GoogleMapsAutocompleteContext);\n\n if (!context) {\n throw new Error('<GoogleMapsAutocompleteProvider> missing in the react tree');\n }\n\n return context;\n}\n","import { MapPinIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport type { AutoCompletePrediction } from '../../GoogleMapsAutocompleteProvider/types';\nimport { HStack } from '../../native-base/layout';\nimport { View } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\nimport { Autocomplete } from '../Autocomplete/Autocomplete';\n\nexport interface InputAddressOptionProps {\n item: AutoCompletePrediction;\n}\n\nexport function InputAddressOption({ item }: InputAddressOptionProps): ReactElement {\n const sharedTransform = {\n style: {\n transform: [{ translateY: 4 }],\n },\n };\n\n return (\n <Autocomplete.Option item={item}>\n <HStack space=\"kitt.2\">\n <View _web={sharedTransform} _ios={sharedTransform} _android={sharedTransform}>\n <TypographyIcon icon={<MapPinIcon />} color=\"black\" />\n </View>\n <View flexShrink={1}>\n <Typography.Text>\n <Typography.Text variant=\"bold\">{item.structured_formatting.main_text}</Typography.Text>\n {item.structured_formatting.secondary_text ? (\n <Typography.Text color=\"black-light\" variant=\"bold\">\n {' '}\n {item.structured_formatting.secondary_text}\n </Typography.Text>\n ) : null}\n </Typography.Text>\n </View>\n </HStack>\n </Autocomplete.Option>\n );\n}\n","export function defaultItemToString(item?: google.maps.places.AutocompletePrediction): string {\n if (!item) return '';\n return item.structured_formatting.main_text;\n}\n","import type { AutoCompleteAddress } from '../../../GoogleMapsAutocompleteProvider/utils/formatAddressFromGoogle';\n\n// This function takes AutocompleteAddress and return a valid google AutocompletePrediction\nexport function formatInitialValueToAutocompletePrediction(\n address: AutoCompleteAddress,\n placeId: string,\n): google.maps.places.AutocompletePrediction {\n return {\n place_id: placeId,\n description: '',\n reference: '',\n types: [],\n terms: [],\n matched_substrings: [],\n structured_formatting: {\n main_text: [address.streetName, address.streetNumber].filter(Boolean).join(' '),\n main_text_matched_substrings: [],\n secondary_text: [address.zipcode, address.locality, address.subLocality].filter(Boolean).join(' '),\n },\n };\n}\n","import type { ReactElement } from 'react';\nimport { useGoogleMapsAutocomplete } from '../../GoogleMapsAutocompleteProvider/hooks/useGoogleMapsAutocomplete';\nimport type { AutoCompletePrediction } from '../../GoogleMapsAutocompleteProvider/types';\nimport type { AutoCompleteAddress } from '../../GoogleMapsAutocompleteProvider/utils/formatAddressFromGoogle';\nimport { Icon } from '../../Icon/Icon';\nimport { LoaderIcon } from '../../LoaderIcon/LoaderIcon';\nimport { Autocomplete } from '../Autocomplete/Autocomplete';\nimport type { AutocompleteProps } from '../Autocomplete/Autocomplete';\nimport { InputAddressOption } from './InputAddressOption';\nimport { defaultItemToString } from './utils/defaultItemToString';\nimport { formatInitialValueToAutocompletePrediction } from './utils/formatInitialValueToAutocompletePrediction';\n\nexport interface InputAddressProps<T extends object>\n extends Omit<AutocompleteProps<T>, 'onChange' | 'checkSelectedItem' | 'itemToString' | 'children' | 'initialValue'> {\n initialValue?: AutoCompleteAddress;\n itemToString?: (item?: AutoCompletePrediction) => string;\n onChange: (address: AutoCompleteAddress | undefined) => void;\n}\n\nexport function InputAddress({\n initialValue,\n itemToString = defaultItemToString,\n errorElement,\n emptyResultsElement,\n onChange,\n ...props\n}: InputAddressProps<AutoCompleteAddress>): ReactElement {\n const { state, onInputChange, onSelectItem } = useGoogleMapsAutocomplete();\n\n // place_id is a google field that is not available within an AutoCompleteAddress, so we need to add a fake one when handling initial values\n const formattedInitialValue = initialValue\n ? formatInitialValueToAutocompletePrediction(initialValue, 'initial-value-placeId')\n : undefined;\n\n return (\n <Autocomplete<AutoCompletePrediction>\n itemToString={itemToString}\n initialValue={formattedInitialValue}\n checkSelectedItem={(selectedItem, item) => selectedItem?.place_id === item.place_id}\n right={\n state.isLoadingSearch || state.isLoadingResultDetails ? (\n <Icon icon={<LoaderIcon />} color=\"kitt.black\" />\n ) : undefined\n }\n errorElement={state.hasSearchError || state.hasSelectResultError ? errorElement : null}\n emptyResultsElement={state.items.length === 0 ? emptyResultsElement : null}\n onInputChange={(v) => {\n onInputChange(v);\n }}\n onChange={(v) => {\n onSelectItem(v, onChange);\n }}\n >\n {state.items.map((item) => (\n <InputAddressOption key={item.place_id} item={item} />\n ))}\n </Autocomplete>\n );\n}\n\nInputAddress.Option = InputAddressOption;\n","import type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nexport interface InputEmailProps\n extends Except<InputTextProps, 'autoComplete' | 'keyboardType' | 'textContentType' | 'autoCapitalize'> {}\n\nexport const InputEmail = forwardRef<RNTextInput, InputEmailProps>((props: InputEmailProps, ref): ReactElement => {\n return (\n <InputText\n ref={ref}\n autoComplete=\"email\"\n keyboardType=\"email-address\"\n textContentType=\"emailAddress\"\n autoCapitalize=\"none\"\n {...props}\n />\n );\n});\n","import type { ReactElement, ReactNode } from 'react';\nimport { Typography } from '../../typography/Typography';\nimport type { TypographyColor, TypographyProps } from '../../typography/Typography';\nimport type { InputFormState } from '../utils';\n\nexport interface InputFeedbackProps {\n state?: InputFormState;\n testID?: TypographyProps['testID'];\n children: NonNullable<ReactNode>;\n}\n\nconst getColorFromState = (state?: InputFormState): TypographyColor => {\n switch (state) {\n case 'invalid':\n return 'danger';\n case 'valid':\n default:\n return 'black-light';\n }\n};\n\nexport function InputFeedback({ state, testID, children }: InputFeedbackProps): ReactElement {\n return (\n <Typography.Text base=\"body-small\" color={getColorFromState(state)} testID={testID}>\n {children}\n </Typography.Text>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\n\nexport interface InputFieldProps {\n label?: ReactNode;\n labelFeedback?: ReactNode;\n input: NonNullable<ReactNode>;\n feedback?: ReactNode;\n}\n\nexport function InputField({ label, labelFeedback, input, feedback }: InputFieldProps): ReactElement {\n const theme = useTheme();\n return (\n <View\n paddingTop={theme.kitt.forms.inputField.containerPaddingTop}\n paddingBottom={theme.kitt.forms.inputField.containerPaddingBottom}\n >\n {label ? (\n <View\n flexDirection=\"row\"\n alignItems=\"center\"\n paddingBottom={theme.kitt.forms.inputField.labelContainerPaddingBottom}\n >\n <View marginRight={theme.kitt.forms.inputField.labelFeedbackMarginLeft}>{label}</View>\n {labelFeedback}\n </View>\n ) : null}\n {input}\n {feedback ? <View paddingTop={theme.kitt.forms.inputField.feedbackPaddingTop}>{feedback}</View> : null}\n </View>\n );\n}\n","import { EyeIcon, EyeOffIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { forwardRef, useState } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport { InputIcon } from '../InputIcon/InputIcon';\nimport { InputPressable } from '../InputPressable/InputPressable';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nexport interface InputPasswordProps extends InputTextProps {\n isPasswordDefaultVisible?: boolean;\n}\n\nexport const InputPassword = forwardRef<RNTextInput, InputPasswordProps>(\n ({ isPasswordDefaultVisible, right, ...props }: InputPasswordProps, ref): ReactElement => {\n const [isVisible, setIsVisible] = useState(Boolean(isPasswordDefaultVisible));\n\n return (\n <InputText\n ref={ref}\n {...props}\n textContentType=\"password\"\n autoComplete=\"password\"\n autoCorrect={false}\n secureTextEntry={!isVisible}\n right={\n right || (\n <InputPressable\n testID=\"kitt.InputPassword.passwordToggle\"\n hitSlop={20}\n accessibilityRole=\"button\"\n onPress={() => setIsVisible((prev) => !prev)}\n >\n <InputIcon icon={isVisible ? <EyeOffIcon /> : <EyeIcon />} />\n </InputPressable>\n )\n }\n />\n );\n },\n);\n","import type { CountryCallingCode, ParsedNumber } from 'libphonenumber-js';\nimport { getCountryCallingCode, isValidNumber, parseNumber } from 'libphonenumber-js';\nimport type { ReactElement } from 'react';\nimport { forwardRef, useState } from 'react';\nimport type { NativeSyntheticEvent, TextInput as RNTextInput, TextInputChangeEventData } from 'react-native';\nimport type { Except } from 'type-fest';\nimport { getReturnKeyTypeForNumericInput } from '../../utils/getReturnKeyTypeForNumericInput/getReturnKeyTypeForNumericInput';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nfunction isPhoneNumberValid(number: Record<string, never> | ParsedNumber): number is ParsedNumber {\n return isValidNumber(number as ParsedNumber);\n}\n\nfunction prefixWithZero(value: string, phoneNumberLength: number): string {\n return value.padStart(phoneNumberLength, '0');\n}\n\nexport interface InputPhoneNumberData extends ParsedNumber {\n countryCode: CountryCallingCode;\n originalNativeEventText: string;\n}\n\nexport interface InputPhoneProps extends Except<InputTextProps, 'keyboardType' | 'textContentType'> {\n phoneNumberLength?: number;\n onChange?: (event: NativeSyntheticEvent<TextInputChangeEventData>, phoneNumberData?: InputPhoneNumberData) => void;\n}\n\nexport const InputPhone = forwardRef<RNTextInput, InputPhoneProps>(\n (\n { returnKeyType, autoComplete = 'tel', phoneNumberLength = 10, value, onChange, ...props }: InputPhoneProps,\n ref,\n ): ReactElement => {\n const [currentValue, setCurrentValue] = useState(value);\n\n const currentReturnKeyType = returnKeyType ? getReturnKeyTypeForNumericInput(returnKeyType) : undefined;\n\n const handleChange = (event: NativeSyntheticEvent<TextInputChangeEventData>): void => {\n const number = parseNumber(event.nativeEvent.text);\n\n // When intl phone number is valid :\n // 1 - We extract intl data\n // 2 - We recreate the local value to display\n if (isPhoneNumberValid(number)) {\n const { phone } = number;\n\n const finalPhoneNumber = prefixWithZero(`${phone || ''}`, phoneNumberLength);\n\n const eventWithoutCountryCode = {\n ...event,\n nativeEvent: {\n ...event.nativeEvent,\n text: finalPhoneNumber,\n },\n };\n\n setCurrentValue(finalPhoneNumber);\n\n if (onChange) {\n onChange(eventWithoutCountryCode, {\n ...(number as ParsedNumber),\n countryCode: getCountryCallingCode(number.country),\n originalNativeEventText: event.nativeEvent.text,\n });\n }\n\n return;\n }\n\n // Value is correctly parsed but might not pass validation\n setCurrentValue(event.nativeEvent.text);\n if (onChange) onChange(event);\n };\n\n return (\n <InputText\n ref={ref}\n {...props}\n value={currentValue}\n keyboardType=\"phone-pad\"\n returnKeyType={currentReturnKeyType}\n autoComplete={autoComplete}\n textContentType=\"telephoneNumber\"\n onChange={handleChange}\n />\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport type { TypographyColor } from '../../typography/Typography';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\n\ntype InputTagType = 'success' | 'danger';\n\nconst getTypographyColor = (type: InputTagType | undefined): TypographyColor => (type ? 'white' : 'black');\n\nexport interface InputTagProps {\n type?: InputTagType;\n children: ReactNode;\n icon?: ReactElement;\n}\n\nexport function InputTag({ children, type, icon }: InputTagProps): ReactElement {\n const typographyColor = getTypographyColor(type);\n const theme = useTheme();\n\n return (\n <View\n alignItems=\"center\"\n justifyContent=\"center\"\n flexDirection=\"row\"\n alignSelf=\"flex-start\"\n overflow=\"hidden\"\n paddingX=\"kitt.2\"\n backgroundColor={`kitt.forms.inputTag.${type || 'default'}.backgroundColor`}\n borderRadius=\"kitt.forms.inputTag.borderRadius\"\n >\n {icon ? (\n <View marginRight=\"kitt.1\">\n <TypographyIcon icon={icon} size={theme.kitt.forms.inputTag.iconSize} color={typographyColor} />\n </View>\n ) : null}\n <Typography.Text base=\"body-small\" color={typographyColor}>\n {children}\n </Typography.Text>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Platform } from 'react-native';\nimport { Typography } from '../../typography/Typography';\n\nexport interface LabelProps {\n id?: string;\n htmlFor: string;\n children: NonNullable<ReactNode>;\n}\n\nexport function Label({ id, htmlFor, children }: LabelProps): ReactElement {\n const isWeb = Platform.OS === 'web';\n return (\n <Typography.Text base=\"body\" nativeID={isWeb ? undefined : id}>\n {isWeb ? (\n <label id={id} htmlFor={htmlFor}>\n {children}\n </label>\n ) : (\n children\n )}\n </Typography.Text>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\n\ninterface InnerCircleProps {\n isChecked?: boolean;\n}\n\nexport function InnerCircle({ isChecked }: InnerCircleProps): ReactElement {\n const theme = useTheme();\n\n const sharedTransform = [{ scale: isChecked ? 1 : 0 }];\n\n return (\n <View\n width=\"kitt.forms.radio.innerCircle.size\"\n height=\"kitt.forms.radio.innerCircle.size\"\n borderRadius=\"kitt.forms.radio.innerCircle.borderRadius\"\n backgroundColor=\"kitt.forms.radio.innerCircle.backgroundColor\"\n _web={{\n style: {\n transform: sharedTransform,\n transitionProperty: 'all',\n transitionDuration: theme.kitt.forms.radio.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radio.transition.timingFunction,\n },\n }}\n _ios={{\n style: {\n transform: sharedTransform,\n },\n }}\n _android={{\n style: {\n transform: sharedTransform,\n },\n }}\n />\n );\n}\n","interface GetBackgroundColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBackgroundColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBackgroundColorParams): string {\n if (isChecked) return 'kitt.forms.radio.checked.backgroundColor';\n\n if (isDisabled) return 'kitt.forms.radio.disabled.backgroundColor';\n\n if (isPressed) return 'kitt.forms.radio.pressed.backgroundColor';\n\n if (isHovered) return 'kitt.forms.radio.hover.backgroundColor';\n\n if (isFocused) return 'kitt.forms.radio.focus.backgroundColor';\n\n return 'kitt.forms.radio.default.backgroundColor';\n}\n","interface GetBorderColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBorderColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBorderColorParams): string {\n if (isChecked) return 'kitt.forms.radio.checked.borderColor';\n\n if (isDisabled) return 'kitt.forms.radio.disabled.borderColor';\n\n if (isPressed) return 'kitt.forms.radio.pressed.borderColor';\n\n if (isHovered) return 'kitt.forms.radio.hover.borderColor';\n\n if (isFocused) return 'kitt.forms.radio.focus.borderColor';\n\n return 'kitt.forms.radio.default.borderColor';\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\nimport { getBackgroundColor } from './utils/getBackgroundColor';\nimport { getBorderColor } from './utils/getBorderColor';\n\ninterface OuterCircleProps {\n children: ReactElement;\n isChecked?: boolean;\n isDisabled?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n}\n\nexport function OuterCircle({\n children,\n isChecked,\n isDisabled,\n isHovered,\n isFocused,\n isPressed,\n}: OuterCircleProps): ReactElement {\n const theme = useTheme();\n\n return (\n <View\n alignItems=\"center\"\n justifyContent=\"center\"\n borderWidth=\"kitt.forms.radio.borderWidth\"\n width=\"kitt.forms.radio.size\"\n height=\"kitt.forms.radio.size\"\n borderRadius=\"kitt.forms.radio.borderRadius\"\n backgroundColor={getBackgroundColor({ isChecked, isDisabled, isFocused, isHovered, isPressed })}\n borderColor={getBorderColor({ isChecked, isDisabled, isFocused, isHovered, isPressed })}\n _web={{\n style: {\n transitionProperty: 'all',\n transitionDuration: theme.kitt.forms.radio.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radio.transition.timingFunction,\n },\n }}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { GestureResponderEvent, PressableProps } from 'react-native';\nimport { HStack } from '../../native-base/layout';\nimport { Pressable } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport { InnerCircle } from './InnerCircle';\nimport { OuterCircle } from './OuterCircle';\n\nexport interface RadioProps {\n id?: string;\n testID?: string;\n name?: string;\n checked?: boolean;\n disabled?: boolean;\n right?: boolean;\n children?: NonNullable<ReactNode>;\n value: string;\n onChange?: (newValue: string, event: GestureResponderEvent) => void;\n onBlur?: () => void;\n onFocus?: () => void;\n}\n\nexport const Radio = forwardRef<PressableProps, RadioProps>(\n ({ id, checked, value, disabled, children, testID, onChange, onFocus, onBlur }: RadioProps, ref): ReactElement => {\n const handlePress: PressableProps['onPress'] = (event: GestureResponderEvent) => {\n if (onFocus) onFocus();\n if (onChange) onChange(value, event);\n if (onBlur) onBlur();\n };\n\n return (\n <Pressable\n ref={ref}\n testID={testID}\n nativeID={id}\n disabled={disabled}\n accessibilityRole=\"radio\"\n aria-checked={checked}\n focusable={checked && !disabled}\n flexDirection=\"row\"\n alignItems=\"center\"\n onPress={handlePress}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <HStack space={children ? 'kitt.2' : undefined} alignItems=\"center\">\n <OuterCircle\n isChecked={checked}\n isDisabled={disabled}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n >\n <InnerCircle isChecked={checked} />\n </OuterCircle>\n\n {children ? (\n <Typography.SetDefaultColor value={disabled ? 'black-light' : 'black'}>\n <Typography.Text base=\"body\">{children}</Typography.Text>\n </Typography.SetDefaultColor>\n ) : null}\n </HStack>\n )}\n </Pressable>\n );\n },\n);\n","interface GetCurrentBackgroundColorParams {\n isFocused?: boolean;\n isPressed?: boolean;\n isSelected?: boolean;\n isDisabled?: boolean;\n}\n\nexport function getCurrentBackgroundColor({\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n}: GetCurrentBackgroundColorParams): string {\n if (isDisabled) return 'disabled';\n\n if (isPressed) return 'pressed';\n\n if (isFocused) return 'active';\n\n if (isSelected) return 'active';\n\n return 'default';\n}\n","interface GetCurrentBorderColorParams {\n isFocused?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isDisabled?: boolean;\n}\n\nexport function getCurrentBorderColor({\n isFocused,\n isSelected,\n isPressed,\n isDisabled,\n}: GetCurrentBorderColorParams): string {\n if (isDisabled) return 'disabled';\n\n if (isFocused) return 'hover';\n\n if (isPressed) return 'pressed';\n\n if (isSelected) return 'active';\n\n return 'default';\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../../KittThemeContext';\nimport { View } from '../../../native-base/primitives';\nimport { getCurrentBackgroundColor } from '../utils/getCurrentBackgroundColor';\nimport { getCurrentBorderColor } from '../utils/getCurrentBorderColor';\nimport type { AnimatedContainerProps } from './AnimatedContainer';\n\nexport function AnimatedContainer({\n children,\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n isFirst,\n isLast,\n}: AnimatedContainerProps): ReactElement {\n const theme = useTheme();\n\n return (\n <View\n _web={{\n style: {\n transitionProperty: theme.kitt.forms.radioButtonGroup.item.transition.property,\n transitionDuration: theme.kitt.forms.radioButtonGroup.item.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radioButtonGroup.item.transition.timingFunction,\n },\n }}\n borderColor={`kitt.forms.radioButtonGroup.item.borderColor.${getCurrentBorderColor({\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n })}`}\n borderWidth=\"kitt.forms.radioButtonGroup.item.borderWidth\"\n backgroundColor={`kitt.forms.radioButtonGroup.item.backgroundColor.${getCurrentBackgroundColor({\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n })}`}\n borderTopLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderTopRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderLeftWidth={isFirst ? 'kitt.forms.radioButtonGroup.item.borderWidth' : 0}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\n\ninterface FocusBorderProps {\n isPressed?: boolean;\n isHovered?: boolean;\n isSelected?: boolean;\n isFocused?: boolean;\n isFirst?: boolean;\n isLast?: boolean;\n}\n\nexport function HoverBorder({\n isFirst,\n isLast,\n isSelected,\n isHovered,\n isFocused,\n isPressed,\n}: FocusBorderProps): ReactElement {\n const theme = useTheme();\n const hasPointerInteraction = isPressed || isHovered || isFocused;\n const shouldDisplayBorder = isSelected ? true : hasPointerInteraction;\n\n return (\n <View\n _web={{\n style: {\n width: `calc(100% + ${theme.kitt.forms.radioButtonGroup.item.borderWidth * 2}px)`,\n height: `calc(100% + ${theme.kitt.forms.radioButtonGroup.item.borderWidth * 2}px)`,\n transitionProperty: theme.kitt.forms.radioButtonGroup.item.transition.property,\n transitionDuration: theme.kitt.forms.radioButtonGroup.item.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radioButtonGroup.item.transition.timingFunction,\n },\n }}\n opacity={shouldDisplayBorder ? 1 : 0}\n position=\"absolute\"\n top={-theme.kitt.forms.radioButtonGroup.item.borderWidth}\n left={-theme.kitt.forms.radioButtonGroup.item.borderWidth}\n margin={0}\n borderColor={`kitt.forms.radioButtonGroup.item.borderColor.${\n isHovered || isSelected || isFocused ? 'hover' : 'default'\n }`}\n borderWidth=\"kitt.forms.radioButtonGroup.item.borderWidth\"\n borderTopLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderTopRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n />\n );\n}\n","import type { NativeAnimation, UseNativeAnimationOptions } from './useNativeAnimation';\n\nexport function useNativeAnimation(options: UseNativeAnimationOptions): NativeAnimation {\n return {\n onPressIn: undefined,\n onPressOut: undefined,\n animatedStyles: {},\n };\n}\n","import type { TypographyColor } from '../../../typography/Typography';\n\ninterface GetCurrentTextColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getCurrentTextColor({\n isDisabled,\n isSelected,\n isPressed,\n isHovered,\n isFocused,\n}: GetCurrentTextColorParams): TypographyColor {\n if (isDisabled) return 'black-light';\n\n if (isSelected) return 'white';\n\n if (isPressed) return 'white';\n\n if (isFocused) return 'white';\n\n if (isHovered && !isSelected) return 'black';\n\n return 'black';\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Platform } from 'react-native';\nimport { Pressable, View } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport type { ResponsiveValue } from '../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { createResponsiveStyleFromProp } from '../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { AnimatedContainer } from './AnimatedContainer/AnimatedContainer';\nimport { HoverBorder } from './HoverBorder';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\nimport { getCurrentTextColor } from './utils/getCurrentTextColor';\n\nexport interface RadioButtonProps<V> {\n children: ReactNode;\n isFirst?: boolean;\n isLast?: boolean;\n disabled?: boolean;\n value: V;\n selected?: boolean;\n stretch?: ResponsiveValue<boolean | undefined>;\n /**\n * @internal Used to display pressed UI for testing and storybook purpose\n */\n isPressedInternal?: boolean;\n /**\n * @internal Used to display hovered UI for testing and storybook purpose\n */\n isHoveredInternal?: boolean;\n /**\n * @internal Used to display focused UI for testing and storybook purpose\n */\n isFocusedInternal?: boolean;\n onChange?: (value?: V) => void;\n onFocus?: (e?: any | GestureResponderEvent) => void;\n onBlur?: (e?: any | GestureResponderEvent) => void;\n}\n\nexport function RadioButton<V>({\n children,\n value,\n selected,\n isFirst,\n isLast,\n disabled,\n stretch,\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onChange,\n onFocus,\n onBlur,\n}: RadioButtonProps<V>): ReactElement {\n const { onPressIn, onPressOut, animatedStyles } = useNativeAnimation({\n isDisabled: disabled,\n isSelected: selected,\n isPressedInternal,\n });\n\n const handlePress = (e: GestureResponderEvent): void => {\n if (onFocus) onFocus(e);\n\n if (onChange) onChange(value);\n\n if (onBlur) onBlur(e);\n };\n\n return (\n <Pressable\n accessibilityRole=\"radiogroup\"\n accessibilityState={{ checked: selected }}\n flex={createResponsiveStyleFromProp(stretch, 1, undefined)}\n disabled={disabled}\n onPress={handlePress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <AnimatedContainer\n animatedStyles={animatedStyles}\n isFocused={isFocused || isFocusedInternal}\n isPressed={isPressed || isPressedInternal}\n isSelected={selected}\n isDisabled={disabled}\n isFirst={isFirst}\n isLast={isLast}\n >\n <View\n paddingX=\"kitt.forms.radioButtonGroup.item.padding.horizontal\"\n paddingY=\"kitt.forms.radioButtonGroup.item.padding.vertical\"\n alignItems=\"center\"\n >\n <Typography.SetDefaultColor\n value={getCurrentTextColor({\n isSelected: selected || isPressedInternal,\n isPressed,\n isHovered: isHovered || isHoveredInternal,\n isDisabled: disabled,\n isFocused: isFocused || isFocusedInternal,\n })}\n >\n {children}\n </Typography.SetDefaultColor>\n {Platform.OS === 'web' ? (\n <HoverBorder\n isFirst={isFirst}\n isLast={isLast}\n isSelected={selected}\n isHovered={isHovered || isHoveredInternal}\n isPressed={isPressed || isPressedInternal}\n isFocused={isFocused || isFocusedInternal}\n />\n ) : null}\n </View>\n </AnimatedContainer>\n )}\n </Pressable>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Children, cloneElement, useState } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\nimport type { ResponsiveValue } from '../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { RadioButtonProps } from './RadioButton';\nimport { RadioButton } from './RadioButton';\n\ntype InternalInheritedProps =\n | 'isFirst'\n | 'isLast'\n | 'selected'\n | 'stretch'\n | 'disabled'\n | 'onChange'\n | 'onFocus'\n | 'onBlur';\n\ninterface RadioButtonGroupItemProps<V> extends Omit<RadioButtonProps<V>, InternalInheritedProps> {}\n\nfunction RadioButtonGroupItem<V>({ ...props }: RadioButtonGroupItemProps<V>): ReactElement {\n return <RadioButton {...props} />;\n}\n\nexport interface RadioButtonGroupProps<V> extends Exclude<ViewProps, 'onBlur' | 'onFocus'> {\n children: ReactNode;\n disabled?: boolean;\n hovered?: boolean;\n selected?: boolean;\n stretch?: ResponsiveValue<boolean | undefined>;\n value?: V;\n onChange?: (newValue: V) => void;\n onFocus?: (e?: any) => void;\n onBlur?: (e?: any) => void;\n}\n\nexport function RadioButtonGroup<V>({\n children,\n stretch,\n value,\n disabled,\n onFocus,\n onBlur,\n onChange,\n ...props\n}: RadioButtonGroupProps<V>): ReactElement {\n const [currentValue, setCurrentValue] = useState(value);\n\n const handleChange = (newValue: V): void => {\n if (disabled) return;\n\n setCurrentValue(newValue);\n if (onChange) onChange(newValue);\n };\n\n const childrenArray = Children.toArray(children) as ReactElement<RadioButtonProps<V>, typeof RadioButton>[];\n\n return (\n <View flexDirection=\"row\" flexWrap=\"wrap\" {...props}>\n {childrenArray.map((child, index) => {\n const clone = cloneElement<RadioButtonProps<V>>(child, {\n stretch,\n disabled,\n selected: child.props.value === currentValue,\n isFirst: index === 0,\n isLast: index === childrenArray.length - 1,\n onChange: handleChange,\n onFocus,\n onBlur,\n } as any);\n\n return clone;\n })}\n </View>\n );\n}\n\nRadioButtonGroup.RadioButton = RadioButtonGroupItem;\n","import type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nexport interface TextAreaProps extends InputTextProps {}\n\nexport const TextArea = forwardRef<RNTextInput, TextAreaProps>(({ ...props }: TextAreaProps, ref): ReactElement => {\n return <InputText ref={ref} multiline textAlignVertical=\"top\" minHeight=\"kitt.forms.textArea.minHeight\" {...props} />;\n});\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\n\nexport interface FullscreenModalBodyProps extends ViewProps {\n children: NonNullable<ReactNode>;\n shouldHandleBottomNotch?: boolean;\n shouldHandleTopNotch?: boolean;\n}\n\nexport function FullscreenModalBody({\n children,\n shouldHandleBottomNotch,\n style,\n shouldHandleTopNotch,\n ...props\n}: FullscreenModalBodyProps): ReactElement {\n const { bottom, top } = useSafeAreaInsets();\n const {\n kitt: {\n fullscreenModal: {\n body: { verticalPadding },\n },\n },\n } = useTheme();\n const paddingBottom = shouldHandleBottomNotch ? Math.max(bottom, verticalPadding) : verticalPadding;\n const paddingTop = shouldHandleTopNotch ? Math.max(top, verticalPadding) : verticalPadding;\n\n return (\n <View\n {...props}\n paddingX=\"kitt.fullscreenModal.horizontalPadding\"\n paddingTop={paddingTop}\n paddingBottom={paddingBottom}\n style={style}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface FullscreenModalFooterProps extends ViewProps {\n hasSeparator?: boolean;\n shouldHandleBottomNotch?: boolean;\n}\n\nexport function FullscreenModalFooter({\n shouldHandleBottomNotch = true,\n hasSeparator = true,\n children,\n ...props\n}: FullscreenModalFooterProps): ReactElement {\n const { bottom } = useSafeAreaInsets();\n\n return (\n <View\n borderTopColor=\"kitt.separator\"\n borderTopWidth={hasSeparator ? 1 : undefined}\n paddingTop=\"kitt.fullscreenModal.footer.verticalPadding\"\n paddingBottom={shouldHandleBottomNotch ? bottom : undefined}\n paddingX=\"kitt.fullscreenModal.horizontalPadding\"\n {...props}\n >\n <View paddingBottom=\"kitt.fullscreenModal.footer.verticalPadding\">{children}</View>\n </View>\n );\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { useTheme } from '../KittThemeContext';\nimport { Overlay } from '../Overlay/Overlay';\nimport { View } from '../native-base/primitives';\nimport {\n webAnimationContentDuration,\n webAnimationContentEasing,\n webAnimationOverlayDuration,\n webAnimationOverlayEasing,\n} from '../themes/late-ocean/fullscreenModal';\nimport type { FullscreenModalAnimationProps } from './FullscreenModalAnimation';\n\nconst [x1, y1, x2, y2] = webAnimationContentEasing;\n\nconst cubicBezierSlideIn = `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;\n\nconst slideInFromBottomEnter = css`\n transform: translateY(100%);\n`;\n\nconst slideInFromBottomEnterActive = css`\n transform: translateY(0);\n transition: transform ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst slideInFromBottomExit = css`\n transform: translateY(0);\n`;\n\nconst slideInFromBottomExitActive = css`\n transform: translateY(100%);\n transition: transform ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst slideInClassNames = {\n appear: slideInFromBottomEnter,\n appearActive: slideInFromBottomEnterActive,\n enter: slideInFromBottomEnter,\n enterActive: slideInFromBottomEnterActive,\n exit: slideInFromBottomExit,\n exitActive: slideInFromBottomExitActive,\n};\n\nconst [xA, yA, xB, yB] = webAnimationOverlayEasing;\n\nconst cubicBezierOpacity = `cubic-bezier(${xA}, ${yA}, ${xB}, ${yB})`;\n\nconst opacityEnter = css`\n opacity: 0;\n`;\n\nconst opacityEnterActive = css`\n opacity: 1;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOpacity};\n`;\n\nconst opacityExit = css`\n opacity: 1;\n`;\n\nconst opacityExitActive = css`\n opacity: 0;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOpacity};\n`;\n\nconst opacityClassNames = {\n appear: opacityEnter,\n appearActive: opacityEnterActive,\n enter: opacityEnter,\n enterActive: opacityEnterActive,\n exit: opacityExit,\n exitActive: opacityExitActive,\n};\n\nexport function FullscreenModalAnimation({\n children,\n appear = true,\n visible,\n unmountOnExit = true,\n isAnimationEnabled = true,\n onEnter,\n onEntered,\n onExit,\n onExited,\n onClose,\n ...props\n}: FullscreenModalAnimationProps): ReactElement {\n const theme = useTheme();\n const { animation } = theme.kitt.fullscreenModal;\n\n const sharedProps = {\n in: visible,\n appear,\n unmountOnExit,\n };\n\n return (\n <View {...props}>\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.overlay.duration : 0}\n classNames={opacityClassNames}\n >\n <Overlay onPress={onClose} />\n </CSSTransition>\n\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.content.duration : 0}\n classNames={slideInClassNames}\n onEnter={onEnter}\n onEntered={onEntered}\n onExit={onExit}\n onExited={onExited}\n >\n {children}\n </CSSTransition>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport type { FullscreenModalAnimationProps } from './FullscreenModalAnimation';\nimport { FullscreenModalAnimation } from './FullscreenModalAnimation';\n\nexport interface FullscreenModalBehaviourProps extends FullscreenModalAnimationProps {\n onClose: ModalBehaviourProps['onClose'];\n}\n\nexport function FullscreenModalBehaviour({\n children,\n visible,\n onClose,\n onExited,\n ...props\n}: FullscreenModalBehaviourProps): ReactElement {\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <FullscreenModalAnimation {...props} visible={visible} onExited={handleExitAnimationDone}>\n {children}\n </FullscreenModalAnimation>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface FullscreenModalContainerProps {\n backgroundColor?: ViewProps['backgroundColor'];\n children?: ReactNode;\n}\n\nexport function FullscreenModalContainer({ children, backgroundColor }: FullscreenModalContainerProps): ReactElement {\n return (\n <View\n position=\"relative\"\n flex={1}\n /*\n Here we are setting the same min and max height because on web the content was overflowing and not scrolling\n minHeight is needed to make the modal fullscreen\n maxHeight limits the height to the viewport when the content is too long, this allows us to scroll inside\n */\n _web={{ minHeight: '100vh', maxHeight: '100vh' }}\n backgroundColor={backgroundColor ?? 'kitt.uiBackgroundLight'}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\n\ninterface BaseHeaderProps extends Except<ViewProps, 'left' | 'right'> {\n left?: ReactNode;\n right?: ReactNode;\n hasSeparator?: boolean;\n isTransparent?: boolean;\n shouldHandleTopNotch?: boolean;\n}\n\ninterface TitledHeaderProps extends BaseHeaderProps {\n title?: ReactNode;\n children?: never;\n}\n\ninterface ComponentHeaderProps extends BaseHeaderProps {\n title?: never;\n children?: ReactNode;\n}\n\nexport type FullscreenModalHeaderProps = TitledHeaderProps | ComponentHeaderProps;\n\nexport function FullscreenModalHeader({\n hasSeparator = true,\n isTransparent,\n title,\n children,\n right,\n left,\n shouldHandleTopNotch = true,\n ...props\n}: FullscreenModalHeaderProps): ReactElement {\n const { top } = useSafeAreaInsets();\n const hasRight = Boolean(right);\n const hasLeft = Boolean(left);\n const hasContent = Boolean(title || children);\n\n return (\n <View\n backgroundColor={isTransparent ? 'kitt.transparent' : 'kitt.uiBackgroundLight'}\n minHeight=\"kitt.fullscreenModal.header.height\"\n width=\"100%\"\n justifyContent=\"center\"\n paddingTop={shouldHandleTopNotch ? top : undefined}\n paddingRight={hasRight ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding'}\n paddingLeft={hasLeft ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding'}\n borderBottomColor=\"kitt.separator\"\n borderBottomWidth={hasSeparator ? 1 : undefined}\n {...props}\n >\n <View\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent={!hasContent && !hasLeft ? 'flex-end' : 'space-between'}\n >\n {left ? <View width=\"kitt.iconButton.width\">{left}</View> : null}\n\n {title ? (\n <View flex={1} paddingLeft={hasLeft ? 'kitt.2' : undefined} paddingRight={hasRight ? 'kitt.2' : 0}>\n <Typography.Text variant=\"bold\" textAlign={!hasLeft && hasRight ? 'left' : 'center'}>\n {title}\n </Typography.Text>\n </View>\n ) : null}\n\n {children ? (\n <View\n flex={1}\n alignItems=\"center\"\n paddingLeft={hasLeft ? 'kitt.2' : undefined}\n paddingRight={hasRight ? 'kitt.2' : undefined}\n >\n {children}\n </View>\n ) : null}\n\n {right || left ? <View width=\"kitt.iconButton.width\">{right}</View> : null}\n </View>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { ScrollView } from 'react-native';\nimport type { ViewProps } from '..';\nimport { View } from '../native-base/primitives';\nimport { FullscreenModalBody } from './Body';\nimport { FullscreenModalFooter } from './Footer';\nimport { FullscreenModalBehaviour } from './FullscreenModalBehaviour';\nimport { FullscreenModalContainer } from './FullscreenModalContainer';\nimport { FullscreenModalHeader } from './Header';\n\nexport interface FullscreenModalProps {\n header?: ReactNode;\n footer?: ReactNode;\n body: ReactNode;\n backgroundColor?: ViewProps['backgroundColor'];\n}\n\nexport function FullscreenModal({ body, header, footer, backgroundColor }: FullscreenModalProps): ReactElement {\n return (\n <FullscreenModalContainer backgroundColor={backgroundColor}>\n {header ? <View>{header}</View> : null}\n <View flexGrow={1} flexShrink={1} justifyContent=\"space-between\">\n <ScrollView bounces={false} contentContainerStyle={{ flexGrow: 1, position: 'relative' }}>\n {body}\n </ScrollView>\n {footer || null}\n </View>\n </FullscreenModalContainer>\n );\n}\n\nFullscreenModal.Header = FullscreenModalHeader;\nFullscreenModal.Footer = FullscreenModalFooter;\nFullscreenModal.Body = FullscreenModalBody;\nFullscreenModal.ModalBehaviour = FullscreenModalBehaviour;\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\n\n/** @deprecated use primary instead */\ntype DeprecatedHighlightVariant = 'regular';\n\ntype HighlightVariant = 'primary' | 'secondary' | 'dark' | DeprecatedHighlightVariant;\n\nexport interface HighlightProps {\n variant?: HighlightVariant;\n children: NonNullable<ReactNode>;\n}\n\nexport function Highlight({ variant = 'regular', children }: HighlightProps): ReactElement {\n return (\n <View\n borderRadius=\"kitt.highlight.borderRadius\"\n padding=\"kitt.highlight.padding\"\n backgroundColor={`kitt.highlight.${variant}.backgroundColor`}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport type { IconButtonColor } from './IconButton';\n\nfunction getBackgroundColor(color: IconButtonColor, isDisabled?: boolean): string {\n if (isDisabled) {\n return 'kitt.iconButton.disabled.backgroundColor';\n }\n\n switch (color) {\n case 'primary':\n return 'kitt.iconButton.primary.pressed.backgroundColor';\n case 'white':\n return 'kitt.iconButton.white.pressed.backgroundColor';\n case 'black':\n default:\n return 'kitt.iconButton.black.pressed.backgroundColor';\n }\n}\n\ninterface BackgroundProps extends ViewProps {\n color: IconButtonColor;\n isDisabled?: boolean;\n _web?: Partial<ViewProps>;\n}\n\nexport function Background({ color, isDisabled, ...props }: BackgroundProps): ReactElement {\n return (\n <View\n {...props}\n width=\"100%\"\n height=\"100%\"\n borderRadius=\"kitt.iconButton.borderRadius\"\n backgroundColor={getBackgroundColor(color, isDisabled)}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport type { AnimatedBackgroundProps } from './AnimatedBackground';\nimport { Background } from './Background';\n\nexport function AnimatedBackground({\n color,\n isHovered,\n isPressed,\n isFocused,\n isDisabled,\n}: AnimatedBackgroundProps): ReactElement {\n const theme = useTheme();\n const { duration, timingFunction } = theme.kitt.iconButton.transition;\n\n const shouldDisplayBackground = isHovered || isPressed || isFocused || isDisabled;\n\n return (\n <Background\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n opacity={shouldDisplayBackground ? 1 : 0}\n color={color}\n isDisabled={isDisabled}\n _web={{\n style: {\n transitionProperty: 'all',\n transitionDuration: duration,\n transitionTimingFunction: timingFunction,\n },\n }}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport { useBreakpointValue } from '../native-base/utils';\nimport type { AnimatedScaleProps } from './AnimatedScale';\n\nfunction getCurrentScale(isHovered: boolean, scaleHover: number, isPressed: boolean, scalePressed: number): number {\n if (isPressed) {\n return scalePressed;\n }\n\n if (isHovered) {\n return scaleHover;\n }\n\n return 1;\n}\n\nexport function AnimatedScale({ children, isHovered, isPressed, isDisabled }: AnimatedScaleProps): ReactElement {\n const theme = useTheme();\n const { scale } = theme.kitt.iconButton;\n\n const currentHoverScale = useBreakpointValue({\n base: scale.base.hover,\n medium: scale.medium.hover,\n }) as number;\n\n const currentPressedScale = useBreakpointValue({\n base: scale.base.active,\n medium: scale.medium.active,\n }) as number;\n\n const currentScale = getCurrentScale(Boolean(isHovered), currentHoverScale, Boolean(isPressed), currentPressedScale);\n\n const { duration, timingFunction } = theme.kitt.iconButton.transition;\n\n return (\n <View\n position=\"relative\"\n alignItems=\"center\"\n justifyContent=\"center\"\n width=\"100%\"\n height=\"100%\"\n overflow=\"hidden\"\n _web={{\n style: {\n transitionProperty: 'transform',\n transitionDuration: duration,\n transitionTimingFunction: timingFunction,\n /* Simplifies the animation to just the front of the object – avoid blurry scale */\n backfaceVisibility: 'hidden',\n transform: [{ scale: isDisabled ? 1 : currentScale }],\n },\n }}\n >\n {children}\n </View>\n );\n}\n","import type { UseNativeAnimation } from './useNativeAnimation';\n\nexport function useNativeAnimation(): UseNativeAnimation {\n return {\n opacityStyles: undefined,\n scaleStyles: undefined,\n onPressIn: () => {},\n onPressOut: () => {},\n };\n}\n","import type { ReactElement } from 'react';\nimport type { PressableProps } from '../native-base/primitives';\nimport { Pressable, View } from '../native-base/primitives';\nimport { TypographyIcon } from '../typography/TypographyIcon';\nimport { AnimatedBackground } from './AnimatedBackground';\nimport { AnimatedScale } from './AnimatedScale';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\n\nexport type IconButtonColor = 'black' | 'white' | 'primary';\n\nexport interface IconButtonProps {\n icon: NonNullable<ReactElement>;\n color?: IconButtonColor;\n disabled?: boolean;\n testID?: string;\n accessibilityLabel?: PressableProps['accessibilityLabel'];\n accessibilityRole?: PressableProps['accessibilityRole'];\n /** @internal for story purpose */\n isHoveredInternal?: boolean;\n /** @internal for story purpose */\n isPressedInternal?: boolean;\n /** @internal for story purpose */\n isFocusedInternal?: boolean;\n onPress?: () => void;\n}\n\nexport function IconButton({\n icon,\n color = 'black',\n disabled,\n testID,\n accessibilityLabel,\n accessibilityRole = 'button',\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onPress,\n}: IconButtonProps): ReactElement {\n const { onPressIn, onPressOut, opacityStyles, scaleStyles } = useNativeAnimation({\n isDisabled: disabled,\n isPressed: isPressedInternal,\n });\n\n return (\n <Pressable\n testID={testID}\n disabled={disabled}\n width=\"kitt.iconButton.width\"\n height=\"kitt.iconButton.height\"\n accessibilityLabel={accessibilityLabel}\n accessibilityRole={accessibilityRole}\n _web={{\n style: {\n backfaceVisibility: 'hidden',\n transform: [{ translate3d: '0' }],\n },\n }}\n borderRadius=\"kitt.iconButton.borderRadius\"\n borderColor={disabled ? 'kitt.iconButton.disabled.borderColor' : 'kitt.iconButton.borderColor'}\n borderWidth={disabled ? 'kitt.iconButton.borderWidth' : 0}\n onPress={onPress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n >\n {({ isHovered, isPressed, isFocused }) => {\n const isCurrentHovered = isHovered || isHoveredInternal;\n const isCurrentPressed = isPressed || isPressedInternal;\n const isCurrentFocused = isFocused || isFocusedInternal;\n\n return (\n <AnimatedScale\n isDisabled={disabled}\n isHovered={isCurrentHovered}\n isPressed={isCurrentPressed}\n scaleStyles={scaleStyles}\n >\n <AnimatedBackground\n color={color}\n isDisabled={disabled}\n isHovered={isCurrentHovered}\n isPressed={isCurrentPressed}\n isFocused={isCurrentFocused}\n opacityStyles={opacityStyles}\n />\n <View alignItems=\"center\" justifyContent=\"center\">\n <TypographyIcon color={disabled ? 'black-light' : color} icon={icon} />\n </View>\n </AnimatedScale>\n );\n }}\n </Pressable>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext, useMemo } from 'react';\n\nexport interface KittMapConfigProviderConfig {\n mapId: string;\n apiToken: string;\n}\n\nexport const KittMapConfigProviderContext = createContext<KittMapConfigProviderConfig | undefined>(undefined);\n\nexport interface KittMapProviderProps {\n mapId: string;\n apiToken: string;\n children: ReactNode;\n}\n\nexport function KittMapConfigProvider({ children, mapId, apiToken }: KittMapProviderProps): ReactElement {\n const providerValue = useMemo(\n () => ({\n mapId,\n apiToken,\n }),\n [mapId, apiToken],\n );\n\n return (\n <KittMapConfigProviderContext.Provider value={providerValue}>{children}</KittMapConfigProviderContext.Provider>\n );\n}\n","import { useContext } from 'react';\nimport type { KittMapConfigProviderConfig } from '../KittMapConfigProvider';\nimport { KittMapConfigProviderContext } from '../KittMapConfigProvider';\n\nexport function useKittMapConfig(): KittMapConfigProviderConfig {\n const context = useContext(KittMapConfigProviderContext);\n\n if (!context) {\n throw new Error('<KittMapConfigProvider> missing in the react tree');\n }\n\n return context;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from 'react-native';\nimport { View } from '../native-base/primitives';\n\nexport interface ListItemContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n}\n\nexport function ListItemContent({ children, ...rest }: ListItemContentProps): ReactElement {\n return (\n <View alignSelf=\"center\" flexBasis=\"0%\" flexGrow={1} flexShrink={0} {...rest}>\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps, ViewStyle } from 'react-native';\nimport { View } from '../native-base/primitives';\n\nexport interface ListItemSideContainerProps extends ViewProps {\n children: NonNullable<ReactNode>;\n side?: 'left' | 'right';\n}\n\n// Handles the vertical alignment of the side elements of the list item\nexport function ListItemSideContainer({ children, side = 'left', ...rest }: ListItemSideContainerProps): ReactElement {\n return (\n <View\n flexDirection=\"row\"\n marginLeft={side === 'right' ? 'kitt.2' : undefined}\n marginRight={side === 'left' ? 'kitt.2' : undefined}\n {...rest}\n >\n {children}\n </View>\n );\n}\n\nexport interface ListItemSideContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n align?: ViewStyle['alignSelf'];\n}\n\nexport function ListItemSideContent({ children, align = 'auto', ...rest }: ListItemSideContentProps): ReactElement {\n return (\n <View alignSelf={align} {...rest}>\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Fragment } from 'react';\nimport type { PressableProps, ViewProps } from 'react-native';\nimport { Pressable } from 'react-native';\nimport { View } from '../native-base/primitives';\nimport { ListItemContent } from './ListItemContent';\nimport { ListItemSideContainer, ListItemSideContent } from './ListItemSideContent';\n\ntype Borders = 'top' | 'bottom' | 'both';\n\nexport interface ListItemProps extends ViewProps {\n children: NonNullable<ReactNode>;\n left?: ReactNode;\n right?: ReactNode;\n borders?: Borders;\n withPadding?: boolean;\n onPress?: PressableProps['onPress'];\n}\n\nexport function ListItem({\n children,\n withPadding,\n borders,\n left,\n right,\n onPress,\n ...rest\n}: ListItemProps): ReactElement {\n const Wrapper = onPress ? Pressable : Fragment;\n const wrapperProps = onPress ? { accessibilityRole: 'button', onPress, ...rest } : undefined;\n const containerProps = onPress ? undefined : rest;\n\n return (\n <Wrapper {...(wrapperProps as any)}>\n <View\n flexDirection=\"row\"\n paddingX={withPadding ? 'kitt.listItem.horizontalPadding' : undefined}\n paddingY={withPadding ? 'kitt.listItem.verticalPadding' : undefined}\n borderColor=\"kitt.listItem.borderColor\"\n backgroundColor=\"kitt.uiBackgroundLight\"\n borderTopWidth={borders === 'top' || borders === 'both' ? 'kitt.listItem.borderWidth' : undefined}\n borderBottomWidth={borders === 'bottom' || borders === 'both' ? 'kitt.listItem.borderWidth' : undefined}\n {...containerProps}\n >\n {left ? <ListItemSideContainer side=\"left\">{left}</ListItemSideContainer> : null}\n\n <ListItemContent>{children}</ListItemContent>\n\n {right ? <ListItemSideContainer side=\"right\">{right}</ListItemSideContainer> : null}\n </View>\n </Wrapper>\n );\n}\n\nListItem.Content = ListItemContent;\nListItem.SideContent = ListItemSideContent;\nListItem.SideContainer = ListItemSideContainer;\n","<svg fill=\"currentColor\" viewBox=\"0 0 54 56\" width=\"54\" xmlns=\"http://www.w3.org/2000/svg\"><linearGradient id=\"marker-large_inline_svg__b\" gradientUnits=\"userSpaceOnUse\" x1=\"26.828\" x2=\"7.181\" y1=\"5.072\" y2=\"39.102\"><stop offset=\"0\" stop-opacity=\".01\"/><stop offset=\"1\"/></linearGradient><filter id=\"marker-large_inline_svg__a\" color-interpolation-filters=\"sRGB\" filterUnits=\"userSpaceOnUse\" height=\"48.706\" width=\"42.761\" x=\"10.437\" y=\"5.167\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/><feBlend in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"/><feGaussianBlur result=\"effect1_foregroundBlur_257_3018\" stdDeviation=\"2.718\"/></filter><mask id=\"marker-large_inline_svg__c\" height=\"43\" maskUnits=\"userSpaceOnUse\" width=\"31\" x=\"3\" y=\"3\"><path d=\"M16.303 44.99a3.002 3.002 0 0 0 4.394 0C29.631 35.38 34 26.678 34 18.938 34 10.12 27.04 3 18.5 3S3 10.12 3 18.938c0 7.74 4.369 16.442 13.303 26.052z\" fill=\"#fff\"/></mask><g filter=\"url(#marker-large_inline_svg__a)\" opacity=\".25\"><path d=\"M24.022 48.149c-3.018 1.02-6.128-.775-6.753-3.899-1.372-6.862-2.799-18.548 1.348-25.73C22.966 10.985 32.545 8.374 40 12.678c7.454 4.303 9.982 13.903 5.63 21.44-4.146 7.182-14.98 11.79-21.608 14.032z\" fill=\"url(#marker-large_inline_svg__b)\"/></g><g mask=\"url(#marker-large_inline_svg__c)\"><path d=\"M3 3h31v43H3z\" fill=\"#4c34e0\"/></g><path d=\"M15.677 46.315c-2.682-3.029-6.253-7.443-9.145-12.356C3.622 29.015 1.5 23.735 1.5 18.938 1.5 9.27 9.152 1.5 18.5 1.5c9.349 0 17 7.771 17 17.438 0 4.797-2.122 10.077-5.032 15.02-2.892 4.914-6.463 9.328-9.145 12.357-1.536 1.735-4.11 1.735-5.646 0z\" stroke=\"#fff\" stroke-width=\"3\"/></svg>","<svg viewBox=\"0 0 40 39\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M16.417 33.38c-2.3.776-4.668-.592-5.146-2.971-1.059-5.274-2.171-14.297 1.027-19.837 3.348-5.798 10.717-7.806 16.452-4.495 5.735 3.31 7.68 10.697 4.333 16.495-3.198 5.54-11.57 9.088-16.666 10.808z\" fill=\"url(#marker_inline_svg__a)\" opacity=\".25\" filter=\"url(#marker_inline_svg__b)\"/><path d=\"M10.89 29.536a2.81 2.81 0 0 0 4.22 0C20.428 23.492 23 18.054 23 13.256 23 7.58 18.507 3 13 3S3 7.58 3 13.256c0 4.798 2.572 10.236 7.89 16.28z\" fill=\"#4C34E0\"/><mask id=\"marker_inline_svg__c\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"3\" y=\"3\" width=\"20\" height=\"28\"><path d=\"M10.89 29.536a2.81 2.81 0 0 0 4.22 0C20.428 23.492 23 18.054 23 13.256 23 7.58 18.507 3 13 3S3 7.58 3 13.256c0 4.798 2.572 10.236 7.89 16.28z\" fill=\"#fff\"/></mask><g mask=\"url(#marker_inline_svg__c)\"><path fill=\"#4C34E0\" d=\"M3 3h20v27H3z\"/></g><path d=\"M10.374 31c-1.884-2.216-4.125-5.144-5.888-8.307C2.71 19.505 1.5 16.22 1.5 13.256 1.5 6.734 6.681 1.5 13 1.5s11.5 5.234 11.5 11.756c0 2.964-1.21 6.249-2.986 9.437-1.763 3.163-4.004 6.091-5.888 8.307-1.414 1.662-3.838 1.662-5.252 0z\" stroke=\"#fff\" stroke-width=\"3\"/><defs><linearGradient id=\"marker_inline_svg__a\" x1=\"18.616\" y1=\".226\" x2=\"3.501\" y2=\"26.405\" gradientUnits=\"userSpaceOnUse\"><stop stop-opacity=\".01\"/><stop offset=\"1\"/></linearGradient><filter id=\"marker_inline_svg__b\" x=\"6.046\" y=\".339\" width=\"32.817\" height=\"37.4\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/><feBlend in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"/><feGaussianBlur stdDeviation=\"2.071\" result=\"effect1_foregroundBlur_257_3020\"/></filter></defs></svg>","<svg viewBox=\"0 0 47 47\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M23.5 36C30.404 36 36 30.404 36 23.5S30.404 11 23.5 11 11 16.596 11 23.5 16.596 36 23.5 36z\" fill=\"#38836D\" opacity=\".8\" filter=\"url(#position-marker_inline_svg__a)\"/><path d=\"M31 18.5a7.5 7.5 0 1 1-15 0 7.5 7.5 0 0 1 15 0z\" fill=\"#fff\" stroke=\"#38836D\" stroke-width=\"10\"/><circle cx=\"23.5\" cy=\"18.5\" r=\"2.5\" fill=\"#fff\"/><defs><filter id=\"position-marker_inline_svg__a\" x=\".127\" y=\".127\" width=\"46.746\" height=\"46.746\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/><feBlend in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"/><feGaussianBlur stdDeviation=\"5.437\" result=\"effect1_foregroundBlur_257_3019\"/></filter></defs></svg>","import { useSx } from 'native-base';\nimport type { ColorType } from 'native-base/lib/typescript/components/types';\nimport type { ReactElement } from 'react';\nimport LargeMarkerSvg from './assets/marker-large.inline.svg';\nimport DefaultMarkerSvg from './assets/marker.inline.svg';\nimport PositionMarkerSvg from './assets/position-marker.inline.svg';\n\ninterface BaseMarkerWithSizeProps {\n width: number;\n height: number;\n}\n\ninterface BaseMarkerWithoutSizeProps {\n width?: never;\n height?: never;\n}\n\ninterface BaseMarkerWithColorProp {\n color?: ColorType;\n}\n\nexport type MapMarkerProps = BaseMarkerWithSizeProps | BaseMarkerWithoutSizeProps;\n\nexport function MapMarkerSimple({\n width = 40,\n height = 39,\n color = 'kitt.primary',\n}: MapMarkerProps & BaseMarkerWithColorProp): ReactElement {\n const sx = useSx();\n const styles = sx({\n color,\n });\n\n return <DefaultMarkerSvg width={width} height={height} color={styles.color} />;\n}\n\nexport function MapMarkerLarge({\n width = 54,\n height = 56,\n color = 'kitt.primary',\n}: MapMarkerProps & BaseMarkerWithColorProp): ReactElement {\n const sx = useSx();\n const styles = sx({\n color,\n });\n\n return <LargeMarkerSvg width={width} height={height} color={styles.color} />;\n}\n\nexport function MapMarkerPosition({ width = 47, height = 47 }: MapMarkerProps): ReactElement {\n return <PositionMarkerSvg width={width} height={height} />;\n}\n","import { AlertCircleIcon, AlertTriangleIcon, CheckIcon, InfoIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { MessageType } from './BaseMessage';\n\ninterface IconContentProps {\n type: MessageType;\n color: TypographyColor;\n}\n\nexport function IconContent({ type, color }: IconContentProps): ReactElement {\n switch (type) {\n case 'warning':\n return <AlertCircleIcon color={color} />;\n case 'success':\n return <CheckIcon color={color} />;\n case 'danger':\n return <AlertTriangleIcon color={color} />;\n default:\n return <InfoIcon color={color} />;\n }\n}\n","import type { IconButtonProps } from '../IconButton/IconButton';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { MessageType } from './BaseMessage';\n\nexport const getColorByType = (type: MessageType): TypographyColor => {\n switch (type) {\n case 'success':\n return 'white';\n case 'danger':\n return 'white';\n case 'warning':\n default:\n return 'black';\n }\n};\n\nexport const getIconButtonColor = (messageType: MessageType): IconButtonProps['color'] => {\n switch (messageType) {\n case 'success':\n case 'danger':\n return 'white';\n case 'warning':\n default:\n return 'black';\n }\n};\n","import { XIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { EdgeInsets } from 'react-native-safe-area-context';\nimport { Icon } from '../Icon/Icon';\nimport { IconButton } from '../IconButton/IconButton';\nimport { HStack } from '../native-base/layout';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { IconContent } from './IconContent';\nimport { getColorByType, getIconButtonColor } from './helper';\n\nexport type MessageType = 'success' | 'warning' | 'danger' | 'info';\n\nexport interface BaseMessageProps {\n type?: MessageType;\n children: NonNullable<ReactNode>;\n /**\n * @internal for styling between Message and Notification\n */\n hasNoRadius?: boolean;\n centeredText?: boolean;\n insets?: EdgeInsets;\n onDismiss?: () => void;\n}\n\nexport function BaseMessage({\n type = 'info',\n children,\n hasNoRadius,\n centeredText,\n insets,\n onDismiss,\n}: BaseMessageProps): ReactElement {\n const color = getColorByType(type);\n\n return (\n <HStack\n alignItems=\"flex-start\"\n justifyContent=\"space-between\"\n minHeight=\"kitt.feedbackMessage.minHeight\"\n paddingTop={insets?.top}\n borderRadius={hasNoRadius ? undefined : 'kitt.5'}\n backgroundColor={`kitt.feedbackMessage.${type}.backgroundColor`}\n >\n <HStack\n flexGrow={1}\n flexShrink={1}\n alignSelf=\"center\"\n alignItems=\"flex-start\"\n paddingY=\"kitt.4\"\n paddingX=\"kitt.5\"\n >\n {centeredText ? null : (\n <View marginTop=\"kitt.1\" marginRight=\"kitt.5\">\n <Icon color={color} icon={<IconContent type={type} color={color} />} />\n </View>\n )}\n <Typography.Text\n flexGrow={1}\n flexShrink={1}\n textAlign={centeredText ? 'center' : 'left'}\n base=\"body\"\n color={color}\n >\n {children}\n </Typography.Text>\n </HStack>\n\n {onDismiss ? (\n <View alignItems=\"center\" marginTop={10} marginRight=\"kitt.2\" marginLeft=\"kitt.5\">\n <IconButton color={getIconButtonColor(type)} icon={<XIcon />} onPress={onDismiss} />\n </View>\n ) : null}\n </HStack>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { BaseMessageProps } from '../BaseMessage/BaseMessage';\nimport { BaseMessage } from '../BaseMessage/BaseMessage';\n\nexport interface MessageProps extends BaseMessageProps {}\n\nexport function Message({\n type = 'info',\n children,\n hasNoRadius,\n centeredText,\n insets,\n onDismiss,\n}: MessageProps): ReactElement {\n return (\n <BaseMessage\n insets={insets}\n hasNoRadius={hasNoRadius}\n type={type}\n centeredText={centeredText}\n onDismiss={onDismiss}\n >\n {children}\n </BaseMessage>\n );\n}\n","import type { NativeBaseProviderProps } from 'native-base';\nimport { NativeBaseProvider, extendTheme } from 'native-base';\nimport type { ReactElement, ReactNode } from 'react';\nimport { useMemo } from 'react';\nimport { Platform } from 'react-native';\nimport type { KittTheme } from '..';\nimport { KittBreakpoints } from '../KittBreakpoints';\nimport { KittThemeContext } from '../KittThemeContext';\nimport type { Theme } from '../themes/default';\n\nexport type Enumerate<N, A extends number[] = []> = A['length'] extends N\n ? A[number]\n : Enumerate<N, [...A, A['length']]>;\n\ntype KittSize = `kitt.${Exclude<Enumerate<65>, 0>}`;\ntype KittNegativeSize = `-kitt.${Exclude<Enumerate<65>, 0>}`;\n\ntype KittScaleRecord = Record<KittSize, number>;\ntype KittNegativeScaleRecord = Record<KittNegativeSize, number>;\ninterface KittSizeRecord {\n positive: Partial<KittScaleRecord>;\n negative: Partial<KittNegativeScaleRecord>;\n}\n\nconst createKittSpaces = (theme: Theme): KittSizeRecord => {\n const MAX_SIZE = 64;\n const sizes: KittSizeRecord = {\n positive: {},\n negative: {},\n };\n for (let size = 1; size <= MAX_SIZE; size++) {\n sizes.positive[`kitt.${size}` as KittSize] = theme.getSpacing(size);\n sizes.negative[`-kitt.${size}` as KittNegativeSize] = -theme.getSpacing(size);\n }\n return sizes;\n};\n\n// reset native-base to be able to set size / space as a number\n// https://docs.nativebase.io/next/default-theme#h2-size\nconst overridenNativeBaseSizeandSpaceScale = Object.fromEntries(\n [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 16, 20, 24, 32, 40, 48, 56, 64, 72, 80, 96, 0.5, 1.5, 2.5, 3.5].map((value) => [\n value,\n value,\n ]),\n);\n\nexport interface AppKittThemeExtensionsBreakpoints {}\nexport interface AppKittThemeExtensionsColors {}\nexport interface AppKittThemeExtensionsSizes {}\nexport interface AppKittThemeExtensionsSpace {}\nexport interface AppKittThemeExtensionsShadows {}\nexport interface AppKittThemeExtensionsOpacity {}\nexport interface AppKittThemeExtensionsBorderWidths {}\nexport interface AppKittThemeExtensionsRadii {}\n\nexport interface AppKittThemeExtensions {\n sizes: AppKittThemeExtensionsSpace;\n space: AppKittThemeExtensionsSpace;\n shadows: AppKittThemeExtensionsShadows;\n opacity: AppKittThemeExtensionsOpacity;\n borderWidths: AppKittThemeExtensionsBorderWidths;\n colors: AppKittThemeExtensionsColors;\n radii: AppKittThemeExtensionsRadii;\n breakpoints: AppKittThemeExtensionsBreakpoints;\n}\n\nexport type ExtensibleNativeBaseThemeKey =\n | 'sizes'\n | 'space'\n | 'shadows'\n | 'opacity'\n | 'borderWidths'\n | 'colors'\n | 'radii'\n | 'breakpoints';\n\nexport type ExtensibleNativeBaseAppThemeConfig = Partial<Record<ExtensibleNativeBaseThemeKey, Record<string, any>>>;\n\ntype ValidAppTheme<T> = T extends ExtensibleNativeBaseAppThemeConfig ? T : never;\n\nexport type AppTheme = Partial<ValidAppTheme<AppKittThemeExtensions>>;\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type -- let typescript infer types\nexport function createKittNativeBaseCustomTheme(theme: Theme, appTheme?: AppTheme) {\n const spaces = createKittSpaces(theme);\n\n const appBreakpoints: AppKittThemeExtensionsBreakpoints =\n appTheme?.breakpoints || ({} as AppKittThemeExtensionsBreakpoints);\n\n const extendedTheme = extendTheme({\n colors: {\n kitt: {\n ...theme.colors,\n actionCard: {\n secondary: {\n default: {\n backgroundColor: theme.actionCard.secondary.default.backgroundColor,\n borderColor: theme.actionCard.secondary.default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard.secondary.disabled.backgroundColor,\n borderColor: theme.actionCard.secondary.disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard.secondary.hovered.backgroundColor,\n borderColor: theme.actionCard.secondary.hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard.secondary.focused.backgroundColor,\n borderColor: theme.actionCard.secondary.focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard.secondary.pressed.backgroundColor,\n borderColor: theme.actionCard.secondary.pressed.borderColor,\n },\n },\n primary: {\n default: {\n backgroundColor: theme.actionCard.primary.default.backgroundColor,\n borderColor: theme.actionCard.primary.default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard.primary.disabled.backgroundColor,\n borderColor: theme.actionCard.primary.disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard.primary.hovered.backgroundColor,\n borderColor: theme.actionCard.primary.hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard.primary.focused.backgroundColor,\n borderColor: theme.actionCard.primary.focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard.primary.pressed.backgroundColor,\n borderColor: theme.actionCard.primary.pressed.borderColor,\n },\n },\n 'primary-border-soft': {\n default: {\n backgroundColor: theme.actionCard['primary-border-soft'].default.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard['primary-border-soft'].disabled.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard['primary-border-soft'].hovered.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard['primary-border-soft'].focused.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard['primary-border-soft'].pressed.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].pressed.borderColor,\n },\n },\n 'primary-border-hard': {\n default: {\n backgroundColor: theme.actionCard['primary-border-hard'].default.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard['primary-border-hard'].disabled.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard['primary-border-hard'].hovered.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard['primary-border-hard'].focused.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard['primary-border-hard'].pressed.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].pressed.borderColor,\n },\n },\n highlight: {\n default: {\n backgroundColor: theme.actionCard.highlight.default.backgroundColor,\n borderColor: theme.actionCard.highlight.default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard.highlight.disabled.backgroundColor,\n borderColor: theme.actionCard.highlight.disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard.highlight.hovered.backgroundColor,\n borderColor: theme.actionCard.highlight.hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard.highlight.focused.backgroundColor,\n borderColor: theme.actionCard.highlight.focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard.highlight.pressed.backgroundColor,\n borderColor: theme.actionCard.highlight.pressed.borderColor,\n },\n },\n },\n avatar: {\n default: {\n backgroundColor: theme.colors.primary,\n },\n light: {\n backgroundColor: theme.palettes.lateOcean.black100,\n },\n },\n button: {\n default: theme.button.default,\n primary: theme.button.primary,\n danger: theme.button.danger,\n white: theme.button.white,\n subtle: theme.button.subtle,\n 'subtle-dark': theme.button['subtle-dark'],\n disabled: theme.button.disabled,\n },\n choices: {\n item: {\n default: {\n backgroundColor: theme.choices.item.backgroundColor.default,\n },\n disabled: {\n backgroundColor: theme.choices.item.backgroundColor.disabled,\n borderColor: theme.choices.item.disabled.border.color,\n },\n selected: {\n backgroundColor: theme.choices.item.backgroundColor.selected,\n },\n pressed: {\n backgroundColor: theme.choices.item.backgroundColor.pressed,\n },\n hover: {\n backgroundColor: theme.choices.item.backgroundColor.hover,\n },\n hoverWhenSelected: {\n backgroundColor: theme.choices.item.backgroundColor.hoverWhenSelected,\n },\n },\n },\n tag: {\n primary: {\n fill: {\n backgroundColor: theme.tag.primary.fill.backgroundColor,\n borderColor: theme.tag.primary.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.primary.outline.backgroundColor,\n borderColor: theme.tag.primary.outline.borderColor,\n },\n },\n default: {\n fill: {\n backgroundColor: theme.tag.default.fill.backgroundColor,\n borderColor: theme.tag.default.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.default.outline.backgroundColor,\n borderColor: theme.tag.default.outline.borderColor,\n },\n },\n danger: {\n fill: {\n backgroundColor: theme.tag.danger.fill.backgroundColor,\n borderColor: theme.tag.danger.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.danger.outline.backgroundColor,\n borderColor: theme.tag.danger.outline.borderColor,\n },\n },\n warn: {\n fill: {\n backgroundColor: theme.tag.warn.fill.backgroundColor,\n borderColor: theme.tag.warn.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.warn.outline.backgroundColor,\n borderColor: theme.tag.warn.outline.borderColor,\n },\n },\n },\n tooltip: {\n backgroundColor: theme.tooltip.backgroundColor,\n },\n typography: theme.typography.colors,\n palettes: theme.palettes,\n feedbackMessage: {\n danger: { backgroundColor: theme.feedbackMessage.danger.backgroundColor },\n info: { backgroundColor: theme.feedbackMessage.info.backgroundColor },\n success: { backgroundColor: theme.feedbackMessage.success.backgroundColor },\n warning: { backgroundColor: theme.feedbackMessage.warning.backgroundColor },\n },\n forms: {\n autocomplete: {\n option: {\n default: { backgroundColor: theme.forms.autocomplete.option.default.backgroundColor },\n hovered: { backgroundColor: theme.forms.autocomplete.option.hovered.backgroundColor },\n focused: { backgroundColor: theme.forms.autocomplete.option.focused.backgroundColor },\n selected: { backgroundColor: theme.forms.autocomplete.option.selected.backgroundColor },\n highlighted: { backgroundColor: theme.forms.autocomplete.option.highlighted.backgroundColor },\n pressed: { backgroundColor: theme.forms.autocomplete.option.pressed.backgroundColor },\n },\n optionsContainer: {\n backgroundColor: theme.forms.autocomplete.optionsContainer.backgroundColor,\n },\n },\n input: {\n states: theme.forms.input.states,\n },\n inputTag: {\n danger: {\n backgroundColor: theme.forms.inputTag.danger.backgroundColor,\n },\n default: {\n backgroundColor: theme.forms.inputTag.default.backgroundColor,\n },\n success: {\n backgroundColor: theme.forms.inputTag.success.backgroundColor,\n },\n },\n radioButtonGroup: {\n item: {\n borderColor: theme.forms.radioButtonGroup.item.borderColor,\n backgroundColor: theme.forms.radioButtonGroup.item.backgroundColor,\n },\n },\n checkbox: {\n markColor: theme.forms.checkbox.markColor,\n checked: {\n backgroundColor: theme.forms.checkbox.checked.backgroundColor,\n borderColor: theme.forms.checkbox.checked.borderColor,\n },\n hover: {\n backgroundColor: theme.forms.checkbox.hover.backgroundColor,\n borderColor: theme.forms.checkbox.hover.borderColor,\n },\n pressed: {\n backgroundColor: theme.forms.checkbox.pressed.backgroundColor,\n borderColor: theme.forms.checkbox.pressed.borderColor,\n },\n focus: {\n backgroundColor: theme.forms.checkbox.focus.backgroundColor,\n borderColor: theme.forms.checkbox.focus.borderColor,\n },\n default: {\n backgroundColor: theme.forms.checkbox.default.backgroundColor,\n borderColor: theme.forms.checkbox.default.borderColor,\n },\n },\n radio: {\n checked: {\n backgroundColor: theme.forms.radio.checked.backgroundColor,\n borderColor: theme.forms.radio.checked.borderColor,\n },\n hover: {\n backgroundColor: theme.forms.radio.hover.backgroundColor,\n borderColor: theme.forms.radio.hover.borderColor,\n },\n pressed: {\n backgroundColor: theme.forms.radio.pressed.backgroundColor,\n borderColor: theme.forms.radio.pressed.borderColor,\n },\n focus: {\n backgroundColor: theme.forms.radio.pressed.backgroundColor,\n borderColor: theme.forms.radio.pressed.borderColor,\n },\n disabled: {\n backgroundColor: theme.forms.radio.disabled.backgroundColor,\n borderColor: theme.forms.radio.disabled.borderColor,\n },\n default: {\n backgroundColor: theme.forms.radio.unchecked.backgroundColor,\n borderColor: theme.forms.radio.unchecked.borderColor,\n },\n innerCircle: {\n backgroundColor: theme.forms.radio.checked.innerBackgroundColor,\n },\n },\n },\n skeleton: {\n backgroundColor: theme.skeleton.backgroundColor,\n flareColor: theme.skeleton.flareColor,\n },\n iconButton: {\n borderColor: theme.iconButton.borderColor,\n disabled: {\n borderColor: theme.iconButton.disabled.borderColor,\n backgroundColor: theme.iconButton.disabled.backgroundColor,\n },\n black: {\n pressed: {\n backgroundColor: theme.iconButton.default.pressedBackgroundColor,\n },\n },\n white: {\n pressed: {\n backgroundColor: theme.iconButton.white.pressedBackgroundColor,\n },\n },\n primary: {\n pressed: {\n backgroundColor: theme.iconButton.primary.pressedBackgroundColor,\n },\n },\n },\n highlight: {\n regular: {\n backgroundColor: theme.highlight.regular.backgroundColor,\n },\n primary: {\n backgroundColor: theme.highlight.primary.backgroundColor,\n },\n secondary: {\n backgroundColor: theme.highlight.secondary.backgroundColor,\n },\n dark: {\n backgroundColor: theme.highlight.dark.backgroundColor,\n },\n },\n verticalSteps: {\n active: {\n icon: {\n backgroundColor: theme.verticalSteps.active.icon.backgroundColor,\n textColor: theme.verticalSteps.active.icon.textColor,\n },\n },\n done: {\n icon: {\n backgroundColor: theme.verticalSteps.done.icon.backgroundColor,\n textColor: theme.verticalSteps.done.icon.textColor,\n },\n },\n default: {\n icon: {\n backgroundColor: theme.verticalSteps.default.icon.backgroundColor,\n textColor: theme.verticalSteps.default.icon.textColor,\n },\n },\n },\n listItem: {\n borderColor: theme.listItem.borderColor,\n },\n picker: {\n ios: {\n option: {\n selected: {\n color: theme.picker.ios.selected.color,\n },\n },\n },\n android: {\n option: {\n default: {\n backgroundColor: theme.picker.android.option.default.backgroundColor,\n },\n selected: {\n color: theme.picker.android.option.selected.color,\n backgroundColor: theme.picker.android.option.selected.backgroundColor,\n },\n },\n },\n web: {\n option: {\n default: { backgroundColor: theme.picker.web.option.default.backgroundColor },\n hovered: { backgroundColor: theme.picker.web.option.hovered.backgroundColor },\n focused: { backgroundColor: theme.picker.web.option.focused.backgroundColor },\n selected: { backgroundColor: theme.picker.web.option.selected.backgroundColor },\n highlighted: { backgroundColor: theme.picker.web.option.highlighted.backgroundColor },\n pressed: { backgroundColor: theme.picker.web.option.pressed.backgroundColor },\n },\n optionsContainer: {\n backgroundColor: theme.picker.web.optionsContainer.backgroundColor,\n },\n },\n },\n },\n app: appTheme?.colors,\n },\n radii: {\n // Make original native base values unusable\n lg: Number.MAX_SAFE_INTEGER,\n md: Number.MAX_SAFE_INTEGER,\n sm: Number.MAX_SAFE_INTEGER,\n xl: Number.MAX_SAFE_INTEGER,\n '2xl': Number.MAX_SAFE_INTEGER,\n '3xl': Number.MAX_SAFE_INTEGER,\n xs: Number.MAX_SAFE_INTEGER,\n\n // Allow values like kitt.X\n ...spaces.positive,\n\n kitt: {\n actionCard: {\n borderRadius: theme.actionCard.borderRadius,\n },\n avatar: {\n borderRadius: theme.avatar.borderRadius,\n large: {\n borderRadius: theme.avatar.large.borderRadius,\n },\n },\n borderRadius: theme.card.borderRadius,\n button: {\n borderRadius: theme.button.borderRadius,\n },\n card: {\n borderRadius: theme.card.borderRadius,\n },\n cardModal: {\n borderRadius: theme.cardModal.borderRadius,\n },\n choices: {\n item: {\n borderRadius: theme.choices.item.borderRadius,\n },\n },\n dialogModal: {\n borderRadius: theme.dialogModal.borderRadius,\n },\n forms: {\n autocomplete: {\n optionsContainer: {\n borderRadius: theme.forms.autocomplete.optionsContainer.borderRadius,\n },\n },\n input: {\n borderRadius: theme.forms.input.borderRadius,\n },\n inputTag: {\n borderRadius: theme.forms.inputTag.borderRadius,\n },\n radioButtonGroup: {\n item: {\n borderRadius: theme.forms.radioButtonGroup.item.borderRadius,\n },\n },\n checkbox: {\n borderRadius: theme.forms.checkbox.borderRadius,\n },\n radio: {\n borderRadius: theme.forms.radio.size * 0.5,\n innerCircle: {\n borderRadius: theme.forms.radio.checked.innerSize * 0.5,\n },\n },\n },\n highlight: {\n borderRadius: theme.highlight.borderRadius,\n },\n iconButton: {\n borderRadius: theme.iconButton.borderRadius,\n },\n tag: {\n borderRadius: theme.tag.borderRadius,\n },\n tooltip: {\n borderRadius: theme.tooltip.borderRadius,\n },\n skeleton: {\n shape: {\n bar: {\n borderRadius: theme.skeleton.shape.bar.borderRadius,\n },\n circle: {\n borderRadius: theme.skeleton.shape.circle.borderRadius,\n },\n square: {\n borderRadius: theme.skeleton.shape.square.borderRadius,\n },\n },\n },\n picker: {\n web: {\n optionsContainer: {\n borderRadius: theme.picker.web.optionsContainer.borderRadius,\n },\n },\n },\n },\n app: appTheme?.radii,\n },\n borderWidths: {\n kitt: {\n actionCard: {\n secondary: {\n default: {\n borderWidth: theme.actionCard.secondary.default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard.secondary.disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard.secondary.hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard.secondary.focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard.secondary.pressed.borderWidth,\n },\n },\n primary: {\n default: {\n borderWidth: theme.actionCard.primary.default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard.primary.disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard.primary.hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard.primary.focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard.primary.pressed.borderWidth,\n },\n },\n 'primary-border-soft': {\n default: {\n borderWidth: theme.actionCard['primary-border-soft'].default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard['primary-border-soft'].disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard['primary-border-soft'].hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard['primary-border-soft'].focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard['primary-border-soft'].pressed.borderWidth,\n },\n },\n 'primary-border-hard': {\n default: {\n borderWidth: theme.actionCard['primary-border-hard'].default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard['primary-border-hard'].disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard['primary-border-hard'].hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard['primary-border-hard'].focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard['primary-border-hard'].pressed.borderWidth,\n },\n },\n highlight: {\n default: {\n borderWidth: theme.actionCard.highlight.default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard.highlight.disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard.highlight.hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard.highlight.focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard.highlight.pressed.borderWidth,\n },\n },\n },\n button: {\n borderWidth: theme.button.borderWidth,\n },\n choices: {\n item: {\n disabled: {\n borderWidth: theme.choices.item.disabled.border.width,\n },\n },\n },\n iconButton: {\n borderWidth: theme.iconButton.borderWidth,\n },\n forms: {\n input: {\n borderWidth: theme.forms.input.borderWidth,\n },\n radioButtonGroup: {\n item: {\n borderWidth: theme.forms.radioButtonGroup.item.borderWidth,\n },\n },\n checkbox: {\n borderWidth: theme.forms.checkbox.borderWidth,\n },\n radio: {\n borderWidth: theme.forms.radio.unchecked.borderWidth,\n },\n },\n cardModal: {\n header: {\n borderWidth: theme.cardModal.header.borderWidth,\n },\n footer: {\n borderWidth: theme.cardModal.footer.borderWidth,\n },\n },\n listItem: {\n borderWidth: theme.listItem.borderWidth,\n },\n tag: {\n primary: {\n fill: {\n borderWidth: theme.tag.primary.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.primary.outline.borderWidth,\n },\n },\n default: {\n fill: {\n borderWidth: theme.tag.default.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.default.outline.borderWidth,\n },\n },\n danger: {\n fill: {\n borderWidth: theme.tag.danger.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.danger.outline.borderWidth,\n },\n },\n warn: {\n fill: {\n borderWidth: theme.tag.warn.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.warn.outline.borderWidth,\n },\n },\n },\n },\n app: appTheme?.borderWidths,\n },\n sizes: {\n ...spaces.positive,\n ...spaces.negative,\n ...overridenNativeBaseSizeandSpaceScale,\n kitt: {\n avatar: {\n size: theme.avatar.size,\n iconSize: theme.avatar.iconSize,\n large: {\n size: theme.avatar.large.size,\n iconSize: theme.avatar.large.iconSize,\n },\n },\n button: {\n minWidth: theme.button.minWidth,\n maxWidth: theme.button.maxWidth,\n minHeight: theme.button.minHeight,\n },\n icon: {\n defaultSize: 20,\n },\n cardModal: {\n header: {\n height: theme.cardModal.header.height,\n },\n maxWidth: theme.cardModal.maxWidth,\n maxWidthWithPadding: theme.cardModal.maxWidthWithPadding,\n },\n dialogModal: {\n maxWidth: theme.dialogModal.maxWidth,\n overlayPadding: theme.dialogModal.overlayPadding,\n },\n feedbackMessage: {\n minHeight: theme.feedbackMessage.minHeight,\n },\n forms: {\n autocomplete: {\n option: {\n minHeight: theme.forms.autocomplete.option.minHeight,\n },\n },\n datePicker: {\n minHeight: theme.forms.input.minHeight,\n day: {\n minWidth: theme.forms.datePicker.day.minWidth,\n },\n month: {\n minWidth: theme.forms.datePicker.month.minWidth,\n },\n year: {\n minWidth: theme.forms.datePicker.year.minWidth,\n },\n },\n input: {\n minHeight: theme.forms.input.minHeight,\n },\n radioButtonGroup: {\n item: {\n minHeight: theme.forms.radioButtonGroup.item.minHeight,\n },\n },\n checkbox: {\n height: theme.forms.checkbox.height,\n width: theme.forms.checkbox.width,\n iconSize: theme.forms.checkbox.iconSize,\n textSpacing: theme.forms.checkbox.textSpacing,\n },\n radio: {\n size: theme.forms.radio.size,\n innerCircle: {\n size: theme.forms.radio.checked.innerSize,\n },\n },\n textArea: {\n minHeight: theme.forms.textArea.minHeight,\n },\n timePicker: {\n minWidth: theme.forms.timePicker.minWidth,\n },\n },\n iconButton: {\n size: theme.iconButton.width - theme.iconButton.borderWidth,\n width: theme.iconButton.width,\n height: theme.iconButton.height,\n },\n fullscreenModal: {\n header: {\n height: theme.fullscreenModal.header.height,\n },\n },\n pageLoader: {\n size: theme.pageLoader.size,\n },\n tooltip: {\n maxWidth: theme.tooltip.maxWidth,\n arrow: {\n width: theme.tooltip.arrow.width,\n height: theme.tooltip.arrow.height,\n },\n },\n skeleton: {\n shape: {\n bar: {\n size: theme.skeleton.shape.bar.size,\n },\n circle: {\n size: theme.skeleton.shape.circle.size,\n },\n square: {\n size: theme.skeleton.shape.square.size,\n },\n },\n },\n picker: {\n ios: {\n default: {\n height: theme.picker.ios.default.height,\n },\n landscape: {\n height: theme.picker.ios.landscape.height,\n },\n },\n },\n },\n app: appTheme?.sizes,\n },\n space: {\n ...spaces.positive,\n ...spaces.negative,\n ...overridenNativeBaseSizeandSpaceScale,\n kitt: {\n bottomSheet: {\n container: {\n padding: theme.bottomSheet.container.padding,\n },\n },\n button: {\n padding: theme.button.padding,\n },\n cardModal: {\n overlayPadding: theme.dialogModal.overlayPadding,\n },\n dialogModal: {\n overlayPadding: theme.dialogModal.overlayPadding,\n },\n forms: {\n autocomplete: {\n option: {\n verticalPadding: theme.forms.autocomplete.option.verticalPadding,\n },\n },\n datePicker: {\n padding: theme.forms.input.padding,\n },\n input: {\n padding: theme.forms.input.padding,\n },\n radioButtonGroup: {\n item: {\n padding: theme.forms.radioButtonGroup.item.padding,\n },\n },\n },\n fullscreenModal: {\n horizontalPadding: theme.fullscreenModal.sharedHorizontalPadding,\n body: {\n verticalPadding: theme.fullscreenModal.body.verticalPadding,\n },\n footer: {\n verticalPadding: theme.fullscreenModal.footer.verticalPadding,\n },\n },\n highlight: {\n padding: theme.highlight.padding,\n },\n listItem: {\n verticalPadding: theme.listItem.verticalPadding,\n horizontalPadding: theme.listItem.horizontalPadding,\n },\n tag: {\n verticalPadding: theme.tag.verticalPadding,\n horizontalPadding: theme.tag.horizontalPadding,\n },\n tooltip: {\n horizontalPadding: theme.tooltip.horizontalPadding,\n verticalPadding: theme.tooltip.verticalPadding,\n floatingPadding: theme.tooltip.floatingPadding,\n },\n picker: {\n android: {\n option: {\n verticalPadding: theme.picker.android.option.verticalPadding,\n horizontalPadding: theme.picker.android.option.horizontalPadding,\n },\n },\n web: {\n option: {\n verticalPadding: theme.picker.web.option.verticalPadding,\n horizontalPadding: theme.picker.web.option.horizontalPadding,\n },\n },\n },\n },\n app: appTheme?.space,\n },\n breakpoints: {\n // kitt breakpoints\n base: KittBreakpoints.BASE,\n small: KittBreakpoints.SMALL,\n medium: KittBreakpoints.MEDIUM,\n large: KittBreakpoints.LARGE,\n wide: KittBreakpoints.WIDE,\n\n // native base default naming\n sm: Number.MAX_SAFE_INTEGER,\n md: Number.MAX_SAFE_INTEGER,\n lg: Number.MAX_SAFE_INTEGER,\n xl: Number.MAX_SAFE_INTEGER,\n '2xl': Number.MAX_SAFE_INTEGER,\n\n // Breakpoints can't be nested in objects\n ...appBreakpoints,\n },\n\n fontSizes: {\n baseAndSmall: {\n header1: `${theme.typography.types.headers.configs.header1.baseAndSmall.fontSize}px`,\n header2: `${theme.typography.types.headers.configs.header2.baseAndSmall.fontSize}px`,\n header3: `${theme.typography.types.headers.configs.header3.baseAndSmall.fontSize}px`,\n header4: `${theme.typography.types.headers.configs.header4.baseAndSmall.fontSize}px`,\n header5: `${theme.typography.types.headers.configs.header5.baseAndSmall.fontSize}px`,\n 'body-large': `${theme.typography.types.bodies.configs['body-large'].baseAndSmall.fontSize}px`,\n 'body-medium': `${theme.typography.types.bodies.configs['body-medium'].baseAndSmall.fontSize}px`,\n body: `${theme.typography.types.bodies.configs.body.baseAndSmall.fontSize}px`,\n 'body-small': `${theme.typography.types.bodies.configs['body-small'].baseAndSmall.fontSize}px`,\n 'body-xsmall': `${theme.typography.types.bodies.configs['body-xsmall'].baseAndSmall.fontSize}px`,\n },\n mediumAndWide: {\n header1: `${theme.typography.types.headers.configs.header1.mediumAndWide.fontSize}px`,\n header2: `${theme.typography.types.headers.configs.header2.mediumAndWide.fontSize}px`,\n header3: `${theme.typography.types.headers.configs.header3.mediumAndWide.fontSize}px`,\n header4: `${theme.typography.types.headers.configs.header4.mediumAndWide.fontSize}px`,\n header5: `${theme.typography.types.headers.configs.header5.mediumAndWide.fontSize}px`,\n 'body-large': `${theme.typography.types.bodies.configs['body-large'].mediumAndWide.fontSize}px`,\n 'body-medium': `${theme.typography.types.bodies.configs['body-medium'].mediumAndWide.fontSize}px`,\n body: `${theme.typography.types.bodies.configs.body.mediumAndWide.fontSize}px`,\n 'body-small': `${theme.typography.types.bodies.configs['body-small'].mediumAndWide.fontSize}px`,\n 'body-xsmall': `${theme.typography.types.bodies.configs['body-xsmall'].mediumAndWide.fontSize}px`,\n },\n },\n lineHeights: {\n baseAndSmall: {\n header1: theme.typography.types.headers.configs.header1.baseAndSmall.lineHeight,\n header2: theme.typography.types.headers.configs.header2.baseAndSmall.lineHeight,\n header3: theme.typography.types.headers.configs.header3.baseAndSmall.lineHeight,\n header4: theme.typography.types.headers.configs.header4.baseAndSmall.lineHeight,\n header5: theme.typography.types.headers.configs.header5.baseAndSmall.lineHeight,\n 'body-large': theme.typography.types.bodies.configs['body-large'].baseAndSmall.lineHeight,\n 'body-medium': theme.typography.types.bodies.configs['body-medium'].baseAndSmall.lineHeight,\n body: theme.typography.types.bodies.configs.body.baseAndSmall.lineHeight,\n 'body-small': theme.typography.types.bodies.configs['body-small'].baseAndSmall.lineHeight,\n 'body-xsmall': theme.typography.types.bodies.configs['body-xsmall'].baseAndSmall.lineHeight,\n },\n mediumAndWide: {\n header1: theme.typography.types.headers.configs.header1.mediumAndWide.lineHeight,\n header2: theme.typography.types.headers.configs.header2.mediumAndWide.lineHeight,\n header3: theme.typography.types.headers.configs.header3.mediumAndWide.lineHeight,\n header4: theme.typography.types.headers.configs.header4.mediumAndWide.lineHeight,\n header5: theme.typography.types.headers.configs.header5.mediumAndWide.lineHeight,\n 'body-large': theme.typography.types.bodies.configs['body-large'].mediumAndWide.lineHeight,\n 'body-medium': theme.typography.types.bodies.configs['body-medium'].mediumAndWide.lineHeight,\n body: theme.typography.types.bodies.configs.body.mediumAndWide.lineHeight,\n 'body-small': theme.typography.types.bodies.configs['body-small'].mediumAndWide.lineHeight,\n 'body-xsmall': theme.typography.types.bodies.configs['body-xsmall'].mediumAndWide.lineHeight,\n },\n },\n fontWeights: {\n headers: {\n regular: theme.typography.types.headers.fontWeight,\n bold: theme.typography.types.headers.fontWeight,\n },\n bodies: {\n regular: theme.typography.types.bodies.fontWeight.regular,\n // TODO [https://ornikar.atlassian.net/browse/CME-767] This quick fix should be replaced by a 700 in every case, and native font weights should be handled by expo-fonts\n bold: Platform.OS === 'android' ? 400 : theme.typography.types.bodies.fontWeight.bold,\n },\n },\n fonts: {\n headers:\n Platform.OS === 'web'\n ? theme.typography.types.headers.fontFamily.web\n : theme.typography.types.headers.fontFamily.native,\n bodies:\n Platform.OS === 'web'\n ? theme.typography.types.bodies.fontFamily.web\n : theme.typography.types.bodies.fontFamily.native,\n },\n\n shadows: {\n kitt: {\n shadows: {\n cards: {\n low: {\n shadowColor: theme.shadows.cards.low.color,\n shadowOffset: { width: theme.shadows.cards.low.offsetX, height: theme.shadows.cards.low.offsetY },\n shadowOpacity: theme.shadows.cards.low.opacity,\n shadowRadius: theme.shadows.cards.low.radius,\n },\n medium: {\n shadowColor: theme.shadows.cards.medium.color,\n shadowOffset: { width: theme.shadows.cards.medium.offsetX, height: theme.shadows.cards.medium.offsetY },\n shadowOpacity: theme.shadows.cards.medium.opacity,\n shadowRadius: theme.shadows.cards.medium.radius,\n },\n highBase: {\n shadowColor: theme.shadows.cards.highBase.color,\n shadowOffset: {\n width: theme.shadows.cards.highBase.offsetX,\n height: theme.shadows.cards.highBase.offsetY,\n },\n shadowOpacity: theme.shadows.cards.highBase.opacity,\n shadowRadius: theme.shadows.cards.highBase.radius,\n },\n highMedium: {\n shadowColor: theme.shadows.cards.highMedium.color,\n shadowOffset: {\n width: theme.shadows.cards.highMedium.offsetX,\n height: theme.shadows.cards.highMedium.offsetY,\n },\n shadowOpacity: theme.shadows.cards.highMedium.opacity,\n shadowRadius: theme.shadows.cards.highMedium.radius,\n },\n highLarge: {\n shadowColor: theme.shadows.cards.highLarge.color,\n shadowOffset: {\n width: theme.shadows.cards.highLarge.offsetX,\n height: theme.shadows.cards.highLarge.offsetY,\n },\n shadowOpacity: theme.shadows.cards.highLarge.opacity,\n shadowRadius: theme.shadows.cards.highLarge.radius,\n },\n },\n navigation: {\n left: {\n shadowColor: theme.shadows.navigation.left.color,\n shadowOffset: {\n width: theme.shadows.navigation.left.offsetX,\n height: theme.shadows.navigation.left.offsetY,\n },\n shadowOpacity: theme.shadows.navigation.left.opacity,\n shadowRadius: theme.shadows.navigation.left.radius,\n },\n right: {\n shadowColor: theme.shadows.navigation.right.color,\n shadowOffset: {\n width: theme.shadows.navigation.right.offsetX,\n height: theme.shadows.navigation.right.offsetY,\n },\n shadowOpacity: theme.shadows.navigation.right.opacity,\n shadowRadius: theme.shadows.navigation.right.radius,\n },\n },\n panel: {\n shadowColor: theme.shadows.panel.color,\n shadowOffset: { width: theme.shadows.panel.offsetX, height: theme.shadows.panel.offsetY },\n shadowOpacity: theme.shadows.panel.opacity,\n shadowRadius: theme.shadows.panel.radius,\n },\n },\n actionCard: {\n secondary: {\n default: {\n shadow: {\n shadowColor: theme.actionCard.secondary.default.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.default.shadow.offsetX,\n height: theme.actionCard.secondary.default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.default.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard.secondary.hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.hovered.shadow.offsetX,\n height: theme.actionCard.secondary.hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.hovered.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard.secondary.focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.focused.shadow.offsetX,\n height: theme.actionCard.secondary.focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.focused.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard.secondary.pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.pressed.shadow.offsetX,\n height: theme.actionCard.secondary.pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.pressed.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.pressed.shadow.radius,\n },\n },\n },\n primary: {\n default: {\n shadow: {\n shadowColor: theme.actionCard.primary.default.shadow.color,\n shadowOffset: {\n width: theme.actionCard.primary.default.shadow.offsetX,\n height: theme.actionCard.primary.default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.primary.default.shadow.opacity,\n shadowRadius: theme.actionCard.primary.default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard.primary.hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard.primary.hovered.shadow.offsetX,\n height: theme.actionCard.primary.hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.primary.hovered.shadow.opacity,\n shadowRadius: theme.actionCard.primary.hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard.primary.focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard.primary.focused.shadow.offsetX,\n height: theme.actionCard.primary.focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.primary.focused.shadow.opacity,\n shadowRadius: theme.actionCard.primary.focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard.highlight.pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.pressed.shadow.offsetX,\n height: theme.actionCard.highlight.pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.pressed.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.pressed.shadow.radius,\n },\n },\n },\n 'primary-border-soft': {\n default: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].default.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].default.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].default.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].hovered.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].hovered.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].focused.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].focused.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].pressed.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].pressed.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].pressed.shadow.radius,\n },\n },\n },\n 'primary-border-hard': {\n default: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].default.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].default.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].default.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].hovered.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].hovered.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].focused.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].focused.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].pressed.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].pressed.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].pressed.shadow.radius,\n },\n },\n },\n highlight: {\n default: {\n shadow: {\n shadowColor: theme.actionCard.highlight.default.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.default.shadow.offsetX,\n height: theme.actionCard.highlight.default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.default.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard.highlight.hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.hovered.shadow.offsetX,\n height: theme.actionCard.highlight.hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.hovered.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard.highlight.focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.focused.shadow.offsetX,\n height: theme.actionCard.highlight.focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.focused.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard.highlight.pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.pressed.shadow.offsetX,\n height: theme.actionCard.highlight.pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.pressed.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.pressed.shadow.radius,\n },\n },\n },\n },\n cardModal: {\n shadow: {\n shadowColor: theme.cardModal.shadow.color,\n shadowOffset: { width: theme.cardModal.shadow.offsetX, height: theme.cardModal.shadow.offsetY },\n shadowOpacity: theme.cardModal.shadow.opacity,\n shadowRadius: theme.cardModal.shadow.radius,\n },\n },\n dialogModal: {\n shadow: {\n shadowColor: theme.dialogModal.shadow.color,\n shadowOffset: { width: theme.dialogModal.shadow.offsetX, height: theme.dialogModal.shadow.offsetY },\n shadowOpacity: theme.dialogModal.shadow.opacity,\n shadowRadius: theme.dialogModal.shadow.radius,\n },\n },\n forms: {\n autocomplete: {\n optionsContainer: {\n shadow: {\n shadowColor: theme.forms.autocomplete.optionsContainer.shadow.color,\n shadowOffset: {\n width: theme.forms.autocomplete.optionsContainer.shadow.offsetX,\n height: theme.forms.autocomplete.optionsContainer.shadow.offsetY,\n },\n shadowOpacity: theme.forms.autocomplete.optionsContainer.shadow.opacity,\n shadowRadius: theme.forms.autocomplete.optionsContainer.shadow.radius,\n },\n },\n },\n },\n },\n app: appTheme?.shadows,\n },\n\n opacity: {\n app: appTheme?.opacity,\n kitt: {\n tooltip: {\n opacity: theme.tooltip.opacity,\n },\n },\n },\n\n components: {\n Input: {\n baseStyle: {\n width: '100%',\n minHeight: theme.forms.input.minHeight,\n py: theme.forms.input.padding.vertical,\n px: theme.forms.input.padding.horizontal,\n borderRadius: theme.forms.input.borderRadius,\n _disabled: {\n opacity: 1, // override default native-base opacity\n },\n _light: {\n color: theme.forms.input.states.default.color,\n placeholderTextColor: theme.forms.input.color.placeholder,\n borderColor: theme.forms.input.states.default.borderColor,\n bg: theme.forms.input.states.default.backgroundColor,\n _hover: {\n borderColor: theme.forms.input.states.hover.borderColor,\n color: theme.forms.input.states.hover.color,\n _focus: {\n borderColor: theme.forms.input.states.focus.borderColor,\n color: theme.forms.input.states.focus.color,\n },\n },\n _focus: {\n borderColor: theme.forms.input.states.focus.borderColor,\n color: theme.forms.input.states.focus.color,\n _hover: {\n borderColor: theme.forms.input.states.focus.borderColor,\n color: theme.forms.input.states.focus.color,\n },\n _stack: {\n style: {\n outlineWidth: 0,\n boxShadow: 'none',\n },\n },\n _ios: {\n selectionColor: theme.forms.input.color.selection,\n },\n _android: {\n selectionColor: theme.forms.input.color.selection,\n },\n },\n _invalid: {\n borderColor: theme.forms.input.states.invalid.borderColor,\n color: theme.forms.input.states.invalid.color,\n _hover: {\n borderColor: theme.forms.input.states.hover.borderColor,\n color: theme.forms.input.states.hover.color,\n },\n },\n _ios: {\n selectionColor: theme.forms.input.color.selection,\n },\n _android: {\n selectionColor: theme.forms.input.color.selection,\n },\n _disabled: {\n placeholderTextColor: theme.forms.input.states.disabled.color,\n color: theme.forms.input.states.disabled.color,\n borderColor: theme.forms.input.states.disabled.borderColor,\n bg: theme.forms.input.states.disabled.backgroundColor,\n },\n },\n },\n variants: {\n outline: {\n borderWidth: theme.forms.input.borderWidth,\n _focus: {\n bg: theme.forms.input.states.default.backgroundColor,\n },\n },\n underlined: {},\n rounded: {},\n filled: {},\n unstyled: {},\n },\n },\n Text: {\n baseStyle: {\n _light: {\n color: 'kitt.typography.black',\n },\n _dark: {\n color: 'kitt.typography.white',\n },\n fontFamily:\n Platform.OS === 'web'\n ? theme.typography.types.bodies.fontFamily.web.regular\n : theme.typography.types.bodies.fontFamily.native.regular,\n fontStyle: theme.typography.types.bodies.fontStyle.regular,\n fontWeight: theme.typography.types.bodies.fontWeight.regular,\n fontSize: undefined,\n lineHeight: theme.typography.types.bodies.configs.body.baseAndSmall.lineHeight,\n },\n },\n },\n });\n\n return { ...extendedTheme, space: extendedTheme.space as typeof spaces.positive & typeof spaces.negative };\n}\n\ntype KittNativeBaseCustomTheme = ReturnType<typeof createKittNativeBaseCustomTheme>;\n\ndeclare module 'native-base' {\n interface ICustomTheme extends KittNativeBaseCustomTheme {}\n}\n\nexport interface KittNativeBaseProviderProps {\n /**\n * `theme` should come from `useKittTheme`\n */\n theme: KittTheme;\n isSSR: NativeBaseProviderProps['isSSR'];\n /**\n * `appTheme` is optional and provides extended theme configuration. It's a native-base representation of your application theme.\n * This variable must not change at each render\n */\n appTheme?: AppTheme;\n children: ReactNode;\n}\n\n/**\n * Provide theme to native-base\n *\n * `appTheme` is optional and provides extended theme configuration. This variable must not change at each render\n *\n * @exemple\n * ```tsx\n * const appTheme = {};\n * export function MyAppThemeProvider({ children }) {\n * const theme = useKittTheme();\n * return <KittNativeBaseProvider theme={theme} appTheme={appTheme}>{children}</KittNativeBaseProvider>\n * }\n * ```\n */\nexport function KittNativeBaseProvider({\n theme,\n isSSR,\n appTheme,\n children,\n}: KittNativeBaseProviderProps): ReactElement {\n const kittTheme = theme.kitt;\n\n const nativeBaseCustomTheme = useMemo(\n () => createKittNativeBaseCustomTheme(kittTheme, appTheme),\n [kittTheme, appTheme],\n );\n\n const kittInternalTheme = useMemo(() => ({ kitt: kittTheme }), [kittTheme]);\n\n return (\n <NativeBaseProvider theme={nativeBaseCustomTheme} isSSR={isSSR}>\n <KittThemeContext.Provider value={kittInternalTheme}>{children}</KittThemeContext.Provider>\n </NativeBaseProvider>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport type { CardModalAnimationProps } from '../CardModal/CardModalAnimation/CardModalAnimation';\nimport { CardModalAnimation } from '../CardModal/CardModalAnimation/CardModalAnimation';\nimport { CardModalScrollContainer } from '../CardModal/CardModalBehaviour';\nimport { FullscreenModalAnimation } from '../FullscreenModal/FullscreenModalAnimation';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport type { ModalAnimationComponentProps } from '../ModalBehaviour/type';\nimport { useBreakpointValue } from '../native-base/utils';\n\ninterface SimpleContainerProps extends CardModalAnimationProps {}\n\nfunction SimpleContainer({ children }: SimpleContainerProps): ReactElement {\n return children as ReactElement;\n}\n\ntype AnimationComponentType = typeof CardModalAnimation | typeof FullscreenModalAnimation;\ntype CurrentContainerComponentType = typeof SimpleContainer | typeof CardModalScrollContainer;\n\nexport interface NavigationModalBehaviourProps extends ModalBehaviourProps, ModalAnimationComponentProps {\n onClose: () => void;\n}\n\nexport function NavigationModalBehaviour({\n children,\n visible,\n appear = true,\n onExited,\n onEnter,\n onExit,\n onClose,\n ...props\n}: NavigationModalBehaviourProps): ReactElement {\n const AnimationComponent = useBreakpointValue<AnimationComponentType>({\n base: FullscreenModalAnimation,\n small: CardModalAnimation,\n });\n\n const CurrentContainerComponent = useBreakpointValue<CurrentContainerComponentType>({\n base: SimpleContainer,\n small: CardModalScrollContainer,\n });\n\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n const [shouldAppear, setShouldAppear] = useState(appear);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n const handleEnter = (): void => {\n if (onEnter) onEnter();\n\n // Once a children as been displayed, we force appear to false in order to avoid replaying animation on breakpoint change\n setShouldAppear(false);\n };\n\n const handleExit = (): void => {\n if (onExit) onExit();\n\n // Reset appear value to its original value for future modal display\n setShouldAppear(appear);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <CurrentContainerComponent bounces={false} contentContainerStyle={{ flexGrow: 1 }}>\n <AnimationComponent\n {...props}\n appear={shouldAppear}\n visible={visible}\n onEnter={handleEnter}\n onExit={handleExit}\n onExited={handleExitAnimationDone}\n onClose={onClose}\n >\n {children}\n </AnimationComponent>\n </CurrentContainerComponent>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement } from 'react';\nimport { CardModal } from '../CardModal/CardModal';\nimport type { CardModalBodyProps } from '../CardModal/CardModalBody';\nimport type { CardModalFooterProps } from '../CardModal/CardModalFooter';\nimport type { CardModalHeaderProps } from '../CardModal/CardModalHeader';\nimport type { FullscreenModalBodyProps } from '../FullscreenModal/Body';\nimport type { FullscreenModalFooterProps } from '../FullscreenModal/Footer';\nimport { FullscreenModal } from '../FullscreenModal/FullscreenModal';\nimport type { FullscreenModalProps } from '../FullscreenModal/FullscreenModal';\nimport type { FullscreenModalHeaderProps } from '../FullscreenModal/Header';\nimport { useBreakpointValue } from '../native-base/utils';\nimport { NavigationModalBehaviour } from './NavigationModalBehaviour';\n\nexport interface NavigationModalProps extends FullscreenModalProps {}\n\nexport function NavigationModal({ body, backgroundColor, footer, header }: NavigationModalProps): ReactElement {\n const Component = useBreakpointValue<typeof FullscreenModal | typeof CardModal>({\n base: FullscreenModal,\n small: CardModal,\n });\n\n return <Component body={body} backgroundColor={backgroundColor} footer={footer} header={header} />;\n}\n\ntype HeaderProps = CardModalHeaderProps | FullscreenModalHeaderProps;\n\nfunction Header(props: HeaderProps): ReactElement {\n const Component: typeof FullscreenModal.Header | typeof CardModal.Header = useBreakpointValue({\n base: FullscreenModal.Header,\n small: CardModal.Header,\n });\n return <Component {...props} />;\n}\n\ntype BodyProps = CardModalBodyProps | FullscreenModalBodyProps;\n\nfunction Body(props: BodyProps): ReactElement {\n const Component: typeof FullscreenModal.Body | typeof CardModal.Body = useBreakpointValue({\n base: FullscreenModal.Body,\n small: CardModal.Body,\n });\n return <Component {...props} />;\n}\n\ntype FooterProps = CardModalFooterProps | FullscreenModalFooterProps;\n\nfunction Footer(props: FooterProps): ReactElement {\n const Component: typeof FullscreenModal.Footer | typeof CardModal.Footer = useBreakpointValue({\n base: FullscreenModal.Footer,\n small: CardModal.Footer,\n });\n return <Component {...props} />;\n}\n\nNavigationModal.Header = Header;\nNavigationModal.Body = Body;\nNavigationModal.Footer = Footer;\nNavigationModal.ModalBehaviour = NavigationModalBehaviour;\n","import type { ReactElement } from 'react';\nimport { BaseMessage } from '../BaseMessage/BaseMessage';\nimport type { BaseMessageProps } from '../BaseMessage/BaseMessage';\n\nexport interface NotificationProps extends BaseMessageProps {\n /**\n * @deprecated use onDismiss instead\n */\n onDelete?: BaseMessageProps['onDismiss'];\n}\n\nexport function Notification({\n type,\n children,\n centeredText,\n insets,\n onDelete,\n onDismiss,\n}: NotificationProps): ReactElement {\n if (__DEV__) {\n if (onDelete) {\n throw new Error('onDelete is deprecated us onDismiss instead');\n }\n }\n\n return (\n <BaseMessage hasNoRadius type={type} centeredText={centeredText} insets={insets} onDismiss={onDismiss}>\n {children}\n </BaseMessage>\n );\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport {\n fillEasingFunction,\n pageLoaderSize,\n pageLoaderStrokeWidth,\n webAnimationCircleBackgroundFillDuration,\n webAnimationDelay,\n webAnimationFilledCircleFillDuration,\n webAnimationFilledCircleRotationDuration,\n} from '../themes/late-ocean/pageLoader';\n\nconst [x1, y1, x2, y2] = fillEasingFunction;\n\nconst pageLoaderCirclePerimeter = 2 * Math.PI * (pageLoaderSize * 0.5 - pageLoaderStrokeWidth);\n\nconst pageLoaderContainer = css`\n @keyframes PageLoaderInit {\n 0% {\n stroke-dashoffset: ${pageLoaderCirclePerimeter}px;\n }\n\n 100% {\n stroke-dashoffset: 0;\n }\n }\n\n /** Primary circle animation **/\n @keyframes PageLoaderOffset {\n 0% {\n stroke-dashoffset: ${pageLoaderCirclePerimeter}px;\n }\n\n /** 20% of this radius and represent the min offset part of the animated circle */\n 100% {\n stroke-dashoffset: ${pageLoaderCirclePerimeter * 0.2}px;\n }\n }\n\n @keyframes PageLoaderRotation {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n }\n\n width: ${pageLoaderSize}px;\n height: ${pageLoaderSize}px;\n\n /* Needed to make the animation starting from the top of the circles */\n transform: scale(-1) rotate(90deg);\n\n & circle,\n & g {\n transform-origin: center center;\n }\n\n & g[data-large-loader='base'] circle {\n animation: ${webAnimationCircleBackgroundFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})\n ${webAnimationDelay}ms forwards;\n animation-name: PageLoaderInit;\n }\n\n & g[data-large-loader='fill'] {\n animation: ${webAnimationFilledCircleFillDuration}ms linear ${webAnimationDelay}ms infinite;\n animation-name: PageLoaderRotation;\n }\n\n & g[data-large-loader='fill'] circle {\n animation: ${webAnimationFilledCircleFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2}) ${webAnimationDelay}ms\n infinite alternate,\n ${webAnimationFilledCircleRotationDuration}ms linear ${webAnimationDelay}ms infinite;\n animation-name: PageLoaderOffset, PageLoaderRotation;\n }\n`;\n\nexport function PageLoader(props: Record<string, never>): ReactElement {\n const theme = useTheme();\n const { colors, size, strokeWidth } = theme.kitt.pageLoader;\n\n const center = size * 0.5;\n const radius = center - strokeWidth;\n\n const circlePerimeter = 2 * Math.PI * radius;\n\n const sharedProps = {\n cx: center,\n cy: center,\n r: radius,\n fill: 'none',\n strokeWidth,\n strokeDasharray: circlePerimeter,\n strokeDashoffset: circlePerimeter,\n strokeLinecap: 'round' as const,\n };\n\n return (\n <div className={pageLoaderContainer}>\n <svg width={size} height={size}>\n <g data-large-loader=\"base\">\n <circle {...sharedProps} stroke={colors.base} />\n </g>\n <g data-large-loader=\"fill\">\n <circle {...sharedProps} stroke={colors.fill} />\n </g>\n </svg>\n </div>\n );\n}\n","import type { ReactElement } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { PickerItemProps } from './PickerItem';\n\ninterface UIState {\n isSelected?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n isHighlighted?: boolean;\n}\n\nfunction getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused }: UIState): string {\n const baseKey = 'kitt.picker.web.option';\n if (isHighlighted) {\n return `${baseKey}.highlighted.backgroundColor`;\n }\n\n if (isPressed) {\n return `${baseKey}.pressed.backgroundColor`;\n }\n\n if (isHovered) {\n return `${baseKey}.hovered.backgroundColor`;\n }\n\n if (isFocused) {\n return `${baseKey}.focused.backgroundColor`;\n }\n\n if (isSelected) {\n return `${baseKey}.selected.backgroundColor`;\n }\n\n return `${baseKey}.default.backgroundColor`;\n}\n\nexport function PickerItem({\n children,\n isSelected,\n isHighlighted,\n isPressed,\n isHovered,\n isFocused,\n}: PickerItemProps): ReactElement {\n return (\n <View\n justifyContent=\"center\"\n width=\"100%\"\n paddingX=\"kitt.picker.web.option.horizontalPadding\"\n paddingY=\"kitt.picker.web.option.verticalPadding\"\n backgroundColor={getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused })}\n >\n {children}\n </View>\n );\n}\n","import type { PickerItemProps as NativePickerItemProps } from '@react-native-picker/picker';\nimport type { ReactElement, ReactNode } from 'react';\nimport { Typography } from '../typography/Typography';\n\nexport interface PickerOptionProps<T> extends Pick<NativePickerItemProps<T>, 'label'> {\n children: ReactNode;\n value: T;\n testID?: string;\n}\n\n// This item is for Android only, iOS uses its own implementation and web is not supported yet\nexport function PickerOption<T>({ children, testID, ...props }: PickerOptionProps<T>): ReactElement {\n return (\n <Typography.Text testID={testID} base=\"body\">\n {children}\n </Typography.Text>\n );\n}\n","import { useSelect } from 'downshift';\nimport type { UseSelectState, UseSelectStateChangeOptions } from 'downshift';\n\nexport function webUseSelectReducer<T>(\n state: UseSelectState<T>,\n actionAndChanges: UseSelectStateChangeOptions<T>,\n options: {\n keepOpenOnChange?: boolean;\n },\n): Partial<UseSelectState<T>> {\n const { type, changes } = actionAndChanges;\n\n switch (type) {\n case useSelect.stateChangeTypes.ItemClick:\n if (!options.keepOpenOnChange) return changes;\n\n return {\n ...changes,\n isOpen: true,\n };\n default:\n return changes;\n }\n}\n","import { autoUpdate, offset, useFloating } from '@floating-ui/react-dom';\nimport { useSelect } from 'downshift';\nimport type { ReactElement } from 'react';\nimport { Children } from 'react';\nimport { Portal } from 'react-portal';\nimport { Pressable, View } from '../native-base/primitives';\nimport type { PickerProps } from './Picker';\nimport { PickerItem } from './PickerItem';\nimport type { PickerOptionProps } from './PickerOption';\nimport { PickerOption } from './PickerOption';\nimport { webUseSelectReducer } from './reducer/webUseSelectReducer';\n\nexport function Picker<T>({\n children,\n renderTrigger,\n isInitialOpen,\n checkSelectedItem,\n initialValue,\n keepOpenOnChange = false,\n testID,\n disabled,\n onChange,\n onClose,\n}: PickerProps<T>): ReactElement {\n const childrenArray = Children.toArray(children);\n\n const items = childrenArray.map((child) => {\n const item = child as ReactElement<PickerOptionProps<T>>;\n return item.props.value as T;\n }) as T[];\n\n const initialValueIndex = initialValue ? items.indexOf(initialValue) : -1;\n\n const { isOpen, selectedItem, getToggleButtonProps, getMenuProps, highlightedIndex, getItemProps } = useSelect<T>({\n items,\n initialSelectedItem: initialValueIndex > -1 ? items[initialValueIndex] : undefined,\n initialIsOpen: isInitialOpen,\n stateReducer: (state, actionAndChanges) => webUseSelectReducer(state, actionAndChanges, { keepOpenOnChange }),\n onIsOpenChange: (changes) => {\n if (changes.isOpen === false) {\n if (onClose) onClose();\n }\n },\n onStateChange: () => {\n if (!onChange) return;\n\n if (selectedItem === null) {\n onChange(undefined);\n return;\n }\n onChange(selectedItem);\n },\n });\n\n const { onClick: onPressTrigger, ...restToggleProps } = getToggleButtonProps();\n\n const { x, y, reference, floating, strategy } = useFloating({\n placement: 'bottom-start',\n strategy: 'fixed',\n whileElementsMounted: autoUpdate,\n middleware: [offset(8)],\n });\n\n const tooltipY = Math.round(y ?? 0);\n const tooltipX = Math.round(x ?? 0);\n\n const { ref: menuRef, ...menuProps } = getMenuProps();\n\n return (\n <>\n <View ref={reference} width=\"fit-content\">\n {renderTrigger({\n onPress: onPressTrigger,\n selectedItem: selectedItem || undefined,\n isOpen,\n disabled,\n ...restToggleProps,\n })}\n </View>\n\n <Portal>\n <View\n ref={(myRef) => {\n const currentRef = myRef as HTMLDivElement;\n floating(currentRef);\n menuRef(currentRef);\n }}\n testID={testID}\n {...menuProps}\n position={strategy}\n top={0}\n left={0}\n width=\"100%\"\n maxWidth={{ base: 350 }}\n opacity={isOpen ? 1 : 0}\n backgroundColor=\"kitt.picker.web.optionsContainer.backgroundColor\"\n borderRadius=\"kitt.picker.web.optionsContainer.borderRadius\"\n shadow=\"kitt.picker.web.optionsContainer.shadow\"\n paddingY=\"kitt.2\"\n _web={{\n style: {\n transform: [\n {\n translate3d: `${tooltipX}px, ${tooltipY}px, 0`,\n },\n ],\n visibility: isOpen ? 'visible' : 'hidden',\n transitionDuration: '300ms',\n transitionProperty: 'opacity',\n transitionTimingFunction: 'ease-in-out',\n },\n }}\n >\n {isOpen\n ? childrenArray.map((child, index) => {\n const currentValue = items[index];\n\n const {\n onClick,\n 'aria-selected': ariaSelected,\n ...itemProps\n } = getItemProps({ item: currentValue, index, disabled });\n\n return (\n <Pressable\n key={itemProps.id}\n {...itemProps}\n accessibilityState={{ selected: ariaSelected }}\n onPress={onClick}\n >\n {({ isHovered, isFocused, isPressed }) => (\n <PickerItem\n isSelected={checkSelectedItem(selectedItem || undefined, currentValue)}\n isHighlighted={highlightedIndex === index}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n >\n {child}\n </PickerItem>\n )}\n </Pressable>\n );\n })\n : null}\n </View>\n </Portal>\n </>\n );\n}\n\nPicker.Option = PickerOption;\n\n/**\n * @description: This is exported for testing purposes only\n */\nPicker.UnsafeInternalItem = PickerItem;\n","<svg viewBox=\"0 0 453 71\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"#fff\" d=\"m40 0 2.598 1.5-40 69.282L0 69.282zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5z\"/></svg>","import { HStack, View } from 'native-base';\nimport type { ReactElement } from 'react';\nimport Stripes from './assets/stripes.inline.svg';\n\nexport type SegmentedProgressBarSizes = 'small' | 'default';\nexport type SegmentedProgressBarColors = 'primary' | 'validated';\n\ninterface SegmentedProgressBarProps {\n currentStep?: number;\n stepsCount: number;\n size?: SegmentedProgressBarSizes;\n colorVariant?: SegmentedProgressBarColors;\n withCurrentInProgress?: boolean;\n}\n\nexport function SegmentedProgressBar({\n currentStep = 0,\n stepsCount,\n size = 'default',\n colorVariant = 'primary',\n withCurrentInProgress,\n}: SegmentedProgressBarProps): ReactElement {\n const height = size === 'small' ? 'kitt.2' : 'kitt.4';\n const fillColor =\n colorVariant === 'validated' ? 'kitt.palettes.lateOcean.viride' : 'kitt.palettes.lateOcean.lateOceanLight1';\n\n const steps = [...Array.from({ length: stepsCount }).keys()];\n\n return (\n <HStack height={height} space={2} borderRadius={height} overflow=\"hidden\">\n {steps.map((stepNumber) => {\n const isSegmentCurrentInProgress = withCurrentInProgress && stepNumber === currentStep - 1;\n const color = stepNumber < currentStep ? fillColor : 'kitt.palettes.lateOcean.black50';\n\n return (\n <View\n key={stepNumber}\n height=\"100%\"\n flex={1}\n backgroundColor={isSegmentCurrentInProgress ? 'kitt.palettes.lateOcean.lateOceanLight3' : color}\n borderRadius={2}\n overflow=\"hidden\"\n alignItems=\"center\"\n justifyContent=\"center\"\n >\n {isSegmentCurrentInProgress ? (\n <View width=\"453\" height=\"71\">\n <Stripes />\n </View>\n ) : null}\n </View>\n );\n })}\n </HStack>\n );\n}\n","import { css } from '@linaria/core';\nimport cx from 'classnames';\nimport type { ReactElement } from 'react';\nimport { skeletonBackgroundColor, skeletonFlareColor } from '../themes/late-ocean/skeleton';\n\nconst skeleton = css`\n background-color: ${skeletonBackgroundColor};\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n\n @keyframes flareTranslate {\n from {\n transform: translateX(-100%);\n }\n\n to {\n transform: translateX(100%);\n }\n }\n\n &::after {\n content: '';\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n background-image: linear-gradient(\n -90deg,\n ${skeletonBackgroundColor},\n ${skeletonFlareColor} 50%,\n ${skeletonBackgroundColor} 100%\n );\n animation: 1s ease-in-out infinite;\n animation-name: flareTranslate;\n }\n`;\n\nconst skeletonWithoutAnimation = css`\n &::after {\n background-image: none;\n animation: none;\n }\n`;\n\ninterface SkeletonProps {\n isLoading: boolean;\n}\n\nexport function SkeletonContent({ isLoading }: SkeletonProps): ReactElement {\n return <div className={cx(skeleton, { [skeletonWithoutAnimation]: !isLoading })} />;\n}\n","import type { ReactElement } from 'react';\nimport { useState } from 'react';\nimport type { StyleProp, ViewStyle } from 'react-native';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { SkeletonContent } from './SkeletonContent';\n\nexport interface SkeletonProps extends Omit<ViewProps, 'onLayout'> {\n isLoading?: boolean;\n style?: StyleProp<ViewStyle>;\n}\n\nexport function Skeleton({ isLoading = false, style, ...props }: SkeletonProps): ReactElement {\n const [width, setWidth] = useState(0);\n\n return (\n <View {...props} overflow=\"hidden\" style={style} onLayout={({ nativeEvent }) => setWidth(nativeEvent.layout.width)}>\n <SkeletonContent isLoading={isLoading} width={width} />\n </View>\n );\n}\n\nexport interface BarSkeletonProps extends Omit<SkeletonProps, 'width' | 'height' | 'borderRadius'> {\n size?: number;\n}\n\nfunction Bar({ size, ...props }: BarSkeletonProps): ReactElement {\n const currentBorderRadius = size ? size * 0.5 : 'kitt.skeleton.shape.bar.borderRadius';\n\n return (\n <Skeleton\n {...props}\n width=\"100%\"\n height={size || 'kitt.skeleton.shape.bar.size'}\n borderRadius={currentBorderRadius}\n />\n );\n}\n\nexport interface CircleSkeletonProps extends Omit<SkeletonProps, 'width' | 'height' | 'borderRadius'> {\n size?: number;\n}\n\nfunction Circle({ size, ...props }: CircleSkeletonProps): ReactElement {\n const currentSize = size || 'kitt.skeleton.shape.circle.size';\n const currentBorderRadius = size ? size * 0.5 : 'kitt.skeleton.shape.circle.borderRadius';\n\n return <Skeleton {...props} width={currentSize} height={currentSize} borderRadius={currentBorderRadius} />;\n}\n\nexport interface SquareSkeletonProps extends Omit<SkeletonProps, 'width' | 'height' | 'borderRadius'> {\n size?: number;\n}\n\nfunction Square({ size, ...props }: SquareSkeletonProps): ReactElement {\n const currentSize = size || 'kitt.skeleton.shape.square.size';\n const currentBorderRadius = size ? size * 0.5 : 'kitt.skeleton.shape.square.borderRadius';\n\n return <Skeleton {...props} width={currentSize} height={currentSize} borderRadius={currentBorderRadius} />;\n}\n\nSkeleton.Bar = Bar;\nSkeleton.Circle = Circle;\nSkeleton.Square = Square;\n","export interface MapCenter {\n long: number;\n lat: number;\n zoom: number;\n}\n\nexport interface GetStaticMapImageUrlParams {\n mapId: string;\n apiToken: string;\n mapWidth: number;\n mapHeight: number;\n center: MapCenter;\n is2x?: boolean;\n}\n\nexport function getStaticMapImageUrl({\n mapId,\n apiToken,\n mapWidth,\n mapHeight,\n center,\n is2x,\n}: GetStaticMapImageUrlParams): string {\n const width = Math.round(mapWidth);\n const height = Math.round(mapHeight);\n\n const centerPart = `${center.long},${center.lat},${center.zoom}/`;\n\n const sizePart = `${width}x${height}`;\n\n const urlParts = [\n `https://api.mapbox.com/styles/v1/ornikar/${mapId}/static/`,\n centerPart,\n sizePart,\n is2x ? '@2x' : '',\n ];\n\n const mapImageUrl = new URL(urlParts.join(''));\n mapImageUrl.searchParams.append('access_token', apiToken);\n\n return mapImageUrl.toString();\n}\n","import { useEffect, useRef, useState } from 'react';\nimport { useKittMapConfig } from '../../KittMapConfigProvider/hooks/useKittMapConfig';\nimport type { GetStaticMapImageUrlParams } from '../utils/getStaticMapImageUrl';\nimport { getStaticMapImageUrl } from '../utils/getStaticMapImageUrl';\n\ninterface UseGetStaticMapImageUrlParams extends Omit<GetStaticMapImageUrlParams, 'mapId' | 'apiToken'> {\n forceMapId?: string;\n forceApiToken?: string;\n}\n\nexport function useGetStaticMapImageUrl({\n forceMapId,\n forceApiToken,\n mapWidth,\n mapHeight,\n center,\n is2x,\n}: UseGetStaticMapImageUrlParams): string {\n const { mapId, apiToken } = useKittMapConfig();\n const [currentUrl, setCurrentUrl] = useState<string>('');\n\n const currentMapIdRef = useRef(forceMapId || mapId);\n const currentApiTokenRef = useRef(forceApiToken || apiToken);\n\n useEffect(() => {\n const newUrl = getStaticMapImageUrl({\n center,\n is2x,\n mapHeight,\n mapWidth,\n mapId: currentMapIdRef.current,\n apiToken: currentApiTokenRef.current,\n });\n\n setCurrentUrl(newUrl);\n }, [mapHeight, mapWidth, center, is2x]);\n\n return currentUrl;\n}\n","import { RotateCCWIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { IconButton } from '../IconButton/IconButton';\nimport { View } from '../native-base/primitives';\n\ninterface StaticMapErrorProps {\n onReload?: () => void;\n}\n\nexport function StaticMapError({ onReload }: StaticMapErrorProps): ReactElement {\n return (\n <View alignItems=\"center\" justifyContent=\"center\" height=\"100%\" backgroundColor=\"kitt.separator\">\n <IconButton icon={<RotateCCWIcon />} onPress={onReload} />\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { Image } from '../native-base/primitives';\n\ninterface StaticMapImageProps {\n url: string;\n alt?: string;\n width: number;\n height: number;\n onLoadEnd?: () => void;\n onError?: () => void;\n}\n\nexport function StaticMapImage({ url, alt, width, height, onLoadEnd, onError }: StaticMapImageProps): ReactElement {\n return (\n <Image source={{ uri: url }} width={width} height={height} alt={alt} onError={onError} onLoadEnd={onLoadEnd} />\n );\n}\n","import type { ReactElement } from 'react';\nimport { Skeleton } from '../Skeleton/Skeleton';\nimport { View } from '../native-base/primitives';\n\nexport function StaticMapLoader(): ReactElement {\n return (\n <View alignItems=\"center\" justifyContent=\"center\" height=\"100%\">\n <Skeleton isLoading width=\"100%\" height=\"100%\" />\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { MapMarkerLarge, MapMarkerPosition, MapMarkerSimple } from '../MapMarker/MapMarker';\nimport { View } from '../native-base/primitives';\n\ntype MarkerVariant = 'large' | 'position' | 'simple';\n\ninterface MarkerProps {\n variant?: MarkerVariant;\n}\n\nfunction getMarkerPosition(variant: MarkerVariant): [{ translateX: number }, { translateY: number }] {\n if (variant === 'position') return [{ translateX: -2 }, { translateY: 8 }];\n\n if (variant === 'large') return [{ translateX: 8 }, { translateY: -20 }];\n\n return [{ translateX: 6 }, { translateY: -15 }];\n}\n\nexport function StaticMapMarker({ variant = 'simple' }: MarkerProps): ReactElement {\n return (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n <View\n justifyContent=\"center\"\n alignItems=\"center\"\n height=\"100%\"\n style={{\n transform: getMarkerPosition(variant),\n }}\n >\n {variant === 'position' ? <MapMarkerPosition /> : null}\n {variant === 'large' ? <MapMarkerLarge /> : null}\n {variant === 'simple' ? <MapMarkerSimple /> : null}\n </View>\n </View>\n );\n}\n","export function getRangedWidthValue(nextWidth: number, maxValue: number): number {\n const rangedMapWidth = Math.max(1, Math.min(nextWidth, maxValue));\n\n return rangedMapWidth;\n}\n","export function getShouldDisplay2x(): boolean {\n if (typeof window === 'undefined') {\n return true;\n }\n\n // requesting retina picture is up to the device capabilities;\n return window.devicePixelRatio ? window.devicePixelRatio > 1 : false;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { useState } from 'react';\nimport type { LayoutChangeEvent } from 'react-native';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { StaticMapError } from './StaticMapError';\nimport { StaticMapImage } from './StaticMapImage';\nimport { StaticMapLoader } from './StaticMapLoader';\nimport { StaticMapMarker } from './StaticMapMarker';\nimport { useGetStaticMapImageUrl } from './hooks/useGetStaticMapImageUrl';\nimport { getRangedWidthValue } from './utils/getRangedWidthValue';\nimport { getShouldDisplay2x } from './utils/getShouldDisplay2x';\nimport type { MapCenter } from './utils/getStaticMapImageUrl';\n\nconst mapBoxMaxPictureWidth = 1280;\n\n// Mapbox requestable width for image is between 1 - 1280px\nfunction getPictureWidth(nextWidth: number): number {\n return getRangedWidthValue(nextWidth, mapBoxMaxPictureWidth);\n}\n\nexport interface StaticMapProps extends Omit<ViewProps, 'onLayout'> {\n width?: number;\n height: number;\n alt?: string;\n center: MapCenter;\n marker?: ReactNode;\n /**\n * Mapbox map id.\n * Only use this props if you want to use something different that the config in <KittMapConfigProvider />\n */\n mapId?: string;\n /**\n * Mapbox api access token.\n * Only use this props if you want to use something different that the config in <KittMapConfigProvider />\n */\n apiToken?: string;\n\n onLoaded?: () => void;\n onError?: () => void;\n}\n\nexport function StaticMap({\n width = 0,\n height,\n alt,\n apiToken,\n mapId,\n marker,\n center,\n onLoaded,\n onError,\n ...props\n}: StaticMapProps): ReactElement {\n const [currentWidth, setCurrentWidth] = useState(getPictureWidth(width));\n const [isLoading, setIsLoading] = useState(true);\n const [hasError, setHasError] = useState(false);\n const [currentMapKey, setCurrentMapKey] = useState(0);\n\n const shouldDisplay2xImage = getShouldDisplay2x();\n\n const mapUrl = useGetStaticMapImageUrl({\n forceApiToken: apiToken,\n forceMapId: mapId,\n mapWidth: currentWidth,\n mapHeight: height,\n center,\n is2x: shouldDisplay2xImage,\n });\n\n const handleParentLayout = (event: LayoutChangeEvent): void => {\n const { nativeEvent } = event;\n const rangedMapWidth = getPictureWidth(nativeEvent.layout.width);\n\n setCurrentWidth(rangedMapWidth);\n };\n\n const handleImageLoadEnd = (): void => {\n setIsLoading(false);\n\n if (onLoaded) onLoaded();\n };\n\n const handleError = (): void => {\n setHasError(true);\n\n if (onError) onError();\n };\n\n const handleReload = (): void => {\n setHasError(false);\n setIsLoading(true);\n setCurrentMapKey((prev) => prev + 1);\n };\n\n const shouldDisplayMarker = marker && !isLoading && !hasError;\n\n // Prevents requesting unusable image\n const shouldDisplayPicture = currentWidth > 1 && mapUrl;\n\n return (\n <View\n position=\"relative\"\n maxWidth={mapBoxMaxPictureWidth}\n height={height}\n onLayout={handleParentLayout}\n {...props}\n data-chromatic={process.env.KITT_MAP_CHROMATIC_IGNORE === 'true' ? 'ignore' : undefined}\n >\n {shouldDisplayPicture ? (\n <StaticMapImage\n key={`map-key-${currentMapKey}`}\n url={mapUrl}\n width={currentWidth}\n height={height}\n alt={alt}\n onLoadEnd={handleImageLoadEnd}\n onError={handleError}\n />\n ) : null}\n\n {shouldDisplayMarker ? (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n {marker}\n </View>\n ) : null}\n\n {isLoading ? (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n <StaticMapLoader />\n </View>\n ) : null}\n\n {hasError ? (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n <StaticMapError onReload={handleReload} />\n </View>\n ) : null}\n </View>\n );\n}\n\nStaticMap.Image = StaticMapImage;\nStaticMap.Loader = StaticMapLoader;\nStaticMap.Error = StaticMapError;\nStaticMap.Marker = StaticMapMarker;\n","import type { ReactElement } from 'react';\nimport type { ViewStyle } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\ninterface FlexProps extends Except<ViewProps, 'display' | 'flexDirection' | 'flexWrap'> {\n direction: ViewStyle['flexDirection'];\n wrap?: ViewStyle['flexWrap'];\n}\n\nexport function Flex({ direction, wrap = 'wrap', ...props }: FlexProps): ReactElement {\n return <View {...props} flexDirection={direction} flexWrap={wrap} />;\n}\n","export const storyPadding = 'kitt.4';\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext, useContext } from 'react';\nimport type { KittThemeContextValue } from '../KittThemeContext';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ExtendedTypographyColor } from '../typography/Typography';\nimport { storyPadding } from './theme';\n\nexport interface StoryBlockProps {\n background?: 'dark' | 'light' | 'primary' | 'transparent';\n children: ReactNode;\n}\n\nconst getBackgroundColorFromBlockColor = (\n theme: KittThemeContextValue,\n color: StoryBlockProps['background'] = 'transparent',\n): string => {\n switch (color) {\n case 'dark':\n return '#293033';\n case 'light':\n return '#ffffff';\n case 'primary':\n return theme.kitt.palettes.lateOcean.lateOcean;\n default:\n return 'transparent';\n }\n};\n\nconst getTypographyColorFromBlockColor = (\n color: StoryBlockProps['background'] = 'transparent',\n): ExtendedTypographyColor => {\n switch (color) {\n case 'dark':\n case 'primary':\n return 'white';\n case 'light':\n default:\n return 'black';\n }\n};\n\nexport const StoryBlockBackgroundContext = createContext<StoryBlockProps['background']>('transparent');\nconst StoryBlockColorContext = createContext<ExtendedTypographyColor>('black');\n\nexport const useStoryBlockColor = (color?: ExtendedTypographyColor | undefined): ExtendedTypographyColor => {\n const storyBlockColor = useContext(StoryBlockColorContext);\n return color || storyBlockColor;\n};\n\nexport function StoryBlock({ children, background }: StoryBlockProps): ReactElement {\n const theme = useTheme();\n return (\n <View\n paddingTop=\"kitt.4\"\n paddingX={storyPadding}\n marginX={`-${storyPadding}`}\n background={getBackgroundColorFromBlockColor(theme, background)}\n >\n <StoryBlockColorContext.Provider value={getTypographyColorFromBlockColor(background)}>\n <StoryBlockBackgroundContext.Provider value={background}>{children}</StoryBlockBackgroundContext.Provider>\n </StoryBlockColorContext.Provider>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyProps } from '../typography/Typography';\nimport { useStoryBlockColor } from './StoryBlock';\n\ninterface StoryTitleProps {\n color?: TypographyProps['color'];\n numberOfLines?: TypographyProps['numberOfLines'];\n children: ReactNode;\n}\n\nexport function StoryTitle({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={30}>\n <Typography.Header1 variant=\"bold\" base=\"header1\" color={useStoryBlockColor(color)} numberOfLines={numberOfLines}>\n {children}\n </Typography.Header1>\n </View>\n );\n}\n\nfunction StoryTitleLevel2({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={30}>\n <Typography.Header2 variant=\"bold\" base=\"header2\" color={useStoryBlockColor(color)} numberOfLines={numberOfLines}>\n {children}\n </Typography.Header2>\n </View>\n );\n}\n\nStoryTitleLevel2.displayName = 'StoryTitle.Level2';\n\nfunction StoryTitleLevel3({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={10}>\n <Typography.Header3\n variant=\"bold\"\n base=\"header3\"\n medium=\"header4\"\n color={useStoryBlockColor(color)}\n numberOfLines={numberOfLines}\n >\n {children}\n </Typography.Header3>\n </View>\n );\n}\n\nStoryTitleLevel3.displayName = 'StoryTitle.Level3';\n\nfunction StoryTitleLevel4({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={10}>\n <Typography.Header4\n variant=\"bold\"\n base=\"header4\"\n medium=\"header5\"\n color={useStoryBlockColor(color)}\n numberOfLines={numberOfLines}\n >\n {children}\n </Typography.Header4>\n </View>\n );\n}\n\nStoryTitleLevel4.displayName = 'StoryTitle.Level3';\n\nStoryTitle.Level2 = StoryTitleLevel2;\nStoryTitle.Level3 = StoryTitleLevel3;\nStoryTitle.Level4 = StoryTitleLevel4;\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ScrollViewProps } from '../native-base/primitives';\nimport { ScrollView } from '../native-base/primitives';\nimport { StoryTitle } from './StoryTitle';\nimport { storyPadding } from './theme';\n\nexport interface StoryProps {\n title: ReactNode;\n children: ReactNode;\n contentContainerStyle?: ScrollViewProps['contentContainerStyle'];\n}\n\nexport function Story({ title, contentContainerStyle, children }: StoryProps): ReactElement {\n return (\n <ScrollView padding={storyPadding} contentContainerStyle={contentContainerStyle}>\n <StoryTitle>{title}</StoryTitle>\n {children}\n </ScrollView>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { StoryTitle } from './StoryTitle';\n\nexport interface StorySectionProps extends Except<ViewProps, 'marginBottom'> {\n title: ReactNode;\n children: ReactNode;\n /** @private */\n internalIsDemoSection?: boolean;\n}\n\nexport function StorySection({ title, children, internalIsDemoSection, ...props }: StorySectionProps): ReactElement {\n if (title === 'Demo' && !internalIsDemoSection) throw new Error('Use StorySection.Demo instead');\n return (\n <View marginBottom=\"kitt.8\" {...props}>\n <StoryTitle.Level2>{title}</StoryTitle.Level2>\n {children}\n </View>\n );\n}\n\nfunction SubSection({ title, children, ...props }: StorySectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.4\" {...props}>\n <StoryTitle.Level3>{title}</StoryTitle.Level3>\n {children}\n </View>\n );\n}\n\nfunction BlockSection({ title, children, ...props }: StorySectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.4\" {...props}>\n <StoryTitle.Level4>{title}</StoryTitle.Level4>\n {children}\n </View>\n );\n}\n\nexport interface DemoSectionProps extends ViewProps {\n children: ReactNode;\n}\n\nfunction DemoSection({ children, ...props }: DemoSectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.16\" {...props}>\n <StorySection internalIsDemoSection title=\"Demo\">\n {children}\n </StorySection>\n </View>\n );\n}\n\nStorySection.SubSection = SubSection;\nStorySection.BlockSection = BlockSection;\n/** @deprecated use StorySection.Demo instead */\nStorySection.DemoSection = DemoSection;\nStorySection.Demo = DemoSection;\n\n/** @deprecated use StorySection instead */\nexport const DeprecatedSection = StorySection;\n","import type { ReactElement } from 'react';\nimport type { StoryContainerProps } from './StoryContainer';\nimport { StorySection } from './StorySection';\n\nexport function StoryContainer({ children, state, title, platform }: StoryContainerProps): ReactElement | null {\n if (platform === 'native') return null;\n\n return (\n <StorySection.BlockSection testID={state} title={title}>\n <div className={state ? `kitt-${state}` : undefined}>{children}</div>\n </StorySection.BlockSection>\n );\n}\n","import type { DecoratorFunction } from '@storybook/addons';\nimport type { ReactElement } from 'react';\nimport { Story as StoryContainer } from './Story';\n\n// eslint-disable-next-line react/function-component-definition -- this is not a component, it's a decorator for storybook.\nexport const StoryDecorator: DecoratorFunction<ReactElement<unknown>> = (storyFn, context) => {\n return <StoryContainer title={context.name}>{storyFn()}</StoryContainer>;\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { Children } from 'react';\nimport { Platform } from 'react-native';\nimport type { TypographyProps } from '..';\nimport { View } from '../native-base/primitives';\nimport { StoryTitle } from './StoryTitle';\n\nexport interface StoryGridRowProps {\n children: NonNullable<ReactNode>;\n breakpoint?: 'small' | 'medium';\n}\n\nfunction StoryGridRow({ children, breakpoint = 'small' }: StoryGridRowProps): ReactElement {\n return (\n <View\n flexDirection={{ base: 'column', [breakpoint]: 'row' }}\n marginX={{ [breakpoint]: '-kitt.1' }}\n marginBottom={{ [breakpoint]: 'kitt.4' }}\n >\n {Children.map(children, (child) => (\n <View\n flexGrow={{ [breakpoint]: 1 }}\n flexBasis={{ [breakpoint]: 0 }}\n paddingTop={{ base: 'kitt.2', [breakpoint]: 0 }}\n paddingBottom={{ base: 'kitt.4', [breakpoint]: 0 }}\n marginX={{ [breakpoint]: 'kitt.2' }}\n >\n {child}\n </View>\n ))}\n </View>\n );\n}\n\nexport interface StoryGridColProps {\n children: NonNullable<ReactNode>;\n title?: string;\n titleColor?: TypographyProps['color'];\n platform?: 'all' | 'native' | 'web';\n}\n\nfunction StoryGridCol({ title, titleColor, children, platform = 'all' }: StoryGridColProps): ReactElement | null {\n const isNative = Platform.OS === 'ios' || Platform.OS === 'android';\n\n if (Platform.OS === 'web' && platform === 'native') {\n return null;\n }\n\n if (isNative && platform === 'web') {\n return null;\n }\n\n return (\n <>\n {title ? (\n <StoryTitle.Level4 numberOfLines={1} color={titleColor}>\n {title}\n </StoryTitle.Level4>\n ) : null}\n {children}\n </>\n );\n}\n\nexport const StoryGrid = {\n Row: StoryGridRow,\n Col: StoryGridCol,\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyColor } from '../typography/Typography';\n\nexport type TagType = 'primary' | 'default' | 'danger' | 'warn';\n\nexport type TagVariant = 'outline' | 'fill';\n\nexport interface TagProps {\n label: ReactNode;\n type?: TagType;\n variant?: TagVariant;\n}\n\nexport const getLabelColor = (type: TagType, variant: TagVariant): TypographyColor => {\n switch (type) {\n case 'danger': {\n return variant === 'outline' ? 'danger' : 'white';\n }\n case 'warn': {\n return variant === 'outline' ? 'warning' : 'black';\n }\n case 'primary': {\n return 'primary';\n }\n case 'default': {\n return 'black';\n }\n default: {\n return 'black';\n }\n }\n};\n\nexport function Tag({ label, type = 'default', variant = 'fill' }: TagProps): ReactElement {\n return (\n <View\n alignSelf=\"flex-start\"\n borderRadius=\"kitt.tag.borderRadius\"\n paddingX=\"kitt.tag.horizontalPadding\"\n paddingY=\"kitt.tag.verticalPadding\"\n backgroundColor={`kitt.tag.${type}.${variant}.backgroundColor`}\n borderColor={`kitt.tag.${type}.${variant}.borderColor`}\n borderWidth={`kitt.tag.${type}.${variant}.borderWidth`}\n >\n <Typography.Text base=\"body-xsmall\" color={getLabelColor(type, variant)}>\n {label}\n </Typography.Text>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { forwardRef, useState } from 'react';\nimport type { NativeSyntheticEvent, TextInput as RNTextInput, TextInputChangeEventData } from 'react-native';\nimport { InputText } from '../forms/InputText/InputText';\nimport type { InputUIState } from '../forms/utils';\nimport { View } from '../native-base/primitives';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { TimePickerProps } from './TimePicker';\n\ninterface GetCurrentInternalForcedStateParams {\n isDisabled?: boolean;\n isFocusedInternal?: boolean;\n isPressedInternal?: boolean;\n isHoveredInternal?: boolean;\n}\n\nfunction getCurrentInternalForcedState({\n isDisabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n}: GetCurrentInternalForcedStateParams): InputUIState | 'disabled' | undefined {\n if (isDisabled) return 'disabled';\n\n if (isHoveredInternal) return 'hover';\n\n if (isFocusedInternal) return 'focus';\n\n if (isPressedInternal) return 'hover';\n\n return undefined;\n}\n\nfunction keepHoursInterval(hours: string): number {\n return Math.min(Math.max(parseInt(hours, 10), 0), 23);\n}\n\nfunction getDisplayedHours(hours: string): string {\n if (hours.length === 0) return '';\n return keepHoursInterval(hours).toString().padStart(2, '0');\n}\n\nfunction keepMinutesInterval(minutes: string): number {\n return Math.min(Math.max(parseInt(minutes, 10), 0), 59);\n}\n\nfunction getDisplayedMinutes(minutes: string): string {\n if (minutes.length === 0) return '';\n\n const minutesWithinInterval = keepMinutesInterval(minutes).toString();\n\n // Handles case such as typing '04'\n // it will result as 4 after parseInt but we want to keep the original string length between casts to display leading '0' in the input\n if (minutes.length > 1) return minutesWithinInterval.padStart(2, '0');\n\n return minutesWithinInterval;\n}\n\nfunction getInitialInputValueFromDateValue(date: Date): string {\n const hours = date.getHours();\n const minutes = date.getMinutes();\n\n return `${getDisplayedHours(hours.toString())}:${getDisplayedMinutes(minutes.toString()).padStart(2, '0')}`;\n}\n\nexport const TimePicker = forwardRef<RNTextInput, TimePickerProps>(\n (\n {\n value,\n disabled,\n stretch,\n placeholder = '--:--',\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n onChange,\n onBlur,\n\n // native implementation props - ignored\n title,\n validateButtonLabel,\n isDefaultVisible,\n modalTestID,\n pickerTestID,\n ...props\n }: TimePickerProps,\n ref,\n ): ReactElement => {\n const [inputValue, setInputValue] = useState(value ? getInitialInputValueFromDateValue(value) : '');\n\n const handleChange = (currentInputValue = ''): void => {\n if (!onChange) return;\n\n // Format is hh:mm hence 5 characters\n if (currentInputValue.length < 5 || !currentInputValue.includes(':')) return;\n\n const [hours, minutes] = currentInputValue.split(':');\n\n // Prepare the next date. It clones the date value passed as prop if available\n const nextDate = value ? new Date(value) : new Date();\n\n nextDate.setHours(keepHoursInterval(hours), keepMinutesInterval(minutes));\n\n onChange(nextDate);\n };\n\n const handleInputChange = (event: NativeSyntheticEvent<TextInputChangeEventData>): void => {\n const currentValue = event.nativeEvent.text;\n\n if (currentValue.length === 0) {\n setInputValue(currentValue);\n\n if (onChange) onChange(undefined);\n return;\n }\n\n // Allow alphanumerical characters and ':'\n const sanitizedValue = currentValue.replace(/[^0-9:]/g, '');\n\n if (currentValue.length <= inputValue.length) {\n setInputValue(sanitizedValue);\n\n handleChange(sanitizedValue);\n return;\n }\n\n const hasSeparator = sanitizedValue.includes(':');\n\n // When input has a value which is more than ':'\n if (hasSeparator && sanitizedValue.length > 1) {\n const [hours, minutes] = sanitizedValue.split(':');\n\n const currentHours = getDisplayedHours(hours);\n const currentMinutes = getDisplayedMinutes(minutes);\n\n const nextValue = `${currentHours}:${currentMinutes}`;\n\n setInputValue(nextValue);\n\n handleChange(nextValue);\n return;\n }\n\n // Auto suffix hours with ':' when adding characters\n if (sanitizedValue.length === 2 && currentValue.length > inputValue.length) {\n setInputValue(`${getDisplayedHours(sanitizedValue)}:`);\n\n return;\n }\n\n // Handle case like 1212 that should be formatted as 12:12\n // Split hours part from the minutes part and insert ':' between then\n if (sanitizedValue.length > 2) {\n const hours = sanitizedValue.slice(0, 2);\n const minutes = sanitizedValue.slice(2);\n\n const nextValue = `${getDisplayedHours(hours)}:${getDisplayedMinutes(minutes)}`;\n\n setInputValue(nextValue);\n\n handleChange(nextValue);\n return;\n }\n\n setInputValue(sanitizedValue);\n\n handleChange(sanitizedValue);\n };\n\n const handleBlur = (): void => {\n if (inputValue.indexOf(':') === 1) {\n setInputValue(`0${inputValue}`);\n }\n\n if (onBlur) onBlur();\n };\n\n return (\n <View width={createResponsiveStyleFromProp(stretch, '100%', 'kitt.forms.timePicker.minWidth')}>\n <InputText\n ref={ref}\n textAlign=\"center\"\n value={inputValue}\n placeholder={placeholder}\n disabled={disabled}\n internalForceState={getCurrentInternalForcedState({\n isDisabled: disabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n })}\n onChange={handleInputChange}\n onBlur={handleBlur}\n {...props}\n />\n </View>\n );\n },\n);\n","import { TooltipArrowIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport type { TooltipPosition } from './Tooltip';\n\nexport interface ArrowProps {\n position: TooltipPosition;\n top?: number;\n left?: number;\n display?: ViewProps['display'];\n}\n\nexport const Arrow = forwardRef<typeof View, ArrowProps>(\n ({ position, top, left, display }: ArrowProps, ref): ReactElement => {\n const theme = useTheme();\n\n const transformStyle = [\n {\n rotate: position === 'bottom' ? '180deg' : '0deg',\n },\n ];\n\n return (\n <View\n ref={ref}\n display={display || { base: 'none', small: 'flex' }}\n width=\"kitt.tooltip.arrow.width\"\n height=\"kitt.tooltip.arrow.height\"\n left={left}\n top={top}\n style={{\n transform: transformStyle,\n }}\n >\n <TooltipArrowIcon color={theme.kitt.tooltip.backgroundColor} opacity={theme.kitt.tooltip.opacity} />\n </View>\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\n\ninterface TooltipContentProps {\n children: ReactNode;\n}\n\nexport function TooltipContent({ children }: TooltipContentProps): ReactElement {\n return (\n <View\n backgroundColor=\"kitt.tooltip.backgroundColor\"\n borderRadius=\"kitt.tooltip.borderRadius\"\n opacity=\"kitt.tooltip.opacity\"\n paddingY=\"kitt.tooltip.verticalPadding\"\n paddingX=\"kitt.tooltip.horizontalPadding\"\n >\n <Typography.Text base=\"body-small\" color=\"white-light\">\n {children}\n </Typography.Text>\n </View>\n );\n}\n","import { useBreakpointValue } from '../../native-base/utils';\n\ninterface GetShouldDisplayArrowParams {\n isTooltipFullWidth?: boolean;\n isBase?: boolean;\n}\n\nfunction getShouldRenderArrow({ isTooltipFullWidth, isBase }: GetShouldDisplayArrowParams): boolean {\n if (isTooltipFullWidth) return false;\n\n const shouldDisplayArrow = !isBase;\n\n return shouldDisplayArrow;\n}\n\ninterface UseShouldDisplayArrowParams {\n isTooltipFullWidth?: boolean;\n}\n\nexport function useShouldRenderArrow({ isTooltipFullWidth }: UseShouldDisplayArrowParams): boolean {\n const isBase = useBreakpointValue({\n base: true,\n small: false,\n });\n\n return getShouldRenderArrow({ isTooltipFullWidth, isBase });\n}\n","export function getHasArrowEnoughSpace(arrowCenterOffset?: number): boolean {\n return arrowCenterOffset !== undefined ? true : arrowCenterOffset !== 0;\n}\n","import type { MiddlewareData } from '@floating-ui/react-dom';\nimport { arrow, autoPlacement, autoUpdate, offset, shift, useFloating } from '@floating-ui/react-dom';\nimport type { ReactElement, RefObject } from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport { Portal } from 'react-portal';\nimport { useOnClickOutside } from 'usehooks-ts';\nimport { useTheme } from '../KittThemeContext';\nimport { Pressable, View } from '../native-base/primitives';\nimport { useBreakpointValue } from '../native-base/utils';\nimport { Arrow } from './Arrow';\nimport type { TooltipProps, UpdateCallbackParams } from './Tooltip';\nimport { TooltipContent } from './TooltipContent';\nimport { useShouldRenderArrow } from './hooks/useShouldRenderArrow';\nimport { getHasArrowEnoughSpace } from './utils/getHasArrowEnoughSpace';\n\ninterface WebUpdateCallbackParams extends Exclude<UpdateCallbackParams, 'middlewareData'> {\n middlewareData: MiddlewareData;\n refs: {\n reference: RefObject<any>;\n floating: RefObject<any>;\n };\n}\n\ninterface WebTooltipProps extends Exclude<TooltipProps, 'onUpdate'> {\n onUpdate: (params: WebUpdateCallbackParams) => void;\n}\n\nexport function Tooltip({\n children,\n defaultVisible,\n position = 'top',\n content,\n floatingPadding,\n fullWidth,\n onToggle,\n onUpdate,\n zIndex,\n}: WebTooltipProps): ReactElement {\n const isBase = useBreakpointValue({\n base: true,\n small: false,\n });\n\n const theme = useTheme();\n\n const [isVisible, setIsVisible] = useState(Boolean(defaultVisible));\n\n const [isCursorOnTooltip, setIsCursorOnTooltip] = useState(false);\n\n const arrowRef = useRef<typeof View>(null);\n\n const currentFloatingPadding = floatingPadding || theme.kitt.tooltip.floatingPadding;\n\n const { x, y, reference, floating, strategy, update, refs, middlewareData, placement } = useFloating({\n placement: position,\n strategy: 'fixed',\n whileElementsMounted: autoUpdate,\n middleware: [\n // Order matters\n offset(currentFloatingPadding),\n autoPlacement({\n allowedPlacements: ['top', 'bottom'],\n padding: currentFloatingPadding,\n }),\n shift({ crossAxis: false, padding: currentFloatingPadding }),\n arrow({ element: arrowRef as unknown as HTMLElement }),\n ],\n });\n\n const tooltipY = Math.round(y ?? 0);\n const tooltipX = Math.round(x ?? 0);\n\n const { centerOffset } = middlewareData.arrow || {};\n\n const shouldRenderArrow = useShouldRenderArrow({ isTooltipFullWidth: fullWidth });\n const hasArrowEnoughSpace = getHasArrowEnoughSpace(centerOffset);\n\n const sharedArrowProps = {\n top: Math.round(middlewareData.arrow?.y ?? 0),\n left: Math.round(middlewareData.arrow?.x ?? 0),\n display: hasArrowEnoughSpace ? undefined : 'none',\n };\n\n useEffect(() => {\n if (!onUpdate) return;\n\n onUpdate({\n x: tooltipX,\n y: tooltipY,\n placement,\n strategy,\n update,\n refs,\n middlewareData,\n });\n }, [tooltipX, tooltipY, reference, floating, strategy, update, refs, middlewareData, placement, onUpdate]);\n\n const handlePressOutside = (): void => {\n if (!isVisible || isCursorOnTooltip) return;\n\n if (onToggle) onToggle(false);\n setIsVisible(false);\n };\n\n useOnClickOutside(refs.reference as RefObject<HTMLDivElement>, handlePressOutside);\n\n const handleDisplayTooltip = (): void => {\n if (onToggle) onToggle(true);\n setIsVisible(true);\n };\n\n const handleHideTooltip = (): void => {\n if (onToggle) onToggle(false);\n setIsVisible(false);\n };\n\n const handleMouseEnter = (): void => {\n setIsCursorOnTooltip(true);\n };\n\n const handleMouseLeave = (): void => {\n setIsCursorOnTooltip(false);\n };\n\n const themePart = isVisible ? 'out' : 'in';\n const transitionDuration = theme.kitt.tooltip.transition[themePart].duration;\n const transitionTimingFunction = theme.kitt.tooltip.transition[themePart].timingFunction;\n const transformOrigin = `center ${placement === 'bottom' ? 'top' : 'bottom'}`;\n\n return (\n <View ref={reference as any} position=\"relative\" display=\"inline-flex\">\n <Pressable\n accessibilityRole=\"button\"\n alignSelf=\"baseline\"\n display=\"inline-flex\"\n onHoverIn={handleDisplayTooltip}\n onFocus={handleDisplayTooltip}\n onBlur={handleHideTooltip}\n >\n {children}\n </Pressable>\n\n <Portal>\n <View\n ref={floating as any}\n accessibilityHidden={!isVisible}\n paddingX={{ base: 'kitt.4', small: 0 }}\n width={{ base: '100%', small: 'max-content' }}\n maxWidth={{ base: '100%', small: 'kitt.tooltip.maxWidth' }}\n opacity={isVisible ? 'kitt.tooltip.opacity' : 0}\n pointerEvents={isVisible || isCursorOnTooltip ? 'auto' : 'none'}\n position={strategy}\n zIndex={zIndex}\n top={0}\n left={0}\n _web={{\n style: {\n transform: [\n {\n translate3d: isBase && !fullWidth ? `0, ${tooltipY}px, 0` : `${tooltipX}px, ${tooltipY}px, 0`,\n },\n ],\n visibility: isVisible ? 'visible' : 'hidden',\n transitionDuration,\n transitionProperty: theme.kitt.tooltip.transition[themePart].property,\n transitionTimingFunction,\n },\n }}\n onTouchStart={handleMouseEnter}\n onTouchEnd={handleMouseLeave}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n <View\n _web={{\n style: {\n transform: [{ scale: isVisible ? 1 : 0.8 }],\n transitionDuration: isVisible ? '0' : transitionDuration,\n transitionProperty: 'all',\n transitionTimingFunction,\n transformOrigin,\n },\n }}\n >\n {shouldRenderArrow && placement === 'bottom' ? (\n <Arrow ref={arrowRef} position=\"bottom\" {...sharedArrowProps} />\n ) : null}\n <TooltipContent>{content}</TooltipContent>\n {shouldRenderArrow && placement === 'top' ? (\n <Arrow ref={arrowRef} position=\"top\" {...sharedArrowProps} />\n ) : null}\n </View>\n </View>\n </Portal>\n </View>\n );\n}\n\nTooltip.Arrow = Arrow;\nTooltip.Content = TooltipContent;\n","import type { ReactElement } from 'react';\nimport { useMemo } from 'react';\nimport type { Entries } from 'type-fest';\nimport type { EmojiProps } from '../Emoji/Emoji';\nimport { Emoji } from '../Emoji/Emoji';\nimport { KittBreakpointNameEnum } from '../KittBreakpoints';\nimport type { KittThemeContextValue } from '../KittThemeContext';\nimport { useTheme } from '../KittThemeContext';\nimport type { TypographyTypeConfig } from '../themes/late-ocean/typography';\nimport type { TypographyBreakpointType, TypographyType } from './Typography';\nimport { getTypographyTypeConfigKeyFromTypeName } from './Typography';\nimport { isTypographyHeader } from './utils/isTypographyHeader';\n\nfunction getTypographyTypeConfig(type: TypographyType, theme: KittThemeContextValue): TypographyTypeConfig {\n if (isTypographyHeader(type, undefined)) {\n return theme.kitt.typography.types.headers.configs[type];\n }\n\n return theme.kitt.typography.types.bodies.configs[type];\n}\n\ninterface Sizes {\n size: EmojiProps['size'];\n marginLeft: NonNullable<EmojiProps['_web']>['marginLeft'];\n marginRight: NonNullable<EmojiProps['_web']>['marginRight'];\n}\n\nfunction calcSizesFromType(type: TypographyBreakpointType, theme: KittThemeContextValue): Sizes {\n const typeWithMediumForced = {\n ...type,\n medium: type.medium || type.small || type.base,\n };\n\n const size: Sizes['size'] = {\n base: getTypographyTypeConfig(type.base ?? 'body', theme).baseAndSmall.fontSize,\n };\n\n [\n KittBreakpointNameEnum.SMALL,\n KittBreakpointNameEnum.MEDIUM,\n KittBreakpointNameEnum.LARGE,\n KittBreakpointNameEnum.WIDE,\n ].forEach((typeName) => {\n const value = typeWithMediumForced[typeName];\n if (value) {\n size[typeName] = getTypographyTypeConfig(value, theme)[getTypographyTypeConfigKeyFromTypeName(typeName)].fontSize;\n }\n });\n\n const marginLeft: Sizes['marginLeft'] = {};\n const marginRight: Sizes['marginRight'] = {};\n\n (Object.entries(size) as Entries<typeof size>).forEach(([key, value]) => {\n if (value) {\n marginLeft[key] = value / 10;\n marginLeft[key] = value / 20;\n }\n });\n\n return { size, marginLeft, marginRight };\n}\n\nexport interface TypographyEmojiProps extends TypographyBreakpointType {\n type?: TypographyBreakpointType;\n emoji: string;\n}\n\nexport function TypographyEmoji({\n emoji,\n base: legacyBase,\n small: legacySmall,\n medium: legacyMedium,\n large: legacyLarge,\n wide: legacyWide,\n type = { base: legacyBase, small: legacySmall, medium: legacyMedium, large: legacyLarge, wide: legacyWide },\n}: TypographyEmojiProps): ReactElement {\n const theme = useTheme();\n const { base, small, medium, large, wide } = type;\n const { size, marginLeft, marginRight } = useMemo(\n () => calcSizesFromType({ base, small, medium, large, wide }, theme),\n [base, small, medium, large, wide, theme],\n );\n\n return (\n <Emoji\n size={size}\n emoji={emoji}\n alignSelf=\"center\"\n _web={{\n // @ts-expect-error -- transform expects number, but string works on web\n style: {\n transform: 'translateY(20%)',\n },\n /* Style Twemoji: https://github.com/twitter/twemoji#inline-styles */\n marginLeft,\n marginRight,\n }}\n />\n );\n}\n","import { css } from '@linaria/core';\nimport cx from 'classnames';\nimport type { ReactElement } from 'react';\nimport type { TypographyLinkWebWrapperProps } from './TypographyLinkWebWrapper';\n\n// overrides :global(a) in Link styles.module.css\nconst displayUnderline = css`\n & > * {\n text-decoration: underline;\n }\n\n & > *:hover,\n & > *:active,\n .kitt-hover & > * {\n text-decoration: none;\n }\n`;\n\nconst displayUnderlineWhenHovered = css`\n & > * {\n text-decoration: none;\n }\n\n & > *:hover,\n & > *:active,\n .kitt-hover & > * {\n text-decoration: underline;\n }\n`;\n\nexport function TypographyLinkWebWrapper({ children, hasNoUnderline }: TypographyLinkWebWrapperProps): ReactElement {\n return (\n <span className={cx(displayUnderline, hasNoUnderline ? displayUnderlineWhenHovered : undefined)}>{children}</span>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { TextProps } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { TypographyPropsWithoutRole } from './Typography';\nimport { Typography } from './Typography';\nimport { TypographyLinkWebWrapper } from './TypographyLinkWebWrapper';\n\nexport interface TypographyLinkProps extends Except<TypographyPropsWithoutRole, 'children'> {\n children: NonNullable<ReactNode>;\n disabled?: boolean;\n noUnderline?: boolean;\n variant: NonNullable<TypographyPropsWithoutRole['variant']>;\n href?: TextProps['href'];\n hrefAttrs?: TextProps['hrefAttrs'];\n onPress?: TextProps['onPress'];\n}\n\nexport function TypographyLink({\n children,\n disabled,\n noUnderline,\n href,\n hrefAttrs,\n onPress,\n ...otherProps\n}: TypographyLinkProps): ReactElement {\n return (\n <TypographyLinkWebWrapper hasNoUnderline={noUnderline}>\n <Typography\n underline={!noUnderline}\n color={disabled ? 'black-disabled' : undefined}\n href={href}\n hrefAttrs={hrefAttrs}\n accessibilityRole=\"link\"\n dataSet={{\n // remove data-kitt-universal when we delete kitt web. See :global(a) in Link styles.module.css\n 'kitt-universal': 'true',\n }}\n _web={{\n cursor: disabled ? 'not-allowed' : 'pointer',\n transitionProperty: 'color',\n transitionDuration: '0.2s',\n transitionTimingFunction: 'ease-in-out',\n }}\n // TODO[native-base@>=3.4.19] this currently does not work. Retest when updating native-base.\n // _active={{\n // underline: !!noUnderline,\n // }}\n // _hover={{\n // underline: !!noUnderline,\n // }}\n onPress={disabled ? undefined : onPress}\n {...otherProps}\n >\n {children}\n </Typography>\n </TypographyLinkWebWrapper>\n );\n}\n","import { useMemo } from 'react';\nimport type { Theme } from './themes/default';\nimport { theme as kittTheme } from './themes/default';\n\nexport interface KittTheme {\n kitt: Theme;\n}\n\nexport function useKittTheme(): KittTheme {\n return useMemo(() => {\n return { kitt: kittTheme };\n }, []);\n}\n","import { makeDecorator } from '@storybook/addons';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { AppTheme, KittNativeBaseProviderProps } from '../../native-base/KittNativeBaseProvider';\nimport { KittNativeBaseProvider } from '../../native-base/KittNativeBaseProvider';\nimport { useKittTheme } from '../../useKittTheme';\n\ninterface KittThemeProviderProps {\n appTheme?: AppTheme;\n isSSR?: KittNativeBaseProviderProps['isSSR'];\n children: ReactNode;\n}\n\nexport function KittThemeProvider({ isSSR, children, appTheme }: KittThemeProviderProps): ReactElement {\n const theme = useKittTheme();\n return (\n <KittNativeBaseProvider theme={theme} isSSR={isSSR} appTheme={appTheme}>\n {children}\n </KittNativeBaseProvider>\n );\n}\n\nexport const KittThemeDecorator = makeDecorator({\n name: 'ThemeDecorator',\n parameterName: 'theme',\n wrapper: (storyFn, context, { options = {}, parameters = {} }) => {\n return (\n <KittThemeProvider isSSR={parameters.isSSR ?? (options as any).isSSR}>\n {storyFn(context) as ReactNode}\n </KittThemeProvider>\n );\n },\n});\n","import type { ComponentProps, ElementType, ReactElement, ReactNode } from 'react';\nimport { Platform } from 'react-native';\n\nexport interface StyleWebWrapperProps<T extends ElementType> {\n as: T;\n children: ReactNode;\n}\n\n/**\n * @deprecated Use react-native Platform instead\n */\nexport function StyleWebWrapper<T extends ElementType = 'div'>({\n as,\n children,\n ...props\n}: StyleWebWrapperProps<T> & ComponentProps<T>): ReactElement {\n if (Platform.OS !== 'web') return children as ReactElement;\n const Component: T = as || ('div' as T); // as or default to div. If as is undefined, T is div but typescript is not sure\n return <Component {...(props as any)}>{children}</Component>;\n}\n","import { useWindowDimensions } from 'react-native';\n\nexport interface WindowDimensions {\n width?: number;\n height?: number;\n}\n\nexport interface MatchWindowSizeOptions {\n minWidth?: number;\n maxWidth?: number;\n minHeight?: number;\n maxHeight?: number;\n}\nexport function matchWindowSize(\n { width, height }: WindowDimensions,\n { minWidth, maxWidth, minHeight, maxHeight }: MatchWindowSizeOptions,\n): boolean {\n const hasWidthMatched = width ? (!minWidth || width >= minWidth) && (!maxWidth || width <= maxWidth) : true;\n const hasHeightMatched = height ? (!minHeight || height >= minHeight) && (!maxHeight || height <= maxHeight) : true;\n return hasWidthMatched && hasHeightMatched;\n}\n\n/**\n * Returns if a size matches based on dimensions passed as options.\n *\n * WARNING: Not SSR friendly.\n */\nexport function useMatchWindowSize(options: MatchWindowSizeOptions): boolean {\n const { width, height } = useWindowDimensions();\n return matchWindowSize({ width, height }, options);\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { BreakpointValueHookValues } from '../../native-base/utils';\nimport { useBreakpointValue } from '../../native-base/utils';\nimport type { MatchWindowSizeOptions } from './useMatchWindowSize';\nimport { useMatchWindowSize } from './useMatchWindowSize';\n\ninterface MatchWindowSizeProps extends MatchWindowSizeOptions {\n children: ReactNode;\n}\n\n/**\n * Display children if match window size options\n *\n * WARNING: Currently not SSR friendly.\n */\nexport function MatchWindowSize({ children, ...matchWindowSizeOptions }: MatchWindowSizeProps): ReactElement | null {\n const match = useMatchWindowSize(matchWindowSizeOptions);\n if (!match) return null;\n return children as ReactElement;\n}\n\ntype SwitchBreakpointsProps = BreakpointValueHookValues<ReactNode>;\n\nexport function SwitchBreakpoints(breakpoints: SwitchBreakpointsProps): ReactElement | null {\n return useBreakpointValue(breakpoints) as ReactElement | null;\n}\n","import { KittBreakpointNameEnum } from '../../KittBreakpoints';\nimport { useBreakpointValue } from '../../native-base/utils';\n\nexport function useCurrentBreakpointName(): KittBreakpointNameEnum {\n return useBreakpointValue({\n base: KittBreakpointNameEnum.BASE,\n small: KittBreakpointNameEnum.SMALL,\n medium: KittBreakpointNameEnum.MEDIUM,\n large: KittBreakpointNameEnum.LARGE,\n wide: KittBreakpointNameEnum.WIDE,\n });\n}\n","import { CheckIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { TypographyIcon } from '../typography/TypographyIcon';\nimport type { StepState } from './Step';\n\nconst backgroundColors = {\n done: 'kitt.verticalSteps.done.icon.backgroundColor',\n active: 'kitt.verticalSteps.active.icon.backgroundColor',\n default: 'kitt.verticalSteps.default.icon.backgroundColor',\n};\n\nexport interface IconStatusProps {\n state: StepState;\n index: number;\n}\n\nfunction IconStatus({ state, index }: IconStatusProps): ReactElement {\n if (state === 'done') {\n return <TypographyIcon icon={<CheckIcon />} color=\"kitt.verticalSteps.done.icon.textColor\" />;\n }\n\n if (state === 'active') {\n return (\n <Typography.Text textAlign=\"center\" variant=\"bold\" color=\"kitt.verticalSteps.active.icon.textColor\">\n {index + 1}\n </Typography.Text>\n );\n }\n\n return (\n <Typography.Text textAlign=\"center\" variant=\"bold\" color=\"kitt.verticalSteps.default.icon.textColor\">\n {index + 1}\n </Typography.Text>\n );\n}\n\ninterface StepIconProps {\n index: number;\n state?: StepState;\n}\n\nexport function StepIcon({ index, state = 'default' }: StepIconProps): ReactElement {\n return (\n <View\n justifyContent=\"center\"\n alignItems=\"center\"\n width={30}\n height={30}\n borderRadius={15}\n backgroundColor={backgroundColors[state]}\n >\n <IconStatus state={state} index={index} />\n </View>\n );\n}\n","import { HStack } from 'native-base';\nimport type { ReactElement, ReactNode } from 'react';\nimport { ActionCard } from '../ActionCard/ActionCard';\nimport { View } from '../native-base/primitives';\nimport { StepIcon } from './StepIcon';\n\nexport type StepState = 'active' | 'done' | 'default';\n\nexport interface ExternalStepProps {\n children: ReactNode;\n shouldDisableNextLink?: boolean;\n}\n\nexport function ExternalStep(props: ExternalStepProps): ReactElement | null {\n return null;\n}\n\nexport interface StepProps {\n index?: number;\n children: ReactNode;\n state?: StepState;\n isLast?: boolean;\n shouldDisableNextLink?: boolean;\n}\n\nexport function Step({\n index = 0,\n children,\n state = 'default',\n isLast = false,\n shouldDisableNextLink = false,\n}: StepProps): ReactElement {\n return (\n <HStack space=\"kitt.2\" flexGrow={1}>\n <View marginTop=\"kitt.2\" paddingY=\"kitt.2\" backgroundColor=\"kitt.white\">\n <StepIcon state={state} index={index} />\n {!isLast ? (\n <View\n backgroundColor={\n shouldDisableNextLink ? 'kitt.palettes.lateOcean.black100' : 'kitt.palettes.lateOcean.moonPurple'\n }\n width={1}\n position=\"absolute\"\n top={46}\n left={15}\n zIndex={-1}\n height=\"100%\"\n />\n ) : null}\n </View>\n <View flexGrow={1} flexShrink={1}>\n <ActionCard variant=\"primary\">{children}</ActionCard>\n </View>\n </HStack>\n );\n}\n","import type { StepState } from '../Step';\n\nexport function getStepState(index: number, activeIndex: number): StepState {\n if (index === activeIndex) {\n return 'active';\n }\n if (index < activeIndex) {\n return 'done';\n }\n return 'default';\n}\n","import type { ViewProps } from '@ornikar/kitt-universal';\nimport { VStack } from 'native-base';\nimport type { ReactComponentElement, ReactElement } from 'react';\nimport { Children, createElement } from 'react';\nimport type { StepProps } from './Step';\nimport { ExternalStep, Step } from './Step';\nimport { getStepState } from './utils/getStepState';\n\nexport interface VerticalStepsProps extends ViewProps {\n children: ReactComponentElement<typeof ExternalStep> | ReactComponentElement<typeof ExternalStep>[];\n activeIndex: number;\n}\n\nexport function VerticalSteps({ children, activeIndex, ...props }: VerticalStepsProps): ReactElement {\n return (\n <VStack space=\"kitt.4\" width=\"100%\" {...props}>\n {Children.map(children, (child: ReactComponentElement<typeof ExternalStep>, index) => {\n if (__DEV__ && child.type !== ExternalStep) {\n throw new Error('VerticalSteps only accepts VerticalSteps.Step as children');\n }\n\n const isLast = index === Children.count(children) - 1;\n return createElement<StepProps>(\n Step,\n {\n ...child.props,\n index,\n isLast,\n state: getStepState(index, activeIndex),\n },\n child.props.children,\n );\n })}\n </VStack>\n );\n}\n\nVerticalSteps.Step = ExternalStep;\n"],"names":["View","NativeBaseView","ScrollView","NativeBaseScrollView","Pressable","NativeBasePressable","Image","NativeBaseImage","FlatList","NativeBaseFlatList","SectionList","NativeBaseSectionList","hex2rgba","hex","alpha","arguments","length","undefined","r","parseInt","slice","g","b","concat","lateOceanColorPalette","lateOcean","lateOceanLight1","lateOceanLight2","lateOceanLight3","lateOceanDark1","warmEmbrace","warmEmbraceLight1","black1000","black800","black555","black400","black200","black100","black50","black25","white","viride","englishVermillon","goldCrayola","aero","seaShell","transparent","moonPurple","moonPurpleLight1","colors","primary","primaryLight","accent","accentLight","success","correct","danger","info","warning","separator","hover","black","blackDisabled","blackLight","blackAnthracite","uiBackground","uiBackgroundLight","disabled","overlay","dark","light","actionCard","borderRadius","backgroundColor","borderColor","borderWidth","shadow","color","offsetX","offsetY","opacity","radius","translateY","hovered","focused","pressed","secondary","highlight","defaultAvatarSize","defaultAvatarIconSize","largeAvatarSize","largeAvatarIconSize","avatar","size","iconSize","large","spacing","bottomSheet","container","padding","handle","button","focus","minHeight","minWidth","maxWidth","scale","base","active","medium","contentPadding","xLarge","horizontal","vertical","transition","duration","timingFunction","pressedBackgroundColor","hoverBackgroundColor","focusBorderColor","ghost","hoverColor","activeColor","subtle","card","webAnimationContentDuration","webAnimationContentEasing","webAnimationOverlayDuration","webAnimationOverlayEasing","overlayHorizontalPadding","cardModal","maxWidthWithPadding","header","height","footer","overlayPadding","animation","easing","content","choices","row","column","item","small","selected","hoverWhenSelected","border","width","property","dialogModal","feedbackMessage","autocomplete","option","verticalPadding","highlighted","optionsContainer","checkbox","markColor","textSpacing","checked","datePicker","day","month","year","calcLineHeight","fontSize","lineHeightMultiplier","Math","round","createTypographyTypeConfig","baseAndSmallFontSize","mediumAndWideFontSize","baseAndSmall","lineHeight","mediumAndWide","typography","kittColors","types","headers","fontFamily","regular","bold","web","fontWeight","fontStyle","configs","header1","header2","header3","header4","header5","bodies","body","link","disabledColor","inputStatesStyle","pending","valid","invalid","webAnimationDuration","webAnimationTimingFunction","webAnimationProperty","input","selection","placeholder","icon","rightContainer","states","inputField","containerPaddingTop","containerPaddingBottom","feedbackPaddingTop","labelContainerPaddingBottom","labelFeedbackMarginLeft","inputTag","labelColor","radio","unchecked","innerSize","innerBackgroundColor","radioButtonGroup","textArea","timePicker","forms","fullscreenModal","sharedHorizontalPadding","iconButton","listItem","horizontalPadding","innerMargin","pageLoaderSize","pageLoaderStrokeWidth","webAnimationDelay","webAnimationCircleBackgroundFillDuration","webAnimationFilledCircleFillDuration","webAnimationFilledCircleRotationDuration","fillEasingFunction","pageLoader","strokeWidth","fill","delay","circleBackgroundFillDuration","filledCircleFillDuration","groupFilledCircleRotationDuration","filledCircleRotationDuration","picker","ios","_objectSpread","landscape","android","shadows","cards","low","highBase","highMedium","highLarge","navigation","left","right","panel","skeletonBackgroundColor","skeletonFlareColor","skeleton","flareColor","animationDuration","shape","bar","circle","square","tag","outline","warn","tooltip","floatingPadding","out","arrow","verticalSteps","textColor","done","breakpoints","values","wide","min","smallBreakpoint","mediumBreakpoint","largeBreakpoint","wideBreakpoint","max","theme","getSpacing","multiplier","palettes","KittThemeContext","createContext","kitt","kittTheme","useTheme","useContext","getStateKey","isHovered","isPressed","isFocused","getThemeName","variant","borderVariant","ActionCardContentWrapper","_ref","_ref$borderVariant","children","state","__DEV__","Error","sharedTransform","transform","themeName","_jsx","_ios","style","_android","_web","ActionCardDisabled","borderStyle","ActionCard","_ref$variant","testID","ActionCardPressable","forwardRef","_ref2","ref","_ref2$variant","_ref2$borderVariant","href","hrefAttrs","_ref2$accessibilityRo","accessibilityRole","isHoveredInternal","isPressedInternal","isFocusedInternal","onPress","_ref3","Stack","NativeBaseStack","VStack","NativeBaseVStack","HStack","NativeBaseHStack","Center","NativeBaseCenter","createResponsiveStyleFromProp","responsiveBooleanValue","valueIfTrue","valueIfFalse","keys","Object","responsiveValue","forEach","breakpointName","message","process","env","NODE_ENV","console","deprecatedMessage","symbol","deprecation","replaceBy","replaceMessage","deprecatedInComponent","component","useBreakpointValue","useBreakpointValueNativeBaseBadlyTyped","getCurrentBackgroundColorForNativeBaseTheme","type","isDisabled","baseKey","getCurrentScale","hoverScaleValue","pressedScaleValue","AnimatedContainer","isStretch","_theme$kitt$button","_theme$kitt$button$tr","responsiveHoverScaleValue","currentScale","currentBackgroundColor","transitionProperty","transitionDuration","transitionTimingFunction","backfaceVisibility","alignSelf","KittBreakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","KittBreakpointsMax","KittBreakpointNameEnum","typographyColors","getNBThemeColorFromColorProps","colorName","isColorTypographyColor","includes","getTypographyColorValue","isTypeHeader","startsWith","isTypographyHeader","isHeaderTypographyInContext","IsHeaderTypographyContext","TypographyColorContext","useTypographyColor","TypographyDefaultColorContext","useTypographyDefaultColor","getTypographyTypeConfigKeyFromTypeName","createNativeBaseFontSize","typeWithMediumForced","fontSizeForNativeBase","typeName","value","Typography","_type$base","legacyBase","legacySmall","legacyMedium","legacyLarge","legacyWide","_ref$type","otherProps","_objectWithoutProperties","_excluded","sx","useSx","defaultColor","hasTypographyAncestor","baseOrDefaultToBody","isHeader","nonNullableVariant","currentColor","colorStyles","textDecorationColor","entries","_slicedToArray","key","text","NBText","Provider","TypographyText","props","TypographyParagraph","createHeading","level","defaultBase","TypographyHeading","accessibilityLevel","displayName","SetDefaultColor","Text","Paragraph","Header1","Header2","Header3","Header4","Header5","Header6","h1","h2","h3","h4","h5","Icon","_ref$size","_ref$align","align","clonedIcon","cloneElement","TypographyIconSpecifiedColor","colorStyle","TypographyIconInheritColor","TypographyIcon","_excluded2","getTextColorByType","isButtonInteractedWith","ButtonIcon","iconPosition","marginRight","marginLeft","ButtonContentChildren","buttonIconSharedProps","sharedNativeStyle","flexShrink","_jsxs","alignItems","justifyContent","flexDirection","textAlign","ButtonContent","flexGrow","flexBasis","getCurrentPaddingConfig","ButtonPadding","currentPaddingKey","position","paddingX","paddingY","DisabledBorder","top","bottom","FocusBorder","_useTheme","buttonTheme","useNativeAnimation","onPressIn","onPressOut","animatedStyles","getButtonSize","allowedGhostTypes","Button","stretch","sizeProp","_ref$iconPosition","_ref$accessibilityRol","_useNativeAnimation","deprecatedProp","spinningIcon","SpinningIcon","className","LoaderIcon","ArcIcon","ActionsItem","as","_ref$stretch","_useState","useState","_useState2","isLoading","setIsLoading","mountedRef","useRef","useEffect","current","handlePress","e","callPressAndUpdateLoadingState","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","t0","stop","apply","ActionsButton","_extends","_objectDestructuringEmpty","getCurrentLayout","layout","getCurrentDirection","getCurrentAlignSelf","Actions","reversed","currentAlignItems","currentDirection","currentAlignSelf","direction","space","Item","getCurrentRadius","sizeVariant","getCurrentSize","getIconSize","getInitials","firstname","lastname","toUpperCase","AvatarContent","src","alt","isLight","source","uri","accessibilityLabel","UserIcon","Avatar","currentSize","currentBorderRadius","overflow","BottomSheetComponent","BottomSheet","useBottomSheet","useStaticBottomSheet","Content","bottomSheetRef","BottomSheetMemoized","useMemo","overflowHidden","useBlockBodyScroll","isScrollBlocked","document","classList","add","remove","ModalBehaviourPortal","visible","Boolean","Portal","_Fragment","OnCloseContext","OnCloseProvider","onClose","useOnCloseModalBehaviour","CloseButton","onCloseContextCallback","handleClose","ModalBehaviour","Overlay","CardModalRotationContainer","contentAnimationEnter","contentAnimatioEnterActive","contentAnimatioExit","contentAnimatioExitActive","contentAnimationClassNames","appear","appearActive","enter","enterActive","exit","exitActive","opacityEnter","opacityEnterActive","opacityExit","opacityExitActive","opacityClassNames","CardModalAnimation","_ref$appear","_ref$unmountOnExit","unmountOnExit","_ref$isAnimationEnabl","isAnimationEnabled","onEnter","onEntered","onExit","onExited","sharedProps","in","CSSTransition","timeout","classNames","margin","CardModalScrollContainer","CardModalBehaviour","isModalBehaviourVisible","setIsModalBehaviourVisible","bounces","contentContainerStyle","handleExitAnimationDone","CardModalBody","_ref$paddingX","_ref$paddingY","CardModalFooter","_ref$padding","_ref$hasSeparator","hasSeparator","marginTop","borderTopWidth","CardModalHeader","title","_ref$paddingBottom","paddingBottom","defaultContainerPadding","borderBottomWidth","paddingRight","paddingLeft","CardModal","_ref$backgroundColor","_ref$maxWidth","withoutShadow","maxHeight","Body","Header","Footer","getBackgroundColor","isSelected","getBorderRadius","Number","MAX_SAFE_INTEGER","AnimatedChoiceItemView","backgroundStyles","getCurrentTextColor","ChoiceItem","onChange","onBlur","onFocus","handleChange","accessibilityState","ChoiceItemContainer","isLast","currentItemMarginValue","marginBottom","ChoicesContainer","Choices","id","_ref2$direction","currentValue","setCurrentValue","isForm","childrenArray","Children","toArray","newValue","nativeID","map","child","index","element","createChoicesComponent","ButtonChoices","ChoicesElements","DialogModalAnimation","DialogModalBehaviour","DialogModal","illustration","actions","paddingTop","flex","DialogModalButton","_ref2$stretch","Emoji","emoji","_useMemo","parse","assetType","_useMemo2","emojiData","url","ExternalAppLink","Component","appScheme","appValue","onOpenAppError","rest","handleOnPress","canOpen","Linking","canOpenURL","sent","defaultPrevented","openURL","error","Sms","phoneNumber","Tel","_ref4","_excluded3","Mail","_ref5","emailAddress","_excluded4","defaultOpenLinkBehavior","ExternalLink","_ref$openLinkBehavior","openLinkBehavior","target","rel","getIconColor","InputIcon","InputPressable","inputTextContainer","InputTextContainer","InputText","internalForceState","_ref$disabled","_ref$autoCorrect","autoCorrect","_ref$textContentType","textContentType","_ref$autoComplete","autoComplete","_ref$keyboardType","keyboardType","multiline","onSubmitEditing","Input","py","isHighlighted","AutocompleteItem","AutocompleteItemsListContainer","_ref$zIndex","zIndex","elevation","AutocompleteOption","isReactElement","_typeof","Autocomplete","name","isInitialOpen","initialValue","containerProps","filterItemBasedOnCurrentInputValue","checkSelectedItem","itemToString","onInputChange","onSelectItem","onOuterPress","errorElement","emptyResultsElement","_ref$inputTestID","inputTestID","_ref$listContainerTes","listContainerTestID","items","filter","Downshift","defaultIsOpen","initialSelectedItem","initialInputValue","handleItemToString","stateReducer","changes","stateChangeTypes","changeInput","selectedItem","stateAndHelpers","onSelect","onOuterClick","onInputValueChange","getRootProps","getInputProps","getMenuProps","getItemProps","getToggleButtonProps","isOpen","inputValue","highlightedIndex","openMenu","shouldSuppressRefError","rootProps","suppressRefError","menuProps","_getToggleButtonProps","onClickToggle","onClick","toggleProps","_getInputProps","onKeyDown","onSearchInputFocus","onSearchInputBlur","onSearchInputChange","inputProps","hasCurrentSearch","currentItems","isCurrentlyOpen","canDisplayCollapseButton","hitSlop","handleTogglePress","ArrowUpIcon","ArrowDownIcon","onKeyPress","_getItemProps","role","ariaSelected","itemProps","Option","UnsafeInternalItem","isChecked","getBorderColor","Checkbox","_ref$hitSlop","display","CheckboxMark","getReturnKeyTypeForNumericInput","returnKeyType","prefixWithZero","maxLength","padStart","dayFormatter","monthFormatter","yearFormatter","getDayInInterval","getMonthInInterval","minDate","maxDate","minValue","getMonth","maxValue","getYearInInterval","getFullYear","getValueToDisplayedString","toString","keyboardDatePickerReducer","action","nextDay","currentDay","displayedDay","nextMonth","currentMonth","displayedMonth","nextYear","currentYear","displayedYear","nextCurrentDay","nextCurrentMonth","nextCurrentYear","isNumber","isNaN","onDatePartChange","_ref$validYearMinLeng","validYearMinLength","arrayParts","isEverythingUndefined","every","v","isEverythingDefined","nextValue","Date","isValidYear","setDate","setMonth","setFullYear","setMinutes","setHours","setSeconds","setMilliseconds","isMinDateAfterNextValue","getTime","isMaxDateBeforeNextValue","stringToNumber","getCurrentInternalForcedState","InputPart","PartContainer","KeyboardDatePicker","monthRef","yearRef","defaultValue","defaultDay","getDate","defaultMonth","defaultYear","_useReducer","useReducer","_useReducer2","dispatch","sharedInputPartProps","handleDatePartChange","handleAutoFocusNextField","currentFieldValue","nextFieldRef","nativeEvent","_monthRef$current","_yearRef$current","DatePicker","GoogleMapsApiKeyContext","GoogleMapsApiKeyProvider","apiKey","useGoogleMapApiKey","context","useGoogleMapsApi","autoCompleteServiceInstanceRef","placesServiceInstanceRef","loader","Loader","libraries","loadMapsApi","_loadMapsApi","placeApi","_callee$","importLibrary","AutocompleteService","PlacesService","createElement","getPlacePredictions","promise","Promise","resolve","_autoCompleteServiceI","predictions","status","google","maps","places","PlacesServiceStatus","OK","results","placesService","getDetails","placeId","_placesServiceInstanc","place","result","googleMapsAutocompleteReducer","hasSearchError","isLoadingSearch","payload","hasSelectResultError","isLoadingResultDetails","currentSelectedValue","findComponentByType","components","find","matchStreetNumberWithOriginalAddress","streetNumber","address","exec","_ref2$","number","_ref2$2","extension","formatAddressFromGoogle","placeResult","originalAddress","_placeResult$geometry","_placeResult$geometry2","_findComponentByType","_findComponentByType2","_findComponentByType3","_findComponentByType4","_findComponentByType5","_findComponentByType6","_findComponentByType7","_findComponentByType8","_placeResult$address_","address_components","addressComponents","lat","geometry","location","lng","locality","long_name","subLocality","zipcode","streetName","country","administrativeAreaLevel1","administrativeAreaLevel2","GoogleMapsAutocompleteContext","shouldDisplayEmptyStateWhenNoResults","GoogleMapsAutocompleteProvider","_ref$minCharsToSearch","minCharsToSearch","_ref$debounceTimeout","debounceTimeout","mapsApi","searchResultsCache","resultDetailsCache","handleInputChange","useDebouncedCallback","useCallback","predictionsPromise","_yield$predictionsPro","handleSelectItem","_callee2","placePromise","formattedAddress","_context2","place_id","then","description","api","useGoogleMapsAutocomplete","InputAddressOption","MapPinIcon","structured_formatting","main_text","secondary_text","defaultItemToString","formatInitialValueToAutocompletePrediction","reference","terms","matched_substrings","join","main_text_matched_substrings","InputAddress","_ref$itemToString","_useGoogleMapsAutocom","formattedInitialValue","InputEmail","autoCapitalize","getColorFromState","InputFeedback","InputField","label","labelFeedback","feedback","InputPassword","isPasswordDefaultVisible","isVisible","setIsVisible","secureTextEntry","EyeOffIcon","EyeIcon","isPhoneNumberValid","isValidNumber","phoneNumberLength","InputPhone","_ref$phoneNumberLengt","currentReturnKeyType","event","parseNumber","phone","finalPhoneNumber","eventWithoutCountryCode","countryCode","getCountryCallingCode","originalNativeEventText","getTypographyColor","InputTag","typographyColor","Label","htmlFor","InnerCircle","OuterCircle","Radio","focusable","getCurrentBackgroundColor","getCurrentBorderColor","isFirst","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderLeftWidth","HoverBorder","shouldDisplayBorder","RadioButton","RadioButtonGroupItem","RadioButtonGroup","flexWrap","clone","TextArea","textAlignVertical","FullscreenModalBody","shouldHandleBottomNotch","shouldHandleTopNotch","_useSafeAreaInsets","useSafeAreaInsets","FullscreenModalFooter","_ref$shouldHandleBott","borderTopColor","slideInFromBottomEnter","slideInFromBottomEnterActive","slideInFromBottomExit","slideInFromBottomExitActive","slideInClassNames","FullscreenModalAnimation","FullscreenModalBehaviour","FullscreenModalContainer","FullscreenModalHeader","isTransparent","_ref$shouldHandleTopN","hasRight","hasLeft","hasContent","borderBottomColor","FullscreenModal","Highlight","Background","AnimatedBackground","_theme$kitt$iconButto","scaleHover","scalePressed","AnimatedScale","currentHoverScale","currentPressedScale","opacityStyles","scaleStyles","IconButton","_ref$color","translate3d","isCurrentHovered","isCurrentPressed","KittMapConfigProviderContext","KittMapConfigProvider","mapId","apiToken","providerValue","useKittMapConfig","ListItemContent","ListItemSideContainer","_ref$side","side","ListItemSideContent","_ref2$align","ListItem","withPadding","borders","Wrapper","Fragment","wrapperProps","SideContent","SideContainer","MapMarkerSimple","_ref$width","_ref$height","styles","DefaultMarkerSvg","MapMarkerLarge","_ref2$width","_ref2$height","_ref2$color","LargeMarkerSvg","MapMarkerPosition","_ref3$width","_ref3$height","PositionMarkerSvg","IconContent","AlertCircleIcon","CheckIcon","AlertTriangleIcon","InfoIcon","getColorByType","getIconButtonColor","messageType","BaseMessage","hasNoRadius","centeredText","insets","onDismiss","XIcon","Message","createKittSpaces","sizes","positive","negative","overridenNativeBaseSizeandSpaceScale","fromEntries","createKittNativeBaseCustomTheme","appTheme","spaces","appBreakpoints","extendedTheme","extendTheme","innerCircle","app","radii","lg","md","sm","xl","xs","borderWidths","defaultSize","fontSizes","lineHeights","fontWeights","fonts","shadowColor","shadowOffset","shadowOpacity","shadowRadius","baseStyle","px","_disabled","_light","placeholderTextColor","bg","_hover","_focus","_stack","outlineWidth","boxShadow","selectionColor","_invalid","variants","underlined","rounded","filled","unstyled","_dark","KittNativeBaseProvider","isSSR","nativeBaseCustomTheme","kittInternalTheme","NativeBaseProvider","SimpleContainer","NavigationModalBehaviour","_ref2$appear","AnimationComponent","CurrentContainerComponent","_useState3","_useState4","shouldAppear","setShouldAppear","handleEnter","handleExit","NavigationModal","Notification","onDelete","pageLoaderContainer","PageLoader","_theme$kitt$pageLoade","center","circlePerimeter","PI","cx","cy","strokeDasharray","strokeDashoffset","strokeLinecap","stroke","PickerItem","PickerOption","webUseSelectReducer","actionAndChanges","options","useSelect","ItemClick","keepOpenOnChange","Picker","renderTrigger","_ref$keepOpenOnChange","initialValueIndex","indexOf","_useSelect","initialIsOpen","onIsOpenChange","onStateChange","onPressTrigger","restToggleProps","_useFloating","useFloating","placement","strategy","whileElementsMounted","autoUpdate","middleware","offset","x","y","floating","tooltipY","tooltipX","_getMenuProps","menuRef","myRef","currentRef","visibility","SegmentedProgressBar","_ref$currentStep","currentStep","stepsCount","_ref$colorVariant","colorVariant","withCurrentInProgress","fillColor","steps","_toConsumableArray","Array","from","stepNumber","isSegmentCurrentInProgress","Stripes","SkeletonContent","Skeleton","_ref$isLoading","setWidth","onLayout","Bar","Circle","Square","getStaticMapImageUrl","mapWidth","mapHeight","is2x","centerPart","zoom","sizePart","urlParts","mapImageUrl","URL","searchParams","append","useGetStaticMapImageUrl","forceMapId","forceApiToken","_useKittMapConfig","currentUrl","setCurrentUrl","currentMapIdRef","currentApiTokenRef","newUrl","StaticMapError","onReload","RotateCCWIcon","StaticMapImage","onLoadEnd","onError","StaticMapLoader","getMarkerPosition","translateX","StaticMapMarker","getRangedWidthValue","nextWidth","rangedMapWidth","getShouldDisplay2x","window","devicePixelRatio","mapBoxMaxPictureWidth","getPictureWidth","StaticMap","marker","onLoaded","currentWidth","setCurrentWidth","_useState5","_useState6","hasError","setHasError","_useState7","_useState8","currentMapKey","setCurrentMapKey","shouldDisplay2xImage","mapUrl","handleParentLayout","KITT_MAP_CHROMATIC_IGNORE","handleImageLoadEnd","handleError","handleReload","Marker","Flex","_ref$wrap","storyPadding","getBackgroundColorFromBlockColor","getTypographyColorFromBlockColor","StoryBlockBackgroundContext","StoryBlockColorContext","useStoryBlockColor","storyBlockColor","StoryBlock","background","marginX","StoryTitle","numberOfLines","StoryTitleLevel2","StoryTitleLevel3","StoryTitleLevel4","Level2","Level3","Level4","Story","StorySection","internalIsDemoSection","SubSection","BlockSection","DemoSection","Demo","DeprecatedSection","StoryContainer","platform","StoryDecorator","storyFn","StoryGridRow","_ref$breakpoint","breakpoint","_defineProperty","StoryGridCol","_ref10","titleColor","_ref10$platform","StoryGrid","Row","Col","getLabelColor","Tag","keepHoursInterval","hours","getDisplayedHours","keepMinutesInterval","minutes","getDisplayedMinutes","minutesWithinInterval","getInitialInputValueFromDateValue","date","getHours","getMinutes","TimePicker","_ref2$placeholder","validateButtonLabel","isDefaultVisible","modalTestID","pickerTestID","setInputValue","currentInputValue","_currentInputValue$sp","split","_currentInputValue$sp2","nextDate","sanitizedValue","replace","_sanitizedValue$split","_sanitizedValue$split2","currentHours","currentMinutes","handleBlur","Arrow","transformStyle","rotate","TooltipArrowIcon","TooltipContent","getShouldRenderArrow","isTooltipFullWidth","isBase","useShouldRenderArrow","getHasArrowEnoughSpace","arrowCenterOffset","Tooltip","_middlewareData$arrow","_middlewareData$arrow2","_middlewareData$arrow3","_middlewareData$arrow4","defaultVisible","_ref$position","fullWidth","onToggle","onUpdate","isCursorOnTooltip","setIsCursorOnTooltip","arrowRef","currentFloatingPadding","autoPlacement","allowedPlacements","shift","crossAxis","update","refs","middlewareData","centerOffset","shouldRenderArrow","hasArrowEnoughSpace","sharedArrowProps","useOnClickOutside","handlePressOutside","handleDisplayTooltip","handleMouseEnter","handleMouseLeave","themePart","transformOrigin","onHoverIn","handleHideTooltip","accessibilityHidden","pointerEvents","onTouchStart","onTouchEnd","onMouseEnter","onMouseLeave","getTypographyTypeConfig","calcSizesFromType","TypographyEmoji","_ref3$type","displayUnderline","displayUnderlineWhenHovered","TypographyLinkWebWrapper","hasNoUnderline","TypographyLink","noUnderline","underline","dataSet","cursor","useKittTheme","KittThemeProvider","KittThemeDecorator","makeDecorator","parameterName","wrapper","_parameters$isSSR","_ref2$options","_ref2$parameters","parameters","StyleWebWrapper","matchWindowSize","hasWidthMatched","hasHeightMatched","useMatchWindowSize","_useWindowDimensions","useWindowDimensions","MatchWindowSize","matchWindowSizeOptions","match","SwitchBreakpoints","useCurrentBreakpointName","backgroundColors","IconStatus","StepIcon","_ref2$state","ExternalStep","Step","_ref$index","_ref$state","_ref$isLast","_ref$shouldDisableNex","shouldDisableNextLink","getStepState","activeIndex","VerticalSteps","count"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-browser-all.es.web.js","sources":["../src/native-base/primitives.ts","../src/utils/hexToRgba.ts","../src/themes/palettes/lateOceanColorPalette.ts","../src/themes/late-ocean/colors.ts","../src/themes/late-ocean/actionCard.ts","../src/themes/late-ocean/avatar.ts","../src/themes/late-ocean/spacing.ts","../src/themes/late-ocean/bottomSheet.ts","../src/themes/late-ocean/button.ts","../src/themes/late-ocean/card.ts","../src/themes/late-ocean/cardModal.ts","../src/themes/late-ocean/choices.ts","../src/themes/late-ocean/dialogModal.ts","../src/themes/late-ocean/feedback.ts","../src/themes/late-ocean/autocomplete.ts","../src/themes/late-ocean/checkbox.ts","../src/themes/late-ocean/datePicker.ts","../src/themes/late-ocean/typography.ts","../src/themes/late-ocean/input.ts","../src/themes/late-ocean/inputField.ts","../src/themes/late-ocean/inputTag.ts","../src/themes/late-ocean/radio.ts","../src/themes/late-ocean/radioButtonGroup.ts","../src/themes/late-ocean/textArea.ts","../src/themes/late-ocean/timePicker.ts","../src/themes/late-ocean/forms.ts","../src/themes/late-ocean/fullscreenModal.ts","../src/themes/late-ocean/highlight.ts","../src/themes/late-ocean/iconButton.ts","../src/themes/late-ocean/listItem.ts","../src/themes/late-ocean/pageLoader.ts","../src/themes/late-ocean/picker.ts","../src/themes/late-ocean/shadows.ts","../src/themes/late-ocean/skeleton.ts","../src/themes/late-ocean/tag.ts","../src/themes/late-ocean/tooltip.ts","../src/themes/late-ocean/verticalSteps.ts","../src/themes/default.ts","../src/KittThemeContext.tsx","../src/ActionCard/utils/getStateKey.ts","../src/ActionCard/utils/getThemeName.ts","../src/ActionCard/ActionCardContentWrapper.tsx","../src/ActionCard/ActionCardDisabled.tsx","../src/ActionCard/ActionCard.tsx","../src/native-base/layout.ts","../src/utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp.ts","../src/utils/warnings.ts","../src/native-base/utils.ts","../src/Button/utils/getCurrentBackgroundColorForNativeBaseTheme.ts","../src/Button/utils/getCurrentScale.ts","../src/Button/AnimatedContainer.web.tsx","../src/KittBreakpoints.ts","../src/typography/typographyColors.ts","../src/typography/utils/getNBThemeColorFromColorProps.ts","../src/typography/utils/getTypographyColorValue.ts","../src/typography/utils/isTypeHeader.ts","../src/typography/utils/isTypographyHeader.ts","../src/typography/Typography.tsx","../src/Icon/Icon.tsx","../src/typography/TypographyIcon.tsx","../src/Button/utils/getTextColorByType.ts","../src/Button/ButtonContent.tsx","../src/Button/ButtonPadding.tsx","../src/Button/DisabledBorder.tsx","../src/Button/FocusBorder.tsx","../src/Button/hooks/useNativeAnimation.web.ts","../src/Button/utils/getButtonSize.ts","../src/Button/Button.tsx","../src/Icon/SpinningIcon.web.tsx","../src/LoaderIcon/LoaderIcon.tsx","../src/Actions/ActionsItem.tsx","../src/Actions/ActionsButton.tsx","../src/Actions/Actions.tsx","../src/Avatar/utils/getCurrentRadius.ts","../src/Avatar/utils/getCurrentSize.ts","../src/Avatar/utils/getIconSize.ts","../src/Avatar/utils/getInitials.ts","../src/Avatar/Avatar.tsx","../src/BottomSheet/BottomSheet.web.tsx","../src/BottomSheet/useBottomSheet.ts","../src/BottomSheet/useStaticBottomSheet.tsx","../src/ModalBehaviour/ModalBehaviourPortal.web.tsx","../src/ModalBehaviour/OnCloseContext.tsx","../src/ModalBehaviour/ModalBehaviour.tsx","../src/Overlay/Overlay.tsx","../src/CardModal/CardModalAnimation/CardModalRotationContainer.tsx","../src/CardModal/CardModalAnimation/CardModalAnimation.web.tsx","../src/CardModal/CardModalBehaviour.tsx","../src/CardModal/CardModalBody.tsx","../src/CardModal/CardModalFooter.tsx","../src/CardModal/CardModalHeader.tsx","../src/CardModal/CardModal.tsx","../src/Choices/utils/getBackgroundColor.ts","../src/Choices/utils/getBorderRadius.ts","../src/Choices/AnimatedChoiceItemView.web.tsx","../src/Choices/hooks/useNativeAnimation.web.tsx","../src/Choices/utils/getCurrentTextColor.ts","../src/Choices/ChoiceItem.tsx","../src/Choices/ChoiceItemContainer.tsx","../src/Choices/Choices.tsx","../src/DialogModal/DialogModalAnimation/DialogModalAnimation.web.tsx","../src/DialogModal/DialogModalBehaviour.tsx","../src/DialogModal/DialogModal.tsx","../src/Emoji/Emoji.tsx","../src/ExternalAppLink/ExternalAppLink.tsx","../src/ExternalLink/ExternalLinkOpenLinkBehavior.ts","../src/ExternalLink/ExternalLink.web.tsx","../src/forms/InputIcon/InputIcon.tsx","../src/forms/InputPressable/InputPressable.tsx","../src/forms/InputText/InputTextContainer.web.tsx","../src/forms/InputText/InputText.tsx","../src/forms/Autocomplete/AutocompleteItem.tsx","../src/forms/Autocomplete/AutocompleteItemsListContainer.tsx","../src/forms/Autocomplete/AutocompleteOption.tsx","../src/forms/Autocomplete/Autocomplete.tsx","../src/forms/Checkbox/utils/getBackgroundColor.ts","../src/forms/Checkbox/utils/getBorderColor.ts","../src/forms/Checkbox/Checkbox.tsx","../src/utils/getReturnKeyTypeForNumericInput/getReturnKeyTypeForNumericInput.ts","../src/forms/DatePicker/utils/dateFormatter.ts","../src/forms/DatePicker/utils/datePartInInterval.ts","../src/forms/DatePicker/reducers/keyboardDatePickerReducer.ts","../src/forms/DatePicker/utils/isNumber.ts","../src/forms/DatePicker/utils/onDatePartChange.ts","../src/forms/DatePicker/utils/stringToNumber.ts","../src/forms/DatePicker/components/InputPart.tsx","../src/forms/DatePicker/components/PartContainer.tsx","../src/forms/DatePicker/components/KeyboardDatePicker.tsx","../src/forms/DatePicker/DatePicker.web.tsx","../src/GoogleMapsApiKeyProvider/GoogleMapsApiKeyProvider.tsx","../src/GoogleMapsApiKeyProvider/hooks/useGoogleMapApiKey.ts","../src/GoogleMapsAutocompleteProvider/hooks/useGoogleMapsApi.web.ts","../src/GoogleMapsAutocompleteProvider/reducer/googleMapsAutocompleteReducer.ts","../src/GoogleMapsAutocompleteProvider/utils/formatAddressFromGoogle.ts","../src/GoogleMapsAutocompleteProvider/GoogleMapsAutocompleteProvider.tsx","../src/GoogleMapsAutocompleteProvider/hooks/useGoogleMapsAutocomplete.ts","../src/forms/InputAddress/InputAddressOption.tsx","../src/forms/InputAddress/utils/defaultItemToString.ts","../src/forms/InputAddress/utils/formatInitialValueToAutocompletePrediction.ts","../src/forms/InputAddress/InputAddress.tsx","../src/forms/InputEmail/InputEmail.tsx","../src/forms/InputFeedback/InputFeedback.tsx","../src/forms/InputField/InputField.tsx","../src/forms/InputPassword/InputPassword.tsx","../src/forms/InputPhone/InputPhone.tsx","../src/forms/InputTag/InputTag.tsx","../src/forms/Label/Label.tsx","../src/forms/Radio/InnerCircle.tsx","../src/forms/Radio/utils/getBackgroundColor.ts","../src/forms/Radio/utils/getBorderColor.ts","../src/forms/Radio/OuterCircle.tsx","../src/forms/Radio/Radio.tsx","../src/forms/RadioButtonGroup/utils/getCurrentBackgroundColor.ts","../src/forms/RadioButtonGroup/utils/getCurrentBorderColor.ts","../src/forms/RadioButtonGroup/AnimatedContainer/AnimatedContainer.web.tsx","../src/forms/RadioButtonGroup/HoverBorder.tsx","../src/forms/RadioButtonGroup/hooks/useNativeAnimation.web.ts","../src/forms/RadioButtonGroup/utils/getCurrentTextColor.ts","../src/forms/RadioButtonGroup/RadioButton.tsx","../src/forms/RadioButtonGroup/RadioButtonGroup.tsx","../src/forms/TextArea/TextArea.tsx","../src/FullscreenModal/Body.tsx","../src/FullscreenModal/Footer.tsx","../src/FullscreenModal/FullscreenModalAnimation.web.tsx","../src/FullscreenModal/FullscreenModalBehaviour.tsx","../src/FullscreenModal/FullscreenModalContainer.tsx","../src/FullscreenModal/Header.tsx","../src/FullscreenModal/FullscreenModal.tsx","../src/Highlight/Highlight.tsx","../src/IconButton/Background.tsx","../src/IconButton/AnimatedBackground.web.tsx","../src/IconButton/AnimatedScale.web.tsx","../src/IconButton/hooks/useNativeAnimation.web.ts","../src/IconButton/IconButton.tsx","../src/KittMapConfigProvider/KittMapConfigProvider.tsx","../src/KittMapConfigProvider/hooks/useKittMapConfig.ts","../src/ListItem/ListItemContent.tsx","../src/ListItem/ListItemSideContent.tsx","../src/ListItem/ListItem.tsx","../src/MapMarker/assets/marker-large.inline.svg","../src/MapMarker/assets/marker.inline.svg","../src/MapMarker/assets/position-marker.inline.svg","../src/MapMarker/MapMarker.tsx","../src/BaseMessage/IconContent.tsx","../src/BaseMessage/helper.ts","../src/BaseMessage/BaseMessage.tsx","../src/Message/Message.tsx","../src/native-base/KittNativeBaseProvider.tsx","../src/NavigationModal/NavigationModalBehaviour.tsx","../src/NavigationModal/NavigationModal.tsx","../src/Notification/Notification.tsx","../src/PageLoader/PageLoader.web.tsx","../src/Picker/PickerItem.web.tsx","../src/Picker/PickerOption.tsx","../src/Picker/reducer/webUseSelectReducer.ts","../src/Picker/Picker.web.tsx","../src/SegmentedProgressBar/assets/stripes.inline.svg","../src/SegmentedProgressBar/SegmentedProgressBar.tsx","../src/Skeleton/SkeletonContent.web.tsx","../src/Skeleton/Skeleton.tsx","../src/StaticMap/utils/getStaticMapImageUrl.ts","../src/StaticMap/hooks/useGetStaticMapImageUrl.ts","../src/StaticMap/StaticMapError.tsx","../src/StaticMap/StaticMapImage.tsx","../src/StaticMap/StaticMapLoader.tsx","../src/StaticMap/StaticMapMarker.tsx","../src/StaticMap/utils/getRangedWidthValue.ts","../src/StaticMap/utils/getShouldDisplay2x.web.ts","../src/StaticMap/StaticMap.tsx","../src/story-components/Flex.tsx","../src/story-components/theme.ts","../src/story-components/StoryBlock.tsx","../src/story-components/StoryTitle.tsx","../src/story-components/Story.tsx","../src/story-components/StorySection.tsx","../src/story-components/StoryContainer.web.tsx","../src/story-components/StoryDecorator.tsx","../src/story-components/StoryGrid.tsx","../src/Tag/Tag.tsx","../src/TimePicker/TimePicker.web.tsx","../src/Tooltip/Arrow.tsx","../src/Tooltip/TooltipContent.tsx","../src/Tooltip/hooks/useShouldRenderArrow.ts","../src/Tooltip/utils/getHasArrowEnoughSpace.ts","../src/Tooltip/Tooltip.web.tsx","../src/typography/TypographyEmoji.tsx","../src/typography/TypographyLinkWebWrapper.web.tsx","../src/typography/TypographyLink.tsx","../src/useKittTheme.tsx","../src/utils/storybook/KittThemeDecorator.tsx","../src/utils/StyleWebWrapper.tsx","../src/utils/windowSize/useMatchWindowSize.ts","../src/utils/windowSize/MatchWindowSize.tsx","../src/utils/windowSize/useCurrentBreakpointName.ts","../src/VerticalSteps/StepIcon.tsx","../src/VerticalSteps/Step.tsx","../src/VerticalSteps/utils/getStepState.ts","../src/VerticalSteps/VerticalSteps.tsx"],"sourcesContent":["import type { IImageProps, IPressableProps, IScrollViewProps } from 'native-base';\nimport {\n FlatList as NativeBaseFlatList,\n Image as NativeBaseImage,\n Pressable as NativeBasePressable,\n ScrollView as NativeBaseScrollView,\n SectionList as NativeBaseSectionList,\n View as NativeBaseView,\n} from 'native-base';\nimport type {\n IFlatListProps,\n InterfaceFlatListProps,\n} from 'native-base/lib/typescript/components/basic/FlatList/types';\nimport type { InterfaceScrollViewProps } from 'native-base/lib/typescript/components/basic/ScrollView/types';\nimport type {\n ISectionListProps,\n InterfaceSectionListProps,\n} from 'native-base/lib/typescript/components/basic/SectionList/types';\nimport type { IViewProps, InterfaceViewProps } from 'native-base/lib/typescript/components/basic/View/types';\nimport type { InterfacePressableProps } from 'native-base/lib/typescript/components/primitives/Pressable/types';\nimport type { ForwardedRef, MutableRefObject } from 'react';\nimport type {\n FlatList as NativeFlatList,\n FlatListProps as NativeFlatListProps,\n PressableProps as NativePressableProps,\n ScrollViewProps as NativeScrollViewProps,\n SectionList as NativeSectionList,\n SectionListProps as NativeSectionListProps,\n ViewProps as NativeViewProps,\n} from 'react-native';\nimport type {\n ForwardRefComponent,\n NativeBaseAcceptedBorderProps,\n NativeBaseAcceptedBorderRadiusProps,\n NativeBaseAcceptedColorsProps,\n NativeBaseAcceptedFlexboxProps,\n NativeBaseAcceptedLayoutProps,\n NativeBaseAcceptedPositionProps,\n NativeBaseAcceptedShadowProps,\n NativeBaseAcceptedSpaceProps,\n} from './acceptable-native-base-props';\n\ntype NativeBaseAcceptedViewProps = Extract<keyof InterfaceViewProps, 'children' | keyof NativeViewProps>;\n\nexport interface ViewProps\n extends Pick<\n IViewProps,\n | NativeBaseAcceptedViewProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const View = NativeBaseView as ForwardRefComponent<ViewProps>;\n\ntype NativeBaseAcceptedScrollViewProps = Extract<\n keyof InterfaceScrollViewProps,\n 'children' | '_contentContainerStyle' | keyof NativeScrollViewProps\n>;\nexport interface ScrollViewProps\n extends Pick<\n IScrollViewProps,\n | NativeBaseAcceptedScrollViewProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const ScrollView = NativeBaseScrollView as ForwardRefComponent<ScrollViewProps>;\n\ntype NativeBaseAcceptedPressableProps = Extract<\n keyof InterfacePressableProps,\n | 'children'\n | 'onHoverIn'\n | 'onHoverOut'\n | 'onFocus'\n | 'onBlur'\n | '_hover'\n | '_pressed'\n | '_focus'\n | '_disabled'\n | 'isDisabled'\n | 'isHovered'\n | 'isPressed'\n | 'isFocused'\n | 'isFocusVisible'\n | '_focusVisible'\n | keyof NativePressableProps\n>;\nexport interface PressableProps\n extends Pick<\n IPressableProps,\n | NativeBaseAcceptedPressableProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const Pressable = NativeBasePressable as ForwardRefComponent<PressableProps>;\n\nexport const Image = NativeBaseImage as ForwardRefComponent<IImageProps>;\n\ntype NativeBaseAcceptedFlatListProps<ItemT> = Extract<\n keyof InterfaceFlatListProps<ItemT>,\n 'ref' | '_contentContainerStyle' | keyof NativeFlatListProps<ItemT>\n>;\nexport interface FlatListProps<ItemT>\n extends Pick<\n IFlatListProps<ItemT>,\n | NativeBaseAcceptedFlatListProps<ItemT>\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\n// See: https://fettblog.eu/typescript-react-generic-forward-refs/\nexport const FlatList = NativeBaseFlatList as <ItemT>(\n props: FlatListProps<ItemT> & { ref?: MutableRefObject<NativeFlatList<ItemT> | undefined> },\n) => ReturnType<typeof NativeBaseFlatList>;\n\ntype NativeBaseAcceptedSectionListProps<ItemT, SectionT> = Extract<\n keyof InterfaceSectionListProps<ItemT, SectionT>,\n 'ref' | keyof NativeSectionListProps<ItemT, SectionT>\n>;\nexport interface SectionListProps<ItemT, SectionT>\n extends Pick<\n ISectionListProps<ItemT, SectionT>,\n | NativeBaseAcceptedSectionListProps<ItemT, SectionT>\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\n// See: https://fettblog.eu/typescript-react-generic-forward-refs/\nexport const SectionList = NativeBaseSectionList as <ItemT, SectionT>(\n props: SectionListProps<ItemT, SectionT> & { ref?: ForwardedRef<NativeSectionList<ItemT, SectionT> | undefined> },\n) => ReturnType<typeof NativeBaseSectionList>;\n","export const hex2rgba = (hex: string, alpha = 1): string => {\n const r = parseInt(hex.slice(1, 3), 16);\n const g = parseInt(hex.slice(3, 5), 16);\n const b = parseInt(hex.slice(5, 7), 16);\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n};\n","export const lateOceanColorPalette = {\n lateOcean: '#4C34E0',\n lateOceanLight1: '#705DE6',\n lateOceanLight2: '#9485EC',\n lateOceanLight3: '#D6BAF9',\n lateOceanDark1: '#291D94',\n\n warmEmbrace: '#F4D3CE',\n warmEmbraceLight1: '#FFEDE6',\n\n black1000: '#000000',\n black800: '#333333',\n black555: '#737373',\n black400: '#999999',\n black200: '#CCCCCC',\n black100: '#E5E5E5',\n black50: '#F2F2F2',\n black25: '#F9F9F9',\n white: '#FFFFFF',\n\n viride: '#38836D',\n englishVermillon: '#D44148',\n goldCrayola: '#F8C583',\n aero: '#89BDDD',\n seaShell: '#FFF9F3',\n\n transparent: 'transparent',\n\n moonPurple: '#DBD6F9',\n moonPurpleLight1: '#EDEBFC',\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\n\nexport const colors = {\n primary: lateOceanColorPalette.lateOcean,\n primaryLight: lateOceanColorPalette.lateOceanLight1,\n accent: lateOceanColorPalette.warmEmbrace,\n accentLight: lateOceanColorPalette.warmEmbraceLight1,\n success: lateOceanColorPalette.viride,\n correct: lateOceanColorPalette.viride,\n danger: lateOceanColorPalette.englishVermillon,\n info: lateOceanColorPalette.aero,\n warning: lateOceanColorPalette.goldCrayola,\n separator: lateOceanColorPalette.black100,\n hover: lateOceanColorPalette.black100,\n white: lateOceanColorPalette.white,\n black: lateOceanColorPalette.black1000,\n blackDisabled: lateOceanColorPalette.black400,\n blackLight: lateOceanColorPalette.black555,\n blackAnthracite: lateOceanColorPalette.black800,\n uiBackground: lateOceanColorPalette.black25,\n uiBackgroundLight: lateOceanColorPalette.white,\n transparent: lateOceanColorPalette.transparent,\n disabled: lateOceanColorPalette.black50,\n overlay: {\n dark: 'rgba(41, 48, 51, 0.25)',\n light: 'rgba(255, 255, 255, 0.90)',\n },\n};\n","import { hex2rgba } from '../../utils/hexToRgba';\nimport { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface ActionCardState {\n backgroundColor: string;\n borderColor?: string;\n borderWidth: number;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n translateY: number;\n}\n\nexport interface ActionCardVariant {\n default: ActionCardState;\n disabled: ActionCardState;\n hovered: ActionCardState;\n pressed: ActionCardState;\n focused: ActionCardState;\n}\n\nexport interface ActionCardTheme {\n borderRadius: number;\n primary: ActionCardVariant;\n 'primary-border-soft': ActionCardVariant;\n 'primary-border-hard': ActionCardVariant;\n secondary: ActionCardVariant;\n highlight: ActionCardVariant;\n}\n\nexport const actionCard: ActionCardTheme = {\n borderRadius: 20,\n primary: {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.black100,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.black100,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.black100,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n 'primary-border-soft': {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n 'primary-border-hard': {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.lateOcean,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.lateOcean,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.lateOcean,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.lateOcean,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n secondary: {\n default: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.transparent,\n borderWidth: 0,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n },\n highlight: {\n default: {\n backgroundColor: lateOceanColorPalette.moonPurpleLight1,\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n disabled: {\n backgroundColor: lateOceanColorPalette.white,\n borderColor: lateOceanColorPalette.black100,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 0,\n },\n hovered: {\n backgroundColor: hex2rgba(lateOceanColorPalette.moonPurpleLight1, 0.6),\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n focused: {\n backgroundColor: hex2rgba(lateOceanColorPalette.moonPurpleLight1, 0.6),\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: lateOceanColorPalette.moonPurple,\n offsetX: 0,\n offsetY: 4,\n opacity: 1,\n radius: 0,\n },\n translateY: 0,\n },\n pressed: {\n backgroundColor: hex2rgba(lateOceanColorPalette.moonPurpleLight1, 0.6),\n borderColor: lateOceanColorPalette.moonPurple,\n borderWidth: 1,\n shadow: {\n color: '',\n offsetX: 0,\n offsetY: 0,\n opacity: 0,\n radius: 0,\n },\n translateY: 3,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport const defaultAvatarSize = 40;\nexport const defaultAvatarIconSize = 20;\n\nexport const largeAvatarSize = 120;\nexport const largeAvatarIconSize = 30;\n\nexport interface AvatarThemeColorVariant {\n backgroundColor: string;\n}\n\nexport interface AvatarThemeSizeVariant {\n borderRadius: number;\n size: number;\n iconSize: number;\n}\n\nexport interface AvatarTheme {\n borderRadius: number;\n size: number;\n iconSize: number;\n default: AvatarThemeColorVariant;\n light: AvatarThemeColorVariant;\n large: AvatarThemeSizeVariant;\n}\n\nexport const avatar: AvatarTheme = {\n borderRadius: 10,\n size: defaultAvatarSize,\n iconSize: defaultAvatarIconSize,\n default: {\n backgroundColor: colors.primary,\n },\n light: {\n backgroundColor: lateOceanColorPalette.black100,\n },\n large: {\n borderRadius: 30,\n size: largeAvatarSize,\n iconSize: largeAvatarIconSize,\n },\n};\n","export const spacing = 4;\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { spacing } from './spacing';\n\nexport interface BottomSheetTheme {\n container: {\n padding: number;\n };\n handle: {\n backgroundColor: string;\n };\n}\n\nexport const bottomSheet: BottomSheetTheme = {\n container: {\n padding: spacing * 4,\n },\n handle: {\n backgroundColor: lateOceanColorPalette.black200,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface BaseVariantTheme {\n backgroundColor: string;\n pressedBackgroundColor: string;\n hoverBackgroundColor: string;\n focusBorderColor: string;\n}\n\nexport interface GhostVariantTheme extends BaseVariantTheme {\n color: string;\n hoverColor: string;\n activeColor: string;\n}\nexport interface BaseButtonTheme {\n default: BaseVariantTheme;\n}\n\nexport interface BaseButtonWithVariant extends BaseButtonTheme {\n ghost: GhostVariantTheme;\n}\n\nexport interface SubtleBaseVariantTheme extends BaseVariantTheme {\n color: string;\n hoverColor: string;\n activeColor: string;\n}\n\nexport interface SubtleButtonTheme extends BaseButtonTheme {\n default: SubtleBaseVariantTheme;\n}\n\nexport interface DisabledBaseVariantTheme extends BaseVariantTheme {\n borderColor: string;\n}\n\nexport interface DisabledButtonTheme extends BaseButtonTheme {\n default: DisabledBaseVariantTheme;\n}\n\ninterface ButtonPadding {\n horizontal: number;\n vertical: number;\n}\n\nexport interface ButtonTheme {\n borderRadius: number;\n borderWidth: {\n disabled: number;\n focus: number;\n };\n minHeight: number;\n minWidth: number;\n maxWidth: number;\n scale: {\n base: {\n default: number;\n hover: number;\n active: number;\n };\n medium: {\n hover: number;\n };\n };\n /**\n * @deprecated use `padding` instead\n */\n contentPadding: {\n default: string;\n large: string;\n xLarge: string;\n disabled: string;\n };\n padding: {\n default: ButtonPadding;\n large: ButtonPadding;\n xLarge: ButtonPadding;\n disabled: ButtonPadding;\n };\n transition: {\n duration: string;\n timingFunction: string;\n };\n default: BaseButtonWithVariant;\n primary: BaseButtonWithVariant;\n danger: BaseButtonWithVariant;\n white: BaseButtonTheme;\n subtle: SubtleButtonTheme;\n 'subtle-dark': SubtleButtonTheme;\n disabled: DisabledButtonTheme;\n}\n\nexport const button: ButtonTheme = {\n borderRadius: 30,\n borderWidth: {\n disabled: 2,\n focus: 3,\n },\n minHeight: 40,\n minWidth: 40,\n maxWidth: 335,\n scale: {\n base: {\n default: 1,\n hover: 0.95,\n active: 0.95,\n },\n medium: {\n hover: 1.05,\n },\n },\n contentPadding: {\n default: '7px 16px 7px',\n large: '11px 24px 11px',\n xLarge: '15px 24px 15px',\n disabled: '5px 14px 5px',\n },\n padding: {\n default: {\n horizontal: 16,\n vertical: 7,\n },\n large: {\n horizontal: 24,\n vertical: 11,\n },\n xLarge: {\n horizontal: 24,\n vertical: 15,\n },\n disabled: {\n horizontal: 14,\n vertical: 5,\n },\n },\n transition: {\n duration: '200ms',\n timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n },\n default: {\n default: {\n backgroundColor: 'rgba(0, 0, 0, 0.05)',\n pressedBackgroundColor: 'rgba(0, 0, 0, 0.1)',\n hoverBackgroundColor: 'rgba(0, 0, 0, 0.1)',\n focusBorderColor: 'rgba(0, 0, 0, 0.1)',\n },\n ghost: {\n backgroundColor: 'rgba(255, 255, 255, 0.1)',\n pressedBackgroundColor: 'rgba(255, 255, 255, 0.05)',\n hoverBackgroundColor: 'rgba(255, 255, 255, 0.05)',\n focusBorderColor: 'rgba(255, 255, 255, 0.4)',\n color: lateOceanColorPalette.white,\n hoverColor: lateOceanColorPalette.white,\n activeColor: lateOceanColorPalette.white,\n },\n },\n primary: {\n default: {\n backgroundColor: colors.primary,\n pressedBackgroundColor: colors.primaryLight,\n hoverBackgroundColor: colors.primaryLight,\n focusBorderColor: 'rgba(76, 52, 224, 0.2)',\n },\n ghost: {\n backgroundColor: colors.uiBackgroundLight,\n pressedBackgroundColor: colors.uiBackground,\n hoverBackgroundColor: colors.hover,\n focusBorderColor: 'rgba(255,255,255, 0.4)',\n color: colors.primary,\n hoverColor: colors.hover,\n activeColor: colors.hover,\n },\n },\n white: {\n default: {\n backgroundColor: 'rgba(255, 255, 255, 0.05)',\n pressedBackgroundColor: 'rgba(255, 255, 255, 0.1)',\n hoverBackgroundColor: 'rgba(255, 255, 255, 0.1)',\n focusBorderColor: 'rgba(255, 255, 255, 0.1)',\n },\n },\n danger: {\n default: {\n backgroundColor: lateOceanColorPalette.warmEmbraceLight1,\n pressedBackgroundColor: lateOceanColorPalette.warmEmbrace,\n hoverBackgroundColor: lateOceanColorPalette.warmEmbrace,\n focusBorderColor: lateOceanColorPalette.warmEmbrace,\n },\n ghost: {\n backgroundColor: colors.uiBackgroundLight,\n pressedBackgroundColor: 'rgba(255, 255, 255, 0.75)',\n hoverBackgroundColor: 'rgba(255, 255, 255, 0.75)',\n focusBorderColor: 'rgba(255, 255, 255, 0.5)',\n color: lateOceanColorPalette.englishVermillon,\n hoverColor: lateOceanColorPalette.englishVermillon,\n activeColor: lateOceanColorPalette.englishVermillon,\n },\n },\n subtle: {\n default: {\n backgroundColor: colors.transparent,\n pressedBackgroundColor: colors.transparent,\n hoverBackgroundColor: colors.transparent,\n focusBorderColor: 'rgba(76, 52, 224, 0.2)',\n color: colors.primary,\n hoverColor: 'rgba(76, 52, 224, 0.8)',\n activeColor: 'rgba(76, 52, 224, 0.8)',\n },\n },\n 'subtle-dark': {\n default: {\n backgroundColor: colors.transparent,\n pressedBackgroundColor: colors.transparent,\n hoverBackgroundColor: colors.transparent,\n focusBorderColor: 'rgba(0, 0, 0, 0.1)',\n color: colors.black,\n hoverColor: 'rgba(0, 0, 0, 0.8)',\n activeColor: 'rgba(0, 0, 0, 0.8)',\n },\n },\n disabled: {\n default: {\n backgroundColor: colors.disabled,\n pressedBackgroundColor: colors.disabled,\n hoverBackgroundColor: colors.disabled,\n focusBorderColor: lateOceanColorPalette.black100,\n borderColor: lateOceanColorPalette.black100,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface CardThemeType {\n backgroundColor: string;\n borderColor: string;\n}\nexport interface CardTheme {\n borderRadius: number;\n borderWidth: number;\n primary: CardThemeType;\n secondary: CardThemeType;\n subtle: CardThemeType;\n}\n\nexport const card: CardTheme = {\n borderRadius: 20,\n borderWidth: 2,\n primary: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.primary,\n },\n secondary: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.separator,\n },\n subtle: {\n backgroundColor: lateOceanColorPalette.black50,\n borderColor: colors.separator,\n },\n};\n","import { colors } from './colors';\n\nexport interface CardModalTheme {\n borderRadius: number;\n maxWidth: number;\n maxWidthWithPadding: number;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n header: {\n height: number;\n borderWidth: number;\n borderColor: string;\n };\n footer: {\n borderWidth: number;\n borderColor: string;\n };\n overlayPadding: {\n horizontal: number;\n vertical: number;\n };\n animation: {\n overlay: {\n duration: number;\n easing: number[];\n };\n content: {\n duration: number;\n easing: number[];\n };\n };\n}\n\nexport const webAnimationContentDuration = 400;\nexport const webAnimationContentEasing = [0.77, 0, 0.175, 1];\n\nexport const webAnimationOverlayDuration = 250;\nexport const webAnimationOverlayEasing = [0.42, 0, 1, 1];\n\nconst maxWidth = 540;\nconst overlayHorizontalPadding = 24;\n\nexport const cardModal: CardModalTheme = {\n borderRadius: 20,\n maxWidth,\n maxWidthWithPadding: maxWidth + overlayHorizontalPadding * 2,\n shadow: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n header: {\n height: 56,\n borderWidth: 1,\n borderColor: colors.separator,\n },\n footer: {\n borderWidth: 1,\n borderColor: colors.separator,\n },\n overlayPadding: {\n horizontal: 24,\n vertical: 32,\n },\n animation: {\n overlay: {\n duration: webAnimationOverlayDuration,\n easing: webAnimationOverlayEasing,\n },\n content: {\n duration: webAnimationContentDuration,\n easing: webAnimationContentEasing,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface ChoicesItemTheme {\n borderRadius: number;\n /** @deprecated use kitt.x spacings values instead */\n padding: {\n base: number;\n small: number;\n };\n backgroundColor: {\n default: string;\n disabled: string;\n selected: string;\n pressed: string;\n hover: string;\n hoverWhenSelected: string;\n };\n disabled: {\n border: {\n width: number;\n color: string;\n };\n };\n transition: {\n property: string;\n duration: number;\n timingFunction: string;\n };\n}\n\nexport interface ChoicesTheme {\n /** @deprecated use kitt.x spacings values instead */\n spacing: {\n row: number;\n column: number;\n };\n item: ChoicesItemTheme;\n}\n\nexport const choices: ChoicesTheme = {\n spacing: {\n row: 12,\n column: 12,\n },\n item: {\n borderRadius: 10,\n padding: {\n base: 16,\n small: 24,\n },\n backgroundColor: {\n default: lateOceanColorPalette.black50,\n disabled: colors.disabled,\n selected: colors.primary,\n pressed: lateOceanColorPalette.lateOceanLight1,\n hover: lateOceanColorPalette.black100,\n hoverWhenSelected: lateOceanColorPalette.lateOceanLight1,\n },\n disabled: {\n border: {\n width: 2,\n color: lateOceanColorPalette.black100,\n },\n },\n transition: {\n property: 'all',\n duration: 300,\n timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n },\n },\n};\n","import { colors } from './colors';\n\nexport interface DialogModalTheme {\n borderRadius: number;\n maxWidth: number;\n overlayPadding: {\n horizontal: number;\n vertical: number;\n };\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n animation: {\n overlay: {\n duration: number;\n easing: number[];\n };\n content: {\n duration: number;\n easing: number[];\n };\n };\n}\n\nexport const webAnimationContentDuration = 400;\nexport const webAnimationContentEasing = [0.77, 0, 0.175, 1];\n\nexport const webAnimationOverlayDuration = 250;\nexport const webAnimationOverlayEasing = [0.42, 0, 1, 1];\n\nexport const dialogModal: DialogModalTheme = {\n borderRadius: 20,\n maxWidth: 540,\n overlayPadding: {\n horizontal: 24,\n vertical: 32,\n },\n shadow: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n animation: {\n overlay: {\n duration: webAnimationOverlayDuration,\n easing: webAnimationOverlayEasing,\n },\n content: {\n duration: webAnimationContentDuration,\n easing: webAnimationContentEasing,\n },\n },\n};\n","import { colors } from './colors';\n\nexport interface FeedbackMessageVariantTheme {\n backgroundColor: string;\n}\n\nexport interface FeedbackMessageTheme {\n minHeight: number;\n danger: FeedbackMessageVariantTheme;\n info: FeedbackMessageVariantTheme;\n success: FeedbackMessageVariantTheme;\n warning: FeedbackMessageVariantTheme;\n}\n\nexport const feedbackMessage: FeedbackMessageTheme = {\n minHeight: 60,\n danger: {\n backgroundColor: colors.danger,\n },\n success: {\n backgroundColor: colors.success,\n },\n info: {\n backgroundColor: colors.info,\n },\n warning: {\n backgroundColor: colors.warning,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface AutocompleteTheme {\n option: {\n verticalPadding: number;\n minHeight: number;\n default: { backgroundColor: string };\n hovered: { backgroundColor: string };\n focused: { backgroundColor: string };\n selected: { backgroundColor: string };\n highlighted: { backgroundColor: string };\n pressed: { backgroundColor: string };\n };\n optionsContainer: {\n borderRadius: number;\n backgroundColor: string;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n };\n}\n\nexport const autocomplete: AutocompleteTheme = {\n option: {\n verticalPadding: 2,\n minHeight: 40,\n default: {\n backgroundColor: colors.white,\n },\n hovered: { backgroundColor: lateOceanColorPalette.black50 },\n focused: { backgroundColor: lateOceanColorPalette.black50 },\n selected: { backgroundColor: lateOceanColorPalette.black50 },\n highlighted: { backgroundColor: lateOceanColorPalette.black50 },\n pressed: { backgroundColor: lateOceanColorPalette.black100 },\n },\n optionsContainer: {\n borderRadius: 10,\n backgroundColor: colors.white,\n shadow: { color: colors.black, offsetX: 0, offsetY: 10, opacity: 0.15, radius: 20 },\n },\n};\n","import { colors } from './colors';\n\nexport const checkbox = {\n borderWidth: 2,\n borderRadius: 5,\n height: 20,\n width: 20,\n iconSize: 14,\n markColor: colors.uiBackgroundLight,\n textSpacing: 10,\n default: {\n borderColor: colors.separator,\n backgroundColor: colors.uiBackgroundLight,\n },\n checked: {\n borderColor: colors.primary,\n backgroundColor: colors.primary,\n },\n focus: {\n borderColor: colors.primary,\n backgroundColor: colors.uiBackgroundLight,\n },\n hover: {\n borderColor: colors.primary,\n backgroundColor: colors.uiBackgroundLight,\n },\n pressed: {\n borderColor: colors.primary,\n backgroundColor: colors.uiBackgroundLight,\n },\n disabled: {\n borderColor: colors.separator,\n backgroundColor: colors.disabled,\n },\n transition: {\n duration: '200ms',\n timingFunction: 'ease-out',\n },\n};\n","interface DatePickerPartTheme {\n minWidth: number;\n}\n\nexport interface DatePickerTheme {\n day: DatePickerPartTheme;\n month: DatePickerPartTheme;\n year: DatePickerPartTheme;\n}\n\nexport const datePicker: DatePickerTheme = {\n day: {\n minWidth: 64,\n },\n month: {\n minWidth: 64,\n },\n year: {\n minWidth: 82,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors as kittColors } from './colors';\n\nexport const calcLineHeight = (fontSize: number, lineHeightMultiplier: number): number =>\n Math.round(fontSize * lineHeightMultiplier);\n\nexport interface TypographyTypeBreakpointRangeConfig {\n fontSize: number;\n lineHeight: number;\n}\n\nexport interface TypographyTypeConfig {\n baseAndSmall: TypographyTypeBreakpointRangeConfig;\n mediumAndWide: TypographyTypeBreakpointRangeConfig;\n}\n\nexport const createTypographyTypeConfig = (\n lineHeightMultiplier: number,\n baseAndSmallFontSize: number,\n mediumAndWideFontSize: number,\n): TypographyTypeConfig => ({\n baseAndSmall: {\n fontSize: baseAndSmallFontSize,\n lineHeight: calcLineHeight(baseAndSmallFontSize, lineHeightMultiplier),\n },\n mediumAndWide: {\n fontSize: mediumAndWideFontSize,\n lineHeight: calcLineHeight(mediumAndWideFontSize, lineHeightMultiplier),\n },\n});\n\nexport const typography = {\n colors: {\n black: kittColors.black,\n 'black-anthracite': kittColors.blackAnthracite,\n 'black-disabled': lateOceanColorPalette.black400,\n 'black-light': lateOceanColorPalette.black555,\n white: kittColors.white,\n 'white-light': kittColors.white,\n primary: kittColors.primary,\n 'primary-light': kittColors.primaryLight,\n accent: kittColors.accent,\n success: kittColors.success,\n danger: kittColors.danger,\n warning: kittColors.warning,\n },\n types: {\n headers: {\n fontFamily: {\n native: {\n regular: 'Moderat-Black',\n bold: 'Moderat-Black',\n },\n web: {\n regular: 'Moderat',\n bold: 'Moderat',\n },\n },\n fontWeight: 400,\n fontStyle: 'normal',\n configs: {\n // also known as xxlarge\n header1: createTypographyTypeConfig(1.3, 38, 62),\n // also known as xlarge\n header2: createTypographyTypeConfig(1.3, 32, 48),\n // also known as medium\n header3: createTypographyTypeConfig(1.3, 24, 36),\n // also known as xsmall\n header4: createTypographyTypeConfig(1.3, 18, 24),\n // also known as xxsmall\n header5: createTypographyTypeConfig(1.3, 18, 18),\n },\n },\n bodies: {\n fontFamily: {\n web: {\n regular: 'Noto Sans',\n bold: 'Noto Sans',\n },\n native: {\n regular: 'NotoSans',\n bold: 'NotoSans-Bold',\n },\n },\n fontWeight: {\n regular: 400,\n bold: 700,\n },\n fontStyle: {\n regular: 'normal',\n bold: 'normal',\n },\n configs: {\n 'body-large': createTypographyTypeConfig(1.6, 18, 24),\n 'body-medium': createTypographyTypeConfig(1.6, 18, 18),\n body: createTypographyTypeConfig(1.6, 16, 16),\n 'body-small': createTypographyTypeConfig(1.6, 14, 14),\n 'body-xsmall': createTypographyTypeConfig(1.6, 12, 12),\n },\n },\n },\n link: {\n /** @deprecated not used in kitt anymore, use Typography instead */\n disabledColor: kittColors.blackDisabled,\n },\n};\n","import type { InputUIState } from '../../forms/utils';\nimport { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\nimport { typography } from './typography';\n\nexport interface InputStateStyle {\n backgroundColor?: string;\n borderColor: string;\n color: string;\n}\n\nexport type InputStateTheme = Record<InputUIState, InputStateStyle>;\n\nconst inputStatesStyle: InputStateTheme = {\n default: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.separator,\n color: colors.black,\n },\n pending: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.separator,\n color: colors.black,\n },\n valid: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.black100,\n color: colors.black,\n },\n hover: {\n borderColor: lateOceanColorPalette.black200,\n color: colors.black,\n },\n focus: {\n borderColor: colors.primary,\n color: colors.black,\n },\n disabled: {\n backgroundColor: colors.disabled,\n borderColor: colors.separator,\n color: colors.blackDisabled,\n },\n invalid: {\n borderColor: colors.separator,\n color: colors.black,\n },\n};\n\nexport interface InputTheme {\n minHeight: number;\n color: {\n selection: string;\n placeholder: string;\n };\n borderWidth: number;\n borderRadius: number;\n icon: {\n size: number;\n };\n padding: {\n horizontal: number;\n vertical: number;\n };\n rightContainer: {\n padding: number;\n };\n transition: {\n property: string;\n duration: string;\n timingFunction: string;\n };\n states: InputStateTheme;\n}\n\nexport const webAnimationDuration = '200ms';\nexport const webAnimationTimingFunction = 'ease-in-out';\nexport const webAnimationProperty = 'border-color';\n\nexport const input: InputTheme = {\n minHeight: 40,\n color: {\n selection: colors.primary,\n placeholder: typography.colors['black-light'],\n },\n borderWidth: 2,\n borderRadius: 10,\n icon: {\n size: 20,\n },\n rightContainer: {\n padding: 10,\n },\n padding: {\n horizontal: 16,\n vertical: 5,\n },\n transition: {\n property: webAnimationProperty,\n duration: webAnimationDuration,\n timingFunction: webAnimationTimingFunction,\n },\n states: inputStatesStyle,\n};\n","export const inputField = {\n containerPaddingTop: 5,\n containerPaddingBottom: 10,\n feedbackPaddingTop: { base: 5, small: 10 },\n labelContainerPaddingBottom: 5,\n labelFeedbackMarginLeft: 6,\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\ninterface InputTagTypeTheme {\n backgroundColor: string;\n labelColor: string;\n}\nexport interface InputTagTheme {\n borderRadius: number;\n iconSize: number;\n default: InputTagTypeTheme;\n success: InputTagTypeTheme;\n danger: InputTagTypeTheme;\n}\n\nexport const inputTag: InputTagTheme = {\n success: {\n backgroundColor: colors.success,\n labelColor: colors.uiBackgroundLight,\n },\n danger: {\n backgroundColor: colors.danger,\n labelColor: colors.uiBackgroundLight,\n },\n default: {\n backgroundColor: lateOceanColorPalette.black50,\n labelColor: colors.black,\n },\n borderRadius: 10,\n iconSize: 13.5,\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface RadioTheme {\n size: number;\n unchecked: {\n backgroundColor: string;\n borderColor: string;\n borderWidth: number;\n };\n checked: {\n backgroundColor: string;\n borderColor: string;\n innerBackgroundColor: string;\n innerSize: number;\n };\n hover: {\n backgroundColor: string;\n borderColor: string;\n };\n pressed: {\n backgroundColor: string;\n borderColor: string;\n };\n disabled: {\n backgroundColor: string;\n borderColor: string;\n };\n transition: {\n duration: string;\n timingFunction: string;\n };\n}\n\nexport const radio: RadioTheme = {\n size: 18,\n unchecked: {\n borderWidth: 2,\n backgroundColor: colors.uiBackgroundLight,\n borderColor: lateOceanColorPalette.black200,\n },\n checked: {\n backgroundColor: colors.primary,\n borderColor: colors.transparent,\n innerSize: 5,\n innerBackgroundColor: colors.uiBackgroundLight,\n },\n hover: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.primary,\n },\n pressed: {\n backgroundColor: colors.uiBackgroundLight,\n borderColor: colors.primary,\n },\n disabled: {\n backgroundColor: colors.disabled,\n borderColor: colors.separator,\n },\n transition: {\n duration: '200ms',\n timingFunction: 'ease-out',\n },\n};\n","import { colors } from './colors';\n\nexport interface RadioButtonGroupTheme {\n item: {\n minHeight: number;\n borderWidth: number;\n borderColor: {\n default: string;\n hover: string;\n pressed: string;\n active: string;\n disabled: string;\n [key: string]: string;\n };\n backgroundColor: {\n default: string;\n hover: string;\n pressed: string;\n active: string;\n disabled: string;\n };\n borderRadius: number;\n padding: {\n horizontal: number;\n vertical: number;\n };\n transition: {\n property: string;\n duration: string;\n timingFunction: string;\n };\n };\n}\n\nexport const radioButtonGroup: RadioButtonGroupTheme = {\n item: {\n minHeight: 40,\n borderWidth: 2,\n borderRadius: 20,\n borderColor: {\n default: colors.separator,\n hover: colors.primary,\n pressed: colors.primary,\n active: colors.primary,\n disabled: colors.separator,\n },\n backgroundColor: {\n default: colors.uiBackgroundLight,\n hover: colors.white,\n pressed: colors.primary,\n active: colors.primary,\n disabled: colors.disabled,\n },\n padding: {\n horizontal: 18,\n vertical: 6,\n },\n transition: {\n property: 'all',\n duration: '200ms',\n timingFunction: 'ease-in-out',\n },\n },\n};\n","export interface TextAreaTheme {\n minHeight: number;\n}\n\nexport const textArea: TextAreaTheme = {\n minHeight: 120,\n};\n","export interface TimePickerTheme {\n minWidth: number;\n}\n\nexport const timePicker: TimePickerTheme = {\n minWidth: 100,\n};\n","import { autocomplete } from './autocomplete';\nimport { checkbox } from './checkbox';\nimport { datePicker } from './datePicker';\nimport { input } from './input';\nimport { inputField } from './inputField';\nimport { inputTag } from './inputTag';\nimport { radio } from './radio';\nimport { radioButtonGroup } from './radioButtonGroup';\nimport { textArea } from './textArea';\nimport { timePicker } from './timePicker';\n\nexport const forms = {\n autocomplete,\n datePicker,\n input,\n radio,\n inputField,\n textArea,\n checkbox,\n inputTag,\n radioButtonGroup,\n timePicker,\n};\n","export interface FullscreenModalTheme {\n header: {\n height: number;\n };\n footer: {\n verticalPadding: number;\n };\n sharedHorizontalPadding: number;\n body: {\n verticalPadding: number;\n };\n animation: {\n overlay: {\n duration: number;\n easing: number[];\n };\n content: {\n duration: number;\n easing: number[];\n };\n };\n}\n\nexport const webAnimationContentDuration = 600;\nexport const webAnimationContentEasing = [0.77, 0, 0.175, 1];\n\nexport const webAnimationOverlayDuration = 250;\nexport const webAnimationOverlayEasing = [0.42, 0, 1, 1];\n\nexport const fullscreenModal: FullscreenModalTheme = {\n header: {\n height: 56,\n },\n sharedHorizontalPadding: 16,\n footer: {\n verticalPadding: 12,\n },\n body: {\n verticalPadding: 24,\n },\n animation: {\n overlay: {\n duration: webAnimationOverlayDuration,\n easing: webAnimationOverlayEasing,\n },\n content: {\n duration: webAnimationContentDuration,\n easing: webAnimationContentEasing,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\nimport { spacing } from './spacing';\n\nexport interface HighlightThemeType {\n backgroundColor: string;\n}\n\nexport interface HighlightTheme {\n borderRadius: number;\n padding: number;\n regular: HighlightThemeType;\n primary: HighlightThemeType;\n secondary: HighlightThemeType;\n dark: HighlightThemeType;\n}\n\nexport const highlight: HighlightTheme = {\n borderRadius: spacing * 5,\n /** @deprecated use primary instead */\n regular: {\n backgroundColor: colors.accentLight,\n },\n primary: {\n backgroundColor: colors.accentLight,\n },\n secondary: {\n backgroundColor: lateOceanColorPalette.moonPurple,\n },\n dark: {\n backgroundColor: lateOceanColorPalette.black100,\n },\n padding: spacing * 5,\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { button } from './button';\n\ninterface IconButtonVariationValues {\n pressedBackgroundColor: string;\n}\n\nexport interface IconButtonTheme {\n backgroundColor: string;\n width: number;\n height: number;\n borderRadius: number;\n borderWidth: number;\n borderColor: string;\n transition: {\n property: string;\n duration: string;\n timingFunction: string;\n };\n scale: {\n base: {\n default: number;\n hover: number;\n active: number;\n };\n medium: {\n default: number;\n hover: number;\n active: number;\n };\n };\n disabled: {\n scale: number;\n backgroundColor: string;\n borderColor: string;\n };\n default: IconButtonVariationValues;\n white: IconButtonVariationValues;\n primary: IconButtonVariationValues;\n}\n\nexport const iconButton: IconButtonTheme = {\n backgroundColor: 'transparent',\n width: 40,\n height: 40,\n borderRadius: 20,\n borderWidth: 2,\n borderColor: 'transparent',\n transition: {\n property: 'all',\n duration: '200ms',\n timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n },\n scale: {\n base: {\n default: 1,\n hover: 0.95,\n active: 0.95,\n },\n medium: {\n default: 1,\n hover: 1.05,\n active: 0.95,\n },\n },\n disabled: {\n scale: 1,\n backgroundColor: button.disabled.default.backgroundColor,\n borderColor: button.disabled.default.borderColor,\n },\n default: {\n pressedBackgroundColor: button.default.default.pressedBackgroundColor,\n },\n white: {\n pressedBackgroundColor: button.white.default.hoverBackgroundColor,\n },\n primary: {\n pressedBackgroundColor: lateOceanColorPalette.moonPurpleLight1,\n },\n};\n","import { colors } from './colors';\n\nexport interface ListItemTheme {\n /** @deprecated -- use verticalPadding and horizontalPadding instead */\n padding: string;\n verticalPadding: number;\n horizontalPadding: number;\n borderColor: string;\n borderWidth: number;\n innerMargin: number;\n}\n\nexport const listItem: ListItemTheme = {\n padding: '12px 16px',\n verticalPadding: 12,\n horizontalPadding: 16,\n borderColor: colors.separator,\n borderWidth: 1,\n innerMargin: 8,\n};\n","import { colors } from './colors';\n\nexport interface PageLoaderTheme {\n size: number;\n strokeWidth: number;\n colors: {\n base: string;\n fill: string;\n };\n animation: {\n delay: number;\n circleBackgroundFillDuration: number;\n filledCircleFillDuration: number;\n groupFilledCircleRotationDuration: number;\n filledCircleRotationDuration: number;\n fillEasingFunction: [number, number, number, number];\n };\n}\n\nexport const pageLoaderSize = 60;\nexport const pageLoaderStrokeWidth = 3;\n\nexport const webAnimationDelay = 500;\nexport const webAnimationCircleBackgroundFillDuration = 1000;\nexport const webAnimationFilledCircleFillDuration = 1800;\nexport const webAnimationFilledCircleRotationDuration = 2160;\nexport const fillEasingFunction: [number, number, number, number] = [0.39, 0.575, 0.565, 1];\n\nexport const pageLoader: PageLoaderTheme = {\n size: pageLoaderSize,\n strokeWidth: pageLoaderStrokeWidth,\n colors: {\n base: colors.separator,\n fill: colors.primary,\n },\n animation: {\n delay: webAnimationDelay,\n circleBackgroundFillDuration: webAnimationCircleBackgroundFillDuration,\n filledCircleFillDuration: webAnimationFilledCircleFillDuration,\n groupFilledCircleRotationDuration: 1800,\n filledCircleRotationDuration: webAnimationFilledCircleRotationDuration,\n fillEasingFunction,\n },\n};\n","import type { TextStyle } from 'react-native';\nimport { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\nimport { typography } from './typography';\n\nexport interface PickerTheme {\n ios: {\n default: TextStyle;\n landscape: TextStyle;\n selected: {\n color: string;\n };\n };\n android: {\n option: {\n verticalPadding: number;\n horizontalPadding: number;\n default: {\n backgroundColor: string;\n };\n selected: {\n backgroundColor: string;\n color: string;\n };\n };\n };\n web: {\n optionsContainer: {\n borderRadius: number;\n backgroundColor: string;\n shadow: {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n };\n };\n option: {\n verticalPadding: number;\n horizontalPadding: number;\n default: {\n backgroundColor: string;\n };\n highlighted: {\n backgroundColor: string;\n };\n selected: {\n backgroundColor: string;\n };\n hovered: {\n backgroundColor: string;\n };\n pressed: {\n backgroundColor: string;\n };\n focused: {\n backgroundColor: string;\n };\n };\n };\n}\n\nexport const picker: PickerTheme = {\n ios: {\n default: {\n fontFamily: typography.types.bodies.fontFamily.native.regular,\n ...typography.types.bodies.configs.body.baseAndSmall,\n fontSize: 16,\n color: typography.colors['black-light'],\n // Default height is hard coded in module because of iOS constraint (https://github.com/react-native-picker/picker/blob/abd5f9076baa3ef2277ea7e711fa5823683c110e/js/PickerIOS.ios.js#L156)\n height: 216,\n },\n landscape: {\n height: 108,\n },\n selected: {\n color: typography.colors.primary,\n },\n },\n web: {\n optionsContainer: {\n borderRadius: 10,\n backgroundColor: colors.white,\n shadow: { color: colors.black, offsetX: 0, offsetY: 10, opacity: 0.15, radius: 20 },\n },\n option: {\n verticalPadding: 3,\n horizontalPadding: 16,\n default: {\n backgroundColor: colors.transparent,\n },\n hovered: { backgroundColor: lateOceanColorPalette.black50 },\n focused: { backgroundColor: lateOceanColorPalette.black50 },\n selected: { backgroundColor: lateOceanColorPalette.black50 },\n highlighted: { backgroundColor: lateOceanColorPalette.black50 },\n pressed: { backgroundColor: lateOceanColorPalette.black100 },\n },\n },\n android: {\n option: {\n verticalPadding: 12,\n horizontalPadding: 24,\n default: {\n backgroundColor: colors.transparent,\n },\n selected: {\n backgroundColor: colors.primary,\n color: typography.colors.white,\n },\n },\n },\n};\n","import { colors } from './colors';\n\ninterface ShadowShapeTheme {\n color: string;\n offsetX: number;\n offsetY: number;\n opacity: number;\n radius: number;\n}\n\nexport interface ShadowsTheme {\n medium: string;\n cards: Record<string, ShadowShapeTheme>;\n navigation: Record<string, ShadowShapeTheme>;\n panel: ShadowShapeTheme;\n}\n\nexport const shadows: ShadowsTheme = {\n /** @deprecated: use cards.medium instead - shorthand shadow doesnt work with Native Base */\n medium: '0px 10px 20px rgba(41, 48, 51, 0.25)',\n cards: {\n low: {\n color: colors.black,\n offsetX: 0,\n offsetY: 5,\n opacity: 0.1,\n radius: 20,\n },\n medium: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n highBase: {\n color: colors.black,\n offsetX: 0,\n offsetY: 10,\n opacity: 0.15,\n radius: 20,\n },\n highMedium: {\n color: colors.black,\n offsetX: 0,\n offsetY: 60,\n opacity: 0.08,\n radius: 40,\n },\n highLarge: {\n color: colors.black,\n offsetX: 0,\n offsetY: 80,\n opacity: 0.08,\n radius: 60,\n },\n },\n navigation: {\n left: {\n color: colors.black,\n offsetX: 10,\n offsetY: 0,\n opacity: 0.15,\n radius: 30,\n },\n right: {\n color: colors.black,\n offsetX: -10,\n offsetY: 0,\n opacity: 0.15,\n radius: 30,\n },\n },\n panel: {\n color: colors.black,\n offsetX: 0,\n offsetY: 20,\n opacity: 1,\n radius: 40,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\n\ninterface SkeletonShapeTheme {\n size: number;\n borderRadius: number;\n}\nexport interface SkeletonTheme {\n backgroundColor: string;\n flareColor: string;\n animationDuration: number;\n shape: Record<string, SkeletonShapeTheme>;\n}\n\nexport const skeletonBackgroundColor = lateOceanColorPalette.black100;\nexport const skeletonFlareColor = lateOceanColorPalette.black200;\n\nexport const skeleton: SkeletonTheme = {\n backgroundColor: skeletonBackgroundColor,\n flareColor: skeletonFlareColor,\n animationDuration: 1000,\n shape: {\n bar: {\n size: 8,\n borderRadius: 4,\n },\n circle: {\n size: 48,\n borderRadius: 24,\n },\n square: {\n size: 48,\n borderRadius: 6,\n },\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\nexport interface TagVariantTheme {\n borderWidth: number;\n backgroundColor: string;\n borderColor: string;\n}\n\nexport interface TagTypeTheme {\n fill: TagVariantTheme;\n outline: TagVariantTheme;\n}\n\nexport interface TagTheme {\n borderRadius: number;\n /** @deprecated -- Use verticalPadding and horizontalPadding instead */\n padding: string;\n verticalPadding: number;\n horizontalPadding: number;\n primary: TagTypeTheme;\n default: TagTypeTheme;\n danger: TagTypeTheme;\n warn: TagTypeTheme;\n}\n\nexport const tag: TagTheme = {\n borderRadius: 10,\n padding: '2px 12px',\n verticalPadding: 2,\n horizontalPadding: 12,\n primary: {\n fill: {\n backgroundColor: lateOceanColorPalette.moonPurpleLight1,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.primary,\n },\n },\n default: {\n fill: {\n backgroundColor: lateOceanColorPalette.black50,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.black,\n },\n },\n danger: {\n fill: {\n backgroundColor: colors.danger,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.danger,\n },\n },\n warn: {\n fill: {\n backgroundColor: colors.warning,\n borderWidth: 0,\n borderColor: colors.transparent,\n },\n outline: {\n backgroundColor: colors.transparent,\n borderWidth: 1,\n borderColor: colors.warning,\n },\n },\n};\n","import { hex2rgba } from '../../utils/hexToRgba';\nimport { colors } from './colors';\n\ninterface TooltipTransition {\n duration: string;\n timingFunction: string;\n property: string;\n}\n\nexport interface TooltipTheme {\n backgroundColor: string;\n borderRadius: number;\n opacity: number;\n horizontalPadding: number;\n verticalPadding: number;\n floatingPadding: number;\n maxWidth: number;\n transition: {\n in: TooltipTransition;\n out: TooltipTransition;\n };\n arrow: {\n width: number;\n height: number;\n };\n}\n\nexport const tooltip: TooltipTheme = {\n backgroundColor: hex2rgba(colors.black, 0.95),\n borderRadius: 10,\n opacity: 0.95,\n horizontalPadding: 16,\n verticalPadding: 8,\n floatingPadding: 8,\n maxWidth: 328,\n transition: {\n in: {\n duration: '150ms',\n timingFunction: 'ease-out',\n property: 'opacity',\n },\n out: {\n duration: '75ms',\n timingFunction: 'ease-out',\n property: 'opacity',\n },\n },\n arrow: {\n width: 39,\n height: 9,\n },\n};\n","import { lateOceanColorPalette } from '../palettes/lateOceanColorPalette';\nimport { colors } from './colors';\n\ninterface StepStateTheme {\n icon: {\n backgroundColor: string;\n textColor: string;\n };\n}\n\nexport interface VerticalStepsTheme {\n active: StepStateTheme;\n done: StepStateTheme;\n default: StepStateTheme;\n}\n\nexport const verticalSteps: VerticalStepsTheme = {\n active: {\n icon: {\n backgroundColor: colors.primary,\n textColor: colors.white,\n },\n },\n done: {\n icon: {\n backgroundColor: lateOceanColorPalette.moonPurple,\n textColor: colors.primary,\n },\n },\n default: {\n icon: {\n backgroundColor: colors.disabled,\n textColor: colors.blackDisabled,\n },\n },\n};\n","import { actionCard } from './late-ocean/actionCard';\nimport { avatar } from './late-ocean/avatar';\nimport { bottomSheet } from './late-ocean/bottomSheet';\nimport { button } from './late-ocean/button';\nimport { card } from './late-ocean/card';\nimport { cardModal } from './late-ocean/cardModal';\nimport { choices } from './late-ocean/choices';\nimport { colors } from './late-ocean/colors';\nimport { dialogModal } from './late-ocean/dialogModal';\nimport { feedbackMessage } from './late-ocean/feedback';\nimport { forms } from './late-ocean/forms';\nimport { fullscreenModal } from './late-ocean/fullscreenModal';\nimport { highlight } from './late-ocean/highlight';\nimport { iconButton } from './late-ocean/iconButton';\nimport { listItem } from './late-ocean/listItem';\nimport { pageLoader } from './late-ocean/pageLoader';\nimport { picker } from './late-ocean/picker';\nimport { shadows } from './late-ocean/shadows';\nimport { skeleton } from './late-ocean/skeleton';\nimport { spacing } from './late-ocean/spacing';\nimport { tag } from './late-ocean/tag';\nimport { tooltip } from './late-ocean/tooltip';\nimport { typography } from './late-ocean/typography';\nimport { verticalSteps } from './late-ocean/verticalSteps';\nimport { lateOceanColorPalette } from './palettes/lateOceanColorPalette';\n\nconst breakpoints = {\n values: {\n base: 0,\n small: 480,\n medium: 768,\n large: 1024,\n wide: 1280,\n },\n min: {\n smallBreakpoint: 'min-width: 480px',\n mediumBreakpoint: 'min-width: 768px',\n largeBreakpoint: 'min-width: 1024px',\n wideBreakpoint: 'min-width: 1280px',\n },\n max: {\n smallBreakpoint: 'max-width: 479px',\n mediumBreakpoint: 'max-width: 767px',\n largeBreakpoint: 'max-width: 1023px',\n wideBreakpoint: 'max-width: 1279px',\n },\n};\n\n// eslint-disable-next-line unicorn/expiring-todo-comments\n// TODO : seperate brand color usage definition from proper theme definition and add typings - https://ornikar.atlassian.net/browse/CME-156\nexport const theme = {\n spacing,\n getSpacing: (multiplier: number): number => spacing * multiplier,\n colors,\n palettes: { lateOcean: lateOceanColorPalette },\n avatar,\n breakpoints,\n button,\n bottomSheet,\n card,\n cardModal,\n choices,\n dialogModal,\n feedbackMessage,\n forms,\n highlight,\n iconButton,\n listItem,\n pageLoader,\n picker,\n shadows,\n skeleton,\n tag,\n tooltip,\n typography,\n fullscreenModal,\n actionCard,\n verticalSteps,\n};\n\nexport type Theme = typeof theme;\n","import { createContext, useContext } from 'react';\nimport type { Theme as KittTheme } from './themes/default';\nimport { theme as kittTheme } from './themes/default';\n\nexport interface KittThemeContextValue {\n kitt: KittTheme;\n}\n\nexport const KittThemeContext = createContext<KittThemeContextValue>({\n kitt: kittTheme,\n});\n\nexport const useTheme = (): KittThemeContextValue => useContext(KittThemeContext);\n","import type { ActionCardVariant } from '../../themes/late-ocean/actionCard';\n\nexport const getStateKey = (isHovered?: boolean, isPressed?: boolean, isFocused?: boolean): keyof ActionCardVariant => {\n if (isPressed) {\n return 'pressed';\n }\n\n if (isFocused) {\n return 'focused';\n }\n\n if (isHovered) {\n return 'hovered';\n }\n\n return 'default';\n};\n","import type { ActionCardTheme } from '../../themes/late-ocean/actionCard';\nimport type { ActionCardBorderVariantType, ActionCardVariantType } from '../types';\n\nexport const getThemeName = (\n variant: ActionCardVariantType,\n borderVariant: ActionCardBorderVariantType,\n): keyof ActionCardTheme => {\n if (borderVariant === 'soft') {\n return 'primary-border-soft';\n }\n if (borderVariant === 'hard') {\n return 'primary-border-hard';\n }\n\n return variant;\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ActionCardBorderVariantType, ActionCardVariantType } from './types';\nimport { getStateKey } from './utils/getStateKey';\nimport { getThemeName } from './utils/getThemeName';\n\ninterface ActionCardContentWrapperProps {\n isHovered?: boolean;\n isPressed?: boolean;\n isFocused?: boolean;\n variant: ActionCardVariantType;\n borderVariant?: ActionCardBorderVariantType;\n children: ReactNode;\n}\n\nexport function ActionCardContentWrapper({\n isHovered,\n isPressed,\n isFocused,\n variant,\n borderVariant = 'none',\n children,\n}: ActionCardContentWrapperProps): ReactElement {\n const theme = useTheme();\n const state = getStateKey(isHovered, isPressed, isFocused);\n\n if (__DEV__ && borderVariant !== 'none' && variant !== 'primary') {\n throw new Error(`borderVariant=${borderVariant} is only allowed with variant=primary`);\n }\n\n const { translateY } = theme.kitt.actionCard[variant][state];\n\n const sharedTransform = translateY\n ? {\n transform: [{ translateY }],\n }\n : {};\n\n const themeName = getThemeName(variant, borderVariant);\n\n return (\n <View\n _ios={{ style: sharedTransform }}\n _android={{ style: sharedTransform }}\n _web={{\n style: sharedTransform,\n }}\n width=\"100%\"\n backgroundColor={`kitt.actionCard.${themeName}.${state}.backgroundColor`}\n borderRadius=\"kitt.actionCard.borderRadius\"\n borderColor={`kitt.actionCard.${themeName}.${state}.borderColor`}\n borderWidth={`kitt.actionCard.${themeName}.${state}.borderWidth`}\n shadow={`kitt.actionCard.${themeName}.${state}.shadow`}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { ActionCardVariantType } from './types';\n\ninterface ActionCardDisabledProps {\n variant: ActionCardVariantType;\n children: ReactNode;\n}\n\nexport function ActionCardDisabled({ variant, children }: ActionCardDisabledProps): ReactElement {\n return (\n <View\n borderRadius=\"kitt.actionCard.borderRadius\"\n borderStyle=\"solid\"\n borderWidth={`kitt.actionCard.${variant}.disabled.borderWidth`}\n borderColor={`kitt.actionCard.${variant}.disabled.borderColor`}\n backgroundColor={`kitt.actionCard.${variant}.disabled.backgroundColor`}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { PressableProps, ViewProps } from '../native-base/primitives';\nimport { Pressable, View } from '../native-base/primitives';\nimport { ActionCardContentWrapper } from './ActionCardContentWrapper';\nimport { ActionCardDisabled } from './ActionCardDisabled';\nimport type { ActionCardBorderVariantType, ActionCardVariantType } from './types';\n\nexport interface ActionCardProps extends Pick<ViewProps, 'testID'> {\n variant?: ActionCardVariantType;\n borderVariant?: ActionCardBorderVariantType;\n disabled?: boolean;\n children: ReactNode;\n /** @internal used by ActionCard.Pressable only */\n isHovered?: boolean;\n /** @internal used by ActionCard.Pressable only */\n isPressed?: boolean;\n /** @internal used by ActionCard.Pressable only */\n isFocused?: boolean;\n}\n\nexport function ActionCard({\n children,\n variant = 'secondary',\n borderVariant = 'none',\n disabled,\n testID,\n isHovered,\n isPressed,\n isFocused,\n}: ActionCardProps): ReactElement {\n return (\n <View testID={testID}>\n {disabled ? (\n <ActionCardDisabled variant={variant}>{children}</ActionCardDisabled>\n ) : (\n <ActionCardContentWrapper\n variant={variant}\n borderVariant={borderVariant}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n >\n {children}\n </ActionCardContentWrapper>\n )}\n </View>\n );\n}\n\nexport interface ActionCardPressableProps\n extends ActionCardProps,\n Pick<PressableProps, 'testID' | 'href' | 'hrefAttrs' | 'accessibilityRole' | 'onPress'> {\n /** @internal for story purpose */\n isHoveredInternal?: boolean;\n /** @internal for story purpose */\n isPressedInternal?: boolean;\n /** @internal for story purpose */\n isFocusedInternal?: boolean;\n}\n\nconst ActionCardPressable = forwardRef<typeof Pressable, ActionCardPressableProps>(\n (\n {\n children,\n variant = 'secondary',\n borderVariant = 'none',\n disabled,\n testID,\n href,\n hrefAttrs,\n accessibilityRole = 'button',\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onPress,\n }: ActionCardPressableProps,\n ref,\n ): ReactElement => {\n return (\n <Pressable\n ref={ref}\n accessibilityRole={accessibilityRole}\n disabled={disabled}\n testID={testID}\n href={href}\n hrefAttrs={hrefAttrs}\n width=\"100%\"\n onPress={onPress}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <ActionCard\n variant={variant}\n borderVariant={borderVariant}\n disabled={disabled}\n isHovered={isHovered || isHoveredInternal}\n isFocused={isFocused || isFocusedInternal}\n isPressed={isPressed || isPressedInternal}\n >\n {children}\n </ActionCard>\n )}\n </Pressable>\n );\n },\n);\n\nActionCard.Pressable = ActionCardPressable;\n","import type { ICenterProps, IStackProps } from 'native-base';\nimport {\n Center as NativeBaseCenter,\n HStack as NativeBaseHStack,\n Stack as NativeBaseStack,\n VStack as NativeBaseVStack,\n} from 'native-base';\nimport type { InterfaceStackProps } from 'native-base/lib/typescript/components/primitives/Stack/Stack';\nimport type { SafeAreaProps, SpaceType } from 'native-base/lib/typescript/components/types';\nimport type { ViewProps as NativeViewProps } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { KittResponsivePropOrValue } from '../KittBreakpoints';\nimport type {\n ForwardRefComponent,\n NativeBaseAcceptedBorderProps,\n NativeBaseAcceptedBorderRadiusProps,\n NativeBaseAcceptedChildrenProp,\n NativeBaseAcceptedColorsProps,\n NativeBaseAcceptedFlexboxProps,\n NativeBaseAcceptedLayoutProps,\n NativeBaseAcceptedPositionProps,\n NativeBaseAcceptedShadowProps,\n NativeBaseAcceptedSpaceProps,\n} from './acceptable-native-base-props';\n\ntype NativeBaseAcceptedStackProps = Extract<\n keyof InterfaceStackProps,\n | 'divider'\n | 'reversed'\n | 'direction'\n | 'isHovered'\n | 'isFocused'\n | 'isDisabled'\n | 'isInvalid'\n | 'isReadOnly'\n | keyof NativeViewProps\n | keyof SafeAreaProps\n>;\n\nexport interface StackProps\n extends Pick<\n IStackProps,\n | NativeBaseAcceptedChildrenProp\n | NativeBaseAcceptedStackProps\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {\n space?: KittResponsivePropOrValue<SpaceType>;\n}\n\nexport const Stack = NativeBaseStack as ForwardRefComponent<StackProps>;\n\nexport interface VStackProps extends Except<StackProps, 'direction'> {\n direction?: Extract<StackProps['direction'], 'column' | 'column-reverse'>;\n}\nexport const VStack = NativeBaseVStack as ForwardRefComponent<VStackProps>;\n\nexport interface HStackProps extends Except<StackProps, 'direction'> {\n direction?: Extract<StackProps['direction'], 'row' | 'row-reverse'>;\n}\nexport const HStack = NativeBaseHStack as ForwardRefComponent<HStackProps>;\n\nexport interface CenterProps\n extends Pick<\n ICenterProps,\n | keyof NativeViewProps\n | keyof SafeAreaProps\n | NativeBaseAcceptedChildrenProp\n | NativeBaseAcceptedSpaceProps\n | NativeBaseAcceptedColorsProps\n | NativeBaseAcceptedBorderProps\n | NativeBaseAcceptedBorderRadiusProps\n | NativeBaseAcceptedPositionProps\n | NativeBaseAcceptedShadowProps\n | NativeBaseAcceptedLayoutProps\n | NativeBaseAcceptedFlexboxProps\n > {}\n\nexport const Center = NativeBaseCenter as ForwardRefComponent<CenterProps>;\n","import type { KittBreakpointNameEnum } from '../../KittBreakpoints';\n\nexport type ResponsiveRecordValue<T> = { [key in KittBreakpointNameEnum]?: T };\nexport type ResponsiveValue<T> = T | ResponsiveRecordValue<T> | undefined;\n\nexport function createResponsiveStyleFromProp<PossibleStyleValue>(\n responsiveBooleanValue: ResponsiveValue<boolean | undefined>,\n valueIfTrue: PossibleStyleValue,\n valueIfFalse?: PossibleStyleValue,\n): ResponsiveValue<PossibleStyleValue> {\n // Handles simple boolean values\n if (!responsiveBooleanValue) return valueIfFalse;\n\n if (responsiveBooleanValue === true) return valueIfTrue;\n\n // Handles responsive value object\n const keys = Object.keys(responsiveBooleanValue) as KittBreakpointNameEnum[];\n\n if (keys.length === 0) return valueIfFalse;\n\n const responsiveValue = {} as ResponsiveRecordValue<PossibleStyleValue>;\n\n keys.forEach((breakpointName) => {\n responsiveValue[breakpointName] = responsiveBooleanValue[breakpointName] ? valueIfTrue : valueIfFalse;\n });\n\n return responsiveValue;\n}\n","export function warn(message: string): void {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(message);\n }\n}\n\nexport function deprecatedMessage(symbol: string, deprecation: string, replaceBy?: string): void {\n const replaceMessage = replaceBy === undefined ? '' : `, please use ${replaceBy} instead`;\n\n warn(`[Deprecation] in ${symbol}: ${deprecation} is deprecated${replaceMessage}.`);\n}\n\nexport function deprecatedInComponent(component: string, deprecation: string, replaceBy?: string): void {\n deprecatedMessage(`<${component} />`, deprecation, replaceBy);\n}\n","// eslint-disable-next-line no-restricted-imports\nimport { useBreakpointValue as useBreakpointValueNativeBaseBadlyTyped } from 'native-base';\nimport type { ITheme } from 'native-base';\nimport type { SetRequired } from 'type-fest';\n\nexport type { StyledProps } from 'native-base';\nexport { useClipboard, useSx, useToken } from 'native-base';\n\ntype UseBreakpointValueParam<T> = {\n [key in keyof ITheme['breakpoints']]?: T;\n};\n\nexport type BreakpointValueHookValues<T> = SetRequired<UseBreakpointValueParam<T>, 'base'>;\n\nexport const useBreakpointValue = useBreakpointValueNativeBaseBadlyTyped as <T>(\n values: BreakpointValueHookValues<T>,\n) => T;\n","import type { ButtonType, ButtonVariant } from '../Button';\n\ninterface GetCurrentBackgroundColorParams {\n type: ButtonType;\n variant: ButtonVariant;\n isDisabled?: boolean;\n isHovered?: boolean;\n isPressed?: boolean;\n}\n\nexport function getCurrentBackgroundColorForNativeBaseTheme({\n type,\n variant,\n isDisabled,\n isHovered,\n isPressed,\n}: GetCurrentBackgroundColorParams): string {\n if (isDisabled) return 'kitt.button.disabled.default.backgroundColor';\n\n const baseKey = `kitt.button.${type}.${variant}`;\n\n if (isHovered || isPressed) {\n return `${baseKey}.hoverBackgroundColor`;\n }\n\n return `${baseKey}.backgroundColor`;\n}\n","interface GetCurrentScaleParams {\n hoverScaleValue: number;\n pressedScaleValue: number;\n isDisabled?: boolean;\n isHovered?: boolean;\n isPressed?: boolean;\n}\n\nexport function getCurrentScale({\n hoverScaleValue,\n pressedScaleValue,\n isDisabled,\n isHovered,\n isPressed,\n}: GetCurrentScaleParams): number {\n if (isDisabled) return 1;\n\n if (isPressed) {\n return pressedScaleValue;\n }\n\n if (isHovered) {\n return hoverScaleValue;\n }\n\n return 1;\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport { useBreakpointValue } from '../native-base/utils';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { AnimatedContainerProps } from './AnimatedContainer';\nimport { getCurrentBackgroundColorForNativeBaseTheme } from './utils/getCurrentBackgroundColorForNativeBaseTheme';\nimport { getCurrentScale } from './utils/getCurrentScale';\n\nexport function AnimatedContainer({\n children,\n type,\n variant,\n isHovered,\n isPressed,\n isStretch,\n disabled,\n}: AnimatedContainerProps): ReactElement {\n const theme = useTheme();\n\n const {\n transition: { duration, timingFunction },\n scale,\n } = theme.kitt.button;\n\n const responsiveHoverScaleValue = useBreakpointValue({\n base: scale.base.hover,\n medium: scale.medium.hover,\n });\n\n const currentScale = getCurrentScale({\n hoverScaleValue: responsiveHoverScaleValue,\n pressedScaleValue: scale.base.active,\n isHovered,\n isPressed,\n isDisabled: !!disabled,\n });\n\n const currentBackgroundColor = getCurrentBackgroundColorForNativeBaseTheme({\n type,\n variant,\n isDisabled: !!disabled,\n isHovered,\n isPressed,\n });\n\n return (\n <View\n _web={{\n style: {\n transitionProperty: 'all',\n transitionDuration: duration,\n transitionTimingFunction: timingFunction,\n /* Simplifies the animation to just the front of the object – avoid blurry scale */\n backfaceVisibility: 'hidden',\n transform: [\n {\n scale: currentScale,\n },\n ],\n },\n }}\n width={createResponsiveStyleFromProp(isStretch, '100%', 'auto')}\n alignSelf=\"baseline\"\n borderRadius=\"kitt.button.borderRadius\"\n backgroundColor={currentBackgroundColor}\n >\n {children}\n </View>\n );\n}\n","export const KittBreakpoints = {\n /**\n * min-width: 0\n */\n BASE: 0,\n /**\n * min-width: 480px\n */\n SMALL: 480,\n /**\n * min-width: 768px\n */\n MEDIUM: 768,\n /**\n * min-width: 1024px\n */\n LARGE: 1024,\n /**\n * min-width: 1280px\n */\n WIDE: 1280,\n};\n\nexport const KittBreakpointsMax = {\n /**\n * max-width: 479px\n */\n BASE: KittBreakpoints.SMALL - 1,\n /**\n * max-width: 767px\n */\n SMALL: KittBreakpoints.MEDIUM - 1,\n /**\n * max-width: 1023px\n */\n MEDIUM: KittBreakpoints.LARGE - 1,\n /**\n * max-width: 1279px\n */\n LARGE: KittBreakpoints.WIDE - 1,\n};\n\nexport type KittBreakpoint = (typeof KittBreakpoints)[keyof typeof KittBreakpoints];\nexport type KittBreakpointMax = (typeof KittBreakpointsMax)[keyof typeof KittBreakpointsMax];\n\nexport enum KittBreakpointNameEnum {\n BASE = 'base',\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n WIDE = 'wide',\n}\n\nexport type KittResponsiveProp<Value> = Record<KittBreakpointNameEnum.BASE, Value> &\n Partial<Record<Exclude<KittBreakpointNameEnum, KittBreakpointNameEnum.BASE>, Value>>;\n\nexport type KittResponsivePropOrValue<Value> = KittResponsiveProp<Value> | Value;\n","export const typographyColors = [\n 'black',\n 'black-anthracite',\n 'black-disabled',\n 'black-light',\n 'white',\n 'white-light',\n 'primary',\n 'primary-light',\n 'accent',\n 'success',\n 'danger',\n 'warning',\n] as const;\n","import type { TypographyColor } from '../Typography';\n\nexport function getNBThemeColorFromColorProps(colorName: TypographyColor): string {\n return `kitt.typography.${colorName}`;\n}\n","import type { ITextProps } from 'native-base';\nimport type { ExtendedTypographyColor, TypographyColor } from '../Typography';\nimport { typographyColors } from '../typographyColors';\nimport { getNBThemeColorFromColorProps } from './getNBThemeColorFromColorProps';\n\nexport function isColorTypographyColor(colorName: unknown): colorName is TypographyColor {\n if (!colorName || typeof colorName !== 'string') return false;\n\n return (typographyColors as readonly string[]).includes(colorName);\n}\n\nexport function getTypographyColorValue(colorName: ExtendedTypographyColor | undefined): ITextProps['color'] {\n if (!colorName) return undefined;\n\n if (isColorTypographyColor(colorName)) {\n return getNBThemeColorFromColorProps(colorName);\n }\n\n return colorName;\n}\n","import type { TypographyHeaderType, TypographyType } from '../Typography';\n\nexport const isTypeHeader = (type: TypographyType): type is TypographyHeaderType => type.startsWith('header');\n","import type { TypographyHeaderType, TypographyType } from '../Typography';\nimport { isTypeHeader } from './isTypeHeader';\n\nexport const isTypographyHeader = (\n type: TypographyType | undefined,\n isHeaderTypographyInContext: boolean | undefined,\n): type is TypographyHeaderType => {\n if (type) return isTypeHeader(type);\n if (isHeaderTypographyInContext != null) return isHeaderTypographyInContext;\n throw new Error('You must set a \"base\" prop or wrap this Typography in one that does.');\n};\n","import type { ITextProps } from 'native-base';\nimport { Text as NBText, useSx } from 'native-base';\nimport type { PlatformProps } from 'native-base/lib/typescript/components/types';\nimport type { FC, ReactElement, ReactNode } from 'react';\nimport { createContext, useContext } from 'react';\nimport type { TextProps, TextStyle } from 'react-native';\nimport { Platform } from 'react-native';\nimport type { Except, SetOptional } from 'type-fest';\nimport type { KittResponsiveProp } from '../KittBreakpoints';\nimport { KittBreakpointNameEnum } from '../KittBreakpoints';\nimport type { NativeBaseAcceptedFlexboxProps } from '../native-base/acceptable-native-base-props';\nimport type { TypographyTypeConfig } from '../themes/late-ocean/typography';\nimport type { typographyColors } from './typographyColors';\nimport { getTypographyColorValue } from './utils/getTypographyColorValue';\nimport { isTypeHeader } from './utils/isTypeHeader';\nimport { isTypographyHeader } from './utils/isTypographyHeader';\n\nexport type TypographyColor = (typeof typographyColors)[number];\n\n// eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents\nexport type ExtendedTypographyColor = TypographyColor | NonNullable<ITextProps['color']> | string;\n\nexport type TypographyHeaderType = `header${'1' | '2' | '3' | '4' | '5'}`;\nexport type TypographyBodyType = 'body' | `body-${'large' | 'medium' | 'small' | 'xsmall'}`;\nexport type TypographyType = TypographyHeaderType | TypographyBodyType;\ntype TypographyVariant = 'regular' | 'bold';\n\nconst IsHeaderTypographyContext = createContext<boolean | undefined>(undefined);\nconst TypographyColorContext = createContext<ExtendedTypographyColor>('black');\n\nexport function useTypographyColor(): ExtendedTypographyColor {\n return useContext(TypographyColorContext);\n}\n\nconst TypographyDefaultColorContext = createContext<ExtendedTypographyColor | undefined>(undefined);\n\nfunction useTypographyDefaultColor(): ExtendedTypographyColor | undefined {\n return useContext(TypographyDefaultColorContext);\n}\n\nexport function getTypographyTypeConfigKeyFromTypeName(\n breakpointName: KittBreakpointNameEnum,\n): keyof TypographyTypeConfig {\n return breakpointName === KittBreakpointNameEnum.BASE || breakpointName === KittBreakpointNameEnum.SMALL\n ? 'baseAndSmall'\n : 'mediumAndWide';\n}\n\nexport type TypographyBreakpointType = Partial<KittResponsiveProp<TypographyType>>;\n\ntype NativeBaseTextPropsAcceptedProps = Pick<\n ITextProps,\n | keyof Except<TextProps, 'accessibilityRole'>\n | 'textAlign'\n | 'textTransform'\n | 'underline'\n | NativeBaseAcceptedFlexboxProps\n> &\n Pick<TextStyle, 'cursor' | 'transitionProperty' | 'transitionDuration' | 'transitionTimingFunction'>;\n// TODO[native-base@>=3.4.19] this currently does not work. Retest when updating native-base.\n// & {\n// _active?: Pick<NativeBaseTextPropsAcceptedProps, 'underline'>;\n// _hover?: Pick<NativeBaseTextPropsAcceptedProps, 'underline'>;\n// } ;\n\nexport interface TypographyProps\n extends TypographyBreakpointType,\n NativeBaseTextPropsAcceptedProps,\n Pick<PlatformProps<NativeBaseTextPropsAcceptedProps>, '_android' | '_ios' | '_web'> {\n type?: TypographyBreakpointType;\n // Find mapping for web here: https://www.w3.org/TR/html-aria/\n accessibilityRole: NonNullable<TextProps['accessibilityRole']> | 'paragraph' | null;\n /** Default to regular for bodies and bold of headers. Is not inherited. */\n variant?: TypographyVariant;\n /** Inherited from parent Typography if not specified, or black if no Typography parent found. */\n color?: ExtendedTypographyColor;\n children: ReactNode;\n}\nexport type TypographyPropsWithoutRole = Except<TypographyProps, 'accessibilityRole'>;\n\nexport function createNativeBaseFontSize(type: TypographyBreakpointType): ITextProps['fontSize'] {\n const typeWithMediumForced = {\n ...type,\n medium: type.medium || type.small || type.base,\n };\n\n const fontSizeForNativeBase: ITextProps['fontSize'] = {};\n [\n KittBreakpointNameEnum.BASE,\n KittBreakpointNameEnum.SMALL,\n KittBreakpointNameEnum.MEDIUM,\n KittBreakpointNameEnum.LARGE,\n KittBreakpointNameEnum.WIDE,\n ].forEach((typeName) => {\n const value = typeWithMediumForced[typeName];\n if (value) {\n fontSizeForNativeBase[typeName] = `${getTypographyTypeConfigKeyFromTypeName(typeName)}.${value}`;\n }\n });\n\n return fontSizeForNativeBase;\n}\n\nexport function Typography({\n accessibilityRole,\n base: legacyBase,\n small: legacySmall,\n medium: legacyMedium,\n large: legacyLarge,\n wide: legacyWide,\n type = { base: legacyBase, small: legacySmall, medium: legacyMedium, large: legacyLarge, wide: legacyWide },\n variant,\n color,\n ...otherProps\n}: TypographyProps): ReactElement | null {\n const sx = useSx();\n\n const isHeaderTypographyInContext = useContext(IsHeaderTypographyContext);\n\n const defaultColor = useTypographyDefaultColor();\n\n const hasTypographyAncestor = isHeaderTypographyInContext !== undefined;\n const baseOrDefaultToBody = hasTypographyAncestor ? type.base : type.base ?? 'body';\n const isHeader = isTypographyHeader(baseOrDefaultToBody, isHeaderTypographyInContext);\n const nonNullableVariant: TypographyVariant = variant ?? (isHeader ? 'bold' : 'regular');\n\n const fontSizeForNativeBase = createNativeBaseFontSize({ ...type, base: baseOrDefaultToBody });\n\n const currentColor = !color && !hasTypographyAncestor ? defaultColor : color;\n\n const colorStyles = sx({\n color: getTypographyColorValue(currentColor),\n textDecorationColor: getTypographyColorValue(currentColor),\n });\n\n if (process.env.NODE_ENV !== 'production') {\n Object.entries(type).forEach(([key, value]) => {\n if (value && isTypeHeader(value) !== isHeader) {\n throw new Error(\n `Invalid value for \"${key}\": \"${value}\" is ${isHeader ? 'not' : ''} an header. Don't mix headers and bodies.`,\n );\n }\n });\n }\n\n const text = (\n <NBText\n accessibilityRole={(accessibilityRole as TextProps['accessibilityRole']) || undefined}\n fontSize={fontSizeForNativeBase}\n lineHeight={hasTypographyAncestor ? undefined : fontSizeForNativeBase}\n fontWeight={isHeader ? `headers.${nonNullableVariant}` : `bodies.${nonNullableVariant}`}\n fontFamily={isHeader ? `headers.${nonNullableVariant}` : `bodies.${nonNullableVariant}`}\n {...colorStyles}\n {...otherProps}\n />\n );\n\n const content = baseOrDefaultToBody ? (\n <IsHeaderTypographyContext.Provider value={isHeader}>{text}</IsHeaderTypographyContext.Provider>\n ) : (\n text\n );\n\n return color ? <TypographyColorContext.Provider value={color}>{content}</TypographyColorContext.Provider> : content;\n}\n\nexport type TypographyTextProps = SetOptional<TypographyProps, 'accessibilityRole'>;\nfunction TypographyText(props: TypographyTextProps): ReactElement {\n return <Typography accessibilityRole={null} {...props} />;\n}\n\nfunction TypographyParagraph(props: TypographyTextProps): ReactElement {\n // role 'paragraph' does not exist in native, it's a web feature only.\n return <Typography accessibilityRole={Platform.OS === 'web' ? 'paragraph' : null} {...props} />;\n}\n\nexport type TypographyHeadingProps = TypographyPropsWithoutRole;\n\nconst createHeading = (\n level: number,\n /** @deprecated accessibility and design should be independent */\n defaultBase?: TypographyHeadingProps['base'],\n): FC<TypographyHeadingProps> => {\n // https://github.com/necolas/react-native-web/issues/401\n function TypographyHeading(props: TypographyHeadingProps): ReactElement {\n return <Typography accessibilityRole=\"header\" base={defaultBase} {...props} accessibilityLevel={level} />;\n }\n TypographyHeading.displayName = `TypographyHeading${level}`;\n return TypographyHeading;\n};\n\nTypography.SetDefaultColor = TypographyDefaultColorContext.Provider;\n\nTypography.Text = TypographyText;\nTypography.Paragraph = TypographyParagraph;\nTypography.Header1 = createHeading(1);\nTypography.Header2 = createHeading(2);\nTypography.Header3 = createHeading(3);\nTypography.Header4 = createHeading(4);\nTypography.Header5 = createHeading(5);\nTypography.Header6 = createHeading(6);\n\n/** @deprecated use Typography.Header1 */\nTypography.h1 = createHeading(1, 'header1');\n/** @deprecated use Typography.Header2 */\nTypography.h2 = createHeading(2, 'header2');\n/** @deprecated use Typography.Header3 */\nTypography.h3 = createHeading(3, 'header3');\n/** @deprecated use Typography.Header4 */\nTypography.h4 = createHeading(4, 'header4');\n/** @deprecated use Typography.Header6 */\nTypography.h5 = createHeading(5, 'header5');\n","import type { ReactElement } from 'react';\nimport { cloneElement } from 'react';\nimport type { ViewStyle } from 'react-native';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface IconProps {\n icon: ReactElement;\n size?: ViewProps['size'];\n color: string;\n align?: ViewStyle['alignSelf'];\n testID?: ViewProps['testID'];\n}\n\nexport function Icon({ icon, size = 'kitt.icon.defaultSize', align = 'auto', color }: IconProps): ReactElement {\n const clonedIcon = cloneElement(icon, { color });\n\n return (\n <View color={color} alignSelf={align} size={size}>\n {clonedIcon}\n </View>\n );\n}\n","import { useSx } from 'native-base';\nimport type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport type { IconProps } from '../Icon/Icon';\nimport { Icon } from '../Icon/Icon';\nimport type { SetNonNullable } from '../utils/typeUtils';\nimport type { TypographyProps } from './Typography';\nimport { useTypographyColor } from './Typography';\nimport { getTypographyColorValue } from './utils/getTypographyColorValue';\n\nexport interface TypographyIconProps extends Except<IconProps, 'color'> {\n color?: TypographyProps['color'] | 'inherit';\n}\n\nfunction TypographyIconSpecifiedColor({ color, ...props }: SetNonNullable<TypographyIconProps, 'color'>): ReactElement {\n const sx = useSx();\n\n const colorStyle = sx({\n color: getTypographyColorValue(color),\n });\n\n return <Icon {...props} {...colorStyle} />;\n}\n\nfunction TypographyIconInheritColor(props: TypographyIconProps): ReactElement {\n const color = useTypographyColor();\n\n return <TypographyIconSpecifiedColor color={color} {...props} />;\n}\n\nexport function TypographyIcon({ color, ...props }: TypographyIconProps): ReactElement {\n if (color) {\n return <TypographyIconSpecifiedColor color={color} {...props} />;\n }\n\n return <TypographyIconInheritColor {...props} />;\n}\n","import type { TypographyColor } from '../../typography/Typography';\nimport type { ButtonType, ButtonVariant } from '../Button';\n\nexport const getTextColorByType = (\n type: ButtonType,\n variant: ButtonVariant,\n isHovered: boolean,\n isPressed: boolean,\n): TypographyColor => {\n const isButtonInteractedWith = isHovered || isPressed;\n\n switch (type) {\n case 'primary':\n return variant === 'ghost' ? 'primary' : 'white';\n case 'white':\n return 'white';\n case 'danger':\n return 'danger';\n case 'subtle':\n return isButtonInteractedWith ? 'primary-light' : 'primary';\n case 'subtle-dark':\n return isButtonInteractedWith ? 'black-light' : 'black';\n case 'default':\n return variant === 'ghost' ? 'white' : 'black';\n default:\n return 'black';\n }\n};\n","import type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { TypographyIconProps } from '../typography/TypographyIcon';\nimport { TypographyIcon } from '../typography/TypographyIcon';\nimport type { ButtonProps, ButtonType, ButtonVariant } from './Button';\nimport { getTextColorByType } from './utils/getTextColorByType';\n\ninterface ButtonIconProps {\n icon: NonNullable<ButtonContentProps['icon']>;\n iconPosition: ButtonContentProps['iconPosition'];\n color: TypographyIconProps['color'];\n testID?: string;\n}\n\nfunction ButtonIcon({ icon, color, iconPosition, testID }: ButtonIconProps): ReactElement | null {\n return (\n <View marginRight={iconPosition === 'left' ? 'kitt.2' : 0} marginLeft={iconPosition === 'right' ? 'kitt.2' : 0}>\n <TypographyIcon icon={icon} testID={testID} color={color} />\n </View>\n );\n}\n\ninterface ButtonContentProps extends Except<ButtonProps, 'onPress' | 'disabled' | 'stretch'> {\n isDisabled?: boolean;\n type: NonNullable<ButtonType>;\n variant: NonNullable<ButtonVariant>;\n isHovered: boolean;\n isPressed: boolean;\n isFocused: boolean;\n}\n\ninterface ButtonContentChildrenProps extends Except<ButtonProps, 'onPress' | 'disabled' | 'stretch'> {\n isDisabled?: boolean;\n type: NonNullable<ButtonType>;\n color: TypographyColor;\n}\n\nexport function ButtonContentChildren({\n type,\n icon,\n iconPosition,\n color,\n children,\n}: ButtonContentChildrenProps): ReactElement | null {\n if (__DEV__) {\n if (!(children || icon)) {\n throw new Error('kitt(Button): You should provide at least a children or a icon');\n }\n }\n\n if (!children) {\n return (\n <TypographyIcon\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n icon={icon!}\n color={color}\n />\n );\n }\n\n const buttonIconSharedProps = {\n type,\n iconPosition,\n color,\n };\n\n // Make the multilines case work properly on native - Breaks the web implem\n const sharedNativeStyle = {\n flexShrink: 1,\n };\n\n return (\n <View alignItems=\"center\" justifyContent=\"center\" flexDirection=\"row\">\n {icon && iconPosition === 'left' ? (\n <ButtonIcon {...buttonIconSharedProps} testID=\"button.ButtonContent.leftButtonIcon\" icon={icon} />\n ) : null}\n\n <Typography.Text\n /* On native code, this is the only way to ensure that the text is centered */\n textAlign=\"center\"\n _android={sharedNativeStyle}\n _ios={sharedNativeStyle}\n base=\"body\"\n variant=\"bold\"\n color={color}\n >\n {children}\n </Typography.Text>\n\n {icon && iconPosition === 'right' ? <ButtonIcon {...buttonIconSharedProps} icon={icon} /> : null}\n </View>\n );\n}\n\nexport function ButtonContent({\n type,\n variant,\n isDisabled,\n icon,\n children,\n isHovered,\n isPressed,\n isFocused,\n ...props\n}: ButtonContentProps): ReactElement {\n const color = isDisabled ? 'black-light' : getTextColorByType(type, variant, isHovered, isPressed);\n\n return (\n <View\n _web={{\n // Make the multilines case work properly on web\n // We don't apply those styles on native because it will break\n flexGrow: 0,\n flexShrink: 1,\n flexBasis: 'auto',\n }}\n >\n <ButtonContentChildren icon={icon} type={type} isDisabled={isDisabled} color={color} {...props}>\n {children}\n </ButtonContentChildren>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { ButtonTheme } from '../themes/late-ocean/button';\nimport type { ButtonSize } from './Button';\n\ninterface GetCurrentPaddingConfigParams {\n size?: ButtonSize;\n isDisabled?: boolean;\n}\n\nfunction getCurrentPaddingConfig({ size, isDisabled }: GetCurrentPaddingConfigParams): keyof ButtonTheme['padding'] {\n if (size === 'large') return 'large';\n if (size === 'xLarge') return 'xLarge';\n if (isDisabled) return 'disabled';\n\n return 'default';\n}\n\ninterface ButtonPaddingProps {\n children: ReactNode;\n size?: ButtonSize;\n isDisabled?: boolean;\n}\n\nexport function ButtonPadding({ children, size, isDisabled }: ButtonPaddingProps): ReactElement {\n const currentPaddingKey = getCurrentPaddingConfig({ size, isDisabled });\n\n return (\n <View\n position=\"relative\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"center\"\n paddingX={`kitt.button.padding.${currentPaddingKey}.horizontal`}\n paddingY={`kitt.button.padding.${currentPaddingKey}.vertical`}\n minHeight=\"kitt.button.minHeight\"\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { View } from '../native-base/primitives';\n\nexport function DisabledBorder(): ReactElement {\n return (\n <View\n position=\"absolute\"\n top={0}\n left={0}\n right={0}\n bottom={0}\n borderWidth=\"kitt.button.borderWidth.disabled\"\n borderColor=\"kitt.button.disabled.default.borderColor\"\n borderRadius=\"kitt.button.borderRadius\"\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ButtonType, ButtonVariant } from './Button';\n\ninterface FocusBorderProps {\n type: ButtonType;\n variant: ButtonVariant;\n isFocused?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n}\n\nexport function FocusBorder({ type, variant, isFocused, isHovered, isPressed }: FocusBorderProps): ReactElement {\n const {\n kitt: { button: buttonTheme },\n } = useTheme();\n\n const hasPointerInteraction = isPressed || isHovered;\n\n return (\n <View\n _web={{\n style: {\n width: `calc(100% + ${buttonTheme.borderWidth.focus * 2}px)`,\n height: `calc(100% + ${buttonTheme.borderWidth.focus * 2}px)`,\n transitionProperty: 'opacity',\n transitionDuration: buttonTheme.transition.duration,\n transitionTimingFunction: buttonTheme.transition.timingFunction,\n },\n }}\n opacity={isFocused && !hasPointerInteraction ? 1 : 0}\n position=\"absolute\"\n left={-buttonTheme.borderWidth.focus}\n top={-buttonTheme.borderWidth.focus}\n borderWidth=\"kitt.button.borderWidth.focus\"\n borderColor={`kitt.button.${type}.${variant}.focusBorderColor`}\n borderRadius=\"kitt.button.borderRadius\"\n />\n );\n}\n","import type { NativeAnimation, UseNativeAnimationOptions } from './useNativeAnimation';\n\nexport function useNativeAnimation(options: UseNativeAnimationOptions): NativeAnimation {\n return {\n onPressIn: undefined,\n onPressOut: undefined,\n animatedStyles: {},\n };\n}\n","import type { ButtonProps } from '../Button';\n\nexport const getButtonSize = ({ large, xLarge, size }: Partial<ButtonProps>): ButtonProps['size'] => {\n if (large) return 'large';\n if (xLarge) return 'xLarge';\n return size;\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { PressableProps } from 'react-native';\nimport type { View } from '../native-base/primitives';\nimport { Pressable } from '../native-base/primitives';\nimport type { ResponsiveValue } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { deprecatedInComponent } from '../utils/warnings';\nimport { AnimatedContainer } from './AnimatedContainer';\nimport { ButtonContent } from './ButtonContent';\nimport { ButtonPadding } from './ButtonPadding';\nimport { DisabledBorder } from './DisabledBorder';\nimport { FocusBorder } from './FocusBorder';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\nimport { getButtonSize } from './utils/getButtonSize';\n\nexport type SubtleButtonType = 'subtle' | 'subtle-dark';\nexport type ButtonType = 'primary' | 'default' | SubtleButtonType | 'white' | 'danger';\nexport type ButtonSize = 'large' | 'xLarge';\nexport type ButtonVariant = 'default' | 'ghost';\n\ntype IconPosition = 'right' | 'left';\n\nconst allowedGhostTypes = ['primary', 'default', 'danger'];\n\nexport interface ButtonProps {\n children?: ReactNode;\n type?: ButtonType;\n variant?: ButtonVariant;\n disabled?: boolean;\n stretch?: ResponsiveValue<boolean | undefined>;\n /**\n * @deprecated use `size` instead\n */\n large?: boolean;\n /**\n * @deprecated use `size` instead\n */\n xLarge?: boolean;\n size?: ButtonSize;\n icon?: ReactElement;\n iconPosition?: IconPosition;\n testID?: PressableProps['testID'];\n href?: PressableProps['href'];\n hrefAttrs?: PressableProps['hrefAttrs'];\n accessibilityRole?: PressableProps['accessibilityRole'];\n /**\n * @deprecated props className is not supported\n */\n className?: string;\n style?: PressableProps['style'];\n /** @internal for story purpose */\n isHoveredInternal?: boolean;\n /** @internal for story purpose */\n isPressedInternal?: boolean;\n /** @internal for story purpose */\n isFocusedInternal?: boolean;\n onPress?: PressableProps['onPress'];\n}\n\nexport const Button = forwardRef<typeof View, ButtonProps>(\n (\n {\n children,\n type = 'default',\n variant = 'default',\n disabled,\n stretch,\n large,\n xLarge,\n icon,\n size: sizeProp,\n iconPosition = 'left',\n testID,\n href,\n hrefAttrs,\n accessibilityRole = 'button',\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onPress,\n }: ButtonProps,\n ref,\n ): ReactElement => {\n const { onPressIn, onPressOut, animatedStyles } = useNativeAnimation({\n type,\n variant,\n });\n\n if (__DEV__ && variant === 'ghost' && !allowedGhostTypes.includes(type)) {\n throw new Error('variant=ghost is only allowed with type=primary or default');\n }\n\n if (large || xLarge) {\n const deprecatedProp = large ? 'large' : 'xLarge';\n deprecatedInComponent('Button', `${deprecatedProp} prop`, 'size');\n }\n\n const size = getButtonSize({ large, xLarge, size: sizeProp });\n\n return (\n <Pressable\n ref={ref}\n disabled={disabled}\n accessibilityRole={accessibilityRole}\n testID={testID}\n href={href}\n hrefAttrs={hrefAttrs}\n /* Emulate inline-* css display by making the button taking only its necessary space */\n alignSelf={createResponsiveStyleFromProp(stretch, undefined, 'flex-start')}\n minWidth=\"kitt.button.minWidth\"\n maxWidth={createResponsiveStyleFromProp(stretch, '100%', 'kitt.button.maxWidth')}\n width={createResponsiveStyleFromProp(stretch, '100%', 'auto')}\n onPress={onPress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <AnimatedContainer\n animatedStyles={animatedStyles}\n type={type}\n isHovered={isHovered || isHoveredInternal}\n isPressed={isPressed || isPressedInternal}\n disabled={!!disabled}\n variant={variant}\n isStretch={stretch}\n >\n <ButtonPadding size={size} isDisabled={disabled}>\n <ButtonContent\n type={type}\n variant={variant}\n isDisabled={disabled}\n icon={icon}\n iconPosition={iconPosition}\n isHovered={isHovered}\n isPressed={isPressed}\n isFocused={isFocused}\n >\n {children}\n </ButtonContent>\n {disabled ? <DisabledBorder /> : null}\n <FocusBorder\n type={type}\n variant={variant}\n isFocused={isFocused || isFocusedInternal}\n isHovered={isHovered}\n isPressed={isPressed}\n />\n </ButtonPadding>\n </AnimatedContainer>\n )}\n </Pressable>\n );\n },\n);\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { cloneElement } from 'react';\nimport type { SpinningIconProps } from './SpinningIcon';\n\nconst spinningIcon = css`\n display: inline-flex;\n\n & > svg {\n animation: spin 1.1s infinite linear;\n }\n\n @keyframes spin {\n 0% {\n transform: rotate(-1deg);\n }\n\n 100% {\n transform: rotate(359deg);\n }\n }\n`;\n\nexport function SpinningIcon({ icon, color }: SpinningIconProps): ReactElement {\n const clonedIcon = cloneElement(icon, { color });\n return <div className={spinningIcon}>{clonedIcon}</div>;\n}\n","import { ArcIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport type { SpinningIconProps } from '../Icon/SpinningIcon';\nimport { SpinningIcon } from '../Icon/SpinningIcon';\n\nexport interface LoaderIconProps {\n color?: SpinningIconProps['color'];\n}\n\nexport function LoaderIcon({ color }: LoaderIconProps): ReactElement {\n return <SpinningIcon color={color} icon={<ArcIcon />} />;\n}\n","import type { ComponentProps, ElementType, ReactElement, VoidFunctionComponent } from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport type { ButtonProps } from '../Button/Button';\nimport { LoaderIcon } from '../LoaderIcon/LoaderIcon';\nimport { View } from '../native-base/primitives';\n\ninterface ActionsItemMinimumRequiredProps extends Pick<ButtonProps, 'onPress'> {}\n\nexport interface ActionsItemProps<C extends VoidFunctionComponent<any>> {\n readonly onPress?: (\n e: Parameters<NonNullable<ButtonProps['onPress']>>[0],\n // eslint-disable-next-line @typescript-eslint/no-invalid-void-type\n ) => Promise<void | undefined | null> | void | undefined | null;\n readonly as: C;\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-types\ntype ActionsItemSendableComponentProps<C extends VoidFunctionComponent<any>> = Omit<\n ComponentProps<C>,\n keyof ActionsItemProps<C> & keyof ActionsItemMinimumRequiredProps\n>;\n\nexport function ActionsItem<C extends VoidFunctionComponent<any>>({\n as,\n onPress,\n disabled,\n icon,\n stretch = { base: true, medium: false },\n ...props\n}: ActionsItemProps<C> & ActionsItemSendableComponentProps<C>): ReactElement {\n const [isLoading, setIsLoading] = useState(false);\n const mountedRef = useRef(false);\n\n // effect just for tracking mounted state, as onPress can unmount the ActionButton\n useEffect(() => {\n mountedRef.current = true;\n return () => {\n mountedRef.current = false;\n };\n }, []);\n\n const handlePress: ButtonProps['onPress'] = (e) => {\n const callPressAndUpdateLoadingState = async (): Promise<void> => {\n if (!onPress) return;\n setIsLoading(true);\n try {\n await onPress(e);\n if (mountedRef.current) {\n setIsLoading(false);\n }\n } catch (error) {\n if (mountedRef.current) {\n setIsLoading(false);\n }\n throw error;\n }\n };\n\n callPressAndUpdateLoadingState();\n };\n\n const Component: ElementType = as;\n\n return (\n <View>\n <Component\n {...props}\n stretch={stretch}\n disabled={isLoading ? true : disabled}\n icon={isLoading ? <LoaderIcon /> : icon}\n onPress={handlePress}\n />\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ButtonProps } from '../Button/Button';\nimport { Button } from '../Button/Button';\nimport type { ActionsItemProps } from './ActionsItem';\nimport { ActionsItem } from './ActionsItem';\n\nexport interface ActionsButtonProps\n extends Except<ButtonProps, 'onPress'>,\n Pick<ActionsItemProps<typeof Button>, 'onPress'> {}\n\nexport function ActionsButton({ ...props }: ActionsButtonProps): ReactElement {\n return <ActionsItem as={Button} {...props} />;\n}\n","import type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport { Stack } from '../native-base/layout';\nimport type { StackProps } from '../native-base/layout';\nimport type { ResponsiveValue } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { ActionsButton } from './ActionsButton';\nimport { ActionsItem } from './ActionsItem';\n\ntype ActionsLayout = 'column' | 'row';\n\nfunction getCurrentLayout(layout: ActionsLayout | undefined): StackProps['alignItems'] {\n if (!layout) return { base: 'stretch', medium: 'center' };\n\n if (layout === 'column') return 'stretch';\n\n return 'center';\n}\n\nfunction getCurrentDirection(layout: ActionsLayout | undefined): StackProps['direction'] {\n if (!layout) return { base: 'column', medium: 'row' };\n\n if (layout === 'column') return 'column';\n\n return 'row';\n}\n\nfunction getCurrentAlignSelf(layout: ActionsLayout | undefined): StackProps['alignSelf'] {\n if (!layout) return { base: 'stretch', medium: undefined };\n\n if (layout === 'column') return 'stretch';\n\n return undefined;\n}\n\nexport interface ActionsProps extends Except<StackProps, 'space' | 'reversed'> {\n layout?: ActionsLayout;\n reversed?: ResponsiveValue<boolean | undefined>;\n}\n\nexport function Actions({ children, layout, reversed, ...props }: ActionsProps): ReactElement {\n const currentAlignItems = getCurrentLayout(layout);\n const currentDirection = getCurrentDirection(layout);\n const currentAlignSelf = getCurrentAlignSelf(layout);\n\n return (\n <Stack\n alignItems={currentAlignItems}\n alignSelf={currentAlignSelf}\n direction={currentDirection}\n flexGrow={1}\n reversed={!!createResponsiveStyleFromProp(reversed, true, false)}\n {...props}\n space=\"kitt.3\"\n >\n {children}\n </Stack>\n );\n}\n\nActions.Button = ActionsButton;\nActions.Item = ActionsItem;\n","import { defaultAvatarSize, largeAvatarSize } from '../../themes/late-ocean/avatar';\nimport type { AvatarSizeVariant } from '../Avatar';\n\ninterface GetCurrentRadiusParams {\n size?: number;\n sizeVariant?: AvatarSizeVariant;\n round?: boolean;\n}\n\nexport function getCurrentRadius({ size, sizeVariant, round }: GetCurrentRadiusParams): string | number {\n if (round) {\n if (size) return size * 0.5;\n\n if (sizeVariant === 'large') return largeAvatarSize * 0.5;\n\n return defaultAvatarSize * 0.5;\n }\n\n if (sizeVariant === 'large') return 'kitt.avatar.large.borderRadius';\n\n return 'kitt.avatar.borderRadius';\n}\n","import type { AvatarSizeVariant } from '../Avatar';\n\ninterface GetCurrentSizeParams {\n size?: number;\n sizeVariant?: AvatarSizeVariant;\n}\n\nexport function getCurrentSize({ size, sizeVariant }: GetCurrentSizeParams): string | number {\n if (size) return size;\n\n if (sizeVariant === 'large') return 'kitt.avatar.large.size';\n\n return 'kitt.avatar.size';\n}\n","import { defaultAvatarIconSize, largeAvatarIconSize } from '../../themes/late-ocean/avatar';\nimport type { AvatarSizeVariant } from '../Avatar';\n\nexport function getIconSize(size: string | number, sizeVariant?: AvatarSizeVariant): number {\n if (typeof size === 'number') return size * 0.5;\n\n if (sizeVariant === 'large') return largeAvatarIconSize;\n\n return defaultAvatarIconSize;\n}\n","export function getInitials(firstname: string, lastname: string): string {\n return `${firstname[0]}${lastname[0]}`.toUpperCase();\n}\n","import { UserIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { Icon } from '../Icon/Icon';\nimport { Image, View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { getCurrentRadius } from './utils/getCurrentRadius';\nimport { getCurrentSize } from './utils/getCurrentSize';\nimport { getIconSize } from './utils/getIconSize';\nimport { getInitials } from './utils/getInitials';\n\nexport type AvatarSizeVariant = 'large';\n\ninterface AvatarContentProps extends Omit<AvatarProps, 'light' | 'round' | 'size'> {\n size: string | number;\n isLight?: boolean;\n sizeVariant?: AvatarSizeVariant;\n}\n\nfunction AvatarContent({\n size,\n src,\n firstname,\n lastname,\n alt,\n isLight,\n sizeVariant,\n}: AvatarContentProps): ReactElement {\n if (src) {\n return <Image source={{ uri: src }} width={size} height={size} alt={alt} accessibilityLabel={alt} />;\n }\n\n if (firstname && lastname) {\n return (\n <Typography.Text\n base={sizeVariant === 'large' ? 'body-large' : 'body-small'}\n variant={sizeVariant === 'large' ? 'bold' : 'regular'}\n color={isLight ? 'black' : 'white'}\n >\n {getInitials(firstname, lastname)}\n </Typography.Text>\n );\n }\n\n return <Icon icon={<UserIcon />} color={isLight ? 'black' : 'white'} size={getIconSize(size, sizeVariant)} />;\n}\n\nexport interface AvatarProps {\n size?: number;\n src?: string;\n alt?: string;\n firstname?: string | null;\n lastname?: string | null;\n round?: boolean;\n light?: boolean;\n sizeVariant?: AvatarSizeVariant;\n}\n\nexport function Avatar({ size, round, light, sizeVariant, ...props }: AvatarProps): ReactElement {\n const currentSize = getCurrentSize({ size, sizeVariant });\n const currentBorderRadius = getCurrentRadius({ size, sizeVariant, round });\n\n return (\n <View\n overflow=\"hidden\"\n alignItems=\"center\"\n justifyContent=\"center\"\n width={currentSize}\n height={currentSize}\n borderRadius={currentBorderRadius}\n backgroundColor={`kitt.avatar.${light ? 'light' : 'default'}.backgroundColor`}\n >\n <AvatarContent size={currentSize} isLight={light} sizeVariant={sizeVariant} {...props} />\n </View>\n );\n}\n","import type { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';\nimport type { ForwardRefExoticComponent, RefAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport type { BottomSheetProps } from './BottomSheet';\n\nfunction BottomSheetComponent(): null {\n // noop\n return null;\n}\n\nexport const BottomSheet = forwardRef(BottomSheetComponent) as ForwardRefExoticComponent<\n Pick<BottomSheetProps, 'children' | 'hasScrollView' | 'hasHandle' | 'hasBackdrop'> &\n RefAttributes<BottomSheetModalMethods>\n> & { View: () => void };\n\nBottomSheet.View = function View(): null {\n return null;\n};\n","import type { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';\nimport type { RefObject } from 'react';\nimport { useRef } from 'react';\n\nexport function useBottomSheet(): RefObject<BottomSheetModalMethods> {\n const ref = useRef<BottomSheetModalMethods>(null);\n\n return ref;\n}\n","import type { BottomSheetModalMethods } from '@gorhom/bottom-sheet/lib/typescript/types';\nimport type { ComponentType, ElementType, ReactElement, RefObject } from 'react';\nimport { useMemo, useRef } from 'react';\nimport type { BottomSheetProps } from './BottomSheet';\nimport { BottomSheet } from './BottomSheet';\n\ninterface BottomSheetRef<T> extends BottomSheetModalMethods {\n present: (bottomSheetComponenProps: T) => void;\n}\n\ntype ReducedBottomSheetProps = Pick<BottomSheetProps, 'hasScrollView'>;\n\n// This is used to fix:\n// React.ComponentProps<O> -> if O is a function component without any props it will return unknown but we want to have undefined\ntype IsExact<T, U> = [T] extends [U] ? ([U] extends [T] ? true : false) : false;\n\ntype BottomSheetComponentProps<O extends ElementType> = IsExact<React.ComponentProps<O>, unknown> extends true\n ? undefined\n : React.ComponentProps<O>;\n\nexport function useStaticBottomSheet<T extends ComponentType<P>, P>(\n Content: T,\n): {\n bottomSheetRef: RefObject<BottomSheetRef<BottomSheetComponentProps<T>>>;\n BottomSheet: (props: ReducedBottomSheetProps) => ReactElement;\n} {\n const bottomSheetRef = useRef<BottomSheetRef<BottomSheetComponentProps<T>>>(null);\n\n const BottomSheetMemoized = useMemo(\n () =>\n function renderBottomSheet(props: ReducedBottomSheetProps) {\n return (\n <BottomSheet<P> {...props} ref={bottomSheetRef}>\n {Content}\n </BottomSheet>\n );\n },\n [Content],\n );\n\n return {\n bottomSheetRef,\n BottomSheet: BottomSheetMemoized,\n };\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { useEffect } from 'react';\nimport { Portal } from 'react-portal';\nimport type { ModalBehaviourPortalProps } from './ModalBehaviourPortal';\n\nconst overflowHidden = css`\n overflow: hidden;\n`;\n\nfunction useBlockBodyScroll(isScrollBlocked: boolean): void {\n useEffect(() => {\n if (isScrollBlocked) {\n document.body.classList.add(overflowHidden);\n } else {\n document.body.classList.remove(overflowHidden);\n }\n\n return () => {\n document.body.classList.remove(overflowHidden);\n };\n }, [isScrollBlocked]);\n}\n\nexport function ModalBehaviourPortal({ visible, children }: ModalBehaviourPortalProps): ReactElement {\n useBlockBodyScroll(Boolean(visible));\n\n // eslint-disable-next-line react/jsx-no-useless-fragment -- Portal propTypes define a required children, preventing a null children value\n return <Portal>{children || <></>}</Portal>;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext, useContext } from 'react';\n\ntype OnCloseCallback = () => void;\n\nexport const OnCloseContext = createContext<OnCloseCallback>(() => {});\n\ninterface OnCloseProviderProps {\n children: ReactNode;\n onClose: OnCloseCallback;\n}\n\nexport function OnCloseProvider({ children, onClose }: OnCloseProviderProps): ReactElement {\n return <OnCloseContext.Provider value={onClose}>{children}</OnCloseContext.Provider>;\n}\n\nexport function useOnCloseModalBehaviour(): OnCloseCallback {\n const onClose = useContext(OnCloseContext);\n return onClose;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { cloneElement } from 'react';\nimport { View } from '../native-base/primitives';\nimport { ModalBehaviourPortal } from './ModalBehaviourPortal';\nimport { OnCloseProvider, useOnCloseModalBehaviour } from './OnCloseContext';\n\ninterface CloseButtonProps {\n children: ReactElement;\n onPress?: () => void;\n}\n\nfunction CloseButton({ children, onPress }: CloseButtonProps): ReactElement {\n const onCloseContextCallback = useOnCloseModalBehaviour();\n\n const handleClose = (): void => {\n if (onPress) onPress();\n onCloseContextCallback();\n };\n\n return cloneElement(children, { onPress: handleClose });\n}\n\nexport interface ModalBehaviourProps {\n children: ReactNode;\n visible?: boolean;\n onClose: () => void;\n}\n\nexport function ModalBehaviour({ children, visible, onClose }: ModalBehaviourProps): ReactElement {\n return (\n <OnCloseProvider onClose={onClose}>\n <ModalBehaviourPortal visible={visible}>\n {visible ? (\n <View\n _web={{\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n }}\n >\n {children}\n </View>\n ) : null}\n </ModalBehaviourPortal>\n </OnCloseProvider>\n );\n}\n\nModalBehaviour.CloseButton = CloseButton;\n","import type { ReactElement } from 'react';\nimport type { PressableProps } from 'react-native';\nimport { Pressable } from '../native-base/primitives';\n\ninterface OverlayProps extends Pick<PressableProps, 'onPress'> {}\n\nexport function Overlay({ onPress }: OverlayProps): ReactElement {\n return (\n <Pressable\n accessibilityRole=\"none\"\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n right=\"0\"\n bottom=\"0\"\n backgroundColor=\"kitt.overlay.dark\"\n onPress={onPress}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\n\ninterface CardModalRotationContainerProps extends ViewProps {}\n\nexport function CardModalRotationContainer(props: CardModalRotationContainerProps): ReactElement {\n return (\n <View\n paddingX=\"kitt.cardModal.overlayPadding.horizontal\"\n paddingY=\"kitt.cardModal.overlayPadding.vertical\"\n maxWidth=\"kitt.cardModal.maxWidthWithPadding\"\n width=\"100%\"\n {...props}\n />\n );\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { useTheme } from '../../KittThemeContext';\nimport { Overlay } from '../../Overlay/Overlay';\nimport { View } from '../../native-base/primitives';\nimport {\n webAnimationContentDuration,\n webAnimationContentEasing,\n webAnimationOverlayDuration,\n webAnimationOverlayEasing,\n} from '../../themes/late-ocean/cardModal';\nimport type { CardModalAnimationProps } from './CardModalAnimation';\nimport { CardModalRotationContainer } from './CardModalRotationContainer';\n\nconst [x1, y1, x2, y2] = webAnimationContentEasing;\n\nconst cubicBezierSlideIn = `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;\n\nconst contentAnimationEnter = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n`;\n\nconst contentAnimatioEnterActive = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimatioExit = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n`;\n\nconst contentAnimatioExitActive = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimationClassNames = {\n appear: contentAnimationEnter,\n appearActive: contentAnimatioEnterActive,\n enter: contentAnimationEnter,\n enterActive: contentAnimatioEnterActive,\n exit: contentAnimatioExit,\n exitActive: contentAnimatioExitActive,\n};\n\nconst [xA, yA, xB, yB] = webAnimationOverlayEasing;\n\nconst cubicBezierOverlayEasing = `cubic-bezier(${xA}, ${yA}, ${xB}, ${yB})`;\n\nconst opacityEnter = css`\n opacity: 0;\n`;\n\nconst opacityEnterActive = css`\n opacity: 1;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityExit = css`\n opacity: 1;\n`;\n\nconst opacityExitActive = css`\n opacity: 0;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityClassNames = {\n appear: opacityEnter,\n appearActive: opacityEnterActive,\n enter: opacityEnter,\n enterActive: opacityEnterActive,\n exit: opacityExit,\n exitActive: opacityExitActive,\n};\n\nexport function CardModalAnimation({\n children,\n appear = true,\n visible,\n unmountOnExit = true,\n isAnimationEnabled = true,\n onEnter,\n onEntered,\n onExit,\n onExited,\n onClose,\n ...props\n}: CardModalAnimationProps): ReactElement {\n const theme = useTheme();\n const { animation } = theme.kitt.cardModal;\n\n const sharedProps = {\n in: visible,\n appear,\n unmountOnExit,\n };\n\n return (\n <View {...props} height=\"100%\" justifyContent=\"center\">\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.overlay.duration : 0}\n classNames={opacityClassNames}\n >\n <Overlay onPress={onClose} />\n </CSSTransition>\n\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.content.duration : 0}\n classNames={contentAnimationClassNames}\n onEnter={onEnter}\n onEntered={onEntered}\n onExit={onExit}\n onExited={onExited}\n >\n <CardModalRotationContainer alignItems=\"center\" margin=\"auto\">\n {children}\n </CardModalRotationContainer>\n </CSSTransition>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport { Platform } from 'react-native';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport { ScrollView, View } from '../native-base/primitives';\nimport type { ScrollViewProps } from '../native-base/primitives';\nimport type { CardModalAnimationProps } from './CardModalAnimation/CardModalAnimation';\nimport { CardModalAnimation } from './CardModalAnimation/CardModalAnimation';\n\ninterface ScrollContainerProps extends ScrollViewProps {}\n\nexport function CardModalScrollContainer({ children, ...props }: ScrollContainerProps): ReactElement {\n if (Platform.OS !== 'web') {\n return <View>{children}</View>;\n }\n\n return <ScrollView {...props}>{children}</ScrollView>;\n}\n\nexport interface CardModalBehaviourProps extends CardModalAnimationProps {\n onClose: ModalBehaviourProps['onClose'];\n}\n\nexport function CardModalBehaviour({\n children,\n visible,\n onClose,\n onExited,\n ...props\n}: CardModalBehaviourProps): ReactElement {\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <CardModalScrollContainer bounces={false} contentContainerStyle={{ flexGrow: 1 }}>\n <CardModalAnimation {...props} visible={visible} onExited={handleExitAnimationDone} onClose={onClose}>\n {children}\n </CardModalAnimation>\n </CardModalScrollContainer>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface CardModalBodyProps extends ViewProps {\n children: NonNullable<ReactNode>;\n}\n\nexport function CardModalBody({\n children,\n paddingX = { base: 'kitt.4', medium: 'kitt.6' },\n paddingY = 'kitt.4',\n ...props\n}: CardModalBodyProps): ReactElement {\n return (\n <View paddingX={paddingX} paddingY={paddingY} {...props}>\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface CardModalFooterProps extends ViewProps {\n hasSeparator?: boolean;\n}\n\nexport function CardModalFooter({\n children,\n padding = { base: 'kitt.4', medium: 'kitt.2' },\n hasSeparator = true,\n ...props\n}: CardModalFooterProps): ReactElement {\n return (\n <View\n {...props}\n marginTop=\"kitt.2\"\n padding={padding}\n borderTopWidth={hasSeparator ? 'kitt.cardModal.footer.borderWidth' : 0}\n borderColor=\"kitt.separator\"\n alignItems={{ base: undefined, medium: 'flex-end' }}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\n\ninterface BaseHeaderProps extends Except<ViewProps, 'left' | 'right'> {\n hasSeparator?: boolean;\n left?: ReactNode;\n right?: ReactNode;\n}\n\ninterface TitledHeaderProps extends BaseHeaderProps {\n title?: ReactNode;\n children?: never;\n}\n\ninterface ComponentHeaderProps extends BaseHeaderProps {\n title?: never;\n children?: ReactNode;\n}\n\nexport type CardModalHeaderProps = TitledHeaderProps | ComponentHeaderProps;\n\nexport function CardModalHeader({\n children,\n title,\n paddingBottom = { base: 'kitt.4', medium: 'kitt.2' },\n hasSeparator = true,\n right,\n left,\n ...props\n}: CardModalHeaderProps): ReactElement {\n const defaultContainerPadding = { base: 'kitt.4', medium: 'kitt.6' };\n\n return (\n <View\n {...props}\n padding={paddingBottom}\n borderBottomWidth={hasSeparator ? 'kitt.cardModal.footer.borderWidth' : 0}\n borderColor=\"kitt.separator\"\n justifyContent=\"center\"\n width=\"100%\"\n height=\"kitt.cardModal.header.height\"\n paddingRight={right ? 'kitt.2' : defaultContainerPadding}\n paddingLeft={left ? 'kitt.2' : defaultContainerPadding}\n >\n <View alignItems=\"center\" flexDirection=\"row\" justifyContent={!children && !left ? 'flex-end' : 'space-between'}>\n {left ? <View width=\"kitt.iconButton.width\">{left}</View> : null}\n\n <View flexGrow=\"1\" paddingRight={right ? 'kitt.2' : 0} paddingLeft={left ? 'kitt.2' : 0}>\n {title ? (\n <Typography.Text textAlign={!left && right ? 'left' : 'center'} variant=\"bold\">\n {title}\n </Typography.Text>\n ) : null}\n {children}\n </View>\n\n {right ? <View width=\"kitt.iconButton.width\">{right}</View> : null}\n </View>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { CardModalBehaviour } from './CardModalBehaviour';\nimport { CardModalBody } from './CardModalBody';\nimport { CardModalFooter } from './CardModalFooter';\nimport { CardModalHeader } from './CardModalHeader';\n\ninterface BaseCardModalProps extends Except<ViewProps, 'children'> {\n withoutShadow?: boolean;\n}\n\ninterface CardModalWithChildren extends BaseCardModalProps {\n children: ReactNode;\n header?: never;\n footer?: never;\n body?: never;\n}\n\ninterface CardModalWithoutChildren extends BaseCardModalProps {\n children?: never;\n header?: ReactNode;\n footer?: ReactNode;\n body: ReactNode;\n}\n\nexport type CardModalProps = CardModalWithChildren | CardModalWithoutChildren;\n\nexport function CardModal({\n backgroundColor = 'kitt.uiBackgroundLight',\n maxWidth = 'kitt.cardModal.maxWidth',\n withoutShadow,\n children,\n header,\n body,\n footer,\n ...props\n}: CardModalProps): ReactElement {\n return (\n <View\n {...props}\n overflow=\"hidden\"\n backgroundColor={backgroundColor}\n shadow={withoutShadow ? undefined : 'kitt.cardModal.shadow'}\n borderRadius=\"kitt.cardModal.borderRadius\"\n width=\"100%\"\n maxHeight=\"100%\"\n maxWidth={maxWidth}\n >\n {children || (\n <>\n {header || null}\n {body || null}\n {footer || null}\n </>\n )}\n </View>\n );\n}\n\nCardModal.Body = CardModalBody;\nCardModal.Header = CardModalHeader;\nCardModal.Footer = CardModalFooter;\nCardModal.ModalBehaviour = CardModalBehaviour;\n","interface GetBackgroundColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isHovered?: boolean;\n isPressed?: boolean;\n}\n\nexport function getBackgroundColor({ isDisabled, isSelected, isHovered, isPressed }: GetBackgroundColorParams): string {\n if (isDisabled) return 'kitt.choices.item.disabled.backgroundColor';\n\n if (isSelected && isHovered) return 'kitt.choices.item.hoverWhenSelected.backgroundColor';\n\n if (isPressed) return 'kitt.choices.item.pressed.backgroundColor';\n\n if (isHovered) return 'kitt.choices.item.hover.backgroundColor';\n\n if (isSelected) return 'kitt.choices.item.selected.backgroundColor';\n\n return 'kitt.choices.item.default.backgroundColor';\n}\n","import type { ChoiceItemVariant } from '../ChoiceItem';\n\nexport function getBorderRadius(variant?: ChoiceItemVariant): number | string {\n // The clean way to have the rounded effect would have been to know the children height since radius >= height * 0.5\n // We don't control over the height of the rendered children we just go with a arbitrary really high value\n return variant === 'rounded' ? Number.MAX_SAFE_INTEGER : 'kitt.choices.item.borderRadius';\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { AnimatedChoiceItemViewProps } from './AnimatedChoiceItemView';\nimport { getBackgroundColor } from './utils/getBackgroundColor';\nimport { getBorderRadius } from './utils/getBorderRadius';\n\nexport function AnimatedChoiceItemView({\n children,\n variant,\n size,\n isHovered,\n isPressed,\n isDisabled,\n isSelected,\n}: AnimatedChoiceItemViewProps): ReactElement {\n const theme = useTheme();\n\n return (\n <View\n position=\"relative\"\n borderRadius={getBorderRadius(variant)}\n backgroundColor={getBackgroundColor({ isDisabled, isSelected, isHovered, isPressed })}\n paddingX={size === 'small' ? 'kitt.4' : { base: 'kitt.4', small: 'kitt.6' }}\n paddingY={size === 'small' ? 'kitt.2' : { base: 'kitt.4', small: 'kitt.6' }}\n _web={{\n style: {\n transitionProperty: theme.kitt.choices.item.transition.property,\n transitionDuration: `${theme.kitt.choices.item.transition.duration}ms`,\n transitionTimingFunction: theme.kitt.choices.item.transition.timingFunction,\n },\n }}\n >\n {children}\n </View>\n );\n}\n","import type { ViewStyle } from 'react-native';\n\nexport const useNativeAnimation = (): {\n onPressIn: () => void;\n onPressOut: () => void;\n backgroundStyles?: ViewStyle;\n} => {\n return {\n onPressIn: () => {},\n onPressOut: () => {},\n backgroundStyles: undefined,\n };\n};\n","import type { TypographyColor } from '../../typography/Typography';\n\ninterface GetCurrentTextColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n}\n\nexport function getCurrentTextColor({\n isDisabled,\n isSelected,\n isPressed,\n isHovered,\n}: GetCurrentTextColorParams): TypographyColor {\n if (isDisabled) return 'black-light';\n\n if (isSelected && isHovered) return 'white';\n\n if (isSelected || isPressed) return 'white';\n\n return 'black';\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Pressable, View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { AnimatedChoiceItemView } from './AnimatedChoiceItemView';\nimport type { BaseChoicesProps } from './Choices';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\nimport { getBorderRadius } from './utils/getBorderRadius';\nimport { getCurrentTextColor } from './utils/getCurrentTextColor';\n\nexport type ChoiceItemVariant = 'rounded';\nexport type ChoiceItemSize = BaseChoicesProps<null>['size'];\n\nexport type ChoiceItemType = 'button' | 'radio' | 'checkbox' | undefined;\n\nexport interface BaseChoiceItemProps<V> {\n type?: ChoiceItemType;\n children: ReactNode;\n disabled?: boolean;\n variant?: ChoiceItemVariant;\n size?: ChoiceItemSize;\n value?: V;\n selected?: boolean;\n /**\n * @internal Used to display pressed UI for testing and storybook purpose\n */\n isPressedInternal?: boolean;\n /**\n * @internal Used to display hovered UI for testing and storybook purpose\n */\n isHoveredInternal?: boolean;\n onPress?: () => void;\n onChange?: (value?: V) => void;\n onFocus?: (e?: any | GestureResponderEvent) => void;\n onBlur?: (e?: any | GestureResponderEvent) => void;\n}\n\nexport interface ChoiceItemButtonProps<V> extends BaseChoiceItemProps<V> {\n type?: 'button';\n value?: never;\n selected?: never;\n onChange?: never;\n}\n\nexport interface ChoiceItemFormElementProps<V> extends BaseChoiceItemProps<V> {\n type: 'radio' | 'checkbox';\n onPress?: never;\n}\n\nexport type ChoiceItemProps<V> = ChoiceItemButtonProps<V> | ChoiceItemFormElementProps<V>;\n\nexport function ChoiceItem<V>({\n type = 'button',\n value,\n selected,\n disabled,\n variant,\n children,\n isPressedInternal,\n isHoveredInternal,\n onPress,\n onChange,\n onBlur,\n onFocus,\n size,\n}: ChoiceItemProps<V>): ReactElement {\n const { onPressIn, onPressOut, backgroundStyles } = useNativeAnimation({ selected, disabled, isPressedInternal });\n\n const handleChange = (): void => {\n if (!onChange) return;\n\n // Checkbox can be toggled\n if (type === 'checkbox') {\n onChange(selected ? undefined : value);\n return;\n }\n\n onChange(value);\n };\n\n const handlePress = (e: GestureResponderEvent): void => {\n if (onFocus) onFocus(e);\n\n if (onPress) onPress();\n handleChange();\n\n if (onBlur) onBlur(e);\n };\n\n return (\n <Pressable\n disabled={disabled}\n accessibilityRole={type}\n accessibilityState={{ checked: selected }}\n onBlur={onBlur}\n onFocus={onFocus}\n onPress={handlePress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n >\n {({ isHovered, isPressed }) => (\n <AnimatedChoiceItemView\n animatedStyles={backgroundStyles}\n isHovered={isHovered || isHoveredInternal}\n isDisabled={disabled}\n isSelected={selected}\n isPressed={isPressed || isPressedInternal}\n variant={variant}\n size={size}\n >\n <Typography.SetDefaultColor\n value={getCurrentTextColor({\n isDisabled: disabled,\n isSelected: selected || isPressedInternal,\n isPressed,\n isHovered: isHovered || isHoveredInternal,\n })}\n >\n {children}\n </Typography.SetDefaultColor>\n {disabled ? (\n <View\n borderRadius={getBorderRadius(variant)}\n borderWidth=\"kitt.choices.item.disabled.borderWidth\"\n borderColor=\"kitt.choices.item.disabled.borderColor\"\n position=\"absolute\"\n top=\"0\"\n right=\"0\"\n left=\"0\"\n bottom=\"0\"\n />\n ) : null}\n </AnimatedChoiceItemView>\n )}\n </Pressable>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { ChoicesDirection } from './Choices';\n\ninterface ChoiceItemContainerProps {\n children: ReactNode;\n isLast?: boolean;\n direction: ChoicesDirection;\n}\n\nexport function ChoiceItemContainer({ children, direction, isLast }: ChoiceItemContainerProps): ReactElement {\n const currentItemMarginValue = isLast ? undefined : 'kitt.3';\n return (\n <View\n marginRight={direction === 'row' ? currentItemMarginValue : undefined}\n marginBottom={direction === 'column' ? currentItemMarginValue : undefined}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Children, cloneElement, useState } from 'react';\nimport type { ViewProps } from 'react-native';\nimport { ScrollView, View } from 'react-native';\nimport type { Except, SetOptional } from 'type-fest';\nimport type { ChoiceItemButtonProps, ChoiceItemFormElementProps, ChoiceItemType } from './ChoiceItem';\nimport { ChoiceItem } from './ChoiceItem';\nimport { ChoiceItemContainer } from './ChoiceItemContainer';\n\nexport type ChoicesDirection = 'row' | 'column';\n\ninterface ChoicesContainerProps extends ViewProps {\n children: ReactNode;\n direction: ChoicesDirection;\n}\n\nfunction ChoicesContainer({ direction, ...props }: ChoicesContainerProps): ReactElement {\n if (direction === 'row') {\n return <ScrollView horizontal {...props} />;\n }\n\n return <View {...props} />;\n}\n\ntype ChoicesPropsToPick = 'type' | 'variant' | 'disabled' | 'value' | 'onPress' | 'onChange' | 'onBlur' | 'onFocus';\ntype ChoicesSize = 'small';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport interface BaseChoicesProps<V> {\n id?: string;\n testID?: string;\n children: ReactNode;\n direction?: ChoicesDirection;\n size?: ChoicesSize;\n}\n\nexport interface ChoicesButtonProps<V, ChoiceType extends ChoiceItemButtonProps<V>['type']>\n extends BaseChoicesProps<V>,\n Pick<ChoiceItemButtonProps<V>, ChoicesPropsToPick> {\n type?: ChoiceType;\n}\n\nexport interface ChoicesFormElementProps<V, ChoiceType extends ChoiceItemFormElementProps<V>['type']>\n extends BaseChoicesProps<V>,\n Pick<ChoiceItemFormElementProps<V>, ChoicesPropsToPick> {\n type: ChoiceType;\n}\n\nexport type ChoicesItemPropsFromChoiceType<\n V,\n ChoiceType extends ChoiceItemType,\n> = ChoiceType extends ChoiceItemFormElementProps<V>['type'] ? ChoiceItemFormElementProps<V> : ChoiceItemButtonProps<V>;\n\nexport type ChoicesProps<\n V,\n ChoiceType extends ChoiceItemType,\n> = ChoiceType extends ChoiceItemFormElementProps<V>['type']\n ? ChoicesFormElementProps<V, ChoiceType>\n : ChoicesButtonProps<V, 'button'>;\n\ntype ExcludeChoiceItemProvidedByChoices = 'type' | 'onPress' | 'onChange' | 'onFocus' | 'onBlur';\ntype OptionalChoiceItemProvidedByChoices = 'variant' | 'disabled' | 'size';\n\nfunction Choices<V, ChoiceType extends ChoiceItemType>({\n id,\n testID,\n type,\n direction = 'column',\n disabled,\n children,\n value,\n variant,\n onPress,\n onChange,\n onFocus,\n onBlur,\n size,\n}: ChoicesProps<V, ChoiceType>): ReactElement {\n const [currentValue, setCurrentValue] = useState(value);\n\n const isForm = type && ['radio', 'checkbox'].includes(type);\n\n const childrenArray = Children.toArray(children) as ReactElement<\n ChoicesItemPropsFromChoiceType<V, ChoiceType>,\n typeof ChoiceItem\n >[];\n\n const handleChange: ChoicesItemPropsFromChoiceType<V, ChoiceType>['onChange'] = (newValue) => {\n setCurrentValue(newValue);\n if (onChange) onChange(newValue);\n };\n\n const sharedProps: Pick<\n ChoicesItemPropsFromChoiceType<V, ChoiceType>,\n ExcludeChoiceItemProvidedByChoices | OptionalChoiceItemProvidedByChoices\n > = {\n type,\n disabled,\n variant,\n onPress: !isForm ? onPress : undefined,\n onChange: isForm ? handleChange : undefined,\n onFocus,\n onBlur,\n size,\n };\n\n return (\n <ChoicesContainer direction={direction} testID={testID} nativeID={id}>\n {childrenArray.map((child, index) => {\n const element = cloneElement<ChoicesItemPropsFromChoiceType<V, ChoiceType>>(child, {\n selected: isForm ? child.props.value === currentValue : undefined,\n ...sharedProps,\n } as any);\n\n return (\n <ChoiceItemContainer key={child.key} direction={direction} isLast={index === childrenArray.length - 1}>\n {element}\n </ChoiceItemContainer>\n );\n })}\n </ChoicesContainer>\n );\n}\n\nChoices.Item = ChoiceItem;\n\nexport interface CreateChoices<V, ChoiceType extends ChoiceItemType> {\n (props: ChoicesProps<V, ChoiceType>): ReactElement;\n Item: (\n props: SetOptional<\n Except<ChoicesItemPropsFromChoiceType<V, ChoiceType>, OptionalChoiceItemProvidedByChoices>,\n ExcludeChoiceItemProvidedByChoices\n >,\n ) => ReactElement;\n}\n\nexport function createChoicesComponent<V, ChoiceType extends ChoiceItemType>(): CreateChoices<V, ChoiceType> {\n return Choices as CreateChoices<V, ChoiceType>;\n}\n\nconst ButtonChoices = createChoicesComponent<never, 'button'>();\n\nChoices.ButtonChoices = ButtonChoices;\n\nexport const ChoicesElements = {\n Item: ChoiceItem,\n ButtonChoices,\n};\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { useTheme } from '../../KittThemeContext';\nimport { Overlay } from '../../Overlay/Overlay';\nimport { View } from '../../native-base/primitives';\nimport {\n webAnimationContentDuration,\n webAnimationContentEasing,\n webAnimationOverlayDuration,\n webAnimationOverlayEasing,\n} from '../../themes/late-ocean/dialogModal';\nimport type { DialogModalAnimationProps } from './DialogModalAnimation';\n\nconst [x1, y1, x2, y2] = webAnimationContentEasing;\n\nconst cubicBezierSlideIn = `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;\n\nconst contentAnimationEnter = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n`;\n\nconst contentAnimatioEnterActive = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimatioExit = css`\n opacity: 1;\n transform: rotateZ(0) scale(1);\n`;\n\nconst contentAnimatioExitActive = css`\n opacity: 0;\n transform: rotateZ(5deg) scale(0.8);\n transition: all ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst contentAnimationClassNames = {\n appear: contentAnimationEnter,\n appearActive: contentAnimatioEnterActive,\n enter: contentAnimationEnter,\n enterActive: contentAnimatioEnterActive,\n exit: contentAnimatioExit,\n exitActive: contentAnimatioExitActive,\n};\n\nconst [xA, yA, xB, yB] = webAnimationOverlayEasing;\n\nconst cubicBezierOverlayEasing = `cubic-bezier(${xA}, ${yA}, ${xB}, ${yB})`;\n\nconst opacityEnter = css`\n opacity: 0;\n`;\n\nconst opacityEnterActive = css`\n opacity: 1;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityExit = css`\n opacity: 1;\n`;\n\nconst opacityExitActive = css`\n opacity: 0;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOverlayEasing};\n`;\n\nconst opacityClassNames = {\n appear: opacityEnter,\n appearActive: opacityEnterActive,\n enter: opacityEnter,\n enterActive: opacityEnterActive,\n exit: opacityExit,\n exitActive: opacityExitActive,\n};\n\nexport function DialogModalAnimation({\n children,\n appear = true,\n visible,\n unmountOnExit = true,\n isAnimationEnabled = true,\n onEnter,\n onEntered,\n onExit,\n onExited,\n onClose,\n ...props\n}: DialogModalAnimationProps): ReactElement {\n const theme = useTheme();\n const { animation } = theme.kitt.dialogModal;\n\n const sharedProps = {\n in: visible,\n appear,\n unmountOnExit,\n };\n\n return (\n <View {...props} height=\"100%\" justifyContent=\"center\">\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.overlay.duration : 0}\n classNames={opacityClassNames}\n >\n <Overlay onPress={onClose} />\n </CSSTransition>\n\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.content.duration : 0}\n classNames={contentAnimationClassNames}\n onEnter={onEnter}\n onEntered={onEntered}\n onExit={onExit}\n onExited={onExited}\n >\n <View\n alignItems=\"center\"\n paddingX=\"kitt.dialogModal.overlayPadding.horizontal\"\n paddingY=\"kitt.dialogModal.overlayPadding.vertical\"\n margin=\"auto\"\n >\n {children}\n </View>\n </CSSTransition>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport { ScrollView } from '../native-base/primitives';\nimport type { DialogModalAnimationProps } from './DialogModalAnimation/DialogModalAnimation';\nimport { DialogModalAnimation } from './DialogModalAnimation/DialogModalAnimation';\n\nexport interface DialogModalBehaviourProps extends DialogModalAnimationProps {\n onClose: ModalBehaviourProps['onClose'];\n}\n\nexport function DialogModalBehaviour({\n children,\n visible,\n onClose,\n onExited,\n ...props\n}: DialogModalBehaviourProps): ReactElement {\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <ScrollView bounces={false} contentContainerStyle={{ flexGrow: 1 }}>\n <DialogModalAnimation {...props} visible={visible} onExited={handleExitAnimationDone} onClose={onClose}>\n {children}\n </DialogModalAnimation>\n </ScrollView>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ActionsButtonProps } from '..';\nimport { Actions } from '../Actions/Actions';\nimport { View } from '../native-base/primitives';\nimport { DialogModalBehaviour } from './DialogModalBehaviour';\n\nexport interface DialogModalProps {\n illustration?: ReactNode;\n actions?: ReactNode;\n title?: ReactNode;\n children: ReactNode;\n}\n\nexport function DialogModal({ illustration, title, children, actions }: DialogModalProps): ReactElement {\n return (\n <View\n alignItems=\"center\"\n maxWidth=\"kitt.dialogModal.maxWidth\"\n backgroundColor=\"kitt.uiBackgroundLight\"\n borderRadius=\"kitt.dialogModal.borderRadius\"\n shadow=\"kitt.dialogModal.shadow\"\n >\n {illustration ? <View>{illustration}</View> : null}\n\n <View\n width=\"100%\"\n alignItems=\"center\"\n padding={{ base: 'kitt.4', medium: 'kitt.6' }}\n paddingTop={illustration ? 'kitt.8' : 'kitt.6'}\n >\n {title ? <View marginBottom=\"kitt.2\">{title}</View> : null}\n\n <View marginBottom=\"kitt.8\">{children}</View>\n\n {actions ? (\n <Actions flex={undefined} width=\"100%\" layout=\"column\">\n {actions}\n </Actions>\n ) : null}\n </View>\n </View>\n );\n}\n\nDialogModal.ModalBehaviour = DialogModalBehaviour;\n\ninterface DialogModalButtonProps extends ActionsButtonProps {}\n\nfunction DialogModalButton({ stretch = true, ...props }: DialogModalButtonProps): ReactElement {\n return <Actions.Button stretch={stretch} {...props} />;\n}\n\nDialogModal.Button = DialogModalButton;\n","import type { IImageProps } from 'native-base';\nimport { Image } from 'native-base';\nimport type { ReactElement } from 'react';\nimport { useMemo } from 'react';\nimport type { ImageProps } from 'react-native';\nimport { Platform } from 'react-native';\nimport { parse } from 'twemoji-parser';\nimport type { KittResponsiveProp } from '../KittBreakpoints';\n\nexport interface EmojiProps extends Pick<ImageProps, 'style' | 'testID'> {\n emoji: string;\n size: number | KittResponsiveProp<number>;\n alignSelf?: IImageProps['alignSelf'];\n _web?: IImageProps['_web'];\n}\n\nexport function Emoji({ emoji, size, alignSelf, _web, style, testID }: EmojiProps): ReactElement | null {\n const [emojiData] = useMemo(\n () =>\n parse(emoji, {\n // on native plaforms, you can't display svg as Image\n assetType: Platform.OS === 'web' ? 'svg' : 'png',\n }),\n [emoji],\n );\n\n if (!emojiData) return null;\n\n return (\n <Image\n testID={testID}\n size={size}\n alt={emojiData.text}\n accessibilityLabel={emojiData.text}\n source={{ uri: emojiData.url }}\n style={style}\n alignSelf={alignSelf}\n _web={_web}\n />\n );\n}\n","import type { ComponentProps, ReactElement, VoidFunctionComponent } from 'react';\nimport type { GestureResponderEvent, PressableProps, TextProps } from 'react-native';\nimport { Linking } from 'react-native';\n\ntype ExternalAppLinkScheme = 'sms' | 'tel' | 'mailto';\n\nexport interface ExternalAppLinkAsComponentMinimumRequiredProps {\n href?: TextProps['href'];\n hrefAttrs?: TextProps['hrefAttrs'];\n onPress?: PressableProps['onPress'];\n}\n\nexport interface ExternalAppLinkProps<C extends VoidFunctionComponent<any>> {\n as: C;\n appScheme: ExternalAppLinkScheme;\n appValue: string;\n onPress?: PressableProps['onPress'];\n onOpenAppError?: (err: string) => void;\n}\n\nexport interface ExternalAppLinkPhoneProps<C extends VoidFunctionComponent<any>>\n extends Partial<ExternalAppLinkProps<C>> {\n phoneNumber: string;\n}\n\nexport interface ExternalAppLinkMailProps<C extends VoidFunctionComponent<any>>\n extends Partial<ExternalAppLinkProps<C>> {\n emailAddress: string;\n}\n\n/** @internal for ExternalAppLink.web.tsx only */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type ExternalAppLinkSendableComponentProps<C extends VoidFunctionComponent<any>> = Omit<\n ComponentProps<C>,\n keyof ExternalAppLinkProps<C> & keyof ExternalAppLinkAsComponentMinimumRequiredProps\n>;\n\nexport function ExternalAppLink<C extends VoidFunctionComponent<any>>({\n as: Component,\n appScheme,\n appValue,\n onPress,\n onOpenAppError,\n ...rest\n}: ExternalAppLinkProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n const href = `${appScheme}:${appValue}`;\n\n const handleOnPress = async (e: GestureResponderEvent): Promise<void> => {\n try {\n const canOpen = await Linking.canOpenURL(href);\n\n if (canOpen) {\n if (onPress) {\n onPress(e);\n if (e?.defaultPrevented) return;\n }\n\n Linking.openURL(href).catch((error) => {\n console.error(`An error occurred while opening ${href}`, error);\n\n onOpenAppError?.(`An error occurred while opening ${href}`);\n });\n } else {\n onOpenAppError?.(`Cannot open url: ${href}`);\n }\n } catch {\n onOpenAppError?.('An error occured with Linkinf.canOpenURL');\n }\n };\n\n return <Component href={href} {...(rest as any)} onPress={handleOnPress} />;\n}\n\nExternalAppLink.Sms = function ExternalAppLinkSms<C extends VoidFunctionComponent<any>>({\n phoneNumber,\n children,\n ...rest\n}: ExternalAppLinkPhoneProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n return (\n <ExternalAppLink {...(rest as any)} appScheme=\"sms\" appValue={phoneNumber}>\n {children}\n </ExternalAppLink>\n );\n};\n\nExternalAppLink.Tel = function ExternalAppLinkTel<C extends VoidFunctionComponent<any>>({\n phoneNumber,\n children,\n ...rest\n}: ExternalAppLinkPhoneProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n return (\n <ExternalAppLink {...(rest as any)} appScheme=\"tel\" appValue={phoneNumber}>\n {children}\n </ExternalAppLink>\n );\n};\n\nExternalAppLink.Mail = function ExternalAppLinkMail<C extends VoidFunctionComponent<any>>({\n emailAddress,\n children,\n ...rest\n}: ExternalAppLinkMailProps<C> & ExternalAppLinkSendableComponentProps<C>): ReactElement {\n return (\n <ExternalAppLink {...(rest as any)} appScheme=\"mailto\" appValue={emailAddress}>\n {children}\n </ExternalAppLink>\n );\n};\n","export interface ExternalLinkOpenLinkBehavior {\n /**\n * @default 'openInModal'\n *\n * @description open link behavior in native\n *\n * \"openInModal\": open via [expo-web-browser](https://docs.expo.dev/versions/latest/sdk/webbrowser/)\n *\n * \"openBrowserApp\": open via [Linking](https://docs.expo.dev/guides/linking/#opening-links-from-your-app)\n */\n native?: 'openInModal' | 'openBrowserApp';\n\n /**\n * @default 'targetBlank'\n *\n * @description open link behavior in native\n *\n * \"targetSelf\": no dom attributes added, behave like `target=\"_self\"`\n *\n * \"targetBlank\": dome attributes: `target=\"_blank\" rel=\"noopener noreferrer\"`\n */\n web?: 'targetSelf' | 'targetBlank';\n}\n\nexport const defaultOpenLinkBehavior: ExternalLinkOpenLinkBehavior = {\n native: 'openInModal',\n web: 'targetBlank',\n};\n","import type { ReactElement, VoidFunctionComponent } from 'react';\nimport type { ExternalLinkProps, ExternalLinkSendableComponentProps } from './ExternalLink';\nimport { defaultOpenLinkBehavior } from './ExternalLinkOpenLinkBehavior';\n\nexport function ExternalLink<C extends VoidFunctionComponent<any>>({\n as: Component,\n href,\n openLinkBehavior = defaultOpenLinkBehavior,\n onPress,\n ...rest\n}: ExternalLinkProps<C> & ExternalLinkSendableComponentProps<C>): ReactElement {\n return (\n <Component\n {...(rest as any)}\n href={href}\n hrefAttrs={openLinkBehavior?.web === 'targetSelf' ? undefined : { target: '_blank', rel: 'noopener noreferrer' }}\n onPress={onPress}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport type { TypographyIconProps } from '../../typography/TypographyIcon';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\nimport type { InputFormState } from '../utils';\n\nfunction getIconColor(state?: InputFormState, disabled?: boolean): TypographyIconProps['color'] {\n if (disabled) return 'black-light';\n\n switch (state) {\n case 'invalid':\n return 'danger';\n case 'valid':\n return 'success';\n default:\n return undefined;\n }\n}\n\nexport interface InputIconProps {\n icon: NonNullable<ReactElement>;\n disabled?: boolean;\n state?: InputFormState;\n}\n\nexport function InputIcon({ icon, state, disabled }: InputIconProps): ReactElement {\n const theme = useTheme();\n\n const color = getIconColor(state, disabled);\n\n return <TypographyIcon color={color} icon={icon} size={theme.kitt.forms.input.icon.size} />;\n}\n","import type { ReactElement } from 'react';\nimport type { PressableProps } from 'react-native';\nimport { Pressable } from 'react-native';\n\nexport interface InputPressableProps extends PressableProps {}\n\nexport function InputPressable({ ...props }: InputPressableProps): ReactElement {\n return <Pressable {...props} />;\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { webAnimationDuration, webAnimationProperty, webAnimationTimingFunction } from '../../themes/late-ocean/input';\nimport type { InputTextContainerProps } from './InputTextContainer';\n\nconst inputTextContainer = css`\n display: flex;\n position: relative;\n\n & > *::-ms-clear,\n & > *::-ms-reveal {\n display: none;\n }\n\n & > * {\n transition: ${webAnimationProperty} ${webAnimationDuration} ${webAnimationTimingFunction};\n }\n`;\n\nexport function InputTextContainer(props: InputTextContainerProps): ReactElement {\n return <div className={inputTextContainer} {...props} />;\n}\n","import { Input } from 'native-base';\nimport type { ResponsiveValue } from 'native-base/lib/typescript/components/types';\nimport type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput, TextInputProps as RNTextInputProps } from 'react-native';\nimport { Platform } from 'react-native';\nimport type { Except } from 'type-fest';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\nimport { createNativeBaseFontSize } from '../../typography/Typography';\nimport type { InputFormState, InputUIState } from '../utils';\nimport { InputTextContainer } from './InputTextContainer';\n\nexport interface InputTextProps extends Except<RNTextInputProps, 'nativeID'> {\n id?: string;\n name?: string;\n // See InterfaceInputProps from native-base\n variant?: ResponsiveValue<'outline' | 'unstyled'>;\n disabled?: boolean;\n minHeight?: number | string;\n state?: InputFormState;\n right?: ReactNode;\n /**\n * @internal\n * @deprecated\n */\n internalForceState?: InputUIState;\n}\n\nexport const InputText = forwardRef<RNTextInput, InputTextProps>(\n (\n {\n id,\n right,\n state: formState,\n variant = 'outline',\n internalForceState,\n disabled = false,\n autoCorrect = true,\n textContentType = 'none',\n autoComplete = 'off',\n keyboardType = 'default',\n multiline,\n onSubmitEditing,\n ...props\n }: InputTextProps,\n ref,\n ): ReactElement => {\n const theme = useTheme();\n const fontSizeForNativeBase = createNativeBaseFontSize({ base: 'body' });\n const shouldHandleSingleLineOnIOS = Platform.OS === 'ios' && !multiline;\n\n return (\n <InputTextContainer>\n <Input\n ref={ref as any}\n multiline={multiline}\n nativeID={id}\n isDisabled={internalForceState ? internalForceState === 'disabled' : disabled}\n isHovered={internalForceState ? internalForceState === 'hover' : undefined}\n isFocused={internalForceState ? internalForceState === 'focus' : undefined}\n keyboardType={keyboardType}\n autoComplete={autoComplete}\n autoCorrect={autoCorrect}\n textContentType={textContentType}\n fontSize={fontSizeForNativeBase}\n lineHeight={\n // On basic text input, we set the line-height to zero for iOS to fix vertical text alignment\n // This is a iOS only fix since having 0 as a line-height value breaks text inputs on Android\n shouldHandleSingleLineOnIOS ? 0 : fontSizeForNativeBase\n }\n fontWeight=\"bodies.regular\"\n fontFamily=\"bodies.regular\"\n py={!multiline && Platform.OS !== 'web' ? 0 : undefined}\n variant={variant}\n {...props}\n onSubmitEditing={multiline ? () => null : onSubmitEditing}\n />\n {right ? (\n <View\n position=\"absolute\"\n right={0}\n top={0}\n bottom={0}\n justifyContent=\"center\"\n padding={theme.kitt.forms.input.rightContainer.padding}\n >\n {right}\n </View>\n ) : null}\n </InputTextContainer>\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../../native-base/primitives';\n\ninterface UIState {\n isSelected?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n isHighlighted?: boolean;\n}\n\nfunction getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused }: UIState): string {\n const baseKey = 'kitt.forms.autocomplete.option';\n\n if (isHighlighted) {\n return `${baseKey}.highlighted.backgroundColor`;\n }\n\n if (isPressed) {\n return `${baseKey}.pressed.backgroundColor`;\n }\n\n if (isHovered) {\n return `${baseKey}.hovered.backgroundColor`;\n }\n\n if (isFocused) {\n return `${baseKey}.focused.backgroundColor`;\n }\n\n if (isSelected) {\n return `${baseKey}.selected.backgroundColor`;\n }\n\n return `${baseKey}.default.backgroundColor`;\n}\n\ninterface AutocompleteItemProps<T extends object> {\n item: T;\n children: ReactNode;\n isSelected?: boolean;\n isHighlighted?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n}\n\nexport function AutocompleteItem<T extends object>({\n children,\n isSelected,\n isHighlighted,\n isHovered,\n isFocused,\n isPressed,\n}: AutocompleteItemProps<T>): ReactElement {\n return (\n <View\n justifyContent=\"center\"\n width=\"100%\"\n minHeight=\"kitt.forms.autocomplete.option.minHeight\"\n borderRadius=\"kitt.1\"\n padding=\"kitt.1\"\n backgroundColor={getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused })}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\n\ninterface AutocompleteItemsListContainerProps {\n testID: ViewProps['testID'];\n zIndex?: ViewProps['zIndex'];\n children: ReactNode;\n}\n\nexport function AutocompleteItemsListContainer({\n testID,\n children,\n zIndex = 1000,\n}: AutocompleteItemsListContainerProps): ReactElement {\n return (\n <View\n testID={testID}\n zIndex={zIndex}\n top=\"kitt.2\"\n left={0}\n position=\"absolute\"\n flexGrow={1}\n width=\"100%\"\n paddingY=\"kitt.2\"\n borderRadius=\"kitt.forms.autocomplete.optionsContainer.borderRadius\"\n backgroundColor=\"kitt.forms.autocomplete.optionsContainer.backgroundColor\"\n shadow=\"kitt.forms.autocomplete.optionsContainer.shadow\"\n _android={{ style: { elevation: 2 } }}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\n\nexport interface AutocompleteOptionProps extends ViewProps {\n item: unknown;\n children: ReactNode;\n}\n\nexport function AutocompleteOption({ children, ...props }: AutocompleteOptionProps): ReactElement {\n return (\n <View\n paddingX={{ base: 'kitt.2', small: 'kitt.4' }}\n paddingY=\"kitt.forms.autocomplete.option.verticalPadding\"\n {...props}\n >\n {children}\n </View>\n );\n}\n","import { ArrowDownIcon, ArrowUpIcon } from '@ornikar/kitt-icons';\nimport type { DownshiftProps } from 'downshift';\nimport Downshift from 'downshift';\nimport type { ComponentType, ReactElement, ReactNode } from 'react';\nimport { Children } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Platform } from 'react-native';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { Pressable, View } from '../../native-base/primitives';\nimport { InputIcon } from '../InputIcon/InputIcon';\nimport { InputPressable } from '../InputPressable/InputPressable';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\nimport { AutocompleteItem } from './AutocompleteItem';\nimport { AutocompleteItemsListContainer } from './AutocompleteItemsListContainer';\nimport { AutocompleteOption } from './AutocompleteOption';\n\n// When testing with jest on native, e is undefined, we need to patch it to make it work\nfunction patchNativeEvent(event?: GestureResponderEvent): GestureResponderEvent {\n return event || ({ preventDownshiftDefault: false, preventDefault: () => {} } as unknown as GestureResponderEvent);\n}\n\ninterface BaseItemProps<T> {\n item: T;\n}\n\ntype ComponentWithItemProp<T> = ComponentType<BaseItemProps<T>>;\n\nexport interface AutocompleteProps<T extends object> extends Omit<InputTextProps, 'onChange'> {\n children: ReactElement<ComponentWithItemProp<T>>[];\n isInitialOpen?: DownshiftProps<T>['defaultIsOpen'];\n initialValue?: T;\n containerProps?: Exclude<ViewProps, 'ref'>;\n filterItemBasedOnCurrentInputValue?: (item: T, inputValue: string) => boolean;\n checkSelectedItem: (selectedItem: T | undefined, item: T) => boolean;\n itemToString: (item?: T) => string;\n right?: InputTextProps['right'];\n errorElement?: ReactNode;\n emptyResultsElement?: ReactNode;\n inputTestID?: ViewProps['testID'];\n listContainerTestID?: ViewProps['testID'];\n zIndex?: ViewProps['zIndex'];\n onChange?: DownshiftProps<T>['onChange'];\n onInputChange?: DownshiftProps<T>['onInputValueChange'];\n onSelectItem?: DownshiftProps<T>['onSelect'];\n onOuterPress?: DownshiftProps<T>['onOuterClick'];\n}\n\nfunction isReactElement(element: unknown): element is ReactElement {\n return typeof element === 'object' && element !== null && 'type' in element && 'props' in element;\n}\n\nexport function Autocomplete<T extends object>({\n children,\n name,\n disabled,\n placeholder,\n isInitialOpen,\n initialValue,\n containerProps,\n filterItemBasedOnCurrentInputValue,\n checkSelectedItem,\n itemToString,\n right,\n onChange,\n onFocus,\n onBlur,\n onInputChange,\n onSelectItem,\n /**\n * @description web only callback\n */\n onOuterPress,\n errorElement,\n emptyResultsElement,\n inputTestID = 'kitt.Autocomplete.inputText',\n listContainerTestID = 'kitt.Autocomplete.listContainer',\n zIndex = 1000,\n ...props\n}: AutocompleteProps<T>): ReactElement {\n const childrenArray = Children.toArray(children);\n\n const items: { child: ReactElement; item: T }[] = childrenArray\n .filter(isReactElement)\n .map((child) => ({ child, item: child.props.item }));\n\n const handleItemToString = (item: T | null): string => {\n // Prevents returning null values\n if (!itemToString) return '';\n return itemToString(item || undefined);\n };\n\n return (\n <Downshift\n defaultIsOpen={isInitialOpen}\n initialSelectedItem={initialValue}\n initialInputValue={initialValue ? itemToString(initialValue) : undefined}\n itemToString={handleItemToString}\n stateReducer={(state, changes) => {\n switch (changes.type) {\n case Downshift.stateChangeTypes.changeInput:\n return {\n ...changes,\n selectedItem: null,\n };\n default:\n return changes;\n }\n }}\n onChange={(selectedItem, stateAndHelpers) => {\n if (onChange) {\n onChange(selectedItem, stateAndHelpers);\n }\n }}\n onSelect={onSelectItem}\n onOuterClick={onOuterPress}\n onInputValueChange={onInputChange}\n >\n {({\n getRootProps,\n getInputProps,\n getMenuProps,\n getItemProps,\n getToggleButtonProps,\n isOpen,\n inputValue,\n highlightedIndex,\n selectedItem,\n openMenu,\n }) => {\n const shouldSuppressRefError = Platform.OS !== 'web';\n\n const rootProps = getRootProps(undefined, { suppressRefError: shouldSuppressRefError });\n const menuProps = getMenuProps(undefined, { suppressRefError: shouldSuppressRefError });\n const { onClick: onClickToggle, onPress: onPressToggle, ...toggleProps } = getToggleButtonProps({ disabled });\n\n const {\n onKeyDown,\n onFocus: onSearchInputFocus,\n onBlur: onSearchInputBlur,\n onChange: onSearchInputChange,\n ...inputProps\n } = getInputProps({ placeholder, disabled });\n\n const hasCurrentSearch = inputValue && inputValue.length > 0;\n\n const currentItems =\n hasCurrentSearch && filterItemBasedOnCurrentInputValue\n ? items.filter(({ item }) => {\n if (!filterItemBasedOnCurrentInputValue) return true;\n return filterItemBasedOnCurrentInputValue(item, inputValue || '');\n })\n : items;\n\n // We need to check if the menu is open and if there is at least one item or an error element to prevent displaying an empty container\n const isCurrentlyOpen = isOpen ? currentItems.length > 0 || !!errorElement || !!emptyResultsElement : false;\n\n const handleTogglePress = (e?: GestureResponderEvent): void => {\n if (Platform.OS === 'web') {\n onClickToggle(e);\n return;\n }\n onPressToggle(patchNativeEvent(e));\n };\n\n const canDisplayCollapseButton = currentItems.length > 0 || !!errorElement || !!emptyResultsElement;\n\n return (\n <View {...rootProps} {...containerProps} zIndex={zIndex} position=\"relative\">\n <InputText\n {...inputProps}\n {...props}\n name={name}\n testID={inputTestID}\n right={\n right ||\n (canDisplayCollapseButton ? (\n <InputPressable\n {...toggleProps}\n testID=\"kitt.Autocomplete.listToggle\"\n hitSlop={40}\n onPress={handleTogglePress}\n >\n <InputIcon icon={isCurrentlyOpen ? <ArrowUpIcon /> : <ArrowDownIcon />} />\n </InputPressable>\n ) : null)\n }\n onFocus={(e) => {\n openMenu();\n /** @ts-expect-error onFocus wants web events */\n if (Platform.OS !== 'android' && onSearchInputFocus) onSearchInputFocus(e);\n\n if (onFocus) onFocus(e);\n }}\n onBlur={(e) => {\n /** @ts-expect-error onBlur wants web events */\n if (Platform.OS !== 'android' && onSearchInputBlur) onSearchInputBlur(e);\n\n if (onBlur) onBlur(e);\n }}\n /** @ts-expect-error onSearchInputChange wants web events */\n onChange={onSearchInputChange}\n /** @ts-expect-error onKeyDown wants web events */\n onKeyPress={onKeyDown}\n />\n <View {...menuProps} position=\"relative\">\n {isCurrentlyOpen ? (\n <AutocompleteItemsListContainer testID={listContainerTestID}>\n {currentItems.map(({ child, item }, index) => {\n const {\n onClick,\n onPress,\n role,\n 'aria-selected': ariaSelected,\n ...itemProps\n } = getItemProps({ item, index });\n\n return (\n <Pressable\n key={itemProps.id}\n {...itemProps}\n accessibilityRole={Platform.OS === 'android' ? undefined : role}\n accessibilityState={{ selected: ariaSelected }}\n disabled={disabled}\n onPress={(e) => {\n if (Platform.OS === 'web') {\n if (onClick) onClick(e);\n return;\n }\n\n if (onPress) onPress(patchNativeEvent(e));\n }}\n >\n {({ isHovered, isFocused, isPressed }) => (\n <AutocompleteItem<T>\n item={item}\n isHighlighted={highlightedIndex === index}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n isSelected={checkSelectedItem(selectedItem || undefined, item)}\n >\n {child}\n </AutocompleteItem>\n )}\n </Pressable>\n );\n })}\n\n {errorElement}\n {emptyResultsElement}\n </AutocompleteItemsListContainer>\n ) : null}\n </View>\n </View>\n );\n }}\n </Downshift>\n );\n}\n\nAutocomplete.Option = AutocompleteOption;\n/**\n * @description: This is exported for testing purposes only\n */\nAutocomplete.UnsafeInternalItem = AutocompleteItem;\n","interface GetBackgroundColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBackgroundColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBackgroundColorParams): string {\n if (isChecked) return 'kitt.forms.checkbox.checked.backgroundColor';\n\n if (isDisabled) return 'kitt.forms.checkbox.disabled.backgroundColor';\n\n if (isPressed) return 'kitt.forms.checkbox.pressed.backgroundColor';\n\n if (isHovered) return 'kitt.forms.checkbox.hover.backgroundColor';\n\n if (isFocused) return 'kitt.forms.checkbox.focus.backgroundColor';\n\n return 'kitt.forms.checkbox.default.backgroundColor';\n}\n","interface GetBorderColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBorderColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBorderColorParams): string {\n if (isChecked) return 'kitt.forms.checkbox.checked.borderColor';\n\n if (isDisabled) return 'kitt.forms.checkbox.disabled.borderColor';\n\n if (isPressed) return 'kitt.forms.checkbox.pressed.borderColor';\n\n if (isHovered) return 'kitt.forms.checkbox.hover.borderColor';\n\n if (isFocused) return 'kitt.forms.checkbox.focus.borderColor';\n\n return 'kitt.forms.checkbox.default.borderColor';\n}\n","import { CheckboxMark } from '@ornikar/kitt-icons';\nimport type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { GestureResponderEvent, PressableProps } from 'react-native';\nimport { Icon } from '../../Icon/Icon';\nimport { useTheme } from '../../KittThemeContext';\nimport { HStack } from '../../native-base/layout';\nimport { Pressable, View } from '../../native-base/primitives';\nimport { getBackgroundColor } from './utils/getBackgroundColor';\nimport { getBorderColor } from './utils/getBorderColor';\n\nexport interface CheckboxProps {\n checked?: boolean;\n hitSlop?: number;\n testID?: string;\n id?: PressableProps['testID'];\n children?: ReactNode;\n disabled?: boolean;\n onChange?: (checked: boolean, e: GestureResponderEvent) => void;\n onBlur?: (e: any) => void;\n onFocus?: (e: any) => void;\n}\n\nexport const Checkbox = forwardRef<PressableProps, CheckboxProps>(\n (\n { checked, hitSlop = 40, id, children, disabled, testID, onChange, onBlur, onFocus }: CheckboxProps,\n ref,\n ): ReactElement => {\n const theme = useTheme();\n\n const handlePress = (e: GestureResponderEvent): void => {\n if (onFocus) onFocus(e);\n if (onChange) onChange(!checked, e);\n if (onBlur) onBlur(e);\n };\n\n return (\n <Pressable\n ref={ref}\n nativeID={id}\n testID={testID}\n accessibilityRole=\"checkbox\"\n accessibilityState={{ checked: !!checked, disabled }}\n hitSlop={hitSlop}\n disabled={disabled}\n onPress={handlePress}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <HStack space={children ? 'kitt.forms.checkbox.textSpacing' : undefined}>\n <View\n display=\"flex\"\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent=\"center\"\n marginTop={children ? 'kitt.1' : undefined}\n height=\"kitt.forms.checkbox.height\"\n width=\"kitt.forms.checkbox.width\"\n borderRadius=\"kitt.forms.checkbox.borderRadius\"\n borderWidth=\"kitt.forms.checkbox.borderWidth\"\n borderColor={getBorderColor({\n isDisabled: disabled,\n isFocused,\n isHovered,\n isPressed,\n isChecked: checked,\n })}\n backgroundColor={getBackgroundColor({\n isDisabled: disabled,\n isFocused,\n isHovered,\n isPressed,\n isChecked: checked,\n })}\n _web={{\n style: {\n transitionDuration: theme.kitt.forms.checkbox.transition.duration,\n transitionProperty: 'all',\n transitionTimingFunction: theme.kitt.forms.checkbox.transition.timingFunction,\n },\n }}\n >\n <View\n opacity={checked ? 1 : 0}\n _web={{\n style: {\n transitionDuration: theme.kitt.forms.checkbox.transition.duration,\n transitionProperty: 'opacity',\n transitionTimingFunction: theme.kitt.forms.checkbox.transition.timingFunction,\n },\n }}\n >\n <Icon\n align=\"center\"\n color={theme.kitt.forms.checkbox.markColor}\n size={theme.kitt.forms.checkbox.iconSize}\n icon={<CheckboxMark />}\n />\n </View>\n </View>\n\n {children ? <View flexShrink={1}>{children}</View> : null}\n </HStack>\n )}\n </Pressable>\n );\n },\n);\n","import type { TextInputProps } from 'react-native';\nimport { Platform } from 'react-native';\n\nexport function getReturnKeyTypeForNumericInput(\n returnKeyType: TextInputProps['returnKeyType'],\n): TextInputProps['returnKeyType'] {\n // returnKey is only displayed on number input on iOS if value is done\n if (Platform.OS === 'ios') return 'done';\n\n return returnKeyType;\n}\n","function prefixWithZero(value: number, maxLength = 2): string {\n return `${value}`.padStart(maxLength, '0');\n}\n\nexport function dayFormatter(day: number): string {\n return prefixWithZero(day);\n}\n\nexport function monthFormatter(month: number): string {\n return prefixWithZero(month);\n}\n\nexport function yearFormatter(year: number): string {\n return prefixWithZero(year, 4);\n}\n","export function getDayInInterval(value: number | undefined): number | undefined {\n const minValue = 1;\n const maxValue = 31;\n\n return value !== undefined ? Math.max(minValue, Math.min(maxValue, value)) : value;\n}\n\nexport function getMonthInInterval(\n value: number | undefined,\n minDate: Date | undefined,\n maxDate: Date | undefined,\n): number | undefined {\n const maxMonthInYear = 12;\n\n const minValue = minDate ? minDate.getMonth() + 1 : 1;\n const maxValue = maxDate ? maxDate.getMonth() + 1 : maxMonthInYear;\n\n return value !== undefined ? Math.max(minValue, Math.min(maxValue, value)) : value;\n}\n\nexport function getYearInInterval(\n value: number | undefined,\n minDate: Date | undefined,\n maxDate: Date | undefined,\n): number | undefined {\n const maxPossibleYear = 9999;\n\n const minValue = minDate ? minDate.getFullYear() : 1;\n const maxValue = maxDate ? maxDate.getFullYear() : maxPossibleYear;\n\n return value !== undefined ? Math.max(minValue, Math.min(maxValue, value)) : value;\n}\n","import type { Reducer } from 'react';\nimport type { DatePickerProps } from '../DatePicker';\nimport { dayFormatter, monthFormatter, yearFormatter } from '../utils/dateFormatter';\nimport { getDayInInterval, getMonthInInterval, getYearInInterval } from '../utils/datePartInInterval';\n\nfunction getValueToDisplayedString(value: number | undefined): string {\n // We exclude the undefined value since 0 is a valid number\n if (value === undefined) return '';\n\n return value.toString();\n}\n\nexport interface State {\n currentValue: DatePickerProps['value'];\n currentDay?: number;\n currentMonth?: number;\n currentYear?: number;\n displayedDay?: string;\n displayedMonth?: string;\n displayedYear?: string;\n minDate: DatePickerProps['minDate'];\n maxDate: DatePickerProps['maxDate'];\n}\n\ninterface DayChangeAction {\n type: 'day-change';\n nextDay?: number;\n}\n\ninterface MonthChangeAction {\n type: 'month-change';\n nextMonth?: number;\n}\n\ninterface YearChangeAction {\n type: 'year-change';\n nextYear?: number;\n}\n\ninterface DayBlurAction {\n type: 'day-blur';\n}\n\ninterface MonthBlurAction {\n type: 'month-blur';\n}\n\ninterface YearBlurAction {\n type: 'year-blur';\n}\n\ntype Actions =\n | DayChangeAction\n | MonthChangeAction\n | YearChangeAction\n | DayBlurAction\n | MonthBlurAction\n | YearBlurAction;\n\nexport const keyboardDatePickerReducer: Reducer<State, Actions> = (state, action) => {\n switch (action.type) {\n case 'day-change': {\n const { nextDay } = action;\n\n return {\n ...state,\n currentDay: nextDay,\n displayedDay: getValueToDisplayedString(nextDay),\n };\n }\n\n case 'month-change': {\n const { nextMonth } = action;\n\n return {\n ...state,\n currentMonth: nextMonth,\n displayedMonth: getValueToDisplayedString(nextMonth),\n };\n }\n\n case 'year-change': {\n const { nextYear } = action;\n\n return {\n ...state,\n currentYear: nextYear,\n displayedYear: getValueToDisplayedString(nextYear),\n };\n }\n\n case 'day-blur': {\n const nextCurrentDay = getDayInInterval(state.currentDay);\n\n return {\n ...state,\n displayedDay: nextCurrentDay ? dayFormatter(nextCurrentDay) : state.displayedDay,\n };\n }\n\n case 'month-blur': {\n const { minDate, maxDate } = state;\n\n const nextCurrentMonth = getMonthInInterval(state.currentMonth, minDate, maxDate);\n\n return {\n ...state,\n currentMonth: nextCurrentMonth,\n displayedMonth: nextCurrentMonth !== undefined ? monthFormatter(nextCurrentMonth) : state.displayedMonth,\n };\n }\n\n case 'year-blur': {\n const { minDate, maxDate } = state;\n\n const nextCurrentYear = getYearInInterval(state.currentYear, minDate, maxDate);\n\n return {\n ...state,\n currentYear: nextCurrentYear,\n displayedYear: nextCurrentYear !== undefined ? yearFormatter(nextCurrentYear) : state.displayedYear,\n };\n }\n\n default:\n return state;\n }\n};\n","export function isNumber(input?: unknown): boolean {\n // Number.isNaN and isNaN are not consistent\n // eslint-disable-next-line no-restricted-globals\n return !isNaN(input as any);\n}\n","interface OnDatePartChangeParams {\n day?: number;\n month?: number;\n year?: number;\n validYearMinLength?: number;\n minDate?: Date;\n maxDate?: Date;\n onChange: (v?: Date) => void;\n onBlur?: () => void;\n onFocus?: () => void;\n}\n\nexport function onDatePartChange({\n day,\n month,\n year,\n validYearMinLength = 4,\n minDate,\n maxDate,\n onChange,\n onBlur,\n onFocus,\n}: OnDatePartChangeParams): void {\n const arrayParts = [day, month, year];\n\n const isEverythingUndefined = arrayParts.every((v) => v === undefined);\n const isEverythingDefined = arrayParts.every(Boolean);\n\n // every parts are undefined\n if (isEverythingUndefined) {\n if (onFocus) onFocus();\n onChange(undefined);\n if (onBlur) onBlur();\n\n return;\n }\n\n // Do nothing if some input parts are empty\n if (!isEverythingDefined) {\n return;\n }\n\n const nextValue = new Date();\n\n const isValidYear = year && year.toString().length >= validYearMinLength;\n\n if (!isValidYear) {\n return;\n }\n\n if (day) nextValue.setDate(day);\n if (month) nextValue.setMonth(month - 1);\n if (year) nextValue.setFullYear(year);\n\n nextValue.setMinutes(0);\n nextValue.setHours(0);\n nextValue.setSeconds(0);\n nextValue.setMilliseconds(0);\n\n if (minDate) {\n minDate.setMinutes(0);\n minDate.setHours(0);\n minDate.setSeconds(0);\n minDate.setMilliseconds(0);\n const isMinDateAfterNextValue = minDate.getTime() > nextValue.getTime();\n\n if (isMinDateAfterNextValue) {\n if (onFocus) onFocus();\n onChange(undefined);\n if (onBlur) onBlur();\n\n return;\n }\n }\n\n if (maxDate) {\n maxDate.setMinutes(0);\n maxDate.setHours(0);\n maxDate.setSeconds(0);\n maxDate.setMilliseconds(0);\n\n const isMaxDateBeforeNextValue = nextValue.getTime() > maxDate.getTime();\n\n if (isMaxDateBeforeNextValue) {\n if (onFocus) onFocus();\n onChange(undefined);\n if (onBlur) onBlur();\n\n return;\n }\n }\n\n if (onFocus) onFocus();\n onChange(nextValue);\n if (onBlur) onBlur();\n}\n","export function stringToNumber(text: string): number | undefined {\n if (text.length === 0) return undefined;\n return parseInt(text, 10);\n}\n","import type { ReactElement, Ref } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput } from 'react-native';\nimport type { InputTextProps } from '../../InputText/InputText';\nimport { InputText } from '../../InputText/InputText';\nimport type { InputUIState } from '../../utils';\n\ninterface GetCurrentInternalForcedStateParams {\n isDisabled?: boolean;\n isFocusedInternal?: boolean;\n isPressedInternal?: boolean;\n isHoveredInternal?: boolean;\n}\n\nfunction getCurrentInternalForcedState({\n isDisabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n}: GetCurrentInternalForcedStateParams): InputUIState | 'disabled' {\n if (isDisabled) return 'disabled';\n\n if (isHoveredInternal) return 'hover';\n\n if (isFocusedInternal) return 'focus';\n\n if (isPressedInternal) return 'hover';\n\n return 'default';\n}\n\ninterface InputPartProps {\n id?: string;\n value?: string;\n placeholder?: InputTextProps['placeholder'];\n disabled?: boolean;\n isFocusedInternal?: boolean;\n isHoveredInternal?: boolean;\n isPressedInternal?: boolean;\n returnKeyType?: InputTextProps['returnKeyType'];\n onChange?: InputTextProps['onChange'];\n onBlur?: () => void;\n onSubmitEditing?: InputTextProps['onSubmitEditing'];\n}\n\nexport const InputPart = forwardRef(\n (\n {\n id,\n value,\n placeholder,\n disabled,\n isFocusedInternal,\n isHoveredInternal,\n isPressedInternal,\n returnKeyType,\n onChange,\n onBlur,\n onSubmitEditing,\n }: InputPartProps,\n ref: Ref<TextInput>,\n ): ReactElement => {\n return (\n <InputText\n ref={ref}\n id={id}\n internalForceState={getCurrentInternalForcedState({\n isDisabled: disabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n })}\n value={value}\n placeholder={placeholder}\n disabled={disabled}\n keyboardType=\"numeric\"\n returnKeyType={returnKeyType}\n textAlign=\"center\"\n onChange={onChange}\n onBlur={onBlur}\n onSubmitEditing={onSubmitEditing}\n />\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../../../native-base/primitives';\nimport { View } from '../../../native-base/primitives';\nimport { createResponsiveStyleFromProp } from '../../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { DatePickerProps } from '../DatePicker';\n\ninterface PartContainerProps {\n children: ReactNode;\n isStretch?: DatePickerProps['stretch'];\n width?: ViewProps['width'];\n}\n\nexport function PartContainer({ children, isStretch, width }: PartContainerProps): ReactElement {\n return (\n <View\n flex={createResponsiveStyleFromProp(isStretch, 0.33)}\n flexGrow={createResponsiveStyleFromProp(isStretch, 1)}\n width={isStretch ? undefined : width}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { forwardRef, useReducer, useRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport { HStack } from '../../../native-base/layout';\nimport { View } from '../../../native-base/primitives';\nimport { getReturnKeyTypeForNumericInput } from '../../../utils/getReturnKeyTypeForNumericInput/getReturnKeyTypeForNumericInput';\nimport type { InputTextProps } from '../../InputText/InputText';\nimport type { DatePickerProps } from '../DatePicker';\nimport { keyboardDatePickerReducer } from '../reducers/keyboardDatePickerReducer';\nimport { dayFormatter, monthFormatter, yearFormatter } from '../utils/dateFormatter';\nimport { isNumber } from '../utils/isNumber';\nimport { onDatePartChange } from '../utils/onDatePartChange';\nimport { stringToNumber } from '../utils/stringToNumber';\nimport { InputPart } from './InputPart';\nimport { PartContainer } from './PartContainer';\n\ninterface KeyboardDatePickerProps extends DatePickerProps {\n onSubmitEditing?: InputTextProps['onSubmitEditing'];\n}\n\nexport const KeyboardDatePicker = forwardRef<RNTextInput, KeyboardDatePickerProps>(\n (\n {\n id,\n value,\n testID,\n stretch,\n placeholder,\n minDate,\n maxDate,\n disabled,\n isFocusedInternal,\n isHoveredInternal,\n isPressedInternal,\n returnKeyType,\n onChange,\n onBlur,\n onFocus,\n onSubmitEditing,\n ...props\n }: KeyboardDatePickerProps,\n ref,\n ): ReactElement => {\n const monthRef = useRef<RNTextInput>(null);\n const yearRef = useRef<RNTextInput>(null);\n\n const defaultValue = value;\n\n const defaultDay = defaultValue?.getDate();\n const defaultMonth = defaultValue ? defaultValue.getMonth() + 1 : undefined;\n const defaultYear = defaultValue?.getFullYear();\n\n const [state, dispatch] = useReducer(keyboardDatePickerReducer, {\n currentValue: defaultValue,\n currentDay: defaultDay,\n currentMonth: defaultMonth,\n currentYear: defaultYear,\n displayedDay: defaultDay ? dayFormatter(defaultDay) : '',\n displayedMonth: defaultMonth ? monthFormatter(defaultMonth) : '',\n displayedYear: defaultYear ? yearFormatter(defaultYear) : '',\n minDate,\n maxDate,\n });\n\n const sharedInputPartProps = {\n isFocusedInternal,\n isHoveredInternal,\n isPressedInternal,\n disabled,\n };\n\n const handleDatePartChange = (\n day: number | undefined,\n month: number | undefined,\n year: number | undefined,\n ): void => {\n onDatePartChange({ day, month, year, minDate: state.minDate, maxDate: state.maxDate, onFocus, onBlur, onChange });\n };\n\n const handleAutoFocusNextField = (currentFieldValue: string, nextFieldRef: React.RefObject<RNTextInput>): void => {\n if (currentFieldValue.length === 2 && nextFieldRef.current) {\n nextFieldRef.current.focus();\n }\n };\n\n return (\n <View testID={testID} nativeID={id}>\n <HStack space=\"kitt.2\">\n <PartContainer isStretch={stretch} width=\"kitt.forms.datePicker.day.minWidth\">\n <InputPart\n ref={ref}\n id={id ? `${id}-day` : undefined}\n {...sharedInputPartProps}\n placeholder={placeholder?.day}\n value={state.displayedDay}\n returnKeyType={getReturnKeyTypeForNumericInput('next')}\n onChange={(e) => {\n const nextDay = stringToNumber(e.nativeEvent.text);\n\n dispatch({ type: 'day-change', nextDay });\n\n if (nextDay && isNumber(nextDay)) {\n handleDatePartChange(nextDay, state.currentMonth, state.currentYear);\n }\n\n handleAutoFocusNextField(e.nativeEvent.text, monthRef);\n }}\n onBlur={() => dispatch({ type: 'day-blur' })}\n onSubmitEditing={() => {\n monthRef.current?.focus();\n }}\n />\n </PartContainer>\n\n <PartContainer isStretch={stretch} width=\"kitt.forms.datePicker.month.minWidth\">\n <InputPart\n ref={monthRef}\n id={id ? `${id}-month` : undefined}\n {...sharedInputPartProps}\n placeholder={placeholder?.month}\n value={state.displayedMonth}\n returnKeyType={getReturnKeyTypeForNumericInput('next')}\n onChange={(e) => {\n const nextMonth = stringToNumber(e.nativeEvent.text);\n\n dispatch({ type: 'month-change', nextMonth });\n\n if (nextMonth && isNumber(nextMonth)) {\n handleDatePartChange(state.currentDay, nextMonth, state.currentYear);\n }\n\n handleAutoFocusNextField(e.nativeEvent.text, yearRef);\n }}\n onBlur={() => dispatch({ type: 'month-blur' })}\n onSubmitEditing={() => {\n yearRef.current?.focus();\n }}\n />\n </PartContainer>\n\n <PartContainer isStretch={stretch} width=\"kitt.forms.datePicker.year.minWidth\">\n <InputPart\n ref={yearRef}\n id={id ? `${id}-year` : undefined}\n {...sharedInputPartProps}\n placeholder={placeholder?.year}\n value={state.displayedYear}\n returnKeyType={returnKeyType ? getReturnKeyTypeForNumericInput(returnKeyType) : undefined}\n onChange={(e) => {\n const nextYear = stringToNumber(e.nativeEvent.text);\n\n dispatch({ type: 'year-change', nextYear });\n\n if (nextYear && isNumber(nextYear)) {\n handleDatePartChange(state.currentDay, state.currentMonth, nextYear);\n }\n }}\n onBlur={() => dispatch({ type: 'year-blur' })}\n onSubmitEditing={onSubmitEditing}\n />\n </PartContainer>\n </HStack>\n </View>\n );\n },\n);\n","import type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport type { DatePickerProps } from './DatePicker';\nimport { KeyboardDatePicker } from './components/KeyboardDatePicker';\n\nexport const DatePicker = forwardRef<RNTextInput, DatePickerProps>(\n ({ value, ...props }: DatePickerProps, ref): ReactElement => {\n // in apps, final-form can give a string value that will break the component\n const currentValue = value || undefined;\n\n return <KeyboardDatePicker ref={ref} {...props} value={currentValue} />;\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext } from 'react';\n\nexport const GoogleMapsApiKeyContext = createContext<string | undefined>(undefined);\n\nexport interface GoogleMapsApiKeyProviderProps {\n children: ReactNode;\n apiKey: string;\n}\n\nexport function GoogleMapsApiKeyProvider({ children, apiKey }: GoogleMapsApiKeyProviderProps): ReactElement {\n return <GoogleMapsApiKeyContext.Provider value={apiKey}>{children}</GoogleMapsApiKeyContext.Provider>;\n}\n","import { useContext } from 'react';\nimport { GoogleMapsApiKeyContext } from '../GoogleMapsApiKeyProvider';\n\nexport function useGoogleMapApiKey(): string {\n const context = useContext(GoogleMapsApiKeyContext);\n\n if (!context) {\n throw new Error('<GoogleMapsApiKeyContext> missing in the react tree');\n }\n\n return context;\n}\n","import { Loader } from '@googlemaps/js-api-loader';\nimport { useEffect, useRef } from 'react';\nimport { useGoogleMapApiKey } from '../../GoogleMapsApiKeyProvider/hooks/useGoogleMapApiKey';\nimport type { GetDetailsResponse, GetPlacePredictions, UseGooglePlacesServices } from './useGoogleMapsApi';\n\nexport function useGoogleMapsApi(): UseGooglePlacesServices {\n const apiKey = useGoogleMapApiKey();\n\n const autoCompleteServiceInstanceRef = useRef<google.maps.places.AutocompleteService | null>(null);\n const placesServiceInstanceRef = useRef<google.maps.places.PlacesService | null>(null);\n\n useEffect(() => {\n if (autoCompleteServiceInstanceRef.current && placesServiceInstanceRef.current) return;\n\n const loader = new Loader({\n apiKey,\n libraries: ['places'],\n });\n\n async function loadMapsApi(): Promise<void> {\n try {\n const placeApi = await loader.importLibrary('places');\n autoCompleteServiceInstanceRef.current = new placeApi.AutocompleteService();\n placesServiceInstanceRef.current = new placeApi.PlacesService(document.createElement('div'));\n } catch (error) {\n console.error(error);\n }\n }\n\n loadMapsApi();\n }, [apiKey]);\n\n return {\n autoComplete: {\n getPlacePredictions: (input: string): Promise<GetPlacePredictions> => {\n const promise = new Promise<GetPlacePredictions>((resolve) => {\n autoCompleteServiceInstanceRef.current?.getPlacePredictions({ input }, (predictions, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n resolve({ status, results: [] });\n return;\n }\n\n resolve({\n results: predictions,\n status,\n });\n });\n });\n\n return promise;\n },\n },\n placesService: {\n getDetails: (placeId: string): Promise<GetDetailsResponse> => {\n const promise = new Promise<GetDetailsResponse>((resolve) => {\n placesServiceInstanceRef.current?.getDetails({ placeId }, (place, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n resolve({ status, result: undefined });\n return;\n }\n\n resolve({\n result: place,\n status,\n });\n });\n });\n\n return promise;\n },\n },\n };\n}\n","import type { Reducer } from 'react';\n\nexport interface State {\n currentSelectedValue?: google.maps.places.PlaceResult;\n items: google.maps.places.AutocompletePrediction[];\n isLoadingSearch?: boolean;\n hasSearchError?: boolean;\n hasSelectResultError?: boolean;\n isLoadingResultDetails?: boolean;\n shouldDisplayEmptyStateWhenNoResults?: boolean;\n}\n\ninterface SearchChangeAction {\n type: 'search-change';\n}\n\ninterface SearchSuccessAction {\n type: 'search-success';\n payload: {\n results: google.maps.places.AutocompletePrediction[];\n };\n}\n\ninterface SearchErrorAction {\n type: 'search-error';\n}\n\ninterface SelectResultAction {\n type: 'select-result';\n}\n\ninterface SelectResultSuccessAction {\n type: 'select-result-success';\n payload: {\n result: google.maps.places.PlaceResult;\n };\n}\n\ninterface SelectResultErrorAction {\n type: 'select-result-error';\n}\n\ntype Actions =\n | SearchChangeAction\n | SelectResultAction\n | SearchSuccessAction\n | SearchErrorAction\n | SelectResultSuccessAction\n | SelectResultErrorAction;\n\nexport const googleMapsAutocompleteReducer: Reducer<State, Actions> = (state, action) => {\n switch (action.type) {\n case 'search-change': {\n return {\n ...state,\n hasSearchError: false,\n isLoadingSearch: true,\n };\n }\n\n case 'search-success': {\n return {\n ...state,\n hasSearchError: false,\n isLoadingSearch: false,\n items: action.payload.results,\n };\n }\n\n case 'search-error': {\n return {\n ...state,\n hasSearchError: true,\n isLoadingSearch: false,\n items: [],\n };\n }\n\n case 'select-result': {\n return {\n ...state,\n hasSelectResultError: false,\n isLoadingResultDetails: true,\n };\n }\n\n case 'select-result-success': {\n return {\n ...state,\n hasSelectResultError: false,\n isLoadingResultDetails: false,\n currentSelectedValue: action.payload.result,\n };\n }\n\n case 'select-result-error': {\n return {\n ...state,\n hasSelectResultError: true,\n isLoadingResultDetails: false,\n currentSelectedValue: undefined,\n };\n }\n\n default:\n return state;\n }\n};\n","import type { GeocoderAddressComponent } from '../types';\n\nexport function findComponentByType(\n typeName: string,\n components: GeocoderAddressComponent[],\n): GeocoderAddressComponent | undefined {\n return components.find((component) => component.types.includes(typeName));\n}\n\nconst matchStreetNumberWithOriginalAddress = (streetNumber = '', address = ''): string => {\n const regex = / *(\\d*[-/_]{0,1}\\d*) *(bis|ter|quater|quinquies|sexies|septies|octies|novies|decies|[a-z])? /i;\n const [, number = '', extension = ''] = regex.exec(address) || [];\n\n if (number) return `${number}${extension}`;\n\n return streetNumber;\n};\n\ntype GooglePlaceResult = google.maps.places.PlaceResult;\n\nexport interface AutoCompleteAddress {\n source: 'google';\n lat?: number;\n lng?: number;\n streetNumber?: string;\n streetName?: string;\n zipcode?: string;\n locality?: string;\n subLocality?: string;\n country?: string;\n administrativeAreaLevel1?: string;\n administrativeAreaLevel2?: string;\n}\n\nexport const formatAddressFromGoogle = (\n placeResult: GooglePlaceResult,\n originalAddress?: string,\n): AutoCompleteAddress => {\n const { address_components: addressComponents = [] } = placeResult;\n\n return {\n source: 'google',\n lat: placeResult.geometry?.location.lat(),\n lng: placeResult.geometry?.location.lng(),\n locality: findComponentByType('locality', addressComponents)?.long_name,\n subLocality: findComponentByType('sublocality', addressComponents)?.long_name,\n zipcode: findComponentByType('postal_code', addressComponents)?.long_name,\n streetName: findComponentByType('route', addressComponents)?.long_name,\n streetNumber: matchStreetNumberWithOriginalAddress(\n findComponentByType('street_number', addressComponents)?.long_name,\n originalAddress,\n ),\n country: findComponentByType('country', addressComponents)?.long_name,\n administrativeAreaLevel1: findComponentByType('administrative_area_level_1', addressComponents)?.long_name,\n administrativeAreaLevel2: findComponentByType('administrative_area_level_1', addressComponents)?.long_name,\n };\n};\n","import type { ReactElement } from 'react';\nimport { createContext, useCallback, useMemo, useReducer, useRef } from 'react';\nimport { useDebouncedCallback } from 'use-debounce';\nimport { useGoogleMapsApi } from './hooks/useGoogleMapsApi';\nimport { googleMapsAutocompleteReducer } from './reducer/googleMapsAutocompleteReducer';\nimport type { State } from './reducer/googleMapsAutocompleteReducer';\nimport type { AutoCompletePrediction } from './types';\nimport type { AutoCompleteAddress } from './utils/formatAddressFromGoogle';\nimport { formatAddressFromGoogle } from './utils/formatAddressFromGoogle';\n\nexport interface GoogleMapsAutocompleteContextApi {\n state: State;\n onInputChange: (value: string) => Promise<void> | undefined;\n onSelectItem: (item: AutoCompletePrediction | null, onChange: (nextValue?: AutoCompleteAddress) => void) => void;\n}\n\nexport const GoogleMapsAutocompleteContext = createContext<GoogleMapsAutocompleteContextApi>({\n state: {\n items: [],\n currentSelectedValue: undefined,\n isLoadingSearch: false,\n hasSearchError: false,\n hasSelectResultError: false,\n isLoadingResultDetails: false,\n shouldDisplayEmptyStateWhenNoResults: false,\n },\n onInputChange: (value) => {\n return Promise.resolve();\n },\n onSelectItem: (item) => {},\n});\n\nexport interface GoogleMapsAutocompleteProviderProps {\n children: ReactElement;\n minCharsToSearch?: number;\n debounceTimeout?: number;\n}\n\nexport function GoogleMapsAutocompleteProvider({\n children,\n minCharsToSearch = 3,\n debounceTimeout = 950,\n}: GoogleMapsAutocompleteProviderProps): ReactElement {\n const mapsApi = useGoogleMapsApi();\n\n const searchResultsCache = useRef<Record<string, AutoCompletePrediction[]>>({});\n const resultDetailsCache = useRef<Record<string, google.maps.places.PlaceResult>>({});\n\n const [state, dispatch] = useReducer(googleMapsAutocompleteReducer, {\n items: [],\n shouldDisplayEmptyStateWhenNoResults: false,\n });\n\n const handleInputChange = useDebouncedCallback(\n useCallback(\n async (value: string): Promise<void> => {\n if (value.length < minCharsToSearch) return;\n\n dispatch({ type: 'search-change' });\n\n // If the user types the same value as the previous search, we don't need to call the API again\n const predictionsPromise = searchResultsCache.current[value]\n ? Promise.resolve({ results: searchResultsCache.current[value], status: 'OK' })\n : mapsApi.autoComplete.getPlacePredictions(value);\n\n try {\n const { results, status } = await predictionsPromise;\n\n if (status !== 'OK') {\n dispatch({ type: 'search-error' });\n return;\n }\n\n // We cache the results to avoid calling the API again if the user types the same value\n searchResultsCache.current[value] = results;\n\n dispatch({ type: 'search-success', payload: { results } });\n } catch (error) {\n dispatch({ type: 'search-error' });\n }\n },\n [mapsApi.autoComplete, minCharsToSearch],\n ),\n debounceTimeout,\n );\n\n const handleSelectItem = useCallback(\n async (\n item: AutoCompletePrediction | null,\n onChange: (nextValue?: AutoCompleteAddress) => void,\n ): Promise<AutoCompleteAddress | undefined> => {\n // This case should never happen but it's here to avoid a TS error\n if (!item?.place_id) {\n if (onChange) onChange(undefined);\n return;\n }\n\n dispatch({ type: 'select-result' });\n\n try {\n // If we already have the details in cache, we don't need to fetch them again\n const placePromise = resultDetailsCache.current[item.place_id]\n ? Promise.resolve(resultDetailsCache.current[item.place_id])\n : mapsApi.placesService.getDetails(item.place_id).then(({ result }) => result);\n\n const place = await placePromise;\n\n if (!place) {\n dispatch({ type: 'select-result-error' });\n\n if (onChange) onChange(undefined);\n return;\n }\n\n dispatch({\n type: 'select-result-success',\n payload: {\n result: place,\n },\n });\n\n const formattedAddress = formatAddressFromGoogle(place, item.description);\n\n // We cache the result details to avoid fetching them again if the user selects the same item\n resultDetailsCache.current[item.place_id] = place;\n\n if (onChange) onChange(formattedAddress);\n } catch (error) {\n dispatch({ type: 'select-result-error' });\n\n if (onChange) onChange(undefined);\n }\n },\n [mapsApi.placesService],\n );\n\n const api = useMemo(\n () => ({ state, onSelectItem: handleSelectItem, onInputChange: handleInputChange }),\n [handleInputChange, handleSelectItem, state],\n );\n\n return <GoogleMapsAutocompleteContext.Provider value={api}>{children}</GoogleMapsAutocompleteContext.Provider>;\n}\n","import { useContext } from 'react';\nimport type { GoogleMapsAutocompleteContextApi } from '../GoogleMapsAutocompleteProvider';\nimport { GoogleMapsAutocompleteContext } from '../GoogleMapsAutocompleteProvider';\n\nexport function useGoogleMapsAutocomplete(): GoogleMapsAutocompleteContextApi {\n const context = useContext(GoogleMapsAutocompleteContext);\n\n if (!context) {\n throw new Error('<GoogleMapsAutocompleteProvider> missing in the react tree');\n }\n\n return context;\n}\n","import { MapPinIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport type { AutoCompletePrediction } from '../../GoogleMapsAutocompleteProvider/types';\nimport { HStack } from '../../native-base/layout';\nimport { View } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\nimport { Autocomplete } from '../Autocomplete/Autocomplete';\n\nexport interface InputAddressOptionProps {\n item: AutoCompletePrediction;\n}\n\nexport function InputAddressOption({ item }: InputAddressOptionProps): ReactElement {\n const sharedTransform = {\n style: {\n transform: [{ translateY: 4 }],\n },\n };\n\n return (\n <Autocomplete.Option item={item}>\n <HStack space=\"kitt.2\">\n <View _web={sharedTransform} _ios={sharedTransform} _android={sharedTransform}>\n <TypographyIcon icon={<MapPinIcon />} color=\"black\" />\n </View>\n <View flexShrink={1}>\n <Typography.Text>\n <Typography.Text variant=\"bold\">{item.structured_formatting.main_text}</Typography.Text>\n {item.structured_formatting.secondary_text ? (\n <Typography.Text color=\"black-light\" variant=\"bold\">\n {' '}\n {item.structured_formatting.secondary_text}\n </Typography.Text>\n ) : null}\n </Typography.Text>\n </View>\n </HStack>\n </Autocomplete.Option>\n );\n}\n","export function defaultItemToString(item?: google.maps.places.AutocompletePrediction): string {\n if (!item) return '';\n return item.structured_formatting.main_text;\n}\n","import type { AutoCompleteAddress } from '../../../GoogleMapsAutocompleteProvider/utils/formatAddressFromGoogle';\n\n// This function takes AutocompleteAddress and return a valid google AutocompletePrediction\nexport function formatInitialValueToAutocompletePrediction(\n address: AutoCompleteAddress,\n placeId: string,\n): google.maps.places.AutocompletePrediction {\n return {\n place_id: placeId,\n description: '',\n reference: '',\n types: [],\n terms: [],\n matched_substrings: [],\n structured_formatting: {\n main_text: [address.streetName, address.streetNumber].filter(Boolean).join(' '),\n main_text_matched_substrings: [],\n secondary_text: [address.zipcode, address.locality, address.subLocality].filter(Boolean).join(' '),\n },\n };\n}\n","import type { ReactElement } from 'react';\nimport { useGoogleMapsAutocomplete } from '../../GoogleMapsAutocompleteProvider/hooks/useGoogleMapsAutocomplete';\nimport type { AutoCompletePrediction } from '../../GoogleMapsAutocompleteProvider/types';\nimport type { AutoCompleteAddress } from '../../GoogleMapsAutocompleteProvider/utils/formatAddressFromGoogle';\nimport { Icon } from '../../Icon/Icon';\nimport { LoaderIcon } from '../../LoaderIcon/LoaderIcon';\nimport { Autocomplete } from '../Autocomplete/Autocomplete';\nimport type { AutocompleteProps } from '../Autocomplete/Autocomplete';\nimport { InputAddressOption } from './InputAddressOption';\nimport { defaultItemToString } from './utils/defaultItemToString';\nimport { formatInitialValueToAutocompletePrediction } from './utils/formatInitialValueToAutocompletePrediction';\n\nexport interface InputAddressProps<T extends object>\n extends Omit<AutocompleteProps<T>, 'onChange' | 'checkSelectedItem' | 'itemToString' | 'children' | 'initialValue'> {\n initialValue?: AutoCompleteAddress;\n itemToString?: (item?: AutoCompletePrediction) => string;\n onChange: (address: AutoCompleteAddress | undefined) => void;\n}\n\nexport function InputAddress({\n initialValue,\n itemToString = defaultItemToString,\n errorElement,\n emptyResultsElement,\n onChange,\n ...props\n}: InputAddressProps<AutoCompleteAddress>): ReactElement {\n const { state, onInputChange, onSelectItem } = useGoogleMapsAutocomplete();\n\n // place_id is a google field that is not available within an AutoCompleteAddress, so we need to add a fake one when handling initial values\n const formattedInitialValue = initialValue\n ? formatInitialValueToAutocompletePrediction(initialValue, 'initial-value-placeId')\n : undefined;\n\n return (\n <Autocomplete<AutoCompletePrediction>\n itemToString={itemToString}\n initialValue={formattedInitialValue}\n checkSelectedItem={(selectedItem, item) => selectedItem?.place_id === item.place_id}\n right={\n state.isLoadingSearch || state.isLoadingResultDetails ? (\n <Icon icon={<LoaderIcon />} color=\"kitt.black\" />\n ) : undefined\n }\n errorElement={state.hasSearchError || state.hasSelectResultError ? errorElement : null}\n emptyResultsElement={state.items.length === 0 ? emptyResultsElement : null}\n onInputChange={(v) => {\n onInputChange(v);\n }}\n onChange={(v) => {\n onSelectItem(v, onChange);\n }}\n >\n {state.items.map((item) => (\n <InputAddressOption key={item.place_id} item={item} />\n ))}\n </Autocomplete>\n );\n}\n\nInputAddress.Option = InputAddressOption;\n","import type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nexport interface InputEmailProps\n extends Except<InputTextProps, 'autoComplete' | 'keyboardType' | 'textContentType' | 'autoCapitalize'> {}\n\nexport const InputEmail = forwardRef<RNTextInput, InputEmailProps>((props: InputEmailProps, ref): ReactElement => {\n return (\n <InputText\n ref={ref}\n autoComplete=\"email\"\n keyboardType=\"email-address\"\n textContentType=\"emailAddress\"\n autoCapitalize=\"none\"\n {...props}\n />\n );\n});\n","import type { ReactElement, ReactNode } from 'react';\nimport { Typography } from '../../typography/Typography';\nimport type { TypographyColor, TypographyProps } from '../../typography/Typography';\nimport type { InputFormState } from '../utils';\n\nexport interface InputFeedbackProps {\n state?: InputFormState;\n testID?: TypographyProps['testID'];\n children: NonNullable<ReactNode>;\n}\n\nconst getColorFromState = (state?: InputFormState): TypographyColor => {\n switch (state) {\n case 'invalid':\n return 'danger';\n case 'valid':\n default:\n return 'black-light';\n }\n};\n\nexport function InputFeedback({ state, testID, children }: InputFeedbackProps): ReactElement {\n return (\n <Typography.Text base=\"body-small\" color={getColorFromState(state)} testID={testID}>\n {children}\n </Typography.Text>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\n\nexport interface InputFieldProps {\n label?: ReactNode;\n labelFeedback?: ReactNode;\n input: NonNullable<ReactNode>;\n feedback?: ReactNode;\n}\n\nexport function InputField({ label, labelFeedback, input, feedback }: InputFieldProps): ReactElement {\n const theme = useTheme();\n return (\n <View\n paddingTop={theme.kitt.forms.inputField.containerPaddingTop}\n paddingBottom={theme.kitt.forms.inputField.containerPaddingBottom}\n >\n {label ? (\n <View\n flexDirection=\"row\"\n alignItems=\"center\"\n paddingBottom={theme.kitt.forms.inputField.labelContainerPaddingBottom}\n >\n <View marginRight={theme.kitt.forms.inputField.labelFeedbackMarginLeft}>{label}</View>\n {labelFeedback}\n </View>\n ) : null}\n {input}\n {feedback ? <View paddingTop={theme.kitt.forms.inputField.feedbackPaddingTop}>{feedback}</View> : null}\n </View>\n );\n}\n","import { EyeIcon, EyeOffIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { forwardRef, useState } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport { InputIcon } from '../InputIcon/InputIcon';\nimport { InputPressable } from '../InputPressable/InputPressable';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nexport interface InputPasswordProps extends InputTextProps {\n isPasswordDefaultVisible?: boolean;\n}\n\nexport const InputPassword = forwardRef<RNTextInput, InputPasswordProps>(\n ({ isPasswordDefaultVisible, right, ...props }: InputPasswordProps, ref): ReactElement => {\n const [isVisible, setIsVisible] = useState(Boolean(isPasswordDefaultVisible));\n\n return (\n <InputText\n ref={ref}\n {...props}\n textContentType=\"password\"\n autoComplete=\"password\"\n autoCorrect={false}\n secureTextEntry={!isVisible}\n right={\n right || (\n <InputPressable\n testID=\"kitt.InputPassword.passwordToggle\"\n hitSlop={20}\n accessibilityRole=\"button\"\n onPress={() => setIsVisible((prev) => !prev)}\n >\n <InputIcon icon={isVisible ? <EyeOffIcon /> : <EyeIcon />} />\n </InputPressable>\n )\n }\n />\n );\n },\n);\n","import type { CountryCallingCode, ParsedNumber } from 'libphonenumber-js';\nimport { getCountryCallingCode, isValidNumber, parseNumber } from 'libphonenumber-js';\nimport type { ReactElement } from 'react';\nimport { forwardRef, useState } from 'react';\nimport type { NativeSyntheticEvent, TextInput as RNTextInput, TextInputChangeEventData } from 'react-native';\nimport type { Except } from 'type-fest';\nimport { getReturnKeyTypeForNumericInput } from '../../utils/getReturnKeyTypeForNumericInput/getReturnKeyTypeForNumericInput';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nfunction isPhoneNumberValid(number: Record<string, never> | ParsedNumber): number is ParsedNumber {\n return isValidNumber(number as ParsedNumber);\n}\n\nfunction prefixWithZero(value: string, phoneNumberLength: number): string {\n return value.padStart(phoneNumberLength, '0');\n}\n\nexport interface InputPhoneNumberData extends ParsedNumber {\n countryCode: CountryCallingCode;\n originalNativeEventText: string;\n}\n\nexport interface InputPhoneProps extends Except<InputTextProps, 'keyboardType' | 'textContentType'> {\n phoneNumberLength?: number;\n onChange?: (event: NativeSyntheticEvent<TextInputChangeEventData>, phoneNumberData?: InputPhoneNumberData) => void;\n}\n\nexport const InputPhone = forwardRef<RNTextInput, InputPhoneProps>(\n (\n { returnKeyType, autoComplete = 'tel', phoneNumberLength = 10, value, onChange, ...props }: InputPhoneProps,\n ref,\n ): ReactElement => {\n const [currentValue, setCurrentValue] = useState(value);\n\n const currentReturnKeyType = returnKeyType ? getReturnKeyTypeForNumericInput(returnKeyType) : undefined;\n\n const handleChange = (event: NativeSyntheticEvent<TextInputChangeEventData>): void => {\n const number = parseNumber(event.nativeEvent.text);\n\n // When intl phone number is valid :\n // 1 - We extract intl data\n // 2 - We recreate the local value to display\n if (isPhoneNumberValid(number)) {\n const { phone } = number;\n\n const finalPhoneNumber = prefixWithZero(`${phone || ''}`, phoneNumberLength);\n\n const eventWithoutCountryCode = {\n ...event,\n nativeEvent: {\n ...event.nativeEvent,\n text: finalPhoneNumber,\n },\n };\n\n setCurrentValue(finalPhoneNumber);\n\n if (onChange) {\n onChange(eventWithoutCountryCode, {\n ...(number as ParsedNumber),\n countryCode: getCountryCallingCode(number.country),\n originalNativeEventText: event.nativeEvent.text,\n });\n }\n\n return;\n }\n\n // Value is correctly parsed but might not pass validation\n setCurrentValue(event.nativeEvent.text);\n if (onChange) onChange(event);\n };\n\n return (\n <InputText\n ref={ref}\n {...props}\n value={currentValue}\n keyboardType=\"phone-pad\"\n returnKeyType={currentReturnKeyType}\n autoComplete={autoComplete}\n textContentType=\"telephoneNumber\"\n onChange={handleChange}\n />\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport type { TypographyColor } from '../../typography/Typography';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\n\ntype InputTagType = 'success' | 'danger';\n\nconst getTypographyColor = (type: InputTagType | undefined): TypographyColor => (type ? 'white' : 'black');\n\nexport interface InputTagProps {\n type?: InputTagType;\n children: ReactNode;\n icon?: ReactElement;\n}\n\nexport function InputTag({ children, type, icon }: InputTagProps): ReactElement {\n const typographyColor = getTypographyColor(type);\n const theme = useTheme();\n\n return (\n <View\n alignItems=\"center\"\n justifyContent=\"center\"\n flexDirection=\"row\"\n alignSelf=\"flex-start\"\n overflow=\"hidden\"\n paddingX=\"kitt.2\"\n backgroundColor={`kitt.forms.inputTag.${type || 'default'}.backgroundColor`}\n borderRadius=\"kitt.forms.inputTag.borderRadius\"\n >\n {icon ? (\n <View marginRight=\"kitt.1\">\n <TypographyIcon icon={icon} size={theme.kitt.forms.inputTag.iconSize} color={typographyColor} />\n </View>\n ) : null}\n <Typography.Text base=\"body-small\" color={typographyColor}>\n {children}\n </Typography.Text>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Platform } from 'react-native';\nimport { Typography } from '../../typography/Typography';\n\nexport interface LabelProps {\n id?: string;\n htmlFor: string;\n children: NonNullable<ReactNode>;\n}\n\nexport function Label({ id, htmlFor, children }: LabelProps): ReactElement {\n const isWeb = Platform.OS === 'web';\n return (\n <Typography.Text base=\"body\" nativeID={isWeb ? undefined : id}>\n {isWeb ? (\n <label id={id} htmlFor={htmlFor}>\n {children}\n </label>\n ) : (\n children\n )}\n </Typography.Text>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\n\ninterface InnerCircleProps {\n isChecked?: boolean;\n}\n\nexport function InnerCircle({ isChecked }: InnerCircleProps): ReactElement {\n const theme = useTheme();\n\n const sharedTransform = [{ scale: isChecked ? 1 : 0 }];\n\n return (\n <View\n width=\"kitt.forms.radio.innerCircle.size\"\n height=\"kitt.forms.radio.innerCircle.size\"\n borderRadius=\"kitt.forms.radio.innerCircle.borderRadius\"\n backgroundColor=\"kitt.forms.radio.innerCircle.backgroundColor\"\n _web={{\n style: {\n transform: sharedTransform,\n transitionProperty: 'all',\n transitionDuration: theme.kitt.forms.radio.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radio.transition.timingFunction,\n },\n }}\n _ios={{\n style: {\n transform: sharedTransform,\n },\n }}\n _android={{\n style: {\n transform: sharedTransform,\n },\n }}\n />\n );\n}\n","interface GetBackgroundColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBackgroundColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBackgroundColorParams): string {\n if (isChecked) return 'kitt.forms.radio.checked.backgroundColor';\n\n if (isDisabled) return 'kitt.forms.radio.disabled.backgroundColor';\n\n if (isPressed) return 'kitt.forms.radio.pressed.backgroundColor';\n\n if (isHovered) return 'kitt.forms.radio.hover.backgroundColor';\n\n if (isFocused) return 'kitt.forms.radio.focus.backgroundColor';\n\n return 'kitt.forms.radio.default.backgroundColor';\n}\n","interface GetBorderColorParams {\n isDisabled?: boolean;\n isChecked?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getBorderColor({\n isDisabled,\n isPressed,\n isHovered,\n isFocused,\n isChecked,\n}: GetBorderColorParams): string {\n if (isChecked) return 'kitt.forms.radio.checked.borderColor';\n\n if (isDisabled) return 'kitt.forms.radio.disabled.borderColor';\n\n if (isPressed) return 'kitt.forms.radio.pressed.borderColor';\n\n if (isHovered) return 'kitt.forms.radio.hover.borderColor';\n\n if (isFocused) return 'kitt.forms.radio.focus.borderColor';\n\n return 'kitt.forms.radio.default.borderColor';\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\nimport { getBackgroundColor } from './utils/getBackgroundColor';\nimport { getBorderColor } from './utils/getBorderColor';\n\ninterface OuterCircleProps {\n children: ReactElement;\n isChecked?: boolean;\n isDisabled?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n}\n\nexport function OuterCircle({\n children,\n isChecked,\n isDisabled,\n isHovered,\n isFocused,\n isPressed,\n}: OuterCircleProps): ReactElement {\n const theme = useTheme();\n\n return (\n <View\n alignItems=\"center\"\n justifyContent=\"center\"\n borderWidth=\"kitt.forms.radio.borderWidth\"\n width=\"kitt.forms.radio.size\"\n height=\"kitt.forms.radio.size\"\n borderRadius=\"kitt.forms.radio.borderRadius\"\n backgroundColor={getBackgroundColor({ isChecked, isDisabled, isFocused, isHovered, isPressed })}\n borderColor={getBorderColor({ isChecked, isDisabled, isFocused, isHovered, isPressed })}\n _web={{\n style: {\n transitionProperty: 'all',\n transitionDuration: theme.kitt.forms.radio.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radio.transition.timingFunction,\n },\n }}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport type { GestureResponderEvent, PressableProps } from 'react-native';\nimport { HStack } from '../../native-base/layout';\nimport { Pressable } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport { InnerCircle } from './InnerCircle';\nimport { OuterCircle } from './OuterCircle';\n\nexport interface RadioProps {\n id?: string;\n testID?: string;\n name?: string;\n checked?: boolean;\n disabled?: boolean;\n right?: boolean;\n children?: NonNullable<ReactNode>;\n value: string;\n onChange?: (newValue: string, event: GestureResponderEvent) => void;\n onBlur?: () => void;\n onFocus?: () => void;\n}\n\nexport const Radio = forwardRef<PressableProps, RadioProps>(\n ({ id, checked, value, disabled, children, testID, onChange, onFocus, onBlur }: RadioProps, ref): ReactElement => {\n const handlePress: PressableProps['onPress'] = (event: GestureResponderEvent) => {\n if (onFocus) onFocus();\n if (onChange) onChange(value, event);\n if (onBlur) onBlur();\n };\n\n return (\n <Pressable\n ref={ref}\n testID={testID}\n nativeID={id}\n disabled={disabled}\n accessibilityRole=\"radio\"\n aria-checked={checked}\n focusable={checked && !disabled}\n flexDirection=\"row\"\n alignItems=\"center\"\n onPress={handlePress}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <HStack space={children ? 'kitt.2' : undefined} alignItems=\"center\">\n <OuterCircle\n isChecked={checked}\n isDisabled={disabled}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n >\n <InnerCircle isChecked={checked} />\n </OuterCircle>\n\n {children ? (\n <Typography.SetDefaultColor value={disabled ? 'black-light' : 'black'}>\n <Typography.Text base=\"body\">{children}</Typography.Text>\n </Typography.SetDefaultColor>\n ) : null}\n </HStack>\n )}\n </Pressable>\n );\n },\n);\n","interface GetCurrentBackgroundColorParams {\n isFocused?: boolean;\n isPressed?: boolean;\n isSelected?: boolean;\n isDisabled?: boolean;\n}\n\nexport function getCurrentBackgroundColor({\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n}: GetCurrentBackgroundColorParams): string {\n if (isDisabled) return 'disabled';\n\n if (isPressed) return 'pressed';\n\n if (isFocused) return 'active';\n\n if (isSelected) return 'active';\n\n return 'default';\n}\n","interface GetCurrentBorderColorParams {\n isFocused?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isDisabled?: boolean;\n}\n\nexport function getCurrentBorderColor({\n isFocused,\n isSelected,\n isPressed,\n isDisabled,\n}: GetCurrentBorderColorParams): string {\n if (isDisabled) return 'disabled';\n\n if (isFocused) return 'hover';\n\n if (isPressed) return 'pressed';\n\n if (isSelected) return 'active';\n\n return 'default';\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../../KittThemeContext';\nimport { View } from '../../../native-base/primitives';\nimport { getCurrentBackgroundColor } from '../utils/getCurrentBackgroundColor';\nimport { getCurrentBorderColor } from '../utils/getCurrentBorderColor';\nimport type { AnimatedContainerProps } from './AnimatedContainer';\n\nexport function AnimatedContainer({\n children,\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n isFirst,\n isLast,\n}: AnimatedContainerProps): ReactElement {\n const theme = useTheme();\n\n return (\n <View\n _web={{\n style: {\n transitionProperty: theme.kitt.forms.radioButtonGroup.item.transition.property,\n transitionDuration: theme.kitt.forms.radioButtonGroup.item.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radioButtonGroup.item.transition.timingFunction,\n },\n }}\n borderColor={`kitt.forms.radioButtonGroup.item.borderColor.${getCurrentBorderColor({\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n })}`}\n borderWidth=\"kitt.forms.radioButtonGroup.item.borderWidth\"\n backgroundColor={`kitt.forms.radioButtonGroup.item.backgroundColor.${getCurrentBackgroundColor({\n isFocused,\n isPressed,\n isSelected,\n isDisabled,\n })}`}\n borderTopLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderTopRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderLeftWidth={isFirst ? 'kitt.forms.radioButtonGroup.item.borderWidth' : 0}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../../KittThemeContext';\nimport { View } from '../../native-base/primitives';\n\ninterface FocusBorderProps {\n isPressed?: boolean;\n isHovered?: boolean;\n isSelected?: boolean;\n isFocused?: boolean;\n isFirst?: boolean;\n isLast?: boolean;\n}\n\nexport function HoverBorder({\n isFirst,\n isLast,\n isSelected,\n isHovered,\n isFocused,\n isPressed,\n}: FocusBorderProps): ReactElement {\n const theme = useTheme();\n const hasPointerInteraction = isPressed || isHovered || isFocused;\n const shouldDisplayBorder = isSelected ? true : hasPointerInteraction;\n\n return (\n <View\n _web={{\n style: {\n width: `calc(100% + ${theme.kitt.forms.radioButtonGroup.item.borderWidth * 2}px)`,\n height: `calc(100% + ${theme.kitt.forms.radioButtonGroup.item.borderWidth * 2}px)`,\n transitionProperty: theme.kitt.forms.radioButtonGroup.item.transition.property,\n transitionDuration: theme.kitt.forms.radioButtonGroup.item.transition.duration,\n transitionTimingFunction: theme.kitt.forms.radioButtonGroup.item.transition.timingFunction,\n },\n }}\n opacity={shouldDisplayBorder ? 1 : 0}\n position=\"absolute\"\n top={-theme.kitt.forms.radioButtonGroup.item.borderWidth}\n left={-theme.kitt.forms.radioButtonGroup.item.borderWidth}\n margin={0}\n borderColor={`kitt.forms.radioButtonGroup.item.borderColor.${\n isHovered || isSelected || isFocused ? 'hover' : 'default'\n }`}\n borderWidth=\"kitt.forms.radioButtonGroup.item.borderWidth\"\n borderTopLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomLeftRadius={isFirst ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderTopRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n borderBottomRightRadius={isLast ? 'kitt.forms.radioButtonGroup.item.borderRadius' : 0}\n />\n );\n}\n","import type { NativeAnimation, UseNativeAnimationOptions } from './useNativeAnimation';\n\nexport function useNativeAnimation(options: UseNativeAnimationOptions): NativeAnimation {\n return {\n onPressIn: undefined,\n onPressOut: undefined,\n animatedStyles: {},\n };\n}\n","import type { TypographyColor } from '../../../typography/Typography';\n\ninterface GetCurrentTextColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n}\n\nexport function getCurrentTextColor({\n isDisabled,\n isSelected,\n isPressed,\n isHovered,\n isFocused,\n}: GetCurrentTextColorParams): TypographyColor {\n if (isDisabled) return 'black-light';\n\n if (isSelected) return 'white';\n\n if (isPressed) return 'white';\n\n if (isFocused) return 'white';\n\n if (isHovered && !isSelected) return 'black';\n\n return 'black';\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Platform } from 'react-native';\nimport { Pressable, View } from '../../native-base/primitives';\nimport { Typography } from '../../typography/Typography';\nimport type { ResponsiveValue } from '../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { createResponsiveStyleFromProp } from '../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport { AnimatedContainer } from './AnimatedContainer/AnimatedContainer';\nimport { HoverBorder } from './HoverBorder';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\nimport { getCurrentTextColor } from './utils/getCurrentTextColor';\n\nexport interface RadioButtonProps<V> {\n children: ReactNode;\n isFirst?: boolean;\n isLast?: boolean;\n disabled?: boolean;\n value: V;\n selected?: boolean;\n stretch?: ResponsiveValue<boolean | undefined>;\n /**\n * @internal Used to display pressed UI for testing and storybook purpose\n */\n isPressedInternal?: boolean;\n /**\n * @internal Used to display hovered UI for testing and storybook purpose\n */\n isHoveredInternal?: boolean;\n /**\n * @internal Used to display focused UI for testing and storybook purpose\n */\n isFocusedInternal?: boolean;\n onChange?: (value?: V) => void;\n onFocus?: (e?: any | GestureResponderEvent) => void;\n onBlur?: (e?: any | GestureResponderEvent) => void;\n}\n\nexport function RadioButton<V>({\n children,\n value,\n selected,\n isFirst,\n isLast,\n disabled,\n stretch,\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onChange,\n onFocus,\n onBlur,\n}: RadioButtonProps<V>): ReactElement {\n const { onPressIn, onPressOut, animatedStyles } = useNativeAnimation({\n isDisabled: disabled,\n isSelected: selected,\n isPressedInternal,\n });\n\n const handlePress = (e: GestureResponderEvent): void => {\n if (onFocus) onFocus(e);\n\n if (onChange) onChange(value);\n\n if (onBlur) onBlur(e);\n };\n\n return (\n <Pressable\n accessibilityRole=\"radiogroup\"\n accessibilityState={{ checked: selected }}\n flex={createResponsiveStyleFromProp(stretch, 1, undefined)}\n disabled={disabled}\n onPress={handlePress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {({ isHovered, isPressed, isFocused }) => (\n <AnimatedContainer\n animatedStyles={animatedStyles}\n isFocused={isFocused || isFocusedInternal}\n isPressed={isPressed || isPressedInternal}\n isSelected={selected}\n isDisabled={disabled}\n isFirst={isFirst}\n isLast={isLast}\n >\n <View\n paddingX=\"kitt.forms.radioButtonGroup.item.padding.horizontal\"\n paddingY=\"kitt.forms.radioButtonGroup.item.padding.vertical\"\n alignItems=\"center\"\n >\n <Typography.SetDefaultColor\n value={getCurrentTextColor({\n isSelected: selected || isPressedInternal,\n isPressed,\n isHovered: isHovered || isHoveredInternal,\n isDisabled: disabled,\n isFocused: isFocused || isFocusedInternal,\n })}\n >\n {children}\n </Typography.SetDefaultColor>\n {Platform.OS === 'web' ? (\n <HoverBorder\n isFirst={isFirst}\n isLast={isLast}\n isSelected={selected}\n isHovered={isHovered || isHoveredInternal}\n isPressed={isPressed || isPressedInternal}\n isFocused={isFocused || isFocusedInternal}\n />\n ) : null}\n </View>\n </AnimatedContainer>\n )}\n </Pressable>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Children, cloneElement, useState } from 'react';\nimport type { ViewProps } from '../../native-base/primitives';\nimport { View } from '../../native-base/primitives';\nimport type { ResponsiveValue } from '../../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { RadioButtonProps } from './RadioButton';\nimport { RadioButton } from './RadioButton';\n\ntype InternalInheritedProps =\n | 'isFirst'\n | 'isLast'\n | 'selected'\n | 'stretch'\n | 'disabled'\n | 'onChange'\n | 'onFocus'\n | 'onBlur';\n\ninterface RadioButtonGroupItemProps<V> extends Omit<RadioButtonProps<V>, InternalInheritedProps> {}\n\nfunction RadioButtonGroupItem<V>({ ...props }: RadioButtonGroupItemProps<V>): ReactElement {\n return <RadioButton {...props} />;\n}\n\nexport interface RadioButtonGroupProps<V> extends Exclude<ViewProps, 'onBlur' | 'onFocus'> {\n children: ReactNode;\n disabled?: boolean;\n hovered?: boolean;\n selected?: boolean;\n stretch?: ResponsiveValue<boolean | undefined>;\n value?: V;\n onChange?: (newValue: V) => void;\n onFocus?: (e?: any) => void;\n onBlur?: (e?: any) => void;\n}\n\nexport function RadioButtonGroup<V>({\n children,\n stretch,\n value,\n disabled,\n onFocus,\n onBlur,\n onChange,\n ...props\n}: RadioButtonGroupProps<V>): ReactElement {\n const [currentValue, setCurrentValue] = useState(value);\n\n const handleChange = (newValue: V): void => {\n if (disabled) return;\n\n setCurrentValue(newValue);\n if (onChange) onChange(newValue);\n };\n\n const childrenArray = Children.toArray(children) as ReactElement<RadioButtonProps<V>, typeof RadioButton>[];\n\n return (\n <View flexDirection=\"row\" flexWrap=\"wrap\" {...props}>\n {childrenArray.map((child, index) => {\n const clone = cloneElement<RadioButtonProps<V>>(child, {\n stretch,\n disabled,\n selected: child.props.value === currentValue,\n isFirst: index === 0,\n isLast: index === childrenArray.length - 1,\n onChange: handleChange,\n onFocus,\n onBlur,\n } as any);\n\n return clone;\n })}\n </View>\n );\n}\n\nRadioButtonGroup.RadioButton = RadioButtonGroupItem;\n","import type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport type { TextInput as RNTextInput } from 'react-native';\nimport type { InputTextProps } from '../InputText/InputText';\nimport { InputText } from '../InputText/InputText';\n\nexport interface TextAreaProps extends InputTextProps {}\n\nexport const TextArea = forwardRef<RNTextInput, TextAreaProps>(({ ...props }: TextAreaProps, ref): ReactElement => {\n return <InputText ref={ref} multiline textAlignVertical=\"top\" minHeight=\"kitt.forms.textArea.minHeight\" {...props} />;\n});\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\n\nexport interface FullscreenModalBodyProps extends ViewProps {\n children: NonNullable<ReactNode>;\n shouldHandleBottomNotch?: boolean;\n shouldHandleTopNotch?: boolean;\n}\n\nexport function FullscreenModalBody({\n children,\n shouldHandleBottomNotch,\n style,\n shouldHandleTopNotch,\n ...props\n}: FullscreenModalBodyProps): ReactElement {\n const { bottom, top } = useSafeAreaInsets();\n const {\n kitt: {\n fullscreenModal: {\n body: { verticalPadding },\n },\n },\n } = useTheme();\n const paddingBottom = shouldHandleBottomNotch ? Math.max(bottom, verticalPadding) : verticalPadding;\n const paddingTop = shouldHandleTopNotch ? Math.max(top, verticalPadding) : verticalPadding;\n\n return (\n <View\n {...props}\n paddingX=\"kitt.fullscreenModal.horizontalPadding\"\n paddingTop={paddingTop}\n paddingBottom={paddingBottom}\n style={style}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface FullscreenModalFooterProps extends ViewProps {\n hasSeparator?: boolean;\n shouldHandleBottomNotch?: boolean;\n}\n\nexport function FullscreenModalFooter({\n shouldHandleBottomNotch = true,\n hasSeparator = true,\n children,\n ...props\n}: FullscreenModalFooterProps): ReactElement {\n const { bottom } = useSafeAreaInsets();\n\n return (\n <View\n borderTopColor=\"kitt.separator\"\n borderTopWidth={hasSeparator ? 1 : undefined}\n paddingTop=\"kitt.fullscreenModal.footer.verticalPadding\"\n paddingBottom={shouldHandleBottomNotch ? bottom : undefined}\n paddingX=\"kitt.fullscreenModal.horizontalPadding\"\n {...props}\n >\n <View paddingBottom=\"kitt.fullscreenModal.footer.verticalPadding\">{children}</View>\n </View>\n );\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { useTheme } from '../KittThemeContext';\nimport { Overlay } from '../Overlay/Overlay';\nimport { View } from '../native-base/primitives';\nimport {\n webAnimationContentDuration,\n webAnimationContentEasing,\n webAnimationOverlayDuration,\n webAnimationOverlayEasing,\n} from '../themes/late-ocean/fullscreenModal';\nimport type { FullscreenModalAnimationProps } from './FullscreenModalAnimation';\n\nconst [x1, y1, x2, y2] = webAnimationContentEasing;\n\nconst cubicBezierSlideIn = `cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})`;\n\nconst slideInFromBottomEnter = css`\n transform: translateY(100%);\n`;\n\nconst slideInFromBottomEnterActive = css`\n transform: translateY(0);\n transition: transform ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst slideInFromBottomExit = css`\n transform: translateY(0);\n`;\n\nconst slideInFromBottomExitActive = css`\n transform: translateY(100%);\n transition: transform ${webAnimationContentDuration}ms ${cubicBezierSlideIn};\n`;\n\nconst slideInClassNames = {\n appear: slideInFromBottomEnter,\n appearActive: slideInFromBottomEnterActive,\n enter: slideInFromBottomEnter,\n enterActive: slideInFromBottomEnterActive,\n exit: slideInFromBottomExit,\n exitActive: slideInFromBottomExitActive,\n};\n\nconst [xA, yA, xB, yB] = webAnimationOverlayEasing;\n\nconst cubicBezierOpacity = `cubic-bezier(${xA}, ${yA}, ${xB}, ${yB})`;\n\nconst opacityEnter = css`\n opacity: 0;\n`;\n\nconst opacityEnterActive = css`\n opacity: 1;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOpacity};\n`;\n\nconst opacityExit = css`\n opacity: 1;\n`;\n\nconst opacityExitActive = css`\n opacity: 0;\n transition: opacity ${webAnimationOverlayDuration}ms ${cubicBezierOpacity};\n`;\n\nconst opacityClassNames = {\n appear: opacityEnter,\n appearActive: opacityEnterActive,\n enter: opacityEnter,\n enterActive: opacityEnterActive,\n exit: opacityExit,\n exitActive: opacityExitActive,\n};\n\nexport function FullscreenModalAnimation({\n children,\n appear = true,\n visible,\n unmountOnExit = true,\n isAnimationEnabled = true,\n onEnter,\n onEntered,\n onExit,\n onExited,\n onClose,\n ...props\n}: FullscreenModalAnimationProps): ReactElement {\n const theme = useTheme();\n const { animation } = theme.kitt.fullscreenModal;\n\n const sharedProps = {\n in: visible,\n appear,\n unmountOnExit,\n };\n\n return (\n <View {...props}>\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.overlay.duration : 0}\n classNames={opacityClassNames}\n >\n <Overlay onPress={onClose} />\n </CSSTransition>\n\n <CSSTransition\n {...sharedProps}\n timeout={isAnimationEnabled ? animation.content.duration : 0}\n classNames={slideInClassNames}\n onEnter={onEnter}\n onEntered={onEntered}\n onExit={onExit}\n onExited={onExited}\n >\n {children}\n </CSSTransition>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport type { FullscreenModalAnimationProps } from './FullscreenModalAnimation';\nimport { FullscreenModalAnimation } from './FullscreenModalAnimation';\n\nexport interface FullscreenModalBehaviourProps extends FullscreenModalAnimationProps {\n onClose: ModalBehaviourProps['onClose'];\n}\n\nexport function FullscreenModalBehaviour({\n children,\n visible,\n onClose,\n onExited,\n ...props\n}: FullscreenModalBehaviourProps): ReactElement {\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <FullscreenModalAnimation {...props} visible={visible} onExited={handleExitAnimationDone}>\n {children}\n </FullscreenModalAnimation>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\nexport interface FullscreenModalContainerProps {\n backgroundColor?: ViewProps['backgroundColor'];\n children?: ReactNode;\n}\n\nexport function FullscreenModalContainer({ children, backgroundColor }: FullscreenModalContainerProps): ReactElement {\n return (\n <View\n position=\"relative\"\n flex={1}\n /*\n Here we are setting the same min and max height because on web the content was overflowing and not scrolling\n minHeight is needed to make the modal fullscreen\n maxHeight limits the height to the viewport when the content is too long, this allows us to scroll inside\n */\n _web={{ minHeight: '100vh', maxHeight: '100vh' }}\n backgroundColor={backgroundColor ?? 'kitt.uiBackgroundLight'}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\n\ninterface BaseHeaderProps extends Except<ViewProps, 'left' | 'right'> {\n left?: ReactNode;\n right?: ReactNode;\n hasSeparator?: boolean;\n isTransparent?: boolean;\n shouldHandleTopNotch?: boolean;\n}\n\ninterface TitledHeaderProps extends BaseHeaderProps {\n title?: ReactNode;\n children?: never;\n}\n\ninterface ComponentHeaderProps extends BaseHeaderProps {\n title?: never;\n children?: ReactNode;\n}\n\nexport type FullscreenModalHeaderProps = TitledHeaderProps | ComponentHeaderProps;\n\nexport function FullscreenModalHeader({\n hasSeparator = true,\n isTransparent,\n title,\n children,\n right,\n left,\n shouldHandleTopNotch = true,\n ...props\n}: FullscreenModalHeaderProps): ReactElement {\n const { top } = useSafeAreaInsets();\n const hasRight = Boolean(right);\n const hasLeft = Boolean(left);\n const hasContent = Boolean(title || children);\n\n return (\n <View\n backgroundColor={isTransparent ? 'kitt.transparent' : 'kitt.uiBackgroundLight'}\n minHeight=\"kitt.fullscreenModal.header.height\"\n width=\"100%\"\n justifyContent=\"center\"\n paddingTop={shouldHandleTopNotch ? top : undefined}\n paddingRight={hasRight ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding'}\n paddingLeft={hasLeft ? 'kitt.2' : 'kitt.fullscreenModal.horizontalPadding'}\n borderBottomColor=\"kitt.separator\"\n borderBottomWidth={hasSeparator ? 1 : undefined}\n {...props}\n >\n <View\n flexDirection=\"row\"\n alignItems=\"center\"\n justifyContent={!hasContent && !hasLeft ? 'flex-end' : 'space-between'}\n >\n {left ? <View width=\"kitt.iconButton.width\">{left}</View> : null}\n\n {title ? (\n <View flex={1} paddingLeft={hasLeft ? 'kitt.2' : undefined} paddingRight={hasRight ? 'kitt.2' : 0}>\n <Typography.Text variant=\"bold\" textAlign={!hasLeft && hasRight ? 'left' : 'center'}>\n {title}\n </Typography.Text>\n </View>\n ) : null}\n\n {children ? (\n <View\n flex={1}\n alignItems=\"center\"\n paddingLeft={hasLeft ? 'kitt.2' : undefined}\n paddingRight={hasRight ? 'kitt.2' : undefined}\n >\n {children}\n </View>\n ) : null}\n\n {right || left ? <View width=\"kitt.iconButton.width\">{right}</View> : null}\n </View>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { ScrollView } from 'react-native';\nimport type { ViewProps } from '..';\nimport { View } from '../native-base/primitives';\nimport { FullscreenModalBody } from './Body';\nimport { FullscreenModalFooter } from './Footer';\nimport { FullscreenModalBehaviour } from './FullscreenModalBehaviour';\nimport { FullscreenModalContainer } from './FullscreenModalContainer';\nimport { FullscreenModalHeader } from './Header';\n\nexport interface FullscreenModalProps {\n header?: ReactNode;\n footer?: ReactNode;\n body: ReactNode;\n backgroundColor?: ViewProps['backgroundColor'];\n}\n\nexport function FullscreenModal({ body, header, footer, backgroundColor }: FullscreenModalProps): ReactElement {\n return (\n <FullscreenModalContainer backgroundColor={backgroundColor}>\n {header ? <View>{header}</View> : null}\n <View flexGrow={1} flexShrink={1} justifyContent=\"space-between\">\n <ScrollView bounces={false} contentContainerStyle={{ flexGrow: 1, position: 'relative' }}>\n {body}\n </ScrollView>\n {footer || null}\n </View>\n </FullscreenModalContainer>\n );\n}\n\nFullscreenModal.Header = FullscreenModalHeader;\nFullscreenModal.Footer = FullscreenModalFooter;\nFullscreenModal.Body = FullscreenModalBody;\nFullscreenModal.ModalBehaviour = FullscreenModalBehaviour;\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\n\n/** @deprecated use primary instead */\ntype DeprecatedHighlightVariant = 'regular';\n\ntype HighlightVariant = 'primary' | 'secondary' | 'dark' | DeprecatedHighlightVariant;\n\nexport interface HighlightProps {\n variant?: HighlightVariant;\n children: NonNullable<ReactNode>;\n}\n\nexport function Highlight({ variant = 'regular', children }: HighlightProps): ReactElement {\n return (\n <View\n borderRadius=\"kitt.highlight.borderRadius\"\n padding=\"kitt.highlight.padding\"\n backgroundColor={`kitt.highlight.${variant}.backgroundColor`}\n >\n {children}\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport type { IconButtonColor } from './IconButton';\n\nfunction getBackgroundColor(color: IconButtonColor, isDisabled?: boolean): string {\n if (isDisabled) {\n return 'kitt.iconButton.disabled.backgroundColor';\n }\n\n switch (color) {\n case 'primary':\n return 'kitt.iconButton.primary.pressed.backgroundColor';\n case 'white':\n return 'kitt.iconButton.white.pressed.backgroundColor';\n case 'black':\n default:\n return 'kitt.iconButton.black.pressed.backgroundColor';\n }\n}\n\ninterface BackgroundProps extends ViewProps {\n color: IconButtonColor;\n isDisabled?: boolean;\n _web?: Partial<ViewProps>;\n}\n\nexport function Background({ color, isDisabled, ...props }: BackgroundProps): ReactElement {\n return (\n <View\n {...props}\n width=\"100%\"\n height=\"100%\"\n borderRadius=\"kitt.iconButton.borderRadius\"\n backgroundColor={getBackgroundColor(color, isDisabled)}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport type { AnimatedBackgroundProps } from './AnimatedBackground';\nimport { Background } from './Background';\n\nexport function AnimatedBackground({\n color,\n isHovered,\n isPressed,\n isFocused,\n isDisabled,\n}: AnimatedBackgroundProps): ReactElement {\n const theme = useTheme();\n const { duration, timingFunction } = theme.kitt.iconButton.transition;\n\n const shouldDisplayBackground = isHovered || isPressed || isFocused || isDisabled;\n\n return (\n <Background\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n opacity={shouldDisplayBackground ? 1 : 0}\n color={color}\n isDisabled={isDisabled}\n _web={{\n style: {\n transitionProperty: 'all',\n transitionDuration: duration,\n transitionTimingFunction: timingFunction,\n },\n }}\n />\n );\n}\n","import type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport { useBreakpointValue } from '../native-base/utils';\nimport type { AnimatedScaleProps } from './AnimatedScale';\n\nfunction getCurrentScale(isHovered: boolean, scaleHover: number, isPressed: boolean, scalePressed: number): number {\n if (isPressed) {\n return scalePressed;\n }\n\n if (isHovered) {\n return scaleHover;\n }\n\n return 1;\n}\n\nexport function AnimatedScale({ children, isHovered, isPressed, isDisabled }: AnimatedScaleProps): ReactElement {\n const theme = useTheme();\n const { scale } = theme.kitt.iconButton;\n\n const currentHoverScale = useBreakpointValue({\n base: scale.base.hover,\n medium: scale.medium.hover,\n }) as number;\n\n const currentPressedScale = useBreakpointValue({\n base: scale.base.active,\n medium: scale.medium.active,\n }) as number;\n\n const currentScale = getCurrentScale(Boolean(isHovered), currentHoverScale, Boolean(isPressed), currentPressedScale);\n\n const { duration, timingFunction } = theme.kitt.iconButton.transition;\n\n return (\n <View\n position=\"relative\"\n alignItems=\"center\"\n justifyContent=\"center\"\n width=\"100%\"\n height=\"100%\"\n overflow=\"hidden\"\n _web={{\n style: {\n transitionProperty: 'transform',\n transitionDuration: duration,\n transitionTimingFunction: timingFunction,\n /* Simplifies the animation to just the front of the object – avoid blurry scale */\n backfaceVisibility: 'hidden',\n transform: [{ scale: isDisabled ? 1 : currentScale }],\n },\n }}\n >\n {children}\n </View>\n );\n}\n","import type { UseNativeAnimation } from './useNativeAnimation';\n\nexport function useNativeAnimation(): UseNativeAnimation {\n return {\n opacityStyles: undefined,\n scaleStyles: undefined,\n onPressIn: () => {},\n onPressOut: () => {},\n };\n}\n","import type { ReactElement } from 'react';\nimport type { PressableProps } from '../native-base/primitives';\nimport { Pressable, View } from '../native-base/primitives';\nimport { TypographyIcon } from '../typography/TypographyIcon';\nimport { AnimatedBackground } from './AnimatedBackground';\nimport { AnimatedScale } from './AnimatedScale';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\n\nexport type IconButtonColor = 'black' | 'white' | 'primary';\n\nexport interface IconButtonProps {\n icon: NonNullable<ReactElement>;\n color?: IconButtonColor;\n disabled?: boolean;\n testID?: string;\n accessibilityLabel?: PressableProps['accessibilityLabel'];\n accessibilityRole?: PressableProps['accessibilityRole'];\n /** @internal for story purpose */\n isHoveredInternal?: boolean;\n /** @internal for story purpose */\n isPressedInternal?: boolean;\n /** @internal for story purpose */\n isFocusedInternal?: boolean;\n onPress?: () => void;\n}\n\nexport function IconButton({\n icon,\n color = 'black',\n disabled,\n testID,\n accessibilityLabel,\n accessibilityRole = 'button',\n isHoveredInternal,\n isPressedInternal,\n isFocusedInternal,\n onPress,\n}: IconButtonProps): ReactElement {\n const { onPressIn, onPressOut, opacityStyles, scaleStyles } = useNativeAnimation({\n isDisabled: disabled,\n isPressed: isPressedInternal,\n });\n\n return (\n <Pressable\n testID={testID}\n disabled={disabled}\n width=\"kitt.iconButton.width\"\n height=\"kitt.iconButton.height\"\n accessibilityLabel={accessibilityLabel}\n accessibilityRole={accessibilityRole}\n _web={{\n style: {\n backfaceVisibility: 'hidden',\n transform: [{ translate3d: '0' }],\n },\n }}\n borderRadius=\"kitt.iconButton.borderRadius\"\n borderColor={disabled ? 'kitt.iconButton.disabled.borderColor' : 'kitt.iconButton.borderColor'}\n borderWidth={disabled ? 'kitt.iconButton.borderWidth' : 0}\n onPress={onPress}\n onPressIn={onPressIn}\n onPressOut={onPressOut}\n >\n {({ isHovered, isPressed, isFocused }) => {\n const isCurrentHovered = isHovered || isHoveredInternal;\n const isCurrentPressed = isPressed || isPressedInternal;\n const isCurrentFocused = isFocused || isFocusedInternal;\n\n return (\n <AnimatedScale\n isDisabled={disabled}\n isHovered={isCurrentHovered}\n isPressed={isCurrentPressed}\n scaleStyles={scaleStyles}\n >\n <AnimatedBackground\n color={color}\n isDisabled={disabled}\n isHovered={isCurrentHovered}\n isPressed={isCurrentPressed}\n isFocused={isCurrentFocused}\n opacityStyles={opacityStyles}\n />\n <View alignItems=\"center\" justifyContent=\"center\">\n <TypographyIcon color={disabled ? 'black-light' : color} icon={icon} />\n </View>\n </AnimatedScale>\n );\n }}\n </Pressable>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext, useMemo } from 'react';\n\nexport interface KittMapConfigProviderConfig {\n mapId: string;\n apiToken: string;\n}\n\nexport const KittMapConfigProviderContext = createContext<KittMapConfigProviderConfig | undefined>(undefined);\n\nexport interface KittMapProviderProps {\n mapId: string;\n apiToken: string;\n children: ReactNode;\n}\n\nexport function KittMapConfigProvider({ children, mapId, apiToken }: KittMapProviderProps): ReactElement {\n const providerValue = useMemo(\n () => ({\n mapId,\n apiToken,\n }),\n [mapId, apiToken],\n );\n\n return (\n <KittMapConfigProviderContext.Provider value={providerValue}>{children}</KittMapConfigProviderContext.Provider>\n );\n}\n","import { useContext } from 'react';\nimport type { KittMapConfigProviderConfig } from '../KittMapConfigProvider';\nimport { KittMapConfigProviderContext } from '../KittMapConfigProvider';\n\nexport function useKittMapConfig(): KittMapConfigProviderConfig {\n const context = useContext(KittMapConfigProviderContext);\n\n if (!context) {\n throw new Error('<KittMapConfigProvider> missing in the react tree');\n }\n\n return context;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps } from 'react-native';\nimport { View } from '../native-base/primitives';\n\nexport interface ListItemContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n}\n\nexport function ListItemContent({ children, ...rest }: ListItemContentProps): ReactElement {\n return (\n <View alignSelf=\"center\" flexBasis=\"0%\" flexGrow={1} flexShrink={0} {...rest}>\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps, ViewStyle } from 'react-native';\nimport { View } from '../native-base/primitives';\n\nexport interface ListItemSideContainerProps extends ViewProps {\n children: NonNullable<ReactNode>;\n side?: 'left' | 'right';\n}\n\n// Handles the vertical alignment of the side elements of the list item\nexport function ListItemSideContainer({ children, side = 'left', ...rest }: ListItemSideContainerProps): ReactElement {\n return (\n <View\n flexDirection=\"row\"\n marginLeft={side === 'right' ? 'kitt.2' : undefined}\n marginRight={side === 'left' ? 'kitt.2' : undefined}\n {...rest}\n >\n {children}\n </View>\n );\n}\n\nexport interface ListItemSideContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n align?: ViewStyle['alignSelf'];\n}\n\nexport function ListItemSideContent({ children, align = 'auto', ...rest }: ListItemSideContentProps): ReactElement {\n return (\n <View alignSelf={align} {...rest}>\n {children}\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Fragment } from 'react';\nimport type { PressableProps, ViewProps } from 'react-native';\nimport { Pressable } from 'react-native';\nimport { View } from '../native-base/primitives';\nimport { ListItemContent } from './ListItemContent';\nimport { ListItemSideContainer, ListItemSideContent } from './ListItemSideContent';\n\ntype Borders = 'top' | 'bottom' | 'both';\n\nexport interface ListItemProps extends ViewProps {\n children: NonNullable<ReactNode>;\n left?: ReactNode;\n right?: ReactNode;\n borders?: Borders;\n withPadding?: boolean;\n onPress?: PressableProps['onPress'];\n}\n\nexport function ListItem({\n children,\n withPadding,\n borders,\n left,\n right,\n onPress,\n ...rest\n}: ListItemProps): ReactElement {\n const Wrapper = onPress ? Pressable : Fragment;\n const wrapperProps = onPress ? { accessibilityRole: 'button', onPress, ...rest } : undefined;\n const containerProps = onPress ? undefined : rest;\n\n return (\n <Wrapper {...(wrapperProps as any)}>\n <View\n flexDirection=\"row\"\n paddingX={withPadding ? 'kitt.listItem.horizontalPadding' : undefined}\n paddingY={withPadding ? 'kitt.listItem.verticalPadding' : undefined}\n borderColor=\"kitt.listItem.borderColor\"\n backgroundColor=\"kitt.uiBackgroundLight\"\n borderTopWidth={borders === 'top' || borders === 'both' ? 'kitt.listItem.borderWidth' : undefined}\n borderBottomWidth={borders === 'bottom' || borders === 'both' ? 'kitt.listItem.borderWidth' : undefined}\n {...containerProps}\n >\n {left ? <ListItemSideContainer side=\"left\">{left}</ListItemSideContainer> : null}\n\n <ListItemContent>{children}</ListItemContent>\n\n {right ? <ListItemSideContainer side=\"right\">{right}</ListItemSideContainer> : null}\n </View>\n </Wrapper>\n );\n}\n\nListItem.Content = ListItemContent;\nListItem.SideContent = ListItemSideContent;\nListItem.SideContainer = ListItemSideContainer;\n","<svg fill=\"currentColor\" viewBox=\"0 0 54 56\" width=\"54\" xmlns=\"http://www.w3.org/2000/svg\"><linearGradient id=\"marker-large_inline_svg__b\" gradientUnits=\"userSpaceOnUse\" x1=\"26.828\" x2=\"7.181\" y1=\"5.072\" y2=\"39.102\"><stop offset=\"0\" stop-opacity=\".01\"/><stop offset=\"1\"/></linearGradient><filter id=\"marker-large_inline_svg__a\" color-interpolation-filters=\"sRGB\" filterUnits=\"userSpaceOnUse\" height=\"48.706\" width=\"42.761\" x=\"10.437\" y=\"5.167\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/><feBlend in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"/><feGaussianBlur result=\"effect1_foregroundBlur_257_3018\" stdDeviation=\"2.718\"/></filter><mask id=\"marker-large_inline_svg__c\" height=\"43\" maskUnits=\"userSpaceOnUse\" width=\"31\" x=\"3\" y=\"3\"><path d=\"M16.303 44.99a3.002 3.002 0 0 0 4.394 0C29.631 35.38 34 26.678 34 18.938 34 10.12 27.04 3 18.5 3S3 10.12 3 18.938c0 7.74 4.369 16.442 13.303 26.052z\" fill=\"#fff\"/></mask><g filter=\"url(#marker-large_inline_svg__a)\" opacity=\".25\"><path d=\"M24.022 48.149c-3.018 1.02-6.128-.775-6.753-3.899-1.372-6.862-2.799-18.548 1.348-25.73C22.966 10.985 32.545 8.374 40 12.678c7.454 4.303 9.982 13.903 5.63 21.44-4.146 7.182-14.98 11.79-21.608 14.032z\" fill=\"url(#marker-large_inline_svg__b)\"/></g><g mask=\"url(#marker-large_inline_svg__c)\"><path d=\"M3 3h31v43H3z\" fill=\"#4c34e0\"/></g><path d=\"M15.677 46.315c-2.682-3.029-6.253-7.443-9.145-12.356C3.622 29.015 1.5 23.735 1.5 18.938 1.5 9.27 9.152 1.5 18.5 1.5c9.349 0 17 7.771 17 17.438 0 4.797-2.122 10.077-5.032 15.02-2.892 4.914-6.463 9.328-9.145 12.357-1.536 1.735-4.11 1.735-5.646 0z\" stroke=\"#fff\" stroke-width=\"3\"/></svg>","<svg viewBox=\"0 0 40 39\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M16.417 33.38c-2.3.776-4.668-.592-5.146-2.971-1.059-5.274-2.171-14.297 1.027-19.837 3.348-5.798 10.717-7.806 16.452-4.495 5.735 3.31 7.68 10.697 4.333 16.495-3.198 5.54-11.57 9.088-16.666 10.808z\" fill=\"url(#marker_inline_svg__a)\" opacity=\".25\" filter=\"url(#marker_inline_svg__b)\"/><path d=\"M10.89 29.536a2.81 2.81 0 0 0 4.22 0C20.428 23.492 23 18.054 23 13.256 23 7.58 18.507 3 13 3S3 7.58 3 13.256c0 4.798 2.572 10.236 7.89 16.28z\" fill=\"#4C34E0\"/><mask id=\"marker_inline_svg__c\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"3\" y=\"3\" width=\"20\" height=\"28\"><path d=\"M10.89 29.536a2.81 2.81 0 0 0 4.22 0C20.428 23.492 23 18.054 23 13.256 23 7.58 18.507 3 13 3S3 7.58 3 13.256c0 4.798 2.572 10.236 7.89 16.28z\" fill=\"#fff\"/></mask><g mask=\"url(#marker_inline_svg__c)\"><path fill=\"#4C34E0\" d=\"M3 3h20v27H3z\"/></g><path d=\"M10.374 31c-1.884-2.216-4.125-5.144-5.888-8.307C2.71 19.505 1.5 16.22 1.5 13.256 1.5 6.734 6.681 1.5 13 1.5s11.5 5.234 11.5 11.756c0 2.964-1.21 6.249-2.986 9.437-1.763 3.163-4.004 6.091-5.888 8.307-1.414 1.662-3.838 1.662-5.252 0z\" stroke=\"#fff\" stroke-width=\"3\"/><defs><linearGradient id=\"marker_inline_svg__a\" x1=\"18.616\" y1=\".226\" x2=\"3.501\" y2=\"26.405\" gradientUnits=\"userSpaceOnUse\"><stop stop-opacity=\".01\"/><stop offset=\"1\"/></linearGradient><filter id=\"marker_inline_svg__b\" x=\"6.046\" y=\".339\" width=\"32.817\" height=\"37.4\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/><feBlend in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"/><feGaussianBlur stdDeviation=\"2.071\" result=\"effect1_foregroundBlur_257_3020\"/></filter></defs></svg>","<svg viewBox=\"0 0 47 47\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M23.5 36C30.404 36 36 30.404 36 23.5S30.404 11 23.5 11 11 16.596 11 23.5 16.596 36 23.5 36z\" fill=\"#38836D\" opacity=\".8\" filter=\"url(#position-marker_inline_svg__a)\"/><path d=\"M31 18.5a7.5 7.5 0 1 1-15 0 7.5 7.5 0 0 1 15 0z\" fill=\"#fff\" stroke=\"#38836D\" stroke-width=\"10\"/><circle cx=\"23.5\" cy=\"18.5\" r=\"2.5\" fill=\"#fff\"/><defs><filter id=\"position-marker_inline_svg__a\" x=\".127\" y=\".127\" width=\"46.746\" height=\"46.746\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/><feBlend in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"/><feGaussianBlur stdDeviation=\"5.437\" result=\"effect1_foregroundBlur_257_3019\"/></filter></defs></svg>","import { useSx } from 'native-base';\nimport type { ColorType } from 'native-base/lib/typescript/components/types';\nimport type { ReactElement } from 'react';\nimport LargeMarkerSvg from './assets/marker-large.inline.svg';\nimport DefaultMarkerSvg from './assets/marker.inline.svg';\nimport PositionMarkerSvg from './assets/position-marker.inline.svg';\n\ninterface BaseMarkerWithSizeProps {\n width: number;\n height: number;\n}\n\ninterface BaseMarkerWithoutSizeProps {\n width?: never;\n height?: never;\n}\n\ninterface BaseMarkerWithColorProp {\n color?: ColorType;\n}\n\nexport type MapMarkerProps = BaseMarkerWithSizeProps | BaseMarkerWithoutSizeProps;\n\nexport function MapMarkerSimple({\n width = 40,\n height = 39,\n color = 'kitt.primary',\n}: MapMarkerProps & BaseMarkerWithColorProp): ReactElement {\n const sx = useSx();\n const styles = sx({\n color,\n });\n\n return <DefaultMarkerSvg width={width} height={height} color={styles.color} />;\n}\n\nexport function MapMarkerLarge({\n width = 54,\n height = 56,\n color = 'kitt.primary',\n}: MapMarkerProps & BaseMarkerWithColorProp): ReactElement {\n const sx = useSx();\n const styles = sx({\n color,\n });\n\n return <LargeMarkerSvg width={width} height={height} color={styles.color} />;\n}\n\nexport function MapMarkerPosition({ width = 47, height = 47 }: MapMarkerProps): ReactElement {\n return <PositionMarkerSvg width={width} height={height} />;\n}\n","import { AlertCircleIcon, AlertTriangleIcon, CheckIcon, InfoIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { MessageType } from './BaseMessage';\n\ninterface IconContentProps {\n type: MessageType;\n color: TypographyColor;\n}\n\nexport function IconContent({ type, color }: IconContentProps): ReactElement {\n switch (type) {\n case 'warning':\n return <AlertCircleIcon color={color} />;\n case 'success':\n return <CheckIcon color={color} />;\n case 'danger':\n return <AlertTriangleIcon color={color} />;\n default:\n return <InfoIcon color={color} />;\n }\n}\n","import type { IconButtonProps } from '../IconButton/IconButton';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { MessageType } from './BaseMessage';\n\nexport const getColorByType = (type: MessageType): TypographyColor => {\n switch (type) {\n case 'success':\n return 'white';\n case 'danger':\n return 'white';\n case 'warning':\n default:\n return 'black';\n }\n};\n\nexport const getIconButtonColor = (messageType: MessageType): IconButtonProps['color'] => {\n switch (messageType) {\n case 'success':\n case 'danger':\n return 'white';\n case 'warning':\n default:\n return 'black';\n }\n};\n","import { XIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { EdgeInsets } from 'react-native-safe-area-context';\nimport { Icon } from '../Icon/Icon';\nimport { IconButton } from '../IconButton/IconButton';\nimport { HStack } from '../native-base/layout';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { IconContent } from './IconContent';\nimport { getColorByType, getIconButtonColor } from './helper';\n\nexport type MessageType = 'success' | 'warning' | 'danger' | 'info';\n\nexport interface BaseMessageProps {\n type?: MessageType;\n children: NonNullable<ReactNode>;\n /**\n * @internal for styling between Message and Notification\n */\n hasNoRadius?: boolean;\n centeredText?: boolean;\n insets?: EdgeInsets;\n onDismiss?: () => void;\n}\n\nexport function BaseMessage({\n type = 'info',\n children,\n hasNoRadius,\n centeredText,\n insets,\n onDismiss,\n}: BaseMessageProps): ReactElement {\n const color = getColorByType(type);\n\n return (\n <HStack\n alignItems=\"flex-start\"\n justifyContent=\"space-between\"\n minHeight=\"kitt.feedbackMessage.minHeight\"\n paddingTop={insets?.top}\n borderRadius={hasNoRadius ? undefined : 'kitt.5'}\n backgroundColor={`kitt.feedbackMessage.${type}.backgroundColor`}\n >\n <HStack\n flexGrow={1}\n flexShrink={1}\n alignSelf=\"center\"\n alignItems=\"flex-start\"\n paddingY=\"kitt.4\"\n paddingX=\"kitt.5\"\n >\n {centeredText ? null : (\n <View marginTop=\"kitt.1\" marginRight=\"kitt.5\">\n <Icon color={color} icon={<IconContent type={type} color={color} />} />\n </View>\n )}\n <Typography.Text\n flexGrow={1}\n flexShrink={1}\n textAlign={centeredText ? 'center' : 'left'}\n base=\"body\"\n color={color}\n >\n {children}\n </Typography.Text>\n </HStack>\n\n {onDismiss ? (\n <View alignItems=\"center\" marginTop={10} marginRight=\"kitt.2\" marginLeft=\"kitt.5\">\n <IconButton color={getIconButtonColor(type)} icon={<XIcon />} onPress={onDismiss} />\n </View>\n ) : null}\n </HStack>\n );\n}\n","import type { ReactElement } from 'react';\nimport type { BaseMessageProps } from '../BaseMessage/BaseMessage';\nimport { BaseMessage } from '../BaseMessage/BaseMessage';\n\nexport interface MessageProps extends BaseMessageProps {}\n\nexport function Message({\n type = 'info',\n children,\n hasNoRadius,\n centeredText,\n insets,\n onDismiss,\n}: MessageProps): ReactElement {\n return (\n <BaseMessage\n insets={insets}\n hasNoRadius={hasNoRadius}\n type={type}\n centeredText={centeredText}\n onDismiss={onDismiss}\n >\n {children}\n </BaseMessage>\n );\n}\n","import type { NativeBaseProviderProps } from 'native-base';\nimport { NativeBaseProvider, extendTheme } from 'native-base';\nimport type { ReactElement, ReactNode } from 'react';\nimport { useMemo } from 'react';\nimport { Platform } from 'react-native';\nimport type { KittTheme } from '..';\nimport { KittBreakpoints } from '../KittBreakpoints';\nimport { KittThemeContext } from '../KittThemeContext';\nimport type { Theme } from '../themes/default';\n\nexport type Enumerate<N, A extends number[] = []> = A['length'] extends N\n ? A[number]\n : Enumerate<N, [...A, A['length']]>;\n\ntype KittSize = `kitt.${Exclude<Enumerate<65>, 0>}`;\ntype KittNegativeSize = `-kitt.${Exclude<Enumerate<65>, 0>}`;\n\ntype KittScaleRecord = Record<KittSize, number>;\ntype KittNegativeScaleRecord = Record<KittNegativeSize, number>;\ninterface KittSizeRecord {\n positive: Partial<KittScaleRecord>;\n negative: Partial<KittNegativeScaleRecord>;\n}\n\nconst createKittSpaces = (theme: Theme): KittSizeRecord => {\n const MAX_SIZE = 64;\n const sizes: KittSizeRecord = {\n positive: {},\n negative: {},\n };\n for (let size = 1; size <= MAX_SIZE; size++) {\n sizes.positive[`kitt.${size}` as KittSize] = theme.getSpacing(size);\n sizes.negative[`-kitt.${size}` as KittNegativeSize] = -theme.getSpacing(size);\n }\n return sizes;\n};\n\n// reset native-base to be able to set size / space as a number\n// https://docs.nativebase.io/next/default-theme#h2-size\nconst overridenNativeBaseSizeandSpaceScale = Object.fromEntries(\n [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 16, 20, 24, 32, 40, 48, 56, 64, 72, 80, 96, 0.5, 1.5, 2.5, 3.5].map((value) => [\n value,\n value,\n ]),\n);\n\nexport interface AppKittThemeExtensionsBreakpoints {}\nexport interface AppKittThemeExtensionsColors {}\nexport interface AppKittThemeExtensionsSizes {}\nexport interface AppKittThemeExtensionsSpace {}\nexport interface AppKittThemeExtensionsShadows {}\nexport interface AppKittThemeExtensionsOpacity {}\nexport interface AppKittThemeExtensionsBorderWidths {}\nexport interface AppKittThemeExtensionsRadii {}\n\nexport interface AppKittThemeExtensions {\n sizes: AppKittThemeExtensionsSpace;\n space: AppKittThemeExtensionsSpace;\n shadows: AppKittThemeExtensionsShadows;\n opacity: AppKittThemeExtensionsOpacity;\n borderWidths: AppKittThemeExtensionsBorderWidths;\n colors: AppKittThemeExtensionsColors;\n radii: AppKittThemeExtensionsRadii;\n breakpoints: AppKittThemeExtensionsBreakpoints;\n}\n\nexport type ExtensibleNativeBaseThemeKey =\n | 'sizes'\n | 'space'\n | 'shadows'\n | 'opacity'\n | 'borderWidths'\n | 'colors'\n | 'radii'\n | 'breakpoints';\n\nexport type ExtensibleNativeBaseAppThemeConfig = Partial<Record<ExtensibleNativeBaseThemeKey, Record<string, any>>>;\n\ntype ValidAppTheme<T> = T extends ExtensibleNativeBaseAppThemeConfig ? T : never;\n\nexport type AppTheme = Partial<ValidAppTheme<AppKittThemeExtensions>>;\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type -- let typescript infer types\nexport function createKittNativeBaseCustomTheme(theme: Theme, appTheme?: AppTheme) {\n const spaces = createKittSpaces(theme);\n\n const appBreakpoints: AppKittThemeExtensionsBreakpoints =\n appTheme?.breakpoints || ({} as AppKittThemeExtensionsBreakpoints);\n\n const extendedTheme = extendTheme({\n colors: {\n kitt: {\n ...theme.colors,\n actionCard: {\n secondary: {\n default: {\n backgroundColor: theme.actionCard.secondary.default.backgroundColor,\n borderColor: theme.actionCard.secondary.default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard.secondary.disabled.backgroundColor,\n borderColor: theme.actionCard.secondary.disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard.secondary.hovered.backgroundColor,\n borderColor: theme.actionCard.secondary.hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard.secondary.focused.backgroundColor,\n borderColor: theme.actionCard.secondary.focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard.secondary.pressed.backgroundColor,\n borderColor: theme.actionCard.secondary.pressed.borderColor,\n },\n },\n primary: {\n default: {\n backgroundColor: theme.actionCard.primary.default.backgroundColor,\n borderColor: theme.actionCard.primary.default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard.primary.disabled.backgroundColor,\n borderColor: theme.actionCard.primary.disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard.primary.hovered.backgroundColor,\n borderColor: theme.actionCard.primary.hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard.primary.focused.backgroundColor,\n borderColor: theme.actionCard.primary.focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard.primary.pressed.backgroundColor,\n borderColor: theme.actionCard.primary.pressed.borderColor,\n },\n },\n 'primary-border-soft': {\n default: {\n backgroundColor: theme.actionCard['primary-border-soft'].default.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard['primary-border-soft'].disabled.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard['primary-border-soft'].hovered.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard['primary-border-soft'].focused.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard['primary-border-soft'].pressed.backgroundColor,\n borderColor: theme.actionCard['primary-border-soft'].pressed.borderColor,\n },\n },\n 'primary-border-hard': {\n default: {\n backgroundColor: theme.actionCard['primary-border-hard'].default.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard['primary-border-hard'].disabled.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard['primary-border-hard'].hovered.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard['primary-border-hard'].focused.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard['primary-border-hard'].pressed.backgroundColor,\n borderColor: theme.actionCard['primary-border-hard'].pressed.borderColor,\n },\n },\n highlight: {\n default: {\n backgroundColor: theme.actionCard.highlight.default.backgroundColor,\n borderColor: theme.actionCard.highlight.default.borderColor,\n },\n disabled: {\n backgroundColor: theme.actionCard.highlight.disabled.backgroundColor,\n borderColor: theme.actionCard.highlight.disabled.borderColor,\n },\n hovered: {\n backgroundColor: theme.actionCard.highlight.hovered.backgroundColor,\n borderColor: theme.actionCard.highlight.hovered.borderColor,\n },\n focused: {\n backgroundColor: theme.actionCard.highlight.focused.backgroundColor,\n borderColor: theme.actionCard.highlight.focused.borderColor,\n },\n pressed: {\n backgroundColor: theme.actionCard.highlight.pressed.backgroundColor,\n borderColor: theme.actionCard.highlight.pressed.borderColor,\n },\n },\n },\n avatar: {\n default: {\n backgroundColor: theme.colors.primary,\n },\n light: {\n backgroundColor: theme.palettes.lateOcean.black100,\n },\n },\n button: {\n default: theme.button.default,\n primary: theme.button.primary,\n danger: theme.button.danger,\n white: theme.button.white,\n subtle: theme.button.subtle,\n 'subtle-dark': theme.button['subtle-dark'],\n disabled: theme.button.disabled,\n },\n choices: {\n item: {\n default: {\n backgroundColor: theme.choices.item.backgroundColor.default,\n },\n disabled: {\n backgroundColor: theme.choices.item.backgroundColor.disabled,\n borderColor: theme.choices.item.disabled.border.color,\n },\n selected: {\n backgroundColor: theme.choices.item.backgroundColor.selected,\n },\n pressed: {\n backgroundColor: theme.choices.item.backgroundColor.pressed,\n },\n hover: {\n backgroundColor: theme.choices.item.backgroundColor.hover,\n },\n hoverWhenSelected: {\n backgroundColor: theme.choices.item.backgroundColor.hoverWhenSelected,\n },\n },\n },\n tag: {\n primary: {\n fill: {\n backgroundColor: theme.tag.primary.fill.backgroundColor,\n borderColor: theme.tag.primary.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.primary.outline.backgroundColor,\n borderColor: theme.tag.primary.outline.borderColor,\n },\n },\n default: {\n fill: {\n backgroundColor: theme.tag.default.fill.backgroundColor,\n borderColor: theme.tag.default.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.default.outline.backgroundColor,\n borderColor: theme.tag.default.outline.borderColor,\n },\n },\n danger: {\n fill: {\n backgroundColor: theme.tag.danger.fill.backgroundColor,\n borderColor: theme.tag.danger.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.danger.outline.backgroundColor,\n borderColor: theme.tag.danger.outline.borderColor,\n },\n },\n warn: {\n fill: {\n backgroundColor: theme.tag.warn.fill.backgroundColor,\n borderColor: theme.tag.warn.fill.borderColor,\n },\n outline: {\n backgroundColor: theme.tag.warn.outline.backgroundColor,\n borderColor: theme.tag.warn.outline.borderColor,\n },\n },\n },\n tooltip: {\n backgroundColor: theme.tooltip.backgroundColor,\n },\n typography: theme.typography.colors,\n palettes: theme.palettes,\n feedbackMessage: {\n danger: { backgroundColor: theme.feedbackMessage.danger.backgroundColor },\n info: { backgroundColor: theme.feedbackMessage.info.backgroundColor },\n success: { backgroundColor: theme.feedbackMessage.success.backgroundColor },\n warning: { backgroundColor: theme.feedbackMessage.warning.backgroundColor },\n },\n forms: {\n autocomplete: {\n option: {\n default: { backgroundColor: theme.forms.autocomplete.option.default.backgroundColor },\n hovered: { backgroundColor: theme.forms.autocomplete.option.hovered.backgroundColor },\n focused: { backgroundColor: theme.forms.autocomplete.option.focused.backgroundColor },\n selected: { backgroundColor: theme.forms.autocomplete.option.selected.backgroundColor },\n highlighted: { backgroundColor: theme.forms.autocomplete.option.highlighted.backgroundColor },\n pressed: { backgroundColor: theme.forms.autocomplete.option.pressed.backgroundColor },\n },\n optionsContainer: {\n backgroundColor: theme.forms.autocomplete.optionsContainer.backgroundColor,\n },\n },\n input: {\n states: theme.forms.input.states,\n },\n inputTag: {\n danger: {\n backgroundColor: theme.forms.inputTag.danger.backgroundColor,\n },\n default: {\n backgroundColor: theme.forms.inputTag.default.backgroundColor,\n },\n success: {\n backgroundColor: theme.forms.inputTag.success.backgroundColor,\n },\n },\n radioButtonGroup: {\n item: {\n borderColor: theme.forms.radioButtonGroup.item.borderColor,\n backgroundColor: theme.forms.radioButtonGroup.item.backgroundColor,\n },\n },\n checkbox: {\n markColor: theme.forms.checkbox.markColor,\n checked: {\n backgroundColor: theme.forms.checkbox.checked.backgroundColor,\n borderColor: theme.forms.checkbox.checked.borderColor,\n },\n hover: {\n backgroundColor: theme.forms.checkbox.hover.backgroundColor,\n borderColor: theme.forms.checkbox.hover.borderColor,\n },\n pressed: {\n backgroundColor: theme.forms.checkbox.pressed.backgroundColor,\n borderColor: theme.forms.checkbox.pressed.borderColor,\n },\n focus: {\n backgroundColor: theme.forms.checkbox.focus.backgroundColor,\n borderColor: theme.forms.checkbox.focus.borderColor,\n },\n default: {\n backgroundColor: theme.forms.checkbox.default.backgroundColor,\n borderColor: theme.forms.checkbox.default.borderColor,\n },\n },\n radio: {\n checked: {\n backgroundColor: theme.forms.radio.checked.backgroundColor,\n borderColor: theme.forms.radio.checked.borderColor,\n },\n hover: {\n backgroundColor: theme.forms.radio.hover.backgroundColor,\n borderColor: theme.forms.radio.hover.borderColor,\n },\n pressed: {\n backgroundColor: theme.forms.radio.pressed.backgroundColor,\n borderColor: theme.forms.radio.pressed.borderColor,\n },\n focus: {\n backgroundColor: theme.forms.radio.pressed.backgroundColor,\n borderColor: theme.forms.radio.pressed.borderColor,\n },\n disabled: {\n backgroundColor: theme.forms.radio.disabled.backgroundColor,\n borderColor: theme.forms.radio.disabled.borderColor,\n },\n default: {\n backgroundColor: theme.forms.radio.unchecked.backgroundColor,\n borderColor: theme.forms.radio.unchecked.borderColor,\n },\n innerCircle: {\n backgroundColor: theme.forms.radio.checked.innerBackgroundColor,\n },\n },\n },\n skeleton: {\n backgroundColor: theme.skeleton.backgroundColor,\n flareColor: theme.skeleton.flareColor,\n },\n iconButton: {\n borderColor: theme.iconButton.borderColor,\n disabled: {\n borderColor: theme.iconButton.disabled.borderColor,\n backgroundColor: theme.iconButton.disabled.backgroundColor,\n },\n black: {\n pressed: {\n backgroundColor: theme.iconButton.default.pressedBackgroundColor,\n },\n },\n white: {\n pressed: {\n backgroundColor: theme.iconButton.white.pressedBackgroundColor,\n },\n },\n primary: {\n pressed: {\n backgroundColor: theme.iconButton.primary.pressedBackgroundColor,\n },\n },\n },\n highlight: {\n regular: {\n backgroundColor: theme.highlight.regular.backgroundColor,\n },\n primary: {\n backgroundColor: theme.highlight.primary.backgroundColor,\n },\n secondary: {\n backgroundColor: theme.highlight.secondary.backgroundColor,\n },\n dark: {\n backgroundColor: theme.highlight.dark.backgroundColor,\n },\n },\n verticalSteps: {\n active: {\n icon: {\n backgroundColor: theme.verticalSteps.active.icon.backgroundColor,\n textColor: theme.verticalSteps.active.icon.textColor,\n },\n },\n done: {\n icon: {\n backgroundColor: theme.verticalSteps.done.icon.backgroundColor,\n textColor: theme.verticalSteps.done.icon.textColor,\n },\n },\n default: {\n icon: {\n backgroundColor: theme.verticalSteps.default.icon.backgroundColor,\n textColor: theme.verticalSteps.default.icon.textColor,\n },\n },\n },\n listItem: {\n borderColor: theme.listItem.borderColor,\n },\n picker: {\n ios: {\n option: {\n selected: {\n color: theme.picker.ios.selected.color,\n },\n },\n },\n android: {\n option: {\n default: {\n backgroundColor: theme.picker.android.option.default.backgroundColor,\n },\n selected: {\n color: theme.picker.android.option.selected.color,\n backgroundColor: theme.picker.android.option.selected.backgroundColor,\n },\n },\n },\n web: {\n option: {\n default: { backgroundColor: theme.picker.web.option.default.backgroundColor },\n hovered: { backgroundColor: theme.picker.web.option.hovered.backgroundColor },\n focused: { backgroundColor: theme.picker.web.option.focused.backgroundColor },\n selected: { backgroundColor: theme.picker.web.option.selected.backgroundColor },\n highlighted: { backgroundColor: theme.picker.web.option.highlighted.backgroundColor },\n pressed: { backgroundColor: theme.picker.web.option.pressed.backgroundColor },\n },\n optionsContainer: {\n backgroundColor: theme.picker.web.optionsContainer.backgroundColor,\n },\n },\n },\n },\n app: appTheme?.colors,\n },\n radii: {\n // Make original native base values unusable\n lg: Number.MAX_SAFE_INTEGER,\n md: Number.MAX_SAFE_INTEGER,\n sm: Number.MAX_SAFE_INTEGER,\n xl: Number.MAX_SAFE_INTEGER,\n '2xl': Number.MAX_SAFE_INTEGER,\n '3xl': Number.MAX_SAFE_INTEGER,\n xs: Number.MAX_SAFE_INTEGER,\n\n // Allow values like kitt.X\n ...spaces.positive,\n\n kitt: {\n actionCard: {\n borderRadius: theme.actionCard.borderRadius,\n },\n avatar: {\n borderRadius: theme.avatar.borderRadius,\n large: {\n borderRadius: theme.avatar.large.borderRadius,\n },\n },\n borderRadius: theme.card.borderRadius,\n button: {\n borderRadius: theme.button.borderRadius,\n },\n card: {\n borderRadius: theme.card.borderRadius,\n },\n cardModal: {\n borderRadius: theme.cardModal.borderRadius,\n },\n choices: {\n item: {\n borderRadius: theme.choices.item.borderRadius,\n },\n },\n dialogModal: {\n borderRadius: theme.dialogModal.borderRadius,\n },\n forms: {\n autocomplete: {\n optionsContainer: {\n borderRadius: theme.forms.autocomplete.optionsContainer.borderRadius,\n },\n },\n input: {\n borderRadius: theme.forms.input.borderRadius,\n },\n inputTag: {\n borderRadius: theme.forms.inputTag.borderRadius,\n },\n radioButtonGroup: {\n item: {\n borderRadius: theme.forms.radioButtonGroup.item.borderRadius,\n },\n },\n checkbox: {\n borderRadius: theme.forms.checkbox.borderRadius,\n },\n radio: {\n borderRadius: theme.forms.radio.size * 0.5,\n innerCircle: {\n borderRadius: theme.forms.radio.checked.innerSize * 0.5,\n },\n },\n },\n highlight: {\n borderRadius: theme.highlight.borderRadius,\n },\n iconButton: {\n borderRadius: theme.iconButton.borderRadius,\n },\n tag: {\n borderRadius: theme.tag.borderRadius,\n },\n tooltip: {\n borderRadius: theme.tooltip.borderRadius,\n },\n skeleton: {\n shape: {\n bar: {\n borderRadius: theme.skeleton.shape.bar.borderRadius,\n },\n circle: {\n borderRadius: theme.skeleton.shape.circle.borderRadius,\n },\n square: {\n borderRadius: theme.skeleton.shape.square.borderRadius,\n },\n },\n },\n picker: {\n web: {\n optionsContainer: {\n borderRadius: theme.picker.web.optionsContainer.borderRadius,\n },\n },\n },\n },\n app: appTheme?.radii,\n },\n borderWidths: {\n kitt: {\n actionCard: {\n secondary: {\n default: {\n borderWidth: theme.actionCard.secondary.default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard.secondary.disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard.secondary.hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard.secondary.focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard.secondary.pressed.borderWidth,\n },\n },\n primary: {\n default: {\n borderWidth: theme.actionCard.primary.default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard.primary.disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard.primary.hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard.primary.focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard.primary.pressed.borderWidth,\n },\n },\n 'primary-border-soft': {\n default: {\n borderWidth: theme.actionCard['primary-border-soft'].default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard['primary-border-soft'].disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard['primary-border-soft'].hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard['primary-border-soft'].focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard['primary-border-soft'].pressed.borderWidth,\n },\n },\n 'primary-border-hard': {\n default: {\n borderWidth: theme.actionCard['primary-border-hard'].default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard['primary-border-hard'].disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard['primary-border-hard'].hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard['primary-border-hard'].focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard['primary-border-hard'].pressed.borderWidth,\n },\n },\n highlight: {\n default: {\n borderWidth: theme.actionCard.highlight.default.borderWidth,\n },\n disabled: {\n borderWidth: theme.actionCard.highlight.disabled.borderWidth,\n },\n hovered: {\n borderWidth: theme.actionCard.highlight.hovered.borderWidth,\n },\n focused: {\n borderWidth: theme.actionCard.highlight.focused.borderWidth,\n },\n pressed: {\n borderWidth: theme.actionCard.highlight.pressed.borderWidth,\n },\n },\n },\n button: {\n borderWidth: theme.button.borderWidth,\n },\n choices: {\n item: {\n disabled: {\n borderWidth: theme.choices.item.disabled.border.width,\n },\n },\n },\n iconButton: {\n borderWidth: theme.iconButton.borderWidth,\n },\n forms: {\n input: {\n borderWidth: theme.forms.input.borderWidth,\n },\n radioButtonGroup: {\n item: {\n borderWidth: theme.forms.radioButtonGroup.item.borderWidth,\n },\n },\n checkbox: {\n borderWidth: theme.forms.checkbox.borderWidth,\n },\n radio: {\n borderWidth: theme.forms.radio.unchecked.borderWidth,\n },\n },\n cardModal: {\n header: {\n borderWidth: theme.cardModal.header.borderWidth,\n },\n footer: {\n borderWidth: theme.cardModal.footer.borderWidth,\n },\n },\n listItem: {\n borderWidth: theme.listItem.borderWidth,\n },\n tag: {\n primary: {\n fill: {\n borderWidth: theme.tag.primary.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.primary.outline.borderWidth,\n },\n },\n default: {\n fill: {\n borderWidth: theme.tag.default.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.default.outline.borderWidth,\n },\n },\n danger: {\n fill: {\n borderWidth: theme.tag.danger.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.danger.outline.borderWidth,\n },\n },\n warn: {\n fill: {\n borderWidth: theme.tag.warn.fill.borderWidth,\n },\n outline: {\n borderWidth: theme.tag.warn.outline.borderWidth,\n },\n },\n },\n },\n app: appTheme?.borderWidths,\n },\n sizes: {\n ...spaces.positive,\n ...spaces.negative,\n ...overridenNativeBaseSizeandSpaceScale,\n kitt: {\n avatar: {\n size: theme.avatar.size,\n iconSize: theme.avatar.iconSize,\n large: {\n size: theme.avatar.large.size,\n iconSize: theme.avatar.large.iconSize,\n },\n },\n button: {\n minWidth: theme.button.minWidth,\n maxWidth: theme.button.maxWidth,\n minHeight: theme.button.minHeight,\n },\n icon: {\n defaultSize: 20,\n },\n cardModal: {\n header: {\n height: theme.cardModal.header.height,\n },\n maxWidth: theme.cardModal.maxWidth,\n maxWidthWithPadding: theme.cardModal.maxWidthWithPadding,\n },\n dialogModal: {\n maxWidth: theme.dialogModal.maxWidth,\n overlayPadding: theme.dialogModal.overlayPadding,\n },\n feedbackMessage: {\n minHeight: theme.feedbackMessage.minHeight,\n },\n forms: {\n autocomplete: {\n option: {\n minHeight: theme.forms.autocomplete.option.minHeight,\n },\n },\n datePicker: {\n minHeight: theme.forms.input.minHeight,\n day: {\n minWidth: theme.forms.datePicker.day.minWidth,\n },\n month: {\n minWidth: theme.forms.datePicker.month.minWidth,\n },\n year: {\n minWidth: theme.forms.datePicker.year.minWidth,\n },\n },\n input: {\n minHeight: theme.forms.input.minHeight,\n },\n radioButtonGroup: {\n item: {\n minHeight: theme.forms.radioButtonGroup.item.minHeight,\n },\n },\n checkbox: {\n height: theme.forms.checkbox.height,\n width: theme.forms.checkbox.width,\n iconSize: theme.forms.checkbox.iconSize,\n textSpacing: theme.forms.checkbox.textSpacing,\n },\n radio: {\n size: theme.forms.radio.size,\n innerCircle: {\n size: theme.forms.radio.checked.innerSize,\n },\n },\n textArea: {\n minHeight: theme.forms.textArea.minHeight,\n },\n timePicker: {\n minWidth: theme.forms.timePicker.minWidth,\n },\n },\n iconButton: {\n size: theme.iconButton.width - theme.iconButton.borderWidth,\n width: theme.iconButton.width,\n height: theme.iconButton.height,\n },\n fullscreenModal: {\n header: {\n height: theme.fullscreenModal.header.height,\n },\n },\n pageLoader: {\n size: theme.pageLoader.size,\n },\n tooltip: {\n maxWidth: theme.tooltip.maxWidth,\n arrow: {\n width: theme.tooltip.arrow.width,\n height: theme.tooltip.arrow.height,\n },\n },\n skeleton: {\n shape: {\n bar: {\n size: theme.skeleton.shape.bar.size,\n },\n circle: {\n size: theme.skeleton.shape.circle.size,\n },\n square: {\n size: theme.skeleton.shape.square.size,\n },\n },\n },\n picker: {\n ios: {\n default: {\n height: theme.picker.ios.default.height,\n },\n landscape: {\n height: theme.picker.ios.landscape.height,\n },\n },\n },\n },\n app: appTheme?.sizes,\n },\n space: {\n ...spaces.positive,\n ...spaces.negative,\n ...overridenNativeBaseSizeandSpaceScale,\n kitt: {\n bottomSheet: {\n container: {\n padding: theme.bottomSheet.container.padding,\n },\n },\n button: {\n padding: theme.button.padding,\n },\n cardModal: {\n overlayPadding: theme.dialogModal.overlayPadding,\n },\n dialogModal: {\n overlayPadding: theme.dialogModal.overlayPadding,\n },\n forms: {\n autocomplete: {\n option: {\n verticalPadding: theme.forms.autocomplete.option.verticalPadding,\n },\n },\n datePicker: {\n padding: theme.forms.input.padding,\n },\n input: {\n padding: theme.forms.input.padding,\n },\n radioButtonGroup: {\n item: {\n padding: theme.forms.radioButtonGroup.item.padding,\n },\n },\n },\n fullscreenModal: {\n horizontalPadding: theme.fullscreenModal.sharedHorizontalPadding,\n body: {\n verticalPadding: theme.fullscreenModal.body.verticalPadding,\n },\n footer: {\n verticalPadding: theme.fullscreenModal.footer.verticalPadding,\n },\n },\n highlight: {\n padding: theme.highlight.padding,\n },\n listItem: {\n verticalPadding: theme.listItem.verticalPadding,\n horizontalPadding: theme.listItem.horizontalPadding,\n },\n tag: {\n verticalPadding: theme.tag.verticalPadding,\n horizontalPadding: theme.tag.horizontalPadding,\n },\n tooltip: {\n horizontalPadding: theme.tooltip.horizontalPadding,\n verticalPadding: theme.tooltip.verticalPadding,\n floatingPadding: theme.tooltip.floatingPadding,\n },\n picker: {\n android: {\n option: {\n verticalPadding: theme.picker.android.option.verticalPadding,\n horizontalPadding: theme.picker.android.option.horizontalPadding,\n },\n },\n web: {\n option: {\n verticalPadding: theme.picker.web.option.verticalPadding,\n horizontalPadding: theme.picker.web.option.horizontalPadding,\n },\n },\n },\n },\n app: appTheme?.space,\n },\n breakpoints: {\n // kitt breakpoints\n base: KittBreakpoints.BASE,\n small: KittBreakpoints.SMALL,\n medium: KittBreakpoints.MEDIUM,\n large: KittBreakpoints.LARGE,\n wide: KittBreakpoints.WIDE,\n\n // native base default naming\n sm: Number.MAX_SAFE_INTEGER,\n md: Number.MAX_SAFE_INTEGER,\n lg: Number.MAX_SAFE_INTEGER,\n xl: Number.MAX_SAFE_INTEGER,\n '2xl': Number.MAX_SAFE_INTEGER,\n\n // Breakpoints can't be nested in objects\n ...appBreakpoints,\n },\n\n fontSizes: {\n baseAndSmall: {\n header1: `${theme.typography.types.headers.configs.header1.baseAndSmall.fontSize}px`,\n header2: `${theme.typography.types.headers.configs.header2.baseAndSmall.fontSize}px`,\n header3: `${theme.typography.types.headers.configs.header3.baseAndSmall.fontSize}px`,\n header4: `${theme.typography.types.headers.configs.header4.baseAndSmall.fontSize}px`,\n header5: `${theme.typography.types.headers.configs.header5.baseAndSmall.fontSize}px`,\n 'body-large': `${theme.typography.types.bodies.configs['body-large'].baseAndSmall.fontSize}px`,\n 'body-medium': `${theme.typography.types.bodies.configs['body-medium'].baseAndSmall.fontSize}px`,\n body: `${theme.typography.types.bodies.configs.body.baseAndSmall.fontSize}px`,\n 'body-small': `${theme.typography.types.bodies.configs['body-small'].baseAndSmall.fontSize}px`,\n 'body-xsmall': `${theme.typography.types.bodies.configs['body-xsmall'].baseAndSmall.fontSize}px`,\n },\n mediumAndWide: {\n header1: `${theme.typography.types.headers.configs.header1.mediumAndWide.fontSize}px`,\n header2: `${theme.typography.types.headers.configs.header2.mediumAndWide.fontSize}px`,\n header3: `${theme.typography.types.headers.configs.header3.mediumAndWide.fontSize}px`,\n header4: `${theme.typography.types.headers.configs.header4.mediumAndWide.fontSize}px`,\n header5: `${theme.typography.types.headers.configs.header5.mediumAndWide.fontSize}px`,\n 'body-large': `${theme.typography.types.bodies.configs['body-large'].mediumAndWide.fontSize}px`,\n 'body-medium': `${theme.typography.types.bodies.configs['body-medium'].mediumAndWide.fontSize}px`,\n body: `${theme.typography.types.bodies.configs.body.mediumAndWide.fontSize}px`,\n 'body-small': `${theme.typography.types.bodies.configs['body-small'].mediumAndWide.fontSize}px`,\n 'body-xsmall': `${theme.typography.types.bodies.configs['body-xsmall'].mediumAndWide.fontSize}px`,\n },\n },\n lineHeights: {\n baseAndSmall: {\n header1: theme.typography.types.headers.configs.header1.baseAndSmall.lineHeight,\n header2: theme.typography.types.headers.configs.header2.baseAndSmall.lineHeight,\n header3: theme.typography.types.headers.configs.header3.baseAndSmall.lineHeight,\n header4: theme.typography.types.headers.configs.header4.baseAndSmall.lineHeight,\n header5: theme.typography.types.headers.configs.header5.baseAndSmall.lineHeight,\n 'body-large': theme.typography.types.bodies.configs['body-large'].baseAndSmall.lineHeight,\n 'body-medium': theme.typography.types.bodies.configs['body-medium'].baseAndSmall.lineHeight,\n body: theme.typography.types.bodies.configs.body.baseAndSmall.lineHeight,\n 'body-small': theme.typography.types.bodies.configs['body-small'].baseAndSmall.lineHeight,\n 'body-xsmall': theme.typography.types.bodies.configs['body-xsmall'].baseAndSmall.lineHeight,\n },\n mediumAndWide: {\n header1: theme.typography.types.headers.configs.header1.mediumAndWide.lineHeight,\n header2: theme.typography.types.headers.configs.header2.mediumAndWide.lineHeight,\n header3: theme.typography.types.headers.configs.header3.mediumAndWide.lineHeight,\n header4: theme.typography.types.headers.configs.header4.mediumAndWide.lineHeight,\n header5: theme.typography.types.headers.configs.header5.mediumAndWide.lineHeight,\n 'body-large': theme.typography.types.bodies.configs['body-large'].mediumAndWide.lineHeight,\n 'body-medium': theme.typography.types.bodies.configs['body-medium'].mediumAndWide.lineHeight,\n body: theme.typography.types.bodies.configs.body.mediumAndWide.lineHeight,\n 'body-small': theme.typography.types.bodies.configs['body-small'].mediumAndWide.lineHeight,\n 'body-xsmall': theme.typography.types.bodies.configs['body-xsmall'].mediumAndWide.lineHeight,\n },\n },\n fontWeights: {\n headers: {\n regular: theme.typography.types.headers.fontWeight,\n bold: theme.typography.types.headers.fontWeight,\n },\n bodies: {\n regular: theme.typography.types.bodies.fontWeight.regular,\n // TODO [https://ornikar.atlassian.net/browse/CME-767] This quick fix should be replaced by a 700 in every case, and native font weights should be handled by expo-fonts\n bold: Platform.OS === 'android' ? 400 : theme.typography.types.bodies.fontWeight.bold,\n },\n },\n fonts: {\n headers:\n Platform.OS === 'web'\n ? theme.typography.types.headers.fontFamily.web\n : theme.typography.types.headers.fontFamily.native,\n bodies:\n Platform.OS === 'web'\n ? theme.typography.types.bodies.fontFamily.web\n : theme.typography.types.bodies.fontFamily.native,\n },\n\n shadows: {\n kitt: {\n shadows: {\n cards: {\n low: {\n shadowColor: theme.shadows.cards.low.color,\n shadowOffset: { width: theme.shadows.cards.low.offsetX, height: theme.shadows.cards.low.offsetY },\n shadowOpacity: theme.shadows.cards.low.opacity,\n shadowRadius: theme.shadows.cards.low.radius,\n },\n medium: {\n shadowColor: theme.shadows.cards.medium.color,\n shadowOffset: { width: theme.shadows.cards.medium.offsetX, height: theme.shadows.cards.medium.offsetY },\n shadowOpacity: theme.shadows.cards.medium.opacity,\n shadowRadius: theme.shadows.cards.medium.radius,\n },\n highBase: {\n shadowColor: theme.shadows.cards.highBase.color,\n shadowOffset: {\n width: theme.shadows.cards.highBase.offsetX,\n height: theme.shadows.cards.highBase.offsetY,\n },\n shadowOpacity: theme.shadows.cards.highBase.opacity,\n shadowRadius: theme.shadows.cards.highBase.radius,\n },\n highMedium: {\n shadowColor: theme.shadows.cards.highMedium.color,\n shadowOffset: {\n width: theme.shadows.cards.highMedium.offsetX,\n height: theme.shadows.cards.highMedium.offsetY,\n },\n shadowOpacity: theme.shadows.cards.highMedium.opacity,\n shadowRadius: theme.shadows.cards.highMedium.radius,\n },\n highLarge: {\n shadowColor: theme.shadows.cards.highLarge.color,\n shadowOffset: {\n width: theme.shadows.cards.highLarge.offsetX,\n height: theme.shadows.cards.highLarge.offsetY,\n },\n shadowOpacity: theme.shadows.cards.highLarge.opacity,\n shadowRadius: theme.shadows.cards.highLarge.radius,\n },\n },\n navigation: {\n left: {\n shadowColor: theme.shadows.navigation.left.color,\n shadowOffset: {\n width: theme.shadows.navigation.left.offsetX,\n height: theme.shadows.navigation.left.offsetY,\n },\n shadowOpacity: theme.shadows.navigation.left.opacity,\n shadowRadius: theme.shadows.navigation.left.radius,\n },\n right: {\n shadowColor: theme.shadows.navigation.right.color,\n shadowOffset: {\n width: theme.shadows.navigation.right.offsetX,\n height: theme.shadows.navigation.right.offsetY,\n },\n shadowOpacity: theme.shadows.navigation.right.opacity,\n shadowRadius: theme.shadows.navigation.right.radius,\n },\n },\n panel: {\n shadowColor: theme.shadows.panel.color,\n shadowOffset: { width: theme.shadows.panel.offsetX, height: theme.shadows.panel.offsetY },\n shadowOpacity: theme.shadows.panel.opacity,\n shadowRadius: theme.shadows.panel.radius,\n },\n },\n actionCard: {\n secondary: {\n default: {\n shadow: {\n shadowColor: theme.actionCard.secondary.default.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.default.shadow.offsetX,\n height: theme.actionCard.secondary.default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.default.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard.secondary.hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.hovered.shadow.offsetX,\n height: theme.actionCard.secondary.hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.hovered.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard.secondary.focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.focused.shadow.offsetX,\n height: theme.actionCard.secondary.focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.focused.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard.secondary.pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard.secondary.pressed.shadow.offsetX,\n height: theme.actionCard.secondary.pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.secondary.pressed.shadow.opacity,\n shadowRadius: theme.actionCard.secondary.pressed.shadow.radius,\n },\n },\n },\n primary: {\n default: {\n shadow: {\n shadowColor: theme.actionCard.primary.default.shadow.color,\n shadowOffset: {\n width: theme.actionCard.primary.default.shadow.offsetX,\n height: theme.actionCard.primary.default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.primary.default.shadow.opacity,\n shadowRadius: theme.actionCard.primary.default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard.primary.hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard.primary.hovered.shadow.offsetX,\n height: theme.actionCard.primary.hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.primary.hovered.shadow.opacity,\n shadowRadius: theme.actionCard.primary.hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard.primary.focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard.primary.focused.shadow.offsetX,\n height: theme.actionCard.primary.focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.primary.focused.shadow.opacity,\n shadowRadius: theme.actionCard.primary.focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard.highlight.pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.pressed.shadow.offsetX,\n height: theme.actionCard.highlight.pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.pressed.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.pressed.shadow.radius,\n },\n },\n },\n 'primary-border-soft': {\n default: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].default.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].default.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].default.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].hovered.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].hovered.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].focused.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].focused.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-soft'].pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-soft'].pressed.shadow.offsetX,\n height: theme.actionCard['primary-border-soft'].pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-soft'].pressed.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-soft'].pressed.shadow.radius,\n },\n },\n },\n 'primary-border-hard': {\n default: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].default.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].default.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].default.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].hovered.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].hovered.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].focused.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].focused.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard['primary-border-hard'].pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard['primary-border-hard'].pressed.shadow.offsetX,\n height: theme.actionCard['primary-border-hard'].pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard['primary-border-hard'].pressed.shadow.opacity,\n shadowRadius: theme.actionCard['primary-border-hard'].pressed.shadow.radius,\n },\n },\n },\n highlight: {\n default: {\n shadow: {\n shadowColor: theme.actionCard.highlight.default.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.default.shadow.offsetX,\n height: theme.actionCard.highlight.default.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.default.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.default.shadow.radius,\n },\n },\n hovered: {\n shadow: {\n shadowColor: theme.actionCard.highlight.hovered.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.hovered.shadow.offsetX,\n height: theme.actionCard.highlight.hovered.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.hovered.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.hovered.shadow.radius,\n },\n },\n focused: {\n shadow: {\n shadowColor: theme.actionCard.highlight.focused.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.focused.shadow.offsetX,\n height: theme.actionCard.highlight.focused.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.focused.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.focused.shadow.radius,\n },\n },\n pressed: {\n shadow: {\n shadowColor: theme.actionCard.highlight.pressed.shadow.color,\n shadowOffset: {\n width: theme.actionCard.highlight.pressed.shadow.offsetX,\n height: theme.actionCard.highlight.pressed.shadow.offsetY,\n },\n shadowOpacity: theme.actionCard.highlight.pressed.shadow.opacity,\n shadowRadius: theme.actionCard.highlight.pressed.shadow.radius,\n },\n },\n },\n },\n cardModal: {\n shadow: {\n shadowColor: theme.cardModal.shadow.color,\n shadowOffset: { width: theme.cardModal.shadow.offsetX, height: theme.cardModal.shadow.offsetY },\n shadowOpacity: theme.cardModal.shadow.opacity,\n shadowRadius: theme.cardModal.shadow.radius,\n },\n },\n dialogModal: {\n shadow: {\n shadowColor: theme.dialogModal.shadow.color,\n shadowOffset: { width: theme.dialogModal.shadow.offsetX, height: theme.dialogModal.shadow.offsetY },\n shadowOpacity: theme.dialogModal.shadow.opacity,\n shadowRadius: theme.dialogModal.shadow.radius,\n },\n },\n picker: {\n web: {\n optionsContainer: {\n shadow: {\n shadowColor: theme.picker.web.optionsContainer.shadow.color,\n shadowOffset: {\n width: theme.picker.web.optionsContainer.shadow.offsetX,\n height: theme.picker.web.optionsContainer.shadow.offsetY,\n },\n shadowOpacity: theme.picker.web.optionsContainer.shadow.opacity,\n shadowRadius: theme.picker.web.optionsContainer.shadow.radius,\n },\n },\n },\n },\n forms: {\n autocomplete: {\n optionsContainer: {\n shadow: {\n shadowColor: theme.forms.autocomplete.optionsContainer.shadow.color,\n shadowOffset: {\n width: theme.forms.autocomplete.optionsContainer.shadow.offsetX,\n height: theme.forms.autocomplete.optionsContainer.shadow.offsetY,\n },\n shadowOpacity: theme.forms.autocomplete.optionsContainer.shadow.opacity,\n shadowRadius: theme.forms.autocomplete.optionsContainer.shadow.radius,\n },\n },\n },\n },\n },\n app: appTheme?.shadows,\n },\n\n opacity: {\n app: appTheme?.opacity,\n kitt: {\n tooltip: {\n opacity: theme.tooltip.opacity,\n },\n },\n },\n\n components: {\n Input: {\n baseStyle: {\n width: '100%',\n minHeight: theme.forms.input.minHeight,\n py: theme.forms.input.padding.vertical,\n px: theme.forms.input.padding.horizontal,\n borderRadius: theme.forms.input.borderRadius,\n _disabled: {\n opacity: 1, // override default native-base opacity\n },\n _light: {\n color: theme.forms.input.states.default.color,\n placeholderTextColor: theme.forms.input.color.placeholder,\n borderColor: theme.forms.input.states.default.borderColor,\n bg: theme.forms.input.states.default.backgroundColor,\n _hover: {\n borderColor: theme.forms.input.states.hover.borderColor,\n color: theme.forms.input.states.hover.color,\n _focus: {\n borderColor: theme.forms.input.states.focus.borderColor,\n color: theme.forms.input.states.focus.color,\n },\n },\n _focus: {\n borderColor: theme.forms.input.states.focus.borderColor,\n color: theme.forms.input.states.focus.color,\n _hover: {\n borderColor: theme.forms.input.states.focus.borderColor,\n color: theme.forms.input.states.focus.color,\n },\n _stack: {\n style: {\n outlineWidth: 0,\n boxShadow: 'none',\n },\n },\n _ios: {\n selectionColor: theme.forms.input.color.selection,\n },\n _android: {\n selectionColor: theme.forms.input.color.selection,\n },\n },\n _invalid: {\n borderColor: theme.forms.input.states.invalid.borderColor,\n color: theme.forms.input.states.invalid.color,\n _hover: {\n borderColor: theme.forms.input.states.hover.borderColor,\n color: theme.forms.input.states.hover.color,\n },\n },\n _ios: {\n selectionColor: theme.forms.input.color.selection,\n },\n _android: {\n selectionColor: theme.forms.input.color.selection,\n },\n _disabled: {\n placeholderTextColor: theme.forms.input.states.disabled.color,\n color: theme.forms.input.states.disabled.color,\n borderColor: theme.forms.input.states.disabled.borderColor,\n bg: theme.forms.input.states.disabled.backgroundColor,\n },\n },\n },\n variants: {\n outline: {\n borderWidth: theme.forms.input.borderWidth,\n _focus: {\n bg: theme.forms.input.states.default.backgroundColor,\n },\n },\n underlined: {},\n rounded: {},\n filled: {},\n unstyled: {},\n },\n },\n Text: {\n baseStyle: {\n _light: {\n color: 'kitt.typography.black',\n },\n _dark: {\n color: 'kitt.typography.white',\n },\n fontFamily:\n Platform.OS === 'web'\n ? theme.typography.types.bodies.fontFamily.web.regular\n : theme.typography.types.bodies.fontFamily.native.regular,\n fontStyle: theme.typography.types.bodies.fontStyle.regular,\n fontWeight: theme.typography.types.bodies.fontWeight.regular,\n fontSize: undefined,\n lineHeight: theme.typography.types.bodies.configs.body.baseAndSmall.lineHeight,\n },\n },\n },\n });\n\n return { ...extendedTheme, space: extendedTheme.space as typeof spaces.positive & typeof spaces.negative };\n}\n\ntype KittNativeBaseCustomTheme = ReturnType<typeof createKittNativeBaseCustomTheme>;\n\ndeclare module 'native-base' {\n interface ICustomTheme extends KittNativeBaseCustomTheme {}\n}\n\nexport interface KittNativeBaseProviderProps {\n /**\n * `theme` should come from `useKittTheme`\n */\n theme: KittTheme;\n isSSR: NativeBaseProviderProps['isSSR'];\n /**\n * `appTheme` is optional and provides extended theme configuration. It's a native-base representation of your application theme.\n * This variable must not change at each render\n */\n appTheme?: AppTheme;\n children: ReactNode;\n}\n\n/**\n * Provide theme to native-base\n *\n * `appTheme` is optional and provides extended theme configuration. This variable must not change at each render\n *\n * @exemple\n * ```tsx\n * const appTheme = {};\n * export function MyAppThemeProvider({ children }) {\n * const theme = useKittTheme();\n * return <KittNativeBaseProvider theme={theme} appTheme={appTheme}>{children}</KittNativeBaseProvider>\n * }\n * ```\n */\nexport function KittNativeBaseProvider({\n theme,\n isSSR,\n appTheme,\n children,\n}: KittNativeBaseProviderProps): ReactElement {\n const kittTheme = theme.kitt;\n\n const nativeBaseCustomTheme = useMemo(\n () => createKittNativeBaseCustomTheme(kittTheme, appTheme),\n [kittTheme, appTheme],\n );\n\n const kittInternalTheme = useMemo(() => ({ kitt: kittTheme }), [kittTheme]);\n\n return (\n <NativeBaseProvider theme={nativeBaseCustomTheme} isSSR={isSSR}>\n <KittThemeContext.Provider value={kittInternalTheme}>{children}</KittThemeContext.Provider>\n </NativeBaseProvider>\n );\n}\n","import type { ReactElement } from 'react';\nimport { useEffect, useState } from 'react';\nimport type { CardModalAnimationProps } from '../CardModal/CardModalAnimation/CardModalAnimation';\nimport { CardModalAnimation } from '../CardModal/CardModalAnimation/CardModalAnimation';\nimport { CardModalScrollContainer } from '../CardModal/CardModalBehaviour';\nimport { FullscreenModalAnimation } from '../FullscreenModal/FullscreenModalAnimation';\nimport type { ModalBehaviourProps } from '../ModalBehaviour/ModalBehaviour';\nimport { ModalBehaviour } from '../ModalBehaviour/ModalBehaviour';\nimport type { ModalAnimationComponentProps } from '../ModalBehaviour/type';\nimport { useBreakpointValue } from '../native-base/utils';\n\ninterface SimpleContainerProps extends CardModalAnimationProps {}\n\nfunction SimpleContainer({ children }: SimpleContainerProps): ReactElement {\n return children as ReactElement;\n}\n\ntype AnimationComponentType = typeof CardModalAnimation | typeof FullscreenModalAnimation;\ntype CurrentContainerComponentType = typeof SimpleContainer | typeof CardModalScrollContainer;\n\nexport interface NavigationModalBehaviourProps extends ModalBehaviourProps, ModalAnimationComponentProps {\n onClose: () => void;\n}\n\nexport function NavigationModalBehaviour({\n children,\n visible,\n appear = true,\n onExited,\n onEnter,\n onExit,\n onClose,\n ...props\n}: NavigationModalBehaviourProps): ReactElement {\n const AnimationComponent = useBreakpointValue<AnimationComponentType>({\n base: FullscreenModalAnimation,\n small: CardModalAnimation,\n });\n\n const CurrentContainerComponent = useBreakpointValue<CurrentContainerComponentType>({\n base: SimpleContainer,\n small: CardModalScrollContainer,\n });\n\n const [isModalBehaviourVisible, setIsModalBehaviourVisible] = useState(visible);\n const [shouldAppear, setShouldAppear] = useState(appear);\n\n useEffect(() => {\n if (visible === true) {\n setIsModalBehaviourVisible(true);\n }\n }, [visible]);\n\n const handleExitAnimationDone = (): void => {\n if (onExited) onExited();\n setIsModalBehaviourVisible(false);\n };\n\n const handleEnter = (): void => {\n if (onEnter) onEnter();\n\n // Once a children as been displayed, we force appear to false in order to avoid replaying animation on breakpoint change\n setShouldAppear(false);\n };\n\n const handleExit = (): void => {\n if (onExit) onExit();\n\n // Reset appear value to its original value for future modal display\n setShouldAppear(appear);\n };\n\n return (\n <ModalBehaviour visible={isModalBehaviourVisible} onClose={onClose}>\n <CurrentContainerComponent bounces={false} contentContainerStyle={{ flexGrow: 1 }}>\n <AnimationComponent\n {...props}\n appear={shouldAppear}\n visible={visible}\n onEnter={handleEnter}\n onExit={handleExit}\n onExited={handleExitAnimationDone}\n onClose={onClose}\n >\n {children}\n </AnimationComponent>\n </CurrentContainerComponent>\n </ModalBehaviour>\n );\n}\n","import type { ReactElement } from 'react';\nimport { CardModal } from '../CardModal/CardModal';\nimport type { CardModalBodyProps } from '../CardModal/CardModalBody';\nimport type { CardModalFooterProps } from '../CardModal/CardModalFooter';\nimport type { CardModalHeaderProps } from '../CardModal/CardModalHeader';\nimport type { FullscreenModalBodyProps } from '../FullscreenModal/Body';\nimport type { FullscreenModalFooterProps } from '../FullscreenModal/Footer';\nimport { FullscreenModal } from '../FullscreenModal/FullscreenModal';\nimport type { FullscreenModalProps } from '../FullscreenModal/FullscreenModal';\nimport type { FullscreenModalHeaderProps } from '../FullscreenModal/Header';\nimport { useBreakpointValue } from '../native-base/utils';\nimport { NavigationModalBehaviour } from './NavigationModalBehaviour';\n\nexport interface NavigationModalProps extends FullscreenModalProps {}\n\nexport function NavigationModal({ body, backgroundColor, footer, header }: NavigationModalProps): ReactElement {\n const Component = useBreakpointValue<typeof FullscreenModal | typeof CardModal>({\n base: FullscreenModal,\n small: CardModal,\n });\n\n return <Component body={body} backgroundColor={backgroundColor} footer={footer} header={header} />;\n}\n\ntype HeaderProps = CardModalHeaderProps | FullscreenModalHeaderProps;\n\nfunction Header(props: HeaderProps): ReactElement {\n const Component: typeof FullscreenModal.Header | typeof CardModal.Header = useBreakpointValue({\n base: FullscreenModal.Header,\n small: CardModal.Header,\n });\n return <Component {...props} />;\n}\n\ntype BodyProps = CardModalBodyProps | FullscreenModalBodyProps;\n\nfunction Body(props: BodyProps): ReactElement {\n const Component: typeof FullscreenModal.Body | typeof CardModal.Body = useBreakpointValue({\n base: FullscreenModal.Body,\n small: CardModal.Body,\n });\n return <Component {...props} />;\n}\n\ntype FooterProps = CardModalFooterProps | FullscreenModalFooterProps;\n\nfunction Footer(props: FooterProps): ReactElement {\n const Component: typeof FullscreenModal.Footer | typeof CardModal.Footer = useBreakpointValue({\n base: FullscreenModal.Footer,\n small: CardModal.Footer,\n });\n return <Component {...props} />;\n}\n\nNavigationModal.Header = Header;\nNavigationModal.Body = Body;\nNavigationModal.Footer = Footer;\nNavigationModal.ModalBehaviour = NavigationModalBehaviour;\n","import type { ReactElement } from 'react';\nimport { BaseMessage } from '../BaseMessage/BaseMessage';\nimport type { BaseMessageProps } from '../BaseMessage/BaseMessage';\n\nexport interface NotificationProps extends BaseMessageProps {\n /**\n * @deprecated use onDismiss instead\n */\n onDelete?: BaseMessageProps['onDismiss'];\n}\n\nexport function Notification({\n type,\n children,\n centeredText,\n insets,\n onDelete,\n onDismiss,\n}: NotificationProps): ReactElement {\n if (__DEV__) {\n if (onDelete) {\n throw new Error('onDelete is deprecated us onDismiss instead');\n }\n }\n\n return (\n <BaseMessage hasNoRadius type={type} centeredText={centeredText} insets={insets} onDismiss={onDismiss}>\n {children}\n </BaseMessage>\n );\n}\n","import { css } from '@linaria/core';\nimport type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport {\n fillEasingFunction,\n pageLoaderSize,\n pageLoaderStrokeWidth,\n webAnimationCircleBackgroundFillDuration,\n webAnimationDelay,\n webAnimationFilledCircleFillDuration,\n webAnimationFilledCircleRotationDuration,\n} from '../themes/late-ocean/pageLoader';\n\nconst [x1, y1, x2, y2] = fillEasingFunction;\n\nconst pageLoaderCirclePerimeter = 2 * Math.PI * (pageLoaderSize * 0.5 - pageLoaderStrokeWidth);\n\nconst pageLoaderContainer = css`\n @keyframes PageLoaderInit {\n 0% {\n stroke-dashoffset: ${pageLoaderCirclePerimeter}px;\n }\n\n 100% {\n stroke-dashoffset: 0;\n }\n }\n\n /** Primary circle animation **/\n @keyframes PageLoaderOffset {\n 0% {\n stroke-dashoffset: ${pageLoaderCirclePerimeter}px;\n }\n\n /** 20% of this radius and represent the min offset part of the animated circle */\n 100% {\n stroke-dashoffset: ${pageLoaderCirclePerimeter * 0.2}px;\n }\n }\n\n @keyframes PageLoaderRotation {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n }\n\n width: ${pageLoaderSize}px;\n height: ${pageLoaderSize}px;\n\n /* Needed to make the animation starting from the top of the circles */\n transform: scale(-1) rotate(90deg);\n\n & circle,\n & g {\n transform-origin: center center;\n }\n\n & g[data-large-loader='base'] circle {\n animation: ${webAnimationCircleBackgroundFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2})\n ${webAnimationDelay}ms forwards;\n animation-name: PageLoaderInit;\n }\n\n & g[data-large-loader='fill'] {\n animation: ${webAnimationFilledCircleFillDuration}ms linear ${webAnimationDelay}ms infinite;\n animation-name: PageLoaderRotation;\n }\n\n & g[data-large-loader='fill'] circle {\n animation: ${webAnimationFilledCircleFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2}) ${webAnimationDelay}ms\n infinite alternate,\n ${webAnimationFilledCircleRotationDuration}ms linear ${webAnimationDelay}ms infinite;\n animation-name: PageLoaderOffset, PageLoaderRotation;\n }\n`;\n\nexport function PageLoader(props: Record<string, never>): ReactElement {\n const theme = useTheme();\n const { colors, size, strokeWidth } = theme.kitt.pageLoader;\n\n const center = size * 0.5;\n const radius = center - strokeWidth;\n\n const circlePerimeter = 2 * Math.PI * radius;\n\n const sharedProps = {\n cx: center,\n cy: center,\n r: radius,\n fill: 'none',\n strokeWidth,\n strokeDasharray: circlePerimeter,\n strokeDashoffset: circlePerimeter,\n strokeLinecap: 'round' as const,\n };\n\n return (\n <div className={pageLoaderContainer}>\n <svg width={size} height={size}>\n <g data-large-loader=\"base\">\n <circle {...sharedProps} stroke={colors.base} />\n </g>\n <g data-large-loader=\"fill\">\n <circle {...sharedProps} stroke={colors.fill} />\n </g>\n </svg>\n </div>\n );\n}\n","import type { ReactElement } from 'react';\nimport { View } from '../native-base/primitives';\nimport type { PickerItemProps } from './PickerItem';\n\ninterface UIState {\n isSelected?: boolean;\n isHovered?: boolean;\n isFocused?: boolean;\n isPressed?: boolean;\n isHighlighted?: boolean;\n}\n\nfunction getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused }: UIState): string {\n const baseKey = 'kitt.picker.web.option';\n if (isHighlighted) {\n return `${baseKey}.highlighted.backgroundColor`;\n }\n\n if (isPressed) {\n return `${baseKey}.pressed.backgroundColor`;\n }\n\n if (isHovered) {\n return `${baseKey}.hovered.backgroundColor`;\n }\n\n if (isFocused) {\n return `${baseKey}.focused.backgroundColor`;\n }\n\n if (isSelected) {\n return `${baseKey}.selected.backgroundColor`;\n }\n\n return `${baseKey}.default.backgroundColor`;\n}\n\nexport function PickerItem({\n children,\n isSelected,\n isHighlighted,\n isPressed,\n isHovered,\n isFocused,\n}: PickerItemProps): ReactElement {\n return (\n <View\n justifyContent=\"center\"\n width=\"100%\"\n paddingX=\"kitt.picker.web.option.horizontalPadding\"\n paddingY=\"kitt.picker.web.option.verticalPadding\"\n backgroundColor={getBackgroundColor({ isSelected, isHighlighted, isPressed, isHovered, isFocused })}\n >\n {children}\n </View>\n );\n}\n","import type { PickerItemProps as NativePickerItemProps } from '@react-native-picker/picker';\nimport type { ReactElement, ReactNode } from 'react';\nimport { Typography } from '../typography/Typography';\n\ninterface PickerOptionChildrenProps {\n isHighlighted?: boolean;\n isSelected?: boolean;\n}\n\nexport interface PickerOptionProps<T> extends Pick<NativePickerItemProps<T>, 'label'>, PickerOptionChildrenProps {\n children: ReactNode | ((props: PickerOptionChildrenProps) => ReactNode);\n value: T;\n testID?: string;\n}\n\n// This item is for Android only, iOS uses its own implementation and web is not supported yet\nexport function PickerOption<T>({ children, testID, isHighlighted, isSelected }: PickerOptionProps<T>): ReactElement {\n return (\n <Typography.Text testID={testID} base=\"body\">\n {typeof children === 'function' ? children({ isHighlighted, isSelected }) : children}\n </Typography.Text>\n );\n}\n","import { useSelect } from 'downshift';\nimport type { UseSelectState, UseSelectStateChangeOptions } from 'downshift';\n\nexport function webUseSelectReducer<T>(\n state: UseSelectState<T>,\n actionAndChanges: UseSelectStateChangeOptions<T>,\n options: {\n keepOpenOnChange?: boolean;\n },\n): Partial<UseSelectState<T>> {\n const { type, changes } = actionAndChanges;\n\n switch (type) {\n case useSelect.stateChangeTypes.ItemClick:\n if (!options.keepOpenOnChange) return changes;\n\n return {\n ...changes,\n isOpen: true,\n };\n default:\n return changes;\n }\n}\n","import { css } from '@linaria/core';\nimport { autoUpdate, offset, useFloating } from '@floating-ui/react-dom';\nimport { useSelect } from 'downshift';\nimport type { ReactElement } from 'react';\nimport { Children } from 'react';\nimport { Portal } from 'react-portal';\nimport { CSSTransition } from 'react-transition-group';\nimport { Pressable, View } from '../native-base/primitives';\nimport type { PickerProps } from './Picker';\nimport { PickerItem } from './PickerItem';\nimport type { PickerOptionProps } from './PickerOption';\nimport { PickerOption } from './PickerOption';\nimport { webUseSelectReducer } from './reducer/webUseSelectReducer';\n\nconst enter = css`\n transform: translateY(8px);\n opacity: 0;\n`;\nconst enterActive = css`\n transform: translateY(0);\n opacity: 1;\n transition: all 300ms ease-in-out;\n`;\nconst exit = css`\n transform: translateY(0);\n opacity: 1;\n`;\nconst exitActive = css`\n transform: translateY(8px);\n opacity: 0;\n transition: all 300ms ease-in-out;\n`;\n\nexport function Picker<T>({\n children,\n renderTrigger,\n isInitialOpen,\n checkSelectedItem,\n initialValue,\n keepOpenOnChange = false,\n testID,\n disabled,\n onChange,\n onClose,\n}: PickerProps<T>): ReactElement {\n const childrenArray = Children.toArray(children);\n\n const items = childrenArray.map((child) => {\n const item = child as ReactElement<PickerOptionProps<T>>;\n return item.props.value as T;\n }) as T[];\n\n const initialValueIndex = initialValue ? items.indexOf(initialValue) : -1;\n\n const { isOpen, selectedItem, getToggleButtonProps, getMenuProps, highlightedIndex, getItemProps } = useSelect<T>({\n items,\n initialSelectedItem: initialValueIndex > -1 ? items[initialValueIndex] : undefined,\n initialIsOpen: isInitialOpen,\n stateReducer: (state, actionAndChanges) => webUseSelectReducer(state, actionAndChanges, { keepOpenOnChange }),\n onIsOpenChange: (changes) => {\n if (changes.isOpen === false) {\n if (onClose) onClose();\n }\n },\n onSelectedItemChange: (changes) => {\n if (!onChange) return;\n\n if (changes.selectedItem === null) {\n onChange(undefined);\n return;\n }\n onChange(changes.selectedItem);\n },\n });\n\n const { onClick: onPressTrigger, ...restToggleProps } = getToggleButtonProps();\n\n const { x, y, reference, floating, strategy } = useFloating({\n placement: 'bottom-start',\n strategy: 'fixed',\n whileElementsMounted: autoUpdate,\n middleware: [offset(8)],\n });\n\n const tooltipY = Math.round(y ?? 0);\n const tooltipX = Math.round(x ?? 0);\n\n const { ref: menuRef, ...menuProps } = getMenuProps();\n\n return (\n <>\n <View ref={reference} width=\"fit-content\">\n {renderTrigger({\n onPress: onPressTrigger,\n selectedItem: selectedItem || undefined,\n isOpen,\n disabled,\n ...restToggleProps,\n })}\n </View>\n\n <Portal>\n <View\n ref={(myRef) => {\n const currentRef = myRef as HTMLDivElement;\n floating(currentRef);\n menuRef(currentRef);\n }}\n testID={testID}\n {...menuProps}\n position={strategy}\n top={0}\n left={0}\n width=\"100%\"\n maxWidth={{ base: 350 }}\n paddingY=\"kitt.2\"\n _web={{\n style: {\n transform: [\n {\n translate3d: `${tooltipX}px, ${tooltipY}px, 0`,\n },\n ],\n transitionDuration: '300ms',\n transitionProperty: 'opacity',\n transitionTimingFunction: 'ease-in-out',\n },\n }}\n >\n <View\n opacity={isOpen ? 1 : 0}\n backgroundColor=\"kitt.picker.web.optionsContainer.backgroundColor\"\n borderRadius=\"kitt.picker.web.optionsContainer.borderRadius\"\n shadow=\"kitt.picker.web.optionsContainer.shadow\"\n _web={{\n style: {\n transform: [\n {\n translateY: isOpen ? 0 : 8,\n },\n ],\n visibility: isOpen ? 'visible' : 'hidden',\n transitionDuration: '300ms',\n transitionTimingFunction: 'ease-in-out',\n },\n }}\n >\n <CSSTransition\n unmountOnExit\n timeout={300}\n in={isOpen}\n classNames={{ enter, enterActive, exit, exitActive }}\n >\n <View>\n {childrenArray.map((child, index) => {\n const currentValue = items[index];\n\n const {\n onClick,\n 'aria-selected': ariaSelected,\n ...itemProps\n } = getItemProps({ item: currentValue, index, disabled });\n\n return (\n <Pressable\n key={itemProps.id}\n {...itemProps}\n accessibilityState={{ selected: ariaSelected }}\n onPress={onClick}\n >\n {({ isHovered, isFocused, isPressed }) => {\n const isHighlighted = highlightedIndex === index;\n return (\n <PickerItem\n isSelected={checkSelectedItem(selectedItem || undefined, currentValue)}\n isHighlighted={isHighlighted}\n isHovered={isHovered}\n isFocused={isFocused}\n isPressed={isPressed}\n >\n {child}\n </PickerItem>\n );\n }}\n </Pressable>\n );\n })}\n </View>\n </CSSTransition>\n </View>\n </View>\n </Portal>\n </>\n );\n}\n\nPicker.Option = PickerOption;\n\n/**\n * @description: This is exported for testing purposes only\n */\nPicker.UnsafeInternalItem = PickerItem;\n","<svg viewBox=\"0 0 453 71\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"#fff\" d=\"m40 0 2.598 1.5-40 69.282L0 69.282zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5zm10 0 2.598 1.5-40 69.282-2.598-1.5z\"/></svg>","import { HStack, View } from 'native-base';\nimport type { ReactElement } from 'react';\nimport Stripes from './assets/stripes.inline.svg';\n\nexport type SegmentedProgressBarSizes = 'small' | 'default';\nexport type SegmentedProgressBarColors = 'primary' | 'validated';\n\ninterface SegmentedProgressBarProps {\n currentStep?: number;\n stepsCount: number;\n size?: SegmentedProgressBarSizes;\n colorVariant?: SegmentedProgressBarColors;\n withCurrentInProgress?: boolean;\n}\n\nexport function SegmentedProgressBar({\n currentStep = 0,\n stepsCount,\n size = 'default',\n colorVariant = 'primary',\n withCurrentInProgress,\n}: SegmentedProgressBarProps): ReactElement {\n const height = size === 'small' ? 'kitt.2' : 'kitt.4';\n const fillColor =\n colorVariant === 'validated' ? 'kitt.palettes.lateOcean.viride' : 'kitt.palettes.lateOcean.lateOceanLight1';\n\n const steps = [...Array.from({ length: stepsCount }).keys()];\n\n return (\n <HStack height={height} space={2} borderRadius={height} overflow=\"hidden\">\n {steps.map((stepNumber) => {\n const isSegmentCurrentInProgress = withCurrentInProgress && stepNumber === currentStep - 1;\n const color = stepNumber < currentStep ? fillColor : 'kitt.palettes.lateOcean.black50';\n\n return (\n <View\n key={stepNumber}\n height=\"100%\"\n flex={1}\n backgroundColor={isSegmentCurrentInProgress ? 'kitt.palettes.lateOcean.lateOceanLight3' : color}\n borderRadius={2}\n overflow=\"hidden\"\n alignItems=\"center\"\n justifyContent=\"center\"\n >\n {isSegmentCurrentInProgress ? (\n <View width=\"453\" height=\"71\">\n <Stripes />\n </View>\n ) : null}\n </View>\n );\n })}\n </HStack>\n );\n}\n","import { css } from '@linaria/core';\nimport cx from 'classnames';\nimport type { ReactElement } from 'react';\nimport { skeletonBackgroundColor, skeletonFlareColor } from '../themes/late-ocean/skeleton';\n\nconst skeleton = css`\n background-color: ${skeletonBackgroundColor};\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n\n @keyframes flareTranslate {\n from {\n transform: translateX(-100%);\n }\n\n to {\n transform: translateX(100%);\n }\n }\n\n &::after {\n content: '';\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n background-image: linear-gradient(\n -90deg,\n ${skeletonBackgroundColor},\n ${skeletonFlareColor} 50%,\n ${skeletonBackgroundColor} 100%\n );\n animation: 1s ease-in-out infinite;\n animation-name: flareTranslate;\n }\n`;\n\nconst skeletonWithoutAnimation = css`\n &::after {\n background-image: none;\n animation: none;\n }\n`;\n\ninterface SkeletonProps {\n isLoading: boolean;\n}\n\nexport function SkeletonContent({ isLoading }: SkeletonProps): ReactElement {\n return <div className={cx(skeleton, { [skeletonWithoutAnimation]: !isLoading })} />;\n}\n","import type { ReactElement } from 'react';\nimport { useState } from 'react';\nimport type { StyleProp, ViewStyle } from 'react-native';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { SkeletonContent } from './SkeletonContent';\n\nexport interface SkeletonProps extends Omit<ViewProps, 'onLayout'> {\n isLoading?: boolean;\n style?: StyleProp<ViewStyle>;\n}\n\nexport function Skeleton({ isLoading = false, style, ...props }: SkeletonProps): ReactElement {\n const [width, setWidth] = useState(0);\n\n return (\n <View {...props} overflow=\"hidden\" style={style} onLayout={({ nativeEvent }) => setWidth(nativeEvent.layout.width)}>\n <SkeletonContent isLoading={isLoading} width={width} />\n </View>\n );\n}\n\nexport interface BarSkeletonProps extends Omit<SkeletonProps, 'width' | 'height' | 'borderRadius'> {\n size?: number;\n}\n\nfunction Bar({ size, ...props }: BarSkeletonProps): ReactElement {\n const currentBorderRadius = size ? size * 0.5 : 'kitt.skeleton.shape.bar.borderRadius';\n\n return (\n <Skeleton\n {...props}\n width=\"100%\"\n height={size || 'kitt.skeleton.shape.bar.size'}\n borderRadius={currentBorderRadius}\n />\n );\n}\n\nexport interface CircleSkeletonProps extends Omit<SkeletonProps, 'width' | 'height' | 'borderRadius'> {\n size?: number;\n}\n\nfunction Circle({ size, ...props }: CircleSkeletonProps): ReactElement {\n const currentSize = size || 'kitt.skeleton.shape.circle.size';\n const currentBorderRadius = size ? size * 0.5 : 'kitt.skeleton.shape.circle.borderRadius';\n\n return <Skeleton {...props} width={currentSize} height={currentSize} borderRadius={currentBorderRadius} />;\n}\n\nexport interface SquareSkeletonProps extends Omit<SkeletonProps, 'width' | 'height' | 'borderRadius'> {\n size?: number;\n}\n\nfunction Square({ size, ...props }: SquareSkeletonProps): ReactElement {\n const currentSize = size || 'kitt.skeleton.shape.square.size';\n const currentBorderRadius = size ? size * 0.5 : 'kitt.skeleton.shape.square.borderRadius';\n\n return <Skeleton {...props} width={currentSize} height={currentSize} borderRadius={currentBorderRadius} />;\n}\n\nSkeleton.Bar = Bar;\nSkeleton.Circle = Circle;\nSkeleton.Square = Square;\n","export interface MapCenter {\n long: number;\n lat: number;\n zoom: number;\n}\n\nexport interface GetStaticMapImageUrlParams {\n mapId: string;\n apiToken: string;\n mapWidth: number;\n mapHeight: number;\n center: MapCenter;\n is2x?: boolean;\n}\n\nexport function getStaticMapImageUrl({\n mapId,\n apiToken,\n mapWidth,\n mapHeight,\n center,\n is2x,\n}: GetStaticMapImageUrlParams): string {\n const width = Math.round(mapWidth);\n const height = Math.round(mapHeight);\n\n const centerPart = `${center.long},${center.lat},${center.zoom}/`;\n\n const sizePart = `${width}x${height}`;\n\n const urlParts = [\n `https://api.mapbox.com/styles/v1/ornikar/${mapId}/static/`,\n centerPart,\n sizePart,\n is2x ? '@2x' : '',\n ];\n\n const mapImageUrl = new URL(urlParts.join(''));\n mapImageUrl.searchParams.append('access_token', apiToken);\n\n return mapImageUrl.toString();\n}\n","import { useEffect, useRef, useState } from 'react';\nimport { useKittMapConfig } from '../../KittMapConfigProvider/hooks/useKittMapConfig';\nimport type { GetStaticMapImageUrlParams } from '../utils/getStaticMapImageUrl';\nimport { getStaticMapImageUrl } from '../utils/getStaticMapImageUrl';\n\ninterface UseGetStaticMapImageUrlParams extends Omit<GetStaticMapImageUrlParams, 'mapId' | 'apiToken'> {\n forceMapId?: string;\n forceApiToken?: string;\n}\n\nexport function useGetStaticMapImageUrl({\n forceMapId,\n forceApiToken,\n mapWidth,\n mapHeight,\n center,\n is2x,\n}: UseGetStaticMapImageUrlParams): string {\n const { mapId, apiToken } = useKittMapConfig();\n const [currentUrl, setCurrentUrl] = useState<string>('');\n\n const currentMapIdRef = useRef(forceMapId || mapId);\n const currentApiTokenRef = useRef(forceApiToken || apiToken);\n\n useEffect(() => {\n const newUrl = getStaticMapImageUrl({\n center,\n is2x,\n mapHeight,\n mapWidth,\n mapId: currentMapIdRef.current,\n apiToken: currentApiTokenRef.current,\n });\n\n setCurrentUrl(newUrl);\n }, [mapHeight, mapWidth, center, is2x]);\n\n return currentUrl;\n}\n","import { RotateCCWIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { IconButton } from '../IconButton/IconButton';\nimport { View } from '../native-base/primitives';\n\ninterface StaticMapErrorProps {\n onReload?: () => void;\n}\n\nexport function StaticMapError({ onReload }: StaticMapErrorProps): ReactElement {\n return (\n <View alignItems=\"center\" justifyContent=\"center\" height=\"100%\" backgroundColor=\"kitt.separator\">\n <IconButton icon={<RotateCCWIcon />} onPress={onReload} />\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { Image } from '../native-base/primitives';\n\ninterface StaticMapImageProps {\n url: string;\n alt?: string;\n width: number;\n height: number;\n onLoadEnd?: () => void;\n onError?: () => void;\n}\n\nexport function StaticMapImage({ url, alt, width, height, onLoadEnd, onError }: StaticMapImageProps): ReactElement {\n return (\n <Image source={{ uri: url }} width={width} height={height} alt={alt} onError={onError} onLoadEnd={onLoadEnd} />\n );\n}\n","import type { ReactElement } from 'react';\nimport { Skeleton } from '../Skeleton/Skeleton';\nimport { View } from '../native-base/primitives';\n\nexport function StaticMapLoader(): ReactElement {\n return (\n <View alignItems=\"center\" justifyContent=\"center\" height=\"100%\">\n <Skeleton isLoading width=\"100%\" height=\"100%\" />\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { MapMarkerLarge, MapMarkerPosition, MapMarkerSimple } from '../MapMarker/MapMarker';\nimport { View } from '../native-base/primitives';\n\ntype MarkerVariant = 'large' | 'position' | 'simple';\n\ninterface MarkerProps {\n variant?: MarkerVariant;\n}\n\nfunction getMarkerPosition(variant: MarkerVariant): [{ translateX: number }, { translateY: number }] {\n if (variant === 'position') return [{ translateX: -2 }, { translateY: 8 }];\n\n if (variant === 'large') return [{ translateX: 8 }, { translateY: -20 }];\n\n return [{ translateX: 6 }, { translateY: -15 }];\n}\n\nexport function StaticMapMarker({ variant = 'simple' }: MarkerProps): ReactElement {\n return (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n <View\n justifyContent=\"center\"\n alignItems=\"center\"\n height=\"100%\"\n style={{\n transform: getMarkerPosition(variant),\n }}\n >\n {variant === 'position' ? <MapMarkerPosition /> : null}\n {variant === 'large' ? <MapMarkerLarge /> : null}\n {variant === 'simple' ? <MapMarkerSimple /> : null}\n </View>\n </View>\n );\n}\n","export function getRangedWidthValue(nextWidth: number, maxValue: number): number {\n const rangedMapWidth = Math.max(1, Math.min(nextWidth, maxValue));\n\n return rangedMapWidth;\n}\n","export function getShouldDisplay2x(): boolean {\n if (typeof window === 'undefined') {\n return true;\n }\n\n // requesting retina picture is up to the device capabilities;\n return window.devicePixelRatio ? window.devicePixelRatio > 1 : false;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { useState } from 'react';\nimport type { LayoutChangeEvent } from 'react-native';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { StaticMapError } from './StaticMapError';\nimport { StaticMapImage } from './StaticMapImage';\nimport { StaticMapLoader } from './StaticMapLoader';\nimport { StaticMapMarker } from './StaticMapMarker';\nimport { useGetStaticMapImageUrl } from './hooks/useGetStaticMapImageUrl';\nimport { getRangedWidthValue } from './utils/getRangedWidthValue';\nimport { getShouldDisplay2x } from './utils/getShouldDisplay2x';\nimport type { MapCenter } from './utils/getStaticMapImageUrl';\n\nconst mapBoxMaxPictureWidth = 1280;\n\n// Mapbox requestable width for image is between 1 - 1280px\nfunction getPictureWidth(nextWidth: number): number {\n return getRangedWidthValue(nextWidth, mapBoxMaxPictureWidth);\n}\n\nexport interface StaticMapProps extends Omit<ViewProps, 'onLayout'> {\n width?: number;\n height: number;\n alt?: string;\n center: MapCenter;\n marker?: ReactNode;\n /**\n * Mapbox map id.\n * Only use this props if you want to use something different that the config in <KittMapConfigProvider />\n */\n mapId?: string;\n /**\n * Mapbox api access token.\n * Only use this props if you want to use something different that the config in <KittMapConfigProvider />\n */\n apiToken?: string;\n\n onLoaded?: () => void;\n onError?: () => void;\n}\n\nexport function StaticMap({\n width = 0,\n height,\n alt,\n apiToken,\n mapId,\n marker,\n center,\n onLoaded,\n onError,\n ...props\n}: StaticMapProps): ReactElement {\n const [currentWidth, setCurrentWidth] = useState(getPictureWidth(width));\n const [isLoading, setIsLoading] = useState(true);\n const [hasError, setHasError] = useState(false);\n const [currentMapKey, setCurrentMapKey] = useState(0);\n\n const shouldDisplay2xImage = getShouldDisplay2x();\n\n const mapUrl = useGetStaticMapImageUrl({\n forceApiToken: apiToken,\n forceMapId: mapId,\n mapWidth: currentWidth,\n mapHeight: height,\n center,\n is2x: shouldDisplay2xImage,\n });\n\n const handleParentLayout = (event: LayoutChangeEvent): void => {\n const { nativeEvent } = event;\n const rangedMapWidth = getPictureWidth(nativeEvent.layout.width);\n\n setCurrentWidth(rangedMapWidth);\n };\n\n const handleImageLoadEnd = (): void => {\n setIsLoading(false);\n\n if (onLoaded) onLoaded();\n };\n\n const handleError = (): void => {\n setHasError(true);\n\n if (onError) onError();\n };\n\n const handleReload = (): void => {\n setHasError(false);\n setIsLoading(true);\n setCurrentMapKey((prev) => prev + 1);\n };\n\n const shouldDisplayMarker = marker && !isLoading && !hasError;\n\n // Prevents requesting unusable image\n const shouldDisplayPicture = currentWidth > 1 && mapUrl;\n\n return (\n <View\n position=\"relative\"\n maxWidth={mapBoxMaxPictureWidth}\n height={height}\n onLayout={handleParentLayout}\n {...props}\n data-chromatic={process.env.KITT_MAP_CHROMATIC_IGNORE === 'true' ? 'ignore' : undefined}\n >\n {shouldDisplayPicture ? (\n <StaticMapImage\n key={`map-key-${currentMapKey}`}\n url={mapUrl}\n width={currentWidth}\n height={height}\n alt={alt}\n onLoadEnd={handleImageLoadEnd}\n onError={handleError}\n />\n ) : null}\n\n {shouldDisplayMarker ? (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n {marker}\n </View>\n ) : null}\n\n {isLoading ? (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n <StaticMapLoader />\n </View>\n ) : null}\n\n {hasError ? (\n <View position=\"absolute\" top=\"0\" left=\"0\" width=\"100%\" height=\"100%\">\n <StaticMapError onReload={handleReload} />\n </View>\n ) : null}\n </View>\n );\n}\n\nStaticMap.Image = StaticMapImage;\nStaticMap.Loader = StaticMapLoader;\nStaticMap.Error = StaticMapError;\nStaticMap.Marker = StaticMapMarker;\n","import type { ReactElement } from 'react';\nimport type { ViewStyle } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\n\ninterface FlexProps extends Except<ViewProps, 'display' | 'flexDirection' | 'flexWrap'> {\n direction: ViewStyle['flexDirection'];\n wrap?: ViewStyle['flexWrap'];\n}\n\nexport function Flex({ direction, wrap = 'wrap', ...props }: FlexProps): ReactElement {\n return <View {...props} flexDirection={direction} flexWrap={wrap} />;\n}\n","export const storyPadding = 'kitt.4';\n","import type { ReactElement, ReactNode } from 'react';\nimport { createContext, useContext } from 'react';\nimport type { KittThemeContextValue } from '../KittThemeContext';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ExtendedTypographyColor } from '../typography/Typography';\nimport { storyPadding } from './theme';\n\nexport interface StoryBlockProps {\n background?: 'dark' | 'light' | 'primary' | 'transparent';\n children: ReactNode;\n}\n\nconst getBackgroundColorFromBlockColor = (\n theme: KittThemeContextValue,\n color: StoryBlockProps['background'] = 'transparent',\n): string => {\n switch (color) {\n case 'dark':\n return '#293033';\n case 'light':\n return '#ffffff';\n case 'primary':\n return theme.kitt.palettes.lateOcean.lateOcean;\n default:\n return 'transparent';\n }\n};\n\nconst getTypographyColorFromBlockColor = (\n color: StoryBlockProps['background'] = 'transparent',\n): ExtendedTypographyColor => {\n switch (color) {\n case 'dark':\n case 'primary':\n return 'white';\n case 'light':\n default:\n return 'black';\n }\n};\n\nexport const StoryBlockBackgroundContext = createContext<StoryBlockProps['background']>('transparent');\nconst StoryBlockColorContext = createContext<ExtendedTypographyColor>('black');\n\nexport const useStoryBlockColor = (color?: ExtendedTypographyColor | undefined): ExtendedTypographyColor => {\n const storyBlockColor = useContext(StoryBlockColorContext);\n return color || storyBlockColor;\n};\n\nexport function StoryBlock({ children, background }: StoryBlockProps): ReactElement {\n const theme = useTheme();\n return (\n <View\n paddingTop=\"kitt.4\"\n paddingX={storyPadding}\n marginX={`-${storyPadding}`}\n background={getBackgroundColorFromBlockColor(theme, background)}\n >\n <StoryBlockColorContext.Provider value={getTypographyColorFromBlockColor(background)}>\n <StoryBlockBackgroundContext.Provider value={background}>{children}</StoryBlockBackgroundContext.Provider>\n </StoryBlockColorContext.Provider>\n </View>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyProps } from '../typography/Typography';\nimport { useStoryBlockColor } from './StoryBlock';\n\ninterface StoryTitleProps {\n color?: TypographyProps['color'];\n numberOfLines?: TypographyProps['numberOfLines'];\n children: ReactNode;\n}\n\nexport function StoryTitle({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={30}>\n <Typography.Header1 variant=\"bold\" base=\"header1\" color={useStoryBlockColor(color)} numberOfLines={numberOfLines}>\n {children}\n </Typography.Header1>\n </View>\n );\n}\n\nfunction StoryTitleLevel2({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={30}>\n <Typography.Header2 variant=\"bold\" base=\"header2\" color={useStoryBlockColor(color)} numberOfLines={numberOfLines}>\n {children}\n </Typography.Header2>\n </View>\n );\n}\n\nStoryTitleLevel2.displayName = 'StoryTitle.Level2';\n\nfunction StoryTitleLevel3({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={10}>\n <Typography.Header3\n variant=\"bold\"\n base=\"header3\"\n medium=\"header4\"\n color={useStoryBlockColor(color)}\n numberOfLines={numberOfLines}\n >\n {children}\n </Typography.Header3>\n </View>\n );\n}\n\nStoryTitleLevel3.displayName = 'StoryTitle.Level3';\n\nfunction StoryTitleLevel4({ color, children, numberOfLines }: StoryTitleProps): ReactElement {\n return (\n <View marginBottom={10}>\n <Typography.Header4\n variant=\"bold\"\n base=\"header4\"\n medium=\"header5\"\n color={useStoryBlockColor(color)}\n numberOfLines={numberOfLines}\n >\n {children}\n </Typography.Header4>\n </View>\n );\n}\n\nStoryTitleLevel4.displayName = 'StoryTitle.Level3';\n\nStoryTitle.Level2 = StoryTitleLevel2;\nStoryTitle.Level3 = StoryTitleLevel3;\nStoryTitle.Level4 = StoryTitleLevel4;\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ScrollViewProps } from '../native-base/primitives';\nimport { ScrollView } from '../native-base/primitives';\nimport { StoryTitle } from './StoryTitle';\nimport { storyPadding } from './theme';\n\nexport interface StoryProps {\n title: ReactNode;\n children: ReactNode;\n contentContainerStyle?: ScrollViewProps['contentContainerStyle'];\n}\n\nexport function Story({ title, contentContainerStyle, children }: StoryProps): ReactElement {\n return (\n <ScrollView padding={storyPadding} contentContainerStyle={contentContainerStyle}>\n <StoryTitle>{title}</StoryTitle>\n {children}\n </ScrollView>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport { StoryTitle } from './StoryTitle';\n\nexport interface StorySectionProps extends Except<ViewProps, 'marginBottom'> {\n title: ReactNode;\n children: ReactNode;\n /** @private */\n internalIsDemoSection?: boolean;\n}\n\nexport function StorySection({ title, children, internalIsDemoSection, ...props }: StorySectionProps): ReactElement {\n if (title === 'Demo' && !internalIsDemoSection) throw new Error('Use StorySection.Demo instead');\n return (\n <View marginBottom=\"kitt.8\" {...props}>\n <StoryTitle.Level2>{title}</StoryTitle.Level2>\n {children}\n </View>\n );\n}\n\nfunction SubSection({ title, children, ...props }: StorySectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.4\" {...props}>\n <StoryTitle.Level3>{title}</StoryTitle.Level3>\n {children}\n </View>\n );\n}\n\nfunction BlockSection({ title, children, ...props }: StorySectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.4\" {...props}>\n <StoryTitle.Level4>{title}</StoryTitle.Level4>\n {children}\n </View>\n );\n}\n\nexport interface DemoSectionProps extends ViewProps {\n children: ReactNode;\n}\n\nfunction DemoSection({ children, ...props }: DemoSectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.16\" {...props}>\n <StorySection internalIsDemoSection title=\"Demo\">\n {children}\n </StorySection>\n </View>\n );\n}\n\nStorySection.SubSection = SubSection;\nStorySection.BlockSection = BlockSection;\n/** @deprecated use StorySection.Demo instead */\nStorySection.DemoSection = DemoSection;\nStorySection.Demo = DemoSection;\n\n/** @deprecated use StorySection instead */\nexport const DeprecatedSection = StorySection;\n","import type { ReactElement } from 'react';\nimport type { StoryContainerProps } from './StoryContainer';\nimport { StorySection } from './StorySection';\n\nexport function StoryContainer({ children, state, title, platform }: StoryContainerProps): ReactElement | null {\n if (platform === 'native') return null;\n\n return (\n <StorySection.BlockSection testID={state} title={title}>\n <div className={state ? `kitt-${state}` : undefined}>{children}</div>\n </StorySection.BlockSection>\n );\n}\n","import type { DecoratorFunction } from '@storybook/addons';\nimport type { ReactElement } from 'react';\nimport { Story as StoryContainer } from './Story';\n\n// eslint-disable-next-line react/function-component-definition -- this is not a component, it's a decorator for storybook.\nexport const StoryDecorator: DecoratorFunction<ReactElement<unknown>> = (storyFn, context) => {\n return <StoryContainer title={context.name}>{storyFn()}</StoryContainer>;\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { Children } from 'react';\nimport { Platform } from 'react-native';\nimport type { TypographyProps } from '..';\nimport { View } from '../native-base/primitives';\nimport { StoryTitle } from './StoryTitle';\n\nexport interface StoryGridRowProps {\n children: NonNullable<ReactNode>;\n breakpoint?: 'small' | 'medium';\n}\n\nfunction StoryGridRow({ children, breakpoint = 'small' }: StoryGridRowProps): ReactElement {\n return (\n <View\n flexDirection={{ base: 'column', [breakpoint]: 'row' }}\n marginX={{ [breakpoint]: '-kitt.1' }}\n marginBottom={{ [breakpoint]: 'kitt.4' }}\n >\n {Children.map(children, (child) => (\n <View\n flexGrow={{ [breakpoint]: 1 }}\n flexBasis={{ [breakpoint]: 0 }}\n paddingTop={{ base: 'kitt.2', [breakpoint]: 0 }}\n paddingBottom={{ base: 'kitt.4', [breakpoint]: 0 }}\n marginX={{ [breakpoint]: 'kitt.2' }}\n >\n {child}\n </View>\n ))}\n </View>\n );\n}\n\nexport interface StoryGridColProps {\n children: NonNullable<ReactNode>;\n title?: string;\n titleColor?: TypographyProps['color'];\n platform?: 'all' | 'native' | 'web';\n}\n\nfunction StoryGridCol({ title, titleColor, children, platform = 'all' }: StoryGridColProps): ReactElement | null {\n const isNative = Platform.OS === 'ios' || Platform.OS === 'android';\n\n if (Platform.OS === 'web' && platform === 'native') {\n return null;\n }\n\n if (isNative && platform === 'web') {\n return null;\n }\n\n return (\n <>\n {title ? (\n <StoryTitle.Level4 numberOfLines={1} color={titleColor}>\n {title}\n </StoryTitle.Level4>\n ) : null}\n {children}\n </>\n );\n}\n\nexport const StoryGrid = {\n Row: StoryGridRow,\n Col: StoryGridCol,\n};\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyColor } from '../typography/Typography';\n\nexport type TagType = 'primary' | 'default' | 'danger' | 'warn';\n\nexport type TagVariant = 'outline' | 'fill';\n\nexport interface TagProps {\n label: ReactNode;\n type?: TagType;\n variant?: TagVariant;\n}\n\nexport const getLabelColor = (type: TagType, variant: TagVariant): TypographyColor => {\n switch (type) {\n case 'danger': {\n return variant === 'outline' ? 'danger' : 'white';\n }\n case 'warn': {\n return variant === 'outline' ? 'warning' : 'black';\n }\n case 'primary': {\n return 'primary';\n }\n case 'default': {\n return 'black';\n }\n default: {\n return 'black';\n }\n }\n};\n\nexport function Tag({ label, type = 'default', variant = 'fill' }: TagProps): ReactElement {\n return (\n <View\n alignSelf=\"flex-start\"\n borderRadius=\"kitt.tag.borderRadius\"\n paddingX=\"kitt.tag.horizontalPadding\"\n paddingY=\"kitt.tag.verticalPadding\"\n backgroundColor={`kitt.tag.${type}.${variant}.backgroundColor`}\n borderColor={`kitt.tag.${type}.${variant}.borderColor`}\n borderWidth={`kitt.tag.${type}.${variant}.borderWidth`}\n >\n <Typography.Text base=\"body-xsmall\" color={getLabelColor(type, variant)}>\n {label}\n </Typography.Text>\n </View>\n );\n}\n","import type { ReactElement } from 'react';\nimport { forwardRef, useState } from 'react';\nimport type { NativeSyntheticEvent, TextInput as RNTextInput, TextInputChangeEventData } from 'react-native';\nimport { InputText } from '../forms/InputText/InputText';\nimport type { InputUIState } from '../forms/utils';\nimport { View } from '../native-base/primitives';\nimport { createResponsiveStyleFromProp } from '../utils/createResponsiveStyleFromProp/createResponsiveStyleFromProp';\nimport type { TimePickerProps } from './TimePicker';\n\ninterface GetCurrentInternalForcedStateParams {\n isDisabled?: boolean;\n isFocusedInternal?: boolean;\n isPressedInternal?: boolean;\n isHoveredInternal?: boolean;\n}\n\nfunction getCurrentInternalForcedState({\n isDisabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n}: GetCurrentInternalForcedStateParams): InputUIState | 'disabled' | undefined {\n if (isDisabled) return 'disabled';\n\n if (isHoveredInternal) return 'hover';\n\n if (isFocusedInternal) return 'focus';\n\n if (isPressedInternal) return 'hover';\n\n return undefined;\n}\n\nfunction keepHoursInterval(hours: string): number {\n return Math.min(Math.max(parseInt(hours, 10), 0), 23);\n}\n\nfunction getDisplayedHours(hours: string): string {\n if (hours.length === 0) return '';\n return keepHoursInterval(hours).toString().padStart(2, '0');\n}\n\nfunction keepMinutesInterval(minutes: string): number {\n return Math.min(Math.max(parseInt(minutes, 10), 0), 59);\n}\n\nfunction getDisplayedMinutes(minutes: string): string {\n if (minutes.length === 0) return '';\n\n const minutesWithinInterval = keepMinutesInterval(minutes).toString();\n\n // Handles case such as typing '04'\n // it will result as 4 after parseInt but we want to keep the original string length between casts to display leading '0' in the input\n if (minutes.length > 1) return minutesWithinInterval.padStart(2, '0');\n\n return minutesWithinInterval;\n}\n\nfunction getInitialInputValueFromDateValue(date: Date): string {\n const hours = date.getHours();\n const minutes = date.getMinutes();\n\n return `${getDisplayedHours(hours.toString())}:${getDisplayedMinutes(minutes.toString()).padStart(2, '0')}`;\n}\n\nexport const TimePicker = forwardRef<RNTextInput, TimePickerProps>(\n (\n {\n value,\n disabled,\n stretch,\n placeholder = '--:--',\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n onChange,\n onBlur,\n\n // native implementation props - ignored\n title,\n validateButtonLabel,\n isDefaultVisible,\n modalTestID,\n pickerTestID,\n ...props\n }: TimePickerProps,\n ref,\n ): ReactElement => {\n const [inputValue, setInputValue] = useState(value ? getInitialInputValueFromDateValue(value) : '');\n\n const handleChange = (currentInputValue = ''): void => {\n if (!onChange) return;\n\n // Format is hh:mm hence 5 characters\n if (currentInputValue.length < 5 || !currentInputValue.includes(':')) return;\n\n const [hours, minutes] = currentInputValue.split(':');\n\n // Prepare the next date. It clones the date value passed as prop if available\n const nextDate = value ? new Date(value) : new Date();\n\n nextDate.setHours(keepHoursInterval(hours), keepMinutesInterval(minutes));\n\n onChange(nextDate);\n };\n\n const handleInputChange = (event: NativeSyntheticEvent<TextInputChangeEventData>): void => {\n const currentValue = event.nativeEvent.text;\n\n if (currentValue.length === 0) {\n setInputValue(currentValue);\n\n if (onChange) onChange(undefined);\n return;\n }\n\n // Allow alphanumerical characters and ':'\n const sanitizedValue = currentValue.replace(/[^0-9:]/g, '');\n\n if (currentValue.length <= inputValue.length) {\n setInputValue(sanitizedValue);\n\n handleChange(sanitizedValue);\n return;\n }\n\n const hasSeparator = sanitizedValue.includes(':');\n\n // When input has a value which is more than ':'\n if (hasSeparator && sanitizedValue.length > 1) {\n const [hours, minutes] = sanitizedValue.split(':');\n\n const currentHours = getDisplayedHours(hours);\n const currentMinutes = getDisplayedMinutes(minutes);\n\n const nextValue = `${currentHours}:${currentMinutes}`;\n\n setInputValue(nextValue);\n\n handleChange(nextValue);\n return;\n }\n\n // Auto suffix hours with ':' when adding characters\n if (sanitizedValue.length === 2 && currentValue.length > inputValue.length) {\n setInputValue(`${getDisplayedHours(sanitizedValue)}:`);\n\n return;\n }\n\n // Handle case like 1212 that should be formatted as 12:12\n // Split hours part from the minutes part and insert ':' between then\n if (sanitizedValue.length > 2) {\n const hours = sanitizedValue.slice(0, 2);\n const minutes = sanitizedValue.slice(2);\n\n const nextValue = `${getDisplayedHours(hours)}:${getDisplayedMinutes(minutes)}`;\n\n setInputValue(nextValue);\n\n handleChange(nextValue);\n return;\n }\n\n setInputValue(sanitizedValue);\n\n handleChange(sanitizedValue);\n };\n\n const handleBlur = (): void => {\n if (inputValue.indexOf(':') === 1) {\n setInputValue(`0${inputValue}`);\n }\n\n if (onBlur) onBlur();\n };\n\n return (\n <View width={createResponsiveStyleFromProp(stretch, '100%', 'kitt.forms.timePicker.minWidth')}>\n <InputText\n ref={ref}\n textAlign=\"center\"\n value={inputValue}\n placeholder={placeholder}\n disabled={disabled}\n internalForceState={getCurrentInternalForcedState({\n isDisabled: disabled,\n isHoveredInternal,\n isFocusedInternal,\n isPressedInternal,\n })}\n onChange={handleInputChange}\n onBlur={handleBlur}\n {...props}\n />\n </View>\n );\n },\n);\n","import { TooltipArrowIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { forwardRef } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport type { ViewProps } from '../native-base/primitives';\nimport { View } from '../native-base/primitives';\nimport type { TooltipPosition } from './Tooltip';\n\nexport interface ArrowProps {\n position: TooltipPosition;\n top?: number;\n left?: number;\n display?: ViewProps['display'];\n}\n\nexport const Arrow = forwardRef<typeof View, ArrowProps>(\n ({ position, top, left, display }: ArrowProps, ref): ReactElement => {\n const theme = useTheme();\n\n const transformStyle = [\n {\n rotate: position === 'bottom' ? '180deg' : '0deg',\n },\n ];\n\n return (\n <View\n ref={ref}\n display={display || { base: 'none', small: 'flex' }}\n width=\"kitt.tooltip.arrow.width\"\n height=\"kitt.tooltip.arrow.height\"\n left={left}\n top={top}\n style={{\n transform: transformStyle,\n }}\n >\n <TooltipArrowIcon color={theme.kitt.tooltip.backgroundColor} opacity={theme.kitt.tooltip.opacity} />\n </View>\n );\n },\n);\n","import type { ReactElement, ReactNode } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\n\ninterface TooltipContentProps {\n children: ReactNode;\n}\n\nexport function TooltipContent({ children }: TooltipContentProps): ReactElement {\n return (\n <View\n backgroundColor=\"kitt.tooltip.backgroundColor\"\n borderRadius=\"kitt.tooltip.borderRadius\"\n opacity=\"kitt.tooltip.opacity\"\n paddingY=\"kitt.tooltip.verticalPadding\"\n paddingX=\"kitt.tooltip.horizontalPadding\"\n >\n <Typography.Text base=\"body-small\" color=\"white-light\">\n {children}\n </Typography.Text>\n </View>\n );\n}\n","import { useBreakpointValue } from '../../native-base/utils';\n\ninterface GetShouldDisplayArrowParams {\n isTooltipFullWidth?: boolean;\n isBase?: boolean;\n}\n\nfunction getShouldRenderArrow({ isTooltipFullWidth, isBase }: GetShouldDisplayArrowParams): boolean {\n if (isTooltipFullWidth) return false;\n\n const shouldDisplayArrow = !isBase;\n\n return shouldDisplayArrow;\n}\n\ninterface UseShouldDisplayArrowParams {\n isTooltipFullWidth?: boolean;\n}\n\nexport function useShouldRenderArrow({ isTooltipFullWidth }: UseShouldDisplayArrowParams): boolean {\n const isBase = useBreakpointValue({\n base: true,\n small: false,\n });\n\n return getShouldRenderArrow({ isTooltipFullWidth, isBase });\n}\n","export function getHasArrowEnoughSpace(arrowCenterOffset?: number): boolean {\n return arrowCenterOffset !== undefined ? true : arrowCenterOffset !== 0;\n}\n","import type { MiddlewareData } from '@floating-ui/react-dom';\nimport { arrow, autoPlacement, autoUpdate, offset, shift, useFloating } from '@floating-ui/react-dom';\nimport type { ReactElement, RefObject } from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport { Portal } from 'react-portal';\nimport { useOnClickOutside } from 'usehooks-ts';\nimport { useTheme } from '../KittThemeContext';\nimport { Pressable, View } from '../native-base/primitives';\nimport { useBreakpointValue } from '../native-base/utils';\nimport { Arrow } from './Arrow';\nimport type { TooltipProps, UpdateCallbackParams } from './Tooltip';\nimport { TooltipContent } from './TooltipContent';\nimport { useShouldRenderArrow } from './hooks/useShouldRenderArrow';\nimport { getHasArrowEnoughSpace } from './utils/getHasArrowEnoughSpace';\n\ninterface WebUpdateCallbackParams extends Exclude<UpdateCallbackParams, 'middlewareData'> {\n middlewareData: MiddlewareData;\n refs: {\n reference: RefObject<any>;\n floating: RefObject<any>;\n };\n}\n\ninterface WebTooltipProps extends Exclude<TooltipProps, 'onUpdate'> {\n onUpdate: (params: WebUpdateCallbackParams) => void;\n}\n\nexport function Tooltip({\n children,\n defaultVisible,\n position = 'top',\n content,\n floatingPadding,\n fullWidth,\n onToggle,\n onUpdate,\n zIndex,\n}: WebTooltipProps): ReactElement {\n const isBase = useBreakpointValue({\n base: true,\n small: false,\n });\n\n const theme = useTheme();\n\n const [isVisible, setIsVisible] = useState(Boolean(defaultVisible));\n\n const [isCursorOnTooltip, setIsCursorOnTooltip] = useState(false);\n\n const arrowRef = useRef<typeof View>(null);\n\n const currentFloatingPadding = floatingPadding || theme.kitt.tooltip.floatingPadding;\n\n const { x, y, reference, floating, strategy, update, refs, middlewareData, placement } = useFloating({\n placement: position,\n strategy: 'fixed',\n whileElementsMounted: autoUpdate,\n middleware: [\n // Order matters\n offset(currentFloatingPadding),\n autoPlacement({\n allowedPlacements: ['top', 'bottom'],\n padding: currentFloatingPadding,\n }),\n shift({ crossAxis: false, padding: currentFloatingPadding }),\n arrow({ element: arrowRef as unknown as HTMLElement }),\n ],\n });\n\n const tooltipY = Math.round(y ?? 0);\n const tooltipX = Math.round(x ?? 0);\n\n const { centerOffset } = middlewareData.arrow || {};\n\n const shouldRenderArrow = useShouldRenderArrow({ isTooltipFullWidth: fullWidth });\n const hasArrowEnoughSpace = getHasArrowEnoughSpace(centerOffset);\n\n const sharedArrowProps = {\n top: Math.round(middlewareData.arrow?.y ?? 0),\n left: Math.round(middlewareData.arrow?.x ?? 0),\n display: hasArrowEnoughSpace ? undefined : 'none',\n };\n\n useEffect(() => {\n if (!onUpdate) return;\n\n onUpdate({\n x: tooltipX,\n y: tooltipY,\n placement,\n strategy,\n update,\n refs,\n middlewareData,\n });\n }, [tooltipX, tooltipY, reference, floating, strategy, update, refs, middlewareData, placement, onUpdate]);\n\n const handlePressOutside = (): void => {\n if (!isVisible || isCursorOnTooltip) return;\n\n if (onToggle) onToggle(false);\n setIsVisible(false);\n };\n\n useOnClickOutside(refs.reference as RefObject<HTMLDivElement>, handlePressOutside);\n\n const handleDisplayTooltip = (): void => {\n if (onToggle) onToggle(true);\n setIsVisible(true);\n };\n\n const handleHideTooltip = (): void => {\n if (onToggle) onToggle(false);\n setIsVisible(false);\n };\n\n const handleMouseEnter = (): void => {\n setIsCursorOnTooltip(true);\n };\n\n const handleMouseLeave = (): void => {\n setIsCursorOnTooltip(false);\n };\n\n const themePart = isVisible ? 'out' : 'in';\n const transitionDuration = theme.kitt.tooltip.transition[themePart].duration;\n const transitionTimingFunction = theme.kitt.tooltip.transition[themePart].timingFunction;\n const transformOrigin = `center ${placement === 'bottom' ? 'top' : 'bottom'}`;\n\n return (\n <View ref={reference as any} position=\"relative\" display=\"inline-flex\">\n <Pressable\n accessibilityRole=\"button\"\n alignSelf=\"baseline\"\n display=\"inline-flex\"\n onHoverIn={handleDisplayTooltip}\n onFocus={handleDisplayTooltip}\n onBlur={handleHideTooltip}\n >\n {children}\n </Pressable>\n\n <Portal>\n <View\n ref={floating as any}\n accessibilityHidden={!isVisible}\n paddingX={{ base: 'kitt.4', small: 0 }}\n width={{ base: '100%', small: 'max-content' }}\n maxWidth={{ base: '100%', small: 'kitt.tooltip.maxWidth' }}\n opacity={isVisible ? 'kitt.tooltip.opacity' : 0}\n pointerEvents={isVisible || isCursorOnTooltip ? 'auto' : 'none'}\n position={strategy}\n zIndex={zIndex}\n top={0}\n left={0}\n _web={{\n style: {\n transform: [\n {\n translate3d: isBase && !fullWidth ? `0, ${tooltipY}px, 0` : `${tooltipX}px, ${tooltipY}px, 0`,\n },\n ],\n visibility: isVisible ? 'visible' : 'hidden',\n transitionDuration,\n transitionProperty: theme.kitt.tooltip.transition[themePart].property,\n transitionTimingFunction,\n },\n }}\n onTouchStart={handleMouseEnter}\n onTouchEnd={handleMouseLeave}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n <View\n _web={{\n style: {\n transform: [{ scale: isVisible ? 1 : 0.8 }],\n transitionDuration: isVisible ? '0' : transitionDuration,\n transitionProperty: 'all',\n transitionTimingFunction,\n transformOrigin,\n },\n }}\n >\n {shouldRenderArrow && placement === 'bottom' ? (\n <Arrow ref={arrowRef} position=\"bottom\" {...sharedArrowProps} />\n ) : null}\n <TooltipContent>{content}</TooltipContent>\n {shouldRenderArrow && placement === 'top' ? (\n <Arrow ref={arrowRef} position=\"top\" {...sharedArrowProps} />\n ) : null}\n </View>\n </View>\n </Portal>\n </View>\n );\n}\n\nTooltip.Arrow = Arrow;\nTooltip.Content = TooltipContent;\n","import type { ReactElement } from 'react';\nimport { useMemo } from 'react';\nimport type { Entries } from 'type-fest';\nimport type { EmojiProps } from '../Emoji/Emoji';\nimport { Emoji } from '../Emoji/Emoji';\nimport { KittBreakpointNameEnum } from '../KittBreakpoints';\nimport type { KittThemeContextValue } from '../KittThemeContext';\nimport { useTheme } from '../KittThemeContext';\nimport type { TypographyTypeConfig } from '../themes/late-ocean/typography';\nimport type { TypographyBreakpointType, TypographyType } from './Typography';\nimport { getTypographyTypeConfigKeyFromTypeName } from './Typography';\nimport { isTypographyHeader } from './utils/isTypographyHeader';\n\nfunction getTypographyTypeConfig(type: TypographyType, theme: KittThemeContextValue): TypographyTypeConfig {\n if (isTypographyHeader(type, undefined)) {\n return theme.kitt.typography.types.headers.configs[type];\n }\n\n return theme.kitt.typography.types.bodies.configs[type];\n}\n\ninterface Sizes {\n size: EmojiProps['size'];\n marginLeft: NonNullable<EmojiProps['_web']>['marginLeft'];\n marginRight: NonNullable<EmojiProps['_web']>['marginRight'];\n}\n\nfunction calcSizesFromType(type: TypographyBreakpointType, theme: KittThemeContextValue): Sizes {\n const typeWithMediumForced = {\n ...type,\n medium: type.medium || type.small || type.base,\n };\n\n const size: Sizes['size'] = {\n base: getTypographyTypeConfig(type.base ?? 'body', theme).baseAndSmall.fontSize,\n };\n\n [\n KittBreakpointNameEnum.SMALL,\n KittBreakpointNameEnum.MEDIUM,\n KittBreakpointNameEnum.LARGE,\n KittBreakpointNameEnum.WIDE,\n ].forEach((typeName) => {\n const value = typeWithMediumForced[typeName];\n if (value) {\n size[typeName] = getTypographyTypeConfig(value, theme)[getTypographyTypeConfigKeyFromTypeName(typeName)].fontSize;\n }\n });\n\n const marginLeft: Sizes['marginLeft'] = {};\n const marginRight: Sizes['marginRight'] = {};\n\n (Object.entries(size) as Entries<typeof size>).forEach(([key, value]) => {\n if (value) {\n marginLeft[key] = value / 10;\n marginLeft[key] = value / 20;\n }\n });\n\n return { size, marginLeft, marginRight };\n}\n\nexport interface TypographyEmojiProps extends TypographyBreakpointType {\n type?: TypographyBreakpointType;\n emoji: string;\n}\n\nexport function TypographyEmoji({\n emoji,\n base: legacyBase,\n small: legacySmall,\n medium: legacyMedium,\n large: legacyLarge,\n wide: legacyWide,\n type = { base: legacyBase, small: legacySmall, medium: legacyMedium, large: legacyLarge, wide: legacyWide },\n}: TypographyEmojiProps): ReactElement {\n const theme = useTheme();\n const { base, small, medium, large, wide } = type;\n const { size, marginLeft, marginRight } = useMemo(\n () => calcSizesFromType({ base, small, medium, large, wide }, theme),\n [base, small, medium, large, wide, theme],\n );\n\n return (\n <Emoji\n size={size}\n emoji={emoji}\n alignSelf=\"center\"\n _web={{\n // @ts-expect-error -- transform expects number, but string works on web\n style: {\n transform: 'translateY(20%)',\n },\n /* Style Twemoji: https://github.com/twitter/twemoji#inline-styles */\n marginLeft,\n marginRight,\n }}\n />\n );\n}\n","import { css } from '@linaria/core';\nimport cx from 'classnames';\nimport type { ReactElement } from 'react';\nimport type { TypographyLinkWebWrapperProps } from './TypographyLinkWebWrapper';\n\n// overrides :global(a) in Link styles.module.css\nconst displayUnderline = css`\n & > * {\n text-decoration: underline;\n }\n\n & > *:hover,\n & > *:active,\n .kitt-hover & > * {\n text-decoration: none;\n }\n`;\n\nconst displayUnderlineWhenHovered = css`\n & > * {\n text-decoration: none;\n }\n\n & > *:hover,\n & > *:active,\n .kitt-hover & > * {\n text-decoration: underline;\n }\n`;\n\nexport function TypographyLinkWebWrapper({ children, hasNoUnderline }: TypographyLinkWebWrapperProps): ReactElement {\n return (\n <span className={cx(displayUnderline, hasNoUnderline ? displayUnderlineWhenHovered : undefined)}>{children}</span>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { TextProps } from 'react-native';\nimport type { Except } from 'type-fest';\nimport type { TypographyPropsWithoutRole } from './Typography';\nimport { Typography } from './Typography';\nimport { TypographyLinkWebWrapper } from './TypographyLinkWebWrapper';\n\nexport interface TypographyLinkProps extends Except<TypographyPropsWithoutRole, 'children'> {\n children: NonNullable<ReactNode>;\n disabled?: boolean;\n noUnderline?: boolean;\n variant: NonNullable<TypographyPropsWithoutRole['variant']>;\n href?: TextProps['href'];\n hrefAttrs?: TextProps['hrefAttrs'];\n onPress?: TextProps['onPress'];\n}\n\nexport function TypographyLink({\n children,\n disabled,\n noUnderline,\n href,\n hrefAttrs,\n onPress,\n ...otherProps\n}: TypographyLinkProps): ReactElement {\n return (\n <TypographyLinkWebWrapper hasNoUnderline={noUnderline}>\n <Typography\n underline={!noUnderline}\n color={disabled ? 'black-disabled' : undefined}\n href={href}\n hrefAttrs={hrefAttrs}\n accessibilityRole=\"link\"\n dataSet={{\n // remove data-kitt-universal when we delete kitt web. See :global(a) in Link styles.module.css\n 'kitt-universal': 'true',\n }}\n _web={{\n cursor: disabled ? 'not-allowed' : 'pointer',\n transitionProperty: 'color',\n transitionDuration: '0.2s',\n transitionTimingFunction: 'ease-in-out',\n }}\n // TODO[native-base@>=3.4.19] this currently does not work. Retest when updating native-base.\n // _active={{\n // underline: !!noUnderline,\n // }}\n // _hover={{\n // underline: !!noUnderline,\n // }}\n onPress={disabled ? undefined : onPress}\n {...otherProps}\n >\n {children}\n </Typography>\n </TypographyLinkWebWrapper>\n );\n}\n","import { useMemo } from 'react';\nimport type { Theme } from './themes/default';\nimport { theme as kittTheme } from './themes/default';\n\nexport interface KittTheme {\n kitt: Theme;\n}\n\nexport function useKittTheme(): KittTheme {\n return useMemo(() => {\n return { kitt: kittTheme };\n }, []);\n}\n","import { makeDecorator } from '@storybook/addons';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { AppTheme, KittNativeBaseProviderProps } from '../../native-base/KittNativeBaseProvider';\nimport { KittNativeBaseProvider } from '../../native-base/KittNativeBaseProvider';\nimport { useKittTheme } from '../../useKittTheme';\n\ninterface KittThemeProviderProps {\n appTheme?: AppTheme;\n isSSR?: KittNativeBaseProviderProps['isSSR'];\n children: ReactNode;\n}\n\nexport function KittThemeProvider({ isSSR, children, appTheme }: KittThemeProviderProps): ReactElement {\n const theme = useKittTheme();\n return (\n <KittNativeBaseProvider theme={theme} isSSR={isSSR} appTheme={appTheme}>\n {children}\n </KittNativeBaseProvider>\n );\n}\n\nexport const KittThemeDecorator = makeDecorator({\n name: 'ThemeDecorator',\n parameterName: 'theme',\n wrapper: (storyFn, context, { options = {}, parameters = {} }) => {\n return (\n <KittThemeProvider isSSR={parameters.isSSR ?? (options as any).isSSR}>\n {storyFn(context) as ReactNode}\n </KittThemeProvider>\n );\n },\n});\n","import type { ComponentProps, ElementType, ReactElement, ReactNode } from 'react';\nimport { Platform } from 'react-native';\n\nexport interface StyleWebWrapperProps<T extends ElementType> {\n as: T;\n children: ReactNode;\n}\n\n/**\n * @deprecated Use react-native Platform instead\n */\nexport function StyleWebWrapper<T extends ElementType = 'div'>({\n as,\n children,\n ...props\n}: StyleWebWrapperProps<T> & ComponentProps<T>): ReactElement {\n if (Platform.OS !== 'web') return children as ReactElement;\n const Component: T = as || ('div' as T); // as or default to div. If as is undefined, T is div but typescript is not sure\n return <Component {...(props as any)}>{children}</Component>;\n}\n","import { useWindowDimensions } from 'react-native';\n\nexport interface WindowDimensions {\n width?: number;\n height?: number;\n}\n\nexport interface MatchWindowSizeOptions {\n minWidth?: number;\n maxWidth?: number;\n minHeight?: number;\n maxHeight?: number;\n}\nexport function matchWindowSize(\n { width, height }: WindowDimensions,\n { minWidth, maxWidth, minHeight, maxHeight }: MatchWindowSizeOptions,\n): boolean {\n const hasWidthMatched = width ? (!minWidth || width >= minWidth) && (!maxWidth || width <= maxWidth) : true;\n const hasHeightMatched = height ? (!minHeight || height >= minHeight) && (!maxHeight || height <= maxHeight) : true;\n return hasWidthMatched && hasHeightMatched;\n}\n\n/**\n * Returns if a size matches based on dimensions passed as options.\n *\n * WARNING: Not SSR friendly.\n */\nexport function useMatchWindowSize(options: MatchWindowSizeOptions): boolean {\n const { width, height } = useWindowDimensions();\n return matchWindowSize({ width, height }, options);\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { BreakpointValueHookValues } from '../../native-base/utils';\nimport { useBreakpointValue } from '../../native-base/utils';\nimport type { MatchWindowSizeOptions } from './useMatchWindowSize';\nimport { useMatchWindowSize } from './useMatchWindowSize';\n\ninterface MatchWindowSizeProps extends MatchWindowSizeOptions {\n children: ReactNode;\n}\n\n/**\n * Display children if match window size options\n *\n * WARNING: Currently not SSR friendly.\n */\nexport function MatchWindowSize({ children, ...matchWindowSizeOptions }: MatchWindowSizeProps): ReactElement | null {\n const match = useMatchWindowSize(matchWindowSizeOptions);\n if (!match) return null;\n return children as ReactElement;\n}\n\ntype SwitchBreakpointsProps = BreakpointValueHookValues<ReactNode>;\n\nexport function SwitchBreakpoints(breakpoints: SwitchBreakpointsProps): ReactElement | null {\n return useBreakpointValue(breakpoints) as ReactElement | null;\n}\n","import { KittBreakpointNameEnum } from '../../KittBreakpoints';\nimport { useBreakpointValue } from '../../native-base/utils';\n\nexport function useCurrentBreakpointName(): KittBreakpointNameEnum {\n return useBreakpointValue({\n base: KittBreakpointNameEnum.BASE,\n small: KittBreakpointNameEnum.SMALL,\n medium: KittBreakpointNameEnum.MEDIUM,\n large: KittBreakpointNameEnum.LARGE,\n wide: KittBreakpointNameEnum.WIDE,\n });\n}\n","import { CheckIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement } from 'react';\nimport { View } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport { TypographyIcon } from '../typography/TypographyIcon';\nimport type { StepState } from './Step';\n\nconst backgroundColors = {\n done: 'kitt.verticalSteps.done.icon.backgroundColor',\n active: 'kitt.verticalSteps.active.icon.backgroundColor',\n default: 'kitt.verticalSteps.default.icon.backgroundColor',\n};\n\nexport interface IconStatusProps {\n state: StepState;\n index: number;\n}\n\nfunction IconStatus({ state, index }: IconStatusProps): ReactElement {\n if (state === 'done') {\n return <TypographyIcon icon={<CheckIcon />} color=\"kitt.verticalSteps.done.icon.textColor\" />;\n }\n\n if (state === 'active') {\n return (\n <Typography.Text textAlign=\"center\" variant=\"bold\" color=\"kitt.verticalSteps.active.icon.textColor\">\n {index + 1}\n </Typography.Text>\n );\n }\n\n return (\n <Typography.Text textAlign=\"center\" variant=\"bold\" color=\"kitt.verticalSteps.default.icon.textColor\">\n {index + 1}\n </Typography.Text>\n );\n}\n\ninterface StepIconProps {\n index: number;\n state?: StepState;\n}\n\nexport function StepIcon({ index, state = 'default' }: StepIconProps): ReactElement {\n return (\n <View\n justifyContent=\"center\"\n alignItems=\"center\"\n width={30}\n height={30}\n borderRadius={15}\n backgroundColor={backgroundColors[state]}\n >\n <IconStatus state={state} index={index} />\n </View>\n );\n}\n","import { HStack } from 'native-base';\nimport type { ReactElement, ReactNode } from 'react';\nimport { ActionCard } from '../ActionCard/ActionCard';\nimport { View } from '../native-base/primitives';\nimport { StepIcon } from './StepIcon';\n\nexport type StepState = 'active' | 'done' | 'default';\n\nexport interface ExternalStepProps {\n children: ReactNode;\n shouldDisableNextLink?: boolean;\n}\n\nexport function ExternalStep(props: ExternalStepProps): ReactElement | null {\n return null;\n}\n\nexport interface StepProps {\n index?: number;\n children: ReactNode;\n state?: StepState;\n isLast?: boolean;\n shouldDisableNextLink?: boolean;\n}\n\nexport function Step({\n index = 0,\n children,\n state = 'default',\n isLast = false,\n shouldDisableNextLink = false,\n}: StepProps): ReactElement {\n return (\n <HStack space=\"kitt.2\" flexGrow={1}>\n <View marginTop=\"kitt.2\" paddingY=\"kitt.2\" backgroundColor=\"kitt.white\">\n <StepIcon state={state} index={index} />\n {!isLast ? (\n <View\n backgroundColor={\n shouldDisableNextLink ? 'kitt.palettes.lateOcean.black100' : 'kitt.palettes.lateOcean.moonPurple'\n }\n width={1}\n position=\"absolute\"\n top={46}\n left={15}\n zIndex={-1}\n height=\"100%\"\n />\n ) : null}\n </View>\n <View flexGrow={1} flexShrink={1}>\n <ActionCard variant=\"primary\">{children}</ActionCard>\n </View>\n </HStack>\n );\n}\n","import type { StepState } from '../Step';\n\nexport function getStepState(index: number, activeIndex: number): StepState {\n if (index === activeIndex) {\n return 'active';\n }\n if (index < activeIndex) {\n return 'done';\n }\n return 'default';\n}\n","import type { ViewProps } from '@ornikar/kitt-universal';\nimport { VStack } from 'native-base';\nimport type { ReactComponentElement, ReactElement } from 'react';\nimport { Children, createElement } from 'react';\nimport type { StepProps } from './Step';\nimport { ExternalStep, Step } from './Step';\nimport { getStepState } from './utils/getStepState';\n\nexport interface VerticalStepsProps extends ViewProps {\n children: ReactComponentElement<typeof ExternalStep> | ReactComponentElement<typeof ExternalStep>[];\n activeIndex: number;\n}\n\nexport function VerticalSteps({ children, activeIndex, ...props }: VerticalStepsProps): ReactElement {\n return (\n <VStack space=\"kitt.4\" width=\"100%\" {...props}>\n {Children.map(children, (child: ReactComponentElement<typeof ExternalStep>, index) => {\n if (__DEV__ && child.type !== ExternalStep) {\n throw new Error('VerticalSteps only accepts VerticalSteps.Step as children');\n }\n\n const isLast = index === Children.count(children) - 1;\n return createElement<StepProps>(\n Step,\n {\n ...child.props,\n index,\n isLast,\n state: getStepState(index, activeIndex),\n },\n child.props.children,\n );\n })}\n </VStack>\n );\n}\n\nVerticalSteps.Step = ExternalStep;\n"],"names":["View","NativeBaseView","ScrollView","NativeBaseScrollView","Pressable","NativeBasePressable","Image","NativeBaseImage","FlatList","NativeBaseFlatList","SectionList","NativeBaseSectionList","hex2rgba","hex","alpha","arguments","length","undefined","r","parseInt","slice","g","b","concat","lateOceanColorPalette","lateOcean","lateOceanLight1","lateOceanLight2","lateOceanLight3","lateOceanDark1","warmEmbrace","warmEmbraceLight1","black1000","black800","black555","black400","black200","black100","black50","black25","white","viride","englishVermillon","goldCrayola","aero","seaShell","transparent","moonPurple","moonPurpleLight1","colors","primary","primaryLight","accent","accentLight","success","correct","danger","info","warning","separator","hover","black","blackDisabled","blackLight","blackAnthracite","uiBackground","uiBackgroundLight","disabled","overlay","dark","light","actionCard","borderRadius","backgroundColor","borderColor","borderWidth","shadow","color","offsetX","offsetY","opacity","radius","translateY","hovered","focused","pressed","secondary","highlight","defaultAvatarSize","defaultAvatarIconSize","largeAvatarSize","largeAvatarIconSize","avatar","size","iconSize","large","spacing","bottomSheet","container","padding","handle","button","focus","minHeight","minWidth","maxWidth","scale","base","active","medium","contentPadding","xLarge","horizontal","vertical","transition","duration","timingFunction","pressedBackgroundColor","hoverBackgroundColor","focusBorderColor","ghost","hoverColor","activeColor","subtle","card","webAnimationContentDuration","webAnimationContentEasing","webAnimationOverlayDuration","webAnimationOverlayEasing","overlayHorizontalPadding","cardModal","maxWidthWithPadding","header","height","footer","overlayPadding","animation","easing","content","choices","row","column","item","small","selected","hoverWhenSelected","border","width","property","dialogModal","feedbackMessage","autocomplete","option","verticalPadding","highlighted","optionsContainer","checkbox","markColor","textSpacing","checked","datePicker","day","month","year","calcLineHeight","fontSize","lineHeightMultiplier","Math","round","createTypographyTypeConfig","baseAndSmallFontSize","mediumAndWideFontSize","baseAndSmall","lineHeight","mediumAndWide","typography","kittColors","types","headers","fontFamily","regular","bold","web","fontWeight","fontStyle","configs","header1","header2","header3","header4","header5","bodies","body","link","disabledColor","inputStatesStyle","pending","valid","invalid","webAnimationDuration","webAnimationTimingFunction","webAnimationProperty","input","selection","placeholder","icon","rightContainer","states","inputField","containerPaddingTop","containerPaddingBottom","feedbackPaddingTop","labelContainerPaddingBottom","labelFeedbackMarginLeft","inputTag","labelColor","radio","unchecked","innerSize","innerBackgroundColor","radioButtonGroup","textArea","timePicker","forms","fullscreenModal","sharedHorizontalPadding","iconButton","listItem","horizontalPadding","innerMargin","pageLoaderSize","pageLoaderStrokeWidth","webAnimationDelay","webAnimationCircleBackgroundFillDuration","webAnimationFilledCircleFillDuration","webAnimationFilledCircleRotationDuration","fillEasingFunction","pageLoader","strokeWidth","fill","delay","circleBackgroundFillDuration","filledCircleFillDuration","groupFilledCircleRotationDuration","filledCircleRotationDuration","picker","ios","_objectSpread","landscape","android","shadows","cards","low","highBase","highMedium","highLarge","navigation","left","right","panel","skeletonBackgroundColor","skeletonFlareColor","skeleton","flareColor","animationDuration","shape","bar","circle","square","tag","outline","warn","tooltip","floatingPadding","out","arrow","verticalSteps","textColor","done","breakpoints","values","wide","min","smallBreakpoint","mediumBreakpoint","largeBreakpoint","wideBreakpoint","max","theme","getSpacing","multiplier","palettes","KittThemeContext","createContext","kitt","kittTheme","useTheme","useContext","getStateKey","isHovered","isPressed","isFocused","getThemeName","variant","borderVariant","ActionCardContentWrapper","_ref","_ref$borderVariant","children","state","__DEV__","Error","sharedTransform","transform","themeName","_jsx","_ios","style","_android","_web","ActionCardDisabled","borderStyle","ActionCard","_ref$variant","testID","ActionCardPressable","forwardRef","_ref2","ref","_ref2$variant","_ref2$borderVariant","href","hrefAttrs","_ref2$accessibilityRo","accessibilityRole","isHoveredInternal","isPressedInternal","isFocusedInternal","onPress","_ref3","Stack","NativeBaseStack","VStack","NativeBaseVStack","HStack","NativeBaseHStack","Center","NativeBaseCenter","createResponsiveStyleFromProp","responsiveBooleanValue","valueIfTrue","valueIfFalse","keys","Object","responsiveValue","forEach","breakpointName","message","process","env","NODE_ENV","console","deprecatedMessage","symbol","deprecation","replaceBy","replaceMessage","deprecatedInComponent","component","useBreakpointValue","useBreakpointValueNativeBaseBadlyTyped","getCurrentBackgroundColorForNativeBaseTheme","type","isDisabled","baseKey","getCurrentScale","hoverScaleValue","pressedScaleValue","AnimatedContainer","isStretch","_theme$kitt$button","_theme$kitt$button$tr","responsiveHoverScaleValue","currentScale","currentBackgroundColor","transitionProperty","transitionDuration","transitionTimingFunction","backfaceVisibility","alignSelf","KittBreakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","KittBreakpointsMax","KittBreakpointNameEnum","typographyColors","getNBThemeColorFromColorProps","colorName","isColorTypographyColor","includes","getTypographyColorValue","isTypeHeader","startsWith","isTypographyHeader","isHeaderTypographyInContext","IsHeaderTypographyContext","TypographyColorContext","useTypographyColor","TypographyDefaultColorContext","useTypographyDefaultColor","getTypographyTypeConfigKeyFromTypeName","createNativeBaseFontSize","typeWithMediumForced","fontSizeForNativeBase","typeName","value","Typography","_type$base","legacyBase","legacySmall","legacyMedium","legacyLarge","legacyWide","_ref$type","otherProps","_objectWithoutProperties","_excluded","sx","useSx","defaultColor","hasTypographyAncestor","baseOrDefaultToBody","isHeader","nonNullableVariant","currentColor","colorStyles","textDecorationColor","entries","_slicedToArray","key","text","NBText","Provider","TypographyText","props","TypographyParagraph","createHeading","level","defaultBase","TypographyHeading","accessibilityLevel","displayName","SetDefaultColor","Text","Paragraph","Header1","Header2","Header3","Header4","Header5","Header6","h1","h2","h3","h4","h5","Icon","_ref$size","_ref$align","align","clonedIcon","cloneElement","TypographyIconSpecifiedColor","colorStyle","TypographyIconInheritColor","TypographyIcon","_excluded2","getTextColorByType","isButtonInteractedWith","ButtonIcon","iconPosition","marginRight","marginLeft","ButtonContentChildren","buttonIconSharedProps","sharedNativeStyle","flexShrink","_jsxs","alignItems","justifyContent","flexDirection","textAlign","ButtonContent","flexGrow","flexBasis","getCurrentPaddingConfig","ButtonPadding","currentPaddingKey","position","paddingX","paddingY","DisabledBorder","top","bottom","FocusBorder","_useTheme","buttonTheme","useNativeAnimation","onPressIn","onPressOut","animatedStyles","getButtonSize","allowedGhostTypes","Button","stretch","sizeProp","_ref$iconPosition","_ref$accessibilityRol","_useNativeAnimation","deprecatedProp","spinningIcon","SpinningIcon","className","LoaderIcon","ArcIcon","ActionsItem","as","_ref$stretch","_useState","useState","_useState2","isLoading","setIsLoading","mountedRef","useRef","useEffect","current","handlePress","e","callPressAndUpdateLoadingState","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","t0","stop","apply","ActionsButton","_extends","_objectDestructuringEmpty","getCurrentLayout","layout","getCurrentDirection","getCurrentAlignSelf","Actions","reversed","currentAlignItems","currentDirection","currentAlignSelf","direction","space","Item","getCurrentRadius","sizeVariant","getCurrentSize","getIconSize","getInitials","firstname","lastname","toUpperCase","AvatarContent","src","alt","isLight","source","uri","accessibilityLabel","UserIcon","Avatar","currentSize","currentBorderRadius","overflow","BottomSheetComponent","BottomSheet","useBottomSheet","useStaticBottomSheet","Content","bottomSheetRef","BottomSheetMemoized","useMemo","overflowHidden","useBlockBodyScroll","isScrollBlocked","document","classList","add","remove","ModalBehaviourPortal","visible","Boolean","Portal","_Fragment","OnCloseContext","OnCloseProvider","onClose","useOnCloseModalBehaviour","CloseButton","onCloseContextCallback","handleClose","ModalBehaviour","Overlay","CardModalRotationContainer","contentAnimationEnter","contentAnimatioEnterActive","contentAnimatioExit","contentAnimatioExitActive","contentAnimationClassNames","appear","appearActive","enter","enterActive","exit","exitActive","opacityEnter","opacityEnterActive","opacityExit","opacityExitActive","opacityClassNames","CardModalAnimation","_ref$appear","_ref$unmountOnExit","unmountOnExit","_ref$isAnimationEnabl","isAnimationEnabled","onEnter","onEntered","onExit","onExited","sharedProps","in","CSSTransition","timeout","classNames","margin","CardModalScrollContainer","CardModalBehaviour","isModalBehaviourVisible","setIsModalBehaviourVisible","bounces","contentContainerStyle","handleExitAnimationDone","CardModalBody","_ref$paddingX","_ref$paddingY","CardModalFooter","_ref$padding","_ref$hasSeparator","hasSeparator","marginTop","borderTopWidth","CardModalHeader","title","_ref$paddingBottom","paddingBottom","defaultContainerPadding","borderBottomWidth","paddingRight","paddingLeft","CardModal","_ref$backgroundColor","_ref$maxWidth","withoutShadow","maxHeight","Body","Header","Footer","getBackgroundColor","isSelected","getBorderRadius","Number","MAX_SAFE_INTEGER","AnimatedChoiceItemView","backgroundStyles","getCurrentTextColor","ChoiceItem","onChange","onBlur","onFocus","handleChange","accessibilityState","ChoiceItemContainer","isLast","currentItemMarginValue","marginBottom","ChoicesContainer","Choices","id","_ref2$direction","currentValue","setCurrentValue","isForm","childrenArray","Children","toArray","newValue","nativeID","map","child","index","element","createChoicesComponent","ButtonChoices","ChoicesElements","DialogModalAnimation","DialogModalBehaviour","DialogModal","illustration","actions","paddingTop","flex","DialogModalButton","_ref2$stretch","Emoji","emoji","_useMemo","parse","assetType","_useMemo2","emojiData","url","ExternalAppLink","Component","appScheme","appValue","onOpenAppError","rest","handleOnPress","canOpen","Linking","canOpenURL","sent","defaultPrevented","openURL","error","Sms","phoneNumber","Tel","_ref4","_excluded3","Mail","_ref5","emailAddress","_excluded4","defaultOpenLinkBehavior","ExternalLink","_ref$openLinkBehavior","openLinkBehavior","target","rel","getIconColor","InputIcon","InputPressable","inputTextContainer","InputTextContainer","InputText","internalForceState","_ref$disabled","_ref$autoCorrect","autoCorrect","_ref$textContentType","textContentType","_ref$autoComplete","autoComplete","_ref$keyboardType","keyboardType","multiline","onSubmitEditing","Input","py","isHighlighted","AutocompleteItem","AutocompleteItemsListContainer","_ref$zIndex","zIndex","elevation","AutocompleteOption","isReactElement","_typeof","Autocomplete","name","isInitialOpen","initialValue","containerProps","filterItemBasedOnCurrentInputValue","checkSelectedItem","itemToString","onInputChange","onSelectItem","onOuterPress","errorElement","emptyResultsElement","_ref$inputTestID","inputTestID","_ref$listContainerTes","listContainerTestID","items","filter","Downshift","defaultIsOpen","initialSelectedItem","initialInputValue","handleItemToString","stateReducer","changes","stateChangeTypes","changeInput","selectedItem","stateAndHelpers","onSelect","onOuterClick","onInputValueChange","getRootProps","getInputProps","getMenuProps","getItemProps","getToggleButtonProps","isOpen","inputValue","highlightedIndex","openMenu","shouldSuppressRefError","rootProps","suppressRefError","menuProps","_getToggleButtonProps","onClickToggle","onClick","toggleProps","_getInputProps","onKeyDown","onSearchInputFocus","onSearchInputBlur","onSearchInputChange","inputProps","hasCurrentSearch","currentItems","isCurrentlyOpen","canDisplayCollapseButton","hitSlop","handleTogglePress","ArrowUpIcon","ArrowDownIcon","onKeyPress","_getItemProps","role","ariaSelected","itemProps","Option","UnsafeInternalItem","isChecked","getBorderColor","Checkbox","_ref$hitSlop","display","CheckboxMark","getReturnKeyTypeForNumericInput","returnKeyType","prefixWithZero","maxLength","padStart","dayFormatter","monthFormatter","yearFormatter","getDayInInterval","getMonthInInterval","minDate","maxDate","minValue","getMonth","maxValue","getYearInInterval","getFullYear","getValueToDisplayedString","toString","keyboardDatePickerReducer","action","nextDay","currentDay","displayedDay","nextMonth","currentMonth","displayedMonth","nextYear","currentYear","displayedYear","nextCurrentDay","nextCurrentMonth","nextCurrentYear","isNumber","isNaN","onDatePartChange","_ref$validYearMinLeng","validYearMinLength","arrayParts","isEverythingUndefined","every","v","isEverythingDefined","nextValue","Date","isValidYear","setDate","setMonth","setFullYear","setMinutes","setHours","setSeconds","setMilliseconds","isMinDateAfterNextValue","getTime","isMaxDateBeforeNextValue","stringToNumber","getCurrentInternalForcedState","InputPart","PartContainer","KeyboardDatePicker","monthRef","yearRef","defaultValue","defaultDay","getDate","defaultMonth","defaultYear","_useReducer","useReducer","_useReducer2","dispatch","sharedInputPartProps","handleDatePartChange","handleAutoFocusNextField","currentFieldValue","nextFieldRef","nativeEvent","_monthRef$current","_yearRef$current","DatePicker","GoogleMapsApiKeyContext","GoogleMapsApiKeyProvider","apiKey","useGoogleMapApiKey","context","useGoogleMapsApi","autoCompleteServiceInstanceRef","placesServiceInstanceRef","loader","Loader","libraries","loadMapsApi","_loadMapsApi","placeApi","_callee$","importLibrary","AutocompleteService","PlacesService","createElement","getPlacePredictions","promise","Promise","resolve","_autoCompleteServiceI","predictions","status","google","maps","places","PlacesServiceStatus","OK","results","placesService","getDetails","placeId","_placesServiceInstanc","place","result","googleMapsAutocompleteReducer","hasSearchError","isLoadingSearch","payload","hasSelectResultError","isLoadingResultDetails","currentSelectedValue","findComponentByType","components","find","matchStreetNumberWithOriginalAddress","streetNumber","address","exec","_ref2$","number","_ref2$2","extension","formatAddressFromGoogle","placeResult","originalAddress","_placeResult$geometry","_placeResult$geometry2","_findComponentByType","_findComponentByType2","_findComponentByType3","_findComponentByType4","_findComponentByType5","_findComponentByType6","_findComponentByType7","_findComponentByType8","_placeResult$address_","address_components","addressComponents","lat","geometry","location","lng","locality","long_name","subLocality","zipcode","streetName","country","administrativeAreaLevel1","administrativeAreaLevel2","GoogleMapsAutocompleteContext","shouldDisplayEmptyStateWhenNoResults","GoogleMapsAutocompleteProvider","_ref$minCharsToSearch","minCharsToSearch","_ref$debounceTimeout","debounceTimeout","mapsApi","searchResultsCache","resultDetailsCache","handleInputChange","useDebouncedCallback","useCallback","predictionsPromise","_yield$predictionsPro","handleSelectItem","_callee2","placePromise","formattedAddress","_context2","place_id","then","description","api","useGoogleMapsAutocomplete","InputAddressOption","MapPinIcon","structured_formatting","main_text","secondary_text","defaultItemToString","formatInitialValueToAutocompletePrediction","reference","terms","matched_substrings","join","main_text_matched_substrings","InputAddress","_ref$itemToString","_useGoogleMapsAutocom","formattedInitialValue","InputEmail","autoCapitalize","getColorFromState","InputFeedback","InputField","label","labelFeedback","feedback","InputPassword","isPasswordDefaultVisible","isVisible","setIsVisible","secureTextEntry","EyeOffIcon","EyeIcon","isPhoneNumberValid","isValidNumber","phoneNumberLength","InputPhone","_ref$phoneNumberLengt","currentReturnKeyType","event","parseNumber","phone","finalPhoneNumber","eventWithoutCountryCode","countryCode","getCountryCallingCode","originalNativeEventText","getTypographyColor","InputTag","typographyColor","Label","htmlFor","InnerCircle","OuterCircle","Radio","focusable","getCurrentBackgroundColor","getCurrentBorderColor","isFirst","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderLeftWidth","HoverBorder","shouldDisplayBorder","RadioButton","RadioButtonGroupItem","RadioButtonGroup","flexWrap","clone","TextArea","textAlignVertical","FullscreenModalBody","shouldHandleBottomNotch","shouldHandleTopNotch","_useSafeAreaInsets","useSafeAreaInsets","FullscreenModalFooter","_ref$shouldHandleBott","borderTopColor","slideInFromBottomEnter","slideInFromBottomEnterActive","slideInFromBottomExit","slideInFromBottomExitActive","slideInClassNames","FullscreenModalAnimation","FullscreenModalBehaviour","FullscreenModalContainer","FullscreenModalHeader","isTransparent","_ref$shouldHandleTopN","hasRight","hasLeft","hasContent","borderBottomColor","FullscreenModal","Highlight","Background","AnimatedBackground","_theme$kitt$iconButto","scaleHover","scalePressed","AnimatedScale","currentHoverScale","currentPressedScale","opacityStyles","scaleStyles","IconButton","_ref$color","translate3d","isCurrentHovered","isCurrentPressed","KittMapConfigProviderContext","KittMapConfigProvider","mapId","apiToken","providerValue","useKittMapConfig","ListItemContent","ListItemSideContainer","_ref$side","side","ListItemSideContent","_ref2$align","ListItem","withPadding","borders","Wrapper","Fragment","wrapperProps","SideContent","SideContainer","MapMarkerSimple","_ref$width","_ref$height","styles","DefaultMarkerSvg","MapMarkerLarge","_ref2$width","_ref2$height","_ref2$color","LargeMarkerSvg","MapMarkerPosition","_ref3$width","_ref3$height","PositionMarkerSvg","IconContent","AlertCircleIcon","CheckIcon","AlertTriangleIcon","InfoIcon","getColorByType","getIconButtonColor","messageType","BaseMessage","hasNoRadius","centeredText","insets","onDismiss","XIcon","Message","createKittSpaces","sizes","positive","negative","overridenNativeBaseSizeandSpaceScale","fromEntries","createKittNativeBaseCustomTheme","appTheme","spaces","appBreakpoints","extendedTheme","extendTheme","innerCircle","app","radii","lg","md","sm","xl","xs","borderWidths","defaultSize","fontSizes","lineHeights","fontWeights","fonts","shadowColor","shadowOffset","shadowOpacity","shadowRadius","baseStyle","px","_disabled","_light","placeholderTextColor","bg","_hover","_focus","_stack","outlineWidth","boxShadow","selectionColor","_invalid","variants","underlined","rounded","filled","unstyled","_dark","KittNativeBaseProvider","isSSR","nativeBaseCustomTheme","kittInternalTheme","NativeBaseProvider","SimpleContainer","NavigationModalBehaviour","_ref2$appear","AnimationComponent","CurrentContainerComponent","_useState3","_useState4","shouldAppear","setShouldAppear","handleEnter","handleExit","NavigationModal","Notification","onDelete","pageLoaderContainer","PageLoader","_theme$kitt$pageLoade","center","circlePerimeter","PI","cx","cy","strokeDasharray","strokeDashoffset","strokeLinecap","stroke","PickerItem","PickerOption","webUseSelectReducer","actionAndChanges","options","useSelect","ItemClick","keepOpenOnChange","Picker","renderTrigger","_ref$keepOpenOnChange","initialValueIndex","indexOf","_useSelect","initialIsOpen","onIsOpenChange","onSelectedItemChange","onPressTrigger","restToggleProps","_useFloating","useFloating","placement","strategy","whileElementsMounted","autoUpdate","middleware","offset","x","y","floating","tooltipY","tooltipX","_getMenuProps","menuRef","myRef","currentRef","visibility","SegmentedProgressBar","_ref$currentStep","currentStep","stepsCount","_ref$colorVariant","colorVariant","withCurrentInProgress","fillColor","steps","_toConsumableArray","Array","from","stepNumber","isSegmentCurrentInProgress","Stripes","SkeletonContent","Skeleton","_ref$isLoading","setWidth","onLayout","Bar","Circle","Square","getStaticMapImageUrl","mapWidth","mapHeight","is2x","centerPart","zoom","sizePart","urlParts","mapImageUrl","URL","searchParams","append","useGetStaticMapImageUrl","forceMapId","forceApiToken","_useKittMapConfig","currentUrl","setCurrentUrl","currentMapIdRef","currentApiTokenRef","newUrl","StaticMapError","onReload","RotateCCWIcon","StaticMapImage","onLoadEnd","onError","StaticMapLoader","getMarkerPosition","translateX","StaticMapMarker","getRangedWidthValue","nextWidth","rangedMapWidth","getShouldDisplay2x","window","devicePixelRatio","mapBoxMaxPictureWidth","getPictureWidth","StaticMap","marker","onLoaded","currentWidth","setCurrentWidth","_useState5","_useState6","hasError","setHasError","_useState7","_useState8","currentMapKey","setCurrentMapKey","shouldDisplay2xImage","mapUrl","handleParentLayout","KITT_MAP_CHROMATIC_IGNORE","handleImageLoadEnd","handleError","handleReload","Marker","Flex","_ref$wrap","storyPadding","getBackgroundColorFromBlockColor","getTypographyColorFromBlockColor","StoryBlockBackgroundContext","StoryBlockColorContext","useStoryBlockColor","storyBlockColor","StoryBlock","background","marginX","StoryTitle","numberOfLines","StoryTitleLevel2","StoryTitleLevel3","StoryTitleLevel4","Level2","Level3","Level4","Story","StorySection","internalIsDemoSection","SubSection","BlockSection","DemoSection","Demo","DeprecatedSection","StoryContainer","platform","StoryDecorator","storyFn","StoryGridRow","_ref$breakpoint","breakpoint","_defineProperty","StoryGridCol","_ref10","titleColor","_ref10$platform","StoryGrid","Row","Col","getLabelColor","Tag","keepHoursInterval","hours","getDisplayedHours","keepMinutesInterval","minutes","getDisplayedMinutes","minutesWithinInterval","getInitialInputValueFromDateValue","date","getHours","getMinutes","TimePicker","_ref2$placeholder","validateButtonLabel","isDefaultVisible","modalTestID","pickerTestID","setInputValue","currentInputValue","_currentInputValue$sp","split","_currentInputValue$sp2","nextDate","sanitizedValue","replace","_sanitizedValue$split","_sanitizedValue$split2","currentHours","currentMinutes","handleBlur","Arrow","transformStyle","rotate","TooltipArrowIcon","TooltipContent","getShouldRenderArrow","isTooltipFullWidth","isBase","useShouldRenderArrow","getHasArrowEnoughSpace","arrowCenterOffset","Tooltip","_middlewareData$arrow","_middlewareData$arrow2","_middlewareData$arrow3","_middlewareData$arrow4","defaultVisible","_ref$position","fullWidth","onToggle","onUpdate","isCursorOnTooltip","setIsCursorOnTooltip","arrowRef","currentFloatingPadding","autoPlacement","allowedPlacements","shift","crossAxis","update","refs","middlewareData","centerOffset","shouldRenderArrow","hasArrowEnoughSpace","sharedArrowProps","useOnClickOutside","handlePressOutside","handleDisplayTooltip","handleMouseEnter","handleMouseLeave","themePart","transformOrigin","onHoverIn","handleHideTooltip","accessibilityHidden","pointerEvents","onTouchStart","onTouchEnd","onMouseEnter","onMouseLeave","getTypographyTypeConfig","calcSizesFromType","TypographyEmoji","_ref3$type","displayUnderline","displayUnderlineWhenHovered","TypographyLinkWebWrapper","hasNoUnderline","TypographyLink","noUnderline","underline","dataSet","cursor","useKittTheme","KittThemeProvider","KittThemeDecorator","makeDecorator","parameterName","wrapper","_parameters$isSSR","_ref2$options","_ref2$parameters","parameters","StyleWebWrapper","matchWindowSize","hasWidthMatched","hasHeightMatched","useMatchWindowSize","_useWindowDimensions","useWindowDimensions","MatchWindowSize","matchWindowSizeOptions","match","SwitchBreakpoints","useCurrentBreakpointName","backgroundColors","IconStatus","StepIcon","_ref2$state","ExternalStep","Step","_ref$index","_ref$state","_ref$isLast","_ref$shouldDisableNex","shouldDisableNextLink","getStepState","activeIndex","VerticalSteps","count"],"mappings":"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"}
|