@pepperi-addons/ngx-composite-lib 0.4.2-beta.9 → 0.4.2-beta.90
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/color-settings/color-settings.component.d.ts +3 -2
- package/core/common/services/dimx.service.d.ts +4 -0
- package/esm2020/color-settings/color-settings.component.mjs +6 -3
- package/esm2020/core/common/directives/reset-configuration-field.directive.mjs +5 -4
- package/esm2020/core/common/services/dimx.service.mjs +1 -1
- package/esm2020/data-view-builder/menu-data-view/menu-data-view.component.mjs +2 -2
- package/esm2020/file-status-panel/file-status-panel.module.mjs +23 -3
- package/esm2020/flow-picker-button/flow-picker-button.component.mjs +94 -0
- package/esm2020/flow-picker-button/flow-picker-button.module.mjs +36 -0
- package/esm2020/flow-picker-button/flow-picker-button.service.mjs +21 -0
- package/esm2020/flow-picker-button/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs +5 -0
- package/esm2020/flow-picker-button/public-api.mjs +6 -0
- package/esm2020/generic-list/generic-list.component.mjs +50 -7
- package/esm2020/generic-list/generic-list.service.mjs +6 -2
- package/esm2020/group-buttons-settings/group-buttons-settings.component.mjs +17 -4
- package/esm2020/group-buttons-settings/group-buttons-settings.model.mjs +1 -1
- package/esm2020/group-buttons-settings/public-api.mjs +2 -2
- package/esm2020/icon-picker/icon-picker.component.mjs +79 -0
- package/esm2020/icon-picker/icon-picker.module.mjs +44 -0
- package/esm2020/icon-picker/icon-picker.service.mjs +17 -0
- package/esm2020/icon-picker/pepperi-addons-ngx-composite-lib-icon-picker.mjs +5 -0
- package/esm2020/icon-picker/public-api.mjs +6 -0
- 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 +54 -0
- package/esm2020/layout-builder/layout-builder-editor/layout-builder-editor.component.mjs +25 -0
- package/esm2020/layout-builder/layout-builder-editor/layout-builder-editor.module.mjs +45 -0
- package/esm2020/layout-builder/layout-builder-internal.service.mjs +628 -0
- package/esm2020/layout-builder/layout-builder.component.mjs +201 -0
- package/esm2020/layout-builder/layout-builder.model.mjs +2 -0
- package/esm2020/layout-builder/layout-builder.module.mjs +143 -0
- package/esm2020/layout-builder/layout-builder.service.mjs +36 -0
- package/esm2020/layout-builder/main-editor/main-editor.component.mjs +130 -0
- package/esm2020/layout-builder/main-editor/main-editor.module.mjs +99 -0
- package/esm2020/layout-builder/pepperi-addons-ngx-composite-lib-layout-builder.mjs +5 -0
- package/esm2020/layout-builder/public-api.mjs +12 -0
- package/esm2020/layout-builder/section/section.component.mjs +349 -0
- package/esm2020/layout-builder/section/section.module.mjs +44 -0
- package/esm2020/layout-builder/section-block/section-block.component.mjs +113 -0
- package/esm2020/layout-builder/section-block/section-block.module.mjs +34 -0
- package/esm2020/layout-builder/section-editor/section-editor.component.mjs +192 -0
- package/esm2020/layout-builder/section-editor/section-editor.module.mjs +44 -0
- package/esm2020/manage-parameters/manage-parameter/manage-parameter.component.mjs +82 -0
- package/esm2020/manage-parameters/manage-parameters.component.mjs +153 -0
- package/esm2020/manage-parameters/manage-parameters.model.mjs +24 -0
- package/esm2020/manage-parameters/manage-parameters.module.mjs +45 -0
- package/esm2020/manage-parameters/manage-parameters.service.mjs +142 -0
- package/esm2020/manage-parameters/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +5 -0
- package/esm2020/manage-parameters/public-api.mjs +8 -0
- package/esm2020/rich-text/pepperi-addons-ngx-composite-lib-rich-text.mjs +5 -0
- package/esm2020/rich-text/public-api.mjs +6 -0
- package/esm2020/rich-text/rich-text.component.mjs +154 -0
- package/esm2020/rich-text/rich-text.module.mjs +52 -0
- package/esm2020/rich-text/rich-text.service.mjs +21 -0
- package/esm2020/shadow-settings/shadow-settings.component.mjs +7 -4
- package/esm2020/show-if-badge/pepperi-addons-ngx-composite-lib-show-if-badge.mjs +5 -0
- package/esm2020/show-if-badge/public-api.mjs +6 -0
- package/esm2020/show-if-badge/show-if-badge.component.mjs +44 -0
- package/esm2020/show-if-badge/show-if-badge.module.mjs +50 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-color-settings.mjs +5 -2
- package/fesm2015/pepperi-addons-ngx-composite-lib-color-settings.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-data-view-builder.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-composite-lib-file-status-panel.mjs +22 -3
- package/fesm2015/pepperi-addons-ngx-composite-lib-file-status-panel.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs +161 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs +55 -7
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +17 -4
- package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-icon-picker.mjs +146 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-icon-picker.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-layout-builder.mjs +2343 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-layout-builder.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +441 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-manage-parameters.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-rich-text.mjs +234 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-rich-text.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-shadow-settings.mjs +6 -3
- package/fesm2015/pepperi-addons-ngx-composite-lib-shadow-settings.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-show-if-badge.mjs +100 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-show-if-badge.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib.mjs +4 -3
- package/fesm2015/pepperi-addons-ngx-composite-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-color-settings.mjs +5 -2
- package/fesm2020/pepperi-addons-ngx-composite-lib-color-settings.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-data-view-builder.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-composite-lib-file-status-panel.mjs +22 -3
- package/fesm2020/pepperi-addons-ngx-composite-lib-file-status-panel.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs +155 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs +54 -7
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +17 -4
- package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-icon-picker.mjs +145 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-icon-picker.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-layout-builder.mjs +2320 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-layout-builder.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +438 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-manage-parameters.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-rich-text.mjs +230 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-rich-text.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-shadow-settings.mjs +6 -3
- package/fesm2020/pepperi-addons-ngx-composite-lib-shadow-settings.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-show-if-badge.mjs +100 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-show-if-badge.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib.mjs +4 -3
- package/fesm2020/pepperi-addons-ngx-composite-lib.mjs.map +1 -1
- package/flow-picker-button/flow-picker-button.component.d.ts +27 -0
- package/flow-picker-button/flow-picker-button.module.d.ts +11 -0
- package/flow-picker-button/flow-picker-button.service.d.ts +9 -0
- package/flow-picker-button/index.d.ts +5 -0
- package/flow-picker-button/public-api.d.ts +2 -0
- package/generic-list/generic-list.component.d.ts +13 -4
- package/generic-list/generic-list.service.d.ts +2 -1
- package/group-buttons-settings/group-buttons-settings.component.d.ts +5 -2
- package/group-buttons-settings/group-buttons-settings.model.d.ts +1 -1
- package/icon-picker/icon-picker.component.d.ts +24 -0
- package/icon-picker/icon-picker.module.d.ts +13 -0
- package/icon-picker/icon-picker.service.d.ts +8 -0
- package/icon-picker/index.d.ts +5 -0
- package/icon-picker/public-api.d.ts +2 -0
- 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 +49 -0
- package/layout-builder/layout/layout.module.d.ts +16 -0
- package/layout-builder/layout-builder-editor/layout-builder-editor.component.d.ts +12 -0
- package/layout-builder/layout-builder-editor/layout-builder-editor.module.d.ts +14 -0
- package/layout-builder/layout-builder-internal.service.d.ts +120 -0
- package/layout-builder/layout-builder.component.d.ts +51 -0
- package/layout-builder/layout-builder.component.theme.scss +57 -0
- package/layout-builder/layout-builder.model.d.ts +43 -0
- package/layout-builder/layout-builder.module.d.ts +32 -0
- package/layout-builder/layout-builder.service.d.ts +15 -0
- package/layout-builder/main-editor/main-editor.component.d.ts +46 -0
- package/layout-builder/main-editor/main-editor.module.d.ts +27 -0
- package/layout-builder/public-api.d.ts +8 -0
- package/layout-builder/section/section.component.d.ts +76 -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 +38 -0
- package/layout-builder/section-block/section-block.component.theme.scss +13 -0
- package/layout-builder/section-block/section-block.module.d.ts +11 -0
- package/layout-builder/section-editor/section-editor.component.d.ts +53 -0
- package/layout-builder/section-editor/section-editor.module.d.ts +14 -0
- package/manage-parameters/index.d.ts +5 -0
- package/manage-parameters/manage-parameter/manage-parameter.component.d.ts +28 -0
- package/manage-parameters/manage-parameters.component.d.ts +33 -0
- package/manage-parameters/manage-parameters.model.d.ts +21 -0
- package/manage-parameters/manage-parameters.module.d.ts +14 -0
- package/manage-parameters/manage-parameters.service.d.ts +16 -0
- package/manage-parameters/public-api.d.ts +3 -0
- package/package.json +49 -1
- package/rich-text/index.d.ts +5 -0
- package/rich-text/public-api.d.ts +2 -0
- package/rich-text/rich-text.component.d.ts +43 -0
- package/rich-text/rich-text.module.d.ts +16 -0
- package/rich-text/rich-text.service.d.ts +9 -0
- package/shadow-settings/shadow-settings.component.d.ts +2 -1
- package/show-if-badge/index.d.ts +5 -0
- package/show-if-badge/public-api.d.ts +2 -0
- package/show-if-badge/show-if-badge.component.d.ts +20 -0
- package/show-if-badge/show-if-badge.module.d.ts +16 -0
- package/src/assets/i18n/en.ngx-composite-lib.json +80 -4
- package/pepperi-addons-ngx-composite-lib-0.4.2-beta.8.tgz +0 -0
- package/src/assets/images/brand-leaf-full@1x.png +0 -0
- package/src/assets/images/brand-leaf-full@2x.png +0 -0
- package/src/assets/images/brand-leaf-round.png +0 -0
- package/src/assets/images/brand-leaf-round@2x.png +0 -0
- package/src/assets/images/brand-leaf-skiny@1x.png +0 -0
- package/src/assets/images/brand-leaf-skiny@2x.png +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { BaseDestroyerDirective } from '@pepperi-addons/ngx-lib';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../layout-builder-internal.service";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@angular/cdk/drag-drop";
|
|
7
|
+
import * as i4 from "@pepperi-addons/ngx-lib/button";
|
|
8
|
+
import * as i5 from "@pepperi-addons/ngx-lib/draggable-items";
|
|
9
|
+
export class SectionBlockComponent extends BaseDestroyerDirective {
|
|
10
|
+
constructor(layoutBuilderInternalService) {
|
|
11
|
+
super();
|
|
12
|
+
this.layoutBuilderInternalService = layoutBuilderInternalService;
|
|
13
|
+
this.sectionKey = '';
|
|
14
|
+
this.sectionHeight = '';
|
|
15
|
+
this.isMainEditorState = false;
|
|
16
|
+
this.editable = false;
|
|
17
|
+
this.active = false;
|
|
18
|
+
this.dragExited = new EventEmitter();
|
|
19
|
+
this.dragEntered = new EventEmitter();
|
|
20
|
+
this.hideForCurrentScreenType = false;
|
|
21
|
+
// protected remoteLoaderOptions: PepRemoteLoaderOptions;
|
|
22
|
+
// protected availableBlock: IPepDraggableItem | undefined;
|
|
23
|
+
this.blockTitle = '';
|
|
24
|
+
}
|
|
25
|
+
set blockContainer(value) {
|
|
26
|
+
this._blockContainer = value;
|
|
27
|
+
// if (this._blockContainer) {
|
|
28
|
+
// this.availableBlock = this.layoutBuilderInternalService.availableBlocksForDragMap?.get(this._blockContainer?.DraggableItemKey);
|
|
29
|
+
// }
|
|
30
|
+
this.setIfHideForCurrentScreenType();
|
|
31
|
+
}
|
|
32
|
+
get blockContainer() {
|
|
33
|
+
return this._blockContainer;
|
|
34
|
+
}
|
|
35
|
+
set screenType(value) {
|
|
36
|
+
this._screenType = value;
|
|
37
|
+
this.setIfHideForCurrentScreenType();
|
|
38
|
+
}
|
|
39
|
+
get screenType() {
|
|
40
|
+
return this._screenType;
|
|
41
|
+
}
|
|
42
|
+
setIfHideForCurrentScreenType() {
|
|
43
|
+
this.hideForCurrentScreenType = this.blockContainer ?
|
|
44
|
+
this.layoutBuilderInternalService.getIsHidden(this.blockContainer.Hide, this.screenType) : false;
|
|
45
|
+
}
|
|
46
|
+
ngOnInit() {
|
|
47
|
+
this.blockTitle = this.layoutBuilderInternalService.getBlockTitle(this.blockContainer?.BlockKey || '');
|
|
48
|
+
//
|
|
49
|
+
// this.layoutBuilderInternalService.availableBlocksForDragMapChange$.pipe(this.getDestroyer()).subscribe((availableBlocksForDragMap) => {
|
|
50
|
+
// if (availableBlocksForDragMap && this.blockContainer) {
|
|
51
|
+
// this.availableBlock = (availableBlocksForDragMap as ReadonlyMap<string, IPepDraggableItem>).get(this.blockContainer.DraggableItemKey);
|
|
52
|
+
// }
|
|
53
|
+
// });
|
|
54
|
+
}
|
|
55
|
+
onEditBlockClick() {
|
|
56
|
+
if (this.blockContainer?.BlockKey) {
|
|
57
|
+
this.layoutBuilderInternalService.navigateToEditor('block', this.blockContainer.BlockKey, this.blockTitle);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
onRemoveBlockClick() {
|
|
61
|
+
if (this.blockContainer?.BlockKey) {
|
|
62
|
+
this.layoutBuilderInternalService.removeBlockFromSection(this.blockContainer.BlockKey);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
onHideBlockChange(hideIn) {
|
|
66
|
+
if (this.blockContainer?.BlockKey) {
|
|
67
|
+
this.layoutBuilderInternalService.hideBlock(this.sectionKey, this.blockContainer.BlockKey, hideIn);
|
|
68
|
+
this.setIfHideForCurrentScreenType();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
// onBlockLoad(event: any) {
|
|
72
|
+
// this.layoutBuilderService.updateBlockLoaded(this.blockContainer.BlockKey);
|
|
73
|
+
// }
|
|
74
|
+
onDragStart(event) {
|
|
75
|
+
this.layoutBuilderInternalService.onBlockDragStart(event);
|
|
76
|
+
}
|
|
77
|
+
onDragEnd(event) {
|
|
78
|
+
this.layoutBuilderInternalService.onBlockDragEnd(event);
|
|
79
|
+
}
|
|
80
|
+
onDragExited(event) {
|
|
81
|
+
this.dragExited.emit(event);
|
|
82
|
+
}
|
|
83
|
+
onDragEntered(event) {
|
|
84
|
+
this.dragEntered.emit(event);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
SectionBlockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionBlockComponent, deps: [{ token: i1.LayoutBuilderInternalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
88
|
+
SectionBlockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: SectionBlockComponent, selector: "section-block", inputs: { blockTemplate: "blockTemplate", sectionKey: "sectionKey", sectionHeight: "sectionHeight", isMainEditorState: "isMainEditorState", editable: "editable", active: "active", blockContainer: "blockContainer", screenType: "screenType" }, outputs: { dragExited: "dragExited", dragEntered: "dragEntered" }, usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"blockContainer?.BlockKey && (editable || !hideForCurrentScreenType)\" \n class=\"section-block-container\"\n [ngClass]=\"{ 'editable-state': editable, 'block-hidden-state': hideForCurrentScreenType, 'active-block': active }\"\n cdkDrag [cdkDragData]=\"blockContainer\" [cdkDragDisabled]=\"!editable || !isMainEditorState\" \n (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\"\n (cdkDragExited)=\"onDragExited($event)\" (cdkDragEntered)=\"onDragEntered($event)\">\n \n <pep-draggable-item *ngIf=\"editable && isMainEditorState\" cdkDragHandle style=\"cursor: grab;\"\n class=\"block-toolbar\" [title]=\"blockTitle\" >\n <ng-container pep-actions>\n <pep-button classNames=\"caution\" sizeType=\"xs\" iconName=\"system_bin\" (buttonClick)=\"onRemoveBlockClick();\"></pep-button>\n <!-- <hide-in [hideIn]=\"blockContainer.Hide\" (hideInChange)=\"onHideBlockChange($event)\"></hide-in> -->\n <pep-button sizeType=\"xs\" iconName=\"system_edit\" (buttonClick)=\"onEditBlockClick();\"></pep-button>\n </ng-container>\n </pep-draggable-item>\n <div class=\"block-template-wrapper\" [ngStyle]=\"{ 'overflow': (sectionHeight === 'unset' ? 'unset' : 'auto') }\">\n <div *ngIf=\"blockTemplate\" class=\"block-template\">\n <ng-container *ngTemplateOutlet=\"blockTemplate; context: { blockKey: blockContainer?.BlockKey }\">\n </ng-container>\n </div>\n </div>\n</div>\n", styles: [".section-block-container{height:100%;width:100%}.section-block-container.editable-state:not(.active-block) .block-template-wrapper .block-template{pointer-events:none;opacity:.5}.section-block-container.editable-state.cdk-drag-preview .block-template-wrapper,.section-block-container.editable-state.cdk-drag-placeholder .block-toolbar{opacity:0}.section-block-container.editable-state .block-toolbar{position:absolute;top:50%;left:50%;width:95%;max-width:240px;transform:translate(-50%,-50%);z-index:3}.section-block-container.editable-state .block-toolbar:hover{z-index:12!important}.section-block-container .block-template-wrapper{height:100%;position:relative}.section-block-container .block-template-wrapper .block-template{display:block;height:100%;width:100%}\n", ".section-block-container.editable-state.block-hidden-state:not(.active-block){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)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.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: i3.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i4.PepButtonComponent, selector: "pep-button", inputs: ["key", "value", "styleType", "styleStateType", "sizeType", "classNames", "disabled", "iconName", "iconPosition", "visible"], outputs: ["buttonClick"] }, { kind: "component", type: i5.DraggableItemComponent, selector: "pep-draggable-item", inputs: ["title", "titlePrefix", "titleClassNames", "data", "disabled", "shadow", "styleType", "toggleContent", "isToggleContentOpen", "actionsMenu", "menuStyleType"], outputs: ["contentToggle", "actionsMenuItemClick"] }] });
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionBlockComponent, decorators: [{
|
|
90
|
+
type: Component,
|
|
91
|
+
args: [{ selector: 'section-block', template: "<div *ngIf=\"blockContainer?.BlockKey && (editable || !hideForCurrentScreenType)\" \n class=\"section-block-container\"\n [ngClass]=\"{ 'editable-state': editable, 'block-hidden-state': hideForCurrentScreenType, 'active-block': active }\"\n cdkDrag [cdkDragData]=\"blockContainer\" [cdkDragDisabled]=\"!editable || !isMainEditorState\" \n (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\"\n (cdkDragExited)=\"onDragExited($event)\" (cdkDragEntered)=\"onDragEntered($event)\">\n \n <pep-draggable-item *ngIf=\"editable && isMainEditorState\" cdkDragHandle style=\"cursor: grab;\"\n class=\"block-toolbar\" [title]=\"blockTitle\" >\n <ng-container pep-actions>\n <pep-button classNames=\"caution\" sizeType=\"xs\" iconName=\"system_bin\" (buttonClick)=\"onRemoveBlockClick();\"></pep-button>\n <!-- <hide-in [hideIn]=\"blockContainer.Hide\" (hideInChange)=\"onHideBlockChange($event)\"></hide-in> -->\n <pep-button sizeType=\"xs\" iconName=\"system_edit\" (buttonClick)=\"onEditBlockClick();\"></pep-button>\n </ng-container>\n </pep-draggable-item>\n <div class=\"block-template-wrapper\" [ngStyle]=\"{ 'overflow': (sectionHeight === 'unset' ? 'unset' : 'auto') }\">\n <div *ngIf=\"blockTemplate\" class=\"block-template\">\n <ng-container *ngTemplateOutlet=\"blockTemplate; context: { blockKey: blockContainer?.BlockKey }\">\n </ng-container>\n </div>\n </div>\n</div>\n", styles: [".section-block-container{height:100%;width:100%}.section-block-container.editable-state:not(.active-block) .block-template-wrapper .block-template{pointer-events:none;opacity:.5}.section-block-container.editable-state.cdk-drag-preview .block-template-wrapper,.section-block-container.editable-state.cdk-drag-placeholder .block-toolbar{opacity:0}.section-block-container.editable-state .block-toolbar{position:absolute;top:50%;left:50%;width:95%;max-width:240px;transform:translate(-50%,-50%);z-index:3}.section-block-container.editable-state .block-toolbar:hover{z-index:12!important}.section-block-container .block-template-wrapper{height:100%;position:relative}.section-block-container .block-template-wrapper .block-template{display:block;height:100%;width:100%}\n", ".section-block-container.editable-state.block-hidden-state:not(.active-block){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)}\n"] }]
|
|
92
|
+
}], ctorParameters: function () { return [{ type: i1.LayoutBuilderInternalService }]; }, propDecorators: { blockTemplate: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], sectionKey: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], sectionHeight: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], isMainEditorState: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], editable: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], active: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}], blockContainer: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], screenType: [{
|
|
107
|
+
type: Input
|
|
108
|
+
}], dragExited: [{
|
|
109
|
+
type: Output
|
|
110
|
+
}], dragEntered: [{
|
|
111
|
+
type: Output
|
|
112
|
+
}] } });
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1ibG9jay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9sYXlvdXQtYnVpbGRlci9zZWN0aW9uLWJsb2NrL3NlY3Rpb24tYmxvY2suY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbGF5b3V0LWJ1aWxkZXIvc2VjdGlvbi1ibG9jay9zZWN0aW9uLWJsb2NrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBSXZHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7O0FBV2pFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxzQkFBc0I7SUF5QzdELFlBQ1ksNEJBQTBEO1FBRWxFLEtBQUssRUFBRSxDQUFDO1FBRkEsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtRQXZDN0QsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDMUIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBMEJkLGVBQVUsR0FBOEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMzRCxnQkFBVyxHQUErQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTdELDZCQUF3QixHQUFHLEtBQUssQ0FBQztRQUMzQyx5REFBeUQ7UUFDekQsMkRBQTJEO1FBQ2pELGVBQVUsR0FBRyxFQUFFLENBQUM7SUFNMUIsQ0FBQztJQW5DRCxJQUNJLGNBQWMsQ0FBQyxLQUEyQztRQUMxRCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3Qiw4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QkFJRixjQUFjO3NCQURqQixLQUFLO2dCQWVGLFVBQVU7c0JBRGIsS0FBSztnQkFTSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZGtEcmFnRW5kLCBDZGtEcmFnRW50ZXIsIENka0RyYWdFeGl0LCBDZGtEcmFnU3RhcnQgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcblxuaW1wb3J0IHsgRGF0YVZpZXdTY3JlZW5TaXplIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL3BhcGktc2RrJztcbmltcG9ydCB7IEJhc2VEZXN0cm95ZXJEaXJlY3RpdmUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5pbXBvcnQgeyBJUGVwRHJhZ2dhYmxlSXRlbSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2RyYWdnYWJsZS1pdGVtcyc7XG5pbXBvcnQgeyBQZXBSZW1vdGVMb2FkZXJPcHRpb25zIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvcmVtb3RlLWxvYWRlcic7XG5pbXBvcnQgeyBMYXlvdXRCdWlsZGVySW50ZXJuYWxTZXJ2aWNlIH0gZnJvbSAnLi4vbGF5b3V0LWJ1aWxkZXItaW50ZXJuYWwuc2VydmljZSc7XG5pbXBvcnQgeyBJUGVwTGF5b3V0QmxvY2tDb250YWluZXIgfSBmcm9tICcuLi9sYXlvdXQtYnVpbGRlci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2VjdGlvbi1ibG9jaycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlY3Rpb24tYmxvY2suY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlY3Rpb24tYmxvY2suY29tcG9uZW50LnNjc3MnLCAnLi9zZWN0aW9uLWJsb2NrLmNvbXBvbmVudC50aGVtZS5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VjdGlvbkJsb2NrQ29tcG9uZW50IGV4dGVuZHMgQmFzZURlc3Ryb3llckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgXG4gICAgQElucHV0KCkgYmxvY2tUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBzZWN0aW9uS2V5ID0gJyc7XG4gICAgQElucHV0KCkgc2VjdGlvbkhlaWdodCA9ICcnO1xuICAgIEBJbnB1dCgpIGlzTWFpbkVkaXRvclN0YXRlID0gZmFsc2U7XG4gICAgQElucHV0KCkgZWRpdGFibGUgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBhY3RpdmUgPSBmYWxzZTtcbiAgICBcbiAgICBwcml2YXRlIF9ibG9ja0NvbnRhaW5lcjogSVBlcExheW91dEJsb2NrQ29udGFpbmVyIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGJsb2NrQ29udGFpbmVyKHZhbHVlOiBJUGVwTGF5b3V0QmxvY2tDb250YWluZXIgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5fYmxvY2tDb250YWluZXIgPSB2YWx1ZTtcbiAgICAgICAgLy8gaWYgKHRoaXMuX2Jsb2NrQ29udGFpbmVyKSB7XG4gICAgICAgIC8vICAgICB0aGlzLmF2YWlsYWJsZUJsb2NrID0gdGhpcy5sYXlvdXRCdWlsZGVySW50ZXJuYWxTZXJ2aWNlLmF2YWlsYWJsZUJsb2Nrc0ZvckRyYWdNYXA/LmdldCh0aGlzLl9ibG9ja0NvbnRhaW5lcj8uRHJhZ2dhYmxlSXRlbUtleSk7XG4gICAgICAgIC8vIH1cbiAgICAgICAgXG4gICAgICAgIHRoaXMuc2V0SWZIaWRlRm9yQ3VycmVudFNjcmVlblR5cGUoKTtcbiAgICB9XG4gICAgZ2V0IGJsb2NrQ29udGFpbmVyKCk6IElQZXBMYXlvdXRCbG9ja0NvbnRhaW5lciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ibG9ja0NvbnRhaW5lcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zY3JlZW5UeXBlITogRGF0YVZpZXdTY3JlZW5TaXplO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNjcmVlblR5cGUodmFsdWU6IERhdGFWaWV3U2NyZWVuU2l6ZSkge1xuICAgICAgICB0aGlzLl9zY3JlZW5UeXBlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0SWZIaWRlRm9yQ3VycmVudFNjcmVlblR5cGUoKTtcbiAgICB9XG4gICAgZ2V0IHNjcmVlblR5cGUoKTogRGF0YVZpZXdTY3JlZW5TaXplIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NjcmVlblR5cGU7XG4gICAgfVxuICAgIFxuICAgIEBPdXRwdXQoKSBkcmFnRXhpdGVkOiBFdmVudEVtaXR0ZXI8Q2RrRHJhZ0V4aXQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSBkcmFnRW50ZXJlZDogRXZlbnRFbWl0dGVyPENka0RyYWdFbnRlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwcm90ZWN0ZWQgaGlkZUZvckN1cnJlbnRTY3JlZW5UeXBlID0gZmFsc2U7XG4gICAgLy8gcHJvdGVjdGVkIHJlbW90ZUxvYWRlck9wdGlvbnM6IFBlcFJlbW90ZUxvYWRlck9wdGlvbnM7XG4gICAgLy8gcHJvdGVjdGVkIGF2YWlsYWJsZUJsb2NrOiBJUGVwRHJhZ2dhYmxlSXRlbSB8IHVuZGVmaW5lZDtcbiAgICBwcm90ZWN0ZWQgYmxvY2tUaXRsZSA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgbGF5b3V0QnVpbGRlckludGVybmFsU2VydmljZTogTGF5b3V0QnVpbGRlckludGVybmFsU2VydmljZSxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBzZXRJZkhpZGVGb3JDdXJyZW50U2NyZWVuVHlwZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oaWRlRm9yQ3VycmVudFNjcmVlblR5cGUgPSB0aGlzLmJsb2NrQ29udGFpbmVyID8gXG4gICAgICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJJbnRlcm5hbFNlcnZpY2UuZ2V0SXNIaWRkZW4odGhpcy5ibG9ja0NvbnRhaW5lci5IaWRlLCB0aGlzLnNjcmVlblR5cGUpIDogZmFsc2U7XG4gICAgfVxuICAgIFxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJsb2NrVGl0bGUgPSB0aGlzLmxheW91dEJ1aWxkZXJJbnRlcm5hbFNlcnZpY2UuZ2V0QmxvY2tUaXRsZSh0aGlzLmJsb2NrQ29udGFpbmVyPy5CbG9ja0tleSB8fCAnJyk7XG4gICAgICAgIC8vIFxuICAgICAgICAvLyB0aGlzLmxheW91dEJ1aWxkZXJJbnRlcm5hbFNlcnZpY2UuYXZhaWxhYmxlQmxvY2tzRm9yRHJhZ01hcENoYW5nZSQucGlwZSh0aGlzLmdldERlc3Ryb3llcigpKS5zdWJzY3JpYmUoKGF2YWlsYWJsZUJsb2Nrc0ZvckRyYWdNYXApID0+IHtcbiAgICAgICAgLy8gICAgIGlmIChhdmFpbGFibGVCbG9ja3NGb3JEcmFnTWFwICYmIHRoaXMuYmxvY2tDb250YWluZXIpIHtcbiAgICAgICAgLy8gICAgICAgICB0aGlzLmF2YWlsYWJsZUJsb2NrID0gKGF2YWlsYWJsZUJsb2Nrc0ZvckRyYWdNYXAgYXMgUmVhZG9ubHlNYXA8c3RyaW5nLCBJUGVwRHJhZ2dhYmxlSXRlbT4pLmdldCh0aGlzLmJsb2NrQ29udGFpbmVyLkRyYWdnYWJsZUl0ZW1LZXkpO1xuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyB9KTtcbiAgICB9XG5cbiAgICBvbkVkaXRCbG9ja0NsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5ibG9ja0NvbnRhaW5lcj8uQmxvY2tLZXkpIHtcbiAgICAgICAgICAgIHRoaXMubGF5b3V0QnVpbGRlckludGVybmFsU2VydmljZS5uYXZpZ2F0ZVRvRWRpdG9yKCdibG9jaycsIHRoaXMuYmxvY2tDb250YWluZXIuQmxvY2tLZXksIHRoaXMuYmxvY2tUaXRsZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblJlbW92ZUJsb2NrQ2xpY2soKSB7XG4gICAgICAgIGlmICh0aGlzLmJsb2NrQ29udGFpbmVyPy5CbG9ja0tleSkge1xuICAgICAgICAgICAgdGhpcy5sYXlvdXRCdWlsZGVySW50ZXJuYWxTZXJ2aWNlLnJlbW92ZUJsb2NrRnJvbVNlY3Rpb24odGhpcy5ibG9ja0NvbnRhaW5lci5CbG9ja0tleSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhpZGVCbG9ja0NoYW5nZShoaWRlSW46IERhdGFWaWV3U2NyZWVuU2l6ZVtdKSB7XG4gICAgICAgIGlmICh0aGlzLmJsb2NrQ29udGFpbmVyPy5CbG9ja0tleSkge1xuICAgICAgICAgICAgdGhpcy5sYXlvdXRCdWlsZGVySW50ZXJuYWxTZXJ2aWNlLmhpZGVCbG9jayh0aGlzLnNlY3Rpb25LZXksIHRoaXMuYmxvY2tDb250YWluZXIuQmxvY2tLZXksIGhpZGVJbik7XG4gICAgICAgICAgICB0aGlzLnNldElmSGlkZUZvckN1cnJlbnRTY3JlZW5UeXBlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvbkJsb2NrTG9hZChldmVudDogYW55KSB7XG4gICAgLy8gICAgIHRoaXMubGF5b3V0QnVpbGRlclNlcnZpY2UudXBkYXRlQmxvY2tMb2FkZWQodGhpcy5ibG9ja0NvbnRhaW5lci5CbG9ja0tleSk7XG4gICAgLy8gfVxuXG4gICAgb25EcmFnU3RhcnQoZXZlbnQ6IENka0RyYWdTdGFydCkge1xuICAgICAgICB0aGlzLmxheW91dEJ1aWxkZXJJbnRlcm5hbFNlcnZpY2Uub25CbG9ja0RyYWdTdGFydChldmVudCk7XG4gICAgfVxuXG4gICAgb25EcmFnRW5kKGV2ZW50OiBDZGtEcmFnRW5kKSB7XG4gICAgICAgIHRoaXMubGF5b3V0QnVpbGRlckludGVybmFsU2VydmljZS5vbkJsb2NrRHJhZ0VuZChldmVudCk7XG4gICAgfVxuXG4gICAgb25EcmFnRXhpdGVkKGV2ZW50OiBDZGtEcmFnRXhpdCkge1xuICAgICAgICB0aGlzLmRyYWdFeGl0ZWQuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgb25EcmFnRW50ZXJlZChldmVudDogQ2RrRHJhZ0VudGVyKSB7XG4gICAgICAgIHRoaXMuZHJhZ0VudGVyZWQuZW1pdChldmVudCk7XG4gICAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImJsb2NrQ29udGFpbmVyPy5CbG9ja0tleSAmJiAoZWRpdGFibGUgfHwgIWhpZGVGb3JDdXJyZW50U2NyZWVuVHlwZSlcIiBcbiAgICBjbGFzcz1cInNlY3Rpb24tYmxvY2stY29udGFpbmVyXCJcbiAgICBbbmdDbGFzc109XCJ7ICdlZGl0YWJsZS1zdGF0ZSc6IGVkaXRhYmxlLCAnYmxvY2staGlkZGVuLXN0YXRlJzogaGlkZUZvckN1cnJlbnRTY3JlZW5UeXBlLCAnYWN0aXZlLWJsb2NrJzogYWN0aXZlIH1cIlxuICAgIGNka0RyYWcgW2Nka0RyYWdEYXRhXT1cImJsb2NrQ29udGFpbmVyXCIgW2Nka0RyYWdEaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgIWlzTWFpbkVkaXRvclN0YXRlXCIgXG4gICAgKGNka0RyYWdTdGFydGVkKT1cIm9uRHJhZ1N0YXJ0KCRldmVudClcIiAoY2RrRHJhZ0VuZGVkKT1cIm9uRHJhZ0VuZCgkZXZlbnQpXCJcbiAgICAoY2RrRHJhZ0V4aXRlZCk9XCJvbkRyYWdFeGl0ZWQoJGV2ZW50KVwiIChjZGtEcmFnRW50ZXJlZCk9XCJvbkRyYWdFbnRlcmVkKCRldmVudClcIj5cbiAgIFxuICAgIDxwZXAtZHJhZ2dhYmxlLWl0ZW0gKm5nSWY9XCJlZGl0YWJsZSAmJiBpc01haW5FZGl0b3JTdGF0ZVwiIGNka0RyYWdIYW5kbGUgc3R5bGU9XCJjdXJzb3I6IGdyYWI7XCJcbiAgICAgICAgY2xhc3M9XCJibG9jay10b29sYmFyXCIgW3RpdGxlXT1cImJsb2NrVGl0bGVcIiA+XG4gICAgICAgIDxuZy1jb250YWluZXIgcGVwLWFjdGlvbnM+XG4gICAgICAgICAgICA8cGVwLWJ1dHRvbiBjbGFzc05hbWVzPVwiY2F1dGlvblwiIHNpemVUeXBlPVwieHNcIiBpY29uTmFtZT1cInN5c3RlbV9iaW5cIiAoYnV0dG9uQ2xpY2spPVwib25SZW1vdmVCbG9ja0NsaWNrKCk7XCI+PC9wZXAtYnV0dG9uPlxuICAgICAgICAgICAgPCEtLSA8aGlkZS1pbiBbaGlkZUluXT1cImJsb2NrQ29udGFpbmVyLkhpZGVcIiAoaGlkZUluQ2hhbmdlKT1cIm9uSGlkZUJsb2NrQ2hhbmdlKCRldmVudClcIj48L2hpZGUtaW4+IC0tPlxuICAgICAgICAgICAgPHBlcC1idXR0b24gc2l6ZVR5cGU9XCJ4c1wiIGljb25OYW1lPVwic3lzdGVtX2VkaXRcIiAoYnV0dG9uQ2xpY2spPVwib25FZGl0QmxvY2tDbGljaygpO1wiPjwvcGVwLWJ1dHRvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9wZXAtZHJhZ2dhYmxlLWl0ZW0+XG4gICAgPGRpdiBjbGFzcz1cImJsb2NrLXRlbXBsYXRlLXdyYXBwZXJcIiBbbmdTdHlsZV09XCJ7ICdvdmVyZmxvdyc6IChzZWN0aW9uSGVpZ2h0ID09PSAndW5zZXQnID8gJ3Vuc2V0JyA6ICdhdXRvJykgfVwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYmxvY2tUZW1wbGF0ZVwiIGNsYXNzPVwiYmxvY2stdGVtcGxhdGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJibG9ja1RlbXBsYXRlOyBjb250ZXh0OiB7IGJsb2NrS2V5OiBibG9ja0NvbnRhaW5lcj8uQmxvY2tLZXkgfVwiPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SectionBlockComponent } from './section-block.component';
|
|
4
|
+
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
5
|
+
import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
|
|
6
|
+
import { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class SectionBlockModule {
|
|
9
|
+
}
|
|
10
|
+
SectionBlockModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionBlockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
SectionBlockModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: SectionBlockModule, declarations: [SectionBlockComponent], imports: [CommonModule,
|
|
12
|
+
DragDropModule,
|
|
13
|
+
PepButtonModule,
|
|
14
|
+
PepDraggableItemsModule], exports: [SectionBlockComponent] });
|
|
15
|
+
SectionBlockModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionBlockModule, imports: [CommonModule,
|
|
16
|
+
DragDropModule,
|
|
17
|
+
PepButtonModule,
|
|
18
|
+
PepDraggableItemsModule] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionBlockModule, decorators: [{
|
|
20
|
+
type: NgModule,
|
|
21
|
+
args: [{
|
|
22
|
+
declarations: [
|
|
23
|
+
SectionBlockComponent,
|
|
24
|
+
],
|
|
25
|
+
imports: [
|
|
26
|
+
CommonModule,
|
|
27
|
+
DragDropModule,
|
|
28
|
+
PepButtonModule,
|
|
29
|
+
PepDraggableItemsModule,
|
|
30
|
+
],
|
|
31
|
+
exports: [SectionBlockComponent]
|
|
32
|
+
}]
|
|
33
|
+
}] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1ibG9jay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9sYXlvdXQtYnVpbGRlci9zZWN0aW9uLWJsb2NrL3NlY3Rpb24tYmxvY2subW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBY2xGLE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFWdkIscUJBQXFCLGFBR3JCLFlBQVk7UUFDWixjQUFjO1FBQ2QsZUFBZTtRQUNmLHVCQUF1QixhQUVqQixxQkFBcUI7Z0hBRXRCLGtCQUFrQixZQVB2QixZQUFZO1FBQ1osY0FBYztRQUNkLGVBQWU7UUFDZix1QkFBdUI7MkZBSWxCLGtCQUFrQjtrQkFaOUIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YscUJBQXFCO3FCQUN4QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsdUJBQXVCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNlY3Rpb25CbG9ja0NvbXBvbmVudCB9IGZyb20gJy4vc2VjdGlvbi1ibG9jay5jb21wb25lbnQnXG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgUGVwQnV0dG9uTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvYnV0dG9uJztcbmltcG9ydCB7IFBlcERyYWdnYWJsZUl0ZW1zTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvZHJhZ2dhYmxlLWl0ZW1zJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgU2VjdGlvbkJsb2NrQ29tcG9uZW50LFxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIERyYWdEcm9wTW9kdWxlLFxuICAgICAgICBQZXBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFBlcERyYWdnYWJsZUl0ZW1zTW9kdWxlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1NlY3Rpb25CbG9ja0NvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgU2VjdGlvbkJsb2NrTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { PepDialogActionButton, PepDialogData } from '@pepperi-addons/ngx-lib/dialog';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@ngx-translate/core";
|
|
6
|
+
import * as i2 from "@pepperi-addons/ngx-lib/dialog";
|
|
7
|
+
import * as i3 from "@pepperi-addons/ngx-lib/textbox";
|
|
8
|
+
import * as i4 from "@pepperi-addons/ngx-lib/select";
|
|
9
|
+
import * as i5 from "@pepperi-addons/ngx-lib/checkbox";
|
|
10
|
+
import * as i6 from "../layout-builder-editor/layout-builder-editor.component";
|
|
11
|
+
export class SectionEditorComponent {
|
|
12
|
+
constructor(translate, dialog) {
|
|
13
|
+
this.translate = translate;
|
|
14
|
+
this.dialog = dialog;
|
|
15
|
+
this.MIN_HEIGHT = 40;
|
|
16
|
+
this.sectionName = '';
|
|
17
|
+
this.isAutoHeight = true;
|
|
18
|
+
this.height = this.MIN_HEIGHT;
|
|
19
|
+
this.hostObjectChange = new EventEmitter();
|
|
20
|
+
this.collapseOnTablet = false;
|
|
21
|
+
this.fillHeight = false;
|
|
22
|
+
this.subSections = false;
|
|
23
|
+
this.partsNumber = "2";
|
|
24
|
+
this.partsNumberOptions = Array();
|
|
25
|
+
this.splitOptions = Array();
|
|
26
|
+
this.allSplitOptions = Array();
|
|
27
|
+
this.initData();
|
|
28
|
+
}
|
|
29
|
+
set hostObject(value) {
|
|
30
|
+
this._hostObject = value;
|
|
31
|
+
this.sectionName = value.sectionName;
|
|
32
|
+
this.split = value.split;
|
|
33
|
+
this.isAutoHeight = !value.height || value.height === 0;
|
|
34
|
+
this.height = this.isAutoHeight ? this.MIN_HEIGHT : value.height;
|
|
35
|
+
this.collapseOnTablet = value.collapseOnTablet ?? false;
|
|
36
|
+
this.fillHeight = value.fillHeight ?? false;
|
|
37
|
+
}
|
|
38
|
+
get hostObject() {
|
|
39
|
+
return this._hostObject;
|
|
40
|
+
}
|
|
41
|
+
set split(value) {
|
|
42
|
+
this._split = value;
|
|
43
|
+
this.subSections = (this._split && this._split.length > 0) ? true : false;
|
|
44
|
+
// Check how many parts we have.
|
|
45
|
+
const arr = value?.split(' ');
|
|
46
|
+
if (arr && arr.length > 1 && arr.length <= 4) {
|
|
47
|
+
this.partsNumber = arr.length.toString();
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.partsNumber = "2";
|
|
51
|
+
}
|
|
52
|
+
this.loadSplitOptions();
|
|
53
|
+
}
|
|
54
|
+
get split() {
|
|
55
|
+
return this._split;
|
|
56
|
+
}
|
|
57
|
+
initData() {
|
|
58
|
+
this.partsNumberOptions = [
|
|
59
|
+
{ 'key': '2', 'value': '2 Parts' },
|
|
60
|
+
{ 'key': '3', 'value': '3 Parts' },
|
|
61
|
+
{ 'key': '4', 'value': '4 Parts' }
|
|
62
|
+
];
|
|
63
|
+
this.allSplitOptions = [
|
|
64
|
+
{ 'key': '2', 'value': [
|
|
65
|
+
{ 'key': '1/4 3/4', 'value': '1/4-3/4' },
|
|
66
|
+
{ 'key': '1/3 2/3', 'value': '1/3-2/3' },
|
|
67
|
+
{ 'key': '1/2 1/2', 'value': '1/2-1/2' },
|
|
68
|
+
{ 'key': '2/3 1/3', 'value': '2/3-1/3' },
|
|
69
|
+
{ 'key': '3/4 1/4', 'value': '3/4-1/4' },
|
|
70
|
+
] },
|
|
71
|
+
{ 'key': '3', 'value': [
|
|
72
|
+
{ 'key': '1/3 1/3 1/3', 'value': '1/3-1/3-1/3' },
|
|
73
|
+
{ 'key': '1/2 1/4 1/4', 'value': '1/2-1/4-1/4' },
|
|
74
|
+
{ 'key': '1/4 1/2 1/4', 'value': '1/4-1/2-1/4' },
|
|
75
|
+
{ 'key': '1/4 1/4 1/2', 'value': '1/4-1/4-1/2' },
|
|
76
|
+
] },
|
|
77
|
+
{ 'key': '4', 'value': [
|
|
78
|
+
{ 'key': '1/4 1/4 1/4 1/4', 'value': '1/4-1/4-1/4-1/4' },
|
|
79
|
+
] }
|
|
80
|
+
];
|
|
81
|
+
}
|
|
82
|
+
loadSplitOptions() {
|
|
83
|
+
const splitOptions = this.allSplitOptions.find((option) => option.key === this.partsNumber);
|
|
84
|
+
if (splitOptions) {
|
|
85
|
+
this.splitOptions = splitOptions.value;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
this.splitOptions = this.allSplitOptions[0].value;
|
|
89
|
+
}
|
|
90
|
+
if (!this._split) {
|
|
91
|
+
this._split = this.splitOptions[0].key;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
updateHostObject() {
|
|
95
|
+
this._hostObject.sectionName = this.sectionName;
|
|
96
|
+
this._hostObject.split = this.subSections ? this.split : undefined;
|
|
97
|
+
this._hostObject.height = this.isAutoHeight ? 0 : this.height;
|
|
98
|
+
this._hostObject.collapseOnTablet = this.collapseOnTablet;
|
|
99
|
+
this._hostObject.fillHeight = this.fillHeight;
|
|
100
|
+
this.hostObjectChange.emit(this.hostObject);
|
|
101
|
+
}
|
|
102
|
+
ngOnInit() {
|
|
103
|
+
this.loadSplitOptions();
|
|
104
|
+
}
|
|
105
|
+
isAutoHeightChange(isChecked) {
|
|
106
|
+
this.isAutoHeight = isChecked;
|
|
107
|
+
this.updateHostObject();
|
|
108
|
+
}
|
|
109
|
+
onHeightChange(height) {
|
|
110
|
+
if (height >= this.MIN_HEIGHT) {
|
|
111
|
+
this.height = coerceNumberProperty(height, this.height);
|
|
112
|
+
this.updateHostObject();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
onSectionNameChange(value) {
|
|
116
|
+
this.sectionName = value;
|
|
117
|
+
this.updateHostObject();
|
|
118
|
+
}
|
|
119
|
+
onCollapseOnTabletChange(value) {
|
|
120
|
+
this.collapseOnTablet = value;
|
|
121
|
+
this.updateHostObject();
|
|
122
|
+
}
|
|
123
|
+
onFillHeightChange(value) {
|
|
124
|
+
this.fillHeight = value;
|
|
125
|
+
this.updateHostObject();
|
|
126
|
+
}
|
|
127
|
+
onSubSectionsChange(value) {
|
|
128
|
+
const oldValue = this.subSections;
|
|
129
|
+
// Check if cancel the sub sections ( change from any -> 1 section ), if true need to show confirm message
|
|
130
|
+
if (value === false) {
|
|
131
|
+
this.subSections = value;
|
|
132
|
+
this.showDeleteSectionMsg(() => {
|
|
133
|
+
this.updateHostObject();
|
|
134
|
+
}, () => {
|
|
135
|
+
this.subSections = oldValue;
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
this.subSections = value;
|
|
140
|
+
this.updateHostObject();
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
onPartsNumberChange(key) {
|
|
144
|
+
const oldKey = this.partsNumber;
|
|
145
|
+
// Check if decrease on sub sections number, if true need to show confirm message
|
|
146
|
+
if (key && parseInt(key) < parseInt(this.partsNumber)) {
|
|
147
|
+
this.partsNumber = key;
|
|
148
|
+
this.showDeleteSectionMsg(() => {
|
|
149
|
+
this.loadSplitOptions();
|
|
150
|
+
this._split = this.splitOptions[0].key;
|
|
151
|
+
this.updateHostObject();
|
|
152
|
+
}, () => {
|
|
153
|
+
this.partsNumber = oldKey;
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
this.partsNumber = key;
|
|
158
|
+
this.loadSplitOptions();
|
|
159
|
+
this._split = this.splitOptions[0].key;
|
|
160
|
+
this.updateHostObject();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
showDeleteSectionMsg(continueCB, cancelCB) {
|
|
164
|
+
const actionButtons = [
|
|
165
|
+
new PepDialogActionButton(this.translate.instant('ACTIONS.CANCEL'), '', () => {
|
|
166
|
+
cancelCB();
|
|
167
|
+
}),
|
|
168
|
+
new PepDialogActionButton(this.translate.instant('ACTIONS.CONTINUE'), 'strong caution', () => {
|
|
169
|
+
continueCB();
|
|
170
|
+
})
|
|
171
|
+
];
|
|
172
|
+
const content = this.translate.instant('LAYOUT_BUILDER.DELETE_SECTION_MSG');
|
|
173
|
+
const title = this.translate.instant('LAYOUT_BUILDER.DELETE_SECTION_TITLE');
|
|
174
|
+
const dataMsg = new PepDialogData({ title, actionsType: 'custom', content, actionButtons });
|
|
175
|
+
this.dialog.openDefaultDialog(dataMsg);
|
|
176
|
+
}
|
|
177
|
+
onSplitChange(key) {
|
|
178
|
+
this._split = key;
|
|
179
|
+
this.updateHostObject();
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
SectionEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionEditorComponent, deps: [{ token: i1.TranslateService }, { token: i2.PepDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
183
|
+
SectionEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: SectionEditorComponent, selector: "section-editor", inputs: { hostObject: "hostObject" }, outputs: { hostObjectChange: "hostObjectChange" }, ngImport: i0, template: "<pep-layout-builder-editor class=\"section-editor-container\">\n <div>\n <pep-textbox [value]=\"sectionName\" [label]=\"'LAYOUT_BUILDER.SECTION_NAME_TITLE' | translate\" (valueChange)=\"onSectionNameChange($event)\"></pep-textbox>\n </div>\n <!-- \n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"isAutoHeight\" [label]=\"'LAYOUT_BUILDER.AUTO_HEIGHT_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"isAutoHeightChange($event)\"></pep-checkbox>\n <pep-textbox [label]=\"'LAYOUT_BUILDER.HEIGHT_TITLE' | translate\" type=\"int\" [minValue]=\"MIN_HEIGHT\" [disabled]=\"isAutoHeight\" [value]=\"height\" (valueChange)=\"onHeightChange($event)\"></pep-textbox> \n </div>\n -->\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"subSections\" [label]=\"'LAYOUT_BUILDER.SUB_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onSubSectionsChange($event)\"></pep-checkbox>\n <div class=\"split-area\">\n <pep-select [label]=\"'LAYOUT_BUILDER.SECTIONS_TITLE' | translate\" [value]=\"partsNumber\" [options]=\"partsNumberOptions\" \n (valueChange)=\"onPartsNumberChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n <pep-select [label]=\"'LAYOUT_BUILDER.SPLIT_TITLE' | translate\" [value]=\"split || ''\" [options]=\"splitOptions\"\n (valueChange)=\"onSplitChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n </div>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"collapseOnTablet\" [label]=\"'LAYOUT_BUILDER.COLLAPSE_ON_TABLET_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onCollapseOnTabletChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.COLLAPSE_ON_TABLET_DESCRIPTION' | translate)}}</span>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"fillHeight\" [label]=\"'LAYOUT_BUILDER.FILL_HEIGHT_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onFillHeightChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.FILL_HEIGHT_SECTION_DESCRIPTION' | translate)}}</span>\n </div>\n</pep-layout-builder-editor>\n\n<!-- <div class=\"section-editor-container layout-builder-editor-container\">\n <div>\n <pep-textbox [value]=\"sectionName\" [label]=\"'LAYOUT_BUILDER.SECTION_NAME_TITLE' | translate\" (valueChange)=\"onSectionNameChange($event)\"></pep-textbox>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"subSections\" [label]=\"'LAYOUT_BUILDER.SUB_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onSubSectionsChange($event)\"></pep-checkbox>\n <div class=\"split-area\">\n <pep-select [label]=\"'LAYOUT_BUILDER.SECTIONS_TITLE' | translate\" [value]=\"partsNumber\" [options]=\"partsNumberOptions\" \n (valueChange)=\"onPartsNumberChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n <pep-select [label]=\"'LAYOUT_BUILDER.SPLIT_TITLE' | translate\" [value]=\"split || ''\" [options]=\"splitOptions\"\n (valueChange)=\"onSplitChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n </div>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"collapseOnTablet\" [label]=\"'LAYOUT_BUILDER.COLLAPSE_ON_TABLET_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onCollapseOnTabletChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.COLLAPSE_ON_TABLET_DESCRIPTION' | translate)}}</span>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"fillHeight\" [label]=\"'LAYOUT_BUILDER.FILL_HEIGHT_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onFillHeightChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.FILL_HEIGHT_SECTION_DESCRIPTION' | translate)}}</span>\n </div>\n</div> -->\n", styles: [".section-editor-container .split-area{display:grid;grid-template-columns:1fr 1fr;gap:var(--pep-spacing-lg, 1rem)}\n"], dependencies: [{ kind: "component", type: i3.PepTextboxComponent, selector: "pep-textbox", inputs: ["key", "value", "minFractionDigits", "maxFractionDigits", "accessory", "label", "placeholder", "type", "mandatory", "disabled", "readonly", "maxFieldCharacters", "hint", "textColor", "xAlignment", "rowSpan", "minValue", "maxValue", "visible", "form", "isActive", "showTitle", "renderTitle", "renderError", "renderSymbol", "layoutType", "parentFieldKey", "regex", "regexError", "isInFocus"], outputs: ["valueChange", "keyup"] }, { kind: "component", type: i4.PepSelectComponent, selector: "pep-select", inputs: ["key", "value", "label", "type", "mandatory", "disabled", "readonly", "xAlignment", "rowSpan", "placeholder", "placeholderWhenDisabled", "options", "visible", "emptyOption", "form", "layoutType", "parentFieldKey", "isActive", "showTitle", "renderTitle", "typeaheadDebounceInterval", "addValueToOptionsIfNotExist"], outputs: ["valueChange"] }, { kind: "component", type: i5.PepCheckboxComponent, selector: "pep-checkbox", inputs: ["key", "value", "label", "type", "mandatory", "disabled", "readonly", "xAlignment", "rowSpan", "additionalValue", "form", "isActive", "showTitle", "renderTitle", "layoutType", "visible"], outputs: ["valueChange"] }, { kind: "component", type: i6.PepLayoutBuilderEditorComponent, selector: "pep-layout-builder-editor", inputs: ["editorTabs"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
184
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionEditorComponent, decorators: [{
|
|
185
|
+
type: Component,
|
|
186
|
+
args: [{ selector: 'section-editor', template: "<pep-layout-builder-editor class=\"section-editor-container\">\n <div>\n <pep-textbox [value]=\"sectionName\" [label]=\"'LAYOUT_BUILDER.SECTION_NAME_TITLE' | translate\" (valueChange)=\"onSectionNameChange($event)\"></pep-textbox>\n </div>\n <!-- \n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"isAutoHeight\" [label]=\"'LAYOUT_BUILDER.AUTO_HEIGHT_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"isAutoHeightChange($event)\"></pep-checkbox>\n <pep-textbox [label]=\"'LAYOUT_BUILDER.HEIGHT_TITLE' | translate\" type=\"int\" [minValue]=\"MIN_HEIGHT\" [disabled]=\"isAutoHeight\" [value]=\"height\" (valueChange)=\"onHeightChange($event)\"></pep-textbox> \n </div>\n -->\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"subSections\" [label]=\"'LAYOUT_BUILDER.SUB_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onSubSectionsChange($event)\"></pep-checkbox>\n <div class=\"split-area\">\n <pep-select [label]=\"'LAYOUT_BUILDER.SECTIONS_TITLE' | translate\" [value]=\"partsNumber\" [options]=\"partsNumberOptions\" \n (valueChange)=\"onPartsNumberChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n <pep-select [label]=\"'LAYOUT_BUILDER.SPLIT_TITLE' | translate\" [value]=\"split || ''\" [options]=\"splitOptions\"\n (valueChange)=\"onSplitChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n </div>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"collapseOnTablet\" [label]=\"'LAYOUT_BUILDER.COLLAPSE_ON_TABLET_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onCollapseOnTabletChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.COLLAPSE_ON_TABLET_DESCRIPTION' | translate)}}</span>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"fillHeight\" [label]=\"'LAYOUT_BUILDER.FILL_HEIGHT_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onFillHeightChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.FILL_HEIGHT_SECTION_DESCRIPTION' | translate)}}</span>\n </div>\n</pep-layout-builder-editor>\n\n<!-- <div class=\"section-editor-container layout-builder-editor-container\">\n <div>\n <pep-textbox [value]=\"sectionName\" [label]=\"'LAYOUT_BUILDER.SECTION_NAME_TITLE' | translate\" (valueChange)=\"onSectionNameChange($event)\"></pep-textbox>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"subSections\" [label]=\"'LAYOUT_BUILDER.SUB_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onSubSectionsChange($event)\"></pep-checkbox>\n <div class=\"split-area\">\n <pep-select [label]=\"'LAYOUT_BUILDER.SECTIONS_TITLE' | translate\" [value]=\"partsNumber\" [options]=\"partsNumberOptions\" \n (valueChange)=\"onPartsNumberChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n <pep-select [label]=\"'LAYOUT_BUILDER.SPLIT_TITLE' | translate\" [value]=\"split || ''\" [options]=\"splitOptions\"\n (valueChange)=\"onSplitChange($event)\" [emptyOption]=\"false\" [disabled]=\"!subSections\"></pep-select>\n </div>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"collapseOnTablet\" [label]=\"'LAYOUT_BUILDER.COLLAPSE_ON_TABLET_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onCollapseOnTabletChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.COLLAPSE_ON_TABLET_DESCRIPTION' | translate)}}</span>\n </div>\n <div class=\"editor-separator\"></div>\n <div>\n <pep-checkbox class=\"checkbox-as-title\" [value]=\"fillHeight\" [label]=\"'LAYOUT_BUILDER.FILL_HEIGHT_SECTION_TITLE' | translate\" [renderTitle]=\"false\" (valueChange)=\"onFillHeightChange($event)\"></pep-checkbox>\n <span class=\"header-title body-xs\">{{('LAYOUT_BUILDER.FILL_HEIGHT_SECTION_DESCRIPTION' | translate)}}</span>\n </div>\n</div> -->\n", styles: [".section-editor-container .split-area{display:grid;grid-template-columns:1fr 1fr;gap:var(--pep-spacing-lg, 1rem)}\n"] }]
|
|
187
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i2.PepDialogService }]; }, propDecorators: { hostObject: [{
|
|
188
|
+
type: Input
|
|
189
|
+
}], hostObjectChange: [{
|
|
190
|
+
type: Output
|
|
191
|
+
}] } });
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbGF5b3V0LWJ1aWxkZXIvc2VjdGlvbi1lZGl0b3Ivc2VjdGlvbi1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbGF5b3V0LWJ1aWxkZXIvc2VjdGlvbi1lZGl0b3Ivc2VjdGlvbi1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsYUFBYSxFQUFvQixNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7OztBQWlCeEcsTUFBTSxPQUFPLHNCQUFzQjtJQXNEL0IsWUFBb0IsU0FBMkIsRUFBVSxNQUF3QjtRQUE3RCxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQWtCO1FBckR4RSxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBa0J6QixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQXNCakIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsV0FBTSxHQUFXLElBQUksQ0FBQyxVQUFVLENBQUM7UUFFdkIscUJBQWdCLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO1FBRTFHLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsR0FBRyxDQUFDO1FBQ2xCLHVCQUFrQixHQUFHLEtBQUssRUFBYyxDQUFDO1FBQ3pDLGlC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LENBQUM7O21IQTVNUSxzQkFBc0I7dUdBQXRCLHNCQUFzQiwrSUN0Qm5DLHkxSUF5REE7MkZEbkNhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDSSxnQkFBZ0I7c0lBU3RCLFVBQVU7c0JBRGIsS0FBSztnQkF3Q0ksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgSVBlcE9wdGlvbiB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7IFNwbGl0VHlwZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9wYXBpLXNkayc7XG5pbXBvcnQgeyBQZXBEaWFsb2dBY3Rpb25CdXR0b24sIFBlcERpYWxvZ0RhdGEsIFBlcERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kaWFsb2cnO1xuaW1wb3J0IHsgSUxheW91dFNlY3Rpb25FZGl0b3IgfSBmcm9tICcuLi9sYXlvdXQtYnVpbGRlci1pbnRlcm5hbC5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBJU3BsaXRPcHRpb24ge1xuICAgIGtleTogU3BsaXRUeXBlOyBcbiAgICB2YWx1ZTogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBJQWxsU3BsaXRPcHRpb24ge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBBcnJheTxJU3BsaXRPcHRpb24+O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NlY3Rpb24tZWRpdG9yJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VjdGlvbi1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlY3Rpb24tZWRpdG9yLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VjdGlvbkVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcmVhZG9ubHkgTUlOX0hFSUdIVCA9IDQwO1xuICAgIFxuICAgIHByaXZhdGUgX2hvc3RPYmplY3QhOiBJTGF5b3V0U2VjdGlvbkVkaXRvcjtcbiAgICBASW5wdXQoKVxuICAgIHNldCBob3N0T2JqZWN0KHZhbHVlOiBJTGF5b3V0U2VjdGlvbkVkaXRvcikge1xuICAgICAgICB0aGlzLl9ob3N0T2JqZWN0ID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy5zZWN0aW9uTmFtZSA9IHZhbHVlLnNlY3Rpb25OYW1lO1xuICAgICAgICB0aGlzLnNwbGl0ID0gdmFsdWUuc3BsaXQ7XG4gICAgICAgIHRoaXMuaXNBdXRvSGVpZ2h0ID0gIXZhbHVlLmhlaWdodCB8fCB2YWx1ZS5oZWlnaHQgPT09IDA7XG4gICAgICAgIHRoaXMuaGVpZ2h0ID0gdGhpcy5pc0F1dG9IZWlnaHQgPyB0aGlzLk1JTl9IRUlHSFQgOiB2YWx1ZS5oZWlnaHQ7XG4gICAgICAgIHRoaXMuY29sbGFwc2VPblRhYmxldCA9IHZhbHVlLmNvbGxhcHNlT25UYWJsZXQgPz8gZmFsc2U7XG4gICAgICAgIHRoaXMuZmlsbEhlaWdodCA9IHZhbHVlLmZpbGxIZWlnaHQgPz8gZmFsc2U7XG4gICAgfVxuICAgIGdldCBob3N0T2JqZWN0KCk6IElMYXlvdXRTZWN0aW9uRWRpdG9yIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hvc3RPYmplY3Q7XG4gICAgfVxuXG4gICAgc2VjdGlvbk5hbWUgPSAnJztcbiAgICBcbiAgICBwcml2YXRlIF9zcGxpdDogU3BsaXRUeXBlIHwgdW5kZWZpbmVkO1xuICAgIHNldCBzcGxpdCh2YWx1ZTogU3BsaXRUeXBlIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX3NwbGl0ID0gdmFsdWU7XG4gICAgICAgIFxuICAgICAgICB0aGlzLnN1YlNlY3Rpb25zID0gKHRoaXMuX3NwbGl0ICYmIHRoaXMuX3NwbGl0Lmxlbmd0aCA+IDApID8gdHJ1ZSA6IGZhbHNlO1xuXG4gICAgICAgIC8vIENoZWNrIGhvdyBtYW55IHBhcnRzIHdlIGhhdmUuXG4gICAgICAgIGNvbnN0IGFyciA9IHZhbHVlPy5zcGxpdCgnICcpO1xuICAgICAgICBpZiAoYXJyICYmIGFyci5sZW5ndGggPiAxICYmIGFyci5sZW5ndGggPD0gNCkge1xuICAgICAgICAgICAgdGhpcy5wYXJ0c051bWJlciA9IGFyci5sZW5ndGgudG9TdHJpbmcoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGFydHNOdW1iZXIgPSBcIjJcIjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdGhpcy5sb2FkU3BsaXRPcHRpb25zKCk7XG4gICAgfVxuICAgIGdldCBzcGxpdCgpOiBTcGxpdFR5cGUgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3BsaXQ7XG4gICAgfVxuICAgIFxuICAgIGlzQXV0b0hlaWdodCA9IHRydWU7XG4gICAgaGVpZ2h0OiBudW1iZXIgPSB0aGlzLk1JTl9IRUlHSFQ7XG5cbiAgICBAT3V0cHV0KCkgaG9zdE9iamVjdENoYW5nZTogRXZlbnRFbWl0dGVyPElMYXlvdXRTZWN0aW9uRWRpdG9yPiA9IG5ldyBFdmVudEVtaXR0ZXI8SUxheW91dFNlY3Rpb25FZGl0b3I+KCk7XG4gICAgXG4gICAgY29sbGFwc2VPblRhYmxldCA9IGZhbHNlO1xuICAgIGZpbGxIZWlnaHQgPSBmYWxzZTtcbiAgICBzdWJTZWN0aW9ucyA9IGZhbHNlO1xuICAgIHBhcnRzTnVtYmVyID0gXCIyXCI7XG4gICAgcGFydHNOdW1iZXJPcHRpb25zID0gQXJyYXk8SVBlcE9wdGlvbj4oKTtcbiAgICBzcGxpdE9wdGlvbnMgPSBBcnJheTxJU3BsaXRPcHRpb24+KCk7XG4gICAgYWxsU3BsaXRPcHRpb25zID0gQXJyYXk8SUFsbFNwbGl0T3B0aW9uPigpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgZGlhbG9nOiBQZXBEaWFsb2dTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuaW5pdERhdGEoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXREYXRhKCkge1xuICAgICAgICB0aGlzLnBhcnRzTnVtYmVyT3B0aW9ucyA9IFtcbiAgICAgICAgICAgIHsgJ2tleSc6ICcyJywgJ3ZhbHVlJzogJzIgUGFydHMnIH0sIFxuICAgICAgICAgICAgeyAna2V5JzogJzMnLCAndmFsdWUnOiAnMyBQYXJ0cycgfSxcbiAgICAgICAgICAgIHsgJ2tleSc6ICc0JywgJ3ZhbHVlJzogJzQgUGFydHMnIH1cbiAgICAgICAgXTtcbiAgICAgICAgXG4gICAgICAgIHRoaXMuYWxsU3BsaXRPcHRpb25zID0gW1xuICAgICAgICAgICAgeyAna2V5JzogJzInLCAndmFsdWUnOiBbXG4gICAgICAgICAgICAgICAgeyAna2V5JzogJzEvNCAzLzQnLCAndmFsdWUnOiAnMS80LTMvNCcgfSxcbiAgICAgICAgICAgICAgICB7ICdrZXknOiAnMS8zIDIvMycsICd2YWx1ZSc6ICcxLzMtMi8zJyB9LFxuICAgICAgICAgICAgICAgIHsgJ2tleSc6ICcxLzIgMS8yJywgJ3ZhbHVlJzogJzEvMi0xLzInIH0sXG4gICAgICAgICAgICAgICAgeyAna2V5JzogJzIvMyAxLzMnLCAndmFsdWUnOiAnMi8zLTEvMycgfSxcbiAgICAgICAgICAgICAgICB7ICdrZXknOiAnMy80IDEvNCcsICd2YWx1ZSc6ICczLzQtMS80JyB9LFxuICAgICAgICAgICAgXX0sIFxuICAgICAgICAgICAgeyAna2V5JzogJzMnLCAndmFsdWUnOiBbXG4gICAgICAgICAgICAgICAgeyAna2V5JzogJzEvMyAxLzMgMS8zJywgJ3ZhbHVlJzogJzEvMy0xLzMtMS8zJyB9LFxuICAgICAgICAgICAgICAgIHsgJ2tleSc6ICcxLzIgMS80IDEvNCcsICd2YWx1ZSc6ICcxLzItMS80LTEvNCcgfSxcbiAgICAgICAgICAgICAgICB7ICdrZXknOiAnMS80IDEvMiAxLzQnLCAndmFsdWUnOiAnMS80LTEvMi0xLzQnIH0sXG4gICAgICAgICAgICAgICAgeyAna2V5JzogJzEvNCAxLzQgMS8yJywgJ3ZhbHVlJzogJzEvNC0xLzQtMS8yJyB9LFxuICAgICAgICAgICAgXX0sXG4gICAgICAgICAgICB7ICdrZXknOiAnNCcsICd2YWx1ZSc6IFtcbiAgICAgICAgICAgICAgICB7ICdrZXknOiAnMS80IDEvNCAxLzQgMS80JywgJ3ZhbHVlJzogJzEvNC0xLzQtMS80LTEvNCcgfSxcbiAgICAgICAgICAgIF19XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkU3BsaXRPcHRpb25zKCkge1xuICAgICAgICBjb25zdCBzcGxpdE9wdGlvbnMgPSB0aGlzLmFsbFNwbGl0T3B0aW9ucy5maW5kKChvcHRpb24pID0+IG9wdGlvbi5rZXkgPT09IHRoaXMucGFydHNOdW1iZXIpO1xuICAgICAgICBpZiAoc3BsaXRPcHRpb25zKSB7XG4gICAgICAgICAgICB0aGlzLnNwbGl0T3B0aW9ucyA9IHNwbGl0T3B0aW9ucy52YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc3BsaXRPcHRpb25zID0gdGhpcy5hbGxTcGxpdE9wdGlvbnNbMF0udmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuX3NwbGl0KSB7XG4gICAgICAgICAgICB0aGlzLl9zcGxpdCA9IHRoaXMuc3BsaXRPcHRpb25zWzBdLmtleTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlSG9zdE9iamVjdCgpIHtcbiAgICAgICAgdGhpcy5faG9zdE9iamVjdC5zZWN0aW9uTmFtZSA9IHRoaXMuc2VjdGlvbk5hbWU7XG4gICAgICAgIHRoaXMuX2hvc3RPYmplY3Quc3BsaXQgPSB0aGlzLnN1YlNlY3Rpb25zID8gdGhpcy5zcGxpdCA6IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5faG9zdE9iamVjdC5oZWlnaHQgPSB0aGlzLmlzQXV0b0hlaWdodCA/IDAgOiB0aGlzLmhlaWdodDtcbiAgICAgICAgdGhpcy5faG9zdE9iamVjdC5jb2xsYXBzZU9uVGFibGV0ID0gdGhpcy5jb2xsYXBzZU9uVGFibGV0O1xuICAgICAgICB0aGlzLl9ob3N0T2JqZWN0LmZpbGxIZWlnaHQgPSB0aGlzLmZpbGxIZWlnaHQ7XG5cbiAgICAgICAgdGhpcy5ob3N0T2JqZWN0Q2hhbmdlLmVtaXQodGhpcy5ob3N0T2JqZWN0KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5sb2FkU3BsaXRPcHRpb25zKCk7XG4gICAgfVxuICAgIFxuICAgIGlzQXV0b0hlaWdodENoYW5nZShpc0NoZWNrZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0F1dG9IZWlnaHQgPSBpc0NoZWNrZWQ7XG4gICAgICAgIHRoaXMudXBkYXRlSG9zdE9iamVjdCgpO1xuICAgIH1cblxuICAgIG9uSGVpZ2h0Q2hhbmdlKGhlaWdodDogbnVtYmVyKSB7XG4gICAgICAgIGlmIChoZWlnaHQgPj0gdGhpcy5NSU5fSEVJR0hUKSB7XG4gICAgICAgICAgICB0aGlzLmhlaWdodCA9IGNvZXJjZU51bWJlclByb3BlcnR5KGhlaWdodCwgdGhpcy5oZWlnaHQpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVIb3N0T2JqZWN0KCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgb25TZWN0aW9uTmFtZUNoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc2VjdGlvbk5hbWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy51cGRhdGVIb3N0T2JqZWN0KCk7XG4gICAgfVxuXG4gICAgb25Db2xsYXBzZU9uVGFibGV0Q2hhbmdlKHZhbHVlOiBib29sZWFuKXtcbiAgICAgICAgdGhpcy5jb2xsYXBzZU9uVGFibGV0ID0gdmFsdWU7XG4gICAgICAgIHRoaXMudXBkYXRlSG9zdE9iamVjdCgpO1xuICAgIH1cblxuICAgIG9uRmlsbEhlaWdodENoYW5nZSh2YWx1ZTogYm9vbGVhbil7XG4gICAgICAgIHRoaXMuZmlsbEhlaWdodCA9IHZhbHVlO1xuICAgICAgICB0aGlzLnVwZGF0ZUhvc3RPYmplY3QoKTtcbiAgICB9XG5cbiAgICBvblN1YlNlY3Rpb25zQ2hhbmdlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGNvbnN0IG9sZFZhbHVlID0gdGhpcy5zdWJTZWN0aW9ucztcbiAgICAgICAgLy8gQ2hlY2sgaWYgY2FuY2VsIHRoZSBzdWIgc2VjdGlvbnMgKCBjaGFuZ2UgZnJvbSBhbnkgLT4gMSBzZWN0aW9uICksIGlmIHRydWUgbmVlZCB0byBzaG93IGNvbmZpcm0gbWVzc2FnZVxuICAgICAgICBpZiAodmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICB0aGlzLnN1YlNlY3Rpb25zID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLnNob3dEZWxldGVTZWN0aW9uTXNnKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUhvc3RPYmplY3QoKTtcbiAgICAgICAgICAgIH0sICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN1YlNlY3Rpb25zID0gb2xkVmFsdWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc3ViU2VjdGlvbnMgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlSG9zdE9iamVjdCgpO1xuICAgICAgICB9XG4gICAgfVxuICBcbiAgICBvblBhcnRzTnVtYmVyQ2hhbmdlKGtleTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IG9sZEtleSA9IHRoaXMucGFydHNOdW1iZXI7XG4gICAgICAgIC8vIENoZWNrIGlmIGRlY3JlYXNlIG9uIHN1YiBzZWN0aW9ucyBudW1iZXIsIGlmIHRydWUgbmVlZCB0byBzaG93IGNvbmZpcm0gbWVzc2FnZVxuICAgICAgICBpZiAoa2V5ICYmIHBhcnNlSW50KGtleSkgPCBwYXJzZUludCh0aGlzLnBhcnRzTnVtYmVyKSkge1xuICAgICAgICAgICAgdGhpcy5wYXJ0c051bWJlciA9IGtleTtcbiAgICAgICAgICAgIHRoaXMuc2hvd0RlbGV0ZVNlY3Rpb25Nc2coKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZFNwbGl0T3B0aW9ucygpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3NwbGl0ID0gdGhpcy5zcGxpdE9wdGlvbnNbMF0ua2V5O1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlSG9zdE9iamVjdCgpO1xuICAgICAgICAgICAgfSwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucGFydHNOdW1iZXIgPSBvbGRLZXk7XG4gICAgICAgICAgICB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wYXJ0c051bWJlciA9IGtleTtcbiAgICAgICAgICAgIHRoaXMubG9hZFNwbGl0T3B0aW9ucygpO1xuICAgICAgICAgICAgdGhpcy5fc3BsaXQgPSB0aGlzLnNwbGl0T3B0aW9uc1swXS5rZXk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUhvc3RPYmplY3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNob3dEZWxldGVTZWN0aW9uTXNnKGNvbnRpbnVlQ0I6ICgpID0+IHZvaWQsIGNhbmNlbENCOiAoKSA9PiB2b2lkKXtcbiAgICAgICAgY29uc3QgYWN0aW9uQnV0dG9ucyA9IFtcbiAgICAgICAgICAgIG5ldyBQZXBEaWFsb2dBY3Rpb25CdXR0b24oXG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnQUNUSU9OUy5DQU5DRUwnKSxcbiAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbENCKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG5ldyBQZXBEaWFsb2dBY3Rpb25CdXR0b24oXG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnQUNUSU9OUy5DT05USU5VRScpLFxuICAgICAgICAgICAgICAgICdzdHJvbmcgY2F1dGlvbicsXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZUNCKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICBdO1xuICAgICAgICBcbiAgICAgICAgY29uc3QgY29udGVudCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0xBWU9VVF9CVUlMREVSLkRFTEVURV9TRUNUSU9OX01TRycpO1xuICAgICAgICBjb25zdCB0aXRsZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0xBWU9VVF9CVUlMREVSLkRFTEVURV9TRUNUSU9OX1RJVExFJyk7XG4gICAgICAgIGNvbnN0IGRhdGFNc2cgPSBuZXcgUGVwRGlhbG9nRGF0YSh7dGl0bGUsIGFjdGlvbnNUeXBlOiAnY3VzdG9tJywgY29udGVudCwgYWN0aW9uQnV0dG9uc30pO1xuXG4gICAgICAgIHRoaXMuZGlhbG9nLm9wZW5EZWZhdWx0RGlhbG9nKGRhdGFNc2cpO1xuICAgIH1cblxuXG4gICAgb25TcGxpdENoYW5nZShrZXk6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9zcGxpdCA9IGtleSBhcyBTcGxpdFR5cGU7XG4gICAgICAgIHRoaXMudXBkYXRlSG9zdE9iamVjdCgpO1xuICAgIH1cbn1cbiIsIjxwZXAtbGF5b3V0LWJ1aWxkZXItZWRpdG9yIGNsYXNzPVwic2VjdGlvbi1lZGl0b3ItY29udGFpbmVyXCI+XG4gICAgPGRpdj5cbiAgICAgICAgPHBlcC10ZXh0Ym94IFt2YWx1ZV09XCJzZWN0aW9uTmFtZVwiIFtsYWJlbF09XCInTEFZT1VUX0JVSUxERVIuU0VDVElPTl9OQU1FX1RJVExFJyB8IHRyYW5zbGF0ZVwiICh2YWx1ZUNoYW5nZSk9XCJvblNlY3Rpb25OYW1lQ2hhbmdlKCRldmVudClcIj48L3BlcC10ZXh0Ym94PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gXG4gICAgPGRpdj5cbiAgICAgICAgPHBlcC1jaGVja2JveCBjbGFzcz1cImNoZWNrYm94LWFzLXRpdGxlXCIgW3ZhbHVlXT1cImlzQXV0b0hlaWdodFwiIFtsYWJlbF09XCInTEFZT1VUX0JVSUxERVIuQVVUT19IRUlHSFRfVElUTEUnIHwgdHJhbnNsYXRlXCIgW3JlbmRlclRpdGxlXT1cImZhbHNlXCIgKHZhbHVlQ2hhbmdlKT1cImlzQXV0b0hlaWdodENoYW5nZSgkZXZlbnQpXCI+PC9wZXAtY2hlY2tib3g+XG4gICAgICAgIDxwZXAtdGV4dGJveCBbbGFiZWxdPVwiJ0xBWU9VVF9CVUlMREVSLkhFSUdIVF9USVRMRScgfCB0cmFuc2xhdGVcIiB0eXBlPVwiaW50XCIgW21pblZhbHVlXT1cIk1JTl9IRUlHSFRcIiBbZGlzYWJsZWRdPVwiaXNBdXRvSGVpZ2h0XCIgW3ZhbHVlXT1cImhlaWdodFwiICh2YWx1ZUNoYW5nZSk9XCJvbkhlaWdodENoYW5nZSgkZXZlbnQpXCI+PC9wZXAtdGV4dGJveD4gXG4gICAgPC9kaXY+XG4gICAgLS0+XG4gICAgPGRpdiBjbGFzcz1cImVkaXRvci1zZXBhcmF0b3JcIj48L2Rpdj5cbiAgICA8ZGl2PlxuICAgICAgICA8cGVwLWNoZWNrYm94IGNsYXNzPVwiY2hlY2tib3gtYXMtdGl0bGVcIiBbdmFsdWVdPVwic3ViU2VjdGlvbnNcIiBbbGFiZWxdPVwiJ0xBWU9VVF9CVUlMREVSLlNVQl9TRUNUSU9OX1RJVExFJyB8IHRyYW5zbGF0ZVwiIFtyZW5kZXJUaXRsZV09XCJmYWxzZVwiICh2YWx1ZUNoYW5nZSk9XCJvblN1YlNlY3Rpb25zQ2hhbmdlKCRldmVudClcIj48L3BlcC1jaGVja2JveD5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNwbGl0LWFyZWFcIj5cbiAgICAgICAgICAgIDxwZXAtc2VsZWN0IFtsYWJlbF09XCInTEFZT1VUX0JVSUxERVIuU0VDVElPTlNfVElUTEUnIHwgdHJhbnNsYXRlXCIgW3ZhbHVlXT1cInBhcnRzTnVtYmVyXCIgW29wdGlvbnNdPVwicGFydHNOdW1iZXJPcHRpb25zXCIgXG4gICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uUGFydHNOdW1iZXJDaGFuZ2UoJGV2ZW50KVwiIFtlbXB0eU9wdGlvbl09XCJmYWxzZVwiIFtkaXNhYmxlZF09XCIhc3ViU2VjdGlvbnNcIj48L3BlcC1zZWxlY3Q+XG4gICAgICAgICAgICA8cGVwLXNlbGVjdCBbbGFiZWxdPVwiJ0xBWU9VVF9CVUlMREVSLlNQTElUX1RJVExFJyB8IHRyYW5zbGF0ZVwiIFt2YWx1ZV09XCJzcGxpdCB8fCAnJ1wiIFtvcHRpb25zXT1cInNwbGl0T3B0aW9uc1wiXG4gICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uU3BsaXRDaGFuZ2UoJGV2ZW50KVwiIFtlbXB0eU9wdGlvbl09XCJmYWxzZVwiIFtkaXNhYmxlZF09XCIhc3ViU2VjdGlvbnNcIj48L3BlcC1zZWxlY3Q+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJlZGl0b3Itc2VwYXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPHBlcC1jaGVja2JveCBjbGFzcz1cImNoZWNrYm94LWFzLXRpdGxlXCIgW3ZhbHVlXT1cImNvbGxhcHNlT25UYWJsZXRcIiBbbGFiZWxdPVwiJ0xBWU9VVF9CVUlMREVSLkNPTExBUFNFX09OX1RBQkxFVF9USVRMRScgfCB0cmFuc2xhdGVcIiBbcmVuZGVyVGl0bGVdPVwiZmFsc2VcIiAodmFsdWVDaGFuZ2UpPVwib25Db2xsYXBzZU9uVGFibGV0Q2hhbmdlKCRldmVudClcIj48L3BlcC1jaGVja2JveD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJoZWFkZXItdGl0bGUgYm9keS14c1wiPnt7KCdMQVlPVVRfQlVJTERFUi5DT0xMQVBTRV9PTl9UQUJMRVRfREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlKX19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJlZGl0b3Itc2VwYXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPHBlcC1jaGVja2JveCBjbGFzcz1cImNoZWNrYm94LWFzLXRpdGxlXCIgW3ZhbHVlXT1cImZpbGxIZWlnaHRcIiBbbGFiZWxdPVwiJ0xBWU9VVF9CVUlMREVSLkZJTExfSEVJR0hUX1NFQ1RJT05fVElUTEUnIHwgdHJhbnNsYXRlXCIgW3JlbmRlclRpdGxlXT1cImZhbHNlXCIgKHZhbHVlQ2hhbmdlKT1cIm9uRmlsbEhlaWdodENoYW5nZSgkZXZlbnQpXCI+PC9wZXAtY2hlY2tib3g+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaGVhZGVyLXRpdGxlIGJvZHkteHNcIj57eygnTEFZT1VUX0JVSUxERVIuRklMTF9IRUlHSFRfU0VDVElPTl9ERVNDUklQVElPTicgfCB0cmFuc2xhdGUpfX08L3NwYW4+XG4gICAgPC9kaXY+XG48L3BlcC1sYXlvdXQtYnVpbGRlci1lZGl0b3I+XG5cbjwhLS0gPGRpdiBjbGFzcz1cInNlY3Rpb24tZWRpdG9yLWNvbnRhaW5lciBsYXlvdXQtYnVpbGRlci1lZGl0b3ItY29udGFpbmVyXCI+XG4gICAgPGRpdj5cbiAgICAgICAgPHBlcC10ZXh0Ym94IFt2YWx1ZV09XCJzZWN0aW9uTmFtZVwiIFtsYWJlbF09XCInTEFZT1VUX0JVSUxERVIuU0VDVElPTl9OQU1FX1RJVExFJyB8IHRyYW5zbGF0ZVwiICh2YWx1ZUNoYW5nZSk9XCJvblNlY3Rpb25OYW1lQ2hhbmdlKCRldmVudClcIj48L3BlcC10ZXh0Ym94PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJlZGl0b3Itc2VwYXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPHBlcC1jaGVja2JveCBjbGFzcz1cImNoZWNrYm94LWFzLXRpdGxlXCIgW3ZhbHVlXT1cInN1YlNlY3Rpb25zXCIgW2xhYmVsXT1cIidMQVlPVVRfQlVJTERFUi5TVUJfU0VDVElPTl9USVRMRScgfCB0cmFuc2xhdGVcIiBbcmVuZGVyVGl0bGVdPVwiZmFsc2VcIiAodmFsdWVDaGFuZ2UpPVwib25TdWJTZWN0aW9uc0NoYW5nZSgkZXZlbnQpXCI+PC9wZXAtY2hlY2tib3g+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzcGxpdC1hcmVhXCI+XG4gICAgICAgICAgICA8cGVwLXNlbGVjdCBbbGFiZWxdPVwiJ0xBWU9VVF9CVUlMREVSLlNFQ1RJT05TX1RJVExFJyB8IHRyYW5zbGF0ZVwiIFt2YWx1ZV09XCJwYXJ0c051bWJlclwiIFtvcHRpb25zXT1cInBhcnRzTnVtYmVyT3B0aW9uc1wiIFxuICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblBhcnRzTnVtYmVyQ2hhbmdlKCRldmVudClcIiBbZW1wdHlPcHRpb25dPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwiIXN1YlNlY3Rpb25zXCI+PC9wZXAtc2VsZWN0PlxuICAgICAgICAgICAgPHBlcC1zZWxlY3QgW2xhYmVsXT1cIidMQVlPVVRfQlVJTERFUi5TUExJVF9USVRMRScgfCB0cmFuc2xhdGVcIiBbdmFsdWVdPVwic3BsaXQgfHwgJydcIiBbb3B0aW9uc109XCJzcGxpdE9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblNwbGl0Q2hhbmdlKCRldmVudClcIiBbZW1wdHlPcHRpb25dPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwiIXN1YlNlY3Rpb25zXCI+PC9wZXAtc2VsZWN0PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZWRpdG9yLXNlcGFyYXRvclwiPjwvZGl2PlxuICAgIDxkaXY+XG4gICAgICAgIDxwZXAtY2hlY2tib3ggY2xhc3M9XCJjaGVja2JveC1hcy10aXRsZVwiIFt2YWx1ZV09XCJjb2xsYXBzZU9uVGFibGV0XCIgW2xhYmVsXT1cIidMQVlPVVRfQlVJTERFUi5DT0xMQVBTRV9PTl9UQUJMRVRfVElUTEUnIHwgdHJhbnNsYXRlXCIgW3JlbmRlclRpdGxlXT1cImZhbHNlXCIgKHZhbHVlQ2hhbmdlKT1cIm9uQ29sbGFwc2VPblRhYmxldENoYW5nZSgkZXZlbnQpXCI+PC9wZXAtY2hlY2tib3g+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaGVhZGVyLXRpdGxlIGJvZHkteHNcIj57eygnTEFZT1VUX0JVSUxERVIuQ09MTEFQU0VfT05fVEFCTEVUX0RFU0NSSVBUSU9OJyB8IHRyYW5zbGF0ZSl9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZWRpdG9yLXNlcGFyYXRvclwiPjwvZGl2PlxuICAgIDxkaXY+XG4gICAgICAgIDxwZXAtY2hlY2tib3ggY2xhc3M9XCJjaGVja2JveC1hcy10aXRsZVwiIFt2YWx1ZV09XCJmaWxsSGVpZ2h0XCIgW2xhYmVsXT1cIidMQVlPVVRfQlVJTERFUi5GSUxMX0hFSUdIVF9TRUNUSU9OX1RJVExFJyB8IHRyYW5zbGF0ZVwiIFtyZW5kZXJUaXRsZV09XCJmYWxzZVwiICh2YWx1ZUNoYW5nZSk9XCJvbkZpbGxIZWlnaHRDaGFuZ2UoJGV2ZW50KVwiPjwvcGVwLWNoZWNrYm94PlxuICAgICAgICA8c3BhbiBjbGFzcz1cImhlYWRlci10aXRsZSBib2R5LXhzXCI+e3soJ0xBWU9VVF9CVUlMREVSLkZJTExfSEVJR0hUX1NFQ1RJT05fREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlKX19PC9zcGFuPlxuICAgIDwvZGl2PlxuPC9kaXY+IC0tPlxuIl19
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { SectionEditorComponent } from './section-editor.component';
|
|
4
|
+
import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
|
|
5
|
+
import { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';
|
|
6
|
+
import { PepCheckboxModule } from '@pepperi-addons/ngx-lib/checkbox';
|
|
7
|
+
import { PepSelectModule } from '@pepperi-addons/ngx-lib/select';
|
|
8
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
9
|
+
import { PepLayoutBuilderEditorModule } from '../layout-builder-editor/layout-builder-editor.module';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@ngx-translate/core";
|
|
12
|
+
export class SectionEditorModule {
|
|
13
|
+
}
|
|
14
|
+
SectionEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
+
SectionEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: SectionEditorModule, declarations: [SectionEditorComponent], imports: [CommonModule,
|
|
16
|
+
PepButtonModule,
|
|
17
|
+
PepTextboxModule,
|
|
18
|
+
PepSelectModule,
|
|
19
|
+
PepCheckboxModule,
|
|
20
|
+
PepLayoutBuilderEditorModule, i1.TranslateModule], exports: [SectionEditorComponent] });
|
|
21
|
+
SectionEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionEditorModule, imports: [CommonModule,
|
|
22
|
+
PepButtonModule,
|
|
23
|
+
PepTextboxModule,
|
|
24
|
+
PepSelectModule,
|
|
25
|
+
PepCheckboxModule,
|
|
26
|
+
PepLayoutBuilderEditorModule,
|
|
27
|
+
TranslateModule.forChild()] });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: SectionEditorModule, decorators: [{
|
|
29
|
+
type: NgModule,
|
|
30
|
+
args: [{
|
|
31
|
+
declarations: [SectionEditorComponent],
|
|
32
|
+
imports: [
|
|
33
|
+
CommonModule,
|
|
34
|
+
PepButtonModule,
|
|
35
|
+
PepTextboxModule,
|
|
36
|
+
PepSelectModule,
|
|
37
|
+
PepCheckboxModule,
|
|
38
|
+
PepLayoutBuilderEditorModule,
|
|
39
|
+
TranslateModule.forChild()
|
|
40
|
+
],
|
|
41
|
+
exports: [SectionEditorComponent]
|
|
42
|
+
}]
|
|
43
|
+
}] });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbGF5b3V0LWJ1aWxkZXIvc2VjdGlvbi1lZGl0b3Ivc2VjdGlvbi1lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDOzs7QUFlckcsTUFBTSxPQUFPLG1CQUFtQjs7Z0hBQW5CLG1CQUFtQjtpSEFBbkIsbUJBQW1CLGlCQVpiLHNCQUFzQixhQUVqQyxZQUFZO1FBQ1osZUFBZTtRQUNmLGdCQUFnQjtRQUNoQixlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLDRCQUE0QixpQ0FHdEIsc0JBQXNCO2lIQUV2QixtQkFBbUIsWUFWeEIsWUFBWTtRQUNaLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLGlCQUFpQjtRQUNqQiw0QkFBNEI7UUFDNUIsZUFBZSxDQUFDLFFBQVEsRUFBRTsyRkFJckIsbUJBQW1CO2tCQWIvQixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLDRCQUE0Qjt3QkFDNUIsZUFBZSxDQUFDLFFBQVEsRUFBRTtxQkFDN0I7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTZWN0aW9uRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9zZWN0aW9uLWVkaXRvci5jb21wb25lbnQnXG5pbXBvcnQgeyBQZXBCdXR0b25Nb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9idXR0b24nO1xuaW1wb3J0IHsgUGVwVGV4dGJveE1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3RleHRib3gnO1xuaW1wb3J0IHsgUGVwQ2hlY2tib3hNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9jaGVja2JveCc7XG5pbXBvcnQgeyBQZXBTZWxlY3RNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9zZWxlY3QnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBQZXBMYXlvdXRCdWlsZGVyRWRpdG9yTW9kdWxlIH0gZnJvbSAnLi4vbGF5b3V0LWJ1aWxkZXItZWRpdG9yL2xheW91dC1idWlsZGVyLWVkaXRvci5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1NlY3Rpb25FZGl0b3JDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQZXBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFBlcFRleHRib3hNb2R1bGUsXG4gICAgICAgIFBlcFNlbGVjdE1vZHVsZSxcbiAgICAgICAgUGVwQ2hlY2tib3hNb2R1bGUsXG4gICAgICAgIFBlcExheW91dEJ1aWxkZXJFZGl0b3JNb2R1bGUsXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpXG4gICAgXSxcbiAgICBleHBvcnRzOiBbU2VjdGlvbkVkaXRvckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgU2VjdGlvbkVkaXRvck1vZHVsZSB7IH1cbiJdfQ==
|