@annalib/anna-core 30.0.22 → 30.0.24

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.
@@ -13,11 +13,11 @@ export class AnnaLicensingTableComponent {
13
13
  this.specificationChanged.emit({ updatedValue, featureDetails });
14
14
  }
15
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaLicensingTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaLicensingTableComponent, isStandalone: true, selector: "anna-core-licensing-table", inputs: { plans: "plans", isEditMode: "isEditMode" }, outputs: { specificationChanged: "specificationChanged" }, ngImport: i0, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'OrderCount'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalOrders }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.RemainingOrders\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.RemainingOrders }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaLicensingTableComponent, isStandalone: true, selector: "anna-core-licensing-table", inputs: { plans: "plans", isEditMode: "isEditMode" }, outputs: { specificationChanged: "specificationChanged" }, ngImport: i0, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'PAY_PER_USE'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalCount\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalCount\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalCount }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.ConsumedCount\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.TotalCount - featureDetails.Specification[0].Json.ConsumedCount }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
17
  }
18
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaLicensingTableComponent, decorators: [{
19
19
  type: Component,
20
- args: [{ selector: 'anna-core-licensing-table', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'OrderCount'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalOrders }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.RemainingOrders\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.RemainingOrders }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"] }]
20
+ args: [{ selector: 'anna-core-licensing-table', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'PAY_PER_USE'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalCount\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalCount\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalCount }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.ConsumedCount\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.TotalCount - featureDetails.Specification[0].Json.ConsumedCount }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"] }]
21
21
  }], propDecorators: { plans: [{
22
22
  type: Input
23
23
  }], isEditMode: [{
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
25
25
  }], specificationChanged: [{
26
26
  type: Output
27
27
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1saWNlbnNpbmctdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvY29tcG9uZW50cy9hbm5hLWxpY2Vuc2luZy10YWJsZS9hbm5hLWxpY2Vuc2luZy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9jb21wb25lbnRzL2FubmEtbGljZW5zaW5nLXRhYmxlL2FubmEtbGljZW5zaW5nLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVk3QyxNQUFNLE9BQU8sMkJBQTJCO0lBUnhDO1FBVVcsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUMzQix5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0tBSzFEO0lBSEMsYUFBYSxDQUFDLFlBQWlCLEVBQUUsY0FBOEI7UUFDN0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7K0dBUFUsMkJBQTJCO21HQUEzQiwyQkFBMkIsc01DZHhDLHFqR0EyREEsczNDRGxEWSxZQUFZLCtQQUFFLFdBQVc7OzRGQUt4QiwyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsbUJBR25CLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLG9CQUFvQjtzQkFBN0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEZlYXR1cmVEZXRhaWxzLCBMaWNlbnNpbmdQbGFuIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FubmEtbGljZW5zaW5nLXRhYmxlLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5uYS1jb3JlLWxpY2Vuc2luZy10YWJsZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FubmEtbGljZW5zaW5nLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hbm5hLWxpY2Vuc2luZy10YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbm5hTGljZW5zaW5nVGFibGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHBsYW5zOiBMaWNlbnNpbmdQbGFuW107XHJcbiAgQElucHV0KCkgaXNFZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBzcGVjaWZpY2F0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBvblZhbHVlQ2hhbmdlKHVwZGF0ZWRWYWx1ZTogYW55LCBmZWF0dXJlRGV0YWlsczogRmVhdHVyZURldGFpbHMpIHtcclxuICAgIHRoaXMuc3BlY2lmaWNhdGlvbkNoYW5nZWQuZW1pdCh7dXBkYXRlZFZhbHVlLCBmZWF0dXJlRGV0YWlsc30pO1xyXG4gIH1cclxufVxyXG4iLCI8dGFibGUgY2xhc3M9XCJoZWFkZXItc2VjdGlvblwiPlxyXG4gICAgPHRoZWFkPlxyXG4gICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRoPkZFQVRVUkU8L3RoPlxyXG4gICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IHBsYW4gb2YgcGxhbnNcIj5cclxuICAgICAgICAgICAgICAgIHt7IHBsYW4/LlBsYW5OYW1lIH19XHJcbiAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInBsYW5zLmxlbmd0aCA9PT0gMSAmJiAhaXNFZGl0TW9kZVwiPkN1cnJlbnQgcGxhbjwvcD5cclxuICAgICAgICAgICAgPC90aD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgPC90aGVhZD5cclxuPC90YWJsZT5cclxuPGRpdiBjbGFzcz1cInNjcm9sbGFibGUtdGJvZHlcIj5cclxuICAgIDx0YWJsZT5cclxuICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZmVhdHVyZSBvZiBwbGFuc1swXT8uRmVhdHVyZURldGFpbHM7IGxldCBmZWF0dXJlSW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgZmVhdHVyZS5GZWF0dXJlTmFtZSB9fTwvc3Ryb25nPiB7eyBmZWF0dXJlLkZlYXR1cmVEZXNjcmlwdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgcGxhbiBvZiBwbGFuczsgbGV0IHBsYW5JbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBsYW4uRmVhdHVyZURldGFpbHNbZmVhdHVyZUluZGV4XSBhcyBmZWF0dXJlRGV0YWlsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmZWF0dXJlRGV0YWlscy5Jc0VuYWJsZWQgJiYgIWZlYXR1cmVEZXRhaWxzLlNwZWNpZmljYXRpb24ubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWRpIG1kaS1jaGVja2JveC1tYXJrZWQtY2lyY2xlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWZlYXR1cmVEZXRhaWxzLklzRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1kaSBtZGktY2xvc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvbi5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uVHlwZSA9PT0gJ09yZGVyQ291bnQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlzRWRpdE1vZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImZlYXR1cmVEZXRhaWxzLlNwZWNpZmljYXRpb25bMF0uSnNvbi5Ub3RhbE9yZGVyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblZhbHVlQ2hhbmdlKCRldmVudCwgZmVhdHVyZURldGFpbHMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uLlRvdGFsT3JkZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3JkZXJzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc0VkaXRNb2RlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uLlRvdGFsT3JkZXJzIH19IE9yZGVyc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmZWF0dXJlRGV0YWlscy5TcGVjaWZpY2F0aW9uWzBdLkpzb24uUmVtYWluaW5nT3JkZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGZlYXR1cmVEZXRhaWxzLlNwZWNpZmljYXRpb25bMF0uSnNvbi5SZW1haW5pbmdPcmRlcnMgfX0gUmVtYWluaW5nPC9zcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJmZWF0dXJlRGV0YWlscy5TcGVjaWZpY2F0aW9uWzBdLklzQ3VzdG9taXplZFwiPihDdXN0b21pemVkKTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90Ym9keT5cclxuICAgIDwvdGFibGU+XHJcbjwvZGl2PlxyXG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1saWNlbnNpbmctdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvY29tcG9uZW50cy9hbm5hLWxpY2Vuc2luZy10YWJsZS9hbm5hLWxpY2Vuc2luZy10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9jb21wb25lbnRzL2FubmEtbGljZW5zaW5nLXRhYmxlL2FubmEtbGljZW5zaW5nLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVk3QyxNQUFNLE9BQU8sMkJBQTJCO0lBUnhDO1FBVVcsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUMzQix5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0tBSzFEO0lBSEMsYUFBYSxDQUFDLFlBQWlCLEVBQUUsY0FBOEI7UUFDN0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7K0dBUFUsMkJBQTJCO21HQUEzQiwyQkFBMkIsc01DZHhDLGltR0EyREEsczNDRGxEWSxZQUFZLCtQQUFFLFdBQVc7OzRGQUt4QiwyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsbUJBR25CLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLG9CQUFvQjtzQkFBN0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEZlYXR1cmVEZXRhaWxzLCBMaWNlbnNpbmdQbGFuIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FubmEtbGljZW5zaW5nLXRhYmxlLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5uYS1jb3JlLWxpY2Vuc2luZy10YWJsZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FubmEtbGljZW5zaW5nLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hbm5hLWxpY2Vuc2luZy10YWJsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbm5hTGljZW5zaW5nVGFibGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHBsYW5zOiBMaWNlbnNpbmdQbGFuW107XHJcbiAgQElucHV0KCkgaXNFZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBzcGVjaWZpY2F0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBvblZhbHVlQ2hhbmdlKHVwZGF0ZWRWYWx1ZTogYW55LCBmZWF0dXJlRGV0YWlsczogRmVhdHVyZURldGFpbHMpIHtcclxuICAgIHRoaXMuc3BlY2lmaWNhdGlvbkNoYW5nZWQuZW1pdCh7dXBkYXRlZFZhbHVlLCBmZWF0dXJlRGV0YWlsc30pO1xyXG4gIH1cclxufVxyXG4iLCI8dGFibGUgY2xhc3M9XCJoZWFkZXItc2VjdGlvblwiPlxyXG4gICAgPHRoZWFkPlxyXG4gICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRoPkZFQVRVUkU8L3RoPlxyXG4gICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IHBsYW4gb2YgcGxhbnNcIj5cclxuICAgICAgICAgICAgICAgIHt7IHBsYW4/LlBsYW5OYW1lIH19XHJcbiAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInBsYW5zLmxlbmd0aCA9PT0gMSAmJiAhaXNFZGl0TW9kZVwiPkN1cnJlbnQgcGxhbjwvcD5cclxuICAgICAgICAgICAgPC90aD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgPC90aGVhZD5cclxuPC90YWJsZT5cclxuPGRpdiBjbGFzcz1cInNjcm9sbGFibGUtdGJvZHlcIj5cclxuICAgIDx0YWJsZT5cclxuICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZmVhdHVyZSBvZiBwbGFuc1swXT8uRmVhdHVyZURldGFpbHM7IGxldCBmZWF0dXJlSW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgZmVhdHVyZS5GZWF0dXJlTmFtZSB9fTwvc3Ryb25nPiB7eyBmZWF0dXJlLkZlYXR1cmVEZXNjcmlwdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZCAqbmdGb3I9XCJsZXQgcGxhbiBvZiBwbGFuczsgbGV0IHBsYW5JbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBsYW4uRmVhdHVyZURldGFpbHNbZmVhdHVyZUluZGV4XSBhcyBmZWF0dXJlRGV0YWlsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmZWF0dXJlRGV0YWlscy5Jc0VuYWJsZWQgJiYgIWZlYXR1cmVEZXRhaWxzLlNwZWNpZmljYXRpb24ubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWRpIG1kaS1jaGVja2JveC1tYXJrZWQtY2lyY2xlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWZlYXR1cmVEZXRhaWxzLklzRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1kaSBtZGktY2xvc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvbi5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uVHlwZSA9PT0gJ1BBWV9QRVJfVVNFJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpc0VkaXRNb2RlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJmZWF0dXJlRGV0YWlscy5TcGVjaWZpY2F0aW9uWzBdLkpzb24uVG90YWxDb3VudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblZhbHVlQ2hhbmdlKCRldmVudCwgZmVhdHVyZURldGFpbHMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uLlRvdGFsQ291bnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPcmRlcnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWlzRWRpdE1vZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBmZWF0dXJlRGV0YWlscy5TcGVjaWZpY2F0aW9uWzBdLkpzb24uVG90YWxDb3VudCB9fSBPcmRlcnNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uLkNvbnN1bWVkQ291bnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID58XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZmVhdHVyZURldGFpbHMuU3BlY2lmaWNhdGlvblswXS5Kc29uLlRvdGFsQ291bnQgLSBmZWF0dXJlRGV0YWlscy5TcGVjaWZpY2F0aW9uWzBdLkpzb24uQ29uc3VtZWRDb3VudCB9fSBSZW1haW5pbmc8L3NwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImZlYXR1cmVEZXRhaWxzLlNwZWNpZmljYXRpb25bMF0uSXNDdXN0b21pemVkXCI+KEN1c3RvbWl6ZWQpPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICA8L3Rib2R5PlxyXG4gICAgPC90YWJsZT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -143,11 +143,11 @@ class AnnaLicensingTableComponent {
143
143
  this.specificationChanged.emit({ updatedValue, featureDetails });
144
144
  }
145
145
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaLicensingTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
146
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaLicensingTableComponent, isStandalone: true, selector: "anna-core-licensing-table", inputs: { plans: "plans", isEditMode: "isEditMode" }, outputs: { specificationChanged: "specificationChanged" }, ngImport: i0, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'OrderCount'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalOrders }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.RemainingOrders\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.RemainingOrders }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
146
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaLicensingTableComponent, isStandalone: true, selector: "anna-core-licensing-table", inputs: { plans: "plans", isEditMode: "isEditMode" }, outputs: { specificationChanged: "specificationChanged" }, ngImport: i0, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'PAY_PER_USE'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalCount\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalCount\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalCount }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.ConsumedCount\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.TotalCount - featureDetails.Specification[0].Json.ConsumedCount }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
147
147
  }
148
148
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaLicensingTableComponent, decorators: [{
149
149
  type: Component,
150
- args: [{ selector: 'anna-core-licensing-table', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'OrderCount'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalOrders\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalOrders }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.RemainingOrders\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.RemainingOrders }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"] }]
150
+ args: [{ selector: 'anna-core-licensing-table', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"header-section\">\r\n <thead>\r\n <tr>\r\n <th>FEATURE</th>\r\n <th *ngFor=\"let plan of plans\">\r\n {{ plan?.PlanName }}\r\n <p *ngIf=\"plans.length === 1 && !isEditMode\">Current plan</p>\r\n </th>\r\n </tr>\r\n </thead>\r\n</table>\r\n<div class=\"scrollable-tbody\">\r\n <table>\r\n <tbody>\r\n <tr *ngFor=\"let feature of plans[0]?.FeatureDetails; let featureIndex = index\">\r\n <td>\r\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDescription }}\r\n </td>\r\n <td *ngFor=\"let plan of plans; let planIndex = index\">\r\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\r\n <i\r\n *ngIf=\"featureDetails.IsEnabled && !featureDetails.Specification.length\"\r\n class=\"mdi mdi-checkbox-marked-circle\"\r\n ></i>\r\n <i\r\n *ngIf=\"!featureDetails.IsEnabled\"\r\n class=\"mdi mdi-close\"\r\n ></i>\r\n <ng-container *ngIf=\"featureDetails.Specification.length > 0\">\r\n <ng-container *ngIf=\"featureDetails.Specification[0].JsonType === 'PAY_PER_USE'\">\r\n <div *ngIf=\"isEditMode\">\r\n <input\r\n type=\"number\"\r\n [ngModel]=\"featureDetails.Specification[0].Json.TotalCount\"\r\n (ngModelChange)=\"\r\n onValueChange($event, featureDetails)\r\n \"\r\n min=\"featureDetails.Specification[0].Json.TotalCount\"\r\n />\r\n Orders\r\n </div>\r\n <div *ngIf=\"!isEditMode\">\r\n <p>\r\n {{ featureDetails.Specification[0].Json.TotalCount }} Orders\r\n <span *ngIf=\"featureDetails.Specification[0].Json.ConsumedCount\"\r\n >|\r\n {{ featureDetails.Specification[0].Json.TotalCount - featureDetails.Specification[0].Json.ConsumedCount }} Remaining</span\r\n >\r\n </p>\r\n <span *ngIf=\"featureDetails.Specification[0].IsCustomized\">(Customized)</span>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</div>\r\n", styles: ["table.header-section{border-collapse:separate;border-spacing:0 8px;width:100%;border-top:1px solid #9b1cd5;border-bottom:1px solid #9b1cd5}.scrollable-tbody table{border-collapse:collapse;width:100%}tr{height:40px}th{padding:8px 8px 8px 0;text-align:left;font-family:Roboto;font-size:16px;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;position:sticky;top:0;background-color:#fff;z-index:1}th:not(:first-child){border:1px solid #304598;border-radius:8px;padding-left:8px;width:137px;height:35px}th:not(:first-child) p{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;margin-bottom:0}th:nth-of-type(2){background-color:#f5f7ff}th:nth-of-type(3){background-color:#dfe6ff}th:nth-of-type(4){background-color:#c6d2ff}td{border-bottom:1px solid #d3d3d3;padding:8px 8px 8px 0;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}td p{margin-bottom:0}td input{width:30px}td:not(:first-child){width:150px}.mdi{font-size:14px;color:#304598;position:relative}.mdi-close{color:#bdbdbd}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"] }]
151
151
  }], propDecorators: { plans: [{
152
152
  type: Input
153
153
  }], isEditMode: [{