@tamagui/web 2.0.0-rc.8 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +2 -0
- package/.turbo/turbo-test$colon$web.log +15 -0
- package/dist/cjs/Tamagui.cjs +57 -53
- package/dist/cjs/Tamagui.native.js +95 -79
- package/dist/cjs/Tamagui.native.js.map +1 -1
- package/dist/cjs/_withStableStyle.cjs +56 -35
- package/dist/cjs/_withStableStyle.native.js +64 -46
- package/dist/cjs/_withStableStyle.native.js.map +1 -1
- package/dist/cjs/animationDriverTypes.test-d.cjs +39 -11
- package/dist/cjs/animationDriverTypes.test-d.native.js +39 -11
- package/dist/cjs/animationDriverTypes.test-d.native.js.map +1 -1
- package/dist/cjs/config.cjs +135 -75
- package/dist/cjs/config.native.js +158 -106
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/constants/accessibilityDirectMap.cjs +17 -15
- package/dist/cjs/constants/accessibilityDirectMap.native.js +17 -15
- package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
- package/dist/cjs/constants/constants.cjs +17 -29
- package/dist/cjs/constants/constants.native.js +18 -29
- package/dist/cjs/constants/constants.native.js.map +1 -1
- package/dist/cjs/constants/isDevTools.cjs +18 -14
- package/dist/cjs/constants/isDevTools.native.js +18 -14
- package/dist/cjs/constants/isDevTools.native.js.map +1 -1
- package/dist/cjs/contexts/ComponentContext.cjs +24 -20
- package/dist/cjs/contexts/ComponentContext.native.js +25 -23
- package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
- package/dist/cjs/contexts/GroupContext.cjs +12 -10
- package/dist/cjs/contexts/GroupContext.native.js +14 -12
- package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
- package/dist/cjs/createComponent.cjs +916 -636
- package/dist/cjs/createComponent.native.js +917 -692
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createFont.cjs +33 -27
- package/dist/cjs/createFont.native.js +35 -32
- package/dist/cjs/createFont.native.js.map +1 -1
- package/dist/cjs/createShorthands.cjs +12 -10
- package/dist/cjs/createShorthands.native.js +12 -10
- package/dist/cjs/createShorthands.native.js.map +1 -1
- package/dist/cjs/createTamagui.cjs +118 -97
- package/dist/cjs/createTamagui.native.js +155 -141
- package/dist/cjs/createTamagui.native.js.map +1 -1
- package/dist/cjs/createTokens.cjs +12 -10
- package/dist/cjs/createTokens.native.js +12 -10
- package/dist/cjs/createTokens.native.js.map +1 -1
- package/dist/cjs/createVariable.cjs +57 -31
- package/dist/cjs/createVariable.native.js +67 -42
- package/dist/cjs/createVariable.native.js.map +1 -1
- package/dist/cjs/createVariables.cjs +55 -49
- package/dist/cjs/createVariables.native.js +57 -51
- package/dist/cjs/createVariables.native.js.map +1 -1
- package/dist/cjs/defaultComponentState.cjs +29 -27
- package/dist/cjs/defaultComponentState.native.js +29 -27
- package/dist/cjs/defaultComponentState.native.js.map +1 -1
- package/dist/cjs/eventHandling.cjs +15 -13
- package/dist/cjs/eventHandling.native.js +198 -92
- package/dist/cjs/eventHandling.native.js.map +1 -1
- package/dist/cjs/helpers/consoleLog.native.js +14 -12
- package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
- package/dist/cjs/helpers/createDesignSystem.cjs +84 -44
- package/dist/cjs/helpers/createDesignSystem.native.js +118 -88
- package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/cjs/helpers/createMediaStyle.cjs +91 -61
- package/dist/cjs/helpers/createMediaStyle.native.js +97 -68
- package/dist/cjs/helpers/createMediaStyle.native.js.map +1 -1
- package/dist/cjs/helpers/createStyledContext.cjs +84 -61
- package/dist/cjs/helpers/createStyledContext.native.js +88 -68
- package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
- package/dist/cjs/helpers/defaultAnimationDriver.cjs +29 -28
- package/dist/cjs/helpers/defaultAnimationDriver.native.js +45 -42
- package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
- package/dist/cjs/helpers/defaultOffset.cjs +12 -10
- package/dist/cjs/helpers/defaultOffset.native.js +12 -10
- package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyle.cjs +54 -39
- package/dist/cjs/helpers/expandStyle.native.js +68 -77
- package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyles.cjs +24 -23
- package/dist/cjs/helpers/expandStyles.native.js +27 -21
- package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getCSSStylesAtomic.cjs +110 -73
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js +17 -15
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
- package/dist/cjs/helpers/getDefaultProps.cjs +22 -23
- package/dist/cjs/helpers/getDefaultProps.native.js +27 -23
- package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
- package/dist/cjs/helpers/getDynamicVal.cjs +32 -27
- package/dist/cjs/helpers/getDynamicVal.native.js +37 -32
- package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
- package/dist/cjs/helpers/getExpandedShorthands.cjs +15 -11
- package/dist/cjs/helpers/getExpandedShorthands.native.js +17 -13
- package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
- package/dist/cjs/helpers/getFontLanguage.cjs +12 -10
- package/dist/cjs/helpers/getFontLanguage.native.js +12 -10
- package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
- package/dist/cjs/helpers/getGroupPropParts.cjs +27 -18
- package/dist/cjs/helpers/getGroupPropParts.native.js +28 -19
- package/dist/cjs/helpers/getGroupPropParts.native.js.map +1 -1
- package/dist/cjs/helpers/getShorthandValue.cjs +16 -11
- package/dist/cjs/helpers/getShorthandValue.native.js +19 -17
- package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.cjs +638 -395
- package/dist/cjs/helpers/getSplitStyles.native.js +754 -598
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.cjs +94 -85
- package/dist/cjs/helpers/getThemeCSSRules.native.js +12 -10
- package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
- package/dist/cjs/helpers/getTokenForKey.cjs +174 -0
- package/dist/cjs/helpers/getTokenForKey.native.js +186 -0
- package/dist/cjs/helpers/getTokenForKey.native.js.map +1 -0
- package/dist/cjs/helpers/getVariantExtras.cjs +60 -44
- package/dist/cjs/helpers/getVariantExtras.native.js +60 -44
- package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.cjs +109 -75
- package/dist/cjs/helpers/insertStyleRule.native.js +52 -263
- package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/cjs/helpers/isActivePlatform.cjs +21 -17
- package/dist/cjs/helpers/isActivePlatform.native.js +21 -17
- package/dist/cjs/helpers/isActivePlatform.native.js.map +1 -1
- package/dist/cjs/helpers/isActiveTheme.cjs +14 -11
- package/dist/cjs/helpers/isActiveTheme.native.js +14 -11
- package/dist/cjs/helpers/isActiveTheme.native.js.map +1 -1
- package/dist/cjs/helpers/isObj.cjs +13 -11
- package/dist/cjs/helpers/isObj.native.js +14 -12
- package/dist/cjs/helpers/isObj.native.js.map +1 -1
- package/dist/cjs/helpers/isTamaguiComponent.cjs +14 -12
- package/dist/cjs/helpers/isTamaguiComponent.native.js +14 -12
- package/dist/cjs/helpers/isTamaguiComponent.native.js.map +1 -1
- package/dist/cjs/helpers/isTamaguiElement.cjs +29 -25
- package/dist/cjs/helpers/isTamaguiElement.native.js +29 -27
- package/dist/cjs/helpers/isTamaguiElement.native.js.map +1 -1
- package/dist/cjs/helpers/log.cjs +20 -19
- package/dist/cjs/helpers/log.native.js +20 -19
- package/dist/cjs/helpers/log.native.js.map +1 -1
- package/dist/cjs/helpers/mainThreadPressEvents.cjs +13 -11
- package/dist/cjs/helpers/mainThreadPressEvents.native.js +111 -26
- package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/cjs/helpers/matchMedia.cjs +15 -13
- package/dist/cjs/helpers/matchMedia.native.js +34 -19
- package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
- package/dist/cjs/helpers/mediaObjectToString.cjs +30 -14
- package/dist/cjs/helpers/mediaObjectToString.native.js +28 -14
- package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -1
- package/dist/cjs/helpers/mediaState.cjs +21 -17
- package/dist/cjs/helpers/mediaState.native.js +30 -26
- package/dist/cjs/helpers/mediaState.native.js.map +1 -1
- package/dist/cjs/helpers/mergeProps.cjs +54 -30
- package/dist/cjs/helpers/mergeProps.native.js +55 -30
- package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeRenderElementProps.cjs +14 -11
- package/dist/cjs/helpers/mergeRenderElementProps.native.js +14 -11
- package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeSlotStyleProps.cjs +31 -18
- package/dist/cjs/helpers/mergeSlotStyleProps.native.js +32 -19
- package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeVariants.cjs +28 -16
- package/dist/cjs/helpers/mergeVariants.native.js +30 -18
- package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
- package/dist/cjs/helpers/nativeOnlyProps.cjs +12 -10
- package/dist/cjs/helpers/nativeOnlyProps.native.js +12 -10
- package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeColor.cjs +30 -13
- package/dist/cjs/helpers/normalizeColor.native.js +33 -30
- package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeShadow.cjs +12 -10
- package/dist/cjs/helpers/normalizeShadow.native.js +25 -23
- package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeStyle.cjs +48 -20
- package/dist/cjs/helpers/normalizeStyle.native.js +73 -27
- package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeStylePropKeys.cjs +12 -10
- package/dist/cjs/helpers/normalizeStylePropKeys.native.js +22 -20
- package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.cjs +33 -17
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js +34 -18
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/cjs/helpers/objectIdentityKey.cjs +19 -12
- package/dist/cjs/helpers/objectIdentityKey.native.js +22 -15
- package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/cjs/helpers/parseBorderShorthand.cjs +15 -11
- package/dist/cjs/helpers/parseBorderShorthand.native.js +52 -24
- package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
- package/dist/cjs/helpers/parseNativeStyle.cjs +85 -50
- package/dist/cjs/helpers/parseNativeStyle.native.js +130 -88
- package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/parseOutlineShorthand.cjs +15 -11
- package/dist/cjs/helpers/parseOutlineShorthand.native.js +46 -24
- package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -1
- package/dist/cjs/helpers/platformResolveValue.cjs +38 -0
- package/dist/cjs/helpers/platformResolveValue.native.js +74 -0
- package/dist/cjs/helpers/platformResolveValue.native.js.map +1 -0
- package/dist/cjs/helpers/pointerEvents.cjs +12 -10
- package/dist/cjs/helpers/pointerEvents.native.js +124 -89
- package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
- package/dist/cjs/helpers/propMapper.cjs +219 -212
- package/dist/cjs/helpers/propMapper.native.js +298 -331
- package/dist/cjs/helpers/propMapper.native.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeToParents.cjs +33 -19
- package/dist/cjs/helpers/proxyThemeToParents.native.js +84 -55
- package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeVariables.cjs +13 -11
- package/dist/cjs/helpers/proxyThemeVariables.native.js +13 -11
- package/dist/cjs/helpers/proxyThemeVariables.native.js.map +1 -1
- package/dist/cjs/helpers/pseudoDescriptors.cjs +60 -58
- package/dist/cjs/helpers/pseudoDescriptors.native.js +60 -58
- package/dist/cjs/helpers/pseudoDescriptors.native.js.map +1 -1
- package/dist/cjs/helpers/pseudoTransitions.cjs +83 -0
- package/dist/cjs/helpers/pseudoTransitions.native.js +88 -0
- package/dist/cjs/helpers/pseudoTransitions.native.js.map +1 -0
- package/dist/cjs/helpers/registerCSSVariable.cjs +55 -38
- package/dist/cjs/helpers/registerCSSVariable.native.js +60 -45
- package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/cjs/helpers/resolveAnimationDriver.cjs +37 -0
- package/dist/cjs/helpers/resolveAnimationDriver.native.js +41 -0
- package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -0
- package/dist/cjs/helpers/resolveCompoundTokens.cjs +41 -0
- package/dist/cjs/helpers/resolveCompoundTokens.native.js +44 -0
- package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +1 -0
- package/dist/cjs/helpers/resolveRem.cjs +13 -11
- package/dist/cjs/helpers/resolveRem.native.js +31 -22
- package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSafeArea.cjs +12 -10
- package/dist/cjs/helpers/resolveSafeArea.native.js +18 -14
- package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
- package/dist/cjs/helpers/setElementProps.cjs +12 -10
- package/dist/cjs/helpers/setElementProps.native.js +19 -13
- package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
- package/dist/cjs/helpers/skipProps.cjs +16 -14
- package/dist/cjs/helpers/skipProps.native.js +30 -28
- package/dist/cjs/helpers/skipProps.native.js.map +1 -1
- package/dist/cjs/helpers/sortString.cjs +12 -10
- package/dist/cjs/helpers/sortString.native.js +12 -10
- package/dist/cjs/helpers/sortString.native.js.map +1 -1
- package/dist/cjs/helpers/styleOriginalValues.cjs +28 -0
- package/dist/cjs/helpers/styleOriginalValues.native.js +31 -0
- package/dist/cjs/helpers/styleOriginalValues.native.js.map +1 -0
- package/dist/cjs/helpers/subscribeToContextGroup.cjs +83 -55
- package/dist/cjs/helpers/subscribeToContextGroup.native.js +118 -92
- package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/cjs/helpers/themeable.cjs +77 -48
- package/dist/cjs/helpers/themeable.native.js +97 -69
- package/dist/cjs/helpers/themeable.native.js.map +1 -1
- package/dist/cjs/helpers/themes.cjs +27 -19
- package/dist/cjs/helpers/themes.native.js +27 -19
- package/dist/cjs/helpers/themes.native.js.map +1 -1
- package/dist/cjs/helpers/timer.cjs +13 -11
- package/dist/cjs/helpers/timer.native.js +13 -11
- package/dist/cjs/helpers/timer.native.js.map +1 -1
- package/dist/cjs/helpers/transformsToString.cjs +18 -13
- package/dist/cjs/helpers/transformsToString.native.js +18 -13
- package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
- package/dist/cjs/helpers/useRenderElement.cjs +29 -24
- package/dist/cjs/helpers/useRenderElement.native.js +33 -25
- package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
- package/dist/cjs/helpers/webPropsToSkip.cjs +12 -10
- package/dist/cjs/helpers/webPropsToSkip.native.js +60 -58
- package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/cjs/helpers/wrapStyleTags.cjs +16 -15
- package/dist/cjs/helpers/wrapStyleTags.native.js +14 -12
- package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +13 -11
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +14 -12
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
- package/dist/cjs/hooks/getThemeProxied.cjs +45 -27
- package/dist/cjs/hooks/getThemeProxied.native.js +79 -65
- package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.cjs +141 -86
- package/dist/cjs/hooks/useComponentState.native.js +145 -97
- package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
- package/dist/cjs/hooks/useDisableSSR.cjs +12 -10
- package/dist/cjs/hooks/useDisableSSR.native.js +13 -11
- package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
- package/dist/cjs/hooks/useIsTouchDevice.cjs +17 -13
- package/dist/cjs/hooks/useIsTouchDevice.native.js +17 -15
- package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
- package/dist/cjs/hooks/useMedia.cjs +153 -93
- package/dist/cjs/hooks/useMedia.native.js +164 -108
- package/dist/cjs/hooks/useMedia.native.js.map +1 -1
- package/dist/cjs/hooks/useProps.cjs +83 -77
- package/dist/cjs/hooks/useProps.native.js +85 -79
- package/dist/cjs/hooks/useProps.native.js.map +1 -1
- package/dist/cjs/hooks/useTheme.cjs +40 -25
- package/dist/cjs/hooks/useTheme.native.js +40 -28
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeName.cjs +20 -18
- package/dist/cjs/hooks/useThemeName.native.js +24 -22
- package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.cjs +248 -172
- package/dist/cjs/hooks/useThemeState.native.js +315 -248
- package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
- package/dist/cjs/index.cjs +22 -18
- package/dist/cjs/index.native.js +22 -18
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/inject-styles.cjs +27 -22
- package/dist/cjs/inject-styles.native.js +28 -23
- package/dist/cjs/inject-styles.native.js.map +1 -1
- package/dist/cjs/insertFont.cjs +37 -28
- package/dist/cjs/insertFont.native.js +35 -30
- package/dist/cjs/insertFont.native.js.map +1 -1
- package/dist/cjs/interfaces/CSSColorNames.cjs +7 -5
- package/dist/cjs/interfaces/CSSColorNames.native.js +7 -5
- package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
- package/dist/cjs/interfaces/GetRef.cjs +7 -5
- package/dist/cjs/interfaces/GetRef.native.js +7 -5
- package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
- package/dist/cjs/interfaces/RNExclusiveTypes.cjs +7 -5
- package/dist/cjs/interfaces/RNExclusiveTypes.native.js +7 -5
- package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
- package/dist/cjs/interfaces/TamaguiComponentEvents.cjs +7 -5
- package/dist/cjs/interfaces/TamaguiComponentEvents.native.js +7 -5
- package/dist/cjs/interfaces/TamaguiComponentEvents.native.js.map +1 -1
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.cjs +7 -5
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js +7 -5
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js.map +1 -1
- package/dist/cjs/setupHooks.cjs +12 -10
- package/dist/cjs/setupHooks.native.js +12 -10
- package/dist/cjs/setupHooks.native.js.map +1 -1
- package/dist/cjs/setupReactNative.cjs +25 -18
- package/dist/cjs/setupReactNative.native.js +25 -21
- package/dist/cjs/setupReactNative.native.js.map +1 -1
- package/dist/cjs/styled.cjs +121 -77
- package/dist/cjs/styled.native.js +125 -87
- package/dist/cjs/styled.native.js.map +1 -1
- package/dist/cjs/styledHtml.test-d.cjs +58 -27
- package/dist/cjs/styledHtml.test-d.native.js +58 -27
- package/dist/cjs/styledHtml.test-d.native.js.map +1 -1
- package/dist/cjs/styledNonStyleProps.test-d.cjs +63 -0
- package/dist/cjs/styledNonStyleProps.test-d.native.js +66 -0
- package/dist/cjs/styledNonStyleProps.test-d.native.js.map +1 -0
- package/dist/cjs/type-utils.cjs +7 -5
- package/dist/cjs/type-utils.native.js +7 -5
- package/dist/cjs/type-utils.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/views/Configuration.cjs +28 -26
- package/dist/cjs/views/Configuration.native.js +39 -37
- package/dist/cjs/views/Configuration.native.js.map +1 -1
- package/dist/cjs/views/FontLanguage.cjs +22 -18
- package/dist/cjs/views/FontLanguage.native.js +34 -32
- package/dist/cjs/views/FontLanguage.native.js.map +1 -1
- package/dist/cjs/views/Slot.cjs +55 -37
- package/dist/cjs/views/Slot.native.js +57 -41
- package/dist/cjs/views/Slot.native.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.cjs +65 -53
- package/dist/cjs/views/TamaguiProvider.native.js +69 -55
- package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
- package/dist/cjs/views/TamaguiRoot.cjs +60 -42
- package/dist/cjs/views/TamaguiRoot.native.js +12 -10
- package/dist/cjs/views/TamaguiRoot.native.js.map +1 -1
- package/dist/cjs/views/Text.cjs +44 -48
- package/dist/cjs/views/Text.native.js +32 -32
- package/dist/cjs/views/Text.native.js.map +1 -1
- package/dist/cjs/views/Theme.cjs +139 -101
- package/dist/cjs/views/Theme.native.js +148 -113
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/cjs/views/ThemeDebug.cjs +39 -18
- package/dist/cjs/views/ThemeDebug.native.js +13 -11
- package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
- package/dist/cjs/views/ThemeProvider.cjs +25 -20
- package/dist/cjs/views/ThemeProvider.native.js +30 -28
- package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
- package/dist/cjs/views/View.cjs +15 -15
- package/dist/cjs/views/View.native.js +18 -18
- package/dist/cjs/views/View.native.js.map +1 -1
- package/dist/esm/Tamagui.mjs +29 -27
- package/dist/esm/Tamagui.mjs.map +1 -1
- package/dist/esm/Tamagui.native.js +67 -53
- package/dist/esm/Tamagui.native.js.map +1 -1
- package/dist/esm/_withStableStyle.mjs +29 -10
- package/dist/esm/_withStableStyle.mjs.map +1 -1
- package/dist/esm/_withStableStyle.native.js +32 -16
- package/dist/esm/_withStableStyle.native.js.map +1 -1
- package/dist/esm/animationDriverTypes.test-d.mjs +39 -11
- package/dist/esm/animationDriverTypes.test-d.mjs.map +1 -1
- package/dist/esm/animationDriverTypes.test-d.native.js +39 -11
- package/dist/esm/animationDriverTypes.test-d.native.js.map +1 -1
- package/dist/esm/config.mjs +121 -64
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/config.native.js +144 -95
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/constants/accessibilityDirectMap.mjs +5 -5
- package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -1
- package/dist/esm/constants/accessibilityDirectMap.native.js +5 -5
- package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -1
- package/dist/esm/constants/constants.mjs +5 -17
- package/dist/esm/constants/constants.mjs.map +1 -1
- package/dist/esm/constants/constants.native.js +6 -17
- package/dist/esm/constants/constants.native.js.map +1 -1
- package/dist/esm/constants/isDevTools.mjs +6 -4
- package/dist/esm/constants/isDevTools.mjs.map +1 -1
- package/dist/esm/constants/isDevTools.native.js +6 -4
- package/dist/esm/constants/isDevTools.native.js.map +1 -1
- package/dist/esm/contexts/ComponentContext.mjs +10 -8
- package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
- package/dist/esm/contexts/ComponentContext.native.js +10 -10
- package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
- package/dist/esm/createComponent.mjs +861 -586
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js +864 -645
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createFont.mjs +21 -17
- package/dist/esm/createFont.mjs.map +1 -1
- package/dist/esm/createFont.native.js +23 -22
- package/dist/esm/createFont.native.js.map +1 -1
- package/dist/esm/createTamagui.mjs +94 -77
- package/dist/esm/createTamagui.mjs.map +1 -1
- package/dist/esm/createTamagui.native.js +130 -121
- package/dist/esm/createTamagui.native.js.map +1 -1
- package/dist/esm/createVariable.mjs +42 -18
- package/dist/esm/createVariable.mjs.map +1 -1
- package/dist/esm/createVariable.native.js +52 -29
- package/dist/esm/createVariable.native.js.map +1 -1
- package/dist/esm/createVariables.mjs +40 -36
- package/dist/esm/createVariables.mjs.map +1 -1
- package/dist/esm/createVariables.native.js +42 -38
- package/dist/esm/createVariables.native.js.map +1 -1
- package/dist/esm/defaultComponentState.mjs +17 -17
- package/dist/esm/defaultComponentState.mjs.map +1 -1
- package/dist/esm/defaultComponentState.native.js +17 -17
- package/dist/esm/defaultComponentState.native.js.map +1 -1
- package/dist/esm/eventHandling.mjs +3 -3
- package/dist/esm/eventHandling.mjs.map +1 -1
- package/dist/esm/eventHandling.native.js +170 -66
- package/dist/esm/eventHandling.native.js.map +1 -1
- package/dist/esm/helpers/consoleLog.native.js +2 -2
- package/dist/esm/helpers/consoleLog.native.js.map +1 -1
- package/dist/esm/helpers/createDesignSystem.mjs +67 -30
- package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
- package/dist/esm/helpers/createDesignSystem.native.js +103 -76
- package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/esm/helpers/createMediaStyle.mjs +76 -48
- package/dist/esm/helpers/createMediaStyle.mjs.map +1 -1
- package/dist/esm/helpers/createMediaStyle.native.js +82 -55
- package/dist/esm/helpers/createMediaStyle.native.js.map +1 -1
- package/dist/esm/helpers/createStyledContext.mjs +57 -36
- package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
- package/dist/esm/helpers/createStyledContext.native.js +61 -43
- package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
- package/dist/esm/helpers/defaultAnimationDriver.mjs +17 -18
- package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
- package/dist/esm/helpers/defaultAnimationDriver.native.js +33 -32
- package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
- package/dist/esm/helpers/expandStyle.mjs +42 -29
- package/dist/esm/helpers/expandStyle.mjs.map +1 -1
- package/dist/esm/helpers/expandStyle.native.js +48 -59
- package/dist/esm/helpers/expandStyle.native.js.map +1 -1
- package/dist/esm/helpers/expandStyles.mjs +10 -11
- package/dist/esm/helpers/expandStyles.mjs.map +1 -1
- package/dist/esm/helpers/expandStyles.native.js +13 -9
- package/dist/esm/helpers/expandStyles.native.js.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.mjs +89 -54
- package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.native.js +5 -5
- package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -1
- package/dist/esm/helpers/getDefaultProps.mjs +10 -13
- package/dist/esm/helpers/getDefaultProps.mjs.map +1 -1
- package/dist/esm/helpers/getDefaultProps.native.js +14 -12
- package/dist/esm/helpers/getDefaultProps.native.js.map +1 -1
- package/dist/esm/helpers/getDynamicVal.mjs +20 -17
- package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
- package/dist/esm/helpers/getDynamicVal.native.js +25 -22
- package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.mjs +3 -1
- package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.native.js +5 -3
- package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
- package/dist/esm/helpers/getGroupPropParts.mjs +13 -6
- package/dist/esm/helpers/getGroupPropParts.mjs.map +1 -1
- package/dist/esm/helpers/getGroupPropParts.native.js +14 -7
- package/dist/esm/helpers/getGroupPropParts.native.js.map +1 -1
- package/dist/esm/helpers/getShorthandValue.mjs +4 -1
- package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
- package/dist/esm/helpers/getShorthandValue.native.js +6 -6
- package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +595 -355
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +708 -556
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs +76 -69
- package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
- package/dist/esm/helpers/getTokenForKey.mjs +146 -0
- package/dist/esm/helpers/getTokenForKey.mjs.map +1 -0
- package/dist/esm/helpers/getTokenForKey.native.js +155 -0
- package/dist/esm/helpers/getTokenForKey.native.js.map +1 -0
- package/dist/esm/helpers/getVariantExtras.mjs +46 -32
- package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
- package/dist/esm/helpers/getVariantExtras.native.js +46 -32
- package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs +95 -63
- package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.native.js +38 -251
- package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/esm/helpers/isActivePlatform.mjs +10 -9
- package/dist/esm/helpers/isActivePlatform.mjs.map +1 -1
- package/dist/esm/helpers/isActivePlatform.native.js +10 -9
- package/dist/esm/helpers/isActivePlatform.native.js.map +1 -1
- package/dist/esm/helpers/isActiveTheme.mjs +2 -1
- package/dist/esm/helpers/isActiveTheme.mjs.map +1 -1
- package/dist/esm/helpers/isActiveTheme.native.js +2 -1
- package/dist/esm/helpers/isActiveTheme.native.js.map +1 -1
- package/dist/esm/helpers/isObj.mjs +1 -1
- package/dist/esm/helpers/isObj.mjs.map +1 -1
- package/dist/esm/helpers/isObj.native.js +2 -2
- package/dist/esm/helpers/isTamaguiComponent.mjs +2 -2
- package/dist/esm/helpers/isTamaguiComponent.mjs.map +1 -1
- package/dist/esm/helpers/isTamaguiComponent.native.js +2 -2
- package/dist/esm/helpers/isTamaguiComponent.native.js.map +1 -1
- package/dist/esm/helpers/isTamaguiElement.mjs +3 -1
- package/dist/esm/helpers/isTamaguiElement.mjs.map +1 -1
- package/dist/esm/helpers/isTamaguiElement.native.js.map +1 -1
- package/dist/esm/helpers/log.mjs +8 -9
- package/dist/esm/helpers/log.mjs.map +1 -1
- package/dist/esm/helpers/log.native.js +8 -9
- package/dist/esm/helpers/log.native.js.map +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.mjs +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.native.js +99 -16
- package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/esm/helpers/matchMedia.mjs +3 -3
- package/dist/esm/helpers/matchMedia.mjs.map +1 -1
- package/dist/esm/helpers/matchMedia.native.js +22 -9
- package/dist/esm/helpers/matchMedia.native.js.map +1 -1
- package/dist/esm/helpers/mediaObjectToString.mjs +18 -4
- package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -1
- package/dist/esm/helpers/mediaObjectToString.native.js +16 -4
- package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -1
- package/dist/esm/helpers/mediaState.mjs +9 -7
- package/dist/esm/helpers/mediaState.mjs.map +1 -1
- package/dist/esm/helpers/mediaState.native.js +18 -16
- package/dist/esm/helpers/mediaState.native.js.map +1 -1
- package/dist/esm/helpers/mergeProps.mjs +42 -20
- package/dist/esm/helpers/mergeProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeProps.native.js +43 -20
- package/dist/esm/helpers/mergeProps.native.js.map +1 -1
- package/dist/esm/helpers/mergeRenderElementProps.mjs +2 -1
- package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeRenderElementProps.native.js +2 -1
- package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -1
- package/dist/esm/helpers/mergeSlotStyleProps.mjs +17 -6
- package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeSlotStyleProps.native.js +17 -6
- package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -1
- package/dist/esm/helpers/mergeVariants.mjs +16 -6
- package/dist/esm/helpers/mergeVariants.mjs.map +1 -1
- package/dist/esm/helpers/mergeVariants.native.js +18 -8
- package/dist/esm/helpers/mergeVariants.native.js.map +1 -1
- package/dist/esm/helpers/normalizeColor.mjs +18 -3
- package/dist/esm/helpers/normalizeColor.mjs.map +1 -1
- package/dist/esm/helpers/normalizeColor.native.js +18 -17
- package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
- package/dist/esm/helpers/normalizeShadow.native.js +11 -11
- package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/esm/helpers/normalizeStyle.mjs +31 -5
- package/dist/esm/helpers/normalizeStyle.mjs.map +1 -1
- package/dist/esm/helpers/normalizeStyle.native.js +56 -12
- package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
- package/dist/esm/helpers/normalizeStylePropKeys.native.js +10 -10
- package/dist/esm/helpers/normalizeValueWithProperty.mjs +19 -5
- package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.native.js +20 -6
- package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/esm/helpers/objectIdentityKey.mjs +7 -2
- package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -1
- package/dist/esm/helpers/objectIdentityKey.native.js +10 -5
- package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/esm/helpers/parseBorderShorthand.mjs +3 -1
- package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -1
- package/dist/esm/helpers/parseBorderShorthand.native.js +40 -14
- package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
- package/dist/esm/helpers/parseNativeStyle.mjs +73 -40
- package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -1
- package/dist/esm/helpers/parseNativeStyle.native.js +118 -78
- package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/esm/helpers/parseOutlineShorthand.mjs +3 -1
- package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -1
- package/dist/esm/helpers/parseOutlineShorthand.native.js +34 -14
- package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -1
- package/dist/esm/helpers/platformResolveValue.mjs +13 -0
- package/dist/esm/helpers/platformResolveValue.mjs.map +1 -0
- package/dist/esm/helpers/platformResolveValue.native.js +46 -0
- package/dist/esm/helpers/platformResolveValue.native.js.map +1 -0
- package/dist/esm/helpers/pointerEvents.native.js +110 -77
- package/dist/esm/helpers/pointerEvents.native.js.map +1 -1
- package/dist/esm/helpers/propMapper.mjs +200 -195
- package/dist/esm/helpers/propMapper.mjs.map +1 -1
- package/dist/esm/helpers/propMapper.native.js +277 -312
- package/dist/esm/helpers/propMapper.native.js.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.mjs +21 -9
- package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.native.js +72 -45
- package/dist/esm/helpers/proxyThemeToParents.native.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/proxyThemeVariables.native.js +1 -1
- package/dist/esm/helpers/pseudoDescriptors.mjs +48 -48
- package/dist/esm/helpers/pseudoDescriptors.mjs.map +1 -1
- package/dist/esm/helpers/pseudoDescriptors.native.js +48 -48
- package/dist/esm/helpers/pseudoDescriptors.native.js.map +1 -1
- package/dist/esm/helpers/pseudoTransitions.mjs +57 -0
- package/dist/esm/helpers/pseudoTransitions.mjs.map +1 -0
- package/dist/esm/helpers/pseudoTransitions.native.js +59 -0
- package/dist/esm/helpers/pseudoTransitions.native.js.map +1 -0
- package/dist/esm/helpers/registerCSSVariable.mjs +42 -27
- package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.native.js +46 -33
- package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/esm/helpers/resolveAnimationDriver.mjs +12 -0
- package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -0
- package/dist/esm/helpers/resolveAnimationDriver.native.js +13 -0
- package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -0
- package/dist/esm/helpers/resolveCompoundTokens.mjs +16 -0
- package/dist/esm/helpers/resolveCompoundTokens.mjs.map +1 -0
- package/dist/esm/helpers/resolveCompoundTokens.native.js +16 -0
- package/dist/esm/helpers/resolveCompoundTokens.native.js.map +1 -0
- package/dist/esm/helpers/resolveRem.mjs +1 -1
- package/dist/esm/helpers/resolveRem.mjs.map +1 -1
- package/dist/esm/helpers/resolveRem.native.js +16 -9
- package/dist/esm/helpers/resolveRem.native.js.map +1 -1
- package/dist/esm/helpers/resolveSafeArea.native.js +6 -4
- package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -1
- package/dist/esm/helpers/setElementProps.native.js +7 -3
- package/dist/esm/helpers/setElementProps.native.js.map +1 -1
- package/dist/esm/helpers/skipProps.mjs +3 -3
- package/dist/esm/helpers/skipProps.mjs.map +1 -1
- package/dist/esm/helpers/skipProps.native.js +3 -3
- package/dist/esm/helpers/skipProps.native.js.map +1 -1
- package/dist/esm/helpers/styleOriginalValues.mjs +3 -0
- package/dist/esm/helpers/styleOriginalValues.mjs.map +1 -0
- package/dist/esm/helpers/styleOriginalValues.native.js +3 -0
- package/dist/esm/helpers/styleOriginalValues.native.js.map +1 -0
- package/dist/esm/helpers/subscribeToContextGroup.mjs +68 -42
- package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.native.js +103 -79
- package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/esm/helpers/themeable.mjs +47 -20
- package/dist/esm/helpers/themeable.mjs.map +1 -1
- package/dist/esm/helpers/themeable.native.js +69 -43
- package/dist/esm/helpers/themeable.native.js.map +1 -1
- package/dist/esm/helpers/themes.mjs +15 -9
- package/dist/esm/helpers/themes.mjs.map +1 -1
- package/dist/esm/helpers/themes.native.js +15 -9
- package/dist/esm/helpers/themes.native.js.map +1 -1
- package/dist/esm/helpers/timer.mjs +1 -1
- package/dist/esm/helpers/timer.native.js +1 -1
- package/dist/esm/helpers/transformsToString.mjs +6 -3
- package/dist/esm/helpers/transformsToString.mjs.map +1 -1
- package/dist/esm/helpers/transformsToString.native.js +6 -3
- package/dist/esm/helpers/transformsToString.native.js.map +1 -1
- package/dist/esm/helpers/useRenderElement.mjs +14 -13
- package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
- package/dist/esm/helpers/useRenderElement.native.js +18 -13
- package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
- package/dist/esm/helpers/webPropsToSkip.native.js +46 -46
- package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/esm/helpers/wrapStyleTags.mjs +2 -3
- package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
- package/dist/esm/helpers/wrapStyleTags.native.js +2 -2
- package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +1 -1
- package/dist/esm/hooks/getThemeProxied.mjs +32 -16
- package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
- package/dist/esm/hooks/getThemeProxied.native.js +62 -50
- package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/esm/hooks/useComponentState.mjs +121 -68
- package/dist/esm/hooks/useComponentState.mjs.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +125 -79
- package/dist/esm/hooks/useComponentState.native.js.map +1 -1
- package/dist/esm/hooks/useDisableSSR.native.js +1 -1
- package/dist/esm/hooks/useDisableSSR.native.js.map +1 -1
- package/dist/esm/hooks/useIsTouchDevice.mjs +3 -1
- package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -1
- package/dist/esm/hooks/useIsTouchDevice.native.js +1 -1
- package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -1
- package/dist/esm/hooks/useMedia.mjs +133 -75
- package/dist/esm/hooks/useMedia.mjs.map +1 -1
- package/dist/esm/hooks/useMedia.native.js +144 -90
- package/dist/esm/hooks/useMedia.native.js.map +1 -1
- package/dist/esm/hooks/useProps.mjs +47 -43
- package/dist/esm/hooks/useProps.mjs.map +1 -1
- package/dist/esm/hooks/useProps.native.js +49 -45
- package/dist/esm/hooks/useProps.native.js.map +1 -1
- package/dist/esm/hooks/useTheme.mjs +25 -12
- package/dist/esm/hooks/useTheme.mjs.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +25 -15
- package/dist/esm/hooks/useTheme.native.js.map +1 -1
- package/dist/esm/hooks/useThemeName.mjs +8 -8
- package/dist/esm/hooks/useThemeName.mjs.map +1 -1
- package/dist/esm/hooks/useThemeName.native.js +10 -10
- package/dist/esm/hooks/useThemeName.native.js.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +233 -159
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +298 -233
- package/dist/esm/hooks/useThemeState.native.js.map +1 -1
- package/dist/esm/index.js +67 -106
- package/dist/esm/index.js.map +1 -6
- package/dist/esm/index.mjs +3 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/inject-styles.mjs +15 -12
- package/dist/esm/inject-styles.mjs.map +1 -1
- package/dist/esm/inject-styles.native.js +16 -13
- package/dist/esm/inject-styles.native.js.map +1 -1
- package/dist/esm/insertFont.mjs +19 -13
- package/dist/esm/insertFont.mjs.map +1 -1
- package/dist/esm/insertFont.native.js +18 -16
- package/dist/esm/insertFont.native.js.map +1 -1
- package/dist/esm/setupReactNative.mjs +13 -8
- package/dist/esm/setupReactNative.mjs.map +1 -1
- package/dist/esm/setupReactNative.native.js +13 -11
- package/dist/esm/setupReactNative.native.js.map +1 -1
- package/dist/esm/styled.mjs +106 -64
- package/dist/esm/styled.mjs.map +1 -1
- package/dist/esm/styled.native.js +109 -73
- package/dist/esm/styled.native.js.map +1 -1
- package/dist/esm/styledHtml.test-d.mjs +56 -25
- package/dist/esm/styledHtml.test-d.mjs.map +1 -1
- package/dist/esm/styledHtml.test-d.native.js +56 -25
- package/dist/esm/styledHtml.test-d.native.js.map +1 -1
- package/dist/esm/styledNonStyleProps.test-d.mjs +64 -0
- package/dist/esm/styledNonStyleProps.test-d.mjs.map +1 -0
- package/dist/esm/styledNonStyleProps.test-d.native.js +64 -0
- package/dist/esm/styledNonStyleProps.test-d.native.js.map +1 -0
- package/dist/esm/views/Configuration.native.js +2 -2
- package/dist/esm/views/Configuration.native.js.map +1 -1
- package/dist/esm/views/FontLanguage.mjs +10 -8
- package/dist/esm/views/FontLanguage.mjs.map +1 -1
- package/dist/esm/views/FontLanguage.native.js +7 -7
- package/dist/esm/views/FontLanguage.native.js.map +1 -1
- package/dist/esm/views/Slot.mjs +38 -22
- package/dist/esm/views/Slot.mjs.map +1 -1
- package/dist/esm/views/Slot.native.js +40 -26
- package/dist/esm/views/Slot.native.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.mjs +30 -20
- package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
- package/dist/esm/views/TamaguiProvider.native.js +35 -23
- package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
- package/dist/esm/views/TamaguiRoot.mjs +33 -17
- package/dist/esm/views/TamaguiRoot.mjs.map +1 -1
- package/dist/esm/views/Text.mjs +30 -36
- package/dist/esm/views/Text.mjs.map +1 -1
- package/dist/esm/views/Text.native.js +19 -20
- package/dist/esm/views/Text.native.js.map +1 -1
- package/dist/esm/views/Theme.mjs +108 -72
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +114 -81
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeDebug.mjs +22 -3
- package/dist/esm/views/ThemeDebug.mjs.map +1 -1
- package/dist/esm/views/ThemeDebug.native.js +1 -1
- package/dist/esm/views/ThemeDebug.native.js.map +1 -1
- package/dist/esm/views/ThemeProvider.mjs +7 -4
- package/dist/esm/views/ThemeProvider.mjs.map +1 -1
- package/dist/esm/views/ThemeProvider.native.js +5 -5
- package/dist/esm/views/ThemeProvider.native.js.map +1 -1
- package/dist/esm/views/View.mjs +1 -3
- package/dist/esm/views/View.mjs.map +1 -1
- package/dist/esm/views/View.native.js +1 -3
- package/dist/esm/views/View.native.js.map +1 -1
- package/inject-styles/index.cjs +2 -0
- package/inject-styles/index.js +2 -0
- package/inject-styles.cjs +1 -0
- package/package.json +22 -29
- package/src/_withStableStyle.tsx +54 -19
- package/src/animationDriverTypes.test-d.ts +76 -0
- package/src/config.ts +12 -1
- package/src/constants/constants.ts +0 -17
- package/src/createComponent.tsx +287 -102
- package/src/createTamagui.ts +37 -20
- package/src/createVariable.ts +1 -1
- package/src/eventHandling.native.ts +219 -61
- package/src/eventHandling.ts +6 -2
- package/src/helpers/createDesignSystem.ts +79 -8
- package/src/helpers/createMediaStyle.ts +8 -2
- package/src/helpers/createStyledContext.tsx +27 -18
- package/src/helpers/defaultAnimationDriver.tsx +1 -2
- package/src/helpers/expandStyle.ts +56 -7
- package/src/helpers/getCSSStylesAtomic.ts +5 -10
- package/src/helpers/getDefaultProps.ts +4 -15
- package/src/helpers/getSplitStyles.tsx +302 -84
- package/src/helpers/getThemeCSSRules.ts +4 -7
- package/src/helpers/getTokenForKey.ts +236 -0
- package/src/helpers/getVariantExtras.tsx +5 -4
- package/src/helpers/insertStyleRule.tsx +1 -1
- package/src/helpers/isActivePlatform.ts +33 -4
- package/src/helpers/mainThreadPressEvents.native.ts +122 -25
- package/src/helpers/mainThreadPressEvents.ts +2 -1
- package/src/helpers/normalizeColor.ts +12 -8
- package/src/helpers/normalizeStyle.ts +23 -1
- package/src/helpers/parseNativeStyle.ts +11 -12
- package/src/helpers/platformResolveValue.native.ts +72 -0
- package/src/helpers/platformResolveValue.ts +22 -0
- package/src/helpers/propMapper.ts +79 -262
- package/src/helpers/pseudoTransitions.ts +97 -0
- package/src/helpers/resolveAnimationDriver.ts +23 -0
- package/src/helpers/resolveCompoundTokens.ts +28 -0
- package/src/helpers/skipProps.ts +1 -0
- package/src/helpers/styleOriginalValues.ts +2 -0
- package/src/helpers/themeable.tsx +7 -5
- package/src/helpers/useRenderElement.tsx +7 -0
- package/src/hooks/useComponentState.ts +11 -8
- package/src/hooks/useMedia.tsx +2 -0
- package/src/hooks/useTheme.tsx +4 -0
- package/src/hooks/useThemeState.ts +44 -12
- package/src/index.ts +3 -0
- package/src/styled.tsx +2 -2
- package/src/styledNonStyleProps.test-d.ts +106 -0
- package/src/types.tsx +140 -59
- package/src/views/TamaguiProvider.tsx +32 -21
- package/src/views/TamaguiRoot.tsx +40 -14
- package/src/views/Text.tsx +3 -9
- package/src/views/Theme.tsx +2 -0
- package/src/views/ThemeProvider.tsx +3 -1
- package/src/views/View.tsx +0 -2
- package/tsconfig.json +44 -0
- package/tsconfig.test.json +9 -0
- package/types/_withStableStyle.d.ts +1 -2
- package/types/_withStableStyle.d.ts.map +1 -1
- package/types/config.d.ts +2 -0
- package/types/config.d.ts.map +1 -1
- package/types/constants/constants.d.ts +0 -3
- package/types/constants/constants.d.ts.map +1 -1
- package/types/createComponent.d.ts.map +1 -1
- package/types/createTamagui.d.ts.map +1 -1
- package/types/createVariable.d.ts +1 -1
- package/types/createVariable.d.ts.map +1 -1
- package/types/eventHandling.d.ts +2 -2
- package/types/eventHandling.d.ts.map +1 -1
- package/types/eventHandling.native.d.ts +3 -3
- package/types/eventHandling.native.d.ts.map +1 -1
- package/types/helpers/createDesignSystem.d.ts +5 -2
- package/types/helpers/createDesignSystem.d.ts.map +1 -1
- package/types/helpers/createMediaStyle.d.ts.map +1 -1
- package/types/helpers/createStyledContext.d.ts +1 -1
- package/types/helpers/createStyledContext.d.ts.map +1 -1
- package/types/helpers/defaultAnimationDriver.d.ts.map +1 -1
- package/types/helpers/expandStyle.d.ts +2 -1
- package/types/helpers/expandStyle.d.ts.map +1 -1
- package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
- package/types/helpers/getDefaultProps.d.ts +1 -1
- package/types/helpers/getDefaultProps.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts +4 -4
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
- package/types/helpers/getTokenForKey.d.ts +6 -0
- package/types/helpers/getTokenForKey.d.ts.map +1 -0
- package/types/helpers/getVariantExtras.d.ts.map +1 -1
- package/types/helpers/isActivePlatform.d.ts +14 -0
- package/types/helpers/isActivePlatform.d.ts.map +1 -1
- package/types/helpers/mainThreadPressEvents.d.ts +1 -1
- package/types/helpers/mainThreadPressEvents.d.ts.map +1 -1
- package/types/helpers/mainThreadPressEvents.native.d.ts +5 -6
- package/types/helpers/mainThreadPressEvents.native.d.ts.map +1 -1
- package/types/helpers/normalizeColor.d.ts +1 -1
- package/types/helpers/normalizeColor.d.ts.map +1 -1
- package/types/helpers/normalizeStyle.d.ts.map +1 -1
- package/types/helpers/platformResolveValue.d.ts +6 -0
- package/types/helpers/platformResolveValue.d.ts.map +1 -0
- package/types/helpers/platformResolveValue.native.d.ts +7 -0
- package/types/helpers/platformResolveValue.native.d.ts.map +1 -0
- package/types/helpers/propMapper.d.ts +2 -2
- package/types/helpers/propMapper.d.ts.map +1 -1
- package/types/helpers/pseudoTransitions.d.ts +29 -0
- package/types/helpers/pseudoTransitions.d.ts.map +1 -0
- package/types/helpers/resolveAnimationDriver.d.ts +7 -0
- package/types/helpers/resolveAnimationDriver.d.ts.map +1 -0
- package/types/helpers/resolveCompoundTokens.d.ts +9 -0
- package/types/helpers/resolveCompoundTokens.d.ts.map +1 -0
- package/types/helpers/skipProps.d.ts +1 -0
- package/types/helpers/skipProps.d.ts.map +1 -1
- package/types/helpers/styleOriginalValues.d.ts +2 -0
- package/types/helpers/styleOriginalValues.d.ts.map +1 -0
- package/types/helpers/themeable.d.ts.map +1 -1
- package/types/helpers/useRenderElement.d.ts.map +1 -1
- package/types/helpers/webPropsToSkip.native.d.ts +20 -20
- package/types/hooks/useComponentState.d.ts +2 -1
- package/types/hooks/useComponentState.d.ts.map +1 -1
- package/types/hooks/useMedia.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts.map +1 -1
- package/types/index.d.ts +2 -1
- package/types/index.d.ts.map +1 -1
- package/types/styled.d.ts +2 -2
- package/types/styled.d.ts.map +1 -1
- package/types/types.d.ts +68 -34
- package/types/types.d.ts.map +1 -1
- package/types/views/TamaguiProvider.d.ts +1 -4
- package/types/views/TamaguiProvider.d.ts.map +1 -1
- package/types/views/TamaguiRoot.d.ts +5 -2
- package/types/views/TamaguiRoot.d.ts.map +1 -1
- package/types/views/Text.d.ts.map +1 -1
- package/types/views/Theme.d.ts.map +1 -1
- package/types/views/ThemeProvider.d.ts.map +1 -1
- package/types/views/View.d.ts.map +1 -1
- package/vitest.config.d.ts +3 -0
- package/vitest.config.d.ts.map +1 -0
- package/vitest.config.ts +14 -0
- package/dist/cjs/Tamagui.js +0 -56
- package/dist/cjs/Tamagui.js.map +0 -6
- package/dist/cjs/_withStableStyle.js +0 -33
- package/dist/cjs/_withStableStyle.js.map +0 -6
- package/dist/cjs/animationDriverTypes.test-d.js +0 -51
- package/dist/cjs/animationDriverTypes.test-d.js.map +0 -6
- package/dist/cjs/config.js +0 -109
- package/dist/cjs/config.js.map +0 -6
- package/dist/cjs/constants/accessibilityDirectMap.js +0 -25
- package/dist/cjs/constants/accessibilityDirectMap.js.map +0 -6
- package/dist/cjs/constants/constants.js +0 -43
- package/dist/cjs/constants/constants.js.map +0 -6
- package/dist/cjs/constants/isDevTools.js +0 -28
- package/dist/cjs/constants/isDevTools.js.map +0 -6
- package/dist/cjs/constants/webToNativeProps.cjs +0 -28
- package/dist/cjs/constants/webToNativeProps.js +0 -22
- package/dist/cjs/constants/webToNativeProps.js.map +0 -6
- package/dist/cjs/constants/webToNativeProps.native.js +0 -115
- package/dist/cjs/constants/webToNativeProps.native.js.map +0 -1
- package/dist/cjs/contexts/ComponentContext.js +0 -30
- package/dist/cjs/contexts/ComponentContext.js.map +0 -6
- package/dist/cjs/contexts/GroupContext.js +0 -22
- package/dist/cjs/contexts/GroupContext.js.map +0 -6
- package/dist/cjs/createComponent.js +0 -697
- package/dist/cjs/createComponent.js.map +0 -6
- package/dist/cjs/createFont.js +0 -53
- package/dist/cjs/createFont.js.map +0 -6
- package/dist/cjs/createShorthands.js +0 -23
- package/dist/cjs/createShorthands.js.map +0 -6
- package/dist/cjs/createTamagui.js +0 -190
- package/dist/cjs/createTamagui.js.map +0 -6
- package/dist/cjs/createTheme.cjs +0 -26
- package/dist/cjs/createTheme.js +0 -21
- package/dist/cjs/createTheme.js.map +0 -6
- package/dist/cjs/createTheme.native.js +0 -31
- package/dist/cjs/createTheme.native.js.map +0 -1
- package/dist/cjs/createTokens.js +0 -24
- package/dist/cjs/createTokens.js.map +0 -6
- package/dist/cjs/createVariable.js +0 -89
- package/dist/cjs/createVariable.js.map +0 -6
- package/dist/cjs/createVariables.js +0 -56
- package/dist/cjs/createVariables.js.map +0 -6
- package/dist/cjs/defaultComponentState.js +0 -38
- package/dist/cjs/defaultComponentState.js.map +0 -6
- package/dist/cjs/eventHandling.js +0 -41
- package/dist/cjs/eventHandling.js.map +0 -6
- package/dist/cjs/helpers/createDesignSystem.js +0 -120
- package/dist/cjs/helpers/createDesignSystem.js.map +0 -6
- package/dist/cjs/helpers/createMediaStyle.js +0 -74
- package/dist/cjs/helpers/createMediaStyle.js.map +0 -6
- package/dist/cjs/helpers/createStyledContext.js +0 -52
- package/dist/cjs/helpers/createStyledContext.js.map +0 -6
- package/dist/cjs/helpers/defaultAnimationDriver.js +0 -39
- package/dist/cjs/helpers/defaultAnimationDriver.js.map +0 -6
- package/dist/cjs/helpers/defaultOffset.js +0 -21
- package/dist/cjs/helpers/defaultOffset.js.map +0 -6
- package/dist/cjs/helpers/expandStyle.js +0 -73
- package/dist/cjs/helpers/expandStyle.js.map +0 -6
- package/dist/cjs/helpers/expandStyles.js +0 -34
- package/dist/cjs/helpers/expandStyles.js.map +0 -6
- package/dist/cjs/helpers/getCSSStylesAtomic.js +0 -156
- package/dist/cjs/helpers/getCSSStylesAtomic.js.map +0 -6
- package/dist/cjs/helpers/getDefaultProps.js +0 -31
- package/dist/cjs/helpers/getDefaultProps.js.map +0 -6
- package/dist/cjs/helpers/getDynamicVal.js +0 -62
- package/dist/cjs/helpers/getDynamicVal.js.map +0 -6
- package/dist/cjs/helpers/getExpandedShorthands.js +0 -34
- package/dist/cjs/helpers/getExpandedShorthands.js.map +0 -6
- package/dist/cjs/helpers/getFontLanguage.js +0 -21
- package/dist/cjs/helpers/getFontLanguage.js.map +0 -6
- package/dist/cjs/helpers/getGroupPropParts.js +0 -34
- package/dist/cjs/helpers/getGroupPropParts.js.map +0 -6
- package/dist/cjs/helpers/getShorthandValue.js +0 -23
- package/dist/cjs/helpers/getShorthandValue.js.map +0 -6
- package/dist/cjs/helpers/getSplitStyles.js +0 -630
- package/dist/cjs/helpers/getSplitStyles.js.map +0 -6
- package/dist/cjs/helpers/getThemeCSSRules.js +0 -95
- package/dist/cjs/helpers/getThemeCSSRules.js.map +0 -6
- package/dist/cjs/helpers/getVariantExtras.js +0 -59
- package/dist/cjs/helpers/getVariantExtras.js.map +0 -6
- package/dist/cjs/helpers/insertStyleRule.js +0 -196
- package/dist/cjs/helpers/insertStyleRule.js.map +0 -6
- package/dist/cjs/helpers/isActivePlatform.js +0 -31
- package/dist/cjs/helpers/isActivePlatform.js.map +0 -6
- package/dist/cjs/helpers/isActiveTheme.js +0 -24
- package/dist/cjs/helpers/isActiveTheme.js.map +0 -6
- package/dist/cjs/helpers/isObj.js +0 -21
- package/dist/cjs/helpers/isObj.js.map +0 -6
- package/dist/cjs/helpers/isTamaguiComponent.js +0 -24
- package/dist/cjs/helpers/isTamaguiComponent.js.map +0 -6
- package/dist/cjs/helpers/isTamaguiElement.js +0 -30
- package/dist/cjs/helpers/isTamaguiElement.js.map +0 -6
- package/dist/cjs/helpers/log.js +0 -33
- package/dist/cjs/helpers/log.js.map +0 -6
- package/dist/cjs/helpers/mainThreadPressEvents.js +0 -22
- package/dist/cjs/helpers/mainThreadPressEvents.js.map +0 -6
- package/dist/cjs/helpers/matchMedia.js +0 -34
- package/dist/cjs/helpers/matchMedia.js.map +0 -6
- package/dist/cjs/helpers/mediaObjectToString.js +0 -32
- package/dist/cjs/helpers/mediaObjectToString.js.map +0 -6
- package/dist/cjs/helpers/mediaState.js +0 -41
- package/dist/cjs/helpers/mediaState.js.map +0 -6
- package/dist/cjs/helpers/mergeProps.js +0 -55
- package/dist/cjs/helpers/mergeProps.js.map +0 -6
- package/dist/cjs/helpers/mergeRenderElementProps.js +0 -25
- package/dist/cjs/helpers/mergeRenderElementProps.js.map +0 -6
- package/dist/cjs/helpers/mergeSlotStyleProps.js +0 -29
- package/dist/cjs/helpers/mergeSlotStyleProps.js.map +0 -6
- package/dist/cjs/helpers/mergeVariants.js +0 -38
- package/dist/cjs/helpers/mergeVariants.js.map +0 -6
- package/dist/cjs/helpers/nativeOnlyProps.js +0 -55
- package/dist/cjs/helpers/nativeOnlyProps.js.map +0 -6
- package/dist/cjs/helpers/normalizeColor.js +0 -26
- package/dist/cjs/helpers/normalizeColor.js.map +0 -6
- package/dist/cjs/helpers/normalizeShadow.js +0 -40
- package/dist/cjs/helpers/normalizeShadow.js.map +0 -6
- package/dist/cjs/helpers/normalizeStyle.js +0 -36
- package/dist/cjs/helpers/normalizeStyle.js.map +0 -6
- package/dist/cjs/helpers/normalizeStylePropKeys.js +0 -21
- package/dist/cjs/helpers/normalizeStylePropKeys.js.map +0 -6
- package/dist/cjs/helpers/normalizeValueWithProperty.js +0 -37
- package/dist/cjs/helpers/normalizeValueWithProperty.js.map +0 -6
- package/dist/cjs/helpers/objectIdentityKey.js +0 -38
- package/dist/cjs/helpers/objectIdentityKey.js.map +0 -6
- package/dist/cjs/helpers/parseBorderShorthand.js +0 -22
- package/dist/cjs/helpers/parseBorderShorthand.js.map +0 -6
- package/dist/cjs/helpers/parseNativeStyle.js +0 -116
- package/dist/cjs/helpers/parseNativeStyle.js.map +0 -6
- package/dist/cjs/helpers/parseOutlineShorthand.js +0 -22
- package/dist/cjs/helpers/parseOutlineShorthand.js.map +0 -6
- package/dist/cjs/helpers/pointerEvents.js +0 -22
- package/dist/cjs/helpers/pointerEvents.js.map +0 -6
- package/dist/cjs/helpers/propMapper.js +0 -257
- package/dist/cjs/helpers/propMapper.js.map +0 -6
- package/dist/cjs/helpers/proxyThemeToParents.js +0 -40
- package/dist/cjs/helpers/proxyThemeToParents.js.map +0 -6
- package/dist/cjs/helpers/proxyThemeVariables.js +0 -31
- package/dist/cjs/helpers/proxyThemeVariables.js.map +0 -6
- package/dist/cjs/helpers/pseudoDescriptors.js +0 -72
- package/dist/cjs/helpers/pseudoDescriptors.js.map +0 -6
- package/dist/cjs/helpers/registerCSSVariable.js +0 -47
- package/dist/cjs/helpers/registerCSSVariable.js.map +0 -6
- package/dist/cjs/helpers/resolveRem.js +0 -27
- package/dist/cjs/helpers/resolveRem.js.map +0 -6
- package/dist/cjs/helpers/resolveSafeArea.js +0 -29
- package/dist/cjs/helpers/resolveSafeArea.js.map +0 -6
- package/dist/cjs/helpers/setElementProps.js +0 -24
- package/dist/cjs/helpers/setElementProps.js.map +0 -6
- package/dist/cjs/helpers/skipProps.js +0 -38
- package/dist/cjs/helpers/skipProps.js.map +0 -6
- package/dist/cjs/helpers/sortString.js +0 -21
- package/dist/cjs/helpers/sortString.js.map +0 -6
- package/dist/cjs/helpers/subscribeToContextGroup.js +0 -74
- package/dist/cjs/helpers/subscribeToContextGroup.js.map +0 -6
- package/dist/cjs/helpers/themeable.js +0 -56
- package/dist/cjs/helpers/themeable.js.map +0 -6
- package/dist/cjs/helpers/themes.js +0 -33
- package/dist/cjs/helpers/themes.js.map +0 -6
- package/dist/cjs/helpers/timer.js +0 -27
- package/dist/cjs/helpers/timer.js.map +0 -6
- package/dist/cjs/helpers/transformsToString.js +0 -33
- package/dist/cjs/helpers/transformsToString.js.map +0 -6
- package/dist/cjs/helpers/useRenderElement.js +0 -42
- package/dist/cjs/helpers/useRenderElement.js.map +0 -6
- package/dist/cjs/helpers/webPropsToSkip.js +0 -21
- package/dist/cjs/helpers/webPropsToSkip.js.map +0 -6
- package/dist/cjs/helpers/wrapStyleTags.js +0 -38
- package/dist/cjs/helpers/wrapStyleTags.js.map +0 -6
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.js +0 -23
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.js.map +0 -6
- package/dist/cjs/hooks/getThemeProxied.js +0 -56
- package/dist/cjs/hooks/getThemeProxied.js.map +0 -6
- package/dist/cjs/hooks/useComponentState.js +0 -96
- package/dist/cjs/hooks/useComponentState.js.map +0 -6
- package/dist/cjs/hooks/useDisableSSR.js +0 -24
- package/dist/cjs/hooks/useDisableSSR.js.map +0 -6
- package/dist/cjs/hooks/useIsTouchDevice.js +0 -22
- package/dist/cjs/hooks/useIsTouchDevice.js.map +0 -6
- package/dist/cjs/hooks/useMedia.js +0 -153
- package/dist/cjs/hooks/useMedia.js.map +0 -6
- package/dist/cjs/hooks/useProps.js +0 -106
- package/dist/cjs/hooks/useProps.js.map +0 -6
- package/dist/cjs/hooks/useTheme.js +0 -35
- package/dist/cjs/hooks/useTheme.js.map +0 -6
- package/dist/cjs/hooks/useThemeName.js +0 -25
- package/dist/cjs/hooks/useThemeName.js.map +0 -6
- package/dist/cjs/hooks/useThemeState.js +0 -226
- package/dist/cjs/hooks/useThemeState.js.map +0 -6
- package/dist/cjs/index.js +0 -109
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/inject-styles.js +0 -28
- package/dist/cjs/inject-styles.js.map +0 -6
- package/dist/cjs/insertFont.js +0 -68
- package/dist/cjs/insertFont.js.map +0 -6
- package/dist/cjs/interfaces/CSSColorNames.js +0 -14
- package/dist/cjs/interfaces/CSSColorNames.js.map +0 -6
- package/dist/cjs/interfaces/GetRef.js +0 -14
- package/dist/cjs/interfaces/GetRef.js.map +0 -6
- package/dist/cjs/interfaces/RNExclusiveTypes.js +0 -14
- package/dist/cjs/interfaces/RNExclusiveTypes.js.map +0 -6
- package/dist/cjs/interfaces/TamaguiComponentEvents.js +0 -14
- package/dist/cjs/interfaces/TamaguiComponentEvents.js.map +0 -6
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.js +0 -14
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.js.map +0 -6
- package/dist/cjs/setupHooks.js +0 -25
- package/dist/cjs/setupHooks.js.map +0 -6
- package/dist/cjs/setupReactNative.js +0 -43
- package/dist/cjs/setupReactNative.js.map +0 -6
- package/dist/cjs/styled.js +0 -116
- package/dist/cjs/styled.js.map +0 -6
- package/dist/cjs/styledHtml.test-d.js +0 -136
- package/dist/cjs/styledHtml.test-d.js.map +0 -6
- package/dist/cjs/type-utils.js +0 -14
- package/dist/cjs/type-utils.js.map +0 -6
- package/dist/cjs/types.js +0 -14
- package/dist/cjs/types.js.map +0 -6
- package/dist/cjs/views/Configuration.js +0 -33
- package/dist/cjs/views/Configuration.js.map +0 -6
- package/dist/cjs/views/FontLanguage.js +0 -32
- package/dist/cjs/views/FontLanguage.js.map +0 -6
- package/dist/cjs/views/Slot.js +0 -55
- package/dist/cjs/views/Slot.js.map +0 -6
- package/dist/cjs/views/Stack.cjs +0 -34
- package/dist/cjs/views/Stack.js +0 -27
- package/dist/cjs/views/Stack.js.map +0 -6
- package/dist/cjs/views/Stack.native.js +0 -37
- package/dist/cjs/views/Stack.native.js.map +0 -1
- package/dist/cjs/views/TamaguiProvider.js +0 -73
- package/dist/cjs/views/TamaguiProvider.js.map +0 -6
- package/dist/cjs/views/TamaguiRoot.js +0 -40
- package/dist/cjs/views/TamaguiRoot.js.map +0 -6
- package/dist/cjs/views/Text.js +0 -59
- package/dist/cjs/views/Text.js.map +0 -6
- package/dist/cjs/views/Theme.js +0 -124
- package/dist/cjs/views/Theme.js.map +0 -6
- package/dist/cjs/views/ThemeDebug.js +0 -81
- package/dist/cjs/views/ThemeDebug.js.map +0 -6
- package/dist/cjs/views/ThemeProvider.js +0 -42
- package/dist/cjs/views/ThemeProvider.js.map +0 -6
- package/dist/cjs/views/View.js +0 -26
- package/dist/cjs/views/View.js.map +0 -6
- package/dist/esm/Tamagui.js +0 -35
- package/dist/esm/Tamagui.js.map +0 -6
- package/dist/esm/_withStableStyle.js +0 -12
- package/dist/esm/_withStableStyle.js.map +0 -6
- package/dist/esm/animationDriverTypes.test-d.js +0 -51
- package/dist/esm/animationDriverTypes.test-d.js.map +0 -6
- package/dist/esm/config.js +0 -94
- package/dist/esm/config.js.map +0 -6
- package/dist/esm/constants/accessibilityDirectMap.js +0 -9
- package/dist/esm/constants/accessibilityDirectMap.js.map +0 -6
- package/dist/esm/constants/constants.js +0 -27
- package/dist/esm/constants/constants.js.map +0 -6
- package/dist/esm/constants/isDevTools.js +0 -12
- package/dist/esm/constants/isDevTools.js.map +0 -6
- package/dist/esm/constants/webToNativeProps.js +0 -6
- package/dist/esm/constants/webToNativeProps.js.map +0 -6
- package/dist/esm/constants/webToNativeProps.mjs +0 -4
- package/dist/esm/constants/webToNativeProps.mjs.map +0 -1
- package/dist/esm/constants/webToNativeProps.native.js +0 -88
- package/dist/esm/constants/webToNativeProps.native.js.map +0 -1
- package/dist/esm/contexts/ComponentContext.js +0 -15
- package/dist/esm/contexts/ComponentContext.js.map +0 -6
- package/dist/esm/contexts/GroupContext.js +0 -6
- package/dist/esm/contexts/GroupContext.js.map +0 -6
- package/dist/esm/createComponent.js +0 -702
- package/dist/esm/createComponent.js.map +0 -6
- package/dist/esm/createFont.js +0 -37
- package/dist/esm/createFont.js.map +0 -6
- package/dist/esm/createShorthands.js +0 -7
- package/dist/esm/createShorthands.js.map +0 -6
- package/dist/esm/createTamagui.js +0 -189
- package/dist/esm/createTamagui.js.map +0 -6
- package/dist/esm/createTheme.js +0 -5
- package/dist/esm/createTheme.js.map +0 -6
- package/dist/esm/createTheme.mjs +0 -3
- package/dist/esm/createTheme.mjs.map +0 -1
- package/dist/esm/createTheme.native.js +0 -5
- package/dist/esm/createTheme.native.js.map +0 -1
- package/dist/esm/createTokens.js +0 -8
- package/dist/esm/createTokens.js.map +0 -6
- package/dist/esm/createVariable.js +0 -75
- package/dist/esm/createVariable.js.map +0 -6
- package/dist/esm/createVariables.js +0 -42
- package/dist/esm/createVariables.js.map +0 -6
- package/dist/esm/defaultComponentState.js +0 -22
- package/dist/esm/defaultComponentState.js.map +0 -6
- package/dist/esm/eventHandling.js +0 -25
- package/dist/esm/eventHandling.js.map +0 -6
- package/dist/esm/helpers/createDesignSystem.js +0 -107
- package/dist/esm/helpers/createDesignSystem.js.map +0 -6
- package/dist/esm/helpers/createMediaStyle.js +0 -60
- package/dist/esm/helpers/createMediaStyle.js.map +0 -6
- package/dist/esm/helpers/createStyledContext.js +0 -31
- package/dist/esm/helpers/createStyledContext.js.map +0 -6
- package/dist/esm/helpers/defaultAnimationDriver.js +0 -23
- package/dist/esm/helpers/defaultAnimationDriver.js.map +0 -6
- package/dist/esm/helpers/defaultOffset.js +0 -5
- package/dist/esm/helpers/defaultOffset.js.map +0 -6
- package/dist/esm/helpers/expandStyle.js +0 -60
- package/dist/esm/helpers/expandStyle.js.map +0 -6
- package/dist/esm/helpers/expandStyles.js +0 -19
- package/dist/esm/helpers/expandStyles.js.map +0 -6
- package/dist/esm/helpers/getCSSStylesAtomic.js +0 -147
- package/dist/esm/helpers/getCSSStylesAtomic.js.map +0 -6
- package/dist/esm/helpers/getDefaultProps.js +0 -15
- package/dist/esm/helpers/getDefaultProps.js.map +0 -6
- package/dist/esm/helpers/getDynamicVal.js +0 -46
- package/dist/esm/helpers/getDynamicVal.js.map +0 -6
- package/dist/esm/helpers/getExpandedShorthands.js +0 -18
- package/dist/esm/helpers/getExpandedShorthands.js.map +0 -6
- package/dist/esm/helpers/getFontLanguage.js +0 -5
- package/dist/esm/helpers/getFontLanguage.js.map +0 -6
- package/dist/esm/helpers/getGroupPropParts.js +0 -19
- package/dist/esm/helpers/getGroupPropParts.js.map +0 -6
- package/dist/esm/helpers/getShorthandValue.js +0 -7
- package/dist/esm/helpers/getShorthandValue.js.map +0 -6
- package/dist/esm/helpers/getSplitStyles.js +0 -649
- package/dist/esm/helpers/getSplitStyles.js.map +0 -6
- package/dist/esm/helpers/getThemeCSSRules.js +0 -84
- package/dist/esm/helpers/getThemeCSSRules.js.map +0 -6
- package/dist/esm/helpers/getVariantExtras.js +0 -44
- package/dist/esm/helpers/getVariantExtras.js.map +0 -6
- package/dist/esm/helpers/insertStyleRule.js +0 -181
- package/dist/esm/helpers/insertStyleRule.js.map +0 -6
- package/dist/esm/helpers/isActivePlatform.js +0 -15
- package/dist/esm/helpers/isActivePlatform.js.map +0 -6
- package/dist/esm/helpers/isActiveTheme.js +0 -8
- package/dist/esm/helpers/isActiveTheme.js.map +0 -6
- package/dist/esm/helpers/isObj.js +0 -5
- package/dist/esm/helpers/isObj.js.map +0 -6
- package/dist/esm/helpers/isTamaguiComponent.js +0 -8
- package/dist/esm/helpers/isTamaguiComponent.js.map +0 -6
- package/dist/esm/helpers/isTamaguiElement.js +0 -7
- package/dist/esm/helpers/isTamaguiElement.js.map +0 -6
- package/dist/esm/helpers/log.js +0 -17
- package/dist/esm/helpers/log.js.map +0 -6
- package/dist/esm/helpers/mainThreadPressEvents.js +0 -6
- package/dist/esm/helpers/mainThreadPressEvents.js.map +0 -6
- package/dist/esm/helpers/matchMedia.js +0 -18
- package/dist/esm/helpers/matchMedia.js.map +0 -6
- package/dist/esm/helpers/mediaObjectToString.js +0 -16
- package/dist/esm/helpers/mediaObjectToString.js.map +0 -6
- package/dist/esm/helpers/mediaState.js +0 -25
- package/dist/esm/helpers/mediaState.js.map +0 -6
- package/dist/esm/helpers/mergeProps.js +0 -39
- package/dist/esm/helpers/mergeProps.js.map +0 -6
- package/dist/esm/helpers/mergeRenderElementProps.js +0 -9
- package/dist/esm/helpers/mergeRenderElementProps.js.map +0 -6
- package/dist/esm/helpers/mergeSlotStyleProps.js +0 -14
- package/dist/esm/helpers/mergeSlotStyleProps.js.map +0 -6
- package/dist/esm/helpers/mergeVariants.js +0 -22
- package/dist/esm/helpers/mergeVariants.js.map +0 -6
- package/dist/esm/helpers/nativeOnlyProps.js +0 -39
- package/dist/esm/helpers/nativeOnlyProps.js.map +0 -6
- package/dist/esm/helpers/normalizeColor.js +0 -10
- package/dist/esm/helpers/normalizeColor.js.map +0 -6
- package/dist/esm/helpers/normalizeShadow.js +0 -24
- package/dist/esm/helpers/normalizeShadow.js.map +0 -6
- package/dist/esm/helpers/normalizeStyle.js +0 -24
- package/dist/esm/helpers/normalizeStyle.js.map +0 -6
- package/dist/esm/helpers/normalizeStylePropKeys.js +0 -5
- package/dist/esm/helpers/normalizeStylePropKeys.js.map +0 -6
- package/dist/esm/helpers/normalizeValueWithProperty.js +0 -22
- package/dist/esm/helpers/normalizeValueWithProperty.js.map +0 -6
- package/dist/esm/helpers/objectIdentityKey.js +0 -22
- package/dist/esm/helpers/objectIdentityKey.js.map +0 -6
- package/dist/esm/helpers/parseBorderShorthand.js +0 -6
- package/dist/esm/helpers/parseBorderShorthand.js.map +0 -6
- package/dist/esm/helpers/parseNativeStyle.js +0 -100
- package/dist/esm/helpers/parseNativeStyle.js.map +0 -6
- package/dist/esm/helpers/parseOutlineShorthand.js +0 -6
- package/dist/esm/helpers/parseOutlineShorthand.js.map +0 -6
- package/dist/esm/helpers/pointerEvents.js +0 -6
- package/dist/esm/helpers/pointerEvents.js.map +0 -6
- package/dist/esm/helpers/propMapper.js +0 -252
- package/dist/esm/helpers/propMapper.js.map +0 -6
- package/dist/esm/helpers/proxyThemeToParents.js +0 -24
- package/dist/esm/helpers/proxyThemeToParents.js.map +0 -6
- package/dist/esm/helpers/proxyThemeVariables.js +0 -15
- package/dist/esm/helpers/proxyThemeVariables.js.map +0 -6
- package/dist/esm/helpers/pseudoDescriptors.js +0 -56
- package/dist/esm/helpers/pseudoDescriptors.js.map +0 -6
- package/dist/esm/helpers/registerCSSVariable.js +0 -31
- package/dist/esm/helpers/registerCSSVariable.js.map +0 -6
- package/dist/esm/helpers/resolveRem.js +0 -11
- package/dist/esm/helpers/resolveRem.js.map +0 -6
- package/dist/esm/helpers/resolveSafeArea.js +0 -13
- package/dist/esm/helpers/resolveSafeArea.js.map +0 -6
- package/dist/esm/helpers/setElementProps.js +0 -8
- package/dist/esm/helpers/setElementProps.js.map +0 -6
- package/dist/esm/helpers/skipProps.js +0 -23
- package/dist/esm/helpers/skipProps.js.map +0 -6
- package/dist/esm/helpers/sortString.js +0 -5
- package/dist/esm/helpers/sortString.js.map +0 -6
- package/dist/esm/helpers/subscribeToContextGroup.js +0 -59
- package/dist/esm/helpers/subscribeToContextGroup.js.map +0 -6
- package/dist/esm/helpers/themeable.js +0 -35
- package/dist/esm/helpers/themeable.js.map +0 -6
- package/dist/esm/helpers/themes.js +0 -17
- package/dist/esm/helpers/themes.js.map +0 -6
- package/dist/esm/helpers/timer.js +0 -11
- package/dist/esm/helpers/timer.js.map +0 -6
- package/dist/esm/helpers/transformsToString.js +0 -17
- package/dist/esm/helpers/transformsToString.js.map +0 -6
- package/dist/esm/helpers/useRenderElement.js +0 -28
- package/dist/esm/helpers/useRenderElement.js.map +0 -6
- package/dist/esm/helpers/webPropsToSkip.js +0 -5
- package/dist/esm/helpers/webPropsToSkip.js.map +0 -6
- package/dist/esm/helpers/wrapStyleTags.js +0 -23
- package/dist/esm/helpers/wrapStyleTags.js.map +0 -6
- package/dist/esm/hooks/doesRootSchemeMatchSystem.js +0 -7
- package/dist/esm/hooks/doesRootSchemeMatchSystem.js.map +0 -6
- package/dist/esm/hooks/getThemeProxied.js +0 -44
- package/dist/esm/hooks/getThemeProxied.js.map +0 -6
- package/dist/esm/hooks/useComponentState.js +0 -91
- package/dist/esm/hooks/useComponentState.js.map +0 -6
- package/dist/esm/hooks/useDisableSSR.js +0 -8
- package/dist/esm/hooks/useDisableSSR.js.map +0 -6
- package/dist/esm/hooks/useIsTouchDevice.js +0 -7
- package/dist/esm/hooks/useIsTouchDevice.js.map +0 -6
- package/dist/esm/hooks/useMedia.js +0 -149
- package/dist/esm/hooks/useMedia.js.map +0 -6
- package/dist/esm/hooks/useProps.js +0 -93
- package/dist/esm/hooks/useProps.js.map +0 -6
- package/dist/esm/hooks/useTheme.js +0 -21
- package/dist/esm/hooks/useTheme.js.map +0 -6
- package/dist/esm/hooks/useThemeName.js +0 -9
- package/dist/esm/hooks/useThemeName.js.map +0 -6
- package/dist/esm/hooks/useThemeState.js +0 -220
- package/dist/esm/hooks/useThemeState.js.map +0 -6
- package/dist/esm/inject-styles.js +0 -12
- package/dist/esm/inject-styles.js.map +0 -6
- package/dist/esm/insertFont.js +0 -56
- package/dist/esm/insertFont.js.map +0 -6
- package/dist/esm/interfaces/CSSColorNames.js +0 -1
- package/dist/esm/interfaces/CSSColorNames.js.map +0 -6
- package/dist/esm/interfaces/GetRef.js +0 -1
- package/dist/esm/interfaces/GetRef.js.map +0 -6
- package/dist/esm/interfaces/RNExclusiveTypes.js +0 -1
- package/dist/esm/interfaces/RNExclusiveTypes.js.map +0 -6
- package/dist/esm/interfaces/TamaguiComponentEvents.js +0 -1
- package/dist/esm/interfaces/TamaguiComponentEvents.js.map +0 -6
- package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.js +0 -1
- package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.js.map +0 -6
- package/dist/esm/setupHooks.js +0 -9
- package/dist/esm/setupHooks.js.map +0 -6
- package/dist/esm/setupReactNative.js +0 -27
- package/dist/esm/setupReactNative.js.map +0 -6
- package/dist/esm/styled.js +0 -102
- package/dist/esm/styled.js.map +0 -6
- package/dist/esm/styledHtml.test-d.js +0 -137
- package/dist/esm/styledHtml.test-d.js.map +0 -6
- package/dist/esm/type-utils.js +0 -1
- package/dist/esm/type-utils.js.map +0 -6
- package/dist/esm/types.js +0 -1
- package/dist/esm/types.js.map +0 -6
- package/dist/esm/views/Configuration.js +0 -12
- package/dist/esm/views/Configuration.js.map +0 -6
- package/dist/esm/views/FontLanguage.js +0 -16
- package/dist/esm/views/FontLanguage.js.map +0 -6
- package/dist/esm/views/Slot.js +0 -43
- package/dist/esm/views/Slot.js.map +0 -6
- package/dist/esm/views/Stack.js +0 -13
- package/dist/esm/views/Stack.js.map +0 -6
- package/dist/esm/views/Stack.mjs +0 -11
- package/dist/esm/views/Stack.mjs.map +0 -1
- package/dist/esm/views/Stack.native.js +0 -11
- package/dist/esm/views/Stack.native.js.map +0 -1
- package/dist/esm/views/TamaguiProvider.js +0 -58
- package/dist/esm/views/TamaguiProvider.js.map +0 -6
- package/dist/esm/views/TamaguiRoot.js +0 -18
- package/dist/esm/views/TamaguiRoot.js.map +0 -6
- package/dist/esm/views/Text.js +0 -44
- package/dist/esm/views/Text.js.map +0 -6
- package/dist/esm/views/Theme.js +0 -110
- package/dist/esm/views/Theme.js.map +0 -6
- package/dist/esm/views/ThemeDebug.js +0 -69
- package/dist/esm/views/ThemeDebug.js.map +0 -6
- package/dist/esm/views/ThemeProvider.js +0 -31
- package/dist/esm/views/ThemeProvider.js.map +0 -6
- package/dist/esm/views/View.js +0 -12
- package/dist/esm/views/View.js.map +0 -6
- package/types/constants/webToNativeProps.d.ts.map +0 -1
- package/types/constants/webToNativeProps.native.d.ts.map +0 -1
- package/types/createTheme.d.ts.map +0 -1
- package/types/helpers/expandStyle.native.d.ts.map +0 -1
- package/types/helpers/propMapper.native.d.ts.map +0 -1
- package/types/views/Stack.d.ts.map +0 -1
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { GetStyleState, SplitStyleProps } from '../types'
|
|
2
|
+
import { getTokenForKey } from './getTokenForKey'
|
|
3
|
+
import { parseNativeStyle } from './parseNativeStyle'
|
|
4
|
+
|
|
5
|
+
const tokenPattern = /(\$[\w.-]+)/g
|
|
6
|
+
|
|
7
|
+
// keys that need native object parsing (DynamicColorIOS support)
|
|
8
|
+
const nativeParseKeys: Record<string, boolean> = {
|
|
9
|
+
backgroundImage: true,
|
|
10
|
+
boxShadow: true,
|
|
11
|
+
textShadow: true,
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
function replaceTokens(
|
|
15
|
+
value: string,
|
|
16
|
+
styleProps: SplitStyleProps,
|
|
17
|
+
styleState: Partial<GetStyleState>
|
|
18
|
+
): string {
|
|
19
|
+
return value.replace(tokenPattern, (t) => {
|
|
20
|
+
let r = getTokenForKey('size', t, styleProps, styleState)
|
|
21
|
+
if (r == null) {
|
|
22
|
+
r = getTokenForKey('color', t, styleProps, styleState)
|
|
23
|
+
}
|
|
24
|
+
return r != null ? String(r) : t
|
|
25
|
+
})
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* native: resolves embedded $tokens, with DynamicColorIOS placeholder
|
|
30
|
+
* support for boxShadow/textShadow/backgroundImage.
|
|
31
|
+
*/
|
|
32
|
+
export function platformResolveValue(
|
|
33
|
+
key: string,
|
|
34
|
+
value: string,
|
|
35
|
+
styleProps: SplitStyleProps,
|
|
36
|
+
styleState: Partial<GetStyleState>
|
|
37
|
+
): any {
|
|
38
|
+
if (!nativeParseKeys[key]) {
|
|
39
|
+
return replaceTokens(value, styleProps, styleState)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// for backgroundImage (gradients), force 'web' resolution to avoid DynamicColorIOS
|
|
43
|
+
// gradients don't support dynamic color updates - RN resolves colors once at render time
|
|
44
|
+
// so we need plain values and must let the component re-render on scheme changes
|
|
45
|
+
const effectiveStyleProps =
|
|
46
|
+
key === 'backgroundImage'
|
|
47
|
+
? { ...styleProps, resolveValues: 'web' as const }
|
|
48
|
+
: styleProps
|
|
49
|
+
|
|
50
|
+
// preserve DynamicColorIOS objects through parsing (for boxShadow/textShadow)
|
|
51
|
+
const tokenMap = new Map<string, any>()
|
|
52
|
+
let placeholderIdx = 0
|
|
53
|
+
const withPlaceholders = value.replace(tokenPattern, (t) => {
|
|
54
|
+
let r = getTokenForKey('size', t, effectiveStyleProps, styleState)
|
|
55
|
+
if (r == null) {
|
|
56
|
+
r = getTokenForKey('color', t, effectiveStyleProps, styleState)
|
|
57
|
+
}
|
|
58
|
+
if (r == null) return t
|
|
59
|
+
if (typeof r !== 'string' && typeof r !== 'number') {
|
|
60
|
+
const placeholder = `__tk${placeholderIdx++}__`
|
|
61
|
+
tokenMap.set(placeholder, r)
|
|
62
|
+
return placeholder
|
|
63
|
+
}
|
|
64
|
+
return String(r)
|
|
65
|
+
})
|
|
66
|
+
|
|
67
|
+
const parsed = parseNativeStyle(key, withPlaceholders, tokenMap)
|
|
68
|
+
if (parsed) return parsed
|
|
69
|
+
|
|
70
|
+
// fallback to plain string resolution
|
|
71
|
+
return replaceTokens(value, styleProps, styleState)
|
|
72
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { GetStyleState, SplitStyleProps } from '../types'
|
|
2
|
+
import { getTokenForKey } from './getTokenForKey'
|
|
3
|
+
|
|
4
|
+
const tokenPattern = /(\$[\w.-]+)/g
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* web: resolves embedded $tokens in compound CSS strings via simple regex replacement.
|
|
8
|
+
*/
|
|
9
|
+
export function platformResolveValue(
|
|
10
|
+
_key: string,
|
|
11
|
+
value: string,
|
|
12
|
+
styleProps: SplitStyleProps,
|
|
13
|
+
styleState: Partial<GetStyleState>
|
|
14
|
+
): string {
|
|
15
|
+
return value.replace(tokenPattern, (t) => {
|
|
16
|
+
let r = getTokenForKey('size', t, styleProps, styleState)
|
|
17
|
+
if (r == null) {
|
|
18
|
+
r = getTokenForKey('color', t, styleProps, styleState)
|
|
19
|
+
}
|
|
20
|
+
return r != null ? String(r) : t
|
|
21
|
+
})
|
|
22
|
+
}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { isAndroid } from '@tamagui/constants'
|
|
2
|
-
import { tokenCategories } from '@tamagui/helpers'
|
|
3
|
-
import { getConfig } from '../config'
|
|
4
2
|
import { getVariableValue, isVariable } from '../createVariable'
|
|
5
3
|
import type {
|
|
6
4
|
GetStyleState,
|
|
7
5
|
PropMapper,
|
|
8
|
-
ResolveVariableAs,
|
|
9
6
|
SplitStyleProps,
|
|
10
7
|
StyleResolver,
|
|
11
8
|
TamaguiInternalConfig,
|
|
@@ -13,21 +10,30 @@ import type {
|
|
|
13
10
|
VariantSpreadFunction,
|
|
14
11
|
} from '../types'
|
|
15
12
|
import { expandStyle } from './expandStyle'
|
|
13
|
+
import {
|
|
14
|
+
getLastFontFamilyToken,
|
|
15
|
+
getTokenForKey,
|
|
16
|
+
resolveVariableValue,
|
|
17
|
+
setLastFontFamilyToken,
|
|
18
|
+
} from './getTokenForKey'
|
|
16
19
|
import { getFontsForLanguage, getVariantExtras } from './getVariantExtras'
|
|
17
20
|
import { isObj } from './isObj'
|
|
18
21
|
import { normalizeStyle } from './normalizeStyle'
|
|
19
22
|
import { parseNativeStyle } from './parseNativeStyle'
|
|
20
23
|
import { pseudoDescriptors } from './pseudoDescriptors'
|
|
24
|
+
import { resolveCompoundTokens } from './resolveCompoundTokens'
|
|
21
25
|
import { isRemValue, resolveRem } from './resolveRem'
|
|
22
|
-
// import { resolveSafeAreaValue } from './resolveSafeArea'
|
|
23
26
|
import { skipProps } from './skipProps'
|
|
27
|
+
import { styleOriginalValues } from './styleOriginalValues'
|
|
28
|
+
|
|
29
|
+
export { getTokenForKey } from './getTokenForKey'
|
|
24
30
|
|
|
25
31
|
export const propMapper: PropMapper = (key, value, styleState, disabled, map) => {
|
|
26
32
|
if (disabled) {
|
|
27
33
|
return map(key, value)
|
|
28
34
|
}
|
|
29
35
|
|
|
30
|
-
|
|
36
|
+
setLastFontFamilyToken(null)
|
|
31
37
|
|
|
32
38
|
if (!(process.env.TAMAGUI_TARGET === 'native' && isAndroid)) {
|
|
33
39
|
// this shouldnt be necessary and handled in the outer loop
|
|
@@ -41,7 +47,9 @@ export const propMapper: PropMapper = (key, value, styleState, disabled, map) =>
|
|
|
41
47
|
if (variants && key in variants) {
|
|
42
48
|
const variantValue = resolveVariants(key, value, styleProps, styleState, '')
|
|
43
49
|
if (variantValue) {
|
|
44
|
-
variantValue.forEach(([key, value]) =>
|
|
50
|
+
variantValue.forEach(([key, value, originalValue]) => {
|
|
51
|
+
map(key, value, originalValue)
|
|
52
|
+
})
|
|
45
53
|
return
|
|
46
54
|
}
|
|
47
55
|
}
|
|
@@ -58,62 +66,13 @@ export const propMapper: PropMapper = (key, value, styleState, disabled, map) =>
|
|
|
58
66
|
const originalValue = value
|
|
59
67
|
|
|
60
68
|
if (value != null) {
|
|
61
|
-
if (typeof value === 'string'
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
(key === 'boxShadow' ||
|
|
65
|
-
key === 'textShadow' ||
|
|
66
|
-
key === 'filter' ||
|
|
67
|
-
key === 'backgroundImage' ||
|
|
68
|
-
key === 'border' ||
|
|
69
|
-
key === 'outline') &&
|
|
70
|
-
typeof value === 'string' &&
|
|
71
|
-
value.includes('$')
|
|
72
|
-
) {
|
|
73
|
-
// on native, backgroundImage/boxShadow/textShadow get parsed to RN objects
|
|
74
|
-
// so we resolve tokens keeping DynamicColorIOS objects intact via a token map
|
|
75
|
-
if (
|
|
76
|
-
process.env.TAMAGUI_TARGET === 'native' &&
|
|
77
|
-
(key === 'backgroundImage' || key === 'boxShadow' || key === 'textShadow')
|
|
78
|
-
) {
|
|
79
|
-
const tokenMap = new Map<string, any>()
|
|
80
|
-
let placeholderIdx = 0
|
|
81
|
-
const withPlaceholders = value.replace(/(\$[\w.-]+)/g, (t) => {
|
|
82
|
-
let r = getTokenForKey('size', t, styleProps, styleState)
|
|
83
|
-
if (r == null) {
|
|
84
|
-
r = getTokenForKey('color', t, styleProps, styleState)
|
|
85
|
-
}
|
|
86
|
-
if (r == null) return t
|
|
87
|
-
// if resolved to a non-string (object like DynamicColorIOS), use placeholder
|
|
88
|
-
if (typeof r !== 'string' && typeof r !== 'number') {
|
|
89
|
-
const placeholder = `__tk${placeholderIdx++}__`
|
|
90
|
-
tokenMap.set(placeholder, r)
|
|
91
|
-
return placeholder
|
|
92
|
-
}
|
|
93
|
-
return String(r)
|
|
94
|
-
})
|
|
95
|
-
const parsed = parseNativeStyle(key, withPlaceholders, tokenMap)
|
|
96
|
-
if (parsed) {
|
|
97
|
-
value = parsed
|
|
98
|
-
} else {
|
|
99
|
-
// fallback: resolve all tokens to plain string values
|
|
100
|
-
value = value.replace(/(\$[\w.-]+)/g, (t) => {
|
|
101
|
-
let r = getTokenForKey('size', t, styleProps, styleState)
|
|
102
|
-
if (r == null) {
|
|
103
|
-
r = getTokenForKey('color', t, styleProps, styleState)
|
|
104
|
-
}
|
|
105
|
-
return r != null ? String(r) : t
|
|
106
|
-
})
|
|
107
|
-
}
|
|
69
|
+
if (typeof value === 'string') {
|
|
70
|
+
if (value[0] === '$') {
|
|
71
|
+
value = getTokenForKey(key, value, styleProps, styleState)
|
|
108
72
|
} else {
|
|
109
|
-
|
|
110
|
-
value =
|
|
111
|
-
|
|
112
|
-
if (r == null) {
|
|
113
|
-
r = getTokenForKey('color', t, styleProps, styleState)
|
|
114
|
-
}
|
|
115
|
-
return r != null ? String(r) : t
|
|
116
|
-
})
|
|
73
|
+
const resolved = resolveCompoundTokens(key, value, styleProps, styleState)
|
|
74
|
+
value =
|
|
75
|
+
resolved !== value ? resolved : isRemValue(value) ? resolveRem(value) : value
|
|
117
76
|
}
|
|
118
77
|
} else if (isVariable(value)) {
|
|
119
78
|
value = resolveVariableValue(key, value, styleProps.resolveValues)
|
|
@@ -144,17 +103,20 @@ export const propMapper: PropMapper = (key, value, styleState, disabled, map) =>
|
|
|
144
103
|
}
|
|
145
104
|
|
|
146
105
|
if (value != null) {
|
|
147
|
-
|
|
148
|
-
|
|
106
|
+
const fontToken = getLastFontFamilyToken()
|
|
107
|
+
if (key === 'fontFamily' && fontToken) {
|
|
108
|
+
styleState.fontFamily = fontToken
|
|
149
109
|
}
|
|
150
110
|
|
|
151
|
-
const expanded = styleProps.noExpand
|
|
111
|
+
const expanded = styleProps.noExpand
|
|
112
|
+
? null
|
|
113
|
+
: expandStyle(key, value, conf.settings.styleCompat || 'web')
|
|
152
114
|
|
|
153
115
|
if (expanded) {
|
|
154
116
|
const max = expanded.length
|
|
155
117
|
for (let i = 0; i < max; i++) {
|
|
156
|
-
const [nkey, nvalue] = expanded[i]
|
|
157
|
-
map(nkey, nvalue, originalValue)
|
|
118
|
+
const [nkey, nvalue, noriginalValue] = expanded[i]
|
|
119
|
+
map(nkey, nvalue, noriginalValue ?? originalValue)
|
|
158
120
|
}
|
|
159
121
|
} else {
|
|
160
122
|
map(key, value, originalValue)
|
|
@@ -173,7 +135,7 @@ const resolveVariants: StyleResolver = (
|
|
|
173
135
|
const { variants } = staticConfig
|
|
174
136
|
if (!variants) return
|
|
175
137
|
|
|
176
|
-
let variantValue = getVariantDefinition(variants[key], value, conf)
|
|
138
|
+
let variantValue = getVariantDefinition(variants[key], value, conf, styleState)
|
|
177
139
|
|
|
178
140
|
if (process.env.NODE_ENV === 'development' && debug === 'verbose') {
|
|
179
141
|
console.groupCollapsed(`♦️♦️♦️ resolve variant ${key}`)
|
|
@@ -248,13 +210,14 @@ const resolveVariants: StyleResolver = (
|
|
|
248
210
|
console.info(` expanding styles from `, variantValue, `to`, expanded)
|
|
249
211
|
}
|
|
250
212
|
const next = Object.entries(expanded)
|
|
213
|
+
const originalValues = styleOriginalValues.get(expanded)
|
|
251
214
|
|
|
252
215
|
// store any changed font family (only support variables for now)
|
|
253
216
|
if (fontFamilyResult && fontFamilyResult[0] === '$') {
|
|
254
|
-
|
|
217
|
+
setLastFontFamilyToken(getVariableValue(fontFamilyResult))
|
|
255
218
|
}
|
|
256
219
|
|
|
257
|
-
return next
|
|
220
|
+
return next.map(([key, value]) => [key, value, originalValues?.[key]])
|
|
258
221
|
}
|
|
259
222
|
}
|
|
260
223
|
|
|
@@ -292,6 +255,7 @@ const resolveTokensAndVariants: StyleResolver<object> = (
|
|
|
292
255
|
const { conf, staticConfig, debug, theme } = styleState
|
|
293
256
|
const { variants } = staticConfig
|
|
294
257
|
const res = {}
|
|
258
|
+
let originalValues: Record<string, any> | undefined
|
|
295
259
|
|
|
296
260
|
if (process.env.NODE_ENV === 'development' && debug === 'verbose') {
|
|
297
261
|
console.info(` - resolveTokensAndVariants`, key, value)
|
|
@@ -305,6 +269,9 @@ const resolveTokensAndVariants: StyleResolver<object> = (
|
|
|
305
269
|
continue
|
|
306
270
|
}
|
|
307
271
|
|
|
272
|
+
originalValues ||= {}
|
|
273
|
+
originalValues[subKey] = val
|
|
274
|
+
|
|
308
275
|
// Track context overrides for any key that's in context props (issues #3670, #3676)
|
|
309
276
|
// Store the ORIGINAL token value (like '$8') before resolution so that
|
|
310
277
|
// children's functional variants can look up token values
|
|
@@ -328,20 +295,30 @@ const resolveTokensAndVariants: StyleResolver<object> = (
|
|
|
328
295
|
// eg: { variants: { flex: { true: { flex: 2 } } } }
|
|
329
296
|
if (parentVariantKey && parentVariantKey === key) {
|
|
330
297
|
res[subKey] =
|
|
331
|
-
// SYNC WITH *1
|
|
332
298
|
val[0] === '$' ? getTokenForKey(subKey, val, styleProps, styleState) : val
|
|
333
299
|
} else {
|
|
334
300
|
const variantOut = resolveVariants(subKey, val, styleProps, styleState, key)
|
|
335
301
|
|
|
336
302
|
// apply, merging sub-styles
|
|
337
303
|
if (variantOut) {
|
|
338
|
-
for (const [key, val] of variantOut) {
|
|
304
|
+
for (const [key, val, originalVal] of variantOut) {
|
|
339
305
|
if (val == null) continue
|
|
340
306
|
if (key in pseudoDescriptors) {
|
|
341
307
|
res[key] ??= {}
|
|
342
308
|
Object.assign(res[key], val)
|
|
309
|
+
const subOriginalValues = styleOriginalValues.get(val)
|
|
310
|
+
if (subOriginalValues) {
|
|
311
|
+
styleOriginalValues.set(res[key], {
|
|
312
|
+
...styleOriginalValues.get(res[key]),
|
|
313
|
+
...subOriginalValues,
|
|
314
|
+
})
|
|
315
|
+
}
|
|
343
316
|
} else {
|
|
344
317
|
res[key] = val
|
|
318
|
+
if (originalVal !== undefined) {
|
|
319
|
+
originalValues ||= {}
|
|
320
|
+
originalValues[key] = originalVal
|
|
321
|
+
}
|
|
345
322
|
}
|
|
346
323
|
}
|
|
347
324
|
}
|
|
@@ -360,15 +337,12 @@ const resolveTokensAndVariants: StyleResolver<object> = (
|
|
|
360
337
|
}
|
|
361
338
|
|
|
362
339
|
if (typeof val === 'string') {
|
|
363
|
-
// SYNC WITH *1
|
|
364
340
|
const fVal =
|
|
365
341
|
val[0] === '$'
|
|
366
342
|
? getTokenForKey(subKey, val, styleProps, styleState)
|
|
367
|
-
:
|
|
368
|
-
? resolveRem(val)
|
|
369
|
-
: val
|
|
343
|
+
: resolveCompoundTokens(subKey, val, styleProps, styleState)
|
|
370
344
|
|
|
371
|
-
res[subKey] = fVal
|
|
345
|
+
res[subKey] = fVal === val && isRemValue(val) ? resolveRem(val) : fVal
|
|
372
346
|
continue
|
|
373
347
|
}
|
|
374
348
|
|
|
@@ -382,6 +356,13 @@ const resolveTokensAndVariants: StyleResolver<object> = (
|
|
|
382
356
|
// sub-objects: media queries, pseudos, shadowOffset
|
|
383
357
|
res[subKey] ??= {}
|
|
384
358
|
Object.assign(res[subKey], subObject)
|
|
359
|
+
const subOriginalValues = styleOriginalValues.get(subObject)
|
|
360
|
+
if (subOriginalValues) {
|
|
361
|
+
styleOriginalValues.set(res[subKey], {
|
|
362
|
+
...styleOriginalValues.get(res[subKey]),
|
|
363
|
+
...subOriginalValues,
|
|
364
|
+
})
|
|
365
|
+
}
|
|
385
366
|
} else {
|
|
386
367
|
// nullish values cant be tokens, need no extra parsing
|
|
387
368
|
res[subKey] = val
|
|
@@ -401,6 +382,10 @@ const resolveTokensAndVariants: StyleResolver<object> = (
|
|
|
401
382
|
}
|
|
402
383
|
}
|
|
403
384
|
|
|
385
|
+
if (originalValues) {
|
|
386
|
+
styleOriginalValues.set(res, originalValues)
|
|
387
|
+
}
|
|
388
|
+
|
|
404
389
|
return res
|
|
405
390
|
}
|
|
406
391
|
|
|
@@ -410,7 +395,12 @@ const tokenCats = ['size', 'color', 'radius', 'space', 'zIndex'].map((name) => (
|
|
|
410
395
|
}))
|
|
411
396
|
|
|
412
397
|
// goes through specificity finding best matching variant function
|
|
413
|
-
function getVariantDefinition(
|
|
398
|
+
function getVariantDefinition(
|
|
399
|
+
variant: any,
|
|
400
|
+
value: any,
|
|
401
|
+
conf: TamaguiInternalConfig,
|
|
402
|
+
{ theme }: Partial<GetStyleState>
|
|
403
|
+
) {
|
|
414
404
|
if (!variant) return
|
|
415
405
|
if (typeof variant === 'function') {
|
|
416
406
|
return variant
|
|
@@ -422,8 +412,18 @@ function getVariantDefinition(variant: any, value: any, conf: TamaguiInternalCon
|
|
|
422
412
|
if (value != null) {
|
|
423
413
|
const { tokensParsed } = conf
|
|
424
414
|
for (const { name, spreadName } of tokenCats) {
|
|
425
|
-
if (spreadName in variant
|
|
426
|
-
|
|
415
|
+
if (spreadName in variant) {
|
|
416
|
+
// check tokens first
|
|
417
|
+
if (name in tokensParsed && value in tokensParsed[name]) {
|
|
418
|
+
return variant[spreadName]
|
|
419
|
+
}
|
|
420
|
+
// or check theme (only color lives in theme, others are in tokens)
|
|
421
|
+
if (name === 'color' && theme && typeof value === 'string' && value[0] === '$') {
|
|
422
|
+
const themeKey = value.slice(1)
|
|
423
|
+
if (themeKey in theme) {
|
|
424
|
+
return variant[spreadName]
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
427
|
}
|
|
428
428
|
}
|
|
429
429
|
const fontSizeVariant = variant['...fontSize']
|
|
@@ -434,186 +434,3 @@ function getVariantDefinition(variant: any, value: any, conf: TamaguiInternalCon
|
|
|
434
434
|
// fallback to catch all | size
|
|
435
435
|
return variant[`:${typeof value}`] || variant['...']
|
|
436
436
|
}
|
|
437
|
-
|
|
438
|
-
const fontShorthand = {
|
|
439
|
-
fontSize: 'size',
|
|
440
|
-
fontWeight: 'weight',
|
|
441
|
-
}
|
|
442
|
-
|
|
443
|
-
let lastFontFamilyToken: any = null
|
|
444
|
-
let didLogMissingToken = false
|
|
445
|
-
|
|
446
|
-
export const getTokenForKey = (
|
|
447
|
-
key: string,
|
|
448
|
-
value: string,
|
|
449
|
-
styleProps: SplitStyleProps,
|
|
450
|
-
styleState: Partial<GetStyleState>
|
|
451
|
-
) => {
|
|
452
|
-
let resolveAs = styleProps.resolveValues || 'none'
|
|
453
|
-
|
|
454
|
-
if (resolveAs === 'none') {
|
|
455
|
-
return value
|
|
456
|
-
}
|
|
457
|
-
|
|
458
|
-
// handle safe area tokens: $safeAreaTop, $safeAreaBottom, $safeAreaLeft, $safeAreaRight
|
|
459
|
-
// const safeAreaValue = resolveSafeAreaValue(value)
|
|
460
|
-
// if (safeAreaValue !== undefined) {
|
|
461
|
-
// return safeAreaValue
|
|
462
|
-
// }
|
|
463
|
-
|
|
464
|
-
const { theme, conf = getConfig(), context, fontFamily, staticConfig } = styleState
|
|
465
|
-
|
|
466
|
-
const themeValue = theme ? theme[value] || theme[value.slice(1)] : undefined
|
|
467
|
-
|
|
468
|
-
const tokensParsed = conf.tokensParsed
|
|
469
|
-
let valOrVar: any
|
|
470
|
-
let hasSet = false
|
|
471
|
-
|
|
472
|
-
const customTokenAccept = staticConfig?.accept?.[key]
|
|
473
|
-
if (customTokenAccept) {
|
|
474
|
-
const val = themeValue ?? tokensParsed[customTokenAccept][value]
|
|
475
|
-
if (val != null) {
|
|
476
|
-
resolveAs = 'value' // always resolve custom tokens as values
|
|
477
|
-
valOrVar = val
|
|
478
|
-
hasSet = true
|
|
479
|
-
}
|
|
480
|
-
}
|
|
481
|
-
|
|
482
|
-
if (themeValue) {
|
|
483
|
-
if (resolveAs === 'except-theme') {
|
|
484
|
-
return value
|
|
485
|
-
}
|
|
486
|
-
|
|
487
|
-
valOrVar = themeValue
|
|
488
|
-
if (process.env.NODE_ENV === 'development' && styleState.debug === 'verbose') {
|
|
489
|
-
globalThis.tamaguiAvoidTracking = true
|
|
490
|
-
console.info(
|
|
491
|
-
` - resolving ${key} to theme value ${value} resolveAs ${resolveAs}`,
|
|
492
|
-
valOrVar
|
|
493
|
-
)
|
|
494
|
-
globalThis.tamaguiAvoidTracking = false
|
|
495
|
-
}
|
|
496
|
-
hasSet = true
|
|
497
|
-
} else {
|
|
498
|
-
if (value in conf.specificTokens) {
|
|
499
|
-
hasSet = true
|
|
500
|
-
valOrVar = conf.specificTokens[value]
|
|
501
|
-
} else {
|
|
502
|
-
switch (key) {
|
|
503
|
-
case 'fontFamily': {
|
|
504
|
-
const fontsParsed = context?.language
|
|
505
|
-
? getFontsForLanguage(conf.fontsParsed, context.language)
|
|
506
|
-
: conf.fontsParsed
|
|
507
|
-
valOrVar = fontsParsed[value]?.family || value
|
|
508
|
-
lastFontFamilyToken = value
|
|
509
|
-
hasSet = true
|
|
510
|
-
break
|
|
511
|
-
}
|
|
512
|
-
case 'fontSize':
|
|
513
|
-
case 'lineHeight':
|
|
514
|
-
case 'letterSpacing':
|
|
515
|
-
case 'fontWeight': {
|
|
516
|
-
const fam = fontFamily || conf.defaultFontToken
|
|
517
|
-
if (fam) {
|
|
518
|
-
const fontsParsed = context?.language
|
|
519
|
-
? getFontsForLanguage(conf.fontsParsed, context.language)
|
|
520
|
-
: conf.fontsParsed
|
|
521
|
-
const font = fontsParsed[fam] || fontsParsed[conf.defaultFontToken]
|
|
522
|
-
valOrVar = font?.[fontShorthand[key] || key]?.[value] || value
|
|
523
|
-
hasSet = true
|
|
524
|
-
}
|
|
525
|
-
break
|
|
526
|
-
}
|
|
527
|
-
}
|
|
528
|
-
for (const cat in tokenCategories) {
|
|
529
|
-
if (key in tokenCategories[cat]) {
|
|
530
|
-
const res = tokensParsed[cat]?.[value]
|
|
531
|
-
|
|
532
|
-
if (res != null) {
|
|
533
|
-
valOrVar = res
|
|
534
|
-
hasSet = true
|
|
535
|
-
} else {
|
|
536
|
-
if (process.env.NODE_ENV === 'development') {
|
|
537
|
-
if (process.env.TAMAGUI_DISABLE_MISSING_TOKEN_LOG !== '1') {
|
|
538
|
-
if (!didLogMissingToken) {
|
|
539
|
-
didLogMissingToken = true
|
|
540
|
-
console.groupCollapsed(
|
|
541
|
-
`[tamagui] Warning: missing token ${key} in category ${cat} - ${value} (open for details)`
|
|
542
|
-
)
|
|
543
|
-
console.info(
|
|
544
|
-
`Note: this could just be due to you not setting all the theme tokens Tamagui expects, which is harmless, but
|
|
545
|
-
it also often can be because you have a duplicated Tamagui in your bundle, which can cause tricky bugs.`
|
|
546
|
-
)
|
|
547
|
-
console.info(
|
|
548
|
-
`To see if you have duplicated dependencies, in Chrome DevTools hit CMD+P and type TamaguiProvider.
|
|
549
|
-
If you see both a .cjs and a .mjs entry, it's duplicated.`
|
|
550
|
-
)
|
|
551
|
-
console.info(
|
|
552
|
-
`You can debug that issue by opening the .mjs and .cjs files and setting a breakpoint at the top of each.`
|
|
553
|
-
)
|
|
554
|
-
console.info(
|
|
555
|
-
`We only log this warning one time as it's sometimes harmless, to disable this log entirely set process.env.TAMAGUI_DISABLE_MISSING_TOKEN_LOG=1.`
|
|
556
|
-
)
|
|
557
|
-
console.groupEnd()
|
|
558
|
-
}
|
|
559
|
-
}
|
|
560
|
-
}
|
|
561
|
-
}
|
|
562
|
-
}
|
|
563
|
-
}
|
|
564
|
-
}
|
|
565
|
-
|
|
566
|
-
if (!hasSet) {
|
|
567
|
-
const spaceVar = tokensParsed.space[value]
|
|
568
|
-
if (spaceVar != null) {
|
|
569
|
-
valOrVar = spaceVar
|
|
570
|
-
hasSet = true
|
|
571
|
-
}
|
|
572
|
-
}
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
-
if (hasSet) {
|
|
576
|
-
const out = resolveVariableValue(key, valOrVar, resolveAs)
|
|
577
|
-
if (process.env.NODE_ENV === 'development' && styleState.debug === 'verbose') {
|
|
578
|
-
globalThis.tamaguiAvoidTracking = true
|
|
579
|
-
console.info(`resolved`, resolveAs, valOrVar, out)
|
|
580
|
-
globalThis.tamaguiAvoidTracking = false
|
|
581
|
-
}
|
|
582
|
-
return out
|
|
583
|
-
}
|
|
584
|
-
|
|
585
|
-
// they didn't define this token don't return anything, we could warn?
|
|
586
|
-
|
|
587
|
-
if (process.env.NODE_ENV === 'development' && styleState.debug === 'verbose') {
|
|
588
|
-
console.warn(`Warning: no token found for ${key}, omitting`)
|
|
589
|
-
}
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
function resolveVariableValue(
|
|
593
|
-
key: string,
|
|
594
|
-
valOrVar: Variable | any,
|
|
595
|
-
resolveValues?: ResolveVariableAs
|
|
596
|
-
) {
|
|
597
|
-
if (resolveValues === 'none') {
|
|
598
|
-
return valOrVar
|
|
599
|
-
}
|
|
600
|
-
if (isVariable(valOrVar)) {
|
|
601
|
-
if (resolveValues === 'value') {
|
|
602
|
-
return valOrVar.val
|
|
603
|
-
}
|
|
604
|
-
|
|
605
|
-
// @ts-expect-error this is fine until we can type better
|
|
606
|
-
const get = valOrVar?.get
|
|
607
|
-
|
|
608
|
-
// shadowColor doesn't support dynamic style
|
|
609
|
-
if (process.env.TAMAGUI_TARGET !== 'native' || key !== 'shadowColor') {
|
|
610
|
-
if (typeof get === 'function') {
|
|
611
|
-
const resolveDynamicFor = resolveValues === 'web' ? 'web' : undefined
|
|
612
|
-
return get(resolveDynamicFor)
|
|
613
|
-
}
|
|
614
|
-
}
|
|
615
|
-
|
|
616
|
-
return process.env.TAMAGUI_TARGET === 'native' ? valOrVar.val : valOrVar.variable
|
|
617
|
-
}
|
|
618
|
-
return valOrVar
|
|
619
|
-
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import type { TransitionProp, PseudoTransitions, TamaguiComponentState } from '../types'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Pseudo state for tracking enter/exit transitions
|
|
5
|
+
*/
|
|
6
|
+
export type PseudoState = {
|
|
7
|
+
hover?: boolean
|
|
8
|
+
press?: boolean
|
|
9
|
+
focus?: boolean
|
|
10
|
+
// track group pseudo states: { groupName: { hover: boolean, press: boolean } }
|
|
11
|
+
groups?: Record<string, { hover?: boolean; press?: boolean; focus?: boolean }>
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Resolves the effective transition based on pseudo state changes.
|
|
16
|
+
* When entering a pseudo state (e.g., hover), use that pseudo's transition.
|
|
17
|
+
* When exiting (returning to base), use the base transition.
|
|
18
|
+
*
|
|
19
|
+
* CSS-like semantics:
|
|
20
|
+
* - Enter hover: Uses hover's transition (fast snap)
|
|
21
|
+
* - Exit hover: Uses base transition (slow fade)
|
|
22
|
+
*/
|
|
23
|
+
export function resolveEffectivePseudoTransition(
|
|
24
|
+
prev: PseudoState | undefined,
|
|
25
|
+
next: TamaguiComponentState,
|
|
26
|
+
pseudoTransitions: PseudoTransitions | undefined | null,
|
|
27
|
+
baseTransition: TransitionProp | undefined | null
|
|
28
|
+
): TransitionProp | undefined | null {
|
|
29
|
+
if (!pseudoTransitions) {
|
|
30
|
+
return baseTransition
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// treat undefined prev as all-false so first interaction detects entering
|
|
34
|
+
const prevState = prev || { hover: false, press: false, focus: false, groups: {} }
|
|
35
|
+
|
|
36
|
+
// check which pseudo states are being entered (priority: press > hover > focus)
|
|
37
|
+
if (next.press && !prevState.press && pseudoTransitions.pressStyle) {
|
|
38
|
+
return pseudoTransitions.pressStyle
|
|
39
|
+
}
|
|
40
|
+
if (next.hover && !prevState.hover && pseudoTransitions.hoverStyle) {
|
|
41
|
+
return pseudoTransitions.hoverStyle
|
|
42
|
+
}
|
|
43
|
+
if (next.focus && !prevState.focus && pseudoTransitions.focusStyle) {
|
|
44
|
+
return pseudoTransitions.focusStyle
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// check group pseudo transitions (e.g., $group-scenario4-hover)
|
|
48
|
+
for (const key in pseudoTransitions) {
|
|
49
|
+
if (key.startsWith('$group-')) {
|
|
50
|
+
// parse $group-{name}-{pseudo} format
|
|
51
|
+
const match = key.match(/^\$group-(.+)-(hover|press|focus)$/)
|
|
52
|
+
if (!match) continue
|
|
53
|
+
|
|
54
|
+
const groupName = match[1]
|
|
55
|
+
const pseudoType = match[2] as 'hover' | 'press' | 'focus'
|
|
56
|
+
|
|
57
|
+
// get current and previous group pseudo state
|
|
58
|
+
const nextGroupPseudo = next.group?.[groupName]?.pseudo
|
|
59
|
+
const prevGroupPseudo = prevState.groups?.[groupName]
|
|
60
|
+
|
|
61
|
+
// check if entering this group pseudo state
|
|
62
|
+
if (nextGroupPseudo?.[pseudoType] && !prevGroupPseudo?.[pseudoType]) {
|
|
63
|
+
return pseudoTransitions[key as `$group-${string}-${'hover' | 'press' | 'focus'}`]
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// exiting uses base transition
|
|
69
|
+
return baseTransition
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Extracts pseudo state from TamaguiComponentState for storage in prevPseudoState
|
|
74
|
+
*/
|
|
75
|
+
export function extractPseudoState(state: TamaguiComponentState): PseudoState {
|
|
76
|
+
const groups: PseudoState['groups'] = {}
|
|
77
|
+
|
|
78
|
+
if (state.group) {
|
|
79
|
+
for (const groupName in state.group) {
|
|
80
|
+
const pseudo = state.group[groupName]?.pseudo
|
|
81
|
+
if (pseudo) {
|
|
82
|
+
groups[groupName] = {
|
|
83
|
+
hover: pseudo.hover,
|
|
84
|
+
press: pseudo.press,
|
|
85
|
+
focus: pseudo.focus,
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return {
|
|
92
|
+
hover: state.hover,
|
|
93
|
+
press: state.press,
|
|
94
|
+
focus: state.focus,
|
|
95
|
+
groups,
|
|
96
|
+
}
|
|
97
|
+
}
|