@tamagui/web 3.0.0-beta.924.1 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/_withNativeStyle.cjs +3 -0
- package/dist/cjs/_withNativeStyle.native.cjs +3 -0
- package/dist/cjs/_withNativeStyle.native.js +3 -0
- package/dist/cjs/_withNativeStyle.native.js.map +1 -1
- package/dist/cjs/_withStableStyle.native.cjs +1 -5
- package/dist/cjs/_withStableStyle.native.js +1 -5
- package/dist/cjs/_withStableStyle.native.js.map +1 -1
- package/dist/cjs/config.cjs +6 -3
- package/dist/cjs/config.native.cjs +7 -5
- package/dist/cjs/config.native.js +7 -5
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/contexts/ComponentContext.cjs +1 -0
- package/dist/cjs/contexts/ComponentContext.native.cjs +8 -0
- package/dist/cjs/contexts/ComponentContext.native.js +8 -0
- package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
- package/dist/cjs/createComponent.cjs +46 -32
- package/dist/cjs/createComponent.native.cjs +92 -72
- package/dist/cjs/createComponent.native.js +92 -72
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createTamagui.cjs +32 -14
- package/dist/cjs/createTamagui.native.cjs +33 -19
- package/dist/cjs/createTamagui.native.js +33 -19
- package/dist/cjs/createTamagui.native.js.map +1 -1
- package/dist/cjs/createTokens.native.cjs +1 -5
- package/dist/cjs/createTokens.native.js +1 -5
- package/dist/cjs/createTokens.native.js.map +1 -1
- package/dist/cjs/createVariable.native.cjs +1 -5
- package/dist/cjs/createVariable.native.js +1 -5
- package/dist/cjs/createVariable.native.js.map +1 -1
- package/dist/cjs/createVariables.native.cjs +2 -6
- package/dist/cjs/createVariables.native.js +2 -6
- package/dist/cjs/createVariables.native.js.map +1 -1
- package/dist/cjs/dom/html.cjs +87 -329
- package/dist/cjs/dom/html.native.cjs +53 -2
- package/dist/cjs/dom/html.native.js +53 -2
- package/dist/cjs/dom/html.native.js.map +1 -1
- package/dist/cjs/{helpers/timer.native.js → dom/htmlReset.cjs} +6 -12
- package/dist/cjs/{helpers/timer.native.cjs → dom/htmlReset.native.cjs} +6 -8
- package/dist/cjs/dom/htmlReset.native.js +30 -0
- package/dist/cjs/dom/htmlReset.native.js.map +1 -0
- package/dist/cjs/dom/htmlRuntime.native.cjs +4 -0
- package/dist/cjs/dom/htmlRuntime.native.js +4 -0
- package/dist/cjs/dom/htmlRuntime.native.js.map +1 -1
- package/dist/cjs/dom/htmlStaticConfig.cjs +44 -0
- package/dist/cjs/dom/htmlStaticConfig.native.cjs +46 -0
- package/dist/cjs/dom/htmlStaticConfig.native.js +48 -0
- package/dist/cjs/dom/htmlStaticConfig.native.js.map +1 -0
- package/dist/cjs/dom/primitives.native.cjs +81 -34
- package/dist/cjs/dom/primitives.native.js +81 -34
- package/dist/cjs/dom/primitives.native.js.map +1 -1
- package/dist/cjs/eventHandling.cjs +10 -4
- package/dist/cjs/eventHandling.native.cjs +52 -16
- package/dist/cjs/eventHandling.native.js +52 -16
- package/dist/cjs/eventHandling.native.js.map +1 -1
- package/dist/cjs/helpers/NativeTextBinding.cjs +36 -0
- package/dist/cjs/helpers/NativeTextBinding.native.cjs +39 -0
- package/dist/cjs/helpers/NativeTextBinding.native.js +41 -0
- package/dist/cjs/helpers/NativeTextBinding.native.js.map +1 -0
- package/dist/cjs/helpers/configVariables.native.cjs +2 -6
- package/dist/cjs/helpers/configVariables.native.js +2 -6
- package/dist/cjs/helpers/configVariables.native.js.map +1 -1
- package/dist/cjs/helpers/createDesignSystem.cjs +14 -10
- package/dist/cjs/helpers/createDesignSystem.native.cjs +5 -4
- package/dist/cjs/helpers/createDesignSystem.native.js +5 -4
- package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/cjs/helpers/createStyledContext.native.cjs +1 -5
- package/dist/cjs/helpers/createStyledContext.native.js +1 -5
- package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyle.cjs +45 -1
- package/dist/cjs/helpers/expandStyle.native.cjs +38 -2
- package/dist/cjs/helpers/expandStyle.native.js +38 -2
- package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyles.cjs +15 -3
- package/dist/cjs/helpers/expandStyles.native.cjs +14 -8
- package/dist/cjs/helpers/expandStyles.native.js +14 -8
- package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
- package/dist/cjs/helpers/fluid.cjs +56 -0
- package/dist/cjs/helpers/fluid.native.cjs +58 -0
- package/dist/cjs/helpers/fluid.native.js +60 -0
- package/dist/cjs/helpers/fluid.native.js.map +1 -0
- package/dist/cjs/helpers/formatDiagnostic.native.cjs +2 -6
- package/dist/cjs/helpers/formatDiagnostic.native.js +2 -6
- package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -1
- package/dist/cjs/helpers/getCSSStylesAtomic.cjs +6 -6
- package/dist/cjs/helpers/getSplitStyles.cjs +366 -150
- package/dist/cjs/helpers/getSplitStyles.native.cjs +584 -184
- package/dist/cjs/helpers/getSplitStyles.native.js +584 -184
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.cjs +37 -25
- package/dist/cjs/helpers/grammarConfig.cjs +6 -14
- package/dist/cjs/helpers/grammarConfig.native.cjs +32 -22
- package/dist/cjs/helpers/grammarConfig.native.js +32 -22
- package/dist/cjs/helpers/grammarConfig.native.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.cjs +11 -4
- package/dist/cjs/helpers/insertStyleRule.native.cjs +8 -11
- package/dist/cjs/helpers/insertStyleRule.native.js +8 -11
- package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/cjs/helpers/isObj.native.cjs +1 -5
- package/dist/cjs/helpers/isObj.native.js +1 -5
- package/dist/cjs/helpers/isObj.native.js.map +1 -1
- package/dist/cjs/helpers/mainThreadPressEvents.native.cjs +48 -100
- package/dist/cjs/helpers/mainThreadPressEvents.native.js +48 -100
- package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/cjs/helpers/mergeProps.cjs +18 -21
- package/dist/cjs/helpers/mergeProps.native.cjs +20 -23
- package/dist/cjs/helpers/mergeProps.native.js +20 -23
- package/dist/cjs/helpers/mergeProps.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/nativeTextMetrics.cjs +74 -0
- package/dist/cjs/helpers/nativeTextMetrics.native.cjs +77 -0
- package/dist/cjs/helpers/nativeTextMetrics.native.js +79 -0
- package/dist/cjs/helpers/nativeTextMetrics.native.js.map +1 -0
- package/dist/cjs/helpers/normalizeColor.native.cjs +17 -2
- package/dist/cjs/helpers/normalizeColor.native.js +17 -2
- package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.cjs +2 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.native.cjs +3 -6
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js +3 -6
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/cjs/helpers/objectIdentityKey.native.cjs +1 -5
- package/dist/cjs/helpers/objectIdentityKey.native.js +1 -5
- package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/cjs/helpers/parseNativeStyle.cjs +187 -0
- package/dist/cjs/helpers/parseNativeStyle.native.cjs +6 -4
- package/dist/cjs/helpers/parseNativeStyle.native.js +6 -4
- package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeToParents.cjs +9 -2
- package/dist/cjs/helpers/proxyThemeToParents.native.cjs +28 -2
- package/dist/cjs/helpers/proxyThemeToParents.native.js +28 -2
- package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/cjs/helpers/resolveAnimationDriver.native.cjs +1 -5
- package/dist/cjs/helpers/resolveAnimationDriver.native.js +1 -5
- package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
- package/dist/cjs/helpers/{timer.cjs → resolveNativeUnits.cjs} +12 -8
- package/dist/cjs/helpers/resolveNativeUnits.native.cjs +205 -0
- package/dist/cjs/helpers/resolveNativeUnits.native.js +207 -0
- package/dist/cjs/helpers/resolveNativeUnits.native.js.map +1 -0
- package/dist/cjs/helpers/resolveRem.native.cjs +18 -21
- package/dist/cjs/helpers/resolveRem.native.js +18 -21
- package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSizing.cjs +124 -0
- package/dist/cjs/helpers/resolveSizing.native.cjs +133 -0
- package/dist/cjs/helpers/resolveSizing.native.js +135 -0
- package/dist/cjs/helpers/resolveSizing.native.js.map +1 -0
- package/dist/cjs/helpers/resolveVariableValue.cjs +7 -7
- package/dist/cjs/helpers/resolveVariableValue.native.cjs +7 -9
- package/dist/cjs/helpers/resolveVariableValue.native.js +7 -9
- package/dist/cjs/helpers/resolveVariableValue.native.js.map +1 -1
- package/dist/cjs/helpers/resolveVariantStyle.native.cjs +2 -6
- package/dist/cjs/helpers/resolveVariantStyle.native.js +2 -6
- package/dist/cjs/helpers/resolveVariantStyle.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/styleFrontend.cjs +23 -1
- package/dist/cjs/helpers/styleFrontend.native.cjs +23 -1
- package/dist/cjs/helpers/styleFrontend.native.js +23 -1
- package/dist/cjs/helpers/styleFrontend.native.js.map +1 -1
- package/dist/cjs/helpers/styleStaticConfigCore.cjs +5 -4
- package/dist/cjs/helpers/styleStaticConfigCore.native.cjs +7 -4
- package/dist/cjs/helpers/styleStaticConfigCore.native.js +7 -4
- package/dist/cjs/helpers/styleStaticConfigCore.native.js.map +1 -1
- package/dist/cjs/helpers/styledDynamic.cjs +5 -0
- package/dist/cjs/helpers/styledDynamic.native.cjs +8 -7
- package/dist/cjs/helpers/styledDynamic.native.js +8 -7
- package/dist/cjs/helpers/styledDynamic.native.js.map +1 -1
- package/dist/cjs/helpers/subscribeToContextGroup.cjs +16 -7
- package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +18 -8
- package/dist/cjs/helpers/subscribeToContextGroup.native.js +18 -8
- package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/cjs/helpers/themeRef.native.cjs +1 -5
- package/dist/cjs/helpers/themeRef.native.js +1 -5
- package/dist/cjs/helpers/themeRef.native.js.map +1 -1
- package/dist/cjs/helpers/themes.cjs +26 -11
- package/dist/cjs/helpers/themes.native.cjs +26 -11
- package/dist/cjs/helpers/themes.native.js +26 -11
- package/dist/cjs/helpers/themes.native.js.map +1 -1
- package/dist/cjs/helpers/tokenCategories.cjs +2 -2
- package/dist/cjs/helpers/tokenCategories.native.cjs +2 -2
- package/dist/cjs/helpers/tokenCategories.native.js +2 -2
- package/dist/cjs/helpers/tokenCategories.native.js.map +1 -1
- package/dist/cjs/helpers/variables.cjs +1 -1
- package/dist/cjs/helpers/variables.native.cjs +4 -8
- package/dist/cjs/helpers/variables.native.js +4 -8
- package/dist/cjs/helpers/variables.native.js.map +1 -1
- package/dist/cjs/helpers/warnOnce.cjs +6 -0
- package/dist/cjs/helpers/warnOnce.native.cjs +6 -0
- package/dist/cjs/helpers/warnOnce.native.js +6 -0
- package/dist/cjs/helpers/warnOnce.native.js.map +1 -1
- package/dist/cjs/helpers/webPropsToSkip.native.cjs +3 -3
- package/dist/cjs/helpers/webPropsToSkip.native.js +3 -3
- package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/cjs/helpers/wrapStyleTags.cjs +1 -1
- package/dist/cjs/helpers/wrapStyleTags.native.cjs +1 -1
- package/dist/cjs/helpers/wrapStyleTags.native.js +1 -1
- package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.native.cjs +1 -5
- package/dist/cjs/hooks/useComponentState.native.js +1 -5
- package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
- package/dist/cjs/hooks/useMedia.cjs +27 -34
- package/dist/cjs/hooks/useMedia.native.cjs +45 -51
- package/dist/cjs/hooks/useMedia.native.js +45 -51
- package/dist/cjs/hooks/useMedia.native.js.map +1 -1
- package/dist/cjs/hooks/useSplitStyles.cjs +1 -1
- package/dist/cjs/hooks/useSplitStyles.native.cjs +1 -1
- package/dist/cjs/hooks/useSplitStyles.native.js +1 -1
- package/dist/cjs/hooks/useSplitStyles.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.cjs +37 -47
- package/dist/cjs/hooks/useThemeState.native.cjs +44 -50
- package/dist/cjs/hooks/useThemeState.native.js +44 -50
- package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -0
- package/dist/cjs/index.native.cjs +7 -0
- package/dist/cjs/index.native.js +7 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/internal-runtime.cjs +22 -0
- package/dist/cjs/internal-runtime.native.cjs +22 -0
- package/dist/cjs/internal-runtime.native.js +22 -0
- package/dist/cjs/internal-runtime.native.js.map +1 -1
- package/dist/cjs/static-resolve.native.cjs +2 -9
- package/dist/cjs/static-resolve.native.js +2 -9
- package/dist/cjs/static-resolve.native.js.map +1 -1
- package/dist/cjs/style.cjs +1 -1
- package/dist/cjs/style.native.cjs +4 -7
- package/dist/cjs/style.native.js +4 -7
- package/dist/cjs/style.native.js.map +1 -1
- package/dist/cjs/views/Theme.cjs +10 -17
- package/dist/cjs/views/Theme.native.cjs +9 -11
- package/dist/cjs/views/Theme.native.js +9 -11
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/cjs/views/ThemeDebug.cjs +1 -1
- package/dist/cjs/views/ThemeUpdate.cjs +1 -1
- package/dist/cjs/views/ThemeUpdate.native.cjs +1 -1
- package/dist/cjs/views/ThemeUpdate.native.js +1 -1
- package/dist/cjs/views/ThemeUpdate.native.js.map +1 -1
- package/dist/esm/_withNativeStyle.mjs +4 -1
- package/dist/esm/_withNativeStyle.mjs.map +1 -1
- package/dist/esm/_withNativeStyle.native.js +4 -1
- package/dist/esm/_withNativeStyle.native.js.map +1 -1
- package/dist/esm/_withStableStyle.native.js +1 -5
- package/dist/esm/_withStableStyle.native.js.map +1 -1
- package/dist/esm/config.mjs +6 -3
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/config.native.js +7 -5
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/contexts/ComponentContext.mjs +9 -9
- package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
- package/dist/esm/contexts/ComponentContext.native.js +16 -9
- package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
- package/dist/esm/createComponent.mjs +45 -42
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js +93 -82
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createTamagui.mjs +33 -15
- package/dist/esm/createTamagui.mjs.map +1 -1
- package/dist/esm/createTamagui.native.js +34 -20
- package/dist/esm/createTamagui.native.js.map +1 -1
- package/dist/esm/createTokens.native.js +1 -5
- package/dist/esm/createTokens.native.js.map +1 -1
- package/dist/esm/createVariable.native.js +1 -5
- package/dist/esm/createVariable.native.js.map +1 -1
- package/dist/esm/createVariables.native.js +2 -6
- package/dist/esm/createVariables.native.js.map +1 -1
- package/dist/esm/dom/html.mjs +87 -329
- package/dist/esm/dom/html.mjs.map +1 -1
- package/dist/esm/dom/html.native.js +53 -2
- package/dist/esm/dom/html.native.js.map +1 -1
- package/dist/esm/dom/htmlReset.mjs +6 -0
- package/dist/esm/dom/htmlReset.mjs.map +1 -0
- package/dist/esm/dom/htmlReset.native.js +6 -0
- package/dist/esm/dom/htmlReset.native.js.map +1 -0
- package/dist/esm/dom/htmlRuntime.native.js +4 -0
- package/dist/esm/dom/htmlRuntime.native.js.map +1 -1
- package/dist/esm/dom/htmlStaticConfig.mjs +22 -0
- package/dist/esm/dom/htmlStaticConfig.mjs.map +1 -0
- package/dist/esm/dom/htmlStaticConfig.native.js +22 -0
- package/dist/esm/dom/htmlStaticConfig.native.js.map +1 -0
- package/dist/esm/dom/primitives.native.js +81 -34
- package/dist/esm/dom/primitives.native.js.map +1 -1
- package/dist/esm/eventHandling.mjs +10 -4
- package/dist/esm/eventHandling.mjs.map +1 -1
- package/dist/esm/eventHandling.native.js +52 -16
- package/dist/esm/eventHandling.native.js.map +1 -1
- package/dist/esm/helpers/NativeTextBinding.mjs +17 -0
- package/dist/esm/helpers/NativeTextBinding.mjs.map +1 -0
- package/dist/esm/helpers/NativeTextBinding.native.js +18 -0
- package/dist/esm/helpers/NativeTextBinding.native.js.map +1 -0
- package/dist/esm/helpers/configVariables.native.js +2 -6
- package/dist/esm/helpers/configVariables.native.js.map +1 -1
- package/dist/esm/helpers/createDesignSystem.mjs +14 -10
- package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
- package/dist/esm/helpers/createDesignSystem.native.js +4 -4
- package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/esm/helpers/createStyledContext.native.js +1 -5
- package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
- package/dist/esm/helpers/expandStyle.mjs +41 -1
- package/dist/esm/helpers/expandStyle.mjs.map +1 -1
- package/dist/esm/helpers/expandStyle.native.js +36 -3
- package/dist/esm/helpers/expandStyle.native.js.map +1 -1
- package/dist/esm/helpers/expandStyles.mjs +15 -3
- package/dist/esm/helpers/expandStyles.mjs.map +1 -1
- package/dist/esm/helpers/expandStyles.native.js +14 -8
- package/dist/esm/helpers/expandStyles.native.js.map +1 -1
- package/dist/esm/helpers/fluid.mjs +36 -0
- package/dist/esm/helpers/fluid.mjs.map +1 -0
- package/dist/esm/helpers/fluid.native.js +36 -0
- package/dist/esm/helpers/fluid.native.js.map +1 -0
- package/dist/esm/helpers/formatDiagnostic.native.js +2 -6
- package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.mjs +6 -6
- package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +364 -150
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +588 -188
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs +37 -25
- package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
- package/dist/esm/helpers/grammarConfig.mjs +6 -14
- package/dist/esm/helpers/grammarConfig.mjs.map +1 -1
- package/dist/esm/helpers/grammarConfig.native.js +32 -22
- package/dist/esm/helpers/grammarConfig.native.js.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs +11 -4
- package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.native.js +4 -4
- package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/esm/helpers/isObj.native.js +1 -5
- package/dist/esm/helpers/isObj.native.js.map +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.native.js +48 -100
- package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/esm/helpers/mergeProps.mjs +18 -21
- package/dist/esm/helpers/mergeProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeProps.native.js +20 -23
- package/dist/esm/helpers/mergeProps.native.js.map +1 -1
- package/dist/esm/helpers/nativeOnlyProps.mjs +0 -1
- package/dist/esm/helpers/nativeOnlyProps.mjs.map +1 -1
- package/dist/esm/helpers/nativeOnlyProps.native.js +0 -1
- package/dist/esm/helpers/nativeOnlyProps.native.js.map +1 -1
- package/dist/esm/helpers/nativeTextMetrics.mjs +55 -0
- package/dist/esm/helpers/nativeTextMetrics.mjs.map +1 -0
- package/dist/esm/helpers/nativeTextMetrics.native.js +56 -0
- package/dist/esm/helpers/nativeTextMetrics.native.js.map +1 -0
- package/dist/esm/helpers/normalizeColor.native.js +17 -2
- package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.mjs +2 -1
- package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.native.js +3 -6
- package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/esm/helpers/objectIdentityKey.native.js +1 -5
- package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/esm/helpers/parseNativeStyle.mjs +168 -0
- package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -0
- package/dist/esm/helpers/parseNativeStyle.native.js +4 -1
- package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.mjs +10 -2
- package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.native.js +29 -2
- package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/esm/helpers/resolveAnimationDriver.native.js +1 -5
- package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -1
- package/dist/esm/helpers/resolveNativeUnits.mjs +9 -0
- package/dist/esm/helpers/resolveNativeUnits.mjs.map +1 -0
- package/dist/esm/helpers/resolveNativeUnits.native.js +178 -0
- package/dist/esm/helpers/resolveNativeUnits.native.js.map +1 -0
- package/dist/esm/helpers/resolveRem.native.js +18 -21
- package/dist/esm/helpers/resolveRem.native.js.map +1 -1
- package/dist/esm/helpers/resolveSizing.mjs +102 -0
- package/dist/esm/helpers/resolveSizing.mjs.map +1 -0
- package/dist/esm/helpers/resolveSizing.native.js +109 -0
- package/dist/esm/helpers/resolveSizing.native.js.map +1 -0
- package/dist/esm/helpers/resolveVariableValue.mjs +7 -7
- package/dist/esm/helpers/resolveVariableValue.mjs.map +1 -1
- package/dist/esm/helpers/resolveVariableValue.native.js +7 -9
- package/dist/esm/helpers/resolveVariableValue.native.js.map +1 -1
- package/dist/esm/helpers/resolveVariantStyle.native.js +2 -6
- package/dist/esm/helpers/resolveVariantStyle.native.js.map +1 -1
- package/dist/esm/helpers/skipProps.mjs +0 -1
- package/dist/esm/helpers/skipProps.mjs.map +1 -1
- package/dist/esm/helpers/skipProps.native.js +0 -1
- package/dist/esm/helpers/skipProps.native.js.map +1 -1
- package/dist/esm/helpers/styleFrontend.mjs +20 -1
- package/dist/esm/helpers/styleFrontend.mjs.map +1 -1
- package/dist/esm/helpers/styleFrontend.native.js +20 -1
- package/dist/esm/helpers/styleFrontend.native.js.map +1 -1
- package/dist/esm/helpers/styleStaticConfigCore.mjs +5 -4
- package/dist/esm/helpers/styleStaticConfigCore.mjs.map +1 -1
- package/dist/esm/helpers/styleStaticConfigCore.native.js +7 -4
- package/dist/esm/helpers/styleStaticConfigCore.native.js.map +1 -1
- package/dist/esm/helpers/styledDynamic.mjs +5 -0
- package/dist/esm/helpers/styledDynamic.mjs.map +1 -1
- package/dist/esm/helpers/styledDynamic.native.js +8 -7
- package/dist/esm/helpers/styledDynamic.native.js.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.mjs +16 -7
- package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.native.js +18 -8
- package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/esm/helpers/themeRef.native.js +1 -5
- package/dist/esm/helpers/themeRef.native.js.map +1 -1
- package/dist/esm/helpers/themes.mjs +20 -11
- package/dist/esm/helpers/themes.mjs.map +1 -1
- package/dist/esm/helpers/themes.native.js +20 -11
- package/dist/esm/helpers/themes.native.js.map +1 -1
- package/dist/esm/helpers/tokenCategories.mjs +2 -2
- package/dist/esm/helpers/tokenCategories.mjs.map +1 -1
- package/dist/esm/helpers/tokenCategories.native.js +2 -2
- package/dist/esm/helpers/tokenCategories.native.js.map +1 -1
- package/dist/esm/helpers/variables.mjs +1 -1
- package/dist/esm/helpers/variables.mjs.map +1 -1
- package/dist/esm/helpers/variables.native.js +4 -8
- package/dist/esm/helpers/variables.native.js.map +1 -1
- package/dist/esm/helpers/warnOnce.mjs +6 -1
- package/dist/esm/helpers/warnOnce.mjs.map +1 -1
- package/dist/esm/helpers/warnOnce.native.js +6 -1
- package/dist/esm/helpers/warnOnce.native.js.map +1 -1
- package/dist/esm/helpers/webPropsToSkip.native.js +3 -3
- package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/esm/helpers/wrapStyleTags.mjs +1 -1
- package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
- package/dist/esm/helpers/wrapStyleTags.native.js +1 -1
- package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +1 -5
- package/dist/esm/hooks/useComponentState.native.js.map +1 -1
- package/dist/esm/hooks/useMedia.mjs +27 -34
- package/dist/esm/hooks/useMedia.mjs.map +1 -1
- package/dist/esm/hooks/useMedia.native.js +45 -51
- package/dist/esm/hooks/useMedia.native.js.map +1 -1
- package/dist/esm/hooks/useSplitStyles.mjs +1 -1
- package/dist/esm/hooks/useSplitStyles.mjs.map +1 -1
- package/dist/esm/hooks/useSplitStyles.native.js +1 -1
- package/dist/esm/hooks/useSplitStyles.native.js.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +36 -48
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +44 -50
- package/dist/esm/hooks/useThemeState.native.js.map +1 -1
- package/dist/esm/index.js +4 -1
- package/dist/esm/index.mjs +4 -1
- package/dist/esm/index.native.js +4 -1
- package/dist/esm/internal-runtime.mjs +22 -3
- package/dist/esm/internal-runtime.mjs.map +1 -1
- package/dist/esm/internal-runtime.native.js +22 -3
- package/dist/esm/internal-runtime.native.js.map +1 -1
- package/dist/esm/static-resolve.native.js +2 -9
- package/dist/esm/static-resolve.native.js.map +1 -1
- package/dist/esm/style.mjs +1 -1
- package/dist/esm/style.mjs.map +1 -1
- package/dist/esm/style.native.js +4 -7
- package/dist/esm/style.native.js.map +1 -1
- package/dist/esm/views/Theme.mjs +15 -14
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +15 -15
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeDebug.mjs +1 -1
- package/dist/esm/views/ThemeDebug.mjs.map +1 -1
- package/dist/esm/views/ThemeUpdate.mjs +1 -1
- package/dist/esm/views/ThemeUpdate.mjs.map +1 -1
- package/dist/esm/views/ThemeUpdate.native.js +1 -1
- package/dist/esm/views/ThemeUpdate.native.js.map +1 -1
- package/package.json +20 -18
- package/reset.css +11 -0
- package/src/_withNativeStyle.tsx +6 -1
- package/src/config.ts +6 -6
- package/src/contexts/ComponentContext.tsx +8 -0
- package/src/createComponent.tsx +177 -57
- package/src/createStyledHOC.tsx +25 -26
- package/src/createTamagui.ts +47 -28
- package/src/dom/contract.ts +4 -1
- package/src/dom/html.native.tsx +55 -2
- package/src/dom/html.tsx +189 -388
- package/src/dom/htmlReset.ts +15 -0
- package/src/dom/htmlRuntime.native.tsx +5 -0
- package/src/dom/htmlStaticConfig.ts +40 -0
- package/src/dom/primitives.native.tsx +138 -33
- package/src/dom/standalone.ts +2 -1
- package/src/dom/styleTypes.ts +82 -92
- package/src/eventHandling.native.ts +61 -11
- package/src/eventHandling.ts +19 -4
- package/src/helpers/NativeTextBinding.tsx +26 -0
- package/src/helpers/createDesignSystem.ts +24 -8
- package/src/helpers/expandStyle.ts +88 -4
- package/src/helpers/expandStyles.ts +6 -11
- package/src/helpers/fluid.ts +66 -0
- package/src/helpers/getCSSStylesAtomic.ts +11 -6
- package/src/helpers/getSplitStyles.tsx +1032 -296
- package/src/helpers/getThemeCSSRules.ts +73 -35
- package/src/helpers/grammarConfig.ts +23 -8
- package/src/helpers/insertStyleRule.tsx +14 -8
- package/src/helpers/mainThreadPressEvents.native.ts +65 -141
- package/src/helpers/mergeProps.ts +29 -62
- package/src/helpers/nativeOnlyProps.ts +0 -1
- package/src/helpers/nativeTextMetrics.ts +77 -0
- package/src/helpers/normalizeColor.native.ts +29 -4
- package/src/helpers/normalizeValueWithProperty.ts +2 -1
- package/src/helpers/{parseNativeStyle.native.ts → parseNativeStyle.ts} +8 -1
- package/src/helpers/proxyThemeToParents.ts +13 -2
- package/src/helpers/resolveNativeUnits.native.ts +247 -0
- package/src/helpers/resolveNativeUnits.ts +10 -0
- package/src/helpers/resolveRem.native.ts +25 -26
- package/src/helpers/resolveSizing.ts +167 -0
- package/src/helpers/resolveVariableValue.ts +21 -17
- package/src/helpers/skipProps.ts +0 -1
- package/src/helpers/styleFrontend.ts +39 -0
- package/src/helpers/styleProvenance.ts +1 -1
- package/src/helpers/styleStaticConfigCore.ts +15 -4
- package/src/helpers/styledDynamic.ts +3 -1
- package/src/helpers/subscribeToContextGroup.tsx +16 -7
- package/src/helpers/themes.ts +27 -11
- package/src/helpers/tokenCategories.ts +15 -3
- package/src/helpers/variables.ts +2 -2
- package/src/helpers/warnOnce.ts +6 -0
- package/src/helpers/webPropsToSkip.native.ts +9 -3
- package/src/helpers/wrapStyleTags.tsx +4 -1
- package/src/hooks/useMedia.tsx +36 -47
- package/src/hooks/useSplitStyles.tsx +4 -1
- package/src/hooks/useThemeState.ts +69 -74
- package/src/index.ts +13 -0
- package/src/interfaces/RNExclusiveTypes.ts +1 -3
- package/src/internal-runtime.ts +43 -2
- package/src/style.ts +4 -1
- package/src/styled.tsx +34 -3
- package/src/types.tsx +412 -132
- package/src/views/Theme.tsx +18 -21
- package/src/views/ThemeDebug.tsx +1 -1
- package/src/views/ThemeUpdate.tsx +1 -1
- package/types/_withNativeStyle.d.ts.map +1 -1
- package/types/config.d.ts.map +1 -1
- package/types/contexts/ComponentContext.d.ts +1 -1
- package/types/contexts/ComponentContext.d.ts.map +1 -1
- package/types/createComponent.d.ts.map +1 -1
- package/types/createStyledHOC.d.ts +5 -2
- package/types/createStyledHOC.d.ts.map +1 -1
- package/types/createTamagui.d.ts.map +1 -1
- package/types/dom/contract.d.ts +4 -1
- package/types/dom/contract.d.ts.map +1 -1
- package/types/dom/html.d.ts +60 -51
- package/types/dom/html.d.ts.map +1 -1
- package/types/dom/html.native.d.ts.map +1 -1
- package/types/dom/htmlReset.d.ts +10 -0
- package/types/dom/htmlReset.d.ts.map +1 -0
- package/types/dom/htmlRuntime.native.d.ts.map +1 -1
- package/types/dom/htmlStaticConfig.d.ts +22 -0
- package/types/dom/htmlStaticConfig.d.ts.map +1 -0
- package/types/dom/primitives.native.d.ts.map +1 -1
- package/types/dom/standalone.d.ts +2 -1
- package/types/dom/standalone.d.ts.map +1 -1
- package/types/dom/styleTypes.d.ts +63 -84
- package/types/dom/styleTypes.d.ts.map +1 -1
- package/types/eventHandling.d.ts +12 -4
- package/types/eventHandling.d.ts.map +1 -1
- package/types/eventHandling.native.d.ts.map +1 -1
- package/types/helpers/NativeTextBinding.d.ts +11 -0
- package/types/helpers/NativeTextBinding.d.ts.map +1 -0
- package/types/helpers/createDesignSystem.d.ts.map +1 -1
- package/types/helpers/expandStyle.d.ts +1 -0
- package/types/helpers/expandStyle.d.ts.map +1 -1
- package/types/helpers/expandStyles.d.ts.map +1 -1
- package/types/helpers/fluid.d.ts +21 -0
- package/types/helpers/fluid.d.ts.map +1 -0
- package/types/helpers/getCSSStylesAtomic.d.ts +3 -1
- package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts +2 -1
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
- package/types/helpers/grammarConfig.d.ts.map +1 -1
- package/types/helpers/insertStyleRule.d.ts.map +1 -1
- package/types/helpers/mainThreadPressEvents.native.d.ts +0 -7
- package/types/helpers/mainThreadPressEvents.native.d.ts.map +1 -1
- package/types/helpers/mergeProps.d.ts +1 -15
- package/types/helpers/mergeProps.d.ts.map +1 -1
- package/types/helpers/nativeOnlyProps.d.ts +0 -1
- package/types/helpers/nativeOnlyProps.d.ts.map +1 -1
- package/types/helpers/nativeTextMetrics.d.ts +16 -0
- package/types/helpers/nativeTextMetrics.d.ts.map +1 -0
- package/types/helpers/normalizeColor.native.d.ts +4 -1
- package/types/helpers/normalizeColor.native.d.ts.map +1 -1
- package/types/helpers/normalizeShadow.native.d.ts +3 -1
- package/types/helpers/normalizeShadow.native.d.ts.map +1 -1
- package/types/helpers/normalizeValueWithProperty.d.ts.map +1 -1
- package/types/helpers/{parseNativeStyle.native.d.ts → parseNativeStyle.d.ts} +1 -1
- package/types/helpers/parseNativeStyle.d.ts.map +1 -0
- package/types/helpers/proxyThemeToParents.d.ts +1 -1
- package/types/helpers/proxyThemeToParents.d.ts.map +1 -1
- package/types/helpers/resolveNativeUnits.d.ts +6 -0
- package/types/helpers/resolveNativeUnits.d.ts.map +1 -0
- package/types/helpers/resolveNativeUnits.native.d.ts +16 -0
- package/types/helpers/resolveNativeUnits.native.d.ts.map +1 -0
- package/types/helpers/resolveRem.native.d.ts +6 -4
- package/types/helpers/resolveRem.native.d.ts.map +1 -1
- package/types/helpers/resolveSizing.d.ts +90 -0
- package/types/helpers/resolveSizing.d.ts.map +1 -0
- package/types/helpers/resolveVariableValue.d.ts.map +1 -1
- package/types/helpers/skipProps.d.ts +0 -1
- package/types/helpers/skipProps.d.ts.map +1 -1
- package/types/helpers/styleFrontend.d.ts +21 -0
- package/types/helpers/styleFrontend.d.ts.map +1 -1
- package/types/helpers/styleProvenance.d.ts +1 -1
- package/types/helpers/styleProvenance.d.ts.map +1 -1
- package/types/helpers/styleStaticConfigCore.d.ts.map +1 -1
- package/types/helpers/styledDynamic.d.ts +1 -1
- package/types/helpers/styledDynamic.d.ts.map +1 -1
- package/types/helpers/themes.d.ts +4 -0
- package/types/helpers/themes.d.ts.map +1 -1
- package/types/helpers/tokenCategories.d.ts +1 -1
- package/types/helpers/tokenCategories.d.ts.map +1 -1
- package/types/helpers/warnOnce.d.ts +1 -0
- package/types/helpers/warnOnce.d.ts.map +1 -1
- package/types/helpers/webPropsToSkip.native.d.ts +6 -2
- package/types/helpers/webPropsToSkip.native.d.ts.map +1 -1
- package/types/helpers/wrapStyleTags.d.ts.map +1 -1
- package/types/hooks/useMedia.d.ts +5 -2
- package/types/hooks/useMedia.d.ts.map +1 -1
- package/types/hooks/useSplitStyles.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts.map +1 -1
- package/types/index.d.ts +4 -1
- package/types/index.d.ts.map +1 -1
- package/types/interfaces/RNExclusiveTypes.d.ts +2 -3
- package/types/interfaces/RNExclusiveTypes.d.ts.map +1 -1
- package/types/internal-runtime.d.ts +12 -1
- package/types/internal-runtime.d.ts.map +1 -1
- package/types/style.d.ts.map +1 -1
- package/types/styled.d.ts +7 -4
- package/types/styled.d.ts.map +1 -1
- package/types/types.d.ts +258 -102
- package/types/types.d.ts.map +1 -1
- package/types/views/Theme.d.ts.map +1 -1
- package/dist/cjs/helpers/timer.native.js.map +0 -1
- package/dist/esm/helpers/timer.mjs +0 -13
- package/dist/esm/helpers/timer.mjs.map +0 -1
- package/dist/esm/helpers/timer.native.js +0 -13
- package/dist/esm/helpers/timer.native.js.map +0 -1
- package/src/helpers/timer.ts +0 -9
- package/types/helpers/parseNativeStyle.native.d.ts.map +0 -1
- package/types/helpers/timer.d.ts +0 -2
- package/types/helpers/timer.d.ts.map +0 -1
|
@@ -36,8 +36,10 @@ __export(useThemeState_exports, {
|
|
|
36
36
|
module.exports = __toCommonJS(useThemeState_exports);
|
|
37
37
|
var import_constants = require("@tamagui/constants");
|
|
38
38
|
var import_react = require("react");
|
|
39
|
+
var import_helpers = require("@tamagui/helpers");
|
|
39
40
|
var import_config = require("../config.cjs");
|
|
40
41
|
var import_constants2 = require("../constants/constants.cjs");
|
|
42
|
+
var import_themes = require("../helpers/themes.cjs");
|
|
41
43
|
const ThemeStateContext = (0, import_react.createContext)("");
|
|
42
44
|
const allListeners = /* @__PURE__ */ new Map();
|
|
43
45
|
const listenersByParent = {};
|
|
@@ -45,7 +47,6 @@ const HasRenderedOnce = /* @__PURE__ */ new WeakMap();
|
|
|
45
47
|
const HadTheme = /* @__PURE__ */ new WeakMap();
|
|
46
48
|
const PendingUpdate = /* @__PURE__ */ new Map();
|
|
47
49
|
const states = /* @__PURE__ */ new Map();
|
|
48
|
-
const localStates = /* @__PURE__ */ new Map();
|
|
49
50
|
let shouldForce = false;
|
|
50
51
|
const forceUpdateThemes = () => {
|
|
51
52
|
cacheVersion++;
|
|
@@ -87,17 +88,11 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
87
88
|
theme: (0, import_config.getConfig)().themes.light
|
|
88
89
|
};
|
|
89
90
|
const id = (0, import_react.useId)();
|
|
90
|
-
const propsKey =
|
|
91
|
+
const propsKey = `${props.name || ""}${props.forceClassName || ""}${props._themeUpdate?.key || ""}`;
|
|
91
92
|
if (cascadeOnChange) registerThemeProviderChain(id, parentId, props);
|
|
92
93
|
const ref = (0, import_react.useRef)(null);
|
|
93
94
|
const r = ref.current ||= {
|
|
94
95
|
id,
|
|
95
|
-
parentId,
|
|
96
|
-
props,
|
|
97
|
-
propsKey,
|
|
98
|
-
isRoot,
|
|
99
|
-
keys,
|
|
100
|
-
schemeKeys,
|
|
101
96
|
optimizeForFirstRender,
|
|
102
97
|
renderVersion: 0
|
|
103
98
|
};
|
|
@@ -105,7 +100,6 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
105
100
|
r.propsKey = propsKey;
|
|
106
101
|
r.isRoot = isRoot;
|
|
107
102
|
r.keys = keys;
|
|
108
|
-
r.schemeKeys = schemeKeys;
|
|
109
103
|
r.parentId = parentId;
|
|
110
104
|
r.renderVersion++;
|
|
111
105
|
const [, forceUpdate] = (0, import_react.useReducer)(incReducer, 0);
|
|
@@ -115,10 +109,10 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
115
109
|
const renderVersion = r.renderVersion;
|
|
116
110
|
if (r.lastSnap && !states.has(r.id)) {
|
|
117
111
|
states.set(r.id, r.lastSnap);
|
|
118
|
-
|
|
112
|
+
r.state = r.lastSnap;
|
|
119
113
|
}
|
|
120
114
|
if (cascadeOnChange && !themeProviderParents.has(r.id)) registerThemeProviderChain(r.id, r.parentId, r.props);
|
|
121
|
-
if (r.unsubscribe && r.
|
|
115
|
+
if (r.unsubscribe && r.subscribedTo !== r.parentId) r.unsubscribe?.();
|
|
122
116
|
if (shouldSubscribeToTheme(r, cascadeOnChange)) {
|
|
123
117
|
if (!r.unsubscribe) {
|
|
124
118
|
const pid = r.parentId;
|
|
@@ -137,18 +131,18 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
137
131
|
PendingUpdate.set(sid, forced ? "force" : true);
|
|
138
132
|
cb(forced);
|
|
139
133
|
});
|
|
140
|
-
r.
|
|
134
|
+
r.subscribedTo = pid;
|
|
141
135
|
r.unsubscribe = () => {
|
|
142
136
|
allListeners.delete(sid);
|
|
143
137
|
listenersByParent[pid]?.delete(sid);
|
|
144
|
-
|
|
138
|
+
r.state = void 0;
|
|
145
139
|
states.delete(sid);
|
|
146
140
|
PendingUpdate.delete(sid);
|
|
147
141
|
r.unsubscribe = void 0;
|
|
148
|
-
r.
|
|
142
|
+
r.subscribedTo = void 0;
|
|
149
143
|
};
|
|
150
144
|
}
|
|
151
|
-
} else if (r.unsubscribe)
|
|
145
|
+
} else if (r.unsubscribe) r.unsubscribe?.();
|
|
152
146
|
return () => {
|
|
153
147
|
if (r.renderVersion === renderVersion) cleanupThemeState(r);
|
|
154
148
|
};
|
|
@@ -169,13 +163,10 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
169
163
|
return state;
|
|
170
164
|
};
|
|
171
165
|
const shouldSubscribeToTheme = (r, cascadeOnChange) => Boolean(r.optimizeForFirstRender || r.isRoot || cascadeOnChange || hasThemeUpdatingProps(r.props) || r.keys.current?.size || r.props.needsUpdate?.());
|
|
172
|
-
function cleanupThemeSubscription(r) {
|
|
173
|
-
r.unsubscribe?.();
|
|
174
|
-
}
|
|
175
166
|
function cleanupThemeState(r) {
|
|
176
|
-
if (r.unsubscribe)
|
|
167
|
+
if (r.unsubscribe) r.unsubscribe();
|
|
177
168
|
else {
|
|
178
|
-
|
|
169
|
+
r.state = void 0;
|
|
179
170
|
states.delete(r.id);
|
|
180
171
|
PendingUpdate.delete(r.id);
|
|
181
172
|
}
|
|
@@ -183,16 +174,16 @@ function cleanupThemeState(r) {
|
|
|
183
174
|
themeProviderParents.delete(r.id);
|
|
184
175
|
}
|
|
185
176
|
const getSnapshotImpl = (r) => {
|
|
186
|
-
const { id, parentId, props, propsKey, isRoot, keys,
|
|
187
|
-
|
|
177
|
+
const { id, parentId, props, propsKey, isRoot, keys, optimizeForFirstRender } = r;
|
|
178
|
+
const schemeKeys = void 0;
|
|
179
|
+
let local = r.state;
|
|
188
180
|
const parentState = states.get(parentId);
|
|
189
181
|
if (local && !PendingUpdate.has(id)) {
|
|
190
|
-
if (parentState && local._parentName === parentState.name && local._propsKey === propsKey) return local;
|
|
182
|
+
if (parentState && local._parentName === parentState.name && local._parentSchemeAuthored === parentState.schemeAuthored && local._propsKey === propsKey) return local;
|
|
191
183
|
}
|
|
192
184
|
const isSchemeOnlyChange = !optimizeForFirstRender && false;
|
|
193
|
-
const
|
|
194
|
-
const
|
|
195
|
-
const needsUpdate = props.passThrough ? false : optimizeForFirstRender ? true : isRoot || props.name === "light" || props.name === "dark" || props.name === null ? true : !HasRenderedOnce.get(keys) ? true : canSkipForSchemeChange ? false : keys?.current?.size ? true : props.needsUpdate?.();
|
|
185
|
+
const canSkipForSchemeChange = Boolean(isSchemeOnlyChange && keys.current?.size && schemeKeys?.current?.size === keys.current.size);
|
|
186
|
+
const needsUpdate = props.passThrough ? false : optimizeForFirstRender ? true : isRoot || props.forceClassName || props.name === "light" || props.name === "dark" || props.name === null ? true : !HasRenderedOnce.get(keys) ? true : canSkipForSchemeChange ? false : keys?.current?.size ? true : props.needsUpdate?.();
|
|
196
187
|
const [rerender, nextRaw] = getNextState(local, props, propsKey, isRoot, id, parentId, needsUpdate, PendingUpdate.get(id));
|
|
197
188
|
let next = nextRaw;
|
|
198
189
|
if (props._themeUpdate && nextRaw?.theme) {
|
|
@@ -206,32 +197,39 @@ const getSnapshotImpl = (r) => {
|
|
|
206
197
|
PendingUpdate.delete(id);
|
|
207
198
|
if (!local || rerender) {
|
|
208
199
|
local = { ...next };
|
|
209
|
-
|
|
200
|
+
r.state = local;
|
|
210
201
|
}
|
|
211
202
|
if (next !== local) {
|
|
212
203
|
Object.assign(local, next);
|
|
213
204
|
local.id = id;
|
|
214
205
|
}
|
|
215
206
|
local._parentName = parentState?.name;
|
|
207
|
+
local._parentSchemeAuthored = parentState?.schemeAuthored;
|
|
216
208
|
local._propsKey = propsKey;
|
|
217
209
|
states.set(id, next);
|
|
218
210
|
return local;
|
|
219
211
|
};
|
|
220
212
|
const getNextState = (lastState, props, propsKey, isRoot = false, id, parentId, needsUpdate, pendingUpdate) => {
|
|
221
213
|
const parentState = states.get(parentId);
|
|
222
|
-
if (props.passThrough) return [false,
|
|
214
|
+
if (props.passThrough) return [false, parentState || lastState || { name: "" }];
|
|
223
215
|
themes ||= (0, import_config.getConfig)().themes;
|
|
224
216
|
const name = !propsKey && (!lastState || !lastState.isNew) ? null : getNewThemeName(parentState?.name, props, pendingUpdate === "force" ? true : !!needsUpdate);
|
|
225
|
-
const
|
|
226
|
-
const
|
|
217
|
+
const authoredName = props.name;
|
|
218
|
+
const parentSchemeAuthored = !!parentState?.schemeAuthored;
|
|
219
|
+
const schemeAuthored = isRoot ? !!props.forceClassName : parentSchemeAuthored || !!(authoredName && (0, import_helpers.getThemeScheme)(authoredName) && authoredName in themes);
|
|
220
|
+
const intentChanged = schemeAuthored !== parentSchemeAuthored;
|
|
221
|
+
const resolvedName = name || parentState?.name;
|
|
222
|
+
const sameAsLast = lastState && lastState.name === resolvedName && !!lastState.schemeAuthored === schemeAuthored;
|
|
223
|
+
const isSameAsParent = Boolean(parentState && resolvedName === parentState.name && !intentChanged);
|
|
224
|
+
const shouldRerender = Boolean(pendingUpdate === "force" || needsUpdate && (pendingUpdate || lastState?.name !== parentState?.name || !!lastState?.schemeAuthored !== schemeAuthored));
|
|
227
225
|
if (isSameAsParent) {
|
|
228
|
-
if (!shouldRerender &&
|
|
226
|
+
if (!shouldRerender && sameAsLast) return [false, lastState];
|
|
229
227
|
return [shouldRerender, {
|
|
230
228
|
...parentState,
|
|
231
229
|
isNew: false
|
|
232
230
|
}];
|
|
233
231
|
}
|
|
234
|
-
if (!
|
|
232
|
+
if (!resolvedName) {
|
|
235
233
|
const next = lastState ?? parentState ?? rootThemeState ?? {
|
|
236
234
|
id,
|
|
237
235
|
name: "light",
|
|
@@ -240,24 +238,24 @@ const getNextState = (lastState, props, propsKey, isRoot = false, id, parentId,
|
|
|
240
238
|
if (shouldRerender) return [true, { ...parentState || lastState || next }];
|
|
241
239
|
return [false, next];
|
|
242
240
|
}
|
|
243
|
-
const scheme =
|
|
241
|
+
const scheme = (0, import_themes.getAuthoredThemeScheme)(themes[resolvedName]) || (0, import_helpers.getThemeScheme)(resolvedName);
|
|
244
242
|
const parentInverses = parentState?.inverses ?? 0;
|
|
245
243
|
const isInverse = Boolean(parentState && scheme !== parentState.scheme);
|
|
246
244
|
const inverses = parentInverses + (isInverse ? 1 : 0);
|
|
247
245
|
const nextState = {
|
|
248
246
|
id,
|
|
249
|
-
name,
|
|
250
|
-
theme: themes[
|
|
247
|
+
name: resolvedName,
|
|
248
|
+
theme: themes[resolvedName],
|
|
251
249
|
scheme,
|
|
252
250
|
parentId,
|
|
253
251
|
parentName: parentState?.name,
|
|
254
252
|
inverses,
|
|
255
253
|
isInverse,
|
|
254
|
+
schemeAuthored,
|
|
256
255
|
isNew: true
|
|
257
256
|
};
|
|
258
257
|
if (isRoot) rootThemeState = nextState;
|
|
259
|
-
|
|
260
|
-
return [!(pendingUpdate !== "force" && lastState && !needsUpdate && nextState.name === lastState.name), nextState];
|
|
258
|
+
return [pendingUpdate === "force" || !sameAsLast, nextState];
|
|
261
259
|
};
|
|
262
260
|
function scheduleUpdate(id) {
|
|
263
261
|
const queue = [id];
|
|
@@ -275,13 +273,6 @@ function scheduleUpdate(id) {
|
|
|
275
273
|
allListeners.get(childId)?.();
|
|
276
274
|
});
|
|
277
275
|
}
|
|
278
|
-
const validSchemes = {
|
|
279
|
-
light: "light",
|
|
280
|
-
dark: "dark"
|
|
281
|
-
};
|
|
282
|
-
function getScheme(name) {
|
|
283
|
-
return validSchemes[name.split("_")[0]];
|
|
284
|
-
}
|
|
285
276
|
function getNewThemeName(parentName = "", props, forceUpdate = false) {
|
|
286
277
|
const { name } = props;
|
|
287
278
|
const cacheKey = `${parentName}|${name || ""}|${forceUpdate ? 1 : 0}`;
|
|
@@ -302,7 +293,7 @@ function resolveThemeName(parentName, name, themes2, forceUpdate = false) {
|
|
|
302
293
|
const parentParts = parentName ? parentName.split("_") : [];
|
|
303
294
|
let found = null;
|
|
304
295
|
if (name) {
|
|
305
|
-
const nameHasScheme =
|
|
296
|
+
const nameHasScheme = (0, import_helpers.getThemeScheme)(name);
|
|
306
297
|
if (nameHasScheme && name in themes2) found = name;
|
|
307
298
|
if (!found && !nameHasScheme) for (let i = parentParts.length; i >= 0; i--) {
|
|
308
299
|
const base = parentParts.slice(0, i).join("_");
|
|
@@ -313,8 +304,7 @@ function resolveThemeName(parentName, name, themes2, forceUpdate = false) {
|
|
|
313
304
|
}
|
|
314
305
|
}
|
|
315
306
|
}
|
|
316
|
-
if (!forceUpdate && found === parentName &&
|
|
307
|
+
if (!forceUpdate && found === parentName && found !== "light" && found !== "dark") return null;
|
|
317
308
|
return found;
|
|
318
309
|
}
|
|
319
|
-
const getPropsKey = ({ name, forceClassName, _themeUpdate }) => `${name || ""}${forceClassName || ""}${_themeUpdate?.key || ""}`;
|
|
320
310
|
const hasThemeUpdatingProps = (props) => "name" in props || "forceClassName" in props || "_themeUpdate" in props;
|
|
@@ -38,8 +38,10 @@ __export(useThemeState_exports, {
|
|
|
38
38
|
module.exports = __toCommonJS(useThemeState_exports);
|
|
39
39
|
var import_constants = require("@tamagui/constants");
|
|
40
40
|
var import_react = require("react");
|
|
41
|
+
var import_helpers = require("@tamagui/helpers");
|
|
41
42
|
var import_config = require("../config.native.js");
|
|
42
43
|
var import_constants2 = require("../constants/constants.native.js");
|
|
44
|
+
var import_themes = require("../helpers/themes.native.js");
|
|
43
45
|
var ThemeStateContext = (0, import_react.createContext)("");
|
|
44
46
|
var allListeners = /* @__PURE__ */ new Map();
|
|
45
47
|
var listenersByParent = {};
|
|
@@ -47,7 +49,6 @@ var HasRenderedOnce = /* @__PURE__ */ new WeakMap();
|
|
|
47
49
|
var HadTheme = /* @__PURE__ */ new WeakMap();
|
|
48
50
|
var PendingUpdate = /* @__PURE__ */ new Map();
|
|
49
51
|
var states = /* @__PURE__ */ new Map();
|
|
50
|
-
var localStates = /* @__PURE__ */ new Map();
|
|
51
52
|
var shouldForce = false;
|
|
52
53
|
var forceUpdateThemes = function() {
|
|
53
54
|
cacheVersion++;
|
|
@@ -96,6 +97,7 @@ var incReducer = function(c) {
|
|
|
96
97
|
var useThemeState = function(props) {
|
|
97
98
|
"use no memo";
|
|
98
99
|
var isRoot = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false, keys = arguments.length > 2 ? arguments[2] : void 0, schemeKeys = arguments.length > 3 ? arguments[3] : void 0, cascadeOnChange = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false, optimizeForFirstRender = arguments.length > 5 && arguments[5] !== void 0 ? arguments[5] : false;
|
|
100
|
+
var _props__themeUpdate;
|
|
99
101
|
var _ref;
|
|
100
102
|
var { disable } = props;
|
|
101
103
|
var parentId = (0, import_react.useContext)(ThemeStateContext);
|
|
@@ -108,16 +110,10 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
108
110
|
theme: (0, import_config.getConfig)().themes.light
|
|
109
111
|
};
|
|
110
112
|
var id = (0, import_react.useId)();
|
|
111
|
-
var propsKey =
|
|
113
|
+
var propsKey = `${props.name || ""}${props.forceClassName || ""}${((_props__themeUpdate = props._themeUpdate) === null || _props__themeUpdate === void 0 ? void 0 : _props__themeUpdate.key) || ""}`;
|
|
112
114
|
if (cascadeOnChange) registerThemeProviderChain(id, parentId, props);
|
|
113
115
|
var r = (_ref = (0, import_react.useRef)(null)).current || (_ref.current = {
|
|
114
116
|
id,
|
|
115
|
-
parentId,
|
|
116
|
-
props,
|
|
117
|
-
propsKey,
|
|
118
|
-
isRoot,
|
|
119
|
-
keys,
|
|
120
|
-
schemeKeys,
|
|
121
117
|
optimizeForFirstRender,
|
|
122
118
|
renderVersion: 0
|
|
123
119
|
});
|
|
@@ -135,10 +131,13 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
135
131
|
var renderVersion = r.renderVersion;
|
|
136
132
|
if (r.lastSnap && !states.has(r.id)) {
|
|
137
133
|
states.set(r.id, r.lastSnap);
|
|
138
|
-
|
|
134
|
+
r.state = r.lastSnap;
|
|
139
135
|
}
|
|
140
136
|
if (cascadeOnChange && !themeProviderParents.has(r.id)) registerThemeProviderChain(r.id, r.parentId, r.props);
|
|
141
|
-
if (r.unsubscribe && r.
|
|
137
|
+
if (r.unsubscribe && r.subscribedTo !== r.parentId) {
|
|
138
|
+
var _r_unsubscribe;
|
|
139
|
+
(_r_unsubscribe = r.unsubscribe) === null || _r_unsubscribe === void 0 || _r_unsubscribe.call(r);
|
|
140
|
+
}
|
|
142
141
|
if (shouldSubscribeToTheme(r, cascadeOnChange)) {
|
|
143
142
|
if (!r.unsubscribe) {
|
|
144
143
|
var _listenersByParent, _pid;
|
|
@@ -159,19 +158,22 @@ Looked for theme${props.name ? ` "${props.name}"` : ""}, but no parent theme con
|
|
|
159
158
|
PendingUpdate.set(sid, forced ? "force" : true);
|
|
160
159
|
cb(forced);
|
|
161
160
|
});
|
|
162
|
-
r.
|
|
161
|
+
r.subscribedTo = pid;
|
|
163
162
|
r.unsubscribe = function() {
|
|
164
163
|
var _listenersByParent_pid;
|
|
165
164
|
allListeners.delete(sid);
|
|
166
165
|
(_listenersByParent_pid = listenersByParent[pid]) === null || _listenersByParent_pid === void 0 || _listenersByParent_pid.delete(sid);
|
|
167
|
-
|
|
166
|
+
r.state = void 0;
|
|
168
167
|
states.delete(sid);
|
|
169
168
|
PendingUpdate.delete(sid);
|
|
170
169
|
r.unsubscribe = void 0;
|
|
171
|
-
r.
|
|
170
|
+
r.subscribedTo = void 0;
|
|
172
171
|
};
|
|
173
172
|
}
|
|
174
|
-
} else if (r.unsubscribe)
|
|
173
|
+
} else if (r.unsubscribe) {
|
|
174
|
+
var _r_unsubscribe1;
|
|
175
|
+
(_r_unsubscribe1 = r.unsubscribe) === null || _r_unsubscribe1 === void 0 || _r_unsubscribe1.call(r);
|
|
176
|
+
}
|
|
175
177
|
return function() {
|
|
176
178
|
if (r.renderVersion === renderVersion) cleanupThemeState(r);
|
|
177
179
|
};
|
|
@@ -195,14 +197,10 @@ var shouldSubscribeToTheme = function(r, cascadeOnChange) {
|
|
|
195
197
|
var _r_keys_current, _r_props_needsUpdate, _r_props;
|
|
196
198
|
return Boolean(r.optimizeForFirstRender || r.isRoot || cascadeOnChange || hasThemeUpdatingProps(r.props) || ((_r_keys_current = r.keys.current) === null || _r_keys_current === void 0 ? void 0 : _r_keys_current.size) || ((_r_props_needsUpdate = (_r_props = r.props).needsUpdate) === null || _r_props_needsUpdate === void 0 ? void 0 : _r_props_needsUpdate.call(_r_props)));
|
|
197
199
|
};
|
|
198
|
-
function cleanupThemeSubscription(r) {
|
|
199
|
-
var _r_unsubscribe;
|
|
200
|
-
(_r_unsubscribe = r.unsubscribe) === null || _r_unsubscribe === void 0 || _r_unsubscribe.call(r);
|
|
201
|
-
}
|
|
202
200
|
function cleanupThemeState(r) {
|
|
203
|
-
if (r.unsubscribe)
|
|
201
|
+
if (r.unsubscribe) r.unsubscribe();
|
|
204
202
|
else {
|
|
205
|
-
|
|
203
|
+
r.state = void 0;
|
|
206
204
|
states.delete(r.id);
|
|
207
205
|
PendingUpdate.delete(r.id);
|
|
208
206
|
}
|
|
@@ -211,16 +209,16 @@ function cleanupThemeState(r) {
|
|
|
211
209
|
}
|
|
212
210
|
var getSnapshotImpl = function(r) {
|
|
213
211
|
var _keys_current, _schemeKeys_current, _keys_current1, _props_needsUpdate;
|
|
214
|
-
var { id, parentId, props, propsKey, isRoot, keys,
|
|
215
|
-
var
|
|
212
|
+
var { id, parentId, props, propsKey, isRoot, keys, optimizeForFirstRender } = r;
|
|
213
|
+
var schemeKeys = r.schemeKeys;
|
|
214
|
+
var local = r.state;
|
|
216
215
|
var parentState = states.get(parentId);
|
|
217
216
|
if (local && !PendingUpdate.has(id)) {
|
|
218
|
-
if (parentState && local._parentName === parentState.name && local._propsKey === propsKey) return local;
|
|
217
|
+
if (parentState && local._parentName === parentState.name && local._parentSchemeAuthored === parentState.schemeAuthored && local._propsKey === propsKey) return local;
|
|
219
218
|
}
|
|
220
219
|
var isSchemeOnlyChange = !optimizeForFirstRender && import_constants.supportsDynamicColorIOS && (0, import_config.getSetting)("fastSchemeChange") && local && parentState && local.scheme !== parentState.scheme && getThemeBaseName(local.name) === getThemeBaseName(parentState.name);
|
|
221
|
-
var
|
|
222
|
-
var canSkipForSchemeChange =
|
|
223
|
-
var needsUpdate = props.passThrough ? false : optimizeForFirstRender ? true : isRoot || props.name === "light" || props.name === "dark" || props.name === null ? true : !HasRenderedOnce.get(keys) ? true : canSkipForSchemeChange ? false : (keys === null || keys === void 0 ? void 0 : (_keys_current1 = keys.current) === null || _keys_current1 === void 0 ? void 0 : _keys_current1.size) ? true : (_props_needsUpdate = props.needsUpdate) === null || _props_needsUpdate === void 0 ? void 0 : _props_needsUpdate.call(props);
|
|
220
|
+
var canSkipForSchemeChange = Boolean(isSchemeOnlyChange && ((_keys_current = keys.current) === null || _keys_current === void 0 ? void 0 : _keys_current.size) && (schemeKeys === null || schemeKeys === void 0 ? void 0 : (_schemeKeys_current = schemeKeys.current) === null || _schemeKeys_current === void 0 ? void 0 : _schemeKeys_current.size) === keys.current.size);
|
|
221
|
+
var needsUpdate = props.passThrough ? false : optimizeForFirstRender ? true : isRoot || props.forceClassName || props.name === "light" || props.name === "dark" || props.name === null ? true : !HasRenderedOnce.get(keys) ? true : canSkipForSchemeChange ? false : (keys === null || keys === void 0 ? void 0 : (_keys_current1 = keys.current) === null || _keys_current1 === void 0 ? void 0 : _keys_current1.size) ? true : (_props_needsUpdate = props.needsUpdate) === null || _props_needsUpdate === void 0 ? void 0 : _props_needsUpdate.call(props);
|
|
224
222
|
var [rerender, nextRaw] = getNextState(local, props, propsKey, isRoot, id, parentId, needsUpdate, PendingUpdate.get(id));
|
|
225
223
|
var next = nextRaw;
|
|
226
224
|
if (props._themeUpdate && (nextRaw === null || nextRaw === void 0 ? void 0 : nextRaw.theme)) {
|
|
@@ -235,13 +233,14 @@ var getSnapshotImpl = function(r) {
|
|
|
235
233
|
PendingUpdate.delete(id);
|
|
236
234
|
if (!local || rerender) {
|
|
237
235
|
local = { ...next };
|
|
238
|
-
|
|
236
|
+
r.state = local;
|
|
239
237
|
}
|
|
240
238
|
if (next !== local) {
|
|
241
239
|
Object.assign(local, next);
|
|
242
240
|
local.id = id;
|
|
243
241
|
}
|
|
244
242
|
local._parentName = parentState === null || parentState === void 0 ? void 0 : parentState.name;
|
|
243
|
+
local._parentSchemeAuthored = parentState === null || parentState === void 0 ? void 0 : parentState.schemeAuthored;
|
|
245
244
|
local._propsKey = propsKey;
|
|
246
245
|
states.set(id, next);
|
|
247
246
|
return local;
|
|
@@ -249,19 +248,25 @@ var getSnapshotImpl = function(r) {
|
|
|
249
248
|
var getNextState = function(lastState, props, propsKey) {
|
|
250
249
|
var isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false, id = arguments.length > 4 ? arguments[4] : void 0, parentId = arguments.length > 5 ? arguments[5] : void 0, needsUpdate = arguments.length > 6 ? arguments[6] : void 0, pendingUpdate = arguments.length > 7 ? arguments[7] : void 0;
|
|
251
250
|
var parentState = states.get(parentId);
|
|
252
|
-
if (props.passThrough) return [false,
|
|
251
|
+
if (props.passThrough) return [false, parentState || lastState || { name: "" }];
|
|
253
252
|
themes || (themes = (0, import_config.getConfig)().themes);
|
|
254
253
|
var name = !propsKey && (!lastState || !lastState.isNew) ? null : getNewThemeName(parentState === null || parentState === void 0 ? void 0 : parentState.name, props, pendingUpdate === "force" ? true : !!needsUpdate);
|
|
255
|
-
var
|
|
256
|
-
var
|
|
254
|
+
var authoredName = props.name;
|
|
255
|
+
var parentSchemeAuthored = !!(parentState === null || parentState === void 0 ? void 0 : parentState.schemeAuthored);
|
|
256
|
+
var schemeAuthored = isRoot ? !!props.forceClassName : parentSchemeAuthored || !!(authoredName && (0, import_helpers.getThemeScheme)(authoredName) && authoredName in themes);
|
|
257
|
+
var intentChanged = schemeAuthored !== parentSchemeAuthored;
|
|
258
|
+
var resolvedName = name || (parentState === null || parentState === void 0 ? void 0 : parentState.name);
|
|
259
|
+
var sameAsLast = lastState && lastState.name === resolvedName && !!lastState.schemeAuthored === schemeAuthored;
|
|
260
|
+
var isSameAsParent = Boolean(parentState && resolvedName === parentState.name && !intentChanged);
|
|
261
|
+
var shouldRerender = Boolean(pendingUpdate === "force" || needsUpdate && (pendingUpdate || (lastState === null || lastState === void 0 ? void 0 : lastState.name) !== (parentState === null || parentState === void 0 ? void 0 : parentState.name) || !!(lastState === null || lastState === void 0 ? void 0 : lastState.schemeAuthored) !== schemeAuthored));
|
|
257
262
|
if (isSameAsParent) {
|
|
258
|
-
if (!shouldRerender &&
|
|
263
|
+
if (!shouldRerender && sameAsLast) return [false, lastState];
|
|
259
264
|
return [shouldRerender, {
|
|
260
265
|
...parentState,
|
|
261
266
|
isNew: false
|
|
262
267
|
}];
|
|
263
268
|
}
|
|
264
|
-
if (!
|
|
269
|
+
if (!resolvedName) {
|
|
265
270
|
var _ref, _ref1;
|
|
266
271
|
var next = (_ref1 = (_ref = lastState !== null && lastState !== void 0 ? lastState : parentState) !== null && _ref !== void 0 ? _ref : rootThemeState) !== null && _ref1 !== void 0 ? _ref1 : {
|
|
267
272
|
id,
|
|
@@ -271,25 +276,25 @@ var getNextState = function(lastState, props, propsKey) {
|
|
|
271
276
|
if (shouldRerender) return [true, { ...parentState || lastState || next }];
|
|
272
277
|
return [false, next];
|
|
273
278
|
}
|
|
274
|
-
var scheme =
|
|
279
|
+
var scheme = (0, import_themes.getAuthoredThemeScheme)(themes[resolvedName]) || (0, import_helpers.getThemeScheme)(resolvedName);
|
|
275
280
|
var _parentState_inverses;
|
|
276
281
|
var parentInverses = (_parentState_inverses = parentState === null || parentState === void 0 ? void 0 : parentState.inverses) !== null && _parentState_inverses !== void 0 ? _parentState_inverses : 0;
|
|
277
282
|
var isInverse = Boolean(parentState && scheme !== parentState.scheme);
|
|
278
283
|
var inverses = parentInverses + (isInverse ? 1 : 0);
|
|
279
284
|
var nextState = {
|
|
280
285
|
id,
|
|
281
|
-
name,
|
|
282
|
-
theme: themes[
|
|
286
|
+
name: resolvedName,
|
|
287
|
+
theme: themes[resolvedName],
|
|
283
288
|
scheme,
|
|
284
289
|
parentId,
|
|
285
290
|
parentName: parentState === null || parentState === void 0 ? void 0 : parentState.name,
|
|
286
291
|
inverses,
|
|
287
292
|
isInverse,
|
|
293
|
+
schemeAuthored,
|
|
288
294
|
isNew: true
|
|
289
295
|
};
|
|
290
296
|
if (isRoot) rootThemeState = nextState;
|
|
291
|
-
|
|
292
|
-
return [!(pendingUpdate !== "force" && lastState && !needsUpdate && nextState.name === lastState.name), nextState];
|
|
297
|
+
return [pendingUpdate === "force" || !sameAsLast, nextState];
|
|
293
298
|
};
|
|
294
299
|
function scheduleUpdate(id) {
|
|
295
300
|
var queue = [id];
|
|
@@ -323,13 +328,6 @@ function scheduleUpdate(id) {
|
|
|
323
328
|
(_allListeners_get = allListeners.get(childId2)) === null || _allListeners_get === void 0 || _allListeners_get();
|
|
324
329
|
});
|
|
325
330
|
}
|
|
326
|
-
var validSchemes = {
|
|
327
|
-
light: "light",
|
|
328
|
-
dark: "dark"
|
|
329
|
-
};
|
|
330
|
-
function getScheme(name) {
|
|
331
|
-
return validSchemes[name.split("_")[0]];
|
|
332
|
-
}
|
|
333
331
|
function getNewThemeName() {
|
|
334
332
|
var parentName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", props = arguments.length > 1 ? arguments[1] : void 0, forceUpdate = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
|
|
335
333
|
var { name } = props;
|
|
@@ -354,7 +352,7 @@ function resolveThemeName(parentName, name, themes2) {
|
|
|
354
352
|
var parentParts = parentName ? parentName.split("_") : [];
|
|
355
353
|
var found = null;
|
|
356
354
|
if (name) {
|
|
357
|
-
var nameHasScheme =
|
|
355
|
+
var nameHasScheme = (0, import_helpers.getThemeScheme)(name);
|
|
358
356
|
if (nameHasScheme && name in themes2) found = name;
|
|
359
357
|
if (!found && !nameHasScheme) for (var i = parentParts.length; i >= 0; i--) {
|
|
360
358
|
var base = parentParts.slice(0, i).join("_");
|
|
@@ -365,13 +363,9 @@ function resolveThemeName(parentName, name, themes2) {
|
|
|
365
363
|
}
|
|
366
364
|
}
|
|
367
365
|
}
|
|
368
|
-
if (!forceUpdate && found === parentName &&
|
|
366
|
+
if (!forceUpdate && found === parentName && found !== "light" && found !== "dark") return null;
|
|
369
367
|
return found;
|
|
370
368
|
}
|
|
371
|
-
var getPropsKey = function(param) {
|
|
372
|
-
var { name, forceClassName, _themeUpdate } = param;
|
|
373
|
-
return `${name || ""}${forceClassName || ""}${(_themeUpdate === null || _themeUpdate === void 0 ? void 0 : _themeUpdate.key) || ""}`;
|
|
374
|
-
};
|
|
375
369
|
var hasThemeUpdatingProps = function(props) {
|
|
376
370
|
return "name" in props || "forceClassName" in props || "_themeUpdate" in props;
|
|
377
371
|
};
|