@bravura/ui 2.2.0 → 2.3.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/CHANGELOG.md +17 -0
- package/esm2020/panel/panel-section.component.mjs +41 -0
- package/esm2020/panel/panel.component.mjs +23 -5
- package/esm2020/panel/panel.module.mjs +9 -7
- package/esm2020/radio-panel/radio-panel.component.mjs +2 -2
- package/esm2020/stepper/stepper.component.mjs +3 -3
- package/fesm2015/bravura-ui-panel.mjs +68 -10
- package/fesm2015/bravura-ui-panel.mjs.map +1 -1
- package/fesm2015/bravura-ui-radio-panel.mjs +2 -2
- package/fesm2015/bravura-ui-radio-panel.mjs.map +1 -1
- package/fesm2015/bravura-ui-stepper.mjs +2 -2
- package/fesm2015/bravura-ui-stepper.mjs.map +1 -1
- package/fesm2020/bravura-ui-panel.mjs +68 -10
- package/fesm2020/bravura-ui-panel.mjs.map +1 -1
- package/fesm2020/bravura-ui-radio-panel.mjs +2 -2
- package/fesm2020/bravura-ui-radio-panel.mjs.map +1 -1
- package/fesm2020/bravura-ui-stepper.mjs +2 -2
- package/fesm2020/bravura-ui-stepper.mjs.map +1 -1
- package/package.json +1 -1
- package/panel/panel-section.component.d.ts +15 -0
- package/panel/panel.component.d.ts +12 -2
- package/panel/panel.module.d.ts +7 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Change history
|
|
2
2
|
|
|
3
|
+
## <small>2.3.2 (2022-09-07)</small>
|
|
4
|
+
|
|
5
|
+
* fix: respect attribute hidden on host elements ([6a3ce74](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/6a3ce74))
|
|
6
|
+
* fix(panel): calculate flex basis on panel sections ([04bff7d](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/04bff7d))
|
|
7
|
+
* build(storybook): fix compilation issues ([0b70e03](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/0b70e03))
|
|
8
|
+
|
|
9
|
+
## <small>2.3.1 (2022-09-07)</small>
|
|
10
|
+
|
|
11
|
+
* docs(storybook): improve tooltip stories ([5ce4344](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/5ce4344))
|
|
12
|
+
* fix(panel): fix issue with incorrect style classes when resized ([f521ae9](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/f521ae9))
|
|
13
|
+
* refactor: fix import syntax ([45ac8af](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/45ac8af))
|
|
14
|
+
|
|
15
|
+
## 2.3.0 (2022-09-02)
|
|
16
|
+
|
|
17
|
+
* build(storybook): monitor on remote host ([b95618e](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/b95618e))
|
|
18
|
+
* feat(panel): add panel sections ([922e071](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/922e071))
|
|
19
|
+
|
|
3
20
|
## 2.2.0 (2022-09-01)
|
|
4
21
|
|
|
5
22
|
* feat(file-upload): limit file size ([d9c8a1c](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/d9c8a1c))
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const CONTAINER_PREFIX = 'bui-panel-section-container';
|
|
4
|
+
const COUNT_ATTR = 'bui-section-count';
|
|
5
|
+
/**
|
|
6
|
+
* `bui-panel-section`s are subdivisions of `bui-panel` that rearrange their orientation based on the width of the container element.
|
|
7
|
+
*/
|
|
8
|
+
export class PanelSectionComponent {
|
|
9
|
+
constructor(_elementRef) {
|
|
10
|
+
this._elementRef = _elementRef;
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
this._parentElement = this._elementRef.nativeElement.parentElement;
|
|
14
|
+
this._parentElement.classList.add(CONTAINER_PREFIX);
|
|
15
|
+
this._calcCount(1);
|
|
16
|
+
}
|
|
17
|
+
ngOnDestroy() {
|
|
18
|
+
this._calcCount(-1);
|
|
19
|
+
}
|
|
20
|
+
_calcCount(delta) {
|
|
21
|
+
let count = this._parentElement.getAttribute(COUNT_ATTR);
|
|
22
|
+
if (count) {
|
|
23
|
+
this._parentElement.classList.remove(`${CONTAINER_PREFIX}-${count}`);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
count = '0';
|
|
27
|
+
}
|
|
28
|
+
count = `${Math.max(Number(count) + delta, 0)}`;
|
|
29
|
+
this._parentElement.setAttribute(COUNT_ATTR, count);
|
|
30
|
+
this._parentElement.classList.add(`${CONTAINER_PREFIX}-${count}`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
PanelSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelSectionComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
PanelSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PanelSectionComponent, selector: "bui-panel-section", host: { classAttribute: "bui-panel-section" }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{flex-grow:1}:host-context(.bui-panel-horizontal) :host:not(:first-child){border-inline-start:1px solid rgba(128,128,128,.2);padding-inline-start:16px}:host-context(.bui-panel-horizontal) :host:not(:last-child){padding-inline-end:16px}:host-context(.bui-panel-vertical) :host:not(:first-child){border-top:1px solid rgba(128,128,128,.2);padding-top:16px}:host-context(.bui-panel-vertical) :host:not(:last-child){padding-bottom:16px}:host-context(.bui-panel-horizontal .bui-panel-section-container-2){flex-basis:50%}:host-context(.bui-panel-horizontal .bui-panel-section-container-3){flex-basis:33.3333333333%}:host-context(.bui-panel-horizontal .bui-panel-section-container-4){flex-basis:25%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelSectionComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ selector: 'bui-panel-section', host: {
|
|
38
|
+
class: 'bui-panel-section'
|
|
39
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{flex-grow:1}:host-context(.bui-panel-horizontal) :host:not(:first-child){border-inline-start:1px solid rgba(128,128,128,.2);padding-inline-start:16px}:host-context(.bui-panel-horizontal) :host:not(:last-child){padding-inline-end:16px}:host-context(.bui-panel-vertical) :host:not(:first-child){border-top:1px solid rgba(128,128,128,.2);padding-top:16px}:host-context(.bui-panel-vertical) :host:not(:last-child){padding-bottom:16px}:host-context(.bui-panel-horizontal .bui-panel-section-container-2){flex-basis:50%}:host-context(.bui-panel-horizontal .bui-panel-section-container-3){flex-basis:33.3333333333%}:host-context(.bui-panel-horizontal .bui-panel-section-container-4){flex-basis:25%}\n"] }]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9wYW5lbC9wYW5lbC1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3BhbmVsL3BhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBaUMsTUFBTSxlQUFlLENBQUM7O0FBRWxHLE1BQU0sZ0JBQWdCLEdBQUcsNkJBQTZCLENBQUM7QUFFdkQsTUFBTSxVQUFVLEdBQUcsbUJBQW1CLENBQUM7QUFDdkM7O0dBRUc7QUFVSCxNQUFNLE9BQU8scUJBQXFCO0lBR2pDLFlBQW9CLFdBQW9DO1FBQXBDLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtJQUFHLENBQUM7SUFFNUQsUUFBUTtRQUNQLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsYUFBYyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELFdBQVc7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVPLFVBQVUsQ0FBQyxLQUFhO1FBQy9CLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pELElBQUksS0FBSyxFQUFFO1lBQ1YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsZ0JBQWdCLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztTQUNyRTthQUFNO1lBQ04sS0FBSyxHQUFHLEdBQUcsQ0FBQztTQUNaO1FBQ0QsS0FBSyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDaEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLGdCQUFnQixJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQzs7a0hBekJXLHFCQUFxQjtzR0FBckIscUJBQXFCLHdHQ2pCbEMsNkJBQ0E7MkZEZ0JhLHFCQUFxQjtrQkFUakMsU0FBUzsrQkFDQyxtQkFBbUIsUUFHdkI7d0JBQ0wsS0FBSyxFQUFFLG1CQUFtQjtxQkFDMUIsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5jb25zdCBDT05UQUlORVJfUFJFRklYID0gJ2J1aS1wYW5lbC1zZWN0aW9uLWNvbnRhaW5lcic7XG5cbmNvbnN0IENPVU5UX0FUVFIgPSAnYnVpLXNlY3Rpb24tY291bnQnO1xuLyoqXG4gKiBgYnVpLXBhbmVsLXNlY3Rpb25gcyBhcmUgc3ViZGl2aXNpb25zIG9mIGBidWktcGFuZWxgIHRoYXQgcmVhcnJhbmdlIHRoZWlyIG9yaWVudGF0aW9uIGJhc2VkIG9uIHRoZSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGVsZW1lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2J1aS1wYW5lbC1zZWN0aW9uJyxcblx0dGVtcGxhdGVVcmw6ICcuL3BhbmVsLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9wYW5lbC1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG5cdGhvc3Q6IHtcblx0XHRjbGFzczogJ2J1aS1wYW5lbC1zZWN0aW9uJ1xuXHR9LFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQYW5lbFNlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cdHByaXZhdGUgX3BhcmVudEVsZW1lbnQhOiBIVE1MRWxlbWVudDtcblxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLl9wYXJlbnRFbGVtZW50ID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQhO1xuXHRcdHRoaXMuX3BhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChDT05UQUlORVJfUFJFRklYKTtcblx0XHR0aGlzLl9jYWxjQ291bnQoMSk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcblx0XHR0aGlzLl9jYWxjQ291bnQoLTEpO1xuXHR9XG5cblx0cHJpdmF0ZSBfY2FsY0NvdW50KGRlbHRhOiBudW1iZXIpIHtcblx0XHRsZXQgY291bnQgPSB0aGlzLl9wYXJlbnRFbGVtZW50LmdldEF0dHJpYnV0ZShDT1VOVF9BVFRSKTtcblx0XHRpZiAoY291bnQpIHtcblx0XHRcdHRoaXMuX3BhcmVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShgJHtDT05UQUlORVJfUFJFRklYfS0ke2NvdW50fWApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRjb3VudCA9ICcwJztcblx0XHR9XG5cdFx0Y291bnQgPSBgJHtNYXRoLm1heChOdW1iZXIoY291bnQpICsgZGVsdGEsIDApfWA7XG5cdFx0dGhpcy5fcGFyZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoQ09VTlRfQVRUUiwgY291bnQpO1xuXHRcdHRoaXMuX3BhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChgJHtDT05UQUlORVJfUFJFRklYfS0ke2NvdW50fWApO1xuXHR9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@angular/material/card";
|
|
4
|
+
import * as i2 from "@bravura/ui/behavior";
|
|
4
5
|
/**
|
|
5
6
|
* A `bui-panel` consists of a `mat-card` and a tinted backdrop.
|
|
6
7
|
*
|
|
@@ -8,12 +9,20 @@ import * as i1 from "@angular/material/card";
|
|
|
8
9
|
* The backdrop is nearly transparent, blending the theme palette `color`
|
|
9
10
|
* and the effective background color of the DOM ancestors.
|
|
10
11
|
*
|
|
11
|
-
* `bui-panel` supports all the content child directives of `mat-card`.
|
|
12
|
+
* `bui-panel` supports all the content child directives of `mat-card` as well as `bui-panel-section`.
|
|
13
|
+
*
|
|
14
|
+
* `bui-panel-section`s are subdivisions of `bui-panel` that rearrange their orientation based on the width of the container element.
|
|
12
15
|
*
|
|
13
16
|
*/
|
|
14
17
|
export class PanelComponent {
|
|
15
18
|
constructor(_cd) {
|
|
16
19
|
this._cd = _cd;
|
|
20
|
+
/**
|
|
21
|
+
* The width of the host element, at which the panel section container will change its orientation.
|
|
22
|
+
*/
|
|
23
|
+
this.breakpoint = 600;
|
|
24
|
+
/** @ignore */
|
|
25
|
+
this._width = 600;
|
|
17
26
|
this._color = 'primary';
|
|
18
27
|
this._appearance = 'flat';
|
|
19
28
|
}
|
|
@@ -44,14 +53,21 @@ export class PanelComponent {
|
|
|
44
53
|
this._cd.markForCheck();
|
|
45
54
|
}
|
|
46
55
|
ngOnInit() { }
|
|
56
|
+
/** @ignore */
|
|
57
|
+
_resized(width) {
|
|
58
|
+
this._width = width;
|
|
59
|
+
this._cd.markForCheck();
|
|
60
|
+
}
|
|
47
61
|
}
|
|
48
62
|
PanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
-
PanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PanelComponent, selector: "bui-panel", inputs: { backdropClass: "backdropClass", cardClass: "cardClass", color: "color", appearance: "appearance" }, host: { classAttribute: "bui-panel bui-host" }, ngImport: i0, template: "<div
|
|
63
|
+
PanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PanelComponent, selector: "bui-panel", inputs: { backdropClass: "backdropClass", cardClass: "cardClass", color: "color", appearance: "appearance", breakpoint: "breakpoint" }, host: { properties: { "class.bui-panel-vertical": "_width < breakpoint", "class.bui-panel-horizontal": "_width >= breakpoint" }, classAttribute: "bui-panel bui-host" }, ngImport: i0, template: "<div\n\tclass=\"bui-panel-backdrop {{ backdropClass }} bui-bg-{{ color || 'none' }}\"\n\t[buiSizingBy]=\"'parent'\"\n\t(buiResized)=\"_resized($event.width)\"\n></div>\n<mat-card\n\tclass=\"bui-border-{{ color || 'none' }} {{ cardClass }} {{\n\t\tappearance === 'flat' ? 'mat-elevation-z' : appearance === 'outlined' ? 'mat-elevation-z bui-panel-border' : ''\n\t}}\"\n>\n\t<ng-content></ng-content>\n</mat-card>\n", styles: [":host{position:relative}:host .bui-panel-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:4px;opacity:.1}:host .bui-panel-border{border-width:1px;border-style:solid}:host ::ng-deep .bui-panel-section-container{display:flex;box-sizing:border-box!important}:host(:not([hidden])){display:block}:host(:not([hidden])) .mat-card{background-color:transparent}:host(.bui-panel-horizontal) ::ng-deep .bui-panel-section-container{flex-direction:row}:host(.bui-panel-vertical) ::ng-deep .bui-panel-section-container{flex-direction:column}\n"], dependencies: [{ kind: "component", type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i2.SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: ["buiSizing", "sizingBy", "buiSizingBy", "buiFixedHeight"], outputs: ["buiResized"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
50
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelComponent, decorators: [{
|
|
51
65
|
type: Component,
|
|
52
66
|
args: [{ selector: 'bui-panel', host: {
|
|
53
|
-
class: 'bui-panel bui-host'
|
|
54
|
-
|
|
67
|
+
class: 'bui-panel bui-host',
|
|
68
|
+
'[class.bui-panel-vertical]': `_width < breakpoint`,
|
|
69
|
+
'[class.bui-panel-horizontal]': `_width >= breakpoint`
|
|
70
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n\tclass=\"bui-panel-backdrop {{ backdropClass }} bui-bg-{{ color || 'none' }}\"\n\t[buiSizingBy]=\"'parent'\"\n\t(buiResized)=\"_resized($event.width)\"\n></div>\n<mat-card\n\tclass=\"bui-border-{{ color || 'none' }} {{ cardClass }} {{\n\t\tappearance === 'flat' ? 'mat-elevation-z' : appearance === 'outlined' ? 'mat-elevation-z bui-panel-border' : ''\n\t}}\"\n>\n\t<ng-content></ng-content>\n</mat-card>\n", styles: [":host{position:relative}:host .bui-panel-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:4px;opacity:.1}:host .bui-panel-border{border-width:1px;border-style:solid}:host ::ng-deep .bui-panel-section-container{display:flex;box-sizing:border-box!important}:host(:not([hidden])){display:block}:host(:not([hidden])) .mat-card{background-color:transparent}:host(.bui-panel-horizontal) ::ng-deep .bui-panel-section-container{flex-direction:row}:host(.bui-panel-vertical) ::ng-deep .bui-panel-section-container{flex-direction:column}\n"] }]
|
|
55
71
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { backdropClass: [{
|
|
56
72
|
type: Input
|
|
57
73
|
}], cardClass: [{
|
|
@@ -60,5 +76,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
60
76
|
type: Input
|
|
61
77
|
}], appearance: [{
|
|
62
78
|
type: Input
|
|
79
|
+
}], breakpoint: [{
|
|
80
|
+
type: Input
|
|
63
81
|
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvcGFuZWwvcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvcGFuZWwvcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBR3JHOzs7Ozs7Ozs7OztHQVdHO0FBWUgsTUFBTSxPQUFPLGNBQWM7SUF3RDFCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBYjFDOztXQUVHO1FBRUgsZUFBVSxHQUFHLEdBQUcsQ0FBQztRQUVqQixjQUFjO1FBQ2QsV0FBTSxHQUFHLEdBQUcsQ0FBQztRQUVMLFdBQU0sR0FBaUIsU0FBUyxDQUFDO1FBRWpDLGdCQUFXLEdBQW1DLE1BQU0sQ0FBQztJQUVoQixDQUFDO0lBM0M5Qzs7T0FFRztJQUNILElBQ0ksS0FBSztRQUNSLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBbUI7UUFDNUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxJQUNJLFVBQVU7UUFDYixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQXFDO1FBQ25ELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQWlCRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixjQUFjO0lBQ2QsUUFBUSxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QixDQUFDOzsyR0FoRVcsY0FBYzsrRkFBZCxjQUFjLGtXQzFCM0IsK1pBWUE7MkZEY2EsY0FBYztrQkFYMUIsU0FBUzsrQkFDQyxXQUFXLFFBR2Y7d0JBQ0wsS0FBSyxFQUFFLG9CQUFvQjt3QkFDM0IsNEJBQTRCLEVBQUUscUJBQXFCO3dCQUNuRCw4QkFBOEIsRUFBRSxzQkFBc0I7cUJBQ3RELG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNO3dHQU8vQyxhQUFhO3NCQURaLEtBQUs7Z0JBT04sU0FBUztzQkFEUixLQUFLO2dCQU9GLEtBQUs7c0JBRFIsS0FBSztnQkFtQkYsVUFBVTtzQkFEYixLQUFLO2dCQWFOLFVBQVU7c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuLyoqXG4gKiBBIGBidWktcGFuZWxgIGNvbnNpc3RzIG9mIGEgYG1hdC1jYXJkYCBhbmQgYSB0aW50ZWQgYmFja2Ryb3AuXG4gKlxuICogVW5saWtlIGBtYXQtY2FyZGAsIGBidWktcGFuZWxgIGhhcyBhIGZsYXQgYXBwZWFyYW5jZSBieSBkZWZhdWx0IGFuZCBhIHRyYW5zcGFyZW50IGJhY2tncm91bmQuXG4gKiBUaGUgYmFja2Ryb3AgaXMgbmVhcmx5IHRyYW5zcGFyZW50LCBibGVuZGluZyB0aGUgdGhlbWUgcGFsZXR0ZSBgY29sb3JgXG4gKiBhbmQgdGhlIGVmZmVjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBET00gYW5jZXN0b3JzLlxuICpcbiAqIGBidWktcGFuZWxgIHN1cHBvcnRzIGFsbCB0aGUgY29udGVudCBjaGlsZCBkaXJlY3RpdmVzIG9mIGBtYXQtY2FyZGAgYXMgd2VsbCBhcyBgYnVpLXBhbmVsLXNlY3Rpb25gLlxuICpcbiAqIGBidWktcGFuZWwtc2VjdGlvbmBzIGFyZSBzdWJkaXZpc2lvbnMgb2YgYGJ1aS1wYW5lbGAgdGhhdCByZWFycmFuZ2UgdGhlaXIgb3JpZW50YXRpb24gYmFzZWQgb24gdGhlIHdpZHRoIG9mIHRoZSBjb250YWluZXIgZWxlbWVudC5cbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2J1aS1wYW5lbCcsXG5cdHRlbXBsYXRlVXJsOiAnLi9wYW5lbC5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL3BhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG5cdGhvc3Q6IHtcblx0XHRjbGFzczogJ2J1aS1wYW5lbCBidWktaG9zdCcsXG5cdFx0J1tjbGFzcy5idWktcGFuZWwtdmVydGljYWxdJzogYF93aWR0aCA8IGJyZWFrcG9pbnRgLFxuXHRcdCdbY2xhc3MuYnVpLXBhbmVsLWhvcml6b250YWxdJzogYF93aWR0aCA+PSBicmVha3BvaW50YFxuXHR9LFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cdC8qKlxuXHQgKiBBZGRpdGlvbmFsIHN0eWxlIGNsYXNzZXMgb24gdGhlIHRpbnRlZCBiYWNrZHJvcCBlbGVtZW50LlxuXHQgKi9cblx0QElucHV0KClcblx0YmFja2Ryb3BDbGFzcz86IHN0cmluZztcblxuXHQvKipcblx0ICogQWRkaXRpb25hbCBzdHlsZSBjbGFzc2VzIG9uIHRoZSBgPG1hdC1jYXJkPmAgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpXG5cdGNhcmRDbGFzcz86IHN0cmluZztcblxuXHQvKipcblx0ICogVGhpcyBwcm9wZXJ0eSBkZWZpbmVzIHRoZSBiYWNrZ3JvdW5kIChzaGFkZWQpIGFuZCBib3JkZXIgY29sb3JzIG9mIHRoZSBwYW5lbFxuXHQgKi9cblx0QElucHV0KClcblx0Z2V0IGNvbG9yKCk6IFRoZW1lUGFsZXR0ZSB7XG5cdFx0cmV0dXJuIHRoaXMuX2NvbG9yO1xuXHR9XG5cdHNldCBjb2xvcih2YWx1ZTogVGhlbWVQYWxldHRlKSB7XG5cdFx0dGhpcy5fY29sb3IgPSB2YWx1ZTtcblx0XHR0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBJbiBjb250cmFzdCB0byB1c2luZyBhIGBtYXQtY2FyZGAgYWxvbmUsIGEgYGJ1aS1wYW5lbGAgZG9lcyBub3QgaGF2ZSBhIGVsZXZhdGVkIGFwcGVhcmFuY2UgYnkgZGVmYXVsdC5cblx0ICpcblx0ICogVGhpcyBwcm9wZXJ0eSBjYW4gY2hhbmdlIHRoZSBkZWZhdWx0IGFwcGVhcmFuY2UgdG9cblx0ICpcblx0ICogKiBgcmFpc2VkYCAtIHRoZSBvcmlnaW5hbCBgbWF0LWNhcmRgIGRlZmF1bHRcblx0ICogKiBgb3V0bGluZWAgLSBhIGBtYXQtY2FyZGAgd2l0aCBib3JkZXJzXG5cdCAqICogYGZsYXRgIC0gbm8gYm9yZGVyIG9yIGVsZXZhdGlvblxuXHQgKi9cblx0QElucHV0KClcblx0Z2V0IGFwcGVhcmFuY2UoKTogJ291dGxpbmVkJyB8ICdyYWlzZWQnIHwgJ2ZsYXQnIHtcblx0XHRyZXR1cm4gdGhpcy5fYXBwZWFyYW5jZTtcblx0fVxuXHRzZXQgYXBwZWFyYW5jZSh2YWx1ZTogJ291dGxpbmVkJyB8ICdyYWlzZWQnIHwgJ2ZsYXQnKSB7XG5cdFx0dGhpcy5fYXBwZWFyYW5jZSA9IHZhbHVlO1xuXHRcdHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoZSB3aWR0aCBvZiB0aGUgaG9zdCBlbGVtZW50LCBhdCB3aGljaCB0aGUgcGFuZWwgc2VjdGlvbiBjb250YWluZXIgd2lsbCBjaGFuZ2UgaXRzIG9yaWVudGF0aW9uLlxuXHQgKi9cblx0QElucHV0KClcblx0YnJlYWtwb2ludCA9IDYwMDtcblxuXHQvKiogQGlnbm9yZSAqL1xuXHRfd2lkdGggPSA2MDA7XG5cblx0cHJpdmF0ZSBfY29sb3I6IFRoZW1lUGFsZXR0ZSA9ICdwcmltYXJ5JztcblxuXHRwcml2YXRlIF9hcHBlYXJhbmNlOiAnb3V0bGluZWQnIHwgJ3JhaXNlZCcgfCAnZmxhdCcgPSAnZmxhdCc7XG5cblx0Y29uc3RydWN0b3IocHJpdmF0ZSBfY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG5cdG5nT25Jbml0KCk6IHZvaWQge31cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRfcmVzaXplZCh3aWR0aDogbnVtYmVyKTogdm9pZCB7XG5cdFx0dGhpcy5fd2lkdGggPSB3aWR0aDtcblx0XHR0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcblx0fVxufVxuIiwiPGRpdlxuXHRjbGFzcz1cImJ1aS1wYW5lbC1iYWNrZHJvcCB7eyBiYWNrZHJvcENsYXNzIH19IGJ1aS1iZy17eyBjb2xvciB8fCAnbm9uZScgfX1cIlxuXHRbYnVpU2l6aW5nQnldPVwiJ3BhcmVudCdcIlxuXHQoYnVpUmVzaXplZCk9XCJfcmVzaXplZCgkZXZlbnQud2lkdGgpXCJcbj48L2Rpdj5cbjxtYXQtY2FyZFxuXHRjbGFzcz1cImJ1aS1ib3JkZXIte3sgY29sb3IgfHwgJ25vbmUnIH19IHt7IGNhcmRDbGFzcyB9fSB7e1xuXHRcdGFwcGVhcmFuY2UgPT09ICdmbGF0JyA/ICdtYXQtZWxldmF0aW9uLXonIDogYXBwZWFyYW5jZSA9PT0gJ291dGxpbmVkJyA/ICdtYXQtZWxldmF0aW9uLXogYnVpLXBhbmVsLWJvcmRlcicgOiAnJ1xuXHR9fVwiXG4+XG5cdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbWF0LWNhcmQ+XG4iXX0=
|
|
@@ -2,19 +2,21 @@ import { NgModule } from '@angular/core';
|
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { PanelComponent } from './panel.component';
|
|
4
4
|
import { MatCardModule } from '@angular/material/card';
|
|
5
|
+
import { BehaviorModule } from '@bravura/ui/behavior';
|
|
6
|
+
import { PanelSectionComponent } from './panel-section.component';
|
|
5
7
|
import * as i0 from "@angular/core";
|
|
6
8
|
export class PanelModule {
|
|
7
9
|
}
|
|
8
10
|
PanelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
-
PanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, declarations: [PanelComponent], imports: [CommonModule, MatCardModule], exports: [MatCardModule, PanelComponent] });
|
|
10
|
-
PanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, imports: [CommonModule, MatCardModule, MatCardModule] });
|
|
11
|
+
PanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, declarations: [PanelComponent, PanelSectionComponent], imports: [CommonModule, MatCardModule, BehaviorModule], exports: [MatCardModule, PanelComponent, PanelSectionComponent] });
|
|
12
|
+
PanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, imports: [CommonModule, MatCardModule, BehaviorModule, MatCardModule] });
|
|
11
13
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, decorators: [{
|
|
12
14
|
type: NgModule,
|
|
13
15
|
args: [{
|
|
14
|
-
declarations: [PanelComponent],
|
|
15
|
-
imports: [CommonModule, MatCardModule],
|
|
16
|
-
exports: [MatCardModule, PanelComponent]
|
|
16
|
+
declarations: [PanelComponent, PanelSectionComponent],
|
|
17
|
+
imports: [CommonModule, MatCardModule, BehaviorModule],
|
|
18
|
+
exports: [MatCardModule, PanelComponent, PanelSectionComponent]
|
|
17
19
|
}]
|
|
18
20
|
}] });
|
|
19
|
-
export { PanelComponent };
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
export { PanelComponent, PanelSectionComponent };
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvcGFuZWwvcGFuZWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQU9sRSxNQUFNLE9BQU8sV0FBVzs7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLGlCQUpSLGNBQWMsRUFBRSxxQkFBcUIsYUFDMUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLGFBQzNDLGFBQWEsRUFBRSxjQUFjLEVBQUUscUJBQXFCO3lHQUVsRCxXQUFXLFlBSGIsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQzNDLGFBQWE7MkZBRVgsV0FBVztrQkFMdkIsUUFBUTttQkFBQztvQkFDVCxZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUM7b0JBQ3JELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsY0FBYyxDQUFDO29CQUN0RCxPQUFPLEVBQUUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixDQUFDO2lCQUMvRDs7QUFHRCxPQUFPLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHsgQmVoYXZpb3JNb2R1bGUgfSBmcm9tICdAYnJhdnVyYS91aS9iZWhhdmlvcic7XG5pbXBvcnQgeyBQYW5lbFNlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3BhbmVsLXNlY3Rpb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcblx0ZGVjbGFyYXRpb25zOiBbUGFuZWxDb21wb25lbnQsIFBhbmVsU2VjdGlvbkNvbXBvbmVudF0sXG5cdGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdENhcmRNb2R1bGUsIEJlaGF2aW9yTW9kdWxlXSxcblx0ZXhwb3J0czogW01hdENhcmRNb2R1bGUsIFBhbmVsQ29tcG9uZW50LCBQYW5lbFNlY3Rpb25Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFBhbmVsTW9kdWxlIHt9XG5cbmV4cG9ydCB7IFBhbmVsQ29tcG9uZW50LCBQYW5lbFNlY3Rpb25Db21wb25lbnQgfTtcbiJdfQ==
|
|
@@ -57,7 +57,7 @@ RadioPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
|
|
|
57
57
|
multi: true
|
|
58
58
|
},
|
|
59
59
|
{ provide: MAT_RADIO_GROUP, useExisting: forwardRef(() => RadioPanelComponent) }
|
|
60
|
-
], queries: [{ propertyName: "_radios", predicate: RadioPanelItemComponent, descendants: true }], exportAs: ["buiRadioPanel"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, styles: [":host{display:flex}:host.radio-dir-row{flex-direction:row;flex-wrap:wrap}:host.radio-dir-column{flex-direction:column}\n"] });
|
|
60
|
+
], queries: [{ propertyName: "_radios", predicate: RadioPanelItemComponent, descendants: true }], exportAs: ["buiRadioPanel"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true, styles: [":host:not([hidden]){display:flex}:host.radio-dir-row{flex-direction:row;flex-wrap:wrap}:host.radio-dir-column{flex-direction:column}\n"] });
|
|
61
61
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: RadioPanelComponent, decorators: [{
|
|
62
62
|
type: Component,
|
|
63
63
|
args: [{ selector: 'bui-radio-panel', exportAs: 'buiRadioPanel', providers: [
|
|
@@ -70,7 +70,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
70
70
|
], host: {
|
|
71
71
|
role: 'radiogroup',
|
|
72
72
|
class: 'bui-radio-panel bui-host'
|
|
73
|
-
}, template: ` <ng-content></ng-content> `, styles: [":host{display:flex}:host.radio-dir-row{flex-direction:row;flex-wrap:wrap}:host.radio-dir-column{flex-direction:column}\n"] }]
|
|
73
|
+
}, template: ` <ng-content></ng-content> `, styles: [":host:not([hidden]){display:flex}:host.radio-dir-row{flex-direction:row;flex-wrap:wrap}:host.radio-dir-column{flex-direction:column}\n"] }]
|
|
74
74
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { classAttr: [{
|
|
75
75
|
type: HostBinding,
|
|
76
76
|
args: ['attr.class']
|
|
@@ -111,7 +111,7 @@ StepperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
|
|
|
111
111
|
{ provide: MatStepper, useExisting: StepperComponent },
|
|
112
112
|
{ provide: CdkStepper, useExisting: StepperComponent },
|
|
113
113
|
{ provide: STEPPER_GLOBAL_OPTIONS, useValue: { displayDefaultIndicatorType: false } }
|
|
114
|
-
], queries: [{ propertyName: "_steps", predicate: MatStep, descendants: true }, { propertyName: "_icons", predicate: MatStepperIcon, descendants: true }], viewQueries: [{ propertyName: "_editIconTemplate", first: true, predicate: ["editIconTemplate"], descendants: true, static: true }, { propertyName: "_stepHeader", predicate: MatStepHeader, descendants: true }], exportAs: ["buiStepper", "matStepper", "matVerticalStepper", "matHorizontalStepper"], usesInheritance: true, ngImport: i0, template: "<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div\n\t\t\t*ngFor=\"let step of steps; let i = index; let isLast = last\"\n\t\t\tclass=\"bui-stepper-header-wrapper\"\n\t\t\t[class.bui-stepper-vertical-line]=\"!isLast\"\n\t\t>\n\t\t\t<mat-step-header\n\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t[index]=\"i\"\n\t\t\t\t[state]=\"_getIndicatorType(i, step.state)\"\n\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t[color]=\"step.color || color\"\n\t\t\t></mat-step-header>\n\t\t</div>\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div\n\t\t\t\tclass=\"bui-stepper-top-header-progress\"\n\t\t\t\t[style]=\"'height:' + _progressCircleSize + 'px; width:' + _progressCircleSize + 'px'\"\n\t\t\t>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\tclass=\"bui-progress-spinner-light\"\n\t\t\t\t\t[value]=\"100\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\t[color]=\"color\"\n\t\t\t\t\t[value]=\"((selectedIndex + 1) * 100) / steps.length\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\t{{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\" *ngIf=\"selected\">\n\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\" *ngIf=\"selectedIndex < steps.length - 1\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\">\n\t\t\t<div\n\t\t\t\t*ngFor=\"let step of steps; let i = index\"\n\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\trole=\"tabpanel\"\n\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t>\n\t\t\t\t<div class=\"bui-stepper-content-header-label\" *ngIf=\"!_narrow\">\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{ $implicit: step }\"></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t<ng-template [ngIf]=\"step.stepLabel\" [ngIfElse]=\"stringLabelTempl\">\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t</ng-template>\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n", styles: [".bui-stepper{display:block;box-sizing:border-box}.bui-stepper-wrapper{display:flex;box-sizing:border-box;background-color:var(--bui-bg-card);overflow:hidden}.bui-stepper-left-header-container{max-width:30%}.bui-stepper-header-wrapper{position:relative}.bui-stepper-vertical-line:before{content:\"\";position:absolute;left:28px;border-left-width:1px;border-left-style:solid;border-left-color:var(--bui-color-divider);top:44px;bottom:-12px}[dir=rtl] .bui-stepper-vertical-line:before{left:auto;right:0}.bui-stepper-content-header-label{font-size:larger;font-weight:700;margin-bottom:32px}.bui-stepper .bui-stepper-header{display:flex;align-items:center;padding:0 16px;height:56px}.bui-stepper .bui-stepper-header .mat-step-icon{margin-right:16px}[dir=rtl] .bui-stepper .bui-stepper-header .mat-step-icon{margin-right:0;margin-left:16px}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-done{background-color:var(--bui-color-success);color:#fff}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-number{color:var(--bui-bg-card)}.bui-stepper-top-header-container{display:flex;align-items:stretch}.bui-stepper-top-header-container.bui-stepper-header-active{margin-bottom:16px}.bui-progress-spinner-light circle{stroke:var(--bui-color-divider)!important}.bui-stepper-top-header-progress{position:relative;display:flex;justify-content:center;align-items:center;margin-right:16px}[dir=rtl] .bui-stepper-top-header-progress{margin-right:unset;margin-left:16px}.bui-stepper-top-header-progress>.mat-progress-spinner{position:absolute}.bui-stepper-top-header-progress .bui-stepper-top-header-indicator{color:var(--bui-color-muted)}.bui-stepper-top-header-titles-wrapper{display:flex;flex-basis:max-content;flex-direction:column;justify-content:space-evenly}.bui-stepper-top-header-title{font-size:larger}.bui-stepper-top-header-title-next{color:var(--bui-color-muted)}.bui-stepper-content-container{flex:1 1 100%;padding:16px;display:flex;flex-direction:column}.cdk-high-contrast-active .bui-stepper-content-container{outline:solid 1px}.bui-stepper-content-wrapper{flex:1 1 100%}.bui-stepper-content{outline:0}.bui-stepper-content[aria-expanded=false]{height:0;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatStepHeader, selector: "mat-step-header", inputs: ["color", "state", "label", "errorMessage", "iconOverrides", "index", "selected", "active", "optional", "disableRipple"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: ["buiSizing", "sizingBy", "buiSizingBy", "buiFixedHeight"], outputs: ["buiResized"] }], animations: [animation.stepTransition, animation.leftDrawer, animation.topDrawer], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
114
|
+
], queries: [{ propertyName: "_steps", predicate: MatStep, descendants: true }, { propertyName: "_icons", predicate: MatStepperIcon, descendants: true }], viewQueries: [{ propertyName: "_editIconTemplate", first: true, predicate: ["editIconTemplate"], descendants: true, static: true }, { propertyName: "_stepHeader", predicate: MatStepHeader, descendants: true }], exportAs: ["buiStepper", "matStepper", "matVerticalStepper", "matHorizontalStepper"], usesInheritance: true, ngImport: i0, template: "<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div\n\t\t\t*ngFor=\"let step of steps; let i = index; let isLast = last\"\n\t\t\tclass=\"bui-stepper-header-wrapper\"\n\t\t\t[class.bui-stepper-vertical-line]=\"!isLast\"\n\t\t>\n\t\t\t<mat-step-header\n\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t[index]=\"i\"\n\t\t\t\t[state]=\"_getIndicatorType(i, step.state)\"\n\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t[color]=\"step.color || color\"\n\t\t\t></mat-step-header>\n\t\t</div>\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div\n\t\t\t\tclass=\"bui-stepper-top-header-progress\"\n\t\t\t\t[style]=\"'height:' + _progressCircleSize + 'px; width:' + _progressCircleSize + 'px'\"\n\t\t\t>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\tclass=\"bui-progress-spinner-light\"\n\t\t\t\t\t[value]=\"100\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\t[color]=\"color\"\n\t\t\t\t\t[value]=\"((selectedIndex + 1) * 100) / steps.length\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\t{{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\" *ngIf=\"selected\">\n\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\" *ngIf=\"selectedIndex < steps.length - 1\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\">\n\t\t\t<div\n\t\t\t\t*ngFor=\"let step of steps; let i = index\"\n\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\trole=\"tabpanel\"\n\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t>\n\t\t\t\t<div class=\"bui-stepper-content-header-label\" *ngIf=\"!_narrow\">\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{ $implicit: step }\"></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t<ng-template [ngIf]=\"step.stepLabel\" [ngIfElse]=\"stringLabelTempl\">\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t</ng-template>\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n", styles: [".bui-stepper:not([hidden]){display:block;box-sizing:border-box}.bui-stepper-wrapper{display:flex;box-sizing:border-box;background-color:var(--bui-bg-card);overflow:hidden}.bui-stepper-left-header-container{max-width:30%}.bui-stepper-header-wrapper{position:relative}.bui-stepper-vertical-line:before{content:\"\";position:absolute;left:28px;border-left-width:1px;border-left-style:solid;border-left-color:var(--bui-color-divider);top:44px;bottom:-12px}[dir=rtl] .bui-stepper-vertical-line:before{left:auto;right:0}.bui-stepper-content-header-label{font-size:larger;font-weight:700;margin-bottom:32px}.bui-stepper .bui-stepper-header{display:flex;align-items:center;padding:0 16px;height:56px}.bui-stepper .bui-stepper-header .mat-step-icon{margin-right:16px}[dir=rtl] .bui-stepper .bui-stepper-header .mat-step-icon{margin-right:0;margin-left:16px}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-done{background-color:var(--bui-color-success);color:#fff}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-number{color:var(--bui-bg-card)}.bui-stepper-top-header-container{display:flex;align-items:stretch}.bui-stepper-top-header-container.bui-stepper-header-active{margin-bottom:16px}.bui-progress-spinner-light circle{stroke:var(--bui-color-divider)!important}.bui-stepper-top-header-progress{position:relative;display:flex;justify-content:center;align-items:center;margin-right:16px}[dir=rtl] .bui-stepper-top-header-progress{margin-right:unset;margin-left:16px}.bui-stepper-top-header-progress>.mat-progress-spinner{position:absolute}.bui-stepper-top-header-progress .bui-stepper-top-header-indicator{color:var(--bui-color-muted)}.bui-stepper-top-header-titles-wrapper{display:flex;flex-basis:max-content;flex-direction:column;justify-content:space-evenly}.bui-stepper-top-header-title{font-size:larger}.bui-stepper-top-header-title-next{color:var(--bui-color-muted)}.bui-stepper-content-container{flex:1 1 100%;padding:16px;display:flex;flex-direction:column}.cdk-high-contrast-active .bui-stepper-content-container{outline:solid 1px}.bui-stepper-content-wrapper{flex:1 1 100%}.bui-stepper-content{outline:0}.bui-stepper-content[aria-expanded=false]{height:0;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatStepHeader, selector: "mat-step-header", inputs: ["color", "state", "label", "errorMessage", "iconOverrides", "index", "selected", "active", "optional", "disableRipple"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: ["buiSizing", "sizingBy", "buiSizingBy", "buiFixedHeight"], outputs: ["buiResized"] }], animations: [animation.stepTransition, animation.leftDrawer, animation.topDrawer], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
115
115
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: StepperComponent, decorators: [{
|
|
116
116
|
type: Component,
|
|
117
117
|
args: [{ selector: 'bui-stepper, [buiStepper]', exportAs: 'buiStepper, matStepper, matVerticalStepper, matHorizontalStepper', inputs: ['selectedIndex'], host: {
|
|
@@ -122,7 +122,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
122
122
|
{ provide: MatStepper, useExisting: StepperComponent },
|
|
123
123
|
{ provide: CdkStepper, useExisting: StepperComponent },
|
|
124
124
|
{ provide: STEPPER_GLOBAL_OPTIONS, useValue: { displayDefaultIndicatorType: false } }
|
|
125
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div\n\t\t\t*ngFor=\"let step of steps; let i = index; let isLast = last\"\n\t\t\tclass=\"bui-stepper-header-wrapper\"\n\t\t\t[class.bui-stepper-vertical-line]=\"!isLast\"\n\t\t>\n\t\t\t<mat-step-header\n\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t[index]=\"i\"\n\t\t\t\t[state]=\"_getIndicatorType(i, step.state)\"\n\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t[color]=\"step.color || color\"\n\t\t\t></mat-step-header>\n\t\t</div>\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div\n\t\t\t\tclass=\"bui-stepper-top-header-progress\"\n\t\t\t\t[style]=\"'height:' + _progressCircleSize + 'px; width:' + _progressCircleSize + 'px'\"\n\t\t\t>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\tclass=\"bui-progress-spinner-light\"\n\t\t\t\t\t[value]=\"100\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\t[color]=\"color\"\n\t\t\t\t\t[value]=\"((selectedIndex + 1) * 100) / steps.length\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\t{{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\" *ngIf=\"selected\">\n\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\" *ngIf=\"selectedIndex < steps.length - 1\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\">\n\t\t\t<div\n\t\t\t\t*ngFor=\"let step of steps; let i = index\"\n\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\trole=\"tabpanel\"\n\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t>\n\t\t\t\t<div class=\"bui-stepper-content-header-label\" *ngIf=\"!_narrow\">\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{ $implicit: step }\"></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t<ng-template [ngIf]=\"step.stepLabel\" [ngIfElse]=\"stringLabelTempl\">\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t</ng-template>\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n", styles: [".bui-stepper{display:block;box-sizing:border-box}.bui-stepper-wrapper{display:flex;box-sizing:border-box;background-color:var(--bui-bg-card);overflow:hidden}.bui-stepper-left-header-container{max-width:30%}.bui-stepper-header-wrapper{position:relative}.bui-stepper-vertical-line:before{content:\"\";position:absolute;left:28px;border-left-width:1px;border-left-style:solid;border-left-color:var(--bui-color-divider);top:44px;bottom:-12px}[dir=rtl] .bui-stepper-vertical-line:before{left:auto;right:0}.bui-stepper-content-header-label{font-size:larger;font-weight:700;margin-bottom:32px}.bui-stepper .bui-stepper-header{display:flex;align-items:center;padding:0 16px;height:56px}.bui-stepper .bui-stepper-header .mat-step-icon{margin-right:16px}[dir=rtl] .bui-stepper .bui-stepper-header .mat-step-icon{margin-right:0;margin-left:16px}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-done{background-color:var(--bui-color-success);color:#fff}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-number{color:var(--bui-bg-card)}.bui-stepper-top-header-container{display:flex;align-items:stretch}.bui-stepper-top-header-container.bui-stepper-header-active{margin-bottom:16px}.bui-progress-spinner-light circle{stroke:var(--bui-color-divider)!important}.bui-stepper-top-header-progress{position:relative;display:flex;justify-content:center;align-items:center;margin-right:16px}[dir=rtl] .bui-stepper-top-header-progress{margin-right:unset;margin-left:16px}.bui-stepper-top-header-progress>.mat-progress-spinner{position:absolute}.bui-stepper-top-header-progress .bui-stepper-top-header-indicator{color:var(--bui-color-muted)}.bui-stepper-top-header-titles-wrapper{display:flex;flex-basis:max-content;flex-direction:column;justify-content:space-evenly}.bui-stepper-top-header-title{font-size:larger}.bui-stepper-top-header-title-next{color:var(--bui-color-muted)}.bui-stepper-content-container{flex:1 1 100%;padding:16px;display:flex;flex-direction:column}.cdk-high-contrast-active .bui-stepper-content-container{outline:solid 1px}.bui-stepper-content-wrapper{flex:1 1 100%}.bui-stepper-content{outline:0}.bui-stepper-content[aria-expanded=false]{height:0;overflow:hidden}\n"] }]
|
|
125
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div\n\t\t\t*ngFor=\"let step of steps; let i = index; let isLast = last\"\n\t\t\tclass=\"bui-stepper-header-wrapper\"\n\t\t\t[class.bui-stepper-vertical-line]=\"!isLast\"\n\t\t>\n\t\t\t<mat-step-header\n\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t[index]=\"i\"\n\t\t\t\t[state]=\"_getIndicatorType(i, step.state)\"\n\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t[color]=\"step.color || color\"\n\t\t\t></mat-step-header>\n\t\t</div>\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div\n\t\t\t\tclass=\"bui-stepper-top-header-progress\"\n\t\t\t\t[style]=\"'height:' + _progressCircleSize + 'px; width:' + _progressCircleSize + 'px'\"\n\t\t\t>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\tclass=\"bui-progress-spinner-light\"\n\t\t\t\t\t[value]=\"100\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<mat-progress-spinner\n\t\t\t\t\t[color]=\"color\"\n\t\t\t\t\t[value]=\"((selectedIndex + 1) * 100) / steps.length\"\n\t\t\t\t\t[diameter]=\"_progressCircleSize\"\n\t\t\t\t\t[strokeWidth]=\"_progressCircleWidth\"\n\t\t\t\t></mat-progress-spinner>\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\t{{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\" *ngIf=\"selected\">\n\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\" *ngIf=\"selectedIndex < steps.length - 1\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\">\n\t\t\t<div\n\t\t\t\t*ngFor=\"let step of steps; let i = index\"\n\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\trole=\"tabpanel\"\n\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t>\n\t\t\t\t<div class=\"bui-stepper-content-header-label\" *ngIf=\"!_narrow\">\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{ $implicit: step }\"></ng-template>\n\t\t\t\t</div>\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t<ng-template [ngIf]=\"step.stepLabel\" [ngIfElse]=\"stringLabelTempl\">\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t</ng-template>\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n", styles: [".bui-stepper:not([hidden]){display:block;box-sizing:border-box}.bui-stepper-wrapper{display:flex;box-sizing:border-box;background-color:var(--bui-bg-card);overflow:hidden}.bui-stepper-left-header-container{max-width:30%}.bui-stepper-header-wrapper{position:relative}.bui-stepper-vertical-line:before{content:\"\";position:absolute;left:28px;border-left-width:1px;border-left-style:solid;border-left-color:var(--bui-color-divider);top:44px;bottom:-12px}[dir=rtl] .bui-stepper-vertical-line:before{left:auto;right:0}.bui-stepper-content-header-label{font-size:larger;font-weight:700;margin-bottom:32px}.bui-stepper .bui-stepper-header{display:flex;align-items:center;padding:0 16px;height:56px}.bui-stepper .bui-stepper-header .mat-step-icon{margin-right:16px}[dir=rtl] .bui-stepper .bui-stepper-header .mat-step-icon{margin-right:0;margin-left:16px}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-done{background-color:var(--bui-color-success);color:#fff}.bui-stepper .bui-stepper-header .mat-step-icon.mat-step-icon-state-number{color:var(--bui-bg-card)}.bui-stepper-top-header-container{display:flex;align-items:stretch}.bui-stepper-top-header-container.bui-stepper-header-active{margin-bottom:16px}.bui-progress-spinner-light circle{stroke:var(--bui-color-divider)!important}.bui-stepper-top-header-progress{position:relative;display:flex;justify-content:center;align-items:center;margin-right:16px}[dir=rtl] .bui-stepper-top-header-progress{margin-right:unset;margin-left:16px}.bui-stepper-top-header-progress>.mat-progress-spinner{position:absolute}.bui-stepper-top-header-progress .bui-stepper-top-header-indicator{color:var(--bui-color-muted)}.bui-stepper-top-header-titles-wrapper{display:flex;flex-basis:max-content;flex-direction:column;justify-content:space-evenly}.bui-stepper-top-header-title{font-size:larger}.bui-stepper-top-header-title-next{color:var(--bui-color-muted)}.bui-stepper-content-container{flex:1 1 100%;padding:16px;display:flex;flex-direction:column}.cdk-high-contrast-active .bui-stepper-content-container{outline:solid 1px}.bui-stepper-content-wrapper{flex:1 1 100%}.bui-stepper-content{outline:0}.bui-stepper-content[aria-expanded=false]{height:0;overflow:hidden}\n"] }]
|
|
126
126
|
}], ctorParameters: function () { return [{ type: i1.Directionality, decorators: [{
|
|
127
127
|
type: Optional
|
|
128
128
|
}] }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
@@ -163,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
163
163
|
type: ViewChild,
|
|
164
164
|
args: ['editIconTemplate', { static: true }]
|
|
165
165
|
}] } });
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQTRDLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFFTix1QkFBdUIsRUFFdkIsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxJQUFJLEVBQ0osUUFBUSxFQUVSLFNBQVMsRUFDVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQXlCLE1BQU0sMkJBQTJCLENBQUM7QUFDdEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sU0FBUyxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBRTVDLGNBQWM7QUFDZCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUM7QUFFdkI7Ozs7Ozs7R0FPRztBQXFCSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQTZEL0MsWUFDYSxHQUFtQixFQUMvQixpQkFBb0MsRUFDNUIsU0FBa0MsRUFDeEIsU0FBYyxFQUNRLGNBQThCLEVBQ2QscUJBQXNDO1FBRTlGLEtBQUssQ0FBQyxHQUFHLEVBQUUsaUJBQWlC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QkFBL0IsTUFBTTtnQkFHRSxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFPRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBR0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQTZCRSxpQkFBaUI7c0JBRHhCLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHsgQ2RrU3RlcHBlciwgU3RlcENvbnRlbnRQb3NpdGlvblN0YXRlLCBTdGVwcGVyT3B0aW9ucywgU1RFUFBFUl9HTE9CQUxfT1BUSU9OUyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zdGVwcGVyJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdEFmdGVyQ29udGVudEluaXQsXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDaGFuZ2VEZXRlY3RvclJlZixcblx0Q29tcG9uZW50LFxuXHRDb250ZW50Q2hpbGRyZW4sXG5cdEVsZW1lbnRSZWYsXG5cdEV2ZW50RW1pdHRlcixcblx0SW5qZWN0LFxuXHRJbnB1dCxcblx0T3B0aW9uYWwsXG5cdE91dHB1dCxcblx0UXVlcnlMaXN0LFxuXHRTZWxmLFxuXHRTa2lwU2VsZixcblx0VGVtcGxhdGVSZWYsXG5cdFZpZXdDaGlsZCxcblx0Vmlld0NoaWxkcmVuLFxuXHRWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0U3RlcCwgTWF0U3RlcEhlYWRlciwgTWF0U3RlcHBlciwgTWF0U3RlcHBlckljb24sIE1hdFN0ZXBwZXJJY29uQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3N0ZXBwZXInO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IGFuaW1hdGlvbiBmcm9tICcuL3N0ZXBwZXItYW5pbWF0aW9uJztcblxuLyoqIEBpZ25vcmUgKi9cbmNvbnN0IEJSRUFLUE9JTlQgPSA3Njg7XG5cbi8qKlxuICogW0FuZ3VsYXIgTWF0ZXJpYWwncyBzdGVwcGVyXShodHRwczovL21hdGVyaWFsLmFuZ3VsYXIuaW8vY29tcG9uZW50cy9zdGVwcGVyL292ZXJ2aWV3KSBwcm92aWRlcyBhIHdpemFyZC1saWtlIHdvcmtmbG93IGJ5IGRpdmlkaW5nXG4gKiBjb250ZW50IGludG8gbG9naWNhbCBzdGVwcy5cbiAqXG4gKiBUaGlzIHN0ZXBwZXIgZXh0ZW5kcyBBbmd1bGFyJ3MgdG8gY3VzdG9taXNlIHRoZSBwcmVzZW50YXRpb24gb2YgaXRzIGhlYWRlcnMgdG8gYWNoaWV2ZSBhIGJldHRlciB1c2VyIGV4cGVyaWVuY2UgaW4gYm90aCBtb2JpbGUgYW5kXG4gKiBkZXNrdG9wIGJyb3dzZXJzLlxuICpcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnYnVpLXN0ZXBwZXIsIFtidWlTdGVwcGVyXScsXG5cdGV4cG9ydEFzOiAnYnVpU3RlcHBlciwgbWF0U3RlcHBlciwgbWF0VmVydGljYWxTdGVwcGVyLCBtYXRIb3Jpem9udGFsU3RlcHBlcicsXG5cdHRlbXBsYXRlVXJsOiAnLi9zdGVwcGVyLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vc3RlcHBlci5jb21wb25lbnQuc2NzcyddLFxuXHRpbnB1dHM6IFsnc2VsZWN0ZWRJbmRleCddLFxuXHRob3N0OiB7XG5cdFx0Y2xhc3M6ICdidWktc3RlcHBlciBidWktaG9zdCcsXG5cdFx0J1thdHRyLmFyaWEtb3JpZW50YXRpb25dJzogJ29yaWVudGF0aW9uJyxcblx0XHRyb2xlOiAndGFibGlzdCdcblx0fSxcblx0YW5pbWF0aW9uczogW2FuaW1hdGlvbi5zdGVwVHJhbnNpdGlvbiwgYW5pbWF0aW9uLmxlZnREcmF3ZXIsIGFuaW1hdGlvbi50b3BEcmF3ZXJdLFxuXHRwcm92aWRlcnM6IFtcblx0XHR7IHByb3ZpZGU6IE1hdFN0ZXBwZXIsIHVzZUV4aXN0aW5nOiBTdGVwcGVyQ29tcG9uZW50IH0sXG5cdFx0eyBwcm92aWRlOiBDZGtTdGVwcGVyLCB1c2VFeGlzdGluZzogU3RlcHBlckNvbXBvbmVudCB9LFxuXHRcdHsgcHJvdmlkZTogU1RFUFBFUl9HTE9CQUxfT1BUSU9OUywgdXNlVmFsdWU6IHsgZGlzcGxheURlZmF1bHRJbmRpY2F0b3JUeXBlOiBmYWxzZSB9IH1cblx0XSxcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU3RlcHBlckNvbXBvbmVudCBleHRlbmRzIENka1N0ZXBwZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblx0LyoqIEBpZ25vcmUgVGhlIGxpc3Qgb2Ygc3RlcCBoZWFkZXJzIG9mIHRoZSBzdGVwcyBpbiB0aGUgc3RlcHBlci4gKi9cblx0QFZpZXdDaGlsZHJlbihNYXRTdGVwSGVhZGVyKSBvdmVycmlkZSBfc3RlcEhlYWRlciE6IFF1ZXJ5TGlzdDxNYXRTdGVwSGVhZGVyPjtcblxuXHQvKiogQGlnbm9yZSBGdWxsIGxpc3Qgb2Ygc3RlcHMgaW5zaWRlIHRoZSBzdGVwcGVyLCBpbmNsdWRpbmcgaW5zaWRlIG5lc3RlZCBzdGVwcGVycy4gKi9cblx0QENvbnRlbnRDaGlsZHJlbihNYXRTdGVwLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pIG92ZXJyaWRlIF9zdGVwcyE6IFF1ZXJ5TGlzdDxNYXRTdGVwPjtcblxuXHQvKiogQGlnbm9yZSBTdGVwcyB0aGF0IGJlbG9uZyB0byB0aGUgY3VycmVudCBzdGVwcGVyLCBleGNsdWRpbmcgb25lcyBmcm9tIG5lc3RlZCBzdGVwcGVycy4gKi9cblx0b3ZlcnJpZGUgcmVhZG9ubHkgc3RlcHM6IFF1ZXJ5TGlzdDxNYXRTdGVwPiA9IG5ldyBRdWVyeUxpc3Q8TWF0U3RlcD4oKTtcblxuXHQvKiogQGlnbm9yZSBDdXN0b20gaWNvbiBvdmVycmlkZXMgcGFzc2VkIGluIGJ5IHRoZSBjb25zdW1lci4gKi9cblx0QENvbnRlbnRDaGlsZHJlbihNYXRTdGVwcGVySWNvbiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSBfaWNvbnMhOiBRdWVyeUxpc3Q8TWF0U3RlcHBlckljb24+O1xuXG5cdC8qKiBAaWdub3JlIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY3VycmVudCBzdGVwIGlzIGRvbmUgdHJhbnNpdGlvbmluZyBpbi4gKi9cblx0QE91dHB1dCgpIHJlYWRvbmx5IGFuaW1hdGlvbkRvbmU6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHQvKiogV2hldGhlciByaXBwbGVzIHNob3VsZCBiZSBkaXNhYmxlZCBmb3IgdGhlIHN0ZXAgaGVhZGVycy4gKi9cblx0QElucHV0KCkgZGlzYWJsZVJpcHBsZT86IGJvb2xlYW47XG5cblx0LyoqIFRoZW1lIGNvbG9yIGZvciBhbGwgb2YgdGhlIHN0ZXBzIGluIHN0ZXBwZXIuICovXG5cdEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG5cblx0LyoqXG5cdCAqIEEgZnVuY3Rpb24gdGhhdCBjb25zdHJ1Y3RzIHRoZSB0ZXh0IGluIHRoZSBwcm9ncmVzcyBjeWNsZSBmb3IgdGhlICduYXJyb3cnIHZpZXcuXG5cdCAqXG5cdCAqIERlZmF1bHQgdmFsdWU6IGAne3NlbGVjdGVkIHN0ZXB9IG9mIHt0b3RhbCBudW1iZXIgb2Ygc3RlcHN9J2Bcblx0ICovXG5cdEBJbnB1dCgpIGluZGljYXRvckZvcm1hdHRlcjogKGluZGV4OiBudW1iZXIsIHRvdGFsOiBudW1iZXIpID0+IHN0cmluZztcblxuXHQvKiogVGhlIHRleHQgdGhhdCBwcmVjZWRlcyB0aGUgbmFtZSBvZiB0aGUgbmV4dCBzdGVwIGxhYmVsLCB1c2VkIGluIHRoZSAnbmFycm93JyB2aWV3LiAgICovXG5cdEBJbnB1dCgpIG5leHRTdGVwTGFiZWxQcmVmaXggPSAnTmV4dDogJztcblxuXHQvKiogQGlnbm9yZSBDb25zdW1lci1zcGVjaWZpZWQgdGVtcGxhdGUtcmVmcyB0byBiZSB1c2VkIHRvIG92ZXJyaWRlIHRoZSBoZWFkZXIgaWNvbnMuICovXG5cdF9pY29uT3ZlcnJpZGVzOiBSZWNvcmQ8c3RyaW5nLCBUZW1wbGF0ZVJlZjxNYXRTdGVwcGVySWNvbkNvbnRleHQ+PiA9IHt9O1xuXG5cdC8qKiBAaWdub3JlIFN0cmVhbSBvZiBhbmltYXRpb24gYGRvbmVgIGV2ZW50cyB3aGVuIHRoZSBib2R5IGV4cGFuZHMvY29sbGFwc2VzLiAqL1xuXHRyZWFkb25seSBfYW5pbWF0aW9uRG9uZSA9IG5ldyBTdWJqZWN0PEFuaW1hdGlvbkV2ZW50PigpO1xuXG5cdC8qKiBAaWdub3JlIFdoZXRoZXIgdGhlIHN0ZXBwZXIgaXMgaW4gYSBuYXJyb3cgY29udGFpbmVyICovXG5cdF9uYXJyb3cgPSBmYWxzZTtcblxuXHQvKiogQGlnbm9yZSBFbWl0cyB3aGVuZXZlciB0aGUgZHJhd2VyIGhhcyBzdGFydGVkIGFuaW1hdGluZy4gKi9cblx0cmVhZG9ubHkgX2xlZnREcmF3ZXJTdGFydGVkID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBkcmF3ZXIgaXMgZG9uZSBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF9sZWZ0RHJhd2VyRW5kZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblx0LyoqIEBpZ25vcmUgQ3VycmVudCBzdGF0ZSBvZiB0aGUgc2lkZW5hdiBhbmltYXRpb24uICovXG5cdF9sZWZ0RHJhd2VyU3RhdGU6ICdvcGVuLWluc3RhbnQnIHwgJ29wZW4nIHwgJ3ZvaWQnID0gJ29wZW4taW5zdGFudCc7XG5cblx0LyoqIEBpZ25vcmUgRW1pdHMgd2hlbmV2ZXIgdGhlIGRyYXdlciBoYXMgc3RhcnRlZCBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF90b3BEcmF3ZXJTdGFydGVkID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBkcmF3ZXIgaXMgZG9uZSBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF90b3BEcmF3ZXJFbmRlZCA9IG5ldyBTdWJqZWN0PEFuaW1hdGlvbkV2ZW50PigpO1xuXHQvKiogQGlnbm9yZSBDdXJyZW50IHN0YXRlIG9mIHRoZSBzaWRlbmF2IGFuaW1hdGlvbi4gKi9cblx0X3RvcERyYXdlclN0YXRlOiAnb3Blbi1pbnN0YW50JyB8ICdvcGVuJyB8ICd2b2lkJyA9ICd2b2lkJztcblxuXHQvKiogQGlnbm9yZSAqLyByZWFkb25seSBfcHJvZ3Jlc3NDaXJjbGVTaXplID0gODA7XG5cdC8qKiBAaWdub3JlICovIHJlYWRvbmx5IF9wcm9ncmVzc0NpcmNsZVdpZHRoID0gNTtcblxuXHRAVmlld0NoaWxkKCdlZGl0SWNvblRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSBfZWRpdEljb25UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0QE9wdGlvbmFsKCkgZGlyOiBEaXJlY3Rpb25hbGl0eSxcblx0XHRjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG5cdFx0cHJpdmF0ZSBfYnVpRWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdEBJbmplY3QoRE9DVU1FTlQpIF9kb2N1bWVudDogYW55LFxuXHRcdEBTZWxmKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBzdGVwcGVyT3B0aW9uczogU3RlcHBlck9wdGlvbnMsXG5cdFx0QE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBkZWZhdWx0U3RlcHBlck9wdGlvbnM/OiBTdGVwcGVyT3B0aW9uc1xuXHQpIHtcblx0XHRzdXBlcihkaXIsIGNoYW5nZURldGVjdG9yUmVmLCBfYnVpRWxSZWYpO1xuXHRcdHRoaXMub3JpZW50YXRpb24gPSAndmVydGljYWwnO1xuXHRcdHRoaXMuaW5kaWNhdG9yRm9ybWF0dGVyID0gKGluZGV4LCB0b3RhbCkgPT4gYCR7aW5kZXh9IG9mICR7dG90YWx9YDtcblx0XHRPYmplY3Qua2V5cyhkZWZhdWx0U3RlcHBlck9wdGlvbnMgfHwge30pXG5cdFx0XHQuZmlsdGVyKGsgPT4gayAhPT0gJ2Rpc3BsYXlEZWZhdWx0SW5kaWNhdG9yVHlwZScpXG5cdFx0XHQuZm9yRWFjaCgoKGs6IGtleW9mIFN0ZXBwZXJPcHRpb25zKSA9PiAoc3RlcHBlck9wdGlvbnNba10gPSBkZWZhdWx0U3RlcHBlck9wdGlvbnMhW2tdKSkgYXMgYW55KTtcblx0fVxuXG5cdG92ZXJyaWRlIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblx0XHRzdXBlci5uZ0FmdGVyQ29udGVudEluaXQoKTtcblx0XHR0aGlzLl9pY29ucy5mb3JFYWNoKCh7IG5hbWUsIHRlbXBsYXRlUmVmIH0pID0+ICh0aGlzLl9pY29uT3ZlcnJpZGVzW25hbWVdID0gdGVtcGxhdGVSZWYpKTtcblxuXHRcdC8vIE1hcmsgdGhlIGNvbXBvbmVudCBmb3IgY2hhbmdlIGRldGVjdGlvbiB3aGVuZXZlciB0aGUgY29udGVudCBjaGlsZHJlbiBxdWVyeSBjaGFuZ2VzXG5cdFx0dGhpcy5zdGVwcy5jaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCkpLnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHR0aGlzLl9zdGF0ZUNoYW5nZWQoKTtcblx0XHR9KTtcblxuXHRcdHRoaXMuX2FuaW1hdGlvbkRvbmVcblx0XHRcdC5waXBlKFxuXHRcdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgoeCwgeSkgPT4geC5mcm9tU3RhdGUgPT09IHkuZnJvbVN0YXRlICYmIHgudG9TdGF0ZSA9PT0geS50b1N0YXRlKSxcblx0XHRcdFx0dGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZClcblx0XHRcdClcblx0XHRcdC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuXHRcdFx0XHRpZiAoKGV2ZW50LnRvU3RhdGUgYXMgU3RlcENvbnRlbnRQb3NpdGlvblN0YXRlKSA9PT0gJ2N1cnJlbnQnKSB7XG5cdFx0XHRcdFx0dGhpcy5hbmltYXRpb25Eb25lLmVtaXQoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cblx0XHR0aGlzLl9sZWZ0RHJhd2VyRW5kZWRcblx0XHRcdC5waXBlKFxuXHRcdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgoeCwgeSkgPT4geC5mcm9tU3RhdGUgPT09IHkuZnJvbVN0YXRlICYmIHgudG9TdGF0ZSA9PT0geS50b1N0YXRlKSxcblx0XHRcdFx0ZmlsdGVyKGV2ID0+IGV2LnRvU3RhdGUgPT09ICd2b2lkJyAmJiBldi50b1N0YXRlICE9PSBldi5mcm9tU3RhdGUpLFxuXHRcdFx0XHR0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkKVxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuX3RvcERyYXdlclN0YXRlID0gJ29wZW4nO1xuXHRcdFx0fSk7XG5cblx0XHR0aGlzLl90b3BEcmF3ZXJFbmRlZFxuXHRcdFx0LnBpcGUoXG5cdFx0XHRcdGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiB4LmZyb21TdGF0ZSA9PT0geS5mcm9tU3RhdGUgJiYgeC50b1N0YXRlID09PSB5LnRvU3RhdGUpLFxuXHRcdFx0XHRmaWx0ZXIoZXYgPT4gZXYudG9TdGF0ZSA9PT0gJ3ZvaWQnICYmIGV2LnRvU3RhdGUgIT09IGV2LmZyb21TdGF0ZSksXG5cdFx0XHRcdHRha2VVbnRpbCh0aGlzLl9kZXN0cm95ZWQpXG5cdFx0XHQpXG5cdFx0XHQuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdFx0dGhpcy5fbGVmdERyYXdlclN0YXRlID0gJ29wZW4nO1xuXHRcdFx0fSk7XG5cdFx0dGhpcy5faWNvbk92ZXJyaWRlcy5lZGl0ID0gdGhpcy5faWNvbk92ZXJyaWRlcy5lZGl0IHx8IHRoaXMuX2VkaXRJY29uVGVtcGxhdGU7XG5cdH1cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRfc3RlcElzTmF2aWdhYmxlKGluZGV4OiBudW1iZXIsIHN0ZXA6IE1hdFN0ZXApOiBib29sZWFuIHtcblx0XHRyZXR1cm4gc3RlcC5jb21wbGV0ZWQgfHwgdGhpcy5zZWxlY3RlZEluZGV4ID09PSBpbmRleCB8fCAhdGhpcy5saW5lYXI7XG5cdH1cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRfd2lkdGhDaGFuZ2VkKHc6IG51bWJlcikge1xuXHRcdGNvbnN0IG5hcnJvdyA9IE1hdGguYWJzKHcgLSBCUkVBS1BPSU5UKSA8IDIwID8gdGhpcy5fbmFycm93IDogdyA8IEJSRUFLUE9JTlQ7XG5cdFx0Y29uc3QgY2xzID0gJ2J1aS1zdGVwcGVyLW5hcnJvdyc7XG5cdFx0Y29uc3QgY2xhc3NMaXN0ID0gdGhpcy5fYnVpRWxSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3Q7XG5cdFx0aWYgKG5hcnJvdykge1xuXHRcdFx0dGhpcy5fbGVmdERyYXdlclN0YXRlID0gJ3ZvaWQnO1xuXHRcdFx0Y2xhc3NMaXN0LmFkZChjbHMpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl90b3BEcmF3ZXJTdGF0ZSA9ICd2b2lkJztcblx0XHRcdGNsYXNzTGlzdC5yZW1vdmUoY2xzKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMuX25hcnJvdyAhPT0gbmFycm93KSB7XG5cdFx0XHR0aGlzLl9uYXJyb3cgPSBuYXJyb3c7XG5cdFx0XHR0aGlzLl9zdGF0ZUNoYW5nZWQoKTtcblx0XHR9XG5cdH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJidWktc3RlcHBlci13cmFwcGVyXCIgW3N0eWxlLmRpc3BsYXldPVwiX2xlZnREcmF3ZXJTdGF0ZS5zdGFydHNXaXRoKCdvcGVuJykgPyAnZmxleCcgOiAnYmxvY2snXCIgI3NpemVNb25pdG9yPlxuXHQ8ZGl2XG5cdFx0Y2xhc3M9XCJidWktc3RlcHBlci1sZWZ0LWhlYWRlci1jb250YWluZXJcIlxuXHRcdFtAbGVmdERyYXdlcl09XCJfbGVmdERyYXdlclN0YXRlXCJcblx0XHQoQGxlZnREcmF3ZXIuc3RhcnQpPVwiX2xlZnREcmF3ZXJTdGFydGVkLm5leHQoJGV2ZW50KVwiXG5cdFx0KEBsZWZ0RHJhd2VyLmRvbmUpPVwiX2xlZnREcmF3ZXJFbmRlZC5uZXh0KCRldmVudClcIlxuXHQ+XG5cdFx0PGRpdlxuXHRcdFx0Km5nRm9yPVwibGV0IHN0ZXAgb2Ygc3RlcHM7IGxldCBpID0gaW5kZXg7IGxldCBpc0xhc3QgPSBsYXN0XCJcblx0XHRcdGNsYXNzPVwiYnVpLXN0ZXBwZXItaGVhZGVyLXdyYXBwZXJcIlxuXHRcdFx0W2NsYXNzLmJ1aS1zdGVwcGVyLXZlcnRpY2FsLWxpbmVdPVwiIWlzTGFzdFwiXG5cdFx0PlxuXHRcdFx0PG1hdC1zdGVwLWhlYWRlclxuXHRcdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLWhlYWRlclwiXG5cdFx0XHRcdChjbGljayk9XCJzdGVwLnNlbGVjdCgpXCJcblx0XHRcdFx0KGtleWRvd24pPVwiX29uS2V5ZG93bigkZXZlbnQpXCJcblx0XHRcdFx0W3RhYkluZGV4XT1cIl9nZXRGb2N1c0luZGV4KCkgPT09IGkgPyAwIDogLTFcIlxuXHRcdFx0XHRbaWRdPVwiX2dldFN0ZXBMYWJlbElkKGkpXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1wb3NpbnNldF09XCJpICsgMVwiXG5cdFx0XHRcdFthdHRyLmFyaWEtc2V0c2l6ZV09XCJzdGVwcy5sZW5ndGhcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIl9nZXRTdGVwQ29udGVudElkKGkpXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1zZWxlY3RlZF09XCJzZWxlY3RlZEluZGV4ID09IGlcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsXT1cInN0ZXAuYXJpYUxhYmVsIHx8IG51bGxcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiIXN0ZXAuYXJpYUxhYmVsICYmIHN0ZXAuYXJpYUxhYmVsbGVkYnkgPyBzdGVwLmFyaWFMYWJlbGxlZGJ5IDogbnVsbFwiXG5cdFx0XHRcdFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiX3N0ZXBJc05hdmlnYWJsZShpLCBzdGVwKSA/IG51bGwgOiB0cnVlXCJcblx0XHRcdFx0W2luZGV4XT1cImlcIlxuXHRcdFx0XHRbc3RhdGVdPVwiX2dldEluZGljYXRvclR5cGUoaSwgc3RlcC5zdGF0ZSlcIlxuXHRcdFx0XHRbbGFiZWxdPVwic3RlcC5zdGVwTGFiZWwgfHwgc3RlcC5sYWJlbFwiXG5cdFx0XHRcdFtzZWxlY3RlZF09XCJzZWxlY3RlZEluZGV4ID09PSBpXCJcblx0XHRcdFx0W2FjdGl2ZV09XCJfc3RlcElzTmF2aWdhYmxlKGksIHN0ZXApXCJcblx0XHRcdFx0W29wdGlvbmFsXT1cInN0ZXAub3B0aW9uYWxcIlxuXHRcdFx0XHRbZXJyb3JNZXNzYWdlXT1cInN0ZXAuZXJyb3JNZXNzYWdlXCJcblx0XHRcdFx0W2ljb25PdmVycmlkZXNdPVwiX2ljb25PdmVycmlkZXNcIlxuXHRcdFx0XHRbZGlzYWJsZVJpcHBsZV09XCJkaXNhYmxlUmlwcGxlIHx8ICFfc3RlcElzTmF2aWdhYmxlKGksIHN0ZXApXCJcblx0XHRcdFx0W2NvbG9yXT1cInN0ZXAuY29sb3IgfHwgY29sb3JcIlxuXHRcdFx0PjwvbWF0LXN0ZXAtaGVhZGVyPlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cblxuXHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItY29udGVudC1jb250YWluZXJcIiBbYnVpU2l6aW5nQnldPVwic2l6ZU1vbml0b3JcIiAoYnVpUmVzaXplZCk9XCJfd2lkdGhDaGFuZ2VkKCRldmVudC53aWR0aClcIj5cblx0XHQ8ZGl2XG5cdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItY29udGFpbmVyXCJcblx0XHRcdFtjbGFzcy5idWktc3RlcHBlci1oZWFkZXItYWN0aXZlXT1cIl9sZWZ0RHJhd2VyU3RhdGUgPT09ICd2b2lkJ1wiXG5cdFx0XHRbQHRvcERyYXdlcl09XCJfdG9wRHJhd2VyU3RhdGVcIlxuXHRcdFx0KEB0b3BEcmF3ZXIuc3RhcnQpPVwiX3RvcERyYXdlclN0YXJ0ZWQubmV4dCgkZXZlbnQpXCJcblx0XHRcdChAdG9wRHJhd2VyLmRvbmUpPVwiX3RvcERyYXdlckVuZGVkLm5leHQoJGV2ZW50KVwiXG5cdFx0PlxuXHRcdFx0PGRpdlxuXHRcdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItcHJvZ3Jlc3NcIlxuXHRcdFx0XHRbc3R5bGVdPVwiJ2hlaWdodDonICsgX3Byb2dyZXNzQ2lyY2xlU2l6ZSArICdweDsgd2lkdGg6JyArIF9wcm9ncmVzc0NpcmNsZVNpemUgKyAncHgnXCJcblx0XHRcdD5cblx0XHRcdFx0PG1hdC1wcm9ncmVzcy1zcGlubmVyXG5cdFx0XHRcdFx0Y2xhc3M9XCJidWktcHJvZ3Jlc3Mtc3Bpbm5lci1saWdodFwiXG5cdFx0XHRcdFx0W3ZhbHVlXT1cIjEwMFwiXG5cdFx0XHRcdFx0W2RpYW1ldGVyXT1cIl9wcm9ncmVzc0NpcmNsZVNpemVcIlxuXHRcdFx0XHRcdFtzdHJva2VXaWR0aF09XCJfcHJvZ3Jlc3NDaXJjbGVXaWR0aFwiXG5cdFx0XHRcdD48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxuXHRcdFx0XHQ8bWF0LXByb2dyZXNzLXNwaW5uZXJcblx0XHRcdFx0XHRbY29sb3JdPVwiY29sb3JcIlxuXHRcdFx0XHRcdFt2YWx1ZV09XCIoKHNlbGVjdGVkSW5kZXggKyAxKSAqIDEwMCkgLyBzdGVwcy5sZW5ndGhcIlxuXHRcdFx0XHRcdFtkaWFtZXRlcl09XCJfcHJvZ3Jlc3NDaXJjbGVTaXplXCJcblx0XHRcdFx0XHRbc3Ryb2tlV2lkdGhdPVwiX3Byb2dyZXNzQ2lyY2xlV2lkdGhcIlxuXHRcdFx0XHQ+PC9tYXQtcHJvZ3Jlc3Mtc3Bpbm5lcj5cblx0XHRcdFx0PHNwYW4gY2xhc3M9XCJidWktc3RlcHBlci10b3AtaGVhZGVyLWluZGljYXRvclwiPlxuXHRcdFx0XHRcdHt7IGluZGljYXRvckZvcm1hdHRlcihzZWxlY3RlZEluZGV4ICsgMSwgc3RlcHMubGVuZ3RoKSB9fVxuXHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJidWktc3RlcHBlci10b3AtaGVhZGVyLXRpdGxlcy13cmFwcGVyXCIgKm5nSWY9XCJzZWxlY3RlZFwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItdG9wLWhlYWRlci10aXRsZVwiPlxuXHRcdFx0XHRcdDxuZy10ZW1wbGF0ZVxuXHRcdFx0XHRcdFx0W25nVGVtcGxhdGVPdXRsZXRdPVwibGFiZWxUZW1wbGF0ZVwiXG5cdFx0XHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHNlbGVjdGVkIH1cIlxuXHRcdFx0XHRcdD48L25nLXRlbXBsYXRlPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItdGl0bGUtbmV4dFwiICpuZ0lmPVwic2VsZWN0ZWRJbmRleCA8IHN0ZXBzLmxlbmd0aCAtIDFcIj5cblx0XHRcdFx0XHR7eyBuZXh0U3RlcExhYmVsUHJlZml4IH19XG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlXG5cdFx0XHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJsYWJlbFRlbXBsYXRlXCJcblx0XHRcdFx0XHRcdFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogc3RlcHMuZ2V0KHNlbGVjdGVkSW5kZXggKyAxKSB9XCJcblx0XHRcdFx0XHQ+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItY29udGVudC13cmFwcGVyXCI+XG5cdFx0XHQ8ZGl2XG5cdFx0XHRcdCpuZ0Zvcj1cImxldCBzdGVwIG9mIHN0ZXBzOyBsZXQgaSA9IGluZGV4XCJcblx0XHRcdFx0Y2xhc3M9XCJidWktc3RlcHBlci1jb250ZW50XCJcblx0XHRcdFx0cm9sZT1cInRhYnBhbmVsXCJcblx0XHRcdFx0W0BzdGVwVHJhbnNpdGlvbl09XCJfZ2V0QW5pbWF0aW9uRGlyZWN0aW9uKGkpXCJcblx0XHRcdFx0KEBzdGVwVHJhbnNpdGlvbi5kb25lKT1cIl9hbmltYXRpb25Eb25lLm5leHQoJGV2ZW50KVwiXG5cdFx0XHRcdFtpZF09XCJfZ2V0U3RlcENvbnRlbnRJZChpKVwiXG5cdFx0XHRcdFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJfZ2V0U3RlcExhYmVsSWQoaSlcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWV4cGFuZGVkXT1cInNlbGVjdGVkSW5kZXggPT09IGlcIlxuXHRcdFx0PlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItY29udGVudC1oZWFkZXItbGFiZWxcIiAqbmdJZj1cIiFfbmFycm93XCI+XG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxhYmVsVGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHN0ZXAgfVwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwic3RlcC5jb250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2xhYmVsVGVtcGxhdGUgbGV0LXN0ZXA+XG5cdDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJzdGVwLnN0ZXBMYWJlbFwiIFtuZ0lmRWxzZV09XCJzdHJpbmdMYWJlbFRlbXBsXCI+XG5cdFx0PG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInN0ZXAuc3RlcExhYmVsLnRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cblx0PC9uZy10ZW1wbGF0ZT5cblx0PG5nLXRlbXBsYXRlICNzdHJpbmdMYWJlbFRlbXBsPnt7IHN0ZXAubGFiZWwgfX08L25nLXRlbXBsYXRlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNlZGl0SWNvblRlbXBsYXRlIGxldC1pbmRleD1cImluZGV4XCI+XG5cdDxzcGFuPnt7IGluZGV4ICsgMSB9fTwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQTRDLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFFTix1QkFBdUIsRUFFdkIsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxJQUFJLEVBQ0osUUFBUSxFQUVSLFNBQVMsRUFDVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQXlCLE1BQU0sMkJBQTJCLENBQUM7QUFDdEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sU0FBUyxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBRTVDLGNBQWM7QUFDZCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUM7QUFFdkI7Ozs7Ozs7R0FPRztBQXFCSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQTZEL0MsWUFDYSxHQUFtQixFQUMvQixpQkFBb0MsRUFDNUIsU0FBa0MsRUFDeEIsU0FBYyxFQUNRLGNBQThCLEVBQ2QscUJBQXNDO1FBRTlGLEtBQUssQ0FBQyxHQUFHLEVBQUUsaUJBQWlC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QkFBL0IsTUFBTTtnQkFHRSxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFPRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBR0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQTZCRSxpQkFBaUI7c0JBRHhCLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHsgQ2RrU3RlcHBlciwgU3RlcENvbnRlbnRQb3NpdGlvblN0YXRlLCBTdGVwcGVyT3B0aW9ucywgU1RFUFBFUl9HTE9CQUxfT1BUSU9OUyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zdGVwcGVyJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdEFmdGVyQ29udGVudEluaXQsXG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDaGFuZ2VEZXRlY3RvclJlZixcblx0Q29tcG9uZW50LFxuXHRDb250ZW50Q2hpbGRyZW4sXG5cdEVsZW1lbnRSZWYsXG5cdEV2ZW50RW1pdHRlcixcblx0SW5qZWN0LFxuXHRJbnB1dCxcblx0T3B0aW9uYWwsXG5cdE91dHB1dCxcblx0UXVlcnlMaXN0LFxuXHRTZWxmLFxuXHRTa2lwU2VsZixcblx0VGVtcGxhdGVSZWYsXG5cdFZpZXdDaGlsZCxcblx0Vmlld0NoaWxkcmVuLFxuXHRWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0U3RlcCwgTWF0U3RlcEhlYWRlciwgTWF0U3RlcHBlciwgTWF0U3RlcHBlckljb24sIE1hdFN0ZXBwZXJJY29uQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3N0ZXBwZXInO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IGFuaW1hdGlvbiBmcm9tICcuL3N0ZXBwZXItYW5pbWF0aW9uJztcblxuLyoqIEBpZ25vcmUgKi9cbmNvbnN0IEJSRUFLUE9JTlQgPSA3Njg7XG5cbi8qKlxuICogW0FuZ3VsYXIgTWF0ZXJpYWwncyBzdGVwcGVyXShodHRwczovL21hdGVyaWFsLmFuZ3VsYXIuaW8vY29tcG9uZW50cy9zdGVwcGVyL292ZXJ2aWV3KSBwcm92aWRlcyBhIHdpemFyZC1saWtlIHdvcmtmbG93IGJ5IGRpdmlkaW5nXG4gKiBjb250ZW50IGludG8gbG9naWNhbCBzdGVwcy5cbiAqXG4gKiBUaGlzIHN0ZXBwZXIgZXh0ZW5kcyBBbmd1bGFyJ3MgdG8gY3VzdG9taXNlIHRoZSBwcmVzZW50YXRpb24gb2YgaXRzIGhlYWRlcnMgdG8gYWNoaWV2ZSBhIGJldHRlciB1c2VyIGV4cGVyaWVuY2UgaW4gYm90aCBtb2JpbGUgYW5kXG4gKiBkZXNrdG9wIGJyb3dzZXJzLlxuICpcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnYnVpLXN0ZXBwZXIsIFtidWlTdGVwcGVyXScsXG5cdGV4cG9ydEFzOiAnYnVpU3RlcHBlciwgbWF0U3RlcHBlciwgbWF0VmVydGljYWxTdGVwcGVyLCBtYXRIb3Jpem9udGFsU3RlcHBlcicsXG5cdHRlbXBsYXRlVXJsOiAnLi9zdGVwcGVyLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vc3RlcHBlci5jb21wb25lbnQuc2NzcyddLFxuXHRpbnB1dHM6IFsnc2VsZWN0ZWRJbmRleCddLFxuXHRob3N0OiB7XG5cdFx0Y2xhc3M6ICdidWktc3RlcHBlciBidWktaG9zdCcsXG5cdFx0J1thdHRyLmFyaWEtb3JpZW50YXRpb25dJzogJ29yaWVudGF0aW9uJyxcblx0XHRyb2xlOiAndGFibGlzdCdcblx0fSxcblx0YW5pbWF0aW9uczogW2FuaW1hdGlvbi5zdGVwVHJhbnNpdGlvbiwgYW5pbWF0aW9uLmxlZnREcmF3ZXIsIGFuaW1hdGlvbi50b3BEcmF3ZXJdLFxuXHRwcm92aWRlcnM6IFtcblx0XHR7IHByb3ZpZGU6IE1hdFN0ZXBwZXIsIHVzZUV4aXN0aW5nOiBTdGVwcGVyQ29tcG9uZW50IH0sXG5cdFx0eyBwcm92aWRlOiBDZGtTdGVwcGVyLCB1c2VFeGlzdGluZzogU3RlcHBlckNvbXBvbmVudCB9LFxuXHRcdHsgcHJvdmlkZTogU1RFUFBFUl9HTE9CQUxfT1BUSU9OUywgdXNlVmFsdWU6IHsgZGlzcGxheURlZmF1bHRJbmRpY2F0b3JUeXBlOiBmYWxzZSB9IH1cblx0XSxcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU3RlcHBlckNvbXBvbmVudCBleHRlbmRzIENka1N0ZXBwZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblx0LyoqIEBpZ25vcmUgVGhlIGxpc3Qgb2Ygc3RlcCBoZWFkZXJzIG9mIHRoZSBzdGVwcyBpbiB0aGUgc3RlcHBlci4gKi9cblx0QFZpZXdDaGlsZHJlbihNYXRTdGVwSGVhZGVyKSBvdmVycmlkZSBfc3RlcEhlYWRlciE6IFF1ZXJ5TGlzdDxNYXRTdGVwSGVhZGVyPjtcblxuXHQvKiogQGlnbm9yZSBGdWxsIGxpc3Qgb2Ygc3RlcHMgaW5zaWRlIHRoZSBzdGVwcGVyLCBpbmNsdWRpbmcgaW5zaWRlIG5lc3RlZCBzdGVwcGVycy4gKi9cblx0QENvbnRlbnRDaGlsZHJlbihNYXRTdGVwLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pIG92ZXJyaWRlIF9zdGVwcyE6IFF1ZXJ5TGlzdDxNYXRTdGVwPjtcblxuXHQvKiogQGlnbm9yZSBTdGVwcyB0aGF0IGJlbG9uZyB0byB0aGUgY3VycmVudCBzdGVwcGVyLCBleGNsdWRpbmcgb25lcyBmcm9tIG5lc3RlZCBzdGVwcGVycy4gKi9cblx0b3ZlcnJpZGUgcmVhZG9ubHkgc3RlcHM6IFF1ZXJ5TGlzdDxNYXRTdGVwPiA9IG5ldyBRdWVyeUxpc3Q8TWF0U3RlcD4oKTtcblxuXHQvKiogQGlnbm9yZSBDdXN0b20gaWNvbiBvdmVycmlkZXMgcGFzc2VkIGluIGJ5IHRoZSBjb25zdW1lci4gKi9cblx0QENvbnRlbnRDaGlsZHJlbihNYXRTdGVwcGVySWNvbiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSBfaWNvbnMhOiBRdWVyeUxpc3Q8TWF0U3RlcHBlckljb24+O1xuXG5cdC8qKiBAaWdub3JlIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY3VycmVudCBzdGVwIGlzIGRvbmUgdHJhbnNpdGlvbmluZyBpbi4gKi9cblx0QE91dHB1dCgpIHJlYWRvbmx5IGFuaW1hdGlvbkRvbmU6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHQvKiogV2hldGhlciByaXBwbGVzIHNob3VsZCBiZSBkaXNhYmxlZCBmb3IgdGhlIHN0ZXAgaGVhZGVycy4gKi9cblx0QElucHV0KCkgZGlzYWJsZVJpcHBsZT86IGJvb2xlYW47XG5cblx0LyoqIFRoZW1lIGNvbG9yIGZvciBhbGwgb2YgdGhlIHN0ZXBzIGluIHN0ZXBwZXIuICovXG5cdEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG5cblx0LyoqXG5cdCAqIEEgZnVuY3Rpb24gdGhhdCBjb25zdHJ1Y3RzIHRoZSB0ZXh0IGluIHRoZSBwcm9ncmVzcyBjeWNsZSBmb3IgdGhlICduYXJyb3cnIHZpZXcuXG5cdCAqXG5cdCAqIERlZmF1bHQgdmFsdWU6IGAne3NlbGVjdGVkIHN0ZXB9IG9mIHt0b3RhbCBudW1iZXIgb2Ygc3RlcHN9J2Bcblx0ICovXG5cdEBJbnB1dCgpIGluZGljYXRvckZvcm1hdHRlcjogKGluZGV4OiBudW1iZXIsIHRvdGFsOiBudW1iZXIpID0+IHN0cmluZztcblxuXHQvKiogVGhlIHRleHQgdGhhdCBwcmVjZWRlcyB0aGUgbmFtZSBvZiB0aGUgbmV4dCBzdGVwIGxhYmVsLCB1c2VkIGluIHRoZSAnbmFycm93JyB2aWV3LiAgICovXG5cdEBJbnB1dCgpIG5leHRTdGVwTGFiZWxQcmVmaXggPSAnTmV4dDogJztcblxuXHQvKiogQGlnbm9yZSBDb25zdW1lci1zcGVjaWZpZWQgdGVtcGxhdGUtcmVmcyB0byBiZSB1c2VkIHRvIG92ZXJyaWRlIHRoZSBoZWFkZXIgaWNvbnMuICovXG5cdF9pY29uT3ZlcnJpZGVzOiBSZWNvcmQ8c3RyaW5nLCBUZW1wbGF0ZVJlZjxNYXRTdGVwcGVySWNvbkNvbnRleHQ+PiA9IHt9O1xuXG5cdC8qKiBAaWdub3JlIFN0cmVhbSBvZiBhbmltYXRpb24gYGRvbmVgIGV2ZW50cyB3aGVuIHRoZSBib2R5IGV4cGFuZHMvY29sbGFwc2VzLiAqL1xuXHRyZWFkb25seSBfYW5pbWF0aW9uRG9uZSA9IG5ldyBTdWJqZWN0PEFuaW1hdGlvbkV2ZW50PigpO1xuXG5cdC8qKiBAaWdub3JlIFdoZXRoZXIgdGhlIHN0ZXBwZXIgaXMgaW4gYSBuYXJyb3cgY29udGFpbmVyICovXG5cdF9uYXJyb3cgPSBmYWxzZTtcblxuXHQvKiogQGlnbm9yZSBFbWl0cyB3aGVuZXZlciB0aGUgZHJhd2VyIGhhcyBzdGFydGVkIGFuaW1hdGluZy4gKi9cblx0cmVhZG9ubHkgX2xlZnREcmF3ZXJTdGFydGVkID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBkcmF3ZXIgaXMgZG9uZSBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF9sZWZ0RHJhd2VyRW5kZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblx0LyoqIEBpZ25vcmUgQ3VycmVudCBzdGF0ZSBvZiB0aGUgc2lkZW5hdiBhbmltYXRpb24uICovXG5cdF9sZWZ0RHJhd2VyU3RhdGU6ICdvcGVuLWluc3RhbnQnIHwgJ29wZW4nIHwgJ3ZvaWQnID0gJ29wZW4taW5zdGFudCc7XG5cblx0LyoqIEBpZ25vcmUgRW1pdHMgd2hlbmV2ZXIgdGhlIGRyYXdlciBoYXMgc3RhcnRlZCBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF90b3BEcmF3ZXJTdGFydGVkID0gbmV3IFN1YmplY3Q8QW5pbWF0aW9uRXZlbnQ+KCk7XG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBkcmF3ZXIgaXMgZG9uZSBhbmltYXRpbmcuICovXG5cdHJlYWRvbmx5IF90b3BEcmF3ZXJFbmRlZCA9IG5ldyBTdWJqZWN0PEFuaW1hdGlvbkV2ZW50PigpO1xuXHQvKiogQGlnbm9yZSBDdXJyZW50IHN0YXRlIG9mIHRoZSBzaWRlbmF2IGFuaW1hdGlvbi4gKi9cblx0X3RvcERyYXdlclN0YXRlOiAnb3Blbi1pbnN0YW50JyB8ICdvcGVuJyB8ICd2b2lkJyA9ICd2b2lkJztcblxuXHQvKiogQGlnbm9yZSAqLyByZWFkb25seSBfcHJvZ3Jlc3NDaXJjbGVTaXplID0gODA7XG5cdC8qKiBAaWdub3JlICovIHJlYWRvbmx5IF9wcm9ncmVzc0NpcmNsZVdpZHRoID0gNTtcblxuXHRAVmlld0NoaWxkKCdlZGl0SWNvblRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSBfZWRpdEljb25UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0QE9wdGlvbmFsKCkgZGlyOiBEaXJlY3Rpb25hbGl0eSxcblx0XHRjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG5cdFx0cHJpdmF0ZSBfYnVpRWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdEBJbmplY3QoRE9DVU1FTlQpIF9kb2N1bWVudDogYW55LFxuXHRcdEBTZWxmKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBzdGVwcGVyT3B0aW9uczogU3RlcHBlck9wdGlvbnMsXG5cdFx0QE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBkZWZhdWx0U3RlcHBlck9wdGlvbnM/OiBTdGVwcGVyT3B0aW9uc1xuXHQpIHtcblx0XHRzdXBlcihkaXIsIGNoYW5nZURldGVjdG9yUmVmLCBfYnVpRWxSZWYpO1xuXHRcdHRoaXMub3JpZW50YXRpb24gPSAndmVydGljYWwnO1xuXHRcdHRoaXMuaW5kaWNhdG9yRm9ybWF0dGVyID0gKGluZGV4LCB0b3RhbCkgPT4gYCR7aW5kZXh9IG9mICR7dG90YWx9YDtcblx0XHRPYmplY3Qua2V5cyhkZWZhdWx0U3RlcHBlck9wdGlvbnMgfHwge30pXG5cdFx0XHQuZmlsdGVyKGsgPT4gayAhPT0gJ2Rpc3BsYXlEZWZhdWx0SW5kaWNhdG9yVHlwZScpXG5cdFx0XHQuZm9yRWFjaCgoKGs6IGtleW9mIFN0ZXBwZXJPcHRpb25zKSA9PiAoc3RlcHBlck9wdGlvbnNba10gPSBkZWZhdWx0U3RlcHBlck9wdGlvbnMhW2tdKSkgYXMgYW55KTtcblx0fVxuXG5cdG92ZXJyaWRlIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblx0XHRzdXBlci5uZ0FmdGVyQ29udGVudEluaXQoKTtcblx0XHR0aGlzLl9pY29ucy5mb3JFYWNoKCh7IG5hbWUsIHRlbXBsYXRlUmVmIH0pID0+ICh0aGlzLl9pY29uT3ZlcnJpZGVzW25hbWVdID0gdGVtcGxhdGVSZWYpKTtcblxuXHRcdC8vIE1hcmsgdGhlIGNvbXBvbmVudCBmb3IgY2hhbmdlIGRldGVjdGlvbiB3aGVuZXZlciB0aGUgY29udGVudCBjaGlsZHJlbiBxdWVyeSBjaGFuZ2VzXG5cdFx0dGhpcy5zdGVwcy5jaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCkpLnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHR0aGlzLl9zdGF0ZUNoYW5nZWQoKTtcblx0XHR9KTtcblxuXHRcdHRoaXMuX2FuaW1hdGlvbkRvbmVcblx0XHRcdC5waXBlKFxuXHRcdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgoeCwgeSkgPT4geC5mcm9tU3RhdGUgPT09IHkuZnJvbVN0YXRlICYmIHgudG9TdGF0ZSA9PT0geS50b1N0YXRlKSxcblx0XHRcdFx0dGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZClcblx0XHRcdClcblx0XHRcdC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuXHRcdFx0XHRpZiAoKGV2ZW50LnRvU3RhdGUgYXMgU3RlcENvbnRlbnRQb3NpdGlvblN0YXRlKSA9PT0gJ2N1cnJlbnQnKSB7XG5cdFx0XHRcdFx0dGhpcy5hbmltYXRpb25Eb25lLmVtaXQoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cblx0XHR0aGlzLl9sZWZ0RHJhd2VyRW5kZWRcblx0XHRcdC5waXBlKFxuXHRcdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgoeCwgeSkgPT4geC5mcm9tU3RhdGUgPT09IHkuZnJvbVN0YXRlICYmIHgudG9TdGF0ZSA9PT0geS50b1N0YXRlKSxcblx0XHRcdFx0ZmlsdGVyKGV2ID0+IGV2LnRvU3RhdGUgPT09ICd2b2lkJyAmJiBldi50b1N0YXRlICE9PSBldi5mcm9tU3RhdGUpLFxuXHRcdFx0XHR0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkKVxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuX3RvcERyYXdlclN0YXRlID0gJ29wZW4nO1xuXHRcdFx0fSk7XG5cblx0XHR0aGlzLl90b3BEcmF3ZXJFbmRlZFxuXHRcdFx0LnBpcGUoXG5cdFx0XHRcdGRpc3RpbmN0VW50aWxDaGFuZ2VkKCh4LCB5KSA9PiB4LmZyb21TdGF0ZSA9PT0geS5mcm9tU3RhdGUgJiYgeC50b1N0YXRlID09PSB5LnRvU3RhdGUpLFxuXHRcdFx0XHRmaWx0ZXIoZXYgPT4gZXYudG9TdGF0ZSA9PT0gJ3ZvaWQnICYmIGV2LnRvU3RhdGUgIT09IGV2LmZyb21TdGF0ZSksXG5cdFx0XHRcdHRha2VVbnRpbCh0aGlzLl9kZXN0cm95ZWQpXG5cdFx0XHQpXG5cdFx0XHQuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdFx0dGhpcy5fbGVmdERyYXdlclN0YXRlID0gJ29wZW4nO1xuXHRcdFx0fSk7XG5cdFx0dGhpcy5faWNvbk92ZXJyaWRlcy5lZGl0ID0gdGhpcy5faWNvbk92ZXJyaWRlcy5lZGl0IHx8IHRoaXMuX2VkaXRJY29uVGVtcGxhdGU7XG5cdH1cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRfc3RlcElzTmF2aWdhYmxlKGluZGV4OiBudW1iZXIsIHN0ZXA6IE1hdFN0ZXApOiBib29sZWFuIHtcblx0XHRyZXR1cm4gc3RlcC5jb21wbGV0ZWQgfHwgdGhpcy5zZWxlY3RlZEluZGV4ID09PSBpbmRleCB8fCAhdGhpcy5saW5lYXI7XG5cdH1cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRfd2lkdGhDaGFuZ2VkKHc6IG51bWJlcikge1xuXHRcdGNvbnN0IG5hcnJvdyA9IE1hdGguYWJzKHcgLSBCUkVBS1BPSU5UKSA8IDIwID8gdGhpcy5fbmFycm93IDogdyA8IEJSRUFLUE9JTlQ7XG5cdFx0Y29uc3QgY2xzID0gJ2J1aS1zdGVwcGVyLW5hcnJvdyc7XG5cdFx0Y29uc3QgY2xhc3NMaXN0ID0gdGhpcy5fYnVpRWxSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3Q7XG5cdFx0aWYgKG5hcnJvdykge1xuXHRcdFx0dGhpcy5fbGVmdERyYXdlclN0YXRlID0gJ3ZvaWQnO1xuXHRcdFx0Y2xhc3NMaXN0LmFkZChjbHMpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl90b3BEcmF3ZXJTdGF0ZSA9ICd2b2lkJztcblx0XHRcdGNsYXNzTGlzdC5yZW1vdmUoY2xzKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMuX25hcnJvdyAhPT0gbmFycm93KSB7XG5cdFx0XHR0aGlzLl9uYXJyb3cgPSBuYXJyb3c7XG5cdFx0XHR0aGlzLl9zdGF0ZUNoYW5nZWQoKTtcblx0XHR9XG5cdH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJidWktc3RlcHBlci13cmFwcGVyXCIgW3N0eWxlLmRpc3BsYXldPVwiX2xlZnREcmF3ZXJTdGF0ZS5zdGFydHNXaXRoKCdvcGVuJykgPyAnZmxleCcgOiAnYmxvY2snXCIgI3NpemVNb25pdG9yPlxuXHQ8ZGl2XG5cdFx0Y2xhc3M9XCJidWktc3RlcHBlci1sZWZ0LWhlYWRlci1jb250YWluZXJcIlxuXHRcdFtAbGVmdERyYXdlcl09XCJfbGVmdERyYXdlclN0YXRlXCJcblx0XHQoQGxlZnREcmF3ZXIuc3RhcnQpPVwiX2xlZnREcmF3ZXJTdGFydGVkLm5leHQoJGV2ZW50KVwiXG5cdFx0KEBsZWZ0RHJhd2VyLmRvbmUpPVwiX2xlZnREcmF3ZXJFbmRlZC5uZXh0KCRldmVudClcIlxuXHQ+XG5cdFx0PGRpdlxuXHRcdFx0Km5nRm9yPVwibGV0IHN0ZXAgb2Ygc3RlcHM7IGxldCBpID0gaW5kZXg7IGxldCBpc0xhc3QgPSBsYXN0XCJcblx0XHRcdGNsYXNzPVwiYnVpLXN0ZXBwZXItaGVhZGVyLXdyYXBwZXJcIlxuXHRcdFx0W2NsYXNzLmJ1aS1zdGVwcGVyLXZlcnRpY2FsLWxpbmVdPVwiIWlzTGFzdFwiXG5cdFx0PlxuXHRcdFx0PG1hdC1zdGVwLWhlYWRlclxuXHRcdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLWhlYWRlclwiXG5cdFx0XHRcdChjbGljayk9XCJzdGVwLnNlbGVjdCgpXCJcblx0XHRcdFx0KGtleWRvd24pPVwiX29uS2V5ZG93bigkZXZlbnQpXCJcblx0XHRcdFx0W3RhYkluZGV4XT1cIl9nZXRGb2N1c0luZGV4KCkgPT09IGkgPyAwIDogLTFcIlxuXHRcdFx0XHRbaWRdPVwiX2dldFN0ZXBMYWJlbElkKGkpXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1wb3NpbnNldF09XCJpICsgMVwiXG5cdFx0XHRcdFthdHRyLmFyaWEtc2V0c2l6ZV09XCJzdGVwcy5sZW5ndGhcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWNvbnRyb2xzXT1cIl9nZXRTdGVwQ29udGVudElkKGkpXCJcblx0XHRcdFx0W2F0dHIuYXJpYS1zZWxlY3RlZF09XCJzZWxlY3RlZEluZGV4ID09IGlcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsXT1cInN0ZXAuYXJpYUxhYmVsIHx8IG51bGxcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiIXN0ZXAuYXJpYUxhYmVsICYmIHN0ZXAuYXJpYUxhYmVsbGVkYnkgPyBzdGVwLmFyaWFMYWJlbGxlZGJ5IDogbnVsbFwiXG5cdFx0XHRcdFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiX3N0ZXBJc05hdmlnYWJsZShpLCBzdGVwKSA/IG51bGwgOiB0cnVlXCJcblx0XHRcdFx0W2luZGV4XT1cImlcIlxuXHRcdFx0XHRbc3RhdGVdPVwiX2dldEluZGljYXRvclR5cGUoaSwgc3RlcC5zdGF0ZSlcIlxuXHRcdFx0XHRbbGFiZWxdPVwic3RlcC5zdGVwTGFiZWwgfHwgc3RlcC5sYWJlbFwiXG5cdFx0XHRcdFtzZWxlY3RlZF09XCJzZWxlY3RlZEluZGV4ID09PSBpXCJcblx0XHRcdFx0W2FjdGl2ZV09XCJfc3RlcElzTmF2aWdhYmxlKGksIHN0ZXApXCJcblx0XHRcdFx0W29wdGlvbmFsXT1cInN0ZXAub3B0aW9uYWxcIlxuXHRcdFx0XHRbZXJyb3JNZXNzYWdlXT1cInN0ZXAuZXJyb3JNZXNzYWdlXCJcblx0XHRcdFx0W2ljb25PdmVycmlkZXNdPVwiX2ljb25PdmVycmlkZXNcIlxuXHRcdFx0XHRbZGlzYWJsZVJpcHBsZV09XCJkaXNhYmxlUmlwcGxlIHx8ICFfc3RlcElzTmF2aWdhYmxlKGksIHN0ZXApXCJcblx0XHRcdFx0W2NvbG9yXT1cInN0ZXAuY29sb3IgfHwgY29sb3JcIlxuXHRcdFx0PjwvbWF0LXN0ZXAtaGVhZGVyPlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cblxuXHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItY29udGVudC1jb250YWluZXJcIiBbYnVpU2l6aW5nQnldPVwic2l6ZU1vbml0b3JcIiAoYnVpUmVzaXplZCk9XCJfd2lkdGhDaGFuZ2VkKCRldmVudC53aWR0aClcIj5cblx0XHQ8ZGl2XG5cdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItY29udGFpbmVyXCJcblx0XHRcdFtjbGFzcy5idWktc3RlcHBlci1oZWFkZXItYWN0aXZlXT1cIl9sZWZ0RHJhd2VyU3RhdGUgPT09ICd2b2lkJ1wiXG5cdFx0XHRbQHRvcERyYXdlcl09XCJfdG9wRHJhd2VyU3RhdGVcIlxuXHRcdFx0KEB0b3BEcmF3ZXIuc3RhcnQpPVwiX3RvcERyYXdlclN0YXJ0ZWQubmV4dCgkZXZlbnQpXCJcblx0XHRcdChAdG9wRHJhd2VyLmRvbmUpPVwiX3RvcERyYXdlckVuZGVkLm5leHQoJGV2ZW50KVwiXG5cdFx0PlxuXHRcdFx0PGRpdlxuXHRcdFx0XHRjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItcHJvZ3Jlc3NcIlxuXHRcdFx0XHRbc3R5bGVdPVwiJ2hlaWdodDonICsgX3Byb2dyZXNzQ2lyY2xlU2l6ZSArICdweDsgd2lkdGg6JyArIF9wcm9ncmVzc0NpcmNsZVNpemUgKyAncHgnXCJcblx0XHRcdD5cblx0XHRcdFx0PG1hdC1wcm9ncmVzcy1zcGlubmVyXG5cdFx0XHRcdFx0Y2xhc3M9XCJidWktcHJvZ3Jlc3Mtc3Bpbm5lci1saWdodFwiXG5cdFx0XHRcdFx0W3ZhbHVlXT1cIjEwMFwiXG5cdFx0XHRcdFx0W2RpYW1ldGVyXT1cIl9wcm9ncmVzc0NpcmNsZVNpemVcIlxuXHRcdFx0XHRcdFtzdHJva2VXaWR0aF09XCJfcHJvZ3Jlc3NDaXJjbGVXaWR0aFwiXG5cdFx0XHRcdD48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxuXHRcdFx0XHQ8bWF0LXByb2dyZXNzLXNwaW5uZXJcblx0XHRcdFx0XHRbY29sb3JdPVwiY29sb3JcIlxuXHRcdFx0XHRcdFt2YWx1ZV09XCIoKHNlbGVjdGVkSW5kZXggKyAxKSAqIDEwMCkgLyBzdGVwcy5sZW5ndGhcIlxuXHRcdFx0XHRcdFtkaWFtZXRlcl09XCJfcHJvZ3Jlc3NDaXJjbGVTaXplXCJcblx0XHRcdFx0XHRbc3Ryb2tlV2lkdGhdPVwiX3Byb2dyZXNzQ2lyY2xlV2lkdGhcIlxuXHRcdFx0XHQ+PC9tYXQtcHJvZ3Jlc3Mtc3Bpbm5lcj5cblx0XHRcdFx0PHNwYW4gY2xhc3M9XCJidWktc3RlcHBlci10b3AtaGVhZGVyLWluZGljYXRvclwiPlxuXHRcdFx0XHRcdHt7IGluZGljYXRvckZvcm1hdHRlcihzZWxlY3RlZEluZGV4ICsgMSwgc3RlcHMubGVuZ3RoKSB9fVxuXHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJidWktc3RlcHBlci10b3AtaGVhZGVyLXRpdGxlcy13cmFwcGVyXCIgKm5nSWY9XCJzZWxlY3RlZFwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItdG9wLWhlYWRlci10aXRsZVwiPlxuXHRcdFx0XHRcdDxuZy10ZW1wbGF0ZVxuXHRcdFx0XHRcdFx0W25nVGVtcGxhdGVPdXRsZXRdPVwibGFiZWxUZW1wbGF0ZVwiXG5cdFx0XHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHNlbGVjdGVkIH1cIlxuXHRcdFx0XHRcdD48L25nLXRlbXBsYXRlPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cImJ1aS1zdGVwcGVyLXRvcC1oZWFkZXItdGl0bGUtbmV4dFwiICpuZ0lmPVwic2VsZWN0ZWRJbmRleCA8IHN0ZXBzLmxlbmd0aCAtIDFcIj5cblx0XHRcdFx0XHR7eyBuZXh0U3RlcExhYmVsUHJlZml4IH19XG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlXG5cdFx0XHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJsYWJlbFRlbXBsYXRlXCJcblx0XHRcdFx0XHRcdFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogc3RlcHMuZ2V0KHNlbGVjdGVkSW5kZXggKyAxKSB9XCJcblx0XHRcdFx0XHQ+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItY29udGVudC13cmFwcGVyXCI+XG5cdFx0XHQ8ZGl2XG5cdFx0XHRcdCpuZ0Zvcj1cImxldCBzdGVwIG9mIHN0ZXBzOyBsZXQgaSA9IGluZGV4XCJcblx0XHRcdFx0Y2xhc3M9XCJidWktc3RlcHBlci1jb250ZW50XCJcblx0XHRcdFx0cm9sZT1cInRhYnBhbmVsXCJcblx0XHRcdFx0W0BzdGVwVHJhbnNpdGlvbl09XCJfZ2V0QW5pbWF0aW9uRGlyZWN0aW9uKGkpXCJcblx0XHRcdFx0KEBzdGVwVHJhbnNpdGlvbi5kb25lKT1cIl9hbmltYXRpb25Eb25lLm5leHQoJGV2ZW50KVwiXG5cdFx0XHRcdFtpZF09XCJfZ2V0U3RlcENvbnRlbnRJZChpKVwiXG5cdFx0XHRcdFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJfZ2V0U3RlcExhYmVsSWQoaSlcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWV4cGFuZGVkXT1cInNlbGVjdGVkSW5kZXggPT09IGlcIlxuXHRcdFx0PlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiYnVpLXN0ZXBwZXItY29udGVudC1oZWFkZXItbGFiZWxcIiAqbmdJZj1cIiFfbmFycm93XCI+XG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxhYmVsVGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHN0ZXAgfVwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwic3RlcC5jb250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2xhYmVsVGVtcGxhdGUgbGV0LXN0ZXA+XG5cdDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJzdGVwLnN0ZXBMYWJlbFwiIFtuZ0lmRWxzZV09XCJzdHJpbmdMYWJlbFRlbXBsXCI+XG5cdFx0PG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInN0ZXAuc3RlcExhYmVsLnRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cblx0PC9uZy10ZW1wbGF0ZT5cblx0PG5nLXRlbXBsYXRlICNzdHJpbmdMYWJlbFRlbXBsPnt7IHN0ZXAubGFiZWwgfX08L25nLXRlbXBsYXRlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNlZGl0SWNvblRlbXBsYXRlIGxldC1pbmRleD1cImluZGV4XCI+XG5cdDxzcGFuPnt7IGluZGV4ICsgMSB9fTwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -3,6 +3,8 @@ import { Component, ChangeDetectionStrategy, Input, NgModule } from '@angular/co
|
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
4
|
import * as i1 from '@angular/material/card';
|
|
5
5
|
import { MatCardModule } from '@angular/material/card';
|
|
6
|
+
import * as i2 from '@bravura/ui/behavior';
|
|
7
|
+
import { BehaviorModule } from '@bravura/ui/behavior';
|
|
6
8
|
|
|
7
9
|
/**
|
|
8
10
|
* A `bui-panel` consists of a `mat-card` and a tinted backdrop.
|
|
@@ -11,12 +13,20 @@ import { MatCardModule } from '@angular/material/card';
|
|
|
11
13
|
* The backdrop is nearly transparent, blending the theme palette `color`
|
|
12
14
|
* and the effective background color of the DOM ancestors.
|
|
13
15
|
*
|
|
14
|
-
* `bui-panel` supports all the content child directives of `mat-card`.
|
|
16
|
+
* `bui-panel` supports all the content child directives of `mat-card` as well as `bui-panel-section`.
|
|
17
|
+
*
|
|
18
|
+
* `bui-panel-section`s are subdivisions of `bui-panel` that rearrange their orientation based on the width of the container element.
|
|
15
19
|
*
|
|
16
20
|
*/
|
|
17
21
|
class PanelComponent {
|
|
18
22
|
constructor(_cd) {
|
|
19
23
|
this._cd = _cd;
|
|
24
|
+
/**
|
|
25
|
+
* The width of the host element, at which the panel section container will change its orientation.
|
|
26
|
+
*/
|
|
27
|
+
this.breakpoint = 600;
|
|
28
|
+
/** @ignore */
|
|
29
|
+
this._width = 600;
|
|
20
30
|
this._color = 'primary';
|
|
21
31
|
this._appearance = 'flat';
|
|
22
32
|
}
|
|
@@ -47,14 +57,21 @@ class PanelComponent {
|
|
|
47
57
|
this._cd.markForCheck();
|
|
48
58
|
}
|
|
49
59
|
ngOnInit() { }
|
|
60
|
+
/** @ignore */
|
|
61
|
+
_resized(width) {
|
|
62
|
+
this._width = width;
|
|
63
|
+
this._cd.markForCheck();
|
|
64
|
+
}
|
|
50
65
|
}
|
|
51
66
|
PanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
-
PanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PanelComponent, selector: "bui-panel", inputs: { backdropClass: "backdropClass", cardClass: "cardClass", color: "color", appearance: "appearance" }, host: { classAttribute: "bui-panel bui-host" }, ngImport: i0, template: "<div
|
|
67
|
+
PanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PanelComponent, selector: "bui-panel", inputs: { backdropClass: "backdropClass", cardClass: "cardClass", color: "color", appearance: "appearance", breakpoint: "breakpoint" }, host: { properties: { "class.bui-panel-vertical": "_width < breakpoint", "class.bui-panel-horizontal": "_width >= breakpoint" }, classAttribute: "bui-panel bui-host" }, ngImport: i0, template: "<div\n\tclass=\"bui-panel-backdrop {{ backdropClass }} bui-bg-{{ color || 'none' }}\"\n\t[buiSizingBy]=\"'parent'\"\n\t(buiResized)=\"_resized($event.width)\"\n></div>\n<mat-card\n\tclass=\"bui-border-{{ color || 'none' }} {{ cardClass }} {{\n\t\tappearance === 'flat' ? 'mat-elevation-z' : appearance === 'outlined' ? 'mat-elevation-z bui-panel-border' : ''\n\t}}\"\n>\n\t<ng-content></ng-content>\n</mat-card>\n", styles: [":host{position:relative}:host .bui-panel-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:4px;opacity:.1}:host .bui-panel-border{border-width:1px;border-style:solid}:host ::ng-deep .bui-panel-section-container{display:flex;box-sizing:border-box!important}:host(:not([hidden])){display:block}:host(:not([hidden])) .mat-card{background-color:transparent}:host(.bui-panel-horizontal) ::ng-deep .bui-panel-section-container{flex-direction:row}:host(.bui-panel-vertical) ::ng-deep .bui-panel-section-container{flex-direction:column}\n"], dependencies: [{ kind: "component", type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i2.SizingDirective, selector: "[buiSizing],[buiResized],[buiSizingBy],[buiFixedHeight]", inputs: ["buiSizing", "sizingBy", "buiSizingBy", "buiFixedHeight"], outputs: ["buiResized"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
53
68
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelComponent, decorators: [{
|
|
54
69
|
type: Component,
|
|
55
70
|
args: [{ selector: 'bui-panel', host: {
|
|
56
|
-
class: 'bui-panel bui-host'
|
|
57
|
-
|
|
71
|
+
class: 'bui-panel bui-host',
|
|
72
|
+
'[class.bui-panel-vertical]': `_width < breakpoint`,
|
|
73
|
+
'[class.bui-panel-horizontal]': `_width >= breakpoint`
|
|
74
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n\tclass=\"bui-panel-backdrop {{ backdropClass }} bui-bg-{{ color || 'none' }}\"\n\t[buiSizingBy]=\"'parent'\"\n\t(buiResized)=\"_resized($event.width)\"\n></div>\n<mat-card\n\tclass=\"bui-border-{{ color || 'none' }} {{ cardClass }} {{\n\t\tappearance === 'flat' ? 'mat-elevation-z' : appearance === 'outlined' ? 'mat-elevation-z bui-panel-border' : ''\n\t}}\"\n>\n\t<ng-content></ng-content>\n</mat-card>\n", styles: [":host{position:relative}:host .bui-panel-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:4px;opacity:.1}:host .bui-panel-border{border-width:1px;border-style:solid}:host ::ng-deep .bui-panel-section-container{display:flex;box-sizing:border-box!important}:host(:not([hidden])){display:block}:host(:not([hidden])) .mat-card{background-color:transparent}:host(.bui-panel-horizontal) ::ng-deep .bui-panel-section-container{flex-direction:row}:host(.bui-panel-vertical) ::ng-deep .bui-panel-section-container{flex-direction:column}\n"] }]
|
|
58
75
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { backdropClass: [{
|
|
59
76
|
type: Input
|
|
60
77
|
}], cardClass: [{
|
|
@@ -63,19 +80,60 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
63
80
|
type: Input
|
|
64
81
|
}], appearance: [{
|
|
65
82
|
type: Input
|
|
83
|
+
}], breakpoint: [{
|
|
84
|
+
type: Input
|
|
66
85
|
}] } });
|
|
67
86
|
|
|
87
|
+
const CONTAINER_PREFIX = 'bui-panel-section-container';
|
|
88
|
+
const COUNT_ATTR = 'bui-section-count';
|
|
89
|
+
/**
|
|
90
|
+
* `bui-panel-section`s are subdivisions of `bui-panel` that rearrange their orientation based on the width of the container element.
|
|
91
|
+
*/
|
|
92
|
+
class PanelSectionComponent {
|
|
93
|
+
constructor(_elementRef) {
|
|
94
|
+
this._elementRef = _elementRef;
|
|
95
|
+
}
|
|
96
|
+
ngOnInit() {
|
|
97
|
+
this._parentElement = this._elementRef.nativeElement.parentElement;
|
|
98
|
+
this._parentElement.classList.add(CONTAINER_PREFIX);
|
|
99
|
+
this._calcCount(1);
|
|
100
|
+
}
|
|
101
|
+
ngOnDestroy() {
|
|
102
|
+
this._calcCount(-1);
|
|
103
|
+
}
|
|
104
|
+
_calcCount(delta) {
|
|
105
|
+
let count = this._parentElement.getAttribute(COUNT_ATTR);
|
|
106
|
+
if (count) {
|
|
107
|
+
this._parentElement.classList.remove(`${CONTAINER_PREFIX}-${count}`);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
count = '0';
|
|
111
|
+
}
|
|
112
|
+
count = `${Math.max(Number(count) + delta, 0)}`;
|
|
113
|
+
this._parentElement.setAttribute(COUNT_ATTR, count);
|
|
114
|
+
this._parentElement.classList.add(`${CONTAINER_PREFIX}-${count}`);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
PanelSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelSectionComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
118
|
+
PanelSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PanelSectionComponent, selector: "bui-panel-section", host: { classAttribute: "bui-panel-section" }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{flex-grow:1}:host-context(.bui-panel-horizontal) :host:not(:first-child){border-inline-start:1px solid rgba(128,128,128,.2);padding-inline-start:16px}:host-context(.bui-panel-horizontal) :host:not(:last-child){padding-inline-end:16px}:host-context(.bui-panel-vertical) :host:not(:first-child){border-top:1px solid rgba(128,128,128,.2);padding-top:16px}:host-context(.bui-panel-vertical) :host:not(:last-child){padding-bottom:16px}:host-context(.bui-panel-horizontal .bui-panel-section-container-2){flex-basis:50%}:host-context(.bui-panel-horizontal .bui-panel-section-container-3){flex-basis:33.3333333333%}:host-context(.bui-panel-horizontal .bui-panel-section-container-4){flex-basis:25%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelSectionComponent, decorators: [{
|
|
120
|
+
type: Component,
|
|
121
|
+
args: [{ selector: 'bui-panel-section', host: {
|
|
122
|
+
class: 'bui-panel-section'
|
|
123
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [":host{flex-grow:1}:host-context(.bui-panel-horizontal) :host:not(:first-child){border-inline-start:1px solid rgba(128,128,128,.2);padding-inline-start:16px}:host-context(.bui-panel-horizontal) :host:not(:last-child){padding-inline-end:16px}:host-context(.bui-panel-vertical) :host:not(:first-child){border-top:1px solid rgba(128,128,128,.2);padding-top:16px}:host-context(.bui-panel-vertical) :host:not(:last-child){padding-bottom:16px}:host-context(.bui-panel-horizontal .bui-panel-section-container-2){flex-basis:50%}:host-context(.bui-panel-horizontal .bui-panel-section-container-3){flex-basis:33.3333333333%}:host-context(.bui-panel-horizontal .bui-panel-section-container-4){flex-basis:25%}\n"] }]
|
|
124
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
125
|
+
|
|
68
126
|
class PanelModule {
|
|
69
127
|
}
|
|
70
128
|
PanelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
71
|
-
PanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, declarations: [PanelComponent], imports: [CommonModule, MatCardModule], exports: [MatCardModule, PanelComponent] });
|
|
72
|
-
PanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, imports: [CommonModule, MatCardModule, MatCardModule] });
|
|
129
|
+
PanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, declarations: [PanelComponent, PanelSectionComponent], imports: [CommonModule, MatCardModule, BehaviorModule], exports: [MatCardModule, PanelComponent, PanelSectionComponent] });
|
|
130
|
+
PanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, imports: [CommonModule, MatCardModule, BehaviorModule, MatCardModule] });
|
|
73
131
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PanelModule, decorators: [{
|
|
74
132
|
type: NgModule,
|
|
75
133
|
args: [{
|
|
76
|
-
declarations: [PanelComponent],
|
|
77
|
-
imports: [CommonModule, MatCardModule],
|
|
78
|
-
exports: [MatCardModule, PanelComponent]
|
|
134
|
+
declarations: [PanelComponent, PanelSectionComponent],
|
|
135
|
+
imports: [CommonModule, MatCardModule, BehaviorModule],
|
|
136
|
+
exports: [MatCardModule, PanelComponent, PanelSectionComponent]
|
|
79
137
|
}]
|
|
80
138
|
}] });
|
|
81
139
|
|
|
@@ -83,5 +141,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
|
|
|
83
141
|
* Generated bundle index. Do not edit.
|
|
84
142
|
*/
|
|
85
143
|
|
|
86
|
-
export { PanelComponent, PanelModule };
|
|
144
|
+
export { PanelComponent, PanelModule, PanelSectionComponent };
|
|
87
145
|
//# sourceMappingURL=bravura-ui-panel.mjs.map
|