@tamagui/web 1.100.1 → 1.100.3
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/createComponent.js +10 -3
- package/dist/cjs/createComponent.js.map +1 -1
- package/dist/cjs/createComponent.native.js +10 -3
- package/dist/cjs/createComponent.native.js.map +2 -2
- package/dist/cjs/hooks/useDidHydrateOnce.js +37 -0
- package/dist/cjs/hooks/useDidHydrateOnce.js.map +6 -0
- package/dist/cjs/hooks/useDidHydrateOnce.native.js +34 -0
- package/dist/cjs/hooks/useDidHydrateOnce.native.js.map +6 -0
- package/dist/cjs/hooks/useMedia.js +29 -31
- package/dist/cjs/hooks/useMedia.js.map +2 -2
- package/dist/cjs/hooks/useMedia.native.js +30 -35
- package/dist/cjs/hooks/useMedia.native.js.map +2 -2
- package/dist/cjs/views/TamaguiProvider.js +3 -3
- package/dist/cjs/views/TamaguiProvider.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.native.js +3 -3
- package/dist/cjs/views/TamaguiProvider.native.js.map +2 -2
- package/dist/esm/createComponent.js +10 -2
- package/dist/esm/createComponent.js.map +1 -1
- package/dist/esm/createComponent.mjs +11 -2
- package/dist/esm/createComponent.native.js +10 -2
- package/dist/esm/createComponent.native.js.map +2 -2
- package/dist/esm/hooks/useDidHydrateOnce.js +21 -0
- package/dist/esm/hooks/useDidHydrateOnce.js.map +6 -0
- package/dist/esm/hooks/useDidHydrateOnce.mjs +17 -0
- package/dist/esm/hooks/useDidHydrateOnce.native.js +13 -0
- package/dist/esm/hooks/useDidHydrateOnce.native.js.map +6 -0
- package/dist/esm/hooks/useMedia.js +29 -30
- package/dist/esm/hooks/useMedia.js.map +2 -2
- package/dist/esm/hooks/useMedia.mjs +38 -32
- package/dist/esm/hooks/useMedia.native.js +32 -36
- package/dist/esm/hooks/useMedia.native.js.map +2 -2
- package/dist/esm/views/TamaguiProvider.js +3 -2
- package/dist/esm/views/TamaguiProvider.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.mjs +3 -2
- package/dist/esm/views/TamaguiProvider.native.js +3 -2
- package/dist/esm/views/TamaguiProvider.native.js.map +2 -2
- package/package.json +11 -11
- package/src/createComponent.tsx +12 -3
- package/src/hooks/useDidHydrateOnce.tsx +36 -0
- package/src/hooks/useMedia.tsx +62 -66
- package/src/views/TamaguiProvider.tsx +3 -0
- package/types/createComponent.d.ts.map +1 -1
- package/types/hooks/useDidHydrateOnce.d.ts +3 -0
- package/types/hooks/useDidHydrateOnce.d.ts.map +1 -0
- package/types/hooks/useMedia.d.ts +10 -5
- package/types/hooks/useMedia.d.ts.map +1 -1
- package/types/views/TamaguiProvider.d.ts.map +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/Users/n8/tamagui/packages/web/src/hooks/useMedia.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAASA,UAAUC,OAAOC,iCAAiC;AAC3D,
|
|
5
|
-
"names": ["isServer", "isWeb", "useIsomorphicLayoutEffect", "useRef", "useState", "getConfig", "matchMedia", "pseudoDescriptors", "getDisableSSR", "mediaState", "process", "env", "NODE_ENV", "Proxy", "get", "target", "key", "Error", "Reflect", "mediaQueryConfig", "getMedia", "mediaKeys", "Set", "isMediaKey", "has", "startsWith", "initState", "defaultMediaImportance", "Object", "keys", "length", "mediaKeysOrdered", "getMediaKeyImportance", "conf", "settings", "mediaPropOrder", "indexOf", "dispose", "mediaVersion", "configureMedia", "config", "media", "mediaQueryDefaultActive", "add", "assign", "disableSSR", "setupMediaListeners", "updateCurrentState", "unlisten", "forEach", "cb", "clear", "setupVersion", "update", "next", "getMatch", "matches", "str", "mediaObjectToString", "match", "addListener", "removeListener", "listeners", "flushing", "flushVersion", "Promise", "resolve", "then", "
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["isServer", "isWeb", "useIsomorphicLayoutEffect", "useRef", "useState", "getConfig", "matchMedia", "pseudoDescriptors", "getDisableSSR", "useDidHydrateOnce", "mediaState", "process", "env", "NODE_ENV", "Proxy", "get", "target", "key", "Error", "Reflect", "mediaQueryConfig", "getMedia", "mediaKeys", "Set", "isMediaKey", "has", "startsWith", "initState", "defaultMediaImportance", "Object", "keys", "length", "mediaKeysOrdered", "getMediaKeyImportance", "conf", "settings", "mediaPropOrder", "indexOf", "dispose", "mediaVersion", "configureMedia", "config", "media", "mediaQueryDefaultActive", "add", "assign", "disableSSR", "setupMediaListeners", "updateCurrentState", "unlisten", "forEach", "cb", "clear", "setupVersion", "update", "next", "getMatch", "matches", "str", "mediaObjectToString", "match", "addListener", "removeListener", "listeners", "flushing", "flushVersion", "Promise", "resolve", "then", "States", "WeakMap", "setMediaShouldUpdate", "ref", "props", "set", "getSnapshot", "touched", "prev", "enabled", "isDisabled", "testKeys", "hasntUpdated", "every", "useMedia", "uidIn", "componentContext", "uid", "hasHydrated", "isHydrated", "initialState", "componentState", "undefined", "state", "setState", "delete", "_", "getMediaImportanceIfMoreImportant", "mediaKey", "importancesUsed", "isSizeMedia", "importance", "camelToHyphen", "replace", "m", "toLowerCase", "cache", "cachedMediaKeyToQuery", "query", "res", "entries", "map", "feature", "value", "test", "join", "mediaKeyToQuery", "mediaKeyMatch", "dimensions", "mediaQueries", "result", "expectedVal", "isMax", "isWidth", "endsWith", "givenVal"]
|
|
6
6
|
}
|
|
@@ -3,6 +3,7 @@ import * as React from "react";
|
|
|
3
3
|
import { ComponentContext } from "../contexts/ComponentContext";
|
|
4
4
|
import { setupMediaListeners } from "../hooks/useMedia";
|
|
5
5
|
import { ThemeProvider } from "./ThemeProvider";
|
|
6
|
+
import { useDidHydrateOnceRoot } from "../hooks/useDidHydrateOnce";
|
|
6
7
|
import { jsx } from "react/jsx-runtime";
|
|
7
8
|
function TamaguiProvider({
|
|
8
9
|
children,
|
|
@@ -10,14 +11,14 @@ function TamaguiProvider({
|
|
|
10
11
|
config,
|
|
11
12
|
...themePropsProvider
|
|
12
13
|
}) {
|
|
13
|
-
return setupMediaListeners(), isClient && React.useInsertionEffect(() => {
|
|
14
|
+
return setupMediaListeners(), isClient && (useDidHydrateOnceRoot(), React.useInsertionEffect(() => {
|
|
14
15
|
if (config && (config.disableSSR || document.documentElement.classList.contains("t_unmounted") && document.documentElement.classList.remove("t_unmounted"), !disableInjectCSS)) {
|
|
15
16
|
const style = document.createElement("style");
|
|
16
17
|
return style.appendChild(document.createTextNode(config.getCSS())), document.head.appendChild(style), () => {
|
|
17
18
|
document.head.removeChild(style);
|
|
18
19
|
};
|
|
19
20
|
}
|
|
20
|
-
}, [config, disableInjectCSS]), /* @__PURE__ */ jsx(ComponentContext.Provider, { animationDriver: config?.animations, children: /* @__PURE__ */ jsx(
|
|
21
|
+
}, [config, disableInjectCSS])), /* @__PURE__ */ jsx(ComponentContext.Provider, { animationDriver: config?.animations, children: /* @__PURE__ */ jsx(
|
|
21
22
|
ThemeProvider,
|
|
22
23
|
{
|
|
23
24
|
themeClassNameOnRoot: config?.themeClassNameOnRoot,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/TamaguiProvider.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,gBAAgB;AACzB,YAAY,WAAW;AAEvB,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AAEpC,SAAS,qBAAqB;
|
|
4
|
+
"mappings": "AAAA,SAAS,gBAAgB;AACzB,YAAY,WAAW;AAEvB,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AAEpC,SAAS,qBAAqB;AAC9B,SAAS,6BAA6B;AAsChC;AApCC,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAyB;AACvB,6BAAoB,GAEhB,aAGF,sBAAsB,GAEtB,MAAM,mBAAmB,MAAM;AAC7B,QAAK,WACA,OAAO,cAGN,SAAS,gBAAgB,UAAU,SAAS,aAAa,KAC3D,SAAS,gBAAgB,UAAU,OAAO,aAAa,GAIvD,CAAC,mBAAkB;AACrB,YAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,mBAAM,YAAY,SAAS,eAAe,OAAO,OAAO,CAAC,CAAC,GAC1D,SAAS,KAAK,YAAY,KAAK,GACxB,MAAM;AACX,iBAAS,KAAK,YAAY,KAAK;AAAA,MACjC;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,gBAAgB,CAAC,IAI7B,oBAAC,iBAAiB,UAAjB,EAA0B,iBAAiB,QAAQ,YAClD;AAAA,IAAC;AAAA;AAAA,MACC,sBAAsB,QAAQ;AAAA,MAC9B,uBAAuB,QAAQ;AAAA,MAC9B,GAAG;AAAA,MACJ,cACE,mBAAmB,iBAAiB,SAAS,OAAO,KAAK,OAAO,MAAM,EAAE,CAAC,IAAI;AAAA,MAG9E;AAAA;AAAA,EACH,GACF;AAEJ;AAEA,gBAAgB,cAAiB;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,6 +3,7 @@ import * as React from "react";
|
|
|
3
3
|
import { ComponentContext } from "../contexts/ComponentContext.mjs";
|
|
4
4
|
import { setupMediaListeners } from "../hooks/useMedia.mjs";
|
|
5
5
|
import { ThemeProvider } from "./ThemeProvider.mjs";
|
|
6
|
+
import { useDidHydrateOnceRoot } from "../hooks/useDidHydrateOnce.mjs";
|
|
6
7
|
import { jsx } from "react/jsx-runtime";
|
|
7
8
|
function TamaguiProvider({
|
|
8
9
|
children,
|
|
@@ -10,14 +11,14 @@ function TamaguiProvider({
|
|
|
10
11
|
config,
|
|
11
12
|
...themePropsProvider
|
|
12
13
|
}) {
|
|
13
|
-
return setupMediaListeners(), isClient && React.useInsertionEffect(() => {
|
|
14
|
+
return setupMediaListeners(), isClient && (useDidHydrateOnceRoot(), React.useInsertionEffect(() => {
|
|
14
15
|
if (config && (config.disableSSR || document.documentElement.classList.contains("t_unmounted") && document.documentElement.classList.remove("t_unmounted"), !disableInjectCSS)) {
|
|
15
16
|
const style = document.createElement("style");
|
|
16
17
|
return style.appendChild(document.createTextNode(config.getCSS())), document.head.appendChild(style), () => {
|
|
17
18
|
document.head.removeChild(style);
|
|
18
19
|
};
|
|
19
20
|
}
|
|
20
|
-
}, [config, disableInjectCSS]), /* @__PURE__ */jsx(ComponentContext.Provider, {
|
|
21
|
+
}, [config, disableInjectCSS])), /* @__PURE__ */jsx(ComponentContext.Provider, {
|
|
21
22
|
animationDriver: config?.animations,
|
|
22
23
|
children: /* @__PURE__ */jsx(ThemeProvider, {
|
|
23
24
|
themeClassNameOnRoot: config?.themeClassNameOnRoot,
|
|
@@ -4,6 +4,7 @@ import * as React from "react";
|
|
|
4
4
|
import { ComponentContext } from "../contexts/ComponentContext";
|
|
5
5
|
import { setupMediaListeners } from "../hooks/useMedia";
|
|
6
6
|
import { ThemeProvider } from "./ThemeProvider";
|
|
7
|
+
import { useDidHydrateOnceRoot } from "../hooks/useDidHydrateOnce";
|
|
7
8
|
function _define_property(obj, key, value) {
|
|
8
9
|
return key in obj ? Object.defineProperty(obj, key, {
|
|
9
10
|
value,
|
|
@@ -61,7 +62,7 @@ function TamaguiProvider(_param) {
|
|
|
61
62
|
"disableInjectCSS",
|
|
62
63
|
"config"
|
|
63
64
|
]);
|
|
64
|
-
setupMediaListeners(), isClient && React.useInsertionEffect(function() {
|
|
65
|
+
setupMediaListeners(), isClient && (useDidHydrateOnceRoot(), React.useInsertionEffect(function() {
|
|
65
66
|
if (config && (config.disableSSR || document.documentElement.classList.contains("t_unmounted") && document.documentElement.classList.remove("t_unmounted"), !disableInjectCSS)) {
|
|
66
67
|
var style = document.createElement("style");
|
|
67
68
|
return style.appendChild(document.createTextNode(config.getCSS())), document.head.appendChild(style), function() {
|
|
@@ -71,7 +72,7 @@ function TamaguiProvider(_param) {
|
|
|
71
72
|
}, [
|
|
72
73
|
config,
|
|
73
74
|
disableInjectCSS
|
|
74
|
-
]);
|
|
75
|
+
]));
|
|
75
76
|
var _themePropsProvider_defaultTheme;
|
|
76
77
|
return /* @__PURE__ */ _jsx(ComponentContext.Provider, {
|
|
77
78
|
animationDriver: config == null ? void 0 : config.animations,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Users/n8/tamagui/packages/web/src/views/TamaguiProvider.tsx"],
|
|
4
|
-
"mappings": ";AAAA,SAASA,gBAAgB;AACzB,YAAYC,WAAW;AAEvB,SAASC,wBAAwB;AACjC,SAASC,2BAA2B;AAEpC,SAASC,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
5
|
-
"names": ["isClient", "React", "ComponentContext", "setupMediaListeners", "ThemeProvider", "TamaguiProvider", "children", "disableInjectCSS", "config", "themePropsProvider", "useInsertionEffect", "disableSSR", "document", "documentElement", "classList", "contains", "remove", "style", "createElement", "appendChild", "createTextNode", "getCSS", "head", "removeChild", "Provider", "animationDriver", "animations", "themeClassNameOnRoot", "disableRootThemeClass", "defaultTheme", "Object", "keys", "themes"]
|
|
4
|
+
"mappings": ";AAAA,SAASA,gBAAgB;AACzB,YAAYC,WAAW;AAEvB,SAASC,wBAAwB;AACjC,SAASC,2BAA2B;AAEpC,SAASC,qBAAqB;AAC9B,SAASC,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE/B,SAASC,gBAAgB,QAAA;MAC9BC,WAD8B,OAC9BA,UACAC,mBAF8B,OAE9BA,kBACAC,SAH8B,OAG9BA,QACGC,qBAAAA,2BAJ2B,QAAA;IAC9BH;IACAC;IACAC;;AAGAN,sBAAAA,GAEIH,aAGFK,sBAAAA,GAEAJ,MAAMU,mBAAmB,WAAA;AACvB,QAAKF,WACAA,OAAOG,cAGNC,SAASC,gBAAgBC,UAAUC,SAAS,aAAA,KAC9CH,SAASC,gBAAgBC,UAAUE,OAAO,aAAA,GAI1C,CAACT,mBAAkB;AACrB,UAAMU,QAAQL,SAASM,cAAc,OAAA;AACrCD,mBAAME,YAAYP,SAASQ,eAAeZ,OAAOa,OAAM,CAAA,CAAA,GACvDT,SAASU,KAAKH,YAAYF,KAAAA,GACnB,WAAA;AACLL,iBAASU,KAAKC,YAAYN,KAAAA;MAC5B;IACF;EACF,GAAG;IAACT;IAAQD;GAAiB;MAUvBE;AAPR,SACE,qBAACR,iBAAiBuB,UAAQ;IAACC,iBAAiBjB,UAAAA,OAAAA,SAAAA,OAAQkB;cAClD,qBAACvB,eAAAA,qBAAAA,eAAAA;MACCwB,sBAAsBnB,UAAAA,OAAAA,SAAAA,OAAQmB;MAC9BC,uBAAuBpB,UAAAA,OAAAA,SAAAA,OAAQoB;OAC3BnB,kBAAAA,GAAAA;MACJoB,eACEpB,mCAAAA,mBAAmBoB,kBAAY,QAA/BpB,qCAAAA,SAAAA,mCAAoCD,SAASsB,OAAOC,KAAKvB,OAAOwB,MAAM,EAAE,CAAA,IAAK;;;;AAOvF;AAEA3B,gBAAgB,cAAiB;",
|
|
5
|
+
"names": ["isClient", "React", "ComponentContext", "setupMediaListeners", "ThemeProvider", "useDidHydrateOnceRoot", "TamaguiProvider", "children", "disableInjectCSS", "config", "themePropsProvider", "useInsertionEffect", "disableSSR", "document", "documentElement", "classList", "contains", "remove", "style", "createElement", "appendChild", "createTextNode", "getCSS", "head", "removeChild", "Provider", "animationDriver", "animations", "themeClassNameOnRoot", "disableRootThemeClass", "defaultTheme", "Object", "keys", "themes"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "1.100.
|
|
3
|
+
"version": "1.100.3",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -27,18 +27,18 @@
|
|
|
27
27
|
"reset.css"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@tamagui/compose-refs": "1.100.
|
|
31
|
-
"@tamagui/constants": "1.100.
|
|
32
|
-
"@tamagui/helpers": "1.100.
|
|
33
|
-
"@tamagui/normalize-css-color": "1.100.
|
|
34
|
-
"@tamagui/timer": "1.100.
|
|
35
|
-
"@tamagui/types": "1.100.
|
|
36
|
-
"@tamagui/use-did-finish-ssr": "1.100.
|
|
37
|
-
"@tamagui/use-event": "1.100.
|
|
38
|
-
"@tamagui/use-force-update": "1.100.
|
|
30
|
+
"@tamagui/compose-refs": "1.100.3",
|
|
31
|
+
"@tamagui/constants": "1.100.3",
|
|
32
|
+
"@tamagui/helpers": "1.100.3",
|
|
33
|
+
"@tamagui/normalize-css-color": "1.100.3",
|
|
34
|
+
"@tamagui/timer": "1.100.3",
|
|
35
|
+
"@tamagui/types": "1.100.3",
|
|
36
|
+
"@tamagui/use-did-finish-ssr": "1.100.3",
|
|
37
|
+
"@tamagui/use-event": "1.100.3",
|
|
38
|
+
"@tamagui/use-force-update": "1.100.3"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@tamagui/build": "1.100.
|
|
41
|
+
"@tamagui/build": "1.100.3",
|
|
42
42
|
"@testing-library/react": "^14.0.0",
|
|
43
43
|
"csstype": "^3.0.10",
|
|
44
44
|
"react": "^18.2.0",
|
package/src/createComponent.tsx
CHANGED
|
@@ -10,6 +10,7 @@ import React, {
|
|
|
10
10
|
useContext,
|
|
11
11
|
useEffect,
|
|
12
12
|
useId,
|
|
13
|
+
useLayoutEffect,
|
|
13
14
|
useMemo,
|
|
14
15
|
useRef,
|
|
15
16
|
useState,
|
|
@@ -68,6 +69,7 @@ import type {
|
|
|
68
69
|
import { Slot } from './views/Slot'
|
|
69
70
|
import { getThemedChildren } from './views/Theme'
|
|
70
71
|
import { ThemeDebug } from './views/ThemeDebug'
|
|
72
|
+
import { useDidHydrateOnce } from './hooks/useDidHydrateOnce'
|
|
71
73
|
|
|
72
74
|
/**
|
|
73
75
|
* All things that need one-time setup after createTamagui is called
|
|
@@ -195,9 +197,16 @@ export const useComponentState = (
|
|
|
195
197
|
|
|
196
198
|
const hasEnterState = hasEnterStyle || isEntering
|
|
197
199
|
|
|
200
|
+
const didHydrateOnce = useDidHydrateOnce()
|
|
201
|
+
|
|
198
202
|
const initialState =
|
|
199
|
-
hasEnterState || hasRNAnimation
|
|
200
|
-
?
|
|
203
|
+
hasEnterState || (!didHydrateOnce && hasRNAnimation)
|
|
204
|
+
? // on the very first render we switch all spring animation drivers to css rendering
|
|
205
|
+
// this is because we need to use css variables, which they don't support to do proper SSR
|
|
206
|
+
// without flickers of the wrong colors.
|
|
207
|
+
// but once we do that initial hydration and we are in client side rendering mode,
|
|
208
|
+
// we can avoid the extra re-render on mount
|
|
209
|
+
isWeb && !didHydrateOnce
|
|
201
210
|
? defaultComponentState
|
|
202
211
|
: defaultComponentStateShouldEnter
|
|
203
212
|
: defaultComponentStateMounted
|
|
@@ -912,7 +921,7 @@ export function createComponent<
|
|
|
912
921
|
return
|
|
913
922
|
}
|
|
914
923
|
|
|
915
|
-
if (state.unmounted === true) {
|
|
924
|
+
if (state.unmounted === true && hasEnterStyle) {
|
|
916
925
|
setStateShallow({ unmounted: 'should-enter' })
|
|
917
926
|
return
|
|
918
927
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { useEffect } from 'react'
|
|
2
|
+
|
|
3
|
+
let didHydrateOnce = false
|
|
4
|
+
|
|
5
|
+
// if set on the root tamagui provider, we now can know when things are fully hydrated
|
|
6
|
+
// we cheat a bit why just resetting as we render components below
|
|
7
|
+
|
|
8
|
+
export function useDidHydrateOnceRoot() {
|
|
9
|
+
if (process.env.TAMAGUI_TARGET !== 'web') {
|
|
10
|
+
return
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
const tm = setInterval(() => {
|
|
15
|
+
if (Date.now() - last > 32) {
|
|
16
|
+
didHydrateOnce = true
|
|
17
|
+
clearInterval(tm)
|
|
18
|
+
}
|
|
19
|
+
}, 16)
|
|
20
|
+
return () => {
|
|
21
|
+
clearInterval(tm)
|
|
22
|
+
}
|
|
23
|
+
}, [])
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
let last = Date.now()
|
|
27
|
+
|
|
28
|
+
export function useDidHydrateOnce() {
|
|
29
|
+
if (process.env.TAMAGUI_TARGET !== 'web') {
|
|
30
|
+
return true
|
|
31
|
+
}
|
|
32
|
+
if (!didHydrateOnce) {
|
|
33
|
+
last = Date.now()
|
|
34
|
+
}
|
|
35
|
+
return didHydrateOnce
|
|
36
|
+
}
|
package/src/hooks/useMedia.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isServer, isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'
|
|
2
|
-
import { useRef, useState, useSyncExternalStore } from 'react'
|
|
2
|
+
import { useId, useRef, useState, useSyncExternalStore } from 'react'
|
|
3
3
|
|
|
4
4
|
import { getConfig } from '../config'
|
|
5
5
|
import { matchMedia } from '../helpers/matchMedia'
|
|
@@ -15,6 +15,7 @@ import type {
|
|
|
15
15
|
UseMediaState,
|
|
16
16
|
} from '../types'
|
|
17
17
|
import { getDisableSSR } from './useDisableSSR'
|
|
18
|
+
import { useDidHydrateOnce } from './useDidHydrateOnce'
|
|
18
19
|
|
|
19
20
|
export let mediaState: MediaQueryState =
|
|
20
21
|
// development only safeguard
|
|
@@ -119,7 +120,9 @@ export function setupMediaListeners() {
|
|
|
119
120
|
setupVersion = mediaVersion
|
|
120
121
|
|
|
121
122
|
// hmr, undo existing before re-binding
|
|
122
|
-
|
|
123
|
+
if (process.env.NODE_ENV === 'development') {
|
|
124
|
+
unlisten()
|
|
125
|
+
}
|
|
123
126
|
|
|
124
127
|
for (const key in mediaQueryConfig) {
|
|
125
128
|
const str = mediaObjectToString(mediaQueryConfig[key], key)
|
|
@@ -167,92 +170,85 @@ type MediaKeysState = {
|
|
|
167
170
|
}
|
|
168
171
|
|
|
169
172
|
type UpdateState = {
|
|
170
|
-
enabled
|
|
171
|
-
keys
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
const shouldUpdate = new WeakMap<any, UpdateState>()
|
|
175
|
-
|
|
176
|
-
export function setMediaShouldUpdate(ref: any, props: UpdateState) {
|
|
177
|
-
return shouldUpdate.set(ref, props)
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
type UseMediaInternalState = {
|
|
173
|
+
enabled?: boolean
|
|
174
|
+
keys?: string[]
|
|
181
175
|
prev: MediaKeysState
|
|
182
176
|
touched?: Set<string>
|
|
183
177
|
}
|
|
184
178
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
179
|
+
const States = new WeakMap<any, UpdateState>()
|
|
180
|
+
|
|
181
|
+
export function setMediaShouldUpdate(ref: any, props: Partial<UpdateState>) {
|
|
182
|
+
return States.set(ref, {
|
|
183
|
+
...(States.get(ref) as any),
|
|
184
|
+
...props,
|
|
185
|
+
})
|
|
188
186
|
}
|
|
189
187
|
|
|
190
|
-
function
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
const [state, setState] = useState(getServerSnapshot)
|
|
188
|
+
function getSnapshot({ touched, prev, enabled, keys }: UpdateState) {
|
|
189
|
+
const isDisabled = enabled === false
|
|
190
|
+
if (isDisabled) {
|
|
191
|
+
return prev
|
|
192
|
+
}
|
|
196
193
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
}
|
|
204
|
-
return prev
|
|
205
|
-
})
|
|
206
|
-
})
|
|
207
|
-
}, [])
|
|
194
|
+
const testKeys = keys || touched ? [...(keys || []), ...(touched || [])] : null
|
|
195
|
+
const hasntUpdated =
|
|
196
|
+
!testKeys || testKeys?.every((key) => mediaState[key] === prev[key])
|
|
197
|
+
if (hasntUpdated) {
|
|
198
|
+
return prev
|
|
199
|
+
}
|
|
208
200
|
|
|
209
|
-
return
|
|
201
|
+
return mediaState
|
|
210
202
|
}
|
|
211
203
|
|
|
212
|
-
export function useMedia(
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
const
|
|
217
|
-
|
|
218
|
-
const state = useLayoutExternalStore<MediaQueryState>(
|
|
219
|
-
subscribe,
|
|
220
|
-
() => {
|
|
221
|
-
if (!internal.current) {
|
|
222
|
-
return initialState
|
|
223
|
-
}
|
|
204
|
+
export function useMedia(
|
|
205
|
+
uidIn?: any,
|
|
206
|
+
componentContext?: ComponentContextI
|
|
207
|
+
): UseMediaState {
|
|
208
|
+
const uid = uidIn ?? useRef()
|
|
224
209
|
|
|
225
|
-
|
|
226
|
-
|
|
210
|
+
const hasHydrated = useDidHydrateOnce()
|
|
211
|
+
const isHydrated = !isWeb || getDisableSSR(componentContext) || hasHydrated
|
|
212
|
+
const initialState = isHydrated ? mediaState : initState
|
|
227
213
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
214
|
+
let componentState = States.get(uid)
|
|
215
|
+
if (!componentState) {
|
|
216
|
+
componentState = { prev: initialState }
|
|
217
|
+
States.set(uid, componentState)
|
|
218
|
+
}
|
|
231
219
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
((!componentState || componentState.enabled) && touched ? [...touched] : null)
|
|
220
|
+
// reset on each render
|
|
221
|
+
componentState.touched = undefined
|
|
235
222
|
|
|
236
|
-
|
|
237
|
-
!testKeys || testKeys?.every((key) => mediaState[key] === prev[key])
|
|
223
|
+
const [state, setState] = useState(initialState)
|
|
238
224
|
|
|
239
|
-
|
|
225
|
+
useIsomorphicLayoutEffect(() => {
|
|
226
|
+
function update() {
|
|
227
|
+
setState((prev) => {
|
|
228
|
+
const componentState = States.get(uid)!
|
|
229
|
+
const next = getSnapshot(componentState)
|
|
230
|
+
if (next !== prev) {
|
|
231
|
+
componentState.prev = next
|
|
232
|
+
return next
|
|
233
|
+
}
|
|
240
234
|
return prev
|
|
241
|
-
}
|
|
235
|
+
})
|
|
236
|
+
}
|
|
242
237
|
|
|
243
|
-
|
|
238
|
+
// layout effects evidently run before the rest of render?
|
|
239
|
+
Promise.resolve().then(update)
|
|
244
240
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
241
|
+
listeners.add(update)
|
|
242
|
+
return () => {
|
|
243
|
+
listeners.delete(update)
|
|
244
|
+
}
|
|
245
|
+
}, [uid])
|
|
249
246
|
|
|
250
247
|
return new Proxy(state, {
|
|
251
248
|
get(_, key) {
|
|
252
249
|
if (typeof key === 'string') {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
internal.current.touched.add(key)
|
|
250
|
+
componentState.touched ||= new Set()
|
|
251
|
+
componentState.touched.add(key)
|
|
256
252
|
}
|
|
257
253
|
return Reflect.get(state, key)
|
|
258
254
|
},
|
|
@@ -5,6 +5,7 @@ import { ComponentContext } from '../contexts/ComponentContext'
|
|
|
5
5
|
import { setupMediaListeners } from '../hooks/useMedia'
|
|
6
6
|
import type { TamaguiProviderProps } from '../types'
|
|
7
7
|
import { ThemeProvider } from './ThemeProvider'
|
|
8
|
+
import { useDidHydrateOnceRoot } from '../hooks/useDidHydrateOnce'
|
|
8
9
|
|
|
9
10
|
export function TamaguiProvider({
|
|
10
11
|
children,
|
|
@@ -17,6 +18,8 @@ export function TamaguiProvider({
|
|
|
17
18
|
if (isClient) {
|
|
18
19
|
// inject CSS if asked to (not SSR compliant)
|
|
19
20
|
|
|
21
|
+
useDidHydrateOnceRoot()
|
|
22
|
+
|
|
20
23
|
React.useInsertionEffect(() => {
|
|
21
24
|
if (!config) return
|
|
22
25
|
if (!config.disableSSR) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAaN,MAAM,OAAO,CAAA;AAyBd,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAG/E,OAAO,KAAK,EACV,iBAAiB,EACjB,SAAS,EAKT,cAAc,EACd,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,YAAY,EAEZ,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,SAAS,EAIV,MAAM,SAAS,CAAA;AAehB,KAAK,iBAAiB,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAEpF,eAAO,MAAM,kBAAkB,wBAA+B,CAAA;AAkE9D,eAAO,MAAM,iBAAiB,UACrB,UAAU,GAAG,SAAS,GAAG,OAAO,MAAM,EAAE,GAAG,CAAC,+BACtB,iBAAiB,gBAChC,YAAY,UAClB,qBAAqB;;;;;;;;;;;;;;;;;;;CA4L9B,CAAA;AAuBD,wBAAgB,eAAe,CAC7B,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EACnD,GAAG,SAAS,cAAc,GAAG,cAAc,EAC3C,SAAS,GAAG,KAAK,EACjB,UAAU,SAAS,MAAM,GAAG,KAAK,EACjC,YAAY,EAAE,YAAY,wEAyjC3B;AAsBD,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,OAEjD;yBAFe,QAAQ;;;AAkBxB,eAAO,MAAM,MAAM,yFA0CjB,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC5B,SAAS,CAAC,EAAE,cAAc,GAAG,OAAO,CAAA;IACpC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB,CAAA;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,mBAiGxD;AAwDD,eAAO,MAAM,UAAU,UAAW,GAAG,QAQpC,CAAA;AAED,eAAO,MAAM,uBAAuB,uFAOjC;IACD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,qBAAqB,CAAC,GAAG,SAAS,KAAK,IAAI,CAAA;IAC5E,YAAY,CAAC,EAAE,IAAI,MAAM,CAAC,CAAA;IAC1B,WAAW,CAAC,EAAE,IAAI,MAAM,CAAC,CAAA;IACzB,gBAAgB,EAAE,iBAAiB,CAAA;IACnC,KAAK,EAAE,qBAAqB,CAAA;CAC7B,4CAqCA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDidHydrateOnce.d.ts","sourceRoot":"","sources":["../../src/hooks/useDidHydrateOnce.tsx"],"names":[],"mappings":"AAOA,wBAAgB,qBAAqB,SAgBpC;AAID,wBAAgB,iBAAiB,YAQhC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ComponentContextI, IsMediaType, MediaQueries,
|
|
1
|
+
import type { ComponentContextI, IsMediaType, MediaQueries, MediaQueryObject, MediaQueryState, TamaguiInternalConfig, UseMediaState } from '../types';
|
|
2
2
|
export declare let mediaState: MediaQueryState;
|
|
3
3
|
export declare const mediaQueryConfig: MediaQueries;
|
|
4
4
|
export declare const getMedia: () => MediaQueryState;
|
|
@@ -7,12 +7,17 @@ export declare const isMediaKey: (key: string) => IsMediaType;
|
|
|
7
7
|
export declare const getMediaKeyImportance: (key: string) => number;
|
|
8
8
|
export declare const configureMedia: (config: TamaguiInternalConfig) => void;
|
|
9
9
|
export declare function setupMediaListeners(): void;
|
|
10
|
+
type MediaKeysState = {
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
};
|
|
10
13
|
type UpdateState = {
|
|
11
|
-
enabled
|
|
12
|
-
keys
|
|
14
|
+
enabled?: boolean;
|
|
15
|
+
keys?: string[];
|
|
16
|
+
prev: MediaKeysState;
|
|
17
|
+
touched?: Set<string>;
|
|
13
18
|
};
|
|
14
|
-
export declare function setMediaShouldUpdate(ref: any, props: UpdateState): WeakMap<any, UpdateState>;
|
|
15
|
-
export declare function useMedia(
|
|
19
|
+
export declare function setMediaShouldUpdate(ref: any, props: Partial<UpdateState>): WeakMap<any, UpdateState>;
|
|
20
|
+
export declare function useMedia(uidIn?: any, componentContext?: ComponentContextI): UseMediaState;
|
|
16
21
|
export declare const getMediaImportanceIfMoreImportant: (mediaKey: string, key: string, importancesUsed: Record<string, number>, isSizeMedia: boolean) => number | null;
|
|
17
22
|
export declare function mediaObjectToString(query: string | MediaQueryObject, key?: string): string;
|
|
18
23
|
export declare function mediaKeyToQuery(key: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMedia.d.ts","sourceRoot":"","sources":["../../src/hooks/useMedia.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,EACX,YAAY,
|
|
1
|
+
{"version":3,"file":"useMedia.d.ts","sourceRoot":"","sources":["../../src/hooks/useMedia.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,EACX,YAAY,EAEZ,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACd,MAAM,UAAU,CAAA;AAIjB,eAAO,IAAI,UAAU,EAAE,eAmBN,CAAA;AAEjB,eAAO,MAAM,gBAAgB,EAAE,YAAiB,CAAA;AAEhD,eAAO,MAAM,QAAQ,uBAAmB,CAAA;AAExC,eAAO,MAAM,SAAS,aAAoB,CAAA;AAE1C,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,WAQxC,CAAA;AAUD,eAAO,MAAM,qBAAqB,QAAS,MAAM,WAchD,CAAA;AAMD,eAAO,MAAM,cAAc,WAAY,qBAAqB,SAiB3D,CAAA;AAaD,wBAAgB,mBAAmB,SAmClC;AAkBD,KAAK,cAAc,GAAG;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB,CAAA;AAED,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,IAAI,EAAE,cAAc,CAAA;IACpB,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACtB,CAAA;AAID,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,6BAKzE;AAkBD,wBAAgB,QAAQ,CACtB,KAAK,CAAC,EAAE,GAAG,EACX,gBAAgB,CAAC,EAAE,iBAAiB,GACnC,aAAa,CAiDf;AAED,eAAO,MAAM,iCAAiC,aAClC,MAAM,OACX,MAAM,mBACM,OAAO,MAAM,EAAE,MAAM,CAAC,eAC1B,OAAO,kBAQrB,CAAA;AASD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,EAAE,GAAG,CAAC,EAAE,MAAM,UAwBjF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,UAE1C;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,WAY9C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TamaguiProvider.d.ts","sourceRoot":"","sources":["../../src/views/TamaguiProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"TamaguiProvider.d.ts","sourceRoot":"","sources":["../../src/views/TamaguiProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAIpD,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,GAAG,kBAAkB,EACtB,EAAE,oBAAoB,2CA2CtB;yBAhDe,eAAe"}
|