angular-typed-router 0.1.1-3 → 0.1.1-4
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
CHANGED
|
@@ -126,7 +126,7 @@ import { TypedRouter, TypedRouterLink, Path, Commands, UserTypedRoutes, RoutePar
|
|
|
126
126
|
|
|
127
127
|
1. You augment `UserTypedRoutes` with the literal `const` route array.
|
|
128
128
|
2. Type utilities recursively walk the route tree (including lazily loaded routes via `loadChildren` returning `Route[]` or `{ routes }`).
|
|
129
|
-
3. Each navigable route (component / loadComponent / redirectTo) contributes a path string. Param segments (`:id`)
|
|
129
|
+
3. Each navigable route (component / loadComponent / redirectTo) contributes a path string. Param segments (e.g. `:id`) can be typed through declaration merging of `RouteParamTypes`.
|
|
130
130
|
4. Child paths are joined with parents to form final concrete path unions.
|
|
131
131
|
5. A tuple transformation creates the `Commands` variants.
|
|
132
132
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, Input, Directive } from '@angular/core';
|
|
2
|
+
import { Injectable, forwardRef, Input, Directive } from '@angular/core';
|
|
3
3
|
import { Router, RouterLink } from '@angular/router';
|
|
4
4
|
|
|
5
5
|
class TypedRouter extends Router {
|
|
@@ -27,12 +27,23 @@ class TypedRouterLink extends RouterLink {
|
|
|
27
27
|
super.routerLink = commandsOrUrlTree;
|
|
28
28
|
}
|
|
29
29
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: TypedRouterLink, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
30
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.4", type: TypedRouterLink, isStandalone: true, selector: "[routerLink]", inputs: { routerLink: "routerLink" },
|
|
30
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.4", type: TypedRouterLink, isStandalone: true, selector: "[routerLink]", inputs: { routerLink: "routerLink" }, providers: [
|
|
31
|
+
{
|
|
32
|
+
provide: RouterLink,
|
|
33
|
+
useExisting: forwardRef(() => TypedRouterLink),
|
|
34
|
+
}
|
|
35
|
+
], usesInheritance: true, ngImport: i0 });
|
|
31
36
|
}
|
|
32
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: TypedRouterLink, decorators: [{
|
|
33
38
|
type: Directive,
|
|
34
39
|
args: [{
|
|
35
|
-
selector: '[routerLink]'
|
|
40
|
+
selector: '[routerLink]',
|
|
41
|
+
providers: [
|
|
42
|
+
{
|
|
43
|
+
provide: RouterLink,
|
|
44
|
+
useExisting: forwardRef(() => TypedRouterLink),
|
|
45
|
+
}
|
|
46
|
+
]
|
|
36
47
|
}]
|
|
37
48
|
}], propDecorators: { routerLink: [{
|
|
38
49
|
type: Input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular-typed-router.mjs","sources":["../tmp-esm2022/lib/router.js","../tmp-esm2022/lib/router-link.js","../tmp-esm2022/angular-typed-router.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Router, } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class TypedRouter extends Router {\n navigate(commands, extras) {\n return super.navigate(commands, extras);\n }\n navigateByUrl(url, extras) {\n return super.navigateByUrl(url, extras);\n }\n createUrlTree(commands, navigationExtras) {\n return super.createUrlTree(commands, navigationExtras);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouter, deps: null, target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouter, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouter, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy90eXBlZC1yb3V0ZXIvc3JjL2xpYi9yb3V0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBR0wsTUFBTSxHQUdQLE1BQU0saUJBQWlCLENBQUM7O0FBTXpCLE1BQU0sT0FBTyxXQUFZLFNBQVEsTUFBTTtJQUM1QixRQUFRLENBQ2YsUUFBa0IsRUFDbEIsTUFBeUI7UUFFekIsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRVEsYUFBYSxDQUNwQixHQUFTLEVBQ1QsTUFBa0M7UUFFbEMsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRVEsYUFBYSxDQUNwQixRQUFrQixFQUNsQixnQkFBcUM7UUFFckMsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7dUdBcEJVLFdBQVc7MkdBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTmF2aWdhdGlvbkJlaGF2aW9yT3B0aW9ucyxcbiAgTmF2aWdhdGlvbkV4dHJhcyxcbiAgUm91dGVyLFxuICBVcmxDcmVhdGlvbk9wdGlvbnMsXG4gIFVybFRyZWUsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb21tYW5kcywgUGF0aCB9IGZyb20gJy4vdHlwZWQtcm91dGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVkUm91dGVyIGV4dGVuZHMgUm91dGVyIHtcbiAgb3ZlcnJpZGUgbmF2aWdhdGUoXG4gICAgY29tbWFuZHM6IENvbW1hbmRzLFxuICAgIGV4dHJhcz86IE5hdmlnYXRpb25FeHRyYXNcbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHN1cGVyLm5hdmlnYXRlKGNvbW1hbmRzLCBleHRyYXMpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmF2aWdhdGVCeVVybChcbiAgICB1cmw6IFBhdGgsXG4gICAgZXh0cmFzPzogTmF2aWdhdGlvbkJlaGF2aW9yT3B0aW9uc1xuICApOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gc3VwZXIubmF2aWdhdGVCeVVybCh1cmwsIGV4dHJhcyk7XG4gIH1cblxuICBvdmVycmlkZSBjcmVhdGVVcmxUcmVlKFxuICAgIGNvbW1hbmRzOiBDb21tYW5kcyxcbiAgICBuYXZpZ2F0aW9uRXh0cmFzPzogVXJsQ3JlYXRpb25PcHRpb25zXG4gICk6IFVybFRyZWUge1xuICAgIHJldHVybiBzdXBlci5jcmVhdGVVcmxUcmVlKGNvbW1hbmRzLCBuYXZpZ2F0aW9uRXh0cmFzKTtcbiAgfVxufVxuIl19","import { Directive, Input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class TypedRouterLink extends RouterLink {\n set routerLink(commandsOrUrlTree) {\n super.routerLink = commandsOrUrlTree;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouterLink, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.2.4\", type: TypedRouterLink, isStandalone: true, selector: \"[routerLink]\", inputs: { routerLink: \"routerLink\" }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouterLink, decorators: [{\n type: Directive,\n args: [{\n selector: '[routerLink]'\n }]\n }], propDecorators: { routerLink: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
{"version":3,"file":"angular-typed-router.mjs","sources":["../tmp-esm2022/lib/router.js","../tmp-esm2022/lib/router-link.js","../tmp-esm2022/angular-typed-router.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Router, } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class TypedRouter extends Router {\n navigate(commands, extras) {\n return super.navigate(commands, extras);\n }\n navigateByUrl(url, extras) {\n return super.navigateByUrl(url, extras);\n }\n createUrlTree(commands, navigationExtras) {\n return super.createUrlTree(commands, navigationExtras);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouter, deps: null, target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouter, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouter, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy90eXBlZC1yb3V0ZXIvc3JjL2xpYi9yb3V0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBR0wsTUFBTSxHQUdQLE1BQU0saUJBQWlCLENBQUM7O0FBTXpCLE1BQU0sT0FBTyxXQUFZLFNBQVEsTUFBTTtJQUM1QixRQUFRLENBQ2YsUUFBa0IsRUFDbEIsTUFBeUI7UUFFekIsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRVEsYUFBYSxDQUNwQixHQUFTLEVBQ1QsTUFBa0M7UUFFbEMsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRVEsYUFBYSxDQUNwQixRQUFrQixFQUNsQixnQkFBcUM7UUFFckMsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7dUdBcEJVLFdBQVc7MkdBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTmF2aWdhdGlvbkJlaGF2aW9yT3B0aW9ucyxcbiAgTmF2aWdhdGlvbkV4dHJhcyxcbiAgUm91dGVyLFxuICBVcmxDcmVhdGlvbk9wdGlvbnMsXG4gIFVybFRyZWUsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb21tYW5kcywgUGF0aCB9IGZyb20gJy4vdHlwZWQtcm91dGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVkUm91dGVyIGV4dGVuZHMgUm91dGVyIHtcbiAgb3ZlcnJpZGUgbmF2aWdhdGUoXG4gICAgY29tbWFuZHM6IENvbW1hbmRzLFxuICAgIGV4dHJhcz86IE5hdmlnYXRpb25FeHRyYXNcbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHN1cGVyLm5hdmlnYXRlKGNvbW1hbmRzLCBleHRyYXMpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmF2aWdhdGVCeVVybChcbiAgICB1cmw6IFBhdGgsXG4gICAgZXh0cmFzPzogTmF2aWdhdGlvbkJlaGF2aW9yT3B0aW9uc1xuICApOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gc3VwZXIubmF2aWdhdGVCeVVybCh1cmwsIGV4dHJhcyk7XG4gIH1cblxuICBvdmVycmlkZSBjcmVhdGVVcmxUcmVlKFxuICAgIGNvbW1hbmRzOiBDb21tYW5kcyxcbiAgICBuYXZpZ2F0aW9uRXh0cmFzPzogVXJsQ3JlYXRpb25PcHRpb25zXG4gICk6IFVybFRyZWUge1xuICAgIHJldHVybiBzdXBlci5jcmVhdGVVcmxUcmVlKGNvbW1hbmRzLCBuYXZpZ2F0aW9uRXh0cmFzKTtcbiAgfVxufVxuIl19","import { Directive, forwardRef, Input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class TypedRouterLink extends RouterLink {\n set routerLink(commandsOrUrlTree) {\n super.routerLink = commandsOrUrlTree;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouterLink, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.2.4\", type: TypedRouterLink, isStandalone: true, selector: \"[routerLink]\", inputs: { routerLink: \"routerLink\" }, providers: [\n {\n provide: RouterLink,\n useExisting: forwardRef(() => TypedRouterLink),\n }\n ], usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.4\", ngImport: i0, type: TypedRouterLink, decorators: [{\n type: Directive,\n args: [{\n selector: '[routerLink]',\n providers: [\n {\n provide: RouterLink,\n useExisting: forwardRef(() => TypedRouterLink),\n }\n ]\n }]\n }], propDecorators: { routerLink: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLWxpbmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3R5cGVkLXJvdXRlci9zcmMvbGliL3JvdXRlci1saW5rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFXLE1BQU0saUJBQWlCLENBQUM7O0FBWXRELE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUFDN0MsSUFDYSxVQUFVLENBQUMsaUJBQStEO1FBQ3JGLEtBQUssQ0FBQyxVQUFVLEdBQUcsaUJBQWlCLENBQUM7SUFDdkMsQ0FBQzt1R0FKVSxlQUFlOzJGQUFmLGVBQWUsaUdBUGY7WUFDVDtnQkFDRSxPQUFPLEVBQUUsVUFBVTtnQkFDbkIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7YUFDL0M7U0FDRjs7MkZBRVUsZUFBZTtrQkFUM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxVQUFVOzRCQUNuQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzt5QkFDL0M7cUJBQ0Y7aUJBQ0Y7OEJBR2MsVUFBVTtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmssIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQ29tbWFuZHMsIFBhdGggfSBmcm9tICcuL3R5cGVkLXJvdXRlcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tyb3V0ZXJMaW5rXScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJvdXRlckxpbmssXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUeXBlZFJvdXRlckxpbmspLFxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUeXBlZFJvdXRlckxpbmsgZXh0ZW5kcyBSb3V0ZXJMaW5rIHtcbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgc2V0IHJvdXRlckxpbmsoY29tbWFuZHNPclVybFRyZWU6IENvbW1hbmRzIHwgUGF0aCB8IFVybFRyZWUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgc3VwZXIucm91dGVyTGluayA9IGNvbW1hbmRzT3JVcmxUcmVlO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10eXBlZC1yb3V0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3R5cGVkLXJvdXRlci9zcmMvYW5ndWxhci10eXBlZC1yb3V0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"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"}
|