@tamagui/web 3.0.0-beta.661.1 → 3.0.0-beta.719.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Tamagui.cjs +0 -1
- package/dist/cjs/Tamagui.native.cjs +0 -1
- package/dist/cjs/Tamagui.native.js +0 -1
- package/dist/cjs/Tamagui.native.js.map +1 -1
- package/dist/cjs/_withNativeStyle.cjs +0 -1
- package/dist/cjs/_withNativeStyle.native.cjs +0 -1
- package/dist/cjs/_withNativeStyle.native.js +0 -1
- package/dist/cjs/_withNativeStyle.native.js.map +1 -1
- package/dist/cjs/_withStableStyle.cjs +0 -1
- package/dist/cjs/_withStableStyle.native.cjs +0 -1
- package/dist/cjs/_withStableStyle.native.js +0 -1
- package/dist/cjs/_withStableStyle.native.js.map +1 -1
- package/dist/cjs/config.cjs +7 -1
- package/dist/cjs/config.native.cjs +7 -1
- package/dist/cjs/config.native.js +7 -1
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/constants/accessibilityDirectMap.cjs +0 -1
- package/dist/cjs/constants/accessibilityDirectMap.native.cjs +0 -1
- package/dist/cjs/constants/accessibilityDirectMap.native.js +0 -1
- package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
- package/dist/cjs/constants/constants.cjs +0 -1
- package/dist/cjs/constants/constants.native.cjs +0 -1
- package/dist/cjs/constants/constants.native.js +0 -1
- package/dist/cjs/constants/constants.native.js.map +1 -1
- package/dist/cjs/constants/isDevTools.cjs +0 -1
- package/dist/cjs/constants/isDevTools.native.cjs +0 -1
- package/dist/cjs/constants/isDevTools.native.js +0 -1
- package/dist/cjs/constants/isDevTools.native.js.map +1 -1
- package/dist/cjs/contexts/ComponentContext.cjs +0 -1
- package/dist/cjs/contexts/ComponentContext.native.cjs +0 -1
- package/dist/cjs/contexts/ComponentContext.native.js +0 -1
- package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
- package/dist/cjs/contexts/GroupContext.cjs +0 -1
- package/dist/cjs/contexts/GroupContext.native.cjs +0 -1
- package/dist/cjs/contexts/GroupContext.native.js +0 -1
- package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
- package/dist/cjs/createComponent.cjs +0 -1
- package/dist/cjs/createComponent.native.cjs +0 -1
- package/dist/cjs/createComponent.native.js +0 -1
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createFont.cjs +0 -1
- package/dist/cjs/createFont.native.cjs +0 -1
- package/dist/cjs/createFont.native.js +0 -1
- package/dist/cjs/createFont.native.js.map +1 -1
- package/dist/cjs/createShorthands.cjs +0 -1
- package/dist/cjs/createShorthands.native.cjs +0 -1
- package/dist/cjs/createShorthands.native.js +0 -1
- package/dist/cjs/createShorthands.native.js.map +1 -1
- package/dist/cjs/createStyledHOC.cjs +0 -1
- package/dist/cjs/createStyledHOC.native.cjs +0 -1
- package/dist/cjs/createStyledHOC.native.js +0 -1
- package/dist/cjs/createStyledHOC.native.js.map +1 -1
- package/dist/cjs/createTamagui.cjs +2 -3
- package/dist/cjs/createTamagui.native.cjs +2 -3
- package/dist/cjs/createTamagui.native.js +2 -3
- package/dist/cjs/createTamagui.native.js.map +1 -1
- package/dist/cjs/createTokens.cjs +0 -1
- package/dist/cjs/createTokens.native.cjs +0 -1
- package/dist/cjs/createTokens.native.js +0 -1
- package/dist/cjs/createTokens.native.js.map +1 -1
- package/dist/cjs/createVariable.cjs +0 -1
- package/dist/cjs/createVariable.native.cjs +0 -1
- package/dist/cjs/createVariable.native.js +0 -1
- package/dist/cjs/createVariable.native.js.map +1 -1
- package/dist/cjs/createVariables.cjs +0 -1
- package/dist/cjs/createVariables.native.cjs +0 -1
- package/dist/cjs/createVariables.native.js +0 -1
- package/dist/cjs/createVariables.native.js.map +1 -1
- package/dist/cjs/defaultComponentState.cjs +0 -1
- package/dist/cjs/defaultComponentState.native.cjs +0 -1
- package/dist/cjs/defaultComponentState.native.js +0 -1
- package/dist/cjs/defaultComponentState.native.js.map +1 -1
- package/dist/cjs/dom/adapters.cjs +0 -1
- package/dist/cjs/dom/adapters.native.cjs +0 -1
- package/dist/cjs/dom/adapters.native.js +0 -1
- package/dist/cjs/dom/adapters.native.js.map +1 -1
- package/dist/cjs/dom/contract.cjs +0 -1
- package/dist/cjs/dom/contract.native.cjs +0 -1
- package/dist/cjs/dom/contract.native.js +0 -1
- package/dist/cjs/dom/contract.native.js.map +1 -1
- package/dist/cjs/dom/domEventProps.native.cjs +0 -1
- package/dist/cjs/dom/domEventProps.native.js +0 -1
- package/dist/cjs/dom/domEventProps.native.js.map +1 -1
- package/dist/cjs/dom/html.cjs +0 -1
- package/dist/cjs/dom/html.native.cjs +0 -1
- package/dist/cjs/dom/html.native.js +0 -1
- package/dist/cjs/dom/html.native.js.map +1 -1
- package/dist/cjs/dom/htmlRuntime.native.cjs +0 -1
- package/dist/cjs/dom/htmlRuntime.native.js +0 -1
- package/dist/cjs/dom/htmlRuntime.native.js.map +1 -1
- package/dist/cjs/dom/index.cjs +0 -1
- package/dist/cjs/dom/index.native.cjs +0 -1
- package/dist/cjs/dom/index.native.js +0 -1
- package/dist/cjs/dom/index.native.js.map +1 -1
- package/dist/cjs/dom/primitives.native.cjs +2 -3
- package/dist/cjs/dom/primitives.native.js +2 -3
- package/dist/cjs/dom/primitives.native.js.map +1 -1
- package/dist/cjs/dom/standalone.cjs +0 -1
- package/dist/cjs/dom/standalone.native.cjs +0 -1
- package/dist/cjs/dom/standalone.native.js +0 -1
- package/dist/cjs/dom/standalone.native.js.map +1 -1
- package/dist/cjs/dom/standaloneHtml.cjs +0 -1
- package/dist/cjs/dom/standaloneHtml.native.cjs +0 -1
- package/dist/cjs/dom/standaloneHtml.native.js +0 -1
- package/dist/cjs/dom/standaloneHtml.native.js.map +1 -1
- package/dist/cjs/dom/styleTypes.cjs +0 -1
- package/dist/cjs/dom/styleTypes.native.cjs +0 -1
- package/dist/cjs/dom/styleTypes.native.js +0 -1
- package/dist/cjs/dom/styleTypes.native.js.map +1 -1
- package/dist/cjs/eventDetails.cjs +0 -1
- package/dist/cjs/eventDetails.native.cjs +0 -1
- package/dist/cjs/eventDetails.native.js +0 -1
- package/dist/cjs/eventDetails.native.js.map +1 -1
- package/dist/cjs/eventHandling.cjs +0 -1
- package/dist/cjs/eventHandling.native.cjs +0 -1
- package/dist/cjs/eventHandling.native.js +0 -1
- package/dist/cjs/eventHandling.native.js.map +1 -1
- package/dist/cjs/helpers/componentDisplayName.cjs +0 -1
- package/dist/cjs/helpers/componentDisplayName.native.cjs +0 -1
- package/dist/cjs/helpers/componentDisplayName.native.js +0 -1
- package/dist/cjs/helpers/componentDisplayName.native.js.map +1 -1
- package/dist/cjs/helpers/configVariables.cjs +79 -0
- package/dist/cjs/helpers/configVariables.native.cjs +86 -0
- package/dist/cjs/helpers/configVariables.native.js +88 -0
- package/dist/cjs/helpers/configVariables.native.js.map +1 -0
- package/dist/cjs/helpers/consoleLog.native.cjs +0 -1
- package/dist/cjs/helpers/consoleLog.native.js +0 -1
- package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
- package/dist/cjs/helpers/createDesignSystem.cjs +0 -1
- package/dist/cjs/helpers/createDesignSystem.native.cjs +0 -1
- package/dist/cjs/helpers/createDesignSystem.native.js +0 -1
- package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/cjs/helpers/createStyledContext.cjs +0 -1
- package/dist/cjs/helpers/createStyledContext.native.cjs +0 -1
- package/dist/cjs/helpers/createStyledContext.native.js +0 -1
- package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
- package/dist/cjs/helpers/defaultAnimationDriver.cjs +1 -6
- package/dist/cjs/helpers/defaultAnimationDriver.native.cjs +0 -13
- package/dist/cjs/helpers/defaultAnimationDriver.native.js +0 -13
- package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
- package/dist/cjs/helpers/defaultOffset.cjs +0 -1
- package/dist/cjs/helpers/defaultOffset.native.cjs +0 -1
- package/dist/cjs/helpers/defaultOffset.native.js +0 -1
- package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
- package/dist/cjs/helpers/directStyle.cjs +257 -283
- package/dist/cjs/helpers/directStyle.native.cjs +273 -305
- package/dist/cjs/helpers/directStyle.native.js +273 -305
- package/dist/cjs/helpers/directStyle.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyle.cjs +0 -1
- package/dist/cjs/helpers/expandStyle.native.cjs +0 -1
- package/dist/cjs/helpers/expandStyle.native.js +0 -1
- package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyles.cjs +0 -1
- package/dist/cjs/helpers/expandStyles.native.cjs +0 -1
- package/dist/cjs/helpers/expandStyles.native.js +0 -1
- package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
- package/dist/cjs/helpers/extractPseudoState.cjs +0 -1
- package/dist/cjs/helpers/extractPseudoState.native.cjs +0 -1
- package/dist/cjs/helpers/extractPseudoState.native.js +0 -1
- package/dist/cjs/helpers/extractPseudoState.native.js.map +1 -1
- package/dist/cjs/helpers/formatDiagnostic.cjs +3 -1
- package/dist/cjs/helpers/formatDiagnostic.native.cjs +3 -1
- package/dist/cjs/helpers/formatDiagnostic.native.js +3 -1
- package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -1
- package/dist/cjs/helpers/frontendProgram.cjs +0 -1
- package/dist/cjs/helpers/frontendProgram.native.cjs +0 -1
- package/dist/cjs/helpers/frontendProgram.native.js +0 -1
- package/dist/cjs/helpers/frontendProgram.native.js.map +1 -1
- package/dist/cjs/helpers/getCSSStylesAtomic.cjs +5 -2
- package/dist/cjs/helpers/getCSSStylesAtomic.native.cjs +0 -1
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js +0 -1
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
- package/dist/cjs/helpers/getDefaultProps.cjs +0 -1
- package/dist/cjs/helpers/getDefaultProps.native.cjs +0 -1
- package/dist/cjs/helpers/getDefaultProps.native.js +0 -1
- package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
- package/dist/cjs/helpers/getDynamicVal.cjs +0 -1
- package/dist/cjs/helpers/getDynamicVal.native.cjs +0 -1
- package/dist/cjs/helpers/getDynamicVal.native.js +0 -1
- package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
- package/dist/cjs/helpers/getExpandedShorthands.cjs +0 -1
- package/dist/cjs/helpers/getExpandedShorthands.native.cjs +0 -1
- package/dist/cjs/helpers/getExpandedShorthands.native.js +0 -1
- package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
- package/dist/cjs/helpers/getFontLanguage.cjs +0 -1
- package/dist/cjs/helpers/getFontLanguage.native.cjs +0 -1
- package/dist/cjs/helpers/getFontLanguage.native.js +0 -1
- package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
- package/dist/cjs/helpers/getShorthandValue.cjs +0 -1
- package/dist/cjs/helpers/getShorthandValue.native.cjs +0 -1
- package/dist/cjs/helpers/getShorthandValue.native.js +0 -1
- package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.cjs +0 -8
- package/dist/cjs/helpers/getSplitStyles.native.cjs +0 -8
- package/dist/cjs/helpers/getSplitStyles.native.js +0 -8
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.cjs +0 -1
- package/dist/cjs/helpers/getThemeCSSRules.native.cjs +0 -1
- package/dist/cjs/helpers/getThemeCSSRules.native.js +0 -1
- package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
- package/dist/cjs/helpers/getVariantExtras.cjs +0 -1
- package/dist/cjs/helpers/getVariantExtras.native.cjs +0 -1
- package/dist/cjs/helpers/getVariantExtras.native.js +0 -1
- package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
- package/dist/cjs/helpers/grammarConfig.cjs +63 -14
- package/dist/cjs/helpers/grammarConfig.native.cjs +84 -18
- package/dist/cjs/helpers/grammarConfig.native.js +84 -18
- package/dist/cjs/helpers/grammarConfig.native.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.cjs +0 -1
- package/dist/cjs/helpers/insertStyleRule.native.cjs +0 -1
- package/dist/cjs/helpers/insertStyleRule.native.js +0 -1
- package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/cjs/helpers/isObj.cjs +0 -1
- package/dist/cjs/helpers/isObj.native.cjs +0 -1
- package/dist/cjs/helpers/isObj.native.js +0 -1
- package/dist/cjs/helpers/isObj.native.js.map +1 -1
- package/dist/cjs/helpers/isTamaguiComponent.cjs +0 -1
- package/dist/cjs/helpers/isTamaguiComponent.native.cjs +0 -1
- package/dist/cjs/helpers/isTamaguiComponent.native.js +0 -1
- package/dist/cjs/helpers/isTamaguiComponent.native.js.map +1 -1
- package/dist/cjs/helpers/isTamaguiElement.cjs +0 -1
- package/dist/cjs/helpers/isTamaguiElement.native.cjs +0 -1
- package/dist/cjs/helpers/isTamaguiElement.native.js +0 -1
- package/dist/cjs/helpers/isTamaguiElement.native.js.map +1 -1
- package/dist/cjs/helpers/log.cjs +0 -1
- package/dist/cjs/helpers/log.native.cjs +0 -1
- package/dist/cjs/helpers/log.native.js +0 -1
- package/dist/cjs/helpers/log.native.js.map +1 -1
- package/dist/cjs/helpers/mainThreadPressEvents.cjs +0 -1
- package/dist/cjs/helpers/mainThreadPressEvents.native.cjs +0 -1
- package/dist/cjs/helpers/mainThreadPressEvents.native.js +0 -1
- package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/cjs/helpers/matchMedia.cjs +0 -1
- package/dist/cjs/helpers/matchMedia.native.cjs +0 -1
- package/dist/cjs/helpers/matchMedia.native.js +0 -1
- package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
- package/dist/cjs/helpers/mediaObjectToString.cjs +0 -1
- package/dist/cjs/helpers/mediaObjectToString.native.cjs +0 -1
- package/dist/cjs/helpers/mediaObjectToString.native.js +0 -1
- package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -1
- package/dist/cjs/helpers/mediaState.cjs +0 -1
- package/dist/cjs/helpers/mediaState.native.cjs +0 -1
- package/dist/cjs/helpers/mediaState.native.js +0 -1
- package/dist/cjs/helpers/mediaState.native.js.map +1 -1
- package/dist/cjs/helpers/mergeProps.cjs +0 -1
- package/dist/cjs/helpers/mergeProps.native.cjs +0 -1
- package/dist/cjs/helpers/mergeProps.native.js +0 -1
- package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeRenderElementProps.cjs +0 -1
- package/dist/cjs/helpers/mergeRenderElementProps.native.cjs +0 -1
- package/dist/cjs/helpers/mergeRenderElementProps.native.js +0 -1
- package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeSlotStyleProps.cjs +0 -1
- package/dist/cjs/helpers/mergeSlotStyleProps.native.cjs +0 -1
- package/dist/cjs/helpers/mergeSlotStyleProps.native.js +0 -1
- package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeVariants.cjs +0 -1
- package/dist/cjs/helpers/mergeVariants.native.cjs +0 -1
- package/dist/cjs/helpers/mergeVariants.native.js +0 -1
- package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
- package/dist/cjs/helpers/nativeOnlyProps.cjs +0 -1
- package/dist/cjs/helpers/nativeOnlyProps.native.cjs +0 -1
- package/dist/cjs/helpers/nativeOnlyProps.native.js +0 -1
- package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
- package/dist/cjs/helpers/nativeStyleEngine.cjs +0 -1
- package/dist/cjs/helpers/nativeStyleEngine.native.cjs +0 -1
- package/dist/cjs/helpers/nativeStyleEngine.native.js +0 -1
- package/dist/cjs/helpers/nativeStyleEngine.native.js.map +1 -1
- package/dist/cjs/helpers/nativeTransitionTarget.cjs +0 -1
- package/dist/cjs/helpers/nativeTransitionTarget.native.cjs +0 -1
- package/dist/cjs/helpers/nativeTransitionTarget.native.js +0 -1
- package/dist/cjs/helpers/nativeTransitionTarget.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeColor.cjs +0 -1
- package/dist/cjs/helpers/normalizeColor.native.cjs +0 -1
- package/dist/cjs/helpers/normalizeColor.native.js +0 -1
- package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeShadow.cjs +0 -1
- package/dist/cjs/helpers/normalizeShadow.native.cjs +0 -1
- package/dist/cjs/helpers/normalizeShadow.native.js +0 -1
- package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeStyle.cjs +0 -1
- package/dist/cjs/helpers/normalizeStyle.native.cjs +0 -1
- package/dist/cjs/helpers/normalizeStyle.native.js +0 -1
- package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeStylePropKeys.cjs +0 -1
- package/dist/cjs/helpers/normalizeStylePropKeys.native.cjs +0 -1
- package/dist/cjs/helpers/normalizeStylePropKeys.native.js +0 -1
- package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.cjs +0 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.native.cjs +0 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js +0 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/cjs/helpers/noteOnce.cjs +0 -1
- package/dist/cjs/helpers/noteOnce.native.cjs +0 -1
- package/dist/cjs/helpers/noteOnce.native.js +0 -1
- package/dist/cjs/helpers/noteOnce.native.js.map +1 -1
- package/dist/cjs/helpers/objectIdentityKey.cjs +0 -1
- package/dist/cjs/helpers/objectIdentityKey.native.cjs +0 -1
- package/dist/cjs/helpers/objectIdentityKey.native.js +0 -1
- package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/cjs/helpers/parseBorderShorthand.cjs +0 -1
- package/dist/cjs/helpers/parseBorderShorthand.native.cjs +0 -1
- package/dist/cjs/helpers/parseBorderShorthand.native.js +0 -1
- package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
- package/dist/cjs/helpers/parseNativeStyle.native.cjs +0 -1
- package/dist/cjs/helpers/parseNativeStyle.native.js +0 -1
- package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/parseNativeTransform.native.cjs +0 -1
- package/dist/cjs/helpers/parseNativeTransform.native.js +0 -1
- package/dist/cjs/helpers/parseNativeTransform.native.js.map +1 -1
- package/dist/cjs/helpers/parseOutlineShorthand.cjs +0 -1
- package/dist/cjs/helpers/parseOutlineShorthand.native.cjs +0 -1
- package/dist/cjs/helpers/parseOutlineShorthand.native.js +0 -1
- package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -1
- package/dist/cjs/helpers/pointerEvents.cjs +0 -1
- package/dist/cjs/helpers/pointerEvents.native.cjs +0 -1
- package/dist/cjs/helpers/pointerEvents.native.js +0 -1
- package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
- package/dist/cjs/helpers/propMapper.cjs +28 -37
- package/dist/cjs/helpers/propMapper.native.cjs +28 -37
- package/dist/cjs/helpers/propMapper.native.js +28 -37
- package/dist/cjs/helpers/propMapper.native.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeToParents.cjs +0 -1
- package/dist/cjs/helpers/proxyThemeToParents.native.cjs +0 -1
- package/dist/cjs/helpers/proxyThemeToParents.native.js +0 -1
- package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/cjs/helpers/registerCSSVariable.cjs +0 -1
- package/dist/cjs/helpers/registerCSSVariable.native.cjs +0 -1
- package/dist/cjs/helpers/registerCSSVariable.native.js +0 -1
- package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/cjs/helpers/resolveAnimationDriver.cjs +0 -1
- package/dist/cjs/helpers/resolveAnimationDriver.native.cjs +0 -1
- package/dist/cjs/helpers/resolveAnimationDriver.native.js +0 -1
- package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
- package/dist/cjs/helpers/resolveRem.cjs +0 -1
- package/dist/cjs/helpers/resolveRem.native.cjs +0 -1
- package/dist/cjs/helpers/resolveRem.native.js +0 -1
- package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSafeArea.cjs +0 -1
- package/dist/cjs/helpers/resolveSafeArea.native.cjs +0 -1
- package/dist/cjs/helpers/resolveSafeArea.native.js +0 -1
- package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.cjs +0 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.native.cjs +0 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.native.js +0 -1
- package/dist/cjs/helpers/resolveSafeAreaVariable.native.js.map +1 -1
- package/dist/cjs/helpers/resolveVariableValue.cjs +0 -1
- package/dist/cjs/helpers/resolveVariableValue.native.cjs +0 -1
- package/dist/cjs/helpers/resolveVariableValue.native.js +0 -1
- package/dist/cjs/helpers/resolveVariableValue.native.js.map +1 -1
- package/dist/cjs/helpers/setElementProps.cjs +0 -1
- package/dist/cjs/helpers/setElementProps.native.cjs +0 -1
- package/dist/cjs/helpers/setElementProps.native.js +0 -1
- package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
- package/dist/cjs/helpers/skipProps.cjs +0 -1
- package/dist/cjs/helpers/skipProps.native.cjs +0 -1
- package/dist/cjs/helpers/skipProps.native.js +0 -1
- package/dist/cjs/helpers/skipProps.native.js.map +1 -1
- package/dist/cjs/helpers/sortString.cjs +0 -1
- package/dist/cjs/helpers/sortString.native.cjs +0 -1
- package/dist/cjs/helpers/sortString.native.js +0 -1
- package/dist/cjs/helpers/sortString.native.js.map +1 -1
- package/dist/cjs/helpers/styleFrontend.cjs +0 -1
- package/dist/cjs/helpers/styleFrontend.native.cjs +0 -1
- package/dist/cjs/helpers/styleFrontend.native.js +0 -1
- package/dist/cjs/helpers/styleFrontend.native.js.map +1 -1
- package/dist/cjs/helpers/styleOriginalValues.cjs +0 -1
- package/dist/cjs/helpers/styleOriginalValues.native.cjs +0 -1
- package/dist/cjs/helpers/styleOriginalValues.native.js +0 -1
- package/dist/cjs/helpers/styleOriginalValues.native.js.map +1 -1
- package/dist/cjs/helpers/styleProvenance.cjs +0 -1
- package/dist/cjs/helpers/styleProvenance.native.cjs +0 -1
- package/dist/cjs/helpers/styleProvenance.native.js +0 -1
- package/dist/cjs/helpers/styleProvenance.native.js.map +1 -1
- package/dist/cjs/helpers/subscribeToContextGroup.cjs +0 -1
- package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +0 -1
- package/dist/cjs/helpers/subscribeToContextGroup.native.js +0 -1
- package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/cjs/helpers/themeRef.cjs +0 -1
- package/dist/cjs/helpers/themeRef.native.cjs +0 -1
- package/dist/cjs/helpers/themeRef.native.js +0 -1
- package/dist/cjs/helpers/themeRef.native.js.map +1 -1
- package/dist/cjs/helpers/themeUpdateState.cjs +24 -0
- package/dist/cjs/helpers/themeUpdateState.native.cjs +26 -0
- package/dist/cjs/helpers/themeUpdateState.native.js +28 -0
- package/dist/cjs/helpers/themeUpdateState.native.js.map +1 -0
- package/dist/cjs/helpers/themeable.cjs +0 -1
- package/dist/cjs/helpers/themeable.native.cjs +0 -1
- package/dist/cjs/helpers/themeable.native.js +0 -1
- package/dist/cjs/helpers/themeable.native.js.map +1 -1
- package/dist/cjs/helpers/themes.cjs +0 -1
- package/dist/cjs/helpers/themes.native.cjs +0 -1
- package/dist/cjs/helpers/themes.native.js +0 -1
- package/dist/cjs/helpers/themes.native.js.map +1 -1
- package/dist/cjs/helpers/timer.cjs +0 -1
- package/dist/cjs/helpers/timer.native.cjs +0 -1
- package/dist/cjs/helpers/timer.native.js +0 -1
- package/dist/cjs/helpers/timer.native.js.map +1 -1
- package/dist/cjs/helpers/tokenCategories.cjs +0 -1
- package/dist/cjs/helpers/tokenCategories.native.cjs +0 -1
- package/dist/cjs/helpers/tokenCategories.native.js +0 -1
- package/dist/cjs/helpers/tokenCategories.native.js.map +1 -1
- package/dist/cjs/helpers/transformsToString.cjs +0 -1
- package/dist/cjs/helpers/transformsToString.native.cjs +0 -1
- package/dist/cjs/helpers/transformsToString.native.js +0 -1
- package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
- package/dist/cjs/helpers/useRenderElement.cjs +0 -1
- package/dist/cjs/helpers/useRenderElement.native.cjs +0 -1
- package/dist/cjs/helpers/useRenderElement.native.js +0 -1
- package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
- package/dist/cjs/helpers/variableValue.cjs +66 -0
- package/dist/cjs/helpers/variableValue.native.cjs +88 -0
- package/dist/cjs/helpers/variableValue.native.js +90 -0
- package/dist/cjs/helpers/variableValue.native.js.map +1 -0
- package/dist/cjs/helpers/variables.cjs +95 -139
- package/dist/cjs/helpers/variables.native.cjs +97 -161
- package/dist/cjs/helpers/variables.native.js +97 -161
- package/dist/cjs/helpers/variables.native.js.map +1 -1
- package/dist/cjs/helpers/warnOnce.cjs +1 -2
- package/dist/cjs/helpers/warnOnce.native.cjs +1 -2
- package/dist/cjs/helpers/warnOnce.native.js +1 -2
- package/dist/cjs/helpers/warnOnce.native.js.map +1 -1
- package/dist/cjs/helpers/webPropsToSkip.cjs +0 -1
- package/dist/cjs/helpers/webPropsToSkip.native.cjs +0 -1
- package/dist/cjs/helpers/webPropsToSkip.native.js +0 -1
- package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/cjs/helpers/wrapStyleTags.cjs +0 -1
- package/dist/cjs/helpers/wrapStyleTags.native.cjs +0 -1
- package/dist/cjs/helpers/wrapStyleTags.native.js +0 -1
- package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +0 -1
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.cjs +0 -1
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +0 -1
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
- package/dist/cjs/hooks/getThemeProxied.cjs +1 -2
- package/dist/cjs/hooks/getThemeProxied.native.cjs +2 -3
- package/dist/cjs/hooks/getThemeProxied.native.js +2 -3
- package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/cjs/hooks/isOptimizedForFirstRender.cjs +0 -1
- package/dist/cjs/hooks/isOptimizedForFirstRender.native.cjs +0 -1
- package/dist/cjs/hooks/isOptimizedForFirstRender.native.js +0 -1
- package/dist/cjs/hooks/isOptimizedForFirstRender.native.js.map +1 -1
- package/dist/cjs/hooks/useAnimationDriver.cjs +14 -9
- package/dist/cjs/hooks/useAnimationDriver.native.cjs +14 -9
- package/dist/cjs/hooks/useAnimationDriver.native.js +14 -9
- package/dist/cjs/hooks/useAnimationDriver.native.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.cjs +27 -25
- package/dist/cjs/hooks/useComponentState.native.cjs +28 -25
- package/dist/cjs/hooks/useComponentState.native.js +28 -25
- package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
- package/dist/cjs/hooks/useDisableSSR.cjs +0 -1
- package/dist/cjs/hooks/useDisableSSR.native.cjs +0 -1
- package/dist/cjs/hooks/useDisableSSR.native.js +0 -1
- package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
- package/dist/cjs/hooks/useIsTouchDevice.cjs +0 -1
- package/dist/cjs/hooks/useIsTouchDevice.native.cjs +0 -1
- package/dist/cjs/hooks/useIsTouchDevice.native.js +0 -1
- package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
- package/dist/cjs/hooks/useMedia.cjs +0 -1
- package/dist/cjs/hooks/useMedia.native.cjs +0 -1
- package/dist/cjs/hooks/useMedia.native.js +0 -1
- package/dist/cjs/hooks/useMedia.native.js.map +1 -1
- package/dist/cjs/hooks/usePortalThemeState.cjs +1 -2
- package/dist/cjs/hooks/usePortalThemeState.native.cjs +1 -2
- package/dist/cjs/hooks/usePortalThemeState.native.js +1 -2
- package/dist/cjs/hooks/usePortalThemeState.native.js.map +1 -1
- package/dist/cjs/hooks/useProps.cjs +0 -1
- package/dist/cjs/hooks/useProps.native.cjs +0 -1
- package/dist/cjs/hooks/useProps.native.js +0 -1
- package/dist/cjs/hooks/useProps.native.js.map +1 -1
- package/dist/cjs/hooks/useTheme.cjs +0 -1
- package/dist/cjs/hooks/useTheme.native.cjs +0 -1
- package/dist/cjs/hooks/useTheme.native.js +0 -1
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeName.cjs +0 -1
- package/dist/cjs/hooks/useThemeName.native.cjs +0 -1
- package/dist/cjs/hooks/useThemeName.native.js +0 -1
- package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.cjs +11 -16
- package/dist/cjs/hooks/useThemeState.native.cjs +13 -18
- package/dist/cjs/hooks/useThemeState.native.js +13 -18
- package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
- package/dist/cjs/index.cjs +0 -2
- package/dist/cjs/index.native.cjs +0 -2
- package/dist/cjs/index.native.js +0 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/inject-styles.cjs +0 -1
- package/dist/cjs/inject-styles.native.cjs +0 -1
- package/dist/cjs/inject-styles.native.js +0 -1
- package/dist/cjs/inject-styles.native.js.map +1 -1
- package/dist/cjs/insertFont.cjs +0 -1
- package/dist/cjs/insertFont.native.cjs +0 -1
- package/dist/cjs/insertFont.native.js +0 -1
- package/dist/cjs/insertFont.native.js.map +1 -1
- package/dist/cjs/interfaces/CSSColorNames.cjs +0 -1
- package/dist/cjs/interfaces/CSSColorNames.native.cjs +0 -1
- package/dist/cjs/interfaces/CSSColorNames.native.js +0 -1
- package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
- package/dist/cjs/interfaces/GetRef.cjs +0 -1
- package/dist/cjs/interfaces/GetRef.native.cjs +0 -1
- package/dist/cjs/interfaces/GetRef.native.js +0 -1
- package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
- package/dist/cjs/interfaces/RNExclusiveTypes.cjs +0 -1
- package/dist/cjs/interfaces/RNExclusiveTypes.native.cjs +0 -1
- package/dist/cjs/interfaces/RNExclusiveTypes.native.js +0 -1
- package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
- package/dist/cjs/interfaces/TamaguiComponentEvents.cjs +0 -1
- package/dist/cjs/interfaces/TamaguiComponentEvents.native.cjs +0 -1
- package/dist/cjs/interfaces/TamaguiComponentEvents.native.js +0 -1
- package/dist/cjs/interfaces/TamaguiComponentEvents.native.js.map +1 -1
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.cjs +0 -1
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.cjs +0 -1
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js +0 -1
- package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js.map +1 -1
- package/dist/cjs/internal-runtime.cjs +0 -1
- package/dist/cjs/internal-runtime.native.cjs +0 -1
- package/dist/cjs/internal-runtime.native.js +0 -1
- package/dist/cjs/internal-runtime.native.js.map +1 -1
- package/dist/cjs/internalRuntimeTypes.cjs +0 -1
- package/dist/cjs/internalRuntimeTypes.native.cjs +0 -1
- package/dist/cjs/internalRuntimeTypes.native.js +0 -1
- package/dist/cjs/internalRuntimeTypes.native.js.map +1 -1
- package/dist/cjs/setupHooks.cjs +0 -1
- package/dist/cjs/setupHooks.native.cjs +0 -1
- package/dist/cjs/setupHooks.native.js +0 -1
- package/dist/cjs/setupHooks.native.js.map +1 -1
- package/dist/cjs/setupReactNative.cjs +0 -1
- package/dist/cjs/setupReactNative.native.cjs +0 -1
- package/dist/cjs/setupReactNative.native.js +0 -1
- package/dist/cjs/setupReactNative.native.js.map +1 -1
- package/dist/cjs/styled.cjs +0 -1
- package/dist/cjs/styled.native.cjs +0 -1
- package/dist/cjs/styled.native.js +0 -1
- package/dist/cjs/styled.native.js.map +1 -1
- package/dist/cjs/theme-update.cjs +19 -0
- package/dist/cjs/theme-update.native.cjs +21 -0
- package/dist/cjs/theme-update.native.js +23 -0
- package/dist/cjs/theme-update.native.js.map +1 -0
- package/dist/cjs/type-utils.cjs +0 -1
- package/dist/cjs/type-utils.native.cjs +0 -1
- package/dist/cjs/type-utils.native.js +0 -1
- package/dist/cjs/type-utils.native.js.map +1 -1
- package/dist/cjs/types.cjs +0 -1
- package/dist/cjs/types.native.cjs +0 -1
- package/dist/cjs/types.native.js +0 -1
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/views/ConfigRevisionCheck.cjs +0 -1
- package/dist/cjs/views/ConfigRevisionCheck.native.cjs +0 -1
- package/dist/cjs/views/ConfigRevisionCheck.native.js +0 -1
- package/dist/cjs/views/ConfigRevisionCheck.native.js.map +1 -1
- package/dist/cjs/views/Configuration.cjs +0 -1
- package/dist/cjs/views/Configuration.native.cjs +0 -1
- package/dist/cjs/views/Configuration.native.js +0 -1
- package/dist/cjs/views/Configuration.native.js.map +1 -1
- package/dist/cjs/views/FontLanguage.cjs +0 -1
- package/dist/cjs/views/FontLanguage.native.cjs +0 -1
- package/dist/cjs/views/FontLanguage.native.js +0 -1
- package/dist/cjs/views/FontLanguage.native.js.map +1 -1
- package/dist/cjs/views/SafeAreaTracker.cjs +0 -1
- package/dist/cjs/views/SafeAreaTracker.native.cjs +0 -1
- package/dist/cjs/views/SafeAreaTracker.native.js +0 -1
- package/dist/cjs/views/SafeAreaTracker.native.js.map +1 -1
- package/dist/cjs/views/Slot.cjs +0 -1
- package/dist/cjs/views/Slot.native.cjs +0 -1
- package/dist/cjs/views/Slot.native.js +0 -1
- package/dist/cjs/views/Slot.native.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.cjs +0 -1
- package/dist/cjs/views/TamaguiProvider.native.cjs +0 -1
- package/dist/cjs/views/TamaguiProvider.native.js +0 -1
- package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
- package/dist/cjs/views/TamaguiRoot.cjs +0 -1
- package/dist/cjs/views/TamaguiRoot.native.cjs +0 -1
- package/dist/cjs/views/TamaguiRoot.native.js +0 -1
- package/dist/cjs/views/TamaguiRoot.native.js.map +1 -1
- package/dist/cjs/views/Text.cjs +0 -1
- package/dist/cjs/views/Text.native.cjs +0 -1
- package/dist/cjs/views/Text.native.js +0 -1
- package/dist/cjs/views/Text.native.js.map +1 -1
- package/dist/cjs/views/Theme.cjs +7 -33
- package/dist/cjs/views/Theme.native.cjs +8 -20
- package/dist/cjs/views/Theme.native.js +8 -20
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/cjs/views/ThemeDebug.cjs +0 -1
- package/dist/cjs/views/ThemeDebug.native.cjs +0 -1
- package/dist/cjs/views/ThemeDebug.native.js +0 -1
- package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
- package/dist/cjs/views/ThemeProvider.cjs +0 -1
- package/dist/cjs/views/ThemeProvider.native.cjs +0 -1
- package/dist/cjs/views/ThemeProvider.native.js +0 -1
- package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
- package/dist/cjs/views/ThemeUpdate.cjs +82 -0
- package/dist/cjs/views/ThemeUpdate.native.cjs +84 -0
- package/dist/cjs/views/ThemeUpdate.native.js +86 -0
- package/dist/cjs/views/ThemeUpdate.native.js.map +1 -0
- package/dist/cjs/views/View.cjs +0 -1
- package/dist/cjs/views/View.native.cjs +0 -1
- package/dist/cjs/views/View.native.js +0 -1
- package/dist/cjs/views/View.native.js.map +1 -1
- package/dist/esm/Tamagui.mjs.map +1 -1
- package/dist/esm/Tamagui.native.js.map +1 -1
- package/dist/esm/_withNativeStyle.mjs.map +1 -1
- package/dist/esm/config.mjs +7 -0
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/config.native.js +7 -0
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/constants/isDevTools.mjs.map +1 -1
- package/dist/esm/constants/isDevTools.native.js.map +1 -1
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createFont.mjs.map +1 -1
- package/dist/esm/createFont.native.js.map +1 -1
- package/dist/esm/createTamagui.mjs +1 -1
- package/dist/esm/createTamagui.mjs.map +1 -1
- package/dist/esm/createTamagui.native.js +1 -1
- package/dist/esm/createTamagui.native.js.map +1 -1
- package/dist/esm/createVariable.mjs.map +1 -1
- package/dist/esm/createVariable.native.js.map +1 -1
- package/dist/esm/dom/primitives.native.js +1 -1
- package/dist/esm/dom/primitives.native.js.map +1 -1
- package/dist/esm/eventHandling.native.js.map +1 -1
- package/dist/esm/helpers/configVariables.mjs +60 -0
- package/dist/esm/helpers/configVariables.mjs.map +1 -0
- package/dist/esm/helpers/configVariables.native.js +65 -0
- package/dist/esm/helpers/configVariables.native.js.map +1 -0
- package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
- package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
- package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
- package/dist/esm/helpers/defaultAnimationDriver.mjs +1 -5
- package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
- package/dist/esm/helpers/defaultAnimationDriver.native.js +0 -12
- package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
- package/dist/esm/helpers/directStyle.mjs +257 -282
- package/dist/esm/helpers/directStyle.mjs.map +1 -1
- package/dist/esm/helpers/directStyle.native.js +273 -304
- package/dist/esm/helpers/directStyle.native.js.map +1 -1
- package/dist/esm/helpers/expandStyle.mjs.map +1 -1
- package/dist/esm/helpers/expandStyle.native.js.map +1 -1
- package/dist/esm/helpers/expandStyles.native.js.map +1 -1
- package/dist/esm/helpers/extractPseudoState.mjs.map +1 -1
- package/dist/esm/helpers/formatDiagnostic.mjs +3 -0
- package/dist/esm/helpers/formatDiagnostic.mjs.map +1 -1
- package/dist/esm/helpers/formatDiagnostic.native.js +3 -0
- package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.mjs +5 -1
- package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
- package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
- package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
- package/dist/esm/helpers/getFontLanguage.mjs.map +1 -1
- package/dist/esm/helpers/getFontLanguage.native.js.map +1 -1
- package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
- package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +0 -7
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +0 -7
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
- package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
- package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
- package/dist/esm/helpers/grammarConfig.mjs +59 -13
- package/dist/esm/helpers/grammarConfig.mjs.map +1 -1
- package/dist/esm/helpers/grammarConfig.native.js +80 -17
- package/dist/esm/helpers/grammarConfig.native.js.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/esm/helpers/matchMedia.native.js.map +1 -1
- package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -1
- package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -1
- package/dist/esm/helpers/nativeStyleEngine.mjs.map +1 -1
- package/dist/esm/helpers/nativeStyleEngine.native.js.map +1 -1
- package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
- package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
- package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/esm/helpers/parseNativeTransform.native.js.map +1 -1
- package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -1
- package/dist/esm/helpers/propMapper.mjs +29 -37
- package/dist/esm/helpers/propMapper.mjs.map +1 -1
- package/dist/esm/helpers/propMapper.native.js +29 -37
- package/dist/esm/helpers/propMapper.native.js.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/esm/helpers/resolveSafeAreaVariable.native.js.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/esm/helpers/themeRef.mjs.map +1 -1
- package/dist/esm/helpers/themeRef.native.js.map +1 -1
- package/dist/esm/helpers/themeUpdateState.mjs +4 -0
- package/dist/esm/helpers/themeUpdateState.mjs.map +1 -0
- package/dist/esm/helpers/themeUpdateState.native.js +4 -0
- package/dist/esm/helpers/themeUpdateState.native.js.map +1 -0
- package/dist/esm/helpers/timer.mjs.map +1 -1
- package/dist/esm/helpers/timer.native.js.map +1 -1
- package/dist/esm/helpers/tokenCategories.mjs.map +1 -1
- package/dist/esm/helpers/tokenCategories.native.js.map +1 -1
- package/dist/esm/helpers/transformsToString.native.js.map +1 -1
- package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
- package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
- package/dist/esm/helpers/variableValue.mjs +44 -0
- package/dist/esm/helpers/variableValue.mjs.map +1 -0
- package/dist/esm/helpers/variableValue.native.js +64 -0
- package/dist/esm/helpers/variableValue.native.js.map +1 -0
- package/dist/esm/helpers/variables.mjs +96 -136
- package/dist/esm/helpers/variables.mjs.map +1 -1
- package/dist/esm/helpers/variables.native.js +98 -158
- package/dist/esm/helpers/variables.native.js.map +1 -1
- package/dist/esm/helpers/warnOnce.mjs +1 -1
- package/dist/esm/helpers/warnOnce.mjs.map +1 -1
- package/dist/esm/helpers/warnOnce.native.js +1 -1
- package/dist/esm/helpers/warnOnce.native.js.map +1 -1
- package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
- package/dist/esm/hooks/getThemeProxied.native.js +2 -2
- package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/esm/hooks/useAnimationDriver.mjs +14 -8
- package/dist/esm/hooks/useAnimationDriver.mjs.map +1 -1
- package/dist/esm/hooks/useAnimationDriver.native.js +14 -8
- package/dist/esm/hooks/useAnimationDriver.native.js.map +1 -1
- package/dist/esm/hooks/useComponentState.mjs +27 -24
- package/dist/esm/hooks/useComponentState.mjs.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +28 -24
- package/dist/esm/hooks/useComponentState.native.js.map +1 -1
- package/dist/esm/hooks/useMedia.mjs.map +1 -1
- package/dist/esm/hooks/useMedia.native.js.map +1 -1
- package/dist/esm/hooks/usePortalThemeState.mjs +2 -2
- package/dist/esm/hooks/usePortalThemeState.mjs.map +1 -1
- package/dist/esm/hooks/usePortalThemeState.native.js +2 -2
- package/dist/esm/hooks/usePortalThemeState.native.js.map +1 -1
- package/dist/esm/hooks/useProps.mjs.map +1 -1
- package/dist/esm/hooks/useProps.native.js.map +1 -1
- package/dist/esm/hooks/useThemeName.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +12 -15
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +14 -17
- package/dist/esm/hooks/useThemeState.native.js.map +1 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.mjs +0 -2
- package/dist/esm/index.native.js +0 -2
- package/dist/esm/insertFont.mjs.map +1 -1
- package/dist/esm/insertFont.native.js.map +1 -1
- package/dist/esm/styled.mjs.map +1 -1
- package/dist/esm/styled.native.js.map +1 -1
- package/dist/esm/theme-update.mjs +3 -0
- package/dist/esm/theme-update.native.js +3 -0
- package/dist/esm/views/FontLanguage.mjs.map +1 -1
- package/dist/esm/views/SafeAreaTracker.native.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
- package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
- package/dist/esm/views/Theme.mjs +8 -33
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +9 -19
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeUpdate.mjs +54 -0
- package/dist/esm/views/ThemeUpdate.mjs.map +1 -0
- package/dist/esm/views/ThemeUpdate.native.js +53 -0
- package/dist/esm/views/ThemeUpdate.native.js.map +1 -0
- package/package.json +26 -17
- package/src/config.ts +7 -0
- package/src/createTamagui.ts +2 -2
- package/src/dom/primitives.native.tsx +1 -1
- package/src/helpers/configVariables.ts +64 -0
- package/src/helpers/defaultAnimationDriver.tsx +0 -4
- package/src/helpers/directStyle.ts +875 -465
- package/src/helpers/formatDiagnostic.ts +3 -0
- package/src/helpers/getCSSStylesAtomic.ts +5 -1
- package/src/helpers/getSplitStyles.tsx +0 -15
- package/src/helpers/grammarConfig.ts +82 -12
- package/src/helpers/nativeTransitionTarget.native.ts +1 -1
- package/src/helpers/nativeTransitionTarget.ts +1 -1
- package/src/helpers/propMapper.ts +41 -43
- package/src/helpers/themeUpdateState.ts +27 -0
- package/src/helpers/variableValue.ts +45 -0
- package/src/helpers/variables.ts +149 -195
- package/src/helpers/warnOnce.ts +2 -2
- package/src/hooks/getThemeProxied.ts +8 -5
- package/src/hooks/useAnimationDriver.ts +26 -11
- package/src/hooks/useComponentState.ts +44 -31
- package/src/hooks/usePortalThemeState.ts +8 -8
- package/src/hooks/useThemeState.ts +16 -31
- package/src/index.ts +0 -1
- package/src/theme-update.ts +2 -0
- package/src/types.tsx +13 -21
- package/src/views/Theme.tsx +18 -77
- package/src/views/ThemeUpdate.tsx +88 -0
- package/types/config.d.ts.map +1 -1
- package/types/helpers/configVariables.d.ts +3 -0
- package/types/helpers/configVariables.d.ts.map +1 -0
- package/types/helpers/defaultAnimationDriver.d.ts.map +1 -1
- package/types/helpers/directStyle.d.ts +2 -23
- package/types/helpers/directStyle.d.ts.map +1 -1
- package/types/helpers/formatDiagnostic.d.ts.map +1 -1
- package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/grammarConfig.d.ts +9 -0
- package/types/helpers/grammarConfig.d.ts.map +1 -1
- package/types/helpers/nativeTransitionTarget.d.ts +1 -1
- package/types/helpers/nativeTransitionTarget.d.ts.map +1 -1
- package/types/helpers/nativeTransitionTarget.native.d.ts +1 -1
- package/types/helpers/nativeTransitionTarget.native.d.ts.map +1 -1
- package/types/helpers/propMapper.d.ts.map +1 -1
- package/types/helpers/themeUpdateState.d.ts +23 -0
- package/types/helpers/themeUpdateState.d.ts.map +1 -0
- package/types/helpers/variableValue.d.ts +4 -0
- package/types/helpers/variableValue.d.ts.map +1 -0
- package/types/helpers/variables.d.ts +7 -24
- package/types/helpers/variables.d.ts.map +1 -1
- package/types/helpers/warnOnce.d.ts +1 -1
- package/types/hooks/getThemeProxied.d.ts.map +1 -1
- package/types/hooks/useAnimationDriver.d.ts.map +1 -1
- package/types/hooks/useComponentState.d.ts.map +1 -1
- package/types/hooks/usePortalThemeState.d.ts +5 -5
- package/types/hooks/usePortalThemeState.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts +2 -5
- package/types/hooks/useThemeState.d.ts.map +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/theme-update.d.ts +3 -0
- package/types/theme-update.d.ts.map +1 -0
- package/types/types.d.ts +6 -17
- package/types/types.d.ts.map +1 -1
- package/types/views/Theme.d.ts +2 -15
- package/types/views/Theme.d.ts.map +1 -1
- package/types/views/ThemeUpdate.d.ts +15 -0
- package/types/views/ThemeUpdate.d.ts.map +1 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { useConfiguration } from '../contexts/ComponentContext'
|
|
2
2
|
import type {
|
|
3
3
|
AnimationDriver,
|
|
4
|
+
AnimationDriverWithAnimatedNumbers,
|
|
4
5
|
UniversalAnimatedNumber,
|
|
5
6
|
UseAnimatedNumberReaction,
|
|
6
7
|
UseAnimatedNumberStyle,
|
|
@@ -13,25 +14,39 @@ import type {
|
|
|
13
14
|
// `animatedBy` multi-driver setups).
|
|
14
15
|
export function useAnimationDriver(): AnimationDriver {
|
|
15
16
|
const { animationDriver } = useConfiguration()
|
|
16
|
-
if (
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
)
|
|
21
|
-
}
|
|
17
|
+
if (!animationDriver || animationDriver.isStub) {
|
|
18
|
+
throw new Error(
|
|
19
|
+
`No animation driver configured. Pass \`animations\` to createTamagui. See: https://tamagui.dev/docs/core/animations`
|
|
20
|
+
)
|
|
22
21
|
}
|
|
23
|
-
return animationDriver
|
|
22
|
+
return animationDriver
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function useAnimatedNumberDriver(): AnimationDriverWithAnimatedNumbers {
|
|
26
|
+
const driver = useAnimationDriver()
|
|
27
|
+
const animatedDriver = driver as Partial<AnimationDriverWithAnimatedNumbers>
|
|
28
|
+
if (
|
|
29
|
+
typeof animatedDriver.useAnimatedNumber !== 'function' ||
|
|
30
|
+
typeof animatedDriver.useAnimatedNumberStyle !== 'function' ||
|
|
31
|
+
typeof animatedDriver.useAnimatedNumbersStyle !== 'function' ||
|
|
32
|
+
typeof animatedDriver.useAnimatedNumberReaction !== 'function'
|
|
33
|
+
) {
|
|
34
|
+
throw new Error(
|
|
35
|
+
`The configured animation driver does not include animated-number hooks. When using the CSS driver, import \`createAnimations\` from \`@tamagui/animations-css/extras\` instead of \`@tamagui/animations-css\`. See: https://tamagui.dev/docs/core/animations-css`
|
|
36
|
+
)
|
|
37
|
+
}
|
|
38
|
+
return animatedDriver as AnimationDriverWithAnimatedNumbers
|
|
24
39
|
}
|
|
25
40
|
|
|
26
41
|
export function useAnimatedNumber(initial: number): UniversalAnimatedNumber<any> {
|
|
27
|
-
return
|
|
42
|
+
return useAnimatedNumberDriver().useAnimatedNumber(initial)
|
|
28
43
|
}
|
|
29
44
|
|
|
30
45
|
export const useAnimatedNumberStyle: UseAnimatedNumberStyle = (value, getStyle) =>
|
|
31
|
-
|
|
46
|
+
useAnimatedNumberDriver().useAnimatedNumberStyle(value, getStyle)
|
|
32
47
|
|
|
33
48
|
export const useAnimatedNumbersStyle: UseAnimatedNumbersStyle = (values, getStyle) =>
|
|
34
|
-
|
|
49
|
+
useAnimatedNumberDriver().useAnimatedNumbersStyle(values, getStyle)
|
|
35
50
|
|
|
36
51
|
export const useAnimatedNumberReaction: UseAnimatedNumberReaction = (opts, onValue) =>
|
|
37
|
-
|
|
52
|
+
useAnimatedNumberDriver().useAnimatedNumberReaction(opts, onValue)
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { getPlatformDriver, isServer, isWeb } from '@tamagui/constants'
|
|
2
2
|
import { stylePropsAll } from '@tamagui/helpers'
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
canonicalClauseModifier,
|
|
5
|
+
scanFlatValue,
|
|
6
|
+
type FlatValueHandler,
|
|
7
|
+
} from '@tamagui/style-grammar/runtime'
|
|
4
8
|
import { mergeIfNotShallowEqual } from '@tamagui/is-equal-shallow'
|
|
5
9
|
import { useDidFinishSSR, useIsClientOnly } from '@tamagui/use-did-finish-ssr'
|
|
6
10
|
import { useRef, useState } from 'react'
|
|
@@ -31,34 +35,31 @@ import type { ViewProps } from '../views/View'
|
|
|
31
35
|
const platformPseudoModifiers = new Set(['hover', 'press', 'focus'])
|
|
32
36
|
const enterModifier = new Set(['enter'])
|
|
33
37
|
|
|
34
|
-
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
// reaches the style object and nothing in it can start an animation
|
|
46
|
-
if (start === end && !isBase) scanRefused = true
|
|
38
|
+
type LifecycleScanContext = TamaguiComponentStateRef & {
|
|
39
|
+
// source, wanted modifiers, found, and pending match. created once per
|
|
40
|
+
// component and reused by both lifecycle questions on every render.
|
|
41
|
+
flatScan?: [string, ReadonlySet<string>, boolean, boolean]
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const lifecycleHandler: FlatValueHandler<LifecycleScanContext> = {
|
|
45
|
+
segment(ctx, start, end, isBase, valid) {
|
|
46
|
+
const scan = ctx.flatScan!
|
|
47
|
+
if (!isBase && valid && start < end && scan[3]) scan[2] = true
|
|
48
|
+
scan[3] = false
|
|
47
49
|
},
|
|
48
|
-
chain(start
|
|
49
|
-
|
|
50
|
+
chain(ctx, start, end, valid) {
|
|
51
|
+
const scan = ctx.flatScan!
|
|
52
|
+
scan[3] = false
|
|
53
|
+
if (!valid) return true
|
|
50
54
|
for (let index = start; index <= end; index++) {
|
|
51
|
-
if (index !== end &&
|
|
52
|
-
if (
|
|
53
|
-
|
|
55
|
+
if (index !== end && scan[0].charCodeAt(index) !== 58) continue
|
|
56
|
+
if (scan[1].has(canonicalClauseModifier(scan[0].slice(start, index)))) {
|
|
57
|
+
scan[3] = true
|
|
54
58
|
}
|
|
55
59
|
start = index + 1
|
|
56
60
|
}
|
|
57
61
|
return true
|
|
58
62
|
},
|
|
59
|
-
error() {
|
|
60
|
-
scanRefused = true
|
|
61
|
-
},
|
|
62
63
|
}
|
|
63
64
|
|
|
64
65
|
/**
|
|
@@ -72,19 +73,21 @@ const lifecycleVisitor = {
|
|
|
72
73
|
function hasFlatModifier(
|
|
73
74
|
props: Record<string, any>,
|
|
74
75
|
config: TamaguiInternalConfig,
|
|
75
|
-
modifiers: ReadonlySet<string
|
|
76
|
+
modifiers: ReadonlySet<string>,
|
|
77
|
+
ctx: LifecycleScanContext
|
|
76
78
|
): boolean {
|
|
79
|
+
const scan = (ctx.flatScan ||= ['', enterModifier, false, false])
|
|
77
80
|
for (const key in props) {
|
|
78
81
|
const value = props[key]
|
|
79
82
|
if (typeof value !== 'string' || value.indexOf(':') === -1) continue
|
|
80
83
|
const property = config.shorthands[key] || key
|
|
81
84
|
if (!(property in stylePropsAll) && property !== 'transition') continue
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
scanFlatValue(value,
|
|
87
|
-
if (
|
|
85
|
+
scan[0] = value
|
|
86
|
+
scan[1] = modifiers
|
|
87
|
+
scan[2] = false
|
|
88
|
+
scan[3] = false
|
|
89
|
+
scanFlatValue(value, lifecycleHandler, ctx)
|
|
90
|
+
if (scan[2]) return true
|
|
88
91
|
}
|
|
89
92
|
return false
|
|
90
93
|
}
|
|
@@ -143,7 +146,12 @@ export const useComponentState = (
|
|
|
143
146
|
useAnimations &&
|
|
144
147
|
animationDriver?.avoidReRenders &&
|
|
145
148
|
getPlatformDriver()?.pseudo &&
|
|
146
|
-
hasFlatModifier(
|
|
149
|
+
hasFlatModifier(
|
|
150
|
+
props,
|
|
151
|
+
config,
|
|
152
|
+
platformPseudoModifiers,
|
|
153
|
+
curStateRef as LifecycleScanContext
|
|
154
|
+
)
|
|
147
155
|
)
|
|
148
156
|
|
|
149
157
|
const willBeAnimatedClient = (() => {
|
|
@@ -172,7 +180,12 @@ export const useComponentState = (
|
|
|
172
180
|
const isExiting = presenceState?.isPresent === false
|
|
173
181
|
const isEntering = presenceState?.isPresent === true && presenceState.initial !== false
|
|
174
182
|
|
|
175
|
-
const hasEnterStyle = hasFlatModifier(
|
|
183
|
+
const hasEnterStyle = hasFlatModifier(
|
|
184
|
+
props,
|
|
185
|
+
config,
|
|
186
|
+
enterModifier,
|
|
187
|
+
curStateRef as LifecycleScanContext
|
|
188
|
+
)
|
|
176
189
|
|
|
177
190
|
const hasAnimationThatNeedsHydrate =
|
|
178
191
|
hasAnimationProp &&
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import { useContext } from 'react'
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
|
|
4
|
+
getThemeUpdateLayer,
|
|
5
5
|
getThemeProviderParent,
|
|
6
6
|
ThemeStateContext,
|
|
7
|
-
type InlineThemeLayer,
|
|
8
7
|
} from './useThemeState'
|
|
9
8
|
import { useThemeName } from './useThemeName'
|
|
9
|
+
import type { ThemeUpdateState } from '../helpers/themeUpdateState'
|
|
10
10
|
|
|
11
11
|
export type PortalThemeState = {
|
|
12
12
|
name: string
|
|
13
13
|
/** Root-most first, so a consumer can replay them in authored order. */
|
|
14
|
-
layers:
|
|
14
|
+
layers: ThemeUpdateState[]
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* The theme state a portal must carry across the mount boundary.
|
|
19
19
|
*
|
|
20
|
-
* A name alone is not enough: `<
|
|
21
|
-
*
|
|
22
|
-
*
|
|
20
|
+
* A name alone is not enough: `<ThemeUpdate background="#0b2545">` puts its
|
|
21
|
+
* values on a CSS custom-property node in the mount ancestry, and portaled
|
|
22
|
+
* content is not a descendant of that node.
|
|
23
23
|
*/
|
|
24
24
|
export function usePortalThemeState(): PortalThemeState {
|
|
25
25
|
const name = useThemeName()
|
|
26
|
-
const layers:
|
|
26
|
+
const layers: ThemeUpdateState[] = []
|
|
27
27
|
let cursor: string | undefined = useContext(ThemeStateContext)
|
|
28
28
|
while (cursor) {
|
|
29
|
-
const layer =
|
|
29
|
+
const layer = getThemeUpdateLayer(cursor)
|
|
30
30
|
if (layer) layers.unshift(layer)
|
|
31
31
|
cursor = getThemeProviderParent(cursor)
|
|
32
32
|
}
|
|
@@ -10,7 +10,6 @@ import {
|
|
|
10
10
|
} from 'react'
|
|
11
11
|
import { getConfig, getSetting } from '../config'
|
|
12
12
|
import { formatDiagnostic } from '../helpers/formatDiagnostic'
|
|
13
|
-
import { getInlineValuesKey, getMergedInlineTheme } from '../helpers/variables'
|
|
14
13
|
import { MISSING_THEME_MESSAGE } from '../constants/constants'
|
|
15
14
|
import type {
|
|
16
15
|
ThemeParsed,
|
|
@@ -18,6 +17,7 @@ import type {
|
|
|
18
17
|
ThemeState,
|
|
19
18
|
UseThemeWithStateProps,
|
|
20
19
|
} from '../types'
|
|
20
|
+
import type { ThemeUpdateState } from '../helpers/themeUpdateState'
|
|
21
21
|
|
|
22
22
|
type ID = string
|
|
23
23
|
|
|
@@ -44,11 +44,11 @@ export const forceUpdateThemes = () => {
|
|
|
44
44
|
export const getThemeState = (id: ID) => states.get(id)
|
|
45
45
|
|
|
46
46
|
/**
|
|
47
|
-
*
|
|
47
|
+
* ThemeUpdate layers and the provider chain, both keyed by the id a
|
|
48
48
|
* `<Theme>` pushes into `ThemeStateContext`.
|
|
49
49
|
*
|
|
50
50
|
* A portal renders outside its mount ancestry, so it cannot inherit the CSS
|
|
51
|
-
* custom properties a `<
|
|
51
|
+
* custom properties a `<ThemeUpdate background="...">` put on an ancestor node. The
|
|
52
52
|
* portal bridge walks this chain and replays exactly those layers. It cannot
|
|
53
53
|
* use `ThemeState.parentId`: a state that resolves to the same theme as its
|
|
54
54
|
* parent is a copy of the parent state, so its `parentId` skips a level.
|
|
@@ -56,20 +56,15 @@ export const getThemeState = (id: ID) => states.get(id)
|
|
|
56
56
|
* Only `<Theme>` providers are recorded, which is also the only kind of state
|
|
57
57
|
* whose id can appear in `ThemeStateContext`.
|
|
58
58
|
*/
|
|
59
|
-
const
|
|
59
|
+
const themeUpdateLayers = new Map<ID, ThemeUpdateState>()
|
|
60
60
|
const themeProviderParents = new Map<ID, ID>()
|
|
61
61
|
|
|
62
|
-
export
|
|
63
|
-
inlineValues: NonNullable<UseThemeWithStateProps['inlineValues']>
|
|
64
|
-
inlineClassName: string | undefined
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export const getInlineThemeLayer = (id: ID) => inlineThemeLayers.get(id)
|
|
62
|
+
export const getThemeUpdateLayer = (id: ID) => themeUpdateLayers.get(id)
|
|
68
63
|
export const getThemeProviderParent = (id: ID) => themeProviderParents.get(id)
|
|
69
64
|
|
|
70
65
|
/** introspection for devtools and leak probes: entries retained per map */
|
|
71
66
|
export const getThemeProviderChainSizes = () => ({
|
|
72
|
-
layers:
|
|
67
|
+
layers: themeUpdateLayers.size,
|
|
73
68
|
parents: themeProviderParents.size,
|
|
74
69
|
})
|
|
75
70
|
|
|
@@ -79,13 +74,10 @@ const registerThemeProviderChain = (
|
|
|
79
74
|
props: UseThemeWithStateProps
|
|
80
75
|
) => {
|
|
81
76
|
themeProviderParents.set(id, parentId)
|
|
82
|
-
if (props.
|
|
83
|
-
|
|
84
|
-
inlineValues: props.inlineValues,
|
|
85
|
-
inlineClassName: props.inlineClassName,
|
|
86
|
-
})
|
|
77
|
+
if (props._themeUpdate) {
|
|
78
|
+
themeUpdateLayers.set(id, props._themeUpdate)
|
|
87
79
|
} else {
|
|
88
|
-
|
|
80
|
+
themeUpdateLayers.delete(id)
|
|
89
81
|
}
|
|
90
82
|
}
|
|
91
83
|
|
|
@@ -347,7 +339,7 @@ function cleanupThemeState(r: ThemeStateRef) {
|
|
|
347
339
|
// both branches retire the id, and a subscribed <Theme> provider only ever
|
|
348
340
|
// takes the first one, so the portal-bridge chain has to be cleared here
|
|
349
341
|
// rather than inside the unsubscribed branch.
|
|
350
|
-
|
|
342
|
+
themeUpdateLayers.delete(r.id)
|
|
351
343
|
themeProviderParents.delete(r.id)
|
|
352
344
|
}
|
|
353
345
|
|
|
@@ -421,21 +413,16 @@ const getSnapshotImpl = (r: SnapshotRef): ThemeState => {
|
|
|
421
413
|
PendingUpdate.get(id)
|
|
422
414
|
)
|
|
423
415
|
|
|
424
|
-
//
|
|
416
|
+
// ThemeUpdate layer: swap in the merged theme so descendants
|
|
425
417
|
// (which read states.get(parentId).theme) see the patched values. The base
|
|
426
418
|
// is always the PARENT state's theme, never this state's own theme —
|
|
427
419
|
// getNextState can return our previous (already-merged) state, and merging
|
|
428
420
|
// over own output would keep removed patch keys alive. Merged objects are
|
|
429
421
|
// identity-cached per (base theme, values, scheme) so bailouts stay stable.
|
|
430
422
|
let next = nextRaw
|
|
431
|
-
if (props.
|
|
423
|
+
if (props._themeUpdate && nextRaw?.theme) {
|
|
432
424
|
const parentTheme = states.get(parentId)?.theme || nextRaw.theme
|
|
433
|
-
const merged =
|
|
434
|
-
parentTheme,
|
|
435
|
-
props.inlineValues,
|
|
436
|
-
nextRaw.name,
|
|
437
|
-
getConfig()
|
|
438
|
-
)
|
|
425
|
+
const merged = props._themeUpdate.getTheme(parentTheme, nextRaw.name, getConfig())
|
|
439
426
|
if (merged !== nextRaw.theme) {
|
|
440
427
|
next = { ...nextRaw, theme: merged as ThemeParsed }
|
|
441
428
|
}
|
|
@@ -763,14 +750,12 @@ const getPropsKey = ({
|
|
|
763
750
|
name,
|
|
764
751
|
reset,
|
|
765
752
|
forceClassName,
|
|
766
|
-
|
|
753
|
+
_themeUpdate,
|
|
767
754
|
}: UseThemeWithStateProps) =>
|
|
768
|
-
`${name || ''}${reset || ''}${forceClassName || ''}${
|
|
769
|
-
inlineValues ? getInlineValuesKey(inlineValues) : ''
|
|
770
|
-
}`
|
|
755
|
+
`${name || ''}${reset || ''}${forceClassName || ''}${_themeUpdate?.key || ''}`
|
|
771
756
|
|
|
772
757
|
export const hasThemeUpdatingProps = (props: UseThemeWithStateProps) =>
|
|
773
758
|
'name' in props ||
|
|
774
759
|
'reset' in props ||
|
|
775
760
|
'forceClassName' in props ||
|
|
776
|
-
'
|
|
761
|
+
'_themeUpdate' in props
|
package/src/index.ts
CHANGED
package/src/types.tsx
CHANGED
|
@@ -1055,14 +1055,8 @@ export type ThemeParsed = {
|
|
|
1055
1055
|
[key in ThemeKeys]: CoerceToVariable<ThemeDefinition[key]>
|
|
1056
1056
|
}
|
|
1057
1057
|
|
|
1058
|
-
type InlineThemeValues = {
|
|
1059
|
-
[Key in ThemeKeys]?: VariableValIn
|
|
1060
|
-
}
|
|
1061
|
-
|
|
1062
1058
|
/**
|
|
1063
|
-
* Prop names `<Theme>` owns.
|
|
1064
|
-
* key, so a theme key or a `createTamagui({ variables })` entry can't use one
|
|
1065
|
-
* of these names. development builds report the collision.
|
|
1059
|
+
* Prop names `<Theme>` owns. Inline values are authored on `<ThemeUpdate>`.
|
|
1066
1060
|
*/
|
|
1067
1061
|
export type ReservedThemePropName =
|
|
1068
1062
|
| '_isRoot'
|
|
@@ -1074,8 +1068,7 @@ export type ReservedThemePropName =
|
|
|
1074
1068
|
| 'disable'
|
|
1075
1069
|
| 'disable-child-theme'
|
|
1076
1070
|
| 'forceClassName'
|
|
1077
|
-
| '
|
|
1078
|
-
| 'inlineValues'
|
|
1071
|
+
| '_themeUpdate'
|
|
1079
1072
|
| 'name'
|
|
1080
1073
|
| 'nativeUpdate'
|
|
1081
1074
|
| 'needsUpdate'
|
|
@@ -1159,13 +1152,8 @@ export type UseThemeWithStateProps = ThemeProps & {
|
|
|
1159
1152
|
passThrough?: boolean
|
|
1160
1153
|
disable?: boolean
|
|
1161
1154
|
needsUpdate?: () => boolean
|
|
1162
|
-
/**
|
|
1163
|
-
|
|
1164
|
-
values?: InlineThemeValues
|
|
1165
|
-
themes?: { [Name in ThemeName]?: InlineThemeValues }
|
|
1166
|
-
}
|
|
1167
|
-
/** the `tvar_` class carrying this layer's custom properties on web */
|
|
1168
|
-
inlineClassName?: string
|
|
1155
|
+
/** opaque internal value patch created by `<ThemeUpdate>` */
|
|
1156
|
+
_themeUpdate?: import('./helpers/themeUpdateState').ThemeUpdateState
|
|
1169
1157
|
/**
|
|
1170
1158
|
* native fast path (experimental): called on a theme update instead of
|
|
1171
1159
|
* re-rendering; return true when the update was committed natively so the
|
|
@@ -3373,7 +3361,6 @@ export type SplitStyleProps = {
|
|
|
3373
3361
|
noMergeStyle?: boolean
|
|
3374
3362
|
resolveValues?: ResolveVariableAs
|
|
3375
3363
|
disableExpandShorthands?: boolean
|
|
3376
|
-
fallbackProps?: Record<string, any>
|
|
3377
3364
|
hasTextAncestor?: boolean
|
|
3378
3365
|
// for animations
|
|
3379
3366
|
willBeAnimated?: boolean // we need to track media queries even before animation
|
|
@@ -3474,12 +3461,17 @@ export type AnimationDriver<A extends AnimationConfig = AnimationConfig> =
|
|
|
3474
3461
|
children?: React.ReactNode
|
|
3475
3462
|
disabled?: boolean
|
|
3476
3463
|
}) => React.ReactNode
|
|
3477
|
-
useAnimatedNumber: UseAnimatedNumber
|
|
3478
|
-
useAnimatedNumberStyle: UseAnimatedNumberStyle
|
|
3479
|
-
useAnimatedNumbersStyle: UseAnimatedNumbersStyle
|
|
3480
|
-
useAnimatedNumberReaction: UseAnimatedNumberReaction
|
|
3481
3464
|
}
|
|
3482
3465
|
|
|
3466
|
+
export type AnimationDriverWithAnimatedNumbers<
|
|
3467
|
+
A extends AnimationConfig = AnimationConfig,
|
|
3468
|
+
> = AnimationDriver<A> & {
|
|
3469
|
+
useAnimatedNumber: UseAnimatedNumber
|
|
3470
|
+
useAnimatedNumberStyle: UseAnimatedNumberStyle
|
|
3471
|
+
useAnimatedNumbersStyle: UseAnimatedNumbersStyle
|
|
3472
|
+
useAnimatedNumberReaction: UseAnimatedNumberReaction
|
|
3473
|
+
}
|
|
3474
|
+
|
|
3483
3475
|
export type AnimationDriverStub<A extends AnimationConfig = AnimationConfig> =
|
|
3484
3476
|
AnimationDriverBase<A> & {
|
|
3485
3477
|
isStub: true
|
package/src/views/Theme.tsx
CHANGED
|
@@ -1,60 +1,25 @@
|
|
|
1
1
|
import { createRefComponent } from '@tamagui/compose-refs'
|
|
2
2
|
import { isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'
|
|
3
|
-
import { getThemeClassNames } from '@tamagui/helpers'
|
|
3
|
+
import { getThemeClassNames, reservedThemeProps } from '@tamagui/helpers'
|
|
4
4
|
import type { MutableRefObject } from 'react'
|
|
5
5
|
import React, { Children, cloneElement, isValidElement, useRef } from 'react'
|
|
6
|
-
import { getConfig, getSetting } from '../config'
|
|
7
6
|
import { variableToString } from '../createVariable'
|
|
8
7
|
import { formatDiagnostic } from '../helpers/formatDiagnostic'
|
|
9
|
-
import {
|
|
10
|
-
insertStyleRules,
|
|
11
|
-
shouldInsertStyleRules,
|
|
12
|
-
updateRules,
|
|
13
|
-
} from '../helpers/insertStyleRule'
|
|
14
8
|
import {
|
|
15
9
|
removeNativeStyleScope,
|
|
16
10
|
updateNativeStyleScope,
|
|
17
11
|
} from '../helpers/nativeStyleEngine'
|
|
18
|
-
import {
|
|
12
|
+
import { warnOnce } from '../helpers/warnOnce'
|
|
19
13
|
import { useThemeWithState } from '../hooks/useTheme'
|
|
20
14
|
import {
|
|
21
15
|
getThemeState,
|
|
22
16
|
hasThemeUpdatingProps,
|
|
23
17
|
ThemeStateContext,
|
|
24
18
|
} from '../hooks/useThemeState'
|
|
25
|
-
import type {
|
|
26
|
-
ReservedThemePropName,
|
|
27
|
-
RulesToInsert,
|
|
28
|
-
ThemeKeys,
|
|
29
|
-
ThemeProps,
|
|
30
|
-
ThemeState,
|
|
31
|
-
UseThemeWithStateProps,
|
|
32
|
-
VariableValIn,
|
|
33
|
-
} from '../types'
|
|
19
|
+
import type { ThemeProps, ThemeState, UseThemeWithStateProps } from '../types'
|
|
34
20
|
import { ThemeDebug } from './ThemeDebug'
|
|
35
21
|
|
|
36
|
-
|
|
37
|
-
* Theme values set inline for a subtree: `<Theme background-hover="blue4">`.
|
|
38
|
-
* Values use the same flat grammar as style props, narrowed to the modifiers a
|
|
39
|
-
* whole subtree can honor: theme (`dark:`) and platform (`ios:`).
|
|
40
|
-
*
|
|
41
|
-
* Without a config augmentation `ThemeKeys` is `string`, which would make this
|
|
42
|
-
* a catch-all index signature that every one of Theme's own props collides
|
|
43
|
-
* with. There are no known theme keys to offer in that case, so it contributes
|
|
44
|
-
* nothing instead.
|
|
45
|
-
*/
|
|
46
|
-
export type ThemeUpdate = string extends ThemeKeys
|
|
47
|
-
? {}
|
|
48
|
-
: {
|
|
49
|
-
[Key in Exclude<ThemeKeys, ReservedThemePropName>]?: VariableValIn
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
type ThemeComponentPropsOnly = UseThemeWithStateProps &
|
|
53
|
-
ThemeUpdate & { contain?: boolean }
|
|
54
|
-
|
|
55
|
-
const useInsertEffectCompat = isWeb
|
|
56
|
-
? React.useInsertionEffect || useIsomorphicLayoutEffect
|
|
57
|
-
: () => {}
|
|
22
|
+
type ThemeComponentPropsOnly = UseThemeWithStateProps & { contain?: boolean }
|
|
58
23
|
|
|
59
24
|
export const Theme = createRefComponent(function Theme(
|
|
60
25
|
props: ThemeComponentPropsOnly,
|
|
@@ -66,48 +31,25 @@ export const Theme = createRefComponent(function Theme(
|
|
|
66
31
|
return props.children
|
|
67
32
|
}
|
|
68
33
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
const config = getConfig()
|
|
77
|
-
const inlineValues = getInlineValuesFromProps(props, config)
|
|
78
|
-
|
|
79
|
-
// on web the same layer also compiles to custom properties on this node, so
|
|
80
|
-
// styled descendants restyle through the cascade instead of re-rendering
|
|
81
|
-
let inlineCSS: ReturnType<typeof getVariablesCSSRules> = null
|
|
82
|
-
let rulesToInsert: RulesToInsert | null = null
|
|
83
|
-
if (process.env.TAMAGUI_TARGET !== 'native' && inlineValues) {
|
|
84
|
-
inlineCSS = getVariablesCSSRules(inlineValues, config)
|
|
85
|
-
if (inlineCSS && shouldInsertStyleRules(inlineCSS.identifier)) {
|
|
86
|
-
updateRules(inlineCSS.identifier, inlineCSS.rules)
|
|
87
|
-
rulesToInsert = {
|
|
88
|
-
[inlineCSS.identifier]: [
|
|
89
|
-
'variables',
|
|
90
|
-
'',
|
|
91
|
-
inlineCSS.identifier,
|
|
92
|
-
undefined,
|
|
93
|
-
inlineCSS.rules,
|
|
94
|
-
],
|
|
34
|
+
if (process.env.NODE_ENV === 'development') {
|
|
35
|
+
for (const key in props) {
|
|
36
|
+
if (!reservedThemeProps[key]) {
|
|
37
|
+
warnOnce(
|
|
38
|
+
`theme-update:${key}`,
|
|
39
|
+
`<Theme ${key}=...> no longer accepts inline values. Wrap the subtree in <ThemeUpdate ${key}=...> instead.`
|
|
40
|
+
)
|
|
95
41
|
}
|
|
96
42
|
}
|
|
97
43
|
}
|
|
98
44
|
|
|
99
|
-
|
|
100
|
-
if (rulesToInsert) insertStyleRules(rulesToInsert)
|
|
101
|
-
}, [inlineCSS?.identifier])
|
|
45
|
+
const { passThrough } = props
|
|
102
46
|
|
|
103
|
-
const
|
|
104
|
-
? { ...props, inlineValues, inlineClassName: inlineCSS?.identifier }
|
|
105
|
-
: props
|
|
47
|
+
const isRoot = !!props['_isRoot']
|
|
106
48
|
|
|
107
49
|
// pass forThemeView=true so the descendant-cascade effect is installed —
|
|
108
50
|
// <Theme> pushes themeState.id into ThemeStateContext, so children subscribe
|
|
109
51
|
// under this id and need to be notified when our propsKey changes.
|
|
110
|
-
const [_, themeState] = useThemeWithState(
|
|
52
|
+
const [_, themeState] = useThemeWithState(props, isRoot, true)
|
|
111
53
|
|
|
112
54
|
useIsomorphicLayoutEffect(() => {
|
|
113
55
|
if (process.env.TAMAGUI_TARGET !== 'native') return
|
|
@@ -142,7 +84,7 @@ export const Theme = createRefComponent(function Theme(
|
|
|
142
84
|
return getThemedChildren(
|
|
143
85
|
themeState,
|
|
144
86
|
finalChildren,
|
|
145
|
-
|
|
87
|
+
props,
|
|
146
88
|
isRoot,
|
|
147
89
|
stateRef,
|
|
148
90
|
passThrough
|
|
@@ -261,10 +203,9 @@ export function getThemedChildren(
|
|
|
261
203
|
? {}
|
|
262
204
|
: getThemeClassNameAndColor(themeState, props, isRoot)
|
|
263
205
|
|
|
264
|
-
//
|
|
265
|
-
//
|
|
266
|
-
|
|
267
|
-
const inlineClassName = passThrough ? undefined : props.inlineClassName
|
|
206
|
+
// ThemeUpdate values ride the anonymous Theme span it creates, and land
|
|
207
|
+
// even when the resolved theme name itself did not change
|
|
208
|
+
const inlineClassName = passThrough ? undefined : props._themeUpdate?.className
|
|
268
209
|
|
|
269
210
|
children = (
|
|
270
211
|
<span
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { createRefComponent, type RefComponent } from '@tamagui/compose-refs'
|
|
2
|
+
import { isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'
|
|
3
|
+
import React from 'react'
|
|
4
|
+
import { getConfig } from '../config'
|
|
5
|
+
import {
|
|
6
|
+
insertStyleRules,
|
|
7
|
+
shouldInsertStyleRules,
|
|
8
|
+
updateRules,
|
|
9
|
+
} from '../helpers/insertStyleRule'
|
|
10
|
+
import type { ThemeUpdateState } from '../helpers/themeUpdateState'
|
|
11
|
+
import {
|
|
12
|
+
getInlineValuesFromProps,
|
|
13
|
+
getInlineValuesKey,
|
|
14
|
+
getMergedInlineTheme,
|
|
15
|
+
getVariablesCSSRules,
|
|
16
|
+
type InlineValues,
|
|
17
|
+
} from '../helpers/variables'
|
|
18
|
+
import type {
|
|
19
|
+
ReservedThemePropName,
|
|
20
|
+
RulesToInsert,
|
|
21
|
+
ThemeKeys,
|
|
22
|
+
VariableValIn,
|
|
23
|
+
} from '../types'
|
|
24
|
+
import { Theme } from './Theme'
|
|
25
|
+
|
|
26
|
+
type ThemeUpdateValues = string extends ThemeKeys
|
|
27
|
+
? {}
|
|
28
|
+
: {
|
|
29
|
+
[Key in Exclude<ThemeKeys, ReservedThemePropName>]?: VariableValIn
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export type ThemeUpdateProps = ThemeUpdateValues & { children?: React.ReactNode }
|
|
33
|
+
|
|
34
|
+
const useInsertEffectCompat = isWeb
|
|
35
|
+
? React.useInsertionEffect || useIsomorphicLayoutEffect
|
|
36
|
+
: () => {}
|
|
37
|
+
|
|
38
|
+
const updateStates = new WeakMap<InlineValues, ThemeUpdateState>()
|
|
39
|
+
|
|
40
|
+
export function createThemeUpdateState(
|
|
41
|
+
values: InlineValues,
|
|
42
|
+
className?: string
|
|
43
|
+
): ThemeUpdateState {
|
|
44
|
+
const cached = updateStates.get(values)
|
|
45
|
+
if (cached) return cached
|
|
46
|
+
const state: ThemeUpdateState = {
|
|
47
|
+
key: getInlineValuesKey(values),
|
|
48
|
+
className,
|
|
49
|
+
values,
|
|
50
|
+
getTheme(parentTheme, themeName, config) {
|
|
51
|
+
return getMergedInlineTheme(parentTheme, values, themeName, config) as any
|
|
52
|
+
},
|
|
53
|
+
}
|
|
54
|
+
updateStates.set(values, state)
|
|
55
|
+
return state
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export const ThemeUpdate: RefComponent<unknown, ThemeUpdateProps> = createRefComponent(
|
|
59
|
+
function ThemeUpdate(props: ThemeUpdateProps, ref) {
|
|
60
|
+
'use no memo'
|
|
61
|
+
|
|
62
|
+
const config = getConfig()
|
|
63
|
+
const values = getInlineValuesFromProps(props, config)
|
|
64
|
+
const css =
|
|
65
|
+
process.env.TAMAGUI_TARGET === 'native' || !values
|
|
66
|
+
? null
|
|
67
|
+
: getVariablesCSSRules(values, config)
|
|
68
|
+
let rulesToInsert: RulesToInsert | null = null
|
|
69
|
+
if (css && shouldInsertStyleRules(css.identifier)) {
|
|
70
|
+
updateRules(css.identifier, css.rules)
|
|
71
|
+
rulesToInsert = {
|
|
72
|
+
[css.identifier]: ['variables', '', css.identifier, undefined, css.rules],
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
useInsertEffectCompat(() => {
|
|
77
|
+
if (rulesToInsert) insertStyleRules(rulesToInsert)
|
|
78
|
+
}, [css?.identifier])
|
|
79
|
+
|
|
80
|
+
if (!values) return props.children
|
|
81
|
+
|
|
82
|
+
return (
|
|
83
|
+
<Theme ref={ref} _themeUpdate={createThemeUpdateState(values, css?.identifier)}>
|
|
84
|
+
{props.children}
|
|
85
|
+
</Theme>
|
|
86
|
+
)
|
|
87
|
+
}
|
|
88
|
+
)
|