@ornikar/kitt-universal 11.0.0 → 11.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/definitions/ActionCard/ActionCard.d.ts +3 -2
- package/dist/definitions/ActionCard/ActionCard.d.ts.map +1 -1
- package/dist/definitions/ActionCard/ActionCardContentWrapper.d.ts +3 -2
- package/dist/definitions/ActionCard/ActionCardContentWrapper.d.ts.map +1 -1
- package/dist/definitions/ActionCard/types.d.ts +1 -0
- package/dist/definitions/ActionCard/types.d.ts.map +1 -1
- package/dist/definitions/ActionCard/utils/getThemeName.d.ts +4 -0
- package/dist/definitions/ActionCard/utils/getThemeName.d.ts.map +1 -0
- package/dist/definitions/Button/ButtonContent.d.ts.map +1 -1
- package/dist/definitions/NavigationModal/NavigationModal.d.ts +1 -1
- package/dist/definitions/NavigationModal/NavigationModal.d.ts.map +1 -1
- package/dist/definitions/Tag/Tag.d.ts.map +1 -1
- package/dist/definitions/forms/InputFeedback/InputFeedback.d.ts.map +1 -1
- package/dist/definitions/forms/styledTextInputMixin.d.ts.map +1 -1
- package/dist/definitions/index.d.ts +3 -1
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/definitions/native-base/KittNativeBaseProvider.d.ts +170 -0
- package/dist/definitions/native-base/KittNativeBaseProvider.d.ts.map +1 -1
- package/dist/definitions/story-components/StoryBlock.d.ts +2 -2
- package/dist/definitions/story-components/StoryBlock.d.ts.map +1 -1
- package/dist/definitions/story-components/StoryTitle.d.ts.map +1 -1
- package/dist/definitions/themes/late-ocean/actionCard.d.ts +2 -0
- package/dist/definitions/themes/late-ocean/actionCard.d.ts.map +1 -1
- package/dist/definitions/typography/Typography.d.ts +6 -8
- package/dist/definitions/typography/Typography.d.ts.map +1 -1
- package/dist/definitions/typography/TypographyEmoji.d.ts.map +1 -1
- package/dist/definitions/typography/TypographyIcon.d.ts.map +1 -1
- package/dist/definitions/typography/typographyColors.d.ts +2 -0
- package/dist/definitions/typography/typographyColors.d.ts.map +1 -0
- package/dist/definitions/typography/utils/getNBThemeColorFromColorProps.d.ts +3 -0
- package/dist/definitions/typography/utils/getNBThemeColorFromColorProps.d.ts.map +1 -0
- package/dist/definitions/typography/utils/getTypographyColorValue.d.ts +5 -0
- package/dist/definitions/typography/utils/getTypographyColorValue.d.ts.map +1 -0
- package/dist/definitions/typography/utils/isTypeHeader.d.ts +3 -0
- package/dist/definitions/typography/utils/isTypeHeader.d.ts.map +1 -0
- package/dist/definitions/typography/utils/isTypographyHeader.d.ts +3 -0
- package/dist/definitions/typography/utils/isTypographyHeader.d.ts.map +1 -0
- package/dist/index-browser-all.es.android.js +379 -33
- package/dist/index-browser-all.es.android.js.map +1 -1
- package/dist/index-browser-all.es.ios.js +379 -33
- package/dist/index-browser-all.es.ios.js.map +1 -1
- package/dist/index-browser-all.es.js +379 -33
- package/dist/index-browser-all.es.js.map +1 -1
- package/dist/index-browser-all.es.web.js +373 -26
- package/dist/index-browser-all.es.web.js.map +1 -1
- package/dist/index-node-14.17.cjs.js +372 -26
- package/dist/index-node-14.17.cjs.js.map +1 -1
- package/dist/index-node-14.17.cjs.web.js +365 -18
- package/dist/index-node-14.17.cjs.web.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.android.js +134 -0
- package/dist/linaria-themes-browser-all.es.android.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.ios.js +134 -0
- package/dist/linaria-themes-browser-all.es.ios.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.js +134 -0
- package/dist/linaria-themes-browser-all.es.js.map +1 -1
- package/dist/linaria-themes-browser-all.es.web.js +134 -0
- package/dist/linaria-themes-browser-all.es.web.js.map +1 -1
- package/dist/linaria-themes-node-14.17.cjs.js +134 -0
- package/dist/linaria-themes-node-14.17.cjs.js.map +1 -1
- package/dist/linaria-themes-node-14.17.cjs.web.js +134 -0
- package/dist/linaria-themes-node-14.17.cjs.web.js.map +1 -1
- package/dist/tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -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/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/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/default.ts","../src/KittThemeContext.tsx","../src/ActionCard/utils/getStateKey.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/Button/utils/getCurrentBackgroundColorForNativeBaseTheme.ts","../src/Button/utils/getCurrentScale.ts","../src/Button/AnimatedContainer.web.tsx","../src/KittBreakpoints.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/utils/withTheme.tsx","../src/Icon/SpinningIcon.web.tsx","../src/LoaderIcon/LoaderIcon.tsx","../src/utils/windowSize/useMatchWindowSize.ts","../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/hooks/useNativeAnimation.web.tsx","../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/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/InputText/InputTextContainer.web.tsx","../src/forms/InputText/InputText.tsx","../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/forms/InputEmail/InputEmail.tsx","../src/forms/InputFeedback/InputFeedback.tsx","../src/forms/InputField/InputField.tsx","../src/forms/InputIcon/InputIcon.tsx","../src/forms/InputPressable/InputPressable.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/Modal/Body.tsx","../src/Modal/Footer.tsx","../src/Modal/OnCloseContext.ts","../src/Modal/Header.tsx","../src/Modal/Modal.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/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/utils/StyleWebWrapper.tsx","../src/typography/TypographyLink.tsx","../src/utils/windowSize/createWindowSizeHelper.ts","../src/useKittTheme.tsx","../src/utils/storybook/KittThemeDecorator.tsx","../src/utils/windowSize/MatchWindowSize.tsx","../src/utils/windowSize/useCurrentBreakpointName.ts"],"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\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 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 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 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 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 { 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 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: 'border-color',\n duration: '200ms',\n timingFunction: 'ease-in-out',\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","import { 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';\n\nexport const forms = {\n datePicker,\n input,\n radio,\n inputField,\n textArea,\n checkbox,\n inputTag,\n radioButtonGroup,\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 padding: string;\n borderColor: string;\n borderWidth: number;\n innerMargin: number;\n}\n\nexport const listItem: ListItemTheme = {\n padding: '12px 16px',\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 pageLoader: PageLoaderTheme = {\n size: 60,\n strokeWidth: 3,\n colors: {\n base: colors.separator,\n fill: colors.primary,\n },\n animation: {\n delay: 500,\n circleBackgroundFillDuration: 1000,\n filledCircleFillDuration: 1800,\n groupFilledCircleRotationDuration: 1800,\n filledCircleRotationDuration: 2160,\n fillEasingFunction: [0.39, 0.575, 0.565, 1],\n },\n};\n","import type { TextStyle } from 'react-native';\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 padding: string;\n default: {\n backgroundColor: string;\n };\n selected: {\n backgroundColor: string;\n color: string;\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 android: {\n padding: '12px 24px',\n default: {\n backgroundColor: colors.transparent,\n },\n selected: {\n backgroundColor: colors.primary,\n color: typography.colors.white,\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 skeleton: SkeletonTheme = {\n backgroundColor: lateOceanColorPalette.black100,\n flareColor: lateOceanColorPalette.black200,\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 padding: string;\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 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 { 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 { 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 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};\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 { ReactElement, ReactNode } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\nimport type { ActionCardVariantType } from './types';\nimport { getStateKey } from './utils/getStateKey';\n\ninterface ActionCardContentWrapperProps {\n isHovered?: boolean;\n isPressed?: boolean;\n isFocused?: boolean;\n variant: ActionCardVariantType;\n children: ReactNode;\n}\n\nexport function ActionCardContentWrapper({\n isHovered,\n isPressed,\n isFocused,\n variant,\n children,\n}: ActionCardContentWrapperProps): ReactElement {\n const theme = useTheme();\n const state = getStateKey(isHovered, isPressed, isFocused);\n\n const { translateY } = theme.kitt.actionCard[variant][state];\n\n const sharedTransform = translateY\n ? {\n transform: [{ translateY }],\n }\n : {};\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.${variant}.${state}.backgroundColor`}\n borderRadius=\"kitt.actionCard.borderRadius\"\n borderColor={`kitt.actionCard.${variant}.${state}.borderColor`}\n borderWidth={`kitt.actionCard.${variant}.${state}.borderWidth`}\n shadow={`kitt.actionCard.${variant}.${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 { ActionCardVariantType } from './types';\n\nexport interface ActionCardProps extends Pick<ViewProps, 'testID'> {\n variant?: ActionCardVariantType;\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 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 variant={variant} isHovered={isHovered} isFocused={isFocused} isPressed={isPressed}>\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 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 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","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 { useBreakpointValue } from 'native-base';\nimport type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\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","import type { ITextProps } from 'native-base';\nimport { Text as NBText } 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, KittBreakpoints } from '../KittBreakpoints';\nimport type { NativeBaseAcceptedFlexboxProps } from '../native-base/acceptable-native-base-props';\nimport type { TypographyTypeConfig } from '../themes/late-ocean/typography';\nimport type { KittTheme } from '../useKittTheme';\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';\nexport type TypographyColor =\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\nconst IsHeaderTypographyContext = createContext<boolean | undefined>(undefined);\nconst TypographyColorContext = createContext<TypographyColor>('black');\n\nexport function useTypographyColor(): TypographyColor {\n return useContext(TypographyColorContext);\n}\n\nconst TypographyDefaultColorContext = createContext<TypographyColor | undefined>(undefined);\n\nfunction useTypographyDefaultColor(): TypographyColor | undefined {\n return useContext(TypographyDefaultColorContext);\n}\n\n/** @deprecated use native-base instead for SSR compatibility */\nexport const getTypographyTypeConfigKey = (theme: KittTheme): keyof TypographyTypeConfig => {\n const isMediumOrAbove = theme.responsive.matchWindowSize({ minWidth: KittBreakpoints.MEDIUM });\n return isMediumOrAbove ? 'mediumAndWide' : 'baseAndSmall';\n};\n\nexport function getTypographyTypeConfigKeyFromTypeName(\n breakpointName: KittBreakpointNameEnum,\n): keyof TypographyTypeConfig {\n return breakpointName === 'base' || breakpointName === 'small' ? 'baseAndSmall' : 'mediumAndWide';\n}\n\nconst isTypeHeader = (type: TypographyType): type is TypographyHeaderType => type.startsWith('header');\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\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?: TypographyColor;\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\nfunction getNBThemeColorFromColorProps(colorName: TypographyColor | undefined): string | undefined {\n return colorName ? `kitt.typography.${colorName}` : undefined;\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 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 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 currentColor = !color && !hasTypographyAncestor ? defaultColor : color;\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 color={getNBThemeColorFromColorProps(currentColor)}\n textDecorationColor={getNBThemeColorFromColorProps(currentColor)}\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 type { ReactElement } from 'react';\nimport type { Except } from 'type-fest';\nimport type { IconProps } from '../Icon/Icon';\nimport { Icon } from '../Icon/Icon';\nimport { useTheme } from '../KittThemeContext';\nimport type { SetNonNullable } from '../utils/typeUtils';\nimport type { TypographyProps } from './Typography';\nimport { useTypographyColor } from './Typography';\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 theme = useTheme();\n return <Icon {...props} color={color === 'inherit' ? 'inherit' : theme.kitt.typography.colors[color]} />;\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 type { TypographyColor } from '../typography/Typography';\nimport { Typography } 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 type { ComponentType, ForwardRefExoticComponent, PropsWithoutRef, RefAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport type { Except } from 'type-fest';\nimport { useTheme } from '../KittThemeContext';\n\n// type $Without<T, K extends keyof any> = T extends any ? Pick<T, Exclude<keyof T, K>> : never;\n// type $DeepPartial<T> = { [P in keyof T]?: $DeepPartial<T[P]> };\n\n// export function withTheme<Props extends { theme: DefaultTheme }, C>(\n// WrappedComponent: ComponentType<Props> & C,\n// ): ComponentType<SetOptional<Props, 'theme'>> & hoistNonReactStatics.NonReactStatics<typeof WrappedComponent> {\n// return function ThemedComponent(props) {\n// const theme = useTheme();\n\n// return (<WrappedComponent theme={theme} {...(props as any)} />) as any;\n// };\n// }\n\nexport function withTheme<Props extends { theme: DefaultTheme }, T>(\n WrappedComponent: ComponentType<Props>,\n): ForwardRefExoticComponent<PropsWithoutRef<Except<Props, 'theme'>> & RefAttributes<T>> {\n // eslint-disable-next-line prefer-arrow-callback\n return forwardRef<T, Except<Props, 'theme'>>(function ThemedComponent(props, ref) {\n const theme = useTheme();\n\n return <WrappedComponent ref={ref} theme={theme} {...(props as any)} />;\n });\n}\n","import { styled } from '@linaria/react';\nimport type { ReactElement } from 'react';\nimport { cloneElement } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { withTheme } from '../utils/withTheme';\nimport type { SpinningIconProps } from './SpinningIcon';\n\ninterface StyledSpinningIconContainerProps {\n theme: DefaultTheme;\n}\n\nconst StyledSpinningIconContainer = withTheme(styled.div<StyledSpinningIconContainerProps>`\n & {\n display: inline-flex;\n }\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 <StyledSpinningIconContainer>{clonedIcon}</StyledSpinningIconContainer>;\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 { useWindowDimensions } from 'react-native';\nimport type { WindowDimensions } from './createWindowSizeHelper';\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 { ComponentProps, ElementType, ReactElement, VoidFunctionComponent } from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport type { ButtonProps } from '../Button/Button';\nimport { KittBreakpoints } from '../KittBreakpoints';\nimport { LoaderIcon } from '../LoaderIcon/LoaderIcon';\nimport { View } from '../native-base/primitives';\nimport { useMatchWindowSize } from '../utils/windowSize/useMatchWindowSize';\n\nfunction getCurrentStretchValue(isStretch: boolean | undefined, isMedium: boolean): boolean | undefined {\n // Stretch will follow the value passed from the component occurence if defined\n if (isStretch) return isStretch;\n\n return !isMedium ? true : undefined;\n}\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,\n ...props\n}: ActionsItemProps<C> & ActionsItemSendableComponentProps<C>): ReactElement {\n const isMedium = useMatchWindowSize({\n minWidth: KittBreakpoints.MEDIUM,\n });\n\n const isCurrentStretch = getCurrentStretchValue(stretch, isMedium);\n\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={isCurrentStretch}\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 { 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\nexport interface ActionsProps extends Except<StackProps, 'space'> {\n layout?: ActionsLayout;\n}\n\nexport function Actions({ children, layout, ...props }: ActionsProps): ReactElement {\n const currentAlignItems = getCurrentLayout(layout);\n const currentDirection = getCurrentDirection(layout);\n\n return (\n <Stack alignItems={currentAlignItems} direction={currentDirection} flexGrow={1} {...props} space=\"kitt.3\">\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, StyleSheet } from 'react-native';\nimport styled from 'styled-components/native';\n\ninterface OverlayProps extends Pick<PressableProps, 'onPress'> {}\n\n// Don't use styled.Pressable here - babel-plugin-styled-components-react-native-web only supports tagged templates\nconst OverlayPressable = styled(Pressable)(({ theme }) => ({\n ...StyleSheet.absoluteFillObject,\n backgroundColor: theme.kitt.colors.overlay.dark,\n}));\n\nexport function Overlay({ onPress }: OverlayProps): ReactElement {\n return <OverlayPressable accessibilityRole=\"none\" onPress={onPress} />;\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 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","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 { ReactElement, ReactNode } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Platform, StyleSheet, View } from 'react-native';\nimport Animated from 'react-native-reanimated';\nimport styled, { css } from 'styled-components/native';\nimport { KittBreakpoints } from '../KittBreakpoints';\nimport { Pressable } from '../native-base/primitives';\nimport type { TypographyColor } from '../typography/Typography';\nimport { Typography } from '../typography/Typography';\nimport type { BaseChoicesProps } from './Choices';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\n\ninterface GetCurrentTextColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n}\n\nfunction 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\ntype ChoiceItemVariant = 'rounded';\ntype ChoiceItemSize = BaseChoicesProps<null>['size'];\n\nfunction getBorderRadius(defaultRadius: number, variant?: ChoiceItemVariant): number {\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 const arbitraryHighHeightValue = 800;\n if (variant === 'rounded') return arbitraryHighHeightValue;\n\n return defaultRadius;\n}\n\ninterface DisabledBorderProps {\n $variant?: ChoiceItemVariant;\n}\n\nconst DisabledBorder = styled(View)<DisabledBorderProps>`\n border-radius: ${({ theme, $variant }) => getBorderRadius(theme.kitt.choices.item.borderRadius, $variant)}px;\n ${({ theme }) => {\n const { width, color } = theme.kitt.choices.item.disabled.border;\n\n return css`\n border: ${width}px solid ${color};\n `;\n }};\n`;\n\ninterface ChoiceItemPressableProps {\n $variant?: ChoiceItemVariant;\n $size?: ChoiceItemSize;\n $isHovered?: boolean;\n $isPressed?: boolean;\n $isDisabled?: boolean;\n $isSelected?: boolean;\n}\n\nconst ChoiceItemView = styled(Platform.OS === 'web' ? View : Animated.View)<ChoiceItemPressableProps>`\n position: relative;\n border-radius: ${({ theme, $variant }) => getBorderRadius(theme.kitt.choices.item.borderRadius, $variant)}px;\n background-color: ${({ theme, $isHovered, $isPressed, $isDisabled, $isSelected }) => {\n const {\n hoverWhenSelected,\n hover,\n disabled,\n selected,\n pressed,\n default: defaultBackground,\n } = theme.kitt.choices.item.backgroundColor;\n\n if ($isDisabled) return disabled;\n\n if ($isSelected && $isHovered) return hoverWhenSelected;\n\n if ($isPressed) return pressed;\n\n if ($isHovered) return hover;\n\n if ($isSelected) return selected;\n\n return defaultBackground;\n }};\n\n ${({ theme, $size }) => {\n const { base, small } = theme.kitt.choices.item.padding;\n\n if ($size === 'small') {\n return css`\n padding: ${base / 2}px ${base}px;\n `;\n }\n\n return theme.responsive.ifWindowSizeMatches(\n {\n minWidth: KittBreakpoints.SMALL,\n },\n css`\n padding: ${small}px;\n `,\n css`\n padding: ${base}px;\n `,\n );\n }};\n\n ${({ theme }) => {\n if (Platform.OS !== 'web') return undefined;\n\n const { property, duration, timingFunction } = theme.kitt.choices.item.transition;\n\n return css`\n transition: ${property} ${duration}ms ${timingFunction};\n `;\n }}\n`;\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 <ChoiceItemView\n style={Platform.OS !== 'web' ? [backgroundStyles] : undefined}\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 ? <DisabledBorder $variant={variant} style={StyleSheet.absoluteFillObject} /> : null}\n </ChoiceItemView>\n )}\n </Pressable>\n );\n}\n","import { View } from 'react-native';\nimport styled, { css } from 'styled-components/native';\nimport type { ChoicesDirection } from './Choices';\n\ninterface ChoiceItemContainerProps {\n $isLast?: boolean;\n $direction: ChoicesDirection;\n}\n\nexport const ChoiceItemContainer = styled(View)<ChoiceItemContainerProps>`\n ${({ theme, $isLast, $direction }) => {\n const { row, column } = theme.kitt.choices.spacing;\n\n if ($direction === 'row') {\n return css`\n margin-right: ${$isLast ? 0 : row}px;\n `;\n }\n\n return css`\n margin-bottom: ${$isLast ? 0 : column}px;\n `;\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","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 { styled } from '@linaria/react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { withTheme } from '../../utils/withTheme';\nimport type { InputTextContainerProps } from './InputTextContainer';\n\ninterface WebInputTextContainerProps extends InputTextContainerProps {\n theme: DefaultTheme;\n}\n\nexport const InputTextContainer = withTheme(styled.div<WebInputTextContainerProps>`\n display: flex;\n position: relative;\n\n & > *::-ms-clear,\n & > *::-ms-reveal {\n display: none;\n }\n\n & > * {\n transition: ${({ theme }) => {\n const { property, duration, timingFunction } = theme.kitt.forms.input.transition;\n return `${property} ${duration} ${timingFunction}`;\n }};\n }\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 $isDisabled={disabled}>\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, 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 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 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 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 value,\n testID,\n id,\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 {...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 {...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 {...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 } 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 type { TypographyColor, TypographyProps } from '../../typography/Typography';\nimport { Typography } 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 type { ReactElement } from 'react';\nimport type { InputFormState } from 'forms/utils';\nimport { useTheme } from '../../KittThemeContext';\nimport type { TypographyIconProps } from '../../typography/TypographyIcon';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\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 { 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 { View } from 'react-native';\nimport styled from 'styled-components/native';\nimport { useTheme } from '../../KittThemeContext';\nimport type { TypographyColor } from '../../typography/Typography';\nimport { Typography } from '../../typography/Typography';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\n\ntype InputTagType = 'success' | 'danger';\n\nconst getTypographyColor = (type: InputTagType | undefined): TypographyColor => (type ? 'white' : 'black');\n\ninterface InputTagContainerProps {\n type?: InputTagType;\n}\n\nconst InputTagContainer = styled(View)<InputTagContainerProps>`\n align-items: center;\n justify-content: center;\n flex-direction: row;\n align-self: flex-start;\n overflow: hidden;\n padding-horizontal: ${({ theme }) => theme.kitt.spacing * 2}px;\n\n background-color: ${({ theme, type }) => {\n if (type === 'success') {\n return theme.kitt.forms.inputTag.success.backgroundColor;\n }\n if (type === 'danger') {\n return theme.kitt.forms.inputTag.danger.backgroundColor;\n }\n\n return theme.kitt.forms.inputTag.default.backgroundColor;\n }};\n border-radius: ${({ theme }) => theme.kitt.forms.inputTag.borderRadius}px;\n`;\n\nconst IconContainer = styled(View)`\n margin-right: ${({ theme }) => theme.kitt.spacing}px;\n`;\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 <InputTagContainer type={type}>\n {icon && (\n <IconContainer>\n <TypographyIcon icon={icon} size={theme.kitt.forms.inputTag.iconSize} color={typographyColor} />\n </IconContainer>\n )}\n <Typography.Text base=\"body-small\" color={typographyColor}>\n {children}\n </Typography.Text>\n </InputTagContainer>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Platform } from 'react-native';\nimport { Typography } from '../../typography/Typography';\n\nexport interface LabelProps {\n htmlFor: string;\n children: NonNullable<ReactNode>;\n}\n\nexport function Label({ htmlFor, children }: LabelProps): ReactElement {\n return (\n <Typography.Text base=\"body\">\n {Platform.OS === 'web' ? <label htmlFor={htmlFor}>{children}</label> : children}\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 { 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?: 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 /**\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={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 { 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?: boolean;\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 { useBreakpointValue } from 'native-base';\nimport type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\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 styled from 'styled-components/native';\n\nexport interface ListItemContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n}\n\nconst ContentView = styled.View`\n flex: 1 0 0%;\n align-self: center;\n`;\n\nexport function ListItemContent({ children, ...rest }: ListItemContentProps): ReactElement {\n return <ContentView {...rest}>{children}</ContentView>;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps, ViewStyle } from 'react-native';\nimport styled from 'styled-components/native';\n\nexport interface ListItemSideContainerProps extends ViewProps {\n children: NonNullable<ReactNode>;\n side?: 'left' | 'right';\n}\n\nconst SideContainerView = styled.View<ListItemSideContainerProps>`\n flex-direction: row;\n margin-left: ${({ theme, side }) => (side === 'right' ? `${theme.kitt.listItem.innerMargin}px` : 0)};\n margin-right: ${({ theme, side }) => (side === 'left' ? `${theme.kitt.listItem.innerMargin}px` : 0)};\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 <SideContainerView side={side} {...rest}>\n {children}\n </SideContainerView>\n );\n}\n\nexport interface ListItemSideContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n align?: ViewStyle['alignSelf'];\n}\n\nconst SideContentView = styled.View<ListItemSideContentProps>`\n align-self: ${({ align }) => align};\n`;\n\nexport function ListItemSideContent({ children, align = 'auto', ...rest }: ListItemSideContentProps): ReactElement {\n return (\n <SideContentView align={align} {...rest}>\n {children}\n </SideContentView>\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 styled, { css } from 'styled-components/native';\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\ninterface ContainerViewProps extends Pick<ListItemProps, 'borders' | 'withPadding'> {}\n\nconst ContainerView = styled.View<ContainerViewProps>`\n flex-direction: row;\n padding: ${({ withPadding, theme }) => (withPadding ? theme.kitt.listItem.padding : 0)};\n ${({ theme, borders }) => {\n const { borderWidth } = theme.kitt.listItem;\n\n if (borders === 'top') {\n return `border-top-width: ${borderWidth}px`;\n }\n\n if (borders === 'bottom') {\n return `border-bottom-width: ${borderWidth}px`;\n }\n\n if (borders === 'both') {\n return css`\n border-top-width: ${borderWidth}px;\n border-bottom-width: ${borderWidth}px;\n `;\n }\n\n return 'border: none';\n }};\n border-color: ${({ theme }) => theme.kitt.listItem.borderColor};\n background-color: ${({ theme }) => theme.kitt.colors.uiBackgroundLight};\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 <ContainerView withPadding={withPadding} borders={borders} {...containerProps}>\n {left ? <ListItemSideContainer side=\"left\">{left}</ListItemSideContainer> : null}\n\n <ListItemContent>{children}</ListItemContent>\n\n {right ? <ListItemSideContainer side=\"right\">{right}</ListItemSideContainer> : null}\n </ContainerView>\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 { ReactElement, ReactNode } from 'react';\nimport { ScrollView } from 'react-native';\nimport styled from 'styled-components/native';\n\nconst BodyView = styled.View`\n padding: ${({ theme }) => theme.kitt.spacing * 6}px ${({ theme }) => theme.kitt.spacing * 4}px;\n`;\n\nexport interface BodyProps {\n children: NonNullable<ReactNode>;\n}\n\nexport function ModalBody({ children }: BodyProps): ReactElement {\n return (\n <ScrollView>\n <BodyView>{children}</BodyView>\n </ScrollView>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport styled from 'styled-components/native';\n\nexport interface FooterProps {\n children: NonNullable<ReactNode>;\n}\n\nconst FooterView = styled.View`\n flex: 0 0 auto;\n padding: ${({ theme }) => theme.kitt.spacing * 4}px;\n border-top-width: 1px;\n border-top-color: ${({ theme }) => theme.kitt.colors.separator};\n`;\n\nexport function ModalFooter({ children }: FooterProps): ReactElement {\n return <FooterView>{children}</FooterView>;\n}\n","import { createContext } from 'react';\n\nexport const OnCloseContext = createContext<() => void>(() => {});\n","import { XIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement, ReactNode } from 'react';\nimport { useContext } from 'react';\nimport styled from 'styled-components/native';\nimport { IconButton } from '../IconButton/IconButton';\nimport { OnCloseContext } from './OnCloseContext';\n\nexport interface HeaderProps {\n children: NonNullable<ReactNode>;\n left?: ReactNode;\n right?: ReactNode;\n}\n\nconst HeaderView = styled.View`\n position: relative;\n padding: ${({ theme }) => theme.kitt.spacing * 2}px;\n display: flex;\n flex: 0 0 auto;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-bottom-width: 1px;\n border-bottom-color: ${({ theme }) => theme.kitt.colors.separator};\n min-height: 57px;\n`;\n\nconst LeftIconView = styled.View`\n align-self: flex-start;\n margin-right: ${({ theme }) => theme.kitt.spacing * 2}px;\n`;\n\nconst RightIconView = styled.View`\n align-self: flex-start;\n margin-left: ${({ theme }) => theme.kitt.spacing * 2}px;\n`;\n\ninterface TitleViewProps {\n isIconLeft?: boolean;\n}\n\nconst TitleView = styled.View<TitleViewProps>`\n padding-left: ${({ theme, isIconLeft }) => (isIconLeft ? 0 : theme.kitt.spacing * 2)}px;\n flex-shrink: 1;\n`;\n\nexport function ModalHeader({ left, right, children }: HeaderProps): ReactElement {\n const onClose = useContext(OnCloseContext);\n\n const isIconLeft = !!left;\n\n return (\n <HeaderView>\n {isIconLeft && <LeftIconView>{left}</LeftIconView>}\n\n <TitleView isIconLeft={isIconLeft}>{children}</TitleView>\n\n {right !== undefined ? (\n right\n ) : (\n <RightIconView>\n <IconButton icon={<XIcon />} onPress={onClose} />\n </RightIconView>\n )}\n </HeaderView>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Modal as NativeModal } from 'react-native';\nimport styled from 'styled-components/native';\nimport { Overlay } from '../Overlay/Overlay';\nimport { ModalBody } from './Body';\nimport { ModalFooter } from './Footer';\nimport { ModalHeader } from './Header';\nimport { OnCloseContext } from './OnCloseContext';\n\nexport interface ModalProps {\n visible: boolean;\n children: ReactNode;\n onClose: () => void;\n onEntered?: () => void;\n onExited?: () => void;\n}\n\nconst ModalView = styled.View`\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n display: flex;\n align-items: center;\n justify-content: center;\n padding: ${({ theme }) => theme.kitt.spacing * 20}px ${({ theme }) => theme.kitt.spacing * 4}px;\n`;\n\nconst ContentView = styled.View`\n position: relative;\n display: flex;\n flex-direction: column;\n max-height: 100%;\n max-width: 540px;\n height: auto;\n width: 100%;\n border-radius: ${({ theme }) => theme.kitt.card.borderRadius}px;\n background-color: ${({ theme }) => theme.kitt.colors.uiBackgroundLight};\n`;\n\n/**\n * @deprecated This component will be deleted in a later Kitt Universal version. Use CardModal instead\n */\nexport function Modal({ visible, children, onClose, onEntered, onExited }: ModalProps): ReactElement {\n return (\n <OnCloseContext.Provider value={onClose}>\n <NativeModal\n transparent\n animationType=\"fade\"\n supportedOrientations={['landscape', 'portrait']}\n visible={visible}\n onShow={onEntered}\n onDismiss={onExited}\n onRequestClose={onClose}\n >\n <ModalView>\n <Overlay onPress={onClose} />\n\n <ContentView>{children}</ContentView>\n </ModalView>\n </NativeModal>\n </OnCloseContext.Provider>\n );\n}\n\nModal.Header = ModalHeader;\nModal.Body = ModalBody;\nModal.Footer = ModalFooter;\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 = (spacing: number): 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] = size * spacing;\n sizes.negative[`-kitt.${size}` as KittNegativeSize] = -size * spacing;\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.spacing);\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 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 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 input: {\n states: theme.forms.input.states,\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 },\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 dialogModal: {\n borderRadius: theme.dialogModal.borderRadius,\n },\n forms: {\n input: {\n borderRadius: theme.forms.input.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 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 },\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 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 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 },\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 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 },\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 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 },\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 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 tooltip: {\n horizontalPadding: theme.tooltip.horizontalPadding,\n verticalPadding: theme.tooltip.verticalPadding,\n floatingPadding: theme.tooltip.floatingPadding,\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 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 },\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 { useBreakpointValue } from 'native-base';\nimport 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';\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: AnimationComponentType = useBreakpointValue({\n base: FullscreenModalAnimation,\n small: CardModalAnimation,\n });\n\n const CurrentContainerComponent: CurrentContainerComponentType = useBreakpointValue({\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 { useBreakpointValue } from 'native-base';\nimport 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 { NavigationModalBehaviour } from './NavigationModalBehaviour';\n\ninterface NavigationModalProps extends FullscreenModalProps {}\n\nexport function NavigationModal({ body, backgroundColor, footer, header }: NavigationModalProps): ReactElement {\n const Component: typeof FullscreenModal | typeof CardModal = useBreakpointValue({\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 { styled } from '@linaria/react';\nimport type { ReactElement } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { useTheme } from '../KittThemeContext';\nimport { withTheme } from '../utils/withTheme';\n\ninterface PageLoaderContainerProps {\n theme: DefaultTheme;\n $circlePerimeter: number;\n}\n\nconst PageLoaderContainer = withTheme(styled.div<PageLoaderContainerProps>`\n @keyframes PageLoaderInit {\n 0% {\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter}px;\n }\n\n 100% {\n stroke-dashoffset: 0;\n }\n }\n\n /** Primary circle animation **/\n @keyframes PageLoaderOffset {\n 0% {\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter}px;\n }\n\n /** 20% of this radius and represent the min offset part of the animated circle */\n 100% {\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter * 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: ${({ theme }) => theme.kitt.pageLoader.size}px;\n height: ${({ theme }) => theme.kitt.pageLoader.size}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 & circle {\n stroke-width: ${({ theme }) => theme.kitt.pageLoader.strokeWidth}px;\n stroke-dasharray: ${({ $circlePerimeter }) => $circlePerimeter}px;\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter}px;\n stroke-linecap: round;\n }\n\n & g[data-large-loader='base'] circle {\n stroke: ${({ theme }) => theme.kitt.pageLoader.colors.base};\n animation: ${({ theme }) => {\n const { animation } = theme.kitt.pageLoader;\n const [x1, y1, x2, y2] = animation.fillEasingFunction;\n\n return `${animation.circleBackgroundFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2}) ${animation.delay}ms forwards`;\n }};\n animation-name: PageLoaderInit;\n }\n\n & g[data-large-loader='fill'] {\n transform-origin: center center;\n animation: ${({ theme }) => {\n const { animation } = theme.kitt.pageLoader;\n\n return `${animation.filledCircleFillDuration}ms linear ${animation.delay}ms infinite`;\n }};\n animation-name: PageLoaderRotation;\n }\n\n & g[data-large-loader='fill'] circle {\n stroke: ${({ theme }) => theme.kitt.pageLoader.colors.fill};\n animation: ${({ theme }) => {\n const { animation } = theme.kitt.pageLoader;\n\n const [x1, y1, x2, y2] = animation.fillEasingFunction;\n\n const fillAnimation = `${animation.filledCircleFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2}) ${animation.delay}ms infinite alternate`;\n const rotationAnimation = `${animation.filledCircleRotationDuration}ms linear ${animation.delay}ms infinite`;\n\n return [fillAnimation, rotationAnimation].join(',');\n }};\n animation-name: PageLoaderOffset, PageLoaderRotation;\n }\n`);\n\nexport function PageLoader(props: Record<string, never>): ReactElement {\n const theme = useTheme();\n const { 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 };\n\n return (\n <PageLoaderContainer $circlePerimeter={circlePerimeter}>\n <svg width={size} height={size}>\n <g data-large-loader=\"base\">\n <circle {...sharedProps} />\n </g>\n <g data-large-loader=\"fill\">\n <circle {...sharedProps} />\n </g>\n </svg>\n </PageLoaderContainer>\n );\n}\n","import type { ReactElement } from 'react';\nimport { Typography } from '../typography/Typography';\n\nexport function Picker(): ReactElement {\n return <Typography.Text base=\"body\">Picker is not implemented for the web</Typography.Text>;\n}\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 { styled } from '@linaria/react';\nimport type { ReactElement } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { withTheme } from '../utils/withTheme';\n\ninterface SkeletonBaseProps {\n $isLoading?: boolean;\n theme: DefaultTheme;\n}\n\nconst StyledSkeleton = withTheme(styled.div<SkeletonBaseProps>`\n background-color: ${({ theme }) => theme.kitt.skeleton.backgroundColor};\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: ${({ $isLoading, theme }) =>\n $isLoading\n ? `linear-gradient(\n -90deg,\n ${theme.kitt.skeleton.backgroundColor},\n ${theme.kitt.skeleton.flareColor} 50%,\n ${theme.kitt.skeleton.backgroundColor} 100%\n )`\n : 'none'};\n animation: ${({ $isLoading }) => ($isLoading ? '1s ease-in-out infinite' : 'none')};\n animation-name: flareTranslate;\n }\n`);\n\ninterface SkeletonProps {\n isLoading: boolean;\n}\n\nexport function SkeletonContent({ isLoading }: SkeletonProps): ReactElement {\n return <StyledSkeleton $isLoading={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 { ViewStyle } from 'react-native';\nimport styled from 'styled-components/native';\n\ninterface FlexProps {\n direction: ViewStyle['flexDirection'];\n padding?: number;\n}\n\nexport const Flex = styled.View.withConfig<FlexProps>({\n shouldForwardProp: (prop, defaultValidatorFn) => !['direction', 'padding'].includes(prop) && defaultValidatorFn(prop),\n})`\n display: flex;\n flex-direction: ${({ direction }) => direction};\n flex-wrap: wrap;\n padding: ${({ theme, padding = 0 }) => padding * theme.kitt.spacing}px;\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 { TypographyColor } 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 = (color: StoryBlockProps['background'] = 'transparent'): TypographyColor => {\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<TypographyColor>('black');\n\nexport const useStoryBlockColor = (color?: TypographyColor | undefined): TypographyColor => {\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 type { TypographyProps } from '../typography/Typography';\nimport { Typography } 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 {\n children: ReactNode;\n}\n\nfunction DemoSection({ children }: DemoSectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.16\">\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 styled from 'styled-components/native';\nimport type { TypographyColor } from '../typography/Typography';\nimport { Typography } 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\ninterface ContainerProps {\n type: TagType;\n variant: TagVariant;\n}\n\nconst Container = styled.View<ContainerProps>`\n background-color: ${({ theme, type, variant }) => theme.kitt.tag[type][variant].backgroundColor};\n border-width: ${({ theme, type, variant }) => theme.kitt.tag[type][variant].borderWidth}px;\n border-color: ${({ theme, type, variant }) => theme.kitt.tag[type][variant].borderColor};\n padding: ${({ theme }) => theme.kitt.tag.padding};\n border-radius: ${({ theme }) => theme.kitt.tag.borderRadius}px;\n align-self: flex-start;\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 <Container type={type} variant={variant}>\n <Typography.Text base=\"body-xsmall\" color={getLabelColor(type, variant)}>\n {label}\n </Typography.Text>\n </Container>\n );\n}\n","import type { ReactElement } from 'react';\nimport { Typography } from '../typography/Typography';\n\n// This is not yet implemented\nexport function TimePicker(): ReactElement {\n return <Typography.Text base=\"body\">TimePicker is not implemented for the web</Typography.Text>;\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';\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 { useBreakpointValue } from 'native-base';\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 { 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, isTypographyHeader } from './Typography';\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 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\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 { styled as styledLinaria } from '@linaria/react';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { TextProps } from 'react-native';\nimport type { Except } from 'type-fest';\nimport { StyleWebWrapper } from '../utils/StyleWebWrapper';\nimport type { TypographyPropsWithoutRole } from './Typography';\nimport { Typography } from './Typography';\n\ninterface TypographyLinkWebWrapperProps {\n $hasNoUnderline?: boolean;\n}\n\n// overrides :global(a) in Link styles.module.css\nconst TypographyLinkWebWrapper = styledLinaria.span<TypographyLinkWebWrapperProps>`\n & > * {\n text-decoration: ${({ $hasNoUnderline }) => ($hasNoUnderline ? 'none' : 'underline')}\n }\n\n & > *:hover,\n & > *:active,\n .kitt-hover & > * {\n text-decoration: ${({ $hasNoUnderline }) => ($hasNoUnderline ? 'underline' : 'none')}\n }\n`;\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 <StyleWebWrapper as={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 </StyleWebWrapper>\n );\n}\n","// eslint-disable-next-line no-restricted-imports\nimport type { FlattenSimpleInterpolation } from 'styled-components';\nimport type { MatchWindowSizeOptions } from './useMatchWindowSize';\nimport { matchWindowSize } from './useMatchWindowSize';\n\nexport interface WindowSizeHelper {\n /**\n * @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead\n *\n * Prefer using if or map variants, at it should be more web friendly\n * */\n matchWindowSize: (options: MatchWindowSizeOptions) => boolean;\n\n /**\n * @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead\n *\n * @example\n * ```typescript\n * const Container = styled.View`\n * ${({ theme }) =>\n * theme.responsive.ifWindowSizeMatches(\n * { minWidth: KittBreakpoints.SMALL },\n * 'padding: 5px 0 10px;'\n * )\n * )};\n * `;\n * ```\n */\n ifWindowSizeMatches: <T extends string | FlattenSimpleInterpolation | null>(\n options: MatchWindowSizeOptions,\n valueIfTrue: T,\n valueIfFalse?: T,\n ) => T | undefined;\n\n /**\n *\n * @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead\n *\n * @example\n * ```typescript\n * const Container = styled.View`\n * ${({ theme }) =>\n * theme.responsive.mapWindowWidth(\n * [KittBreakpoints.BASE, 'padding: 5px 0 10px;'],\n * [KittBreakpoints.SMALL, 'padding: 10px 0;'],\n * )\n * )};\n * `;\n * ```\n */\n mapWindowWidth: <V extends string>(...widthList: [number, V][]) => V | null;\n}\n\nexport interface WindowDimensions {\n width?: number;\n height?: number;\n}\n\n/** @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead */\nexport function createWindowSizeHelper(dimensions: WindowDimensions): WindowSizeHelper {\n return {\n matchWindowSize: (options) => matchWindowSize(dimensions, options),\n\n ifWindowSizeMatches: (options, valueIfTrue, valueIfFalse) =>\n matchWindowSize(dimensions, options) ? valueIfTrue : valueIfFalse,\n\n mapWindowWidth: <V extends string>(...widthList: [number, V][]): V | null => {\n if (__DEV__) {\n widthList.slice(1).forEach(([minWidth], index) => {\n const previousMinWidth = widthList[index][0];\n if (previousMinWidth > minWidth) {\n throw new Error(\n `mapWindowWidth: sort your values to be mobile first. ${minWidth} is < ${previousMinWidth}, so ${minWidth} should be before ${previousMinWidth}.`,\n );\n }\n });\n }\n const found = widthList.find(([minWidth, value]) => matchWindowSize(dimensions, { minWidth: Number(minWidth) }));\n if (!found) return null;\n return found[1];\n },\n };\n}\n","import { useMemo } from 'react';\nimport type { Theme } from './themes/default';\nimport { theme as kittTheme } from './themes/default';\nimport type { WindowSizeHelper } from './utils/windowSize/createWindowSizeHelper';\nimport { createWindowSizeHelper } from './utils/windowSize/createWindowSizeHelper';\nimport { useWindowSize } from './utils/windowSize/useWindowSize';\n\nexport interface KittTheme {\n kitt: Theme;\n /** @deprecated responsive is not SSR friendly and will be remove soon. Please use native-base breakpoints instead. */\n responsive: WindowSizeHelper;\n}\n\nexport function useKittTheme(): KittTheme {\n const dimensions = useWindowSize();\n return useMemo(() => {\n return { kitt: kittTheme, responsive: createWindowSizeHelper(dimensions) };\n }, [dimensions]);\n}\n","import { makeDecorator } from '@storybook/addons';\nimport type { ReactElement, ReactNode } from 'react';\nimport { ThemeProvider } from 'styled-components/native';\nimport type { AppTheme, KittNativeBaseProviderProps } from '../../native-base/KittNativeBaseProvider';\nimport { KittNativeBaseProvider } from '../../native-base/KittNativeBaseProvider';\nimport type { KittTheme } from '../../useKittTheme';\nimport { useKittTheme } from '../../useKittTheme';\n\ndeclare module 'styled-components' {\n export interface DefaultTheme extends KittTheme {}\n}\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 <ThemeProvider theme={theme}>\n <KittNativeBaseProvider theme={theme} isSSR={isSSR} appTheme={appTheme}>\n {children}\n </KittNativeBaseProvider>\n </ThemeProvider>\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 { ReactElement, ReactNode } from 'react';\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: 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","import { useBreakpointValue } from 'native-base';\nimport { KittBreakpointNameEnum } from '../../KittBreakpoints';\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"],"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","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","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","input","selection","placeholder","icon","rightContainer","states","inputField","containerPaddingTop","containerPaddingBottom","feedbackPaddingTop","labelContainerPaddingBottom","labelFeedbackMarginLeft","inputTag","labelColor","radio","unchecked","innerSize","innerBackgroundColor","radioButtonGroup","textArea","forms","fullscreenModal","sharedHorizontalPadding","verticalPadding","iconButton","listItem","innerMargin","pageLoader","strokeWidth","fill","delay","circleBackgroundFillDuration","filledCircleFillDuration","groupFilledCircleRotationDuration","filledCircleRotationDuration","fillEasingFunction","picker","ios","_objectSpread","landscape","android","shadows","cards","low","highBase","highMedium","highLarge","navigation","left","right","panel","skeleton","flareColor","animationDuration","shape","bar","circle","square","tag","outline","warn","tooltip","horizontalPadding","floatingPadding","out","arrow","breakpoints","values","wide","min","smallBreakpoint","mediumBreakpoint","largeBreakpoint","wideBreakpoint","max","theme","palettes","KittThemeContext","createContext","kitt","kittTheme","useTheme","useContext","getStateKey","isHovered","isPressed","isFocused","ActionCardContentWrapper","_ref","variant","children","state","sharedTransform","transform","_jsx","_ios","style","_android","_web","ActionCardDisabled","borderStyle","ActionCard","_ref$variant","testID","ActionCardPressable","forwardRef","_ref2","ref","_ref2$variant","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","getCurrentBackgroundColorForNativeBaseTheme","type","isDisabled","baseKey","getCurrentScale","hoverScaleValue","pressedScaleValue","AnimatedContainer","isStretch","_theme$kitt$button","_theme$kitt$button$tr","responsiveHoverScaleValue","useBreakpointValue","currentScale","currentBackgroundColor","transitionProperty","transitionDuration","transitionTimingFunction","backfaceVisibility","alignSelf","KittBreakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","KittBreakpointsMax","KittBreakpointNameEnum","IsHeaderTypographyContext","TypographyColorContext","useTypographyColor","TypographyDefaultColorContext","useTypographyDefaultColor","getTypographyTypeConfigKeyFromTypeName","isTypeHeader","startsWith","isTypographyHeader","isHeaderTypographyInContext","Error","createNativeBaseFontSize","typeWithMediumForced","fontSizeForNativeBase","typeName","value","getNBThemeColorFromColorProps","colorName","Typography","_type$base","legacyBase","legacySmall","legacyMedium","legacyLarge","legacyWide","_ref$type","otherProps","_objectWithoutProperties","_excluded","defaultColor","hasTypographyAncestor","baseOrDefaultToBody","isHeader","nonNullableVariant","entries","_slicedToArray","key","currentColor","text","NBText","textDecorationColor","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","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","__DEV__","includes","deprecatedProp","withTheme","WrappedComponent","StyledSpinningIconContainer","styled","name","class","propsAsIs","SpinningIcon","LoaderIcon","ArcIcon","matchWindowSize","maxHeight","hasWidthMatched","hasHeightMatched","useMatchWindowSize","options","_useWindowDimensions","useWindowDimensions","getCurrentStretchValue","isMedium","ActionsItem","as","isCurrentStretch","_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","Actions","currentAlignItems","currentDirection","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","OverlayPressable","withConfig","componentId","StyleSheet","absoluteFillObject","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","Body","Header","Footer","backgroundStyles","getCurrentTextColor","isSelected","getBorderRadius","defaultRadius","$variant","_theme$kitt$choices$i","css","ChoiceItemView","_ref4","_ref5","$isHovered","$isPressed","$isDisabled","$isSelected","_theme$kitt$choices$i2","defaultBackground","_ref6","$size","_theme$kitt$choices$i3","responsive","ifWindowSizeMatches","_ref7","_theme$kitt$choices$i4","ChoiceItem","_ref8","_ref8$type","onChange","onBlur","onFocus","handleChange","accessibilityState","_ref9","ChoiceItemContainer","$isLast","$direction","_theme$kitt$choices$s","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","marginBottom","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","_excluded3","Mail","emailAddress","_excluded4","defaultOpenLinkBehavior","ExternalLink","_ref$openLinkBehavior","openLinkBehavior","target","rel","getBackgroundColor","isChecked","getBorderColor","Checkbox","_ref$hitSlop","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","_exp","_theme$kitt$forms$inp","InputTextContainer","vars","InputText","internalForceState","_ref$disabled","_ref$autoCorrect","autoCorrect","_ref$textContentType","textContentType","_ref$autoComplete","autoComplete","_ref$keyboardType","keyboardType","multiline","onSubmitEditing","Input","py","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","InputEmail","autoCapitalize","getColorFromState","InputFeedback","InputField","label","labelFeedback","feedback","getIconColor","InputIcon","InputPressable","InputPassword","isPasswordDefaultVisible","isVisible","setIsVisible","secureTextEntry","EyeOffIcon","EyeIcon","isPhoneNumberValid","number","isValidNumber","phoneNumberLength","InputPhone","_ref$phoneNumberLengt","currentReturnKeyType","event","parseNumber","phone","finalPhoneNumber","eventWithoutCountryCode","countryCode","getCountryCallingCode","country","originalNativeEventText","getTypographyColor","InputTagContainer","IconContainer","InputTag","typographyColor","Label","htmlFor","InnerCircle","OuterCircle","Radio","focusable","getCurrentBackgroundColor","getCurrentBorderColor","isFirst","isLast","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","context","ContentView","BabelPluginStyledComponentsReactNative","ListItemContent","SideContainerView","side","ListItemSideContainer","_ref3$side","SideContentView","ListItemSideContent","_ref5$align","ContainerView","withPadding","borders","ListItem","Wrapper","Fragment","wrapperProps","containerProps","SideContent","SideContainer","MapMarkerSimple","_ref$width","_ref$height","sx","useSx","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","BodyView","ModalBody","FooterView","ModalFooter","HeaderView","LeftIconView","RightIconView","TitleView","isIconLeft","ModalHeader","ModalView","Modal","NativeModal","animationType","supportedOrientations","onShow","onRequestClose","createKittSpaces","sizes","positive","negative","overridenNativeBaseSizeandSpaceScale","fromEntries","createKittNativeBaseCustomTheme","appTheme","spaces","appBreakpoints","extendedTheme","extendTheme","innerCircle","app","radii","lg","Number","MAX_SAFE_INTEGER","md","sm","xl","xs","borderWidths","defaultSize","fontSizes","lineHeights","fontWeights","fonts","shadowColor","shadowOffset","shadowOpacity","shadowRadius","components","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","_exp3","$circlePerimeter","_exp5","_exp6","_exp8","_exp9","_exp10","_animation$fillEasing","x1","y1","x2","y2","_exp11","_exp12","_exp13","_animation$fillEasing2","fillAnimation","rotationAnimation","join","PageLoaderContainer","PageLoader","_theme$kitt$pageLoade","center","circlePerimeter","PI","cx","cy","Picker","SegmentedProgressBar","_ref$currentStep","currentStep","stepsCount","_ref$colorVariant","colorVariant","withCurrentInProgress","fillColor","steps","_toConsumableArray","Array","from","stepNumber","isSegmentCurrentInProgress","Stripes","_exp2","$isLoading","StyledSkeleton","SkeletonContent","Skeleton","_ref$isLoading","setWidth","onLayout","Bar","Circle","Square","getStaticMapImageUrl","mapWidth","mapHeight","is2x","centerPart","lat","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","Loader","Marker","Flex","shouldForwardProp","prop","defaultValidatorFn","_ref2$padding","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","className","StoryDecorator","storyFn","StoryGridRow","_ref$breakpoint","breakpoint","_defineProperty","StoryGridCol","_ref10","titleColor","_ref10$platform","StoryGrid","Row","Col","Container","getLabelColor","Tag","_ref6$type","_ref6$variant","TimePicker","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","zIndex","isCursorOnTooltip","setIsCursorOnTooltip","arrowRef","currentFloatingPadding","_useFloating","useFloating","placement","strategy","whileElementsMounted","autoUpdate","middleware","offset","autoPlacement","allowedPlacements","shift","crossAxis","x","y","reference","floating","update","refs","middlewareData","tooltipY","tooltipX","centerOffset","shouldRenderArrow","hasArrowEnoughSpace","sharedArrowProps","useOnClickOutside","handlePressOutside","handleDisplayTooltip","handleMouseEnter","handleMouseLeave","themePart","transformOrigin","onHoverIn","handleHideTooltip","accessibilityHidden","pointerEvents","visibility","onTouchStart","onTouchEnd","onMouseEnter","onMouseLeave","getTypographyTypeConfig","calcSizesFromType","TypographyEmoji","_ref3$type","StyleWebWrapper","$hasNoUnderline","TypographyLinkWebWrapper","styledLinaria","TypographyLink","noUnderline","underline","dataSet","cursor","createWindowSizeHelper","dimensions","mapWindowWidth","_len","widthList","_key","previousMinWidth","found","find","useKittTheme","useWindowSize","KittThemeProvider","ThemeProvider","KittThemeDecorator","makeDecorator","parameterName","wrapper","_parameters$isSSR","_ref2$options","_ref2$parameters","parameters","MatchWindowSize","matchWindowSizeOptions","match","useCurrentBreakpointName"],"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/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/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/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/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/utils/withTheme.tsx","../src/Icon/SpinningIcon.web.tsx","../src/LoaderIcon/LoaderIcon.tsx","../src/utils/windowSize/useMatchWindowSize.ts","../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/hooks/useNativeAnimation.web.tsx","../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/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/InputText/InputTextContainer.web.tsx","../src/forms/InputText/InputText.tsx","../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/forms/InputEmail/InputEmail.tsx","../src/forms/InputFeedback/InputFeedback.tsx","../src/forms/InputField/InputField.tsx","../src/forms/InputIcon/InputIcon.tsx","../src/forms/InputPressable/InputPressable.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/Modal/Body.tsx","../src/Modal/Footer.tsx","../src/Modal/OnCloseContext.ts","../src/Modal/Header.tsx","../src/Modal/Modal.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/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/utils/StyleWebWrapper.tsx","../src/typography/TypographyLink.tsx","../src/utils/windowSize/createWindowSizeHelper.ts","../src/useKittTheme.tsx","../src/utils/storybook/KittThemeDecorator.tsx","../src/utils/windowSize/MatchWindowSize.tsx","../src/utils/windowSize/useCurrentBreakpointName.ts"],"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\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 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 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 { 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 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: 'border-color',\n duration: '200ms',\n timingFunction: 'ease-in-out',\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","import { 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';\n\nexport const forms = {\n datePicker,\n input,\n radio,\n inputField,\n textArea,\n checkbox,\n inputTag,\n radioButtonGroup,\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 padding: string;\n borderColor: string;\n borderWidth: number;\n innerMargin: number;\n}\n\nexport const listItem: ListItemTheme = {\n padding: '12px 16px',\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 pageLoader: PageLoaderTheme = {\n size: 60,\n strokeWidth: 3,\n colors: {\n base: colors.separator,\n fill: colors.primary,\n },\n animation: {\n delay: 500,\n circleBackgroundFillDuration: 1000,\n filledCircleFillDuration: 1800,\n groupFilledCircleRotationDuration: 1800,\n filledCircleRotationDuration: 2160,\n fillEasingFunction: [0.39, 0.575, 0.565, 1],\n },\n};\n","import type { TextStyle } from 'react-native';\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 padding: string;\n default: {\n backgroundColor: string;\n };\n selected: {\n backgroundColor: string;\n color: string;\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 android: {\n padding: '12px 24px',\n default: {\n backgroundColor: colors.transparent,\n },\n selected: {\n backgroundColor: colors.primary,\n color: typography.colors.white,\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 skeleton: SkeletonTheme = {\n backgroundColor: lateOceanColorPalette.black100,\n flareColor: lateOceanColorPalette.black200,\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 padding: string;\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 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 { 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 { 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 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};\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 { ActionCardBorderVariantType, ActionCardVariantType } from 'ActionCard/types';\nimport type { ActionCardTheme } from 'themes/late-ocean/actionCard';\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","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 { useBreakpointValue } from 'native-base';\nimport type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\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\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 === 'base' || breakpointName === 'small' ? 'baseAndSmall' : '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 type { ComponentType, ForwardRefExoticComponent, PropsWithoutRef, RefAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport type { Except } from 'type-fest';\nimport { useTheme } from '../KittThemeContext';\n\n// type $Without<T, K extends keyof any> = T extends any ? Pick<T, Exclude<keyof T, K>> : never;\n// type $DeepPartial<T> = { [P in keyof T]?: $DeepPartial<T[P]> };\n\n// export function withTheme<Props extends { theme: DefaultTheme }, C>(\n// WrappedComponent: ComponentType<Props> & C,\n// ): ComponentType<SetOptional<Props, 'theme'>> & hoistNonReactStatics.NonReactStatics<typeof WrappedComponent> {\n// return function ThemedComponent(props) {\n// const theme = useTheme();\n\n// return (<WrappedComponent theme={theme} {...(props as any)} />) as any;\n// };\n// }\n\nexport function withTheme<Props extends { theme: DefaultTheme }, T>(\n WrappedComponent: ComponentType<Props>,\n): ForwardRefExoticComponent<PropsWithoutRef<Except<Props, 'theme'>> & RefAttributes<T>> {\n // eslint-disable-next-line prefer-arrow-callback\n return forwardRef<T, Except<Props, 'theme'>>(function ThemedComponent(props, ref) {\n const theme = useTheme();\n\n return <WrappedComponent ref={ref} theme={theme} {...(props as any)} />;\n });\n}\n","import { styled } from '@linaria/react';\nimport type { ReactElement } from 'react';\nimport { cloneElement } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { withTheme } from '../utils/withTheme';\nimport type { SpinningIconProps } from './SpinningIcon';\n\ninterface StyledSpinningIconContainerProps {\n theme: DefaultTheme;\n}\n\nconst StyledSpinningIconContainer = withTheme(styled.div<StyledSpinningIconContainerProps>`\n & {\n display: inline-flex;\n }\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 <StyledSpinningIconContainer>{clonedIcon}</StyledSpinningIconContainer>;\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 { useWindowDimensions } from 'react-native';\nimport type { WindowDimensions } from './createWindowSizeHelper';\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 { ComponentProps, ElementType, ReactElement, VoidFunctionComponent } from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport type { ButtonProps } from '../Button/Button';\nimport { KittBreakpoints } from '../KittBreakpoints';\nimport { LoaderIcon } from '../LoaderIcon/LoaderIcon';\nimport { View } from '../native-base/primitives';\nimport { useMatchWindowSize } from '../utils/windowSize/useMatchWindowSize';\n\nfunction getCurrentStretchValue(isStretch: boolean | undefined, isMedium: boolean): boolean | undefined {\n // Stretch will follow the value passed from the component occurence if defined\n if (isStretch) return isStretch;\n\n return !isMedium ? true : undefined;\n}\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,\n ...props\n}: ActionsItemProps<C> & ActionsItemSendableComponentProps<C>): ReactElement {\n const isMedium = useMatchWindowSize({\n minWidth: KittBreakpoints.MEDIUM,\n });\n\n const isCurrentStretch = getCurrentStretchValue(stretch, isMedium);\n\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={isCurrentStretch}\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 { 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\nexport interface ActionsProps extends Except<StackProps, 'space'> {\n layout?: ActionsLayout;\n}\n\nexport function Actions({ children, layout, ...props }: ActionsProps): ReactElement {\n const currentAlignItems = getCurrentLayout(layout);\n const currentDirection = getCurrentDirection(layout);\n\n return (\n <Stack alignItems={currentAlignItems} direction={currentDirection} flexGrow={1} {...props} space=\"kitt.3\">\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, StyleSheet } from 'react-native';\nimport styled from 'styled-components/native';\n\ninterface OverlayProps extends Pick<PressableProps, 'onPress'> {}\n\n// Don't use styled.Pressable here - babel-plugin-styled-components-react-native-web only supports tagged templates\nconst OverlayPressable = styled(Pressable)(({ theme }) => ({\n ...StyleSheet.absoluteFillObject,\n backgroundColor: theme.kitt.colors.overlay.dark,\n}));\n\nexport function Overlay({ onPress }: OverlayProps): ReactElement {\n return <OverlayPressable accessibilityRole=\"none\" onPress={onPress} />;\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 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","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 { ReactElement, ReactNode } from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { Platform, StyleSheet, View } from 'react-native';\nimport Animated from 'react-native-reanimated';\nimport styled, { css } from 'styled-components/native';\nimport { KittBreakpoints } from '../KittBreakpoints';\nimport { Pressable } from '../native-base/primitives';\nimport { Typography } from '../typography/Typography';\nimport type { TypographyColor } from '../typography/Typography';\nimport type { BaseChoicesProps } from './Choices';\nimport { useNativeAnimation } from './hooks/useNativeAnimation';\n\ninterface GetCurrentTextColorParams {\n isDisabled?: boolean;\n isSelected?: boolean;\n isPressed?: boolean;\n isHovered?: boolean;\n}\n\nfunction 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\ntype ChoiceItemVariant = 'rounded';\ntype ChoiceItemSize = BaseChoicesProps<null>['size'];\n\nfunction getBorderRadius(defaultRadius: number, variant?: ChoiceItemVariant): number {\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 const arbitraryHighHeightValue = 800;\n if (variant === 'rounded') return arbitraryHighHeightValue;\n\n return defaultRadius;\n}\n\ninterface DisabledBorderProps {\n $variant?: ChoiceItemVariant;\n}\n\nconst DisabledBorder = styled(View)<DisabledBorderProps>`\n border-radius: ${({ theme, $variant }) => getBorderRadius(theme.kitt.choices.item.borderRadius, $variant)}px;\n ${({ theme }) => {\n const { width, color } = theme.kitt.choices.item.disabled.border;\n\n return css`\n border: ${width}px solid ${color};\n `;\n }};\n`;\n\ninterface ChoiceItemPressableProps {\n $variant?: ChoiceItemVariant;\n $size?: ChoiceItemSize;\n $isHovered?: boolean;\n $isPressed?: boolean;\n $isDisabled?: boolean;\n $isSelected?: boolean;\n}\n\nconst ChoiceItemView = styled(Platform.OS === 'web' ? View : Animated.View)<ChoiceItemPressableProps>`\n position: relative;\n border-radius: ${({ theme, $variant }) => getBorderRadius(theme.kitt.choices.item.borderRadius, $variant)}px;\n background-color: ${({ theme, $isHovered, $isPressed, $isDisabled, $isSelected }) => {\n const {\n hoverWhenSelected,\n hover,\n disabled,\n selected,\n pressed,\n default: defaultBackground,\n } = theme.kitt.choices.item.backgroundColor;\n\n if ($isDisabled) return disabled;\n\n if ($isSelected && $isHovered) return hoverWhenSelected;\n\n if ($isPressed) return pressed;\n\n if ($isHovered) return hover;\n\n if ($isSelected) return selected;\n\n return defaultBackground;\n }};\n\n ${({ theme, $size }) => {\n const { base, small } = theme.kitt.choices.item.padding;\n\n if ($size === 'small') {\n return css`\n padding: ${base / 2}px ${base}px;\n `;\n }\n\n return theme.responsive.ifWindowSizeMatches(\n {\n minWidth: KittBreakpoints.SMALL,\n },\n css`\n padding: ${small}px;\n `,\n css`\n padding: ${base}px;\n `,\n );\n }};\n\n ${({ theme }) => {\n if (Platform.OS !== 'web') return undefined;\n\n const { property, duration, timingFunction } = theme.kitt.choices.item.transition;\n\n return css`\n transition: ${property} ${duration}ms ${timingFunction};\n `;\n }}\n`;\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 <ChoiceItemView\n style={Platform.OS !== 'web' ? [backgroundStyles] : undefined}\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 ? <DisabledBorder $variant={variant} style={StyleSheet.absoluteFillObject} /> : null}\n </ChoiceItemView>\n )}\n </Pressable>\n );\n}\n","import { View } from 'react-native';\nimport styled, { css } from 'styled-components/native';\nimport type { ChoicesDirection } from './Choices';\n\ninterface ChoiceItemContainerProps {\n $isLast?: boolean;\n $direction: ChoicesDirection;\n}\n\nexport const ChoiceItemContainer = styled(View)<ChoiceItemContainerProps>`\n ${({ theme, $isLast, $direction }) => {\n const { row, column } = theme.kitt.choices.spacing;\n\n if ($direction === 'row') {\n return css`\n margin-right: ${$isLast ? 0 : row}px;\n `;\n }\n\n return css`\n margin-bottom: ${$isLast ? 0 : column}px;\n `;\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","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 { styled } from '@linaria/react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { withTheme } from '../../utils/withTheme';\nimport type { InputTextContainerProps } from './InputTextContainer';\n\ninterface WebInputTextContainerProps extends InputTextContainerProps {\n theme: DefaultTheme;\n}\n\nexport const InputTextContainer = withTheme(styled.div<WebInputTextContainerProps>`\n display: flex;\n position: relative;\n\n & > *::-ms-clear,\n & > *::-ms-reveal {\n display: none;\n }\n\n & > * {\n transition: ${({ theme }) => {\n const { property, duration, timingFunction } = theme.kitt.forms.input.transition;\n return `${property} ${duration} ${timingFunction}`;\n }};\n }\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 $isDisabled={disabled}>\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, 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 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 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 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 value,\n testID,\n id,\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 {...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 {...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 {...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 } 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 type { ReactElement } from 'react';\nimport type { InputFormState } from 'forms/utils';\nimport { useTheme } from '../../KittThemeContext';\nimport type { TypographyIconProps } from '../../typography/TypographyIcon';\nimport { TypographyIcon } from '../../typography/TypographyIcon';\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 { 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 { View } from 'react-native';\nimport styled from 'styled-components/native';\nimport { useTheme } from '../../KittThemeContext';\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\ninterface InputTagContainerProps {\n type?: InputTagType;\n}\n\nconst InputTagContainer = styled(View)<InputTagContainerProps>`\n align-items: center;\n justify-content: center;\n flex-direction: row;\n align-self: flex-start;\n overflow: hidden;\n padding-horizontal: ${({ theme }) => theme.kitt.spacing * 2}px;\n\n background-color: ${({ theme, type }) => {\n if (type === 'success') {\n return theme.kitt.forms.inputTag.success.backgroundColor;\n }\n if (type === 'danger') {\n return theme.kitt.forms.inputTag.danger.backgroundColor;\n }\n\n return theme.kitt.forms.inputTag.default.backgroundColor;\n }};\n border-radius: ${({ theme }) => theme.kitt.forms.inputTag.borderRadius}px;\n`;\n\nconst IconContainer = styled(View)`\n margin-right: ${({ theme }) => theme.kitt.spacing}px;\n`;\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 <InputTagContainer type={type}>\n {icon && (\n <IconContainer>\n <TypographyIcon icon={icon} size={theme.kitt.forms.inputTag.iconSize} color={typographyColor} />\n </IconContainer>\n )}\n <Typography.Text base=\"body-small\" color={typographyColor}>\n {children}\n </Typography.Text>\n </InputTagContainer>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Platform } from 'react-native';\nimport { Typography } from '../../typography/Typography';\n\nexport interface LabelProps {\n htmlFor: string;\n children: NonNullable<ReactNode>;\n}\n\nexport function Label({ htmlFor, children }: LabelProps): ReactElement {\n return (\n <Typography.Text base=\"body\">\n {Platform.OS === 'web' ? <label htmlFor={htmlFor}>{children}</label> : children}\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 { 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?: 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 /**\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={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 { 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?: boolean;\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 { useBreakpointValue } from 'native-base';\nimport type { ReactElement } from 'react';\nimport { useTheme } from '../KittThemeContext';\nimport { View } from '../native-base/primitives';\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 styled from 'styled-components/native';\n\nexport interface ListItemContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n}\n\nconst ContentView = styled.View`\n flex: 1 0 0%;\n align-self: center;\n`;\n\nexport function ListItemContent({ children, ...rest }: ListItemContentProps): ReactElement {\n return <ContentView {...rest}>{children}</ContentView>;\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport type { ViewProps, ViewStyle } from 'react-native';\nimport styled from 'styled-components/native';\n\nexport interface ListItemSideContainerProps extends ViewProps {\n children: NonNullable<ReactNode>;\n side?: 'left' | 'right';\n}\n\nconst SideContainerView = styled.View<ListItemSideContainerProps>`\n flex-direction: row;\n margin-left: ${({ theme, side }) => (side === 'right' ? `${theme.kitt.listItem.innerMargin}px` : 0)};\n margin-right: ${({ theme, side }) => (side === 'left' ? `${theme.kitt.listItem.innerMargin}px` : 0)};\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 <SideContainerView side={side} {...rest}>\n {children}\n </SideContainerView>\n );\n}\n\nexport interface ListItemSideContentProps extends ViewProps {\n children: NonNullable<ReactNode>;\n align?: ViewStyle['alignSelf'];\n}\n\nconst SideContentView = styled.View<ListItemSideContentProps>`\n align-self: ${({ align }) => align};\n`;\n\nexport function ListItemSideContent({ children, align = 'auto', ...rest }: ListItemSideContentProps): ReactElement {\n return (\n <SideContentView align={align} {...rest}>\n {children}\n </SideContentView>\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 styled, { css } from 'styled-components/native';\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\ninterface ContainerViewProps extends Pick<ListItemProps, 'borders' | 'withPadding'> {}\n\nconst ContainerView = styled.View<ContainerViewProps>`\n flex-direction: row;\n padding: ${({ withPadding, theme }) => (withPadding ? theme.kitt.listItem.padding : 0)};\n ${({ theme, borders }) => {\n const { borderWidth } = theme.kitt.listItem;\n\n if (borders === 'top') {\n return `border-top-width: ${borderWidth}px`;\n }\n\n if (borders === 'bottom') {\n return `border-bottom-width: ${borderWidth}px`;\n }\n\n if (borders === 'both') {\n return css`\n border-top-width: ${borderWidth}px;\n border-bottom-width: ${borderWidth}px;\n `;\n }\n\n return 'border: none';\n }};\n border-color: ${({ theme }) => theme.kitt.listItem.borderColor};\n background-color: ${({ theme }) => theme.kitt.colors.uiBackgroundLight};\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 <ContainerView withPadding={withPadding} borders={borders} {...containerProps}>\n {left ? <ListItemSideContainer side=\"left\">{left}</ListItemSideContainer> : null}\n\n <ListItemContent>{children}</ListItemContent>\n\n {right ? <ListItemSideContainer side=\"right\">{right}</ListItemSideContainer> : null}\n </ContainerView>\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 { ReactElement, ReactNode } from 'react';\nimport { ScrollView } from 'react-native';\nimport styled from 'styled-components/native';\n\nconst BodyView = styled.View`\n padding: ${({ theme }) => theme.kitt.spacing * 6}px ${({ theme }) => theme.kitt.spacing * 4}px;\n`;\n\nexport interface BodyProps {\n children: NonNullable<ReactNode>;\n}\n\nexport function ModalBody({ children }: BodyProps): ReactElement {\n return (\n <ScrollView>\n <BodyView>{children}</BodyView>\n </ScrollView>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport styled from 'styled-components/native';\n\nexport interface FooterProps {\n children: NonNullable<ReactNode>;\n}\n\nconst FooterView = styled.View`\n flex: 0 0 auto;\n padding: ${({ theme }) => theme.kitt.spacing * 4}px;\n border-top-width: 1px;\n border-top-color: ${({ theme }) => theme.kitt.colors.separator};\n`;\n\nexport function ModalFooter({ children }: FooterProps): ReactElement {\n return <FooterView>{children}</FooterView>;\n}\n","import { createContext } from 'react';\n\nexport const OnCloseContext = createContext<() => void>(() => {});\n","import { XIcon } from '@ornikar/kitt-icons';\nimport type { ReactElement, ReactNode } from 'react';\nimport { useContext } from 'react';\nimport styled from 'styled-components/native';\nimport { IconButton } from '../IconButton/IconButton';\nimport { OnCloseContext } from './OnCloseContext';\n\nexport interface HeaderProps {\n children: NonNullable<ReactNode>;\n left?: ReactNode;\n right?: ReactNode;\n}\n\nconst HeaderView = styled.View`\n position: relative;\n padding: ${({ theme }) => theme.kitt.spacing * 2}px;\n display: flex;\n flex: 0 0 auto;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n border-bottom-width: 1px;\n border-bottom-color: ${({ theme }) => theme.kitt.colors.separator};\n min-height: 57px;\n`;\n\nconst LeftIconView = styled.View`\n align-self: flex-start;\n margin-right: ${({ theme }) => theme.kitt.spacing * 2}px;\n`;\n\nconst RightIconView = styled.View`\n align-self: flex-start;\n margin-left: ${({ theme }) => theme.kitt.spacing * 2}px;\n`;\n\ninterface TitleViewProps {\n isIconLeft?: boolean;\n}\n\nconst TitleView = styled.View<TitleViewProps>`\n padding-left: ${({ theme, isIconLeft }) => (isIconLeft ? 0 : theme.kitt.spacing * 2)}px;\n flex-shrink: 1;\n`;\n\nexport function ModalHeader({ left, right, children }: HeaderProps): ReactElement {\n const onClose = useContext(OnCloseContext);\n\n const isIconLeft = !!left;\n\n return (\n <HeaderView>\n {isIconLeft && <LeftIconView>{left}</LeftIconView>}\n\n <TitleView isIconLeft={isIconLeft}>{children}</TitleView>\n\n {right !== undefined ? (\n right\n ) : (\n <RightIconView>\n <IconButton icon={<XIcon />} onPress={onClose} />\n </RightIconView>\n )}\n </HeaderView>\n );\n}\n","import type { ReactElement, ReactNode } from 'react';\nimport { Modal as NativeModal } from 'react-native';\nimport styled from 'styled-components/native';\nimport { Overlay } from '../Overlay/Overlay';\nimport { ModalBody } from './Body';\nimport { ModalFooter } from './Footer';\nimport { ModalHeader } from './Header';\nimport { OnCloseContext } from './OnCloseContext';\n\nexport interface ModalProps {\n visible: boolean;\n children: ReactNode;\n onClose: () => void;\n onEntered?: () => void;\n onExited?: () => void;\n}\n\nconst ModalView = styled.View`\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n display: flex;\n align-items: center;\n justify-content: center;\n padding: ${({ theme }) => theme.kitt.spacing * 20}px ${({ theme }) => theme.kitt.spacing * 4}px;\n`;\n\nconst ContentView = styled.View`\n position: relative;\n display: flex;\n flex-direction: column;\n max-height: 100%;\n max-width: 540px;\n height: auto;\n width: 100%;\n border-radius: ${({ theme }) => theme.kitt.card.borderRadius}px;\n background-color: ${({ theme }) => theme.kitt.colors.uiBackgroundLight};\n`;\n\n/**\n * @deprecated This component will be deleted in a later Kitt Universal version. Use CardModal instead\n */\nexport function Modal({ visible, children, onClose, onEntered, onExited }: ModalProps): ReactElement {\n return (\n <OnCloseContext.Provider value={onClose}>\n <NativeModal\n transparent\n animationType=\"fade\"\n supportedOrientations={['landscape', 'portrait']}\n visible={visible}\n onShow={onEntered}\n onDismiss={onExited}\n onRequestClose={onClose}\n >\n <ModalView>\n <Overlay onPress={onClose} />\n\n <ContentView>{children}</ContentView>\n </ModalView>\n </NativeModal>\n </OnCloseContext.Provider>\n );\n}\n\nModal.Header = ModalHeader;\nModal.Body = ModalBody;\nModal.Footer = ModalFooter;\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 = (spacing: number): 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] = size * spacing;\n sizes.negative[`-kitt.${size}` as KittNegativeSize] = -size * spacing;\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.spacing);\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 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 input: {\n states: theme.forms.input.states,\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 },\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 dialogModal: {\n borderRadius: theme.dialogModal.borderRadius,\n },\n forms: {\n input: {\n borderRadius: theme.forms.input.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 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 },\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 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 },\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 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 },\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 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 },\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 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 tooltip: {\n horizontalPadding: theme.tooltip.horizontalPadding,\n verticalPadding: theme.tooltip.verticalPadding,\n floatingPadding: theme.tooltip.floatingPadding,\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 },\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 { useBreakpointValue } from 'native-base';\nimport 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';\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: AnimationComponentType = useBreakpointValue({\n base: FullscreenModalAnimation,\n small: CardModalAnimation,\n });\n\n const CurrentContainerComponent: CurrentContainerComponentType = useBreakpointValue({\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 { useBreakpointValue } from 'native-base';\nimport 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 { NavigationModalBehaviour } from './NavigationModalBehaviour';\n\nexport interface NavigationModalProps extends FullscreenModalProps {}\n\nexport function NavigationModal({ body, backgroundColor, footer, header }: NavigationModalProps): ReactElement {\n const Component: typeof FullscreenModal | typeof CardModal = useBreakpointValue({\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 { styled } from '@linaria/react';\nimport type { ReactElement } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { useTheme } from '../KittThemeContext';\nimport { withTheme } from '../utils/withTheme';\n\ninterface PageLoaderContainerProps {\n theme: DefaultTheme;\n $circlePerimeter: number;\n}\n\nconst PageLoaderContainer = withTheme(styled.div<PageLoaderContainerProps>`\n @keyframes PageLoaderInit {\n 0% {\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter}px;\n }\n\n 100% {\n stroke-dashoffset: 0;\n }\n }\n\n /** Primary circle animation **/\n @keyframes PageLoaderOffset {\n 0% {\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter}px;\n }\n\n /** 20% of this radius and represent the min offset part of the animated circle */\n 100% {\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter * 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: ${({ theme }) => theme.kitt.pageLoader.size}px;\n height: ${({ theme }) => theme.kitt.pageLoader.size}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 & circle {\n stroke-width: ${({ theme }) => theme.kitt.pageLoader.strokeWidth}px;\n stroke-dasharray: ${({ $circlePerimeter }) => $circlePerimeter}px;\n stroke-dashoffset: ${({ $circlePerimeter }) => $circlePerimeter}px;\n stroke-linecap: round;\n }\n\n & g[data-large-loader='base'] circle {\n stroke: ${({ theme }) => theme.kitt.pageLoader.colors.base};\n animation: ${({ theme }) => {\n const { animation } = theme.kitt.pageLoader;\n const [x1, y1, x2, y2] = animation.fillEasingFunction;\n\n return `${animation.circleBackgroundFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2}) ${animation.delay}ms forwards`;\n }};\n animation-name: PageLoaderInit;\n }\n\n & g[data-large-loader='fill'] {\n transform-origin: center center;\n animation: ${({ theme }) => {\n const { animation } = theme.kitt.pageLoader;\n\n return `${animation.filledCircleFillDuration}ms linear ${animation.delay}ms infinite`;\n }};\n animation-name: PageLoaderRotation;\n }\n\n & g[data-large-loader='fill'] circle {\n stroke: ${({ theme }) => theme.kitt.pageLoader.colors.fill};\n animation: ${({ theme }) => {\n const { animation } = theme.kitt.pageLoader;\n\n const [x1, y1, x2, y2] = animation.fillEasingFunction;\n\n const fillAnimation = `${animation.filledCircleFillDuration}ms cubic-bezier(${x1}, ${y1}, ${x2}, ${y2}) ${animation.delay}ms infinite alternate`;\n const rotationAnimation = `${animation.filledCircleRotationDuration}ms linear ${animation.delay}ms infinite`;\n\n return [fillAnimation, rotationAnimation].join(',');\n }};\n animation-name: PageLoaderOffset, PageLoaderRotation;\n }\n`);\n\nexport function PageLoader(props: Record<string, never>): ReactElement {\n const theme = useTheme();\n const { 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 };\n\n return (\n <PageLoaderContainer $circlePerimeter={circlePerimeter}>\n <svg width={size} height={size}>\n <g data-large-loader=\"base\">\n <circle {...sharedProps} />\n </g>\n <g data-large-loader=\"fill\">\n <circle {...sharedProps} />\n </g>\n </svg>\n </PageLoaderContainer>\n );\n}\n","import type { ReactElement } from 'react';\nimport { Typography } from '../typography/Typography';\n\nexport function Picker(): ReactElement {\n return <Typography.Text base=\"body\">Picker is not implemented for the web</Typography.Text>;\n}\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 { styled } from '@linaria/react';\nimport type { ReactElement } from 'react';\nimport type { DefaultTheme } from 'styled-components/native';\nimport { withTheme } from '../utils/withTheme';\n\ninterface SkeletonBaseProps {\n $isLoading?: boolean;\n theme: DefaultTheme;\n}\n\nconst StyledSkeleton = withTheme(styled.div<SkeletonBaseProps>`\n background-color: ${({ theme }) => theme.kitt.skeleton.backgroundColor};\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: ${({ $isLoading, theme }) =>\n $isLoading\n ? `linear-gradient(\n -90deg,\n ${theme.kitt.skeleton.backgroundColor},\n ${theme.kitt.skeleton.flareColor} 50%,\n ${theme.kitt.skeleton.backgroundColor} 100%\n )`\n : 'none'};\n animation: ${({ $isLoading }) => ($isLoading ? '1s ease-in-out infinite' : 'none')};\n animation-name: flareTranslate;\n }\n`);\n\ninterface SkeletonProps {\n isLoading: boolean;\n}\n\nexport function SkeletonContent({ isLoading }: SkeletonProps): ReactElement {\n return <StyledSkeleton $isLoading={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 { ViewStyle } from 'react-native';\nimport styled from 'styled-components/native';\n\ninterface FlexProps {\n direction: ViewStyle['flexDirection'];\n padding?: number;\n}\n\nexport const Flex = styled.View.withConfig<FlexProps>({\n shouldForwardProp: (prop, defaultValidatorFn) => !['direction', 'padding'].includes(prop) && defaultValidatorFn(prop),\n})`\n display: flex;\n flex-direction: ${({ direction }) => direction};\n flex-wrap: wrap;\n padding: ${({ theme, padding = 0 }) => padding * theme.kitt.spacing}px;\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 {\n children: ReactNode;\n}\n\nfunction DemoSection({ children }: DemoSectionProps): ReactElement {\n return (\n <View marginBottom=\"kitt.16\">\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 styled from 'styled-components/native';\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\ninterface ContainerProps {\n type: TagType;\n variant: TagVariant;\n}\n\nconst Container = styled.View<ContainerProps>`\n background-color: ${({ theme, type, variant }) => theme.kitt.tag[type][variant].backgroundColor};\n border-width: ${({ theme, type, variant }) => theme.kitt.tag[type][variant].borderWidth}px;\n border-color: ${({ theme, type, variant }) => theme.kitt.tag[type][variant].borderColor};\n padding: ${({ theme }) => theme.kitt.tag.padding};\n border-radius: ${({ theme }) => theme.kitt.tag.borderRadius}px;\n align-self: flex-start;\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 <Container type={type} variant={variant}>\n <Typography.Text base=\"body-xsmall\" color={getLabelColor(type, variant)}>\n {label}\n </Typography.Text>\n </Container>\n );\n}\n","import type { ReactElement } from 'react';\nimport { Typography } from '../typography/Typography';\n\n// This is not yet implemented\nexport function TimePicker(): ReactElement {\n return <Typography.Text base=\"body\">TimePicker is not implemented for the web</Typography.Text>;\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';\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 { useBreakpointValue } from 'native-base';\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 { 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 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\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 { styled as styledLinaria } from '@linaria/react';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { TextProps } from 'react-native';\nimport type { Except } from 'type-fest';\nimport { StyleWebWrapper } from '../utils/StyleWebWrapper';\nimport type { TypographyPropsWithoutRole } from './Typography';\nimport { Typography } from './Typography';\n\ninterface TypographyLinkWebWrapperProps {\n $hasNoUnderline?: boolean;\n}\n\n// overrides :global(a) in Link styles.module.css\nconst TypographyLinkWebWrapper = styledLinaria.span<TypographyLinkWebWrapperProps>`\n & > * {\n text-decoration: ${({ $hasNoUnderline }) => ($hasNoUnderline ? 'none' : 'underline')}\n }\n\n & > *:hover,\n & > *:active,\n .kitt-hover & > * {\n text-decoration: ${({ $hasNoUnderline }) => ($hasNoUnderline ? 'underline' : 'none')}\n }\n`;\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 <StyleWebWrapper as={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 </StyleWebWrapper>\n );\n}\n","// eslint-disable-next-line no-restricted-imports\nimport type { FlattenSimpleInterpolation } from 'styled-components';\nimport type { MatchWindowSizeOptions } from './useMatchWindowSize';\nimport { matchWindowSize } from './useMatchWindowSize';\n\nexport interface WindowSizeHelper {\n /**\n * @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead\n *\n * Prefer using if or map variants, at it should be more web friendly\n * */\n matchWindowSize: (options: MatchWindowSizeOptions) => boolean;\n\n /**\n * @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead\n *\n * @example\n * ```typescript\n * const Container = styled.View`\n * ${({ theme }) =>\n * theme.responsive.ifWindowSizeMatches(\n * { minWidth: KittBreakpoints.SMALL },\n * 'padding: 5px 0 10px;'\n * )\n * )};\n * `;\n * ```\n */\n ifWindowSizeMatches: <T extends string | FlattenSimpleInterpolation | null>(\n options: MatchWindowSizeOptions,\n valueIfTrue: T,\n valueIfFalse?: T,\n ) => T | undefined;\n\n /**\n *\n * @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead\n *\n * @example\n * ```typescript\n * const Container = styled.View`\n * ${({ theme }) =>\n * theme.responsive.mapWindowWidth(\n * [KittBreakpoints.BASE, 'padding: 5px 0 10px;'],\n * [KittBreakpoints.SMALL, 'padding: 10px 0;'],\n * )\n * )};\n * `;\n * ```\n */\n mapWindowWidth: <V extends string>(...widthList: [number, V][]) => V | null;\n}\n\nexport interface WindowDimensions {\n width?: number;\n height?: number;\n}\n\n/** @deprecated use native-base responsive props or `useBreakpointValue` or `useMatchWindowSize` instead */\nexport function createWindowSizeHelper(dimensions: WindowDimensions): WindowSizeHelper {\n return {\n matchWindowSize: (options) => matchWindowSize(dimensions, options),\n\n ifWindowSizeMatches: (options, valueIfTrue, valueIfFalse) =>\n matchWindowSize(dimensions, options) ? valueIfTrue : valueIfFalse,\n\n mapWindowWidth: <V extends string>(...widthList: [number, V][]): V | null => {\n if (__DEV__) {\n widthList.slice(1).forEach(([minWidth], index) => {\n const previousMinWidth = widthList[index][0];\n if (previousMinWidth > minWidth) {\n throw new Error(\n `mapWindowWidth: sort your values to be mobile first. ${minWidth} is < ${previousMinWidth}, so ${minWidth} should be before ${previousMinWidth}.`,\n );\n }\n });\n }\n const found = widthList.find(([minWidth, value]) => matchWindowSize(dimensions, { minWidth: Number(minWidth) }));\n if (!found) return null;\n return found[1];\n },\n };\n}\n","import { useMemo } from 'react';\nimport type { Theme } from './themes/default';\nimport { theme as kittTheme } from './themes/default';\nimport type { WindowSizeHelper } from './utils/windowSize/createWindowSizeHelper';\nimport { createWindowSizeHelper } from './utils/windowSize/createWindowSizeHelper';\nimport { useWindowSize } from './utils/windowSize/useWindowSize';\n\nexport interface KittTheme {\n kitt: Theme;\n /** @deprecated responsive is not SSR friendly and will be remove soon. Please use native-base breakpoints instead. */\n responsive: WindowSizeHelper;\n}\n\nexport function useKittTheme(): KittTheme {\n const dimensions = useWindowSize();\n return useMemo(() => {\n return { kitt: kittTheme, responsive: createWindowSizeHelper(dimensions) };\n }, [dimensions]);\n}\n","import { makeDecorator } from '@storybook/addons';\nimport type { ReactElement, ReactNode } from 'react';\nimport { ThemeProvider } from 'styled-components/native';\nimport type { AppTheme, KittNativeBaseProviderProps } from '../../native-base/KittNativeBaseProvider';\nimport { KittNativeBaseProvider } from '../../native-base/KittNativeBaseProvider';\nimport type { KittTheme } from '../../useKittTheme';\nimport { useKittTheme } from '../../useKittTheme';\n\ndeclare module 'styled-components' {\n export interface DefaultTheme extends KittTheme {}\n}\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 <ThemeProvider theme={theme}>\n <KittNativeBaseProvider theme={theme} isSSR={isSSR} appTheme={appTheme}>\n {children}\n </KittNativeBaseProvider>\n </ThemeProvider>\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 { ReactElement, ReactNode } from 'react';\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: 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","import { useBreakpointValue } from 'native-base';\nimport { KittBreakpointNameEnum } from '../../KittBreakpoints';\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"],"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","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","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","input","selection","placeholder","icon","rightContainer","states","inputField","containerPaddingTop","containerPaddingBottom","feedbackPaddingTop","labelContainerPaddingBottom","labelFeedbackMarginLeft","inputTag","labelColor","radio","unchecked","innerSize","innerBackgroundColor","radioButtonGroup","textArea","forms","fullscreenModal","sharedHorizontalPadding","verticalPadding","iconButton","listItem","innerMargin","pageLoader","strokeWidth","fill","delay","circleBackgroundFillDuration","filledCircleFillDuration","groupFilledCircleRotationDuration","filledCircleRotationDuration","fillEasingFunction","picker","ios","_objectSpread","landscape","android","shadows","cards","low","highBase","highMedium","highLarge","navigation","left","right","panel","skeleton","flareColor","animationDuration","shape","bar","circle","square","tag","outline","warn","tooltip","horizontalPadding","floatingPadding","out","arrow","breakpoints","values","wide","min","smallBreakpoint","mediumBreakpoint","largeBreakpoint","wideBreakpoint","max","theme","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","getCurrentBackgroundColorForNativeBaseTheme","type","isDisabled","baseKey","getCurrentScale","hoverScaleValue","pressedScaleValue","AnimatedContainer","isStretch","_theme$kitt$button","_theme$kitt$button$tr","responsiveHoverScaleValue","useBreakpointValue","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","withTheme","WrappedComponent","StyledSpinningIconContainer","styled","name","class","propsAsIs","SpinningIcon","LoaderIcon","ArcIcon","matchWindowSize","maxHeight","hasWidthMatched","hasHeightMatched","useMatchWindowSize","options","_useWindowDimensions","useWindowDimensions","getCurrentStretchValue","isMedium","ActionsItem","as","isCurrentStretch","_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","Actions","currentAlignItems","currentDirection","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","OverlayPressable","withConfig","componentId","StyleSheet","absoluteFillObject","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","Body","Header","Footer","backgroundStyles","getCurrentTextColor","isSelected","getBorderRadius","defaultRadius","$variant","_theme$kitt$choices$i","css","ChoiceItemView","_ref4","_ref5","$isHovered","$isPressed","$isDisabled","$isSelected","_theme$kitt$choices$i2","defaultBackground","_ref6","$size","_theme$kitt$choices$i3","responsive","ifWindowSizeMatches","_ref7","_theme$kitt$choices$i4","ChoiceItem","_ref8","_ref8$type","onChange","onBlur","onFocus","handleChange","accessibilityState","_ref9","ChoiceItemContainer","$isLast","$direction","_theme$kitt$choices$s","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","marginBottom","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","_excluded3","Mail","emailAddress","_excluded4","defaultOpenLinkBehavior","ExternalLink","_ref$openLinkBehavior","openLinkBehavior","target","rel","getBackgroundColor","isChecked","getBorderColor","Checkbox","_ref$hitSlop","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","_exp","_theme$kitt$forms$inp","InputTextContainer","vars","InputText","internalForceState","_ref$disabled","_ref$autoCorrect","autoCorrect","_ref$textContentType","textContentType","_ref$autoComplete","autoComplete","_ref$keyboardType","keyboardType","multiline","onSubmitEditing","Input","py","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","InputEmail","autoCapitalize","getColorFromState","InputFeedback","InputField","label","labelFeedback","feedback","getIconColor","InputIcon","InputPressable","InputPassword","isPasswordDefaultVisible","isVisible","setIsVisible","secureTextEntry","EyeOffIcon","EyeIcon","isPhoneNumberValid","number","isValidNumber","phoneNumberLength","InputPhone","_ref$phoneNumberLengt","currentReturnKeyType","event","parseNumber","phone","finalPhoneNumber","eventWithoutCountryCode","countryCode","getCountryCallingCode","country","originalNativeEventText","getTypographyColor","InputTagContainer","IconContainer","InputTag","typographyColor","Label","htmlFor","InnerCircle","OuterCircle","Radio","focusable","getCurrentBackgroundColor","getCurrentBorderColor","isFirst","isLast","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","context","ContentView","BabelPluginStyledComponentsReactNative","ListItemContent","SideContainerView","side","ListItemSideContainer","_ref3$side","SideContentView","ListItemSideContent","_ref5$align","ContainerView","withPadding","borders","ListItem","Wrapper","Fragment","wrapperProps","containerProps","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","BodyView","ModalBody","FooterView","ModalFooter","HeaderView","LeftIconView","RightIconView","TitleView","isIconLeft","ModalHeader","ModalView","Modal","NativeModal","animationType","supportedOrientations","onShow","onRequestClose","createKittSpaces","sizes","positive","negative","overridenNativeBaseSizeandSpaceScale","fromEntries","createKittNativeBaseCustomTheme","appTheme","spaces","appBreakpoints","extendedTheme","extendTheme","innerCircle","app","radii","lg","Number","MAX_SAFE_INTEGER","md","sm","xl","xs","borderWidths","defaultSize","fontSizes","lineHeights","fontWeights","fonts","shadowColor","shadowOffset","shadowOpacity","shadowRadius","components","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","_exp3","$circlePerimeter","_exp5","_exp6","_exp8","_exp9","_exp10","_animation$fillEasing","x1","y1","x2","y2","_exp11","_exp12","_exp13","_animation$fillEasing2","fillAnimation","rotationAnimation","join","PageLoaderContainer","PageLoader","_theme$kitt$pageLoade","center","circlePerimeter","PI","cx","cy","Picker","SegmentedProgressBar","_ref$currentStep","currentStep","stepsCount","_ref$colorVariant","colorVariant","withCurrentInProgress","fillColor","steps","_toConsumableArray","Array","from","stepNumber","isSegmentCurrentInProgress","Stripes","_exp2","$isLoading","StyledSkeleton","SkeletonContent","Skeleton","_ref$isLoading","setWidth","onLayout","Bar","Circle","Square","getStaticMapImageUrl","mapWidth","mapHeight","is2x","centerPart","lat","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","Loader","Marker","Flex","shouldForwardProp","prop","defaultValidatorFn","_ref2$padding","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","className","StoryDecorator","storyFn","StoryGridRow","_ref$breakpoint","breakpoint","_defineProperty","StoryGridCol","_ref10","titleColor","_ref10$platform","StoryGrid","Row","Col","Container","getLabelColor","Tag","_ref6$type","_ref6$variant","TimePicker","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","zIndex","isCursorOnTooltip","setIsCursorOnTooltip","arrowRef","currentFloatingPadding","_useFloating","useFloating","placement","strategy","whileElementsMounted","autoUpdate","middleware","offset","autoPlacement","allowedPlacements","shift","crossAxis","x","y","reference","floating","update","refs","middlewareData","tooltipY","tooltipX","centerOffset","shouldRenderArrow","hasArrowEnoughSpace","sharedArrowProps","useOnClickOutside","handlePressOutside","handleDisplayTooltip","handleMouseEnter","handleMouseLeave","themePart","transformOrigin","onHoverIn","handleHideTooltip","accessibilityHidden","pointerEvents","visibility","onTouchStart","onTouchEnd","onMouseEnter","onMouseLeave","getTypographyTypeConfig","calcSizesFromType","TypographyEmoji","_ref3$type","StyleWebWrapper","$hasNoUnderline","TypographyLinkWebWrapper","styledLinaria","TypographyLink","noUnderline","underline","dataSet","cursor","createWindowSizeHelper","dimensions","mapWindowWidth","_len","widthList","_key","previousMinWidth","found","find","useKittTheme","useWindowSize","KittThemeProvider","ThemeProvider","KittThemeDecorator","makeDecorator","parameterName","wrapper","_parameters$isSSR","_ref2$options","_ref2$parameters","parameters","MatchWindowSize","matchWindowSizeOptions","match","useCurrentBreakpointName"],"mappings":"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"}
|