@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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SafeAreaTracker.native.js","names":[],"sources":["esm/views/SafeAreaTracker.native.js"],"sourcesContent":["import { getSafeArea, hasSafeAreaSetup } from \"@tamagui/native\";\nfunction hasSafeAreaTracker() {\n return hasSafeAreaSetup();\n}\nfunction SafeAreaTracker() {\n getSafeArea().state.useSafeAreaInsets();\n return null;\n}\nexport {\n SafeAreaTracker,\n hasSafeAreaTracker\n};\n//# sourceMappingURL=SafeAreaTracker.native.js.map\n"],"mappings":";;;AACA,SAAS,qBAAqB;CAC5B,OAAO,iBAAiB;AAC1B;AACA,SAAS,kBAAkB;CACzB,YAAY,
|
|
1
|
+
{"version":3,"file":"SafeAreaTracker.native.js","names":[],"sources":["esm/views/SafeAreaTracker.native.js"],"sourcesContent":["import { getSafeArea, hasSafeAreaSetup } from \"@tamagui/native\";\nfunction hasSafeAreaTracker() {\n return hasSafeAreaSetup();\n}\nfunction SafeAreaTracker() {\n getSafeArea().state.useSafeAreaInsets();\n return null;\n}\nexport {\n SafeAreaTracker,\n hasSafeAreaTracker\n};\n//# sourceMappingURL=SafeAreaTracker.native.js.map\n"],"mappings":";;;AACA,SAAS,qBAAqB;CAC5B,OAAO,iBAAiB;AAC1B;AACA,SAAS,kBAAkB;CACzB,YAAY,CAAC,CAAC,MAAM,kBAAkB;CACtC,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TamaguiProvider.js","names":[],"sources":["esm/views/TamaguiProvider.js"],"sourcesContent":["import { useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { ClientOnly } from \"@tamagui/use-did-finish-ssr\";\nimport React, { useEffect } from \"react\";\nimport { getSetting } from \"../config\";\nimport { ComponentContext } from \"../contexts/ComponentContext\";\nimport { stopAccumulatingRules } from \"../helpers/insertStyleRule\";\nimport { updateMediaListeners } from \"../hooks/useMedia\";\nimport { resolveAnimationDriver } from \"../helpers/resolveAnimationDriver\";\nimport { ConfigRevisionCheck } from \"./ConfigRevisionCheck\";\nimport { SafeAreaTracker, hasSafeAreaTracker } from \"./SafeAreaTracker\";\nimport { TamaguiRoot } from \"./TamaguiRoot\";\nimport { ThemeProvider } from \"./ThemeProvider\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\n\nlet _cachedFirstKey;\nlet _cachedConfig;\nfunction firstThemeKey(config) {\n\tif (config !== _cachedConfig) {\n\t\t_cachedConfig = config;\n\t\t_cachedFirstKey = config?.themes ? Object.keys(config.themes)[0] : void 0;\n\t}\n\treturn _cachedFirstKey;\n}\nfunction TamaguiProvider({ children, disableInjectCSS, config, className, defaultTheme: defaultThemeProp, reset, insets, isSubtreeRoot }) {\n\tconst defaultTheme = defaultThemeProp || firstThemeKey(config) || \"light\";\n\tuseIsomorphicLayoutEffect(() => {\n\t\tconst resumeAccumulatingRules = stopAccumulatingRules();\n\t\tupdateMediaListeners();\n\t\treturn resumeAccumulatingRules;\n\t}, []);\n\tconst memoizedInsets = React.useMemo(() => insets, [\n\t\tinsets?.top,\n\t\tinsets?.right,\n\t\tinsets?.bottom,\n\t\tinsets?.left\n\t]);\n\tconst defaultAnimationDriver = React.useMemo(() => {\n\t\tconst driver = resolveAnimationDriver(config?.animations);\n\t\treturn driver?.isStub ? null : driver;\n\t}, [config?.animations]);\n\tuseEffect(() => {\n\t\tdefaultAnimationDriver?.onMount?.();\n\t}, []);\n\tlet contents = /* @__PURE__ */ jsx(ComponentContext.Provider, {\n\t\tanimationDriver: defaultAnimationDriver,\n\t\tinsets: memoizedInsets,\n\t\tchildren: /* @__PURE__ */ jsx(ThemeProvider, {\n\t\t\tdefaultTheme,\n\t\t\treset,\n\t\t\tclassName,\n\t\t\tisSubtreeRoot,\n\t\t\tchildren: /* @__PURE__ */ jsx(TamaguiRoot, {\n\t\t\t\ttheme: defaultTheme,\n\t\t\t\tisRootRoot: true,\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n\tif (getSetting(\"disableSSR\")) contents = /* @__PURE__ */ jsx(ClientOnly, {\n\t\tenabled: true,\n\t\tchildren: contents\n\t});\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [\n\t\tconfig && !disableInjectCSS && /* @__PURE__ */ jsx(\"style\", {\n\t\t\tprecedence: \"default\",\n\t\t\thref: \"tamagui-css\",\n\t\t\tchildren: config.getCSS()\n\t\t}, \"tamagui-css\"),\n\t\tprocess.env.NODE_ENV !== \"production\" && config && /* @__PURE__ */ jsx(ConfigRevisionCheck, { config }),\n\t\thasSafeAreaTracker() && /* @__PURE__ */ jsx(SafeAreaTracker, {}),\n\t\tcontents\n\t] });\n}\n\nexport { TamaguiProvider };"],"mappings":";;;;;;;;;;;;;;;AAcA,IAAI;AACJ,IAAI;AACJ,SAAS,cAAc,QAAQ;CAC9B,IAAI,WAAW,eAAe;EAC7B,gBAAgB;EAChB,kBAAkB,QAAQ,SAAS,OAAO,KAAK,OAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"TamaguiProvider.js","names":[],"sources":["esm/views/TamaguiProvider.js"],"sourcesContent":["import { useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { ClientOnly } from \"@tamagui/use-did-finish-ssr\";\nimport React, { useEffect } from \"react\";\nimport { getSetting } from \"../config\";\nimport { ComponentContext } from \"../contexts/ComponentContext\";\nimport { stopAccumulatingRules } from \"../helpers/insertStyleRule\";\nimport { updateMediaListeners } from \"../hooks/useMedia\";\nimport { resolveAnimationDriver } from \"../helpers/resolveAnimationDriver\";\nimport { ConfigRevisionCheck } from \"./ConfigRevisionCheck\";\nimport { SafeAreaTracker, hasSafeAreaTracker } from \"./SafeAreaTracker\";\nimport { TamaguiRoot } from \"./TamaguiRoot\";\nimport { ThemeProvider } from \"./ThemeProvider\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\n\nlet _cachedFirstKey;\nlet _cachedConfig;\nfunction firstThemeKey(config) {\n\tif (config !== _cachedConfig) {\n\t\t_cachedConfig = config;\n\t\t_cachedFirstKey = config?.themes ? Object.keys(config.themes)[0] : void 0;\n\t}\n\treturn _cachedFirstKey;\n}\nfunction TamaguiProvider({ children, disableInjectCSS, config, className, defaultTheme: defaultThemeProp, reset, insets, isSubtreeRoot }) {\n\tconst defaultTheme = defaultThemeProp || firstThemeKey(config) || \"light\";\n\tuseIsomorphicLayoutEffect(() => {\n\t\tconst resumeAccumulatingRules = stopAccumulatingRules();\n\t\tupdateMediaListeners();\n\t\treturn resumeAccumulatingRules;\n\t}, []);\n\tconst memoizedInsets = React.useMemo(() => insets, [\n\t\tinsets?.top,\n\t\tinsets?.right,\n\t\tinsets?.bottom,\n\t\tinsets?.left\n\t]);\n\tconst defaultAnimationDriver = React.useMemo(() => {\n\t\tconst driver = resolveAnimationDriver(config?.animations);\n\t\treturn driver?.isStub ? null : driver;\n\t}, [config?.animations]);\n\tuseEffect(() => {\n\t\tdefaultAnimationDriver?.onMount?.();\n\t}, []);\n\tlet contents = /* @__PURE__ */ jsx(ComponentContext.Provider, {\n\t\tanimationDriver: defaultAnimationDriver,\n\t\tinsets: memoizedInsets,\n\t\tchildren: /* @__PURE__ */ jsx(ThemeProvider, {\n\t\t\tdefaultTheme,\n\t\t\treset,\n\t\t\tclassName,\n\t\t\tisSubtreeRoot,\n\t\t\tchildren: /* @__PURE__ */ jsx(TamaguiRoot, {\n\t\t\t\ttheme: defaultTheme,\n\t\t\t\tisRootRoot: true,\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n\tif (getSetting(\"disableSSR\")) contents = /* @__PURE__ */ jsx(ClientOnly, {\n\t\tenabled: true,\n\t\tchildren: contents\n\t});\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [\n\t\tconfig && !disableInjectCSS && /* @__PURE__ */ jsx(\"style\", {\n\t\t\tprecedence: \"default\",\n\t\t\thref: \"tamagui-css\",\n\t\t\tchildren: config.getCSS()\n\t\t}, \"tamagui-css\"),\n\t\tprocess.env.NODE_ENV !== \"production\" && config && /* @__PURE__ */ jsx(ConfigRevisionCheck, { config }),\n\t\thasSafeAreaTracker() && /* @__PURE__ */ jsx(SafeAreaTracker, {}),\n\t\tcontents\n\t] });\n}\n\nexport { TamaguiProvider };"],"mappings":";;;;;;;;;;;;;;;AAcA,IAAI;AACJ,IAAI;AACJ,SAAS,cAAc,QAAQ;CAC9B,IAAI,WAAW,eAAe;EAC7B,gBAAgB;EAChB,kBAAkB,QAAQ,SAAS,OAAO,KAAK,OAAO,MAAM,CAAC,CAAC,KAAK,KAAK;CACzE;CACA,OAAO;AACR;AACA,SAAS,gBAAgB,EAAE,UAAU,kBAAkB,QAAQ,WAAW,cAAc,kBAAkB,OAAO,QAAQ,iBAAiB;CACzI,MAAM,eAAe,oBAAoB,cAAc,MAAM,KAAK;CAClE,gCAAgC;EAC/B,MAAM,0BAA0B,sBAAsB;EACtD,qBAAqB;EACrB,OAAO;CACR,GAAG,CAAC,CAAC;CACL,MAAM,iBAAiB,MAAM,cAAc,QAAQ;EAClD,QAAQ;EACR,QAAQ;EACR,QAAQ;EACR,QAAQ;CACT,CAAC;CACD,MAAM,yBAAyB,MAAM,cAAc;EAClD,MAAM,SAAS,uBAAuB,QAAQ,UAAU;EACxD,OAAO,QAAQ,SAAS,OAAO;CAChC,GAAG,CAAC,QAAQ,UAAU,CAAC;CACvB,gBAAgB;EACf,wBAAwB,UAAU;CACnC,GAAG,CAAC,CAAC;CACL,IAAI,WAA2B,oBAAI,iBAAiB,UAAU;EAC7D,iBAAiB;EACjB,QAAQ;EACR,UAA0B,oBAAI,eAAe;GAC5C;GACA;GACA;GACA;GACA,UAA0B,oBAAI,aAAa;IAC1C,OAAO;IACP,YAAY;IACZ;GACD,CAAC;EACF,CAAC;CACF,CAAC;CACD,IAAI,WAAW,YAAY,GAAG,WAA2B,oBAAI,YAAY;EACxE,SAAS;EACT,UAAU;CACX,CAAC;CACD,OAAuB,qBAAK,UAAU,EAAE,UAAU;EACjD,UAAU,CAAC,oBAAoC,oBAAI,SAAS;GAC3D,YAAY;GACZ,MAAM;GACN,UAAU,OAAO,OAAO;EACzB,GAAG,aAAa;EAChB,QAAQ,IAAI,aAAa,gBAAgB,UAA0B,oBAAI,qBAAqB,EAAE,OAAO,CAAC;EACtG,mBAAmB,KAAqB,oBAAI,iBAAiB,CAAC,CAAC;EAC/D;CACD,EAAE,CAAC;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TamaguiProvider.native.js","names":[],"sources":["esm/views/TamaguiProvider.native.js"],"sourcesContent":["import { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nimport { useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { ClientOnly } from \"@tamagui/use-did-finish-ssr\";\nimport React, { useEffect } from \"react\";\nimport { getSetting } from \"../config\";\nimport { ComponentContext } from \"../contexts/ComponentContext\";\nimport { stopAccumulatingRules } from \"../helpers/insertStyleRule\";\nimport { updateMediaListeners } from \"../hooks/useMedia\";\nimport { resolveAnimationDriver } from \"../helpers/resolveAnimationDriver\";\nimport { SafeAreaTracker, hasSafeAreaTracker } from \"./SafeAreaTracker\";\nimport { TamaguiRoot } from \"./TamaguiRoot\";\nimport { ThemeProvider } from \"./ThemeProvider\";\n\nvar _cachedFirstKey;\nvar _cachedConfig;\nfunction firstThemeKey(config) {\n\tif (config !== _cachedConfig) {\n\t\t_cachedConfig = config;\n\t\t_cachedFirstKey = (config === null || config === void 0 ? void 0 : config.themes) ? Object.keys(config.themes)[0] : void 0;\n\t}\n\treturn _cachedFirstKey;\n}\nfunction TamaguiProvider(param) {\n\tvar { children, disableInjectCSS, config, className, defaultTheme: defaultThemeProp, reset, insets, isSubtreeRoot } = param;\n\tvar defaultTheme = defaultThemeProp || firstThemeKey(config) || \"light\";\n\tuseIsomorphicLayoutEffect(function() {\n\t\tvar resumeAccumulatingRules = stopAccumulatingRules();\n\t\tupdateMediaListeners();\n\t\treturn resumeAccumulatingRules;\n\t}, []);\n\tvar memoizedInsets = React.useMemo(function() {\n\t\treturn insets;\n\t}, [\n\t\tinsets === null || insets === void 0 ? void 0 : insets.top,\n\t\tinsets === null || insets === void 0 ? void 0 : insets.right,\n\t\tinsets === null || insets === void 0 ? void 0 : insets.bottom,\n\t\tinsets === null || insets === void 0 ? void 0 : insets.left\n\t]);\n\tvar defaultAnimationDriver = React.useMemo(function() {\n\t\tvar driver = resolveAnimationDriver(config === null || config === void 0 ? void 0 : config.animations);\n\t\treturn (driver === null || driver === void 0 ? void 0 : driver.isStub) ? null : driver;\n\t}, [config === null || config === void 0 ? void 0 : config.animations]);\n\tuseEffect(function() {\n\t\tvar _defaultAnimationDriver_onMount;\n\t\tdefaultAnimationDriver === null || defaultAnimationDriver === void 0 || (_defaultAnimationDriver_onMount = defaultAnimationDriver.onMount) == null || _defaultAnimationDriver_onMount.call(defaultAnimationDriver);\n\t}, []);\n\tvar contents = /* @__PURE__ */ jsx(ComponentContext.Provider, {\n\t\tanimationDriver: defaultAnimationDriver,\n\t\tinsets: memoizedInsets,\n\t\tchildren: /* @__PURE__ */ jsx(ThemeProvider, {\n\t\t\tdefaultTheme,\n\t\t\treset,\n\t\t\tclassName,\n\t\t\tisSubtreeRoot,\n\t\t\tchildren: /* @__PURE__ */ jsx(TamaguiRoot, {\n\t\t\t\ttheme: defaultTheme,\n\t\t\t\tisRootRoot: true,\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n\tif (getSetting(\"disableSSR\")) contents = /* @__PURE__ */ jsx(ClientOnly, {\n\t\tenabled: true,\n\t\tchildren: contents\n\t});\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [\n\t\tfalse,\n\t\tprocess.env.NODE_ENV !== \"production\" && false,\n\t\thasSafeAreaTracker() && /* @__PURE__ */ jsx(SafeAreaTracker, {}),\n\t\tcontents\n\t] });\n}\n\nexport { TamaguiProvider };"],"mappings":";;;;;;;;;;;;;;AAaA,IAAI;AACJ,IAAI;AACJ,SAAS,cAAc,QAAQ;CAC9B,IAAI,WAAW,eAAe;EAC7B,gBAAgB;EAChB,mBAAmB,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,UAAU,OAAO,KAAK,OAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"TamaguiProvider.native.js","names":[],"sources":["esm/views/TamaguiProvider.native.js"],"sourcesContent":["import { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nimport { useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { ClientOnly } from \"@tamagui/use-did-finish-ssr\";\nimport React, { useEffect } from \"react\";\nimport { getSetting } from \"../config\";\nimport { ComponentContext } from \"../contexts/ComponentContext\";\nimport { stopAccumulatingRules } from \"../helpers/insertStyleRule\";\nimport { updateMediaListeners } from \"../hooks/useMedia\";\nimport { resolveAnimationDriver } from \"../helpers/resolveAnimationDriver\";\nimport { SafeAreaTracker, hasSafeAreaTracker } from \"./SafeAreaTracker\";\nimport { TamaguiRoot } from \"./TamaguiRoot\";\nimport { ThemeProvider } from \"./ThemeProvider\";\n\nvar _cachedFirstKey;\nvar _cachedConfig;\nfunction firstThemeKey(config) {\n\tif (config !== _cachedConfig) {\n\t\t_cachedConfig = config;\n\t\t_cachedFirstKey = (config === null || config === void 0 ? void 0 : config.themes) ? Object.keys(config.themes)[0] : void 0;\n\t}\n\treturn _cachedFirstKey;\n}\nfunction TamaguiProvider(param) {\n\tvar { children, disableInjectCSS, config, className, defaultTheme: defaultThemeProp, reset, insets, isSubtreeRoot } = param;\n\tvar defaultTheme = defaultThemeProp || firstThemeKey(config) || \"light\";\n\tuseIsomorphicLayoutEffect(function() {\n\t\tvar resumeAccumulatingRules = stopAccumulatingRules();\n\t\tupdateMediaListeners();\n\t\treturn resumeAccumulatingRules;\n\t}, []);\n\tvar memoizedInsets = React.useMemo(function() {\n\t\treturn insets;\n\t}, [\n\t\tinsets === null || insets === void 0 ? void 0 : insets.top,\n\t\tinsets === null || insets === void 0 ? void 0 : insets.right,\n\t\tinsets === null || insets === void 0 ? void 0 : insets.bottom,\n\t\tinsets === null || insets === void 0 ? void 0 : insets.left\n\t]);\n\tvar defaultAnimationDriver = React.useMemo(function() {\n\t\tvar driver = resolveAnimationDriver(config === null || config === void 0 ? void 0 : config.animations);\n\t\treturn (driver === null || driver === void 0 ? void 0 : driver.isStub) ? null : driver;\n\t}, [config === null || config === void 0 ? void 0 : config.animations]);\n\tuseEffect(function() {\n\t\tvar _defaultAnimationDriver_onMount;\n\t\tdefaultAnimationDriver === null || defaultAnimationDriver === void 0 || (_defaultAnimationDriver_onMount = defaultAnimationDriver.onMount) == null || _defaultAnimationDriver_onMount.call(defaultAnimationDriver);\n\t}, []);\n\tvar contents = /* @__PURE__ */ jsx(ComponentContext.Provider, {\n\t\tanimationDriver: defaultAnimationDriver,\n\t\tinsets: memoizedInsets,\n\t\tchildren: /* @__PURE__ */ jsx(ThemeProvider, {\n\t\t\tdefaultTheme,\n\t\t\treset,\n\t\t\tclassName,\n\t\t\tisSubtreeRoot,\n\t\t\tchildren: /* @__PURE__ */ jsx(TamaguiRoot, {\n\t\t\t\ttheme: defaultTheme,\n\t\t\t\tisRootRoot: true,\n\t\t\t\tchildren\n\t\t\t})\n\t\t})\n\t});\n\tif (getSetting(\"disableSSR\")) contents = /* @__PURE__ */ jsx(ClientOnly, {\n\t\tenabled: true,\n\t\tchildren: contents\n\t});\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [\n\t\tfalse,\n\t\tprocess.env.NODE_ENV !== \"production\" && false,\n\t\thasSafeAreaTracker() && /* @__PURE__ */ jsx(SafeAreaTracker, {}),\n\t\tcontents\n\t] });\n}\n\nexport { TamaguiProvider };"],"mappings":";;;;;;;;;;;;;;AAaA,IAAI;AACJ,IAAI;AACJ,SAAS,cAAc,QAAQ;CAC9B,IAAI,WAAW,eAAe;EAC7B,gBAAgB;EAChB,mBAAmB,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,UAAU,OAAO,KAAK,OAAO,MAAM,CAAC,CAAC,KAAK,KAAK;CAC1H;CACA,OAAO;AACR;AACA,SAAS,gBAAgB,OAAO;CAC/B,IAAI,EAAE,UAAU,kBAAkB,QAAQ,WAAW,cAAc,kBAAkB,OAAO,QAAQ,kBAAkB;CACtH,IAAI,eAAe,oBAAoB,cAAc,MAAM,KAAK;CAChE,0BAA0B,WAAW;EACpC,IAAI,0BAA0B,sBAAsB;EACpD,qBAAqB;EACrB,OAAO;CACR,GAAG,CAAC,CAAC;CACL,IAAI,iBAAiB,MAAM,QAAQ,WAAW;EAC7C,OAAO;CACR,GAAG;EACF,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO;EACvD,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO;EACvD,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO;EACvD,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO;CACxD,CAAC;CACD,IAAI,yBAAyB,MAAM,QAAQ,WAAW;EACrD,IAAI,SAAS,uBAAuB,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,UAAU;EACrG,QAAQ,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,UAAU,OAAO;CACjF,GAAG,CAAC,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,UAAU,CAAC;CACtE,UAAU,WAAW;EACpB,IAAI;EACJ,2BAA2B,QAAQ,2BAA2B,KAAK,MAAM,kCAAkC,uBAAuB,YAAY,QAAQ,gCAAgC,KAAK,sBAAsB;CAClN,GAAG,CAAC,CAAC;CACL,IAAI,WAA2B,oBAAI,iBAAiB,UAAU;EAC7D,iBAAiB;EACjB,QAAQ;EACR,UAA0B,oBAAI,eAAe;GAC5C;GACA;GACA;GACA;GACA,UAA0B,oBAAI,aAAa;IAC1C,OAAO;IACP,YAAY;IACZ;GACD,CAAC;EACF,CAAC;CACF,CAAC;CACD,IAAI,WAAW,YAAY,GAAG,WAA2B,oBAAI,YAAY;EACxE,SAAS;EACT,UAAU;CACX,CAAC;CACD,OAAuB,qBAAK,UAAU,EAAE,UAAU;EACjD;EACA,QAAQ,IAAI,aAAa,gBAAgB;EACzC,mBAAmB,KAAqB,oBAAI,iBAAiB,CAAC,CAAC;EAC/D;CACD,EAAE,CAAC;AACJ"}
|
package/dist/esm/views/Theme.mjs
CHANGED
|
@@ -1,49 +1,24 @@
|
|
|
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 React, { Children, cloneElement, isValidElement, useRef } from "react";
|
|
5
|
-
import { getConfig } from "../config.mjs";
|
|
6
5
|
import { variableToString } from "../createVariable.mjs";
|
|
7
6
|
import { formatDiagnostic } from "../helpers/formatDiagnostic.mjs";
|
|
8
|
-
import {
|
|
9
|
-
import { getInlineValuesFromProps, getVariablesCSSRules } from "../helpers/variables.mjs";
|
|
7
|
+
import { warnOnce } from "../helpers/warnOnce.mjs";
|
|
10
8
|
import { useThemeWithState } from "../hooks/useTheme.mjs";
|
|
11
9
|
import { ThemeStateContext, getThemeState, hasThemeUpdatingProps } from "../hooks/useThemeState.mjs";
|
|
12
10
|
import { ThemeDebug } from "./ThemeDebug.mjs";
|
|
13
11
|
import { jsx } from "react/jsx-runtime";
|
|
14
12
|
|
|
15
|
-
const useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : () => {};
|
|
16
13
|
const Theme = createRefComponent(function Theme2(props, ref) {
|
|
17
14
|
"use no memo";
|
|
18
15
|
if (props.disable) return props.children;
|
|
16
|
+
if (process.env.NODE_ENV === "development") {
|
|
17
|
+
for (const key in props) if (!reservedThemeProps[key]) warnOnce(`theme-update:${key}`, `<Theme ${key}=...> no longer accepts inline values. Wrap the subtree in <ThemeUpdate ${key}=...> instead.`);
|
|
18
|
+
}
|
|
19
19
|
const { passThrough } = props;
|
|
20
20
|
const isRoot = !!props["_isRoot"];
|
|
21
|
-
const
|
|
22
|
-
const inlineValues = getInlineValuesFromProps(props, config);
|
|
23
|
-
let inlineCSS = null;
|
|
24
|
-
let rulesToInsert = null;
|
|
25
|
-
if (inlineValues) {
|
|
26
|
-
inlineCSS = getVariablesCSSRules(inlineValues, config);
|
|
27
|
-
if (inlineCSS && shouldInsertStyleRules(inlineCSS.identifier)) {
|
|
28
|
-
updateRules(inlineCSS.identifier, inlineCSS.rules);
|
|
29
|
-
rulesToInsert = { [inlineCSS.identifier]: [
|
|
30
|
-
"variables",
|
|
31
|
-
"",
|
|
32
|
-
inlineCSS.identifier,
|
|
33
|
-
void 0,
|
|
34
|
-
inlineCSS.rules
|
|
35
|
-
] };
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
useInsertEffectCompat(() => {
|
|
39
|
-
if (rulesToInsert) insertStyleRules(rulesToInsert);
|
|
40
|
-
}, [inlineCSS?.identifier]);
|
|
41
|
-
const themeProps = inlineValues ? {
|
|
42
|
-
...props,
|
|
43
|
-
inlineValues,
|
|
44
|
-
inlineClassName: inlineCSS?.identifier
|
|
45
|
-
} : props;
|
|
46
|
-
const [_, themeState] = useThemeWithState(themeProps, isRoot, true);
|
|
21
|
+
const [_, themeState] = useThemeWithState(props, isRoot, true);
|
|
47
22
|
useIsomorphicLayoutEffect(() => {}, [
|
|
48
23
|
themeState.id,
|
|
49
24
|
themeState.name,
|
|
@@ -55,7 +30,7 @@ const Theme = createRefComponent(function Theme2(props, ref) {
|
|
|
55
30
|
finalChildren = cloneElement(finalChildren, { ref });
|
|
56
31
|
} catch {}
|
|
57
32
|
const stateRef = useRef({ hasEverThemed: false });
|
|
58
|
-
return getThemedChildren(themeState, finalChildren,
|
|
33
|
+
return getThemedChildren(themeState, finalChildren, props, isRoot, stateRef, passThrough);
|
|
59
34
|
});
|
|
60
35
|
Theme["avoidForwardRef"] = true;
|
|
61
36
|
function getThemedChildren(themeState, children, props, isRoot = false, stateRef, passThrough = false) {
|
|
@@ -102,7 +77,7 @@ function getThemedChildren(themeState, children, props, isRoot = false, stateRef
|
|
|
102
77
|
if (isWeb) {
|
|
103
78
|
const baseStyle = props.contain ? inertContainedStyle : inertStyle;
|
|
104
79
|
const { className = "", color } = passThrough ? {} : getThemeClassNameAndColor(themeState, props, isRoot);
|
|
105
|
-
const inlineClassName = passThrough ? void 0 : props.
|
|
80
|
+
const inlineClassName = passThrough ? void 0 : props._themeUpdate?.className;
|
|
106
81
|
children = /* @__PURE__ */ jsx("span", {
|
|
107
82
|
className: `${className} is_Theme${inlineClassName ? ` ${inlineClassName}` : ""}`,
|
|
108
83
|
style: passThrough ? baseStyle : {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.js","names":[],"sources":["esm/views/Theme.js"],"sourcesContent":["import { createRefComponent } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { getThemeClassNames } from \"@tamagui/helpers\";\nimport React, { Children, cloneElement, isValidElement, useRef } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"Theme.js","names":[],"sources":["esm/views/Theme.js"],"sourcesContent":["import { createRefComponent } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { getThemeClassNames, reservedThemeProps } from \"@tamagui/helpers\";\nimport React, { Children, cloneElement, isValidElement, useRef } from \"react\";\nimport { variableToString } from \"../createVariable\";\nimport { formatDiagnostic } from \"../helpers/formatDiagnostic\";\nimport { warnOnce } from \"../helpers/warnOnce\";\nimport { useThemeWithState } from \"../hooks/useTheme\";\nimport { ThemeStateContext, getThemeState, hasThemeUpdatingProps } from \"../hooks/useThemeState\";\nimport { ThemeDebug } from \"./ThemeDebug\";\nimport { jsx } from \"react/jsx-runtime\";\n\nconst Theme = createRefComponent(function Theme2(props, ref) {\n\t\"use no memo\";\n\tif (props.disable) return props.children;\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tfor (const key in props) if (!reservedThemeProps[key]) warnOnce(`theme-update:${key}`, `<Theme ${key}=...> no longer accepts inline values. Wrap the subtree in <ThemeUpdate ${key}=...> instead.`);\n\t}\n\tconst { passThrough } = props;\n\tconst isRoot = !!props[\"_isRoot\"];\n\tconst [_, themeState] = useThemeWithState(props, isRoot, true);\n\tuseIsomorphicLayoutEffect(() => {}, [\n\t\tthemeState.id,\n\t\tthemeState.name,\n\t\tthemeState.theme\n\t]);\n\tlet finalChildren = props[\"disable-child-theme\"] ? Children.map(props.children, (child) => passThrough || !isValidElement(child) ? child : cloneElement(child, { [\"data-disable-theme\"]: true })) : props.children;\n\tif (ref) try {\n\t\tReact.Children.only(finalChildren);\n\t\tfinalChildren = cloneElement(finalChildren, { ref });\n\t} catch {}\n\tconst stateRef = useRef({ hasEverThemed: false });\n\treturn getThemedChildren(themeState, finalChildren, props, isRoot, stateRef, passThrough);\n});\nTheme[\"avoidForwardRef\"] = true;\nfunction getThemedChildren(themeState, children, props, isRoot = false, stateRef, passThrough = false) {\n\tconst { shallow, forceClassName } = props;\n\tconst state = stateRef.current;\n\tlet shouldRenderChildrenWithTheme = state.hasEverThemed || themeState.isNew || isRoot || hasThemeUpdatingProps(props);\n\tif (process.env.NODE_ENV === \"development\" && props.debug === \"visualize\") children = /* @__PURE__ */ jsx(ThemeDebug, {\n\t\tthemeState,\n\t\tthemeProps: props,\n\t\tchildren\n\t});\n\tif (!shouldRenderChildrenWithTheme) return children;\n\tchildren = /* @__PURE__ */ jsx(ThemeStateContext.Provider, {\n\t\tvalue: themeState.id,\n\t\tchildren\n\t});\n\tconst { isInverse, name } = themeState;\n\tconst requiresExtraWrapper = isInverse || forceClassName;\n\tif (!state.hasEverThemed) state.hasEverThemed = true;\n\tif (requiresExtraWrapper || themeState.name === \"dark\" || themeState.name === \"light\") state.hasEverThemed = \"wrapped\";\n\tif (shallow) if (!themeState.parentId) {} else {\n\t\tconst parentState = getThemeState(themeState.isNew ? themeState.id : themeState.parentId);\n\t\tif (!parentState) throw new Error(formatDiagnostic(\"‼️010\", \"Theme\", \"parent theme state is missing for shallow rendering\", \"Keep <Theme shallow> inside its mounted parent Theme\", \"name,parentId\", {\n\t\t\tname: themeState.name,\n\t\t\tparentId: themeState.parentId\n\t\t}));\n\t\tchildren = Children.toArray(children).map((child) => {\n\t\t\treturn isValidElement(child) ? passThrough ? child : cloneElement(child, void 0, /* @__PURE__ */ jsx(Theme, {\n\t\t\t\tname: parentState.name,\n\t\t\t\tchildren: child.props.children\n\t\t\t})) : child;\n\t\t});\n\t}\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tif (!passThrough && props.debug) console.warn(` getThemedChildren`, {\n\t\t\trequiresExtraWrapper,\n\t\t\tforceClassName,\n\t\t\tthemeState,\n\t\t\tstate,\n\t\t\tthemeSpanProps: getThemeClassNameAndColor(themeState, props, isRoot)\n\t\t});\n\t}\n\tif (forceClassName === false) return children;\n\tif (isWeb) {\n\t\tconst baseStyle = props.contain ? inertContainedStyle : inertStyle;\n\t\tconst { className = \"\", color } = passThrough ? {} : getThemeClassNameAndColor(themeState, props, isRoot);\n\t\tconst inlineClassName = passThrough ? void 0 : props._themeUpdate?.className;\n\t\tchildren = /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: `${className} is_Theme${inlineClassName ? ` ${inlineClassName}` : \"\"}`,\n\t\t\tstyle: passThrough ? baseStyle : {\n\t\t\t\tcolor,\n\t\t\t\t...baseStyle\n\t\t\t},\n\t\t\tchildren\n\t\t});\n\t\tif (state.hasEverThemed === \"wrapped\") children = /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: requiresExtraWrapper ? `${name.startsWith(\"light\") ? \"t_light\" : name.startsWith(\"dark\") ? \"t_dark\" : \"\"} _dsp_contents` : `_dsp_contents`,\n\t\t\tchildren\n\t\t});\n\t\treturn children;\n\t}\n\treturn children;\n}\nconst inertStyle = { display: \"contents\" };\nconst inertContainedStyle = {\n\tdisplay: \"contents\",\n\tcontain: \"strict\"\n};\nconst empty = {\n\tclassName: \"\",\n\tcolor: void 0\n};\nfunction getThemeClassNameAndColor(themeState, props, isRoot = false) {\n\tif (!themeState.isNew && !props.forceClassName) return empty;\n\treturn {\n\t\tcolor: themeState?.theme && themeState.isNew ? variableToString(themeState.theme.color) : \"\",\n\t\tclassName: getThemeClassNames(themeState.name, isRoot)\n\t};\n}\n\nexport { Theme, getThemedChildren };"],"mappings":"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"}
|
|
@@ -1,36 +1,25 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import { createRefComponent } from "@tamagui/compose-refs";
|
|
3
3
|
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
4
|
-
import { getThemeClassNames } from "@tamagui/helpers";
|
|
4
|
+
import { getThemeClassNames, reservedThemeProps } from "@tamagui/helpers";
|
|
5
5
|
import React, { Children, cloneElement, isValidElement, useRef } from "react";
|
|
6
|
-
import { getConfig } from "../config.native.js";
|
|
7
6
|
import { variableToString } from "../createVariable.native.js";
|
|
8
7
|
import { formatDiagnostic } from "../helpers/formatDiagnostic.native.js";
|
|
9
|
-
import { insertStyleRules } from "../helpers/insertStyleRule.native.js";
|
|
10
8
|
import { removeNativeStyleScope, updateNativeStyleScope } from "../helpers/nativeStyleEngine.native.js";
|
|
11
|
-
import {
|
|
9
|
+
import { warnOnce } from "../helpers/warnOnce.native.js";
|
|
12
10
|
import { useThemeWithState } from "../hooks/useTheme.native.js";
|
|
13
11
|
import { ThemeStateContext, getThemeState, hasThemeUpdatingProps } from "../hooks/useThemeState.native.js";
|
|
14
12
|
import { ThemeDebug } from "./ThemeDebug.native.js";
|
|
15
13
|
|
|
16
|
-
var useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : function() {};
|
|
17
14
|
var Theme = createRefComponent(function Theme2(props, ref) {
|
|
18
15
|
"use no memo";
|
|
19
16
|
if (props.disable) return props.children;
|
|
17
|
+
if (process.env.NODE_ENV === "development") {
|
|
18
|
+
for (var key in props) if (!reservedThemeProps[key]) warnOnce(`theme-update:${key}`, `<Theme ${key}=...> no longer accepts inline values. Wrap the subtree in <ThemeUpdate ${key}=...> instead.`);
|
|
19
|
+
}
|
|
20
20
|
var { passThrough } = props;
|
|
21
21
|
var isRoot = !!props["_isRoot"];
|
|
22
|
-
var
|
|
23
|
-
var inlineCSS = null;
|
|
24
|
-
var rulesToInsert = null;
|
|
25
|
-
useInsertEffectCompat(function() {
|
|
26
|
-
if (rulesToInsert) insertStyleRules(rulesToInsert);
|
|
27
|
-
}, [inlineCSS === null || inlineCSS === void 0 ? void 0 : inlineCSS.identifier]);
|
|
28
|
-
var themeProps = inlineValues ? {
|
|
29
|
-
...props,
|
|
30
|
-
inlineValues,
|
|
31
|
-
inlineClassName: inlineCSS === null || inlineCSS === void 0 ? void 0 : inlineCSS.identifier
|
|
32
|
-
} : props;
|
|
33
|
-
var [_, themeState] = useThemeWithState(themeProps, isRoot, true);
|
|
22
|
+
var [_, themeState] = useThemeWithState(props, isRoot, true);
|
|
34
23
|
useIsomorphicLayoutEffect(function() {
|
|
35
24
|
updateNativeStyleScope(themeState.id, themeState.name, themeState.theme);
|
|
36
25
|
return function() {
|
|
@@ -49,7 +38,7 @@ var Theme = createRefComponent(function Theme2(props, ref) {
|
|
|
49
38
|
finalChildren = /* @__PURE__ */ cloneElement(finalChildren, { ref });
|
|
50
39
|
} catch (e) {}
|
|
51
40
|
var stateRef = useRef({ hasEverThemed: false });
|
|
52
|
-
return getThemedChildren(themeState, finalChildren,
|
|
41
|
+
return getThemedChildren(themeState, finalChildren, props, isRoot, stateRef, passThrough);
|
|
53
42
|
});
|
|
54
43
|
Theme["avoidForwardRef"] = true;
|
|
55
44
|
function getThemedChildren(themeState, children, props) {
|
|
@@ -95,9 +84,10 @@ function getThemedChildren(themeState, children, props) {
|
|
|
95
84
|
}
|
|
96
85
|
if (forceClassName === false) return children;
|
|
97
86
|
if (isWeb) {
|
|
87
|
+
var _props__themeUpdate;
|
|
98
88
|
var baseStyle = props.contain ? inertContainedStyle : inertStyle;
|
|
99
89
|
var { className = "", color } = passThrough ? {} : getThemeClassNameAndColor(themeState, props, isRoot);
|
|
100
|
-
var inlineClassName = passThrough ? void 0 : props.
|
|
90
|
+
var inlineClassName = passThrough ? void 0 : (_props__themeUpdate = props._themeUpdate) === null || _props__themeUpdate === void 0 ? void 0 : _props__themeUpdate.className;
|
|
101
91
|
children = /* @__PURE__ */ jsx("span", {
|
|
102
92
|
className: `${className} is_Theme${inlineClassName ? ` ${inlineClassName}` : ""}`,
|
|
103
93
|
style: passThrough ? baseStyle : {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.native.js","names":[],"sources":["esm/views/Theme.native.js"],"sourcesContent":["import { jsx } from \"react/jsx-runtime\";\nimport { createRefComponent } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { getThemeClassNames } from \"@tamagui/helpers\";\nimport React, { Children, cloneElement, isValidElement, useRef } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"Theme.native.js","names":[],"sources":["esm/views/Theme.native.js"],"sourcesContent":["import { jsx } from \"react/jsx-runtime\";\nimport { createRefComponent } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { getThemeClassNames, reservedThemeProps } from \"@tamagui/helpers\";\nimport React, { Children, cloneElement, isValidElement, useRef } from \"react\";\nimport { variableToString } from \"../createVariable\";\nimport { formatDiagnostic } from \"../helpers/formatDiagnostic\";\nimport { removeNativeStyleScope, updateNativeStyleScope } from \"../helpers/nativeStyleEngine\";\nimport { warnOnce } from \"../helpers/warnOnce\";\nimport { useThemeWithState } from \"../hooks/useTheme\";\nimport { ThemeStateContext, getThemeState, hasThemeUpdatingProps } from \"../hooks/useThemeState\";\nimport { ThemeDebug } from \"./ThemeDebug\";\n\nvar Theme = createRefComponent(function Theme2(props, ref) {\n\t\"use no memo\";\n\tif (props.disable) return props.children;\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tfor (var key in props) if (!reservedThemeProps[key]) warnOnce(`theme-update:${key}`, `<Theme ${key}=...> no longer accepts inline values. Wrap the subtree in <ThemeUpdate ${key}=...> instead.`);\n\t}\n\tvar { passThrough } = props;\n\tvar isRoot = !!props[\"_isRoot\"];\n\tvar [_, themeState] = useThemeWithState(props, isRoot, true);\n\tuseIsomorphicLayoutEffect(function() {\n\t\tupdateNativeStyleScope(themeState.id, themeState.name, themeState.theme);\n\t\treturn function() {\n\t\t\treturn removeNativeStyleScope(themeState.id);\n\t\t};\n\t}, [\n\t\tthemeState.id,\n\t\tthemeState.name,\n\t\tthemeState.theme\n\t]);\n\tvar finalChildren = props[\"disable-child-theme\"] ? Children.map(props.children, function(child) {\n\t\treturn passThrough || !/* @__PURE__ */ isValidElement(child) ? child : /* @__PURE__ */ cloneElement(child, { [\"data-disable-theme\"]: true });\n\t}) : props.children;\n\tif (ref) try {\n\t\tReact.Children.only(finalChildren);\n\t\tfinalChildren = /* @__PURE__ */ cloneElement(finalChildren, { ref });\n\t} catch (e) {}\n\tvar stateRef = useRef({ hasEverThemed: false });\n\treturn getThemedChildren(themeState, finalChildren, props, isRoot, stateRef, passThrough);\n});\nTheme[\"avoidForwardRef\"] = true;\nfunction getThemedChildren(themeState, children, props) {\n\tvar isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false, stateRef = arguments.length > 4 ? arguments[4] : void 0, passThrough = arguments.length > 5 && arguments[5] !== void 0 ? arguments[5] : false;\n\tvar { shallow, forceClassName } = props;\n\tvar state = stateRef.current;\n\tvar shouldRenderChildrenWithTheme = state.hasEverThemed || themeState.isNew || isRoot || hasThemeUpdatingProps(props);\n\tif (process.env.NODE_ENV === \"development\" && props.debug === \"visualize\") children = /* @__PURE__ */ jsx(ThemeDebug, {\n\t\tthemeState,\n\t\tthemeProps: props,\n\t\tchildren\n\t});\n\tif (!shouldRenderChildrenWithTheme) return children;\n\tchildren = /* @__PURE__ */ jsx(ThemeStateContext.Provider, {\n\t\tvalue: themeState.id,\n\t\tchildren\n\t});\n\tvar { isInverse, name } = themeState;\n\tvar requiresExtraWrapper = isInverse || forceClassName;\n\tif (!state.hasEverThemed) state.hasEverThemed = true;\n\tif (requiresExtraWrapper || themeState.name === \"dark\" || themeState.name === \"light\") state.hasEverThemed = \"wrapped\";\n\tif (shallow) if (!themeState.parentId) {} else {\n\t\tvar parentState = getThemeState(themeState.isNew ? themeState.id : themeState.parentId);\n\t\tif (!parentState) throw new Error(formatDiagnostic(\"‼️010\", \"Theme\", \"parent theme state is missing for shallow rendering\", \"Keep <Theme shallow> inside its mounted parent Theme\", \"name,parentId\", {\n\t\t\tname: themeState.name,\n\t\t\tparentId: themeState.parentId\n\t\t}));\n\t\tchildren = Children.toArray(children).map(function(child) {\n\t\t\treturn /* @__PURE__ */ isValidElement(child) ? passThrough ? child : /* @__PURE__ */ cloneElement(child, void 0, /* @__PURE__ */ jsx(Theme, {\n\t\t\t\tname: parentState.name,\n\t\t\t\tchildren: child.props.children\n\t\t\t})) : child;\n\t\t});\n\t}\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tif (!passThrough && props.debug) console.warn(` getThemedChildren`, {\n\t\t\trequiresExtraWrapper,\n\t\t\tforceClassName,\n\t\t\tthemeState,\n\t\t\tstate,\n\t\t\tthemeSpanProps: getThemeClassNameAndColor(themeState, props, isRoot)\n\t\t});\n\t}\n\tif (forceClassName === false) return children;\n\tif (isWeb) {\n\t\tvar _props__themeUpdate;\n\t\tvar baseStyle = props.contain ? inertContainedStyle : inertStyle;\n\t\tvar { className = \"\", color } = passThrough ? {} : getThemeClassNameAndColor(themeState, props, isRoot);\n\t\tvar inlineClassName = passThrough ? void 0 : (_props__themeUpdate = props._themeUpdate) === null || _props__themeUpdate === void 0 ? void 0 : _props__themeUpdate.className;\n\t\tchildren = /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: `${className} is_Theme${inlineClassName ? ` ${inlineClassName}` : \"\"}`,\n\t\t\tstyle: passThrough ? baseStyle : {\n\t\t\t\tcolor,\n\t\t\t\t...baseStyle\n\t\t\t},\n\t\t\tchildren\n\t\t});\n\t\tif (state.hasEverThemed === \"wrapped\") children = /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: requiresExtraWrapper ? `${name.startsWith(\"light\") ? \"t_light\" : name.startsWith(\"dark\") ? \"t_dark\" : \"\"} _dsp_contents` : `_dsp_contents`,\n\t\t\tchildren\n\t\t});\n\t\treturn children;\n\t}\n\treturn children;\n}\nvar inertStyle = { display: \"contents\" };\nvar inertContainedStyle = {\n\tdisplay: \"contents\",\n\tcontain: \"strict\"\n};\nvar empty = {\n\tclassName: \"\",\n\tcolor: void 0\n};\nfunction getThemeClassNameAndColor(themeState, props) {\n\tvar isRoot = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n\tif (!themeState.isNew && !props.forceClassName) return empty;\n\treturn {\n\t\tcolor: (themeState === null || themeState === void 0 ? void 0 : themeState.theme) && themeState.isNew ? variableToString(themeState.theme.color) : \"\",\n\t\tclassName: getThemeClassNames(themeState.name, isRoot)\n\t};\n}\n\nexport { Theme, getThemedChildren };"],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { createRefComponent } from "@tamagui/compose-refs";
|
|
2
|
+
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
3
|
+
import React from "react";
|
|
4
|
+
import { getConfig } from "../config.mjs";
|
|
5
|
+
import { insertStyleRules, shouldInsertStyleRules, updateRules } from "../helpers/insertStyleRule.mjs";
|
|
6
|
+
import { getInlineValuesFromProps, getInlineValuesKey, getMergedInlineTheme, getVariablesCSSRules } from "../helpers/variables.mjs";
|
|
7
|
+
import { Theme } from "./Theme.mjs";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
|
|
10
|
+
const useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : () => {};
|
|
11
|
+
const updateStates = /* @__PURE__ */ new WeakMap();
|
|
12
|
+
function createThemeUpdateState(values, className) {
|
|
13
|
+
const cached = updateStates.get(values);
|
|
14
|
+
if (cached) return cached;
|
|
15
|
+
const state = {
|
|
16
|
+
key: getInlineValuesKey(values),
|
|
17
|
+
className,
|
|
18
|
+
values,
|
|
19
|
+
getTheme(parentTheme, themeName, config) {
|
|
20
|
+
return getMergedInlineTheme(parentTheme, values, themeName, config);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
updateStates.set(values, state);
|
|
24
|
+
return state;
|
|
25
|
+
}
|
|
26
|
+
const ThemeUpdate = createRefComponent(function ThemeUpdate2(props, ref) {
|
|
27
|
+
"use no memo";
|
|
28
|
+
const config = getConfig();
|
|
29
|
+
const values = getInlineValuesFromProps(props, config);
|
|
30
|
+
const css = !values ? null : getVariablesCSSRules(values, config);
|
|
31
|
+
let rulesToInsert = null;
|
|
32
|
+
if (css && shouldInsertStyleRules(css.identifier)) {
|
|
33
|
+
updateRules(css.identifier, css.rules);
|
|
34
|
+
rulesToInsert = { [css.identifier]: [
|
|
35
|
+
"variables",
|
|
36
|
+
"",
|
|
37
|
+
css.identifier,
|
|
38
|
+
void 0,
|
|
39
|
+
css.rules
|
|
40
|
+
] };
|
|
41
|
+
}
|
|
42
|
+
useInsertEffectCompat(() => {
|
|
43
|
+
if (rulesToInsert) insertStyleRules(rulesToInsert);
|
|
44
|
+
}, [css?.identifier]);
|
|
45
|
+
if (!values) return props.children;
|
|
46
|
+
return /* @__PURE__ */ jsx(Theme, {
|
|
47
|
+
ref,
|
|
48
|
+
_themeUpdate: createThemeUpdateState(values, css?.identifier),
|
|
49
|
+
children: props.children
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
export { ThemeUpdate, createThemeUpdateState };
|
|
54
|
+
//# sourceMappingURL=ThemeUpdate.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeUpdate.js","names":[],"sources":["esm/views/ThemeUpdate.js"],"sourcesContent":["import { createRefComponent } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport React from \"react\";\nimport { getConfig } from \"../config\";\nimport { insertStyleRules, shouldInsertStyleRules, updateRules } from \"../helpers/insertStyleRule\";\nimport { getInlineValuesFromProps, getInlineValuesKey, getMergedInlineTheme, getVariablesCSSRules } from \"../helpers/variables\";\nimport { Theme } from \"./Theme\";\nimport { jsx } from \"react/jsx-runtime\";\n\nconst useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : () => {};\nconst updateStates = /* @__PURE__ */ new WeakMap();\nfunction createThemeUpdateState(values, className) {\n\tconst cached = updateStates.get(values);\n\tif (cached) return cached;\n\tconst state = {\n\t\tkey: getInlineValuesKey(values),\n\t\tclassName,\n\t\tvalues,\n\t\tgetTheme(parentTheme, themeName, config) {\n\t\t\treturn getMergedInlineTheme(parentTheme, values, themeName, config);\n\t\t}\n\t};\n\tupdateStates.set(values, state);\n\treturn state;\n}\nconst ThemeUpdate = createRefComponent(function ThemeUpdate2(props, ref) {\n\t\"use no memo\";\n\tconst config = getConfig();\n\tconst values = getInlineValuesFromProps(props, config);\n\tconst css = !values ? null : getVariablesCSSRules(values, config);\n\tlet rulesToInsert = null;\n\tif (css && shouldInsertStyleRules(css.identifier)) {\n\t\tupdateRules(css.identifier, css.rules);\n\t\trulesToInsert = { [css.identifier]: [\n\t\t\t\"variables\",\n\t\t\t\"\",\n\t\t\tcss.identifier,\n\t\t\tvoid 0,\n\t\t\tcss.rules\n\t\t] };\n\t}\n\tuseInsertEffectCompat(() => {\n\t\tif (rulesToInsert) insertStyleRules(rulesToInsert);\n\t}, [css?.identifier]);\n\tif (!values) return props.children;\n\treturn /* @__PURE__ */ jsx(Theme, {\n\t\tref,\n\t\t_themeUpdate: createThemeUpdateState(values, css?.identifier),\n\t\tchildren: props.children\n\t});\n});\n\nexport { ThemeUpdate, createThemeUpdateState };"],"mappings":";;;;;;;;;;AASA,MAAM,wBAAwB,QAAQ,MAAM,sBAAsB,kCAAkC,CAAC;AACrG,MAAM,+BAA+B,IAAI,QAAQ;AACjD,SAAS,uBAAuB,QAAQ,WAAW;CAClD,MAAM,SAAS,aAAa,IAAI,MAAM;CACtC,IAAI,QAAQ,OAAO;CACnB,MAAM,QAAQ;EACb,KAAK,mBAAmB,MAAM;EAC9B;EACA;EACA,SAAS,aAAa,WAAW,QAAQ;GACxC,OAAO,qBAAqB,aAAa,QAAQ,WAAW,MAAM;EACnE;CACD;CACA,aAAa,IAAI,QAAQ,KAAK;CAC9B,OAAO;AACR;AACA,MAAM,cAAc,mBAAmB,SAAS,aAAa,OAAO,KAAK;CACxE;CACA,MAAM,SAAS,UAAU;CACzB,MAAM,SAAS,yBAAyB,OAAO,MAAM;CACrD,MAAM,MAAM,CAAC,SAAS,OAAO,qBAAqB,QAAQ,MAAM;CAChE,IAAI,gBAAgB;CACpB,IAAI,OAAO,uBAAuB,IAAI,UAAU,GAAG;EAClD,YAAY,IAAI,YAAY,IAAI,KAAK;EACrC,gBAAgB,GAAG,IAAI,aAAa;GACnC;GACA;GACA,IAAI;GACJ,KAAK;GACL,IAAI;EACL,EAAE;CACH;CACA,4BAA4B;EAC3B,IAAI,eAAe,iBAAiB,aAAa;CAClD,GAAG,CAAC,KAAK,UAAU,CAAC;CACpB,IAAI,CAAC,QAAQ,OAAO,MAAM;CAC1B,OAAuB,oBAAI,OAAO;EACjC;EACA,cAAc,uBAAuB,QAAQ,KAAK,UAAU;EAC5D,UAAU,MAAM;CACjB,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createRefComponent } from "@tamagui/compose-refs";
|
|
3
|
+
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
4
|
+
import React from "react";
|
|
5
|
+
import { getConfig } from "../config.native.js";
|
|
6
|
+
import { insertStyleRules, shouldInsertStyleRules, updateRules } from "../helpers/insertStyleRule.native.js";
|
|
7
|
+
import { getInlineValuesFromProps, getInlineValuesKey, getMergedInlineTheme } from "../helpers/variables.native.js";
|
|
8
|
+
import { Theme } from "./Theme.native.js";
|
|
9
|
+
|
|
10
|
+
var useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : function() {};
|
|
11
|
+
var updateStates = /* @__PURE__ */ new WeakMap();
|
|
12
|
+
function createThemeUpdateState(values, className) {
|
|
13
|
+
var cached = updateStates.get(values);
|
|
14
|
+
if (cached) return cached;
|
|
15
|
+
var state = {
|
|
16
|
+
key: getInlineValuesKey(values),
|
|
17
|
+
className,
|
|
18
|
+
values,
|
|
19
|
+
getTheme(parentTheme, themeName, config) {
|
|
20
|
+
return getMergedInlineTheme(parentTheme, values, themeName, config);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
updateStates.set(values, state);
|
|
24
|
+
return state;
|
|
25
|
+
}
|
|
26
|
+
var ThemeUpdate = createRefComponent(function ThemeUpdate2(props, ref) {
|
|
27
|
+
"use no memo";
|
|
28
|
+
var values = getInlineValuesFromProps(props, getConfig());
|
|
29
|
+
var css = null;
|
|
30
|
+
var rulesToInsert = null;
|
|
31
|
+
if (css && shouldInsertStyleRules(css.identifier)) {
|
|
32
|
+
updateRules(css.identifier, css.rules);
|
|
33
|
+
rulesToInsert = { [css.identifier]: [
|
|
34
|
+
"variables",
|
|
35
|
+
"",
|
|
36
|
+
css.identifier,
|
|
37
|
+
void 0,
|
|
38
|
+
css.rules
|
|
39
|
+
] };
|
|
40
|
+
}
|
|
41
|
+
useInsertEffectCompat(function() {
|
|
42
|
+
if (rulesToInsert) insertStyleRules(rulesToInsert);
|
|
43
|
+
}, [css === null || css === void 0 ? void 0 : css.identifier]);
|
|
44
|
+
if (!values) return props.children;
|
|
45
|
+
return /* @__PURE__ */ jsx(Theme, {
|
|
46
|
+
ref,
|
|
47
|
+
_themeUpdate: createThemeUpdateState(values, css === null || css === void 0 ? void 0 : css.identifier),
|
|
48
|
+
children: props.children
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
export { ThemeUpdate, createThemeUpdateState };
|
|
53
|
+
//# sourceMappingURL=ThemeUpdate.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThemeUpdate.native.js","names":[],"sources":["esm/views/ThemeUpdate.native.js"],"sourcesContent":["import { jsx } from \"react/jsx-runtime\";\nimport { createRefComponent } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport React from \"react\";\nimport { getConfig } from \"../config\";\nimport { insertStyleRules, shouldInsertStyleRules, updateRules } from \"../helpers/insertStyleRule\";\nimport { getInlineValuesFromProps, getInlineValuesKey, getMergedInlineTheme } from \"../helpers/variables\";\nimport { Theme } from \"./Theme\";\n\nvar useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : function() {};\nvar updateStates = /* @__PURE__ */ new WeakMap();\nfunction createThemeUpdateState(values, className) {\n\tvar cached = updateStates.get(values);\n\tif (cached) return cached;\n\tvar state = {\n\t\tkey: getInlineValuesKey(values),\n\t\tclassName,\n\t\tvalues,\n\t\tgetTheme(parentTheme, themeName, config) {\n\t\t\treturn getMergedInlineTheme(parentTheme, values, themeName, config);\n\t\t}\n\t};\n\tupdateStates.set(values, state);\n\treturn state;\n}\nvar ThemeUpdate = createRefComponent(function ThemeUpdate2(props, ref) {\n\t\"use no memo\";\n\tvar values = getInlineValuesFromProps(props, getConfig());\n\tvar css = null;\n\tvar rulesToInsert = null;\n\tif (css && shouldInsertStyleRules(css.identifier)) {\n\t\tupdateRules(css.identifier, css.rules);\n\t\trulesToInsert = { [css.identifier]: [\n\t\t\t\"variables\",\n\t\t\t\"\",\n\t\t\tcss.identifier,\n\t\t\tvoid 0,\n\t\t\tcss.rules\n\t\t] };\n\t}\n\tuseInsertEffectCompat(function() {\n\t\tif (rulesToInsert) insertStyleRules(rulesToInsert);\n\t}, [css === null || css === void 0 ? void 0 : css.identifier]);\n\tif (!values) return props.children;\n\treturn /* @__PURE__ */ jsx(Theme, {\n\t\tref,\n\t\t_themeUpdate: createThemeUpdateState(values, css === null || css === void 0 ? void 0 : css.identifier),\n\t\tchildren: props.children\n\t});\n});\n\nexport { ThemeUpdate, createThemeUpdateState };"],"mappings":";;;;;;;;;;AASA,IAAI,wBAAwB,QAAQ,MAAM,sBAAsB,4BAA4B,WAAW,CAAC;AACxG,IAAI,+BAA+B,IAAI,QAAQ;AAC/C,SAAS,uBAAuB,QAAQ,WAAW;CAClD,IAAI,SAAS,aAAa,IAAI,MAAM;CACpC,IAAI,QAAQ,OAAO;CACnB,IAAI,QAAQ;EACX,KAAK,mBAAmB,MAAM;EAC9B;EACA;EACA,SAAS,aAAa,WAAW,QAAQ;GACxC,OAAO,qBAAqB,aAAa,QAAQ,WAAW,MAAM;EACnE;CACD;CACA,aAAa,IAAI,QAAQ,KAAK;CAC9B,OAAO;AACR;AACA,IAAI,cAAc,mBAAmB,SAAS,aAAa,OAAO,KAAK;CACtE;CACA,IAAI,SAAS,yBAAyB,OAAO,UAAU,CAAC;CACxD,IAAI,MAAM;CACV,IAAI,gBAAgB;CACpB,IAAI,OAAO,uBAAuB,IAAI,UAAU,GAAG;EAClD,YAAY,IAAI,YAAY,IAAI,KAAK;EACrC,gBAAgB,GAAG,IAAI,aAAa;GACnC;GACA;GACA,IAAI;GACJ,KAAK;GACL,IAAI;EACL,EAAE;CACH;CACA,sBAAsB,WAAW;EAChC,IAAI,eAAe,iBAAiB,aAAa;CAClD,GAAG,CAAC,QAAQ,QAAQ,QAAQ,KAAK,IAAI,KAAK,IAAI,IAAI,UAAU,CAAC;CAC7D,IAAI,CAAC,QAAQ,OAAO,MAAM;CAC1B,OAAuB,oBAAI,OAAO;EACjC;EACA,cAAc,uBAAuB,QAAQ,QAAQ,QAAQ,QAAQ,KAAK,IAAI,KAAK,IAAI,IAAI,UAAU;EACrG,UAAU,MAAM;CACjB,CAAC;AACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.719.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Nate Wienert"
|
|
@@ -39,6 +39,15 @@
|
|
|
39
39
|
"require": "./dist/cjs/index.cjs",
|
|
40
40
|
"default": "./dist/esm/index.mjs"
|
|
41
41
|
},
|
|
42
|
+
"./theme-update": {
|
|
43
|
+
"types": "./types/theme-update.d.ts",
|
|
44
|
+
"react-native": "./dist/esm/theme-update.native.js",
|
|
45
|
+
"browser": "./dist/esm/theme-update.mjs",
|
|
46
|
+
"module": "./dist/esm/theme-update.mjs",
|
|
47
|
+
"import": "./dist/esm/theme-update.mjs",
|
|
48
|
+
"require": "./dist/cjs/theme-update.cjs",
|
|
49
|
+
"default": "./dist/esm/theme-update.mjs"
|
|
50
|
+
},
|
|
42
51
|
"./dom": {
|
|
43
52
|
"react-native": {
|
|
44
53
|
"types": "./types/dom/index.native.d.ts",
|
|
@@ -81,26 +90,26 @@
|
|
|
81
90
|
"test:web": "vitest --typecheck --run"
|
|
82
91
|
},
|
|
83
92
|
"dependencies": {
|
|
84
|
-
"@tamagui/compose-refs": "3.0.0-beta.
|
|
85
|
-
"@tamagui/constants": "3.0.0-beta.
|
|
86
|
-
"@tamagui/dom": "3.0.0-beta.
|
|
87
|
-
"@tamagui/helpers": "3.0.0-beta.
|
|
88
|
-
"@tamagui/is-equal-shallow": "3.0.0-beta.
|
|
89
|
-
"@tamagui/native": "3.0.0-beta.
|
|
90
|
-
"@tamagui/normalize-css-color": "3.0.0-beta.
|
|
91
|
-
"@tamagui/style-grammar": "3.0.0-beta.
|
|
92
|
-
"@tamagui/timer": "3.0.0-beta.
|
|
93
|
-
"@tamagui/types": "3.0.0-beta.
|
|
94
|
-
"@tamagui/use-did-finish-ssr": "3.0.0-beta.
|
|
95
|
-
"@tamagui/use-event": "3.0.0-beta.
|
|
96
|
-
"@tamagui/use-force-update": "3.0.0-beta.
|
|
93
|
+
"@tamagui/compose-refs": "3.0.0-beta.719.1",
|
|
94
|
+
"@tamagui/constants": "3.0.0-beta.719.1",
|
|
95
|
+
"@tamagui/dom": "3.0.0-beta.719.1",
|
|
96
|
+
"@tamagui/helpers": "3.0.0-beta.719.1",
|
|
97
|
+
"@tamagui/is-equal-shallow": "3.0.0-beta.719.1",
|
|
98
|
+
"@tamagui/native": "3.0.0-beta.719.1",
|
|
99
|
+
"@tamagui/normalize-css-color": "3.0.0-beta.719.1",
|
|
100
|
+
"@tamagui/style-grammar": "3.0.0-beta.719.1",
|
|
101
|
+
"@tamagui/timer": "3.0.0-beta.719.1",
|
|
102
|
+
"@tamagui/types": "3.0.0-beta.719.1",
|
|
103
|
+
"@tamagui/use-did-finish-ssr": "3.0.0-beta.719.1",
|
|
104
|
+
"@tamagui/use-event": "3.0.0-beta.719.1",
|
|
105
|
+
"@tamagui/use-force-update": "3.0.0-beta.719.1"
|
|
97
106
|
},
|
|
98
107
|
"devDependencies": {
|
|
99
|
-
"@tamagui/build": "3.0.0-beta.
|
|
108
|
+
"@tamagui/build": "3.0.0-beta.719.1",
|
|
100
109
|
"@testing-library/react": "^16.1.0",
|
|
101
110
|
"csstype": "^3.0.10",
|
|
102
|
-
"react": "
|
|
103
|
-
"react-dom": "
|
|
111
|
+
"react": "19.2.3",
|
|
112
|
+
"react-dom": "19.2.3",
|
|
104
113
|
"react-native": "0.86.2",
|
|
105
114
|
"typescript": "~6.0.3",
|
|
106
115
|
"vitest": "4.0.4"
|
package/src/config.ts
CHANGED
|
@@ -10,6 +10,7 @@ import type {
|
|
|
10
10
|
TokensParsed,
|
|
11
11
|
} from './types'
|
|
12
12
|
import { formatDiagnostic } from './helpers/formatDiagnostic'
|
|
13
|
+
import { prepareConfigRevision } from './helpers/grammarConfig'
|
|
13
14
|
|
|
14
15
|
export type StyleCompat = 'legacy' | 'react-native' | 'web'
|
|
15
16
|
|
|
@@ -84,6 +85,10 @@ export function getStyleCompat(): StyleCompat {
|
|
|
84
85
|
|
|
85
86
|
export const setConfig = (next: TamaguiInternalConfig) => {
|
|
86
87
|
setConfigCalledByThisInstance = true
|
|
88
|
+
const previous = conf
|
|
89
|
+
const previousGlobal = globalThis.__tamaguiConfig
|
|
90
|
+
prepareConfigRevision(next)
|
|
91
|
+
if (conf !== previous || globalThis.__tamaguiConfig !== previousGlobal) return
|
|
87
92
|
conf = next
|
|
88
93
|
globalThis.__tamaguiConfig = next
|
|
89
94
|
}
|
|
@@ -95,6 +100,7 @@ export const setConfigFont = (name: string, font: any, fontParsed: any) => {
|
|
|
95
100
|
}
|
|
96
101
|
config!.fonts[name] = font
|
|
97
102
|
config!.fontsParsed[name] = fontParsed
|
|
103
|
+
prepareConfigRevision(config!)
|
|
98
104
|
}
|
|
99
105
|
|
|
100
106
|
export const getConfig = () => {
|
|
@@ -167,6 +173,7 @@ export const updateConfig = (key: string, value: any) => {
|
|
|
167
173
|
return
|
|
168
174
|
}
|
|
169
175
|
Object.assign(config[key], value)
|
|
176
|
+
prepareConfigRevision(config)
|
|
170
177
|
}
|
|
171
178
|
|
|
172
179
|
// searches by value name or token name
|
package/src/createTamagui.ts
CHANGED
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import { scanAllSheets } from './helpers/insertStyleRule'
|
|
15
15
|
import { proxyThemesToParents } from './helpers/proxyThemeToParents'
|
|
16
16
|
import { ensureThemeVariable } from './helpers/themes'
|
|
17
|
-
import { mergeConfigVariablesIntoTheme } from './helpers/
|
|
17
|
+
import { mergeConfigVariablesIntoTheme } from './helpers/configVariables'
|
|
18
18
|
import { configureMedia } from './hooks/useMedia'
|
|
19
19
|
import { parseFont, registerFontVariables } from './insertFont'
|
|
20
20
|
import { Tamagui } from './Tamagui'
|
|
@@ -348,7 +348,7 @@ function getThemesDeduped(
|
|
|
348
348
|
|
|
349
349
|
// custom variables merge into base themes only; sub-themes inherit them
|
|
350
350
|
// via proxyThemesToParents (native) and the CSS cascade (web), so a
|
|
351
|
-
//
|
|
351
|
+
// a ThemeUpdate patch survives sub-theme switches below it
|
|
352
352
|
if (variables && variablesCtx && !themeName.includes('_')) {
|
|
353
353
|
mergeConfigVariablesIntoTheme(
|
|
354
354
|
theme as any,
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { createVariable, isVariable } from '../createVariable'
|
|
2
|
+
import type { GenericVariables, TokensParsed, Variable } from '../types'
|
|
3
|
+
import { findVariableToken, isUnitlessVariableKey } from './variableValue'
|
|
4
|
+
import { warnOnce } from './warnOnce'
|
|
5
|
+
|
|
6
|
+
export function mergeConfigVariablesIntoTheme(
|
|
7
|
+
theme: Record<string, Variable>,
|
|
8
|
+
themeName: string,
|
|
9
|
+
variables: GenericVariables,
|
|
10
|
+
tokensParsed: TokensParsed
|
|
11
|
+
) {
|
|
12
|
+
const scheme = themeName.startsWith('dark') ? 'dark' : 'light'
|
|
13
|
+
const resolving = new Set<string>()
|
|
14
|
+
|
|
15
|
+
const resolveRawValue = (key: string, value: unknown): unknown => {
|
|
16
|
+
if (typeof value === 'object' && value !== null) {
|
|
17
|
+
if (isVariable(value)) return value.val
|
|
18
|
+
if ('needsPx' in value) return value
|
|
19
|
+
if ('light' in value || 'dark' in value) {
|
|
20
|
+
return resolveRawValue(key, (value as any)[scheme] ?? (value as any).light)
|
|
21
|
+
}
|
|
22
|
+
return
|
|
23
|
+
}
|
|
24
|
+
if (typeof value === 'string') {
|
|
25
|
+
const name = value
|
|
26
|
+
if (name in variables && !(name in theme)) {
|
|
27
|
+
if (resolving.has(name)) {
|
|
28
|
+
warnOnce(
|
|
29
|
+
`config-cycle:${name}`,
|
|
30
|
+
`createTamagui variables: reference cycle at "${name}". Dropping.`
|
|
31
|
+
)
|
|
32
|
+
return
|
|
33
|
+
}
|
|
34
|
+
resolving.add(name)
|
|
35
|
+
const res = resolveRawValue(name, variables[name])
|
|
36
|
+
resolving.delete(name)
|
|
37
|
+
return res
|
|
38
|
+
}
|
|
39
|
+
const themeValue = theme[name]
|
|
40
|
+
if (themeValue !== undefined) {
|
|
41
|
+
return isVariable(themeValue) ? themeValue.val : themeValue
|
|
42
|
+
}
|
|
43
|
+
const token = findVariableToken(tokensParsed, name)
|
|
44
|
+
return token ? token.val : value
|
|
45
|
+
}
|
|
46
|
+
return value
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
for (const key in variables) {
|
|
50
|
+
if (key in theme) continue
|
|
51
|
+
let raw = resolveRawValue(key, variables[key])
|
|
52
|
+
if (raw === undefined) continue
|
|
53
|
+
let needsPx = typeof raw === 'number' && !isUnitlessVariableKey(key)
|
|
54
|
+
if (typeof raw === 'object' && raw !== null && 'needsPx' in raw) {
|
|
55
|
+
needsPx = true
|
|
56
|
+
raw = (raw as unknown as { val: number }).val
|
|
57
|
+
}
|
|
58
|
+
const variable = createVariable({ key, name: key, val: raw as any })
|
|
59
|
+
if (needsPx) {
|
|
60
|
+
variable.needsPx = true
|
|
61
|
+
}
|
|
62
|
+
theme[key] = variable
|
|
63
|
+
}
|
|
64
|
+
}
|