@softheon/armature 17.31.0 → 17.31.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ag-grid-components/package.json +3 -0
- package/assets/styles/material-override/_form-field.scss +7 -0
- package/esm2022/lib/mfe/components/entity-inject-wrapper/entity-inject-wrapper.component.mjs +44 -4
- package/esm2022/lib/navigation/components/b2b-nav/b2b-nav.component.mjs +44 -20
- package/esm2022/lib/navigation/models/navigation.mjs +1 -1
- package/fesm2022/softheon-armature.mjs +90 -27
- package/fesm2022/softheon-armature.mjs.map +1 -1
- package/lib/mfe/components/entity-inject-wrapper/entity-inject-wrapper.component.d.ts +13 -3
- package/lib/navigation/components/b2b-nav/b2b-nav.component.d.ts +13 -7
- package/lib/navigation/models/navigation.d.ts +2 -0
- package/package.json +1 -1
|
@@ -22,10 +22,12 @@ mat-form-field.sof-form-field {
|
|
|
22
22
|
|
|
23
23
|
.mat-mdc-floating-label {
|
|
24
24
|
color: mat.get-color-from-palette(theme.$arm-error, 500) !important;
|
|
25
|
+
font-family: "Poppins" !important;
|
|
25
26
|
}
|
|
26
27
|
|
|
27
28
|
&.mat-focused .mdc-floating-label {
|
|
28
29
|
color: mat.get-color-from-palette(theme.$arm-error, 500) !important;
|
|
30
|
+
font-family: "Poppins" !important;
|
|
29
31
|
}
|
|
30
32
|
}
|
|
31
33
|
|
|
@@ -103,8 +105,13 @@ mat-form-field.sof-form-field {
|
|
|
103
105
|
line-height: 18px !important;
|
|
104
106
|
}
|
|
105
107
|
|
|
108
|
+
.mat-mdc-floating-label {
|
|
109
|
+
font-family: "Poppins" !important;
|
|
110
|
+
}
|
|
111
|
+
|
|
106
112
|
&.mat-focused .mdc-floating-label {
|
|
107
113
|
color: mat.get-color-from-palette(theme.$arm-primary, 500) !important;
|
|
114
|
+
font-family: "Poppins" !important;
|
|
108
115
|
}
|
|
109
116
|
|
|
110
117
|
.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,
|
package/esm2022/lib/mfe/components/entity-inject-wrapper/entity-inject-wrapper.component.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, EventEmitter, Output } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { MatButtonModule } from '@angular/material/button';
|
|
3
3
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
4
4
|
import { FlexLayoutModule } from '@ngbracket/ngx-layout';
|
|
@@ -15,17 +15,55 @@ export class EntityInjectWrapperComponent {
|
|
|
15
15
|
this.expandClicked = new EventEmitter();
|
|
16
16
|
/** The close clicked event emitter */
|
|
17
17
|
this.closeClicked = new EventEmitter();
|
|
18
|
+
/** The default size of the component on open */
|
|
19
|
+
this.defaultSize = 'split';
|
|
20
|
+
/** True when the entity view is expanded */
|
|
21
|
+
this.isExpanded = false;
|
|
22
|
+
/** The active entity storage key */
|
|
23
|
+
this.activeEntityStorageKey = 'selected-active-entity';
|
|
24
|
+
}
|
|
25
|
+
/** Life cycle hook for component initialization */
|
|
26
|
+
ngOnInit() {
|
|
27
|
+
if (this.defaultSize === 'full') {
|
|
28
|
+
this.openEntityView();
|
|
29
|
+
}
|
|
30
|
+
this.activeEntityId = window.sessionStorage.getItem(this.activeEntityStorageKey);
|
|
18
31
|
}
|
|
19
32
|
/** Opens the entity view to full screen */
|
|
20
33
|
openEntityView() {
|
|
21
|
-
this.
|
|
34
|
+
if (this.isExpanded) {
|
|
35
|
+
document.dispatchEvent(new CustomEvent('collapse-entity-view', {
|
|
36
|
+
detail: {
|
|
37
|
+
guid: this.activeEntityId
|
|
38
|
+
}
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
document.dispatchEvent(new CustomEvent('expand-entity-view', {
|
|
43
|
+
detail: {
|
|
44
|
+
guid: this.activeEntityId
|
|
45
|
+
}
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
this.isExpanded = !this.isExpanded;
|
|
49
|
+
this.expandClicked.emit(this.isExpanded);
|
|
22
50
|
}
|
|
23
51
|
/** Closes the entity view */
|
|
24
52
|
returnToQueueView() {
|
|
53
|
+
document.dispatchEvent(new CustomEvent('collapse-entity-view', {
|
|
54
|
+
detail: {
|
|
55
|
+
guid: this.activeEntityId
|
|
56
|
+
}
|
|
57
|
+
}));
|
|
58
|
+
document.dispatchEvent(new CustomEvent('close-entity-view', {
|
|
59
|
+
detail: {
|
|
60
|
+
guid: this.activeEntityId
|
|
61
|
+
}
|
|
62
|
+
}));
|
|
25
63
|
this.closeClicked.emit();
|
|
26
64
|
}
|
|
27
65
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: EntityInjectWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: EntityInjectWrapperComponent, isStandalone: true, selector: "lib-entity-inject-wrapper", outputs: { expandClicked: "expandClicked", closeClicked: "closeClicked" }, ngImport: i0, template: "<div fxLayout=\"column\" class=\"top-container\">\r\n <div fxFlex=\"row\" fxLayoutAlign=\"end center\" class=\"button-container\">\r\n <button id=\"expandBtn\" (click)=\"openEntityView()\" mat-flat-button class=\"icon-button sof-button-v2\"\r\n matTooltip=\"{{'entity.common.expand' | translate}}\" theme=\"primary\" emphasis=\"floating\">\r\n <i class=\"ph ph-arrows-out-simple\"></i>\r\n </button>\r\n \r\n <!-- Close -->\r\n <button id=\"closeBtn\" [disabled]=\"false\" (click)=\"returnToQueueView()\" mat-flat-button\r\n matTooltip=\"{{'entity.common.close' | translate}}\" class=\"icon-button sof-button-v2\" theme=\"primary\"\r\n emphasis=\"floating\">\r\n <i class=\"ph ph-x\"></i>\r\n </button>\r\n </div>\r\n\r\n <div fxFlex=\"column\" class=\"content-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: [".content-container{padding:12px}.top-container{width:100%}.button-container{padding-top:12px}\n"], dependencies: [{ kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FlexLayoutModule }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }] }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: EntityInjectWrapperComponent, isStandalone: true, selector: "lib-entity-inject-wrapper", inputs: { defaultSize: "defaultSize" }, outputs: { expandClicked: "expandClicked", closeClicked: "closeClicked" }, ngImport: i0, template: "<div fxLayout=\"column\" class=\"top-container\">\r\n <div fxFlex=\"row\" fxLayoutAlign=\"end center\" class=\"button-container\">\r\n <button id=\"expandBtn\" (click)=\"openEntityView()\" mat-flat-button class=\"icon-button sof-button-v2\"\r\n matTooltip=\"{{'entity.common.expand' | translate}}\" theme=\"primary\" emphasis=\"floating\">\r\n <i class=\"ph ph-arrows-out-simple\"></i>\r\n </button>\r\n \r\n <!-- Close -->\r\n <button id=\"closeBtn\" [disabled]=\"false\" (click)=\"returnToQueueView()\" mat-flat-button\r\n matTooltip=\"{{'entity.common.close' | translate}}\" class=\"icon-button sof-button-v2\" theme=\"primary\"\r\n emphasis=\"floating\">\r\n <i class=\"ph ph-x\"></i>\r\n </button>\r\n </div>\r\n\r\n <div fxFlex=\"column\" class=\"content-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: [".content-container{padding:12px}.top-container{width:100%}.button-container{padding-top:12px}\n"], dependencies: [{ kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FlexLayoutModule }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }] }); }
|
|
29
67
|
}
|
|
30
68
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: EntityInjectWrapperComponent, decorators: [{
|
|
31
69
|
type: Component,
|
|
@@ -39,5 +77,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
|
39
77
|
type: Output
|
|
40
78
|
}], closeClicked: [{
|
|
41
79
|
type: Output
|
|
80
|
+
}], defaultSize: [{
|
|
81
|
+
type: Input
|
|
42
82
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWluamVjdC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvbWZlL2NvbXBvbmVudHMvZW50aXR5LWluamVjdC13cmFwcGVyL2VudGl0eS1pbmplY3Qtd3JhcHBlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcm1hdHVyZS9zcmMvbGliL21mZS9jb21wb25lbnRzL2VudGl0eS1pbmplY3Qtd3JhcHBlci9lbnRpdHktaW5qZWN0LXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7QUFFdEQsNEJBQTRCO0FBYTVCLE1BQU0sT0FBTyw0QkFBNEI7SUFaekM7UUFhRSx1Q0FBdUM7UUFDdEIsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV2RSxzQ0FBc0M7UUFDckIsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV0RSxnREFBZ0Q7UUFDaEMsZ0JBQVcsR0FBcUIsT0FBTyxDQUFDO1FBRXhELDRDQUE0QztRQUNyQyxlQUFVLEdBQVksS0FBSyxDQUFDO1FBRW5DLG9DQUFvQztRQUNuQiwyQkFBc0IsR0FBVyx3QkFBd0IsQ0FBQztLQStDNUU7SUExQ0MsbURBQW1EO0lBQzVDLFFBQVE7UUFDYixJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssTUFBTSxFQUFFO1lBQy9CLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN2QjtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELDJDQUEyQztJQUNwQyxjQUFjO1FBQ25CLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksV0FBVyxDQUFDLHNCQUFzQixFQUFFO2dCQUM3RCxNQUFNLEVBQUU7b0JBQ04sSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjO2lCQUMxQjthQUNGLENBQUMsQ0FBQyxDQUFDO1NBQ0w7YUFDSTtZQUNILFFBQVEsQ0FBQyxhQUFhLENBQUMsSUFBSSxXQUFXLENBQUMsb0JBQW9CLEVBQUU7Z0JBQzNELE1BQU0sRUFBRTtvQkFDTixJQUFJLEVBQUUsSUFBSSxDQUFDLGNBQWM7aUJBQzFCO2FBQ0YsQ0FBQyxDQUFDLENBQUM7U0FDTDtRQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsNkJBQTZCO0lBQ3RCLGlCQUFpQjtRQUN0QixRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksV0FBVyxDQUFDLHNCQUFzQixFQUFFO1lBQzdELE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsSUFBSSxDQUFDLGNBQWM7YUFDMUI7U0FDRixDQUFDLENBQUMsQ0FBQztRQUNKLFFBQVEsQ0FBQyxhQUFhLENBQUMsSUFBSSxXQUFXLENBQUMsbUJBQW1CLEVBQUU7WUFDMUQsTUFBTSxFQUFFO2dCQUNOLElBQUksRUFBRSxJQUFJLENBQUMsY0FBYzthQUMxQjtTQUNGLENBQUMsQ0FBQyxDQUFDO1FBQ0osSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQTVEVSw0QkFBNEI7a0dBQTVCLDRCQUE0Qix3TUNuQnpDLDg2QkFrQk0sd0pEUEYsZ0JBQWdCLDRUQUNoQixlQUFlLDJOQUNmLGVBQWUsMkZBQ2YsZ0JBQWdCOzsyRkFLUCw0QkFBNEI7a0JBWnhDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUDt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixnQkFBZ0I7cUJBQ2pCOzhCQU1nQixhQUFhO3NCQUE3QixNQUFNO2dCQUdVLFlBQVk7c0JBQTVCLE1BQU07Z0JBR1MsV0FBVztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQG5nYnJhY2tldC9uZ3gtbGF5b3V0JztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG4vKiogRW50aXR5IGluamVjdCB3cmFwcGVyICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWVudGl0eS1pbmplY3Qtd3JhcHBlcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgRmxleExheW91dE1vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VudGl0eS1pbmplY3Qtd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2VudGl0eS1pbmplY3Qtd3JhcHBlci5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEVudGl0eUluamVjdFdyYXBwZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8qKiBUaGUgZXhwYW5kIGNsaWNrZWQgZXZlbnQgZW1pdHRlciAqL1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgZXhwYW5kQ2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKiBUaGUgY2xvc2UgY2xpY2tlZCBldmVudCBlbWl0dGVyICovXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjbG9zZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKiogVGhlIGRlZmF1bHQgc2l6ZSBvZiB0aGUgY29tcG9uZW50IG9uIG9wZW4gKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZGVmYXVsdFNpemU6ICdzcGxpdCcgfCAnZnVsbCcgPSAnc3BsaXQnO1xyXG5cclxuICAvKiogVHJ1ZSB3aGVuIHRoZSBlbnRpdHkgdmlldyBpcyBleHBhbmRlZCAqL1xyXG4gIHB1YmxpYyBpc0V4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgXHJcbiAgLyoqIFRoZSBhY3RpdmUgZW50aXR5IHN0b3JhZ2Uga2V5ICovXHJcbiAgcHJpdmF0ZSByZWFkb25seSBhY3RpdmVFbnRpdHlTdG9yYWdlS2V5OiBzdHJpbmcgPSAnc2VsZWN0ZWQtYWN0aXZlLWVudGl0eSc7XHJcblxyXG4gIC8qKiBUaGUgYWN0aXZlIGVudGl0eSBpZCAqL1xyXG4gIHByaXZhdGUgYWN0aXZlRW50aXR5SWQ6IHN0cmluZztcclxuXHJcbiAgLyoqIExpZmUgY3ljbGUgaG9vayBmb3IgY29tcG9uZW50IGluaXRpYWxpemF0aW9uICovXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGVmYXVsdFNpemUgPT09ICdmdWxsJykge1xyXG4gICAgICB0aGlzLm9wZW5FbnRpdHlWaWV3KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmFjdGl2ZUVudGl0eUlkID0gd2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0odGhpcy5hY3RpdmVFbnRpdHlTdG9yYWdlS2V5KTtcclxuICB9XHJcblxyXG4gIC8qKiBPcGVucyB0aGUgZW50aXR5IHZpZXcgdG8gZnVsbCBzY3JlZW4gKi9cclxuICBwdWJsaWMgb3BlbkVudGl0eVZpZXcoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc0V4cGFuZGVkKSB7XHJcbiAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdjb2xsYXBzZS1lbnRpdHktdmlldycsIHtcclxuICAgICAgICBkZXRhaWw6IHtcclxuICAgICAgICAgIGd1aWQ6IHRoaXMuYWN0aXZlRW50aXR5SWRcclxuICAgICAgICB9XHJcbiAgICAgIH0pKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnZXhwYW5kLWVudGl0eS12aWV3Jywge1xyXG4gICAgICAgIGRldGFpbDoge1xyXG4gICAgICAgICAgZ3VpZDogdGhpcy5hY3RpdmVFbnRpdHlJZFxyXG4gICAgICAgIH1cclxuICAgICAgfSkpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNFeHBhbmRlZDtcclxuICAgIHRoaXMuZXhwYW5kQ2xpY2tlZC5lbWl0KHRoaXMuaXNFeHBhbmRlZCk7XHJcbiAgfVxyXG5cclxuICAvKiogQ2xvc2VzIHRoZSBlbnRpdHkgdmlldyAqL1xyXG4gIHB1YmxpYyByZXR1cm5Ub1F1ZXVlVmlldygpOiB2b2lkIHtcclxuICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdjb2xsYXBzZS1lbnRpdHktdmlldycsIHtcclxuICAgICAgZGV0YWlsOiB7XHJcbiAgICAgICAgZ3VpZDogdGhpcy5hY3RpdmVFbnRpdHlJZFxyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnY2xvc2UtZW50aXR5LXZpZXcnLCB7XHJcbiAgICAgIGRldGFpbDoge1xyXG4gICAgICAgIGd1aWQ6IHRoaXMuYWN0aXZlRW50aXR5SWRcclxuICAgICAgfVxyXG4gICAgfSkpO1xyXG4gICAgdGhpcy5jbG9zZUNsaWNrZWQuZW1pdCgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJ0b3AtY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGZ4RmxleD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJlbmQgY2VudGVyXCIgY2xhc3M9XCJidXR0b24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBpZD1cImV4cGFuZEJ0blwiIChjbGljayk9XCJvcGVuRW50aXR5VmlldygpXCIgbWF0LWZsYXQtYnV0dG9uIGNsYXNzPVwiaWNvbi1idXR0b24gc29mLWJ1dHRvbi12MlwiXHJcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eydlbnRpdHkuY29tbW9uLmV4cGFuZCcgfCB0cmFuc2xhdGV9fVwiIHRoZW1lPVwicHJpbWFyeVwiIGVtcGhhc2lzPVwiZmxvYXRpbmdcIj5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJwaCBwaC1hcnJvd3Mtb3V0LXNpbXBsZVwiPjwvaT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICBcclxuICAgICAgICA8IS0tIENsb3NlIC0tPlxyXG4gICAgICAgIDxidXR0b24gaWQ9XCJjbG9zZUJ0blwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIChjbGljayk9XCJyZXR1cm5Ub1F1ZXVlVmlldygpXCIgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eydlbnRpdHkuY29tbW9uLmNsb3NlJyB8IHRyYW5zbGF0ZX19XCIgY2xhc3M9XCJpY29uLWJ1dHRvbiBzb2YtYnV0dG9uLXYyXCIgdGhlbWU9XCJwcmltYXJ5XCJcclxuICAgICAgICAgICAgZW1waGFzaXM9XCJmbG9hdGluZ1wiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cInBoIHBoLXhcIj48L2k+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGZ4RmxleD1cImNvbHVtblwiIGNsYXNzPVwiY29udGVudC1jb250YWluZXJcIj5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|