@net7/boilerplate-muruca 4.9.0 → 4.9.2
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/esm2020/lib/layouts/static-layout/static-layout.ds.mjs +18 -7
- package/esm2020/lib/layouts/static-layout/static-layout.eh.mjs +25 -12
- package/esm2020/lib/layouts/static-layout/static-layout.mjs +8 -3
- package/fesm2015/net7-boilerplate-muruca.mjs +47 -18
- package/fesm2015/net7-boilerplate-muruca.mjs.map +1 -1
- package/fesm2020/net7-boilerplate-muruca.mjs +47 -18
- package/fesm2020/net7-boilerplate-muruca.mjs.map +1 -1
- package/lib/layouts/static-layout/static-layout.d.ts +3 -1
- package/lib/layouts/static-layout/static-layout.ds.d.ts +8 -2
- package/package.json +1 -1
|
@@ -9,17 +9,28 @@ export class MrStaticLayoutDS extends LayoutDataSource {
|
|
|
9
9
|
this.communication = payload.communication;
|
|
10
10
|
this.configuration = payload.configuration;
|
|
11
11
|
this.mainState = payload.mainState;
|
|
12
|
+
this.routerData = payload.routerData;
|
|
13
|
+
this.pageConfig = this.configuration.get(this.routerData.configId);
|
|
12
14
|
}
|
|
13
|
-
pageRequest$(urlSegments, onError) {
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
pageRequest$({ urlSegments, routerParams, onError }) {
|
|
16
|
+
const { slug } = routerParams;
|
|
17
|
+
const { apiPoint } = this.pageConfig || {};
|
|
18
|
+
// no locale slug setup
|
|
19
|
+
if (!slug) {
|
|
20
|
+
if (urlSegments.length > 1) {
|
|
21
|
+
return this.communication.request$(apiPoint || 'post', {
|
|
22
|
+
onError,
|
|
23
|
+
urlParams: urlSegments[1].path,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return this.communication.request$(apiPoint || 'static', {
|
|
16
27
|
onError,
|
|
17
|
-
urlParams: urlSegments[
|
|
28
|
+
urlParams: urlSegments[0].path,
|
|
18
29
|
});
|
|
19
30
|
}
|
|
20
|
-
return this.communication.request$('static', {
|
|
31
|
+
return this.communication.request$(apiPoint || 'static', {
|
|
21
32
|
onError,
|
|
22
|
-
urlParams:
|
|
33
|
+
urlParams: slug,
|
|
23
34
|
});
|
|
24
35
|
}
|
|
25
36
|
handleResponse(response) {
|
|
@@ -37,4 +48,4 @@ export class MrStaticLayoutDS extends LayoutDataSource {
|
|
|
37
48
|
this.mainState.update('headTitle', [appName, pageTitle].join(' > '));
|
|
38
49
|
}
|
|
39
50
|
}
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLWxheW91dC5kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2xheW91dHMvc3RhdGljLWxheW91dC9zdGF0aWMtbGF5b3V0LmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFLbEQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQUF0RDs7UUFlUyxlQUFVLEdBQUcsRUFBRSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFFN0MscUJBQWdCLEdBQUcsRUFBRSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFtRGxFLENBQUM7SUFqREMsTUFBTSxDQUFDLE9BQU87UUFDWixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQzNDLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxZQUFZLENBQ1YsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFDNEM7UUFFaEYsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLFlBQVksQ0FBQztRQUM5QixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUM7UUFFM0MsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsSUFBSSxNQUFNLEVBQUU7b0JBQ3JELE9BQU87b0JBQ1AsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJO2lCQUMvQixDQUFDLENBQUM7YUFDSjtZQUFDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxJQUFJLFFBQVEsRUFBRTtnQkFDekQsT0FBTztnQkFDUCxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7YUFDL0IsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsSUFBSSxRQUFRLEVBQUU7WUFDdkQsT0FBTztZQUNQLFNBQVMsRUFBRSxJQUFJO1NBQ2hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsUUFBYTtRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxPQUFPLENBQUMsUUFBUTtRQUNkLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsUUFBUSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGVBQWUsQ0FBQyxTQUFpQjtRQUMvQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGF5b3V0RGF0YVNvdXJjZSwgX3QgfSBmcm9tICdAbmV0Ny9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhdGEsIFBhcmFtcywgVXJsU2VnbWVudCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSwgQ29tbXVuaWNhdGlvblNlcnZpY2UsIE1haW5TdGF0ZVNlcnZpY2UgfSBmcm9tICdAbmV0Ny9ib2lsZXJwbGF0ZS1jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgTXJTdGF0aWNMYXlvdXREUyBleHRlbmRzIExheW91dERhdGFTb3VyY2Uge1xuICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlO1xuXG4gIHByaXZhdGUgY29tbXVuaWNhdGlvbjogQ29tbXVuaWNhdGlvblNlcnZpY2U7XG5cbiAgcHJpdmF0ZSBtYWluU3RhdGU6IE1haW5TdGF0ZVNlcnZpY2U7XG5cbiAgcHJpdmF0ZSByb3V0ZXJEYXRhOiBEYXRhO1xuXG4gIHB1YmxpYyBwYWdlQ29uZmlnO1xuXG4gIHB1YmxpYyBjb250ZW50OiBzdHJpbmcgfCBudWxsO1xuXG4gIHB1YmxpYyB0aXRsZTogc3RyaW5nIHwgbnVsbDtcblxuICBwdWJsaWMgZXJyb3JUaXRsZSA9IF90KCdnbG9iYWwjbGF5b3V0X2Vycm9yX3RpdGxlJyk7XG5cbiAgcHVibGljIGVycm9yRGVzY3JpcHRpb24gPSBfdCgnZ2xvYmFsI2xheW91dF9lcnJvcl9kZXNjcmlwdGlvbicpO1xuXG4gIG9uSW5pdChwYXlsb2FkKSB7XG4gICAgdGhpcy5jb21tdW5pY2F0aW9uID0gcGF5bG9hZC5jb21tdW5pY2F0aW9uO1xuICAgIHRoaXMuY29uZmlndXJhdGlvbiA9IHBheWxvYWQuY29uZmlndXJhdGlvbjtcbiAgICB0aGlzLm1haW5TdGF0ZSA9IHBheWxvYWQubWFpblN0YXRlO1xuICAgIHRoaXMucm91dGVyRGF0YSA9IHBheWxvYWQucm91dGVyRGF0YTtcbiAgICB0aGlzLnBhZ2VDb25maWcgPSB0aGlzLmNvbmZpZ3VyYXRpb24uZ2V0KHRoaXMucm91dGVyRGF0YS5jb25maWdJZCk7XG4gIH1cblxuICBwYWdlUmVxdWVzdCQoXG4gICAgeyB1cmxTZWdtZW50cywgcm91dGVyUGFyYW1zLCBvbkVycm9yIH06XG4gICAgeyB1cmxTZWdtZW50czogVXJsU2VnbWVudFtdLCByb3V0ZXJQYXJhbXM6IFBhcmFtczsgb25FcnJvcjogKGVycjogYW55KSA9PiB2b2lkIH1cbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCB7IHNsdWcgfSA9IHJvdXRlclBhcmFtcztcbiAgICBjb25zdCB7IGFwaVBvaW50IH0gPSB0aGlzLnBhZ2VDb25maWcgfHwge307XG5cbiAgICAvLyBubyBsb2NhbGUgc2x1ZyBzZXR1cFxuICAgIGlmICghc2x1Zykge1xuICAgICAgaWYgKHVybFNlZ21lbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tbXVuaWNhdGlvbi5yZXF1ZXN0JChhcGlQb2ludCB8fCAncG9zdCcsIHtcbiAgICAgICAgICBvbkVycm9yLFxuICAgICAgICAgIHVybFBhcmFtczogdXJsU2VnbWVudHNbMV0ucGF0aCxcbiAgICAgICAgfSk7XG4gICAgICB9IHJldHVybiB0aGlzLmNvbW11bmljYXRpb24ucmVxdWVzdCQoYXBpUG9pbnQgfHwgJ3N0YXRpYycsIHtcbiAgICAgICAgb25FcnJvcixcbiAgICAgICAgdXJsUGFyYW1zOiB1cmxTZWdtZW50c1swXS5wYXRoLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbW11bmljYXRpb24ucmVxdWVzdCQoYXBpUG9pbnQgfHwgJ3N0YXRpYycsIHtcbiAgICAgIG9uRXJyb3IsXG4gICAgICB1cmxQYXJhbXM6IHNsdWcsXG4gICAgfSk7XG4gIH1cblxuICBoYW5kbGVSZXNwb25zZShyZXNwb25zZTogYW55KSB7XG4gICAgdGhpcy5zZXRIdG1sKHJlc3BvbnNlKTtcbiAgICB0aGlzLnVwZGF0ZUhlYWRUaXRsZShyZXNwb25zZS50aXRsZSk7XG4gIH1cblxuICBzZXRIdG1sKHJlc3BvbnNlKSB7XG4gICAgY29uc3QgeyBjb250ZW50LCB0aXRsZSB9ID0gcmVzcG9uc2U7XG4gICAgdGhpcy50aXRsZSA9IHRpdGxlO1xuICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7XG4gICAgdGhpcy5vbmUoJ21yLXN0YXRpYy1tZXRhZGF0YScpLnVwZGF0ZShyZXNwb25zZSk7XG4gIH1cblxuICB1cGRhdGVIZWFkVGl0bGUocGFnZVRpdGxlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBhcHBOYW1lID0gdGhpcy5jb25maWd1cmF0aW9uLmdldCgnbmFtZScpO1xuICAgIHRoaXMubWFpblN0YXRlLnVwZGF0ZSgnaGVhZFRpdGxlJywgW2FwcE5hbWUsIHBhZ2VUaXRsZV0uam9pbignID4gJykpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Subject } from 'rxjs';
|
|
2
2
|
import { EventHandler } from '@net7/core';
|
|
3
|
-
import { takeUntil, switchMap, tap } from 'rxjs/operators';
|
|
3
|
+
import { takeUntil, switchMap, tap, map } from 'rxjs/operators';
|
|
4
4
|
import { LayoutState } from '../../services/layout-state.service';
|
|
5
5
|
export class MrStaticLayoutEH extends EventHandler {
|
|
6
6
|
constructor() {
|
|
@@ -30,22 +30,35 @@ export class MrStaticLayoutEH extends EventHandler {
|
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
listenRoute() {
|
|
33
|
-
this.route.url.pipe(takeUntil(this.destroy$),
|
|
33
|
+
this.route.url.pipe(takeUntil(this.destroy$), map((urlSegments) => ({
|
|
34
|
+
urlSegments,
|
|
35
|
+
routerParams: this.route.snapshot.params,
|
|
36
|
+
routerData: this.route.snapshot.data,
|
|
37
|
+
})), tap(() => {
|
|
34
38
|
this.layoutState.set('content', LayoutState.LOADING);
|
|
35
|
-
}), switchMap((urlSegments) => this.dataSource.pageRequest$(
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
}), switchMap(({ urlSegments, routerParams, routerData }) => this.dataSource.pageRequest$({
|
|
40
|
+
urlSegments,
|
|
41
|
+
routerParams,
|
|
42
|
+
onError: (err) => {
|
|
43
|
+
if (err.status === 404) {
|
|
44
|
+
// getting not found path
|
|
45
|
+
const { config } = this.router;
|
|
46
|
+
let route404 = config.find(({ data }) => data?.id === 'page-404' && data.locale === routerData.locale);
|
|
47
|
+
if (!route404) {
|
|
48
|
+
route404 = config.find(({ data }) => data?.id === 'page-404');
|
|
49
|
+
}
|
|
50
|
+
const path404 = route404?.path || 'page-404';
|
|
51
|
+
this.router.navigate([path404]);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
console.warn(`Error loading static layout for ${urlSegments}`, err.message);
|
|
55
|
+
this.layoutState.set('content', LayoutState.ERROR);
|
|
56
|
+
}
|
|
42
57
|
}
|
|
43
|
-
console.warn(`Error loading static layout for ${urlSegments}`, err.message);
|
|
44
|
-
this.layoutState.set('content', LayoutState.ERROR);
|
|
45
58
|
}))).subscribe((response) => {
|
|
46
59
|
this.layoutState.set('content', LayoutState.SUCCESS);
|
|
47
60
|
this.dataSource.handleResponse(response);
|
|
48
61
|
});
|
|
49
62
|
}
|
|
50
63
|
}
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLWxheW91dC5laC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2xheW91dHMvc3RhdGljLWxheW91dC9zdGF0aWMtbGF5b3V0LmVoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMxQyxPQUFPLEVBQ0wsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUMvQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBd0IsV0FBVyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHeEYsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFlBQVk7SUFBbEQ7O1FBU1UsYUFBUSxHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO0lBa0VsRCxDQUFDO0lBaEVRLE1BQU07UUFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7WUFDaEQsUUFBUSxJQUFJLEVBQUU7Z0JBQ1osS0FBSyx1QkFBdUI7b0JBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztvQkFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO29CQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7b0JBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUVoQyxlQUFlO29CQUNmLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDbkIsYUFBYTtvQkFDYixNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDdEIsTUFBTTtnQkFFUixLQUFLLDBCQUEwQjtvQkFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDckIsTUFBTTtnQkFFUjtvQkFDRSxPQUFPLENBQUMsSUFBSSxDQUFDLCtCQUErQixFQUFFLElBQUksQ0FBQyxDQUFDO29CQUNwRCxNQUFNO2FBQ1Q7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FDakIsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDeEIsR0FBRyxDQUFDLENBQUMsV0FBeUIsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNsQyxXQUFXO1lBQ1gsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU07WUFDeEMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUk7U0FDckMsQ0FBQyxDQUFDLEVBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLENBQ1IsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFDOEIsRUFDckUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO1lBQ2hDLFdBQVc7WUFDWCxZQUFZO1lBQ1osT0FBTyxFQUFFLENBQUMsR0FBc0IsRUFBRSxFQUFFO2dCQUNsQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO29CQUN0Qix5QkFBeUI7b0JBQ3pCLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO29CQUMvQixJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxVQUFVLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3ZHLElBQUksQ0FBQyxRQUFRLEVBQUU7d0JBQ2IsUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxLQUFLLFVBQVUsQ0FBQyxDQUFDO3FCQUMvRDtvQkFDRCxNQUFNLE9BQU8sR0FBRyxRQUFRLEVBQUUsSUFBSSxJQUFJLFVBQVUsQ0FBQztvQkFDN0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2lCQUNqQztxQkFBTTtvQkFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLG1DQUFtQyxXQUFXLEVBQUUsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQzVFLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ3BEO1lBQ0gsQ0FBQztTQUNGLENBQUMsQ0FBQyxDQUNKLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlLCBEYXRhLCBQYXJhbXMsIFJvdXRlciwgVXJsU2VnbWVudFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFdmVudEhhbmRsZXIgfSBmcm9tICdAbmV0Ny9jb3JlJztcbmltcG9ydCB7XG4gIHRha2VVbnRpbCwgc3dpdGNoTWFwLCB0YXAsIG1hcFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNckxheW91dFN0YXRlU2VydmljZSwgTGF5b3V0U3RhdGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sYXlvdXQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBNclN0YXRpY0xheW91dERTIH0gZnJvbSAnLi9zdGF0aWMtbGF5b3V0LmRzJztcblxuZXhwb3J0IGNsYXNzIE1yU3RhdGljTGF5b3V0RUggZXh0ZW5kcyBFdmVudEhhbmRsZXIge1xuICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcblxuICBwcml2YXRlIHJvdXRlcjogUm91dGVyO1xuXG4gIHB1YmxpYyBkYXRhU291cmNlOiBNclN0YXRpY0xheW91dERTO1xuXG4gIHByaXZhdGUgbGF5b3V0U3RhdGU6IE1yTGF5b3V0U3RhdGVTZXJ2aWNlO1xuXG4gIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xuXG4gIHB1YmxpYyBsaXN0ZW4oKSB7XG4gICAgdGhpcy5pbm5lckV2ZW50cyQuc3Vic2NyaWJlKCh7IHR5cGUsIHBheWxvYWQgfSkgPT4ge1xuICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgIGNhc2UgJ21yLXN0YXRpYy1sYXlvdXQuaW5pdCc6XG4gICAgICAgICAgdGhpcy5yb3V0ZSA9IHBheWxvYWQucm91dGU7XG4gICAgICAgICAgdGhpcy5yb3V0ZXIgPSBwYXlsb2FkLnJvdXRlcjtcbiAgICAgICAgICB0aGlzLmxheW91dFN0YXRlID0gcGF5bG9hZC5sYXlvdXRTdGF0ZTtcbiAgICAgICAgICB0aGlzLmRhdGFTb3VyY2Uub25Jbml0KHBheWxvYWQpO1xuXG4gICAgICAgICAgLy8gbGlzdGVuIHJvdXRlXG4gICAgICAgICAgdGhpcy5saXN0ZW5Sb3V0ZSgpO1xuICAgICAgICAgIC8vIHNjcm9sbCB0b3BcbiAgICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnbXItc3RhdGljLWxheW91dC5kZXN0cm95JzpcbiAgICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnNvbGUud2FybigndW5oYW5kbGVkIGlubmVyIGV2ZW50IG9mIHR5cGUnLCB0eXBlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuUm91dGUoKSB7XG4gICAgdGhpcy5yb3V0ZS51cmwucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIG1hcCgodXJsU2VnbWVudHM6IFVybFNlZ21lbnRbXSkgPT4gKHtcbiAgICAgICAgdXJsU2VnbWVudHMsXG4gICAgICAgIHJvdXRlclBhcmFtczogdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXMsXG4gICAgICAgIHJvdXRlckRhdGE6IHRoaXMucm91dGUuc25hcHNob3QuZGF0YSxcbiAgICAgIH0pKSxcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIHRoaXMubGF5b3V0U3RhdGUuc2V0KCdjb250ZW50JywgTGF5b3V0U3RhdGUuTE9BRElORyk7XG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCgoXG4gICAgICAgIHsgdXJsU2VnbWVudHMsIHJvdXRlclBhcmFtcywgcm91dGVyRGF0YSB9OlxuICAgICAgICB7IHVybFNlZ21lbnRzOiBVcmxTZWdtZW50W107IHJvdXRlclBhcmFtczogUGFyYW1zOyByb3V0ZXJEYXRhOiBEYXRhIH1cbiAgICAgICkgPT4gdGhpcy5kYXRhU291cmNlLnBhZ2VSZXF1ZXN0JCh7XG4gICAgICAgIHVybFNlZ21lbnRzLFxuICAgICAgICByb3V0ZXJQYXJhbXMsXG4gICAgICAgIG9uRXJyb3I6IChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKGVyci5zdGF0dXMgPT09IDQwNCkge1xuICAgICAgICAgICAgLy8gZ2V0dGluZyBub3QgZm91bmQgcGF0aFxuICAgICAgICAgICAgY29uc3QgeyBjb25maWcgfSA9IHRoaXMucm91dGVyO1xuICAgICAgICAgICAgbGV0IHJvdXRlNDA0ID0gY29uZmlnLmZpbmQoKHsgZGF0YSB9KSA9PiBkYXRhPy5pZCA9PT0gJ3BhZ2UtNDA0JyAmJiBkYXRhLmxvY2FsZSA9PT0gcm91dGVyRGF0YS5sb2NhbGUpO1xuICAgICAgICAgICAgaWYgKCFyb3V0ZTQwNCkge1xuICAgICAgICAgICAgICByb3V0ZTQwNCA9IGNvbmZpZy5maW5kKCh7IGRhdGEgfSkgPT4gZGF0YT8uaWQgPT09ICdwYWdlLTQwNCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcGF0aDQwNCA9IHJvdXRlNDA0Py5wYXRoIHx8ICdwYWdlLTQwNCc7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGF0aDQwNF0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYEVycm9yIGxvYWRpbmcgc3RhdGljIGxheW91dCBmb3IgJHt1cmxTZWdtZW50c31gLCBlcnIubWVzc2FnZSk7XG4gICAgICAgICAgICB0aGlzLmxheW91dFN0YXRlLnNldCgnY29udGVudCcsIExheW91dFN0YXRlLkVSUk9SKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pKVxuICAgICkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5sYXlvdXRTdGF0ZS5zZXQoJ2NvbnRlbnQnLCBMYXlvdXRTdGF0ZS5TVUNDRVNTKTtcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5oYW5kbGVSZXNwb25zZShyZXNwb25zZSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -20,6 +20,7 @@ export class MrStaticLayoutComponent extends AbstractLayout {
|
|
|
20
20
|
}
|
|
21
21
|
initPayload() {
|
|
22
22
|
return {
|
|
23
|
+
routerData: this.routerData,
|
|
23
24
|
communication: this.communication,
|
|
24
25
|
configuration: this.configuration,
|
|
25
26
|
mainState: this.mainState,
|
|
@@ -30,8 +31,12 @@ export class MrStaticLayoutComponent extends AbstractLayout {
|
|
|
30
31
|
};
|
|
31
32
|
}
|
|
32
33
|
ngOnInit() {
|
|
33
|
-
this.
|
|
34
|
-
|
|
34
|
+
this.route.data.subscribe((routerData) => {
|
|
35
|
+
this.routerData = routerData;
|
|
36
|
+
// add layout states
|
|
37
|
+
this.layoutState.add('content');
|
|
38
|
+
this.onInit();
|
|
39
|
+
});
|
|
35
40
|
}
|
|
36
41
|
ngOnDestroy() {
|
|
37
42
|
this.onDestroy();
|
|
@@ -43,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
43
48
|
type: Component,
|
|
44
49
|
args: [{ selector: 'mr-static-layout', template: "<div class=\"mr-static mr-layout\"\n *ngIf=\"lb.dataSource\"\n [ngClass]=\"{\n 'is-loading': ( layoutState.get$('content') | async ) == 'LOADING',\n 'is-error': ( layoutState.get$('content') | async ) == 'ERROR'\n }\">\n <!-- STATIC LAYOUT CONTENT -->\n <ng-container [ngSwitch]=\"layoutState.get$('content') | async\">\n <!-- loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-layout__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n\n <!-- error -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n <div class=\"mr-layout__error\">\n <h2>{{ lb.dataSource.errorTitle }}</h2>\n <p>{{ lb.dataSource.errorDescription }}</p>\n </div>\n </ng-container>\n\n <!-- success -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n <div class=\"mr-static__top\">\n <h1 class=\"mr-static__title mr-generated-title-WP\">{{lb.dataSource.title}}</h1>\n <div class=\"mr-static__metadata\">\n <n7-metadata-viewer \n [data]=\"lb.widgets['mr-static-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </div>\n </div>\n \n <div class=\"mr-static__content mr-wp-content\" [innerHTML]=\"lb.dataSource.content | keepHtml\"></div>\n </ng-container>\n \n </ng-container>\n</div>\n" }]
|
|
45
50
|
}], ctorParameters: function () { return [{ type: i1.CommunicationService }, { type: i1.ConfigurationService }, { type: i1.MainStateService }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i3.MrLayoutStateService }, { type: i1.LayoutsConfigurationService }]; } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLWxheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2xheW91dHMvc3RhdGljLWxheW91dC9zdGF0aWMtbGF5b3V0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvbGF5b3V0cy9zdGF0aWMtbGF5b3V0L3N0YXRpYy1sYXlvdXQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQ0wsY0FBYyxHQUtmLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUFFLG9CQUFvQixJQUFJLE1BQU0sRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7OztBQU14RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsY0FBYztJQUd6RCxZQUNVLGFBQW1DLEVBQ25DLGFBQW1DLEVBQ25DLFNBQTJCLEVBQzNCLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZixXQUFpQyxFQUN4QyxvQkFBaUQ7UUFFakQsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBUjFELGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNmLGdCQUFXLEdBQVgsV0FBVyxDQUFzQjtJQUkxQyxDQUFDO0lBRVMsV0FBVztRQUNuQixPQUFPO1lBQ0wsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFO1NBQ25DLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1lBQzdCLG9CQUFvQjtZQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDOztxSEF2Q1UsdUJBQXVCO3lHQUF2Qix1QkFBdUIsK0VDaEJwQywwL0NBdUNBOzRGRHZCYSx1QkFBdUI7a0JBSm5DLFNBQVM7K0JBQ0Usa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIERhdGEsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBBYnN0cmFjdExheW91dCxcbiAgQ29tbXVuaWNhdGlvblNlcnZpY2UsXG4gIENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBNYWluU3RhdGVTZXJ2aWNlLFxuICBMYXlvdXRzQ29uZmlndXJhdGlvblNlcnZpY2UsXG59IGZyb20gJ0BuZXQ3L2JvaWxlcnBsYXRlLWNvbW1vbic7XG5pbXBvcnQgeyBNckxheW91dFN0YXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xheW91dC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1yU3RhdGljTGF5b3V0Q29uZmlnIGFzIGNvbmZpZyB9IGZyb20gJy4vc3RhdGljLWxheW91dC5jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtci1zdGF0aWMtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXRpYy1sYXlvdXQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1yU3RhdGljTGF5b3V0Q29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RMYXlvdXQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcm91dGVyRGF0YTogRGF0YTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbW11bmljYXRpb246IENvbW11bmljYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtYWluU3RhdGU6IE1haW5TdGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwdWJsaWMgbGF5b3V0U3RhdGU6IE1yTGF5b3V0U3RhdGVTZXJ2aWNlLFxuICAgIGxheW91dHNDb25maWd1cmF0aW9uOiBMYXlvdXRzQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKGxheW91dHNDb25maWd1cmF0aW9uLmdldCgnTXJTdGF0aWNMYXlvdXRDb25maWcnKSB8fCBjb25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRQYXlsb2FkKCkge1xuICAgIHJldHVybiB7XG4gICAgICByb3V0ZXJEYXRhOiB0aGlzLnJvdXRlckRhdGEsXG4gICAgICBjb21tdW5pY2F0aW9uOiB0aGlzLmNvbW11bmljYXRpb24sXG4gICAgICBjb25maWd1cmF0aW9uOiB0aGlzLmNvbmZpZ3VyYXRpb24sXG4gICAgICBtYWluU3RhdGU6IHRoaXMubWFpblN0YXRlLFxuICAgICAgbGF5b3V0U3RhdGU6IHRoaXMubGF5b3V0U3RhdGUsXG4gICAgICByb3V0ZTogdGhpcy5yb3V0ZSxcbiAgICAgIHJvdXRlcjogdGhpcy5yb3V0ZXIsXG4gICAgICBvcHRpb25zOiB0aGlzLmNvbmZpZy5vcHRpb25zIHx8IHt9XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucm91dGUuZGF0YS5zdWJzY3JpYmUoKHJvdXRlckRhdGEpID0+IHtcbiAgICAgIHRoaXMucm91dGVyRGF0YSA9IHJvdXRlckRhdGE7XG4gICAgICAvLyBhZGQgbGF5b3V0IHN0YXRlc1xuICAgICAgdGhpcy5sYXlvdXRTdGF0ZS5hZGQoJ2NvbnRlbnQnKTtcbiAgICAgIHRoaXMub25Jbml0KCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uRGVzdHJveSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibXItc3RhdGljIG1yLWxheW91dFwiXG4gICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZVwiXG4gICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ2lzLWxvYWRpbmcnOiAoIGxheW91dFN0YXRlLmdldCQoJ2NvbnRlbnQnKSB8IGFzeW5jICkgPT0gJ0xPQURJTkcnLFxuICAgICAgICAnaXMtZXJyb3InOiAoIGxheW91dFN0YXRlLmdldCQoJ2NvbnRlbnQnKSB8IGFzeW5jICkgPT0gJ0VSUk9SJ1xuICAgICAgfVwiPlxuICAgIDwhLS0gU1RBVElDIExBWU9VVCBDT05URU5UIC0tPlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImxheW91dFN0YXRlLmdldCQoJ2NvbnRlbnQnKSB8IGFzeW5jXCI+XG4gICAgICAgIDwhLS0gbG9hZGluZyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ0xPQURJTkcnXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItbGF5b3V0X19sb2FkZXJcIj5cbiAgICAgICAgICAgICAgICA8bjctbG9hZGVyPjwvbjctbG9hZGVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gZXJyb3IgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidFUlJPUidcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1sYXlvdXRfX2Vycm9yXCI+XG4gICAgICAgICAgICAgICAgPGgyPnt7IGxiLmRhdGFTb3VyY2UuZXJyb3JUaXRsZSB9fTwvaDI+XG4gICAgICAgICAgICAgICAgPHA+e3sgbGIuZGF0YVNvdXJjZS5lcnJvckRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gc3VjY2VzcyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ1NVQ0NFU1MnXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItc3RhdGljX190b3BcIj5cbiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9XCJtci1zdGF0aWNfX3RpdGxlIG1yLWdlbmVyYXRlZC10aXRsZS1XUFwiPnt7bGIuZGF0YVNvdXJjZS50aXRsZX19PC9oMT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItc3RhdGljX19tZXRhZGF0YVwiPlxuICAgICAgICAgICAgICAgICAgICA8bjctbWV0YWRhdGEtdmlld2VyIFxuICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci1zdGF0aWMtbWV0YWRhdGEnXS5kcy5vdXQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgICAgICAgPC9uNy1tZXRhZGF0YS12aWV3ZXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLXN0YXRpY19fY29udGVudCBtci13cC1jb250ZW50XCIgW2lubmVySFRNTF09XCJsYi5kYXRhU291cmNlLmNvbnRlbnQgfCBrZWVwSHRtbFwiPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICBcbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
@@ -6348,17 +6348,28 @@ class MrStaticLayoutDS extends LayoutDataSource {
|
|
|
6348
6348
|
this.communication = payload.communication;
|
|
6349
6349
|
this.configuration = payload.configuration;
|
|
6350
6350
|
this.mainState = payload.mainState;
|
|
6351
|
+
this.routerData = payload.routerData;
|
|
6352
|
+
this.pageConfig = this.configuration.get(this.routerData.configId);
|
|
6351
6353
|
}
|
|
6352
|
-
pageRequest$(urlSegments, onError) {
|
|
6353
|
-
|
|
6354
|
-
|
|
6354
|
+
pageRequest$({ urlSegments, routerParams, onError }) {
|
|
6355
|
+
const { slug } = routerParams;
|
|
6356
|
+
const { apiPoint } = this.pageConfig || {};
|
|
6357
|
+
// no locale slug setup
|
|
6358
|
+
if (!slug) {
|
|
6359
|
+
if (urlSegments.length > 1) {
|
|
6360
|
+
return this.communication.request$(apiPoint || 'post', {
|
|
6361
|
+
onError,
|
|
6362
|
+
urlParams: urlSegments[1].path,
|
|
6363
|
+
});
|
|
6364
|
+
}
|
|
6365
|
+
return this.communication.request$(apiPoint || 'static', {
|
|
6355
6366
|
onError,
|
|
6356
|
-
urlParams: urlSegments[
|
|
6367
|
+
urlParams: urlSegments[0].path,
|
|
6357
6368
|
});
|
|
6358
6369
|
}
|
|
6359
|
-
return this.communication.request$('static', {
|
|
6370
|
+
return this.communication.request$(apiPoint || 'static', {
|
|
6360
6371
|
onError,
|
|
6361
|
-
urlParams:
|
|
6372
|
+
urlParams: slug,
|
|
6362
6373
|
});
|
|
6363
6374
|
}
|
|
6364
6375
|
handleResponse(response) {
|
|
@@ -6405,18 +6416,31 @@ class MrStaticLayoutEH extends EventHandler {
|
|
|
6405
6416
|
});
|
|
6406
6417
|
}
|
|
6407
6418
|
listenRoute() {
|
|
6408
|
-
this.route.url.pipe(takeUntil(this.destroy$),
|
|
6419
|
+
this.route.url.pipe(takeUntil(this.destroy$), map((urlSegments) => ({
|
|
6420
|
+
urlSegments,
|
|
6421
|
+
routerParams: this.route.snapshot.params,
|
|
6422
|
+
routerData: this.route.snapshot.data,
|
|
6423
|
+
})), tap(() => {
|
|
6409
6424
|
this.layoutState.set('content', LayoutState.LOADING);
|
|
6410
|
-
}), switchMap((urlSegments) => this.dataSource.pageRequest$(
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6415
|
-
|
|
6416
|
-
|
|
6425
|
+
}), switchMap(({ urlSegments, routerParams, routerData }) => this.dataSource.pageRequest$({
|
|
6426
|
+
urlSegments,
|
|
6427
|
+
routerParams,
|
|
6428
|
+
onError: (err) => {
|
|
6429
|
+
if (err.status === 404) {
|
|
6430
|
+
// getting not found path
|
|
6431
|
+
const { config } = this.router;
|
|
6432
|
+
let route404 = config.find(({ data }) => (data === null || data === void 0 ? void 0 : data.id) === 'page-404' && data.locale === routerData.locale);
|
|
6433
|
+
if (!route404) {
|
|
6434
|
+
route404 = config.find(({ data }) => (data === null || data === void 0 ? void 0 : data.id) === 'page-404');
|
|
6435
|
+
}
|
|
6436
|
+
const path404 = (route404 === null || route404 === void 0 ? void 0 : route404.path) || 'page-404';
|
|
6437
|
+
this.router.navigate([path404]);
|
|
6438
|
+
}
|
|
6439
|
+
else {
|
|
6440
|
+
console.warn(`Error loading static layout for ${urlSegments}`, err.message);
|
|
6441
|
+
this.layoutState.set('content', LayoutState.ERROR);
|
|
6442
|
+
}
|
|
6417
6443
|
}
|
|
6418
|
-
console.warn(`Error loading static layout for ${urlSegments}`, err.message);
|
|
6419
|
-
this.layoutState.set('content', LayoutState.ERROR);
|
|
6420
6444
|
}))).subscribe((response) => {
|
|
6421
6445
|
this.layoutState.set('content', LayoutState.SUCCESS);
|
|
6422
6446
|
this.dataSource.handleResponse(response);
|
|
@@ -6448,6 +6472,7 @@ class MrStaticLayoutComponent extends AbstractLayout {
|
|
|
6448
6472
|
}
|
|
6449
6473
|
initPayload() {
|
|
6450
6474
|
return {
|
|
6475
|
+
routerData: this.routerData,
|
|
6451
6476
|
communication: this.communication,
|
|
6452
6477
|
configuration: this.configuration,
|
|
6453
6478
|
mainState: this.mainState,
|
|
@@ -6458,8 +6483,12 @@ class MrStaticLayoutComponent extends AbstractLayout {
|
|
|
6458
6483
|
};
|
|
6459
6484
|
}
|
|
6460
6485
|
ngOnInit() {
|
|
6461
|
-
this.
|
|
6462
|
-
|
|
6486
|
+
this.route.data.subscribe((routerData) => {
|
|
6487
|
+
this.routerData = routerData;
|
|
6488
|
+
// add layout states
|
|
6489
|
+
this.layoutState.add('content');
|
|
6490
|
+
this.onInit();
|
|
6491
|
+
});
|
|
6463
6492
|
}
|
|
6464
6493
|
ngOnDestroy() {
|
|
6465
6494
|
this.onDestroy();
|