mobx-route 0.0.18 → 0.0.20

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 (81) hide show
  1. package/README.md +6 -67
  2. package/core/config/config.d.ts.map +1 -0
  3. package/core/config/config.types.d.ts.map +1 -0
  4. package/core/config/index.d.ts.map +1 -0
  5. package/core/index.d.ts +6 -0
  6. package/core/index.d.ts.map +1 -0
  7. package/core/index.js +5 -0
  8. package/core/route/index.d.ts.map +1 -0
  9. package/{route → core/route}/route.d.ts +7 -3
  10. package/core/route/route.d.ts.map +1 -0
  11. package/{route → core/route}/route.js +18 -6
  12. package/core/route/route.test.d.ts.map +1 -0
  13. package/{route → core/route}/route.test.js +4 -1
  14. package/core/route/route.types.d.ts.map +1 -0
  15. package/core/route-group/index.d.ts.map +1 -0
  16. package/core/route-group/route-group.d.ts.map +1 -0
  17. package/{route-group → core/route-group}/route-group.js +3 -0
  18. package/core/route-group/route-group.types.d.ts.map +1 -0
  19. package/core/router/index.d.ts.map +1 -0
  20. package/core/router/router.d.ts.map +1 -0
  21. package/core/router/router.types.d.ts.map +1 -0
  22. package/core/virtual-route/index.d.ts.map +1 -0
  23. package/core/virtual-route/virtual-route.d.ts.map +1 -0
  24. package/core/virtual-route/virtual-route.types.d.ts.map +1 -0
  25. package/index.d.ts +1 -5
  26. package/index.d.ts.map +1 -1
  27. package/index.js +1 -5
  28. package/package.json +69 -59
  29. package/react/components/link.d.ts +5 -3
  30. package/react/components/link.d.ts.map +1 -1
  31. package/react/components/link.js +4 -4
  32. package/react/components/route-view.d.ts +11 -7
  33. package/react/components/route-view.d.ts.map +1 -1
  34. package/react/components/route-view.js +2 -2
  35. package/view-model/route-view-model.d.ts +1 -3
  36. package/view-model/route-view-model.d.ts.map +1 -1
  37. package/view-model/route-view-model.js +2 -4
  38. package/config/config.d.ts.map +0 -1
  39. package/config/config.types.d.ts.map +0 -1
  40. package/config/index.d.ts.map +0 -1
  41. package/route/index.d.ts.map +0 -1
  42. package/route/route.d.ts.map +0 -1
  43. package/route/route.test.d.ts.map +0 -1
  44. package/route/route.types.d.ts.map +0 -1
  45. package/route-group/index.d.ts.map +0 -1
  46. package/route-group/route-group.d.ts.map +0 -1
  47. package/route-group/route-group.types.d.ts.map +0 -1
  48. package/router/index.d.ts.map +0 -1
  49. package/router/router.d.ts.map +0 -1
  50. package/router/router.types.d.ts.map +0 -1
  51. package/virtual-route/index.d.ts.map +0 -1
  52. package/virtual-route/virtual-route.d.ts.map +0 -1
  53. package/virtual-route/virtual-route.types.d.ts.map +0 -1
  54. /package/{config → core/config}/config.d.ts +0 -0
  55. /package/{config → core/config}/config.js +0 -0
  56. /package/{config → core/config}/config.types.d.ts +0 -0
  57. /package/{config → core/config}/config.types.js +0 -0
  58. /package/{config → core/config}/index.d.ts +0 -0
  59. /package/{config → core/config}/index.js +0 -0
  60. /package/{route → core/route}/index.d.ts +0 -0
  61. /package/{route → core/route}/index.js +0 -0
  62. /package/{route → core/route}/route.test.d.ts +0 -0
  63. /package/{route → core/route}/route.types.d.ts +0 -0
  64. /package/{route → core/route}/route.types.js +0 -0
  65. /package/{route-group → core/route-group}/index.d.ts +0 -0
  66. /package/{route-group → core/route-group}/index.js +0 -0
  67. /package/{route-group → core/route-group}/route-group.d.ts +0 -0
  68. /package/{route-group → core/route-group}/route-group.types.d.ts +0 -0
  69. /package/{route-group → core/route-group}/route-group.types.js +0 -0
  70. /package/{router → core/router}/index.d.ts +0 -0
  71. /package/{router → core/router}/index.js +0 -0
  72. /package/{router → core/router}/router.d.ts +0 -0
  73. /package/{router → core/router}/router.js +0 -0
  74. /package/{router → core/router}/router.types.d.ts +0 -0
  75. /package/{router → core/router}/router.types.js +0 -0
  76. /package/{virtual-route → core/virtual-route}/index.d.ts +0 -0
  77. /package/{virtual-route → core/virtual-route}/index.js +0 -0
  78. /package/{virtual-route → core/virtual-route}/virtual-route.d.ts +0 -0
  79. /package/{virtual-route → core/virtual-route}/virtual-route.js +0 -0
  80. /package/{virtual-route → core/virtual-route}/virtual-route.types.d.ts +0 -0
  81. /package/{virtual-route → core/virtual-route}/virtual-route.types.js +0 -0
package/README.md CHANGED
@@ -18,77 +18,16 @@
18
18
 
19
19
  Uses [`path-to-regexp` power](https://www.npmjs.com/package/path-to-regexp)
20
20
 
21
- ```ts
22
- import { Route } from "mobx-route";
23
-
24
-
25
- const userDetails = new Route("/users/:id");
26
-
27
- userDetails.navigate({ id: 1 }); // path params are required
28
-
29
- const userMatrix = userDetails.extend('/matrix{/:matrixId}');
30
-
31
- userMatrix.navigate({
32
- id: 1, // still required
33
- matrixId: '1', // optional because wrapped into {}
34
- })
35
-
36
- if (userMatrix.match) {
37
- console.log(userMatrix.match) // { path: string; params: { id: string; matrixId?: string } }
38
- }
39
-
40
- console.log(userMatrix.isMatches) // true
41
-
42
-
43
- userMatrix.queryParams.update({
44
- bar: 1,
45
- })
46
-
47
- userMatrix.queryParams.data; // { bar: "1" }
48
-
49
- ```
50
-
51
- ## Integration with React
52
-
53
- ```tsx
54
- import { RouteView } from "mobx-route/react";
55
-
56
- ...
57
- <RouteView route={userMatrix} view={YourComponent} />
58
- ```
59
-
60
- ## Integration with [`mobx-view-model`](https://js2me.github.io/mobx-view-model/)
61
-
62
- ```tsx
63
- import { RouteViewModel } from "mobx-route/view-model";
64
- import { withViewModel } from "mobx-view-model";
65
21
 
66
- ...
67
- class YourVM extends RouteViewModel<typeof userMatrix> {
68
- route = userMatrix;
69
- }
70
-
71
- export const YourComponent = withViewModel(YourVM)(YourComponentView);
72
- ```
22
+ ### Documentation: [js2me.github.io/mobx-route](https://js2me.github.io/mobx-route)
73
23
 
74
24
 
75
- # Examples
76
-
77
25
  ```ts
78
- const routes = {
79
- home: new Route('/'),
80
- apps: new RouteGroup({
81
- index: new Route('/apps', { index: true }),
82
- new: new Route('/apps/new'),
83
- details: new Route('/apps/:appId'),
84
- }),
85
- }
86
-
87
- history.pushState(null, '', '/apps');
26
+ import { Route } from "mobx-route";
88
27
 
89
- routes.apps.index.isOpened; // true
28
+ const userDetails = new Route("/users/:id");
90
29
 
91
- routes.apps.details.open({ appId: 1 });
30
+ userDetails.open({ id: 1 }); // path params are required
92
31
 
93
- location.pathname; // /apps/1
94
- ```
32
+ userDetails.isOpened; // true;
33
+ ```
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/config/config.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,eAAO,MAAM,WAAW;;;;CAqCvB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/core/config/config.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,WAAW,EAAE,YAAY,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './config/index.js';
2
+ export * from './route/index.js';
3
+ export * from './route-group/index.js';
4
+ export * from './virtual-route/index.js';
5
+ export * from './router/index.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC"}
package/core/index.js ADDED
@@ -0,0 +1,5 @@
1
+ export * from './config/index.js';
2
+ export * from './route/index.js';
3
+ export * from './route-group/index.js';
4
+ export * from './virtual-route/index.js';
5
+ export * from './router/index.js';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/route/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { IMobxHistory, IMobxLocation, IQueryParams } from 'mobx-location-history';
2
2
  import { ParamData, TokenData } from 'path-to-regexp';
3
3
  import { AllPropertiesOptional, AnyObject, Maybe } from 'yummies/utils/types';
4
- import { AnyRoute, ExtractPathParams, RouteConfiguration, RouteMatchesData, RouteNavigateParams } from './route.types.js';
4
+ import { AnyRoute, ExtractPathParams, ParsedPathParams, RouteConfiguration, RouteMatchesData, RouteNavigateParams } from './route.types.js';
5
5
  export declare class Route<TPath extends string, TParentRoute extends Route<any, any> | null = null> {
6
6
  path: TPath;
7
7
  protected config: RouteConfiguration<TParentRoute>;
@@ -10,15 +10,19 @@ export declare class Route<TPath extends string, TParentRoute extends Route<any,
10
10
  protected baseUrl: string;
11
11
  query: IQueryParams;
12
12
  private _tokenData;
13
+ private _matcher?;
14
+ private _compiler?;
13
15
  children: AnyRoute[];
14
16
  constructor(path: TPath, config?: RouteConfiguration<TParentRoute>);
15
- get data(): RouteMatchesData<TPath> | null;
17
+ protected get data(): RouteMatchesData<TPath> | null;
18
+ get currentPath(): string | null;
19
+ get params(): ParsedPathParams<TPath> | null;
16
20
  get isOpened(): boolean;
17
21
  get isIndex(): boolean;
18
22
  extend<TExtendPath extends string>(path: TExtendPath, config?: Omit<RouteConfiguration<any>, 'parent'>): Route<`${TPath}${TExtendPath}`, this>;
19
23
  addChildren(...children: AnyRoute[]): void;
20
24
  removeChildren(...childrenToRemove: AnyRoute[]): void;
21
- get hasChildrenMatches(): boolean;
25
+ get hasOpenedChildren(): boolean;
22
26
  protected processParams(params?: ExtractPathParams<TPath> | null | undefined): ParamData | undefined;
23
27
  createUrl(...args: AllPropertiesOptional<ExtractPathParams<TPath>> extends true ? [params?: Maybe<ExtractPathParams<TPath>>, query?: AnyObject] : [params: ExtractPathParams<TPath>, query?: AnyObject]): string;
24
28
  open(...args: AllPropertiesOptional<ExtractPathParams<TPath>> extends true ? [
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/core/route/route.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAkB,SAAS,EAAS,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAI9E,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,qBAAa,KAAK,CAChB,KAAK,SAAS,MAAM,EACpB,YAAY,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI;IAezC,IAAI,EAAE,KAAK;IAClB,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,YAAY,CAAC;IAdpD,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;IAChC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAE1B,KAAK,EAAE,YAAY,CAAC;IAEpB,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,QAAQ,CAAC,CAA2B;IAC5C,OAAO,CAAC,SAAS,CAAC,CAA6B;IAE/C,QAAQ,EAAE,QAAQ,EAAE,CAAM;gBAGjB,IAAI,EAAE,KAAK,EACR,MAAM,GAAE,kBAAkB,CAAC,YAAY,CAAM;IAqBzD,SAAS,KAAK,IAAI,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,CA0BnD;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,IAAI,CAE/B;IAED,IAAI,MAAM,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,CAE3C;IAED,IAAI,QAAQ,YAEX;IAED,IAAI,OAAO,YAEV;IAED,MAAM,CAAC,WAAW,SAAS,MAAM,EAC/B,IAAI,EAAE,WAAW,EACjB,MAAM,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;IAmBlD,WAAW,CAAC,GAAG,QAAQ,EAAE,QAAQ,EAAE;IAInC,cAAc,CAAC,GAAG,gBAAgB,EAAE,QAAQ,EAAE;IAM9C,IAAI,iBAAiB,YAEpB;IAED,SAAS,CAAC,aAAa,CACrB,MAAM,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,GACnD,SAAS,GAAG,SAAS;IAWxB,SAAS,CACP,GAAG,IAAI,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,GACjE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GAC7D,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAiB3D,IAAI,CACF,GAAG,IAAI,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,GACjE;QACE,MAAM,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS;QACpD,cAAc,CAAC,EAAE,mBAAmB;KACrC,GACD,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,EAAE,mBAAmB,CAAC,GAC3E,IAAI;IAEP,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,mBAAmB,GAAG,IAAI;IAc7D,SAAS,KAAK,SAAS,cAKtB;CACF"}
@@ -10,6 +10,8 @@ export class Route {
10
10
  baseUrl;
11
11
  query;
12
12
  _tokenData;
13
+ _matcher;
14
+ _compiler;
13
15
  children = [];
14
16
  constructor(path, config = {}) {
15
17
  this.path = path;
@@ -19,9 +21,11 @@ export class Route {
19
21
  this.query = config.queryParams ?? routeConfig.get().queryParams;
20
22
  const usedBaseUrl = this.config.baseUrl ?? routeConfig.get().baseUrl;
21
23
  this.baseUrl = !usedBaseUrl || usedBaseUrl === '/' ? '' : usedBaseUrl;
22
- computed.struct(this, 'isMatches');
23
- computed.struct(this, 'matchData');
24
- computed.struct(this, 'hasChildrenMatches');
24
+ computed.struct(this, 'isOpened');
25
+ computed.struct(this, 'data');
26
+ computed.struct(this, 'params');
27
+ computed.struct(this, 'currentPath');
28
+ computed.struct(this, 'hasOpenedChildren');
25
29
  observable(this, 'children');
26
30
  action(this, 'addChildren');
27
31
  action(this, 'removeChildren');
@@ -39,12 +43,19 @@ export class Route {
39
43
  (pathname === '/' || pathname === '')) {
40
44
  return { params: {}, path: pathname };
41
45
  }
42
- const parsed = match(this.tokenData)(pathname);
46
+ const matcher = this._matcher ?? (this._matcher = match(this.tokenData));
47
+ const parsed = matcher(pathname);
43
48
  if (parsed === false) {
44
49
  return null;
45
50
  }
46
51
  return parsed;
47
52
  }
53
+ get currentPath() {
54
+ return this.data?.path ?? null;
55
+ }
56
+ get params() {
57
+ return this.data?.params ?? null;
58
+ }
48
59
  get isOpened() {
49
60
  return this.data !== null;
50
61
  }
@@ -66,7 +77,7 @@ export class Route {
66
77
  removeChildren(...childrenToRemove) {
67
78
  this.children = this.children.filter((child) => !childrenToRemove.includes(child));
68
79
  }
69
- get hasChildrenMatches() {
80
+ get hasOpenedChildren() {
70
81
  return this.children.some((child) => child.isOpened);
71
82
  }
72
83
  processParams(params) {
@@ -82,7 +93,8 @@ export class Route {
82
93
  createUrl(...args) {
83
94
  const pathParams = args[0];
84
95
  const queryParams = args[1];
85
- const path = compile(this.tokenData)(this.processParams(pathParams));
96
+ const compiler = this._compiler ?? (this._compiler = compile(this.tokenData));
97
+ const path = compiler(this.processParams(pathParams));
86
98
  return [
87
99
  this.baseUrl,
88
100
  // type === 'hash' ? '#' : '',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.test.d.ts","sourceRoot":"","sources":["../../../src/core/route/route.test.ts"],"names":[],"mappings":""}
@@ -86,7 +86,10 @@ describe('route', () => {
86
86
  const otherRoute = new Route('/kek/pek');
87
87
  expect(otherRoute.isOpened).toBe(false);
88
88
  expect(route.isOpened).toBe(true);
89
- expect(route.data).toEqual({
89
+ expect({
90
+ path: route.currentPath,
91
+ params: route.params,
92
+ }).toEqual({
90
93
  path: '/posts/true/1/2/3/bar',
91
94
  params: {
92
95
  rest: ['1', '2', '3', 'bar'],
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.types.d.ts","sourceRoot":"","sources":["../../../src/core/route/route.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,WAAW,EAAE,YAAY,CAAC;IAC1B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB,CAAC,YAAY,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,CAC7E,SAAQ,OAAO,CAAC,wBAAwB,CAAC;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE1C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAEzD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AAErC,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAC;AAExE,MAAM,MAAM,gBAAgB,CAAC,IAAI,SAAS,MAAM,IAAI,QAAQ,CAC1D,IAAI,SAAS,GAAG,MAAM,MAAM,IAAI,MAAM,QAAQ,IAAI,MAAM,MAAM,EAAE,GAC5D,gBAAgB,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,GACpC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GACrC,IAAI,SAAS,GAAG,MAAM,KAAK,IAAI,MAAM,KAAK,EAAE,GAC1C,gBAAgB,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,GACjD,IAAI,SAAS,IAAI,MAAM,KAAK,GAAG,GAC7B;KAAG,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,eAAe;CAAE,GAClC,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B;KAAG,CAAC,IAAI,KAAK,GAAG,eAAe;CAAE,GACjC,IAAI,SAAS,IAAI,MAAM,QAAQ,EAAE,GAC/B;KAAG,CAAC,IAAI,QAAQ,GAAG,eAAe,EAAE;CAAE,GAEtC,EAAE,CACf,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,IAAI,SAAS,MAAM,IAAI,QAAQ,CAC3D,IAAI,SAAS,GAAG,MAAM,MAAM,IAAI,MAAM,QAAQ,IAAI,MAAM,MAAM,EAAE,GAC5D,iBAAiB,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,GACrC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,GACtC,IAAI,SAAS,GAAG,MAAM,KAAK,IAAI,MAAM,KAAK,EAAE,GAC1C,iBAAiB,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,GACnD,IAAI,SAAS,IAAI,MAAM,KAAK,GAAG,GAC7B;KAAG,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,SAAS;CAAE,GAC5B,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,GAC5B;KAAG,CAAC,IAAI,KAAK,GAAG,SAAS;CAAE,GAC3B,IAAI,SAAS,IAAI,MAAM,QAAQ,EAAE,GAC/B;KAAG,CAAC,IAAI,QAAQ,GAAG,SAAS,EAAE;CAAE,GAEhC,EAAE,CACf,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB,CAAC,KAAK,SAAS,MAAM;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;CACjC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-group.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/route-group.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,qBAAa,UAAU,CAAC,iBAAiB,SAAS,gBAAgB;IAC7C,MAAM,EAAE,iBAAiB;gBAAzB,MAAM,EAAE,iBAAiB;IAM5C,IAAI,QAAQ,IAAI,OAAO,CAGtB;IAED,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAqBpB"}
@@ -26,5 +26,8 @@ export class RouteGroup {
26
26
  if (lastGroupRoute) {
27
27
  lastGroupRoute.open();
28
28
  }
29
+ else if (process.env.NODE_ENV !== 'production') {
30
+ console.warn("RouteGroup doesn't have index route. open() method doesn't work.");
31
+ }
29
32
  }
30
33
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-group.types.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/route-group.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAEzD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,aAAa,GAAG,YAAY,CAAC;AAE1E,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/router/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/router/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,qBAAa,MAAM,CAAC,iBAAiB,SAAS,gBAAgB;IAC5D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;gBAER,MAAM,EAAE,mBAAmB,CAAC,iBAAiB,CAAC;IAO1D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;CAWtD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.types.d.ts","sourceRoot":"","sources":["../../../src/core/router/router.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,WAAW,mBAAmB,CAAC,aAAa,SAAS,gBAAgB;IACzE,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/virtual-route/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-route.d.ts","sourceRoot":"","sources":["../../../src/core/virtual-route/virtual-route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAkB,MAAM,gBAAgB,CAAC;AACzD,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,KAAK,EACN,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,qBAAa,YAAY,CACvB,OAAO,SAAS,SAAS,GAAG,WAAW,GAAG,WAAW;IAOzC,SAAS,CAAC,MAAM,EAAE,yBAAyB;IALvD,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAEhB,OAAO,CAAC,WAAW,CAAoD;gBAEjD,MAAM,GAAE,yBAA8B;IAa5D,IAAI,QAAQ,YAKX;IAED,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC;IAIzC,IAAI,CACF,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC,SAAS,IAAI,GAChD,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GAC5C,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GACvC,IAAI;IAgBP,KAAK;CAQN"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-route.types.d.ts","sourceRoot":"","sources":["../../../src/core/virtual-route/virtual-route.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,KAAK,EACN,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,yBAAyB,CACxC,OAAO,SAAS,SAAS,GAAG,WAAW,GAAG,WAAW;IAErD,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAI9D,IAAI,CAAC,EAAE,CACL,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC,SAAS,IAAI,GAChD,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GAC5C,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,KACrC,OAAO,CAAC;IAGb,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC;CACvC"}
package/index.d.ts CHANGED
@@ -1,7 +1,3 @@
1
1
  export * from 'mobx-location-history';
2
- export * from './config/index.js';
3
- export * from './route/index.js';
4
- export * from './route-group/index.js';
5
- export * from './virtual-route/index.js';
6
- export * from './router/index.js';
2
+ export * from './core/index.js';
7
3
  //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
package/index.js CHANGED
@@ -1,6 +1,2 @@
1
1
  export * from 'mobx-location-history';
2
- export * from './config/index.js';
3
- export * from './route/index.js';
4
- export * from './route-group/index.js';
5
- export * from './virtual-route/index.js';
6
- export * from './router/index.js';
2
+ export * from './core/index.js';
package/package.json CHANGED
@@ -1,15 +1,17 @@
1
1
  {
2
2
  "name": "mobx-route",
3
- "version": "0.0.18",
3
+ "version": "0.0.20",
4
4
  "keywords": [
5
5
  "mobx",
6
6
  "react",
7
7
  "router",
8
+ "router",
9
+ "mobx-router",
8
10
  "react-router-dom"
9
11
  ],
10
12
  "author": "js2me",
11
13
  "license": "MIT",
12
- "description": "",
14
+ "description": "simple and lightweight typed router",
13
15
  "type": "module",
14
16
  "bugs": {
15
17
  "url": "https://github.com/js2me/mobx-route/issues"
@@ -23,7 +25,7 @@
23
25
  "mobx-location-history": "^2.1.0",
24
26
  "path-to-regexp": "^8.2.0",
25
27
  "react-simple-loadable": "^2.1.0",
26
- "yummies": "^3.1.8"
28
+ "yummies": "^3.1.9"
27
29
  },
28
30
  "peerDependencies": {
29
31
  "mobx": "^6.12.4",
@@ -52,22 +54,72 @@
52
54
  "eslint": "^8.57.1",
53
55
  "js2me-eslint-config": "^1.0.7",
54
56
  "js2me-exports-post-build-script": "^2.0.18",
55
- "jsdom": "^25.0.1",
57
+ "jsdom": "^26.1.0",
56
58
  "nodemon": "^3.1.9",
57
59
  "rimraf": "^6.0.1",
58
60
  "typescript": "^5.8.3",
59
- "vitest": "^2.1.9"
61
+ "vitest": "^3.1.2"
60
62
  },
61
63
  "exports": {
62
- "./config/config": {
63
- "import": "./config/config.js",
64
- "default": "./config/config.js",
65
- "types": "./config/config.d.ts"
66
- },
67
- "./config": {
68
- "import": "./config/index.js",
69
- "default": "./config/index.js",
70
- "types": "./config/index.d.ts"
64
+ "./core/config/config": {
65
+ "import": "./core/config/config.js",
66
+ "default": "./core/config/config.js",
67
+ "types": "./core/config/config.d.ts"
68
+ },
69
+ "./core/config": {
70
+ "import": "./core/config/index.js",
71
+ "default": "./core/config/index.js",
72
+ "types": "./core/config/index.d.ts"
73
+ },
74
+ "./core": {
75
+ "import": "./core/index.js",
76
+ "default": "./core/index.js",
77
+ "types": "./core/index.d.ts"
78
+ },
79
+ "./core/route": {
80
+ "import": "./core/route/index.js",
81
+ "default": "./core/route/index.js",
82
+ "types": "./core/route/index.d.ts"
83
+ },
84
+ "./core/route/route.test": {
85
+ "import": "./core/route/route.test.js",
86
+ "default": "./core/route/route.test.js",
87
+ "types": "./core/route/route.test.d.ts"
88
+ },
89
+ "./core/route/route": {
90
+ "import": "./core/route/route.js",
91
+ "default": "./core/route/route.js",
92
+ "types": "./core/route/route.d.ts"
93
+ },
94
+ "./core/route-group": {
95
+ "import": "./core/route-group/index.js",
96
+ "default": "./core/route-group/index.js",
97
+ "types": "./core/route-group/index.d.ts"
98
+ },
99
+ "./core/route-group/route-group": {
100
+ "import": "./core/route-group/route-group.js",
101
+ "default": "./core/route-group/route-group.js",
102
+ "types": "./core/route-group/route-group.d.ts"
103
+ },
104
+ "./core/router": {
105
+ "import": "./core/router/index.js",
106
+ "default": "./core/router/index.js",
107
+ "types": "./core/router/index.d.ts"
108
+ },
109
+ "./core/router/router": {
110
+ "import": "./core/router/router.js",
111
+ "default": "./core/router/router.js",
112
+ "types": "./core/router/router.d.ts"
113
+ },
114
+ "./core/virtual-route": {
115
+ "import": "./core/virtual-route/index.js",
116
+ "default": "./core/virtual-route/index.js",
117
+ "types": "./core/virtual-route/index.d.ts"
118
+ },
119
+ "./core/virtual-route/virtual-route": {
120
+ "import": "./core/virtual-route/virtual-route.js",
121
+ "default": "./core/virtual-route/virtual-route.js",
122
+ "types": "./core/virtual-route/virtual-route.d.ts"
71
123
  },
72
124
  ".": {
73
125
  "import": "./index.js",
@@ -94,41 +146,6 @@
94
146
  "default": "./react/index.js",
95
147
  "types": "./react/index.d.ts"
96
148
  },
97
- "./route": {
98
- "import": "./route/index.js",
99
- "default": "./route/index.js",
100
- "types": "./route/index.d.ts"
101
- },
102
- "./route/route.test": {
103
- "import": "./route/route.test.js",
104
- "default": "./route/route.test.js",
105
- "types": "./route/route.test.d.ts"
106
- },
107
- "./route/route": {
108
- "import": "./route/route.js",
109
- "default": "./route/route.js",
110
- "types": "./route/route.d.ts"
111
- },
112
- "./route-group": {
113
- "import": "./route-group/index.js",
114
- "default": "./route-group/index.js",
115
- "types": "./route-group/index.d.ts"
116
- },
117
- "./route-group/route-group": {
118
- "import": "./route-group/route-group.js",
119
- "default": "./route-group/route-group.js",
120
- "types": "./route-group/route-group.d.ts"
121
- },
122
- "./router": {
123
- "import": "./router/index.js",
124
- "default": "./router/index.js",
125
- "types": "./router/index.d.ts"
126
- },
127
- "./router/router": {
128
- "import": "./router/router.js",
129
- "default": "./router/router.js",
130
- "types": "./router/router.d.ts"
131
- },
132
149
  "./view-model": {
133
150
  "import": "./view-model/index.js",
134
151
  "default": "./view-model/index.js",
@@ -139,16 +156,6 @@
139
156
  "default": "./view-model/route-view-model.js",
140
157
  "types": "./view-model/route-view-model.d.ts"
141
158
  },
142
- "./virtual-route": {
143
- "import": "./virtual-route/index.js",
144
- "default": "./virtual-route/index.js",
145
- "types": "./virtual-route/index.d.ts"
146
- },
147
- "./virtual-route/virtual-route": {
148
- "import": "./virtual-route/virtual-route.js",
149
- "default": "./virtual-route/virtual-route.js",
150
- "types": "./virtual-route/virtual-route.d.ts"
151
- },
152
159
  "./package.json": "./package.json"
153
160
  },
154
161
  "files": [
@@ -171,6 +178,9 @@
171
178
  "test": "vitest run",
172
179
  "test:watch": "vitest watch",
173
180
  "test:coverage": "vitest run --coverage",
181
+ "docs": "pnpm build && cd docs && pnpm dev",
182
+ "docs:build": "pnpm build && cd docs && pnpm build",
183
+ "docs:serve": "cd docs && pnpm preview",
174
184
  "dev": "pnpm test:watch"
175
185
  }
176
186
  }
@@ -1,14 +1,16 @@
1
1
  import { AnchorHTMLAttributes, ReactNode } from 'react';
2
2
  import { AllPropertiesOptional } from 'yummies/utils/types';
3
- import { AnyRoute, ExtractPathParams, RouteNavigateParams } from '../../route/index.js';
3
+ import { AnyRoute, ExtractPathParams, RouteNavigateParams } from '../../core/index.js';
4
4
  export type LinkProps<TRoute extends AnyRoute> = Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'> & {
5
5
  asChild?: boolean;
6
- } & RouteNavigateParams & {
7
- route: TRoute;
6
+ } & RouteNavigateParams & (({
7
+ to: TRoute;
8
8
  } & (AllPropertiesOptional<ExtractPathParams<TRoute['path']>> extends true ? {
9
9
  params?: ExtractPathParams<TRoute['path']> | null | undefined;
10
10
  } : {
11
11
  params: ExtractPathParams<TRoute['path']>;
12
+ })) | {
13
+ to: string;
12
14
  });
13
15
  type LinkComponentType = <TRoute extends AnyRoute>(props: LinkProps<TRoute>) => ReactNode;
14
16
  export declare const Link: LinkComponentType;
@@ -1 +1 @@
1
- {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/react/components/link.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,oBAAoB,EAKpB,SAAS,EACV,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,qBAAqB,EAAa,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,SAAS,CAAC,MAAM,SAAS,QAAQ,IAAI,IAAI,CACnD,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,MAAM,CACP,GAAG;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,mBAAmB,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,GACtE;IAEE,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;CAC/D,GACD;IAAE,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC,CAAC;AAErD,KAAK,iBAAiB,GAAG,CAAC,MAAM,SAAS,QAAQ,EAC/C,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,KACrB,SAAS,CAAC;AAEf,eAAO,MAAM,IAAI,EA6CD,iBAAiB,CAAC"}
1
+ {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/react/components/link.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,oBAAoB,EAKpB,SAAS,EACV,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,qBAAqB,EAAa,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,SAAS,CAAC,MAAM,SAAS,QAAQ,IAAI,IAAI,CACnD,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,MAAM,CACP,GAAG;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,mBAAmB,GACrB,CACI,CAAC;IACC,EAAE,EAAE,MAAM,CAAC;CACZ,GAAG,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,GACtE;IAEE,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;CAC/D,GACD;IAAE,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC,CAAC,GACnD;IACE,EAAE,EAAE,MAAM,CAAC;CACZ,CACJ,CAAC;AAEJ,KAAK,iBAAiB,GAAG,CAAC,MAAM,SAAS,QAAQ,EAC/C,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,KACrB,SAAS,CAAC;AAEf,eAAO,MAAM,IAAI,EA8CD,iBAAiB,CAAC"}
@@ -2,8 +2,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  /* eslint-disable @typescript-eslint/ban-ts-comment */
3
3
  import { observer } from 'mobx-react-lite';
4
4
  import { cloneElement, forwardRef, isValidElement, } from 'react';
5
- export const Link = observer(forwardRef(({ route, asChild, query, replace, children, params, ...anchorProps }, ref) => {
6
- const href = route.createUrl(params, query);
5
+ export const Link = observer(forwardRef(({ to, asChild, query, replace, children, params, ...anchorProps }, ref) => {
6
+ const href = typeof to === 'string' ? to : to.createUrl(params, query);
7
7
  const handleClick = (event) => {
8
8
  if (event.ctrlKey ||
9
9
  event.metaKey ||
@@ -12,9 +12,9 @@ export const Link = observer(forwardRef(({ route, asChild, query, replace, child
12
12
  event.button !== 0)
13
13
  return;
14
14
  anchorProps.onClick?.(event);
15
- if (!event.defaultPrevented) {
15
+ if (!event.defaultPrevented && typeof to !== 'string') {
16
16
  event.preventDefault();
17
- route.open(href, { replace, query });
17
+ to.open(href, { replace, query });
18
18
  }
19
19
  };
20
20
  return asChild && isValidElement(children) ? (
@@ -1,15 +1,19 @@
1
- import { ComponentType } from 'react';
2
- import type { AnyRoute } from '../../route/index.js';
3
- import type { AnyRouteGroup } from '../../route-group/index.js';
4
- import type { VirtualRoute } from '../../virtual-route/index.js';
1
+ import { ComponentType, ReactNode } from 'react';
2
+ import type { AnyRoute, AnyRouteGroup, VirtualRoute } from '../../core/index.js';
5
3
  type RouteKind = AnyRouteGroup | AnyRoute | VirtualRoute;
6
4
  export interface RouteViewProps<TRouteKind extends RouteKind> {
7
5
  route: TRouteKind;
8
- view?: ComponentType<any>;
9
- lazyView?: () => Promise<ComponentType<any>>;
6
+ view?: ComponentType<{
7
+ children?: ReactNode;
8
+ }>;
9
+ lazyView?: () => Promise<ComponentType<{
10
+ children?: ReactNode;
11
+ }>>;
10
12
  loader?: ComponentType;
13
+ notOpenedContent?: ReactNode;
14
+ children?: ReactNode;
11
15
  }
12
- declare function RouteViewBase<TRouteKind extends RouteKind>(props: RouteViewProps<TRouteKind>): import("react/jsx-runtime").JSX.Element | null | undefined;
16
+ declare function RouteViewBase<TRouteKind extends RouteKind>(props: RouteViewProps<TRouteKind>): string | number | boolean | Iterable<ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
13
17
  export declare const RouteView: typeof RouteViewBase & {
14
18
  displayName: string;
15
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"route-view.d.ts","sourceRoot":"","sources":["../../../src/react/components/route-view.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAU,MAAM,OAAO,CAAC;AAG9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEjE,KAAK,SAAS,GAAG,aAAa,GAAG,QAAQ,GAAG,YAAY,CAAC;AAEzD,MAAM,WAAW,cAAc,CAAC,UAAU,SAAS,SAAS;IAC1D,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,iBAAS,aAAa,CAAC,UAAU,SAAS,SAAS,EACjD,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC,8DAoBlC;AAED,eAAO,MAAM,SAAS;;CAA0B,CAAC"}
1
+ {"version":3,"file":"route-view.d.ts","sourceRoot":"","sources":["../../../src/react/components/route-view.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAU,MAAM,OAAO,CAAC;AAGzD,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,YAAY,EACb,MAAM,qBAAqB,CAAC;AAE7B,KAAK,SAAS,GAAG,aAAa,GAAG,QAAQ,GAAG,YAAY,CAAC;AAEzD,MAAM,WAAW,cAAc,CAAC,UAAU,SAAS,SAAS;IAC1D,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC;QAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC,CAAC;IAClE,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,iBAAS,aAAa,CAAC,UAAU,SAAS,SAAS,EACjD,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC,gHAoBlC;AAED,eAAO,MAAM,SAAS;;CAA0B,CAAC"}
@@ -6,7 +6,7 @@ function RouteViewBase(props) {
6
6
  const lazyViewComponentRef = useRef();
7
7
  let Component;
8
8
  if (!props.route.isOpened) {
9
- return null;
9
+ return props.notOpenedContent ?? null;
10
10
  }
11
11
  if (props.lazyView) {
12
12
  lazyViewComponentRef.current = loadable(props.lazyView, {
@@ -17,6 +17,6 @@ function RouteViewBase(props) {
17
17
  else {
18
18
  Component = props.view;
19
19
  }
20
- return Component && _jsx(Component, {});
20
+ return Component && _jsx(Component, { children: props.children });
21
21
  }
22
22
  export const RouteView = observer(RouteViewBase);
@@ -1,8 +1,6 @@
1
1
  import { ViewModelBase, ViewModelParams } from 'mobx-view-model';
2
2
  import { AnyObject, EmptyObject } from 'yummies/utils/types';
3
- import { Route, ParsedPathParams } from '../route/index.js';
4
- import { RouteCollectionItem } from '../route-group/index.js';
5
- import { VirtualRoute } from '../virtual-route/index.js';
3
+ import { Route, ParsedPathParams, RouteCollectionItem, VirtualRoute } from '../core/index.js';
6
4
  export declare abstract class RouteViewModel<TRoute extends RouteCollectionItem = RouteCollectionItem> extends ViewModelBase<AnyObject> {
7
5
  abstract readonly route: TRoute;
8
6
  constructor(params: ViewModelParams<any, any>);
@@ -1 +1 @@
1
- {"version":3,"file":"route-view-model.d.ts","sourceRoot":"","sources":["../../src/view-model/route-view-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,8BAAsB,cAAc,CAClC,MAAM,SAAS,mBAAmB,GAAG,mBAAmB,CACxD,SAAQ,aAAa,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBAEpB,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC;IAS7C,IAAa,OAAO,IAAI,MAAM,SAAS,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,GACrD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAChC,MAAM,SAAS,YAAY,CAAC,MAAM,MAAM,CAAC,GACvC,MAAM,GACN,WAAW,CAUhB;IAED,IAAI,KAAK,iDAMR;IAED,IAAI,UAAU,6GAtBwB,MAAM,yDAwB3C;CACF"}
1
+ {"version":3,"file":"route-view-model.d.ts","sourceRoot":"","sources":["../../src/view-model/route-view-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAEL,KAAK,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACb,MAAM,kBAAkB,CAAC;AAE1B,8BAAsB,cAAc,CAClC,MAAM,SAAS,mBAAmB,GAAG,mBAAmB,CACxD,SAAQ,aAAa,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBAEpB,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC;IAS7C,IAAa,OAAO,IAAI,MAAM,SAAS,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,GACrD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAChC,MAAM,SAAS,YAAY,CAAC,MAAM,MAAM,CAAC,GACvC,MAAM,GACN,WAAW,CAUhB;IAED,IAAI,KAAK,iDAMR;IAED,IAAI,UAAU,6GAtBwB,MAAM,yDAwB3C;CACF"}
@@ -1,8 +1,6 @@
1
1
  import { computed, makeObservable } from 'mobx';
2
2
  import { ViewModelBase } from 'mobx-view-model';
3
- import { routeConfig } from '../config/index.js';
4
- import { Route } from '../route/index.js';
5
- import { VirtualRoute } from '../virtual-route/index.js';
3
+ import { routeConfig, Route, VirtualRoute, } from '../core/index.js';
6
4
  export class RouteViewModel extends ViewModelBase {
7
5
  constructor(params) {
8
6
  super(params);
@@ -12,7 +10,7 @@ export class RouteViewModel extends ViewModelBase {
12
10
  }
13
11
  get payload() {
14
12
  if (this.route instanceof Route) {
15
- return this.route.data?.params || {};
13
+ return this.route.params || {};
16
14
  }
17
15
  if (this.route instanceof VirtualRoute) {
18
16
  return this.route.params;
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,eAAO,MAAM,WAAW;;;;CAqCvB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../src/config/config.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,WAAW,EAAE,YAAY,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/route/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/route/route.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAkB,SAAS,EAAS,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAI9E,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,qBAAa,KAAK,CAChB,KAAK,SAAS,MAAM,EACpB,YAAY,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI;IAazC,IAAI,EAAE,KAAK;IAClB,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,YAAY,CAAC;IAZpD,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;IAChC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAE1B,KAAK,EAAE,YAAY,CAAC;IAEpB,OAAO,CAAC,UAAU,CAAwB;IAE1C,QAAQ,EAAE,QAAQ,EAAE,CAAM;gBAGjB,IAAI,EAAE,KAAK,EACR,MAAM,GAAE,kBAAkB,CAAC,YAAY,CAAM;IAkBzD,IAAI,IAAI,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,CAyBzC;IAED,IAAI,QAAQ,YAEX;IAED,IAAI,OAAO,YAEV;IAED,MAAM,CAAC,WAAW,SAAS,MAAM,EAC/B,IAAI,EAAE,WAAW,EACjB,MAAM,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;IAmBlD,WAAW,CAAC,GAAG,QAAQ,EAAE,QAAQ,EAAE;IAInC,cAAc,CAAC,GAAG,gBAAgB,EAAE,QAAQ,EAAE;IAM9C,IAAI,kBAAkB,YAErB;IAED,SAAS,CAAC,aAAa,CACrB,MAAM,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,GACnD,SAAS,GAAG,SAAS;IAWxB,SAAS,CACP,GAAG,IAAI,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,GACjE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GAC7D,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAe3D,IAAI,CACF,GAAG,IAAI,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,GACjE;QACE,MAAM,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS;QACpD,cAAc,CAAC,EAAE,mBAAmB;KACrC,GACD,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,EAAE,mBAAmB,CAAC,GAC3E,IAAI;IAEP,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,mBAAmB,GAAG,IAAI;IAc7D,SAAS,KAAK,SAAS,cAKtB;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"route.test.d.ts","sourceRoot":"","sources":["../../src/route/route.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"route.types.d.ts","sourceRoot":"","sources":["../../src/route/route.types.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/route-group/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"route-group.d.ts","sourceRoot":"","sources":["../../src/route-group/route-group.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,qBAAa,UAAU,CAAC,iBAAiB,SAAS,gBAAgB;IAC7C,MAAM,EAAE,iBAAiB;gBAAzB,MAAM,EAAE,iBAAiB;IAM5C,IAAI,QAAQ,IAAI,OAAO,CAGtB;IAED,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAiBpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"route-group.types.d.ts","sourceRoot":"","sources":["../../src/route-group/route-group.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAEzD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,aAAa,GAAG,YAAY,CAAC;AAE1E,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/router/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,qBAAa,MAAM,CAAC,iBAAiB,SAAS,gBAAgB;IAC5D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;gBAER,MAAM,EAAE,mBAAmB,CAAC,iBAAiB,CAAC;IAO1D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;CAWtD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"router.types.d.ts","sourceRoot":"","sources":["../../src/router/router.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,WAAW,mBAAmB,CAAC,aAAa,SAAS,gBAAgB;IACzE,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/virtual-route/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"virtual-route.d.ts","sourceRoot":"","sources":["../../src/virtual-route/virtual-route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAkB,MAAM,gBAAgB,CAAC;AACzD,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,KAAK,EACN,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,qBAAa,YAAY,CACvB,OAAO,SAAS,SAAS,GAAG,WAAW,GAAG,WAAW;IAOzC,SAAS,CAAC,MAAM,EAAE,yBAAyB;IALvD,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAEhB,OAAO,CAAC,WAAW,CAAoD;gBAEjD,MAAM,GAAE,yBAA8B;IAa5D,IAAI,QAAQ,YAKX;IAED,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC;IAIzC,IAAI,CACF,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC,SAAS,IAAI,GAChD,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GAC5C,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GACvC,IAAI;IAgBP,KAAK;CAQN"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"virtual-route.types.d.ts","sourceRoot":"","sources":["../../src/virtual-route/virtual-route.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,KAAK,EACN,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,yBAAyB,CACxC,OAAO,SAAS,SAAS,GAAG,WAAW,GAAG,WAAW;IAErD,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAI9D,IAAI,CAAC,EAAE,CACL,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,CAAC,SAAS,IAAI,GAChD,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,GAC5C,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,KACrC,OAAO,CAAC;IAGb,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC;CACvC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes