@tamagui/core 1.0.0-beta.189 → 1.0.0-beta.193
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 +18 -1
- package/dist/cjs/Tamagui.js.map +2 -2
- package/dist/cjs/ThemeContext.js +4 -0
- package/dist/cjs/ThemeContext.js.map +0 -0
- package/dist/cjs/ThemeManager.js +30 -14
- package/dist/cjs/ThemeManager.js.map +2 -2
- package/dist/cjs/conf.js +10 -1
- package/dist/cjs/conf.js.map +2 -2
- package/dist/cjs/constants/constants.js +6 -0
- package/dist/cjs/constants/constants.js.map +0 -0
- package/dist/cjs/constants/platform.js +15 -0
- package/dist/cjs/constants/platform.js.map +2 -2
- package/dist/cjs/constants/rnw.js +4 -0
- package/dist/cjs/constants/rnw.js.map +0 -0
- package/dist/cjs/contexts/ButtonInsideButtonContext.js +4 -0
- package/dist/cjs/contexts/ButtonInsideButtonContext.js.map +0 -0
- package/dist/cjs/createComponent.js +136 -128
- package/dist/cjs/createComponent.js.map +2 -2
- package/dist/cjs/createFont.js +4 -0
- package/dist/cjs/createFont.js.map +0 -0
- package/dist/cjs/createShorthands.js +4 -0
- package/dist/cjs/createShorthands.js.map +0 -0
- package/dist/cjs/createTamagui.js +38 -18
- package/dist/cjs/createTamagui.js.map +2 -2
- package/dist/cjs/createTheme.js +4 -0
- package/dist/cjs/createTheme.js.map +0 -0
- package/dist/cjs/createTokens.js +7 -6
- package/dist/cjs/createTokens.js.map +2 -2
- package/dist/cjs/createVariable.js +18 -2
- package/dist/cjs/createVariable.js.map +2 -2
- package/dist/cjs/defaultComponentState.js +0 -30
- package/dist/cjs/defaultComponentState.js.map +3 -3
- package/dist/cjs/helpers/RNComponents.js +38 -0
- package/dist/cjs/helpers/RNComponents.js.map +7 -0
- package/dist/cjs/helpers/addStylesUsingClassname.js +8 -0
- package/dist/cjs/helpers/addStylesUsingClassname.js.map +2 -2
- package/dist/cjs/helpers/areEqualSets.js +4 -0
- package/dist/cjs/helpers/areEqualSets.js.map +0 -0
- package/dist/cjs/helpers/createMediaStyle.js +5 -0
- package/dist/cjs/helpers/createMediaStyle.js.map +0 -0
- package/dist/cjs/helpers/createPropMapper.js +63 -61
- package/dist/cjs/helpers/createPropMapper.js.map +2 -2
- package/dist/cjs/helpers/createShallowUpdate.js +55 -0
- package/dist/cjs/helpers/createShallowUpdate.js.map +7 -0
- package/dist/cjs/helpers/createTamaguiProvider.js +5 -5
- package/dist/cjs/helpers/createTamaguiProvider.js.map +2 -2
- package/dist/cjs/helpers/extendStaticConfig.js +9 -6
- package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
- package/dist/cjs/helpers/fixNativeShadow.js +4 -0
- package/dist/cjs/helpers/fixNativeShadow.js.map +0 -0
- package/dist/cjs/helpers/fixNativeShadow.native.js +6 -2
- package/dist/cjs/helpers/fixNativeShadow.native.js.map +2 -2
- package/dist/cjs/helpers/getExpandedShorthands.js +4 -0
- package/dist/cjs/helpers/getExpandedShorthands.js.map +0 -0
- package/dist/cjs/helpers/getSplitStyles.js +111 -61
- package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
- package/dist/cjs/helpers/getStylesAtomic.js +20 -2
- package/dist/cjs/helpers/getStylesAtomic.js.map +2 -2
- package/dist/cjs/helpers/getStylesAtomic.native.js +4 -0
- package/dist/cjs/helpers/getStylesAtomic.native.js.map +0 -0
- package/dist/cjs/helpers/insertStyleRule.js +46 -26
- package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
- package/dist/cjs/helpers/isObj.js +4 -0
- package/dist/cjs/helpers/isObj.js.map +0 -0
- package/dist/cjs/helpers/isTamaguiElement.js +4 -0
- package/dist/cjs/helpers/isTamaguiElement.js.map +0 -0
- package/dist/cjs/helpers/matchMedia.js +4 -0
- package/dist/cjs/helpers/matchMedia.js.map +0 -0
- package/dist/cjs/helpers/matchMedia.native.js +4 -0
- package/dist/cjs/helpers/matchMedia.native.js.map +0 -0
- package/dist/cjs/helpers/proxyThemeVariables.js +40 -0
- package/dist/cjs/helpers/proxyThemeVariables.js.map +7 -0
- package/dist/cjs/helpers/themeable.js +7 -2
- package/dist/cjs/helpers/themeable.js.map +2 -2
- package/dist/cjs/helpers/validate.js +53 -11
- package/dist/cjs/helpers/validate.js.map +2 -2
- package/dist/cjs/helpers/withStaticProperties.js +4 -0
- package/dist/cjs/helpers/withStaticProperties.js.map +0 -0
- package/dist/cjs/helpers/wrapThemeManagerContext.js +4 -0
- package/dist/cjs/helpers/wrapThemeManagerContext.js.map +0 -0
- package/dist/cjs/hooks/useConstant.js +4 -0
- package/dist/cjs/hooks/useConstant.js.map +0 -0
- package/dist/cjs/hooks/useFeatures.js +101 -12
- package/dist/cjs/hooks/useFeatures.js.map +2 -2
- package/dist/cjs/hooks/useIsMounted.js +4 -0
- package/dist/cjs/hooks/useIsMounted.js.map +0 -0
- package/dist/cjs/hooks/useIsTouchDevice.js +4 -0
- package/dist/cjs/hooks/useIsTouchDevice.js.map +0 -0
- package/dist/cjs/hooks/useMedia.js +31 -12
- package/dist/cjs/hooks/useMedia.js.map +2 -2
- package/dist/cjs/hooks/usePressable.js +4 -0
- package/dist/cjs/hooks/usePressable.js.map +0 -0
- package/dist/cjs/hooks/useTheme.js +36 -23
- package/dist/cjs/hooks/useTheme.js.map +2 -2
- package/dist/cjs/hooks/useUnmountEffect.js +4 -0
- package/dist/cjs/hooks/useUnmountEffect.js.map +0 -0
- package/dist/cjs/index.js +14 -0
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/static.js +3 -0
- package/dist/cjs/static.js.map +2 -2
- package/dist/cjs/styled.js +8 -15
- package/dist/cjs/styled.js.map +2 -2
- package/dist/cjs/types-rnw.js +0 -0
- package/dist/cjs/types-rnw.js.map +1 -1
- package/dist/cjs/types.js +0 -0
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/views/Stack.js +5 -0
- package/dist/cjs/views/Stack.js.map +2 -2
- package/dist/cjs/views/Text.js +5 -0
- package/dist/cjs/views/Text.js.map +2 -2
- package/dist/cjs/views/TextAncestorContext.js +6 -0
- package/dist/cjs/views/TextAncestorContext.js.map +0 -0
- package/dist/cjs/views/Theme.js +11 -4
- package/dist/cjs/views/Theme.js.map +2 -2
- package/dist/cjs/views/ThemeInverse.js +5 -0
- package/dist/cjs/views/ThemeInverse.js.map +0 -0
- package/dist/cjs/views/ThemeProvider.js +4 -0
- package/dist/cjs/views/ThemeProvider.js.map +0 -0
- package/dist/cjs/views/ThemeReset.js +4 -0
- package/dist/cjs/views/ThemeReset.js.map +0 -0
- package/dist/esm/Tamagui.js +10 -2
- package/dist/esm/Tamagui.js.map +2 -2
- package/dist/esm/ThemeContext.js +0 -0
- package/dist/esm/ThemeContext.js.map +0 -0
- package/dist/esm/ThemeManager.js +21 -11
- package/dist/esm/ThemeManager.js.map +2 -2
- package/dist/esm/conf.js +0 -1
- package/dist/esm/conf.js.map +2 -2
- package/dist/esm/constants/constants.js +0 -0
- package/dist/esm/constants/constants.js.map +0 -0
- package/dist/esm/constants/platform.js +2 -0
- package/dist/esm/constants/platform.js.map +2 -2
- package/dist/esm/constants/rnw.js +0 -0
- package/dist/esm/constants/rnw.js.map +0 -0
- package/dist/esm/contexts/ButtonInsideButtonContext.js +0 -0
- package/dist/esm/contexts/ButtonInsideButtonContext.js.map +0 -0
- package/dist/esm/createComponent.js +126 -131
- package/dist/esm/createComponent.js.map +2 -2
- package/dist/esm/createFont.js +0 -0
- package/dist/esm/createFont.js.map +0 -0
- package/dist/esm/createShorthands.js +0 -0
- package/dist/esm/createShorthands.js.map +0 -0
- package/dist/esm/createTamagui.js +34 -18
- package/dist/esm/createTamagui.js.map +2 -2
- package/dist/esm/createTheme.js +0 -0
- package/dist/esm/createTheme.js.map +0 -0
- package/dist/esm/createTokens.js +2 -6
- package/dist/esm/createTokens.js.map +2 -2
- package/dist/esm/createVariable.js +8 -2
- package/dist/esm/createVariable.js.map +2 -2
- package/dist/esm/defaultComponentState.js +0 -11
- package/dist/esm/defaultComponentState.js.map +3 -3
- package/dist/esm/helpers/RNComponents.js +12 -0
- package/dist/esm/helpers/RNComponents.js.map +7 -0
- package/dist/esm/helpers/addStylesUsingClassname.js +4 -1
- package/dist/esm/helpers/addStylesUsingClassname.js.map +2 -2
- package/dist/esm/helpers/areEqualSets.js +0 -0
- package/dist/esm/helpers/areEqualSets.js.map +0 -0
- package/dist/esm/helpers/createMediaStyle.js +0 -0
- package/dist/esm/helpers/createMediaStyle.js.map +0 -0
- package/dist/esm/helpers/createPropMapper.js +59 -61
- package/dist/esm/helpers/createPropMapper.js.map +2 -2
- package/dist/esm/helpers/createShallowUpdate.js +19 -0
- package/dist/esm/helpers/createShallowUpdate.js.map +7 -0
- package/dist/esm/helpers/createTamaguiProvider.js +1 -4
- package/dist/esm/helpers/createTamaguiProvider.js.map +2 -2
- package/dist/esm/helpers/extendStaticConfig.js +9 -6
- package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
- package/dist/esm/helpers/fixNativeShadow.js +0 -0
- package/dist/esm/helpers/fixNativeShadow.js.map +0 -0
- package/dist/esm/helpers/fixNativeShadow.native.js +2 -2
- package/dist/esm/helpers/fixNativeShadow.native.js.map +2 -2
- package/dist/esm/helpers/getExpandedShorthands.js +0 -0
- package/dist/esm/helpers/getExpandedShorthands.js.map +0 -0
- package/dist/esm/helpers/getSplitStyles.js +107 -63
- package/dist/esm/helpers/getSplitStyles.js.map +2 -2
- package/dist/esm/helpers/getStylesAtomic.js +15 -2
- package/dist/esm/helpers/getStylesAtomic.js.map +2 -2
- package/dist/esm/helpers/getStylesAtomic.native.js +0 -0
- package/dist/esm/helpers/getStylesAtomic.native.js.map +0 -0
- package/dist/esm/helpers/insertStyleRule.js +36 -26
- package/dist/esm/helpers/insertStyleRule.js.map +2 -2
- package/dist/esm/helpers/isObj.js +0 -0
- package/dist/esm/helpers/isObj.js.map +0 -0
- package/dist/esm/helpers/isTamaguiElement.js +0 -0
- package/dist/esm/helpers/isTamaguiElement.js.map +0 -0
- package/dist/esm/helpers/matchMedia.js +0 -0
- package/dist/esm/helpers/matchMedia.js.map +0 -0
- package/dist/esm/helpers/matchMedia.native.js +0 -0
- package/dist/esm/helpers/matchMedia.native.js.map +0 -0
- package/dist/esm/helpers/proxyThemeVariables.js +18 -0
- package/dist/esm/helpers/proxyThemeVariables.js.map +7 -0
- package/dist/esm/helpers/themeable.js +3 -2
- package/dist/esm/helpers/themeable.js.map +2 -2
- package/dist/esm/helpers/validate.js +24 -11
- package/dist/esm/helpers/validate.js.map +2 -2
- package/dist/esm/helpers/withStaticProperties.js +0 -0
- package/dist/esm/helpers/withStaticProperties.js.map +0 -0
- package/dist/esm/helpers/wrapThemeManagerContext.js +0 -0
- package/dist/esm/helpers/wrapThemeManagerContext.js.map +0 -0
- package/dist/esm/hooks/useConstant.js +0 -0
- package/dist/esm/hooks/useConstant.js.map +0 -0
- package/dist/esm/hooks/useFeatures.js +96 -17
- package/dist/esm/hooks/useFeatures.js.map +2 -2
- package/dist/esm/hooks/useIsMounted.js +0 -0
- package/dist/esm/hooks/useIsMounted.js.map +0 -0
- package/dist/esm/hooks/useIsTouchDevice.js +0 -0
- package/dist/esm/hooks/useIsTouchDevice.js.map +0 -0
- package/dist/esm/hooks/useMedia.js +20 -12
- package/dist/esm/hooks/useMedia.js.map +2 -2
- package/dist/esm/hooks/usePressable.js +0 -0
- package/dist/esm/hooks/usePressable.js.map +0 -0
- package/dist/esm/hooks/useTheme.js +28 -23
- package/dist/esm/hooks/useTheme.js.map +2 -2
- package/dist/esm/hooks/useUnmountEffect.js +0 -0
- package/dist/esm/hooks/useUnmountEffect.js.map +0 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/static.js +3 -0
- package/dist/esm/static.js.map +2 -2
- package/dist/esm/styled.js +4 -12
- package/dist/esm/styled.js.map +2 -2
- package/dist/esm/types-rnw.js +0 -0
- package/dist/esm/types-rnw.js.map +0 -0
- package/dist/esm/types.js +0 -0
- package/dist/esm/types.js.map +0 -0
- package/dist/esm/views/Stack.js +1 -0
- package/dist/esm/views/Stack.js.map +2 -2
- package/dist/esm/views/Text.js +1 -0
- package/dist/esm/views/Text.js.map +2 -2
- package/dist/esm/views/TextAncestorContext.js +0 -0
- package/dist/esm/views/TextAncestorContext.js.map +0 -0
- package/dist/esm/views/Theme.js +7 -4
- package/dist/esm/views/Theme.js.map +2 -2
- package/dist/esm/views/ThemeInverse.js +0 -0
- package/dist/esm/views/ThemeInverse.js.map +0 -0
- package/dist/esm/views/ThemeProvider.js +0 -0
- package/dist/esm/views/ThemeProvider.js.map +0 -0
- package/dist/esm/views/ThemeReset.js +0 -0
- package/dist/esm/views/ThemeReset.js.map +0 -0
- package/dist/jsx/Tamagui.js +10 -2
- package/dist/jsx/ThemeContext.js +0 -0
- package/dist/jsx/ThemeManager.js +21 -11
- package/dist/jsx/conf.js +0 -1
- package/dist/jsx/constants/constants.js +0 -0
- package/dist/jsx/constants/platform.js +2 -0
- package/dist/jsx/constants/rnw.js +0 -0
- package/dist/jsx/contexts/ButtonInsideButtonContext.js +0 -0
- package/dist/jsx/createComponent.js +119 -125
- package/dist/jsx/createFont.js +0 -0
- package/dist/jsx/createShorthands.js +0 -0
- package/dist/jsx/createTamagui.js +34 -18
- package/dist/jsx/createTheme.js +0 -0
- package/dist/jsx/createTokens.js +2 -6
- package/dist/jsx/createVariable.js +8 -2
- package/dist/jsx/defaultComponentState.js +0 -11
- package/dist/jsx/helpers/RNComponents.js +11 -0
- package/dist/jsx/helpers/addStylesUsingClassname.js +4 -1
- package/dist/jsx/helpers/areEqualSets.js +0 -0
- package/dist/jsx/helpers/createMediaStyle.js +0 -0
- package/dist/jsx/helpers/createPropMapper.js +59 -61
- package/dist/jsx/helpers/createShallowUpdate.js +18 -0
- package/dist/jsx/helpers/createTamaguiProvider.js +1 -2
- package/dist/jsx/helpers/extendStaticConfig.js +9 -6
- package/dist/jsx/helpers/fixNativeShadow.js +0 -0
- package/dist/jsx/helpers/fixNativeShadow.native.js +2 -2
- package/dist/jsx/helpers/getExpandedShorthands.js +0 -0
- package/dist/jsx/helpers/getSplitStyles.js +107 -63
- package/dist/jsx/helpers/getStylesAtomic.js +15 -2
- package/dist/jsx/helpers/getStylesAtomic.native.js +0 -0
- package/dist/jsx/helpers/insertStyleRule.js +36 -26
- package/dist/jsx/helpers/isObj.js +0 -0
- package/dist/jsx/helpers/isTamaguiElement.js +0 -0
- package/dist/jsx/helpers/matchMedia.js +0 -0
- package/dist/jsx/helpers/matchMedia.native.js +0 -0
- package/dist/jsx/helpers/proxyThemeVariables.js +17 -0
- package/dist/jsx/helpers/themeable.js +3 -3
- package/dist/jsx/helpers/validate.js +24 -11
- package/dist/jsx/helpers/withStaticProperties.js +0 -0
- package/dist/jsx/helpers/wrapThemeManagerContext.js +0 -0
- package/dist/jsx/hooks/useConstant.js +0 -0
- package/dist/jsx/hooks/useFeatures.js +96 -17
- package/dist/jsx/hooks/useIsMounted.js +0 -0
- package/dist/jsx/hooks/useIsTouchDevice.js +0 -0
- package/dist/jsx/hooks/useMedia.js +20 -12
- package/dist/jsx/hooks/usePressable.js +0 -0
- package/dist/jsx/hooks/useTheme.js +28 -23
- package/dist/jsx/hooks/useUnmountEffect.js +0 -0
- package/dist/jsx/index.js +3 -0
- package/dist/jsx/static.js +3 -0
- package/dist/jsx/styled.js +4 -12
- package/dist/jsx/types-rnw.js +0 -0
- package/dist/jsx/types.js +0 -0
- package/dist/jsx/views/Stack.js +1 -0
- package/dist/jsx/views/Text.js +1 -0
- package/dist/jsx/views/TextAncestorContext.js +0 -0
- package/dist/jsx/views/Theme.js +7 -4
- package/dist/jsx/views/ThemeInverse.js +0 -0
- package/dist/jsx/views/ThemeProvider.js +0 -0
- package/dist/jsx/views/ThemeReset.js +0 -0
- package/package.json +6 -6
- package/types/Tamagui.d.ts +18 -1
- package/types/Tamagui.d.ts.map +1 -1
- package/types/ThemeManager.d.ts +3 -3
- package/types/ThemeManager.d.ts.map +1 -1
- package/types/conf.d.ts +2 -0
- package/types/conf.d.ts.map +1 -1
- package/types/constants/platform.d.ts +1 -0
- package/types/constants/platform.d.ts.map +1 -1
- package/types/createComponent.d.ts +5 -7
- package/types/createComponent.d.ts.map +1 -1
- package/types/createFont.d.ts +1 -1
- package/types/createFont.d.ts.map +1 -1
- package/types/createTamagui.d.ts +1 -1
- package/types/createTamagui.d.ts.map +1 -1
- package/types/createTokens.d.ts +0 -26
- package/types/createTokens.d.ts.map +1 -1
- package/types/createVariable.d.ts +1 -0
- package/types/createVariable.d.ts.map +1 -1
- package/types/defaultComponentState.d.ts +0 -12
- package/types/defaultComponentState.d.ts.map +1 -1
- package/types/helpers/RNComponents.d.ts +2 -0
- package/types/helpers/RNComponents.d.ts.map +1 -0
- package/types/helpers/addStylesUsingClassname.d.ts.map +1 -1
- package/types/helpers/createPropMapper.d.ts +2 -2
- package/types/helpers/createPropMapper.d.ts.map +1 -1
- package/types/helpers/createShallowUpdate.d.ts +4 -0
- package/types/helpers/createShallowUpdate.d.ts.map +1 -0
- package/types/helpers/createTamaguiProvider.d.ts +1 -1
- package/types/helpers/createTamaguiProvider.d.ts.map +1 -1
- package/types/helpers/extendStaticConfig.d.ts +2 -2
- package/types/helpers/extendStaticConfig.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts +6 -14
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/getStylesAtomic.d.ts.map +1 -1
- package/types/helpers/insertStyleRule.d.ts +2 -1
- package/types/helpers/insertStyleRule.d.ts.map +1 -1
- package/types/helpers/proxyThemeVariables.d.ts +2 -0
- package/types/helpers/proxyThemeVariables.d.ts.map +1 -0
- package/types/helpers/themeable.d.ts +3 -1
- package/types/helpers/themeable.d.ts.map +1 -1
- package/types/helpers/validate.d.ts.map +1 -1
- package/types/hooks/useFeatures.d.ts +7 -5
- package/types/hooks/useFeatures.d.ts.map +1 -1
- package/types/hooks/useMedia.d.ts +3 -3
- package/types/hooks/useMedia.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +1 -1
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/static.d.ts +3 -0
- package/types/static.d.ts.map +1 -1
- package/types/styled.d.ts +13 -8
- package/types/styled.d.ts.map +1 -1
- package/types/types-rnw.d.ts +0 -5
- package/types/types-rnw.d.ts.map +1 -1
- package/types/types.d.ts +144 -103
- package/types/types.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/Text.d.ts +2 -2
- package/types/views/Text.d.ts.map +1 -1
- package/types/views/Theme.d.ts +1 -0
- package/types/views/Theme.d.ts.map +1 -1
- package/dist/cjs/spacedChildren.js +0 -86
- package/dist/cjs/spacedChildren.js.map +0 -7
- package/dist/esm/spacedChildren.js +0 -52
- package/dist/esm/spacedChildren.js.map +0 -7
- package/dist/jsx/spacedChildren.js +0 -44
- package/types/spacedChildren.d.ts +0 -9
- package/types/spacedChildren.d.ts.map +0 -1
|
@@ -4,63 +4,67 @@ import { getConfig } from "../conf";
|
|
|
4
4
|
import { isWeb } from "../constants/platform";
|
|
5
5
|
import { isVariable } from "../createVariable";
|
|
6
6
|
import { isObj } from "./isObj";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
function getVariantFunction(variant, key, value) {
|
|
8
|
+
if (typeof variant === "function") {
|
|
9
|
+
return variant;
|
|
10
|
+
}
|
|
11
|
+
for (const cat in tokenCategories) {
|
|
12
|
+
if (key in tokenCategories[cat]) {
|
|
13
|
+
const spreadVariant = variant[`...${cat}`];
|
|
14
|
+
if (spreadVariant) {
|
|
15
|
+
return spreadVariant;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
let fn;
|
|
19
|
-
if (typeof value === "number") {
|
|
20
|
-
fn = variant[":number"];
|
|
21
|
-
} else if (typeof value === "string") {
|
|
22
|
-
fn = variant[":string"];
|
|
23
|
-
} else if (value === true || value === false) {
|
|
24
|
-
fn = variant[":boolean"];
|
|
25
|
-
}
|
|
26
|
-
fn = fn || variant[value];
|
|
27
|
-
return fn || variant["..."] || variant["...size"];
|
|
28
18
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
19
|
+
let fn;
|
|
20
|
+
if (typeof value === "number") {
|
|
21
|
+
fn = variant[":number"];
|
|
22
|
+
} else if (typeof value === "string") {
|
|
23
|
+
fn = variant[":string"];
|
|
24
|
+
} else if (value === true || value === false) {
|
|
25
|
+
fn = variant[":boolean"];
|
|
26
|
+
}
|
|
27
|
+
fn = fn || variant[value];
|
|
28
|
+
return fn || variant["..."] || variant["...size"];
|
|
29
|
+
}
|
|
30
|
+
__name(getVariantFunction, "getVariantFunction");
|
|
31
|
+
const createPropMapper = /* @__PURE__ */ __name((staticConfig) => {
|
|
32
|
+
const variants = staticConfig.variants || {};
|
|
33
|
+
const defaultProps = staticConfig.defaultProps || {};
|
|
34
|
+
return (key, value, theme, props, returnVariablesAs = !!props.animation ? "value" : "auto", avoidDefaultProps = false) => {
|
|
32
35
|
const conf = getConfig();
|
|
33
36
|
if (!conf) {
|
|
34
37
|
console.trace("no conf! err");
|
|
35
38
|
return;
|
|
36
39
|
}
|
|
37
|
-
|
|
40
|
+
const fontFamily = props.fontFamily || defaultProps.fontFamily || "$body";
|
|
38
41
|
const variant = variants && variants[key];
|
|
39
42
|
if (variant && value !== void 0) {
|
|
40
43
|
let variantValue = getVariantFunction(variant, key, value);
|
|
41
|
-
if (
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
44
|
+
if (variantValue) {
|
|
45
|
+
if (typeof variantValue === "function") {
|
|
46
|
+
const fn = variantValue;
|
|
47
|
+
variantValue = fn(value, {
|
|
48
|
+
fonts: conf.fontsParsed,
|
|
49
|
+
tokens: conf.tokensParsed,
|
|
50
|
+
theme,
|
|
51
|
+
props: avoidDefaultProps ? props : new Proxy(props, {
|
|
52
|
+
get(target, key2) {
|
|
53
|
+
if (Reflect.has(target, key2)) {
|
|
54
|
+
return Reflect.get(target, key2);
|
|
55
|
+
}
|
|
56
|
+
if (defaultProps) {
|
|
57
|
+
return Reflect.get(defaultProps, key2);
|
|
58
|
+
}
|
|
52
59
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (isObj(variantValue)) {
|
|
61
|
-
variantValue = resolveTokens(variantValue, conf, theme, fontFamily, returnVariablesAs);
|
|
60
|
+
})
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
if (isObj(variantValue)) {
|
|
64
|
+
variantValue = resolveTokens(variantValue, conf, theme, fontFamily, returnVariablesAs);
|
|
65
|
+
}
|
|
66
|
+
return variantValue;
|
|
62
67
|
}
|
|
63
|
-
return variantValue;
|
|
64
68
|
}
|
|
65
69
|
let shouldReturn = false;
|
|
66
70
|
if (conf.shorthands[key]) {
|
|
@@ -108,34 +112,28 @@ const resolveTokens = /* @__PURE__ */ __name((input, conf, theme, fontFamily, re
|
|
|
108
112
|
}
|
|
109
113
|
return res;
|
|
110
114
|
}, "resolveTokens");
|
|
111
|
-
const
|
|
112
|
-
|
|
115
|
+
const fontShorthand = {
|
|
116
|
+
fontSize: "size",
|
|
117
|
+
fontWeight: "weight"
|
|
118
|
+
};
|
|
119
|
+
const getToken = /* @__PURE__ */ __name((key, value, { tokensParsed, fontsParsed }, theme, fontFamily = "$body", resolveAs) => {
|
|
120
|
+
var _a, _b, _c;
|
|
113
121
|
let valOrVar;
|
|
114
122
|
let hasSet = false;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
valOrVar = theme[valueName];
|
|
123
|
+
if (value in theme) {
|
|
124
|
+
valOrVar = theme[value];
|
|
118
125
|
hasSet = true;
|
|
119
126
|
} else {
|
|
120
127
|
switch (key) {
|
|
121
128
|
case "fontFamily":
|
|
122
|
-
valOrVar = ((_a =
|
|
129
|
+
valOrVar = ((_a = fontsParsed[value]) == null ? void 0 : _a.family) || value;
|
|
123
130
|
hasSet = true;
|
|
124
131
|
break;
|
|
125
132
|
case "fontSize":
|
|
126
|
-
valOrVar = ((_b = tokensParsed.font[fontFamily]) == null ? void 0 : _b.size[value]) || value;
|
|
127
|
-
hasSet = true;
|
|
128
|
-
break;
|
|
129
133
|
case "lineHeight":
|
|
130
|
-
valOrVar = ((_c = tokensParsed.font[fontFamily]) == null ? void 0 : _c.lineHeight[value]) || value;
|
|
131
|
-
hasSet = true;
|
|
132
|
-
break;
|
|
133
134
|
case "letterSpacing":
|
|
134
|
-
valOrVar = ((_d = tokensParsed.font[fontFamily]) == null ? void 0 : _d.letterSpacing[value]) || value;
|
|
135
|
-
hasSet = true;
|
|
136
|
-
break;
|
|
137
135
|
case "fontWeight":
|
|
138
|
-
valOrVar = ((
|
|
136
|
+
valOrVar = ((_c = (_b = fontsParsed[fontFamily]) == null ? void 0 : _b[fontShorthand[key] || key]) == null ? void 0 : _c[value]) || value;
|
|
139
137
|
hasSet = true;
|
|
140
138
|
break;
|
|
141
139
|
}
|
|
@@ -161,7 +159,7 @@ const getToken = /* @__PURE__ */ __name((key, value, { tokensParsed }, theme, fo
|
|
|
161
159
|
}
|
|
162
160
|
if (process.env.NODE_ENV === "development") {
|
|
163
161
|
if (value && value[0] === "$") {
|
|
164
|
-
console.warn(`\u26A0\uFE0F Missing token
|
|
162
|
+
console.warn(`\u26A0\uFE0F Missing token:`, key, value, fontFamily, theme, fontsParsed);
|
|
165
163
|
return null;
|
|
166
164
|
}
|
|
167
165
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
function createShallowUpdate(setter) {
|
|
4
|
+
return (next) => {
|
|
5
|
+
setter((prev) => {
|
|
6
|
+
for (const key in next) {
|
|
7
|
+
if (prev[key] !== next[key]) {
|
|
8
|
+
return { ...prev, ...next };
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
return prev;
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
__name(createShallowUpdate, "createShallowUpdate");
|
|
16
|
+
export {
|
|
17
|
+
createShallowUpdate
|
|
18
|
+
};
|
|
@@ -10,7 +10,6 @@ function createTamaguiProvider({
|
|
|
10
10
|
}) {
|
|
11
11
|
return /* @__PURE__ */ __name(function TamaguiProvider({
|
|
12
12
|
injectCSS,
|
|
13
|
-
fallback,
|
|
14
13
|
children,
|
|
15
14
|
...themePropsProvider
|
|
16
15
|
}) {
|
|
@@ -26,7 +25,7 @@ function createTamaguiProvider({
|
|
|
26
25
|
};
|
|
27
26
|
}, []);
|
|
28
27
|
}
|
|
29
|
-
return <ButtonInsideButtonContext.Provider value={false}><TextAncestorProvider><ThemeProvider {...themeProps} {...themePropsProvider}
|
|
28
|
+
return <ButtonInsideButtonContext.Provider value={false}><TextAncestorProvider><ThemeProvider {...themeProps} {...themePropsProvider}>{children}</ThemeProvider></TextAncestorProvider></ButtonInsideButtonContext.Provider>;
|
|
30
29
|
}, "TamaguiProvider");
|
|
31
30
|
}
|
|
32
31
|
__name(createTamaguiProvider, "createTamaguiProvider");
|
|
@@ -2,12 +2,9 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
3
|
import { stylePropsView } from "@tamagui/helpers";
|
|
4
4
|
import { createPropMapper } from "./createPropMapper";
|
|
5
|
-
function extendStaticConfig(
|
|
5
|
+
function extendStaticConfig(config, parent) {
|
|
6
6
|
var _a;
|
|
7
|
-
if (!parent) {
|
|
8
|
-
throw new Error("no parent");
|
|
9
|
-
}
|
|
10
|
-
if (!("staticConfig" in parent)) {
|
|
7
|
+
if (!parent || !("staticConfig" in parent)) {
|
|
11
8
|
return parseStaticConfig(config);
|
|
12
9
|
}
|
|
13
10
|
const variants = {
|
|
@@ -38,9 +35,15 @@ function extendStaticConfig(parent, config = {}) {
|
|
|
38
35
|
...parent.staticConfig.validStyles,
|
|
39
36
|
...config.validStyles
|
|
40
37
|
} : parent.staticConfig.validStyles || stylePropsView,
|
|
38
|
+
defaultVariants: {
|
|
39
|
+
...parent.staticConfig.defaultVariants,
|
|
40
|
+
...config.defaultVariants
|
|
41
|
+
},
|
|
41
42
|
defaultProps: {
|
|
42
43
|
...parent.staticConfig.defaultProps,
|
|
43
|
-
...
|
|
44
|
+
...parent.staticConfig.defaultVariants,
|
|
45
|
+
...config.defaultProps,
|
|
46
|
+
...config.defaultVariants
|
|
44
47
|
}
|
|
45
48
|
});
|
|
46
49
|
}
|
|
File without changes
|
|
@@ -18,8 +18,8 @@ function fixNativeShadow(props) {
|
|
|
18
18
|
if ((c[0] === "r" || c[0] === "h") && c[3] === "a") {
|
|
19
19
|
const [_, type, _1, _2, _3, a] = c.match(matchRgbaHsla) || [];
|
|
20
20
|
if (typeof a !== "string") {
|
|
21
|
-
console.
|
|
22
|
-
|
|
21
|
+
console.trace("invalid", c, type);
|
|
22
|
+
throw new Error(`invalid style`);
|
|
23
23
|
}
|
|
24
24
|
props.shadowColor = `${type.replace("a", "")}(${_1},${_2},${_3})`;
|
|
25
25
|
props.shadowOpacity = +a;
|
|
File without changes
|
|
@@ -7,34 +7,25 @@ import {
|
|
|
7
7
|
validPseudoKeys,
|
|
8
8
|
validStyles
|
|
9
9
|
} from "@tamagui/helpers";
|
|
10
|
-
import {
|
|
10
|
+
import { getConfig } from "../conf";
|
|
11
|
+
import { isClient, isWeb } from "../constants/platform";
|
|
11
12
|
import { mediaQueryConfig, mediaState } from "../hooks/useMedia";
|
|
12
13
|
import { createMediaStyle } from "./createMediaStyle";
|
|
13
14
|
import { fixNativeShadow } from "./fixNativeShadow";
|
|
14
15
|
import { getStylesAtomic } from "./getStylesAtomic";
|
|
15
16
|
import { insertStyleRule, insertedTransforms, updateInserted } from "./insertStyleRule";
|
|
16
|
-
const
|
|
17
|
+
const skipProps = {
|
|
17
18
|
animation: true,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
key: true,
|
|
21
|
-
ref: true
|
|
19
|
+
animateOnly: true,
|
|
20
|
+
debug: true
|
|
22
21
|
};
|
|
23
|
-
|
|
24
|
-
var _a, _b;
|
|
25
|
-
if (typeof style.flex === "number") {
|
|
26
|
-
const val = style.flex;
|
|
27
|
-
delete style.flex;
|
|
28
|
-
style.flexGrow = (_a = style.flexGrow) != null ? _a : val;
|
|
29
|
-
style.flexShrink = (_b = style.flexShrink) != null ? _b : 1;
|
|
30
|
-
}
|
|
31
|
-
if (!isWeb) {
|
|
32
|
-
fixNativeShadow(style);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
__name(normalizeStyleObject, "normalizeStyleObject");
|
|
22
|
+
let conf;
|
|
36
23
|
const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state, defaultClassNames) => {
|
|
37
|
-
var _a
|
|
24
|
+
var _a;
|
|
25
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
26
|
+
console.log(" \xBB getSplitStyles", { props, state, defaultClassNames });
|
|
27
|
+
}
|
|
28
|
+
conf = conf || getConfig();
|
|
38
29
|
const validStyleProps = staticConfig.isText ? stylePropsText : validStyles;
|
|
39
30
|
const viewProps = {};
|
|
40
31
|
const style = {};
|
|
@@ -46,20 +37,42 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
46
37
|
let cur = null;
|
|
47
38
|
let transforms = {};
|
|
48
39
|
function mergeClassName(key, val) {
|
|
49
|
-
if (!val)
|
|
40
|
+
if (!val) {
|
|
50
41
|
return;
|
|
42
|
+
}
|
|
51
43
|
if (val.startsWith("_transform-")) {
|
|
52
44
|
const isMediaOrPseudo = key !== "transform";
|
|
53
45
|
const isMedia = isMediaOrPseudo && key[11] === "_";
|
|
54
|
-
const isPsuedo = isMediaOrPseudo &&
|
|
46
|
+
const isPsuedo = isMediaOrPseudo && key[11] === "0" || key.endsWith("Style");
|
|
55
47
|
const namespace = isMedia ? key.split("_")[2] : isPsuedo ? key.split("-")[1] : "transform";
|
|
56
|
-
|
|
57
|
-
|
|
48
|
+
let transform = insertedTransforms[val];
|
|
49
|
+
if (isClient) {
|
|
50
|
+
if (!transform) {
|
|
51
|
+
updateInserted();
|
|
52
|
+
transform = insertedTransforms[val];
|
|
53
|
+
}
|
|
54
|
+
if (!transform) {
|
|
55
|
+
if (isWeb && val[0] !== "_") {
|
|
56
|
+
transform = val;
|
|
57
|
+
} else {
|
|
58
|
+
console.trace("?", key, val, cur, props, state);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
62
|
+
console.log(" \xBB getSplitStyles mergeClassName transform", { key, val, namespace, transform, insertedTransforms });
|
|
63
|
+
}
|
|
64
|
+
if (process.env.NODE_ENV === "development") {
|
|
65
|
+
if (!transform) {
|
|
66
|
+
console.trace("NO TRANSFORM?", { key, val, transform });
|
|
67
|
+
}
|
|
68
|
+
}
|
|
58
69
|
}
|
|
59
|
-
const transform = insertedTransforms[val];
|
|
60
70
|
transforms[namespace] = transforms[namespace] || ["", ""];
|
|
61
|
-
|
|
62
|
-
transforms[namespace][
|
|
71
|
+
const identifier = val.replace("_transform", "");
|
|
72
|
+
transforms[namespace][0] += identifier;
|
|
73
|
+
if (transform) {
|
|
74
|
+
transforms[namespace][1] += transform;
|
|
75
|
+
}
|
|
63
76
|
} else {
|
|
64
77
|
classNames[key] = val;
|
|
65
78
|
}
|
|
@@ -69,17 +82,21 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
69
82
|
if (!cur)
|
|
70
83
|
return;
|
|
71
84
|
normalizeStyleObject(cur);
|
|
85
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
86
|
+
console.log(" \xBB getSplitStyles push", cur, state);
|
|
87
|
+
}
|
|
72
88
|
if (isWeb && !state.noClassNames) {
|
|
73
89
|
const atomic = getStylesAtomic(cur);
|
|
74
90
|
for (const atomicStyle of atomic) {
|
|
75
91
|
if (!state.noClassNames) {
|
|
76
|
-
mergeClassName(atomicStyle.property, atomicStyle.identifier);
|
|
77
92
|
insertStyleRule(atomicStyle.identifier, atomicStyle.rules[0]);
|
|
93
|
+
mergeClassName(atomicStyle.property, atomicStyle.identifier);
|
|
78
94
|
} else {
|
|
79
95
|
style[atomicStyle.property] = atomicStyle.value;
|
|
80
96
|
}
|
|
81
97
|
}
|
|
82
|
-
}
|
|
98
|
+
}
|
|
99
|
+
if (!isWeb || state.noClassNames || state.resolveVariablesAs === "value" || state.resolveVariablesAs === "both") {
|
|
83
100
|
for (const key in cur) {
|
|
84
101
|
if (key in stylePropsTransform) {
|
|
85
102
|
mergeTransform(style, key, cur[key]);
|
|
@@ -92,30 +109,34 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
92
109
|
}
|
|
93
110
|
__name(push, "push");
|
|
94
111
|
for (const keyInit in props) {
|
|
95
|
-
|
|
96
|
-
if (skipKeys[keyInit]) {
|
|
97
|
-
viewProps[keyInit] = valInit;
|
|
112
|
+
if (skipProps[keyInit]) {
|
|
98
113
|
continue;
|
|
99
114
|
}
|
|
115
|
+
const valInit = props[keyInit];
|
|
116
|
+
let isMedia = keyInit[0] === "$";
|
|
117
|
+
let isPseudo = validPseudoKeys[keyInit];
|
|
100
118
|
if (keyInit === "className" || validStyleProps[keyInit] && valInit && valInit[0] === "_") {
|
|
101
119
|
push();
|
|
102
120
|
mergeClassName(keyInit, valInit);
|
|
103
|
-
if (cur) {
|
|
104
|
-
if (cur[keyInit])
|
|
105
|
-
console.warn("just want to see how used");
|
|
106
|
-
delete cur[keyInit];
|
|
107
|
-
}
|
|
108
121
|
continue;
|
|
109
122
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
123
|
+
if (state.keepVariantsAsProps && staticConfig.defaultVariants && keyInit in staticConfig.defaultVariants) {
|
|
124
|
+
viewProps[keyInit] = valInit;
|
|
125
|
+
}
|
|
126
|
+
if (!isMedia && !isPseudo && !((_a = staticConfig.variants) == null ? void 0 : _a[keyInit]) && !validStyleProps[keyInit] && !conf.shorthands[keyInit]) {
|
|
127
|
+
viewProps[keyInit] = valInit;
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
const out = isMedia || isPseudo ? true : staticConfig.propMapper(keyInit, valInit, theme, state.fallbackProps || props, state.resolveVariablesAs);
|
|
113
131
|
const expanded = out === true || !out ? [[keyInit, valInit]] : Object.entries(out);
|
|
132
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
133
|
+
console.log(" \xBB getSplitStyles", keyInit, expanded);
|
|
134
|
+
}
|
|
114
135
|
for (const [key, val] of expanded) {
|
|
115
136
|
if (val === void 0) {
|
|
116
137
|
continue;
|
|
117
138
|
}
|
|
118
|
-
if (val && val[0] === "_") {
|
|
139
|
+
if (key !== "target" && val && val[0] === "_") {
|
|
119
140
|
mergeClassName(key, val);
|
|
120
141
|
continue;
|
|
121
142
|
}
|
|
@@ -131,39 +152,42 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
131
152
|
continue;
|
|
132
153
|
}
|
|
133
154
|
pseudos[key] = pseudos[key] || {};
|
|
134
|
-
pseudos[key] = getSubStyle(val, staticConfig, theme, props, state
|
|
155
|
+
pseudos[key] = getSubStyle(val, staticConfig, theme, props, state, true);
|
|
135
156
|
if (isWeb && !state.noClassNames) {
|
|
136
157
|
const pseudoStyles = getStylesAtomic({ [key]: pseudos[key] });
|
|
137
|
-
if ((_b = (_a = pseudoStyles[0]) == null ? void 0 : _a.identifier) == null ? void 0 : _b.includes("undefined")) {
|
|
138
|
-
console.warn("undefined bug?", (_c = pseudoStyles[0]) == null ? void 0 : _c.identifier);
|
|
139
|
-
}
|
|
140
158
|
for (const style2 of pseudoStyles) {
|
|
141
|
-
mergeClassName(`${style2.property}-${key}`, style2.identifier);
|
|
142
159
|
insertStyleRule(style2.identifier, style2.rules[0]);
|
|
160
|
+
mergeClassName(`${style2.property}-${key}`, style2.identifier);
|
|
143
161
|
}
|
|
144
162
|
}
|
|
145
163
|
continue;
|
|
146
164
|
}
|
|
147
165
|
if (isMedia) {
|
|
148
|
-
const mediaKey = key
|
|
149
|
-
|
|
150
|
-
|
|
166
|
+
const mediaKey = key;
|
|
167
|
+
const mediaKeyShort = mediaKey.slice(1);
|
|
168
|
+
if (!mediaQueryConfig[mediaKeyShort]) {
|
|
169
|
+
viewProps[key] = val;
|
|
151
170
|
continue;
|
|
152
171
|
}
|
|
153
|
-
const mediaStyle = getSubStyle(
|
|
154
|
-
if (
|
|
172
|
+
const mediaStyle = getSubStyle(val, staticConfig, theme, props, state);
|
|
173
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
174
|
+
console.log(" \xBB getSplitStyles mediaStyle", mediaKey, mediaStyle, props);
|
|
175
|
+
}
|
|
176
|
+
const shouldDoClasses = isWeb && !state.noClassNames;
|
|
177
|
+
if (shouldDoClasses) {
|
|
155
178
|
const mediaStyles = getStylesAtomic(mediaStyle);
|
|
156
179
|
for (const style2 of mediaStyles) {
|
|
157
|
-
const out2 = createMediaStyle(style2,
|
|
158
|
-
mergeClassName(`${out2.identifier}-${mediaKey}`, out2.identifier);
|
|
180
|
+
const out2 = createMediaStyle(style2, mediaKeyShort, mediaQueryConfig);
|
|
159
181
|
insertStyleRule(out2.identifier, out2.styleRule);
|
|
160
|
-
|
|
161
|
-
if (mediaState[mediaKey]) {
|
|
162
|
-
Object.assign(medias, mediaStyle);
|
|
182
|
+
mergeClassName(`${out2.identifier}-${mediaKey}`, out2.identifier);
|
|
163
183
|
}
|
|
164
184
|
} else {
|
|
165
185
|
if (mediaState[mediaKey]) {
|
|
166
|
-
|
|
186
|
+
push();
|
|
187
|
+
if (process.env.NODE_ENV === "development" && props["debug"]) {
|
|
188
|
+
console.log("apply media style", mediaKey, mediaState);
|
|
189
|
+
}
|
|
190
|
+
Object.assign(shouldDoClasses ? medias : style, mediaStyle);
|
|
167
191
|
}
|
|
168
192
|
}
|
|
169
193
|
continue;
|
|
@@ -195,13 +219,18 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
195
219
|
for (const namespace in transforms) {
|
|
196
220
|
const [hash, val] = transforms[namespace];
|
|
197
221
|
const identifier = `_transform${hash}`;
|
|
198
|
-
if (
|
|
199
|
-
|
|
200
|
-
|
|
222
|
+
if (isClient) {
|
|
223
|
+
if (!insertedTransforms[identifier]) {
|
|
224
|
+
const rule = `.${identifier} { transform: ${val}; }`;
|
|
225
|
+
insertStyleRule(identifier, rule);
|
|
226
|
+
}
|
|
201
227
|
}
|
|
202
228
|
classNames[namespace] = identifier;
|
|
203
229
|
}
|
|
204
230
|
}
|
|
231
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
232
|
+
console.log(" \xBB getSplitStyles out", { style, pseudos, medias, classNames, viewProps, state });
|
|
233
|
+
}
|
|
205
234
|
return {
|
|
206
235
|
viewProps,
|
|
207
236
|
style,
|
|
@@ -210,11 +239,11 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
210
239
|
classNames
|
|
211
240
|
};
|
|
212
241
|
}, "getSplitStyles");
|
|
213
|
-
const getSubStyle = /* @__PURE__ */ __name((styleIn, staticConfig, theme, props,
|
|
242
|
+
const getSubStyle = /* @__PURE__ */ __name((styleIn, staticConfig, theme, props, state, avoidDefaultProps) => {
|
|
214
243
|
const styleOut = {};
|
|
215
244
|
for (const key in styleIn) {
|
|
216
245
|
const val = styleIn[key];
|
|
217
|
-
const out = staticConfig.propMapper(key, val, theme, props,
|
|
246
|
+
const out = staticConfig.propMapper(key, val, theme, state.fallbackProps || props, state.resolveVariablesAs, avoidDefaultProps);
|
|
218
247
|
const expanded = out === true || !out ? [[key, val]] : Object.entries(out);
|
|
219
248
|
for (const [skey, sval] of expanded) {
|
|
220
249
|
if (skey in stylePropsTransform) {
|
|
@@ -227,6 +256,21 @@ const getSubStyle = /* @__PURE__ */ __name((styleIn, staticConfig, theme, props,
|
|
|
227
256
|
normalizeStyleObject(styleOut);
|
|
228
257
|
return styleOut;
|
|
229
258
|
}, "getSubStyle");
|
|
259
|
+
function normalizeStyleObject(style) {
|
|
260
|
+
var _a, _b;
|
|
261
|
+
if (typeof style.flex === "number") {
|
|
262
|
+
const val = style.flex;
|
|
263
|
+
delete style.flex;
|
|
264
|
+
style.flexGrow = (_a = style.flexGrow) != null ? _a : val;
|
|
265
|
+
style.flexShrink = (_b = style.flexShrink) != null ? _b : 1;
|
|
266
|
+
}
|
|
267
|
+
if (!isWeb) {
|
|
268
|
+
fixNativeShadow(style);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
__name(normalizeStyleObject, "normalizeStyleObject");
|
|
230
272
|
export {
|
|
231
|
-
getSplitStyles
|
|
273
|
+
getSplitStyles,
|
|
274
|
+
getSubStyle,
|
|
275
|
+
normalizeStyleObject
|
|
232
276
|
};
|
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
mergeTransform,
|
|
6
6
|
stylePropsTransform
|
|
7
7
|
} from "@tamagui/helpers";
|
|
8
|
+
import { getConfig } from "../conf";
|
|
8
9
|
import { rnw } from "../constants/rnw";
|
|
9
10
|
import { isVariable } from "../createVariable";
|
|
10
11
|
function getStylesAtomic(stylesIn, options = {}) {
|
|
@@ -33,6 +34,7 @@ __name(getStylesAtomic, "getStylesAtomic");
|
|
|
33
34
|
const generateAtomicStyles = /* @__PURE__ */ __name((style) => {
|
|
34
35
|
return rnw.atomic(rnw.createCompileableStyle(rnw.createReactDOMStyle(style)));
|
|
35
36
|
}, "generateAtomicStyles");
|
|
37
|
+
let reversedShorthands = null;
|
|
36
38
|
function getAtomicStyle(style, pseudo, options) {
|
|
37
39
|
var _a;
|
|
38
40
|
if (style == null || typeof style !== "object") {
|
|
@@ -60,11 +62,22 @@ function getAtomicStyle(style, pseudo, options) {
|
|
|
60
62
|
} else {
|
|
61
63
|
atomicStyles = generateAtomicStyles(style);
|
|
62
64
|
}
|
|
65
|
+
if (!reversedShorthands) {
|
|
66
|
+
reversedShorthands = {};
|
|
67
|
+
const conf = getConfig();
|
|
68
|
+
if (conf.shorthands) {
|
|
69
|
+
for (const key in conf.shorthands) {
|
|
70
|
+
reversedShorthands[conf.shorthands[key]] = key;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
63
74
|
return Object.keys(atomicStyles).map((key) => {
|
|
64
75
|
const val = atomicStyles[key];
|
|
65
|
-
const [_,
|
|
76
|
+
const [_, a, b] = val.identifier.split("-");
|
|
77
|
+
const hash = b || a;
|
|
66
78
|
const psuedoPrefix = pseudo ? `0${pseudo.name}-` : "";
|
|
67
|
-
const
|
|
79
|
+
const shortProp = reversedShorthands[val.property] || val.property;
|
|
80
|
+
const identifier = `_${shortProp}-${psuedoPrefix}${hash}`;
|
|
68
81
|
const className = `.${identifier}`;
|
|
69
82
|
const rules = val.rules.map((rule) => {
|
|
70
83
|
if (pseudo) {
|
|
File without changes
|