tango-app-ui-manage-settings 3.0.62-dev → 3.0.64-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/activity-logs/activity-logs.component.mjs +3 -3
- package/esm2022/lib/components/brand-details/billing-details/billing-details.component.mjs +3 -3
- package/esm2022/lib/components/brand-details/brand-details.component.mjs +3 -3
- package/esm2022/lib/components/brand-details/brand-info/brand-info.component.mjs +3 -3
- package/esm2022/lib/components/brand-details/signatory-details/signatory-details.component.mjs +3 -3
- package/esm2022/lib/components/configurations/audit-configuration/audit-configuration.component.mjs +3 -3
- package/esm2022/lib/components/configurations/configurations.component.mjs +6 -4
- package/esm2022/lib/components/configurations/domain-details/domain-details.component.mjs +3 -3
- package/esm2022/lib/components/configurations/email-configuration/email-configuration.component.mjs +3 -3
- package/esm2022/lib/components/configurations/employee-training/employee-training.component.mjs +8 -21
- package/esm2022/lib/components/configurations/feature-configuration/feature-configuration.component.mjs +7 -5
- package/esm2022/lib/components/configurations/report-configuration/add-report/add-report.component.mjs +3 -3
- package/esm2022/lib/components/configurations/report-configuration/report-configuration.component.mjs +3 -3
- package/esm2022/lib/components/configurations/ticket-configuration/ticket-configuration.component.mjs +3 -3
- package/esm2022/lib/components/configurations/user-configuration/user-configuration.component.mjs +3 -3
- package/esm2022/lib/components/contact-directory/contact-directory.component.mjs +3 -3
- package/esm2022/lib/components/contact-directory/detele-spoc/detele-spoc.component.mjs +3 -3
- package/esm2022/lib/components/contact-directory/edit-spoc/edit-spoc.component.mjs +3 -3
- package/esm2022/lib/components/documents/documents.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/payments-subscription.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/add-stepprice/add-stepprice.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/credit-note/credit-note.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/model-content/model-content.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/multidropdown/multidropdown.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/need-help/need-help.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/pricing-revised/pricing-revised.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/product-confirmation/product-confirmation.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/skip-trail/skip-trail.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/subscription-approval/subscription-approval.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/successfull-subscription/successfull-subscription.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/suspended/suspended.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/trail-expired/trail-expired.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/trail-settings/trail-settings.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/unsubscribe-request/unsubscribe-request.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/update/update.component.mjs +3 -3
- package/esm2022/lib/components/payments-subscription/subscription-popups/upgrade-plan/upgrade-plan.component.mjs +3 -3
- package/esm2022/lib/components/reactive-select/reactive-select.component.mjs +3 -3
- package/esm2022/lib/components/tango-manage-settings/tango-manage-settings.component.mjs +7 -5
- package/esm2022/lib/directives/dnd.directive.mjs +3 -3
- package/esm2022/lib/services/client-api.service.mjs +8 -8
- package/esm2022/lib/services/payment-subscription.service.mjs +3 -3
- package/esm2022/lib/tango-manage-settings-routing.module.mjs +4 -4
- package/esm2022/lib/tango-manage-settings.module.mjs +5 -5
- package/fesm2022/tango-app-ui-manage-settings.mjs +147 -154
- package/fesm2022/tango-app-ui-manage-settings.mjs.map +1 -1
- package/lib/components/configurations/employee-training/employee-training.component.d.ts +0 -5
- package/lib/components/tango-manage-settings/tango-manage-settings.component.d.ts +1 -0
- package/lib/services/client-api.service.d.ts +2 -2
- package/package.json +1 -1
|
@@ -100,6 +100,8 @@ export class FeatureConfigurationComponent {
|
|
|
100
100
|
isPasserByData: [],
|
|
101
101
|
isFootfallDirectory: [],
|
|
102
102
|
isExcludedArea: [],
|
|
103
|
+
isCameraDisabled: [false],
|
|
104
|
+
isbillingDisabled: [false],
|
|
103
105
|
updateFeatureConfig: []
|
|
104
106
|
});
|
|
105
107
|
this.featureConfigurationForm.disable();
|
|
@@ -172,11 +174,11 @@ export class FeatureConfigurationComponent {
|
|
|
172
174
|
this.featureConfigurationForm.value.close = this.dayjs(`1991-01-01 ${this.featureConfigurationForm.value.close}`, 'YYYY-MM-DD HH:mm').format("HH:mm:ss");
|
|
173
175
|
this.apiService.clientFormData.next({ value: this.featureConfigurationForm.value, type: 'submit', form: 'feature-configuration' });
|
|
174
176
|
}
|
|
175
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
176
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: FeatureConfigurationComponent, selector: "lib-feature-configuration", ngImport: i0, template: "<form [formGroup]=\"featureConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" >\r\n <div *ngIf=\"featureConfigurationForm.disabled\" class=\"col-12 mb-5\">\r\n <div class=\" d-flex justify-content-end\" *ngIf=\"featureConfigurationForm.get('updateFeatureConfig')?.value === true\">\r\n <button\r\n (click)=\"featureConfigurationForm.disabled ? featureConfigurationForm.enable() : featureConfigurationForm.disable()\"\r\n type=\"button\" class=\"btn btn-outline align-items-end\"><span class=\"me-2\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2579_25125)\">\r\n <path\r\n d=\"M14.167 2.49993C14.3859 2.28106 14.6457 2.10744 14.9317 1.98899C15.2176 1.87054 15.5241 1.80957 15.8337 1.80957C16.1432 1.80957 16.4497 1.87054 16.7357 1.98899C17.0216 2.10744 17.2815 2.28106 17.5003 2.49993C17.7192 2.7188 17.8928 2.97863 18.0113 3.2646C18.1297 3.55057 18.1907 3.85706 18.1907 4.16659C18.1907 4.47612 18.1297 4.78262 18.0113 5.06859C17.8928 5.35455 17.7192 5.61439 17.5003 5.83326L6.25033 17.0833L1.66699 18.3333L2.91699 13.7499L14.167 2.49993Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2579_25125\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>Edit Details</button>\r\n </div>\r\n </div> \r\n </ng-container>\r\n\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"open\" class=\"form-label\">Store Open Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"open\" class=\"form-control\" id=\"open\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"close\" class=\"form-label\">Store Close Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"close\" class=\"form-control\" id=\"close\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Infra Alert <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"downTimeType\" class=\"form-label\">Bounced Limit<span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"MinFilesCount\" class=\"form-label\">Missed Opportunity <span\r\n class=\"alert-required\"></span></label>\r\n <div class=\"form-control mock-input d-flex justify-content-center align-items-center\">\r\n <ng-container *ngIf=\"missedOpportunityStartTime\">\r\n {{missedOpportunityStartTime }} - {{missedOpportunityEndTime}}\r\n </ng-container>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Conversion <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"billableCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"billableCalculation\" [label]=\"'Billable Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"missedOpportunityCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"missedOpportunityCalculation\" [label]=\"'Missed Opportunity Calculation'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"conversionCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCalculation\" [label]=\"'Conversion Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Normalized data during downtime</div>\r\n <div class=\"sub-text\">Choose if you want to view normalized data during downtime. </div>\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Passer-by data</div>\r\n <div class=\"sub-text\">Choose if you want to view Passerby data. </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"sub-header\">Footfall Directory</div>\r\n <div class=\"sub-text\">Choose if you want to view Footfall directory </div> \r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"sub-header\">Excluded Area</div>\r\n <div class=\"sub-text\">Choose if you want to view Excluded Area </div>\r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isNormalized\" class=\"form-check-input\" type=\"checkbox\" id=\"isNormalized\">\r\n <label class=\"form-check-label toggle-label\" for=\"isNormalized\"> Show Normalized data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isPasserByData\" class=\"form-check-input\" type=\"checkbox\" id=\"isPasserByData\">\r\n <label class=\"form-check-label toggle-label\" for=\"isPasserByData\"> Show Passer-by data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isFootfallDirectory\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isFootfallDirectory\">\r\n <label class=\"form-check-label toggle-label\" for=\"isFootfallDirectory\"> Show Footfall Directory\r\n </label>\r\n </div> \r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isExcludedArea\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isExcludedArea\">\r\n <label class=\"form-check-label toggle-label\" for=\"isExludedArea\"> Show Excluded Area\r\n </label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"featureConfigurationForm.enabled\">\r\n <div class=\"mb-5 w-100 footer-seperator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4\" (click)=\"onCancel()\">Cancel</a>\r\n <a type=\"submit\" class=\"btn btn-primary px-4 \" (click)=\"onSubmit()\"><span>Save Changes</span></a>\r\n </div>\r\n </div>\r\n\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.form-select{font-size:1.1rem;font-weight:400;border-radius:8px!important;color:var(--Gray-500, #667085);border:1px solid var(--Gray-300, #D0D5DD)!important;height:45px}.form-label{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:500;line-height:20px}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}select[disabled],textarea[disabled]{background-color:#f9fafb!important}.footer-seperator{border-top:1px solid #EAECF0}.sub-header{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.sub-text{color:var(--Gray-500, #667085);font-family:Inter;font-size:12px;font-style:normal;font-weight:400;line-height:18px}.toggle-label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:24px}.mock-input{background-color:#f9fafb!important}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.ReactiveSelectComponent, selector: "lib-reactive-select", inputs: ["idField", "nameField", "label", "data"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
177
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FeatureConfigurationComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ClientApiService }, { token: i3.GlobalStateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
178
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FeatureConfigurationComponent, selector: "lib-feature-configuration", ngImport: i0, template: "<form [formGroup]=\"featureConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" >\r\n <div *ngIf=\"featureConfigurationForm.disabled\" class=\"col-12 mb-5\">\r\n <div class=\" d-flex justify-content-end\" *ngIf=\"featureConfigurationForm.get('updateFeatureConfig')?.value === true\">\r\n <button\r\n (click)=\"featureConfigurationForm.disabled ? featureConfigurationForm.enable() : featureConfigurationForm.disable()\"\r\n type=\"button\" class=\"btn btn-outline align-items-end\"><span class=\"me-2\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2579_25125)\">\r\n <path\r\n d=\"M14.167 2.49993C14.3859 2.28106 14.6457 2.10744 14.9317 1.98899C15.2176 1.87054 15.5241 1.80957 15.8337 1.80957C16.1432 1.80957 16.4497 1.87054 16.7357 1.98899C17.0216 2.10744 17.2815 2.28106 17.5003 2.49993C17.7192 2.7188 17.8928 2.97863 18.0113 3.2646C18.1297 3.55057 18.1907 3.85706 18.1907 4.16659C18.1907 4.47612 18.1297 4.78262 18.0113 5.06859C17.8928 5.35455 17.7192 5.61439 17.5003 5.83326L6.25033 17.0833L1.66699 18.3333L2.91699 13.7499L14.167 2.49993Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2579_25125\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>Edit Details</button>\r\n </div>\r\n </div> \r\n </ng-container>\r\n\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"open\" class=\"form-label\">Store Open Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"open\" class=\"form-control\" id=\"open\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"close\" class=\"form-label\">Store Close Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"close\" class=\"form-control\" id=\"close\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Infra Alert <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"downTimeType\" class=\"form-label\">Bounced Limit<span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"MinFilesCount\" class=\"form-label\">Missed Opportunity <span\r\n class=\"alert-required\"></span></label>\r\n <div class=\"form-control mock-input d-flex justify-content-center align-items-center\">\r\n <ng-container *ngIf=\"missedOpportunityStartTime\">\r\n {{missedOpportunityStartTime }} - {{missedOpportunityEndTime}}\r\n </ng-container>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Conversion <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"billableCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"billableCalculation\" [label]=\"'Billable Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"missedOpportunityCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"missedOpportunityCalculation\" [label]=\"'Missed Opportunity Calculation'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"conversionCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCalculation\" [label]=\"'Conversion Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Normalized data during downtime</div>\r\n <div class=\"sub-text\">Choose if you want to view normalized data during downtime. </div>\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Passer-by data</div>\r\n <div class=\"sub-text\">Choose if you want to view Passerby data. </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"sub-header\">Footfall Directory</div>\r\n <div class=\"sub-text\">Choose if you want to view Footfall directory </div> \r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"sub-header\">Excluded Area</div>\r\n <div class=\"sub-text\">Choose if you want to view Excluded Area </div>\r\n </ng-container>\r\n \r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isNormalized\" class=\"form-check-input\" type=\"checkbox\" id=\"isNormalized\">\r\n <label class=\"form-check-label toggle-label\" for=\"isNormalized\"> Show Normalized data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isPasserByData\" class=\"form-check-input\" type=\"checkbox\" id=\"isPasserByData\">\r\n <label class=\"form-check-label toggle-label\" for=\"isPasserByData\"> Show Passer-by data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isFootfallDirectory\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isFootfallDirectory\">\r\n <label class=\"form-check-label toggle-label\" for=\"isFootfallDirectory\"> Show Footfall Directory\r\n </label>\r\n </div> \r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isExcludedArea\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isExcludedArea\">\r\n <label class=\"form-check-label toggle-label\" for=\"isExludedArea\"> Show Excluded Area\r\n </label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"sub-header\">Camera Management</div>\r\n <div class=\"sub-text\">Choose if you want to view Camera Management </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"form-check form-switch mt-5\">\r\n <input formControlName=\"isCameraDisabled\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isCameraDisabled\">\r\n <label class=\"form-check-label toggle-label\" for=\"isCameraDisabled\"> Show Cameras\r\n </label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"sub-header\">Billing </div>\r\n <div class=\"sub-text\">Choose if you want to view Billing Management </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"form-check form-switch mt-5\">\r\n <input formControlName=\"isbillingDisabled\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isbillingDisabled\">\r\n <label class=\"form-check-label toggle-label\" for=\"isbillingDisabled\"> Show Billing\r\n </label>\r\n </div>\r\n </ng-container>\r\n\r\n </div>\r\n \r\n </div>\r\n\r\n <div *ngIf=\"featureConfigurationForm.enabled\">\r\n <div class=\"mb-5 w-100 footer-seperator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4\" (click)=\"onCancel()\">Cancel</a>\r\n <a type=\"submit\" class=\"btn btn-primary px-4 \" (click)=\"onSubmit()\"><span>Save Changes</span></a>\r\n </div>\r\n </div>\r\n\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.form-select{font-size:1.1rem;font-weight:400;border-radius:8px!important;color:var(--Gray-500, #667085);border:1px solid var(--Gray-300, #D0D5DD)!important;height:45px}.form-label{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:500;line-height:20px}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}select[disabled],textarea[disabled]{background-color:#f9fafb!important}.footer-seperator{border-top:1px solid #EAECF0}.sub-header{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.sub-text{color:var(--Gray-500, #667085);font-family:Inter;font-size:12px;font-style:normal;font-weight:400;line-height:18px}.toggle-label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:24px}.mock-input{background-color:#f9fafb!important}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.ReactiveSelectComponent, selector: "lib-reactive-select", inputs: ["idField", "nameField", "label", "data"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
177
179
|
}
|
|
178
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
180
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FeatureConfigurationComponent, decorators: [{
|
|
179
181
|
type: Component,
|
|
180
|
-
args: [{ selector: 'lib-feature-configuration', template: "<form [formGroup]=\"featureConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" >\r\n <div *ngIf=\"featureConfigurationForm.disabled\" class=\"col-12 mb-5\">\r\n <div class=\" d-flex justify-content-end\" *ngIf=\"featureConfigurationForm.get('updateFeatureConfig')?.value === true\">\r\n <button\r\n (click)=\"featureConfigurationForm.disabled ? featureConfigurationForm.enable() : featureConfigurationForm.disable()\"\r\n type=\"button\" class=\"btn btn-outline align-items-end\"><span class=\"me-2\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2579_25125)\">\r\n <path\r\n d=\"M14.167 2.49993C14.3859 2.28106 14.6457 2.10744 14.9317 1.98899C15.2176 1.87054 15.5241 1.80957 15.8337 1.80957C16.1432 1.80957 16.4497 1.87054 16.7357 1.98899C17.0216 2.10744 17.2815 2.28106 17.5003 2.49993C17.7192 2.7188 17.8928 2.97863 18.0113 3.2646C18.1297 3.55057 18.1907 3.85706 18.1907 4.16659C18.1907 4.47612 18.1297 4.78262 18.0113 5.06859C17.8928 5.35455 17.7192 5.61439 17.5003 5.83326L6.25033 17.0833L1.66699 18.3333L2.91699 13.7499L14.167 2.49993Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2579_25125\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>Edit Details</button>\r\n </div>\r\n </div> \r\n </ng-container>\r\n\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"open\" class=\"form-label\">Store Open Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"open\" class=\"form-control\" id=\"open\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"close\" class=\"form-label\">Store Close Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"close\" class=\"form-control\" id=\"close\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Infra Alert <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"downTimeType\" class=\"form-label\">Bounced Limit<span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"MinFilesCount\" class=\"form-label\">Missed Opportunity <span\r\n class=\"alert-required\"></span></label>\r\n <div class=\"form-control mock-input d-flex justify-content-center align-items-center\">\r\n <ng-container *ngIf=\"missedOpportunityStartTime\">\r\n {{missedOpportunityStartTime }} - {{missedOpportunityEndTime}}\r\n </ng-container>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Conversion <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"billableCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"billableCalculation\" [label]=\"'Billable Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"missedOpportunityCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"missedOpportunityCalculation\" [label]=\"'Missed Opportunity Calculation'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"conversionCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCalculation\" [label]=\"'Conversion Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Normalized data during downtime</div>\r\n <div class=\"sub-text\">Choose if you want to view normalized data during downtime. </div>\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Passer-by data</div>\r\n <div class=\"sub-text\">Choose if you want to view Passerby data. </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"sub-header\">Footfall Directory</div>\r\n <div class=\"sub-text\">Choose if you want to view Footfall directory </div> \r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"sub-header\">Excluded Area</div>\r\n <div class=\"sub-text\">Choose if you want to view Excluded Area </div>\r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isNormalized\" class=\"form-check-input\" type=\"checkbox\" id=\"isNormalized\">\r\n <label class=\"form-check-label toggle-label\" for=\"isNormalized\"> Show Normalized data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isPasserByData\" class=\"form-check-input\" type=\"checkbox\" id=\"isPasserByData\">\r\n <label class=\"form-check-label toggle-label\" for=\"isPasserByData\"> Show Passer-by data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isFootfallDirectory\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isFootfallDirectory\">\r\n <label class=\"form-check-label toggle-label\" for=\"isFootfallDirectory\"> Show Footfall Directory\r\n </label>\r\n </div> \r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isExcludedArea\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isExcludedArea\">\r\n <label class=\"form-check-label toggle-label\" for=\"isExludedArea\"> Show Excluded Area\r\n </label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"featureConfigurationForm.enabled\">\r\n <div class=\"mb-5 w-100 footer-seperator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4\" (click)=\"onCancel()\">Cancel</a>\r\n <a type=\"submit\" class=\"btn btn-primary px-4 \" (click)=\"onSubmit()\"><span>Save Changes</span></a>\r\n </div>\r\n </div>\r\n\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.form-select{font-size:1.1rem;font-weight:400;border-radius:8px!important;color:var(--Gray-500, #667085);border:1px solid var(--Gray-300, #D0D5DD)!important;height:45px}.form-label{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:500;line-height:20px}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}select[disabled],textarea[disabled]{background-color:#f9fafb!important}.footer-seperator{border-top:1px solid #EAECF0}.sub-header{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.sub-text{color:var(--Gray-500, #667085);font-family:Inter;font-size:12px;font-style:normal;font-weight:400;line-height:18px}.toggle-label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:24px}.mock-input{background-color:#f9fafb!important}\n"] }]
|
|
182
|
+
args: [{ selector: 'lib-feature-configuration', template: "<form [formGroup]=\"featureConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" >\r\n <div *ngIf=\"featureConfigurationForm.disabled\" class=\"col-12 mb-5\">\r\n <div class=\" d-flex justify-content-end\" *ngIf=\"featureConfigurationForm.get('updateFeatureConfig')?.value === true\">\r\n <button\r\n (click)=\"featureConfigurationForm.disabled ? featureConfigurationForm.enable() : featureConfigurationForm.disable()\"\r\n type=\"button\" class=\"btn btn-outline align-items-end\"><span class=\"me-2\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2579_25125)\">\r\n <path\r\n d=\"M14.167 2.49993C14.3859 2.28106 14.6457 2.10744 14.9317 1.98899C15.2176 1.87054 15.5241 1.80957 15.8337 1.80957C16.1432 1.80957 16.4497 1.87054 16.7357 1.98899C17.0216 2.10744 17.2815 2.28106 17.5003 2.49993C17.7192 2.7188 17.8928 2.97863 18.0113 3.2646C18.1297 3.55057 18.1907 3.85706 18.1907 4.16659C18.1907 4.47612 18.1297 4.78262 18.0113 5.06859C17.8928 5.35455 17.7192 5.61439 17.5003 5.83326L6.25033 17.0833L1.66699 18.3333L2.91699 13.7499L14.167 2.49993Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2579_25125\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>Edit Details</button>\r\n </div>\r\n </div> \r\n </ng-container>\r\n\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"open\" class=\"form-label\">Store Open Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"open\" class=\"form-control\" id=\"open\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"close\" class=\"form-label\">Store Close Time <span class=\"alert-required\"></span></label>\r\n <input type=\"time\" formControlName=\"close\" class=\"form-control\" id=\"close\" autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Infra Alert <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"infraAlertValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"infraAlertValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"downTimeType\" class=\"form-label\">Bounced Limit<span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"bouncedLimitValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"bouncedLimitValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label for=\"MinFilesCount\" class=\"form-label\">Missed Opportunity <span\r\n class=\"alert-required\"></span></label>\r\n <div class=\"form-control mock-input d-flex justify-content-center align-items-center\">\r\n <ng-container *ngIf=\"missedOpportunityStartTime\">\r\n {{missedOpportunityStartTime }} - {{missedOpportunityEndTime}}\r\n </ng-container>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <label class=\"form-label\">Conversion <span class=\"alert-required\"></span></label>\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionCondition\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCondition\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col\">\r\n <lib-reactive-select formControlName=\"conversionValue\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionValue\" ></lib-reactive-select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"billableCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"billableCalculation\" [label]=\"'Billable Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"missedOpportunityCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"missedOpportunityCalculation\" [label]=\"'Missed Opportunity Calculation'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-4 col-xl-4 col-xxl-4 mb-5\">\r\n <lib-reactive-select formControlName=\"conversionCalculation\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"conversionCalculation\" [label]=\"'Conversion Calculations'\" ></lib-reactive-select>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Normalized data during downtime</div>\r\n <div class=\"sub-text\">Choose if you want to view normalized data during downtime. </div>\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"sub-header\">Passer-by data</div>\r\n <div class=\"sub-text\">Choose if you want to view Passerby data. </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"sub-header\">Footfall Directory</div>\r\n <div class=\"sub-text\">Choose if you want to view Footfall directory </div> \r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"sub-header\">Excluded Area</div>\r\n <div class=\"sub-text\">Choose if you want to view Excluded Area </div>\r\n </ng-container>\r\n \r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isNormalized\" class=\"form-check-input\" type=\"checkbox\" id=\"isNormalized\">\r\n <label class=\"form-check-label toggle-label\" for=\"isNormalized\"> Show Normalized data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isPasserByData\" class=\"form-check-input\" type=\"checkbox\" id=\"isPasserByData\">\r\n <label class=\"form-check-label toggle-label\" for=\"isPasserByData\"> Show Passer-by data\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" >\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isFootfallDirectory\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isFootfallDirectory\">\r\n <label class=\"form-check-label toggle-label\" for=\"isFootfallDirectory\"> Show Footfall Directory\r\n </label>\r\n </div> \r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"form-check form-switch\">\r\n <input formControlName=\"isExcludedArea\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isExcludedArea\">\r\n <label class=\"form-check-label toggle-label\" for=\"isExludedArea\"> Show Excluded Area\r\n </label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"sub-header\">Camera Management</div>\r\n <div class=\"sub-text\">Choose if you want to view Camera Management </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"form-check form-switch mt-5\">\r\n <input formControlName=\"isCameraDisabled\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isCameraDisabled\">\r\n <label class=\"form-check-label toggle-label\" for=\"isCameraDisabled\"> Show Cameras\r\n </label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"col-md-12 col-lg-3 col-xl-3 col-xxl-3 mb-5 px-6\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"sub-header\">Billing </div>\r\n <div class=\"sub-text\">Choose if you want to view Billing Management </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \">\r\n <div class=\"form-check form-switch mt-5\">\r\n <input formControlName=\"isbillingDisabled\" class=\"form-check-input\" type=\"checkbox\"\r\n id=\"isbillingDisabled\">\r\n <label class=\"form-check-label toggle-label\" for=\"isbillingDisabled\"> Show Billing\r\n </label>\r\n </div>\r\n </ng-container>\r\n\r\n </div>\r\n \r\n </div>\r\n\r\n <div *ngIf=\"featureConfigurationForm.enabled\">\r\n <div class=\"mb-5 w-100 footer-seperator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4\" (click)=\"onCancel()\">Cancel</a>\r\n <a type=\"submit\" class=\"btn btn-primary px-4 \" (click)=\"onSubmit()\"><span>Save Changes</span></a>\r\n </div>\r\n </div>\r\n\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.form-select{font-size:1.1rem;font-weight:400;border-radius:8px!important;color:var(--Gray-500, #667085);border:1px solid var(--Gray-300, #D0D5DD)!important;height:45px}.form-label{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:500;line-height:20px}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}select[disabled],textarea[disabled]{background-color:#f9fafb!important}.footer-seperator{border-top:1px solid #EAECF0}.sub-header{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.sub-text{color:var(--Gray-500, #667085);font-family:Inter;font-size:12px;font-style:normal;font-weight:400;line-height:18px}.toggle-label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:24px}.mock-input{background-color:#f9fafb!important}\n"] }]
|
|
181
183
|
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.ClientApiService }, { type: i3.GlobalStateService }, { type: i0.ChangeDetectorRef }] });
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlndXJhdGlvbnMvZmVhdHVyZS1jb25maWd1cmF0aW9uL2ZlYXR1cmUtY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL2NvbmZpZ3VyYXRpb25zL2ZlYXR1cmUtY29uZmlndXJhdGlvbi9mZWF0dXJlLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFHeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBUSxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzNCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxHQUFHLE1BQU0sa0JBQWtCLENBQUM7QUFDbkMsT0FBTyxRQUFRLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFDN0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsQixLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBT3ZCLE1BQU0sT0FBTyw2QkFBNkI7SUFnRXBCO0lBQXlCO0lBQXFDO0lBQ3hFO0lBOURWLHdCQUF3QixDQUFXO0lBQ25DLDBCQUEwQixDQUFTO0lBQ25DLHdCQUF3QixDQUFTO0lBQ2hCLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzFDLEtBQUssR0FBRyxLQUFLLENBQUE7SUFHYixlQUFlLEdBQUc7UUFDaEIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7S0FDN0IsQ0FBQTtJQUVELG1CQUFtQixHQUFHO1FBQ3BCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO1FBQzFCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO1FBQzFCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO1FBQzdCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO0tBQzlCLENBQUE7SUFFRCxxQkFBcUIsR0FBRztRQUN0QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtLQUM5QixDQUFBO0lBRUQsaUJBQWlCLEdBQUc7UUFDbEIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7UUFDN0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7S0FDOUIsQ0FBQTtJQUVELG1CQUFtQixHQUFHO1FBQ3BCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO0tBQzNCLENBQUE7SUFFRCxlQUFlLEdBQUc7UUFDaEIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7UUFDN0IsRUFBRSxLQUFLLEVB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QUFLLENBQUMsY0FBYyxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFDLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JKLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFDLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3ZKLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFLENBQUMsQ0FBQTtJQUNwSSxDQUFDO3dHQTdMVSw2QkFBNkI7NEZBQTdCLDZCQUE2QixpRUNqQjFDLG1pVUF3Sk87OzRGRHZJTSw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0UsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENsaWVudEFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jbGllbnQtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgR2xvYmFsU3RhdGVTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLWdsb2JhbCc7XHJcbmltcG9ydCAgZGF5anMgZnJvbSBcImRheWpzXCI7XHJcbmltcG9ydCBcImRheWpzL2xvY2FsZS9lblwiO1xyXG5pbXBvcnQgdXRjIGZyb20gXCJkYXlqcy9wbHVnaW4vdXRjXCI7XHJcbmltcG9ydCB0aW1lem9uZSBmcm9tIFwiZGF5anMvcGx1Z2luL3RpbWV6b25lXCI7XHJcbmRheWpzLmV4dGVuZCh1dGMpO1xyXG5kYXlqcy5leHRlbmQodGltZXpvbmUpO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZmVhdHVyZS1jb25maWd1cmF0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmVhdHVyZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZmVhdHVyZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRmVhdHVyZUNvbmZpZ3VyYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG5cclxuXHJcbiAgZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtOiBGb3JtR3JvdXBcclxuICBtaXNzZWRPcHBvcnR1bml0eVN0YXJ0VGltZTogc3RyaW5nO1xyXG4gIG1pc3NlZE9wcG9ydHVuaXR5RW5kVGltZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIGRheWpzID0gZGF5anNcclxuXHJcblxyXG4gIGluZnJhQWxlcnRWYWx1ZSA9IFtcclxuICAgIHsgdmFsdWU6IDEsIGxhYmVsOiBcIjEgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDIsIGxhYmVsOiBcIjIgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDMsIGxhYmVsOiBcIjMgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDQsIGxhYmVsOiBcIjQgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDUsIGxhYmVsOiBcIjUgaHJzXCIgfVxyXG4gIF1cclxuXHJcbiAgaW5mcmFBbGVydENvbmRpdGlvbiA9IFtcclxuICAgIHsgdmFsdWU6IFwiPFwiLCBsYWJlbDogXCI8XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiPlwiLCBsYWJlbDogXCI+XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiPD1cIiwgbGFiZWw6IFwiPCA9XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiPT5cIiwgbGFiZWw6IFwiPSA+XCIgfSxcclxuICBdXHJcblxyXG4gIGJvdW5jZWRMaW1pdENvbmRpdGlvbiA9IFtcclxuICAgIHsgdmFsdWU6IFwiPD1cIiwgbGFiZWw6IFwiPCA9XCIgfVxyXG4gIF1cclxuXHJcbiAgYm91bmNlZExpbWl0VmFsdWUgPSBbXHJcbiAgICB7IHZhbHVlOiAxLCBsYWJlbDogXCIxIG1pblwiIH0sXHJcbiAgICB7IHZhbHVlOiAyLCBsYWJlbDogXCIyIG1pbnNcIiB9LFxyXG4gICAgeyB2YWx1ZTogMywgbGFiZWw6IFwiMyBtaW5zXCIgfSxcclxuICBdXHJcblxyXG4gIGNvbnZlcnNpb25Db25kaXRpb24gPSBbXHJcbiAgICB7IHZhbHVlOiBcIj5cIiwgbGFiZWw6IFwiPlwiIH1cclxuICBdXHJcblxyXG4gIGNvbnZlcnNpb25WYWx1ZSA9IFtcclxuICAgIHsgdmFsdWU6IDUsIGxhYmVsOiBcIjUgbWluc1wiIH0sXHJcbiAgICB7IHZhbHVlOiAxMCwgbGFiZWw6IFwiMTAgbWluc1wiIH0sXHJcbiAgICB7IHZhbHVlOiAxNSwgbGFiZWw6IFwiMTUgbWluc1wiIH0sXHJcbiAgICB7IHZhbHVlOiAyMCwgbGFiZWw6IFwiMjAgbWluc1wiIH1cclxuICBdXHJcblxyXG4gIGJpbGxhYmxlQ2FsY3VsYXRpb24gPSBbXHJcbiAgICB7IHZhbHVlOiBcImZvb3RmYWxsLWNvdW50XCIsIGxhYmVsOiBcIkZvb3RmYWxsIENvdW50XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiZW5nYWdlcnMtY291bnRcIiwgbGFiZWw6IFwiRW5nYWdlcnMgQ291bnRcIiB9LFxyXG4gIF1cclxuXHJcbiAgbWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9IFtcclxuICAgIHsgdmFsdWU6IFwiZW5nYWdlcnMtY29udmVyc2lvblwiLCBsYWJlbDogXCJFbmdhZ2VycyAtIENvbnZlcnNpb25cIiB9LFxyXG4gICAgeyB2YWx1ZTogXCJncm91cC1jb252ZXJzaW9uXCIsIGxhYmVsOiBcIkJpbGxhYmxlIEVudGl0aWVzIC0gQ29udmVyc2lvblwiIH0sXHJcbiAgXVxyXG5cclxuICBjb252ZXJzaW9uQ2FsY3VsYXRpb24gPSBbXHJcbiAgICB7dmFsdWU6XCJmb290ZmFsbC1jb3VudFwiLCBsYWJlbDpcIkZvb3RmYWxsIENvdW50XCJ9LFxyXG4gICAge3ZhbHVlOlwiZW5nYWdlcnMtY291bnRcIiwgbGFiZWw6XCJFbmdhZ2VycyBDb3VudFwifSxcclxuICAgIHt2YWx1ZTpcImJpbGxhYmxlLWVudGl0aWVzXCIsIGxhYmVsOlwiQmlsbGFibGUgRW50aXRpZXNcIn0sXHJcbiAgXVxyXG5cclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIGFwaVNlcnZpY2U6IENsaWVudEFwaVNlcnZpY2UsIHB1YmxpYyBnczogR2xvYmFsU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZDpDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgdGhpcy5pbml0Rm9ybSgpXHJcbiAgICB0aGlzLmFwaVNlcnZpY2UuY2xpZW50Rm9ybURhdGEucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICBpZiAocmVzLnR5cGUgPT09ICdpbnB1dCcgJiYgcmVzLmZvcm0gPT09ICdmZWF0dXJlLWNvbmZpZ3VyYXRpb24nKSB7XHJcbiAgICAgICAgICB0aGlzLnBhdGNoRm9ybShyZXMudmFsdWUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGluaXRGb3JtKCkge1xyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgb3BlbjogW10sXHJcbiAgICAgIGNsb3NlOiBbXSxcclxuICAgICAgaW5mcmFBbGVydENvbmRpdGlvbjogW10sXHJcbiAgICAgIGluZnJhQWxlcnRWYWx1ZTogW10sXHJcbiAgICAgIGJvdW5jZWRMaW1pdENvbmRpdGlvbjogW10sXHJcbiAgICAgIGJvdW5jZWRMaW1pdFZhbHVlOiBbXSxcclxuICAgICAgY29udmVyc2lvbkNvbmRpdGlvbjogW10sXHJcbiAgICAgIGNvbnZlcnNpb25WYWx1ZTogW10sXHJcbiAgICAgIGJpbGxhYmxlQ2FsY3VsYXRpb246IFtdLFxyXG4gICAgICBtaXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uOiBbXSxcclxuICAgICAgY29udmVyc2lvbkNhbGN1bGF0aW9uOiBbXSxcclxuICAgICAgaXNOb3JtYWxpemVkOiBbXSxcclxuICAgICAgaXNQYXNzZXJCeURhdGE6IFtdLFxyXG4gICAgICBpc0Zvb3RmYWxsRGlyZWN0b3J5OiBbXSxcclxuICAgICAgaXNFeGNsdWRlZEFyZWE6W10sXHJcbiAgICAgIHVwZGF0ZUZlYXR1cmVDb25maWc6W11cclxuICAgIH0pO1xyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZGlzYWJsZSgpXHJcblxyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZ2V0KCdib3VuY2VkTGltaXRWYWx1ZScpPy52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xyXG4gICAgICBpZiAoZSkgeyAgICAgICAgXHJcbiAgICAgICAgdGhpcy5ib3VuY2VkQ29uZmlnVGltZUNoYW5nZShlKVxyXG4gICAgICB9XHJcblxyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS5nZXQoJ2NvbnZlcnNpb25WYWx1ZScpPy52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xyXG4gICAgICBpZiAoZSkge1xyXG4gICAgICAgIHRoaXMuY29udmVyc2lvbkNvbmZpZ1RpbWVDaGFuZ2UoZSlcclxuICAgICAgICAvLyB0aGlzLnNldENvbnZlcnNpb25DYWxjdWxhdGlvbihlKVxyXG4gICAgICB9XHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHBhdGNoRm9ybShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLnBhdGNoVmFsdWUoXHJcbiAgICAgIHtcclxuICAgICAgICAuLi5kYXRhXHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcblxyXG4gIGJvdW5jZWRDb25maWdUaW1lQ2hhbmdlKHZhbHVlOiBudW1iZXIpIHtcclxuXHJcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XHJcbiAgICAgIGNhc2UgMTpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lID0gXCI+MVwiXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgMjpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lID0gXCI+MlwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM6XHJcbiAgICAgICAgdGhpcy5taXNzZWRPcHBvcnR1bml0eVN0YXJ0VGltZSA9IFwiPjNcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lID0gXCJcIjtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb252ZXJzaW9uQ29uZmlnVGltZUNoYW5nZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XHJcbiAgICAgIGNhc2UgNTpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5RW5kVGltZSA9ICc8PTUnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDEwOlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJzw9MTAnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDE1OlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJzw9MTUnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDIwOlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJzw9MjAnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJyc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRDb252ZXJzaW9uQ2FsY3VsYXRpb24oY29udmVyc2lvblZhbDpudW1iZXIpe1xyXG4gICAgdGhpcy5jb252ZXJzaW9uQ2FsY3VsYXRpb24gPSBbXHJcbiAgICAgIHt2YWx1ZTpcImZvb3RmYWxsLWNvdW50XCIsIGxhYmVsOmAke2NvbnZlcnNpb25WYWx9IG1pbnMvRm9vdGZhbGwgQ291bnRgfSxcclxuICAgICAge3ZhbHVlOlwiZW5nYWdlcnMtY291bnRcIiwgbGFiZWw6YCR7Y29udmVyc2lvblZhbH0gbWlucy9FbmdhZ2VycyBDb3VudGB9LFxyXG4gICAgICB7dmFsdWU6XCJiaWxsYWJsZS1lbnRpdGllc1wiLCBsYWJlbDpgJHtjb252ZXJzaW9uVmFsfSBtaW5zL0JpbGxhYmxlIEVudGl0aWVzYH0sXHJcbiAgICBdXHJcbiAgICB0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS5nZXQoJ2NvbnZlcnNpb25DYWxjdWxhdGlvbicpPy5zZXRWYWx1ZSh0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybT8udmFsdWUuY29udmVyc2lvbkNhbGN1bGF0aW9uKSBcclxuICB9XHJcblxyXG5cclxuXHJcbiAgb25DYW5jZWwoKSB7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2UuY2xpZW50Rm9ybURhdGEubmV4dCh7IHZhbHVlOiBudWxsLCB0eXBlOiAnY2FuY2VsJywgZm9ybTogJ2ZlYXR1cmUtY29uZmlndXJhdGlvbicgfSlcclxuICAgIHRoaXMuZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmRpc2FibGUoKVxyXG5cclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUub3BlbiA9IHRoaXMuZGF5anMoYDE5OTEtMDEtMDEgJHt0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS52YWx1ZS5vcGVufWAsJ1lZWVktTU0tREQgSEg6bW0nKS5mb3JtYXQoXCJISDptbTpzc1wiKVxyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUuY2xvc2UgPSB0aGlzLmRheWpzKGAxOTkxLTAxLTAxICR7dGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUuY2xvc2V9YCwnWVlZWS1NTS1ERCBISDptbScpLmZvcm1hdChcIkhIOm1tOnNzXCIpICAgIFxyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLmNsaWVudEZvcm1EYXRhLm5leHQoeyB2YWx1ZTogdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUsIHR5cGU6ICdzdWJtaXQnLCBmb3JtOiAnZmVhdHVyZS1jb25maWd1cmF0aW9uJyB9KVxyXG4gIH1cclxuXHJcblxyXG5cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZlYXR1cmVDb25maWd1cmF0aW9uRm9ybVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8uc2V0dGluZ3NfY29uZmlndXJhdGlvbl9pc0VkaXQgXCIgPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJmZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZGlzYWJsZWRcIiBjbGFzcz1cImNvbC0xMiBtYi01XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIiAqbmdJZj1cImZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS5nZXQoJ3VwZGF0ZUZlYXR1cmVDb25maWcnKT8udmFsdWUgPT09IHRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmRpc2FibGVkID8gZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmVuYWJsZSgpIDogZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmRpc2FibGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIGFsaWduLWl0ZW1zLWVuZFwiPjxzcGFuIGNsYXNzPVwibWUtMlwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjU3OV8yNTEyNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE0LjE2NyAyLjQ5OTkzQzE0LjM4NTkgMi4yODEwNiAxNC42NDU3IDIuMTA3NDQgMTQuOTMxNyAxLjk4ODk5QzE1LjIxNzYgMS44NzA1NCAxNS41MjQxIDEuODA5NTcgMTUuODMzNyAxLjgwOTU3QzE2LjE0MzIgMS44MDk1NyAxNi40NDk3IDEuODcwNTQgMTYuNzM1NyAxLjk4ODk5QzE3LjAyMTYgMi4xMDc0NCAxNy4yODE1IDIuMjgxMDYgMTcuNTAwMyAyLjQ5OTkzQzE3LjcxOTIgMi43MTg4IDE3Ljg5MjggMi45Nzg2MyAxOC4wMTEzIDMuMjY0NkMxOC4xMjk3IDMuNTUwNTcgMTguMTkwNyAzLjg1NzA2IDE4LjE5MDcgNC4xNjY1OUMxOC4xOTA3IDQuNDc2MTIgMTguMTI5NyA0Ljc4MjYyIDE4LjAxMTMgNS4wNjg1OUMxNy44OTI4IDUuMzU0NTUgMTcuNzE5MiA1LjYxNDM5IDE3LjUwMDMgNS44MzMyNkw2LjI1MDMzIDE3LjA4MzNMMS42NjY5OSAxOC4zMzMzTDIuOTE2OTkgMTMuNzQ5OUwxNC4xNjcgMi40OTk5M1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yNTc5XzI1MTI1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPkVkaXQgRGV0YWlsczwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj4gICAgXHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTQgY29sLXhsLTQgY29sLXh4bC00IG1iLTVcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIm9wZW5cIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5TdG9yZSBPcGVuIFRpbWUgPHNwYW4gY2xhc3M9XCJhbGVydC1yZXF1aXJlZFwiPjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJvcGVuXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cIm9wZW5cIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy00IGNvbC14bC00IGNvbC14eGwtNCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjbG9zZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlN0b3JlIENsb3NlIFRpbWUgPHNwYW4gY2xhc3M9XCJhbGVydC1yZXF1aXJlZFwiPjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJjbG9zZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJjbG9zZVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTQgY29sLXhsLTQgY29sLXh4bC00IG1iLTVcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPkluZnJhIEFsZXJ0IDxzcGFuIGNsYXNzPVwiYWxlcnQtcmVxdWlyZWRcIj48L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaWItcmVhY3RpdmUtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImluZnJhQWxlcnRDb25kaXRpb25cIiBbaWRGaWVsZF09XCIndmFsdWUnXCIgW25hbWVGaWVsZF09XCInbGFiZWwnXCIgW2RhdGFdPVwiaW5mcmFBbGVydENvbmRpdGlvblwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJpbmZyYUFsZXJ0VmFsdWVcIiBbaWRGaWVsZF09XCIndmFsdWUnXCIgW25hbWVGaWVsZF09XCInbGFiZWwnXCIgW2RhdGFdPVwiaW5mcmFBbGVydFZhbHVlXCIgPjwvbGliLXJlYWN0aXZlLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy00IGNvbC14bC00IGNvbC14eGwtNCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkb3duVGltZVR5cGVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5Cb3VuY2VkIExpbWl0PHNwYW4gY2xhc3M9XCJhbGVydC1yZXF1aXJlZFwiPjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiYm91bmNlZExpbWl0Q29uZGl0aW9uXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImJvdW5jZWRMaW1pdENvbmRpdGlvblwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJib3VuY2VkTGltaXRWYWx1ZVwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIiBbbmFtZUZpZWxkXT1cIidsYWJlbCdcIiBbZGF0YV09XCJib3VuY2VkTGltaXRWYWx1ZVwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNCBjb2wteGwtNCBjb2wteHhsLTQgbWItNVwiPlxyXG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiTWluRmlsZXNDb3VudFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPk1pc3NlZCBPcHBvcnR1bml0eSA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWxlcnQtcmVxdWlyZWRcIj48L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbCBtb2NrLWlucHV0IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3ttaXNzZWRPcHBvcnR1bml0eVN0YXJ0VGltZSB9fSAtIHt7bWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lfX1cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNCBjb2wteGwtNCBjb2wteHhsLTQgbWItNVwiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+Q29udmVyc2lvbiA8c3BhbiBjbGFzcz1cImFsZXJ0LXJlcXVpcmVkXCI+PC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJjb252ZXJzaW9uQ29uZGl0aW9uXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImNvbnZlcnNpb25Db25kaXRpb25cIiA+PC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiY29udmVyc2lvblZhbHVlXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImNvbnZlcnNpb25WYWx1ZVwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNCBjb2wteGwtNCBjb2wteHhsLTQgbWItNVwiPlxyXG4gICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJiaWxsYWJsZUNhbGN1bGF0aW9uXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImJpbGxhYmxlQ2FsY3VsYXRpb25cIiBbbGFiZWxdPVwiJ0JpbGxhYmxlIENhbGN1bGF0aW9ucydcIiA+PC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTQgY29sLXhsLTQgY29sLXh4bC00IG1iLTVcIj5cclxuICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwibWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvblwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIiBbbmFtZUZpZWxkXT1cIidsYWJlbCdcIiBbZGF0YV09XCJtaXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uXCIgW2xhYmVsXT1cIidNaXNzZWQgT3Bwb3J0dW5pdHkgQ2FsY3VsYXRpb24nXCIgPjwvbGliLXJlYWN0aXZlLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy00IGNvbC14bC00IGNvbC14eGwtNCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxsaWItcmVhY3RpdmUtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImNvbnZlcnNpb25DYWxjdWxhdGlvblwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIiBbbmFtZUZpZWxkXT1cIidsYWJlbCdcIiBbZGF0YV09XCJjb252ZXJzaW9uQ2FsY3VsYXRpb25cIiBbbGFiZWxdPVwiJ0NvbnZlcnNpb24gQ2FsY3VsYXRpb25zJ1wiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTMgbWItNSBweC02XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+Tm9ybWFsaXplZCBkYXRhIGR1cmluZyBkb3dudGltZTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLXRleHRcIj5DaG9vc2UgaWYgeW91IHdhbnQgdG8gdmlldyBub3JtYWxpemVkIGRhdGEgZHVyaW5nIGRvd250aW1lLiA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5QYXNzZXItYnkgZGF0YTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLXRleHRcIj5DaG9vc2UgaWYgeW91IHdhbnQgdG8gdmlldyBQYXNzZXJieSBkYXRhLiA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIiA+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+Rm9vdGZhbGwgRGlyZWN0b3J5PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dFwiPkNob29zZSBpZiB5b3Ugd2FudCB0byB2aWV3IEZvb3RmYWxsIGRpcmVjdG9yeSA8L2Rpdj4gICAgXHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+RXhjbHVkZWQgQXJlYTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0XCI+Q2hvb3NlIGlmIHlvdSB3YW50IHRvIHZpZXcgRXhjbHVkZWQgQXJlYSA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTMgbWItNSBweC02XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiaXNOb3JtYWxpemVkXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJpc05vcm1hbGl6ZWRcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgdG9nZ2xlLWxhYmVsXCIgZm9yPVwiaXNOb3JtYWxpemVkXCI+IFNob3cgTm9ybWFsaXplZCBkYXRhXHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2hcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpc1Bhc3NlckJ5RGF0YVwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiIGlkPVwiaXNQYXNzZXJCeURhdGFcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgdG9nZ2xlLWxhYmVsXCIgZm9yPVwiaXNQYXNzZXJCeURhdGFcIj4gU2hvdyBQYXNzZXItYnkgZGF0YVxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTMgbWItNSBweC02XCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbycgXCIgPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cImlzRm9vdGZhbGxEaXJlY3RvcnlcIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiaXNGb290ZmFsbERpcmVjdG9yeVwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCB0b2dnbGUtbGFiZWxcIiBmb3I9XCJpc0Zvb3RmYWxsRGlyZWN0b3J5XCI+IFNob3cgRm9vdGZhbGwgRGlyZWN0b3J5XHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8L2Rpdj4gICAgXHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTMgY29sLXhsLTMgY29sLXh4bC0zIG1iLTUgcHgtNlwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nIFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2hcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiaXNFeGNsdWRlZEFyZWFcIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZD1cImlzRXhjbHVkZWRBcmVhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCB0b2dnbGUtbGFiZWxcIiBmb3I9XCJpc0V4bHVkZWRBcmVhXCI+IFNob3cgRXhjbHVkZWQgQXJlYVxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwiZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmVuYWJsZWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWItNSB3LTEwMCBmb290ZXItc2VwZXJhdG9yXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCI+XHJcbiAgICAgICAgICAgIDxhIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZSBtdC0xIG1lLTRcIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPkNhbmNlbDwvYT5cclxuICAgICAgICAgICAgPGEgdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTQgXCIgKGNsaWNrKT1cIm9uU3VibWl0KClcIj48c3Bhbj5TYXZlIENoYW5nZXM8L3NwYW4+PC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG48L2Zvcm0+Il19
|
|
184
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlndXJhdGlvbnMvZmVhdHVyZS1jb25maWd1cmF0aW9uL2ZlYXR1cmUtY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL2NvbmZpZ3VyYXRpb25zL2ZlYXR1cmUtY29uZmlndXJhdGlvbi9mZWF0dXJlLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFHeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBUSxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzNCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxHQUFHLE1BQU0sa0JBQWtCLENBQUM7QUFDbkMsT0FBTyxRQUFRLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFDN0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsQixLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBT3ZCLE1BQU0sT0FBTyw2QkFBNkI7SUFnRXBCO0lBQXlCO0lBQXFDO0lBQ3hFO0lBOURWLHdCQUF3QixDQUFXO0lBQ25DLDBCQUEwQixDQUFTO0lBQ25DLHdCQUF3QixDQUFTO0lBQ2hCLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzFDLEtBQUssR0FBRyxLQUFLLENBQUE7SUFHYixlQUFlLEdBQUc7UUFDaEIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7S0FDN0IsQ0FBQTtJQUVELG1CQUFtQixHQUFHO1FBQ3BCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO1FBQzFCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO1FBQzFCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO1FBQzdCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO0tBQzlCLENBQUE7SUFFRCxxQkFBcUIsR0FBRztRQUN0QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtLQUM5QixDQUFBO0lBRUQsaUJBQWlCLEdBQUc7UUFDbEIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDNUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7UUFDN0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7S0FDOUIsQ0FBQTtJQUVELG1CQUFtQixHQUFHO1FBQ3BCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO0tBQzNCLENBQUE7SUFFRCxlQUFlLEdBQUc7UUFDaEIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7UUFDN0IsRUFBRSxLQUFLLEVB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RUQsUUFBUTtRQUNOLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFDLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JKLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFDLGtCQUFrQixDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3ZKLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLHVCQUF1QixFQUFFLENBQUMsQ0FBQTtJQUNwSSxDQUFDO3dHQS9MVSw2QkFBNkI7NEZBQTdCLDZCQUE2QixpRUNqQjFDLG8xWEF3TE87OzRGRHZLTSw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0UsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENsaWVudEFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jbGllbnQtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgR2xvYmFsU3RhdGVTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLWdsb2JhbCc7XHJcbmltcG9ydCAgZGF5anMgZnJvbSBcImRheWpzXCI7XHJcbmltcG9ydCBcImRheWpzL2xvY2FsZS9lblwiO1xyXG5pbXBvcnQgdXRjIGZyb20gXCJkYXlqcy9wbHVnaW4vdXRjXCI7XHJcbmltcG9ydCB0aW1lem9uZSBmcm9tIFwiZGF5anMvcGx1Z2luL3RpbWV6b25lXCI7XHJcbmRheWpzLmV4dGVuZCh1dGMpO1xyXG5kYXlqcy5leHRlbmQodGltZXpvbmUpO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZmVhdHVyZS1jb25maWd1cmF0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmVhdHVyZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZmVhdHVyZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRmVhdHVyZUNvbmZpZ3VyYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG5cclxuXHJcbiAgZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtOiBGb3JtR3JvdXBcclxuICBtaXNzZWRPcHBvcnR1bml0eVN0YXJ0VGltZTogc3RyaW5nO1xyXG4gIG1pc3NlZE9wcG9ydHVuaXR5RW5kVGltZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIGRheWpzID0gZGF5anNcclxuXHJcblxyXG4gIGluZnJhQWxlcnRWYWx1ZSA9IFtcclxuICAgIHsgdmFsdWU6IDEsIGxhYmVsOiBcIjEgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDIsIGxhYmVsOiBcIjIgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDMsIGxhYmVsOiBcIjMgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDQsIGxhYmVsOiBcIjQgaHJzXCIgfSxcclxuICAgIHsgdmFsdWU6IDUsIGxhYmVsOiBcIjUgaHJzXCIgfVxyXG4gIF1cclxuXHJcbiAgaW5mcmFBbGVydENvbmRpdGlvbiA9IFtcclxuICAgIHsgdmFsdWU6IFwiPFwiLCBsYWJlbDogXCI8XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiPlwiLCBsYWJlbDogXCI+XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiPD1cIiwgbGFiZWw6IFwiPCA9XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiPT5cIiwgbGFiZWw6IFwiPSA+XCIgfSxcclxuICBdXHJcblxyXG4gIGJvdW5jZWRMaW1pdENvbmRpdGlvbiA9IFtcclxuICAgIHsgdmFsdWU6IFwiPD1cIiwgbGFiZWw6IFwiPCA9XCIgfVxyXG4gIF1cclxuXHJcbiAgYm91bmNlZExpbWl0VmFsdWUgPSBbXHJcbiAgICB7IHZhbHVlOiAxLCBsYWJlbDogXCIxIG1pblwiIH0sXHJcbiAgICB7IHZhbHVlOiAyLCBsYWJlbDogXCIyIG1pbnNcIiB9LFxyXG4gICAgeyB2YWx1ZTogMywgbGFiZWw6IFwiMyBtaW5zXCIgfSxcclxuICBdXHJcblxyXG4gIGNvbnZlcnNpb25Db25kaXRpb24gPSBbXHJcbiAgICB7IHZhbHVlOiBcIj5cIiwgbGFiZWw6IFwiPlwiIH1cclxuICBdXHJcblxyXG4gIGNvbnZlcnNpb25WYWx1ZSA9IFtcclxuICAgIHsgdmFsdWU6IDUsIGxhYmVsOiBcIjUgbWluc1wiIH0sXHJcbiAgICB7IHZhbHVlOiAxMCwgbGFiZWw6IFwiMTAgbWluc1wiIH0sXHJcbiAgICB7IHZhbHVlOiAxNSwgbGFiZWw6IFwiMTUgbWluc1wiIH0sXHJcbiAgICB7IHZhbHVlOiAyMCwgbGFiZWw6IFwiMjAgbWluc1wiIH1cclxuICBdXHJcblxyXG4gIGJpbGxhYmxlQ2FsY3VsYXRpb24gPSBbXHJcbiAgICB7IHZhbHVlOiBcImZvb3RmYWxsLWNvdW50XCIsIGxhYmVsOiBcIkZvb3RmYWxsIENvdW50XCIgfSxcclxuICAgIHsgdmFsdWU6IFwiZW5nYWdlcnMtY291bnRcIiwgbGFiZWw6IFwiRW5nYWdlcnMgQ291bnRcIiB9LFxyXG4gIF1cclxuXHJcbiAgbWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvbiA9IFtcclxuICAgIHsgdmFsdWU6IFwiZW5nYWdlcnMtY29udmVyc2lvblwiLCBsYWJlbDogXCJFbmdhZ2VycyAtIENvbnZlcnNpb25cIiB9LFxyXG4gICAgeyB2YWx1ZTogXCJncm91cC1jb252ZXJzaW9uXCIsIGxhYmVsOiBcIkJpbGxhYmxlIEVudGl0aWVzIC0gQ29udmVyc2lvblwiIH0sXHJcbiAgXVxyXG5cclxuICBjb252ZXJzaW9uQ2FsY3VsYXRpb24gPSBbXHJcbiAgICB7dmFsdWU6XCJmb290ZmFsbC1jb3VudFwiLCBsYWJlbDpcIkZvb3RmYWxsIENvdW50XCJ9LFxyXG4gICAge3ZhbHVlOlwiZW5nYWdlcnMtY291bnRcIiwgbGFiZWw6XCJFbmdhZ2VycyBDb3VudFwifSxcclxuICAgIHt2YWx1ZTpcImJpbGxhYmxlLWVudGl0aWVzXCIsIGxhYmVsOlwiQmlsbGFibGUgRW50aXRpZXNcIn0sXHJcbiAgXVxyXG5cclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIGFwaVNlcnZpY2U6IENsaWVudEFwaVNlcnZpY2UsIHB1YmxpYyBnczogR2xvYmFsU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZDpDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgdGhpcy5pbml0Rm9ybSgpXHJcbiAgICB0aGlzLmFwaVNlcnZpY2UuY2xpZW50Rm9ybURhdGEucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICBpZiAocmVzLnR5cGUgPT09ICdpbnB1dCcgJiYgcmVzLmZvcm0gPT09ICdmZWF0dXJlLWNvbmZpZ3VyYXRpb24nKSB7XHJcbiAgICAgICAgICB0aGlzLnBhdGNoRm9ybShyZXMudmFsdWUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGluaXRGb3JtKCkge1xyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgb3BlbjogW10sXHJcbiAgICAgIGNsb3NlOiBbXSxcclxuICAgICAgaW5mcmFBbGVydENvbmRpdGlvbjogW10sXHJcbiAgICAgIGluZnJhQWxlcnRWYWx1ZTogW10sXHJcbiAgICAgIGJvdW5jZWRMaW1pdENvbmRpdGlvbjogW10sXHJcbiAgICAgIGJvdW5jZWRMaW1pdFZhbHVlOiBbXSxcclxuICAgICAgY29udmVyc2lvbkNvbmRpdGlvbjogW10sXHJcbiAgICAgIGNvbnZlcnNpb25WYWx1ZTogW10sXHJcbiAgICAgIGJpbGxhYmxlQ2FsY3VsYXRpb246IFtdLFxyXG4gICAgICBtaXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uOiBbXSxcclxuICAgICAgY29udmVyc2lvbkNhbGN1bGF0aW9uOiBbXSxcclxuICAgICAgaXNOb3JtYWxpemVkOiBbXSxcclxuICAgICAgaXNQYXNzZXJCeURhdGE6IFtdLFxyXG4gICAgICBpc0Zvb3RmYWxsRGlyZWN0b3J5OiBbXSxcclxuICAgICAgaXNFeGNsdWRlZEFyZWE6W10sXHJcbiAgICAgIGlzQ2FtZXJhRGlzYWJsZWQ6IFtmYWxzZV0sXHJcbiAgICAgIGlzYmlsbGluZ0Rpc2FibGVkOltmYWxzZV0sXHJcbiAgICAgIHVwZGF0ZUZlYXR1cmVDb25maWc6W11cclxuICAgIH0pO1xyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZGlzYWJsZSgpXHJcblxyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZ2V0KCdib3VuY2VkTGltaXRWYWx1ZScpPy52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xyXG4gICAgICBpZiAoZSkgeyAgICAgICAgXHJcbiAgICAgICAgdGhpcy5ib3VuY2VkQ29uZmlnVGltZUNoYW5nZShlKVxyXG4gICAgICB9XHJcblxyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS5nZXQoJ2NvbnZlcnNpb25WYWx1ZScpPy52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xyXG4gICAgICBpZiAoZSkge1xyXG4gICAgICAgIHRoaXMuY29udmVyc2lvbkNvbmZpZ1RpbWVDaGFuZ2UoZSlcclxuICAgICAgICAvLyB0aGlzLnNldENvbnZlcnNpb25DYWxjdWxhdGlvbihlKVxyXG4gICAgICB9XHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHBhdGNoRm9ybShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLnBhdGNoVmFsdWUoXHJcbiAgICAgIHtcclxuICAgICAgICAuLi5kYXRhXHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcblxyXG4gIGJvdW5jZWRDb25maWdUaW1lQ2hhbmdlKHZhbHVlOiBudW1iZXIpIHtcclxuXHJcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XHJcbiAgICAgIGNhc2UgMTpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lID0gXCI+MVwiXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgMjpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lID0gXCI+MlwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDM6XHJcbiAgICAgICAgdGhpcy5taXNzZWRPcHBvcnR1bml0eVN0YXJ0VGltZSA9IFwiPjNcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lID0gXCJcIjtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb252ZXJzaW9uQ29uZmlnVGltZUNoYW5nZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XHJcbiAgICAgIGNhc2UgNTpcclxuICAgICAgICB0aGlzLm1pc3NlZE9wcG9ydHVuaXR5RW5kVGltZSA9ICc8PTUnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDEwOlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJzw9MTAnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDE1OlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJzw9MTUnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIDIwOlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJzw9MjAnO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRoaXMubWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lID0gJyc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRDb252ZXJzaW9uQ2FsY3VsYXRpb24oY29udmVyc2lvblZhbDpudW1iZXIpe1xyXG4gICAgdGhpcy5jb252ZXJzaW9uQ2FsY3VsYXRpb24gPSBbXHJcbiAgICAgIHt2YWx1ZTpcImZvb3RmYWxsLWNvdW50XCIsIGxhYmVsOmAke2NvbnZlcnNpb25WYWx9IG1pbnMvRm9vdGZhbGwgQ291bnRgfSxcclxuICAgICAge3ZhbHVlOlwiZW5nYWdlcnMtY291bnRcIiwgbGFiZWw6YCR7Y29udmVyc2lvblZhbH0gbWlucy9FbmdhZ2VycyBDb3VudGB9LFxyXG4gICAgICB7dmFsdWU6XCJiaWxsYWJsZS1lbnRpdGllc1wiLCBsYWJlbDpgJHtjb252ZXJzaW9uVmFsfSBtaW5zL0JpbGxhYmxlIEVudGl0aWVzYH0sXHJcbiAgICBdXHJcbiAgICB0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS5nZXQoJ2NvbnZlcnNpb25DYWxjdWxhdGlvbicpPy5zZXRWYWx1ZSh0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybT8udmFsdWUuY29udmVyc2lvbkNhbGN1bGF0aW9uKSBcclxuICB9XHJcblxyXG5cclxuXHJcbiAgb25DYW5jZWwoKSB7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2UuY2xpZW50Rm9ybURhdGEubmV4dCh7IHZhbHVlOiBudWxsLCB0eXBlOiAnY2FuY2VsJywgZm9ybTogJ2ZlYXR1cmUtY29uZmlndXJhdGlvbicgfSlcclxuICAgIHRoaXMuZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmRpc2FibGUoKVxyXG5cclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUub3BlbiA9IHRoaXMuZGF5anMoYDE5OTEtMDEtMDEgJHt0aGlzLmZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS52YWx1ZS5vcGVufWAsJ1lZWVktTU0tREQgSEg6bW0nKS5mb3JtYXQoXCJISDptbTpzc1wiKVxyXG4gICAgdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUuY2xvc2UgPSB0aGlzLmRheWpzKGAxOTkxLTAxLTAxICR7dGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUuY2xvc2V9YCwnWVlZWS1NTS1ERCBISDptbScpLmZvcm1hdChcIkhIOm1tOnNzXCIpICAgIFxyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLmNsaWVudEZvcm1EYXRhLm5leHQoeyB2YWx1ZTogdGhpcy5mZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0udmFsdWUsIHR5cGU6ICdzdWJtaXQnLCBmb3JtOiAnZmVhdHVyZS1jb25maWd1cmF0aW9uJyB9KVxyXG4gIH1cclxuXHJcblxyXG5cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZlYXR1cmVDb25maWd1cmF0aW9uRm9ybVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8uc2V0dGluZ3NfY29uZmlndXJhdGlvbl9pc0VkaXQgXCIgPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJmZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZGlzYWJsZWRcIiBjbGFzcz1cImNvbC0xMiBtYi01XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIiAqbmdJZj1cImZlYXR1cmVDb25maWd1cmF0aW9uRm9ybS5nZXQoJ3VwZGF0ZUZlYXR1cmVDb25maWcnKT8udmFsdWUgPT09IHRydWVcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmRpc2FibGVkID8gZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmVuYWJsZSgpIDogZmVhdHVyZUNvbmZpZ3VyYXRpb25Gb3JtLmRpc2FibGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIGFsaWduLWl0ZW1zLWVuZFwiPjxzcGFuIGNsYXNzPVwibWUtMlwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjU3OV8yNTEyNSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE0LjE2NyAyLjQ5OTkzQzE0LjM4NTkgMi4yODEwNiAxNC42NDU3IDIuMTA3NDQgMTQuOTMxNyAxLjk4ODk5QzE1LjIxNzYgMS44NzA1NCAxNS41MjQxIDEuODA5NTcgMTUuODMzNyAxLjgwOTU3QzE2LjE0MzIgMS44MDk1NyAxNi40NDk3IDEuODcwNTQgMTYuNzM1NyAxLjk4ODk5QzE3LjAyMTYgMi4xMDc0NCAxNy4yODE1IDIuMjgxMDYgMTcuNTAwMyAyLjQ5OTkzQzE3LjcxOTIgMi43MTg4IDE3Ljg5MjggMi45Nzg2MyAxOC4wMTEzIDMuMjY0NkMxOC4xMjk3IDMuNTUwNTcgMTguMTkwNyAzLjg1NzA2IDE4LjE5MDcgNC4xNjY1OUMxOC4xOTA3IDQuNDc2MTIgMTguMTI5NyA0Ljc4MjYyIDE4LjAxMTMgNS4wNjg1OUMxNy44OTI4IDUuMzU0NTUgMTcuNzE5MiA1LjYxNDM5IDE3LjUwMDMgNS44MzMyNkw2LjI1MDMzIDE3LjA4MzNMMS42NjY5OSAxOC4zMzMzTDIuOTE2OTkgMTMuNzQ5OUwxNC4xNjcgMi40OTk5M1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8yNTc5XzI1MTI1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPkVkaXQgRGV0YWlsczwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj4gICAgXHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTQgY29sLXhsLTQgY29sLXh4bC00IG1iLTVcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cIm9wZW5cIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5TdG9yZSBPcGVuIFRpbWUgPHNwYW4gY2xhc3M9XCJhbGVydC1yZXF1aXJlZFwiPjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJvcGVuXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cIm9wZW5cIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy00IGNvbC14bC00IGNvbC14eGwtNCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjbG9zZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlN0b3JlIENsb3NlIFRpbWUgPHNwYW4gY2xhc3M9XCJhbGVydC1yZXF1aXJlZFwiPjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJjbG9zZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJjbG9zZVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTQgY29sLXhsLTQgY29sLXh4bC00IG1iLTVcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPkluZnJhIEFsZXJ0IDxzcGFuIGNsYXNzPVwiYWxlcnQtcmVxdWlyZWRcIj48L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaWItcmVhY3RpdmUtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImluZnJhQWxlcnRDb25kaXRpb25cIiBbaWRGaWVsZF09XCIndmFsdWUnXCIgW25hbWVGaWVsZF09XCInbGFiZWwnXCIgW2RhdGFdPVwiaW5mcmFBbGVydENvbmRpdGlvblwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJpbmZyYUFsZXJ0VmFsdWVcIiBbaWRGaWVsZF09XCIndmFsdWUnXCIgW25hbWVGaWVsZF09XCInbGFiZWwnXCIgW2RhdGFdPVwiaW5mcmFBbGVydFZhbHVlXCIgPjwvbGliLXJlYWN0aXZlLXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy00IGNvbC14bC00IGNvbC14eGwtNCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkb3duVGltZVR5cGVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5Cb3VuY2VkIExpbWl0PHNwYW4gY2xhc3M9XCJhbGVydC1yZXF1aXJlZFwiPjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiYm91bmNlZExpbWl0Q29uZGl0aW9uXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImJvdW5jZWRMaW1pdENvbmRpdGlvblwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJib3VuY2VkTGltaXRWYWx1ZVwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIiBbbmFtZUZpZWxkXT1cIidsYWJlbCdcIiBbZGF0YV09XCJib3VuY2VkTGltaXRWYWx1ZVwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNCBjb2wteGwtNCBjb2wteHhsLTQgbWItNVwiPlxyXG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiTWluRmlsZXNDb3VudFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPk1pc3NlZCBPcHBvcnR1bml0eSA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWxlcnQtcmVxdWlyZWRcIj48L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbCBtb2NrLWlucHV0IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1pc3NlZE9wcG9ydHVuaXR5U3RhcnRUaW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3ttaXNzZWRPcHBvcnR1bml0eVN0YXJ0VGltZSB9fSAtIHt7bWlzc2VkT3Bwb3J0dW5pdHlFbmRUaW1lfX1cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNCBjb2wteGwtNCBjb2wteHhsLTQgbWItNVwiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+Q29udmVyc2lvbiA8c3BhbiBjbGFzcz1cImFsZXJ0LXJlcXVpcmVkXCI+PC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJjb252ZXJzaW9uQ29uZGl0aW9uXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImNvbnZlcnNpb25Db25kaXRpb25cIiA+PC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiY29udmVyc2lvblZhbHVlXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImNvbnZlcnNpb25WYWx1ZVwiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNCBjb2wteGwtNCBjb2wteHhsLTQgbWItNVwiPlxyXG4gICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJiaWxsYWJsZUNhbGN1bGF0aW9uXCIgW2lkRmllbGRdPVwiJ3ZhbHVlJ1wiIFtuYW1lRmllbGRdPVwiJ2xhYmVsJ1wiIFtkYXRhXT1cImJpbGxhYmxlQ2FsY3VsYXRpb25cIiBbbGFiZWxdPVwiJ0JpbGxhYmxlIENhbGN1bGF0aW9ucydcIiA+PC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTQgY29sLXhsLTQgY29sLXh4bC00IG1iLTVcIj5cclxuICAgICAgICAgICAgPGxpYi1yZWFjdGl2ZS1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwibWlzc2VkT3Bwb3J0dW5pdHlDYWxjdWxhdGlvblwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIiBbbmFtZUZpZWxkXT1cIidsYWJlbCdcIiBbZGF0YV09XCJtaXNzZWRPcHBvcnR1bml0eUNhbGN1bGF0aW9uXCIgW2xhYmVsXT1cIidNaXNzZWQgT3Bwb3J0dW5pdHkgQ2FsY3VsYXRpb24nXCIgPjwvbGliLXJlYWN0aXZlLXNlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy00IGNvbC14bC00IGNvbC14eGwtNCBtYi01XCI+XHJcbiAgICAgICAgICAgIDxsaWItcmVhY3RpdmUtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImNvbnZlcnNpb25DYWxjdWxhdGlvblwiIFtpZEZpZWxkXT1cIid2YWx1ZSdcIiBbbmFtZUZpZWxkXT1cIidsYWJlbCdcIiBbZGF0YV09XCJjb252ZXJzaW9uQ2FsY3VsYXRpb25cIiBbbGFiZWxdPVwiJ0NvbnZlcnNpb24gQ2FsY3VsYXRpb25zJ1wiID48L2xpYi1yZWFjdGl2ZS1zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTMgbWItNSBweC02XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+Tm9ybWFsaXplZCBkYXRhIGR1cmluZyBkb3dudGltZTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLXRleHRcIj5DaG9vc2UgaWYgeW91IHdhbnQgdG8gdmlldyBub3JtYWxpemVkIGRhdGEgZHVyaW5nIGRvd250aW1lLiA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi1oZWFkZXJcIj5QYXNzZXItYnkgZGF0YTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViLXRleHRcIj5DaG9vc2UgaWYgeW91IHdhbnQgdG8gdmlldyBQYXNzZXJieSBkYXRhLiA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIiA+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+Rm9vdGZhbGwgRGlyZWN0b3J5PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dFwiPkNob29zZSBpZiB5b3Ugd2FudCB0byB2aWV3IEZvb3RmYWxsIGRpcmVjdG9yeSA8L2Rpdj4gICAgXHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+RXhjbHVkZWQgQXJlYTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0XCI+Q2hvb3NlIGlmIHlvdSB3YW50IHRvIHZpZXcgRXhjbHVkZWQgQXJlYSA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2hcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpc05vcm1hbGl6ZWRcIiBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwiY2hlY2tib3hcIiBpZD1cImlzTm9ybWFsaXplZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCB0b2dnbGUtbGFiZWxcIiBmb3I9XCJpc05vcm1hbGl6ZWRcIj4gU2hvdyBOb3JtYWxpemVkIGRhdGFcclxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgY29sLWxnLTMgY29sLXhsLTMgY29sLXh4bC0zIG1iLTUgcHgtNlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cImlzUGFzc2VyQnlEYXRhXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJpc1Bhc3NlckJ5RGF0YVwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCB0b2dnbGUtbGFiZWxcIiBmb3I9XCJpc1Bhc3NlckJ5RGF0YVwiPiBTaG93IFBhc3Nlci1ieSBkYXRhXHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIiA+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tc3dpdGNoXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiaXNGb290ZmFsbERpcmVjdG9yeVwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgaWQ9XCJpc0Zvb3RmYWxsRGlyZWN0b3J5XCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIHRvZ2dsZS1sYWJlbFwiIGZvcj1cImlzRm9vdGZhbGxEaXJlY3RvcnlcIj4gU2hvdyBGb290ZmFsbCBEaXJlY3RvcnlcclxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PiAgICBcclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTMgbWItNSBweC02XCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbycgXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpc0V4Y2x1ZGVkQXJlYVwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiaXNFeGNsdWRlZEFyZWFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIHRvZ2dsZS1sYWJlbFwiIGZvcj1cImlzRXhsdWRlZEFyZWFcIj4gU2hvdyBFeGNsdWRlZCBBcmVhXHJcbiAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy0zIGNvbC14bC0zIGNvbC14eGwtMyBtYi01IHB4LTZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+Q2FtZXJhIE1hbmFnZW1lbnQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dFwiPkNob29zZSBpZiB5b3Ugd2FudCB0byB2aWV3IENhbWVyYSBNYW5hZ2VtZW50IDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1zd2l0Y2ggbXQtNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpc0NhbWVyYURpc2FibGVkXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJpc0NhbWVyYURpc2FibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCB0b2dnbGUtbGFiZWxcIiBmb3I9XCJpc0NhbWVyYURpc2FibGVkXCI+IFNob3cgQ2FtZXJhc1xyXG4gICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTMgbWItNSBweC02XCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbydcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItaGVhZGVyXCI+QmlsbGluZyA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dFwiPkNob29zZSBpZiB5b3Ugd2FudCB0byB2aWV3IEJpbGxpbmcgTWFuYWdlbWVudCA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaCBtdC01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpc2JpbGxpbmdEaXNhYmxlZFwiIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImlzYmlsbGluZ0Rpc2FibGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgdG9nZ2xlLWxhYmVsXCIgZm9yPVwiaXNiaWxsaW5nRGlzYWJsZWRcIj4gU2hvdyBCaWxsaW5nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICBcclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJmZWF0dXJlQ29uZmlndXJhdGlvbkZvcm0uZW5hYmxlZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYi01IHctMTAwIGZvb3Rlci1zZXBlcmF0b3JcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIj5cclxuICAgICAgICAgICAgPGEgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIG10LTEgbWUtNFwiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+Q2FuY2VsPC9hPlxyXG4gICAgICAgICAgICA8YSB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBcIiAoY2xpY2spPVwib25TdWJtaXQoKVwiPjxzcGFuPlNhdmUgQ2hhbmdlczwvc3Bhbj48L2E+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZm9ybT4iXX0=
|
|
@@ -87,10 +87,10 @@ export class AddReportComponent {
|
|
|
87
87
|
}
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
91
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.
|
|
90
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AddReportComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ClientApiService }, { token: i3.NgbActiveModal }, { token: i4.ToastService }], target: i0.ɵɵFactoryTarget.Component });
|
|
91
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AddReportComponent, selector: "lib-add-report", ngImport: i0, template: "<form [formGroup]=\"addReportForm\">\r\n <div class=\"row\">\r\n <div class=\"col-12 mb-5\">\r\n <svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" fill=\"#DAF1FF\"/>\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" stroke=\"#EAF8FF\" stroke-width=\"8\"/>\r\n <path d=\"M30 18H22C21.4696 18 20.9609 18.2107 20.5858 18.5858C20.2107 18.9609 20 19.4696 20 20V36C20 36.5304 20.2107 37.0391 20.5858 37.4142C20.9609 37.7893 21.4696 38 22 38H34C34.5304 38 35.0391 37.7893 35.4142 37.4142C35.7893 37.0391 36 36.5304 36 36V24M30 18L36 24M30 18V24H36M28 34V28M25 31H31\" stroke=\"#00A3FF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg> \r\n </div>\r\n <div class=\"col-12 mb-10 header\">\r\n Add Report\r\n </div>\r\n <div class=\"col-12 mb-5\">\r\n <label for=\"fileName\" class=\"form-label\">Report Name<span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileName\" type=\"text\" class=\"form-control disabled-input\" id=\"fileName\"\r\n autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-12 mb-5\">\r\n <label for=\"fileType\" class=\"form-label\">File Type<span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileType\" type=\"text\" class=\"form-control disabled-input\" id=\"fileType\"\r\n autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12\">\r\n <label for=\"infraDownTime\" class=\"form-label\">Receivers Email <span class=\"alert-required\"></span></label>\r\n <div class=\"outer-container\">\r\n <div class=\"input-container form-control\">\r\n <ng-container *ngFor=\"let email of emailList; let i = index\">\r\n <span class=\"chip\">\r\n <span class=\"me-3\">{{email}}</span>\r\n <span *ngIf=\"addReportForm.enabled\" (click)=\"removeChip(i)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\">\r\n <path d=\"M9 3L3 9M3 3L9 9\" stroke=\"#667085\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n <!-- <textarea rows=\"5\" formControlName=\"email\" (keydown)=\"onKeyDown($event)\"></textarea> -->\r\n <input class=\"emailinput\" formControlName=\"email\" (keydown)=\"onKeyDown($event)\" type=\"text\">\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"emailValidation.includes(false)\" class=\"text-danger mt-3\">Invalid Email Format</div>\r\n <div class=\"col-12 mt-10\">\r\n <div class=\"row\" >\r\n <div class=\"col \">\r\n <a type=\"button\" class=\"btn btn-outline w-100 \" (click)=\"onCancel()\">Cancel</a>\r\n </div>\r\n <div class=\"col\">\r\n <button type=\"button\" class=\"btn btn-primary w-100\" (click)=\"onSubmit()\" [disabled]=\"addReportForm.invalid || !emailList.length || emailValidation.includes(false)\"><span>Save Changes</span></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [":host{padding:1.5rem}.header{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.emailinput{border:none;outline:none;background:none;box-shadow:none;min-height:44px!important}.emailinput:focus,.emailinput:active{border:none;outline:none;background:none;box-shadow:none}.form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.outer-container{position:relative}.outer-container .form-control{padding-top:0;padding-bottom:0}.outer-container .input-container{border:1px solid black;height:100%;width:100%;display:flex;flex-wrap:wrap}.outer-container .input-container textarea,.outer-container .input-container input{all:unset;flex:1;min-width:50px}.outer-container .input-container .chip{margin:10px 0 10px 10px;padding:3px 10px;border-radius:16px;background:var(--Gray-100, #F2F4F7);color:var(--Gray-700, #344054);font-family:Inter;font-size:14px;font-weight:500;line-height:20px;height:25px}.outer-container .input-container .chip:nth-child(1){margin-left:0}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
92
92
|
}
|
|
93
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AddReportComponent, decorators: [{
|
|
94
94
|
type: Component,
|
|
95
95
|
args: [{ selector: 'lib-add-report', template: "<form [formGroup]=\"addReportForm\">\r\n <div class=\"row\">\r\n <div class=\"col-12 mb-5\">\r\n <svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" fill=\"#DAF1FF\"/>\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" stroke=\"#EAF8FF\" stroke-width=\"8\"/>\r\n <path d=\"M30 18H22C21.4696 18 20.9609 18.2107 20.5858 18.5858C20.2107 18.9609 20 19.4696 20 20V36C20 36.5304 20.2107 37.0391 20.5858 37.4142C20.9609 37.7893 21.4696 38 22 38H34C34.5304 38 35.0391 37.7893 35.4142 37.4142C35.7893 37.0391 36 36.5304 36 36V24M30 18L36 24M30 18V24H36M28 34V28M25 31H31\" stroke=\"#00A3FF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg> \r\n </div>\r\n <div class=\"col-12 mb-10 header\">\r\n Add Report\r\n </div>\r\n <div class=\"col-12 mb-5\">\r\n <label for=\"fileName\" class=\"form-label\">Report Name<span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileName\" type=\"text\" class=\"form-control disabled-input\" id=\"fileName\"\r\n autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-12 mb-5\">\r\n <label for=\"fileType\" class=\"form-label\">File Type<span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileType\" type=\"text\" class=\"form-control disabled-input\" id=\"fileType\"\r\n autocomplete=\"off\">\r\n </div>\r\n <div class=\"col-md-12\">\r\n <label for=\"infraDownTime\" class=\"form-label\">Receivers Email <span class=\"alert-required\"></span></label>\r\n <div class=\"outer-container\">\r\n <div class=\"input-container form-control\">\r\n <ng-container *ngFor=\"let email of emailList; let i = index\">\r\n <span class=\"chip\">\r\n <span class=\"me-3\">{{email}}</span>\r\n <span *ngIf=\"addReportForm.enabled\" (click)=\"removeChip(i)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\">\r\n <path d=\"M9 3L3 9M3 3L9 9\" stroke=\"#667085\" stroke-width=\"1.5\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n <!-- <textarea rows=\"5\" formControlName=\"email\" (keydown)=\"onKeyDown($event)\"></textarea> -->\r\n <input class=\"emailinput\" formControlName=\"email\" (keydown)=\"onKeyDown($event)\" type=\"text\">\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"emailValidation.includes(false)\" class=\"text-danger mt-3\">Invalid Email Format</div>\r\n <div class=\"col-12 mt-10\">\r\n <div class=\"row\" >\r\n <div class=\"col \">\r\n <a type=\"button\" class=\"btn btn-outline w-100 \" (click)=\"onCancel()\">Cancel</a>\r\n </div>\r\n <div class=\"col\">\r\n <button type=\"button\" class=\"btn btn-primary w-100\" (click)=\"onSubmit()\" [disabled]=\"addReportForm.invalid || !emailList.length || emailValidation.includes(false)\"><span>Save Changes</span></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n", styles: [":host{padding:1.5rem}.header{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.emailinput{border:none;outline:none;background:none;box-shadow:none;min-height:44px!important}.emailinput:focus,.emailinput:active{border:none;outline:none;background:none;box-shadow:none}.form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.outer-container{position:relative}.outer-container .form-control{padding-top:0;padding-bottom:0}.outer-container .input-container{border:1px solid black;height:100%;width:100%;display:flex;flex-wrap:wrap}.outer-container .input-container textarea,.outer-container .input-container input{all:unset;flex:1;min-width:50px}.outer-container .input-container .chip{margin:10px 0 10px 10px;padding:3px 10px;border-radius:16px;background:var(--Gray-100, #F2F4F7);color:var(--Gray-700, #344054);font-family:Inter;font-size:14px;font-weight:500;line-height:20px;height:25px}.outer-container .input-container .chip:nth-child(1){margin-left:0}\n"] }]
|
|
96
96
|
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.ClientApiService }, { type: i3.NgbActiveModal }, { type: i4.ToastService }] });
|
|
@@ -211,10 +211,10 @@ export class ReportConfigurationComponent {
|
|
|
211
211
|
}
|
|
212
212
|
});
|
|
213
213
|
}
|
|
214
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
215
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: ReportConfigurationComponent, selector: "lib-report-configuration", ngImport: i0, template: "<form [formGroup]=\"reportConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \">\r\n <div class=\"col-12 mb-5\">\r\n <div class=\"d-flex justify-content-end\">\r\n <button (click)=\"openAddModal()\" type=\"button\"\r\n class=\"btn btn-primary align-items-end\">\r\n <span class=\"me-2\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M10.0003 4.16663V15.8333M4.16699 9.99996H15.8337\" stroke=\"white\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n Add Report\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"loading\">\r\n <div\r\n class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div\r\n class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\"\r\n src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container formArrayName=\"reports\">\r\n <ng-container *ngFor=\"let report of reportsFormArray.controls; let i = index\" [formGroupName]=\"i\">\r\n <div *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" class=\"d-flex justify-content-end mt-5\">\r\n <div *ngIf=\"getReportDisabled(i)\" (click)=\"enableForm(i)\" type=\"button\"\r\n class=\" align-items-end\">\r\n <span class=\"me-2\">\r\n <svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_13410_52264)\">\r\n <rect x=\"2\" y=\"1\" width=\"36\" height=\"36\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"35\" height=\"35\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_13410_52264)\">\r\n <path\r\n d=\"M24.167 11.4999C24.3859 11.2811 24.6457 11.1074 24.9317 10.989C25.2176 10.8705 25.5241 10.8096 25.8337 10.8096C26.1432 10.8096 26.4497 10.8705 26.7357 10.989C27.0216 11.1074 27.2815 11.2811 27.5003 11.4999C27.7192 11.7188 27.8928 11.9786 28.0113 12.2646C28.1297 12.5506 28.1907 12.8571 28.1907 13.1666C28.1907 13.4761 28.1297 13.7826 28.0113 14.0686C27.8928 14.3546 27.7192 14.6144 27.5003 14.8333L16.2503 26.0833L11.667 27.3333L12.917 22.7499L24.167 11.4999Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_13410_52264\" x=\"0\" y=\"0\" width=\"40\" height=\"40\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_13410_52264\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_13410_52264\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_13410_52264\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(10 9)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n \r\n <div *ngIf=\"getReportDisabled(i)\" (click)=\"deleteReport(report)\"\r\n class=\"align-items-end cursor-pointer\">\r\n <span class=\"me-2\">\r\n <svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_13252_178642)\">\r\n <rect x=\"2\" y=\"1\" width=\"36\" height=\"36\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"35\" height=\"35\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M12.5 14.0001H14.1667M14.1667 14.0001H27.5M14.1667 14.0001V25.6667C14.1667 26.1088 14.3423 26.5327 14.6548 26.8453C14.9674 27.1578 15.3913 27.3334 15.8333 27.3334H24.1667C24.6087 27.3334 25.0326 27.1578 25.3452 26.8453C25.6577 26.5327 25.8333 26.1088 25.8333 25.6667V14.0001H14.1667ZM16.6667 14.0001V12.3334C16.6667 11.8914 16.8423 11.4675 17.1548 11.1549C17.4674 10.8423 17.8913 10.6667 18.3333 10.6667H21.6667C22.1087 10.6667 22.5326 10.8423 22.8452 11.1549C23.1577 11.4675 23.3333 11.8914 23.3333 12.3334V14.0001M18.3333 18.1667V23.1667M21.6667 18.1667V23.1667\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_13252_178642\" x=\"0\" y=\"0\" width=\"40\" height=\"40\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_13252_178642\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_13252_178642\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg></span>\r\n </div>\r\n\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-6 col-xl-6 col-xxl-6 mb-5\">\r\n <label [for]=\"'reportName' + i\" class=\"form-label\">Report Name <span class=\"alert-required\"></span></label>\r\n <input formControlName=\"reportName\" type=\"text\" class=\"form-control disabled\" [id]=\"'reportName' + i\" autocomplete=\"off\">\r\n </div>\r\n\r\n <div class=\"col-md-12 col-lg-6 col-xl-6 col-xxl-6 mb-5\">\r\n <label [for]=\"'fileType' + i\" class=\"form-label\">File Type <span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileType\" type=\"text\" class=\"form-control disabled-input\" [id]=\"'fileType' + i\"\r\n autocomplete=\"off\" [ngClass]=\"getReportDisabled(i)? 'disabled' : ''\">\r\n </div>\r\n\r\n\r\n <div class=\"col-md-12 col-lg-12 col-xl-12 col-xxl-12 mb-5\">\r\n <label [for]=\"'email' + i\" class=\"form-label\">Receivers Email <span class=\"alert-required\"></span></label>\r\n <div class=\"outer-container\">\r\n <div class=\"input-container form-control\" formArrayName=\"email\">\r\n <ng-container *ngFor=\"let email of getEmails(i)?.controls; let j = index\">\r\n <span class=\"chip\">\r\n <span class=\"me-3\">{{ email.value }}</span>\r\n <span *ngIf=\"reportConfigurationForm.enabled\" (click)=\"removeChip(i,j)\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path d=\"M9 3L3 9M3 3L9 9\" stroke=\"#667085\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n <input style=\"min-height: 44px;\" (keydown)=\"onKeyDown($event,i)\" type=\"text\" id=\"emailValue\"\r\n [disabled]=\"getReportDisabled(i) === true\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"!getReportDisabled(i)\">\r\n <div class=\"mb-5 w-100 footer-separator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4 align-content-center\" (click)=\"onCancel()\">Cancel</a>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onSubmit(report)\"><span>Save\r\n Changes</span></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.footer-seperator{border-top:1px solid #EAECF0}:host{width:100%;height:100%}.outer-container{position:relative}.outer-container .form-control{padding-top:0;padding-bottom:0}.outer-container .input-container{border:1px solid black;height:100%;width:100%;display:flex;flex-wrap:wrap}.outer-container .input-container input{all:unset;flex:1;min-width:50px}.outer-container .input-container .chip{margin:10px 0 10px 10px;padding:3px 10px;border-radius:16px;background:var(--Gray-100, #F2F4F7);color:var(--Gray-700, #344054);font-family:Inter;font-size:14px;font-weight:500;line-height:20px}.outer-container .input-container .chip:nth-child(1){margin-left:0}.sso-label{color:var(--Gray-700, #344054);font-family:Inter;font-size:18px;font-weight:600;line-height:28px}.sso-sub{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-weight:500;line-height:24px}.disabled{background-color:#f9fafb!important;pointer-events:none!important}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
214
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ReportConfigurationComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ClientApiService }, { token: i3.NgbModal }, { token: i4.ToastService }, { token: i0.ChangeDetectorRef }, { token: i5.GlobalStateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
215
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ReportConfigurationComponent, selector: "lib-report-configuration", ngImport: i0, template: "<form [formGroup]=\"reportConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \">\r\n <div class=\"col-12 mb-5\">\r\n <div class=\"d-flex justify-content-end\">\r\n <button (click)=\"openAddModal()\" type=\"button\"\r\n class=\"btn btn-primary align-items-end\">\r\n <span class=\"me-2\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M10.0003 4.16663V15.8333M4.16699 9.99996H15.8337\" stroke=\"white\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n Add Report\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"loading\">\r\n <div\r\n class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div\r\n class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\"\r\n src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container formArrayName=\"reports\">\r\n <ng-container *ngFor=\"let report of reportsFormArray.controls; let i = index\" [formGroupName]=\"i\">\r\n <div *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" class=\"d-flex justify-content-end mt-5\">\r\n <div *ngIf=\"getReportDisabled(i)\" (click)=\"enableForm(i)\" type=\"button\"\r\n class=\" align-items-end\">\r\n <span class=\"me-2\">\r\n <svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_13410_52264)\">\r\n <rect x=\"2\" y=\"1\" width=\"36\" height=\"36\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"35\" height=\"35\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_13410_52264)\">\r\n <path\r\n d=\"M24.167 11.4999C24.3859 11.2811 24.6457 11.1074 24.9317 10.989C25.2176 10.8705 25.5241 10.8096 25.8337 10.8096C26.1432 10.8096 26.4497 10.8705 26.7357 10.989C27.0216 11.1074 27.2815 11.2811 27.5003 11.4999C27.7192 11.7188 27.8928 11.9786 28.0113 12.2646C28.1297 12.5506 28.1907 12.8571 28.1907 13.1666C28.1907 13.4761 28.1297 13.7826 28.0113 14.0686C27.8928 14.3546 27.7192 14.6144 27.5003 14.8333L16.2503 26.0833L11.667 27.3333L12.917 22.7499L24.167 11.4999Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_13410_52264\" x=\"0\" y=\"0\" width=\"40\" height=\"40\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_13410_52264\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_13410_52264\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_13410_52264\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(10 9)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n \r\n <div *ngIf=\"getReportDisabled(i)\" (click)=\"deleteReport(report)\"\r\n class=\"align-items-end cursor-pointer\">\r\n <span class=\"me-2\">\r\n <svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_13252_178642)\">\r\n <rect x=\"2\" y=\"1\" width=\"36\" height=\"36\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"35\" height=\"35\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M12.5 14.0001H14.1667M14.1667 14.0001H27.5M14.1667 14.0001V25.6667C14.1667 26.1088 14.3423 26.5327 14.6548 26.8453C14.9674 27.1578 15.3913 27.3334 15.8333 27.3334H24.1667C24.6087 27.3334 25.0326 27.1578 25.3452 26.8453C25.6577 26.5327 25.8333 26.1088 25.8333 25.6667V14.0001H14.1667ZM16.6667 14.0001V12.3334C16.6667 11.8914 16.8423 11.4675 17.1548 11.1549C17.4674 10.8423 17.8913 10.6667 18.3333 10.6667H21.6667C22.1087 10.6667 22.5326 10.8423 22.8452 11.1549C23.1577 11.4675 23.3333 11.8914 23.3333 12.3334V14.0001M18.3333 18.1667V23.1667M21.6667 18.1667V23.1667\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_13252_178642\" x=\"0\" y=\"0\" width=\"40\" height=\"40\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_13252_178642\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_13252_178642\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg></span>\r\n </div>\r\n\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-6 col-xl-6 col-xxl-6 mb-5\">\r\n <label [for]=\"'reportName' + i\" class=\"form-label\">Report Name <span class=\"alert-required\"></span></label>\r\n <input formControlName=\"reportName\" type=\"text\" class=\"form-control disabled\" [id]=\"'reportName' + i\" autocomplete=\"off\">\r\n </div>\r\n\r\n <div class=\"col-md-12 col-lg-6 col-xl-6 col-xxl-6 mb-5\">\r\n <label [for]=\"'fileType' + i\" class=\"form-label\">File Type <span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileType\" type=\"text\" class=\"form-control disabled-input\" [id]=\"'fileType' + i\"\r\n autocomplete=\"off\" [ngClass]=\"getReportDisabled(i)? 'disabled' : ''\">\r\n </div>\r\n\r\n\r\n <div class=\"col-md-12 col-lg-12 col-xl-12 col-xxl-12 mb-5\">\r\n <label [for]=\"'email' + i\" class=\"form-label\">Receivers Email <span class=\"alert-required\"></span></label>\r\n <div class=\"outer-container\">\r\n <div class=\"input-container form-control\" formArrayName=\"email\">\r\n <ng-container *ngFor=\"let email of getEmails(i)?.controls; let j = index\">\r\n <span class=\"chip\">\r\n <span class=\"me-3\">{{ email.value }}</span>\r\n <span *ngIf=\"reportConfigurationForm.enabled\" (click)=\"removeChip(i,j)\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path d=\"M9 3L3 9M3 3L9 9\" stroke=\"#667085\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n <input style=\"min-height: 44px;\" (keydown)=\"onKeyDown($event,i)\" type=\"text\" id=\"emailValue\"\r\n [disabled]=\"getReportDisabled(i) === true\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"!getReportDisabled(i)\">\r\n <div class=\"mb-5 w-100 footer-separator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4 align-content-center\" (click)=\"onCancel()\">Cancel</a>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onSubmit(report)\"><span>Save\r\n Changes</span></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.footer-seperator{border-top:1px solid #EAECF0}:host{width:100%;height:100%}.outer-container{position:relative}.outer-container .form-control{padding-top:0;padding-bottom:0}.outer-container .input-container{border:1px solid black;height:100%;width:100%;display:flex;flex-wrap:wrap}.outer-container .input-container input{all:unset;flex:1;min-width:50px}.outer-container .input-container .chip{margin:10px 0 10px 10px;padding:3px 10px;border-radius:16px;background:var(--Gray-100, #F2F4F7);color:var(--Gray-700, #344054);font-family:Inter;font-size:14px;font-weight:500;line-height:20px}.outer-container .input-container .chip:nth-child(1){margin-left:0}.sso-label{color:var(--Gray-700, #344054);font-family:Inter;font-size:18px;font-weight:600;line-height:28px}.sso-sub{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-weight:500;line-height:24px}.disabled{background-color:#f9fafb!important;pointer-events:none!important}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
216
216
|
}
|
|
217
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
217
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ReportConfigurationComponent, decorators: [{
|
|
218
218
|
type: Component,
|
|
219
219
|
args: [{ selector: 'lib-report-configuration', template: "<form [formGroup]=\"reportConfigurationForm\">\r\n <div class=\"row\">\r\n <ng-container *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \">\r\n <div class=\"col-12 mb-5\">\r\n <div class=\"d-flex justify-content-end\">\r\n <button (click)=\"openAddModal()\" type=\"button\"\r\n class=\"btn btn-primary align-items-end\">\r\n <span class=\"me-2\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M10.0003 4.16663V15.8333M4.16699 9.99996H15.8337\" stroke=\"white\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n Add Report\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"loading\">\r\n <div\r\n class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div\r\n class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src w-25\"\r\n src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container formArrayName=\"reports\">\r\n <ng-container *ngFor=\"let report of reportsFormArray.controls; let i = index\" [formGroupName]=\"i\">\r\n <div *ngIf=\"(gs.userAccess | async)?.settings_configuration_isEdit \" class=\"d-flex justify-content-end mt-5\">\r\n <div *ngIf=\"getReportDisabled(i)\" (click)=\"enableForm(i)\" type=\"button\"\r\n class=\" align-items-end\">\r\n <span class=\"me-2\">\r\n <svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_13410_52264)\">\r\n <rect x=\"2\" y=\"1\" width=\"36\" height=\"36\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"35\" height=\"35\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_13410_52264)\">\r\n <path\r\n d=\"M24.167 11.4999C24.3859 11.2811 24.6457 11.1074 24.9317 10.989C25.2176 10.8705 25.5241 10.8096 25.8337 10.8096C26.1432 10.8096 26.4497 10.8705 26.7357 10.989C27.0216 11.1074 27.2815 11.2811 27.5003 11.4999C27.7192 11.7188 27.8928 11.9786 28.0113 12.2646C28.1297 12.5506 28.1907 12.8571 28.1907 13.1666C28.1907 13.4761 28.1297 13.7826 28.0113 14.0686C27.8928 14.3546 27.7192 14.6144 27.5003 14.8333L16.2503 26.0833L11.667 27.3333L12.917 22.7499L24.167 11.4999Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_13410_52264\" x=\"0\" y=\"0\" width=\"40\" height=\"40\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_13410_52264\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_13410_52264\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_13410_52264\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(10 9)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n \r\n <div *ngIf=\"getReportDisabled(i)\" (click)=\"deleteReport(report)\"\r\n class=\"align-items-end cursor-pointer\">\r\n <span class=\"me-2\">\r\n <svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_13252_178642)\">\r\n <rect x=\"2\" y=\"1\" width=\"36\" height=\"36\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"35\" height=\"35\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M12.5 14.0001H14.1667M14.1667 14.0001H27.5M14.1667 14.0001V25.6667C14.1667 26.1088 14.3423 26.5327 14.6548 26.8453C14.9674 27.1578 15.3913 27.3334 15.8333 27.3334H24.1667C24.6087 27.3334 25.0326 27.1578 25.3452 26.8453C25.6577 26.5327 25.8333 26.1088 25.8333 25.6667V14.0001H14.1667ZM16.6667 14.0001V12.3334C16.6667 11.8914 16.8423 11.4675 17.1548 11.1549C17.4674 10.8423 17.8913 10.6667 18.3333 10.6667H21.6667C22.1087 10.6667 22.5326 10.8423 22.8452 11.1549C23.1577 11.4675 23.3333 11.8914 23.3333 12.3334V14.0001M18.3333 18.1667V23.1667M21.6667 18.1667V23.1667\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_13252_178642\" x=\"0\" y=\"0\" width=\"40\" height=\"40\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_13252_178642\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_13252_178642\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg></span>\r\n </div>\r\n\r\n </div>\r\n \r\n <div class=\"col-md-12 col-lg-6 col-xl-6 col-xxl-6 mb-5\">\r\n <label [for]=\"'reportName' + i\" class=\"form-label\">Report Name <span class=\"alert-required\"></span></label>\r\n <input formControlName=\"reportName\" type=\"text\" class=\"form-control disabled\" [id]=\"'reportName' + i\" autocomplete=\"off\">\r\n </div>\r\n\r\n <div class=\"col-md-12 col-lg-6 col-xl-6 col-xxl-6 mb-5\">\r\n <label [for]=\"'fileType' + i\" class=\"form-label\">File Type <span class=\"alert-required\"></span></label>\r\n <input formControlName=\"fileType\" type=\"text\" class=\"form-control disabled-input\" [id]=\"'fileType' + i\"\r\n autocomplete=\"off\" [ngClass]=\"getReportDisabled(i)? 'disabled' : ''\">\r\n </div>\r\n\r\n\r\n <div class=\"col-md-12 col-lg-12 col-xl-12 col-xxl-12 mb-5\">\r\n <label [for]=\"'email' + i\" class=\"form-label\">Receivers Email <span class=\"alert-required\"></span></label>\r\n <div class=\"outer-container\">\r\n <div class=\"input-container form-control\" formArrayName=\"email\">\r\n <ng-container *ngFor=\"let email of getEmails(i)?.controls; let j = index\">\r\n <span class=\"chip\">\r\n <span class=\"me-3\">{{ email.value }}</span>\r\n <span *ngIf=\"reportConfigurationForm.enabled\" (click)=\"removeChip(i,j)\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path d=\"M9 3L3 9M3 3L9 9\" stroke=\"#667085\" stroke-width=\"1.5\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </span>\r\n </ng-container>\r\n <input style=\"min-height: 44px;\" (keydown)=\"onKeyDown($event,i)\" type=\"text\" id=\"emailValue\"\r\n [disabled]=\"getReportDisabled(i) === true\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"!getReportDisabled(i)\">\r\n <div class=\"mb-5 w-100 footer-separator\"></div>\r\n <div class=\"d-flex justify-content-end\">\r\n <a type=\"button\" class=\"btn btn-outline mt-1 me-4 align-content-center\" (click)=\"onCancel()\">Cancel</a>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onSubmit(report)\"><span>Save\r\n Changes</span></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</form>", styles: [".form-control{display:block;height:45px;padding:.5rem 1rem;font-size:1.1rem;font-weight:400;color:var(--Gray-500, #667085);-webkit-appearance:none;appearance:none;border-radius:8px!important;border:1px solid var(--Gray-300, #D0D5DD)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[disabled]{background-color:#f9fafb!important}.is-invalid{border-radius:8px!important;border:1px solid var(--Error-300, #FDA29B)!important;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280d!important;padding-right:calc(1.5em + .75rem)!important;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzIyMDFfMjA5NTApIj4KPHBhdGggZD0iTTcuOTk5NjcgNS4zMzM5OFY4LjAwMDY1TTcuOTk5NjcgMTAuNjY3M0g4LjAwNjM0TTE0LjY2NjMgOC4wMDA2NUMxNC42NjYzIDExLjY4MjYgMTEuNjgxNiAxNC42NjczIDcuOTk5NjcgMTQuNjY3M0M0LjMxNzc4IDE0LjY2NzMgMS4zMzMwMSAxMS42ODI2IDEuMzMzMDEgOC4wMDA2NUMxLjMzMzAxIDQuMzE4NzUgNC4zMTc3OCAxLjMzMzk4IDcuOTk5NjcgMS4zMzM5OEMxMS42ODE2IDEuMzMzOTggMTQuNjY2MyA0LjMxODc1IDE0LjY2NjMgOC4wMDA2NVoiIHN0cm9rZT0iI0YwNDQzOCIgc3Ryb2tlLXdpZHRoPSIxLjMzMzMzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yMjAxXzIwOTUwIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=)!important;background-repeat:no-repeat!important;background-position:right calc(.375em + .1875rem) center!important;background-size:calc(.75em + .375rem) calc(.75em + .375rem)!important}small{color:var(--Error-500, #F04438)!important;font-size:14px!important;font-weight:400!important;line-height:20px;display:block;margin-top:6px}.cancel{border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-family:Inter;font-size:14px;font-weight:600;line-height:20px;text-transform:capitalize}.apply{color:#fff;font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:20px;text-transform:capitalize}.footer-seperator{border-top:1px solid #EAECF0}:host{width:100%;height:100%}.outer-container{position:relative}.outer-container .form-control{padding-top:0;padding-bottom:0}.outer-container .input-container{border:1px solid black;height:100%;width:100%;display:flex;flex-wrap:wrap}.outer-container .input-container input{all:unset;flex:1;min-width:50px}.outer-container .input-container .chip{margin:10px 0 10px 10px;padding:3px 10px;border-radius:16px;background:var(--Gray-100, #F2F4F7);color:var(--Gray-700, #344054);font-family:Inter;font-size:14px;font-weight:500;line-height:20px}.outer-container .input-container .chip:nth-child(1){margin-left:0}.sso-label{color:var(--Gray-700, #344054);font-family:Inter;font-size:18px;font-weight:600;line-height:28px}.sso-sub{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-weight:500;line-height:24px}.disabled{background-color:#f9fafb!important;pointer-events:none!important}\n"] }]
|
|
220
220
|
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.ClientApiService }, { type: i3.NgbModal }, { type: i4.ToastService }, { type: i0.ChangeDetectorRef }, { type: i5.GlobalStateService }] });
|