@tamagui/web 1.124.9 → 1.124.11
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/helpers/createShallowSetState.cjs +10 -5
- package/dist/cjs/helpers/createShallowSetState.js +11 -5
- package/dist/cjs/helpers/createShallowSetState.js.map +1 -1
- package/dist/cjs/helpers/createShallowSetState.native.js +11 -5
- package/dist/cjs/helpers/createShallowSetState.native.js.map +2 -2
- package/dist/cjs/hooks/useComponentState.cjs +1 -1
- package/dist/cjs/hooks/useComponentState.js +1 -1
- package/dist/cjs/hooks/useComponentState.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.native.js +3 -1
- package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
- package/dist/cjs/hooks/useProps.cjs +1 -1
- package/dist/cjs/hooks/useProps.js +1 -1
- package/dist/cjs/hooks/useProps.js.map +1 -1
- package/dist/cjs/hooks/useProps.native.js +1 -1
- package/dist/cjs/hooks/useProps.native.js.map +2 -2
- package/dist/cjs/hooks/useThemeState.cjs +47 -26
- package/dist/cjs/hooks/useThemeState.js +31 -22
- package/dist/cjs/hooks/useThemeState.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.native.js +69 -25
- package/dist/cjs/hooks/useThemeState.native.js.map +2 -2
- package/dist/cjs/views/Theme.cjs +11 -7
- package/dist/cjs/views/Theme.js +15 -4
- package/dist/cjs/views/Theme.js.map +1 -1
- package/dist/cjs/views/Theme.native.js +10 -7
- package/dist/cjs/views/Theme.native.js.map +2 -2
- package/dist/esm/helpers/createShallowSetState.js +11 -5
- package/dist/esm/helpers/createShallowSetState.js.map +1 -1
- package/dist/esm/helpers/createShallowSetState.mjs +10 -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/useComponentState.js +1 -1
- package/dist/esm/hooks/useComponentState.js.map +1 -1
- package/dist/esm/hooks/useComponentState.mjs +1 -1
- package/dist/esm/hooks/useComponentState.mjs.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +3 -1
- package/dist/esm/hooks/useComponentState.native.js.map +1 -1
- package/dist/esm/hooks/useProps.js +1 -1
- package/dist/esm/hooks/useProps.js.map +1 -1
- package/dist/esm/hooks/useProps.mjs +1 -1
- package/dist/esm/hooks/useProps.mjs.map +1 -1
- package/dist/esm/hooks/useProps.native.js +1 -1
- package/dist/esm/hooks/useProps.native.js.map +2 -2
- package/dist/esm/hooks/useThemeState.js +31 -22
- package/dist/esm/hooks/useThemeState.js.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +47 -26
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +69 -25
- package/dist/esm/hooks/useThemeState.native.js.map +2 -2
- package/dist/esm/views/Theme.js +16 -11
- package/dist/esm/views/Theme.js.map +1 -1
- package/dist/esm/views/Theme.mjs +11 -7
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +10 -7
- package/dist/esm/views/Theme.native.js.map +2 -2
- package/package.json +11 -11
- package/src/helpers/createShallowSetState.tsx +14 -5
- package/src/hooks/useComponentState.ts +1 -1
- package/src/hooks/useProps.tsx +1 -1
- package/src/hooks/useThemeState.ts +87 -44
- package/src/views/Theme.tsx +17 -15
- package/types/helpers/createShallowSetState.d.ts +2 -2
- package/types/helpers/createShallowSetState.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts.map +1 -1
- package/types/views/Theme.d.ts.map +1 -1
|
@@ -1,16 +1,35 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
2
2
|
import { createContext, useCallback, useContext, useId, useSyncExternalStore } from "react";
|
|
3
3
|
import { getConfig } from "../config";
|
|
4
|
-
var ThemeStateContext = createContext(""), keysToId = /* @__PURE__ */ new WeakMap(), allListeners = /* @__PURE__ */ new Map(), listenersByParent = {}, hasRenderedOnce = /* @__PURE__ */ new WeakMap(), pendingUpdate = /* @__PURE__ */ new Map(), states = /* @__PURE__ */ new Map(),
|
|
4
|
+
var ThemeStateContext = createContext(""), keysToId = /* @__PURE__ */ new WeakMap(), allListeners = /* @__PURE__ */ new Map(), listenersByParent = {}, hasRenderedOnce = /* @__PURE__ */ new WeakMap(), pendingUpdate = /* @__PURE__ */ new Map(), states = /* @__PURE__ */ new Map(), localStates = /* @__PURE__ */ new Map();
|
|
5
|
+
process.env.NODE_ENV === "development" && (globalThis.getTamaguiThemes = function() {
|
|
6
|
+
function buildTree(id) {
|
|
7
|
+
var node = states.get(id);
|
|
8
|
+
if (!node) return null;
|
|
9
|
+
var children = Array.from(states.values()).filter(function(child) {
|
|
10
|
+
return child?.parentId === id;
|
|
11
|
+
}).map(function(child) {
|
|
12
|
+
return buildTree(child.id);
|
|
13
|
+
}).filter(Boolean);
|
|
14
|
+
return {
|
|
15
|
+
...node,
|
|
16
|
+
children
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
rootThemeState && console.info(buildTree(rootThemeState.id));
|
|
20
|
+
});
|
|
21
|
+
var shouldForce = !1, forceUpdateThemes = function() {
|
|
5
22
|
cacheVersion++, shouldForce = !0, allListeners.forEach(function(cb) {
|
|
6
23
|
return cb();
|
|
7
24
|
});
|
|
8
25
|
}, getThemeState = function(id) {
|
|
9
26
|
return states.get(id);
|
|
10
|
-
},
|
|
27
|
+
}, cacheVersion = 0, themes = null, rootThemeState = null, getRootThemeState = function() {
|
|
11
28
|
return rootThemeState;
|
|
12
29
|
}, useThemeState = function(props) {
|
|
13
30
|
var isRoot = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1, keys = arguments.length > 2 ? arguments[2] : void 0, { disable } = props, parentId = useContext(ThemeStateContext);
|
|
31
|
+
if (!parentId && !isRoot)
|
|
32
|
+
throw new Error("No parent?");
|
|
14
33
|
if (disable)
|
|
15
34
|
return states.get(parentId) || {
|
|
16
35
|
id: "",
|
|
@@ -23,17 +42,24 @@ var ThemeStateContext = createContext(""), keysToId = /* @__PURE__ */ new WeakMa
|
|
|
23
42
|
return (_listenersByParent = listenersByParent)[_parentId = parentId] || (_listenersByParent[_parentId] = /* @__PURE__ */ new Set()), listenersByParent[parentId].add(id), allListeners.set(id, function() {
|
|
24
43
|
pendingUpdate.set(id, shouldForce ? "force" : !0), cb();
|
|
25
44
|
}), function() {
|
|
26
|
-
allListeners.delete(id), listenersByParent[parentId].delete(id);
|
|
45
|
+
allListeners.delete(id), listenersByParent[parentId].delete(id), localStates.delete(id), states.delete(id), pendingUpdate.delete(id);
|
|
27
46
|
};
|
|
28
47
|
}, [
|
|
29
48
|
id,
|
|
30
49
|
parentId
|
|
31
50
|
]), propsKey = getPropsKey(props), getSnapshot = function() {
|
|
32
|
-
var _keys_current, _props_needsUpdate,
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
51
|
+
var _keys_current, _props_needsUpdate, local = localStates.get(id), needsUpdate = isRoot || props.name === "light" || props.name === "dark" || props.name === null ? !0 : hasRenderedOnce.get(keys) ? !(keys == null || (_keys_current = keys.current) === null || _keys_current === void 0) && _keys_current.size ? !0 : (_props_needsUpdate = props.needsUpdate) === null || _props_needsUpdate === void 0 ? void 0 : _props_needsUpdate.call(props) : !0, [rerender, next] = getNextState(local, props, propsKey, isRoot, id, parentId, needsUpdate, pendingUpdate.get(id));
|
|
52
|
+
return pendingUpdate.delete(id), (!local || rerender) && (local = {
|
|
53
|
+
...next
|
|
54
|
+
}, localStates.set(id, local)), process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile" && (console.groupCollapsed(` ${id} \u{1FA84} ${rerender}`, local.name, ">", next.name), console.info({
|
|
55
|
+
props,
|
|
56
|
+
propsKey,
|
|
57
|
+
isRoot,
|
|
58
|
+
parentId,
|
|
59
|
+
local,
|
|
60
|
+
next,
|
|
61
|
+
needsUpdate
|
|
62
|
+
}), console.groupEnd()), Object.assign(local, next), local.id = id, states.set(id, next), local;
|
|
37
63
|
};
|
|
38
64
|
process.env.NODE_ENV === "development" && globalThis.time && globalThis.time`theme-prep-uses`;
|
|
39
65
|
var state = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
@@ -52,34 +78,41 @@ var ThemeStateContext = createContext(""), keysToId = /* @__PURE__ */ new WeakMa
|
|
|
52
78
|
}, [
|
|
53
79
|
keys,
|
|
54
80
|
propsKey
|
|
55
|
-
]), state
|
|
56
|
-
|
|
57
|
-
isNew: !0
|
|
58
|
-
} : state;
|
|
59
|
-
}, getSnapshotFrom = function(lastState, props, propsKey) {
|
|
81
|
+
]), state;
|
|
82
|
+
}, getNextState = function(lastState, props, propsKey) {
|
|
60
83
|
var isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1, id = arguments.length > 4 ? arguments[4] : void 0, parentId = arguments.length > 5 ? arguments[5] : void 0, needsUpdate = arguments.length > 6 ? arguments[6] : void 0, pendingUpdate2 = arguments.length > 7 ? arguments[7] : void 0, { debug } = props, parentState = states.get(parentId);
|
|
61
84
|
themes || (themes = getConfig().themes);
|
|
62
|
-
var name = !propsKey &&
|
|
85
|
+
var name = !propsKey && (!lastState || !lastState?.isNew) ? null : getNewThemeName(parentState?.name, props, pendingUpdate2 === "force" ? !0 : !!needsUpdate), isSameAsParent = parentState && (!name || name === parentState.name), shouldRerender = !!(needsUpdate && (pendingUpdate2 || lastState?.name !== parentState?.name));
|
|
63
86
|
if (process.env.NODE_ENV === "development" && debug && debug !== "profile") {
|
|
64
|
-
var message = ` \xB7 useTheme(${id})
|
|
87
|
+
var message = ` \xB7 useTheme(${id}) => ${name} needsUpdate ${needsUpdate} shouldRerender ${shouldRerender}`;
|
|
65
88
|
console.info(message);
|
|
66
89
|
}
|
|
67
|
-
if (
|
|
68
|
-
return
|
|
90
|
+
if (isSameAsParent)
|
|
91
|
+
return [
|
|
92
|
+
shouldRerender,
|
|
93
|
+
{
|
|
94
|
+
...parentState,
|
|
95
|
+
isNew: !1
|
|
96
|
+
}
|
|
97
|
+
];
|
|
69
98
|
if (!name) {
|
|
70
99
|
var next = lastState ?? parentState;
|
|
71
100
|
if (!next)
|
|
72
101
|
throw new Error("No theme and no parent?");
|
|
73
|
-
if (
|
|
102
|
+
if (shouldRerender) {
|
|
74
103
|
var updated = {
|
|
75
104
|
...parentState || lastState
|
|
76
105
|
};
|
|
77
|
-
return
|
|
106
|
+
return [
|
|
107
|
+
!0,
|
|
108
|
+
updated
|
|
109
|
+
];
|
|
78
110
|
}
|
|
79
|
-
return
|
|
111
|
+
return [
|
|
112
|
+
!1,
|
|
113
|
+
next
|
|
114
|
+
];
|
|
80
115
|
}
|
|
81
|
-
if (pendingUpdate2 !== "force" && lastState && lastState.name === name)
|
|
82
|
-
return lastState;
|
|
83
116
|
var scheme = getScheme(name), _parentState_inverses, parentInverses = (_parentState_inverses = parentState?.inverses) !== null && _parentState_inverses !== void 0 ? _parentState_inverses : 0, isInverse = parentState && scheme !== parentState.scheme, inverses = parentInverses + (isInverse ? 1 : 0), nextState = {
|
|
84
117
|
id,
|
|
85
118
|
name,
|
|
@@ -88,16 +121,27 @@ var ThemeStateContext = createContext(""), keysToId = /* @__PURE__ */ new WeakMa
|
|
|
88
121
|
parentId,
|
|
89
122
|
parentName: parentState?.name,
|
|
90
123
|
inverses,
|
|
91
|
-
isInverse
|
|
124
|
+
isInverse,
|
|
125
|
+
isNew: !0
|
|
92
126
|
};
|
|
93
|
-
isRoot && (rootThemeState = nextState)
|
|
127
|
+
if (isRoot && (rootThemeState = nextState), pendingUpdate2 !== "force" && lastState && lastState.name === name)
|
|
128
|
+
return [
|
|
129
|
+
!1,
|
|
130
|
+
nextState
|
|
131
|
+
];
|
|
94
132
|
var shouldAvoidRerender = pendingUpdate2 !== "force" && lastState && !needsUpdate && nextState.name === lastState.name;
|
|
95
133
|
return process.env.NODE_ENV === "development" && debug && debug !== "profile" && (console.groupCollapsed(` \xB7 useTheme(${id}) \u23ED\uFE0F ${name} shouldAvoidRerender: ${shouldAvoidRerender}`), console.info({
|
|
96
134
|
lastState,
|
|
97
135
|
needsUpdate,
|
|
98
136
|
nextState,
|
|
99
137
|
pendingUpdate: pendingUpdate2
|
|
100
|
-
}), console.groupEnd()), shouldAvoidRerender ?
|
|
138
|
+
}), console.groupEnd()), shouldAvoidRerender ? [
|
|
139
|
+
!1,
|
|
140
|
+
nextState
|
|
141
|
+
] : [
|
|
142
|
+
!0,
|
|
143
|
+
nextState
|
|
144
|
+
];
|
|
101
145
|
};
|
|
102
146
|
function scheduleUpdate(id) {
|
|
103
147
|
for (var queue = [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/Users/n8/tamagui/code/core/web/src/hooks/useThemeState.ts"],
|
|
4
|
-
"mappings": "AAAA,
|
|
5
|
-
"names": ["useIsomorphicLayoutEffect", "createContext", "useCallback", "useContext", "useId", "useSyncExternalStore", "getConfig", "ThemeStateContext", "keysToId", "WeakMap", "allListeners", "Map", "listenersByParent", "hasRenderedOnce", "pendingUpdate", "states", "
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["useIsomorphicLayoutEffect", "createContext", "useCallback", "useContext", "useId", "useSyncExternalStore", "getConfig", "ThemeStateContext", "keysToId", "WeakMap", "allListeners", "Map", "listenersByParent", "hasRenderedOnce", "pendingUpdate", "states", "localStates", "process", "env", "NODE_ENV", "globalThis", "getTamaguiThemes", "buildTree", "id", "node", "get", "children", "Array", "from", "values", "filter", "child", "parentId", "map", "Boolean", "rootThemeState", "console", "info", "shouldForce", "forceUpdateThemes", "cacheVersion", "forEach", "cb", "getThemeState", "themes", "getRootThemeState", "useThemeState", "props", "isRoot", "keys", "disable", "Error", "name", "theme", "light", "inverses", "subscribe", "Set", "add", "set", "delete", "propsKey", "getPropsKey", "getSnapshot", "local", "needsUpdate", "current", "size", "rerender", "next", "getNextState", "debug", "groupCollapsed", "groupEnd", "Object", "assign", "time", "state", "warn", "scheduleUpdate", "lastState", "parentState", "isNew", "getNewThemeName", "isSameAsParent", "shouldRerender", "message", "updated", "scheme", "getScheme", "parentInverses", "isInverse", "nextState", "parentName", "shouldAvoidRerender", "scheduleUpdate", "id", "queue", "visited", "Set", "length", "parent", "shift", "children", "listenersByParent", "childId", "has", "add", "push", "forEach", "cb", "allListeners", "get", "validSchemes", "light", "dark", "getScheme", "name", "split", "getNewThemeName", "parentName", "reset", "componentName", "inverse", "debug", "forceUpdate", "Error", "process", "env", "NODE_ENV", "lastPartIndex", "lastIndexOf", "slice", "themes", "getConfig", "parentParts", "lastName", "toLowerCase", "pop", "subNames", "undefined", "filter", "Boolean", "found", "max", "i", "base", "join", "subName", "potential", "scheme", "replace", "RegExp", "getPropsKey", "forceClassName", "hasThemeUpdatingProps", "props"]
|
|
6
6
|
}
|
package/dist/esm/views/Theme.js
CHANGED
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
|
-
import React, {
|
|
3
|
-
Children,
|
|
4
|
-
cloneElement,
|
|
5
|
-
forwardRef,
|
|
6
|
-
isValidElement,
|
|
7
|
-
useRef
|
|
8
|
-
} from "react";
|
|
2
|
+
import React, { Children, cloneElement, forwardRef, isValidElement, useRef } from "react";
|
|
9
3
|
import { getSetting } from "../config";
|
|
10
4
|
import { variableToString } from "../createVariable";
|
|
11
5
|
import { useThemeWithState } from "../hooks/useTheme";
|
|
@@ -37,7 +31,8 @@ const empty = { className: "", style: {} }, Theme = forwardRef(function(props, r
|
|
|
37
31
|
Theme.avoidForwardRef = !0;
|
|
38
32
|
function getThemedChildren(themeState, children, props, isRoot = !1, stateRef) {
|
|
39
33
|
const { shallow, forceClassName } = props, state = stateRef.current;
|
|
40
|
-
|
|
34
|
+
let shouldRenderChildrenWithTheme = state.hasEverThemed || themeState.isNew || isRoot || hasThemeUpdatingProps(props);
|
|
35
|
+
if (process.env.NODE_ENV === "development" && props.debug && (children = /* @__PURE__ */ jsx(ThemeDebug, { themeState, themeProps: props, children })), !shouldRenderChildrenWithTheme)
|
|
41
36
|
return children;
|
|
42
37
|
children = /* @__PURE__ */ jsx(ThemeStateContext.Provider, { value: themeState.id, children });
|
|
43
38
|
const { isInverse, name } = themeState, requiresExtraWrapper = isInverse || forceClassName;
|
|
@@ -54,17 +49,27 @@ function getThemedChildren(themeState, children, props, isRoot = !1, stateRef) {
|
|
|
54
49
|
/* @__PURE__ */ jsx(Theme, { name: parentState.name, children: child.props.children })
|
|
55
50
|
) : child);
|
|
56
51
|
}
|
|
57
|
-
if (process.env.NODE_ENV === "development" && props.debug &&
|
|
52
|
+
if (process.env.NODE_ENV === "development" && props.debug && console.warn(" getThemedChildren", {
|
|
58
53
|
requiresExtraWrapper,
|
|
59
54
|
forceClassName,
|
|
60
55
|
themeState,
|
|
61
56
|
state,
|
|
62
57
|
...getThemeClassNameAndStyle(themeState, props, isRoot)
|
|
63
|
-
}),
|
|
58
|
+
}), forceClassName === !1)
|
|
64
59
|
return children;
|
|
65
60
|
if (isWeb) {
|
|
66
61
|
const { className, style } = getThemeClassNameAndStyle(themeState, props, isRoot);
|
|
67
|
-
if (children = /* @__PURE__ */ jsx(
|
|
62
|
+
if (children = /* @__PURE__ */ jsx(
|
|
63
|
+
"span",
|
|
64
|
+
{
|
|
65
|
+
...process.env.NODE_ENV === "development" && {
|
|
66
|
+
"data-theme-id": themeState.id
|
|
67
|
+
},
|
|
68
|
+
className: `${className} _dsp_contents is_Theme`,
|
|
69
|
+
style,
|
|
70
|
+
children
|
|
71
|
+
}
|
|
72
|
+
), state.hasEverThemed === "wrapped") {
|
|
68
73
|
const className2 = requiresExtraWrapper ? `${isInverse ? name.startsWith("light") ? "t_light is_inversed" : name.startsWith("dark") ? "t_dark is_inversed" : "" : ""} _dsp_contents` : "_dsp_contents";
|
|
69
74
|
children = /* @__PURE__ */ jsx("span", { className: className2, children });
|
|
70
75
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,aAAa;AAEtB,OAAO
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["className"]
|
|
6
6
|
}
|
package/dist/esm/views/Theme.mjs
CHANGED
|
@@ -34,7 +34,12 @@ function getThemedChildren(themeState, children, props, isRoot = !1, stateRef) {
|
|
|
34
34
|
forceClassName
|
|
35
35
|
} = props,
|
|
36
36
|
state = stateRef.current;
|
|
37
|
-
|
|
37
|
+
let shouldRenderChildrenWithTheme = state.hasEverThemed || themeState.isNew || isRoot || hasThemeUpdatingProps(props);
|
|
38
|
+
if (process.env.NODE_ENV === "development" && props.debug && (children = /* @__PURE__ */jsx(ThemeDebug, {
|
|
39
|
+
themeState,
|
|
40
|
+
themeProps: props,
|
|
41
|
+
children
|
|
42
|
+
})), !shouldRenderChildrenWithTheme) return children;
|
|
38
43
|
children = /* @__PURE__ */jsx(ThemeStateContext.Provider, {
|
|
39
44
|
value: themeState.id,
|
|
40
45
|
children
|
|
@@ -55,23 +60,22 @@ function getThemedChildren(themeState, children, props, isRoot = !1, stateRef) {
|
|
|
55
60
|
children: child.props.children
|
|
56
61
|
})) : child);
|
|
57
62
|
}
|
|
58
|
-
if (process.env.NODE_ENV === "development" && props.debug &&
|
|
63
|
+
if (process.env.NODE_ENV === "development" && props.debug && console.warn(" getThemedChildren", {
|
|
59
64
|
requiresExtraWrapper,
|
|
60
65
|
forceClassName,
|
|
61
66
|
themeState,
|
|
62
67
|
state,
|
|
63
68
|
...getThemeClassNameAndStyle(themeState, props, isRoot)
|
|
64
|
-
}),
|
|
65
|
-
themeState,
|
|
66
|
-
themeProps: props,
|
|
67
|
-
children
|
|
68
|
-
})), forceClassName === !1) return children;
|
|
69
|
+
}), forceClassName === !1) return children;
|
|
69
70
|
if (isWeb) {
|
|
70
71
|
const {
|
|
71
72
|
className,
|
|
72
73
|
style
|
|
73
74
|
} = getThemeClassNameAndStyle(themeState, props, isRoot);
|
|
74
75
|
if (children = /* @__PURE__ */jsx("span", {
|
|
76
|
+
...(process.env.NODE_ENV === "development" && {
|
|
77
|
+
"data-theme-id": themeState.id
|
|
78
|
+
}),
|
|
75
79
|
className: `${className} _dsp_contents is_Theme`,
|
|
76
80
|
style,
|
|
77
81
|
children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isWeb","React","Children","cloneElement","forwardRef","isValidElement","useRef","getSetting","variableToString","useThemeWithState","getThemeState","hasThemeUpdatingProps","ThemeStateContext","ThemeDebug","jsx","empty","className","style","Theme","props","ref","disable","children","isRoot","_isRoot","_","themeState","finalChildren","map","child","only","stateRef","hasEverThemed","getThemedChildren","avoidForwardRef","shallow","forceClassName","state","current","isNew","
|
|
1
|
+
{"version":3,"names":["isWeb","React","Children","cloneElement","forwardRef","isValidElement","useRef","getSetting","variableToString","useThemeWithState","getThemeState","hasThemeUpdatingProps","ThemeStateContext","ThemeDebug","jsx","empty","className","style","Theme","props","ref","disable","children","isRoot","_isRoot","_","themeState","finalChildren","map","child","only","stateRef","hasEverThemed","getThemedChildren","avoidForwardRef","shallow","forceClassName","state","current","shouldRenderChildrenWithTheme","isNew","process","env","NODE_ENV","debug","themeProps","Provider","value","id","isInverse","name","requiresExtraWrapper","parentId","parentState","Error","toArray","console","warn","getThemeClassNameAndStyle","className2","startsWith","themeColor","theme","color","maxInverses","themeClassName","inverses","replace","schemePrefix"],"sources":["../../../src/views/Theme.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -32,7 +32,11 @@ var empty = {
|
|
|
32
32
|
Theme.avoidForwardRef = !0;
|
|
33
33
|
function getThemedChildren(themeState, children, props) {
|
|
34
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 (
|
|
35
|
+
if (process.env.NODE_ENV === "development" && props.debug && (children = /* @__PURE__ */ _jsx(ThemeDebug, {
|
|
36
|
+
themeState,
|
|
37
|
+
themeProps: props,
|
|
38
|
+
children
|
|
39
|
+
})), !shouldRenderChildrenWithTheme)
|
|
36
40
|
return children;
|
|
37
41
|
children = /* @__PURE__ */ _jsx(ThemeStateContext.Provider, {
|
|
38
42
|
value: themeState.id,
|
|
@@ -51,21 +55,20 @@ function getThemedChildren(themeState, children, props) {
|
|
|
51
55
|
})) : child;
|
|
52
56
|
});
|
|
53
57
|
}
|
|
54
|
-
if (process.env.NODE_ENV === "development" && props.debug &&
|
|
58
|
+
if (process.env.NODE_ENV === "development" && props.debug && console.warn(" getThemedChildren", {
|
|
55
59
|
requiresExtraWrapper,
|
|
56
60
|
forceClassName,
|
|
57
61
|
themeState,
|
|
58
62
|
state,
|
|
59
63
|
...getThemeClassNameAndStyle(themeState, props, isRoot)
|
|
60
|
-
}),
|
|
61
|
-
themeState,
|
|
62
|
-
themeProps: props,
|
|
63
|
-
children
|
|
64
|
-
})), forceClassName === !1)
|
|
64
|
+
}), forceClassName === !1)
|
|
65
65
|
return children;
|
|
66
66
|
if (isWeb) {
|
|
67
67
|
var { className, style } = getThemeClassNameAndStyle(themeState, props, isRoot);
|
|
68
68
|
if (children = /* @__PURE__ */ _jsx("span", {
|
|
69
|
+
...process.env.NODE_ENV === "development" && {
|
|
70
|
+
"data-theme-id": themeState.id
|
|
71
|
+
},
|
|
69
72
|
className: `${className} _dsp_contents is_Theme`,
|
|
70
73
|
style,
|
|
71
74
|
children
|
|
@@ -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", "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", "
|
|
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", "process", "env", "NODE_ENV", "debug", "themeProps", "Provider", "value", "id", "isInverse", "name", "requiresExtraWrapper", "parentId", "parentState", "Error", "toArray", "undefined", "console", "warn", "getThemeClassNameAndStyle", "span", "startsWith", "themeColor", "theme", "color", "maxInverses", "themeClassName", "inverses", "replace", "schemePrefix"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "1.124.
|
|
3
|
+
"version": "1.124.11",
|
|
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.124.
|
|
31
|
-
"@tamagui/constants": "1.124.
|
|
32
|
-
"@tamagui/helpers": "1.124.
|
|
33
|
-
"@tamagui/normalize-css-color": "1.124.
|
|
34
|
-
"@tamagui/timer": "1.124.
|
|
35
|
-
"@tamagui/types": "1.124.
|
|
36
|
-
"@tamagui/use-did-finish-ssr": "1.124.
|
|
37
|
-
"@tamagui/use-event": "1.124.
|
|
38
|
-
"@tamagui/use-force-update": "1.124.
|
|
30
|
+
"@tamagui/compose-refs": "1.124.11",
|
|
31
|
+
"@tamagui/constants": "1.124.11",
|
|
32
|
+
"@tamagui/helpers": "1.124.11",
|
|
33
|
+
"@tamagui/normalize-css-color": "1.124.11",
|
|
34
|
+
"@tamagui/timer": "1.124.11",
|
|
35
|
+
"@tamagui/types": "1.124.11",
|
|
36
|
+
"@tamagui/use-did-finish-ssr": "1.124.11",
|
|
37
|
+
"@tamagui/use-event": "1.124.11",
|
|
38
|
+
"@tamagui/use-force-update": "1.124.11"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"react": "*",
|
|
42
42
|
"react-dom": "*"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
|
-
"@tamagui/build": "1.124.
|
|
45
|
+
"@tamagui/build": "1.124.11",
|
|
46
46
|
"@testing-library/react": "^16.1.0",
|
|
47
47
|
"csstype": "^3.0.10",
|
|
48
48
|
"react": "*",
|
|
@@ -6,7 +6,7 @@ const callImmediate = (cb) => cb()
|
|
|
6
6
|
|
|
7
7
|
export function createShallowSetState<State extends Object>(
|
|
8
8
|
setter: React.Dispatch<React.SetStateAction<State>>,
|
|
9
|
-
|
|
9
|
+
onlyAllow?: string[],
|
|
10
10
|
transition?: boolean,
|
|
11
11
|
debug?: DebugProp,
|
|
12
12
|
callback?: (nextState: any) => void
|
|
@@ -17,23 +17,32 @@ export function createShallowSetState<State extends Object>(
|
|
|
17
17
|
const wrap = transition ? startTransition : callImmediate
|
|
18
18
|
wrap(() => {
|
|
19
19
|
setter((prev) => {
|
|
20
|
-
const out = mergeIfNotShallowEqual(prev, next,
|
|
20
|
+
const out = mergeIfNotShallowEqual(prev, next, onlyAllow, debug)
|
|
21
21
|
callback?.(out)
|
|
22
22
|
return out
|
|
23
23
|
})
|
|
24
24
|
})
|
|
25
25
|
},
|
|
26
|
-
[setter,
|
|
26
|
+
[setter, onlyAllow ? onlyAllow.join('') : '', transition, debug]
|
|
27
27
|
)
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
export function mergeIfNotShallowEqual(
|
|
31
31
|
prev: any,
|
|
32
32
|
next: any,
|
|
33
|
-
|
|
33
|
+
onlyAllow?: string[],
|
|
34
34
|
debug?: DebugProp
|
|
35
35
|
) {
|
|
36
|
-
if (
|
|
36
|
+
if (onlyAllow) {
|
|
37
|
+
let allowed = {}
|
|
38
|
+
for (const key in next) {
|
|
39
|
+
if (onlyAllow.includes(key)) {
|
|
40
|
+
allowed[key] = next[key]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
next = allowed
|
|
44
|
+
}
|
|
45
|
+
if (!prev || !next || isEqualShallow(prev, next)) {
|
|
37
46
|
if (!prev) return next
|
|
38
47
|
return prev
|
|
39
48
|
}
|
package/src/hooks/useProps.tsx
CHANGED