@tamagui/web 1.84.1 → 1.84.2
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/ThemeManager.js +2 -2
- package/dist/cjs/helpers/ThemeManager.js.map +1 -1
- package/dist/cjs/helpers/ThemeManager.native.js +2 -2
- package/dist/cjs/helpers/ThemeManager.native.js.map +1 -1
- package/dist/cjs/helpers/ThemeManagerContext.js +3 -3
- package/dist/cjs/helpers/ThemeManagerContext.js.map +1 -1
- package/dist/cjs/helpers/ThemeManagerContext.native.js +3 -3
- package/dist/cjs/helpers/ThemeManagerContext.native.js.map +1 -1
- package/dist/cjs/hooks/useTheme.js +17 -8
- package/dist/cjs/hooks/useTheme.js.map +1 -1
- package/dist/cjs/hooks/useTheme.native.js +17 -8
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeName.js +2 -2
- package/dist/cjs/hooks/useThemeName.js.map +1 -1
- package/dist/cjs/hooks/useThemeName.native.js +2 -2
- package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
- package/dist/cjs/views/Theme.js +2 -2
- package/dist/cjs/views/Theme.js.map +1 -1
- package/dist/cjs/views/Theme.native.js +2 -2
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/cjs/views/ThemeDebug.js.map +1 -1
- package/dist/esm/helpers/ThemeManager.js +2 -2
- package/dist/esm/helpers/ThemeManager.js.map +1 -1
- package/dist/esm/helpers/ThemeManager.native.js +2 -2
- package/dist/esm/helpers/ThemeManager.native.js.map +1 -1
- package/dist/esm/helpers/ThemeManagerContext.js +2 -2
- package/dist/esm/helpers/ThemeManagerContext.js.map +1 -1
- package/dist/esm/helpers/ThemeManagerContext.native.js +2 -2
- package/dist/esm/helpers/ThemeManagerContext.native.js.map +1 -1
- package/dist/esm/hooks/useTheme.js +17 -9
- package/dist/esm/hooks/useTheme.js.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +17 -9
- package/dist/esm/hooks/useTheme.native.js.map +1 -1
- package/dist/esm/hooks/useThemeName.js +3 -2
- package/dist/esm/hooks/useThemeName.js.map +1 -1
- package/dist/esm/hooks/useThemeName.native.js +3 -2
- package/dist/esm/hooks/useThemeName.native.js.map +1 -1
- package/dist/esm/views/Theme.js +3 -3
- package/dist/esm/views/Theme.js.map +1 -1
- package/dist/esm/views/Theme.native.js +3 -3
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeDebug.js.map +1 -1
- package/package.json +13 -11
- package/src/helpers/ThemeManager.tsx +6 -4
- package/src/helpers/ThemeManagerContext.tsx +1 -2
- package/src/hooks/useTheme.tsx +49 -31
- package/src/hooks/useThemeName.tsx +3 -2
- package/src/views/Theme.tsx +18 -16
- package/src/views/ThemeDebug.tsx +0 -1
- package/types/helpers/ThemeManager.d.ts.map +1 -1
- package/types/helpers/ThemeManagerContext.d.ts +1 -2
- package/types/helpers/ThemeManagerContext.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +1 -0
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/hooks/useThemeName.d.ts.map +1 -1
- package/types/views/Theme.d.ts.map +1 -1
- package/types/views/ThemeDebug.d.ts.map +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/ThemeManager.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,aAAa;AAEtB,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB,4BAA4B;AA0B7D,MAAM,aAAgC,EAAE,MAAM,GAAG;AAE1C,SAAS,yBAAyB,OAAmB;AAC1D,SAAO,GAAQ,MAAM,QAAQ,MAAM,iBAAiB,MAAM,WAAW,MAAM;AAC7E;AAEA,IAAI,MAAM;AAEH,MAAM,aAAa;AAAA,EAMxB,YACS,QAAoB,CAAC,GAC5B,eACA;AAFO;AANT,cAAK;AACL,0BAAiB,oBAAI,IAAmB;AACxC,yBAAqC;AACrC,iBAA2B;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
ThemeManager,
|
|
8
8
|
getHasThemeUpdatingProps
|
|
9
9
|
} from "../helpers/ThemeManager";
|
|
10
|
-
import {
|
|
10
|
+
import { ThemeManagerIDContext } from "../helpers/ThemeManagerContext";
|
|
11
11
|
const emptyProps = { name: null };
|
|
12
12
|
let cached;
|
|
13
13
|
function getDefaultThemeProxied() {
|
|
@@ -32,13 +32,13 @@ const useTheme = (props = emptyProps) => {
|
|
|
32
32
|
}), next;
|
|
33
33
|
}
|
|
34
34
|
), { themeManager, state } = changedThemeState;
|
|
35
|
-
|
|
35
|
+
process.env.NODE_ENV === "development" && (state?.theme || process.env.TAMAGUI_DISABLE_NO_THEME_WARNING !== "1" && console.warn(
|
|
36
36
|
`[tamagui] No theme found, this could be due to an invalid theme name (given theme props ${JSON.stringify(
|
|
37
37
|
props
|
|
38
38
|
)}).
|
|
39
39
|
|
|
40
40
|
If this is intended and you are using Tamagui without any themes, you can disable this warning by setting the environment variable TAMAGUI_DISABLE_NO_THEME_WARNING=1`
|
|
41
|
-
);
|
|
41
|
+
));
|
|
42
42
|
const themeProxied = useMemo(() => !themeManager || !state?.theme ? {} : getThemeProxied(state, props.deopt, themeManager, keys.current, props.debug), [state?.theme, themeManager, props.deopt, props.debug]);
|
|
43
43
|
return process.env.NODE_ENV === "development" && props.debug === "verbose" && (console.groupCollapsed(" \u{1F539} useTheme =>", state?.name), console.info("returning state", changedThemeState, "from props", props), console.groupEnd()), [changedThemeState, themeProxied];
|
|
44
44
|
};
|
|
@@ -87,8 +87,13 @@ function getThemeProxied({ theme, name, scheme }, deopt = !1, themeManager, keys
|
|
|
87
87
|
}
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
|
-
const activeThemeManagers = /* @__PURE__ */ new Set(),
|
|
91
|
-
|
|
90
|
+
const activeThemeManagers = /* @__PURE__ */ new Set(), _uidToManager = /* @__PURE__ */ new WeakMap(), _idToUID = {}, getId = (id) => _idToUID[id], getThemeManager = (id) => _uidToManager.get(getId(id)), registerThemeManager = (t) => {
|
|
91
|
+
if (!_idToUID[t.id]) {
|
|
92
|
+
const id = _idToUID[t.id] = {};
|
|
93
|
+
_uidToManager.set(id, t);
|
|
94
|
+
}
|
|
95
|
+
}, useChangeThemeEffect = (props, isRoot = !1, keys, shouldUpdate) => {
|
|
96
|
+
const { disable } = props, parentManagerId = useContext(ThemeManagerIDContext), parentManager = getThemeManager(parentManagerId);
|
|
92
97
|
if (!isRoot && !parentManager || disable)
|
|
93
98
|
return {
|
|
94
99
|
isNewTheme: !1,
|
|
@@ -116,7 +121,7 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
116
121
|
}));
|
|
117
122
|
return;
|
|
118
123
|
}
|
|
119
|
-
isNewTheme
|
|
124
|
+
(isNewTheme || getShouldUpdateTheme(themeManager)) && (activeThemeManagers.add(themeManager), setThemeState(createState));
|
|
120
125
|
const selfListenerDispose = themeManager.onChangeTheme((_a, _b, forced) => {
|
|
121
126
|
forced && setThemeState((prev) => createState(prev, !0));
|
|
122
127
|
}), disposeChangeListener = parentManager?.onChangeTheme(
|
|
@@ -127,7 +132,7 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
127
132
|
themeManager.id
|
|
128
133
|
);
|
|
129
134
|
return () => {
|
|
130
|
-
selfListenerDispose(), disposeChangeListener?.(), activeThemeManagers.delete(themeManager);
|
|
135
|
+
selfListenerDispose(), disposeChangeListener?.(), isNewTheme && activeThemeManagers.delete(themeManager);
|
|
131
136
|
};
|
|
132
137
|
}, [
|
|
133
138
|
themeManager,
|
|
@@ -175,14 +180,16 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
175
180
|
} else
|
|
176
181
|
themeManager2 = getNewThemeManager(), state2 = { ...themeManager2.state };
|
|
177
182
|
}
|
|
178
|
-
const isNewTheme2 = !!(themeManager2 !== parentManager || props.inverse)
|
|
183
|
+
const isNewTheme2 = !!(themeManager2 !== parentManager || props.inverse);
|
|
184
|
+
isNewTheme2 && registerThemeManager(themeManager2);
|
|
185
|
+
const mounted2 = props.inverse ? isRoot || prev?.mounted : !0;
|
|
179
186
|
state2 || (isNewTheme2 ? state2 = themeManager2.state : (state2 = parentManager.state, themeManager2 = parentManager));
|
|
180
187
|
const wasInversed = prev?.inversed, inversed2 = isNewTheme2 && state2.scheme !== parentManager?.state.scheme ? !0 : wasInversed != null ? !1 : null, response = {
|
|
181
188
|
themeManager: themeManager2,
|
|
182
189
|
isNewTheme: isNewTheme2,
|
|
183
190
|
mounted: mounted2,
|
|
184
191
|
inversed: inversed2
|
|
185
|
-
}, shouldReturnPrev =
|
|
192
|
+
}, shouldReturnPrev = prev && !force && // isEqualShallow uses the second arg as the keys so this should compare without state first...
|
|
186
193
|
isEqualShallow(prev, response) && // ... and then compare just the state, because we make a new state obj but is likely the same
|
|
187
194
|
isEqualShallow(prev.state, state2);
|
|
188
195
|
if (prev && shouldReturnPrev)
|
|
@@ -205,6 +212,7 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
205
212
|
};
|
|
206
213
|
export {
|
|
207
214
|
activeThemeManagers,
|
|
215
|
+
getThemeManager,
|
|
208
216
|
getThemeProxied,
|
|
209
217
|
useChangeThemeEffect,
|
|
210
218
|
useTheme,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useTheme.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,UAAiB,gBAAgB;AAC1C,SAAS,YAAY,WAAW,SAAS,QAAQ,gBAAgB;AAEjE,SAAS,iBAAiB;AAC1B,SAAmB,mBAAmB;AACtC,SAAS,sBAAsB;AAC/B;AAAA,EACE;AAAA,EAEA;AAAA,OACK;AACP,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["_", "themeManager", "state", "isNewTheme", "mounted", "inversed"]
|
|
6
6
|
}
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
ThemeManager,
|
|
8
8
|
getHasThemeUpdatingProps
|
|
9
9
|
} from "../helpers/ThemeManager";
|
|
10
|
-
import {
|
|
10
|
+
import { ThemeManagerIDContext } from "../helpers/ThemeManagerContext";
|
|
11
11
|
const emptyProps = { name: null };
|
|
12
12
|
let cached;
|
|
13
13
|
function getDefaultThemeProxied() {
|
|
@@ -32,13 +32,13 @@ const useTheme = (props = emptyProps) => {
|
|
|
32
32
|
}), next;
|
|
33
33
|
}
|
|
34
34
|
), { themeManager, state } = changedThemeState;
|
|
35
|
-
|
|
35
|
+
process.env.NODE_ENV === "development" && (state?.theme || process.env.TAMAGUI_DISABLE_NO_THEME_WARNING !== "1" && console.warn(
|
|
36
36
|
`[tamagui] No theme found, this could be due to an invalid theme name (given theme props ${JSON.stringify(
|
|
37
37
|
props
|
|
38
38
|
)}).
|
|
39
39
|
|
|
40
40
|
If this is intended and you are using Tamagui without any themes, you can disable this warning by setting the environment variable TAMAGUI_DISABLE_NO_THEME_WARNING=1`
|
|
41
|
-
);
|
|
41
|
+
));
|
|
42
42
|
const themeProxied = useMemo(() => !themeManager || !state?.theme ? {} : getThemeProxied(state, props.deopt, themeManager, keys.current, props.debug), [state?.theme, themeManager, props.deopt, props.debug]);
|
|
43
43
|
return process.env.NODE_ENV === "development" && props.debug === "verbose" && (console.groupCollapsed(" \u{1F539} useTheme =>", state?.name), console.info("returning state", changedThemeState, "from props", props), console.groupEnd()), [changedThemeState, themeProxied];
|
|
44
44
|
};
|
|
@@ -116,8 +116,13 @@ function someParentIsInversed(manager) {
|
|
|
116
116
|
}
|
|
117
117
|
return !1;
|
|
118
118
|
}
|
|
119
|
-
const activeThemeManagers = /* @__PURE__ */ new Set(),
|
|
120
|
-
|
|
119
|
+
const activeThemeManagers = /* @__PURE__ */ new Set(), _uidToManager = /* @__PURE__ */ new WeakMap(), _idToUID = {}, getId = (id) => _idToUID[id], getThemeManager = (id) => _uidToManager.get(getId(id)), registerThemeManager = (t) => {
|
|
120
|
+
if (!_idToUID[t.id]) {
|
|
121
|
+
const id = _idToUID[t.id] = {};
|
|
122
|
+
_uidToManager.set(id, t);
|
|
123
|
+
}
|
|
124
|
+
}, useChangeThemeEffect = (props, isRoot = !1, keys, shouldUpdate) => {
|
|
125
|
+
const { disable } = props, parentManagerId = useContext(ThemeManagerIDContext), parentManager = getThemeManager(parentManagerId);
|
|
121
126
|
if (!isRoot && !parentManager || disable)
|
|
122
127
|
return {
|
|
123
128
|
isNewTheme: !1,
|
|
@@ -145,7 +150,7 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
145
150
|
}));
|
|
146
151
|
return;
|
|
147
152
|
}
|
|
148
|
-
isNewTheme
|
|
153
|
+
(isNewTheme || getShouldUpdateTheme(themeManager)) && (activeThemeManagers.add(themeManager), setThemeState(createState));
|
|
149
154
|
const selfListenerDispose = themeManager.onChangeTheme((_a, _b, forced) => {
|
|
150
155
|
forced && setThemeState((prev) => createState(prev, !0));
|
|
151
156
|
}), disposeChangeListener = parentManager?.onChangeTheme(
|
|
@@ -156,7 +161,7 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
156
161
|
themeManager.id
|
|
157
162
|
);
|
|
158
163
|
return () => {
|
|
159
|
-
selfListenerDispose(), disposeChangeListener?.(), activeThemeManagers.delete(themeManager);
|
|
164
|
+
selfListenerDispose(), disposeChangeListener?.(), isNewTheme && activeThemeManagers.delete(themeManager);
|
|
160
165
|
};
|
|
161
166
|
}, [
|
|
162
167
|
themeManager,
|
|
@@ -204,14 +209,16 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
204
209
|
} else
|
|
205
210
|
themeManager2 = getNewThemeManager(), state2 = { ...themeManager2.state };
|
|
206
211
|
}
|
|
207
|
-
const isNewTheme2 = !!(themeManager2 !== parentManager || props.inverse)
|
|
212
|
+
const isNewTheme2 = !!(themeManager2 !== parentManager || props.inverse);
|
|
213
|
+
isNewTheme2 && registerThemeManager(themeManager2);
|
|
214
|
+
const mounted2 = props.inverse ? isRoot || prev?.mounted : !0;
|
|
208
215
|
state2 || (isNewTheme2 ? state2 = themeManager2.state : (state2 = parentManager.state, themeManager2 = parentManager));
|
|
209
216
|
const wasInversed = prev?.inversed, inversed2 = isNewTheme2 && state2.scheme !== parentManager?.state.scheme ? !0 : wasInversed != null ? !1 : null, response = {
|
|
210
217
|
themeManager: themeManager2,
|
|
211
218
|
isNewTheme: isNewTheme2,
|
|
212
219
|
mounted: mounted2,
|
|
213
220
|
inversed: inversed2
|
|
214
|
-
}, shouldReturnPrev =
|
|
221
|
+
}, shouldReturnPrev = prev && !force && // isEqualShallow uses the second arg as the keys so this should compare without state first...
|
|
215
222
|
isEqualShallow(prev, response) && // ... and then compare just the state, because we make a new state obj but is likely the same
|
|
216
223
|
isEqualShallow(prev.state, state2);
|
|
217
224
|
if (prev && shouldReturnPrev)
|
|
@@ -234,6 +241,7 @@ const activeThemeManagers = /* @__PURE__ */ new Set(), useChangeThemeEffect = (p
|
|
|
234
241
|
};
|
|
235
242
|
export {
|
|
236
243
|
activeThemeManagers,
|
|
244
|
+
getThemeManager,
|
|
237
245
|
getThemeProxied,
|
|
238
246
|
useChangeThemeEffect,
|
|
239
247
|
useTheme,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useTheme.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,UAAU,OAAO,gBAAgB;AAC1C,SAAS,YAAY,WAAW,SAAS,QAAQ,gBAAgB;AAEjE,SAAS,iBAAiB;AAC1B,SAAmB,mBAAmB;AACtC,SAAS,sBAAsB;AAC/B;AAAA,EACE;AAAA,EAEA;AAAA,OACK;AACP,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["_", "themeManager", "state", "isNewTheme", "mounted", "inversed"]
|
|
6
6
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
2
2
|
import { useContext, useState } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { ThemeManagerIDContext } from "../helpers/ThemeManagerContext";
|
|
4
|
+
import { getThemeManager } from "./useTheme";
|
|
4
5
|
function useThemeName(opts) {
|
|
5
|
-
const manager = useContext(
|
|
6
|
+
const manager = getThemeManager(useContext(ThemeManagerIDContext)), [name, setName] = useState(manager?.state.name || "");
|
|
6
7
|
return useIsomorphicLayoutEffect(() => {
|
|
7
8
|
if (manager)
|
|
8
9
|
return setName(manager.state.name), manager.onChangeTheme((next, manager2) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useThemeName.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,SAAS,
|
|
4
|
+
"mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,SAAS,6BAA6B;AAEtC,SAAS,uBAAuB;AAEzB,SAAS,aAAa,MAAqC;AAChE,QAAM,UAAU,gBAAgB,WAAW,qBAAqB,CAAE,GAC5D,CAAC,MAAM,OAAO,IAAI,SAAS,SAAS,MAAM,QAAQ,EAAE;AAE1D,mCAA0B,MAAM;AAC9B,QAAK;AACL,qBAAQ,QAAQ,MAAM,IAAI,GACnB,QAAQ,cAAc,CAAC,MAAMA,aAAY;AAC9C,cAAMC,QAAO,MAAM,UAASD,SAAQ,MAAM,cAAc;AACxD,QAAKC,SACL,QAAQA,KAAI;AAAA,MACd,CAAC;AAAA,EACH,GAAG,CAAC,SAAS,MAAM,IAAI,CAAC,GAEjB;AACT;",
|
|
5
5
|
"names": ["manager", "name"]
|
|
6
6
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
2
2
|
import { useContext, useState } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { ThemeManagerIDContext } from "../helpers/ThemeManagerContext";
|
|
4
|
+
import { getThemeManager } from "./useTheme";
|
|
4
5
|
function useThemeName(opts) {
|
|
5
|
-
const manager = useContext(
|
|
6
|
+
const manager = getThemeManager(useContext(ThemeManagerIDContext)), [name, setName] = useState(manager?.state.name || "");
|
|
6
7
|
return useIsomorphicLayoutEffect(() => {
|
|
7
8
|
if (manager)
|
|
8
9
|
return setName(manager.state.name), manager.onChangeTheme((next, manager2) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useThemeName.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,SAAS,
|
|
4
|
+
"mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,SAAS,6BAA6B;AAEtC,SAAS,uBAAuB;AAEzB,SAAS,aAAa,MAAqC;AAChE,QAAM,UAAU,gBAAgB,WAAW,qBAAqB,CAAE,GAC5D,CAAC,MAAM,OAAO,IAAI,SAAS,SAAS,MAAM,QAAQ,EAAE;AAE1D,mCAA0B,MAAM;AAC9B,QAAK;AACL,qBAAQ,QAAQ,MAAM,IAAI,GACnB,QAAQ,cAAc,CAAC,MAAMA,aAAY;AAC9C,cAAMC,QAAO,MAAM,UAASD,SAAQ,MAAM,cAAc;AACxD,QAAKC,SACL,QAAQA,KAAI;AAAA,MACd,CAAC;AAAA,EACH,GAAG,CAAC,SAAS,MAAM,IAAI,CAAC,GAEjB;AACT;",
|
|
5
5
|
"names": ["manager", "name"]
|
|
6
6
|
}
|
package/dist/esm/views/Theme.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
2
|
import React, { Children, cloneElement, forwardRef, isValidElement, useRef } from "react";
|
|
3
3
|
import { variableToString } from "../createVariable";
|
|
4
|
-
import {
|
|
4
|
+
import { ThemeManagerIDContext } from "../helpers/ThemeManagerContext";
|
|
5
5
|
import { useChangeThemeEffect } from "../hooks/useTheme";
|
|
6
6
|
import { ThemeDebug } from "./ThemeDebug";
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -25,7 +25,7 @@ Theme.avoidForwardRef = !0;
|
|
|
25
25
|
function getThemedChildren(themeState, children, props, isRoot = !1) {
|
|
26
26
|
const { themeManager, isNewTheme } = themeState;
|
|
27
27
|
if (!themeManager)
|
|
28
|
-
throw "\u274C";
|
|
28
|
+
throw new Error(process.env.NODE_ENV === "development" ? "\u274C No theme found, either incorrect name, potential duplicate tamagui deps, or TamaguiProvider not providing themes." : "\u274C");
|
|
29
29
|
const { shallow, forceClassName } = props, hasEverThemed = useRef(!1), shouldRenderChildrenWithTheme = isNewTheme || props.inverse || hasEverThemed.current || forceClassName || isRoot;
|
|
30
30
|
if (shouldRenderChildrenWithTheme && (hasEverThemed.current = !0), !shouldRenderChildrenWithTheme)
|
|
31
31
|
return children;
|
|
@@ -35,7 +35,7 @@ function getThemedChildren(themeState, children, props, isRoot = !1) {
|
|
|
35
35
|
void 0,
|
|
36
36
|
/* @__PURE__ */ jsx(Theme, { name: themeManager.state.parentName, children: child.props.children })
|
|
37
37
|
) : child));
|
|
38
|
-
const elementsWithContext = /* @__PURE__ */ jsx(
|
|
38
|
+
const elementsWithContext = /* @__PURE__ */ jsx(ThemeManagerIDContext.Provider, { value: themeManager.id, children: next });
|
|
39
39
|
return forceClassName === !1 ? elementsWithContext : isWeb ? wrapThemeElements({
|
|
40
40
|
children: elementsWithContext,
|
|
41
41
|
themeState,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,aAAa;AACtB,OAAO,SAAS,UAAU,cAAc,YAAY,gBAAgB,cAAc;AAElF,SAAS,wBAAwB;AACjC,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
2
|
import React, { Children, cloneElement, forwardRef, isValidElement, useRef } from "react";
|
|
3
3
|
import { variableToString } from "../createVariable";
|
|
4
|
-
import {
|
|
4
|
+
import { ThemeManagerIDContext } from "../helpers/ThemeManagerContext";
|
|
5
5
|
import { useChangeThemeEffect } from "../hooks/useTheme";
|
|
6
6
|
import { ThemeDebug } from "./ThemeDebug";
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -25,7 +25,7 @@ Theme.avoidForwardRef = !0;
|
|
|
25
25
|
function getThemedChildren(themeState, children, props, isRoot = !1) {
|
|
26
26
|
const { themeManager, isNewTheme } = themeState;
|
|
27
27
|
if (!themeManager)
|
|
28
|
-
throw "\u274C";
|
|
28
|
+
throw new Error(process.env.NODE_ENV === "development" ? "\u274C No theme found, either incorrect name, potential duplicate tamagui deps, or TamaguiProvider not providing themes." : "\u274C");
|
|
29
29
|
const { shallow, forceClassName } = props, hasEverThemed = useRef(!1), shouldRenderChildrenWithTheme = isNewTheme || props.inverse || hasEverThemed.current || forceClassName || isRoot;
|
|
30
30
|
if (shouldRenderChildrenWithTheme && (hasEverThemed.current = !0), !shouldRenderChildrenWithTheme)
|
|
31
31
|
return children;
|
|
@@ -35,7 +35,7 @@ function getThemedChildren(themeState, children, props, isRoot = !1) {
|
|
|
35
35
|
void 0,
|
|
36
36
|
/* @__PURE__ */ jsx(Theme, { name: themeManager.state.parentName, children: child.props.children })
|
|
37
37
|
) : child));
|
|
38
|
-
const elementsWithContext = /* @__PURE__ */ jsx(
|
|
38
|
+
const elementsWithContext = /* @__PURE__ */ jsx(ThemeManagerIDContext.Provider, { value: themeManager.id, children: next });
|
|
39
39
|
return forceClassName === !1 ? elementsWithContext : isWeb ? wrapThemeElements({
|
|
40
40
|
children: elementsWithContext,
|
|
41
41
|
themeState,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,aAAa;AACtB,OAAO,SAAS,UAAU,cAAc,YAAY,gBAAgB,cAAc;AAElF,SAAS,wBAAwB;AACjC,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/ThemeDebug.tsx"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "AAAA,SAAS,uBAAuB;AAChC,SAAS,sBAAsB;AAC/B,SAAS,WAAW,OAAO,gBAAgB;AAC3C,SAAS,oBAAoB;AA6DvB,mBA+BE,KA7BE,YAFJ;AAxDN,IAAI;AAEG,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,UAAM,aAAa,gBAAgB,GAC7B,CAAC,eAAe,gBAAgB,IAAI,SAAS,CAAC,GAC9C,WAAW,eAAe,GAC1B,KAAK,MAAM;AAoCjB,WAlCI,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,qBACxB,SAAS,KAAK,YAAY,IAAI,KAIlC,UAAU,MAAM;AACd,iBAAW,cAAc,eAAe,cAAc,CAAC,MAAM,YAAY;AACvE,yBAAiB,CAAC,MAAM,EAAE,CAAC,GAC3B,QAAQ;AAAA,UACN,qBAAqB,WAAW,cAAc,EAAE,gBAAgB,WAAW,cAAc,eAAe,EAAE;AAAA,UAC1G;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH,GAAG,CAAC,WAAW,YAAY,CAAC,GAE5B,UAAU,MAAM;AAEd,YAAM,KAAK,YAAY,UAAU,GAAI;AACrC,aAAO,MAAM,aAAa,EAAS;AAAA,IACrC,GAAG,CAAC,CAAC,GAED,WAAW,qBAAqB,KAAK,CAAC,aACjC,WAIP,iCACG;AAAA;AAAA,QACC;AAAA,UAAC;AAAA;AAAA,YACC,OAAO;AAAA,cACL,YAAY;AAAA,YACd;AAAA,YACD;AAAA;AAAA,cACY;AAAA,cAAG;AAAA,cACb,KAAK;AAAA,gBACJ;AAAA,kBACE,MAAM,YAAY,OAAO;AAAA,kBACzB,WAAW,YAAY,OAAO;AAAA,kBAC9B,SAAS,WAAW;AAAA,kBACpB,gBAAgB,WAAW;AAAA,kBAC3B,QAAQ,WAAW,cAAc,MAAM;AAAA,kBACvC,IAAI,WAAW,cAAc;AAAA,kBAC7B,UAAU,WAAW,cAAc,eAAe;AAAA,kBAClD,OAAO,WAAW;AAAA,kBAClB;AAAA,kBACA,WAAW,CAAC,GAAI,WAAW,cAAe,iBAAoB,CAAC,CAAE,EAAE;AAAA,oBACjE;AAAA,kBACF;AAAA,kBACA,sBAAsB,WAAW,cAAe;AAAA,gBAClD;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA;AAAA;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,MAEA,oBAAC,SAAI,OAAO,EAAE,OAAO,MAAM,GAAI,cAAG;AAAA,MAEjC;AAAA,OACH;AAAA,EAEJ;AACA,SAAO;AACT;AAEA,WAAW,cAAiB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "1.84.
|
|
3
|
+
"version": "1.84.2",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -27,23 +27,25 @@
|
|
|
27
27
|
"reset.css"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@tamagui/compose-refs": "1.84.
|
|
31
|
-
"@tamagui/constants": "1.84.
|
|
32
|
-
"@tamagui/helpers": "1.84.
|
|
33
|
-
"@tamagui/normalize-css-color": "1.84.
|
|
34
|
-
"@tamagui/timer": "1.84.
|
|
35
|
-
"@tamagui/use-did-finish-ssr": "1.84.
|
|
36
|
-
"@tamagui/use-event": "1.84.
|
|
37
|
-
"@tamagui/use-force-update": "1.84.
|
|
30
|
+
"@tamagui/compose-refs": "1.84.2",
|
|
31
|
+
"@tamagui/constants": "1.84.2",
|
|
32
|
+
"@tamagui/helpers": "1.84.2",
|
|
33
|
+
"@tamagui/normalize-css-color": "1.84.2",
|
|
34
|
+
"@tamagui/timer": "1.84.2",
|
|
35
|
+
"@tamagui/use-did-finish-ssr": "1.84.2",
|
|
36
|
+
"@tamagui/use-event": "1.84.2",
|
|
37
|
+
"@tamagui/use-force-update": "1.84.2"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"react": "*"
|
|
40
|
+
"react": "*",
|
|
41
|
+
"react-dom": "*"
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
43
|
-
"@tamagui/build": "1.84.
|
|
44
|
+
"@tamagui/build": "1.84.2",
|
|
44
45
|
"@testing-library/react": "^14.0.0",
|
|
45
46
|
"csstype": "^3.0.10",
|
|
46
47
|
"react": "^18.2.0",
|
|
48
|
+
"react-dom": "^18.2.0",
|
|
47
49
|
"typescript": "^5.2.2",
|
|
48
50
|
"vitest": "^0.34.3"
|
|
49
51
|
},
|
|
@@ -36,7 +36,7 @@ export function getHasThemeUpdatingProps(props: ThemeProps) {
|
|
|
36
36
|
let uid = 0
|
|
37
37
|
|
|
38
38
|
export class ThemeManager {
|
|
39
|
-
id =
|
|
39
|
+
id = 0
|
|
40
40
|
themeListeners = new Set<ThemeListener>()
|
|
41
41
|
parentManager: ThemeManager | null = null
|
|
42
42
|
state: ThemeManagerState = emptyState
|
|
@@ -45,6 +45,9 @@ export class ThemeManager {
|
|
|
45
45
|
public props: ThemeProps = {},
|
|
46
46
|
parentManager?: ThemeManager | 'root' | null | undefined
|
|
47
47
|
) {
|
|
48
|
+
uid = (uid + 1) % Number.MAX_VALUE
|
|
49
|
+
this.id = uid
|
|
50
|
+
|
|
48
51
|
if (parentManager === 'root') {
|
|
49
52
|
this.updateStateFromProps(props, false)
|
|
50
53
|
return
|
|
@@ -305,9 +308,8 @@ function getState(
|
|
|
305
308
|
const pre = THEME_CLASSNAME_PREFIX
|
|
306
309
|
const className = !isWeb
|
|
307
310
|
? ''
|
|
308
|
-
: `${pre}sub_theme ${pre}${
|
|
309
|
-
|
|
310
|
-
}`
|
|
311
|
+
: `${pre}sub_theme ${pre}${!scheme || !restNames.length ? firstName : restNames.join('_')
|
|
312
|
+
}`
|
|
311
313
|
|
|
312
314
|
// because its a new theme the baseManager is now the parent
|
|
313
315
|
const parentState = (baseManager || parentManager)?.state
|