@ornikar/bumper 2.1.0 → 2.2.1-canary.431a0c996598cbee4e3c07f6b9886d37d2a76679.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/CHANGELOG.md +24 -0
- package/dist/definitions/animations.d.ts +22 -0
- package/dist/definitions/animations.d.ts.map +1 -0
- package/dist/definitions/components/toast/SafeToastViewport.d.ts +9 -0
- package/dist/definitions/components/toast/SafeToastViewport.d.ts.map +1 -0
- package/dist/definitions/components/toast/ToastProvider.d.ts +10 -0
- package/dist/definitions/components/toast/ToastProvider.d.ts.map +1 -0
- package/dist/definitions/components/toast/ToastRenderer.d.ts +8 -0
- package/dist/definitions/components/toast/ToastRenderer.d.ts.map +1 -0
- package/dist/definitions/components/toast/ToastStoreProvider.d.ts +11 -0
- package/dist/definitions/components/toast/ToastStoreProvider.d.ts.map +1 -0
- package/dist/definitions/components/toast/decorators/ToastProviderDecorator.d.ts +2 -0
- package/dist/definitions/components/toast/decorators/ToastProviderDecorator.d.ts.map +1 -0
- package/dist/definitions/components/toast/types.d.ts +8 -0
- package/dist/definitions/components/toast/types.d.ts.map +1 -0
- package/dist/definitions/components/toast/useToast.d.ts +9 -0
- package/dist/definitions/components/toast/useToast.d.ts.map +1 -0
- package/dist/definitions/index.d.ts +9 -0
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/definitions/tamagui.config.d.ts +20 -1
- package/dist/definitions/tamagui.config.d.ts.map +1 -1
- package/dist/index-metro.es.android.js +284 -6
- package/dist/index-metro.es.android.js.map +1 -1
- package/dist/index-metro.es.ios.js +284 -6
- package/dist/index-metro.es.ios.js.map +1 -1
- package/dist/index-node-22.17.cjs.js +286 -2
- package/dist/index-node-22.17.cjs.js.map +1 -1
- package/dist/index-node-22.17.cjs.web.js +285 -1
- package/dist/index-node-22.17.cjs.web.js.map +1 -1
- package/dist/index-node-22.17.es.mjs +283 -5
- package/dist/index-node-22.17.es.mjs.map +1 -1
- package/dist/index-node-22.17.es.web.mjs +282 -5
- package/dist/index-node-22.17.es.web.mjs.map +1 -1
- package/dist/index.es.js +292 -6
- package/dist/index.es.js.map +1 -1
- package/dist/index.es.web.js +290 -5
- package/dist/index.es.web.js.map +1 -1
- package/dist/tsbuildinfo +1 -1
- package/package.json +20 -8
- package/src/animations.ts +25 -0
- package/src/components/toast/SafeToastViewport.tsx +26 -0
- package/src/components/toast/Toast.stories.tsx +75 -0
- package/src/components/toast/ToastProvider.tsx +33 -0
- package/src/components/toast/ToastRenderer.tsx +26 -0
- package/src/components/toast/ToastStoreProvider.tsx +41 -0
- package/src/components/toast/__snapshots__/Toast.stories.tsx.snap +146 -0
- package/src/components/toast/__snapshots_web__/Toast.stories.tsx.snap +81 -0
- package/src/components/toast/decorators/ToastProviderDecorator.tsx +23 -0
- package/src/components/toast/types.ts +9 -0
- package/src/components/toast/useToast.tsx +35 -0
- package/src/index.ts +15 -0
- package/src/tamagui.config.ts +3 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-metro.es.ios.js","sources":["../src/themes/palettes/deepPurpleColorPalette.ts","../src/themes/light.ts","../src/themes/utils/breakpoints.ts","../src/tokens/fonts.ts","../src/tokens/size.ts","../src/tokens/space.ts","../src/tamagui.config.ts","../src/core/BumperProvider.tsx","../src/core/BumperDecorator.tsx","../src/components/breakpoints/utils/breakpointsUtils.ts","../src/components/breakpoints/hooks/useCurrentBreakpointName.ts","../src/components/breakpoints/hooks/useBreakpointValue.ts","../src/components/breakpoints/SwitchBreakpoins.tsx"],"sourcesContent":["import type { IntRange, UnionToIntersection } from 'type-fest';\n\ninterface ColorScaleKeysMap {\n deepPurple: IntRange<5, 10>;\n beige: IntRange<1, 7>;\n lightning: 4 | 5 | 8 | 9;\n rainbow:\n | 'pink'\n | 'brick'\n | 'orange'\n | 'gold'\n | 'sun'\n | 'green-pine'\n | 'green-grass'\n | 'green-apple'\n | 'blue-electric'\n | 'blue-sky';\n grey: 0 | 1 | 2 | 3 | 5 | 7 | 9;\n blue: 1 | 2 | 6 | 7;\n green: 1 | 2 | 6 | 7;\n yellow: 1 | 2 | 6 | 7;\n red: 1 | 2 | 6 | 7;\n 'beige-alpha': '25' | '40' | '50';\n 'grey-alpha': '25' | '35' | '50';\n 'white-alpha': '10' | '20' | '60' | '80' | '90';\n}\n\ntype CreateColorScale<K extends keyof ColorScaleKeysMap> = Record<ColorScaleKeysMap[K], string>;\n\ntype ColorScales = {\n [K in keyof ColorScaleKeysMap]: CreateColorScale<K>;\n};\n\ntype CreateTokens<K extends keyof ColorScaleKeysMap> = {\n [Key in ColorScaleKeysMap[K] as `${K}.${Key}`]: string;\n};\n\ntype ColorScaleTokens = UnionToIntersection<\n {\n [K in keyof ColorScaleKeysMap]: CreateTokens<K>;\n }[keyof ColorScaleKeysMap]\n>;\n\nconst createColorScale = <const T extends Record<string | number, string>>(colorScale: T): T => colorScale;\n\n// WARNING\n// If you update this palette, don't forget to update the palette in @ornikar/bumper as well.\nexport const colorScales: ColorScales = {\n deepPurple: createColorScale({\n 5: '#936C93',\n 6: '#7A587A',\n 7: '#6E4D6E',\n 8: '#563B56',\n 9: '#452F45',\n }),\n beige: createColorScale({\n 1: '#F7F4EE',\n 2: '#F1ECE4',\n 3: '#EAE3D6',\n 4: '#E5DCCA',\n 5: '#DDD0B8',\n 6: '#C1B59F',\n }),\n lightning: createColorScale({\n 4: '#FFF966',\n 5: '#FFF500',\n 8: '#594D0D',\n 9: '#43390A',\n }),\n rainbow: createColorScale({\n pink: '#E4A4F9',\n brick: '#951D12',\n orange: '#DB6E2E',\n gold: '#9A7600',\n sun: '#EFD346',\n 'green-pine': '#1C5D47',\n 'green-grass': '#4DA00A',\n 'green-apple': '#DEF985',\n 'blue-electric': '#2850C4',\n 'blue-sky': '#B2F0FD',\n }),\n grey: createColorScale({\n 0: '#ffffff',\n 1: '#ECECEC',\n 2: '#CDCED0',\n 3: '#A8A8A8',\n 5: '#838383',\n 7: '#505050',\n 9: '#101010',\n }),\n blue: createColorScale({\n 1: '#E9F4FC',\n 2: '#BCDFF6',\n 6: '#1772AB',\n 7: '#125A87',\n }),\n green: createColorScale({\n 1: '#ECFEDD',\n 2: '#DBFAC1',\n 6: '#438D06',\n 7: '#357105',\n }),\n yellow: createColorScale({\n 1: '#FDF8E7',\n 2: '#FAEBB8',\n 6: '#EFC11F',\n 7: '#BA930B',\n }),\n red: createColorScale({\n 1: '#FDE4E3',\n 2: '#FAB8B8',\n 6: '#F14847',\n 7: '#BD100F',\n }),\n 'beige-alpha': createColorScale({\n '25': '#C1B59F40',\n '40': '#C1B59F66',\n '50': '#C1B59F80',\n }),\n 'grey-alpha': createColorScale({\n '25': '#10101040',\n '35': '#10101059',\n '50': '#10101080',\n }),\n 'white-alpha': createColorScale({\n '10': '#FFFFFF1A',\n '20': '#FFFFFF33',\n '60': '#FFFFFF99',\n '80': '#FFFFFFCC',\n '90': '#FFFFFFE5',\n }),\n} as const;\n\nconst transformColorScalesToTokens = (): ColorScaleTokens => {\n return Object.fromEntries(\n Object.entries(colorScales).flatMap(([colorName, colorScale]) => {\n return Object.entries(colorScale).map(([scaleNumber, colorValue]) => {\n return [`${colorName}.${scaleNumber}`, colorValue];\n });\n }),\n ) as ColorScaleTokens;\n};\n\nexport const deepPurpleColorPalette = {\n ...transformColorScalesToTokens(),\n white: '#FFFFFF',\n black: '#000000',\n transparent: 'transparent',\n};\n","import { deepPurpleColorPalette } from './palettes/deepPurpleColorPalette';\n\n// WARNING\n// If you modify this theme, don't forget to update the theme in @ornikar/kitt-universal as well\n// https://github.com/ornikar/kitt/blob/79e367e962c957c016c4df67dbcf515c8f45ff0e/@ornikar/kitt-universal/src/themes/late-ocean/colors.ts#L28\nexport const light = {\n // content\n 'content.base.hi': deepPurpleColorPalette['grey.9'],\n 'content.base.mid': deepPurpleColorPalette['grey.7'],\n 'content.base.low': deepPurpleColorPalette['grey.5'],\n 'content.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\n 'content.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.80'],\n 'content.base.onContrasted.low': deepPurpleColorPalette['white-alpha.60'],\n 'content.accent': deepPurpleColorPalette['deepPurple.8'],\n 'content.promo': deepPurpleColorPalette['lightning.9'],\n 'content.promo.onContrasted': deepPurpleColorPalette['lightning.5'],\n 'content.info': deepPurpleColorPalette['blue.7'],\n 'content.success': deepPurpleColorPalette['green.7'],\n 'content.warning': deepPurpleColorPalette['yellow.7'],\n 'content.danger': deepPurpleColorPalette['red.7'],\n 'content.muted': deepPurpleColorPalette['beige.6'],\n 'content.disabled': deepPurpleColorPalette['grey.3'],\n 'content.disabled.onContrasted': deepPurpleColorPalette['grey.1'],\n\n // backgrounds\n 'bg.base.hi.default': deepPurpleColorPalette['beige.2'],\n 'bg.base.hi.pressed': deepPurpleColorPalette['beige.3'],\n 'bg.base.mid.default': deepPurpleColorPalette['beige.1'],\n 'bg.base.mid.pressed': deepPurpleColorPalette['beige.2'],\n 'bg.base.low.default': deepPurpleColorPalette['grey.0'],\n 'bg.base.low.pressed': deepPurpleColorPalette['beige.1'],\n 'bg.accent.default': deepPurpleColorPalette['deepPurple.8'],\n 'bg.accent.pressed': deepPurpleColorPalette['deepPurple.7'],\n 'bg.promo.hi.default': deepPurpleColorPalette['lightning.9'],\n 'bg.promo.hi.pressed': deepPurpleColorPalette['lightning.8'],\n 'bg.promo.mid.default': deepPurpleColorPalette['lightning.5'],\n 'bg.promo.mid.pressed': deepPurpleColorPalette['lightning.4'],\n 'bg.highlight.default': deepPurpleColorPalette['blue.1'],\n 'bg.highlight.pressed': deepPurpleColorPalette['blue.2'],\n 'bg.info.hi': deepPurpleColorPalette['blue.6'],\n 'bg.info.mid': deepPurpleColorPalette['blue.1'],\n 'bg.success.hi': deepPurpleColorPalette['green.6'],\n 'bg.success.mid': deepPurpleColorPalette['green.1'],\n 'bg.warning.hi': deepPurpleColorPalette['yellow.6'],\n 'bg.warning.mid': deepPurpleColorPalette['yellow.1'],\n 'bg.danger.hi': deepPurpleColorPalette['red.6'],\n 'bg.danger.mid': deepPurpleColorPalette['red.1'],\n 'bg.disabled.hi': deepPurpleColorPalette['grey.3'],\n 'bg.disabled.mid': deepPurpleColorPalette['grey.1'],\n 'bg.overlay': deepPurpleColorPalette['grey-alpha.50'],\n\n // borders\n 'border.base.hi': deepPurpleColorPalette['grey.9'],\n 'border.base.mid': deepPurpleColorPalette['beige.3'],\n 'border.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\n 'border.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.20'],\n 'border.base.accent': deepPurpleColorPalette['deepPurple.8'],\n 'border.info': deepPurpleColorPalette['blue.6'],\n 'border.success': deepPurpleColorPalette['green.6'],\n 'border.warning': deepPurpleColorPalette['yellow.6'],\n 'border.danger': deepPurpleColorPalette['red.6'],\n 'border.disabled': deepPurpleColorPalette['grey.2'],\n};\n","export enum BreakpointNameEnum {\n BASE = 'base',\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n WIDE = 'wide',\n}\n\nexport const breakpoints = {\n [BreakpointNameEnum.BASE]: 0,\n [BreakpointNameEnum.SMALL]: 480,\n [BreakpointNameEnum.MEDIUM]: 768,\n [BreakpointNameEnum.LARGE]: 1024,\n [BreakpointNameEnum.WIDE]: 1280,\n};\n","import { createFont } from '@tamagui/core';\n\nexport const HEADING_VARIANTS = [\n 'heading-2xl',\n 'heading-xl',\n 'heading-l',\n 'heading-m',\n 'heading-s',\n 'heading-xs',\n] as const;\nexport const BODY_VARIANTS = ['body-xl', 'body-l', 'body-m', 'body-s', 'body-xs'] as const;\nexport const LABEL_VARIANTS = ['label-xl', 'label-l', 'label-m', 'label-s'] as const;\nexport const VARIANTS = [...HEADING_VARIANTS, ...BODY_VARIANTS, ...LABEL_VARIANTS] as const;\n\nexport type FontVariants = (typeof VARIANTS)[number];\nexport type BodyFontVariants = (typeof BODY_VARIANTS)[number];\nexport type LabelFontVariants = (typeof LABEL_VARIANTS)[number];\nexport type HeadingFontVariants = (typeof HEADING_VARIANTS)[number];\n\nexport type GTStandardFontWeight = '500' | '600' | '700';\n\nconst GTStandardFaces: Record<GTStandardFontWeight, Record<string, string>> = {\n 500: { normal: 'GTStandardRegular' },\n 600: { normal: 'GTStandardSemibold' },\n 700: { normal: 'GTStandardBold' },\n};\n\nconst size: Record<FontVariants, number> = {\n 'heading-2xl': 56,\n 'heading-xl': 48,\n 'heading-l': 38,\n 'heading-m': 24,\n 'heading-s': 20,\n 'heading-xs': 16,\n 'body-xl': 24,\n 'body-l': 18,\n 'body-m': 16,\n 'body-s': 14,\n 'body-xs': 12,\n 'label-xl': 18,\n 'label-l': 16,\n 'label-m': 14,\n 'label-s': 12,\n};\n\nconst lineHeight: Record<FontVariants, number> = {\n 'heading-2xl': 64,\n 'heading-xl': 56,\n 'heading-l': 48,\n 'heading-m': 32,\n 'heading-s': 20,\n 'heading-xs': 18,\n 'body-xl': 32,\n 'body-l': 26,\n 'body-m': 24,\n 'body-s': 20,\n 'body-xs': 16,\n 'label-xl': 26,\n 'label-l': 24,\n 'label-m': 20,\n 'label-s': 16,\n};\n\nconst letterSpacing: Record<FontVariants, number> = {\n 'heading-2xl': 0,\n 'heading-xl': 0,\n 'heading-l': 0,\n 'heading-m': 0,\n 'heading-s': 0,\n 'heading-xs': 0,\n 'body-xl': 0.3,\n 'body-l': 0.3,\n 'body-m': 0.3,\n 'body-s': 0.3,\n 'body-xs': 0.3,\n 'label-xl': 0,\n 'label-l': 0,\n 'label-m': 0,\n 'label-s': 0,\n};\n\nconst weight: Record<string, GTStandardFontWeight> = {\n bold: '700',\n semibold: '600',\n regular: '500',\n};\n\nexport const fonts = createFont({\n family: 'GTStandard',\n size,\n lineHeight,\n letterSpacing,\n weight,\n face: GTStandardFaces,\n});\n","export const sizeTokens = {\n 16: 16,\n 20: 20,\n 24: 24,\n 32: 32,\n 80: 80,\n 128: 128,\n 176: 176,\n 208: 208,\n};\n","export const spaceTokens = {\n 0: 0,\n 2: 2,\n 4: 4,\n 8: 8,\n 12: 12,\n 16: 16,\n 24: 24,\n 32: 32,\n 40: 40,\n 48: 48,\n 56: 56,\n 64: 64,\n 80: 80,\n};\n","import { createTamagui, createTokens } from '@tamagui/core';\nimport { light } from './themes/light';\nimport { BreakpointNameEnum, breakpoints } from './themes/utils/breakpoints';\nimport { fonts } from './tokens/fonts';\nimport { sizeTokens } from './tokens/size';\nimport { spaceTokens } from './tokens/space';\n\nconst tokens = createTokens({\n color: {},\n space: spaceTokens,\n size: sizeTokens,\n});\n\nexport const config = createTamagui({\n tokens,\n fonts: {\n GTStandard: fonts,\n },\n themes: {\n light,\n },\n media: {\n [BreakpointNameEnum.BASE]: { minWidth: breakpoints[BreakpointNameEnum.BASE] },\n [BreakpointNameEnum.SMALL]: { minWidth: breakpoints[BreakpointNameEnum.SMALL] },\n [BreakpointNameEnum.MEDIUM]: { minWidth: breakpoints[BreakpointNameEnum.MEDIUM] },\n [BreakpointNameEnum.LARGE]: { minWidth: breakpoints[BreakpointNameEnum.LARGE] },\n [BreakpointNameEnum.WIDE]: { minWidth: breakpoints[BreakpointNameEnum.WIDE] },\n },\n settings: {\n allowedStyleValues: 'strict',\n disableSSR: true,\n styleCompat: 'react-native',\n autocompleteSpecificTokens: true,\n debug: false,\n },\n});\n\ntype Conf = typeof config;\n\n// make imports typed\ndeclare module '@tamagui/core' {\n interface TamaguiCustomConfig extends Conf {}\n}\n","import { TamaguiProvider } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { config } from '../tamagui.config';\n\nexport interface BumperProviderProps {\n children: ReactNode;\n}\n\nexport function BumperProvider({ children }: BumperProviderProps): ReactNode {\n return (\n <TamaguiProvider config={config} defaultTheme=\"light\">\n {children}\n </TamaguiProvider>\n );\n}\n","import { makeDecorator } from '@storybook/addons';\nimport type { ReactNode } from 'react';\nimport { BumperProvider } from './BumperProvider';\n\nexport const BumperDecorator = makeDecorator({\n name: 'BumperDecorator',\n parameterName: 'bumper',\n wrapper: (storyFn, context) => {\n return <BumperProvider>{storyFn(context) as ReactNode}</BumperProvider>;\n },\n});\n","import { BreakpointNameEnum } from '../../../themes/utils/breakpoints';\n\nexport interface ValueForBreakpoint<T> {\n base: T;\n small?: T;\n medium?: T;\n large?: T;\n wide?: T;\n}\n\nexport function getValueForBreakpoint<T>(\n breakpoint: BreakpointNameEnum,\n { base, small, medium, large, wide }: ValueForBreakpoint<T>,\n): T {\n switch (breakpoint) {\n case BreakpointNameEnum.WIDE:\n return wide ?? large ?? medium ?? small ?? base;\n case BreakpointNameEnum.LARGE:\n return large ?? medium ?? small ?? base;\n case BreakpointNameEnum.MEDIUM:\n return medium ?? small ?? base;\n case BreakpointNameEnum.SMALL:\n return small ?? base;\n case BreakpointNameEnum.BASE:\n default:\n return base;\n }\n}\n","import { useMedia } from '@tamagui/core';\nimport { BreakpointNameEnum } from '../../../themes/utils/breakpoints';\n\nexport function useCurrentBreakpointName(): BreakpointNameEnum {\n const media = useMedia();\n\n switch (true) {\n case media.wide:\n return BreakpointNameEnum.WIDE;\n case media.large:\n return BreakpointNameEnum.LARGE;\n case media.medium:\n return BreakpointNameEnum.MEDIUM;\n case media.small:\n return BreakpointNameEnum.SMALL;\n case media.base:\n default:\n return BreakpointNameEnum.BASE;\n }\n}\n","import { useMemo } from 'react';\nimport type { ValueForBreakpoint } from '../utils/breakpointsUtils';\nimport { getValueForBreakpoint } from '../utils/breakpointsUtils';\nimport { useCurrentBreakpointName } from './useCurrentBreakpointName';\n\nexport function useBreakpointValue<T>(values: ValueForBreakpoint<T>): T {\n const breakpoint = useCurrentBreakpointName();\n\n return useMemo(() => {\n return getValueForBreakpoint(breakpoint, values);\n }, [breakpoint, values]);\n}\n","import type { ReactNode } from 'react';\nimport { useCurrentBreakpointName } from './hooks/useCurrentBreakpointName';\nimport type { ValueForBreakpoint } from './utils/breakpointsUtils';\nimport { getValueForBreakpoint } from './utils/breakpointsUtils';\n\nexport type SwitchBreakpointsProps = ValueForBreakpoint<ReactNode>;\n\nexport function SwitchBreakpoints(values: SwitchBreakpointsProps): ReactNode {\n const breakpoint = useCurrentBreakpointName();\n\n return getValueForBreakpoint(breakpoint, values);\n}\n"],"names":["createColorScale","colorScale","colorScales","deepPurple","beige","lightning","rainbow","pink","brick","orange","gold","sun","grey","blue","green","yellow","red","transformColorScalesToTokens","Object","fromEntries","entries","flatMap","colorName","map","scaleNumber","colorValue","deepPurpleColorPalette","_objectSpread","white","black","transparent","light","BreakpointNameEnum","breakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","GTStandardFaces","normal","size","lineHeight","letterSpacing","weight","bold","semibold","regular","fonts","createFont","family","face","sizeTokens","spaceTokens","tokens","createTokens","color","space","config","createTamagui","GTStandard","themes","media","minWidth","settings","allowedStyleValues","disableSSR","styleCompat","autocompleteSpecificTokens","debug","BumperProvider","children","_jsx","TamaguiProvider","defaultTheme","BumperDecorator","makeDecorator","name","parameterName","wrapper","storyFn","context","getValueForBreakpoint","breakpoint","base","small","medium","large","wide","_ref","_ref2","_ref3","_ref4","_ref5","_ref6","useCurrentBreakpointName","useMedia","useBreakpointValue","values","useMemo","SwitchBreakpoints"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-metro.es.ios.js","sources":["../src/animations.ts","../src/themes/palettes/deepPurpleColorPalette.ts","../src/themes/light.ts","../src/themes/utils/breakpoints.ts","../src/tokens/fonts.ts","../src/tokens/size.ts","../src/tokens/space.ts","../src/tamagui.config.ts","../src/core/BumperProvider.tsx","../src/core/BumperDecorator.tsx","../src/components/primitives/Stacks.ts","../src/components/typography/utils/getTypeAndWeightValues.tsx","../src/components/typography/Typograhy.tsx","../src/components/breakpoints/utils/breakpointsUtils.ts","../src/components/breakpoints/hooks/useCurrentBreakpointName.ts","../src/components/breakpoints/hooks/useBreakpointValue.ts","../src/components/breakpoints/SwitchBreakpoins.tsx","../src/components/toast/SafeToastViewport.tsx","../src/components/toast/ToastStoreProvider.tsx","../src/components/toast/useToast.tsx","../src/components/toast/ToastRenderer.tsx","../src/components/toast/ToastProvider.tsx"],"sourcesContent":["import { createAnimations as createWebAnimations } from '@tamagui/animations-css';\nimport { createAnimations as createNativeAnimations } from '@tamagui/animations-react-native';\n\nexport const nativeAnimations = createNativeAnimations({\n fast: {\n damping: 20,\n mass: 1.2,\n stiffness: 250,\n },\n medium: {\n damping: 10,\n mass: 0.9,\n stiffness: 100,\n },\n slow: {\n damping: 20,\n stiffness: 60,\n },\n});\n\nexport const webAnimations = createWebAnimations({\n fast: 'ease-in 150ms',\n medium: 'ease-in 300ms',\n slow: 'ease-in 450ms',\n});\n","import type { IntRange, UnionToIntersection } from 'type-fest';\n\ninterface ColorScaleKeysMap {\n deepPurple: IntRange<5, 10>;\n beige: IntRange<1, 7>;\n lightning: 4 | 5 | 8 | 9;\n rainbow:\n | 'pink'\n | 'brick'\n | 'orange'\n | 'gold'\n | 'sun'\n | 'green-pine'\n | 'green-grass'\n | 'green-apple'\n | 'blue-electric'\n | 'blue-sky';\n grey: 0 | 1 | 2 | 3 | 5 | 7 | 9;\n blue: 1 | 2 | 6 | 7;\n green: 1 | 2 | 6 | 7;\n yellow: 1 | 2 | 6 | 7;\n red: 1 | 2 | 6 | 7;\n 'beige-alpha': '25' | '40' | '50';\n 'grey-alpha': '25' | '35' | '50';\n 'white-alpha': '10' | '20' | '60' | '80' | '90';\n}\n\ntype CreateColorScale<K extends keyof ColorScaleKeysMap> = Record<ColorScaleKeysMap[K], string>;\n\ntype ColorScales = {\n [K in keyof ColorScaleKeysMap]: CreateColorScale<K>;\n};\n\ntype CreateTokens<K extends keyof ColorScaleKeysMap> = {\n [Key in ColorScaleKeysMap[K] as `${K}.${Key}`]: string;\n};\n\ntype ColorScaleTokens = UnionToIntersection<\n {\n [K in keyof ColorScaleKeysMap]: CreateTokens<K>;\n }[keyof ColorScaleKeysMap]\n>;\n\nconst createColorScale = <const T extends Record<string | number, string>>(colorScale: T): T => colorScale;\n\n// WARNING\n// If you update this palette, don't forget to update the palette in @ornikar/bumper as well.\nexport const colorScales: ColorScales = {\n deepPurple: createColorScale({\n 5: '#936C93',\n 6: '#7A587A',\n 7: '#6E4D6E',\n 8: '#563B56',\n 9: '#452F45',\n }),\n beige: createColorScale({\n 1: '#F7F4EE',\n 2: '#F1ECE4',\n 3: '#EAE3D6',\n 4: '#E5DCCA',\n 5: '#DDD0B8',\n 6: '#C1B59F',\n }),\n lightning: createColorScale({\n 4: '#FFF966',\n 5: '#FFF500',\n 8: '#594D0D',\n 9: '#43390A',\n }),\n rainbow: createColorScale({\n pink: '#E4A4F9',\n brick: '#951D12',\n orange: '#DB6E2E',\n gold: '#9A7600',\n sun: '#EFD346',\n 'green-pine': '#1C5D47',\n 'green-grass': '#4DA00A',\n 'green-apple': '#DEF985',\n 'blue-electric': '#2850C4',\n 'blue-sky': '#B2F0FD',\n }),\n grey: createColorScale({\n 0: '#ffffff',\n 1: '#ECECEC',\n 2: '#CDCED0',\n 3: '#A8A8A8',\n 5: '#838383',\n 7: '#505050',\n 9: '#101010',\n }),\n blue: createColorScale({\n 1: '#E9F4FC',\n 2: '#BCDFF6',\n 6: '#1772AB',\n 7: '#125A87',\n }),\n green: createColorScale({\n 1: '#ECFEDD',\n 2: '#DBFAC1',\n 6: '#438D06',\n 7: '#357105',\n }),\n yellow: createColorScale({\n 1: '#FDF8E7',\n 2: '#FAEBB8',\n 6: '#EFC11F',\n 7: '#BA930B',\n }),\n red: createColorScale({\n 1: '#FDE4E3',\n 2: '#FAB8B8',\n 6: '#F14847',\n 7: '#BD100F',\n }),\n 'beige-alpha': createColorScale({\n '25': '#C1B59F40',\n '40': '#C1B59F66',\n '50': '#C1B59F80',\n }),\n 'grey-alpha': createColorScale({\n '25': '#10101040',\n '35': '#10101059',\n '50': '#10101080',\n }),\n 'white-alpha': createColorScale({\n '10': '#FFFFFF1A',\n '20': '#FFFFFF33',\n '60': '#FFFFFF99',\n '80': '#FFFFFFCC',\n '90': '#FFFFFFE5',\n }),\n} as const;\n\nconst transformColorScalesToTokens = (): ColorScaleTokens => {\n return Object.fromEntries(\n Object.entries(colorScales).flatMap(([colorName, colorScale]) => {\n return Object.entries(colorScale).map(([scaleNumber, colorValue]) => {\n return [`${colorName}.${scaleNumber}`, colorValue];\n });\n }),\n ) as ColorScaleTokens;\n};\n\nexport const deepPurpleColorPalette = {\n ...transformColorScalesToTokens(),\n white: '#FFFFFF',\n black: '#000000',\n transparent: 'transparent',\n};\n","import { deepPurpleColorPalette } from './palettes/deepPurpleColorPalette';\n\n// WARNING\n// If you modify this theme, don't forget to update the theme in @ornikar/kitt-universal as well\n// https://github.com/ornikar/kitt/blob/79e367e962c957c016c4df67dbcf515c8f45ff0e/@ornikar/kitt-universal/src/themes/late-ocean/colors.ts#L28\nexport const light = {\n // content\n 'content.base.hi': deepPurpleColorPalette['grey.9'],\n 'content.base.mid': deepPurpleColorPalette['grey.7'],\n 'content.base.low': deepPurpleColorPalette['grey.5'],\n 'content.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\n 'content.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.80'],\n 'content.base.onContrasted.low': deepPurpleColorPalette['white-alpha.60'],\n 'content.accent': deepPurpleColorPalette['deepPurple.8'],\n 'content.promo': deepPurpleColorPalette['lightning.9'],\n 'content.promo.onContrasted': deepPurpleColorPalette['lightning.5'],\n 'content.info': deepPurpleColorPalette['blue.7'],\n 'content.success': deepPurpleColorPalette['green.7'],\n 'content.warning': deepPurpleColorPalette['yellow.7'],\n 'content.danger': deepPurpleColorPalette['red.7'],\n 'content.muted': deepPurpleColorPalette['beige.6'],\n 'content.disabled': deepPurpleColorPalette['grey.3'],\n 'content.disabled.onContrasted': deepPurpleColorPalette['grey.1'],\n\n // backgrounds\n 'bg.base.hi.default': deepPurpleColorPalette['beige.2'],\n 'bg.base.hi.pressed': deepPurpleColorPalette['beige.3'],\n 'bg.base.mid.default': deepPurpleColorPalette['beige.1'],\n 'bg.base.mid.pressed': deepPurpleColorPalette['beige.2'],\n 'bg.base.low.default': deepPurpleColorPalette['grey.0'],\n 'bg.base.low.pressed': deepPurpleColorPalette['beige.1'],\n 'bg.accent.default': deepPurpleColorPalette['deepPurple.8'],\n 'bg.accent.pressed': deepPurpleColorPalette['deepPurple.7'],\n 'bg.promo.hi.default': deepPurpleColorPalette['lightning.9'],\n 'bg.promo.hi.pressed': deepPurpleColorPalette['lightning.8'],\n 'bg.promo.mid.default': deepPurpleColorPalette['lightning.5'],\n 'bg.promo.mid.pressed': deepPurpleColorPalette['lightning.4'],\n 'bg.highlight.default': deepPurpleColorPalette['blue.1'],\n 'bg.highlight.pressed': deepPurpleColorPalette['blue.2'],\n 'bg.info.hi': deepPurpleColorPalette['blue.6'],\n 'bg.info.mid': deepPurpleColorPalette['blue.1'],\n 'bg.success.hi': deepPurpleColorPalette['green.6'],\n 'bg.success.mid': deepPurpleColorPalette['green.1'],\n 'bg.warning.hi': deepPurpleColorPalette['yellow.6'],\n 'bg.warning.mid': deepPurpleColorPalette['yellow.1'],\n 'bg.danger.hi': deepPurpleColorPalette['red.6'],\n 'bg.danger.mid': deepPurpleColorPalette['red.1'],\n 'bg.disabled.hi': deepPurpleColorPalette['grey.3'],\n 'bg.disabled.mid': deepPurpleColorPalette['grey.1'],\n 'bg.overlay': deepPurpleColorPalette['grey-alpha.50'],\n\n // borders\n 'border.base.hi': deepPurpleColorPalette['grey.9'],\n 'border.base.mid': deepPurpleColorPalette['beige.3'],\n 'border.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\n 'border.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.20'],\n 'border.base.accent': deepPurpleColorPalette['deepPurple.8'],\n 'border.info': deepPurpleColorPalette['blue.6'],\n 'border.success': deepPurpleColorPalette['green.6'],\n 'border.warning': deepPurpleColorPalette['yellow.6'],\n 'border.danger': deepPurpleColorPalette['red.6'],\n 'border.disabled': deepPurpleColorPalette['grey.2'],\n};\n","export enum BreakpointNameEnum {\n BASE = 'base',\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n WIDE = 'wide',\n}\n\nexport const breakpoints = {\n [BreakpointNameEnum.BASE]: 0,\n [BreakpointNameEnum.SMALL]: 480,\n [BreakpointNameEnum.MEDIUM]: 768,\n [BreakpointNameEnum.LARGE]: 1024,\n [BreakpointNameEnum.WIDE]: 1280,\n};\n","import { createFont } from '@tamagui/core';\n\nexport const HEADING_VARIANTS = [\n 'heading-2xl',\n 'heading-xl',\n 'heading-l',\n 'heading-m',\n 'heading-s',\n 'heading-xs',\n] as const;\nexport const BODY_VARIANTS = ['body-xl', 'body-l', 'body-m', 'body-s', 'body-xs'] as const;\nexport const LABEL_VARIANTS = ['label-xl', 'label-l', 'label-m', 'label-s'] as const;\nexport const VARIANTS = [...HEADING_VARIANTS, ...BODY_VARIANTS, ...LABEL_VARIANTS] as const;\n\nexport type FontVariants = (typeof VARIANTS)[number];\nexport type BodyFontVariants = (typeof BODY_VARIANTS)[number];\nexport type LabelFontVariants = (typeof LABEL_VARIANTS)[number];\nexport type HeadingFontVariants = (typeof HEADING_VARIANTS)[number];\n\nexport type GTStandardFontWeight = '500' | '600' | '700';\n\nconst GTStandardFaces: Record<GTStandardFontWeight, Record<string, string>> = {\n 500: { normal: 'GTStandardRegular' },\n 600: { normal: 'GTStandardSemibold' },\n 700: { normal: 'GTStandardBold' },\n};\n\nconst size: Record<FontVariants, number> = {\n 'heading-2xl': 56,\n 'heading-xl': 48,\n 'heading-l': 38,\n 'heading-m': 24,\n 'heading-s': 20,\n 'heading-xs': 16,\n 'body-xl': 24,\n 'body-l': 18,\n 'body-m': 16,\n 'body-s': 14,\n 'body-xs': 12,\n 'label-xl': 18,\n 'label-l': 16,\n 'label-m': 14,\n 'label-s': 12,\n};\n\nconst lineHeight: Record<FontVariants, number> = {\n 'heading-2xl': 64,\n 'heading-xl': 56,\n 'heading-l': 48,\n 'heading-m': 32,\n 'heading-s': 20,\n 'heading-xs': 18,\n 'body-xl': 32,\n 'body-l': 26,\n 'body-m': 24,\n 'body-s': 20,\n 'body-xs': 16,\n 'label-xl': 26,\n 'label-l': 24,\n 'label-m': 20,\n 'label-s': 16,\n};\n\nconst letterSpacing: Record<FontVariants, number> = {\n 'heading-2xl': 0,\n 'heading-xl': 0,\n 'heading-l': 0,\n 'heading-m': 0,\n 'heading-s': 0,\n 'heading-xs': 0,\n 'body-xl': 0.3,\n 'body-l': 0.3,\n 'body-m': 0.3,\n 'body-s': 0.3,\n 'body-xs': 0.3,\n 'label-xl': 0,\n 'label-l': 0,\n 'label-m': 0,\n 'label-s': 0,\n};\n\nconst weight: Record<string, GTStandardFontWeight> = {\n bold: '700',\n semibold: '600',\n regular: '500',\n};\n\nexport const fonts = createFont({\n family: 'GTStandard',\n size,\n lineHeight,\n letterSpacing,\n weight,\n face: GTStandardFaces,\n});\n","export const sizeTokens = {\n 16: 16,\n 20: 20,\n 24: 24,\n 32: 32,\n 80: 80,\n 128: 128,\n 176: 176,\n 208: 208,\n};\n","export const spaceTokens = {\n 0: 0,\n 2: 2,\n 4: 4,\n 8: 8,\n 12: 12,\n 16: 16,\n 24: 24,\n 32: 32,\n 40: 40,\n 48: 48,\n 56: 56,\n 64: 64,\n 80: 80,\n};\n","import { createTamagui, createTokens } from '@tamagui/core';\nimport { Platform } from 'react-native';\nimport { nativeAnimations, webAnimations } from './animations';\nimport { light } from './themes/light';\nimport { BreakpointNameEnum, breakpoints } from './themes/utils/breakpoints';\nimport { fonts } from './tokens/fonts';\nimport { sizeTokens } from './tokens/size';\nimport { spaceTokens } from './tokens/space';\n\nconst tokens = createTokens({\n color: {},\n space: spaceTokens,\n size: sizeTokens,\n});\n\nexport const config = createTamagui({\n tokens,\n fonts: {\n GTStandard: fonts,\n },\n themes: {\n light,\n },\n media: {\n [BreakpointNameEnum.BASE]: { minWidth: breakpoints[BreakpointNameEnum.BASE] },\n [BreakpointNameEnum.SMALL]: { minWidth: breakpoints[BreakpointNameEnum.SMALL] },\n [BreakpointNameEnum.MEDIUM]: { minWidth: breakpoints[BreakpointNameEnum.MEDIUM] },\n [BreakpointNameEnum.LARGE]: { minWidth: breakpoints[BreakpointNameEnum.LARGE] },\n [BreakpointNameEnum.WIDE]: { minWidth: breakpoints[BreakpointNameEnum.WIDE] },\n },\n settings: {\n allowedStyleValues: 'strict',\n disableSSR: true,\n styleCompat: 'react-native',\n autocompleteSpecificTokens: true,\n debug: false,\n },\n animations: Platform.OS === 'web' ? webAnimations : nativeAnimations,\n});\n\ntype Conf = typeof config;\n\n// make imports typed\ndeclare module '@tamagui/core' {\n interface TamaguiCustomConfig extends Conf {}\n}\n","import { TamaguiProvider } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { config } from '../tamagui.config';\n\nexport interface BumperProviderProps {\n children: ReactNode;\n}\n\nexport function BumperProvider({ children }: BumperProviderProps): ReactNode {\n return (\n <TamaguiProvider config={config} defaultTheme=\"light\">\n {children}\n </TamaguiProvider>\n );\n}\n","import { makeDecorator } from '@storybook/addons';\nimport type { ReactNode } from 'react';\nimport { BumperProvider } from './BumperProvider';\n\nexport const BumperDecorator = makeDecorator({\n name: 'BumperDecorator',\n parameterName: 'bumper',\n wrapper: (storyFn, context) => {\n return <BumperProvider>{storyFn(context) as ReactNode}</BumperProvider>;\n },\n});\n","import { Stack, styled } from '@tamagui/core';\nimport type { GetProps } from '@tamagui/core';\n\nexport { Stack } from '@tamagui/core';\nexport type StackProps = GetProps<typeof Stack>;\n\nexport const HStack = styled(Stack, {\n name: 'HStack',\n flexDirection: 'row',\n});\n\nexport type HStackProps = GetProps<typeof HStack>;\n\nexport const VStack = styled(Stack, {\n name: 'VStack',\n flexDirection: 'column',\n});\n\nexport type VStackProps = GetProps<typeof VStack>;\n","import type { FontVariants } from '../../../tokens/fonts';\nimport { BODY_VARIANTS } from '../../../tokens/fonts';\nimport type {\n InternalTypographyProps,\n TypographyTextProps,\n TypographyVariantContextValue,\n TypographyWeightContextValue,\n} from '../Typograhy';\n\ninterface VariantAndWeightValues {\n weight: InternalTypographyProps['weight'] | undefined;\n variant: FontVariants | undefined;\n}\n\nexport function getVariantAndWeightValues(\n weightProp: TypographyTextProps['weight'],\n variantProp: TypographyTextProps['variant'],\n typographyWeightAncestorValue: TypographyWeightContextValue,\n typographyVariantAncestorValue: TypographyVariantContextValue,\n): VariantAndWeightValues {\n const computedVariant = variantProp || typographyVariantAncestorValue || undefined;\n\n if (computedVariant) {\n if ((BODY_VARIANTS as readonly string[]).includes(computedVariant)) {\n const computedWeight = weightProp || typographyWeightAncestorValue || undefined;\n return { weight: computedWeight, variant: computedVariant };\n }\n return { weight: 'semibold', variant: computedVariant };\n }\n\n return { weight: weightProp, variant: undefined };\n}\n","import type { GetProps, GetThemeValueForKey } from '@tamagui/core';\nimport { Text, styled } from '@tamagui/core';\nimport { createContext, useContext } from 'react';\nimport { type Except } from 'type-fest';\nimport type { BodyFontVariants, FontVariants, HeadingFontVariants, LabelFontVariants } from '../../tokens/fonts';\nimport { getVariantAndWeightValues } from './utils/getTypeAndWeightValues';\n\nexport type TypographyVariantContextValue = FontVariants | null;\nexport type TypographyWeightContextValue = 'regular' | 'bold' | null;\nexport type TypograhyColorContextValue = TypograhyColorProps | null;\n\nconst TypographyVariantContext = createContext<TypographyVariantContextValue>(null);\nconst TypographyWeightContext = createContext<TypographyWeightContextValue>(null);\nconst TypograhyColorContext = createContext<TypograhyColorContextValue>(null);\n\nconst InternalTypography = styled(Text, {\n fontFamily: '$GTStandard',\n color: '$content.base.hi',\n '$platform-web': {\n WebkitFontSmoothing: 'antialiased',\n },\n variants: {\n variant: (variant: FontVariants | undefined) => {\n if (!variant) return {};\n\n return {\n fontSize: `$${variant}`,\n lineHeight: `$${variant}`,\n letterSpacing: `$${variant}`,\n };\n },\n weight: {\n regular: {\n fontWeight: '$regular',\n },\n semibold: {\n fontWeight: '$semibold',\n },\n bold: {\n fontWeight: '$bold',\n },\n },\n } as const,\n defaultVariants: {\n variant: 'body-m',\n weight: 'regular',\n },\n});\n\nexport type InternalTypographyProps = GetProps<typeof InternalTypography>;\n\n// Create a type for color props that matches strings containing '$content.'\ntype ContainsOneString<T extends string> = `${string}${T}${string}`;\ntype TypograhyColorProps = ContainsOneString<'$content.'>;\n\n// Remove font-related style props from InternalTypography Props\ntype TypographyExcludedFontStyleProps =\n | 'fontFamily'\n | 'fontSize'\n | 'lineHeight'\n | 'fontStyle'\n | 'fontVariant'\n | 'fontWeight';\ntype TypographyPropsWithoutFontStyleProps = Except<\n InternalTypographyProps,\n TypographyExcludedFontStyleProps | 'color'\n> & {\n color?: TypograhyColorProps;\n};\n\nexport interface BodyProps extends TypographyPropsWithoutFontStyleProps {\n variant?: BodyFontVariants;\n weight?: Exclude<InternalTypographyProps['weight'], 'semibold'>;\n}\nexport interface HeadingLabelProps extends TypographyPropsWithoutFontStyleProps {\n variant: HeadingFontVariants | LabelFontVariants;\n weight?: never;\n}\nexport type TypographyTextProps = BodyProps | HeadingLabelProps;\n\nconst TypographyText = InternalTypography.styleable<TypographyTextProps>((props, ref) => {\n const typographyVariantAncestorValue = useContext(TypographyVariantContext);\n const typographyWeightAncestorValue = useContext(TypographyWeightContext);\n const typographyColorAncestorValue = useContext(TypograhyColorContext);\n\n const { variant, weight } = getVariantAndWeightValues(\n props.weight,\n props.variant,\n typographyWeightAncestorValue,\n typographyVariantAncestorValue,\n );\n const color = props.color || typographyColorAncestorValue || undefined;\n\n let content = (\n <InternalTypography\n ref={ref}\n {...props}\n color={color as GetThemeValueForKey<'color'>}\n weight={weight}\n variant={variant}\n />\n );\n\n content = props.variant ? (\n // If a variant is provided, we set it in the context for children to be able to inherit variant value\n <TypographyVariantContext.Provider value={props.variant}>{content}</TypographyVariantContext.Provider>\n ) : (\n content\n );\n\n content = props.weight ? (\n // If a weight is provided, we set it in the context for children to be able to inherit weight value\n <TypographyWeightContext.Provider value={props.weight}>{content}</TypographyWeightContext.Provider>\n ) : (\n content\n );\n\n content = props.color ? (\n // If a color is provided, we set it in the context for children to be able to inherit color value\n <TypograhyColorContext.Provider value={props.color}>{content}</TypograhyColorContext.Provider>\n ) : (\n content\n );\n\n return content;\n});\n\nexport const Typography = {\n Text: TypographyText,\n};\n","import { BreakpointNameEnum } from '../../../themes/utils/breakpoints';\n\nexport interface ValueForBreakpoint<T> {\n base: T;\n small?: T;\n medium?: T;\n large?: T;\n wide?: T;\n}\n\nexport function getValueForBreakpoint<T>(\n breakpoint: BreakpointNameEnum,\n { base, small, medium, large, wide }: ValueForBreakpoint<T>,\n): T {\n switch (breakpoint) {\n case BreakpointNameEnum.WIDE:\n return wide ?? large ?? medium ?? small ?? base;\n case BreakpointNameEnum.LARGE:\n return large ?? medium ?? small ?? base;\n case BreakpointNameEnum.MEDIUM:\n return medium ?? small ?? base;\n case BreakpointNameEnum.SMALL:\n return small ?? base;\n case BreakpointNameEnum.BASE:\n default:\n return base;\n }\n}\n","import { useMedia } from '@tamagui/core';\nimport { BreakpointNameEnum } from '../../../themes/utils/breakpoints';\n\nexport function useCurrentBreakpointName(): BreakpointNameEnum {\n const media = useMedia();\n\n switch (true) {\n case media.wide:\n return BreakpointNameEnum.WIDE;\n case media.large:\n return BreakpointNameEnum.LARGE;\n case media.medium:\n return BreakpointNameEnum.MEDIUM;\n case media.small:\n return BreakpointNameEnum.SMALL;\n case media.base:\n default:\n return BreakpointNameEnum.BASE;\n }\n}\n","import { useMemo } from 'react';\nimport type { ValueForBreakpoint } from '../utils/breakpointsUtils';\nimport { getValueForBreakpoint } from '../utils/breakpointsUtils';\nimport { useCurrentBreakpointName } from './useCurrentBreakpointName';\n\nexport function useBreakpointValue<T>(values: ValueForBreakpoint<T>): T {\n const breakpoint = useCurrentBreakpointName();\n\n return useMemo(() => {\n return getValueForBreakpoint(breakpoint, values);\n }, [breakpoint, values]);\n}\n","import type { ReactNode } from 'react';\nimport { useCurrentBreakpointName } from './hooks/useCurrentBreakpointName';\nimport type { ValueForBreakpoint } from './utils/breakpointsUtils';\nimport { getValueForBreakpoint } from './utils/breakpointsUtils';\n\nexport type SwitchBreakpointsProps = ValueForBreakpoint<ReactNode>;\n\nexport function SwitchBreakpoints(values: SwitchBreakpointsProps): ReactNode {\n const breakpoint = useCurrentBreakpointName();\n\n return getValueForBreakpoint(breakpoint, values);\n}\n","import { ToastViewport } from '@tamagui/toast';\nimport type { ToastViewportProps } from '@tamagui/toast';\nimport type { ReactNode } from 'react';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nexport interface SafeToastViewportProps {\n name?: ToastViewportProps['name'];\n position?: 'top' | 'bottom';\n portalToRoot?: boolean;\n}\n\nexport function SafeToastViewport({ name, position = 'top', portalToRoot = false }: SafeToastViewportProps): ReactNode {\n const { left, top, bottom, right } = useSafeAreaInsets();\n\n return (\n <ToastViewport\n multipleToasts\n portalToRoot={portalToRoot}\n name={name}\n top={position === 'top' ? top : undefined}\n bottom={position === 'bottom' ? bottom : undefined}\n left={left}\n right={right}\n />\n );\n}\n","import type { PropsWithChildren, ReactNode } from 'react';\nimport { createContext, useCallback, useContext, useMemo, useState } from 'react';\nimport type { ToastOptions } from './types';\n\ninterface ToastStore {\n toasts: ToastOptions[];\n addToast: (toast: ToastOptions) => void;\n removeToast: (id: string) => void;\n}\n\nconst useToastState = (): ToastStore => {\n const [toasts, setToasts] = useState<ToastOptions[]>([]);\n\n const removeToast = useCallback((id: string) => {\n setToasts((prevToasts) => prevToasts.filter((t) => t.id !== id));\n }, []);\n\n const addToast = useCallback((toast: ToastOptions) => {\n setToasts((prevToasts) => [...prevToasts, toast]);\n }, []);\n\n return { toasts, addToast, removeToast };\n};\n\nconst ToastStoreContext = createContext<ToastStore | undefined>(undefined);\n\nexport function ToastStoreProvider({ children }: PropsWithChildren): ReactNode {\n const { toasts, addToast, removeToast } = useToastState();\n\n const value = useMemo(() => ({ toasts, addToast, removeToast }), [toasts, addToast, removeToast]);\n\n return <ToastStoreContext.Provider value={value}>{children}</ToastStoreContext.Provider>;\n}\n\nexport const useToastStore = (): ToastStore => {\n const context = useContext(ToastStoreContext);\n if (!context) {\n throw new Error('useToastStore must be used within a ToastStoreProvider');\n }\n return context;\n};\n","import { useCallback } from 'react';\nimport { useToastStore } from './ToastStoreProvider';\nimport type { ToastOptions } from './types';\n\ninterface UseToastReturn {\n toasts: ToastOptions[];\n showToast: (options: ToastOptions) => void;\n hideToast: (id: string) => void;\n}\n\nexport function useToast(): UseToastReturn {\n const { toasts, addToast, removeToast } = useToastStore();\n\n const showToast = useCallback(\n (options: ToastOptions): void => {\n const { title, ...otherOptions } = options;\n const id = `${JSON.stringify(options)}${Math.random()}`;\n addToast({ id, title, ...otherOptions });\n },\n [addToast],\n );\n\n const hideToast = useCallback(\n (id: string): void => {\n removeToast(id);\n },\n [removeToast],\n );\n\n return {\n toasts,\n showToast,\n hideToast,\n };\n}\n","import { Toast } from '@tamagui/toast';\nimport type { ReactNode } from 'react';\nimport { useCallback } from 'react';\nimport type { ToastProps } from './types';\nimport { useToast } from './useToast';\n\ninterface ToastRendererProps {\n ToastComponent: React.ComponentType<ToastProps>;\n}\n\nexport function ToastRenderer({ ToastComponent }: ToastRendererProps): ReactNode {\n const { toasts, hideToast: removeToast } = useToast();\n\n const hideToast = useCallback(\n (id: string) => () => {\n removeToast(id);\n },\n [removeToast],\n );\n\n return toasts.map((toast) => (\n <Toast key={toast.id} id={toast.id} duration={toast.timeout} viewportName={toast.viewportName}>\n <ToastComponent {...toast} hideToast={hideToast(toast.id)} />\n </Toast>\n ));\n}\n","import { PortalProvider } from '@tamagui/portal';\nimport { ToastProvider as TamaguiToastProvider } from '@tamagui/toast';\nimport type { ReactNode } from 'react';\nimport { SafeToastViewport } from './SafeToastViewport';\nimport { ToastRenderer } from './ToastRenderer';\nimport { ToastStoreProvider } from './ToastStoreProvider';\nimport type { ToastProps } from './types';\n\nexport interface ToastProviderProps {\n children: React.ReactNode;\n position?: 'top' | 'bottom';\n viewportName?: string;\n ToastComponent: React.ComponentType<ToastProps>;\n}\n\nexport function ToastProvider({\n children,\n position = 'top',\n viewportName,\n ToastComponent,\n}: ToastProviderProps): ReactNode {\n return (\n <PortalProvider>\n <TamaguiToastProvider swipeDirection=\"horizontal\">\n <ToastStoreProvider>\n {children}\n <SafeToastViewport portalToRoot name={viewportName} position={position} />\n <ToastRenderer ToastComponent={ToastComponent} />\n </ToastStoreProvider>\n </TamaguiToastProvider>\n </PortalProvider>\n );\n}\n"],"names":["nativeAnimations","createNativeAnimations","fast","damping","mass","stiffness","medium","slow","webAnimations","createWebAnimations","createColorScale","colorScale","colorScales","deepPurple","beige","lightning","rainbow","pink","brick","orange","gold","sun","grey","blue","green","yellow","red","transformColorScalesToTokens","Object","fromEntries","entries","flatMap","colorName","map","scaleNumber","colorValue","deepPurpleColorPalette","_objectSpread","white","black","transparent","light","BreakpointNameEnum","breakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","BODY_VARIANTS","GTStandardFaces","normal","size","lineHeight","letterSpacing","weight","bold","semibold","regular","fonts","createFont","family","face","sizeTokens","spaceTokens","tokens","createTokens","color","space","config","createTamagui","GTStandard","themes","media","minWidth","settings","allowedStyleValues","disableSSR","styleCompat","autocompleteSpecificTokens","debug","animations","Platform","OS","BumperProvider","children","_jsx","TamaguiProvider","defaultTheme","BumperDecorator","makeDecorator","name","parameterName","wrapper","storyFn","context","HStack","styled","Stack","flexDirection","VStack","getVariantAndWeightValues","weightProp","variantProp","typographyWeightAncestorValue","typographyVariantAncestorValue","computedVariant","undefined","includes","computedWeight","variant","TypographyVariantContext","createContext","TypographyWeightContext","TypograhyColorContext","InternalTypography","Text","fontFamily","WebkitFontSmoothing","variants","fontSize","fontWeight","defaultVariants","TypographyText","styleable","props","ref","useContext","typographyColorAncestorValue","content","Provider","value","Typography","getValueForBreakpoint","breakpoint","base","small","large","wide","_ref","_ref2","_ref3","_ref4","_ref5","_ref6","useCurrentBreakpointName","useMedia","useBreakpointValue","values","useMemo","SwitchBreakpoints","SafeToastViewport","position","portalToRoot","left","top","bottom","right","useSafeAreaInsets","ToastViewport","multipleToasts","useToastState","toasts","setToasts","useState","removeToast","useCallback","id","prevToasts","filter","t","addToast","toast","ToastStoreContext","ToastStoreProvider","useToastStore","Error","useToast","showToast","options","title","otherOptions","_objectWithoutProperties","_excluded","JSON","stringify","Math","random","hideToast","ToastRenderer","ToastComponent","Toast","duration","timeout","viewportName","ToastProvider","PortalProvider","TamaguiToastProvider","swipeDirection","_jsxs"],"mappings":"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"}
|
|
@@ -4,9 +4,36 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const addons = require('@storybook/addons');
|
|
6
6
|
const core = require('@tamagui/core');
|
|
7
|
+
const reactNative = require('react-native');
|
|
8
|
+
const animationsCss = require('@tamagui/animations-css');
|
|
9
|
+
const animationsReactNative = require('@tamagui/animations-react-native');
|
|
7
10
|
const jsxRuntime = require('react/jsx-runtime');
|
|
8
11
|
const react = require('react');
|
|
9
|
-
const
|
|
12
|
+
const toast = require('@tamagui/toast');
|
|
13
|
+
const reactNativeSafeAreaContext = require('react-native-safe-area-context');
|
|
14
|
+
const portal = require('@tamagui/portal');
|
|
15
|
+
|
|
16
|
+
const nativeAnimations = animationsReactNative.createAnimations({
|
|
17
|
+
fast: {
|
|
18
|
+
damping: 20,
|
|
19
|
+
mass: 1.2,
|
|
20
|
+
stiffness: 250
|
|
21
|
+
},
|
|
22
|
+
medium: {
|
|
23
|
+
damping: 10,
|
|
24
|
+
mass: 0.9,
|
|
25
|
+
stiffness: 100
|
|
26
|
+
},
|
|
27
|
+
slow: {
|
|
28
|
+
damping: 20,
|
|
29
|
+
stiffness: 60
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
const webAnimations = animationsCss.createAnimations({
|
|
33
|
+
fast: 'ease-in 150ms',
|
|
34
|
+
medium: 'ease-in 300ms',
|
|
35
|
+
slow: 'ease-in 450ms'
|
|
36
|
+
});
|
|
10
37
|
|
|
11
38
|
const createColorScale = colorScale => colorScale;
|
|
12
39
|
|
|
@@ -187,6 +214,7 @@ const breakpoints = {
|
|
|
187
214
|
[BreakpointNameEnum.WIDE]: 1280
|
|
188
215
|
};
|
|
189
216
|
|
|
217
|
+
const BODY_VARIANTS = ['body-xl', 'body-l', 'body-m', 'body-s', 'body-xs'];
|
|
190
218
|
const GTStandardFaces = {
|
|
191
219
|
500: {
|
|
192
220
|
normal: 'GTStandardRegular'
|
|
@@ -326,7 +354,8 @@ const config = core.createTamagui({
|
|
|
326
354
|
styleCompat: 'react-native',
|
|
327
355
|
autocompleteSpecificTokens: true,
|
|
328
356
|
debug: false
|
|
329
|
-
}
|
|
357
|
+
},
|
|
358
|
+
animations: reactNative.Platform.OS === 'web' ? webAnimations : nativeAnimations
|
|
330
359
|
});
|
|
331
360
|
|
|
332
361
|
// make imports typed
|
|
@@ -351,6 +380,119 @@ const BumperDecorator = addons.makeDecorator({
|
|
|
351
380
|
}
|
|
352
381
|
});
|
|
353
382
|
|
|
383
|
+
const HStack = core.styled(core.Stack, {
|
|
384
|
+
name: 'HStack',
|
|
385
|
+
flexDirection: 'row'
|
|
386
|
+
});
|
|
387
|
+
const VStack = core.styled(core.Stack, {
|
|
388
|
+
name: 'VStack',
|
|
389
|
+
flexDirection: 'column'
|
|
390
|
+
});
|
|
391
|
+
|
|
392
|
+
function getVariantAndWeightValues(weightProp, variantProp, typographyWeightAncestorValue, typographyVariantAncestorValue) {
|
|
393
|
+
const computedVariant = variantProp || typographyVariantAncestorValue || undefined;
|
|
394
|
+
if (computedVariant) {
|
|
395
|
+
if (BODY_VARIANTS.includes(computedVariant)) {
|
|
396
|
+
const computedWeight = weightProp || typographyWeightAncestorValue || undefined;
|
|
397
|
+
return {
|
|
398
|
+
weight: computedWeight,
|
|
399
|
+
variant: computedVariant
|
|
400
|
+
};
|
|
401
|
+
}
|
|
402
|
+
return {
|
|
403
|
+
weight: 'semibold',
|
|
404
|
+
variant: computedVariant
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
return {
|
|
408
|
+
weight: weightProp,
|
|
409
|
+
variant: undefined
|
|
410
|
+
};
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
const TypographyVariantContext = /*#__PURE__*/react.createContext(null);
|
|
414
|
+
const TypographyWeightContext = /*#__PURE__*/react.createContext(null);
|
|
415
|
+
const TypograhyColorContext = /*#__PURE__*/react.createContext(null);
|
|
416
|
+
const InternalTypography = core.styled(core.Text, {
|
|
417
|
+
fontFamily: '$GTStandard',
|
|
418
|
+
color: '$content.base.hi',
|
|
419
|
+
'$platform-web': {
|
|
420
|
+
WebkitFontSmoothing: 'antialiased'
|
|
421
|
+
},
|
|
422
|
+
variants: {
|
|
423
|
+
variant: variant => {
|
|
424
|
+
if (!variant) return {};
|
|
425
|
+
return {
|
|
426
|
+
fontSize: `$${variant}`,
|
|
427
|
+
lineHeight: `$${variant}`,
|
|
428
|
+
letterSpacing: `$${variant}`
|
|
429
|
+
};
|
|
430
|
+
},
|
|
431
|
+
weight: {
|
|
432
|
+
regular: {
|
|
433
|
+
fontWeight: '$regular'
|
|
434
|
+
},
|
|
435
|
+
semibold: {
|
|
436
|
+
fontWeight: '$semibold'
|
|
437
|
+
},
|
|
438
|
+
bold: {
|
|
439
|
+
fontWeight: '$bold'
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
},
|
|
443
|
+
defaultVariants: {
|
|
444
|
+
variant: 'body-m',
|
|
445
|
+
weight: 'regular'
|
|
446
|
+
}
|
|
447
|
+
});
|
|
448
|
+
|
|
449
|
+
// Create a type for color props that matches strings containing '$content.'
|
|
450
|
+
|
|
451
|
+
// Remove font-related style props from InternalTypography Props
|
|
452
|
+
|
|
453
|
+
const TypographyText = InternalTypography.styleable((props, ref) => {
|
|
454
|
+
const typographyVariantAncestorValue = react.useContext(TypographyVariantContext);
|
|
455
|
+
const typographyWeightAncestorValue = react.useContext(TypographyWeightContext);
|
|
456
|
+
const typographyColorAncestorValue = react.useContext(TypograhyColorContext);
|
|
457
|
+
const {
|
|
458
|
+
variant,
|
|
459
|
+
weight
|
|
460
|
+
} = getVariantAndWeightValues(props.weight, props.variant, typographyWeightAncestorValue, typographyVariantAncestorValue);
|
|
461
|
+
const color = props.color || typographyColorAncestorValue || undefined;
|
|
462
|
+
let content = /*#__PURE__*/jsxRuntime.jsx(InternalTypography, {
|
|
463
|
+
ref: ref,
|
|
464
|
+
...props,
|
|
465
|
+
color: color,
|
|
466
|
+
weight: weight,
|
|
467
|
+
variant: variant
|
|
468
|
+
});
|
|
469
|
+
content = props.variant ?
|
|
470
|
+
/*#__PURE__*/
|
|
471
|
+
// If a variant is provided, we set it in the context for children to be able to inherit variant value
|
|
472
|
+
jsxRuntime.jsx(TypographyVariantContext.Provider, {
|
|
473
|
+
value: props.variant,
|
|
474
|
+
children: content
|
|
475
|
+
}) : content;
|
|
476
|
+
content = props.weight ?
|
|
477
|
+
/*#__PURE__*/
|
|
478
|
+
// If a weight is provided, we set it in the context for children to be able to inherit weight value
|
|
479
|
+
jsxRuntime.jsx(TypographyWeightContext.Provider, {
|
|
480
|
+
value: props.weight,
|
|
481
|
+
children: content
|
|
482
|
+
}) : content;
|
|
483
|
+
content = props.color ?
|
|
484
|
+
/*#__PURE__*/
|
|
485
|
+
// If a color is provided, we set it in the context for children to be able to inherit color value
|
|
486
|
+
jsxRuntime.jsx(TypograhyColorContext.Provider, {
|
|
487
|
+
value: props.color,
|
|
488
|
+
children: content
|
|
489
|
+
}) : content;
|
|
490
|
+
return content;
|
|
491
|
+
});
|
|
492
|
+
const Typography = {
|
|
493
|
+
Text: TypographyText
|
|
494
|
+
};
|
|
495
|
+
|
|
354
496
|
function getValueForBreakpoint(breakpoint, {
|
|
355
497
|
base,
|
|
356
498
|
small,
|
|
@@ -402,11 +544,153 @@ function SwitchBreakpoints(values) {
|
|
|
402
544
|
return getValueForBreakpoint(breakpoint, values);
|
|
403
545
|
}
|
|
404
546
|
|
|
547
|
+
function SafeToastViewport({
|
|
548
|
+
name,
|
|
549
|
+
position = 'top',
|
|
550
|
+
portalToRoot = false
|
|
551
|
+
}) {
|
|
552
|
+
const {
|
|
553
|
+
left,
|
|
554
|
+
top,
|
|
555
|
+
bottom,
|
|
556
|
+
right
|
|
557
|
+
} = reactNativeSafeAreaContext.useSafeAreaInsets();
|
|
558
|
+
return /*#__PURE__*/jsxRuntime.jsx(toast.ToastViewport, {
|
|
559
|
+
multipleToasts: true,
|
|
560
|
+
portalToRoot: portalToRoot,
|
|
561
|
+
name: name,
|
|
562
|
+
top: position === 'top' ? top : undefined,
|
|
563
|
+
bottom: position === 'bottom' ? bottom : undefined,
|
|
564
|
+
left: left,
|
|
565
|
+
right: right
|
|
566
|
+
});
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
const useToastState = () => {
|
|
570
|
+
const [toasts, setToasts] = react.useState([]);
|
|
571
|
+
const removeToast = react.useCallback(id => {
|
|
572
|
+
setToasts(prevToasts => prevToasts.filter(t => t.id !== id));
|
|
573
|
+
}, []);
|
|
574
|
+
const addToast = react.useCallback(toast => {
|
|
575
|
+
setToasts(prevToasts => [...prevToasts, toast]);
|
|
576
|
+
}, []);
|
|
577
|
+
return {
|
|
578
|
+
toasts,
|
|
579
|
+
addToast,
|
|
580
|
+
removeToast
|
|
581
|
+
};
|
|
582
|
+
};
|
|
583
|
+
const ToastStoreContext = /*#__PURE__*/react.createContext(undefined);
|
|
584
|
+
function ToastStoreProvider({
|
|
585
|
+
children
|
|
586
|
+
}) {
|
|
587
|
+
const {
|
|
588
|
+
toasts,
|
|
589
|
+
addToast,
|
|
590
|
+
removeToast
|
|
591
|
+
} = useToastState();
|
|
592
|
+
const value = react.useMemo(() => ({
|
|
593
|
+
toasts,
|
|
594
|
+
addToast,
|
|
595
|
+
removeToast
|
|
596
|
+
}), [toasts, addToast, removeToast]);
|
|
597
|
+
return /*#__PURE__*/jsxRuntime.jsx(ToastStoreContext.Provider, {
|
|
598
|
+
value: value,
|
|
599
|
+
children: children
|
|
600
|
+
});
|
|
601
|
+
}
|
|
602
|
+
const useToastStore = () => {
|
|
603
|
+
const context = react.useContext(ToastStoreContext);
|
|
604
|
+
if (!context) {
|
|
605
|
+
throw new Error('useToastStore must be used within a ToastStoreProvider');
|
|
606
|
+
}
|
|
607
|
+
return context;
|
|
608
|
+
};
|
|
609
|
+
|
|
610
|
+
function useToast() {
|
|
611
|
+
const {
|
|
612
|
+
toasts,
|
|
613
|
+
addToast,
|
|
614
|
+
removeToast
|
|
615
|
+
} = useToastStore();
|
|
616
|
+
const showToast = react.useCallback(options => {
|
|
617
|
+
const {
|
|
618
|
+
title,
|
|
619
|
+
...otherOptions
|
|
620
|
+
} = options;
|
|
621
|
+
const id = `${JSON.stringify(options)}${Math.random()}`;
|
|
622
|
+
addToast({
|
|
623
|
+
id,
|
|
624
|
+
title,
|
|
625
|
+
...otherOptions
|
|
626
|
+
});
|
|
627
|
+
}, [addToast]);
|
|
628
|
+
const hideToast = react.useCallback(id => {
|
|
629
|
+
removeToast(id);
|
|
630
|
+
}, [removeToast]);
|
|
631
|
+
return {
|
|
632
|
+
toasts,
|
|
633
|
+
showToast,
|
|
634
|
+
hideToast
|
|
635
|
+
};
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
function ToastRenderer({
|
|
639
|
+
ToastComponent
|
|
640
|
+
}) {
|
|
641
|
+
const {
|
|
642
|
+
toasts,
|
|
643
|
+
hideToast: removeToast
|
|
644
|
+
} = useToast();
|
|
645
|
+
const hideToast = react.useCallback(id => () => {
|
|
646
|
+
removeToast(id);
|
|
647
|
+
}, [removeToast]);
|
|
648
|
+
return toasts.map(toast$1 => /*#__PURE__*/jsxRuntime.jsx(toast.Toast, {
|
|
649
|
+
id: toast$1.id,
|
|
650
|
+
duration: toast$1.timeout,
|
|
651
|
+
viewportName: toast$1.viewportName,
|
|
652
|
+
children: /*#__PURE__*/jsxRuntime.jsx(ToastComponent, {
|
|
653
|
+
...toast$1,
|
|
654
|
+
hideToast: hideToast(toast$1.id)
|
|
655
|
+
})
|
|
656
|
+
}, toast$1.id));
|
|
657
|
+
}
|
|
658
|
+
|
|
659
|
+
function ToastProvider({
|
|
660
|
+
children,
|
|
661
|
+
position = 'top',
|
|
662
|
+
viewportName,
|
|
663
|
+
ToastComponent
|
|
664
|
+
}) {
|
|
665
|
+
return /*#__PURE__*/jsxRuntime.jsx(portal.PortalProvider, {
|
|
666
|
+
children: /*#__PURE__*/jsxRuntime.jsx(toast.ToastProvider, {
|
|
667
|
+
swipeDirection: "horizontal",
|
|
668
|
+
children: /*#__PURE__*/jsxRuntime.jsxs(ToastStoreProvider, {
|
|
669
|
+
children: [children, /*#__PURE__*/jsxRuntime.jsx(SafeToastViewport, {
|
|
670
|
+
portalToRoot: true,
|
|
671
|
+
name: viewportName,
|
|
672
|
+
position: position
|
|
673
|
+
}), /*#__PURE__*/jsxRuntime.jsx(ToastRenderer, {
|
|
674
|
+
ToastComponent: ToastComponent
|
|
675
|
+
})]
|
|
676
|
+
})
|
|
677
|
+
})
|
|
678
|
+
});
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
exports.Stack = core.Stack;
|
|
682
|
+
exports.View = core.View;
|
|
405
683
|
exports.useWindowSize = reactNative.useWindowDimensions;
|
|
406
684
|
exports.BumperDecorator = BumperDecorator;
|
|
407
685
|
exports.BumperProvider = BumperProvider;
|
|
686
|
+
exports.HStack = HStack;
|
|
408
687
|
exports.SwitchBreakpoints = SwitchBreakpoints;
|
|
688
|
+
exports.ToastProvider = ToastProvider;
|
|
689
|
+
exports.ToastViewport = SafeToastViewport;
|
|
690
|
+
exports.Typography = Typography;
|
|
691
|
+
exports.VStack = VStack;
|
|
409
692
|
exports.getValueForBreakpoint = getValueForBreakpoint;
|
|
410
693
|
exports.useBreakpointValue = useBreakpointValue;
|
|
411
694
|
exports.useCurrentBreakpointName = useCurrentBreakpointName;
|
|
695
|
+
exports.useToast = useToast;
|
|
412
696
|
//# sourceMappingURL=index-node-22.17.cjs.js.map
|