mobx-route 0.18.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/index.cjs +565 -17
- package/index.cjs.map +1 -0
- package/index.d.ts +423 -2
- package/index.js +561 -2
- package/index.js.map +1 -0
- package/package.json +20 -63
- package/react.cjs +170 -0
- package/react.cjs.map +1 -0
- package/react.d.ts +71 -0
- package/react.js +170 -0
- package/react.js.map +1 -0
- package/view-model.cjs +56 -0
- package/view-model.cjs.map +1 -0
- package/view-model.d.ts +14 -0
- package/view-model.js +56 -0
- package/view-model.js.map +1 -0
- package/core/config/config.cjs +0 -36
- package/core/config/config.d.cts +0 -7
- package/core/config/config.d.cts.map +0 -1
- package/core/config/config.d.ts +0 -7
- package/core/config/config.d.ts.map +0 -1
- package/core/config/config.js +0 -33
- package/core/config/config.types.cjs +0 -2
- package/core/config/config.types.d.cts +0 -11
- package/core/config/config.types.d.cts.map +0 -1
- package/core/config/config.types.d.ts +0 -11
- package/core/config/config.types.d.ts.map +0 -1
- package/core/config/config.types.js +0 -1
- package/core/config/index.cjs +0 -18
- package/core/config/index.d.cts +0 -3
- package/core/config/index.d.cts.map +0 -1
- package/core/config/index.d.ts +0 -3
- package/core/config/index.d.ts.map +0 -1
- package/core/config/index.js +0 -2
- package/core/index.cjs +0 -21
- package/core/index.d.cts +0 -6
- package/core/index.d.cts.map +0 -1
- package/core/index.d.ts +0 -6
- package/core/index.d.ts.map +0 -1
- package/core/index.js +0 -5
- package/core/route/index.cjs +0 -18
- package/core/route/index.d.cts +0 -3
- package/core/route/index.d.cts.map +0 -1
- package/core/route/index.d.ts +0 -3
- package/core/route/index.d.ts.map +0 -1
- package/core/route/index.js +0 -2
- package/core/route/route.cjs +0 -296
- package/core/route/route.d.cts +0 -107
- package/core/route/route.d.cts.map +0 -1
- package/core/route/route.d.ts +0 -107
- package/core/route/route.d.ts.map +0 -1
- package/core/route/route.js +0 -291
- package/core/route/route.types.cjs +0 -2
- package/core/route/route.types.d.cts +0 -142
- package/core/route/route.types.d.cts.map +0 -1
- package/core/route/route.types.d.ts +0 -142
- package/core/route/route.types.d.ts.map +0 -1
- package/core/route/route.types.js +0 -1
- package/core/route-group/index.cjs +0 -18
- package/core/route-group/index.d.cts +0 -3
- package/core/route-group/index.d.cts.map +0 -1
- package/core/route-group/index.d.ts +0 -3
- package/core/route-group/index.d.ts.map +0 -1
- package/core/route-group/index.js +0 -2
- package/core/route-group/route-group.cjs +0 -67
- package/core/route-group/route-group.d.cts +0 -31
- package/core/route-group/route-group.d.cts.map +0 -1
- package/core/route-group/route-group.d.ts +0 -31
- package/core/route-group/route-group.d.ts.map +0 -1
- package/core/route-group/route-group.js +0 -62
- package/core/route-group/route-group.types.cjs +0 -2
- package/core/route-group/route-group.types.d.cts +0 -15
- package/core/route-group/route-group.types.d.cts.map +0 -1
- package/core/route-group/route-group.types.d.ts +0 -15
- package/core/route-group/route-group.types.d.ts.map +0 -1
- package/core/route-group/route-group.types.js +0 -1
- package/core/router/index.cjs +0 -18
- package/core/router/index.d.cts +0 -3
- package/core/router/index.d.cts.map +0 -1
- package/core/router/index.d.ts +0 -3
- package/core/router/index.d.ts.map +0 -1
- package/core/router/index.js +0 -2
- package/core/router/router.cjs +0 -42
- package/core/router/router.d.cts +0 -18
- package/core/router/router.d.cts.map +0 -1
- package/core/router/router.d.ts +0 -18
- package/core/router/router.d.ts.map +0 -1
- package/core/router/router.js +0 -37
- package/core/router/router.types.cjs +0 -2
- package/core/router/router.types.d.cts +0 -13
- package/core/router/router.types.d.cts.map +0 -1
- package/core/router/router.types.d.ts +0 -13
- package/core/router/router.types.d.ts.map +0 -1
- package/core/router/router.types.js +0 -1
- package/core/utils/is-route-entity.cjs +0 -5
- package/core/utils/is-route-entity.d.cts +0 -3
- package/core/utils/is-route-entity.d.cts.map +0 -1
- package/core/utils/is-route-entity.d.ts +0 -3
- package/core/utils/is-route-entity.d.ts.map +0 -1
- package/core/utils/is-route-entity.js +0 -1
- package/core/virtual-route/index.cjs +0 -18
- package/core/virtual-route/index.d.cts +0 -3
- package/core/virtual-route/index.d.cts.map +0 -1
- package/core/virtual-route/index.d.ts +0 -3
- package/core/virtual-route/index.d.ts.map +0 -1
- package/core/virtual-route/index.js +0 -2
- package/core/virtual-route/virtual-route.cjs +0 -133
- package/core/virtual-route/virtual-route.d.cts +0 -39
- package/core/virtual-route/virtual-route.d.cts.map +0 -1
- package/core/virtual-route/virtual-route.d.ts +0 -39
- package/core/virtual-route/virtual-route.d.ts.map +0 -1
- package/core/virtual-route/virtual-route.js +0 -128
- package/core/virtual-route/virtual-route.types.cjs +0 -2
- package/core/virtual-route/virtual-route.types.d.cts +0 -61
- package/core/virtual-route/virtual-route.types.d.cts.map +0 -1
- package/core/virtual-route/virtual-route.types.d.ts +0 -61
- package/core/virtual-route/virtual-route.types.d.ts.map +0 -1
- package/core/virtual-route/virtual-route.types.js +0 -1
- package/index.d.cts +0 -3
- package/index.d.cts.map +0 -1
- package/index.d.ts.map +0 -1
- package/react/components/index.cjs +0 -21
- package/react/components/index.d.cts +0 -4
- package/react/components/index.d.cts.map +0 -1
- package/react/components/index.d.ts +0 -4
- package/react/components/index.d.ts.map +0 -1
- package/react/components/index.js +0 -5
- package/react/components/link.cjs +0 -79
- package/react/components/link.d.cts +0 -23
- package/react/components/link.d.cts.map +0 -1
- package/react/components/link.d.ts +0 -23
- package/react/components/link.d.ts.map +0 -1
- package/react/components/link.js +0 -76
- package/react/components/route-view-group.cjs +0 -57
- package/react/components/route-view-group.d.cts +0 -26
- package/react/components/route-view-group.d.cts.map +0 -1
- package/react/components/route-view-group.d.ts +0 -26
- package/react/components/route-view-group.d.ts.map +0 -1
- package/react/components/route-view-group.js +0 -54
- package/react/components/route-view.cjs +0 -43
- package/react/components/route-view.d.cts +0 -25
- package/react/components/route-view.d.cts.map +0 -1
- package/react/components/route-view.d.ts +0 -25
- package/react/components/route-view.d.ts.map +0 -1
- package/react/components/route-view.js +0 -40
- package/react/index.cjs +0 -17
- package/react/index.d.cts +0 -2
- package/react/index.d.cts.map +0 -1
- package/react/index.d.ts +0 -2
- package/react/index.d.ts.map +0 -1
- package/react/index.js +0 -1
- package/view-model/index.cjs +0 -17
- package/view-model/index.d.cts +0 -2
- package/view-model/index.d.cts.map +0 -1
- package/view-model/index.d.ts +0 -2
- package/view-model/index.d.ts.map +0 -1
- package/view-model/index.js +0 -1
- package/view-model/route-view-model.cjs +0 -37
- package/view-model/route-view-model.d.cts +0 -13
- package/view-model/route-view-model.d.cts.map +0 -1
- package/view-model/route-view-model.d.ts +0 -13
- package/view-model/route-view-model.d.ts.map +0 -1
- package/view-model/route-view-model.js +0 -33
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.types.d.ts","sourceRoot":"","sources":["../../../src/core/route/route.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import type { RawQueryParamsData } from 'mobx-location-history';
|
|
2
|
-
import type { ParseOptions } from 'path-to-regexp';
|
|
3
|
-
import type { AnyObject, IsPartial, Maybe, MaybePromise } from 'yummies/types';
|
|
4
|
-
import type { RouteGlobalConfig } from "../config/index.js";
|
|
5
|
-
import type { AnyAbstractRouteEntity } from "../route-group/index.js";
|
|
6
|
-
import type { VirtualRoute } from "../virtual-route/index.js";
|
|
7
|
-
import type { Route } from "./route.js";
|
|
8
|
-
export type PreparedNavigationData<TParams extends AnyObject = AnyObject> = {
|
|
9
|
-
state?: any;
|
|
10
|
-
/**
|
|
11
|
-
* path parameters
|
|
12
|
-
*
|
|
13
|
-
* can be received from extended routes
|
|
14
|
-
*/
|
|
15
|
-
params?: TParams;
|
|
16
|
-
url: string;
|
|
17
|
-
replace?: boolean;
|
|
18
|
-
query?: AnyObject;
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* Returning `false` means ignore navigation
|
|
22
|
-
*/
|
|
23
|
-
export type BeforeOpenFeedback = void | boolean | {
|
|
24
|
-
url: string;
|
|
25
|
-
state?: any;
|
|
26
|
-
replace?: boolean;
|
|
27
|
-
};
|
|
28
|
-
export interface UrlCreateParams<TInputParams> {
|
|
29
|
-
baseUrl?: string | undefined;
|
|
30
|
-
params: TInputParams;
|
|
31
|
-
query: AnyObject;
|
|
32
|
-
}
|
|
33
|
-
export type UrlCreateParamsFn<TInputParams = any> = (params: UrlCreateParams<TInputParams>, currentQueryData: RawQueryParamsData) => Maybe<UrlCreateParams<TInputParams>>;
|
|
34
|
-
export interface CreatedUrlOutputParams {
|
|
35
|
-
mergeQuery?: boolean;
|
|
36
|
-
omitQuery?: boolean;
|
|
37
|
-
}
|
|
38
|
-
export interface RouteConfiguration<TPath extends string, TInputParams extends InputPathParams<TPath> = InputPathParams<TPath>, TOutputParams extends AnyObject = ParsedPathParams<TPath>, TParentRoute extends Route<string, any, any, any> | null = null> extends Omit<Partial<RouteGlobalConfig>, 'createUrl'> {
|
|
39
|
-
/**
|
|
40
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#abortsignal)
|
|
41
|
-
*/
|
|
42
|
-
abortSignal?: AbortSignal;
|
|
43
|
-
index?: boolean;
|
|
44
|
-
hash?: boolean;
|
|
45
|
-
/**
|
|
46
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#meta)
|
|
47
|
-
*/
|
|
48
|
-
meta?: AnyObject;
|
|
49
|
-
parseOptions?: ParseOptions;
|
|
50
|
-
parent?: TParentRoute;
|
|
51
|
-
children?: AnyRoute[];
|
|
52
|
-
/**
|
|
53
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#params)
|
|
54
|
-
*/
|
|
55
|
-
params?: (params: ParsedPathParams<TPath>, meta: AnyObject | undefined) => TOutputParams | null | false;
|
|
56
|
-
/**
|
|
57
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#checkopened)
|
|
58
|
-
*/
|
|
59
|
-
checkOpened?: (parsedPathData: ParsedPathData<NoInfer<TPath>>) => boolean;
|
|
60
|
-
/**
|
|
61
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#beforeopen)
|
|
62
|
-
*/
|
|
63
|
-
beforeOpen?: (preparedNavigationData: PreparedNavigationData<NoInfer<TInputParams>>) => MaybePromise<BeforeOpenFeedback>;
|
|
64
|
-
/**
|
|
65
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#afterclose)
|
|
66
|
-
*/
|
|
67
|
-
afterClose?: () => void;
|
|
68
|
-
/**
|
|
69
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#afteropen)
|
|
70
|
-
*/
|
|
71
|
-
afterOpen?: (data: ParsedPathData<NoInfer<TPath>>, route: Route<NoInfer<TPath>, NoInfer<TInputParams>, NoInfer<TOutputParams>, NoInfer<TParentRoute>>) => void;
|
|
72
|
-
/**
|
|
73
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#createurl)
|
|
74
|
-
*/
|
|
75
|
-
createUrl?: UrlCreateParamsFn<TInputParams>;
|
|
76
|
-
}
|
|
77
|
-
export type AnyRoute = IRoute;
|
|
78
|
-
export interface IRoute<TPath extends string = string, TInputParams extends InputPathParams<TPath> = InputPathParams<TPath>, TOutputParams extends AnyObject = ParsedPathParams<TPath>> {
|
|
79
|
-
isOpened: boolean;
|
|
80
|
-
path: TPath;
|
|
81
|
-
/**
|
|
82
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#hasopenedchildren-boolean)
|
|
83
|
-
*/
|
|
84
|
-
hasOpenedChildren: boolean;
|
|
85
|
-
/**
|
|
86
|
-
* Navigates to this route.
|
|
87
|
-
*
|
|
88
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Route.html#open-args)
|
|
89
|
-
*/
|
|
90
|
-
open(...args: IsPartial<TInputParams> extends true ? [
|
|
91
|
-
params?: TInputParams | null | undefined,
|
|
92
|
-
navigateParams?: RouteNavigateParams
|
|
93
|
-
] : [params: TInputParams, navigateParams?: RouteNavigateParams]): Promise<void>;
|
|
94
|
-
open(...args: IsPartial<TInputParams> extends true ? [
|
|
95
|
-
params?: TInputParams | null | undefined,
|
|
96
|
-
replace?: RouteNavigateParams['replace'],
|
|
97
|
-
query?: RouteNavigateParams['query']
|
|
98
|
-
] : [
|
|
99
|
-
params: TInputParams,
|
|
100
|
-
replace?: RouteNavigateParams['replace'],
|
|
101
|
-
query?: RouteNavigateParams['query']
|
|
102
|
-
]): Promise<void>;
|
|
103
|
-
open(url: string, navigateParams?: RouteNavigateParams): Promise<void>;
|
|
104
|
-
open(url: string, replace?: RouteNavigateParams['replace'], query?: RouteNavigateParams['query']): Promise<void>;
|
|
105
|
-
createUrl(...args: IsPartial<TInputParams> extends true ? [params?: Maybe<TInputParams>, query?: AnyObject, mergeQuery?: boolean] : [params: TInputParams, query?: AnyObject, mergeQuery?: boolean]): string;
|
|
106
|
-
destroy(): void;
|
|
107
|
-
readonly params: TOutputParams | null;
|
|
108
|
-
}
|
|
109
|
-
export type InputPathParam = string | number | boolean | null;
|
|
110
|
-
export type ParsedPathParam = string;
|
|
111
|
-
type Simplify<T> = T extends infer U ? {
|
|
112
|
-
[K in keyof U]: U[K];
|
|
113
|
-
} : never;
|
|
114
|
-
export type RouteParams<TRoute extends AnyAbstractRouteEntity> = TRoute extends {
|
|
115
|
-
path: string;
|
|
116
|
-
} ? ParsedPathParams<TRoute['path']> : TRoute extends {
|
|
117
|
-
params: infer TParams;
|
|
118
|
-
} ? Exclude<TParams, null> : AnyObject;
|
|
119
|
-
export type PathToObject<Path extends string, PropertyValue = string> = Simplify<Path extends `${infer Prefix}{${infer Optional}}${infer Suffix}` ? PathToObject<`${Prefix}${Suffix}`, PropertyValue> & Partial<PathToObject<Optional, PropertyValue>> : Path extends `${infer PartA}/${infer PartB}` ? PathToObject<PartA, PropertyValue> & PathToObject<PartB, PropertyValue> : Path extends `:${infer Param}?` ? {
|
|
120
|
-
[K in Param]?: PropertyValue;
|
|
121
|
-
} : Path extends `:${infer Param}` ? {
|
|
122
|
-
[K in Param]: PropertyValue;
|
|
123
|
-
} : Path extends `*${infer Wildcard}` ? {
|
|
124
|
-
[K in Wildcard]: PropertyValue[];
|
|
125
|
-
} : {}>;
|
|
126
|
-
export type ParsedPathParams<Path extends string> = PathToObject<Path, ParsedPathParam>;
|
|
127
|
-
export type InputPathParams<Path extends string> = PathToObject<Path, InputPathParam>;
|
|
128
|
-
export interface RouteNavigateParams {
|
|
129
|
-
replace?: boolean;
|
|
130
|
-
state?: any;
|
|
131
|
-
query?: AnyObject;
|
|
132
|
-
mergeQuery?: boolean;
|
|
133
|
-
}
|
|
134
|
-
export interface ParsedPathData<TPath extends string> {
|
|
135
|
-
path: string;
|
|
136
|
-
params: ParsedPathParams<TPath>;
|
|
137
|
-
}
|
|
138
|
-
export type InferPath<T extends AnyRoute> = T extends IRoute<infer TPath, any, any> ? TPath : never;
|
|
139
|
-
export type InferInputParams<T extends AnyRoute> = T extends VirtualRoute<infer TParams> ? TParams : T extends IRoute<any, infer TInputParams, any> ? TInputParams : never;
|
|
140
|
-
export type InferParams<T extends AnyRoute> = T extends VirtualRoute<infer TParams> ? TParams : T extends IRoute<any, any, infer TParams> ? TParams : never;
|
|
141
|
-
export {};
|
|
142
|
-
//# sourceMappingURL=route.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.types.d.ts","sourceRoot":"","sources":["../../../src/core/route/route.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./route-group.cjs"), exports);
|
|
18
|
-
__exportStar(require("./route-group.types.cjs"), exports);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/index.ts"],"names":[],"mappings":"AAAA,kCAAiC;AACjC,wCAAuC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,uCAAuC"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createRouteGroup = exports.RouteGroup = void 0;
|
|
4
|
-
const mobx_1 = require("mobx");
|
|
5
|
-
/**
|
|
6
|
-
* Class for grouping related routes and managing their state.
|
|
7
|
-
*
|
|
8
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html)
|
|
9
|
-
*/
|
|
10
|
-
class RouteGroup {
|
|
11
|
-
_indexRoute;
|
|
12
|
-
routes;
|
|
13
|
-
constructor(routes, _indexRoute) {
|
|
14
|
-
this._indexRoute = _indexRoute;
|
|
15
|
-
this.routes = routes;
|
|
16
|
-
mobx_1.computed.struct(this, 'isOpened');
|
|
17
|
-
mobx_1.computed.struct(this, 'indexRoute');
|
|
18
|
-
mobx_1.observable.shallow(this, 'routes');
|
|
19
|
-
(0, mobx_1.makeObservable)(this);
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Returns true if at least one route in the group is open.
|
|
23
|
-
*
|
|
24
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#isopened-boolean)
|
|
25
|
-
*/
|
|
26
|
-
get isOpened() {
|
|
27
|
-
const routes = Object.values(this.routes);
|
|
28
|
-
return routes.some((route) => route.isOpened ||
|
|
29
|
-
('hasOpenedChildren' in route && route.hasOpenedChildren));
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* First found index route.
|
|
33
|
-
*
|
|
34
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#indexroute-route-undefined)
|
|
35
|
-
*/
|
|
36
|
-
get indexRoute() {
|
|
37
|
-
return (this._indexRoute ??
|
|
38
|
-
Object.values(this.routes).find((route) => 'isIndex' in route && route.isIndex));
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Main navigation method for the group.
|
|
42
|
-
*
|
|
43
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#open-args-any-void)
|
|
44
|
-
*/
|
|
45
|
-
open(...args) {
|
|
46
|
-
let lastGroupRoute;
|
|
47
|
-
if (this.indexRoute && 'open' in this.indexRoute) {
|
|
48
|
-
this.indexRoute.open(...args);
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
for (const routeName in this.routes) {
|
|
52
|
-
const route = this.routes[routeName];
|
|
53
|
-
if (route instanceof RouteGroup) {
|
|
54
|
-
lastGroupRoute = route;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
if (lastGroupRoute) {
|
|
58
|
-
lastGroupRoute.open(...args);
|
|
59
|
-
}
|
|
60
|
-
else if (process.env.NODE_ENV !== 'production') {
|
|
61
|
-
console.warn("RouteGroup doesn't have index route. open() method doesn't work.");
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
exports.RouteGroup = RouteGroup;
|
|
66
|
-
const createRouteGroup = (routes, indexRoute) => new RouteGroup(routes, indexRoute);
|
|
67
|
-
exports.createRouteGroup = createRouteGroup;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { AbstractRouteGroup, AnyRouteEntity, RoutesCollection } from "./route-group.types.cjs";
|
|
2
|
-
/**
|
|
3
|
-
* Class for grouping related routes and managing their state.
|
|
4
|
-
*
|
|
5
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html)
|
|
6
|
-
*/
|
|
7
|
-
export declare class RouteGroup<TRoutesCollection extends RoutesCollection> implements AbstractRouteGroup<TRoutesCollection> {
|
|
8
|
-
private _indexRoute?;
|
|
9
|
-
routes: TRoutesCollection;
|
|
10
|
-
constructor(routes: TRoutesCollection, _indexRoute?: AnyRouteEntity | undefined);
|
|
11
|
-
/**
|
|
12
|
-
* Returns true if at least one route in the group is open.
|
|
13
|
-
*
|
|
14
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#isopened-boolean)
|
|
15
|
-
*/
|
|
16
|
-
get isOpened(): boolean;
|
|
17
|
-
/**
|
|
18
|
-
* First found index route.
|
|
19
|
-
*
|
|
20
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#indexroute-route-undefined)
|
|
21
|
-
*/
|
|
22
|
-
get indexRoute(): AnyRouteEntity | undefined;
|
|
23
|
-
/**
|
|
24
|
-
* Main navigation method for the group.
|
|
25
|
-
*
|
|
26
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#open-args-any-void)
|
|
27
|
-
*/
|
|
28
|
-
open(...args: any[]): void;
|
|
29
|
-
}
|
|
30
|
-
export declare const createRouteGroup: <TRoutesCollection extends RoutesCollection>(routes: TRoutesCollection, indexRoute?: AnyRouteEntity) => RouteGroup<TRoutesCollection>;
|
|
31
|
-
//# sourceMappingURL=route-group.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route-group.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/route-group.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EACjB,gCAA+B;AAIhC;;;;GAIG;AACH,qBAAa,UAAU,CAAC,iBAAiB,SAAS,gBAAgB,CAChE,YAAW,kBAAkB,CAAC,iBAAiB,CAAC;IAM9C,OAAO,CAAC,WAAW,CAAC;IAJtB,MAAM,EAAE,iBAAiB,CAAC;gBAGxB,MAAM,EAAE,iBAAiB,EACjB,WAAW,CAAC,EAAE,cAAc,YAAA;IAUtC;;;;OAIG;IACH,IAAI,QAAQ,IAAI,OAAO,CAOtB;IAED;;;;OAIG;IACH,IAAI,UAAU,IAAI,cAAc,GAAG,SAAS,CAK3C;IAED;;;;OAIG;IACH,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAuBpB;AAED,eAAO,MAAM,gBAAgB,GAAI,iBAAiB,SAAS,gBAAgB,EACzE,QAAQ,iBAAiB,EACzB,aAAa,cAAc,kCAC6B,CAAC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { AbstractRouteGroup, AnyRouteEntity, RoutesCollection } from "./route-group.types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Class for grouping related routes and managing their state.
|
|
4
|
-
*
|
|
5
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html)
|
|
6
|
-
*/
|
|
7
|
-
export declare class RouteGroup<TRoutesCollection extends RoutesCollection> implements AbstractRouteGroup<TRoutesCollection> {
|
|
8
|
-
private _indexRoute?;
|
|
9
|
-
routes: TRoutesCollection;
|
|
10
|
-
constructor(routes: TRoutesCollection, _indexRoute?: AnyRouteEntity | undefined);
|
|
11
|
-
/**
|
|
12
|
-
* Returns true if at least one route in the group is open.
|
|
13
|
-
*
|
|
14
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#isopened-boolean)
|
|
15
|
-
*/
|
|
16
|
-
get isOpened(): boolean;
|
|
17
|
-
/**
|
|
18
|
-
* First found index route.
|
|
19
|
-
*
|
|
20
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#indexroute-route-undefined)
|
|
21
|
-
*/
|
|
22
|
-
get indexRoute(): AnyRouteEntity | undefined;
|
|
23
|
-
/**
|
|
24
|
-
* Main navigation method for the group.
|
|
25
|
-
*
|
|
26
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#open-args-any-void)
|
|
27
|
-
*/
|
|
28
|
-
open(...args: any[]): void;
|
|
29
|
-
}
|
|
30
|
-
export declare const createRouteGroup: <TRoutesCollection extends RoutesCollection>(routes: TRoutesCollection, indexRoute?: AnyRouteEntity) => RouteGroup<TRoutesCollection>;
|
|
31
|
-
//# sourceMappingURL=route-group.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route-group.d.ts","sourceRoot":"","sources":["../../../src/core/route-group/route-group.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EACjB,+BAA+B;AAIhC;;;;GAIG;AACH,qBAAa,UAAU,CAAC,iBAAiB,SAAS,gBAAgB,CAChE,YAAW,kBAAkB,CAAC,iBAAiB,CAAC;IAM9C,OAAO,CAAC,WAAW,CAAC;IAJtB,MAAM,EAAE,iBAAiB,CAAC;gBAGxB,MAAM,EAAE,iBAAiB,EACjB,WAAW,CAAC,EAAE,cAAc,YAAA;IAUtC;;;;OAIG;IACH,IAAI,QAAQ,IAAI,OAAO,CAOtB;IAED;;;;OAIG;IACH,IAAI,UAAU,IAAI,cAAc,GAAG,SAAS,CAK3C;IAED;;;;OAIG;IACH,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAuBpB;AAED,eAAO,MAAM,gBAAgB,GAAI,iBAAiB,SAAS,gBAAgB,EACzE,QAAQ,iBAAiB,EACzB,aAAa,cAAc,kCAC6B,CAAC"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { computed, makeObservable, observable } from 'mobx';
|
|
2
|
-
/**
|
|
3
|
-
* Class for grouping related routes and managing their state.
|
|
4
|
-
*
|
|
5
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html)
|
|
6
|
-
*/
|
|
7
|
-
export class RouteGroup {
|
|
8
|
-
_indexRoute;
|
|
9
|
-
routes;
|
|
10
|
-
constructor(routes, _indexRoute) {
|
|
11
|
-
this._indexRoute = _indexRoute;
|
|
12
|
-
this.routes = routes;
|
|
13
|
-
computed.struct(this, 'isOpened');
|
|
14
|
-
computed.struct(this, 'indexRoute');
|
|
15
|
-
observable.shallow(this, 'routes');
|
|
16
|
-
makeObservable(this);
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Returns true if at least one route in the group is open.
|
|
20
|
-
*
|
|
21
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#isopened-boolean)
|
|
22
|
-
*/
|
|
23
|
-
get isOpened() {
|
|
24
|
-
const routes = Object.values(this.routes);
|
|
25
|
-
return routes.some((route) => route.isOpened ||
|
|
26
|
-
('hasOpenedChildren' in route && route.hasOpenedChildren));
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* First found index route.
|
|
30
|
-
*
|
|
31
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#indexroute-route-undefined)
|
|
32
|
-
*/
|
|
33
|
-
get indexRoute() {
|
|
34
|
-
return (this._indexRoute ??
|
|
35
|
-
Object.values(this.routes).find((route) => 'isIndex' in route && route.isIndex));
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Main navigation method for the group.
|
|
39
|
-
*
|
|
40
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/RouteGroup.html#open-args-any-void)
|
|
41
|
-
*/
|
|
42
|
-
open(...args) {
|
|
43
|
-
let lastGroupRoute;
|
|
44
|
-
if (this.indexRoute && 'open' in this.indexRoute) {
|
|
45
|
-
this.indexRoute.open(...args);
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
for (const routeName in this.routes) {
|
|
49
|
-
const route = this.routes[routeName];
|
|
50
|
-
if (route instanceof RouteGroup) {
|
|
51
|
-
lastGroupRoute = route;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
if (lastGroupRoute) {
|
|
55
|
-
lastGroupRoute.open(...args);
|
|
56
|
-
}
|
|
57
|
-
else if (process.env.NODE_ENV !== 'production') {
|
|
58
|
-
console.warn("RouteGroup doesn't have index route. open() method doesn't work.");
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
export const createRouteGroup = (routes, indexRoute) => new RouteGroup(routes, indexRoute);
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { AnyRoute } from "../route/index.cjs";
|
|
2
|
-
import type { AbstractVirtualRoute, AnyVirtualRoute } from "../virtual-route/index.cjs";
|
|
3
|
-
import type { RouteGroup } from "./route-group.cjs";
|
|
4
|
-
export type AnyRouteGroup = RouteGroup<RoutesCollection>;
|
|
5
|
-
export type AnyRouteEntity = AnyRoute | AnyRouteGroup | AnyVirtualRoute;
|
|
6
|
-
export interface AbstractRouteGroup<TRoutesCollection extends RoutesCollection = RoutesCollection> {
|
|
7
|
-
routes: TRoutesCollection;
|
|
8
|
-
isOpened: boolean;
|
|
9
|
-
}
|
|
10
|
-
export type AnyAbstractRoute = AnyRoute | AbstractVirtualRoute<any>;
|
|
11
|
-
export type AnyAbstractRouteEntity = AnyAbstractRoute | AbstractRouteGroup;
|
|
12
|
-
export type RoutesArrayCollection = AnyAbstractRouteEntity[];
|
|
13
|
-
export type RoutesObjectCollection = Record<string, AnyAbstractRouteEntity>;
|
|
14
|
-
export type RoutesCollection = RoutesArrayCollection | RoutesObjectCollection;
|
|
15
|
-
//# sourceMappingURL=route-group.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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,2BAA0B;AAClD,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EAChB,mCAAkC;AAEnC,OAAO,KAAK,EAAE,UAAU,EAAE,0BAAyB;AAEnD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,aAAa,GAAG,eAAe,CAAC;AAExE,MAAM,WAAW,kBAAkB,CACjC,iBAAiB,SAAS,gBAAgB,GAAG,gBAAgB;IAE7D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;AAEpE,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG,sBAAsB,EAAE,CAAC;AAE7D,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GAAG,sBAAsB,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { AnyRoute } from "../route/index.js";
|
|
2
|
-
import type { AbstractVirtualRoute, AnyVirtualRoute } from "../virtual-route/index.js";
|
|
3
|
-
import type { RouteGroup } from "./route-group.js";
|
|
4
|
-
export type AnyRouteGroup = RouteGroup<RoutesCollection>;
|
|
5
|
-
export type AnyRouteEntity = AnyRoute | AnyRouteGroup | AnyVirtualRoute;
|
|
6
|
-
export interface AbstractRouteGroup<TRoutesCollection extends RoutesCollection = RoutesCollection> {
|
|
7
|
-
routes: TRoutesCollection;
|
|
8
|
-
isOpened: boolean;
|
|
9
|
-
}
|
|
10
|
-
export type AnyAbstractRoute = AnyRoute | AbstractVirtualRoute<any>;
|
|
11
|
-
export type AnyAbstractRouteEntity = AnyAbstractRoute | AbstractRouteGroup;
|
|
12
|
-
export type RoutesArrayCollection = AnyAbstractRouteEntity[];
|
|
13
|
-
export type RoutesObjectCollection = Record<string, AnyAbstractRouteEntity>;
|
|
14
|
-
export type RoutesCollection = RoutesArrayCollection | RoutesObjectCollection;
|
|
15
|
-
//# sourceMappingURL=route-group.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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,0BAA0B;AAClD,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EAChB,kCAAkC;AAEnC,OAAO,KAAK,EAAE,UAAU,EAAE,yBAAyB;AAEnD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,aAAa,GAAG,eAAe,CAAC;AAExE,MAAM,WAAW,kBAAkB,CACjC,iBAAiB,SAAS,gBAAgB,GAAG,gBAAgB;IAE7D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;AAEpE,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG,sBAAsB,EAAE,CAAC;AAE7D,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GAAG,sBAAsB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/core/router/index.cjs
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./router.cjs"), exports);
|
|
18
|
-
__exportStar(require("./router.types.cjs"), exports);
|
package/core/router/index.d.cts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/router/index.ts"],"names":[],"mappings":"AAAA,6BAA4B;AAC5B,mCAAkC"}
|
package/core/router/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/router/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,kCAAkC"}
|
package/core/router/index.js
DELETED
package/core/router/router.cjs
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createRouter = exports.Router = void 0;
|
|
4
|
-
const mobx_1 = require("mobx");
|
|
5
|
-
const mobx_location_history_1 = require("mobx-location-history");
|
|
6
|
-
const index_js_1 = require("../config/index.cjs");
|
|
7
|
-
/**
|
|
8
|
-
* Class for centralized routing management.
|
|
9
|
-
*
|
|
10
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Router.html)
|
|
11
|
-
*/
|
|
12
|
-
class Router {
|
|
13
|
-
routes;
|
|
14
|
-
history;
|
|
15
|
-
query;
|
|
16
|
-
constructor(config) {
|
|
17
|
-
this.routes = config.routes;
|
|
18
|
-
this.history = config.history ?? index_js_1.routeConfig.get().history;
|
|
19
|
-
this.query = config.queryParams ?? index_js_1.routeConfig.get().queryParams;
|
|
20
|
-
mobx_1.computed.struct(this, 'location');
|
|
21
|
-
(0, mobx_1.makeObservable)(this);
|
|
22
|
-
}
|
|
23
|
-
get location() {
|
|
24
|
-
return this.history.location;
|
|
25
|
-
}
|
|
26
|
-
navigate(url, options) {
|
|
27
|
-
const query = (options?.mergeQuery ?? index_js_1.routeConfig.get().mergeQuery)
|
|
28
|
-
? { ...this.query.data, ...options?.query }
|
|
29
|
-
: { ...options?.query };
|
|
30
|
-
const searchString = (0, mobx_location_history_1.buildSearchString)(query);
|
|
31
|
-
const navigationUrl = `${url}${searchString}`;
|
|
32
|
-
if (options?.replace) {
|
|
33
|
-
this.history.replace(navigationUrl, options?.state);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
this.history.push(navigationUrl, options?.state);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.Router = Router;
|
|
41
|
-
const createRouter = (config) => new Router(config);
|
|
42
|
-
exports.createRouter = createRouter;
|
package/core/router/router.d.cts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { type History, type IQueryParams } from 'mobx-location-history';
|
|
2
|
-
import type { RoutesCollection } from "../route-group/index.cjs";
|
|
3
|
-
import type { RouterConfiguration, RouterNavigateOptions } from "./router.types.cjs";
|
|
4
|
-
/**
|
|
5
|
-
* Class for centralized routing management.
|
|
6
|
-
*
|
|
7
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Router.html)
|
|
8
|
-
*/
|
|
9
|
-
export declare class Router<TRoutesCollection extends RoutesCollection> {
|
|
10
|
-
routes: TRoutesCollection;
|
|
11
|
-
history: History;
|
|
12
|
-
query: IQueryParams;
|
|
13
|
-
constructor(config: RouterConfiguration<TRoutesCollection>);
|
|
14
|
-
get location(): import("mobx-location-history").Location;
|
|
15
|
-
navigate(url: string, options?: RouterNavigateOptions): void;
|
|
16
|
-
}
|
|
17
|
-
export declare const createRouter: <TRoutesCollection extends RoutesCollection>(config: RouterConfiguration<TRoutesCollection>) => Router<TRoutesCollection>;
|
|
18
|
-
//# sourceMappingURL=router.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/router/router.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,iCAAgC;AAEhE,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACtB,2BAA0B;AAE3B;;;;GAIG;AACH,qBAAa,MAAM,CAAC,iBAAiB,SAAS,gBAAgB;IAC5D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;gBAER,MAAM,EAAE,mBAAmB,CAAC,iBAAiB,CAAC;IAU1D,IAAI,QAAQ,6CAEX;IAED,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;CAetD;AAED,eAAO,MAAM,YAAY,GAAI,iBAAiB,SAAS,gBAAgB,EACrE,QAAQ,mBAAmB,CAAC,iBAAiB,CAAC,8BACzB,CAAC"}
|
package/core/router/router.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { type History, type IQueryParams } from 'mobx-location-history';
|
|
2
|
-
import type { RoutesCollection } from "../route-group/index.js";
|
|
3
|
-
import type { RouterConfiguration, RouterNavigateOptions } from "./router.types.js";
|
|
4
|
-
/**
|
|
5
|
-
* Class for centralized routing management.
|
|
6
|
-
*
|
|
7
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Router.html)
|
|
8
|
-
*/
|
|
9
|
-
export declare class Router<TRoutesCollection extends RoutesCollection> {
|
|
10
|
-
routes: TRoutesCollection;
|
|
11
|
-
history: History;
|
|
12
|
-
query: IQueryParams;
|
|
13
|
-
constructor(config: RouterConfiguration<TRoutesCollection>);
|
|
14
|
-
get location(): import("mobx-location-history").Location;
|
|
15
|
-
navigate(url: string, options?: RouterNavigateOptions): void;
|
|
16
|
-
}
|
|
17
|
-
export declare const createRouter: <TRoutesCollection extends RoutesCollection>(config: RouterConfiguration<TRoutesCollection>) => Router<TRoutesCollection>;
|
|
18
|
-
//# sourceMappingURL=router.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/router/router.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,gCAAgC;AAEhE,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACtB,0BAA0B;AAE3B;;;;GAIG;AACH,qBAAa,MAAM,CAAC,iBAAiB,SAAS,gBAAgB;IAC5D,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;gBAER,MAAM,EAAE,mBAAmB,CAAC,iBAAiB,CAAC;IAU1D,IAAI,QAAQ,6CAEX;IAED,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;CAetD;AAED,eAAO,MAAM,YAAY,GAAI,iBAAiB,SAAS,gBAAgB,EACrE,QAAQ,mBAAmB,CAAC,iBAAiB,CAAC,8BACzB,CAAC"}
|
package/core/router/router.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { computed, makeObservable } from 'mobx';
|
|
2
|
-
import { buildSearchString, } from 'mobx-location-history';
|
|
3
|
-
import { routeConfig } from "../config/index.js";
|
|
4
|
-
/**
|
|
5
|
-
* Class for centralized routing management.
|
|
6
|
-
*
|
|
7
|
-
* [**Documentation**](https://js2me.github.io/mobx-route/core/Router.html)
|
|
8
|
-
*/
|
|
9
|
-
export class Router {
|
|
10
|
-
routes;
|
|
11
|
-
history;
|
|
12
|
-
query;
|
|
13
|
-
constructor(config) {
|
|
14
|
-
this.routes = config.routes;
|
|
15
|
-
this.history = config.history ?? routeConfig.get().history;
|
|
16
|
-
this.query = config.queryParams ?? routeConfig.get().queryParams;
|
|
17
|
-
computed.struct(this, 'location');
|
|
18
|
-
makeObservable(this);
|
|
19
|
-
}
|
|
20
|
-
get location() {
|
|
21
|
-
return this.history.location;
|
|
22
|
-
}
|
|
23
|
-
navigate(url, options) {
|
|
24
|
-
const query = (options?.mergeQuery ?? routeConfig.get().mergeQuery)
|
|
25
|
-
? { ...this.query.data, ...options?.query }
|
|
26
|
-
: { ...options?.query };
|
|
27
|
-
const searchString = buildSearchString(query);
|
|
28
|
-
const navigationUrl = `${url}${searchString}`;
|
|
29
|
-
if (options?.replace) {
|
|
30
|
-
this.history.replace(navigationUrl, options?.state);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
this.history.push(navigationUrl, options?.state);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
export const createRouter = (config) => new Router(config);
|