@typed/router 0.27.4 → 0.27.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"CurrentRoute.js","names":["Context","_interopRequireWildcard","require","Document","RefSubject","_navigation","Option","Effect","_Function","Route","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","CurrentRoute","exports","Tagged","make","route","parent","none","getRoute","layer","fromPath","CurrentParams","filterMapEffect","CurrentPath","path","with","match","withCurrentRoute","dual","effect","contextWithEffect","ctx","getOption","isNone","pipe","provide","value","concat","makeHref_","currentPath","currentRoute","params","currentMatch","fullRoute","fullParams","some","makeHref","pathOrRoute","map","isActive_","fullPath","startsWith","isActive","mapEffect","browser","gen","_","document","base","querySelector","baseHref","href","server","getSearchParams","destination","fromEntries","url","searchParams","CurrentSearchParams","CurrentEntry","CurrentState","d","state"],"sources":["../../src/CurrentRoute.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"CurrentRoute.js","names":["Context","_interopRequireWildcard","require","Document","RefSubject","_navigation","Option","Effect","_Function","Route","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","CurrentRoute","exports","Tagged","make","route","parent","none","getRoute","layer","fromPath","CurrentParams","filterMapEffect","CurrentPath","path","with","match","withCurrentRoute","dual","effect","contextWithEffect","ctx","getOption","isNone","pipe","provide","value","concat","makeHref_","currentPath","currentRoute","params","currentMatch","fullRoute","fullParams","some","makeHref","pathOrRoute","map","isActive_","fullPath","startsWith","isActive","mapEffect","browser","gen","_","document","base","querySelector","baseHref","href","server","getSearchParams","destination","fromEntries","url","searchParams","CurrentSearchParams","CurrentEntry","CurrentState","d","state"],"sources":["../../src/CurrentRoute.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -30,27 +30,28 @@ class RouteMatcherImpl {
30
30
  this.notFound = this.notFound.bind(this);
31
31
  this.redirect = this.redirect.bind(this);
32
32
  }
33
- match(pathOrRoute, guard, f) {
34
- const route = getRoute(pathOrRoute);
35
- if (arguments.length === 2) {
33
+ match(...args) {
34
+ const route = getRoute(args[0]);
35
+ if (args.length === 2) {
36
36
  return new RouteMatcherImpl([...this.guards, {
37
37
  route,
38
38
  guard: getGuard(route),
39
- match: ref => Fx.scoped(guard(ref))
39
+ match: ref => Fx.scoped(args[1](ref))
40
40
  }]);
41
41
  } else {
42
42
  return new RouteMatcherImpl([...this.guards, {
43
43
  route,
44
- guard: getGuard(route, guard),
45
- match: ref => Fx.scoped(f(ref))
44
+ guard: getGuard(route, args[1]),
45
+ match: ref => Fx.scoped(args[2](ref))
46
46
  }]);
47
47
  }
48
48
  }
49
- to(route, guard, f) {
50
- if (arguments.length === 2) {
51
- return this.match(route, ref => RefSubject.map(ref, guard));
49
+ to(...args) {
50
+ const route = getRoute(args[0]);
51
+ if (args.length === 2) {
52
+ return this.match(route, ref => RefSubject.map(ref, args[1]));
52
53
  } else {
53
- return this.match(route, guard, ref => RefSubject.map(ref, f));
54
+ return this.match(route, args[1], ref => RefSubject.map(ref, args[2]));
54
55
  }
55
56
  }
56
57
  notFound(f) {
@@ -58,7 +59,7 @@ class RouteMatcherImpl {
58
59
  const onNotFound = Fx.scoped(f(Navigation.CurrentEntry));
59
60
  let matcher = Match.value(
60
61
  // Only if we're rendering in a DOM-based environment should we allow for routing to last indefinitely
61
- env === "server" || env === "static" ? Fx.take(Navigation.CurrentPath, 1) : Navigation.CurrentPath);
62
+ env === "dom" || env === "test:dom" ? Navigation.CurrentPath : Fx.take(Navigation.CurrentPath, 1));
62
63
  for (const {
63
64
  guard,
64
65
  match,
@@ -1 +1 @@
1
- {"version":3,"file":"Matcher.js","names":["_environment","require","Fx","_interopRequireWildcard","Match","RefSubject","Guard","Navigation","Route","Effect","Option","_CurrentRoute","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RouteMatcherImpl","guards","constructor","match","bind","to","notFound","redirect","pathOrRoute","guard","f","route","getRoute","arguments","length","getGuard","ref","scoped","map","fromFxEffect","CurrentEnvironment","with","env","onNotFound","CurrentEntry","matcher","value","take","CurrentPath","when","middleware","withCurrentRoute","filterMapErrorEffect","getOrElse","isRedirectError","as","forkScoped","handleRedirect","none","succeedSome","params","mapEffect","makeHref","s","fail","redirectToPath","path","compose","asGuard","fromPath","empty","exports"],"sources":["../../src/Matcher.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"Matcher.js","names":["_environment","require","Fx","_interopRequireWildcard","Match","RefSubject","Guard","Navigation","Route","Effect","Option","_CurrentRoute","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","RouteMatcherImpl","guards","constructor","match","bind","to","notFound","redirect","args","route","getRoute","length","guard","getGuard","ref","scoped","map","f","fromFxEffect","CurrentEnvironment","with","env","onNotFound","CurrentEntry","matcher","value","CurrentPath","take","when","middleware","withCurrentRoute","filterMapErrorEffect","getOrElse","isRedirectError","as","forkScoped","handleRedirect","none","succeedSome","params","mapEffect","makeHref","s","fail","redirectToPath","path","compose","asGuard","fromPath","empty","exports"],"sources":["../../src/Matcher.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_CurrentRoute","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Matcher"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;AAOA,IAAAA,aAAA,gBAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AAKA,IAAAK,QAAA,gBAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,QAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,QAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,QAAA,CAAAL,GAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["_CurrentRoute","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Matcher"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;AAOA,IAAAA,aAAA,gBAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AAKA,IAAAK,QAAA,gBAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,QAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,QAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,QAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -13,18 +13,18 @@ import type { CurrentRoute } from "./CurrentRoute.js";
13
13
  /**
14
14
  * @since 1.0.0
15
15
  */
16
- export interface RouteMatcher<A, E, R> {
17
- readonly guards: ReadonlyArray<RouteGuard<any, any, A, E, R, E, R>>;
16
+ export interface RouteMatcher<out A, out E, out R> {
17
+ readonly guards: ReadonlyArray<RouteGuard<string, any, A, E, R, E, R>>;
18
18
  readonly match: {
19
- <const P extends string, B, E2, R2>(route: Route.Route<P> | P, f: (ref: RefSubject.RefSubject<Path.ParamsOf<P>>) => Fx.Fx<B, E2, R2>): RouteMatcher<R | Exclude<R2, Scope.Scope>, E | E2, A | B>;
20
- <const P extends string, B, E2, R2, C, E3, R3>(route: Route.Route<P> | P, guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>, f: (ref: RefSubject.RefSubject<B>) => Fx.Fx<C, E3, R3>): RouteMatcher<R | Exclude<R2, Scope.Scope> | Exclude<R3, Scope.Scope>, E | E2 | E3, A | C>;
19
+ <const P extends string, B, E2, R2>(route: Route.Route<P> | P, f: (ref: RefSubject.RefSubject<Path.ParamsOf<P>>) => Fx.Fx<B, E2, R2>): RouteMatcher<A | B, E | E2, R | Exclude<R2, Scope.Scope>>;
20
+ <const P extends string, B, E2, R2, C, E3, R3>(route: Route.Route<P> | P, guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>, f: (ref: RefSubject.RefSubject<B>) => Fx.Fx<C, E3, R3>): RouteMatcher<A | C, E | E2 | E3, R | Exclude<R2, Scope.Scope> | Exclude<R3, Scope.Scope>>;
21
21
  };
22
22
  readonly to: {
23
23
  <const P extends string, B>(route: Route.Route<P> | P, f: (params: Path.ParamsOf<P>) => B): RouteMatcher<A | B, E, R>;
24
24
  <const P extends string, B, E2, R2, C, E3, R3>(route: Route.Route<P> | P, guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>, f: (b: B) => C): RouteMatcher<A | C, E | E2 | E3, R | Exclude<R2, Scope.Scope> | Exclude<R3, Scope.Scope>>;
25
25
  };
26
26
  readonly notFound: <B, E2, R2>(f: (destination: typeof Navigation.CurrentEntry) => Fx.Fx<B, E2, R2>) => Fx.Fx<A | B, Exclude<E | E2, Navigation.RedirectError>, Navigation.Navigation | CurrentEnvironment | R | R2 | Scope.Scope>;
27
- readonly redirect: <const P extends string>(route: Route.Route<P> | P, ...[params]: [keyof Path.ParamsOf<P>] extends [never] ? [{}?] : [Path.ParamsOf<P>]) => Fx.Fx<A, Exclude<E, Navigation.RedirectError>, Navigation.Navigation | CurrentRoute | CurrentEnvironment | R | Scope.Scope>;
27
+ readonly redirect: <const P extends string>(route: Route.Route<P> | P, ...params: [keyof Path.ParamsOf<P>] extends [never] ? [{}?] : [Path.ParamsOf<P>]) => Fx.Fx<A, Exclude<E, Navigation.RedirectError>, Navigation.Navigation | CurrentRoute | CurrentEnvironment | R | Scope.Scope>;
28
28
  }
29
29
  /**
30
30
  * @since 1.0.0
@@ -46,8 +46,8 @@ export declare const
46
46
  * @since 1.0.0
47
47
  */
48
48
  match: {
49
- <const P extends string, B, E2, R2>(route: P | Route.Route<P>, f: (ref: RefSubject.RefSubject<Path.ParamsOf<P>, never, never>) => Fx.Fx<B, E2, R2>): RouteMatcher<Exclude<R2, Scope.Scope>, E2, B>;
50
- <const P_1 extends string, B_1, E2_1, R2_1, C, E3, R3>(route: P_1 | Route.Route<P_1>, guard: Guard.Guard<Path.ParamsOf<P_1>, B_1, E2_1, R2_1>, f: (ref: RefSubject.RefSubject<B_1, never, never>) => Fx.Fx<C, E3, R3>): RouteMatcher<Exclude<R2_1, Scope.Scope> | Exclude<R3, Scope.Scope>, E2_1 | E3, C>;
49
+ <const P extends string, B, E2, R2>(route: P | Route.Route<P>, f: (ref: RefSubject.RefSubject<Path.ParamsOf<P>, never, never>) => Fx.Fx<B, E2, R2>): RouteMatcher<B, E2, Exclude<R2, Scope.Scope>>;
50
+ <const P_1 extends string, B_1, E2_1, R2_1, C, E3, R3>(route: P_1 | Route.Route<P_1>, guard: Guard.Guard<Path.ParamsOf<P_1>, B_1, E2_1, R2_1>, f: (ref: RefSubject.RefSubject<B_1, never, never>) => Fx.Fx<C, E3, R3>): RouteMatcher<C, E2_1 | E3, Exclude<R2_1, Scope.Scope> | Exclude<R3, Scope.Scope>>;
51
51
  },
52
52
  /**
53
53
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"Matcher.d.ts","sourceRoot":"","sources":["../../src/Matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Matcher.d.ts","sourceRoot":"","sources":["../../src/Matcher.ts"],"names":[],"mappings":"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"}
@@ -20,29 +20,30 @@ class RouteMatcherImpl {
20
20
  this.notFound = this.notFound.bind(this);
21
21
  this.redirect = this.redirect.bind(this);
22
22
  }
23
- match(pathOrRoute, guard, f) {
24
- const route = getRoute(pathOrRoute);
25
- if (arguments.length === 2) {
23
+ match(...args) {
24
+ const route = getRoute(args[0]);
25
+ if (args.length === 2) {
26
26
  return new RouteMatcherImpl([...this.guards, {
27
27
  route,
28
28
  guard: getGuard(route),
29
- match: (ref) => Fx.scoped(guard(ref))
29
+ match: (ref) => Fx.scoped(args[1](ref))
30
30
  }]);
31
31
  }
32
32
  else {
33
33
  return new RouteMatcherImpl([...this.guards, {
34
34
  route,
35
- guard: getGuard(route, guard),
36
- match: (ref) => Fx.scoped(f(ref))
35
+ guard: getGuard(route, args[1]),
36
+ match: (ref) => Fx.scoped(args[2](ref))
37
37
  }]);
38
38
  }
39
39
  }
40
- to(route, guard, f) {
41
- if (arguments.length === 2) {
42
- return this.match(route, (ref) => RefSubject.map(ref, guard));
40
+ to(...args) {
41
+ const route = getRoute(args[0]);
42
+ if (args.length === 2) {
43
+ return this.match(route, (ref) => RefSubject.map(ref, args[1]));
43
44
  }
44
45
  else {
45
- return this.match(route, guard, (ref) => RefSubject.map(ref, f));
46
+ return this.match(route, args[1], (ref) => RefSubject.map(ref, args[2]));
46
47
  }
47
48
  }
48
49
  notFound(f) {
@@ -51,7 +52,7 @@ class RouteMatcherImpl {
51
52
  let matcher = Match
52
53
  .value(
53
54
  // Only if we're rendering in a DOM-based environment should we allow for routing to last indefinitely
54
- env === "server" || env === "static" ? Fx.take(Navigation.CurrentPath, 1) : Navigation.CurrentPath);
55
+ env === "dom" || env === "test:dom" ? Navigation.CurrentPath : Fx.take(Navigation.CurrentPath, 1));
55
56
  for (const { guard, match, route } of this.guards) {
56
57
  matcher = matcher.when(guard, (ref) => Fx.middleware(match(ref), withCurrentRoute(route)));
57
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Matcher.js","sourceRoot":"","sources":["../../src/Matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Matcher.js","sourceRoot":"","sources":["../../src/Matcher.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typed/router",
3
- "version": "0.27.4",
3
+ "version": "0.27.6",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -10,15 +10,15 @@
10
10
  "sideEffects": [],
11
11
  "author": "Typed contributors",
12
12
  "dependencies": {
13
- "effect": "^2.4.0",
14
- "@typed/context": "0.25.0",
15
- "@typed/dom": "13.0.0",
16
- "@typed/environment": "0.6.2",
17
- "@typed/fx": "1.27.2",
18
- "@typed/guard": "0.1.2",
19
- "@typed/navigation": "0.13.3",
20
- "@typed/path": "0.10.1",
21
- "@typed/route": "4.0.2"
13
+ "effect": "^2.4.1",
14
+ "@typed/context": "0.25.1",
15
+ "@typed/dom": "13.0.1",
16
+ "@typed/environment": "0.6.3",
17
+ "@typed/fx": "1.27.3",
18
+ "@typed/guard": "0.1.3",
19
+ "@typed/navigation": "0.13.4",
20
+ "@typed/path": "0.10.2",
21
+ "@typed/route": "4.0.3"
22
22
  },
23
23
  "main": "./dist/cjs/index.js",
24
24
  "module": "./dist/esm/index.js",
package/src/Matcher.ts CHANGED
@@ -19,20 +19,20 @@ import { makeHref, withCurrentRoute } from "./CurrentRoute.js"
19
19
  /**
20
20
  * @since 1.0.0
21
21
  */
22
- export interface RouteMatcher<A, E, R> {
23
- readonly guards: ReadonlyArray<RouteGuard<any, any, A, E, R, E, R>>
22
+ export interface RouteMatcher<out A, out E, out R> {
23
+ readonly guards: ReadonlyArray<RouteGuard<string, any, A, E, R, E, R>>
24
24
 
25
25
  readonly match: {
26
26
  <const P extends string, B, E2, R2>(
27
27
  route: Route.Route<P> | P,
28
28
  f: (ref: RefSubject.RefSubject<Path.ParamsOf<P>>) => Fx.Fx<B, E2, R2>
29
- ): RouteMatcher<R | Exclude<R2, Scope.Scope>, E | E2, A | B>
29
+ ): RouteMatcher<A | B, E | E2, R | Exclude<R2, Scope.Scope>>
30
30
 
31
31
  <const P extends string, B, E2, R2, C, E3, R3>(
32
32
  route: Route.Route<P> | P,
33
33
  guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>,
34
34
  f: (ref: RefSubject.RefSubject<B>) => Fx.Fx<C, E3, R3>
35
- ): RouteMatcher<R | Exclude<R2, Scope.Scope> | Exclude<R3, Scope.Scope>, E | E2 | E3, A | C>
35
+ ): RouteMatcher<A | C, E | E2 | E3, R | Exclude<R2, Scope.Scope> | Exclude<R3, Scope.Scope>>
36
36
  }
37
37
 
38
38
  readonly to: {
@@ -58,7 +58,7 @@ export interface RouteMatcher<A, E, R> {
58
58
 
59
59
  readonly redirect: <const P extends string>(
60
60
  route: Route.Route<P> | P,
61
- ...[params]: [keyof Path.ParamsOf<P>] extends [never] ? [{}?] : [Path.ParamsOf<P>]
61
+ ...params: [keyof Path.ParamsOf<P>] extends [never] ? [{}?] : [Path.ParamsOf<P>]
62
62
  ) => Fx.Fx<
63
63
  A,
64
64
  Exclude<E, Navigation.RedirectError>,
@@ -69,7 +69,15 @@ export interface RouteMatcher<A, E, R> {
69
69
  /**
70
70
  * @since 1.0.0
71
71
  */
72
- export interface RouteGuard<P extends string, A, O, E = never, R = never, E2 = never, R2 = never> {
72
+ export interface RouteGuard<
73
+ P extends string,
74
+ A,
75
+ O,
76
+ E = never,
77
+ R = never,
78
+ E2 = never,
79
+ R2 = never
80
+ > {
73
81
  readonly route: Route.Route<P>
74
82
  readonly guard: Guard.Guard<string, A, E, R>
75
83
  readonly match: (ref: RefSubject.RefSubject<A>) => Fx.Fx<O, E2, R2>
@@ -83,60 +91,33 @@ class RouteMatcherImpl<A, E, R> implements RouteMatcher<A, E, R> {
83
91
  this.redirect = this.redirect.bind(this)
84
92
  }
85
93
 
86
- match<const P extends string, B, E2, R2>(
87
- route: Route.Route<P> | P,
88
- f: (ref: RefSubject.RefSubject<Path.ParamsOf<P>>) => Fx.Fx<B, E2, R2>
89
- ): RouteMatcher<R | Exclude<R2, Scope.Scope>, E | E2, A | B>
90
- match<const P extends string, B, E2, R2, C, E3, R3>(
91
- route: Route.Route<P> | P,
92
- guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>,
93
- f: (ref: RefSubject.RefSubject<B>) => Fx.Fx<C, E3, R3>
94
- ): RouteMatcher<R | Exclude<R2 | R3, Scope.Scope>, E | E2 | E3, A | C>
95
-
96
- match<const P extends string, B, E2, R2, C, E3, R3>(
97
- pathOrRoute: Route.Route<P> | P,
98
- guard:
99
- | Guard.Guard<Path.ParamsOf<P>, B, E2, R2>
100
- | ((ref: RefSubject.RefSubject<B>) => Fx.Fx<C, E3, R3>),
101
- f?: (ref: RefSubject.RefSubject<B>) => Fx.Fx<C, E3, R3>
102
- ): RouteMatcher<R | R2 | R3, E | E2 | E3, A | C> {
103
- const route = getRoute(pathOrRoute)
104
-
105
- if (arguments.length === 2) {
106
- return new RouteMatcherImpl<R | R2 | R3, E | E2 | E3, A | C>([...this.guards, {
94
+ match(
95
+ ...args: any
96
+ ) {
97
+ const route = getRoute(args[0])
98
+ if (args.length === 2) {
99
+ return new RouteMatcherImpl([...this.guards, {
107
100
  route,
108
101
  guard: getGuard(route),
109
- match: (ref) => Fx.scoped((guard as any)!(ref))
102
+ match: (ref: any) => Fx.scoped(args[1](ref))
110
103
  }]) as any
111
104
  } else {
112
- return new RouteMatcherImpl<R | R2 | R3, E | E2 | E3, A | C>([...this.guards, {
105
+ return new RouteMatcherImpl([...this.guards, {
113
106
  route,
114
- guard: getGuard(route, guard as any),
115
- match: (ref) => Fx.scoped((f as any)!(ref))
107
+ guard: getGuard(route, args[1]),
108
+ match: (ref: any) => Fx.scoped(args[2](ref))
116
109
  }]) as any
117
110
  }
118
111
  }
119
112
 
120
- to<const P extends string, B, E2, R2>(
121
- route: Route.Route<P> | P,
122
- f: (params: Path.ParamsOf<P>) => B
123
- ): RouteMatcher<R | R2, E | E2, A | B>
124
-
125
- to<const P extends string, B, E2, R2, C, E3, R3>(
126
- route: Route.Route<P> | P,
127
- guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>,
128
- f: (b: B) => C
129
- ): RouteMatcher<R | R2 | R3, E | E2 | E3, A | C>
130
-
131
- to<const P extends string, B, E2, R2, C, E3, R3>(
132
- route: Route.Route<P> | P,
133
- guard: Guard.Guard<Path.ParamsOf<P>, B, E2, R2> | ((b: B) => C),
134
- f?: (b: B) => C
135
- ): RouteMatcher<R | Exclude<R2 | R3, Scope.Scope>, E | E2 | E3, A | C> {
136
- if (arguments.length === 2) {
137
- return this.match(route, (ref) => RefSubject.map(ref, guard as any))
113
+ to(
114
+ ...args: any
115
+ ) {
116
+ const route = getRoute(args[0])
117
+ if (args.length === 2) {
118
+ return this.match(route, (ref: any) => RefSubject.map(ref, args[1]))
138
119
  } else {
139
- return this.match(route, guard as any, (ref) => RefSubject.map(ref, f as any))
120
+ return this.match(route, args[1], (ref: any) => RefSubject.map(ref, args[2]))
140
121
  }
141
122
  }
142
123
 
@@ -152,7 +133,7 @@ class RouteMatcherImpl<A, E, R> implements RouteMatcher<A, E, R> {
152
133
  let matcher: Match.ValueMatcher<string, A | B, E | E2, R | R2 | Navigation.Navigation | Scope.Scope> = Match
153
134
  .value(
154
135
  // Only if we're rendering in a DOM-based environment should we allow for routing to last indefinitely
155
- env === "server" || env === "static" ? Fx.take(Navigation.CurrentPath, 1) : Navigation.CurrentPath
136
+ env === "dom" || env === "test:dom" ? Navigation.CurrentPath : Fx.take(Navigation.CurrentPath, 1)
156
137
  )
157
138
 
158
139
  for (const { guard, match, route } of this.guards) {
@@ -180,7 +161,6 @@ class RouteMatcherImpl<A, E, R> implements RouteMatcher<A, E, R> {
180
161
  )
181
162
  }
182
163
  }
183
-
184
164
  function getGuard<const P extends string, B, E2, R2>(
185
165
  path: Route.Route<P>,
186
166
  guard?: Guard.Guard<Path.ParamsOf<P>, B, E2, R2>