@tamagui/web 3.0.18 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Tamagui.cjs +2 -1
- package/dist/cjs/Tamagui.native.cjs +2 -1
- package/dist/cjs/Tamagui.native.js +2 -1
- package/dist/cjs/Tamagui.native.js.map +1 -1
- package/dist/cjs/_withStableStyle.cjs +2 -1
- package/dist/cjs/_withStableStyle.native.cjs +2 -1
- package/dist/cjs/_withStableStyle.native.js +2 -1
- package/dist/cjs/_withStableStyle.native.js.map +1 -1
- package/dist/cjs/config.cjs +8 -7
- package/dist/cjs/config.native.cjs +8 -7
- package/dist/cjs/config.native.js +8 -7
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/constants/constants.cjs +2 -1
- package/dist/cjs/constants/constants.native.cjs +2 -1
- package/dist/cjs/constants/constants.native.js +2 -1
- package/dist/cjs/constants/constants.native.js.map +1 -1
- package/dist/cjs/constants/isDevTools.cjs +2 -1
- package/dist/cjs/constants/isDevTools.native.cjs +2 -1
- package/dist/cjs/constants/isDevTools.native.js +2 -1
- package/dist/cjs/constants/isDevTools.native.js.map +1 -1
- package/dist/cjs/createComponent.cjs +40 -39
- package/dist/cjs/createComponent.native.cjs +39 -38
- package/dist/cjs/createComponent.native.js +39 -38
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createTamagui.cjs +2 -1
- package/dist/cjs/createTamagui.native.cjs +2 -1
- package/dist/cjs/createTamagui.native.js +2 -1
- package/dist/cjs/createTamagui.native.js.map +1 -1
- package/dist/cjs/createTokens.cjs +2 -1
- package/dist/cjs/createTokens.native.cjs +2 -1
- package/dist/cjs/createTokens.native.js +2 -1
- package/dist/cjs/createTokens.native.js.map +1 -1
- package/dist/cjs/createVariable.cjs +2 -1
- package/dist/cjs/createVariable.native.cjs +2 -1
- package/dist/cjs/createVariable.native.js +2 -1
- package/dist/cjs/createVariable.native.js.map +1 -1
- package/dist/cjs/helpers/createDesignSystem.cjs +3 -2
- package/dist/cjs/helpers/createDesignSystem.native.cjs +2 -1
- package/dist/cjs/helpers/createDesignSystem.native.js +2 -1
- package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/cjs/helpers/formatDiagnostic.cjs +2 -1
- package/dist/cjs/helpers/formatDiagnostic.native.cjs +2 -1
- package/dist/cjs/helpers/formatDiagnostic.native.js +2 -1
- package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.cjs +37 -36
- package/dist/cjs/helpers/getSplitStyles.native.cjs +40 -39
- package/dist/cjs/helpers/getSplitStyles.native.js +40 -39
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.cjs +4 -3
- package/dist/cjs/helpers/insertStyleRule.cjs +4 -3
- package/dist/cjs/helpers/insertStyleRule.native.cjs +4 -3
- package/dist/cjs/helpers/insertStyleRule.native.js +4 -3
- package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/cjs/helpers/log.cjs +2 -1
- package/dist/cjs/helpers/log.native.cjs +2 -1
- package/dist/cjs/helpers/log.native.js +2 -1
- package/dist/cjs/helpers/log.native.js.map +1 -1
- package/dist/cjs/helpers/matchMedia.native.cjs +3 -2
- package/dist/cjs/helpers/matchMedia.native.js +3 -2
- package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
- package/dist/cjs/helpers/noteOnce.cjs +2 -1
- package/dist/cjs/helpers/noteOnce.native.cjs +2 -1
- package/dist/cjs/helpers/noteOnce.native.js +2 -1
- package/dist/cjs/helpers/noteOnce.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.native.cjs +2 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.native.js +2 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSizing.cjs +2 -1
- package/dist/cjs/helpers/resolveSizing.native.cjs +2 -1
- package/dist/cjs/helpers/resolveSizing.native.js +2 -1
- package/dist/cjs/helpers/resolveSizing.native.js.map +1 -1
- package/dist/cjs/helpers/skipProps.cjs +3 -2
- package/dist/cjs/helpers/skipProps.native.cjs +3 -2
- package/dist/cjs/helpers/skipProps.native.js +3 -2
- package/dist/cjs/helpers/skipProps.native.js.map +1 -1
- package/dist/cjs/helpers/styledDynamic.cjs +2 -1
- package/dist/cjs/helpers/styledDynamic.native.cjs +2 -1
- package/dist/cjs/helpers/styledDynamic.native.js +2 -1
- package/dist/cjs/helpers/styledDynamic.native.js.map +1 -1
- package/dist/cjs/helpers/subscribeToContextGroup.cjs +2 -1
- package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +2 -1
- package/dist/cjs/helpers/subscribeToContextGroup.native.js +2 -1
- package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/cjs/helpers/variableValue.cjs +2 -1
- package/dist/cjs/helpers/variableValue.native.cjs +2 -1
- package/dist/cjs/helpers/variableValue.native.js +2 -1
- package/dist/cjs/helpers/variableValue.native.js.map +1 -1
- package/dist/cjs/helpers/variables.cjs +5 -4
- package/dist/cjs/helpers/variables.native.cjs +5 -4
- package/dist/cjs/helpers/variables.native.js +5 -4
- package/dist/cjs/helpers/variables.native.js.map +1 -1
- package/dist/cjs/helpers/warnOnce.cjs +4 -3
- package/dist/cjs/helpers/warnOnce.native.cjs +4 -3
- package/dist/cjs/helpers/warnOnce.native.js +4 -3
- package/dist/cjs/helpers/warnOnce.native.js.map +1 -1
- package/dist/cjs/hooks/getThemeProxied.cjs +2 -1
- package/dist/cjs/hooks/getThemeProxied.native.cjs +5 -4
- package/dist/cjs/hooks/getThemeProxied.native.js +5 -4
- package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/cjs/hooks/useAnimationDriver.cjs +3 -2
- package/dist/cjs/hooks/useAnimationDriver.native.cjs +3 -2
- package/dist/cjs/hooks/useAnimationDriver.native.js +3 -2
- package/dist/cjs/hooks/useAnimationDriver.native.js.map +1 -1
- package/dist/cjs/hooks/useMedia.cjs +3 -2
- package/dist/cjs/hooks/useMedia.native.cjs +3 -2
- package/dist/cjs/hooks/useMedia.native.js +3 -2
- package/dist/cjs/hooks/useMedia.native.js.map +1 -1
- package/dist/cjs/hooks/useTheme.cjs +2 -1
- package/dist/cjs/hooks/useTheme.native.cjs +2 -1
- package/dist/cjs/hooks/useTheme.native.js +2 -1
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.cjs +2 -1
- package/dist/cjs/hooks/useThemeState.native.cjs +2 -1
- package/dist/cjs/hooks/useThemeState.native.js +2 -1
- package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
- package/dist/cjs/style.cjs +2 -1
- package/dist/cjs/style.native.cjs +2 -1
- package/dist/cjs/style.native.js +2 -1
- package/dist/cjs/style.native.js.map +1 -1
- package/dist/cjs/styled.cjs +3 -2
- package/dist/cjs/styled.native.cjs +2 -1
- package/dist/cjs/styled.native.js +2 -1
- package/dist/cjs/styled.native.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.cjs +2 -1
- package/dist/cjs/views/TamaguiProvider.native.cjs +2 -1
- package/dist/cjs/views/TamaguiProvider.native.js +2 -1
- package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
- package/dist/cjs/views/Theme.cjs +5 -4
- package/dist/cjs/views/Theme.native.cjs +5 -4
- package/dist/cjs/views/Theme.native.js +5 -4
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/cjs/views/ThemeDebug.cjs +3 -2
- package/dist/esm/Tamagui.mjs +2 -1
- package/dist/esm/Tamagui.mjs.map +1 -1
- package/dist/esm/Tamagui.native.js +2 -1
- package/dist/esm/Tamagui.native.js.map +1 -1
- package/dist/esm/_withStableStyle.mjs +2 -1
- package/dist/esm/_withStableStyle.mjs.map +1 -1
- package/dist/esm/_withStableStyle.native.js +2 -1
- package/dist/esm/_withStableStyle.native.js.map +1 -1
- package/dist/esm/config.mjs +8 -7
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/config.native.js +8 -7
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/constants/constants.mjs +2 -1
- package/dist/esm/constants/constants.mjs.map +1 -1
- package/dist/esm/constants/constants.native.js +2 -1
- package/dist/esm/constants/constants.native.js.map +1 -1
- package/dist/esm/constants/isDevTools.mjs +2 -1
- package/dist/esm/constants/isDevTools.mjs.map +1 -1
- package/dist/esm/constants/isDevTools.native.js +2 -1
- package/dist/esm/constants/isDevTools.native.js.map +1 -1
- package/dist/esm/createComponent.mjs +40 -39
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js +39 -38
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createTamagui.mjs +2 -1
- package/dist/esm/createTamagui.mjs.map +1 -1
- package/dist/esm/createTamagui.native.js +2 -1
- package/dist/esm/createTamagui.native.js.map +1 -1
- package/dist/esm/createTokens.mjs +2 -1
- package/dist/esm/createTokens.mjs.map +1 -1
- package/dist/esm/createTokens.native.js +2 -1
- package/dist/esm/createTokens.native.js.map +1 -1
- package/dist/esm/createVariable.mjs +2 -1
- package/dist/esm/createVariable.mjs.map +1 -1
- package/dist/esm/createVariable.native.js +2 -1
- package/dist/esm/createVariable.native.js.map +1 -1
- package/dist/esm/helpers/createDesignSystem.mjs +3 -2
- package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
- package/dist/esm/helpers/createDesignSystem.native.js +2 -1
- package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/esm/helpers/formatDiagnostic.mjs +2 -1
- package/dist/esm/helpers/formatDiagnostic.mjs.map +1 -1
- package/dist/esm/helpers/formatDiagnostic.native.js +2 -1
- package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +37 -36
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +40 -39
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs +4 -3
- package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs +4 -3
- package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.native.js +4 -3
- package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/esm/helpers/log.mjs +2 -1
- package/dist/esm/helpers/log.mjs.map +1 -1
- package/dist/esm/helpers/log.native.js +2 -1
- package/dist/esm/helpers/log.native.js.map +1 -1
- package/dist/esm/helpers/matchMedia.native.js +3 -2
- package/dist/esm/helpers/matchMedia.native.js.map +1 -1
- package/dist/esm/helpers/noteOnce.mjs +2 -1
- package/dist/esm/helpers/noteOnce.mjs.map +1 -1
- package/dist/esm/helpers/noteOnce.native.js +2 -1
- package/dist/esm/helpers/noteOnce.native.js.map +1 -1
- package/dist/esm/helpers/resolveSafeAreaVariable.native.js +2 -1
- package/dist/esm/helpers/resolveSafeAreaVariable.native.js.map +1 -1
- package/dist/esm/helpers/resolveSizing.mjs +2 -1
- package/dist/esm/helpers/resolveSizing.mjs.map +1 -1
- package/dist/esm/helpers/resolveSizing.native.js +2 -1
- package/dist/esm/helpers/resolveSizing.native.js.map +1 -1
- package/dist/esm/helpers/skipProps.mjs +3 -2
- package/dist/esm/helpers/skipProps.mjs.map +1 -1
- package/dist/esm/helpers/skipProps.native.js +3 -2
- package/dist/esm/helpers/skipProps.native.js.map +1 -1
- package/dist/esm/helpers/styledDynamic.mjs +2 -1
- package/dist/esm/helpers/styledDynamic.mjs.map +1 -1
- package/dist/esm/helpers/styledDynamic.native.js +2 -1
- package/dist/esm/helpers/styledDynamic.native.js.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.mjs +2 -1
- package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.native.js +2 -1
- package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/esm/helpers/variableValue.mjs +2 -1
- package/dist/esm/helpers/variableValue.mjs.map +1 -1
- package/dist/esm/helpers/variableValue.native.js +2 -1
- package/dist/esm/helpers/variableValue.native.js.map +1 -1
- package/dist/esm/helpers/variables.mjs +5 -4
- package/dist/esm/helpers/variables.mjs.map +1 -1
- package/dist/esm/helpers/variables.native.js +5 -4
- package/dist/esm/helpers/variables.native.js.map +1 -1
- package/dist/esm/helpers/warnOnce.mjs +4 -3
- package/dist/esm/helpers/warnOnce.mjs.map +1 -1
- package/dist/esm/helpers/warnOnce.native.js +4 -3
- package/dist/esm/helpers/warnOnce.native.js.map +1 -1
- package/dist/esm/hooks/getThemeProxied.mjs +2 -1
- package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
- package/dist/esm/hooks/getThemeProxied.native.js +5 -4
- package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/esm/hooks/useAnimationDriver.mjs +3 -2
- package/dist/esm/hooks/useAnimationDriver.mjs.map +1 -1
- package/dist/esm/hooks/useAnimationDriver.native.js +3 -2
- package/dist/esm/hooks/useAnimationDriver.native.js.map +1 -1
- package/dist/esm/hooks/useMedia.mjs +3 -2
- package/dist/esm/hooks/useMedia.mjs.map +1 -1
- package/dist/esm/hooks/useMedia.native.js +3 -2
- package/dist/esm/hooks/useMedia.native.js.map +1 -1
- package/dist/esm/hooks/useTheme.mjs +2 -1
- package/dist/esm/hooks/useTheme.mjs.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +2 -1
- package/dist/esm/hooks/useTheme.native.js.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +2 -1
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +2 -1
- package/dist/esm/hooks/useThemeState.native.js.map +1 -1
- package/dist/esm/style.mjs +2 -1
- package/dist/esm/style.mjs.map +1 -1
- package/dist/esm/style.native.js +2 -1
- package/dist/esm/style.native.js.map +1 -1
- package/dist/esm/styled.mjs +3 -2
- package/dist/esm/styled.mjs.map +1 -1
- package/dist/esm/styled.native.js +2 -1
- package/dist/esm/styled.native.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.mjs +2 -1
- package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
- package/dist/esm/views/TamaguiProvider.native.js +2 -1
- package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
- package/dist/esm/views/Theme.mjs +5 -4
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +5 -4
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeDebug.mjs +3 -2
- package/dist/esm/views/ThemeDebug.mjs.map +1 -1
- package/package.json +20 -20
- package/src/Tamagui.ts +3 -1
- package/src/_withStableStyle.tsx +3 -1
- package/src/config.ts +9 -6
- package/src/constants/constants.ts +3 -1
- package/src/constants/isDevTools.ts +2 -1
- package/src/createComponent.tsx +55 -37
- package/src/createTamagui.ts +3 -1
- package/src/createTokens.ts +3 -1
- package/src/createVariable.ts +3 -1
- package/src/helpers/createDesignSystem.ts +4 -2
- package/src/helpers/formatDiagnostic.ts +2 -1
- package/src/helpers/getSplitStyles.tsx +56 -29
- package/src/helpers/getThemeCSSRules.ts +5 -3
- package/src/helpers/insertStyleRule.tsx +5 -3
- package/src/helpers/log.ts +3 -1
- package/src/helpers/matchMedia.native.ts +4 -2
- package/src/helpers/noteOnce.ts +2 -1
- package/src/helpers/resolveSafeAreaVariable.native.ts +3 -1
- package/src/helpers/resolveSizing.ts +3 -1
- package/src/helpers/skipProps.ts +4 -2
- package/src/helpers/styledDynamic.ts +3 -1
- package/src/helpers/subscribeToContextGroup.tsx +3 -1
- package/src/helpers/variableValue.ts +3 -1
- package/src/helpers/variables.ts +6 -4
- package/src/helpers/warnOnce.ts +4 -3
- package/src/hooks/getThemeProxied.ts +14 -4
- package/src/hooks/useAnimationDriver.ts +4 -2
- package/src/hooks/useMedia.tsx +4 -2
- package/src/hooks/useTheme.tsx +3 -1
- package/src/hooks/useThemeState.ts +3 -1
- package/src/index.ts +1 -0
- package/src/style.ts +3 -1
- package/src/styled.tsx +14 -26
- package/src/views/TamaguiProvider.tsx +4 -1
- package/src/views/Theme.tsx +6 -4
- package/src/views/ThemeDebug.tsx +8 -2
- package/types/Tamagui.d.ts.map +1 -1
- package/types/_withStableStyle.d.ts.map +1 -1
- package/types/config.d.ts.map +1 -1
- package/types/constants/constants.d.ts.map +1 -1
- package/types/constants/isDevTools.d.ts.map +1 -1
- package/types/createComponent.d.ts.map +1 -1
- package/types/createTamagui.d.ts.map +1 -1
- package/types/createTokens.d.ts.map +1 -1
- package/types/createVariable.d.ts.map +1 -1
- package/types/helpers/createDesignSystem.d.ts.map +1 -1
- package/types/helpers/formatDiagnostic.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
- package/types/helpers/insertStyleRule.d.ts.map +1 -1
- package/types/helpers/log.d.ts.map +1 -1
- package/types/helpers/matchMedia.native.d.ts.map +1 -1
- package/types/helpers/noteOnce.d.ts.map +1 -1
- package/types/helpers/resolveSafeAreaVariable.native.d.ts.map +1 -1
- package/types/helpers/resolveSizing.d.ts.map +1 -1
- package/types/helpers/skipProps.d.ts.map +1 -1
- package/types/helpers/styledDynamic.d.ts.map +1 -1
- package/types/helpers/subscribeToContextGroup.d.ts.map +1 -1
- package/types/helpers/variableValue.d.ts.map +1 -1
- package/types/helpers/variables.d.ts.map +1 -1
- package/types/helpers/warnOnce.d.ts.map +1 -1
- package/types/hooks/getThemeProxied.d.ts.map +1 -1
- package/types/hooks/useAnimationDriver.d.ts.map +1 -1
- package/types/hooks/useMedia.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/style.d.ts.map +1 -1
- package/types/styled.d.ts +1 -2
- package/types/styled.d.ts.map +1 -1
- package/types/views/TamaguiProvider.d.ts.map +1 -1
- package/types/views/Theme.d.ts.map +1 -1
- package/types/views/ThemeDebug.d.ts.map +1 -1
package/src/config.ts
CHANGED
|
@@ -12,13 +12,15 @@ import type {
|
|
|
12
12
|
import { formatDiagnostic } from './helpers/formatDiagnostic'
|
|
13
13
|
import { prepareConfigRevision } from './helpers/grammarConfig'
|
|
14
14
|
|
|
15
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
16
|
+
|
|
15
17
|
export type StyleCompat = 'legacy' | 'react-native' | 'web'
|
|
16
18
|
|
|
17
19
|
let conf: TamaguiInternalConfig | null
|
|
18
20
|
let setConfigCalledByThisInstance = false
|
|
19
21
|
|
|
20
22
|
const haventCalledErrorMessage =
|
|
21
|
-
process.env.NODE_ENV === 'development'
|
|
23
|
+
!isProd && process.env.NODE_ENV === 'development'
|
|
22
24
|
? `
|
|
23
25
|
Haven't called createTamagui yet. ${MISSING_THEME_MESSAGE}
|
|
24
26
|
`
|
|
@@ -36,6 +38,7 @@ const getConfigFromGlobalOrLocal = (): TamaguiInternalConfig | null => {
|
|
|
36
38
|
// defer warning - if createTamagui runs in THIS instance, it's HMR (safe)
|
|
37
39
|
// if it never runs, it's a true duplicate (warn)
|
|
38
40
|
if (
|
|
41
|
+
!isProd &&
|
|
39
42
|
process.env.NODE_ENV === 'development' &&
|
|
40
43
|
globalThis.__tamaguiEvaluationConfig !== globalThis.__tamaguiConfig &&
|
|
41
44
|
!globalThis.__tamaguiHasWarnedGlobalFallback &&
|
|
@@ -69,7 +72,7 @@ export const getSetting = <Key extends keyof GenericTamaguiSettings>(
|
|
|
69
72
|
key: Key
|
|
70
73
|
): GenericTamaguiSettings[Key] => {
|
|
71
74
|
const config = getConfigFromGlobalOrLocal()
|
|
72
|
-
if (process.env.NODE_ENV === 'development') {
|
|
75
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
73
76
|
if (!config) throw new Error(haventCalledErrorMessage)
|
|
74
77
|
}
|
|
75
78
|
return config!.settings[key]
|
|
@@ -95,7 +98,7 @@ export const setConfig = (next: TamaguiInternalConfig) => {
|
|
|
95
98
|
|
|
96
99
|
export const setConfigFont = (name: string, font: any, fontParsed: any) => {
|
|
97
100
|
const config = getConfigFromGlobalOrLocal()
|
|
98
|
-
if (process.env.NODE_ENV === 'development') {
|
|
101
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
99
102
|
if (!config) throw new Error(haventCalledErrorMessage)
|
|
100
103
|
}
|
|
101
104
|
config!.fonts[name] = font
|
|
@@ -136,7 +139,7 @@ const getTokensParsed = (): TokensParsed =>
|
|
|
136
139
|
getConfigFromGlobalOrLocal()?.tokensParsed ?? tokens
|
|
137
140
|
|
|
138
141
|
export const getTokens = (): TokensParsed => {
|
|
139
|
-
if (process.env.NODE_ENV === 'development') {
|
|
142
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
140
143
|
if (!getConfigFromGlobalOrLocal()) throw new Error(haventCalledErrorMessage)
|
|
141
144
|
}
|
|
142
145
|
return getTokensParsed()
|
|
@@ -199,7 +202,7 @@ type DevConfig = {
|
|
|
199
202
|
export let devConfig: DevConfig | undefined
|
|
200
203
|
|
|
201
204
|
export function setupDev(conf: DevConfig) {
|
|
202
|
-
if (process.env.NODE_ENV === 'development') {
|
|
205
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
203
206
|
devConfig = conf
|
|
204
207
|
}
|
|
205
208
|
}
|
|
@@ -220,7 +223,7 @@ export function setupDev(conf: DevConfig) {
|
|
|
220
223
|
export function loadAnimationDriver(name: string, driver: AnimationDriver) {
|
|
221
224
|
const config = getConfigFromGlobalOrLocal()
|
|
222
225
|
if (!config) {
|
|
223
|
-
if (process.env.NODE_ENV === 'development') {
|
|
226
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
224
227
|
console.warn('loadAnimationDriver called before createTamagui')
|
|
225
228
|
}
|
|
226
229
|
return
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import type { StackStyle } from '../types'
|
|
2
2
|
|
|
3
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
4
|
+
|
|
3
5
|
export const THEME_NAME_SEPARATOR = '_'
|
|
4
6
|
export const THEME_CLASSNAME_PREFIX = 't_'
|
|
5
7
|
export const FONT_DATA_ATTRIBUTE_NAME = 'data-tamagui-font'
|
|
6
8
|
|
|
7
9
|
export const MISSING_THEME_MESSAGE =
|
|
8
|
-
process.env.NODE_ENV === 'development'
|
|
10
|
+
!isProd && process.env.NODE_ENV === 'development'
|
|
9
11
|
? `Can't find Tamagui configuration.
|
|
10
12
|
|
|
11
13
|
Most of the time this is due to having mis-matched versions of Tamagui dependencies, or bundlers somehow duplicating them.
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
1
2
|
// for verbose logging outside node/cli
|
|
2
3
|
|
|
3
4
|
export const isDevTools = (() => {
|
|
4
|
-
if (process.env.NODE_ENV === 'development') {
|
|
5
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
5
6
|
try {
|
|
6
7
|
return new Function('try {return this===window;}catch(e){ return false;}')()
|
|
7
8
|
} catch {
|
package/src/createComponent.tsx
CHANGED
|
@@ -75,6 +75,9 @@ import { Slot } from './views/Slot'
|
|
|
75
75
|
import { getThemedChildren } from './views/Theme'
|
|
76
76
|
import type { ViewProps } from './views/View'
|
|
77
77
|
|
|
78
|
+
// cache production mode for node; retain inline checks for client dead-code removal.
|
|
79
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
80
|
+
|
|
78
81
|
/**
|
|
79
82
|
* All things that need one-time setup after createTamagui is called
|
|
80
83
|
*/
|
|
@@ -146,7 +149,7 @@ if (process.env.TAMAGUI_TARGET !== 'native' && typeof window !== 'undefined') {
|
|
|
146
149
|
addEventListener('touchcancel', cancelTouches)
|
|
147
150
|
|
|
148
151
|
// hold option to see debug visualization
|
|
149
|
-
if (process.env.NODE_ENV === 'development') {
|
|
152
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
150
153
|
startVisualizer = () => {
|
|
151
154
|
const devVisualizerConfig = devConfig?.visualizer
|
|
152
155
|
|
|
@@ -266,7 +269,7 @@ export function createComponent<
|
|
|
266
269
|
// a const, a config read) makes it unfoldable.
|
|
267
270
|
if (process.env.TAMAGUI_RUNTIME === 'zero') {
|
|
268
271
|
throw new Error(
|
|
269
|
-
process.env.NODE_ENV !== 'production'
|
|
272
|
+
!isProd && process.env.NODE_ENV !== 'production'
|
|
270
273
|
? `[tamagui zero-runtime] createComponent ran in a zero-runtime graph. No Tamagui component renderer ships in this mode, so a component reference survived compilation. Fix the site or move the owning module to a declared full-runtime island.`
|
|
271
274
|
: '❌ Error 010'
|
|
272
275
|
)
|
|
@@ -332,9 +335,10 @@ export function createComponent<
|
|
|
332
335
|
const styleStaticConfig = resolvedStyleStaticConfig!
|
|
333
336
|
const styledContextKeys = styleStaticConfig.styledContextKeys
|
|
334
337
|
|
|
335
|
-
const internalID =
|
|
338
|
+
const internalID =
|
|
339
|
+
!isProd && process.env.NODE_ENV === 'development' ? React.useId() : ''
|
|
336
340
|
|
|
337
|
-
if (process.env.NODE_ENV === 'development') {
|
|
341
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
338
342
|
if (startVisualizer) {
|
|
339
343
|
startVisualizer()
|
|
340
344
|
startVisualizer = undefined
|
|
@@ -354,7 +358,7 @@ export function createComponent<
|
|
|
354
358
|
}
|
|
355
359
|
|
|
356
360
|
// test only
|
|
357
|
-
if (process.env.NODE_ENV === 'test') {
|
|
361
|
+
if (!isProd && process.env.NODE_ENV === 'test') {
|
|
358
362
|
const testRenderCount = propsIn['data-test-renders']
|
|
359
363
|
if (
|
|
360
364
|
testRenderCount &&
|
|
@@ -393,10 +397,16 @@ export function createComponent<
|
|
|
393
397
|
: false
|
|
394
398
|
|
|
395
399
|
// pick up globalThis.time if set externally (e.g. by a profiling harness)
|
|
396
|
-
if (
|
|
400
|
+
if (
|
|
401
|
+
!isProd &&
|
|
402
|
+
process.env.NODE_ENV === 'development' &&
|
|
403
|
+
!time &&
|
|
404
|
+
(globalThis as any).time
|
|
405
|
+
) {
|
|
397
406
|
time = (globalThis as any).time
|
|
398
407
|
}
|
|
399
|
-
if (process.env.NODE_ENV === 'development' && time)
|
|
408
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time)
|
|
409
|
+
time`non-tamagui time (ignore)`
|
|
400
410
|
|
|
401
411
|
// React inserts default props after your props for some reason...
|
|
402
412
|
// order important so we do loops, you can't just spread because JS does weird things
|
|
@@ -413,7 +423,7 @@ export function createComponent<
|
|
|
413
423
|
props = nextProps as ViewProps | TextProps
|
|
414
424
|
overriddenContextProps = overrides
|
|
415
425
|
|
|
416
|
-
if (process.env.NODE_ENV === 'development' && isClient) {
|
|
426
|
+
if (!isProd && process.env.NODE_ENV === 'development' && isClient) {
|
|
417
427
|
React.useEffect(() => {
|
|
418
428
|
let node: HTMLElement | undefined
|
|
419
429
|
let overlay: HTMLSpanElement | null = null
|
|
@@ -606,7 +616,7 @@ export function createComponent<
|
|
|
606
616
|
// but still stores the current state and applies if it it needs to during render
|
|
607
617
|
let setStateShallow = componentState.setStateShallow
|
|
608
618
|
|
|
609
|
-
if (process.env.NODE_ENV === 'development' && time) time`use-state`
|
|
619
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`use-state`
|
|
610
620
|
|
|
611
621
|
// web-only - string-style not valid for native
|
|
612
622
|
const renderProp = props.render
|
|
@@ -654,7 +664,7 @@ export function createComponent<
|
|
|
654
664
|
process.env.TAMAGUI_TARGET === 'native' && isHOC && 'theme' in props
|
|
655
665
|
const disableTheme = disableThemeProp || (isHOC && !hocThemesSelf)
|
|
656
666
|
|
|
657
|
-
if (process.env.NODE_ENV === 'development' && time) time`theme-props`
|
|
667
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`theme-props`
|
|
658
668
|
|
|
659
669
|
const themeStateProps: UseThemeWithStateProps = {
|
|
660
670
|
disable: disableTheme,
|
|
@@ -684,7 +694,7 @@ export function createComponent<
|
|
|
684
694
|
stateRef.current.nativeStyleUpdate?.(next) ?? false
|
|
685
695
|
}
|
|
686
696
|
|
|
687
|
-
if (process.env.NODE_ENV === 'development') {
|
|
697
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
688
698
|
if (debugProp && debugProp !== 'profile') {
|
|
689
699
|
const name = `${
|
|
690
700
|
displayName ||
|
|
@@ -744,11 +754,11 @@ export function createComponent<
|
|
|
744
754
|
}
|
|
745
755
|
}
|
|
746
756
|
|
|
747
|
-
if (process.env.NODE_ENV === 'development' && time) time`pre-theme-media`
|
|
757
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`pre-theme-media`
|
|
748
758
|
|
|
749
759
|
const [theme, themeState] = useThemeWithState(themeStateProps)
|
|
750
760
|
|
|
751
|
-
if (process.env.NODE_ENV === 'development' && time) time`theme`
|
|
761
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`theme`
|
|
752
762
|
|
|
753
763
|
// don't replace the animated driver component (set above) with the base element,
|
|
754
764
|
// the render string is forwarded to it via viewProps.render instead
|
|
@@ -763,7 +773,7 @@ export function createComponent<
|
|
|
763
773
|
|
|
764
774
|
setDidGetVariableValue(false)
|
|
765
775
|
|
|
766
|
-
if (process.env.NODE_ENV === 'development' && time) time`media`
|
|
776
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`media`
|
|
767
777
|
|
|
768
778
|
const resolveValues =
|
|
769
779
|
// if HOC + mounted + has animation prop, resolve as value so it passes non-variable to child
|
|
@@ -787,7 +797,8 @@ export function createComponent<
|
|
|
787
797
|
|
|
788
798
|
const themeName = themeState?.name || ''
|
|
789
799
|
|
|
790
|
-
if (process.env.NODE_ENV === 'development' && time)
|
|
800
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time)
|
|
801
|
+
time`split-styles-prepare`
|
|
791
802
|
|
|
792
803
|
const splitStyles = useSplitStyles(
|
|
793
804
|
props,
|
|
@@ -1240,6 +1251,7 @@ export function createComponent<
|
|
|
1240
1251
|
|
|
1241
1252
|
if (canAvoidReRender) {
|
|
1242
1253
|
if (
|
|
1254
|
+
!isProd &&
|
|
1243
1255
|
process.env.NODE_ENV === 'development' &&
|
|
1244
1256
|
debugProp &&
|
|
1245
1257
|
debugProp !== 'profile'
|
|
@@ -1256,6 +1268,7 @@ export function createComponent<
|
|
|
1256
1268
|
stateRef.current.updateStyleListener?.()
|
|
1257
1269
|
} else {
|
|
1258
1270
|
if (
|
|
1271
|
+
!isProd &&
|
|
1259
1272
|
process.env.NODE_ENV === 'development' &&
|
|
1260
1273
|
debugProp &&
|
|
1261
1274
|
debugProp !== 'profile'
|
|
@@ -1272,7 +1285,7 @@ export function createComponent<
|
|
|
1272
1285
|
}
|
|
1273
1286
|
}
|
|
1274
1287
|
|
|
1275
|
-
if (process.env.NODE_ENV === 'development' && time) time`split-styles`
|
|
1288
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`split-styles`
|
|
1276
1289
|
|
|
1277
1290
|
// hide strategy will set this opacity = 0 until measured
|
|
1278
1291
|
if (splitStyles) {
|
|
@@ -1297,7 +1310,7 @@ export function createComponent<
|
|
|
1297
1310
|
const mediaListeningKeys = hasRuntimeMediaKeys
|
|
1298
1311
|
? (splitStyles.hasMedia as Set<string>)
|
|
1299
1312
|
: null
|
|
1300
|
-
if (process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
|
|
1313
|
+
if (!isProd && process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
|
|
1301
1314
|
console.info(`useMedia() createComponent`, shouldListenForMedia, mediaListeningKeys)
|
|
1302
1315
|
}
|
|
1303
1316
|
|
|
@@ -1463,20 +1476,25 @@ export function createComponent<
|
|
|
1463
1476
|
}
|
|
1464
1477
|
}
|
|
1465
1478
|
|
|
1466
|
-
if (process.env.NODE_ENV === 'development' && time) time`animations`
|
|
1479
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`animations`
|
|
1467
1480
|
}
|
|
1468
1481
|
|
|
1469
1482
|
if (isWeb && isExiting) {
|
|
1470
1483
|
viewProps.className = `t_exiting ${viewProps.className || ''}`
|
|
1471
1484
|
}
|
|
1472
1485
|
|
|
1473
|
-
if (
|
|
1486
|
+
if (
|
|
1487
|
+
!isProd &&
|
|
1488
|
+
process.env.NODE_ENV === 'development' &&
|
|
1489
|
+
props.untilMeasured &&
|
|
1490
|
+
!isContainer
|
|
1491
|
+
) {
|
|
1474
1492
|
console.warn(
|
|
1475
1493
|
`You set untilMeasured without establishing a container. Set it on the parent with container or container="name", not on the child using a container clause.`
|
|
1476
1494
|
)
|
|
1477
1495
|
}
|
|
1478
1496
|
|
|
1479
|
-
if (process.env.NODE_ENV === 'development' && time) time`destructure`
|
|
1497
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`destructure`
|
|
1480
1498
|
|
|
1481
1499
|
if (
|
|
1482
1500
|
!isPassthrough &&
|
|
@@ -1565,7 +1583,7 @@ export function createComponent<
|
|
|
1565
1583
|
// handle pointer events (native: maps to touch events, web: no-op)
|
|
1566
1584
|
usePointerEvents(props, viewProps)
|
|
1567
1585
|
|
|
1568
|
-
if (process.env.NODE_ENV === 'development') {
|
|
1586
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
1569
1587
|
if (!isText && isWeb && !isHOC) {
|
|
1570
1588
|
React.Children.toArray(props.children).forEach((item) => {
|
|
1571
1589
|
// allow newlines because why not its annoying with mdx
|
|
@@ -1579,13 +1597,13 @@ export function createComponent<
|
|
|
1579
1597
|
}
|
|
1580
1598
|
}
|
|
1581
1599
|
|
|
1582
|
-
if (process.env.NODE_ENV === 'development' && time) time`events-hooks`
|
|
1600
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`events-hooks`
|
|
1583
1601
|
|
|
1584
1602
|
const unPress = () => {
|
|
1585
1603
|
setStateShallow({ press: false, pressIn: false })
|
|
1586
1604
|
}
|
|
1587
1605
|
|
|
1588
|
-
if (process.env.NODE_ENV === 'development' && isWeb) {
|
|
1606
|
+
if (!isProd && process.env.NODE_ENV === 'development' && isWeb) {
|
|
1589
1607
|
useIsomorphicLayoutEffect(() => {
|
|
1590
1608
|
if (debugProp === 'verbose') {
|
|
1591
1609
|
function cssStyleDeclarationToObject(style: CSSStyleDeclaration) {
|
|
@@ -1754,9 +1772,9 @@ export function createComponent<
|
|
|
1754
1772
|
|
|
1755
1773
|
const needsPressState = Boolean(hasDynamicGroupChildren || runtimePressStyle)
|
|
1756
1774
|
|
|
1757
|
-
if (process.env.NODE_ENV === 'development' && time) time`events-setup`
|
|
1775
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`events-setup`
|
|
1758
1776
|
|
|
1759
|
-
if (process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
|
|
1777
|
+
if (!isProd && process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
|
|
1760
1778
|
log(`🪩 events()`, {
|
|
1761
1779
|
runtimeFocusStyle,
|
|
1762
1780
|
runtimePressStyle,
|
|
@@ -1920,9 +1938,9 @@ export function createComponent<
|
|
|
1920
1938
|
Object.assign(viewProps, getWebEvents(events))
|
|
1921
1939
|
}
|
|
1922
1940
|
|
|
1923
|
-
if (process.env.NODE_ENV === 'development' && time) time`events`
|
|
1941
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`events`
|
|
1924
1942
|
|
|
1925
|
-
if (process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
|
|
1943
|
+
if (!isProd && process.env.NODE_ENV === 'development' && debugProp === 'verbose') {
|
|
1926
1944
|
log(`events`, { events, attachHover, attachPress })
|
|
1927
1945
|
}
|
|
1928
1946
|
|
|
@@ -1960,7 +1978,7 @@ export function createComponent<
|
|
|
1960
1978
|
)
|
|
1961
1979
|
}
|
|
1962
1980
|
|
|
1963
|
-
if (process.env.NODE_ENV === 'development' && time) time`hooks`
|
|
1981
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`hooks`
|
|
1964
1982
|
|
|
1965
1983
|
if (asChild && !isHOC) {
|
|
1966
1984
|
elementType = Slot
|
|
@@ -1988,7 +2006,7 @@ export function createComponent<
|
|
|
1988
2006
|
}
|
|
1989
2007
|
}
|
|
1990
2008
|
|
|
1991
|
-
if (process.env.NODE_ENV === 'development' && time) time`spaced-as-child`
|
|
2009
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`spaced-as-child`
|
|
1992
2010
|
|
|
1993
2011
|
let content: ReactNode | undefined
|
|
1994
2012
|
|
|
@@ -2078,7 +2096,7 @@ export function createComponent<
|
|
|
2078
2096
|
}
|
|
2079
2097
|
}
|
|
2080
2098
|
|
|
2081
|
-
if (process.env.NODE_ENV === 'development' && time) time`use-children`
|
|
2099
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`use-children`
|
|
2082
2100
|
}
|
|
2083
2101
|
|
|
2084
2102
|
// wrap with GestureDetector for RNGH press handling (native only, no-op on web)
|
|
@@ -2121,7 +2139,7 @@ export function createComponent<
|
|
|
2121
2139
|
content = <ResetPresence disabled={!needsReset}>{content}</ResetPresence>
|
|
2122
2140
|
}
|
|
2123
2141
|
|
|
2124
|
-
if (process.env.NODE_ENV === 'development' && time) time`create-element`
|
|
2142
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`create-element`
|
|
2125
2143
|
|
|
2126
2144
|
if (process.env.TAMAGUI_TARGET === 'web' && conditionalStates?.has('focus-within')) {
|
|
2127
2145
|
content = (
|
|
@@ -2188,14 +2206,14 @@ export function createComponent<
|
|
|
2188
2206
|
)
|
|
2189
2207
|
}
|
|
2190
2208
|
|
|
2191
|
-
if (process.env.NODE_ENV === 'development' && time) time`group-context`
|
|
2209
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`group-context`
|
|
2192
2210
|
|
|
2193
2211
|
content =
|
|
2194
2212
|
disableTheme || !splitStyles
|
|
2195
2213
|
? content
|
|
2196
2214
|
: getThemedChildren(themeState, content, themeStateProps, false, stateRef)
|
|
2197
2215
|
|
|
2198
|
-
if (process.env.NODE_ENV === 'development' && time) time`themed-children`
|
|
2216
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`themed-children`
|
|
2199
2217
|
|
|
2200
2218
|
if (overriddenContextProps && contextForOverride) {
|
|
2201
2219
|
const Provider = contextForOverride.Provider!
|
|
@@ -2214,7 +2232,7 @@ export function createComponent<
|
|
|
2214
2232
|
)
|
|
2215
2233
|
}
|
|
2216
2234
|
|
|
2217
|
-
if (process.env.NODE_ENV === 'development' && time) time`context-override`
|
|
2235
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`context-override`
|
|
2218
2236
|
|
|
2219
2237
|
// SSR style support - for non compiled styles we render them inline until client takes over
|
|
2220
2238
|
// on client we then switch over to our global sheet insert, because rendering inline is expensive
|
|
@@ -2233,9 +2251,9 @@ export function createComponent<
|
|
|
2233
2251
|
)
|
|
2234
2252
|
}
|
|
2235
2253
|
|
|
2236
|
-
if (process.env.NODE_ENV === 'development' && time) time`style-tags`
|
|
2254
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) time`style-tags`
|
|
2237
2255
|
|
|
2238
|
-
if (process.env.NODE_ENV === 'development') {
|
|
2256
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
2239
2257
|
if (debugProp && debugProp !== 'profile') {
|
|
2240
2258
|
const element = typeof elementType === 'string' ? elementType : 'Component'
|
|
2241
2259
|
const title = `render <${element} /> (${internalID}) with props`
|
|
@@ -2292,7 +2310,7 @@ export function createComponent<
|
|
|
2292
2310
|
}
|
|
2293
2311
|
}
|
|
2294
2312
|
|
|
2295
|
-
if (process.env.NODE_ENV === 'development' && time) {
|
|
2313
|
+
if (!isProd && process.env.NODE_ENV === 'development' && time) {
|
|
2296
2314
|
time`rest`
|
|
2297
2315
|
if (!globalThis['willPrint']) {
|
|
2298
2316
|
globalThis['willPrint'] = true
|
package/src/createTamagui.ts
CHANGED
|
@@ -38,6 +38,8 @@ import type {
|
|
|
38
38
|
Variable,
|
|
39
39
|
} from './types'
|
|
40
40
|
|
|
41
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
42
|
+
|
|
41
43
|
/**
|
|
42
44
|
* Determines if a token category should have px units added.
|
|
43
45
|
* Following the principle: only add px to predefined categories that need them.
|
|
@@ -315,7 +317,7 @@ export function createTamagui<Conf extends CreateTamaguiProps>(
|
|
|
315
317
|
|
|
316
318
|
initializeTamaguiConfig(config)
|
|
317
319
|
|
|
318
|
-
if (process.env.NODE_ENV !== 'development') {
|
|
320
|
+
if (isProd || process.env.NODE_ENV !== 'development') {
|
|
319
321
|
return config as any
|
|
320
322
|
}
|
|
321
323
|
|
package/src/createTokens.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { createVariables } from './createVariables'
|
|
2
2
|
import type { CreateTokens, Variable } from './types'
|
|
3
3
|
|
|
4
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
5
|
+
|
|
4
6
|
export function createTokens<T extends CreateTokens>(tokens: T): MakeTokens<T> {
|
|
5
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
7
|
+
if (!isProd && process.env.NODE_ENV !== 'production') {
|
|
6
8
|
validateNoTrueTokenKeys(tokens)
|
|
7
9
|
}
|
|
8
10
|
return createVariables(tokens, process.env.TAMAGUI_TOKEN_PREFIX ?? 't') as any
|
package/src/createVariable.ts
CHANGED
|
@@ -4,6 +4,8 @@ import { simpleHash } from '@tamagui/helpers'
|
|
|
4
4
|
import { getConfig } from './config'
|
|
5
5
|
import type { PxValue, TokenCategories, Variable } from './types'
|
|
6
6
|
|
|
7
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
8
|
+
|
|
7
9
|
/**
|
|
8
10
|
* Should rename this to Token
|
|
9
11
|
* Moving to objects for React Server Components support
|
|
@@ -102,7 +104,7 @@ export function getVariableValue(v: Variable | any, group?: TokenCategories) {
|
|
|
102
104
|
|
|
103
105
|
// bugfix { space: { 0.5: 10 } } was generating var(--space-0.5) (invalid CSS):
|
|
104
106
|
export const createCSSVariable = (nameProp: string, includeVar = true) => {
|
|
105
|
-
if (process.env.NODE_ENV === 'development') {
|
|
107
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
106
108
|
if (!nameProp || typeof nameProp !== 'string') {
|
|
107
109
|
throw new Error(`createCSSVariable expected string, got: ${nameProp}`)
|
|
108
110
|
}
|
|
@@ -11,6 +11,8 @@ import { htmlResetCSS } from '../dom/htmlReset'
|
|
|
11
11
|
import { getThemeCSSRules } from './getThemeCSSRules'
|
|
12
12
|
import { getAllRules, wrapStyleRules } from './insertStyleRule'
|
|
13
13
|
|
|
14
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
15
|
+
|
|
14
16
|
type ThemeConfig = {
|
|
15
17
|
cssRuleSets: string[]
|
|
16
18
|
getThemeRulesSets: () => string[]
|
|
@@ -96,7 +98,7 @@ export function buildCSSRuleSets(
|
|
|
96
98
|
): string[] {
|
|
97
99
|
if (!process.env.TAMAGUI_DID_OUTPUT_CSS) {
|
|
98
100
|
const cssRuleSets: string[] = []
|
|
99
|
-
const developmentWhitespace = process.env.NODE_ENV === 'development'
|
|
101
|
+
const developmentWhitespace = !isProd && process.env.NODE_ENV === 'development'
|
|
100
102
|
const sep = developmentWhitespace ? ' ' : ''
|
|
101
103
|
|
|
102
104
|
function declarationsToRuleSet(decs: string[], selector = '') {
|
|
@@ -251,7 +253,7 @@ ${htmlResetCSS}
|
|
|
251
253
|
${pointerEventsCSS}
|
|
252
254
|
${hideScrollBarsCSS}`
|
|
253
255
|
const designSystem = `${
|
|
254
|
-
process.env.NODE_ENV === 'production'
|
|
256
|
+
isProd || process.env.NODE_ENV === 'production'
|
|
255
257
|
? baseDesignSystem
|
|
256
258
|
.replaceAll(' {', '{')
|
|
257
259
|
.replaceAll('{ ', '{')
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
const isProd = process.env.NODE_ENV === 'production'
|
|
1
2
|
const maxDiagnosticValueLength = 160
|
|
2
3
|
|
|
3
4
|
function formatDiagnosticValue(
|
|
@@ -56,7 +57,7 @@ export function formatDiagnostic(
|
|
|
56
57
|
prop?: string,
|
|
57
58
|
received?: unknown
|
|
58
59
|
) {
|
|
59
|
-
if (process.env.NODE_ENV === 'development') {
|
|
60
|
+
if (!isProd && process.env.NODE_ENV === 'development') {
|
|
60
61
|
const formattedValue = prop ? formatDiagnosticValue(received) : ''
|
|
61
62
|
const boundedValue =
|
|
62
63
|
formattedValue.length > maxDiagnosticValueLength
|