@pepperi-addons/ngx-composite-lib 0.4.2-beta.62 → 0.4.2-beta.64
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/group-buttons-settings/group-buttons-settings.component.mjs +3 -3
- package/esm2020/layout-builder/hide-in/hide-in.component.mjs +54 -0
- package/esm2020/layout-builder/hide-in/hide-in.module.mjs +81 -0
- package/esm2020/layout-builder/layout/layout.component.mjs +204 -0
- package/esm2020/layout-builder/layout/layout.module.mjs +58 -0
- package/esm2020/layout-builder/layout-builder.component.mjs +185 -0
- package/esm2020/layout-builder/layout-builder.model.mjs +6 -0
- package/esm2020/layout-builder/layout-builder.module.mjs +129 -0
- package/esm2020/layout-builder/layout-builder.service.mjs +605 -0
- package/esm2020/layout-builder/layout-editor/layout-editor.component.mjs +156 -0
- package/esm2020/layout-builder/layout-editor/layout-editor.module.mjs +109 -0
- package/esm2020/layout-builder/pepperi-addons-ngx-composite-lib-layout-builder.mjs +5 -0
- package/esm2020/layout-builder/public-api.mjs +10 -0
- package/esm2020/layout-builder/section/section.component.mjs +312 -0
- package/esm2020/layout-builder/section/section.module.mjs +45 -0
- package/esm2020/layout-builder/section-block/section-block.component.mjs +109 -0
- package/esm2020/layout-builder/section-block/section-block.module.mjs +48 -0
- package/esm2020/layout-builder/section-editor/section-editor.component.mjs +191 -0
- package/esm2020/layout-builder/section-editor/section-editor.module.mjs +40 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-layout-builder.mjs +2216 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-layout-builder.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-layout-builder.mjs +2196 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-layout-builder.mjs.map +1 -0
- package/group-buttons-settings/group-buttons-settings.component.d.ts +1 -1
- package/layout-builder/hide-in/hide-in.component.d.ts +25 -0
- package/layout-builder/hide-in/hide-in.component.theme.scss +9 -0
- package/layout-builder/hide-in/hide-in.module.d.ts +20 -0
- package/layout-builder/index.d.ts +5 -0
- package/layout-builder/layout/layout.component.d.ts +51 -0
- package/layout-builder/layout/layout.module.d.ts +17 -0
- package/layout-builder/layout-builder.component.d.ts +45 -0
- package/layout-builder/layout-builder.component.theme.scss +56 -0
- package/layout-builder/layout-builder.model.d.ts +51 -0
- package/layout-builder/layout-builder.module.d.ts +32 -0
- package/layout-builder/layout-builder.service.d.ts +96 -0
- package/layout-builder/layout-editor/layout-editor.component.d.ts +49 -0
- package/layout-builder/layout-editor/layout-editor.module.d.ts +28 -0
- package/layout-builder/public-api.d.ts +6 -0
- package/layout-builder/section/section.component.d.ts +78 -0
- package/layout-builder/section/section.component.theme.scss +115 -0
- package/layout-builder/section/section.module.d.ts +14 -0
- package/layout-builder/section-block/section-block.component.d.ts +39 -0
- package/layout-builder/section-block/section-block.component.theme.scss +13 -0
- package/layout-builder/section-block/section-block.module.d.ts +13 -0
- package/layout-builder/section-editor/section-editor.component.d.ts +53 -0
- package/layout-builder/section-editor/section-editor.module.d.ts +13 -0
- package/package.json +9 -1
- package/src/assets/i18n/en.ngx-composite-lib.json +40 -2
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
import { Component, HostBinding, Input, ViewChild, ViewChildren } from '@angular/core';
|
|
2
|
+
import { BaseDestroyerDirective, PepScreenSizeType } from '@pepperi-addons/ngx-lib';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../layout-builder.service";
|
|
5
|
+
import * as i2 from "@pepperi-addons/ngx-lib";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@angular/cdk/drag-drop";
|
|
8
|
+
import * as i5 from "@pepperi-addons/ngx-lib/button";
|
|
9
|
+
import * as i6 from "../section-block/section-block.component";
|
|
10
|
+
import * as i7 from "../hide-in/hide-in.component";
|
|
11
|
+
import * as i8 from "@pepperi-addons/ngx-lib/draggable-items";
|
|
12
|
+
export class SectionComponent extends BaseDestroyerDirective {
|
|
13
|
+
constructor(renderer, layoutBuilderService, layoutService) {
|
|
14
|
+
super();
|
|
15
|
+
this.renderer = renderer;
|
|
16
|
+
this.layoutBuilderService = layoutBuilderService;
|
|
17
|
+
this.layoutService = layoutService;
|
|
18
|
+
this.key = '';
|
|
19
|
+
this.name = '';
|
|
20
|
+
this._split = undefined;
|
|
21
|
+
this._height = undefined;
|
|
22
|
+
this._collapseOnTablet = false;
|
|
23
|
+
this._columns = [];
|
|
24
|
+
this._hideIn = [];
|
|
25
|
+
this.styleMaxHeight = 'unset';
|
|
26
|
+
this.styleHeight = 'unset';
|
|
27
|
+
this.sectionsColumnsDropList = [];
|
|
28
|
+
this._editable = false;
|
|
29
|
+
// PepScreenSizeType = PepScreenSizeType;
|
|
30
|
+
this.sectionColumnKeyPrefix = '';
|
|
31
|
+
this.isMainEditorState = false;
|
|
32
|
+
this.isEditing = false;
|
|
33
|
+
this.selectedSectionKey = '';
|
|
34
|
+
this.selectedBlockKey = '';
|
|
35
|
+
this.containsBlocks = false;
|
|
36
|
+
this.shouldSetDefaultHeight = false;
|
|
37
|
+
this.pepScreenSizeToFlipToVertical = PepScreenSizeType.SM;
|
|
38
|
+
this.hideForCurrentScreenType = false;
|
|
39
|
+
this.draggingBlockKey = '';
|
|
40
|
+
this.draggingSectionKey = '';
|
|
41
|
+
this.hoverState = false;
|
|
42
|
+
}
|
|
43
|
+
set split(value) {
|
|
44
|
+
this._split = value;
|
|
45
|
+
this.refreshSplit();
|
|
46
|
+
}
|
|
47
|
+
get split() {
|
|
48
|
+
return this._split;
|
|
49
|
+
}
|
|
50
|
+
set height(value) {
|
|
51
|
+
this._height = value;
|
|
52
|
+
this.setStyleHeight();
|
|
53
|
+
}
|
|
54
|
+
get height() {
|
|
55
|
+
return this._height;
|
|
56
|
+
}
|
|
57
|
+
set collapseOnTablet(value) {
|
|
58
|
+
this._collapseOnTablet = value;
|
|
59
|
+
this.pepScreenSizeToFlipToVertical = value ? PepScreenSizeType.MD : PepScreenSizeType.SM;
|
|
60
|
+
this.refreshSplit();
|
|
61
|
+
}
|
|
62
|
+
get collapseOnTablet() {
|
|
63
|
+
return this._collapseOnTablet;
|
|
64
|
+
}
|
|
65
|
+
set columns(value) {
|
|
66
|
+
this._columns = value || [];
|
|
67
|
+
}
|
|
68
|
+
get columns() {
|
|
69
|
+
return this._columns;
|
|
70
|
+
}
|
|
71
|
+
set hideIn(value) {
|
|
72
|
+
this._hideIn = value;
|
|
73
|
+
this.setIfHideForCurrentScreenType();
|
|
74
|
+
}
|
|
75
|
+
get hideIn() {
|
|
76
|
+
return this._hideIn;
|
|
77
|
+
}
|
|
78
|
+
set editable(value) {
|
|
79
|
+
this._editable = value;
|
|
80
|
+
this.refreshSplit();
|
|
81
|
+
}
|
|
82
|
+
get editable() {
|
|
83
|
+
return this._editable;
|
|
84
|
+
}
|
|
85
|
+
set screenSize(value) {
|
|
86
|
+
this._screenSize = value;
|
|
87
|
+
this.refreshSplit();
|
|
88
|
+
this.setScreenType();
|
|
89
|
+
}
|
|
90
|
+
get screenSize() {
|
|
91
|
+
return this._screenSize;
|
|
92
|
+
}
|
|
93
|
+
calculateIfSectionContainsBlocks() {
|
|
94
|
+
this.containsBlocks = this.columns.some(column => column.BlockContainer);
|
|
95
|
+
if (this.editable) {
|
|
96
|
+
this.shouldSetDefaultHeight = !this.containsBlocks;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
setScreenType() {
|
|
100
|
+
this.screenType = this.layoutBuilderService.getScreenType(this.screenSize);
|
|
101
|
+
this.setIfHideForCurrentScreenType();
|
|
102
|
+
this.setStyleHeight();
|
|
103
|
+
}
|
|
104
|
+
setIfHideForCurrentScreenType() {
|
|
105
|
+
this.hideForCurrentScreenType = this.layoutBuilderService.getIsHidden(this.hideIn, this.screenType);
|
|
106
|
+
}
|
|
107
|
+
getCssSplitString() {
|
|
108
|
+
switch (this.split) {
|
|
109
|
+
case '1/2 1/2':
|
|
110
|
+
return '1fr 1fr';
|
|
111
|
+
case '1/2 1/4 1/4':
|
|
112
|
+
return '2fr 1fr 1fr';
|
|
113
|
+
case '1/3 1/3 1/3':
|
|
114
|
+
return '1fr 1fr 1fr';
|
|
115
|
+
case '1/3 2/3':
|
|
116
|
+
return '1fr 2fr';
|
|
117
|
+
case '1/4 1/2 1/4':
|
|
118
|
+
return '1fr 2fr 1fr';
|
|
119
|
+
case '1/4 1/4 1/2':
|
|
120
|
+
return '1fr 1fr 2fr';
|
|
121
|
+
case '1/4 1/4 1/4 1/4':
|
|
122
|
+
return '1fr 1fr 1fr 1fr';
|
|
123
|
+
case '1/4 3/4':
|
|
124
|
+
return '1fr 3fr';
|
|
125
|
+
case '2/3 1/3':
|
|
126
|
+
return '2fr 1fr';
|
|
127
|
+
case '3/4 1/4':
|
|
128
|
+
return '3fr 1fr';
|
|
129
|
+
default: // For one column.
|
|
130
|
+
return '1fr';
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
refreshSplit() {
|
|
134
|
+
setTimeout(() => {
|
|
135
|
+
if (this.sectionContainerRef) {
|
|
136
|
+
let cssSplitString = this.getCssSplitString();
|
|
137
|
+
// Go for all the columns in the columnsWrapper
|
|
138
|
+
this.columnsElementRef.toArray().map((section, sectionIndex) => {
|
|
139
|
+
// Horizontal (true) for large screens, false for small screens.
|
|
140
|
+
const isHorizontalView = this.screenSize <= this.pepScreenSizeToFlipToVertical;
|
|
141
|
+
if (isHorizontalView) {
|
|
142
|
+
this.renderer.setStyle(section.nativeElement, 'grid-auto-flow', 'column');
|
|
143
|
+
this.renderer.setStyle(section.nativeElement, 'grid-template-rows', 'unset');
|
|
144
|
+
this.renderer.setStyle(section.nativeElement, 'grid-template-columns', cssSplitString);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
this.renderer.setStyle(section.nativeElement, 'grid-auto-flow', 'row');
|
|
148
|
+
this.renderer.setStyle(section.nativeElement, 'grid-template-columns', 'unset');
|
|
149
|
+
this.renderer.setStyle(section.nativeElement, 'grid-template-rows', cssSplitString);
|
|
150
|
+
// In runtime (or preview mode).
|
|
151
|
+
if (!this.editable) {
|
|
152
|
+
const cssSplitArray = cssSplitString.split(' ');
|
|
153
|
+
// If there are some hidden columns change the column width to 0 (for cut the spacing in the grid-template-rows).
|
|
154
|
+
this.columns.forEach((column, index) => {
|
|
155
|
+
if (!column.BlockContainer) {
|
|
156
|
+
cssSplitArray[index] = '0';
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
this.renderer.setStyle(section.nativeElement, 'grid-template-rows', 'auto');
|
|
160
|
+
//this.renderer.setStyle(section.nativeElement, 'grid-template-rows', cssSplitArray.join(' '));
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}, 0);
|
|
166
|
+
}
|
|
167
|
+
setStyleHeight() {
|
|
168
|
+
if (this.height && this.height > 0 && this.screenType !== 'Phablet') {
|
|
169
|
+
this.styleHeight = this.styleMaxHeight = `${this.height}px`;
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
this.styleHeight = this.styleMaxHeight = 'unset';
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
getIsDragging() {
|
|
176
|
+
return this.draggingBlockKey.length > 0 && this.draggingSectionKey.length > 0;
|
|
177
|
+
}
|
|
178
|
+
getIsHidden(hideIn, currentScreenType) {
|
|
179
|
+
return this.layoutBuilderService.getIsHidden(hideIn, currentScreenType);
|
|
180
|
+
}
|
|
181
|
+
ngOnInit() {
|
|
182
|
+
this.editable = this.layoutBuilderService.isEditMode;
|
|
183
|
+
this.layoutBuilderService.previewModeChange$.pipe(this.getDestroyer()).subscribe(previewMode => {
|
|
184
|
+
this.editable = this.layoutBuilderService.isEditMode && !previewMode;
|
|
185
|
+
});
|
|
186
|
+
// Just to calculate if sections contains blocks
|
|
187
|
+
this.layoutBuilderService.sectionsChange$.pipe(this.getDestroyer()).subscribe(res => {
|
|
188
|
+
this.calculateIfSectionContainsBlocks();
|
|
189
|
+
});
|
|
190
|
+
this.layoutService.onResize$.pipe(this.getDestroyer()).subscribe((size) => {
|
|
191
|
+
this.screenSize = size;
|
|
192
|
+
});
|
|
193
|
+
this.layoutBuilderService.screenSizeChange$.pipe(this.getDestroyer()).subscribe((size) => {
|
|
194
|
+
this.screenSize = size;
|
|
195
|
+
});
|
|
196
|
+
if (this.editable) {
|
|
197
|
+
this.layoutBuilderService.sectionsColumnsDropListChange$.pipe(this.getDestroyer()).subscribe((sectionsColumnsDropList) => {
|
|
198
|
+
this.sectionsColumnsDropList = sectionsColumnsDropList;
|
|
199
|
+
});
|
|
200
|
+
this.layoutBuilderService.editorChange$.pipe(this.getDestroyer()).subscribe((editor) => {
|
|
201
|
+
this.isMainEditorState = editor && editor.type === 'layout-builder';
|
|
202
|
+
this.isEditing = editor && editor.type === 'section' && editor.id === this.key;
|
|
203
|
+
this.selectedSectionKey = editor && editor.type === 'section' ? editor.id : '';
|
|
204
|
+
this.selectedBlockKey = editor && editor.type === 'block' ? editor.id : '';
|
|
205
|
+
});
|
|
206
|
+
this.layoutBuilderService.draggingBlockKey.pipe(this.getDestroyer()).subscribe((draggingBlockKey) => {
|
|
207
|
+
this.draggingBlockKey = draggingBlockKey;
|
|
208
|
+
if (draggingBlockKey === '') {
|
|
209
|
+
this.calculateIfSectionContainsBlocks();
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
// If there is only one block in the section and now it's this block that the user is dragging.
|
|
213
|
+
const blocksLength = this.columns.filter(column => column.BlockContainer).length;
|
|
214
|
+
if (blocksLength === 1 && this.columns.find(c => c.BlockContainer?.BlockKey === this.draggingBlockKey)) {
|
|
215
|
+
this.shouldSetDefaultHeight = true;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
this.layoutBuilderService.draggingSectionKey.pipe(this.getDestroyer()).subscribe((draggingSectionKey) => {
|
|
220
|
+
this.draggingSectionKey = draggingSectionKey;
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
this.sectionColumnKeyPrefix = this.layoutBuilderService.getSectionColumnKey(this.key);
|
|
224
|
+
}
|
|
225
|
+
onEditSectionClick() {
|
|
226
|
+
this.layoutBuilderService.navigateToEditor('section', this.key);
|
|
227
|
+
}
|
|
228
|
+
onRemoveSectionClick() {
|
|
229
|
+
this.layoutBuilderService.removeSection(this.key);
|
|
230
|
+
}
|
|
231
|
+
onHideSectionChange(hideIn) {
|
|
232
|
+
this.layoutBuilderService.hideSection(this.key, hideIn);
|
|
233
|
+
}
|
|
234
|
+
onHideInMenuOpened() {
|
|
235
|
+
this.hoverState = true;
|
|
236
|
+
}
|
|
237
|
+
onHideInMenuClosed() {
|
|
238
|
+
this.hoverState = false;
|
|
239
|
+
}
|
|
240
|
+
onBlockDropped(event) {
|
|
241
|
+
this.layoutBuilderService.onBlockDropped(event, this.key);
|
|
242
|
+
}
|
|
243
|
+
canDropPredicate(columnIndex) {
|
|
244
|
+
return (drag, drop) => {
|
|
245
|
+
const res = !this.layoutBuilderService.doesColumnContainBlock(this.key, columnIndex);
|
|
246
|
+
return res;
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
onDragStart(event) {
|
|
250
|
+
this.layoutBuilderService.onSectionDragStart(event);
|
|
251
|
+
}
|
|
252
|
+
onDragEnd(event) {
|
|
253
|
+
this.layoutBuilderService.onSectionDragEnd(event);
|
|
254
|
+
}
|
|
255
|
+
onSectionBlockDragExited(event) {
|
|
256
|
+
// TODO: Remove this.
|
|
257
|
+
// // If the block is exit from his container and it's the only block in this section.
|
|
258
|
+
// if (this.containsBlocks) {
|
|
259
|
+
// const blocksLength = this.columns.filter(column => column.BlockContainer).length;
|
|
260
|
+
// if (blocksLength === 1) {
|
|
261
|
+
// this.containsBlocks = false;
|
|
262
|
+
// this.shouldSetDefaultHeight = true;
|
|
263
|
+
// }
|
|
264
|
+
// }
|
|
265
|
+
}
|
|
266
|
+
onSectionBlockDragEntered(event) {
|
|
267
|
+
// TODO: Remove this.
|
|
268
|
+
// // Only in case that the block entered back to his container and it's the only block in this section.
|
|
269
|
+
// if (event.container.id === event.item.dropContainer.id) {
|
|
270
|
+
// if (!this.containsBlocks) {
|
|
271
|
+
// this.containsBlocks = true;
|
|
272
|
+
// }
|
|
273
|
+
// }
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
SectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionComponent, deps: [{ token: i0.Renderer2 }, { token: i1.PepLayoutBuilderService }, { token: i2.PepLayoutService }], target: i0.ɵɵFactoryTarget.Component });
|
|
277
|
+
SectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: SectionComponent, selector: "section", inputs: { blockTemplate: "blockTemplate", key: "key", name: "name", split: "split", height: "height", collapseOnTablet: "collapseOnTablet", columns: "columns", hideIn: "hideIn", columnsGap: "columnsGap" }, host: { properties: { "style.max-height": "this.styleMaxHeight", "style.height": "this.styleHeight" } }, viewQueries: [{ propertyName: "sectionContainerRef", first: true, predicate: ["sectionContainer"], descendants: true }, { propertyName: "columnsElementRef", predicate: ["columnsWrapper"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #sectionContainer *ngIf=\"editable || (containsBlocks && !hideForCurrentScreenType)\" class=\"section-container \"\n [ngClass]=\"{ \n 'mobile': screenType === 'Phablet',\n 'editable-state': editable, 'main-editor-state': isMainEditorState, 'default-height': shouldSetDefaultHeight, 'active-section': isEditing,\n 'section-hidden-state': hideForCurrentScreenType, 'section-is-dragging': draggingSectionKey !== '', 'show-hover-state': hoverState }\" \n cdkDragBoundary=\".layout-builder-wrapper\" cdkDrag [cdkDragData]=\"key\" [cdkDragDisabled]=\"!editable || selectedSectionKey.length > 0 || selectedBlockKey.length > 0\" (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\" \n >\n <pep-draggable-item *ngIf=\"editable && isMainEditorState && draggingSectionKey === ''\" cdkDragHandle style=\"cursor: grab;\"\n class=\"section-toolbar\" [ngClass]=\"{ 'hide-toolbar': !hoverState }\" [title]=\"name\">\n <ng-container pep-actions>\n <pep-button classNames=\"caution\" sizeType=\"xs\" iconName=\"system_bin\" (buttonClick)=\"onRemoveSectionClick();\"></pep-button>\n <hide-in [hideIn]=\"hideIn\" (hideInChange)=\"onHideSectionChange($event)\" (menuClosed)=\"onHideInMenuClosed()\" (menuOpened)=\"onHideInMenuOpened()\"></hide-in>\n <pep-button sizeType=\"xs\" iconName=\"system_edit\" (buttonClick)=\"onEditSectionClick();\"></pep-button>\n </ng-container>\n </pep-draggable-item>\n\n <div *ngIf=\"editable\" class=\"section-background\">\n <div class=\"back-template\" *ngFor=\"let number of [0,1,2,3,4,5,6,7,8,9,10,11]\"></div>\n </div>\n <div #columnsWrapper class=\"columns-wrapper gap-{{ columnsGap }}\" \n [ngClass]=\"{ 'mobile': screenType === 'Phablet', 'is-dragging': editable && getIsDragging }\">\n <div [id]=\"sectionColumnKeyPrefix + i\" \n *ngFor=\"let column of columns; let i=index;\"\n class=\"section-column {{screenSize <= pepScreenSizeToFlipToVertical ? 'horizontal' : 'vertical'}}\"\n [ngClass]=\"{ 'active-column': selectedBlockKey === column.BlockContainer?.BlockKey, \n 'is-hidden': getIsHidden(column?.BlockContainer?.Hide, screenType),\n 'already-contains-block': editable && column.BlockContainer && column.BlockContainer.BlockKey && column.BlockContainer.BlockKey.length > 0 && \n draggingBlockKey && draggingBlockKey.length > 0 && column.BlockContainer.BlockKey !== draggingBlockKey }\"\n cdkDropList\n [cdkDropListData]=\"column\"\n [cdkDropListOrientation]=\"screenSize <= pepScreenSizeToFlipToVertical ? 'horizontal' : 'vertical'\" \n [cdkDropListConnectedTo]=\"sectionsColumnsDropList\"\n (cdkDropListDropped)=\"onBlockDropped($event)\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(i)\"\n >\n <section-block *ngIf=\"column.BlockContainer?.BlockKey\" class=\"section-block\" [sectionKey]=\"key\" [blockTemplate]=\"blockTemplate\"\n [blockContainer]=\"column.BlockContainer\" [editable]=\"editable\" [isMainEditorState]=\"isMainEditorState\" [sectionHeight]=\"styleHeight\"\n [active]=\"selectedBlockKey === column.BlockContainer?.BlockKey\" [screenType]=\"screenType\"\n (dragExited)=\"onSectionBlockDragExited($event)\" (dragEntered)=\"onSectionBlockDragEntered($event)\"></section-block>\n </div>\n </div>\n</div>\n", styles: [".section-container{position:relative;display:grid;height:100%;max-height:inherit;min-height:2.5rem}.section-container.editable-state.default-height{min-height:16rem}.section-container.editable-state.active-section{z-index:11}.section-container.editable-state.active-section .columns-wrapper{z-index:1}.section-container.editable-state.active-section ::ng-deep .remote-loader-wrapper .remote-loader{pointer-events:unset!important;opacity:unset!important}.section-container.editable-state.cdk-drag-placeholder{opacity:.5}.section-container.editable-state:not(.cdk-drag-placeholder):hover .section-toolbar,.section-container.editable-state:not(.cdk-drag-placeholder).show-hover-state .section-toolbar{display:block!important}.section-container.editable-state:not(.cdk-drag-preview) .hide-toolbar{display:none}.section-container.editable-state.main-editor-state .mobile .is-hidden{display:none}.section-container.editable-state .mobile .is-hidden{display:block}.section-container.editable-state .section-toolbar{position:absolute;top:0;height:2.625rem;z-index:11}.section-container.editable-state .section-toolbar ::ng-deep .pep-draggable-item-container{border-radius:0 0 var(--pep-border-radius-md, .25rem) 0}.section-container.editable-state .section-background{position:absolute;width:100%;height:100%;z-index:0;display:grid;grid-template-columns:repeat(12,1fr)}.section-container.editable-state .section-background .back-template{opacity:.1}.section-container.editable-state .section-background .back-template:last-of-type{border-right:0 none}.section-container .columns-wrapper{display:grid;grid-auto-flow:column;height:inherit;max-height:inherit;overflow:inherit}.section-container .columns-wrapper.is-dragging{overflow:unset}.section-container .columns-wrapper.gap-none{gap:0}.section-container .columns-wrapper.gap-sm{gap:var(--pep-spacing-sm, .5rem)}.section-container .columns-wrapper.gap-md{gap:var(--pep-spacing-lg, 1rem)}.section-container .columns-wrapper.gap-lg{gap:var(--pep-spacing-2xl, 2rem)}.section-container .columns-wrapper .section-column{position:relative;height:inherit;max-height:inherit;overflow:inherit}.section-container .columns-wrapper .section-column .section-block{height:inherit;max-height:inherit}\n", ".section-container{background:transparent}.section-container.editable-state.active-section{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.section-container.editable-state.active-section .columns-wrapper{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}.section-container.editable-state.section-hidden-state:not(.active-section){background:repeating-linear-gradient(45deg,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0),hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .8rem),repeating-linear-gradient(-45deg,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0),hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .8rem)}.section-container.editable-state.main-editor-state.cdk-drag-preview{box-shadow:0 0 0 .125rem hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state.main-editor-state.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.section-container.editable-state.main-editor-state.cdk-drag-placeholder:hover,.section-container.editable-state.main-editor-state.cdk-drag-placeholder.show-hover-state{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)!important}.section-container.editable-state.main-editor-state:hover:not(.section-is-dragging),.section-container.editable-state.main-editor-state.show-hover-state:not(.section-is-dragging){box-shadow:0 0 0 .125rem hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state.main-editor-state .section-toolbar ::ng-deep .pep-draggable-item-container{box-shadow:0 0 0 .125rem hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state .section-background .back-template{background-color:#bec3e5;border-right:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.section-container.editable-state .columns-wrapper .section-column{border:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.section-container.editable-state .columns-wrapper .section-column.active-column{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}.section-container.editable-state .columns-wrapper .section-column.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.section-container.editable-state .columns-wrapper .section-column.already-contains-block:hover{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).horizontal{border-left:unset}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).horizontal.cdk-drop-list-dragging{border-left:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).vertical{border-top:unset}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).vertical.cdk-drop-list-dragging{border-top:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i4.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i5.PepButtonComponent, selector: "pep-button", inputs: ["key", "value", "styleType", "styleStateType", "sizeType", "classNames", "disabled", "iconName", "iconPosition", "visible"], outputs: ["buttonClick"] }, { kind: "component", type: i6.SectionBlockComponent, selector: "section-block", inputs: ["blockTemplate", "sectionKey", "sectionHeight", "isMainEditorState", "editable", "active", "blockContainer", "screenType"], outputs: ["dragExited", "dragEntered"] }, { kind: "component", type: i7.PepHideInComponent, selector: "hide-in", inputs: ["hideIn"], outputs: ["hideInChange", "menuOpened", "menuClosed"] }, { kind: "component", type: i8.DraggableItemComponent, selector: "pep-draggable-item", inputs: ["title", "titlePrefix", "titleClassNames", "data", "disabled", "shadow", "styleType", "toggleContent", "isToggleContentOpen", "actionsMenu", "menuStyleType"], outputs: ["contentToggle", "actionsMenuItemClick"] }] });
|
|
278
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionComponent, decorators: [{
|
|
279
|
+
type: Component,
|
|
280
|
+
args: [{ selector: 'section', template: "<div #sectionContainer *ngIf=\"editable || (containsBlocks && !hideForCurrentScreenType)\" class=\"section-container \"\n [ngClass]=\"{ \n 'mobile': screenType === 'Phablet',\n 'editable-state': editable, 'main-editor-state': isMainEditorState, 'default-height': shouldSetDefaultHeight, 'active-section': isEditing,\n 'section-hidden-state': hideForCurrentScreenType, 'section-is-dragging': draggingSectionKey !== '', 'show-hover-state': hoverState }\" \n cdkDragBoundary=\".layout-builder-wrapper\" cdkDrag [cdkDragData]=\"key\" [cdkDragDisabled]=\"!editable || selectedSectionKey.length > 0 || selectedBlockKey.length > 0\" (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\" \n >\n <pep-draggable-item *ngIf=\"editable && isMainEditorState && draggingSectionKey === ''\" cdkDragHandle style=\"cursor: grab;\"\n class=\"section-toolbar\" [ngClass]=\"{ 'hide-toolbar': !hoverState }\" [title]=\"name\">\n <ng-container pep-actions>\n <pep-button classNames=\"caution\" sizeType=\"xs\" iconName=\"system_bin\" (buttonClick)=\"onRemoveSectionClick();\"></pep-button>\n <hide-in [hideIn]=\"hideIn\" (hideInChange)=\"onHideSectionChange($event)\" (menuClosed)=\"onHideInMenuClosed()\" (menuOpened)=\"onHideInMenuOpened()\"></hide-in>\n <pep-button sizeType=\"xs\" iconName=\"system_edit\" (buttonClick)=\"onEditSectionClick();\"></pep-button>\n </ng-container>\n </pep-draggable-item>\n\n <div *ngIf=\"editable\" class=\"section-background\">\n <div class=\"back-template\" *ngFor=\"let number of [0,1,2,3,4,5,6,7,8,9,10,11]\"></div>\n </div>\n <div #columnsWrapper class=\"columns-wrapper gap-{{ columnsGap }}\" \n [ngClass]=\"{ 'mobile': screenType === 'Phablet', 'is-dragging': editable && getIsDragging }\">\n <div [id]=\"sectionColumnKeyPrefix + i\" \n *ngFor=\"let column of columns; let i=index;\"\n class=\"section-column {{screenSize <= pepScreenSizeToFlipToVertical ? 'horizontal' : 'vertical'}}\"\n [ngClass]=\"{ 'active-column': selectedBlockKey === column.BlockContainer?.BlockKey, \n 'is-hidden': getIsHidden(column?.BlockContainer?.Hide, screenType),\n 'already-contains-block': editable && column.BlockContainer && column.BlockContainer.BlockKey && column.BlockContainer.BlockKey.length > 0 && \n draggingBlockKey && draggingBlockKey.length > 0 && column.BlockContainer.BlockKey !== draggingBlockKey }\"\n cdkDropList\n [cdkDropListData]=\"column\"\n [cdkDropListOrientation]=\"screenSize <= pepScreenSizeToFlipToVertical ? 'horizontal' : 'vertical'\" \n [cdkDropListConnectedTo]=\"sectionsColumnsDropList\"\n (cdkDropListDropped)=\"onBlockDropped($event)\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(i)\"\n >\n <section-block *ngIf=\"column.BlockContainer?.BlockKey\" class=\"section-block\" [sectionKey]=\"key\" [blockTemplate]=\"blockTemplate\"\n [blockContainer]=\"column.BlockContainer\" [editable]=\"editable\" [isMainEditorState]=\"isMainEditorState\" [sectionHeight]=\"styleHeight\"\n [active]=\"selectedBlockKey === column.BlockContainer?.BlockKey\" [screenType]=\"screenType\"\n (dragExited)=\"onSectionBlockDragExited($event)\" (dragEntered)=\"onSectionBlockDragEntered($event)\"></section-block>\n </div>\n </div>\n</div>\n", styles: [".section-container{position:relative;display:grid;height:100%;max-height:inherit;min-height:2.5rem}.section-container.editable-state.default-height{min-height:16rem}.section-container.editable-state.active-section{z-index:11}.section-container.editable-state.active-section .columns-wrapper{z-index:1}.section-container.editable-state.active-section ::ng-deep .remote-loader-wrapper .remote-loader{pointer-events:unset!important;opacity:unset!important}.section-container.editable-state.cdk-drag-placeholder{opacity:.5}.section-container.editable-state:not(.cdk-drag-placeholder):hover .section-toolbar,.section-container.editable-state:not(.cdk-drag-placeholder).show-hover-state .section-toolbar{display:block!important}.section-container.editable-state:not(.cdk-drag-preview) .hide-toolbar{display:none}.section-container.editable-state.main-editor-state .mobile .is-hidden{display:none}.section-container.editable-state .mobile .is-hidden{display:block}.section-container.editable-state .section-toolbar{position:absolute;top:0;height:2.625rem;z-index:11}.section-container.editable-state .section-toolbar ::ng-deep .pep-draggable-item-container{border-radius:0 0 var(--pep-border-radius-md, .25rem) 0}.section-container.editable-state .section-background{position:absolute;width:100%;height:100%;z-index:0;display:grid;grid-template-columns:repeat(12,1fr)}.section-container.editable-state .section-background .back-template{opacity:.1}.section-container.editable-state .section-background .back-template:last-of-type{border-right:0 none}.section-container .columns-wrapper{display:grid;grid-auto-flow:column;height:inherit;max-height:inherit;overflow:inherit}.section-container .columns-wrapper.is-dragging{overflow:unset}.section-container .columns-wrapper.gap-none{gap:0}.section-container .columns-wrapper.gap-sm{gap:var(--pep-spacing-sm, .5rem)}.section-container .columns-wrapper.gap-md{gap:var(--pep-spacing-lg, 1rem)}.section-container .columns-wrapper.gap-lg{gap:var(--pep-spacing-2xl, 2rem)}.section-container .columns-wrapper .section-column{position:relative;height:inherit;max-height:inherit;overflow:inherit}.section-container .columns-wrapper .section-column .section-block{height:inherit;max-height:inherit}\n", ".section-container{background:transparent}.section-container.editable-state.active-section{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.section-container.editable-state.active-section .columns-wrapper{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}.section-container.editable-state.section-hidden-state:not(.active-section){background:repeating-linear-gradient(45deg,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0),hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .8rem),repeating-linear-gradient(-45deg,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0),hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),0) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .65rem,hsla(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%),.32) .8rem)}.section-container.editable-state.main-editor-state.cdk-drag-preview{box-shadow:0 0 0 .125rem hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state.main-editor-state.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.section-container.editable-state.main-editor-state.cdk-drag-placeholder:hover,.section-container.editable-state.main-editor-state.cdk-drag-placeholder.show-hover-state{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)!important}.section-container.editable-state.main-editor-state:hover:not(.section-is-dragging),.section-container.editable-state.main-editor-state.show-hover-state:not(.section-is-dragging){box-shadow:0 0 0 .125rem hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state.main-editor-state .section-toolbar ::ng-deep .pep-draggable-item-container{box-shadow:0 0 0 .125rem hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state .section-background .back-template{background-color:#bec3e5;border-right:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.section-container.editable-state .columns-wrapper .section-column{border:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.section-container.editable-state .columns-wrapper .section-column.active-column{background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}.section-container.editable-state .columns-wrapper .section-column.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.section-container.editable-state .columns-wrapper .section-column.already-contains-block:hover{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsl(var(--pep-color-system-caution-h, 360),var(--pep-color-system-caution-s, 100%),var(--pep-color-system-caution-l, 45%))}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).horizontal{border-left:unset}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).horizontal.cdk-drop-list-dragging{border-left:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).vertical{border-top:unset}.section-container.editable-state .columns-wrapper.gap-none .section-column:not(.section-container.editable-state .columns-wrapper.gap-none .section-column:first-of-type).vertical.cdk-drop-list-dragging{border-top:.125rem dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}\n"] }]
|
|
281
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.PepLayoutBuilderService }, { type: i2.PepLayoutService }]; }, propDecorators: { sectionContainerRef: [{
|
|
282
|
+
type: ViewChild,
|
|
283
|
+
args: ['sectionContainer']
|
|
284
|
+
}], columnsElementRef: [{
|
|
285
|
+
type: ViewChildren,
|
|
286
|
+
args: ['columnsWrapper']
|
|
287
|
+
}], blockTemplate: [{
|
|
288
|
+
type: Input
|
|
289
|
+
}], key: [{
|
|
290
|
+
type: Input
|
|
291
|
+
}], name: [{
|
|
292
|
+
type: Input
|
|
293
|
+
}], split: [{
|
|
294
|
+
type: Input
|
|
295
|
+
}], height: [{
|
|
296
|
+
type: Input
|
|
297
|
+
}], collapseOnTablet: [{
|
|
298
|
+
type: Input
|
|
299
|
+
}], columns: [{
|
|
300
|
+
type: Input
|
|
301
|
+
}], hideIn: [{
|
|
302
|
+
type: Input
|
|
303
|
+
}], columnsGap: [{
|
|
304
|
+
type: Input
|
|
305
|
+
}], styleMaxHeight: [{
|
|
306
|
+
type: HostBinding,
|
|
307
|
+
args: ['style.max-height']
|
|
308
|
+
}], styleHeight: [{
|
|
309
|
+
type: HostBinding,
|
|
310
|
+
args: ['style.height']
|
|
311
|
+
}] } });
|
|
312
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9sYXlvdXQtYnVpbGRlci9zZWN0aW9uL3NlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbGF5b3V0LWJ1aWxkZXIvc2VjdGlvbi9zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsV0FBVyxFQUFnQixLQUFLLEVBQXVFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdEwsT0FBTyxFQUFFLHNCQUFzQixFQUFvQixpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7O0FBU3RHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxzQkFBc0I7SUF5R3hELFlBQ1ksUUFBbUIsRUFDbkIsb0JBQTZDLEVBQzdDLGFBQStCO1FBRXZDLEtBQUssRUFBRSxDQUFDO1FBSkEsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXlCO1FBQzdDLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQXRHbEMsUUFBRyxHQUFXLEVBQUUsQ0FBQztRQUNqQixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBRW5CLFdBQU0sR0FBMEIsU0FBUyxDQUFDO1FBVTFDLFlBQU8sR0FBdUIsU0FBUyxDQUFDO1FBVXhDLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQVduQyxhQUFRLEdBQW1DLEVBQUUsQ0FBQztRQVM5QyxZQUFPLEdBQXlCLEVBQUUsQ0FBQztRQWEzQyxtQkFBYyxHQUFHLE9BQU8sQ0FBQztRQUd6QixnQkFBVyxHQUFHLE9BQU8sQ0FBQztRQUVaLDRCQUF1QixHQUFhLEVBQUUsQ0FBQztRQUV6QyxjQUFTLEdBQUcsS0FBSyxDQUFD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QkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBSUYsS0FBSztzQkFEUixLQUFLO2dCQVdGLE1BQU07c0JBRFQsS0FBSztnQkFXRixnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBWUYsT0FBTztzQkFEVixLQUFLO2dCQVVGLE1BQU07c0JBRFQsS0FBSztnQkFTRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdOLGNBQWM7c0JBRGIsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBSS9CLFdBQVc7c0JBRFYsV0FBVzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFF1ZXJ5TGlzdCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka0RyYWcsIENka0RyYWdEcm9wLCBDZGtEcmFnRW5kLCBDZGtEcmFnRW50ZXIsIENka0RyYWdFeGl0LCBDZGtEcmFnU3RhcnQsIENka0Ryb3BMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBEYXRhVmlld1NjcmVlblNpemUsIFNwbGl0VHlwZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9wYXBpLXNkayc7XG5pbXBvcnQgeyBCYXNlRGVzdHJveWVyRGlyZWN0aXZlLCBQZXBMYXlvdXRTZXJ2aWNlLCBQZXBTY3JlZW5TaXplVHlwZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7IFBlcExheW91dEJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbGF5b3V0LWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBJRWRpdG9yLCBJUGVwTGF5b3V0U2VjdGlvbkNvbHVtbiwgUGVwTGF5b3V0U2l6ZVR5cGUgfSBmcm9tICcuLi9sYXlvdXQtYnVpbGRlci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2VjdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlY3Rpb24uY29tcG9uZW50LnNjc3MnLCAnLi9zZWN0aW9uLmNvbXBvbmVudC50aGVtZS5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VEZXN0cm95ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ3NlY3Rpb25Db250YWluZXInKSBzZWN0aW9uQ29udGFpbmVyUmVmITogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkcmVuKCdjb2x1bW5zV3JhcHBlcicpIGNvbHVtbnNFbGVtZW50UmVmITogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gICAgQElucHV0KCkgYmxvY2tUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcblxuICAgIEBJbnB1dCgpIGtleTogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gJyc7XG5cbiAgICBwcml2YXRlIF9zcGxpdDogU3BsaXRUeXBlIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNwbGl0KHZhbHVlOiBTcGxpdFR5cGUgfCB1bmRlZmluZWQgKSB7XG4gICAgICAgIHRoaXMuX3NwbGl0ID0gdmFsdWU7XG4gICAgICAgIHRoaXMucmVmcmVzaFNwbGl0KCk7XG4gICAgfVxuICAgIGdldCBzcGxpdCgpOiBTcGxpdFR5cGUgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3BsaXQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaGVpZ2h0OiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgQElucHV0KClcbiAgICBzZXQgaGVpZ2h0KHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5faGVpZ2h0ID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0U3R5bGVIZWlnaHQoKTtcbiAgICB9XG4gICAgZ2V0IGhlaWdodCgpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5faGVpZ2h0O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NvbGxhcHNlT25UYWJsZXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBjb2xsYXBzZU9uVGFibGV0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2NvbGxhcHNlT25UYWJsZXQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5wZXBTY3JlZW5TaXplVG9GbGlwVG9WZXJ0aWNhbCA9IHZhbHVlID8gUGVwU2NyZWVuU2l6ZVR5cGUuTUQgOiBQZXBTY3JlZW5TaXplVHlwZS5TTTtcbiAgICAgICAgdGhpcy5yZWZyZXNoU3BsaXQoKTtcbiAgICB9XG4gICAgZ2V0IGNvbGxhcHNlT25UYWJsZXQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2xsYXBzZU9uVGFibGV0O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NvbHVtbnM6IEFycmF5PElQZXBMYXlvdXRTZWN0aW9uQ29sdW1uPiA9IFtdO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNvbHVtbnModmFsdWU6IEFycmF5PElQZXBMYXlvdXRTZWN0aW9uQ29sdW1uPikge1xuICAgICAgICB0aGlzLl9jb2x1bW5zID0gdmFsdWUgfHwgW107XG4gICAgfVxuICAgIGdldCBjb2x1bW5zKCk6IEFycmF5PElQZXBMYXlvdXRTZWN0aW9uQ29sdW1uPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2x1bW5zO1xuICAgIH1cbiAgICBcbiAgICBwcml2YXRlIF9oaWRlSW46IERhdGFWaWV3U2NyZWVuU2l6ZVtdID0gW107XG4gICAgQElucHV0KClcbiAgICBzZXQgaGlkZUluKHZhbHVlOiBEYXRhVmlld1NjcmVlblNpemVbXSkge1xuICAgICAgICB0aGlzLl9oaWRlSW4gPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zZXRJZkhpZGVGb3JDdXJyZW50U2NyZWVuVHlwZSgpO1xuICAgIH1cbiAgICBnZXQgaGlkZUluKCk6IERhdGFWaWV3U2NyZWVuU2l6ZVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hpZGVJbjtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBjb2x1bW5zR2FwITogUGVwTGF5b3V0U2l6ZVR5cGU7XG4gICAgICAgIFxuICAgIEBIb3N0QmluZGluZygnc3R5bGUubWF4LWhlaWdodCcpXG4gICAgc3R5bGVNYXhIZWlnaHQgPSAndW5zZXQnO1xuICAgIFxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0JylcbiAgICBzdHlsZUhlaWdodCA9ICd1bnNldCc7XG4gICAgXG4gICAgcHJvdGVjdGVkIHNlY3Rpb25zQ29sdW1uc0Ryb3BMaXN0OiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgcHJpdmF0ZSBfZWRpdGFibGUgPSBmYWxzZTtcbiAgICBwcm90ZWN0ZWQgc2V0IGVkaXRhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2VkaXRhYmxlID0gdmFsdWU7XG4gICAgICAgIHRoaXMucmVmcmVzaFNwbGl0KCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBnZXQgZWRpdGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lZGl0YWJsZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zY3JlZW5TaXplITogUGVwU2NyZWVuU2l6ZVR5cGU7XG4gICAgcHJvdGVjdGVkIHNldCBzY3JlZW5TaXplKHZhbHVlOiBQZXBTY3JlZW5TaXplVHlwZSkge1xuICAgICAgICB0aGlzLl9zY3JlZW5TaXplID0gdmFsdWU7XG4gICAgICAgIHRoaXMucmVmcmVzaFNwbGl0KCk7XG4gICAgICAgIHRoaXMuc2V0U2NyZWVuVHlwZSgpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgZ2V0IHNjcmVlblNpemUoKTogUGVwU2NyZWVuU2l6ZVR5cGUge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2NyZWVuU2l6ZTtcbiAgICB9XG5cbiAgICAvLyBQZXBTY3JlZW5TaXplVHlwZSA9IFBlcFNjcmVlblNpemVUeXBlO1xuICAgIHByb3RlY3RlZCBzZWN0aW9uQ29sdW1uS2V5UHJlZml4ID0gJyc7XG4gICAgXG4gICAgcHJvdGVjdGVkIGlzTWFpbkVkaXRvclN0YXRlID0gZmFsc2U7XG4gICAgcHJvdGVjdGVkIGlzRWRpdGluZyA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBzZWxlY3RlZFNlY3Rpb25LZXkgPSAnJztcbiAgICBwcm90ZWN0ZWQgc2VsZWN0ZWRCbG9ja0tleSA9ICcnO1xuICAgIFxuICAgIHByb3RlY3RlZCBjb250YWluc0Jsb2NrcyA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBzaG91bGRTZXREZWZhdWx0SGVpZ2h0ID0gZmFsc2U7XG4gICAgcHJvdGVjdGVkIHBlcFNjcmVlblNpemVUb0ZsaXBUb1ZlcnRpY2FsID0gUGVwU2NyZWVuU2l6ZVR5cGUuU007XG4gICAgcHJvdGVjdGVkIHNjcmVlblR5cGUhOiBEYXRhVmlld1NjcmVlblNpemU7XG4gICAgcHJvdGVjdGVkIGhpZGVGb3JDdXJyZW50U2NyZWVuVHlwZSA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBkcmFnZ2luZ0Jsb2NrS2V5OiBzdHJpbmcgPSAnJztcbiAgICBwcm90ZWN0ZWQgZHJhZ2dpbmdTZWN0aW9uS2V5OiBzdHJpbmcgPSAnJztcbiAgICBwcm90ZWN0ZWQgaG92ZXJTdGF0ZSA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJpdmF0ZSBsYXlvdXRCdWlsZGVyU2VydmljZTogUGVwTGF5b3V0QnVpbGRlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbGF5b3V0U2VydmljZTogUGVwTGF5b3V0U2VydmljZSxcbiAgICApIHsgXG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVJZlNlY3Rpb25Db250YWluc0Jsb2NrcygpIHtcbiAgICAgICAgdGhpcy5jb250YWluc0Jsb2NrcyA9IHRoaXMuY29sdW1ucy5zb21lKGNvbHVtbiA9PiBjb2x1bW4uQmxvY2tDb250YWluZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLmVkaXRhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnNob3VsZFNldERlZmF1bHRIZWlnaHQgPSAhdGhpcy5jb250YWluc0Jsb2NrcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0U2NyZWVuVHlwZSgpIHtcbiAgICAgICAgdGhpcy5zY3JlZW5UeXBlID0gdGhpcy5sYXlvdXRCdWlsZGVyU2VydmljZS5nZXRTY3JlZW5UeXBlKHRoaXMuc2NyZWVuU2l6ZSk7XG4gICAgICAgIHRoaXMuc2V0SWZIaWRlRm9yQ3VycmVudFNjcmVlblR5cGUoKTtcbiAgICAgICAgdGhpcy5zZXRTdHlsZUhlaWdodCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SWZIaWRlRm9yQ3VycmVudFNjcmVlblR5cGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGlkZUZvckN1cnJlbnRTY3JlZW5UeXBlID0gdGhpcy5sYXlvdXRCdWlsZGVyU2VydmljZS5nZXRJc0hpZGRlbih0aGlzLmhpZGVJbiwgdGhpcy5zY3JlZW5UeXBlKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBnZXRDc3NTcGxpdFN0cmluZygpIHtcbiAgICAgICAgc3dpdGNoICh0aGlzLnNwbGl0KSB7XG4gICAgICAgICAgICBjYXNlICcxLzIgMS8yJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJzFmciAxZnInO1xuICAgICAgICAgICAgY2FzZSAnMS8yIDEvNCAxLzQnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnMmZyIDFmciAxZnInO1xuICAgICAgICAgICAgY2FzZSAnMS8zIDEvMyAxLzMnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnMWZyIDFmciAxZnInO1xuICAgICAgICAgICAgY2FzZSAnMS8zIDIvMyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICcxZnIgMmZyJztcbiAgICAgICAgICAgIGNhc2UgJzEvNCAxLzIgMS80JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJzFmciAyZnIgMWZyJztcbiAgICAgICAgICAgIGNhc2UgJzEvNCAxLzQgMS8yJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJzFmciAxZnIgMmZyJztcbiAgICAgICAgICAgIGNhc2UgJzEvNCAxLzQgMS80IDEvNCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICcxZnIgMWZyIDFmciAxZnInO1xuICAgICAgICAgICAgY2FzZSAnMS80IDMvNCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICcxZnIgM2ZyJztcbiAgICAgICAgICAgIGNhc2UgJzIvMyAxLzMnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnMmZyIDFmcic7XG4gICAgICAgICAgICBjYXNlICczLzQgMS80JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJzNmciAxZnInO1xuICAgICAgICAgICAgZGVmYXVsdDogLy8gRm9yIG9uZSBjb2x1bW4uXG4gICAgICAgICAgICAgICAgcmV0dXJuICcxZnInO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWZyZXNoU3BsaXQoKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuc2VjdGlvbkNvbnRhaW5lclJlZikge1xuICAgICAgICAgICAgICAgIGxldCBjc3NTcGxpdFN0cmluZyA9IHRoaXMuZ2V0Q3NzU3BsaXRTdHJpbmcoKTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvLyBHbyBmb3IgYWxsIHRoZSBjb2x1bW5zIGluIHRoZSBjb2x1bW5zV3JhcHBlclxuICAgICAgICAgICAgICAgIHRoaXMuY29sdW1uc0VsZW1lbnRSZWYudG9BcnJheSgpLm1hcCgoc2VjdGlvbiwgc2VjdGlvbkluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIEhvcml6b250YWwgKHRydWUpIGZvciBsYXJnZSBzY3JlZW5zLCBmYWxzZSBmb3Igc21hbGwgc2NyZWVucy5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNIb3Jpem9udGFsVmlldyA9IHRoaXMuc2NyZWVuU2l6ZSA8PSB0aGlzLnBlcFNjcmVlblNpemVUb0ZsaXBUb1ZlcnRpY2FsO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0hvcml6b250YWxWaWV3KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHNlY3Rpb24ubmF0aXZlRWxlbWVudCwgJ2dyaWQtYXV0by1mbG93JywgJ2NvbHVtbicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzZWN0aW9uLm5hdGl2ZUVsZW1lbnQsICdncmlkLXRlbXBsYXRlLXJvd3MnLCAndW5zZXQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoc2VjdGlvbi5uYXRpdmVFbGVtZW50LCAnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJywgY3NzU3BsaXRTdHJpbmcpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzZWN0aW9uLm5hdGl2ZUVsZW1lbnQsICdncmlkLWF1dG8tZmxvdycsICdyb3cnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoc2VjdGlvbi5uYXRpdmVFbGVtZW50LCAnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJywgJ3Vuc2V0Jyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHNlY3Rpb24ubmF0aXZlRWxlbWVudCwgJ2dyaWQtdGVtcGxhdGUtcm93cycsIGNzc1NwbGl0U3RyaW5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW4gcnVudGltZSAob3IgcHJldmlldyBtb2RlKS5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5lZGl0YWJsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNzc1NwbGl0QXJyYXkgPSBjc3NTcGxpdFN0cmluZy5zcGxpdCgnICcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZXJlIGFyZSBzb21lIGhpZGRlbiBjb2x1bW5zIGNoYW5nZSB0aGUgY29sdW1uIHdpZHRoIHRvIDAgKGZvciBjdXQgdGhlIHNwYWNpbmcgaW4gdGhlIGdyaWQtdGVtcGxhdGUtcm93cykuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2x1bW5zLmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFjb2x1bW4uQmxvY2tDb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzc1NwbGl0QXJyYXlbaW5kZXhdID0gJzAnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzZWN0aW9uLm5hdGl2ZUVsZW1lbnQsICdncmlkLXRlbXBsYXRlLXJvd3MnLCAnYXV0bycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzZWN0aW9uLm5hdGl2ZUVsZW1lbnQsICdncmlkLXRlbXBsYXRlLXJvd3MnLCBjc3NTcGxpdEFycmF5LmpvaW4oJyAnKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRTdHlsZUhlaWdodCgpIHtcbiAgICAgICAgaWYgKHRoaXMuaGVpZ2h0ICYmIHRoaXMuaGVpZ2h0ID4gMCAmJiB0aGlzLnNjcmVlblR5cGUgIT09ICdQaGFibGV0Jykge1xuICAgICAgICAgICAgdGhpcy5zdHlsZUhlaWdodCA9IHRoaXMuc3R5bGVNYXhIZWlnaHQgPSBgJHt0aGlzLmhlaWdodH1weGA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnN0eWxlSGVpZ2h0ID0gdGhpcy5zdHlsZU1heEhlaWdodCA9ICd1bnNldCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRJc0RyYWdnaW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kcmFnZ2luZ0Jsb2NrS2V5Lmxlbmd0aCA+IDAgJiYgdGhpcy5kcmFnZ2luZ1NlY3Rpb25LZXkubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBnZXRJc0hpZGRlbihoaWRlSW46IERhdGFWaWV3U2NyZWVuU2l6ZVtdIHwgdW5kZWZpbmVkLCBjdXJyZW50U2NyZWVuVHlwZTogRGF0YVZpZXdTY3JlZW5TaXplKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLmdldElzSGlkZGVuKGhpZGVJbiwgY3VycmVudFNjcmVlblR5cGUpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVkaXRhYmxlID0gdGhpcy5sYXlvdXRCdWlsZGVyU2VydmljZS5pc0VkaXRNb2RlO1xuXG4gICAgICAgIHRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2UucHJldmlld01vZGVDaGFuZ2UkLnBpcGUodGhpcy5nZXREZXN0cm95ZXIoKSkuc3Vic2NyaWJlKHByZXZpZXdNb2RlID0+IHtcbiAgICAgICAgICAgIHRoaXMuZWRpdGFibGUgPSB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLmlzRWRpdE1vZGUgJiYgIXByZXZpZXdNb2RlO1xuICAgICAgICB9KTtcblxuICAgICAgICAvLyBKdXN0IHRvIGNhbGN1bGF0ZSBpZiBzZWN0aW9ucyBjb250YWlucyBibG9ja3NcbiAgICAgICAgdGhpcy5sYXlvdXRCdWlsZGVyU2VydmljZS5zZWN0aW9uc0NoYW5nZSQucGlwZSh0aGlzLmdldERlc3Ryb3llcigpKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlSWZTZWN0aW9uQ29udGFpbnNCbG9ja3MoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLm9uUmVzaXplJC5waXBlKHRoaXMuZ2V0RGVzdHJveWVyKCkpLnN1YnNjcmliZSgoc2l6ZTogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNjcmVlblNpemUgPSBzaXplO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLnNjcmVlblNpemVDaGFuZ2UkLnBpcGUodGhpcy5nZXREZXN0cm95ZXIoKSkuc3Vic2NyaWJlKChzaXplOiBhbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2NyZWVuU2l6ZSA9IHNpemU7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmVkaXRhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLnNlY3Rpb25zQ29sdW1uc0Ryb3BMaXN0Q2hhbmdlJC5waXBlKHRoaXMuZ2V0RGVzdHJveWVyKCkpLnN1YnNjcmliZSgoc2VjdGlvbnNDb2x1bW5zRHJvcExpc3Q6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VjdGlvbnNDb2x1bW5zRHJvcExpc3QgPSBzZWN0aW9uc0NvbHVtbnNEcm9wTGlzdDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLmVkaXRvckNoYW5nZSQucGlwZSh0aGlzLmdldERlc3Ryb3llcigpKS5zdWJzY3JpYmUoKGVkaXRvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc01haW5FZGl0b3JTdGF0ZSA9IGVkaXRvciAmJiBlZGl0b3IudHlwZSA9PT0gJ2xheW91dC1idWlsZGVyJztcbiAgICAgICAgICAgICAgICB0aGlzLmlzRWRpdGluZyA9IGVkaXRvciAmJiBlZGl0b3IudHlwZSA9PT0gJ3NlY3Rpb24nICYmIGVkaXRvci5pZCA9PT0gdGhpcy5rZXk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFNlY3Rpb25LZXkgPSBlZGl0b3IgJiYgZWRpdG9yLnR5cGUgPT09ICdzZWN0aW9uJyA/IGVkaXRvci5pZCA6ICcnO1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRCbG9ja0tleSA9IGVkaXRvciAmJiBlZGl0b3IudHlwZSA9PT0gJ2Jsb2NrJyA/IGVkaXRvci5pZCA6ICcnO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2UuZHJhZ2dpbmdCbG9ja0tleS5waXBlKHRoaXMuZ2V0RGVzdHJveWVyKCkpLnN1YnNjcmliZSgoZHJhZ2dpbmdCbG9ja0tleTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kcmFnZ2luZ0Jsb2NrS2V5ID0gZHJhZ2dpbmdCbG9ja0tleTtcblxuICAgICAgICAgICAgICAgIGlmIChkcmFnZ2luZ0Jsb2NrS2V5ID09PSAnJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUlmU2VjdGlvbkNvbnRhaW5zQmxvY2tzKCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgb25seSBvbmUgYmxvY2sgaW4gdGhlIHNlY3Rpb24gYW5kIG5vdyBpdCdzIHRoaXMgYmxvY2sgdGhhdCB0aGUgdXNlciBpcyBkcmFnZ2luZy5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmxvY2tzTGVuZ3RoID0gdGhpcy5jb2x1bW5zLmZpbHRlcihjb2x1bW4gPT4gY29sdW1uLkJsb2NrQ29udGFpbmVyKS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGlmIChibG9ja3NMZW5ndGggPT09IDEgJiYgdGhpcy5jb2x1bW5zLmZpbmQoYyA9PiBjLkJsb2NrQ29udGFpbmVyPy5CbG9ja0tleSA9PT0gdGhpcy5kcmFnZ2luZ0Jsb2NrS2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG91bGRTZXREZWZhdWx0SGVpZ2h0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2UuZHJhZ2dpbmdTZWN0aW9uS2V5LnBpcGUodGhpcy5nZXREZXN0cm95ZXIoKSkuc3Vic2NyaWJlKChkcmFnZ2luZ1NlY3Rpb25LZXk6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZHJhZ2dpbmdTZWN0aW9uS2V5ID0gZHJhZ2dpbmdTZWN0aW9uS2V5O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNlY3Rpb25Db2x1bW5LZXlQcmVmaXggPSB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLmdldFNlY3Rpb25Db2x1bW5LZXkodGhpcy5rZXkpO1xuICAgIH1cblxuICAgIG9uRWRpdFNlY3Rpb25DbGljaygpIHtcbiAgICAgICAgdGhpcy5sYXlvdXRCdWlsZGVyU2VydmljZS5uYXZpZ2F0ZVRvRWRpdG9yKCdzZWN0aW9uJywgdGhpcy5rZXkpO1xuICAgIH1cblxuICAgIG9uUmVtb3ZlU2VjdGlvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLnJlbW92ZVNlY3Rpb24odGhpcy5rZXkpO1xuICAgIH1cblxuICAgIG9uSGlkZVNlY3Rpb25DaGFuZ2UoaGlkZUluOiBEYXRhVmlld1NjcmVlblNpemVbXSkge1xuICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJTZXJ2aWNlLmhpZGVTZWN0aW9uKHRoaXMua2V5LCBoaWRlSW4pO1xuICAgIH1cblxuICAgIG9uSGlkZUluTWVudU9wZW5lZCgpIHtcbiAgICAgICAgdGhpcy5ob3ZlclN0YXRlID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBvbkhpZGVJbk1lbnVDbG9zZWQoKSB7XG4gICAgICAgIHRoaXMuaG92ZXJTdGF0ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIG9uQmxvY2tEcm9wcGVkKGV2ZW50OiBDZGtEcmFnRHJvcDxJUGVwTGF5b3V0U2VjdGlvbkNvbHVtbiwgYW55LCBhbnk+KSB7XG4gICAgICAgIHRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2Uub25CbG9ja0Ryb3BwZWQoZXZlbnQsIHRoaXMua2V5KTtcbiAgICB9XG5cbiAgICBjYW5Ecm9wUHJlZGljYXRlKGNvbHVtbkluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIChkcmFnOiBDZGtEcmFnLCBkcm9wOiBDZGtEcm9wTGlzdCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzID0gIXRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2UuZG9lc0NvbHVtbkNvbnRhaW5CbG9jayh0aGlzLmtleSwgY29sdW1uSW5kZXgpO1xuICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBvbkRyYWdTdGFydChldmVudDogQ2RrRHJhZ1N0YXJ0KSB7XG4gICAgICAgIHRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2Uub25TZWN0aW9uRHJhZ1N0YXJ0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBvbkRyYWdFbmQoZXZlbnQ6IENka0RyYWdFbmQpIHtcbiAgICAgICAgdGhpcy5sYXlvdXRCdWlsZGVyU2VydmljZS5vblNlY3Rpb25EcmFnRW5kKGV2ZW50KTtcbiAgICB9XG5cbiAgICBvblNlY3Rpb25CbG9ja0RyYWdFeGl0ZWQoZXZlbnQ6IENka0RyYWdFeGl0KSB7XG4gICAgICAgIC8vIFRPRE86IFJlbW92ZSB0aGlzLlxuICAgICAgICAvLyAvLyBJZiB0aGUgYmxvY2sgaXMgZXhpdCBmcm9tIGhpcyBjb250YWluZXIgYW5kIGl0J3MgdGhlIG9ubHkgYmxvY2sgaW4gdGhpcyBzZWN0aW9uLlxuICAgICAgICAvLyBpZiAodGhpcy5jb250YWluc0Jsb2Nrcykge1xuICAgICAgICAvLyAgICAgY29uc3QgYmxvY2tzTGVuZ3RoID0gdGhpcy5jb2x1bW5zLmZpbHRlcihjb2x1bW4gPT4gY29sdW1uLkJsb2NrQ29udGFpbmVyKS5sZW5ndGg7XG5cbiAgICAgICAgLy8gICAgIGlmIChibG9ja3NMZW5ndGggPT09IDEpIHtcbiAgICAgICAgLy8gICAgICAgICB0aGlzLmNvbnRhaW5zQmxvY2tzID0gZmFsc2U7XG4gICAgICAgIC8vICAgICAgICAgdGhpcy5zaG91bGRTZXREZWZhdWx0SGVpZ2h0ID0gdHJ1ZTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIG9uU2VjdGlvbkJsb2NrRHJhZ0VudGVyZWQoZXZlbnQ6IENka0RyYWdFbnRlcikge1xuICAgICAgICAvLyBUT0RPOiBSZW1vdmUgdGhpcy5cbiAgICAgICAgLy8gLy8gT25seSBpbiBjYXNlIHRoYXQgdGhlIGJsb2NrIGVudGVyZWQgYmFjayB0byBoaXMgY29udGFpbmVyIGFuZCBpdCdzIHRoZSBvbmx5IGJsb2NrIGluIHRoaXMgc2VjdGlvbi5cbiAgICAgICAgLy8gaWYgKGV2ZW50LmNvbnRhaW5lci5pZCA9PT0gZXZlbnQuaXRlbS5kcm9wQ29udGFpbmVyLmlkKSB7XG4gICAgICAgIC8vICAgICBpZiAoIXRoaXMuY29udGFpbnNCbG9ja3MpIHtcbiAgICAgICAgLy8gICAgICAgICB0aGlzLmNvbnRhaW5zQmxvY2tzID0gdHJ1ZTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cbn1cbiIsIjxkaXYgI3NlY3Rpb25Db250YWluZXIgKm5nSWY9XCJlZGl0YWJsZSB8fCAoY29udGFpbnNCbG9ja3MgJiYgIWhpZGVGb3JDdXJyZW50U2NyZWVuVHlwZSlcIiBjbGFzcz1cInNlY3Rpb24tY29udGFpbmVyIFwiXG4gICAgW25nQ2xhc3NdPVwieyBcbiAgICAgICAgJ21vYmlsZSc6IHNjcmVlblR5cGUgPT09ICdQaGFibGV0JyxcbiAgICAgICAgJ2VkaXRhYmxlLXN0YXRlJzogZWRpdGFibGUsICdtYWluLWVkaXRvci1zdGF0ZSc6IGlzTWFpbkVkaXRvclN0YXRlLCAnZGVmYXVsdC1oZWlnaHQnOiBzaG91bGRTZXREZWZhdWx0SGVpZ2h0LCAnYWN0aXZlLXNlY3Rpb24nOiBpc0VkaXRpbmcsXG4gICAgICAgICdzZWN0aW9uLWhpZGRlbi1zdGF0ZSc6IGhpZGVGb3JDdXJyZW50U2NyZWVuVHlwZSwgJ3NlY3Rpb24taXMtZHJhZ2dpbmcnOiBkcmFnZ2luZ1NlY3Rpb25LZXkgIT09ICcnLCAnc2hvdy1ob3Zlci1zdGF0ZSc6IGhvdmVyU3RhdGUgfVwiIFxuICAgICAgICBjZGtEcmFnQm91bmRhcnk9XCIubGF5b3V0LWJ1aWxkZXItd3JhcHBlclwiIGNka0RyYWcgW2Nka0RyYWdEYXRhXT1cImtleVwiIFtjZGtEcmFnRGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IHNlbGVjdGVkU2VjdGlvbktleS5sZW5ndGggPiAwIHx8IHNlbGVjdGVkQmxvY2tLZXkubGVuZ3RoID4gMFwiIChjZGtEcmFnU3RhcnRlZCk9XCJvbkRyYWdTdGFydCgkZXZlbnQpXCIgKGNka0RyYWdFbmRlZCk9XCJvbkRyYWdFbmQoJGV2ZW50KVwiIFxuICAgID5cbiAgICA8cGVwLWRyYWdnYWJsZS1pdGVtICpuZ0lmPVwiZWRpdGFibGUgJiYgaXNNYWluRWRpdG9yU3RhdGUgJiYgZHJhZ2dpbmdTZWN0aW9uS2V5ID09PSAnJ1wiIGNka0RyYWdIYW5kbGUgc3R5bGU9XCJjdXJzb3I6IGdyYWI7XCJcbiAgICAgICAgY2xhc3M9XCJzZWN0aW9uLXRvb2xiYXJcIiBbbmdDbGFzc109XCJ7ICdoaWRlLXRvb2xiYXInOiAhaG92ZXJTdGF0ZSB9XCIgW3RpdGxlXT1cIm5hbWVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBwZXAtYWN0aW9ucz5cbiAgICAgICAgICAgIDxwZXAtYnV0dG9uIGNsYXNzTmFtZXM9XCJjYXV0aW9uXCIgc2l6ZVR5cGU9XCJ4c1wiIGljb25OYW1lPVwic3lzdGVtX2JpblwiIChidXR0b25DbGljayk9XCJvblJlbW92ZVNlY3Rpb25DbGljaygpO1wiPjwvcGVwLWJ1dHRvbj5cbiAgICAgICAgICAgIDxoaWRlLWluIFtoaWRlSW5dPVwiaGlkZUluXCIgKGhpZGVJbkNoYW5nZSk9XCJvbkhpZGVTZWN0aW9uQ2hhbmdlKCRldmVudClcIiAobWVudUNsb3NlZCk9XCJvbkhpZGVJbk1lbnVDbG9zZWQoKVwiIChtZW51T3BlbmVkKT1cIm9uSGlkZUluTWVudU9wZW5lZCgpXCI+PC9oaWRlLWluPlxuICAgICAgICAgICAgPHBlcC1idXR0b24gc2l6ZVR5cGU9XCJ4c1wiIGljb25OYW1lPVwic3lzdGVtX2VkaXRcIiAoYnV0dG9uQ2xpY2spPVwib25FZGl0U2VjdGlvbkNsaWNrKCk7XCI+PC9wZXAtYnV0dG9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3BlcC1kcmFnZ2FibGUtaXRlbT5cblxuICAgIDxkaXYgKm5nSWY9XCJlZGl0YWJsZVwiIGNsYXNzPVwic2VjdGlvbi1iYWNrZ3JvdW5kXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYWNrLXRlbXBsYXRlXCIgKm5nRm9yPVwibGV0IG51bWJlciBvZiBbMCwxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMV1cIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICNjb2x1bW5zV3JhcHBlciBjbGFzcz1cImNvbHVtbnMtd3JhcHBlciBnYXAte3sgY29sdW1uc0dhcCB9fVwiIFxuICAgICAgICBbbmdDbGFzc109XCJ7ICdtb2JpbGUnOiBzY3JlZW5UeXBlID09PSAnUGhhYmxldCcsICdpcy1kcmFnZ2luZyc6IGVkaXRhYmxlICYmIGdldElzRHJhZ2dpbmcgfVwiPlxuICAgICAgICA8ZGl2IFtpZF09XCJzZWN0aW9uQ29sdW1uS2V5UHJlZml4ICsgaVwiIFxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zOyBsZXQgaT1pbmRleDtcIlxuICAgICAgICAgICAgY2xhc3M9XCJzZWN0aW9uLWNvbHVtbiB7e3NjcmVlblNpemUgPD0gcGVwU2NyZWVuU2l6ZVRvRmxpcFRvVmVydGljYWwgPyAnaG9yaXpvbnRhbCcgOiAndmVydGljYWwnfX1cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnYWN0aXZlLWNvbHVtbic6IHNlbGVjdGVkQmxvY2tLZXkgPT09IGNvbHVtbi5CbG9ja0NvbnRhaW5lcj8uQmxvY2tLZXksIFxuICAgICAgICAgICAgICAgICdpcy1oaWRkZW4nOiBnZXRJc0hpZGRlbihjb2x1bW4/LkJsb2NrQ29udGFpbmVyPy5IaWRlLCBzY3JlZW5UeXBlKSxcbiAgICAgICAgICAgICAgICAnYWxyZWFkeS1jb250YWlucy1ibG9jayc6IGVkaXRhYmxlICYmIGNvbHVtbi5CbG9ja0NvbnRhaW5lciAmJiBjb2x1bW4uQmxvY2tDb250YWluZXIuQmxvY2tLZXkgJiYgY29sdW1uLkJsb2NrQ29udGFpbmVyLkJsb2NrS2V5Lmxlbmd0aCA+IDAgJiYgXG4gICAgICAgICAgICAgICAgICAgIGRyYWdnaW5nQmxvY2tLZXkgJiYgZHJhZ2dpbmdCbG9ja0tleS5sZW5ndGggPiAwICYmIGNvbHVtbi5CbG9ja0NvbnRhaW5lci5CbG9ja0tleSAhPT0gZHJhZ2dpbmdCbG9ja0tleSB9XCJcbiAgICAgICAgICAgIGNka0Ryb3BMaXN0XG4gICAgICAgICAgICBbY2RrRHJvcExpc3REYXRhXT1cImNvbHVtblwiXG4gICAgICAgICAgICBbY2RrRHJvcExpc3RPcmllbnRhdGlvbl09XCJzY3JlZW5TaXplIDw9IHBlcFNjcmVlblNpemVUb0ZsaXBUb1ZlcnRpY2FsID8gJ2hvcml6b250YWwnIDogJ3ZlcnRpY2FsJ1wiIFxuICAgICAgICAgICAgW2Nka0Ryb3BMaXN0Q29ubmVjdGVkVG9dPVwic2VjdGlvbnNDb2x1bW5zRHJvcExpc3RcIlxuICAgICAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkJsb2NrRHJvcHBlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImNhbkRyb3BQcmVkaWNhdGUoaSlcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c2VjdGlvbi1ibG9jayAqbmdJZj1cImNvbHVtbi5CbG9ja0NvbnRhaW5lcj8uQmxvY2tLZXlcIiBjbGFzcz1cInNlY3Rpb24tYmxvY2tcIiBbc2VjdGlvbktleV09XCJrZXlcIiBbYmxvY2tUZW1wbGF0ZV09XCJibG9ja1RlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICBbYmxvY2tDb250YWluZXJdPVwiY29sdW1uLkJsb2NrQ29udGFpbmVyXCIgW2VkaXRhYmxlXT1cImVkaXRhYmxlXCIgW2lzTWFpbkVkaXRvclN0YXRlXT1cImlzTWFpbkVkaXRvclN0YXRlXCIgW3NlY3Rpb25IZWlnaHRdPVwic3R5bGVIZWlnaHRcIlxuICAgICAgICAgICAgICAgIFthY3RpdmVdPVwic2VsZWN0ZWRCbG9ja0tleSA9PT0gY29sdW1uLkJsb2NrQ29udGFpbmVyPy5CbG9ja0tleVwiIFtzY3JlZW5UeXBlXT1cInNjcmVlblR5cGVcIlxuICAgICAgICAgICAgICAgIChkcmFnRXhpdGVkKT1cIm9uU2VjdGlvbkJsb2NrRHJhZ0V4aXRlZCgkZXZlbnQpXCIgKGRyYWdFbnRlcmVkKT1cIm9uU2VjdGlvbkJsb2NrRHJhZ0VudGVyZWQoJGV2ZW50KVwiPjwvc2VjdGlvbi1ibG9jaz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SectionComponent } from './section.component';
|
|
4
|
+
import { SectionBlockModule } from '../section-block/section-block.module';
|
|
5
|
+
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
6
|
+
import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
|
|
7
|
+
import { PepRemoteLoaderModule } from '@pepperi-addons/ngx-lib/remote-loader';
|
|
8
|
+
import { PepHideInModule } from '../hide-in/hide-in.module';
|
|
9
|
+
import { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class SectionModule {
|
|
12
|
+
}
|
|
13
|
+
SectionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
SectionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: SectionModule, declarations: [SectionComponent], imports: [CommonModule,
|
|
15
|
+
DragDropModule,
|
|
16
|
+
PepButtonModule,
|
|
17
|
+
PepRemoteLoaderModule,
|
|
18
|
+
SectionBlockModule,
|
|
19
|
+
PepHideInModule,
|
|
20
|
+
PepDraggableItemsModule], exports: [SectionComponent] });
|
|
21
|
+
SectionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionModule, imports: [CommonModule,
|
|
22
|
+
DragDropModule,
|
|
23
|
+
PepButtonModule,
|
|
24
|
+
PepRemoteLoaderModule,
|
|
25
|
+
SectionBlockModule,
|
|
26
|
+
PepHideInModule,
|
|
27
|
+
PepDraggableItemsModule] });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionModule, decorators: [{
|
|
29
|
+
type: NgModule,
|
|
30
|
+
args: [{
|
|
31
|
+
declarations: [SectionComponent],
|
|
32
|
+
imports: [
|
|
33
|
+
CommonModule,
|
|
34
|
+
DragDropModule,
|
|
35
|
+
PepButtonModule,
|
|
36
|
+
PepRemoteLoaderModule,
|
|
37
|
+
SectionBlockModule,
|
|
38
|
+
PepHideInModule,
|
|
39
|
+
PepDraggableItemsModule,
|
|
40
|
+
// TranslateModule.forChild()
|
|
41
|
+
],
|
|
42
|
+
exports: [SectionComponent]
|
|
43
|
+
}]
|
|
44
|
+
}] });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9sYXlvdXQtYnVpbGRlci9zZWN0aW9uL3NlY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOztBQWdCbEYsTUFBTSxPQUFPLGFBQWE7OzBHQUFiLGFBQWE7MkdBQWIsYUFBYSxpQkFiUCxnQkFBZ0IsYUFFM0IsWUFBWTtRQUNaLGNBQWM7UUFDZCxlQUFlO1FBQ2YscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YsdUJBQXVCLGFBR2pCLGdCQUFnQjsyR0FFakIsYUFBYSxZQVhsQixZQUFZO1FBQ1osY0FBYztRQUNkLGVBQWU7UUFDZixxQkFBcUI7UUFDckIsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZix1QkFBdUI7MkZBS2xCLGFBQWE7a0JBZHpCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2hDLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZix1QkFBdUI7d0JBQ3ZCLDZCQUE2QjtxQkFDaEM7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9zZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWN0aW9uQmxvY2tNb2R1bGUgfSBmcm9tICcuLi9zZWN0aW9uLWJsb2NrL3NlY3Rpb24tYmxvY2subW9kdWxlJztcbmltcG9ydCB7IERyYWdEcm9wTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBQZXBCdXR0b25Nb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9idXR0b24nO1xuaW1wb3J0IHsgUGVwUmVtb3RlTG9hZGVyTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvcmVtb3RlLWxvYWRlcic7XG5cbmltcG9ydCB7IFBlcEhpZGVJbk1vZHVsZSB9IGZyb20gJy4uL2hpZGUtaW4vaGlkZS1pbi5tb2R1bGUnO1xuaW1wb3J0IHsgUGVwRHJhZ2dhYmxlSXRlbXNNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kcmFnZ2FibGUtaXRlbXMnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1NlY3Rpb25Db21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBEcmFnRHJvcE1vZHVsZSxcbiAgICAgICAgUGVwQnV0dG9uTW9kdWxlLFxuICAgICAgICBQZXBSZW1vdGVMb2FkZXJNb2R1bGUsXG4gICAgICAgIFNlY3Rpb25CbG9ja01vZHVsZSxcbiAgICAgICAgUGVwSGlkZUluTW9kdWxlLFxuICAgICAgICBQZXBEcmFnZ2FibGVJdGVtc01vZHVsZSxcbiAgICAgICAgLy8gVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKClcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtTZWN0aW9uQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBTZWN0aW9uTW9kdWxlIHsgfVxuIl19
|