app-studio 0.1.44 → 0.2.1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appstudio.umd.development.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/providers/Responsive.tsx","../src/utils/constants.ts","../src/utils/style.ts","../src/utils/animation.ts","../src/utils/shadow.ts","../src/components/Element.tsx","../src/components/View.tsx","../src/components/Image.tsx","../src/components/Text.tsx","../src/components/Form.tsx","../src/components/Animation.tsx","../src/utils/typography.ts","../src/utils/env.ts","../src/hooks/useMount.ts","../src/hooks/useResponsive.ts"],"sourcesContent":["export type ColorPalette = Record<string, Record<number, string>>;\n\nexport type ColorSingleton = Record<\n string,\n {\n 50: string;\n 100: string;\n 200: string;\n 300: string;\n 400: string;\n 500: string;\n 600: string;\n 700: string;\n 800: string;\n 900: string;\n }\n>;\n\nexport const palette: ColorPalette = {\n white: {\n 50: 'rgba(255, 255, 255, 0.04)',\n 100: 'rgba(255, 255, 255, 0.08)',\n 200: 'rgba(255, 255, 255, 0.16)',\n 300: 'rgba(255, 255, 255, 0.24)',\n 400: 'rgba(255, 255, 255, 0.36)',\n 500: 'rgba(255, 255, 255, 0.48)',\n 600: 'rgba(255, 255, 255, 0.64)',\n 700: 'rgba(255, 255, 255, 0.80)',\n 800: 'rgba(255, 255, 255, 0.92)',\n 900: 'rgba(255, 255, 255, 1)',\n },\n\n black: {\n 50: 'rgba(0, 0, 0, 0.04)',\n 100: 'rgba(0, 0, 0, 0.08)',\n 200: 'rgba(0, 0, 0, 0.16)',\n 300: 'rgba(0, 0, 0, 0.24)',\n 400: 'rgba(0, 0, 0, 0.36)',\n 500: 'rgba(0, 0, 0, 0.48)',\n 600: 'rgba(0, 0, 0, 0.64)',\n 700: 'rgba(0, 0, 0, 0.80)',\n 800: 'rgba(0, 0, 0, 0.92)',\n 900: 'rgba(0, 0, 0, 1)',\n },\n rose: {\n 50: '#fff1f2',\n 100: '#ffe4e6',\n 200: '#fecdd3',\n 300: '#fda4af',\n 400: '#fb7185',\n 500: '#f43f5e',\n 600: '#e11d48',\n 700: '#be123c',\n 800: '#9f1239',\n 900: '#881337',\n },\n pink: {\n 50: '#fdf2f8',\n 100: '#fce7f3',\n 200: '#fbcfe8',\n 300: '#f9a8d4',\n 400: '#f472b6',\n 500: '#ec4899',\n 600: '#db2777',\n 700: '#be185d',\n 800: '#9d174d',\n 900: '#831843',\n },\n fuchsia: {\n 50: '#fdf4ff',\n 100: '#fae8ff',\n 200: '#f5d0fe',\n 300: '#f0abfc',\n 400: '#e879f9',\n 500: '#d946ef',\n 600: '#c026d3',\n 700: '#a21caf',\n 800: '#86198f',\n 900: '#701a75',\n },\n purple: {\n 50: '#faf5ff',\n 100: '#f3e8ff',\n 200: '#e9d5ff',\n 300: '#d8b4fe',\n 400: '#c084fc',\n 500: '#a855f7',\n 600: '#9333ea',\n 700: '#7e22ce',\n 800: '#6b21a8',\n 900: '#581c87',\n },\n violet: {\n 50: '#f5f3ff',\n 100: '#ede9fe',\n 200: '#ddd6fe',\n 300: '#c4b5fd',\n 400: '#a78bfa',\n 500: '#8b5cf6',\n 600: '#7c3aed',\n 700: '#6d28d9',\n 800: '#5b21b6',\n 900: '#4c1d95',\n },\n indigo: {\n 50: '#eef2ff',\n 100: '#e0e7ff',\n 200: '#c7d2fe',\n 300: '#a5b4fc',\n 400: '#818cf8',\n 500: '#6366f1',\n 600: '#4f46e5',\n 700: '#4338ca',\n 800: '#3730a3',\n 900: '#312e81',\n },\n blue: {\n 50: '#eff6ff',\n 100: '#dbeafe',\n 200: '#bfdbfe',\n 300: '#93c5fd',\n 400: '#60a5fa',\n 500: '#3b82f6',\n 600: '#2563eb',\n 700: '#1d4ed8',\n 800: '#1e40af',\n 900: '#1e3a8a',\n },\n lightBlue: {\n 50: '#f0f9ff',\n 100: '#e0f2fe',\n 200: '#bae6fd',\n 300: '#7dd3fc',\n 400: '#38bdf8',\n 500: '#0ea5e9',\n 600: '#0284c7',\n 700: '#0369a1',\n 800: '#075985',\n 900: '#0c4a6e',\n },\n cyan: {\n 50: '#ecfeff',\n 100: '#cffafe',\n 200: '#a5f3fc',\n 300: '#67e8f9',\n 400: '#22d3ee',\n 500: '#06b6d4',\n 600: '#0891b2',\n 700: '#0e7490',\n 800: '#155e75',\n 900: '#164e63',\n },\n teal: {\n 50: '#f0fdfa',\n 100: '#ccfbf1',\n 200: '#99f6e4',\n 300: '#5eead4',\n 400: '#2dd4bf',\n 500: '#14b8a6',\n 600: '#0d9488',\n 700: '#0f766e',\n 800: '#115e59',\n 900: '#134e4a',\n },\n emerald: {\n 50: '#ecfdf5',\n 100: '#d1fae5',\n 200: '#a7f3d0',\n 300: '#6ee7b7',\n 400: '#34d399',\n 500: '#10b981',\n 600: '#059669',\n 700: '#047857',\n 800: '#065f46',\n 900: '#064e3b',\n },\n green: {\n 50: '#f0fdf4',\n 100: '#dcfce7',\n 200: '#bbf7d0',\n 300: '#86efac',\n 400: '#4ade80',\n 500: '#22c55e',\n 600: '#16a34a',\n 700: '#15803d',\n 800: '#166534',\n 900: '#14532d',\n },\n lime: {\n 50: '#f7fee7',\n 100: '#ecfccb',\n 200: '#d9f99d',\n 300: '#bef264',\n 400: '#a3e635',\n 500: '#84cc16',\n 600: '#65a30d',\n 700: '#4d7c0f',\n 800: '#3f6212',\n 900: '#365314',\n },\n yellow: {\n 50: '#fefce8',\n 100: '#fef9c3',\n 200: '#fef08a',\n 300: '#fde047',\n 400: '#facc15',\n 500: '#eab308',\n 600: '#ca8a04',\n 700: '#a16207',\n 800: '#854d0e',\n 900: '#713f12',\n },\n amber: {\n 50: '#fffbeb',\n 100: '#fef3c7',\n 200: '#fde68a',\n 300: '#fcd34d',\n 400: '#fbbf24',\n 500: '#f59e0b',\n 600: '#d97706',\n 700: '#b45309',\n 800: '#92400e',\n 900: '#78350f',\n },\n orange: {\n 50: '#fff7ed',\n 100: '#ffedd5',\n 200: '#fed7aa',\n 300: '#fdba74',\n 400: '#fb923c',\n 500: '#f97316',\n 600: '#ea580c',\n 700: '#c2410c',\n 800: '#9a3412',\n 900: '#7c2d12',\n },\n red: {\n 50: '#fef2f2',\n 100: '#fee2e2',\n 200: '#fecaca',\n 300: '#fca5a5',\n 400: '#f87171',\n 500: '#ef4444',\n 600: '#dc2626',\n 700: '#b91c1c',\n 800: '#991b1b',\n 900: '#7f1d1d',\n },\n warmGray: {\n 50: '#fafaf9',\n 100: '#f5f5f4',\n 200: '#e7e5e4',\n 300: '#d6d3d1',\n 400: '#a8a29e',\n 500: '#78716c',\n 600: '#57534e',\n 700: '#44403c',\n 800: '#292524',\n 900: '#1c1917',\n },\n trueGray: {\n 50: '#fafafa',\n 100: '#f5f5f5',\n 200: '#e5e5e5',\n 300: '#d4d4d4',\n 400: '#a3a3a3',\n 500: '#737373',\n 600: '#525252',\n 700: '#404040',\n 800: '#262626',\n 900: '#171717',\n },\n gray: {\n 50: '#fafafa',\n 100: '#f4f4f5',\n 200: '#e4e4e7',\n 300: '#d4d4d8',\n 400: '#a1a1aa',\n 500: '#71717a',\n 600: '#52525b',\n 700: '#3f3f46',\n 800: '#27272a',\n 900: '#18181b',\n },\n dark: {\n 50: '#18181b',\n 100: '#27272a',\n 200: '#3f3f46',\n 300: '#52525b',\n 400: '#71717a',\n 500: '#a1a1aa',\n 600: '#d4d4d8',\n 700: '#e4e4e7',\n 800: '#f4f4f5',\n 900: '#fafafa',\n },\n coolGray: {\n 50: '#f9fafb',\n 100: '#f3f4f6',\n 200: '#e5e7eb',\n 300: '#d1d5db',\n 400: '#9ca3af',\n 500: '#6b7280',\n 600: '#4b5563',\n 700: '#374151',\n 800: '#1f2937',\n 900: '#111827',\n },\n blueGray: {\n 50: '#f8fafc',\n 100: '#f1f5f9',\n 200: '#e2e8f0',\n 300: '#cbd5e1',\n 400: '#94a3b8',\n 500: '#64748b',\n 600: '#475569',\n 700: '#334155',\n 800: '#1e293b',\n 900: '#0f172a',\n },\n};\n","import React from 'react';\n\nimport { createContext, useContext } from 'react';\nimport { palette as defaultPalette } from '../utils/colors';\n\ntype ColorConfig = Record<string, string>;\n\ntype VariantColorConfig = Record<string, Record<string, string>>;\n\nexport const defaultThemeMain: ColorConfig = {\n primary: 'color.black',\n secondary: 'color.blue',\n success: 'color.green.500',\n error: 'color.red.500',\n warning: 'color.orange.500',\n disabled: 'color.gray.500',\n loading: 'color.dark.500',\n};\n\nexport const defaultColors: ColorConfig = {\n white: '#FFFFFF',\n black: '#000000',\n red: '#FF0000',\n green: '#00FF00',\n blue: '#0000FF',\n yellow: '#FFFF00',\n cyan: '#00FFFF',\n magenta: '#FF00FF',\n grey: '#808080',\n orange: '#FFA500',\n brown: '#A52A2A',\n purple: '#800080',\n pink: '#FFC0CB',\n lime: '#00FF00',\n teal: '#008080',\n navy: '#000080',\n olive: '#808000',\n maroon: '#800000',\n gold: '#FFD700',\n silver: '#C0C0C0',\n indigo: '#4B0082',\n violet: '#EE82EE',\n beige: '#F5F5DC',\n turquoise: '#40E0D0',\n coral: '#FF7F50',\n chocolate: '#D2691E',\n skyBlue: '#87CEEB',\n plum: '#DDA0DD',\n darkGreen: '#006400',\n salmon: '#FA8072',\n};\n\nexport const ThemeContext = createContext<{\n getColor: (color: string) => string;\n theme?: {\n main: { [key: string]: string };\n components?: { [key: string]: { [key: string]: string } };\n };\n colors?: {\n main?: ColorConfig;\n palette?: VariantColorConfig;\n };\n}>({\n getColor: (name: string): string => {\n return name;\n },\n colors: {\n main: defaultColors,\n palette: defaultPalette,\n },\n theme: { main: defaultThemeMain, components: {} },\n});\n\nexport const useTheme = () => useContext(ThemeContext);\n\nexport const ThemeProvider = ({\n theme = {\n main: defaultThemeMain,\n components: {},\n },\n colors = {\n main: defaultColors,\n palette: defaultPalette,\n },\n children,\n}: {\n theme?: {\n main: { [key: string]: string };\n components: { [key: string]: { [key: string]: string } };\n };\n colors?: {\n main?: ColorConfig;\n palette?: VariantColorConfig;\n };\n children: any;\n}): React.ReactElement => {\n const getColor = (name: string): string => {\n if (name === 'transparent') return name;\n\n try {\n // Si le nom commence par \"theme.\", nous recherchons dans les couleurs du thème\n if (name.startsWith('theme.')) {\n const keys = name.split('.');\n if (\n keys[1] !== undefined &&\n typeof theme.components[keys[1]] == 'object' &&\n theme.components[keys[1]][keys[2]] !== undefined\n ) {\n return getColor(theme.components[keys[1]][keys[2]]);\n } else if (theme.main[keys[1]] && theme.main[keys[1]] !== undefined) {\n return getColor(theme.main[keys[1]]);\n } else {\n console.log('Color ' + name + ' not found');\n }\n }\n // Si le nom commence par \"color.\", nous recherchons dans la palette\n else if (name.startsWith('color.')) {\n const keys = name.split('.'); // Retirer le préfixe \"color.\"\n\n if (colors.palette && colors.palette[keys[1]][keys[2]] !== undefined) {\n return colors.palette[keys[1]][keys[2]];\n } else if (\n colors.palette &&\n colors.palette[keys[1]][parseInt(keys[2])] !== undefined\n ) {\n return colors.palette[keys[1]][parseInt(keys[2])];\n } else if (colors.main && colors.main[keys[1]] !== undefined) {\n return colors.main[keys[1]];\n } else {\n console.log('Color ' + name + ' not found');\n }\n }\n } catch (e) {}\n\n return name;\n };\n\n return (\n <ThemeContext.Provider\n value={{\n getColor,\n theme: {\n main: {\n ...defaultThemeMain,\n ...theme.main,\n },\n components: {\n ...theme.components,\n },\n },\n colors: {\n main: {\n ...defaultColors,\n ...colors.main,\n },\n palette: {\n ...defaultPalette,\n ...colors.palette,\n },\n },\n }}\n >\n {children}\n </ThemeContext.Provider>\n );\n};\n","import React, { ReactNode, createContext, useContext } from 'react';\n\nexport type ScreenSizeRange = {\n breakpoint: string;\n min: number;\n max?: number;\n};\nexport type ResponsiveConfig = Record<string, number>;\nconst defaultBreakpointsConfig: ResponsiveConfig = {\n xs: 0,\n sm: 340,\n md: 560,\n lg: 1080,\n xl: 1300,\n};\n\nexport type DeviceConfig = Record<string, string[]>;\nexport type QueryConfig = Record<string, string>;\nconst defaultDeviceConfig: DeviceConfig = {\n mobile: ['xs', 'sm'],\n tablet: ['md', 'lg'],\n desktop: ['lg', 'xl'],\n};\n\nexport type ScreenConfig = {\n breakpoints: ResponsiveConfig;\n devices: DeviceConfig;\n mediaQueries: QueryConfig;\n};\n\nexport type ScreenOrientation = 'landscape' | 'portrait';\n\nconst getMediaQueries = (b: ResponsiveConfig) => {\n const defaultKeys = Object.keys(b);\n\n const breakpointValue = defaultKeys\n .map((breakpoint) => {\n const value: ScreenSizeRange = {\n breakpoint: breakpoint as keyof typeof b,\n min: b[breakpoint],\n max: 0,\n };\n\n return value;\n })\n .sort((a, b) => a.min - b.min);\n\n breakpointValue.reduce((a, b) => {\n if (b) a.max = b.min;\n\n return b;\n });\n\n const query: Record<keyof typeof defaultBreakpointsConfig, string> = {};\n breakpointValue.map((sizeScreen) => {\n query[sizeScreen.breakpoint] = `only screen ${\n sizeScreen.min && sizeScreen.min >= 0\n ? 'and (min-width:' + sizeScreen.min + 'px)'\n : ''\n } ${\n sizeScreen.max && sizeScreen.max >= 0\n ? 'and (max-width:' + sizeScreen.max + 'px)'\n : ''\n }`;\n });\n\n return query;\n};\n\nconst defaultScreenConfig: ScreenConfig = {\n breakpoints: defaultBreakpointsConfig,\n devices: defaultDeviceConfig,\n mediaQueries: getMediaQueries(defaultBreakpointsConfig),\n};\n\nexport const ResponsiveContext =\n createContext<ScreenConfig>(defaultScreenConfig);\n\nexport const useResponsiveContext = () => useContext(ResponsiveContext);\n\nexport const ResponsiveProvider = ({\n breakpoints = defaultBreakpointsConfig,\n devices = defaultDeviceConfig,\n children,\n}: {\n breakpoints?: ResponsiveConfig;\n devices?: DeviceConfig;\n\n children?: ReactNode;\n}): React.ReactElement => {\n return (\n <ResponsiveContext.Provider\n value={{\n breakpoints,\n devices,\n mediaQueries: getMediaQueries(breakpoints),\n }}\n >\n {children}\n </ResponsiveContext.Provider>\n );\n};\n","// constants.ts\nimport { CSSProperties } from 'react';\n\n// List of numeric properties that don't need 'px' suffix\nexport const NumberProps = new Set<string>([\n 'numberOfLines',\n 'fontWeight',\n 'timeStamp',\n 'flex',\n 'flexGrow',\n 'flexShrink',\n 'order',\n 'zIndex',\n 'aspectRatio',\n 'shadowOpacity',\n 'shadowRadius',\n 'scale',\n 'opacity',\n 'min',\n 'max',\n 'now',\n]);\n\n// Keys to exclude when passing props to the component\nexport const excludedKeys = new Set<string>([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'size',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n 'animate',\n // Add more styling props here if needed\n]);\n\n// Keys to exclude when passing props to the component\nexport const extraKeys = new Set<string>([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n // Add more styling props here if needed\n]);\n\nexport const includeKeys = new Set<string>(['src', 'alt', 'style', 'as']);\n\n// Type definitions for animation props\nexport interface AnimationProps {\n from: CSSProperties;\n enter: CSSProperties;\n leave?: CSSProperties;\n duration?: string;\n timingFunction?: string;\n delay?: string;\n iterationCount?: string | number;\n direction?: string;\n fillMode?: string;\n playState?: string;\n}\n","// styleHelpers.ts\nimport { NumberProps } from './constants';\n// Excluded keys imported from constants.ts\nimport { excludedKeys } from './constants';\n\n// Function to set the size of the element\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Set height and width\n};\n\n// Function to convert style object to CSS string\nexport const styleObjectToCss = (styleObj: Record<string, any>): string => {\n return Object.entries(styleObj)\n .map(([key, value]) => `${toKebabCase(key)}: ${value};`)\n .join(' ');\n};\n\n// Function to convert camelCase to kebab-case\nexport const toKebabCase = (str: string): string =>\n str.replace(/([A-Z])/g, (match) => '-' + match.toLowerCase());\n\n// Function to check if a property is a style prop\nexport const isStyleProp = (prop: string): boolean => {\n // Implement your logic to determine if a prop is a style prop\n // For simplicity, we assume all props not in excludedKeys are style props\n return !excludedKeys.has(prop);\n};\n\n// Function to process and normalize style properties\nexport const processStyleProperty = (\n property: string,\n value: any,\n getColor: (color: string) => string\n): string | number => {\n if (typeof value === 'number' && !NumberProps.has(property)) {\n return `${value}px`;\n } else if (property.toLowerCase().includes('color')) {\n return getColor(value);\n } else {\n return value;\n }\n};\n","/* eslint-disable @typescript-eslint/no-unused-vars */\n// animationHelpers.ts\nimport { styleObjectToCss } from './style';\n\nlet keyframesCounter = 0;\nconst keyframesCache = new Map<string, string>();\n\nexport const generateKeyframes = (\n animation: any\n): { keyframesName: string; keyframes: string } => {\n // Exclure les propriétés qui ne font pas partie des keyframes\n const {\n duration,\n timingFunction,\n delay,\n iterationCount,\n direction,\n fillMode,\n playState,\n ...keyframesDef\n } = animation;\n\n // Générer une clé pour le cache basée sur les keyframes\n const animationConfigString = JSON.stringify(keyframesDef);\n\n if (keyframesCache.has(animationConfigString)) {\n const keyframesName = keyframesCache.get(animationConfigString)!;\n return { keyframesName, keyframes: '' }; // Les keyframes existent déjà\n }\n\n const keyframesName = `animation-${keyframesCounter++}`;\n keyframesCache.set(animationConfigString, keyframesName);\n\n const keyframesContent: string[] = [];\n\n // Trier les clés pour assurer un ordre cohérent\n const keyframeKeys = Object.keys(keyframesDef).sort((a, b) => {\n const getPercentage = (key: string): number => {\n if (key === 'from') return 0;\n if (key === 'to' || key === 'enter') return 100;\n return parseInt(key.replace('%', ''), 10);\n };\n return getPercentage(a) - getPercentage(b);\n });\n\n keyframeKeys.forEach((key) => {\n const cssKey = key === 'enter' ? 'to' : key; // Remplacer 'enter' par 'to'\n const styles = keyframesDef[key];\n keyframesContent.push(`${cssKey} { ${styleObjectToCss(styles)} }`);\n });\n\n const keyframes = `\n @keyframes ${keyframesName} {\n ${keyframesContent.join('\\n')}\n }\n `;\n\n return { keyframesName, keyframes };\n};\n","export type Shadow = {\n shadowColor: string;\n shadowOffset: {\n width: number;\n height: number;\n };\n shadowOpacity: number;\n shadowRadius: number;\n};\n\nexport const Shadows: Record<number, Shadow> = {\n 0: {\n shadowColor: '#000',\n shadowOffset: {\n width: 1,\n height: 2,\n },\n shadowOpacity: 0.18,\n shadowRadius: 1.0,\n },\n 1: {\n shadowColor: '#000',\n shadowOffset: {\n width: 2,\n height: 2,\n },\n shadowOpacity: 0.2,\n shadowRadius: 1.41,\n },\n 2: {\n shadowColor: '#000',\n shadowOffset: {\n width: 3,\n height: 3,\n },\n shadowOpacity: 0.22,\n shadowRadius: 2.22,\n },\n 3: {\n shadowColor: '#000',\n shadowOffset: {\n width: 4,\n height: 4,\n },\n shadowOpacity: 0.23,\n shadowRadius: 2.62,\n },\n 4: {\n shadowColor: '#000',\n shadowOffset: {\n width: 5,\n height: 5,\n },\n shadowOpacity: 0.25,\n shadowRadius: 3.84,\n },\n 5: {\n shadowColor: '#000',\n shadowOffset: {\n width: 6,\n height: 6,\n },\n shadowOpacity: 0.27,\n shadowRadius: 4.65,\n },\n 6: {\n shadowColor: '#000',\n shadowOffset: {\n width: 7,\n height: 7,\n },\n shadowOpacity: 0.29,\n shadowRadius: 4.65,\n },\n 7: {\n shadowColor: '#000',\n shadowOffset: {\n width: 8,\n height: 8,\n },\n shadowOpacity: 0.3,\n shadowRadius: 4.65,\n },\n 8: {\n shadowColor: '#000',\n shadowOffset: {\n width: 9,\n height: 9,\n },\n shadowOpacity: 0.32,\n shadowRadius: 5.46,\n },\n 9: {\n shadowColor: '#000',\n shadowOffset: {\n width: 10,\n height: 10,\n },\n shadowOpacity: 0.34,\n shadowRadius: 6.27,\n },\n};\n","// Element.tsx\nimport React, { CSSProperties, useEffect, useMemo } from 'react';\nimport { useTheme } from '../providers/Theme';\nimport { useResponsiveContext } from '../providers/Responsive';\nimport Color from 'color-convert';\n\nimport {\n isStyleProp,\n processStyleProperty,\n styleObjectToCss,\n} from '../utils/style';\nimport { generateKeyframes } from '../utils/animation';\nimport {\n excludedKeys,\n includeKeys,\n AnimationProps,\n extraKeys,\n} from '../utils/constants';\nimport { Shadows, Shadow } from '../utils/shadow';\n\nexport interface ElementProps extends CssProps {\n on?: Record<string, CssProps>;\n media?: Record<string, CssProps>;\n only?: string[];\n css?: CSSProperties;\n}\n\nexport interface CssProps {\n children?: React.ReactNode;\n size?: number;\n paddingHorizontal?: number | string;\n marginHorizontal?: number | string;\n paddingVertical?: number | string;\n marginVertical?: number | string;\n shadow?: boolean | number | Shadow;\n style?: CSSProperties;\n animate?: AnimationProps;\n onPress?: () => void;\n [key: string]: any;\n}\nconst styleSheet = (() => {\n if (typeof document !== 'undefined') {\n let styleTag = document.getElementById(\n 'dynamic-styles'\n ) as HTMLStyleElement;\n if (!styleTag) {\n styleTag = document.createElement('style');\n styleTag.id = 'dynamic-styles';\n document.head.appendChild(styleTag);\n }\n return styleTag.sheet as CSSStyleSheet;\n }\n return null;\n})();\n\nconst classCache = new Map<string, string>();\nconst cssRulesCache = new Map<string, string[]>();\n\nlet classNameCounter = 0;\n\nconst generateClassName = (styleProps: Record<string, any>): string => {\n const serialized = JSON.stringify(styleProps);\n if (classCache.has(serialized)) {\n return classCache.get(serialized)!;\n } else {\n const className = 'clz-' + classNameCounter++;\n classCache.set(serialized, className);\n return className;\n }\n};\n\nconst useDynamicStyles = (cssRules: string[]): void => {\n useEffect(() => {\n if (!styleSheet) return;\n cssRules.forEach((rule) => {\n try {\n if (\n Array.from(styleSheet.cssRules).some(\n (cssRule) => cssRule.cssText === rule\n )\n ) {\n return;\n }\n styleSheet.insertRule(rule, styleSheet.cssRules.length);\n } catch (error) {\n console.error('Error inserting CSS rule:', rule, error);\n }\n });\n }, [cssRules]);\n};\nconst generateCssRules = (\n selector: string,\n styles: Record<string, any>,\n getColor: (color: string) => string,\n mediaQueries?: Record<string, any>\n): string[] => {\n const rules: string[] = [];\n const mainStyles: Record<string, any> = {};\n const nestedMediaQueries: Record<string, Record<string, any>> = {};\n\n Object.keys(styles).forEach((key) => {\n const value = styles[key];\n if (key.startsWith('@media ')) {\n const mediaQuery = key;\n if (!nestedMediaQueries[mediaQuery]) {\n nestedMediaQueries[mediaQuery] = {};\n }\n Object.assign(nestedMediaQueries[mediaQuery], value);\n } else if (key.startsWith('&:')) {\n const pseudoSelector = key.slice(1);\n const nestedStyles = styles[key];\n const nestedRules = generateCssRules(\n `${selector}${pseudoSelector}`,\n nestedStyles,\n getColor\n // Ne pas passer mediaQueries ici\n );\n rules.push(...nestedRules);\n } else {\n mainStyles[key] = value;\n }\n });\n\n // Gestion des media queries\n // eslint-disable-next-line prefer-const\n let mediaBreakpoints: Record<string, string> = {};\n\n if (mediaQueries) {\n for (const query in mediaQueries) {\n const queries = mediaQueries[query].trim();\n mediaBreakpoints['@media ' + queries] = query;\n }\n }\n\n if (\n Object.keys(mainStyles).length > 0 ||\n Object.keys(nestedMediaQueries).length > 0\n ) {\n const processedStyles: Record<string, any> = {};\n for (const property in mainStyles) {\n processedStyles[property] = processStyleProperty(\n property,\n mainStyles[property],\n getColor\n );\n }\n\n const cssRule = `${selector} { ${styleObjectToCss(processedStyles)} }`;\n rules.push(cssRule);\n\n for (let mediaQuery in nestedMediaQueries) {\n mediaQuery = mediaQuery.trim();\n const mediaStyles = nestedMediaQueries[mediaQuery];\n const processedMediaStyles: Record<string, any> = {};\n for (const property in mediaStyles) {\n processedMediaStyles[property] = processStyleProperty(\n property,\n mediaStyles[property],\n getColor\n );\n }\n const cssProperties = styleObjectToCss(processedMediaStyles);\n const mediaRule = `${mediaQuery} { ${selector} { ${cssProperties} } }`;\n rules.push(mediaRule);\n\n if (mediaBreakpoints[mediaQuery]) {\n const breakpoint = mediaBreakpoints[mediaQuery];\n const bpRule = `.${breakpoint} ${selector} { ${cssProperties} }`;\n rules.push(bpRule);\n }\n }\n }\n\n return rules;\n};\n\n// Function to apply styles to a component\nconst applyStyle = (\n props: Record<string, any>,\n getColor: (color: string) => string,\n mediaQueries: any,\n devices: any\n): {\n styleProps: Record<string, any>;\n keyframes?: string[];\n} => {\n const styleProps: Record<string, any> = {};\n const keyframesList: string[] = [];\n\n // Gestion de la taille de l'élément\n const size =\n props.height !== undefined &&\n props.width !== undefined &&\n props.height === props.width\n ? props.height\n : props.size\n ? props.size\n : null;\n\n if (size) {\n styleProps.height = styleProps.width = size;\n }\n\n // Gestion du padding et de la marge\n if (props.paddingHorizontal) {\n styleProps.paddingLeft = props.paddingHorizontal;\n styleProps.paddingRight = props.paddingHorizontal;\n }\n\n if (props.marginHorizontal) {\n styleProps.marginLeft = props.marginHorizontal;\n styleProps.marginRight = props.marginHorizontal;\n }\n\n if (props.paddingVertical) {\n styleProps.paddingTop = props.paddingVertical;\n styleProps.paddingBottom = props.paddingVertical;\n }\n\n if (props.marginVertical) {\n styleProps.marginTop = props.marginVertical;\n styleProps.marginBottom = props.marginVertical;\n }\n\n // Application des ombres si spécifié\n if (props.shadow) {\n if (typeof props.shadow === 'number' || typeof props.shadow === 'boolean') {\n const shadowValue: number =\n typeof props.shadow === 'number' && Shadows[props.shadow] !== undefined\n ? props.shadow\n : 2;\n\n if (Shadows[shadowValue]) {\n const shadowColor =\n Color.hex.rgb(Shadows[shadowValue].shadowColor) || [];\n\n styleProps['boxShadow'] = `${\n Shadows[shadowValue].shadowOffset.height\n }px ${Shadows[shadowValue].shadowOffset.width}px ${\n Shadows[shadowValue].shadowRadius\n }px rgba(${shadowColor.join(',')},${\n Shadows[shadowValue].shadowOpacity\n })`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor) || [];\n\n styleProps['boxShadow'] = `${props.shadow.shadowOffset.height}px ${\n props.shadow.shadowOffset.width\n }px ${props.shadow.shadowRadius}px rgba(${shadowColor.join(',')},${\n props.shadow.shadowOpacity\n })`;\n }\n }\n\n // Gestion des animations\n if (props.animate) {\n const animation = props.animate;\n const { keyframesName, keyframes } = generateKeyframes(animation);\n\n if (keyframes) {\n keyframesList.push(keyframes);\n }\n\n styleProps.animationName = keyframesName;\n styleProps.animationDuration = animation.duration || '1s';\n styleProps.animationTimingFunction = animation.timingFunction || 'ease';\n styleProps.animationDelay = animation.delay || '0s';\n styleProps.animationIterationCount = `${animation.iterationCount || '1'}`;\n styleProps.animationDirection = animation.direction || 'normal';\n styleProps.animationFillMode = animation.fillMode || 'both';\n styleProps.animationPlayState = animation.playState || 'running';\n }\n\n // Traitement des propriétés de style\n Object.keys(props).forEach((property) => {\n if (\n property !== 'style' &&\n (isStyleProp(property) || extraKeys.has(property))\n ) {\n const value = props[property];\n\n if (typeof value === 'object' && value !== null) {\n // Pour les propriétés comme 'on', 'media'\n if (property === 'on') {\n // Pseudo-sélecteurs\n for (const event in value) {\n if (!styleProps[`&:${event}`]) {\n styleProps[`&:${event}`] = {};\n }\n const nestedResult = applyStyle(\n value[event],\n getColor,\n mediaQueries,\n devices\n );\n Object.assign(styleProps[`&:${event}`], nestedResult.styleProps);\n keyframesList.push(...(nestedResult.keyframes || []));\n }\n } else if (property === 'media') {\n // Media queries\n for (const screenOrDevices in value) {\n const mediaValue = value[screenOrDevices];\n if (mediaQueries[screenOrDevices]) {\n const mediaQuery = '@media ' + mediaQueries[screenOrDevices];\n if (!styleProps[mediaQuery]) {\n styleProps[mediaQuery] = {};\n }\n const nestedResult = applyStyle(\n mediaValue,\n getColor,\n mediaQueries,\n devices\n );\n Object.assign(styleProps[mediaQuery], nestedResult.styleProps);\n keyframesList.push(...(nestedResult.keyframes || []));\n } else if (devices[screenOrDevices]) {\n const deviceScreens = devices[screenOrDevices];\n deviceScreens.forEach((screen: string) => {\n if (mediaQueries[screen]) {\n const mediaQuery = '@media ' + mediaQueries[screen];\n if (!styleProps[mediaQuery]) {\n styleProps[mediaQuery] = {};\n }\n const nestedResult = applyStyle(\n mediaValue,\n getColor,\n mediaQueries,\n devices\n );\n Object.assign(\n styleProps[mediaQuery],\n nestedResult.styleProps\n );\n keyframesList.push(...(nestedResult.keyframes || []));\n }\n });\n }\n }\n } else {\n // Styles imbriqués\n const nestedResult = applyStyle(\n value,\n getColor,\n mediaQueries,\n devices\n );\n styleProps[property] = nestedResult.styleProps;\n keyframesList.push(...(nestedResult.keyframes || []));\n }\n } else {\n // Propriété de style simple\n styleProps[property] = value;\n }\n }\n });\n\n return { styleProps, keyframes: keyframesList };\n};\n\nconst getStyledProps = (\n props: any,\n getColor: (color: string) => string,\n mediaQueries: any,\n devices: any\n): { newProps: any; className: string; cssRules: string[] } => {\n const { styleProps, keyframes } = applyStyle(\n props,\n getColor,\n mediaQueries,\n devices\n );\n\n const className = generateClassName(styleProps);\n\n let cssRules: string[] = [];\n\n if (cssRulesCache.has(className)) {\n cssRules = cssRulesCache.get(className)!;\n } else {\n cssRules = generateCssRules(\n `.${className}`,\n styleProps,\n getColor,\n mediaQueries\n );\n\n if (keyframes && keyframes.length > 0) {\n cssRules = keyframes.concat(cssRules);\n }\n\n cssRulesCache.set(className, cssRules);\n }\n\n const { style, ...restProps } = props;\n\n const newProps = Object.keys(restProps).reduce((acc: any, key) => {\n if ((!excludedKeys.has(key) && !isStyleProp(key)) || includeKeys.has(key)) {\n acc[key] = restProps[key];\n }\n return acc;\n }, {});\n\n if (className) {\n newProps.className = className;\n }\n\n if (style) {\n newProps.style = style;\n }\n\n return { newProps, className, cssRules };\n};\n\nexport const Element: React.FC<ElementProps> = (props) => {\n const { onPress, ...rest } = props;\n\n const { getColor } = useTheme();\n const { mediaQueries, devices } = useResponsiveContext();\n\n const { newProps, cssRules } = useMemo(\n () => getStyledProps(rest, getColor, mediaQueries, devices),\n [rest, getColor, mediaQueries, devices]\n );\n\n if (onPress) {\n newProps.onClick = onPress;\n }\n\n useDynamicStyles(cssRules);\n\n const Component = newProps.as || 'div';\n delete newProps.as;\n\n return <Component {...newProps}>{props.children}</Component>;\n};\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'react';\n\ninterface ScrollProps extends ViewProps {\n // Définir des props spécifiques pour Scroll si nécessaire\n}\n\ninterface SpanProps extends Omit<ViewProps, 'as'> {\n // Définir des props spécifiques pour Span si nécessaire\n}\n\nexport interface ViewProps\n extends Omit<\n ViewStyleProps,\n 'children' | 'translate' | 'style' | 'pointerEvents'\n >,\n Omit<CSSProperties, 'translate' | 'animation'>,\n ElementProps {\n onPress?: (..._args: any) => void;\n}\n\nexport const View: React.FC<ViewProps> = React.memo((props) => (\n <Element {...props} />\n));\n\nexport const Div = View;\n\nexport const SafeArea = View;\n\nexport const Scroll: React.FC<ScrollProps> = React.memo((props) => (\n <View overflow={'auto'} {...props} />\n));\n\nexport const Span: React.FC<SpanProps> = React.memo((props) => (\n <Element {...props} as=\"span\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ImageStyleProps } from '../types/style';\n\nexport interface ImageProps\n extends Omit<ImageStyleProps, 'children' | 'style' | 'pointerEvents'>,\n Omit<\n Partial<HTMLImageElement>,\n | 'width'\n | 'height'\n | 'children'\n | 'translate'\n | 'target'\n | 'border'\n | 'animate'\n | 'draggable'\n | 'style'\n >,\n Omit<CSSProperties, 'animation'>,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'react';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<\n TextStyleProps,\n 'children' | 'style' | 'onPress' | 'pointerEvents'\n >,\n Omit<CSSProperties, 'animation'>,\n ElementProps {\n toUpperCase?: boolean;\n}\n\nexport const Text = React.memo((props: TextProps) => {\n return <Element {...props} />;\n});\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'react';\n\n// Common props pour éviter la répétition\ninterface CommonProps\n extends Omit<ViewStyleProps, 'children' | 'style' | 'pointerEvents'> {}\n\n// Props pour le composant Form\nexport interface FormProps\n extends CommonProps,\n Omit<\n Partial<HTMLFormElement>,\n | 'width'\n | 'height'\n | 'children'\n | 'translate'\n | 'target'\n | 'border'\n | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\n// Props pour le composant Button\nexport interface ButtonProps\n extends CommonProps,\n Omit<\n Partial<HTMLButtonElement>,\n | 'width'\n | 'height'\n | 'children'\n | 'translate'\n | 'type'\n | 'border'\n | 'animate'\n | 'style'\n | 'draggable'\n >,\n Omit<CSSProperties, 'animation'>,\n ElementProps {\n children?: React.ReactNode;\n // ... autres props ...\n onClick?: (..._args: any) => void;\n // ... autres props ...\n}\n\n// Props pour le composant Input\nexport interface InputProps\n extends ElementProps,\n CommonProps,\n Omit<\n Partial<HTMLInputElement>,\n 'width' | 'height' | 'animate' | 'style' | 'children'\n >,\n Omit<CSSProperties, 'style' | 'dir' | 'translate'> {}\n\n// Utilisation de React.memo pour une meilleure performance\nexport const Form = React.memo((props: FormProps) => (\n <Element {...props} as=\"form\" />\n));\n\nexport const Input = React.memo((props: InputProps) => (\n <Element {...props} as=\"input\" />\n));\n\nexport const Button = React.memo((props: ButtonProps) => (\n <Element {...props} as=\"button\" />\n));\n","// animations.ts\n\nexport const fadeIn = (duration = '1s', timingFunction = 'ease') => ({\n from: { opacity: 0 },\n enter: { opacity: 1 },\n duration,\n timingFunction,\n});\n\nexport const fadeOut = (duration = '1s', timingFunction = 'ease') => ({\n from: { opacity: 1 },\n enter: { opacity: 0 },\n duration,\n timingFunction,\n});\n\nexport const slideInLeft = (\n duration = '0.5s',\n timingFunction = 'ease-out'\n) => ({\n from: { transform: 'translateX(-100%)' },\n enter: { transform: 'translateX(0)' },\n duration,\n timingFunction,\n});\n\nexport const slideInRight = (\n duration = '0.5s',\n timingFunction = 'ease-out'\n) => ({\n from: { transform: 'translateX(100%)' },\n enter: { transform: 'translateX(0)' },\n duration,\n timingFunction,\n});\n\nexport const slideInDown = (\n duration = '0.5s',\n timingFunction = 'ease-out'\n) => ({\n from: { transform: 'translateY(-100%)' },\n enter: { transform: 'translateY(0)' },\n duration,\n timingFunction,\n});\n\nexport const slideInUp = (duration = '0.5s', timingFunction = 'ease-out') => ({\n from: { transform: 'translateY(100%)' },\n enter: { transform: 'translateY(0)' },\n duration,\n timingFunction,\n});\n\nexport const bounce = (\n duration = '2s',\n timingFunction = 'ease',\n iterationCount = 'infinite'\n) => ({\n from: { transform: 'translateY(0)' },\n '20%': { transform: 'translateY(-30px)' },\n '40%': { transform: 'translateY(0)' },\n '60%': { transform: 'translateY(-15px)' },\n '80%': { transform: 'translateY(0)' },\n enter: { transform: 'translateY(0)' },\n duration,\n timingFunction,\n iterationCount,\n});\n\nexport const rotate = (\n duration = '1s',\n timingFunction = 'linear',\n iterationCount = 'infinite'\n) => ({\n from: { transform: 'rotate(0deg)' },\n enter: { transform: 'rotate(360deg)' },\n duration,\n timingFunction,\n iterationCount,\n});\n\nexport const pulse = (\n duration = '1s',\n timingFunction = 'ease-in-out',\n iterationCount = 'infinite'\n) => ({\n from: { transform: 'scale(1)' },\n '50%': { transform: 'scale(1.05)' },\n enter: { transform: 'scale(1)' },\n duration,\n timingFunction,\n iterationCount,\n});\n\nexport const zoomIn = (duration = '0.5s', timingFunction = 'ease-out') => ({\n from: { transform: 'scale(0)' },\n enter: { transform: 'scale(1)' },\n duration,\n timingFunction,\n});\n\nexport const zoomOut = (duration = '0.5s', timingFunction = 'ease-out') => ({\n from: { transform: 'scale(1)' },\n enter: { transform: 'scale(0)' },\n duration,\n timingFunction,\n});\n\nexport const flash = (duration = '1s', iterationCount = 'infinite') => ({\n from: { opacity: 1 },\n '50%': { opacity: 0 },\n enter: { opacity: 1 },\n duration,\n iterationCount,\n});\n\nexport const shake = (duration = '0.5s', iterationCount = 'infinite') => ({\n from: { transform: 'translateX(0)' },\n '10%': { transform: 'translateX(-10px)' },\n '20%': { transform: 'translateX(10px)' },\n '30%': { transform: 'translateX(-10px)' },\n '40%': { transform: 'translateX(10px)' },\n '50%': { transform: 'translateX(-10px)' },\n '60%': { transform: 'translateX(10px)' },\n '70%': { transform: 'translateX(-10px)' },\n '80%': { transform: 'translateX(10px)' },\n '90%': { transform: 'translateX(-10px)' },\n enter: { transform: 'translateX(0)' },\n duration,\n iterationCount,\n});\n\nexport const swing = (duration = '1s', iterationCount = 'infinite') => ({\n from: { transform: 'rotate(0deg)' },\n '20%': { transform: 'rotate(15deg)' },\n '40%': { transform: 'rotate(-10deg)' },\n '60%': { transform: 'rotate(5deg)' },\n '80%': { transform: 'rotate(-5deg)' },\n enter: { transform: 'rotate(0deg)' },\n duration,\n iterationCount,\n});\n\nexport const rubberBand = (\n duration = '1s',\n timingFunction = 'ease-in-out'\n) => ({\n from: { transform: 'scale3d(1, 1, 1)' },\n '30%': { transform: 'scale3d(1.25, 0.75, 1)' },\n '40%': { transform: 'scale3d(0.75, 1.25, 1)' },\n '50%': { transform: 'scale3d(1.15, 0.85, 1)' },\n '65%': { transform: 'scale3d(0.95, 1.05, 1)' },\n '75%': { transform: 'scale3d(1.05, 0.95, 1)' },\n enter: { transform: 'scale3d(1, 1, 1)' },\n duration,\n timingFunction,\n});\n\nexport const wobble = (duration = '1s') => ({\n from: { transform: 'translateX(0%)' },\n '15%': { transform: 'translateX(-25%) rotate(-5deg)' },\n '30%': { transform: 'translateX(20%) rotate(3deg)' },\n '45%': { transform: 'translateX(-15%) rotate(-3deg)' },\n '60%': { transform: 'translateX(10%) rotate(2deg)' },\n '75%': { transform: 'translateX(-5%) rotate(-1deg)' },\n enter: { transform: 'translateX(0%)' },\n duration,\n});\n\nexport const flip = (duration = '1s') => ({\n from: {\n transform: 'perspective(400px) rotateY(0deg)',\n },\n '40%': {\n transform: 'perspective(400px) rotateY(-180deg)',\n },\n enter: {\n transform: 'perspective(400px) rotateY(-360deg)',\n },\n duration,\n});\n\nexport const heartBeat = (duration = '1.3s', iterationCount = 'infinite') => ({\n from: { transform: 'scale(1)' },\n '14%': { transform: 'scale(1.3)' },\n '28%': { transform: 'scale(1)' },\n '42%': { transform: 'scale(1.3)' },\n '70%': { transform: 'scale(1)' },\n enter: { transform: 'scale(1)' },\n duration,\n iterationCount,\n});\n\nexport const rollIn = (duration = '1s') => ({\n from: {\n opacity: 0,\n transform: 'translateX(-100%) rotate(-120deg)',\n },\n enter: {\n opacity: 1,\n transform: 'translateX(0px) rotate(0deg)',\n },\n duration,\n});\n\nexport const rollOut = (duration = '1s') => ({\n from: {\n opacity: 1,\n transform: 'translateX(0px) rotate(0deg)',\n },\n enter: {\n opacity: 0,\n transform: 'translateX(100%) rotate(120deg)',\n },\n duration,\n});\n\nexport const lightSpeedIn = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n transform: 'translateX(100%) skewX(-30deg)',\n opacity: 0,\n },\n '60%': {\n transform: 'skewX(20deg)',\n opacity: 1,\n },\n '80%': {\n transform: 'skewX(-5deg)',\n },\n enter: {\n transform: 'translateX(0)',\n opacity: 1,\n },\n duration,\n timingFunction,\n});\n\nexport const lightSpeedOut = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 1,\n },\n '20%': {\n opacity: 1,\n transform: 'translateX(-20%) skewX(20deg)',\n },\n enter: {\n opacity: 0,\n transform: 'translateX(-100%) skewX(30deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const hinge = (duration = '2s', timingFunction = 'ease-in-out') => ({\n from: {\n transform: 'rotate(0deg)',\n transformOrigin: 'top left',\n opacity: 1,\n },\n '20%': {\n transform: 'rotate(80deg)',\n opacity: 1,\n },\n '40%': {\n transform: 'rotate(60deg)',\n opacity: 1,\n },\n '60%': {\n transform: 'rotate(80deg)',\n opacity: 1,\n },\n '80%': {\n transform: 'rotate(60deg)',\n opacity: 1,\n },\n enter: {\n transform: 'translateY(700px)',\n opacity: 0,\n },\n duration,\n timingFunction,\n});\n\nexport const jackInTheBox = (duration = '1s', timingFunction = 'ease') => ({\n from: {\n opacity: 0,\n transform: 'scale(0.1) rotate(30deg)',\n transformOrigin: 'center bottom',\n },\n '50%': {\n transform: 'rotate(-10deg)',\n },\n '70%': {\n transform: 'rotate(3deg)',\n },\n enter: {\n opacity: 1,\n transform: 'scale(1) rotate(0deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const flipInX = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n transform: 'perspective(400px) rotateX(90deg)',\n opacity: 0,\n },\n '40%': {\n transform: 'perspective(400px) rotateX(-10deg)',\n opacity: 1,\n },\n enter: {\n transform: 'perspective(400px) rotateX(0deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const flipInY = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n transform: 'perspective(400px) rotateY(90deg)',\n opacity: 0,\n },\n '40%': {\n transform: 'perspective(400px) rotateY(-10deg)',\n opacity: 1,\n },\n enter: {\n transform: 'perspective(400px) rotateY(0deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const headShake = (duration = '1s', iterationCount = 'infinite') => ({\n from: {\n transform: 'translateX(0)',\n },\n '6.5%': {\n transform: 'translateX(-6px) rotateY(-9deg)',\n },\n '18.5%': {\n transform: 'translateX(5px) rotateY(7deg)',\n },\n '31.5%': {\n transform: 'translateX(-3px) rotateY(-5deg)',\n },\n '43.5%': {\n transform: 'translateX(2px) rotateY(3deg)',\n },\n '50%': {\n transform: 'translateX(0)',\n },\n duration,\n iterationCount,\n});\n\nexport const tada = (duration = '1s', iterationCount = 'infinite') => ({\n from: { transform: 'scale3d(1, 1, 1)', opacity: 1 },\n '10%, 20%': {\n transform: 'scale3d(0.9, 0.9, 0.9) rotate(-3deg)',\n },\n '30%, 50%, 70%, 90%': {\n transform: 'scale3d(1.1, 1.1, 1.1) rotate(3deg)',\n },\n '40%, 60%, 80%': {\n transform: 'scale3d(1.1, 1.1, 1.1) rotate(-3deg)',\n },\n enter: { transform: 'scale3d(1, 1, 1)', opacity: 1 },\n duration,\n iterationCount,\n});\n\nexport const jello = (duration = '1s', iterationCount = 'infinite') => ({\n from: { transform: 'none' },\n '11.1%': { transform: 'skewX(-12.5deg) skewY(-12.5deg)' },\n '22.2%': { transform: 'skewX(6.25deg) skewY(6.25deg)' },\n '33.3%': { transform: 'skewX(-3.125deg) skewY(-3.125deg)' },\n '44.4%': { transform: 'skewX(1.5625deg) skewY(1.5625deg)' },\n '55.5%': { transform: 'skewX(-0.78125deg) skewY(-0.78125deg)' },\n '66.6%': { transform: 'skewX(0.390625deg) skewY(0.390625deg)' },\n '77.7%': { transform: 'skewX(-0.1953125deg) skewY(-0.1953125deg)' },\n '88.8%': { transform: 'skewX(0.09765625deg) skewY(0.09765625deg)' },\n enter: { transform: 'none' },\n duration,\n iterationCount,\n});\n\nexport const fadeInDown = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n opacity: 0,\n transform: 'translateY(-100%)',\n },\n enter: {\n opacity: 1,\n transform: 'translateY(0)',\n },\n duration,\n timingFunction,\n});\n\nexport const fadeInUp = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n opacity: 0,\n transform: 'translateY(100%)',\n },\n enter: {\n opacity: 1,\n transform: 'translateY(0)',\n },\n duration,\n timingFunction,\n});\n\nexport const bounceIn = (duration = '0.75s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 0,\n transform: 'scale(0.3)',\n },\n '50%': {\n opacity: 1,\n transform: 'scale(1.05)',\n },\n '70%': {\n transform: 'scale(0.9)',\n },\n enter: {\n transform: 'scale(1)',\n },\n duration,\n timingFunction,\n});\n\nexport const bounceOut = (duration = '0.75s', timingFunction = 'ease-out') => ({\n from: {\n transform: 'scale(1)',\n },\n '20%': {\n transform: 'scale(0.9)',\n },\n '50%, 55%': {\n opacity: 1,\n transform: 'scale(1.1)',\n },\n enter: {\n opacity: 0,\n transform: 'scale(0.3)',\n },\n duration,\n timingFunction,\n});\n\nexport const slideOutLeft = (\n duration = '0.5s',\n timingFunction = 'ease-in'\n) => ({\n from: {\n transform: 'translateX(0)',\n },\n enter: {\n transform: 'translateX(-100%)',\n },\n duration,\n timingFunction,\n});\n\nexport const slideOutRight = (\n duration = '0.5s',\n timingFunction = 'ease-in'\n) => ({\n from: {\n transform: 'translateX(0)',\n },\n enter: {\n transform: 'translateX(100%)',\n },\n duration,\n timingFunction,\n});\n\nexport const zoomInDown = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n opacity: 0,\n transform: 'scale(0.1) translateY(-1000px)',\n },\n '60%': {\n opacity: 1,\n transform: 'scale(0.475) translateY(60px)',\n },\n enter: {\n transform: 'scale(1) translateY(0)',\n },\n duration,\n timingFunction,\n});\n\nexport const zoomOutUp = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 1,\n transform: 'scale(1) translateY(0)',\n },\n '40%': {\n opacity: 1,\n transform: 'scale(0.475) translateY(-60px)',\n },\n enter: {\n opacity: 0,\n transform: 'scale(0.1) translateY(-1000px)',\n },\n duration,\n timingFunction,\n});\n\nexport const backInDown = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 0.7,\n transform: 'translateY(-2000px) scaleY(2.5) scaleX(0.2)',\n },\n enter: {\n opacity: 1,\n transform: 'translateY(0) scaleY(1) scaleX(1)',\n },\n duration,\n timingFunction,\n});\n\nexport const backOutUp = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 1,\n transform: 'translateY(0)',\n },\n '80%': {\n opacity: 0.7,\n transform: 'translateY(-20px)',\n },\n enter: {\n opacity: 0,\n transform: 'translateY(-2000px)',\n },\n duration,\n timingFunction,\n});\n","export const Typography = {\n letterSpacings: {\n tighter: -0.08,\n tight: -0.4,\n normal: 0,\n wide: 0.4,\n wider: 0.8,\n widest: 1.6,\n },\n lineHeights: {\n xs: 10,\n sm: 12,\n md: 14,\n lg: 16,\n xl: 20,\n '2xl': 24,\n '3xl': 30,\n '4xl': 36,\n '5xl': 48,\n '6xl': 64,\n },\n fontWeights: {\n hairline: 100,\n thin: 200,\n light: 300,\n normal: 400,\n medium: 500,\n semiBold: 600,\n bold: 700,\n extraBold: 800,\n black: 900,\n },\n fontSizes: {\n xs: 10,\n sm: 12,\n md: 14,\n lg: 16,\n xl: 20,\n '2xl': 24,\n '3xl': 30,\n '4xl': 36,\n '5xl': 48,\n '6xl': 64,\n },\n};\n","/**\n * whether in browser env\n */\nexport const isBrowser = (): boolean =>\n typeof window !== 'undefined' &&\n typeof window.document !== 'undefined' &&\n typeof window.document.createElement !== 'undefined';\n\n/**\n * get window.g_initialProps\n */\nexport const getWindowInitialProps = () =>\n isBrowser() ? (window as any).g_initialProps : undefined;\n\n/**\n * whether SSR success in client\n */\nexport const isSSR = !isBrowser();\n\nexport function isDev() {\n let dev = false;\n\n if (isBrowser()) {\n dev = !(window.location.hostname.indexOf('localhost') === -1);\n }\n return dev;\n}\n\nexport function isProd() {\n if (isBrowser()) {\n if (window && window.location && window.location.hostname) {\n return (\n window.location.hostname.includes('localhost') ||\n window.location.hostname.includes('develop')\n );\n }\n }\n return false;\n}\n\nexport function isMobile() {\n return navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i);\n}\n","import { useEffect } from 'react';\nexport const useMount = (callback: () => void) => {\n useEffect(() => {\n callback();\n }, []);\n};\n","import { useState } from 'react';\nimport {\n useResponsiveContext,\n ScreenOrientation,\n} from '../providers/Responsive';\n\nimport { useMount } from './useMount';\n\nexport const createQuery = (keyScreen: string, query: string, set: any) => {\n const mql = window.matchMedia(query);\n const onChange = () => {\n if (!!mql.matches) {\n set(keyScreen);\n }\n };\n\n mql.addListener(onChange);\n if (!!mql.matches) {\n set(keyScreen);\n }\n\n return () => {\n mql.removeListener(onChange);\n };\n};\n\nexport const useResponsive = () => {\n const { breakpoints, devices, mediaQueries } = useResponsiveContext();\n const [screen, setScreen] = useState('xs');\n const [orientation, setOrientation] = useState(\n 'landscape' as ScreenOrientation\n );\n\n useMount(() => {\n for (const screenSize in mediaQueries) {\n createQuery(screenSize, mediaQueries[screenSize], setScreen);\n }\n createQuery(\n 'landscape',\n 'only screen and (orientation: landscape)',\n setOrientation\n );\n createQuery(\n 'portrait',\n 'only screen and (orientation: portrait)',\n setOrientation\n );\n });\n\n const on = (device: keyof typeof devices) => {\n return devices[device].includes(screen);\n };\n\n const is = (s: keyof typeof breakpoints) => {\n return s == screen;\n };\n\n return {\n breakpoints,\n devices,\n orientation,\n screen,\n on,\n is,\n };\n};\n"],"names":["palette","white","black","rose","pink","fuchsia","purple","violet","indigo","blue","lightBlue","cyan","teal","emerald","green","lime","yellow","amber","orange","red","warmGray","trueGray","gray","dark","coolGray","blueGray","defaultThemeMain","primary","secondary","success","error","warning","disabled","loading","defaultColors","magenta","grey","brown","navy","olive","maroon","gold","silver","beige","turquoise","coral","chocolate","skyBlue","plum","darkGreen","salmon","ThemeContext","createContext","getColor","name","colors","main","defaultPalette","theme","components","useTheme","useContext","ThemeProvider","_ref","children","startsWith","keys","split","undefined","console","log","parseInt","e","React","Provider","value","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","defaultKeys","Object","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","defaultScreenConfig","breakpoints","devices","mediaQueries","ResponsiveContext","useResponsiveContext","ResponsiveProvider","NumberProps","Set","excludedKeys","extraKeys","includeKeys","styleObjectToCss","styleObj","entries","key","toKebabCase","join","str","replace","match","toLowerCase","isStyleProp","prop","has","processStyleProperty","property","includes","keyframesCounter","keyframesCache","Map","generateKeyframes","animation","duration","timingFunction","delay","iterationCount","direction","fillMode","playState","keyframesDef","animationConfigString","JSON","stringify","keyframesName","get","keyframes","set","keyframesContent","keyframeKeys","getPercentage","forEach","cssKey","styles","push","Shadows","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","styleSheet","document","styleTag","getElementById","createElement","id","head","appendChild","sheet","classCache","cssRulesCache","classNameCounter","generateClassName","styleProps","serialized","className","useDynamicStyles","cssRules","useEffect","rule","Array","from","some","cssRule","cssText","insertRule","length","generateCssRules","selector","rules","mainStyles","nestedMediaQueries","mediaQuery","assign","pseudoSelector","slice","nestedStyles","nestedRules","mediaBreakpoints","queries","trim","processedStyles","mediaStyles","processedMediaStyles","cssProperties","mediaRule","bpRule","applyStyle","props","keyframesList","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","animate","animationName","animationDuration","animationTimingFunction","animationDelay","animationIterationCount","animationDirection","animationFillMode","animationPlayState","event","nestedResult","screenOrDevices","mediaValue","deviceScreens","screen","getStyledProps","concat","style","restProps","newProps","acc","Element","onPress","rest","useMemo","onClick","Component","as","View","memo","Div","SafeArea","Scroll","overflow","Span","Image","Text","Form","Input","Button","fadeIn","opacity","enter","fadeOut","slideInLeft","transform","slideInRight","slideInDown","slideInUp","bounce","rotate","pulse","zoomIn","zoomOut","flash","shake","swing","rubberBand","wobble","flip","heartBeat","rollIn","rollOut","lightSpeedIn","lightSpeedOut","hinge","transformOrigin","jackInTheBox","flipInX","flipInY","headShake","tada","jello","fadeInDown","fadeInUp","bounceIn","bounceOut","slideOutLeft","slideOutRight","zoomInDown","zoomOutUp","backInDown","backOutUp","Typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","isBrowser","window","getWindowInitialProps","g_initialProps","isSSR","isDev","dev","location","hostname","indexOf","isProd","isMobile","navigator","userAgent","useMount","callback","createQuery","keyScreen","mql","matchMedia","onChange","matches","addListener","removeListener","useResponsive","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("color-convert")):"function"==typeof define&&define.amd?define(["exports","react","color-convert"],t):t((e=e||self).AppStudio={},e.React,e.Color)}(this,(function(e,t,a){"use strict";var n="default"in t?t.default:t;a=a&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a;const o={white:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.08)",200:"rgba(255, 255, 255, 0.16)",300:"rgba(255, 255, 255, 0.24)",400:"rgba(255, 255, 255, 0.36)",500:"rgba(255, 255, 255, 0.48)",600:"rgba(255, 255, 255, 0.64)",700:"rgba(255, 255, 255, 0.80)",800:"rgba(255, 255, 255, 0.92)",900:"rgba(255, 255, 255, 1)"},black:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.08)",200:"rgba(0, 0, 0, 0.16)",300:"rgba(0, 0, 0, 0.24)",400:"rgba(0, 0, 0, 0.36)",500:"rgba(0, 0, 0, 0.48)",600:"rgba(0, 0, 0, 0.64)",700:"rgba(0, 0, 0, 0.80)",800:"rgba(0, 0, 0, 0.92)",900:"rgba(0, 0, 0, 1)"},rose:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},pink:{50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},fuchsia:{50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},purple:{50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},violet:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},indigo:{50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},blue:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},lightBlue:{50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},cyan:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},teal:{50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},emerald:{50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},green:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},lime:{50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},yellow:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},amber:{50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},orange:{50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},red:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},warmGray:{50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},trueGray:{50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},gray:{50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},dark:{50:"#18181b",100:"#27272a",200:"#3f3f46",300:"#52525b",400:"#71717a",500:"#a1a1aa",600:"#d4d4d8",700:"#e4e4e7",800:"#f4f4f5",900:"#fafafa"},coolGray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},blueGray:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"}},r={primary:"color.black",secondary:"color.blue",success:"color.green.500",error:"color.red.500",warning:"color.orange.500",disabled:"color.gray.500",loading:"color.dark.500"},i={white:"#FFFFFF",black:"#000000",red:"#FF0000",green:"#00FF00",blue:"#0000FF",yellow:"#FFFF00",cyan:"#00FFFF",magenta:"#FF00FF",grey:"#808080",orange:"#FFA500",brown:"#A52A2A",purple:"#800080",pink:"#FFC0CB",lime:"#00FF00",teal:"#008080",navy:"#000080",olive:"#808000",maroon:"#800000",gold:"#FFD700",silver:"#C0C0C0",indigo:"#4B0082",violet:"#EE82EE",beige:"#F5F5DC",turquoise:"#40E0D0",coral:"#FF7F50",chocolate:"#D2691E",skyBlue:"#87CEEB",plum:"#DDA0DD",darkGreen:"#006400",salmon:"#FA8072"},s=t.createContext({getColor:e=>e,colors:{main:i,palette:o},theme:{main:r,components:{}}}),f=()=>t.useContext(s),d={xs:0,sm:340,md:560,lg:1080,xl:1300},c={mobile:["xs","sm"],tablet:["md","lg"],desktop:["lg","xl"]},m=e=>{const t=Object.keys(e).map(t=>({breakpoint:t,min:e[t],max:0})).sort((e,t)=>e.min-t.min);t.reduce((e,t)=>(t&&(e.max=t.min),t));const a={};return t.map(e=>{a[e.breakpoint]=`only screen ${e.min&&e.min>=0?"and (min-width:"+e.min+"px)":""} ${e.max&&e.max>=0?"and (max-width:"+e.max+"px)":""}`}),a},l=t.createContext({breakpoints:d,devices:c,mediaQueries:m(d)}),u=()=>t.useContext(l),p=new Set(["numberOfLines","fontWeight","timeStamp","flex","flexGrow","flexShrink","order","zIndex","aspectRatio","shadowOpacity","shadowRadius","scale","opacity","min","max","now"]),g=new Set(["on","shadow","only","media","css","size","paddingHorizontal","paddingVertical","marginHorizontal","marginVertical","animate"]),h=new Set(["on","shadow","only","media","css"]),w=new Set(["src","alt","style","as"]),b=e=>Object.entries(e).map(e=>{let[t,a]=e;return`${y(t)}: ${a};`}).join(" "),y=e=>e.replace(/([A-Z])/g,e=>"-"+e.toLowerCase()),v=e=>!g.has(e),x=(e,t,a)=>"number"!=typeof t||p.has(e)?e.toLowerCase().includes("color")?a(t):t:t+"px";let F=0;const k=new Map,O={0:{shadowColor:"#000",shadowOffset:{width:1,height:2},shadowOpacity:.18,shadowRadius:1},1:{shadowColor:"#000",shadowOffset:{width:2,height:2},shadowOpacity:.2,shadowRadius:1.41},2:{shadowColor:"#000",shadowOffset:{width:3,height:3},shadowOpacity:.22,shadowRadius:2.22},3:{shadowColor:"#000",shadowOffset:{width:4,height:4},shadowOpacity:.23,shadowRadius:2.62},4:{shadowColor:"#000",shadowOffset:{width:5,height:5},shadowOpacity:.25,shadowRadius:3.84},5:{shadowColor:"#000",shadowOffset:{width:6,height:6},shadowOpacity:.27,shadowRadius:4.65},6:{shadowColor:"#000",shadowOffset:{width:7,height:7},shadowOpacity:.29,shadowRadius:4.65},7:{shadowColor:"#000",shadowOffset:{width:8,height:8},shadowOpacity:.3,shadowRadius:4.65},8:{shadowColor:"#000",shadowOffset:{width:9,height:9},shadowOpacity:.32,shadowRadius:5.46},9:{shadowColor:"#000",shadowOffset:{width:10,height:10},shadowOpacity:.34,shadowRadius:6.27}},X=(()=>{if("undefined"!=typeof document){let e=document.getElementById("dynamic-styles");return e||(e=document.createElement("style"),e.id="dynamic-styles",document.head.appendChild(e)),e.sheet}return null})(),C=new Map,Y=new Map;let j=0;const E=(e,t,a,n)=>{const o=[],r={},i={};Object.keys(t).forEach(n=>{const s=t[n];if(n.startsWith("@media ")){const e=n;i[e]||(i[e]={}),Object.assign(i[e],s)}else if(n.startsWith("&:")){const r=n.slice(1),i=E(`${e}${r}`,t[n],a);o.push(...i)}else r[n]=s});let s={};if(n)for(const e in n)s["@media "+n[e].trim()]=e;if(Object.keys(r).length>0||Object.keys(i).length>0){const t={};for(const e in r)t[e]=x(e,r[e],a);const n=`${e} { ${b(t)} }`;o.push(n);for(let t in i){t=t.trim();const n=i[t],r={};for(const e in n)r[e]=x(e,n[e],a);const f=b(r);o.push(`${t} { ${e} { ${f} } }`),s[t]&&o.push(`.${s[t]} ${e} { ${f} }`)}}return o},R=(e,t,n,o)=>{const r={},i=[],s=void 0!==e.height&&void 0!==e.width&&e.height===e.width?e.height:e.size?e.size:null;if(s&&(r.height=r.width=s),e.paddingHorizontal&&(r.paddingLeft=e.paddingHorizontal,r.paddingRight=e.paddingHorizontal),e.marginHorizontal&&(r.marginLeft=e.marginHorizontal,r.marginRight=e.marginHorizontal),e.paddingVertical&&(r.paddingTop=e.paddingVertical,r.paddingBottom=e.paddingVertical),e.marginVertical&&(r.marginTop=e.marginVertical,r.marginBottom=e.marginVertical),e.shadow)if("number"==typeof e.shadow||"boolean"==typeof e.shadow){const t="number"==typeof e.shadow&&void 0!==O[e.shadow]?e.shadow:2;if(O[t]){const e=a.hex.rgb(O[t].shadowColor)||[];r.boxShadow=`${O[t].shadowOffset.height}px ${O[t].shadowOffset.width}px ${O[t].shadowRadius}px rgba(${e.join(",")},${O[t].shadowOpacity})`}}else{const t=a.hex.rgb(e.shadow.shadowColor)||[];r.boxShadow=`${e.shadow.shadowOffset.height}px ${e.shadow.shadowOffset.width}px ${e.shadow.shadowRadius}px rgba(${t.join(",")},${e.shadow.shadowOpacity})`}if(e.animate){const t=e.animate,{keyframesName:a,keyframes:n}=(e=>{const{...t}=e,a=JSON.stringify(t);if(k.has(a))return{keyframesName:k.get(a),keyframes:""};const n="animation-"+F++;k.set(a,n);const o=[];return Object.keys(t).sort((e,t)=>{const a=e=>"from"===e?0:"to"===e||"enter"===e?100:parseInt(e.replace("%",""),10);return a(e)-a(t)}).forEach(e=>{o.push(`${"enter"===e?"to":e} { ${b(t[e])} }`)}),{keyframesName:n,keyframes:`\n @keyframes ${n} {\n ${o.join("\n")}\n }\n `}})(t);n&&i.push(n),r.animationName=a,r.animationDuration=t.duration||"1s",r.animationTimingFunction=t.timingFunction||"ease",r.animationDelay=t.delay||"0s",r.animationIterationCount=""+(t.iterationCount||"1"),r.animationDirection=t.direction||"normal",r.animationFillMode=t.fillMode||"both",r.animationPlayState=t.playState||"running"}return Object.keys(e).forEach(a=>{if("style"!==a&&(v(a)||h.has(a))){const s=e[a];if("object"==typeof s&&null!==s)if("on"===a)for(const e in s){r["&:"+e]||(r["&:"+e]={});const a=R(s[e],t,n,o);Object.assign(r["&:"+e],a.styleProps),i.push(...a.keyframes||[])}else if("media"===a)for(const e in s){const a=s[e];if(n[e]){const s="@media "+n[e];r[s]||(r[s]={});const f=R(a,t,n,o);Object.assign(r[s],f.styleProps),i.push(...f.keyframes||[])}else o[e]&&o[e].forEach(e=>{if(n[e]){const s="@media "+n[e];r[s]||(r[s]={});const f=R(a,t,n,o);Object.assign(r[s],f.styleProps),i.push(...f.keyframes||[])}})}else{const e=R(s,t,n,o);r[a]=e.styleProps,i.push(...e.keyframes||[])}else r[a]=s}}),{styleProps:r,keyframes:i}},S=e=>{const{onPress:a,...o}=e,{getColor:r}=f(),{mediaQueries:i,devices:s}=u(),{newProps:d,cssRules:c}=t.useMemo(()=>((e,t,a,n)=>{const{styleProps:o,keyframes:r}=R(e,t,a,n),i=(e=>{const t=JSON.stringify(e);if(C.has(t))return C.get(t);{const e="clz-"+j++;return C.set(t,e),e}})(o);let s=[];Y.has(i)?s=Y.get(i):(s=E("."+i,o,t,a),r&&r.length>0&&(s=r.concat(s)),Y.set(i,s));const{style:f,...d}=e,c=Object.keys(d).reduce((e,t)=>((!g.has(t)&&!v(t)||w.has(t))&&(e[t]=d[t]),e),{});return i&&(c.className=i),f&&(c.style=f),{newProps:c,className:i,cssRules:s}})(o,r,i,s),[o,r,i,s]);a&&(d.onClick=a),(e=>{t.useEffect(()=>{X&&e.forEach(e=>{try{if(Array.from(X.cssRules).some(t=>t.cssText===e))return;X.insertRule(e,X.cssRules.length)}catch(t){console.error("Error inserting CSS rule:",e,t)}})},[e])})(c);const m=d.as||"div";return delete d.as,n.createElement(m,Object.assign({},d),e.children)},$=n.memo(e=>n.createElement(S,Object.assign({},e))),I=$,P=$,z=n.memo(e=>n.createElement($,Object.assign({overflow:"auto"},e))),D=n.memo(e=>n.createElement(S,Object.assign({},e,{as:"span"}))),B=n.memo(e=>n.createElement(S,Object.assign({},e,{as:"img"}))),A=n.memo(e=>n.createElement(S,Object.assign({},e))),M=n.memo(e=>n.createElement(S,Object.assign({},e,{as:"form"}))),T=n.memo(e=>n.createElement(S,Object.assign({},e,{as:"input"}))),H=n.memo(e=>n.createElement(S,Object.assign({},e,{as:"button"}))),L=()=>"undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,V=!L(),N=e=>{t.useEffect(()=>{e()},[])},W=(e,t,a)=>{const n=window.matchMedia(t),o=()=>{n.matches&&a(e)};return n.addListener(o),n.matches&&a(e),()=>{n.removeListener(o)}};e.Animation={__proto__:null,fadeIn:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease"),{from:{opacity:0},enter:{opacity:1},duration:e,timingFunction:t}},fadeOut:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease"),{from:{opacity:1},enter:{opacity:0},duration:e,timingFunction:t}},slideInLeft:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-out"),{from:{transform:"translateX(-100%)"},enter:{transform:"translateX(0)"},duration:e,timingFunction:t}},slideInRight:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-out"),{from:{transform:"translateX(100%)"},enter:{transform:"translateX(0)"},duration:e,timingFunction:t}},slideInDown:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-out"),{from:{transform:"translateY(-100%)"},enter:{transform:"translateY(0)"},duration:e,timingFunction:t}},slideInUp:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-out"),{from:{transform:"translateY(100%)"},enter:{transform:"translateY(0)"},duration:e,timingFunction:t}},bounce:function(e,t,a){return void 0===e&&(e="2s"),void 0===t&&(t="ease"),void 0===a&&(a="infinite"),{from:{transform:"translateY(0)"},"20%":{transform:"translateY(-30px)"},"40%":{transform:"translateY(0)"},"60%":{transform:"translateY(-15px)"},"80%":{transform:"translateY(0)"},enter:{transform:"translateY(0)"},duration:e,timingFunction:t,iterationCount:a}},rotate:function(e,t,a){return void 0===e&&(e="1s"),void 0===t&&(t="linear"),void 0===a&&(a="infinite"),{from:{transform:"rotate(0deg)"},enter:{transform:"rotate(360deg)"},duration:e,timingFunction:t,iterationCount:a}},pulse:function(e,t,a){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in-out"),void 0===a&&(a="infinite"),{from:{transform:"scale(1)"},"50%":{transform:"scale(1.05)"},enter:{transform:"scale(1)"},duration:e,timingFunction:t,iterationCount:a}},zoomIn:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-out"),{from:{transform:"scale(0)"},enter:{transform:"scale(1)"},duration:e,timingFunction:t}},zoomOut:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-out"),{from:{transform:"scale(1)"},enter:{transform:"scale(0)"},duration:e,timingFunction:t}},flash:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="infinite"),{from:{opacity:1},"50%":{opacity:0},enter:{opacity:1},duration:e,iterationCount:t}},shake:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="infinite"),{from:{transform:"translateX(0)"},"10%":{transform:"translateX(-10px)"},"20%":{transform:"translateX(10px)"},"30%":{transform:"translateX(-10px)"},"40%":{transform:"translateX(10px)"},"50%":{transform:"translateX(-10px)"},"60%":{transform:"translateX(10px)"},"70%":{transform:"translateX(-10px)"},"80%":{transform:"translateX(10px)"},"90%":{transform:"translateX(-10px)"},enter:{transform:"translateX(0)"},duration:e,iterationCount:t}},swing:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="infinite"),{from:{transform:"rotate(0deg)"},"20%":{transform:"rotate(15deg)"},"40%":{transform:"rotate(-10deg)"},"60%":{transform:"rotate(5deg)"},"80%":{transform:"rotate(-5deg)"},enter:{transform:"rotate(0deg)"},duration:e,iterationCount:t}},rubberBand:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in-out"),{from:{transform:"scale3d(1, 1, 1)"},"30%":{transform:"scale3d(1.25, 0.75, 1)"},"40%":{transform:"scale3d(0.75, 1.25, 1)"},"50%":{transform:"scale3d(1.15, 0.85, 1)"},"65%":{transform:"scale3d(0.95, 1.05, 1)"},"75%":{transform:"scale3d(1.05, 0.95, 1)"},enter:{transform:"scale3d(1, 1, 1)"},duration:e,timingFunction:t}},wobble:function(e){return void 0===e&&(e="1s"),{from:{transform:"translateX(0%)"},"15%":{transform:"translateX(-25%) rotate(-5deg)"},"30%":{transform:"translateX(20%) rotate(3deg)"},"45%":{transform:"translateX(-15%) rotate(-3deg)"},"60%":{transform:"translateX(10%) rotate(2deg)"},"75%":{transform:"translateX(-5%) rotate(-1deg)"},enter:{transform:"translateX(0%)"},duration:e}},flip:function(e){return void 0===e&&(e="1s"),{from:{transform:"perspective(400px) rotateY(0deg)"},"40%":{transform:"perspective(400px) rotateY(-180deg)"},enter:{transform:"perspective(400px) rotateY(-360deg)"},duration:e}},heartBeat:function(e,t){return void 0===e&&(e="1.3s"),void 0===t&&(t="infinite"),{from:{transform:"scale(1)"},"14%":{transform:"scale(1.3)"},"28%":{transform:"scale(1)"},"42%":{transform:"scale(1.3)"},"70%":{transform:"scale(1)"},enter:{transform:"scale(1)"},duration:e,iterationCount:t}},rollIn:function(e){return void 0===e&&(e="1s"),{from:{opacity:0,transform:"translateX(-100%) rotate(-120deg)"},enter:{opacity:1,transform:"translateX(0px) rotate(0deg)"},duration:e}},rollOut:function(e){return void 0===e&&(e="1s"),{from:{opacity:1,transform:"translateX(0px) rotate(0deg)"},enter:{opacity:0,transform:"translateX(100%) rotate(120deg)"},duration:e}},lightSpeedIn:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-out"),{from:{transform:"translateX(100%) skewX(-30deg)",opacity:0},"60%":{transform:"skewX(20deg)",opacity:1},"80%":{transform:"skewX(-5deg)"},enter:{transform:"translateX(0)",opacity:1},duration:e,timingFunction:t}},lightSpeedOut:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in"),{from:{opacity:1},"20%":{opacity:1,transform:"translateX(-20%) skewX(20deg)"},enter:{opacity:0,transform:"translateX(-100%) skewX(30deg)"},duration:e,timingFunction:t}},hinge:function(e,t){return void 0===e&&(e="2s"),void 0===t&&(t="ease-in-out"),{from:{transform:"rotate(0deg)",transformOrigin:"top left",opacity:1},"20%":{transform:"rotate(80deg)",opacity:1},"40%":{transform:"rotate(60deg)",opacity:1},"60%":{transform:"rotate(80deg)",opacity:1},"80%":{transform:"rotate(60deg)",opacity:1},enter:{transform:"translateY(700px)",opacity:0},duration:e,timingFunction:t}},jackInTheBox:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease"),{from:{opacity:0,transform:"scale(0.1) rotate(30deg)",transformOrigin:"center bottom"},"50%":{transform:"rotate(-10deg)"},"70%":{transform:"rotate(3deg)"},enter:{opacity:1,transform:"scale(1) rotate(0deg)"},duration:e,timingFunction:t}},flipInX:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in"),{from:{transform:"perspective(400px) rotateX(90deg)",opacity:0},"40%":{transform:"perspective(400px) rotateX(-10deg)",opacity:1},enter:{transform:"perspective(400px) rotateX(0deg)"},duration:e,timingFunction:t}},flipInY:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in"),{from:{transform:"perspective(400px) rotateY(90deg)",opacity:0},"40%":{transform:"perspective(400px) rotateY(-10deg)",opacity:1},enter:{transform:"perspective(400px) rotateY(0deg)"},duration:e,timingFunction:t}},headShake:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="infinite"),{from:{transform:"translateX(0)"},"6.5%":{transform:"translateX(-6px) rotateY(-9deg)"},"18.5%":{transform:"translateX(5px) rotateY(7deg)"},"31.5%":{transform:"translateX(-3px) rotateY(-5deg)"},"43.5%":{transform:"translateX(2px) rotateY(3deg)"},"50%":{transform:"translateX(0)"},duration:e,iterationCount:t}},tada:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="infinite"),{from:{transform:"scale3d(1, 1, 1)",opacity:1},"10%, 20%":{transform:"scale3d(0.9, 0.9, 0.9) rotate(-3deg)"},"30%, 50%, 70%, 90%":{transform:"scale3d(1.1, 1.1, 1.1) rotate(3deg)"},"40%, 60%, 80%":{transform:"scale3d(1.1, 1.1, 1.1) rotate(-3deg)"},enter:{transform:"scale3d(1, 1, 1)",opacity:1},duration:e,iterationCount:t}},jello:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="infinite"),{from:{transform:"none"},"11.1%":{transform:"skewX(-12.5deg) skewY(-12.5deg)"},"22.2%":{transform:"skewX(6.25deg) skewY(6.25deg)"},"33.3%":{transform:"skewX(-3.125deg) skewY(-3.125deg)"},"44.4%":{transform:"skewX(1.5625deg) skewY(1.5625deg)"},"55.5%":{transform:"skewX(-0.78125deg) skewY(-0.78125deg)"},"66.6%":{transform:"skewX(0.390625deg) skewY(0.390625deg)"},"77.7%":{transform:"skewX(-0.1953125deg) skewY(-0.1953125deg)"},"88.8%":{transform:"skewX(0.09765625deg) skewY(0.09765625deg)"},enter:{transform:"none"},duration:e,iterationCount:t}},fadeInDown:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-out"),{from:{opacity:0,transform:"translateY(-100%)"},enter:{opacity:1,transform:"translateY(0)"},duration:e,timingFunction:t}},fadeInUp:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-out"),{from:{opacity:0,transform:"translateY(100%)"},enter:{opacity:1,transform:"translateY(0)"},duration:e,timingFunction:t}},bounceIn:function(e,t){return void 0===e&&(e="0.75s"),void 0===t&&(t="ease-in"),{from:{opacity:0,transform:"scale(0.3)"},"50%":{opacity:1,transform:"scale(1.05)"},"70%":{transform:"scale(0.9)"},enter:{transform:"scale(1)"},duration:e,timingFunction:t}},bounceOut:function(e,t){return void 0===e&&(e="0.75s"),void 0===t&&(t="ease-out"),{from:{transform:"scale(1)"},"20%":{transform:"scale(0.9)"},"50%, 55%":{opacity:1,transform:"scale(1.1)"},enter:{opacity:0,transform:"scale(0.3)"},duration:e,timingFunction:t}},slideOutLeft:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-in"),{from:{transform:"translateX(0)"},enter:{transform:"translateX(-100%)"},duration:e,timingFunction:t}},slideOutRight:function(e,t){return void 0===e&&(e="0.5s"),void 0===t&&(t="ease-in"),{from:{transform:"translateX(0)"},enter:{transform:"translateX(100%)"},duration:e,timingFunction:t}},zoomInDown:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-out"),{from:{opacity:0,transform:"scale(0.1) translateY(-1000px)"},"60%":{opacity:1,transform:"scale(0.475) translateY(60px)"},enter:{transform:"scale(1) translateY(0)"},duration:e,timingFunction:t}},zoomOutUp:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in"),{from:{opacity:1,transform:"scale(1) translateY(0)"},"40%":{opacity:1,transform:"scale(0.475) translateY(-60px)"},enter:{opacity:0,transform:"scale(0.1) translateY(-1000px)"},duration:e,timingFunction:t}},backInDown:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in"),{from:{opacity:.7,transform:"translateY(-2000px) scaleY(2.5) scaleX(0.2)"},enter:{opacity:1,transform:"translateY(0) scaleY(1) scaleX(1)"},duration:e,timingFunction:t}},backOutUp:function(e,t){return void 0===e&&(e="1s"),void 0===t&&(t="ease-in"),{from:{opacity:1,transform:"translateY(0)"},"80%":{opacity:.7,transform:"translateY(-20px)"},enter:{opacity:0,transform:"translateY(-2000px)"},duration:e,timingFunction:t}}},e.Button=H,e.Div=I,e.Element=S,e.Form=M,e.Image=B,e.Input=T,e.ResponsiveContext=l,e.ResponsiveProvider=e=>{let{breakpoints:t=d,devices:a=c,children:o}=e;return n.createElement(l.Provider,{value:{breakpoints:t,devices:a,mediaQueries:m(t)}},o)},e.SafeArea=P,e.Scroll=z,e.Shadows=O,e.Span=D,e.Text=A,e.ThemeContext=s,e.ThemeProvider=e=>{let{theme:t={main:r,components:{}},colors:a={main:i,palette:o},children:f}=e;const d=e=>{if("transparent"===e)return e;try{if(e.startsWith("theme.")){const a=e.split(".");if(void 0!==a[1]&&"object"==typeof t.components[a[1]]&&void 0!==t.components[a[1]][a[2]])return d(t.components[a[1]][a[2]]);if(t.main[a[1]]&&void 0!==t.main[a[1]])return d(t.main[a[1]]);console.log("Color "+e+" not found")}else if(e.startsWith("color.")){const t=e.split(".");if(a.palette&&void 0!==a.palette[t[1]][t[2]])return a.palette[t[1]][t[2]];if(a.palette&&void 0!==a.palette[t[1]][parseInt(t[2])])return a.palette[t[1]][parseInt(t[2])];if(a.main&&void 0!==a.main[t[1]])return a.main[t[1]];console.log("Color "+e+" not found")}}catch(e){}return e};return n.createElement(s.Provider,{value:{getColor:d,theme:{main:{...r,...t.main},components:{...t.components}},colors:{main:{...i,...a.main},palette:{...o,...a.palette}}}},f)},e.Typography={letterSpacings:{tighter:-.08,tight:-.4,normal:0,wide:.4,wider:.8,widest:1.6},lineHeights:{xs:10,sm:12,md:14,lg:16,xl:20,"2xl":24,"3xl":30,"4xl":36,"5xl":48,"6xl":64},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semiBold:600,bold:700,extraBold:800,black:900},fontSizes:{xs:10,sm:12,md:14,lg:16,xl:20,"2xl":24,"3xl":30,"4xl":36,"5xl":48,"6xl":64}},e.View=$,e.createQuery=W,e.defaultColors=i,e.defaultThemeMain=r,e.getWindowInitialProps=()=>L()?window.g_initialProps:void 0,e.isBrowser=L,e.isDev=function(){let e=!1;return L()&&(e=!(-1===window.location.hostname.indexOf("localhost"))),e},e.isMobile=function(){return navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)},e.isProd=function(){return!!(L()&&window&&window.location&&window.location.hostname)&&(window.location.hostname.includes("localhost")||window.location.hostname.includes("develop"))},e.isSSR=V,e.palette=o,e.useMount=N,e.useResponsive=()=>{const{breakpoints:e,devices:a,mediaQueries:n}=u(),[o,r]=t.useState("xs"),[i,s]=t.useState("landscape");return N(()=>{for(const e in n)W(e,n[e],r);W("landscape","only screen and (orientation: landscape)",s),W("portrait","only screen and (orientation: portrait)",s)}),{breakpoints:e,devices:a,orientation:i,screen:o,on:e=>a[e].includes(o),is:e=>e==o}},e.useResponsiveContext=u,e.useTheme=f,Object.defineProperty(e,"__esModule",{value:!0})}));
2
+ //# sourceMappingURL=appstudio.umd.production.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appstudio.umd.production.min.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/providers/Responsive.tsx","../src/utils/constants.ts","../src/utils/style.ts","../src/utils/animation.ts","../src/utils/shadow.ts","../src/components/Element.tsx","../src/components/View.tsx","../src/components/Image.tsx","../src/components/Text.tsx","../src/components/Form.tsx","../src/utils/env.ts","../src/hooks/useMount.ts","../src/hooks/useResponsive.ts","../src/components/Animation.tsx","../src/utils/typography.ts"],"sourcesContent":["export type ColorPalette = Record<string, Record<number, string>>;\n\nexport type ColorSingleton = Record<\n string,\n {\n 50: string;\n 100: string;\n 200: string;\n 300: string;\n 400: string;\n 500: string;\n 600: string;\n 700: string;\n 800: string;\n 900: string;\n }\n>;\n\nexport const palette: ColorPalette = {\n white: {\n 50: 'rgba(255, 255, 255, 0.04)',\n 100: 'rgba(255, 255, 255, 0.08)',\n 200: 'rgba(255, 255, 255, 0.16)',\n 300: 'rgba(255, 255, 255, 0.24)',\n 400: 'rgba(255, 255, 255, 0.36)',\n 500: 'rgba(255, 255, 255, 0.48)',\n 600: 'rgba(255, 255, 255, 0.64)',\n 700: 'rgba(255, 255, 255, 0.80)',\n 800: 'rgba(255, 255, 255, 0.92)',\n 900: 'rgba(255, 255, 255, 1)',\n },\n\n black: {\n 50: 'rgba(0, 0, 0, 0.04)',\n 100: 'rgba(0, 0, 0, 0.08)',\n 200: 'rgba(0, 0, 0, 0.16)',\n 300: 'rgba(0, 0, 0, 0.24)',\n 400: 'rgba(0, 0, 0, 0.36)',\n 500: 'rgba(0, 0, 0, 0.48)',\n 600: 'rgba(0, 0, 0, 0.64)',\n 700: 'rgba(0, 0, 0, 0.80)',\n 800: 'rgba(0, 0, 0, 0.92)',\n 900: 'rgba(0, 0, 0, 1)',\n },\n rose: {\n 50: '#fff1f2',\n 100: '#ffe4e6',\n 200: '#fecdd3',\n 300: '#fda4af',\n 400: '#fb7185',\n 500: '#f43f5e',\n 600: '#e11d48',\n 700: '#be123c',\n 800: '#9f1239',\n 900: '#881337',\n },\n pink: {\n 50: '#fdf2f8',\n 100: '#fce7f3',\n 200: '#fbcfe8',\n 300: '#f9a8d4',\n 400: '#f472b6',\n 500: '#ec4899',\n 600: '#db2777',\n 700: '#be185d',\n 800: '#9d174d',\n 900: '#831843',\n },\n fuchsia: {\n 50: '#fdf4ff',\n 100: '#fae8ff',\n 200: '#f5d0fe',\n 300: '#f0abfc',\n 400: '#e879f9',\n 500: '#d946ef',\n 600: '#c026d3',\n 700: '#a21caf',\n 800: '#86198f',\n 900: '#701a75',\n },\n purple: {\n 50: '#faf5ff',\n 100: '#f3e8ff',\n 200: '#e9d5ff',\n 300: '#d8b4fe',\n 400: '#c084fc',\n 500: '#a855f7',\n 600: '#9333ea',\n 700: '#7e22ce',\n 800: '#6b21a8',\n 900: '#581c87',\n },\n violet: {\n 50: '#f5f3ff',\n 100: '#ede9fe',\n 200: '#ddd6fe',\n 300: '#c4b5fd',\n 400: '#a78bfa',\n 500: '#8b5cf6',\n 600: '#7c3aed',\n 700: '#6d28d9',\n 800: '#5b21b6',\n 900: '#4c1d95',\n },\n indigo: {\n 50: '#eef2ff',\n 100: '#e0e7ff',\n 200: '#c7d2fe',\n 300: '#a5b4fc',\n 400: '#818cf8',\n 500: '#6366f1',\n 600: '#4f46e5',\n 700: '#4338ca',\n 800: '#3730a3',\n 900: '#312e81',\n },\n blue: {\n 50: '#eff6ff',\n 100: '#dbeafe',\n 200: '#bfdbfe',\n 300: '#93c5fd',\n 400: '#60a5fa',\n 500: '#3b82f6',\n 600: '#2563eb',\n 700: '#1d4ed8',\n 800: '#1e40af',\n 900: '#1e3a8a',\n },\n lightBlue: {\n 50: '#f0f9ff',\n 100: '#e0f2fe',\n 200: '#bae6fd',\n 300: '#7dd3fc',\n 400: '#38bdf8',\n 500: '#0ea5e9',\n 600: '#0284c7',\n 700: '#0369a1',\n 800: '#075985',\n 900: '#0c4a6e',\n },\n cyan: {\n 50: '#ecfeff',\n 100: '#cffafe',\n 200: '#a5f3fc',\n 300: '#67e8f9',\n 400: '#22d3ee',\n 500: '#06b6d4',\n 600: '#0891b2',\n 700: '#0e7490',\n 800: '#155e75',\n 900: '#164e63',\n },\n teal: {\n 50: '#f0fdfa',\n 100: '#ccfbf1',\n 200: '#99f6e4',\n 300: '#5eead4',\n 400: '#2dd4bf',\n 500: '#14b8a6',\n 600: '#0d9488',\n 700: '#0f766e',\n 800: '#115e59',\n 900: '#134e4a',\n },\n emerald: {\n 50: '#ecfdf5',\n 100: '#d1fae5',\n 200: '#a7f3d0',\n 300: '#6ee7b7',\n 400: '#34d399',\n 500: '#10b981',\n 600: '#059669',\n 700: '#047857',\n 800: '#065f46',\n 900: '#064e3b',\n },\n green: {\n 50: '#f0fdf4',\n 100: '#dcfce7',\n 200: '#bbf7d0',\n 300: '#86efac',\n 400: '#4ade80',\n 500: '#22c55e',\n 600: '#16a34a',\n 700: '#15803d',\n 800: '#166534',\n 900: '#14532d',\n },\n lime: {\n 50: '#f7fee7',\n 100: '#ecfccb',\n 200: '#d9f99d',\n 300: '#bef264',\n 400: '#a3e635',\n 500: '#84cc16',\n 600: '#65a30d',\n 700: '#4d7c0f',\n 800: '#3f6212',\n 900: '#365314',\n },\n yellow: {\n 50: '#fefce8',\n 100: '#fef9c3',\n 200: '#fef08a',\n 300: '#fde047',\n 400: '#facc15',\n 500: '#eab308',\n 600: '#ca8a04',\n 700: '#a16207',\n 800: '#854d0e',\n 900: '#713f12',\n },\n amber: {\n 50: '#fffbeb',\n 100: '#fef3c7',\n 200: '#fde68a',\n 300: '#fcd34d',\n 400: '#fbbf24',\n 500: '#f59e0b',\n 600: '#d97706',\n 700: '#b45309',\n 800: '#92400e',\n 900: '#78350f',\n },\n orange: {\n 50: '#fff7ed',\n 100: '#ffedd5',\n 200: '#fed7aa',\n 300: '#fdba74',\n 400: '#fb923c',\n 500: '#f97316',\n 600: '#ea580c',\n 700: '#c2410c',\n 800: '#9a3412',\n 900: '#7c2d12',\n },\n red: {\n 50: '#fef2f2',\n 100: '#fee2e2',\n 200: '#fecaca',\n 300: '#fca5a5',\n 400: '#f87171',\n 500: '#ef4444',\n 600: '#dc2626',\n 700: '#b91c1c',\n 800: '#991b1b',\n 900: '#7f1d1d',\n },\n warmGray: {\n 50: '#fafaf9',\n 100: '#f5f5f4',\n 200: '#e7e5e4',\n 300: '#d6d3d1',\n 400: '#a8a29e',\n 500: '#78716c',\n 600: '#57534e',\n 700: '#44403c',\n 800: '#292524',\n 900: '#1c1917',\n },\n trueGray: {\n 50: '#fafafa',\n 100: '#f5f5f5',\n 200: '#e5e5e5',\n 300: '#d4d4d4',\n 400: '#a3a3a3',\n 500: '#737373',\n 600: '#525252',\n 700: '#404040',\n 800: '#262626',\n 900: '#171717',\n },\n gray: {\n 50: '#fafafa',\n 100: '#f4f4f5',\n 200: '#e4e4e7',\n 300: '#d4d4d8',\n 400: '#a1a1aa',\n 500: '#71717a',\n 600: '#52525b',\n 700: '#3f3f46',\n 800: '#27272a',\n 900: '#18181b',\n },\n dark: {\n 50: '#18181b',\n 100: '#27272a',\n 200: '#3f3f46',\n 300: '#52525b',\n 400: '#71717a',\n 500: '#a1a1aa',\n 600: '#d4d4d8',\n 700: '#e4e4e7',\n 800: '#f4f4f5',\n 900: '#fafafa',\n },\n coolGray: {\n 50: '#f9fafb',\n 100: '#f3f4f6',\n 200: '#e5e7eb',\n 300: '#d1d5db',\n 400: '#9ca3af',\n 500: '#6b7280',\n 600: '#4b5563',\n 700: '#374151',\n 800: '#1f2937',\n 900: '#111827',\n },\n blueGray: {\n 50: '#f8fafc',\n 100: '#f1f5f9',\n 200: '#e2e8f0',\n 300: '#cbd5e1',\n 400: '#94a3b8',\n 500: '#64748b',\n 600: '#475569',\n 700: '#334155',\n 800: '#1e293b',\n 900: '#0f172a',\n },\n};\n","import React from 'react';\n\nimport { createContext, useContext } from 'react';\nimport { palette as defaultPalette } from '../utils/colors';\n\ntype ColorConfig = Record<string, string>;\n\ntype VariantColorConfig = Record<string, Record<string, string>>;\n\nexport const defaultThemeMain: ColorConfig = {\n primary: 'color.black',\n secondary: 'color.blue',\n success: 'color.green.500',\n error: 'color.red.500',\n warning: 'color.orange.500',\n disabled: 'color.gray.500',\n loading: 'color.dark.500',\n};\n\nexport const defaultColors: ColorConfig = {\n white: '#FFFFFF',\n black: '#000000',\n red: '#FF0000',\n green: '#00FF00',\n blue: '#0000FF',\n yellow: '#FFFF00',\n cyan: '#00FFFF',\n magenta: '#FF00FF',\n grey: '#808080',\n orange: '#FFA500',\n brown: '#A52A2A',\n purple: '#800080',\n pink: '#FFC0CB',\n lime: '#00FF00',\n teal: '#008080',\n navy: '#000080',\n olive: '#808000',\n maroon: '#800000',\n gold: '#FFD700',\n silver: '#C0C0C0',\n indigo: '#4B0082',\n violet: '#EE82EE',\n beige: '#F5F5DC',\n turquoise: '#40E0D0',\n coral: '#FF7F50',\n chocolate: '#D2691E',\n skyBlue: '#87CEEB',\n plum: '#DDA0DD',\n darkGreen: '#006400',\n salmon: '#FA8072',\n};\n\nexport const ThemeContext = createContext<{\n getColor: (color: string) => string;\n theme?: {\n main: { [key: string]: string };\n components?: { [key: string]: { [key: string]: string } };\n };\n colors?: {\n main?: ColorConfig;\n palette?: VariantColorConfig;\n };\n}>({\n getColor: (name: string): string => {\n return name;\n },\n colors: {\n main: defaultColors,\n palette: defaultPalette,\n },\n theme: { main: defaultThemeMain, components: {} },\n});\n\nexport const useTheme = () => useContext(ThemeContext);\n\nexport const ThemeProvider = ({\n theme = {\n main: defaultThemeMain,\n components: {},\n },\n colors = {\n main: defaultColors,\n palette: defaultPalette,\n },\n children,\n}: {\n theme?: {\n main: { [key: string]: string };\n components: { [key: string]: { [key: string]: string } };\n };\n colors?: {\n main?: ColorConfig;\n palette?: VariantColorConfig;\n };\n children: any;\n}): React.ReactElement => {\n const getColor = (name: string): string => {\n if (name === 'transparent') return name;\n\n try {\n // Si le nom commence par \"theme.\", nous recherchons dans les couleurs du thème\n if (name.startsWith('theme.')) {\n const keys = name.split('.');\n if (\n keys[1] !== undefined &&\n typeof theme.components[keys[1]] == 'object' &&\n theme.components[keys[1]][keys[2]] !== undefined\n ) {\n return getColor(theme.components[keys[1]][keys[2]]);\n } else if (theme.main[keys[1]] && theme.main[keys[1]] !== undefined) {\n return getColor(theme.main[keys[1]]);\n } else {\n console.log('Color ' + name + ' not found');\n }\n }\n // Si le nom commence par \"color.\", nous recherchons dans la palette\n else if (name.startsWith('color.')) {\n const keys = name.split('.'); // Retirer le préfixe \"color.\"\n\n if (colors.palette && colors.palette[keys[1]][keys[2]] !== undefined) {\n return colors.palette[keys[1]][keys[2]];\n } else if (\n colors.palette &&\n colors.palette[keys[1]][parseInt(keys[2])] !== undefined\n ) {\n return colors.palette[keys[1]][parseInt(keys[2])];\n } else if (colors.main && colors.main[keys[1]] !== undefined) {\n return colors.main[keys[1]];\n } else {\n console.log('Color ' + name + ' not found');\n }\n }\n } catch (e) {}\n\n return name;\n };\n\n return (\n <ThemeContext.Provider\n value={{\n getColor,\n theme: {\n main: {\n ...defaultThemeMain,\n ...theme.main,\n },\n components: {\n ...theme.components,\n },\n },\n colors: {\n main: {\n ...defaultColors,\n ...colors.main,\n },\n palette: {\n ...defaultPalette,\n ...colors.palette,\n },\n },\n }}\n >\n {children}\n </ThemeContext.Provider>\n );\n};\n","import React, { ReactNode, createContext, useContext } from 'react';\n\nexport type ScreenSizeRange = {\n breakpoint: string;\n min: number;\n max?: number;\n};\nexport type ResponsiveConfig = Record<string, number>;\nconst defaultBreakpointsConfig: ResponsiveConfig = {\n xs: 0,\n sm: 340,\n md: 560,\n lg: 1080,\n xl: 1300,\n};\n\nexport type DeviceConfig = Record<string, string[]>;\nexport type QueryConfig = Record<string, string>;\nconst defaultDeviceConfig: DeviceConfig = {\n mobile: ['xs', 'sm'],\n tablet: ['md', 'lg'],\n desktop: ['lg', 'xl'],\n};\n\nexport type ScreenConfig = {\n breakpoints: ResponsiveConfig;\n devices: DeviceConfig;\n mediaQueries: QueryConfig;\n};\n\nexport type ScreenOrientation = 'landscape' | 'portrait';\n\nconst getMediaQueries = (b: ResponsiveConfig) => {\n const defaultKeys = Object.keys(b);\n\n const breakpointValue = defaultKeys\n .map((breakpoint) => {\n const value: ScreenSizeRange = {\n breakpoint: breakpoint as keyof typeof b,\n min: b[breakpoint],\n max: 0,\n };\n\n return value;\n })\n .sort((a, b) => a.min - b.min);\n\n breakpointValue.reduce((a, b) => {\n if (b) a.max = b.min;\n\n return b;\n });\n\n const query: Record<keyof typeof defaultBreakpointsConfig, string> = {};\n breakpointValue.map((sizeScreen) => {\n query[sizeScreen.breakpoint] = `only screen ${\n sizeScreen.min && sizeScreen.min >= 0\n ? 'and (min-width:' + sizeScreen.min + 'px)'\n : ''\n } ${\n sizeScreen.max && sizeScreen.max >= 0\n ? 'and (max-width:' + sizeScreen.max + 'px)'\n : ''\n }`;\n });\n\n return query;\n};\n\nconst defaultScreenConfig: ScreenConfig = {\n breakpoints: defaultBreakpointsConfig,\n devices: defaultDeviceConfig,\n mediaQueries: getMediaQueries(defaultBreakpointsConfig),\n};\n\nexport const ResponsiveContext =\n createContext<ScreenConfig>(defaultScreenConfig);\n\nexport const useResponsiveContext = () => useContext(ResponsiveContext);\n\nexport const ResponsiveProvider = ({\n breakpoints = defaultBreakpointsConfig,\n devices = defaultDeviceConfig,\n children,\n}: {\n breakpoints?: ResponsiveConfig;\n devices?: DeviceConfig;\n\n children?: ReactNode;\n}): React.ReactElement => {\n return (\n <ResponsiveContext.Provider\n value={{\n breakpoints,\n devices,\n mediaQueries: getMediaQueries(breakpoints),\n }}\n >\n {children}\n </ResponsiveContext.Provider>\n );\n};\n","// constants.ts\nimport { CSSProperties } from 'react';\n\n// List of numeric properties that don't need 'px' suffix\nexport const NumberProps = new Set<string>([\n 'numberOfLines',\n 'fontWeight',\n 'timeStamp',\n 'flex',\n 'flexGrow',\n 'flexShrink',\n 'order',\n 'zIndex',\n 'aspectRatio',\n 'shadowOpacity',\n 'shadowRadius',\n 'scale',\n 'opacity',\n 'min',\n 'max',\n 'now',\n]);\n\n// Keys to exclude when passing props to the component\nexport const excludedKeys = new Set<string>([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'size',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n 'animate',\n // Add more styling props here if needed\n]);\n\n// Keys to exclude when passing props to the component\nexport const extraKeys = new Set<string>([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n // Add more styling props here if needed\n]);\n\nexport const includeKeys = new Set<string>(['src', 'alt', 'style', 'as']);\n\n// Type definitions for animation props\nexport interface AnimationProps {\n from: CSSProperties;\n enter: CSSProperties;\n leave?: CSSProperties;\n duration?: string;\n timingFunction?: string;\n delay?: string;\n iterationCount?: string | number;\n direction?: string;\n fillMode?: string;\n playState?: string;\n}\n","// styleHelpers.ts\nimport { NumberProps } from './constants';\n// Excluded keys imported from constants.ts\nimport { excludedKeys } from './constants';\n\n// Function to set the size of the element\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Set height and width\n};\n\n// Function to convert style object to CSS string\nexport const styleObjectToCss = (styleObj: Record<string, any>): string => {\n return Object.entries(styleObj)\n .map(([key, value]) => `${toKebabCase(key)}: ${value};`)\n .join(' ');\n};\n\n// Function to convert camelCase to kebab-case\nexport const toKebabCase = (str: string): string =>\n str.replace(/([A-Z])/g, (match) => '-' + match.toLowerCase());\n\n// Function to check if a property is a style prop\nexport const isStyleProp = (prop: string): boolean => {\n // Implement your logic to determine if a prop is a style prop\n // For simplicity, we assume all props not in excludedKeys are style props\n return !excludedKeys.has(prop);\n};\n\n// Function to process and normalize style properties\nexport const processStyleProperty = (\n property: string,\n value: any,\n getColor: (color: string) => string\n): string | number => {\n if (typeof value === 'number' && !NumberProps.has(property)) {\n return `${value}px`;\n } else if (property.toLowerCase().includes('color')) {\n return getColor(value);\n } else {\n return value;\n }\n};\n","/* eslint-disable @typescript-eslint/no-unused-vars */\n// animationHelpers.ts\nimport { styleObjectToCss } from './style';\n\nlet keyframesCounter = 0;\nconst keyframesCache = new Map<string, string>();\n\nexport const generateKeyframes = (\n animation: any\n): { keyframesName: string; keyframes: string } => {\n // Exclure les propriétés qui ne font pas partie des keyframes\n const {\n duration,\n timingFunction,\n delay,\n iterationCount,\n direction,\n fillMode,\n playState,\n ...keyframesDef\n } = animation;\n\n // Générer une clé pour le cache basée sur les keyframes\n const animationConfigString = JSON.stringify(keyframesDef);\n\n if (keyframesCache.has(animationConfigString)) {\n const keyframesName = keyframesCache.get(animationConfigString)!;\n return { keyframesName, keyframes: '' }; // Les keyframes existent déjà\n }\n\n const keyframesName = `animation-${keyframesCounter++}`;\n keyframesCache.set(animationConfigString, keyframesName);\n\n const keyframesContent: string[] = [];\n\n // Trier les clés pour assurer un ordre cohérent\n const keyframeKeys = Object.keys(keyframesDef).sort((a, b) => {\n const getPercentage = (key: string): number => {\n if (key === 'from') return 0;\n if (key === 'to' || key === 'enter') return 100;\n return parseInt(key.replace('%', ''), 10);\n };\n return getPercentage(a) - getPercentage(b);\n });\n\n keyframeKeys.forEach((key) => {\n const cssKey = key === 'enter' ? 'to' : key; // Remplacer 'enter' par 'to'\n const styles = keyframesDef[key];\n keyframesContent.push(`${cssKey} { ${styleObjectToCss(styles)} }`);\n });\n\n const keyframes = `\n @keyframes ${keyframesName} {\n ${keyframesContent.join('\\n')}\n }\n `;\n\n return { keyframesName, keyframes };\n};\n","export type Shadow = {\n shadowColor: string;\n shadowOffset: {\n width: number;\n height: number;\n };\n shadowOpacity: number;\n shadowRadius: number;\n};\n\nexport const Shadows: Record<number, Shadow> = {\n 0: {\n shadowColor: '#000',\n shadowOffset: {\n width: 1,\n height: 2,\n },\n shadowOpacity: 0.18,\n shadowRadius: 1.0,\n },\n 1: {\n shadowColor: '#000',\n shadowOffset: {\n width: 2,\n height: 2,\n },\n shadowOpacity: 0.2,\n shadowRadius: 1.41,\n },\n 2: {\n shadowColor: '#000',\n shadowOffset: {\n width: 3,\n height: 3,\n },\n shadowOpacity: 0.22,\n shadowRadius: 2.22,\n },\n 3: {\n shadowColor: '#000',\n shadowOffset: {\n width: 4,\n height: 4,\n },\n shadowOpacity: 0.23,\n shadowRadius: 2.62,\n },\n 4: {\n shadowColor: '#000',\n shadowOffset: {\n width: 5,\n height: 5,\n },\n shadowOpacity: 0.25,\n shadowRadius: 3.84,\n },\n 5: {\n shadowColor: '#000',\n shadowOffset: {\n width: 6,\n height: 6,\n },\n shadowOpacity: 0.27,\n shadowRadius: 4.65,\n },\n 6: {\n shadowColor: '#000',\n shadowOffset: {\n width: 7,\n height: 7,\n },\n shadowOpacity: 0.29,\n shadowRadius: 4.65,\n },\n 7: {\n shadowColor: '#000',\n shadowOffset: {\n width: 8,\n height: 8,\n },\n shadowOpacity: 0.3,\n shadowRadius: 4.65,\n },\n 8: {\n shadowColor: '#000',\n shadowOffset: {\n width: 9,\n height: 9,\n },\n shadowOpacity: 0.32,\n shadowRadius: 5.46,\n },\n 9: {\n shadowColor: '#000',\n shadowOffset: {\n width: 10,\n height: 10,\n },\n shadowOpacity: 0.34,\n shadowRadius: 6.27,\n },\n};\n","// Element.tsx\nimport React, { CSSProperties, useEffect, useMemo } from 'react';\nimport { useTheme } from '../providers/Theme';\nimport { useResponsiveContext } from '../providers/Responsive';\nimport Color from 'color-convert';\n\nimport {\n isStyleProp,\n processStyleProperty,\n styleObjectToCss,\n} from '../utils/style';\nimport { generateKeyframes } from '../utils/animation';\nimport {\n excludedKeys,\n includeKeys,\n AnimationProps,\n extraKeys,\n} from '../utils/constants';\nimport { Shadows, Shadow } from '../utils/shadow';\n\nexport interface ElementProps extends CssProps {\n on?: Record<string, CssProps>;\n media?: Record<string, CssProps>;\n only?: string[];\n css?: CSSProperties;\n}\n\nexport interface CssProps {\n children?: React.ReactNode;\n size?: number;\n paddingHorizontal?: number | string;\n marginHorizontal?: number | string;\n paddingVertical?: number | string;\n marginVertical?: number | string;\n shadow?: boolean | number | Shadow;\n style?: CSSProperties;\n animate?: AnimationProps;\n onPress?: () => void;\n [key: string]: any;\n}\nconst styleSheet = (() => {\n if (typeof document !== 'undefined') {\n let styleTag = document.getElementById(\n 'dynamic-styles'\n ) as HTMLStyleElement;\n if (!styleTag) {\n styleTag = document.createElement('style');\n styleTag.id = 'dynamic-styles';\n document.head.appendChild(styleTag);\n }\n return styleTag.sheet as CSSStyleSheet;\n }\n return null;\n})();\n\nconst classCache = new Map<string, string>();\nconst cssRulesCache = new Map<string, string[]>();\n\nlet classNameCounter = 0;\n\nconst generateClassName = (styleProps: Record<string, any>): string => {\n const serialized = JSON.stringify(styleProps);\n if (classCache.has(serialized)) {\n return classCache.get(serialized)!;\n } else {\n const className = 'clz-' + classNameCounter++;\n classCache.set(serialized, className);\n return className;\n }\n};\n\nconst useDynamicStyles = (cssRules: string[]): void => {\n useEffect(() => {\n if (!styleSheet) return;\n cssRules.forEach((rule) => {\n try {\n if (\n Array.from(styleSheet.cssRules).some(\n (cssRule) => cssRule.cssText === rule\n )\n ) {\n return;\n }\n styleSheet.insertRule(rule, styleSheet.cssRules.length);\n } catch (error) {\n console.error('Error inserting CSS rule:', rule, error);\n }\n });\n }, [cssRules]);\n};\nconst generateCssRules = (\n selector: string,\n styles: Record<string, any>,\n getColor: (color: string) => string,\n mediaQueries?: Record<string, any>\n): string[] => {\n const rules: string[] = [];\n const mainStyles: Record<string, any> = {};\n const nestedMediaQueries: Record<string, Record<string, any>> = {};\n\n Object.keys(styles).forEach((key) => {\n const value = styles[key];\n if (key.startsWith('@media ')) {\n const mediaQuery = key;\n if (!nestedMediaQueries[mediaQuery]) {\n nestedMediaQueries[mediaQuery] = {};\n }\n Object.assign(nestedMediaQueries[mediaQuery], value);\n } else if (key.startsWith('&:')) {\n const pseudoSelector = key.slice(1);\n const nestedStyles = styles[key];\n const nestedRules = generateCssRules(\n `${selector}${pseudoSelector}`,\n nestedStyles,\n getColor\n // Ne pas passer mediaQueries ici\n );\n rules.push(...nestedRules);\n } else {\n mainStyles[key] = value;\n }\n });\n\n // Gestion des media queries\n // eslint-disable-next-line prefer-const\n let mediaBreakpoints: Record<string, string> = {};\n\n if (mediaQueries) {\n for (const query in mediaQueries) {\n const queries = mediaQueries[query].trim();\n mediaBreakpoints['@media ' + queries] = query;\n }\n }\n\n if (\n Object.keys(mainStyles).length > 0 ||\n Object.keys(nestedMediaQueries).length > 0\n ) {\n const processedStyles: Record<string, any> = {};\n for (const property in mainStyles) {\n processedStyles[property] = processStyleProperty(\n property,\n mainStyles[property],\n getColor\n );\n }\n\n const cssRule = `${selector} { ${styleObjectToCss(processedStyles)} }`;\n rules.push(cssRule);\n\n for (let mediaQuery in nestedMediaQueries) {\n mediaQuery = mediaQuery.trim();\n const mediaStyles = nestedMediaQueries[mediaQuery];\n const processedMediaStyles: Record<string, any> = {};\n for (const property in mediaStyles) {\n processedMediaStyles[property] = processStyleProperty(\n property,\n mediaStyles[property],\n getColor\n );\n }\n const cssProperties = styleObjectToCss(processedMediaStyles);\n const mediaRule = `${mediaQuery} { ${selector} { ${cssProperties} } }`;\n rules.push(mediaRule);\n\n if (mediaBreakpoints[mediaQuery]) {\n const breakpoint = mediaBreakpoints[mediaQuery];\n const bpRule = `.${breakpoint} ${selector} { ${cssProperties} }`;\n rules.push(bpRule);\n }\n }\n }\n\n return rules;\n};\n\n// Function to apply styles to a component\nconst applyStyle = (\n props: Record<string, any>,\n getColor: (color: string) => string,\n mediaQueries: any,\n devices: any\n): {\n styleProps: Record<string, any>;\n keyframes?: string[];\n} => {\n const styleProps: Record<string, any> = {};\n const keyframesList: string[] = [];\n\n // Gestion de la taille de l'élément\n const size =\n props.height !== undefined &&\n props.width !== undefined &&\n props.height === props.width\n ? props.height\n : props.size\n ? props.size\n : null;\n\n if (size) {\n styleProps.height = styleProps.width = size;\n }\n\n // Gestion du padding et de la marge\n if (props.paddingHorizontal) {\n styleProps.paddingLeft = props.paddingHorizontal;\n styleProps.paddingRight = props.paddingHorizontal;\n }\n\n if (props.marginHorizontal) {\n styleProps.marginLeft = props.marginHorizontal;\n styleProps.marginRight = props.marginHorizontal;\n }\n\n if (props.paddingVertical) {\n styleProps.paddingTop = props.paddingVertical;\n styleProps.paddingBottom = props.paddingVertical;\n }\n\n if (props.marginVertical) {\n styleProps.marginTop = props.marginVertical;\n styleProps.marginBottom = props.marginVertical;\n }\n\n // Application des ombres si spécifié\n if (props.shadow) {\n if (typeof props.shadow === 'number' || typeof props.shadow === 'boolean') {\n const shadowValue: number =\n typeof props.shadow === 'number' && Shadows[props.shadow] !== undefined\n ? props.shadow\n : 2;\n\n if (Shadows[shadowValue]) {\n const shadowColor =\n Color.hex.rgb(Shadows[shadowValue].shadowColor) || [];\n\n styleProps['boxShadow'] = `${\n Shadows[shadowValue].shadowOffset.height\n }px ${Shadows[shadowValue].shadowOffset.width}px ${\n Shadows[shadowValue].shadowRadius\n }px rgba(${shadowColor.join(',')},${\n Shadows[shadowValue].shadowOpacity\n })`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor) || [];\n\n styleProps['boxShadow'] = `${props.shadow.shadowOffset.height}px ${\n props.shadow.shadowOffset.width\n }px ${props.shadow.shadowRadius}px rgba(${shadowColor.join(',')},${\n props.shadow.shadowOpacity\n })`;\n }\n }\n\n // Gestion des animations\n if (props.animate) {\n const animation = props.animate;\n const { keyframesName, keyframes } = generateKeyframes(animation);\n\n if (keyframes) {\n keyframesList.push(keyframes);\n }\n\n styleProps.animationName = keyframesName;\n styleProps.animationDuration = animation.duration || '1s';\n styleProps.animationTimingFunction = animation.timingFunction || 'ease';\n styleProps.animationDelay = animation.delay || '0s';\n styleProps.animationIterationCount = `${animation.iterationCount || '1'}`;\n styleProps.animationDirection = animation.direction || 'normal';\n styleProps.animationFillMode = animation.fillMode || 'both';\n styleProps.animationPlayState = animation.playState || 'running';\n }\n\n // Traitement des propriétés de style\n Object.keys(props).forEach((property) => {\n if (\n property !== 'style' &&\n (isStyleProp(property) || extraKeys.has(property))\n ) {\n const value = props[property];\n\n if (typeof value === 'object' && value !== null) {\n // Pour les propriétés comme 'on', 'media'\n if (property === 'on') {\n // Pseudo-sélecteurs\n for (const event in value) {\n if (!styleProps[`&:${event}`]) {\n styleProps[`&:${event}`] = {};\n }\n const nestedResult = applyStyle(\n value[event],\n getColor,\n mediaQueries,\n devices\n );\n Object.assign(styleProps[`&:${event}`], nestedResult.styleProps);\n keyframesList.push(...(nestedResult.keyframes || []));\n }\n } else if (property === 'media') {\n // Media queries\n for (const screenOrDevices in value) {\n const mediaValue = value[screenOrDevices];\n if (mediaQueries[screenOrDevices]) {\n const mediaQuery = '@media ' + mediaQueries[screenOrDevices];\n if (!styleProps[mediaQuery]) {\n styleProps[mediaQuery] = {};\n }\n const nestedResult = applyStyle(\n mediaValue,\n getColor,\n mediaQueries,\n devices\n );\n Object.assign(styleProps[mediaQuery], nestedResult.styleProps);\n keyframesList.push(...(nestedResult.keyframes || []));\n } else if (devices[screenOrDevices]) {\n const deviceScreens = devices[screenOrDevices];\n deviceScreens.forEach((screen: string) => {\n if (mediaQueries[screen]) {\n const mediaQuery = '@media ' + mediaQueries[screen];\n if (!styleProps[mediaQuery]) {\n styleProps[mediaQuery] = {};\n }\n const nestedResult = applyStyle(\n mediaValue,\n getColor,\n mediaQueries,\n devices\n );\n Object.assign(\n styleProps[mediaQuery],\n nestedResult.styleProps\n );\n keyframesList.push(...(nestedResult.keyframes || []));\n }\n });\n }\n }\n } else {\n // Styles imbriqués\n const nestedResult = applyStyle(\n value,\n getColor,\n mediaQueries,\n devices\n );\n styleProps[property] = nestedResult.styleProps;\n keyframesList.push(...(nestedResult.keyframes || []));\n }\n } else {\n // Propriété de style simple\n styleProps[property] = value;\n }\n }\n });\n\n return { styleProps, keyframes: keyframesList };\n};\n\nconst getStyledProps = (\n props: any,\n getColor: (color: string) => string,\n mediaQueries: any,\n devices: any\n): { newProps: any; className: string; cssRules: string[] } => {\n const { styleProps, keyframes } = applyStyle(\n props,\n getColor,\n mediaQueries,\n devices\n );\n\n const className = generateClassName(styleProps);\n\n let cssRules: string[] = [];\n\n if (cssRulesCache.has(className)) {\n cssRules = cssRulesCache.get(className)!;\n } else {\n cssRules = generateCssRules(\n `.${className}`,\n styleProps,\n getColor,\n mediaQueries\n );\n\n if (keyframes && keyframes.length > 0) {\n cssRules = keyframes.concat(cssRules);\n }\n\n cssRulesCache.set(className, cssRules);\n }\n\n const { style, ...restProps } = props;\n\n const newProps = Object.keys(restProps).reduce((acc: any, key) => {\n if ((!excludedKeys.has(key) && !isStyleProp(key)) || includeKeys.has(key)) {\n acc[key] = restProps[key];\n }\n return acc;\n }, {});\n\n if (className) {\n newProps.className = className;\n }\n\n if (style) {\n newProps.style = style;\n }\n\n return { newProps, className, cssRules };\n};\n\nexport const Element: React.FC<ElementProps> = (props) => {\n const { onPress, ...rest } = props;\n\n const { getColor } = useTheme();\n const { mediaQueries, devices } = useResponsiveContext();\n\n const { newProps, cssRules } = useMemo(\n () => getStyledProps(rest, getColor, mediaQueries, devices),\n [rest, getColor, mediaQueries, devices]\n );\n\n if (onPress) {\n newProps.onClick = onPress;\n }\n\n useDynamicStyles(cssRules);\n\n const Component = newProps.as || 'div';\n delete newProps.as;\n\n return <Component {...newProps}>{props.children}</Component>;\n};\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'react';\n\ninterface ScrollProps extends ViewProps {\n // Définir des props spécifiques pour Scroll si nécessaire\n}\n\ninterface SpanProps extends Omit<ViewProps, 'as'> {\n // Définir des props spécifiques pour Span si nécessaire\n}\n\nexport interface ViewProps\n extends Omit<\n ViewStyleProps,\n 'children' | 'translate' | 'style' | 'pointerEvents'\n >,\n Omit<CSSProperties, 'translate' | 'animation'>,\n ElementProps {\n onPress?: (..._args: any) => void;\n}\n\nexport const View: React.FC<ViewProps> = React.memo((props) => (\n <Element {...props} />\n));\n\nexport const Div = View;\n\nexport const SafeArea = View;\n\nexport const Scroll: React.FC<ScrollProps> = React.memo((props) => (\n <View overflow={'auto'} {...props} />\n));\n\nexport const Span: React.FC<SpanProps> = React.memo((props) => (\n <Element {...props} as=\"span\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ImageStyleProps } from '../types/style';\n\nexport interface ImageProps\n extends Omit<ImageStyleProps, 'children' | 'style' | 'pointerEvents'>,\n Omit<\n Partial<HTMLImageElement>,\n | 'width'\n | 'height'\n | 'children'\n | 'translate'\n | 'target'\n | 'border'\n | 'animate'\n | 'draggable'\n | 'style'\n >,\n Omit<CSSProperties, 'animation'>,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'react';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<\n TextStyleProps,\n 'children' | 'style' | 'onPress' | 'pointerEvents'\n >,\n Omit<CSSProperties, 'animation'>,\n ElementProps {\n toUpperCase?: boolean;\n}\n\nexport const Text = React.memo((props: TextProps) => {\n return <Element {...props} />;\n});\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'react';\n\n// Common props pour éviter la répétition\ninterface CommonProps\n extends Omit<ViewStyleProps, 'children' | 'style' | 'pointerEvents'> {}\n\n// Props pour le composant Form\nexport interface FormProps\n extends CommonProps,\n Omit<\n Partial<HTMLFormElement>,\n | 'width'\n | 'height'\n | 'children'\n | 'translate'\n | 'target'\n | 'border'\n | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\n// Props pour le composant Button\nexport interface ButtonProps\n extends CommonProps,\n Omit<\n Partial<HTMLButtonElement>,\n | 'width'\n | 'height'\n | 'children'\n | 'translate'\n | 'type'\n | 'border'\n | 'animate'\n | 'style'\n | 'draggable'\n >,\n Omit<CSSProperties, 'animation'>,\n ElementProps {\n children?: React.ReactNode;\n // ... autres props ...\n onClick?: (..._args: any) => void;\n // ... autres props ...\n}\n\n// Props pour le composant Input\nexport interface InputProps\n extends ElementProps,\n CommonProps,\n Omit<\n Partial<HTMLInputElement>,\n 'width' | 'height' | 'animate' | 'style' | 'children'\n >,\n Omit<CSSProperties, 'style' | 'dir' | 'translate'> {}\n\n// Utilisation de React.memo pour une meilleure performance\nexport const Form = React.memo((props: FormProps) => (\n <Element {...props} as=\"form\" />\n));\n\nexport const Input = React.memo((props: InputProps) => (\n <Element {...props} as=\"input\" />\n));\n\nexport const Button = React.memo((props: ButtonProps) => (\n <Element {...props} as=\"button\" />\n));\n","/**\n * whether in browser env\n */\nexport const isBrowser = (): boolean =>\n typeof window !== 'undefined' &&\n typeof window.document !== 'undefined' &&\n typeof window.document.createElement !== 'undefined';\n\n/**\n * get window.g_initialProps\n */\nexport const getWindowInitialProps = () =>\n isBrowser() ? (window as any).g_initialProps : undefined;\n\n/**\n * whether SSR success in client\n */\nexport const isSSR = !isBrowser();\n\nexport function isDev() {\n let dev = false;\n\n if (isBrowser()) {\n dev = !(window.location.hostname.indexOf('localhost') === -1);\n }\n return dev;\n}\n\nexport function isProd() {\n if (isBrowser()) {\n if (window && window.location && window.location.hostname) {\n return (\n window.location.hostname.includes('localhost') ||\n window.location.hostname.includes('develop')\n );\n }\n }\n return false;\n}\n\nexport function isMobile() {\n return navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i);\n}\n","import { useEffect } from 'react';\nexport const useMount = (callback: () => void) => {\n useEffect(() => {\n callback();\n }, []);\n};\n","import { useState } from 'react';\nimport {\n useResponsiveContext,\n ScreenOrientation,\n} from '../providers/Responsive';\n\nimport { useMount } from './useMount';\n\nexport const createQuery = (keyScreen: string, query: string, set: any) => {\n const mql = window.matchMedia(query);\n const onChange = () => {\n if (!!mql.matches) {\n set(keyScreen);\n }\n };\n\n mql.addListener(onChange);\n if (!!mql.matches) {\n set(keyScreen);\n }\n\n return () => {\n mql.removeListener(onChange);\n };\n};\n\nexport const useResponsive = () => {\n const { breakpoints, devices, mediaQueries } = useResponsiveContext();\n const [screen, setScreen] = useState('xs');\n const [orientation, setOrientation] = useState(\n 'landscape' as ScreenOrientation\n );\n\n useMount(() => {\n for (const screenSize in mediaQueries) {\n createQuery(screenSize, mediaQueries[screenSize], setScreen);\n }\n createQuery(\n 'landscape',\n 'only screen and (orientation: landscape)',\n setOrientation\n );\n createQuery(\n 'portrait',\n 'only screen and (orientation: portrait)',\n setOrientation\n );\n });\n\n const on = (device: keyof typeof devices) => {\n return devices[device].includes(screen);\n };\n\n const is = (s: keyof typeof breakpoints) => {\n return s == screen;\n };\n\n return {\n breakpoints,\n devices,\n orientation,\n screen,\n on,\n is,\n };\n};\n","// animations.ts\n\nexport const fadeIn = (duration = '1s', timingFunction = 'ease') => ({\n from: { opacity: 0 },\n enter: { opacity: 1 },\n duration,\n timingFunction,\n});\n\nexport const fadeOut = (duration = '1s', timingFunction = 'ease') => ({\n from: { opacity: 1 },\n enter: { opacity: 0 },\n duration,\n timingFunction,\n});\n\nexport const slideInLeft = (\n duration = '0.5s',\n timingFunction = 'ease-out'\n) => ({\n from: { transform: 'translateX(-100%)' },\n enter: { transform: 'translateX(0)' },\n duration,\n timingFunction,\n});\n\nexport const slideInRight = (\n duration = '0.5s',\n timingFunction = 'ease-out'\n) => ({\n from: { transform: 'translateX(100%)' },\n enter: { transform: 'translateX(0)' },\n duration,\n timingFunction,\n});\n\nexport const slideInDown = (\n duration = '0.5s',\n timingFunction = 'ease-out'\n) => ({\n from: { transform: 'translateY(-100%)' },\n enter: { transform: 'translateY(0)' },\n duration,\n timingFunction,\n});\n\nexport const slideInUp = (duration = '0.5s', timingFunction = 'ease-out') => ({\n from: { transform: 'translateY(100%)' },\n enter: { transform: 'translateY(0)' },\n duration,\n timingFunction,\n});\n\nexport const bounce = (\n duration = '2s',\n timingFunction = 'ease',\n iterationCount = 'infinite'\n) => ({\n from: { transform: 'translateY(0)' },\n '20%': { transform: 'translateY(-30px)' },\n '40%': { transform: 'translateY(0)' },\n '60%': { transform: 'translateY(-15px)' },\n '80%': { transform: 'translateY(0)' },\n enter: { transform: 'translateY(0)' },\n duration,\n timingFunction,\n iterationCount,\n});\n\nexport const rotate = (\n duration = '1s',\n timingFunction = 'linear',\n iterationCount = 'infinite'\n) => ({\n from: { transform: 'rotate(0deg)' },\n enter: { transform: 'rotate(360deg)' },\n duration,\n timingFunction,\n iterationCount,\n});\n\nexport const pulse = (\n duration = '1s',\n timingFunction = 'ease-in-out',\n iterationCount = 'infinite'\n) => ({\n from: { transform: 'scale(1)' },\n '50%': { transform: 'scale(1.05)' },\n enter: { transform: 'scale(1)' },\n duration,\n timingFunction,\n iterationCount,\n});\n\nexport const zoomIn = (duration = '0.5s', timingFunction = 'ease-out') => ({\n from: { transform: 'scale(0)' },\n enter: { transform: 'scale(1)' },\n duration,\n timingFunction,\n});\n\nexport const zoomOut = (duration = '0.5s', timingFunction = 'ease-out') => ({\n from: { transform: 'scale(1)' },\n enter: { transform: 'scale(0)' },\n duration,\n timingFunction,\n});\n\nexport const flash = (duration = '1s', iterationCount = 'infinite') => ({\n from: { opacity: 1 },\n '50%': { opacity: 0 },\n enter: { opacity: 1 },\n duration,\n iterationCount,\n});\n\nexport const shake = (duration = '0.5s', iterationCount = 'infinite') => ({\n from: { transform: 'translateX(0)' },\n '10%': { transform: 'translateX(-10px)' },\n '20%': { transform: 'translateX(10px)' },\n '30%': { transform: 'translateX(-10px)' },\n '40%': { transform: 'translateX(10px)' },\n '50%': { transform: 'translateX(-10px)' },\n '60%': { transform: 'translateX(10px)' },\n '70%': { transform: 'translateX(-10px)' },\n '80%': { transform: 'translateX(10px)' },\n '90%': { transform: 'translateX(-10px)' },\n enter: { transform: 'translateX(0)' },\n duration,\n iterationCount,\n});\n\nexport const swing = (duration = '1s', iterationCount = 'infinite') => ({\n from: { transform: 'rotate(0deg)' },\n '20%': { transform: 'rotate(15deg)' },\n '40%': { transform: 'rotate(-10deg)' },\n '60%': { transform: 'rotate(5deg)' },\n '80%': { transform: 'rotate(-5deg)' },\n enter: { transform: 'rotate(0deg)' },\n duration,\n iterationCount,\n});\n\nexport const rubberBand = (\n duration = '1s',\n timingFunction = 'ease-in-out'\n) => ({\n from: { transform: 'scale3d(1, 1, 1)' },\n '30%': { transform: 'scale3d(1.25, 0.75, 1)' },\n '40%': { transform: 'scale3d(0.75, 1.25, 1)' },\n '50%': { transform: 'scale3d(1.15, 0.85, 1)' },\n '65%': { transform: 'scale3d(0.95, 1.05, 1)' },\n '75%': { transform: 'scale3d(1.05, 0.95, 1)' },\n enter: { transform: 'scale3d(1, 1, 1)' },\n duration,\n timingFunction,\n});\n\nexport const wobble = (duration = '1s') => ({\n from: { transform: 'translateX(0%)' },\n '15%': { transform: 'translateX(-25%) rotate(-5deg)' },\n '30%': { transform: 'translateX(20%) rotate(3deg)' },\n '45%': { transform: 'translateX(-15%) rotate(-3deg)' },\n '60%': { transform: 'translateX(10%) rotate(2deg)' },\n '75%': { transform: 'translateX(-5%) rotate(-1deg)' },\n enter: { transform: 'translateX(0%)' },\n duration,\n});\n\nexport const flip = (duration = '1s') => ({\n from: {\n transform: 'perspective(400px) rotateY(0deg)',\n },\n '40%': {\n transform: 'perspective(400px) rotateY(-180deg)',\n },\n enter: {\n transform: 'perspective(400px) rotateY(-360deg)',\n },\n duration,\n});\n\nexport const heartBeat = (duration = '1.3s', iterationCount = 'infinite') => ({\n from: { transform: 'scale(1)' },\n '14%': { transform: 'scale(1.3)' },\n '28%': { transform: 'scale(1)' },\n '42%': { transform: 'scale(1.3)' },\n '70%': { transform: 'scale(1)' },\n enter: { transform: 'scale(1)' },\n duration,\n iterationCount,\n});\n\nexport const rollIn = (duration = '1s') => ({\n from: {\n opacity: 0,\n transform: 'translateX(-100%) rotate(-120deg)',\n },\n enter: {\n opacity: 1,\n transform: 'translateX(0px) rotate(0deg)',\n },\n duration,\n});\n\nexport const rollOut = (duration = '1s') => ({\n from: {\n opacity: 1,\n transform: 'translateX(0px) rotate(0deg)',\n },\n enter: {\n opacity: 0,\n transform: 'translateX(100%) rotate(120deg)',\n },\n duration,\n});\n\nexport const lightSpeedIn = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n transform: 'translateX(100%) skewX(-30deg)',\n opacity: 0,\n },\n '60%': {\n transform: 'skewX(20deg)',\n opacity: 1,\n },\n '80%': {\n transform: 'skewX(-5deg)',\n },\n enter: {\n transform: 'translateX(0)',\n opacity: 1,\n },\n duration,\n timingFunction,\n});\n\nexport const lightSpeedOut = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 1,\n },\n '20%': {\n opacity: 1,\n transform: 'translateX(-20%) skewX(20deg)',\n },\n enter: {\n opacity: 0,\n transform: 'translateX(-100%) skewX(30deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const hinge = (duration = '2s', timingFunction = 'ease-in-out') => ({\n from: {\n transform: 'rotate(0deg)',\n transformOrigin: 'top left',\n opacity: 1,\n },\n '20%': {\n transform: 'rotate(80deg)',\n opacity: 1,\n },\n '40%': {\n transform: 'rotate(60deg)',\n opacity: 1,\n },\n '60%': {\n transform: 'rotate(80deg)',\n opacity: 1,\n },\n '80%': {\n transform: 'rotate(60deg)',\n opacity: 1,\n },\n enter: {\n transform: 'translateY(700px)',\n opacity: 0,\n },\n duration,\n timingFunction,\n});\n\nexport const jackInTheBox = (duration = '1s', timingFunction = 'ease') => ({\n from: {\n opacity: 0,\n transform: 'scale(0.1) rotate(30deg)',\n transformOrigin: 'center bottom',\n },\n '50%': {\n transform: 'rotate(-10deg)',\n },\n '70%': {\n transform: 'rotate(3deg)',\n },\n enter: {\n opacity: 1,\n transform: 'scale(1) rotate(0deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const flipInX = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n transform: 'perspective(400px) rotateX(90deg)',\n opacity: 0,\n },\n '40%': {\n transform: 'perspective(400px) rotateX(-10deg)',\n opacity: 1,\n },\n enter: {\n transform: 'perspective(400px) rotateX(0deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const flipInY = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n transform: 'perspective(400px) rotateY(90deg)',\n opacity: 0,\n },\n '40%': {\n transform: 'perspective(400px) rotateY(-10deg)',\n opacity: 1,\n },\n enter: {\n transform: 'perspective(400px) rotateY(0deg)',\n },\n duration,\n timingFunction,\n});\n\nexport const headShake = (duration = '1s', iterationCount = 'infinite') => ({\n from: {\n transform: 'translateX(0)',\n },\n '6.5%': {\n transform: 'translateX(-6px) rotateY(-9deg)',\n },\n '18.5%': {\n transform: 'translateX(5px) rotateY(7deg)',\n },\n '31.5%': {\n transform: 'translateX(-3px) rotateY(-5deg)',\n },\n '43.5%': {\n transform: 'translateX(2px) rotateY(3deg)',\n },\n '50%': {\n transform: 'translateX(0)',\n },\n duration,\n iterationCount,\n});\n\nexport const tada = (duration = '1s', iterationCount = 'infinite') => ({\n from: { transform: 'scale3d(1, 1, 1)', opacity: 1 },\n '10%, 20%': {\n transform: 'scale3d(0.9, 0.9, 0.9) rotate(-3deg)',\n },\n '30%, 50%, 70%, 90%': {\n transform: 'scale3d(1.1, 1.1, 1.1) rotate(3deg)',\n },\n '40%, 60%, 80%': {\n transform: 'scale3d(1.1, 1.1, 1.1) rotate(-3deg)',\n },\n enter: { transform: 'scale3d(1, 1, 1)', opacity: 1 },\n duration,\n iterationCount,\n});\n\nexport const jello = (duration = '1s', iterationCount = 'infinite') => ({\n from: { transform: 'none' },\n '11.1%': { transform: 'skewX(-12.5deg) skewY(-12.5deg)' },\n '22.2%': { transform: 'skewX(6.25deg) skewY(6.25deg)' },\n '33.3%': { transform: 'skewX(-3.125deg) skewY(-3.125deg)' },\n '44.4%': { transform: 'skewX(1.5625deg) skewY(1.5625deg)' },\n '55.5%': { transform: 'skewX(-0.78125deg) skewY(-0.78125deg)' },\n '66.6%': { transform: 'skewX(0.390625deg) skewY(0.390625deg)' },\n '77.7%': { transform: 'skewX(-0.1953125deg) skewY(-0.1953125deg)' },\n '88.8%': { transform: 'skewX(0.09765625deg) skewY(0.09765625deg)' },\n enter: { transform: 'none' },\n duration,\n iterationCount,\n});\n\nexport const fadeInDown = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n opacity: 0,\n transform: 'translateY(-100%)',\n },\n enter: {\n opacity: 1,\n transform: 'translateY(0)',\n },\n duration,\n timingFunction,\n});\n\nexport const fadeInUp = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n opacity: 0,\n transform: 'translateY(100%)',\n },\n enter: {\n opacity: 1,\n transform: 'translateY(0)',\n },\n duration,\n timingFunction,\n});\n\nexport const bounceIn = (duration = '0.75s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 0,\n transform: 'scale(0.3)',\n },\n '50%': {\n opacity: 1,\n transform: 'scale(1.05)',\n },\n '70%': {\n transform: 'scale(0.9)',\n },\n enter: {\n transform: 'scale(1)',\n },\n duration,\n timingFunction,\n});\n\nexport const bounceOut = (duration = '0.75s', timingFunction = 'ease-out') => ({\n from: {\n transform: 'scale(1)',\n },\n '20%': {\n transform: 'scale(0.9)',\n },\n '50%, 55%': {\n opacity: 1,\n transform: 'scale(1.1)',\n },\n enter: {\n opacity: 0,\n transform: 'scale(0.3)',\n },\n duration,\n timingFunction,\n});\n\nexport const slideOutLeft = (\n duration = '0.5s',\n timingFunction = 'ease-in'\n) => ({\n from: {\n transform: 'translateX(0)',\n },\n enter: {\n transform: 'translateX(-100%)',\n },\n duration,\n timingFunction,\n});\n\nexport const slideOutRight = (\n duration = '0.5s',\n timingFunction = 'ease-in'\n) => ({\n from: {\n transform: 'translateX(0)',\n },\n enter: {\n transform: 'translateX(100%)',\n },\n duration,\n timingFunction,\n});\n\nexport const zoomInDown = (duration = '1s', timingFunction = 'ease-out') => ({\n from: {\n opacity: 0,\n transform: 'scale(0.1) translateY(-1000px)',\n },\n '60%': {\n opacity: 1,\n transform: 'scale(0.475) translateY(60px)',\n },\n enter: {\n transform: 'scale(1) translateY(0)',\n },\n duration,\n timingFunction,\n});\n\nexport const zoomOutUp = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 1,\n transform: 'scale(1) translateY(0)',\n },\n '40%': {\n opacity: 1,\n transform: 'scale(0.475) translateY(-60px)',\n },\n enter: {\n opacity: 0,\n transform: 'scale(0.1) translateY(-1000px)',\n },\n duration,\n timingFunction,\n});\n\nexport const backInDown = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 0.7,\n transform: 'translateY(-2000px) scaleY(2.5) scaleX(0.2)',\n },\n enter: {\n opacity: 1,\n transform: 'translateY(0) scaleY(1) scaleX(1)',\n },\n duration,\n timingFunction,\n});\n\nexport const backOutUp = (duration = '1s', timingFunction = 'ease-in') => ({\n from: {\n opacity: 1,\n transform: 'translateY(0)',\n },\n '80%': {\n opacity: 0.7,\n transform: 'translateY(-20px)',\n },\n enter: {\n opacity: 0,\n transform: 'translateY(-2000px)',\n },\n duration,\n timingFunction,\n});\n","export const Typography = {\n letterSpacings: {\n tighter: -0.08,\n tight: -0.4,\n normal: 0,\n wide: 0.4,\n wider: 0.8,\n widest: 1.6,\n },\n lineHeights: {\n xs: 10,\n sm: 12,\n md: 14,\n lg: 16,\n xl: 20,\n '2xl': 24,\n '3xl': 30,\n '4xl': 36,\n '5xl': 48,\n '6xl': 64,\n },\n fontWeights: {\n hairline: 100,\n thin: 200,\n light: 300,\n normal: 400,\n medium: 500,\n semiBold: 600,\n bold: 700,\n extraBold: 800,\n black: 900,\n },\n fontSizes: {\n xs: 10,\n sm: 12,\n md: 14,\n lg: 16,\n xl: 20,\n '2xl': 24,\n '3xl': 30,\n '4xl': 36,\n '5xl': 48,\n '6xl': 64,\n },\n};\n"],"names":["palette","white","50","100","200","300","400","500","600","700","800","900","black","rose","pink","fuchsia","purple","violet","indigo","blue","lightBlue","cyan","teal","emerald","green","lime","yellow","amber","orange","red","warmGray","trueGray","gray","dark","coolGray","blueGray","defaultThemeMain","primary","secondary","success","error","warning","disabled","loading","defaultColors","magenta","grey","brown","navy","olive","maroon","gold","silver","beige","turquoise","coral","chocolate","skyBlue","plum","darkGreen","salmon","ThemeContext","createContext","getColor","name","colors","main","defaultPalette","theme","components","useTheme","useContext","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","breakpointValue","Object","keys","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","ResponsiveContext","breakpoints","devices","mediaQueries","useResponsiveContext","NumberProps","Set","excludedKeys","extraKeys","includeKeys","styleObjectToCss","styleObj","entries","_ref","key","value","toKebabCase","join","str","replace","match","toLowerCase","isStyleProp","prop","has","processStyleProperty","property","includes","keyframesCounter","keyframesCache","Map","Shadows","0","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","1","2","3","4","5","6","7","8","9","styleSheet","document","styleTag","getElementById","createElement","id","head","appendChild","sheet","classCache","cssRulesCache","classNameCounter","generateCssRules","selector","styles","rules","mainStyles","nestedMediaQueries","forEach","startsWith","mediaQuery","assign","pseudoSelector","slice","nestedRules","push","mediaBreakpoints","trim","length","processedStyles","cssRule","mediaStyles","processedMediaStyles","cssProperties","applyStyle","props","styleProps","keyframesList","size","undefined","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","animate","animation","keyframesName","keyframes","keyframesDef","animationConfigString","JSON","stringify","get","set","keyframesContent","getPercentage","parseInt","generateKeyframes","animationName","animationDuration","duration","animationTimingFunction","timingFunction","animationDelay","delay","animationIterationCount","iterationCount","animationDirection","direction","animationFillMode","fillMode","animationPlayState","playState","event","nestedResult","screenOrDevices","mediaValue","screen","Element","onPress","rest","newProps","cssRules","useMemo","getStyledProps","className","serialized","generateClassName","concat","style","restProps","acc","onClick","useEffect","rule","Array","from","some","cssText","insertRule","console","useDynamicStyles","Component","as","React","children","View","memo","Div","SafeArea","Scroll","overflow","Span","Image","Text","Form","Input","Button","isBrowser","window","isSSR","useMount","callback","createQuery","keyScreen","mql","matchMedia","onChange","matches","addListener","removeListener","opacity","enter","transform","20%","40%","60%","80%","50%","10%","30%","70%","90%","65%","75%","15%","45%","14%","28%","42%","transformOrigin","6.5%","18.5%","31.5%","43.5%","10%, 20%","30%, 50%, 70%, 90%","40%, 60%, 80%","11.1%","22.2%","33.3%","44.4%","55.5%","66.6%","77.7%","88.8%","50%, 55%","Provider","split","log","e","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","2xl","3xl","4xl","5xl","6xl","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","getWindowInitialProps","g_initialProps","dev","location","hostname","indexOf","navigator","userAgent","useResponsive","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}