@tamagui/web 1.8.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -155,10 +155,6 @@ function createTamagui(configIn) {
155
155
  })
156
156
  );
157
157
  const shorthands = configIn.shorthands || {};
158
- if (process.env.TAMAGUI_TARGET === "native") {
159
- shorthands.gapRow ?? (shorthands.gapRow = "rowGap");
160
- shorthands.gapColumn ?? (shorthands.gapColumn = "columnGap");
161
- }
162
158
  const config = {
163
159
  fontLanguages: [],
164
160
  animations: {},
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createTamagui.ts"],
4
- "sourcesContent": ["import { isRSC, isWeb } from '@tamagui/constants'\n\nimport { configListeners, setConfig } from './config.js'\nimport { createVariables, tokensKeysOrdered } from './createVariables.js'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules.js'\nimport {\n getAllRules,\n listenForSheetChanges,\n scanAllSheets,\n} from './helpers/insertStyleRule.js'\nimport {\n registerCSSVariable,\n tokensValueToVariable,\n variableToCSS,\n} from './helpers/registerCSSVariable.js'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'\nimport { configureMedia } from './hooks/useMedia.js'\nimport { parseFont, registerFontVariables } from './insertFont.js'\nimport { Tamagui } from './Tamagui.js'\nimport {\n CreateTamaguiProps,\n InferTamaguiConfig,\n TamaguiInternalConfig,\n ThemeParsed,\n} from './types.js'\n\n// config is re-run by the @tamagui/static, dont double validate\nconst createdConfigs = new WeakMap<any, boolean>()\n\nexport function createTamagui<Conf extends CreateTamaguiProps>(\n configIn: Conf\n): InferTamaguiConfig<Conf> {\n if (createdConfigs.has(configIn)) {\n return configIn as any\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (!configIn.tokens) {\n throw new Error('Must define tokens')\n }\n if (!configIn.themes) {\n throw new Error('Must define themes')\n }\n if (!configIn.fonts) {\n throw new Error('Must define fonts')\n }\n }\n\n scanAllSheets()\n listenForSheetChanges()\n\n const fontTokens = Object.fromEntries(\n Object.entries(configIn.fonts!).map(([k, v]) => {\n return [k, createVariables(v, 'f', true)]\n })\n )\n\n const fontsParsed = (() => {\n const res = {} as typeof fontTokens\n for (const familyName in fontTokens) {\n res[`$${familyName}`] = parseFont(fontTokens[familyName])\n }\n return res!\n })()\n\n const themeConfig = (() => {\n const themes = { ...configIn.themes }\n const cssRuleSets: string[] = []\n\n if (isWeb) {\n const declarations: string[] = []\n const fontDeclarations: Record<\n string,\n { name: string; declarations: string[]; language?: string }\n > = {}\n\n for (const key in configIn.tokens) {\n for (const skey in configIn.tokens[key]) {\n const val = configIn.tokens[key][skey]\n registerCSSVariable(val)\n declarations.push(variableToCSS(val, skey === 'zIndex'))\n }\n }\n\n for (const key in fontsParsed) {\n const fontParsed = fontsParsed[key]\n const [name, language] = key.includes('_') ? key.split('_') : [key]\n const fontVars = registerFontVariables(fontParsed)\n fontDeclarations[key] = {\n name: name.slice(1),\n declarations: fontVars,\n language,\n }\n }\n\n const sep =\n process.env.NODE_ENV === 'development' ? configIn.cssStyleSeparator || ' ' : ''\n\n function declarationsToRuleSet(decs: string[], selector = '') {\n return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`\n }\n\n // non-font\n cssRuleSets.push(declarationsToRuleSet(declarations))\n\n // fonts\n if (fontDeclarations) {\n for (const key in fontDeclarations) {\n const { name, declarations, language = 'default' } = fontDeclarations[key]\n const fontSelector = `.font_${name}`\n const langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`\n const selectors =\n language === 'default' ? ` ${fontSelector}, ${langSelector}` : langSelector\n const specificRuleSet = declarationsToRuleSet(declarations, selectors)\n cssRuleSets.push(specificRuleSet)\n }\n }\n }\n\n // dedupe themes to avoid duplicate CSS generation\n type DedupedTheme = {\n names: string[]\n theme: ThemeParsed\n }\n const dedupedThemes: {\n [key: string]: DedupedTheme\n } = {}\n const existing = new Map<string, DedupedTheme>()\n\n // first, de-dupe and parse them\n for (const themeName in themes) {\n const rawTheme = themes[themeName] as ThemeParsed\n // dont force referential equality but may need something more consistent than JSON.stringify\n const key = JSON.stringify(rawTheme)\n\n // if existing, avoid\n if (existing.has(key)) {\n const e = existing.get(key)!\n themes[themeName] = e.theme\n e.names.push(themeName)\n continue\n }\n\n // ensure each theme object unique for dedupe\n const theme = { ...rawTheme }\n // parse into variables\n for (const key in theme) {\n // make sure properly names theme variables\n ensureThemeVariable(theme, key)\n }\n themes[themeName] = theme\n\n // set deduped\n dedupedThemes[themeName] = {\n names: [themeName],\n theme,\n }\n\n existing.set(key, dedupedThemes[themeName])\n }\n\n // then, generate CSS from de-duped\n let themeRuleSets: string[] = []\n\n if (isWeb || isRSC) {\n for (const themeName in dedupedThemes) {\n themeRuleSets = [\n ...themeRuleSets,\n ...getThemeCSSRules({\n config: configIn,\n themeName,\n ...dedupedThemes[themeName],\n }),\n ]\n }\n }\n\n // proxy upwards to get parent variables (themes are subset going down)\n for (const themeName in themes) {\n themes[themeName] = proxyThemeToParents(themeName, themes[themeName], themes)\n }\n\n tokensValueToVariable.clear()\n\n return {\n themes,\n cssRuleSets,\n themeRuleSets,\n }\n })()\n\n // faster $lookups\n const tokensParsed: any = Object.fromEntries(\n Object.entries(configIn.tokens).map(([k, v]) => {\n const val = Object.fromEntries(Object.entries(v).map(([k, v]) => [`$${k}`, v]))\n tokensKeysOrdered.set(val, tokensKeysOrdered.get(v))\n return [k, val]\n })\n )\n\n const shorthands = configIn.shorthands || {}\n\n if (process.env.TAMAGUI_TARGET === 'native') {\n // abuse shorthands for remapping the native style gap keys\n shorthands.gapRow ??= 'rowGap'\n shorthands.gapColumn ??= 'columnGap'\n }\n\n const config: TamaguiInternalConfig = {\n fontLanguages: [],\n animations: {} as any,\n media: {},\n ...configIn,\n // already processed by createTokens()\n tokens: configIn.tokens as any,\n // vite made this into a function if it wasn't set\n shorthands: { ...shorthands },\n inverseShorthands: shorthands\n ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k]))\n : {},\n themes: themeConfig.themes as any,\n fontsParsed,\n themeConfig,\n tokensParsed,\n parsed: true,\n getCSS: (separator = '\\n') => {\n return `\n._ovs-contain {overscroll-behavior:contain;}\n.t_unmounted .t_will-mount {opacity:0;visibility:hidden;}\n.is_Text .is_Text {display:inline-flex;}\n._dsp_contents {display:contents;}\n${themeConfig.cssRuleSets.join(separator)}\n${themeConfig.themeRuleSets.join(separator)}\n${getAllRules().join(separator)}`\n },\n // const tokens = [...getToken(tokens.size[0])]\n // .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }\n }\n\n configureMedia(config)\n setConfig(config)\n\n if (configListeners.size) {\n configListeners.forEach((cb) => cb(config))\n configListeners.clear()\n }\n\n createdConfigs.set(config, true)\n\n if (process.env.NODE_ENV === 'development') {\n if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log('Tamagui config:', config)\n }\n if (!globalThis['Tamagui']) {\n globalThis['Tamagui'] = Tamagui\n }\n }\n\n return config as any\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA6B;AAE7B,oBAA2C;AAC3C,6BAAmD;AACnD,8BAAiC;AACjC,6BAIO;AACP,iCAIO;AACP,oBAAyD;AACzD,sBAA+B;AAC/B,wBAAiD;AACjD,qBAAwB;AASxB,MAAM,iBAAiB,oBAAI,QAAsB;AAE1C,SAAS,cACd,UAC0B;AA/B5B;AAgCE,MAAI,eAAe,IAAI,QAAQ,GAAG;AAChC,WAAO;AAAA,EACT;AAEA,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,CAAC,SAAS,QAAQ;AACpB,YAAM,IAAI,MAAM,oBAAoB;AAAA,IACtC;AACA,QAAI,CAAC,SAAS,QAAQ;AACpB,YAAM,IAAI,MAAM,oBAAoB;AAAA,IACtC;AACA,QAAI,CAAC,SAAS,OAAO;AACnB,YAAM,IAAI,MAAM,mBAAmB;AAAA,IACrC;AAAA,EACF;AAEA,4CAAc;AACd,oDAAsB;AAEtB,QAAM,aAAa,OAAO;AAAA,IACxB,OAAO,QAAQ,SAAS,KAAM,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM;AAC9C,aAAO,CAAC,OAAG,wCAAgB,GAAG,KAAK,IAAI,CAAC;AAAA,IAC1C,CAAC;AAAA,EACH;AAEA,QAAM,eAAe,MAAM;AACzB,UAAM,MAAM,CAAC;AACb,eAAW,cAAc,YAAY;AACnC,UAAI,IAAI,YAAY,QAAI,6BAAU,WAAW,UAAU,CAAC;AAAA,IAC1D;AACA,WAAO;AAAA,EACT,GAAG;AAEH,QAAM,eAAe,MAAM;AACzB,UAAM,SAAS,EAAE,GAAG,SAAS,OAAO;AACpC,UAAM,cAAwB,CAAC;AAE/B,QAAI,wBAAO;AA6BT,UAASA,yBAAT,SAA+B,MAAgB,WAAW,IAAI;AAC5D,eAAO,QAAQ,aAAa,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI;AAAA,MAChE;AAFS,kCAAAA;AA5BT,YAAM,eAAyB,CAAC;AAChC,YAAM,mBAGF,CAAC;AAEL,iBAAW,OAAO,SAAS,QAAQ;AACjC,mBAAW,QAAQ,SAAS,OAAO,GAAG,GAAG;AACvC,gBAAM,MAAM,SAAS,OAAO,GAAG,EAAE,IAAI;AACrC,8DAAoB,GAAG;AACvB,uBAAa,SAAK,0CAAc,KAAK,SAAS,QAAQ,CAAC;AAAA,QACzD;AAAA,MACF;AAEA,iBAAW,OAAO,aAAa;AAC7B,cAAM,aAAa,YAAY,GAAG;AAClC,cAAM,CAAC,MAAM,QAAQ,IAAI,IAAI,SAAS,GAAG,IAAI,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG;AAClE,cAAM,eAAW,yCAAsB,UAAU;AACjD,yBAAiB,GAAG,IAAI;AAAA,UACtB,MAAM,KAAK,MAAM,CAAC;AAAA,UAClB,cAAc;AAAA,UACd;AAAA,QACF;AAAA,MACF;AAEA,YAAM,MACJ,QAAQ,IAAI,aAAa,gBAAgB,SAAS,qBAAqB,MAAM;AAO/E,kBAAY,KAAKA,uBAAsB,YAAY,CAAC;AAGpD,UAAI,kBAAkB;AACpB,mBAAW,OAAO,kBAAkB;AAClC,gBAAM,EAAE,MAAM,cAAAC,eAAc,WAAW,UAAU,IAAI,iBAAiB,GAAG;AACzE,gBAAM,eAAe,SAAS;AAC9B,gBAAM,eAAe,iBAAiB,QAAQ,YAAY;AAC1D,gBAAM,YACJ,aAAa,YAAY,IAAI,iBAAiB,iBAAiB;AACjE,gBAAM,kBAAkBD,uBAAsBC,eAAc,SAAS;AACrE,sBAAY,KAAK,eAAe;AAAA,QAClC;AAAA,MACF;AAAA,IACF;AAOA,UAAM,gBAEF,CAAC;AACL,UAAM,WAAW,oBAAI,IAA0B;AAG/C,eAAW,aAAa,QAAQ;AAC9B,YAAM,WAAW,OAAO,SAAS;AAEjC,YAAM,MAAM,KAAK,UAAU,QAAQ;AAGnC,UAAI,SAAS,IAAI,GAAG,GAAG;AACrB,cAAM,IAAI,SAAS,IAAI,GAAG;AAC1B,eAAO,SAAS,IAAI,EAAE;AACtB,UAAE,MAAM,KAAK,SAAS;AACtB;AAAA,MACF;AAGA,YAAM,QAAQ,EAAE,GAAG,SAAS;AAE5B,iBAAWC,QAAO,OAAO;AAEvB,+CAAoB,OAAOA,IAAG;AAAA,MAChC;AACA,aAAO,SAAS,IAAI;AAGpB,oBAAc,SAAS,IAAI;AAAA,QACzB,OAAO,CAAC,SAAS;AAAA,QACjB;AAAA,MACF;AAEA,eAAS,IAAI,KAAK,cAAc,SAAS,CAAC;AAAA,IAC5C;AAGA,QAAI,gBAA0B,CAAC;AAE/B,QAAI,0BAAS,wBAAO;AAClB,iBAAW,aAAa,eAAe;AACrC,wBAAgB;AAAA,UACd,GAAG;AAAA,UACH,OAAG,0CAAiB;AAAA,YAClB,QAAQ;AAAA,YACR;AAAA,YACA,GAAG,cAAc,SAAS;AAAA,UAC5B,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAGA,eAAW,aAAa,QAAQ;AAC9B,aAAO,SAAS,QAAI,mCAAoB,WAAW,OAAO,SAAS,GAAG,MAAM;AAAA,IAC9E;AAEA,qDAAsB,MAAM;AAE5B,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,GAAG;AAGH,QAAM,eAAoB,OAAO;AAAA,IAC/B,OAAO,QAAQ,SAAS,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM;AAC9C,YAAM,MAAM,OAAO,YAAY,OAAO,QAAQ,CAAC,EAAE,IAAI,CAAC,CAACC,IAAGC,EAAC,MAAM,CAAC,IAAID,MAAKC,EAAC,CAAC,CAAC;AAC9E,+CAAkB,IAAI,KAAK,yCAAkB,IAAI,CAAC,CAAC;AACnD,aAAO,CAAC,GAAG,GAAG;AAAA,IAChB,CAAC;AAAA,EACH;AAEA,QAAM,aAAa,SAAS,cAAc,CAAC;AAE3C,MAAI,QAAQ,IAAI,mBAAmB,UAAU;AAE3C,eAAW,WAAX,WAAW,SAAW;AACtB,eAAW,cAAX,WAAW,YAAc;AAAA,EAC3B;AAEA,QAAM,SAAgC;AAAA,IACpC,eAAe,CAAC;AAAA,IAChB,YAAY,CAAC;AAAA,IACb,OAAO,CAAC;AAAA,IACR,GAAG;AAAA;AAAA,IAEH,QAAQ,SAAS;AAAA;AAAA,IAEjB,YAAY,EAAE,GAAG,WAAW;AAAA,IAC5B,mBAAmB,aACf,OAAO,YAAY,OAAO,QAAQ,UAAU,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IACrE,CAAC;AAAA,IACL,QAAQ,YAAY;AAAA,IACpB;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,QAAQ,CAAC,YAAY,SAAS;AAC5B,aAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAKX,YAAY,YAAY,KAAK,SAAS;AAAA,EACtC,YAAY,cAAc,KAAK,SAAS;AAAA,MACxC,oCAAY,EAAE,KAAK,SAAS;AAAA,IAC1B;AAAA;AAAA;AAAA,EAGF;AAEA,sCAAe,MAAM;AACrB,+BAAU,MAAM;AAEhB,MAAI,8BAAgB,MAAM;AACxB,kCAAgB,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1C,kCAAgB,MAAM;AAAA,EACxB;AAEA,iBAAe,IAAI,QAAQ,IAAI;AAE/B,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,SAAI,aAAQ,IAAI,UAAZ,mBAAmB,WAAW,YAAY;AAE5C,cAAQ,IAAI,mBAAmB,MAAM;AAAA,IACvC;AACA,QAAI,CAAC,WAAW,SAAS,GAAG;AAC1B,iBAAW,SAAS,IAAI;AAAA,IAC1B;AAAA,EACF;AAEA,SAAO;AACT;",
4
+ "sourcesContent": ["import { isRSC, isWeb } from '@tamagui/constants'\n\nimport { configListeners, setConfig } from './config.js'\nimport { createVariables, tokensKeysOrdered } from './createVariables.js'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules.js'\nimport {\n getAllRules,\n listenForSheetChanges,\n scanAllSheets,\n} from './helpers/insertStyleRule.js'\nimport {\n registerCSSVariable,\n tokensValueToVariable,\n variableToCSS,\n} from './helpers/registerCSSVariable.js'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'\nimport { configureMedia } from './hooks/useMedia.js'\nimport { parseFont, registerFontVariables } from './insertFont.js'\nimport { Tamagui } from './Tamagui.js'\nimport {\n CreateTamaguiProps,\n InferTamaguiConfig,\n TamaguiInternalConfig,\n ThemeParsed,\n} from './types.js'\n\n// config is re-run by the @tamagui/static, dont double validate\nconst createdConfigs = new WeakMap<any, boolean>()\n\nexport function createTamagui<Conf extends CreateTamaguiProps>(\n configIn: Conf\n): InferTamaguiConfig<Conf> {\n if (createdConfigs.has(configIn)) {\n return configIn as any\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (!configIn.tokens) {\n throw new Error('Must define tokens')\n }\n if (!configIn.themes) {\n throw new Error('Must define themes')\n }\n if (!configIn.fonts) {\n throw new Error('Must define fonts')\n }\n }\n\n scanAllSheets()\n listenForSheetChanges()\n\n const fontTokens = Object.fromEntries(\n Object.entries(configIn.fonts!).map(([k, v]) => {\n return [k, createVariables(v, 'f', true)]\n })\n )\n\n const fontsParsed = (() => {\n const res = {} as typeof fontTokens\n for (const familyName in fontTokens) {\n res[`$${familyName}`] = parseFont(fontTokens[familyName])\n }\n return res!\n })()\n\n const themeConfig = (() => {\n const themes = { ...configIn.themes }\n const cssRuleSets: string[] = []\n\n if (isWeb) {\n const declarations: string[] = []\n const fontDeclarations: Record<\n string,\n { name: string; declarations: string[]; language?: string }\n > = {}\n\n for (const key in configIn.tokens) {\n for (const skey in configIn.tokens[key]) {\n const val = configIn.tokens[key][skey]\n registerCSSVariable(val)\n declarations.push(variableToCSS(val, skey === 'zIndex'))\n }\n }\n\n for (const key in fontsParsed) {\n const fontParsed = fontsParsed[key]\n const [name, language] = key.includes('_') ? key.split('_') : [key]\n const fontVars = registerFontVariables(fontParsed)\n fontDeclarations[key] = {\n name: name.slice(1),\n declarations: fontVars,\n language,\n }\n }\n\n const sep =\n process.env.NODE_ENV === 'development' ? configIn.cssStyleSeparator || ' ' : ''\n\n function declarationsToRuleSet(decs: string[], selector = '') {\n return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`\n }\n\n // non-font\n cssRuleSets.push(declarationsToRuleSet(declarations))\n\n // fonts\n if (fontDeclarations) {\n for (const key in fontDeclarations) {\n const { name, declarations, language = 'default' } = fontDeclarations[key]\n const fontSelector = `.font_${name}`\n const langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`\n const selectors =\n language === 'default' ? ` ${fontSelector}, ${langSelector}` : langSelector\n const specificRuleSet = declarationsToRuleSet(declarations, selectors)\n cssRuleSets.push(specificRuleSet)\n }\n }\n }\n\n // dedupe themes to avoid duplicate CSS generation\n type DedupedTheme = {\n names: string[]\n theme: ThemeParsed\n }\n const dedupedThemes: {\n [key: string]: DedupedTheme\n } = {}\n const existing = new Map<string, DedupedTheme>()\n\n // first, de-dupe and parse them\n for (const themeName in themes) {\n const rawTheme = themes[themeName] as ThemeParsed\n // dont force referential equality but may need something more consistent than JSON.stringify\n const key = JSON.stringify(rawTheme)\n\n // if existing, avoid\n if (existing.has(key)) {\n const e = existing.get(key)!\n themes[themeName] = e.theme\n e.names.push(themeName)\n continue\n }\n\n // ensure each theme object unique for dedupe\n const theme = { ...rawTheme }\n // parse into variables\n for (const key in theme) {\n // make sure properly names theme variables\n ensureThemeVariable(theme, key)\n }\n themes[themeName] = theme\n\n // set deduped\n dedupedThemes[themeName] = {\n names: [themeName],\n theme,\n }\n\n existing.set(key, dedupedThemes[themeName])\n }\n\n // then, generate CSS from de-duped\n let themeRuleSets: string[] = []\n\n if (isWeb || isRSC) {\n for (const themeName in dedupedThemes) {\n themeRuleSets = [\n ...themeRuleSets,\n ...getThemeCSSRules({\n config: configIn,\n themeName,\n ...dedupedThemes[themeName],\n }),\n ]\n }\n }\n\n // proxy upwards to get parent variables (themes are subset going down)\n for (const themeName in themes) {\n themes[themeName] = proxyThemeToParents(themeName, themes[themeName], themes)\n }\n\n tokensValueToVariable.clear()\n\n return {\n themes,\n cssRuleSets,\n themeRuleSets,\n }\n })()\n\n // faster $lookups\n const tokensParsed: any = Object.fromEntries(\n Object.entries(configIn.tokens).map(([k, v]) => {\n const val = Object.fromEntries(Object.entries(v).map(([k, v]) => [`$${k}`, v]))\n tokensKeysOrdered.set(val, tokensKeysOrdered.get(v))\n return [k, val]\n })\n )\n\n const shorthands = configIn.shorthands || {}\n\n const config: TamaguiInternalConfig = {\n fontLanguages: [],\n animations: {} as any,\n media: {},\n ...configIn,\n // already processed by createTokens()\n tokens: configIn.tokens as any,\n // vite made this into a function if it wasn't set\n shorthands: { ...shorthands },\n inverseShorthands: shorthands\n ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k]))\n : {},\n themes: themeConfig.themes as any,\n fontsParsed,\n themeConfig,\n tokensParsed,\n parsed: true,\n getCSS: (separator = '\\n') => {\n return `\n._ovs-contain {overscroll-behavior:contain;}\n.t_unmounted .t_will-mount {opacity:0;visibility:hidden;}\n.is_Text .is_Text {display:inline-flex;}\n._dsp_contents {display:contents;}\n${themeConfig.cssRuleSets.join(separator)}\n${themeConfig.themeRuleSets.join(separator)}\n${getAllRules().join(separator)}`\n },\n // const tokens = [...getToken(tokens.size[0])]\n // .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }\n }\n\n configureMedia(config)\n setConfig(config)\n\n if (configListeners.size) {\n configListeners.forEach((cb) => cb(config))\n configListeners.clear()\n }\n\n createdConfigs.set(config, true)\n\n if (process.env.NODE_ENV === 'development') {\n if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log('Tamagui config:', config)\n }\n if (!globalThis['Tamagui']) {\n globalThis['Tamagui'] = Tamagui\n }\n }\n\n return config as any\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA6B;AAE7B,oBAA2C;AAC3C,6BAAmD;AACnD,8BAAiC;AACjC,6BAIO;AACP,iCAIO;AACP,oBAAyD;AACzD,sBAA+B;AAC/B,wBAAiD;AACjD,qBAAwB;AASxB,MAAM,iBAAiB,oBAAI,QAAsB;AAE1C,SAAS,cACd,UAC0B;AA/B5B;AAgCE,MAAI,eAAe,IAAI,QAAQ,GAAG;AAChC,WAAO;AAAA,EACT;AAEA,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,CAAC,SAAS,QAAQ;AACpB,YAAM,IAAI,MAAM,oBAAoB;AAAA,IACtC;AACA,QAAI,CAAC,SAAS,QAAQ;AACpB,YAAM,IAAI,MAAM,oBAAoB;AAAA,IACtC;AACA,QAAI,CAAC,SAAS,OAAO;AACnB,YAAM,IAAI,MAAM,mBAAmB;AAAA,IACrC;AAAA,EACF;AAEA,4CAAc;AACd,oDAAsB;AAEtB,QAAM,aAAa,OAAO;AAAA,IACxB,OAAO,QAAQ,SAAS,KAAM,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM;AAC9C,aAAO,CAAC,OAAG,wCAAgB,GAAG,KAAK,IAAI,CAAC;AAAA,IAC1C,CAAC;AAAA,EACH;AAEA,QAAM,eAAe,MAAM;AACzB,UAAM,MAAM,CAAC;AACb,eAAW,cAAc,YAAY;AACnC,UAAI,IAAI,YAAY,QAAI,6BAAU,WAAW,UAAU,CAAC;AAAA,IAC1D;AACA,WAAO;AAAA,EACT,GAAG;AAEH,QAAM,eAAe,MAAM;AACzB,UAAM,SAAS,EAAE,GAAG,SAAS,OAAO;AACpC,UAAM,cAAwB,CAAC;AAE/B,QAAI,wBAAO;AA6BT,UAASA,yBAAT,SAA+B,MAAgB,WAAW,IAAI;AAC5D,eAAO,QAAQ,aAAa,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI;AAAA,MAChE;AAFS,kCAAAA;AA5BT,YAAM,eAAyB,CAAC;AAChC,YAAM,mBAGF,CAAC;AAEL,iBAAW,OAAO,SAAS,QAAQ;AACjC,mBAAW,QAAQ,SAAS,OAAO,GAAG,GAAG;AACvC,gBAAM,MAAM,SAAS,OAAO,GAAG,EAAE,IAAI;AACrC,8DAAoB,GAAG;AACvB,uBAAa,SAAK,0CAAc,KAAK,SAAS,QAAQ,CAAC;AAAA,QACzD;AAAA,MACF;AAEA,iBAAW,OAAO,aAAa;AAC7B,cAAM,aAAa,YAAY,GAAG;AAClC,cAAM,CAAC,MAAM,QAAQ,IAAI,IAAI,SAAS,GAAG,IAAI,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG;AAClE,cAAM,eAAW,yCAAsB,UAAU;AACjD,yBAAiB,GAAG,IAAI;AAAA,UACtB,MAAM,KAAK,MAAM,CAAC;AAAA,UAClB,cAAc;AAAA,UACd;AAAA,QACF;AAAA,MACF;AAEA,YAAM,MACJ,QAAQ,IAAI,aAAa,gBAAgB,SAAS,qBAAqB,MAAM;AAO/E,kBAAY,KAAKA,uBAAsB,YAAY,CAAC;AAGpD,UAAI,kBAAkB;AACpB,mBAAW,OAAO,kBAAkB;AAClC,gBAAM,EAAE,MAAM,cAAAC,eAAc,WAAW,UAAU,IAAI,iBAAiB,GAAG;AACzE,gBAAM,eAAe,SAAS;AAC9B,gBAAM,eAAe,iBAAiB,QAAQ,YAAY;AAC1D,gBAAM,YACJ,aAAa,YAAY,IAAI,iBAAiB,iBAAiB;AACjE,gBAAM,kBAAkBD,uBAAsBC,eAAc,SAAS;AACrE,sBAAY,KAAK,eAAe;AAAA,QAClC;AAAA,MACF;AAAA,IACF;AAOA,UAAM,gBAEF,CAAC;AACL,UAAM,WAAW,oBAAI,IAA0B;AAG/C,eAAW,aAAa,QAAQ;AAC9B,YAAM,WAAW,OAAO,SAAS;AAEjC,YAAM,MAAM,KAAK,UAAU,QAAQ;AAGnC,UAAI,SAAS,IAAI,GAAG,GAAG;AACrB,cAAM,IAAI,SAAS,IAAI,GAAG;AAC1B,eAAO,SAAS,IAAI,EAAE;AACtB,UAAE,MAAM,KAAK,SAAS;AACtB;AAAA,MACF;AAGA,YAAM,QAAQ,EAAE,GAAG,SAAS;AAE5B,iBAAWC,QAAO,OAAO;AAEvB,+CAAoB,OAAOA,IAAG;AAAA,MAChC;AACA,aAAO,SAAS,IAAI;AAGpB,oBAAc,SAAS,IAAI;AAAA,QACzB,OAAO,CAAC,SAAS;AAAA,QACjB;AAAA,MACF;AAEA,eAAS,IAAI,KAAK,cAAc,SAAS,CAAC;AAAA,IAC5C;AAGA,QAAI,gBAA0B,CAAC;AAE/B,QAAI,0BAAS,wBAAO;AAClB,iBAAW,aAAa,eAAe;AACrC,wBAAgB;AAAA,UACd,GAAG;AAAA,UACH,OAAG,0CAAiB;AAAA,YAClB,QAAQ;AAAA,YACR;AAAA,YACA,GAAG,cAAc,SAAS;AAAA,UAC5B,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAGA,eAAW,aAAa,QAAQ;AAC9B,aAAO,SAAS,QAAI,mCAAoB,WAAW,OAAO,SAAS,GAAG,MAAM;AAAA,IAC9E;AAEA,qDAAsB,MAAM;AAE5B,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,GAAG;AAGH,QAAM,eAAoB,OAAO;AAAA,IAC/B,OAAO,QAAQ,SAAS,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM;AAC9C,YAAM,MAAM,OAAO,YAAY,OAAO,QAAQ,CAAC,EAAE,IAAI,CAAC,CAACC,IAAGC,EAAC,MAAM,CAAC,IAAID,MAAKC,EAAC,CAAC,CAAC;AAC9E,+CAAkB,IAAI,KAAK,yCAAkB,IAAI,CAAC,CAAC;AACnD,aAAO,CAAC,GAAG,GAAG;AAAA,IAChB,CAAC;AAAA,EACH;AAEA,QAAM,aAAa,SAAS,cAAc,CAAC;AAE3C,QAAM,SAAgC;AAAA,IACpC,eAAe,CAAC;AAAA,IAChB,YAAY,CAAC;AAAA,IACb,OAAO,CAAC;AAAA,IACR,GAAG;AAAA;AAAA,IAEH,QAAQ,SAAS;AAAA;AAAA,IAEjB,YAAY,EAAE,GAAG,WAAW;AAAA,IAC5B,mBAAmB,aACf,OAAO,YAAY,OAAO,QAAQ,UAAU,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IACrE,CAAC;AAAA,IACL,QAAQ,YAAY;AAAA,IACpB;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,QAAQ,CAAC,YAAY,SAAS;AAC5B,aAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAKX,YAAY,YAAY,KAAK,SAAS;AAAA,EACtC,YAAY,cAAc,KAAK,SAAS;AAAA,MACxC,oCAAY,EAAE,KAAK,SAAS;AAAA,IAC1B;AAAA;AAAA;AAAA,EAGF;AAEA,sCAAe,MAAM;AACrB,+BAAU,MAAM;AAEhB,MAAI,8BAAgB,MAAM;AACxB,kCAAgB,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1C,kCAAgB,MAAM;AAAA,EACxB;AAEA,iBAAe,IAAI,QAAQ,IAAI;AAE/B,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,SAAI,aAAQ,IAAI,UAAZ,mBAAmB,WAAW,YAAY;AAE5C,cAAQ,IAAI,mBAAmB,MAAM;AAAA,IACvC;AACA,QAAI,CAAC,WAAW,SAAS,GAAG;AAC1B,iBAAW,SAAS,IAAI;AAAA,IAC1B;AAAA,EACF;AAEA,SAAO;AACT;",
6
6
  "names": ["declarationsToRuleSet", "declarations", "key", "k", "v"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/types.tsx"],
4
- "sourcesContent": ["// TODO split this into own package @tamagui/types to share with animations packages\n\nimport type { StyleObject } from '@tamagui/helpers'\nimport type { Properties } from 'csstype'\nimport type {\n ComponentType,\n ForwardRefExoticComponent,\n FunctionComponent,\n HTMLAttributes,\n ReactNode,\n RefAttributes,\n RefObject,\n} from 'react'\nimport type {\n GestureResponderHandlers,\n PressableProps,\n TextProps as ReactTextProps,\n TextStyle,\n View,\n ViewProps,\n ViewStyle,\n} from 'react-native'\n\nimport type { Variable } from './createVariable.js'\nimport type { ResolveVariableTypes } from './helpers/createPropMapper.js'\nimport type { FontLanguageProps } from './views/FontLanguage.types.js'\nimport type { ThemeProviderProps } from './views/ThemeProvider.js'\n\nexport type { MediaStyleObject, StyleObject } from '@tamagui/helpers'\n\nexport type SpaceDirection = 'vertical' | 'horizontal' | 'both'\n\nexport type TamaguiElement = HTMLElement | View\n\nexport type DebugProp = boolean | 'break' | 'verbose'\n\n// base props that are accepted by createComponent (additional to react-native-web)\n\ntype DivAttributes = HTMLAttributes<HTMLDivElement>\n\nexport type TamaguiReactElement<P = any> = React.ReactElement<P> & {\n type: TamaguiComponent\n}\n\nexport type TamaguiComponentPropsBase = {\n target?: string\n hitSlop?: PressableProps['hitSlop']\n asChild?: boolean\n space?: SpaceTokens | null\n spaceDirection?: SpaceDirection\n separator?: ReactNode\n dangerouslySetInnerHTML?: { __html: string }\n animation?: AnimationProp | null\n animateOnly?: string[]\n children?: any | any[]\n debug?: DebugProp\n disabled?: boolean\n className?: string\n themeShallow?: boolean\n id?: string\n tag?: string\n theme?: ThemeName | null\n componentName?: string\n tabIndex?: string | number\n role?: string\n\n /**\n * Forces the pseudo style state to be on\n */\n forceStyle?: 'hover' | 'press' | 'focus'\n onPress?: PressableProps['onPress']\n onPressIn?: PressableProps['onPress']\n onPressOut?: PressableProps['onPress']\n\n // WEB ONLY TODO probably remove these in favor of something better\n onHoverIn?: DivAttributes['onMouseEnter']\n onHoverOut?: DivAttributes['onMouseLeave']\n onMouseEnter?: DivAttributes['onMouseEnter']\n onMouseLeave?: DivAttributes['onMouseLeave']\n onMouseDown?: DivAttributes['onMouseDown']\n onMouseUp?: DivAttributes['onMouseUp']\n onFocus?: (event: React.FocusEvent<HTMLDivElement>) => void\n onScroll?: (event: React.UIEvent<HTMLDivElement, UIEvent>) => void\n}\n\nexport type ReactComponentWithRef<Props, Ref> = ForwardRefExoticComponent<\n Props & RefAttributes<Ref>\n>\n\nexport type ConfigListener = (conf: TamaguiInternalConfig) => void\n\n// to prevent things from going circular, hoisting some types in this file\n// to generally order them as building up towards TamaguiConfig\n\nexport type VariableVal = number | string | Variable\nexport type VariableColorVal = string | Variable\n\ntype GenericKey = string\n\nexport interface CreateTokens<Val extends VariableVal = VariableVal> {\n color: { [key: GenericKey]: Val }\n space: { [key: GenericKey]: Val }\n size: { [key: GenericKey]: Val }\n radius: { [key: GenericKey]: Val }\n zIndex: { [key: GenericKey]: Val }\n}\n\ntype Tokenify<A extends GenericTokens> = {\n color: TokenifyRecord<A['color']>\n space: TokenifyRecord<A['space']>\n size: TokenifyRecord<A['size']>\n radius: TokenifyRecord<A['radius']>\n zIndex: TokenifyRecord<A['zIndex']>\n}\n\ntype TokenifyRecord<A extends CreateTokens[keyof CreateTokens]> = {\n [Key in keyof A]: A[Key] extends Variable ? A[Key] : Variable<A[Key]>\n}\n\nexport type TamaguiBaseTheme = {\n // defined for our tamagui kit , we could do this inside `tamagui`\n // but maybe helpful to have some sort of universally shared things +\n // + enforce if they want their own, redefine in their design sys\n background: VariableColorVal\n backgroundHover: VariableColorVal\n backgroundPress: VariableColorVal\n backgroundFocus: VariableColorVal\n color: VariableColorVal\n colorHover: VariableColorVal\n colorPress: VariableColorVal\n colorFocus: VariableColorVal\n borderColor: VariableColorVal\n borderColorHover: VariableColorVal\n borderColorPress: VariableColorVal\n borderColorFocus: VariableColorVal\n shadowColor: VariableColorVal\n shadowColorHover: VariableColorVal\n shadowColorPress: VariableColorVal\n shadowColorFocus: VariableColorVal\n}\n\ntype GenericTokens = CreateTokens\ntype GenericThemes = {\n [key: string]:\n | Partial<TamaguiBaseTheme> & {\n [key: string]: VariableVal\n }\n}\n\nexport type CreateShorthands = {\n // for some reason using keyof ViewStyle here will cause type circularity on react native 0.71\n [key: string]: string\n}\n\nexport type GenericShorthands = {}\n\n// sm: { minWidth: 100 }\ntype GenericMedia = {\n [key: string]: {\n [key: string]: number | string\n }\n}\n\nexport type GenericFonts = Record<string, GenericFont>\n\ntype GenericAnimations = {\n [key: string]:\n | string\n | {\n [key: string]: any\n }\n | any[]\n}\n\n// this is the \"main\" typed object, which users re-define\n// (internal) keep all types directly on this object and reference them from elsewhere\n//\n// const config = createTamagui(...)\n// type MyConfig = typeof config\n// declare module 'tamagui' {\n// export interface TamaguiCustomConfig extends MyConfig {}\n// }\n// now your whole app/kit should be typed correctly\n//\nexport interface TamaguiCustomConfig {}\n\nexport interface TamaguiConfig\n extends Omit<GenericTamaguiConfig, keyof TamaguiCustomConfig>,\n TamaguiCustomConfig {}\n\nexport type CreateTamaguiConfig<\n A extends GenericTokens,\n B extends GenericThemes,\n C extends GenericShorthands = GenericShorthands,\n D extends GenericMedia = GenericMedia,\n E extends GenericAnimations = GenericAnimations,\n F extends GenericFonts = GenericFonts\n> = {\n fonts: RemoveLanguagePostfixes<F>\n fontLanguages: GetLanguagePostfixes<F> extends never\n ? string[]\n : GetLanguagePostfixes<F>[]\n tokens: A\n // parsed\n themes: {\n [Name in keyof B]: {\n [Key in keyof B[Name]]: Variable\n }\n }\n shorthands: C\n media: D\n animations: AnimationDriver<E>\n}\n\ntype GetLanguagePostfix<Set> = Set extends string\n ? Set extends `${string}_${infer Postfix}`\n ? Postfix\n : never\n : never\n\ntype OmitLanguagePostfix<Set> = Set extends string\n ? Set extends `${infer Prefix}_${string}`\n ? Prefix\n : Set\n : never\n\ntype RemoveLanguagePostfixes<F extends GenericFonts> = {\n [Key in OmitLanguagePostfix<keyof F>]: F[Key]\n}\n\ntype GetLanguagePostfixes<F extends GenericFonts> = GetLanguagePostfix<keyof F>\n\n// test RemoveLanguagePostfixes\n// type x = CreateTamaguiConfig<any, any, any, any, any, {\n// body: any,\n// body_en: any\n// }>['fonts']\n\ntype ConfProps<\n A extends GenericTokens,\n B extends GenericThemes,\n C extends GenericShorthands = GenericShorthands,\n D extends GenericMedia = GenericMedia,\n E extends GenericAnimations = GenericAnimations,\n F extends GenericFonts = GenericFonts\n> = {\n tokens: A\n themes: B\n shorthands?: C\n media?: D\n animations?: AnimationDriver<E>\n fonts: F\n}\n\nexport type InferTamaguiConfig<Conf> = Conf extends ConfProps<\n infer A,\n infer B,\n infer C,\n infer D,\n infer E,\n infer F\n>\n ? TamaguiInternalConfig<A, B, C, D, E, F>\n : unknown\n\n// for use in creation functions so it doesnt get overwritten\nexport type GenericTamaguiConfig = CreateTamaguiConfig<\n GenericTokens,\n GenericThemes,\n GenericShorthands,\n GenericMedia,\n GenericAnimations,\n GenericFonts\n>\n\n// try and find the top level types as they can be supersets:\ntype NonSubThemeNames<A extends string | number> = A extends `${string}_${string}`\n ? never\n : A\ntype BaseThemeDefinitions = TamaguiConfig['themes'][NonSubThemeNames<\n keyof TamaguiConfig['themes']\n>]\ntype GenericThemeDefinition = TamaguiConfig['themes'][keyof TamaguiConfig['themes']]\nexport type ThemeDefinition = BaseThemeDefinitions extends never\n ? GenericThemeDefinition\n : BaseThemeDefinitions\nexport type ThemeKeys = keyof ThemeDefinition\nexport type ThemeParsed = {\n [key in ThemeKeys]: Variable<any>\n}\n\nexport type Tokens = TamaguiConfig['tokens']\n\nexport type TokensParsed = {\n size: TokenPrefixed<Tokens['size']>\n color: TokenPrefixed<Tokens['color']>\n radius: TokenPrefixed<Tokens['radius']>\n zIndex: TokenPrefixed<Tokens['zIndex']>\n space: TokenPrefixed<Tokens['space']>\n}\n\ntype TokenPrefixed<A extends { [key: string]: any }> = {\n [key in Ensure$Prefix<keyof A>]: A[keyof A]\n}\n\ntype Ensure$Prefix<A extends string | number | symbol> = A extends string\n ? A extends `$${string}`\n ? A\n : `$${A}`\n : never\n\nexport type TokensMerged = {\n size: TokensParsed['size'] & Tokens['size']\n color: TokensParsed['color'] & Tokens['color']\n radius: TokensParsed['radius'] & Tokens['radius']\n zIndex: TokensParsed['zIndex'] & Tokens['zIndex']\n space: TokensParsed['space'] & Tokens['space']\n}\n\nexport type Shorthands = TamaguiConfig['shorthands']\nexport type Media = TamaguiConfig['media']\nexport type Themes = TamaguiConfig['themes']\nexport type ThemeName = Exclude<GetAltThemeNames<keyof Themes>, number>\nexport type ThemeTokens = `$${ThemeKeys}`\nexport type AnimationKeys = TamaguiConfig['animations'] extends AnimationDriver<\n infer Config\n>\n ? keyof Config\n : string\nexport type FontLanguages = ArrayIntersection<TamaguiConfig['fontLanguages']>\n\nexport interface ThemeProps {\n className?: string\n name?: Exclude<ThemeName, number> | null\n componentName?: string\n children?: any\n reset?: boolean\n debug?: DebugProp\n inverse?: boolean\n // on the web, for portals we need to re-insert className\n forceClassName?: boolean\n // allows for disabling the auto-update behavior\n shouldUpdate?: () => boolean\n}\n\ntype ArrayIntersection<A extends any[]> = A[keyof A]\n\ntype GetAltThemeNames<S> =\n | (S extends `${string}_${infer Alt}` ? GetAltThemeNames<Alt> : S)\n | S\n\ntype SpacerPropsBase = {\n size?: number | SpaceTokens | null\n flex?: boolean | number\n direction?: SpaceDirection\n}\ntype SpacerOwnProps = SpacerPropsBase &\n //\n WithThemeShorthandsPseudosMediaAnimation<SpacerPropsBase>\n\nexport type SpacerProps = Omit<StackProps, 'flex' | 'direction' | 'size'> &\n //\n SpacerOwnProps\n\nexport type CreateTamaguiProps = {\n reactNative?: any\n shorthands?: CreateShorthands\n media?: GenericTamaguiConfig['media']\n animations?: AnimationDriver<any>\n fonts: GenericTamaguiConfig['fonts']\n tokens: GenericTamaguiConfig['tokens']\n themes: {\n [key: string]: {\n [key: string]: string | number | Variable\n }\n }\n\n /**\n * *Advanced use case* For all CSS extracted views, this has no effect.\n *\n * For SSR compatibility on the web, Tamagui will render once with the settings\n * from `mediaQueryDefaultActive` set for all media queries. Then, it will render\n * again after the initial render using the proper media query values. This is so that\n * hydration will match perfectly with the server.\n *\n * Setting disableSSR will avoid this second render by setting the media query state\n * to the actual browser dimensions on initial load. This is only useful for client-only\n * apps.\n *\n */\n disableSSR?: boolean\n\n /**\n * Disable inserting a theme class in the DOM or context, allowing you to manually place it higher.\n * For custom use cases like integration with next-theme.\n */\n disableRootThemeClass?: boolean\n\n defaultProps?: Record<string, any> & {\n Stack?: StackProps\n Text?: TextProps\n Spacer?: SpacerProps\n }\n\n // for the first render, determines which media queries are true\n // useful for SSR\n mediaQueryDefaultActive?: Record<MediaQueryKey, boolean>\n\n // what's between each CSS style rule, set to \"\\n\" to be easier to read\n // defaults: \"\\n\" when NODE_ENV=development, \"\" otherwise\n cssStyleSeparator?: string\n\n // (Advanced)\n // on the web, tamagui treats `dark` and `light` themes as special and\n // generates extra CSS to avoid having to re-render the entire page.\n // this CSS relies on specificity hacks that multiply by your sub-themes.\n // this sets the maxiumum number of nested dark/light themes you can do\n // defaults to 3 for a balance, but can be higher if you nest them deeply.\n maxDarkLightNesting?: number\n\n // adds @media(prefers-color-scheme) media queries for dark/light\n shouldAddPrefersColorThemes?: boolean\n\n // only if you put the theme classname on the html element we have to generate diff\n themeClassNameOnRoot?: boolean\n}\n\n// this is the config generated via createTamagui()\nexport type TamaguiInternalConfig<\n A extends GenericTokens = GenericTokens,\n B extends GenericThemes = GenericThemes,\n C extends GenericShorthands = GenericShorthands,\n D extends GenericMedia = GenericMedia,\n E extends GenericAnimations = GenericAnimations,\n F extends GenericFonts = GenericFonts\n> = Omit<CreateTamaguiProps, keyof GenericTamaguiConfig> &\n Omit<CreateTamaguiConfig<A, B, C, D, E, F>, 'tokens'> & {\n // TODO need to make it this but this breaks types, revisit\n // animations: E //AnimationDriver<E>\n // with $ prefixes for fast lookups (one time cost at startup vs every render)\n tokens: Tokenify<A>\n tokensParsed: Tokenify<A>\n themeConfig: any\n fontsParsed: GenericFonts\n getCSS: () => string\n parsed: boolean\n inverseShorthands: Record<string, string>\n reactNative?: any\n }\n\nexport type GetAnimationKeys<A extends GenericTamaguiConfig> = keyof A['animations']\n\n// prevents const intersections from being clobbered into string, keeping the consts\nexport type UnionableString = string & {}\nexport type UnionableNumber = number & {}\n\nexport type GenericFont<Key extends number | string = number | string> = {\n size: { [key in Key]: number | Variable }\n lineHeight: Partial<{ [key in Key]: number | Variable }>\n letterSpacing: Partial<{ [key in Key]: number | Variable }>\n weight: Partial<{ [key in Key]: number | string | Variable }>\n family: string | Variable\n style?: Partial<{ [key in Key]: TextStyle['fontStyle'] | Variable }>\n transform?: Partial<{ [key in Key]: TextStyle['textTransform'] | Variable }>\n color?: Partial<{ [key in Key]: string | Variable }>\n // for native use only, lets you map to alternative fonts\n face?: Partial<{\n [key in FontWeightSteps]: { normal?: string; italic?: string }\n }>\n}\n\n// media\nexport type MediaQueryObject = { [key: string]: string | number | string }\nexport type MediaQueryKey = keyof Media\nexport type MediaPropKeys = `$${MediaQueryKey}`\nexport type MediaQueryState = { [key in MediaQueryKey]: boolean }\nexport type MediaProps<A> = {\n [key in MediaPropKeys]?: A\n}\nexport type MediaQueries = {\n [key in MediaQueryKey]: MediaQueryObject\n}\n\nexport interface MediaQueryList {\n addListener(listener?: any): void\n removeListener(listener?: any): void\n matches: boolean\n}\n\nexport type MatchMedia = (query: string) => MediaQueryList\n\nexport type TransformStyleProps = {\n x?: number\n y?: number\n perspective?: number\n scale?: number\n scaleX?: number\n scaleY?: number\n skewX?: string\n skewY?: string\n matrix?: number[]\n rotate?: string\n rotateY?: string\n rotateX?: string\n rotateZ?: string\n}\n\n// createComponent props helpers\n\n// animation=\"bouncy\"\n// animation={['bouncy', { }]}\n// { all: 'name' }\n\n// TODO can override for better types\nexport type AnimationConfigType = any\n\nexport type AnimationProp =\n | AnimationKeys\n | {\n [key: string]:\n | AnimationKeys\n | {\n type: AnimationKeys\n [key: string]: any\n }\n }\n | [\n AnimationKeys,\n {\n [key: string]:\n | AnimationKeys\n | {\n type?: AnimationKeys\n [key: string]: any\n }\n }\n ]\n\ntype GetTokenFontKeysFor<\n A extends\n | 'size'\n | 'weight'\n | 'letterSpacing'\n | 'family'\n | 'lineHeight'\n | 'transform'\n | 'style'\n | 'color'\n> = keyof TamaguiConfig['fonts']['body'][A]\n\ntype GetTokenString<A> = A extends string | number ? `$${A}` : `$${string}`\n\n// base tokens\nexport type SizeTokens = GetTokenString<keyof Tokens['size']> | number\nexport type SpaceTokens = GetTokenString<keyof Tokens['space']> | number | boolean\n\nexport type ColorTokens =\n | GetTokenString<keyof Tokens['color']>\n | GetTokenString<keyof ThemeParsed>\n | CSSColorNames\nexport type ZIndexTokens = GetTokenString<keyof Tokens['zIndex']> | number\nexport type RadiusTokens = GetTokenString<keyof Tokens['radius']> | number\n\n// font tokens\nexport type FontTokens = GetTokenString<keyof TamaguiConfig['fonts']>\nexport type FontSizeTokens = GetTokenString<GetTokenFontKeysFor<'size'>> | number\nexport type FontLineHeightTokens = `$${GetTokenFontKeysFor<'lineHeight'>}` | number\nexport type FontWeightSteps = `${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}00`\nexport type FontWeightTokens = `$${GetTokenFontKeysFor<'weight'>}` | FontWeightSteps\nexport type FontColorTokens = `$${GetTokenFontKeysFor<'color'>}` | number\nexport type FontLetterSpacingTokens = `$${GetTokenFontKeysFor<'letterSpacing'>}` | number\nexport type FontStyleTokens = `$${GetTokenFontKeysFor<'style'>}` | TextStyle['fontStyle']\nexport type FontTransformTokens =\n | `$${GetTokenFontKeysFor<'transform'>}`\n | TextStyle['textTransform']\n\n//\n// adds theme short values to relevant props\n//\n\nexport type ThemeValueByCategory<K extends string | number | symbol> = K extends 'theme'\n ? ThemeTokens\n : K extends 'size'\n ? SizeTokens\n : K extends 'font'\n ? FontTokens\n : K extends 'fontSize'\n ? FontSizeTokens\n : K extends 'space'\n ? SpaceTokens\n : K extends 'color'\n ? ColorTokens\n : K extends 'zIndex'\n ? ZIndexTokens\n : K extends 'lineHeight'\n ? FontLineHeightTokens\n : K extends 'fontWeight'\n ? FontWeightTokens\n : K extends 'letterSpacing'\n ? FontLetterSpacingTokens\n : {}\n\ntype FontKeys = 'fontFamily'\ntype FontSizeKeys = 'fontSize'\ntype FontWeightKeys = 'fontWeight'\ntype FontLetterSpacingKeys = 'letterSpacing'\ntype LineHeightKeys = 'lineHeight'\ntype ZIndexKeys = 'zIndex'\n\nexport type ThemeValueGet<K extends string | number | symbol> = K extends 'theme'\n ? ThemeTokens\n : K extends SizeKeys\n ? SizeTokens\n : K extends FontKeys\n ? FontTokens\n : K extends FontSizeKeys\n ? FontSizeTokens\n : K extends `${`border${string | ''}Radius`}`\n ? RadiusTokens\n : K extends SpaceKeys\n ? K extends 'shadowOffset'\n ? { width: SpaceTokens; height: SpaceTokens }\n : SpaceTokens\n : K extends ColorKeys\n ? ColorTokens\n : K extends ZIndexKeys\n ? ZIndexTokens\n : K extends LineHeightKeys\n ? FontLineHeightTokens\n : K extends FontWeightKeys\n ? FontWeightTokens\n : K extends FontLetterSpacingKeys\n ? FontLetterSpacingTokens\n : never\n\nexport type ThemeValueFallback = UnionableString | Variable\n\nexport type WithThemeValues<T extends object> = {\n [K in keyof T]: ThemeValueGet<K> extends never\n ? T[K]\n : ThemeValueGet<K> | Exclude<T[K], string> | ThemeValueFallback\n}\n\n// adds shorthand props\nexport type WithShorthands<StyleProps> = {\n [Key in keyof Shorthands]?: Shorthands[Key] extends keyof StyleProps\n ? StyleProps[Shorthands[Key]] | null\n : undefined\n}\n\n// adds pseudo props\nexport type PseudoProps<A> = {\n hoverStyle?: A | null\n pressStyle?: A | null\n focusStyle?: A | null\n exitStyle?: A | null\n enterStyle?: A | null\n}\n\nexport type PseudoPropKeys = keyof PseudoProps<any>\n\nexport type PseudoStyles = {\n hoverStyle?: ViewStyle\n pressStyle?: ViewStyle\n focusStyle?: ViewStyle\n enterStyle?: ViewStyle\n exitStyle?: ViewStyle\n}\n\n//\n// add both theme and shorthands\n//\ntype WithThemeAndShorthands<A extends object> = WithThemeValues<A> &\n WithShorthands<WithThemeValues<A>>\n\n//\n// combines all of theme, shorthands, pseudos...\n//\ntype WithThemeShorthandsAndPseudos<A extends object> =\n | WithThemeAndShorthands<A> & PseudoProps<WithThemeAndShorthands<A>>\n\n//\n// ... media queries and animations\n//\ntype WithThemeShorthandsPseudosMediaAnimation<A extends object> =\n WithThemeShorthandsAndPseudos<A> & MediaProps<WithThemeShorthandsAndPseudos<A>>\n\n/**\n * Base style-only props (no media, pseudo):\n */\n\ntype SharedBaseExtraStyleProps = {\n pointerEvents?: ViewProps['pointerEvents']\n cursor?: Properties['cursor']\n contain?: Properties['contain']\n display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex'\n gap?: number | SpaceTokens\n gapColumn?: number | SpaceTokens\n gapRow?: number | SpaceTokens\n userSelect?: Properties['userSelect']\n outlineColor?: Properties['outlineColor']\n outlineStyle?: Properties['outlineStyle']\n outlineOffset?: Properties['outlineOffset']\n outlineWidth?: Properties['outlineWidth']\n}\n\nexport type StackStylePropsBase = Omit<\n ViewStyle,\n 'display' | 'backfaceVisibility' | 'elevation'\n> &\n TransformStyleProps &\n SharedBaseExtraStyleProps\n\nexport type TextStylePropsBase = Omit<TextStyle, 'display' | 'backfaceVisibility'> &\n TransformStyleProps &\n SharedBaseExtraStyleProps & {\n ellipse?: boolean\n textDecorationDistance?: number\n textOverflow?: Properties['textOverflow']\n whiteSpace?: Properties['whiteSpace']\n wordWrap?: Properties['wordWrap']\n }\n\nexport interface ExtendBaseStackProps {}\nexport interface ExtendsBaseTextProps {}\n\n//\n// Stack\n//\n\n// these are added back in by core\ntype OmitRemovedNonWebProps = 'onLayout' | keyof GestureResponderHandlers\n\nexport type StackNonStyleProps = Omit<\n ViewProps,\n 'display' | 'children' | OmitRemovedNonWebProps\n> &\n ExtendBaseStackProps &\n TamaguiComponentPropsBase\n\nexport type StackStyleProps =\n WithThemeShorthandsPseudosMediaAnimation<StackStylePropsBase>\nexport type StackPropsBase = StackNonStyleProps &\n WithThemeAndShorthands<StackStylePropsBase>\nexport type StackProps = StackNonStyleProps & StackStyleProps\n\n//\n// Text props\n//\n\nexport type TextNonStyleProps = Omit<\n ReactTextProps,\n 'children' | OmitRemovedNonWebProps\n> &\n ExtendsBaseTextProps &\n TamaguiComponentPropsBase\n\nexport type TextPropsBase = TextNonStyleProps & WithThemeAndShorthands<TextStylePropsBase>\n\nexport type TextStyleProps = WithThemeShorthandsPseudosMediaAnimation<TextStylePropsBase>\nexport type TextProps = TextNonStyleProps & TextStyleProps\n\n// could actually infer from parent\nexport type ViewOrTextProps = WithThemeShorthandsPseudosMediaAnimation<\n Omit<TextStylePropsBase, keyof StackStylePropsBase> & StackStylePropsBase\n>\n\n//\n// StaticComponent\n//\n\nexport type TamaguiComponent<\n Props = any,\n Ref = any,\n BaseProps = {},\n VariantProps = {}\n> = ReactComponentWithRef<Props, Ref> & StaticComponentObject\n\ntype StaticComponentObject = {\n staticConfig: StaticConfigParsed\n /*\n * Only needed for more complex components\n * If you create a styled frame component this is a HoC to extract\n * styles from all parents.\n */\n extractable: <X>(a: X, opts?: Partial<StaticConfig>) => X\n}\n\nexport type TamaguiProviderProps = Partial<Omit<ThemeProviderProps, 'children'>> & {\n config: TamaguiInternalConfig\n disableInjectCSS?: boolean\n children?: ReactNode\n}\n\nexport type PropMapper = (\n key: string,\n value: any,\n theme: ThemeParsed,\n props: Record<string, any>,\n state: Partial<SplitStyleState>,\n languageContext?: FontLanguageProps,\n avoidDefaultProps?: boolean,\n debug?: DebugProp\n) => undefined | [string, any][]\n\nexport type StaticConfigParsed = StaticConfig & {\n parsed: true\n propMapper: PropMapper\n variantsParsed?: {\n [key: string]: {\n [key: string]: any\n }\n }\n}\n\nexport type GenericVariantDefinitions = {\n [key: string]: {\n [key: string]:\n | ((a: any, b: any) => any)\n | {\n [key: string]: any\n }\n }\n}\n\nexport type StaticConfigPublic = {\n /**\n * (compiler) If you need to pass context or something, prevents from ever\n * flattening. The 'jsx' option means it will never flatten. if you\n * pass JSX as a children (if its purely string, it will still flatten).\n */\n neverFlatten?: boolean | 'jsx'\n\n /**\n * Determines ultimate output tag (Text vs View)\n */\n isText?: boolean\n\n /**\n * Which style keys are allowed to be extracted.\n */\n validStyles?: { [key: string]: boolean }\n\n /**\n * (compiler) If these props are encountered, bail on all optimization.\n */\n deoptProps?: Set<string>\n\n /**\n * (compiler) If these props are encountered, leave them un-extracted.\n */\n inlineProps?: Set<string>\n\n /**\n * (compiler) If not flattening, leave this prop as original value.\n * Only applies to style attributes\n */\n inlineWhenUnflattened?: Set<string>\n\n /**\n * (compiler) A bit odd, only for more advanced heirarchies.\n * Indicates that the component will set this prop so the\n * static extraction can ensure it sets them to ={undefined}\n * so they get overriddent. In the future, this can be smarter.\n */\n ensureOverriddenProp?: { [key: string]: boolean }\n\n /**\n * Auto-detected, but can ovverride. Wraps children to space them on top\n */\n isZStack?: boolean\n\n /**\n * Auto-detect, but can override, passes styles properly to react-native-web\n */\n isReactNative?: boolean\n\n /**\n * By default if styled() doesn't recognize a parent Tamagui compoent or specific react-native views,\n * it will assume the passed in component only accepts style={} for react-native compatibility.\n * Setting `acceptsClassName: true` indicates Tamagui can pass in className props.\n */\n acceptsClassName?: boolean\n}\n\ntype StaticConfigBase = StaticConfigPublic & {\n Component?: FunctionComponent<any> & StaticComponentObject\n\n variants?: GenericVariantDefinitions\n\n /**\n * Used for applying sub theme style\n */\n componentName?: string\n\n /**\n * Same as React.defaultProps, be sure to sync\n */\n defaultProps: Record<string, any>\n\n /**\n * Merges into defaultProps later on, used internally yonly\n */\n defaultVariants?: { [key: string]: any }\n\n /**\n * Memoize the component\n */\n memo?: boolean\n\n /**\n * Used insternally to attach default props to names\n */\n parentNames?: string[]\n\n /**\n * By default if styled() doesn't recognize a parent Tamagui compoent or specific react-native views,\n * it will assume the passed in component only accepts style={} for react-native compatibility.\n * Setting `acceptsClassName: true` indicates Tamagui can pass in className props.\n */\n acceptsClassName?: boolean\n\n /**\n * Used internally for handling focus\n */\n isInput?: boolean\n\n /**\n * Used internally for knowing how to handle when a HOC is in-between styled()\n */\n isHOC?: boolean\n}\n\nexport type StaticConfig = StaticConfigBase & {\n parentStaticConfig?: StaticConfigBase\n}\n\nexport type ViewStyleWithPseudos =\n | TextStyleProps\n | (TextStyleProps & {\n hoverStyle?: TextStyleProps\n pressStyle?: TextStyleProps\n focusStyle?: TextStyleProps\n })\n\n/**\n * --------------------------------------------\n * variants\n * --------------------------------------------\n */\n\nexport type StylableComponent =\n | TamaguiComponent\n // * excessively deep type instantiation\n // | TamaguiReactElement\n | ComponentType<any>\n | ForwardRefExoticComponent<any>\n | ReactComponentWithRef<any, any>\n | (new (props: any) => any)\n\nexport type GetStyledVariants<A extends TamaguiComponent> = A extends TamaguiComponent<\n any,\n any,\n any,\n infer Variants\n>\n ? Variants\n : never\n\nexport type GetBaseProps<A extends StylableComponent> = A extends TamaguiComponent<\n any,\n any,\n infer BaseProps\n>\n ? BaseProps\n : never\n\nexport type GetProps<A extends StylableComponent> = A extends TamaguiComponent<\n infer Props\n>\n ? Props\n : A extends TamaguiReactElement<infer Props>\n ? Props\n : A extends ComponentType<infer Props>\n ? GetGenericComponentTamaguiProps<Props>\n : A extends new (props: infer Props) => any\n ? GetGenericComponentTamaguiProps<Props>\n : {}\n\ntype GetGenericComponentTamaguiProps<P> = P &\n Omit<'textAlign' extends keyof P ? TextProps : StackProps, keyof P>\n\nexport type SpreadKeys =\n | '...fontSize'\n | '...fontStyle'\n | '...fontTransform'\n | '...lineHeight'\n | '...letterSpacing'\n | '...size'\n | '...space'\n | '...color'\n | '...zIndex'\n | '...theme'\n | '...radius'\n\nexport type VariantDefinitions<\n Parent extends StylableComponent = TamaguiComponent,\n MyProps extends Object = GetProps<Parent>,\n Val = any\n> = VariantDefinitionFromProps<MyProps, Val>\n\nexport type VariantDefinitionFromProps<MyProps, Val> = MyProps extends Object\n ? {\n [propName: string]:\n | VariantSpreadFunction<MyProps, Val>\n | ({\n [Key in SpreadKeys]?: Key extends '...fontSize'\n ? FontSizeVariantSpreadFunction<MyProps>\n : Key extends '...size'\n ? SizeVariantSpreadFunction<MyProps>\n : Key extends '...space'\n ? SpaceVariantSpreadFunction<MyProps>\n : Key extends '...color'\n ? ColorVariantSpreadFunction<MyProps>\n : Key extends '...lineHeight'\n ? FontLineHeightVariantSpreadFunction<MyProps>\n : Key extends '...fontTransform'\n ? FontTransformVariantSpreadFunction<MyProps>\n : Key extends '...fontStyle'\n ? FontStyleVariantSpreadFunction<MyProps>\n : Key extends '...letterSpacing'\n ? FontLetterSpacingVariantSpreadFunction<MyProps>\n : Key extends '...zIndex'\n ? ZIndexVariantSpreadFunction<MyProps>\n : Key extends '...radius'\n ? RadiusVariantSpreadFunction<MyProps>\n : Key extends '...theme'\n ? ThemeVariantSpreadFunction<MyProps>\n : never\n } & {\n [Key in string | number | 'true' | 'false']?:\n | MyProps\n | VariantSpreadFunction<MyProps, Val>\n } & {\n [Key in VariantTypeKeys]?: Key extends ':number'\n ? VariantSpreadFunction<MyProps, number>\n : Key extends ':boolean'\n ? VariantSpreadFunction<MyProps, boolean>\n : Key extends ':string'\n ? VariantSpreadFunction<MyProps, string>\n : never\n })\n }\n : never\n\nexport type GenericStackVariants = VariantDefinitionFromProps<StackProps, any>\nexport type GenericTextVariants = VariantDefinitionFromProps<StackProps, any>\n\nexport type GetVariantProps<Variants> = {\n [Key in keyof Variants]?: Variants[Key] extends VariantSpreadFunction<any, infer Val>\n ? Val\n : GetVariantValues<keyof Variants[Key]>\n}\n\nexport type VariantSpreadExtras<Props> = {\n fonts: TamaguiConfig['fonts']\n tokens: TamaguiConfig['tokens']\n theme: Themes extends { [key: string]: infer B } ? B : unknown\n props: Props\n}\n\ntype PropLike = { [key: string]: any }\n\nexport type VariantSpreadFunction<Props extends PropLike, Val = any> = (\n val: Val,\n config: VariantSpreadExtras<Props>\n) =>\n | {\n [Key in keyof Props]: Props[Key] | Variable\n }\n | null\n | undefined\n\nexport type VariantTypeKeys = ':string' | ':boolean' | ':number'\n\nexport type GetVariantValues<Key> = Key extends `...${infer VariantSpread}`\n ? ThemeValueByCategory<VariantSpread>\n : Key extends 'true' | 'false'\n ? boolean\n : Key extends ':string'\n ? string\n : Key extends ':boolean'\n ? boolean\n : Key extends ':number'\n ? number\n : Key\n\nexport type FontSizeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n FontSizeTokens\n>\nexport type SizeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n SizeTokens\n>\nexport type SpaceVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n SpaceTokens\n>\nexport type ColorVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n ColorTokens\n>\nexport type FontLineHeightVariantSpreadFunction<A extends PropLike> =\n VariantSpreadFunction<A, FontLineHeightTokens>\nexport type FontLetterSpacingVariantSpreadFunction<A extends PropLike> =\n VariantSpreadFunction<A, FontLetterSpacingTokens>\nexport type FontStyleVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n FontStyleTokens\n>\nexport type FontTransformVariantSpreadFunction<A extends PropLike> =\n VariantSpreadFunction<A, FontTransformTokens>\nexport type ZIndexVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n ZIndexTokens\n>\nexport type RadiusVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n RadiusTokens\n>\nexport type ThemeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n ThemeTokens\n>\n\n/**\n * --------------------------------------------\n * end variants\n * --------------------------------------------\n */\n\ntype SizeKeys =\n | 'width'\n | 'height'\n | 'minWidth'\n | 'minHeight'\n | 'maxWidth'\n | 'maxHeight'\n | 'shadowRadius'\n\ntype ColorKeys =\n | 'color'\n | 'backgroundColor'\n | 'borderColor'\n | 'borderBottomColor'\n | 'borderTopColor'\n | 'borderLeftColor'\n | 'borderRightColor'\n | 'shadowColor'\n | 'textShadowColor'\n\ntype SpaceKeys =\n | 'space'\n | 'padding'\n | 'paddingHorizontal'\n | 'paddingVertical'\n | 'paddingLeft'\n | 'paddingTop'\n | 'paddingBottom'\n | 'paddingLeft'\n | 'paddingRight'\n | 'paddingEnd'\n | 'paddingStart'\n | 'margin'\n | 'marginHorizontal'\n | 'marginVertical'\n | 'marginLeft'\n | 'marginTop'\n | 'marginBottom'\n | 'marginLeft'\n | 'marginRight'\n | 'marginEnd'\n | 'marginStart'\n | 'x'\n | 'y'\n | 'scale'\n | 'scaleX'\n | 'scaleY'\n | 'borderTopEndRadius'\n | 'borderTopLeftRadius'\n | 'borderTopRightRadius'\n | 'borderTopStartRadius'\n | 'borderBottomEndRadius'\n | 'borderBottomLeftRadius'\n | 'borderBottomRightRadius'\n | 'borderBottomStartRadius'\n | 'borderBottomWidth'\n | 'borderLeftWidth'\n | 'borderRadius'\n | 'borderRightWidth'\n | 'borderTopEndRadius'\n | 'borderTopLeftRadius'\n | 'borderTopRightRadius'\n | 'borderEndWidth'\n | 'borderStartWidth'\n | 'borderTopStartRadius'\n | 'borderTopWidth'\n | 'borderWidth'\n | 'left'\n | 'top'\n | 'right'\n | 'bottom'\n | 'shadowOffset'\n\ntype CSSColorNames =\n | 'aliceblue'\n | 'antiquewhite'\n | 'aqua'\n | 'aquamarine'\n | 'azure'\n | 'beige'\n | 'bisque'\n | 'black'\n | 'blanchedalmond'\n | 'blue'\n | 'blueviolet'\n | 'brown'\n | 'burlywood'\n | 'cadetblue'\n | 'chartreuse'\n | 'chocolate'\n | 'coral'\n | 'cornflowerblue'\n | 'cornsilk'\n | 'crimson'\n | 'cyan'\n | 'darkblue'\n | 'darkcyan'\n | 'darkgoldenrod'\n | 'darkgray'\n | 'darkgreen'\n | 'darkkhaki'\n | 'darkmagenta'\n | 'darkolivegreen'\n | 'darkorange'\n | 'darkorchid'\n | 'darkred'\n | 'darksalmon'\n | 'darkseagreen'\n | 'darkslateblue'\n | 'darkslategray'\n | 'darkturquoise'\n | 'darkviolet'\n | 'deeppink'\n | 'deepskyblue'\n | 'dimgray'\n | 'dodgerblue'\n | 'firebrick'\n | 'floralwhite'\n | 'forestgreen'\n | 'fuchsia'\n | 'gainsboro'\n | 'ghostwhite'\n | 'gold'\n | 'goldenrod'\n | 'gray'\n | 'green'\n | 'greenyellow'\n | 'honeydew'\n | 'hotpink'\n | 'indianred '\n | 'indigo '\n | 'ivory'\n | 'khaki'\n | 'lavender'\n | 'lavenderblush'\n | 'lawngreen'\n | 'lemonchiffon'\n | 'lightblue'\n | 'lightcoral'\n | 'lightcyan'\n | 'lightgoldenrodyellow'\n | 'lightgrey'\n | 'lightgreen'\n | 'lightpink'\n | 'lightsalmon'\n | 'lightseagreen'\n | 'lightskyblue'\n | 'lightslategray'\n | 'lightsteelblue'\n | 'lightyellow'\n | 'lime'\n | 'limegreen'\n | 'linen'\n | 'magenta'\n | 'maroon'\n | 'mediumaquamarine'\n | 'mediumblue'\n | 'mediumorchid'\n | 'mediumpurple'\n | 'mediumseagreen'\n | 'mediumslateblue'\n | 'mediumspringgreen'\n | 'mediumturquoise'\n | 'mediumvioletred'\n | 'midnightblue'\n | 'mintcream'\n | 'mistyrose'\n | 'moccasin'\n | 'navajowhite'\n | 'navy'\n | 'oldlace'\n | 'olive'\n | 'olivedrab'\n | 'orange'\n | 'orangered'\n | 'orchid'\n | 'palegoldenrod'\n | 'palegreen'\n | 'paleturquoise'\n | 'palevioletred'\n | 'papayawhip'\n | 'peachpuff'\n | 'peru'\n | 'pink'\n | 'plum'\n | 'powderblue'\n | 'purple'\n | 'red'\n | 'rosybrown'\n | 'royalblue'\n | 'saddlebrown'\n | 'salmon'\n | 'sandybrown'\n | 'seagreen'\n | 'seashell'\n | 'sienna'\n | 'silver'\n | 'skyblue'\n | 'slateblue'\n | 'slategray'\n | 'snow'\n | 'springgreen'\n | 'steelblue'\n | 'tan'\n | 'teal'\n | 'thistle'\n | 'tomato'\n | 'turquoise'\n | 'violet'\n | 'wheat'\n | 'white'\n | 'whitesmoke'\n | 'yellow'\n | 'yellowgreen'\n\nexport type TamaguiComponentState = {\n hover: boolean\n press: boolean\n pressIn: boolean\n focus: boolean\n unmounted: boolean\n animation?: null | {\n style?: any\n avoidClasses?: boolean\n }\n}\n\nexport type SplitStyleState = TamaguiComponentState & {\n mediaState?: Record<string, boolean>\n noClassNames?: boolean\n dynamicStylesInline?: boolean\n resolveVariablesAs?: ResolveVariableTypes\n fallbackProps?: Record<string, any>\n hasTextAncestor?: boolean\n\n // for animations\n isExiting?: boolean\n exitVariant?: string\n enterVariant?: string\n}\n\n// Presence\n\nexport interface PresenceContextProps {\n id: string\n isPresent: boolean\n register: (id: string) => () => void\n onExitComplete?: (id: string) => void\n initial?: false | string | string[]\n custom?: any\n exitVariant?: string | null\n enterVariant?: string | null\n}\n\ntype SafeToRemoveCallback = () => void\ntype AlwaysPresent = [true, null, null]\ntype Present = [true, undefined, PresenceContextProps]\ntype NotPresent = [false, SafeToRemoveCallback, PresenceContextProps]\n\nexport type UsePresenceResult = AlwaysPresent | Present | NotPresent\n\n// Animations:\n\ntype AnimationConfig = {\n [key: string]: any\n}\n\n// includes a very limited adapter between various impls for number => style\n// this is useful only in limited scenarios like `Sheet`, but necessary in those cases\n\nexport type AnimatedNumberStrategy =\n // only values shared between reanimated/react-native for now\n | {\n type: 'spring'\n stiffness?: number\n damping?: number\n mass?: number\n overshootClamping?: boolean\n restSpeedThreshold?: number\n restDisplacementThreshold?: number\n }\n | { type: 'timing'; duration: number }\n | { type: 'direct' }\n\nexport type UniversalAnimatedNumber<A> = {\n getInstance(): A\n getValue(): number\n setValue(next: number, config?: AnimatedNumberStrategy): void\n stop(): void\n}\n\nexport type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {\n isReactNative?: boolean\n useAnimations: UseAnimationHook\n usePresence: () => UsePresenceResult\n useAnimatedNumber: (initial: number) => UniversalAnimatedNumber<any>\n useAnimatedNumberStyle: <V extends UniversalAnimatedNumber<any>>(\n val: V,\n getStyle: (current: any) => any\n ) => any\n useAnimatedNumberReaction: (\n val: UniversalAnimatedNumber<any>,\n onValue: (current: number) => void\n ) => void\n animations: A\n View?: any\n Text?: any\n}\n\nexport type UseAnimationProps = TamaguiComponentPropsBase & Record<string, any>\n\nexport type UseAnimationHook = (props: {\n style: Record<string, any>\n props: Record<string, any>\n presence?: UsePresenceResult | null\n hostRef: RefObject<HTMLElement | View>\n staticConfig: StaticConfigParsed\n state: SplitStyleState\n pseudos: PseudoProps<ViewStyle> | null\n onDidAnimate?: any\n delay?: number\n}) => null | {\n style?: StackStylePropsBase | StackStylePropsBase[]\n}\n\nexport type GestureReponderEvent = Exclude<\n View['props']['onResponderMove'],\n void\n> extends (event: infer Event) => void\n ? Event\n : never\n\nexport type RulesToInsert = StyleObject[]\n\nexport type GetStyleResult = {\n pseudos?: PseudoStyles\n style: ViewStyle\n classNames: ClassNamesObject\n rulesToInsert: RulesToInsert\n viewProps: StackProps & Record<string, any>\n fontFamily: string | undefined\n space?: any // SpaceTokens?\n hasMedia: boolean | 'space'\n}\n\nexport type ClassNamesObject = Record<string, string>\n\nexport type TamaguiComponentEvents = {\n cancelable?: boolean | undefined\n disabled?: any\n hitSlop?: any\n delayLongPress?: any\n delayPressIn?: any\n delayPressOut?: any\n focusable?: any\n minPressDuration?: number | undefined\n onPressIn: ((e: any) => void) | undefined\n onPress: ((e: any) => void) | undefined\n onMouseEnter?: ((e: any) => void) | undefined\n onMouseLeave?: ((e: any) => void) | undefined\n onPressOut: ((e: any) => void) | undefined\n}\n"],
4
+ "sourcesContent": ["// TODO split this into own package @tamagui/types to share with animations packages\n\nimport type { StyleObject } from '@tamagui/helpers'\nimport type { Properties } from 'csstype'\nimport type {\n ComponentType,\n ForwardRefExoticComponent,\n FunctionComponent,\n HTMLAttributes,\n ReactNode,\n RefAttributes,\n RefObject,\n} from 'react'\nimport type {\n GestureResponderHandlers,\n PressableProps,\n TextProps as ReactTextProps,\n TextStyle,\n View,\n ViewProps,\n ViewStyle,\n} from 'react-native'\n\nimport type { Variable } from './createVariable.js'\nimport type { ResolveVariableTypes } from './helpers/createPropMapper.js'\nimport type { FontLanguageProps } from './views/FontLanguage.types.js'\nimport type { ThemeProviderProps } from './views/ThemeProvider.js'\n\nexport type { MediaStyleObject, StyleObject } from '@tamagui/helpers'\n\nexport type SpaceDirection = 'vertical' | 'horizontal' | 'both'\n\nexport type TamaguiElement = HTMLElement | View\n\nexport type DebugProp = boolean | 'break' | 'verbose'\n\n// base props that are accepted by createComponent (additional to react-native-web)\n\ntype DivAttributes = HTMLAttributes<HTMLDivElement>\n\nexport type TamaguiReactElement<P = any> = React.ReactElement<P> & {\n type: TamaguiComponent\n}\n\nexport type TamaguiComponentPropsBase = {\n target?: string\n hitSlop?: PressableProps['hitSlop']\n asChild?: boolean\n space?: SpaceTokens | null\n spaceDirection?: SpaceDirection\n separator?: ReactNode\n dangerouslySetInnerHTML?: { __html: string }\n animation?: AnimationProp | null\n animateOnly?: string[]\n children?: any | any[]\n debug?: DebugProp\n disabled?: boolean\n className?: string\n themeShallow?: boolean\n id?: string\n tag?: string\n theme?: ThemeName | null\n componentName?: string\n tabIndex?: string | number\n role?: string\n\n /**\n * Forces the pseudo style state to be on\n */\n forceStyle?: 'hover' | 'press' | 'focus'\n onPress?: PressableProps['onPress']\n onPressIn?: PressableProps['onPress']\n onPressOut?: PressableProps['onPress']\n\n // WEB ONLY TODO probably remove these in favor of something better\n onHoverIn?: DivAttributes['onMouseEnter']\n onHoverOut?: DivAttributes['onMouseLeave']\n onMouseEnter?: DivAttributes['onMouseEnter']\n onMouseLeave?: DivAttributes['onMouseLeave']\n onMouseDown?: DivAttributes['onMouseDown']\n onMouseUp?: DivAttributes['onMouseUp']\n onFocus?: (event: React.FocusEvent<HTMLDivElement>) => void\n onScroll?: (event: React.UIEvent<HTMLDivElement, UIEvent>) => void\n}\n\nexport type ReactComponentWithRef<Props, Ref> = ForwardRefExoticComponent<\n Props & RefAttributes<Ref>\n>\n\nexport type ConfigListener = (conf: TamaguiInternalConfig) => void\n\n// to prevent things from going circular, hoisting some types in this file\n// to generally order them as building up towards TamaguiConfig\n\nexport type VariableVal = number | string | Variable\nexport type VariableColorVal = string | Variable\n\ntype GenericKey = string\n\nexport interface CreateTokens<Val extends VariableVal = VariableVal> {\n color: { [key: GenericKey]: Val }\n space: { [key: GenericKey]: Val }\n size: { [key: GenericKey]: Val }\n radius: { [key: GenericKey]: Val }\n zIndex: { [key: GenericKey]: Val }\n}\n\ntype Tokenify<A extends GenericTokens> = {\n color: TokenifyRecord<A['color']>\n space: TokenifyRecord<A['space']>\n size: TokenifyRecord<A['size']>\n radius: TokenifyRecord<A['radius']>\n zIndex: TokenifyRecord<A['zIndex']>\n}\n\ntype TokenifyRecord<A extends CreateTokens[keyof CreateTokens]> = {\n [Key in keyof A]: A[Key] extends Variable ? A[Key] : Variable<A[Key]>\n}\n\nexport type TamaguiBaseTheme = {\n // defined for our tamagui kit , we could do this inside `tamagui`\n // but maybe helpful to have some sort of universally shared things +\n // + enforce if they want their own, redefine in their design sys\n background: VariableColorVal\n backgroundHover: VariableColorVal\n backgroundPress: VariableColorVal\n backgroundFocus: VariableColorVal\n color: VariableColorVal\n colorHover: VariableColorVal\n colorPress: VariableColorVal\n colorFocus: VariableColorVal\n borderColor: VariableColorVal\n borderColorHover: VariableColorVal\n borderColorPress: VariableColorVal\n borderColorFocus: VariableColorVal\n shadowColor: VariableColorVal\n shadowColorHover: VariableColorVal\n shadowColorPress: VariableColorVal\n shadowColorFocus: VariableColorVal\n}\n\ntype GenericTokens = CreateTokens\ntype GenericThemes = {\n [key: string]:\n | Partial<TamaguiBaseTheme> & {\n [key: string]: VariableVal\n }\n}\n\nexport type CreateShorthands = {\n // for some reason using keyof ViewStyle here will cause type circularity on react native 0.71\n [key: string]: string\n}\n\nexport type GenericShorthands = {}\n\n// sm: { minWidth: 100 }\ntype GenericMedia = {\n [key: string]: {\n [key: string]: number | string\n }\n}\n\nexport type GenericFonts = Record<string, GenericFont>\n\ntype GenericAnimations = {\n [key: string]:\n | string\n | {\n [key: string]: any\n }\n | any[]\n}\n\n// this is the \"main\" typed object, which users re-define\n// (internal) keep all types directly on this object and reference them from elsewhere\n//\n// const config = createTamagui(...)\n// type MyConfig = typeof config\n// declare module 'tamagui' {\n// export interface TamaguiCustomConfig extends MyConfig {}\n// }\n// now your whole app/kit should be typed correctly\n//\nexport interface TamaguiCustomConfig {}\n\nexport interface TamaguiConfig\n extends Omit<GenericTamaguiConfig, keyof TamaguiCustomConfig>,\n TamaguiCustomConfig {}\n\nexport type CreateTamaguiConfig<\n A extends GenericTokens,\n B extends GenericThemes,\n C extends GenericShorthands = GenericShorthands,\n D extends GenericMedia = GenericMedia,\n E extends GenericAnimations = GenericAnimations,\n F extends GenericFonts = GenericFonts\n> = {\n fonts: RemoveLanguagePostfixes<F>\n fontLanguages: GetLanguagePostfixes<F> extends never\n ? string[]\n : GetLanguagePostfixes<F>[]\n tokens: A\n // parsed\n themes: {\n [Name in keyof B]: {\n [Key in keyof B[Name]]: Variable\n }\n }\n shorthands: C\n media: D\n animations: AnimationDriver<E>\n}\n\ntype GetLanguagePostfix<Set> = Set extends string\n ? Set extends `${string}_${infer Postfix}`\n ? Postfix\n : never\n : never\n\ntype OmitLanguagePostfix<Set> = Set extends string\n ? Set extends `${infer Prefix}_${string}`\n ? Prefix\n : Set\n : never\n\ntype RemoveLanguagePostfixes<F extends GenericFonts> = {\n [Key in OmitLanguagePostfix<keyof F>]: F[Key]\n}\n\ntype GetLanguagePostfixes<F extends GenericFonts> = GetLanguagePostfix<keyof F>\n\n// test RemoveLanguagePostfixes\n// type x = CreateTamaguiConfig<any, any, any, any, any, {\n// body: any,\n// body_en: any\n// }>['fonts']\n\ntype ConfProps<\n A extends GenericTokens,\n B extends GenericThemes,\n C extends GenericShorthands = GenericShorthands,\n D extends GenericMedia = GenericMedia,\n E extends GenericAnimations = GenericAnimations,\n F extends GenericFonts = GenericFonts\n> = {\n tokens: A\n themes: B\n shorthands?: C\n media?: D\n animations?: AnimationDriver<E>\n fonts: F\n}\n\nexport type InferTamaguiConfig<Conf> = Conf extends ConfProps<\n infer A,\n infer B,\n infer C,\n infer D,\n infer E,\n infer F\n>\n ? TamaguiInternalConfig<A, B, C, D, E, F>\n : unknown\n\n// for use in creation functions so it doesnt get overwritten\nexport type GenericTamaguiConfig = CreateTamaguiConfig<\n GenericTokens,\n GenericThemes,\n GenericShorthands,\n GenericMedia,\n GenericAnimations,\n GenericFonts\n>\n\n// try and find the top level types as they can be supersets:\ntype NonSubThemeNames<A extends string | number> = A extends `${string}_${string}`\n ? never\n : A\ntype BaseThemeDefinitions = TamaguiConfig['themes'][NonSubThemeNames<\n keyof TamaguiConfig['themes']\n>]\ntype GenericThemeDefinition = TamaguiConfig['themes'][keyof TamaguiConfig['themes']]\nexport type ThemeDefinition = BaseThemeDefinitions extends never\n ? GenericThemeDefinition\n : BaseThemeDefinitions\nexport type ThemeKeys = keyof ThemeDefinition\nexport type ThemeParsed = {\n [key in ThemeKeys]: Variable<any>\n}\n\nexport type Tokens = TamaguiConfig['tokens']\n\nexport type TokensParsed = {\n size: TokenPrefixed<Tokens['size']>\n color: TokenPrefixed<Tokens['color']>\n radius: TokenPrefixed<Tokens['radius']>\n zIndex: TokenPrefixed<Tokens['zIndex']>\n space: TokenPrefixed<Tokens['space']>\n}\n\ntype TokenPrefixed<A extends { [key: string]: any }> = {\n [key in Ensure$Prefix<keyof A>]: A[keyof A]\n}\n\ntype Ensure$Prefix<A extends string | number | symbol> = A extends string\n ? A extends `$${string}`\n ? A\n : `$${A}`\n : never\n\nexport type TokensMerged = {\n size: TokensParsed['size'] & Tokens['size']\n color: TokensParsed['color'] & Tokens['color']\n radius: TokensParsed['radius'] & Tokens['radius']\n zIndex: TokensParsed['zIndex'] & Tokens['zIndex']\n space: TokensParsed['space'] & Tokens['space']\n}\n\nexport type Shorthands = TamaguiConfig['shorthands']\nexport type Media = TamaguiConfig['media']\nexport type Themes = TamaguiConfig['themes']\nexport type ThemeName = Exclude<GetAltThemeNames<keyof Themes>, number>\nexport type ThemeTokens = `$${ThemeKeys}`\nexport type AnimationKeys = TamaguiConfig['animations'] extends AnimationDriver<\n infer Config\n>\n ? keyof Config\n : string\nexport type FontLanguages = ArrayIntersection<TamaguiConfig['fontLanguages']>\n\nexport interface ThemeProps {\n className?: string\n name?: Exclude<ThemeName, number> | null\n componentName?: string\n children?: any\n reset?: boolean\n debug?: DebugProp\n inverse?: boolean\n // on the web, for portals we need to re-insert className\n forceClassName?: boolean\n // allows for disabling the auto-update behavior\n shouldUpdate?: () => boolean\n}\n\ntype ArrayIntersection<A extends any[]> = A[keyof A]\n\ntype GetAltThemeNames<S> =\n | (S extends `${string}_${infer Alt}` ? GetAltThemeNames<Alt> : S)\n | S\n\ntype SpacerPropsBase = {\n size?: number | SpaceTokens | null\n flex?: boolean | number\n direction?: SpaceDirection\n}\ntype SpacerOwnProps = SpacerPropsBase &\n //\n WithThemeShorthandsPseudosMediaAnimation<SpacerPropsBase>\n\nexport type SpacerProps = Omit<StackProps, 'flex' | 'direction' | 'size'> &\n //\n SpacerOwnProps\n\nexport type CreateTamaguiProps = {\n reactNative?: any\n shorthands?: CreateShorthands\n media?: GenericTamaguiConfig['media']\n animations?: AnimationDriver<any>\n fonts: GenericTamaguiConfig['fonts']\n tokens: GenericTamaguiConfig['tokens']\n themes: {\n [key: string]: {\n [key: string]: string | number | Variable\n }\n }\n\n /**\n * *Advanced use case* For all CSS extracted views, this has no effect.\n *\n * For SSR compatibility on the web, Tamagui will render once with the settings\n * from `mediaQueryDefaultActive` set for all media queries. Then, it will render\n * again after the initial render using the proper media query values. This is so that\n * hydration will match perfectly with the server.\n *\n * Setting disableSSR will avoid this second render by setting the media query state\n * to the actual browser dimensions on initial load. This is only useful for client-only\n * apps.\n *\n */\n disableSSR?: boolean\n\n /**\n * Disable inserting a theme class in the DOM or context, allowing you to manually place it higher.\n * For custom use cases like integration with next-theme.\n */\n disableRootThemeClass?: boolean\n\n defaultProps?: Record<string, any> & {\n Stack?: StackProps\n Text?: TextProps\n Spacer?: SpacerProps\n }\n\n // for the first render, determines which media queries are true\n // useful for SSR\n mediaQueryDefaultActive?: Record<MediaQueryKey, boolean>\n\n // what's between each CSS style rule, set to \"\\n\" to be easier to read\n // defaults: \"\\n\" when NODE_ENV=development, \"\" otherwise\n cssStyleSeparator?: string\n\n // (Advanced)\n // on the web, tamagui treats `dark` and `light` themes as special and\n // generates extra CSS to avoid having to re-render the entire page.\n // this CSS relies on specificity hacks that multiply by your sub-themes.\n // this sets the maxiumum number of nested dark/light themes you can do\n // defaults to 3 for a balance, but can be higher if you nest them deeply.\n maxDarkLightNesting?: number\n\n // adds @media(prefers-color-scheme) media queries for dark/light\n shouldAddPrefersColorThemes?: boolean\n\n // only if you put the theme classname on the html element we have to generate diff\n themeClassNameOnRoot?: boolean\n}\n\n// this is the config generated via createTamagui()\nexport type TamaguiInternalConfig<\n A extends GenericTokens = GenericTokens,\n B extends GenericThemes = GenericThemes,\n C extends GenericShorthands = GenericShorthands,\n D extends GenericMedia = GenericMedia,\n E extends GenericAnimations = GenericAnimations,\n F extends GenericFonts = GenericFonts\n> = Omit<CreateTamaguiProps, keyof GenericTamaguiConfig> &\n Omit<CreateTamaguiConfig<A, B, C, D, E, F>, 'tokens'> & {\n // TODO need to make it this but this breaks types, revisit\n // animations: E //AnimationDriver<E>\n // with $ prefixes for fast lookups (one time cost at startup vs every render)\n tokens: Tokenify<A>\n tokensParsed: Tokenify<A>\n themeConfig: any\n fontsParsed: GenericFonts\n getCSS: () => string\n parsed: boolean\n inverseShorthands: Record<string, string>\n reactNative?: any\n }\n\nexport type GetAnimationKeys<A extends GenericTamaguiConfig> = keyof A['animations']\n\n// prevents const intersections from being clobbered into string, keeping the consts\nexport type UnionableString = string & {}\nexport type UnionableNumber = number & {}\n\nexport type GenericFont<Key extends number | string = number | string> = {\n size: { [key in Key]: number | Variable }\n lineHeight: Partial<{ [key in Key]: number | Variable }>\n letterSpacing: Partial<{ [key in Key]: number | Variable }>\n weight: Partial<{ [key in Key]: number | string | Variable }>\n family: string | Variable\n style?: Partial<{ [key in Key]: TextStyle['fontStyle'] | Variable }>\n transform?: Partial<{ [key in Key]: TextStyle['textTransform'] | Variable }>\n color?: Partial<{ [key in Key]: string | Variable }>\n // for native use only, lets you map to alternative fonts\n face?: Partial<{\n [key in FontWeightSteps]: { normal?: string; italic?: string }\n }>\n}\n\n// media\nexport type MediaQueryObject = { [key: string]: string | number | string }\nexport type MediaQueryKey = keyof Media\nexport type MediaPropKeys = `$${MediaQueryKey}`\nexport type MediaQueryState = { [key in MediaQueryKey]: boolean }\nexport type MediaProps<A> = {\n [key in MediaPropKeys]?: A\n}\nexport type MediaQueries = {\n [key in MediaQueryKey]: MediaQueryObject\n}\n\nexport interface MediaQueryList {\n addListener(listener?: any): void\n removeListener(listener?: any): void\n matches: boolean\n}\n\nexport type MatchMedia = (query: string) => MediaQueryList\n\nexport type TransformStyleProps = {\n x?: number\n y?: number\n perspective?: number\n scale?: number\n scaleX?: number\n scaleY?: number\n skewX?: string\n skewY?: string\n matrix?: number[]\n rotate?: string\n rotateY?: string\n rotateX?: string\n rotateZ?: string\n}\n\n// createComponent props helpers\n\n// animation=\"bouncy\"\n// animation={['bouncy', { }]}\n// { all: 'name' }\n\n// TODO can override for better types\nexport type AnimationConfigType = any\n\nexport type AnimationProp =\n | AnimationKeys\n | {\n [key: string]:\n | AnimationKeys\n | {\n type: AnimationKeys\n [key: string]: any\n }\n }\n | [\n AnimationKeys,\n {\n [key: string]:\n | AnimationKeys\n | {\n type?: AnimationKeys\n [key: string]: any\n }\n }\n ]\n\ntype GetTokenFontKeysFor<\n A extends\n | 'size'\n | 'weight'\n | 'letterSpacing'\n | 'family'\n | 'lineHeight'\n | 'transform'\n | 'style'\n | 'color'\n> = keyof TamaguiConfig['fonts']['body'][A]\n\ntype GetTokenString<A> = A extends string | number ? `$${A}` : `$${string}`\n\n// base tokens\nexport type SizeTokens = GetTokenString<keyof Tokens['size']> | number\nexport type SpaceTokens = GetTokenString<keyof Tokens['space']> | number | boolean\n\nexport type ColorTokens =\n | GetTokenString<keyof Tokens['color']>\n | GetTokenString<keyof ThemeParsed>\n | CSSColorNames\nexport type ZIndexTokens = GetTokenString<keyof Tokens['zIndex']> | number\nexport type RadiusTokens = GetTokenString<keyof Tokens['radius']> | number\n\n// font tokens\nexport type FontTokens = GetTokenString<keyof TamaguiConfig['fonts']>\nexport type FontSizeTokens = GetTokenString<GetTokenFontKeysFor<'size'>> | number\nexport type FontLineHeightTokens = `$${GetTokenFontKeysFor<'lineHeight'>}` | number\nexport type FontWeightSteps = `${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}00`\nexport type FontWeightTokens = `$${GetTokenFontKeysFor<'weight'>}` | FontWeightSteps\nexport type FontColorTokens = `$${GetTokenFontKeysFor<'color'>}` | number\nexport type FontLetterSpacingTokens = `$${GetTokenFontKeysFor<'letterSpacing'>}` | number\nexport type FontStyleTokens = `$${GetTokenFontKeysFor<'style'>}` | TextStyle['fontStyle']\nexport type FontTransformTokens =\n | `$${GetTokenFontKeysFor<'transform'>}`\n | TextStyle['textTransform']\n\n//\n// adds theme short values to relevant props\n//\n\nexport type ThemeValueByCategory<K extends string | number | symbol> = K extends 'theme'\n ? ThemeTokens\n : K extends 'size'\n ? SizeTokens\n : K extends 'font'\n ? FontTokens\n : K extends 'fontSize'\n ? FontSizeTokens\n : K extends 'space'\n ? SpaceTokens\n : K extends 'color'\n ? ColorTokens\n : K extends 'zIndex'\n ? ZIndexTokens\n : K extends 'lineHeight'\n ? FontLineHeightTokens\n : K extends 'fontWeight'\n ? FontWeightTokens\n : K extends 'letterSpacing'\n ? FontLetterSpacingTokens\n : {}\n\ntype FontKeys = 'fontFamily'\ntype FontSizeKeys = 'fontSize'\ntype FontWeightKeys = 'fontWeight'\ntype FontLetterSpacingKeys = 'letterSpacing'\ntype LineHeightKeys = 'lineHeight'\ntype ZIndexKeys = 'zIndex'\n\nexport type ThemeValueGet<K extends string | number | symbol> = K extends 'theme'\n ? ThemeTokens\n : K extends SizeKeys\n ? SizeTokens\n : K extends FontKeys\n ? FontTokens\n : K extends FontSizeKeys\n ? FontSizeTokens\n : K extends `${`border${string | ''}Radius`}`\n ? RadiusTokens\n : K extends SpaceKeys\n ? K extends 'shadowOffset'\n ? { width: SpaceTokens; height: SpaceTokens }\n : SpaceTokens\n : K extends ColorKeys\n ? ColorTokens\n : K extends ZIndexKeys\n ? ZIndexTokens\n : K extends LineHeightKeys\n ? FontLineHeightTokens\n : K extends FontWeightKeys\n ? FontWeightTokens\n : K extends FontLetterSpacingKeys\n ? FontLetterSpacingTokens\n : never\n\nexport type ThemeValueFallback = UnionableString | Variable\n\nexport type WithThemeValues<T extends object> = {\n [K in keyof T]: ThemeValueGet<K> extends never\n ? T[K]\n : ThemeValueGet<K> | Exclude<T[K], string> | ThemeValueFallback\n}\n\n// adds shorthand props\nexport type WithShorthands<StyleProps> = {\n [Key in keyof Shorthands]?: Shorthands[Key] extends keyof StyleProps\n ? StyleProps[Shorthands[Key]] | null\n : undefined\n}\n\n// adds pseudo props\nexport type PseudoProps<A> = {\n hoverStyle?: A | null\n pressStyle?: A | null\n focusStyle?: A | null\n exitStyle?: A | null\n enterStyle?: A | null\n}\n\nexport type PseudoPropKeys = keyof PseudoProps<any>\n\nexport type PseudoStyles = {\n hoverStyle?: ViewStyle\n pressStyle?: ViewStyle\n focusStyle?: ViewStyle\n enterStyle?: ViewStyle\n exitStyle?: ViewStyle\n}\n\n//\n// add both theme and shorthands\n//\ntype WithThemeAndShorthands<A extends object> = WithThemeValues<A> &\n WithShorthands<WithThemeValues<A>>\n\n//\n// combines all of theme, shorthands, pseudos...\n//\ntype WithThemeShorthandsAndPseudos<A extends object> =\n | WithThemeAndShorthands<A> & PseudoProps<WithThemeAndShorthands<A>>\n\n//\n// ... media queries and animations\n//\ntype WithThemeShorthandsPseudosMediaAnimation<A extends object> =\n WithThemeShorthandsAndPseudos<A> & MediaProps<WithThemeShorthandsAndPseudos<A>>\n\n/**\n * Base style-only props (no media, pseudo):\n */\n\ntype SharedBaseExtraStyleProps = {\n pointerEvents?: ViewProps['pointerEvents']\n cursor?: Properties['cursor']\n contain?: Properties['contain']\n display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex'\n gap?: number | SpaceTokens\n columnGap?: number | SpaceTokens\n rowGap?: number | SpaceTokens\n userSelect?: Properties['userSelect']\n outlineColor?: Properties['outlineColor']\n outlineStyle?: Properties['outlineStyle']\n outlineOffset?: Properties['outlineOffset']\n outlineWidth?: Properties['outlineWidth']\n}\n\ntype OverrideRNStyleProps =\n | 'display'\n | 'backfaceVisibility'\n | 'elevation'\n | 'gap'\n | 'columnGap'\n | 'rowGap'\n\nexport type StackStylePropsBase = Omit<ViewStyle, OverrideRNStyleProps> &\n TransformStyleProps &\n SharedBaseExtraStyleProps\n\nexport type TextStylePropsBase = Omit<TextStyle, OverrideRNStyleProps> &\n TransformStyleProps &\n SharedBaseExtraStyleProps & {\n ellipse?: boolean\n textDecorationDistance?: number\n textOverflow?: Properties['textOverflow']\n whiteSpace?: Properties['whiteSpace']\n wordWrap?: Properties['wordWrap']\n }\n\nexport interface ExtendBaseStackProps {}\nexport interface ExtendsBaseTextProps {}\n\n//\n// Stack\n//\n\n// these are added back in by core\ntype OmitRemovedNonWebProps = 'onLayout' | keyof GestureResponderHandlers\n\nexport type StackNonStyleProps = Omit<\n ViewProps,\n 'display' | 'children' | OmitRemovedNonWebProps\n> &\n ExtendBaseStackProps &\n TamaguiComponentPropsBase\n\nexport type StackStyleProps =\n WithThemeShorthandsPseudosMediaAnimation<StackStylePropsBase>\nexport type StackPropsBase = StackNonStyleProps &\n WithThemeAndShorthands<StackStylePropsBase>\nexport type StackProps = StackNonStyleProps & StackStyleProps\n\n//\n// Text props\n//\n\nexport type TextNonStyleProps = Omit<\n ReactTextProps,\n 'children' | OmitRemovedNonWebProps\n> &\n ExtendsBaseTextProps &\n TamaguiComponentPropsBase\n\nexport type TextPropsBase = TextNonStyleProps & WithThemeAndShorthands<TextStylePropsBase>\n\nexport type TextStyleProps = WithThemeShorthandsPseudosMediaAnimation<TextStylePropsBase>\nexport type TextProps = TextNonStyleProps & TextStyleProps\n\n// could actually infer from parent\nexport type ViewOrTextProps = WithThemeShorthandsPseudosMediaAnimation<\n Omit<TextStylePropsBase, keyof StackStylePropsBase> & StackStylePropsBase\n>\n\n//\n// StaticComponent\n//\n\nexport type TamaguiComponent<\n Props = any,\n Ref = any,\n BaseProps = {},\n VariantProps = {}\n> = ReactComponentWithRef<Props, Ref> & StaticComponentObject\n\ntype StaticComponentObject = {\n staticConfig: StaticConfigParsed\n /*\n * Only needed for more complex components\n * If you create a styled frame component this is a HoC to extract\n * styles from all parents.\n */\n extractable: <X>(a: X, opts?: Partial<StaticConfig>) => X\n}\n\nexport type TamaguiProviderProps = Partial<Omit<ThemeProviderProps, 'children'>> & {\n config: TamaguiInternalConfig\n disableInjectCSS?: boolean\n children?: ReactNode\n}\n\nexport type PropMapper = (\n key: string,\n value: any,\n theme: ThemeParsed,\n props: Record<string, any>,\n state: Partial<SplitStyleState>,\n languageContext?: FontLanguageProps,\n avoidDefaultProps?: boolean,\n debug?: DebugProp\n) => undefined | [string, any][]\n\nexport type StaticConfigParsed = StaticConfig & {\n parsed: true\n propMapper: PropMapper\n variantsParsed?: {\n [key: string]: {\n [key: string]: any\n }\n }\n}\n\nexport type GenericVariantDefinitions = {\n [key: string]: {\n [key: string]:\n | ((a: any, b: any) => any)\n | {\n [key: string]: any\n }\n }\n}\n\nexport type StaticConfigPublic = {\n /**\n * (compiler) If you need to pass context or something, prevents from ever\n * flattening. The 'jsx' option means it will never flatten. if you\n * pass JSX as a children (if its purely string, it will still flatten).\n */\n neverFlatten?: boolean | 'jsx'\n\n /**\n * Determines ultimate output tag (Text vs View)\n */\n isText?: boolean\n\n /**\n * Which style keys are allowed to be extracted.\n */\n validStyles?: { [key: string]: boolean }\n\n /**\n * (compiler) If these props are encountered, bail on all optimization.\n */\n deoptProps?: Set<string>\n\n /**\n * (compiler) If these props are encountered, leave them un-extracted.\n */\n inlineProps?: Set<string>\n\n /**\n * (compiler) If not flattening, leave this prop as original value.\n * Only applies to style attributes\n */\n inlineWhenUnflattened?: Set<string>\n\n /**\n * (compiler) A bit odd, only for more advanced heirarchies.\n * Indicates that the component will set this prop so the\n * static extraction can ensure it sets them to ={undefined}\n * so they get overriddent. In the future, this can be smarter.\n */\n ensureOverriddenProp?: { [key: string]: boolean }\n\n /**\n * Auto-detected, but can ovverride. Wraps children to space them on top\n */\n isZStack?: boolean\n\n /**\n * Auto-detect, but can override, passes styles properly to react-native-web\n */\n isReactNative?: boolean\n\n /**\n * By default if styled() doesn't recognize a parent Tamagui compoent or specific react-native views,\n * it will assume the passed in component only accepts style={} for react-native compatibility.\n * Setting `acceptsClassName: true` indicates Tamagui can pass in className props.\n */\n acceptsClassName?: boolean\n}\n\ntype StaticConfigBase = StaticConfigPublic & {\n Component?: FunctionComponent<any> & StaticComponentObject\n\n variants?: GenericVariantDefinitions\n\n /**\n * Used for applying sub theme style\n */\n componentName?: string\n\n /**\n * Same as React.defaultProps, be sure to sync\n */\n defaultProps: Record<string, any>\n\n /**\n * Merges into defaultProps later on, used internally yonly\n */\n defaultVariants?: { [key: string]: any }\n\n /**\n * Memoize the component\n */\n memo?: boolean\n\n /**\n * Used insternally to attach default props to names\n */\n parentNames?: string[]\n\n /**\n * By default if styled() doesn't recognize a parent Tamagui compoent or specific react-native views,\n * it will assume the passed in component only accepts style={} for react-native compatibility.\n * Setting `acceptsClassName: true` indicates Tamagui can pass in className props.\n */\n acceptsClassName?: boolean\n\n /**\n * Used internally for handling focus\n */\n isInput?: boolean\n\n /**\n * Used internally for knowing how to handle when a HOC is in-between styled()\n */\n isHOC?: boolean\n}\n\nexport type StaticConfig = StaticConfigBase & {\n parentStaticConfig?: StaticConfigBase\n}\n\nexport type ViewStyleWithPseudos =\n | TextStyleProps\n | (TextStyleProps & {\n hoverStyle?: TextStyleProps\n pressStyle?: TextStyleProps\n focusStyle?: TextStyleProps\n })\n\n/**\n * --------------------------------------------\n * variants\n * --------------------------------------------\n */\n\nexport type StylableComponent =\n | TamaguiComponent\n // * excessively deep type instantiation\n // | TamaguiReactElement\n | ComponentType<any>\n | ForwardRefExoticComponent<any>\n | ReactComponentWithRef<any, any>\n | (new (props: any) => any)\n\nexport type GetStyledVariants<A extends TamaguiComponent> = A extends TamaguiComponent<\n any,\n any,\n any,\n infer Variants\n>\n ? Variants\n : never\n\nexport type GetBaseProps<A extends StylableComponent> = A extends TamaguiComponent<\n any,\n any,\n infer BaseProps\n>\n ? BaseProps\n : never\n\nexport type GetProps<A extends StylableComponent> = A extends TamaguiComponent<\n infer Props\n>\n ? Props\n : A extends TamaguiReactElement<infer Props>\n ? Props\n : A extends ComponentType<infer Props>\n ? GetGenericComponentTamaguiProps<Props>\n : A extends new (props: infer Props) => any\n ? GetGenericComponentTamaguiProps<Props>\n : {}\n\ntype GetGenericComponentTamaguiProps<P> = P &\n Omit<'textAlign' extends keyof P ? TextProps : StackProps, keyof P>\n\nexport type SpreadKeys =\n | '...fontSize'\n | '...fontStyle'\n | '...fontTransform'\n | '...lineHeight'\n | '...letterSpacing'\n | '...size'\n | '...space'\n | '...color'\n | '...zIndex'\n | '...theme'\n | '...radius'\n\nexport type VariantDefinitions<\n Parent extends StylableComponent = TamaguiComponent,\n MyProps extends Object = GetProps<Parent>,\n Val = any\n> = VariantDefinitionFromProps<MyProps, Val>\n\nexport type VariantDefinitionFromProps<MyProps, Val> = MyProps extends Object\n ? {\n [propName: string]:\n | VariantSpreadFunction<MyProps, Val>\n | ({\n [Key in SpreadKeys]?: Key extends '...fontSize'\n ? FontSizeVariantSpreadFunction<MyProps>\n : Key extends '...size'\n ? SizeVariantSpreadFunction<MyProps>\n : Key extends '...space'\n ? SpaceVariantSpreadFunction<MyProps>\n : Key extends '...color'\n ? ColorVariantSpreadFunction<MyProps>\n : Key extends '...lineHeight'\n ? FontLineHeightVariantSpreadFunction<MyProps>\n : Key extends '...fontTransform'\n ? FontTransformVariantSpreadFunction<MyProps>\n : Key extends '...fontStyle'\n ? FontStyleVariantSpreadFunction<MyProps>\n : Key extends '...letterSpacing'\n ? FontLetterSpacingVariantSpreadFunction<MyProps>\n : Key extends '...zIndex'\n ? ZIndexVariantSpreadFunction<MyProps>\n : Key extends '...radius'\n ? RadiusVariantSpreadFunction<MyProps>\n : Key extends '...theme'\n ? ThemeVariantSpreadFunction<MyProps>\n : never\n } & {\n [Key in string | number | 'true' | 'false']?:\n | MyProps\n | VariantSpreadFunction<MyProps, Val>\n } & {\n [Key in VariantTypeKeys]?: Key extends ':number'\n ? VariantSpreadFunction<MyProps, number>\n : Key extends ':boolean'\n ? VariantSpreadFunction<MyProps, boolean>\n : Key extends ':string'\n ? VariantSpreadFunction<MyProps, string>\n : never\n })\n }\n : never\n\nexport type GenericStackVariants = VariantDefinitionFromProps<StackProps, any>\nexport type GenericTextVariants = VariantDefinitionFromProps<StackProps, any>\n\nexport type GetVariantProps<Variants> = {\n [Key in keyof Variants]?: Variants[Key] extends VariantSpreadFunction<any, infer Val>\n ? Val\n : GetVariantValues<keyof Variants[Key]>\n}\n\nexport type VariantSpreadExtras<Props> = {\n fonts: TamaguiConfig['fonts']\n tokens: TamaguiConfig['tokens']\n theme: Themes extends { [key: string]: infer B } ? B : unknown\n props: Props\n}\n\ntype PropLike = { [key: string]: any }\n\nexport type VariantSpreadFunction<Props extends PropLike, Val = any> = (\n val: Val,\n config: VariantSpreadExtras<Props>\n) =>\n | {\n [Key in keyof Props]: Props[Key] | Variable\n }\n | null\n | undefined\n\nexport type VariantTypeKeys = ':string' | ':boolean' | ':number'\n\nexport type GetVariantValues<Key> = Key extends `...${infer VariantSpread}`\n ? ThemeValueByCategory<VariantSpread>\n : Key extends 'true' | 'false'\n ? boolean\n : Key extends ':string'\n ? string\n : Key extends ':boolean'\n ? boolean\n : Key extends ':number'\n ? number\n : Key\n\nexport type FontSizeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n FontSizeTokens\n>\nexport type SizeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n SizeTokens\n>\nexport type SpaceVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n SpaceTokens\n>\nexport type ColorVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n ColorTokens\n>\nexport type FontLineHeightVariantSpreadFunction<A extends PropLike> =\n VariantSpreadFunction<A, FontLineHeightTokens>\nexport type FontLetterSpacingVariantSpreadFunction<A extends PropLike> =\n VariantSpreadFunction<A, FontLetterSpacingTokens>\nexport type FontStyleVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n FontStyleTokens\n>\nexport type FontTransformVariantSpreadFunction<A extends PropLike> =\n VariantSpreadFunction<A, FontTransformTokens>\nexport type ZIndexVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n ZIndexTokens\n>\nexport type RadiusVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n RadiusTokens\n>\nexport type ThemeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<\n A,\n ThemeTokens\n>\n\n/**\n * --------------------------------------------\n * end variants\n * --------------------------------------------\n */\n\ntype SizeKeys =\n | 'width'\n | 'height'\n | 'minWidth'\n | 'minHeight'\n | 'maxWidth'\n | 'maxHeight'\n | 'shadowRadius'\n\ntype ColorKeys =\n | 'color'\n | 'backgroundColor'\n | 'borderColor'\n | 'borderBottomColor'\n | 'borderTopColor'\n | 'borderLeftColor'\n | 'borderRightColor'\n | 'shadowColor'\n | 'textShadowColor'\n\ntype SpaceKeys =\n | 'space'\n | 'padding'\n | 'paddingHorizontal'\n | 'paddingVertical'\n | 'paddingLeft'\n | 'paddingTop'\n | 'paddingBottom'\n | 'paddingLeft'\n | 'paddingRight'\n | 'paddingEnd'\n | 'paddingStart'\n | 'margin'\n | 'marginHorizontal'\n | 'marginVertical'\n | 'marginLeft'\n | 'marginTop'\n | 'marginBottom'\n | 'marginLeft'\n | 'marginRight'\n | 'marginEnd'\n | 'marginStart'\n | 'x'\n | 'y'\n | 'scale'\n | 'scaleX'\n | 'scaleY'\n | 'borderTopEndRadius'\n | 'borderTopLeftRadius'\n | 'borderTopRightRadius'\n | 'borderTopStartRadius'\n | 'borderBottomEndRadius'\n | 'borderBottomLeftRadius'\n | 'borderBottomRightRadius'\n | 'borderBottomStartRadius'\n | 'borderBottomWidth'\n | 'borderLeftWidth'\n | 'borderRadius'\n | 'borderRightWidth'\n | 'borderTopEndRadius'\n | 'borderTopLeftRadius'\n | 'borderTopRightRadius'\n | 'borderEndWidth'\n | 'borderStartWidth'\n | 'borderTopStartRadius'\n | 'borderTopWidth'\n | 'borderWidth'\n | 'left'\n | 'top'\n | 'right'\n | 'bottom'\n | 'shadowOffset'\n\ntype CSSColorNames =\n | 'aliceblue'\n | 'antiquewhite'\n | 'aqua'\n | 'aquamarine'\n | 'azure'\n | 'beige'\n | 'bisque'\n | 'black'\n | 'blanchedalmond'\n | 'blue'\n | 'blueviolet'\n | 'brown'\n | 'burlywood'\n | 'cadetblue'\n | 'chartreuse'\n | 'chocolate'\n | 'coral'\n | 'cornflowerblue'\n | 'cornsilk'\n | 'crimson'\n | 'cyan'\n | 'darkblue'\n | 'darkcyan'\n | 'darkgoldenrod'\n | 'darkgray'\n | 'darkgreen'\n | 'darkkhaki'\n | 'darkmagenta'\n | 'darkolivegreen'\n | 'darkorange'\n | 'darkorchid'\n | 'darkred'\n | 'darksalmon'\n | 'darkseagreen'\n | 'darkslateblue'\n | 'darkslategray'\n | 'darkturquoise'\n | 'darkviolet'\n | 'deeppink'\n | 'deepskyblue'\n | 'dimgray'\n | 'dodgerblue'\n | 'firebrick'\n | 'floralwhite'\n | 'forestgreen'\n | 'fuchsia'\n | 'gainsboro'\n | 'ghostwhite'\n | 'gold'\n | 'goldenrod'\n | 'gray'\n | 'green'\n | 'greenyellow'\n | 'honeydew'\n | 'hotpink'\n | 'indianred '\n | 'indigo '\n | 'ivory'\n | 'khaki'\n | 'lavender'\n | 'lavenderblush'\n | 'lawngreen'\n | 'lemonchiffon'\n | 'lightblue'\n | 'lightcoral'\n | 'lightcyan'\n | 'lightgoldenrodyellow'\n | 'lightgrey'\n | 'lightgreen'\n | 'lightpink'\n | 'lightsalmon'\n | 'lightseagreen'\n | 'lightskyblue'\n | 'lightslategray'\n | 'lightsteelblue'\n | 'lightyellow'\n | 'lime'\n | 'limegreen'\n | 'linen'\n | 'magenta'\n | 'maroon'\n | 'mediumaquamarine'\n | 'mediumblue'\n | 'mediumorchid'\n | 'mediumpurple'\n | 'mediumseagreen'\n | 'mediumslateblue'\n | 'mediumspringgreen'\n | 'mediumturquoise'\n | 'mediumvioletred'\n | 'midnightblue'\n | 'mintcream'\n | 'mistyrose'\n | 'moccasin'\n | 'navajowhite'\n | 'navy'\n | 'oldlace'\n | 'olive'\n | 'olivedrab'\n | 'orange'\n | 'orangered'\n | 'orchid'\n | 'palegoldenrod'\n | 'palegreen'\n | 'paleturquoise'\n | 'palevioletred'\n | 'papayawhip'\n | 'peachpuff'\n | 'peru'\n | 'pink'\n | 'plum'\n | 'powderblue'\n | 'purple'\n | 'red'\n | 'rosybrown'\n | 'royalblue'\n | 'saddlebrown'\n | 'salmon'\n | 'sandybrown'\n | 'seagreen'\n | 'seashell'\n | 'sienna'\n | 'silver'\n | 'skyblue'\n | 'slateblue'\n | 'slategray'\n | 'snow'\n | 'springgreen'\n | 'steelblue'\n | 'tan'\n | 'teal'\n | 'thistle'\n | 'tomato'\n | 'turquoise'\n | 'violet'\n | 'wheat'\n | 'white'\n | 'whitesmoke'\n | 'yellow'\n | 'yellowgreen'\n\nexport type TamaguiComponentState = {\n hover: boolean\n press: boolean\n pressIn: boolean\n focus: boolean\n unmounted: boolean\n animation?: null | {\n style?: any\n avoidClasses?: boolean\n }\n}\n\nexport type SplitStyleState = TamaguiComponentState & {\n mediaState?: Record<string, boolean>\n noClassNames?: boolean\n dynamicStylesInline?: boolean\n resolveVariablesAs?: ResolveVariableTypes\n fallbackProps?: Record<string, any>\n hasTextAncestor?: boolean\n\n // for animations\n isExiting?: boolean\n exitVariant?: string\n enterVariant?: string\n}\n\n// Presence\n\nexport interface PresenceContextProps {\n id: string\n isPresent: boolean\n register: (id: string) => () => void\n onExitComplete?: (id: string) => void\n initial?: false | string | string[]\n custom?: any\n exitVariant?: string | null\n enterVariant?: string | null\n}\n\ntype SafeToRemoveCallback = () => void\ntype AlwaysPresent = [true, null, null]\ntype Present = [true, undefined, PresenceContextProps]\ntype NotPresent = [false, SafeToRemoveCallback, PresenceContextProps]\n\nexport type UsePresenceResult = AlwaysPresent | Present | NotPresent\n\n// Animations:\n\ntype AnimationConfig = {\n [key: string]: any\n}\n\n// includes a very limited adapter between various impls for number => style\n// this is useful only in limited scenarios like `Sheet`, but necessary in those cases\n\nexport type AnimatedNumberStrategy =\n // only values shared between reanimated/react-native for now\n | {\n type: 'spring'\n stiffness?: number\n damping?: number\n mass?: number\n overshootClamping?: boolean\n restSpeedThreshold?: number\n restDisplacementThreshold?: number\n }\n | { type: 'timing'; duration: number }\n | { type: 'direct' }\n\nexport type UniversalAnimatedNumber<A> = {\n getInstance(): A\n getValue(): number\n setValue(next: number, config?: AnimatedNumberStrategy): void\n stop(): void\n}\n\nexport type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {\n isReactNative?: boolean\n useAnimations: UseAnimationHook\n usePresence: () => UsePresenceResult\n useAnimatedNumber: (initial: number) => UniversalAnimatedNumber<any>\n useAnimatedNumberStyle: <V extends UniversalAnimatedNumber<any>>(\n val: V,\n getStyle: (current: any) => any\n ) => any\n useAnimatedNumberReaction: (\n val: UniversalAnimatedNumber<any>,\n onValue: (current: number) => void\n ) => void\n animations: A\n View?: any\n Text?: any\n}\n\nexport type UseAnimationProps = TamaguiComponentPropsBase & Record<string, any>\n\nexport type UseAnimationHook = (props: {\n style: Record<string, any>\n props: Record<string, any>\n presence?: UsePresenceResult | null\n hostRef: RefObject<HTMLElement | View>\n staticConfig: StaticConfigParsed\n state: SplitStyleState\n pseudos: PseudoProps<ViewStyle> | null\n onDidAnimate?: any\n delay?: number\n}) => null | {\n style?: StackStylePropsBase | StackStylePropsBase[]\n}\n\nexport type GestureReponderEvent = Exclude<\n View['props']['onResponderMove'],\n void\n> extends (event: infer Event) => void\n ? Event\n : never\n\nexport type RulesToInsert = StyleObject[]\n\nexport type GetStyleResult = {\n pseudos?: PseudoStyles\n style: ViewStyle\n classNames: ClassNamesObject\n rulesToInsert: RulesToInsert\n viewProps: StackProps & Record<string, any>\n fontFamily: string | undefined\n space?: any // SpaceTokens?\n hasMedia: boolean | 'space'\n}\n\nexport type ClassNamesObject = Record<string, string>\n\nexport type TamaguiComponentEvents = {\n cancelable?: boolean | undefined\n disabled?: any\n hitSlop?: any\n delayLongPress?: any\n delayPressIn?: any\n delayPressOut?: any\n focusable?: any\n minPressDuration?: number | undefined\n onPressIn: ((e: any) => void) | undefined\n onPress: ((e: any) => void) | undefined\n onMouseEnter?: ((e: any) => void) | undefined\n onMouseLeave?: ((e: any) => void) | undefined\n onPressOut: ((e: any) => void) | undefined\n}\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -140,10 +140,6 @@ function createTamagui(configIn) {
140
140
  })
141
141
  );
142
142
  const shorthands = configIn.shorthands || {};
143
- if (process.env.TAMAGUI_TARGET === "native") {
144
- shorthands.gapRow ??= "rowGap";
145
- shorthands.gapColumn ??= "columnGap";
146
- }
147
143
  const config = {
148
144
  fontLanguages: [],
149
145
  animations: {},
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createTamagui.ts"],
4
- "sourcesContent": ["import { isRSC, isWeb } from '@tamagui/constants'\n\nimport { configListeners, setConfig } from './config.js'\nimport { createVariables, tokensKeysOrdered } from './createVariables.js'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules.js'\nimport {\n getAllRules,\n listenForSheetChanges,\n scanAllSheets,\n} from './helpers/insertStyleRule.js'\nimport {\n registerCSSVariable,\n tokensValueToVariable,\n variableToCSS,\n} from './helpers/registerCSSVariable.js'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'\nimport { configureMedia } from './hooks/useMedia.js'\nimport { parseFont, registerFontVariables } from './insertFont.js'\nimport { Tamagui } from './Tamagui.js'\nimport {\n CreateTamaguiProps,\n InferTamaguiConfig,\n TamaguiInternalConfig,\n ThemeParsed,\n} from './types.js'\n\n// config is re-run by the @tamagui/static, dont double validate\nconst createdConfigs = new WeakMap<any, boolean>()\n\nexport function createTamagui<Conf extends CreateTamaguiProps>(\n configIn: Conf\n): InferTamaguiConfig<Conf> {\n if (createdConfigs.has(configIn)) {\n return configIn as any\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (!configIn.tokens) {\n throw new Error('Must define tokens')\n }\n if (!configIn.themes) {\n throw new Error('Must define themes')\n }\n if (!configIn.fonts) {\n throw new Error('Must define fonts')\n }\n }\n\n scanAllSheets()\n listenForSheetChanges()\n\n const fontTokens = Object.fromEntries(\n Object.entries(configIn.fonts!).map(([k, v]) => {\n return [k, createVariables(v, 'f', true)]\n })\n )\n\n const fontsParsed = (() => {\n const res = {} as typeof fontTokens\n for (const familyName in fontTokens) {\n res[`$${familyName}`] = parseFont(fontTokens[familyName])\n }\n return res!\n })()\n\n const themeConfig = (() => {\n const themes = { ...configIn.themes }\n const cssRuleSets: string[] = []\n\n if (isWeb) {\n const declarations: string[] = []\n const fontDeclarations: Record<\n string,\n { name: string; declarations: string[]; language?: string }\n > = {}\n\n for (const key in configIn.tokens) {\n for (const skey in configIn.tokens[key]) {\n const val = configIn.tokens[key][skey]\n registerCSSVariable(val)\n declarations.push(variableToCSS(val, skey === 'zIndex'))\n }\n }\n\n for (const key in fontsParsed) {\n const fontParsed = fontsParsed[key]\n const [name, language] = key.includes('_') ? key.split('_') : [key]\n const fontVars = registerFontVariables(fontParsed)\n fontDeclarations[key] = {\n name: name.slice(1),\n declarations: fontVars,\n language,\n }\n }\n\n const sep =\n process.env.NODE_ENV === 'development' ? configIn.cssStyleSeparator || ' ' : ''\n\n function declarationsToRuleSet(decs: string[], selector = '') {\n return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`\n }\n\n // non-font\n cssRuleSets.push(declarationsToRuleSet(declarations))\n\n // fonts\n if (fontDeclarations) {\n for (const key in fontDeclarations) {\n const { name, declarations, language = 'default' } = fontDeclarations[key]\n const fontSelector = `.font_${name}`\n const langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`\n const selectors =\n language === 'default' ? ` ${fontSelector}, ${langSelector}` : langSelector\n const specificRuleSet = declarationsToRuleSet(declarations, selectors)\n cssRuleSets.push(specificRuleSet)\n }\n }\n }\n\n // dedupe themes to avoid duplicate CSS generation\n type DedupedTheme = {\n names: string[]\n theme: ThemeParsed\n }\n const dedupedThemes: {\n [key: string]: DedupedTheme\n } = {}\n const existing = new Map<string, DedupedTheme>()\n\n // first, de-dupe and parse them\n for (const themeName in themes) {\n const rawTheme = themes[themeName] as ThemeParsed\n // dont force referential equality but may need something more consistent than JSON.stringify\n const key = JSON.stringify(rawTheme)\n\n // if existing, avoid\n if (existing.has(key)) {\n const e = existing.get(key)!\n themes[themeName] = e.theme\n e.names.push(themeName)\n continue\n }\n\n // ensure each theme object unique for dedupe\n const theme = { ...rawTheme }\n // parse into variables\n for (const key in theme) {\n // make sure properly names theme variables\n ensureThemeVariable(theme, key)\n }\n themes[themeName] = theme\n\n // set deduped\n dedupedThemes[themeName] = {\n names: [themeName],\n theme,\n }\n\n existing.set(key, dedupedThemes[themeName])\n }\n\n // then, generate CSS from de-duped\n let themeRuleSets: string[] = []\n\n if (isWeb || isRSC) {\n for (const themeName in dedupedThemes) {\n themeRuleSets = [\n ...themeRuleSets,\n ...getThemeCSSRules({\n config: configIn,\n themeName,\n ...dedupedThemes[themeName],\n }),\n ]\n }\n }\n\n // proxy upwards to get parent variables (themes are subset going down)\n for (const themeName in themes) {\n themes[themeName] = proxyThemeToParents(themeName, themes[themeName], themes)\n }\n\n tokensValueToVariable.clear()\n\n return {\n themes,\n cssRuleSets,\n themeRuleSets,\n }\n })()\n\n // faster $lookups\n const tokensParsed: any = Object.fromEntries(\n Object.entries(configIn.tokens).map(([k, v]) => {\n const val = Object.fromEntries(Object.entries(v).map(([k, v]) => [`$${k}`, v]))\n tokensKeysOrdered.set(val, tokensKeysOrdered.get(v))\n return [k, val]\n })\n )\n\n const shorthands = configIn.shorthands || {}\n\n if (process.env.TAMAGUI_TARGET === 'native') {\n // abuse shorthands for remapping the native style gap keys\n shorthands.gapRow ??= 'rowGap'\n shorthands.gapColumn ??= 'columnGap'\n }\n\n const config: TamaguiInternalConfig = {\n fontLanguages: [],\n animations: {} as any,\n media: {},\n ...configIn,\n // already processed by createTokens()\n tokens: configIn.tokens as any,\n // vite made this into a function if it wasn't set\n shorthands: { ...shorthands },\n inverseShorthands: shorthands\n ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k]))\n : {},\n themes: themeConfig.themes as any,\n fontsParsed,\n themeConfig,\n tokensParsed,\n parsed: true,\n getCSS: (separator = '\\n') => {\n return `\n._ovs-contain {overscroll-behavior:contain;}\n.t_unmounted .t_will-mount {opacity:0;visibility:hidden;}\n.is_Text .is_Text {display:inline-flex;}\n._dsp_contents {display:contents;}\n${themeConfig.cssRuleSets.join(separator)}\n${themeConfig.themeRuleSets.join(separator)}\n${getAllRules().join(separator)}`\n },\n // const tokens = [...getToken(tokens.size[0])]\n // .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }\n }\n\n configureMedia(config)\n setConfig(config)\n\n if (configListeners.size) {\n configListeners.forEach((cb) => cb(config))\n configListeners.clear()\n }\n\n createdConfigs.set(config, true)\n\n if (process.env.NODE_ENV === 'development') {\n if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log('Tamagui config:', config)\n }\n if (!globalThis['Tamagui']) {\n globalThis['Tamagui'] = Tamagui\n }\n }\n\n return config as any\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { isRSC, isWeb } from '@tamagui/constants'\n\nimport { configListeners, setConfig } from './config.js'\nimport { createVariables, tokensKeysOrdered } from './createVariables.js'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules.js'\nimport {\n getAllRules,\n listenForSheetChanges,\n scanAllSheets,\n} from './helpers/insertStyleRule.js'\nimport {\n registerCSSVariable,\n tokensValueToVariable,\n variableToCSS,\n} from './helpers/registerCSSVariable.js'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'\nimport { configureMedia } from './hooks/useMedia.js'\nimport { parseFont, registerFontVariables } from './insertFont.js'\nimport { Tamagui } from './Tamagui.js'\nimport {\n CreateTamaguiProps,\n InferTamaguiConfig,\n TamaguiInternalConfig,\n ThemeParsed,\n} from './types.js'\n\n// config is re-run by the @tamagui/static, dont double validate\nconst createdConfigs = new WeakMap<any, boolean>()\n\nexport function createTamagui<Conf extends CreateTamaguiProps>(\n configIn: Conf\n): InferTamaguiConfig<Conf> {\n if (createdConfigs.has(configIn)) {\n return configIn as any\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (!configIn.tokens) {\n throw new Error('Must define tokens')\n }\n if (!configIn.themes) {\n throw new Error('Must define themes')\n }\n if (!configIn.fonts) {\n throw new Error('Must define fonts')\n }\n }\n\n scanAllSheets()\n listenForSheetChanges()\n\n const fontTokens = Object.fromEntries(\n Object.entries(configIn.fonts!).map(([k, v]) => {\n return [k, createVariables(v, 'f', true)]\n })\n )\n\n const fontsParsed = (() => {\n const res = {} as typeof fontTokens\n for (const familyName in fontTokens) {\n res[`$${familyName}`] = parseFont(fontTokens[familyName])\n }\n return res!\n })()\n\n const themeConfig = (() => {\n const themes = { ...configIn.themes }\n const cssRuleSets: string[] = []\n\n if (isWeb) {\n const declarations: string[] = []\n const fontDeclarations: Record<\n string,\n { name: string; declarations: string[]; language?: string }\n > = {}\n\n for (const key in configIn.tokens) {\n for (const skey in configIn.tokens[key]) {\n const val = configIn.tokens[key][skey]\n registerCSSVariable(val)\n declarations.push(variableToCSS(val, skey === 'zIndex'))\n }\n }\n\n for (const key in fontsParsed) {\n const fontParsed = fontsParsed[key]\n const [name, language] = key.includes('_') ? key.split('_') : [key]\n const fontVars = registerFontVariables(fontParsed)\n fontDeclarations[key] = {\n name: name.slice(1),\n declarations: fontVars,\n language,\n }\n }\n\n const sep =\n process.env.NODE_ENV === 'development' ? configIn.cssStyleSeparator || ' ' : ''\n\n function declarationsToRuleSet(decs: string[], selector = '') {\n return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`\n }\n\n // non-font\n cssRuleSets.push(declarationsToRuleSet(declarations))\n\n // fonts\n if (fontDeclarations) {\n for (const key in fontDeclarations) {\n const { name, declarations, language = 'default' } = fontDeclarations[key]\n const fontSelector = `.font_${name}`\n const langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`\n const selectors =\n language === 'default' ? ` ${fontSelector}, ${langSelector}` : langSelector\n const specificRuleSet = declarationsToRuleSet(declarations, selectors)\n cssRuleSets.push(specificRuleSet)\n }\n }\n }\n\n // dedupe themes to avoid duplicate CSS generation\n type DedupedTheme = {\n names: string[]\n theme: ThemeParsed\n }\n const dedupedThemes: {\n [key: string]: DedupedTheme\n } = {}\n const existing = new Map<string, DedupedTheme>()\n\n // first, de-dupe and parse them\n for (const themeName in themes) {\n const rawTheme = themes[themeName] as ThemeParsed\n // dont force referential equality but may need something more consistent than JSON.stringify\n const key = JSON.stringify(rawTheme)\n\n // if existing, avoid\n if (existing.has(key)) {\n const e = existing.get(key)!\n themes[themeName] = e.theme\n e.names.push(themeName)\n continue\n }\n\n // ensure each theme object unique for dedupe\n const theme = { ...rawTheme }\n // parse into variables\n for (const key in theme) {\n // make sure properly names theme variables\n ensureThemeVariable(theme, key)\n }\n themes[themeName] = theme\n\n // set deduped\n dedupedThemes[themeName] = {\n names: [themeName],\n theme,\n }\n\n existing.set(key, dedupedThemes[themeName])\n }\n\n // then, generate CSS from de-duped\n let themeRuleSets: string[] = []\n\n if (isWeb || isRSC) {\n for (const themeName in dedupedThemes) {\n themeRuleSets = [\n ...themeRuleSets,\n ...getThemeCSSRules({\n config: configIn,\n themeName,\n ...dedupedThemes[themeName],\n }),\n ]\n }\n }\n\n // proxy upwards to get parent variables (themes are subset going down)\n for (const themeName in themes) {\n themes[themeName] = proxyThemeToParents(themeName, themes[themeName], themes)\n }\n\n tokensValueToVariable.clear()\n\n return {\n themes,\n cssRuleSets,\n themeRuleSets,\n }\n })()\n\n // faster $lookups\n const tokensParsed: any = Object.fromEntries(\n Object.entries(configIn.tokens).map(([k, v]) => {\n const val = Object.fromEntries(Object.entries(v).map(([k, v]) => [`$${k}`, v]))\n tokensKeysOrdered.set(val, tokensKeysOrdered.get(v))\n return [k, val]\n })\n )\n\n const shorthands = configIn.shorthands || {}\n\n const config: TamaguiInternalConfig = {\n fontLanguages: [],\n animations: {} as any,\n media: {},\n ...configIn,\n // already processed by createTokens()\n tokens: configIn.tokens as any,\n // vite made this into a function if it wasn't set\n shorthands: { ...shorthands },\n inverseShorthands: shorthands\n ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k]))\n : {},\n themes: themeConfig.themes as any,\n fontsParsed,\n themeConfig,\n tokensParsed,\n parsed: true,\n getCSS: (separator = '\\n') => {\n return `\n._ovs-contain {overscroll-behavior:contain;}\n.t_unmounted .t_will-mount {opacity:0;visibility:hidden;}\n.is_Text .is_Text {display:inline-flex;}\n._dsp_contents {display:contents;}\n${themeConfig.cssRuleSets.join(separator)}\n${themeConfig.themeRuleSets.join(separator)}\n${getAllRules().join(separator)}`\n },\n // const tokens = [...getToken(tokens.size[0])]\n // .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }\n }\n\n configureMedia(config)\n setConfig(config)\n\n if (configListeners.size) {\n configListeners.forEach((cb) => cb(config))\n configListeners.clear()\n }\n\n createdConfigs.set(config, true)\n\n if (process.env.NODE_ENV === 'development') {\n if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log('Tamagui config:', config)\n }\n if (!globalThis['Tamagui']) {\n globalThis['Tamagui'] = Tamagui\n }\n }\n\n return config as any\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["declarationsToRuleSet", "declarations", "key", "k", "v"]
7
7
  }
@@ -140,10 +140,6 @@ function createTamagui(configIn) {
140
140
  })
141
141
  );
142
142
  const shorthands = configIn.shorthands || {};
143
- if (process.env.TAMAGUI_TARGET === "native") {
144
- shorthands.gapRow ??= "rowGap";
145
- shorthands.gapColumn ??= "columnGap";
146
- }
147
143
  const config = {
148
144
  fontLanguages: [],
149
145
  animations: {},
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createTamagui.ts"],
4
- "sourcesContent": ["import { isRSC, isWeb } from '@tamagui/constants'\n\nimport { configListeners, setConfig } from './config.js'\nimport { createVariables, tokensKeysOrdered } from './createVariables.js'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules.js'\nimport {\n getAllRules,\n listenForSheetChanges,\n scanAllSheets,\n} from './helpers/insertStyleRule.js'\nimport {\n registerCSSVariable,\n tokensValueToVariable,\n variableToCSS,\n} from './helpers/registerCSSVariable.js'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'\nimport { configureMedia } from './hooks/useMedia.js'\nimport { parseFont, registerFontVariables } from './insertFont.js'\nimport { Tamagui } from './Tamagui.js'\nimport {\n CreateTamaguiProps,\n InferTamaguiConfig,\n TamaguiInternalConfig,\n ThemeParsed,\n} from './types.js'\n\n// config is re-run by the @tamagui/static, dont double validate\nconst createdConfigs = new WeakMap<any, boolean>()\n\nexport function createTamagui<Conf extends CreateTamaguiProps>(\n configIn: Conf\n): InferTamaguiConfig<Conf> {\n if (createdConfigs.has(configIn)) {\n return configIn as any\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (!configIn.tokens) {\n throw new Error('Must define tokens')\n }\n if (!configIn.themes) {\n throw new Error('Must define themes')\n }\n if (!configIn.fonts) {\n throw new Error('Must define fonts')\n }\n }\n\n scanAllSheets()\n listenForSheetChanges()\n\n const fontTokens = Object.fromEntries(\n Object.entries(configIn.fonts!).map(([k, v]) => {\n return [k, createVariables(v, 'f', true)]\n })\n )\n\n const fontsParsed = (() => {\n const res = {} as typeof fontTokens\n for (const familyName in fontTokens) {\n res[`$${familyName}`] = parseFont(fontTokens[familyName])\n }\n return res!\n })()\n\n const themeConfig = (() => {\n const themes = { ...configIn.themes }\n const cssRuleSets: string[] = []\n\n if (isWeb) {\n const declarations: string[] = []\n const fontDeclarations: Record<\n string,\n { name: string; declarations: string[]; language?: string }\n > = {}\n\n for (const key in configIn.tokens) {\n for (const skey in configIn.tokens[key]) {\n const val = configIn.tokens[key][skey]\n registerCSSVariable(val)\n declarations.push(variableToCSS(val, skey === 'zIndex'))\n }\n }\n\n for (const key in fontsParsed) {\n const fontParsed = fontsParsed[key]\n const [name, language] = key.includes('_') ? key.split('_') : [key]\n const fontVars = registerFontVariables(fontParsed)\n fontDeclarations[key] = {\n name: name.slice(1),\n declarations: fontVars,\n language,\n }\n }\n\n const sep =\n process.env.NODE_ENV === 'development' ? configIn.cssStyleSeparator || ' ' : ''\n\n function declarationsToRuleSet(decs: string[], selector = '') {\n return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`\n }\n\n // non-font\n cssRuleSets.push(declarationsToRuleSet(declarations))\n\n // fonts\n if (fontDeclarations) {\n for (const key in fontDeclarations) {\n const { name, declarations, language = 'default' } = fontDeclarations[key]\n const fontSelector = `.font_${name}`\n const langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`\n const selectors =\n language === 'default' ? ` ${fontSelector}, ${langSelector}` : langSelector\n const specificRuleSet = declarationsToRuleSet(declarations, selectors)\n cssRuleSets.push(specificRuleSet)\n }\n }\n }\n\n // dedupe themes to avoid duplicate CSS generation\n type DedupedTheme = {\n names: string[]\n theme: ThemeParsed\n }\n const dedupedThemes: {\n [key: string]: DedupedTheme\n } = {}\n const existing = new Map<string, DedupedTheme>()\n\n // first, de-dupe and parse them\n for (const themeName in themes) {\n const rawTheme = themes[themeName] as ThemeParsed\n // dont force referential equality but may need something more consistent than JSON.stringify\n const key = JSON.stringify(rawTheme)\n\n // if existing, avoid\n if (existing.has(key)) {\n const e = existing.get(key)!\n themes[themeName] = e.theme\n e.names.push(themeName)\n continue\n }\n\n // ensure each theme object unique for dedupe\n const theme = { ...rawTheme }\n // parse into variables\n for (const key in theme) {\n // make sure properly names theme variables\n ensureThemeVariable(theme, key)\n }\n themes[themeName] = theme\n\n // set deduped\n dedupedThemes[themeName] = {\n names: [themeName],\n theme,\n }\n\n existing.set(key, dedupedThemes[themeName])\n }\n\n // then, generate CSS from de-duped\n let themeRuleSets: string[] = []\n\n if (isWeb || isRSC) {\n for (const themeName in dedupedThemes) {\n themeRuleSets = [\n ...themeRuleSets,\n ...getThemeCSSRules({\n config: configIn,\n themeName,\n ...dedupedThemes[themeName],\n }),\n ]\n }\n }\n\n // proxy upwards to get parent variables (themes are subset going down)\n for (const themeName in themes) {\n themes[themeName] = proxyThemeToParents(themeName, themes[themeName], themes)\n }\n\n tokensValueToVariable.clear()\n\n return {\n themes,\n cssRuleSets,\n themeRuleSets,\n }\n })()\n\n // faster $lookups\n const tokensParsed: any = Object.fromEntries(\n Object.entries(configIn.tokens).map(([k, v]) => {\n const val = Object.fromEntries(Object.entries(v).map(([k, v]) => [`$${k}`, v]))\n tokensKeysOrdered.set(val, tokensKeysOrdered.get(v))\n return [k, val]\n })\n )\n\n const shorthands = configIn.shorthands || {}\n\n if (process.env.TAMAGUI_TARGET === 'native') {\n // abuse shorthands for remapping the native style gap keys\n shorthands.gapRow ??= 'rowGap'\n shorthands.gapColumn ??= 'columnGap'\n }\n\n const config: TamaguiInternalConfig = {\n fontLanguages: [],\n animations: {} as any,\n media: {},\n ...configIn,\n // already processed by createTokens()\n tokens: configIn.tokens as any,\n // vite made this into a function if it wasn't set\n shorthands: { ...shorthands },\n inverseShorthands: shorthands\n ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k]))\n : {},\n themes: themeConfig.themes as any,\n fontsParsed,\n themeConfig,\n tokensParsed,\n parsed: true,\n getCSS: (separator = '\\n') => {\n return `\n._ovs-contain {overscroll-behavior:contain;}\n.t_unmounted .t_will-mount {opacity:0;visibility:hidden;}\n.is_Text .is_Text {display:inline-flex;}\n._dsp_contents {display:contents;}\n${themeConfig.cssRuleSets.join(separator)}\n${themeConfig.themeRuleSets.join(separator)}\n${getAllRules().join(separator)}`\n },\n // const tokens = [...getToken(tokens.size[0])]\n // .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }\n }\n\n configureMedia(config)\n setConfig(config)\n\n if (configListeners.size) {\n configListeners.forEach((cb) => cb(config))\n configListeners.clear()\n }\n\n createdConfigs.set(config, true)\n\n if (process.env.NODE_ENV === 'development') {\n if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log('Tamagui config:', config)\n }\n if (!globalThis['Tamagui']) {\n globalThis['Tamagui'] = Tamagui\n }\n }\n\n return config as any\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { isRSC, isWeb } from '@tamagui/constants'\n\nimport { configListeners, setConfig } from './config.js'\nimport { createVariables, tokensKeysOrdered } from './createVariables.js'\nimport { getThemeCSSRules } from './helpers/getThemeCSSRules.js'\nimport {\n getAllRules,\n listenForSheetChanges,\n scanAllSheets,\n} from './helpers/insertStyleRule.js'\nimport {\n registerCSSVariable,\n tokensValueToVariable,\n variableToCSS,\n} from './helpers/registerCSSVariable.js'\nimport { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'\nimport { configureMedia } from './hooks/useMedia.js'\nimport { parseFont, registerFontVariables } from './insertFont.js'\nimport { Tamagui } from './Tamagui.js'\nimport {\n CreateTamaguiProps,\n InferTamaguiConfig,\n TamaguiInternalConfig,\n ThemeParsed,\n} from './types.js'\n\n// config is re-run by the @tamagui/static, dont double validate\nconst createdConfigs = new WeakMap<any, boolean>()\n\nexport function createTamagui<Conf extends CreateTamaguiProps>(\n configIn: Conf\n): InferTamaguiConfig<Conf> {\n if (createdConfigs.has(configIn)) {\n return configIn as any\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (!configIn.tokens) {\n throw new Error('Must define tokens')\n }\n if (!configIn.themes) {\n throw new Error('Must define themes')\n }\n if (!configIn.fonts) {\n throw new Error('Must define fonts')\n }\n }\n\n scanAllSheets()\n listenForSheetChanges()\n\n const fontTokens = Object.fromEntries(\n Object.entries(configIn.fonts!).map(([k, v]) => {\n return [k, createVariables(v, 'f', true)]\n })\n )\n\n const fontsParsed = (() => {\n const res = {} as typeof fontTokens\n for (const familyName in fontTokens) {\n res[`$${familyName}`] = parseFont(fontTokens[familyName])\n }\n return res!\n })()\n\n const themeConfig = (() => {\n const themes = { ...configIn.themes }\n const cssRuleSets: string[] = []\n\n if (isWeb) {\n const declarations: string[] = []\n const fontDeclarations: Record<\n string,\n { name: string; declarations: string[]; language?: string }\n > = {}\n\n for (const key in configIn.tokens) {\n for (const skey in configIn.tokens[key]) {\n const val = configIn.tokens[key][skey]\n registerCSSVariable(val)\n declarations.push(variableToCSS(val, skey === 'zIndex'))\n }\n }\n\n for (const key in fontsParsed) {\n const fontParsed = fontsParsed[key]\n const [name, language] = key.includes('_') ? key.split('_') : [key]\n const fontVars = registerFontVariables(fontParsed)\n fontDeclarations[key] = {\n name: name.slice(1),\n declarations: fontVars,\n language,\n }\n }\n\n const sep =\n process.env.NODE_ENV === 'development' ? configIn.cssStyleSeparator || ' ' : ''\n\n function declarationsToRuleSet(decs: string[], selector = '') {\n return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`\n }\n\n // non-font\n cssRuleSets.push(declarationsToRuleSet(declarations))\n\n // fonts\n if (fontDeclarations) {\n for (const key in fontDeclarations) {\n const { name, declarations, language = 'default' } = fontDeclarations[key]\n const fontSelector = `.font_${name}`\n const langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`\n const selectors =\n language === 'default' ? ` ${fontSelector}, ${langSelector}` : langSelector\n const specificRuleSet = declarationsToRuleSet(declarations, selectors)\n cssRuleSets.push(specificRuleSet)\n }\n }\n }\n\n // dedupe themes to avoid duplicate CSS generation\n type DedupedTheme = {\n names: string[]\n theme: ThemeParsed\n }\n const dedupedThemes: {\n [key: string]: DedupedTheme\n } = {}\n const existing = new Map<string, DedupedTheme>()\n\n // first, de-dupe and parse them\n for (const themeName in themes) {\n const rawTheme = themes[themeName] as ThemeParsed\n // dont force referential equality but may need something more consistent than JSON.stringify\n const key = JSON.stringify(rawTheme)\n\n // if existing, avoid\n if (existing.has(key)) {\n const e = existing.get(key)!\n themes[themeName] = e.theme\n e.names.push(themeName)\n continue\n }\n\n // ensure each theme object unique for dedupe\n const theme = { ...rawTheme }\n // parse into variables\n for (const key in theme) {\n // make sure properly names theme variables\n ensureThemeVariable(theme, key)\n }\n themes[themeName] = theme\n\n // set deduped\n dedupedThemes[themeName] = {\n names: [themeName],\n theme,\n }\n\n existing.set(key, dedupedThemes[themeName])\n }\n\n // then, generate CSS from de-duped\n let themeRuleSets: string[] = []\n\n if (isWeb || isRSC) {\n for (const themeName in dedupedThemes) {\n themeRuleSets = [\n ...themeRuleSets,\n ...getThemeCSSRules({\n config: configIn,\n themeName,\n ...dedupedThemes[themeName],\n }),\n ]\n }\n }\n\n // proxy upwards to get parent variables (themes are subset going down)\n for (const themeName in themes) {\n themes[themeName] = proxyThemeToParents(themeName, themes[themeName], themes)\n }\n\n tokensValueToVariable.clear()\n\n return {\n themes,\n cssRuleSets,\n themeRuleSets,\n }\n })()\n\n // faster $lookups\n const tokensParsed: any = Object.fromEntries(\n Object.entries(configIn.tokens).map(([k, v]) => {\n const val = Object.fromEntries(Object.entries(v).map(([k, v]) => [`$${k}`, v]))\n tokensKeysOrdered.set(val, tokensKeysOrdered.get(v))\n return [k, val]\n })\n )\n\n const shorthands = configIn.shorthands || {}\n\n const config: TamaguiInternalConfig = {\n fontLanguages: [],\n animations: {} as any,\n media: {},\n ...configIn,\n // already processed by createTokens()\n tokens: configIn.tokens as any,\n // vite made this into a function if it wasn't set\n shorthands: { ...shorthands },\n inverseShorthands: shorthands\n ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k]))\n : {},\n themes: themeConfig.themes as any,\n fontsParsed,\n themeConfig,\n tokensParsed,\n parsed: true,\n getCSS: (separator = '\\n') => {\n return `\n._ovs-contain {overscroll-behavior:contain;}\n.t_unmounted .t_will-mount {opacity:0;visibility:hidden;}\n.is_Text .is_Text {display:inline-flex;}\n._dsp_contents {display:contents;}\n${themeConfig.cssRuleSets.join(separator)}\n${themeConfig.themeRuleSets.join(separator)}\n${getAllRules().join(separator)}`\n },\n // const tokens = [...getToken(tokens.size[0])]\n // .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }\n }\n\n configureMedia(config)\n setConfig(config)\n\n if (configListeners.size) {\n configListeners.forEach((cb) => cb(config))\n configListeners.clear()\n }\n\n createdConfigs.set(config, true)\n\n if (process.env.NODE_ENV === 'development') {\n if (process.env.DEBUG?.startsWith('tamagui')) {\n // eslint-disable-next-line no-console\n console.log('Tamagui config:', config)\n }\n if (!globalThis['Tamagui']) {\n globalThis['Tamagui'] = Tamagui\n }\n }\n\n return config as any\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["declarationsToRuleSet", "declarations", "key", "k", "v"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/web",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/cjs",
6
6
  "module": "dist/esm",
@@ -27,19 +27,19 @@
27
27
  "reset.css"
28
28
  ],
29
29
  "dependencies": {
30
- "@tamagui/compose-refs": "1.8.0",
31
- "@tamagui/constants": "1.8.0",
32
- "@tamagui/helpers": "1.8.0",
33
- "@tamagui/normalize-css-color": "1.8.0",
34
- "@tamagui/use-did-finish-ssr": "1.8.0",
35
- "@tamagui/use-event": "1.8.0",
36
- "@tamagui/use-force-update": "1.8.0"
30
+ "@tamagui/compose-refs": "1.8.1",
31
+ "@tamagui/constants": "1.8.1",
32
+ "@tamagui/helpers": "1.8.1",
33
+ "@tamagui/normalize-css-color": "1.8.1",
34
+ "@tamagui/use-did-finish-ssr": "1.8.1",
35
+ "@tamagui/use-event": "1.8.1",
36
+ "@tamagui/use-force-update": "1.8.1"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "react": "*"
40
40
  },
41
41
  "devDependencies": {
42
- "@tamagui/build": "1.8.0",
42
+ "@tamagui/build": "1.8.1",
43
43
  "@testing-library/react": "^13.4.0",
44
44
  "csstype": "^3.0.10",
45
45
  "react": "^18.2.0",
@@ -200,12 +200,6 @@ export function createTamagui<Conf extends CreateTamaguiProps>(
200
200
 
201
201
  const shorthands = configIn.shorthands || {}
202
202
 
203
- if (process.env.TAMAGUI_TARGET === 'native') {
204
- // abuse shorthands for remapping the native style gap keys
205
- shorthands.gapRow ??= 'rowGap'
206
- shorthands.gapColumn ??= 'columnGap'
207
- }
208
-
209
203
  const config: TamaguiInternalConfig = {
210
204
  fontLanguages: [],
211
205
  animations: {} as any,
package/src/types.tsx CHANGED
@@ -695,8 +695,8 @@ type SharedBaseExtraStyleProps = {
695
695
  contain?: Properties['contain']
696
696
  display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex'
697
697
  gap?: number | SpaceTokens
698
- gapColumn?: number | SpaceTokens
699
- gapRow?: number | SpaceTokens
698
+ columnGap?: number | SpaceTokens
699
+ rowGap?: number | SpaceTokens
700
700
  userSelect?: Properties['userSelect']
701
701
  outlineColor?: Properties['outlineColor']
702
702
  outlineStyle?: Properties['outlineStyle']
@@ -704,14 +704,19 @@ type SharedBaseExtraStyleProps = {
704
704
  outlineWidth?: Properties['outlineWidth']
705
705
  }
706
706
 
707
- export type StackStylePropsBase = Omit<
708
- ViewStyle,
709
- 'display' | 'backfaceVisibility' | 'elevation'
710
- > &
707
+ type OverrideRNStyleProps =
708
+ | 'display'
709
+ | 'backfaceVisibility'
710
+ | 'elevation'
711
+ | 'gap'
712
+ | 'columnGap'
713
+ | 'rowGap'
714
+
715
+ export type StackStylePropsBase = Omit<ViewStyle, OverrideRNStyleProps> &
711
716
  TransformStyleProps &
712
717
  SharedBaseExtraStyleProps
713
718
 
714
- export type TextStylePropsBase = Omit<TextStyle, 'display' | 'backfaceVisibility'> &
719
+ export type TextStylePropsBase = Omit<TextStyle, OverrideRNStyleProps> &
715
720
  TransformStyleProps &
716
721
  SharedBaseExtraStyleProps & {
717
722
  ellipse?: boolean
@@ -1 +1 @@
1
- {"version":3,"file":"createTamagui.d.ts","sourceRoot":"","sources":["../src/createTamagui.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAGnB,MAAM,YAAY,CAAA;AAKnB,wBAAgB,aAAa,CAAC,IAAI,SAAS,kBAAkB,EAC3D,QAAQ,EAAE,IAAI,GACb,kBAAkB,CAAC,IAAI,CAAC,CAqO1B"}
1
+ {"version":3,"file":"createTamagui.d.ts","sourceRoot":"","sources":["../src/createTamagui.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAGnB,MAAM,YAAY,CAAA;AAKnB,wBAAgB,aAAa,CAAC,IAAI,SAAS,kBAAkB,EAC3D,QAAQ,EAAE,IAAI,GACb,kBAAkB,CAAC,IAAI,CAAC,CA+N1B"}
package/types/types.d.ts CHANGED
@@ -409,16 +409,17 @@ type SharedBaseExtraStyleProps = {
409
409
  contain?: Properties['contain'];
410
410
  display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex';
411
411
  gap?: number | SpaceTokens;
412
- gapColumn?: number | SpaceTokens;
413
- gapRow?: number | SpaceTokens;
412
+ columnGap?: number | SpaceTokens;
413
+ rowGap?: number | SpaceTokens;
414
414
  userSelect?: Properties['userSelect'];
415
415
  outlineColor?: Properties['outlineColor'];
416
416
  outlineStyle?: Properties['outlineStyle'];
417
417
  outlineOffset?: Properties['outlineOffset'];
418
418
  outlineWidth?: Properties['outlineWidth'];
419
419
  };
420
- export type StackStylePropsBase = Omit<ViewStyle, 'display' | 'backfaceVisibility' | 'elevation'> & TransformStyleProps & SharedBaseExtraStyleProps;
421
- export type TextStylePropsBase = Omit<TextStyle, 'display' | 'backfaceVisibility'> & TransformStyleProps & SharedBaseExtraStyleProps & {
420
+ type OverrideRNStyleProps = 'display' | 'backfaceVisibility' | 'elevation' | 'gap' | 'columnGap' | 'rowGap';
421
+ export type StackStylePropsBase = Omit<ViewStyle, OverrideRNStyleProps> & TransformStyleProps & SharedBaseExtraStyleProps;
422
+ export type TextStylePropsBase = Omit<TextStyle, OverrideRNStyleProps> & TransformStyleProps & SharedBaseExtraStyleProps & {
422
423
  ellipse?: boolean;
423
424
  textDecorationDistance?: number;
424
425
  textOverflow?: Properties['textOverflow'];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.tsx"],"names":[],"mappings":"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"}