app-studio 0.1.30 → 0.1.31

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.
@@ -8,6 +8,7 @@ var React = require('react');
8
8
  var React__default = _interopDefault(React);
9
9
  var Color = _interopDefault(require('color-convert'));
10
10
  var styled = _interopDefault(require('styled-components'));
11
+ var isPropValid = _interopDefault(require('@emotion/is-prop-valid'));
11
12
 
12
13
  const palette = {
13
14
  white: {
@@ -742,7 +743,7 @@ const getProps = props => {
742
743
  const excludedKeys = /*#__PURE__*/new Set(['on', 'shadow', 'only', 'media', 'css', 'paddingHorizontal', 'paddingVertical', 'marginHorizontal', 'marginVertical']);
743
744
  // Crée un composant div stylisé, en excluant certaines props
744
745
  const ElementComponent = /*#__PURE__*/styled.div.withConfig({
745
- shouldForwardProp: prop => !excludedKeys.has(prop) && !isStyleProp(prop)
746
+ shouldForwardProp: prop => isPropValid(prop)
746
747
  })`
747
748
  // Applique les styles dynamiques en utilisant la fonction applyStyle
748
749
  ${props => applyStyle(props)}
@@ -1 +1 @@
1
- {"version":3,"file":"app-studio.cjs.development.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/utils/shadow.ts","../src/utils/style.ts","../src/providers/Responsive.tsx","../src/components/Element.tsx","../src/components/View.tsx","../src/components/Image.tsx","../src/components/Text.tsx","../src/components/Form.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","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","function getValidCSSProperties() {\n // Use the CSSStyleDeclaration object to get all supported CSS properties\n const allProps = Object.keys(document.body.style);\n\n // Create a Set for non-style attributes that we wish to exclude from the style properties\n // Note: This list is not exhaustive and can be expanded as needed.\n const nonStyleAttributes = new Set([\n 'length',\n 'parentRule',\n 'src',\n // ... add any other known non-style properties here\n ]);\n\n // Filter out non-standard properties, event handlers, and non-style attributes\n const validProps = new Set(\n allProps.filter(\n (prop) =>\n !/^(-moz-|-ms-|-webkit-|-o-)/.test(prop) && // Vendor prefixes\n !/^on[A-Z]/.test(prop) && // Event handlers, e.g., onClick\n !nonStyleAttributes.has(prop) // Specific non-style properties\n )\n );\n\n return validProps;\n}\n\nexport const StyleProps: any = getValidCSSProperties();\n\nexport const isStyleProp = (property: string): boolean => {\n return StyleProps.has(property);\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","import React from 'react'; // Importe React pour créer des composants\nimport Color from 'color-convert'; // Utilisé pour convertir les couleurs\nimport styled, { CSSProperties } from 'styled-components'; // Pour créer des composants stylisés\n\nimport { useTheme } from '../providers/Theme'; // Hook personnalisé pour utiliser le thème\nimport { Shadows, Shadow } from '../utils/shadow'; // Importe des utilitaires pour les ombres\nimport { isStyleProp } from '../utils/style'; // Fonction pour vérifier si une prop est un style\nimport { useResponsiveContext } from '../providers/Responsive'; // Hook pour le contexte responsive\n\n// Définit les props pour le composant Element\nexport interface ElementProps {\n children?: React.ReactNode; // Les enfants du composant\n size?: number; // Taille de l'élément\n on?: Record<string, CSSProperties>; // Styles pour les événements\n media?: Record<string, CSSProperties>; // Styles pour les médias\n paddingHorizontal?: number | string; // Padding horizontal\n marginHorizontal?: number | string; // Margin horizontal\n paddingVertical?: number | string; // Padding vertical\n marginVertical?: number | string; // Margin vertical\n shadow?: boolean | number | Shadow; // Propriété d'ombre\n only?: string[]; // Propriété pour spécifier des médias spécifiques\n css?: CSSProperties; // Styles CSS personnalisés\n}\n\n// Liste des propriétés numériques\nconst NumberProps = [\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// Stocke si une propriété est numérique\nconst NumberPropsStyle: { [key: string]: boolean } = {};\nNumberProps.forEach((property) => {\n NumberPropsStyle[property] = true;\n});\n\n// Fonction pour définir la taille de l'élément\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Définit la hauteur et la largeur\n};\n\n// Fonction pour appliquer les styles à un composant\nexport const applyStyle = (props: Record<string, any>): CSSProperties & any => {\n const { getColor } = useTheme(); // Utilise le hook pour obtenir les couleurs du thème\n const { mediaQueries, devices } = useResponsiveContext(); // Utilise le contexte responsive\n\n // eslint-disable-next-line prefer-const\n let styleProps: Record<string, any> = {}; // Stocke les styles\n\n // Applique un curseur pointeur si un gestionnaire de clic est présent\n if (props.onClick && styleProps.cursor == undefined) {\n styleProps.cursor = 'pointer';\n }\n\n // Gère 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 setSize(size, styleProps); // Applique la taille\n }\n\n // Gère le padding et 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 // Applique les 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 = Color.hex\n .rgb(Shadows[shadowValue].shadowColor)\n .join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${Shadows[shadowValue].shadowOffset.height}px ${Shadows[shadowValue].shadowOffset.width}px ${Shadows[shadowValue].shadowRadius}px rgba(${shadowColor},${Shadows[shadowValue].shadowOpacity})`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor).join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${props.shadow.shadowOffset.height}px ${props.shadow.shadowOffset.width}px ${props.shadow.shadowRadius}px rgba(${shadowColor},${props.shadow.shadowOpacity})`;\n }\n delete props['shadow'];\n }\n\n // Gère les styles pour des médias spécifiques\n if (props.only) {\n const { only, ...newProps } = props;\n // eslint-disable-next-line prefer-const\n let onlyProps: any = {\n media: {},\n };\n\n only.map((o: string) => {\n if (onlyProps.media[o] == undefined) {\n onlyProps.media[o] = {};\n }\n });\n\n const styleKeys = Object.keys(newProps).filter((key) => isStyleProp(key));\n styleKeys.map((key: string) => {\n only.map((o: string) => {\n props.media[o][key] = newProps[key];\n });\n delete props[key];\n });\n delete props['only'];\n }\n\n // Gère les styles CSS personnalisés\n if (props.css) {\n const { css } = props;\n props = { ...css, props };\n delete props['css'];\n }\n\n // Applique les styles\n Object.keys(props).map((property) => {\n if (property !== 'shadow' && property !== 'size') {\n if (isStyleProp(property) || property == 'on' || property == 'media') {\n if (typeof props[property] === 'object') {\n if (property === 'on') {\n for (const event in props[property]) {\n styleProps['&:' + event] = applyStyle(props[property][event]);\n }\n } else if (property === 'media') {\n for (const screenOrDevices in props[property]) {\n if (\n mediaQueries[screenOrDevices] !== undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps['@media ' + mediaQueries[screenOrDevices]] =\n applyStyle(props[property][screenOrDevices]);\n } else if (devices[screenOrDevices] !== undefined) {\n for (const deviceScreen in devices[screenOrDevices]) {\n if (\n mediaQueries[devices[screenOrDevices][deviceScreen]] !==\n undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps[\n '@media ' +\n mediaQueries[devices[screenOrDevices][deviceScreen]]\n ] = applyStyle(props[property][screenOrDevices]);\n }\n }\n }\n }\n } else {\n styleProps[property] = applyStyle(props[property]);\n }\n } else if (\n typeof props[property] === 'number' &&\n NumberPropsStyle[property] === undefined\n ) {\n styleProps[property] = props[property] + 'px';\n } else if (property.toLowerCase().indexOf('color') !== -1) {\n styleProps[property] = getColor(props[property]);\n } else {\n styleProps[property] = props[property];\n }\n }\n }\n });\n\n return styleProps;\n};\n\n// Fonction pour filtrer les props qui ne sont pas des styles\nexport const getProps = (props: Record<string, any>) => {\n return Object.keys(props).reduce(\n (acc, key) => {\n if (!excludedKeys.has(key) && !isStyleProp(key)) {\n acc[key] = props[key];\n }\n return acc;\n },\n {} as { [key: string]: any }\n );\n};\n\n// Clés à exclure lors de la création du composant stylisé\nconst excludedKeys = new Set([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n]);\n\n// Crée un composant div stylisé, en excluant certaines props\nconst ElementComponent = styled.div.withConfig({\n shouldForwardProp: (prop) => !excludedKeys.has(prop) && !isStyleProp(prop),\n})`\n // Applique les styles dynamiques en utilisant la fonction applyStyle\n ${(props: any) => applyStyle(props)}\n`;\n\n// Classe Element étendant React.PureComponent pour optimiser les performances\nexport class Element extends React.PureComponent<ElementProps & any> {\n render() {\n // eslint-disable-next-line prefer-const\n let { onPress, ...props }: any = this.props;\n if (onPress) {\n props.onClick = onPress;\n }\n // Rendu du composant avec les props\n return <ElementComponent {...props} />;\n }\n}\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'styled-components';\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'>,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'styled-components';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<TextStyleProps, 'children' | 'style' | 'pointerEvents'>,\n CSSProperties,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\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<Partial<HTMLInputElement>, 'width' | 'height' | 'children'>,\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","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","Shadows","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","getValidCSSProperties","allProps","Object","document","body","style","nonStyleAttributes","Set","validProps","filter","prop","test","has","StyleProps","isStyleProp","property","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","defaultKeys","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","defaultScreenConfig","breakpoints","devices","mediaQueries","ResponsiveContext","useResponsiveContext","ResponsiveProvider","NumberProps","NumberPropsStyle","forEach","setSize","newSize","styleProps","applyStyle","props","onClick","cursor","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","join","only","newProps","o","styleKeys","key","media","css","event","screenOrDevices","deviceScreen","toLowerCase","indexOf","getProps","acc","excludedKeys","ElementComponent","styled","div","withConfig","shouldForwardProp","Element","PureComponent","render","onPress","View","memo","Div","SafeArea","Scroll","overflow","Span","as","Image","Text","Form","Input","Button","Typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","isBrowser","window","createElement","getWindowInitialProps","g_initialProps","isSSR","isDev","dev","location","hostname","isProd","includes","isMobile","navigator","userAgent","match","useMount","callback","useEffect","createQuery","keyScreen","set","mql","matchMedia","onChange","matches","addListener","removeListener","useResponsive","screen","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}
1
+ {"version":3,"file":"app-studio.cjs.development.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/utils/shadow.ts","../src/utils/style.ts","../src/providers/Responsive.tsx","../src/components/Element.tsx","../src/components/View.tsx","../src/components/Image.tsx","../src/components/Text.tsx","../src/components/Form.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","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","function getValidCSSProperties() {\n // Use the CSSStyleDeclaration object to get all supported CSS properties\n const allProps = Object.keys(document.body.style);\n\n // Create a Set for non-style attributes that we wish to exclude from the style properties\n // Note: This list is not exhaustive and can be expanded as needed.\n const nonStyleAttributes = new Set([\n 'length',\n 'parentRule',\n 'src',\n // ... add any other known non-style properties here\n ]);\n\n // Filter out non-standard properties, event handlers, and non-style attributes\n const validProps = new Set(\n allProps.filter(\n (prop) =>\n !/^(-moz-|-ms-|-webkit-|-o-)/.test(prop) && // Vendor prefixes\n !/^on[A-Z]/.test(prop) && // Event handlers, e.g., onClick\n !nonStyleAttributes.has(prop) // Specific non-style properties\n )\n );\n\n return validProps;\n}\n\nexport const StyleProps: any = getValidCSSProperties();\n\nexport const isStyleProp = (property: string): boolean => {\n return StyleProps.has(property);\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","import React from 'react'; // Importe React pour créer des composants\nimport Color from 'color-convert'; // Utilisé pour convertir les couleurs\nimport styled, { CSSProperties } from 'styled-components'; // Pour créer des composants stylisés\nimport isPropValid from '@emotion/is-prop-valid';\nimport { useTheme } from '../providers/Theme'; // Hook personnalisé pour utiliser le thème\nimport { Shadows, Shadow } from '../utils/shadow'; // Importe des utilitaires pour les ombres\nimport { isStyleProp } from '../utils/style'; // Fonction pour vérifier si une prop est un style\nimport { useResponsiveContext } from '../providers/Responsive'; // Hook pour le contexte responsive\n\n// Définit les props pour le composant Element\nexport interface ElementProps {\n children?: React.ReactNode; // Les enfants du composant\n size?: number; // Taille de l'élément\n on?: Record<string, CSSProperties>; // Styles pour les événements\n media?: Record<string, CSSProperties>; // Styles pour les médias\n paddingHorizontal?: number | string; // Padding horizontal\n marginHorizontal?: number | string; // Margin horizontal\n paddingVertical?: number | string; // Padding vertical\n marginVertical?: number | string; // Margin vertical\n shadow?: boolean | number | Shadow; // Propriété d'ombre\n only?: string[]; // Propriété pour spécifier des médias spécifiques\n css?: CSSProperties; // Styles CSS personnalisés\n}\n\n// Liste des propriétés numériques\nconst NumberProps = [\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// Stocke si une propriété est numérique\nconst NumberPropsStyle: { [key: string]: boolean } = {};\nNumberProps.forEach((property) => {\n NumberPropsStyle[property] = true;\n});\n\n// Fonction pour définir la taille de l'élément\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Définit la hauteur et la largeur\n};\n\n// Fonction pour appliquer les styles à un composant\nexport const applyStyle = (props: Record<string, any>): CSSProperties & any => {\n const { getColor } = useTheme(); // Utilise le hook pour obtenir les couleurs du thème\n const { mediaQueries, devices } = useResponsiveContext(); // Utilise le contexte responsive\n\n // eslint-disable-next-line prefer-const\n let styleProps: Record<string, any> = {}; // Stocke les styles\n\n // Applique un curseur pointeur si un gestionnaire de clic est présent\n if (props.onClick && styleProps.cursor == undefined) {\n styleProps.cursor = 'pointer';\n }\n\n // Gère 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 setSize(size, styleProps); // Applique la taille\n }\n\n // Gère le padding et 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 // Applique les 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 = Color.hex\n .rgb(Shadows[shadowValue].shadowColor)\n .join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${Shadows[shadowValue].shadowOffset.height}px ${Shadows[shadowValue].shadowOffset.width}px ${Shadows[shadowValue].shadowRadius}px rgba(${shadowColor},${Shadows[shadowValue].shadowOpacity})`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor).join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${props.shadow.shadowOffset.height}px ${props.shadow.shadowOffset.width}px ${props.shadow.shadowRadius}px rgba(${shadowColor},${props.shadow.shadowOpacity})`;\n }\n delete props['shadow'];\n }\n\n // Gère les styles pour des médias spécifiques\n if (props.only) {\n const { only, ...newProps } = props;\n // eslint-disable-next-line prefer-const\n let onlyProps: any = {\n media: {},\n };\n\n only.map((o: string) => {\n if (onlyProps.media[o] == undefined) {\n onlyProps.media[o] = {};\n }\n });\n\n const styleKeys = Object.keys(newProps).filter((key) => isStyleProp(key));\n styleKeys.map((key: string) => {\n only.map((o: string) => {\n props.media[o][key] = newProps[key];\n });\n delete props[key];\n });\n delete props['only'];\n }\n\n // Gère les styles CSS personnalisés\n if (props.css) {\n const { css } = props;\n props = { ...css, props };\n delete props['css'];\n }\n\n // Applique les styles\n Object.keys(props).map((property) => {\n if (property !== 'shadow' && property !== 'size') {\n if (isStyleProp(property) || property == 'on' || property == 'media') {\n if (typeof props[property] === 'object') {\n if (property === 'on') {\n for (const event in props[property]) {\n styleProps['&:' + event] = applyStyle(props[property][event]);\n }\n } else if (property === 'media') {\n for (const screenOrDevices in props[property]) {\n if (\n mediaQueries[screenOrDevices] !== undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps['@media ' + mediaQueries[screenOrDevices]] =\n applyStyle(props[property][screenOrDevices]);\n } else if (devices[screenOrDevices] !== undefined) {\n for (const deviceScreen in devices[screenOrDevices]) {\n if (\n mediaQueries[devices[screenOrDevices][deviceScreen]] !==\n undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps[\n '@media ' +\n mediaQueries[devices[screenOrDevices][deviceScreen]]\n ] = applyStyle(props[property][screenOrDevices]);\n }\n }\n }\n }\n } else {\n styleProps[property] = applyStyle(props[property]);\n }\n } else if (\n typeof props[property] === 'number' &&\n NumberPropsStyle[property] === undefined\n ) {\n styleProps[property] = props[property] + 'px';\n } else if (property.toLowerCase().indexOf('color') !== -1) {\n styleProps[property] = getColor(props[property]);\n } else {\n styleProps[property] = props[property];\n }\n }\n }\n });\n\n return styleProps;\n};\n\n// Fonction pour filtrer les props qui ne sont pas des styles\nexport const getProps = (props: Record<string, any>) => {\n return Object.keys(props).reduce(\n (acc, key) => {\n if (!excludedKeys.has(key) && !isStyleProp(key)) {\n acc[key] = props[key];\n }\n return acc;\n },\n {} as { [key: string]: any }\n );\n};\n\n// Clés à exclure lors de la création du composant stylisé\nconst excludedKeys = new Set([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n]);\n\n// Crée un composant div stylisé, en excluant certaines props\nconst ElementComponent = styled.div.withConfig({\n shouldForwardProp: (prop) => isPropValid(prop),\n})`\n // Applique les styles dynamiques en utilisant la fonction applyStyle\n ${(props: any) => applyStyle(props)}\n`;\n\n// Classe Element étendant React.PureComponent pour optimiser les performances\nexport class Element extends React.PureComponent<ElementProps & any> {\n render() {\n // eslint-disable-next-line prefer-const\n let { onPress, ...props }: any = this.props;\n if (onPress) {\n props.onClick = onPress;\n }\n // Rendu du composant avec les props\n return <ElementComponent {...props} />;\n }\n}\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'styled-components';\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'>,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'styled-components';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<TextStyleProps, 'children' | 'style' | 'pointerEvents'>,\n CSSProperties,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\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<Partial<HTMLInputElement>, 'width' | 'height' | 'children'>,\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","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","Shadows","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","getValidCSSProperties","allProps","Object","document","body","style","nonStyleAttributes","Set","validProps","filter","prop","test","has","StyleProps","isStyleProp","property","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","defaultKeys","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","defaultScreenConfig","breakpoints","devices","mediaQueries","ResponsiveContext","useResponsiveContext","ResponsiveProvider","NumberProps","NumberPropsStyle","forEach","setSize","newSize","styleProps","applyStyle","props","onClick","cursor","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","join","only","newProps","o","styleKeys","key","media","css","event","screenOrDevices","deviceScreen","toLowerCase","indexOf","getProps","acc","excludedKeys","ElementComponent","styled","div","withConfig","shouldForwardProp","isPropValid","Element","PureComponent","render","onPress","View","memo","Div","SafeArea","Scroll","overflow","Span","as","Image","Text","Form","Input","Button","Typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","isBrowser","window","createElement","getWindowInitialProps","g_initialProps","isSSR","isDev","dev","location","hostname","isProd","includes","isMobile","navigator","userAgent","match","useMount","callback","useEffect","createQuery","keyScreen","set","mql","matchMedia","onChange","matches","addListener","removeListener","useResponsive","screen","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":";;;;;;;;;;;;MAkBaA,OAAO,GAAiB;EACnCC,KAAK,EAAE;IACL,EAAE,EAAE,2BAA2B;IAC/B,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE;GACN;EAEDC,KAAK,EAAE;IACL,EAAE,EAAE,qBAAqB;IACzB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,OAAO,EAAE;IACP,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,MAAM,EAAE;IACN,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,MAAM,EAAE;IACN,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,MAAM,EAAE;IACN,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,SAAS,EAAE;IACT,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,OAAO,EAAE;IACP,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,KAAK,EAAE;IACL,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,MAAM,EAAE;IACN,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,KAAK,EAAE;IACL,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,MAAM,EAAE;IACN,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,GAAG,EAAE;IACH,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,QAAQ,EAAE;IACR,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,QAAQ,EAAE;IACR,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,IAAI,EAAE;IACJ,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,QAAQ,EAAE;IACR,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;GACN;EACDC,QAAQ,EAAE;IACR,EAAE,EAAE,SAAS;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE;;;;MCrTIC,gBAAgB,GAAgB;EAC3CC,OAAO,EAAE,aAAa;EACtBC,SAAS,EAAE,YAAY;EACvBC,OAAO,EAAE,iBAAiB;EAC1BC,KAAK,EAAE,eAAe;EACtBC,OAAO,EAAE,kBAAkB;EAC3BC,QAAQ,EAAE,gBAAgB;EAC1BC,OAAO,EAAE;CACV;AAED,MAAaC,aAAa,GAAgB;EACxCjC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,SAAS;EAChBiB,GAAG,EAAE,SAAS;EACdL,KAAK,EAAE,SAAS;EAChBL,IAAI,EAAE,SAAS;EACfO,MAAM,EAAE,SAAS;EACjBL,IAAI,EAAE,SAAS;EACfwB,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACflB,MAAM,EAAE,SAAS;EACjBmB,KAAK,EAAE,SAAS;EAChB/B,MAAM,EAAE,SAAS;EACjBF,IAAI,EAAE,SAAS;EACfW,IAAI,EAAE,SAAS;EACfH,IAAI,EAAE,SAAS;EACf0B,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,SAAS;EAChBC,MAAM,EAAE,SAAS;EACjBC,IAAI,EAAE,SAAS;EACfC,MAAM,EAAE,SAAS;EACjBlC,MAAM,EAAE,SAAS;EACjBD,MAAM,EAAE,SAAS;EACjBoC,KAAK,EAAE,SAAS;EAChBC,SAAS,EAAE,SAAS;EACpBC,KAAK,EAAE,SAAS;EAChBC,SAAS,EAAE,SAAS;EACpBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,SAAS,EAAE,SAAS;EACpBC,MAAM,EAAE;CACT;AAED,MAAaC,YAAY,gBAAGC,mBAAa,CAUtC;EACDC,QAAQ,EAAGC,IAAY;IACrB,OAAOA,IAAI;GACZ;EACDC,MAAM,EAAE;IACNC,IAAI,EAAEtB,aAAa;IACnBlC,OAAO,EAAEyD;GACV;EACDC,KAAK,EAAE;IAAEF,IAAI,EAAE9B,gBAAgB;IAAEiC,UAAU,EAAE;;CAC9C,CAAC;AAEF,MAAaC,QAAQ,GAAGA,MAAMC,gBAAU,CAACV,YAAY,CAAC;AAEtD,MAAaW,aAAa,GAAGC,IAAA;MAAC;IAC5BL,KAAK,GAAG;MACNF,IAAI,EAAE9B,gBAAgB;MACtBiC,UAAU,EAAE;KACb;IACDJ,MAAM,GAAG;MACPC,IAAI,EAAEtB,aAAa;MACnBlC,OAAO,EAAEyD;KACV;IACDO;GAWD,GAAAD,IAAA;EACC,MAAMV,QAAQ,GAAIC,IAAY;IAC5B,IAAIA,IAAI,KAAK,aAAa,EAAE,OAAOA,IAAI;IAEvC,IAAI;;MAEF,IAAIA,IAAI,CAACW,UAAU,CAAC,QAAQ,CAAC,EAAE;QAC7B,MAAMC,IAAI,GAAGZ,IAAI,CAACa,KAAK,CAAC,GAAG,CAAC;QAC5B,IACED,IAAI,CAAC,CAAC,CAAC,KAAKE,SAAS,IACrB,OAAOV,KAAK,CAACC,UAAU,CAACO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,IAC5CR,KAAK,CAACC,UAAU,CAACO,IAAI,CAAC,CAAC,CAAC,CAAC,CAACA,IAAI,CAAC,CAAC,CAAC,CAAC,KAAKE,SAAS,EAChD;UACA,OAAOf,QAAQ,CAACK,KAAK,CAACC,UAAU,CAACO,IAAI,CAAC,CAAC,CAAC,CAAC,CAACA,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD,MAAM,IAAIR,KAAK,CAACF,IAAI,CAACU,IAAI,CAAC,CAAC,CAAC,CAAC,IAAIR,KAAK,CAACF,IAAI,CAACU,IAAI,CAAC,CAAC,CAAC,CAAC,KAAKE,SAAS,EAAE;UACnE,OAAOf,QAAQ,CAACK,KAAK,CAACF,IAAI,CAACU,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACrC,MAAM;UACLG,OAAO,CAACC,GAAG,CAAC,QAAQ,GAAGhB,IAAI,GAAG,YAAY,CAAC;;;;WAI1C,IAAIA,IAAI,CAACW,UAAU,CAAC,QAAQ,CAAC,EAAE;QAClC,MAAMC,IAAI,GAAGZ,IAAI,CAACa,KAAK,CAAC,GAAG,CAAC,CAAC;QAE7B,IAAIZ,MAAM,CAACvD,OAAO,IAAIuD,MAAM,CAACvD,OAAO,CAACkE,IAAI,CAAC,CAAC,CAAC,CAAC,CAACA,IAAI,CAAC,CAAC,CAAC,CAAC,KAAKE,SAAS,EAAE;UACpE,OAAOb,MAAM,CAACvD,OAAO,CAACkE,IAAI,CAAC,CAAC,CAAC,CAAC,CAACA,IAAI,CAAC,CAAC,CAAC,CAAC;SACxC,MAAM,IACLX,MAAM,CAACvD,OAAO,IACduD,MAAM,CAACvD,OAAO,CAACkE,IAAI,CAAC,CAAC,CAAC,CAAC,CAACK,QAAQ,CAACL,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAKE,SAAS,EACxD;UACA,OAAOb,MAAM,CAACvD,OAAO,CAACkE,IAAI,CAAC,CAAC,CAAC,CAAC,CAACK,QAAQ,CAACL,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SAClD,MAAM,IAAIX,MAAM,CAACC,IAAI,IAAID,MAAM,CAACC,IAAI,CAACU,IAAI,CAAC,CAAC,CAAC,CAAC,KAAKE,SAAS,EAAE;UAC5D,OAAOb,MAAM,CAACC,IAAI,CAACU,IAAI,CAAC,CAAC,CAAC,CAAC;SAC5B,MAAM;UACLG,OAAO,CAACC,GAAG,CAAC,QAAQ,GAAGhB,IAAI,GAAG,YAAY,CAAC;;;KAGhD,CAAC,OAAOkB,CAAC,EAAE;IAEZ,OAAOlB,IAAI;GACZ;EAED,oBACEmB,6BAACtB,YAAY,CAACuB,QAAQ;IACpBC,KAAK,EAAE;MACLtB,QAAQ;MACRK,KAAK,EAAE;QACLF,IAAI,EAAE;UACJ,GAAG9B,gBAAgB;UACnB,GAAGgC,KAAK,CAACF;SACV;QACDG,UAAU,EAAE;UACV,GAAGD,KAAK,CAACC;;OAEZ;MACDJ,MAAM,EAAE;QACNC,IAAI,EAAE;UACJ,GAAGtB,aAAa;UAChB,GAAGqB,MAAM,CAACC;SACX;QACDxD,OAAO,EAAE;UACP,GAAGyD,OAAc;UACjB,GAAGF,MAAM,CAACvD;;;;KAKfgE,QAAQ,CACa;AAE5B,CAAC;;MC3JYY,OAAO,GAA2B;EAC7C,CAAC,EAAE;IACDC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;GACf;EACD,CAAC,EAAE;IACDL,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE;KACT;IACDC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;;CAEjB;;ACrGD,SAASC,qBAAqBA;;EAE5B,MAAMC,QAAQ,GAAGC,MAAM,CAACnB,IAAI,CAACoB,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC;;;EAIjD,MAAMC,kBAAkB,GAAG,IAAIC,GAAG,CAAC,CACjC,QAAQ,EACR,YAAY,EACZ,KAAK,CAEN,CAAC;;EAGF,MAAMC,UAAU,GAAG,IAAID,GAAG,CACxBN,QAAQ,CAACQ,MAAM,CACZC,IAAI,IACH,CAAC,4BAA4B,CAACC,IAAI,CAACD,IAAI,CAAC;;EACxC,CAAC,UAAU,CAACC,IAAI,CAACD,IAAI,CAAC;;EACtB,CAACJ,kBAAkB,CAACM,GAAG,CAACF,IAAI,CAAC;GAChC,CACF;;EAED,OAAOF,UAAU;AACnB;AAEA,AAAO,MAAMK,UAAU,gBAAQb,qBAAqB,EAAE;AAEtD,AAAO,MAAMc,WAAW,GAAIC,QAAgB;EAC1C,OAAOF,UAAU,CAACD,GAAG,CAACG,QAAQ,CAAC;AACjC,CAAC;;ACtBD,MAAMC,wBAAwB,GAAqB;EACjDC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,GAAG;EACPC,EAAE,EAAE,GAAG;EACPC,EAAE,EAAE,IAAI;EACRC,EAAE,EAAE;CACL;AAID,MAAMC,mBAAmB,GAAiB;EACxCC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;EACpBC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;EACpBC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI;CACrB;AAUD,MAAMC,eAAe,GAAIC,CAAmB;EAC1C,MAAMC,WAAW,GAAG1B,MAAM,CAACnB,IAAI,CAAC4C,CAAC,CAAC;EAElC,MAAME,eAAe,GAAGD,WAAW,CAChCE,GAAG,CAAEC,UAAU;IACd,MAAMvC,KAAK,GAAoB;MAC7BuC,UAAU,EAAEA,UAA4B;MACxCC,GAAG,EAAEL,CAAC,CAACI,UAAU,CAAC;MAClBE,GAAG,EAAE;KACN;IAED,OAAOzC,KAAK;GACb,CAAC,CACD0C,IAAI,CAAC,CAACC,CAAC,EAAER,CAAC,KAAKQ,CAAC,CAACH,GAAG,GAAGL,CAAC,CAACK,GAAG,CAAC;EAEhCH,eAAe,CAACO,MAAM,CAAC,CAACD,CAAC,EAAER,CAAC;IAC1B,IAAIA,CAAC,EAAEQ,CAAC,CAACF,GAAG,GAAGN,CAAC,CAACK,GAAG;IAEpB,OAAOL,CAAC;GACT,CAAC;EAEF,MAAMU,KAAK,GAA0D,EAAE;EACvER,eAAe,CAACC,GAAG,CAAEQ,UAAU;IAC7BD,KAAK,CAACC,UAAU,CAACP,UAAU,CAAC,kBAC1BO,UAAU,CAACN,GAAG,IAAIM,UAAU,CAACN,GAAG,IAAI,CAAC,GACjC,iBAAiB,GAAGM,UAAU,CAACN,GAAG,GAAG,KAAK,GAC1C,MAEJM,UAAU,CAACL,GAAG,IAAIK,UAAU,CAACL,GAAG,IAAI,CAAC,GACjC,iBAAiB,GAAGK,UAAU,CAACL,GAAG,GAAG,KAAK,GAC1C,IACJ;GACH,CAAC;EAEF,OAAOI,KAAK;AACd,CAAC;AAED,MAAME,mBAAmB,GAAiB;EACxCC,WAAW,EAAExB,wBAAwB;EACrCyB,OAAO,EAAEnB,mBAAmB;EAC5BoB,YAAY,eAAEhB,eAAe,CAACV,wBAAwB;CACvD;AAED,MAAa2B,iBAAiB,gBAC5B1E,mBAAa,CAAesE,mBAAmB,CAAC;AAElD,MAAaK,oBAAoB,GAAGA,MAAMlE,gBAAU,CAACiE,iBAAiB,CAAC;AAEvE,MAAaE,kBAAkB,GAAGjE,IAAA;MAAC;IACjC4D,WAAW,GAAGxB,wBAAwB;IACtCyB,OAAO,GAAGnB,mBAAmB;IAC7BzC;GAMD,GAAAD,IAAA;EACC,oBACEU,6BAACqD,iBAAiB,CAACpD,QAAQ;IACzBC,KAAK,EAAE;MACLgD,WAAW;MACXC,OAAO;MACPC,YAAY,EAAEhB,eAAe,CAACc,WAAW;;KAG1C3D,QAAQ,CACkB;AAEjC,CAAC;;AC7ED;AACA,MAAMiE,WAAW,GAAG,CAClB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,MAAM,EACN,UAAU,EACV,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,aAAa,EACb,eAAe,EACf,cAAc,EACd,OAAO,EACP,SAAS,EACT,KAAK,EACL,KAAK,EACL,KAAK,CACN;AAED;AACA,MAAMC,gBAAgB,GAA+B,EAAE;AACvDD,WAAW,CAACE,OAAO,CAAEjC,QAAQ;EAC3BgC,gBAAgB,CAAChC,QAAQ,CAAC,GAAG,IAAI;AACnC,CAAC,CAAC;AAEF;AACA,MAAakC,OAAO,GAAGA,CACrBC,OAAwB,EACxBC,UAA+B;EAE/BA,UAAU,CAACtD,MAAM,GAAGsD,UAAU,CAACvD,KAAK,GAAGsD,OAAO,CAAC;AACjD,CAAC;AAED;AACA,MAAaE,UAAU,GAAIC,KAA0B;EACnD,MAAM;IAAEnF;GAAU,GAAGO,QAAQ,EAAE,CAAC;EAChC,MAAM;IAAEiE,YAAY;IAAED;GAAS,GAAGG,oBAAoB,EAAE,CAAC;;EAGzD,IAAIO,UAAU,GAAwB,EAAE,CAAC;;EAGzC,IAAIE,KAAK,CAACC,OAAO,IAAIH,UAAU,CAACI,MAAM,IAAItE,SAAS,EAAE;IACnDkE,UAAU,CAACI,MAAM,GAAG,SAAS;;;EAI/B,MAAMC,IAAI,GACRH,KAAK,CAACxD,MAAM,KAAKZ,SAAS,IAC1BoE,KAAK,CAACzD,KAAK,KAAKX,SAAS,IACzBoE,KAAK,CAACxD,MAAM,KAAKwD,KAAK,CAACzD,KAAK,GACxByD,KAAK,CAACxD,MAAM,GACZwD,KAAK,CAACG,IAAI,GACVH,KAAK,CAACG,IAAI,GACV,IAAI;EAEV,IAAIA,IAAI,EAAE;IACRP,OAAO,CAACO,IAAI,EAAEL,UAAU,CAAC,CAAC;;;EAI5B,IAAIE,KAAK,CAACI,iBAAiB,EAAE;IAC3BN,UAAU,CAACO,WAAW,GAAGL,KAAK,CAACI,iBAAiB;IAChDN,UAAU,CAACQ,YAAY,GAAGN,KAAK,CAACI,iBAAiB;;EAGnD,IAAIJ,KAAK,CAACO,gBAAgB,EAAE;IAC1BT,UAAU,CAACU,UAAU,GAAGR,KAAK,CAACO,gBAAgB;IAC9CT,UAAU,CAACW,WAAW,GAAGT,KAAK,CAACO,gBAAgB;;EAGjD,IAAIP,KAAK,CAACU,eAAe,EAAE;IACzBZ,UAAU,CAACa,UAAU,GAAGX,KAAK,CAACU,eAAe;IAC7CZ,UAAU,CAACc,aAAa,GAAGZ,KAAK,CAACU,eAAe;;EAGlD,IAAIV,KAAK,CAACa,cAAc,EAAE;IACxBf,UAAU,CAACgB,SAAS,GAAGd,KAAK,CAACa,cAAc;IAC3Cf,UAAU,CAACiB,YAAY,GAAGf,KAAK,CAACa,cAAc;;;EAIhD,IAAIb,KAAK,CAACgB,MAAM,EAAE;IAChB,IAAI,OAAOhB,KAAK,CAACgB,MAAM,KAAK,QAAQ,IAAI,OAAOhB,KAAK,CAACgB,MAAM,KAAK,SAAS,EAAE;MACzE,MAAMC,WAAW,GACf,OAAOjB,KAAK,CAACgB,MAAM,KAAK,QAAQ,IAAI5E,OAAO,CAAC4D,KAAK,CAACgB,MAAM,CAAC,KAAKpF,SAAS,GACnEoE,KAAK,CAACgB,MAAM,GACZ,CAAC;MAEP,IAAI5E,OAAO,CAAC6E,WAAW,CAAC,EAAE;QACxB,MAAM5E,WAAW,GAAG6E,KAAK,CAACC,GAAG,CAC1BC,GAAG,CAAChF,OAAO,CAAC6E,WAAW,CAAC,CAAC5E,WAAW,CAAC,CACrCgF,IAAI,CAAC,GAAG,CAAC;QAEZvB,UAAU,CACR,WAAW,CACZ,MAAM1D,OAAO,CAAC6E,WAAW,CAAC,CAAC3E,YAAY,CAACE,YAAYJ,OAAO,CAAC6E,WAAW,CAAC,CAAC3E,YAAY,CAACC,WAAWH,OAAO,CAAC6E,WAAW,CAAC,CAACvE,uBAAuBL,eAAeD,OAAO,CAAC6E,WAAW,CAAC,CAACxE,gBAAgB;;KAErM,MAAM;MACL,MAAMJ,WAAW,GAAG6E,KAAK,CAACC,GAAG,CAACC,GAAG,CAACpB,KAAK,CAACgB,MAAM,CAAC3E,WAAW,CAAC,CAACgF,IAAI,CAAC,GAAG,CAAC;MAErEvB,UAAU,CACR,WAAW,CACZ,MAAME,KAAK,CAACgB,MAAM,CAAC1E,YAAY,CAACE,YAAYwD,KAAK,CAACgB,MAAM,CAAC1E,YAAY,CAACC,WAAWyD,KAAK,CAACgB,MAAM,CAACtE,uBAAuBL,eAAe2D,KAAK,CAACgB,MAAM,CAACvE,gBAAgB;;IAEpK,OAAOuD,KAAK,CAAC,QAAQ,CAAC;;;EAIxB,IAAIA,KAAK,CAACsB,IAAI,EAAE;IACd,MAAM;MAAEA,IAAI;MAAE,GAAGC;KAAU,GAAGvB,KAAK;IAMnCsB,IAAI,CAAC7C,GAAG,CAAE+C,CAAS;KAIlB,CAAC;IAEF,MAAMC,SAAS,GAAG5E,MAAM,CAACnB,IAAI,CAAC6F,QAAQ,CAAC,CAACnE,MAAM,CAAEsE,GAAG,IAAKjE,WAAW,CAACiE,GAAG,CAAC,CAAC;IACzED,SAAS,CAAChD,GAAG,CAAEiD,GAAW;MACxBJ,IAAI,CAAC7C,GAAG,CAAE+C,CAAS;QACjBxB,KAAK,CAAC2B,KAAK,CAACH,CAAC,CAAC,CAACE,GAAG,CAAC,GAAGH,QAAQ,CAACG,GAAG,CAAC;OACpC,CAAC;MACF,OAAO1B,KAAK,CAAC0B,GAAG,CAAC;KAClB,CAAC;IACF,OAAO1B,KAAK,CAAC,MAAM,CAAC;;;EAItB,IAAIA,KAAK,CAAC4B,GAAG,EAAE;IACb,MAAM;MAAEA;KAAK,GAAG5B,KAAK;IACrBA,KAAK,GAAG;MAAE,GAAG4B,GAAG;MAAE5B;KAAO;IACzB,OAAOA,KAAK,CAAC,KAAK,CAAC;;;EAIrBnD,MAAM,CAACnB,IAAI,CAACsE,KAAK,CAAC,CAACvB,GAAG,CAAEf,QAAQ;IAC9B,IAAIA,QAAQ,KAAK,QAAQ,IAAIA,QAAQ,KAAK,MAAM,EAAE;MAChD,IAAID,WAAW,CAACC,QAAQ,CAAC,IAAIA,QAAQ,IAAI,IAAI,IAAIA,QAAQ,IAAI,OAAO,EAAE;QACpE,IAAI,OAAOsC,KAAK,CAACtC,QAAQ,CAAC,KAAK,QAAQ,EAAE;UACvC,IAAIA,QAAQ,KAAK,IAAI,EAAE;YACrB,KAAK,MAAMmE,KAAK,IAAI7B,KAAK,CAACtC,QAAQ,CAAC,EAAE;cACnCoC,UAAU,CAAC,IAAI,GAAG+B,KAAK,CAAC,GAAG9B,UAAU,CAACC,KAAK,CAACtC,QAAQ,CAAC,CAACmE,KAAK,CAAC,CAAC;;WAEhE,MAAM,IAAInE,QAAQ,KAAK,OAAO,EAAE;YAC/B,KAAK,MAAMoE,eAAe,IAAI9B,KAAK,CAACtC,QAAQ,CAAC,EAAE;cAC7C,IACE2B,YAAY,CAACyC,eAAe,CAAC,KAAKlG,SAAS,IAC3CoE,KAAK,CAACtC,QAAQ,CAAC,CAACoE,eAAe,CAAC,KAAKlG,SAAS,EAC9C;gBACAkE,UAAU,CAAC,SAAS,GAAGT,YAAY,CAACyC,eAAe,CAAC,CAAC,GACnD/B,UAAU,CAACC,KAAK,CAACtC,QAAQ,CAAC,CAACoE,eAAe,CAAC,CAAC;eAC/C,MAAM,IAAI1C,OAAO,CAAC0C,eAAe,CAAC,KAAKlG,SAAS,EAAE;gBACjD,KAAK,MAAMmG,YAAY,IAAI3C,OAAO,CAAC0C,eAAe,CAAC,EAAE;kBACnD,IACEzC,YAAY,CAACD,OAAO,CAAC0C,eAAe,CAAC,CAACC,YAAY,CAAC,CAAC,KAClDnG,SAAS,IACXoE,KAAK,CAACtC,QAAQ,CAAC,CAACoE,eAAe,CAAC,KAAKlG,SAAS,EAC9C;oBACAkE,UAAU,CACR,SAAS,GACPT,YAAY,CAACD,OAAO,CAAC0C,eAAe,CAAC,CAACC,YAAY,CAAC,CAAC,CACvD,GAAGhC,UAAU,CAACC,KAAK,CAACtC,QAAQ,CAAC,CAACoE,eAAe,CAAC,CAAC;;;;;WAKzD,MAAM;YACLhC,UAAU,CAACpC,QAAQ,CAAC,GAAGqC,UAAU,CAACC,KAAK,CAACtC,QAAQ,CAAC,CAAC;;SAErD,MAAM,IACL,OAAOsC,KAAK,CAACtC,QAAQ,CAAC,KAAK,QAAQ,IACnCgC,gBAAgB,CAAChC,QAAQ,CAAC,KAAK9B,SAAS,EACxC;UACAkE,UAAU,CAACpC,QAAQ,CAAC,GAAGsC,KAAK,CAACtC,QAAQ,CAAC,GAAG,IAAI;SAC9C,MAAM,IAAIA,QAAQ,CAACsE,WAAW,EAAE,CAACC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;UACzDnC,UAAU,CAACpC,QAAQ,CAAC,GAAG7C,QAAQ,CAACmF,KAAK,CAACtC,QAAQ,CAAC,CAAC;SACjD,MAAM;UACLoC,UAAU,CAACpC,QAAQ,CAAC,GAAGsC,KAAK,CAACtC,QAAQ,CAAC;;;;GAI7C,CAAC;EAEF,OAAOoC,UAAU;AACnB,CAAC;AAED;AACA,MAAaoC,QAAQ,GAAIlC,KAA0B;EACjD,OAAOnD,MAAM,CAACnB,IAAI,CAACsE,KAAK,CAAC,CAACjB,MAAM,CAC9B,CAACoD,GAAG,EAAET,GAAG;IACP,IAAI,CAACU,YAAY,CAAC7E,GAAG,CAACmE,GAAG,CAAC,IAAI,CAACjE,WAAW,CAACiE,GAAG,CAAC,EAAE;MAC/CS,GAAG,CAACT,GAAG,CAAC,GAAG1B,KAAK,CAAC0B,GAAG,CAAC;;IAEvB,OAAOS,GAAG;GACX,EACD,EAA4B,CAC7B;AACH,CAAC;AAED;AACA,MAAMC,YAAY,gBAAG,IAAIlF,GAAG,CAAC,CAC3B,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,CACjB,CAAC;AAEF;AACA,MAAMmF,gBAAgB,gBAAGC,MAAM,CAACC,GAAG,CAACC,UAAU,CAAC;EAC7CC,iBAAiB,EAAGpF,IAAI,IAAKqF,WAAW,CAACrF,IAAI;CAC9C;;IAEI2C,KAAU,IAAKD,UAAU,CAACC,KAAK;CACnC;AAED;AACA,MAAa2C,OAAQ,SAAQ1G,cAAK,CAAC2G,aAAiC;EAClEC,MAAMA;;IAEJ,IAAI;MAAEC,OAAO;MAAE,GAAG9C;KAAO,GAAQ,IAAI,CAACA,KAAK;IAC3C,IAAI8C,OAAO,EAAE;MACX9C,KAAK,CAACC,OAAO,GAAG6C,OAAO;;;IAGzB,oBAAO7G,6BAACoG,gBAAgB,oBAAKrC,KAAK,EAAI;;;;MC5O7B+C,IAAI,gBAAwB9G,cAAK,CAAC+G,IAAI,CAAEhD,KAAK,iBACxD/D,6BAAC0G,OAAO,oBAAK3C,KAAK,EACnB,CAAC;AAEF,MAAaiD,GAAG,GAAGF,IAAI;AAEvB,MAAaG,QAAQ,GAAGH,IAAI;AAE5B,MAAaI,MAAM,gBAA0BlH,cAAK,CAAC+G,IAAI,CAAEhD,KAAK,iBAC5D/D,6BAAC8G,IAAI;EAACK,QAAQ,EAAE;GAAYpD,KAAK,EAClC,CAAC;AAEF,MAAaqD,IAAI,gBAAwBpH,cAAK,CAAC+G,IAAI,CAAEhD,KAAK,iBACxD/D,6BAAC0G,OAAO,oBAAK3C,KAAK;EAAEsD,EAAE,EAAC;GACxB,CAAC;;MCjBWC,KAAK,gBAAGtH,cAAK,CAAC+G,IAAI,CAAEhD,KAAiB,iBAChD/D,6BAAC0G,OAAO,oBAAK3C,KAAK;EAAEsD,EAAE,EAAC;GACxB,CAAC;;MCVWE,IAAI,gBAAGvH,cAAK,CAAC+G,IAAI,CAAEhD,KAAgB;EAC9C,oBAAO/D,6BAAC0G,OAAO,oBAAK3C,KAAK,EAAI;AAC/B,CAAC,CAAC;;ACuCF;AACA,MAAayD,IAAI,gBAAGxH,cAAK,CAAC+G,IAAI,CAAEhD,KAAgB,iBAC9C/D,6BAAC0G,OAAO,oBAAK3C,KAAK;EAAEsD,EAAE,EAAC;GACxB,CAAC;AAEF,MAAaI,KAAK,gBAAGzH,cAAK,CAAC+G,IAAI,CAAEhD,KAAiB,iBAChD/D,6BAAC0G,OAAO,oBAAK3C,KAAK;EAAEsD,EAAE,EAAC;GACxB,CAAC;AAEF,MAAaK,MAAM,gBAAG1H,cAAK,CAAC+G,IAAI,CAAEhD,KAAkB,iBAClD/D,6BAAC0G,OAAO,oBAAK3C,KAAK;EAAEsD,EAAE,EAAC;GACxB,CAAC;;MChEWM,UAAU,GAAG;EACxBC,cAAc,EAAE;IACdC,OAAO,EAAE,CAAC,IAAI;IACdC,KAAK,EAAE,CAAC,GAAG;IACXC,MAAM,EAAE,CAAC;IACTC,IAAI,EAAE,GAAG;IACTC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE;GACT;EACDC,WAAW,EAAE;IACXxG,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACN,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE;GACR;EACDqG,WAAW,EAAE;IACXC,QAAQ,EAAE,GAAG;IACbC,IAAI,EAAE,GAAG;IACTC,KAAK,EAAE,GAAG;IACVR,MAAM,EAAE,GAAG;IACXS,MAAM,EAAE,GAAG;IACXC,QAAQ,EAAE,GAAG;IACbC,IAAI,EAAE,GAAG;IACTC,SAAS,EAAE,GAAG;IACdlN,KAAK,EAAE;GACR;EACDmN,SAAS,EAAE;IACTjH,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACNC,EAAE,EAAE,EAAE;IACN,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE;;CAEV;;AC5CD;;;AAGA,MAAa8G,SAAS,GAAGA,MACvB,OAAOC,MAAM,KAAK,WAAW,IAC7B,OAAOA,MAAM,CAACjI,QAAQ,KAAK,WAAW,IACtC,OAAOiI,MAAM,CAACjI,QAAQ,CAACkI,aAAa,KAAK,WAAW;AAEtD;;;AAGA,MAAaC,qBAAqB,GAAGA,MACnCH,SAAS,EAAE,GAAIC,MAAc,CAACG,cAAc,GAAGtJ,SAAS;AAE1D;;;AAGA,MAAauJ,KAAK,GAAG,eAACL,SAAS,EAAE;AAEjC,SAAgBM,KAAKA;EACnB,IAAIC,GAAG,GAAG,KAAK;EAEf,IAAIP,SAAS,EAAE,EAAE;IACfO,GAAG,GAAG,EAAEN,MAAM,CAACO,QAAQ,CAACC,QAAQ,CAACtD,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;;EAE/D,OAAOoD,GAAG;AACZ;AAEA,SAAgBG,MAAMA;EACpB,IAAIV,SAAS,EAAE,EAAE;IACf,IAAIC,MAAM,IAAIA,MAAM,CAACO,QAAQ,IAAIP,MAAM,CAACO,QAAQ,CAACC,QAAQ,EAAE;MACzD,OACER,MAAM,CAACO,QAAQ,CAACC,QAAQ,CAACE,QAAQ,CAAC,WAAW,CAAC,IAC9CV,MAAM,CAACO,QAAQ,CAACC,QAAQ,CAACE,QAAQ,CAAC,SAAS,CAAC;;;EAIlD,OAAO,KAAK;AACd;AAEA,SAAgBC,QAAQA;EACtB,OAAOC,SAAS,CAACC,SAAS,CAACC,KAAK,CAAC,iCAAiC,CAAC;AACrE;;MCzCaC,QAAQ,GAAIC,QAAoB;EAC3CC,eAAS,CAAC;IACRD,QAAQ,EAAE;GACX,EAAE,EAAE,CAAC;AACR,CAAC;;MCGYE,WAAW,GAAGA,CAACC,SAAiB,EAAElH,KAAa,EAAEmH,GAAQ;EACpE,MAAMC,GAAG,GAAGrB,MAAM,CAACsB,UAAU,CAACrH,KAAK,CAAC;EACpC,MAAMsH,QAAQ,GAAGA;IACf,IAAI,CAAC,CAACF,GAAG,CAACG,OAAO,EAAE;MACjBJ,GAAG,CAACD,SAAS,CAAC;;GAEjB;EAEDE,GAAG,CAACI,WAAW,CAACF,QAAQ,CAAC;EACzB,IAAI,CAAC,CAACF,GAAG,CAACG,OAAO,EAAE;IACjBJ,GAAG,CAACD,SAAS,CAAC;;EAGhB,OAAO;IACLE,GAAG,CAACK,cAAc,CAACH,QAAQ,CAAC;GAC7B;AACH,CAAC;AAED,MAAaI,aAAa,GAAGA;EAC3B,MAAM;IAAEvH,WAAW;IAAEC,OAAO;IAAEC;GAAc,GAAGE,oBAAoB,EAAE;EACrE,MAAM,CAACoH,MAAM,EAAEC,SAAS,CAAC,GAAGC,cAAQ,CAAC,IAAI,CAAC;EAC1C,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGF,cAAQ,CAC5C,WAAgC,CACjC;EAEDf,QAAQ,CAAC;IACP,KAAK,MAAMkB,UAAU,IAAI3H,YAAY,EAAE;MACrC4G,WAAW,CAACe,UAAU,EAAE3H,YAAY,CAAC2H,UAAU,CAAC,EAAEJ,SAAS,CAAC;;IAE9DX,WAAW,CACT,WAAW,EACX,0CAA0C,EAC1Cc,cAAc,CACf;IACDd,WAAW,CACT,UAAU,EACV,yCAAyC,EACzCc,cAAc,CACf;GACF,CAAC;EAEF,MAAME,EAAE,GAAIC,MAA4B;IACtC,OAAO9H,OAAO,CAAC8H,MAAM,CAAC,CAACzB,QAAQ,CAACkB,MAAM,CAAC;GACxC;EAED,MAAMQ,EAAE,GAAIC,CAA2B;IACrC,OAAOA,CAAC,IAAIT,MAAM;GACnB;EAED,OAAO;IACLxH,WAAW;IACXC,OAAO;IACP0H,WAAW;IACXH,MAAM;IACNM,EAAE;IACFE;GACD;AACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var a=require("react"),o=e(a),t=e(require("color-convert")),i=e(require("styled-components"));const s={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"}},d={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"},r={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"},n=a.createContext({getColor:e=>e,colors:{main:r,palette:s},theme:{main:d,components:{}}}),f=()=>a.useContext(n),c={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}};function l(){const e=Object.keys(document.body.style),a=new Set(["length","parentRule","src"]);return new Set(e.filter(e=>!/^(-moz-|-ms-|-webkit-|-o-)/.test(e)&&!/^on[A-Z]/.test(e)&&!a.has(e)))}const h=l(),p=e=>h.has(e),m={xs:0,sm:340,md:560,lg:1080,xl:1300},b={mobile:["xs","sm"],tablet:["md","lg"],desktop:["lg","xl"]},w=e=>{const a=Object.keys(e).map(a=>({breakpoint:a,min:e[a],max:0})).sort((e,a)=>e.min-a.min);a.reduce((e,a)=>(a&&(e.max=a.min),a));const o={};return a.map(e=>{o[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)":""}`}),o},g=a.createContext({breakpoints:m,devices:b,mediaQueries:w(m)}),u=()=>a.useContext(g),x={};["numberOfLines","fontWeight","timeStamp","flex","flexGrow","flexShrink","order","zIndex","aspectRatio","shadowOpacity","shadowRadius","scale","opacity","min","max","now"].forEach(e=>{x[e]=!0});const y=(e,a)=>{a.height=a.width=e},v=e=>{const{getColor:a}=f(),{mediaQueries:o,devices:i}=u();let s={};e.onClick&&null==s.cursor&&(s.cursor="pointer");const d=void 0!==e.height&&void 0!==e.width&&e.height===e.width?e.height:e.size?e.size:null;if(d&&y(d,s),e.paddingHorizontal&&(s.paddingLeft=e.paddingHorizontal,s.paddingRight=e.paddingHorizontal),e.marginHorizontal&&(s.marginLeft=e.marginHorizontal,s.marginRight=e.marginHorizontal),e.paddingVertical&&(s.paddingTop=e.paddingVertical,s.paddingBottom=e.paddingVertical),e.marginVertical&&(s.marginTop=e.marginVertical,s.marginBottom=e.marginVertical),e.shadow){if("number"==typeof e.shadow||"boolean"==typeof e.shadow){const a="number"==typeof e.shadow&&void 0!==c[e.shadow]?e.shadow:2;if(c[a]){const e=t.hex.rgb(c[a].shadowColor).join(",");s.boxShadow=`${c[a].shadowOffset.height}px ${c[a].shadowOffset.width}px ${c[a].shadowRadius}px rgba(${e},${c[a].shadowOpacity})`}}else{const a=t.hex.rgb(e.shadow.shadowColor).join(",");s.boxShadow=`${e.shadow.shadowOffset.height}px ${e.shadow.shadowOffset.width}px ${e.shadow.shadowRadius}px rgba(${a},${e.shadow.shadowOpacity})`}delete e.shadow}if(e.only){const{only:a,...o}=e;a.map(e=>{}),Object.keys(o).filter(e=>p(e)).map(t=>{a.map(a=>{e.media[a][t]=o[t]}),delete e[t]}),delete e.only}if(e.css){const{css:a}=e;delete(e={...a,props:e}).css}return Object.keys(e).map(t=>{if("shadow"!==t&&"size"!==t&&(p(t)||"on"==t||"media"==t))if("object"==typeof e[t])if("on"===t)for(const a in e[t])s["&:"+a]=v(e[t][a]);else if("media"===t){for(const a in e[t])if(void 0!==o[a]&&void 0!==e[t][a])s["@media "+o[a]]=v(e[t][a]);else if(void 0!==i[a])for(const d in i[a])void 0!==o[i[a][d]]&&void 0!==e[t][a]&&(s["@media "+o[i[a][d]]]=v(e[t][a]))}else s[t]=v(e[t]);else s[t]="number"==typeof e[t]&&void 0===x[t]?e[t]+"px":-1!==t.toLowerCase().indexOf("color")?a(e[t]):e[t]}),s},O=new Set(["on","shadow","only","media","css","paddingHorizontal","paddingVertical","marginHorizontal","marginVertical"]),F=i.div.withConfig({shouldForwardProp:e=>!O.has(e)&&!p(e)})`
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var a=require("react"),o=e(a),t=e(require("color-convert")),i=e(require("styled-components")),s=e(require("@emotion/is-prop-valid"));const d={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"},n={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"},f=a.createContext({getColor:e=>e,colors:{main:n,palette:d},theme:{main:r,components:{}}}),c=()=>a.useContext(f),l={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}};function h(){const e=Object.keys(document.body.style),a=new Set(["length","parentRule","src"]);return new Set(e.filter(e=>!/^(-moz-|-ms-|-webkit-|-o-)/.test(e)&&!/^on[A-Z]/.test(e)&&!a.has(e)))}const p=h(),m=e=>p.has(e),b={xs:0,sm:340,md:560,lg:1080,xl:1300},w={mobile:["xs","sm"],tablet:["md","lg"],desktop:["lg","xl"]},g=e=>{const a=Object.keys(e).map(a=>({breakpoint:a,min:e[a],max:0})).sort((e,a)=>e.min-a.min);a.reduce((e,a)=>(a&&(e.max=a.min),a));const o={};return a.map(e=>{o[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)":""}`}),o},u=a.createContext({breakpoints:b,devices:w,mediaQueries:g(b)}),x=()=>a.useContext(u),y={};["numberOfLines","fontWeight","timeStamp","flex","flexGrow","flexShrink","order","zIndex","aspectRatio","shadowOpacity","shadowRadius","scale","opacity","min","max","now"].forEach(e=>{y[e]=!0});const v=(e,a)=>{a.height=a.width=e},O=e=>{const{getColor:a}=c(),{mediaQueries:o,devices:i}=x();let s={};e.onClick&&null==s.cursor&&(s.cursor="pointer");const d=void 0!==e.height&&void 0!==e.width&&e.height===e.width?e.height:e.size?e.size:null;if(d&&v(d,s),e.paddingHorizontal&&(s.paddingLeft=e.paddingHorizontal,s.paddingRight=e.paddingHorizontal),e.marginHorizontal&&(s.marginLeft=e.marginHorizontal,s.marginRight=e.marginHorizontal),e.paddingVertical&&(s.paddingTop=e.paddingVertical,s.paddingBottom=e.paddingVertical),e.marginVertical&&(s.marginTop=e.marginVertical,s.marginBottom=e.marginVertical),e.shadow){if("number"==typeof e.shadow||"boolean"==typeof e.shadow){const a="number"==typeof e.shadow&&void 0!==l[e.shadow]?e.shadow:2;if(l[a]){const e=t.hex.rgb(l[a].shadowColor).join(",");s.boxShadow=`${l[a].shadowOffset.height}px ${l[a].shadowOffset.width}px ${l[a].shadowRadius}px rgba(${e},${l[a].shadowOpacity})`}}else{const a=t.hex.rgb(e.shadow.shadowColor).join(",");s.boxShadow=`${e.shadow.shadowOffset.height}px ${e.shadow.shadowOffset.width}px ${e.shadow.shadowRadius}px rgba(${a},${e.shadow.shadowOpacity})`}delete e.shadow}if(e.only){const{only:a,...o}=e;a.map(e=>{}),Object.keys(o).filter(e=>m(e)).map(t=>{a.map(a=>{e.media[a][t]=o[t]}),delete e[t]}),delete e.only}if(e.css){const{css:a}=e;delete(e={...a,props:e}).css}return Object.keys(e).map(t=>{if("shadow"!==t&&"size"!==t&&(m(t)||"on"==t||"media"==t))if("object"==typeof e[t])if("on"===t)for(const a in e[t])s["&:"+a]=O(e[t][a]);else if("media"===t){for(const a in e[t])if(void 0!==o[a]&&void 0!==e[t][a])s["@media "+o[a]]=O(e[t][a]);else if(void 0!==i[a])for(const d in i[a])void 0!==o[i[a][d]]&&void 0!==e[t][a]&&(s["@media "+o[i[a][d]]]=O(e[t][a]))}else s[t]=O(e[t]);else s[t]="number"==typeof e[t]&&void 0===y[t]?e[t]+"px":-1!==t.toLowerCase().indexOf("color")?a(e[t]):e[t]}),s},F=new Set(["on","shadow","only","media","css","paddingHorizontal","paddingVertical","marginHorizontal","marginVertical"]),C=i.div.withConfig({shouldForwardProp:e=>s(e)})`
2
2
  // Applique les styles dynamiques en utilisant la fonction applyStyle
3
- ${e=>v(e)}
4
- `;class C extends o.PureComponent{render(){let{onPress:e,...a}=this.props;return e&&(a.onClick=e),o.createElement(F,Object.assign({},a))}}const k=o.memo(e=>o.createElement(C,Object.assign({},e))),E=k,R=k,j=o.memo(e=>o.createElement(k,Object.assign({overflow:"auto"},e))),S=o.memo(e=>o.createElement(C,Object.assign({},e,{as:"span"}))),z=o.memo(e=>o.createElement(C,Object.assign({},e,{as:"img"}))),P=o.memo(e=>o.createElement(C,Object.assign({},e))),$=o.memo(e=>o.createElement(C,Object.assign({},e,{as:"form"}))),A=o.memo(e=>o.createElement(C,Object.assign({},e,{as:"input"}))),B=o.memo(e=>o.createElement(C,Object.assign({},e,{as:"button"}))),D=()=>"undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,H=!D(),V=e=>{a.useEffect(()=>{e()},[])},T=(e,a,o)=>{const t=window.matchMedia(a),i=()=>{t.matches&&o(e)};return t.addListener(i),t.matches&&o(e),()=>{t.removeListener(i)}};exports.Button=B,exports.Div=E,exports.Element=C,exports.Form=$,exports.Image=z,exports.Input=A,exports.ResponsiveContext=g,exports.ResponsiveProvider=e=>{let{breakpoints:a=m,devices:t=b,children:i}=e;return o.createElement(g.Provider,{value:{breakpoints:a,devices:t,mediaQueries:w(a)}},i)},exports.SafeArea=R,exports.Scroll=j,exports.Shadows=c,exports.Span=S,exports.Text=P,exports.ThemeContext=n,exports.ThemeProvider=e=>{let{theme:a={main:d,components:{}},colors:t={main:r,palette:s},children:i}=e;const f=e=>{if("transparent"===e)return e;try{if(e.startsWith("theme.")){const o=e.split(".");if(void 0!==o[1]&&"object"==typeof a.components[o[1]]&&void 0!==a.components[o[1]][o[2]])return f(a.components[o[1]][o[2]]);if(a.main[o[1]]&&void 0!==a.main[o[1]])return f(a.main[o[1]]);console.log("Color "+e+" not found")}else if(e.startsWith("color.")){const a=e.split(".");if(t.palette&&void 0!==t.palette[a[1]][a[2]])return t.palette[a[1]][a[2]];if(t.palette&&void 0!==t.palette[a[1]][parseInt(a[2])])return t.palette[a[1]][parseInt(a[2])];if(t.main&&void 0!==t.main[a[1]])return t.main[a[1]];console.log("Color "+e+" not found")}}catch(e){}return e};return o.createElement(n.Provider,{value:{getColor:f,theme:{main:{...d,...a.main},components:{...a.components}},colors:{main:{...r,...t.main},palette:{...s,...t.palette}}}},i)},exports.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}},exports.View=k,exports.applyStyle=v,exports.createQuery=T,exports.defaultColors=r,exports.defaultThemeMain=d,exports.getProps=e=>Object.keys(e).reduce((a,o)=>(O.has(o)||p(o)||(a[o]=e[o]),a),{}),exports.getWindowInitialProps=()=>D()?window.g_initialProps:void 0,exports.isBrowser=D,exports.isDev=function(){let e=!1;return D()&&(e=!(-1===window.location.hostname.indexOf("localhost"))),e},exports.isMobile=function(){return navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)},exports.isProd=function(){return!!(D()&&window&&window.location&&window.location.hostname)&&(window.location.hostname.includes("localhost")||window.location.hostname.includes("develop"))},exports.isSSR=H,exports.palette=s,exports.setSize=y,exports.useMount=V,exports.useResponsive=()=>{const{breakpoints:e,devices:o,mediaQueries:t}=u(),[i,s]=a.useState("xs"),[d,r]=a.useState("landscape");return V(()=>{for(const e in t)T(e,t[e],s);T("landscape","only screen and (orientation: landscape)",r),T("portrait","only screen and (orientation: portrait)",r)}),{breakpoints:e,devices:o,orientation:d,screen:i,on:e=>o[e].includes(i),is:e=>e==i}},exports.useResponsiveContext=u,exports.useTheme=f;
3
+ ${e=>O(e)}
4
+ `;class k extends o.PureComponent{render(){let{onPress:e,...a}=this.props;return e&&(a.onClick=e),o.createElement(C,Object.assign({},a))}}const E=o.memo(e=>o.createElement(k,Object.assign({},e))),R=E,j=E,S=o.memo(e=>o.createElement(E,Object.assign({overflow:"auto"},e))),z=o.memo(e=>o.createElement(k,Object.assign({},e,{as:"span"}))),P=o.memo(e=>o.createElement(k,Object.assign({},e,{as:"img"}))),$=o.memo(e=>o.createElement(k,Object.assign({},e))),A=o.memo(e=>o.createElement(k,Object.assign({},e,{as:"form"}))),B=o.memo(e=>o.createElement(k,Object.assign({},e,{as:"input"}))),D=o.memo(e=>o.createElement(k,Object.assign({},e,{as:"button"}))),H=()=>"undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,V=!H(),T=e=>{a.useEffect(()=>{e()},[])},q=(e,a,o)=>{const t=window.matchMedia(a),i=()=>{t.matches&&o(e)};return t.addListener(i),t.matches&&o(e),()=>{t.removeListener(i)}};exports.Button=D,exports.Div=R,exports.Element=k,exports.Form=A,exports.Image=P,exports.Input=B,exports.ResponsiveContext=u,exports.ResponsiveProvider=e=>{let{breakpoints:a=b,devices:t=w,children:i}=e;return o.createElement(u.Provider,{value:{breakpoints:a,devices:t,mediaQueries:g(a)}},i)},exports.SafeArea=j,exports.Scroll=S,exports.Shadows=l,exports.Span=z,exports.Text=$,exports.ThemeContext=f,exports.ThemeProvider=e=>{let{theme:a={main:r,components:{}},colors:t={main:n,palette:d},children:i}=e;const s=e=>{if("transparent"===e)return e;try{if(e.startsWith("theme.")){const o=e.split(".");if(void 0!==o[1]&&"object"==typeof a.components[o[1]]&&void 0!==a.components[o[1]][o[2]])return s(a.components[o[1]][o[2]]);if(a.main[o[1]]&&void 0!==a.main[o[1]])return s(a.main[o[1]]);console.log("Color "+e+" not found")}else if(e.startsWith("color.")){const a=e.split(".");if(t.palette&&void 0!==t.palette[a[1]][a[2]])return t.palette[a[1]][a[2]];if(t.palette&&void 0!==t.palette[a[1]][parseInt(a[2])])return t.palette[a[1]][parseInt(a[2])];if(t.main&&void 0!==t.main[a[1]])return t.main[a[1]];console.log("Color "+e+" not found")}}catch(e){}return e};return o.createElement(f.Provider,{value:{getColor:s,theme:{main:{...r,...a.main},components:{...a.components}},colors:{main:{...n,...t.main},palette:{...d,...t.palette}}}},i)},exports.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}},exports.View=E,exports.applyStyle=O,exports.createQuery=q,exports.defaultColors=n,exports.defaultThemeMain=r,exports.getProps=e=>Object.keys(e).reduce((a,o)=>(F.has(o)||m(o)||(a[o]=e[o]),a),{}),exports.getWindowInitialProps=()=>H()?window.g_initialProps:void 0,exports.isBrowser=H,exports.isDev=function(){let e=!1;return H()&&(e=!(-1===window.location.hostname.indexOf("localhost"))),e},exports.isMobile=function(){return navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)},exports.isProd=function(){return!!(H()&&window&&window.location&&window.location.hostname)&&(window.location.hostname.includes("localhost")||window.location.hostname.includes("develop"))},exports.isSSR=V,exports.palette=d,exports.setSize=v,exports.useMount=T,exports.useResponsive=()=>{const{breakpoints:e,devices:o,mediaQueries:t}=x(),[i,s]=a.useState("xs"),[d,r]=a.useState("landscape");return T(()=>{for(const e in t)q(e,t[e],s);q("landscape","only screen and (orientation: landscape)",r),q("portrait","only screen and (orientation: portrait)",r)}),{breakpoints:e,devices:o,orientation:d,screen:i,on:e=>o[e].includes(i),is:e=>e==i}},exports.useResponsiveContext=x,exports.useTheme=c;
5
5
  //# sourceMappingURL=app-studio.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-studio.cjs.production.min.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/utils/shadow.ts","../src/utils/style.ts","../src/providers/Responsive.tsx","../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/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","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","function getValidCSSProperties() {\n // Use the CSSStyleDeclaration object to get all supported CSS properties\n const allProps = Object.keys(document.body.style);\n\n // Create a Set for non-style attributes that we wish to exclude from the style properties\n // Note: This list is not exhaustive and can be expanded as needed.\n const nonStyleAttributes = new Set([\n 'length',\n 'parentRule',\n 'src',\n // ... add any other known non-style properties here\n ]);\n\n // Filter out non-standard properties, event handlers, and non-style attributes\n const validProps = new Set(\n allProps.filter(\n (prop) =>\n !/^(-moz-|-ms-|-webkit-|-o-)/.test(prop) && // Vendor prefixes\n !/^on[A-Z]/.test(prop) && // Event handlers, e.g., onClick\n !nonStyleAttributes.has(prop) // Specific non-style properties\n )\n );\n\n return validProps;\n}\n\nexport const StyleProps: any = getValidCSSProperties();\n\nexport const isStyleProp = (property: string): boolean => {\n return StyleProps.has(property);\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","import React from 'react'; // Importe React pour créer des composants\nimport Color from 'color-convert'; // Utilisé pour convertir les couleurs\nimport styled, { CSSProperties } from 'styled-components'; // Pour créer des composants stylisés\n\nimport { useTheme } from '../providers/Theme'; // Hook personnalisé pour utiliser le thème\nimport { Shadows, Shadow } from '../utils/shadow'; // Importe des utilitaires pour les ombres\nimport { isStyleProp } from '../utils/style'; // Fonction pour vérifier si une prop est un style\nimport { useResponsiveContext } from '../providers/Responsive'; // Hook pour le contexte responsive\n\n// Définit les props pour le composant Element\nexport interface ElementProps {\n children?: React.ReactNode; // Les enfants du composant\n size?: number; // Taille de l'élément\n on?: Record<string, CSSProperties>; // Styles pour les événements\n media?: Record<string, CSSProperties>; // Styles pour les médias\n paddingHorizontal?: number | string; // Padding horizontal\n marginHorizontal?: number | string; // Margin horizontal\n paddingVertical?: number | string; // Padding vertical\n marginVertical?: number | string; // Margin vertical\n shadow?: boolean | number | Shadow; // Propriété d'ombre\n only?: string[]; // Propriété pour spécifier des médias spécifiques\n css?: CSSProperties; // Styles CSS personnalisés\n}\n\n// Liste des propriétés numériques\nconst NumberProps = [\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// Stocke si une propriété est numérique\nconst NumberPropsStyle: { [key: string]: boolean } = {};\nNumberProps.forEach((property) => {\n NumberPropsStyle[property] = true;\n});\n\n// Fonction pour définir la taille de l'élément\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Définit la hauteur et la largeur\n};\n\n// Fonction pour appliquer les styles à un composant\nexport const applyStyle = (props: Record<string, any>): CSSProperties & any => {\n const { getColor } = useTheme(); // Utilise le hook pour obtenir les couleurs du thème\n const { mediaQueries, devices } = useResponsiveContext(); // Utilise le contexte responsive\n\n // eslint-disable-next-line prefer-const\n let styleProps: Record<string, any> = {}; // Stocke les styles\n\n // Applique un curseur pointeur si un gestionnaire de clic est présent\n if (props.onClick && styleProps.cursor == undefined) {\n styleProps.cursor = 'pointer';\n }\n\n // Gère 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 setSize(size, styleProps); // Applique la taille\n }\n\n // Gère le padding et 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 // Applique les 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 = Color.hex\n .rgb(Shadows[shadowValue].shadowColor)\n .join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${Shadows[shadowValue].shadowOffset.height}px ${Shadows[shadowValue].shadowOffset.width}px ${Shadows[shadowValue].shadowRadius}px rgba(${shadowColor},${Shadows[shadowValue].shadowOpacity})`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor).join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${props.shadow.shadowOffset.height}px ${props.shadow.shadowOffset.width}px ${props.shadow.shadowRadius}px rgba(${shadowColor},${props.shadow.shadowOpacity})`;\n }\n delete props['shadow'];\n }\n\n // Gère les styles pour des médias spécifiques\n if (props.only) {\n const { only, ...newProps } = props;\n // eslint-disable-next-line prefer-const\n let onlyProps: any = {\n media: {},\n };\n\n only.map((o: string) => {\n if (onlyProps.media[o] == undefined) {\n onlyProps.media[o] = {};\n }\n });\n\n const styleKeys = Object.keys(newProps).filter((key) => isStyleProp(key));\n styleKeys.map((key: string) => {\n only.map((o: string) => {\n props.media[o][key] = newProps[key];\n });\n delete props[key];\n });\n delete props['only'];\n }\n\n // Gère les styles CSS personnalisés\n if (props.css) {\n const { css } = props;\n props = { ...css, props };\n delete props['css'];\n }\n\n // Applique les styles\n Object.keys(props).map((property) => {\n if (property !== 'shadow' && property !== 'size') {\n if (isStyleProp(property) || property == 'on' || property == 'media') {\n if (typeof props[property] === 'object') {\n if (property === 'on') {\n for (const event in props[property]) {\n styleProps['&:' + event] = applyStyle(props[property][event]);\n }\n } else if (property === 'media') {\n for (const screenOrDevices in props[property]) {\n if (\n mediaQueries[screenOrDevices] !== undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps['@media ' + mediaQueries[screenOrDevices]] =\n applyStyle(props[property][screenOrDevices]);\n } else if (devices[screenOrDevices] !== undefined) {\n for (const deviceScreen in devices[screenOrDevices]) {\n if (\n mediaQueries[devices[screenOrDevices][deviceScreen]] !==\n undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps[\n '@media ' +\n mediaQueries[devices[screenOrDevices][deviceScreen]]\n ] = applyStyle(props[property][screenOrDevices]);\n }\n }\n }\n }\n } else {\n styleProps[property] = applyStyle(props[property]);\n }\n } else if (\n typeof props[property] === 'number' &&\n NumberPropsStyle[property] === undefined\n ) {\n styleProps[property] = props[property] + 'px';\n } else if (property.toLowerCase().indexOf('color') !== -1) {\n styleProps[property] = getColor(props[property]);\n } else {\n styleProps[property] = props[property];\n }\n }\n }\n });\n\n return styleProps;\n};\n\n// Fonction pour filtrer les props qui ne sont pas des styles\nexport const getProps = (props: Record<string, any>) => {\n return Object.keys(props).reduce(\n (acc, key) => {\n if (!excludedKeys.has(key) && !isStyleProp(key)) {\n acc[key] = props[key];\n }\n return acc;\n },\n {} as { [key: string]: any }\n );\n};\n\n// Clés à exclure lors de la création du composant stylisé\nconst excludedKeys = new Set([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n]);\n\n// Crée un composant div stylisé, en excluant certaines props\nconst ElementComponent = styled.div.withConfig({\n shouldForwardProp: (prop) => !excludedKeys.has(prop) && !isStyleProp(prop),\n})`\n // Applique les styles dynamiques en utilisant la fonction applyStyle\n ${(props: any) => applyStyle(props)}\n`;\n\n// Classe Element étendant React.PureComponent pour optimiser les performances\nexport class Element extends React.PureComponent<ElementProps & any> {\n render() {\n // eslint-disable-next-line prefer-const\n let { onPress, ...props }: any = this.props;\n if (onPress) {\n props.onClick = onPress;\n }\n // Rendu du composant avec les props\n return <ElementComponent {...props} />;\n }\n}\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'styled-components';\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'>,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'styled-components';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<TextStyleProps, 'children' | 'style' | 'pointerEvents'>,\n CSSProperties,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\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<Partial<HTMLInputElement>, 'width' | 'height' | 'children'>,\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","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","Shadows","0","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","1","2","3","4","5","6","7","8","9","getValidCSSProperties","allProps","Object","keys","document","body","style","nonStyleAttributes","Set","filter","prop","test","has","StyleProps","isStyleProp","property","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","ResponsiveContext","breakpoints","devices","mediaQueries","useResponsiveContext","NumberPropsStyle","forEach","setSize","newSize","styleProps","applyStyle","props","onClick","undefined","cursor","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","join","only","newProps","o","key","media","css","event","screenOrDevices","deviceScreen","toLowerCase","indexOf","excludedKeys","ElementComponent","styled","div","withConfig","shouldForwardProp","Element","React","PureComponent","render","onPress","this","View","memo","Div","SafeArea","Scroll","overflow","Span","as","Image","Text","Form","Input","Button","isBrowser","window","createElement","isSSR","useMount","callback","useEffect","createQuery","keyScreen","set","mql","matchMedia","onChange","matches","addListener","removeListener","_ref","children","Provider","value","startsWith","split","console","log","parseInt","e","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","2xl","3xl","4xl","5xl","6xl","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","acc","getWindowInitialProps","g_initialProps","dev","location","hostname","navigator","userAgent","match","includes","useResponsive","screen","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}
1
+ {"version":3,"file":"app-studio.cjs.production.min.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/utils/shadow.ts","../src/utils/style.ts","../src/providers/Responsive.tsx","../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/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","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","function getValidCSSProperties() {\n // Use the CSSStyleDeclaration object to get all supported CSS properties\n const allProps = Object.keys(document.body.style);\n\n // Create a Set for non-style attributes that we wish to exclude from the style properties\n // Note: This list is not exhaustive and can be expanded as needed.\n const nonStyleAttributes = new Set([\n 'length',\n 'parentRule',\n 'src',\n // ... add any other known non-style properties here\n ]);\n\n // Filter out non-standard properties, event handlers, and non-style attributes\n const validProps = new Set(\n allProps.filter(\n (prop) =>\n !/^(-moz-|-ms-|-webkit-|-o-)/.test(prop) && // Vendor prefixes\n !/^on[A-Z]/.test(prop) && // Event handlers, e.g., onClick\n !nonStyleAttributes.has(prop) // Specific non-style properties\n )\n );\n\n return validProps;\n}\n\nexport const StyleProps: any = getValidCSSProperties();\n\nexport const isStyleProp = (property: string): boolean => {\n return StyleProps.has(property);\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","import React from 'react'; // Importe React pour créer des composants\nimport Color from 'color-convert'; // Utilisé pour convertir les couleurs\nimport styled, { CSSProperties } from 'styled-components'; // Pour créer des composants stylisés\nimport isPropValid from '@emotion/is-prop-valid';\nimport { useTheme } from '../providers/Theme'; // Hook personnalisé pour utiliser le thème\nimport { Shadows, Shadow } from '../utils/shadow'; // Importe des utilitaires pour les ombres\nimport { isStyleProp } from '../utils/style'; // Fonction pour vérifier si une prop est un style\nimport { useResponsiveContext } from '../providers/Responsive'; // Hook pour le contexte responsive\n\n// Définit les props pour le composant Element\nexport interface ElementProps {\n children?: React.ReactNode; // Les enfants du composant\n size?: number; // Taille de l'élément\n on?: Record<string, CSSProperties>; // Styles pour les événements\n media?: Record<string, CSSProperties>; // Styles pour les médias\n paddingHorizontal?: number | string; // Padding horizontal\n marginHorizontal?: number | string; // Margin horizontal\n paddingVertical?: number | string; // Padding vertical\n marginVertical?: number | string; // Margin vertical\n shadow?: boolean | number | Shadow; // Propriété d'ombre\n only?: string[]; // Propriété pour spécifier des médias spécifiques\n css?: CSSProperties; // Styles CSS personnalisés\n}\n\n// Liste des propriétés numériques\nconst NumberProps = [\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// Stocke si une propriété est numérique\nconst NumberPropsStyle: { [key: string]: boolean } = {};\nNumberProps.forEach((property) => {\n NumberPropsStyle[property] = true;\n});\n\n// Fonction pour définir la taille de l'élément\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Définit la hauteur et la largeur\n};\n\n// Fonction pour appliquer les styles à un composant\nexport const applyStyle = (props: Record<string, any>): CSSProperties & any => {\n const { getColor } = useTheme(); // Utilise le hook pour obtenir les couleurs du thème\n const { mediaQueries, devices } = useResponsiveContext(); // Utilise le contexte responsive\n\n // eslint-disable-next-line prefer-const\n let styleProps: Record<string, any> = {}; // Stocke les styles\n\n // Applique un curseur pointeur si un gestionnaire de clic est présent\n if (props.onClick && styleProps.cursor == undefined) {\n styleProps.cursor = 'pointer';\n }\n\n // Gère 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 setSize(size, styleProps); // Applique la taille\n }\n\n // Gère le padding et 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 // Applique les 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 = Color.hex\n .rgb(Shadows[shadowValue].shadowColor)\n .join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${Shadows[shadowValue].shadowOffset.height}px ${Shadows[shadowValue].shadowOffset.width}px ${Shadows[shadowValue].shadowRadius}px rgba(${shadowColor},${Shadows[shadowValue].shadowOpacity})`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor).join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${props.shadow.shadowOffset.height}px ${props.shadow.shadowOffset.width}px ${props.shadow.shadowRadius}px rgba(${shadowColor},${props.shadow.shadowOpacity})`;\n }\n delete props['shadow'];\n }\n\n // Gère les styles pour des médias spécifiques\n if (props.only) {\n const { only, ...newProps } = props;\n // eslint-disable-next-line prefer-const\n let onlyProps: any = {\n media: {},\n };\n\n only.map((o: string) => {\n if (onlyProps.media[o] == undefined) {\n onlyProps.media[o] = {};\n }\n });\n\n const styleKeys = Object.keys(newProps).filter((key) => isStyleProp(key));\n styleKeys.map((key: string) => {\n only.map((o: string) => {\n props.media[o][key] = newProps[key];\n });\n delete props[key];\n });\n delete props['only'];\n }\n\n // Gère les styles CSS personnalisés\n if (props.css) {\n const { css } = props;\n props = { ...css, props };\n delete props['css'];\n }\n\n // Applique les styles\n Object.keys(props).map((property) => {\n if (property !== 'shadow' && property !== 'size') {\n if (isStyleProp(property) || property == 'on' || property == 'media') {\n if (typeof props[property] === 'object') {\n if (property === 'on') {\n for (const event in props[property]) {\n styleProps['&:' + event] = applyStyle(props[property][event]);\n }\n } else if (property === 'media') {\n for (const screenOrDevices in props[property]) {\n if (\n mediaQueries[screenOrDevices] !== undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps['@media ' + mediaQueries[screenOrDevices]] =\n applyStyle(props[property][screenOrDevices]);\n } else if (devices[screenOrDevices] !== undefined) {\n for (const deviceScreen in devices[screenOrDevices]) {\n if (\n mediaQueries[devices[screenOrDevices][deviceScreen]] !==\n undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps[\n '@media ' +\n mediaQueries[devices[screenOrDevices][deviceScreen]]\n ] = applyStyle(props[property][screenOrDevices]);\n }\n }\n }\n }\n } else {\n styleProps[property] = applyStyle(props[property]);\n }\n } else if (\n typeof props[property] === 'number' &&\n NumberPropsStyle[property] === undefined\n ) {\n styleProps[property] = props[property] + 'px';\n } else if (property.toLowerCase().indexOf('color') !== -1) {\n styleProps[property] = getColor(props[property]);\n } else {\n styleProps[property] = props[property];\n }\n }\n }\n });\n\n return styleProps;\n};\n\n// Fonction pour filtrer les props qui ne sont pas des styles\nexport const getProps = (props: Record<string, any>) => {\n return Object.keys(props).reduce(\n (acc, key) => {\n if (!excludedKeys.has(key) && !isStyleProp(key)) {\n acc[key] = props[key];\n }\n return acc;\n },\n {} as { [key: string]: any }\n );\n};\n\n// Clés à exclure lors de la création du composant stylisé\nconst excludedKeys = new Set([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n]);\n\n// Crée un composant div stylisé, en excluant certaines props\nconst ElementComponent = styled.div.withConfig({\n shouldForwardProp: (prop) => isPropValid(prop),\n})`\n // Applique les styles dynamiques en utilisant la fonction applyStyle\n ${(props: any) => applyStyle(props)}\n`;\n\n// Classe Element étendant React.PureComponent pour optimiser les performances\nexport class Element extends React.PureComponent<ElementProps & any> {\n render() {\n // eslint-disable-next-line prefer-const\n let { onPress, ...props }: any = this.props;\n if (onPress) {\n props.onClick = onPress;\n }\n // Rendu du composant avec les props\n return <ElementComponent {...props} />;\n }\n}\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'styled-components';\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'>,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'styled-components';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<TextStyleProps, 'children' | 'style' | 'pointerEvents'>,\n CSSProperties,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\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<Partial<HTMLInputElement>, 'width' | 'height' | 'children'>,\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","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","Shadows","0","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","1","2","3","4","5","6","7","8","9","getValidCSSProperties","allProps","Object","keys","document","body","style","nonStyleAttributes","Set","filter","prop","test","has","StyleProps","isStyleProp","property","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","ResponsiveContext","breakpoints","devices","mediaQueries","useResponsiveContext","NumberPropsStyle","forEach","setSize","newSize","styleProps","applyStyle","props","onClick","undefined","cursor","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","join","only","newProps","o","key","media","css","event","screenOrDevices","deviceScreen","toLowerCase","indexOf","excludedKeys","ElementComponent","styled","div","withConfig","shouldForwardProp","isPropValid","Element","React","PureComponent","render","onPress","this","View","memo","Div","SafeArea","Scroll","overflow","Span","as","Image","Text","Form","Input","Button","isBrowser","window","createElement","isSSR","useMount","callback","useEffect","createQuery","keyScreen","set","mql","matchMedia","onChange","matches","addListener","removeListener","_ref","children","Provider","value","startsWith","split","console","log","parseInt","e","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","2xl","3xl","4xl","5xl","6xl","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","acc","getWindowInitialProps","g_initialProps","dev","location","hostname","navigator","userAgent","match","includes","useResponsive","screen","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import React, { createContext, useContext, useEffect, useState } from 'react';
2
2
  import Color from 'color-convert';
3
3
  import styled from 'styled-components';
4
+ import isPropValid from '@emotion/is-prop-valid';
4
5
 
5
6
  const palette = {
6
7
  white: {
@@ -735,7 +736,7 @@ const getProps = props => {
735
736
  const excludedKeys = /*#__PURE__*/new Set(['on', 'shadow', 'only', 'media', 'css', 'paddingHorizontal', 'paddingVertical', 'marginHorizontal', 'marginVertical']);
736
737
  // Crée un composant div stylisé, en excluant certaines props
737
738
  const ElementComponent = /*#__PURE__*/styled.div.withConfig({
738
- shouldForwardProp: prop => !excludedKeys.has(prop) && !isStyleProp(prop)
739
+ shouldForwardProp: prop => isPropValid(prop)
739
740
  })`
740
741
  // Applique les styles dynamiques en utilisant la fonction applyStyle
741
742
  ${props => applyStyle(props)}
@@ -1 +1 @@
1
- {"version":3,"file":"app-studio.esm.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/utils/shadow.ts","../src/utils/style.ts","../src/providers/Responsive.tsx","../src/components/Element.tsx","../src/components/View.tsx","../src/components/Image.tsx","../src/components/Text.tsx","../src/components/Form.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","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","function getValidCSSProperties() {\n // Use the CSSStyleDeclaration object to get all supported CSS properties\n const allProps = Object.keys(document.body.style);\n\n // Create a Set for non-style attributes that we wish to exclude from the style properties\n // Note: This list is not exhaustive and can be expanded as needed.\n const nonStyleAttributes = new Set([\n 'length',\n 'parentRule',\n 'src',\n // ... add any other known non-style properties here\n ]);\n\n // Filter out non-standard properties, event handlers, and non-style attributes\n const validProps = new Set(\n allProps.filter(\n (prop) =>\n !/^(-moz-|-ms-|-webkit-|-o-)/.test(prop) && // Vendor prefixes\n !/^on[A-Z]/.test(prop) && // Event handlers, e.g., onClick\n !nonStyleAttributes.has(prop) // Specific non-style properties\n )\n );\n\n return validProps;\n}\n\nexport const StyleProps: any = getValidCSSProperties();\n\nexport const isStyleProp = (property: string): boolean => {\n return StyleProps.has(property);\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","import React from 'react'; // Importe React pour créer des composants\nimport Color from 'color-convert'; // Utilisé pour convertir les couleurs\nimport styled, { CSSProperties } from 'styled-components'; // Pour créer des composants stylisés\n\nimport { useTheme } from '../providers/Theme'; // Hook personnalisé pour utiliser le thème\nimport { Shadows, Shadow } from '../utils/shadow'; // Importe des utilitaires pour les ombres\nimport { isStyleProp } from '../utils/style'; // Fonction pour vérifier si une prop est un style\nimport { useResponsiveContext } from '../providers/Responsive'; // Hook pour le contexte responsive\n\n// Définit les props pour le composant Element\nexport interface ElementProps {\n children?: React.ReactNode; // Les enfants du composant\n size?: number; // Taille de l'élément\n on?: Record<string, CSSProperties>; // Styles pour les événements\n media?: Record<string, CSSProperties>; // Styles pour les médias\n paddingHorizontal?: number | string; // Padding horizontal\n marginHorizontal?: number | string; // Margin horizontal\n paddingVertical?: number | string; // Padding vertical\n marginVertical?: number | string; // Margin vertical\n shadow?: boolean | number | Shadow; // Propriété d'ombre\n only?: string[]; // Propriété pour spécifier des médias spécifiques\n css?: CSSProperties; // Styles CSS personnalisés\n}\n\n// Liste des propriétés numériques\nconst NumberProps = [\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// Stocke si une propriété est numérique\nconst NumberPropsStyle: { [key: string]: boolean } = {};\nNumberProps.forEach((property) => {\n NumberPropsStyle[property] = true;\n});\n\n// Fonction pour définir la taille de l'élément\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Définit la hauteur et la largeur\n};\n\n// Fonction pour appliquer les styles à un composant\nexport const applyStyle = (props: Record<string, any>): CSSProperties & any => {\n const { getColor } = useTheme(); // Utilise le hook pour obtenir les couleurs du thème\n const { mediaQueries, devices } = useResponsiveContext(); // Utilise le contexte responsive\n\n // eslint-disable-next-line prefer-const\n let styleProps: Record<string, any> = {}; // Stocke les styles\n\n // Applique un curseur pointeur si un gestionnaire de clic est présent\n if (props.onClick && styleProps.cursor == undefined) {\n styleProps.cursor = 'pointer';\n }\n\n // Gère 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 setSize(size, styleProps); // Applique la taille\n }\n\n // Gère le padding et 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 // Applique les 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 = Color.hex\n .rgb(Shadows[shadowValue].shadowColor)\n .join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${Shadows[shadowValue].shadowOffset.height}px ${Shadows[shadowValue].shadowOffset.width}px ${Shadows[shadowValue].shadowRadius}px rgba(${shadowColor},${Shadows[shadowValue].shadowOpacity})`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor).join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${props.shadow.shadowOffset.height}px ${props.shadow.shadowOffset.width}px ${props.shadow.shadowRadius}px rgba(${shadowColor},${props.shadow.shadowOpacity})`;\n }\n delete props['shadow'];\n }\n\n // Gère les styles pour des médias spécifiques\n if (props.only) {\n const { only, ...newProps } = props;\n // eslint-disable-next-line prefer-const\n let onlyProps: any = {\n media: {},\n };\n\n only.map((o: string) => {\n if (onlyProps.media[o] == undefined) {\n onlyProps.media[o] = {};\n }\n });\n\n const styleKeys = Object.keys(newProps).filter((key) => isStyleProp(key));\n styleKeys.map((key: string) => {\n only.map((o: string) => {\n props.media[o][key] = newProps[key];\n });\n delete props[key];\n });\n delete props['only'];\n }\n\n // Gère les styles CSS personnalisés\n if (props.css) {\n const { css } = props;\n props = { ...css, props };\n delete props['css'];\n }\n\n // Applique les styles\n Object.keys(props).map((property) => {\n if (property !== 'shadow' && property !== 'size') {\n if (isStyleProp(property) || property == 'on' || property == 'media') {\n if (typeof props[property] === 'object') {\n if (property === 'on') {\n for (const event in props[property]) {\n styleProps['&:' + event] = applyStyle(props[property][event]);\n }\n } else if (property === 'media') {\n for (const screenOrDevices in props[property]) {\n if (\n mediaQueries[screenOrDevices] !== undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps['@media ' + mediaQueries[screenOrDevices]] =\n applyStyle(props[property][screenOrDevices]);\n } else if (devices[screenOrDevices] !== undefined) {\n for (const deviceScreen in devices[screenOrDevices]) {\n if (\n mediaQueries[devices[screenOrDevices][deviceScreen]] !==\n undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps[\n '@media ' +\n mediaQueries[devices[screenOrDevices][deviceScreen]]\n ] = applyStyle(props[property][screenOrDevices]);\n }\n }\n }\n }\n } else {\n styleProps[property] = applyStyle(props[property]);\n }\n } else if (\n typeof props[property] === 'number' &&\n NumberPropsStyle[property] === undefined\n ) {\n styleProps[property] = props[property] + 'px';\n } else if (property.toLowerCase().indexOf('color') !== -1) {\n styleProps[property] = getColor(props[property]);\n } else {\n styleProps[property] = props[property];\n }\n }\n }\n });\n\n return styleProps;\n};\n\n// Fonction pour filtrer les props qui ne sont pas des styles\nexport const getProps = (props: Record<string, any>) => {\n return Object.keys(props).reduce(\n (acc, key) => {\n if (!excludedKeys.has(key) && !isStyleProp(key)) {\n acc[key] = props[key];\n }\n return acc;\n },\n {} as { [key: string]: any }\n );\n};\n\n// Clés à exclure lors de la création du composant stylisé\nconst excludedKeys = new Set([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n]);\n\n// Crée un composant div stylisé, en excluant certaines props\nconst ElementComponent = styled.div.withConfig({\n shouldForwardProp: (prop) => !excludedKeys.has(prop) && !isStyleProp(prop),\n})`\n // Applique les styles dynamiques en utilisant la fonction applyStyle\n ${(props: any) => applyStyle(props)}\n`;\n\n// Classe Element étendant React.PureComponent pour optimiser les performances\nexport class Element extends React.PureComponent<ElementProps & any> {\n render() {\n // eslint-disable-next-line prefer-const\n let { onPress, ...props }: any = this.props;\n if (onPress) {\n props.onClick = onPress;\n }\n // Rendu du composant avec les props\n return <ElementComponent {...props} />;\n }\n}\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'styled-components';\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'>,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'styled-components';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<TextStyleProps, 'children' | 'style' | 'pointerEvents'>,\n CSSProperties,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\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<Partial<HTMLInputElement>, 'width' | 'height' | 'children'>,\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","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","Shadows","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","getValidCSSProperties","allProps","Object","document","body","style","nonStyleAttributes","Set","validProps","filter","prop","test","has","StyleProps","isStyleProp","property","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","defaultKeys","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","defaultScreenConfig","breakpoints","devices","mediaQueries","ResponsiveContext","useResponsiveContext","ResponsiveProvider","NumberProps","NumberPropsStyle","forEach","setSize","newSize","styleProps","applyStyle","props","onClick","cursor","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","join","only","newProps","o","styleKeys","key","media","css","event","screenOrDevices","deviceScreen","toLowerCase","indexOf","getProps","acc","excludedKeys","ElementComponent","styled","div","withConfig","shouldForwardProp","Element","PureComponent","render","onPress","View","memo","Div","SafeArea","Scroll","overflow","Span","as","Image","Text","Form","Input","Button","Typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","isBrowser","window","createElement","getWindowInitialProps","g_initialProps","isSSR","isDev","dev","location","hostname","isProd","includes","isMobile","navigator","userAgent","match","useMount","callback","useEffect","createQuery","keyScreen","set","mql","matchMedia","onChange","matches","addListener","removeListener","useResponsive","screen","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}
1
+ {"version":3,"file":"app-studio.esm.js","sources":["../src/utils/colors.ts","../src/providers/Theme.tsx","../src/utils/shadow.ts","../src/utils/style.ts","../src/providers/Responsive.tsx","../src/components/Element.tsx","../src/components/View.tsx","../src/components/Image.tsx","../src/components/Text.tsx","../src/components/Form.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","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","function getValidCSSProperties() {\n // Use the CSSStyleDeclaration object to get all supported CSS properties\n const allProps = Object.keys(document.body.style);\n\n // Create a Set for non-style attributes that we wish to exclude from the style properties\n // Note: This list is not exhaustive and can be expanded as needed.\n const nonStyleAttributes = new Set([\n 'length',\n 'parentRule',\n 'src',\n // ... add any other known non-style properties here\n ]);\n\n // Filter out non-standard properties, event handlers, and non-style attributes\n const validProps = new Set(\n allProps.filter(\n (prop) =>\n !/^(-moz-|-ms-|-webkit-|-o-)/.test(prop) && // Vendor prefixes\n !/^on[A-Z]/.test(prop) && // Event handlers, e.g., onClick\n !nonStyleAttributes.has(prop) // Specific non-style properties\n )\n );\n\n return validProps;\n}\n\nexport const StyleProps: any = getValidCSSProperties();\n\nexport const isStyleProp = (property: string): boolean => {\n return StyleProps.has(property);\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","import React from 'react'; // Importe React pour créer des composants\nimport Color from 'color-convert'; // Utilisé pour convertir les couleurs\nimport styled, { CSSProperties } from 'styled-components'; // Pour créer des composants stylisés\nimport isPropValid from '@emotion/is-prop-valid';\nimport { useTheme } from '../providers/Theme'; // Hook personnalisé pour utiliser le thème\nimport { Shadows, Shadow } from '../utils/shadow'; // Importe des utilitaires pour les ombres\nimport { isStyleProp } from '../utils/style'; // Fonction pour vérifier si une prop est un style\nimport { useResponsiveContext } from '../providers/Responsive'; // Hook pour le contexte responsive\n\n// Définit les props pour le composant Element\nexport interface ElementProps {\n children?: React.ReactNode; // Les enfants du composant\n size?: number; // Taille de l'élément\n on?: Record<string, CSSProperties>; // Styles pour les événements\n media?: Record<string, CSSProperties>; // Styles pour les médias\n paddingHorizontal?: number | string; // Padding horizontal\n marginHorizontal?: number | string; // Margin horizontal\n paddingVertical?: number | string; // Padding vertical\n marginVertical?: number | string; // Margin vertical\n shadow?: boolean | number | Shadow; // Propriété d'ombre\n only?: string[]; // Propriété pour spécifier des médias spécifiques\n css?: CSSProperties; // Styles CSS personnalisés\n}\n\n// Liste des propriétés numériques\nconst NumberProps = [\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// Stocke si une propriété est numérique\nconst NumberPropsStyle: { [key: string]: boolean } = {};\nNumberProps.forEach((property) => {\n NumberPropsStyle[property] = true;\n});\n\n// Fonction pour définir la taille de l'élément\nexport const setSize = (\n newSize: string | number,\n styleProps: Record<string, any>\n) => {\n styleProps.height = styleProps.width = newSize; // Définit la hauteur et la largeur\n};\n\n// Fonction pour appliquer les styles à un composant\nexport const applyStyle = (props: Record<string, any>): CSSProperties & any => {\n const { getColor } = useTheme(); // Utilise le hook pour obtenir les couleurs du thème\n const { mediaQueries, devices } = useResponsiveContext(); // Utilise le contexte responsive\n\n // eslint-disable-next-line prefer-const\n let styleProps: Record<string, any> = {}; // Stocke les styles\n\n // Applique un curseur pointeur si un gestionnaire de clic est présent\n if (props.onClick && styleProps.cursor == undefined) {\n styleProps.cursor = 'pointer';\n }\n\n // Gère 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 setSize(size, styleProps); // Applique la taille\n }\n\n // Gère le padding et 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 // Applique les 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 = Color.hex\n .rgb(Shadows[shadowValue].shadowColor)\n .join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${Shadows[shadowValue].shadowOffset.height}px ${Shadows[shadowValue].shadowOffset.width}px ${Shadows[shadowValue].shadowRadius}px rgba(${shadowColor},${Shadows[shadowValue].shadowOpacity})`;\n }\n } else {\n const shadowColor = Color.hex.rgb(props.shadow.shadowColor).join(',');\n\n styleProps[\n 'boxShadow'\n ] = `${props.shadow.shadowOffset.height}px ${props.shadow.shadowOffset.width}px ${props.shadow.shadowRadius}px rgba(${shadowColor},${props.shadow.shadowOpacity})`;\n }\n delete props['shadow'];\n }\n\n // Gère les styles pour des médias spécifiques\n if (props.only) {\n const { only, ...newProps } = props;\n // eslint-disable-next-line prefer-const\n let onlyProps: any = {\n media: {},\n };\n\n only.map((o: string) => {\n if (onlyProps.media[o] == undefined) {\n onlyProps.media[o] = {};\n }\n });\n\n const styleKeys = Object.keys(newProps).filter((key) => isStyleProp(key));\n styleKeys.map((key: string) => {\n only.map((o: string) => {\n props.media[o][key] = newProps[key];\n });\n delete props[key];\n });\n delete props['only'];\n }\n\n // Gère les styles CSS personnalisés\n if (props.css) {\n const { css } = props;\n props = { ...css, props };\n delete props['css'];\n }\n\n // Applique les styles\n Object.keys(props).map((property) => {\n if (property !== 'shadow' && property !== 'size') {\n if (isStyleProp(property) || property == 'on' || property == 'media') {\n if (typeof props[property] === 'object') {\n if (property === 'on') {\n for (const event in props[property]) {\n styleProps['&:' + event] = applyStyle(props[property][event]);\n }\n } else if (property === 'media') {\n for (const screenOrDevices in props[property]) {\n if (\n mediaQueries[screenOrDevices] !== undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps['@media ' + mediaQueries[screenOrDevices]] =\n applyStyle(props[property][screenOrDevices]);\n } else if (devices[screenOrDevices] !== undefined) {\n for (const deviceScreen in devices[screenOrDevices]) {\n if (\n mediaQueries[devices[screenOrDevices][deviceScreen]] !==\n undefined &&\n props[property][screenOrDevices] !== undefined\n ) {\n styleProps[\n '@media ' +\n mediaQueries[devices[screenOrDevices][deviceScreen]]\n ] = applyStyle(props[property][screenOrDevices]);\n }\n }\n }\n }\n } else {\n styleProps[property] = applyStyle(props[property]);\n }\n } else if (\n typeof props[property] === 'number' &&\n NumberPropsStyle[property] === undefined\n ) {\n styleProps[property] = props[property] + 'px';\n } else if (property.toLowerCase().indexOf('color') !== -1) {\n styleProps[property] = getColor(props[property]);\n } else {\n styleProps[property] = props[property];\n }\n }\n }\n });\n\n return styleProps;\n};\n\n// Fonction pour filtrer les props qui ne sont pas des styles\nexport const getProps = (props: Record<string, any>) => {\n return Object.keys(props).reduce(\n (acc, key) => {\n if (!excludedKeys.has(key) && !isStyleProp(key)) {\n acc[key] = props[key];\n }\n return acc;\n },\n {} as { [key: string]: any }\n );\n};\n\n// Clés à exclure lors de la création du composant stylisé\nconst excludedKeys = new Set([\n 'on',\n 'shadow',\n 'only',\n 'media',\n 'css',\n 'paddingHorizontal',\n 'paddingVertical',\n 'marginHorizontal',\n 'marginVertical',\n]);\n\n// Crée un composant div stylisé, en excluant certaines props\nconst ElementComponent = styled.div.withConfig({\n shouldForwardProp: (prop) => isPropValid(prop),\n})`\n // Applique les styles dynamiques en utilisant la fonction applyStyle\n ${(props: any) => applyStyle(props)}\n`;\n\n// Classe Element étendant React.PureComponent pour optimiser les performances\nexport class Element extends React.PureComponent<ElementProps & any> {\n render() {\n // eslint-disable-next-line prefer-const\n let { onPress, ...props }: any = this.props;\n if (onPress) {\n props.onClick = onPress;\n }\n // Rendu du composant avec les props\n return <ElementComponent {...props} />;\n }\n}\n","import React from 'react';\nimport { Element, ElementProps } from './Element';\nimport { ViewStyleProps } from '../types/style';\nimport { CSSProperties } from 'styled-components';\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'>,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\n ElementProps {}\n\nexport const Image = React.memo((props: ImageProps) => (\n <Element {...props} as=\"img\" />\n));\n","import React from 'react';\nimport { CSSProperties } from 'styled-components';\nimport { Element, ElementProps } from './Element';\nimport { TextStyleProps } from '../types/style';\n\nexport interface TextProps\n extends Omit<TextStyleProps, 'children' | 'style' | 'pointerEvents'>,\n CSSProperties,\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 'styled-components';\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 | 'draggable'\n >,\n CSSProperties,\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<Partial<HTMLInputElement>, 'width' | 'height' | 'children'>,\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","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","Shadows","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","getValidCSSProperties","allProps","Object","document","body","style","nonStyleAttributes","Set","validProps","filter","prop","test","has","StyleProps","isStyleProp","property","defaultBreakpointsConfig","xs","sm","md","lg","xl","defaultDeviceConfig","mobile","tablet","desktop","getMediaQueries","b","defaultKeys","breakpointValue","map","breakpoint","min","max","sort","a","reduce","query","sizeScreen","defaultScreenConfig","breakpoints","devices","mediaQueries","ResponsiveContext","useResponsiveContext","ResponsiveProvider","NumberProps","NumberPropsStyle","forEach","setSize","newSize","styleProps","applyStyle","props","onClick","cursor","size","paddingHorizontal","paddingLeft","paddingRight","marginHorizontal","marginLeft","marginRight","paddingVertical","paddingTop","paddingBottom","marginVertical","marginTop","marginBottom","shadow","shadowValue","Color","hex","rgb","join","only","newProps","o","styleKeys","key","media","css","event","screenOrDevices","deviceScreen","toLowerCase","indexOf","getProps","acc","excludedKeys","ElementComponent","styled","div","withConfig","shouldForwardProp","isPropValid","Element","PureComponent","render","onPress","View","memo","Div","SafeArea","Scroll","overflow","Span","as","Image","Text","Form","Input","Button","Typography","letterSpacings","tighter","tight","normal","wide","wider","widest","lineHeights","fontWeights","hairline","thin","light","medium","semiBold","bold","extraBold","fontSizes","isBrowser","window","createElement","getWindowInitialProps","g_initialProps","isSSR","isDev","dev","location","hostname","isProd","includes","isMobile","navigator","userAgent","match","useMount","callback","useEffect","createQuery","keyScreen","set","mql","matchMedia","onChange","matches","addListener","removeListener","useResponsive","screen","setScreen","useState","orientation","setOrientation","screenSize","on","device","is","s"],"mappings":"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"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.30",
2
+ "version": "0.1.31",
3
3
  "name": "app-studio",
4
4
  "description": "App Studio is a responsive and themeable framework to build cross platform applications",
5
5
  "repository": "git@github.com:rize-network/app-studio.git",
@@ -125,6 +125,7 @@
125
125
  }
126
126
  ],
127
127
  "dependencies": {
128
+ "@emotion/is-prop-valid": "^1.2.1",
128
129
  "@emotion/unitless": "^0.8.1",
129
130
  "color-convert": "^2.0.1"
130
131
  }