@multiplatform.one/router 8.6.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.
- package/README.md +6 -1
- package/dist/cjs/router/binding.cjs +35 -0
- package/dist/cjs/router/binding.native.js +38 -0
- package/dist/cjs/router/binding.native.js.map +1 -0
- package/dist/cjs/router/expoRouter.cjs +47 -0
- package/dist/cjs/router/expoRouter.native.js +50 -0
- package/dist/cjs/router/expoRouter.native.js.map +1 -0
- package/dist/cjs/router/expoRouterBinding.cjs +53 -0
- package/dist/cjs/router/expoRouterBinding.native.js +64 -0
- package/dist/cjs/router/expoRouterBinding.native.js.map +1 -0
- package/dist/cjs/router/index.native.js +2 -2
- package/dist/cjs/router/index.native.js.map +1 -1
- package/dist/cjs/router/{nativeFallback.cjs → nativeRouter.cjs} +28 -9
- package/dist/cjs/router/{nativeFallback.native.js → nativeRouter.native.js} +38 -10
- package/dist/cjs/router/nativeRouter.native.js.map +1 -0
- package/dist/esm/router/binding.mjs +9 -0
- package/dist/esm/router/binding.mjs.map +1 -0
- package/dist/esm/router/binding.native.js +9 -0
- package/dist/esm/router/binding.native.js.map +1 -0
- package/dist/esm/router/expoRouter.mjs +19 -0
- package/dist/esm/router/expoRouter.mjs.map +1 -0
- package/dist/esm/router/expoRouter.native.js +19 -0
- package/dist/esm/router/expoRouter.native.js.map +1 -0
- package/dist/esm/router/expoRouterBinding.mjs +28 -0
- package/dist/esm/router/expoRouterBinding.mjs.map +1 -0
- package/dist/esm/router/expoRouterBinding.native.js +36 -0
- package/dist/esm/router/expoRouterBinding.native.js.map +1 -0
- package/dist/esm/router/index.native.js +2 -2
- package/dist/esm/router/index.native.js.map +1 -1
- package/dist/esm/router/nativeRouter.mjs +37 -0
- package/dist/esm/router/nativeRouter.mjs.map +1 -0
- package/dist/esm/router/nativeRouter.native.js +51 -0
- package/dist/esm/router/nativeRouter.native.js.map +1 -0
- package/dist/jsx/router/binding.mjs +9 -0
- package/dist/jsx/router/binding.mjs.map +1 -0
- package/dist/jsx/router/binding.native.js +38 -0
- package/dist/jsx/router/binding.native.js.map +1 -0
- package/dist/jsx/router/expoRouter.mjs +19 -0
- package/dist/jsx/router/expoRouter.mjs.map +1 -0
- package/dist/jsx/router/expoRouter.native.js +50 -0
- package/dist/jsx/router/expoRouter.native.js.map +1 -0
- package/dist/jsx/router/expoRouterBinding.mjs +28 -0
- package/dist/jsx/router/expoRouterBinding.mjs.map +1 -0
- package/dist/jsx/router/expoRouterBinding.native.js +64 -0
- package/dist/jsx/router/expoRouterBinding.native.js.map +1 -0
- package/dist/jsx/router/index.native.js +2 -2
- package/dist/jsx/router/index.native.js.map +1 -1
- package/dist/jsx/router/nativeRouter.mjs +37 -0
- package/dist/jsx/router/nativeRouter.mjs.map +1 -0
- package/dist/jsx/router/{nativeFallback.native.js → nativeRouter.native.js} +38 -10
- package/dist/jsx/router/nativeRouter.native.js.map +1 -0
- package/package.json +21 -4
- package/src/router/binding.ts +25 -0
- package/src/router/expoRouter.spec.tsx +170 -0
- package/src/router/expoRouter.tsx +38 -0
- package/src/router/expoRouterBinding.ts +46 -0
- package/src/router/index.native.tsx +5 -4
- package/src/router/nativeRouter.tsx +45 -0
- package/types/router/binding.d.ts +10 -0
- package/types/router/binding.d.ts.map +1 -0
- package/types/router/expoRouter.d.ts +6 -0
- package/types/router/expoRouter.d.ts.map +1 -0
- package/types/router/expoRouterBinding.d.ts +16 -0
- package/types/router/expoRouterBinding.d.ts.map +1 -0
- package/types/router/index.native.d.ts.map +1 -1
- package/types/router/nativeRouter.d.ts +13 -0
- package/types/router/nativeRouter.d.ts.map +1 -0
- package/dist/cjs/router/nativeFallback.native.js.map +0 -1
- package/dist/esm/router/nativeFallback.mjs +0 -19
- package/dist/esm/router/nativeFallback.mjs.map +0 -1
- package/dist/esm/router/nativeFallback.native.js +0 -24
- package/dist/esm/router/nativeFallback.native.js.map +0 -1
- package/dist/jsx/router/nativeFallback.mjs +0 -19
- package/dist/jsx/router/nativeFallback.mjs.map +0 -1
- package/dist/jsx/router/nativeFallback.native.js.map +0 -1
- package/src/router/nativeFallback.spec.tsx +0 -46
- package/src/router/nativeFallback.tsx +0 -19
- package/types/router/nativeFallback.d.ts +0 -10
- 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`
|
|
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
|
|
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,
|
|
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","
|
|
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
|
|
24
|
-
__export(
|
|
23
|
+
var nativeRouter_exports = {};
|
|
24
|
+
__export(nativeRouter_exports, {
|
|
25
|
+
hostRouter: () => hostRouter,
|
|
25
26
|
nativeFallback: () => nativeFallback,
|
|
26
|
-
|
|
27
|
+
pickNativeRouter: () => pickNativeRouter
|
|
27
28
|
});
|
|
28
|
-
module.exports = __toCommonJS(
|
|
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
|
|
33
|
+
const FallbackLink = ({
|
|
32
34
|
children
|
|
33
35
|
}) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
|
|
34
36
|
children
|
|
35
37
|
});
|
|
36
|
-
|
|
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
|
|
44
|
-
return
|
|
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
|
|
26
|
-
__export(
|
|
25
|
+
var nativeRouter_exports = {};
|
|
26
|
+
__export(nativeRouter_exports, {
|
|
27
|
+
hostRouter: () => hostRouter,
|
|
27
28
|
nativeFallback: () => nativeFallback,
|
|
28
|
-
|
|
29
|
+
pickNativeRouter: () => pickNativeRouter
|
|
29
30
|
});
|
|
30
|
-
module.exports = __toCommonJS(
|
|
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
|
|
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
|
-
|
|
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
|
|
51
|
-
|
|
52
|
+
function host() {
|
|
53
|
+
var _boundRouter;
|
|
54
|
+
return (_boundRouter = (0, import_binding.boundRouter)()) !== null && _boundRouter !== void 0 ? _boundRouter : nativeFallback;
|
|
52
55
|
}
|
|
53
|
-
|
|
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":[]}
|