mobx-route 0.0.17 → 0.0.19

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 +4 -0
  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 +20 -7
  12. package/core/route/route.test.d.ts.map +1 -0
  13. package/{route → core/route}/route.test.js +20 -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 +71 -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,6 +18,10 @@
18
18
 
19
19
  Uses [`path-to-regexp` power](https://www.npmjs.com/package/path-to-regexp)
20
20
 
21
+
22
+ ### Read the docs: [js2me.github.io/mobx-route](https://js2me.github.io/mobx-route)
23
+
24
+
21
25
  ```ts
22
26
  import { Route } from "mobx-route";
23
27
 
@@ -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');
@@ -35,15 +39,23 @@ export class Route {
35
39
  }
36
40
  pathname = pathname.replace(this.baseUrl, '');
37
41
  }
38
- if ((this.path === '' || this.path === '/') && pathname === '/') {
42
+ if ((this.path === '' || this.path === '/') &&
43
+ (pathname === '/' || pathname === '')) {
39
44
  return { params: {}, path: pathname };
40
45
  }
41
- const parsed = match(this.tokenData)(pathname);
46
+ const matcher = this._matcher ?? (this._matcher = match(this.tokenData));
47
+ const parsed = matcher(pathname);
42
48
  if (parsed === false) {
43
49
  return null;
44
50
  }
45
51
  return parsed;
46
52
  }
53
+ get currentPath() {
54
+ return this.data?.path ?? null;
55
+ }
56
+ get params() {
57
+ return this.data?.params ?? null;
58
+ }
47
59
  get isOpened() {
48
60
  return this.data !== null;
49
61
  }
@@ -65,7 +77,7 @@ export class Route {
65
77
  removeChildren(...childrenToRemove) {
66
78
  this.children = this.children.filter((child) => !childrenToRemove.includes(child));
67
79
  }
68
- get hasChildrenMatches() {
80
+ get hasOpenedChildren() {
69
81
  return this.children.some((child) => child.isOpened);
70
82
  }
71
83
  processParams(params) {
@@ -81,7 +93,8 @@ export class Route {
81
93
  createUrl(...args) {
82
94
  const pathParams = args[0];
83
95
  const queryParams = args[1];
84
- 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));
85
98
  return [
86
99
  this.baseUrl,
87
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'],
@@ -153,4 +156,20 @@ describe('route', () => {
153
156
  expect(location.href).toBe('http://localhost:3000/');
154
157
  history.resetMocks();
155
158
  });
159
+ it('test with root paths (/, "")', () => {
160
+ const routes = {
161
+ home: new Route('/'),
162
+ root: new Route(''),
163
+ projects: new RouteGroup({
164
+ index: new Route('/projects', { index: true }),
165
+ new: new Route('/projects/new'),
166
+ details: new Route('/projects/:projectId'),
167
+ }),
168
+ };
169
+ history.replaceState(null, '', '/');
170
+ expect(location.href).toBe('http://localhost:3000/');
171
+ expect(routes.home.isOpened).toBe(true);
172
+ expect(routes.root.isOpened).toBe(true);
173
+ expect(routes.projects.routes.index.isOpened).toBe(false);
174
+ });
156
175
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.types.d.ts","sourceRoot":"","sources":["../../../src/core/route/route.types.ts"],"names":[],"mappings":"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"}
@@ -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.17",
3
+ "version": "0.0.19",
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.7"
28
+ "yummies": "^3.1.9"
27
29
  },
28
30
  "peerDependencies": {
29
31
  "mobx": "^6.12.4",
@@ -52,21 +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",
58
+ "nodemon": "^3.1.9",
56
59
  "rimraf": "^6.0.1",
57
60
  "typescript": "^5.8.3",
58
- "vitest": "^2.1.9"
61
+ "vitest": "^3.1.2"
59
62
  },
60
63
  "exports": {
61
- "./config/config": {
62
- "import": "./config/config.js",
63
- "default": "./config/config.js",
64
- "types": "./config/config.d.ts"
65
- },
66
- "./config": {
67
- "import": "./config/index.js",
68
- "default": "./config/index.js",
69
- "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"
70
123
  },
71
124
  ".": {
72
125
  "import": "./index.js",
@@ -93,41 +146,6 @@
93
146
  "default": "./react/index.js",
94
147
  "types": "./react/index.d.ts"
95
148
  },
96
- "./route": {
97
- "import": "./route/index.js",
98
- "default": "./route/index.js",
99
- "types": "./route/index.d.ts"
100
- },
101
- "./route/route.test": {
102
- "import": "./route/route.test.js",
103
- "default": "./route/route.test.js",
104
- "types": "./route/route.test.d.ts"
105
- },
106
- "./route/route": {
107
- "import": "./route/route.js",
108
- "default": "./route/route.js",
109
- "types": "./route/route.d.ts"
110
- },
111
- "./route-group": {
112
- "import": "./route-group/index.js",
113
- "default": "./route-group/index.js",
114
- "types": "./route-group/index.d.ts"
115
- },
116
- "./route-group/route-group": {
117
- "import": "./route-group/route-group.js",
118
- "default": "./route-group/route-group.js",
119
- "types": "./route-group/route-group.d.ts"
120
- },
121
- "./router": {
122
- "import": "./router/index.js",
123
- "default": "./router/index.js",
124
- "types": "./router/index.d.ts"
125
- },
126
- "./router/router": {
127
- "import": "./router/router.js",
128
- "default": "./router/router.js",
129
- "types": "./router/router.d.ts"
130
- },
131
149
  "./view-model": {
132
150
  "import": "./view-model/index.js",
133
151
  "default": "./view-model/index.js",
@@ -138,16 +156,6 @@
138
156
  "default": "./view-model/route-view-model.js",
139
157
  "types": "./view-model/route-view-model.d.ts"
140
158
  },
141
- "./virtual-route": {
142
- "import": "./virtual-route/index.js",
143
- "default": "./virtual-route/index.js",
144
- "types": "./virtual-route/index.d.ts"
145
- },
146
- "./virtual-route/virtual-route": {
147
- "import": "./virtual-route/virtual-route.js",
148
- "default": "./virtual-route/virtual-route.js",
149
- "types": "./virtual-route/virtual-route.d.ts"
150
- },
151
159
  "./package.json": "./package.json"
152
160
  },
153
161
  "files": [
@@ -161,6 +169,7 @@
161
169
  "ts:check": "tsc --noEmit",
162
170
  "check": "npm run lint:check && npm run ts:check",
163
171
  "prebuild": "npm run clean && npm run check",
172
+ "build:watch": "npm run build && nodemon --watch src --ext ts --exec \"tsc && node ./post-build.mjs\"",
164
173
  "build": "tsc && node ./post-build.mjs",
165
174
  "pub": "PUBLISH=true pnpm run build",
166
175
  "pub:patch": "PUBLISH=true PUBLISH_VERSION=patch pnpm run build",
@@ -169,6 +178,9 @@
169
178
  "test": "vitest run",
170
179
  "test:watch": "vitest watch",
171
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",
172
184
  "dev": "pnpm test:watch"
173
185
  }
174
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,CAsBzC;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