@tamagui/web 1.123.17 → 1.124.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/Tamagui.cjs +1 -6
- package/dist/cjs/Tamagui.js +1 -5
- package/dist/cjs/Tamagui.js.map +1 -1
- package/dist/cjs/Tamagui.native.js +2 -8
- package/dist/cjs/Tamagui.native.js.map +2 -2
- package/dist/cjs/createComponent.cjs +9 -13
- package/dist/cjs/createComponent.js +10 -8
- package/dist/cjs/createComponent.js.map +1 -1
- package/dist/cjs/createComponent.native.js +17 -19
- package/dist/cjs/createComponent.native.js.map +2 -2
- package/dist/cjs/helpers/createShallowSetState.cjs +7 -4
- package/dist/cjs/helpers/createShallowSetState.js +12 -6
- package/dist/cjs/helpers/createShallowSetState.js.map +1 -1
- package/dist/cjs/helpers/createShallowSetState.native.js +10 -4
- package/dist/cjs/helpers/createShallowSetState.native.js.map +2 -2
- package/dist/cjs/hooks/{shouldDeoptDueToParentScheme.cjs → doesRootSchemeMatchSystem.cjs} +5 -5
- package/dist/cjs/hooks/{shouldDeoptDueToParentScheme.js → doesRootSchemeMatchSystem.js} +6 -6
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.js.map +6 -0
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +30 -0
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +6 -0
- package/dist/cjs/hooks/getThemeProxied.cjs +58 -0
- package/dist/cjs/hooks/getThemeProxied.js +53 -0
- package/dist/cjs/hooks/getThemeProxied.js.map +6 -0
- package/dist/cjs/hooks/getThemeProxied.native.js +76 -0
- package/dist/cjs/hooks/getThemeProxied.native.js.map +6 -0
- package/dist/cjs/hooks/useComponentState.cjs +16 -16
- package/dist/cjs/hooks/useComponentState.js +22 -15
- package/dist/cjs/hooks/useComponentState.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.native.js +15 -15
- package/dist/cjs/hooks/useComponentState.native.js.map +2 -2
- package/dist/cjs/hooks/useProps.cjs +2 -2
- package/dist/cjs/hooks/useProps.js +2 -2
- package/dist/cjs/hooks/useProps.js.map +1 -1
- package/dist/cjs/hooks/useProps.native.js +2 -2
- package/dist/cjs/hooks/useProps.native.js.map +2 -2
- package/dist/cjs/hooks/useTheme.cjs +10 -208
- package/dist/cjs/hooks/useTheme.js +7 -207
- package/dist/cjs/hooks/useTheme.js.map +2 -2
- package/dist/cjs/hooks/useTheme.native.js +8 -252
- package/dist/cjs/hooks/useTheme.native.js.map +2 -2
- package/dist/cjs/hooks/useThemeName.cjs +15 -27
- package/dist/cjs/hooks/useThemeName.js +6 -20
- package/dist/cjs/hooks/useThemeName.js.map +2 -2
- package/dist/cjs/hooks/useThemeName.native.js +16 -22
- package/dist/cjs/hooks/useThemeName.native.js.map +2 -2
- package/dist/cjs/hooks/useThemeState.cjs +187 -0
- package/dist/cjs/hooks/useThemeState.js +159 -0
- package/dist/cjs/hooks/useThemeState.js.map +6 -0
- package/dist/cjs/hooks/useThemeState.native.js +206 -0
- package/dist/cjs/hooks/useThemeState.native.js.map +6 -0
- package/dist/cjs/index.cjs +2 -0
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +3 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
- package/dist/cjs/views/Theme.cjs +81 -85
- package/dist/cjs/views/Theme.js +44 -51
- package/dist/cjs/views/Theme.js.map +2 -2
- package/dist/cjs/views/Theme.native.js +58 -58
- package/dist/cjs/views/Theme.native.js.map +2 -2
- package/dist/cjs/views/ThemeDebug.cjs +21 -43
- package/dist/cjs/views/ThemeDebug.js +18 -38
- package/dist/cjs/views/ThemeDebug.js.map +2 -2
- package/dist/cjs/views/ThemeProvider.cjs +1 -1
- package/dist/cjs/views/ThemeProvider.js +1 -1
- package/dist/cjs/views/ThemeProvider.js.map +1 -1
- package/dist/cjs/views/ThemeProvider.native.js +1 -1
- package/dist/cjs/views/ThemeProvider.native.js.map +2 -2
- package/dist/esm/Tamagui.js +0 -5
- package/dist/esm/Tamagui.js.map +1 -1
- package/dist/esm/Tamagui.mjs +0 -5
- package/dist/esm/Tamagui.mjs.map +1 -1
- package/dist/esm/Tamagui.native.js +1 -8
- package/dist/esm/Tamagui.native.js.map +2 -2
- package/dist/esm/createComponent.js +9 -8
- package/dist/esm/createComponent.js.map +1 -1
- package/dist/esm/createComponent.mjs +9 -13
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js +16 -19
- package/dist/esm/createComponent.native.js.map +2 -2
- package/dist/esm/helpers/createShallowSetState.js +13 -7
- package/dist/esm/helpers/createShallowSetState.js.map +1 -1
- package/dist/esm/helpers/createShallowSetState.mjs +8 -5
- package/dist/esm/helpers/createShallowSetState.mjs.map +1 -1
- package/dist/esm/helpers/createShallowSetState.native.js +11 -5
- package/dist/esm/helpers/createShallowSetState.native.js.map +2 -2
- package/dist/esm/hooks/doesRootSchemeMatchSystem.js +7 -0
- package/dist/esm/hooks/doesRootSchemeMatchSystem.js.map +6 -0
- package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +5 -0
- package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs.map +1 -0
- package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js +10 -0
- package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js.map +6 -0
- package/dist/esm/hooks/getThemeProxied.js +40 -0
- package/dist/esm/hooks/getThemeProxied.js.map +6 -0
- package/dist/esm/hooks/getThemeProxied.mjs +35 -0
- package/dist/esm/hooks/getThemeProxied.mjs.map +1 -0
- package/dist/esm/hooks/getThemeProxied.native.js +59 -0
- package/dist/esm/hooks/getThemeProxied.native.js.map +6 -0
- package/dist/esm/hooks/useComponentState.js +22 -15
- package/dist/esm/hooks/useComponentState.js.map +1 -1
- package/dist/esm/hooks/useComponentState.mjs +16 -16
- package/dist/esm/hooks/useComponentState.mjs.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +15 -15
- package/dist/esm/hooks/useComponentState.native.js.map +2 -2
- package/dist/esm/hooks/useProps.js +2 -2
- package/dist/esm/hooks/useProps.js.map +1 -1
- package/dist/esm/hooks/useProps.mjs +2 -2
- package/dist/esm/hooks/useProps.mjs.map +1 -1
- package/dist/esm/hooks/useProps.native.js +2 -2
- package/dist/esm/hooks/useProps.native.js.map +2 -2
- package/dist/esm/hooks/useTheme.js +9 -220
- package/dist/esm/hooks/useTheme.js.map +2 -2
- package/dist/esm/hooks/useTheme.mjs +10 -205
- package/dist/esm/hooks/useTheme.mjs.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +11 -257
- package/dist/esm/hooks/useTheme.native.js.map +2 -2
- package/dist/esm/hooks/useThemeName.js +4 -12
- package/dist/esm/hooks/useThemeName.js.map +2 -2
- package/dist/esm/hooks/useThemeName.mjs +11 -12
- package/dist/esm/hooks/useThemeName.mjs.map +1 -1
- package/dist/esm/hooks/useThemeName.native.js +15 -14
- package/dist/esm/hooks/useThemeName.native.js.map +2 -2
- package/dist/esm/hooks/useThemeState.js +151 -0
- package/dist/esm/hooks/useThemeState.js.map +6 -0
- package/dist/esm/hooks/useThemeState.mjs +159 -0
- package/dist/esm/hooks/useThemeState.mjs.map +1 -0
- package/dist/esm/hooks/useThemeState.native.js +182 -0
- package/dist/esm/hooks/useThemeState.native.js.map +6 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +2 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -0
- package/dist/esm/index.native.js.map +2 -2
- package/dist/esm/views/TamaguiProvider.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.js +57 -54
- package/dist/esm/views/Theme.js.map +2 -2
- package/dist/esm/views/Theme.mjs +81 -85
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +61 -61
- package/dist/esm/views/Theme.native.js.map +2 -2
- package/dist/esm/views/ThemeDebug.js +16 -29
- package/dist/esm/views/ThemeDebug.js.map +1 -1
- package/dist/esm/views/ThemeDebug.mjs +16 -27
- package/dist/esm/views/ThemeDebug.mjs.map +1 -1
- package/dist/esm/views/ThemeProvider.js +2 -2
- package/dist/esm/views/ThemeProvider.js.map +1 -1
- package/dist/esm/views/ThemeProvider.mjs +2 -2
- package/dist/esm/views/ThemeProvider.mjs.map +1 -1
- package/dist/esm/views/ThemeProvider.native.js +2 -2
- package/dist/esm/views/ThemeProvider.native.js.map +2 -2
- package/package.json +11 -11
- package/src/Tamagui.ts +0 -6
- package/src/createComponent.tsx +19 -28
- package/src/helpers/createShallowSetState.tsx +17 -8
- package/src/hooks/doesRootSchemeMatchSystem.native.ts +7 -0
- package/src/hooks/doesRootSchemeMatchSystem.ts +4 -0
- package/src/hooks/getThemeProxied.ts +165 -0
- package/src/hooks/useComponentState.ts +26 -21
- package/src/hooks/useProps.tsx +2 -2
- package/src/hooks/useTheme.tsx +22 -633
- package/src/hooks/useThemeName.tsx +6 -18
- package/src/hooks/useThemeState.ts +341 -0
- package/src/index.ts +1 -0
- package/src/types.tsx +2 -2
- package/src/views/TamaguiProvider.tsx +1 -1
- package/src/views/Theme.tsx +129 -132
- package/src/views/ThemeDebug.native.tsx +2 -2
- package/src/views/ThemeDebug.tsx +17 -39
- package/src/views/ThemeProvider.tsx +2 -2
- package/types/Tamagui.d.ts +0 -2
- package/types/Tamagui.d.ts.map +1 -1
- package/types/createComponent.d.ts.map +1 -1
- package/types/helpers/createShallowSetState.d.ts +1 -1
- package/types/helpers/createShallowSetState.d.ts.map +1 -1
- package/types/hooks/doesRootSchemeMatchSystem.d.ts +2 -0
- package/types/hooks/doesRootSchemeMatchSystem.d.ts.map +1 -0
- package/types/hooks/doesRootSchemeMatchSystem.native.d.ts +2 -0
- package/types/hooks/doesRootSchemeMatchSystem.native.d.ts.map +1 -0
- package/types/hooks/getThemeProxied.d.ts +25 -0
- package/types/hooks/getThemeProxied.d.ts.map +1 -0
- package/types/hooks/useComponentState.d.ts.map +1 -1
- package/types/hooks/useConfiguration.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +9 -36
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/hooks/useThemeName.d.ts +1 -3
- package/types/hooks/useThemeName.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts +22 -0
- package/types/hooks/useThemeState.d.ts.map +1 -0
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/types.d.ts +2 -2
- package/types/types.d.ts.map +1 -1
- package/types/views/Theme.d.ts +3 -3
- package/types/views/Theme.d.ts.map +1 -1
- package/types/views/ThemeDebug.d.ts +2 -2
- package/types/views/ThemeDebug.d.ts.map +1 -1
- package/types/views/ThemeDebug.native.d.ts +2 -2
- package/types/views/ThemeDebug.native.d.ts.map +1 -1
- package/dist/cjs/helpers/ThemeManager.cjs +0 -202
- package/dist/cjs/helpers/ThemeManager.js +0 -183
- package/dist/cjs/helpers/ThemeManager.js.map +0 -6
- package/dist/cjs/helpers/ThemeManager.native.js +0 -282
- package/dist/cjs/helpers/ThemeManager.native.js.map +0 -6
- package/dist/cjs/helpers/ThemeManagerContext.cjs +0 -38
- package/dist/cjs/helpers/ThemeManagerContext.js +0 -30
- package/dist/cjs/helpers/ThemeManagerContext.js.map +0 -6
- package/dist/cjs/helpers/ThemeManagerContext.native.js +0 -34
- package/dist/cjs/helpers/ThemeManagerContext.native.js.map +0 -6
- package/dist/cjs/hooks/shouldDeoptDueToParentScheme.js.map +0 -6
- package/dist/cjs/hooks/shouldDeoptDueToParentScheme.native.js +0 -50
- package/dist/cjs/hooks/shouldDeoptDueToParentScheme.native.js.map +0 -6
- package/dist/esm/helpers/ThemeManager.js +0 -169
- package/dist/esm/helpers/ThemeManager.js.map +0 -6
- package/dist/esm/helpers/ThemeManager.mjs +0 -177
- package/dist/esm/helpers/ThemeManager.mjs.map +0 -1
- package/dist/esm/helpers/ThemeManager.native.js +0 -261
- package/dist/esm/helpers/ThemeManager.native.js.map +0 -6
- package/dist/esm/helpers/ThemeManagerContext.js +0 -6
- package/dist/esm/helpers/ThemeManagerContext.js.map +0 -6
- package/dist/esm/helpers/ThemeManagerContext.mjs +0 -4
- package/dist/esm/helpers/ThemeManagerContext.mjs.map +0 -1
- package/dist/esm/helpers/ThemeManagerContext.native.js +0 -6
- package/dist/esm/helpers/ThemeManagerContext.native.js.map +0 -6
- package/dist/esm/hooks/shouldDeoptDueToParentScheme.js +0 -7
- package/dist/esm/hooks/shouldDeoptDueToParentScheme.js.map +0 -6
- package/dist/esm/hooks/shouldDeoptDueToParentScheme.mjs +0 -5
- package/dist/esm/hooks/shouldDeoptDueToParentScheme.mjs.map +0 -1
- package/dist/esm/hooks/shouldDeoptDueToParentScheme.native.js +0 -29
- package/dist/esm/hooks/shouldDeoptDueToParentScheme.native.js.map +0 -6
- package/src/helpers/ThemeManager.tsx +0 -405
- package/src/helpers/ThemeManagerContext.tsx +0 -4
- package/src/hooks/shouldDeoptDueToParentScheme.native.tsx +0 -37
- package/src/hooks/shouldDeoptDueToParentScheme.tsx +0 -6
- package/types/helpers/ThemeManager.d.ts +0 -45
- package/types/helpers/ThemeManager.d.ts.map +0 -1
- package/types/helpers/ThemeManagerContext.d.ts +0 -4
- package/types/helpers/ThemeManagerContext.d.ts.map +0 -1
- package/types/hooks/shouldDeoptDueToParentScheme.d.ts +0 -3
- package/types/hooks/shouldDeoptDueToParentScheme.d.ts.map +0 -1
- package/types/hooks/shouldDeoptDueToParentScheme.native.d.ts +0 -3
- package/types/hooks/shouldDeoptDueToParentScheme.native.d.ts.map +0 -1
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { isWeb } from "@tamagui/constants";
|
|
3
3
|
import React, { Children, cloneElement, forwardRef, isValidElement, useRef } from "react";
|
|
4
|
+
import { getSetting } from "../config";
|
|
4
5
|
import { variableToString } from "../createVariable";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { useChangeThemeEffect } from "../hooks/useTheme";
|
|
6
|
+
import { useThemeWithState } from "../hooks/useTheme";
|
|
7
|
+
import { getThemeState, hasThemeUpdatingProps, ThemeStateContext } from "../hooks/useThemeState";
|
|
8
8
|
import { ThemeDebug } from "./ThemeDebug";
|
|
9
|
-
var
|
|
10
|
-
|
|
9
|
+
var empty = {
|
|
10
|
+
className: "",
|
|
11
|
+
style: {}
|
|
12
|
+
}, Theme = /* @__PURE__ */ forwardRef(function(props, ref) {
|
|
11
13
|
if (props.disable)
|
|
12
|
-
return children;
|
|
13
|
-
var isRoot = !!props._isRoot, themeState =
|
|
14
|
+
return props.children;
|
|
15
|
+
var isRoot = !!props._isRoot, [_, themeState] = useThemeWithState(props, isRoot), disableDirectChildTheme = props["disable-child-theme"], finalChildren = disableDirectChildTheme ? Children.map(props.children, function(child) {
|
|
14
16
|
return /* @__PURE__ */ cloneElement(child, {
|
|
15
17
|
"data-disable-theme": !0
|
|
16
18
|
});
|
|
17
|
-
}) : children;
|
|
19
|
+
}) : props.children;
|
|
18
20
|
if (ref)
|
|
19
21
|
try {
|
|
20
22
|
React.Children.only(finalChildren), finalChildren = /* @__PURE__ */ cloneElement(finalChildren, {
|
|
@@ -22,11 +24,6 @@ var Theme = /* @__PURE__ */ forwardRef(function(param, ref) {
|
|
|
22
24
|
});
|
|
23
25
|
} catch {
|
|
24
26
|
}
|
|
25
|
-
process.env.NODE_ENV === "development" && props.debug === "visualize" && (finalChildren = /* @__PURE__ */ _jsx(ThemeDebug, {
|
|
26
|
-
themeState,
|
|
27
|
-
themeProps: props,
|
|
28
|
-
children: finalChildren
|
|
29
|
-
}));
|
|
30
27
|
var stateRef = useRef({
|
|
31
28
|
hasEverThemed: !1
|
|
32
29
|
});
|
|
@@ -34,65 +31,68 @@ var Theme = /* @__PURE__ */ forwardRef(function(param, ref) {
|
|
|
34
31
|
});
|
|
35
32
|
Theme.avoidForwardRef = !0;
|
|
36
33
|
function getThemedChildren(themeState, children, props) {
|
|
37
|
-
var isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1, stateRef = arguments.length > 4 ? arguments[4] : void 0, {
|
|
38
|
-
if (!
|
|
39
|
-
return children;
|
|
40
|
-
var { shallow, forceClassName } = props, shouldRenderChildrenWithTheme = isNewTheme || isRoot || "inverse" in props || "name" in props || "reset" in props || "forceClassName" in props || stateRef.current.hasEverThemed;
|
|
41
|
-
if (shouldRenderChildrenWithTheme && (stateRef.current.hasEverThemed = !0), !shouldRenderChildrenWithTheme)
|
|
42
|
-
return children;
|
|
43
|
-
process.env.NODE_ENV === "development" && shouldRenderChildrenWithTheme && props.debug === "verbose" && log(`adding theme: isRoot ${isRoot}, inverse ${"inverse" in props}, isNewTheme ${isNewTheme}, hasEver ${stateRef.current.hasEverThemed}`, props);
|
|
44
|
-
var next = children;
|
|
45
|
-
shallow && (next = Children.toArray(children).map(function(child) {
|
|
46
|
-
return /* @__PURE__ */ isValidElement(child) ? /* @__PURE__ */ cloneElement(child, void 0, /* @__PURE__ */ _jsx(Theme, {
|
|
47
|
-
name: themeManager.state.parentName,
|
|
48
|
-
children: child.props.children
|
|
49
|
-
})) : child;
|
|
50
|
-
}));
|
|
51
|
-
var elementsWithContext = /* @__PURE__ */ _jsx(ThemeManagerContext.Provider, {
|
|
52
|
-
value: themeManager,
|
|
53
|
-
children: next
|
|
54
|
-
});
|
|
55
|
-
return forceClassName === !1 ? elementsWithContext : isWeb ? wrapThemeElements({
|
|
56
|
-
children: elementsWithContext,
|
|
57
|
-
themeState,
|
|
58
|
-
forceClassName,
|
|
59
|
-
isRoot
|
|
60
|
-
}) : elementsWithContext;
|
|
61
|
-
}
|
|
62
|
-
function wrapThemeElements(param) {
|
|
63
|
-
var { children, themeState, forceClassName, isRoot } = param;
|
|
64
|
-
if (isRoot && forceClassName === !1)
|
|
34
|
+
var isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1, stateRef = arguments.length > 4 ? arguments[4] : void 0, { shallow, forceClassName } = props, state = stateRef.current, hasEverThemed = state.hasEverThemed, shouldRenderChildrenWithTheme = hasEverThemed || themeState.isNew || isRoot || hasThemeUpdatingProps(props);
|
|
35
|
+
if (!shouldRenderChildrenWithTheme)
|
|
65
36
|
return children;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
style,
|
|
37
|
+
children = /* @__PURE__ */ _jsx(ThemeStateContext.Provider, {
|
|
38
|
+
value: themeState.id,
|
|
69
39
|
children
|
|
70
40
|
});
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
41
|
+
var { isInverse, name } = themeState, requiresExtraWrapper = isInverse || forceClassName;
|
|
42
|
+
if (state.hasEverThemed || (state.hasEverThemed = !0), (requiresExtraWrapper || // if the theme is exactly dark or light, its likely to change between dark/light
|
|
43
|
+
// and that would require wrapping which would re-parent, so to avoid re-parenting do this
|
|
44
|
+
themeState.name === "dark" || themeState.name === "light") && (state.hasEverThemed = "wrapped"), shallow && themeState.parentId) {
|
|
45
|
+
var parentState = getThemeState(themeState.isNew ? themeState.id : themeState.parentId);
|
|
46
|
+
if (!parentState) throw new Error("\u203C\uFE0F010");
|
|
47
|
+
children = Children.toArray(children).map(function(child) {
|
|
48
|
+
return /* @__PURE__ */ isValidElement(child) ? /* @__PURE__ */ cloneElement(child, void 0, /* @__PURE__ */ _jsx(Theme, {
|
|
49
|
+
name: parentState.name,
|
|
50
|
+
children: child.props.children
|
|
51
|
+
})) : child;
|
|
76
52
|
});
|
|
77
53
|
}
|
|
78
|
-
|
|
54
|
+
if (process.env.NODE_ENV === "development" && props.debug && (console.warn(" getThemedChildren", {
|
|
55
|
+
requiresExtraWrapper,
|
|
56
|
+
forceClassName,
|
|
57
|
+
themeState,
|
|
58
|
+
state,
|
|
59
|
+
...getThemeClassNameAndStyle(themeState, props, isRoot)
|
|
60
|
+
}), children = /* @__PURE__ */ _jsx(ThemeDebug, {
|
|
61
|
+
themeState,
|
|
62
|
+
themeProps: props,
|
|
63
|
+
children
|
|
64
|
+
})), forceClassName === !1)
|
|
65
|
+
return children;
|
|
66
|
+
if (isWeb) {
|
|
67
|
+
var { className, style } = getThemeClassNameAndStyle(themeState, props, isRoot);
|
|
68
|
+
if (children = /* @__PURE__ */ _jsx("span", {
|
|
69
|
+
className: `${className} _dsp_contents is_Theme`,
|
|
70
|
+
style,
|
|
71
|
+
children
|
|
72
|
+
}), state.hasEverThemed === "wrapped") {
|
|
73
|
+
var className1 = requiresExtraWrapper ? `${isInverse ? name.startsWith("light") ? "t_light is_inversed" : name.startsWith("dark") ? "t_dark is_inversed" : "" : ""} _dsp_contents` : "_dsp_contents";
|
|
74
|
+
children = /* @__PURE__ */ _jsx("span", {
|
|
75
|
+
className: className1,
|
|
76
|
+
children
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return children;
|
|
80
|
+
}
|
|
81
|
+
return children;
|
|
79
82
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
className: "",
|
|
86
|
-
style: emptyObj
|
|
87
|
-
};
|
|
88
|
-
var themeColor = !((_themeState_state = themeState.state) === null || _themeState_state === void 0) && _themeState_state.theme && themeState.isNewTheme ? variableToString(themeState.state.theme.color) : "", style = themeColor ? {
|
|
83
|
+
function getThemeClassNameAndStyle(themeState, props) {
|
|
84
|
+
var isRoot = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !1;
|
|
85
|
+
if (!themeState.isNew && !props.forceClassName)
|
|
86
|
+
return empty;
|
|
87
|
+
var themeColor = themeState?.theme && themeState.isNew ? variableToString(themeState.theme.color) : "", style = themeColor ? {
|
|
89
88
|
color: themeColor
|
|
90
|
-
} : void 0,
|
|
91
|
-
return
|
|
89
|
+
} : void 0, maxInverses = getSetting("maxDarkLightNesting") || 3, themeClassName = themeState.inverses >= maxInverses ? themeState.name : themeState.name.replace(schemePrefix, ""), className = `${isRoot ? "" : "t_sub_theme"} t_${themeClassName}`;
|
|
90
|
+
return {
|
|
92
91
|
style,
|
|
93
92
|
className
|
|
94
93
|
};
|
|
95
94
|
}
|
|
95
|
+
var schemePrefix = /^(dark|light)_/;
|
|
96
96
|
export {
|
|
97
97
|
Theme,
|
|
98
98
|
getThemedChildren
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Users/n8/tamagui/code/core/web/src/views/Theme.tsx"],
|
|
4
|
-
"mappings": ";AAAA,SAASA,aAAa;AAEtB,OAAOC,
|
|
5
|
-
"names": ["isWeb", "React", "Children", "cloneElement", "forwardRef", "isValidElement", "useRef", "variableToString", "
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["isWeb", "React", "Children", "cloneElement", "forwardRef", "isValidElement", "useRef", "getSetting", "variableToString", "useThemeWithState", "getThemeState", "hasThemeUpdatingProps", "ThemeStateContext", "ThemeDebug", "empty", "className", "style", "Theme", "props", "ref", "disable", "children", "isRoot", "_", "themeState", "disableDirectChildTheme", "finalChildren", "map", "child", "only", "stateRef", "hasEverThemed", "getThemedChildren", "shallow", "forceClassName", "state", "current", "shouldRenderChildrenWithTheme", "isNew", "Provider", "value", "id", "isInverse", "name", "requiresExtraWrapper", "parentId", "parentState", "Error", "toArray", "undefined", "process", "env", "NODE_ENV", "debug", "console", "warn", "getThemeClassNameAndStyle", "themeProps", "span", "startsWith", "themeColor", "theme", "color", "maxInverses", "themeClassName", "inverses", "replace", "schemePrefix"]
|
|
6
6
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import { useDidFinishSSR } from "@tamagui/use-did-finish-ssr";
|
|
3
|
-
import {
|
|
2
|
+
import { useEffect } from "react";
|
|
4
3
|
import { createPortal } from "react-dom";
|
|
5
4
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
5
|
let node;
|
|
@@ -10,17 +9,9 @@ function ThemeDebug({
|
|
|
10
9
|
children
|
|
11
10
|
}) {
|
|
12
11
|
if (process.env.NODE_ENV === "development") {
|
|
13
|
-
const isHydrated = useDidFinishSSR()
|
|
14
|
-
return process.env.NODE_ENV === "development" && typeof document < "u" && (node || (node = document.createElement("div"), node.style.height = "200px", node.style.overflowY = "scroll", node.style.position = "fixed", node.style.zIndex = 1e7, node.style.bottom = "30px", node.style.left = "30px", node.style.right = "30px", node.style.display = "flex", node.style.border = "1px solid #888", node.style.flexDirection = "row", node.style.background = "var(--background)"
|
|
15
|
-
|
|
16
|
-
setOnChangeCount((p) => ++p), console.warn(
|
|
17
|
-
`theme changed for ${themeState.themeManager?.id} from parent ${themeState.themeManager?.parentManager?.id} to new name`,
|
|
18
|
-
name
|
|
19
|
-
);
|
|
20
|
-
});
|
|
21
|
-
}, [themeState.themeManager]), React.useEffect(() => {
|
|
22
|
-
const tm = setInterval(rerender, 1e3);
|
|
23
|
-
return () => clearTimeout(tm);
|
|
12
|
+
const isHydrated = useDidFinishSSR();
|
|
13
|
+
return process.env.NODE_ENV === "development" && typeof document < "u" && (node || (node = document.createElement("div"), node.style.height = "200px", node.style.overflowY = "scroll", node.style.position = "fixed", node.style.zIndex = 1e7, node.style.bottom = "30px", node.style.left = "30px", node.style.right = "30px", node.style.display = "flex", node.style.border = "1px solid #888", node.style.flexDirection = "row", node.style.background = "var(--background)")), useEffect(() => {
|
|
14
|
+
document.body.appendChild(node);
|
|
24
15
|
}, []), themeProps["disable-child-theme"] || !isHydrated ? children : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
25
16
|
createPortal(
|
|
26
17
|
/* @__PURE__ */ jsxs(
|
|
@@ -34,24 +25,20 @@ function ThemeDebug({
|
|
|
34
25
|
},
|
|
35
26
|
children: [
|
|
36
27
|
"<Theme ",
|
|
37
|
-
id,
|
|
28
|
+
themeState.id,
|
|
38
29
|
" />\xA0",
|
|
39
30
|
JSON.stringify(
|
|
40
31
|
{
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
listening: [...themeState.themeManager?._listeningIds || []].join(
|
|
52
|
-
","
|
|
53
|
-
),
|
|
54
|
-
_numChangeEventsSent: themeState.themeManager?._numChangeEventsSent
|
|
32
|
+
name: themeState.name,
|
|
33
|
+
parentId: themeState.parentId,
|
|
34
|
+
inverses: themeState.inverses,
|
|
35
|
+
isNew: themeState.isNew,
|
|
36
|
+
themeProps: {
|
|
37
|
+
name: themeProps.name,
|
|
38
|
+
componentName: themeProps.componentName,
|
|
39
|
+
reset: themeProps.reset,
|
|
40
|
+
inverse: themeProps.inverse
|
|
41
|
+
}
|
|
55
42
|
},
|
|
56
43
|
null,
|
|
57
44
|
2
|
|
@@ -61,7 +48,7 @@ function ThemeDebug({
|
|
|
61
48
|
),
|
|
62
49
|
node
|
|
63
50
|
),
|
|
64
|
-
/* @__PURE__ */ jsx("div", { style: { color: "red" }, children: id }),
|
|
51
|
+
/* @__PURE__ */ jsx("div", { style: { color: "red" }, children: themeState.id }),
|
|
65
52
|
children
|
|
66
53
|
] });
|
|
67
54
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/ThemeDebug.tsx"],
|
|
4
|
-
"mappings": "AAAA,
|
|
4
|
+
"mappings": "AAAA,SAAS,uBAAuB;AAChC,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAwCvB,mBA+BE,KA7BE,YAFJ;AApCN,IAAI;AAEG,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AACF,GAAsE;AACpE,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,UAAM,aAAa,gBAAgB;AAuBnC,WArBI,QAAQ,IAAI,aAAa,iBAAiB,OAAO,WAAa,QAC3D,SACH,OAAO,SAAS,cAAc,KAAK,GACnC,KAAK,MAAM,SAAS,SACpB,KAAK,MAAM,YAAY,UACvB,KAAK,MAAM,WAAW,SACtB,KAAK,MAAM,SAAS,KACpB,KAAK,MAAM,SAAS,QACpB,KAAK,MAAM,OAAO,QAClB,KAAK,MAAM,QAAQ,QACnB,KAAK,MAAM,UAAU,QACrB,KAAK,MAAM,SAAS,kBACpB,KAAK,MAAM,gBAAgB,OAC3B,KAAK,MAAM,aAAa,uBAI5B,UAAU,MAAM;AACd,eAAS,KAAK,YAAY,IAAI;AAAA,IAChC,GAAG,CAAC,CAAC,GAED,WAAW,qBAAqB,KAAK,CAAC,aACjC,WAIP,iCACG;AAAA;AAAA,QACC;AAAA,UAAC;AAAA;AAAA,YACC,OAAO;AAAA,cACL,YAAY;AAAA,cACZ,UAAU;AAAA,cACV,UAAU;AAAA,cACV,SAAS;AAAA,YACX;AAAA,YACD;AAAA;AAAA,cACY,WAAW;AAAA,cAAG;AAAA,cACxB,KAAK;AAAA,gBACJ;AAAA,kBACE,MAAM,WAAW;AAAA,kBACjB,UAAU,WAAW;AAAA,kBACrB,UAAU,WAAW;AAAA,kBACrB,OAAO,WAAW;AAAA,kBAClB,YAAY;AAAA,oBACV,MAAM,WAAW;AAAA,oBACjB,eAAe,WAAW;AAAA,oBAC1B,OAAO,WAAW;AAAA,oBAClB,SAAS,WAAW;AAAA,kBACtB;AAAA,gBACF;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA;AAAA;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,MAEA,oBAAC,SAAI,OAAO,EAAE,OAAO,MAAM,GAAI,qBAAW,IAAG;AAAA,MAE5C;AAAA,OACH;AAAA,EAEJ;AACA,SAAO;AACT;AAEA,WAAW,cAAiB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import { useDidFinishSSR } from "@tamagui/use-did-finish-ssr";
|
|
3
|
-
import {
|
|
2
|
+
import { useEffect } from "react";
|
|
4
3
|
import { createPortal } from "react-dom";
|
|
5
4
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
5
|
let node;
|
|
@@ -10,17 +9,9 @@ function ThemeDebug({
|
|
|
10
9
|
children
|
|
11
10
|
}) {
|
|
12
11
|
if (process.env.NODE_ENV === "development") {
|
|
13
|
-
const isHydrated = useDidFinishSSR()
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
id = React.useId();
|
|
17
|
-
return process.env.NODE_ENV === "development" && typeof document < "u" && (node || (node = document.createElement("div"), node.style.height = "200px", node.style.overflowY = "scroll", node.style.position = "fixed", node.style.zIndex = 1e7, node.style.bottom = "30px", node.style.left = "30px", node.style.right = "30px", node.style.display = "flex", node.style.border = "1px solid #888", node.style.flexDirection = "row", node.style.background = "var(--background)", document.body.appendChild(node))), React.useEffect(() => {
|
|
18
|
-
themeState.themeManager?.parentManager?.onChangeTheme((name, manager) => {
|
|
19
|
-
setOnChangeCount(p => ++p), console.warn(`theme changed for ${themeState.themeManager?.id} from parent ${themeState.themeManager?.parentManager?.id} to new name`, name);
|
|
20
|
-
});
|
|
21
|
-
}, [themeState.themeManager]), React.useEffect(() => {
|
|
22
|
-
const tm = setInterval(rerender, 1e3);
|
|
23
|
-
return () => clearTimeout(tm);
|
|
12
|
+
const isHydrated = useDidFinishSSR();
|
|
13
|
+
return process.env.NODE_ENV === "development" && typeof document < "u" && (node || (node = document.createElement("div"), node.style.height = "200px", node.style.overflowY = "scroll", node.style.position = "fixed", node.style.zIndex = 1e7, node.style.bottom = "30px", node.style.left = "30px", node.style.right = "30px", node.style.display = "flex", node.style.border = "1px solid #888", node.style.flexDirection = "row", node.style.background = "var(--background)")), useEffect(() => {
|
|
14
|
+
document.body.appendChild(node);
|
|
24
15
|
}, []), themeProps["disable-child-theme"] || !isHydrated ? children : /* @__PURE__ */jsxs(Fragment, {
|
|
25
16
|
children: [createPortal(/* @__PURE__ */jsxs("code", {
|
|
26
17
|
style: {
|
|
@@ -29,25 +20,23 @@ function ThemeDebug({
|
|
|
29
20
|
overflow: "auto",
|
|
30
21
|
padding: 5
|
|
31
22
|
},
|
|
32
|
-
children: ["<Theme ", id, " />\xA0", JSON.stringify({
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
listening: [...(themeState.themeManager?._listeningIds || [])].join(","),
|
|
44
|
-
_numChangeEventsSent: themeState.themeManager?._numChangeEventsSent
|
|
23
|
+
children: ["<Theme ", themeState.id, " />\xA0", JSON.stringify({
|
|
24
|
+
name: themeState.name,
|
|
25
|
+
parentId: themeState.parentId,
|
|
26
|
+
inverses: themeState.inverses,
|
|
27
|
+
isNew: themeState.isNew,
|
|
28
|
+
themeProps: {
|
|
29
|
+
name: themeProps.name,
|
|
30
|
+
componentName: themeProps.componentName,
|
|
31
|
+
reset: themeProps.reset,
|
|
32
|
+
inverse: themeProps.inverse
|
|
33
|
+
}
|
|
45
34
|
}, null, 2)]
|
|
46
35
|
}), node), /* @__PURE__ */jsx("div", {
|
|
47
36
|
style: {
|
|
48
37
|
color: "red"
|
|
49
38
|
},
|
|
50
|
-
children: id
|
|
39
|
+
children: themeState.id
|
|
51
40
|
}), children]
|
|
52
41
|
});
|
|
53
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["useDidFinishSSR","useEffect","createPortal","Fragment","jsx","jsxs","node","ThemeDebug","themeState","themeProps","children","process","env","NODE_ENV","isHydrated","document","createElement","style","height","overflowY","position","zIndex","bottom","left","right","display","border","flexDirection","background","body","appendChild","whiteSpace","maxWidth","overflow","padding","id","JSON","stringify","name","parentId","inverses","isNew","componentName","reset","inverse","color","displayName"],"sources":["../../../src/views/ThemeDebug.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,SAAA,QAAiB;AAC1B,SAASC,YAAA,QAAoB;AAwCvB,SAAAC,QAAA,EA+BEC,GAAA,EA7BEC,IAAA,QAFJ;AApCN,IAAIC,IAAA;AAEG,SAASC,WAAW;EACzBC,UAAA;EACAC,UAAA;EACAC;AACF,GAAsE;EACpE,IAAIC,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eAAe;IAC1C,MAAMC,UAAA,GAAad,eAAA,CAAgB;IAuBnC,OArBIW,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,iBAAiB,OAAOE,QAAA,GAAa,QAC3DT,IAAA,KACHA,IAAA,GAAOS,QAAA,CAASC,aAAA,CAAc,KAAK,GACnCV,IAAA,CAAKW,KAAA,CAAMC,MAAA,GAAS,SACpBZ,IAAA,CAAKW,KAAA,CAAME,SAAA,GAAY,UACvBb,IAAA,CAAKW,KAAA,CAAMG,QAAA,GAAW,SACtBd,IAAA,CAAKW,KAAA,CAAMI,MAAA,GAAS,KACpBf,IAAA,CAAKW,KAAA,CAAMK,MAAA,GAAS,QACpBhB,IAAA,CAAKW,KAAA,CAAMM,IAAA,GAAO,QAClBjB,IAAA,CAAKW,KAAA,CAAMO,KAAA,GAAQ,QACnBlB,IAAA,CAAKW,KAAA,CAAMQ,OAAA,GAAU,QACrBnB,IAAA,CAAKW,KAAA,CAAMS,MAAA,GAAS,kBACpBpB,IAAA,CAAKW,KAAA,CAAMU,aAAA,GAAgB,OAC3BrB,IAAA,CAAKW,KAAA,CAAMW,UAAA,GAAa,uBAI5B3B,SAAA,CAAU,MAAM;MACdc,QAAA,CAASc,IAAA,CAAKC,WAAA,CAAYxB,IAAI;IAChC,GAAG,EAAE,GAEDG,UAAA,CAAW,qBAAqB,KAAK,CAACK,UAAA,GACjCJ,QAAA,GAIP,eAAAL,IAAA,CAAAF,QAAA;MACGO,QAAA,GAAAR,YAAA,CACC,eAAAG,IAAA,CAAC;QACCY,KAAA,EAAO;UACLc,UAAA,EAAY;UACZC,QAAA,EAAU;UACVC,QAAA,EAAU;UACVC,OAAA,EAAS;QACX;QACDxB,QAAA,cACYF,UAAA,CAAW2B,EAAA,EAAG,WACxBC,IAAA,CAAKC,SAAA,CACJ;UACEC,IAAA,EAAM9B,UAAA,CAAW8B,IAAA;UACjBC,QAAA,EAAU/B,UAAA,CAAW+B,QAAA;UACrBC,QAAA,EAAUhC,UAAA,CAAWgC,QAAA;UACrBC,KAAA,EAAOjC,UAAA,CAAWiC,KAAA;UAClBhC,UAAA,EAAY;YACV6B,IAAA,EAAM7B,UAAA,CAAW6B,IAAA;YACjBI,aAAA,EAAejC,UAAA,CAAWiC,aAAA;YAC1BC,KAAA,EAAOlC,UAAA,CAAWkC,KAAA;YAClBC,OAAA,EAASnC,UAAA,CAAWmC;UACtB;QACF,GACA,MACA,CACF;MAAA,CACF,GACAtC,IACF,GAEA,eAAAF,GAAA,CAAC;QAAIa,KAAA,EAAO;UAAE4B,KAAA,EAAO;QAAM;QAAInC,QAAA,EAAAF,UAAA,CAAW2B;MAAA,CAAG,GAE5CzB,QAAA;IAAA,CACH;EAEJ;EACA,OAAOA,QAAA;AACT;AAEAH,UAAA,CAAWuC,WAAA,GAAiB","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { useId } from "react";
|
|
2
2
|
import { isClient } from "@tamagui/constants";
|
|
3
3
|
import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
|
|
4
4
|
import { Theme } from "./Theme";
|
|
@@ -18,7 +18,7 @@ const ThemeProvider = (props) => {
|
|
|
18
18
|
className: props.className,
|
|
19
19
|
name: props.defaultTheme,
|
|
20
20
|
forceClassName: !disableRootThemeClass && !themeClassNameOnRoot,
|
|
21
|
-
_isRoot:
|
|
21
|
+
_isRoot: useId,
|
|
22
22
|
children: props.children
|
|
23
23
|
}
|
|
24
24
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/ThemeProvider.tsx"],
|
|
4
|
-
"mappings": "AAAA,OAAO,
|
|
4
|
+
"mappings": "AAAA,OAAO,SAAS,aAAa;AAC7B,SAAS,gBAAgB;AAEzB,SAAS,8BAA8B;AACvC,SAAS,aAAa;AACtB,SAAS,kBAAkB;AAiCvB;AApBG,MAAM,gBAAgB,CAAC,UAA8B;AAC1D,QAAM,wBACJ,MAAM,yBAAyB,WAAW,uBAAuB,GAC7D,uBACJ,MAAM,wBAAwB,WAAW,sBAAsB;AAGjE,SAAI,YACF,MAAM,gBAAgB,MAAM;AAC1B,QAAI,sBAAuB;AAC3B,UAAM,KAAK,GAAG,sBAAsB,GAAG,MAAM,YAAY,IACnD,SAAS,uBAAuB,SAAS,kBAAkB,SAAS;AAC1E,kBAAO,UAAU,IAAI,EAAE,GAChB,MAAM;AACX,aAAO,UAAU,OAAO,EAAE;AAAA,IAC5B;AAAA,EACF,GAAG,CAAC,MAAM,cAAc,uBAAuB,oBAAoB,CAAC,GAIpE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,MAAM;AAAA,MACjB,MAAM,MAAM;AAAA,MAEZ,gBAAgB,CAAC,yBAAyB,CAAC;AAAA,MAE3C,SAAS;AAAA,MAER,gBAAM;AAAA;AAAA,EACT;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { useId } from "react";
|
|
2
2
|
import { isClient } from "@tamagui/constants";
|
|
3
3
|
import { THEME_CLASSNAME_PREFIX } from "../constants/constants.mjs";
|
|
4
4
|
import { Theme } from "./Theme.mjs";
|
|
@@ -18,7 +18,7 @@ const ThemeProvider = props => {
|
|
|
18
18
|
className: props.className,
|
|
19
19
|
name: props.defaultTheme,
|
|
20
20
|
forceClassName: !disableRootThemeClass && !themeClassNameOnRoot,
|
|
21
|
-
_isRoot:
|
|
21
|
+
_isRoot: useId,
|
|
22
22
|
children: props.children
|
|
23
23
|
});
|
|
24
24
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","isClient","THEME_CLASSNAME_PREFIX","Theme","getSetting","jsx","ThemeProvider","props","disableRootThemeClass","themeClassNameOnRoot","useLayoutEffect","cn","defaultTheme","target","document","documentElement","body","classList","add","remove","className","name","forceClassName","_isRoot","children"],"sources":["../../../src/views/ThemeProvider.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,
|
|
1
|
+
{"version":3,"names":["React","useId","isClient","THEME_CLASSNAME_PREFIX","Theme","getSetting","jsx","ThemeProvider","props","disableRootThemeClass","themeClassNameOnRoot","useLayoutEffect","cn","defaultTheme","target","document","documentElement","body","classList","add","remove","className","name","forceClassName","_isRoot","children"],"sources":["../../../src/views/ThemeProvider.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,IAASC,KAAA,QAAa;AAC7B,SAASC,QAAA,QAAgB;AAEzB,SAASC,sBAAA,QAA8B;AACvC,SAASC,KAAA,QAAa;AACtB,SAASC,UAAA,QAAkB;AAiCvB,SAAAC,GAAA;AApBG,MAAMC,aAAA,GAAiBC,KAAA,IAA8B;EAC1D,MAAMC,qBAAA,GACJD,KAAA,CAAMC,qBAAA,IAAyBJ,UAAA,CAAW,uBAAuB;IAC7DK,oBAAA,GACJF,KAAA,CAAME,oBAAA,IAAwBL,UAAA,CAAW,sBAAsB;EAGjE,OAAIH,QAAA,IACFF,KAAA,CAAMW,eAAA,CAAgB,MAAM;IAC1B,IAAIF,qBAAA,EAAuB;IAC3B,MAAMG,EAAA,GAAK,GAAGT,sBAAsB,GAAGK,KAAA,CAAMK,YAAY;MACnDC,MAAA,GAASJ,oBAAA,GAAuBK,QAAA,CAASC,eAAA,GAAkBD,QAAA,CAASE,IAAA;IAC1E,OAAAH,MAAA,CAAOI,SAAA,CAAUC,GAAA,CAAIP,EAAE,GAChB,MAAM;MACXE,MAAA,CAAOI,SAAA,CAAUE,MAAA,CAAOR,EAAE;IAC5B;EACF,GAAG,CAACJ,KAAA,CAAMK,YAAA,EAAcJ,qBAAA,EAAuBC,oBAAoB,CAAC,GAIpE,eAAAJ,GAAA,CAACF,KAAA;IACCiB,SAAA,EAAWb,KAAA,CAAMa,SAAA;IACjBC,IAAA,EAAMd,KAAA,CAAMK,YAAA;IAEZU,cAAA,EAAgB,CAACd,qBAAA,IAAyB,CAACC,oBAAA;IAE3Cc,OAAA,EAASvB,KAAA;IAERwB,QAAA,EAAAjB,KAAA,CAAMiB;EAAA,CACT;AAEJ","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import React from "react";
|
|
2
|
+
import React, { useId } from "react";
|
|
3
3
|
import { isClient } from "@tamagui/constants";
|
|
4
4
|
import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
|
|
5
5
|
import { Theme } from "./Theme";
|
|
@@ -23,7 +23,7 @@ var ThemeProvider = function(props) {
|
|
|
23
23
|
// if root class disabled, force class here
|
|
24
24
|
forceClassName: !disableRootThemeClass && !themeClassNameOnRoot,
|
|
25
25
|
// @ts-expect-error
|
|
26
|
-
_isRoot:
|
|
26
|
+
_isRoot: useId,
|
|
27
27
|
children: props.children
|
|
28
28
|
});
|
|
29
29
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Users/n8/tamagui/code/core/web/src/views/ThemeProvider.tsx"],
|
|
4
|
-
"mappings": ";AAAA,OAAOA,
|
|
5
|
-
"names": ["React", "isClient", "THEME_CLASSNAME_PREFIX", "Theme", "getSetting", "ThemeProvider", "props", "disableRootThemeClass", "themeClassNameOnRoot", "useLayoutEffect", "cn", "defaultTheme", "target", "document", "documentElement", "body", "classList", "add", "remove", "className", "name", "forceClassName", "_isRoot", "children"]
|
|
4
|
+
"mappings": ";AAAA,OAAOA,SAASC,aAAa;AAC7B,SAASC,gBAAgB;AAEzB,SAASC,8BAA8B;AACvC,SAASC,aAAa;AACtB,SAASC,kBAAkB;AAapB,IAAMC,gBAAgB,SAACC,OAAAA;MAE1BA,8BADIC,yBACJD,+BAAAA,MAAMC,2BAAqB,QAA3BD,iCAAAA,SAAAA,+BAA+BF,WAAW,uBAAA,GAE1CE,6BADIE,wBACJF,8BAAAA,MAAME,0BAAoB,QAA1BF,gCAAAA,SAAAA,8BAA8BF,WAAW,sBAAA;AAG3C,SAAIH,YACFF,MAAMU,gBAAgB,WAAA;AACpB,QAAIF,wBACJ;UAAMG,KAAK,GAAGR,sBAAAA,GAAyBI,MAAMK,YAAY,IACnDC,SAASJ,uBAAuBK,SAASC,kBAAkBD,SAASE;AAC1EH,oBAAOI,UAAUC,IAAIP,EAAAA,GACd,WAAA;AACLE,eAAOI,UAAUE,OAAOR,EAAAA;MAC1B;;EACF,GAAG;IAACJ,MAAMK;IAAcJ;IAAuBC;GAAqB,GAIpE,qBAACL,OAAAA;IACCgB,WAAWb,MAAMa;IACjBC,MAAMd,MAAMK;;IAEZU,gBAAgB,CAACd,yBAAyB,CAACC;;IAE3Cc,SAAStB;cAERM,MAAMiB;;AAGb;",
|
|
5
|
+
"names": ["React", "useId", "isClient", "THEME_CLASSNAME_PREFIX", "Theme", "getSetting", "ThemeProvider", "props", "disableRootThemeClass", "themeClassNameOnRoot", "useLayoutEffect", "cn", "defaultTheme", "target", "document", "documentElement", "body", "classList", "add", "remove", "className", "name", "forceClassName", "_isRoot", "children"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.124.0",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -27,22 +27,22 @@
|
|
|
27
27
|
"reset.css"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@tamagui/compose-refs": "1.
|
|
31
|
-
"@tamagui/constants": "1.
|
|
32
|
-
"@tamagui/helpers": "1.
|
|
33
|
-
"@tamagui/normalize-css-color": "1.
|
|
34
|
-
"@tamagui/timer": "1.
|
|
35
|
-
"@tamagui/types": "1.
|
|
36
|
-
"@tamagui/use-did-finish-ssr": "1.
|
|
37
|
-
"@tamagui/use-event": "1.
|
|
38
|
-
"@tamagui/use-force-update": "1.
|
|
30
|
+
"@tamagui/compose-refs": "1.124.0",
|
|
31
|
+
"@tamagui/constants": "1.124.0",
|
|
32
|
+
"@tamagui/helpers": "1.124.0",
|
|
33
|
+
"@tamagui/normalize-css-color": "1.124.0",
|
|
34
|
+
"@tamagui/timer": "1.124.0",
|
|
35
|
+
"@tamagui/types": "1.124.0",
|
|
36
|
+
"@tamagui/use-did-finish-ssr": "1.124.0",
|
|
37
|
+
"@tamagui/use-event": "1.124.0",
|
|
38
|
+
"@tamagui/use-force-update": "1.124.0"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"react": "*",
|
|
42
42
|
"react-dom": "*"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
|
-
"@tamagui/build": "1.
|
|
45
|
+
"@tamagui/build": "1.124.0",
|
|
46
46
|
"@testing-library/react": "^16.1.0",
|
|
47
47
|
"csstype": "^3.0.10",
|
|
48
48
|
"react": "*",
|
package/src/Tamagui.ts
CHANGED
|
@@ -3,7 +3,6 @@ import * as Helpers from '@tamagui/helpers'
|
|
|
3
3
|
import { getConfig } from './config'
|
|
4
4
|
import { getAllRules, getAllSelectors, getAllTransforms } from './helpers/insertStyleRule'
|
|
5
5
|
import { mediaState } from './hooks/useMedia'
|
|
6
|
-
import { activeThemeManagers, getThemeManager } from './hooks/useTheme'
|
|
7
6
|
|
|
8
7
|
// easy introspection
|
|
9
8
|
// only included in dev mode
|
|
@@ -12,11 +11,6 @@ export const Tamagui = (() => {
|
|
|
12
11
|
if (process.env.NODE_ENV === 'development') {
|
|
13
12
|
class TamaguiManager {
|
|
14
13
|
Helpers = Helpers
|
|
15
|
-
getThemeManager = getThemeManager
|
|
16
|
-
|
|
17
|
-
get activeThemeManagers() {
|
|
18
|
-
return activeThemeManagers
|
|
19
|
-
}
|
|
20
14
|
|
|
21
15
|
get mediaState() {
|
|
22
16
|
return { ...mediaState }
|