@ornikar/bumper 3.6.0 → 3.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/definitions/system/content/icon/Icon.d.ts.map +1 -1
  3. package/dist/definitions/system/content/typography/TypographyLink.d.ts +1 -1
  4. package/dist/definitions/system/content/typography/TypographyLink.d.ts.map +1 -1
  5. package/dist/index-metro.es.android.js +8 -3
  6. package/dist/index-metro.es.android.js.map +1 -1
  7. package/dist/index-metro.es.ios.js +8 -3
  8. package/dist/index-metro.es.ios.js.map +1 -1
  9. package/dist/index-node-22.22.cjs.js +7 -1
  10. package/dist/index-node-22.22.cjs.js.map +1 -1
  11. package/dist/index-node-22.22.cjs.web.js +7 -1
  12. package/dist/index-node-22.22.cjs.web.js.map +1 -1
  13. package/dist/index-node-22.22.es.mjs +7 -1
  14. package/dist/index-node-22.22.es.mjs.map +1 -1
  15. package/dist/index-node-22.22.es.web.mjs +7 -1
  16. package/dist/index-node-22.22.es.web.mjs.map +1 -1
  17. package/dist/index.es.js +8 -3
  18. package/dist/index.es.js.map +1 -1
  19. package/dist/index.es.web.js +8 -3
  20. package/dist/index.es.web.js.map +1 -1
  21. package/dist/tsbuildinfo +1 -1
  22. package/package.json +1 -1
  23. package/src/system/content/icon/Icon.features.stories.tsx +19 -0
  24. package/src/system/content/icon/Icon.mdx +6 -0
  25. package/src/system/content/icon/Icon.tsx +9 -1
  26. package/src/system/content/icon/__snapshots__/Icon.features.stories.tsx.snap +99 -0
  27. package/src/system/content/icon/__snapshots_web__/Icon.features.stories.tsx.snap +62 -0
  28. package/src/system/content/typography/TypographyLink.features.stories.tsx +8 -0
  29. package/src/system/content/typography/TypographyLink.mdx +8 -2
  30. package/src/system/content/typography/TypographyLink.stories.tsx +6 -1
  31. package/src/system/content/typography/TypographyLink.tsx +2 -1
  32. package/src/system/content/typography/__snapshots__/TypographyLink.features.stories.tsx.snap +48 -0
  33. package/src/system/content/typography/__snapshots_web__/TypographyLink.features.stories.tsx.snap +58 -33
  34. package/src/system/content/typography/__snapshots_web__/TypographyLink.stories.tsx.snap +2 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index-node-22.22.es.mjs","sources":["../src/system/core/tokens/palettes/deepPurpleColorPalette.ts","../src/system/core/themes/light/light.ts","../src/system/core/themes/index.ts","../src/system/core/tokens/GTStandardFont.ts","../src/system/core/tokens/GTStandardNarrowFont.ts","../src/system/core/tokens/breakpoints.ts","../src/system/core/tokens/bumperIcon.ts","../src/system/core/tokens/radius.ts","../src/system/core/tokens/size.ts","../src/system/core/tokens/space.ts","../src/tamagui.config.ts","../src/system/core/provider/BumperProvider.tsx","../src/system/core/primitives/Center.ts","../src/system/core/primitives/Pressable.tsx","../src/system/core/primitives/Stack.tsx","../src/system/core/hooks/useProps.ts","../src/system/loading/loader/loaderConfig.ts","../src/system/loading/loader/LoaderBackgroundCircle.tsx","../src/system/loading/loader/LoaderCircleWrapper.tsx","../src/system/loading/loader/LoaderForegroundCircle.tsx","../src/system/loading/loader/Loader.tsx","../src/system/content/typography/utils/typographyContext.ts","../src/system/content/typography/Typography.tsx","../src/system/dataDisplays/Badge/Badge.tsx","../src/system/actions/Button/components/ButtonBadge.tsx","../src/system/content/icon/Icon.tsx","../src/system/actions/Button/context.ts","../src/system/actions/Button/utils/contentColor.ts","../src/system/actions/Button/components/ButtonIcon.tsx","../src/system/content/typography/TypographyView.tsx","../src/system/content/typography/TypographyIcon.tsx","../src/system/content/typography/TypographyLink.tsx","../src/system/content/typography/index.ts","../src/system/actions/Button/components/ButtonText.tsx","../src/system/actions/Button/Button.tsx","../src/system/actions/IconButton/IconButton.tsx","../src/system/core/breakpoints/utils/breakpointsUtils.ts","../src/system/core/breakpoints/hooks/useCurrentBreakpointName.ts","../src/system/core/breakpoints/hooks/useBreakpointValue.ts","../src/system/core/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 | 4 | 6 | 7;\n green: 1 | 2 | 6 | 7;\n yellow: 1 | 2 | 6 | 7;\n red: 1 | 2 | 6 | 7;\n mauve: 1 | 2 | 3 | 4;\n 'deepPurple-alpha': '10';\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 4: '#72BAEB',\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: '#E2483D',\n 7: '#BD100F',\n }),\n mauve: createColorScale({\n 1: '#F8E7FF',\n 2: '#F1D0FB',\n 3: '#E4A4F9',\n 4: '#D283EC',\n }),\n 'deepPurple-alpha': createColorScale({\n '10': '#6E4D6E10',\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","// WARNING\n// If you modify this theme, don't forget to update the theme in @ornikar/kitt-universal as well\n\nimport { deepPurpleColorPalette } from '../../tokens/palettes/deepPurpleColorPalette';\nimport type { Theme } from '../types';\n\n// https://github.com/ornikar/kitt/blob/79e367e962c957c016c4df67dbcf515c8f45ff0e/@ornikar/kitt-universal/src/themes/late-ocean/colors.ts#L28\nexport const light: Theme = {\n // content\n 'content.base.low': deepPurpleColorPalette['grey.5'],\n 'content.base.mid': deepPurpleColorPalette['grey.7'],\n 'content.base.hi': deepPurpleColorPalette['grey.9'],\n 'content.base.onContrasted.low': deepPurpleColorPalette['white-alpha.60'],\n 'content.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.80'],\n 'content.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\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.low.default': deepPurpleColorPalette['grey.0'],\n 'bg.base.low.pressed': deepPurpleColorPalette['beige.1'],\n 'bg.base.mid.default': deepPurpleColorPalette['beige.1'],\n 'bg.base.mid.pressed': deepPurpleColorPalette['beige.2'],\n 'bg.base.hi.default': deepPurpleColorPalette['beige.2'],\n 'bg.base.hi.pressed': deepPurpleColorPalette['beige.3'],\n 'bg.accent.default': deepPurpleColorPalette['deepPurple.8'],\n 'bg.accent.pressed': deepPurpleColorPalette['deepPurple.7'],\n 'bg.promo.mid.default': deepPurpleColorPalette['lightning.5'],\n 'bg.promo.mid.pressed': deepPurpleColorPalette['lightning.4'],\n 'bg.promo.hi.default': deepPurpleColorPalette['lightning.9'],\n 'bg.promo.hi.pressed': deepPurpleColorPalette['lightning.8'],\n 'bg.highlight.mid.default': deepPurpleColorPalette['mauve.1'],\n 'bg.highlight.mid.pressed': deepPurpleColorPalette['mauve.2'],\n 'bg.highlight.hi.default': deepPurpleColorPalette['mauve.3'],\n 'bg.highlight.hi.pressed': deepPurpleColorPalette['mauve.4'],\n 'bg.info.mid': deepPurpleColorPalette['blue.1'],\n 'bg.info.hi': deepPurpleColorPalette['blue.6'],\n 'bg.success.mid': deepPurpleColorPalette['green.1'],\n 'bg.success.hi': deepPurpleColorPalette['green.6'],\n 'bg.warning.mid': deepPurpleColorPalette['yellow.1'],\n 'bg.warning.hi': deepPurpleColorPalette['yellow.6'],\n 'bg.danger.mid': deepPurpleColorPalette['red.1'],\n 'bg.danger.hi': deepPurpleColorPalette['red.6'],\n 'bg.disabled.mid': deepPurpleColorPalette['grey.1'],\n 'bg.disabled.hi': deepPurpleColorPalette['grey.3'],\n 'bg.overlay': deepPurpleColorPalette['grey-alpha.50'],\n\n // borders\n 'border.base.low': deepPurpleColorPalette['beige.2'],\n 'border.base.mid': deepPurpleColorPalette['beige.3'],\n 'border.base.hi': deepPurpleColorPalette['grey.9'],\n 'border.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.20'],\n 'border.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\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 'border.highlight': deepPurpleColorPalette['mauve.3'],\n 'border.focus': deepPurpleColorPalette['blue.4'],\n 'border.transparent': deepPurpleColorPalette.transparent,\n\n // Buttons\n 'button.bg.primary.default': deepPurpleColorPalette['deepPurple.8'],\n 'button.bg.primary.pressed': deepPurpleColorPalette['deepPurple.7'],\n 'button.bg.primary.onContrasted.default': deepPurpleColorPalette['grey.0'],\n 'button.bg.primary.onContrasted.pressed': deepPurpleColorPalette['white-alpha.80'],\n 'button.bg.secondary.default': deepPurpleColorPalette.transparent,\n 'button.bg.secondary.pressed': deepPurpleColorPalette['deepPurple-alpha.10'],\n 'button.bg.secondary.onContrasted.default': deepPurpleColorPalette.transparent,\n 'button.bg.secondary.onContrasted.pressed': deepPurpleColorPalette['white-alpha.10'],\n 'button.bg.tertiary.default': deepPurpleColorPalette.transparent,\n 'button.bg.tertiary.pressed': deepPurpleColorPalette['deepPurple-alpha.10'],\n 'button.bg.tertiary.onContrasted.default': deepPurpleColorPalette.transparent,\n 'button.bg.tertiary.onContrasted.pressed': deepPurpleColorPalette['white-alpha.10'],\n 'button.bg.danger.default': deepPurpleColorPalette.transparent,\n 'button.bg.danger.pressed': deepPurpleColorPalette['red.1'],\n 'button.bg.danger.onContrasted.default': deepPurpleColorPalette.white,\n 'button.bg.danger.onContrasted.pressed': deepPurpleColorPalette['red.1'],\n};\n","import { light } from './light/light';\n\nexport const themes = {\n light,\n};\n","export const HEADING_VARIANTS = [\n 'heading-2xl',\n 'heading-xl',\n 'heading-l',\n 'heading-m',\n 'heading-s',\n 'heading-xs',\n 'heading-2xs',\n] as const;\nexport const BODY_VARIANTS = ['body-xl', 'body-l', 'body-m', 'body-s', 'body-xs'] as const;\nexport const LABEL_VARIANTS = ['label-l', 'label-m', 'label-s'] as const;\n\nexport type GTStandardVariants =\n | (typeof HEADING_VARIANTS)[number]\n | (typeof BODY_VARIANTS)[number]\n | (typeof LABEL_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\nexport const GTStandardFaces: Record<GTStandardFontWeight, Record<string, string>> = {\n 500: { normal: 'GTStandardRegular' },\n 600: { normal: 'GTStandardSemibold' },\n 700: { normal: 'GTStandardBold' },\n};\n\nexport const GTStandardSizes: Record<GTStandardVariants, number> = {\n 'heading-2xl': 56,\n 'heading-xl': 48,\n 'heading-l': 38,\n 'heading-m': 28,\n 'heading-s': 24,\n 'heading-xs': 20,\n 'heading-2xs': 16,\n 'body-xl': 24,\n 'body-l': 18,\n 'body-m': 16,\n 'body-s': 14,\n 'body-xs': 12,\n 'label-l': 16,\n 'label-m': 14,\n 'label-s': 12,\n};\n\nexport const GTStandardLineHeights: Record<GTStandardVariants, number> = {\n 'heading-2xl': 64,\n 'heading-xl': 56,\n 'heading-l': 44,\n 'heading-m': 32,\n 'heading-s': 28,\n 'heading-xs': 24,\n 'heading-2xs': 20,\n 'body-xl': 32,\n 'body-l': 26,\n 'body-m': 24,\n 'body-s': 20,\n 'body-xs': 16,\n 'label-l': 20,\n 'label-m': 18,\n 'label-s': 14,\n};\n\nexport const GTStandardLetterSpacings: Record<GTStandardVariants, 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 'heading-2xs': 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-l': 0,\n 'label-m': 0,\n 'label-s': 0,\n};\n\nexport const GTStandardWeights: Record<string, GTStandardFontWeight> = {\n bold: '700',\n semibold: '600',\n regular: '500',\n};\n","export const CONTENT_CAPS_VARIANTS = [\n 'content-caps-3xl',\n 'content-caps-2xl',\n 'content-caps-xl',\n 'content-caps-l',\n 'content-caps-m',\n 'content-caps-s',\n 'content-caps-xs',\n] as const;\n\nexport type ContentCapsVariants = (typeof CONTENT_CAPS_VARIANTS)[number];\n\nexport type GTStandardNarrowFontWeight = '700';\n\nexport const GTStandardNarrowFaces: Record<GTStandardNarrowFontWeight, Record<string, string>> = {\n 700: { normal: 'GTStandardNarrowBold' },\n};\n\nexport const GTStandardNarrowSizes: Record<ContentCapsVariants, number> = {\n 'content-caps-3xl': 40,\n 'content-caps-2xl': 32,\n 'content-caps-xl': 24,\n 'content-caps-l': 18,\n 'content-caps-m': 16,\n 'content-caps-s': 14,\n 'content-caps-xs': 12,\n};\n\nexport const GTStandardNarrowLineHeights: Record<ContentCapsVariants, number> = {\n 'content-caps-3xl': 40,\n 'content-caps-2xl': 40,\n 'content-caps-xl': 28,\n 'content-caps-l': 20,\n 'content-caps-m': 18,\n 'content-caps-s': 16,\n 'content-caps-xs': 14,\n};\n\nexport const GTStandardNarrowLetterSpacings: Record<ContentCapsVariants, number> = {\n 'content-caps-3xl': 0,\n 'content-caps-2xl': 0,\n 'content-caps-xl': 0,\n 'content-caps-l': 0,\n 'content-caps-m': 0,\n 'content-caps-s': 0,\n 'content-caps-xs': 0,\n};\n\nexport const GTStandardNarrowWeights: Record<string, GTStandardNarrowFontWeight> = {\n bold: '700',\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 type { GetTokenString, TamaguiConfig } from '@tamagui/core';\nimport { px } from '@tamagui/core';\n\nexport const bumperIconTokens = {\n 'icon.s': px(16),\n 'icon.m': px(20),\n 'icon.l': px(24),\n};\n\nexport type BumperIconTokens = GetTokenString<keyof TamaguiConfig['tokens']['bumperIcon']>;\n","export const radiusTokens = {\n 'radius.none': 0,\n 'radius.s': 2,\n 'radius.m': 4,\n 'radius.l': 8,\n 'radius.circle': 1000,\n};\n","export const sizeTokens = {\n 'size.16': 16,\n 'size.20': 20,\n 'size.24': 24,\n 'size.32': 32,\n 'size.48': 48,\n 'size.64': 64,\n 'size.80': 80,\n 'size.96': 96,\n 'size.120': 120,\n 'size.144': 144,\n 'size.176': 176,\n 'size.208': 208,\n};\n","export const spaceTokens = {\n 'space.none': 0,\n 'space.2': 2,\n 'space.4': 4,\n 'space.8': 8,\n 'space.12': 12,\n 'space.16': 16,\n 'space.24': 24,\n 'space.32': 32,\n 'space.40': 40,\n 'space.48': 48,\n 'space.56': 56,\n 'space.64': 64,\n 'space.80': 80,\n};\n","import { createFont, createTamagui, createTokens } from '@tamagui/core';\nimport { themes } from './system/core/themes';\nimport {\n GTStandardFaces,\n GTStandardLetterSpacings,\n GTStandardLineHeights,\n GTStandardSizes,\n GTStandardWeights,\n} from './system/core/tokens/GTStandardFont';\nimport {\n GTStandardNarrowFaces,\n GTStandardNarrowLetterSpacings,\n GTStandardNarrowLineHeights,\n GTStandardNarrowSizes,\n GTStandardNarrowWeights,\n} from './system/core/tokens/GTStandardNarrowFont';\nimport { BreakpointNameEnum, breakpoints } from './system/core/tokens/breakpoints';\nimport { bumperIconTokens } from './system/core/tokens/bumperIcon';\nimport { radiusTokens } from './system/core/tokens/radius';\nimport { sizeTokens } from './system/core/tokens/size';\nimport { spaceTokens } from './system/core/tokens/space';\n\nexport const GTStandardFont = createFont({\n family: 'GTStandard',\n size: GTStandardSizes,\n lineHeight: GTStandardLineHeights,\n letterSpacing: GTStandardLetterSpacings,\n weight: GTStandardWeights,\n face: GTStandardFaces,\n});\n\nexport const GTStandardNarrowFont = createFont({\n family: 'GTStandardNarrow',\n size: GTStandardNarrowSizes,\n lineHeight: GTStandardNarrowLineHeights,\n letterSpacing: GTStandardNarrowLetterSpacings,\n weight: GTStandardNarrowWeights,\n face: GTStandardNarrowFaces,\n});\n\nconst tokens = createTokens({\n color: {},\n space: spaceTokens,\n size: sizeTokens,\n radius: radiusTokens,\n bumperIcon: bumperIconTokens,\n});\n\nexport const config = createTamagui({\n tokens,\n fonts: {\n GTStandard: GTStandardFont,\n GTStandardNarrow: GTStandardNarrowFont,\n },\n themes,\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: 'except-special',\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 { styled } from '@tamagui/core';\nimport type { ViewProps } from './View';\nimport { View } from './View';\n\nexport interface CenterProps extends ViewProps {}\n\nexport const Center = styled(View, {\n justifyContent: 'center',\n alignItems: 'center',\n});\n","import type { GetProps, TamaguiComponent } from '@tamagui/core';\nimport { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport { View } from './View';\n\nexport type PressableProps<C extends TamaguiComponent = typeof View> = {\n /**\n * The Tamagui component to render as (`View`, `Stack`, etc.).\n *\n * @default View\n */\n as?: C;\n} & Except<GetProps<C>, 'as'>;\n\n/**\n * A polymorphic Pressable component that can render as any Tamagui primitive.\n */\nexport function Pressable<C extends TamaguiComponent = typeof View>({ as, ...rest }: PressableProps<C>): ReactNode {\n const Component = styled(as ?? View, {\n name: 'Pressable',\n role: 'button',\n cursor: 'pointer',\n });\n\n return <Component {...(rest as GetProps<C>)} />;\n}\n","import type { GetProps } from '@tamagui/core';\nimport { Stack, styled } from '@tamagui/core';\n\nexport type { StackProps } from '@tamagui/core';\nexport { Stack } from '@tamagui/core';\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","// eslint-disable-next-line no-restricted-imports\nimport { useProps as usePropsTamagui } from '@tamagui/core';\nimport type { PropsWithoutMediaStyles } from '../../types';\n\n// This hook is a wrapper around Tamagui's useProps to extract only the non-media props from the given props object.\n// It uses our custom PropsWithoutMediaStyles type to ensure that all media props are optional, even if they are required in the original props type. This is necessary for our components which have required media props (like variant for Typography).\nexport function useProps<P extends object>(props: P): PropsWithoutMediaStyles<P> {\n return usePropsTamagui(props) as unknown as PropsWithoutMediaStyles<P>;\n}\n","import { Easing } from 'react-native-reanimated';\n\nexport type LoaderSize = 'icon' | 'page';\ninterface LoaderConfig {\n size: number;\n strokeWidth: number;\n center: number;\n radius: number;\n circumference: number;\n viewBox: string;\n}\n\nfunction createLoaderSizeConfig(size: number, strokeWidth: number): LoaderConfig {\n const center = size / 2;\n const radius = center - strokeWidth;\n const circumference = 2 * Math.PI * radius;\n\n return {\n size,\n strokeWidth,\n center,\n radius,\n circumference,\n viewBox: `0 0 ${size} ${size}`,\n };\n}\n\nexport const LOADER_SIZE_CONFIG: Record<LoaderSize, LoaderConfig> = {\n icon: createLoaderSizeConfig(20, 1.5),\n page: createLoaderSizeConfig(48, 3),\n};\n\nexport const LOADER_ANIMATION = {\n duration: 2000,\n easing: Easing.inOut(Easing.ease),\n};\n","import { styled } from '@tamagui/core';\nimport { Circle } from 'react-native-svg';\nimport { LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst { icon, page } = LOADER_SIZE_CONFIG;\n\nexport const LoaderBackgroundCircle = styled(Circle, {\n fill: 'none',\n variants: {\n size: {\n icon: { strokeWidth: icon.strokeWidth, cx: icon.center, cy: icon.center, r: icon.radius },\n page: { strokeWidth: page.strokeWidth, cx: page.center, cy: page.center, r: page.radius },\n },\n } as const,\n});\n","import { styled } from '@tamagui/core';\nimport Svg from 'react-native-svg';\nimport { LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst { icon, page } = LOADER_SIZE_CONFIG;\n\nexport const LoaderCircleWrapper = styled(Svg, {\n variants: {\n size: {\n icon: { width: icon.size, height: icon.size, viewBox: icon.viewBox },\n page: { width: page.size, height: page.size, viewBox: page.viewBox },\n },\n isForeground: {\n true: {\n position: 'absolute',\n },\n },\n } as const,\n});\n","import type { ReactNode } from 'react';\nimport type { SharedValue } from 'react-native-reanimated';\nimport Animated, { useAnimatedProps } from 'react-native-reanimated';\nimport { Circle } from 'react-native-svg';\nimport type { LoaderSize } from './loaderConfig';\nimport { LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst AnimatedCircle = Animated.createAnimatedComponent(Circle);\n\ninterface LoaderForegroundCircleProps {\n color: string;\n size: LoaderSize;\n progress: SharedValue<number>;\n}\n\nexport function LoaderForegroundCircle({ color, size, progress }: LoaderForegroundCircleProps): ReactNode {\n const { center, radius, circumference, strokeWidth } = LOADER_SIZE_CONFIG[size];\n\n const animatedProps = useAnimatedProps(\n () => ({\n strokeDashoffset: circumference - 2 * circumference * progress.value,\n }),\n [circumference, progress],\n );\n\n return (\n <AnimatedCircle\n cx={center}\n cy={center}\n r={radius}\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n fill=\"none\"\n strokeDasharray={circumference}\n animatedProps={animatedProps}\n />\n );\n}\n","import { styled, useStyle } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { useEffect } from 'react';\nimport { useSharedValue, withRepeat, withTiming } from 'react-native-reanimated';\nimport { View } from '../../core/primitives/View';\nimport type { TamaguiMediaProps } from '../../types';\nimport { LoaderBackgroundCircle } from './LoaderBackgroundCircle';\nimport { LoaderCircleWrapper } from './LoaderCircleWrapper';\nimport { LoaderForegroundCircle } from './LoaderForegroundCircle';\nimport type { LoaderSize } from './loaderConfig';\nimport { LOADER_ANIMATION, LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst { icon, page } = LOADER_SIZE_CONFIG;\n\nconst LoaderContainer = styled(View, {\n name: 'Loader',\n position: 'relative',\n rotate: '-90deg',\n variants: {\n size: {\n icon: { width: icon.size, height: icon.size },\n page: { width: page.size, height: page.size },\n },\n } as const,\n});\n\ninterface InternalLoaderProps {\n /** The size of the loader. `'icon'` renders a small 20px loader, `'page'` renders a larger 48px loader.\n * @default 'page'\n * */\n size?: LoaderSize;\n /** Whether the loader is displayed on a contrasted (dark) background. When `true`, uses a high-contrast foreground color.\n * @default false\n * */\n isOnContrasted?: boolean;\n /** Test ID passed to the root container for testing purposes. */\n testID?: string;\n}\n\nexport type LoaderProps = TamaguiMediaProps<InternalLoaderProps>;\n\nexport function Loader({ size = 'page', isOnContrasted = false, testID }: LoaderProps): ReactNode {\n const backgroundStyle = useStyle({ color: '$border.base.mid' });\n const foregroundStyle = useStyle({\n color: isOnContrasted ? '$border.base.onContrasted.hi' : '$content.accent',\n });\n\n const progress = useSharedValue(0);\n\n useEffect(() => {\n progress.value = withRepeat(withTiming(1, LOADER_ANIMATION), -1, false);\n }, [progress]);\n\n return (\n <LoaderContainer size={size} testID={testID}>\n <LoaderCircleWrapper size={size}>\n <LoaderBackgroundCircle size={size} stroke={backgroundStyle.color} />\n </LoaderCircleWrapper>\n\n <LoaderCircleWrapper isForeground size={size}>\n <LoaderForegroundCircle color={String(foregroundStyle.color)} size={size} progress={progress} />\n </LoaderCircleWrapper>\n </LoaderContainer>\n );\n}\n","import type { ColorTokens } from '@tamagui/core';\nimport { createStyledContext } from '@tamagui/core';\nimport type { FontVariants } from '../../../core/tokens/fonts';\n\nexport type TypographyVariantContextValue = FontVariants | undefined;\nexport type TypographyWeightContextValue = 'regular' | 'bold' | 'semibold' | undefined;\nexport type TypograhyColorContextValue = ColorTokens | undefined;\n\nexport const typographyStyleContext = createStyledContext<{\n color: TypograhyColorContextValue;\n weight: TypographyWeightContextValue;\n variant: TypographyVariantContextValue;\n}>({\n color: undefined,\n weight: undefined,\n variant: undefined,\n});\n","import type { ColorTokens, GetProps } from '@tamagui/core';\nimport { Text, styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { type Except } from 'type-fest';\nimport {\n BODY_VARIANTS,\n type BodyFontVariants,\n HEADING_VARIANTS,\n type HeadingFontVariants,\n LABEL_VARIANTS,\n type LabelFontVariants,\n} from '../../core/tokens/GTStandardFont';\nimport { CONTENT_CAPS_VARIANTS, type ContentCapsVariants } from '../../core/tokens/GTStandardNarrowFont';\nimport type { FontVariants } from '../../core/tokens/fonts';\nimport type { TamaguiMediaProps } from '../../types';\nimport { typographyStyleContext } from './utils/typographyContext';\n\ninterface TypographyWithoutMediaProps extends TypographyPropsWithoutFontStyleProps {}\n\n// Remove font-related style props from InternalTypography Props\ntype TypographyExcludedFontStyleProps =\n | 'fontFamily'\n | 'fontSize'\n | 'lineHeight'\n | 'fontStyle'\n | 'fontVariant'\n | 'fontWeight'\n | 'color';\n\ntype TypographyPropsWithoutFontStyleProps = Except<InternalTypographyProps, TypographyExcludedFontStyleProps> & {\n color?: ColorTokens;\n};\n\nexport interface BodyProps extends TypographyWithoutMediaProps {\n variant?: BodyFontVariants;\n weight?: 'regular' | 'bold';\n}\nexport interface HeadingLabelProps extends TypographyWithoutMediaProps {\n variant: HeadingFontVariants | LabelFontVariants;\n weight?: 'semibold';\n}\nexport interface ContentCapsProps extends TypographyWithoutMediaProps {\n variant: ContentCapsVariants;\n weight?: 'bold';\n}\n\nexport type TypographyTextProps =\n | TamaguiMediaProps<BodyProps>\n | TamaguiMediaProps<HeadingLabelProps>\n | TamaguiMediaProps<ContentCapsProps>;\n\nexport const InternalTypography = styled(Text, {\n context: typographyStyleContext,\n fontFamily: '$GTStandard',\n fontSize: '$body-m',\n lineHeight: '$body-m',\n letterSpacing: '$body-m',\n fontWeight: '$regular',\n color: '$content.base.hi',\n '$platform-web': {\n WebkitFontSmoothing: 'antialiased',\n },\n variants: {\n variant: (variant: FontVariants) => {\n const commonVariantStyles = {\n fontSize: `$${variant}`,\n lineHeight: `$${variant}`,\n letterSpacing: `$${variant}`,\n };\n\n // Body variant\n if ((BODY_VARIANTS as readonly string[]).includes(variant)) {\n return {\n ...commonVariantStyles,\n };\n }\n // Content Caps variant\n if ((CONTENT_CAPS_VARIANTS as readonly string[]).includes(variant)) {\n return {\n fontFamily: '$GTStandardNarrow',\n textTransform: 'uppercase',\n fontWeight: '$bold',\n ...commonVariantStyles,\n };\n }\n // Heading variants\n if ((HEADING_VARIANTS as readonly string[]).includes(variant)) {\n return {\n fontWeight: '$semibold',\n ...commonVariantStyles,\n };\n }\n // Label variants\n if ((LABEL_VARIANTS as readonly string[]).includes(variant)) {\n return {\n fontWeight: '$semibold',\n ...commonVariantStyles,\n };\n }\n\n return undefined;\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 weight: 'regular',\n },\n});\n\nexport type InternalTypographyProps = GetProps<typeof InternalTypography>;\n\nexport function TypographyBase(props: TypographyTextProps): ReactNode {\n return <InternalTypography {...props} />;\n}\n\nexport const createHeading = (level: number): ((props: TypographyTextProps) => ReactNode) => {\n // eslint-disable-next-line func-names\n return function (props: TypographyTextProps): ReactNode {\n return <InternalTypography role=\"heading\" aria-level={level} {...props} />;\n };\n};\n","import { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { InternalTypography } from '../../content/typography/Typography';\nimport { useProps } from '../../core/hooks/useProps';\nimport { Center } from '../../core/primitives/Center';\nimport type { TamaguiMediaProps } from '../../types';\n\nexport interface BadgeWithoutMediaProps {\n /** The count to display. If undefined, it renders as a dot. */\n count?: number;\n /**\n * Maximum count to display. Shows \"{max}+\" when count exceeds max.\n * @default 9\n */\n maxCount?: number;\n}\n\nexport type BadgeProps = TamaguiMediaProps<BadgeWithoutMediaProps>;\n\nconst DOT_SIZE = 8;\nconst MIN_COUNT_WIDTH = 16;\n\nconst BadgeBase = styled(Center, {\n borderRadius: '$radius.circle',\n backgroundColor: '$bg.danger.hi',\n});\n\nconst BadgeDot = styled(BadgeBase, {\n width: DOT_SIZE,\n height: DOT_SIZE,\n});\n\nconst BadgeCount = styled(BadgeBase, {\n alignSelf: 'flex-start',\n minWidth: MIN_COUNT_WIDTH,\n minHeight: MIN_COUNT_WIDTH,\n paddingHorizontal: '$space.4',\n});\n\nexport function Badge(props: BadgeProps): ReactNode {\n const { count, maxCount = 9 } = useProps(props);\n\n if (count === undefined) {\n return <BadgeDot />;\n }\n\n const displayCount = count > maxCount ? `${maxCount}+` : `${count}`;\n\n return (\n <BadgeCount>\n <InternalTypography\n variant=\"content-caps-xs\"\n weight=\"bold\"\n color=\"$content.base.onContrasted.hi\"\n // Adjust the line-height of the component\n paddingBottom={1}\n >\n {displayCount}\n </InternalTypography>\n </BadgeCount>\n );\n}\n","import type { ReactNode } from 'react';\nimport { View } from '../../../core/primitives/View';\nimport type { BadgeProps } from '../../../dataDisplays/Badge/Badge';\nimport { Badge } from '../../../dataDisplays/Badge/Badge';\n\nexport interface ButtonBadgeProps extends Pick<BadgeProps, 'count' | 'maxCount'> {}\n\nexport function ButtonBadge(props: ButtonBadgeProps): ReactNode {\n // Dot badge (no count) is inset by 4px; numbered badge overflows by 4px\n const offset = props.count === undefined ? 4 : -4;\n\n return (\n <View position=\"absolute\" top={offset} right={offset}>\n <Badge {...props} />\n </View>\n );\n}\n","import type { ColorTokens, GetProps } from '@tamagui/core';\nimport { styled, useStyle } from '@tamagui/core';\nimport type { ReactElement, ReactNode } from 'react';\nimport { cloneElement } from 'react';\nimport { useProps } from '../../core/hooks/useProps';\nimport { View } from '../../core/primitives/View';\nimport type { BumperIconTokens } from '../../core/tokens/bumperIcon';\nimport type { TamaguiMediaProps } from '../../types';\n\nconst IconContainer = styled(View, {\n name: 'Icon',\n variants: {\n size: (iconSize: BumperIconTokens, { tokens }) => {\n return {\n width: tokens.bumperIcon[iconSize],\n height: tokens.bumperIcon[iconSize],\n };\n },\n } as const,\n});\n\ntype IconContainerProps = GetProps<typeof IconContainer>;\n\nexport interface IconElementProps {\n color?: ColorTokens;\n}\n\ninterface InternalIconProps {\n icon: ReactElement<IconElementProps>;\n color?: ColorTokens;\n size?: IconContainerProps['size'];\n testID?: IconContainerProps['testID'];\n /** @ignore */\n alignSelf?: IconContainerProps['alignSelf'];\n}\n\nexport type IconProps = TamaguiMediaProps<InternalIconProps>;\n\nexport const InternalIcon = IconContainer.styleable<IconProps>((props) => {\n const flattenProps = useProps(props);\n const style = useStyle({ color: flattenProps.color || '$content.base.hi' });\n\n const clonedIcon = cloneElement(flattenProps.icon, { color: style.color });\n\n return (\n <IconContainer size={flattenProps.size} testID={flattenProps.testID} alignSelf={flattenProps.alignSelf}>\n {clonedIcon}\n </IconContainer>\n );\n});\n\nexport function Icon(props: IconProps): ReactNode {\n return <InternalIcon {...props} />;\n}\n","import { createStyledContext } from '@tamagui/core';\nimport type { ButtonWithoutMediaProps } from './types';\n\nexport type { ButtonSize, ButtonType } from './types';\n\ntype ButtonContextProps = Required<\n Pick<ButtonWithoutMediaProps, 'size' | 'type' | 'isOnContrasted' | 'disabled' | 'isLoading' | 'stretch'>\n>;\n\nexport const context = createStyledContext<ButtonContextProps>({\n size: 'large',\n type: 'secondary',\n isOnContrasted: false,\n disabled: false,\n isLoading: false,\n stretch: false,\n});\n","import type { ColorTokens } from '@tamagui/core';\nimport type { ButtonType } from '../types';\n\nexport function getButtonContentColor(type: ButtonType, disabled?: boolean, isOnContrasted?: boolean): ColorTokens {\n if (disabled) {\n return '$content.disabled';\n }\n\n switch (type) {\n case 'secondary':\n case 'tertiary':\n return isOnContrasted ? '$content.base.onContrasted.hi' : '$content.accent';\n\n case 'danger':\n return '$content.danger';\n case 'primary':\n default:\n return isOnContrasted ? '$content.accent' : '$content.base.onContrasted.hi';\n }\n}\n","import type { ReactNode } from 'react';\nimport type { IconProps } from '../../../content/icon/Icon';\nimport { Icon } from '../../../content/icon/Icon';\nimport { context } from '../context';\nimport { getButtonContentColor } from '../utils/contentColor';\n\nexport interface ButtonIconProps extends Pick<IconProps, 'icon'> {}\n\nexport function ButtonIcon({ icon }: ButtonIconProps): ReactNode {\n const { type, disabled, isOnContrasted } = context.useStyledContext();\n\n const color = getButtonContentColor(type, disabled, isOnContrasted);\n\n return <Icon icon={icon} size=\"$icon.m\" color={color} />;\n}\n","import type { GetProps } from '@tamagui/core';\nimport { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { View } from '../../core/primitives/View';\n\n/**\n *\n * A wrapper component that applies typography styles to its children in order to maintain consistent style between web and native\n * In native, it simply renders a View as it renders correctly by default\n * In web, it ensures that the display is set to inline-flex when inside a Typography context\n *\n * React Native Web includes this implementation in its codebase\n * but Tamagui does not use React Native Webview, we need to implement it ourselves\n *\n * Inside a Typography component, always use TypographyView to wrap external components like Icon or Svg\n */\nconst InternalTypographyView = styled(View, {\n name: 'TypographyViewInternal',\n '$platform-web': {\n display: 'inline-flex',\n },\n});\n\ntype TypographyViewProps = GetProps<typeof InternalTypographyView>;\n\nexport function TypographyView(props: TypographyViewProps): ReactNode {\n return <InternalTypographyView {...props} />;\n}\n","import { styled } from '@tamagui/core';\nimport { type ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { TamaguiMediaProps } from '../../types';\nimport type { IconProps } from '../icon/Icon';\nimport { InternalIcon } from '../icon/Icon';\nimport type { TypographyTextProps } from './Typography';\nimport { TypographyView } from './TypographyView';\nimport { typographyStyleContext } from './utils/typographyContext';\n\ninterface TypographyIconWithoutMediaProps extends Except<IconProps, 'color'> {\n color?: TypographyTextProps['color'];\n}\n\nconst TypographyIconInternal = styled(InternalIcon, {\n name: 'TypographyIconInternal',\n context: typographyStyleContext,\n});\n\nexport type TypographyIconProps = TamaguiMediaProps<TypographyIconWithoutMediaProps>;\n\nexport function TypographyIcon(props: TypographyIconProps): ReactNode {\n return (\n <TypographyView>\n <TypographyIconInternal {...props} />\n </TypographyView>\n );\n}\n","import { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport type { TamaguiMediaProps } from '../../types';\nimport type { TypographyTextProps } from './Typography';\nimport { InternalTypography } from './Typography';\nimport { typographyStyleContext } from './utils/typographyContext';\n\nexport interface TypographyLinkWithoutMediaProps {\n disabled?: boolean;\n noUnderline?: boolean;\n onPress: () => void;\n}\n\nexport type TypographyLinkProps = TypographyTextProps & TamaguiMediaProps<TypographyLinkWithoutMediaProps>;\n\nexport const InternalTypographyLink = styled(InternalTypography, {\n name: 'TypographyLink',\n context: typographyStyleContext,\n role: 'link',\n variants: {\n disabled: {\n true: {\n cursor: 'not-allowed',\n onPress: undefined,\n color: '$content.disabled',\n hoverStyle: undefined,\n },\n false: {\n cursor: 'pointer',\n hoverStyle: {\n textDecorationLine: 'none',\n },\n },\n },\n noUnderline: {\n true: {\n textDecorationLine: 'none',\n },\n false: {\n textDecorationLine: 'underline',\n },\n },\n } as const,\n defaultVariants: {\n disabled: false,\n noUnderline: false,\n },\n});\n\nexport function TypographyLink(props: TypographyLinkProps): ReactNode {\n return <InternalTypographyLink {...props} />;\n}\n","import { TypographyBase, createHeading } from './Typography';\nimport { TypographyIcon } from './TypographyIcon';\nimport { TypographyLink } from './TypographyLink';\n\nexport const Typography = {\n Text: TypographyBase,\n Header1: createHeading(1),\n Header2: createHeading(2),\n Header3: createHeading(3),\n Header4: createHeading(4),\n Header5: createHeading(5),\n Header6: createHeading(6),\n Icon: TypographyIcon,\n Link: TypographyLink,\n};\n","import type { ReactNode } from 'react';\nimport { Typography } from '../../../content/typography';\nimport type { TypographyTextProps } from '../../../content/typography/Typography';\nimport { VStack } from '../../../core/primitives/Stack';\nimport { View } from '../../../core/primitives/View';\nimport { context } from '../context';\nimport { getButtonContentColor } from '../utils/contentColor';\n\nexport interface ButtonTextProps extends Pick<TypographyTextProps, 'children'> {}\n\nexport function ButtonText({ children }: ButtonTextProps): ReactNode {\n const { type, size, disabled, isOnContrasted } = context.useStyledContext();\n\n const color = getButtonContentColor(type, disabled, isOnContrasted);\n\n return (\n <VStack>\n <Typography.Text variant={size === 'large' ? 'label-l' : 'label-m'} color={color}>\n {children}\n </Typography.Text>\n\n {type === 'tertiary' ? <View height={1} flexGrow={1} backgroundColor={color} /> : null}\n </VStack>\n );\n}\n","import { styled, withStaticProperties } from '@tamagui/core';\nimport { useProps } from '../../core/hooks/useProps';\nimport { HStack } from '../../core/primitives/Stack';\nimport { View } from '../../core/primitives/View';\nimport { Loader } from '../../loading/loader/Loader';\nimport { ButtonBadge } from './components/ButtonBadge';\nimport { ButtonIcon } from './components/ButtonIcon';\nimport { ButtonText } from './components/ButtonText';\nimport type { ButtonType } from './context';\nimport { context } from './context';\nimport type { ButtonProps, ButtonTypeStyle } from './types';\n\nexport const InternalButtonFrame = styled(HStack, {\n name: 'Button',\n context,\n role: 'button',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: '$radius.m',\n alignSelf: 'flex-start',\n gap: '$space.8',\n cursor: 'pointer',\n // Ensures that all the buttons have the strict same size. box-sizing is not usable on native.\n borderColor: '$border.transparent',\n borderWidth: 1,\n\n focusVisibleStyle: {\n outlineWidth: 3,\n outlineColor: '$border.focus',\n outlineStyle: 'solid',\n },\n\n variants: {\n type: (type: ButtonType) => {\n const { isOnContrasted, disabled } = context.useStyledContext();\n\n const commonTypeStyle: ButtonTypeStyle = {\n backgroundColor: `$button.bg.${type}${isOnContrasted ? '.onContrasted' : ''}.default`,\n hoverStyle: { backgroundColor: `$button.bg.${type}${isOnContrasted ? '.onContrasted' : ''}.pressed` },\n pressStyle: { backgroundColor: `$button.bg.${type}${isOnContrasted ? '.onContrasted' : ''}.pressed` },\n };\n\n if (type === 'primary') {\n if (disabled) {\n return {\n ...commonTypeStyle,\n backgroundColor: '$bg.disabled.mid',\n };\n }\n }\n\n if (type === 'secondary') {\n if (disabled) {\n return {\n borderWidth: 1,\n borderColor: '$border.disabled',\n };\n }\n\n if (isOnContrasted) {\n return {\n ...commonTypeStyle,\n borderWidth: 1,\n borderColor: '$border.base.onContrasted.hi',\n };\n }\n\n return {\n ...commonTypeStyle,\n borderWidth: 1,\n borderColor: '$border.base.accent',\n };\n }\n\n if (type === 'danger') {\n if (disabled) {\n return {\n borderWidth: 1,\n borderColor: '$border.disabled',\n };\n }\n\n return {\n ...commonTypeStyle,\n borderWidth: 1,\n borderColor: '$border.danger',\n };\n }\n\n return commonTypeStyle;\n },\n isOnContrasted: {\n true: {},\n false: {},\n },\n size: {\n small: {\n height: 36,\n paddingHorizontal: 12,\n paddingVertical: 8,\n },\n large: {\n height: 48,\n paddingHorizontal: 16,\n paddingVertical: 14,\n },\n },\n disabled: {\n true: {\n pointerEvents: 'none',\n focusable: false,\n 'aria-disabled': true,\n },\n false: {},\n },\n isLoading: {\n true: {\n 'aria-busy': true,\n },\n false: {},\n },\n stretch: {\n true: {\n alignSelf: 'unset',\n flexGrow: 1,\n },\n false: {},\n },\n } as const,\n});\n\nexport const InternalButton = InternalButtonFrame.styleable<ButtonProps, ButtonProps>((props, ref) => {\n const flattenProps = useProps(props);\n\n if (!props.isLoading) {\n return <InternalButtonFrame ref={ref} {...flattenProps} />;\n }\n\n // When loading, we hide the other children instead of conditionnaly rendering them so that the Button can keep its real size.\n return (\n <InternalButtonFrame ref={ref} {...flattenProps}>\n <HStack opacity={0} gap=\"$space.8\">\n {flattenProps.children}\n </HStack>\n\n <View position=\"absolute\">\n <ButtonIcon icon={<Loader size=\"icon\" />} />\n </View>\n </InternalButtonFrame>\n );\n});\n\nexport const Button = withStaticProperties(InternalButton, {\n Text: ButtonText,\n Icon: ButtonIcon,\n Badge: ButtonBadge,\n});\n","import { styled, withStaticProperties } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { TamaguiMediaProps } from '../../types';\nimport { InternalButton } from '../Button/Button';\nimport { ButtonBadge } from '../Button/components/ButtonBadge';\nimport { ButtonIcon } from '../Button/components/ButtonIcon';\nimport { context } from '../Button/context';\nimport type { ButtonWithoutMediaProps } from '../Button/types';\n\nexport interface IconButtonWithoutMediaProps extends Except<ButtonWithoutMediaProps, 'stretch'> {}\n\nexport type IconButtonProps = TamaguiMediaProps<IconButtonWithoutMediaProps>;\n\nexport const InternalIconButtonFrame = styled(InternalButton, {\n name: 'IconButton',\n context,\n\n variants: {\n size: {\n small: {\n paddingHorizontal: 8,\n paddingVertical: 8,\n },\n large: {\n paddingHorizontal: 14,\n paddingVertical: 14,\n },\n },\n } as const,\n});\n\nfunction InternalIconButton(props: IconButtonProps): ReactNode {\n return <InternalIconButtonFrame {...props} />;\n}\n\nexport const IconButton = withStaticProperties(InternalIconButton, {\n Icon: ButtonIcon,\n Badge: ButtonBadge,\n});\n","import { BreakpointNameEnum } from '../../tokens/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 '../../tokens/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","mauve","transformColorScalesToTokens","Object","fromEntries","entries","flatMap","colorName","map","scaleNumber","colorValue","deepPurpleColorPalette","white","black","transparent","light","themes","HEADING_VARIANTS","BODY_VARIANTS","LABEL_VARIANTS","GTStandardFaces","normal","GTStandardSizes","GTStandardLineHeights","GTStandardLetterSpacings","GTStandardWeights","bold","semibold","regular","CONTENT_CAPS_VARIANTS","GTStandardNarrowFaces","GTStandardNarrowSizes","GTStandardNarrowLineHeights","GTStandardNarrowLetterSpacings","GTStandardNarrowWeights","BreakpointNameEnum","breakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","bumperIconTokens","px","radiusTokens","sizeTokens","spaceTokens","GTStandardFont","createFont","family","size","lineHeight","letterSpacing","weight","face","GTStandardNarrowFont","tokens","createTokens","color","space","radius","bumperIcon","config","createTamagui","fonts","GTStandard","GTStandardNarrow","media","minWidth","settings","allowedStyleValues","disableSSR","styleCompat","autocompleteSpecificTokens","debug","BumperProvider","children","_jsx","TamaguiProvider","defaultTheme","Center","styled","View","justifyContent","alignItems","Pressable","as","rest","Component","name","role","cursor","HStack","Stack","flexDirection","VStack","useProps","props","usePropsTamagui","createLoaderSizeConfig","strokeWidth","center","circumference","Math","PI","viewBox","LOADER_SIZE_CONFIG","icon","page","LOADER_ANIMATION","duration","easing","Easing","inOut","ease","LoaderBackgroundCircle","Circle","fill","variants","cx","cy","r","LoaderCircleWrapper","Svg","width","height","isForeground","true","position","AnimatedCircle","Animated","createAnimatedComponent","LoaderForegroundCircle","progress","animatedProps","useAnimatedProps","strokeDashoffset","value","stroke","strokeLinecap","strokeDasharray","LoaderContainer","rotate","Loader","isOnContrasted","testID","backgroundStyle","useStyle","foregroundStyle","useSharedValue","useEffect","withRepeat","withTiming","_jsxs","String","typographyStyleContext","createStyledContext","undefined","variant","InternalTypography","Text","context","fontFamily","fontSize","fontWeight","WebkitFontSmoothing","commonVariantStyles","includes","textTransform","defaultVariants","TypographyBase","createHeading","level","DOT_SIZE","MIN_COUNT_WIDTH","BadgeBase","borderRadius","backgroundColor","BadgeDot","BadgeCount","alignSelf","minHeight","paddingHorizontal","Badge","count","maxCount","displayCount","paddingBottom","ButtonBadge","offset","top","right","IconContainer","iconSize","InternalIcon","styleable","flattenProps","style","clonedIcon","cloneElement","Icon","type","disabled","isLoading","stretch","getButtonContentColor","ButtonIcon","useStyledContext","InternalTypographyView","display","TypographyView","TypographyIconInternal","TypographyIcon","InternalTypographyLink","onPress","hoverStyle","false","textDecorationLine","noUnderline","TypographyLink","Typography","Header1","Header2","Header3","Header4","Header5","Header6","Link","ButtonText","flexGrow","InternalButtonFrame","gap","borderColor","borderWidth","focusVisibleStyle","outlineWidth","outlineColor","outlineStyle","commonTypeStyle","pressStyle","small","paddingVertical","large","pointerEvents","focusable","InternalButton","ref","opacity","Button","withStaticProperties","InternalIconButtonFrame","InternalIconButton","IconButton","getValueForBreakpoint","breakpoint","base","medium","wide","useCurrentBreakpointName","useMedia","useBreakpointValue","values","useMemo","SwitchBreakpoints"],"mappings":";;;;;;;;;;AA6CA,MAAMA,gBAAgB,GAAqDC,UAAa,IAAQA,UAAU,CAAA;;AAE1G;AACA;AACO,MAAMC,WAAwB,GAAG;EACtCC,UAAU,EAAEH,gBAAgB,CAAC;AAC3B,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFI,KAAK,EAAEJ,gBAAgB,CAAC;AACtB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFK,SAAS,EAAEL,gBAAgB,CAAC;AAC1B,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFM,OAAO,EAAEN,gBAAgB,CAAC;AACxBO,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,MAAM,EAAE,SAAS;AACjBC,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,GAAG,EAAE,SAAS;AACd,IAAA,YAAY,EAAE,SAAS;AACvB,IAAA,aAAa,EAAE,SAAS;AACxB,IAAA,aAAa,EAAE,SAAS;AACxB,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,UAAU,EAAE,SAAA;AACd,GAAC,CAAC;EACFC,IAAI,EAAEZ,gBAAgB,CAAC;AACrB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFa,IAAI,EAAEb,gBAAgB,CAAC;AACrB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFc,KAAK,EAAEd,gBAAgB,CAAC;AACtB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFe,MAAM,EAAEf,gBAAgB,CAAC;AACvB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFgB,GAAG,EAAEhB,gBAAgB,CAAC;AACpB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACFiB,KAAK,EAAEjB,gBAAgB,CAAC;AACtB,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAS;AACZ,IAAA,CAAC,EAAE,SAAA;AACL,GAAC,CAAC;EACF,kBAAkB,EAAEA,gBAAgB,CAAC;AACnC,IAAA,IAAI,EAAE,WAAA;AACR,GAAC,CAAC;EACF,aAAa,EAAEA,gBAAgB,CAAC;AAC9B,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAA;AACR,GAAC,CAAC;EACF,YAAY,EAAEA,gBAAgB,CAAC;AAC7B,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAA;AACR,GAAC,CAAC;EACF,aAAa,EAAEA,gBAAgB,CAAC;AAC9B,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAA;GACP,CAAA;AACH,CAAU,CAAA;AAEV,MAAMkB,4BAA4B,GAAGA,MAAwB;AAC3D,EAAA,OAAOC,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACnB,WAAW,CAAC,CAACoB,OAAO,CAAC,CAAC,CAACC,SAAS,EAAEtB,UAAU,CAAC,KAAK;AAC/D,IAAA,OAAOkB,MAAM,CAACE,OAAO,CAACpB,UAAU,CAAC,CAACuB,GAAG,CAAC,CAAC,CAACC,WAAW,EAAEC,UAAU,CAAC,KAAK;MACnE,OAAO,CAAC,GAAGH,SAAS,CAAA,CAAA,EAAIE,WAAW,CAAE,CAAA,EAAEC,UAAU,CAAC,CAAA;AACpD,KAAC,CAAC,CAAA;AACJ,GAAC,CACH,CAAC,CAAA;AACH,CAAC,CAAA;AAEM,MAAMC,sBAAsB,GAAG;EACpC,GAAGT,4BAA4B,EAAE;AACjCU,EAAAA,KAAK,EAAE,SAAS;AAChBC,EAAAA,KAAK,EAAE,SAAS;AAChBC,EAAAA,WAAW,EAAE,aAAA;AACf,CAAC;;AChKD;AAMA;AACO,MAAMC,KAAY,GAAG;AAC1B;AACA,EAAA,kBAAkB,EAAEJ,sBAAsB,CAAC,QAAQ,CAAC;AACpD,EAAA,kBAAkB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AACpD,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AACnD,EAAA,+BAA+B,EAAEA,sBAAsB,CAAC,gBAAgB,CAAC;AACzE,EAAA,+BAA+B,EAAEA,sBAAsB,CAAC,gBAAgB,CAAC;AACzE,EAAA,8BAA8B,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAChE,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,cAAc,CAAC;AACxD,EAAA,eAAe,EAAEA,sBAAsB,CAAC,aAAa,CAAC;AACtD,EAAA,4BAA4B,EAAEA,sBAAsB,CAAC,aAAa,CAAC;AACnE,EAAA,cAAc,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAChD,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACpD,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,UAAU,CAAC;AACrD,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,OAAO,CAAC;AACjD,EAAA,eAAe,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AAClD,EAAA,kBAAkB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AACpD,EAAA,+BAA+B,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAEjE;AACA,EAAA,qBAAqB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AACvD,EAAA,qBAAqB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACxD,EAAA,qBAAqB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACxD,EAAA,qBAAqB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACxD,EAAA,oBAAoB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACvD,EAAA,oBAAoB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACvD,EAAA,mBAAmB,EAAEA,sBAAsB,CAAC,cAAc,CAAC;AAC3D,EAAA,mBAAmB,EAAEA,sBAAsB,CAAC,cAAc,CAAC;AAC3D,EAAA,sBAAsB,EAAEA,sBAAsB,CAAC,aAAa,CAAC;AAC7D,EAAA,sBAAsB,EAAEA,sBAAsB,CAAC,aAAa,CAAC;AAC7D,EAAA,qBAAqB,EAAEA,sBAAsB,CAAC,aAAa,CAAC;AAC5D,EAAA,qBAAqB,EAAEA,sBAAsB,CAAC,aAAa,CAAC;AAC5D,EAAA,0BAA0B,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AAC7D,EAAA,0BAA0B,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AAC7D,EAAA,yBAAyB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AAC5D,EAAA,yBAAyB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AAC5D,EAAA,aAAa,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAC/C,EAAA,YAAY,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAC9C,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACnD,EAAA,eAAe,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AAClD,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,UAAU,CAAC;AACpD,EAAA,eAAe,EAAEA,sBAAsB,CAAC,UAAU,CAAC;AACnD,EAAA,eAAe,EAAEA,sBAAsB,CAAC,OAAO,CAAC;AAChD,EAAA,cAAc,EAAEA,sBAAsB,CAAC,OAAO,CAAC;AAC/C,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AACnD,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAClD,EAAA,YAAY,EAAEA,sBAAsB,CAAC,eAAe,CAAC;AAErD;AACA,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACpD,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACpD,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAClD,EAAA,8BAA8B,EAAEA,sBAAsB,CAAC,gBAAgB,CAAC;AACxE,EAAA,6BAA6B,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAC/D,EAAA,oBAAoB,EAAEA,sBAAsB,CAAC,cAAc,CAAC;AAC5D,EAAA,aAAa,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAC/C,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACnD,EAAA,gBAAgB,EAAEA,sBAAsB,CAAC,UAAU,CAAC;AACpD,EAAA,eAAe,EAAEA,sBAAsB,CAAC,OAAO,CAAC;AAChD,EAAA,iBAAiB,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AACnD,EAAA,kBAAkB,EAAEA,sBAAsB,CAAC,SAAS,CAAC;AACrD,EAAA,cAAc,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;EAChD,oBAAoB,EAAEA,sBAAsB,CAACG,WAAW;AAExD;AACA,EAAA,2BAA2B,EAAEH,sBAAsB,CAAC,cAAc,CAAC;AACnE,EAAA,2BAA2B,EAAEA,sBAAsB,CAAC,cAAc,CAAC;AACnE,EAAA,wCAAwC,EAAEA,sBAAsB,CAAC,QAAQ,CAAC;AAC1E,EAAA,wCAAwC,EAAEA,sBAAsB,CAAC,gBAAgB,CAAC;EAClF,6BAA6B,EAAEA,sBAAsB,CAACG,WAAW;AACjE,EAAA,6BAA6B,EAAEH,sBAAsB,CAAC,qBAAqB,CAAC;EAC5E,0CAA0C,EAAEA,sBAAsB,CAACG,WAAW;AAC9E,EAAA,0CAA0C,EAAEH,sBAAsB,CAAC,gBAAgB,CAAC;EACpF,4BAA4B,EAAEA,sBAAsB,CAACG,WAAW;AAChE,EAAA,4BAA4B,EAAEH,sBAAsB,CAAC,qBAAqB,CAAC;EAC3E,yCAAyC,EAAEA,sBAAsB,CAACG,WAAW;AAC7E,EAAA,yCAAyC,EAAEH,sBAAsB,CAAC,gBAAgB,CAAC;EACnF,0BAA0B,EAAEA,sBAAsB,CAACG,WAAW;AAC9D,EAAA,0BAA0B,EAAEH,sBAAsB,CAAC,OAAO,CAAC;EAC3D,uCAAuC,EAAEA,sBAAsB,CAACC,KAAK;EACrE,uCAAuC,EAAED,sBAAsB,CAAC,OAAO,CAAA;AACzE,CAAC;;ACtFM,MAAMK,MAAM,GAAG;AACpBD,EAAAA,KAAAA;AACF,CAAC;;ACJM,MAAME,gBAAgB,GAAG,CAC9B,aAAa,EACb,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,YAAY,EACZ,aAAa,CACL,CAAA;AACH,MAAMC,aAAa,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAA;AACnF,MAAMC,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU,CAAA;AAYjE,MAAMC,eAAqE,GAAG;AACnF,EAAA,GAAG,EAAE;AAAEC,IAAAA,MAAM,EAAE,mBAAA;GAAqB;AACpC,EAAA,GAAG,EAAE;AAAEA,IAAAA,MAAM,EAAE,oBAAA;GAAsB;AACrC,EAAA,GAAG,EAAE;AAAEA,IAAAA,MAAM,EAAE,gBAAA;AAAiB,GAAA;AAClC,CAAC,CAAA;AAEM,MAAMC,eAAmD,GAAG;AACjE,EAAA,aAAa,EAAE,EAAE;AACjB,EAAA,YAAY,EAAE,EAAE;AAChB,EAAA,WAAW,EAAE,EAAE;AACf,EAAA,WAAW,EAAE,EAAE;AACf,EAAA,WAAW,EAAE,EAAE;AACf,EAAA,YAAY,EAAE,EAAE;AAChB,EAAA,aAAa,EAAE,EAAE;AACjB,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,QAAQ,EAAE,EAAE;AACZ,EAAA,QAAQ,EAAE,EAAE;AACZ,EAAA,QAAQ,EAAE,EAAE;AACZ,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAA;AACb,CAAC,CAAA;AAEM,MAAMC,qBAAyD,GAAG;AACvE,EAAA,aAAa,EAAE,EAAE;AACjB,EAAA,YAAY,EAAE,EAAE;AAChB,EAAA,WAAW,EAAE,EAAE;AACf,EAAA,WAAW,EAAE,EAAE;AACf,EAAA,WAAW,EAAE,EAAE;AACf,EAAA,YAAY,EAAE,EAAE;AAChB,EAAA,aAAa,EAAE,EAAE;AACjB,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,QAAQ,EAAE,EAAE;AACZ,EAAA,QAAQ,EAAE,EAAE;AACZ,EAAA,QAAQ,EAAE,EAAE;AACZ,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAA;AACb,CAAC,CAAA;AAEM,MAAMC,wBAA4D,GAAG;AAC1E,EAAA,aAAa,EAAE,CAAC;AAChB,EAAA,YAAY,EAAE,CAAC;AACf,EAAA,WAAW,EAAE,CAAC;AACd,EAAA,WAAW,EAAE,CAAC;AACd,EAAA,WAAW,EAAE,CAAC;AACd,EAAA,YAAY,EAAE,CAAC;AACf,EAAA,aAAa,EAAE,CAAC;AAChB,EAAA,SAAS,EAAE,GAAG;AACd,EAAA,QAAQ,EAAE,GAAG;AACb,EAAA,QAAQ,EAAE,GAAG;AACb,EAAA,QAAQ,EAAE,GAAG;AACb,EAAA,SAAS,EAAE,GAAG;AACd,EAAA,SAAS,EAAE,CAAC;AACZ,EAAA,SAAS,EAAE,CAAC;AACZ,EAAA,SAAS,EAAE,CAAA;AACb,CAAC,CAAA;AAEM,MAAMC,iBAAuD,GAAG;AACrEC,EAAAA,IAAI,EAAE,KAAK;AACXC,EAAAA,QAAQ,EAAE,KAAK;AACfC,EAAAA,OAAO,EAAE,KAAA;AACX,CAAC;;ACtFM,MAAMC,qBAAqB,GAAG,CACnC,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,CACT,CAAA;AAMH,MAAMC,qBAAiF,GAAG;AAC/F,EAAA,GAAG,EAAE;AAAET,IAAAA,MAAM,EAAE,sBAAA;AAAuB,GAAA;AACxC,CAAC,CAAA;AAEM,MAAMU,qBAA0D,GAAG;AACxE,EAAA,kBAAkB,EAAE,EAAE;AACtB,EAAA,kBAAkB,EAAE,EAAE;AACtB,EAAA,iBAAiB,EAAE,EAAE;AACrB,EAAA,gBAAgB,EAAE,EAAE;AACpB,EAAA,gBAAgB,EAAE,EAAE;AACpB,EAAA,gBAAgB,EAAE,EAAE;AACpB,EAAA,iBAAiB,EAAE,EAAA;AACrB,CAAC,CAAA;AAEM,MAAMC,2BAAgE,GAAG;AAC9E,EAAA,kBAAkB,EAAE,EAAE;AACtB,EAAA,kBAAkB,EAAE,EAAE;AACtB,EAAA,iBAAiB,EAAE,EAAE;AACrB,EAAA,gBAAgB,EAAE,EAAE;AACpB,EAAA,gBAAgB,EAAE,EAAE;AACpB,EAAA,gBAAgB,EAAE,EAAE;AACpB,EAAA,iBAAiB,EAAE,EAAA;AACrB,CAAC,CAAA;AAEM,MAAMC,8BAAmE,GAAG;AACjF,EAAA,kBAAkB,EAAE,CAAC;AACrB,EAAA,kBAAkB,EAAE,CAAC;AACrB,EAAA,iBAAiB,EAAE,CAAC;AACpB,EAAA,gBAAgB,EAAE,CAAC;AACnB,EAAA,gBAAgB,EAAE,CAAC;AACnB,EAAA,gBAAgB,EAAE,CAAC;AACnB,EAAA,iBAAiB,EAAE,CAAA;AACrB,CAAC,CAAA;AAEM,MAAMC,uBAAmE,GAAG;AACjFR,EAAAA,IAAI,EAAE,KAAA;AACR,CAAC;;AClDWS,IAAAA,kBAAkB,0BAAlBA,kBAAkB,EAAA;EAAlBA,kBAAkB,CAAA,MAAA,CAAA,GAAA,MAAA,CAAA;EAAlBA,kBAAkB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAAlBA,kBAAkB,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAAlBA,kBAAkB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAAlBA,kBAAkB,CAAA,MAAA,CAAA,GAAA,MAAA,CAAA;AAAA,EAAA,OAAlBA,kBAAkB,CAAA;AAAA,CAAA,CAAA,EAAA,CAAA,CAAA;AAQvB,MAAMC,WAAW,GAAG;AACzB,EAAA,CAACD,kBAAkB,CAACE,IAAI,GAAG,CAAC;AAC5B,EAAA,CAACF,kBAAkB,CAACG,KAAK,GAAG,GAAG;AAC/B,EAAA,CAACH,kBAAkB,CAACI,MAAM,GAAG,GAAG;AAChC,EAAA,CAACJ,kBAAkB,CAACK,KAAK,GAAG,IAAI;EAChC,CAACL,kBAAkB,CAACM,IAAI,GAAG,IAAA;AAC7B,CAAC;;ACXM,MAAMC,gBAAgB,GAAG;AAC9B,EAAA,QAAQ,EAAEC,EAAE,CAAC,EAAE,CAAC;AAChB,EAAA,QAAQ,EAAEA,EAAE,CAAC,EAAE,CAAC;EAChB,QAAQ,EAAEA,EAAE,CAAC,EAAE,CAAA;AACjB,CAAC;;ACPM,MAAMC,YAAY,GAAG;AAC1B,EAAA,aAAa,EAAE,CAAC;AAChB,EAAA,UAAU,EAAE,CAAC;AACb,EAAA,UAAU,EAAE,CAAC;AACb,EAAA,UAAU,EAAE,CAAC;AACb,EAAA,eAAe,EAAE,IAAA;AACnB,CAAC;;ACNM,MAAMC,UAAU,GAAG;AACxB,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,SAAS,EAAE,EAAE;AACb,EAAA,UAAU,EAAE,GAAG;AACf,EAAA,UAAU,EAAE,GAAG;AACf,EAAA,UAAU,EAAE,GAAG;AACf,EAAA,UAAU,EAAE,GAAA;AACd,CAAC;;ACbM,MAAMC,WAAW,GAAG;AACzB,EAAA,YAAY,EAAE,CAAC;AACf,EAAA,SAAS,EAAE,CAAC;AACZ,EAAA,SAAS,EAAE,CAAC;AACZ,EAAA,SAAS,EAAE,CAAC;AACZ,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAE;AACd,EAAA,UAAU,EAAE,EAAA;AACd,CAAC;;ACQM,MAAMC,cAAc,GAAGC,UAAU,CAAC;AACvCC,EAAAA,MAAM,EAAE,YAAY;AACpBC,EAAAA,IAAI,EAAE5B,eAAe;AACrB6B,EAAAA,UAAU,EAAE5B,qBAAqB;AACjC6B,EAAAA,aAAa,EAAE5B,wBAAwB;AACvC6B,EAAAA,MAAM,EAAE5B,iBAAiB;AACzB6B,EAAAA,IAAI,EAAElC,eAAAA;AACR,CAAC,CAAC,CAAA;AAEK,MAAMmC,oBAAoB,GAAGP,UAAU,CAAC;AAC7CC,EAAAA,MAAM,EAAE,kBAAkB;AAC1BC,EAAAA,IAAI,EAAEnB,qBAAqB;AAC3BoB,EAAAA,UAAU,EAAEnB,2BAA2B;AACvCoB,EAAAA,aAAa,EAAEnB,8BAA8B;AAC7CoB,EAAAA,MAAM,EAAEnB,uBAAuB;AAC/BoB,EAAAA,IAAI,EAAExB,qBAAAA;AACR,CAAC,CAAC,CAAA;AAEF,MAAM0B,MAAM,GAAGC,YAAY,CAAC;EAC1BC,KAAK,EAAE,EAAE;AACTC,EAAAA,KAAK,EAAEb,WAAW;AAClBI,EAAAA,IAAI,EAAEL,UAAU;AAChBe,EAAAA,MAAM,EAAEhB,YAAY;AACpBiB,EAAAA,UAAU,EAAEnB,gBAAAA;AACd,CAAC,CAAC,CAAA;AAEK,MAAMoB,MAAM,GAAGC,aAAa,CAAC;EAClCP,MAAM;AACNQ,EAAAA,KAAK,EAAE;AACLC,IAAAA,UAAU,EAAElB,cAAc;AAC1BmB,IAAAA,gBAAgB,EAAEX,oBAAAA;GACnB;EACDvC,MAAM;AACNmD,EAAAA,KAAK,EAAE;IACL,CAAChC,kBAAkB,CAACE,IAAI,GAAG;AAAE+B,MAAAA,QAAQ,EAAEhC,WAAW,CAACD,kBAAkB,CAACE,IAAI,CAAA;KAAG;IAC7E,CAACF,kBAAkB,CAACG,KAAK,GAAG;AAAE8B,MAAAA,QAAQ,EAAEhC,WAAW,CAACD,kBAAkB,CAACG,KAAK,CAAA;KAAG;IAC/E,CAACH,kBAAkB,CAACI,MAAM,GAAG;AAAE6B,MAAAA,QAAQ,EAAEhC,WAAW,CAACD,kBAAkB,CAACI,MAAM,CAAA;KAAG;IACjF,CAACJ,kBAAkB,CAACK,KAAK,GAAG;AAAE4B,MAAAA,QAAQ,EAAEhC,WAAW,CAACD,kBAAkB,CAACK,KAAK,CAAA;KAAG;IAC/E,CAACL,kBAAkB,CAACM,IAAI,GAAG;AAAE2B,MAAAA,QAAQ,EAAEhC,WAAW,CAACD,kBAAkB,CAACM,IAAI,CAAA;AAAE,KAAA;GAC7E;AACD4B,EAAAA,QAAQ,EAAE;AACRC,IAAAA,kBAAkB,EAAE,QAAQ;AAC5BC,IAAAA,UAAU,EAAE,IAAI;AAChBC,IAAAA,WAAW,EAAE,cAAc;AAC3BC,IAAAA,0BAA0B,EAAE,gBAAgB;AAC5CC,IAAAA,KAAK,EAAE,KAAA;AACT,GAAA;AACF,CAAC,CAAC,CAAA;;AAIF;;ACjEO,SAASC,cAAcA,CAAC;AAAEC,EAAAA,QAAAA;AAA8B,CAAC,EAAa;EAC3E,oBACEC,GAAA,CAACC,eAAe,EAAA;AAAChB,IAAAA,MAAM,EAAEA,MAAO;AAACiB,IAAAA,YAAY,EAAC,OAAO;AAAAH,IAAAA,QAAA,EAClDA,QAAAA;AAAQ,GACM,CAAC,CAAA;AAEtB;;MCRaI,MAAM,GAAGC,MAAM,CAACC,IAAI,EAAE;AACjCC,EAAAA,cAAc,EAAE,QAAQ;AACxBC,EAAAA,UAAU,EAAE,QAAA;AACd,CAAC;;ACMD;AACA;AACA;AACO,SAASC,SAASA,CAA2C;EAAEC,EAAE;EAAE,GAAGC,IAAAA;AAAwB,CAAC,EAAa;AACjH,EAAA,MAAMC,SAAS,GAAGP,MAAM,CAACK,EAAE,IAAIJ,IAAI,EAAE;AACnCO,IAAAA,IAAI,EAAE,WAAW;AACjBC,IAAAA,IAAI,EAAE,QAAQ;AACdC,IAAAA,MAAM,EAAE,SAAA;AACV,GAAC,CAAC,CAAA;EAEF,oBAAOd,GAAA,CAACW,SAAS,EAAA;IAAA,GAAMD,IAAAA;AAAI,GAAmB,CAAC,CAAA;AACjD;;MCpBaK,MAAM,GAAGX,MAAM,CAACY,KAAK,EAAE;AAClCJ,EAAAA,IAAI,EAAE,QAAQ;AACdK,EAAAA,aAAa,EAAE,KAAA;AACjB,CAAC,EAAC;MAIWC,MAAM,GAAGd,MAAM,CAACY,KAAK,EAAE;AAClCJ,EAAAA,IAAI,EAAE,QAAQ;AACdK,EAAAA,aAAa,EAAE,QAAA;AACjB,CAAC;;AChBD;AAIA;AACA;AACO,SAASE,QAAQA,CAAmBC,KAAQ,EAA8B;EAC/E,OAAOC,UAAe,CAACD,KAAK,CAAC,CAAA;AAC/B;;ACIA,SAASE,sBAAsBA,CAACjD,IAAY,EAAEkD,WAAmB,EAAgB;AAC/E,EAAA,MAAMC,MAAM,GAAGnD,IAAI,GAAG,CAAC,CAAA;AACvB,EAAA,MAAMU,MAAM,GAAGyC,MAAM,GAAGD,WAAW,CAAA;EACnC,MAAME,aAAa,GAAG,CAAC,GAAGC,IAAI,CAACC,EAAE,GAAG5C,MAAM,CAAA;EAE1C,OAAO;IACLV,IAAI;IACJkD,WAAW;IACXC,MAAM;IACNzC,MAAM;IACN0C,aAAa;AACbG,IAAAA,OAAO,EAAE,CAAA,IAAA,EAAOvD,IAAI,CAAA,CAAA,EAAIA,IAAI,CAAA,CAAA;GAC7B,CAAA;AACH,CAAA;AAEO,MAAMwD,kBAAoD,GAAG;AAClEC,EAAAA,IAAI,EAAER,sBAAsB,CAAC,EAAE,EAAE,GAAG,CAAC;AACrCS,EAAAA,IAAI,EAAET,sBAAsB,CAAC,EAAE,EAAE,CAAC,CAAA;AACpC,CAAC,CAAA;AAEM,MAAMU,gBAAgB,GAAG;AAC9BC,EAAAA,QAAQ,EAAE,IAAI;AACdC,EAAAA,MAAM,EAAEC,MAAM,CAACC,KAAK,CAACD,MAAM,CAACE,IAAI,CAAA;AAClC,CAAC;;AC/BD,MAAM;QAAEP,MAAI;AAAEC,QAAAA,MAAAA;AAAK,CAAC,GAAGF,kBAAkB,CAAA;AAElC,MAAMS,sBAAsB,GAAGlC,MAAM,CAACmC,MAAM,EAAE;AACnDC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,QAAQ,EAAE;AACRpE,IAAAA,IAAI,EAAE;AACJyD,MAAAA,IAAI,EAAE;QAAEP,WAAW,EAAEO,MAAI,CAACP,WAAW;QAAEmB,EAAE,EAAEZ,MAAI,CAACN,MAAM;QAAEmB,EAAE,EAAEb,MAAI,CAACN,MAAM;QAAEoB,CAAC,EAAEd,MAAI,CAAC/C,MAAAA;OAAQ;AACzFgD,MAAAA,IAAI,EAAE;QAAER,WAAW,EAAEQ,MAAI,CAACR,WAAW;QAAEmB,EAAE,EAAEX,MAAI,CAACP,MAAM;QAAEmB,EAAE,EAAEZ,MAAI,CAACP,MAAM;QAAEoB,CAAC,EAAEb,MAAI,CAAChD,MAAAA;AAAO,OAAA;AAC1F,KAAA;AACF,GAAA;AACF,CAAC,CAAC;;ACVF,MAAM;QAAE+C,MAAI;AAAEC,QAAAA,MAAAA;AAAK,CAAC,GAAGF,kBAAkB,CAAA;AAElC,MAAMgB,mBAAmB,GAAGzC,MAAM,CAAC0C,GAAG,EAAE;AAC7CL,EAAAA,QAAQ,EAAE;AACRpE,IAAAA,IAAI,EAAE;AACJyD,MAAAA,IAAI,EAAE;QAAEiB,KAAK,EAAEjB,MAAI,CAACzD,IAAI;QAAE2E,MAAM,EAAElB,MAAI,CAACzD,IAAI;QAAEuD,OAAO,EAAEE,MAAI,CAACF,OAAAA;OAAS;AACpEG,MAAAA,IAAI,EAAE;QAAEgB,KAAK,EAAEhB,MAAI,CAAC1D,IAAI;QAAE2E,MAAM,EAAEjB,MAAI,CAAC1D,IAAI;QAAEuD,OAAO,EAAEG,MAAI,CAACH,OAAAA;AAAQ,OAAA;KACpE;AACDqB,IAAAA,YAAY,EAAE;AACZC,MAAAA,IAAI,EAAE;AACJC,QAAAA,QAAQ,EAAE,UAAA;AACZ,OAAA;AACF,KAAA;AACF,GAAA;AACF,CAAC,CAAC;;ACXF,MAAMC,cAAc,GAAGC,QAAQ,CAACC,uBAAuB,CAACf,MAAM,CAAC,CAAA;AAQxD,SAASgB,sBAAsBA,CAAC;EAAE1E,KAAK;EAAER,IAAI;AAAEmF,EAAAA,QAAAA;AAAsC,CAAC,EAAa;EACxG,MAAM;IAAEhC,MAAM;IAAEzC,MAAM;IAAE0C,aAAa;AAAEF,IAAAA,WAAAA;AAAY,GAAC,GAAGM,kBAAkB,CAACxD,IAAI,CAAC,CAAA;AAE/E,EAAA,MAAMoF,aAAa,GAAGC,gBAAgB,CACpC,OAAO;IACLC,gBAAgB,EAAElC,aAAa,GAAG,CAAC,GAAGA,aAAa,GAAG+B,QAAQ,CAACI,KAAAA;AACjE,GAAC,CAAC,EACF,CAACnC,aAAa,EAAE+B,QAAQ,CAC1B,CAAC,CAAA;EAED,oBACExD,GAAA,CAACoD,cAAc,EAAA;AACbV,IAAAA,EAAE,EAAElB,MAAO;AACXmB,IAAAA,EAAE,EAAEnB,MAAO;AACXoB,IAAAA,CAAC,EAAE7D,MAAO;AACV8E,IAAAA,MAAM,EAAEhF,KAAM;AACd0C,IAAAA,WAAW,EAAEA,WAAY;AACzBuC,IAAAA,aAAa,EAAC,OAAO;AACrBtB,IAAAA,IAAI,EAAC,MAAM;AACXuB,IAAAA,eAAe,EAAEtC,aAAc;AAC/BgC,IAAAA,aAAa,EAAEA,aAAAA;AAAc,GAC9B,CAAC,CAAA;AAEN;;AC1BA,MAAM;EAAE3B,IAAI;AAAEC,EAAAA,IAAAA;AAAK,CAAC,GAAGF,kBAAkB,CAAA;AAEzC,MAAMmC,eAAe,GAAG5D,MAAM,CAACC,IAAI,EAAE;AACnCO,EAAAA,IAAI,EAAE,QAAQ;AACduC,EAAAA,QAAQ,EAAE,UAAU;AACpBc,EAAAA,MAAM,EAAE,QAAQ;AAChBxB,EAAAA,QAAQ,EAAE;AACRpE,IAAAA,IAAI,EAAE;AACJyD,MAAAA,IAAI,EAAE;QAAEiB,KAAK,EAAEjB,IAAI,CAACzD,IAAI;QAAE2E,MAAM,EAAElB,IAAI,CAACzD,IAAAA;OAAM;AAC7C0D,MAAAA,IAAI,EAAE;QAAEgB,KAAK,EAAEhB,IAAI,CAAC1D,IAAI;QAAE2E,MAAM,EAAEjB,IAAI,CAAC1D,IAAAA;AAAK,OAAA;AAC9C,KAAA;AACF,GAAA;AACF,CAAC,CAAC,CAAA;AAiBK,SAAS6F,MAAMA,CAAC;AAAE7F,EAAAA,IAAI,GAAG,MAAM;AAAE8F,EAAAA,cAAc,GAAG,KAAK;AAAEC,EAAAA,MAAAA;AAAoB,CAAC,EAAa;EAChG,MAAMC,eAAe,GAAGC,QAAQ,CAAC;AAAEzF,IAAAA,KAAK,EAAE,kBAAA;AAAmB,GAAC,CAAC,CAAA;EAC/D,MAAM0F,eAAe,GAAGD,QAAQ,CAAC;AAC/BzF,IAAAA,KAAK,EAAEsF,cAAc,GAAG,8BAA8B,GAAG,iBAAA;AAC3D,GAAC,CAAC,CAAA;AAEF,EAAA,MAAMX,QAAQ,GAAGgB,cAAc,CAAC,CAAC,CAAC,CAAA;AAElCC,EAAAA,SAAS,CAAC,MAAM;AACdjB,IAAAA,QAAQ,CAACI,KAAK,GAAGc,UAAU,CAACC,UAAU,CAAC,CAAC,EAAE3C,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;AACzE,GAAC,EAAE,CAACwB,QAAQ,CAAC,CAAC,CAAA;EAEd,oBACEoB,IAAA,CAACZ,eAAe,EAAA;AAAC3F,IAAAA,IAAI,EAAEA,IAAK;AAAC+F,IAAAA,MAAM,EAAEA,MAAO;IAAArE,QAAA,EAAA,cAC1CC,GAAA,CAAC6C,mBAAmB,EAAA;AAACxE,MAAAA,IAAI,EAAEA,IAAK;MAAA0B,QAAA,eAC9BC,GAAA,CAACsC,sBAAsB,EAAA;AAACjE,QAAAA,IAAI,EAAEA,IAAK;QAACwF,MAAM,EAAEQ,eAAe,CAACxF,KAAAA;OAAQ,CAAA;AAAC,KAClD,CAAC,eAEtBmB,GAAA,CAAC6C,mBAAmB,EAAA;MAACI,YAAY,EAAA,IAAA;AAAC5E,MAAAA,IAAI,EAAEA,IAAK;MAAA0B,QAAA,eAC3CC,GAAA,CAACuD,sBAAsB,EAAA;AAAC1E,QAAAA,KAAK,EAAEgG,MAAM,CAACN,eAAe,CAAC1F,KAAK,CAAE;AAACR,QAAAA,IAAI,EAAEA,IAAK;AAACmF,QAAAA,QAAQ,EAAEA,QAAAA;OAAW,CAAA;AAAC,KAC7E,CAAC,CAAA;AAAA,GACP,CAAC,CAAA;AAEtB;;ACxDO,MAAMsB,sBAAsB,GAAGC,mBAAmB,CAItD;AACDlG,EAAAA,KAAK,EAAEmG,SAAS;AAChBxG,EAAAA,MAAM,EAAEwG,SAAS;AACjBC,EAAAA,OAAO,EAAED,SAAAA;AACX,CAAC,CAAC;;ACmCK,MAAME,kBAAkB,GAAG9E,MAAM,CAAC+E,IAAI,EAAE;AAC7CC,EAAAA,OAAO,EAAEN,sBAAsB;AAC/BO,EAAAA,UAAU,EAAE,aAAa;AACzBC,EAAAA,QAAQ,EAAE,SAAS;AACnBhH,EAAAA,UAAU,EAAE,SAAS;AACrBC,EAAAA,aAAa,EAAE,SAAS;AACxBgH,EAAAA,UAAU,EAAE,UAAU;AACtB1G,EAAAA,KAAK,EAAE,kBAAkB;AACzB,EAAA,eAAe,EAAE;AACf2G,IAAAA,mBAAmB,EAAE,aAAA;GACtB;AACD/C,EAAAA,QAAQ,EAAE;IACRwC,OAAO,EAAGA,OAAqB,IAAK;AAClC,MAAA,MAAMQ,mBAAmB,GAAG;QAC1BH,QAAQ,EAAE,CAAIL,CAAAA,EAAAA,OAAO,CAAE,CAAA;QACvB3G,UAAU,EAAE,CAAI2G,CAAAA,EAAAA,OAAO,CAAE,CAAA;QACzB1G,aAAa,EAAE,IAAI0G,OAAO,CAAA,CAAA;OAC3B,CAAA;;AAED;AACA,MAAA,IAAK5I,aAAa,CAAuBqJ,QAAQ,CAACT,OAAO,CAAC,EAAE;QAC1D,OAAO;UACL,GAAGQ,mBAAAA;SACJ,CAAA;AACH,OAAA;AACA;AACA,MAAA,IAAKzI,qBAAqB,CAAuB0I,QAAQ,CAACT,OAAO,CAAC,EAAE;QAClE,OAAO;AACLI,UAAAA,UAAU,EAAE,mBAAmB;AAC/BM,UAAAA,aAAa,EAAE,WAAW;AAC1BJ,UAAAA,UAAU,EAAE,OAAO;UACnB,GAAGE,mBAAAA;SACJ,CAAA;AACH,OAAA;AACA;AACA,MAAA,IAAKrJ,gBAAgB,CAAuBsJ,QAAQ,CAACT,OAAO,CAAC,EAAE;QAC7D,OAAO;AACLM,UAAAA,UAAU,EAAE,WAAW;UACvB,GAAGE,mBAAAA;SACJ,CAAA;AACH,OAAA;AACA;AACA,MAAA,IAAKnJ,cAAc,CAAuBoJ,QAAQ,CAACT,OAAO,CAAC,EAAE;QAC3D,OAAO;AACLM,UAAAA,UAAU,EAAE,WAAW;UACvB,GAAGE,mBAAAA;SACJ,CAAA;AACH,OAAA;AAEA,MAAA,OAAOT,SAAS,CAAA;KACjB;AACDxG,IAAAA,MAAM,EAAE;AACNzB,MAAAA,OAAO,EAAE;AACPwI,QAAAA,UAAU,EAAE,UAAA;OACb;AACDzI,MAAAA,QAAQ,EAAE;AACRyI,QAAAA,UAAU,EAAE,WAAA;OACb;AACD1I,MAAAA,IAAI,EAAE;AACJ0I,QAAAA,UAAU,EAAE,OAAA;AACd,OAAA;AACF,KAAA;GACQ;AACVK,EAAAA,eAAe,EAAE;AACfpH,IAAAA,MAAM,EAAE,SAAA;AACV,GAAA;AACF,CAAC,CAAC,CAAA;AAIK,SAASqH,cAAcA,CAACzE,KAA0B,EAAa;EACpE,oBAAOpB,GAAA,CAACkF,kBAAkB,EAAA;IAAA,GAAK9D,KAAAA;AAAK,GAAG,CAAC,CAAA;AAC1C,CAAA;AAEO,MAAM0E,aAAa,GAAIC,KAAa,IAAkD;AAC3F;EACA,OAAO,UAAU3E,KAA0B,EAAa;IACtD,oBAAOpB,GAAA,CAACkF,kBAAkB,EAAA;AAACrE,MAAAA,IAAI,EAAC,SAAS;AAAC,MAAA,YAAA,EAAYkF,KAAM;MAAA,GAAK3E,KAAAA;AAAK,KAAG,CAAC,CAAA;GAC3E,CAAA;AACH,CAAC;;AC/GD,MAAM4E,QAAQ,GAAG,CAAC,CAAA;AAClB,MAAMC,eAAe,GAAG,EAAE,CAAA;AAE1B,MAAMC,SAAS,GAAG9F,MAAM,CAACD,MAAM,EAAE;AAC/BgG,EAAAA,YAAY,EAAE,gBAAgB;AAC9BC,EAAAA,eAAe,EAAE,eAAA;AACnB,CAAC,CAAC,CAAA;AAEF,MAAMC,QAAQ,GAAGjG,MAAM,CAAC8F,SAAS,EAAE;AACjCnD,EAAAA,KAAK,EAAEiD,QAAQ;AACfhD,EAAAA,MAAM,EAAEgD,QAAAA;AACV,CAAC,CAAC,CAAA;AAEF,MAAMM,UAAU,GAAGlG,MAAM,CAAC8F,SAAS,EAAE;AACnCK,EAAAA,SAAS,EAAE,YAAY;AACvBhH,EAAAA,QAAQ,EAAE0G,eAAe;AACzBO,EAAAA,SAAS,EAAEP,eAAe;AAC1BQ,EAAAA,iBAAiB,EAAE,UAAA;AACrB,CAAC,CAAC,CAAA;AAEK,SAASC,KAAKA,CAACtF,KAAiB,EAAa;EAClD,MAAM;IAAEuF,KAAK;AAAEC,IAAAA,QAAQ,GAAG,CAAA;AAAE,GAAC,GAAGzF,QAAQ,CAACC,KAAK,CAAC,CAAA;EAE/C,IAAIuF,KAAK,KAAK3B,SAAS,EAAE;AACvB,IAAA,oBAAOhF,GAAA,CAACqG,QAAQ,EAAA,EAAE,CAAC,CAAA;AACrB,GAAA;AAEA,EAAA,MAAMQ,YAAY,GAAGF,KAAK,GAAGC,QAAQ,GAAG,CAAGA,EAAAA,QAAQ,CAAG,CAAA,CAAA,GAAG,CAAGD,EAAAA,KAAK,CAAE,CAAA,CAAA;EAEnE,oBACE3G,GAAA,CAACsG,UAAU,EAAA;IAAAvG,QAAA,eACTC,GAAA,CAACkF,kBAAkB,EAAA;AACjBD,MAAAA,OAAO,EAAC,iBAAiB;AACzBzG,MAAAA,MAAM,EAAC,MAAM;AACbK,MAAAA,KAAK,EAAC,+BAAA;AACN;AAAA;AACAiI,MAAAA,aAAa,EAAE,CAAE;AAAA/G,MAAAA,QAAA,EAEhB8G,YAAAA;KACiB,CAAA;AAAC,GACX,CAAC,CAAA;AAEjB;;ACtDO,SAASE,WAAWA,CAAC3F,KAAuB,EAAa;AAC9D;EACA,MAAM4F,MAAM,GAAG5F,KAAK,CAACuF,KAAK,KAAK3B,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;EAEjD,oBACEhF,GAAA,CAACK,IAAI,EAAA;AAAC8C,IAAAA,QAAQ,EAAC,UAAU;AAAC8D,IAAAA,GAAG,EAAED,MAAO;AAACE,IAAAA,KAAK,EAAEF,MAAO;IAAAjH,QAAA,eACnDC,GAAA,CAAC0G,KAAK,EAAA;MAAA,GAAKtF,KAAAA;KAAQ,CAAA;AAAC,GAChB,CAAC,CAAA;AAEX;;ACPA,MAAM+F,aAAa,GAAG/G,MAAM,CAACC,IAAI,EAAE;AACjCO,EAAAA,IAAI,EAAE,MAAM;AACZ6B,EAAAA,QAAQ,EAAE;IACRpE,IAAI,EAAEA,CAAC+I,QAA0B,EAAE;AAAEzI,MAAAA,MAAAA;AAAO,KAAC,KAAK;MAChD,OAAO;AACLoE,QAAAA,KAAK,EAAEpE,MAAM,CAACK,UAAU,CAACoI,QAAQ,CAAC;AAClCpE,QAAAA,MAAM,EAAErE,MAAM,CAACK,UAAU,CAACoI,QAAQ,CAAA;OACnC,CAAA;AACH,KAAA;AACF,GAAA;AACF,CAAC,CAAC,CAAA;AAmBK,MAAMC,YAAY,GAAGF,aAAa,CAACG,SAAS,CAAalG,KAAK,IAAK;AACxE,EAAA,MAAMmG,YAAY,GAAGpG,QAAQ,CAACC,KAAK,CAAC,CAAA;EACpC,MAAMoG,KAAK,GAAGlD,QAAQ,CAAC;AAAEzF,IAAAA,KAAK,EAAE0I,YAAY,CAAC1I,KAAK,IAAI,kBAAA;AAAmB,GAAC,CAAC,CAAA;AAE3E,EAAA,MAAM4I,UAAU,gBAAGC,YAAY,CAACH,YAAY,CAACzF,IAAI,EAAE;IAAEjD,KAAK,EAAE2I,KAAK,CAAC3I,KAAAA;AAAM,GAAC,CAAC,CAAA;EAE1E,oBACEmB,GAAA,CAACmH,aAAa,EAAA;IAAC9I,IAAI,EAAEkJ,YAAY,CAAClJ,IAAK;IAAC+F,MAAM,EAAEmD,YAAY,CAACnD,MAAO;IAACmC,SAAS,EAAEgB,YAAY,CAAChB,SAAU;AAAAxG,IAAAA,QAAA,EACpG0H,UAAAA;AAAU,GACE,CAAC,CAAA;AAEpB,CAAC,CAAC,CAAA;AAEK,SAASE,IAAIA,CAACvG,KAAgB,EAAa;EAChD,oBAAOpB,GAAA,CAACqH,YAAY,EAAA;IAAA,GAAKjG,KAAAA;AAAK,GAAG,CAAC,CAAA;AACpC;;AC5CO,MAAMgE,OAAO,GAAGL,mBAAmB,CAAqB;AAC7D1G,EAAAA,IAAI,EAAE,OAAO;AACbuJ,EAAAA,IAAI,EAAE,WAAW;AACjBzD,EAAAA,cAAc,EAAE,KAAK;AACrB0D,EAAAA,QAAQ,EAAE,KAAK;AACfC,EAAAA,SAAS,EAAE,KAAK;AAChBC,EAAAA,OAAO,EAAE,KAAA;AACX,CAAC,CAAC;;ACbK,SAASC,qBAAqBA,CAACJ,IAAgB,EAAEC,QAAkB,EAAE1D,cAAwB,EAAe;AACjH,EAAA,IAAI0D,QAAQ,EAAE;AACZ,IAAA,OAAO,mBAAmB,CAAA;AAC5B,GAAA;AAEA,EAAA,QAAQD,IAAI;AACV,IAAA,KAAK,WAAW,CAAA;AAChB,IAAA,KAAK,UAAU;AACb,MAAA,OAAOzD,cAAc,GAAG,+BAA+B,GAAG,iBAAiB,CAAA;AAE7E,IAAA,KAAK,QAAQ;AACX,MAAA,OAAO,iBAAiB,CAAA;AAC1B,IAAA,KAAK,SAAS,CAAA;AACd,IAAA;AACE,MAAA,OAAOA,cAAc,GAAG,iBAAiB,GAAG,+BAA+B,CAAA;AAC/E,GAAA;AACF;;ACXO,SAAS8D,UAAUA,CAAC;AAAEnG,EAAAA,IAAAA;AAAsB,CAAC,EAAa;EAC/D,MAAM;IAAE8F,IAAI;IAAEC,QAAQ;AAAE1D,IAAAA,cAAAA;AAAe,GAAC,GAAGiB,OAAO,CAAC8C,gBAAgB,EAAE,CAAA;EAErE,MAAMrJ,KAAK,GAAGmJ,qBAAqB,CAACJ,IAAI,EAAEC,QAAQ,EAAE1D,cAAc,CAAC,CAAA;EAEnE,oBAAOnE,GAAA,CAAC2H,IAAI,EAAA;AAAC7F,IAAAA,IAAI,EAAEA,IAAK;AAACzD,IAAAA,IAAI,EAAC,SAAS;AAACQ,IAAAA,KAAK,EAAEA,KAAAA;AAAM,GAAE,CAAC,CAAA;AAC1D;;ACEA,MAAMsJ,sBAAsB,GAAG/H,MAAM,CAACC,IAAI,EAAE;AAC1CO,EAAAA,IAAI,EAAE,wBAAwB;AAC9B,EAAA,eAAe,EAAE;AACfwH,IAAAA,OAAO,EAAE,aAAA;AACX,GAAA;AACF,CAAC,CAAC,CAAA;AAIK,SAASC,cAAcA,CAACjH,KAA0B,EAAa;EACpE,oBAAOpB,GAAA,CAACmI,sBAAsB,EAAA;IAAA,GAAK/G,KAAAA;AAAK,GAAG,CAAC,CAAA;AAC9C;;ACbA,MAAMkH,sBAAsB,GAAGlI,MAAM,CAACiH,YAAY,EAAE;AAClDzG,EAAAA,IAAI,EAAE,wBAAwB;AAC9BwE,EAAAA,OAAO,EAAEN,sBAAAA;AACX,CAAC,CAAC,CAAA;AAIK,SAASyD,cAAcA,CAACnH,KAA0B,EAAa;EACpE,oBACEpB,GAAA,CAACqI,cAAc,EAAA;IAAAtI,QAAA,eACbC,GAAA,CAACsI,sBAAsB,EAAA;MAAA,GAAKlH,KAAAA;KAAQ,CAAA;AAAC,GACvB,CAAC,CAAA;AAErB;;ACZO,MAAMoH,sBAAsB,GAAGpI,MAAM,CAAC8E,kBAAkB,EAAE;AAC/DtE,EAAAA,IAAI,EAAE,gBAAgB;AACtBwE,EAAAA,OAAO,EAAEN,sBAAsB;AAC/BjE,EAAAA,IAAI,EAAE,MAAM;AACZ4B,EAAAA,QAAQ,EAAE;AACRoF,IAAAA,QAAQ,EAAE;AACR3E,MAAAA,IAAI,EAAE;AACJpC,QAAAA,MAAM,EAAE,aAAa;AACrB2H,QAAAA,OAAO,EAAEzD,SAAS;AAClBnG,QAAAA,KAAK,EAAE,mBAAmB;AAC1B6J,QAAAA,UAAU,EAAE1D,SAAAA;OACb;AACD2D,MAAAA,KAAK,EAAE;AACL7H,QAAAA,MAAM,EAAE,SAAS;AACjB4H,QAAAA,UAAU,EAAE;AACVE,UAAAA,kBAAkB,EAAE,MAAA;AACtB,SAAA;AACF,OAAA;KACD;AACDC,IAAAA,WAAW,EAAE;AACX3F,MAAAA,IAAI,EAAE;AACJ0F,QAAAA,kBAAkB,EAAE,MAAA;OACrB;AACDD,MAAAA,KAAK,EAAE;AACLC,QAAAA,kBAAkB,EAAE,WAAA;AACtB,OAAA;AACF,KAAA;GACQ;AACVhD,EAAAA,eAAe,EAAE;AACfiC,IAAAA,QAAQ,EAAE,KAAK;AACfgB,IAAAA,WAAW,EAAE,KAAA;AACf,GAAA;AACF,CAAC,CAAC,CAAA;AAEK,SAASC,cAAcA,CAAC1H,KAA0B,EAAa;EACpE,oBAAOpB,GAAA,CAACwI,sBAAsB,EAAA;IAAA,GAAKpH,KAAAA;AAAK,GAAG,CAAC,CAAA;AAC9C;;AC/CO,MAAM2H,UAAU,GAAG;AACxB5D,EAAAA,IAAI,EAAEU,cAAc;AACpBmD,EAAAA,OAAO,EAAElD,aAAa,CAAC,CAAC,CAAC;AACzBmD,EAAAA,OAAO,EAAEnD,aAAa,CAAC,CAAC,CAAC;AACzBoD,EAAAA,OAAO,EAAEpD,aAAa,CAAC,CAAC,CAAC;AACzBqD,EAAAA,OAAO,EAAErD,aAAa,CAAC,CAAC,CAAC;AACzBsD,EAAAA,OAAO,EAAEtD,aAAa,CAAC,CAAC,CAAC;AACzBuD,EAAAA,OAAO,EAAEvD,aAAa,CAAC,CAAC,CAAC;AACzB6B,EAAAA,IAAI,EAAEY,cAAc;AACpBe,EAAAA,IAAI,EAAER,cAAAA;AACR;;ACJO,SAASS,UAAUA,CAAC;AAAExJ,EAAAA,QAAAA;AAA0B,CAAC,EAAa;EACnE,MAAM;IAAE6H,IAAI;IAAEvJ,IAAI;IAAEwJ,QAAQ;AAAE1D,IAAAA,cAAAA;AAAe,GAAC,GAAGiB,OAAO,CAAC8C,gBAAgB,EAAE,CAAA;EAE3E,MAAMrJ,KAAK,GAAGmJ,qBAAqB,CAACJ,IAAI,EAAEC,QAAQ,EAAE1D,cAAc,CAAC,CAAA;EAEnE,oBACES,IAAA,CAAC1D,MAAM,EAAA;AAAAnB,IAAAA,QAAA,EACLC,cAAAA,GAAA,CAAC+I,UAAU,CAAC5D,IAAI,EAAA;AAACF,MAAAA,OAAO,EAAE5G,IAAI,KAAK,OAAO,GAAG,SAAS,GAAG,SAAU;AAACQ,MAAAA,KAAK,EAAEA,KAAM;AAAAkB,MAAAA,QAAA,EAC9EA,QAAAA;KACc,CAAC,EAEjB6H,IAAI,KAAK,UAAU,gBAAG5H,GAAA,CAACK,IAAI,EAAA;AAAC2C,MAAAA,MAAM,EAAE,CAAE;AAACwG,MAAAA,QAAQ,EAAE,CAAE;AAACpD,MAAAA,eAAe,EAAEvH,KAAAA;KAAQ,CAAC,GAAG,IAAI,CAAA;AAAA,GAChF,CAAC,CAAA;AAEb;;ACZO,MAAM4K,mBAAmB,GAAGrJ,MAAM,CAACW,MAAM,EAAE;AAChDH,EAAAA,IAAI,EAAE,QAAQ;EACdwE,OAAO;AACPvE,EAAAA,IAAI,EAAE,QAAQ;AACdN,EAAAA,UAAU,EAAE,QAAQ;AACpBD,EAAAA,cAAc,EAAE,QAAQ;AACxB6F,EAAAA,YAAY,EAAE,WAAW;AACzBI,EAAAA,SAAS,EAAE,YAAY;AACvBmD,EAAAA,GAAG,EAAE,UAAU;AACf5I,EAAAA,MAAM,EAAE,SAAS;AACjB;AACA6I,EAAAA,WAAW,EAAE,qBAAqB;AAClCC,EAAAA,WAAW,EAAE,CAAC;AAEdC,EAAAA,iBAAiB,EAAE;AACjBC,IAAAA,YAAY,EAAE,CAAC;AACfC,IAAAA,YAAY,EAAE,eAAe;AAC7BC,IAAAA,YAAY,EAAE,OAAA;GACf;AAEDvH,EAAAA,QAAQ,EAAE;IACRmF,IAAI,EAAGA,IAAgB,IAAK;MAC1B,MAAM;QAAEzD,cAAc;AAAE0D,QAAAA,QAAAA;AAAS,OAAC,GAAGzC,OAAO,CAAC8C,gBAAgB,EAAE,CAAA;AAE/D,MAAA,MAAM+B,eAAgC,GAAG;QACvC7D,eAAe,EAAE,cAAcwB,IAAI,CAAA,EAAGzD,cAAc,GAAG,eAAe,GAAG,EAAE,CAAU,QAAA,CAAA;AACrFuE,QAAAA,UAAU,EAAE;UAAEtC,eAAe,EAAE,cAAcwB,IAAI,CAAA,EAAGzD,cAAc,GAAG,eAAe,GAAG,EAAE,CAAA,QAAA,CAAA;SAAY;AACrG+F,QAAAA,UAAU,EAAE;UAAE9D,eAAe,EAAE,cAAcwB,IAAI,CAAA,EAAGzD,cAAc,GAAG,eAAe,GAAG,EAAE,CAAA,QAAA,CAAA;AAAW,SAAA;OACrG,CAAA;MAED,IAAIyD,IAAI,KAAK,SAAS,EAAE;AACtB,QAAA,IAAIC,QAAQ,EAAE;UACZ,OAAO;AACL,YAAA,GAAGoC,eAAe;AAClB7D,YAAAA,eAAe,EAAE,kBAAA;WAClB,CAAA;AACH,SAAA;AACF,OAAA;MAEA,IAAIwB,IAAI,KAAK,WAAW,EAAE;AACxB,QAAA,IAAIC,QAAQ,EAAE;UACZ,OAAO;AACL+B,YAAAA,WAAW,EAAE,CAAC;AACdD,YAAAA,WAAW,EAAE,kBAAA;WACd,CAAA;AACH,SAAA;AAEA,QAAA,IAAIxF,cAAc,EAAE;UAClB,OAAO;AACL,YAAA,GAAG8F,eAAe;AAClBL,YAAAA,WAAW,EAAE,CAAC;AACdD,YAAAA,WAAW,EAAE,8BAAA;WACd,CAAA;AACH,SAAA;QAEA,OAAO;AACL,UAAA,GAAGM,eAAe;AAClBL,UAAAA,WAAW,EAAE,CAAC;AACdD,UAAAA,WAAW,EAAE,qBAAA;SACd,CAAA;AACH,OAAA;MAEA,IAAI/B,IAAI,KAAK,QAAQ,EAAE;AACrB,QAAA,IAAIC,QAAQ,EAAE;UACZ,OAAO;AACL+B,YAAAA,WAAW,EAAE,CAAC;AACdD,YAAAA,WAAW,EAAE,kBAAA;WACd,CAAA;AACH,SAAA;QAEA,OAAO;AACL,UAAA,GAAGM,eAAe;AAClBL,UAAAA,WAAW,EAAE,CAAC;AACdD,UAAAA,WAAW,EAAE,gBAAA;SACd,CAAA;AACH,OAAA;AAEA,MAAA,OAAOM,eAAe,CAAA;KACvB;AACD9F,IAAAA,cAAc,EAAE;MACdjB,IAAI,EAAE,EAAE;AACRyF,MAAAA,KAAK,EAAE,EAAC;KACT;AACDtK,IAAAA,IAAI,EAAE;AACJ8L,MAAAA,KAAK,EAAE;AACLnH,QAAAA,MAAM,EAAE,EAAE;AACVyD,QAAAA,iBAAiB,EAAE,EAAE;AACrB2D,QAAAA,eAAe,EAAE,CAAA;OAClB;AACDC,MAAAA,KAAK,EAAE;AACLrH,QAAAA,MAAM,EAAE,EAAE;AACVyD,QAAAA,iBAAiB,EAAE,EAAE;AACrB2D,QAAAA,eAAe,EAAE,EAAA;AACnB,OAAA;KACD;AACDvC,IAAAA,QAAQ,EAAE;AACR3E,MAAAA,IAAI,EAAE;AACJoH,QAAAA,aAAa,EAAE,MAAM;AACrBC,QAAAA,SAAS,EAAE,KAAK;AAChB,QAAA,eAAe,EAAE,IAAA;OAClB;AACD5B,MAAAA,KAAK,EAAE,EAAC;KACT;AACDb,IAAAA,SAAS,EAAE;AACT5E,MAAAA,IAAI,EAAE;AACJ,QAAA,WAAW,EAAE,IAAA;OACd;AACDyF,MAAAA,KAAK,EAAE,EAAC;KACT;AACDZ,IAAAA,OAAO,EAAE;AACP7E,MAAAA,IAAI,EAAE;AACJqD,QAAAA,SAAS,EAAE,OAAO;AAClBiD,QAAAA,QAAQ,EAAE,CAAA;OACX;AACDb,MAAAA,KAAK,EAAE,EAAC;AACV,KAAA;AACF,GAAA;AACF,CAAC,CAAC,CAAA;AAEK,MAAM6B,cAAc,GAAGf,mBAAmB,CAACnC,SAAS,CAA2B,CAAClG,KAAK,EAAEqJ,GAAG,KAAK;AACpG,EAAA,MAAMlD,YAAY,GAAGpG,QAAQ,CAACC,KAAK,CAAC,CAAA;AAEpC,EAAA,IAAI,CAACA,KAAK,CAAC0G,SAAS,EAAE;IACpB,oBAAO9H,GAAA,CAACyJ,mBAAmB,EAAA;AAACgB,MAAAA,GAAG,EAAEA,GAAI;MAAA,GAAKlD,YAAAA;AAAY,KAAG,CAAC,CAAA;AAC5D,GAAA;;AAEA;EACA,oBACE3C,IAAA,CAAC6E,mBAAmB,EAAA;AAACgB,IAAAA,GAAG,EAAEA,GAAI;AAAA,IAAA,GAAKlD,YAAY;IAAAxH,QAAA,EAAA,cAC7CC,GAAA,CAACe,MAAM,EAAA;AAAC2J,MAAAA,OAAO,EAAE,CAAE;AAAChB,MAAAA,GAAG,EAAC,UAAU;MAAA3J,QAAA,EAC/BwH,YAAY,CAACxH,QAAAA;AAAQ,KAChB,CAAC,eAETC,GAAA,CAACK,IAAI,EAAA;AAAC8C,MAAAA,QAAQ,EAAC,UAAU;MAAApD,QAAA,eACvBC,GAAA,CAACiI,UAAU,EAAA;QAACnG,IAAI,eAAE9B,GAAA,CAACkE,MAAM,EAAA;AAAC7F,UAAAA,IAAI,EAAC,MAAA;SAAQ,CAAA;OAAI,CAAA;AAAC,KACxC,CAAC,CAAA;AAAA,GACY,CAAC,CAAA;AAE1B,CAAC,CAAC,CAAA;MAEWsM,MAAM,GAAGC,oBAAoB,CAACJ,cAAc,EAAE;AACzDrF,EAAAA,IAAI,EAAEoE,UAAU;AAChB5B,EAAAA,IAAI,EAAEM,UAAU;AAChBvB,EAAAA,KAAK,EAAEK,WAAAA;AACT,CAAC;;AC9IM,MAAM8D,uBAAuB,GAAGzK,MAAM,CAACoK,cAAc,EAAE;AAC5D5J,EAAAA,IAAI,EAAE,YAAY;EAClBwE,OAAO;AAEP3C,EAAAA,QAAQ,EAAE;AACRpE,IAAAA,IAAI,EAAE;AACJ8L,MAAAA,KAAK,EAAE;AACL1D,QAAAA,iBAAiB,EAAE,CAAC;AACpB2D,QAAAA,eAAe,EAAE,CAAA;OAClB;AACDC,MAAAA,KAAK,EAAE;AACL5D,QAAAA,iBAAiB,EAAE,EAAE;AACrB2D,QAAAA,eAAe,EAAE,EAAA;AACnB,OAAA;AACF,KAAA;AACF,GAAA;AACF,CAAC,CAAC,CAAA;AAEF,SAASU,kBAAkBA,CAAC1J,KAAsB,EAAa;EAC7D,oBAAOpB,GAAA,CAAC6K,uBAAuB,EAAA;IAAA,GAAKzJ,KAAAA;AAAK,GAAG,CAAC,CAAA;AAC/C,CAAA;MAEa2J,UAAU,GAAGH,oBAAoB,CAACE,kBAAkB,EAAE;AACjEnD,EAAAA,IAAI,EAAEM,UAAU;AAChBvB,EAAAA,KAAK,EAAEK,WAAAA;AACT,CAAC;;AC7BM,SAASiE,qBAAqBA,CACnCC,UAA8B,EAC9B;EAAEC,IAAI;EAAEf,KAAK;EAAEgB,MAAM;EAAEd,KAAK;AAAEe,EAAAA,IAAAA;AAA4B,CAAC,EACxD;AACH,EAAA,QAAQH,UAAU;IAChB,KAAK3N,kBAAkB,CAACM,IAAI;MAC1B,OAAOwN,IAAI,IAAIf,KAAK,IAAIc,MAAM,IAAIhB,KAAK,IAAIe,IAAI,CAAA;IACjD,KAAK5N,kBAAkB,CAACK,KAAK;AAC3B,MAAA,OAAO0M,KAAK,IAAIc,MAAM,IAAIhB,KAAK,IAAIe,IAAI,CAAA;IACzC,KAAK5N,kBAAkB,CAACI,MAAM;AAC5B,MAAA,OAAOyN,MAAM,IAAIhB,KAAK,IAAIe,IAAI,CAAA;IAChC,KAAK5N,kBAAkB,CAACG,KAAK;MAC3B,OAAO0M,KAAK,IAAIe,IAAI,CAAA;IACtB,KAAK5N,kBAAkB,CAACE,IAAI,CAAA;AAC5B,IAAA;AACE,MAAA,OAAO0N,IAAI,CAAA;AACf,GAAA;AACF;;ACxBO,SAASG,wBAAwBA,GAAuB;AAC7D,EAAA,MAAM/L,KAAK,GAAGgM,QAAQ,EAAE,CAAA;AAExB,EAAA,QAAQ,IAAI;IACV,KAAKhM,KAAK,CAAC8L,IAAI;MACb,OAAO9N,kBAAkB,CAACM,IAAI,CAAA;IAChC,KAAK0B,KAAK,CAAC+K,KAAK;MACd,OAAO/M,kBAAkB,CAACK,KAAK,CAAA;IACjC,KAAK2B,KAAK,CAAC6L,MAAM;MACf,OAAO7N,kBAAkB,CAACI,MAAM,CAAA;IAClC,KAAK4B,KAAK,CAAC6K,KAAK;MACd,OAAO7M,kBAAkB,CAACG,KAAK,CAAA;IACjC,KAAK6B,KAAK,CAAC4L,IAAI,CAAA;AACf,IAAA;MACE,OAAO5N,kBAAkB,CAACE,IAAI,CAAA;AAClC,GAAA;AACF;;ACdO,SAAS+N,kBAAkBA,CAAIC,MAA6B,EAAK;AACtE,EAAA,MAAMP,UAAU,GAAGI,wBAAwB,EAAE,CAAA;EAE7C,OAAOI,OAAO,CAAC,MAAM;AACnB,IAAA,OAAOT,qBAAqB,CAACC,UAAU,EAAEO,MAAM,CAAC,CAAA;AAClD,GAAC,EAAE,CAACP,UAAU,EAAEO,MAAM,CAAC,CAAC,CAAA;AAC1B;;ACJO,SAASE,iBAAiBA,CAACF,MAA8B,EAAa;AAC3E,EAAA,MAAMP,UAAU,GAAGI,wBAAwB,EAAE,CAAA;AAE7C,EAAA,OAAOL,qBAAqB,CAACC,UAAU,EAAEO,MAAM,CAAC,CAAA;AAClD;;;;"}
1
+ {"version":3,"file":"index-node-22.22.es.mjs","sources":["../src/system/core/tokens/palettes/deepPurpleColorPalette.ts","../src/system/core/themes/light/light.ts","../src/system/core/themes/index.ts","../src/system/core/tokens/GTStandardFont.ts","../src/system/core/tokens/GTStandardNarrowFont.ts","../src/system/core/tokens/breakpoints.ts","../src/system/core/tokens/bumperIcon.ts","../src/system/core/tokens/radius.ts","../src/system/core/tokens/size.ts","../src/system/core/tokens/space.ts","../src/tamagui.config.ts","../src/system/core/provider/BumperProvider.tsx","../src/system/core/primitives/Center.ts","../src/system/core/primitives/Pressable.tsx","../src/system/core/primitives/Stack.tsx","../src/system/core/hooks/useProps.ts","../src/system/loading/loader/loaderConfig.ts","../src/system/loading/loader/LoaderBackgroundCircle.tsx","../src/system/loading/loader/LoaderCircleWrapper.tsx","../src/system/loading/loader/LoaderForegroundCircle.tsx","../src/system/loading/loader/Loader.tsx","../src/system/content/typography/utils/typographyContext.ts","../src/system/content/typography/Typography.tsx","../src/system/dataDisplays/Badge/Badge.tsx","../src/system/actions/Button/components/ButtonBadge.tsx","../src/system/content/icon/Icon.tsx","../src/system/actions/Button/context.ts","../src/system/actions/Button/utils/contentColor.ts","../src/system/actions/Button/components/ButtonIcon.tsx","../src/system/content/typography/TypographyView.tsx","../src/system/content/typography/TypographyIcon.tsx","../src/system/content/typography/TypographyLink.tsx","../src/system/content/typography/index.ts","../src/system/actions/Button/components/ButtonText.tsx","../src/system/actions/Button/Button.tsx","../src/system/actions/IconButton/IconButton.tsx","../src/system/core/breakpoints/utils/breakpointsUtils.ts","../src/system/core/breakpoints/hooks/useCurrentBreakpointName.ts","../src/system/core/breakpoints/hooks/useBreakpointValue.ts","../src/system/core/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 | 4 | 6 | 7;\n green: 1 | 2 | 6 | 7;\n yellow: 1 | 2 | 6 | 7;\n red: 1 | 2 | 6 | 7;\n mauve: 1 | 2 | 3 | 4;\n 'deepPurple-alpha': '10';\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 4: '#72BAEB',\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: '#E2483D',\n 7: '#BD100F',\n }),\n mauve: createColorScale({\n 1: '#F8E7FF',\n 2: '#F1D0FB',\n 3: '#E4A4F9',\n 4: '#D283EC',\n }),\n 'deepPurple-alpha': createColorScale({\n '10': '#6E4D6E10',\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","// WARNING\n// If you modify this theme, don't forget to update the theme in @ornikar/kitt-universal as well\n\nimport { deepPurpleColorPalette } from '../../tokens/palettes/deepPurpleColorPalette';\nimport type { Theme } from '../types';\n\n// https://github.com/ornikar/kitt/blob/79e367e962c957c016c4df67dbcf515c8f45ff0e/@ornikar/kitt-universal/src/themes/late-ocean/colors.ts#L28\nexport const light: Theme = {\n // content\n 'content.base.low': deepPurpleColorPalette['grey.5'],\n 'content.base.mid': deepPurpleColorPalette['grey.7'],\n 'content.base.hi': deepPurpleColorPalette['grey.9'],\n 'content.base.onContrasted.low': deepPurpleColorPalette['white-alpha.60'],\n 'content.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.80'],\n 'content.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\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.low.default': deepPurpleColorPalette['grey.0'],\n 'bg.base.low.pressed': deepPurpleColorPalette['beige.1'],\n 'bg.base.mid.default': deepPurpleColorPalette['beige.1'],\n 'bg.base.mid.pressed': deepPurpleColorPalette['beige.2'],\n 'bg.base.hi.default': deepPurpleColorPalette['beige.2'],\n 'bg.base.hi.pressed': deepPurpleColorPalette['beige.3'],\n 'bg.accent.default': deepPurpleColorPalette['deepPurple.8'],\n 'bg.accent.pressed': deepPurpleColorPalette['deepPurple.7'],\n 'bg.promo.mid.default': deepPurpleColorPalette['lightning.5'],\n 'bg.promo.mid.pressed': deepPurpleColorPalette['lightning.4'],\n 'bg.promo.hi.default': deepPurpleColorPalette['lightning.9'],\n 'bg.promo.hi.pressed': deepPurpleColorPalette['lightning.8'],\n 'bg.highlight.mid.default': deepPurpleColorPalette['mauve.1'],\n 'bg.highlight.mid.pressed': deepPurpleColorPalette['mauve.2'],\n 'bg.highlight.hi.default': deepPurpleColorPalette['mauve.3'],\n 'bg.highlight.hi.pressed': deepPurpleColorPalette['mauve.4'],\n 'bg.info.mid': deepPurpleColorPalette['blue.1'],\n 'bg.info.hi': deepPurpleColorPalette['blue.6'],\n 'bg.success.mid': deepPurpleColorPalette['green.1'],\n 'bg.success.hi': deepPurpleColorPalette['green.6'],\n 'bg.warning.mid': deepPurpleColorPalette['yellow.1'],\n 'bg.warning.hi': deepPurpleColorPalette['yellow.6'],\n 'bg.danger.mid': deepPurpleColorPalette['red.1'],\n 'bg.danger.hi': deepPurpleColorPalette['red.6'],\n 'bg.disabled.mid': deepPurpleColorPalette['grey.1'],\n 'bg.disabled.hi': deepPurpleColorPalette['grey.3'],\n 'bg.overlay': deepPurpleColorPalette['grey-alpha.50'],\n\n // borders\n 'border.base.low': deepPurpleColorPalette['beige.2'],\n 'border.base.mid': deepPurpleColorPalette['beige.3'],\n 'border.base.hi': deepPurpleColorPalette['grey.9'],\n 'border.base.onContrasted.mid': deepPurpleColorPalette['white-alpha.20'],\n 'border.base.onContrasted.hi': deepPurpleColorPalette['grey.0'],\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 'border.highlight': deepPurpleColorPalette['mauve.3'],\n 'border.focus': deepPurpleColorPalette['blue.4'],\n 'border.transparent': deepPurpleColorPalette.transparent,\n\n // Buttons\n 'button.bg.primary.default': deepPurpleColorPalette['deepPurple.8'],\n 'button.bg.primary.pressed': deepPurpleColorPalette['deepPurple.7'],\n 'button.bg.primary.onContrasted.default': deepPurpleColorPalette['grey.0'],\n 'button.bg.primary.onContrasted.pressed': deepPurpleColorPalette['white-alpha.80'],\n 'button.bg.secondary.default': deepPurpleColorPalette.transparent,\n 'button.bg.secondary.pressed': deepPurpleColorPalette['deepPurple-alpha.10'],\n 'button.bg.secondary.onContrasted.default': deepPurpleColorPalette.transparent,\n 'button.bg.secondary.onContrasted.pressed': deepPurpleColorPalette['white-alpha.10'],\n 'button.bg.tertiary.default': deepPurpleColorPalette.transparent,\n 'button.bg.tertiary.pressed': deepPurpleColorPalette['deepPurple-alpha.10'],\n 'button.bg.tertiary.onContrasted.default': deepPurpleColorPalette.transparent,\n 'button.bg.tertiary.onContrasted.pressed': deepPurpleColorPalette['white-alpha.10'],\n 'button.bg.danger.default': deepPurpleColorPalette.transparent,\n 'button.bg.danger.pressed': deepPurpleColorPalette['red.1'],\n 'button.bg.danger.onContrasted.default': deepPurpleColorPalette.white,\n 'button.bg.danger.onContrasted.pressed': deepPurpleColorPalette['red.1'],\n};\n","import { light } from './light/light';\n\nexport const themes = {\n light,\n};\n","export const HEADING_VARIANTS = [\n 'heading-2xl',\n 'heading-xl',\n 'heading-l',\n 'heading-m',\n 'heading-s',\n 'heading-xs',\n 'heading-2xs',\n] as const;\nexport const BODY_VARIANTS = ['body-xl', 'body-l', 'body-m', 'body-s', 'body-xs'] as const;\nexport const LABEL_VARIANTS = ['label-l', 'label-m', 'label-s'] as const;\n\nexport type GTStandardVariants =\n | (typeof HEADING_VARIANTS)[number]\n | (typeof BODY_VARIANTS)[number]\n | (typeof LABEL_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\nexport const GTStandardFaces: Record<GTStandardFontWeight, Record<string, string>> = {\n 500: { normal: 'GTStandardRegular' },\n 600: { normal: 'GTStandardSemibold' },\n 700: { normal: 'GTStandardBold' },\n};\n\nexport const GTStandardSizes: Record<GTStandardVariants, number> = {\n 'heading-2xl': 56,\n 'heading-xl': 48,\n 'heading-l': 38,\n 'heading-m': 28,\n 'heading-s': 24,\n 'heading-xs': 20,\n 'heading-2xs': 16,\n 'body-xl': 24,\n 'body-l': 18,\n 'body-m': 16,\n 'body-s': 14,\n 'body-xs': 12,\n 'label-l': 16,\n 'label-m': 14,\n 'label-s': 12,\n};\n\nexport const GTStandardLineHeights: Record<GTStandardVariants, number> = {\n 'heading-2xl': 64,\n 'heading-xl': 56,\n 'heading-l': 44,\n 'heading-m': 32,\n 'heading-s': 28,\n 'heading-xs': 24,\n 'heading-2xs': 20,\n 'body-xl': 32,\n 'body-l': 26,\n 'body-m': 24,\n 'body-s': 20,\n 'body-xs': 16,\n 'label-l': 20,\n 'label-m': 18,\n 'label-s': 14,\n};\n\nexport const GTStandardLetterSpacings: Record<GTStandardVariants, 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 'heading-2xs': 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-l': 0,\n 'label-m': 0,\n 'label-s': 0,\n};\n\nexport const GTStandardWeights: Record<string, GTStandardFontWeight> = {\n bold: '700',\n semibold: '600',\n regular: '500',\n};\n","export const CONTENT_CAPS_VARIANTS = [\n 'content-caps-3xl',\n 'content-caps-2xl',\n 'content-caps-xl',\n 'content-caps-l',\n 'content-caps-m',\n 'content-caps-s',\n 'content-caps-xs',\n] as const;\n\nexport type ContentCapsVariants = (typeof CONTENT_CAPS_VARIANTS)[number];\n\nexport type GTStandardNarrowFontWeight = '700';\n\nexport const GTStandardNarrowFaces: Record<GTStandardNarrowFontWeight, Record<string, string>> = {\n 700: { normal: 'GTStandardNarrowBold' },\n};\n\nexport const GTStandardNarrowSizes: Record<ContentCapsVariants, number> = {\n 'content-caps-3xl': 40,\n 'content-caps-2xl': 32,\n 'content-caps-xl': 24,\n 'content-caps-l': 18,\n 'content-caps-m': 16,\n 'content-caps-s': 14,\n 'content-caps-xs': 12,\n};\n\nexport const GTStandardNarrowLineHeights: Record<ContentCapsVariants, number> = {\n 'content-caps-3xl': 40,\n 'content-caps-2xl': 40,\n 'content-caps-xl': 28,\n 'content-caps-l': 20,\n 'content-caps-m': 18,\n 'content-caps-s': 16,\n 'content-caps-xs': 14,\n};\n\nexport const GTStandardNarrowLetterSpacings: Record<ContentCapsVariants, number> = {\n 'content-caps-3xl': 0,\n 'content-caps-2xl': 0,\n 'content-caps-xl': 0,\n 'content-caps-l': 0,\n 'content-caps-m': 0,\n 'content-caps-s': 0,\n 'content-caps-xs': 0,\n};\n\nexport const GTStandardNarrowWeights: Record<string, GTStandardNarrowFontWeight> = {\n bold: '700',\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 type { GetTokenString, TamaguiConfig } from '@tamagui/core';\nimport { px } from '@tamagui/core';\n\nexport const bumperIconTokens = {\n 'icon.s': px(16),\n 'icon.m': px(20),\n 'icon.l': px(24),\n};\n\nexport type BumperIconTokens = GetTokenString<keyof TamaguiConfig['tokens']['bumperIcon']>;\n","export const radiusTokens = {\n 'radius.none': 0,\n 'radius.s': 2,\n 'radius.m': 4,\n 'radius.l': 8,\n 'radius.circle': 1000,\n};\n","export const sizeTokens = {\n 'size.16': 16,\n 'size.20': 20,\n 'size.24': 24,\n 'size.32': 32,\n 'size.48': 48,\n 'size.64': 64,\n 'size.80': 80,\n 'size.96': 96,\n 'size.120': 120,\n 'size.144': 144,\n 'size.176': 176,\n 'size.208': 208,\n};\n","export const spaceTokens = {\n 'space.none': 0,\n 'space.2': 2,\n 'space.4': 4,\n 'space.8': 8,\n 'space.12': 12,\n 'space.16': 16,\n 'space.24': 24,\n 'space.32': 32,\n 'space.40': 40,\n 'space.48': 48,\n 'space.56': 56,\n 'space.64': 64,\n 'space.80': 80,\n};\n","import { createFont, createTamagui, createTokens } from '@tamagui/core';\nimport { themes } from './system/core/themes';\nimport {\n GTStandardFaces,\n GTStandardLetterSpacings,\n GTStandardLineHeights,\n GTStandardSizes,\n GTStandardWeights,\n} from './system/core/tokens/GTStandardFont';\nimport {\n GTStandardNarrowFaces,\n GTStandardNarrowLetterSpacings,\n GTStandardNarrowLineHeights,\n GTStandardNarrowSizes,\n GTStandardNarrowWeights,\n} from './system/core/tokens/GTStandardNarrowFont';\nimport { BreakpointNameEnum, breakpoints } from './system/core/tokens/breakpoints';\nimport { bumperIconTokens } from './system/core/tokens/bumperIcon';\nimport { radiusTokens } from './system/core/tokens/radius';\nimport { sizeTokens } from './system/core/tokens/size';\nimport { spaceTokens } from './system/core/tokens/space';\n\nexport const GTStandardFont = createFont({\n family: 'GTStandard',\n size: GTStandardSizes,\n lineHeight: GTStandardLineHeights,\n letterSpacing: GTStandardLetterSpacings,\n weight: GTStandardWeights,\n face: GTStandardFaces,\n});\n\nexport const GTStandardNarrowFont = createFont({\n family: 'GTStandardNarrow',\n size: GTStandardNarrowSizes,\n lineHeight: GTStandardNarrowLineHeights,\n letterSpacing: GTStandardNarrowLetterSpacings,\n weight: GTStandardNarrowWeights,\n face: GTStandardNarrowFaces,\n});\n\nconst tokens = createTokens({\n color: {},\n space: spaceTokens,\n size: sizeTokens,\n radius: radiusTokens,\n bumperIcon: bumperIconTokens,\n});\n\nexport const config = createTamagui({\n tokens,\n fonts: {\n GTStandard: GTStandardFont,\n GTStandardNarrow: GTStandardNarrowFont,\n },\n themes,\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: 'except-special',\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 { styled } from '@tamagui/core';\nimport type { ViewProps } from './View';\nimport { View } from './View';\n\nexport interface CenterProps extends ViewProps {}\n\nexport const Center = styled(View, {\n justifyContent: 'center',\n alignItems: 'center',\n});\n","import type { GetProps, TamaguiComponent } from '@tamagui/core';\nimport { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport { View } from './View';\n\nexport type PressableProps<C extends TamaguiComponent = typeof View> = {\n /**\n * The Tamagui component to render as (`View`, `Stack`, etc.).\n *\n * @default View\n */\n as?: C;\n} & Except<GetProps<C>, 'as'>;\n\n/**\n * A polymorphic Pressable component that can render as any Tamagui primitive.\n */\nexport function Pressable<C extends TamaguiComponent = typeof View>({ as, ...rest }: PressableProps<C>): ReactNode {\n const Component = styled(as ?? View, {\n name: 'Pressable',\n role: 'button',\n cursor: 'pointer',\n });\n\n return <Component {...(rest as GetProps<C>)} />;\n}\n","import type { GetProps } from '@tamagui/core';\nimport { Stack, styled } from '@tamagui/core';\n\nexport type { StackProps } from '@tamagui/core';\nexport { Stack } from '@tamagui/core';\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","// eslint-disable-next-line no-restricted-imports\nimport { useProps as usePropsTamagui } from '@tamagui/core';\nimport type { PropsWithoutMediaStyles } from '../../types';\n\n// This hook is a wrapper around Tamagui's useProps to extract only the non-media props from the given props object.\n// It uses our custom PropsWithoutMediaStyles type to ensure that all media props are optional, even if they are required in the original props type. This is necessary for our components which have required media props (like variant for Typography).\nexport function useProps<P extends object>(props: P): PropsWithoutMediaStyles<P> {\n return usePropsTamagui(props) as unknown as PropsWithoutMediaStyles<P>;\n}\n","import { Easing } from 'react-native-reanimated';\n\nexport type LoaderSize = 'icon' | 'page';\ninterface LoaderConfig {\n size: number;\n strokeWidth: number;\n center: number;\n radius: number;\n circumference: number;\n viewBox: string;\n}\n\nfunction createLoaderSizeConfig(size: number, strokeWidth: number): LoaderConfig {\n const center = size / 2;\n const radius = center - strokeWidth;\n const circumference = 2 * Math.PI * radius;\n\n return {\n size,\n strokeWidth,\n center,\n radius,\n circumference,\n viewBox: `0 0 ${size} ${size}`,\n };\n}\n\nexport const LOADER_SIZE_CONFIG: Record<LoaderSize, LoaderConfig> = {\n icon: createLoaderSizeConfig(20, 1.5),\n page: createLoaderSizeConfig(48, 3),\n};\n\nexport const LOADER_ANIMATION = {\n duration: 2000,\n easing: Easing.inOut(Easing.ease),\n};\n","import { styled } from '@tamagui/core';\nimport { Circle } from 'react-native-svg';\nimport { LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst { icon, page } = LOADER_SIZE_CONFIG;\n\nexport const LoaderBackgroundCircle = styled(Circle, {\n fill: 'none',\n variants: {\n size: {\n icon: { strokeWidth: icon.strokeWidth, cx: icon.center, cy: icon.center, r: icon.radius },\n page: { strokeWidth: page.strokeWidth, cx: page.center, cy: page.center, r: page.radius },\n },\n } as const,\n});\n","import { styled } from '@tamagui/core';\nimport Svg from 'react-native-svg';\nimport { LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst { icon, page } = LOADER_SIZE_CONFIG;\n\nexport const LoaderCircleWrapper = styled(Svg, {\n variants: {\n size: {\n icon: { width: icon.size, height: icon.size, viewBox: icon.viewBox },\n page: { width: page.size, height: page.size, viewBox: page.viewBox },\n },\n isForeground: {\n true: {\n position: 'absolute',\n },\n },\n } as const,\n});\n","import type { ReactNode } from 'react';\nimport type { SharedValue } from 'react-native-reanimated';\nimport Animated, { useAnimatedProps } from 'react-native-reanimated';\nimport { Circle } from 'react-native-svg';\nimport type { LoaderSize } from './loaderConfig';\nimport { LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst AnimatedCircle = Animated.createAnimatedComponent(Circle);\n\ninterface LoaderForegroundCircleProps {\n color: string;\n size: LoaderSize;\n progress: SharedValue<number>;\n}\n\nexport function LoaderForegroundCircle({ color, size, progress }: LoaderForegroundCircleProps): ReactNode {\n const { center, radius, circumference, strokeWidth } = LOADER_SIZE_CONFIG[size];\n\n const animatedProps = useAnimatedProps(\n () => ({\n strokeDashoffset: circumference - 2 * circumference * progress.value,\n }),\n [circumference, progress],\n );\n\n return (\n <AnimatedCircle\n cx={center}\n cy={center}\n r={radius}\n stroke={color}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n fill=\"none\"\n strokeDasharray={circumference}\n animatedProps={animatedProps}\n />\n );\n}\n","import { styled, useStyle } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { useEffect } from 'react';\nimport { useSharedValue, withRepeat, withTiming } from 'react-native-reanimated';\nimport { View } from '../../core/primitives/View';\nimport type { TamaguiMediaProps } from '../../types';\nimport { LoaderBackgroundCircle } from './LoaderBackgroundCircle';\nimport { LoaderCircleWrapper } from './LoaderCircleWrapper';\nimport { LoaderForegroundCircle } from './LoaderForegroundCircle';\nimport type { LoaderSize } from './loaderConfig';\nimport { LOADER_ANIMATION, LOADER_SIZE_CONFIG } from './loaderConfig';\n\nconst { icon, page } = LOADER_SIZE_CONFIG;\n\nconst LoaderContainer = styled(View, {\n name: 'Loader',\n position: 'relative',\n rotate: '-90deg',\n variants: {\n size: {\n icon: { width: icon.size, height: icon.size },\n page: { width: page.size, height: page.size },\n },\n } as const,\n});\n\ninterface InternalLoaderProps {\n /** The size of the loader. `'icon'` renders a small 20px loader, `'page'` renders a larger 48px loader.\n * @default 'page'\n * */\n size?: LoaderSize;\n /** Whether the loader is displayed on a contrasted (dark) background. When `true`, uses a high-contrast foreground color.\n * @default false\n * */\n isOnContrasted?: boolean;\n /** Test ID passed to the root container for testing purposes. */\n testID?: string;\n}\n\nexport type LoaderProps = TamaguiMediaProps<InternalLoaderProps>;\n\nexport function Loader({ size = 'page', isOnContrasted = false, testID }: LoaderProps): ReactNode {\n const backgroundStyle = useStyle({ color: '$border.base.mid' });\n const foregroundStyle = useStyle({\n color: isOnContrasted ? '$border.base.onContrasted.hi' : '$content.accent',\n });\n\n const progress = useSharedValue(0);\n\n useEffect(() => {\n progress.value = withRepeat(withTiming(1, LOADER_ANIMATION), -1, false);\n }, [progress]);\n\n return (\n <LoaderContainer size={size} testID={testID}>\n <LoaderCircleWrapper size={size}>\n <LoaderBackgroundCircle size={size} stroke={backgroundStyle.color} />\n </LoaderCircleWrapper>\n\n <LoaderCircleWrapper isForeground size={size}>\n <LoaderForegroundCircle color={String(foregroundStyle.color)} size={size} progress={progress} />\n </LoaderCircleWrapper>\n </LoaderContainer>\n );\n}\n","import type { ColorTokens } from '@tamagui/core';\nimport { createStyledContext } from '@tamagui/core';\nimport type { FontVariants } from '../../../core/tokens/fonts';\n\nexport type TypographyVariantContextValue = FontVariants | undefined;\nexport type TypographyWeightContextValue = 'regular' | 'bold' | 'semibold' | undefined;\nexport type TypograhyColorContextValue = ColorTokens | undefined;\n\nexport const typographyStyleContext = createStyledContext<{\n color: TypograhyColorContextValue;\n weight: TypographyWeightContextValue;\n variant: TypographyVariantContextValue;\n}>({\n color: undefined,\n weight: undefined,\n variant: undefined,\n});\n","import type { ColorTokens, GetProps } from '@tamagui/core';\nimport { Text, styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { type Except } from 'type-fest';\nimport {\n BODY_VARIANTS,\n type BodyFontVariants,\n HEADING_VARIANTS,\n type HeadingFontVariants,\n LABEL_VARIANTS,\n type LabelFontVariants,\n} from '../../core/tokens/GTStandardFont';\nimport { CONTENT_CAPS_VARIANTS, type ContentCapsVariants } from '../../core/tokens/GTStandardNarrowFont';\nimport type { FontVariants } from '../../core/tokens/fonts';\nimport type { TamaguiMediaProps } from '../../types';\nimport { typographyStyleContext } from './utils/typographyContext';\n\ninterface TypographyWithoutMediaProps extends TypographyPropsWithoutFontStyleProps {}\n\n// Remove font-related style props from InternalTypography Props\ntype TypographyExcludedFontStyleProps =\n | 'fontFamily'\n | 'fontSize'\n | 'lineHeight'\n | 'fontStyle'\n | 'fontVariant'\n | 'fontWeight'\n | 'color';\n\ntype TypographyPropsWithoutFontStyleProps = Except<InternalTypographyProps, TypographyExcludedFontStyleProps> & {\n color?: ColorTokens;\n};\n\nexport interface BodyProps extends TypographyWithoutMediaProps {\n variant?: BodyFontVariants;\n weight?: 'regular' | 'bold';\n}\nexport interface HeadingLabelProps extends TypographyWithoutMediaProps {\n variant: HeadingFontVariants | LabelFontVariants;\n weight?: 'semibold';\n}\nexport interface ContentCapsProps extends TypographyWithoutMediaProps {\n variant: ContentCapsVariants;\n weight?: 'bold';\n}\n\nexport type TypographyTextProps =\n | TamaguiMediaProps<BodyProps>\n | TamaguiMediaProps<HeadingLabelProps>\n | TamaguiMediaProps<ContentCapsProps>;\n\nexport const InternalTypography = styled(Text, {\n context: typographyStyleContext,\n fontFamily: '$GTStandard',\n fontSize: '$body-m',\n lineHeight: '$body-m',\n letterSpacing: '$body-m',\n fontWeight: '$regular',\n color: '$content.base.hi',\n '$platform-web': {\n WebkitFontSmoothing: 'antialiased',\n },\n variants: {\n variant: (variant: FontVariants) => {\n const commonVariantStyles = {\n fontSize: `$${variant}`,\n lineHeight: `$${variant}`,\n letterSpacing: `$${variant}`,\n };\n\n // Body variant\n if ((BODY_VARIANTS as readonly string[]).includes(variant)) {\n return {\n ...commonVariantStyles,\n };\n }\n // Content Caps variant\n if ((CONTENT_CAPS_VARIANTS as readonly string[]).includes(variant)) {\n return {\n fontFamily: '$GTStandardNarrow',\n textTransform: 'uppercase',\n fontWeight: '$bold',\n ...commonVariantStyles,\n };\n }\n // Heading variants\n if ((HEADING_VARIANTS as readonly string[]).includes(variant)) {\n return {\n fontWeight: '$semibold',\n ...commonVariantStyles,\n };\n }\n // Label variants\n if ((LABEL_VARIANTS as readonly string[]).includes(variant)) {\n return {\n fontWeight: '$semibold',\n ...commonVariantStyles,\n };\n }\n\n return undefined;\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 weight: 'regular',\n },\n});\n\nexport type InternalTypographyProps = GetProps<typeof InternalTypography>;\n\nexport function TypographyBase(props: TypographyTextProps): ReactNode {\n return <InternalTypography {...props} />;\n}\n\nexport const createHeading = (level: number): ((props: TypographyTextProps) => ReactNode) => {\n // eslint-disable-next-line func-names\n return function (props: TypographyTextProps): ReactNode {\n return <InternalTypography role=\"heading\" aria-level={level} {...props} />;\n };\n};\n","import { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { InternalTypography } from '../../content/typography/Typography';\nimport { useProps } from '../../core/hooks/useProps';\nimport { Center } from '../../core/primitives/Center';\nimport type { TamaguiMediaProps } from '../../types';\n\nexport interface BadgeWithoutMediaProps {\n /** The count to display. If undefined, it renders as a dot. */\n count?: number;\n /**\n * Maximum count to display. Shows \"{max}+\" when count exceeds max.\n * @default 9\n */\n maxCount?: number;\n}\n\nexport type BadgeProps = TamaguiMediaProps<BadgeWithoutMediaProps>;\n\nconst DOT_SIZE = 8;\nconst MIN_COUNT_WIDTH = 16;\n\nconst BadgeBase = styled(Center, {\n borderRadius: '$radius.circle',\n backgroundColor: '$bg.danger.hi',\n});\n\nconst BadgeDot = styled(BadgeBase, {\n width: DOT_SIZE,\n height: DOT_SIZE,\n});\n\nconst BadgeCount = styled(BadgeBase, {\n alignSelf: 'flex-start',\n minWidth: MIN_COUNT_WIDTH,\n minHeight: MIN_COUNT_WIDTH,\n paddingHorizontal: '$space.4',\n});\n\nexport function Badge(props: BadgeProps): ReactNode {\n const { count, maxCount = 9 } = useProps(props);\n\n if (count === undefined) {\n return <BadgeDot />;\n }\n\n const displayCount = count > maxCount ? `${maxCount}+` : `${count}`;\n\n return (\n <BadgeCount>\n <InternalTypography\n variant=\"content-caps-xs\"\n weight=\"bold\"\n color=\"$content.base.onContrasted.hi\"\n // Adjust the line-height of the component\n paddingBottom={1}\n >\n {displayCount}\n </InternalTypography>\n </BadgeCount>\n );\n}\n","import type { ReactNode } from 'react';\nimport { View } from '../../../core/primitives/View';\nimport type { BadgeProps } from '../../../dataDisplays/Badge/Badge';\nimport { Badge } from '../../../dataDisplays/Badge/Badge';\n\nexport interface ButtonBadgeProps extends Pick<BadgeProps, 'count' | 'maxCount'> {}\n\nexport function ButtonBadge(props: ButtonBadgeProps): ReactNode {\n // Dot badge (no count) is inset by 4px; numbered badge overflows by 4px\n const offset = props.count === undefined ? 4 : -4;\n\n return (\n <View position=\"absolute\" top={offset} right={offset}>\n <Badge {...props} />\n </View>\n );\n}\n","import type { ColorTokens, GetProps } from '@tamagui/core';\nimport { styled, useStyle } from '@tamagui/core';\nimport type { ReactElement, ReactNode } from 'react';\nimport { cloneElement } from 'react';\nimport { useProps } from '../../core/hooks/useProps';\nimport { View } from '../../core/primitives/View';\nimport type { BumperIconTokens } from '../../core/tokens/bumperIcon';\nimport type { TamaguiMediaProps } from '../../types';\n\nconst IconContainer = styled(View, {\n name: 'Icon',\n variants: {\n size: (iconSize: BumperIconTokens, { tokens }) => {\n return {\n width: tokens.bumperIcon[iconSize],\n height: tokens.bumperIcon[iconSize],\n };\n },\n } as const,\n\n defaultVariants: {\n size: '$icon.m',\n },\n});\n\ntype IconContainerProps = GetProps<typeof IconContainer>;\n\nexport interface IconElementProps {\n color?: ColorTokens;\n}\n\ninterface InternalIconProps {\n icon: ReactElement<IconElementProps>;\n color?: ColorTokens;\n size?: IconContainerProps['size'];\n testID?: IconContainerProps['testID'];\n /** @ignore */\n alignSelf?: IconContainerProps['alignSelf'];\n}\n\nexport type IconProps = TamaguiMediaProps<InternalIconProps>;\n\nexport const InternalIcon = IconContainer.styleable<IconProps>((props) => {\n const flattenProps = useProps(props);\n const style = useStyle({ color: flattenProps.color || '$content.base.hi' });\n\n const clonedIcon = cloneElement(flattenProps.icon, { color: style.color });\n\n return (\n <IconContainer\n {...(flattenProps.size !== undefined ? { size: flattenProps.size } : undefined)}\n testID={flattenProps.testID}\n alignSelf={flattenProps.alignSelf}\n >\n {clonedIcon}\n </IconContainer>\n );\n});\n\nexport function Icon(props: IconProps): ReactNode {\n return <InternalIcon {...props} />;\n}\n","import { createStyledContext } from '@tamagui/core';\nimport type { ButtonWithoutMediaProps } from './types';\n\nexport type { ButtonSize, ButtonType } from './types';\n\ntype ButtonContextProps = Required<\n Pick<ButtonWithoutMediaProps, 'size' | 'type' | 'isOnContrasted' | 'disabled' | 'isLoading' | 'stretch'>\n>;\n\nexport const context = createStyledContext<ButtonContextProps>({\n size: 'large',\n type: 'secondary',\n isOnContrasted: false,\n disabled: false,\n isLoading: false,\n stretch: false,\n});\n","import type { ColorTokens } from '@tamagui/core';\nimport type { ButtonType } from '../types';\n\nexport function getButtonContentColor(type: ButtonType, disabled?: boolean, isOnContrasted?: boolean): ColorTokens {\n if (disabled) {\n return '$content.disabled';\n }\n\n switch (type) {\n case 'secondary':\n case 'tertiary':\n return isOnContrasted ? '$content.base.onContrasted.hi' : '$content.accent';\n\n case 'danger':\n return '$content.danger';\n case 'primary':\n default:\n return isOnContrasted ? '$content.accent' : '$content.base.onContrasted.hi';\n }\n}\n","import type { ReactNode } from 'react';\nimport type { IconProps } from '../../../content/icon/Icon';\nimport { Icon } from '../../../content/icon/Icon';\nimport { context } from '../context';\nimport { getButtonContentColor } from '../utils/contentColor';\n\nexport interface ButtonIconProps extends Pick<IconProps, 'icon'> {}\n\nexport function ButtonIcon({ icon }: ButtonIconProps): ReactNode {\n const { type, disabled, isOnContrasted } = context.useStyledContext();\n\n const color = getButtonContentColor(type, disabled, isOnContrasted);\n\n return <Icon icon={icon} size=\"$icon.m\" color={color} />;\n}\n","import type { GetProps } from '@tamagui/core';\nimport { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport { View } from '../../core/primitives/View';\n\n/**\n *\n * A wrapper component that applies typography styles to its children in order to maintain consistent style between web and native\n * In native, it simply renders a View as it renders correctly by default\n * In web, it ensures that the display is set to inline-flex when inside a Typography context\n *\n * React Native Web includes this implementation in its codebase\n * but Tamagui does not use React Native Webview, we need to implement it ourselves\n *\n * Inside a Typography component, always use TypographyView to wrap external components like Icon or Svg\n */\nconst InternalTypographyView = styled(View, {\n name: 'TypographyViewInternal',\n '$platform-web': {\n display: 'inline-flex',\n },\n});\n\ntype TypographyViewProps = GetProps<typeof InternalTypographyView>;\n\nexport function TypographyView(props: TypographyViewProps): ReactNode {\n return <InternalTypographyView {...props} />;\n}\n","import { styled } from '@tamagui/core';\nimport { type ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { TamaguiMediaProps } from '../../types';\nimport type { IconProps } from '../icon/Icon';\nimport { InternalIcon } from '../icon/Icon';\nimport type { TypographyTextProps } from './Typography';\nimport { TypographyView } from './TypographyView';\nimport { typographyStyleContext } from './utils/typographyContext';\n\ninterface TypographyIconWithoutMediaProps extends Except<IconProps, 'color'> {\n color?: TypographyTextProps['color'];\n}\n\nconst TypographyIconInternal = styled(InternalIcon, {\n name: 'TypographyIconInternal',\n context: typographyStyleContext,\n});\n\nexport type TypographyIconProps = TamaguiMediaProps<TypographyIconWithoutMediaProps>;\n\nexport function TypographyIcon(props: TypographyIconProps): ReactNode {\n return (\n <TypographyView>\n <TypographyIconInternal {...props} />\n </TypographyView>\n );\n}\n","import { styled } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport type { TamaguiMediaProps } from '../../types';\nimport type { TypographyTextProps } from './Typography';\nimport { InternalTypography } from './Typography';\nimport { typographyStyleContext } from './utils/typographyContext';\n\nexport interface TypographyLinkWithoutMediaProps {\n disabled?: boolean;\n noUnderline?: boolean;\n onPress?: () => void;\n}\n\nexport type TypographyLinkProps = TypographyTextProps & TamaguiMediaProps<TypographyLinkWithoutMediaProps>;\n\nexport const InternalTypographyLink = styled(InternalTypography, {\n name: 'TypographyLink',\n context: typographyStyleContext,\n role: 'link',\n tag: 'a',\n variants: {\n disabled: {\n true: {\n cursor: 'not-allowed',\n onPress: undefined,\n color: '$content.disabled',\n hoverStyle: undefined,\n },\n false: {\n cursor: 'pointer',\n hoverStyle: {\n textDecorationLine: 'none',\n },\n },\n },\n noUnderline: {\n true: {\n textDecorationLine: 'none',\n },\n false: {\n textDecorationLine: 'underline',\n },\n },\n } as const,\n defaultVariants: {\n disabled: false,\n noUnderline: false,\n },\n});\n\nexport function TypographyLink(props: TypographyLinkProps): ReactNode {\n return <InternalTypographyLink {...props} />;\n}\n","import { TypographyBase, createHeading } from './Typography';\nimport { TypographyIcon } from './TypographyIcon';\nimport { TypographyLink } from './TypographyLink';\n\nexport const Typography = {\n Text: TypographyBase,\n Header1: createHeading(1),\n Header2: createHeading(2),\n Header3: createHeading(3),\n Header4: createHeading(4),\n Header5: createHeading(5),\n Header6: createHeading(6),\n Icon: TypographyIcon,\n Link: TypographyLink,\n};\n","import type { ReactNode } from 'react';\nimport { Typography } from '../../../content/typography';\nimport type { TypographyTextProps } from '../../../content/typography/Typography';\nimport { VStack } from '../../../core/primitives/Stack';\nimport { View } from '../../../core/primitives/View';\nimport { context } from '../context';\nimport { getButtonContentColor } from '../utils/contentColor';\n\nexport interface ButtonTextProps extends Pick<TypographyTextProps, 'children'> {}\n\nexport function ButtonText({ children }: ButtonTextProps): ReactNode {\n const { type, size, disabled, isOnContrasted } = context.useStyledContext();\n\n const color = getButtonContentColor(type, disabled, isOnContrasted);\n\n return (\n <VStack>\n <Typography.Text variant={size === 'large' ? 'label-l' : 'label-m'} color={color}>\n {children}\n </Typography.Text>\n\n {type === 'tertiary' ? <View height={1} flexGrow={1} backgroundColor={color} /> : null}\n </VStack>\n );\n}\n","import { styled, withStaticProperties } from '@tamagui/core';\nimport { useProps } from '../../core/hooks/useProps';\nimport { HStack } from '../../core/primitives/Stack';\nimport { View } from '../../core/primitives/View';\nimport { Loader } from '../../loading/loader/Loader';\nimport { ButtonBadge } from './components/ButtonBadge';\nimport { ButtonIcon } from './components/ButtonIcon';\nimport { ButtonText } from './components/ButtonText';\nimport type { ButtonType } from './context';\nimport { context } from './context';\nimport type { ButtonProps, ButtonTypeStyle } from './types';\n\nexport const InternalButtonFrame = styled(HStack, {\n name: 'Button',\n context,\n role: 'button',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: '$radius.m',\n alignSelf: 'flex-start',\n gap: '$space.8',\n cursor: 'pointer',\n // Ensures that all the buttons have the strict same size. box-sizing is not usable on native.\n borderColor: '$border.transparent',\n borderWidth: 1,\n\n focusVisibleStyle: {\n outlineWidth: 3,\n outlineColor: '$border.focus',\n outlineStyle: 'solid',\n },\n\n variants: {\n type: (type: ButtonType) => {\n const { isOnContrasted, disabled } = context.useStyledContext();\n\n const commonTypeStyle: ButtonTypeStyle = {\n backgroundColor: `$button.bg.${type}${isOnContrasted ? '.onContrasted' : ''}.default`,\n hoverStyle: { backgroundColor: `$button.bg.${type}${isOnContrasted ? '.onContrasted' : ''}.pressed` },\n pressStyle: { backgroundColor: `$button.bg.${type}${isOnContrasted ? '.onContrasted' : ''}.pressed` },\n };\n\n if (type === 'primary') {\n if (disabled) {\n return {\n ...commonTypeStyle,\n backgroundColor: '$bg.disabled.mid',\n };\n }\n }\n\n if (type === 'secondary') {\n if (disabled) {\n return {\n borderWidth: 1,\n borderColor: '$border.disabled',\n };\n }\n\n if (isOnContrasted) {\n return {\n ...commonTypeStyle,\n borderWidth: 1,\n borderColor: '$border.base.onContrasted.hi',\n };\n }\n\n return {\n ...commonTypeStyle,\n borderWidth: 1,\n borderColor: '$border.base.accent',\n };\n }\n\n if (type === 'danger') {\n if (disabled) {\n return {\n borderWidth: 1,\n borderColor: '$border.disabled',\n };\n }\n\n return {\n ...commonTypeStyle,\n borderWidth: 1,\n borderColor: '$border.danger',\n };\n }\n\n return commonTypeStyle;\n },\n isOnContrasted: {\n true: {},\n false: {},\n },\n size: {\n small: {\n height: 36,\n paddingHorizontal: 12,\n paddingVertical: 8,\n },\n large: {\n height: 48,\n paddingHorizontal: 16,\n paddingVertical: 14,\n },\n },\n disabled: {\n true: {\n pointerEvents: 'none',\n focusable: false,\n 'aria-disabled': true,\n },\n false: {},\n },\n isLoading: {\n true: {\n 'aria-busy': true,\n },\n false: {},\n },\n stretch: {\n true: {\n alignSelf: 'unset',\n flexGrow: 1,\n },\n false: {},\n },\n } as const,\n});\n\nexport const InternalButton = InternalButtonFrame.styleable<ButtonProps, ButtonProps>((props, ref) => {\n const flattenProps = useProps(props);\n\n if (!props.isLoading) {\n return <InternalButtonFrame ref={ref} {...flattenProps} />;\n }\n\n // When loading, we hide the other children instead of conditionnaly rendering them so that the Button can keep its real size.\n return (\n <InternalButtonFrame ref={ref} {...flattenProps}>\n <HStack opacity={0} gap=\"$space.8\">\n {flattenProps.children}\n </HStack>\n\n <View position=\"absolute\">\n <ButtonIcon icon={<Loader size=\"icon\" />} />\n </View>\n </InternalButtonFrame>\n );\n});\n\nexport const Button = withStaticProperties(InternalButton, {\n Text: ButtonText,\n Icon: ButtonIcon,\n Badge: ButtonBadge,\n});\n","import { styled, withStaticProperties } from '@tamagui/core';\nimport type { ReactNode } from 'react';\nimport type { Except } from 'type-fest';\nimport type { TamaguiMediaProps } from '../../types';\nimport { InternalButton } from '../Button/Button';\nimport { ButtonBadge } from '../Button/components/ButtonBadge';\nimport { ButtonIcon } from '../Button/components/ButtonIcon';\nimport { context } from '../Button/context';\nimport type { ButtonWithoutMediaProps } from '../Button/types';\n\nexport interface IconButtonWithoutMediaProps extends Except<ButtonWithoutMediaProps, 'stretch'> {}\n\nexport type IconButtonProps = TamaguiMediaProps<IconButtonWithoutMediaProps>;\n\nexport const InternalIconButtonFrame = styled(InternalButton, {\n name: 'IconButton',\n context,\n\n variants: {\n size: {\n small: {\n paddingHorizontal: 8,\n paddingVertical: 8,\n },\n large: {\n paddingHorizontal: 14,\n paddingVertical: 14,\n },\n },\n } as const,\n});\n\nfunction InternalIconButton(props: IconButtonProps): ReactNode {\n return <InternalIconButtonFrame {...props} />;\n}\n\nexport const IconButton = withStaticProperties(InternalIconButton, {\n Icon: ButtonIcon,\n Badge: ButtonBadge,\n});\n","import { BreakpointNameEnum } from '../../tokens/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 '../../tokens/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","mauve","transformColorScalesToTokens","Object","fromEntries","entries","flatMap","colorName","map","scaleNumber","colorValue","deepPurpleColorPalette","white","black","transparent","light","themes","HEADING_VARIANTS","BODY_VARIANTS","LABEL_VARIANTS","GTStandardFaces","normal","GTStandardSizes","GTStandardLineHeights","GTStandardLetterSpacings","GTStandardWeights","bold","semibold","regular","CONTENT_CAPS_VARIANTS","GTStandardNarrowFaces","GTStandardNarrowSizes","GTStandardNarrowLineHeights","GTStandardNarrowLetterSpacings","GTStandardNarrowWeights","BreakpointNameEnum","breakpoints","BASE","SMALL","MEDIUM","LARGE","WIDE","bumperIconTokens","px","radiusTokens","sizeTokens","spaceTokens","GTStandardFont","createFont","family","size","lineHeight","letterSpacing","weight","face","GTStandardNarrowFont","tokens","createTokens","color","space","radius","bumperIcon","config","createTamagui","fonts","GTStandard","GTStandardNarrow","media","minWidth","settings","allowedStyleValues","disableSSR","styleCompat","autocompleteSpecificTokens","debug","BumperProvider","children","_jsx","TamaguiProvider","defaultTheme","Center","styled","View","justifyContent","alignItems","Pressable","as","rest","Component","name","role","cursor","HStack","Stack","flexDirection","VStack","useProps","props","usePropsTamagui","createLoaderSizeConfig","strokeWidth","center","circumference","Math","PI","viewBox","LOADER_SIZE_CONFIG","icon","page","LOADER_ANIMATION","duration","easing","Easing","inOut","ease","LoaderBackgroundCircle","Circle","fill","variants","cx","cy","r","LoaderCircleWrapper","Svg","width","height","isForeground","true","position","AnimatedCircle","Animated","createAnimatedComponent","LoaderForegroundCircle","progress","animatedProps","useAnimatedProps","strokeDashoffset","value","stroke","strokeLinecap","strokeDasharray","LoaderContainer","rotate","Loader","isOnContrasted","testID","backgroundStyle","useStyle","foregroundStyle","useSharedValue","useEffect","withRepeat","withTiming","_jsxs","String","typographyStyleContext","createStyledContext","undefined","variant","InternalTypography","Text","context","fontFamily","fontSize","fontWeight","WebkitFontSmoothing","commonVariantStyles","includes","textTransform","defaultVariants","TypographyBase","createHeading","level","DOT_SIZE","MIN_COUNT_WIDTH","BadgeBase","borderRadius","backgroundColor","BadgeDot","BadgeCount","alignSelf","minHeight","paddingHorizontal","Badge","count","maxCount","displayCount","paddingBottom","ButtonBadge","offset","top","right","IconContainer","iconSize","InternalIcon","styleable","flattenProps","style","clonedIcon","cloneElement","Icon","type","disabled","isLoading","stretch","getButtonContentColor","ButtonIcon","useStyledContext","InternalTypographyView","display","TypographyView","TypographyIconInternal","TypographyIcon","InternalTypographyLink","tag","onPress","hoverStyle","false","textDecorationLine","noUnderline","TypographyLink","Typography","Header1","Header2","Header3","Header4","Header5","Header6","Link","ButtonText","flexGrow","InternalButtonFrame","gap","borderColor","borderWidth","focusVisibleStyle","outlineWidth","outlineColor","outlineStyle","commonTypeStyle","pressStyle","small","paddingVertical","large","pointerEvents","focusable","InternalButton","ref","opacity","Button","withStaticProperties","InternalIconButtonFrame","InternalIconButton","IconButton","getValueForBreakpoint","breakpoint","base","medium","wide","useCurrentBreakpointName","useMedia","useBreakpointValue","values","useMemo","SwitchBreakpoints"],"mappings":"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"}
@@ -789,6 +789,9 @@ const IconContainer = styled(View, {
789
789
  height: tokens.bumperIcon[iconSize]
790
790
  };
791
791
  }
792
+ },
793
+ defaultVariants: {
794
+ size: '$icon.m'
792
795
  }
793
796
  });
794
797
  const InternalIcon = IconContainer.styleable(props => {
@@ -800,7 +803,9 @@ const InternalIcon = IconContainer.styleable(props => {
800
803
  color: style.color
801
804
  });
802
805
  return /*#__PURE__*/jsx(IconContainer, {
803
- size: flattenProps.size,
806
+ ...(flattenProps.size !== undefined ? {
807
+ size: flattenProps.size
808
+ } : undefined),
804
809
  testID: flattenProps.testID,
805
810
  alignSelf: flattenProps.alignSelf,
806
811
  children: clonedIcon
@@ -881,6 +886,7 @@ const InternalTypographyLink = styled(InternalTypography, {
881
886
  name: 'TypographyLink',
882
887
  context: typographyStyleContext,
883
888
  role: 'link',
889
+ tag: 'a',
884
890
  variants: {
885
891
  disabled: {
886
892
  true: {