@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
package/src/types.tsx
CHANGED
|
@@ -426,7 +426,7 @@ export type FontLanguageProps = LanguageContextType & {
|
|
|
426
426
|
|
|
427
427
|
export type ThemeProviderProps = {
|
|
428
428
|
className?: string
|
|
429
|
-
defaultTheme: string
|
|
429
|
+
defaultTheme: string | null | undefined
|
|
430
430
|
/** @deprecated moved to createTamagui({ settings: { disableRootThemeClass } }) */
|
|
431
431
|
disableRootThemeClass?: boolean
|
|
432
432
|
/** @deprecated moved to createTamagui({ settings: { themeClassNameOnRoot } }) */
|
|
@@ -596,6 +596,7 @@ export type TamaguiComponentStateRef = {
|
|
|
596
596
|
hasEverThemed?: boolean | 'wrapped'
|
|
597
597
|
hasEverResetPresence?: boolean
|
|
598
598
|
hasHadEvents?: boolean
|
|
599
|
+
hasRealPressEvents?: boolean
|
|
599
600
|
isListeningToTheme?: boolean
|
|
600
601
|
unPress?: Function
|
|
601
602
|
setStateShallow?: ComponentSetStateShallow
|
|
@@ -612,6 +613,14 @@ export type TamaguiComponentStateRef = {
|
|
|
612
613
|
|
|
613
614
|
// cleanup function for media emit listener
|
|
614
615
|
mediaEmitCleanup?: () => void
|
|
616
|
+
|
|
617
|
+
// previous pseudo state for detecting enter vs exit transitions
|
|
618
|
+
prevPseudoState?: {
|
|
619
|
+
hover?: boolean
|
|
620
|
+
press?: boolean
|
|
621
|
+
focus?: boolean
|
|
622
|
+
groups?: Record<string, { hover?: boolean; press?: boolean; focus?: boolean }>
|
|
623
|
+
}
|
|
615
624
|
}
|
|
616
625
|
|
|
617
626
|
export type ComponentGroupEmitter = {
|
|
@@ -803,6 +812,9 @@ export type CreateTamaguiConfig<
|
|
|
803
812
|
E extends GenericAnimations = GenericAnimations,
|
|
804
813
|
F extends GenericFonts = GenericFonts,
|
|
805
814
|
H extends GenericTamaguiSettings = GenericTamaguiSettings,
|
|
815
|
+
// preserve the raw animation driver keys ('default' | 'css' | etc)
|
|
816
|
+
// defaults to string so generic TamaguiInternalConfig accepts any driver keys
|
|
817
|
+
AnimDriverKeys extends string = string,
|
|
806
818
|
> = {
|
|
807
819
|
fonts: RemoveLanguagePostfixes<F>
|
|
808
820
|
fontLanguages: GetLanguagePostfixes<F> extends never
|
|
@@ -821,6 +833,8 @@ export type CreateTamaguiConfig<
|
|
|
821
833
|
// Multi-driver: { default: cssDriver, spring: motiDriver }
|
|
822
834
|
// Single: AnimationDriver<E>
|
|
823
835
|
animations: AnimationDriver<E> | AnimationsConfigObject
|
|
836
|
+
// phantom type for preserving driver keys - never set at runtime, only for type inference
|
|
837
|
+
animationDriverKeys?: AnimDriverKeys
|
|
824
838
|
settings: H
|
|
825
839
|
}
|
|
826
840
|
|
|
@@ -886,6 +900,16 @@ type ExtractAnimationConfig<E> =
|
|
|
886
900
|
? E
|
|
887
901
|
: EmptyAnimations
|
|
888
902
|
|
|
903
|
+
// Helper to extract animation driver keys from raw animations prop
|
|
904
|
+
// Single driver: returns 'default'
|
|
905
|
+
// Multi-driver { default: x, css: y }: returns 'default' | 'css'
|
|
906
|
+
type ExtractAnimationDriverKeys<E> =
|
|
907
|
+
E extends AnimationDriver<any>
|
|
908
|
+
? 'default'
|
|
909
|
+
: E extends { default: AnimationDriver<any> }
|
|
910
|
+
? Extract<keyof E, string>
|
|
911
|
+
: 'default'
|
|
912
|
+
|
|
889
913
|
export type InferTamaguiConfig<Conf> =
|
|
890
914
|
Conf extends ConfProps<infer A, infer B, infer C, infer D, infer E, infer F, infer H>
|
|
891
915
|
? TamaguiInternalConfig<
|
|
@@ -895,7 +919,8 @@ export type InferTamaguiConfig<Conf> =
|
|
|
895
919
|
D extends GenericMedia ? D : EmptyMedia,
|
|
896
920
|
ExtractAnimationConfig<E>,
|
|
897
921
|
F extends GenericFonts ? F : EmptyFonts,
|
|
898
|
-
H extends GenericTamaguiSettings ? H : EmptyTamaguiSettings
|
|
922
|
+
H extends GenericTamaguiSettings ? H : EmptyTamaguiSettings,
|
|
923
|
+
ExtractAnimationDriverKeys<E>
|
|
899
924
|
>
|
|
900
925
|
: unknown
|
|
901
926
|
|
|
@@ -954,7 +979,10 @@ export type ThemeTokens = `$${ThemeKeys}`
|
|
|
954
979
|
// Animation names (slow, fast, bouncy) for the `transition` prop
|
|
955
980
|
// Extract animation keys from the driver's `animations` property
|
|
956
981
|
// The AnimationDriver<Config> has an `animations: Config` property
|
|
957
|
-
|
|
982
|
+
// Use Extract<keyof A, string> to filter out number/symbol keys from fallback case
|
|
983
|
+
type GetAnimationsFromDriver<T> = T extends { animations: infer A }
|
|
984
|
+
? Extract<keyof A, string>
|
|
985
|
+
: never
|
|
958
986
|
|
|
959
987
|
// For multi-driver configs like { default: AnimationDriver, css: AnimationDriver }
|
|
960
988
|
// Extract from the 'default' driver or first driver found
|
|
@@ -976,21 +1004,18 @@ type InferredTransitionKeys =
|
|
|
976
1004
|
export type TransitionKeys = InferredTransitionKeys
|
|
977
1005
|
|
|
978
1006
|
// Driver keys (default, css, spring) for the `animatedBy` prop
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
? keyof TamaguiConfig['animations']
|
|
984
|
-
: 'default'
|
|
985
|
-
|
|
986
|
-
// Combine inferred keys from config with TypeOverride keys
|
|
987
|
-
// This ensures both config-defined drivers AND lazy-loaded drivers are available
|
|
1007
|
+
// Gets driver keys directly from TamaguiConfig.animationDriverKeys
|
|
1008
|
+
// Falls back to 'default' only when TamaguiCustomConfig is empty (no augmentation)
|
|
1009
|
+
// The Exclude<X, undefined> handles optional property, then we intersect with string
|
|
1010
|
+
// to ensure only string keys (not symbols/numbers)
|
|
988
1011
|
export type AnimationDriverKeys =
|
|
989
1012
|
| 'default'
|
|
990
|
-
|
|
|
1013
|
+
| Extract<Exclude<TamaguiConfig['animationDriverKeys'], undefined>, string>
|
|
1014
|
+
// add TypeOverride keys for lazy-loaded drivers
|
|
991
1015
|
| (ReturnType<TypeOverride['animationDrivers']> extends 1
|
|
992
1016
|
? never
|
|
993
1017
|
: ReturnType<TypeOverride['animationDrivers']>)
|
|
1018
|
+
|
|
994
1019
|
export type FontLanguages = ArrayIntersection<TamaguiConfig['fontLanguages']>
|
|
995
1020
|
|
|
996
1021
|
export interface ThemeProps {
|
|
@@ -1050,10 +1075,15 @@ type AutocompleteSpecificTokensSetting = boolean | 'except-special'
|
|
|
1050
1075
|
|
|
1051
1076
|
export interface GenericTamaguiSettings {
|
|
1052
1077
|
/**
|
|
1053
|
-
*
|
|
1054
|
-
*
|
|
1078
|
+
* controls style semantics where React Native/Yoga and CSS differ.
|
|
1079
|
+
*
|
|
1080
|
+
* - "legacy": preserves Tamagui v1 flex expansion.
|
|
1081
|
+
* - "react-native": follows React Native/Yoga flex and raw numeric lineHeight semantics.
|
|
1082
|
+
* - "web": follows CSS flex and unitless numeric lineHeight semantics.
|
|
1083
|
+
*
|
|
1084
|
+
* @default "web"
|
|
1055
1085
|
*/
|
|
1056
|
-
styleCompat?: 'react-native' | '
|
|
1086
|
+
styleCompat?: 'legacy' | 'react-native' | 'web'
|
|
1057
1087
|
|
|
1058
1088
|
// TODO
|
|
1059
1089
|
/**
|
|
@@ -1305,8 +1335,11 @@ export type TamaguiInternalConfig<
|
|
|
1305
1335
|
E extends GenericAnimations = GenericAnimations,
|
|
1306
1336
|
F extends GenericFonts = GenericFonts,
|
|
1307
1337
|
G extends GenericTamaguiSettings = GenericTamaguiSettings,
|
|
1338
|
+
// preserve the raw animation driver keys ('default' | 'css' | etc)
|
|
1339
|
+
// defaults to string so generic TamaguiInternalConfig accepts any driver keys
|
|
1340
|
+
AnimDriverKeys extends string = string,
|
|
1308
1341
|
> = Omit<CreateTamaguiProps, keyof GenericTamaguiConfig> &
|
|
1309
|
-
Omit<CreateTamaguiConfig<A, B, C, D, E, F, G>, 'tokens'> & {
|
|
1342
|
+
Omit<CreateTamaguiConfig<A, B, C, D, E, F, G, AnimDriverKeys>, 'tokens'> & {
|
|
1310
1343
|
// TODO need to make it this but this breaks types, revisit
|
|
1311
1344
|
// animations: E //AnimationDriver<E>
|
|
1312
1345
|
// with $ prefixes for fast lookups (one time cost at startup vs every render)
|
|
@@ -1325,6 +1358,9 @@ export type TamaguiInternalConfig<
|
|
|
1325
1358
|
settings: Omit<GenericTamaguiSettings, keyof G> & G
|
|
1326
1359
|
defaultFont?: string
|
|
1327
1360
|
defaultFontToken: `${string}`
|
|
1361
|
+
// multi-driver animation config (e.g., { default: motionDriver, css: cssDriver })
|
|
1362
|
+
// used for component-level driver selection via animatedBy prop
|
|
1363
|
+
animationDrivers?: Record<string, AnimationDriver>
|
|
1328
1364
|
}
|
|
1329
1365
|
|
|
1330
1366
|
export type GetAnimationKeys<A extends GenericTamaguiConfig> = keyof A['animations']
|
|
@@ -1360,8 +1396,18 @@ export type MediaQueryKey = keyof Media
|
|
|
1360
1396
|
export type MediaPropKeys = `$${MediaQueryKey}`
|
|
1361
1397
|
export type MediaQueryState = { [key in MediaQueryKey]: boolean }
|
|
1362
1398
|
|
|
1363
|
-
|
|
1364
|
-
|
|
1399
|
+
// guard against a loose `Themes` whose `keyof` collapses to `string` (e.g. a config
|
|
1400
|
+
// whose themes type carries a string index signature). without this, TK becomes `string`
|
|
1401
|
+
// and ThemeMediaKeys becomes `$theme-${string}`, which collapses the whole WithMediaProps
|
|
1402
|
+
// mapped type into a `[key: string]` index signature that then swallows non-style props
|
|
1403
|
+
// like onPress/children. see issue #4010
|
|
1404
|
+
export type ThemeMediaKeys<TK extends keyof Themes = keyof Themes> = TK extends string
|
|
1405
|
+
? string extends TK
|
|
1406
|
+
? never
|
|
1407
|
+
: TK extends `${string}_${string}`
|
|
1408
|
+
? never
|
|
1409
|
+
: `$theme-${TK}`
|
|
1410
|
+
: never
|
|
1365
1411
|
|
|
1366
1412
|
export type PlatformMediaKeys = `$platform-${AllPlatforms}`
|
|
1367
1413
|
|
|
@@ -1397,19 +1443,14 @@ export type WithMediaProps<A> = {
|
|
|
1397
1443
|
[Key in PlatformMediaKeys]?: AddWebOnlyStyleProps<A>
|
|
1398
1444
|
}
|
|
1399
1445
|
: Key extends `$platform-web`
|
|
1400
|
-
? AddWebOnlyStyleProps<A>
|
|
1401
|
-
: A
|
|
1446
|
+
? AddWebOnlyStyleProps<A> & { [Key in MediaPropKeys]?: AddWebOnlyStyleProps<A> }
|
|
1447
|
+
: A & { [Key in MediaPropKeys]?: A }
|
|
1402
1448
|
}
|
|
1403
1449
|
|
|
1404
|
-
type AddWebOnlyStyleProps<A> =
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
? A[SubKey]
|
|
1409
|
-
: SubKey extends keyof WebOnlyValidStyleValues
|
|
1410
|
-
? WebOnlyValidStyleValues[SubKey]
|
|
1411
|
-
: never
|
|
1412
|
-
}
|
|
1450
|
+
export type AddWebOnlyStyleProps<A> = Partial<CSSProperties> &
|
|
1451
|
+
Partial<WebOnlyValidStyleValues> & {
|
|
1452
|
+
[K in Exclude<keyof A, keyof CSSProperties>]?: A[K]
|
|
1453
|
+
}
|
|
1413
1454
|
|
|
1414
1455
|
export type WebOnlyValidStyleValues = {
|
|
1415
1456
|
position: '-webkit-sticky'
|
|
@@ -1667,11 +1708,13 @@ export type ColorTokens =
|
|
|
1667
1708
|
export type ZIndexTokens =
|
|
1668
1709
|
| SpecificTokensSpecial
|
|
1669
1710
|
| GetTokenString<keyof Tokens['zIndex']>
|
|
1711
|
+
| ThemeValueFallbackZIndex
|
|
1670
1712
|
| number
|
|
1671
1713
|
|
|
1672
1714
|
export type RadiusTokens =
|
|
1673
1715
|
| SpecificTokensSpecial
|
|
1674
1716
|
| GetTokenString<keyof Tokens['radius']>
|
|
1717
|
+
| ThemeValueFallbackRadius
|
|
1675
1718
|
| number
|
|
1676
1719
|
| RemString
|
|
1677
1720
|
|
|
@@ -1771,16 +1814,18 @@ export type ThemeValueByCategory<K extends string | number | symbol> = K extends
|
|
|
1771
1814
|
? ColorTokens
|
|
1772
1815
|
: K extends 'zIndex'
|
|
1773
1816
|
? ZIndexTokens
|
|
1774
|
-
: K extends '
|
|
1775
|
-
?
|
|
1776
|
-
: K extends '
|
|
1777
|
-
?
|
|
1778
|
-
: K extends '
|
|
1779
|
-
?
|
|
1780
|
-
: K extends
|
|
1781
|
-
?
|
|
1782
|
-
|
|
1783
|
-
|
|
1817
|
+
: K extends 'radius'
|
|
1818
|
+
? RadiusTokens
|
|
1819
|
+
: K extends 'lineHeight'
|
|
1820
|
+
? FontLineHeightTokens
|
|
1821
|
+
: K extends 'fontWeight'
|
|
1822
|
+
? FontWeightTokens
|
|
1823
|
+
: K extends 'letterSpacing'
|
|
1824
|
+
? FontLetterSpacingTokens
|
|
1825
|
+
: K extends keyof Tokens
|
|
1826
|
+
? // fallback to user-defined tokens
|
|
1827
|
+
GetTokenString<keyof Tokens[K]>
|
|
1828
|
+
: never
|
|
1784
1829
|
|
|
1785
1830
|
export type FontKeys = 'fontFamily'
|
|
1786
1831
|
export type FontSizeKeys = 'fontSize'
|
|
@@ -1793,21 +1838,21 @@ export type OpacityKeys = 'opacity'
|
|
|
1793
1838
|
export type ThemeValueGet<K extends string | number | symbol> = K extends 'theme'
|
|
1794
1839
|
? ThemeTokens
|
|
1795
1840
|
: K extends SizeKeys
|
|
1796
|
-
? SizeTokens
|
|
1841
|
+
? SizeTokens
|
|
1797
1842
|
: K extends FontKeys
|
|
1798
1843
|
? FontTokens
|
|
1799
1844
|
: K extends FontSizeKeys
|
|
1800
1845
|
? FontSizeTokens
|
|
1801
1846
|
: K extends `${`border${string | ''}Radius`}`
|
|
1802
|
-
? RadiusTokens
|
|
1847
|
+
? RadiusTokens
|
|
1803
1848
|
: K extends SpaceKeys
|
|
1804
1849
|
? K extends 'shadowOffset'
|
|
1805
1850
|
? { width: SpaceTokens; height: SpaceTokens }
|
|
1806
|
-
: SpaceTokens
|
|
1851
|
+
: SpaceTokens
|
|
1807
1852
|
: K extends ColorKeys
|
|
1808
1853
|
? ColorTokens | ThemeValueFallbackColor
|
|
1809
1854
|
: K extends ZIndexKeys
|
|
1810
|
-
? ZIndexTokens
|
|
1855
|
+
? ZIndexTokens
|
|
1811
1856
|
: K extends LineHeightKeys
|
|
1812
1857
|
? FontLineHeightTokens
|
|
1813
1858
|
: K extends FontWeightKeys
|
|
@@ -1863,15 +1908,30 @@ export type WithShorthands<StyleProps> = {
|
|
|
1863
1908
|
}
|
|
1864
1909
|
|
|
1865
1910
|
// adds pseudo props
|
|
1911
|
+
// PseudoStyleWithTransition allows transition inside pseudo-style props for enter/exit timing
|
|
1912
|
+
export type PseudoStyleWithTransition<A> = A & { transition?: TransitionProp | null }
|
|
1913
|
+
|
|
1866
1914
|
export type WithPseudoProps<A> = {
|
|
1867
|
-
hoverStyle?: A | null
|
|
1868
|
-
pressStyle?: A | null
|
|
1869
|
-
focusStyle?: A | null
|
|
1870
|
-
focusWithinStyle?: A | null
|
|
1871
|
-
focusVisibleStyle?: A | null
|
|
1872
|
-
disabledStyle?: A | null
|
|
1873
|
-
exitStyle?: A | null
|
|
1874
|
-
enterStyle?: A | null
|
|
1915
|
+
hoverStyle?: PseudoStyleWithTransition<A> | null
|
|
1916
|
+
pressStyle?: PseudoStyleWithTransition<A> | null
|
|
1917
|
+
focusStyle?: PseudoStyleWithTransition<A> | null
|
|
1918
|
+
focusWithinStyle?: PseudoStyleWithTransition<A> | null
|
|
1919
|
+
focusVisibleStyle?: PseudoStyleWithTransition<A> | null
|
|
1920
|
+
disabledStyle?: PseudoStyleWithTransition<A> | null
|
|
1921
|
+
exitStyle?: PseudoStyleWithTransition<A> | null
|
|
1922
|
+
enterStyle?: PseudoStyleWithTransition<A> | null
|
|
1923
|
+
}
|
|
1924
|
+
|
|
1925
|
+
// type for transitions extracted from pseudo-style props (e.g., hoverStyle.transition)
|
|
1926
|
+
// includes $group-*-hover, $group-*-press, $group-*-focus patterns
|
|
1927
|
+
export type PseudoTransitions = Partial<
|
|
1928
|
+
Record<keyof WithPseudoProps<any>, TransitionProp | null>
|
|
1929
|
+
> & {
|
|
1930
|
+
// allow $group-{name}-{pseudo} keys dynamically
|
|
1931
|
+
[key: `$group-${string}-${'hover' | 'press' | 'focus'}`]:
|
|
1932
|
+
| TransitionProp
|
|
1933
|
+
| null
|
|
1934
|
+
| undefined
|
|
1875
1935
|
}
|
|
1876
1936
|
|
|
1877
1937
|
export type PseudoPropKeys = keyof WithPseudoProps<any>
|
|
@@ -1887,7 +1947,14 @@ export type PseudoStyles = {
|
|
|
1887
1947
|
exitStyle?: ViewStyle
|
|
1888
1948
|
}
|
|
1889
1949
|
|
|
1890
|
-
export type AllPlatforms =
|
|
1950
|
+
export type AllPlatforms =
|
|
1951
|
+
| 'web'
|
|
1952
|
+
| 'native'
|
|
1953
|
+
| 'android'
|
|
1954
|
+
| 'ios'
|
|
1955
|
+
| 'tv'
|
|
1956
|
+
| 'androidtv'
|
|
1957
|
+
| 'tvos'
|
|
1891
1958
|
|
|
1892
1959
|
// MUST EXPORT ALL IN BETWEEN or else it expands declarations like crazy
|
|
1893
1960
|
|
|
@@ -2420,6 +2487,7 @@ export interface StackStyleBase
|
|
|
2420
2487
|
export interface TextStylePropsBase
|
|
2421
2488
|
extends Omit<RNTextStyle, keyof ExtendedBaseProps>, ExtendedBaseProps {
|
|
2422
2489
|
ellipsis?: boolean
|
|
2490
|
+
numberOfLines?: number
|
|
2423
2491
|
textDecorationDistance?: number
|
|
2424
2492
|
textOverflow?: Properties['textOverflow']
|
|
2425
2493
|
whiteSpace?: Properties['whiteSpace']
|
|
@@ -2681,7 +2749,7 @@ export type TamaguiProviderProps = Omit<ThemeProviderProps, 'children'> & {
|
|
|
2681
2749
|
insets?: { top: number; right: number; bottom: number; left: number }
|
|
2682
2750
|
}
|
|
2683
2751
|
|
|
2684
|
-
export type PropMappedValue = [string, any][] | undefined
|
|
2752
|
+
export type PropMappedValue = [string, any, any?][] | undefined
|
|
2685
2753
|
|
|
2686
2754
|
export type GetStyleState = {
|
|
2687
2755
|
style: TextStyle | null
|
|
@@ -2704,6 +2772,10 @@ export type GetStyleState = {
|
|
|
2704
2772
|
// Track original token values (like '$8') before they get resolved to CSS vars
|
|
2705
2773
|
// This is used to preserve token strings in overriddenContextProps
|
|
2706
2774
|
originalContextPropValues?: Record<string, any>
|
|
2775
|
+
// Transitions extracted from pseudo-style props (e.g., hoverStyle.transition)
|
|
2776
|
+
pseudoTransitions?: PseudoTransitions | null
|
|
2777
|
+
// Resolved animation driver (respects animatedBy prop)
|
|
2778
|
+
animationDriver?: AnimationDriver | null
|
|
2707
2779
|
}
|
|
2708
2780
|
|
|
2709
2781
|
export type StyleResolver<Response = PropMappedValue> = (
|
|
@@ -3136,24 +3208,25 @@ export type UseAnimatedNumberStyle<
|
|
|
3136
3208
|
V extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>,
|
|
3137
3209
|
> = (val: V, getStyle: (current: any) => any) => any
|
|
3138
3210
|
|
|
3211
|
+
export type UseAnimatedNumbersStyle<
|
|
3212
|
+
V extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>,
|
|
3213
|
+
> = (vals: V[], getStyle: (...currentValues: any[]) => any) => any
|
|
3214
|
+
|
|
3139
3215
|
export type UseAnimatedNumber<
|
|
3140
3216
|
N extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>,
|
|
3141
3217
|
> = (initial: number) => N
|
|
3142
3218
|
|
|
3143
3219
|
export type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {
|
|
3144
3220
|
isReactNative?: boolean
|
|
3145
|
-
supportsCSS?: boolean
|
|
3146
3221
|
/** What style format the driver expects as input: 'css' (CSS variables) or 'value' (resolved values) */
|
|
3147
3222
|
inputStyle?: 'css' | 'value'
|
|
3148
3223
|
/** How the driver outputs styles: 'css' (className-based) or 'inline' (style object) */
|
|
3149
3224
|
outputStyle?: 'css' | 'inline'
|
|
3150
|
-
|
|
3225
|
+
needsCustomComponent?: boolean
|
|
3151
3226
|
avoidReRenders?: boolean
|
|
3152
3227
|
onMount?: () => void
|
|
3153
3228
|
/** When true, this is a stub driver with no real animation support */
|
|
3154
3229
|
isStub?: boolean
|
|
3155
|
-
/** When true, the driver uses CSS classes for animations (doesn't need inline styles) */
|
|
3156
|
-
classNameAnimation?: boolean
|
|
3157
3230
|
useAnimations: UseAnimationHook
|
|
3158
3231
|
usePresence: () => UsePresenceResult
|
|
3159
3232
|
ResetPresence: (props: {
|
|
@@ -3162,6 +3235,7 @@ export type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {
|
|
|
3162
3235
|
}) => React.ReactNode
|
|
3163
3236
|
useAnimatedNumber: UseAnimatedNumber
|
|
3164
3237
|
useAnimatedNumberStyle: UseAnimatedNumberStyle
|
|
3238
|
+
useAnimatedNumbersStyle?: UseAnimatedNumbersStyle
|
|
3165
3239
|
useAnimatedNumberReaction: UseAnimatedNumberReaction
|
|
3166
3240
|
animations: A
|
|
3167
3241
|
View?: any
|
|
@@ -3170,7 +3244,10 @@ export type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {
|
|
|
3170
3244
|
|
|
3171
3245
|
export type UseAnimationProps = TamaguiComponentPropsBase & Record<string, any>
|
|
3172
3246
|
|
|
3173
|
-
type UseStyleListener = (
|
|
3247
|
+
type UseStyleListener = (
|
|
3248
|
+
nextStyle: Record<string, unknown>,
|
|
3249
|
+
effectiveTransition?: TransitionProp | null
|
|
3250
|
+
) => void
|
|
3174
3251
|
export type UseStyleEmitter = (cb: UseStyleListener) => void
|
|
3175
3252
|
|
|
3176
3253
|
export type UseAnimationHook = (props: {
|
|
@@ -3214,6 +3291,10 @@ export type GetStyleResult = {
|
|
|
3214
3291
|
mediaGroups?: Set<string>
|
|
3215
3292
|
// Style values that override context props (for issues #3670, #3676)
|
|
3216
3293
|
overriddenContextProps?: Record<string, any>
|
|
3294
|
+
// Transitions extracted from pseudo-style props (e.g., hoverStyle.transition)
|
|
3295
|
+
pseudoTransitions?: PseudoTransitions | null
|
|
3296
|
+
// Effective transition to use (accounts for entering pseudo states)
|
|
3297
|
+
effectiveTransition?: TransitionProp | null
|
|
3217
3298
|
}
|
|
3218
3299
|
|
|
3219
3300
|
export type ClassNamesObject = Record<string, string>
|
|
@@ -5,19 +5,35 @@ import { getSetting } from '../config'
|
|
|
5
5
|
import { ComponentContext } from '../contexts/ComponentContext'
|
|
6
6
|
import { stopAccumulatingRules } from '../helpers/insertStyleRule'
|
|
7
7
|
import { updateMediaListeners } from '../hooks/useMedia'
|
|
8
|
+
import { resolveAnimationDriver } from '../helpers/resolveAnimationDriver'
|
|
8
9
|
import type { AnimationDriver, TamaguiProviderProps } from '../types'
|
|
9
10
|
import { TamaguiRoot } from './TamaguiRoot'
|
|
10
11
|
import { ThemeProvider } from './ThemeProvider'
|
|
11
12
|
|
|
13
|
+
// cache first theme key per config to avoid Object.keys allocation on every render
|
|
14
|
+
let _cachedFirstKey: string | undefined
|
|
15
|
+
let _cachedConfig: any
|
|
16
|
+
|
|
17
|
+
function firstThemeKey(config: any): string | undefined {
|
|
18
|
+
if (config !== _cachedConfig) {
|
|
19
|
+
_cachedConfig = config
|
|
20
|
+
_cachedFirstKey = config?.themes ? Object.keys(config.themes)[0] : undefined
|
|
21
|
+
}
|
|
22
|
+
return _cachedFirstKey
|
|
23
|
+
}
|
|
24
|
+
|
|
12
25
|
export function TamaguiProvider({
|
|
13
26
|
children,
|
|
14
27
|
disableInjectCSS,
|
|
15
28
|
config,
|
|
16
29
|
className,
|
|
17
|
-
defaultTheme,
|
|
30
|
+
defaultTheme: defaultThemeProp,
|
|
18
31
|
reset,
|
|
19
32
|
insets,
|
|
20
33
|
}: TamaguiProviderProps) {
|
|
34
|
+
// fall back to first theme when defaultTheme is null/undefined
|
|
35
|
+
// (e.g. useColorScheme() returns null on first render in RN 0.83+)
|
|
36
|
+
const defaultTheme = defaultThemeProp || firstThemeKey(config) || 'light'
|
|
21
37
|
useIsomorphicLayoutEffect(() => {
|
|
22
38
|
stopAccumulatingRules()
|
|
23
39
|
updateMediaListeners()
|
|
@@ -29,31 +45,28 @@ export function TamaguiProvider({
|
|
|
29
45
|
)
|
|
30
46
|
|
|
31
47
|
// Get the default animation driver from config
|
|
32
|
-
// animations
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
return animations
|
|
40
|
-
}, [config?.animations])
|
|
48
|
+
// config.animations is already normalized to the default driver in createTamagui
|
|
49
|
+
// resolveAnimationDriver handles edge cases where raw multi-driver object leaks through
|
|
50
|
+
const defaultAnimationDriver: AnimationDriver | null = React.useMemo(
|
|
51
|
+
() => resolveAnimationDriver(config?.animations),
|
|
52
|
+
[config?.animations]
|
|
53
|
+
)
|
|
41
54
|
|
|
42
55
|
useEffect(() => {
|
|
43
56
|
defaultAnimationDriver?.onMount?.()
|
|
44
57
|
}, [])
|
|
45
58
|
|
|
46
59
|
let contents = (
|
|
47
|
-
<
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
>
|
|
52
|
-
<
|
|
60
|
+
<ComponentContext.Provider
|
|
61
|
+
animationDriver={defaultAnimationDriver}
|
|
62
|
+
insets={memoizedInsets}
|
|
63
|
+
>
|
|
64
|
+
<ThemeProvider defaultTheme={defaultTheme} reset={reset} className={className}>
|
|
65
|
+
<TamaguiRoot theme={defaultTheme} isRootRoot>
|
|
53
66
|
{children}
|
|
54
|
-
</
|
|
55
|
-
</
|
|
56
|
-
</
|
|
67
|
+
</TamaguiRoot>
|
|
68
|
+
</ThemeProvider>
|
|
69
|
+
</ComponentContext.Provider>
|
|
57
70
|
)
|
|
58
71
|
|
|
59
72
|
if (getSetting('disableSSR')) {
|
|
@@ -80,5 +93,3 @@ export function TamaguiProvider({
|
|
|
80
93
|
</>
|
|
81
94
|
)
|
|
82
95
|
}
|
|
83
|
-
|
|
84
|
-
TamaguiProvider['displayName'] = 'TamaguiProvider'
|
|
@@ -1,17 +1,29 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { getConfig } from '../config'
|
|
3
|
+
import { ThemeName } from '../types'
|
|
4
|
+
import { Theme } from './Theme'
|
|
5
|
+
|
|
6
|
+
let defaultFontClass = ''
|
|
3
7
|
|
|
4
8
|
/**
|
|
5
9
|
* Applies default font class and CSS variable inheritance via display:contents.
|
|
6
10
|
* Used by TamaguiProvider at the root and by portals to re-establish font scope.
|
|
7
11
|
* Pass trackMount to also handle the t_unmounted class for CSS animation gating.
|
|
8
12
|
*/
|
|
9
|
-
export function TamaguiRoot(
|
|
13
|
+
export function TamaguiRoot({
|
|
14
|
+
children,
|
|
15
|
+
theme,
|
|
16
|
+
isRootRoot,
|
|
17
|
+
passThrough,
|
|
18
|
+
style,
|
|
19
|
+
}: {
|
|
10
20
|
children: React.ReactNode
|
|
11
|
-
|
|
21
|
+
theme: ThemeName
|
|
22
|
+
isRootRoot?: boolean
|
|
23
|
+
passThrough?: boolean
|
|
12
24
|
style?: React.CSSProperties
|
|
13
25
|
}) {
|
|
14
|
-
const [mounted, setMounted] = React.useState(!
|
|
26
|
+
const [mounted, setMounted] = React.useState(!isRootRoot)
|
|
15
27
|
|
|
16
28
|
React.useEffect(() => {
|
|
17
29
|
if (!mounted) {
|
|
@@ -19,20 +31,34 @@ export function TamaguiRoot(props: {
|
|
|
19
31
|
}
|
|
20
32
|
}, [])
|
|
21
33
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
34
|
+
// cache the font class name
|
|
35
|
+
if (!defaultFontClass) {
|
|
36
|
+
const config = getConfig()
|
|
37
|
+
const defaultFont = config.defaultFont
|
|
38
|
+
if (defaultFont) {
|
|
39
|
+
defaultFontClass = `font_${defaultFont}`
|
|
40
|
+
}
|
|
29
41
|
}
|
|
30
42
|
|
|
31
|
-
const
|
|
43
|
+
const contents = (
|
|
44
|
+
<span
|
|
45
|
+
style={style}
|
|
46
|
+
// font_body (or default font) sets all font properties via shared CSS rule
|
|
47
|
+
className={`_dsp_contents ${mounted ? '' : 't_unmounted'} ${defaultFontClass}`}
|
|
48
|
+
>
|
|
49
|
+
{children}
|
|
50
|
+
</span>
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
// at root, ThemeProvider already applied theme - skip re-wrapping
|
|
54
|
+
// for portals/modals, we re-thread the theme so each root gets the right className setup
|
|
55
|
+
if (isRootRoot) {
|
|
56
|
+
return contents
|
|
57
|
+
}
|
|
32
58
|
|
|
33
59
|
return (
|
|
34
|
-
<
|
|
35
|
-
{
|
|
36
|
-
</
|
|
60
|
+
<Theme passThrough={passThrough} contain forceClassName name={theme}>
|
|
61
|
+
{contents}
|
|
62
|
+
</Theme>
|
|
37
63
|
)
|
|
38
64
|
}
|
package/src/views/Text.tsx
CHANGED
|
@@ -35,18 +35,13 @@ export const Text = createComponent<
|
|
|
35
35
|
|
|
36
36
|
defaultProps:
|
|
37
37
|
process.env.TAMAGUI_TARGET === 'web'
|
|
38
|
-
?
|
|
39
|
-
display: 'inline', // display: inline breaks css transform styles
|
|
40
|
-
boxSizing: 'border-box',
|
|
41
|
-
wordWrap: 'break-word',
|
|
42
|
-
whiteSpace: 'pre-wrap',
|
|
43
|
-
margin: 0,
|
|
44
|
-
}
|
|
38
|
+
? undefined
|
|
45
39
|
: {
|
|
46
40
|
suppressHighlighting: true,
|
|
47
41
|
},
|
|
48
42
|
|
|
49
43
|
inlineWhenUnflattened: new Set(['fontFamily']),
|
|
44
|
+
inlineProps: new Set(['maxFontSizeMultiplier']),
|
|
50
45
|
|
|
51
46
|
variants: {
|
|
52
47
|
...(process.env.TAMAGUI_TARGET === 'web' && {
|
|
@@ -56,6 +51,7 @@ export const Text = createComponent<
|
|
|
56
51
|
':number': (numberOfLines) =>
|
|
57
52
|
numberOfLines >= 1
|
|
58
53
|
? {
|
|
54
|
+
maxWidth: '100%',
|
|
59
55
|
WebkitLineClamp: numberOfLines,
|
|
60
56
|
WebkitBoxOrient: 'vertical',
|
|
61
57
|
display: '-webkit-box',
|
|
@@ -75,5 +71,3 @@ export const Text = createComponent<
|
|
|
75
71
|
...stylePropsTextOnly,
|
|
76
72
|
},
|
|
77
73
|
})
|
|
78
|
-
|
|
79
|
-
Text['displayName'] = 'Text'
|
package/src/views/Theme.tsx
CHANGED
|
@@ -15,6 +15,8 @@ import { ThemeDebug } from './ThemeDebug'
|
|
|
15
15
|
type ThemeComponentPropsOnly = ThemeProps & { passThrough?: boolean; contain?: boolean }
|
|
16
16
|
|
|
17
17
|
export const Theme = forwardRef(function Theme(props: ThemeComponentPropsOnly, ref) {
|
|
18
|
+
'use no memo'
|
|
19
|
+
|
|
18
20
|
// @ts-expect-error only for internal views
|
|
19
21
|
if (props.disable) {
|
|
20
22
|
return props.children
|
|
@@ -6,6 +6,8 @@ import type { ThemeProviderProps } from '../types'
|
|
|
6
6
|
import { Theme } from './Theme'
|
|
7
7
|
|
|
8
8
|
export const ThemeProvider = (props: ThemeProviderProps) => {
|
|
9
|
+
'use no memo'
|
|
10
|
+
|
|
9
11
|
const addThemeClassName = getSetting('addThemeClassName')
|
|
10
12
|
|
|
11
13
|
// ensure theme is attached to root body node as well to work with modals by default
|
|
@@ -14,7 +16,7 @@ export const ThemeProvider = (props: ThemeProviderProps) => {
|
|
|
14
16
|
if (addThemeClassName === false) return
|
|
15
17
|
const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`
|
|
16
18
|
const target =
|
|
17
|
-
getSetting('addThemeClassName') === '
|
|
19
|
+
getSetting('addThemeClassName') === 'html'
|
|
18
20
|
? document.documentElement
|
|
19
21
|
: document.body
|
|
20
22
|
target.classList.add(cn)
|
package/src/views/View.tsx
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { validStyles } from '@tamagui/helpers'
|
|
2
2
|
|
|
3
|
-
import { viewDefaultStyles } from '../constants/constants'
|
|
4
3
|
import { createComponent } from '../createComponent'
|
|
5
4
|
import type {
|
|
6
5
|
StackNonStyleProps,
|
|
@@ -22,6 +21,5 @@ export const View = createComponent<
|
|
|
22
21
|
ViewStylePropsBase
|
|
23
22
|
>({
|
|
24
23
|
acceptsClassName: true,
|
|
25
|
-
defaultProps: viewDefaultStyles,
|
|
26
24
|
validStyles,
|
|
27
25
|
})
|