@plumile/router 0.1.45 → 0.1.50
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 +78 -2
- package/lib/esm/ResourcePage.d.ts +1 -5
- package/lib/esm/ResourcePage.d.ts.map +1 -1
- package/lib/esm/ResourcePage.js +13 -42
- package/lib/esm/asyncResource.d.ts +8 -0
- package/lib/esm/asyncResource.d.ts.map +1 -0
- package/lib/esm/asyncResource.js +101 -0
- package/lib/esm/builder.d.ts +7 -7
- package/lib/esm/builder.d.ts.map +1 -1
- package/lib/esm/builder.js +5 -4
- package/lib/esm/index.d.ts +1 -0
- package/lib/esm/index.d.ts.map +1 -1
- package/lib/esm/index.js +2 -1
- package/lib/esm/instrumentation/Instrumentation.d.ts +37 -13
- package/lib/esm/instrumentation/Instrumentation.d.ts.map +1 -1
- package/lib/esm/instrumentation/Instrumentation.js +1 -1
- package/lib/esm/prepareResource.d.ts +4 -0
- package/lib/esm/prepareResource.d.ts.map +1 -0
- package/lib/esm/prepareResource.js +11 -0
- package/lib/esm/routing/RouteComponentWrapper.d.ts.map +1 -1
- package/lib/esm/routing/RouteComponentWrapper.js +14 -3
- package/lib/esm/routing/createRouter.d.ts +9 -3
- package/lib/esm/routing/createRouter.d.ts.map +1 -1
- package/lib/esm/routing/createRouter.js +155 -145
- package/lib/esm/tools.d.ts +7 -4
- package/lib/esm/tools.d.ts.map +1 -1
- package/lib/esm/tools.js +93 -21
- package/lib/esm/types.d.ts +131 -54
- package/lib/esm/types.d.ts.map +1 -1
- package/lib/esm/types.js +1 -1
- package/lib/esm/values.d.ts +19 -0
- package/lib/esm/values.d.ts.map +1 -0
- package/lib/esm/values.js +53 -0
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/types/ResourcePage.d.ts +1 -5
- package/lib/types/ResourcePage.d.ts.map +1 -1
- package/lib/types/asyncResource.d.ts +8 -0
- package/lib/types/asyncResource.d.ts.map +1 -0
- package/lib/types/builder.d.ts +7 -7
- package/lib/types/builder.d.ts.map +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/instrumentation/Instrumentation.d.ts +37 -13
- package/lib/types/instrumentation/Instrumentation.d.ts.map +1 -1
- package/lib/types/prepareResource.d.ts +4 -0
- package/lib/types/prepareResource.d.ts.map +1 -0
- package/lib/types/routing/RouteComponentWrapper.d.ts.map +1 -1
- package/lib/types/routing/createRouter.d.ts +9 -3
- package/lib/types/routing/createRouter.d.ts.map +1 -1
- package/lib/types/tools.d.ts +7 -4
- package/lib/types/tools.d.ts.map +1 -1
- package/lib/types/types.d.ts +131 -54
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/values.d.ts +19 -0
- package/lib/types/values.d.ts.map +1 -0
- package/package.json +4 -5
package/lib/esm/tools.d.ts
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import type { ParamData } from 'path-to-regexp';
|
|
2
|
-
import { type PrepareResult, type PreparedMatch, type Route, type RouterMatchedRoute } from './types.js';
|
|
2
|
+
import { type PrepareResult, type PreparedMatch, type ResolvedPreparedMatch, type Route, type RouterMatchedRoute } from './types.js';
|
|
3
3
|
import type { RouterPrepareEvent, RouterNavigationSource, RouterLocationSnapshot } from './instrumentation/Instrumentation.js';
|
|
4
4
|
import type { FlatRoute } from './builder.js';
|
|
5
|
-
|
|
6
|
-
export declare function prepareMatch<TParams extends ParamData, TContext = unknown>(match: RouterMatchedRoute<TParams> | null, query?: Record<string, unknown>, instrumentation?: {
|
|
5
|
+
type PrepareInstrumentation = {
|
|
7
6
|
emit: (event: RouterPrepareEvent) => void;
|
|
8
7
|
source: RouterNavigationSource;
|
|
9
8
|
location: RouterLocationSnapshot;
|
|
10
|
-
}
|
|
9
|
+
};
|
|
10
|
+
export declare function getMatchedRoute<TParams extends ParamData, TContext = unknown>(routes: FlatRoute<TParams, TContext>[], location: Location): RouterMatchedRoute<TParams, TContext> | null;
|
|
11
|
+
export declare function prepareMatch<TParams extends ParamData, TContext = unknown>(match: RouterMatchedRoute<TParams, TContext> | null, query?: Record<string, unknown>, instrumentation?: PrepareInstrumentation, context?: TContext): PreparedMatch<TParams, TContext>;
|
|
12
|
+
export declare function prepareMatchAsync<TParams extends ParamData, TContext = unknown>(match: RouterMatchedRoute<TParams, TContext> | null, query?: Record<string, unknown>, instrumentation?: PrepareInstrumentation, context?: TContext): Promise<ResolvedPreparedMatch<TParams, TContext>>;
|
|
11
13
|
export declare function r<TContext = unknown, TPrepared extends PrepareResult = PrepareResult, TVariables extends ParamData = ParamData, TQuery extends Record<string, unknown> = Record<string, unknown>>(route: Route<TContext, TPrepared, TVariables, TQuery>): Route<TContext, TPrepared, TVariables, TQuery>;
|
|
14
|
+
export {};
|
|
12
15
|
//# sourceMappingURL=tools.d.ts.map
|
package/lib/esm/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAGlB,KAAK,qBAAqB,EAE1B,KAAK,KAAK,EACV,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,KAAK,sBAAsB,GAAG;IAC5B,IAAI,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,EAAE,sBAAsB,CAAC;CAClC,CAAC;AASF,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EAAE,QAAQ,GAAG,OAAO,EAC3E,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EACtC,QAAQ,EAAE,QAAQ,GACjB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAI,CAe9C;AAgCD,wBAAgB,YAAY,CAAC,OAAO,SAAS,SAAS,EAAE,QAAQ,GAAG,OAAO,EACxE,KAAK,EAAE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAI,EACnD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,eAAe,CAAC,EAAE,sBAAsB,EACxC,OAAO,CAAC,EAAE,QAAQ,GACjB,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CA2IlC;AAWD,wBAAsB,iBAAiB,CACrC,OAAO,SAAS,SAAS,EACzB,QAAQ,GAAG,OAAO,EAElB,KAAK,EAAE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,IAAI,EACnD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,eAAe,CAAC,EAAE,sBAAsB,EACxC,OAAO,CAAC,EAAE,QAAQ,GACjB,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CA6BnD;AAOD,wBAAgB,CAAC,CACf,QAAQ,GAAG,OAAO,EAClB,SAAS,SAAS,aAAa,GAAG,aAAa,EAC/C,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAEhE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,GACpD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,CAEhD"}
|
package/lib/esm/tools.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createPreparedValueResource } from './prepareResource.js';
|
|
1
2
|
export function getMatchedRoute(routes, location) {
|
|
2
3
|
for (const route of routes) {
|
|
3
4
|
const match = route.matchFunction(location.pathname);
|
|
@@ -31,12 +32,13 @@ export function prepareMatch(match, query, instrumentation, context) {
|
|
|
31
32
|
if (match == null) {
|
|
32
33
|
return {
|
|
33
34
|
match,
|
|
35
|
+
segments: [],
|
|
34
36
|
routes: [],
|
|
35
37
|
};
|
|
36
38
|
}
|
|
37
39
|
const matchedRoute = match.route;
|
|
38
|
-
const
|
|
39
|
-
const { path, prepare, resourcePage, render } = route;
|
|
40
|
+
const segments = match.route.routes.map((route, routeIndex) => {
|
|
41
|
+
const { path, prepare, querySchema, resourcePage, render } = route;
|
|
40
42
|
let moduleId;
|
|
41
43
|
if (resourcePage != null &&
|
|
42
44
|
typeof resourcePage.getModuleId === 'function') {
|
|
@@ -45,8 +47,6 @@ export function prepareMatch(match, query, instrumentation, context) {
|
|
|
45
47
|
moduleId = resolvedModuleId;
|
|
46
48
|
}
|
|
47
49
|
}
|
|
48
|
-
let Component;
|
|
49
|
-
let prepared;
|
|
50
50
|
let prepareStartedAt = 0;
|
|
51
51
|
if (instrumentation != null) {
|
|
52
52
|
prepareStartedAt = Date.now();
|
|
@@ -59,49 +59,121 @@ export function prepareMatch(match, query, instrumentation, context) {
|
|
|
59
59
|
moduleId,
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
|
+
let preparedResource;
|
|
62
63
|
if (prepare != null) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
preparedResource = createPreparedValueResource(() => {
|
|
65
|
+
return prepare({
|
|
66
|
+
match,
|
|
67
|
+
matchedRoute,
|
|
68
|
+
context: context,
|
|
69
|
+
resourcePage,
|
|
70
|
+
variables: { ...match.params },
|
|
71
|
+
query: query ?? {},
|
|
72
|
+
});
|
|
70
73
|
});
|
|
74
|
+
const preparedLoad = preparedResource.load();
|
|
75
|
+
if (instrumentation != null) {
|
|
76
|
+
preparedLoad
|
|
77
|
+
.then(() => {
|
|
78
|
+
const finishedAt = Date.now();
|
|
79
|
+
instrumentation.emit({
|
|
80
|
+
kind: 'prepare-complete',
|
|
81
|
+
source: instrumentation.source,
|
|
82
|
+
timestamp: finishedAt,
|
|
83
|
+
location: instrumentation.location,
|
|
84
|
+
routePath: path,
|
|
85
|
+
moduleId,
|
|
86
|
+
durationMs: finishedAt - prepareStartedAt,
|
|
87
|
+
hasPrepared: true,
|
|
88
|
+
status: 'resolved',
|
|
89
|
+
});
|
|
90
|
+
})
|
|
91
|
+
.catch(() => {
|
|
92
|
+
const finishedAt = Date.now();
|
|
93
|
+
instrumentation.emit({
|
|
94
|
+
kind: 'prepare-complete',
|
|
95
|
+
source: instrumentation.source,
|
|
96
|
+
timestamp: finishedAt,
|
|
97
|
+
location: instrumentation.location,
|
|
98
|
+
routePath: path,
|
|
99
|
+
moduleId,
|
|
100
|
+
durationMs: finishedAt - prepareStartedAt,
|
|
101
|
+
hasPrepared: true,
|
|
102
|
+
status: 'rejected',
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
preparedLoad.catch(() => {
|
|
108
|
+
});
|
|
109
|
+
}
|
|
71
110
|
}
|
|
72
|
-
if (instrumentation != null) {
|
|
111
|
+
if (instrumentation != null && prepare == null) {
|
|
73
112
|
const finishedAt = Date.now();
|
|
74
113
|
instrumentation.emit({
|
|
75
|
-
kind: 'prepare-
|
|
114
|
+
kind: 'prepare-complete',
|
|
76
115
|
source: instrumentation.source,
|
|
77
116
|
timestamp: finishedAt,
|
|
78
117
|
location: instrumentation.location,
|
|
79
118
|
routePath: path,
|
|
119
|
+
moduleId,
|
|
80
120
|
durationMs: finishedAt - prepareStartedAt,
|
|
81
|
-
hasPrepared:
|
|
121
|
+
hasPrepared: false,
|
|
122
|
+
status: 'resolved',
|
|
82
123
|
});
|
|
83
124
|
}
|
|
84
|
-
if (resourcePage != null) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
125
|
+
if (resourcePage != null && resourcePage.get() == null) {
|
|
126
|
+
try {
|
|
127
|
+
Promise.resolve(resourcePage.load()).catch(() => {
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
88
131
|
}
|
|
89
132
|
}
|
|
90
133
|
return {
|
|
91
134
|
path,
|
|
92
|
-
|
|
135
|
+
fullPath: path,
|
|
136
|
+
segmentIndex: routeIndex,
|
|
137
|
+
preparedResource,
|
|
93
138
|
redirectTo: matchedRoute.redirectTo ?? null,
|
|
94
139
|
render,
|
|
95
140
|
resourcePage,
|
|
96
141
|
highlightId: buildHighlightId(path, routeIndex, moduleId),
|
|
142
|
+
querySchema,
|
|
97
143
|
};
|
|
98
144
|
});
|
|
99
145
|
return {
|
|
100
146
|
match,
|
|
101
|
-
|
|
147
|
+
segments,
|
|
148
|
+
routes: segments,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
export async function prepareMatchAsync(match, query, instrumentation, context) {
|
|
152
|
+
const preparedMatch = prepareMatch(match, query, instrumentation, context);
|
|
153
|
+
const segments = await Promise.all(preparedMatch.segments.map(async (route) => {
|
|
154
|
+
let prepared;
|
|
155
|
+
if (route.preparedResource != null) {
|
|
156
|
+
prepared = await route.preparedResource.load();
|
|
157
|
+
}
|
|
158
|
+
return {
|
|
159
|
+
path: route.path,
|
|
160
|
+
fullPath: route.fullPath,
|
|
161
|
+
segmentIndex: route.segmentIndex,
|
|
162
|
+
prepared,
|
|
163
|
+
redirectTo: route.redirectTo,
|
|
164
|
+
render: route.render,
|
|
165
|
+
resourcePage: route.resourcePage,
|
|
166
|
+
highlightId: route.highlightId,
|
|
167
|
+
querySchema: route.querySchema,
|
|
168
|
+
};
|
|
169
|
+
}));
|
|
170
|
+
return {
|
|
171
|
+
match: preparedMatch.match,
|
|
172
|
+
segments,
|
|
173
|
+
routes: segments,
|
|
102
174
|
};
|
|
103
175
|
}
|
|
104
176
|
export function r(route) {
|
|
105
177
|
return route;
|
|
106
178
|
}
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUJBLE1BQU0sVUFBVSxlQUFlLENBQzdCLE1BQTRCLEVBQzVCLFFBQWtCO0lBRWxCLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7UUFDM0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDcEIsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7WUFDL0IsT0FBTztnQkFDTCxLQUFLO2dCQUNMLEtBQUs7Z0JBQ0wsSUFBSTtnQkFDSixNQUFNO2FBQ1AsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBS0QsU0FBUyxnQkFBZ0IsQ0FDdkIsU0FBNkIsRUFDN0IsS0FBYSxFQUNiLFFBQWlCO0lBRWpCLE1BQU0sS0FBSyxHQUFhLEVBQUUsQ0FBQztJQUMzQixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDM0QsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNELElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUM3RCxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7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UTtZQUNSLFVBQVUsRUFBRSxZQUFZLENBQUMsVUFBVSxJQUFJLElBQUk7WUFDM0MsTUFBTTtZQUNOLFlBQVk7WUFDWixXQUFXLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUM7U0FDMUQsQ0FBQztJQUNKLENBQUMsQ0FDRixDQUFDO0lBRUYsT0FBTztRQUNMLEtBQUs7UUFDTCxNQUFNO0tBQ1AsQ0FBQztBQUNKLENBQUM7QUFPRCxNQUFNLFVBQVUsQ0FBQyxDQU1mLEtBQXFEO0lBRXJELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGFyYW1EYXRhIH0gZnJvbSAncGF0aC10by1yZWdleHAnO1xuXG5pbXBvcnQge1xuICB0eXBlIFByZXBhcmVSZXN1bHQsXG4gIHR5cGUgUHJlcGFyZWRNYXRjaCxcbiAgdHlwZSBQcmVwYXJlZE1hdGNoUm91dGUsXG4gIHR5cGUgUm91dGUsXG4gIHR5cGUgUm91dGVyTWF0Y2hlZFJvdXRlLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuaW1wb3J0IHR5cGUge1xuICBSb3V0ZXJQcmVwYXJlRXZlbnQsXG4gIFJvdXRlck5hdmlnYXRpb25Tb3VyY2UsXG4gIFJvdXRlckxvY2F0aW9uU25hcHNob3QsXG59IGZyb20gJy4vaW5zdHJ1bWVudGF0aW9uL0luc3RydW1lbnRhdGlvbi5qcyc7XG5cbmltcG9ydCB0eXBlIHsgRmxhdFJvdXRlIH0gZnJvbSAnLi9idWlsZGVyLmpzJztcblxuLyoqXG4gKiBGaW5kcyB0aGUgZmlyc3QgZmxhdCByb3V0ZSBtYXRjaGluZyB0aGUgcHJvdmlkZWQgbG9jYXRpb24uXG4gKlxuICogQHBhcmFtIHJvdXRlcyAtIEZsYXR0ZW5lZCByb3V0ZSBsaXN0IHRvIGV2YWx1YXRlLlxuICogQHBhcmFtIGxvY2F0aW9uIC0gQnJvd3NlciBsb2NhdGlvbiB3aG9zZSBwYXRobmFtZSBzaG91bGQgYmUgbWF0Y2hlZC5cbiAqIEByZXR1cm5zIE1hdGNoZWQgcm91dGUgd2l0aCBwYXJhbXMgb3IgYG51bGxgIGlmIG5vbmUgbWF0Y2guXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXRjaGVkUm91dGU8VFBhcmFtcyBleHRlbmRzIFBhcmFtRGF0YT4oXG4gIHJvdXRlczogRmxhdFJvdXRlPFRQYXJhbXM+W10sXG4gIGxvY2F0aW9uOiBMb2NhdGlvbixcbik6IFJvdXRlck1hdGNoZWRSb3V0ZTxUUGFyYW1zPiB8IG51bGwge1xuICBmb3IgKGNvbnN0IHJvdXRlIG9mIHJvdXRlcykge1xuICAgIGNvbnN0IG1hdGNoID0gcm91dGUubWF0Y2hGdW5jdGlvbihsb2NhdGlvbi5wYXRobmFtZSk7XG4gICAgaWYgKG1hdGNoICE9PSBmYWxzZSkge1xuICAgICAgY29uc3QgeyBwYXRoLCBwYXJhbXMgfSA9IG1hdGNoO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWF0Y2gsXG4gICAgICAgIHJvdXRlLFxuICAgICAgICBwYXRoLFxuICAgICAgICBwYXJhbXMsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIERlcml2ZXMgYSBkZXRlcm1pbmlzdGljIGlkZW50aWZpZXIgdGhhdCBsaW5rcyBwcmVwYXJlZCByb3V0ZXMgdG8gRE9NIG1hcmtlcnMuXG4gKi9cbmZ1bmN0aW9uIGJ1aWxkSGlnaGxpZ2h0SWQoXG4gIHJvdXRlUGF0aDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICBpbmRleDogbnVtYmVyLFxuICBtb2R1bGVJZD86IHN0cmluZyxcbik6IHN0cmluZyB7XG4gIGNvbnN0IHBhcnRzOiBzdHJpbmdbXSA9IFtdO1xuICBpZiAodHlwZW9mIG1vZHVsZUlkID09PSAnc3RyaW5nJyAmJiBtb2R1bGVJZC50cmltKCkgIT09ICcnKSB7XG4gICAgcGFydHMucHVzaChgbW9kdWxlOiR7bW9kdWxlSWR9YCk7XG4gIH1cbiAgaWYgKHR5cGVvZiByb3V0ZVBhdGggPT09ICdzdHJpbmcnICYmIHJvdXRlUGF0aC50cmltKCkgIT09ICcnKSB7XG4gICAgcGFydHMucHVzaChgcGF0aDoke3JvdXRlUGF0aH1gKTtcbiAgfVxuICBpZiAocGFydHMubGVuZ3RoID09PSAwKSB7XG4gICAgcGFydHMucHVzaCgncm91dGUnKTtcbiAgfVxuICBwYXJ0cy5wdXNoKGBpbmRleDoke2luZGV4fWApO1xuICByZXR1cm4gcGFydHMuam9pbignfCcpO1xufVxuXG4vKipcbiAqIFByZXBhcmVzIGEgbWF0Y2hlZCByb3V0ZSBieSBleGVjdXRpbmcgYHByZXBhcmVgIGNhbGxiYWNrcyBhbmQgcmVzb2x2aW5nIHJlc291cmNlIHBhZ2VzLlxuICpcbiAqIEBwYXJhbSBtYXRjaCAtIE1hdGNoZWQgcm91dGUgZGVzY3JpcHRvciAob3IgYG51bGxgIHdoZW4gbm90aGluZyBtYXRjaGVkKS5cbiAqIEBwYXJhbSBxdWVyeSAtIE9wdGlvbmFsIHF1ZXJ5IG9iamVjdCBmb3J3YXJkZWQgdG8gcHJlcGFyZSBmdW5jdGlvbnMuXG4gKiBAcGFyYW0gY29udGV4dCAtIE9wdGlvbmFsIHJvdXRlciBjb250ZXh0IGZvcndhcmRlZCB0byBwcmVwYXJlIGZ1bmN0aW9ucy5cbiAqIEByZXR1cm5zIFByZXBhcmVkIGhpZXJhcmNoeSByZWFkeSBmb3IgdGhlIHJlbmRlcmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZU1hdGNoPFRQYXJhbXMgZXh0ZW5kcyBQYXJhbURhdGEsIFRDb250ZXh0ID0gdW5rbm93bj4oXG4gIG1hdGNoOiBSb3V0ZXJNYXRjaGVkUm91dGU8VFBhcmFtcz4gfCBudWxsLFxuICBxdWVyeT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBpbnN0cnVtZW50YXRpb24/OiB7XG4gICAgZW1pdDogKGV2ZW50OiBSb3V0ZXJQcmVwYXJlRXZlbnQpID0+IHZvaWQ7XG4gICAgc291cmNlOiBSb3V0ZXJOYXZpZ2F0aW9uU291cmNlO1xuICAgIGxvY2F0aW9uOiBSb3V0ZXJMb2NhdGlvblNuYXBzaG90O1xuICB9LFxuICBjb250ZXh0PzogVENvbnRleHQsXG4pOiBQcmVwYXJlZE1hdGNoPFRQYXJhbXM+IHtcbiAgLy8gTk9URTogUnVudGltZSByZXRhaW5zIGEgZ2VuZXJpYyBQcmVwYXJlZFJlc3VsdDsgdHlwZS1sZXZlbCBuYXJyb3dpbmcgaXMgYWNoaWV2ZWQgZXh0ZXJuYWxseVxuICAvLyB0aHJvdWdoIHRoZSByb3V0ZSB1bmlvbiBhbmQgUHJlcGFyZWRBY2Nlc3MgaGVscGVycy4gV2UgaW50ZW50aW9uYWxseSBhdm9pZCBpbmplY3RpbmdcbiAgLy8gZ2VuZXJpYyBwYXJhbWV0ZXJzIGhlcmUgdG8ga2VlcCBydW50aW1lIGxpZ2h0d2VpZ2h0IHdoaWxlIHN0aWxsIGVuYWJsaW5nIGNvbXBpbGUtdGltZVxuICAvLyBkaXNjcmltaW5hdGlvbiBpbiB1c2VybGFuZCB2aWEgY3JlYXRlUm91dGVyIGdlbmVyaWNzLlxuICBpZiAobWF0Y2ggPT0gbnVsbCkge1xuICAgIHJldHVybiB7XG4gICAgICBtYXRjaCxcbiAgICAgIHJvdXRlczogW10sXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IG1hdGNoZWRSb3V0ZSA9IG1hdGNoLnJvdXRlO1xuXG4gIGNvbnN0IHJvdXRlczogUHJlcGFyZWRNYXRjaFJvdXRlW10gPSBtYXRjaC5yb3V0ZS5yb3V0ZXMubWFwKFxuICAgIChyb3V0ZSwgcm91dGVJbmRleCkgPT4ge1xuICAgICAgY29uc3QgeyBwYXRoLCBwcmVwYXJlLCByZXNvdXJjZVBhZ2UsIHJlbmRlciB9ID0gcm91dGU7XG4gICAgICBsZXQgbW9kdWxlSWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgIGlmIChcbiAgICAgICAgcmVzb3VyY2VQYWdlICE9IG51bGwgJiZcbiAgICAgICAgdHlwZW9mIHJlc291cmNlUGFnZS5nZXRNb2R1bGVJZCA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IHJlc29sdmVkTW9kdWxlSWQgPSByZXNvdXJjZVBhZ2UuZ2V0TW9kdWxlSWQoKTtcbiAgICAgICAgaWYgKHR5cGVvZiByZXNvbHZlZE1vZHVsZUlkID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIG1vZHVsZUlkID0gcmVzb2x2ZWRNb2R1bGVJZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsZXQgQ29tcG9uZW50OiB1bmtub3duO1xuICAgICAgbGV0IHByZXBhcmVkOiBQcmVwYXJlUmVzdWx0IHwgdW5kZWZpbmVkO1xuXG4gICAgICBsZXQgcHJlcGFyZVN0YXJ0ZWRBdCA9IDA7XG4gICAgICBpZiAoaW5zdHJ1bWVudGF0aW9uICE9IG51bGwpIHtcbiAgICAgICAgcHJlcGFyZVN0YXJ0ZWRBdCA9IERhdGUubm93KCk7XG4gICAgICAgIGluc3RydW1lbnRhdGlvbi5lbWl0KHtcbiAgICAgICAgICBraW5kOiAncHJlcGFyZS1zdGFydCcsXG4gICAgICAgICAgc291cmNlOiBpbnN0cnVtZW50YXRpb24uc291cmNlLFxuICAgICAgICAgIHRpbWVzdGFtcDogcHJlcGFyZVN0YXJ0ZWRBdCxcbiAgICAgICAgICBsb2NhdGlvbjogaW5zdHJ1bWVudGF0aW9uLmxvY2F0aW9uLFxuICAgICAgICAgIHJvdXRlUGF0aDogcGF0aCxcbiAgICAgICAgICBtb2R1bGVJZCxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChwcmVwYXJlICE9IG51bGwpIHtcbiAgICAgICAgcHJlcGFyZWQgPSBwcmVwYXJlKHtcbiAgICAgICAgICBtYXRjaCxcbiAgICAgICAgICBtYXRjaGVkUm91dGUsXG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICByZXNvdXJjZVBhZ2UsXG4gICAgICAgICAgLy8gRml4IE9iamVjdC5jcmVhdGUobnVsbCkgaXNzdWUgaW4gcGF0aC10by1yZWdleHBcbiAgICAgICAgICB2YXJpYWJsZXM6IHsgLi4ubWF0Y2gucGFyYW1zIH0sXG4gICAgICAgICAgcXVlcnk6IHF1ZXJ5ID8/IHt9LFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGluc3RydW1lbnRhdGlvbiAhPSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGZpbmlzaGVkQXQgPSBEYXRlLm5vdygpO1xuICAgICAgICBpbnN0cnVtZW50YXRpb24uZW1pdCh7XG4gICAgICAgICAga2luZDogJ3ByZXBhcmUtZW5kJyxcbiAgICAgICAgICBzb3VyY2U6IGluc3RydW1lbnRhdGlvbi5zb3VyY2UsXG4gICAgICAgICAgdGltZXN0YW1wOiBmaW5pc2hlZEF0LFxuICAgICAgICAgIGxvY2F0aW9uOiBpbnN0cnVtZW50YXRpb24ubG9jYXRpb24sXG4gICAgICAgICAgcm91dGVQYXRoOiBwYXRoLFxuICAgICAgICAgIGR1cmF0aW9uTXM6IGZpbmlzaGVkQXQgLSBwcmVwYXJlU3RhcnRlZEF0LFxuICAgICAgICAgIGhhc1ByZXBhcmVkOiBwcmVwYXJlICE9IG51bGwsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVzb3VyY2VQYWdlICE9IG51bGwpIHtcbiAgICAgICAgQ29tcG9uZW50ID0gcmVzb3VyY2VQYWdlLmdldCgpO1xuICAgICAgICBpZiAoQ29tcG9uZW50ID09IG51bGwpIHtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzXG4gICAgICAgICAgcmVzb3VyY2VQYWdlLmxvYWQoKTsgLy8gZWFnZXJseSBsb2FkXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhdGgsXG4gICAgICAgIHByZXBhcmVkLFxuICAgICAgICByZWRpcmVjdFRvOiBtYXRjaGVkUm91dGUucmVkaXJlY3RUbyA/PyBudWxsLFxuICAgICAgICByZW5kZXIsXG4gICAgICAgIHJlc291cmNlUGFnZSxcbiAgICAgICAgaGlnaGxpZ2h0SWQ6IGJ1aWxkSGlnaGxpZ2h0SWQocGF0aCwgcm91dGVJbmRleCwgbW9kdWxlSWQpLFxuICAgICAgfTtcbiAgICB9LFxuICApO1xuXG4gIHJldHVybiB7XG4gICAgbWF0Y2gsXG4gICAgcm91dGVzLFxuICB9O1xufVxuXG4vKipcbiAqIFJvdXRlIGhlbHBlciB0aGF0IHByZXNlcnZlcyBUeXBlU2NyaXB0IGluZmVyZW5jZSAoaW5jbHVkaW5nIGNvbmRpdGlvbmFsIHF1ZXJ5LXNjaGVtYSBpbmZlcmVuY2UpLlxuICpcbiAqIEBwYXJhbSByb3V0ZSAtIFJvdXRlIGRlZmluaXRpb24gdG8gcmV0dXJuIHVuY2hhbmdlZCB3aXRoIGluZmVycmVkIGdlbmVyaWNzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcjxcbiAgVENvbnRleHQgPSB1bmtub3duLFxuICBUUHJlcGFyZWQgZXh0ZW5kcyBQcmVwYXJlUmVzdWx0ID0gUHJlcGFyZVJlc3VsdCxcbiAgVFZhcmlhYmxlcyBleHRlbmRzIFBhcmFtRGF0YSA9IFBhcmFtRGF0YSxcbiAgVFF1ZXJ5IGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbj4oXG4gIHJvdXRlOiBSb3V0ZTxUQ29udGV4dCwgVFByZXBhcmVkLCBUVmFyaWFibGVzLCBUUXVlcnk+LFxuKTogUm91dGU8VENvbnRleHQsIFRQcmVwYXJlZCwgVFZhcmlhYmxlcywgVFF1ZXJ5PiB7XG4gIHJldHVybiByb3V0ZTtcbn1cbiJdfQ==
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0JBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBZW5FLE1BQU0sVUFBVSxlQUFlLENBQzdCLE1BQXNDLEVBQ3RDLFFBQWtCO0lBRWxCLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7UUFDM0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDcEIsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7WUFDL0IsT0FBTztnQkFDTCxLQUFLO2dCQUNMLEtBQUs7Z0JBQ0wsSUFBSTtnQkFDSixNQUFNO2FBQ1AsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBS0QsU0FBUyxnQkFBZ0IsQ0FDdkIsU0FBNkIsRUFDN0IsS0FBYSxFQUNiLFFBQWlCO0lBRWpCLE1BQU0sS0FBSyxHQUFhLEVBQUUsQ0FBQztJQUMzQixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDM0QsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNELElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUM3RCxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxD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O1FBQ0QsT0FBTztZQUNMLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO1lBQ2hDLFFBQVE7WUFDUixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7WUFDNUIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1NBQy9CLENBQUM7SUFDSixDQUFDLENBQ0YsQ0FDRixDQUFDO0lBRUYsT0FBTztRQUNMLEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSztRQUMxQixRQUFRO1FBQ1IsTUFBTSxFQUFFLFFBQVE7S0FDakIsQ0FBQztBQUNKLENBQUM7QUFPRCxNQUFNLFVBQVUsQ0FBQyxDQU1mLEtBQXFEO0lBRXJELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGFyYW1EYXRhIH0gZnJvbSAncGF0aC10by1yZWdleHAnO1xuXG5pbXBvcnQge1xuICB0eXBlIFByZXBhcmVSZXN1bHQsXG4gIHR5cGUgUHJlcGFyZWRNYXRjaCxcbiAgdHlwZSBQcmVwYXJlZE1hdGNoUm91dGUsXG4gIHR5cGUgUHJlcGFyZWRSb3V0ZVNlZ21lbnQsXG4gIHR5cGUgUmVzb2x2ZWRQcmVwYXJlZE1hdGNoLFxuICB0eXBlIFJlc29sdmVkUHJlcGFyZWRSb3V0ZVNlZ21lbnQsXG4gIHR5cGUgUm91dGUsXG4gIHR5cGUgUm91dGVyTWF0Y2hlZFJvdXRlLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuaW1wb3J0IHR5cGUge1xuICBSb3V0ZXJQcmVwYXJlRXZlbnQsXG4gIFJvdXRlck5hdmlnYXRpb25Tb3VyY2UsXG4gIFJvdXRlckxvY2F0aW9uU25hcHNob3QsXG59IGZyb20gJy4vaW5zdHJ1bWVudGF0aW9uL0luc3RydW1lbnRhdGlvbi5qcyc7XG5cbmltcG9ydCB0eXBlIHsgRmxhdFJvdXRlIH0gZnJvbSAnLi9idWlsZGVyLmpzJztcbmltcG9ydCB7IGNyZWF0ZVByZXBhcmVkVmFsdWVSZXNvdXJjZSB9IGZyb20gJy4vcHJlcGFyZVJlc291cmNlLmpzJztcblxudHlwZSBQcmVwYXJlSW5zdHJ1bWVudGF0aW9uID0ge1xuICBlbWl0OiAoZXZlbnQ6IFJvdXRlclByZXBhcmVFdmVudCkgPT4gdm9pZDtcbiAgc291cmNlOiBSb3V0ZXJOYXZpZ2F0aW9uU291cmNlO1xuICBsb2NhdGlvbjogUm91dGVyTG9jYXRpb25TbmFwc2hvdDtcbn07XG5cbi8qKlxuICogRmluZHMgdGhlIGZpcnN0IGZsYXQgcm91dGUgbWF0Y2hpbmcgdGhlIHByb3ZpZGVkIGxvY2F0aW9uLlxuICpcbiAqIEBwYXJhbSByb3V0ZXMgLSBGbGF0dGVuZWQgcm91dGUgbGlzdCB0byBldmFsdWF0ZS5cbiAqIEBwYXJhbSBsb2NhdGlvbiAtIEJyb3dzZXIgbG9jYXRpb24gd2hvc2UgcGF0aG5hbWUgc2hvdWxkIGJlIG1hdGNoZWQuXG4gKiBAcmV0dXJucyBNYXRjaGVkIHJvdXRlIHdpdGggcGFyYW1zIG9yIGBudWxsYCBpZiBub25lIG1hdGNoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWF0Y2hlZFJvdXRlPFRQYXJhbXMgZXh0ZW5kcyBQYXJhbURhdGEsIFRDb250ZXh0ID0gdW5rbm93bj4oXG4gIHJvdXRlczogRmxhdFJvdXRlPFRQYXJhbXMsIFRDb250ZXh0PltdLFxuICBsb2NhdGlvbjogTG9jYXRpb24sXG4pOiBSb3V0ZXJNYXRjaGVkUm91dGU8VFBhcmFtcywgVENvbnRleHQ+IHwgbnVsbCB7XG4gIGZvciAoY29uc3Qgcm91dGUgb2Ygcm91dGVzKSB7XG4gICAgY29uc3QgbWF0Y2ggPSByb3V0ZS5tYXRjaEZ1bmN0aW9uKGxvY2F0aW9uLnBhdGhuYW1lKTtcbiAgICBpZiAobWF0Y2ggIT09IGZhbHNlKSB7XG4gICAgICBjb25zdCB7IHBhdGgsIHBhcmFtcyB9ID0gbWF0Y2g7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtYXRjaCxcbiAgICAgICAgcm91dGUsXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHBhcmFtcyxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8qKlxuICogRGVyaXZlcyBhIGRldGVybWluaXN0aWMgaWRlbnRpZmllciB0aGF0IGxpbmtzIHByZXBhcmVkIHJvdXRlcyB0byBET00gbWFya2Vycy5cbiAqL1xuZnVuY3Rpb24gYnVpbGRIaWdobGlnaHRJZChcbiAgcm91dGVQYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gIGluZGV4OiBudW1iZXIsXG4gIG1vZHVsZUlkPzogc3RyaW5nLFxuKTogc3RyaW5nIHtcbiAgY29uc3QgcGFydHM6IHN0cmluZ1tdID0gW107XG4gIGlmICh0eXBlb2YgbW9kdWxlSWQgPT09ICdzdHJpbmcnICYmIG1vZHVsZUlkLnRyaW0oKSAhPT0gJycpIHtcbiAgICBwYXJ0cy5wdXNoKGBtb2R1bGU6JHttb2R1bGVJZH1gKTtcbiAgfVxuICBpZiAodHlwZW9mIHJvdXRlUGF0aCA9PT0gJ3N0cmluZycgJiYgcm91dGVQYXRoLnRyaW0oKSAhPT0gJycpIHtcbiAgICBwYXJ0cy5wdXNoKGBwYXRoOiR7cm91dGVQYXRofWApO1xuICB9XG4gIGlmIChwYXJ0cy5sZW5ndGggPT09IDApIHtcbiAgICBwYXJ0cy5wdXNoKCdyb3V0ZScpO1xuICB9XG4gIHBhcnRzLnB1c2goYGluZGV4OiR7aW5kZXh9YCk7XG4gIHJldHVybiBwYXJ0cy5qb2luKCd8Jyk7XG59XG5cbi8qKlxuICogUHJlcGFyZXMgYSBtYXRjaGVkIHJvdXRlIGJ5IGV4ZWN1dGluZyBgcHJlcGFyZWAgY2FsbGJhY2tzIGFuZCByZXNvbHZpbmcgcmVzb3VyY2UgcGFnZXMuXG4gKlxuICogQHBhcmFtIG1hdGNoIC0gTWF0Y2hlZCByb3V0ZSBkZXNjcmlwdG9yIChvciBgbnVsbGAgd2hlbiBub3RoaW5nIG1hdGNoZWQpLlxuICogQHBhcmFtIHF1ZXJ5IC0gT3B0aW9uYWwgcXVlcnkgb2JqZWN0IGZvcndhcmRlZCB0byBwcmVwYXJlIGZ1bmN0aW9ucy5cbiAqIEBwYXJhbSBjb250ZXh0IC0gT3B0aW9uYWwgcm91dGVyIGNvbnRleHQgZm9yd2FyZGVkIHRvIHByZXBhcmUgZnVuY3Rpb25zLlxuICogQHJldHVybnMgUHJlcGFyZWQgaGllcmFyY2h5IHJlYWR5IGZvciB0aGUgcmVuZGVyZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlTWF0Y2g8VFBhcmFtcyBleHRlbmRzIFBhcmFtRGF0YSwgVENvbnRleHQgPSB1bmtub3duPihcbiAgbWF0Y2g6IFJvdXRlck1hdGNoZWRSb3V0ZTxUUGFyYW1zLCBUQ29udGV4dD4gfCBudWxsLFxuICBxdWVyeT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBpbnN0cnVtZW50YXRpb24/OiBQcmVwYXJlSW5zdHJ1bWVudGF0aW9uLFxuICBjb250ZXh0PzogVENvbnRleHQsXG4pOiBQcmVwYXJlZE1hdGNoPFRQYXJhbXMsIFRDb250ZXh0PiB7XG4gIC8vIE5PVEU6IFJ1bnRpbWUgcmV0YWlucyBhIGdlbmVyaWMgUHJlcGFyZWRSZXN1bHQ7IHR5cGUtbGV2ZWwgbmFycm93aW5nIGlzIGFjaGlldmVkIGV4dGVybmFsbHlcbiAgLy8gdGhyb3VnaCB0aGUgcm91dGUgdW5pb24gYW5kIFByZXBhcmVkQWNjZXNzIGhlbHBlcnMuIFdlIGludGVudGlvbmFsbHkgYXZvaWQgaW5qZWN0aW5nXG4gIC8vIGdlbmVyaWMgcGFyYW1ldGVycyBoZXJlIHRvIGtlZXAgcnVudGltZSBsaWdodHdlaWdodCB3aGlsZSBzdGlsbCBlbmFibGluZyBjb21waWxlLXRpbWVcbiAgLy8gZGlzY3JpbWluYXRpb24gaW4gdXNlcmxhbmQgdmlhIGNyZWF0ZVJvdXRlciBnZW5lcmljcy5cbiAgaWYgKG1hdGNoID09IG51bGwpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbWF0Y2gsXG4gICAgICBzZWdtZW50czogW10sXG4gICAgICByb3V0ZXM6IFtdLFxuICAgIH07XG4gIH1cblxuICBjb25zdCBtYXRjaGVkUm91dGUgPSBtYXRjaC5yb3V0ZTtcblxuICBjb25zdCBzZWdtZW50czogUHJlcGFyZWRSb3V0ZVNlZ21lbnQ8VENvbnRleHQ+W10gPSBtYXRjaC5yb3V0ZS5yb3V0ZXMubWFwKFxuICAgIChyb3V0ZSwgcm91dGVJbmRleCkgPT4ge1xuICAgICAgY29uc3QgeyBwYXRoLCBwcmVwYXJlLCBxdWVyeVNjaGVtYSwgcmVzb3VyY2VQYWdlLCByZW5kZXIgfSA9IHJvdXRlO1xuICAgICAgbGV0IG1vZHVsZUlkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgICBpZiAoXG4gICAgICAgIHJlc291cmNlUGFnZSAhPSBudWxsICYmXG4gICAgICAgIHR5cGVvZiByZXNvdXJjZVBhZ2UuZ2V0TW9kdWxlSWQgPT09ICdmdW5jdGlvbidcbiAgICAgICkge1xuICAgICAgICBjb25zdCByZXNvbHZlZE1vZHVsZUlkID0gcmVzb3VyY2VQYWdlLmdldE1vZHVsZUlkKCk7XG4gICAgICAgIGlmICh0eXBlb2YgcmVzb2x2ZWRNb2R1bGVJZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICBtb2R1bGVJZCA9IHJlc29sdmVkTW9kdWxlSWQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGV0IHByZXBhcmVTdGFydGVkQXQgPSAwO1xuICAgICAgaWYgKGluc3RydW1lbnRhdGlvbiAhPSBudWxsKSB7XG4gICAgICAgIHByZXBhcmVTdGFydGVkQXQgPSBEYXRlLm5vdygpO1xuICAgICAgICBpbnN0cnVtZW50YXRpb24uZW1pdCh7XG4gICAgICAgICAga2luZDogJ3ByZXBhcmUtc3RhcnQnLFxuICAgICAgICAgIHNvdXJjZTogaW5zdHJ1bWVudGF0aW9uLnNvdXJjZSxcbiAgICAgICAgICB0aW1lc3RhbXA6IHByZXBhcmVTdGFydGVkQXQsXG4gICAgICAgICAgbG9jYXRpb246IGluc3RydW1lbnRhdGlvbi5sb2NhdGlvbixcbiAgICAgICAgICByb3V0ZVBhdGg6IHBhdGgsXG4gICAgICAgICAgbW9kdWxlSWQsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBsZXQgcHJlcGFyZWRSZXNvdXJjZTogUHJlcGFyZWRNYXRjaFJvdXRlWydwcmVwYXJlZFJlc291cmNlJ107XG4gICAgICBpZiAocHJlcGFyZSAhPSBudWxsKSB7XG4gICAgICAgIHByZXBhcmVkUmVzb3VyY2UgPSBjcmVhdGVQcmVwYXJlZFZhbHVlUmVzb3VyY2UoKCkgPT4ge1xuICAgICAgICAgIHJldHVybiBwcmVwYXJlKHtcbiAgICAgICAgICAgIG1hdGNoLFxuICAgICAgICAgICAgbWF0Y2hlZFJvdXRlLFxuICAgICAgICAgICAgY29udGV4dDogY29udGV4dCBhcyBUQ29udGV4dCxcbiAgICAgICAgICAgIHJlc291cmNlUGFnZSxcbiAgICAgICAgICAgIC8vIEZpeCBPYmplY3QuY3JlYXRlKG51bGwpIGlzc3VlIGluIHBhdGgtdG8tcmVnZXhwXG4gICAgICAgICAgICB2YXJpYWJsZXM6IHsgLi4ubWF0Y2gucGFyYW1zIH0sXG4gICAgICAgICAgICBxdWVyeTogcXVlcnkgPz8ge30sXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBFYWdlcmx5IGV2YWx1YXRlIHByZXBhcmUgc28gdGhlIHByZXBhcmVkIHJlc291cmNlIGltbWVkaWF0ZWx5IHJlZmxlY3RzXG4gICAgICAgIC8vIHN5bmMgcmVzb2x1dGlvbiBvciBhc3luYyBwZW5kaW5nIHN0YXRlIGZvciB0aGUgY3VycmVudCByb3V0ZSBzbmFwc2hvdC5cbiAgICAgICAgY29uc3QgcHJlcGFyZWRMb2FkID0gcHJlcGFyZWRSZXNvdXJjZS5sb2FkKCk7XG5cbiAgICAgICAgaWYgKGluc3RydW1lbnRhdGlvbiAhPSBudWxsKSB7XG4gICAgICAgICAgcHJlcGFyZWRMb2FkXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGZpbmlzaGVkQXQgPSBEYXRlLm5vdygpO1xuICAgICAgICAgICAgICBpbnN0cnVtZW50YXRpb24uZW1pdCh7XG4gICAgICAgICAgICAgICAga2luZDogJ3ByZXBhcmUtY29tcGxldGUnLFxuICAgICAgICAgICAgICAgIHNvdXJjZTogaW5zdHJ1bWVudGF0aW9uLnNvdXJjZSxcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IGZpbmlzaGVkQXQsXG4gICAgICAgICAgICAgICAgbG9jYXRpb246IGluc3RydW1lbnRhdGlvbi5sb2NhdGlvbixcbiAgICAgICAgICAgICAgICByb3V0ZVBhdGg6IHBhdGgsXG4gICAgICAgICAgICAgICAgbW9kdWxlSWQsXG4gICAgICAgICAgICAgICAgZHVyYXRpb25NczogZmluaXNoZWRBdCAtIHByZXBhcmVTdGFydGVkQXQsXG4gICAgICAgICAgICAgICAgaGFzUHJlcGFyZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgc3RhdHVzOiAncmVzb2x2ZWQnLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBmaW5pc2hlZEF0ID0gRGF0ZS5ub3coKTtcbiAgICAgICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLmVtaXQoe1xuICAgICAgICAgICAgICAgIGtpbmQ6ICdwcmVwYXJlLWNvbXBsZXRlJyxcbiAgICAgICAgICAgICAgICBzb3VyY2U6IGluc3RydW1lbnRhdGlvbi5zb3VyY2UsXG4gICAgICAgICAgICAgICAgdGltZXN0YW1wOiBmaW5pc2hlZEF0LFxuICAgICAgICAgICAgICAgIGxvY2F0aW9uOiBpbnN0cnVtZW50YXRpb24ubG9jYXRpb24sXG4gICAgICAgICAgICAgICAgcm91dGVQYXRoOiBwYXRoLFxuICAgICAgICAgICAgICAgIG1vZHVsZUlkLFxuICAgICAgICAgICAgICAgIGR1cmF0aW9uTXM6IGZpbmlzaGVkQXQgLSBwcmVwYXJlU3RhcnRlZEF0LFxuICAgICAgICAgICAgICAgIGhhc1ByZXBhcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHN0YXR1czogJ3JlamVjdGVkJyxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwcmVwYXJlZExvYWQuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgLy8gSW50ZW50aW9uYWxseSBpZ25vcmVkOiByb3V0ZSByZW5kZXJpbmcvZXJyb3IgYm91bmRhcmllcyBvd24gdGhlIGZhaWx1cmUuXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGluc3RydW1lbnRhdGlvbiAhPSBudWxsICYmIHByZXBhcmUgPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBmaW5pc2hlZEF0ID0gRGF0ZS5ub3coKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLmVtaXQoe1xuICAgICAgICAgIGtpbmQ6ICdwcmVwYXJlLWNvbXBsZXRlJyxcbiAgICAgICAgICBzb3VyY2U6IGluc3RydW1lbnRhdGlvbi5zb3VyY2UsXG4gICAgICAgICAgdGltZXN0YW1wOiBmaW5pc2hlZEF0LFxuICAgICAgICAgIGxvY2F0aW9uOiBpbnN0cnVtZW50YXRpb24ubG9jYXRpb24sXG4gICAgICAgICAgcm91dGVQYXRoOiBwYXRoLFxuICAgICAgICAgIG1vZHVsZUlkLFxuICAgICAgICAgIGR1cmF0aW9uTXM6IGZpbmlzaGVkQXQgLSBwcmVwYXJlU3RhcnRlZEF0LFxuICAgICAgICAgIGhhc1ByZXBhcmVkOiBmYWxzZSxcbiAgICAgICAgICBzdGF0dXM6ICdyZXNvbHZlZCcsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVzb3VyY2VQYWdlICE9IG51bGwgJiYgcmVzb3VyY2VQYWdlLmdldCgpID09IG51bGwpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBQcm9taXNlLnJlc29sdmUocmVzb3VyY2VQYWdlLmxvYWQoKSkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgLy8gSW50ZW50aW9uYWxseSBpZ25vcmVkOiByb3V0ZSByZW5kZXJpbmcvZXJyb3IgYm91bmRhcmllcyBvd24gdGhlIGZhaWx1cmUuXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIC8vIEludGVudGlvbmFsbHkgaWdub3JlZDogcm91dGUgcmVuZGVyaW5nL2Vycm9yIGJvdW5kYXJpZXMgb3duIHRoZSBmYWlsdXJlLlxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYXRoLFxuICAgICAgICBmdWxsUGF0aDogcGF0aCxcbiAgICAgICAgc2VnbWVudEluZGV4OiByb3V0ZUluZGV4LFxuICAgICAgICBwcmVwYXJlZFJlc291cmNlLFxuICAgICAgICByZWRpcmVjdFRvOiBtYXRjaGVkUm91dGUucmVkaXJlY3RUbyA/PyBudWxsLFxuICAgICAgICByZW5kZXIsXG4gICAgICAgIHJlc291cmNlUGFnZSxcbiAgICAgICAgaGlnaGxpZ2h0SWQ6IGJ1aWxkSGlnaGxpZ2h0SWQocGF0aCwgcm91dGVJbmRleCwgbW9kdWxlSWQpLFxuICAgICAgICBxdWVyeVNjaGVtYSxcbiAgICAgIH07XG4gICAgfSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIG1hdGNoLFxuICAgIHNlZ21lbnRzLFxuICAgIHJvdXRlczogc2VnbWVudHMsXG4gIH07XG59XG5cbi8qKlxuICogUmVzb2x2ZXMgZXZlcnkgYXN5bmMgcHJlcGFyZSByZXNvdXJjZSBmb3IgYSBtYXRjaGVkIHJvdXRlIGhpZXJhcmNoeS5cbiAqXG4gKiBAcGFyYW0gbWF0Y2ggLSBNYXRjaGVkIHJvdXRlIGRlc2NyaXB0b3IgKG9yIGBudWxsYCB3aGVuIG5vdGhpbmcgbWF0Y2hlZCkuXG4gKiBAcGFyYW0gcXVlcnkgLSBPcHRpb25hbCBxdWVyeSBvYmplY3QgZm9yd2FyZGVkIHRvIHByZXBhcmUgZnVuY3Rpb25zLlxuICogQHBhcmFtIGluc3RydW1lbnRhdGlvbiAtIE9wdGlvbmFsIGluc3RydW1lbnRhdGlvbiBzaW5rIGZvciBwcmVwYXJlIGxpZmVjeWNsZSBldmVudHMuXG4gKiBAcGFyYW0gY29udGV4dCAtIE9wdGlvbmFsIHJvdXRlciBjb250ZXh0IGZvcndhcmRlZCB0byBwcmVwYXJlIGZ1bmN0aW9ucy5cbiAqIEByZXR1cm5zIFByZXBhcmVkIGhpZXJhcmNoeSB3aXRoIGNvbmNyZXRlIHByZXBhcmVkIHZhbHVlcyBpbnN0ZWFkIG9mIHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZXBhcmVNYXRjaEFzeW5jPFxuICBUUGFyYW1zIGV4dGVuZHMgUGFyYW1EYXRhLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+KFxuICBtYXRjaDogUm91dGVyTWF0Y2hlZFJvdXRlPFRQYXJhbXMsIFRDb250ZXh0PiB8IG51bGwsXG4gIHF1ZXJ5PzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIGluc3RydW1lbnRhdGlvbj86IFByZXBhcmVJbnN0cnVtZW50YXRpb24sXG4gIGNvbnRleHQ/OiBUQ29udGV4dCxcbik6IFByb21pc2U8UmVzb2x2ZWRQcmVwYXJlZE1hdGNoPFRQYXJhbXMsIFRDb250ZXh0Pj4ge1xuICBjb25zdCBwcmVwYXJlZE1hdGNoID0gcHJlcGFyZU1hdGNoKG1hdGNoLCBxdWVyeSwgaW5zdHJ1bWVudGF0aW9uLCBjb250ZXh0KTtcbiAgY29uc3Qgc2VnbWVudHMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBwcmVwYXJlZE1hdGNoLnNlZ21lbnRzLm1hcChcbiAgICAgIGFzeW5jIChyb3V0ZSk6IFByb21pc2U8UmVzb2x2ZWRQcmVwYXJlZFJvdXRlU2VnbWVudDxUQ29udGV4dD4+ID0+IHtcbiAgICAgICAgbGV0IHByZXBhcmVkOiB1bmtub3duO1xuICAgICAgICBpZiAocm91dGUucHJlcGFyZWRSZXNvdXJjZSAhPSBudWxsKSB7XG4gICAgICAgICAgcHJlcGFyZWQgPSBhd2FpdCByb3V0ZS5wcmVwYXJlZFJlc291cmNlLmxvYWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHBhdGg6IHJvdXRlLnBhdGgsXG4gICAgICAgICAgZnVsbFBhdGg6IHJvdXRlLmZ1bGxQYXRoLFxuICAgICAgICAgIHNlZ21lbnRJbmRleDogcm91dGUuc2VnbWVudEluZGV4LFxuICAgICAgICAgIHByZXBhcmVkLFxuICAgICAgICAgIHJlZGlyZWN0VG86IHJvdXRlLnJlZGlyZWN0VG8sXG4gICAgICAgICAgcmVuZGVyOiByb3V0ZS5yZW5kZXIsXG4gICAgICAgICAgcmVzb3VyY2VQYWdlOiByb3V0ZS5yZXNvdXJjZVBhZ2UsXG4gICAgICAgICAgaGlnaGxpZ2h0SWQ6IHJvdXRlLmhpZ2hsaWdodElkLFxuICAgICAgICAgIHF1ZXJ5U2NoZW1hOiByb3V0ZS5xdWVyeVNjaGVtYSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgKSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIG1hdGNoOiBwcmVwYXJlZE1hdGNoLm1hdGNoLFxuICAgIHNlZ21lbnRzLFxuICAgIHJvdXRlczogc2VnbWVudHMsXG4gIH07XG59XG5cbi8qKlxuICogUm91dGUgaGVscGVyIHRoYXQgcHJlc2VydmVzIFR5cGVTY3JpcHQgaW5mZXJlbmNlIChpbmNsdWRpbmcgY29uZGl0aW9uYWwgcXVlcnktc2NoZW1hIGluZmVyZW5jZSkuXG4gKlxuICogQHBhcmFtIHJvdXRlIC0gUm91dGUgZGVmaW5pdGlvbiB0byByZXR1cm4gdW5jaGFuZ2VkIHdpdGggaW5mZXJyZWQgZ2VuZXJpY3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByPFxuICBUQ29udGV4dCA9IHVua25vd24sXG4gIFRQcmVwYXJlZCBleHRlbmRzIFByZXBhcmVSZXN1bHQgPSBQcmVwYXJlUmVzdWx0LFxuICBUVmFyaWFibGVzIGV4dGVuZHMgUGFyYW1EYXRhID0gUGFyYW1EYXRhLFxuICBUUXVlcnkgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPihcbiAgcm91dGU6IFJvdXRlPFRDb250ZXh0LCBUUHJlcGFyZWQsIFRWYXJpYWJsZXMsIFRRdWVyeT4sXG4pOiBSb3V0ZTxUQ29udGV4dCwgVFByZXBhcmVkLCBUVmFyaWFibGVzLCBUUXVlcnk+IHtcbiAgcmV0dXJuIHJvdXRlO1xufVxuIl19
|
package/lib/esm/types.d.ts
CHANGED
|
@@ -4,88 +4,140 @@ import type { Match, MatchFunction, ParamData } from 'path-to-regexp';
|
|
|
4
4
|
import type { FlatRoute } from './builder.js';
|
|
5
5
|
import type { ResourcePage } from './ResourcePage.js';
|
|
6
6
|
import type { BrowserHistory } from './history/index.js';
|
|
7
|
-
export type
|
|
7
|
+
export type MaybePromise<T> = T | Promise<T>;
|
|
8
|
+
export type RawQueryValue = string | string[];
|
|
9
|
+
export type RawQuery = Record<string, RawQueryValue>;
|
|
10
|
+
export type UnknownQueryShape = Record<string, unknown>;
|
|
11
|
+
export type UnknownFilters = Record<string, unknown>;
|
|
12
|
+
export type AsyncResourceStatus = 'idle' | 'pending' | 'resolved' | 'rejected';
|
|
13
|
+
export type ReadableResource<T> = {
|
|
14
|
+
get: () => T | undefined;
|
|
15
|
+
getError: () => unknown;
|
|
16
|
+
getStatus: () => AsyncResourceStatus;
|
|
17
|
+
load: () => Promise<T>;
|
|
18
|
+
read: () => T;
|
|
19
|
+
};
|
|
20
|
+
export type FlatRouteInput<TVariables extends ParamData, TContext = unknown> = {
|
|
8
21
|
path: string;
|
|
9
22
|
redirectTo?: string;
|
|
10
23
|
matchFunction: MatchFunction<TVariables>;
|
|
11
|
-
routes:
|
|
24
|
+
routes: UnknownRoute<TContext>[];
|
|
12
25
|
};
|
|
13
|
-
export type RouterMatchedRoute<TVariables extends ParamData> = {
|
|
26
|
+
export type RouterMatchedRoute<TVariables extends ParamData, TContext = unknown> = {
|
|
14
27
|
match: Match<TVariables>;
|
|
15
28
|
params: TVariables;
|
|
16
29
|
path: string;
|
|
17
|
-
route: FlatRoute<TVariables>;
|
|
30
|
+
route: FlatRoute<TVariables, TContext>;
|
|
18
31
|
};
|
|
19
32
|
export type RouteReactComponent<TProps = Record<string, unknown>> = (props: TProps) => JSX.Element | null;
|
|
20
|
-
export type RouteRenderOpts<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends
|
|
33
|
+
export type RouteRenderOpts<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = {
|
|
21
34
|
children: ReactNode;
|
|
22
35
|
Component?: RouteReactComponent;
|
|
23
36
|
prepared: TPrepared | undefined;
|
|
24
|
-
|
|
25
|
-
|
|
37
|
+
preparedSegment: PreparedRouteSegment<TContext, TPrepared, TVariables, TQueryShape>;
|
|
38
|
+
preparedRoute: PreparedRouteSegment<TContext, TPrepared, TVariables, TQueryShape>;
|
|
39
|
+
preparedSegments: PreparedRouteSegments<TContext>;
|
|
40
|
+
segmentIndex: number;
|
|
41
|
+
leafSegment: PreparedRouteSegment<TContext>;
|
|
42
|
+
route: FlatRoute<TVariables, TContext> | null;
|
|
26
43
|
context: TContext;
|
|
27
|
-
rawQuery:
|
|
44
|
+
rawQuery: RawQuery;
|
|
28
45
|
query: TQueryShape;
|
|
29
46
|
};
|
|
30
|
-
export type RouteRender<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends
|
|
31
|
-
export type RouteRenderArgs<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends
|
|
32
|
-
export type
|
|
47
|
+
export type RouteRender<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = (opts: RouteRenderOpts<TContext, TPrepared, TVariables, TQueryShape>) => ReactElement | null | undefined | Promise<ReactElement | null | undefined>;
|
|
48
|
+
export type RouteRenderArgs<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = RouteRenderOpts<TContext, TPrepared, TVariables, TQueryShape>;
|
|
49
|
+
export type PreparedRouteSegment<TContext = unknown, TPrepared extends PrepareResult = PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = {
|
|
33
50
|
path?: string;
|
|
34
|
-
|
|
35
|
-
|
|
51
|
+
fullPath?: string;
|
|
52
|
+
segmentIndex: number;
|
|
53
|
+
preparedResource?: PreparedValueResource<TPrepared>;
|
|
54
|
+
render?: RouteRender<TContext, TPrepared, TVariables, TQueryShape>;
|
|
55
|
+
redirectTo: string | null;
|
|
56
|
+
resourcePage?: ResourcePage | null;
|
|
57
|
+
highlightId?: string;
|
|
58
|
+
querySchema?: FilterSchema;
|
|
59
|
+
};
|
|
60
|
+
export type PreparedMatchRoute = PreparedRouteSegment;
|
|
61
|
+
export type PreparedRouteSegments<TContext = unknown> = PreparedRouteSegment<TContext>[];
|
|
62
|
+
export type PreparedRouteSegmentSnapshot = {
|
|
63
|
+
path?: string;
|
|
64
|
+
fullPath?: string;
|
|
65
|
+
segmentIndex: number;
|
|
66
|
+
preparedResource?: PreparedValueResource;
|
|
67
|
+
redirectTo: string | null;
|
|
68
|
+
resourcePage?: ResourcePage | null;
|
|
69
|
+
highlightId?: string;
|
|
70
|
+
querySchema?: FilterSchema;
|
|
71
|
+
};
|
|
72
|
+
export type PreparedRouteChain<TVariables extends ParamData, TContext = unknown> = {
|
|
73
|
+
match: RouterMatchedRoute<TVariables, TContext> | null;
|
|
74
|
+
segments: PreparedRouteSegments<TContext>;
|
|
75
|
+
routes: PreparedRouteSegments<TContext>;
|
|
76
|
+
};
|
|
77
|
+
export type PreparedMatch<TVariables extends ParamData, TContext = unknown> = PreparedRouteChain<TVariables, TContext>;
|
|
78
|
+
export type ResolvedPreparedRouteSegment<TContext = unknown, TPrepared extends PrepareResult = PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = {
|
|
79
|
+
path?: string;
|
|
80
|
+
fullPath?: string;
|
|
81
|
+
segmentIndex: number;
|
|
82
|
+
prepared: TPrepared | undefined;
|
|
83
|
+
render?: RouteRender<TContext, TPrepared, TVariables, TQueryShape>;
|
|
36
84
|
redirectTo: string | null;
|
|
37
85
|
resourcePage?: ResourcePage | null;
|
|
38
86
|
highlightId?: string;
|
|
87
|
+
querySchema?: FilterSchema;
|
|
39
88
|
};
|
|
40
|
-
export type
|
|
41
|
-
|
|
42
|
-
|
|
89
|
+
export type ResolvedPreparedMatchRoute = ResolvedPreparedRouteSegment;
|
|
90
|
+
export type ResolvedPreparedRouteChain<TVariables extends ParamData, TContext = unknown> = {
|
|
91
|
+
match: RouterMatchedRoute<TVariables, TContext> | null;
|
|
92
|
+
segments: ResolvedPreparedRouteSegment<TContext>[];
|
|
93
|
+
routes: ResolvedPreparedRouteSegment<TContext>[];
|
|
43
94
|
};
|
|
95
|
+
export type ResolvedPreparedMatch<TVariables extends ParamData, TContext = unknown> = ResolvedPreparedRouteChain<TVariables, TContext>;
|
|
44
96
|
export type RouteEntry<TVariables extends ParamData, S extends FilterSchema | undefined = FilterSchema | undefined, TContext = unknown> = {
|
|
45
|
-
preparedMatch:
|
|
97
|
+
preparedMatch: PreparedRouteChain<TVariables, TContext>;
|
|
46
98
|
context: TContext;
|
|
47
99
|
location: Location;
|
|
48
|
-
route: RouterMatchedRoute<TVariables> | null;
|
|
100
|
+
route: RouterMatchedRoute<TVariables, TContext> | null;
|
|
49
101
|
forceRerender: boolean;
|
|
50
102
|
rawSearch?: string;
|
|
51
|
-
query:
|
|
52
|
-
filters?: S extends FilterSchema ? InferFilterResult<S> :
|
|
103
|
+
query: RawQuery;
|
|
104
|
+
filters?: S extends FilterSchema ? InferFilterResult<S> : UnknownFilters;
|
|
53
105
|
filterDiagnostics?: FilterDiagnostic[];
|
|
54
106
|
activeQuerySchema?: S;
|
|
55
107
|
};
|
|
56
108
|
export type RouterRedirectStatus = 301 | 302;
|
|
57
|
-
export type MatchedRoute<TVariables extends ParamData> = {
|
|
109
|
+
export type MatchedRoute<TVariables extends ParamData, TContext = unknown> = {
|
|
58
110
|
match: RegExpExecArray;
|
|
59
|
-
route: FlatRoute<TVariables>;
|
|
111
|
+
route: FlatRoute<TVariables, TContext>;
|
|
60
112
|
};
|
|
61
113
|
export type Redirect = {
|
|
62
114
|
path?: string;
|
|
63
115
|
to: string;
|
|
64
116
|
status?: RouterRedirectStatus;
|
|
65
117
|
};
|
|
66
|
-
export type PrepareResult =
|
|
67
|
-
export type PrepareParams<TContext, TVariables extends ParamData, TQueryShape extends
|
|
68
|
-
match: RouterMatchedRoute<TVariables>;
|
|
69
|
-
matchedRoute: FlatRoute<TVariables>;
|
|
118
|
+
export type PrepareResult = unknown;
|
|
119
|
+
export type PrepareParams<TContext, TVariables extends ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = {
|
|
120
|
+
match: RouterMatchedRoute<TVariables, TContext>;
|
|
121
|
+
matchedRoute: FlatRoute<TVariables, TContext>;
|
|
70
122
|
context: TContext;
|
|
71
123
|
resourcePage?: ResourcePage | null;
|
|
72
124
|
variables: TVariables;
|
|
73
125
|
query: TQueryShape;
|
|
74
126
|
};
|
|
75
|
-
export type RoutePrepareArgs<TContext, TVariables extends ParamData = ParamData, TQueryShape extends
|
|
76
|
-
export type RoutePrepare<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends
|
|
77
|
-
export type Route<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends
|
|
78
|
-
children?: (
|
|
127
|
+
export type RoutePrepareArgs<TContext, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = PrepareParams<TContext, TVariables, TQueryShape>;
|
|
128
|
+
export type RoutePrepare<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = (params: PrepareParams<TContext, TVariables, TQueryShape>) => MaybePromise<TPrepared>;
|
|
129
|
+
export type Route<TContext, TPrepared extends PrepareResult, TVariables extends ParamData = ParamData, TQueryShape extends UnknownQueryShape = UnknownQueryShape, S extends FilterSchema | undefined = FilterSchema | undefined> = {
|
|
130
|
+
children?: (UnknownRoute<TContext> | Redirect)[];
|
|
79
131
|
resourcePage?: ResourcePage | null;
|
|
80
132
|
path?: string;
|
|
81
133
|
prepare?: RoutePrepare<TContext, TPrepared, TVariables, TQueryShape>;
|
|
82
134
|
render?: RouteRender<TContext, TPrepared, TVariables, TQueryShape>;
|
|
83
135
|
querySchema?: S;
|
|
84
136
|
};
|
|
85
|
-
export type RouteComponentProps<TVariables extends ParamData, S extends FilterSchema | undefined = FilterSchema | undefined, TQueryShape extends
|
|
137
|
+
export type RouteComponentProps<TVariables extends ParamData, S extends FilterSchema | undefined = FilterSchema | undefined, TQueryShape extends UnknownQueryShape = UnknownQueryShape> = {
|
|
86
138
|
children: ReactElement;
|
|
87
139
|
routerContext: RoutingContextType<TVariables, S, TQueryShape>;
|
|
88
|
-
route: Route<
|
|
140
|
+
route: Route<unknown, unknown, ParamData, UnknownQueryShape, S>;
|
|
89
141
|
};
|
|
90
142
|
export type SubscribeCallback<TVariables extends ParamData, S extends FilterSchema | undefined = FilterSchema | undefined, TContext = unknown> = (nextEntry: RouteEntry<TVariables, S, TContext>) => void;
|
|
91
143
|
export type PreloadTarget = {
|
|
@@ -93,7 +145,7 @@ export type PreloadTarget = {
|
|
|
93
145
|
search?: string;
|
|
94
146
|
source?: string;
|
|
95
147
|
};
|
|
96
|
-
export type RoutingContextType<TVariables extends ParamData, S extends FilterSchema | undefined = FilterSchema | undefined, TQueryShape extends
|
|
148
|
+
export type RoutingContextType<TVariables extends ParamData, S extends FilterSchema | undefined = FilterSchema | undefined, TQueryShape extends UnknownQueryShape = UnknownQueryShape, TContext = unknown> = {
|
|
97
149
|
history: BrowserHistory;
|
|
98
150
|
get: () => RouteEntry<TVariables, S, TContext>;
|
|
99
151
|
preloadCode: (target: PreloadTarget) => void;
|
|
@@ -102,14 +154,15 @@ export type RoutingContextType<TVariables extends ParamData, S extends FilterSch
|
|
|
102
154
|
navigate: (opts: {
|
|
103
155
|
pathname?: string;
|
|
104
156
|
query?: TQueryShape;
|
|
105
|
-
filters?: S extends FilterSchema ? InferFilterResult<S> :
|
|
157
|
+
filters?: S extends FilterSchema ? InferFilterResult<S> : UnknownFilters;
|
|
106
158
|
replace?: boolean;
|
|
107
159
|
}) => void;
|
|
108
160
|
};
|
|
109
161
|
export type ResourcePageReturn = {
|
|
110
|
-
default: ComponentType<
|
|
111
|
-
} | ComponentType<
|
|
162
|
+
default: ComponentType<unknown>;
|
|
163
|
+
} | ComponentType<unknown>;
|
|
112
164
|
export type ResourcePageLoader = () => Promise<ResourcePageReturn>;
|
|
165
|
+
export type PreparedValueResource<TPrepared extends PrepareResult = PrepareResult> = ReadableResource<TPrepared>;
|
|
113
166
|
export type InferFilters<S extends FilterSchema | undefined> = S extends FilterSchema ? InferFilterResult<S> : Record<string, never>;
|
|
114
167
|
export type { FilterSchema };
|
|
115
168
|
export type { InferFilterField as InferField };
|
|
@@ -127,21 +180,44 @@ export type TypedFilterActions<S extends FilterSchema> = {
|
|
|
127
180
|
replace?: boolean;
|
|
128
181
|
}) => void;
|
|
129
182
|
};
|
|
130
|
-
export type
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
183
|
+
export type RouteTreeNode = {
|
|
184
|
+
path?: string;
|
|
185
|
+
children?: readonly unknown[];
|
|
186
|
+
querySchema?: FilterSchema | undefined;
|
|
187
|
+
};
|
|
188
|
+
export type UnknownRoute<TContext = unknown> = Route<TContext, unknown>;
|
|
189
|
+
export type AnyRoute<TContext = unknown> = UnknownRoute<TContext>;
|
|
190
|
+
export type ChildRouteOf<R> = R extends {
|
|
191
|
+
children?: readonly (infer C)[];
|
|
192
|
+
} ? Extract<C, RouteTreeNode> : never;
|
|
193
|
+
export type RouteTreeRouteUnion<R> = R extends RouteTreeNode ? R | RouteTreeRouteUnion<ChildRouteOf<R>> : never;
|
|
194
|
+
export type RouteUnion<Routes extends readonly unknown[]> = RouteTreeRouteUnion<Routes[number]>;
|
|
195
|
+
type RouteTypeParts<R> = R extends Route<infer TContext, infer TPrepared, infer TVars, infer TQuery, infer TSchema> ? {
|
|
196
|
+
context: TContext;
|
|
197
|
+
prepared: TPrepared;
|
|
198
|
+
variables: TVars;
|
|
199
|
+
query: TQuery;
|
|
200
|
+
schema: TSchema;
|
|
201
|
+
} : never;
|
|
202
|
+
export type PreparedOf<R> = RouteTypeParts<R>['prepared'];
|
|
203
|
+
export type VariablesOf<R> = RouteTypeParts<R>['variables'];
|
|
204
|
+
export type QueryShapeOf<R> = RouteTypeParts<R>['query'];
|
|
134
205
|
export type PathOf<R> = R extends {
|
|
135
206
|
path?: infer P;
|
|
136
207
|
} ? P extends string ? P : never : never;
|
|
137
|
-
export type PathsOf<Routes extends readonly
|
|
138
|
-
export type PreparedMap<Routes extends readonly
|
|
139
|
-
[K in PathsOf<Routes>]: PreparedOf<Extract<Routes
|
|
208
|
+
export type PathsOf<Routes extends readonly unknown[]> = PathOf<RouteUnion<Routes>>;
|
|
209
|
+
export type PreparedMap<Routes extends readonly unknown[]> = {
|
|
210
|
+
[K in PathsOf<Routes>]: PreparedOf<Extract<RouteUnion<Routes>, {
|
|
140
211
|
path?: K;
|
|
141
212
|
}>> | undefined;
|
|
142
213
|
};
|
|
143
|
-
export type
|
|
144
|
-
|
|
214
|
+
export type RouteForPath<Routes extends readonly unknown[], P extends PathsOf<Routes>> = Extract<RouteUnion<Routes>, {
|
|
215
|
+
path?: P;
|
|
216
|
+
}>;
|
|
217
|
+
export type PreparedValueForPath<Routes extends readonly unknown[], P extends PathsOf<Routes>> = PreparedOf<RouteForPath<Routes, P>> | undefined;
|
|
218
|
+
export type PreparedSegmentsMap<Routes extends readonly unknown[]> = Record<PathsOf<Routes>, PreparedRouteSegment[]>;
|
|
219
|
+
export type QueryShapeMap<Routes extends readonly unknown[]> = {
|
|
220
|
+
[K in PathsOf<Routes>]: QueryShapeOf<Extract<RouteUnion<Routes>, {
|
|
145
221
|
path?: K;
|
|
146
222
|
}>>;
|
|
147
223
|
};
|
|
@@ -149,15 +225,16 @@ export type SchemaOf<R> = R extends {
|
|
|
149
225
|
querySchema?: infer S;
|
|
150
226
|
} ? S extends FilterSchema ? S : undefined : undefined;
|
|
151
227
|
export type FiltersOf<R> = SchemaOf<R> extends FilterSchema ? InferFilterResult<SchemaOf<R>> : Record<string, never>;
|
|
152
|
-
export type FiltersMap<Routes extends readonly
|
|
153
|
-
[K in PathsOf<Routes>]: FiltersOf<Extract<Routes
|
|
228
|
+
export type FiltersMap<Routes extends readonly unknown[]> = {
|
|
229
|
+
[K in PathsOf<Routes>]: FiltersOf<Extract<RouteUnion<Routes>, {
|
|
154
230
|
path?: K;
|
|
155
231
|
}>>;
|
|
156
232
|
};
|
|
157
|
-
export
|
|
158
|
-
getPrepared:
|
|
159
|
-
|
|
160
|
-
|
|
233
|
+
export type PreparedAccess<Routes extends readonly unknown[]> = Record<never, never> & {
|
|
234
|
+
getPrepared: (path: string) => PreparedOf<RouteUnion<Routes>> | undefined;
|
|
235
|
+
getPreparedSegments: (path: string) => PreparedRouteSegmentSnapshot[];
|
|
236
|
+
};
|
|
237
|
+
export type NavigateInputForPath<Routes extends readonly unknown[], P extends PathsOf<Routes>> = {
|
|
161
238
|
pathname: P;
|
|
162
239
|
query?: QueryShapeMap<Routes>[P];
|
|
163
240
|
filters?: FiltersMap<Routes>[P];
|
|
@@ -165,11 +242,11 @@ export type NavigateInputForPath<Routes extends readonly AnyRoute[], P extends P
|
|
|
165
242
|
};
|
|
166
243
|
export type NavigateInputUntyped = {
|
|
167
244
|
pathname?: string;
|
|
168
|
-
query?:
|
|
169
|
-
filters?:
|
|
245
|
+
query?: UnknownQueryShape;
|
|
246
|
+
filters?: UnknownFilters;
|
|
170
247
|
replace?: boolean;
|
|
171
248
|
};
|
|
172
|
-
export interface NavigateOverloads<Routes extends readonly
|
|
249
|
+
export interface NavigateOverloads<Routes extends readonly unknown[]> {
|
|
173
250
|
<P extends PathsOf<Routes>>(opts: NavigateInputForPath<Routes, P>): void;
|
|
174
251
|
(opts: NavigateInputUntyped): void;
|
|
175
252
|
}
|
package/lib/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|