master-control 0.2.16 → 0.2.17

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.
@@ -0,0 +1,31 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, input } from '@angular/core';
3
+ import { MatExpansionModule } from '@angular/material/expansion';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/expansion";
6
+ import * as i2 from "@angular/common";
7
+ export class AccordianComponent {
8
+ field = input.required();
9
+ onPanelOpened() {
10
+ console.log('Panel opened');
11
+ }
12
+ onPanelClosed() {
13
+ console.log('Panel closed');
14
+ }
15
+ onExpandedChange(isExpanded) {
16
+ console.log('Panel expansion changed:', isExpanded);
17
+ if (isExpanded) {
18
+ // Panel is now expanded
19
+ }
20
+ else {
21
+ // Panel is now collapsed
22
+ }
23
+ }
24
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccordianComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
25
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AccordianComponent, isStandalone: true, selector: "lib-accordian", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<mat-accordion \r\n [multi]=\"true\" \r\n [hideToggle]=\"false\"\r\n [displayMode]=\"'default'\"\r\n [togglePosition]=\"'after'\" [ngStyle]=\"{\r\n'--acc-font-color': field()?.controlStyle?.color ,\r\n'--acc-bg-color': field()?.controlStyle?.background ,\r\n'--acc-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--acc-border-width': field()?.controlStyle?.borderWidth ,\r\n'--acc-border-style': field()?.controlStyle?.borderStyle ,\r\n'--acc-border-color': field()?.controlStyle?.borderColor ,\r\n'--acc-font-size': field()?.controlStyle?.fontSize ,\r\n'--acc-font-weight': field()?.controlStyle?.fontWeight \r\n}\">\r\n \r\n <mat-expansion-panel \r\n [expanded]=\"false\"\r\n [disabled]=\"false\"\r\n [hideToggle]=\"false\"\r\n (opened)=\"onPanelOpened()\"\r\n (closed)=\"onPanelClosed()\"\r\n (expandedChange)=\"onExpandedChange($event)\">\r\n \r\n <mat-expansion-panel-header \r\n [collapsedHeight]=\"'48px'\"\r\n [expandedHeight]=\"'64px'\">\r\n \r\n <mat-panel-title>\r\n <span class=\"triangle-icon\" *ngIf=\"field()?.configData?.showLeftArrowIndicator && field()?.configData?.showLeftArrowIndicator === 'true'\"></span>\r\n {{ field()?.label}}\r\n </mat-panel-title>\r\n \r\n <mat-panel-description>\r\n <!-- This is a description of the panel -->\r\n </mat-panel-description>\r\n \r\n </mat-expansion-panel-header>\r\n \r\n <!-- Panel Content -->\r\n <div>\r\n {{ field()?.configData?.accordianContent}}\r\n </div>\r\n \r\n <!-- Action Buttons -->\r\n <!-- <mat-action-row>\r\n <button mat-button color=\"primary\">Save</button>\r\n <button mat-button color=\"warn\">Cancel</button>\r\n </mat-action-row> -->\r\n \r\n </mat-expansion-panel>\r\n</mat-accordion>", styles: ["::ng-deep .mat-expansion-panel{color:var(--acc-font-color , #444)!important;font-size:var(--acc-font-size , 12px)!important;border-radius:var(--acc-border-radius , 8px)!important;border-width:var(--acc-border-width , 0px)!important;border-style:var(--acc-border-style , solid)!important;border-color:var(--acc-border-color , #ffbb00)!important;background:var(--acc-bg-color , #f5f5f5)!important}::ng-deep .mat-expansion-panel-header-title{font-family:Mulish;font-weight:var(--acc-font-weight , 700)!important;font-size:var(--acc-font-size , 12px);color:var(--acc-font-color , #444)!important}::ng-deep .mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:none!important}::ng-deep .mat-expansion-indicator svg{fill:#1c1b1f!important}::ng-deep .mat-expansion-panel-content{font-size:var(--acc-font-size , 12px)!important}.triangle-icon{display:inline-block;width:0;height:0;border-style:solid;border-width:4px 0 4px 7px;border-color:transparent transparent transparent #ffbb00;margin-right:8px;transition:transform .3s ease}::ng-deep .mat-expansion-panel-header.mat-expanded .triangle-icon{transform:rotate(90deg)}\n"], dependencies: [{ kind: "ngmodule", type: MatExpansionModule }, { kind: "directive", type: i1.MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i1.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i1.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i1.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i1.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccordianComponent, decorators: [{
28
+ type: Component,
29
+ args: [{ selector: 'lib-accordian', standalone: true, imports: [MatExpansionModule, CommonModule], template: "<mat-accordion \r\n [multi]=\"true\" \r\n [hideToggle]=\"false\"\r\n [displayMode]=\"'default'\"\r\n [togglePosition]=\"'after'\" [ngStyle]=\"{\r\n'--acc-font-color': field()?.controlStyle?.color ,\r\n'--acc-bg-color': field()?.controlStyle?.background ,\r\n'--acc-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--acc-border-width': field()?.controlStyle?.borderWidth ,\r\n'--acc-border-style': field()?.controlStyle?.borderStyle ,\r\n'--acc-border-color': field()?.controlStyle?.borderColor ,\r\n'--acc-font-size': field()?.controlStyle?.fontSize ,\r\n'--acc-font-weight': field()?.controlStyle?.fontWeight \r\n}\">\r\n \r\n <mat-expansion-panel \r\n [expanded]=\"false\"\r\n [disabled]=\"false\"\r\n [hideToggle]=\"false\"\r\n (opened)=\"onPanelOpened()\"\r\n (closed)=\"onPanelClosed()\"\r\n (expandedChange)=\"onExpandedChange($event)\">\r\n \r\n <mat-expansion-panel-header \r\n [collapsedHeight]=\"'48px'\"\r\n [expandedHeight]=\"'64px'\">\r\n \r\n <mat-panel-title>\r\n <span class=\"triangle-icon\" *ngIf=\"field()?.configData?.showLeftArrowIndicator && field()?.configData?.showLeftArrowIndicator === 'true'\"></span>\r\n {{ field()?.label}}\r\n </mat-panel-title>\r\n \r\n <mat-panel-description>\r\n <!-- This is a description of the panel -->\r\n </mat-panel-description>\r\n \r\n </mat-expansion-panel-header>\r\n \r\n <!-- Panel Content -->\r\n <div>\r\n {{ field()?.configData?.accordianContent}}\r\n </div>\r\n \r\n <!-- Action Buttons -->\r\n <!-- <mat-action-row>\r\n <button mat-button color=\"primary\">Save</button>\r\n <button mat-button color=\"warn\">Cancel</button>\r\n </mat-action-row> -->\r\n \r\n </mat-expansion-panel>\r\n</mat-accordion>", styles: ["::ng-deep .mat-expansion-panel{color:var(--acc-font-color , #444)!important;font-size:var(--acc-font-size , 12px)!important;border-radius:var(--acc-border-radius , 8px)!important;border-width:var(--acc-border-width , 0px)!important;border-style:var(--acc-border-style , solid)!important;border-color:var(--acc-border-color , #ffbb00)!important;background:var(--acc-bg-color , #f5f5f5)!important}::ng-deep .mat-expansion-panel-header-title{font-family:Mulish;font-weight:var(--acc-font-weight , 700)!important;font-size:var(--acc-font-size , 12px);color:var(--acc-font-color , #444)!important}::ng-deep .mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:none!important}::ng-deep .mat-expansion-indicator svg{fill:#1c1b1f!important}::ng-deep .mat-expansion-panel-content{font-size:var(--acc-font-size , 12px)!important}.triangle-icon{display:inline-block;width:0;height:0;border-style:solid;border-width:4px 0 4px 7px;border-color:transparent transparent transparent #ffbb00;margin-right:8px;transition:transform .3s ease}::ng-deep .mat-expansion-panel-header.mat-expanded .triangle-icon{transform:rotate(90deg)}\n"] }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaWFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvYWNjb3JkaWFuL2FjY29yZGlhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2FjY29yZGlhbi9hY2NvcmRpYW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7O0FBU2pFLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsS0FBSyxHQUFTLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQztJQUN0QyxhQUFhO1FBQ1gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDcEQsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLHdCQUF3QjtRQUMxQixDQUFDO2FBQU0sQ0FBQztZQUNOLHlCQUF5QjtRQUMzQixDQUFDO0lBQ0gsQ0FBQzt3R0FqQlksa0JBQWtCOzRGQUFsQixrQkFBa0IsNE1DWC9CLCt4REFrRGdCLDRwQ0QzQ0osa0JBQWtCLHd0QkFBRyxZQUFZOzs0RkFJaEMsa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsRUFBRyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1hY2NvcmRpYW4nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdEV4cGFuc2lvbk1vZHVsZSAsIENvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FjY29yZGlhbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2FjY29yZGlhbi5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWNjb3JkaWFuQ29tcG9uZW50IHtcclxuICBmaWVsZCA6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxub25QYW5lbE9wZW5lZCgpOiB2b2lkIHtcclxuICBjb25zb2xlLmxvZygnUGFuZWwgb3BlbmVkJyk7XHJcbn1cclxuXHJcbm9uUGFuZWxDbG9zZWQoKTogdm9pZCB7XHJcbiAgY29uc29sZS5sb2coJ1BhbmVsIGNsb3NlZCcpO1xyXG59XHJcblxyXG5vbkV4cGFuZGVkQ2hhbmdlKGlzRXhwYW5kZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICBjb25zb2xlLmxvZygnUGFuZWwgZXhwYW5zaW9uIGNoYW5nZWQ6JywgaXNFeHBhbmRlZCk7XHJcbiAgaWYgKGlzRXhwYW5kZWQpIHtcclxuICAgIC8vIFBhbmVsIGlzIG5vdyBleHBhbmRlZFxyXG4gIH0gZWxzZSB7XHJcbiAgICAvLyBQYW5lbCBpcyBub3cgY29sbGFwc2VkXHJcbiAgfVxyXG59XHJcbn1cclxuIiwiPG1hdC1hY2NvcmRpb24gXHJcbiAgW211bHRpXT1cInRydWVcIiBcclxuICBbaGlkZVRvZ2dsZV09XCJmYWxzZVwiXHJcbiAgW2Rpc3BsYXlNb2RlXT1cIidkZWZhdWx0J1wiXHJcbiAgW3RvZ2dsZVBvc2l0aW9uXT1cIidhZnRlcidcIiBbbmdTdHlsZV09XCJ7XHJcbictLWFjYy1mb250LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jb2xvciAsXHJcbictLWFjYy1iZy1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYmFja2dyb3VuZCAsXHJcbictLWFjYy1ib3JkZXItcmFkaXVzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMgLFxyXG4nLS1hY2MtYm9yZGVyLXdpZHRoJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJXaWR0aCAsXHJcbictLWFjYy1ib3JkZXItc3R5bGUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlclN0eWxlICxcclxuJy0tYWNjLWJvcmRlci1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyQ29sb3IgLFxyXG4nLS1hY2MtZm9udC1zaXplJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250U2l6ZSAsXHJcbictLWFjYy1mb250LXdlaWdodCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFdlaWdodCBcclxufVwiPlxyXG4gIFxyXG4gIDxtYXQtZXhwYW5zaW9uLXBhbmVsIFxyXG4gICAgW2V4cGFuZGVkXT1cImZhbHNlXCJcclxuICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXHJcbiAgICBbaGlkZVRvZ2dsZV09XCJmYWxzZVwiXHJcbiAgICAob3BlbmVkKT1cIm9uUGFuZWxPcGVuZWQoKVwiXHJcbiAgICAoY2xvc2VkKT1cIm9uUGFuZWxDbG9zZWQoKVwiXHJcbiAgICAoZXhwYW5kZWRDaGFuZ2UpPVwib25FeHBhbmRlZENoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICBcclxuICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlciBcclxuICAgICAgW2NvbGxhcHNlZEhlaWdodF09XCInNDhweCdcIlxyXG4gICAgICBbZXhwYW5kZWRIZWlnaHRdPVwiJzY0cHgnXCI+XHJcbiAgICAgIFxyXG4gICAgICA8bWF0LXBhbmVsLXRpdGxlPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwidHJpYW5nbGUtaWNvblwiICpuZ0lmPVwiZmllbGQoKT8uY29uZmlnRGF0YT8uc2hvd0xlZnRBcnJvd0luZGljYXRvciAmJiBmaWVsZCgpPy5jb25maWdEYXRhPy5zaG93TGVmdEFycm93SW5kaWNhdG9yID09PSAndHJ1ZSdcIj48L3NwYW4+XHJcbiAgICAgICAge3sgZmllbGQoKT8ubGFiZWx9fVxyXG4gICAgICA8L21hdC1wYW5lbC10aXRsZT5cclxuICAgICAgXHJcbiAgICAgIDxtYXQtcGFuZWwtZGVzY3JpcHRpb24+XHJcbiAgICAgICAgPCEtLSBUaGlzIGlzIGEgZGVzY3JpcHRpb24gb2YgdGhlIHBhbmVsIC0tPlxyXG4gICAgICA8L21hdC1wYW5lbC1kZXNjcmlwdGlvbj5cclxuICAgICAgXHJcbiAgICA8L21hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxyXG4gICAgXHJcbiAgICA8IS0tIFBhbmVsIENvbnRlbnQgLS0+XHJcbiAgICA8ZGl2PlxyXG4gICAgICB7eyBmaWVsZCgpPy5jb25maWdEYXRhPy5hY2NvcmRpYW5Db250ZW50fX1cclxuICAgIDwvZGl2PlxyXG4gICAgXHJcbiAgICA8IS0tIEFjdGlvbiBCdXR0b25zIC0tPlxyXG4gICAgPCEtLSA8bWF0LWFjdGlvbi1yb3c+XHJcbiAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIj5TYXZlPC9idXR0b24+XHJcbiAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cIndhcm5cIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgIDwvbWF0LWFjdGlvbi1yb3c+IC0tPlxyXG4gICAgXHJcbiAgPC9tYXQtZXhwYW5zaW9uLXBhbmVsPlxyXG48L21hdC1hY2NvcmRpb24+Il19
@@ -61,13 +61,15 @@ import { DiscountV2Component } from './discount-v2/discount-v2.component';
61
61
  import { LabelValueCardComponent } from './label-value-card/label-value-card.component';
62
62
  import { MedialQuestionsComponent } from "./medial-questions/medial-questions.component";
63
63
  import { PageNudgeComponent } from './page-nudge/page-nudge.component';
64
+ import { ProgressBarComponent } from "./progress-bar/progress-bar.component";
65
+ import { AccordianComponent } from "./accordian/accordian.component";
64
66
  import * as i0 from "@angular/core";
65
67
  export class MasterControlComponent {
66
68
  field = input.required();
67
69
  formGroup = new FormGroup({});
68
70
  constructor() { }
69
71
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MasterControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MasterControlComponent, isStandalone: true, selector: "lib-master-control", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: false, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n}\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: TextboxComponent, selector: "lib-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["field"] }, { kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field"] }, { kind: "component", type: UploadComponent, selector: "lib-upload", inputs: ["field"] }, { kind: "component", type: DobComponent, selector: "lib-dob", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: MobNumberComponent, selector: "lib-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: InfoComponent, selector: "lib-info", inputs: ["field"] }, { kind: "component", type: CheckboxComponent, selector: "lib-checkbox", inputs: ["field"] }, { kind: "component", type: TextareaComponent, selector: "lib-textarea", inputs: ["field"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: TabComponent, selector: "lib-tab", inputs: ["field"], outputs: ["selectedIndexChange"] }, { kind: "component", type: AutocompleteComponent, selector: "lib-autocomplete", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: MultipleSelectComponent, selector: "lib-multiple-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpTextboxComponent, selector: "lib-otp-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AmountTextboxComponent, selector: "lib-amount-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SuffixTextboxComponent, selector: "lib-suffix-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpMobNumberComponent, selector: "lib-otp-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: TagMobNumberComponent, selector: "lib-tag-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AgeDateComponent, selector: "lib-age-date", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AdditionButtonComponent, selector: "lib-addition-button", inputs: ["field"] }, { kind: "component", type: InfoTextboxComponent, selector: "lib-info-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: TextboxWithImageComponent, selector: "lib-textbox-with-image", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: EmailWithDomainComponent, selector: "lib-email-with-domain", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ImageUploadComponent, selector: "lib-image-upload", inputs: ["field"] }, { kind: "component", type: DownloadDocumentComponent, selector: "lib-download-document", inputs: ["field"] }, { kind: "component", type: AddDocumentComponent, selector: "lib-add-document", inputs: ["field"] }, { kind: "component", type: HyperlinkComponent, selector: "lib-hyperlink", inputs: ["field"] }, { kind: "component", type: TextboxWithUnderscoreComponent, selector: "lib-textbox-with-underscore", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: UnderscoreMobNumberComponent, selector: "lib-underscore-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: ImageComponent, selector: "lib-image", inputs: ["field"] }, { kind: "component", type: StepperComponent, selector: "lib-stepper", inputs: ["field"] }, { kind: "component", type: CardComponent, selector: "lib-card", inputs: ["field"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: SearchMultiSelectComponent, selector: "lib-search-multi-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SubscriptTextboxComponent, selector: "lib-subscript-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: LabelComponent, selector: "lib-label", inputs: ["field"] }, { kind: "component", type: SubHeaderComponent, selector: "lib-sub-header", inputs: ["field"] }, { kind: "component", type: HeaderComponent, selector: "lib-header", inputs: ["field"] }, { kind: "component", type: TextboxWithTextComponent, selector: "lib-textbox-with-text", inputs: ["reactiveFormControlobject", "field"] }, { kind: "component", type: DiscountComponent, selector: "lib-discount", inputs: ["field"] }, { kind: "component", type: BenefitCardComponent, selector: "lib-benefit-card", inputs: ["field"] }, { kind: "component", type: TableComponent, selector: "lib-table", inputs: ["field", "readonly"] }, { kind: "component", type: LoaderComponent, selector: "lib-loader", inputs: ["field"] }, { kind: "component", type: WarningSnackbarComponent, selector: "lib-warning-snackbar", inputs: ["field"] }, { kind: "component", type: SuccessSnackbarComponent, selector: "lib-success-snackbar", inputs: ["field"] }, { kind: "component", type: NeutralSnackbarComponent, selector: "lib-neutral-snackbar", inputs: ["field"] }, { kind: "component", type: ErrorSnackbarComponent, selector: "lib-error-snackbar", inputs: ["field"] }, { kind: "component", type: GreyLabelComponent, selector: "lib-grey-label", inputs: ["field"] }, { kind: "component", type: IframeComponent, selector: "lib-iframe", inputs: ["field"] }, { kind: "component", type: ToggleButtonComponent, selector: "lib-toggle-button", inputs: ["field"] }, { kind: "component", type: PayGetCardComponent, selector: "lib-pay-get-card", inputs: ["field", "payAmount", "premiumAmount", "ptValue", "years", "frequency"] }, { kind: "component", type: InBuiltBenefitComponent, selector: "lib-in-built-benefit", inputs: ["field", "premiumAmount", "premiumAmountShort"] }, { kind: "component", type: OtherBenefitsComponent, selector: "lib-other-benefits", inputs: ["field"] }, { kind: "component", type: AnnuityRateLogoComponent, selector: "lib-annuity-rate-logo", inputs: ["field", "ratePercent"] }, { kind: "component", type: DiscountV2Component, selector: "lib-discount-v2", inputs: ["field"] }, { kind: "component", type: LabelValueCardComponent, selector: "lib-label-value-card", inputs: ["field"] }, { kind: "component", type: MedialQuestionsComponent, selector: "lib-medial-questions", inputs: ["medialQuestionResponse", "field"] }, { kind: "component", type: PageNudgeComponent, selector: "lib-page-nudge", inputs: ["field"] }] });
72
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MasterControlComponent, isStandalone: true, selector: "lib-master-control", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: false, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n @case ('progressBar'){\r\n <lib-progress-bar [field]=\"field()\"/>\r\n }\r\n @case ('accordian'){\r\n <lib-accordian [field]=\"field()\"/>\r\n }\r\n}\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: TextboxComponent, selector: "lib-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["field"] }, { kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field"] }, { kind: "component", type: UploadComponent, selector: "lib-upload", inputs: ["field"] }, { kind: "component", type: DobComponent, selector: "lib-dob", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: MobNumberComponent, selector: "lib-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: InfoComponent, selector: "lib-info", inputs: ["field"] }, { kind: "component", type: CheckboxComponent, selector: "lib-checkbox", inputs: ["field"] }, { kind: "component", type: TextareaComponent, selector: "lib-textarea", inputs: ["field"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: TabComponent, selector: "lib-tab", inputs: ["field"], outputs: ["selectedIndexChange"] }, { kind: "component", type: AutocompleteComponent, selector: "lib-autocomplete", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: MultipleSelectComponent, selector: "lib-multiple-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpTextboxComponent, selector: "lib-otp-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AmountTextboxComponent, selector: "lib-amount-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SuffixTextboxComponent, selector: "lib-suffix-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpMobNumberComponent, selector: "lib-otp-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: TagMobNumberComponent, selector: "lib-tag-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AgeDateComponent, selector: "lib-age-date", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AdditionButtonComponent, selector: "lib-addition-button", inputs: ["field"] }, { kind: "component", type: InfoTextboxComponent, selector: "lib-info-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: TextboxWithImageComponent, selector: "lib-textbox-with-image", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: EmailWithDomainComponent, selector: "lib-email-with-domain", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ImageUploadComponent, selector: "lib-image-upload", inputs: ["field"] }, { kind: "component", type: DownloadDocumentComponent, selector: "lib-download-document", inputs: ["field"] }, { kind: "component", type: AddDocumentComponent, selector: "lib-add-document", inputs: ["field"] }, { kind: "component", type: HyperlinkComponent, selector: "lib-hyperlink", inputs: ["field"] }, { kind: "component", type: TextboxWithUnderscoreComponent, selector: "lib-textbox-with-underscore", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: UnderscoreMobNumberComponent, selector: "lib-underscore-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: ImageComponent, selector: "lib-image", inputs: ["field"] }, { kind: "component", type: StepperComponent, selector: "lib-stepper", inputs: ["field"] }, { kind: "component", type: CardComponent, selector: "lib-card", inputs: ["field"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: SearchMultiSelectComponent, selector: "lib-search-multi-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SubscriptTextboxComponent, selector: "lib-subscript-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: LabelComponent, selector: "lib-label", inputs: ["field"] }, { kind: "component", type: SubHeaderComponent, selector: "lib-sub-header", inputs: ["field"] }, { kind: "component", type: HeaderComponent, selector: "lib-header", inputs: ["field"] }, { kind: "component", type: TextboxWithTextComponent, selector: "lib-textbox-with-text", inputs: ["reactiveFormControlobject", "field"] }, { kind: "component", type: DiscountComponent, selector: "lib-discount", inputs: ["field"] }, { kind: "component", type: BenefitCardComponent, selector: "lib-benefit-card", inputs: ["field"] }, { kind: "component", type: TableComponent, selector: "lib-table", inputs: ["field", "readonly"] }, { kind: "component", type: LoaderComponent, selector: "lib-loader", inputs: ["field"] }, { kind: "component", type: WarningSnackbarComponent, selector: "lib-warning-snackbar", inputs: ["field"] }, { kind: "component", type: SuccessSnackbarComponent, selector: "lib-success-snackbar", inputs: ["field"] }, { kind: "component", type: NeutralSnackbarComponent, selector: "lib-neutral-snackbar", inputs: ["field"] }, { kind: "component", type: ErrorSnackbarComponent, selector: "lib-error-snackbar", inputs: ["field"] }, { kind: "component", type: GreyLabelComponent, selector: "lib-grey-label", inputs: ["field"] }, { kind: "component", type: IframeComponent, selector: "lib-iframe", inputs: ["field"] }, { kind: "component", type: ToggleButtonComponent, selector: "lib-toggle-button", inputs: ["field"] }, { kind: "component", type: PayGetCardComponent, selector: "lib-pay-get-card", inputs: ["field", "payAmount", "premiumAmount", "ptValue", "years", "frequency"] }, { kind: "component", type: InBuiltBenefitComponent, selector: "lib-in-built-benefit", inputs: ["field", "premiumAmount", "premiumAmountShort"] }, { kind: "component", type: OtherBenefitsComponent, selector: "lib-other-benefits", inputs: ["field"] }, { kind: "component", type: AnnuityRateLogoComponent, selector: "lib-annuity-rate-logo", inputs: ["field", "ratePercent"] }, { kind: "component", type: DiscountV2Component, selector: "lib-discount-v2", inputs: ["field"] }, { kind: "component", type: LabelValueCardComponent, selector: "lib-label-value-card", inputs: ["field"] }, { kind: "component", type: MedialQuestionsComponent, selector: "lib-medial-questions", inputs: ["medialQuestionResponse", "field"] }, { kind: "component", type: PageNudgeComponent, selector: "lib-page-nudge", inputs: ["field"] }, { kind: "component", type: ProgressBarComponent, selector: "lib-progress-bar", inputs: ["field"] }, { kind: "component", type: AccordianComponent, selector: "lib-accordian", inputs: ["field"] }] });
71
73
  }
72
74
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MasterControlComponent, decorators: [{
73
75
  type: Component,
@@ -134,9 +136,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
134
136
  DiscountV2Component,
135
137
  LabelValueCardComponent,
136
138
  MedialQuestionsComponent,
137
- PageNudgeComponent
138
- ], template: "@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n}\r\n" }]
139
+ PageNudgeComponent,
140
+ ProgressBarComponent,
141
+ AccordianComponent
142
+ ], template: "@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n @case ('progressBar'){\r\n <lib-progress-bar [field]=\"field()\"/>\r\n }\r\n @case ('accordian'){\r\n <lib-accordian [field]=\"field()\"/>\r\n }\r\n}\r\n" }]
139
143
  }], ctorParameters: () => [], propDecorators: { formGroup: [{
140
144
  type: Input
141
145
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL21hc3Rlci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzdHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDNUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUF5RXZFLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsS0FBSyxHQUFRLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQztJQUMxQixTQUFTLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEQsZ0JBQWUsQ0FBQzt3R0FITCxzQkFBc0I7NEZBQXRCLHNCQUFzQixzVkMxSW5DLHNuS0F3TkEseUREakpJLFdBQVcsK0JBQ1gsZ0JBQWdCLHdHQUNoQixlQUFlLHVHQUNmLGNBQWMseUVBQ2QsZUFBZSwwRUFDZixlQUFlLDBFQUNmLFlBQVksb0dBQ1osa0JBQWtCLDJHQUNsQixhQUFhLHdFQUNiLGlCQUFpQiw0RUFDakIsaUJBQWlCLDRFQUNqQixlQUFlLDBFQUNmLFlBQVkseUdBQ1oscUJBQXFCLDZHQUNyQix1QkFBdUIsZ0hBQ3ZCLHNCQUFzQiwrR0FDdEIsbUJBQW1CLDRHQUNuQixzQkFBc0IsK0dBQ3RCLHNCQUFzQiwrR0FDdEIscUJBQXFCLCtHQUNyQixxQkFBcUIsK0dBQ3JCLGdCQUFnQix5R0FDaEIsdUJBQXVCLG1GQUN2QixvQkFBb0IsNkdBQ3BCLHlCQUF5QixtSEFDekIsd0JBQXdCLGtIQUN4QixvQkFBb0IsZ0ZBQ3BCLHlCQUF5QixxRkFDekIsb0JBQW9CLGdGQUNwQixrQkFBa0IsNkVBQ2xCLDhCQUE4Qix3SEFDOUIsNEJBQTRCLHNIQUM1QixtQkFBbUIsOEVBQ25CLG1CQUFtQiwrQkFDbkIsY0FBYyx5RUFDZCxnQkFBZ0IsMkVBQ2hCLGFBQWEsd0VBQ2IsZUFBZSwyRUFDZiwwQkFBMEIsb0hBQzFCLHlCQUF5QixrSEFDekIsY0FBYyx5RUFDZCxrQkFBa0IsOEVBQ2xCLGVBQWUsMEVBQ2Ysd0JBQXdCLGtIQUN4QixpQkFBaUIsNEVBQ2pCLG9CQUFvQixnRkFDcEIsY0FBYyxxRkFDZCxlQUFlLDBFQUNmLHdCQUF3QixvRkFDeEIsd0JBQXdCLG9GQUN4Qix3QkFBd0Isb0ZBQ3hCLHNCQUFzQixrRkFDdEIsa0JBQWtCLDhFQUNsQixlQUFlLDBFQUNmLHFCQUFxQixpRkFDckIsbUJBQW1CLCtJQUNuQix1QkFBdUIsMkhBQ3ZCLHNCQUFzQixrRkFDdEIsd0JBQXdCLG9HQUN4QixtQkFBbUIsK0VBQ25CLHVCQUF1QixvRkFDdkIsd0JBQXdCLDhHQUN4QixrQkFBa0I7OzRGQUtULHNCQUFzQjtrQkF2RWxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUDt3QkFDUCxXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixZQUFZO3dCQUNaLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLHVCQUF1Qjt3QkFDdkIsb0JBQW9CO3dCQUNwQix5QkFBeUI7d0JBQ3pCLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3dCQUNwQix5QkFBeUI7d0JBQ3pCLG9CQUFvQjt3QkFDcEIsa0JBQWtCO3dCQUNsQiw4QkFBOEI7d0JBQzlCLDRCQUE0Qjt3QkFDNUIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsMEJBQTBCO3dCQUMxQix5QkFBeUI7d0JBQ3pCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsaUJBQWlCO3dCQUNqQixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixzQkFBc0I7d0JBQ3RCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsa0JBQWtCO3FCQUNyQjt3REFNVSxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRleHRib3hDb21wb25lbnQgfSBmcm9tICcuL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XHJcbmltcG9ydCB7IFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnLi9yYWRpby9yYWRpby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb2dnbGVDb21wb25lbnQgfSBmcm9tICcuL3RvZ2dsZS90b2dnbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi91cGxvYWQvdXBsb2FkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERvYkNvbXBvbmVudCB9IGZyb20gJy4vZG9iL2RvYi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb2JOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL21vYi1udW1iZXIvbW9iLW51bWJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9pbmZvL2luZm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRleHRhcmVhQ29tcG9uZW50IH0gZnJvbSAnLi90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJDb21wb25lbnQgfSBmcm9tIFwiLi90YWIvdGFiLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tIFwiLi9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBNdWx0aXBsZVNlbGVjdENvbXBvbmVudCB9IGZyb20gXCIuL211bHRpcGxlLXNlbGVjdC9tdWx0aXBsZS1zZWxlY3QuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFNlbGVjdFRleHRib3hDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC10ZXh0Ym94L3NlbGVjdC10ZXh0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE90cFRleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9vdHAtdGV4dGJveC9vdHAtdGV4dGJveC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQW1vdW50VGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL2Ftb3VudC10ZXh0Ym94L2Ftb3VudC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWZmaXhUZXh0Ym94Q29tcG9uZW50IH0gZnJvbSBcIi4vc3VmZml4LXRleHRib3gvc3VmZml4LXRleHRib3guY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE90cE1vYk51bWJlckNvbXBvbmVudCB9IGZyb20gXCIuL290cC1tb2ItbnVtYmVyL290cC1tb2ItbnVtYmVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUYWdNb2JOdW1iZXJDb21wb25lbnQgfSBmcm9tIFwiLi90YWctbW9iLW51bWJlci90YWctbW9iLW51bWJlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQWdlRGF0ZUNvbXBvbmVudCB9IGZyb20gXCIuL2FnZS1kYXRlL2FnZS1kYXRlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZGRpdGlvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL2FkZGl0aW9uLWJ1dHRvbi9hZGRpdGlvbi1idXR0b24uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEluZm9UZXh0Ym94Q29tcG9uZW50IH0gZnJvbSBcIi4vaW5mby10ZXh0Ym94L2luZm8tdGV4dGJveC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgVGV4dGJveFdpdGhJbWFnZUNvbXBvbmVudCB9IGZyb20gXCIuL3RleHRib3gtd2l0aC1pbWFnZS90ZXh0Ym94LXdpdGgtaW1hZ2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEVtYWlsV2l0aERvbWFpbkNvbXBvbmVudCB9IGZyb20gXCIuL2VtYWlsLXdpdGgtZG9tYWluL2VtYWlsLXdpdGgtZG9tYWluLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBJbWFnZVVwbG9hZENvbXBvbmVudCB9IGZyb20gXCIuL2ltYWdlLXVwbG9hZC9pbWFnZS11cGxvYWQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERvd25sb2FkRG9jdW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi9kb3dubG9hZC1kb2N1bWVudC9kb3dubG9hZC1kb2N1bWVudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQWRkRG9jdW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi9hZGQtZG9jdW1lbnQvYWRkLWRvY3VtZW50LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBIeXBlcmxpbmtDb21wb25lbnQgfSBmcm9tIFwiLi9oeXBlcmxpbmsvaHlwZXJsaW5rLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aFVuZGVyc2NvcmVDb21wb25lbnQgfSBmcm9tIFwiLi90ZXh0Ym94LXdpdGgtdW5kZXJzY29yZS90ZXh0Ym94LXdpdGgtdW5kZXJzY29yZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgVW5kZXJzY29yZU1vYk51bWJlckNvbXBvbmVudCB9IGZyb20gXCIuL3VuZGVyc2NvcmUtbW9iLW51bWJlci91bmRlcnNjb3JlLW1vYi1udW1iZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0ZXBwZXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IENhcmRDb21wb25lbnQgfSBmcm9tIFwiLi9jYXJkL2NhcmQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEhyTGluZUNvbXBvbmVudCB9IGZyb20gXCIuL2hyLWxpbmUvaHItbGluZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2VhcmNoTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tIFwiLi9zZWFyY2gtbXVsdGktc2VsZWN0L3NlYXJjaC1tdWx0aS1zZWxlY3QuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFN1YnNjcmlwdFRleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9zdWJzY3JpcHQtdGV4dGJveC9zdWJzY3JpcHQtdGV4dGJveC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTGFiZWxDb21wb25lbnQgfSBmcm9tIFwiLi9sYWJlbC9sYWJlbC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3ViSGVhZGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vc3ViLWhlYWRlci9zdWItaGVhZGVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tIFwiLi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vdGFibGUvdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGJveFdpdGhUZXh0Q29tcG9uZW50IH0gZnJvbSBcIi4vdGV4dGJveC13aXRoLXRleHQvdGV4dGJveC13aXRoLXRleHQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERpc2NvdW50Q29tcG9uZW50IH0gZnJvbSBcIi4vZGlzY291bnQvZGlzY291bnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEJlbmVmaXRDYXJkQ29tcG9uZW50IH0gZnJvbSBcIi4vYmVuZWZpdC1jYXJkL2JlbmVmaXQtY2FyZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkZXIvbG9hZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFdhcm5pbmdTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL3dhcm5pbmctc25hY2tiYXIvd2FybmluZy1zbmFja2Jhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3VjY2Vzc1NuYWNrYmFyQ29tcG9uZW50IH0gZnJvbSBcIi4vc3VjY2Vzcy1zbmFja2Jhci9zdWNjZXNzLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBOZXV0cmFsU25hY2tiYXJDb21wb25lbnQgfSBmcm9tIFwiLi9uZXV0cmFsLXNuYWNrYmFyL25ldXRyYWwtc25hY2tiYXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEVycm9yU25hY2tiYXJDb21wb25lbnQgfSBmcm9tIFwiLi9lcnJvci1zbmFja2Jhci9lcnJvci1zbmFja2Jhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgR3JleUxhYmVsQ29tcG9uZW50IH0gZnJvbSBcIi4vZ3JleS1sYWJlbC9ncmV5LWxhYmVsLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBJZnJhbWVDb21wb25lbnQgfSBmcm9tIFwiLi9pZnJhbWUvaWZyYW1lLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUb2dnbGVCdXR0b25Db21wb25lbnQgfSBmcm9tIFwiLi90b2dnbGUtYnV0dG9uL3RvZ2dsZS1idXR0b24uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFBheUdldENhcmRDb21wb25lbnQgfSBmcm9tIFwiLi9wYXktZ2V0LWNhcmQvcGF5LWdldC1jYXJkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBJbkJ1aWx0QmVuZWZpdENvbXBvbmVudCB9IGZyb20gXCIuL2luLWJ1aWx0LWJlbmVmaXQvaW4tYnVpbHQtYmVuZWZpdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3RoZXJCZW5lZml0c0NvbXBvbmVudCB9IGZyb20gXCIuL290aGVyLWJlbmVmaXRzL290aGVyLWJlbmVmaXRzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBbm51aXR5UmF0ZUxvZ29Db21wb25lbnQgfSBmcm9tIFwiLi9hbm51aXR5LXJhdGUtbG9nby9hbm51aXR5LXJhdGUtbG9nby5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGlzY291bnRWMkNvbXBvbmVudCB9IGZyb20gJy4vZGlzY291bnQtdjIvZGlzY291bnQtdjIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGFiZWxWYWx1ZUNhcmRDb21wb25lbnQgfSBmcm9tICcuL2xhYmVsLXZhbHVlLWNhcmQvbGFiZWwtdmFsdWUtY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNZWRpYWxRdWVzdGlvbnNDb21wb25lbnQgfSBmcm9tIFwiLi9tZWRpYWwtcXVlc3Rpb25zL21lZGlhbC1xdWVzdGlvbnMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFBhZ2VOdWRnZUNvbXBvbmVudCB9IGZyb20gJy4vcGFnZS1udWRnZS9wYWdlLW51ZGdlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1tYXN0ZXItY29udHJvbCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFRleHRib3hDb21wb25lbnQsXHJcbiAgICBTZWxlY3RDb21wb25lbnQsXHJcbiAgICBSYWRpb0NvbXBvbmVudCxcclxuICAgIFRvZ2dsZUNvbXBvbmVudCxcclxuICAgIFVwbG9hZENvbXBvbmVudCxcclxuICAgIERvYkNvbXBvbmVudCxcclxuICAgIE1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEluZm9Db21wb25lbnQsXHJcbiAgICBDaGVja2JveENvbXBvbmVudCxcclxuICAgIFRleHRhcmVhQ29tcG9uZW50LFxyXG4gICAgQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgVGFiQ29tcG9uZW50LFxyXG4gICAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxyXG4gICAgTXVsdGlwbGVTZWxlY3RDb21wb25lbnQsXHJcbiAgICBTZWxlY3RUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgT3RwVGV4dGJveENvbXBvbmVudCxcclxuICAgIEFtb3VudFRleHRib3hDb21wb25lbnQsXHJcbiAgICBTdWZmaXhUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgT3RwTW9iTnVtYmVyQ29tcG9uZW50LFxyXG4gICAgVGFnTW9iTnVtYmVyQ29tcG9uZW50LFxyXG4gICAgQWdlRGF0ZUNvbXBvbmVudCxcclxuICAgIEFkZGl0aW9uQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgSW5mb1RleHRib3hDb21wb25lbnQsXHJcbiAgICBUZXh0Ym94V2l0aEltYWdlQ29tcG9uZW50LFxyXG4gICAgRW1haWxXaXRoRG9tYWluQ29tcG9uZW50LFxyXG4gICAgSW1hZ2VVcGxvYWRDb21wb25lbnQsXHJcbiAgICBEb3dubG9hZERvY3VtZW50Q29tcG9uZW50LFxyXG4gICAgQWRkRG9jdW1lbnRDb21wb25lbnQsXHJcbiAgICBIeXBlcmxpbmtDb21wb25lbnQsXHJcbiAgICBUZXh0Ym94V2l0aFVuZGVyc2NvcmVDb21wb25lbnQsXHJcbiAgICBVbmRlcnNjb3JlTW9iTnVtYmVyQ29tcG9uZW50LFxyXG4gICAgSWNvbkJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBJbWFnZUNvbXBvbmVudCxcclxuICAgIFN0ZXBwZXJDb21wb25lbnQsXHJcbiAgICBDYXJkQ29tcG9uZW50LFxyXG4gICAgSHJMaW5lQ29tcG9uZW50LFxyXG4gICAgU2VhcmNoTXVsdGlTZWxlY3RDb21wb25lbnQsXHJcbiAgICBTdWJzY3JpcHRUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgTGFiZWxDb21wb25lbnQsXHJcbiAgICBTdWJIZWFkZXJDb21wb25lbnQsXHJcbiAgICBIZWFkZXJDb21wb25lbnQsXHJcbiAgICBUZXh0Ym94V2l0aFRleHRDb21wb25lbnQsXHJcbiAgICBEaXNjb3VudENvbXBvbmVudCxcclxuICAgIEJlbmVmaXRDYXJkQ29tcG9uZW50LFxyXG4gICAgVGFibGVDb21wb25lbnQsXHJcbiAgICBMb2FkZXJDb21wb25lbnQsXHJcbiAgICBXYXJuaW5nU25hY2tiYXJDb21wb25lbnQsXHJcbiAgICBTdWNjZXNzU25hY2tiYXJDb21wb25lbnQsXHJcbiAgICBOZXV0cmFsU25hY2tiYXJDb21wb25lbnQsXHJcbiAgICBFcnJvclNuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgR3JleUxhYmVsQ29tcG9uZW50LFxyXG4gICAgSWZyYW1lQ29tcG9uZW50LFxyXG4gICAgVG9nZ2xlQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgUGF5R2V0Q2FyZENvbXBvbmVudCxcclxuICAgIEluQnVpbHRCZW5lZml0Q29tcG9uZW50LFxyXG4gICAgT3RoZXJCZW5lZml0c0NvbXBvbmVudCxcclxuICAgIEFubnVpdHlSYXRlTG9nb0NvbXBvbmVudCxcclxuICAgIERpc2NvdW50VjJDb21wb25lbnQsXHJcbiAgICBMYWJlbFZhbHVlQ2FyZENvbXBvbmVudCxcclxuICAgIE1lZGlhbFF1ZXN0aW9uc0NvbXBvbmVudCAsXHJcbiAgICBQYWdlTnVkZ2VDb21wb25lbnRcclxuXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWFzdGVyLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21hc3Rlci1jb250cm9sLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFzdGVyQ29udHJvbENvbXBvbmVudCB7XHJcbiAgZmllbGQ6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxuICBASW5wdXQoKSBmb3JtR3JvdXA6IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxufVxyXG4iLCJAc3dpdGNoIChmaWVsZCgpPy5jb250cm9sVHlwZSkge1xyXG4gIEBjYXNlKCd0ZXh0Jykge1xyXG4gICA8bGliLXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIj48L2xpYi10ZXh0Ym94PlxyXG4gIH1cclxuICBAY2FzZSgnc2VsZWN0Jykge1xyXG4gICAgPGxpYi1zZWxlY3QgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgncmFkaW8nKSB7XHJcbiAgICA8bGliLXJhZGlvIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCd0b2dnbGUnKSB7XHJcbiAgICA8bGliLXRvZ2dsZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgnZmlsZScpIHtcclxuICAgIDxsaWItdXBsb2FkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdkYXRlJykge1xyXG4gICAgPGxpYi1kb2IgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ21vYmlsZU51bWJlcicpIHtcclxuICAgIDxsaWItbW9iLW51bWJlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgnaW5mbycpIHtcclxuICAgIDxsaWItaW5mbyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgnY2hlY2tib3gnKSB7XHJcbiAgICA8bGliLWNoZWNrYm94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCd0ZXh0YXJlYScpIHtcclxuICAgIDxsaWItdGV4dGFyZWEgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdidXR0b24nKSB7XHJcbiAgICA8bGliLWJ1dHRvbiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RhYicpIHtcclxuICAgIDxsaWItdGFiIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnYXV0b2NvbXBsZXRlJykge1xyXG4gICAgPGxpYi1hdXRvY29tcGxldGUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdtdWx0aXBsZVNlbGVjdCcpIHtcclxuICAgIDxsaWItbXVsdGlwbGUtc2VsZWN0IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGV4dGJveFdpdGhTZWxlY3QnKSB7XHJcbiAgICA8bGliLXNlbGVjdC10ZXh0Ym94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnb3RwVGV4dGJveCcpIHtcclxuICAgIDxsaWItb3RwLXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhbW91bnRUZXh0Ym94Jykge1xyXG4gICAgPGxpYi1hbW91bnQtdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3N1ZmZpeFRleHRib3gnKSB7XHJcbiAgICA8bGliLXN1ZmZpeC10ZXh0Ym94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnb3RwTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi1vdHAtbW9iLW51bWJlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RhZ01vYk51bWJlcicpIHtcclxuICAgIDxsaWItdGFnLW1vYi1udW1iZXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdkYXRlV2l0aEFnZScpIHtcclxuICAgICA8bGliLWFnZS1kYXRlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnYWRkaXRpb25CdXR0b24nKSB7XHJcbiAgICA8bGliLWFkZGl0aW9uLWJ1dHRvbiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2luZm9UZXh0Ym94Jykge1xyXG4gICAgPGxpYi1pbmZvLXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aEltYWdlJykge1xyXG4gICAgPGxpYi10ZXh0Ym94LXdpdGgtaW1hZ2UgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdlbWFpbFdpdGhEb21haW4nKSB7XHJcbiAgICA8bGliLWVtYWlsLXdpdGgtZG9tYWluIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW1hZ2VVcGxvYWQnKSB7XHJcbiAgICAgPGxpYi1pbWFnZS11cGxvYWQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdkb3dubG9hZERvY3VtZW50Jykge1xyXG4gICAgIDxsaWItZG93bmxvYWQtZG9jdW1lbnQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhZGREb2N1bWVudCcpIHtcclxuICAgIDxsaWItYWRkLWRvY3VtZW50IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaHlwZXJsaW5rJykge1xyXG4gICAgPGxpYi1oeXBlcmxpbmsgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFVuZGVyc2NvcmUnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC11bmRlcnNjb3JlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndW5kZXJzY29yZU1vYk51bWJlcicpIHtcclxuICAgIDxsaWItdW5kZXJzY29yZS1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnZG93bmxvYWRJY29uQnV0dG9uJykge1xyXG4gICAgPGxpYi1pY29uLWJ1dHRvbiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2ltYWdlJykge1xyXG4gICAgPGxpYi1pbWFnZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3RlcHBlcicpIHtcclxuICAgIDxsaWItc3RlcHBlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ2NhcmQnKSB7XHJcbiAgICA8bGliLWNhcmQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2hyTGluZScpIHtcclxuICAgIDxsaWItaHItbGluZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc2VhcmNoTXVsdGlTZWxlY3QnKSB7XHJcbiAgICA8bGliLXNlYXJjaC1tdWx0aS1zZWxlY3QgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ3N1YnNjcmlwdFRleHRib3gnKSB7XHJcbiAgICA8bGliLXN1YnNjcmlwdC10ZXh0Ym94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdsYWJlbCcpIHtcclxuICAgIDxsaWItbGFiZWwgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ3N1YkhlYWRpbmcnKSB7XHJcbiAgICA8bGliLXN1Yi1oZWFkZXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2hlYWRpbmcnKSB7XHJcbiAgICA8bGliLWhlYWRlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgndGFibGUnKSB7XHJcbiAgPGxpYi10YWJsZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgndGV4dGJveFdpdGhUZXh0Jykge1xyXG4gICAgPGxpYi10ZXh0Ym94LXdpdGgtdGV4dCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICAgQGNhc2UgKCdsb2FkZXInKSB7XHJcbiAgICA8bGliLWxvYWRlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgICB9XHJcbiAgQGNhc2UgKCdkaXNjb3VudCcpIHtcclxuICAgIDxsaWItZGlzY291bnQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ29wdGlvbmFsQmVuZWZpdENhcmQnKSB7XHJcbiAgICA8bGliLWJlbmVmaXQtY2FyZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnZXJyb3JTbmFja2JhcicpIHtcclxuICAgIDxsaWItZXJyb3Itc25hY2tiYXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICAgQGNhc2UgKCd3YXJuaW5nU25hY2tiYXInKSB7XHJcbiAgICA8bGliLXdhcm5pbmctc25hY2tiYXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICAgQGNhc2UgKCdzdWNjZXNzU25hY2tiYXInKSB7XHJcbiAgICA8bGliLXN1Y2Nlc3Mtc25hY2tiYXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICAgQGNhc2UgKCduZXV0cmFsU25hY2tiYXInKSB7XHJcbiAgICA8bGliLW5ldXRyYWwtc25hY2tiYXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2JvbGRMYWJlbCcpIHtcclxuICAgIDxsaWItZ3JleS1sYWJlbCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaWZyYW1lJykge1xyXG4gICAgPGxpYi1pZnJhbWUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ3RvZ2dsZUJ1dHRvbicpIHtcclxuICAgIDxsaWItdG9nZ2xlLWJ1dHRvbiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgncGF5R2V0Q2FyZCcpIHtcclxuICAgIDxsaWItcGF5LWdldC1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaW5CdWlsdEJlbmVmaXQnKSB7XHJcbiAgICA8bGliLWluLWJ1aWx0LWJlbmVmaXQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ290aGVyQmVuZWZpdCcpIHtcclxuICAgIDxsaWItb3RoZXItYmVuZWZpdHMgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2FubnVpdHlSYXRlTG9nbycpIHtcclxuICAgIDxsaWItYW5udWl0eS1yYXRlLWxvZ28gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2Rpc2NvdW50QW5udWl0eScpIHtcclxuICAgIDxsaWItZGlzY291bnQtdjIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2xhYmVsVmFsdWUnKXtcclxuICAgIDxsaWItbGFiZWwtdmFsdWUtY2FyZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbWVkaWNhbFF1ZXN0aW9ucycpe1xyXG4gICAgPGxpYi1tZWRpYWwtcXVlc3Rpb25zIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdudWRnZScpe1xyXG4gICAgPGxpYi1wYWdlLW51ZGdlICBbZmllbGRdPVwiZmllbGQoKVwiLz5cclxuICB9XHJcbn1cclxuIl19
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL21hc3Rlci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFB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QXNCO3dCQUN0QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLG9CQUFvQjt3QkFDcEIseUJBQXlCO3dCQUN6Qix3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFDcEIseUJBQXlCO3dCQUN6QixvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsOEJBQThCO3dCQUM5Qiw0QkFBNEI7d0JBQzVCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLDBCQUEwQjt3QkFDMUIseUJBQXlCO3dCQUN6QixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsc0JBQXNCO3dCQUN0QixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3dCQUN0Qix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixrQkFBa0I7cUJBQ3JCO3dEQU1VLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4vdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL3VwbG9hZC91cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9iQ29tcG9uZW50IH0gZnJvbSAnLi9kb2IvZG9iLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vYk51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vbW9iLW51bWJlci9tb2ItbnVtYmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEluZm9Db21wb25lbnQgfSBmcm9tICcuL2luZm8vaW5mby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYkNvbXBvbmVudCB9IGZyb20gXCIuL3RhYi90YWIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUNvbXBvbmVudCB9IGZyb20gXCIuL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE11bHRpcGxlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSBcIi4vbXVsdGlwbGUtc2VsZWN0L211bHRpcGxlLXNlbGVjdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2VsZWN0VGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LXRleHRib3gvc2VsZWN0LXRleHRib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3RwVGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL290cC10ZXh0Ym94L290cC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBbW91bnRUZXh0Ym94Q29tcG9uZW50IH0gZnJvbSBcIi4vYW1vdW50LXRleHRib3gvYW1vdW50LXRleHRib3guY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFN1ZmZpeFRleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9zdWZmaXgtdGV4dGJveC9zdWZmaXgtdGV4dGJveC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3RwTW9iTnVtYmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vb3RwLW1vYi1udW1iZXIvb3RwLW1vYi1udW1iZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhZ01vYk51bWJlckNvbXBvbmVudCB9IGZyb20gXCIuL3RhZy1tb2ItbnVtYmVyL3RhZy1tb2ItbnVtYmVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZ2VEYXRlQ29tcG9uZW50IH0gZnJvbSBcIi4vYWdlLWRhdGUvYWdlLWRhdGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEFkZGl0aW9uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4vYWRkaXRpb24tYnV0dG9uL2FkZGl0aW9uLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSW5mb1RleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9pbmZvLXRleHRib3gvaW5mby10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aEltYWdlQ29tcG9uZW50IH0gZnJvbSBcIi4vdGV4dGJveC13aXRoLWltYWdlL3RleHRib3gtd2l0aC1pbWFnZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRW1haWxXaXRoRG9tYWluQ29tcG9uZW50IH0gZnJvbSBcIi4vZW1haWwtd2l0aC1kb21haW4vZW1haWwtd2l0aC1kb21haW4uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEltYWdlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSBcIi4vaW1hZ2UtdXBsb2FkL2ltYWdlLXVwbG9hZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRG93bmxvYWREb2N1bWVudENvbXBvbmVudCB9IGZyb20gXCIuL2Rvd25sb2FkLWRvY3VtZW50L2Rvd25sb2FkLWRvY3VtZW50LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZGREb2N1bWVudENvbXBvbmVudCB9IGZyb20gXCIuL2FkZC1kb2N1bWVudC9hZGQtZG9jdW1lbnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEh5cGVybGlua0NvbXBvbmVudCB9IGZyb20gXCIuL2h5cGVybGluay9oeXBlcmxpbmsuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRleHRib3hXaXRoVW5kZXJzY29yZUNvbXBvbmVudCB9IGZyb20gXCIuL3RleHRib3gtd2l0aC11bmRlcnNjb3JlL3RleHRib3gtd2l0aC11bmRlcnNjb3JlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBVbmRlcnNjb3JlTW9iTnVtYmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vdW5kZXJzY29yZS1tb2ItbnVtYmVyL3VuZGVyc2NvcmUtbW9iLW51bWJlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4vaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHBlckNvbXBvbmVudCB9IGZyb20gXCIuL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gXCIuL2NhcmQvY2FyZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSHJMaW5lQ29tcG9uZW50IH0gZnJvbSBcIi4vaHItbGluZS9oci1saW5lLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTZWFyY2hNdWx0aVNlbGVjdENvbXBvbmVudCB9IGZyb20gXCIuL3NlYXJjaC1tdWx0aS1zZWxlY3Qvc2VhcmNoLW11bHRpLXNlbGVjdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL3N1YnNjcmlwdC10ZXh0Ym94L3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBMYWJlbENvbXBvbmVudCB9IGZyb20gXCIuL2xhYmVsL2xhYmVsLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWJIZWFkZXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdWItaGVhZGVyL3N1Yi1oZWFkZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEhlYWRlckNvbXBvbmVudCB9IGZyb20gXCIuL2hlYWRlci9oZWFkZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aFRleHRDb21wb25lbnQgfSBmcm9tIFwiLi90ZXh0Ym94LXdpdGgtdGV4dC90ZXh0Ym94LXdpdGgtdGV4dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGlzY291bnRDb21wb25lbnQgfSBmcm9tIFwiLi9kaXNjb3VudC9kaXNjb3VudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQmVuZWZpdENhcmRDb21wb25lbnQgfSBmcm9tIFwiLi9iZW5lZml0LWNhcmQvYmVuZWZpdC1jYXJkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2FybmluZ1NuYWNrYmFyQ29tcG9uZW50IH0gZnJvbSBcIi4vd2FybmluZy1zbmFja2Jhci93YXJuaW5nLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWNjZXNzU25hY2tiYXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdWNjZXNzLXNuYWNrYmFyL3N1Y2Nlc3Mtc25hY2tiYXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE5ldXRyYWxTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL25ldXRyYWwtc25hY2tiYXIvbmV1dHJhbC1zbmFja2Jhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXJyb3JTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL2Vycm9yLXNuYWNrYmFyL2Vycm9yLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBHcmV5TGFiZWxDb21wb25lbnQgfSBmcm9tIFwiLi9ncmV5LWxhYmVsL2dyZXktbGFiZWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IElmcmFtZUNvbXBvbmVudCB9IGZyb20gXCIuL2lmcmFtZS9pZnJhbWUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL3RvZ2dsZS1idXR0b24vdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGF5R2V0Q2FyZENvbXBvbmVudCB9IGZyb20gXCIuL3BheS1nZXQtY2FyZC9wYXktZ2V0LWNhcmQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEluQnVpbHRCZW5lZml0Q29tcG9uZW50IH0gZnJvbSBcIi4vaW4tYnVpbHQtYmVuZWZpdC9pbi1idWlsdC1iZW5lZml0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPdGhlckJlbmVmaXRzQ29tcG9uZW50IH0gZnJvbSBcIi4vb3RoZXItYmVuZWZpdHMvb3RoZXItYmVuZWZpdHMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEFubnVpdHlSYXRlTG9nb0NvbXBvbmVudCB9IGZyb20gXCIuL2FubnVpdHktcmF0ZS1sb2dvL2FubnVpdHktcmF0ZS1sb2dvLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEaXNjb3VudFYyQ29tcG9uZW50IH0gZnJvbSAnLi9kaXNjb3VudC12Mi9kaXNjb3VudC12Mi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYWJlbFZhbHVlQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vbGFiZWwtdmFsdWUtY2FyZC9sYWJlbC12YWx1ZS1jYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lZGlhbFF1ZXN0aW9uc0NvbXBvbmVudCB9IGZyb20gXCIuL21lZGlhbC1xdWVzdGlvbnMvbWVkaWFsLXF1ZXN0aW9ucy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGFnZU51ZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlLW51ZGdlL3BhZ2UtbnVkZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tIFwiLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBY2NvcmRpYW5Db21wb25lbnQgfSBmcm9tIFwiLi9hY2NvcmRpYW4vYWNjb3JkaWFuLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbWFzdGVyLWNvbnRyb2wnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgUmFkaW9Db21wb25lbnQsXHJcbiAgICBUb2dnbGVDb21wb25lbnQsXHJcbiAgICBVcGxvYWRDb21wb25lbnQsXHJcbiAgICBEb2JDb21wb25lbnQsXHJcbiAgICBNb2JOdW1iZXJDb21wb25lbnQsXHJcbiAgICBJbmZvQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFRhYkNvbXBvbmVudCxcclxuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcclxuICAgIE11bHRpcGxlU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0VGV4dGJveENvbXBvbmVudCxcclxuICAgIE90cFRleHRib3hDb21wb25lbnQsXHJcbiAgICBBbW91bnRUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgU3VmZml4VGV4dGJveENvbXBvbmVudCxcclxuICAgIE90cE1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIFRhZ01vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEFnZURhdGVDb21wb25lbnQsXHJcbiAgICBBZGRpdGlvbkJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEluZm9UZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhJbWFnZUNvbXBvbmVudCxcclxuICAgIEVtYWlsV2l0aERvbWFpbkNvbXBvbmVudCxcclxuICAgIEltYWdlVXBsb2FkQ29tcG9uZW50LFxyXG4gICAgRG93bmxvYWREb2N1bWVudENvbXBvbmVudCxcclxuICAgIEFkZERvY3VtZW50Q29tcG9uZW50LFxyXG4gICAgSHlwZXJsaW5rQ29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhVbmRlcnNjb3JlQ29tcG9uZW50LFxyXG4gICAgVW5kZXJzY29yZU1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEljb25CdXR0b25Db21wb25lbnQsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgSW1hZ2VDb21wb25lbnQsXHJcbiAgICBTdGVwcGVyQ29tcG9uZW50LFxyXG4gICAgQ2FyZENvbXBvbmVudCxcclxuICAgIEhyTGluZUNvbXBvbmVudCxcclxuICAgIFNlYXJjaE11bHRpU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCxcclxuICAgIExhYmVsQ29tcG9uZW50LFxyXG4gICAgU3ViSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhUZXh0Q29tcG9uZW50LFxyXG4gICAgRGlzY291bnRDb21wb25lbnQsXHJcbiAgICBCZW5lZml0Q2FyZENvbXBvbmVudCxcclxuICAgIFRhYmxlQ29tcG9uZW50LFxyXG4gICAgTG9hZGVyQ29tcG9uZW50LFxyXG4gICAgV2FybmluZ1NuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgU3VjY2Vzc1NuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgTmV1dHJhbFNuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgRXJyb3JTbmFja2JhckNvbXBvbmVudCxcclxuICAgIEdyZXlMYWJlbENvbXBvbmVudCxcclxuICAgIElmcmFtZUNvbXBvbmVudCxcclxuICAgIFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFBheUdldENhcmRDb21wb25lbnQsXHJcbiAgICBJbkJ1aWx0QmVuZWZpdENvbXBvbmVudCxcclxuICAgIE90aGVyQmVuZWZpdHNDb21wb25lbnQsXHJcbiAgICBBbm51aXR5UmF0ZUxvZ29Db21wb25lbnQsXHJcbiAgICBEaXNjb3VudFYyQ29tcG9uZW50LFxyXG4gICAgTGFiZWxWYWx1ZUNhcmRDb21wb25lbnQsXHJcbiAgICBNZWRpYWxRdWVzdGlvbnNDb21wb25lbnQsXHJcbiAgICBQYWdlTnVkZ2VDb21wb25lbnQsXHJcbiAgICBQcm9ncmVzc0JhckNvbXBvbmVudCxcclxuICAgIEFjY29yZGlhbkNvbXBvbmVudFxyXG5dLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXN0ZXJDb250cm9sQ29tcG9uZW50IHtcclxuICBmaWVsZDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIEBJbnB1dCgpIGZvcm1Hcm91cDogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG59XHJcbiIsIkBzd2l0Y2ggKGZpZWxkKCk/LmNvbnRyb2xUeXBlKSB7XHJcbiAgQGNhc2UoJ3RleHQnKSB7XHJcbiAgIDxsaWItdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiPjwvbGliLXRleHRib3g+XHJcbiAgfVxyXG4gIEBjYXNlKCdzZWxlY3QnKSB7XHJcbiAgICA8bGliLXNlbGVjdCBbZmllbGRdPVwiZmllbGQoKVwiLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdyYWRpbycpIHtcclxuICAgIDxsaWItcmFkaW8gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ3RvZ2dsZScpIHtcclxuICAgIDxsaWItdG9nZ2xlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdmaWxlJykge1xyXG4gICAgPGxpYi11cGxvYWQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ2RhdGUnKSB7XHJcbiAgICA8bGliLWRvYiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgnbW9iaWxlTnVtYmVyJykge1xyXG4gICAgPGxpYi1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdpbmZvJykge1xyXG4gICAgPGxpYi1pbmZvIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdjaGVja2JveCcpIHtcclxuICAgIDxsaWItY2hlY2tib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ3RleHRhcmVhJykge1xyXG4gICAgPGxpYi10ZXh0YXJlYSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2J1dHRvbicpIHtcclxuICAgIDxsaWItYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGFiJykge1xyXG4gICAgPGxpYi10YWIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhdXRvY29tcGxldGUnKSB7XHJcbiAgICA8bGliLWF1dG9jb21wbGV0ZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ211bHRpcGxlU2VsZWN0Jykge1xyXG4gICAgPGxpYi1tdWx0aXBsZS1zZWxlY3QgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFNlbGVjdCcpIHtcclxuICAgIDxsaWItc2VsZWN0LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdvdHBUZXh0Ym94Jykge1xyXG4gICAgPGxpYi1vdHAtdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2Ftb3VudFRleHRib3gnKSB7XHJcbiAgICA8bGliLWFtb3VudC10ZXh0Ym94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnc3VmZml4VGV4dGJveCcpIHtcclxuICAgIDxsaWItc3VmZml4LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdvdHBNb2JOdW1iZXInKSB7XHJcbiAgICA8bGliLW90cC1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGFnTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi10YWctbW9iLW51bWJlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2RhdGVXaXRoQWdlJykge1xyXG4gICAgIDxsaWItYWdlLWRhdGUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhZGRpdGlvbkJ1dHRvbicpIHtcclxuICAgIDxsaWItYWRkaXRpb24tYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW5mb1RleHRib3gnKSB7XHJcbiAgICA8bGliLWluZm8tdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RleHRib3hXaXRoSW1hZ2UnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC1pbWFnZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2VtYWlsV2l0aERvbWFpbicpIHtcclxuICAgIDxsaWItZW1haWwtd2l0aC1kb21haW4gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdpbWFnZVVwbG9hZCcpIHtcclxuICAgICA8bGliLWltYWdlLXVwbG9hZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2Rvd25sb2FkRG9jdW1lbnQnKSB7XHJcbiAgICAgPGxpYi1kb3dubG9hZC1kb2N1bWVudCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2FkZERvY3VtZW50Jykge1xyXG4gICAgPGxpYi1hZGQtZG9jdW1lbnQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdoeXBlcmxpbmsnKSB7XHJcbiAgICA8bGliLWh5cGVybGluayBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RleHRib3hXaXRoVW5kZXJzY29yZScpIHtcclxuICAgIDxsaWItdGV4dGJveC13aXRoLXVuZGVyc2NvcmUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd1bmRlcnNjb3JlTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi11bmRlcnNjb3JlLW1vYi1udW1iZXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdkb3dubG9hZEljb25CdXR0b24nKSB7XHJcbiAgICA8bGliLWljb24tYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW1hZ2UnKSB7XHJcbiAgICA8bGliLWltYWdlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzdGVwcGVyJykge1xyXG4gICAgPGxpYi1zdGVwcGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgIEBjYXNlICgnY2FyZCcpIHtcclxuICAgIDxsaWItY2FyZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaHJMaW5lJykge1xyXG4gICAgPGxpYi1oci1saW5lIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzZWFyY2hNdWx0aVNlbGVjdCcpIHtcclxuICAgIDxsaWItc2VhcmNoLW11bHRpLXNlbGVjdCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3Vic2NyaXB0VGV4dGJveCcpIHtcclxuICAgIDxsaWItc3Vic2NyaXB0LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2xhYmVsJykge1xyXG4gICAgPGxpYi1sYWJlbCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3ViSGVhZGluZycpIHtcclxuICAgIDxsaWItc3ViLWhlYWRlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaGVhZGluZycpIHtcclxuICAgIDxsaWItaGVhZGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCd0YWJsZScpIHtcclxuICA8bGliLXRhYmxlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFRleHQnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC10ZXh0IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgICBAY2FzZSAoJ2xvYWRlcicpIHtcclxuICAgIDxsaWItbG9hZGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICAgIH1cclxuICBAY2FzZSAoJ2Rpc2NvdW50Jykge1xyXG4gICAgPGxpYi1kaXNjb3VudCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnb3B0aW9uYWxCZW5lZml0Q2FyZCcpIHtcclxuICAgIDxsaWItYmVuZWZpdC1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdlcnJvclNuYWNrYmFyJykge1xyXG4gICAgPGxpYi1lcnJvci1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ3dhcm5pbmdTbmFja2JhcicpIHtcclxuICAgIDxsaWItd2FybmluZy1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ3N1Y2Nlc3NTbmFja2JhcicpIHtcclxuICAgIDxsaWItc3VjY2Vzcy1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ25ldXRyYWxTbmFja2JhcicpIHtcclxuICAgIDxsaWItbmV1dHJhbC1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYm9sZExhYmVsJykge1xyXG4gICAgPGxpYi1ncmV5LWxhYmVsIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdpZnJhbWUnKSB7XHJcbiAgICA8bGliLWlmcmFtZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgndG9nZ2xlQnV0dG9uJykge1xyXG4gICAgPGxpYi10b2dnbGUtYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdwYXlHZXRDYXJkJykge1xyXG4gICAgPGxpYi1wYXktZ2V0LWNhcmQgW2ZpZWxkXT1cImZpZWxkKClcIiAgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdpbkJ1aWx0QmVuZWZpdCcpIHtcclxuICAgIDxsaWItaW4tYnVpbHQtYmVuZWZpdCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnb3RoZXJCZW5lZml0Jykge1xyXG4gICAgPGxpYi1vdGhlci1iZW5lZml0cyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYW5udWl0eVJhdGVMb2dvJykge1xyXG4gICAgPGxpYi1hbm51aXR5LXJhdGUtbG9nbyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnZGlzY291bnRBbm51aXR5Jykge1xyXG4gICAgPGxpYi1kaXNjb3VudC12MiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbGFiZWxWYWx1ZScpe1xyXG4gICAgPGxpYi1sYWJlbC12YWx1ZS1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdtZWRpY2FsUXVlc3Rpb25zJyl7XHJcbiAgICA8bGliLW1lZGlhbC1xdWVzdGlvbnMgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ251ZGdlJyl7XHJcbiAgICA8bGliLXBhZ2UtbnVkZ2UgIFtmaWVsZF09XCJmaWVsZCgpXCIvPlxyXG4gIH1cclxuICBAY2FzZSAoJ3Byb2dyZXNzQmFyJyl7XHJcbiAgICA8bGliLXByb2dyZXNzLWJhciAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYWNjb3JkaWFuJyl7XHJcbiAgICA8bGliLWFjY29yZGlhbiAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,16 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, input } from '@angular/core';
3
+ import { MatProgressBarModule } from '@angular/material/progress-bar';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/progress-bar";
6
+ import * as i2 from "@angular/common";
7
+ export class ProgressBarComponent {
8
+ field = input.required();
9
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: ProgressBarComponent, isStandalone: true, selector: "lib-progress-bar", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<mat-progress-bar mode=\"determinate\" [value]=\"field()?.value\" [ngStyle]=\"{\r\n'--progress-bar-background-color': field()?.controlStyle?.background ,\r\n'--progress-bar-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--progress-bar-border-color': field()?.controlStyle?.color ,\r\n'--progress-bar-width': field()?.controlStyle?.width ,\r\n'--progress-bar-height': field()?.controlStyle?.height ,\r\n}\"></mat-progress-bar>", styles: ["::ng-deep .mdc-linear-progress__buffer-bar{background-color:var(--progress-bar-background-color , #EAEAEA)!important;border-radius:var(--progress-bar-border-radius , 84px)!important}::ng-deep .mdc-linear-progress__bar-inner{border-color:var(--progress-bar-border-color , #ffbb00)!important;border-top-width:var(--progress-bar-height , 4px)!important}::ng-deep .mdc-linear-progress{width:var(--progress-bar-width , 100%)!important;height:var(--progress-bar-height , 4px)!important}::ng-deep .mdc-linear-progress__buffer{height:var(--progress-bar-height , 4px)!important}\n"], dependencies: [{ kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProgressBarComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'lib-progress-bar', standalone: true, imports: [MatProgressBarModule, CommonModule], template: "<mat-progress-bar mode=\"determinate\" [value]=\"field()?.value\" [ngStyle]=\"{\r\n'--progress-bar-background-color': field()?.controlStyle?.background ,\r\n'--progress-bar-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--progress-bar-border-color': field()?.controlStyle?.color ,\r\n'--progress-bar-width': field()?.controlStyle?.width ,\r\n'--progress-bar-height': field()?.controlStyle?.height ,\r\n}\"></mat-progress-bar>", styles: ["::ng-deep .mdc-linear-progress__buffer-bar{background-color:var(--progress-bar-background-color , #EAEAEA)!important;border-radius:var(--progress-bar-border-radius , 84px)!important}::ng-deep .mdc-linear-progress__bar-inner{border-color:var(--progress-bar-border-color , #ffbb00)!important;border-top-width:var(--progress-bar-height , 4px)!important}::ng-deep .mdc-linear-progress{width:var(--progress-bar-width , 100%)!important;height:var(--progress-bar-height , 4px)!important}::ng-deep .mdc-linear-progress__buffer{height:var(--progress-bar-height , 4px)!important}\n"] }]
15
+ }] });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDOzs7O0FBVXBFLE1BQU0sT0FBTyxvQkFBb0I7SUFDakMsS0FBSyxHQUFTLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQzt3R0FEdkIsb0JBQW9COzRGQUFwQixvQkFBb0IsK01DWmpDLHNiQU1zQixvbkJERVYsb0JBQW9CLHdOQUFHLFlBQVk7OzRGQUlsQyxvQkFBb0I7a0JBUGhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLG9CQUFvQixFQUFHLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtNYXRQcm9ncmVzc0Jhck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1wcm9ncmVzcy1iYXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdFByb2dyZXNzQmFyTW9kdWxlICwgQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc0JhckNvbXBvbmVudCB7XHJcbmZpZWxkIDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG59XHJcbiIsIjxtYXQtcHJvZ3Jlc3MtYmFyIG1vZGU9XCJkZXRlcm1pbmF0ZVwiIFt2YWx1ZV09XCJmaWVsZCgpPy52YWx1ZVwiIFtuZ1N0eWxlXT1cIntcclxuJy0tcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJhY2tncm91bmQgLFxyXG4nLS1wcm9ncmVzcy1iYXItYm9yZGVyLXJhZGl1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyUmFkaXVzICxcclxuJy0tcHJvZ3Jlc3MtYmFyLWJvcmRlci1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uY29sb3IgLFxyXG4nLS1wcm9ncmVzcy1iYXItd2lkdGgnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LndpZHRoICxcclxuJy0tcHJvZ3Jlc3MtYmFyLWhlaWdodCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uaGVpZ2h0ICxcclxufVwiPjwvbWF0LXByb2dyZXNzLWJhcj4iXX0=
@@ -21,12 +21,12 @@ export class TabComponent {
21
21
  this.field().selectedIndex = this.selectedIndex;
22
22
  }
23
23
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
24
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TabComponent, isStandalone: true, selector: "lib-tab", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { selectedIndexChange: "selectedIndexChange" }, ngImport: i0, template: "<mat-tab-group *ngIf=\"field() && field()?.isVisible\"\r\n[ngStyle]=\"{\r\n '--tab-border-color': field()?.controlStyle?.borderColor ,\r\n '--tab-border-width': field()?.controlStyle?.borderWidth,\r\n '--tab-font-size': field()?.controlStyle?.fontSize,\r\n '--tab-font-weight': field()?.controlStyle?.fontWeight,\r\n '--tab-font-color': field()?.controlStyle?.color,\r\n }\"\r\n[(selectedIndex)]=\"selectedIndex\" (selectedIndexChange)=\"onTabChange($event)\">\r\n <mat-tab *ngFor=\"let data of field()?.options; let i = index\">\r\n <ng-template mat-tab-label>\r\n <img [src]=\"data.value\" alt=\"\" class=\"mx-2\">\r\n {{ data.label }}\r\n </ng-template>\r\n <ng-content select=\"tab[i]\"></ng-content>\r\n </mat-tab>\r\n</mat-tab-group>\r\n", styles: ["*{font-family:mulish!important}::ng-deep .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{font-weight:var(--tab-font-weight, 800)!important}::ng-deep .mdc-tab__text-label{font-size:var(--tab-font-size, 16px)!important;color:var(--tab-font-color, #444)!important}::ng-deep .mat-mdc-tab-group .mdc-tab-indicator__content--underline{border-color:var(--tab-border-color, #FFBB00)!important;border-width:var(--tab-border-width, 3px)!important;border-top-left-radius:6px!important;border-top-right-radius:6px!important}::ng-deep .mat-mdc-tab-label-container{border-bottom:1px solid #dadada!important}\n"], dependencies: [{ kind: "ngmodule", type: MatTabsModule }, { kind: "directive", type: i2.MatTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
24
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TabComponent, isStandalone: true, selector: "lib-tab", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { selectedIndexChange: "selectedIndexChange" }, ngImport: i0, template: "<mat-tab-group *ngIf=\"field() && field()?.isVisible\" class=\"vertical-tab-indicator\"\r\n[ngClass]=\"{'vertical-class': field()?.configData?.isVerticalTab && field()?.configData?.isVerticalTab === 'true'}\"\r\n[ngStyle]=\"{\r\n '--tab-border-color': field()?.controlStyle?.borderColor ,\r\n '--tab-border-width': field()?.controlStyle?.borderWidth,\r\n '--tab-font-size': field()?.controlStyle?.fontSize,\r\n '--tab-font-weight': field()?.controlStyle?.fontWeight,\r\n '--tab-font-color': field()?.controlStyle?.color,\r\n }\"\r\n[(selectedIndex)]=\"selectedIndex\" (selectedIndexChange)=\"onTabChange($event)\">\r\n <mat-tab *ngFor=\"let data of field()?.options; let i = index\">\r\n <ng-template mat-tab-label>\r\n <img [src]=\"data.value\" alt=\"\" class=\"mx-2\">\r\n {{ data.label }}\r\n </ng-template>\r\n <ng-content select=\"tab[i]\"></ng-content>\r\n </mat-tab>\r\n</mat-tab-group>\r\n", styles: ["*{font-family:mulish!important}::ng-deep .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{font-weight:var(--tab-font-weight, 800)!important}::ng-deep .mdc-tab__text-label{font-size:var(--tab-font-size, 16px)!important;color:var(--tab-font-color, #444)!important}::ng-deep .mat-mdc-tab-group .mdc-tab-indicator__content--underline{border-color:var(--tab-border-color, #FFBB00)!important;border-width:var(--tab-border-width, 3px)!important;border-top-left-radius:6px!important;border-top-right-radius:6px!important}::ng-deep .mat-mdc-tab-label-container{border-bottom:1px solid #dadada!important}::ng-deep .vertical-class .mdc-tab-indicator .mdc-tab-indicator__content{border:none!important}::ng-deep .vertical-class .mat-mdc-tab.mdc-tab--active .mat-mdc-tab-ripple{border-right:var(--tab-border-width, 4px) solid var(--tab-border-color, #ffbb00)!important;box-shadow:0 2px 4px #00000015;border-left:1px solid #DDDDDD;border-top:1px solid #DDDDDD;border-bottom:1px solid #DDDDDD}::ng-deep .vertical-class .mdc-tab-indicator__content .mdc-tab-indicator__content--underline{border:none!important}::ng-deep .vertical-class .mat-mdc-tab-labels{display:table-row!important}\n"], dependencies: [{ kind: "ngmodule", type: MatTabsModule }, { kind: "directive", type: i2.MatTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
25
25
  }
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabComponent, decorators: [{
27
27
  type: Component,
28
- args: [{ selector: 'lib-tab', standalone: true, imports: [MatTabsModule, CommonModule], template: "<mat-tab-group *ngIf=\"field() && field()?.isVisible\"\r\n[ngStyle]=\"{\r\n '--tab-border-color': field()?.controlStyle?.borderColor ,\r\n '--tab-border-width': field()?.controlStyle?.borderWidth,\r\n '--tab-font-size': field()?.controlStyle?.fontSize,\r\n '--tab-font-weight': field()?.controlStyle?.fontWeight,\r\n '--tab-font-color': field()?.controlStyle?.color,\r\n }\"\r\n[(selectedIndex)]=\"selectedIndex\" (selectedIndexChange)=\"onTabChange($event)\">\r\n <mat-tab *ngFor=\"let data of field()?.options; let i = index\">\r\n <ng-template mat-tab-label>\r\n <img [src]=\"data.value\" alt=\"\" class=\"mx-2\">\r\n {{ data.label }}\r\n </ng-template>\r\n <ng-content select=\"tab[i]\"></ng-content>\r\n </mat-tab>\r\n</mat-tab-group>\r\n", styles: ["*{font-family:mulish!important}::ng-deep .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{font-weight:var(--tab-font-weight, 800)!important}::ng-deep .mdc-tab__text-label{font-size:var(--tab-font-size, 16px)!important;color:var(--tab-font-color, #444)!important}::ng-deep .mat-mdc-tab-group .mdc-tab-indicator__content--underline{border-color:var(--tab-border-color, #FFBB00)!important;border-width:var(--tab-border-width, 3px)!important;border-top-left-radius:6px!important;border-top-right-radius:6px!important}::ng-deep .mat-mdc-tab-label-container{border-bottom:1px solid #dadada!important}\n"] }]
28
+ args: [{ selector: 'lib-tab', standalone: true, imports: [MatTabsModule, CommonModule], template: "<mat-tab-group *ngIf=\"field() && field()?.isVisible\" class=\"vertical-tab-indicator\"\r\n[ngClass]=\"{'vertical-class': field()?.configData?.isVerticalTab && field()?.configData?.isVerticalTab === 'true'}\"\r\n[ngStyle]=\"{\r\n '--tab-border-color': field()?.controlStyle?.borderColor ,\r\n '--tab-border-width': field()?.controlStyle?.borderWidth,\r\n '--tab-font-size': field()?.controlStyle?.fontSize,\r\n '--tab-font-weight': field()?.controlStyle?.fontWeight,\r\n '--tab-font-color': field()?.controlStyle?.color,\r\n }\"\r\n[(selectedIndex)]=\"selectedIndex\" (selectedIndexChange)=\"onTabChange($event)\">\r\n <mat-tab *ngFor=\"let data of field()?.options; let i = index\">\r\n <ng-template mat-tab-label>\r\n <img [src]=\"data.value\" alt=\"\" class=\"mx-2\">\r\n {{ data.label }}\r\n </ng-template>\r\n <ng-content select=\"tab[i]\"></ng-content>\r\n </mat-tab>\r\n</mat-tab-group>\r\n", styles: ["*{font-family:mulish!important}::ng-deep .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{font-weight:var(--tab-font-weight, 800)!important}::ng-deep .mdc-tab__text-label{font-size:var(--tab-font-size, 16px)!important;color:var(--tab-font-color, #444)!important}::ng-deep .mat-mdc-tab-group .mdc-tab-indicator__content--underline{border-color:var(--tab-border-color, #FFBB00)!important;border-width:var(--tab-border-width, 3px)!important;border-top-left-radius:6px!important;border-top-right-radius:6px!important}::ng-deep .mat-mdc-tab-label-container{border-bottom:1px solid #dadada!important}::ng-deep .vertical-class .mdc-tab-indicator .mdc-tab-indicator__content{border:none!important}::ng-deep .vertical-class .mat-mdc-tab.mdc-tab--active .mat-mdc-tab-ripple{border-right:var(--tab-border-width, 4px) solid var(--tab-border-color, #ffbb00)!important;box-shadow:0 2px 4px #00000015;border-left:1px solid #DDDDDD;border-top:1px solid #DDDDDD;border-bottom:1px solid #DDDDDD}::ng-deep .vertical-class .mdc-tab-indicator__content .mdc-tab-indicator__content--underline{border:none!important}::ng-deep .vertical-class .mat-mdc-tab-labels{display:table-row!important}\n"] }]
29
29
  }], ctorParameters: () => [{ type: i1.MasterControlService }], propDecorators: { selectedIndexChange: [{
30
30
  type: Output
31
31
  }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvdGFiL3RhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3RhYi90YWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFxQixhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFVMUUsTUFBTSxPQUFPLFlBQVk7SUFLTjtJQUpuQixLQUFLLEdBQVMsS0FBSyxDQUFDLFFBQVEsRUFBTyxDQUFDO0lBQzFCLG1CQUFtQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFDM0QsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUVsQixZQUFtQixhQUFvQztRQUFwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7SUFBRSxDQUFDO0lBRTFELFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDcEQsQ0FBQztJQUNDLFdBQVcsQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNsRCxDQUFDO3dHQWJZLFlBQVk7NEZBQVosWUFBWSwrUENaekIsZ3dCQWlCQSw4b0JEVFksYUFBYSxxdUJBQUMsWUFBWTs7NEZBSXpCLFlBQVk7a0JBUHhCLFNBQVM7K0JBQ0UsU0FBUyxjQUNQLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBQyxZQUFZLENBQUM7eUZBTTdCLG1CQUFtQjtzQkFBNUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFRhYkNoYW5nZUV2ZW50LCBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XHJcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10YWInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdFRhYnNNb2R1bGUsQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGFiLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJDb21wb25lbnQge1xyXG5maWVsZCA6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxuQE91dHB1dCgpIHNlbGVjdGVkSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuc2VsZWN0ZWRJbmRleCA9IDA7XHJcblxyXG5jb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKXt9XHJcblxyXG5uZ09uSW5pdCgpe1xyXG4gICAgdGhpcy5maWVsZCgpLnNlbGVjdGVkSW5kZXggPSB0aGlzLnNlbGVjdGVkSW5kZXg7XHJcbn1cclxuICBvblRhYkNoYW5nZShldmVudDogbnVtYmVyKSB7XHJcbiAgdGhpcy5zZWxlY3RlZEluZGV4ID0gZXZlbnQ7XHJcbiAgdGhpcy5maWVsZCgpLnNlbGVjdGVkSW5kZXggPSB0aGlzLnNlbGVjdGVkSW5kZXg7XHJcbn1cclxufVxyXG4iLCI8bWF0LXRhYi1ncm91cCAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8uaXNWaXNpYmxlXCJcclxuW25nU3R5bGVdPVwie1xyXG4gJy0tdGFiLWJvcmRlci1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyQ29sb3IgLFxyXG4gJy0tdGFiLWJvcmRlci13aWR0aCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyV2lkdGgsXHJcbiAgJy0tdGFiLWZvbnQtc2l6ZSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFNpemUsXHJcbiAnLS10YWItZm9udC13ZWlnaHQnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRXZWlnaHQsXHJcbiAnLS10YWItZm9udC1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uY29sb3IsXHJcbiB9XCJcclxuWyhzZWxlY3RlZEluZGV4KV09XCJzZWxlY3RlZEluZGV4XCIgKHNlbGVjdGVkSW5kZXhDaGFuZ2UpPVwib25UYWJDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICA8bWF0LXRhYiAqbmdGb3I9XCJsZXQgZGF0YSBvZiBmaWVsZCgpPy5vcHRpb25zOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICA8bmctdGVtcGxhdGUgbWF0LXRhYi1sYWJlbD5cclxuICAgICAgPGltZyBbc3JjXT1cImRhdGEudmFsdWVcIiBhbHQ9XCJcIiBjbGFzcz1cIm14LTJcIj5cclxuICAgICAge3sgZGF0YS5sYWJlbCB9fVxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInRhYltpXVwiPjwvbmctY29udGVudD5cclxuICA8L21hdC10YWI+XHJcbjwvbWF0LXRhYi1ncm91cD5cclxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvdGFiL3RhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3RhYi90YWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFxQixhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFVMUUsTUFBTSxPQUFPLFlBQVk7SUFLTjtJQUpuQixLQUFLLEdBQVMsS0FBSyxDQUFDLFFBQVEsRUFBTyxDQUFDO0lBQzFCLG1CQUFtQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFDM0QsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUVsQixZQUFtQixhQUFvQztRQUFwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7SUFBRSxDQUFDO0lBRTFELFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDcEQsQ0FBQztJQUNDLFdBQVcsQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNsRCxDQUFDO3dHQWJZLFlBQVk7NEZBQVosWUFBWSwrUENaekIsMDVCQWtCQSwwc0NEVlksYUFBYSxxdUJBQUMsWUFBWTs7NEZBSXpCLFlBQVk7a0JBUHhCLFNBQVM7K0JBQ0UsU0FBUyxjQUNQLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBQyxZQUFZLENBQUM7eUZBTTdCLG1CQUFtQjtzQkFBNUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFRhYkNoYW5nZUV2ZW50LCBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XHJcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10YWInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdFRhYnNNb2R1bGUsQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGFiLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJDb21wb25lbnQge1xyXG5maWVsZCA6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxuQE91dHB1dCgpIHNlbGVjdGVkSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuc2VsZWN0ZWRJbmRleCA9IDA7XHJcblxyXG5jb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKXt9XHJcblxyXG5uZ09uSW5pdCgpe1xyXG4gICAgdGhpcy5maWVsZCgpLnNlbGVjdGVkSW5kZXggPSB0aGlzLnNlbGVjdGVkSW5kZXg7XHJcbn1cclxuICBvblRhYkNoYW5nZShldmVudDogbnVtYmVyKSB7XHJcbiAgdGhpcy5zZWxlY3RlZEluZGV4ID0gZXZlbnQ7XHJcbiAgdGhpcy5maWVsZCgpLnNlbGVjdGVkSW5kZXggPSB0aGlzLnNlbGVjdGVkSW5kZXg7XHJcbn1cclxufVxyXG4iLCI8bWF0LXRhYi1ncm91cCAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8uaXNWaXNpYmxlXCIgY2xhc3M9XCJ2ZXJ0aWNhbC10YWItaW5kaWNhdG9yXCJcclxuW25nQ2xhc3NdPVwieyd2ZXJ0aWNhbC1jbGFzcyc6IGZpZWxkKCk/LmNvbmZpZ0RhdGE/LmlzVmVydGljYWxUYWIgJiYgZmllbGQoKT8uY29uZmlnRGF0YT8uaXNWZXJ0aWNhbFRhYiA9PT0gJ3RydWUnfVwiXHJcbltuZ1N0eWxlXT1cIntcclxuICctLXRhYi1ib3JkZXItY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlckNvbG9yICxcclxuICctLXRhYi1ib3JkZXItd2lkdGgnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoLFxyXG4gICctLXRhYi1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplLFxyXG4gJy0tdGFiLWZvbnQtd2VpZ2h0JzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250V2VpZ2h0LFxyXG4gJy0tdGFiLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yLFxyXG4gfVwiXHJcblsoc2VsZWN0ZWRJbmRleCldPVwic2VsZWN0ZWRJbmRleFwiIChzZWxlY3RlZEluZGV4Q2hhbmdlKT1cIm9uVGFiQ2hhbmdlKCRldmVudClcIj5cclxuICAgPG1hdC10YWIgKm5nRm9yPVwibGV0IGRhdGEgb2YgZmllbGQoKT8ub3B0aW9uczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgPG5nLXRlbXBsYXRlIG1hdC10YWItbGFiZWw+XHJcbiAgICAgIDxpbWcgW3NyY109XCJkYXRhLnZhbHVlXCIgYWx0PVwiXCIgY2xhc3M9XCJteC0yXCI+XHJcbiAgICAgIHt7IGRhdGEubGFiZWwgfX1cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0YWJbaV1cIj48L25nLWNvbnRlbnQ+XHJcbiAgPC9tYXQtdGFiPlxyXG48L21hdC10YWItZ3JvdXA+XHJcbiJdfQ==
@@ -3,11 +3,13 @@ import { CommonModule, NgFor, NgIf } from '@angular/common';
3
3
  import { FormsModule } from '@angular/forms';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import { MatTooltipModule } from '@angular/material/tooltip';
6
+ import { MatPaginatorModule } from '@angular/material/paginator';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "../master-control.service";
8
9
  import * as i2 from "@angular/common";
9
10
  import * as i3 from "@angular/material/icon";
10
11
  import * as i4 from "@angular/material/tooltip";
12
+ import * as i5 from "@angular/material/paginator";
11
13
  export class TableComponent {
12
14
  masterControlService;
13
15
  field = input.required();
@@ -16,6 +18,9 @@ export class TableComponent {
16
18
  popupPosition = { top: 0, left: 0 };
17
19
  selectedRow = 0;
18
20
  highlightedIndex = -1;
21
+ paginationSize = 10;
22
+ pageNumber = 0;
23
+ pageSize = 10;
19
24
  constructor(masterControlService) {
20
25
  this.masterControlService = masterControlService;
21
26
  }
@@ -58,7 +63,7 @@ export class TableComponent {
58
63
  const rect = event.target.getBoundingClientRect();
59
64
  this.popupPosition = {
60
65
  top: rect.bottom + window.scrollY - 30,
61
- left: rect.left + window.scrollX + 30
66
+ left: rect.left + window.scrollX - 280,
62
67
  };
63
68
  }
64
69
  closeActionsPopup() {
@@ -69,14 +74,19 @@ export class TableComponent {
69
74
  onEscKey(event) {
70
75
  this.closeActionsPopup();
71
76
  }
77
+ pageChanged(event) {
78
+ this.pageNumber = event.pageIndex;
79
+ this.pageSize = event.pageSize;
80
+ console.log(this.pageNumber, this.pageSize);
81
+ }
72
82
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
73
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TableComponent, isStandalone: true, selector: "lib-table", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "document:keydown.escape": "onEscKey($event)" } }, ngImport: i0, template: "<div class=\"styled-table-container\">\r\n<table *ngIf=\"field()?.tableData?.columnlength && field()?.tableData?.rowlength\" class=\"styled-table\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"field()?.tableData?.showCheckBox\"></th>\r\n <th *ngFor=\"let header of field().tableData?.tableHeaders; let i = index; trackBy: trackByIndex\">\r\n <ng-container *ngIf=\"!readonly(); else headerText\">{{header.columnName}}\r\n <!-- <input type=\"text\" [(ngModel)]=\"header.columnName\" (ngModelChange)=\"renameHeader(i, $event)\"\r\n [disabled]=\"readonly()\" class=\"custom_input\" [matTooltip]=\"header.toolTip\" matTooltipPosition=\"above\"> -->\r\n </ng-container>\r\n <ng-template #headerText>{{ header?.columnName }}</ng-template>\r\n </th>\r\n <th *ngIf=\"field()?.tableData?.showActions\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of field()?.tableData?.tdData;let rowIndex = index\">\r\n <td *ngIf=\"field()?.tableData?.showCheckBox\"><input type=\"checkbox\"></td>\r\n <td *ngFor=\"let cell of row\">{{ cell }}</td>\r\n <td *ngIf=\"field()?.tableData?.showActions\">\r\n <button class=\"action-btn\" (click)=\"openActionsPopup($event, rowIndex)\" [disabled]=\"readonly()\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n</div>\r\n\r\n<div *ngIf=\"showActionsPopup\" class=\"actions-popup-backdrop\" (click)=\"closeActionsPopup()\">\r\n <div class=\"actions-popup-menu\" [ngStyle]=\"{'top.px': popupPosition.top, 'left.px': popupPosition.left}\"\r\n (click)=\"$event.stopPropagation()\">\r\n <ul>\r\n <li *ngFor=\"let actionData of field().tableData?.userSelectedOptions[selectedRow]\" [matTooltip]=\"actionData?.displayTitle\"\r\n matTooltipPosition=\"above\">\r\n <mat-icon>{{actionData?.matIconName}}</mat-icon>\r\n {{actionData?.displayTitle}}\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".styled-table{width:100%;margin:16px 0;font-size:1em;box-shadow:0 0 8px #0000001a}*{font-family:mulish!important}.styled-table th,.styled-table td{border:none;padding:8px 12px;text-align:left}.styled-table thead tr{background-color:#444;color:#fff}.styled-table tbody tr:nth-child(2n){background-color:#f3f3f3}.styled-table tbody tr:hover{background-color:#e0f7fa}.custom_input{width:100%;border:none;background:transparent;font-weight:700;color:#fff}.styled-table th:first-child{border-top-left-radius:8px}.styled-table th:last-child{border-top-right-radius:8px}.popup-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.action-btn{background:none;border:none;cursor:pointer;padding:0}.actions-popup-backdrop{position:fixed;inset:0;background:transparent;z-index:1000}.actions-popup-menu{position:absolute;min-width:260px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000002e;padding:0;z-index:1001;color:#333;font-family:inherit}.actions-popup-menu ul{list-style:none;margin:0;padding:0 0 8px}.actions-popup-menu li{display:flex;align-items:center;padding:10px 20px;cursor:pointer;font-size:15px;border-radius:6px;transition:background .2s}.actions-popup-menu li mat-icon{margin-right:12px;font-size:20px}.actions-popup-menu li.selected,.actions-popup-menu li:hover{background:#fff6d1;color:#222}.styled-table-container{max-width:100%;overflow-x:auto;max-height:400px;overflow-y:auto}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] });
83
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TableComponent, isStandalone: true, selector: "lib-table", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "document:keydown.escape": "onEscKey($event)" } }, ngImport: i0, template: "<div class=\"styled-table-container\">\r\n<table *ngIf=\"field()?.tableData?.columnlength && field()?.tableData?.rowlength\" class=\"styled-table\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"field()?.tableData?.showCheckBox\"></th>\r\n <th *ngFor=\"let header of field().tableData?.tableHeaders; let i = index; trackBy: trackByIndex\">\r\n <ng-container *ngIf=\"!readonly(); else headerText\">{{header.columnName}}\r\n <!-- <input type=\"text\" [(ngModel)]=\"header.columnName\" (ngModelChange)=\"renameHeader(i, $event)\"\r\n [disabled]=\"readonly()\" class=\"custom_input\" [matTooltip]=\"header.toolTip\" matTooltipPosition=\"above\"> -->\r\n </ng-container>\r\n <ng-template #headerText>{{ header?.columnName }}</ng-template>\r\n </th>\r\n <th *ngIf=\"field()?.tableData?.showActions\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of field()?.tableData?.tdData;let rowIndex = index\">\r\n <td *ngIf=\"field()?.tableData?.showCheckBox\"><input type=\"checkbox\"></td>\r\n <td *ngFor=\"let cell of row\">{{ cell }}</td>\r\n <td *ngIf=\"field()?.tableData?.showActions\">\r\n <button class=\"action-btn\" (click)=\"openActionsPopup($event, rowIndex)\" [disabled]=\"readonly()\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n <mat-paginator class=\"custom-paginator\"\r\n [length]=\"field()?.tableData?.tdData?.length\"\r\n [pageSize]=\"paginationSize\"\r\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\r\n (page)=\"pageChanged($event)\"\r\n aria-label=\"Select page\">\r\n </mat-paginator>\r\n</div>\r\n\r\n<div *ngIf=\"showActionsPopup\" class=\"actions-popup-backdrop\" (click)=\"closeActionsPopup()\">\r\n <div class=\"actions-popup-menu\" [ngStyle]=\"{'top.px': popupPosition.top, 'left.px': popupPosition.left}\"\r\n (click)=\"$event.stopPropagation()\">\r\n <div class=\"makeArrow\" [ngStyle]=\"{'left.px': popupPosition.left+25}\"></div>\r\n <ul>\r\n <li *ngFor=\"let actionData of field().tableData?.userSelectedOptions[selectedRow]\" [matTooltip]=\"actionData?.displayTitle\"\r\n matTooltipPosition=\"above\">\r\n <mat-icon>{{actionData?.matIconName}}</mat-icon>\r\n {{actionData?.displayTitle}}\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".styled-table{width:100%;margin:16px 0;font-size:1em;box-shadow:0 0 8px #0000001a}*{font-family:mulish!important}.styled-table th,.styled-table td{border:none;padding:8px 12px;text-align:left}.styled-table thead tr{background-color:#444;color:#fff}.styled-table tbody tr:nth-child(2n){background-color:#f3f3f3}.styled-table tbody tr:hover{background-color:#e0f7fa}.custom_input{width:100%;border:none;background:transparent;font-weight:700;color:#fff}.styled-table th:first-child{border-top-left-radius:8px}.styled-table th:last-child{border-top-right-radius:8px}.popup-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.action-btn{background:none;border:none;cursor:pointer;padding:0}.actions-popup-backdrop{position:fixed;inset:0;background:transparent;z-index:1000}.actions-popup-menu{position:absolute;min-width:260px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000002e;padding:0;z-index:1001;color:#333;font-family:inherit;border:1px solid #DDDDDD}.actions-popup-menu ul{list-style:none;margin:0;padding:0 0 8px}.actions-popup-menu li{display:flex;align-items:center;padding:10px 20px;cursor:pointer;font-size:15px;transition:background .2s;border-bottom:1px dashed #DADADA}.actions-popup-menu li mat-icon{margin-right:12px;font-size:20px}.actions-popup-menu li.selected,.actions-popup-menu li:hover{background:#fff6d1;color:#222}.styled-table-container{max-width:100%;overflow-x:auto;max-height:400px;overflow-y:auto}.makeArrow{width:0;height:0;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:16px solid #fff;border-right:none;position:absolute;top:10px}:host ::ng-deep .custom-paginator .mdc-text-field--outlined .mdc-notched-outline{display:none!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatPaginatorModule }, { kind: "component", type: i5.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }] });
74
84
  }
75
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableComponent, decorators: [{
76
86
  type: Component,
77
- args: [{ selector: 'lib-table', standalone: true, imports: [NgIf, NgFor, FormsModule, CommonModule, MatIconModule, MatTooltipModule], template: "<div class=\"styled-table-container\">\r\n<table *ngIf=\"field()?.tableData?.columnlength && field()?.tableData?.rowlength\" class=\"styled-table\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"field()?.tableData?.showCheckBox\"></th>\r\n <th *ngFor=\"let header of field().tableData?.tableHeaders; let i = index; trackBy: trackByIndex\">\r\n <ng-container *ngIf=\"!readonly(); else headerText\">{{header.columnName}}\r\n <!-- <input type=\"text\" [(ngModel)]=\"header.columnName\" (ngModelChange)=\"renameHeader(i, $event)\"\r\n [disabled]=\"readonly()\" class=\"custom_input\" [matTooltip]=\"header.toolTip\" matTooltipPosition=\"above\"> -->\r\n </ng-container>\r\n <ng-template #headerText>{{ header?.columnName }}</ng-template>\r\n </th>\r\n <th *ngIf=\"field()?.tableData?.showActions\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of field()?.tableData?.tdData;let rowIndex = index\">\r\n <td *ngIf=\"field()?.tableData?.showCheckBox\"><input type=\"checkbox\"></td>\r\n <td *ngFor=\"let cell of row\">{{ cell }}</td>\r\n <td *ngIf=\"field()?.tableData?.showActions\">\r\n <button class=\"action-btn\" (click)=\"openActionsPopup($event, rowIndex)\" [disabled]=\"readonly()\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n</div>\r\n\r\n<div *ngIf=\"showActionsPopup\" class=\"actions-popup-backdrop\" (click)=\"closeActionsPopup()\">\r\n <div class=\"actions-popup-menu\" [ngStyle]=\"{'top.px': popupPosition.top, 'left.px': popupPosition.left}\"\r\n (click)=\"$event.stopPropagation()\">\r\n <ul>\r\n <li *ngFor=\"let actionData of field().tableData?.userSelectedOptions[selectedRow]\" [matTooltip]=\"actionData?.displayTitle\"\r\n matTooltipPosition=\"above\">\r\n <mat-icon>{{actionData?.matIconName}}</mat-icon>\r\n {{actionData?.displayTitle}}\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".styled-table{width:100%;margin:16px 0;font-size:1em;box-shadow:0 0 8px #0000001a}*{font-family:mulish!important}.styled-table th,.styled-table td{border:none;padding:8px 12px;text-align:left}.styled-table thead tr{background-color:#444;color:#fff}.styled-table tbody tr:nth-child(2n){background-color:#f3f3f3}.styled-table tbody tr:hover{background-color:#e0f7fa}.custom_input{width:100%;border:none;background:transparent;font-weight:700;color:#fff}.styled-table th:first-child{border-top-left-radius:8px}.styled-table th:last-child{border-top-right-radius:8px}.popup-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.action-btn{background:none;border:none;cursor:pointer;padding:0}.actions-popup-backdrop{position:fixed;inset:0;background:transparent;z-index:1000}.actions-popup-menu{position:absolute;min-width:260px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000002e;padding:0;z-index:1001;color:#333;font-family:inherit}.actions-popup-menu ul{list-style:none;margin:0;padding:0 0 8px}.actions-popup-menu li{display:flex;align-items:center;padding:10px 20px;cursor:pointer;font-size:15px;border-radius:6px;transition:background .2s}.actions-popup-menu li mat-icon{margin-right:12px;font-size:20px}.actions-popup-menu li.selected,.actions-popup-menu li:hover{background:#fff6d1;color:#222}.styled-table-container{max-width:100%;overflow-x:auto;max-height:400px;overflow-y:auto}\n"] }]
87
+ args: [{ selector: 'lib-table', standalone: true, imports: [NgIf, NgFor, FormsModule, CommonModule, MatIconModule, MatTooltipModule, MatPaginatorModule], template: "<div class=\"styled-table-container\">\r\n<table *ngIf=\"field()?.tableData?.columnlength && field()?.tableData?.rowlength\" class=\"styled-table\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"field()?.tableData?.showCheckBox\"></th>\r\n <th *ngFor=\"let header of field().tableData?.tableHeaders; let i = index; trackBy: trackByIndex\">\r\n <ng-container *ngIf=\"!readonly(); else headerText\">{{header.columnName}}\r\n <!-- <input type=\"text\" [(ngModel)]=\"header.columnName\" (ngModelChange)=\"renameHeader(i, $event)\"\r\n [disabled]=\"readonly()\" class=\"custom_input\" [matTooltip]=\"header.toolTip\" matTooltipPosition=\"above\"> -->\r\n </ng-container>\r\n <ng-template #headerText>{{ header?.columnName }}</ng-template>\r\n </th>\r\n <th *ngIf=\"field()?.tableData?.showActions\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of field()?.tableData?.tdData;let rowIndex = index\">\r\n <td *ngIf=\"field()?.tableData?.showCheckBox\"><input type=\"checkbox\"></td>\r\n <td *ngFor=\"let cell of row\">{{ cell }}</td>\r\n <td *ngIf=\"field()?.tableData?.showActions\">\r\n <button class=\"action-btn\" (click)=\"openActionsPopup($event, rowIndex)\" [disabled]=\"readonly()\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n <mat-paginator class=\"custom-paginator\"\r\n [length]=\"field()?.tableData?.tdData?.length\"\r\n [pageSize]=\"paginationSize\"\r\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\r\n (page)=\"pageChanged($event)\"\r\n aria-label=\"Select page\">\r\n </mat-paginator>\r\n</div>\r\n\r\n<div *ngIf=\"showActionsPopup\" class=\"actions-popup-backdrop\" (click)=\"closeActionsPopup()\">\r\n <div class=\"actions-popup-menu\" [ngStyle]=\"{'top.px': popupPosition.top, 'left.px': popupPosition.left}\"\r\n (click)=\"$event.stopPropagation()\">\r\n <div class=\"makeArrow\" [ngStyle]=\"{'left.px': popupPosition.left+25}\"></div>\r\n <ul>\r\n <li *ngFor=\"let actionData of field().tableData?.userSelectedOptions[selectedRow]\" [matTooltip]=\"actionData?.displayTitle\"\r\n matTooltipPosition=\"above\">\r\n <mat-icon>{{actionData?.matIconName}}</mat-icon>\r\n {{actionData?.displayTitle}}\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".styled-table{width:100%;margin:16px 0;font-size:1em;box-shadow:0 0 8px #0000001a}*{font-family:mulish!important}.styled-table th,.styled-table td{border:none;padding:8px 12px;text-align:left}.styled-table thead tr{background-color:#444;color:#fff}.styled-table tbody tr:nth-child(2n){background-color:#f3f3f3}.styled-table tbody tr:hover{background-color:#e0f7fa}.custom_input{width:100%;border:none;background:transparent;font-weight:700;color:#fff}.styled-table th:first-child{border-top-left-radius:8px}.styled-table th:last-child{border-top-right-radius:8px}.popup-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.action-btn{background:none;border:none;cursor:pointer;padding:0}.actions-popup-backdrop{position:fixed;inset:0;background:transparent;z-index:1000}.actions-popup-menu{position:absolute;min-width:260px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000002e;padding:0;z-index:1001;color:#333;font-family:inherit;border:1px solid #DDDDDD}.actions-popup-menu ul{list-style:none;margin:0;padding:0 0 8px}.actions-popup-menu li{display:flex;align-items:center;padding:10px 20px;cursor:pointer;font-size:15px;transition:background .2s;border-bottom:1px dashed #DADADA}.actions-popup-menu li mat-icon{margin-right:12px;font-size:20px}.actions-popup-menu li.selected,.actions-popup-menu li:hover{background:#fff6d1;color:#222}.styled-table-container{max-width:100%;overflow-x:auto;max-height:400px;overflow-y:auto}.makeArrow{width:0;height:0;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:16px solid #fff;border-right:none;position:absolute;top:10px}:host ::ng-deep .custom-paginator .mdc-text-field--outlined .mdc-notched-outline{display:none!important}\n"] }]
78
88
  }], ctorParameters: () => [{ type: i1.MasterControlService }], propDecorators: { onEscKey: [{
79
89
  type: HostListener,
80
90
  args: ['document:keydown.escape', ['$event']]
81
91
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi90YWJsZS90YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7QUFTN0QsTUFBTSxPQUFPLGNBQWM7SUFPTjtJQU5uQixLQUFLLEdBQVEsS0FBSyxDQUFDLFFBQVEsRUFBTyxDQUFDO0lBQ25DLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLGFBQWEsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQ3BDLFdBQVcsR0FBUSxDQUFDLENBQUM7SUFDckIsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdEIsWUFBbUIsb0JBQTJDO1FBQTNDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBdUI7SUFBSSxDQUFDO0lBRW5FLFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUNELFlBQVksQ0FBQyxLQUFVLEVBQUUs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QUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztRQUM1QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDMUIsTUFBTSxJQUFJLEdBQUksS0FBSyxDQUFDLE1BQXNCLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNuRSxJQUFJLENBQUMsYUFBYSxHQUFHO1lBQ25CLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLEdBQUcsRUFBRTtZQUN0QyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsT0FBTyxHQUFHLEVBQUU7U0FDdEMsQ0FBQztJQUNKLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUksQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBR0QsUUFBUSxDQUFDLEtBQW9CO1FBQzNCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7d0dBckVVLGNBQWM7NEZBQWQsY0FBYyxpWkNiM0Isay9EQXlDQSx1aEREaENZLElBQUksNkZBQUUsS0FBSyxrSEFBRSxXQUFXLDhCQUFFLFlBQVksbUhBQUUsYUFBYSxtTEFBRSxnQkFBZ0I7OzRGQUl0RSxjQUFjO2tCQVAxQixTQUFTOytCQUNFLFdBQVcsY0FDVCxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixDQUFDO3lGQXVFbEYsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLHlCQUF5QixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXRhYmxlJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0ZvciwgRm9ybXNNb2R1bGUsIENvbW1vbk1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgTWF0VG9vbHRpcE1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGFibGUuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IHtcclxuICBmaWVsZDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIHJlYWRvbmx5ID0gaW5wdXQoZmFsc2UpO1xyXG4gIHNob3dBY3Rpb25zUG9wdXAgPSBmYWxzZTtcclxuICBwb3B1cFBvc2l0aW9uID0geyB0b3A6IDAsIGxlZnQ6IDAgfTtcclxuICBzZWxlY3RlZFJvdzogYW55ID0gMDtcclxuICBoaWdobGlnaHRlZEluZGV4ID0gLTE7XHJcbiAgY29uc3RydWN0b3IocHVibGljIG1hc3RlckNvbnRyb2xTZXJ2aWNlIDogTWFzdGVyQ29udHJvbFNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q29sdW1ucygpO1xyXG4gIH1cclxuICB0cmFja0J5SW5kZXgoaW5kZXg6IGFueSwgaXRlbTogYW55KSB7XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBzZXRDb2x1bW5zKCkge1xyXG4gICAgbGV0IGNoZWNrQ29uZmlnRGF0YSA9IHRoaXMuZmllbGQoKS5jb25maWdEYXRhO1xyXG4gICAgaWYoT2JqZWN0LmtleXMoY2hlY2tDb25maWdEYXRhKS5sZW5ndGggPiAwKXtcclxuICAgICAgdGhpcy5tYXN0ZXJDb250cm9sU2VydmljZS5jb25maWdEYXRhLnRhYmxlID0gY2hlY2tDb25maWdEYXRhO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMubWFzdGVyQ29udHJvbFNlcnZpY2UuY29uZmlnRGF0YS50YWJsZS5yb3dsZW5ndGggPiAwICYmIHRoaXMubWFzdGVyQ29udHJvbFNlcnZpY2UuY29uZmlnRGF0YS50YWJsZS5jb2x1bW5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuZmllbGQoKS50YWJsZURhdGEgPSB0aGlzLm1hc3RlckNvbnRyb2xTZXJ2aWNlLmNvbmZpZ0RhdGEudGFibGU7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5tYXN0ZXJDb250cm9sU2VydmljZS5jb25maWdEYXRhLnRhYmxlLmNvbHVtbmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgaWYoT2JqZWN0LmtleXMoY2hlY2tDb25maWdEYXRhKS5sZW5ndGggPD0gMCl7XHJcbiAgICAgICAgICBsZXQgaGVhZGVyT2JqID0ge1xyXG4gICAgICAgICAgICBcImNvbHVtbk5hbWVcIjogYCR7J05hbWUgLSAnICsgaX1gLFxyXG4gICAgICAgICAgICBcImlzU29ydGluZ05lZWRlZFwiOiBcIllcIixcclxuICAgICAgICAgICAgXCJ0b29sVGlwXCI6IGAkeyd0b29sdGlwIC0gJyArIGl9YFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY29uc3QgZXhpc3RzID0gdGhpcy5maWVsZCgpLnRhYmxlRGF0YS50YWJsZUhlYWRlcnMuc29tZShcclxuICAgICAgICAgICAgKGhlYWRlcjogYW55KSA9PiBoZWFkZXIuY29sdW1uTmFtZSA9PT0gaGVhZGVyT2JqLmNvbHVtbk5hbWVcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBpZiAoIWV4aXN0cyAmJiB0aGlzLmZpZWxkKCkudGFibGVEYXRhLnRhYmxlSGVhZGVycy5sZW5ndGggPCB0aGlzLm1hc3RlckNvbnRyb2xTZXJ2aWNlLmNvbmZpZ0RhdGEudGFibGUuY29sdW1ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmllbGQoKS50YWJsZURhdGEudGFibGVIZWFkZXJzLnB1c2goaGVhZGVyT2JqKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5maWVsZCgpLnRhYmxlRGF0YS50ZERhdGEgPSBBcnJheSh0aGlzLm1hc3RlckNvbnRyb2xTZXJ2aWNlLmNvbmZpZ0RhdGEudGFibGUucm93bGVuZ3RoKS5maWxsKG51bGwpLm1hcCgoXywgcm93SWR4KSA9PlxyXG4gICAgICAgIEFycmF5KHRoaXMubWFzdGVyQ29udHJvbFNlcnZpY2UuY29uZmlnRGF0YS50YWJsZS5jb2x1bW5sZW5ndGgpLmZpbGwoJycpLm1hcCgoXywgY29sSWR4KSA9PiBgRHVtbXkgUm93ICR7cm93SWR4ICsgMX1gKVxyXG4gICAgICApO1xyXG5cclxuICAgICAgdGhpcy5tYXN0ZXJDb250cm9sU2VydmljZS5zYXZlVGFibGVGaWVsZFN0YXRlKHRoaXMuZmllbGQoKSk7XHJcbiAgICAgIHRoaXMuZmllbGQoKS5jb25maWdEYXRhID0gdGhpcy5maWVsZCgpLnRhYmxlRGF0YVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9wZW5BY3Rpb25zUG9wdXAoZXZlbnQ6IE1vdXNlRXZlbnQsIHJvd0luZGV4OiBudW1iZXIpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5zZWxlY3RlZFJvdyA9IHJvd0luZGV4O1xyXG4gICAgdGhpcy5zaG93QWN0aW9uc1BvcHVwID0gdHJ1ZTtcclxuICAgIHRoaXMuaGlnaGxpZ2h0ZWRJbmRleCA9IDE7XHJcbiAgICBjb25zdCByZWN0ID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICB0aGlzLnBvcHVwUG9zaXRpb24gPSB7XHJcbiAgICAgIHRvcDogcmVjdC5ib3R0b20gKyB3aW5kb3cuc2Nyb2xsWSAtIDMwLFxyXG4gICAgICBsZWZ0OiByZWN0LmxlZnQgKyB3aW5kb3cuc2Nyb2xsWCArIDMwXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgY2xvc2VBY3Rpb25zUG9wdXAoKSB7XHJcbiAgICB0aGlzLnNob3dBY3Rpb25zUG9wdXAgPSBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRSb3cgID0gMDtcclxuICAgIHRoaXMuaGlnaGxpZ2h0ZWRJbmRleCA9IC0xO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUnLCBbJyRldmVudCddKVxyXG4gIG9uRXNjS2V5KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICB0aGlzLmNsb3NlQWN0aW9uc1BvcHVwKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzdHlsZWQtdGFibGUtY29udGFpbmVyXCI+XHJcbjx0YWJsZSAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uY29sdW1ubGVuZ3RoICYmIGZpZWxkKCk/LnRhYmxlRGF0YT8ucm93bGVuZ3RoXCIgY2xhc3M9XCJzdHlsZWQtdGFibGVcIj5cclxuICA8dGhlYWQ+XHJcbiAgICA8dHI+XHJcbiAgICAgIDx0aCAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uc2hvd0NoZWNrQm94XCI+PC90aD5cclxuICAgICAgPHRoICpuZ0Zvcj1cImxldCBoZWFkZXIgb2YgZmllbGQoKS50YWJsZURhdGE/LnRhYmxlSGVhZGVyczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyZWFkb25seSgpOyBlbHNlIGhlYWRlclRleHRcIj57e2hlYWRlci5jb2x1bW5OYW1lfX1cclxuICAgICAgICAgIDwhLS0gPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJoZWFkZXIuY29sdW1uTmFtZVwiIChuZ01vZGVsQ2hhbmdlKT1cInJlbmFtZUhlYWRlcihpLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5KClcIiBjbGFzcz1cImN1c3RvbV9pbnB1dFwiIFttYXRUb29sdGlwXT1cImhlYWRlci50b29sVGlwXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIj4gLS0+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZXh0Pnt7IGhlYWRlcj8uY29sdW1uTmFtZSB9fTwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0aCAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uc2hvd0FjdGlvbnNcIj5BY3Rpb248L3RoPlxyXG4gICAgPC90cj5cclxuICA8L3RoZWFkPlxyXG4gIDx0Ym9keT5cclxuICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIGZpZWxkKCk/LnRhYmxlRGF0YT8udGREYXRhO2xldCByb3dJbmRleCA9IGluZGV4XCI+XHJcbiAgICAgIDx0ZCAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uc2hvd0NoZWNrQm94XCI+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiPjwvdGQ+XHJcbiAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgY2VsbCBvZiByb3dcIj57eyBjZWxsIH19PC90ZD5cclxuICAgICAgPHRkICpuZ0lmPVwiZmllbGQoKT8udGFibGVEYXRhPy5zaG93QWN0aW9uc1wiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhY3Rpb24tYnRuXCIgKGNsaWNrKT1cIm9wZW5BY3Rpb25zUG9wdXAoJGV2ZW50LCByb3dJbmRleClcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHkoKVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gIDwvdGJvZHk+XHJcbjwvdGFibGU+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cInNob3dBY3Rpb25zUG9wdXBcIiBjbGFzcz1cImFjdGlvbnMtcG9wdXAtYmFja2Ryb3BcIiAoY2xpY2spPVwiY2xvc2VBY3Rpb25zUG9wdXAoKVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJhY3Rpb25zLXBvcHVwLW1lbnVcIiBbbmdTdHlsZV09XCJ7J3RvcC5weCc6IHBvcHVwUG9zaXRpb24udG9wLCAnbGVmdC5weCc6IHBvcHVwUG9zaXRpb24ubGVmdH1cIlxyXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgPHVsPlxyXG4gICAgICA8bGkgKm5nRm9yPVwibGV0IGFjdGlvbkRhdGEgb2YgZmllbGQoKS50YWJsZURhdGE/LnVzZXJTZWxlY3RlZE9wdGlvbnNbc2VsZWN0ZWRSb3ddXCIgW21hdFRvb2x0aXBdPVwiYWN0aW9uRGF0YT8uZGlzcGxheVRpdGxlXCJcclxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj57e2FjdGlvbkRhdGE/Lm1hdEljb25OYW1lfX08L21hdC1pY29uPlxyXG4gICAgICAgIHt7YWN0aW9uRGF0YT8uZGlzcGxheVRpdGxlfX1cclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi90YWJsZS90YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxrQkFBa0IsRUFBYSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7O0FBUTVFLE1BQU0sT0FBTyxjQUFjO0lBVU47SUFUbkIsS0FBSyxHQUFRLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQztJQUNuQyxRQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUN6QixhQUFhLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNwQyxXQUFXLEdBQVEsQ0FBQyxDQUFDO0lBQ3JCLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RCLGNBQWMsR0FBUSxFQUFFLENBQUM7SUFDekIsVUFBVSxHQUFRLENBQUMsQ0FBQztJQUNwQixRQUFRLEdBQVEsRUFBRSxDQUFDO0lBQ25CLFlBQW1CLG9C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LDZGQUFFLEtBQUssa0hBQUUsV0FBVyw4QkFBRSxZQUFZLG1IQUFFLGFBQWEsbUxBQUUsZ0JBQWdCLDRUQUFDLGtCQUFrQjs7NEZBSXpGLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsV0FBVyxjQUNULElBQUksV0FDUCxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUMsa0JBQWtCLENBQUM7eUZBeUVyRyxRQUFRO3NCQURQLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ0ZvciwgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWF0UGFnaW5hdG9yTW9kdWxlLCBQYWdlRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10YWJsZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTmdJZiwgTmdGb3IsIEZvcm1zTW9kdWxlLCBDb21tb25Nb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdFRvb2x0aXBNb2R1bGUsTWF0UGFnaW5hdG9yTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQge1xyXG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcbiAgcmVhZG9ubHkgPSBpbnB1dChmYWxzZSk7XHJcbiAgc2hvd0FjdGlvbnNQb3B1cCA9IGZhbHNlO1xyXG4gIHBvcHVwUG9zaXRpb24gPSB7IHRvcDogMCwgbGVmdDogMCB9O1xyXG4gIHNlbGVjdGVkUm93OiBhbnkgPSAwO1xyXG4gIGhpZ2hsaWdodGVkSW5kZXggPSAtMTtcclxuICBwYWdpbmF0aW9uU2l6ZTogYW55ID0gMTA7XHJcbiAgcGFnZU51bWJlcjogYW55ID0gMDtcclxuICBwYWdlU2l6ZTogYW55ID0gMTA7XHJcbiAgY29uc3RydWN0b3IocHVibGljIG1hc3RlckNvbnRyb2xTZXJ2aWNlIDogTWFzdGVyQ29udHJvbFNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q29sdW1ucygpO1xyXG4gIH1cclxuICB0cmFja0J5SW5kZXgoaW5kZXg6IGFueSwgaXRlbTogYW55KSB7XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBzZXRDb2x1bW5zKCkge1xyXG4gICAgbGV0IGNoZWNrQ29uZmlnRGF0YSA9IHRoaXMuZmllbGQoKS5jb25maWdEYXRhO1xyXG4gICAgaWYoT2JqZWN0LmtleXMoY2hlY2tDb25maWdEYXRhKS5sZW5ndGggPiAwKXtcclxuICAgICAgdGhpcy5tYXN0ZXJDb250cm9sU2VydmljZS5jb25maWdEYXRhLnRhYmxlID0gY2hlY2tDb25maWdEYXRhO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMubWFzdGVyQ29udHJvbFNlcnZpY2UuY29uZmlnRGF0YS50YWJsZS5yb3dsZW5ndGggPiAwICYmIHRoaXMubWFzdGVyQ29udHJvbFNlcnZpY2UuY29uZmlnRGF0YS50YWJsZS5jb2x1bW5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuZmllbGQoKS50YWJsZURhdGEgPSB0aGlzLm1hc3RlckNvbnRyb2xTZXJ2aWNlLmNvbmZpZ0RhdGEudGFibGU7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5tYXN0ZXJDb250cm9sU2VydmljZS5jb25maWdEYXRhLnRhYmxlLmNvbHVtbmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgaWYoT2JqZWN0LmtleXMoY2hlY2tDb25maWdEYXRhKS5sZW5ndGggPD0gMCl7XHJcbiAgICAgICAgICBsZXQgaGVhZGVyT2JqID0ge1xyXG4gICAgICAgICAgICBcImNvbHVtbk5hbWVcIjogYCR7J05hbWUgLSAnICsgaX1gLFxyXG4gICAgICAgICAgICBcImlzU29ydGluZ05lZWRlZFwiOiBcIllcIixcclxuICAgICAgICAgICAgXCJ0b29sVGlwXCI6IGAkeyd0b29sdGlwIC0gJyArIGl9YFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY29uc3QgZXhpc3RzID0gdGhpcy5maWVsZCgpLnRhYmxlRGF0YS50YWJsZUhlYWRlcnMuc29tZShcclxuICAgICAgICAgICAgKGhlYWRlcjogYW55KSA9PiBoZWFkZXIuY29sdW1uTmFtZSA9PT0gaGVhZGVyT2JqLmNvbHVtbk5hbWVcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBpZiAoIWV4aXN0cyAmJiB0aGlzLmZpZWxkKCkudGFibGVEYXRhLnRhYmxlSGVhZGVycy5sZW5ndGggPCB0aGlzLm1hc3RlckNvbnRyb2xTZXJ2aWNlLmNvbmZpZ0RhdGEudGFibGUuY29sdW1ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmllbGQoKS50YWJsZURhdGEudGFibGVIZWFkZXJzLnB1c2goaGVhZGVyT2JqKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5maWVsZCgpLnRhYmxlRGF0YS50ZERhdGEgPSBBcnJheSh0aGlzLm1hc3RlckNvbnRyb2xTZXJ2aWNlLmNvbmZpZ0RhdGEudGFibGUucm93bGVuZ3RoKS5maWxsKG51bGwpLm1hcCgoXywgcm93SWR4KSA9PlxyXG4gICAgICAgIEFycmF5KHRoaXMubWFzdGVyQ29udHJvbFNlcnZpY2UuY29uZmlnRGF0YS50YWJsZS5jb2x1bW5sZW5ndGgpLmZpbGwoJycpLm1hcCgoXywgY29sSWR4KSA9PiBgRHVtbXkgUm93ICR7cm93SWR4ICsgMX1gKVxyXG4gICAgICApO1xyXG5cclxuICAgICAgdGhpcy5tYXN0ZXJDb250cm9sU2VydmljZS5zYXZlVGFibGVGaWVsZFN0YXRlKHRoaXMuZmllbGQoKSk7XHJcbiAgICAgIHRoaXMuZmllbGQoKS5jb25maWdEYXRhID0gdGhpcy5maWVsZCgpLnRhYmxlRGF0YVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3BlbkFjdGlvbnNQb3B1cChldmVudDogTW91c2VFdmVudCwgcm93SW5kZXg6IG51bWJlcikge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkUm93ID0gcm93SW5kZXg7XHJcbiAgICB0aGlzLnNob3dBY3Rpb25zUG9wdXAgPSB0cnVlO1xyXG4gICAgdGhpcy5oaWdobGlnaHRlZEluZGV4ID0gMTtcclxuICAgIGNvbnN0IHJlY3QgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMucG9wdXBQb3NpdGlvbiA9IHtcclxuICAgICAgdG9wOiByZWN0LmJvdHRvbSArIHdpbmRvdy5zY3JvbGxZIC0gMzAsXHJcbiAgICAgIGxlZnQ6IHJlY3QubGVmdCArIHdpbmRvdy5zY3JvbGxYIC0gMjgwLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGNsb3NlQWN0aW9uc1BvcHVwKCkge1xyXG4gICAgdGhpcy5zaG93QWN0aW9uc1BvcHVwID0gZmFsc2U7XHJcbiAgICB0aGlzLnNlbGVjdGVkUm93ICA9IDA7XHJcbiAgICB0aGlzLmhpZ2hsaWdodGVkSW5kZXggPSAtMTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJywgWyckZXZlbnQnXSlcclxuICBvbkVzY0tleShldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgdGhpcy5jbG9zZUFjdGlvbnNQb3B1cCgpO1xyXG4gIH1cclxuXHJcbiAgIHBhZ2VDaGFuZ2VkKGV2ZW50OiBQYWdlRXZlbnQpIHtcclxuICAgIHRoaXMucGFnZU51bWJlciA9IGV2ZW50LnBhZ2VJbmRleDtcclxuICAgIHRoaXMucGFnZVNpemUgPSBldmVudC5wYWdlU2l6ZTtcclxuICAgIGNvbnNvbGUubG9nKHRoaXMucGFnZU51bWJlciwgdGhpcy5wYWdlU2l6ZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzdHlsZWQtdGFibGUtY29udGFpbmVyXCI+XHJcbjx0YWJsZSAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uY29sdW1ubGVuZ3RoICYmIGZpZWxkKCk/LnRhYmxlRGF0YT8ucm93bGVuZ3RoXCIgY2xhc3M9XCJzdHlsZWQtdGFibGVcIj5cclxuICA8dGhlYWQ+XHJcbiAgICA8dHI+XHJcbiAgICAgIDx0aCAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uc2hvd0NoZWNrQm94XCI+PC90aD5cclxuICAgICAgPHRoICpuZ0Zvcj1cImxldCBoZWFkZXIgb2YgZmllbGQoKS50YWJsZURhdGE/LnRhYmxlSGVhZGVyczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyZWFkb25seSgpOyBlbHNlIGhlYWRlclRleHRcIj57e2hlYWRlci5jb2x1bW5OYW1lfX1cclxuICAgICAgICAgIDwhLS0gPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJoZWFkZXIuY29sdW1uTmFtZVwiIChuZ01vZGVsQ2hhbmdlKT1cInJlbmFtZUhlYWRlcihpLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5KClcIiBjbGFzcz1cImN1c3RvbV9pbnB1dFwiIFttYXRUb29sdGlwXT1cImhlYWRlci50b29sVGlwXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIj4gLS0+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZXh0Pnt7IGhlYWRlcj8uY29sdW1uTmFtZSB9fTwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0aCAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uc2hvd0FjdGlvbnNcIj5BY3Rpb248L3RoPlxyXG4gICAgPC90cj5cclxuICA8L3RoZWFkPlxyXG4gIDx0Ym9keT5cclxuICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIGZpZWxkKCk/LnRhYmxlRGF0YT8udGREYXRhO2xldCByb3dJbmRleCA9IGluZGV4XCI+XHJcbiAgICAgIDx0ZCAqbmdJZj1cImZpZWxkKCk/LnRhYmxlRGF0YT8uc2hvd0NoZWNrQm94XCI+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiPjwvdGQ+XHJcbiAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgY2VsbCBvZiByb3dcIj57eyBjZWxsIH19PC90ZD5cclxuICAgICAgPHRkICpuZ0lmPVwiZmllbGQoKT8udGFibGVEYXRhPy5zaG93QWN0aW9uc1wiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhY3Rpb24tYnRuXCIgKGNsaWNrKT1cIm9wZW5BY3Rpb25zUG9wdXAoJGV2ZW50LCByb3dJbmRleClcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHkoKVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gIDwvdGJvZHk+XHJcbjwvdGFibGU+XHJcbiA8bWF0LXBhZ2luYXRvciBjbGFzcz1cImN1c3RvbS1wYWdpbmF0b3JcIlxyXG4gICAgICBbbGVuZ3RoXT1cImZpZWxkKCk/LnRhYmxlRGF0YT8udGREYXRhPy5sZW5ndGhcIlxyXG4gICAgICBbcGFnZVNpemVdPVwicGFnaW5hdGlvblNpemVcIlxyXG4gICAgICBbcGFnZVNpemVPcHRpb25zXT1cIls1LCAxMCwgMjUsIDEwMF1cIlxyXG4gICAgICAocGFnZSk9XCJwYWdlQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgYXJpYS1sYWJlbD1cIlNlbGVjdCBwYWdlXCI+XHJcbiAgICA8L21hdC1wYWdpbmF0b3I+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cInNob3dBY3Rpb25zUG9wdXBcIiBjbGFzcz1cImFjdGlvbnMtcG9wdXAtYmFja2Ryb3BcIiAoY2xpY2spPVwiY2xvc2VBY3Rpb25zUG9wdXAoKVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJhY3Rpb25zLXBvcHVwLW1lbnVcIiBbbmdTdHlsZV09XCJ7J3RvcC5weCc6IHBvcHVwUG9zaXRpb24udG9wLCAnbGVmdC5weCc6IHBvcHVwUG9zaXRpb24ubGVmdH1cIlxyXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1ha2VBcnJvd1wiIFtuZ1N0eWxlXT1cInsnbGVmdC5weCc6IHBvcHVwUG9zaXRpb24ubGVmdCsyNX1cIj48L2Rpdj5cclxuICAgIDx1bD5cclxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBhY3Rpb25EYXRhIG9mIGZpZWxkKCkudGFibGVEYXRhPy51c2VyU2VsZWN0ZWRPcHRpb25zW3NlbGVjdGVkUm93XVwiIFttYXRUb29sdGlwXT1cImFjdGlvbkRhdGE/LmRpc3BsYXlUaXRsZVwiXHJcbiAgICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIj5cclxuICAgICAgICA8bWF0LWljb24+e3thY3Rpb25EYXRhPy5tYXRJY29uTmFtZX19PC9tYXQtaWNvbj5cclxuICAgICAgICB7e2FjdGlvbkRhdGE/LmRpc3BsYXlUaXRsZX19XHJcbiAgICAgIDwvbGk+XHJcbiAgICA8L3VsPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19