@ngrdt/router 0.0.17 → 0.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +254 -254
- package/fesm2022/ngrdt-router.mjs +222 -61
- package/fesm2022/ngrdt-router.mjs.map +1 -1
- package/index.d.ts +434 -12
- package/package.json +1 -3
- package/esm2022/index.mjs +0 -13
- package/esm2022/lib/directives/rdt-any-route-active.directive.mjs +0 -126
- package/esm2022/lib/directives/rdt-router-link.directive.mjs +0 -69
- package/esm2022/lib/guards/global-route-guard.service.mjs +0 -51
- package/esm2022/lib/guards/prevent-data-loss.guard.mjs +0 -7
- package/esm2022/lib/rdt-route/constants.mjs +0 -5
- package/esm2022/lib/rdt-route/rdt-angular-route.mjs +0 -196
- package/esm2022/lib/rdt-route/rdt-route-builder.mjs +0 -112
- package/esm2022/lib/rdt-route/rdt-route.mjs +0 -308
- package/esm2022/lib/rdt-route/utils.mjs +0 -15
- package/esm2022/lib/services/rdt-cannot-be-entered.token.mjs +0 -7
- package/esm2022/lib/services/rdt-confirm-data-loss.service.mjs +0 -11
- package/esm2022/lib/services/rdt-router.service.mjs +0 -161
- package/esm2022/lib/services/rdt-routes.token.mjs +0 -3
- package/esm2022/ngrdt-router.mjs +0 -5
- package/lib/directives/rdt-any-route-active.directive.d.ts +0 -34
- package/lib/directives/rdt-router-link.directive.d.ts +0 -23
- package/lib/guards/global-route-guard.service.d.ts +0 -10
- package/lib/guards/prevent-data-loss.guard.d.ts +0 -2
- package/lib/rdt-route/constants.d.ts +0 -3
- package/lib/rdt-route/rdt-angular-route.d.ts +0 -29
- package/lib/rdt-route/rdt-route-builder.d.ts +0 -46
- package/lib/rdt-route/rdt-route.d.ts +0 -138
- package/lib/rdt-route/utils.d.ts +0 -21
- package/lib/services/rdt-cannot-be-entered.token.d.ts +0 -7
- package/lib/services/rdt-confirm-data-loss.service.d.ts +0 -9
- package/lib/services/rdt-router.service.d.ts +0 -61
- package/lib/services/rdt-routes.token.d.ts +0 -3
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, inject, Injectable, EnvironmentInjector, runInInjectionContext, DestroyRef, Renderer2, ElementRef, Directive,
|
|
3
|
-
import { defer, of, filter, take } from 'rxjs';
|
|
2
|
+
import { InjectionToken, inject, Injectable, EnvironmentInjector, runInInjectionContext, DestroyRef, Renderer2, ElementRef, Input, Directive, afterNextRender, input, booleanAttribute, effect } from '@angular/core';
|
|
3
|
+
import { defer, of, filter, take, fromEvent } from 'rxjs';
|
|
4
4
|
import { Location, PlatformLocation } from '@angular/common';
|
|
5
5
|
import * as i1 from '@angular/router';
|
|
6
6
|
import { Router, NavigationEnd, RouterModule, RouterLink, GuardsCheckStart } from '@angular/router';
|
|
7
7
|
import { RdtStringUtils } from '@ngrdt/utils';
|
|
8
8
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
9
|
+
import { RDT_BUTTON_BASE_PROVIDER } from '@ngrdt/button';
|
|
9
10
|
import { RdtComponentGuardStoreService } from '@ngrdt/core';
|
|
10
11
|
|
|
11
12
|
/**
|
|
@@ -176,17 +177,16 @@ class RdtRouterService {
|
|
|
176
177
|
return currentRoute.parseAbsoluteUrl(url);
|
|
177
178
|
}
|
|
178
179
|
isParentOfCurrentLocation(route) {
|
|
179
|
-
console.log(this.parseAbsoluteUrl());
|
|
180
180
|
return true;
|
|
181
181
|
}
|
|
182
182
|
removeQueryParams(...paramNames) {
|
|
183
183
|
const regex = new RegExp(`[?&](${paramNames.join('|')})=[^&]*`, 'g');
|
|
184
184
|
return history.replaceState(history.state, '', location.pathname + location.search.replace(regex, '').replace(/^&/, '?'));
|
|
185
185
|
}
|
|
186
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
187
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
186
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtRouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
187
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtRouterService, providedIn: 'root' });
|
|
188
188
|
}
|
|
189
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
189
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtRouterService, decorators: [{
|
|
190
190
|
type: Injectable,
|
|
191
191
|
args: [{
|
|
192
192
|
providedIn: 'root',
|
|
@@ -218,18 +218,37 @@ class RdtAngularRoute {
|
|
|
218
218
|
this.providers.push(...providers);
|
|
219
219
|
return this;
|
|
220
220
|
}
|
|
221
|
+
withModule(callback) {
|
|
222
|
+
this.loadChildren = callback;
|
|
223
|
+
return this;
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* @deprecated Use withModule() instead.
|
|
227
|
+
*/
|
|
221
228
|
setModule(callback) {
|
|
222
229
|
this.loadChildren = callback;
|
|
223
230
|
return this;
|
|
224
231
|
}
|
|
225
|
-
|
|
232
|
+
withComponent(comp) {
|
|
226
233
|
this.component = comp;
|
|
227
234
|
return this;
|
|
228
235
|
}
|
|
229
|
-
|
|
236
|
+
/**
|
|
237
|
+
* @deprecated Use withComponent() instead.
|
|
238
|
+
*/
|
|
239
|
+
setComponent(comp) {
|
|
240
|
+
return this.withComponent(comp);
|
|
241
|
+
}
|
|
242
|
+
withChildren(...routes) {
|
|
230
243
|
this.children = routes;
|
|
231
244
|
return this;
|
|
232
245
|
}
|
|
246
|
+
/**
|
|
247
|
+
* @deprecated Use withChildren() instead.
|
|
248
|
+
*/
|
|
249
|
+
setChildren(...routes) {
|
|
250
|
+
return this.withChildren(...routes);
|
|
251
|
+
}
|
|
233
252
|
addResolve(paramName, resolver) {
|
|
234
253
|
this.resolvers[paramName] = resolver;
|
|
235
254
|
return this;
|
|
@@ -246,10 +265,16 @@ class RdtAngularRoute {
|
|
|
246
265
|
this.canActivateChild.push(...fns);
|
|
247
266
|
return this;
|
|
248
267
|
}
|
|
249
|
-
|
|
268
|
+
withRunGuardsAndResolvers(value) {
|
|
250
269
|
this.runGuardsAndResolvers = value;
|
|
251
270
|
return this;
|
|
252
271
|
}
|
|
272
|
+
/**
|
|
273
|
+
* @deprecated Use withRunGuardsAndResolvers() instead.
|
|
274
|
+
*/
|
|
275
|
+
setRunGuardsAndResolvers(value) {
|
|
276
|
+
return this.withRunGuardsAndResolvers(value);
|
|
277
|
+
}
|
|
253
278
|
build() {
|
|
254
279
|
this.checkChildrenMatch();
|
|
255
280
|
let res = {
|
|
@@ -605,7 +630,11 @@ class RdtRoute {
|
|
|
605
630
|
}
|
|
606
631
|
});
|
|
607
632
|
paramNames.forEach((param) => {
|
|
608
|
-
|
|
633
|
+
if (!(param in extendedParamMap)) {
|
|
634
|
+
throw new Error(`Param ${param} is missing for route ${this.absolutePath}. Please pass object with required parameters.`);
|
|
635
|
+
}
|
|
636
|
+
const value = extendedParamMap[param];
|
|
637
|
+
path = path.replace(`:${param}`, `${value}`);
|
|
609
638
|
});
|
|
610
639
|
return path;
|
|
611
640
|
}
|
|
@@ -702,25 +731,37 @@ class RdtRouteBuilder extends RdtRoute {
|
|
|
702
731
|
* you can inject global services, tokens, etc.
|
|
703
732
|
* @param fn
|
|
704
733
|
*/
|
|
705
|
-
|
|
734
|
+
withCanBeEntered(fn) {
|
|
706
735
|
this._canBeEntered = fn;
|
|
707
736
|
return this;
|
|
708
737
|
}
|
|
738
|
+
/**
|
|
739
|
+
* @deprecated Use withCanBeEntered() instead.
|
|
740
|
+
*/
|
|
741
|
+
setCanBeEntered(fn) {
|
|
742
|
+
return this.withCanBeEntered(fn);
|
|
743
|
+
}
|
|
709
744
|
/**
|
|
710
745
|
* Entry disabled route will generate disabled breadcrumb.
|
|
711
746
|
* It should not have any component nor module added to it.
|
|
712
747
|
* @param value
|
|
713
748
|
* @returns
|
|
714
749
|
*/
|
|
715
|
-
|
|
750
|
+
withEntryDisabled(value = true) {
|
|
716
751
|
this._entryDisabled = value;
|
|
717
752
|
return this;
|
|
718
753
|
}
|
|
754
|
+
/**
|
|
755
|
+
* @deprecated Use withEntryDisabled() instead.
|
|
756
|
+
*/
|
|
757
|
+
setEntryDisabled(value = true) {
|
|
758
|
+
return this.withEntryDisabled(value);
|
|
759
|
+
}
|
|
719
760
|
/**
|
|
720
761
|
* Sets path relative to parent. It is defined the same way as Angular route path including parameters.
|
|
721
762
|
* You need to call setParam() for each parameter you use in the path.
|
|
722
763
|
*/
|
|
723
|
-
|
|
764
|
+
withPath(path) {
|
|
724
765
|
this._path = path;
|
|
725
766
|
const s = path.split('/');
|
|
726
767
|
const params = [];
|
|
@@ -738,40 +779,70 @@ class RdtRouteBuilder extends RdtRoute {
|
|
|
738
779
|
this.orderedParams = params;
|
|
739
780
|
return this;
|
|
740
781
|
}
|
|
782
|
+
/**
|
|
783
|
+
* @deprecated Use withPath() instead.
|
|
784
|
+
*/
|
|
785
|
+
setPath(path) {
|
|
786
|
+
return this.withPath(path);
|
|
787
|
+
}
|
|
741
788
|
/**
|
|
742
789
|
* Sets Angular route data.
|
|
743
790
|
* @param data Angular route data object. Breadcrumb key is merged into it.
|
|
744
791
|
*/
|
|
745
|
-
|
|
792
|
+
withData(data) {
|
|
746
793
|
this._data = data;
|
|
747
794
|
return this;
|
|
748
795
|
}
|
|
796
|
+
/**
|
|
797
|
+
* @deprecated Use withData() instead.
|
|
798
|
+
*/
|
|
799
|
+
setData(data) {
|
|
800
|
+
return this.withData(data);
|
|
801
|
+
}
|
|
749
802
|
/**
|
|
750
803
|
* Defines parameter type and lets framework parse it.
|
|
751
804
|
* @param paramName
|
|
752
805
|
* @param type
|
|
753
806
|
*/
|
|
754
|
-
|
|
807
|
+
withParam(paramName, type) {
|
|
755
808
|
this._paramMap[paramName] = type;
|
|
756
809
|
return this;
|
|
757
810
|
}
|
|
811
|
+
/**
|
|
812
|
+
* @deprecated Use withParam() instead.
|
|
813
|
+
*/
|
|
814
|
+
setParam(paramName, type) {
|
|
815
|
+
return this.withParam(paramName, type);
|
|
816
|
+
}
|
|
758
817
|
/**
|
|
759
818
|
* Sets name to display in breadcrumb, etc.
|
|
760
819
|
*/
|
|
761
|
-
|
|
820
|
+
withName(name) {
|
|
762
821
|
this._name = name;
|
|
763
822
|
return this;
|
|
764
823
|
}
|
|
824
|
+
/**
|
|
825
|
+
* @deprecated Use withName() instead.
|
|
826
|
+
*/
|
|
827
|
+
setName(name) {
|
|
828
|
+
return this.withName(name);
|
|
829
|
+
}
|
|
765
830
|
/**
|
|
766
831
|
* Call .build() on children before you call this method!
|
|
767
832
|
*/
|
|
768
|
-
|
|
833
|
+
withChildren(...children) {
|
|
769
834
|
this._children = children;
|
|
770
835
|
for (const child of children) {
|
|
771
836
|
child._parent = this;
|
|
772
837
|
}
|
|
773
838
|
return this;
|
|
774
839
|
}
|
|
840
|
+
/**
|
|
841
|
+
* @deprecated Use withChildren() instead.
|
|
842
|
+
*/
|
|
843
|
+
setChildren(...children) {
|
|
844
|
+
return this.withChildren(...children);
|
|
845
|
+
}
|
|
775
846
|
build() {
|
|
776
847
|
if (typeof this._path !== 'string') {
|
|
777
848
|
throw new Error('Please provide path for route. Empty string is acceptable.');
|
|
@@ -903,10 +974,10 @@ class RdtAnyRouteActiveDirective {
|
|
|
903
974
|
return input;
|
|
904
975
|
}
|
|
905
976
|
}
|
|
906
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
907
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
977
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtAnyRouteActiveDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
978
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.7", type: RdtAnyRouteActiveDirective, isStandalone: true, selector: "[rdtAnyRouteActive]", inputs: { anyRouteActive: ["rdtAnyRouteActive", "anyRouteActive"], watchedRoutes: "watchedRoutes", anyRouteActiveOptions: "anyRouteActiveOptions", ariaCurrentWhenActive: "ariaCurrentWhenActive" }, providers: [RouterModule], usesOnChanges: true, ngImport: i0 });
|
|
908
979
|
}
|
|
909
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
980
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtAnyRouteActiveDirective, decorators: [{
|
|
910
981
|
type: Directive,
|
|
911
982
|
args: [{
|
|
912
983
|
selector: '[rdtAnyRouteActive]',
|
|
@@ -925,43 +996,147 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
925
996
|
type: Input
|
|
926
997
|
}] } });
|
|
927
998
|
|
|
999
|
+
class RdtBackLinkDirective {
|
|
1000
|
+
destroyRef = inject(DestroyRef);
|
|
1001
|
+
location = inject(Location);
|
|
1002
|
+
elRef = inject((ElementRef));
|
|
1003
|
+
buttonClass = inject(RDT_BUTTON_BASE_PROVIDER);
|
|
1004
|
+
buttonRef = inject(this.buttonClass, {
|
|
1005
|
+
optional: true,
|
|
1006
|
+
host: true,
|
|
1007
|
+
});
|
|
1008
|
+
constructor() {
|
|
1009
|
+
afterNextRender(() => {
|
|
1010
|
+
if (this.buttonRef) {
|
|
1011
|
+
this.buttonRef.click$
|
|
1012
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
1013
|
+
.subscribe(() => this.location.back());
|
|
1014
|
+
}
|
|
1015
|
+
else {
|
|
1016
|
+
fromEvent(this.elRef.nativeElement, 'click')
|
|
1017
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
1018
|
+
.subscribe(() => this.location.back());
|
|
1019
|
+
}
|
|
1020
|
+
});
|
|
1021
|
+
}
|
|
1022
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtBackLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1023
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.7", type: RdtBackLinkDirective, isStandalone: true, selector: "[rdtBackLink]", ngImport: i0 });
|
|
1024
|
+
}
|
|
1025
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtBackLinkDirective, decorators: [{
|
|
1026
|
+
type: Directive,
|
|
1027
|
+
args: [{
|
|
1028
|
+
selector: '[rdtBackLink]',
|
|
1029
|
+
}]
|
|
1030
|
+
}], ctorParameters: () => [] });
|
|
1031
|
+
|
|
1032
|
+
const PERMISSION_DISABLED_KEY = Symbol();
|
|
928
1033
|
class RdtRouterLinkDirective {
|
|
1034
|
+
buttonClass = inject(RDT_BUTTON_BASE_PROVIDER);
|
|
1035
|
+
buttonRef = inject(this.buttonClass, {
|
|
1036
|
+
host: true,
|
|
1037
|
+
optional: true,
|
|
1038
|
+
});
|
|
929
1039
|
routerLinkRef = inject(RouterLink, { self: true });
|
|
930
1040
|
envInjector = inject(EnvironmentInjector);
|
|
931
|
-
route;
|
|
932
|
-
target = '_self';
|
|
933
|
-
params;
|
|
934
|
-
queryParams;
|
|
935
|
-
stateParams;
|
|
936
|
-
disabled = false
|
|
937
|
-
|
|
938
|
-
|
|
1041
|
+
route = input.required(...(ngDevMode ? [{ debugName: "route", alias: 'rdtRouterLink' }] : [{ alias: 'rdtRouterLink' }]));
|
|
1042
|
+
target = input('_self', ...(ngDevMode ? [{ debugName: "target" }] : []));
|
|
1043
|
+
params = input(...(ngDevMode ? [undefined, { debugName: "params" }] : []));
|
|
1044
|
+
queryParams = input(...(ngDevMode ? [undefined, { debugName: "queryParams" }] : []));
|
|
1045
|
+
stateParams = input(...(ngDevMode ? [undefined, { debugName: "stateParams" }] : []));
|
|
1046
|
+
disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", alias: 'rdtDisabled',
|
|
1047
|
+
transform: booleanAttribute }] : [{
|
|
1048
|
+
alias: 'rdtDisabled',
|
|
1049
|
+
transform: booleanAttribute,
|
|
1050
|
+
}]));
|
|
1051
|
+
updateEffect = effect(() => {
|
|
1052
|
+
if (this.buttonRef) {
|
|
1053
|
+
this.updateButton();
|
|
1054
|
+
}
|
|
1055
|
+
else {
|
|
1056
|
+
this.updateRouterLink();
|
|
1057
|
+
}
|
|
1058
|
+
}, ...(ngDevMode ? [{ debugName: "updateEffect" }] : []));
|
|
1059
|
+
updateButton() {
|
|
1060
|
+
const route = this.route();
|
|
1061
|
+
if (!route) {
|
|
1062
|
+
this.clearButtonLink();
|
|
1063
|
+
return;
|
|
1064
|
+
}
|
|
1065
|
+
if (route.canBeEntered(this.envInjector)) {
|
|
1066
|
+
this.setButtonLink(route);
|
|
1067
|
+
}
|
|
1068
|
+
else {
|
|
1069
|
+
this.disableButtonLink();
|
|
1070
|
+
}
|
|
939
1071
|
}
|
|
940
|
-
|
|
941
|
-
this.
|
|
1072
|
+
setButtonLink(route) {
|
|
1073
|
+
const button = this.buttonRef;
|
|
1074
|
+
try {
|
|
1075
|
+
const ngHref = this.getNgHref(route);
|
|
1076
|
+
button.ngHref.set(ngHref);
|
|
1077
|
+
button.stateParams.set(this.stateParams() ?? route.stateParams);
|
|
1078
|
+
button.queryParams.set(this.queryParams() ?? route.queryParams);
|
|
1079
|
+
button.setDisabledState(false, PERMISSION_DISABLED_KEY);
|
|
1080
|
+
}
|
|
1081
|
+
catch (err) {
|
|
1082
|
+
console.error(err);
|
|
1083
|
+
this.disableButtonLink();
|
|
1084
|
+
}
|
|
942
1085
|
}
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
1086
|
+
disableButtonLink() {
|
|
1087
|
+
const button = this.buttonRef;
|
|
1088
|
+
button.ngHref.set(null);
|
|
1089
|
+
button.setDisabledState(true, PERMISSION_DISABLED_KEY);
|
|
1090
|
+
}
|
|
1091
|
+
clearButtonLink() {
|
|
1092
|
+
const button = this.buttonRef;
|
|
1093
|
+
button.ngHref.set(null);
|
|
1094
|
+
button.stateParams.set(undefined);
|
|
1095
|
+
button.queryParams.set(undefined);
|
|
1096
|
+
button.setDisabledState(false, PERMISSION_DISABLED_KEY);
|
|
1097
|
+
}
|
|
1098
|
+
updateRouterLink() {
|
|
1099
|
+
const route = this.route();
|
|
1100
|
+
if (!route) {
|
|
1101
|
+
this.clearRouterLink();
|
|
1102
|
+
}
|
|
1103
|
+
else if (route.canBeEntered(this.envInjector) && !this.disabled()) {
|
|
1104
|
+
this.setRouterLink(route);
|
|
946
1105
|
}
|
|
947
1106
|
else {
|
|
948
|
-
this.
|
|
1107
|
+
this.disableRouterLink();
|
|
949
1108
|
}
|
|
950
1109
|
}
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
1110
|
+
setRouterLink(route) {
|
|
1111
|
+
try {
|
|
1112
|
+
const ngHref = this.getNgHref(route);
|
|
1113
|
+
this.routerLinkRef.routerLink = ngHref;
|
|
1114
|
+
this.routerLinkRef.state = this.stateParams() ?? route.stateParams;
|
|
1115
|
+
this.routerLinkRef.queryParams = this.queryParams() ?? route.queryParams;
|
|
1116
|
+
this.routerLinkRef.ngOnChanges({});
|
|
1117
|
+
}
|
|
1118
|
+
catch (err) {
|
|
1119
|
+
console.error(err);
|
|
1120
|
+
this.disableRouterLink();
|
|
1121
|
+
}
|
|
1122
|
+
}
|
|
1123
|
+
disableRouterLink() {
|
|
1124
|
+
this.routerLinkRef.routerLink = null;
|
|
955
1125
|
this.routerLinkRef.ngOnChanges({});
|
|
956
1126
|
}
|
|
957
|
-
|
|
1127
|
+
clearRouterLink() {
|
|
958
1128
|
this.routerLinkRef.routerLink = null;
|
|
1129
|
+
this.routerLinkRef.state = undefined;
|
|
1130
|
+
this.routerLinkRef.queryParams = undefined;
|
|
959
1131
|
this.routerLinkRef.ngOnChanges({});
|
|
960
1132
|
}
|
|
961
|
-
|
|
962
|
-
|
|
1133
|
+
getNgHref(route) {
|
|
1134
|
+
return route.createAbsoluteUrl(this.params());
|
|
1135
|
+
}
|
|
1136
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtRouterLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1137
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.1.7", type: RdtRouterLinkDirective, isStandalone: true, selector: "[rdtRouterLink]", inputs: { route: { classPropertyName: "route", publicName: "rdtRouterLink", isSignal: true, isRequired: true, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, queryParams: { classPropertyName: "queryParams", publicName: "queryParams", isSignal: true, isRequired: false, transformFunction: null }, stateParams: { classPropertyName: "stateParams", publicName: "stateParams", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "rdtDisabled", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.RouterLink, inputs: ["target", "target"] }], ngImport: i0 });
|
|
963
1138
|
}
|
|
964
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: RdtRouterLinkDirective, decorators: [{
|
|
965
1140
|
type: Directive,
|
|
966
1141
|
args: [{
|
|
967
1142
|
selector: '[rdtRouterLink]',
|
|
@@ -973,21 +1148,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
973
1148
|
},
|
|
974
1149
|
],
|
|
975
1150
|
}]
|
|
976
|
-
}]
|
|
977
|
-
type: Input,
|
|
978
|
-
args: [{ alias: 'rdtRouterLink', required: true }]
|
|
979
|
-
}], target: [{
|
|
980
|
-
type: Input
|
|
981
|
-
}], params: [{
|
|
982
|
-
type: Input
|
|
983
|
-
}], queryParams: [{
|
|
984
|
-
type: Input
|
|
985
|
-
}], stateParams: [{
|
|
986
|
-
type: Input
|
|
987
|
-
}], disabled: [{
|
|
988
|
-
type: Input,
|
|
989
|
-
args: [{ transform: booleanAttribute }]
|
|
990
|
-
}] } });
|
|
1151
|
+
}] });
|
|
991
1152
|
|
|
992
1153
|
const preventDataLossGuardFn = () => {
|
|
993
1154
|
const guardStore = inject(RdtComponentGuardStoreService);
|
|
@@ -1032,10 +1193,10 @@ class GlobalRouteGuardService {
|
|
|
1032
1193
|
canDeactivateGuards.push(preventDataLossGuardFn);
|
|
1033
1194
|
}
|
|
1034
1195
|
}
|
|
1035
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1036
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1196
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: GlobalRouteGuardService, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1197
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: GlobalRouteGuardService, providedIn: 'root' });
|
|
1037
1198
|
}
|
|
1038
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1199
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: GlobalRouteGuardService, decorators: [{
|
|
1039
1200
|
type: Injectable,
|
|
1040
1201
|
args: [{ providedIn: 'root' }]
|
|
1041
1202
|
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
@@ -1044,5 +1205,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
1044
1205
|
* Generated bundle index. Do not edit.
|
|
1045
1206
|
*/
|
|
1046
1207
|
|
|
1047
|
-
export { ALWAYS_TRUE, GlobalRouteGuardService, RDT_CANNOT_BE_ENTERED_PROVIDER, RDT_CONFIRM_DATA_LOSS_SERVICE, RDT_ROUTES_PROVIDER, RdtAngularRoute, RdtAnyRouteActiveDirective, RdtConfirmDataLossService, RdtConfirmDataLossServiceAlert, RdtNavigationSource, RdtRoute, RdtRouteBuilder, RdtRouterLinkDirective, RdtRouterService, preventDataLossGuardFn };
|
|
1208
|
+
export { ALWAYS_TRUE, GlobalRouteGuardService, PERMISSION_DISABLED_KEY, RDT_CANNOT_BE_ENTERED_PROVIDER, RDT_CONFIRM_DATA_LOSS_SERVICE, RDT_ROUTES_PROVIDER, RdtAngularRoute, RdtAnyRouteActiveDirective, RdtBackLinkDirective, RdtConfirmDataLossService, RdtConfirmDataLossServiceAlert, RdtNavigationSource, RdtRoute, RdtRouteBuilder, RdtRouterLinkDirective, RdtRouterService, preventDataLossGuardFn };
|
|
1048
1209
|
//# sourceMappingURL=ngrdt-router.mjs.map
|