@veloceapps/sdk 7.0.0-1 → 7.0.0-10
Sign up to get free protection for your applications and to get access to all the features.
- package/bundles/veloceapps-sdk-cms.umd.js +138 -20
- package/bundles/veloceapps-sdk-cms.umd.js.map +1 -1
- package/bundles/veloceapps-sdk.umd.js.map +1 -1
- package/cms/cms.actions.d.ts +10 -0
- package/cms/cms.elements.d.ts +1 -1
- package/cms/cms.layouts.d.ts +4 -0
- package/cms/components/preview/preview.component.d.ts +3 -2
- package/cms/plugins/region.plugin.d.ts +17 -0
- package/cms/types/common.types.d.ts +9 -2
- package/cms/types/index.d.ts +0 -1
- package/cms/types/layouts.types.d.ts +74 -0
- package/cms/utils/element.utils.d.ts +1 -1
- package/cms/vendor-map.d.ts +1 -0
- package/esm2015/cms/cms.actions.js +15 -1
- package/esm2015/cms/cms.elements.js +12 -1
- package/esm2015/cms/cms.layouts.js +179 -0
- package/esm2015/cms/components/preview/preview.component.js +23 -6
- package/esm2015/cms/plugins/region.plugin.js +58 -0
- package/esm2015/cms/types/common.types.js +1 -1
- package/esm2015/cms/types/index.js +1 -2
- package/esm2015/cms/types/layouts.types.js +2 -0
- package/esm2015/cms/utils/element.utils.js +10 -14
- package/esm2015/cms/utils/elements-resolver.js +8 -2
- package/esm2015/src/components/header/metrics/metrics.component.js +2 -2
- package/esm2015/src/types/index.js +2 -1
- package/esm2015/{cms → src}/types/metrics.types.js +1 -1
- package/fesm2015/veloceapps-sdk-cms.js +292 -21
- package/fesm2015/veloceapps-sdk-cms.js.map +1 -1
- package/fesm2015/veloceapps-sdk.js.map +1 -1
- package/package.json +2 -2
- package/src/components/header/metrics/metrics.component.d.ts +1 -1
- package/src/types/index.d.ts +1 -0
- /package/{cms → src}/types/metrics.types.d.ts +0 -0
package/cms/cms.actions.d.ts
CHANGED
@@ -24,3 +24,13 @@ export declare const RemoteCancelAction: () => IntegrationAction;
|
|
24
24
|
export declare const SwitchObjectAction: (payload: {
|
25
25
|
id: string;
|
26
26
|
}) => IntegrationAction;
|
27
|
+
export declare namespace CmsAction {
|
28
|
+
const GO_TO_PAGE = "[CMS]_GO_TO_PAGE";
|
29
|
+
/**
|
30
|
+
* Navigate UI definition to a specific page
|
31
|
+
*
|
32
|
+
* @param pageName name of the page
|
33
|
+
* @returns void
|
34
|
+
*/
|
35
|
+
const GoToPage: (pageName: string) => IntegrationAction;
|
36
|
+
}
|
package/cms/cms.elements.d.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
|
2
2
|
import { ConfigurationRuntimeService, ConfigurationService, UIDefinition } from '@veloceapps/sdk/core';
|
3
3
|
import { MessageService } from 'primeng/api';
|
4
|
-
import { BehaviorSubject } from 'rxjs';
|
4
|
+
import { BehaviorSubject, Observable } from 'rxjs';
|
5
5
|
import { RuntimeService } from '../../modules/runtime/services/runtime.service';
|
6
6
|
import { IntegrationState } from '../../services';
|
7
7
|
import { ElementMetadata } from '../../types/common.types';
|
@@ -22,11 +22,12 @@ export declare class PreviewComponent implements OnInit, OnDestroy {
|
|
22
22
|
uiDefinition?: UIDefinition;
|
23
23
|
config?: CMSPreviewConfig;
|
24
24
|
state$: BehaviorSubject<State>;
|
25
|
-
elements
|
25
|
+
elements$: Observable<ElementMetadata[]>;
|
26
26
|
private destroy$;
|
27
27
|
constructor(runtimeService: RuntimeService, configurationService: ConfigurationService, messageService: MessageService, configurationRuntimeService: ConfigurationRuntimeService, integrationState: IntegrationState, cdr: ChangeDetectorRef);
|
28
28
|
ngOnInit(): void;
|
29
29
|
ngOnDestroy(): void;
|
30
|
+
trackBy(_: number, el: ElementMetadata): string;
|
30
31
|
private initializeConfiguration$;
|
31
32
|
private startPreview;
|
32
33
|
static ɵfac: i0.ɵɵFactoryDeclaration<PreviewComponent, never>;
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
2
|
+
import { ElementComponent } from '../components/element.component';
|
3
|
+
import { PluginComponent } from '../components/plugin.component';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class RegionPlugin implements PluginComponent, OnDestroy {
|
6
|
+
host: ElementComponent;
|
7
|
+
private metadata;
|
8
|
+
private document;
|
9
|
+
private el;
|
10
|
+
private regionNameEl;
|
11
|
+
private destroy$;
|
12
|
+
constructor(host: ElementComponent);
|
13
|
+
ngOnDestroy(): void;
|
14
|
+
private addRegionName;
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RegionPlugin, never>;
|
16
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RegionPlugin, never, never, {}, {}, never>;
|
17
|
+
}
|
@@ -1,7 +1,8 @@
|
|
1
1
|
import { Dictionary } from 'lodash';
|
2
2
|
import { Entity } from '../engine/models/entity';
|
3
3
|
import { Plugin } from '../engine/models/plugin';
|
4
|
-
|
4
|
+
import { PageLayout } from './layouts.types';
|
5
|
+
export declare type ELEMENT_TYPE = 'CUSTOM' | 'CONTAINER' | 'SERVICE' | 'REFERENCE' | 'PAGE' | 'REGION';
|
5
6
|
export declare type ElementStyleDeclaration = Partial<CSSStyleDeclaration>;
|
6
7
|
export interface ElementConfig {
|
7
8
|
component: typeof Entity;
|
@@ -97,9 +98,15 @@ export interface ElementDefaultMetadata {
|
|
97
98
|
* Contains styles configurable from UI builder
|
98
99
|
*/
|
99
100
|
configuredStyles?: ElementStyleDeclaration;
|
101
|
+
/**
|
102
|
+
* Page layout
|
103
|
+
*
|
104
|
+
* Used only when `type === PAGE`
|
105
|
+
*/
|
106
|
+
layout?: PageLayout;
|
100
107
|
}
|
101
108
|
export interface ElementMetadata extends Omit<ElementDefaultMetadata, 'children'> {
|
102
|
-
path
|
109
|
+
path: string;
|
103
110
|
children: ElementMetadata[];
|
104
111
|
template?: string;
|
105
112
|
styles?: string;
|
package/cms/types/index.d.ts
CHANGED
@@ -0,0 +1,74 @@
|
|
1
|
+
/**
|
2
|
+
* List of available layouts:
|
3
|
+
*
|
4
|
+
LAYOUT_1
|
5
|
+
+-------------------------+
|
6
|
+
| 1. HEADER |
|
7
|
+
|-------------------------|
|
8
|
+
| |
|
9
|
+
| 2. CONTAINER |
|
10
|
+
| |
|
11
|
+
|-------------------------|
|
12
|
+
| 3. FOOTER |
|
13
|
+
+-------------------------+
|
14
|
+
|
15
|
+
LAYOUT_2
|
16
|
+
+-------------------------+
|
17
|
+
| 1. HEADER |
|
18
|
+
|------------+------------|
|
19
|
+
| | |
|
20
|
+
| 2. LEFT | 3. RIGHT |
|
21
|
+
| | |
|
22
|
+
|------------+------------|
|
23
|
+
| 4. FOOTER |
|
24
|
+
+-------------------------+
|
25
|
+
|
26
|
+
LAYOUT_3
|
27
|
+
+-------------------------+
|
28
|
+
| |
|
29
|
+
| |
|
30
|
+
| 1. CONTAINER |
|
31
|
+
| |
|
32
|
+
| |
|
33
|
+
|-------------------------|
|
34
|
+
| 2. FOOTER |
|
35
|
+
+-------------------------+
|
36
|
+
|
37
|
+
LAYOUT_4
|
38
|
+
+-------------------------+
|
39
|
+
| | |
|
40
|
+
| | |
|
41
|
+
| 1. LEFT | 2. RIGHT |
|
42
|
+
| | |
|
43
|
+
| | |
|
44
|
+
|------------+------------|
|
45
|
+
| 3. FOOTER |
|
46
|
+
+-------------------------+
|
47
|
+
|
48
|
+
LAYOUT_5
|
49
|
+
+-------------------------+
|
50
|
+
| 1. HEADER |
|
51
|
+
|-------------------------|
|
52
|
+
| |
|
53
|
+
| |
|
54
|
+
| 2. CONTAINER |
|
55
|
+
| |
|
56
|
+
| |
|
57
|
+
+-------------------------+
|
58
|
+
|
59
|
+
LAYOUT_6
|
60
|
+
+-------------------------+
|
61
|
+
| |
|
62
|
+
| |
|
63
|
+
| |
|
64
|
+
| 1. CONTAINER |
|
65
|
+
| |
|
66
|
+
| |
|
67
|
+
| |
|
68
|
+
+-------------------------+
|
69
|
+
|
70
|
+
*/
|
71
|
+
export declare type PageLayout = 'LAYOUT_1' | 'LAYOUT_2' | 'LAYOUT_3' | 'LAYOUT_4' | 'LAYOUT_5' | 'LAYOUT_6';
|
72
|
+
export interface PageLayoutConfig {
|
73
|
+
styles?: string;
|
74
|
+
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { UIElement } from '@veloceapps/sdk/core';
|
2
|
-
import { ElementConfig, ElementDefaultMetadata, ElementMetadata
|
2
|
+
import { ELEMENT_TYPE, ElementConfig, ElementDefaultMetadata, ElementMetadata } from '../types';
|
3
3
|
export declare class UiBuildError extends Error {
|
4
4
|
affectedMetadata: ElementMetadata;
|
5
5
|
constructor(message: string, affectedMetadata: ElementMetadata);
|
package/cms/vendor-map.d.ts
CHANGED
@@ -720,6 +720,7 @@ export declare const vendorMap: {
|
|
720
720
|
SwitchObjectAction: (payload: {
|
721
721
|
id: string;
|
722
722
|
}) => import("@veloceapps/sdk/cms").IntegrationAction<any>;
|
723
|
+
CmsAction: typeof cmsActions.CmsAction;
|
723
724
|
DEFAULT_PLUGINS_TOKEN: angularCore.InjectionToken<typeof import("./engine/models/plugin").Plugin[]>;
|
724
725
|
UI_DEFINITION_METADATA: angularCore.InjectionToken<import("@veloceapps/sdk/core").UIDefinitionMetadata>;
|
725
726
|
ELEMENT_METADATA: angularCore.InjectionToken<import("@veloceapps/sdk/cms").ElementMetadata>;
|
@@ -39,4 +39,18 @@ export const SwitchObjectAction = (payload) => ({
|
|
39
39
|
type: FlowAction.FLOW_SWITCH_OBJECT,
|
40
40
|
payload,
|
41
41
|
});
|
42
|
-
|
42
|
+
export var CmsAction;
|
43
|
+
(function (CmsAction) {
|
44
|
+
CmsAction.GO_TO_PAGE = '[CMS]_GO_TO_PAGE';
|
45
|
+
/**
|
46
|
+
* Navigate UI definition to a specific page
|
47
|
+
*
|
48
|
+
* @param pageName name of the page
|
49
|
+
* @returns void
|
50
|
+
*/
|
51
|
+
CmsAction.GoToPage = (pageName) => ({
|
52
|
+
type: CmsAction.GO_TO_PAGE,
|
53
|
+
payload: { pageName },
|
54
|
+
});
|
55
|
+
})(CmsAction || (CmsAction = {}));
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21zLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY21zLmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFOLElBQVksVUFVWDtBQVZELFdBQVksVUFBVTtJQUNwQiwrREFBaUQsQ0FBQTtJQUNqRCx1REFBeUMsQ0FBQTtJQUN6QyxtRUFBcUQsQ0FBQTtJQUNyRCxtRkFBcUUsQ0FBQTtJQUNyRSxxREFBdUMsQ0FBQTtJQUN2Qyx1REFBeUMsQ0FBQTtJQUN6Qyx1REFBeUMsQ0FBQTtJQUN6QywyQ0FBNkIsQ0FBQTtJQUM3Qiw2Q0FBK0IsQ0FBQTtBQUNqQyxDQUFDLEVBVlcsVUFBVSxLQUFWLFVBQVUsUUFVckI7QUFFRCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLEVBQ3JDLFVBQVUsRUFDVixTQUFTLEdBSVYsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDeEIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxzQkFBc0I7SUFDdkMsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRTtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUMxRCxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUMvRCxJQUFJLEVBQUUsVUFBVSxDQUFDLHdCQUF3QjtDQUMxQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN2RSxJQUFJLEVBQUUsVUFBVSxDQUFDLGdDQUFnQztDQUNsRCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN4RCxJQUFJLEVBQUUsVUFBVSxDQUFDLGlCQUFpQjtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN6RCxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN6RCxJQUFJLEVBQUUsVUFBVSxDQUFDLFlBQVk7Q0FDOUIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsR0FBc0IsRUFBRSxDQUFDLENBQUM7SUFDMUQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxhQUFhO0NBQy9CLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsT0FBdUIsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDakYsSUFBSSxFQUFFLFVBQVUsQ0FBQyxrQkFBa0I7SUFDbkMsT0FBTztDQUNSLENBQUMsQ0FBQztBQUVILE1BQU0sS0FBVyxTQUFTLENBYXpCO0FBYkQsV0FBaUIsU0FBUztJQUNYLG9CQUFVLEdBQUcsa0JBQWtCLENBQUM7SUFFN0M7Ozs7O09BS0c7SUFDVSxrQkFBUSxHQUFHLENBQUMsUUFBZ0IsRUFBcUIsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSxFQUFFLFVBQUEsVUFBVTtRQUNoQixPQUFPLEVBQUUsRUFBRSxRQUFRLEVBQUU7S0FDdEIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxFQWJnQixTQUFTLEtBQVQsU0FBUyxRQWF6QiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1uYW1lc3BhY2UgKi9cbmltcG9ydCB7IEludGVncmF0aW9uQWN0aW9uIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBlbnVtIEZsb3dBY3Rpb24ge1xuICBGTE9XX0NPTkZJR1VSRV9QUk9EVUNUID0gJ0ZMT1dfQ09ORklHVVJFX1BST0RVQ1QnLFxuICBGTE9XX05BVklHQVRFX0JBQ0sgPSAnRkxPV19OQVZJR0FURV9CQUNLJyxcbiAgRkxPV19OQVZJR0FURV9UT19DQVRBTE9HID0gJ0ZMT1dfTkFWSUdBVEVfVE9fQ0FUQUxPRycsXG4gIEZMT1dfQVBQTFlfUFJPRFVDVF9DT05GSUdVUkFUSU9OID0gJ0ZMT1dfQVBQTFlfUFJPRFVDVF9DT05GSUdVUkFUSU9OJyxcbiAgRkxPV19PUEVOX0RPQ19HRU4gPSAnRkxPV19PUEVOX0RPQ19HRU4nLFxuICBGTE9XX0NMT1NFX0RPQ19HRU4gPSAnRkxPV19DTE9TRV9ET0NfR0VOJyxcbiAgRkxPV19TV0lUQ0hfT0JKRUNUID0gJ0ZMT1dfU1dJVENIX09CSkVDVCcsXG4gIFJFTU9URV9BUFBMWSA9ICdSRU1PVEVfQVBQTFknLFxuICBSRU1PVEVfQ0FOQ0VMID0gJ1JFTU9URV9DQU5DRUwnLFxufVxuXG5leHBvcnQgY29uc3QgQ29uZmlndXJlUHJvZHVjdEFjdGlvbiA9ICh7XG4gIGxpbmVJdGVtSWQsXG4gIHByb2R1Y3RJZCxcbn06IHtcbiAgbGluZUl0ZW1JZD86IHN0cmluZztcbiAgcHJvZHVjdElkPzogc3RyaW5nO1xufSk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19DT05GSUdVUkVfUFJPRFVDVCxcbiAgcGF5bG9hZDogeyBsaW5lSXRlbUlkLCBwcm9kdWN0SWQgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgTmF2aWdhdGVCYWNrQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19OQVZJR0FURV9CQUNLLFxufSk7XG5cbmV4cG9ydCBjb25zdCBOYXZpZ2F0ZVRvQ2F0YWxvZ0FjdGlvbiA9ICgpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLkZMT1dfTkFWSUdBVEVfVE9fQ0FUQUxPRyxcbn0pO1xuXG5leHBvcnQgY29uc3QgQXBwbHlQcm9kdWN0Q29uZmlndXJhdGlvbkFjdGlvbiA9ICgpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLkZMT1dfQVBQTFlfUFJPRFVDVF9DT05GSUdVUkFUSU9OLFxufSk7XG5cbmV4cG9ydCBjb25zdCBPcGVuRG9jR2VuQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19PUEVOX0RPQ19HRU4sXG59KTtcblxuZXhwb3J0IGNvbnN0IENsb3NlRG9jR2VuQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19DTE9TRV9ET0NfR0VOLFxufSk7XG5cbmV4cG9ydCBjb25zdCBSZW1vdGVBcHBseUFjdGlvbiA9ICgpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLlJFTU9URV9BUFBMWSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUmVtb3RlQ2FuY2VsQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uUkVNT1RFX0NBTkNFTCxcbn0pO1xuXG5leHBvcnQgY29uc3QgU3dpdGNoT2JqZWN0QWN0aW9uID0gKHBheWxvYWQ6IHsgaWQ6IHN0cmluZyB9KTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5GTE9XX1NXSVRDSF9PQkpFQ1QsXG4gIHBheWxvYWQsXG59KTtcblxuZXhwb3J0IG5hbWVzcGFjZSBDbXNBY3Rpb24ge1xuICBleHBvcnQgY29uc3QgR09fVE9fUEFHRSA9ICdbQ01TXV9HT19UT19QQUdFJztcblxuICAvKipcbiAgICogTmF2aWdhdGUgVUkgZGVmaW5pdGlvbiB0byBhIHNwZWNpZmljIHBhZ2VcbiAgICpcbiAgICogQHBhcmFtIHBhZ2VOYW1lIG5hbWUgb2YgdGhlIHBhZ2VcbiAgICogQHJldHVybnMgdm9pZFxuICAgKi9cbiAgZXhwb3J0IGNvbnN0IEdvVG9QYWdlID0gKHBhZ2VOYW1lOiBzdHJpbmcpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICAgIHR5cGU6IEdPX1RPX1BBR0UsXG4gICAgcGF5bG9hZDogeyBwYWdlTmFtZSB9LFxuICB9KTtcbn1cbiJdfQ==
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { ElementComponent } from './components/element.component';
|
2
2
|
import { IOPlugin } from './plugins/io.plugin';
|
3
|
+
import { RegionPlugin } from './plugins/region.plugin';
|
3
4
|
import { ScriptPlugin } from './plugins/script.plugin';
|
4
5
|
/*
|
5
6
|
* ScriptPlugin must always be the last plugin in the list to make sure user code is running after all pre-initializers.
|
@@ -25,5 +26,15 @@ export const CONFIG = {
|
|
25
26
|
plugins: [IOPlugin, ScriptPlugin],
|
26
27
|
suppressTemplate: true,
|
27
28
|
},
|
29
|
+
PAGE: {
|
30
|
+
component: ElementComponent,
|
31
|
+
defaultTemplate: '<element-children></element-children>',
|
32
|
+
plugins: [IOPlugin, ScriptPlugin],
|
33
|
+
},
|
34
|
+
REGION: {
|
35
|
+
component: ElementComponent,
|
36
|
+
defaultTemplate: '<element-children></element-children>',
|
37
|
+
plugins: [IOPlugin, ScriptPlugin, RegionPlugin],
|
38
|
+
},
|
28
39
|
};
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21zLmVsZW1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2Ntcy5lbGVtZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd2RDs7R0FFRztBQUVILE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBNkM7SUFDOUQsTUFBTSxFQUFFO1FBQ04sU0FBUyxFQUFFLGdCQUFnQjtRQUMzQixPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDO0tBQ2xDO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsU0FBUyxFQUFFLGdCQUFnQjtRQUMzQixlQUFlLEVBQUUsdUNBQXVDO1FBQ3hELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztLQUN4QjtJQUNELE9BQU8sRUFBRTtRQUNQLFNBQVMsRUFBRSxnQkFBZ0I7UUFDM0IsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQztRQUNqQyxnQkFBZ0IsRUFBRSxJQUFJO1FBQ3RCLGNBQWMsRUFBRSxJQUFJO0tBQ3JCO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsU0FBUyxFQUFFLGdCQUFnQjtRQUMzQixPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDO1FBQ2pDLGdCQUFnQixFQUFFLElBQUk7S0FDdkI7SUFDRCxJQUFJLEVBQUU7UUFDSixTQUFTLEVBQUUsZ0JBQWdCO1FBQzNCLGVBQWUsRUFBRSx1Q0FBdUM7UUFDeEQsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQztLQUNsQztJQUNELE1BQU0sRUFBRTtRQUNOLFNBQVMsRUFBRSxnQkFBZ0I7UUFDM0IsZUFBZSxFQUFFLHVDQUF1QztRQUN4RCxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFlBQVksQ0FBQztLQUNoRDtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VsZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IElPUGx1Z2luIH0gZnJvbSAnLi9wbHVnaW5zL2lvLnBsdWdpbic7XG5pbXBvcnQgeyBSZWdpb25QbHVnaW4gfSBmcm9tICcuL3BsdWdpbnMvcmVnaW9uLnBsdWdpbic7XG5pbXBvcnQgeyBTY3JpcHRQbHVnaW4gfSBmcm9tICcuL3BsdWdpbnMvc2NyaXB0LnBsdWdpbic7XG5pbXBvcnQgeyBFTEVNRU5UX1RZUEUsIEVsZW1lbnRDb25maWcgfSBmcm9tICcuL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5cbi8qXG4gKiBTY3JpcHRQbHVnaW4gbXVzdCBhbHdheXMgYmUgdGhlIGxhc3QgcGx1Z2luIGluIHRoZSBsaXN0IHRvIG1ha2Ugc3VyZSB1c2VyIGNvZGUgaXMgcnVubmluZyBhZnRlciBhbGwgcHJlLWluaXRpYWxpemVycy5cbiAqL1xuXG5leHBvcnQgY29uc3QgQ09ORklHOiB7IFtrZXkgaW4gRUxFTUVOVF9UWVBFXTogRWxlbWVudENvbmZpZyB9ID0ge1xuICBDVVNUT006IHtcbiAgICBjb21wb25lbnQ6IEVsZW1lbnRDb21wb25lbnQsXG4gICAgcGx1Z2luczogW0lPUGx1Z2luLCBTY3JpcHRQbHVnaW5dLFxuICB9LFxuICBDT05UQUlORVI6IHtcbiAgICBjb21wb25lbnQ6IEVsZW1lbnRDb21wb25lbnQsXG4gICAgZGVmYXVsdFRlbXBsYXRlOiAnPGVsZW1lbnQtY2hpbGRyZW4+PC9lbGVtZW50LWNoaWxkcmVuPicsXG4gICAgcGx1Z2luczogW1NjcmlwdFBsdWdpbl0sXG4gIH0sXG4gIFNFUlZJQ0U6IHtcbiAgICBjb21wb25lbnQ6IEVsZW1lbnRDb21wb25lbnQsXG4gICAgcGx1Z2luczogW0lPUGx1Z2luLCBTY3JpcHRQbHVnaW5dLFxuICAgIHN1cHByZXNzVGVtcGxhdGU6IHRydWUsXG4gICAgc3VwcHJlc3NTdHlsZXM6IHRydWUsXG4gIH0sXG4gIFJFRkVSRU5DRToge1xuICAgIGNvbXBvbmVudDogRWxlbWVudENvbXBvbmVudCxcbiAgICBwbHVnaW5zOiBbSU9QbHVnaW4sIFNjcmlwdFBsdWdpbl0sXG4gICAgc3VwcHJlc3NUZW1wbGF0ZTogdHJ1ZSxcbiAgfSxcbiAgUEFHRToge1xuICAgIGNvbXBvbmVudDogRWxlbWVudENvbXBvbmVudCxcbiAgICBkZWZhdWx0VGVtcGxhdGU6ICc8ZWxlbWVudC1jaGlsZHJlbj48L2VsZW1lbnQtY2hpbGRyZW4+JyxcbiAgICBwbHVnaW5zOiBbSU9QbHVnaW4sIFNjcmlwdFBsdWdpbl0sXG4gIH0sXG4gIFJFR0lPTjoge1xuICAgIGNvbXBvbmVudDogRWxlbWVudENvbXBvbmVudCxcbiAgICBkZWZhdWx0VGVtcGxhdGU6ICc8ZWxlbWVudC1jaGlsZHJlbj48L2VsZW1lbnQtY2hpbGRyZW4+JyxcbiAgICBwbHVnaW5zOiBbSU9QbHVnaW4sIFNjcmlwdFBsdWdpbiwgUmVnaW9uUGx1Z2luXSxcbiAgfSxcbn07XG4iXX0=
|
@@ -0,0 +1,179 @@
|
|
1
|
+
export const LAYOUT = {
|
2
|
+
LAYOUT_1: {
|
3
|
+
styles: `
|
4
|
+
/* start of LAYOUT_1 styles */
|
5
|
+
:host {
|
6
|
+
height: 100%;
|
7
|
+
display: grid;
|
8
|
+
grid:
|
9
|
+
"header" auto
|
10
|
+
"main" 1fr
|
11
|
+
"footer" auto
|
12
|
+
/ 1fr;
|
13
|
+
gap: 10px;
|
14
|
+
padding: 10px;
|
15
|
+
}
|
16
|
+
|
17
|
+
:host ::ng-deep element-children > vl-cms-element-renderer {
|
18
|
+
&:nth-child(1) > vl-element {
|
19
|
+
min-height: 80px;
|
20
|
+
grid-area: header;
|
21
|
+
}
|
22
|
+
|
23
|
+
&:nth-child(2) > vl-element {
|
24
|
+
grid-area: main;
|
25
|
+
}
|
26
|
+
|
27
|
+
&:nth-child(3) > vl-element {
|
28
|
+
min-height: 80px;
|
29
|
+
grid-area: footer;
|
30
|
+
}
|
31
|
+
}
|
32
|
+
/* end of LAYOUT_1 styles */
|
33
|
+
`,
|
34
|
+
},
|
35
|
+
LAYOUT_2: {
|
36
|
+
styles: `
|
37
|
+
/* start of LAYOUT_2 styles */
|
38
|
+
:host {
|
39
|
+
height: 100%;
|
40
|
+
display: grid;
|
41
|
+
grid:
|
42
|
+
"header header" auto
|
43
|
+
"left right" 1fr
|
44
|
+
"footer footer" auto
|
45
|
+
/ 1fr 1fr;
|
46
|
+
gap: 10px;
|
47
|
+
padding: 10px;
|
48
|
+
}
|
49
|
+
|
50
|
+
:host ::ng-deep element-children > vl-cms-element-renderer {
|
51
|
+
&:nth-child(1) > vl-element {
|
52
|
+
min-height: 80px;
|
53
|
+
grid-area: header;
|
54
|
+
}
|
55
|
+
|
56
|
+
&:nth-child(2) > vl-element {
|
57
|
+
grid-area: left;
|
58
|
+
}
|
59
|
+
|
60
|
+
&:nth-child(3) > vl-element {
|
61
|
+
grid-area: right;
|
62
|
+
}
|
63
|
+
|
64
|
+
&:nth-child(4) > vl-element {
|
65
|
+
min-height: 80px;
|
66
|
+
grid-area: footer;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
/* end of LAYOUT_2 styles */
|
70
|
+
`,
|
71
|
+
},
|
72
|
+
LAYOUT_3: {
|
73
|
+
styles: `
|
74
|
+
/* start of LAYOUT_3 styles */
|
75
|
+
:host {
|
76
|
+
height: 100%;
|
77
|
+
display: grid;
|
78
|
+
grid:
|
79
|
+
"main" 1fr
|
80
|
+
"footer" auto
|
81
|
+
/ 1fr;
|
82
|
+
gap: 10px;
|
83
|
+
padding: 10px;
|
84
|
+
}
|
85
|
+
|
86
|
+
:host ::ng-deep element-children > vl-cms-element-renderer {
|
87
|
+
&:nth-child(1) > vl-element {
|
88
|
+
grid-area: main;
|
89
|
+
}
|
90
|
+
|
91
|
+
&:nth-child(2) > vl-element {
|
92
|
+
min-height: 80px;
|
93
|
+
grid-area: footer;
|
94
|
+
}
|
95
|
+
}
|
96
|
+
/* end of LAYOUT_3 styles */
|
97
|
+
`,
|
98
|
+
},
|
99
|
+
LAYOUT_4: {
|
100
|
+
styles: `
|
101
|
+
/* start of LAYOUT_4 styles */
|
102
|
+
:host {
|
103
|
+
height: 100%;
|
104
|
+
display: grid;
|
105
|
+
grid:
|
106
|
+
"left right" 1fr
|
107
|
+
"footer footer" auto
|
108
|
+
/ auto auto;
|
109
|
+
gap: 10px;
|
110
|
+
padding: 10px;
|
111
|
+
}
|
112
|
+
|
113
|
+
:host ::ng-deep element-children > vl-cms-element-renderer {
|
114
|
+
&:nth-child(1) > vl-element {
|
115
|
+
grid-area: left;
|
116
|
+
}
|
117
|
+
|
118
|
+
&:nth-child(2) > vl-element {
|
119
|
+
grid-area: right;
|
120
|
+
}
|
121
|
+
|
122
|
+
&:nth-child(3) > vl-element {
|
123
|
+
min-height: 80px;
|
124
|
+
grid-area: footer;
|
125
|
+
}
|
126
|
+
}
|
127
|
+
/* end of LAYOUT_4 styles */
|
128
|
+
`,
|
129
|
+
},
|
130
|
+
LAYOUT_5: {
|
131
|
+
styles: `
|
132
|
+
/* start of LAYOUT_5 styles */
|
133
|
+
:host {
|
134
|
+
height: 100%;
|
135
|
+
display: grid;
|
136
|
+
grid:
|
137
|
+
"header" auto
|
138
|
+
"main" 1fr
|
139
|
+
/ 1fr;
|
140
|
+
gap: 10px;
|
141
|
+
padding: 10px;
|
142
|
+
}
|
143
|
+
|
144
|
+
:host ::ng-deep element-children > vl-cms-element-renderer {
|
145
|
+
&:nth-child(1) > vl-element {
|
146
|
+
min-height: 80px;
|
147
|
+
grid-area: header;
|
148
|
+
}
|
149
|
+
|
150
|
+
&:nth-child(2) > vl-element {
|
151
|
+
grid-area: main;
|
152
|
+
}
|
153
|
+
}
|
154
|
+
/* end of LAYOUT_5 styles */
|
155
|
+
`,
|
156
|
+
},
|
157
|
+
LAYOUT_6: {
|
158
|
+
styles: `
|
159
|
+
/* start of LAYOUT_6 styles */
|
160
|
+
:host {
|
161
|
+
height: 100%;
|
162
|
+
display: grid;
|
163
|
+
grid:
|
164
|
+
"main" 1fr
|
165
|
+
/ 1fr;
|
166
|
+
gap: 10px;
|
167
|
+
padding: 10px;
|
168
|
+
}
|
169
|
+
|
170
|
+
:host ::ng-deep element-children > vl-cms-element-renderer {
|
171
|
+
&:nth-child(1) > vl-element {
|
172
|
+
grid-area: main;
|
173
|
+
}
|
174
|
+
}
|
175
|
+
/* end of LAYOUT_6 styles */
|
176
|
+
`,
|
177
|
+
},
|
178
|
+
};
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21zLmxheW91dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY21zLmxheW91dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUE4QztJQUMvRCxRQUFRLEVBQUU7UUFDUixNQUFNLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQThCWDtLQUNFO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsTUFBTSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBa0NYO0tBQ0U7SUFDRCxRQUFRLEVBQUU7UUFDUixNQUFNLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXdCWDtLQUNFO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsTUFBTSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBNEJYO0tBQ0U7SUFDRCxRQUFRLEVBQUU7UUFDUixNQUFNLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXdCWDtLQUNFO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsTUFBTSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FrQlg7S0FDRTtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdlTGF5b3V0LCBQYWdlTGF5b3V0Q29uZmlnIH0gZnJvbSAnLi90eXBlcy9sYXlvdXRzLnR5cGVzJztcblxuZXhwb3J0IGNvbnN0IExBWU9VVDogeyBba2V5IGluIFBhZ2VMYXlvdXRdOiBQYWdlTGF5b3V0Q29uZmlnIH0gPSB7XG4gIExBWU9VVF8xOiB7XG4gICAgc3R5bGVzOiBgXG4vKiBzdGFydCBvZiBMQVlPVVRfMSBzdHlsZXMgKi9cbjpob3N0IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkOlxuICAgIFwiaGVhZGVyXCIgYXV0b1xuICAgIFwibWFpblwiIDFmclxuICAgIFwiZm9vdGVyXCIgYXV0b1xuICAgIC8gMWZyO1xuICBnYXA6IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbjpob3N0IDo6bmctZGVlcCBlbGVtZW50LWNoaWxkcmVuID4gdmwtY21zLWVsZW1lbnQtcmVuZGVyZXIge1xuICAmOm50aC1jaGlsZCgxKSA+IHZsLWVsZW1lbnQge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgZ3JpZC1hcmVhOiBoZWFkZXI7XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSA+IHZsLWVsZW1lbnQge1xuICAgIGdyaWQtYXJlYTogbWFpbjtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKDMpID4gdmwtZWxlbWVudCB7XG4gICAgbWluLWhlaWdodDogODBweDtcbiAgICBncmlkLWFyZWE6IGZvb3RlcjtcbiAgfVxufVxuLyogZW5kIG9mIExBWU9VVF8xIHN0eWxlcyAqL1xuYCxcbiAgfSxcbiAgTEFZT1VUXzI6IHtcbiAgICBzdHlsZXM6IGBcbi8qIHN0YXJ0IG9mIExBWU9VVF8yIHN0eWxlcyAqL1xuOmhvc3Qge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQ6XG4gICAgXCJoZWFkZXIgaGVhZGVyXCIgYXV0b1xuICAgIFwibGVmdCByaWdodFwiIDFmclxuICAgIFwiZm9vdGVyIGZvb3RlclwiIGF1dG9cbiAgICAvIDFmciAxZnI7XG4gIGdhcDogMTBweDtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIGVsZW1lbnQtY2hpbGRyZW4gPiB2bC1jbXMtZWxlbWVudC1yZW5kZXJlciB7XG4gICY6bnRoLWNoaWxkKDEpID4gdmwtZWxlbWVudCB7XG4gICAgbWluLWhlaWdodDogODBweDtcbiAgICBncmlkLWFyZWE6IGhlYWRlcjtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKDIpID4gdmwtZWxlbWVudCB7XG4gICAgZ3JpZC1hcmVhOiBsZWZ0O1xuICB9XG5cbiAgJjpudGgtY2hpbGQoMykgPiB2bC1lbGVtZW50IHtcbiAgICBncmlkLWFyZWE6IHJpZ2h0O1xuICB9XG5cbiAgJjpudGgtY2hpbGQoNCkgPiB2bC1lbGVtZW50IHtcbiAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgIGdyaWQtYXJlYTogZm9vdGVyO1xuICB9XG59XG4vKiBlbmQgb2YgTEFZT1VUXzIgc3R5bGVzICovXG5gLFxuICB9LFxuICBMQVlPVVRfMzoge1xuICAgIHN0eWxlczogYFxuLyogc3RhcnQgb2YgTEFZT1VUXzMgc3R5bGVzICovXG46aG9zdCB7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZDpcbiAgICBcIm1haW5cIiAxZnJcbiAgICBcImZvb3RlclwiIGF1dG9cbiAgICAvIDFmcjtcbiAgZ2FwOiAxMHB4O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG46aG9zdCA6Om5nLWRlZXAgZWxlbWVudC1jaGlsZHJlbiA+IHZsLWNtcy1lbGVtZW50LXJlbmRlcmVyIHtcbiAgJjpudGgtY2hpbGQoMSkgPiB2bC1lbGVtZW50IHtcbiAgICBncmlkLWFyZWE6IG1haW47XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSA+IHZsLWVsZW1lbnQge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgZ3JpZC1hcmVhOiBmb290ZXI7XG4gIH1cbn1cbi8qIGVuZCBvZiBMQVlPVVRfMyBzdHlsZXMgKi9cbmAsXG4gIH0sXG4gIExBWU9VVF80OiB7XG4gICAgc3R5bGVzOiBgXG4vKiBzdGFydCBvZiBMQVlPVVRfNCBzdHlsZXMgKi9cbjpob3N0IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkOlxuICAgIFwibGVmdCByaWdodFwiIDFmclxuICAgIFwiZm9vdGVyIGZvb3RlclwiIGF1dG9cbiAgICAvIGF1dG8gYXV0bztcbiAgZ2FwOiAxMHB4O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG46aG9zdCA6Om5nLWRlZXAgZWxlbWVudC1jaGlsZHJlbiA+IHZsLWNtcy1lbGVtZW50LXJlbmRlcmVyIHtcbiAgJjpudGgtY2hpbGQoMSkgPiB2bC1lbGVtZW50IHtcbiAgICBncmlkLWFyZWE6IGxlZnQ7XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSA+IHZsLWVsZW1lbnQge1xuICAgIGdyaWQtYXJlYTogcmlnaHQ7XG4gIH1cblxuICAmOm50aC1jaGlsZCgzKSA+IHZsLWVsZW1lbnQge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgZ3JpZC1hcmVhOiBmb290ZXI7XG4gIH1cbn1cbi8qIGVuZCBvZiBMQVlPVVRfNCBzdHlsZXMgKi9cbmAsXG4gIH0sXG4gIExBWU9VVF81OiB7XG4gICAgc3R5bGVzOiBgXG4vKiBzdGFydCBvZiBMQVlPVVRfNSBzdHlsZXMgKi9cbjpob3N0IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkOlxuICAgIFwiaGVhZGVyXCIgYXV0b1xuICAgIFwibWFpblwiIDFmclxuICAgIC8gMWZyO1xuICBnYXA6IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbjpob3N0IDo6bmctZGVlcCBlbGVtZW50LWNoaWxkcmVuID4gdmwtY21zLWVsZW1lbnQtcmVuZGVyZXIge1xuICAmOm50aC1jaGlsZCgxKSA+IHZsLWVsZW1lbnQge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgZ3JpZC1hcmVhOiBoZWFkZXI7XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSA+IHZsLWVsZW1lbnQge1xuICAgIGdyaWQtYXJlYTogbWFpbjtcbiAgfVxufVxuLyogZW5kIG9mIExBWU9VVF81IHN0eWxlcyAqL1xuYCxcbiAgfSxcbiAgTEFZT1VUXzY6IHtcbiAgICBzdHlsZXM6IGBcbi8qIHN0YXJ0IG9mIExBWU9VVF82IHN0eWxlcyAqL1xuOmhvc3Qge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQ6XG4gICAgXCJtYWluXCIgMWZyXG4gICAgLyAxZnI7XG4gIGdhcDogMTBweDtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIGVsZW1lbnQtY2hpbGRyZW4gPiB2bC1jbXMtZWxlbWVudC1yZW5kZXJlciB7XG4gICY6bnRoLWNoaWxkKDEpID4gdmwtZWxlbWVudCB7XG4gICAgZ3JpZC1hcmVhOiBtYWluO1xuICB9XG59XG4vKiBlbmQgb2YgTEFZT1VUXzYgc3R5bGVzICovXG5gLFxuICB9LFxufTtcbiJdfQ==
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, } from '@angular/core';
|
2
|
-
import { BehaviorSubject, catchError, forkJoin, of,
|
2
|
+
import { BehaviorSubject, Subject, catchError, distinctUntilChanged, forkJoin, map, of, startWith, switchMap, takeUntil, tap, } from 'rxjs';
|
3
|
+
import { CmsAction } from '../../cms.actions';
|
3
4
|
import { IOProviderService } from '../../services/io-provider.service';
|
4
5
|
import { TemplatesService } from '../../services/templates.service';
|
5
6
|
import * as i0 from "@angular/core";
|
@@ -19,9 +20,23 @@ export class PreviewComponent {
|
|
19
20
|
this.integrationState = integrationState;
|
20
21
|
this.cdr = cdr;
|
21
22
|
this.state$ = new BehaviorSubject({ loading: true, failure: false });
|
22
|
-
this.elements = [];
|
23
23
|
this.destroy$ = new Subject();
|
24
24
|
this.runtimeService.updated$.pipe(takeUntil(this.destroy$)).subscribe(() => this.cdr.detectChanges());
|
25
|
+
this.elements$ = this.state$.pipe(switchMap(({ loading, failure }) => {
|
26
|
+
var _a, _b;
|
27
|
+
if (loading || failure) {
|
28
|
+
return of([]);
|
29
|
+
}
|
30
|
+
const elements = this.runtimeService.applicationTree;
|
31
|
+
// If UI definition contains pages, return page by SelectedPageName
|
32
|
+
if ((_b = (_a = this.uiDefinition) === null || _a === void 0 ? void 0 : _a.pages) === null || _b === void 0 ? void 0 : _b.length) {
|
33
|
+
return this.integrationState.listen$(CmsAction.GO_TO_PAGE).pipe(map(({ pageName }) => pageName), startWith(elements[0].name), distinctUntilChanged(), map(pageName => {
|
34
|
+
const page = elements.find(el => el.name === pageName);
|
35
|
+
return page ? [page] : elements.slice(0, 1);
|
36
|
+
}));
|
37
|
+
}
|
38
|
+
return of(elements);
|
39
|
+
}));
|
25
40
|
}
|
26
41
|
ngOnInit() {
|
27
42
|
var _a;
|
@@ -36,6 +51,9 @@ export class PreviewComponent {
|
|
36
51
|
this.configurationService.reset();
|
37
52
|
this.runtimeService.clear();
|
38
53
|
}
|
54
|
+
trackBy(_, el) {
|
55
|
+
return el.path;
|
56
|
+
}
|
39
57
|
initializeConfiguration$() {
|
40
58
|
const isAlreadyInitialized = this.configurationRuntimeService.isInitialized;
|
41
59
|
if (!this.uiDefinition || this.uiDefinition.type !== 'CONFIGURATION' || isAlreadyInitialized) {
|
@@ -55,8 +73,7 @@ export class PreviewComponent {
|
|
55
73
|
return;
|
56
74
|
}
|
57
75
|
forkJoin([this.runtimeService.initialize$(this.uiDefinition, this.config), this.initializeConfiguration$()])
|
58
|
-
.pipe(tap((
|
59
|
-
this.elements = elements;
|
76
|
+
.pipe(tap(() => {
|
60
77
|
this.state$.next({ loading: false, failure: false });
|
61
78
|
}), catchError(error => {
|
62
79
|
var _a, _b;
|
@@ -71,7 +88,7 @@ export class PreviewComponent {
|
|
71
88
|
}
|
72
89
|
}
|
73
90
|
PreviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PreviewComponent, deps: [{ token: i1.RuntimeService }, { token: i2.ConfigurationService }, { token: i3.MessageService }, { token: i2.ConfigurationRuntimeService }, { token: i4.IntegrationState }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
74
|
-
PreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PreviewComponent, selector: "vl-cms-preview", inputs: { modelId: "modelId", uiDefinition: "uiDefinition", config: "config" }, providers: [IOProviderService, TemplatesService], ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-element-renderer
|
91
|
+
PreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PreviewComponent, selector: "vl-cms-preview", inputs: { modelId: "modelId", uiDefinition: "uiDefinition", config: "config" }, providers: [IOProviderService, TemplatesService], ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-element-renderer\n *ngFor=\"let el of elements$ | async; trackBy: trackBy\"\n [meta]=\"el\"\n ></vl-cms-element-renderer>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [":host{flex-grow:1;display:flex;flex-direction:column;height:100%}\n"], components: [{ type: i5.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i6.ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.ShadowDom });
|
75
92
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PreviewComponent, decorators: [{
|
76
93
|
type: Component,
|
77
94
|
args: [{
|
@@ -90,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
90
107
|
}], config: [{
|
91
108
|
type: Input
|
92
109
|
}] } });
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9wcmV2aWV3L3ByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvcHJldmlldy9wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULEtBQUssRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHakgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7OztBQWtCcEUsTUFBTSxPQUFPLGdCQUFnQjtJQVUzQixZQUNVLGNBQThCLEVBQzlCLG9CQUEwQyxFQUMxQyxjQUE4QixFQUM5QiwyQkFBd0QsRUFDeEQsZ0JBQWtDLEVBQ2xDLEdBQXNCO1FBTHRCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQTZCO1FBQ3hELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFYekIsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FB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LE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBRXBELE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN6QjthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7OzhHQS9FVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQix5SEFKaEIsQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQywwQkM3QmxELHNYQVNBOzRGRHdCYSxnQkFBZ0I7a0JBVDVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLDBCQUEwQjtvQkFDdkMsU0FBUyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3ZDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQztvQkFDaEQsb0VBQW9FO29CQUNwRSxhQUFhLEVBQUUsaUJBQWlCLENBQUMsU0FBUztpQkFDM0M7OFFBRWlCLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLCBDb25maWd1cmF0aW9uU2VydmljZSwgVUlEZWZpbml0aW9uIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNhdGNoRXJyb3IsIGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEludGVncmF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBJT1Byb3ZpZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2lvLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGVtcGxhdGVzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RlbXBsYXRlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5pbXBvcnQgeyBDTVNQcmV2aWV3Q29uZmlnIH0gZnJvbSAnLi9wcmV2aWV3LnR5cGVzJztcblxuaW50ZXJmYWNlIFN0YXRlIHtcbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgZmFpbHVyZTogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmwtY21zLXByZXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ByZXZpZXcuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW0lPUHJvdmlkZXJTZXJ2aWNlLCBUZW1wbGF0ZXNTZXJ2aWNlXSxcbiAgLy8gdXNlIHNoYWRvdyBET00gdG8gcHJldmVudCBVSSBmcm9tIGJlaW5nIGFmZmVjdGVkIGJ5IGdsb2JhbCBzdHlsZXNcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uU2hhZG93RG9tLFxufSlcbmV4cG9ydCBjbGFzcyBQcmV2aWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwdWJsaWMgbW9kZWxJZD86IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHVpRGVmaW5pdGlvbj86IFVJRGVmaW5pdGlvbjtcbiAgQElucHV0KCkgcHVibGljIGNvbmZpZz86IENNU1ByZXZpZXdDb25maWc7XG5cbiAgcHVibGljIHN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3RhdGU+KHsgbG9hZGluZzogdHJ1ZSwgZmFpbHVyZTogZmFsc2UgfSk7XG4gIHB1YmxpYyBlbGVtZW50czogRWxlbWVudE1ldGFkYXRhW10gPSBbXTtcblxuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJ1bnRpbWVTZXJ2aWNlOiBSdW50aW1lU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZTogQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW50ZWdyYXRpb25TdGF0ZTogSW50ZWdyYXRpb25TdGF0ZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHRoaXMucnVudGltZVNlcnZpY2UudXBkYXRlZCQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbmZpZz8uY2xlYXJTdGF0ZU9uSW5pdCkge1xuICAgICAgdGhpcy5pbnRlZ3JhdGlvblN0YXRlLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgdGhpcy5zdGFydFByZXZpZXcoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG5cbiAgICB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLnJlc2V0KCk7XG4gICAgdGhpcy5ydW50aW1lU2VydmljZS5jbGVhcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplQ29uZmlndXJhdGlvbiQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBpc0FscmVhZHlJbml0aWFsaXplZCA9IHRoaXMuY29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLmlzSW5pdGlhbGl6ZWQ7XG4gICAgaWYgKCF0aGlzLnVpRGVmaW5pdGlvbiB8fCB0aGlzLnVpRGVmaW5pdGlvbi50eXBlICE9PSAnQ09ORklHVVJBVElPTicgfHwgaXNBbHJlYWR5SW5pdGlhbGl6ZWQpIHtcbiAgICAgIHJldHVybiBvZih7fSk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLm1vZGVsSWQpIHtcbiAgICAgIGNvbnNvbGUud2FybihgTm8gbW9kZWxJZCBpcyBnaXZlbiBmb3IgdWlEZWZpbml0aW9uIHdpdGggJyR7dGhpcy51aURlZmluaXRpb24udHlwZX0nIHR5cGVgKTtcbiAgICAgIHJldHVybiBvZih7fSk7XG4gICAgfVxuXG4gICAgLy8gSWYgc3RpbGwgbm90IGluaXRpYWxpemVkIC0gaW5pdCBjb25maWd1cmF0aW9uIGluIFRlc3QgbW9kZVxuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZVxuICAgICAgLmluaXRUZXN0TW9kZSh0aGlzLm1vZGVsSWQsIHRoaXMudWlEZWZpbml0aW9uKVxuICAgICAgLnBpcGUoc3dpdGNoTWFwKCgpID0+IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuY29uZmlndXJlKCkpKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRQcmV2aWV3KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy51aURlZmluaXRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3JrSm9pbihbdGhpcy5ydW50aW1lU2VydmljZS5pbml0aWFsaXplJCh0aGlzLnVpRGVmaW5pdGlvbiwgdGhpcy5jb25maWcpLCB0aGlzLmluaXRpYWxpemVDb25maWd1cmF0aW9uJCgpXSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKFtlbGVtZW50c10pID0+IHtcbiAgICAgICAgICB0aGlzLmVsZW1lbnRzID0gZWxlbWVudHM7XG4gICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7IGxvYWRpbmc6IGZhbHNlLCBmYWlsdXJlOiBmYWxzZSB9KTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuXG4gICAgICAgICAgaWYgKCF0aGlzLnVpRGVmaW5pdGlvbj8ucHJvcGVydGllcz8uc3VwcHJlc3NUb2FzdE1lc3NhZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiAnZXJyb3InLCBzdW1tYXJ5OiBlcnJvciB9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLnN0YXRlJC5uZXh0KHsgbG9hZGluZzogZmFsc2UsIGZhaWx1cmU6IHRydWUgfSk7XG5cbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDx2bC1sb2FkZXIgKm5nSWY9XCJzdGF0ZS5sb2FkaW5nOyBlbHNlIGNvbnRlbnRcIiBbbGFiZWxdPVwiJ0xvYWRpbmcgVUknXCI+PC92bC1sb2FkZXI+XG5cbiAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3RhdGUuZmFpbHVyZVwiPlxuICAgICAgPHZsLWNtcy1lbGVtZW50LXJlbmRlcmVyICpuZ0Zvcj1cImxldCBlbCBvZiBlbGVtZW50c1wiIFttZXRhXT1cImVsXCI+PC92bC1jbXMtZWxlbWVudC1yZW5kZXJlcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9wcmV2aWV3L3ByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvcHJldmlldy9wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULEtBQUssRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUNMLGVBQWUsRUFFZixPQUFPLEVBQ1AsVUFBVSxFQUNWLG9CQUFvQixFQUNwQixRQUFRLEVBQ1IsR0FBRyxFQUNILEVBQUUsRUFDRixTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHOUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7OztBQWtCcEUsTUFBTSxPQUFPLGdCQUFnQjtJQVUzQixZQUNVLGNBQThCLEVBQzlCLG9CQUEwQyxFQUMxQyxjQUE4QixFQUM5QiwyQkFBd0QsRUFDeEQsZ0JBQWtDLEVBQ2xDLEdBQXNCO1FBTHRCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQTZCO1FBQ3hELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFYekIsV0FB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QUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFFcEQsT0FBTyxFQUFFLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7OEdBM0dVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHlIQUpoQixDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLDBCQzNDbEQsMmFBWUE7NEZEbUNhLGdCQUFnQjtrQkFUNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsMEJBQTBCO29CQUN2QyxTQUFTLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDdkMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDO29CQUNoRCxvRUFBb0U7b0JBQ3BFLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxTQUFTO2lCQUMzQzs4UUFFaUIsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxZQUFZO3NCQUEzQixLQUFLO2dCQUNVLE1BQU07c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UsIENvbmZpZ3VyYXRpb25TZXJ2aWNlLCBVSURlZmluaXRpb24gfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgY2F0Y2hFcnJvcixcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZvcmtKb2luLFxuICBtYXAsXG4gIG9mLFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZVVudGlsLFxuICB0YXAsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ21zQWN0aW9uIH0gZnJvbSAnLi4vLi4vY21zLmFjdGlvbnMnO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEludGVncmF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBJT1Byb3ZpZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2lvLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGVtcGxhdGVzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RlbXBsYXRlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5pbXBvcnQgeyBDTVNQcmV2aWV3Q29uZmlnIH0gZnJvbSAnLi9wcmV2aWV3LnR5cGVzJztcblxuaW50ZXJmYWNlIFN0YXRlIHtcbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgZmFpbHVyZTogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmwtY21zLXByZXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ByZXZpZXcuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW0lPUHJvdmlkZXJTZXJ2aWNlLCBUZW1wbGF0ZXNTZXJ2aWNlXSxcbiAgLy8gdXNlIHNoYWRvdyBET00gdG8gcHJldmVudCBVSSBmcm9tIGJlaW5nIGFmZmVjdGVkIGJ5IGdsb2JhbCBzdHlsZXNcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uU2hhZG93RG9tLFxufSlcbmV4cG9ydCBjbGFzcyBQcmV2aWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwdWJsaWMgbW9kZWxJZD86IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHVpRGVmaW5pdGlvbj86IFVJRGVmaW5pdGlvbjtcbiAgQElucHV0KCkgcHVibGljIGNvbmZpZz86IENNU1ByZXZpZXdDb25maWc7XG5cbiAgcHVibGljIHN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3RhdGU+KHsgbG9hZGluZzogdHJ1ZSwgZmFpbHVyZTogZmFsc2UgfSk7XG4gIHB1YmxpYyBlbGVtZW50cyQ6IE9ic2VydmFibGU8RWxlbWVudE1ldGFkYXRhW10+O1xuXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcnVudGltZVNlcnZpY2U6IFJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlOiBDb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbnRlZ3JhdGlvblN0YXRlOiBJbnRlZ3JhdGlvblN0YXRlLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7XG4gICAgdGhpcy5ydW50aW1lU2VydmljZS51cGRhdGVkJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKSk7XG5cbiAgICB0aGlzLmVsZW1lbnRzJCA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHsgbG9hZGluZywgZmFpbHVyZSB9KSA9PiB7XG4gICAgICAgIGlmIChsb2FkaW5nIHx8IGZhaWx1cmUpIHtcbiAgICAgICAgICByZXR1cm4gb2YoW10pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZWxlbWVudHMgPSB0aGlzLnJ1bnRpbWVTZXJ2aWNlLmFwcGxpY2F0aW9uVHJlZTtcblxuICAgICAgICAvLyBJZiBVSSBkZWZpbml0aW9uIGNvbnRhaW5zIHBhZ2VzLCByZXR1cm4gcGFnZSBieSBTZWxlY3RlZFBhZ2VOYW1lXG4gICAgICAgIGlmICh0aGlzLnVpRGVmaW5pdGlvbj8ucGFnZXM/Lmxlbmd0aCkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmludGVncmF0aW9uU3RhdGUubGlzdGVuJDx7IHBhZ2VOYW1lOiBzdHJpbmcgfT4oQ21zQWN0aW9uLkdPX1RPX1BBR0UpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHsgcGFnZU5hbWUgfSkgPT4gcGFnZU5hbWUpLFxuICAgICAgICAgICAgc3RhcnRXaXRoKGVsZW1lbnRzWzBdLm5hbWUpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgIG1hcChwYWdlTmFtZSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHBhZ2UgPSBlbGVtZW50cy5maW5kKGVsID0+IGVsLm5hbWUgPT09IHBhZ2VOYW1lKTtcbiAgICAgICAgICAgICAgcmV0dXJuIHBhZ2UgPyBbcGFnZV0gOiBlbGVtZW50cy5zbGljZSgwLCAxKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb2YoZWxlbWVudHMpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb25maWc/LmNsZWFyU3RhdGVPbkluaXQpIHtcbiAgICAgIHRoaXMuaW50ZWdyYXRpb25TdGF0ZS5jbGVhcigpO1xuICAgIH1cblxuICAgIHRoaXMuc3RhcnRQcmV2aWV3KCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuXG4gICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5yZXNldCgpO1xuICAgIHRoaXMucnVudGltZVNlcnZpY2UuY2xlYXIoKTtcbiAgfVxuXG4gIHB1YmxpYyB0cmFja0J5KF86IG51bWJlciwgZWw6IEVsZW1lbnRNZXRhZGF0YSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVsLnBhdGg7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemVDb25maWd1cmF0aW9uJCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGlzQWxyZWFkeUluaXRpYWxpemVkID0gdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UuaXNJbml0aWFsaXplZDtcbiAgICBpZiAoIXRoaXMudWlEZWZpbml0aW9uIHx8IHRoaXMudWlEZWZpbml0aW9uLnR5cGUgIT09ICdDT05GSUdVUkFUSU9OJyB8fCBpc0FscmVhZHlJbml0aWFsaXplZCkge1xuICAgICAgcmV0dXJuIG9mKHt9KTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMubW9kZWxJZCkge1xuICAgICAgY29uc29sZS53YXJuKGBObyBtb2RlbElkIGlzIGdpdmVuIGZvciB1aURlZmluaXRpb24gd2l0aCAnJHt0aGlzLnVpRGVmaW5pdGlvbi50eXBlfScgdHlwZWApO1xuICAgICAgcmV0dXJuIG9mKHt9KTtcbiAgICB9XG5cbiAgICAvLyBJZiBzdGlsbCBub3QgaW5pdGlhbGl6ZWQgLSBpbml0IGNvbmZpZ3VyYXRpb24gaW4gVGVzdCBtb2RlXG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlXG4gICAgICAuaW5pdFRlc3RNb2RlKHRoaXMubW9kZWxJZCwgdGhpcy51aURlZmluaXRpb24pXG4gICAgICAucGlwZShzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5jb25maWd1cmUoKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFByZXZpZXcoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnVpRGVmaW5pdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZvcmtKb2luKFt0aGlzLnJ1bnRpbWVTZXJ2aWNlLmluaXRpYWxpemUkKHRoaXMudWlEZWZpbml0aW9uLCB0aGlzLmNvbmZpZyksIHRoaXMuaW5pdGlhbGl6ZUNvbmZpZ3VyYXRpb24kKCldKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7IGxvYWRpbmc6IGZhbHNlLCBmYWlsdXJlOiBmYWxzZSB9KTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuXG4gICAgICAgICAgaWYgKCF0aGlzLnVpRGVmaW5pdGlvbj8ucHJvcGVydGllcz8uc3VwcHJlc3NUb2FzdE1lc3NhZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiAnZXJyb3InLCBzdW1tYXJ5OiBlcnJvciB9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLnN0YXRlJC5uZXh0KHsgbG9hZGluZzogZmFsc2UsIGZhaWx1cmU6IHRydWUgfSk7XG5cbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDx2bC1sb2FkZXIgKm5nSWY9XCJzdGF0ZS5sb2FkaW5nOyBlbHNlIGNvbnRlbnRcIiBbbGFiZWxdPVwiJ0xvYWRpbmcgVUknXCI+PC92bC1sb2FkZXI+XG5cbiAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3RhdGUuZmFpbHVyZVwiPlxuICAgICAgPHZsLWNtcy1lbGVtZW50LXJlbmRlcmVyXG4gICAgICAgICpuZ0Zvcj1cImxldCBlbCBvZiBlbGVtZW50cyQgfCBhc3luYzsgdHJhY2tCeTogdHJhY2tCeVwiXG4gICAgICAgIFttZXRhXT1cImVsXCJcbiAgICAgID48L3ZsLWNtcy1lbGVtZW50LXJlbmRlcmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
@@ -0,0 +1,58 @@
|
|
1
|
+
import { DOCUMENT } from '@angular/common';
|
2
|
+
import { Directive, ElementRef } from '@angular/core';
|
3
|
+
import { merge } from 'lodash';
|
4
|
+
import { Subject, takeUntil, tap } from 'rxjs';
|
5
|
+
import { ELEMENT_METADATA } from '../injection-tokens';
|
6
|
+
import { RuntimeEditorService } from '../modules/runtime';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
import * as i1 from "../components/element.component";
|
9
|
+
export class RegionPlugin {
|
10
|
+
constructor(host) {
|
11
|
+
this.host = host;
|
12
|
+
this.destroy$ = new Subject();
|
13
|
+
this.metadata = this.host.injector.get(ELEMENT_METADATA);
|
14
|
+
this.document = this.host.injector.get(DOCUMENT);
|
15
|
+
this.el = this.host.injector.get(ElementRef);
|
16
|
+
const runtimeEditorService = this.host.injector.get(RuntimeEditorService);
|
17
|
+
runtimeEditorService.editorMode$
|
18
|
+
.pipe(tap(editMode => {
|
19
|
+
var _a;
|
20
|
+
this.el.nativeElement.style.outline = editMode ? 'solid 1px #dce5ef' : '';
|
21
|
+
if (editMode && !this.metadata.children.length) {
|
22
|
+
this.addRegionName();
|
23
|
+
}
|
24
|
+
else {
|
25
|
+
(_a = this.regionNameEl) === null || _a === void 0 ? void 0 : _a.remove();
|
26
|
+
}
|
27
|
+
}), takeUntil(this.destroy$))
|
28
|
+
.subscribe();
|
29
|
+
}
|
30
|
+
ngOnDestroy() {
|
31
|
+
this.destroy$.next();
|
32
|
+
this.destroy$.complete();
|
33
|
+
}
|
34
|
+
addRegionName() {
|
35
|
+
if (this.regionNameEl) {
|
36
|
+
this.regionNameEl.remove();
|
37
|
+
}
|
38
|
+
this.regionNameEl = this.document.createElement('div');
|
39
|
+
this.regionNameEl.innerHTML = this.metadata.name;
|
40
|
+
merge(this.regionNameEl.style, {
|
41
|
+
width: '100%',
|
42
|
+
height: '100%',
|
43
|
+
display: 'flex',
|
44
|
+
justifyContent: 'center',
|
45
|
+
alignItems: 'center',
|
46
|
+
color: '#AEB5BD',
|
47
|
+
pointerEvents: 'none',
|
48
|
+
userSelect: 'none',
|
49
|
+
});
|
50
|
+
this.el.nativeElement.append(this.regionNameEl);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
RegionPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RegionPlugin, deps: [{ token: i1.ElementComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
54
|
+
RegionPlugin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: RegionPlugin, ngImport: i0 });
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RegionPlugin, decorators: [{
|
56
|
+
type: Directive
|
57
|
+
}], ctorParameters: function () { return [{ type: i1.ElementComponent }]; } });
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9wbHVnaW5zL3JlZ2lvbi5wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFJMUQsTUFBTSxPQUFPLFlBQVk7SUFPdkIsWUFBbUIsSUFBc0I7UUFBdEIsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFGakMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFHckMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUU3QyxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRTFFLG9CQUFvQixDQUFDLFdBQVc7YUFDN0IsSUFBSSxDQUNILEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTs7WUFDYixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUUxRSxJQUFJLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtnQkFDOUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3RCO2lCQUFNO2dCQUNMLE1BQUEsSUFBSSxDQUFDLFlBQVksMENBQUUsTUFBTSxFQUFFLENBQUM7YUFDN0I7UUFDSCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN6QjthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUM1QjtRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFFakQsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUF1QjtZQUNsRCxLQUFLLEVBQUUsTUFBTTtZQUNiLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFLE1BQU07WUFDZixjQUFjLEVBQUUsUUFBUTtZQUN4QixVQUFVLEVBQUUsUUFBUTtZQUNwQixLQUFLLEVBQUUsU0FBUztZQUNoQixhQUFhLEVBQUUsTUFBTTtZQUNyQixVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xELENBQUM7OzBHQXZEVSxZQUFZOzhGQUFaLFlBQVk7NEZBQVosWUFBWTtrQkFEeEIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZWxlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGx1Z2luQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9wbHVnaW4uY29tcG9uZW50JztcbmltcG9ydCB7IEVMRU1FTlRfTUVUQURBVEEgfSBmcm9tICcuLi9pbmplY3Rpb24tdG9rZW5zJztcbmltcG9ydCB7IFJ1bnRpbWVFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vbW9kdWxlcy9ydW50aW1lJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uL3R5cGVzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgUmVnaW9uUGx1Z2luIGltcGxlbWVudHMgUGx1Z2luQ29tcG9uZW50LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIG1ldGFkYXRhOiBFbGVtZW50TWV0YWRhdGE7XG4gIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50O1xuICBwcml2YXRlIGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcbiAgcHJpdmF0ZSByZWdpb25OYW1lRWw6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaG9zdDogRWxlbWVudENvbXBvbmVudCkge1xuICAgIHRoaXMubWV0YWRhdGEgPSB0aGlzLmhvc3QuaW5qZWN0b3IuZ2V0KEVMRU1FTlRfTUVUQURBVEEpO1xuICAgIHRoaXMuZG9jdW1lbnQgPSB0aGlzLmhvc3QuaW5qZWN0b3IuZ2V0KERPQ1VNRU5UKTtcbiAgICB0aGlzLmVsID0gdGhpcy5ob3N0LmluamVjdG9yLmdldChFbGVtZW50UmVmKTtcblxuICAgIGNvbnN0IHJ1bnRpbWVFZGl0b3JTZXJ2aWNlID0gdGhpcy5ob3N0LmluamVjdG9yLmdldChSdW50aW1lRWRpdG9yU2VydmljZSk7XG5cbiAgICBydW50aW1lRWRpdG9yU2VydmljZS5lZGl0b3JNb2RlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChlZGl0TW9kZSA9PiB7XG4gICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLm91dGxpbmUgPSBlZGl0TW9kZSA/ICdzb2xpZCAxcHggI2RjZTVlZicgOiAnJztcblxuICAgICAgICAgIGlmIChlZGl0TW9kZSAmJiAhdGhpcy5tZXRhZGF0YS5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuYWRkUmVnaW9uTmFtZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlZ2lvbk5hbWVFbD8ucmVtb3ZlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkUmVnaW9uTmFtZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWdpb25OYW1lRWwpIHtcbiAgICAgIHRoaXMucmVnaW9uTmFtZUVsLnJlbW92ZSgpO1xuICAgIH1cblxuICAgIHRoaXMucmVnaW9uTmFtZUVsID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICB0aGlzLnJlZ2lvbk5hbWVFbC5pbm5lckhUTUwgPSB0aGlzLm1ldGFkYXRhLm5hbWU7XG5cbiAgICBtZXJnZSh0aGlzLnJlZ2lvbk5hbWVFbC5zdHlsZSwgPENTU1N0eWxlRGVjbGFyYXRpb24+e1xuICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICBjb2xvcjogJyNBRUI1QkQnLFxuICAgICAgcG9pbnRlckV2ZW50czogJ25vbmUnLFxuICAgICAgdXNlclNlbGVjdDogJ25vbmUnLFxuICAgIH0pO1xuXG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFwcGVuZCh0aGlzLnJlZ2lvbk5hbWVFbCk7XG4gIH1cbn1cbiJdfQ==
|