@tamagui/web 1.5.6 → 1.5.8
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.js +3 -3
- package/dist/cjs/Tamagui.js.map +2 -2
- package/dist/cjs/addTheme.js +3 -3
- package/dist/cjs/addTheme.js.map +1 -1
- package/dist/cjs/config.js.map +1 -1
- package/dist/cjs/contexts/FontLanguageContext.js.map +1 -1
- package/dist/cjs/contexts/TextAncestorContext.js.map +2 -2
- package/dist/cjs/createComponent.js +17 -17
- package/dist/cjs/createComponent.js.map +1 -1
- package/dist/cjs/createFont.js.map +1 -1
- package/dist/cjs/createShorthands.js.map +1 -1
- package/dist/cjs/createTamagui.js +9 -9
- package/dist/cjs/createTamagui.js.map +1 -1
- package/dist/cjs/createTheme.js.map +1 -1
- package/dist/cjs/createTokens.js +1 -1
- package/dist/cjs/createTokens.js.map +1 -1
- package/dist/cjs/createVariable.js +1 -1
- package/dist/cjs/createVariable.js.map +1 -1
- package/dist/cjs/createVariables.js +1 -1
- package/dist/cjs/createVariables.js.map +1 -1
- package/dist/cjs/helpers/ThemeManager.js +6 -4
- package/dist/cjs/helpers/ThemeManager.js.map +2 -2
- package/dist/cjs/helpers/ThemeManagerContext.js.map +1 -1
- package/dist/cjs/helpers/createMediaStyle.js +1 -1
- package/dist/cjs/helpers/createMediaStyle.js.map +1 -1
- package/dist/cjs/helpers/createPropMapper.js +8 -8
- package/dist/cjs/helpers/createPropMapper.js.map +2 -2
- package/dist/cjs/helpers/expandStyles.js +4 -4
- package/dist/cjs/helpers/expandStyles.js.map +1 -1
- package/dist/cjs/helpers/extendStaticConfig.js +2 -2
- package/dist/cjs/helpers/extendStaticConfig.js.map +1 -1
- package/dist/cjs/helpers/getAnimationDriver.js +1 -1
- package/dist/cjs/helpers/getAnimationDriver.js.map +1 -1
- package/dist/cjs/helpers/getExpandedShorthands.js +2 -3
- package/dist/cjs/helpers/getExpandedShorthands.js.map +2 -2
- package/dist/cjs/helpers/getSplitStyles.js +9 -9
- package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
- package/dist/cjs/helpers/getStylesAtomic.js +3 -3
- package/dist/cjs/helpers/getStylesAtomic.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.js +3 -3
- package/dist/cjs/helpers/getThemeCSSRules.js.map +1 -1
- package/dist/cjs/helpers/getVariantExtras.js +2 -2
- package/dist/cjs/helpers/getVariantExtras.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.js.map +1 -1
- package/dist/cjs/helpers/isTamaguiComponent.js.map +1 -1
- package/dist/cjs/helpers/isTamaguiElement.js +1 -1
- package/dist/cjs/helpers/isTamaguiElement.js.map +1 -1
- package/dist/cjs/helpers/matchMedia.js.map +1 -1
- package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeShadow.js +1 -1
- package/dist/cjs/helpers/normalizeShadow.js.map +1 -1
- package/dist/cjs/helpers/normalizeShadow.native.js +2 -2
- package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.js +3 -3
- package/dist/cjs/helpers/normalizeValueWithProperty.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeVariables.js +1 -1
- package/dist/cjs/helpers/proxyThemeVariables.js.map +1 -1
- package/dist/cjs/helpers/registerCSSVariable.js +1 -1
- package/dist/cjs/helpers/registerCSSVariable.js.map +1 -1
- package/dist/cjs/helpers/themeable.js +1 -1
- package/dist/cjs/helpers/themeable.js.map +1 -1
- package/dist/cjs/helpers/themes.js +2 -2
- package/dist/cjs/helpers/themes.js.map +1 -1
- package/dist/cjs/helpers/useShallowSetState.js.map +2 -2
- package/dist/cjs/hooks/useMedia.js +4 -4
- package/dist/cjs/hooks/useMedia.js.map +1 -1
- package/dist/cjs/hooks/useStyle.js +5 -5
- package/dist/cjs/hooks/useStyle.js.map +1 -1
- package/dist/cjs/hooks/useTheme.js +7 -7
- package/dist/cjs/hooks/useTheme.js.map +1 -1
- package/dist/cjs/hooks/useThemeName.js +2 -2
- package/dist/cjs/hooks/useThemeName.js.map +1 -1
- package/dist/cjs/index.js +49 -49
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/insertFont.js +4 -4
- package/dist/cjs/insertFont.js.map +1 -1
- package/dist/cjs/setupReactNative.js.map +1 -1
- package/dist/cjs/styled.js +2 -2
- package/dist/cjs/styled.js.map +1 -1
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/updateTheme.js +2 -2
- package/dist/cjs/updateTheme.js.map +1 -1
- package/dist/cjs/views/FontLanguage.js.map +1 -1
- package/dist/cjs/views/FontLanguage.native.js +1 -1
- package/dist/cjs/views/FontLanguage.native.js.map +2 -2
- package/dist/cjs/views/Stack.js +2 -2
- package/dist/cjs/views/Stack.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.js +4 -4
- package/dist/cjs/views/TamaguiProvider.js.map +1 -1
- package/dist/cjs/views/Text.js +1 -1
- package/dist/cjs/views/Text.js.map +1 -1
- package/dist/cjs/views/Theme.js +4 -4
- package/dist/cjs/views/Theme.js.map +1 -1
- package/dist/cjs/views/ThemeProvider.js +2 -2
- package/dist/cjs/views/ThemeProvider.js.map +1 -1
- package/dist/esm/Tamagui.js +7 -3
- package/dist/esm/Tamagui.js.map +2 -2
- package/dist/esm/Tamagui.mjs +7 -3
- package/dist/esm/Tamagui.mjs.map +2 -2
- package/dist/esm/addTheme.js +3 -3
- package/dist/esm/addTheme.js.map +1 -1
- package/dist/esm/addTheme.mjs +3 -3
- package/dist/esm/addTheme.mjs.map +1 -1
- package/dist/esm/config.js.map +1 -1
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/contexts/FontLanguageContext.js.map +1 -1
- package/dist/esm/contexts/FontLanguageContext.mjs.map +1 -1
- package/dist/esm/contexts/TextAncestorContext.js.map +2 -2
- package/dist/esm/contexts/TextAncestorContext.mjs.map +2 -2
- package/dist/esm/createComponent.js +17 -17
- package/dist/esm/createComponent.js.map +1 -1
- package/dist/esm/createComponent.mjs +17 -17
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createFont.js.map +1 -1
- package/dist/esm/createFont.mjs.map +1 -1
- package/dist/esm/createShorthands.js.map +1 -1
- package/dist/esm/createShorthands.mjs.map +1 -1
- package/dist/esm/createTamagui.js +9 -9
- package/dist/esm/createTamagui.js.map +1 -1
- package/dist/esm/createTamagui.mjs +9 -9
- package/dist/esm/createTamagui.mjs.map +1 -1
- package/dist/esm/createTheme.js.map +1 -1
- package/dist/esm/createTheme.mjs.map +1 -1
- package/dist/esm/createTokens.js +1 -1
- package/dist/esm/createTokens.js.map +1 -1
- package/dist/esm/createTokens.mjs +1 -1
- package/dist/esm/createTokens.mjs.map +1 -1
- package/dist/esm/createVariable.js +1 -1
- package/dist/esm/createVariable.js.map +1 -1
- package/dist/esm/createVariable.mjs +1 -1
- package/dist/esm/createVariable.mjs.map +1 -1
- package/dist/esm/createVariables.js +1 -1
- package/dist/esm/createVariables.js.map +1 -1
- package/dist/esm/createVariables.mjs +1 -1
- package/dist/esm/createVariables.mjs.map +1 -1
- package/dist/esm/helpers/ThemeManager.js +6 -4
- package/dist/esm/helpers/ThemeManager.js.map +2 -2
- package/dist/esm/helpers/ThemeManager.mjs +6 -4
- package/dist/esm/helpers/ThemeManager.mjs.map +2 -2
- package/dist/esm/helpers/ThemeManagerContext.js.map +1 -1
- package/dist/esm/helpers/ThemeManagerContext.mjs.map +1 -1
- package/dist/esm/helpers/createMediaStyle.js +1 -1
- package/dist/esm/helpers/createMediaStyle.js.map +1 -1
- package/dist/esm/helpers/createMediaStyle.mjs +1 -1
- package/dist/esm/helpers/createMediaStyle.mjs.map +1 -1
- package/dist/esm/helpers/createPropMapper.js +8 -8
- package/dist/esm/helpers/createPropMapper.js.map +2 -2
- package/dist/esm/helpers/createPropMapper.mjs +8 -8
- package/dist/esm/helpers/createPropMapper.mjs.map +2 -2
- package/dist/esm/helpers/expandStyles.js +4 -4
- package/dist/esm/helpers/expandStyles.js.map +1 -1
- package/dist/esm/helpers/expandStyles.mjs +4 -4
- package/dist/esm/helpers/expandStyles.mjs.map +1 -1
- package/dist/esm/helpers/extendStaticConfig.js +2 -2
- package/dist/esm/helpers/extendStaticConfig.js.map +1 -1
- package/dist/esm/helpers/extendStaticConfig.mjs +2 -2
- package/dist/esm/helpers/extendStaticConfig.mjs.map +1 -1
- package/dist/esm/helpers/getAnimationDriver.js +1 -1
- package/dist/esm/helpers/getAnimationDriver.js.map +1 -1
- package/dist/esm/helpers/getAnimationDriver.mjs +1 -1
- package/dist/esm/helpers/getAnimationDriver.mjs.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.js +2 -3
- package/dist/esm/helpers/getExpandedShorthands.js.map +2 -2
- package/dist/esm/helpers/getExpandedShorthands.mjs +2 -3
- package/dist/esm/helpers/getExpandedShorthands.mjs.map +2 -2
- package/dist/esm/helpers/getSplitStyles.js +9 -9
- package/dist/esm/helpers/getSplitStyles.js.map +2 -2
- package/dist/esm/helpers/getSplitStyles.mjs +9 -9
- package/dist/esm/helpers/getSplitStyles.mjs.map +2 -2
- package/dist/esm/helpers/getStylesAtomic.js +3 -3
- package/dist/esm/helpers/getStylesAtomic.js.map +1 -1
- package/dist/esm/helpers/getStylesAtomic.mjs +3 -3
- package/dist/esm/helpers/getStylesAtomic.mjs.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.js +3 -3
- package/dist/esm/helpers/getThemeCSSRules.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs +3 -3
- package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
- package/dist/esm/helpers/getVariantExtras.js +2 -2
- package/dist/esm/helpers/getVariantExtras.js.map +1 -1
- package/dist/esm/helpers/getVariantExtras.mjs +2 -2
- package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.js.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
- package/dist/esm/helpers/isTamaguiComponent.js.map +1 -1
- package/dist/esm/helpers/isTamaguiComponent.mjs.map +1 -1
- package/dist/esm/helpers/isTamaguiElement.js +1 -1
- package/dist/esm/helpers/isTamaguiElement.js.map +1 -1
- package/dist/esm/helpers/isTamaguiElement.mjs +1 -1
- package/dist/esm/helpers/isTamaguiElement.mjs.map +1 -1
- package/dist/esm/helpers/matchMedia.js.map +1 -1
- package/dist/esm/helpers/matchMedia.mjs.map +1 -1
- package/dist/esm/helpers/matchMedia.native.js.map +1 -1
- package/dist/esm/helpers/matchMedia.native.mjs.map +1 -1
- package/dist/esm/helpers/normalizeShadow.js +1 -1
- package/dist/esm/helpers/normalizeShadow.js.map +1 -1
- package/dist/esm/helpers/normalizeShadow.mjs +1 -1
- package/dist/esm/helpers/normalizeShadow.mjs.map +1 -1
- package/dist/esm/helpers/normalizeShadow.native.js +2 -2
- package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/esm/helpers/normalizeShadow.native.mjs +2 -2
- package/dist/esm/helpers/normalizeShadow.native.mjs.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.js +3 -3
- package/dist/esm/helpers/normalizeValueWithProperty.js.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.mjs +3 -3
- package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
- package/dist/esm/helpers/proxyThemeVariables.js +1 -1
- package/dist/esm/helpers/proxyThemeVariables.js.map +1 -1
- package/dist/esm/helpers/proxyThemeVariables.mjs +1 -1
- package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.js +1 -1
- package/dist/esm/helpers/registerCSSVariable.js.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.mjs +1 -1
- package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
- package/dist/esm/helpers/themeable.js +1 -1
- package/dist/esm/helpers/themeable.js.map +1 -1
- package/dist/esm/helpers/themeable.mjs +1 -1
- package/dist/esm/helpers/themeable.mjs.map +1 -1
- package/dist/esm/helpers/themes.js +2 -2
- package/dist/esm/helpers/themes.js.map +1 -1
- package/dist/esm/helpers/themes.mjs +2 -2
- package/dist/esm/helpers/themes.mjs.map +1 -1
- package/dist/esm/helpers/useShallowSetState.js.map +2 -2
- package/dist/esm/helpers/useShallowSetState.mjs.map +2 -2
- package/dist/esm/hooks/useMedia.js +4 -4
- package/dist/esm/hooks/useMedia.js.map +1 -1
- package/dist/esm/hooks/useMedia.mjs +4 -4
- package/dist/esm/hooks/useMedia.mjs.map +1 -1
- package/dist/esm/hooks/useStyle.js +5 -5
- package/dist/esm/hooks/useStyle.js.map +1 -1
- package/dist/esm/hooks/useStyle.mjs +5 -5
- package/dist/esm/hooks/useStyle.mjs.map +1 -1
- package/dist/esm/hooks/useTheme.js +7 -7
- package/dist/esm/hooks/useTheme.js.map +1 -1
- package/dist/esm/hooks/useTheme.mjs +7 -7
- package/dist/esm/hooks/useTheme.mjs.map +1 -1
- package/dist/esm/hooks/useThemeName.js +2 -2
- package/dist/esm/hooks/useThemeName.js.map +1 -1
- package/dist/esm/hooks/useThemeName.mjs +2 -2
- package/dist/esm/hooks/useThemeName.mjs.map +1 -1
- package/dist/esm/index.js +49 -49
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +49 -49
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/insertFont.js +4 -4
- package/dist/esm/insertFont.js.map +1 -1
- package/dist/esm/insertFont.mjs +4 -4
- package/dist/esm/insertFont.mjs.map +1 -1
- package/dist/esm/setupReactNative.js.map +1 -1
- package/dist/esm/setupReactNative.mjs.map +1 -1
- package/dist/esm/styled.js +2 -2
- package/dist/esm/styled.js.map +1 -1
- package/dist/esm/styled.mjs +2 -2
- package/dist/esm/styled.mjs.map +1 -1
- package/dist/esm/updateTheme.js +2 -2
- package/dist/esm/updateTheme.js.map +1 -1
- package/dist/esm/updateTheme.mjs +2 -2
- package/dist/esm/updateTheme.mjs.map +1 -1
- package/dist/esm/views/FontLanguage.js.map +1 -1
- package/dist/esm/views/FontLanguage.mjs.map +1 -1
- package/dist/esm/views/FontLanguage.native.js +1 -1
- package/dist/esm/views/FontLanguage.native.js.map +2 -2
- package/dist/esm/views/FontLanguage.native.mjs +1 -1
- package/dist/esm/views/FontLanguage.native.mjs.map +2 -2
- package/dist/esm/views/Stack.js +2 -2
- package/dist/esm/views/Stack.js.map +1 -1
- package/dist/esm/views/Stack.mjs +2 -2
- package/dist/esm/views/Stack.mjs.map +1 -1
- package/dist/esm/views/TamaguiProvider.js +4 -4
- package/dist/esm/views/TamaguiProvider.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.mjs +4 -4
- package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
- package/dist/esm/views/Text.js +1 -1
- package/dist/esm/views/Text.js.map +1 -1
- package/dist/esm/views/Text.mjs +1 -1
- package/dist/esm/views/Text.mjs.map +1 -1
- package/dist/esm/views/Theme.js +4 -4
- package/dist/esm/views/Theme.js.map +1 -1
- package/dist/esm/views/Theme.mjs +4 -4
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/ThemeProvider.js +2 -2
- package/dist/esm/views/ThemeProvider.js.map +1 -1
- package/dist/esm/views/ThemeProvider.mjs +2 -2
- package/dist/esm/views/ThemeProvider.mjs.map +1 -1
- package/package.json +9 -9
- package/src/Tamagui.ts +7 -3
- package/src/addTheme.ts +4 -4
- package/src/config.ts +1 -1
- package/src/contexts/FontLanguageContext.tsx +1 -1
- package/src/contexts/TextAncestorContext.tsx +1 -1
- package/src/createComponent.tsx +17 -17
- package/src/createFont.ts +1 -1
- package/src/createShorthands.ts +1 -1
- package/src/createTamagui.ts +10 -10
- package/src/createTheme.ts +1 -1
- package/src/createTokens.ts +3 -3
- package/src/createVariable.ts +1 -1
- package/src/createVariables.ts +1 -1
- package/src/helpers/ThemeManager.tsx +11 -5
- package/src/helpers/ThemeManagerContext.tsx +1 -1
- package/src/helpers/createMediaStyle.ts +2 -2
- package/src/helpers/createPropMapper.ts +13 -11
- package/src/helpers/expandStyles.ts +4 -4
- package/src/helpers/extendStaticConfig.ts +3 -3
- package/src/helpers/getAnimationDriver.tsx +1 -1
- package/src/helpers/getExpandedShorthands.ts +4 -6
- package/src/helpers/getSplitStyles.tsx +14 -11
- package/src/helpers/getStylesAtomic.ts +4 -4
- package/src/helpers/getThemeCSSRules.ts +4 -4
- package/src/helpers/getVariantExtras.tsx +4 -4
- package/src/helpers/insertStyleRule.tsx +1 -1
- package/src/helpers/isTamaguiComponent.tsx +1 -1
- package/src/helpers/isTamaguiElement.tsx +2 -2
- package/src/helpers/matchMedia.native.ts +1 -1
- package/src/helpers/matchMedia.ts +1 -1
- package/src/helpers/normalizeShadow.native.ts +2 -2
- package/src/helpers/normalizeShadow.ts +1 -1
- package/src/helpers/normalizeValueWithProperty.ts +3 -3
- package/src/helpers/proxyThemeVariables.tsx +1 -1
- package/src/helpers/registerCSSVariable.ts +1 -1
- package/src/helpers/themeable.tsx +2 -2
- package/src/helpers/themes.ts +3 -3
- package/src/helpers/useShallowSetState.tsx +1 -2
- package/src/hooks/useMedia.tsx +5 -5
- package/src/hooks/useStyle.tsx +5 -5
- package/src/hooks/useTheme.tsx +8 -8
- package/src/hooks/useThemeName.tsx +3 -3
- package/src/index.ts +49 -49
- package/src/insertFont.ts +6 -6
- package/src/setupReactNative.ts +1 -1
- package/src/styled.tsx +4 -4
- package/src/types.tsx +4 -4
- package/src/updateTheme.ts +3 -3
- package/src/views/FontLanguage.native.tsx +3 -3
- package/src/views/FontLanguage.tsx +1 -1
- package/src/views/Stack.tsx +3 -3
- package/src/views/TamaguiProvider.tsx +5 -5
- package/src/views/Text.tsx +2 -2
- package/src/views/Theme.tsx +5 -5
- package/src/views/ThemeProvider.tsx +2 -2
- package/types/Tamagui.d.ts +5 -5
- package/types/Tamagui.d.ts.map +1 -1
- package/types/addTheme.d.ts +18 -18
- package/types/addTheme.d.ts.map +1 -1
- package/types/config.d.ts +24 -24
- package/types/config.d.ts.map +1 -1
- package/types/contexts/FontLanguageContext.d.ts +1 -1
- package/types/contexts/TextAncestorContext.d.ts +2 -2
- package/types/contexts/TextAncestorContext.d.ts.map +1 -1
- package/types/createFont.d.ts +1 -1
- package/types/createFont.d.ts.map +1 -1
- package/types/createShorthands.d.ts +1 -1
- package/types/createShorthands.d.ts.map +1 -1
- package/types/createTamagui.d.ts +1 -1
- package/types/createTamagui.d.ts.map +1 -1
- package/types/createTheme.d.ts +1 -1
- package/types/createTheme.d.ts.map +1 -1
- package/types/createTokens.d.ts +2 -2
- package/types/createTokens.d.ts.map +1 -1
- package/types/createVariables.d.ts +1 -1
- package/types/createVariables.d.ts.map +1 -1
- package/types/helpers/ThemeManager.d.ts +2 -2
- package/types/helpers/ThemeManager.d.ts.map +1 -1
- package/types/helpers/ThemeManagerContext.d.ts +1 -1
- package/types/helpers/ThemeManagerContext.d.ts.map +1 -1
- package/types/helpers/createMediaStyle.d.ts +1 -1
- package/types/helpers/createMediaStyle.d.ts.map +1 -1
- package/types/helpers/createPropMapper.d.ts +1 -1
- package/types/helpers/createPropMapper.d.ts.map +1 -1
- package/types/helpers/expandStyles.d.ts +5 -5
- package/types/helpers/expandStyles.d.ts.map +1 -1
- package/types/helpers/extendStaticConfig.d.ts +1 -1
- package/types/helpers/extendStaticConfig.d.ts.map +1 -1
- package/types/helpers/getAnimationDriver.d.ts +1 -1
- package/types/helpers/getExpandedShorthands.d.ts +1 -1
- package/types/helpers/getExpandedShorthands.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts +2 -2
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/getStylesAtomic.d.ts +1 -1
- package/types/helpers/getStylesAtomic.d.ts.map +1 -1
- package/types/helpers/getThemeCSSRules.d.ts +1 -1
- package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
- package/types/helpers/getVariantExtras.d.ts +2 -2
- package/types/helpers/getVariantExtras.d.ts.map +1 -1
- package/types/helpers/insertStyleRule.d.ts +1 -1
- package/types/helpers/insertStyleRule.d.ts.map +1 -1
- package/types/helpers/isTamaguiComponent.d.ts +1 -1
- package/types/helpers/isTamaguiComponent.d.ts.map +1 -1
- package/types/helpers/isTamaguiElement.d.ts +1 -1
- package/types/helpers/isTamaguiElement.d.ts.map +1 -1
- package/types/helpers/matchMedia.d.ts +1 -1
- package/types/helpers/matchMedia.d.ts.map +1 -1
- package/types/helpers/matchMedia.native.d.ts +1 -1
- package/types/helpers/matchMedia.native.d.ts.map +1 -1
- package/types/helpers/registerCSSVariable.d.ts +1 -1
- package/types/helpers/registerCSSVariable.d.ts.map +1 -1
- package/types/helpers/themeable.d.ts +1 -1
- package/types/helpers/themeable.d.ts.map +1 -1
- package/types/helpers/themes.d.ts +1 -1
- package/types/helpers/themes.d.ts.map +1 -1
- package/types/helpers/useShallowSetState.d.ts +1 -2
- package/types/helpers/useShallowSetState.d.ts.map +1 -1
- package/types/hooks/useMedia.d.ts +1 -1
- package/types/hooks/useMedia.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +2 -2
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/hooks/useThemeName.d.ts +1 -1
- package/types/hooks/useThemeName.d.ts.map +1 -1
- package/types/index.d.ts +49 -49
- package/types/index.d.ts.map +1 -1
- package/types/insertFont.d.ts +2 -2
- package/types/insertFont.d.ts.map +1 -1
- package/types/setupReactNative.d.ts +1 -1
- package/types/setupReactNative.d.ts.map +1 -1
- package/types/styled.d.ts +1 -1
- package/types/styled.d.ts.map +1 -1
- package/types/types.d.ts +4 -4
- package/types/types.d.ts.map +1 -1
- package/types/updateTheme.d.ts +18 -18
- package/types/updateTheme.d.ts.map +1 -1
- package/types/views/FontLanguage.d.ts +1 -1
- package/types/views/FontLanguage.d.ts.map +1 -1
- package/types/views/FontLanguage.native.d.ts +1 -1
- package/types/views/FontLanguage.native.d.ts.map +1 -1
- package/types/views/Stack.d.ts +2 -2
- package/types/views/Stack.d.ts.map +1 -1
- package/types/views/TamaguiProvider.d.ts +1 -1
- package/types/views/TamaguiProvider.d.ts.map +1 -1
- package/types/views/Text.d.ts +2 -2
- package/types/views/Text.d.ts.map +1 -1
- package/types/views/Theme.d.ts +2 -2
- package/types/views/Theme.d.ts.map +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Text.tsx"],
|
|
4
|
-
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent'\nimport { TextProps, TextPropsBase } from '../types'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
|
|
4
|
+
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent.js'\nimport { TextProps, TextPropsBase } from '../types.js'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
|
|
5
5
|
"mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,oBAAoB,mBAAmB;AAGhD,SAAS,uBAAuB;AAGhC,MAAM,eAAe;AAAA,EACnB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,cAAc;AAAA,EACd,YAAY;AACd;AAEO,MAAM,OAAO,gBAAoD;AAAA,EACtE,eAAe;AAAA,EACf,kBAAkB;AAAA,EAClB,QAAQ;AAAA,EAER,cAAc;AAAA;AAAA,IAEZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,GAAI,QACA;AAAA,MACE,SAAS;AAAA,MACT,WAAW;AAAA,MACX,UAAU;AAAA,MACV,QAAQ;AAAA,IACV,IACA;AAAA,MACE,sBAAsB;AAAA,IACxB;AAAA,EACN;AAAA,EAEA,uBAAuB,oBAAI,IAAI,CAAC,YAAY,CAAC;AAAA,EAE7C,UAAU;AAAA,IACR,GAAI,SAAS;AAAA,MACX,eAAe;AAAA,QACb,GAAG;AAAA,QAEH,WAAW,CAAC,kBACV,iBAAiB,IACb;AAAA,UACE,iBAAiB;AAAA,UACjB,iBAAiB;AAAA,UACjB,SAAS;AAAA,UACT,UAAU;AAAA,QACZ,IACA;AAAA,MACR;AAAA,IACF;AAAA;AAAA,IAGA,eAAe;AAAA,MACb,OAAO,MAAM;AAAA,IACf;AAAA,IAEA,YAAY;AAAA,MACV,MAAM;AAAA,QACJ,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,MACA,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,QACF,eACA;AAAA,QACE,eAAe;AAAA,QACf,eAAe;AAAA,MACjB;AAAA,IACN;AAAA,EACF;AAAA,EAEA,YAAY,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AAAA,EAE5C,aAAa;AAAA,IACX,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/views/Text.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
2
|
import { stylePropsTextOnly, validStyles } from "@tamagui/helpers";
|
|
3
|
-
import { createComponent } from "../createComponent";
|
|
3
|
+
import { createComponent } from "../createComponent.js";
|
|
4
4
|
const ellipseStyle = {
|
|
5
5
|
maxWidth: "100%",
|
|
6
6
|
overflow: "hidden",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Text.tsx"],
|
|
4
|
-
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent'\nimport { TextProps, TextPropsBase } from '../types'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
|
|
4
|
+
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { stylePropsTextOnly, validStyles } from '@tamagui/helpers'\nimport type { Text as TextView } from 'react-native'\n\nimport { createComponent } from '../createComponent.js'\nimport { TextProps, TextPropsBase } from '../types.js'\n\nconst ellipseStyle = {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n}\n\nexport const Text = createComponent<TextProps, TextView, TextPropsBase>({\n componentName: 'Text',\n acceptsClassName: true,\n isText: true,\n\n defaultProps: {\n // @ts-ignore\n display: 'flex',\n fontFamily: 'System',\n ...(isWeb\n ? {\n display: 'inline',\n boxSizing: 'border-box',\n wordWrap: 'break-word',\n margin: 0,\n }\n : {\n suppressHighlighting: true,\n }),\n },\n\n inlineWhenUnflattened: new Set(['fontFamily']),\n\n variants: {\n ...(isWeb && {\n numberOfLines: {\n 1: ellipseStyle,\n\n ':number': (numberOfLines) =>\n numberOfLines >= 1\n ? {\n WebkitLineClamp: numberOfLines,\n WebkitBoxOrient: 'vertical',\n display: '-webkit-box',\n overflow: 'hidden',\n }\n : null,\n },\n }),\n\n // ??\n ellipsizeMode: {\n '...': () => null,\n },\n\n selectable: {\n true: {\n userSelect: 'text',\n cursor: 'text',\n },\n false: {\n userSelect: 'none',\n cursor: 'default',\n },\n },\n\n ellipse: {\n true: isWeb\n ? ellipseStyle\n : {\n numberOfLines: 1,\n lineBreakMode: 'clip',\n },\n },\n },\n\n deoptProps: new Set(isWeb ? [] : ['ellipse']),\n\n validStyles: {\n ...validStyles,\n ...stylePropsTextOnly,\n },\n})\n"],
|
|
5
5
|
"mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,oBAAoB,mBAAmB;AAGhD,SAAS,uBAAuB;AAGhC,MAAM,eAAe;AAAA,EACnB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,cAAc;AAAA,EACd,YAAY;AACd;AAEO,MAAM,OAAO,gBAAoD;AAAA,EACtE,eAAe;AAAA,EACf,kBAAkB;AAAA,EAClB,QAAQ;AAAA,EAER,cAAc;AAAA;AAAA,IAEZ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,GAAI,QACA;AAAA,MACE,SAAS;AAAA,MACT,WAAW;AAAA,MACX,UAAU;AAAA,MACV,QAAQ;AAAA,IACV,IACA;AAAA,MACE,sBAAsB;AAAA,IACxB;AAAA,EACN;AAAA,EAEA,uBAAuB,oBAAI,IAAI,CAAC,YAAY,CAAC;AAAA,EAE7C,UAAU;AAAA,IACR,GAAI,SAAS;AAAA,MACX,eAAe;AAAA,QACb,GAAG;AAAA,QAEH,WAAW,CAAC,kBACV,iBAAiB,IACb;AAAA,UACE,iBAAiB;AAAA,UACjB,iBAAiB;AAAA,UACjB,SAAS;AAAA,UACT,UAAU;AAAA,QACZ,IACA;AAAA,MACR;AAAA,IACF;AAAA;AAAA,IAGA,eAAe;AAAA,MACb,OAAO,MAAM;AAAA,IACf;AAAA,IAEA,YAAY;AAAA,MACV,MAAM;AAAA,QACJ,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,MACA,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,QACF,eACA;AAAA,QACE,eAAe;AAAA,QACf,eAAe;AAAA,MACjB;AAAA,IACN;AAAA,EACF;AAAA,EAEA,YAAY,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AAAA,EAE5C,aAAa;AAAA,IACX,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/views/Theme.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { isWeb } from "@tamagui/constants";
|
|
3
3
|
import { Children, cloneElement } from "react";
|
|
4
|
-
import { variableToString } from "../createVariable";
|
|
5
|
-
import { ThemeManagerContext } from "../helpers/ThemeManagerContext";
|
|
6
|
-
import { useServerRef } from "../hooks/useServerHooks";
|
|
7
|
-
import { useChangeThemeEffect } from "../hooks/useTheme";
|
|
4
|
+
import { variableToString } from "../createVariable.js";
|
|
5
|
+
import { ThemeManagerContext } from "../helpers/ThemeManagerContext.js";
|
|
6
|
+
import { useServerRef } from "../hooks/useServerHooks.js";
|
|
7
|
+
import { useChangeThemeEffect } from "../hooks/useTheme.js";
|
|
8
8
|
function Theme(props) {
|
|
9
9
|
if (props.disable)
|
|
10
10
|
return props.children;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
-
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext'\nimport { useServerRef } from '../hooks/useServerHooks'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme'\nimport { ThemeProps } from '../types'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
|
|
4
|
+
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable.js'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext.js'\nimport { useServerRef } from '../hooks/useServerHooks.js'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme.js'\nimport type { ThemeProps } from '../types.js'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
|
|
5
5
|
"mappings": "AAkDQ;AAlDR,SAAS,aAAa;AACtB,SAAS,UAAU,oBAAoB;AAEvC,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AACpC,SAAS,oBAAoB;AAC7B,SAA+B,4BAA4B;AAGpD,SAAS,MAAM,OAAmB;AAEvC,MAAI,MAAM;AAAS,WAAO,MAAM;AAChC,QAAM,SAAS,CAAC,CAAC,MAAM,SAAS;AAChC,QAAM,aAAa,qBAAqB,OAAO,MAAM;AACrD,QAAM,WAAW,MAAM,gBAAgB,IACnC,SAAS;AAAA,IAAI,MAAM;AAAA,IAAU,CAAC,UAC5B,aAAa,OAAO,EAAE,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAAA,EAClD,IACA,MAAM;AAEV,SAAO,kBAAkB,YAAY,UAAU,KAAK;AACtD;AAEO,SAAS,kBACd,YACA,UACA,SACA;AACA,QAAM,EAAE,cAAc,YAAY,WAAW,MAAM,IAAI;AACvD,QAAM,EAAE,SAAS,eAAe,IAAI;AAEpC,QAAM,gBAAgB,aAAa,KAAK;AACxC,MAAI,YAAY;AACd,kBAAc,UAAU;AAAA,EAC1B;AAIA,MAAI,CAAC,cAAc,CAAC,cAAc,WAAW,CAAC,kBAAkB,CAAC,SAAS;AACxE,WAAO;AAAA,EACT;AAGA,MAAI,OAAO;AAEX,MAAI,WAAW,cAAc;AAC3B,WAAO,SAAS,IAAI,MAAM,CAAC,UAAU;AACnC,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,oBAAC,SAAM,MAAM,aAAa,MAAM,YAAa,gBAAM,MAAM,UAAS;AAAA,MACpE;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SACE,oBAAC,oBAAoB,UAApB,EAA6B,OAAO,cAClC,gBACH;AAGF,MAAI,OAAO;AACT,UAAM,kBAAkB,mBAAmB,mBAAmB,SAAS;AACvE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACT,GAAI,SACH,mBAAmB;AAAA,UACjB,WAAW,GAAG;AAAA,UACd,OAAO;AAAA;AAAA,YAEL,OAAO,iBAAiB,MAAM,KAAK;AAAA,UACrC;AAAA,QACF;AAAA,QAED;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/views/Theme.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { isWeb } from "@tamagui/constants";
|
|
3
3
|
import { Children, cloneElement } from "react";
|
|
4
|
-
import { variableToString } from "../createVariable";
|
|
5
|
-
import { ThemeManagerContext } from "../helpers/ThemeManagerContext";
|
|
6
|
-
import { useServerRef } from "../hooks/useServerHooks";
|
|
7
|
-
import { useChangeThemeEffect } from "../hooks/useTheme";
|
|
4
|
+
import { variableToString } from "../createVariable.js";
|
|
5
|
+
import { ThemeManagerContext } from "../helpers/ThemeManagerContext.js";
|
|
6
|
+
import { useServerRef } from "../hooks/useServerHooks.js";
|
|
7
|
+
import { useChangeThemeEffect } from "../hooks/useTheme.js";
|
|
8
8
|
function Theme(props) {
|
|
9
9
|
if (props.disable)
|
|
10
10
|
return props.children;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
-
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext'\nimport { useServerRef } from '../hooks/useServerHooks'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme'\nimport { ThemeProps } from '../types'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
|
|
4
|
+
"sourcesContent": ["import { isWeb } from '@tamagui/constants'\nimport { Children, cloneElement } from 'react'\n\nimport { variableToString } from '../createVariable.js'\nimport { ThemeManagerContext } from '../helpers/ThemeManagerContext.js'\nimport { useServerRef } from '../hooks/useServerHooks.js'\nimport { ChangedThemeResponse, useChangeThemeEffect } from '../hooks/useTheme.js'\nimport type { ThemeProps } from '../types.js'\n\nexport function Theme(props: ThemeProps) {\n // @ts-expect-error only for internal views\n if (props.disable) return props.children\n const isRoot = !!props['_isRoot']\n const themeState = useChangeThemeEffect(props, isRoot)\n const children = props['data-themeable']\n ? Children.map(props.children, (child) =>\n cloneElement(child, { ['data-themeable']: true })\n )\n : props.children\n\n return useThemedChildren(themeState, children, props)\n}\n\nexport function useThemedChildren(\n themeState: ChangedThemeResponse,\n children: any,\n options: { forceClassName?: boolean; shallow?: boolean }\n) {\n const { themeManager, isNewTheme, className, theme } = themeState\n const { shallow, forceClassName } = options\n\n const hasEverThemed = useServerRef(false)\n if (isNewTheme) {\n hasEverThemed.current = true\n }\n\n // once a theme is set it always passes the context to avoid reparenting\n // until then no context to avoid lots of context\n if (!isNewTheme && !hasEverThemed.current && !forceClassName && !shallow) {\n return children\n }\n\n // be sure to memoize shouldReset to avoid reparenting\n let next = children\n\n if (shallow && themeManager) {\n next = Children.map(next, (child) => {\n return cloneElement(\n child,\n undefined,\n <Theme name={themeManager.state.parentName}>{child.props.children}</Theme>\n )\n })\n }\n\n next = (\n <ThemeManagerContext.Provider value={themeManager}>\n {next}\n </ThemeManagerContext.Provider>\n )\n\n if (isWeb) {\n const enableClassName = forceClassName ?? (forceClassName !== false && isNewTheme)\n return (\n <span\n className=\"_dsp_contents\"\n {...(theme &&\n enableClassName && {\n className: `${className} _dsp_contents`,\n style: {\n // in order to provide currentColor, set color by default\n color: variableToString(theme.color),\n },\n })}\n >\n {next}\n </span>\n )\n }\n\n return next\n}\n"],
|
|
5
5
|
"mappings": "AAkDQ;AAlDR,SAAS,aAAa;AACtB,SAAS,UAAU,oBAAoB;AAEvC,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AACpC,SAAS,oBAAoB;AAC7B,SAA+B,4BAA4B;AAGpD,SAAS,MAAM,OAAmB;AAEvC,MAAI,MAAM;AAAS,WAAO,MAAM;AAChC,QAAM,SAAS,CAAC,CAAC,MAAM,SAAS;AAChC,QAAM,aAAa,qBAAqB,OAAO,MAAM;AACrD,QAAM,WAAW,MAAM,gBAAgB,IACnC,SAAS;AAAA,IAAI,MAAM;AAAA,IAAU,CAAC,UAC5B,aAAa,OAAO,EAAE,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAAA,EAClD,IACA,MAAM;AAEV,SAAO,kBAAkB,YAAY,UAAU,KAAK;AACtD;AAEO,SAAS,kBACd,YACA,UACA,SACA;AACA,QAAM,EAAE,cAAc,YAAY,WAAW,MAAM,IAAI;AACvD,QAAM,EAAE,SAAS,eAAe,IAAI;AAEpC,QAAM,gBAAgB,aAAa,KAAK;AACxC,MAAI,YAAY;AACd,kBAAc,UAAU;AAAA,EAC1B;AAIA,MAAI,CAAC,cAAc,CAAC,cAAc,WAAW,CAAC,kBAAkB,CAAC,SAAS;AACxE,WAAO;AAAA,EACT;AAGA,MAAI,OAAO;AAEX,MAAI,WAAW,cAAc;AAC3B,WAAO,SAAS,IAAI,MAAM,CAAC,UAAU;AACnC,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,oBAAC,SAAM,MAAM,aAAa,MAAM,YAAa,gBAAM,MAAM,UAAS;AAAA,MACpE;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SACE,oBAAC,oBAAoB,UAApB,EAA6B,OAAO,cAClC,gBACH;AAGF,MAAI,OAAO;AACT,UAAM,kBAAkB,mBAAmB,mBAAmB,SAAS;AACvE,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACT,GAAI,SACH,mBAAmB;AAAA,UACjB,WAAW,GAAG;AAAA,UACd,OAAO;AAAA;AAAA,YAEL,OAAO,iBAAiB,MAAM,KAAK;AAAA,UACrC;AAAA,QACF;AAAA,QAED;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { isClient } from "@tamagui/constants";
|
|
3
3
|
import { createContext, useLayoutEffect, useMemo } from "react";
|
|
4
|
-
import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
|
|
5
|
-
import { Theme } from "./Theme";
|
|
4
|
+
import { THEME_CLASSNAME_PREFIX } from "../constants/constants.js";
|
|
5
|
+
import { Theme } from "./Theme.js";
|
|
6
6
|
const ThemeProviderRootContext = createContext(null);
|
|
7
7
|
const ThemeProvider = (props) => {
|
|
8
8
|
if (isClient) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/ThemeProvider.tsx"],
|
|
4
|
-
"sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants'\nimport { Theme } from './Theme'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
|
|
4
|
+
"sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants.js'\nimport { Theme } from './Theme.js'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
|
|
5
5
|
"mappings": "AA2CM;AA3CN,SAAS,gBAAgB;AACzB,SAAS,eAAe,iBAAiB,eAAe;AAExD,SAAS,8BAA8B;AACvC,SAAS,aAAa;AAWf,MAAM,2BAA2B,cAG9B,IAAI;AAEP,MAAM,gBAAgB,CAAC,UAA8B;AAE1D,MAAI,UAAU;AACZ,oBAAgB,MAAM;AACpB,UAAI,MAAM;AAAuB;AACjC,YAAM,KAAK,GAAG,yBAAyB,MAAM;AAC7C,YAAM,SAAS,MAAM,uBAAuB,SAAS,kBAAkB,SAAS;AAChF,aAAO,UAAU,IAAI,EAAE;AACvB,aAAO,MAAM;AACX,eAAO,UAAU,OAAO,EAAE;AAAA,MAC5B;AAAA,IACF,GAAG,CAAC,MAAM,cAAc,MAAM,uBAAuB,MAAM,oBAAoB,CAAC;AAAA,EAClF;AAEA,SACE;AAAA,IAAC,yBAAyB;AAAA,IAAzB;AAAA,MACC,OAAO,QAAQ,MAAM;AACnB,eAAO;AAAA,UACL,cAAc,MAAM;AAAA,QACtB;AAAA,MAEF,GAAG,CAAC,CAAC;AAAA,MAEL;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,MAAM;AAAA,UACjB,MAAM,MAAM;AAAA,UACZ,gBAAgB,MAAM,wBAAwB,QAAQ;AAAA,UAEtD,SAAO;AAAA,UAEN,gBAAM;AAAA;AAAA,MACT;AAAA;AAAA,EACF;AAEJ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { isClient } from "@tamagui/constants";
|
|
3
3
|
import { createContext, useLayoutEffect, useMemo } from "react";
|
|
4
|
-
import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
|
|
5
|
-
import { Theme } from "./Theme";
|
|
4
|
+
import { THEME_CLASSNAME_PREFIX } from "../constants/constants.js";
|
|
5
|
+
import { Theme } from "./Theme.js";
|
|
6
6
|
const ThemeProviderRootContext = createContext(null);
|
|
7
7
|
const ThemeProvider = (props) => {
|
|
8
8
|
if (isClient) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/ThemeProvider.tsx"],
|
|
4
|
-
"sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants'\nimport { Theme } from './Theme'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
|
|
4
|
+
"sourcesContent": ["import { isClient } from '@tamagui/constants'\nimport { createContext, useLayoutEffect, useMemo } from 'react'\n\nimport { THEME_CLASSNAME_PREFIX } from '../constants/constants.js'\nimport { Theme } from './Theme.js'\n\nexport type ThemeProviderProps = {\n className?: string\n defaultTheme: string\n disableRootThemeClass?: boolean\n themeClassNameOnRoot?: boolean\n children?: any\n reset?: boolean\n}\n\nexport const ThemeProviderRootContext = createContext<Pick<\n ThemeProviderProps,\n 'defaultTheme'\n> | null>(null)\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n // ensure theme is attached to root body node as well to work with modals by default\n if (isClient) {\n useLayoutEffect(() => {\n if (props.disableRootThemeClass) return\n const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`\n const target = props.themeClassNameOnRoot ? document.documentElement : document.body\n target.classList.add(cn)\n return () => {\n target.classList.remove(cn)\n }\n }, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot])\n }\n\n return (\n <ThemeProviderRootContext.Provider\n value={useMemo(() => {\n return {\n defaultTheme: props.defaultTheme,\n }\n // NOTE DON'T CHANGE THIS ITS ONLY USED BY useThemeName for SSR safety for now...\n }, [])}\n >\n <Theme\n className={props.className}\n name={props.defaultTheme}\n forceClassName={props.disableRootThemeClass ? false : undefined}\n // @ts-expect-error\n _isRoot\n >\n {props.children}\n </Theme>\n </ThemeProviderRootContext.Provider>\n )\n}\n"],
|
|
5
5
|
"mappings": "AA2CM;AA3CN,SAAS,gBAAgB;AACzB,SAAS,eAAe,iBAAiB,eAAe;AAExD,SAAS,8BAA8B;AACvC,SAAS,aAAa;AAWf,MAAM,2BAA2B,cAG9B,IAAI;AAEP,MAAM,gBAAgB,CAAC,UAA8B;AAE1D,MAAI,UAAU;AACZ,oBAAgB,MAAM;AACpB,UAAI,MAAM;AAAuB;AACjC,YAAM,KAAK,GAAG,yBAAyB,MAAM;AAC7C,YAAM,SAAS,MAAM,uBAAuB,SAAS,kBAAkB,SAAS;AAChF,aAAO,UAAU,IAAI,EAAE;AACvB,aAAO,MAAM;AACX,eAAO,UAAU,OAAO,EAAE;AAAA,MAC5B;AAAA,IACF,GAAG,CAAC,MAAM,cAAc,MAAM,uBAAuB,MAAM,oBAAoB,CAAC;AAAA,EAClF;AAEA,SACE;AAAA,IAAC,yBAAyB;AAAA,IAAzB;AAAA,MACC,OAAO,QAAQ,MAAM;AACnB,eAAO;AAAA,UACL,cAAc,MAAM;AAAA,QACtB;AAAA,MAEF,GAAG,CAAC,CAAC;AAAA,MAEL;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,MAAM;AAAA,UACjB,MAAM,MAAM;AAAA,UACZ,gBAAgB,MAAM,wBAAwB,QAAQ;AAAA,UAEtD,SAAO;AAAA,UAEN,gBAAM;AAAA;AAAA,MACT;AAAA;AAAA,EACF;AAEJ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.8",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -27,20 +27,20 @@
|
|
|
27
27
|
"reset.css"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@tamagui/compose-refs": "^1.5.
|
|
31
|
-
"@tamagui/constants": "^1.5.
|
|
32
|
-
"@tamagui/helpers": "^1.5.
|
|
33
|
-
"@tamagui/normalize-css-color": "^1.5.
|
|
34
|
-
"@tamagui/use-did-finish-ssr": "^1.5.
|
|
35
|
-
"@tamagui/use-event": "^1.5.
|
|
36
|
-
"@tamagui/use-force-update": "^1.5.
|
|
30
|
+
"@tamagui/compose-refs": "^1.5.8",
|
|
31
|
+
"@tamagui/constants": "^1.5.8",
|
|
32
|
+
"@tamagui/helpers": "^1.5.8",
|
|
33
|
+
"@tamagui/normalize-css-color": "^1.5.8",
|
|
34
|
+
"@tamagui/use-did-finish-ssr": "^1.5.8",
|
|
35
|
+
"@tamagui/use-event": "^1.5.8",
|
|
36
|
+
"@tamagui/use-force-update": "^1.5.8"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"react": "*",
|
|
40
40
|
"react-dom": "*"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@tamagui/build": "^1.5.
|
|
43
|
+
"@tamagui/build": "^1.5.8",
|
|
44
44
|
"@testing-library/react": "^13.4.0",
|
|
45
45
|
"csstype": "^3.0.10",
|
|
46
46
|
"react": "^18.2.0",
|
package/src/Tamagui.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import * as Helpers from '@tamagui/helpers'
|
|
2
2
|
|
|
3
|
-
import { getConfig } from './config'
|
|
4
|
-
import {
|
|
5
|
-
|
|
3
|
+
import { getConfig } from './config.js'
|
|
4
|
+
import {
|
|
5
|
+
getAllRules,
|
|
6
|
+
getAllSelectors,
|
|
7
|
+
getAllTransforms,
|
|
8
|
+
} from './helpers/insertStyleRule.js'
|
|
9
|
+
import { mediaState } from './hooks/useMedia.js'
|
|
6
10
|
|
|
7
11
|
// easy introspection
|
|
8
12
|
// only included in dev mode
|
package/src/addTheme.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { isWeb } from '@tamagui/constants'
|
|
2
2
|
|
|
3
|
-
import { getConfig, updateConfig } from './config'
|
|
4
|
-
import { getThemeCSSRules } from './helpers/getThemeCSSRules'
|
|
5
|
-
import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes'
|
|
6
|
-
import { ThemeDefinition, ThemeParsed } from './types'
|
|
3
|
+
import { getConfig, updateConfig } from './config.js'
|
|
4
|
+
import { getThemeCSSRules } from './helpers/getThemeCSSRules.js'
|
|
5
|
+
import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'
|
|
6
|
+
import { ThemeDefinition, ThemeParsed } from './types.js'
|
|
7
7
|
|
|
8
8
|
export function addTheme(props: {
|
|
9
9
|
name: string
|
package/src/config.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createContext } from 'react'
|
|
2
2
|
|
|
3
|
-
import { LanguageContextType } from '../views/FontLanguage.types'
|
|
3
|
+
import type { LanguageContextType } from '../views/FontLanguage.types.js'
|
|
4
4
|
|
|
5
5
|
export const FontLanguageContext = createContext<LanguageContextType | null>(null)
|
package/src/createComponent.tsx
CHANGED
|
@@ -13,21 +13,21 @@ import React, {
|
|
|
13
13
|
useRef,
|
|
14
14
|
} from 'react'
|
|
15
15
|
|
|
16
|
-
import { onConfiguredOnce } from './config'
|
|
17
|
-
import { stackDefaultStyles } from './constants/constants'
|
|
18
|
-
import { FontLanguageContext } from './contexts/FontLanguageContext'
|
|
19
|
-
import { TextAncestorContext } from './contexts/TextAncestorContext'
|
|
20
|
-
import { didGetVariableValue, setDidGetVariableValue } from './createVariable'
|
|
21
|
-
import { extendStaticConfig, parseStaticConfig } from './helpers/extendStaticConfig'
|
|
22
|
-
import { useSplitStyles } from './helpers/getSplitStyles'
|
|
23
|
-
import { getAllSelectors } from './helpers/insertStyleRule'
|
|
24
|
-
import { mergeProps } from './helpers/mergeProps'
|
|
25
|
-
import { proxyThemeVariables } from './helpers/proxyThemeVariables'
|
|
26
|
-
import { useShallowSetState } from './helpers/useShallowSetState'
|
|
27
|
-
import { setMediaShouldUpdate, useMedia } from './hooks/useMedia'
|
|
28
|
-
import { useServerRef, useServerState } from './hooks/useServerHooks'
|
|
29
|
-
import { useThemeWithState } from './hooks/useTheme'
|
|
30
|
-
import { hooks } from './setupHooks'
|
|
16
|
+
import { onConfiguredOnce } from './config.js'
|
|
17
|
+
import { stackDefaultStyles } from './constants/constants.js'
|
|
18
|
+
import { FontLanguageContext } from './contexts/FontLanguageContext.js'
|
|
19
|
+
import { TextAncestorContext } from './contexts/TextAncestorContext.js'
|
|
20
|
+
import { didGetVariableValue, setDidGetVariableValue } from './createVariable.js'
|
|
21
|
+
import { extendStaticConfig, parseStaticConfig } from './helpers/extendStaticConfig.js'
|
|
22
|
+
import { useSplitStyles } from './helpers/getSplitStyles.js'
|
|
23
|
+
import { getAllSelectors } from './helpers/insertStyleRule.js'
|
|
24
|
+
import { mergeProps } from './helpers/mergeProps.js'
|
|
25
|
+
import { proxyThemeVariables } from './helpers/proxyThemeVariables.js'
|
|
26
|
+
import { useShallowSetState } from './helpers/useShallowSetState.js'
|
|
27
|
+
import { setMediaShouldUpdate, useMedia } from './hooks/useMedia.js'
|
|
28
|
+
import { useServerRef, useServerState } from './hooks/useServerHooks.js'
|
|
29
|
+
import { useThemeWithState } from './hooks/useTheme.js'
|
|
30
|
+
import { hooks } from './setupHooks.js'
|
|
31
31
|
import {
|
|
32
32
|
DebugProp,
|
|
33
33
|
SpaceDirection,
|
|
@@ -45,8 +45,8 @@ import {
|
|
|
45
45
|
UseAnimationHook,
|
|
46
46
|
UseAnimationProps,
|
|
47
47
|
} from './types'
|
|
48
|
-
import { Slot } from './views/Slot'
|
|
49
|
-
import { useThemedChildren } from './views/Theme'
|
|
48
|
+
import { Slot } from './views/Slot.js'
|
|
49
|
+
import { useThemedChildren } from './views/Theme.js'
|
|
50
50
|
|
|
51
51
|
// let t
|
|
52
52
|
// import { timer } from '@tamagui/timer'
|
package/src/createFont.ts
CHANGED
package/src/createShorthands.ts
CHANGED
package/src/createTamagui.ts
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import { isRSC, isWeb } from '@tamagui/constants'
|
|
2
2
|
|
|
3
|
-
import { configListeners, setConfig } from './config'
|
|
4
|
-
import { createVariables, tokensKeysOrdered } from './createVariables'
|
|
5
|
-
import { getThemeCSSRules } from './helpers/getThemeCSSRules'
|
|
3
|
+
import { configListeners, setConfig } from './config.js'
|
|
4
|
+
import { createVariables, tokensKeysOrdered } from './createVariables.js'
|
|
5
|
+
import { getThemeCSSRules } from './helpers/getThemeCSSRules.js'
|
|
6
6
|
import {
|
|
7
7
|
getAllRules,
|
|
8
8
|
listenForSheetChanges,
|
|
9
9
|
scanAllSheets,
|
|
10
|
-
} from './helpers/insertStyleRule'
|
|
10
|
+
} from './helpers/insertStyleRule.js'
|
|
11
11
|
import {
|
|
12
12
|
registerCSSVariable,
|
|
13
13
|
tokensValueToVariable,
|
|
14
14
|
variableToCSS,
|
|
15
|
-
} from './helpers/registerCSSVariable'
|
|
16
|
-
import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes'
|
|
17
|
-
import { configureMedia } from './hooks/useMedia'
|
|
18
|
-
import { parseFont, registerFontVariables } from './insertFont'
|
|
19
|
-
import { Tamagui } from './Tamagui'
|
|
15
|
+
} from './helpers/registerCSSVariable.js'
|
|
16
|
+
import { ensureThemeVariable, proxyThemeToParents } from './helpers/themes.js'
|
|
17
|
+
import { configureMedia } from './hooks/useMedia.js'
|
|
18
|
+
import { parseFont, registerFontVariables } from './insertFont.js'
|
|
19
|
+
import { Tamagui } from './Tamagui.js'
|
|
20
20
|
import {
|
|
21
21
|
CreateTamaguiProps,
|
|
22
22
|
InferTamaguiConfig,
|
|
23
23
|
TamaguiInternalConfig,
|
|
24
24
|
ThemeParsed,
|
|
25
|
-
} from './types'
|
|
25
|
+
} from './types.js'
|
|
26
26
|
|
|
27
27
|
// config is re-run by the @tamagui/static, dont double validate
|
|
28
28
|
const createdConfigs = new WeakMap<any, boolean>()
|
package/src/createTheme.ts
CHANGED
package/src/createTokens.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Variable } from './createVariable'
|
|
2
|
-
import { createVariables } from './createVariables'
|
|
3
|
-
import { CreateTokens } from './types'
|
|
1
|
+
import { Variable } from './createVariable.js'
|
|
2
|
+
import { createVariables } from './createVariables.js'
|
|
3
|
+
import { CreateTokens } from './types.js'
|
|
4
4
|
|
|
5
5
|
// tokens.color.dark.red ===> { var: `color-dark-red`, val: '' }
|
|
6
6
|
export function createTokens<T extends CreateTokens>(tokens: T): MakeTokens<T> {
|
package/src/createVariable.ts
CHANGED
package/src/createVariables.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { simpleHash } from '@tamagui/helpers'
|
|
2
2
|
|
|
3
|
-
import { Variable, createVariable, isVariable } from './createVariable'
|
|
3
|
+
import { Variable, createVariable, isVariable } from './createVariable.js'
|
|
4
4
|
|
|
5
5
|
type DeepTokenObject<Val extends string | number = any> = {
|
|
6
6
|
[key: string]: Val | DeepTokenObject<Val>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getThemes, getTokens } from '../config'
|
|
2
|
-
import { THEME_CLASSNAME_PREFIX, THEME_NAME_SEPARATOR } from '../constants/constants'
|
|
3
|
-
import { getThemeUnwrapped } from '../hooks/getThemeUnwrapped'
|
|
4
|
-
import { ThemeParsed, ThemeProps } from '../types'
|
|
1
|
+
import { getThemes, getTokens } from '../config.js'
|
|
2
|
+
import { THEME_CLASSNAME_PREFIX, THEME_NAME_SEPARATOR } from '../constants/constants.js'
|
|
3
|
+
import { getThemeUnwrapped } from '../hooks/getThemeUnwrapped.js'
|
|
4
|
+
import { ThemeParsed, ThemeProps } from '../types.js'
|
|
5
5
|
|
|
6
6
|
type ThemeListener = (name: string | null, themeManager: ThemeManager) => void
|
|
7
7
|
|
|
@@ -162,7 +162,13 @@ export class ThemeManager {
|
|
|
162
162
|
function getNextThemeClassName(name: string, isInverting = false) {
|
|
163
163
|
const next = `${THEME_CLASSNAME_PREFIX}${name}`
|
|
164
164
|
if (isInverting) {
|
|
165
|
-
return
|
|
165
|
+
return (
|
|
166
|
+
next +
|
|
167
|
+
// ensure you invert to base dark as well as specific dark
|
|
168
|
+
// ... logic should likely be elsewhere
|
|
169
|
+
(next.includes('dark_') ? ` t_dark` : '') +
|
|
170
|
+
(next.includes('light_') ? ` t_light` : '')
|
|
171
|
+
)
|
|
166
172
|
}
|
|
167
173
|
return next.replace('light_', '').replace('dark_', '')
|
|
168
174
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { StyleObject } from '@tamagui/helpers'
|
|
2
2
|
|
|
3
|
-
import { mediaObjectToString } from '../hooks/useMedia'
|
|
4
|
-
import { MediaQueries, PartialStyleObject } from '../types'
|
|
3
|
+
import { mediaObjectToString } from '../hooks/useMedia.js'
|
|
4
|
+
import type { MediaQueries, PartialStyleObject } from '../types.js'
|
|
5
5
|
|
|
6
6
|
// TODO have this be used by extractMediaStyle in tamagui static
|
|
7
7
|
// not synced to static/constants for now
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { isWeb } from '@tamagui/constants'
|
|
2
2
|
|
|
3
|
-
import { getConfig } from '../config'
|
|
4
|
-
import { isDevTools } from '../constants/isDevTools'
|
|
5
|
-
import { Variable, getVariableValue, isVariable } from '../createVariable'
|
|
6
|
-
import {
|
|
3
|
+
import { getConfig } from '../config.js'
|
|
4
|
+
import { isDevTools } from '../constants/isDevTools.js'
|
|
5
|
+
import { Variable, getVariableValue, isVariable } from '../createVariable.js'
|
|
6
|
+
import type {
|
|
7
7
|
DebugProp,
|
|
8
8
|
GenericVariantDefinitions,
|
|
9
9
|
PropMapper,
|
|
@@ -11,13 +11,13 @@ import {
|
|
|
11
11
|
StaticConfigParsed,
|
|
12
12
|
TamaguiInternalConfig,
|
|
13
13
|
VariantSpreadFunction,
|
|
14
|
-
} from '../types'
|
|
15
|
-
import { LanguageContextType } from '../views/FontLanguage.types'
|
|
16
|
-
import { expandStyle } from './expandStyle'
|
|
17
|
-
import { expandStyles } from './expandStyles'
|
|
18
|
-
import { getFontsForLanguage, getVariantExtras } from './getVariantExtras'
|
|
19
|
-
import { isObj } from './isObj'
|
|
20
|
-
import { mergeProps } from './mergeProps'
|
|
14
|
+
} from '../types.js'
|
|
15
|
+
import type { LanguageContextType } from '../views/FontLanguage.types.js'
|
|
16
|
+
import { expandStyle } from './expandStyle.js'
|
|
17
|
+
import { expandStyles } from './expandStyles.js'
|
|
18
|
+
import { getFontsForLanguage, getVariantExtras } from './getVariantExtras.js'
|
|
19
|
+
import { isObj } from './isObj.js'
|
|
20
|
+
import { mergeProps } from './mergeProps.js'
|
|
21
21
|
|
|
22
22
|
export type ResolveVariableTypes =
|
|
23
23
|
| 'auto'
|
|
@@ -533,6 +533,8 @@ function resolveVariableValue(
|
|
|
533
533
|
return valOrVar
|
|
534
534
|
}
|
|
535
535
|
|
|
536
|
+
// TODO move to validStyleProps to merge
|
|
537
|
+
|
|
536
538
|
// just specificy the least costly, all else go to `space` (most keys - we can exclude)
|
|
537
539
|
const tokenCategories = {
|
|
538
540
|
radius: {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { getConfig } from '../config'
|
|
2
|
-
import { expandStyle } from './expandStyle'
|
|
3
|
-
import { normalizeShadow } from './normalizeShadow'
|
|
1
|
+
import { getConfig } from '../config.js'
|
|
2
|
+
import { expandStyle } from './expandStyle.js'
|
|
3
|
+
import { normalizeShadow } from './normalizeShadow.js'
|
|
4
4
|
import { normalizeValueWithProperty } from './normalizeValueWithProperty.js'
|
|
5
|
-
import { pseudoDescriptors } from './pseudoDescriptors'
|
|
5
|
+
import { pseudoDescriptors } from './pseudoDescriptors.js'
|
|
6
6
|
|
|
7
7
|
let shorthands: Record<string, string> | null = null
|
|
8
8
|
export const defaultOffset = { height: 0, width: 0 }
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { stylePropsView } from '@tamagui/helpers'
|
|
2
2
|
|
|
3
|
-
import { StaticConfig, StaticConfigParsed, StylableComponent } from '../types'
|
|
4
|
-
import { createPropMapper } from './createPropMapper'
|
|
5
|
-
import { mergeProps } from './mergeProps'
|
|
3
|
+
import type { StaticConfig, StaticConfigParsed, StylableComponent } from '../types.js'
|
|
4
|
+
import { createPropMapper } from './createPropMapper.js'
|
|
5
|
+
import { mergeProps } from './mergeProps.js'
|
|
6
6
|
|
|
7
7
|
export function extendStaticConfig(
|
|
8
8
|
config: Partial<StaticConfig>,
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import { getConfig } from '../config'
|
|
2
|
-
import { Shorthands } from '../types'
|
|
1
|
+
import { getConfig } from '../config.js'
|
|
2
|
+
import { Shorthands } from '../types.js'
|
|
3
3
|
|
|
4
4
|
export function getExpandedShorthands<A extends Object>(
|
|
5
5
|
props: A
|
|
6
6
|
): Omit<A, keyof Shorthands> {
|
|
7
7
|
const shorthands = getConfig().shorthands
|
|
8
|
-
if (!shorthands)
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
const res: A = {} as any
|
|
8
|
+
if (!shorthands) return props
|
|
9
|
+
const res = {} as A
|
|
12
10
|
for (const key in props) {
|
|
13
11
|
// @ts-ignore
|
|
14
12
|
res[shorthands[key] || key] = props[key]
|