@multiplatform.one/router 8.5.0 → 9.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.
Files changed (79) hide show
  1. package/README.md +6 -1
  2. package/dist/cjs/router/binding.cjs +35 -0
  3. package/dist/cjs/router/binding.native.js +38 -0
  4. package/dist/cjs/router/binding.native.js.map +1 -0
  5. package/dist/cjs/router/expoRouter.cjs +47 -0
  6. package/dist/cjs/router/expoRouter.native.js +50 -0
  7. package/dist/cjs/router/expoRouter.native.js.map +1 -0
  8. package/dist/cjs/router/expoRouterBinding.cjs +53 -0
  9. package/dist/cjs/router/expoRouterBinding.native.js +64 -0
  10. package/dist/cjs/router/expoRouterBinding.native.js.map +1 -0
  11. package/dist/cjs/router/index.native.js +2 -2
  12. package/dist/cjs/router/index.native.js.map +1 -1
  13. package/dist/cjs/router/{nativeFallback.cjs → nativeRouter.cjs} +28 -9
  14. package/dist/cjs/router/{nativeFallback.native.js → nativeRouter.native.js} +38 -10
  15. package/dist/cjs/router/nativeRouter.native.js.map +1 -0
  16. package/dist/esm/router/binding.mjs +9 -0
  17. package/dist/esm/router/binding.mjs.map +1 -0
  18. package/dist/esm/router/binding.native.js +9 -0
  19. package/dist/esm/router/binding.native.js.map +1 -0
  20. package/dist/esm/router/expoRouter.mjs +19 -0
  21. package/dist/esm/router/expoRouter.mjs.map +1 -0
  22. package/dist/esm/router/expoRouter.native.js +19 -0
  23. package/dist/esm/router/expoRouter.native.js.map +1 -0
  24. package/dist/esm/router/expoRouterBinding.mjs +28 -0
  25. package/dist/esm/router/expoRouterBinding.mjs.map +1 -0
  26. package/dist/esm/router/expoRouterBinding.native.js +36 -0
  27. package/dist/esm/router/expoRouterBinding.native.js.map +1 -0
  28. package/dist/esm/router/index.native.js +2 -2
  29. package/dist/esm/router/index.native.js.map +1 -1
  30. package/dist/esm/router/nativeRouter.mjs +37 -0
  31. package/dist/esm/router/nativeRouter.mjs.map +1 -0
  32. package/dist/esm/router/nativeRouter.native.js +51 -0
  33. package/dist/esm/router/nativeRouter.native.js.map +1 -0
  34. package/dist/jsx/router/binding.mjs +9 -0
  35. package/dist/jsx/router/binding.mjs.map +1 -0
  36. package/dist/jsx/router/binding.native.js +38 -0
  37. package/dist/jsx/router/binding.native.js.map +1 -0
  38. package/dist/jsx/router/expoRouter.mjs +19 -0
  39. package/dist/jsx/router/expoRouter.mjs.map +1 -0
  40. package/dist/jsx/router/expoRouter.native.js +50 -0
  41. package/dist/jsx/router/expoRouter.native.js.map +1 -0
  42. package/dist/jsx/router/expoRouterBinding.mjs +28 -0
  43. package/dist/jsx/router/expoRouterBinding.mjs.map +1 -0
  44. package/dist/jsx/router/expoRouterBinding.native.js +64 -0
  45. package/dist/jsx/router/expoRouterBinding.native.js.map +1 -0
  46. package/dist/jsx/router/index.native.js +2 -2
  47. package/dist/jsx/router/index.native.js.map +1 -1
  48. package/dist/jsx/router/nativeRouter.mjs +37 -0
  49. package/dist/jsx/router/nativeRouter.mjs.map +1 -0
  50. package/dist/jsx/router/{nativeFallback.native.js → nativeRouter.native.js} +38 -10
  51. package/dist/jsx/router/nativeRouter.native.js.map +1 -0
  52. package/package.json +21 -4
  53. package/src/router/binding.ts +25 -0
  54. package/src/router/expoRouter.spec.tsx +170 -0
  55. package/src/router/expoRouter.tsx +38 -0
  56. package/src/router/expoRouterBinding.ts +46 -0
  57. package/src/router/index.native.tsx +5 -4
  58. package/src/router/nativeRouter.tsx +45 -0
  59. package/types/router/binding.d.ts +10 -0
  60. package/types/router/binding.d.ts.map +1 -0
  61. package/types/router/expoRouter.d.ts +6 -0
  62. package/types/router/expoRouter.d.ts.map +1 -0
  63. package/types/router/expoRouterBinding.d.ts +16 -0
  64. package/types/router/expoRouterBinding.d.ts.map +1 -0
  65. package/types/router/index.native.d.ts.map +1 -1
  66. package/types/router/nativeRouter.d.ts +13 -0
  67. package/types/router/nativeRouter.d.ts.map +1 -0
  68. package/dist/cjs/router/nativeFallback.native.js.map +0 -1
  69. package/dist/esm/router/nativeFallback.mjs +0 -19
  70. package/dist/esm/router/nativeFallback.mjs.map +0 -1
  71. package/dist/esm/router/nativeFallback.native.js +0 -24
  72. package/dist/esm/router/nativeFallback.native.js.map +0 -1
  73. package/dist/jsx/router/nativeFallback.mjs +0 -19
  74. package/dist/jsx/router/nativeFallback.mjs.map +0 -1
  75. package/dist/jsx/router/nativeFallback.native.js.map +0 -1
  76. package/src/router/nativeFallback.spec.tsx +0 -46
  77. package/src/router/nativeFallback.tsx +0 -19
  78. package/types/router/nativeFallback.d.ts +0 -10
  79. package/types/router/nativeFallback.d.ts.map +0 -1
package/README.md CHANGED
@@ -10,13 +10,18 @@ Router, Storybook, web extensions) plus URL state hooks.
10
10
  pnpm add @multiplatform.one/router
11
11
  ```
12
12
 
13
- Peers: `react`, plus `one` or `react-router-dom` depending on the host app.
13
+ Peers: `react`, plus the host app's router. `one`, `expo-router` and `react-router-dom` are
14
+ optional peers, so none is installed into an app that does not list it.
14
15
 
15
16
  ## What it owns
16
17
 
17
18
  - **Navigation primitives** — `Link`, `useRouter`, `useParams`, `usePathname`
18
19
  (resolved per platform/build via file suffixes: One by default, React Router,
19
20
  Storybook, webext)
21
+ - **The Expo Router binding** — `@multiplatform.one/router/expo-router`. An Expo
22
+ Router app imports it once in its root layout, before the first render, and
23
+ the primitives above navigate with Expo Router. Without One and without a
24
+ binding, links render their children and navigation is a no-op
20
25
  - **URL state hooks** — `useSearchParams`, `useUrlState`, `useTypedSearchParams`,
21
26
  `useShareableUrl`
22
27
 
@@ -0,0 +1,35 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var binding_exports = {};
24
+ __export(binding_exports, {
25
+ bindRouter: () => bindRouter,
26
+ boundRouter: () => boundRouter
27
+ });
28
+ module.exports = __toCommonJS(binding_exports);
29
+ const slot = /* @__PURE__ */Symbol.for("@multiplatform.one/router/binding");
30
+ function bindRouter(binding) {
31
+ globalThis[slot] = binding;
32
+ }
33
+ function boundRouter() {
34
+ return globalThis[slot];
35
+ }
@@ -0,0 +1,38 @@
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 binding_exports = {};
26
+ __export(binding_exports, {
27
+ bindRouter: () => bindRouter,
28
+ boundRouter: () => boundRouter
29
+ });
30
+ module.exports = __toCommonJS(binding_exports);
31
+ var slot = /* @__PURE__ */Symbol.for("@multiplatform.one/router/binding");
32
+ function bindRouter(binding) {
33
+ globalThis[slot] = binding;
34
+ }
35
+ function boundRouter() {
36
+ return globalThis[slot];
37
+ }
38
+ //# sourceMappingURL=binding.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","binding_exports","__export","bindRouter","boundRouter","module","exports","slot","Symbol","for","binding","globalThis"],"sources":["../../../src/router/binding.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,eAAA;AAAAC,QAAA,CAAAD,eAAA;EAAAE,UAAA,EAAAA,CAAA,KAAAA,UAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA;AAAA;AAcAC,MAAM,CAAAC,OAAO,GAAAV,YAAA,CAAAK,eAAW;AAIjB,IAAAM,IAAA,GAAS,eAAWC,MAA8B,CAAAC,GAAA;AACvD,SAACN,UAAwBA,CAAAO,OAAI;EAC/BC,UAAA,CAAAJ,IAAA,IAAAG,OAAA;AAEO;AACL,SAAQN,WAAoBA,CAAA;EAC9B,OAAAO,UAAA,CAAAJ,IAAA","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var expoRouter_exports = {};
24
+ __export(expoRouter_exports, {
25
+ Link: () => Link,
26
+ useParams: () => useParams,
27
+ usePathname: () => usePathname,
28
+ useRouter: () => useRouter
29
+ });
30
+ module.exports = __toCommonJS(expoRouter_exports);
31
+ var import_binding = require("./binding.cjs");
32
+ var import_expoRouterBinding = require("./expoRouterBinding.cjs");
33
+ function loadExpoRouter() {
34
+ try {
35
+ return require("expo-router");
36
+ } catch (error) {
37
+ throw new Error("[@multiplatform.one/router] @multiplatform.one/router/expo-router binds Expo Router, but expo-router is not installed. Add expo-router to your app's dependencies.", {
38
+ cause: error
39
+ });
40
+ }
41
+ }
42
+ const binding = (0, import_expoRouterBinding.createExpoRouterBinding)(loadExpoRouter());
43
+ const Link = binding.Link;
44
+ const useParams = binding.useParams;
45
+ const usePathname = binding.usePathname;
46
+ const useRouter = binding.useRouter;
47
+ (0, import_binding.bindRouter)(binding);
@@ -0,0 +1,50 @@
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 expoRouter_exports = {};
26
+ __export(expoRouter_exports, {
27
+ Link: () => Link,
28
+ useParams: () => useParams,
29
+ usePathname: () => usePathname,
30
+ useRouter: () => useRouter
31
+ });
32
+ module.exports = __toCommonJS(expoRouter_exports);
33
+ var import_binding = require("./binding.native.js");
34
+ var import_expoRouterBinding = require("./expoRouterBinding.native.js");
35
+ function loadExpoRouter() {
36
+ try {
37
+ return require("expo-router");
38
+ } catch (error) {
39
+ throw new Error("[@multiplatform.one/router] @multiplatform.one/router/expo-router binds Expo Router, but expo-router is not installed. Add expo-router to your app's dependencies.", {
40
+ cause: error
41
+ });
42
+ }
43
+ }
44
+ var binding = (0, import_expoRouterBinding.createExpoRouterBinding)(loadExpoRouter());
45
+ var Link = binding.Link;
46
+ var useParams = binding.useParams;
47
+ var usePathname = binding.usePathname;
48
+ var useRouter = binding.useRouter;
49
+ (0, import_binding.bindRouter)(binding);
50
+ //# sourceMappingURL=expoRouter.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","expoRouter_exports","__export","Link","useParams","usePathname","useRouter","module","exports","import_binding","require","import_expoRouterBinding","loadExpoRouter","error","Error","cause","binding","createExpoRouterBinding","bindRouter"],"sources":["../../../src/router/expoRouter.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,kBAAA;AAAAC,QAAA,CAAAD,kBAAA;EAAAE,IAAA,EAAAA,CAAA,KAAAA,IAAA;EAAAC,SAAA,EAAAA,CAAA,KAAAA,SAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA,WAAA;EAAAC,SAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAZ,YAA2B,CAAAK,kBAAA;AAC3B,IAAAQ,cAAA,GAAAC,OAAA,sBAA+D;AAgB/D,IAAAC,wBAA4C,GAAAD,OAAA;AAC1C,SAAIE,eAAA;EACF;IACF,OAASF,OAAO;EACd,SAAMG,KAAI;IAAA,MACR,IAAAC,KAAA;MAEAC,KAAE,EAAAF;IACJ;EACF;AACF;AAEA,IAAAG,OAAM,OAAAL,wBAAU,CAAAM,uBAAA,EAAAL,cAAwB,GAAe;AAEhD,IAAAT,IAAM,GAAAa,OAAsB,CAAAb,IAAQ;AACpC,IAAAC,SAAM,GAAAY,OAAuB,CAAAZ,SAAQ;AACrC,IAAAC,WAAM,GAAAW,OAA2B,CAAAX,WAAQ;AACzC,IAAAC,SAAM,GAAAU,OAAuB,CAAAV,SAAQ;AAAA,IAE5CG,cAAA,CAAAS,UAAA,EAAWF,OAAO","ignoreList":[]}
@@ -0,0 +1,53 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var expoRouterBinding_exports = {};
24
+ __export(expoRouterBinding_exports, {
25
+ createExpoRouterBinding: () => createExpoRouterBinding
26
+ });
27
+ module.exports = __toCommonJS(expoRouterBinding_exports);
28
+ var import_react = require("react");
29
+ function createExpoRouterBinding(expo) {
30
+ const Link = expo.Link;
31
+ if (typeof Link.resolveHref !== "function") {
32
+ Link.resolveHref = href => href.toString();
33
+ }
34
+ return {
35
+ Link,
36
+ useParams: () => expo.useLocalSearchParams(),
37
+ usePathname: () => expo.usePathname(),
38
+ useRouter: () => {
39
+ const router = expo.useRouter();
40
+ return (0, import_react.useMemo)(() => ({
41
+ ...router,
42
+ subscribe: listener => {
43
+ listener("success");
44
+ return () => {};
45
+ },
46
+ onLoadState: listener => {
47
+ listener("loaded");
48
+ return () => {};
49
+ }
50
+ }), [router]);
51
+ }
52
+ };
53
+ }
@@ -0,0 +1,64 @@
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 expoRouterBinding_exports = {};
26
+ __export(expoRouterBinding_exports, {
27
+ createExpoRouterBinding: () => createExpoRouterBinding
28
+ });
29
+ module.exports = __toCommonJS(expoRouterBinding_exports);
30
+ var import_react = require("react");
31
+ function createExpoRouterBinding(expo) {
32
+ var Link = expo.Link;
33
+ if (typeof Link.resolveHref !== "function") {
34
+ Link.resolveHref = function (href) {
35
+ return href.toString();
36
+ };
37
+ }
38
+ return {
39
+ Link,
40
+ useParams: function useParams() {
41
+ return expo.useLocalSearchParams();
42
+ },
43
+ usePathname: function usePathname() {
44
+ return expo.usePathname();
45
+ },
46
+ useRouter: function useRouter() {
47
+ var router = expo.useRouter();
48
+ return (0, import_react.useMemo)(function () {
49
+ return {
50
+ ...router,
51
+ subscribe: function subscribe(listener) {
52
+ listener("success");
53
+ return function () {};
54
+ },
55
+ onLoadState: function onLoadState(listener) {
56
+ listener("loaded");
57
+ return function () {};
58
+ }
59
+ };
60
+ }, [router]);
61
+ }
62
+ };
63
+ }
64
+ //# sourceMappingURL=expoRouterBinding.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","expoRouterBinding_exports","__export","createExpoRouterBinding","module","exports","import_react","require","expo","Link","resolveHref","href","toString","useParams","useLocalSearchParams","usePathname","useRouter","router","useMemo","subscribe","listener","onLoadState"],"sources":["../../../src/router/expoRouterBinding.ts"],"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,uBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAwB,CAAAK,yBAAA;AAkBjB,IAAAK,YAAS,GAAAC,OAAA,QAAwB;AACtC,SAAMJ,uBAAYA,CAAAK,IAAA;EAClB,IAAIC,IAAA,GAAOD,IAAA,CAAKC,IAAA;EACd,WAAKA,IAAA,CAAAC,WAAe,KAAS,UAAK;IACpCD,IAAA,CAAAC,WAAA,aAAAC,IAAA;MACA,OAAOA,IAAA,CAAAC,QAAA;IACL;EAAA;EAC2C,OAC3C;IACAH,IAAA;IACEI,SAAM,WAASA,SAAKA,CAAA,EAAU;MAC9B,OAAAL,IAAO,CAAAM,oBAAA;IAAA;IACEC,WACF,WAAAA,YAAA;MAAA,OACHP,IAAA,CAAAO,WAAY;IACV;IACAC,SAAA,WAAOA,SAAMA,CAAA;MAAA,IAAAC,MAAC,GAAAT,IAAA,CAAAQ,SAAA;MAAA,OAChB,IAAAV,YAAA,CAAAY,OAAA;QAAA,OACA;UACE,GAAAD,MAAA;UACAE,SAAO,WAAMA,UAAAC,QAAA;YAACA,QAAA;YAChB,oBACF;UACC;UACHC,WAAA,WAAAA,YAAAD,QAAA;YACFA,QAAA;YACF,oBACF","ignoreList":[]}
@@ -30,7 +30,7 @@ __export(index_native_exports, {
30
30
  useRouter: () => useRouter
31
31
  });
32
32
  module.exports = __toCommonJS(index_native_exports);
33
- var import_nativeFallback = require("./nativeFallback.native.js");
33
+ var import_nativeRouter = require("./nativeRouter.native.js");
34
34
  function loadOne() {
35
35
  try {
36
36
  return require("one");
@@ -38,7 +38,7 @@ function loadOne() {
38
38
  return void 0;
39
39
  }
40
40
  }
41
- var router = (0, import_nativeFallback.pickRouter)(loadOne());
41
+ var router = (0, import_nativeRouter.pickNativeRouter)(loadOne());
42
42
  var Link = router.Link;
43
43
  var useParams = router.useParams;
44
44
  var useRouter = router.useRouter;
@@ -1 +1 @@
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":[]}
1
+ {"version":3,"names":["index_native_exports","__export","Link","useParams","usePathname","useRouter","module","exports","__toCommonJS","import_nativeRouter","require","loadOne","unused","router","pickNativeRouter","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,mBAAA,GAAiCC,OAAA;AACjC,SAASC,QAAA,EAAU;EACf,IAAI;IACA,OAAOD,OAAA,CAAQ,KAAK;EACxB,SAASE,MAAA,EAAQ;IACb,OAAO;EACX;AACJ;AACA,IAAIC,MAAA,OAASJ,mBAAA,CAAAK,gBAAA,EAAiBH,OAAA,CAAQ,CAAC;AAChC,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":[]}
@@ -20,26 +20,45 @@ var __copyProps = (to, from, except, desc) => {
20
20
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
21
  value: true
22
22
  }), mod);
23
- var nativeFallback_exports = {};
24
- __export(nativeFallback_exports, {
23
+ var nativeRouter_exports = {};
24
+ __export(nativeRouter_exports, {
25
+ hostRouter: () => hostRouter,
25
26
  nativeFallback: () => nativeFallback,
26
- pickRouter: () => pickRouter
27
+ pickNativeRouter: () => pickNativeRouter
27
28
  });
28
- module.exports = __toCommonJS(nativeFallback_exports);
29
+ module.exports = __toCommonJS(nativeRouter_exports);
30
+ var import_binding = require("./binding.cjs");
29
31
  var import_EmptyRouter = require("./EmptyRouter.cjs");
30
32
  var import_jsx_runtime = require("react/jsx-runtime");
31
- const Link = ({
33
+ const FallbackLink = ({
32
34
  children
33
35
  }) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
34
36
  children
35
37
  });
36
- Link.resolveHref = href => href.toString();
38
+ FallbackLink.resolveHref = href => href.toString();
37
39
  const nativeFallback = {
38
- Link,
40
+ Link: FallbackLink,
39
41
  useParams: import_EmptyRouter.useParams,
40
42
  usePathname: import_EmptyRouter.usePathname,
41
43
  useRouter: import_EmptyRouter.useRouter
42
44
  };
43
- function pickRouter(one) {
44
- return one ?? nativeFallback;
45
+ function host() {
46
+ return (0, import_binding.boundRouter)() ?? nativeFallback;
47
+ }
48
+ const HostLink = props => {
49
+ const Bound = host().Link;
50
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Bound, {
51
+ ...props
52
+ });
53
+ };
54
+ HostLink.resolveHref = href => host().Link.resolveHref(href);
55
+ const hostRouter = {
56
+ Link: HostLink,
57
+ useParams: () => host().useParams(),
58
+ usePathname: () => host().usePathname(),
59
+ useRouter: () => host().useRouter()
60
+ };
61
+ function pickNativeRouter(one) {
62
+ if (one?.Link && one.useParams && one.usePathname && one.useRouter) return one;
63
+ return hostRouter;
45
64
  }
@@ -22,15 +22,17 @@ var __copyProps = (to, from, except, desc) => {
22
22
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
23
  value: true
24
24
  }), mod);
25
- var nativeFallback_exports = {};
26
- __export(nativeFallback_exports, {
25
+ var nativeRouter_exports = {};
26
+ __export(nativeRouter_exports, {
27
+ hostRouter: () => hostRouter,
27
28
  nativeFallback: () => nativeFallback,
28
- pickRouter: () => pickRouter
29
+ pickNativeRouter: () => pickNativeRouter
29
30
  });
30
- module.exports = __toCommonJS(nativeFallback_exports);
31
+ module.exports = __toCommonJS(nativeRouter_exports);
31
32
  var import_jsx_runtime = require("react/jsx-runtime");
33
+ var import_binding = require("./binding.native.js");
32
34
  var import_EmptyRouter = require("./EmptyRouter.native.js");
33
- var Link = function Link2(param) {
35
+ var FallbackLink = function FallbackLink2(param) {
34
36
  var {
35
37
  children
36
38
  } = param;
@@ -38,16 +40,42 @@ var Link = function Link2(param) {
38
40
  children
39
41
  });
40
42
  };
41
- Link.resolveHref = function (href) {
43
+ FallbackLink.resolveHref = function (href) {
42
44
  return href.toString();
43
45
  };
44
46
  var nativeFallback = {
45
- Link,
47
+ Link: FallbackLink,
46
48
  useParams: import_EmptyRouter.useParams,
47
49
  usePathname: import_EmptyRouter.usePathname,
48
50
  useRouter: import_EmptyRouter.useRouter
49
51
  };
50
- function pickRouter(one) {
51
- return one !== null && one !== void 0 ? one : nativeFallback;
52
+ function host() {
53
+ var _boundRouter;
54
+ return (_boundRouter = (0, import_binding.boundRouter)()) !== null && _boundRouter !== void 0 ? _boundRouter : nativeFallback;
52
55
  }
53
- //# sourceMappingURL=nativeFallback.native.js.map
56
+ var HostLink = function HostLink2(props) {
57
+ var Bound = host().Link;
58
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Bound, {
59
+ ...props
60
+ });
61
+ };
62
+ HostLink.resolveHref = function (href) {
63
+ return host().Link.resolveHref(href);
64
+ };
65
+ var hostRouter = {
66
+ Link: HostLink,
67
+ useParams: function useParams2() {
68
+ return host().useParams();
69
+ },
70
+ usePathname: function usePathname2() {
71
+ return host().usePathname();
72
+ },
73
+ useRouter: function useRouter2() {
74
+ return host().useRouter();
75
+ }
76
+ };
77
+ function pickNativeRouter(one) {
78
+ if ((one === null || one === void 0 ? void 0 : one.Link) && one.useParams && one.usePathname && one.useRouter) return one;
79
+ return hostRouter;
80
+ }
81
+ //# sourceMappingURL=nativeRouter.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","nativeRouter_exports","__export","hostRouter","nativeFallback","pickNativeRouter","module","exports","import_jsx_runtime","require","import_binding","import_EmptyRouter","FallbackLink","FallbackLink2","param","children","jsx","Fragment","resolveHref","href","toString","Link","useParams","usePathname","useRouter","host","_boundRouter","boundRouter","HostLink","HostLink2","props","Bound"],"sources":["../../../src/router/nativeRouter.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,oBAAA;AAAAC,QAAA,CAAAD,oBAAA;EAAAE,UAAA,EAAAA,CAAA,KAAAA,UAAA;EAAAC,cAAA,EAAAA,CAAA,KAAAA,cAAA;EAAAC,gBAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAX,YAAgD,CAAAK,oBAAA;AAChD,IAAAO,kBAAA,GAAkDC,OAAA;AAEI,IAAAC,cAAA,GAAAD,OAAA;AAAtD,IAAAE,kBAAqC,GAAEF,OAAA,CAAS,yBAAM;AAEtD,IAAAG,YAAa,YAAeC,aAASA,CAAKC,KAAA;EAGnC,IAAM;IAAAC;EAAA,IAAAD,KAAgC;EAC3C,OAAM,mBAAAN,kBAAA,CAAAQ,GAAA,EAAAR,kBAAA,CAAAS,QAAA;IACNF;EACA;AAAA;AAEFH,YAAA,CAAAM,WAAA,aAAAC,IAAA;EAEA,OAASA,IAAA,CAAAC,QAAsB;AAC7B;AACF,IAAAhB,cAAA;EAEAiB,IAAM,EAAAT,YAA2B;EAC/BU,SAAM,EAAAX,kBAAe,CAAAW,SAAA;EACrBC,WAAO,EAAAZ,kBAAA,CAAAY,WAAA;EACTC,SAAA,EAAAb,kBAAA,CAAAa;AAEA;AAQO,SAAMC,KAAA;EACX,IAAAC,YAAM;EACN,QAAAA,YAAiB,GAAK,CAAE,GAAAhB,cAAU,CAAAiB,WAAA,iBAAAD,YAAA,cAAAA,YAAA,GAAAtB,cAAA;AAAA;AACI,IACtCwB,QAAA,GAAW,SAAWC,SAAEA,CAAAC,KAAU;EACpC,IAAAC,KAAA,GAAAN,IAAA,GAAAJ,IAAA;EAGO,OAAS,gBAAiB,GAAAb,kBAAwD,CAAAQ,GAAA,EAAAe,KAAA;IACvF,GAAID;EACJ;AACF","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ const slot = /* @__PURE__ */Symbol.for("@multiplatform.one/router/binding");
2
+ function bindRouter(binding) {
3
+ globalThis[slot] = binding;
4
+ }
5
+ function boundRouter() {
6
+ return globalThis[slot];
7
+ }
8
+ export { bindRouter, boundRouter };
9
+ //# sourceMappingURL=binding.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["slot","Symbol","for","bindRouter","binding","globalThis","boundRouter"],"sources":["../../../src/router/binding.ts"],"sourcesContent":[null],"mappings":"AAcA,MAAMA,IAAA,GAAO,eAAAC,MAAA,CAAOC,GAAA,CAAI,mCAAmC;AAIpD,SAASC,WAAWC,OAAA,EAA8B;EACtDC,UAAA,CAAoBL,IAAI,IAAII,OAAA;AAC/B;AAEO,SAASE,YAAA,EAAyC;EACvD,OAAQD,UAAA,CAAoBL,IAAI;AAClC","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ var slot = /* @__PURE__ */Symbol.for("@multiplatform.one/router/binding");
2
+ function bindRouter(binding) {
3
+ globalThis[slot] = binding;
4
+ }
5
+ function boundRouter() {
6
+ return globalThis[slot];
7
+ }
8
+ export { bindRouter, boundRouter };
9
+ //# sourceMappingURL=binding.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["slot","Symbol","for","bindRouter","binding","globalThis","boundRouter"],"sources":["../../../src/router/binding.ts"],"sourcesContent":[null],"mappings":"AAcA,IAAAA,IAAM,kBAAOC,MAAA,CAAAC,GAAO,oCAAI;AAIjB,SAASC,WAAWC,OAAA,EAA8B;EACtDC,UAAA,CAAoBL,IAAI,IAAII,OAAA;AAC/B;AAEO,SAASE,YAAA,EAAyC;EACvD,OAAQD,UAAA,CAAoBL,IAAI;AAClC","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import { bindRouter } from "./binding.mjs";
2
+ import { createExpoRouterBinding } from "./expoRouterBinding.mjs";
3
+ function loadExpoRouter() {
4
+ try {
5
+ return require("expo-router");
6
+ } catch (error) {
7
+ throw new Error("[@multiplatform.one/router] @multiplatform.one/router/expo-router binds Expo Router, but expo-router is not installed. Add expo-router to your app's dependencies.", {
8
+ cause: error
9
+ });
10
+ }
11
+ }
12
+ const binding = createExpoRouterBinding(loadExpoRouter());
13
+ const Link = binding.Link;
14
+ const useParams = binding.useParams;
15
+ const usePathname = binding.usePathname;
16
+ const useRouter = binding.useRouter;
17
+ bindRouter(binding);
18
+ export { Link, useParams, usePathname, useRouter };
19
+ //# sourceMappingURL=expoRouter.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bindRouter","createExpoRouterBinding","loadExpoRouter","require","error","Error","cause","binding","Link","useParams","usePathname","useRouter"],"sources":["../../../src/router/expoRouter.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,UAAA,QAAkB;AAC3B,SAASC,uBAAA,QAAsD;AAgB/D,SAASC,eAAA,EAAmC;EAC1C,IAAI;IACF,OAAOC,OAAA,CAAQ,aAAa;EAC9B,SAASC,KAAA,EAAO;IACd,MAAM,IAAIC,KAAA,CACR,sKAEA;MAAEC,KAAA,EAAOF;IAAM,CACjB;EACF;AACF;AAEA,MAAMG,OAAA,GAAUN,uBAAA,CAAwBC,cAAA,CAAe,CAAC;AAEjD,MAAMM,IAAA,GAAsBD,OAAA,CAAQC,IAAA;AACpC,MAAMC,SAAA,GAAuBF,OAAA,CAAQE,SAAA;AACrC,MAAMC,WAAA,GAA2BH,OAAA,CAAQG,WAAA;AACzC,MAAMC,SAAA,GAAuBJ,OAAA,CAAQI,SAAA;AAE5CX,UAAA,CAAWO,OAAO","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import { bindRouter } from "./binding.native.js";
2
+ import { createExpoRouterBinding } from "./expoRouterBinding.native.js";
3
+ function loadExpoRouter() {
4
+ try {
5
+ return require("expo-router");
6
+ } catch (error) {
7
+ throw new Error("[@multiplatform.one/router] @multiplatform.one/router/expo-router binds Expo Router, but expo-router is not installed. Add expo-router to your app's dependencies.", {
8
+ cause: error
9
+ });
10
+ }
11
+ }
12
+ var binding = createExpoRouterBinding(loadExpoRouter());
13
+ var Link = binding.Link;
14
+ var useParams = binding.useParams;
15
+ var usePathname = binding.usePathname;
16
+ var useRouter = binding.useRouter;
17
+ bindRouter(binding);
18
+ export { Link, useParams, usePathname, useRouter };
19
+ //# sourceMappingURL=expoRouter.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bindRouter","createExpoRouterBinding","loadExpoRouter","require","error","Error","cause","binding","Link","useParams","usePathname","useRouter"],"sources":["../../../src/router/expoRouter.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,UAAA,QAAkB;AAC3B,SAASC,uBAAA,QAAsD;AAgB/D,SAASC,eAAA,EAAmC;EAC1C,IAAI;IACF,OAAOC,OAAA,CAAQ,aAAa;EAC9B,SAASC,KAAA,EAAO;IACd,MAAM,IAAIC,KAAA;MACRC,KAAA,EAAAF;IAAA,EAEA;EAAe;AACjB;AAEJ,IAAAG,OAAA,GAAAN,uBAAA,CAAAC,cAAA;AAEA,IAAAM,IAAM,GAAAD,OAAU,CAAAC,IAAA;AAET,IAAAC,SAA4B,GAAAF,OAAQ,CAAAE,SAAA;AACpC,IAAAC,WAAM,GAAuBH,OAAA,CAAQG,WAAA;AACrC,IAAAC,SAAM,GAAAJ,OAA2B,CAAAI,SAAQ;AACzCX,UAAM,CAAAO,OAAuB;AAEpC,S","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ import { useMemo } from "react";
2
+ function createExpoRouterBinding(expo) {
3
+ const Link = expo.Link;
4
+ if (typeof Link.resolveHref !== "function") {
5
+ Link.resolveHref = href => href.toString();
6
+ }
7
+ return {
8
+ Link,
9
+ useParams: () => expo.useLocalSearchParams(),
10
+ usePathname: () => expo.usePathname(),
11
+ useRouter: () => {
12
+ const router = expo.useRouter();
13
+ return useMemo(() => ({
14
+ ...router,
15
+ subscribe: listener => {
16
+ listener("success");
17
+ return () => {};
18
+ },
19
+ onLoadState: listener => {
20
+ listener("loaded");
21
+ return () => {};
22
+ }
23
+ }), [router]);
24
+ }
25
+ };
26
+ }
27
+ export { createExpoRouterBinding };
28
+ //# sourceMappingURL=expoRouterBinding.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","createExpoRouterBinding","expo","Link","resolveHref","href","toString","useParams","useLocalSearchParams","usePathname","useRouter","router","subscribe","listener","onLoadState"],"sources":["../../../src/router/expoRouterBinding.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,QAAe;AAkBjB,SAASC,wBAAwBC,IAAA,EAAuC;EAC7E,MAAMC,IAAA,GAAOD,IAAA,CAAKC,IAAA;EAClB,IAAI,OAAOA,IAAA,CAAKC,WAAA,KAAgB,YAAY;IAC1CD,IAAA,CAAKC,WAAA,GAAeC,IAAA,IAASA,IAAA,CAAKC,QAAA,CAAS;EAC7C;EACA,OAAO;IACLH,IAAA;IACAI,SAAA,EAAWA,CAAA,KAAML,IAAA,CAAKM,oBAAA,CAAqB;IAC3CC,WAAA,EAAaA,CAAA,KAAMP,IAAA,CAAKO,WAAA,CAAY;IACpCC,SAAA,EAAWA,CAAA,KAAM;MACf,MAAMC,MAAA,GAAST,IAAA,CAAKQ,SAAA,CAAU;MAC9B,OAAOV,OAAA,CACL,OAAO;QACL,GAAGW,MAAA;QACHC,SAAA,EAAYC,QAAA,IAAa;UACvBA,QAAA,CAAS,SAAS;UAClB,OAAO,MAAM,CAAC;QAChB;QACAC,WAAA,EAAcD,QAAA,IAAa;UACzBA,QAAA,CAAS,QAAQ;UACjB,OAAO,MAAM,CAAC;QAChB;MACF,IACA,CAACF,MAAM,CACT;IACF;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ import { useMemo } from "react";
2
+ function createExpoRouterBinding(expo) {
3
+ var Link = expo.Link;
4
+ if (typeof Link.resolveHref !== "function") {
5
+ Link.resolveHref = function (href) {
6
+ return href.toString();
7
+ };
8
+ }
9
+ return {
10
+ Link,
11
+ useParams: function useParams() {
12
+ return expo.useLocalSearchParams();
13
+ },
14
+ usePathname: function usePathname() {
15
+ return expo.usePathname();
16
+ },
17
+ useRouter: function useRouter() {
18
+ var router = expo.useRouter();
19
+ return useMemo(function () {
20
+ return {
21
+ ...router,
22
+ subscribe: function subscribe(listener) {
23
+ listener("success");
24
+ return function () {};
25
+ },
26
+ onLoadState: function onLoadState(listener) {
27
+ listener("loaded");
28
+ return function () {};
29
+ }
30
+ };
31
+ }, [router]);
32
+ }
33
+ };
34
+ }
35
+ export { createExpoRouterBinding };
36
+ //# sourceMappingURL=expoRouterBinding.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","createExpoRouterBinding","expo","Link","resolveHref","href","toString","useParams","useLocalSearchParams","usePathname","useRouter","router","subscribe","listener","onLoadState"],"sources":["../../../src/router/expoRouterBinding.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,QAAe;AAkBjB,SAASC,wBAAwBC,IAAA,EAAuC;EAC7E,IAAAC,IAAM,GAAAD,IAAO,CAAAC,IAAK;EAClB,IAAI,OAAOA,IAAA,CAAKC,WAAA,KAAgB,YAAY;IAC1CD,IAAA,CAAKC,WAAA,GAAc,UAACC,IAAS,EAAK;MACpC,OAAAA,IAAA,CAAAC,QAAA;IACA;EAAO;EACL,OACA;IACAH,IAAA;IACAI,SAAA,EAAW,SAAMA,UAAA;MACf,OAAML,IAAA,CAAAM,oBAAwB;IAC9B;IAAOC,WACE,WAAAA,YAAA;MAAA,OACFP,IAAA,CAAAO,WAAA;IAAA;IAEDC,SAAA,WAASA,SAASA,CAAA;MAClB,IAAAC,MAAA,GAAOT,IAAA,CAAAQ,SAAM;MAAA,OAACV,OAAA;QAAA,OAChB;UACA,GAAAW,MAAA;UACEC,SAAA,EAAS,SAAQA,UAAAC,QAAA;YACjBA,QAAO,UAAM;YAAC,oBAChB;UACF;UACCC,WAAM,WAAAA,YAAAD,QAAA;YACTA,QAAA;YACF,oBACF;UACF","ignoreList":[]}