@multiplatform.one/router 8.2.2 → 8.4.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/hooks/index.native.js.map +1 -1
- package/dist/cjs/hooks/useUrlState.native.js +1 -1
- package/dist/cjs/hooks/useUrlState.native.js.map +1 -1
- package/dist/cjs/index.native.js +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/index.storybook.native.js +1 -1
- package/dist/cjs/index.storybook.native.js.map +1 -1
- package/dist/cjs/router/EmptyRouter.native.js.map +1 -1
- package/dist/cjs/router/ReactRouter.native.js.map +1 -1
- package/dist/cjs/router/index.native.js +18 -6
- package/dist/cjs/router/index.native.js.map +1 -1
- package/dist/cjs/router/index.storybook-expo.native.js.map +1 -1
- package/dist/cjs/router/index.storybook.native.js.map +1 -1
- package/dist/cjs/router/index.webext.native.js.map +1 -1
- package/dist/cjs/router/nativeFallback.cjs +45 -0
- package/dist/cjs/router/nativeFallback.native.js +53 -0
- package/dist/cjs/router/nativeFallback.native.js.map +1 -0
- package/dist/cjs/seam/DomNavigationHost.cjs +29 -2
- package/dist/cjs/seam/DomNavigationHost.native.js +34 -2
- package/dist/cjs/seam/DomNavigationHost.native.js.map +1 -1
- package/dist/cjs/seam/index.native.js.map +1 -1
- package/dist/cjs/seam/navigator.native.js.map +1 -1
- package/dist/cjs/seam/oneAdapter.native.js.map +1 -1
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/esm/hooks/index.native.js.map +1 -1
- package/dist/esm/hooks/useUrlState.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/index.storybook.native.js.map +1 -1
- package/dist/esm/router/EmptyRouter.native.js.map +1 -1
- package/dist/esm/router/ReactRouter.native.js.map +1 -1
- package/dist/esm/router/index.native.js +15 -3
- package/dist/esm/router/index.native.js.map +1 -1
- package/dist/esm/router/index.storybook-expo.native.js.map +1 -1
- package/dist/esm/router/index.storybook.native.js.map +1 -1
- package/dist/esm/router/index.webext.native.js.map +1 -1
- package/dist/esm/router/nativeFallback.mjs +19 -0
- package/dist/esm/router/nativeFallback.mjs.map +1 -0
- package/dist/esm/router/nativeFallback.native.js +24 -0
- package/dist/esm/router/nativeFallback.native.js.map +1 -0
- package/dist/esm/seam/DomNavigationHost.mjs +30 -3
- package/dist/esm/seam/DomNavigationHost.mjs.map +1 -1
- package/dist/esm/seam/DomNavigationHost.native.js +35 -3
- package/dist/esm/seam/DomNavigationHost.native.js.map +1 -1
- package/dist/esm/seam/index.native.js.map +1 -1
- package/dist/esm/seam/navigator.native.js.map +1 -1
- package/dist/esm/seam/oneAdapter.native.js.map +1 -1
- package/dist/esm/types.native.js.map +1 -1
- package/dist/jsx/router/index.native.js +18 -6
- package/dist/jsx/router/index.native.js.map +1 -1
- package/dist/jsx/router/nativeFallback.mjs +19 -0
- package/dist/jsx/router/nativeFallback.mjs.map +1 -0
- package/dist/jsx/router/nativeFallback.native.js +53 -0
- package/dist/jsx/router/nativeFallback.native.js.map +1 -0
- package/dist/jsx/seam/DomNavigationHost.mjs +30 -3
- package/dist/jsx/seam/DomNavigationHost.mjs.map +1 -1
- package/dist/jsx/seam/DomNavigationHost.native.js +34 -2
- package/dist/jsx/seam/DomNavigationHost.native.js.map +1 -1
- package/package.json +15 -4
- package/src/router/index.native.tsx +18 -3
- package/src/router/nativeFallback.spec.tsx +46 -0
- package/src/router/nativeFallback.tsx +19 -0
- package/src/seam/DomNavigationHost.routeHold.spec.tsx +78 -0
- package/src/seam/DomNavigationHost.tsx +34 -3
- package/types/router/index.native.d.ts +4 -2
- package/types/router/index.native.d.ts.map +1 -1
- package/types/router/nativeFallback.d.ts +10 -0
- package/types/router/nativeFallback.d.ts.map +1 -0
- package/types/seam/DomNavigationHost.d.ts.map +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Suspense, useEffect, useRef } from "react";
|
|
2
|
+
import { Suspense, useCallback, useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
3
3
|
import { RouteTagContext, stackNavigator, useNavState } from "./navigator.native.js";
|
|
4
4
|
function _class_call_check(instance, Constructor) {
|
|
5
5
|
if (!(instance instanceof Constructor)) {
|
|
@@ -115,6 +115,19 @@ function useZeroHeightWarning(ref) {
|
|
|
115
115
|
};
|
|
116
116
|
}, [ref]);
|
|
117
117
|
}
|
|
118
|
+
function PageLoading(param) {
|
|
119
|
+
var {
|
|
120
|
+
tag,
|
|
121
|
+
onPending
|
|
122
|
+
} = param;
|
|
123
|
+
useLayoutEffect(function () {
|
|
124
|
+
onPending(tag, true);
|
|
125
|
+
return function () {
|
|
126
|
+
return onPending(tag, false);
|
|
127
|
+
};
|
|
128
|
+
}, [tag, onPending]);
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
118
131
|
function DomNavigationHost(param) {
|
|
119
132
|
var {
|
|
120
133
|
routes,
|
|
@@ -144,6 +157,21 @@ function DomNavigationHost(param) {
|
|
|
144
157
|
}, []);
|
|
145
158
|
useZeroHeightWarning(hostRef);
|
|
146
159
|
var nav = useNavState();
|
|
160
|
+
var pendingRef = useRef(/* @__PURE__ */new Set());
|
|
161
|
+
var [, setPendingVersion] = useState(0);
|
|
162
|
+
var markPending = useCallback(function (tag, isPending) {
|
|
163
|
+
if (pendingRef.current.has(tag) === isPending) return;
|
|
164
|
+
if (isPending) pendingRef.current.add(tag);else pendingRef.current.delete(tag);
|
|
165
|
+
setPendingVersion(function (version) {
|
|
166
|
+
return version + 1;
|
|
167
|
+
});
|
|
168
|
+
}, []);
|
|
169
|
+
var settledRef = useRef(nav.tag);
|
|
170
|
+
useLayoutEffect(function () {
|
|
171
|
+
if (!pendingRef.current.has(nav.tag)) settledRef.current = nav.tag;
|
|
172
|
+
});
|
|
173
|
+
var pending = pendingRef.current;
|
|
174
|
+
var shown = pending.has(nav.tag) ? settledRef.current : nav.tag;
|
|
147
175
|
return /* @__PURE__ */_jsx("div", {
|
|
148
176
|
ref: hostRef,
|
|
149
177
|
style: {
|
|
@@ -156,11 +184,12 @@ function DomNavigationHost(param) {
|
|
|
156
184
|
...style
|
|
157
185
|
},
|
|
158
186
|
children: routes.map(function (route) {
|
|
159
|
-
var active =
|
|
187
|
+
var active = shown === route.tag;
|
|
160
188
|
var mounted = stackNavigator.isVisited(route.tag);
|
|
161
189
|
return /* @__PURE__ */_jsx("div", {
|
|
162
190
|
"data-seam-page": route.tag,
|
|
163
191
|
"data-seam-active": active ? "true" : "false",
|
|
192
|
+
"data-seam-pending": pending.has(route.tag) ? "true" : void 0,
|
|
164
193
|
style: {
|
|
165
194
|
...PAGE_STYLE,
|
|
166
195
|
display: active ? "flex" : "none"
|
|
@@ -168,7 +197,10 @@ function DomNavigationHost(param) {
|
|
|
168
197
|
children: /* @__PURE__ */_jsx(RouteTagContext.Provider, {
|
|
169
198
|
value: route.tag,
|
|
170
199
|
children: /* @__PURE__ */_jsx(Suspense, {
|
|
171
|
-
fallback:
|
|
200
|
+
fallback: /* @__PURE__ */_jsx(PageLoading, {
|
|
201
|
+
tag: route.tag,
|
|
202
|
+
onPending: markPending
|
|
203
|
+
}),
|
|
172
204
|
children: mounted ? route.element : null
|
|
173
205
|
})
|
|
174
206
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","Suspense","useEffect","useRef","RouteTagContext","stackNavigator","useNavState","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","DomStackAdapter","DomStackAdapter2","rootTag","onChanged","stack","push_by_tag","tag","push","pop","pop_to_tag","idx","lastIndexOf","slice","replace_with_tags","tags","get_navigation_stack","snapshot","get_n_items","get_item","index","get_tag","_snapshot_index","PAGE_STYLE","position","flex","minHeight","display","flexDirection","overflow","useZeroHeightWarning","ref","process","env","NODE_ENV","el","current","raf","requestAnimationFrame","offsetParent","getBoundingClientRect","height","console","error","cancelAnimationFrame","DomNavigationHost","param","routes","initialHref","style","hostRef","adapterRef","_ref","_routes_","seedInitialRoute","syncFromHost","initialHrefRef","adapter","attach","detach","nav","children","map","route","active","mounted","isVisited","Provider","fallback","element"],"sources":["DomNavigationHost.native.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Suspense, useEffect, useRef } from \"react\";\nimport { RouteTagContext, stackNavigator, useNavState } from \"./navigator\";\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar DomStackAdapter = /* @__PURE__ */ (function() {\n \"use strict\";\n function DomStackAdapter2(rootTag, onChanged) {\n _class_call_check(this, DomStackAdapter2);\n _define_property(this, \"stack\", void 0);\n _define_property(this, \"onChanged\", void 0);\n this.stack = rootTag ? [\n rootTag\n ] : [];\n this.onChanged = onChanged;\n }\n _create_class(DomStackAdapter2, [\n {\n key: \"push_by_tag\",\n value: function push_by_tag(tag) {\n this.stack.push(tag);\n this.onChanged();\n }\n },\n {\n key: \"pop\",\n value: function pop() {\n if (this.stack.length <= 1) return false;\n this.stack.pop();\n this.onChanged();\n return true;\n }\n },\n {\n key: \"pop_to_tag\",\n value: function pop_to_tag(tag) {\n var idx = this.stack.lastIndexOf(tag);\n if (idx === -1 || idx === this.stack.length - 1) return false;\n this.stack = this.stack.slice(0, idx + 1);\n this.onChanged();\n return true;\n }\n },\n {\n key: \"replace_with_tags\",\n value: function replace_with_tags(tags) {\n this.stack = [\n ...tags\n ];\n this.onChanged();\n }\n },\n {\n key: \"get_navigation_stack\",\n value: function get_navigation_stack() {\n var snapshot = this.stack;\n return {\n get_n_items: function get_n_items() {\n return snapshot.length;\n },\n get_item: function get_item(index) {\n return index >= 0 && index < snapshot.length ? {\n get_tag: function get_tag() {\n var _snapshot_index;\n return (_snapshot_index = snapshot[index]) !== null && _snapshot_index !== void 0 ? _snapshot_index : null;\n }\n } : null;\n }\n };\n }\n }\n ]);\n return DomStackAdapter2;\n})();\nvar PAGE_STYLE = {\n position: \"relative\",\n flex: \"1 1 auto\",\n minHeight: 0,\n display: \"flex\",\n flexDirection: \"column\",\n overflow: \"auto\"\n};\nfunction useZeroHeightWarning(ref) {\n useEffect(function() {\n if (process.env.NODE_ENV === \"production\") return;\n var el = ref.current;\n if (!el) return;\n var raf = requestAnimationFrame(function() {\n if (el.offsetParent === null || el.getBoundingClientRect().height > 0) return;\n console.error(\"[stack nav] DomNavigationHost rendered 0px tall \\u2014 every page is clipped and this surface paints nothing. Give the mount node a definite height (e.g. `#app { display: flex; flex-direction: column; min-height: 100vh }`) or pass `style={{ minHeight: \\u2026 }}` to the host.\");\n });\n return function() {\n return cancelAnimationFrame(raf);\n };\n }, [\n ref\n ]);\n}\nfunction DomNavigationHost(param) {\n var { routes, initialHref, style } = param;\n var hostRef = useRef(null);\n var adapterRef = useRef(null);\n if (adapterRef.current === null) {\n var _ref;\n var _routes_;\n if (initialHref !== void 0) stackNavigator.seedInitialRoute(initialHref);\n adapterRef.current = new DomStackAdapter((_ref = (_routes_ = routes[0]) === null || _routes_ === void 0 ? void 0 : _routes_.tag) !== null && _ref !== void 0 ? _ref : \"\", function() {\n return stackNavigator.syncFromHost();\n });\n }\n var initialHrefRef = useRef(initialHref);\n useEffect(function() {\n var adapter = adapterRef.current;\n if (!adapter) return;\n stackNavigator.attach(adapter, {\n initialHref: initialHrefRef.current\n });\n return function() {\n return stackNavigator.detach();\n };\n }, []);\n useZeroHeightWarning(hostRef);\n var nav = useNavState();\n return /* @__PURE__ */ _jsx(\"div\", {\n ref: hostRef,\n style: {\n position: \"relative\",\n display: \"flex\",\n flexDirection: \"column\",\n flex: 1,\n minHeight: 0,\n height: \"100%\",\n ...style\n },\n children: routes.map(function(route) {\n var active = nav.tag === route.tag;\n var mounted = stackNavigator.isVisited(route.tag);\n return /* @__PURE__ */ _jsx(\"div\", {\n \"data-seam-page\": route.tag,\n \"data-seam-active\": active ? \"true\" : \"false\",\n style: {\n ...PAGE_STYLE,\n display: active ? \"flex\" : \"none\"\n },\n children: /* @__PURE__ */ _jsx(RouteTagContext.Provider, {\n value: route.tag,\n children: /* @__PURE__ */ _jsx(Suspense, {\n fallback: null,\n children: mounted ? route.element : null\n })\n })\n }, route.tag);\n })\n });\n}\nexport {\n DomNavigationHost,\n DomStackAdapter\n};\n//# sourceMappingURL=DomNavigationHost.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","Suspense","useCallback","useEffect","useLayoutEffect","useRef","useState","RouteTagContext","stackNavigator","useNavState","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","DomStackAdapter","DomStackAdapter2","rootTag","onChanged","stack","push_by_tag","tag","push","pop","pop_to_tag","idx","lastIndexOf","slice","replace_with_tags","tags","get_navigation_stack","snapshot","get_n_items","get_item","index","get_tag","_snapshot_index","PAGE_STYLE","position","flex","minHeight","display","flexDirection","overflow","useZeroHeightWarning","ref","process","env","NODE_ENV","el","current","raf","requestAnimationFrame","offsetParent","getBoundingClientRect","height","console","error","cancelAnimationFrame","PageLoading","param","onPending","DomNavigationHost","routes","initialHref","style"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RouteTagContext","StackNavigator","hrefToString","stackNavigator","useNavState","useRouteParams","DomNavigationHost","DomStackAdapter","Link","LoadProgressBar","Slot","useBlocker","useLoader","useLocalSearchParams","useMatches","useParams","usePathname","useRouter"],"sources":["index.
|
|
1
|
+
{"version":3,"names":["RouteTagContext","StackNavigator","hrefToString","stackNavigator","useNavState","useRouteParams","DomNavigationHost","DomStackAdapter","Link","LoadProgressBar","Slot","useBlocker","useLoader","useLocalSearchParams","useMatches","useParams","usePathname","useRouter"],"sources":["../../../src/seam/index.ts"],"sourcesContent":[null],"mappings":"AASA,SAAAA,eAAA,EAAAC,cAAA,EAAAC,YAAA,EAAAC,cAAA,EAAAC,WAAA,EAAAC,cAAA;AAAA,SACEC,iBAAA,EAAAC,eAAA;AAAA,SACAC,IAAA,EAAAC,eAAA,EAAAC,IAAA,EAAAC,UAAA,EAAAC,SAAA,EAAAC,oBAAA,EAAAC,UAAA,EAAAC,SAAA,EAAAC,WAAA,EAAAC,SAAA;AAAA,SAEAX,iBAAA,EACAC,eAAA,EACAC,IAAA,EAAAC,eACK,EAUPT,eAAS,EAETU,IAAA,EACET,cAAA,EACAC,YAAA,EACAC,cAAA,EACAQ,UAAA,EACAC,SAAA,EACAC,oBAAA,EACAC,UAAA,EACAV,WAAA,EACAW,SAAA,EACAC,WAAA,EAAAX,cACK,E","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useContext","useSyncExternalStore","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","compileRoute","def","segments","pattern","split","filter","Boolean","map","seg","m","match","param","literal","parseQuery","query","params","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","pair","eq","indexOf","decodeURIComponent","slice","prev","Array","isArray","push","err","return","hrefToString","href","_href_params","path","pathname","leftover","entries","raw","String","token","includes","replace","encodeURIComponent","join","EMPTY_PARAMS","freeze","StackNavigator","StackNavigator2","_this","Set","Map","tag","depth","canGoBack","generation","fn","listeners","add","delete","snapshot","navigate","host","console","log","navSeq","pop","_this_paramsByTag_get","top","stackTags","at","paramsByTag","get","set","rebuildSnapshot","model","get_navigation_stack","tags","count","get_n_items","_model_get_item","get_item","get_tag","tag1","visitedTags","routes","configure","defs","loaderDataByTag","pendingNavigations","root","pathnameByTag","isVisited","has","loaderSnapshot","seedInitialRoute","hit","setRouteState","route","preload","loader","data","error","attach","options","syncFromHost","initialHref","splice","mode","detach","paramsSnapshot","str","parts","ok","part","seq","replace_with_tags","below","idx","push_by_tag","pop_to_tag","_this_stackTags_at","_ref","_this_pathnameByTag_get","find","r","stackNavigator","RouteTagContext","useNavState","subscribe","getSnapshot","useRouteParams"],"sources":["navigator.native.js"],"sourcesContent":["import { createContext, useContext, useSyncExternalStore } from \"react\";\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction compileRoute(def) {\n var segments = def.pattern.split(\"/\").filter(Boolean).map(function(seg) {\n var m = seg.match(/^\\[(\\.{3})?(.+)\\]$/);\n return m ? {\n param: m[2]\n } : {\n literal: seg\n };\n });\n return {\n ...def,\n segments\n };\n}\nfunction parseQuery(query) {\n var params = {};\n if (!query) return params;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = query.split(\"&\")[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var pair = _step.value;\n if (!pair) continue;\n var eq = pair.indexOf(\"=\");\n var key = decodeURIComponent(eq === -1 ? pair : pair.slice(0, eq));\n var value = eq === -1 ? \"\" : decodeURIComponent(pair.slice(eq + 1));\n var prev = params[key];\n if (prev === void 0) params[key] = value;\n else if (Array.isArray(prev)) prev.push(value);\n else params[key] = [\n prev,\n value\n ];\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return params;\n}\nfunction hrefToString(href) {\n var _href_params;\n if (typeof href === \"string\") return href;\n var path = href.pathname;\n var leftover = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries((_href_params = href.params) !== null && _href_params !== void 0 ? _href_params : {})[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, raw] = _step.value;\n var value = String(raw);\n var token = `[${key}]`;\n if (path.includes(token)) path = path.replace(token, encodeURIComponent(value));\n else leftover.push(`${encodeURIComponent(key)}=${encodeURIComponent(value)}`);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return leftover.length ? `${path}?${leftover.join(\"&\")}` : path;\n}\nvar EMPTY_PARAMS = Object.freeze({});\nvar StackNavigator = /* @__PURE__ */ (function() {\n \"use strict\";\n function StackNavigator2() {\n var _this = this;\n _class_call_check(this, StackNavigator2);\n _define_property(this, \"routes\", []);\n _define_property(this, \"host\", null);\n _define_property(this, \"listeners\", /* @__PURE__ */ new Set());\n _define_property(this, \"stackTags\", []);\n _define_property(this, \"paramsByTag\", /* @__PURE__ */ new Map());\n _define_property(this, \"pathnameByTag\", /* @__PURE__ */ new Map());\n _define_property(this, \"visitedTags\", /* @__PURE__ */ new Set());\n _define_property(this, \"loaderDataByTag\", /* @__PURE__ */ new Map());\n _define_property(this, \"navSeq\", 0);\n _define_property(this, \"pendingNavigations\", []);\n _define_property(this, \"generation\", 0);\n _define_property(this, \"snapshot\", {\n pathname: \"/\",\n tag: \"\",\n depth: 0,\n canGoBack: false,\n generation: 0\n });\n _define_property(this, \"subscribe\", function(fn) {\n _this.listeners.add(fn);\n return function() {\n return _this.listeners.delete(fn);\n };\n });\n _define_property(this, \"getSnapshot\", function() {\n return _this.snapshot;\n });\n _define_property(this, \"push\", function(href) {\n void _this.navigate(href, \"push\");\n });\n _define_property(this, \"replace\", function(href) {\n void _this.navigate(href, \"replace\");\n });\n _define_property(this, \"back\", function() {\n if (!_this.host) {\n console.log(\"[stack nav] back \\u2014 no stack host attached, ignored\");\n return;\n }\n _this.navSeq++;\n _this.host.pop();\n });\n _define_property(this, \"setParams\", function(params) {\n var _this_paramsByTag_get;\n var top = _this.stackTags.at(-1);\n if (!top) return;\n var prev = (_this_paramsByTag_get = _this.paramsByTag.get(top)) !== null && _this_paramsByTag_get !== void 0 ? _this_paramsByTag_get : {};\n _this.paramsByTag.set(top, {\n ...prev,\n ...params\n });\n _this.rebuildSnapshot();\n });\n _define_property(this, \"syncFromHost\", function() {\n if (!_this.host) return;\n _this.navSeq++;\n var model = _this.host.get_navigation_stack();\n var tags = [];\n var count = model.get_n_items();\n for (var i = 0; i < count; i++) {\n var _model_get_item;\n var tag = (_model_get_item = model.get_item(i)) === null || _model_get_item === void 0 ? void 0 : _model_get_item.get_tag();\n if (tag) tags.push(tag);\n }\n if (tags.length > 0) _this.stackTags = tags;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = _this.stackTags[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var tag1 = _step.value;\n _this.visitedTags.add(tag1);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n _this.rebuildSnapshot();\n });\n }\n _create_class(StackNavigator2, [\n {\n key: \"isConfigured\",\n get: function get() {\n return this.routes.length > 0;\n }\n },\n {\n /** Register the route manifest. The FIRST route is the root page. */\n key: \"configure\",\n value: function configure(defs) {\n this.routes = defs.map(compileRoute);\n this.visitedTags = /* @__PURE__ */ new Set();\n this.loaderDataByTag = /* @__PURE__ */ new Map();\n this.pendingNavigations = [];\n var root = defs[0];\n if (root) {\n this.stackTags = [\n root.tag\n ];\n this.visitedTags.add(root.tag);\n this.pathnameByTag.set(root.tag, root.pattern);\n this.rebuildSnapshot();\n }\n }\n },\n {\n /** Has this route's page been navigated to (⇒ its content may mount)? */\n key: \"isVisited\",\n value: function isVisited(tag) {\n return tag !== null && this.visitedTags.has(tag);\n }\n },\n {\n /** The route's last loader result (stable identity until the loader runs\n * again). undefined when the route has no loader / hasn't resolved. */\n key: \"loaderSnapshot\",\n value: function loaderSnapshot(tag) {\n if (!tag) return void 0;\n return this.loaderDataByTag.get(tag);\n }\n },\n {\n /** Seed a restored route's params/pathname BEFORE the first React render\n * (no host action, no stack mutation). The navigation host applies\n * `initialHref` from its attach EFFECT, which runs after the root page's\n * content already rendered once — a restored route's query params would\n * miss any mount-time state seeding (e.g. a list initializing filters\n * from useLocalSearchParams). Hosts call this while lazily initializing,\n * when no subscribers exist yet, so the rebuild notifies nobody. */\n key: \"seedInitialRoute\",\n value: function seedInitialRoute(href) {\n var hit = this.match(href);\n if (!hit) return;\n this.setRouteState(hit.route.tag, hit.pathname, hit.params);\n }\n },\n {\n key: \"preload\",\n value: (\n /** Resolve a route's loader WITHOUT navigating. For the initial page:\n * entries can `await stackNavigator.preload(\"/\")` during top-level await\n * (where GJS reliably drains promise jobs) so even the root page's first\n * paint has loader data. */\n async function preload(href) {\n var hit = this.match(href);\n if (!(hit === null || hit === void 0 ? void 0 : hit.route.loader)) return;\n try {\n var data = await hit.route.loader({\n path: hit.pathname,\n params: hit.params\n });\n this.loaderDataByTag.set(hit.route.tag, data);\n this.rebuildSnapshot();\n } catch (err) {\n console.error(`[stack nav] preload loader for ${hit.route.tag} failed: ${String(err)}`);\n }\n }\n )\n },\n {\n /** Bind the live host stack (an Adw.NavigationView widget on GTK, a\n * DomStackAdapter on DOM targets). `initialHref` (state restore) applies\n * as a replace BEFORE queued navigations flush: a deep link that arrived\n * while unattached is fresher intent than a persisted route, so it lands\n * on top. */\n key: \"attach\",\n value: function attach(host, options) {\n this.host = host;\n this.syncFromHost();\n var initialHref = options === null || options === void 0 ? void 0 : options.initialHref;\n if (initialHref !== void 0) this.replace(initialHref);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.pendingNavigations.splice(0)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { href, mode } = _step.value;\n void this.navigate(href, mode);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n },\n {\n key: \"detach\",\n value: function detach() {\n this.host = null;\n }\n },\n {\n key: \"paramsSnapshot\",\n value: function paramsSnapshot(tag) {\n var _this_paramsByTag_get;\n if (!tag) return EMPTY_PARAMS;\n return (_this_paramsByTag_get = this.paramsByTag.get(tag)) !== null && _this_paramsByTag_get !== void 0 ? _this_paramsByTag_get : EMPTY_PARAMS;\n }\n },\n {\n key: \"match\",\n value: function match(href) {\n var str = hrefToString(href);\n var [path = \"\", query] = str.split(\"?\");\n var parts = path.split(\"/\").filter(Boolean);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.routes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var route = _step.value;\n if (route.segments.length !== parts.length) continue;\n var params = parseQuery(query);\n var ok = true;\n for (var i = 0; i < parts.length; i++) {\n var seg = route.segments[i];\n var part = decodeURIComponent(parts[i]);\n if (seg.literal !== void 0) {\n if (seg.literal !== part) {\n ok = false;\n break;\n }\n } else if (seg.param !== void 0) {\n params[seg.param] = part;\n }\n }\n if (ok) return {\n route,\n pathname: path === \"\" ? \"/\" : `/${parts.join(\"/\")}`,\n params\n };\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return null;\n }\n },\n {\n key: \"navigate\",\n value: (\n /** Shared push/replace flow, incl. the loader bridge. When the target\n * route has no loader the whole body runs SYNCHRONOUSLY (an async\n * function only yields at its first await), preserving the original\n * timing. With a loader, the host action waits for the loader to resolve\n * — same contract as One on web, where client navigation completes only\n * after the route's loader data arrived — so the page's first paint has\n * its data (and the lazily-mounted content mounts with it). */\n async function navigate(href, mode) {\n var hit = this.match(href);\n if (!hit) {\n console.log(`[stack nav] ${mode} ${hrefToString(href)} \\u2014 no page in the route manifest, ignored`);\n return;\n }\n if (!this.host) {\n this.pendingNavigations.push({\n href,\n mode\n });\n console.log(`[stack nav] ${mode} ${hrefToString(href)} \\u2014 queued until a stack host attaches`);\n return;\n }\n var { route, pathname, params } = hit;\n var seq = ++this.navSeq;\n if (route.loader) {\n try {\n var data = await route.loader({\n path: pathname,\n params\n });\n if (seq !== this.navSeq) return;\n this.loaderDataByTag.set(route.tag, data);\n } catch (err) {\n if (seq !== this.navSeq) return;\n console.error(`[stack nav] loader for ${route.tag} failed: ${String(err)}`);\n }\n }\n this.visitedTags.add(route.tag);\n this.setRouteState(route.tag, pathname, params);\n if (mode === \"replace\") {\n var top = this.stackTags.at(-1);\n if (top === route.tag) return;\n if (this.stackTags.length <= 1) {\n this.host.replace_with_tags([\n ...this.stackTags,\n route.tag\n ]);\n return;\n }\n var below = this.stackTags.slice(0, -1).filter(function(tag) {\n return tag !== route.tag;\n });\n this.host.replace_with_tags([\n ...below,\n route.tag\n ]);\n return;\n }\n var idx = this.stackTags.indexOf(route.tag);\n if (idx === -1) {\n this.host.push_by_tag(route.tag);\n } else if (idx < this.stackTags.length - 1) {\n this.host.pop_to_tag(route.tag);\n }\n }\n )\n },\n {\n key: \"setRouteState\",\n value: function setRouteState(tag, pathname, params) {\n this.paramsByTag.set(tag, params);\n this.pathnameByTag.set(tag, pathname);\n this.rebuildSnapshot();\n }\n },\n {\n key: \"rebuildSnapshot\",\n value: function rebuildSnapshot() {\n var _this_stackTags_at, _ref, _this_pathnameByTag_get;\n var tag = (_this_stackTags_at = this.stackTags.at(-1)) !== null && _this_stackTags_at !== void 0 ? _this_stackTags_at : \"\";\n var route = this.routes.find(function(r) {\n return r.tag === tag;\n });\n this.generation++;\n this.snapshot = {\n pathname: (_ref = (_this_pathnameByTag_get = this.pathnameByTag.get(tag)) !== null && _this_pathnameByTag_get !== void 0 ? _this_pathnameByTag_get : route === null || route === void 0 ? void 0 : route.pattern) !== null && _ref !== void 0 ? _ref : \"/\",\n tag,\n depth: this.stackTags.length,\n canGoBack: this.stackTags.length > 1,\n generation: this.generation\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.listeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var fn = _step.value;\n fn();\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n ]);\n return StackNavigator2;\n})();\nvar stackNavigator = new StackNavigator();\nvar RouteTagContext = createContext(null);\nfunction useNavState() {\n return useSyncExternalStore(stackNavigator.subscribe, stackNavigator.getSnapshot);\n}\nfunction useRouteParams() {\n var tag = useContext(RouteTagContext);\n return useSyncExternalStore(stackNavigator.subscribe, function() {\n return stackNavigator.paramsSnapshot(tag);\n });\n}\nexport {\n RouteTagContext,\n StackNavigator,\n hrefToString,\n stackNavigator,\n useNavState,\n useRouteParams\n};\n//# sourceMappingURL=navigator.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createContext","useContext","useSyncExternalStore","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","compileRoute","def","segments","pattern","split","filter","Boolean","map","seg","m","match","param","literal","parseQuery","query","params","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","pair","eq","indexOf","decodeURIComponent","slice","prev","Array","isArray","push","err","return","hrefToString","href","_href_params","path","pathname","leftover","entries","raw","String","token","includes","replace","encodeURIComponent","join","EMPTY_PARAMS","freeze","StackNavigator","StackNavigator2","_this","Set","Map","tag","depth","canGoBack","generation","fn","listeners","add","delete","snapshot","navigate","host","console","log","navSeq","pop","_this_paramsByTag_get","top","stackTags","at","paramsByTag","get","set","rebuildSnapshot","model","get_navigation_stack","tags","count","get_n_items","_model_get_item","get_item","get_tag","tag1","visitedTags","routes","configure","defs","loaderDataByTag","pendingNavigations","root","pathnameByTag","isVisited","has","loaderSnapshot","seedInitialRoute","hit","setRouteState","route","preload","loader","data","error"],"sources":["../../../src/seam/navigator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","useContext","useSyncExternalStore","RouteTagContext","hrefToString","stackNavigator","useNavState","useRouteParams","getUserScheme","onUserSchemeChange","SchemeProvider","setUserScheme","useUserScheme","useLoader","_loader","tag","fromRoute","subscribe","loaderSnapshot","ROUTER","push","navigate","replace","back","canGoBack","getSnapshot","dismiss","count","i","dismissAll","depth","canDismiss","setParams","listener","onLoadState","useRouter","Link","param","href","children","style","rest","isConfigured","hrefString","onClick","onClick2","event","preventDefault","display","color","textDecoration","Slot","_props","useParams","useLocalSearchParams","usePathname","_ref","_useNavState","pathname","useBlocker","_shouldBlock","state","proceed","reset","LoadProgressBar"
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","useContext","useSyncExternalStore","RouteTagContext","hrefToString","stackNavigator","useNavState","useRouteParams","getUserScheme","onUserSchemeChange","SchemeProvider","setUserScheme","useUserScheme","useLoader","_loader","tag","fromRoute","subscribe","loaderSnapshot","ROUTER","push","navigate","replace","back","canGoBack","getSnapshot","dismiss","count","i","dismissAll","depth","canDismiss","setParams","listener","onLoadState","useRouter","Link","param","href","children","style","rest","isConfigured","hrefString","onClick","onClick2","event","preventDefault","display","color","textDecoration","Slot","_props","useParams","useLocalSearchParams","usePathname","_ref","_useNavState","pathname","useBlocker","_shouldBlock","state","proceed","reset","LoadProgressBar"],"sources":["../../../src/seam/oneAdapter.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":[
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -24,17 +24,29 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
24
24
|
}), mod);
|
|
25
25
|
var index_native_exports = {};
|
|
26
26
|
__export(index_native_exports, {
|
|
27
|
-
Link: () =>
|
|
28
|
-
useParams: () =>
|
|
27
|
+
Link: () => Link,
|
|
28
|
+
useParams: () => useParams,
|
|
29
29
|
usePathname: () => usePathname,
|
|
30
|
-
useRouter: () =>
|
|
30
|
+
useRouter: () => useRouter
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(index_native_exports);
|
|
33
|
-
var
|
|
33
|
+
var import_nativeFallback = require("./nativeFallback.native.js");
|
|
34
|
+
function loadOne() {
|
|
35
|
+
try {
|
|
36
|
+
return require("one");
|
|
37
|
+
} catch (unused) {
|
|
38
|
+
return void 0;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
var router = (0, import_nativeFallback.pickRouter)(loadOne());
|
|
42
|
+
var Link = router.Link;
|
|
43
|
+
var useParams = router.useParams;
|
|
44
|
+
var useRouter = router.useRouter;
|
|
45
|
+
var useRouterPathname = router.usePathname;
|
|
34
46
|
function usePathname() {
|
|
35
47
|
try {
|
|
36
|
-
var
|
|
37
|
-
return (
|
|
48
|
+
var _useRouterPathname;
|
|
49
|
+
return (_useRouterPathname = useRouterPathname()) !== null && _useRouterPathname !== void 0 ? _useRouterPathname : "/";
|
|
38
50
|
} catch (unused) {
|
|
39
51
|
return "/";
|
|
40
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["index_native_exports","__export","Link","
|
|
1
|
+
{"version":3,"names":["index_native_exports","__export","Link","useParams","usePathname","useRouter","module","exports","__toCommonJS","import_nativeFallback","require","loadOne","unused","router","pickRouter","useRouterPathname","_useRouterPathname"],"sources":["../../../src/router/index.native.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,oBAAA;AAAAC,QAAA,CAAAD,oBAAA;EAAAE,IAAA,EAAAA,CAAA,KAAAA,IAAA;EAAAC,SAAA,EAAAA,CAAA,KAAAA,SAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA,WAAA;EAAAC,SAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAC,YAAA,CAAAR,oBAAA;AAAA,IAAAS,qBAAA,GAA2BC,OAAA;AAC3B,SAASC,QAAA,EAAU;EACf,IAAI;IACA,OAAOD,OAAA,CAAQ,KAAK;EACxB,SAASE,MAAA,EAAQ;IACb,OAAO;EACX;AACJ;AACA,IAAIC,MAAA,OAASJ,qBAAA,CAAAK,UAAA,EAAWH,OAAA,CAAQ,CAAC;AAC1B,IAAIT,IAAA,GAAOW,MAAA,CAAOX,IAAA;AAClB,IAAIC,SAAA,GAAYU,MAAA,CAAOV,SAAA;AACvB,IAAIE,SAAA,GAAYQ,MAAA,CAAOR,SAAA;AAC9B,IAAIU,iBAAA,GAAoBF,MAAA,CAAOT,WAAA;AAOpB,SAASA,YAAA,EAAc;EAC9B,IAAI;IACA,IAAIY,kBAAA;IACJ,QAAQA,kBAAA,GAAqBD,iBAAA,CAAkB,OAAO,QAAQC,kBAAA,KAAuB,SAASA,kBAAA,GAAqB;EACvH,SAASJ,MAAA,EAAQ;IACb,OAAO;EACX;AACJ","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { useParams, usePathname, useRouter } from "./EmptyRouter.mjs";
|
|
2
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
3
|
+
const Link = ({
|
|
4
|
+
children
|
|
5
|
+
}) => /* @__PURE__ */jsx(Fragment, {
|
|
6
|
+
children
|
|
7
|
+
});
|
|
8
|
+
Link.resolveHref = href => href.toString();
|
|
9
|
+
const nativeFallback = {
|
|
10
|
+
Link,
|
|
11
|
+
useParams,
|
|
12
|
+
usePathname,
|
|
13
|
+
useRouter
|
|
14
|
+
};
|
|
15
|
+
function pickRouter(one) {
|
|
16
|
+
return one ?? nativeFallback;
|
|
17
|
+
}
|
|
18
|
+
export { nativeFallback, pickRouter };
|
|
19
|
+
//# sourceMappingURL=nativeFallback.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useParams","usePathname","useRouter","Fragment","jsx","Link","children","resolveHref","href","toString","nativeFallback","pickRouter","one"],"sources":["../../../src/router/nativeFallback.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,EAAWC,WAAA,EAAaC,SAAA,QAAiB;AASJ,SAAAC,QAAA,EAAAC,GAAA;AAA9C,MAAMC,IAAA,GAAsBA,CAAC;EAAEC;AAAS,MAAM,eAAAF,GAAA,CAAAD,QAAA;EAAGG;AAAA,CAAS;AAE1DD,IAAA,CAAKE,WAAA,GAAeC,IAAA,IAASA,IAAA,CAAKC,QAAA,CAAS;AAEpC,MAAMC,cAAA,GAA+B;EAAEL,IAAA;EAAML,SAAA;EAAWC,WAAA;EAAaC;AAAU;AAE/E,SAASS,WAAWC,GAAA,EAA6C;EACtE,OAAOA,GAAA,IAAOF,cAAA;AAChB","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var nativeFallback_exports = {};
|
|
26
|
+
__export(nativeFallback_exports, {
|
|
27
|
+
nativeFallback: () => nativeFallback,
|
|
28
|
+
pickRouter: () => pickRouter
|
|
29
|
+
});
|
|
30
|
+
module.exports = __toCommonJS(nativeFallback_exports);
|
|
31
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
32
|
+
var import_EmptyRouter = require("./EmptyRouter.native.js");
|
|
33
|
+
var Link = function Link2(param) {
|
|
34
|
+
var {
|
|
35
|
+
children
|
|
36
|
+
} = param;
|
|
37
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
|
|
38
|
+
children
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
Link.resolveHref = function (href) {
|
|
42
|
+
return href.toString();
|
|
43
|
+
};
|
|
44
|
+
var nativeFallback = {
|
|
45
|
+
Link,
|
|
46
|
+
useParams: import_EmptyRouter.useParams,
|
|
47
|
+
usePathname: import_EmptyRouter.usePathname,
|
|
48
|
+
useRouter: import_EmptyRouter.useRouter
|
|
49
|
+
};
|
|
50
|
+
function pickRouter(one) {
|
|
51
|
+
return one !== null && one !== void 0 ? one : nativeFallback;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=nativeFallback.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable"],"sources":["../../../src/router/nativeFallback.tsx"],"sourcesContent":[null],"mappings":"AACA,YAAS;;AASqC,IAAAA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAA9C,IAAAC,gBAA+B,GAAAF,MAAS,CAAAG,wBAAM;AAE9C,IAAAC,iBAAoB,GAAAJ,MAAS,CAAAK,mBAAc;AAEpC,IAAAC,YAAM,GAAAN,MAAiC,CAAAO,SAAM,CAAAC,cAAW;AAExD,IAAAC,QAAS,GAAAA,CAAAC,MAAW,EAAAC,GAA6C;EACtE,SAAOC,IAAA,IAAOD,GAAA,EAChBZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Suspense, useEffect, useRef } from "react";
|
|
1
|
+
import { Suspense, useCallback, useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
2
2
|
import { RouteTagContext, stackNavigator, useNavState } from "./navigator.mjs";
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
class DomStackAdapter {
|
|
@@ -59,6 +59,16 @@ function useZeroHeightWarning(ref) {
|
|
|
59
59
|
return () => cancelAnimationFrame(raf);
|
|
60
60
|
}, [ref]);
|
|
61
61
|
}
|
|
62
|
+
function PageLoading({
|
|
63
|
+
tag,
|
|
64
|
+
onPending
|
|
65
|
+
}) {
|
|
66
|
+
useLayoutEffect(() => {
|
|
67
|
+
onPending(tag, true);
|
|
68
|
+
return () => onPending(tag, false);
|
|
69
|
+
}, [tag, onPending]);
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
62
72
|
function DomNavigationHost({
|
|
63
73
|
routes,
|
|
64
74
|
initialHref,
|
|
@@ -81,6 +91,19 @@ function DomNavigationHost({
|
|
|
81
91
|
}, []);
|
|
82
92
|
useZeroHeightWarning(hostRef);
|
|
83
93
|
const nav = useNavState();
|
|
94
|
+
const pendingRef = useRef(/* @__PURE__ */new Set());
|
|
95
|
+
const [, setPendingVersion] = useState(0);
|
|
96
|
+
const markPending = useCallback((tag, isPending) => {
|
|
97
|
+
if (pendingRef.current.has(tag) === isPending) return;
|
|
98
|
+
if (isPending) pendingRef.current.add(tag);else pendingRef.current.delete(tag);
|
|
99
|
+
setPendingVersion(version => version + 1);
|
|
100
|
+
}, []);
|
|
101
|
+
const settledRef = useRef(nav.tag);
|
|
102
|
+
useLayoutEffect(() => {
|
|
103
|
+
if (!pendingRef.current.has(nav.tag)) settledRef.current = nav.tag;
|
|
104
|
+
});
|
|
105
|
+
const pending = pendingRef.current;
|
|
106
|
+
const shown = pending.has(nav.tag) ? settledRef.current : nav.tag;
|
|
84
107
|
return /* @__PURE__ */jsx("div", {
|
|
85
108
|
ref: hostRef,
|
|
86
109
|
style: {
|
|
@@ -93,11 +116,12 @@ function DomNavigationHost({
|
|
|
93
116
|
...style
|
|
94
117
|
},
|
|
95
118
|
children: routes.map(route => {
|
|
96
|
-
const active =
|
|
119
|
+
const active = shown === route.tag;
|
|
97
120
|
const mounted = stackNavigator.isVisited(route.tag);
|
|
98
121
|
return /* @__PURE__ */jsx("div", {
|
|
99
122
|
"data-seam-page": route.tag,
|
|
100
123
|
"data-seam-active": active ? "true" : "false",
|
|
124
|
+
"data-seam-pending": pending.has(route.tag) ? "true" : void 0,
|
|
101
125
|
style: {
|
|
102
126
|
...PAGE_STYLE,
|
|
103
127
|
display: active ? "flex" : "none"
|
|
@@ -105,7 +129,10 @@ function DomNavigationHost({
|
|
|
105
129
|
children: /* @__PURE__ */jsx(RouteTagContext.Provider, {
|
|
106
130
|
value: route.tag,
|
|
107
131
|
children: /* @__PURE__ */jsx(Suspense, {
|
|
108
|
-
fallback:
|
|
132
|
+
fallback: /* @__PURE__ */jsx(PageLoading, {
|
|
133
|
+
tag: route.tag,
|
|
134
|
+
onPending: markPending
|
|
135
|
+
}),
|
|
109
136
|
children: mounted ? route.element : null
|
|
110
137
|
})
|
|
111
138
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Suspense","useEffect","useRef","RouteTagContext","stackNavigator","useNavState","jsx","DomStackAdapter","stack","onChanged","constructor","rootTag","push_by_tag","tag","push","pop","length","pop_to_tag","idx","lastIndexOf","slice","replace_with_tags","tags","get_navigation_stack","snapshot","get_n_items","get_item","index","get_tag","PAGE_STYLE","position","flex","minHeight","display","flexDirection","overflow","useZeroHeightWarning","ref","process","env","NODE_ENV","el","current","raf","requestAnimationFrame","offsetParent","getBoundingClientRect","height","console","error","cancelAnimationFrame","DomNavigationHost","routes","initialHref","style","hostRef","adapterRef","seedInitialRoute","syncFromHost","initialHrefRef","adapter","attach","detach","nav","children","map","route","active","mounted","isVisited","Provider","value","fallback","element"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":"AA4BA,SAASA,QAAA,EAAUC,SAAA,EAAWC,MAAA,
|
|
1
|
+
{"version":3,"names":["Suspense","useCallback","useEffect","useLayoutEffect","useRef","useState","RouteTagContext","stackNavigator","useNavState","jsx","DomStackAdapter","stack","onChanged","constructor","rootTag","push_by_tag","tag","push","pop","length","pop_to_tag","idx","lastIndexOf","slice","replace_with_tags","tags","get_navigation_stack","snapshot","get_n_items","get_item","index","get_tag","PAGE_STYLE","position","flex","minHeight","display","flexDirection","overflow","useZeroHeightWarning","ref","process","env","NODE_ENV","el","current","raf","requestAnimationFrame","offsetParent","getBoundingClientRect","height","console","error","cancelAnimationFrame","PageLoading","onPending","DomNavigationHost","routes","initialHref","style","hostRef","adapterRef","seedInitialRoute","syncFromHost","initialHrefRef","adapter","attach","detach","nav","pendingRef","Set","setPendingVersion","markPending","isPending","has","add","delete","version","settledRef","pending","shown","children","map","route","active","mounted","isVisited","Provider","value","fallback","element"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -145,6 +145,19 @@ function useZeroHeightWarning(ref) {
|
|
|
145
145
|
};
|
|
146
146
|
}, [ref]);
|
|
147
147
|
}
|
|
148
|
+
function PageLoading(param) {
|
|
149
|
+
var {
|
|
150
|
+
tag,
|
|
151
|
+
onPending
|
|
152
|
+
} = param;
|
|
153
|
+
(0, import_react.useLayoutEffect)(function () {
|
|
154
|
+
onPending(tag, true);
|
|
155
|
+
return function () {
|
|
156
|
+
return onPending(tag, false);
|
|
157
|
+
};
|
|
158
|
+
}, [tag, onPending]);
|
|
159
|
+
return null;
|
|
160
|
+
}
|
|
148
161
|
function DomNavigationHost(param) {
|
|
149
162
|
var {
|
|
150
163
|
routes,
|
|
@@ -174,6 +187,21 @@ function DomNavigationHost(param) {
|
|
|
174
187
|
}, []);
|
|
175
188
|
useZeroHeightWarning(hostRef);
|
|
176
189
|
var nav = (0, import_navigator.useNavState)();
|
|
190
|
+
var pendingRef = (0, import_react.useRef)(/* @__PURE__ */new Set());
|
|
191
|
+
var [, setPendingVersion] = (0, import_react.useState)(0);
|
|
192
|
+
var markPending = (0, import_react.useCallback)(function (tag, isPending) {
|
|
193
|
+
if (pendingRef.current.has(tag) === isPending) return;
|
|
194
|
+
if (isPending) pendingRef.current.add(tag);else pendingRef.current.delete(tag);
|
|
195
|
+
setPendingVersion(function (version) {
|
|
196
|
+
return version + 1;
|
|
197
|
+
});
|
|
198
|
+
}, []);
|
|
199
|
+
var settledRef = (0, import_react.useRef)(nav.tag);
|
|
200
|
+
(0, import_react.useLayoutEffect)(function () {
|
|
201
|
+
if (!pendingRef.current.has(nav.tag)) settledRef.current = nav.tag;
|
|
202
|
+
});
|
|
203
|
+
var pending = pendingRef.current;
|
|
204
|
+
var shown = pending.has(nav.tag) ? settledRef.current : nav.tag;
|
|
177
205
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)("div", {
|
|
178
206
|
ref: hostRef,
|
|
179
207
|
style: {
|
|
@@ -186,11 +214,12 @@ function DomNavigationHost(param) {
|
|
|
186
214
|
...style
|
|
187
215
|
},
|
|
188
216
|
children: routes.map(function (route) {
|
|
189
|
-
var active =
|
|
217
|
+
var active = shown === route.tag;
|
|
190
218
|
var mounted = import_navigator.stackNavigator.isVisited(route.tag);
|
|
191
219
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)("div", {
|
|
192
220
|
"data-seam-page": route.tag,
|
|
193
221
|
"data-seam-active": active ? "true" : "false",
|
|
222
|
+
"data-seam-pending": pending.has(route.tag) ? "true" : void 0,
|
|
194
223
|
style: {
|
|
195
224
|
...PAGE_STYLE,
|
|
196
225
|
display: active ? "flex" : "none"
|
|
@@ -198,7 +227,10 @@ function DomNavigationHost(param) {
|
|
|
198
227
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_navigator.RouteTagContext.Provider, {
|
|
199
228
|
value: route.tag,
|
|
200
229
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.Suspense, {
|
|
201
|
-
fallback:
|
|
230
|
+
fallback: /* @__PURE__ */(0, import_jsx_runtime.jsx)(PageLoading, {
|
|
231
|
+
tag: route.tag,
|
|
232
|
+
onPending: markPending
|
|
233
|
+
}),
|
|
202
234
|
children: mounted ? route.element : null
|
|
203
235
|
})
|
|
204
236
|
})
|