@sarasanalytics-com/design-system 0.0.139 → 0.0.141
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/esm2022/interfaces/form-layout.interface.mjs +1 -1
- package/esm2022/interfaces/icon-interface.mjs +1 -1
- package/esm2022/lib/accordion/accordion.component.mjs +2 -2
- package/esm2022/lib/button/button.component.mjs +1 -1
- package/esm2022/lib/card/card.component.mjs +2 -2
- package/esm2022/lib/card/checkbox-card/checkbox-card.component.mjs +2 -2
- package/esm2022/lib/card/guide-card/guide-card.component.mjs +1 -1
- package/esm2022/lib/card/menu-card/menu-card.component.mjs +2 -2
- package/esm2022/lib/card-carousel/card-carousel.component.mjs +2 -2
- package/esm2022/lib/categories-nav/categories-nav.component.mjs +22 -5
- package/esm2022/lib/data-grid/data-grid.component.mjs +24 -3
- package/esm2022/lib/dialog/dialog.component.mjs +3 -3
- package/esm2022/lib/filter/filter.component.mjs +2 -2
- package/esm2022/lib/form-input/form-input.component.mjs +13 -3
- package/esm2022/lib/form-select/form-select.component.mjs +3 -3
- package/esm2022/lib/grid-cell/grid-cell.component.mjs +8 -3
- package/esm2022/lib/header/header.component.mjs +3 -3
- package/esm2022/lib/icon/icon.component.mjs +4 -2
- package/esm2022/lib/layout-section/layout-section.component.mjs +2 -2
- package/esm2022/lib/left-nav/left-nav.component.mjs +2 -2
- package/esm2022/lib/list/list.component.mjs +2 -2
- package/esm2022/lib/menu/menu-list/menu-item.component.mjs +2 -2
- package/esm2022/lib/menu/menu.component.mjs +2 -2
- package/esm2022/lib/message-banner/message-banner.component.mjs +2 -2
- package/esm2022/lib/message-banner-v2/message-banner-v2.component.mjs +46 -29
- package/esm2022/lib/mini-card/mini-card.component.mjs +2 -2
- package/esm2022/lib/toast/toast.component.mjs +1 -1
- package/esm2022/lib/tool-tip/tool-tip.component.mjs +3 -3
- package/fesm2022/sarasanalytics-com-design-system.mjs +133 -63
- package/fesm2022/sarasanalytics-com-design-system.mjs.map +1 -1
- package/interfaces/form-layout.interface.d.ts +2 -7
- package/interfaces/icon-interface.d.ts +1 -0
- package/lib/categories-nav/categories-nav.component.d.ts +36 -3
- package/lib/data-grid/data-grid.component.d.ts +6 -1
- package/lib/form-input/form-input.component.d.ts +3 -0
- package/lib/icon/icon.component.d.ts +2 -1
- package/lib/message-banner-v2/message-banner-v2.component.d.ts +6 -3
- package/package.json +1 -1
|
@@ -1,27 +1,44 @@
|
|
|
1
1
|
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ButtonComponent } from '../button/button.component';
|
|
4
|
+
import { IconComponent } from '../icon/icon.component';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
6
|
import * as i1 from "@angular/common";
|
|
5
7
|
export class CategoriesNavComponent {
|
|
6
8
|
constructor() {
|
|
7
|
-
this.
|
|
9
|
+
this.config = { categories: [] };
|
|
8
10
|
this.selectedCategoryId = '';
|
|
9
11
|
this.categorySelected = new EventEmitter();
|
|
12
|
+
this.helpButtonClicked = new EventEmitter();
|
|
13
|
+
}
|
|
14
|
+
get categories() {
|
|
15
|
+
return this.config?.categories || [];
|
|
16
|
+
}
|
|
17
|
+
get title() {
|
|
18
|
+
return this.config?.title || 'Categories:';
|
|
19
|
+
}
|
|
20
|
+
get helpSection() {
|
|
21
|
+
return this.config?.helpSection;
|
|
10
22
|
}
|
|
11
23
|
onCategoryClick(category) {
|
|
12
24
|
this.categorySelected.emit(category);
|
|
13
25
|
}
|
|
26
|
+
onHelpButtonClick() {
|
|
27
|
+
this.helpButtonClicked.emit();
|
|
28
|
+
}
|
|
14
29
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CategoriesNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: CategoriesNavComponent, isStandalone: true, selector: "sa-categories-nav", inputs: {
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: CategoriesNavComponent, isStandalone: true, selector: "sa-categories-nav", inputs: { config: "config", selectedCategoryId: "selectedCategoryId" }, outputs: { categorySelected: "categorySelected", helpButtonClicked: "helpButtonClicked" }, ngImport: i0, template: "<div class=\"categories-nav\">\r\n <div class=\"categories-header\">\r\n <h3>{{ title }}</h3>\r\n </div>\r\n <div class=\"categories-list\">\r\n <div \r\n *ngFor=\"let category of categories\" \r\n class=\"category-item\"\r\n [class.selected]=\"category.id === selectedCategoryId\"\r\n (click)=\"onCategoryClick(category)\">\r\n <span class=\"category-label\">{{ category.label }}</span>\r\n </div>\r\n </div>\r\n\r\n <!-- Configurable Help Section -->\r\n <div *ngIf=\"helpSection?.enabled\" class=\"help-section\">\r\n <div class=\"help-content\">\r\n <div class=\"help-icon\" *ngIf=\"helpSection.icon\">\r\n <sa-icon [icon]=\"helpSection.icon\" [size]=\"'20'\"></sa-icon>\r\n </div>\r\n <div class=\"help-text\" *ngIf=\"helpSection.title\">\r\n {{ helpSection.title }}\r\n </div>\r\n </div>\r\n <sa-button\r\n *ngIf=\"helpSection.button?.text\"\r\n [size]=\"helpSection.button?.size\"\r\n [type]=\"helpSection.button?.type\"\r\n [id]=\"helpSection.button?.id\"\r\n [state]=\"helpSection.button?.state\"\r\n [text]=\"helpSection.button?.text\"\r\n [ImagePath]=\"helpSection.button?.ImagePath\"\r\n [icon]=\"helpSection.button?.icon\"\r\n [iconPosition]=\"helpSection.button?.iconPosition\"\r\n [href]=\"helpSection.button?.href\"\r\n [hrefTarget]=\"helpSection.button?.hrefTarget\"\r\n [width]=\"helpSection.button?.width\"\r\n [isSubmit]=\"helpSection.button?.isSubmit\"\r\n [buttonIconSize]=\"helpSection.button?.buttonIconSize\"\r\n [showSpinner]=\"helpSection.button?.showSpinner\"\r\n (onClickEvent)=\"onHelpButtonClick()\">\r\n </sa-button>\r\n </div>\r\n</div>\r\n", styles: [".categories-nav{display:flex;flex-direction:column;width:296px;height:100%;max-height:100%;min-height:0;padding:0;align-items:flex-start;gap:var(--small-16px, 16px);flex-shrink:0;border-radius:var(--Small-8px, 8px);border:1px solid var(--Grey-100, #EAECF0);background:var(--Structural-White, #FFF);overflow:hidden;box-sizing:border-box}.categories-header{display:flex;padding:var(--Medium-20px, 20px) var(--Medium-20px, 20px) 0px var(--Medium-20px, 20px);align-items:flex-start;gap:10px;align-self:stretch}.categories-header h3{margin:0;color:var(--Text-High-Emphasis, #1C1B20);font-family:var(--font-family, Roboto);font-size:var(--small-16px, 16px);font-style:normal;font-weight:600;line-height:24px;letter-spacing:.15px}.categories-list{display:flex;flex-direction:column;align-items:flex-start;gap:var(--small-8px, 8px);align-self:stretch;padding:0px var(--small-20px, 20px);overflow-y:auto}.category-item{display:flex;gap:10px;align-items:center;padding:8px;gap:8px;align-self:stretch;border-radius:var(--small-8px, 4px);cursor:pointer}.category-item:hover:not(.selected){background:var(--primary-50, #F4EBFF)}.category-item.selected{background:var(--primary-500, #7F56D9)}.category-label{flex:1 0 0;color:var(--text-medium-emphasis, #6D6979);font-family:var(--font-family, Roboto);font-size:var(--small-14px, 14px);font-style:normal;font-weight:400;line-height:var(--medium-20px, 20px);letter-spacing:.25px}.category-item.selected .category-label{font-family:var(--font-family, Roboto);font-size:14px;color:var(--Structural-White, #FFF);font-style:normal;font-weight:500;line-height:20px;letter-spacing:.1px}.help-section{display:flex;padding:var(--small-16px, 16px) var(--small-8px, 8px);flex-direction:column;align-items:flex-start;gap:var(--Small-12px, 12px);align-self:stretch;border-radius:var(--small-8px, 8px);border:1px solid var(--grey-100, #EAECF0);background:var(--structural-neutral3, #FAFAFA);margin:0px var(--Small-12px, 20px) 0px var(--Small-12px, 20px)}.help-content{display:flex;align-items:center;gap:var(--Small-4px, 8px)}.help-icon{width:20px;height:20px;flex-shrink:0}.help-icon img{width:24px;height:24px;flex-shrink:0}.help-text{color:var(--Text-High-Emphasis, #1C1B20);text-align:center;font-family:var(--font-family, Roboto);font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "icon", "iconPosition", "href", "hrefTarget", "width", "isSubmit", "buttonIconSize", "showSpinner"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "icon", "size", "color", "iconPath", "iconUrl", "customClass", "href", "hrefTarget", "iconPosition"], outputs: ["onClickEvent"] }] }); }
|
|
16
31
|
}
|
|
17
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CategoriesNavComponent, decorators: [{
|
|
18
33
|
type: Component,
|
|
19
|
-
args: [{ selector: 'sa-categories-nav', standalone: true, imports: [CommonModule], template: "<div class=\"categories-nav\">\r\n <div class=\"categories-header\">\r\n <h3>
|
|
20
|
-
}], propDecorators: {
|
|
34
|
+
args: [{ selector: 'sa-categories-nav', standalone: true, imports: [CommonModule, ButtonComponent, IconComponent], template: "<div class=\"categories-nav\">\r\n <div class=\"categories-header\">\r\n <h3>{{ title }}</h3>\r\n </div>\r\n <div class=\"categories-list\">\r\n <div \r\n *ngFor=\"let category of categories\" \r\n class=\"category-item\"\r\n [class.selected]=\"category.id === selectedCategoryId\"\r\n (click)=\"onCategoryClick(category)\">\r\n <span class=\"category-label\">{{ category.label }}</span>\r\n </div>\r\n </div>\r\n\r\n <!-- Configurable Help Section -->\r\n <div *ngIf=\"helpSection?.enabled\" class=\"help-section\">\r\n <div class=\"help-content\">\r\n <div class=\"help-icon\" *ngIf=\"helpSection.icon\">\r\n <sa-icon [icon]=\"helpSection.icon\" [size]=\"'20'\"></sa-icon>\r\n </div>\r\n <div class=\"help-text\" *ngIf=\"helpSection.title\">\r\n {{ helpSection.title }}\r\n </div>\r\n </div>\r\n <sa-button\r\n *ngIf=\"helpSection.button?.text\"\r\n [size]=\"helpSection.button?.size\"\r\n [type]=\"helpSection.button?.type\"\r\n [id]=\"helpSection.button?.id\"\r\n [state]=\"helpSection.button?.state\"\r\n [text]=\"helpSection.button?.text\"\r\n [ImagePath]=\"helpSection.button?.ImagePath\"\r\n [icon]=\"helpSection.button?.icon\"\r\n [iconPosition]=\"helpSection.button?.iconPosition\"\r\n [href]=\"helpSection.button?.href\"\r\n [hrefTarget]=\"helpSection.button?.hrefTarget\"\r\n [width]=\"helpSection.button?.width\"\r\n [isSubmit]=\"helpSection.button?.isSubmit\"\r\n [buttonIconSize]=\"helpSection.button?.buttonIconSize\"\r\n [showSpinner]=\"helpSection.button?.showSpinner\"\r\n (onClickEvent)=\"onHelpButtonClick()\">\r\n </sa-button>\r\n </div>\r\n</div>\r\n", styles: [".categories-nav{display:flex;flex-direction:column;width:296px;height:100%;max-height:100%;min-height:0;padding:0;align-items:flex-start;gap:var(--small-16px, 16px);flex-shrink:0;border-radius:var(--Small-8px, 8px);border:1px solid var(--Grey-100, #EAECF0);background:var(--Structural-White, #FFF);overflow:hidden;box-sizing:border-box}.categories-header{display:flex;padding:var(--Medium-20px, 20px) var(--Medium-20px, 20px) 0px var(--Medium-20px, 20px);align-items:flex-start;gap:10px;align-self:stretch}.categories-header h3{margin:0;color:var(--Text-High-Emphasis, #1C1B20);font-family:var(--font-family, Roboto);font-size:var(--small-16px, 16px);font-style:normal;font-weight:600;line-height:24px;letter-spacing:.15px}.categories-list{display:flex;flex-direction:column;align-items:flex-start;gap:var(--small-8px, 8px);align-self:stretch;padding:0px var(--small-20px, 20px);overflow-y:auto}.category-item{display:flex;gap:10px;align-items:center;padding:8px;gap:8px;align-self:stretch;border-radius:var(--small-8px, 4px);cursor:pointer}.category-item:hover:not(.selected){background:var(--primary-50, #F4EBFF)}.category-item.selected{background:var(--primary-500, #7F56D9)}.category-label{flex:1 0 0;color:var(--text-medium-emphasis, #6D6979);font-family:var(--font-family, Roboto);font-size:var(--small-14px, 14px);font-style:normal;font-weight:400;line-height:var(--medium-20px, 20px);letter-spacing:.25px}.category-item.selected .category-label{font-family:var(--font-family, Roboto);font-size:14px;color:var(--Structural-White, #FFF);font-style:normal;font-weight:500;line-height:20px;letter-spacing:.1px}.help-section{display:flex;padding:var(--small-16px, 16px) var(--small-8px, 8px);flex-direction:column;align-items:flex-start;gap:var(--Small-12px, 12px);align-self:stretch;border-radius:var(--small-8px, 8px);border:1px solid var(--grey-100, #EAECF0);background:var(--structural-neutral3, #FAFAFA);margin:0px var(--Small-12px, 20px) 0px var(--Small-12px, 20px)}.help-content{display:flex;align-items:center;gap:var(--Small-4px, 8px)}.help-icon{width:20px;height:20px;flex-shrink:0}.help-icon img{width:24px;height:24px;flex-shrink:0}.help-text{color:var(--Text-High-Emphasis, #1C1B20);text-align:center;font-family:var(--font-family, Roboto);font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"] }]
|
|
35
|
+
}], propDecorators: { config: [{
|
|
21
36
|
type: Input
|
|
22
37
|
}], selectedCategoryId: [{
|
|
23
38
|
type: Input
|
|
24
39
|
}], categorySelected: [{
|
|
25
40
|
type: Output
|
|
41
|
+
}], helpButtonClicked: [{
|
|
42
|
+
type: Output
|
|
26
43
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcmllcy1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9jYXRlZ29yaWVzLW5hdi9jYXRlZ29yaWVzLW5hdi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2NhdGVnb3JpZXMtbmF2L2NhdGVnb3JpZXMtbmF2LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQThDdkQsTUFBTSxPQUFPLHNCQUFzQjtJQVBuQztRQVFXLFdBQU0sR0FBd0IsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDakQsdUJBQWtCLEdBQVcsRUFBRSxDQUFDO1FBQy9CLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBQ3BELHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7S0FxQnhEO0lBbkJDLElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxJQUFJLGFBQWEsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQztJQUNsQyxDQUFDO0lBRUQsZUFBZSxDQUFDLFFBQXNCO1FBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDOzhHQXhCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixnUENqRG5DLDRxREE0Q0EsNjBFRENZLFlBQVksZ1FBQUUsZUFBZSx3UkFBRSxhQUFhOzsyRkFJM0Msc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsQ0FBQzs4QkFLOUMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDSSxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEljb25OYW1lIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9pY29uLWludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENhdGVnb3J5SXRlbSB7XHJcbiAgaWQ6IHN0cmluZztcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGljb24/OiBJY29uTmFtZSB8IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBIZWxwQnV0dG9uQ29uZmlnIHtcclxuICBpZD86IHN0cmluZyB8IG51bWJlcjtcclxuICB0eXBlPzogc3RyaW5nO1xyXG4gIHN0YXRlPzogc3RyaW5nO1xyXG4gIHNpemU/OiBzdHJpbmc7XHJcbiAgdGV4dD86IHN0cmluZyB8IG51bWJlcjtcclxuICBJbWFnZVBhdGg/OiBzdHJpbmc7XHJcbiAgaWNvbj86IEljb25OYW1lIHwgc3RyaW5nO1xyXG4gIGljb25Qb3NpdGlvbj86IHN0cmluZztcclxuICBocmVmPzogc3RyaW5nO1xyXG4gIGhyZWZUYXJnZXQ/OiBzdHJpbmc7XHJcbiAgd2lkdGg/OiBzdHJpbmc7XHJcbiAgaXNTdWJtaXQ/OiBib29sZWFuO1xyXG4gIGJ1dHRvbkljb25TaXplPzogc3RyaW5nO1xyXG4gIHNob3dTcGlubmVyPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBIZWxwU2VjdGlvbkNvbmZpZyB7XHJcbiAgZW5hYmxlZDogYm9vbGVhbjtcclxuICBpY29uPzogSWNvbk5hbWUgfCBzdHJpbmc7XHJcbiAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgYnV0dG9uPzogSGVscEJ1dHRvbkNvbmZpZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDYXRlZ29yaWVzTmF2Q29uZmlnIHtcclxuICB0aXRsZT86IHN0cmluZztcclxuICBjYXRlZ29yaWVzOiBDYXRlZ29yeUl0ZW1bXTtcclxuICBoZWxwU2VjdGlvbj86IEhlbHBTZWN0aW9uQ29uZmlnO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NhLWNhdGVnb3JpZXMtbmF2JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEJ1dHRvbkNvbXBvbmVudCwgSWNvbkNvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhdGVnb3JpZXMtbmF2LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jYXRlZ29yaWVzLW5hdi5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENhdGVnb3JpZXNOYXZDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGNvbmZpZzogQ2F0ZWdvcmllc05hdkNvbmZpZyA9IHsgY2F0ZWdvcmllczogW10gfTtcclxuICBASW5wdXQoKSBzZWxlY3RlZENhdGVnb3J5SWQ6IHN0cmluZyA9ICcnO1xyXG4gIEBPdXRwdXQoKSBjYXRlZ29yeVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxDYXRlZ29yeUl0ZW0+KCk7XHJcbiAgQE91dHB1dCgpIGhlbHBCdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBnZXQgY2F0ZWdvcmllcygpOiBDYXRlZ29yeUl0ZW1bXSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWc/LmNhdGVnb3JpZXMgfHwgW107XHJcbiAgfVxyXG5cclxuICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZz8udGl0bGUgfHwgJ0NhdGVnb3JpZXM6JztcclxuICB9XHJcblxyXG4gIGdldCBoZWxwU2VjdGlvbigpOiBIZWxwU2VjdGlvbkNvbmZpZyB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWc/LmhlbHBTZWN0aW9uO1xyXG4gIH1cclxuXHJcbiAgb25DYXRlZ29yeUNsaWNrKGNhdGVnb3J5OiBDYXRlZ29yeUl0ZW0pOiB2b2lkIHtcclxuICAgIHRoaXMuY2F0ZWdvcnlTZWxlY3RlZC5lbWl0KGNhdGVnb3J5KTtcclxuICB9XHJcblxyXG4gIG9uSGVscEJ1dHRvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5oZWxwQnV0dG9uQ2xpY2tlZC5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjYXRlZ29yaWVzLW5hdlwiPlxyXG4gIDxkaXYgY2xhc3M9XCJjYXRlZ29yaWVzLWhlYWRlclwiPlxyXG4gICAgPGgzPnt7IHRpdGxlIH19PC9oMz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiY2F0ZWdvcmllcy1saXN0XCI+XHJcbiAgICA8ZGl2IFxyXG4gICAgICAqbmdGb3I9XCJsZXQgY2F0ZWdvcnkgb2YgY2F0ZWdvcmllc1wiIFxyXG4gICAgICBjbGFzcz1cImNhdGVnb3J5LWl0ZW1cIlxyXG4gICAgICBbY2xhc3Muc2VsZWN0ZWRdPVwiY2F0ZWdvcnkuaWQgPT09IHNlbGVjdGVkQ2F0ZWdvcnlJZFwiXHJcbiAgICAgIChjbGljayk9XCJvbkNhdGVnb3J5Q2xpY2soY2F0ZWdvcnkpXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiY2F0ZWdvcnktbGFiZWxcIj57eyBjYXRlZ29yeS5sYWJlbCB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8IS0tIENvbmZpZ3VyYWJsZSBIZWxwIFNlY3Rpb24gLS0+XHJcbiAgPGRpdiAqbmdJZj1cImhlbHBTZWN0aW9uPy5lbmFibGVkXCIgY2xhc3M9XCJoZWxwLXNlY3Rpb25cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWxwLWNvbnRlbnRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImhlbHAtaWNvblwiICpuZ0lmPVwiaGVscFNlY3Rpb24uaWNvblwiPlxyXG4gICAgICAgIDxzYS1pY29uIFtpY29uXT1cImhlbHBTZWN0aW9uLmljb25cIiBbc2l6ZV09XCInMjAnXCI+PC9zYS1pY29uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImhlbHAtdGV4dFwiICpuZ0lmPVwiaGVscFNlY3Rpb24udGl0bGVcIj5cclxuICAgICAgICB7eyBoZWxwU2VjdGlvbi50aXRsZSB9fVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPHNhLWJ1dHRvblxyXG4gICAgKm5nSWY9XCJoZWxwU2VjdGlvbi5idXR0b24/LnRleHRcIlxyXG4gICAgW3NpemVdPVwiaGVscFNlY3Rpb24uYnV0dG9uPy5zaXplXCJcclxuICAgIFt0eXBlXT1cImhlbHBTZWN0aW9uLmJ1dHRvbj8udHlwZVwiXHJcbiAgICBbaWRdPVwiaGVscFNlY3Rpb24uYnV0dG9uPy5pZFwiXHJcbiAgICBbc3RhdGVdPVwiaGVscFNlY3Rpb24uYnV0dG9uPy5zdGF0ZVwiXHJcbiAgICBbdGV4dF09XCJoZWxwU2VjdGlvbi5idXR0b24/LnRleHRcIlxyXG4gICAgW0ltYWdlUGF0aF09XCJoZWxwU2VjdGlvbi5idXR0b24/LkltYWdlUGF0aFwiXHJcbiAgICBbaWNvbl09XCJoZWxwU2VjdGlvbi5idXR0b24/Lmljb25cIlxyXG4gICAgW2ljb25Qb3NpdGlvbl09XCJoZWxwU2VjdGlvbi5idXR0b24/Lmljb25Qb3NpdGlvblwiXHJcbiAgICBbaHJlZl09XCJoZWxwU2VjdGlvbi5idXR0b24/LmhyZWZcIlxyXG4gICAgW2hyZWZUYXJnZXRdPVwiaGVscFNlY3Rpb24uYnV0dG9uPy5ocmVmVGFyZ2V0XCJcclxuICAgIFt3aWR0aF09XCJoZWxwU2VjdGlvbi5idXR0b24/LndpZHRoXCJcclxuICAgIFtpc1N1Ym1pdF09XCJoZWxwU2VjdGlvbi5idXR0b24/LmlzU3VibWl0XCJcclxuICAgIFtidXR0b25JY29uU2l6ZV09XCJoZWxwU2VjdGlvbi5idXR0b24/LmJ1dHRvbkljb25TaXplXCJcclxuICAgIFtzaG93U3Bpbm5lcl09XCJoZWxwU2VjdGlvbi5idXR0b24/LnNob3dTcGlubmVyXCJcclxuICAgIChvbkNsaWNrRXZlbnQpPVwib25IZWxwQnV0dG9uQ2xpY2soKVwiPlxyXG4gIDwvc2EtYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -13,11 +13,24 @@ export class DataGridComponent {
|
|
|
13
13
|
filter: true,
|
|
14
14
|
resizable: true
|
|
15
15
|
};
|
|
16
|
+
// Pagination inputs (optional)
|
|
17
|
+
this.pagination = false;
|
|
18
|
+
this.paginationPageSize = 10;
|
|
19
|
+
this.paginationPageSizeSelector = [10, 25, 50, 100];
|
|
20
|
+
this.gridHeight = 420;
|
|
21
|
+
// Locale overrides for pagination labels
|
|
22
|
+
this.localeText = {
|
|
23
|
+
'Page Size': 'Show rows',
|
|
24
|
+
to: ' - ',
|
|
25
|
+
};
|
|
16
26
|
}
|
|
17
27
|
onGridReady(params) {
|
|
18
28
|
this.gridApi = params.api;
|
|
19
29
|
DataGridComponent.gridApiInstance = params.api;
|
|
20
30
|
this.gridApi.sizeColumnsToFit();
|
|
31
|
+
// if (this.pagination) {
|
|
32
|
+
// this.gridApi.paginationGoToPage(0);
|
|
33
|
+
// }
|
|
21
34
|
}
|
|
22
35
|
static updateCellContent(gridApi, rowIndex, field, newParams) {
|
|
23
36
|
const rowNode = gridApi.getDisplayedRowAtIndex(rowIndex);
|
|
@@ -120,16 +133,24 @@ export class DataGridComponent {
|
|
|
120
133
|
};
|
|
121
134
|
}
|
|
122
135
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: DataGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
123
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: DataGridComponent, isStandalone: true, selector: "sa-data-grid", inputs: { columnDefs: "columnDefs", rowData: "rowData", defaultColDef: "defaultColDef" }, ngImport: i0, template: "<ag-grid-angular\r\n class=\"ag-theme-alpine sa-grid-theme\"\r\n [columnDefs]=\"columnDefs\"\r\n [rowData]=\"rowData\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"onGridReady($event)\"\r\n domLayout='autoHeight'\r\n></ag-grid-angular>\r\n", styles: ["::ng-deep .sa-grid-theme{--ag-header-background-color: var(--primary-50, #F4EBFF);--ag-header-foreground-color: var(--text-secondary);--ag-row-hover-color: var(--surface-hover);--ag-selected-row-background-color: var(--surface-selected);--ag-odd-row-background-color: transparent;--ag-row-border-color: var(--grey-100, #EAECF0);--ag-cell-horizontal-padding: 16px;--ag-header-column-separator-display: none;--ag-borders: solid 1px;--ag-border-color: var(--grey-100, #EAECF0);font-family:var(--font-family);overflow:visible!important}::ng-deep .sa-grid-theme .ag-header-cell{font-size:12px;font-weight:500;line-height:16px;color:var(--Text-High-Emphasis, #1C1B20);font-family:var(--font-family, Roboto);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-theme-alpine .ag-row,.ag-theme-alpine .ag-cell{overflow:visible!important;z-index:auto}::ng-deep .sa-grid-theme .ag-cell{font-size:14px;line-height:20px}::ng-deep .sa-grid-theme .ag-row{border-bottom:1px solid var(--grey-100, #EAECF0);background:var(--structural-white, #FFF)}::ng-deep .sa-grid-theme .ag-row:last-child{border-bottom:none}::ng-deep .sa-grid-theme .ag-header-viewport{border-bottom:1px solid var(--grey-100, #EAECF0);background:var(--primary-50, #F4EBFF)}::ng-deep .sa-grid-theme .main-text{color:var(--text-high-emphasis, #1C1B20);font-family:var(--font-family-roboto, Roboto);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-header{border-bottom:none}::ng-deep .sa-grid-theme .avatar-img{background:none}::ng-deep .sa-grid-theme .grid-text{display:flex!important;flex-direction:row!important;gap:4px}::ng-deep .sa-grid-theme .grid-text .sub-text{font-family:var(--font-family-roboto, Roboto);font-size:14px;font-style:normal;font-weight:400;height:20px;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-ltr .ag-cell-focus{outline:none!important;border:none!important}::ng-deep .sa-grid-theme .ag-root-wrapper{overflow:visible!important}::ng-deep .sa-grid-theme .ag-root{overflow:visible!important}::ng-deep .sa-grid-theme .ag-body-viewport{overflow:visible!important}::ng-deep .sa-grid-theme .ag-center-cols-container{overflow:visible!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i1.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipShowMode", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "chartMenuItems", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotMaxGeneratedColumns", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pivotMaxColumnsExceeded", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }] }); }
|
|
136
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: DataGridComponent, isStandalone: true, selector: "sa-data-grid", inputs: { columnDefs: "columnDefs", rowData: "rowData", defaultColDef: "defaultColDef", pagination: "pagination", paginationPageSize: "paginationPageSize", paginationPageSizeSelector: "paginationPageSizeSelector", gridHeight: "gridHeight" }, ngImport: i0, template: "<ag-grid-angular\r\n class=\"ag-theme-alpine sa-grid-theme\"\r\n [columnDefs]=\"columnDefs\"\r\n [rowData]=\"rowData\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"onGridReady($event)\"\r\n [domLayout]=\"gridHeight ? 'normal' : 'autoHeight'\"\r\n [style.height.px]=\"gridHeight\"\r\n [pagination]=\"pagination\"\r\n [paginationPageSize]=\"paginationPageSize\"\r\n [paginationPageSizeSelector]=\"paginationPageSizeSelector\"\r\n [localeText]=\"localeText\"\r\n></ag-grid-angular>\r\n", styles: ["::ng-deep .sa-grid-theme{--ag-header-background-color: var(--primary-50, #F4EBFF);--ag-header-foreground-color: var(--text-secondary);--ag-row-hover-color: var(--surface-hover);--ag-selected-row-background-color: var(--surface-selected);--ag-odd-row-background-color: transparent;--ag-row-border-color: var(--grey-100, #EAECF0);--ag-cell-horizontal-padding: 16px;--ag-header-column-separator-display: none;--ag-borders: solid 1px;--ag-border-color: var(--grey-100, #EAECF0);font-family:var(--font-family);overflow:visible!important}::ng-deep .sa-grid-theme .ag-header-cell{font-size:12px;font-weight:500;line-height:16px;color:var(--Text-High-Emphasis, #1C1B20);font-family:var(--font-family, Roboto);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-theme-alpine .ag-row,.ag-theme-alpine .ag-cell{overflow:visible!important;z-index:auto}::ng-deep .sa-grid-theme .ag-cell{font-size:14px;line-height:20px}::ng-deep .sa-grid-theme .ag-row{border-bottom:1px solid var(--grey-100, #EAECF0);background:var(--structural-white, #FFF)}::ng-deep .sa-grid-theme .ag-row:last-child{border-bottom:none}::ng-deep .sa-grid-theme .ag-header-viewport{border-bottom:1px solid var(--grey-100, #EAECF0);background:var(--primary-50, #F4EBFF)}::ng-deep .sa-grid-theme .main-text{color:var(--text-high-emphasis, #1C1B20);font-family:var(--font-family-roboto, Roboto);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-header{border-bottom:none}::ng-deep .sa-grid-theme .avatar-img{background:none}::ng-deep .sa-grid-theme .grid-text{display:flex!important;flex-direction:row!important;gap:4px}::ng-deep .sa-grid-theme .grid-text .sub-text{font-family:var(--font-family-roboto, Roboto);font-size:14px;font-style:normal;font-weight:400;height:20px;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-ltr .ag-cell-focus{outline:none!important;border:none!important}::ng-deep .sa-grid-theme .ag-root-wrapper{overflow:visible!important}::ng-deep .sa-grid-theme .ag-root{overflow:visible!important}::ng-deep .sa-grid-theme .ag-body-viewport{overflow:visible!important}::ng-deep .sa-grid-theme .ag-center-cols-container{overflow:visible!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i1.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipShowMode", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "chartMenuItems", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotMaxGeneratedColumns", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pivotMaxColumnsExceeded", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }] }); }
|
|
124
137
|
}
|
|
125
138
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: DataGridComponent, decorators: [{
|
|
126
139
|
type: Component,
|
|
127
|
-
args: [{ selector: 'sa-data-grid', standalone: true, imports: [CommonModule, AgGridModule, GridCellComponent], template: "<ag-grid-angular\r\n class=\"ag-theme-alpine sa-grid-theme\"\r\n [columnDefs]=\"columnDefs\"\r\n [rowData]=\"rowData\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"onGridReady($event)\"\r\n domLayout
|
|
140
|
+
args: [{ selector: 'sa-data-grid', standalone: true, imports: [CommonModule, AgGridModule, GridCellComponent], template: "<ag-grid-angular\r\n class=\"ag-theme-alpine sa-grid-theme\"\r\n [columnDefs]=\"columnDefs\"\r\n [rowData]=\"rowData\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"onGridReady($event)\"\r\n [domLayout]=\"gridHeight ? 'normal' : 'autoHeight'\"\r\n [style.height.px]=\"gridHeight\"\r\n [pagination]=\"pagination\"\r\n [paginationPageSize]=\"paginationPageSize\"\r\n [paginationPageSizeSelector]=\"paginationPageSizeSelector\"\r\n [localeText]=\"localeText\"\r\n></ag-grid-angular>\r\n", styles: ["::ng-deep .sa-grid-theme{--ag-header-background-color: var(--primary-50, #F4EBFF);--ag-header-foreground-color: var(--text-secondary);--ag-row-hover-color: var(--surface-hover);--ag-selected-row-background-color: var(--surface-selected);--ag-odd-row-background-color: transparent;--ag-row-border-color: var(--grey-100, #EAECF0);--ag-cell-horizontal-padding: 16px;--ag-header-column-separator-display: none;--ag-borders: solid 1px;--ag-border-color: var(--grey-100, #EAECF0);font-family:var(--font-family);overflow:visible!important}::ng-deep .sa-grid-theme .ag-header-cell{font-size:12px;font-weight:500;line-height:16px;color:var(--Text-High-Emphasis, #1C1B20);font-family:var(--font-family, Roboto);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-theme-alpine .ag-row,.ag-theme-alpine .ag-cell{overflow:visible!important;z-index:auto}::ng-deep .sa-grid-theme .ag-cell{font-size:14px;line-height:20px}::ng-deep .sa-grid-theme .ag-row{border-bottom:1px solid var(--grey-100, #EAECF0);background:var(--structural-white, #FFF)}::ng-deep .sa-grid-theme .ag-row:last-child{border-bottom:none}::ng-deep .sa-grid-theme .ag-header-viewport{border-bottom:1px solid var(--grey-100, #EAECF0);background:var(--primary-50, #F4EBFF)}::ng-deep .sa-grid-theme .main-text{color:var(--text-high-emphasis, #1C1B20);font-family:var(--font-family-roboto, Roboto);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-header{border-bottom:none}::ng-deep .sa-grid-theme .avatar-img{background:none}::ng-deep .sa-grid-theme .grid-text{display:flex!important;flex-direction:row!important;gap:4px}::ng-deep .sa-grid-theme .grid-text .sub-text{font-family:var(--font-family-roboto, Roboto);font-size:14px;font-style:normal;font-weight:400;height:20px;line-height:20px;letter-spacing:.25px}::ng-deep .sa-grid-theme .ag-ltr .ag-cell-focus{outline:none!important;border:none!important}::ng-deep .sa-grid-theme .ag-root-wrapper{overflow:visible!important}::ng-deep .sa-grid-theme .ag-root{overflow:visible!important}::ng-deep .sa-grid-theme .ag-body-viewport{overflow:visible!important}::ng-deep .sa-grid-theme .ag-center-cols-container{overflow:visible!important}\n"] }]
|
|
128
141
|
}], propDecorators: { columnDefs: [{
|
|
129
142
|
type: Input
|
|
130
143
|
}], rowData: [{
|
|
131
144
|
type: Input
|
|
132
145
|
}], defaultColDef: [{
|
|
133
146
|
type: Input
|
|
147
|
+
}], pagination: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], paginationPageSize: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], paginationPageSizeSelector: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], gridHeight: [{
|
|
154
|
+
type: Input
|
|
134
155
|
}] } });
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBWXJFLE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFTVyxlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBVztZQUMvQixRQUFRLEVBQUUsSUFBSTtZQUNkLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLElBQUk7U0FDaEIsQ0FBQztLQXVJSDtJQW5JQyxXQUFXLENBQUMsTUFBc0I7UUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQzFCLGlCQUFpQixDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGlCQUFpQixDQUN0QixPQUFnQixFQUNoQixRQUFnQixFQUNoQixLQUFhLEVBQ2IsU0FBaUM7UUFFakMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLHNCQUFz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SztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQWdHcmlkTW9kdWxlIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcclxuaW1wb3J0IHsgR3JpZENlbGxDb21wb25lbnQgfSBmcm9tICcuLi9ncmlkLWNlbGwvZ3JpZC1jZWxsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbERlZiwgR3JpZEFwaSwgR3JpZFJlYWR5RXZlbnQgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcbmltcG9ydCB7IEdyaWRJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2dyaWQtaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQnV0dG9uSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9idXR0b24taW50ZXJmYWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2EtZGF0YS1ncmlkJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFnR3JpZE1vZHVsZSwgR3JpZENlbGxDb21wb25lbnRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9kYXRhLWdyaWQuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGFHcmlkQ29tcG9uZW50IHtcclxuICBwdWJsaWMgc3RhdGljIGdyaWRBcGlJbnN0YW5jZTogR3JpZEFwaTtcclxuICBASW5wdXQoKSBjb2x1bW5EZWZzOiBDb2xEZWZbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHJvd0RhdGE6IGFueVtdID0gW107XHJcbiAgQElucHV0KCkgZGVmYXVsdENvbERlZjogQ29sRGVmID0ge1xyXG4gICAgc29ydGFibGU6IHRydWUsXHJcbiAgICBmaWx0ZXI6IHRydWUsXHJcbiAgICByZXNpemFibGU6IHRydWVcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGdyaWRBcGkhOiBHcmlkQXBpO1xyXG5cclxuICBvbkdyaWRSZWFkeShwYXJhbXM6IEdyaWRSZWFkeUV2ZW50KSB7XHJcbiAgICB0aGlzLmdyaWRBcGkgPSBwYXJhbXMuYXBpO1xyXG4gICAgRGF0YUdyaWRDb21wb25lbnQuZ3JpZEFwaUluc3RhbmNlID0gcGFyYW1zLmFwaTtcclxuICAgIHRoaXMuZ3JpZEFwaS5zaXplQ29sdW1uc1RvRml0KCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdXBkYXRlQ2VsbENvbnRlbnQoXHJcbiAgICBncmlkQXBpOiBHcmlkQXBpLFxyXG4gICAgcm93SW5kZXg6IG51bWJlcixcclxuICAgIGZpZWxkOiBzdHJpbmcsXHJcbiAgICBuZXdQYXJhbXM6IFBhcnRpYWw8R3JpZEludGVyZmFjZT5cclxuICApIHtcclxuICAgIGNvbnN0IHJvd05vZGUgPSBncmlkQXBpLmdldERpc3BsYXllZFJvd0F0SW5kZXgocm93SW5kZXgpO1xyXG4gIFxyXG4gICAgaWYgKCFyb3dOb2RlKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFJvdyBhdCBpbmRleCAke3Jvd0luZGV4fSBub3QgZm91bmQuYCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICBcclxuICAgIGNvbnN0IHBhcmFtS2V5ID0gYCR7ZmllbGR9X2NlbGxQYXJhbXNgO1xyXG4gIFxyXG4gICAgY29uc3QgZXhpc3RpbmdQYXJhbXM6IFBhcnRpYWw8R3JpZEludGVyZmFjZT4gPVxyXG4gICAgICByb3dOb2RlLmRhdGFbcGFyYW1LZXldIHx8IHt9O1xyXG4gIFxyXG4gICAgY29uc3QgdXBkYXRlZFBhcmFtczogUGFydGlhbDxHcmlkSW50ZXJmYWNlPiA9IHtcclxuICAgICAgLi4uZXhpc3RpbmdQYXJhbXMsXHJcbiAgICAgIC4uLm5ld1BhcmFtcyxcclxuICAgIH07XHJcbiAgXHJcbiAgICByb3dOb2RlLmRhdGFbcGFyYW1LZXldID0gdXBkYXRlZFBhcmFtcztcclxuICBcclxuICAgIGdyaWRBcGkuYXBwbHlUcmFuc2FjdGlvbih7IHVwZGF0ZTogW3Jvd05vZGUuZGF0YV0gfSk7XHJcbiAgICBncmlkQXBpLnJlZnJlc2hDZWxscyh7IHJvd05vZGVzOiBbcm93Tm9kZV0sIGNvbHVtbnM6IFtmaWVsZF0sIGZvcmNlOiB0cnVlIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gSGVscGVyIG1ldGhvZCB0byBjcmVhdGUgYSBjZWxsIHdpdGggY2hpcHNcclxuICBzdGF0aWMgY3JlYXRlQ2hpcHNDZWxsKGNoaXBzOiBhbnlbXSwgY29uZmlnOiBQYXJ0aWFsPEdyaWRJbnRlcmZhY2U+ID0ge30pOiBHcmlkSW50ZXJmYWNlIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGNlbGxUeXBlOiAnY2hpcHMnLFxyXG4gICAgICB2aWV3Q2hpcDogdHJ1ZSxcclxuICAgICAgdmlld1RleHQ6IGZhbHNlLFxyXG4gICAgICB2aWV3TGVhZGluZ0ljb246IGZhbHNlLFxyXG4gICAgICB2aWV3VHJhaWxpbmdJY29uOiBmYWxzZSxcclxuICAgICAgdmlld0J1dHRvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdBdmF0YXI6IGZhbHNlLFxyXG4gICAgICBjaGlwQ29uZmlnOiBjaGlwcy5tYXAoY2hpcCA9PiAoe1xyXG4gICAgICAgIGlkOiBjaGlwLmlkIHx8ICcnLFxyXG4gICAgICAgIHRleHQ6IGNoaXAudGV4dCB8fCAnJyxcclxuICAgICAgICB0eXBlOiBjaGlwLnR5cGUgfHwgJ2RlZmF1bHQnLFxyXG4gICAgICAgIHN0YXRlOiBjaGlwLnN0YXRlIHx8ICdkZWZhdWx0JyxcclxuICAgICAgICAuLi5jaGlwXHJcbiAgICAgIH0pKSxcclxuICAgICAgLi4uY29uZmlnXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgLy8gSGVscGVyIG1ldGhvZCB0byBjcmVhdGUgYSB0ZXh0IGNlbGxcclxuICBzdGF0aWMgY3JlYXRlVGV4dENlbGwodGV4dDogc3RyaW5nLCBjb25maWc6IFBhcnRpYWw8R3JpZEludGVyZmFjZT4gPSB7fSk6IEdyaWRJbnRlcmZhY2Uge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY2VsbFR5cGU6ICd0ZXh0JyxcclxuICAgICAgdmlld1RleHQ6IHRydWUsXHJcbiAgICAgIHZpZXdDaGlwOiBmYWxzZSxcclxuICAgICAgdmlld0xlYWRpbmdJY29uOiBmYWxzZSxcclxuICAgICAgdmlld1RyYWlsaW5nSWNvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdCdXR0b246IGZhbHNlLFxyXG4gICAgICB2aWV3QXZhdGFyOiBmYWxzZSxcclxuICAgICAgdGV4dCxcclxuICAgICAgLi4uY29uZmlnXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgLy8gSGVscGVyIG1ldGhvZCB0byBjcmVhdGUgYW4gYXZhdGFyIGNlbGxcclxuICBzdGF0aWMgY3JlYXRlQXZhdGFyQ2VsbChjb25maWc6IHtcclxuICAgIHRleHQ6IHN0cmluZztcclxuICAgIHN1YlRleHQ/OiBzdHJpbmc7XHJcbiAgICBhdmF0YXJDb25maWc6IHtcclxuICAgICAgc2l6ZTogJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcclxuICAgICAgaW1hZ2VQYXRoOiBzdHJpbmc7XHJcbiAgICAgIGFsdFRleHQ6IHN0cmluZztcclxuICAgIH07XHJcbiAgfSk6IEdyaWRJbnRlcmZhY2Uge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY2VsbFR5cGU6ICdhdmF0YXInLFxyXG4gICAgICB2aWV3VGV4dDogdHJ1ZSxcclxuICAgICAgdmlld0NoaXA6IGZhbHNlLFxyXG4gICAgICB2aWV3TGVhZGluZ0ljb246IGZhbHNlLFxyXG4gICAgICB2aWV3VHJhaWxpbmdJY29uOiBmYWxzZSxcclxuICAgICAgdmlld0J1dHRvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdBdmF0YXI6IHRydWUsXHJcbiAgICAgIHRleHQ6IGNvbmZpZy50ZXh0LFxyXG4gICAgICBzdWJUZXh0OiBjb25maWcuc3ViVGV4dCxcclxuICAgICAgYXZhdGFyQ29uZmlnOiB7XHJcbiAgICAgICAgaWQ6IGNvbmZpZy50ZXh0LFxyXG4gICAgICAgIHNpemU6IGNvbmZpZy5hdmF0YXJDb25maWcuc2l6ZSxcclxuICAgICAgICBpbWFnZVBhdGg6IGNvbmZpZy5hdmF0YXJDb25maWcuaW1hZ2VQYXRoLFxyXG4gICAgICAgIGFsdFRleHQ6IGNvbmZpZy5hdmF0YXJDb25maWcuYWx0VGV4dFxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgLy8gSGVscGVyIG1ldGhvZCB0byBjcmVhdGUgYW4gYWN0aW9ucyBjZWxsXHJcbiAgc3RhdGljIGNyZWF0ZUFjdGlvbnNDZWxsKGNvbmZpZzogeyBhY3Rpb25zOiBBcnJheTx7IGxhYmVsOiBzdHJpbmcsIG9uQ2xpY2s6ICgpID0+IHZvaWQsIGljb246IHN0cmluZywgY2xhc3M/OiBzdHJpbmcgfT4gfSk6IEdyaWRJbnRlcmZhY2Uge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY2VsbFR5cGU6ICdhY3Rpb25zJyxcclxuICAgICAgdmlld1RleHQ6IGZhbHNlLFxyXG4gICAgICB2aWV3Q2hpcDogZmFsc2UsXHJcbiAgICAgIHZpZXdMZWFkaW5nSWNvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdUcmFpbGluZ0ljb246IGZhbHNlLFxyXG4gICAgICB2aWV3QnV0dG9uOiB0cnVlLFxyXG4gICAgICB2aWV3QXZhdGFyOiBmYWxzZSxcclxuICAgICAgYWN0aW9uczogY29uZmlnLmFjdGlvbnMsXHJcbiAgICAgIGJ1dHRvbkNvbmZpZzoge1xyXG4gICAgICAgIGlkOiAnYWN0aW9ucy1idXR0b24nLFxyXG4gICAgICAgIHRleHQ6ICcnLFxyXG4gICAgICAgIHR5cGU6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgc3RhdGU6ICdkZWZhdWx0JyxcclxuICAgICAgICBzaXplOiAnc21hbGwnLFxyXG4gICAgICAgIGltYWdlUGF0aDogJy9hc3NldHMvZnJhbWVJY29uLnN2ZycsXHJcbiAgICAgICAgaWNvblBvc2l0aW9uOiAnYm90aCcsXHJcbiAgICAgICAgb25DbGljazogKGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChjb25maWcuYWN0aW9ucykge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQWN0aW9ucyBhdmFpbGFibGU6JywgY29uZmlnLmFjdGlvbnMpO1xyXG4gICAgICAgICAgICBjb25maWcuYWN0aW9ucy5mb3JFYWNoKGFjdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coYEFjdGlvbiAke2FjdGlvbi5sYWJlbH0gYXZhaWxhYmxlYCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9XHJcbiAgXHJcbn1cclxuIiwiPGFnLWdyaWQtYW5ndWxhclxyXG4gIGNsYXNzPVwiYWctdGhlbWUtYWxwaW5lIHNhLWdyaWQtdGhlbWVcIlxyXG4gIFtjb2x1bW5EZWZzXT1cImNvbHVtbkRlZnNcIlxyXG4gIFtyb3dEYXRhXT1cInJvd0RhdGFcIlxyXG4gIFtkZWZhdWx0Q29sRGVmXT1cImRlZmF1bHRDb2xEZWZcIlxyXG4gIChncmlkUmVhZHkpPVwib25HcmlkUmVhZHkoJGV2ZW50KVwiXHJcbiAgZG9tTGF5b3V0PSdhdXRvSGVpZ2h0J1xyXG4+PC9hZy1ncmlkLWFuZ3VsYXI+XHJcbiJdfQ==
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBWXJFLE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFTVyxlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBVztZQUMvQixRQUFRLEVBQUUsSUFBSTtZQUNkLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLElBQUk7U0FDaEIsQ0FBQztRQUVGLCtCQUErQjtRQUN0QixlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLHVCQUFrQixHQUFXLEVBQUUsQ0FBQztRQUNoQywrQkFBMEIsR0FBYSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3pELGVBQVUsR0FBVyxHQUFHLENBQUM7UUFFbEMseUNBQXlDO1FBQ3pDLGVBQVUsR0FBUTtZQUNoQixXQUFXLEVBQUUsV0FBVztZQUN4QixFQUFFLEVBQUUsS0FBSztTQUNWLENBQUM7S0EySUg7SUF2SUMsV0FBVyxDQUFDLE1BQXNCO1FBQ2hDLElBQUks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VSxNQUFNLENBQUMsS0FBSyxZQUFZLENBQUMsQ0FBQzt3QkFDbEQsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQztnQkFDSCxDQUFDO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs4R0E3SlUsaUJBQWlCO2tHQUFqQixpQkFBaUIsMFRDZjlCLDBmQWFBLG14RURGWSxZQUFZLDhCQUFFLFlBQVk7OzJGQUl6QixpQkFBaUI7a0JBUDdCLFNBQVM7K0JBQ0UsY0FBYyxjQUNaLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsaUJBQWlCLENBQUM7OEJBTS9DLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBT0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XHJcbmltcG9ydCB7IEdyaWRDZWxsQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JpZC1jZWxsL2dyaWQtY2VsbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2xEZWYsIEdyaWRBcGksIEdyaWRSZWFkeUV2ZW50IH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xyXG5pbXBvcnQgeyBHcmlkSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ncmlkLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IEJ1dHRvbkludGVyZmFjZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYnV0dG9uLWludGVyZmFjZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NhLWRhdGEtZ3JpZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBZ0dyaWRNb2R1bGUsIEdyaWRDZWxsQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1ncmlkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZGF0YS1ncmlkLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhR3JpZENvbXBvbmVudCB7XHJcbiAgcHVibGljIHN0YXRpYyBncmlkQXBpSW5zdGFuY2U6IEdyaWRBcGk7XHJcbiAgQElucHV0KCkgY29sdW1uRGVmczogQ29sRGVmW10gPSBbXTtcclxuICBASW5wdXQoKSByb3dEYXRhOiBhbnlbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGRlZmF1bHRDb2xEZWY6IENvbERlZiA9IHtcclxuICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgZmlsdGVyOiB0cnVlLFxyXG4gICAgcmVzaXphYmxlOiB0cnVlXHJcbiAgfTtcclxuXHJcbiAgLy8gUGFnaW5hdGlvbiBpbnB1dHMgKG9wdGlvbmFsKVxyXG4gIEBJbnB1dCgpIHBhZ2luYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBwYWdpbmF0aW9uUGFnZVNpemU6IG51bWJlciA9IDEwO1xyXG4gIEBJbnB1dCgpIHBhZ2luYXRpb25QYWdlU2l6ZVNlbGVjdG9yOiBudW1iZXJbXSA9IFsxMCwgMjUsIDUwLCAxMDBdO1xyXG4gIEBJbnB1dCgpIGdyaWRIZWlnaHQ6IG51bWJlciA9IDQyMDtcclxuXHJcbiAgLy8gTG9jYWxlIG92ZXJyaWRlcyBmb3IgcGFnaW5hdGlvbiBsYWJlbHNcclxuICBsb2NhbGVUZXh0OiBhbnkgPSB7XHJcbiAgICAnUGFnZSBTaXplJzogJ1Nob3cgcm93cycsXHJcbiAgICB0bzogJyAtICcsXHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBncmlkQXBpITogR3JpZEFwaTtcclxuXHJcbiAgb25HcmlkUmVhZHkocGFyYW1zOiBHcmlkUmVhZHlFdmVudCkge1xyXG4gICAgdGhpcy5ncmlkQXBpID0gcGFyYW1zLmFwaTtcclxuICAgIERhdGFHcmlkQ29tcG9uZW50LmdyaWRBcGlJbnN0YW5jZSA9IHBhcmFtcy5hcGk7XHJcbiAgICB0aGlzLmdyaWRBcGkuc2l6ZUNvbHVtbnNUb0ZpdCgpO1xyXG5cclxuICAgIC8vIGlmICh0aGlzLnBhZ2luYXRpb24pIHtcclxuICAgIC8vICAgdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25Hb1RvUGFnZSgwKTtcclxuICAgIC8vIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyB1cGRhdGVDZWxsQ29udGVudChcclxuICAgIGdyaWRBcGk6IEdyaWRBcGksXHJcbiAgICByb3dJbmRleDogbnVtYmVyLFxyXG4gICAgZmllbGQ6IHN0cmluZyxcclxuICAgIG5ld1BhcmFtczogUGFydGlhbDxHcmlkSW50ZXJmYWNlPlxyXG4gICkge1xyXG4gICAgY29uc3Qgcm93Tm9kZSA9IGdyaWRBcGkuZ2V0RGlzcGxheWVkUm93QXRJbmRleChyb3dJbmRleCk7XHJcbiAgXHJcbiAgICBpZiAoIXJvd05vZGUpIHtcclxuICAgICAgY29uc29sZS5lcnJvcihgUm93IGF0IGluZGV4ICR7cm93SW5kZXh9IG5vdCBmb3VuZC5gKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgY29uc3QgcGFyYW1LZXkgPSBgJHtmaWVsZH1fY2VsbFBhcmFtc2A7XHJcbiAgXHJcbiAgICBjb25zdCBleGlzdGluZ1BhcmFtczogUGFydGlhbDxHcmlkSW50ZXJmYWNlPiA9XHJcbiAgICAgIHJvd05vZGUuZGF0YVtwYXJhbUtleV0gfHwge307XHJcbiAgXHJcbiAgICBjb25zdCB1cGRhdGVkUGFyYW1zOiBQYXJ0aWFsPEdyaWRJbnRlcmZhY2U+ID0ge1xyXG4gICAgICAuLi5leGlzdGluZ1BhcmFtcyxcclxuICAgICAgLi4ubmV3UGFyYW1zLFxyXG4gICAgfTtcclxuICBcclxuICAgIHJvd05vZGUuZGF0YVtwYXJhbUtleV0gPSB1cGRhdGVkUGFyYW1zO1xyXG4gIFxyXG4gICAgZ3JpZEFwaS5hcHBseVRyYW5zYWN0aW9uKHsgdXBkYXRlOiBbcm93Tm9kZS5kYXRhXSB9KTtcclxuICAgIGdyaWRBcGkucmVmcmVzaENlbGxzKHsgcm93Tm9kZXM6IFtyb3dOb2RlXSwgY29sdW1uczogW2ZpZWxkXSwgZm9yY2U6IHRydWUgfSk7XHJcbiAgfVxyXG5cclxuICAvLyBIZWxwZXIgbWV0aG9kIHRvIGNyZWF0ZSBhIGNlbGwgd2l0aCBjaGlwc1xyXG4gIHN0YXRpYyBjcmVhdGVDaGlwc0NlbGwoY2hpcHM6IGFueVtdLCBjb25maWc6IFBhcnRpYWw8R3JpZEludGVyZmFjZT4gPSB7fSk6IEdyaWRJbnRlcmZhY2Uge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgY2VsbFR5cGU6ICdjaGlwcycsXHJcbiAgICAgIHZpZXdDaGlwOiB0cnVlLFxyXG4gICAgICB2aWV3VGV4dDogZmFsc2UsXHJcbiAgICAgIHZpZXdMZWFkaW5nSWNvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdUcmFpbGluZ0ljb246IGZhbHNlLFxyXG4gICAgICB2aWV3QnV0dG9uOiBmYWxzZSxcclxuICAgICAgdmlld0F2YXRhcjogZmFsc2UsXHJcbiAgICAgIGNoaXBDb25maWc6IGNoaXBzLm1hcChjaGlwID0+ICh7XHJcbiAgICAgICAgaWQ6IGNoaXAuaWQgfHwgJycsXHJcbiAgICAgICAgdGV4dDogY2hpcC50ZXh0IHx8ICcnLFxyXG4gICAgICAgIHR5cGU6IGNoaXAudHlwZSB8fCAnZGVmYXVsdCcsXHJcbiAgICAgICAgc3RhdGU6IGNoaXAuc3RhdGUgfHwgJ2RlZmF1bHQnLFxyXG4gICAgICAgIC4uLmNoaXBcclxuICAgICAgfSkpLFxyXG4gICAgICAuLi5jb25maWdcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvLyBIZWxwZXIgbWV0aG9kIHRvIGNyZWF0ZSBhIHRleHQgY2VsbFxyXG4gIHN0YXRpYyBjcmVhdGVUZXh0Q2VsbCh0ZXh0OiBzdHJpbmcsIGNvbmZpZzogUGFydGlhbDxHcmlkSW50ZXJmYWNlPiA9IHt9KTogR3JpZEludGVyZmFjZSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjZWxsVHlwZTogJ3RleHQnLFxyXG4gICAgICB2aWV3VGV4dDogdHJ1ZSxcclxuICAgICAgdmlld0NoaXA6IGZhbHNlLFxyXG4gICAgICB2aWV3TGVhZGluZ0ljb246IGZhbHNlLFxyXG4gICAgICB2aWV3VHJhaWxpbmdJY29uOiBmYWxzZSxcclxuICAgICAgdmlld0J1dHRvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdBdmF0YXI6IGZhbHNlLFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICAuLi5jb25maWdcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvLyBIZWxwZXIgbWV0aG9kIHRvIGNyZWF0ZSBhbiBhdmF0YXIgY2VsbFxyXG4gIHN0YXRpYyBjcmVhdGVBdmF0YXJDZWxsKGNvbmZpZzoge1xyXG4gICAgdGV4dDogc3RyaW5nO1xyXG4gICAgc3ViVGV4dD86IHN0cmluZztcclxuICAgIGF2YXRhckNvbmZpZzoge1xyXG4gICAgICBzaXplOiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnO1xyXG4gICAgICBpbWFnZVBhdGg6IHN0cmluZztcclxuICAgICAgYWx0VGV4dDogc3RyaW5nO1xyXG4gICAgfTtcclxuICB9KTogR3JpZEludGVyZmFjZSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjZWxsVHlwZTogJ2F2YXRhcicsXHJcbiAgICAgIHZpZXdUZXh0OiB0cnVlLFxyXG4gICAgICB2aWV3Q2hpcDogZmFsc2UsXHJcbiAgICAgIHZpZXdMZWFkaW5nSWNvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdUcmFpbGluZ0ljb246IGZhbHNlLFxyXG4gICAgICB2aWV3QnV0dG9uOiBmYWxzZSxcclxuICAgICAgdmlld0F2YXRhcjogdHJ1ZSxcclxuICAgICAgdGV4dDogY29uZmlnLnRleHQsXHJcbiAgICAgIHN1YlRleHQ6IGNvbmZpZy5zdWJUZXh0LFxyXG4gICAgICBhdmF0YXJDb25maWc6IHtcclxuICAgICAgICBpZDogY29uZmlnLnRleHQsXHJcbiAgICAgICAgc2l6ZTogY29uZmlnLmF2YXRhckNvbmZpZy5zaXplLFxyXG4gICAgICAgIGltYWdlUGF0aDogY29uZmlnLmF2YXRhckNvbmZpZy5pbWFnZVBhdGgsXHJcbiAgICAgICAgYWx0VGV4dDogY29uZmlnLmF2YXRhckNvbmZpZy5hbHRUZXh0XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvLyBIZWxwZXIgbWV0aG9kIHRvIGNyZWF0ZSBhbiBhY3Rpb25zIGNlbGxcclxuICBzdGF0aWMgY3JlYXRlQWN0aW9uc0NlbGwoY29uZmlnOiB7IGFjdGlvbnM6IEFycmF5PHsgbGFiZWw6IHN0cmluZywgb25DbGljazogKCkgPT4gdm9pZCwgaWNvbjogc3RyaW5nLCBjbGFzcz86IHN0cmluZyB9PiB9KTogR3JpZEludGVyZmFjZSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjZWxsVHlwZTogJ2FjdGlvbnMnLFxyXG4gICAgICB2aWV3VGV4dDogZmFsc2UsXHJcbiAgICAgIHZpZXdDaGlwOiBmYWxzZSxcclxuICAgICAgdmlld0xlYWRpbmdJY29uOiBmYWxzZSxcclxuICAgICAgdmlld1RyYWlsaW5nSWNvbjogZmFsc2UsXHJcbiAgICAgIHZpZXdCdXR0b246IHRydWUsXHJcbiAgICAgIHZpZXdBdmF0YXI6IGZhbHNlLFxyXG4gICAgICBhY3Rpb25zOiBjb25maWcuYWN0aW9ucyxcclxuICAgICAgYnV0dG9uQ29uZmlnOiB7XHJcbiAgICAgICAgaWQ6ICdhY3Rpb25zLWJ1dHRvbicsXHJcbiAgICAgICAgdGV4dDogJycsXHJcbiAgICAgICAgdHlwZTogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICBzdGF0ZTogJ2RlZmF1bHQnLFxyXG4gICAgICAgIHNpemU6ICdzbWFsbCcsXHJcbiAgICAgICAgaW1hZ2VQYXRoOiAnL2Fzc2V0cy9mcmFtZUljb24uc3ZnJyxcclxuICAgICAgICBpY29uUG9zaXRpb246ICdib3RoJyxcclxuICAgICAgICBvbkNsaWNrOiAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKGNvbmZpZy5hY3Rpb25zKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdBY3Rpb25zIGF2YWlsYWJsZTonLCBjb25maWcuYWN0aW9ucyk7XHJcbiAgICAgICAgICAgIGNvbmZpZy5hY3Rpb25zLmZvckVhY2goYWN0aW9uID0+IHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhgQWN0aW9uICR7YWN0aW9uLmxhYmVsfSBhdmFpbGFibGVgKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH1cclxuICBcclxufVxyXG4iLCI8YWctZ3JpZC1hbmd1bGFyXHJcbiAgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmUgc2EtZ3JpZC10aGVtZVwiXHJcbiAgW2NvbHVtbkRlZnNdPVwiY29sdW1uRGVmc1wiXHJcbiAgW3Jvd0RhdGFdPVwicm93RGF0YVwiXHJcbiAgW2RlZmF1bHRDb2xEZWZdPVwiZGVmYXVsdENvbERlZlwiXHJcbiAgKGdyaWRSZWFkeSk9XCJvbkdyaWRSZWFkeSgkZXZlbnQpXCJcclxuICBbZG9tTGF5b3V0XT1cImdyaWRIZWlnaHQgPyAnbm9ybWFsJyA6ICdhdXRvSGVpZ2h0J1wiXHJcbiAgW3N0eWxlLmhlaWdodC5weF09XCJncmlkSGVpZ2h0XCJcclxuICBbcGFnaW5hdGlvbl09XCJwYWdpbmF0aW9uXCJcclxuICBbcGFnaW5hdGlvblBhZ2VTaXplXT1cInBhZ2luYXRpb25QYWdlU2l6ZVwiXHJcbiAgW3BhZ2luYXRpb25QYWdlU2l6ZVNlbGVjdG9yXT1cInBhZ2luYXRpb25QYWdlU2l6ZVNlbGVjdG9yXCJcclxuICBbbG9jYWxlVGV4dF09XCJsb2NhbGVUZXh0XCJcclxuPjwvYWctZ3JpZC1hbmd1bGFyPlxyXG4iXX0=
|
|
@@ -73,11 +73,11 @@ export class DialogComponent {
|
|
|
73
73
|
this.dialogButtonClick.emit({ event: chip, type: 'chip-remove' });
|
|
74
74
|
}
|
|
75
75
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: DialogComponent, deps: [{ token: i1.MatDialogRef, optional: true }, { token: MAT_DIALOG_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
76
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: DialogComponent, isStandalone: true, selector: "sa-dialog", inputs: { dialogData: "dialogData" }, outputs: { dialogButtonClick: "dialogButtonClick" }, ngImport: i0, template: "<div class=\"dialog-container\">\r\n <!-- top banner region -->\r\n <div class=\"top-container\">\r\n @if (!!dialogData?.topMessageBanners) {\r\n <div class=\"top-message-container\">\r\n @for (\r\n messageBanner of dialogData?.topMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n [style]=\"messageBanner?.style || 'width:39.438rem'\"\r\n >\r\n <div class=\"{{ messageBanner?.className }} message-content-style\">\r\n {{ messageBanner?.content }}\r\n </div>\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.closeButton || dialogData?.showCloseButton) {\r\n <div class=\"cross-btn\" (click)=\"onCloseButtonClick($event)\">\r\n <sa-icon\r\n [icon]=\"dialogData?.closeButton || 'closeOutlined'\"\r\n class=\"d-flex\"\r\n size=\"20\"\r\n ></sa-icon>\r\n </div>\r\n }\r\n </div>\r\n <!-- middle region -->\r\n @if (!!dialogData?.middleRegion) {\r\n <ng-container *ngIf=\"dialogData?.middleRegion as middleRegion\">\r\n <div class=\"image-description-container {{ middleRegion?.className }}\">\r\n <sa-message-banner-v2\r\n [messageType]=\"middleRegion?.messageType || 'default'\"\r\n [messageIcon]=\"middleRegion?.messageIcon\"\r\n [messageIconSize]=\"middleRegion?.messageIconSize\"\r\n [title]=\"middleRegion?.title\"\r\n [description]=\"middleRegion?.description\"\r\n [buttons]=\"middleRegion?.buttons\"\r\n [formConfig]=\"middleRegion?.content?.formConfig\"\r\n (onFormEvent)=\"onUnifiedFormEvent($event)\"\r\n (buttonClick)=\"middleRegion?.buttons ? onButtonClick($event) : ''\"\r\n >\r\n </sa-message-banner-v2>\r\n </div>\r\n </ng-container>\r\n }\r\n <!-- lower message banner region -->\r\n @if (!!dialogData?.lowerMessageBanners) {\r\n <div class=\"lower-message-container\">\r\n @for (\r\n messageBanner of dialogData?.lowerMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [buttonIcon]=\"messageBanner?.buttonIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n [style]=\"messageBanner?.style || 'width:-webkit-fill-available'\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n >\r\n <div\r\n class=\"{{ messageBanner?.className }} message-content-style\"\r\n ></div>\r\n {{ messageBanner?.content }}\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n <!-- button region -->\r\n @if (!!dialogData?.buttons) {\r\n <div class=\"button-group-container\">\r\n @for (button of dialogData?.buttons; track button.text) {\r\n <sa-button\r\n [text]=\"button.text\"\r\n [icon]=\"button.icon\"\r\n [size]=\"button.size\"\r\n [type]=\"button.type\"\r\n [iconPosition]=\"button.iconPosition\"\r\n [buttonIconSize]=\"button.buttonIconSize\"\r\n (onClickEvent)=\"onButtonClick(button, $event)\"\r\n role=\"button\"\r\n [attr.aria-label]=\"button.text\"\r\n >\r\n </sa-button>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.buttonsWithType) {\r\n <div class=\"buttonWithType-group-container\">\r\n @for (button of dialogData?.buttonsWithType; track button.text) {\r\n @if (button?.type === \"checkbox\") {\r\n <div class=\"checkbox-container {{ button.className }}\">\r\n <mat-checkbox [id]=\"button.id\" (change)=\"onButtonClick(button)\" class=\"checkbox-style\">{{\r\n button.text\r\n }}</mat-checkbox>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".dialog-container{display:flex;flex-direction:column;gap:var(--medium-28px);align-items:center;position:relative}.top-message-container,.lower-message-container{display:flex;align-items:center;flex-direction:column;gap:var(--medium-28px)}.lower-message-container{width:-webkit-fill-available}::ng-deep .lower-message-container .content{justify-content:center;align-items:center;gap:var(--small-4px)}::ng-deep .image-description-container .image-container{margin-bottom:0}::ng-deep .image-description-container .content-container{gap:var(--medium-28px)}::ng-deep .image-description-container .title-class{font-size:var(--medium-22px);font-weight:500;line-height:var(--medium-28px)}::ng-deep .image-description-container .description{color:var(--text-mediumemphasis, #6D6979);font-size:var(--small-16px);line-height:var(--medium-24px);letter-spacing:.5px}.top-message-container .message-content-style{display:flex;justify-content:center;flex:1;color:var(--text-primary, #825CEE)}.lower-message-container .message-content-style{display:flex;align-items:center}::ng-deep .image-description-container .title-description{display:flex;flex-direction:column;gap:var(--small-8px)}.dialog-container .button-group-container{display:flex;gap:var(--small-12px);justify-content:center}::ng-deep .checkboxButton .mdc-checkbox__background{width:var(--small-16px);height:var(--small-16px);border:1.5px solid currentColor}::ng-deep .checkboxButton .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#757575}::ng-deep .checkboxButton .mdc-checkbox{padding:calc((var(--mdc-checkbox-state-layer-size) - 21px) / 2)}::ng-deep .checkboxButton .mdc-form-field{display:flex;align-items:center}::ng-deep .checkboxButton .mdc-label{color:var(--text-mediumemphasis, #6D6979);text-align:center;font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.dialog-container .cross-btn{position:absolute;top:0;right:0;cursor:pointer}::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style.mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{border-color:var(--primary-500);background-color:var(--primary-500)}.image-description-container{width:100%}\n"], dependencies: [{ kind: "component", type: MessageBannerComponent, selector: "sa-message-banner", inputs: ["type", "actionText", "content", "bannerIcon", "bannerIconSize", "buttonIcon", "buttonType", "buttonIconPosition", "buttonSize", "buttonIconSize", "button", "onAction"], outputs: ["actionClick"] }, { kind: "component", type: MessageBannerV2Component, selector: "sa-message-banner-v2", inputs: ["messageType", "contactUrl", "spacingBetweenImageAndDescription", "contentGap", "titleClass", "descriptionClass", "banner", "formConfig", "messageIcon", "messageIconSize", "title", "description", "buttons"], outputs: ["onFormEvent", "buttonClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "icon", "iconPosition", "href", "hrefTarget", "width", "isSubmit", "buttonIconSize", "showSpinner"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "icon", "size", "color", "iconPath", "iconUrl", "customClass", "href", "hrefTarget"], outputs: ["onClickEvent"] }, { kind: "ngmodule", type: MatDialogModule }] }); }
|
|
76
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: DialogComponent, isStandalone: true, selector: "sa-dialog", inputs: { dialogData: "dialogData" }, outputs: { dialogButtonClick: "dialogButtonClick" }, ngImport: i0, template: "<div class=\"dialog-container\">\r\n <!-- top banner region -->\r\n <div class=\"top-container\">\r\n @if (!!dialogData?.topMessageBanners) {\r\n <div class=\"top-message-container\">\r\n @for (\r\n messageBanner of dialogData?.topMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n [style]=\"messageBanner?.style || 'width:39.438rem'\"\r\n >\r\n <div class=\"{{ messageBanner?.className }} message-content-style\">\r\n {{ messageBanner?.content }}\r\n </div>\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.closeButton || dialogData?.showCloseButton) {\r\n <div class=\"cross-btn\" (click)=\"onCloseButtonClick($event)\">\r\n <sa-icon\r\n [icon]=\"dialogData?.closeButton || 'closeOutlined'\"\r\n class=\"d-flex\"\r\n size=\"20\"\r\n ></sa-icon>\r\n </div>\r\n }\r\n </div>\r\n <!-- middle region -->\r\n @if (!!dialogData?.middleRegion) {\r\n <ng-container *ngIf=\"dialogData?.middleRegion as middleRegion\">\r\n <div class=\"image-description-container {{ middleRegion?.className }}\">\r\n <sa-message-banner-v2\r\n [messageType]=\"middleRegion?.messageType || 'default'\"\r\n [messageIcon]=\"middleRegion?.messageIcon\"\r\n [messageIconSize]=\"middleRegion?.messageIconSize\"\r\n [title]=\"middleRegion?.title\"\r\n [description]=\"middleRegion?.description\"\r\n [buttons]=\"middleRegion?.buttons\"\r\n [formConfig]=\"middleRegion?.content?.formConfig\"\r\n (onFormEvent)=\"onUnifiedFormEvent($event)\"\r\n (buttonClick)=\"middleRegion?.buttons ? onButtonClick($event) : ''\"\r\n >\r\n </sa-message-banner-v2>\r\n </div>\r\n </ng-container>\r\n }\r\n <!-- lower message banner region -->\r\n @if (!!dialogData?.lowerMessageBanners) {\r\n <div class=\"lower-message-container\">\r\n @for (\r\n messageBanner of dialogData?.lowerMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [buttonIcon]=\"messageBanner?.buttonIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n [style]=\"messageBanner?.style || 'width:-webkit-fill-available'\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n >\r\n <div\r\n class=\"{{ messageBanner?.className }} message-content-style\"\r\n ></div>\r\n {{ messageBanner?.content }}\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n <!-- button region -->\r\n @if (!!dialogData?.buttons) {\r\n <div class=\"button-group-container\">\r\n @for (button of dialogData?.buttons; track button.text) {\r\n <sa-button\r\n [text]=\"button.text\"\r\n [icon]=\"button.icon\"\r\n [size]=\"button.size\"\r\n [type]=\"button.type\"\r\n [state]=\"button.state\"\r\n [iconPosition]=\"button.iconPosition\"\r\n [buttonIconSize]=\"button.buttonIconSize\"\r\n (onClickEvent)=\"onButtonClick(button, $event)\"\r\n role=\"button\"\r\n [attr.aria-label]=\"button.text\"\r\n >\r\n </sa-button>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.buttonsWithType) {\r\n <div class=\"buttonWithType-group-container\">\r\n @for (button of dialogData?.buttonsWithType; track button.text) {\r\n @if (button?.type === \"checkbox\") {\r\n <div class=\"checkbox-container {{ button.className }}\">\r\n <mat-checkbox [id]=\"button.id\" (change)=\"onButtonClick(button)\" class=\"checkbox-style\">{{\r\n button.text\r\n }}</mat-checkbox>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".dialog-container{display:flex;flex-direction:column;gap:var(--medium-28px);align-items:center;position:relative;overflow-y:auto;overflow-x:hidden}.top-message-container,.lower-message-container{display:flex;align-items:center;flex-direction:column;gap:var(--medium-28px)}.lower-message-container{width:-webkit-fill-available}::ng-deep .lower-message-container .content{justify-content:center;align-items:center;gap:var(--small-4px)}::ng-deep .image-description-container .image-container{margin-bottom:0}::ng-deep .image-description-container .content-container{gap:var(--medium-28px)}::ng-deep .image-description-container .title-class{font-size:var(--medium-22px);font-weight:500;line-height:var(--medium-28px)}::ng-deep .image-description-container .description{color:var(--text-mediumemphasis, #6D6979);font-size:var(--small-16px);line-height:var(--medium-24px);letter-spacing:.5px}.top-message-container .message-content-style{display:flex;justify-content:center;flex:1;color:var(--text-primary, #825CEE)}.lower-message-container .message-content-style{display:flex;align-items:center}::ng-deep .image-description-container .title-description{display:flex;flex-direction:column;gap:var(--small-8px)}.dialog-container .button-group-container{display:flex;gap:var(--small-12px);justify-content:center}::ng-deep .checkboxButton .mdc-checkbox__background{width:var(--small-16px);height:var(--small-16px);border:1.5px solid currentColor}::ng-deep .checkboxButton .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#757575}::ng-deep .checkboxButton .mdc-checkbox{padding:calc((var(--mdc-checkbox-state-layer-size) - 21px) / 2)}::ng-deep .checkboxButton .mdc-form-field{display:flex;align-items:center}::ng-deep .checkboxButton .mdc-label{color:var(--text-mediumemphasis, #6D6979);text-align:center;font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.dialog-container .cross-btn{position:absolute;top:0;right:0;cursor:pointer}::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style.mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{border-color:var(--primary-500);background-color:var(--primary-500)}.image-description-container{width:100%;display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: MessageBannerComponent, selector: "sa-message-banner", inputs: ["type", "actionText", "content", "bannerIcon", "bannerIconSize", "buttonIcon", "buttonType", "buttonIconPosition", "buttonSize", "buttonIconSize", "button", "onAction"], outputs: ["actionClick"] }, { kind: "component", type: MessageBannerV2Component, selector: "sa-message-banner-v2", inputs: ["messageType", "contactUrl", "spacingBetweenImageAndDescription", "contentGap", "titleClass", "descriptionClass", "banner", "formConfig", "messageIcon", "messageIconSize", "title", "description", "buttons"], outputs: ["onFormEvent", "buttonClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "icon", "iconPosition", "href", "hrefTarget", "width", "isSubmit", "buttonIconSize", "showSpinner"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "icon", "size", "color", "iconPath", "iconUrl", "customClass", "href", "hrefTarget", "iconPosition"], outputs: ["onClickEvent"] }, { kind: "ngmodule", type: MatDialogModule }] }); }
|
|
77
77
|
}
|
|
78
78
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: DialogComponent, decorators: [{
|
|
79
79
|
type: Component,
|
|
80
|
-
args: [{ selector: 'sa-dialog', standalone: true, imports: [MessageBannerComponent, MessageBannerV2Component, CommonModule, ButtonComponent, MatCheckboxModule, IconComponent, MatDialogModule, FormInputComponent], template: "<div class=\"dialog-container\">\r\n <!-- top banner region -->\r\n <div class=\"top-container\">\r\n @if (!!dialogData?.topMessageBanners) {\r\n <div class=\"top-message-container\">\r\n @for (\r\n messageBanner of dialogData?.topMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n [style]=\"messageBanner?.style || 'width:39.438rem'\"\r\n >\r\n <div class=\"{{ messageBanner?.className }} message-content-style\">\r\n {{ messageBanner?.content }}\r\n </div>\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.closeButton || dialogData?.showCloseButton) {\r\n <div class=\"cross-btn\" (click)=\"onCloseButtonClick($event)\">\r\n <sa-icon\r\n [icon]=\"dialogData?.closeButton || 'closeOutlined'\"\r\n class=\"d-flex\"\r\n size=\"20\"\r\n ></sa-icon>\r\n </div>\r\n }\r\n </div>\r\n <!-- middle region -->\r\n @if (!!dialogData?.middleRegion) {\r\n <ng-container *ngIf=\"dialogData?.middleRegion as middleRegion\">\r\n <div class=\"image-description-container {{ middleRegion?.className }}\">\r\n <sa-message-banner-v2\r\n [messageType]=\"middleRegion?.messageType || 'default'\"\r\n [messageIcon]=\"middleRegion?.messageIcon\"\r\n [messageIconSize]=\"middleRegion?.messageIconSize\"\r\n [title]=\"middleRegion?.title\"\r\n [description]=\"middleRegion?.description\"\r\n [buttons]=\"middleRegion?.buttons\"\r\n [formConfig]=\"middleRegion?.content?.formConfig\"\r\n (onFormEvent)=\"onUnifiedFormEvent($event)\"\r\n (buttonClick)=\"middleRegion?.buttons ? onButtonClick($event) : ''\"\r\n >\r\n </sa-message-banner-v2>\r\n </div>\r\n </ng-container>\r\n }\r\n <!-- lower message banner region -->\r\n @if (!!dialogData?.lowerMessageBanners) {\r\n <div class=\"lower-message-container\">\r\n @for (\r\n messageBanner of dialogData?.lowerMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [buttonIcon]=\"messageBanner?.buttonIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n [style]=\"messageBanner?.style || 'width:-webkit-fill-available'\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n >\r\n <div\r\n class=\"{{ messageBanner?.className }} message-content-style\"\r\n ></div>\r\n {{ messageBanner?.content }}\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n <!-- button region -->\r\n @if (!!dialogData?.buttons) {\r\n <div class=\"button-group-container\">\r\n @for (button of dialogData?.buttons; track button.text) {\r\n <sa-button\r\n [text]=\"button.text\"\r\n [icon]=\"button.icon\"\r\n [size]=\"button.size\"\r\n [type]=\"button.type\"\r\n [iconPosition]=\"button.iconPosition\"\r\n [buttonIconSize]=\"button.buttonIconSize\"\r\n (onClickEvent)=\"onButtonClick(button, $event)\"\r\n role=\"button\"\r\n [attr.aria-label]=\"button.text\"\r\n >\r\n </sa-button>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.buttonsWithType) {\r\n <div class=\"buttonWithType-group-container\">\r\n @for (button of dialogData?.buttonsWithType; track button.text) {\r\n @if (button?.type === \"checkbox\") {\r\n <div class=\"checkbox-container {{ button.className }}\">\r\n <mat-checkbox [id]=\"button.id\" (change)=\"onButtonClick(button)\" class=\"checkbox-style\">{{\r\n button.text\r\n }}</mat-checkbox>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".dialog-container{display:flex;flex-direction:column;gap:var(--medium-28px);align-items:center;position:relative}.top-message-container,.lower-message-container{display:flex;align-items:center;flex-direction:column;gap:var(--medium-28px)}.lower-message-container{width:-webkit-fill-available}::ng-deep .lower-message-container .content{justify-content:center;align-items:center;gap:var(--small-4px)}::ng-deep .image-description-container .image-container{margin-bottom:0}::ng-deep .image-description-container .content-container{gap:var(--medium-28px)}::ng-deep .image-description-container .title-class{font-size:var(--medium-22px);font-weight:500;line-height:var(--medium-28px)}::ng-deep .image-description-container .description{color:var(--text-mediumemphasis, #6D6979);font-size:var(--small-16px);line-height:var(--medium-24px);letter-spacing:.5px}.top-message-container .message-content-style{display:flex;justify-content:center;flex:1;color:var(--text-primary, #825CEE)}.lower-message-container .message-content-style{display:flex;align-items:center}::ng-deep .image-description-container .title-description{display:flex;flex-direction:column;gap:var(--small-8px)}.dialog-container .button-group-container{display:flex;gap:var(--small-12px);justify-content:center}::ng-deep .checkboxButton .mdc-checkbox__background{width:var(--small-16px);height:var(--small-16px);border:1.5px solid currentColor}::ng-deep .checkboxButton .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#757575}::ng-deep .checkboxButton .mdc-checkbox{padding:calc((var(--mdc-checkbox-state-layer-size) - 21px) / 2)}::ng-deep .checkboxButton .mdc-form-field{display:flex;align-items:center}::ng-deep .checkboxButton .mdc-label{color:var(--text-mediumemphasis, #6D6979);text-align:center;font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.dialog-container .cross-btn{position:absolute;top:0;right:0;cursor:pointer}::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style.mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{border-color:var(--primary-500);background-color:var(--primary-500)}.image-description-container{width:100
|
|
80
|
+
args: [{ selector: 'sa-dialog', standalone: true, imports: [MessageBannerComponent, MessageBannerV2Component, CommonModule, ButtonComponent, MatCheckboxModule, IconComponent, MatDialogModule, FormInputComponent], template: "<div class=\"dialog-container\">\r\n <!-- top banner region -->\r\n <div class=\"top-container\">\r\n @if (!!dialogData?.topMessageBanners) {\r\n <div class=\"top-message-container\">\r\n @for (\r\n messageBanner of dialogData?.topMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n [style]=\"messageBanner?.style || 'width:39.438rem'\"\r\n >\r\n <div class=\"{{ messageBanner?.className }} message-content-style\">\r\n {{ messageBanner?.content }}\r\n </div>\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.closeButton || dialogData?.showCloseButton) {\r\n <div class=\"cross-btn\" (click)=\"onCloseButtonClick($event)\">\r\n <sa-icon\r\n [icon]=\"dialogData?.closeButton || 'closeOutlined'\"\r\n class=\"d-flex\"\r\n size=\"20\"\r\n ></sa-icon>\r\n </div>\r\n }\r\n </div>\r\n <!-- middle region -->\r\n @if (!!dialogData?.middleRegion) {\r\n <ng-container *ngIf=\"dialogData?.middleRegion as middleRegion\">\r\n <div class=\"image-description-container {{ middleRegion?.className }}\">\r\n <sa-message-banner-v2\r\n [messageType]=\"middleRegion?.messageType || 'default'\"\r\n [messageIcon]=\"middleRegion?.messageIcon\"\r\n [messageIconSize]=\"middleRegion?.messageIconSize\"\r\n [title]=\"middleRegion?.title\"\r\n [description]=\"middleRegion?.description\"\r\n [buttons]=\"middleRegion?.buttons\"\r\n [formConfig]=\"middleRegion?.content?.formConfig\"\r\n (onFormEvent)=\"onUnifiedFormEvent($event)\"\r\n (buttonClick)=\"middleRegion?.buttons ? onButtonClick($event) : ''\"\r\n >\r\n </sa-message-banner-v2>\r\n </div>\r\n </ng-container>\r\n }\r\n <!-- lower message banner region -->\r\n @if (!!dialogData?.lowerMessageBanners) {\r\n <div class=\"lower-message-container\">\r\n @for (\r\n messageBanner of dialogData?.lowerMessageBanners;\r\n track messageBanner.content\r\n ) {\r\n <sa-message-banner\r\n [type]=\"messageBanner?.type\"\r\n [bannerIcon]=\"messageBanner?.bannerIcon\"\r\n [buttonIcon]=\"messageBanner?.buttonIcon\"\r\n [bannerIconSize]=\"messageBanner?.bannerIconSize || '24'\"\r\n [button]=\"messageBanner?.button\"\r\n [style]=\"messageBanner?.style || 'width:-webkit-fill-available'\"\r\n (actionClick)=\"onButtonClick(messageBanner?.button, $event)\"\r\n >\r\n <div\r\n class=\"{{ messageBanner?.className }} message-content-style\"\r\n ></div>\r\n {{ messageBanner?.content }}\r\n </sa-message-banner>\r\n }\r\n </div>\r\n }\r\n <!-- button region -->\r\n @if (!!dialogData?.buttons) {\r\n <div class=\"button-group-container\">\r\n @for (button of dialogData?.buttons; track button.text) {\r\n <sa-button\r\n [text]=\"button.text\"\r\n [icon]=\"button.icon\"\r\n [size]=\"button.size\"\r\n [type]=\"button.type\"\r\n [state]=\"button.state\"\r\n [iconPosition]=\"button.iconPosition\"\r\n [buttonIconSize]=\"button.buttonIconSize\"\r\n (onClickEvent)=\"onButtonClick(button, $event)\"\r\n role=\"button\"\r\n [attr.aria-label]=\"button.text\"\r\n >\r\n </sa-button>\r\n }\r\n </div>\r\n }\r\n @if (!!dialogData?.buttonsWithType) {\r\n <div class=\"buttonWithType-group-container\">\r\n @for (button of dialogData?.buttonsWithType; track button.text) {\r\n @if (button?.type === \"checkbox\") {\r\n <div class=\"checkbox-container {{ button.className }}\">\r\n <mat-checkbox [id]=\"button.id\" (change)=\"onButtonClick(button)\" class=\"checkbox-style\">{{\r\n button.text\r\n }}</mat-checkbox>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".dialog-container{display:flex;flex-direction:column;gap:var(--medium-28px);align-items:center;position:relative;overflow-y:auto;overflow-x:hidden}.top-message-container,.lower-message-container{display:flex;align-items:center;flex-direction:column;gap:var(--medium-28px)}.lower-message-container{width:-webkit-fill-available}::ng-deep .lower-message-container .content{justify-content:center;align-items:center;gap:var(--small-4px)}::ng-deep .image-description-container .image-container{margin-bottom:0}::ng-deep .image-description-container .content-container{gap:var(--medium-28px)}::ng-deep .image-description-container .title-class{font-size:var(--medium-22px);font-weight:500;line-height:var(--medium-28px)}::ng-deep .image-description-container .description{color:var(--text-mediumemphasis, #6D6979);font-size:var(--small-16px);line-height:var(--medium-24px);letter-spacing:.5px}.top-message-container .message-content-style{display:flex;justify-content:center;flex:1;color:var(--text-primary, #825CEE)}.lower-message-container .message-content-style{display:flex;align-items:center}::ng-deep .image-description-container .title-description{display:flex;flex-direction:column;gap:var(--small-8px)}.dialog-container .button-group-container{display:flex;gap:var(--small-12px);justify-content:center}::ng-deep .checkboxButton .mdc-checkbox__background{width:var(--small-16px);height:var(--small-16px);border:1.5px solid currentColor}::ng-deep .checkboxButton .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:#757575}::ng-deep .checkboxButton .mdc-checkbox{padding:calc((var(--mdc-checkbox-state-layer-size) - 21px) / 2)}::ng-deep .checkboxButton .mdc-form-field{display:flex;align-items:center}::ng-deep .checkboxButton .mdc-label{color:var(--text-mediumemphasis, #6D6979);text-align:center;font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.dialog-container .cross-btn{position:absolute;top:0;right:0;cursor:pointer}::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style.mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:enabled:focus:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mdc-checkbox__ripple,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:not(:disabled):active .mdc-checkbox__native-control[data-indeterminate=true]:enabled~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,::ng-deep .checkbox-style .mdc-checkbox:hover .mdc-checkbox__native-control:checked~.mdc-checkbox__ripple{border-color:var(--primary-500);background-color:var(--primary-500)}.image-description-container{width:100%;display:flex;flex-direction:column}\n"] }]
|
|
81
81
|
}], ctorParameters: () => [{ type: i1.MatDialogRef, decorators: [{
|
|
82
82
|
type: Optional
|
|
83
83
|
}] }, { type: undefined, decorators: [{
|
|
@@ -90,4 +90,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
90
90
|
}], dialogButtonClick: [{
|
|
91
91
|
type: Output
|
|
92
92
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7O0FBU2pDLE1BQU0sT0FBTyxlQUFlO0lBYzFCLFlBQ3FCLFNBQXdDLEVBQ2YsSUFBUztRQURsQyxjQUFTLEdBQVQsU0FBUyxDQUErQjtRQUNmLFNBQUksR0FBSixJQUFJLENBQUs7UUFmdkQsZUFBVSxHQUEyQixFQUFFLENBQUM7UUFXOUIsc0JBQWlCLEdBQUcsSUFB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QUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQzs4R0ExRVUsZUFBZSw4REFnQkosZUFBZTtrR0FoQjFCLGVBQWUsZ0tDbkI1Qiw0d0lBOEdBLCs0SEQvRlksc0JBQXNCLDJRQUFFLHdCQUF3QixrVUFBRSxZQUFZLG1JQUFFLGVBQWUsdVJBQUUsaUJBQWlCLDhXQUFFLGFBQWEsb0xBQUUsZUFBZTs7MkZBSWpJLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0UsV0FBVyxjQUNULElBQUksV0FDUCxDQUFDLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQzs7MEJBbUI5SixRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGVBQWU7eUNBZDVCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBVUksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZXNzYWdlQmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbWVzc2FnZS1iYW5uZXIvbWVzc2FnZS1iYW5uZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uQ2xpY2tFdmVudCwgQnV0dG9uSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9idXR0b24taW50ZXJmYWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZUJhbm5lclYyQ29tcG9uZW50IH0gZnJvbSAnLi4vbWVzc2FnZS1iYW5uZXItdjIvbWVzc2FnZS1iYW5uZXItdjIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcclxuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ01vZHVsZSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1pbnB1dC9mb3JtLWlucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tICdsb2Rhc2gnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYS1kaWFsb2cnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01lc3NhZ2VCYW5uZXJDb21wb25lbnQsIE1lc3NhZ2VCYW5uZXJWMkNvbXBvbmVudCwgQ29tbW9uTW9kdWxlLCBCdXR0b25Db21wb25lbnQsIE1hdENoZWNrYm94TW9kdWxlLCBJY29uQ29tcG9uZW50LCBNYXREaWFsb2dNb2R1bGUsIEZvcm1JbnB1dENvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nQ29tcG9uZW50IHtcclxuICBmb3JtVmFsdWVzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XHJcbiAgQElucHV0KCkgZGlhbG9nRGF0YToge1xyXG4gICAgdG9wTWVzc2FnZUJhbm5lcnM/OiBhbnlbXTtcclxuICAgIG1pZGRsZVJlZ2lvbj86IGFueTtcclxuICAgIGxvd2VyTWVzc2FnZUJhbm5lcnM/OiBhbnlbXTtcclxuICAgIGJ1dHRvbnM/OiBCdXR0b25JbnRlcmZhY2VbXTtcclxuICAgIGJ1dHRvbnNXaXRoVHlwZT86IGFueVtdO1xyXG4gICAgY2xvc2VCdXR0b24/OiBzdHJpbmc7XHJcbiAgICBzaG93Q2xvc2VCdXR0b24/OiBib29sZWFuO1xyXG4gIH07XHJcblxyXG4gIEBPdXRwdXQoKSBkaWFsb2dCdXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RGlhbG9nQ29tcG9uZW50PixcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55XHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5kYXRhKSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nRGF0YSA9IHRoaXMuZGF0YTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQnV0dG9uQ2xpY2soYnV0dG9uOiBhbnksIGV2ZW50PzogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQ/LmV2dCkge1xyXG4gICAgICBldmVudD8uZXZ0LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIGV2ZW50Py5ldnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoe2V2ZW50LCBidXR0b259KTtcclxuICB9XHJcbiAgb25NaWRkbGVSZWdpb25CdXR0b25DbGljayhldmVudDoge2J1dHRvbjogYW55LCBkYXRhPzogYW55fSk6IHZvaWQge1xyXG4gICAgLy8gUGFzcyB0aGUgZXZlbnQgdXAgdG8gdGhlIHBhcmVudCBjb21wb25lbnRcclxuICAgIHRoaXMuZGF0YS5vbk1pZGRsZVJlZ2lvbkJ1dHRvbkNsaWNrPy4oZXZlbnQpO1xyXG4gIH1cclxuICBoYW5kbGVCdXR0b25DbGljayhldmVudDogQnV0dG9uQ2xpY2tFdmVudCkge1xyXG4gICAgdGhpcy5kaWFsb2dCdXR0b25DbGljay5lbWl0KHtldmVudH0pO1xyXG4gIH1cclxuXHJcbiAgb25DbG9zZUJ1dHRvbkNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWc/LmZpZWxkcz8uZm9yRWFjaCgoaW5wdXQ6IGFueSkgPT4ge1xyXG4gICAgICBpbnB1dC52YWx1ZSA9ICcnO1xyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWcpIHtcclxuICAgICAgdGhpcy5kaWFsb2dEYXRhLm1pZGRsZVJlZ2lvbi5jb250ZW50LmZvcm1Db25maWcuY2hpcHMgPSBbXTtcclxuICAgIH0gICAgXHJcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudDogZXZlbnQsIHR5cGU6ICdjbG9zZScgfSk7XHJcbiAgfVxyXG4vLyBhbGwgZm9ybSByZWxhdGVkIGV2ZW50c1xyXG4gIG9uVW5pZmllZEZvcm1FdmVudChldmVudDoge3R5cGU6IHN0cmluZywgZGF0YTogYW55fSk6IHZvaWQge1xyXG4gICAgc3dpdGNoKGV2ZW50LnR5cGUpIHtcclxuICAgICAgY2FzZSAnZm9ybS1pbnB1dC1jaGFuZ2UnOlxyXG4gICAgICAgIHRoaXMub25Gb3JtSW5wdXRDaGFuZ2UoZXZlbnQuZGF0YSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2N1c3RvbS1idXR0b24tY2xpY2snOlxyXG4gICAgICAgIHRoaXMub25CdXR0b25DbGljayhldmVudC5kYXRhKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnY2hpcC1yZW1vdmUnOlxyXG4gICAgICAgIHRoaXMub25SZW1vdmVVc2VyKGV2ZW50LmRhdGEpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGNvbnNvbGUud2FybignVW5rbm93biBmb3JtIGV2ZW50IHR5cGU6JywgZXZlbnQudHlwZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uRm9ybUlucHV0Q2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIGxldCBwcm9jZXNzZWRWYWx1ZSA9IGV2ZW50LnZhbHVlOyBcclxuICAgIGlmIChpc0FycmF5KGV2ZW50LnZhbHVlKSkge1xyXG4gICAgICBwcm9jZXNzZWRWYWx1ZSA9IGV2ZW50LnZhbHVlLm1hcCgoY2hpcDogYW55KSA9PiBjaGlwLnZhbHVlIHx8IGNoaXAubGFiZWwgfHwgY2hpcCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZvcm1WYWx1ZXNbZXZlbnQubGFiZWxdID0gcHJvY2Vzc2VkVmFsdWU7XHJcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudCwgdHlwZTogJ2Zvcm0taW5wdXQtY2hhbmdlJyB9KTtcclxuICB9XHJcblxyXG4gIG9uUmVtb3ZlVXNlcihjaGlwOiBhbnkpIHtcclxuICAgIHRoaXMuZGlhbG9nQnV0dG9uQ2xpY2suZW1pdCh7IGV2ZW50OiBjaGlwLCB0eXBlOiAnY2hpcC1yZW1vdmUnIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZGlhbG9nLWNvbnRhaW5lclwiPlxyXG4gIDwhLS0gdG9wIGJhbm5lciByZWdpb24gLS0+XHJcbiAgPGRpdiBjbGFzcz1cInRvcC1jb250YWluZXJcIj5cclxuICAgIEBpZiAoISFkaWFsb2dEYXRhPy50b3BNZXNzYWdlQmFubmVycykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwidG9wLW1lc3NhZ2UtY29udGFpbmVyXCI+XHJcbiAgICAgICAgQGZvciAoXHJcbiAgICAgICAgICBtZXNzYWdlQmFubmVyIG9mIGRpYWxvZ0RhdGE/LnRvcE1lc3NhZ2VCYW5uZXJzO1xyXG4gICAgICAgICAgdHJhY2sgbWVzc2FnZUJhbm5lci5jb250ZW50XHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcclxuICAgICAgICAgICAgW3R5cGVdPVwibWVzc2FnZUJhbm5lcj8udHlwZVwiXHJcbiAgICAgICAgICAgIFtiYW5uZXJJY29uXT1cIm1lc3NhZ2VCYW5uZXI/LmJhbm5lckljb25cIlxyXG4gICAgICAgICAgICBbYmFubmVySWNvblNpemVdPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblNpemUgfHwgJzI0J1wiXHJcbiAgICAgICAgICAgIFtidXR0b25dPVwibWVzc2FnZUJhbm5lcj8uYnV0dG9uXCJcclxuICAgICAgICAgICAgKGFjdGlvbkNsaWNrKT1cIm9uQnV0dG9uQ2xpY2sobWVzc2FnZUJhbm5lcj8uYnV0dG9uLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgW3N0eWxlXT1cIm1lc3NhZ2VCYW5uZXI/LnN0eWxlIHx8ICd3aWR0aDozOS40MzhyZW0nXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInt7IG1lc3NhZ2VCYW5uZXI/LmNsYXNzTmFtZSB9fSBtZXNzYWdlLWNvbnRlbnQtc3R5bGVcIj5cclxuICAgICAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9zYS1tZXNzYWdlLWJhbm5lcj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gICAgQGlmICghIWRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8IGRpYWxvZ0RhdGE/LnNob3dDbG9zZUJ1dHRvbikge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiY3Jvc3MtYnRuXCIgKGNsaWNrKT1cIm9uQ2xvc2VCdXR0b25DbGljaygkZXZlbnQpXCI+XHJcbiAgICAgICAgPHNhLWljb25cclxuICAgICAgICAgIFtpY29uXT1cImRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8ICdjbG9zZU91dGxpbmVkJ1wiXHJcbiAgICAgICAgICBjbGFzcz1cImQtZmxleFwiXHJcbiAgICAgICAgICBzaXplPVwiMjBcIlxyXG4gICAgICAgID48L3NhLWljb24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gbWlkZGxlIHJlZ2lvbiAtLT5cclxuICBAaWYgKCEhZGlhbG9nRGF0YT8ubWlkZGxlUmVnaW9uKSB7XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlhbG9nRGF0YT8ubWlkZGxlUmVnaW9uIGFzIG1pZGRsZVJlZ2lvblwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2UtZGVzY3JpcHRpb24tY29udGFpbmVyIHt7IG1pZGRsZVJlZ2lvbj8uY2xhc3NOYW1lIH19XCI+XHJcbiAgICAgICAgPHNhLW1lc3NhZ2UtYmFubmVyLXYyXHJcbiAgICAgICAgW21lc3NhZ2VUeXBlXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZVR5cGUgfHwgJ2RlZmF1bHQnXCJcclxuICAgICAgICBbbWVzc2FnZUljb25dPVwibWlkZGxlUmVnaW9uPy5tZXNzYWdlSWNvblwiXHJcbiAgICAgICAgW21lc3NhZ2VJY29uU2l6ZV09XCJtaWRkbGVSZWdpb24/Lm1lc3NhZ2VJY29uU2l6ZVwiXHJcbiAgICAgICAgW3RpdGxlXT1cIm1pZGRsZVJlZ2lvbj8udGl0bGVcIlxyXG4gICAgICAgIFtkZXNjcmlwdGlvbl09XCJtaWRkbGVSZWdpb24/LmRlc2NyaXB0aW9uXCJcclxuICAgICAgICBbYnV0dG9uc109XCJtaWRkbGVSZWdpb24/LmJ1dHRvbnNcIlxyXG4gICAgICAgIFtmb3JtQ29uZmlnXT1cIm1pZGRsZVJlZ2lvbj8uY29udGVudD8uZm9ybUNvbmZpZ1wiXHJcbiAgICAgICAgKG9uRm9ybUV2ZW50KT1cIm9uVW5pZmllZEZvcm1FdmVudCgkZXZlbnQpXCJcclxuICAgICAgICAoYnV0dG9uQ2xpY2spPVwibWlkZGxlUmVnaW9uPy5idXR0b25zID8gb25CdXR0b25DbGljaygkZXZlbnQpIDogJydcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvc2EtbWVzc2FnZS1iYW5uZXItdjI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgfVxyXG4gIDwhLS0gbG93ZXIgbWVzc2FnZSBiYW5uZXIgcmVnaW9uIC0tPlxyXG4gIEBpZiAoISFkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwibG93ZXItbWVzc2FnZS1jb250YWluZXJcIj5cclxuICAgICAgQGZvciAoXHJcbiAgICAgICAgbWVzc2FnZUJhbm5lciBvZiBkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzO1xyXG4gICAgICAgIHRyYWNrIG1lc3NhZ2VCYW5uZXIuY29udGVudFxyXG4gICAgICApIHtcclxuICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcclxuICAgICAgICAgIFt0eXBlXT1cIm1lc3NhZ2VCYW5uZXI/LnR5cGVcIlxyXG4gICAgICAgICAgW2Jhbm5lckljb25dPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblwiXHJcbiAgICAgICAgICBbYnV0dG9uSWNvbl09XCJtZXNzYWdlQmFubmVyPy5idXR0b25JY29uXCJcclxuICAgICAgICAgIFtiYW5uZXJJY29uU2l6ZV09XCJtZXNzYWdlQmFubmVyPy5iYW5uZXJJY29uU2l6ZSB8fCAnMjQnXCJcclxuICAgICAgICAgIFtidXR0b25dPVwibWVzc2FnZUJhbm5lcj8uYnV0dG9uXCJcclxuICAgICAgICAgIFtzdHlsZV09XCJtZXNzYWdlQmFubmVyPy5zdHlsZSB8fCAnd2lkdGg6LXdlYmtpdC1maWxsLWF2YWlsYWJsZSdcIlxyXG4gICAgICAgICAgKGFjdGlvbkNsaWNrKT1cIm9uQnV0dG9uQ2xpY2sobWVzc2FnZUJhbm5lcj8uYnV0dG9uLCAkZXZlbnQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwie3sgbWVzc2FnZUJhbm5lcj8uY2xhc3NOYW1lIH19IG1lc3NhZ2UtY29udGVudC1zdHlsZVwiXHJcbiAgICAgICAgICA+PC9kaXY+XHJcbiAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XHJcbiAgICAgICAgPC9zYS1tZXNzYWdlLWJhbm5lcj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG4gIDwhLS0gYnV0dG9uIHJlZ2lvbiAtLT5cclxuICBAaWYgKCEhZGlhbG9nRGF0YT8uYnV0dG9ucykge1xyXG4gICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1ncm91cC1jb250YWluZXJcIj5cclxuICAgICAgQGZvciAoYnV0dG9uIG9mIGRpYWxvZ0RhdGE/LmJ1dHRvbnM7IHRyYWNrIGJ1dHRvbi50ZXh0KSB7XHJcbiAgICAgICAgPHNhLWJ1dHRvblxyXG4gICAgICAgICAgW3RleHRdPVwiYnV0dG9uLnRleHRcIlxyXG4gICAgICAgICAgW2ljb25dPVwiYnV0dG9uLmljb25cIlxyXG4gICAgICAgICAgW3NpemVdPVwiYnV0dG9uLnNpemVcIlxyXG4gICAgICAgICAgW3R5cGVdPVwiYnV0dG9uLnR5cGVcIlxyXG4gICAgICAgICAgW2ljb25Qb3NpdGlvbl09XCJidXR0b24uaWNvblBvc2l0aW9uXCJcclxuICAgICAgICAgIFtidXR0b25JY29uU2l6ZV09XCJidXR0b24uYnV0dG9uSWNvblNpemVcIlxyXG4gICAgICAgICAgKG9uQ2xpY2tFdmVudCk9XCJvbkJ1dHRvbkNsaWNrKGJ1dHRvbiwgJGV2ZW50KVwiXHJcbiAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcclxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLnRleHRcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L3NhLWJ1dHRvbj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG4gIEBpZiAoISFkaWFsb2dEYXRhPy5idXR0b25zV2l0aFR5cGUpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJidXR0b25XaXRoVHlwZS1ncm91cC1jb250YWluZXJcIj5cclxuICAgICAgQGZvciAoYnV0dG9uIG9mIGRpYWxvZ0RhdGE/LmJ1dHRvbnNXaXRoVHlwZTsgdHJhY2sgYnV0dG9uLnRleHQpIHtcclxuICAgICAgICBAaWYgKGJ1dHRvbj8udHlwZSA9PT0gXCJjaGVja2JveFwiKSB7XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2tib3gtY29udGFpbmVyIHt7IGJ1dHRvbi5jbGFzc05hbWUgfX1cIj5cclxuICAgICAgICAgICAgPG1hdC1jaGVja2JveCBbaWRdPVwiYnV0dG9uLmlkXCIgKGNoYW5nZSk9XCJvbkJ1dHRvbkNsaWNrKGJ1dHRvbilcIiBjbGFzcz1cImNoZWNrYm94LXN0eWxlXCI+e3tcclxuICAgICAgICAgICAgICBidXR0b24udGV4dFxyXG4gICAgICAgICAgICB9fTwvbWF0LWNoZWNrYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7O0FBU2pDLE1BQU0sT0FBTyxlQUFlO0lBYzFCLFlBQ3FCLFNBQXdDLEVBQ2YsSUFBUztRQURsQyxjQUFTLEdBQVQsU0FBUyxDQUErQjtRQUNmLFNBQUksR0FBSixJQUFJLENBQUs7UUFmdkQsZUFBVSxHQUEyQixFQUFFLENBQUM7UUFXOUIsc0JBQWlCLEdBQUcsSUFB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QUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQzs4R0ExRVUsZUFBZSw4REFnQkosZUFBZTtrR0FoQjFCLGVBQWUsZ0tDbkI1QixreklBK0dBLG85SERoR1ksc0JBQXNCLDJRQUFFLHdCQUF3QixrVUFBRSxZQUFZLG1JQUFFLGVBQWUsdVJBQUUsaUJBQWlCLDhXQUFFLGFBQWEsb01BQUUsZUFBZTs7MkZBSWpJLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0UsV0FBVyxjQUNULElBQUksV0FDUCxDQUFDLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQzs7MEJBbUI5SixRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGVBQWU7eUNBZDVCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBVUksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZXNzYWdlQmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbWVzc2FnZS1iYW5uZXIvbWVzc2FnZS1iYW5uZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uQ2xpY2tFdmVudCwgQnV0dG9uSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9idXR0b24taW50ZXJmYWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZUJhbm5lclYyQ29tcG9uZW50IH0gZnJvbSAnLi4vbWVzc2FnZS1iYW5uZXItdjIvbWVzc2FnZS1iYW5uZXItdjIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcclxuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ01vZHVsZSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1pbnB1dC9mb3JtLWlucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tICdsb2Rhc2gnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYS1kaWFsb2cnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01lc3NhZ2VCYW5uZXJDb21wb25lbnQsIE1lc3NhZ2VCYW5uZXJWMkNvbXBvbmVudCwgQ29tbW9uTW9kdWxlLCBCdXR0b25Db21wb25lbnQsIE1hdENoZWNrYm94TW9kdWxlLCBJY29uQ29tcG9uZW50LCBNYXREaWFsb2dNb2R1bGUsIEZvcm1JbnB1dENvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nQ29tcG9uZW50IHtcclxuICBmb3JtVmFsdWVzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XHJcbiAgQElucHV0KCkgZGlhbG9nRGF0YToge1xyXG4gICAgdG9wTWVzc2FnZUJhbm5lcnM/OiBhbnlbXTtcclxuICAgIG1pZGRsZVJlZ2lvbj86IGFueTtcclxuICAgIGxvd2VyTWVzc2FnZUJhbm5lcnM/OiBhbnlbXTtcclxuICAgIGJ1dHRvbnM/OiBCdXR0b25JbnRlcmZhY2VbXTtcclxuICAgIGJ1dHRvbnNXaXRoVHlwZT86IGFueVtdO1xyXG4gICAgY2xvc2VCdXR0b24/OiBzdHJpbmc7XHJcbiAgICBzaG93Q2xvc2VCdXR0b24/OiBib29sZWFuO1xyXG4gIH07XHJcblxyXG4gIEBPdXRwdXQoKSBkaWFsb2dCdXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RGlhbG9nQ29tcG9uZW50PixcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55XHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5kYXRhKSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nRGF0YSA9IHRoaXMuZGF0YTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQnV0dG9uQ2xpY2soYnV0dG9uOiBhbnksIGV2ZW50PzogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQ/LmV2dCkge1xyXG4gICAgICBldmVudD8uZXZ0LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIGV2ZW50Py5ldnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoe2V2ZW50LCBidXR0b259KTtcclxuICB9XHJcbiAgb25NaWRkbGVSZWdpb25CdXR0b25DbGljayhldmVudDoge2J1dHRvbjogYW55LCBkYXRhPzogYW55fSk6IHZvaWQge1xyXG4gICAgLy8gUGFzcyB0aGUgZXZlbnQgdXAgdG8gdGhlIHBhcmVudCBjb21wb25lbnRcclxuICAgIHRoaXMuZGF0YS5vbk1pZGRsZVJlZ2lvbkJ1dHRvbkNsaWNrPy4oZXZlbnQpO1xyXG4gIH1cclxuICBoYW5kbGVCdXR0b25DbGljayhldmVudDogQnV0dG9uQ2xpY2tFdmVudCkge1xyXG4gICAgdGhpcy5kaWFsb2dCdXR0b25DbGljay5lbWl0KHtldmVudH0pO1xyXG4gIH1cclxuXHJcbiAgb25DbG9zZUJ1dHRvbkNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWc/LmZpZWxkcz8uZm9yRWFjaCgoaW5wdXQ6IGFueSkgPT4ge1xyXG4gICAgICBpbnB1dC52YWx1ZSA9ICcnO1xyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5kaWFsb2dEYXRhPy5taWRkbGVSZWdpb24/LmNvbnRlbnQ/LmZvcm1Db25maWcpIHtcclxuICAgICAgdGhpcy5kaWFsb2dEYXRhLm1pZGRsZVJlZ2lvbi5jb250ZW50LmZvcm1Db25maWcuY2hpcHMgPSBbXTtcclxuICAgIH0gICAgXHJcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudDogZXZlbnQsIHR5cGU6ICdjbG9zZScgfSk7XHJcbiAgfVxyXG4vLyBhbGwgZm9ybSByZWxhdGVkIGV2ZW50c1xyXG4gIG9uVW5pZmllZEZvcm1FdmVudChldmVudDoge3R5cGU6IHN0cmluZywgZGF0YTogYW55fSk6IHZvaWQge1xyXG4gICAgc3dpdGNoKGV2ZW50LnR5cGUpIHtcclxuICAgICAgY2FzZSAnZm9ybS1pbnB1dC1jaGFuZ2UnOlxyXG4gICAgICAgIHRoaXMub25Gb3JtSW5wdXRDaGFuZ2UoZXZlbnQuZGF0YSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2N1c3RvbS1idXR0b24tY2xpY2snOlxyXG4gICAgICAgIHRoaXMub25CdXR0b25DbGljayhldmVudC5kYXRhKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnY2hpcC1yZW1vdmUnOlxyXG4gICAgICAgIHRoaXMub25SZW1vdmVVc2VyKGV2ZW50LmRhdGEpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGNvbnNvbGUud2FybignVW5rbm93biBmb3JtIGV2ZW50IHR5cGU6JywgZXZlbnQudHlwZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uRm9ybUlucHV0Q2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIGxldCBwcm9jZXNzZWRWYWx1ZSA9IGV2ZW50LnZhbHVlOyBcclxuICAgIGlmIChpc0FycmF5KGV2ZW50LnZhbHVlKSkge1xyXG4gICAgICBwcm9jZXNzZWRWYWx1ZSA9IGV2ZW50LnZhbHVlLm1hcCgoY2hpcDogYW55KSA9PiBjaGlwLnZhbHVlIHx8IGNoaXAubGFiZWwgfHwgY2hpcCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZvcm1WYWx1ZXNbZXZlbnQubGFiZWxdID0gcHJvY2Vzc2VkVmFsdWU7XHJcbiAgICB0aGlzLmRpYWxvZ0J1dHRvbkNsaWNrLmVtaXQoeyBldmVudCwgdHlwZTogJ2Zvcm0taW5wdXQtY2hhbmdlJyB9KTtcclxuICB9XHJcblxyXG4gIG9uUmVtb3ZlVXNlcihjaGlwOiBhbnkpIHtcclxuICAgIHRoaXMuZGlhbG9nQnV0dG9uQ2xpY2suZW1pdCh7IGV2ZW50OiBjaGlwLCB0eXBlOiAnY2hpcC1yZW1vdmUnIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZGlhbG9nLWNvbnRhaW5lclwiPlxyXG4gIDwhLS0gdG9wIGJhbm5lciByZWdpb24gLS0+XHJcbiAgPGRpdiBjbGFzcz1cInRvcC1jb250YWluZXJcIj5cclxuICAgIEBpZiAoISFkaWFsb2dEYXRhPy50b3BNZXNzYWdlQmFubmVycykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwidG9wLW1lc3NhZ2UtY29udGFpbmVyXCI+XHJcbiAgICAgICAgQGZvciAoXHJcbiAgICAgICAgICBtZXNzYWdlQmFubmVyIG9mIGRpYWxvZ0RhdGE/LnRvcE1lc3NhZ2VCYW5uZXJzO1xyXG4gICAgICAgICAgdHJhY2sgbWVzc2FnZUJhbm5lci5jb250ZW50XHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcclxuICAgICAgICAgICAgW3R5cGVdPVwibWVzc2FnZUJhbm5lcj8udHlwZVwiXHJcbiAgICAgICAgICAgIFtiYW5uZXJJY29uXT1cIm1lc3NhZ2VCYW5uZXI/LmJhbm5lckljb25cIlxyXG4gICAgICAgICAgICBbYmFubmVySWNvblNpemVdPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblNpemUgfHwgJzI0J1wiXHJcbiAgICAgICAgICAgIFtidXR0b25dPVwibWVzc2FnZUJhbm5lcj8uYnV0dG9uXCJcclxuICAgICAgICAgICAgKGFjdGlvbkNsaWNrKT1cIm9uQnV0dG9uQ2xpY2sobWVzc2FnZUJhbm5lcj8uYnV0dG9uLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgW3N0eWxlXT1cIm1lc3NhZ2VCYW5uZXI/LnN0eWxlIHx8ICd3aWR0aDozOS40MzhyZW0nXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInt7IG1lc3NhZ2VCYW5uZXI/LmNsYXNzTmFtZSB9fSBtZXNzYWdlLWNvbnRlbnQtc3R5bGVcIj5cclxuICAgICAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9zYS1tZXNzYWdlLWJhbm5lcj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gICAgQGlmICghIWRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8IGRpYWxvZ0RhdGE/LnNob3dDbG9zZUJ1dHRvbikge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiY3Jvc3MtYnRuXCIgKGNsaWNrKT1cIm9uQ2xvc2VCdXR0b25DbGljaygkZXZlbnQpXCI+XHJcbiAgICAgICAgPHNhLWljb25cclxuICAgICAgICAgIFtpY29uXT1cImRpYWxvZ0RhdGE/LmNsb3NlQnV0dG9uIHx8ICdjbG9zZU91dGxpbmVkJ1wiXHJcbiAgICAgICAgICBjbGFzcz1cImQtZmxleFwiXHJcbiAgICAgICAgICBzaXplPVwiMjBcIlxyXG4gICAgICAgID48L3NhLWljb24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gbWlkZGxlIHJlZ2lvbiAtLT5cclxuICBAaWYgKCEhZGlhbG9nRGF0YT8ubWlkZGxlUmVnaW9uKSB7XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlhbG9nRGF0YT8ubWlkZGxlUmVnaW9uIGFzIG1pZGRsZVJlZ2lvblwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2UtZGVzY3JpcHRpb24tY29udGFpbmVyIHt7IG1pZGRsZVJlZ2lvbj8uY2xhc3NOYW1lIH19XCI+XHJcbiAgICAgICAgPHNhLW1lc3NhZ2UtYmFubmVyLXYyXHJcbiAgICAgICAgW21lc3NhZ2VUeXBlXT1cIm1pZGRsZVJlZ2lvbj8ubWVzc2FnZVR5cGUgfHwgJ2RlZmF1bHQnXCJcclxuICAgICAgICBbbWVzc2FnZUljb25dPVwibWlkZGxlUmVnaW9uPy5tZXNzYWdlSWNvblwiXHJcbiAgICAgICAgW21lc3NhZ2VJY29uU2l6ZV09XCJtaWRkbGVSZWdpb24/Lm1lc3NhZ2VJY29uU2l6ZVwiXHJcbiAgICAgICAgW3RpdGxlXT1cIm1pZGRsZVJlZ2lvbj8udGl0bGVcIlxyXG4gICAgICAgIFtkZXNjcmlwdGlvbl09XCJtaWRkbGVSZWdpb24/LmRlc2NyaXB0aW9uXCJcclxuICAgICAgICBbYnV0dG9uc109XCJtaWRkbGVSZWdpb24/LmJ1dHRvbnNcIlxyXG4gICAgICAgIFtmb3JtQ29uZmlnXT1cIm1pZGRsZVJlZ2lvbj8uY29udGVudD8uZm9ybUNvbmZpZ1wiXHJcbiAgICAgICAgKG9uRm9ybUV2ZW50KT1cIm9uVW5pZmllZEZvcm1FdmVudCgkZXZlbnQpXCJcclxuICAgICAgICAoYnV0dG9uQ2xpY2spPVwibWlkZGxlUmVnaW9uPy5idXR0b25zID8gb25CdXR0b25DbGljaygkZXZlbnQpIDogJydcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvc2EtbWVzc2FnZS1iYW5uZXItdjI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgfVxyXG4gIDwhLS0gbG93ZXIgbWVzc2FnZSBiYW5uZXIgcmVnaW9uIC0tPlxyXG4gIEBpZiAoISFkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwibG93ZXItbWVzc2FnZS1jb250YWluZXJcIj5cclxuICAgICAgQGZvciAoXHJcbiAgICAgICAgbWVzc2FnZUJhbm5lciBvZiBkaWFsb2dEYXRhPy5sb3dlck1lc3NhZ2VCYW5uZXJzO1xyXG4gICAgICAgIHRyYWNrIG1lc3NhZ2VCYW5uZXIuY29udGVudFxyXG4gICAgICApIHtcclxuICAgICAgICA8c2EtbWVzc2FnZS1iYW5uZXJcclxuICAgICAgICAgIFt0eXBlXT1cIm1lc3NhZ2VCYW5uZXI/LnR5cGVcIlxyXG4gICAgICAgICAgW2Jhbm5lckljb25dPVwibWVzc2FnZUJhbm5lcj8uYmFubmVySWNvblwiXHJcbiAgICAgICAgICBbYnV0dG9uSWNvbl09XCJtZXNzYWdlQmFubmVyPy5idXR0b25JY29uXCJcclxuICAgICAgICAgIFtiYW5uZXJJY29uU2l6ZV09XCJtZXNzYWdlQmFubmVyPy5iYW5uZXJJY29uU2l6ZSB8fCAnMjQnXCJcclxuICAgICAgICAgIFtidXR0b25dPVwibWVzc2FnZUJhbm5lcj8uYnV0dG9uXCJcclxuICAgICAgICAgIFtzdHlsZV09XCJtZXNzYWdlQmFubmVyPy5zdHlsZSB8fCAnd2lkdGg6LXdlYmtpdC1maWxsLWF2YWlsYWJsZSdcIlxyXG4gICAgICAgICAgKGFjdGlvbkNsaWNrKT1cIm9uQnV0dG9uQ2xpY2sobWVzc2FnZUJhbm5lcj8uYnV0dG9uLCAkZXZlbnQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwie3sgbWVzc2FnZUJhbm5lcj8uY2xhc3NOYW1lIH19IG1lc3NhZ2UtY29udGVudC1zdHlsZVwiXHJcbiAgICAgICAgICA+PC9kaXY+XHJcbiAgICAgICAgICB7eyBtZXNzYWdlQmFubmVyPy5jb250ZW50IH19XHJcbiAgICAgICAgPC9zYS1tZXNzYWdlLWJhbm5lcj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG4gIDwhLS0gYnV0dG9uIHJlZ2lvbiAtLT5cclxuICBAaWYgKCEhZGlhbG9nRGF0YT8uYnV0dG9ucykge1xyXG4gICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1ncm91cC1jb250YWluZXJcIj5cclxuICAgICAgQGZvciAoYnV0dG9uIG9mIGRpYWxvZ0RhdGE/LmJ1dHRvbnM7IHRyYWNrIGJ1dHRvbi50ZXh0KSB7XHJcbiAgICAgICAgPHNhLWJ1dHRvblxyXG4gICAgICAgICAgW3RleHRdPVwiYnV0dG9uLnRleHRcIlxyXG4gICAgICAgICAgW2ljb25dPVwiYnV0dG9uLmljb25cIlxyXG4gICAgICAgICAgW3NpemVdPVwiYnV0dG9uLnNpemVcIlxyXG4gICAgICAgICAgW3R5cGVdPVwiYnV0dG9uLnR5cGVcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cImJ1dHRvbi5zdGF0ZVwiXHJcbiAgICAgICAgICBbaWNvblBvc2l0aW9uXT1cImJ1dHRvbi5pY29uUG9zaXRpb25cIlxyXG4gICAgICAgICAgW2J1dHRvbkljb25TaXplXT1cImJ1dHRvbi5idXR0b25JY29uU2l6ZVwiXHJcbiAgICAgICAgICAob25DbGlja0V2ZW50KT1cIm9uQnV0dG9uQ2xpY2soYnV0dG9uLCAkZXZlbnQpXCJcclxuICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidXR0b24udGV4dFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvc2EtYnV0dG9uPlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbiAgQGlmICghIWRpYWxvZ0RhdGE/LmJ1dHRvbnNXaXRoVHlwZSkge1xyXG4gICAgPGRpdiBjbGFzcz1cImJ1dHRvbldpdGhUeXBlLWdyb3VwLWNvbnRhaW5lclwiPlxyXG4gICAgICBAZm9yIChidXR0b24gb2YgZGlhbG9nRGF0YT8uYnV0dG9uc1dpdGhUeXBlOyB0cmFjayBidXR0b24udGV4dCkge1xyXG4gICAgICAgIEBpZiAoYnV0dG9uPy50eXBlID09PSBcImNoZWNrYm94XCIpIHtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGVja2JveC1jb250YWluZXIge3sgYnV0dG9uLmNsYXNzTmFtZSB9fVwiPlxyXG4gICAgICAgICAgICA8bWF0LWNoZWNrYm94IFtpZF09XCJidXR0b24uaWRcIiAoY2hhbmdlKT1cIm9uQnV0dG9uQ2xpY2soYnV0dG9uKVwiIGNsYXNzPVwiY2hlY2tib3gtc3R5bGVcIj57e1xyXG4gICAgICAgICAgICAgIGJ1dHRvbi50ZXh0XHJcbiAgICAgICAgICAgIH19PC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|