@worktile/planet 15.1.0 → 15.1.1
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/CHANGELOG.md +9 -0
- package/esm2020/module.mjs +5 -4
- package/esm2020/router/route-redirect.mjs +50 -10
- package/fesm2015/worktile-planet.mjs +66 -26
- package/fesm2015/worktile-planet.mjs.map +1 -1
- package/fesm2020/worktile-planet.mjs +65 -26
- package/fesm2020/worktile-planet.mjs.map +1 -1
- package/module.d.ts +2 -1
- package/module.d.ts.map +1 -1
- package/package.json +1 -1
- package/router/route-redirect.d.ts +8 -1
- package/router/route-redirect.d.ts.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [15.1.1](https://github.com/worktile/ngx-planet/compare/15.1.0...15.1.1) (2023-08-10)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* add redirectToRoute empty route ([918c026](https://github.com/worktile/ngx-planet/commit/918c026c5bbc6402dc3bb60328a0e904a8dec7cf))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
5
14
|
# [15.1.0](https://github.com/worktile/ngx-planet/compare/15.0.0...15.1.0) (2023-08-09)
|
|
6
15
|
|
|
7
16
|
|
package/esm2020/module.mjs
CHANGED
|
@@ -3,6 +3,7 @@ import { PLANET_APPLICATIONS } from './planet.class';
|
|
|
3
3
|
import { HttpClientModule } from '@angular/common/http';
|
|
4
4
|
import { EmptyComponent } from './empty/empty.component';
|
|
5
5
|
import { PlanetComponentOutlet } from './component/planet-component-outlet';
|
|
6
|
+
import { RedirectToRouteComponent } from './router/route-redirect';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export class NgxPlanetModule {
|
|
8
9
|
static forRoot(apps) {
|
|
@@ -18,15 +19,15 @@ export class NgxPlanetModule {
|
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
NgxPlanetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
21
|
-
NgxPlanetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent], exports: [HttpClientModule, EmptyComponent, PlanetComponentOutlet] });
|
|
22
|
-
NgxPlanetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, EmptyComponent, HttpClientModule] });
|
|
22
|
+
NgxPlanetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent, RedirectToRouteComponent], exports: [HttpClientModule, EmptyComponent, PlanetComponentOutlet] });
|
|
23
|
+
NgxPlanetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, EmptyComponent, RedirectToRouteComponent, HttpClientModule] });
|
|
23
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, decorators: [{
|
|
24
25
|
type: NgModule,
|
|
25
26
|
args: [{
|
|
26
27
|
declarations: [],
|
|
27
|
-
imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent],
|
|
28
|
+
imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent, RedirectToRouteComponent],
|
|
28
29
|
providers: [],
|
|
29
30
|
exports: [HttpClientModule, EmptyComponent, PlanetComponentOutlet]
|
|
30
31
|
}]
|
|
31
32
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvcGxhbmV0L3NyYy9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFRbkUsTUFBTSxPQUFPLGVBQWU7SUFDeEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUF5QjtRQUNwQyxPQUFPO1lBQ0gsUUFBUSxFQUFFLGVBQWU7WUFDekIsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxtQkFBbUI7b0JBQzVCLFFBQVEsRUFBRSxJQUFJO2lCQUNqQjthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7OzRHQVhRLGVBQWU7NkdBQWYsZUFBZSxZQUpkLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSx3QkFBd0IsYUFFakYsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLHFCQUFxQjs2R0FFeEQsZUFBZSxZQUpkLGdCQUFnQixFQUF5QixjQUFjLEVBQUUsd0JBQXdCLEVBRWpGLGdCQUFnQjsyRkFFakIsZUFBZTtrQkFOM0IsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLHdCQUF3QixDQUFDO29CQUM1RixTQUFTLEVBQUUsRUFBRTtvQkFDYixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUscUJBQXFCLENBQUM7aUJBQ3JFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBsYW5ldEFwcGxpY2F0aW9uLCBQTEFORVRfQVBQTElDQVRJT05TIH0gZnJvbSAnLi9wbGFuZXQuY2xhc3MnO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEVtcHR5Q29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS9lbXB0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhbmV0Q29tcG9uZW50T3V0bGV0IH0gZnJvbSAnLi9jb21wb25lbnQvcGxhbmV0LWNvbXBvbmVudC1vdXRsZXQnO1xuaW1wb3J0IHsgUmVkaXJlY3RUb1JvdXRlQ29tcG9uZW50IH0gZnJvbSAnLi9yb3V0ZXIvcm91dGUtcmVkaXJlY3QnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW10sXG4gICAgaW1wb3J0czogW0h0dHBDbGllbnRNb2R1bGUsIFBsYW5ldENvbXBvbmVudE91dGxldCwgRW1wdHlDb21wb25lbnQsIFJlZGlyZWN0VG9Sb3V0ZUNvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbXSxcbiAgICBleHBvcnRzOiBbSHR0cENsaWVudE1vZHVsZSwgRW1wdHlDb21wb25lbnQsIFBsYW5ldENvbXBvbmVudE91dGxldF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4UGxhbmV0TW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yUm9vdChhcHBzOiBQbGFuZXRBcHBsaWNhdGlvbltdKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hQbGFuZXRNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOZ3hQbGFuZXRNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IFBMQU5FVF9BUFBMSUNBVElPTlMsXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiBhcHBzXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,23 +1,63 @@
|
|
|
1
|
-
import { inject } from '@angular/core';
|
|
1
|
+
import { Component, inject } from '@angular/core';
|
|
2
2
|
import { ActivatedRoute, Router } from '@angular/router';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
3
4
|
class RouteRedirect {
|
|
4
5
|
constructor(redirectTo) {
|
|
5
6
|
this.activatedRoute = inject(ActivatedRoute);
|
|
6
7
|
this.router = inject(Router);
|
|
7
8
|
const finalRedirectTo = redirectTo || this.activatedRoute.snapshot.data.redirectTo;
|
|
8
9
|
if (finalRedirectTo) {
|
|
9
|
-
this.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
const activatedRouteUrl = this.activatedRoute.pathFromRoot
|
|
11
|
+
.filter(route => {
|
|
12
|
+
return route.snapshot.url?.length > 0;
|
|
13
|
+
})
|
|
14
|
+
.map(route => {
|
|
15
|
+
return route.snapshot.url.join('/');
|
|
16
|
+
})
|
|
17
|
+
.join('/');
|
|
18
|
+
if (this.router.isActive(activatedRouteUrl, {
|
|
19
|
+
matrixParams: 'exact',
|
|
20
|
+
paths: 'exact',
|
|
21
|
+
queryParams: 'exact',
|
|
22
|
+
fragment: 'exact'
|
|
23
|
+
})) {
|
|
24
|
+
this.router.navigate([`${finalRedirectTo}`],
|
|
25
|
+
// By replacing the current URL in the history, we keep the Browser's Back
|
|
26
|
+
// Button behavior in tact. This will allow the user to easily navigate back
|
|
27
|
+
// to the previous URL without getting caught in a redirect.
|
|
28
|
+
{
|
|
29
|
+
replaceUrl: true,
|
|
30
|
+
relativeTo: this.activatedRoute
|
|
31
|
+
});
|
|
32
|
+
}
|
|
17
33
|
}
|
|
18
34
|
}
|
|
19
35
|
}
|
|
20
36
|
export function routeRedirect(redirectTo) {
|
|
21
37
|
return new RouteRedirect(redirectTo);
|
|
22
38
|
}
|
|
23
|
-
|
|
39
|
+
export class RedirectToRouteComponent {
|
|
40
|
+
constructor() {
|
|
41
|
+
this.routeRedirect = routeRedirect();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
RedirectToRouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: RedirectToRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
RedirectToRouteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: RedirectToRouteComponent, isStandalone: true, selector: "planet-redirect-to-route", ngImport: i0, template: '', isInline: true });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: RedirectToRouteComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{
|
|
49
|
+
selector: 'planet-redirect-to-route',
|
|
50
|
+
template: '',
|
|
51
|
+
standalone: true
|
|
52
|
+
}]
|
|
53
|
+
}] });
|
|
54
|
+
export function redirectToRoute(redirectTo) {
|
|
55
|
+
return {
|
|
56
|
+
path: '',
|
|
57
|
+
component: RedirectToRouteComponent,
|
|
58
|
+
data: {
|
|
59
|
+
redirectTo: redirectTo
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtcmVkaXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGFuZXQvc3JjL3JvdXRlci9yb3V0ZS1yZWRpcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFTLE1BQU0sRUFBVyxNQUFNLGlCQUFpQixDQUFDOztBQUV6RSxNQUFNLGFBQWE7SUFJZixZQUFZLFVBQWtCO1FBSDlCLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHcEIsTUFBTSxlQUFlLEdBQUcsVUFBVSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkYsSUFBSSxlQUFlLEVBQUU7WUFDakIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVk7aUJBQ3JELE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDWixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDMUMsQ0FBQyxDQUFDO2lCQUNELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDVCxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN4QyxDQUFDLENBQUM7aUJBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2YsSUFDSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRTtnQkFDcEMsWUFBWSxFQUFFLE9BQU87Z0JBQ3JCLEtBQUssRUFBRSxPQUFPO2dCQUNkLFdBQVcsRUFBRSxPQUFPO2dCQUNwQixRQUFRLEVBQUUsT0FBTzthQUNwQixDQUFDLEVBQ0o7Z0JBQ0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ2hCLENBQUMsR0FBRyxlQUFlLEVBQUUsQ0FBQztnQkFDdEIsMEVBQTBFO2dCQUMxRSw0RUFBNEU7Z0JBQzVFLDREQUE0RDtnQkFDNUQ7b0JBQ0ksVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYztpQkFDbEMsQ0FDSixDQUFDO2FBQ0w7U0FDSjtJQUNMLENBQUM7Q0FDSjtBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsVUFBbUI7SUFDN0MsT0FBTyxJQUFJLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBT0QsTUFBTSxPQUFPLHdCQUF3QjtJQUxyQztRQU1JLGtCQUFhLEdBQUcsYUFBYSxFQUFFLENBQUM7S0FDbkM7O3FIQUZZLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLG9GQUh2QixFQUFFOzJGQUdILHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7O0FBS0QsTUFBTSxVQUFVLGVBQWUsQ0FBQyxVQUFrQjtJQUM5QyxPQUFPO1FBQ0gsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsd0JBQXdCO1FBQ25DLElBQUksRUFBRTtZQUNGLFVBQVUsRUFBRSxVQUFVO1NBQ3pCO0tBQ0osQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlLCBSb3V0ZXIsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5jbGFzcyBSb3V0ZVJlZGlyZWN0IHtcbiAgICBhY3RpdmF0ZWRSb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gICAgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG5cbiAgICBjb25zdHJ1Y3RvcihyZWRpcmVjdFRvOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZmluYWxSZWRpcmVjdFRvID0gcmVkaXJlY3RUbyB8fCB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGEucmVkaXJlY3RUbztcbiAgICAgICAgaWYgKGZpbmFsUmVkaXJlY3RUbykge1xuICAgICAgICAgICAgY29uc3QgYWN0aXZhdGVkUm91dGVVcmwgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnBhdGhGcm9tUm9vdFxuICAgICAgICAgICAgICAgIC5maWx0ZXIocm91dGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcm91dGUuc25hcHNob3QudXJsPy5sZW5ndGggPiAwO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLm1hcChyb3V0ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByb3V0ZS5zbmFwc2hvdC51cmwuam9pbignLycpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmpvaW4oJy8nKTtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5pc0FjdGl2ZShhY3RpdmF0ZWRSb3V0ZVVybCwge1xuICAgICAgICAgICAgICAgICAgICBtYXRyaXhQYXJhbXM6ICdleGFjdCcsXG4gICAgICAgICAgICAgICAgICAgIHBhdGhzOiAnZXhhY3QnLFxuICAgICAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogJ2V4YWN0JyxcbiAgICAgICAgICAgICAgICAgICAgZnJhZ21lbnQ6ICdleGFjdCdcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoXG4gICAgICAgICAgICAgICAgICAgIFtgJHtmaW5hbFJlZGlyZWN0VG99YF0sXG4gICAgICAgICAgICAgICAgICAgIC8vIEJ5IHJlcGxhY2luZyB0aGUgY3VycmVudCBVUkwgaW4gdGhlIGhpc3RvcnksIHdlIGtlZXAgdGhlIEJyb3dzZXIncyBCYWNrXG4gICAgICAgICAgICAgICAgICAgIC8vIEJ1dHRvbiBiZWhhdmlvciBpbiB0YWN0LiBUaGlzIHdpbGwgYWxsb3cgdGhlIHVzZXIgdG8gZWFzaWx5IG5hdmlnYXRlIGJhY2tcbiAgICAgICAgICAgICAgICAgICAgLy8gdG8gdGhlIHByZXZpb3VzIFVSTCB3aXRob3V0IGdldHRpbmcgY2F1Z2h0IGluIGEgcmVkaXJlY3QuXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VVcmw6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLmFjdGl2YXRlZFJvdXRlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcm91dGVSZWRpcmVjdChyZWRpcmVjdFRvPzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBSb3V0ZVJlZGlyZWN0KHJlZGlyZWN0VG8pO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BsYW5ldC1yZWRpcmVjdC10by1yb3V0ZScsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgUmVkaXJlY3RUb1JvdXRlQ29tcG9uZW50IHtcbiAgICByb3V0ZVJlZGlyZWN0ID0gcm91dGVSZWRpcmVjdCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVkaXJlY3RUb1JvdXRlKHJlZGlyZWN0VG86IHN0cmluZyk6IFJvdXRlIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgY29tcG9uZW50OiBSZWRpcmVjdFRvUm91dGVDb21wb25lbnQsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHJlZGlyZWN0VG86IHJlZGlyZWN0VG9cbiAgICAgICAgfVxuICAgIH07XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, NgZone, Injectable, Inject, Optional, Component, ChangeDetectionStrategy, Injector, createComponent, reflectComponentType, EventEmitter, Directive, Input, Output,
|
|
2
|
+
import { InjectionToken, NgZone, Injectable, Inject, Optional, Component, ChangeDetectionStrategy, Injector, createComponent, reflectComponentType, EventEmitter, Directive, Input, Output, inject, NgModule } from '@angular/core';
|
|
3
3
|
import * as i3 from '@angular/router';
|
|
4
4
|
import { Router, NavigationEnd, ActivatedRoute } from '@angular/router';
|
|
5
5
|
import { take, map, concatAll, switchMap, shareReplay, filter, distinctUntilChanged, catchError, tap, share, startWith, delayWhen, takeUntil } from 'rxjs/operators';
|
|
@@ -2087,6 +2087,67 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImpor
|
|
|
2087
2087
|
type: Output
|
|
2088
2088
|
}] } });
|
|
2089
2089
|
|
|
2090
|
+
class RouteRedirect {
|
|
2091
|
+
constructor(redirectTo) {
|
|
2092
|
+
this.activatedRoute = inject(ActivatedRoute);
|
|
2093
|
+
this.router = inject(Router);
|
|
2094
|
+
const finalRedirectTo = redirectTo || this.activatedRoute.snapshot.data.redirectTo;
|
|
2095
|
+
if (finalRedirectTo) {
|
|
2096
|
+
const activatedRouteUrl = this.activatedRoute.pathFromRoot
|
|
2097
|
+
.filter(route => {
|
|
2098
|
+
var _a;
|
|
2099
|
+
return ((_a = route.snapshot.url) === null || _a === void 0 ? void 0 : _a.length) > 0;
|
|
2100
|
+
})
|
|
2101
|
+
.map(route => {
|
|
2102
|
+
return route.snapshot.url.join('/');
|
|
2103
|
+
})
|
|
2104
|
+
.join('/');
|
|
2105
|
+
if (this.router.isActive(activatedRouteUrl, {
|
|
2106
|
+
matrixParams: 'exact',
|
|
2107
|
+
paths: 'exact',
|
|
2108
|
+
queryParams: 'exact',
|
|
2109
|
+
fragment: 'exact'
|
|
2110
|
+
})) {
|
|
2111
|
+
this.router.navigate([`${finalRedirectTo}`],
|
|
2112
|
+
// By replacing the current URL in the history, we keep the Browser's Back
|
|
2113
|
+
// Button behavior in tact. This will allow the user to easily navigate back
|
|
2114
|
+
// to the previous URL without getting caught in a redirect.
|
|
2115
|
+
{
|
|
2116
|
+
replaceUrl: true,
|
|
2117
|
+
relativeTo: this.activatedRoute
|
|
2118
|
+
});
|
|
2119
|
+
}
|
|
2120
|
+
}
|
|
2121
|
+
}
|
|
2122
|
+
}
|
|
2123
|
+
function routeRedirect(redirectTo) {
|
|
2124
|
+
return new RouteRedirect(redirectTo);
|
|
2125
|
+
}
|
|
2126
|
+
class RedirectToRouteComponent {
|
|
2127
|
+
constructor() {
|
|
2128
|
+
this.routeRedirect = routeRedirect();
|
|
2129
|
+
}
|
|
2130
|
+
}
|
|
2131
|
+
RedirectToRouteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: RedirectToRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2132
|
+
RedirectToRouteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: RedirectToRouteComponent, isStandalone: true, selector: "planet-redirect-to-route", ngImport: i0, template: '', isInline: true });
|
|
2133
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: RedirectToRouteComponent, decorators: [{
|
|
2134
|
+
type: Component,
|
|
2135
|
+
args: [{
|
|
2136
|
+
selector: 'planet-redirect-to-route',
|
|
2137
|
+
template: '',
|
|
2138
|
+
standalone: true
|
|
2139
|
+
}]
|
|
2140
|
+
}] });
|
|
2141
|
+
function redirectToRoute(redirectTo) {
|
|
2142
|
+
return {
|
|
2143
|
+
path: '',
|
|
2144
|
+
component: RedirectToRouteComponent,
|
|
2145
|
+
data: {
|
|
2146
|
+
redirectTo: redirectTo
|
|
2147
|
+
}
|
|
2148
|
+
};
|
|
2149
|
+
}
|
|
2150
|
+
|
|
2090
2151
|
class NgxPlanetModule {
|
|
2091
2152
|
static forRoot(apps) {
|
|
2092
2153
|
return {
|
|
@@ -2101,13 +2162,13 @@ class NgxPlanetModule {
|
|
|
2101
2162
|
}
|
|
2102
2163
|
}
|
|
2103
2164
|
NgxPlanetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2104
|
-
NgxPlanetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent], exports: [HttpClientModule, EmptyComponent, PlanetComponentOutlet] });
|
|
2105
|
-
NgxPlanetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, EmptyComponent, HttpClientModule] });
|
|
2165
|
+
NgxPlanetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent, RedirectToRouteComponent], exports: [HttpClientModule, EmptyComponent, PlanetComponentOutlet] });
|
|
2166
|
+
NgxPlanetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, imports: [HttpClientModule, EmptyComponent, RedirectToRouteComponent, HttpClientModule] });
|
|
2106
2167
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgxPlanetModule, decorators: [{
|
|
2107
2168
|
type: NgModule,
|
|
2108
2169
|
args: [{
|
|
2109
2170
|
declarations: [],
|
|
2110
|
-
imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent],
|
|
2171
|
+
imports: [HttpClientModule, PlanetComponentOutlet, EmptyComponent, RedirectToRouteComponent],
|
|
2111
2172
|
providers: [],
|
|
2112
2173
|
exports: [HttpClientModule, EmptyComponent, PlanetComponentOutlet]
|
|
2113
2174
|
}]
|
|
@@ -2120,27 +2181,6 @@ class PlantComponentConfig {
|
|
|
2120
2181
|
}
|
|
2121
2182
|
}
|
|
2122
2183
|
|
|
2123
|
-
class RouteRedirect {
|
|
2124
|
-
constructor(redirectTo) {
|
|
2125
|
-
this.activatedRoute = inject(ActivatedRoute);
|
|
2126
|
-
this.router = inject(Router);
|
|
2127
|
-
const finalRedirectTo = redirectTo || this.activatedRoute.snapshot.data.redirectTo;
|
|
2128
|
-
if (finalRedirectTo) {
|
|
2129
|
-
this.router.navigate([`${finalRedirectTo}`],
|
|
2130
|
-
// By replacing the current URL in the history, we keep the Browser's Back
|
|
2131
|
-
// Button behavior in tact. This will allow the user to easily navigate back
|
|
2132
|
-
// to the previous URL without getting caught in a redirect.
|
|
2133
|
-
{
|
|
2134
|
-
replaceUrl: true,
|
|
2135
|
-
relativeTo: this.activatedRoute
|
|
2136
|
-
});
|
|
2137
|
-
}
|
|
2138
|
-
}
|
|
2139
|
-
}
|
|
2140
|
-
function routeRedirect(redirectTo) {
|
|
2141
|
-
return new RouteRedirect(redirectTo);
|
|
2142
|
-
}
|
|
2143
|
-
|
|
2144
2184
|
/*
|
|
2145
2185
|
* Public API Surface of core
|
|
2146
2186
|
*/
|
|
@@ -2149,5 +2189,5 @@ function routeRedirect(redirectTo) {
|
|
|
2149
2189
|
* Generated bundle index. Do not edit.
|
|
2150
2190
|
*/
|
|
2151
2191
|
|
|
2152
|
-
export { ApplicationStatus, AssetsLoader, EmptyComponent, GlobalEventDispatcher, NgxPlanetModule, PLANET_APPLICATIONS, Planet, PlanetApplicationLoader, PlanetApplicationRef, PlanetApplicationService, PlanetComponentLoader, PlanetComponentOutlet, PlanetComponentRef, PlanetPortalApplication, PlantComponentConfig, SwitchModes, defineApplication, getPlanetApplicationRef, getPortalApplicationData, routeRedirect };
|
|
2192
|
+
export { ApplicationStatus, AssetsLoader, EmptyComponent, GlobalEventDispatcher, NgxPlanetModule, PLANET_APPLICATIONS, Planet, PlanetApplicationLoader, PlanetApplicationRef, PlanetApplicationService, PlanetComponentLoader, PlanetComponentOutlet, PlanetComponentRef, PlanetPortalApplication, PlantComponentConfig, RedirectToRouteComponent, SwitchModes, defineApplication, getPlanetApplicationRef, getPortalApplicationData, redirectToRoute, routeRedirect };
|
|
2153
2193
|
//# sourceMappingURL=worktile-planet.mjs.map
|