@multiplatform.one/router 6.7.0 → 7.0.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/seam/DomNavigationHost.cjs +7 -4
- package/dist/cjs/seam/DomNavigationHost.native.js +11 -8
- package/dist/cjs/seam/DomNavigationHost.native.js.map +1 -1
- package/dist/cjs/seam/navigator.cjs +40 -5
- package/dist/cjs/seam/navigator.native.js +61 -5
- package/dist/cjs/seam/navigator.native.js.map +1 -1
- package/dist/esm/seam/DomNavigationHost.mjs +7 -4
- package/dist/esm/seam/DomNavigationHost.mjs.map +1 -1
- package/dist/esm/seam/DomNavigationHost.native.js +11 -8
- package/dist/esm/seam/DomNavigationHost.native.js.map +1 -1
- package/dist/esm/seam/navigator.mjs +40 -5
- package/dist/esm/seam/navigator.mjs.map +1 -1
- package/dist/esm/seam/navigator.native.js +61 -5
- package/dist/esm/seam/navigator.native.js.map +1 -1
- package/dist/jsx/seam/DomNavigationHost.mjs +7 -4
- package/dist/jsx/seam/DomNavigationHost.mjs.map +1 -1
- package/dist/jsx/seam/DomNavigationHost.native.js +11 -8
- package/dist/jsx/seam/DomNavigationHost.native.js.map +1 -1
- package/dist/jsx/seam/navigator.mjs +40 -5
- package/dist/jsx/seam/navigator.mjs.map +1 -1
- package/dist/jsx/seam/navigator.native.js +61 -5
- package/dist/jsx/seam/navigator.native.js.map +1 -1
- package/package.json +5 -5
- package/src/seam/DomNavigationHost.spec.tsx +95 -4
- package/src/seam/DomNavigationHost.tsx +17 -8
- package/src/seam/navigator.spec.ts +140 -8
- package/src/seam/navigator.ts +64 -6
- package/types/seam/DomNavigationHost.d.ts +3 -2
- package/types/seam/DomNavigationHost.d.ts.map +1 -1
- package/types/seam/navigator.d.ts +18 -2
- package/types/seam/navigator.d.ts.map +1 -1
|
@@ -94,14 +94,17 @@ function DomNavigationHost({
|
|
|
94
94
|
}) {
|
|
95
95
|
const hostRef = (0, import_react.useRef)(null);
|
|
96
96
|
const adapterRef = (0, import_react.useRef)(null);
|
|
97
|
-
adapterRef.current
|
|
97
|
+
if (adapterRef.current === null) {
|
|
98
|
+
if (initialHref !== void 0) import_navigator.stackNavigator.seedInitialRoute(initialHref);
|
|
99
|
+
adapterRef.current = new DomStackAdapter(routes[0]?.tag ?? "", () => import_navigator.stackNavigator.syncFromHost());
|
|
100
|
+
}
|
|
98
101
|
const initialHrefRef = (0, import_react.useRef)(initialHref);
|
|
99
102
|
(0, import_react.useEffect)(() => {
|
|
100
103
|
const adapter = adapterRef.current;
|
|
101
104
|
if (!adapter) return;
|
|
102
|
-
import_navigator.stackNavigator.attach(adapter
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
import_navigator.stackNavigator.attach(adapter, {
|
|
106
|
+
initialHref: initialHrefRef.current
|
|
107
|
+
});
|
|
105
108
|
return () => import_navigator.stackNavigator.detach();
|
|
106
109
|
}, []);
|
|
107
110
|
useZeroHeightWarning(hostRef);
|
|
@@ -151,20 +151,23 @@ function DomNavigationHost(param) {
|
|
|
151
151
|
initialHref,
|
|
152
152
|
style
|
|
153
153
|
} = param;
|
|
154
|
-
var _adapterRef, _current, _ref;
|
|
155
|
-
var _routes_;
|
|
156
154
|
var hostRef = (0, import_react.useRef)(null);
|
|
157
155
|
var adapterRef = (0, import_react.useRef)(null);
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
156
|
+
if (adapterRef.current === null) {
|
|
157
|
+
var _ref;
|
|
158
|
+
var _routes_;
|
|
159
|
+
if (initialHref !== void 0) import_navigator.stackNavigator.seedInitialRoute(initialHref);
|
|
160
|
+
adapterRef.current = new DomStackAdapter((_ref = (_routes_ = routes[0]) === null || _routes_ === void 0 ? void 0 : _routes_.tag) !== null && _ref !== void 0 ? _ref : "", function () {
|
|
161
|
+
return import_navigator.stackNavigator.syncFromHost();
|
|
162
|
+
});
|
|
163
|
+
}
|
|
161
164
|
var initialHrefRef = (0, import_react.useRef)(initialHref);
|
|
162
165
|
(0, import_react.useEffect)(function () {
|
|
163
166
|
var adapter = adapterRef.current;
|
|
164
167
|
if (!adapter) return;
|
|
165
|
-
import_navigator.stackNavigator.attach(adapter
|
|
166
|
-
|
|
167
|
-
|
|
168
|
+
import_navigator.stackNavigator.attach(adapter, {
|
|
169
|
+
initialHref: initialHrefRef.current
|
|
170
|
+
});
|
|
168
171
|
return function () {
|
|
169
172
|
return import_navigator.stackNavigator.detach();
|
|
170
173
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DomNavigationHost_exports","__export","DomNavigationHost","DomStackAdapter","module","exports","import_jsx_runtime","require","import_react","import_navigator","_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","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"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,yBAAA;AAAAC,QAAA,CAAAD,yBAAA;EAAAE,iBAAA,EAAAA,CAAA,KAAAA,iBAAA;EAAAC,eAAA,EAAAA,CAAA,KAAAA;AAAA;AA4BAC,MAAA,CAAAC,OAAA,GAAAV,YAA4C,CAAAK,yBAAA;AAC5C,IAAAM,kBAAA,GAOOC,OAAA;
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","DomNavigationHost_exports","__export","DomNavigationHost","DomStackAdapter","module","exports","import_jsx_runtime","require","import_react","import_navigator","_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","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"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -89,6 +89,9 @@ class StackNavigator {
|
|
|
89
89
|
/** Monotonic navigation sequence — a loader that resolves after a NEWER
|
|
90
90
|
* navigation started must not perform its (stale) host action. */
|
|
91
91
|
navSeq = 0;
|
|
92
|
+
/** Navigations that arrived while no host was attached — flushed FIFO on
|
|
93
|
+
* attach() so deep links survive mount ordering and remount cycles. */
|
|
94
|
+
pendingNavigations = [];
|
|
92
95
|
generation = 0;
|
|
93
96
|
snapshot = {
|
|
94
97
|
pathname: "/",
|
|
@@ -105,6 +108,7 @@ class StackNavigator {
|
|
|
105
108
|
this.routes = defs.map(compileRoute);
|
|
106
109
|
this.visitedTags = /* @__PURE__ */new Set();
|
|
107
110
|
this.loaderDataByTag = /* @__PURE__ */new Map();
|
|
111
|
+
this.pendingNavigations = [];
|
|
108
112
|
const root = defs[0];
|
|
109
113
|
if (root) {
|
|
110
114
|
this.stackTags = [root.tag];
|
|
@@ -123,6 +127,18 @@ class StackNavigator {
|
|
|
123
127
|
if (!tag) return void 0;
|
|
124
128
|
return this.loaderDataByTag.get(tag);
|
|
125
129
|
}
|
|
130
|
+
/** Seed a restored route's params/pathname BEFORE the first React render
|
|
131
|
+
* (no host action, no stack mutation). The navigation host applies
|
|
132
|
+
* `initialHref` from its attach EFFECT, which runs after the root page's
|
|
133
|
+
* content already rendered once — a restored route's query params would
|
|
134
|
+
* miss any mount-time state seeding (e.g. a list initializing filters
|
|
135
|
+
* from useLocalSearchParams). Hosts call this while lazily initializing,
|
|
136
|
+
* when no subscribers exist yet, so the rebuild notifies nobody. */
|
|
137
|
+
seedInitialRoute(href) {
|
|
138
|
+
const hit = this.match(href);
|
|
139
|
+
if (!hit) return;
|
|
140
|
+
this.setRouteState(hit.route.tag, hit.pathname, hit.params);
|
|
141
|
+
}
|
|
126
142
|
/** Resolve a route's loader WITHOUT navigating. For the initial page:
|
|
127
143
|
* entries can `await stackNavigator.preload("/")` during top-level await
|
|
128
144
|
* (where GJS reliably drains promise jobs) so even the root page's first
|
|
@@ -142,10 +158,21 @@ class StackNavigator {
|
|
|
142
158
|
}
|
|
143
159
|
}
|
|
144
160
|
/** Bind the live host stack (an Adw.NavigationView widget on GTK, a
|
|
145
|
-
* DomStackAdapter on DOM targets).
|
|
146
|
-
|
|
161
|
+
* DomStackAdapter on DOM targets). `initialHref` (state restore) applies
|
|
162
|
+
* as a replace BEFORE queued navigations flush: a deep link that arrived
|
|
163
|
+
* while unattached is fresher intent than a persisted route, so it lands
|
|
164
|
+
* on top. */
|
|
165
|
+
attach(host, options) {
|
|
147
166
|
this.host = host;
|
|
148
167
|
this.syncFromHost();
|
|
168
|
+
const initialHref = options?.initialHref;
|
|
169
|
+
if (initialHref !== void 0) this.replace(initialHref);
|
|
170
|
+
for (const {
|
|
171
|
+
href,
|
|
172
|
+
mode
|
|
173
|
+
} of this.pendingNavigations.splice(0)) {
|
|
174
|
+
void this.navigate(href, mode);
|
|
175
|
+
}
|
|
149
176
|
}
|
|
150
177
|
detach() {
|
|
151
178
|
this.host = null;
|
|
@@ -207,7 +234,11 @@ class StackNavigator {
|
|
|
207
234
|
return;
|
|
208
235
|
}
|
|
209
236
|
if (!this.host) {
|
|
210
|
-
|
|
237
|
+
this.pendingNavigations.push({
|
|
238
|
+
href,
|
|
239
|
+
mode
|
|
240
|
+
});
|
|
241
|
+
console.log(`[stack nav] ${mode} ${hrefToString(href)} \u2014 queued until a stack host attaches`);
|
|
211
242
|
return;
|
|
212
243
|
}
|
|
213
244
|
const {
|
|
@@ -234,8 +265,12 @@ class StackNavigator {
|
|
|
234
265
|
if (mode === "replace") {
|
|
235
266
|
const top = this.stackTags[this.stackTags.length - 1];
|
|
236
267
|
if (top === route.tag) return;
|
|
237
|
-
|
|
238
|
-
|
|
268
|
+
if (this.stackTags.length <= 1) {
|
|
269
|
+
this.host.replace_with_tags([...this.stackTags, route.tag]);
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
const below = this.stackTags.slice(0, -1).filter(tag => tag !== route.tag);
|
|
273
|
+
this.host.replace_with_tags([...below, route.tag]);
|
|
239
274
|
return;
|
|
240
275
|
}
|
|
241
276
|
const idx = this.stackTags.indexOf(route.tag);
|
|
@@ -158,6 +158,7 @@ var StackNavigator = /* @__PURE__ */function () {
|
|
|
158
158
|
_define_property(this, "visitedTags", /* @__PURE__ */new Set());
|
|
159
159
|
_define_property(this, "loaderDataByTag", /* @__PURE__ */new Map());
|
|
160
160
|
_define_property(this, "navSeq", 0);
|
|
161
|
+
_define_property(this, "pendingNavigations", []);
|
|
161
162
|
_define_property(this, "generation", 0);
|
|
162
163
|
_define_property(this, "snapshot", {
|
|
163
164
|
pathname: "/",
|
|
@@ -249,6 +250,7 @@ var StackNavigator = /* @__PURE__ */function () {
|
|
|
249
250
|
this.routes = defs.map(compileRoute);
|
|
250
251
|
this.visitedTags = /* @__PURE__ */new Set();
|
|
251
252
|
this.loaderDataByTag = /* @__PURE__ */new Map();
|
|
253
|
+
this.pendingNavigations = [];
|
|
252
254
|
var root = defs[0];
|
|
253
255
|
if (root) {
|
|
254
256
|
this.stackTags = [root.tag];
|
|
@@ -271,6 +273,20 @@ var StackNavigator = /* @__PURE__ */function () {
|
|
|
271
273
|
if (!tag) return void 0;
|
|
272
274
|
return this.loaderDataByTag.get(tag);
|
|
273
275
|
}
|
|
276
|
+
}, {
|
|
277
|
+
/** Seed a restored route's params/pathname BEFORE the first React render
|
|
278
|
+
* (no host action, no stack mutation). The navigation host applies
|
|
279
|
+
* `initialHref` from its attach EFFECT, which runs after the root page's
|
|
280
|
+
* content already rendered once — a restored route's query params would
|
|
281
|
+
* miss any mount-time state seeding (e.g. a list initializing filters
|
|
282
|
+
* from useLocalSearchParams). Hosts call this while lazily initializing,
|
|
283
|
+
* when no subscribers exist yet, so the rebuild notifies nobody. */
|
|
284
|
+
key: "seedInitialRoute",
|
|
285
|
+
value: function seedInitialRoute(href) {
|
|
286
|
+
var hit = this.match(href);
|
|
287
|
+
if (!hit) return;
|
|
288
|
+
this.setRouteState(hit.route.tag, hit.pathname, hit.params);
|
|
289
|
+
}
|
|
274
290
|
}, {
|
|
275
291
|
key: "preload",
|
|
276
292
|
value: (
|
|
@@ -294,11 +310,41 @@ var StackNavigator = /* @__PURE__ */function () {
|
|
|
294
310
|
})
|
|
295
311
|
}, {
|
|
296
312
|
/** Bind the live host stack (an Adw.NavigationView widget on GTK, a
|
|
297
|
-
* DomStackAdapter on DOM targets).
|
|
313
|
+
* DomStackAdapter on DOM targets). `initialHref` (state restore) applies
|
|
314
|
+
* as a replace BEFORE queued navigations flush: a deep link that arrived
|
|
315
|
+
* while unattached is fresher intent than a persisted route, so it lands
|
|
316
|
+
* on top. */
|
|
298
317
|
key: "attach",
|
|
299
|
-
value: function attach(host) {
|
|
318
|
+
value: function attach(host, options) {
|
|
300
319
|
this.host = host;
|
|
301
320
|
this.syncFromHost();
|
|
321
|
+
var initialHref = options === null || options === void 0 ? void 0 : options.initialHref;
|
|
322
|
+
if (initialHref !== void 0) this.replace(initialHref);
|
|
323
|
+
var _iteratorNormalCompletion = true,
|
|
324
|
+
_didIteratorError = false,
|
|
325
|
+
_iteratorError = void 0;
|
|
326
|
+
try {
|
|
327
|
+
for (var _iterator = this.pendingNavigations.splice(0)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
328
|
+
var {
|
|
329
|
+
href,
|
|
330
|
+
mode
|
|
331
|
+
} = _step.value;
|
|
332
|
+
void this.navigate(href, mode);
|
|
333
|
+
}
|
|
334
|
+
} catch (err) {
|
|
335
|
+
_didIteratorError = true;
|
|
336
|
+
_iteratorError = err;
|
|
337
|
+
} finally {
|
|
338
|
+
try {
|
|
339
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
340
|
+
_iterator.return();
|
|
341
|
+
}
|
|
342
|
+
} finally {
|
|
343
|
+
if (_didIteratorError) {
|
|
344
|
+
throw _iteratorError;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
302
348
|
}
|
|
303
349
|
}, {
|
|
304
350
|
key: "detach",
|
|
@@ -378,7 +424,11 @@ var StackNavigator = /* @__PURE__ */function () {
|
|
|
378
424
|
return;
|
|
379
425
|
}
|
|
380
426
|
if (!this.host) {
|
|
381
|
-
|
|
427
|
+
this.pendingNavigations.push({
|
|
428
|
+
href,
|
|
429
|
+
mode
|
|
430
|
+
});
|
|
431
|
+
console.log(`[stack nav] ${mode} ${hrefToString(href)} \u2014 queued until a stack host attaches`);
|
|
382
432
|
return;
|
|
383
433
|
}
|
|
384
434
|
var {
|
|
@@ -405,8 +455,14 @@ var StackNavigator = /* @__PURE__ */function () {
|
|
|
405
455
|
if (mode === "replace") {
|
|
406
456
|
var top = this.stackTags[this.stackTags.length - 1];
|
|
407
457
|
if (top === route.tag) return;
|
|
408
|
-
|
|
409
|
-
|
|
458
|
+
if (this.stackTags.length <= 1) {
|
|
459
|
+
this.host.replace_with_tags([...this.stackTags, route.tag]);
|
|
460
|
+
return;
|
|
461
|
+
}
|
|
462
|
+
var below = this.stackTags.slice(0, -1).filter(function (tag) {
|
|
463
|
+
return tag !== route.tag;
|
|
464
|
+
});
|
|
465
|
+
this.host.replace_with_tags([...below, route.tag]);
|
|
410
466
|
return;
|
|
411
467
|
}
|
|
412
468
|
var idx = this.stackTags.indexOf(route.tag);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","navigator_exports","__export","RouteTagContext","StackNavigator","hrefToString","stackNavigator","useNavState","useRouteParams","module","exports","import_react","require","_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","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","href","_href_params","path","pathname","leftover","entries","raw","String","token","includes","replace","encodeURIComponent","join","EMPTY_PARAMS","freeze","StackNavigator2","_this","Set","Map","tag","depth","canGoBack","generation","fn","listeners","add","delete","snapshot","navigate","host","console","log","navSeq","pop","_this_paramsByTag_get","top","stackTags","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","root","pathnameByTag","isVisited","has","loaderSnapshot","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","navigator_exports","__export","RouteTagContext","StackNavigator","hrefToString","stackNavigator","useNavState","useRouteParams","module","exports","import_react","require","_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","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","href","_href_params","path","pathname","leftover","entries","raw","String","token","includes","replace","encodeURIComponent","join","EMPTY_PARAMS","freeze","StackNavigator2","_this","Set","Map","tag","depth","canGoBack","generation","fn","listeners","add","delete","snapshot","navigate","host","console","log","navSeq","pop","_this_paramsByTag_get","top","stackTags","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":[]}
|
|
@@ -66,14 +66,17 @@ function DomNavigationHost({
|
|
|
66
66
|
}) {
|
|
67
67
|
const hostRef = useRef(null);
|
|
68
68
|
const adapterRef = useRef(null);
|
|
69
|
-
adapterRef.current
|
|
69
|
+
if (adapterRef.current === null) {
|
|
70
|
+
if (initialHref !== void 0) stackNavigator.seedInitialRoute(initialHref);
|
|
71
|
+
adapterRef.current = new DomStackAdapter(routes[0]?.tag ?? "", () => stackNavigator.syncFromHost());
|
|
72
|
+
}
|
|
70
73
|
const initialHrefRef = useRef(initialHref);
|
|
71
74
|
useEffect(() => {
|
|
72
75
|
const adapter = adapterRef.current;
|
|
73
76
|
if (!adapter) return;
|
|
74
|
-
stackNavigator.attach(adapter
|
|
75
|
-
|
|
76
|
-
|
|
77
|
+
stackNavigator.attach(adapter, {
|
|
78
|
+
initialHref: initialHrefRef.current
|
|
79
|
+
});
|
|
77
80
|
return () => stackNavigator.detach();
|
|
78
81
|
}, []);
|
|
79
82
|
useZeroHeightWarning(hostRef);
|
|
@@ -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","syncFromHost","initialHrefRef","adapter","attach","
|
|
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":"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","ignoreList":[]}
|
|
@@ -121,20 +121,23 @@ function DomNavigationHost(param) {
|
|
|
121
121
|
initialHref,
|
|
122
122
|
style
|
|
123
123
|
} = param;
|
|
124
|
-
var _adapterRef, _current, _ref;
|
|
125
|
-
var _routes_;
|
|
126
124
|
var hostRef = useRef(null);
|
|
127
125
|
var adapterRef = useRef(null);
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
126
|
+
if (adapterRef.current === null) {
|
|
127
|
+
var _ref;
|
|
128
|
+
var _routes_;
|
|
129
|
+
if (initialHref !== void 0) stackNavigator.seedInitialRoute(initialHref);
|
|
130
|
+
adapterRef.current = new DomStackAdapter((_ref = (_routes_ = routes[0]) === null || _routes_ === void 0 ? void 0 : _routes_.tag) !== null && _ref !== void 0 ? _ref : "", function () {
|
|
131
|
+
return stackNavigator.syncFromHost();
|
|
132
|
+
});
|
|
133
|
+
}
|
|
131
134
|
var initialHrefRef = useRef(initialHref);
|
|
132
135
|
useEffect(function () {
|
|
133
136
|
var adapter = adapterRef.current;
|
|
134
137
|
if (!adapter) return;
|
|
135
|
-
stackNavigator.attach(adapter
|
|
136
|
-
|
|
137
|
-
|
|
138
|
+
stackNavigator.attach(adapter, {
|
|
139
|
+
initialHref: initialHrefRef.current
|
|
140
|
+
});
|
|
138
141
|
return function () {
|
|
139
142
|
return stackNavigator.detach();
|
|
140
143
|
};
|
|
@@ -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"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":"AA4BA,SAASA,GAAA,IAAAC,IAAU,2BAAyB;AAC5C,SAAAC,QAAA,EAAAC,SAAA,EAAAC,MAAA;AAAA,SACEC,eAAA,EAAAC,cAAA,EAAAC,WAAA;AAAA,SACAC,kBAAAC,QAAA,EAAAC,WAAA;EACA,MAAAD,QAAA,YAAAC,WAAA;IAAA,MAIK,IAAAC,SAAA;
|
|
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"],"sources":["../../../src/seam/DomNavigationHost.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -57,6 +57,9 @@ class StackNavigator {
|
|
|
57
57
|
/** Monotonic navigation sequence — a loader that resolves after a NEWER
|
|
58
58
|
* navigation started must not perform its (stale) host action. */
|
|
59
59
|
navSeq = 0;
|
|
60
|
+
/** Navigations that arrived while no host was attached — flushed FIFO on
|
|
61
|
+
* attach() so deep links survive mount ordering and remount cycles. */
|
|
62
|
+
pendingNavigations = [];
|
|
60
63
|
generation = 0;
|
|
61
64
|
snapshot = {
|
|
62
65
|
pathname: "/",
|
|
@@ -73,6 +76,7 @@ class StackNavigator {
|
|
|
73
76
|
this.routes = defs.map(compileRoute);
|
|
74
77
|
this.visitedTags = /* @__PURE__ */new Set();
|
|
75
78
|
this.loaderDataByTag = /* @__PURE__ */new Map();
|
|
79
|
+
this.pendingNavigations = [];
|
|
76
80
|
const root = defs[0];
|
|
77
81
|
if (root) {
|
|
78
82
|
this.stackTags = [root.tag];
|
|
@@ -91,6 +95,18 @@ class StackNavigator {
|
|
|
91
95
|
if (!tag) return void 0;
|
|
92
96
|
return this.loaderDataByTag.get(tag);
|
|
93
97
|
}
|
|
98
|
+
/** Seed a restored route's params/pathname BEFORE the first React render
|
|
99
|
+
* (no host action, no stack mutation). The navigation host applies
|
|
100
|
+
* `initialHref` from its attach EFFECT, which runs after the root page's
|
|
101
|
+
* content already rendered once — a restored route's query params would
|
|
102
|
+
* miss any mount-time state seeding (e.g. a list initializing filters
|
|
103
|
+
* from useLocalSearchParams). Hosts call this while lazily initializing,
|
|
104
|
+
* when no subscribers exist yet, so the rebuild notifies nobody. */
|
|
105
|
+
seedInitialRoute(href) {
|
|
106
|
+
const hit = this.match(href);
|
|
107
|
+
if (!hit) return;
|
|
108
|
+
this.setRouteState(hit.route.tag, hit.pathname, hit.params);
|
|
109
|
+
}
|
|
94
110
|
/** Resolve a route's loader WITHOUT navigating. For the initial page:
|
|
95
111
|
* entries can `await stackNavigator.preload("/")` during top-level await
|
|
96
112
|
* (where GJS reliably drains promise jobs) so even the root page's first
|
|
@@ -110,10 +126,21 @@ class StackNavigator {
|
|
|
110
126
|
}
|
|
111
127
|
}
|
|
112
128
|
/** Bind the live host stack (an Adw.NavigationView widget on GTK, a
|
|
113
|
-
* DomStackAdapter on DOM targets).
|
|
114
|
-
|
|
129
|
+
* DomStackAdapter on DOM targets). `initialHref` (state restore) applies
|
|
130
|
+
* as a replace BEFORE queued navigations flush: a deep link that arrived
|
|
131
|
+
* while unattached is fresher intent than a persisted route, so it lands
|
|
132
|
+
* on top. */
|
|
133
|
+
attach(host, options) {
|
|
115
134
|
this.host = host;
|
|
116
135
|
this.syncFromHost();
|
|
136
|
+
const initialHref = options?.initialHref;
|
|
137
|
+
if (initialHref !== void 0) this.replace(initialHref);
|
|
138
|
+
for (const {
|
|
139
|
+
href,
|
|
140
|
+
mode
|
|
141
|
+
} of this.pendingNavigations.splice(0)) {
|
|
142
|
+
void this.navigate(href, mode);
|
|
143
|
+
}
|
|
117
144
|
}
|
|
118
145
|
detach() {
|
|
119
146
|
this.host = null;
|
|
@@ -175,7 +202,11 @@ class StackNavigator {
|
|
|
175
202
|
return;
|
|
176
203
|
}
|
|
177
204
|
if (!this.host) {
|
|
178
|
-
|
|
205
|
+
this.pendingNavigations.push({
|
|
206
|
+
href,
|
|
207
|
+
mode
|
|
208
|
+
});
|
|
209
|
+
console.log(`[stack nav] ${mode} ${hrefToString(href)} \u2014 queued until a stack host attaches`);
|
|
179
210
|
return;
|
|
180
211
|
}
|
|
181
212
|
const {
|
|
@@ -202,8 +233,12 @@ class StackNavigator {
|
|
|
202
233
|
if (mode === "replace") {
|
|
203
234
|
const top = this.stackTags[this.stackTags.length - 1];
|
|
204
235
|
if (top === route.tag) return;
|
|
205
|
-
|
|
206
|
-
|
|
236
|
+
if (this.stackTags.length <= 1) {
|
|
237
|
+
this.host.replace_with_tags([...this.stackTags, route.tag]);
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
const below = this.stackTags.slice(0, -1).filter(tag => tag !== route.tag);
|
|
241
|
+
this.host.replace_with_tags([...below, route.tag]);
|
|
207
242
|
return;
|
|
208
243
|
}
|
|
209
244
|
const idx = this.stackTags.indexOf(route.tag);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useContext","useSyncExternalStore","compileRoute","def","segments","pattern","split","filter","Boolean","map","seg","m","match","param","literal","parseQuery","query","params","pair","eq","indexOf","key","decodeURIComponent","slice","value","prev","Array","isArray","push","hrefToString","href","path","pathname","leftover","raw","Object","entries","String","token","includes","replace","encodeURIComponent","length","join","EMPTY_PARAMS","freeze","StackNavigator","routes","host","listeners","Set","stackTags","paramsByTag","Map","pathnameByTag","visitedTags","loaderDataByTag","navSeq","generation","snapshot","tag","depth","canGoBack","isConfigured","configure","defs","root","add","set","rebuildSnapshot","isVisited","has","loaderSnapshot","get","preload","hit","route","loader","data","err","console","error","attach","syncFromHost","detach","subscribe","fn","delete","getSnapshot","paramsSnapshot","str","parts","ok","i","part","navigate","mode","log","seq","setRouteState","top","tags","replace_with_tags","idx","push_by_tag","pop_to_tag","back","pop","setParams","model","get_navigation_stack","count","get_n_items","get_item","get_tag","find","r","stackNavigator","RouteTagContext","useNavState","useRouteParams"],"sources":["../../../src/seam/navigator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createContext","useContext","useSyncExternalStore","compileRoute","def","segments","pattern","split","filter","Boolean","map","seg","m","match","param","literal","parseQuery","query","params","pair","eq","indexOf","key","decodeURIComponent","slice","value","prev","Array","isArray","push","hrefToString","href","path","pathname","leftover","raw","Object","entries","String","token","includes","replace","encodeURIComponent","length","join","EMPTY_PARAMS","freeze","StackNavigator","routes","host","listeners","Set","stackTags","paramsByTag","Map","pathnameByTag","visitedTags","loaderDataByTag","navSeq","pendingNavigations","generation","snapshot","tag","depth","canGoBack","isConfigured","configure","defs","root","add","set","rebuildSnapshot","isVisited","has","loaderSnapshot","get","seedInitialRoute","hit","setRouteState","route","preload","loader","data","err","console","error","attach","options","syncFromHost","initialHref","mode","splice","navigate","detach","subscribe","fn","delete","getSnapshot","paramsSnapshot","str","parts","ok","i","part","log","seq","top","replace_with_tags","below","idx","push_by_tag","pop_to_tag","back","pop","setParams","model","get_navigation_stack","tags","count","get_n_items","get_item","get_tag","find","r","stackNavigator","RouteTagContext","useNavState","useRouteParams"],"sources":["../../../src/seam/navigator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|