tango-app-ui-manage-settings 3.0.41-dev → 3.0.43-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 +4 -4
- package/esm2022/lib/components/brand-details/billing-details/billing-details.component.mjs +4 -4
- package/esm2022/lib/components/brand-details/brand-details.component.mjs +4 -4
- package/esm2022/lib/components/brand-details/brand-info/brand-info.component.mjs +4 -4
- package/esm2022/lib/components/brand-details/signatory-details/signatory-details.component.mjs +4 -4
- package/esm2022/lib/components/configurations/audit-configuration/audit-configuration.component.mjs +4 -4
- package/esm2022/lib/components/configurations/configurations.component.mjs +4 -4
- package/esm2022/lib/components/configurations/domain-details/domain-details.component.mjs +4 -4
- package/esm2022/lib/components/configurations/email-configuration/email-configuration.component.mjs +4 -4
- package/esm2022/lib/components/configurations/employee-training/employee-training.component.mjs +4 -4
- package/esm2022/lib/components/configurations/feature-configuration/feature-configuration.component.mjs +4 -4
- package/esm2022/lib/components/configurations/report-configuration/add-report/add-report.component.mjs +4 -4
- package/esm2022/lib/components/configurations/report-configuration/report-configuration.component.mjs +4 -4
- package/esm2022/lib/components/configurations/ticket-configuration/ticket-configuration.component.mjs +4 -4
- package/esm2022/lib/components/configurations/user-configuration/user-configuration.component.mjs +4 -4
- package/esm2022/lib/components/contact-directory/contact-directory.component.mjs +4 -4
- package/esm2022/lib/components/contact-directory/detele-spoc/detele-spoc.component.mjs +4 -4
- package/esm2022/lib/components/contact-directory/edit-spoc/edit-spoc.component.mjs +4 -4
- package/esm2022/lib/components/documents/documents.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/payments-subscription.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/add-stepprice/add-stepprice.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/credit-note/credit-note.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/model-content/model-content.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/multidropdown/multidropdown.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/need-help/need-help.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/pricing-revised/pricing-revised.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/product-confirmation/product-confirmation.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/skip-trail/skip-trail.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/subscription-approval/subscription-approval.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/successfull-subscription/successfull-subscription.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/suspended/suspended.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/trail-expired/trail-expired.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/trail-settings/trail-settings.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/unsubscribe-request/unsubscribe-request.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/update/update.component.mjs +4 -4
- package/esm2022/lib/components/payments-subscription/subscription-popups/upgrade-plan/upgrade-plan.component.mjs +4 -4
- package/esm2022/lib/components/reactive-select/reactive-select.component.mjs +4 -4
- package/esm2022/lib/components/tango-manage-settings/tango-manage-settings.component.mjs +4 -4
- package/esm2022/lib/directives/dnd.directive.mjs +4 -4
- package/esm2022/lib/services/client-api.service.mjs +4 -4
- package/esm2022/lib/services/payment-subscription.service.mjs +4 -4
- package/esm2022/lib/tango-manage-settings-routing.module.mjs +5 -5
- package/esm2022/lib/tango-manage-settings.module.mjs +5 -5
- package/fesm2022/tango-app-ui-manage-settings.mjs +131 -131
- package/fesm2022/tango-app-ui-manage-settings.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -40,13 +40,13 @@ export class TrailSettingsComponent {
|
|
|
40
40
|
subscribed() {
|
|
41
41
|
this.activeModal.close('subscribed');
|
|
42
42
|
}
|
|
43
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
44
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
43
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: TrailSettingsComponent, deps: [{ token: i1.NgbModal }, { token: i2.PaymentSubscriptionService }, { token: i3.ToastService }, { token: i1.NgbActiveModal }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: TrailSettingsComponent, selector: "lib-trail-settings", inputs: { settingsvalue: "settingsvalue" }, ngImport: i0, template: "<div *ngIf=\"settingsvalue === 'Extend Trial'\" class=\"mx-8 py-8\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/settings-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading my-4 ms-1\">Extend your trial</div>\r\n\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div>\r\n <label class=\"headingtext mb-4\">Please pick no of days for trial extension.</label>\r\n <div class=\"w-lg-100 position-relative mt-2\">\r\n <div\r\n class=\"position-absolute translate-middle-y top-50 me-5 ps-3 ticketDays\">\r\n <span class=\"svg-icon toggle-off svg-icon-1\"\r\n (click)=\"decreseCount()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\"\r\n height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M4.16699 10H15.8337\" stroke=\"#667085\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <input type=\"text\" class=\"form-control\" id=\"extendpayment\"\r\n style=\"text-align: center;\"\r\n value=\"{{count}}\" placeholder=\"\" readonly/>\r\n <div\r\n class=\"position-absolute translate-middle-y top-50 end-0 me-3\">\r\n <span class=\"svg-icon toggle-on svg-icon-1 ticketDays\"\r\n (click)=\"increaseCount()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\"\r\n height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\">\r\n <path\r\n d=\"M8.49967 3.33301V12.6663M3.83301 7.99967H13.1663\"\r\n stroke=\"#667085\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex mt-6 py-3\">\r\n <button type=\"submit\" (click)=\"activeModal.dismiss()\"\r\n class=\"btn-outline btn cancel me-4 w-50\">Cancel</button>\r\n <button type=\"button\" (click)=\"trailextended()\"\r\n tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-50\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Submit</span></button>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"settingsvalue === 'Subscribe Product'\" class=\"modal-content\" >\r\n <div class=\"p-6\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/settings-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Subscribe product</div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n \r\n <div class=\"contenttext mt-4 mx-2\">By clicking \u2018Add to subscription\u2019 this product will be<br> moved to subscribed products\r\n </div>\r\n</div>\r\n<div class=\"d-flex mt-5 py-3\">\r\n <button type=\"button\" (click)=\"subscribed()\"\r\n tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-100\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Add To Subscription</span></button>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n", styles: [".heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
45
45
|
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: TrailSettingsComponent, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
48
|
args: [{ selector: 'lib-trail-settings', template: "<div *ngIf=\"settingsvalue === 'Extend Trial'\" class=\"mx-8 py-8\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/settings-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading my-4 ms-1\">Extend your trial</div>\r\n\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div>\r\n <label class=\"headingtext mb-4\">Please pick no of days for trial extension.</label>\r\n <div class=\"w-lg-100 position-relative mt-2\">\r\n <div\r\n class=\"position-absolute translate-middle-y top-50 me-5 ps-3 ticketDays\">\r\n <span class=\"svg-icon toggle-off svg-icon-1\"\r\n (click)=\"decreseCount()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\"\r\n height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M4.16699 10H15.8337\" stroke=\"#667085\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <input type=\"text\" class=\"form-control\" id=\"extendpayment\"\r\n style=\"text-align: center;\"\r\n value=\"{{count}}\" placeholder=\"\" readonly/>\r\n <div\r\n class=\"position-absolute translate-middle-y top-50 end-0 me-3\">\r\n <span class=\"svg-icon toggle-on svg-icon-1 ticketDays\"\r\n (click)=\"increaseCount()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\"\r\n height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\">\r\n <path\r\n d=\"M8.49967 3.33301V12.6663M3.83301 7.99967H13.1663\"\r\n stroke=\"#667085\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex mt-6 py-3\">\r\n <button type=\"submit\" (click)=\"activeModal.dismiss()\"\r\n class=\"btn-outline btn cancel me-4 w-50\">Cancel</button>\r\n <button type=\"button\" (click)=\"trailextended()\"\r\n tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-50\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Submit</span></button>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"settingsvalue === 'Subscribe Product'\" class=\"modal-content\" >\r\n <div class=\"p-6\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/settings-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Subscribe product</div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n \r\n <div class=\"contenttext mt-4 mx-2\">By clicking \u2018Add to subscription\u2019 this product will be<br> moved to subscribed products\r\n </div>\r\n</div>\r\n<div class=\"d-flex mt-5 py-3\">\r\n <button type=\"button\" (click)=\"subscribed()\"\r\n tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-100\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Add To Subscription</span></button>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n", styles: [".heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}\n"] }]
|
|
49
49
|
}], ctorParameters: () => [{ type: i1.NgbModal }, { type: i2.PaymentSubscriptionService }, { type: i3.ToastService }, { type: i1.NgbActiveModal }], propDecorators: { settingsvalue: [{
|
|
50
50
|
type: Input
|
|
51
51
|
}] } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhaWwtc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGFuZ28tbWFuYWdlLXNldHRpbmdzL3NyYy9saWIvY29tcG9uZW50cy9wYXltZW50cy1zdWJzY3JpcHRpb24vc3Vic2NyaXB0aW9uLXBvcHVwcy90cmFpbC1zZXR0aW5ncy90cmFpbC1zZXR0aW5ncy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3RyYWlsLXNldHRpbmdzL3RyYWlsLXNldHRpbmdzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFVakQsTUFBTSxPQUFPLHNCQUFzQjtJQVMxQjtJQUFpQztJQUErRDtJQUE2QjtJQVIzSCxhQUFhLEdBQVcsRUFBRSxDQUFBO0lBQ25DLEtBQUssR0FBVyxDQUFDLENBQUM7SUFDbEIsU0FBUyxHQUFRLEVBQUUsQ0FBQztJQUNwQixXQUFXLEdBQVcsSUFBSSxDQUFDO0lBQzNCLGlCQUFpQixHQUFXLEtBQUssQ0FBQztJQUdwQyxZQUNTLFlBQXNCLEVBQVcsMEJBQXNELEVBQVMsS0FBa0IsRUFBVyxXQUEyQjtRQUF4SixpQkFBWSxHQUFaLFlBQVksQ0FBVTtRQUFXLCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBNEI7UUFBUyxVQUFLLEdBQUwsS0FBSyxDQUFhO1FBQVcsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO0lBRWhLLENBQUM7SUFFQSxZQUFZO1FBQ1YsSUFBRyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNsQixJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBRyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsRUFBRTtZQUNsQixJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFDRCxhQUFhO1FBQ1gsSUFBSSxJQUFJLEdBQUc7WUFDVCxLQUFLLEVBQUMsYUFBYTtZQUNuQixLQUFLLEVBQUMsSUFBSSxDQUFDLEtBQUs7U0FDakIsQ0FBQTtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFDRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkMsQ0FBQzt3R0FqQ1Usc0JBQXNCOzRGQUF0QixzQkFBc0Isc0dDVm5DLDZySEFpRUE7OzRGRHZEYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0Usb0JBQW9COzhLQUtyQixhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ2JBY3RpdmVNb2RhbCwgTmdiTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvcGF5bWVudC1zdWJzY3JpcHRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdHJhaWwtc2V0dGluZ3MnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cmFpbC1zZXR0aW5ncy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3RyYWlsLXNldHRpbmdzLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhaWxTZXR0aW5nc0NvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgc2V0dGluZ3N2YWx1ZTogc3RyaW5nID0gXCJcIlxyXG4gIGNvdW50OiBudW1iZXIgPSAxO1xyXG4gIGRheXNDb3VudDogYW55ID0gJyc7XHJcbiAgZXh0ZW5kdHJhaWw6Ym9vbGVhbiA9IHRydWU7XHJcbiAgc3Vic2NyaWJlZHByb2R1Y3Q6Ym9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHJcbmNvbnN0cnVjdG9yKFxyXG4gIHB1YmxpYyBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLCAgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UscHJpdmF0ZSB0b2FzdDpUb2FzdFNlcnZpY2UsICAgcHVibGljIGFjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCxcclxuKSB7XHJcbiB9XHJcblxyXG4gIGRlY3Jlc2VDb3VudCgpOiBhbnkge1xyXG4gICAgaWYodGhpcy5jb3VudCAhPSAxKSB7XHJcbiAgICAgIHRoaXMuY291bnQgLT0gMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGluY3JlYXNlQ291bnQoKTogYW55IHtcclxuICAgIGlmKHRoaXMuY291bnQgPCAxNCkge1xyXG4gICAgICB0aGlzLmNvdW50ICs9IDE7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRyYWlsZXh0ZW5kZWQoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdGl0bGU6J3RyaWFsZXh0ZW5kJyxcclxuICAgICAgY291bnQ6dGhpcy5jb3VudFxyXG4gICAgfVxyXG4gICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZShkYXRhKTtcclxuICB9XHJcbiAgc3Vic2NyaWJlZCgpIHtcclxuICAgIHRoaXMuYWN0aXZlTW9kYWwuY2xvc2UoJ3N1YnNjcmliZWQnKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cInNldHRpbmdzdmFsdWUgPT09ICdFeHRlbmQgVHJpYWwnXCIgY2xhc3M9XCJteC04IHB5LThcIj5cclxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvc2V0dGluZ3MtaWNvbi5zdmdcIiBhbHQ9XCJcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZyBteS00IG1zLTFcIj5FeHRlbmQgeW91ciB0cmlhbDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZ2LXJvdyBmdi1wbHVnaW5zLWljb24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJoZWFkaW5ndGV4dCBtYi00XCI+UGxlYXNlIHBpY2sgbm8gb2YgZGF5cyBmb3IgdHJpYWwgZXh0ZW5zaW9uLjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1sZy0xMDAgcG9zaXRpb24tcmVsYXRpdmUgbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSB0cmFuc2xhdGUtbWlkZGxlLXkgdG9wLTUwIG1lLTUgcHMtMyB0aWNrZXREYXlzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gdG9nZ2xlLW9mZiBzdmctaWNvbi0xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkZWNyZXNlQ291bnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTQuMTY2OTkgMTBIMTUuODMzN1wiIHN0cm9rZT1cIiM2NjcwODVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiZXh0ZW5kcGF5bWVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPVwie3tjb3VudH19XCIgcGxhY2Vob2xkZXI9XCJcIiByZWFkb25seS8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIHRyYW5zbGF0ZS1taWRkbGUteSB0b3AtNTAgZW5kLTAgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHRvZ2dsZS1vbiBzdmctaWNvbi0xIHRpY2tldERheXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImluY3JlYXNlQ291bnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxN1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE3IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguNDk5NjcgMy4zMzMwMVYxMi42NjYzTTMuODMzMDEgNy45OTk2N0gxMy4xNjYzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC02IHB5LTNcIj5cclxuICAgICAgICA8YnV0dG9uICB0eXBlPVwic3VibWl0XCIgIChjbGljayk9XCJhY3RpdmVNb2RhbC5kaXNtaXNzKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGNhbmNlbCBtZS00IHctNTBcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwidHJhaWxleHRlbmRlZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG5nLXN0YXItaW5zZXJ0ZWQgdy01MFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IG5vd3JhcDtcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdWJtaXRcIj5TdWJtaXQ8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cInNldHRpbmdzdmFsdWUgPT09ICdTdWJzY3JpYmUgUHJvZHVjdCdcIiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIiA+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC02XCI+XHJcbiAgICAgICAgPGRpdj48aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL3NldHRpbmdzLWljb24uc3ZnXCIgYWx0PVwiXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmcgbXQtNCBtcy0xXCI+U3Vic2NyaWJlIHByb2R1Y3Q8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZ2LXJvdyBmdi1wbHVnaW5zLWljb24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50dGV4dCBtdC00IG14LTJcIj5CeSBjbGlja2luZyDigJhBZGQgdG8gc3Vic2NyaXB0aW9u4oCZIHRoaXMgcHJvZHVjdCB3aWxsIGJlPGJyPiBtb3ZlZCB0byBzdWJzY3JpYmVkIHByb2R1Y3RzXHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiZC1mbGV4IG10LTUgcHktM1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgIChjbGljayk9XCJzdWJzY3JpYmVkKClcIlxyXG4gICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkIHctMTAwXCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3VibWl0XCI+QWRkIFRvIFN1YnNjcmlwdGlvbjwvc3Bhbj48L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -15,13 +15,13 @@ export class UnsubscribeRequestComponent {
|
|
|
15
15
|
unsubscribed() {
|
|
16
16
|
this.activeModal.close('unsubscribed');
|
|
17
17
|
}
|
|
18
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
19
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: UnsubscribeRequestComponent, deps: [{ token: i1.NgbActiveModal }, { token: i1.NgbModal }, { token: i2.PaymentSubscriptionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: UnsubscribeRequestComponent, selector: "lib-unsubscribe-request", inputs: { clientName: "clientName" }, ngImport: i0, template: "<div class=\"modal-content\">\r\n <div class=\"mt-4 mx-5\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/alert-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Unsubscribe {{clientName}}</div>\r\n </div>\r\n<div class=\"px-6 py-6\">\r\n <div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div>\r\n <label class=\"semi mb-4\">Are you sure you want to unsubscribe {{clientName}}</label>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex mt-3 py-1\">\r\n <button type=\"submit\" (click)=\"activeModal.dismiss()\"\r\n class=\"btn-outline btn cancel needhelp me-4 w-50\">No</button>\r\n <button type=\"button\" (click)=\"unsubscribed()\"\r\n tabindex=\"0\" class=\"btn btn-danger px-4 ng-star-inserted w-50\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Yes, Unsubscribe</span></button>\r\n </div>\r\n</div>\r\n</div>", styles: [".heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.semi{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.needhelp{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:600!important;line-height:20px;text-transform:capitalize}\n"] });
|
|
20
20
|
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: UnsubscribeRequestComponent, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
23
|
args: [{ selector: 'lib-unsubscribe-request', template: "<div class=\"modal-content\">\r\n <div class=\"mt-4 mx-5\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/alert-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Unsubscribe {{clientName}}</div>\r\n </div>\r\n<div class=\"px-6 py-6\">\r\n <div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div>\r\n <label class=\"semi mb-4\">Are you sure you want to unsubscribe {{clientName}}</label>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"d-flex mt-3 py-1\">\r\n <button type=\"submit\" (click)=\"activeModal.dismiss()\"\r\n class=\"btn-outline btn cancel needhelp me-4 w-50\">No</button>\r\n <button type=\"button\" (click)=\"unsubscribed()\"\r\n tabindex=\"0\" class=\"btn btn-danger px-4 ng-star-inserted w-50\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Yes, Unsubscribe</span></button>\r\n </div>\r\n</div>\r\n</div>", styles: [".heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.semi{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.needhelp{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:600!important;line-height:20px;text-transform:capitalize}\n"] }]
|
|
24
24
|
}], ctorParameters: () => [{ type: i1.NgbActiveModal }, { type: i1.NgbModal }, { type: i2.PaymentSubscriptionService }], propDecorators: { clientName: [{
|
|
25
25
|
type: Input
|
|
26
26
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3Vuc3Vic2NyaWJlLXJlcXVlc3QvdW5zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3Vuc3Vic2NyaWJlLXJlcXVlc3QvdW5zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFDLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVNoRCxNQUFNLE9BQU8sMkJBQTJCO0lBRzdCO0lBQXFDO0lBQStCO0lBRnBFLFVBQVUsR0FBVSxFQUFFLENBQUM7SUFDaEMsWUFDUyxXQUEyQixFQUFVLFlBQXFCLEVBQVUsMEJBQXNEO1FBQTFILGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFTO1FBQVUsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE0QjtJQUMvSCxDQUFDO0lBRUwsWUFBWTtRQUNWLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7d0dBUlUsMkJBQTJCOzRGQUEzQiwyQkFBMkIscUdDVHhDLDZqQ0FzQk07OzRGRGJPLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx5QkFBeUI7bUpBSzFCLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwsIE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3BheW1lbnQtc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdW5zdWJzY3JpYmUtcmVxdWVzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Vuc3Vic2NyaWJlLXJlcXVlc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi91bnN1YnNjcmliZS1yZXF1ZXN0LmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5zdWJzY3JpYmVSZXF1ZXN0Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBjbGllbnROYW1lOnN0cmluZyA9ICcnO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGFjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCwgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6TmdiTW9kYWwsIHByaXZhdGUgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2U6IFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLFxyXG4gICkgeyB9XHJcbiAgXHJcbiAgdW5zdWJzY3JpYmVkKCkge1xyXG4gICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZSgndW5zdWJzY3JpYmVkJyk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtdC00IG14LTVcIj5cclxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvYWxlcnQtaWNvbi5zdmdcIiBhbHQ9XCJcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZyBtdC00IG1zLTFcIj5VbnN1YnNjcmliZSB7e2NsaWVudE5hbWV9fTwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJweC02IHB5LTZcIj5cclxuICAgIDxkaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBmdi1yb3cgZnYtcGx1Z2lucy1pY29uLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2VtaSBtYi00XCI+QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVuc3Vic2NyaWJlIHt7Y2xpZW50TmFtZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0zIHB5LTFcIj5cclxuICAgICAgICA8YnV0dG9uICB0eXBlPVwic3VibWl0XCIgIChjbGljayk9XCJhY3RpdmVNb2RhbC5kaXNtaXNzKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGNhbmNlbCBuZWVkaGVscCBtZS00IHctNTBcIj5ObzwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJ1bnN1YnNjcmliZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBweC00IG5nLXN0YXItaW5zZXJ0ZWQgdy01MFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IG5vd3JhcDtcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdWJtaXRcIj5ZZXMsIFVuc3Vic2NyaWJlPC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuPC9kaXY+Il19
|
package/esm2022/lib/components/payments-subscription/subscription-popups/update/update.component.mjs
CHANGED
|
@@ -79,10 +79,10 @@ export class UpdateComponent {
|
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
81
|
submitUpdate() { }
|
|
82
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
83
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
82
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: UpdateComponent, deps: [{ token: i1.NgbActiveModal }, { token: i1.NgbModal }, { token: i2.PaymentSubscriptionService }, { token: i3.FormBuilder }, { token: i0.ChangeDetectorRef }, { token: i4.ToastService }], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: UpdateComponent, selector: "lib-update", inputs: { modalData: "modalData" }, outputs: { passEntry: "passEntry" }, ngImport: i0, template: "<div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <div class=\"headerclass\">Add Address</div>\r\n <div class=\"btn btn-sm btn-icon btn-active-color-primary\" data-bs-dismiss=\"modal\">\r\n <span (click)=\"activeModal.dismiss()\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n <!-- <i class=\"ki-duotone ki-cross fs-1\"><span class=\"path1\"></span><span\r\n class=\"path2\"></span></i> -->\r\n </div>\r\n </div>\r\n <div class=\"modal-body \">\r\n <!--begin::Form-->\r\n <form [formGroup]=\"updateForm\" action=\"#\">\r\n\r\n <div class=\"d-flex flex-column mb-7 fv-row fv-plugins-icon-container\">\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">Brand Name</label>\r\n <input formControlName=\"brandName\" id=\"brandName\" readonly type=\"text\" class=\" ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">GST No / Tax ID</label>\r\n <input formControlName=\"gstNumber\" id=\"gstNumber\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"gstnumber?.errors?.required\" class=\"text-danger\"> \r\n GST Number is required.\r\n </div> -->\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">Company Name</label>\r\n <input formControlName=\"companyName\" id=\"companyName\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"billingaddress?.errors?.required\" class=\"text-danger\">\r\n Billing Address is required.\r\n </div> -->\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">Billing Address</label>\r\n <input formControlName=\"billingAddress\" id=\"billingAddress\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"billingaddress?.errors?.required\" class=\"text-danger\">\r\n Billing Address is required.\r\n </div> -->\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">PlaceOfSupply</label>\r\n <input formControlName=\"PlaceOfSupply\" id=\"PlaceOfSupply\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"billingaddress?.errors?.required\" class=\"text-danger\">\r\n Billing Address is required.\r\n </div> -->\r\n </div>\r\n </div>\r\n <div class=\"d-flex\">\r\n <button type=\"submit\" (click)=\"closeModal()\"\r\n class=\"btn-outline btn cancel me-4 w-50\">Cancel</button>\r\n <button type=\"button\" [disabled]=\"updateForm.invalid\" (click)=\"onSubmit()\"\r\n tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-50\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Submit </span></button>\r\n </div>\r\n \r\n </form>\r\n </div>\r\n <!--end::Modal body-->\r\n</div>", styles: [".close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}input{color:#101828;border:1px solid #D0D5DD!important;box-shadow:0 1px 2px #1018280d;border-radius:8px;font-size:16px;width:100%;padding:10px 14px;font-family:Inter;font-weight:400;line-height:24px}input:active,input:focus,input:focus-visible{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD)!important;box-shadow:0 1px 2px #1018280d;outline:none!important;background:var(--Gray-50, #F9FAFB)}.cancel{color:var(--Gray-700, #344054);font-family:Inter;font-size:16px;font-style:normal;font-weight:600;line-height:24px;text-transform:capitalize;border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF)}.submit{color:var(--White, #FFF);font-family:Inter;font-size:16px;font-style:normal;font-weight:600;line-height:24px;text-transform:capitalize}.headerclass{font-family:Inter;font-size:20px;font-weight:600;line-height:24.2px;text-align:left}\n"], dependencies: [{ kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
84
84
|
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: UpdateComponent, decorators: [{
|
|
86
86
|
type: Component,
|
|
87
87
|
args: [{ selector: 'lib-update', template: "<div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <div class=\"headerclass\">Add Address</div>\r\n <div class=\"btn btn-sm btn-icon btn-active-color-primary\" data-bs-dismiss=\"modal\">\r\n <span (click)=\"activeModal.dismiss()\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#667085\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n <!-- <i class=\"ki-duotone ki-cross fs-1\"><span class=\"path1\"></span><span\r\n class=\"path2\"></span></i> -->\r\n </div>\r\n </div>\r\n <div class=\"modal-body \">\r\n <!--begin::Form-->\r\n <form [formGroup]=\"updateForm\" action=\"#\">\r\n\r\n <div class=\"d-flex flex-column mb-7 fv-row fv-plugins-icon-container\">\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">Brand Name</label>\r\n <input formControlName=\"brandName\" id=\"brandName\" readonly type=\"text\" class=\" ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">GST No / Tax ID</label>\r\n <input formControlName=\"gstNumber\" id=\"gstNumber\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"gstnumber?.errors?.required\" class=\"text-danger\"> \r\n GST Number is required.\r\n </div> -->\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">Company Name</label>\r\n <input formControlName=\"companyName\" id=\"companyName\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"billingaddress?.errors?.required\" class=\"text-danger\">\r\n Billing Address is required.\r\n </div> -->\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">Billing Address</label>\r\n <input formControlName=\"billingAddress\" id=\"billingAddress\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"billingaddress?.errors?.required\" class=\"text-danger\">\r\n Billing Address is required.\r\n </div> -->\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"required headingtext mb-2\">PlaceOfSupply</label>\r\n <input formControlName=\"PlaceOfSupply\" id=\"PlaceOfSupply\" type=\"text\" class=\"ng-pristine ng-invalid ng-touched\"\r\n style=\"text-transform: capitalize;\">\r\n <!-- <div *ngIf=\"billingaddress?.errors?.required\" class=\"text-danger\">\r\n Billing Address is required.\r\n </div> -->\r\n </div>\r\n </div>\r\n <div class=\"d-flex\">\r\n <button type=\"submit\" (click)=\"closeModal()\"\r\n class=\"btn-outline btn cancel me-4 w-50\">Cancel</button>\r\n <button type=\"button\" [disabled]=\"updateForm.invalid\" (click)=\"onSubmit()\"\r\n tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-50\" style=\"white-space: nowrap;\"><span\r\n class=\"submit\">Submit </span></button>\r\n </div>\r\n \r\n </form>\r\n </div>\r\n <!--end::Modal body-->\r\n</div>", styles: [".close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}input{color:#101828;border:1px solid #D0D5DD!important;box-shadow:0 1px 2px #1018280d;border-radius:8px;font-size:16px;width:100%;padding:10px 14px;font-family:Inter;font-weight:400;line-height:24px}input:active,input:focus,input:focus-visible{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD)!important;box-shadow:0 1px 2px #1018280d;outline:none!important;background:var(--Gray-50, #F9FAFB)}.cancel{color:var(--Gray-700, #344054);font-family:Inter;font-size:16px;font-style:normal;font-weight:600;line-height:24px;text-transform:capitalize;border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF)}.submit{color:var(--White, #FFF);font-family:Inter;font-size:16px;font-style:normal;font-weight:600;line-height:24px;text-transform:capitalize}.headerclass{font-family:Inter;font-size:20px;font-weight:600;line-height:24.2px;text-align:left}\n"] }]
|
|
88
88
|
}], ctorParameters: () => [{ type: i1.NgbActiveModal }, { type: i1.NgbModal }, { type: i2.PaymentSubscriptionService }, { type: i3.FormBuilder }, { type: i0.ChangeDetectorRef }, { type: i4.ToastService }], propDecorators: { modalData: [{
|
|
@@ -90,4 +90,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
90
90
|
}], passEntry: [{
|
|
91
91
|
type: Output
|
|
92
92
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvdXBkYXRlL3VwZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3VwZGF0ZS91cGRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksR0FBaUMsTUFBTSxlQUFlLENBQUM7QUFHOUcsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBUzFDLE1BQU0sT0FBTyxlQUFlO0lBYWpCO0lBQXFDO0lBQWdDO0lBQWdFO0lBQ3BJO0lBQStCO0lBWnpDLFNBQVMsR0FBVyxFQUFFLENBQUM7SUFDdkIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixjQUFjLEdBQVcsRUFBRSxDQUFDO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsYUFBYSxHQUFXLEVBQUUsQ0FBQztJQUMzQixVQUFVLENBQVk7SUFDYixTQUFTLENBQU07SUFDZCxTQUFTLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFDM0MsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFMUMsWUFDUyxXQUEyQixFQUFVLFlBQXNCLEVBQVUsMEJBQXNELEVBQVUsRUFBZSxFQUNu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Qiw2b0lBa0VNOzsyRkRyRE8sZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZO3dPQVliLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIENoYW5nZURldGVjdG9yUmVmLCBPbkRlc3Ryb3ksIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYkFjdGl2ZU1vZGFsLCBOZ2JNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXVwZGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwZGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3VwZGF0ZS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVwZGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgYnJhbmROYW1lOiBzdHJpbmcgPSAnJztcclxuICBnc3ROdW1iZXI6IHN0cmluZyA9ICcnO1xyXG4gIGJpbGxpbmdBZGRyZXNzOiBzdHJpbmcgPSAnJztcclxuICBjb21wYW55TmFtZTogc3RyaW5nID0gJyc7XHJcbiAgUGxhY2VPZlN1cHBseTogc3RyaW5nID0gJyc7XHJcbiAgdXBkYXRlRm9ybTogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIG1vZGFsRGF0YTogYW55O1xyXG4gIEBPdXRwdXQoKSBwYXNzRW50cnk6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBhY3RpdmVNb2RhbDogTmdiQWN0aXZlTW9kYWwsIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgdG9hc3Q6IFRvYXN0U2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pbml0Rm9ybSgpXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMucGF0Y2hGb3JtKClcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgaW5pdEZvcm0oKSB7XHJcbiAgICB0aGlzLnVwZGF0ZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgYnJhbmROYW1lOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBnc3ROdW1iZXI6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgIGJpbGxpbmdBZGRyZXNzOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBjb21wYW55TmFtZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgUGxhY2VPZlN1cHBseTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG5cclxuICAgIH0pO1xyXG4gIH1cclxuICAvLyBnZXQgZ3N0bnVtYmVyKCkgeyByZXR1cm4gdGhpcy51cGRhdGVGb3JtLmdldCgnZ3N0TnVtYmVyJyk7IH1cclxuICAvLyBnZXQgYmlsbGluZ2FkZHJlc3MoKSB7IHJldHVybiB0aGlzLnVwZGF0ZUZvcm0uZ2V0KCdiaWxsaW5nQWRkcmVzcycpOyB9XHJcbiAgLy8gZ2V0IGNvbXBhbnlOYW1lKCkgeyByZXR1cm4gdGhpcy51cGRhdGVGb3JtLmdldCgnY29tcGFueU5hbWUnKTsgfVxyXG4gIC8vIGdldCBQbGFjZU9mU3VwcGx5KCkgeyByZXR1cm4gdGhpcy51cGRhdGVGb3JtLmdldCgnUGxhY2VPZlN1cHBseScpOyB9XHJcblxyXG4gIHBhdGNoRm9ybSgpIHtcclxuICAgIHRoaXMudXBkYXRlRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgYnJhbmROYW1lOiB0aGlzLm1vZGFsRGF0YT8uYnJhbmROYW1lLFxyXG4gICAgICBnc3ROdW1iZXI6IHRoaXMubW9kYWxEYXRhPy5nc3ROdW1iZXIsXHJcbiAgICAgIGJpbGxpbmdBZGRyZXNzOiB0aGlzLm1vZGFsRGF0YT8uYmlsbGluZ0FkZHJlc3MsXHJcbiAgICAgIFBsYWNlT2ZTdXBwbHk6IHRoaXMubW9kYWxEYXRhPy5QbGFjZU9mU3VwcGx5LFxyXG4gICAgICBjb21wYW55TmFtZTogdGhpcy5tb2RhbERhdGE/LmNvbXBhbnlOYW1lXHJcblxyXG4gICAgfSlcclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgfVxyXG5cclxuICBjbG9zZU1vZGFsKCkge1xyXG4gICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBjb25zdCByZXF1ZXN0RGF0YSA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMubW9kYWxEYXRhLmNsaWVudElkLFxyXG4gICAgICBnc3RObzogdGhpcy51cGRhdGVGb3JtLnZhbHVlLmdzdE51bWJlcixcclxuICAgICAgYmlsbGluZ0FkZHJlc3M6IHRoaXMudXBkYXRlRm9ybS52YWx1ZS5iaWxsaW5nQWRkcmVzcyxcclxuICAgICAgY29tcGFueU5hbWU6IHRoaXMudXBkYXRlRm9ybS52YWx1ZS5jb21wYW55TmFtZSxcclxuICAgICAgUGxhY2VPZlN1cHBseTogdGhpcy51cGRhdGVGb3JtLnZhbHVlLlBsYWNlT2ZTdXBwbHlcclxuXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudXBkYXRlYWRkYmlsbGluZyhyZXF1ZXN0RGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZShyZXF1ZXN0RGF0YSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHN1Ym1pdHRpbmcgdXBkYXRlOicsIGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbiAgc3VibWl0VXBkYXRlKCkgeyB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyY2xhc3NcIj5BZGQgQWRkcmVzczwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1pY29uIGJ0bi1hY3RpdmUtY29sb3ItcHJpbWFyeVwiIGRhdGEtYnMtZGlzbWlzcz1cIm1vZGFsXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIChjbGljayk9XCJhY3RpdmVNb2RhbC5kaXNtaXNzKClcIj48c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTUgNUw1IDE1TTUgNUwxNSAxNVwiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwhLS0gPGkgIGNsYXNzPVwia2ktZHVvdG9uZSBraS1jcm9zcyBmcy0xXCI+PHNwYW4gY2xhc3M9XCJwYXRoMVwiPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGF0aDJcIj48L3NwYW4+PC9pPiAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgXCI+XHJcbiAgICAgICAgPCEtLWJlZ2luOjpGb3JtLS0+XHJcbiAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJ1cGRhdGVGb3JtXCIgIGFjdGlvbj1cIiNcIj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gbWItNyBmdi1yb3cgZnYtcGx1Z2lucy1pY29uLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+QnJhbmQgTmFtZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0ICBmb3JtQ29udHJvbE5hbWU9XCJicmFuZE5hbWVcIiBpZD1cImJyYW5kTmFtZVwiIHJlYWRvbmx5IHR5cGU9XCJ0ZXh0XCIgIGNsYXNzPVwiIG5nLXByaXN0aW5lIG5nLWludmFsaWQgbmctdG91Y2hlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwidGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XCI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwicmVxdWlyZWQgaGVhZGluZ3RleHQgbWItMlwiPkdTVCBObyAvIFRheCBJRDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cImdzdE51bWJlclwiIGlkPVwiZ3N0TnVtYmVyXCIgdHlwZT1cInRleHRcIiAgIGNsYXNzPVwibmctcHJpc3RpbmUgbmctaW52YWxpZCBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiZ3N0bnVtYmVyPy5lcnJvcnM/LnJlcXVpcmVkXCIgIGNsYXNzPVwidGV4dC1kYW5nZXJcIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBHU1QgTnVtYmVyIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+Q29tcGFueSBOYW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiY29tcGFueU5hbWVcIiBpZD1cImNvbXBhbnlOYW1lXCIgdHlwZT1cInRleHRcIiAgIGNsYXNzPVwibmctcHJpc3RpbmUgbmctaW52YWxpZCBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiYmlsbGluZ2FkZHJlc3M/LmVycm9ycz8ucmVxdWlyZWRcIiAgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmlsbGluZyBBZGRyZXNzIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+QmlsbGluZyBBZGRyZXNzPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiYmlsbGluZ0FkZHJlc3NcIiBpZD1cImJpbGxpbmdBZGRyZXNzXCIgdHlwZT1cInRleHRcIiAgIGNsYXNzPVwibmctcHJpc3RpbmUgbmctaW52YWxpZCBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiYmlsbGluZ2FkZHJlc3M/LmVycm9ycz8ucmVxdWlyZWRcIiAgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmlsbGluZyBBZGRyZXNzIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+UGxhY2VPZlN1cHBseTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cIlBsYWNlT2ZTdXBwbHlcIiBpZD1cIlBsYWNlT2ZTdXBwbHlcIiB0eXBlPVwidGV4dFwiICAgY2xhc3M9XCJuZy1wcmlzdGluZSBuZy1pbnZhbGlkIG5nLXRvdWNoZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cInRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgKm5nSWY9XCJiaWxsaW5nYWRkcmVzcz8uZXJyb3JzPy5yZXF1aXJlZFwiICBjbGFzcz1cInRleHQtZGFuZ2VyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCaWxsaW5nIEFkZHJlc3MgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gIHR5cGU9XCJzdWJtaXRcIiAgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGNhbmNlbCBtZS00IHctNTBcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2Rpc2FibGVkXT1cInVwZGF0ZUZvcm0uaW52YWxpZFwiIChjbGljayk9XCJvblN1Ym1pdCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkIHctNTBcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN1Ym1pdFwiPlN1Ym1pdCA8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgIFxyXG4gICAgICAgIDwvZm9ybT5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLWVuZDo6TW9kYWwgYm9keS0tPlxyXG48L2Rpdj4iXX0=
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvdXBkYXRlL3VwZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3VwZGF0ZS91cGRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksR0FBaUMsTUFBTSxlQUFlLENBQUM7QUFHOUcsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBUzFDLE1BQU0sT0FBTyxlQUFlO0lBYWpCO0lBQXFDO0lBQWdDO0lBQWdFO0lBQ3BJO0lBQStCO0lBWnpDLFNBQVMsR0FBVyxFQUFFLENBQUM7SUFDdkIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixjQUFjLEdBQVcsRUFBRSxDQUFDO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsYUFBYSxHQUFXLEVBQUUsQ0FBQztJQUMzQixVQUFVLENBQVk7SUFDYixTQUFTLENBQU07SUFDZCxTQUFTLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFDM0MsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFMUMsWUFDUyxXQUEyQixFQUFVLFlBQXNCLEVBQVUsMEJBQXNELEVBQVUsRUFBZSxFQUNu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Qiw2b0lBa0VNOzs0RkRyRE8sZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZO3dPQVliLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIENoYW5nZURldGVjdG9yUmVmLCBPbkRlc3Ryb3ksIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYkFjdGl2ZU1vZGFsLCBOZ2JNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXVwZGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwZGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3VwZGF0ZS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVwZGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgYnJhbmROYW1lOiBzdHJpbmcgPSAnJztcclxuICBnc3ROdW1iZXI6IHN0cmluZyA9ICcnO1xyXG4gIGJpbGxpbmdBZGRyZXNzOiBzdHJpbmcgPSAnJztcclxuICBjb21wYW55TmFtZTogc3RyaW5nID0gJyc7XHJcbiAgUGxhY2VPZlN1cHBseTogc3RyaW5nID0gJyc7XHJcbiAgdXBkYXRlRm9ybTogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIG1vZGFsRGF0YTogYW55O1xyXG4gIEBPdXRwdXQoKSBwYXNzRW50cnk6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBhY3RpdmVNb2RhbDogTmdiQWN0aXZlTW9kYWwsIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgdG9hc3Q6IFRvYXN0U2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pbml0Rm9ybSgpXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMucGF0Y2hGb3JtKClcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgaW5pdEZvcm0oKSB7XHJcbiAgICB0aGlzLnVwZGF0ZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgYnJhbmROYW1lOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBnc3ROdW1iZXI6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgIGJpbGxpbmdBZGRyZXNzOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBjb21wYW55TmFtZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgUGxhY2VPZlN1cHBseTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG5cclxuICAgIH0pO1xyXG4gIH1cclxuICAvLyBnZXQgZ3N0bnVtYmVyKCkgeyByZXR1cm4gdGhpcy51cGRhdGVGb3JtLmdldCgnZ3N0TnVtYmVyJyk7IH1cclxuICAvLyBnZXQgYmlsbGluZ2FkZHJlc3MoKSB7IHJldHVybiB0aGlzLnVwZGF0ZUZvcm0uZ2V0KCdiaWxsaW5nQWRkcmVzcycpOyB9XHJcbiAgLy8gZ2V0IGNvbXBhbnlOYW1lKCkgeyByZXR1cm4gdGhpcy51cGRhdGVGb3JtLmdldCgnY29tcGFueU5hbWUnKTsgfVxyXG4gIC8vIGdldCBQbGFjZU9mU3VwcGx5KCkgeyByZXR1cm4gdGhpcy51cGRhdGVGb3JtLmdldCgnUGxhY2VPZlN1cHBseScpOyB9XHJcblxyXG4gIHBhdGNoRm9ybSgpIHtcclxuICAgIHRoaXMudXBkYXRlRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgYnJhbmROYW1lOiB0aGlzLm1vZGFsRGF0YT8uYnJhbmROYW1lLFxyXG4gICAgICBnc3ROdW1iZXI6IHRoaXMubW9kYWxEYXRhPy5nc3ROdW1iZXIsXHJcbiAgICAgIGJpbGxpbmdBZGRyZXNzOiB0aGlzLm1vZGFsRGF0YT8uYmlsbGluZ0FkZHJlc3MsXHJcbiAgICAgIFBsYWNlT2ZTdXBwbHk6IHRoaXMubW9kYWxEYXRhPy5QbGFjZU9mU3VwcGx5LFxyXG4gICAgICBjb21wYW55TmFtZTogdGhpcy5tb2RhbERhdGE/LmNvbXBhbnlOYW1lXHJcblxyXG4gICAgfSlcclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgfVxyXG5cclxuICBjbG9zZU1vZGFsKCkge1xyXG4gICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBjb25zdCByZXF1ZXN0RGF0YSA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMubW9kYWxEYXRhLmNsaWVudElkLFxyXG4gICAgICBnc3RObzogdGhpcy51cGRhdGVGb3JtLnZhbHVlLmdzdE51bWJlcixcclxuICAgICAgYmlsbGluZ0FkZHJlc3M6IHRoaXMudXBkYXRlRm9ybS52YWx1ZS5iaWxsaW5nQWRkcmVzcyxcclxuICAgICAgY29tcGFueU5hbWU6IHRoaXMudXBkYXRlRm9ybS52YWx1ZS5jb21wYW55TmFtZSxcclxuICAgICAgUGxhY2VPZlN1cHBseTogdGhpcy51cGRhdGVGb3JtLnZhbHVlLlBsYWNlT2ZTdXBwbHlcclxuXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudXBkYXRlYWRkYmlsbGluZyhyZXF1ZXN0RGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZShyZXF1ZXN0RGF0YSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHN1Ym1pdHRpbmcgdXBkYXRlOicsIGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbiAgc3VibWl0VXBkYXRlKCkgeyB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyY2xhc3NcIj5BZGQgQWRkcmVzczwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1pY29uIGJ0bi1hY3RpdmUtY29sb3ItcHJpbWFyeVwiIGRhdGEtYnMtZGlzbWlzcz1cIm1vZGFsXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIChjbGljayk9XCJhY3RpdmVNb2RhbC5kaXNtaXNzKClcIj48c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTUgNUw1IDE1TTUgNUwxNSAxNVwiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwhLS0gPGkgIGNsYXNzPVwia2ktZHVvdG9uZSBraS1jcm9zcyBmcy0xXCI+PHNwYW4gY2xhc3M9XCJwYXRoMVwiPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGF0aDJcIj48L3NwYW4+PC9pPiAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgXCI+XHJcbiAgICAgICAgPCEtLWJlZ2luOjpGb3JtLS0+XHJcbiAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJ1cGRhdGVGb3JtXCIgIGFjdGlvbj1cIiNcIj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gbWItNyBmdi1yb3cgZnYtcGx1Z2lucy1pY29uLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+QnJhbmQgTmFtZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0ICBmb3JtQ29udHJvbE5hbWU9XCJicmFuZE5hbWVcIiBpZD1cImJyYW5kTmFtZVwiIHJlYWRvbmx5IHR5cGU9XCJ0ZXh0XCIgIGNsYXNzPVwiIG5nLXByaXN0aW5lIG5nLWludmFsaWQgbmctdG91Y2hlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwidGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XCI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwicmVxdWlyZWQgaGVhZGluZ3RleHQgbWItMlwiPkdTVCBObyAvIFRheCBJRDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cImdzdE51bWJlclwiIGlkPVwiZ3N0TnVtYmVyXCIgdHlwZT1cInRleHRcIiAgIGNsYXNzPVwibmctcHJpc3RpbmUgbmctaW52YWxpZCBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiZ3N0bnVtYmVyPy5lcnJvcnM/LnJlcXVpcmVkXCIgIGNsYXNzPVwidGV4dC1kYW5nZXJcIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBHU1QgTnVtYmVyIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+Q29tcGFueSBOYW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiY29tcGFueU5hbWVcIiBpZD1cImNvbXBhbnlOYW1lXCIgdHlwZT1cInRleHRcIiAgIGNsYXNzPVwibmctcHJpc3RpbmUgbmctaW52YWxpZCBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiYmlsbGluZ2FkZHJlc3M/LmVycm9ycz8ucmVxdWlyZWRcIiAgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmlsbGluZyBBZGRyZXNzIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+QmlsbGluZyBBZGRyZXNzPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiYmlsbGluZ0FkZHJlc3NcIiBpZD1cImJpbGxpbmdBZGRyZXNzXCIgdHlwZT1cInRleHRcIiAgIGNsYXNzPVwibmctcHJpc3RpbmUgbmctaW52YWxpZCBuZy10b3VjaGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiYmlsbGluZ2FkZHJlc3M/LmVycm9ycz8ucmVxdWlyZWRcIiAgY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmlsbGluZyBBZGRyZXNzIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJyZXF1aXJlZCBoZWFkaW5ndGV4dCBtYi0yXCI+UGxhY2VPZlN1cHBseTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cIlBsYWNlT2ZTdXBwbHlcIiBpZD1cIlBsYWNlT2ZTdXBwbHlcIiB0eXBlPVwidGV4dFwiICAgY2xhc3M9XCJuZy1wcmlzdGluZSBuZy1pbnZhbGlkIG5nLXRvdWNoZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cInRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgKm5nSWY9XCJiaWxsaW5nYWRkcmVzcz8uZXJyb3JzPy5yZXF1aXJlZFwiICBjbGFzcz1cInRleHQtZGFuZ2VyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCaWxsaW5nIEFkZHJlc3MgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gIHR5cGU9XCJzdWJtaXRcIiAgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGNhbmNlbCBtZS00IHctNTBcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2Rpc2FibGVkXT1cInVwZGF0ZUZvcm0uaW52YWxpZFwiIChjbGljayk9XCJvblN1Ym1pdCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkIHctNTBcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN1Ym1pdFwiPlN1Ym1pdCA8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgIFxyXG4gICAgICAgIDwvZm9ybT5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLWVuZDo6TW9kYWwgYm9keS0tPlxyXG48L2Rpdj4iXX0=
|
|
@@ -204,10 +204,10 @@ export class UpgradePlanComponent {
|
|
|
204
204
|
}
|
|
205
205
|
});
|
|
206
206
|
}
|
|
207
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
208
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: UpgradePlanComponent, selector: "lib-upgrade-plan", inputs: { clientId: "clientId" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "<section *ngIf=\"subscription === 'pricingplan'\">\r\n <div *ngIf=\"showNavGroup\" class=\"nav-group nav-group-outline mx-auto mt-8 d-flex justify-content-center\">\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3 me-2\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'monthly' ? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"month\" (click)=\"selectPlan('monthly')\">\r\n Monthly\r\n </button>\r\n\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'quarterly'? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"Quarterly\" (click)=\"selectPlan('quarterly')\">\r\n Quarterly - 10%\r\n </button>\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'annual'? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"annual\" (click)=\"selectPlan('annual')\">\r\n Annual - 15%\r\n </button>\r\n\r\n</div>\r\n\r\n<div class=\"modal-body row \">\r\n <div class=\"col-lg-6 pe-8 vertical\">\r\n\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div class=\"py-2\">\r\n <label class=\"headingtext mb-3\">No of Stores </label>\r\n <div class=\"position-relative \">\r\n <div class=\"form-select dropselect levelviewtext\" id=\"currency\" (click)=\"noofstoresDropdown($event)\"\r\n aria-label=\"Default select example\">{{clientInfo?.currentPlanInfo?.totalStores ||\r\n noofstorestype[0]}}</div>\r\n <div *ngIf=\"noofstoresdropDown\" class=\"card py-2 w-100 position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let noofstores of noofstorestype\" class=\"list-unstyled mb-2\">\r\n <li [ngClass]=\"clientInfo?.currentPlanInfo?.totalStores === noofstores ? 'active' : ''\"\r\n class=\"producttext px-5 items cursor-pointer py-4\" (click)=\"noofstoresdata(noofstores)\">\r\n {{ noofstores }}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"headingtext mb-3\">Average Size of Stores </label>\r\n <div class=\"position-relative \">\r\n <div class=\"form-select dropselect levelviewtext\" id=\"currency\" (click)=\"AvgstoresDropdown($event)\"\r\n aria-label=\"Default select example\">{{clientInfo?.currentPlanInfo?.storeSize ||\r\n Avgstorestype[0].value}}</div>\r\n <div *ngIf=\"AvgstoresdropDown\" class=\"card py-2 w-100 position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let Avgstores of Avgstorestype\" class=\"list-unstyled mb-2\">\r\n <li [ngClass]=\"clientInfo?.currentPlanInfo?.storeSize === Avgstores ? 'active' : ''\"\r\n class=\"producttext px-5 items cursor-pointer py-4\" (click)=\"Avgstoresdata(Avgstores.value)\">\r\n {{Avgstores.name}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"maxcam mt-2\">\r\n Maximum {{clientInfo?.currentPlanInfo?.totalCamera}} Cameras are permitted in stores with square feet between {{clientInfo?.currentPlanInfo?.storeSize}}.\r\n </div>\r\n </div>\r\n\r\n <div class=\"selecttext my-5 mt-12\">Select Products</div>\r\n\r\n <div *ngFor=\"let productlist of clientInfo?.currentPlanInfo?.product\" class=\"form-check form-switch d-flex justify-content-between mt-6\">\r\n <div>\r\n <span><input class=\"form-check-input\" type=\"checkbox\" role=\"switch\" id=\"tangorevop\"\r\n [checked]=\"productlist.active === true\" (change)=\"updateProduct($event,productlist.productName)\" [disabled]=\"productlist.status === 'live' || productlist.status === 'trial' \"></span>\r\n <label for=\"flexSwitchCheckDefault\"\r\n class=\"form-check-label headingtext d-flex\">{{productlist.aliseProductName}} \r\n <span [class]=\"getColorClass(productlist.toolTip)\">\r\n {{productlist.toolTip}} <span *ngIf=\"expiredProducts.length && productlist.productName.includes(expiredProducts)\"><img class=\"ms-2\" src=\"./assets/tango/custompopup-Icons/clockexpiry-icon.svg\" alt=\"\"> \r\n </span> <span *ngIf=\"trialproducts.length && productlist.productName.includes(trialproducts)\">\r\n <img class=\"ms-2\" src=\"./assets/tango/custompopup-Icons/primary-clock-icon.svg\" alt=\"\"> \r\n </span>\r\n </span>\r\n </label>\r\n </div>\r\n <span class=\"view\" (click)=\"showInfo(productlist.productName)\">View Info <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"14\"\r\n viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path\r\n d=\"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5M7.5 1.5H10.5M10.5 1.5V4.5M10.5 1.5L5 7\"\r\n stroke=\"#009BF3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </div>\r\n\r\n\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 px-8\">\r\n <div class=\"pb-6\">\r\n\r\n <div class=\"pricingtext\">{{clientInfo?.currentPlanInfo?.subscriptionType | titlecase}}</div>\r\n\r\n <div class=\"semi mt-2\">\r\n Integrated Solution for Growing Business\r\n </div>\r\n <!-- <div class=\"d-flex\"><span class=\"me-3 mt-5\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\"\r\n viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2231_42342)\">\r\n <path\r\n d=\"M7.99967 10.6673V8.00065M7.99967 5.33398H8.00634M14.6663 8.00065C14.6663 11.6826 11.6816 14.6673 7.99967 14.6673C4.31778 14.6673 1.33301 11.6826 1.33301 8.00065C1.33301 4.31875 4.31778 1.33398 7.99967 1.33398C11.6816 1.33398 14.6663 4.31875 14.6663 8.00065Z\"\r\n stroke=\"#B54708\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2231_42342\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <div class=\"subtext mt-6\">You will only be charged for < Tango Traffic,Tango <br>Zone & Tango RevOps >\r\n </div>\r\n </div> -->\r\n <div class=\"sub1text mt-5\">Starts from <span class=\"billedtext ms-2\"><s><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'inr'\">\u20B9</span><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'dollar'\">$</span>{{originalPrice}}</s></span><span\r\n class=\"billingtext ms-4\"><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'inr'\">\u20B9</span><span\r\n *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'dollar'\">$</span>{{clientInfo?.currentPlanInfo?.price || 0}}</span></div>\r\n <div class=\"sub1text mt-2\">Per store Per month</div>\r\n\r\n </div>\r\n <div class=\"detailstext\">Billing Details</div>\r\n\r\n <div class=\"sub1text py-4\">\r\n <div class=\"mb-4\">Brand Name: {{clientInfo?.clientName}}</div>\r\n <div>Billing Address: {{clientInfo?.billingDetails?.billingAddress || '--'}}</div>\r\n </div>\r\n <div class=\"d-flex justify-content-end subscribe\"> \r\n <button (click)=\"update()\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary ms-2 ng-star-inserted w-100 btn-block text-nowrap\" *ngIf=\"!clientInfo?.billingDetails?.billingAddress\"><span class=\"submit\">Enter\r\n Billing Details </span></button>\r\n <button (click)=\"confirmation()\" type=\"button\" tabindex=\"0\" *ngIf=\"clientInfo?.billingDetails?.billingAddress\"\r\n class=\"btn btn-primary ms-2 ng-star-inserted w-100 btn-block\" style=\"white-space: nowrap;\" [disabled]=\"disableBtn\"><span\r\n class=\"submit\">Subscribe Now </span></button>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n</section>\r\n\r\n<div *ngIf=\"subscription === 'confirmationmessage'\" class=\"modal-content gifimage\" >\r\n <div class=\"p-6\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/check-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Thanks for the subscription!</div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n \r\n <div class=\"contenttext mt-4 mx-2\">You have successfully subscribed to our products \r\n <ul class=\"mt-4\">\r\n <li *ngFor=\"let product of confirmedProducts\">{{product}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n \r\n <div class=\"d-flex mt-2 py-2\">\r\n <button type=\"button\" tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-100\" (click)=\"closePopupAndReloadData()\" style=\"white-space: nowrap;\">\r\n <span class=\"submit\">Okay</span>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".tabchange{align-items:center;gap:8px;padding:1% 25%}.pricingtext{color:var(--Gray-900, #101828);font-family:Inter;font-size:20px;font-weight:600;line-height:30px}.semi{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.subtext{color:var(--Error-700, #B42318);font-family:Inter;font-size:12px;font-weight:400;line-height:18px}.billingtext{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:24px;font-weight:600;line-height:32px}.billedtext{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:18px;font-weight:600;line-height:32px;text-decoration-line:\"strikethrough\"}.sub1text{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.detailstext{color:var(--Gray-500, #667085);font-family:Inter;font-size:18px;font-weight:600;line-height:28px}.maxcam{color:var(--Primary-800, #008EDF);font-family:Inter;font-size:14px;font-weight:500;line-height:20px}.selecttext{color:#000;font-family:Inter;font-size:16px;font-weight:500;line-height:24px}.activePlanBtn{border-radius:6px;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280f,0 1px 3px #1018281a!important;color:var(--Gray-700, #344054);font-size:14px!important;font-weight:500!important;line-height:20px}.inactivePlanBtn{color:var(--Gray-500, #667085)!important;font-size:14px;font-weight:500!important;line-height:20px}.nav-group{background:var(--Gray-50, #F9FAFB)!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important;width:fit-content}.form-check-label{color:var(--Gray-700, #344054)!important}.view{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:12px;font-weight:500;line-height:18px;cursor:pointer}.modal-body{padding:4%!important}.vertical{border-right:1px solid var(--Gray-200, #EAECF0)}.subscribe{margin-top:45%}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.gifimage{background-size:cover;height:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.TitleCasePipe, name: "titlecase" }] });
|
|
207
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: UpgradePlanComponent, deps: [{ token: i1.NgbModal }, { token: i1.NgbActiveModal }, { token: i2.ToastService }, { token: i3.PaymentSubscriptionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
208
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: UpgradePlanComponent, selector: "lib-upgrade-plan", inputs: { clientId: "clientId" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "<section *ngIf=\"subscription === 'pricingplan'\">\r\n <div *ngIf=\"showNavGroup\" class=\"nav-group nav-group-outline mx-auto mt-8 d-flex justify-content-center\">\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3 me-2\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'monthly' ? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"month\" (click)=\"selectPlan('monthly')\">\r\n Monthly\r\n </button>\r\n\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'quarterly'? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"Quarterly\" (click)=\"selectPlan('quarterly')\">\r\n Quarterly - 10%\r\n </button>\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'annual'? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"annual\" (click)=\"selectPlan('annual')\">\r\n Annual - 15%\r\n </button>\r\n\r\n</div>\r\n\r\n<div class=\"modal-body row \">\r\n <div class=\"col-lg-6 pe-8 vertical\">\r\n\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div class=\"py-2\">\r\n <label class=\"headingtext mb-3\">No of Stores </label>\r\n <div class=\"position-relative \">\r\n <div class=\"form-select dropselect levelviewtext\" id=\"currency\" (click)=\"noofstoresDropdown($event)\"\r\n aria-label=\"Default select example\">{{clientInfo?.currentPlanInfo?.totalStores ||\r\n noofstorestype[0]}}</div>\r\n <div *ngIf=\"noofstoresdropDown\" class=\"card py-2 w-100 position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let noofstores of noofstorestype\" class=\"list-unstyled mb-2\">\r\n <li [ngClass]=\"clientInfo?.currentPlanInfo?.totalStores === noofstores ? 'active' : ''\"\r\n class=\"producttext px-5 items cursor-pointer py-4\" (click)=\"noofstoresdata(noofstores)\">\r\n {{ noofstores }}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"headingtext mb-3\">Average Size of Stores </label>\r\n <div class=\"position-relative \">\r\n <div class=\"form-select dropselect levelviewtext\" id=\"currency\" (click)=\"AvgstoresDropdown($event)\"\r\n aria-label=\"Default select example\">{{clientInfo?.currentPlanInfo?.storeSize ||\r\n Avgstorestype[0].value}}</div>\r\n <div *ngIf=\"AvgstoresdropDown\" class=\"card py-2 w-100 position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let Avgstores of Avgstorestype\" class=\"list-unstyled mb-2\">\r\n <li [ngClass]=\"clientInfo?.currentPlanInfo?.storeSize === Avgstores ? 'active' : ''\"\r\n class=\"producttext px-5 items cursor-pointer py-4\" (click)=\"Avgstoresdata(Avgstores.value)\">\r\n {{Avgstores.name}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"maxcam mt-2\">\r\n Maximum {{clientInfo?.currentPlanInfo?.totalCamera}} Cameras are permitted in stores with square feet between {{clientInfo?.currentPlanInfo?.storeSize}}.\r\n </div>\r\n </div>\r\n\r\n <div class=\"selecttext my-5 mt-12\">Select Products</div>\r\n\r\n <div *ngFor=\"let productlist of clientInfo?.currentPlanInfo?.product\" class=\"form-check form-switch d-flex justify-content-between mt-6\">\r\n <div>\r\n <span><input class=\"form-check-input\" type=\"checkbox\" role=\"switch\" id=\"tangorevop\"\r\n [checked]=\"productlist.active === true\" (change)=\"updateProduct($event,productlist.productName)\" [disabled]=\"productlist.status === 'live' || productlist.status === 'trial' \"></span>\r\n <label for=\"flexSwitchCheckDefault\"\r\n class=\"form-check-label headingtext d-flex\">{{productlist.aliseProductName}} \r\n <span [class]=\"getColorClass(productlist.toolTip)\">\r\n {{productlist.toolTip}} <span *ngIf=\"expiredProducts.length && productlist.productName.includes(expiredProducts)\"><img class=\"ms-2\" src=\"./assets/tango/custompopup-Icons/clockexpiry-icon.svg\" alt=\"\"> \r\n </span> <span *ngIf=\"trialproducts.length && productlist.productName.includes(trialproducts)\">\r\n <img class=\"ms-2\" src=\"./assets/tango/custompopup-Icons/primary-clock-icon.svg\" alt=\"\"> \r\n </span>\r\n </span>\r\n </label>\r\n </div>\r\n <span class=\"view\" (click)=\"showInfo(productlist.productName)\">View Info <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"14\"\r\n viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path\r\n d=\"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5M7.5 1.5H10.5M10.5 1.5V4.5M10.5 1.5L5 7\"\r\n stroke=\"#009BF3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </div>\r\n\r\n\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 px-8\">\r\n <div class=\"pb-6\">\r\n\r\n <div class=\"pricingtext\">{{clientInfo?.currentPlanInfo?.subscriptionType | titlecase}}</div>\r\n\r\n <div class=\"semi mt-2\">\r\n Integrated Solution for Growing Business\r\n </div>\r\n <!-- <div class=\"d-flex\"><span class=\"me-3 mt-5\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\"\r\n viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2231_42342)\">\r\n <path\r\n d=\"M7.99967 10.6673V8.00065M7.99967 5.33398H8.00634M14.6663 8.00065C14.6663 11.6826 11.6816 14.6673 7.99967 14.6673C4.31778 14.6673 1.33301 11.6826 1.33301 8.00065C1.33301 4.31875 4.31778 1.33398 7.99967 1.33398C11.6816 1.33398 14.6663 4.31875 14.6663 8.00065Z\"\r\n stroke=\"#B54708\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2231_42342\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <div class=\"subtext mt-6\">You will only be charged for < Tango Traffic,Tango <br>Zone & Tango RevOps >\r\n </div>\r\n </div> -->\r\n <div class=\"sub1text mt-5\">Starts from <span class=\"billedtext ms-2\"><s><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'inr'\">\u20B9</span><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'dollar'\">$</span>{{originalPrice}}</s></span><span\r\n class=\"billingtext ms-4\"><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'inr'\">\u20B9</span><span\r\n *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'dollar'\">$</span>{{clientInfo?.currentPlanInfo?.price || 0}}</span></div>\r\n <div class=\"sub1text mt-2\">Per store Per month</div>\r\n\r\n </div>\r\n <div class=\"detailstext\">Billing Details</div>\r\n\r\n <div class=\"sub1text py-4\">\r\n <div class=\"mb-4\">Brand Name: {{clientInfo?.clientName}}</div>\r\n <div>Billing Address: {{clientInfo?.billingDetails?.billingAddress || '--'}}</div>\r\n </div>\r\n <div class=\"d-flex justify-content-end subscribe\"> \r\n <button (click)=\"update()\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary ms-2 ng-star-inserted w-100 btn-block text-nowrap\" *ngIf=\"!clientInfo?.billingDetails?.billingAddress\"><span class=\"submit\">Enter\r\n Billing Details </span></button>\r\n <button (click)=\"confirmation()\" type=\"button\" tabindex=\"0\" *ngIf=\"clientInfo?.billingDetails?.billingAddress\"\r\n class=\"btn btn-primary ms-2 ng-star-inserted w-100 btn-block\" style=\"white-space: nowrap;\" [disabled]=\"disableBtn\"><span\r\n class=\"submit\">Subscribe Now </span></button>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n</section>\r\n\r\n<div *ngIf=\"subscription === 'confirmationmessage'\" class=\"modal-content gifimage\" >\r\n <div class=\"p-6\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/check-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Thanks for the subscription!</div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n \r\n <div class=\"contenttext mt-4 mx-2\">You have successfully subscribed to our products \r\n <ul class=\"mt-4\">\r\n <li *ngFor=\"let product of confirmedProducts\">{{product}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n \r\n <div class=\"d-flex mt-2 py-2\">\r\n <button type=\"button\" tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-100\" (click)=\"closePopupAndReloadData()\" style=\"white-space: nowrap;\">\r\n <span class=\"submit\">Okay</span>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".tabchange{align-items:center;gap:8px;padding:1% 25%}.pricingtext{color:var(--Gray-900, #101828);font-family:Inter;font-size:20px;font-weight:600;line-height:30px}.semi{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.subtext{color:var(--Error-700, #B42318);font-family:Inter;font-size:12px;font-weight:400;line-height:18px}.billingtext{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:24px;font-weight:600;line-height:32px}.billedtext{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:18px;font-weight:600;line-height:32px;text-decoration-line:\"strikethrough\"}.sub1text{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.detailstext{color:var(--Gray-500, #667085);font-family:Inter;font-size:18px;font-weight:600;line-height:28px}.maxcam{color:var(--Primary-800, #008EDF);font-family:Inter;font-size:14px;font-weight:500;line-height:20px}.selecttext{color:#000;font-family:Inter;font-size:16px;font-weight:500;line-height:24px}.activePlanBtn{border-radius:6px;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280f,0 1px 3px #1018281a!important;color:var(--Gray-700, #344054);font-size:14px!important;font-weight:500!important;line-height:20px}.inactivePlanBtn{color:var(--Gray-500, #667085)!important;font-size:14px;font-weight:500!important;line-height:20px}.nav-group{background:var(--Gray-50, #F9FAFB)!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important;width:fit-content}.form-check-label{color:var(--Gray-700, #344054)!important}.view{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:12px;font-weight:500;line-height:18px;cursor:pointer}.modal-body{padding:4%!important}.vertical{border-right:1px solid var(--Gray-200, #EAECF0)}.subscribe{margin-top:45%}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.gifimage{background-size:cover;height:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.TitleCasePipe, name: "titlecase" }] });
|
|
209
209
|
}
|
|
210
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
210
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: UpgradePlanComponent, decorators: [{
|
|
211
211
|
type: Component,
|
|
212
212
|
args: [{ selector: 'lib-upgrade-plan', template: "<section *ngIf=\"subscription === 'pricingplan'\">\r\n <div *ngIf=\"showNavGroup\" class=\"nav-group nav-group-outline mx-auto mt-8 d-flex justify-content-center\">\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3 me-2\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'monthly' ? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"month\" (click)=\"selectPlan('monthly')\">\r\n Monthly\r\n </button>\r\n\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'quarterly'? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"Quarterly\" (click)=\"selectPlan('quarterly')\">\r\n Quarterly - 10%\r\n </button>\r\n <button class=\"btn btn-color-gray-600 btn-active btn-active-secondary px-6 py-3\"\r\n [ngClass]=\"clientInfo?.currentPlanInfo?.subscriptionPeriod === 'annual'? 'activePlanBtn':'inactivePlanBtn'\"\r\n data-kt-plan=\"annual\" (click)=\"selectPlan('annual')\">\r\n Annual - 15%\r\n </button>\r\n\r\n</div>\r\n\r\n<div class=\"modal-body row \">\r\n <div class=\"col-lg-6 pe-8 vertical\">\r\n\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n <div class=\"py-2\">\r\n <label class=\"headingtext mb-3\">No of Stores </label>\r\n <div class=\"position-relative \">\r\n <div class=\"form-select dropselect levelviewtext\" id=\"currency\" (click)=\"noofstoresDropdown($event)\"\r\n aria-label=\"Default select example\">{{clientInfo?.currentPlanInfo?.totalStores ||\r\n noofstorestype[0]}}</div>\r\n <div *ngIf=\"noofstoresdropDown\" class=\"card py-2 w-100 position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let noofstores of noofstorestype\" class=\"list-unstyled mb-2\">\r\n <li [ngClass]=\"clientInfo?.currentPlanInfo?.totalStores === noofstores ? 'active' : ''\"\r\n class=\"producttext px-5 items cursor-pointer py-4\" (click)=\"noofstoresdata(noofstores)\">\r\n {{ noofstores }}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"py-2\">\r\n <label class=\"headingtext mb-3\">Average Size of Stores </label>\r\n <div class=\"position-relative \">\r\n <div class=\"form-select dropselect levelviewtext\" id=\"currency\" (click)=\"AvgstoresDropdown($event)\"\r\n aria-label=\"Default select example\">{{clientInfo?.currentPlanInfo?.storeSize ||\r\n Avgstorestype[0].value}}</div>\r\n <div *ngIf=\"AvgstoresdropDown\" class=\"card py-2 w-100 position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let Avgstores of Avgstorestype\" class=\"list-unstyled mb-2\">\r\n <li [ngClass]=\"clientInfo?.currentPlanInfo?.storeSize === Avgstores ? 'active' : ''\"\r\n class=\"producttext px-5 items cursor-pointer py-4\" (click)=\"Avgstoresdata(Avgstores.value)\">\r\n {{Avgstores.name}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"maxcam mt-2\">\r\n Maximum {{clientInfo?.currentPlanInfo?.totalCamera}} Cameras are permitted in stores with square feet between {{clientInfo?.currentPlanInfo?.storeSize}}.\r\n </div>\r\n </div>\r\n\r\n <div class=\"selecttext my-5 mt-12\">Select Products</div>\r\n\r\n <div *ngFor=\"let productlist of clientInfo?.currentPlanInfo?.product\" class=\"form-check form-switch d-flex justify-content-between mt-6\">\r\n <div>\r\n <span><input class=\"form-check-input\" type=\"checkbox\" role=\"switch\" id=\"tangorevop\"\r\n [checked]=\"productlist.active === true\" (change)=\"updateProduct($event,productlist.productName)\" [disabled]=\"productlist.status === 'live' || productlist.status === 'trial' \"></span>\r\n <label for=\"flexSwitchCheckDefault\"\r\n class=\"form-check-label headingtext d-flex\">{{productlist.aliseProductName}} \r\n <span [class]=\"getColorClass(productlist.toolTip)\">\r\n {{productlist.toolTip}} <span *ngIf=\"expiredProducts.length && productlist.productName.includes(expiredProducts)\"><img class=\"ms-2\" src=\"./assets/tango/custompopup-Icons/clockexpiry-icon.svg\" alt=\"\"> \r\n </span> <span *ngIf=\"trialproducts.length && productlist.productName.includes(trialproducts)\">\r\n <img class=\"ms-2\" src=\"./assets/tango/custompopup-Icons/primary-clock-icon.svg\" alt=\"\"> \r\n </span>\r\n </span>\r\n </label>\r\n </div>\r\n <span class=\"view\" (click)=\"showInfo(productlist.productName)\">View Info <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"14\"\r\n viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path\r\n d=\"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5M7.5 1.5H10.5M10.5 1.5V4.5M10.5 1.5L5 7\"\r\n stroke=\"#009BF3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </div>\r\n\r\n\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 px-8\">\r\n <div class=\"pb-6\">\r\n\r\n <div class=\"pricingtext\">{{clientInfo?.currentPlanInfo?.subscriptionType | titlecase}}</div>\r\n\r\n <div class=\"semi mt-2\">\r\n Integrated Solution for Growing Business\r\n </div>\r\n <!-- <div class=\"d-flex\"><span class=\"me-3 mt-5\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\"\r\n viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_2231_42342)\">\r\n <path\r\n d=\"M7.99967 10.6673V8.00065M7.99967 5.33398H8.00634M14.6663 8.00065C14.6663 11.6826 11.6816 14.6673 7.99967 14.6673C4.31778 14.6673 1.33301 11.6826 1.33301 8.00065C1.33301 4.31875 4.31778 1.33398 7.99967 1.33398C11.6816 1.33398 14.6663 4.31875 14.6663 8.00065Z\"\r\n stroke=\"#B54708\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_2231_42342\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <div class=\"subtext mt-6\">You will only be charged for < Tango Traffic,Tango <br>Zone & Tango RevOps >\r\n </div>\r\n </div> -->\r\n <div class=\"sub1text mt-5\">Starts from <span class=\"billedtext ms-2\"><s><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'inr'\">\u20B9</span><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'dollar'\">$</span>{{originalPrice}}</s></span><span\r\n class=\"billingtext ms-4\"><span *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'inr'\">\u20B9</span><span\r\n *ngIf=\"clientInfo?.currentPlanInfo?.currencyType === 'dollar'\">$</span>{{clientInfo?.currentPlanInfo?.price || 0}}</span></div>\r\n <div class=\"sub1text mt-2\">Per store Per month</div>\r\n\r\n </div>\r\n <div class=\"detailstext\">Billing Details</div>\r\n\r\n <div class=\"sub1text py-4\">\r\n <div class=\"mb-4\">Brand Name: {{clientInfo?.clientName}}</div>\r\n <div>Billing Address: {{clientInfo?.billingDetails?.billingAddress || '--'}}</div>\r\n </div>\r\n <div class=\"d-flex justify-content-end subscribe\"> \r\n <button (click)=\"update()\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary ms-2 ng-star-inserted w-100 btn-block text-nowrap\" *ngIf=\"!clientInfo?.billingDetails?.billingAddress\"><span class=\"submit\">Enter\r\n Billing Details </span></button>\r\n <button (click)=\"confirmation()\" type=\"button\" tabindex=\"0\" *ngIf=\"clientInfo?.billingDetails?.billingAddress\"\r\n class=\"btn btn-primary ms-2 ng-star-inserted w-100 btn-block\" style=\"white-space: nowrap;\" [disabled]=\"disableBtn\"><span\r\n class=\"submit\">Subscribe Now </span></button>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n</section>\r\n\r\n<div *ngIf=\"subscription === 'confirmationmessage'\" class=\"modal-content gifimage\" >\r\n <div class=\"p-6\">\r\n <div><img src=\"./assets/tango/custompopup-Icons/check-icon.svg\" alt=\"\"></div>\r\n <div class=\"heading mt-4 ms-1\">Thanks for the subscription!</div>\r\n <div class=\"d-flex flex-column fv-row fv-plugins-icon-container\">\r\n \r\n <div class=\"contenttext mt-4 mx-2\">You have successfully subscribed to our products \r\n <ul class=\"mt-4\">\r\n <li *ngFor=\"let product of confirmedProducts\">{{product}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n \r\n <div class=\"d-flex mt-2 py-2\">\r\n <button type=\"button\" tabindex=\"0\" class=\"btn btn-primary px-4 ng-star-inserted w-100\" (click)=\"closePopupAndReloadData()\" style=\"white-space: nowrap;\">\r\n <span class=\"submit\">Okay</span>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".tabchange{align-items:center;gap:8px;padding:1% 25%}.pricingtext{color:var(--Gray-900, #101828);font-family:Inter;font-size:20px;font-weight:600;line-height:30px}.semi{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.subtext{color:var(--Error-700, #B42318);font-family:Inter;font-size:12px;font-weight:400;line-height:18px}.billingtext{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:24px;font-weight:600;line-height:32px}.billedtext{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:18px;font-weight:600;line-height:32px;text-decoration-line:\"strikethrough\"}.sub1text{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-weight:400;line-height:20px}.detailstext{color:var(--Gray-500, #667085);font-family:Inter;font-size:18px;font-weight:600;line-height:28px}.maxcam{color:var(--Primary-800, #008EDF);font-family:Inter;font-size:14px;font-weight:500;line-height:20px}.selecttext{color:#000;font-family:Inter;font-size:16px;font-weight:500;line-height:24px}.activePlanBtn{border-radius:6px;background:var(--White, #FFF)!important;box-shadow:0 1px 2px #1018280f,0 1px 3px #1018281a!important;color:var(--Gray-700, #344054);font-size:14px!important;font-weight:500!important;line-height:20px}.inactivePlanBtn{color:var(--Gray-500, #667085)!important;font-size:14px;font-weight:500!important;line-height:20px}.nav-group{background:var(--Gray-50, #F9FAFB)!important;border-radius:8px!important;border:1px solid var(--Gray-100, #F2F4F7)!important;width:fit-content}.form-check-label{color:var(--Gray-700, #344054)!important}.view{color:var(--Primary-700, #009BF3);font-family:Inter;font-size:12px;font-weight:500;line-height:18px;cursor:pointer}.modal-body{padding:4%!important}.vertical{border-right:1px solid var(--Gray-200, #EAECF0)}.subscribe{margin-top:45%}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.heading{color:var(--Gray-900, #101828);font-size:18px;font-weight:600;line-height:28px}.contenttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.gifimage{background-size:cover;height:100%}\n"] }]
|
|
213
213
|
}], ctorParameters: () => [{ type: i1.NgbModal }, { type: i1.NgbActiveModal }, { type: i2.ToastService }, { type: i3.PaymentSubscriptionService }, { type: i0.ChangeDetectorRef }], propDecorators: { clientId: [{
|
|
@@ -216,4 +216,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
216
216
|
type: HostListener,
|
|
217
217
|
args: ['document:click', ['$event']]
|
|
218
218
|
}] } });
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBncmFkZS1wbGFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvdXBncmFkZS1wbGFuL3VwZ3JhZGUtcGxhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3VwZ3JhZGUtcGxhbi91cGdyYWRlLXBsYW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWEsS0FBSyxFQUFVLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFHekcsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7OztBQU1qRixNQUFNLE9BQU8sb0JBQW9CO0lBMkJYO0lBQStCO0lBQXFDO0lBQTZCO0lBQWdFO0lBMUI1SyxRQUFRLENBQU87SUFDeEIsa0JBQWtCLEdBQVksS0FBSyxDQUFDO0lBQ3BDLGlCQUFpQixHQUFZLEtBQUssQ0FBQztJQUNuQyxjQUFjLEdBQVUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFB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LCBJbnB1dCwgT25Jbml0LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVXBkYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vdXBkYXRlL3VwZGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ2JBY3RpdmVNb2RhbCwgTmdiTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IFN1Y2Nlc3NmdWxsU3Vic2NyaXB0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vc3VjY2Vzc2Z1bGwtc3Vic2NyaXB0aW9uL3N1Y2Nlc3NmdWxsLXN1YnNjcmlwdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmFpbEV4cGlyZWRDb21wb25lbnQgfSBmcm9tICcuLi90cmFpbC1leHBpcmVkL3RyYWlsLWV4cGlyZWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uQXBwcm92YWxDb21wb25lbnQgfSBmcm9tICcuLi9zdWJzY3JpcHRpb24tYXBwcm92YWwvc3Vic2NyaXB0aW9uLWFwcHJvdmFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5pbXBvcnQgeyBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3BheW1lbnQtc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTW9kYWxDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vbW9kZWwtY29udGVudC9tb2RlbC1jb250ZW50LmNvbXBvbmVudCc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXVwZ3JhZGUtcGxhbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwZ3JhZGUtcGxhbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3VwZ3JhZGUtcGxhbi5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVwZ3JhZGVQbGFuQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LE9uSW5pdCB7XHJcbiAgQElucHV0KCkgY2xpZW50SWQ6c3RyaW5nXHJcbiAgbm9vZnN0b3Jlc2Ryb3BEb3duOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQXZnc3RvcmVzZHJvcERvd246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBub29mc3RvcmVzdHlwZTogYW55W10gPSBbJzEoZnJlZSknLCAnMiAtIDI1JywgJzI2IC0gNTAnLCAnNTEgLSA3NScsICc3NiAtIDEwMCcsICcxMDArJ107XHJcbiAgQXZnc3RvcmVzdHlwZTogYW55W10gPSBbe25hbWU6JzUwIC0gNTAwIHNxLmZ0Jyx2YWx1ZTonNTAtNTAwJ30se25hbWU6ICc1MDAgLSA3NTAgc3EuZnQnLHZhbHVlOic1MDAtNzUwJ30se25hbWU6Jzc1MCAtIDEwMDAgc3EuZnQnLHZhbHVlOic3NTAtMTAwMCd9LCB7bmFtZTonMTAwMCAtIDE1MDAgc3EuZnQnLHZhbHVlOicxMDAwLTE1MDAnfSwge25hbWU6JzE1MDAgLSAyMDAwIHNxLmZ0Jyx2YWx1ZTonMTUwMC0yMDAwJ30se25hbWU6ICcyMDAwKyBzcS5mdCcsdmFsdWU6JzIwMDArJ31dO1xyXG4gIHBsYW46IHN0cmluZyA9ICdtb250aGx5JztcclxuICBzaG93TmF2R3JvdXA6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIG5vb2ZzdG9yZXNpdGVtOiBhbnk7XHJcbiAgbm9vZnN0b3Jlc0lzc3VlOiBhbnk7XHJcbiAgQXZnc3RvcmVzaXRlbTogYW55O1xyXG4gIEF2Z3N0b3Jlc0lzc3VlOiBhbnk7XHJcbiAgdXBkYXRlaW5mbzogYW55O1xyXG4gIGFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNsaWVudEluZm86IGFueTtcclxuICBwcmljZTphbnk7XHJcbiAgb3JpZ2luYWxQcmljZTphbnkgPSAwO1xyXG4gIG9sZFByb2R1Y3RzOmFueTtcclxuICBkaXNhYmxlQnRuOmJvb2xlYW4gPSB0cnVlO1xyXG4gIHRyaWFscHJvZHVjdHM6YW55ID0gW107XHJcbiAgZXhwaXJlZFByb2R1Y3RzOmFueSA9W107XHJcbiAgc3Vic2NyaXB0aW9uID0gJ3ByaWNpbmdwbGFuJztcclxuICBjb25maXJtZWRQcm9kdWN0czphbnkgPSBbXTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuICBjbGllbnRpbmZvOiBhbnk7XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWwsIHB1YmxpYyBhY3RpdmVNb2RlbDogTmdiQWN0aXZlTW9kYWwsIHByaXZhdGUgdG9hc3Q6IFRvYXN0U2VydmljZSwgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLCkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTp2b2lkIHtcclxuICAgIHRoaXMudXBkYXRlc3Vic2NyaXB0aW9uKHRoaXMuY2xpZW50SWQpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG4gIHNlbGVjdFBsYW4ocGxhbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnN1YnNjcmlwdGlvblBlcmlvZCA9IHBsYW47XHJcbiAgICB0aGlzLmJhc2VQcmljaW5nKCk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGUoKSB7XHJcbiAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oVXBkYXRlQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLCBzaXplOiAnbWQnXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLm1vZGFsRGF0YSA9IHtcclxuICAgICAgYnJhbmROYW1lOiB0aGlzLmNsaWVudEluZm8/LmNsaWVudE5hbWUsXHJcbiAgICAgIGdzdE51bWJlcjp0aGlzLmNsaWVudEluZm8/LmJpbGxpbmdEZXRhaWxzPy5nc3ROdW1iZXJ8fCAnJyxcclxuICAgICAgYmlsbGluZ0FkZHJlc3M6dGhpcy5jbGllbnRJbmZvPy5iaWxsaW5nRGV0YWlscz8uYmlsbGluZ0FkZHJlc3N8fCAnJyxcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SW5mbz8uY2xpZW50SWRcclxuICAgIH1cclxuICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5iaWxsaW5nRGV0YWlscy5iaWxsaW5nQWRkcmVzcyA9IHJlc3VsdD8uYmlsbGluZ0FkZHJlc3M7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHRyYWlsZXhwaXJlZCgpIHtcclxuICAgIHRoaXMuYWN0aXZlTW9kZWwuY2xvc2UoKTtcclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUcmFpbEV4cGlyZWRDb21wb25lbnQsIHtcclxuICAgICAgY2VudGVyZWQ6IHRydWUsIHNpemU6ICdtZCdcclxuICAgIH0pO1xyXG4gICAgbW9kYWxSZWYucmVzdWx0LnRoZW4oKHJlc3VsdCkgPT4ge1xyXG5cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY29uZmlybWF0aW9uKCkge1xyXG4gICAgdGhpcy5hY3RpdmVNb2RlbC5jbG9zZSgpO1xyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKFN1YnNjcmlwdGlvbkFwcHJvdmFsQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLCBzaXplOiAnbWQnLCBzY3JvbGxhYmxlOiB0cnVlXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnByb2R1Y3RzID0gdGhpcy5jbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LnByb2R1Y3Q7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5jbGllbnRJbmZvID0gdGhpcy5jbGllbnRJbmZvO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTmF2R3JvdXAoKSB7XHJcbiAgICB0aGlzLnNob3dOYXZHcm91cCA9ICF0aGlzLnNob3dOYXZHcm91cDtcclxuICB9XHJcblxyXG4gIG5vb2ZzdG9yZXNEcm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLkF2Z3N0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgICB0aGlzLm5vb2ZzdG9yZXNkcm9wRG93biA9ICF0aGlzLm5vb2ZzdG9yZXNkcm9wRG93bjtcclxuICB9XHJcbiAgQXZnc3RvcmVzRHJvcGRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5ub29mc3RvcmVzZHJvcERvd24gPSBmYWxzZTtcclxuICAgIHRoaXMuQXZnc3RvcmVzZHJvcERvd24gPSAhdGhpcy5BdmdzdG9yZXNkcm9wRG93bjtcclxuICB9XHJcblxyXG4gIHVwZGF0ZXN1YnNjcmlwdGlvbihpZDogYW55KSB7XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmNsaWVudEJpbGxpbmdJbmZvKGlkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mbyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIGlmKHRoaXMuY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy50cmlhbFByb2R1Y3RzKSB7XHJcbiAgICAgICAgICB0aGlzLnRyaWFscHJvZHVjdHMgPSB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnRyaWFsUHJvZHVjdHMubWFwKChpdGVtOmFueSkgPT4gaXRlbS5wcm9kdWN0TmFtZSkgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZih0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uZXhwaXJlZFByb2R1Y3RzKSB7XHJcbiAgICAgICAgICB0aGlzLmV4cGlyZWRQcm9kdWN0cyA9IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8uZXhwaXJlZFByb2R1Y3RzLm1hcCgoaXRlbTphbnkpID0+IGl0ZW0ucHJvZHVjdE5hbWUpIDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgdGhpcy5vbGRQcm9kdWN0cyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5wcm9kdWN0KSlcclxuICAgICAgICB0aGlzLmJhc2VQcmljaW5nKCk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gIH1cclxuXHJcbiAgYmFzZVByaWNpbmcoKSB7XHJcbiAgICBsZXQgcHJvZHVjdHMgPSB0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJvZHVjdC5maWx0ZXIoKHByb2R1Y3Q6YW55KSA9PiBwcm9kdWN0LmFjdGl2ZSA9PSB0cnVlKS5tYXAoKGl0ZW06YW55KSA9PiBpdGVtLnByb2R1Y3ROYW1lKTtcclxuICAgIGxldCBwYXJhbXM6IGFueSA9IHtcclxuICAgICAgY2FtYXJhUGVyU3FmdDogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdG9yZVNpemUsXHJcbiAgICAgIHN0b3Jlc0NvdW50OiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnRvdGFsU3RvcmVzLFxyXG4gICAgICBwbGFuTmFtZTogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdWJzY3JpcHRpb25QZXJpb2QsXHJcbiAgICAgIHByb2R1Y3RzOiBwcm9kdWN0cyxcclxuICAgICAgY3VycmVuY3lUeXBlOiB0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uY3VycmVuY3lUeXBlIHx8ICdydXBlZXMnXHJcbiAgICB9XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmJhc2VQcmljaW5nKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8ucHJpY2UgPSByZXMuZGF0YS5wcmljZTtcclxuICAgICAgICB0aGlzLm9yaWdpbmFsUHJpY2UgPSByZXMuZGF0YS5PcmlnaW5hbFByaWNlO1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8udG90YWxDYW1lcmEgPSByZXMuZGF0YS5jYW1hcmFDb3VudDtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVQcm9kdWN0KGV2ZW50OmFueSxkYXRhOnN0cmluZykge1xyXG4gICAgbGV0IGNoYW5nZXNDb3VudCA9IDA7XHJcbiAgICBsZXQgcHJvZHVjdEluZGV4ID0gdGhpcy5jbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LnByb2R1Y3QuZmluZEluZGV4KChwcm9kdWN0OmFueSkgPT4gcHJvZHVjdC5wcm9kdWN0TmFtZSA9PSBkYXRhKTtcclxuICAgIGlmKHByb2R1Y3RJbmRleCAhPSAtMSkge1xyXG4gICAgICBpZihldmVudC50YXJnZXQuY2hlY2tlZClcclxuICAgICAgICB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnByb2R1Y3RbcHJvZHVjdEluZGV4XS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICBlbHNlIFxyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8ucHJvZHVjdFtwcm9kdWN0SW5kZXhdLmFjdGl2ZSA9IGZhbHNlOyBcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJvZHVjdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBsZXQgZGV0YWlscyA9IHRoaXMub2xkUHJvZHVjdHMuZmluZCgoZWxlOmFueSkgPT4gZWxlLnByb2R1Y3ROYW1lID09IGl0ZW0ucHJvZHVjdE5hbWUpO1xyXG4gICAgICBpZihkZXRhaWxzKSB7XHJcbiAgICAgICAgaWYoZGV0YWlscy5hY3RpdmUgIT0gaXRlbS5hY3RpdmUpIHtcclxuICAgICAgICAgIGNoYW5nZXNDb3VudCsrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIGlmIChjaGFuZ2VzQ291bnQgPT0gMCkge1xyXG4gICAgICB0aGlzLmRpc2FibGVCdG4gPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuZGlzYWJsZUJ0biA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5iYXNlUHJpY2luZygpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBub29mc3RvcmVzZGF0YShub29mc3RvcmVzdmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby50b3RhbFN0b3JlcyA9IG5vb2ZzdG9yZXN2YWx1ZTtcclxuICAgIHRoaXMubm9vZnN0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgICB0aGlzLmJhc2VQcmljaW5nKCk7XHJcbiAgfVxyXG4gIEF2Z3N0b3Jlc2RhdGEoQXZnc3RvcmVzdmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdG9yZVNpemUgPSBBdmdzdG9yZXN2YWx1ZTtcclxuICAgIHRoaXMuYmFzZVByaWNpbmcoKTtcclxuICAgIHRoaXMuQXZnc3RvcmVzZHJvcERvd24gPSBmYWxzZTtcclxuICB9XHJcbiAgZ2V0Q29sb3JDbGFzcyh0b29sVGlwOiBzdHJpbmcpIHtcclxuICAgIHN3aXRjaCAodG9vbFRpcCkge1xyXG4gICAgICBjYXNlICdTdWJzY3JpYmVkJzogcmV0dXJuICdiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzIG14LTQnO1xyXG4gICAgICBjYXNlICdUcmlhbCBFeHBpcmVkJzogcmV0dXJuICdiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nIG14LTQnO1xyXG4gICAgICBjYXNlICdPbiBUcmlhbCc6IHJldHVybiAnYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeSBteC00JztcclxuICAgICAgZGVmYXVsdDogcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxyXG4gIG9uRG9jdW1lbnRDbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICB0aGlzLkF2Z3N0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgIHRoaXMubm9vZnN0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzaG93SW5mbyhkYXRhOmFueSkge1xyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKE1vZGFsQ29udGVudENvbXBvbmVudCwge1xyXG4gICAgICBjZW50ZXJlZDogdHJ1ZSwgc2l6ZTogJ2xnJywgc2Nyb2xsYWJsZTogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UudXNlciA9IGRhdGE7XHJcbiAgfVxyXG4gIGNsb3NlUG9wdXBBbmRSZWxvYWREYXRhKCkge1xyXG4gICAgdGhpcy5jbGllbnRCaWxsaW5nSW5mbyh0aGlzLmNsaWVudElkKTtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudHJpZ2dlclJlbG9hZCgpO1xyXG4gICAgdGhpcy5hY3RpdmVNb2RlbC5jbG9zZSgpO1xyXG4gIH1cclxuICBjbGllbnRCaWxsaW5nSW5mbyhpZDogYW55KSB7XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmNsaWVudEJpbGxpbmdJbmZvKGlkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50aW5mbyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8c2VjdGlvbiAqbmdJZj1cInN1YnNjcmlwdGlvbiA9PT0gJ3ByaWNpbmdwbGFuJ1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dOYXZHcm91cFwiIGNsYXNzPVwibmF2LWdyb3VwIG5hdi1ncm91cC1vdXRsaW5lIG14LWF1dG8gbXQtOCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tY29sb3ItZ3JheS02MDAgYnRuLWFjdGl2ZSBidG4tYWN0aXZlLXNlY29uZGFyeSBweC02IHB5LTMgbWUtMlwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5zdWJzY3JpcHRpb25QZXJpb2QgPT09ICdtb250aGx5JyA/ICdhY3RpdmVQbGFuQnRuJzonaW5hY3RpdmVQbGFuQnRuJ1wiXHJcbiAgICAgICAgZGF0YS1rdC1wbGFuPVwibW9udGhcIiAoY2xpY2spPVwic2VsZWN0UGxhbignbW9udGhseScpXCI+XHJcbiAgICAgICAgTW9udGhseVxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tY29sb3ItZ3JheS02MDAgYnRuLWFjdGl2ZSBidG4tYWN0aXZlLXNlY29uZGFyeSBweC02IHB5LTNcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cImNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uc3Vic2NyaXB0aW9uUGVyaW9kID09PSAncXVhcnRlcmx5Jz8gJ2FjdGl2ZVBsYW5CdG4nOidpbmFjdGl2ZVBsYW5CdG4nXCJcclxuICAgICAgICBkYXRhLWt0LXBsYW49XCJRdWFydGVybHlcIiAoY2xpY2spPVwic2VsZWN0UGxhbigncXVhcnRlcmx5JylcIj5cclxuICAgICAgICBRdWFydGVybHkgLSAxMCVcclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tY29sb3ItZ3JheS02MDAgYnRuLWFjdGl2ZSBidG4tYWN0aXZlLXNlY29uZGFyeSBweC02IHB5LTNcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cImNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uc3Vic2NyaXB0aW9uUGVyaW9kID09PSAnYW5udWFsJz8gJ2FjdGl2ZVBsYW5CdG4nOidpbmFjdGl2ZVBsYW5CdG4nXCJcclxuICAgICAgICBkYXRhLWt0LXBsYW49XCJhbm51YWxcIiAoY2xpY2spPVwic2VsZWN0UGxhbignYW5udWFsJylcIj5cclxuICAgICAgICBBbm51YWwgLSAxNSVcclxuICAgIDwvYnV0dG9uPlxyXG5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwibW9kYWwtYm9keSByb3cgXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTYgcGUtOCB2ZXJ0aWNhbFwiPlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZ2LXJvdyBmdi1wbHVnaW5zLWljb24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0yXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJoZWFkaW5ndGV4dCBtYi0zXCI+Tm8gb2YgU3RvcmVzIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tc2VsZWN0IGRyb3BzZWxlY3QgbGV2ZWx2aWV3dGV4dFwiIGlkPVwiY3VycmVuY3lcIiAoY2xpY2spPVwibm9vZnN0b3Jlc0Ryb3Bkb3duKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiRGVmYXVsdCBzZWxlY3QgZXhhbXBsZVwiPnt7Y2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy50b3RhbFN0b3JlcyB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBub29mc3RvcmVzdHlwZVswXX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vb2ZzdG9yZXNkcm9wRG93blwiIGNsYXNzPVwiY2FyZCBweS0yIHctMTAwIHBvc2l0aW9uLWFic29sdXRlIGVuZC0wIHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IG5vb2ZzdG9yZXMgb2Ygbm9vZnN0b3Jlc3R5cGVcIiBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cImNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8udG90YWxTdG9yZXMgPT09IG5vb2ZzdG9yZXMgPyAnYWN0aXZlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2R1Y3R0ZXh0IHB4LTUgaXRlbXMgY3Vyc29yLXBvaW50ZXIgcHktNFwiIChjbGljayk9XCJub29mc3RvcmVzZGF0YShub29mc3RvcmVzKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG5vb2ZzdG9yZXMgfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImhlYWRpbmd0ZXh0IG1iLTNcIj5BdmVyYWdlIFNpemUgb2YgU3RvcmVzIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tc2VsZWN0IGRyb3BzZWxlY3QgbGV2ZWx2aWV3dGV4dFwiIGlkPVwiY3VycmVuY3lcIiAoY2xpY2spPVwiQXZnc3RvcmVzRHJvcGRvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJEZWZhdWx0IHNlbGVjdCBleGFtcGxlXCI+e3tjbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LnN0b3JlU2l6ZSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBBdmdzdG9yZXN0eXBlWzBdLnZhbHVlfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiQXZnc3RvcmVzZHJvcERvd25cIiBjbGFzcz1cImNhcmQgcHktMiB3LTEwMCBwb3NpdGlvbi1hYnNvbHV0ZSBlbmQtMCB6LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0Zvcj1cImxldCBBdmdzdG9yZXMgb2YgQXZnc3RvcmVzdHlwZVwiIGNsYXNzPVwibGlzdC11bnN0eWxlZCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5zdG9yZVNpemUgPT09IEF2Z3N0b3JlcyA/ICdhY3RpdmUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCIgKGNsaWNrKT1cIkF2Z3N0b3Jlc2RhdGEoQXZnc3RvcmVzLnZhbHVlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7QXZnc3RvcmVzLm5hbWV9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXhjYW0gbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgTWF4aW11bSB7e2NsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8udG90YWxDYW1lcmF9fSBDYW1lcmFzIGFyZSBwZXJtaXR0ZWQgaW4gc3RvcmVzIHdpdGggc3F1YXJlIGZlZXQgYmV0d2VlbiB7e2NsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uc3RvcmVTaXplfX0uXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0dGV4dCBteS01IG10LTEyXCI+U2VsZWN0IFByb2R1Y3RzPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHByb2R1Y3RsaXN0IG9mIGNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJvZHVjdFwiIGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtNlwiPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPHNwYW4+PGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiIHJvbGU9XCJzd2l0Y2hcIiBpZD1cInRhbmdvcmV2b3BcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInByb2R1Y3RsaXN0LmFjdGl2ZSA9PT0gdHJ1ZVwiIChjaGFuZ2UpPVwidXBkYXRlUHJvZHVjdCgkZXZlbnQscHJvZHVjdGxpc3QucHJvZHVjdE5hbWUpXCIgW2Rpc2FibGVkXT1cInByb2R1Y3RsaXN0LnN0YXR1cyA9PT0gJ2xpdmUnIHx8IHByb2R1Y3RsaXN0LnN0YXR1cyA9PT0gJ3RyaWFsJyBcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZmxleFN3aXRjaENoZWNrRGVmYXVsdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIGhlYWRpbmd0ZXh0IGQtZmxleFwiPnt7cHJvZHVjdGxpc3QuYWxpc2VQcm9kdWN0TmFtZX19IFxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJnZXRDb2xvckNsYXNzKHByb2R1Y3RsaXN0LnRvb2xUaXApXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7cHJvZHVjdGxpc3QudG9vbFRpcH19IDxzcGFuICpuZ0lmPVwiZXhwaXJlZFByb2R1Y3RzLmxlbmd0aCAmJiBwcm9kdWN0bGlzdC5wcm9kdWN0TmFtZS5pbmNsdWRlcyhleHBpcmVkUHJvZHVjdHMpXCI+PGltZyBjbGFzcz1cIm1zLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy9jbG9ja2V4cGlyeS1pY29uLnN2Z1wiIGFsdD1cIlwiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPiA8c3BhbiAqbmdJZj1cInRyaWFscHJvZHVjdHMubGVuZ3RoICYmIHByb2R1Y3RsaXN0LnByb2R1Y3ROYW1lLmluY2x1ZGVzKHRyaWFscHJvZHVjdHMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibXMtMlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL3ByaW1hcnktY2xvY2staWNvbi5zdmdcIiBhbHQ9XCJcIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2aWV3XCIgKGNsaWNrKT1cInNob3dJbmZvKHByb2R1Y3RsaXN0LnByb2R1Y3ROYW1lKVwiPlZpZXcgSW5mbyA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOSA2LjVWOS41QzkgOS43NjUyMiA4Ljg5NDY0IDEwLjAxOTYgOC43MDcxMSAxMC4yMDcxQzguNTE5NTcgMTAuMzk0NiA4LjI2NTIyIDEwLjUgOCAxMC41SDIuNUMyLjIzNDc4IDEwLjUgMS45ODA0MyAxMC4zOTQ2IDEuNzkyODkgMTAuMjA3MUMxLjYwNTM2IDEwLjAxOTYgMS41IDkuNzY1MjIgMS41IDkuNVY0QzEuNSAzLjczNDc4IDEuNjA1MzYgMy40ODA0MyAxLjc5Mjg5IDMuMjkyODlDMS45ODA0MyAzLjEwNTM2IDIuMjM0NzggMyAyLjUgM0g1LjVNNy41IDEuNUgxMC41TTEwLjUgMS41VjQuNU0xMC41IDEuNUw1IDdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDA5QkYzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG5cclxuXHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNiBweC04XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBiLTZcIj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcmljaW5ndGV4dFwiPnt7Y2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5zdWJzY3JpcHRpb25UeXBlIHwgdGl0bGVjYXNlfX08L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZW1pIG10LTJcIj5cclxuICAgICAgICAgICAgICAgIEludGVncmF0ZWQgU29sdXRpb24gZm9yIEdyb3dpbmcgQnVzaW5lc3NcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImQtZmxleFwiPjxzcGFuIGNsYXNzPVwibWUtMyBtdC01XCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjIzMV80MjM0MilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03Ljk5OTY3IDEwLjY2NzNWOC4wMDA2NU03Ljk5OTY3IDUuMzMzOThIOC4wMDYzNE0xNC42NjYzIDguMDAwNjVDMTQuNjY2MyAxMS42ODI2IDExLjY4MTYgMTQuNjY3MyA3Ljk5OTY3IDE0LjY2NzNDNC4zMTc3OCAxNC42NjczIDEuMzMzMDEgMTEuNjgyNiAxLjMzMzAxIDguMDAwNjVDMS4zMzMwMSA0LjMxODc1IDQuMzE3NzggMS4zMzM5OCA3Ljk5OTY3IDEuMzMzOThDMTEuNjgxNiAxLjMzMzk4IDE0LjY2NjMgNC4zMTg3NSAxNC42NjYzIDguMDAwNjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjQjU0NzA4XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIyMzFfNDIzNDJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0ZXh0IG10LTZcIj5Zb3Ugd2lsbCBvbmx5IGJlIGNoYXJnZWQgZm9yIDwgVGFuZ28gVHJhZmZpYyxUYW5nbyA8YnI+Wm9uZSAmIFRhbmdvIFJldk9wcyA+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViMXRleHQgbXQtNVwiPlN0YXJ0cyBmcm9tIDxzcGFuIGNsYXNzPVwiYmlsbGVkdGV4dCBtcy0yXCI+PHM+PHNwYW4gKm5nSWY9XCJjbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LmN1cnJlbmN5VHlwZSA9PT0gJ2lucidcIj7igrk8L3NwYW4+PHNwYW4gKm5nSWY9XCJjbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LmN1cnJlbmN5VHlwZSA9PT0gJ2RvbGxhcidcIj4kPC9zcGFuPnt7b3JpZ2luYWxQcmljZX19PC9zPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmlsbGluZ3RleHQgbXMtNFwiPjxzcGFuICpuZ0lmPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5jdXJyZW5jeVR5cGUgPT09ICdpbnInXCI+4oK5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5jdXJyZW5jeVR5cGUgPT09ICdkb2xsYXInXCI+JDwvc3Bhbj57e2NsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJpY2UgfHwgMH19PC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViMXRleHQgbXQtMlwiPlBlciBzdG9yZSBQZXIgbW9udGg8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHN0ZXh0XCI+QmlsbGluZyBEZXRhaWxzPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdWIxdGV4dCBweS00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi00XCI+QnJhbmQgTmFtZToge3tjbGllbnRJbmZvPy5jbGllbnROYW1lfX08L2Rpdj5cclxuICAgICAgICAgICAgPGRpdj5CaWxsaW5nIEFkZHJlc3M6IHt7Y2xpZW50SW5mbz8uYmlsbGluZ0RldGFpbHM/LmJpbGxpbmdBZGRyZXNzIHx8ICctLSd9fTwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBzdWJzY3JpYmVcIj4gXHJcbiAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInVwZGF0ZSgpXCIgdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtcy0yIG5nLXN0YXItaW5zZXJ0ZWQgdy0xMDAgYnRuLWJsb2NrIHRleHQtbm93cmFwXCIgKm5nSWY9XCIhY2xpZW50SW5mbz8uYmlsbGluZ0RldGFpbHM/LmJpbGxpbmdBZGRyZXNzXCI+PHNwYW4gY2xhc3M9XCJzdWJtaXRcIj5FbnRlclxyXG4gICAgICAgICAgICAgICAgICAgIEJpbGxpbmcgRGV0YWlscyA8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImNvbmZpcm1hdGlvbigpXCIgdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiICpuZ0lmPVwiY2xpZW50SW5mbz8uYmlsbGluZ0RldGFpbHM/LmJpbGxpbmdBZGRyZXNzXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1zLTIgbmctc3Rhci1pbnNlcnRlZCB3LTEwMCBidG4tYmxvY2tcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCIgW2Rpc2FibGVkXT1cImRpc2FibGVCdG5cIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3VibWl0XCI+U3Vic2NyaWJlIE5vdyA8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48L3NlY3Rpb24+XHJcblxyXG48ZGl2ICpuZ0lmPVwic3Vic2NyaXB0aW9uID09PSAnY29uZmlybWF0aW9ubWVzc2FnZSdcIiBjbGFzcz1cIm1vZGFsLWNvbnRlbnQgZ2lmaW1hZ2VcIiA+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC02XCI+XHJcbiAgICAgICAgPGRpdj48aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL2NoZWNrLWljb24uc3ZnXCIgYWx0PVwiXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmcgbXQtNCBtcy0xXCI+VGhhbmtzIGZvciB0aGUgc3Vic2NyaXB0aW9uITwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZnYtcm93IGZ2LXBsdWdpbnMtaWNvbi1jb250YWluZXJcIj5cclxuICAgICAgICBcclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnR0ZXh0IG10LTQgbXgtMlwiPllvdSBoYXZlIHN1Y2Nlc3NmdWxseSBzdWJzY3JpYmVkIHRvIG91ciBwcm9kdWN0cyBcclxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm10LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgY29uZmlybWVkUHJvZHVjdHNcIj57e3Byb2R1Y3R9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0yIHB5LTJcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkIHctMTAwXCIgKGNsaWNrKT1cImNsb3NlUG9wdXBBbmRSZWxvYWREYXRhKClcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Ym1pdFwiPk9rYXk8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
219
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBncmFkZS1wbGFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvdXBncmFkZS1wbGFuL3VwZ3JhZGUtcGxhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3VwZ3JhZGUtcGxhbi91cGdyYWRlLXBsYW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWEsS0FBSyxFQUFVLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFHekcsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7OztBQU1qRixNQUFNLE9BQU8sb0JBQW9CO0lBMkJYO0lBQStCO0lBQXFDO0lBQTZCO0lBQWdFO0lBMUI1SyxRQUFRLENBQU87SUFDeEIsa0JBQWtCLEdBQVksS0FBSyxDQUFDO0lBQ3BDLGlCQUFpQixHQUFZLEtBQUssQ0FBQztJQUNuQyxjQUFjLEdBQVUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFB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LCBJbnB1dCwgT25Jbml0LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVXBkYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vdXBkYXRlL3VwZGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ2JBY3RpdmVNb2RhbCwgTmdiTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IFN1Y2Nlc3NmdWxsU3Vic2NyaXB0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vc3VjY2Vzc2Z1bGwtc3Vic2NyaXB0aW9uL3N1Y2Nlc3NmdWxsLXN1YnNjcmlwdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmFpbEV4cGlyZWRDb21wb25lbnQgfSBmcm9tICcuLi90cmFpbC1leHBpcmVkL3RyYWlsLWV4cGlyZWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uQXBwcm92YWxDb21wb25lbnQgfSBmcm9tICcuLi9zdWJzY3JpcHRpb24tYXBwcm92YWwvc3Vic2NyaXB0aW9uLWFwcHJvdmFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5pbXBvcnQgeyBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3BheW1lbnQtc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTW9kYWxDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vbW9kZWwtY29udGVudC9tb2RlbC1jb250ZW50LmNvbXBvbmVudCc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXVwZ3JhZGUtcGxhbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VwZ3JhZGUtcGxhbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3VwZ3JhZGUtcGxhbi5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVwZ3JhZGVQbGFuQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LE9uSW5pdCB7XHJcbiAgQElucHV0KCkgY2xpZW50SWQ6c3RyaW5nXHJcbiAgbm9vZnN0b3Jlc2Ryb3BEb3duOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQXZnc3RvcmVzZHJvcERvd246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBub29mc3RvcmVzdHlwZTogYW55W10gPSBbJzEoZnJlZSknLCAnMiAtIDI1JywgJzI2IC0gNTAnLCAnNTEgLSA3NScsICc3NiAtIDEwMCcsICcxMDArJ107XHJcbiAgQXZnc3RvcmVzdHlwZTogYW55W10gPSBbe25hbWU6JzUwIC0gNTAwIHNxLmZ0Jyx2YWx1ZTonNTAtNTAwJ30se25hbWU6ICc1MDAgLSA3NTAgc3EuZnQnLHZhbHVlOic1MDAtNzUwJ30se25hbWU6Jzc1MCAtIDEwMDAgc3EuZnQnLHZhbHVlOic3NTAtMTAwMCd9LCB7bmFtZTonMTAwMCAtIDE1MDAgc3EuZnQnLHZhbHVlOicxMDAwLTE1MDAnfSwge25hbWU6JzE1MDAgLSAyMDAwIHNxLmZ0Jyx2YWx1ZTonMTUwMC0yMDAwJ30se25hbWU6ICcyMDAwKyBzcS5mdCcsdmFsdWU6JzIwMDArJ31dO1xyXG4gIHBsYW46IHN0cmluZyA9ICdtb250aGx5JztcclxuICBzaG93TmF2R3JvdXA6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIG5vb2ZzdG9yZXNpdGVtOiBhbnk7XHJcbiAgbm9vZnN0b3Jlc0lzc3VlOiBhbnk7XHJcbiAgQXZnc3RvcmVzaXRlbTogYW55O1xyXG4gIEF2Z3N0b3Jlc0lzc3VlOiBhbnk7XHJcbiAgdXBkYXRlaW5mbzogYW55O1xyXG4gIGFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNsaWVudEluZm86IGFueTtcclxuICBwcmljZTphbnk7XHJcbiAgb3JpZ2luYWxQcmljZTphbnkgPSAwO1xyXG4gIG9sZFByb2R1Y3RzOmFueTtcclxuICBkaXNhYmxlQnRuOmJvb2xlYW4gPSB0cnVlO1xyXG4gIHRyaWFscHJvZHVjdHM6YW55ID0gW107XHJcbiAgZXhwaXJlZFByb2R1Y3RzOmFueSA9W107XHJcbiAgc3Vic2NyaXB0aW9uID0gJ3ByaWNpbmdwbGFuJztcclxuICBjb25maXJtZWRQcm9kdWN0czphbnkgPSBbXTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuICBjbGllbnRpbmZvOiBhbnk7XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWwsIHB1YmxpYyBhY3RpdmVNb2RlbDogTmdiQWN0aXZlTW9kYWwsIHByaXZhdGUgdG9hc3Q6IFRvYXN0U2VydmljZSwgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLCkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTp2b2lkIHtcclxuICAgIHRoaXMudXBkYXRlc3Vic2NyaXB0aW9uKHRoaXMuY2xpZW50SWQpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG4gIHNlbGVjdFBsYW4ocGxhbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnN1YnNjcmlwdGlvblBlcmlvZCA9IHBsYW47XHJcbiAgICB0aGlzLmJhc2VQcmljaW5nKCk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGUoKSB7XHJcbiAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oVXBkYXRlQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLCBzaXplOiAnbWQnXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLm1vZGFsRGF0YSA9IHtcclxuICAgICAgYnJhbmROYW1lOiB0aGlzLmNsaWVudEluZm8/LmNsaWVudE5hbWUsXHJcbiAgICAgIGdzdE51bWJlcjp0aGlzLmNsaWVudEluZm8/LmJpbGxpbmdEZXRhaWxzPy5nc3ROdW1iZXJ8fCAnJyxcclxuICAgICAgYmlsbGluZ0FkZHJlc3M6dGhpcy5jbGllbnRJbmZvPy5iaWxsaW5nRGV0YWlscz8uYmlsbGluZ0FkZHJlc3N8fCAnJyxcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SW5mbz8uY2xpZW50SWRcclxuICAgIH1cclxuICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5iaWxsaW5nRGV0YWlscy5iaWxsaW5nQWRkcmVzcyA9IHJlc3VsdD8uYmlsbGluZ0FkZHJlc3M7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHRyYWlsZXhwaXJlZCgpIHtcclxuICAgIHRoaXMuYWN0aXZlTW9kZWwuY2xvc2UoKTtcclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUcmFpbEV4cGlyZWRDb21wb25lbnQsIHtcclxuICAgICAgY2VudGVyZWQ6IHRydWUsIHNpemU6ICdtZCdcclxuICAgIH0pO1xyXG4gICAgbW9kYWxSZWYucmVzdWx0LnRoZW4oKHJlc3VsdCkgPT4ge1xyXG5cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY29uZmlybWF0aW9uKCkge1xyXG4gICAgdGhpcy5hY3RpdmVNb2RlbC5jbG9zZSgpO1xyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKFN1YnNjcmlwdGlvbkFwcHJvdmFsQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLCBzaXplOiAnbWQnLCBzY3JvbGxhYmxlOiB0cnVlXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnByb2R1Y3RzID0gdGhpcy5jbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LnByb2R1Y3Q7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5jbGllbnRJbmZvID0gdGhpcy5jbGllbnRJbmZvO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTmF2R3JvdXAoKSB7XHJcbiAgICB0aGlzLnNob3dOYXZHcm91cCA9ICF0aGlzLnNob3dOYXZHcm91cDtcclxuICB9XHJcblxyXG4gIG5vb2ZzdG9yZXNEcm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLkF2Z3N0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgICB0aGlzLm5vb2ZzdG9yZXNkcm9wRG93biA9ICF0aGlzLm5vb2ZzdG9yZXNkcm9wRG93bjtcclxuICB9XHJcbiAgQXZnc3RvcmVzRHJvcGRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5ub29mc3RvcmVzZHJvcERvd24gPSBmYWxzZTtcclxuICAgIHRoaXMuQXZnc3RvcmVzZHJvcERvd24gPSAhdGhpcy5BdmdzdG9yZXNkcm9wRG93bjtcclxuICB9XHJcblxyXG4gIHVwZGF0ZXN1YnNjcmlwdGlvbihpZDogYW55KSB7XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmNsaWVudEJpbGxpbmdJbmZvKGlkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mbyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIGlmKHRoaXMuY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy50cmlhbFByb2R1Y3RzKSB7XHJcbiAgICAgICAgICB0aGlzLnRyaWFscHJvZHVjdHMgPSB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnRyaWFsUHJvZHVjdHMubWFwKChpdGVtOmFueSkgPT4gaXRlbS5wcm9kdWN0TmFtZSkgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZih0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uZXhwaXJlZFByb2R1Y3RzKSB7XHJcbiAgICAgICAgICB0aGlzLmV4cGlyZWRQcm9kdWN0cyA9IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8uZXhwaXJlZFByb2R1Y3RzLm1hcCgoaXRlbTphbnkpID0+IGl0ZW0ucHJvZHVjdE5hbWUpIDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgdGhpcy5vbGRQcm9kdWN0cyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5wcm9kdWN0KSlcclxuICAgICAgICB0aGlzLmJhc2VQcmljaW5nKCk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gIH1cclxuXHJcbiAgYmFzZVByaWNpbmcoKSB7XHJcbiAgICBsZXQgcHJvZHVjdHMgPSB0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJvZHVjdC5maWx0ZXIoKHByb2R1Y3Q6YW55KSA9PiBwcm9kdWN0LmFjdGl2ZSA9PSB0cnVlKS5tYXAoKGl0ZW06YW55KSA9PiBpdGVtLnByb2R1Y3ROYW1lKTtcclxuICAgIGxldCBwYXJhbXM6IGFueSA9IHtcclxuICAgICAgY2FtYXJhUGVyU3FmdDogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdG9yZVNpemUsXHJcbiAgICAgIHN0b3Jlc0NvdW50OiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnRvdGFsU3RvcmVzLFxyXG4gICAgICBwbGFuTmFtZTogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdWJzY3JpcHRpb25QZXJpb2QsXHJcbiAgICAgIHByb2R1Y3RzOiBwcm9kdWN0cyxcclxuICAgICAgY3VycmVuY3lUeXBlOiB0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uY3VycmVuY3lUeXBlIHx8ICdydXBlZXMnXHJcbiAgICB9XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmJhc2VQcmljaW5nKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8ucHJpY2UgPSByZXMuZGF0YS5wcmljZTtcclxuICAgICAgICB0aGlzLm9yaWdpbmFsUHJpY2UgPSByZXMuZGF0YS5PcmlnaW5hbFByaWNlO1xyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8udG90YWxDYW1lcmEgPSByZXMuZGF0YS5jYW1hcmFDb3VudDtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVQcm9kdWN0KGV2ZW50OmFueSxkYXRhOnN0cmluZykge1xyXG4gICAgbGV0IGNoYW5nZXNDb3VudCA9IDA7XHJcbiAgICBsZXQgcHJvZHVjdEluZGV4ID0gdGhpcy5jbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LnByb2R1Y3QuZmluZEluZGV4KChwcm9kdWN0OmFueSkgPT4gcHJvZHVjdC5wcm9kdWN0TmFtZSA9PSBkYXRhKTtcclxuICAgIGlmKHByb2R1Y3RJbmRleCAhPSAtMSkge1xyXG4gICAgICBpZihldmVudC50YXJnZXQuY2hlY2tlZClcclxuICAgICAgICB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnByb2R1Y3RbcHJvZHVjdEluZGV4XS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICBlbHNlIFxyXG4gICAgICAgIHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8ucHJvZHVjdFtwcm9kdWN0SW5kZXhdLmFjdGl2ZSA9IGZhbHNlOyBcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJvZHVjdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBsZXQgZGV0YWlscyA9IHRoaXMub2xkUHJvZHVjdHMuZmluZCgoZWxlOmFueSkgPT4gZWxlLnByb2R1Y3ROYW1lID09IGl0ZW0ucHJvZHVjdE5hbWUpO1xyXG4gICAgICBpZihkZXRhaWxzKSB7XHJcbiAgICAgICAgaWYoZGV0YWlscy5hY3RpdmUgIT0gaXRlbS5hY3RpdmUpIHtcclxuICAgICAgICAgIGNoYW5nZXNDb3VudCsrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIGlmIChjaGFuZ2VzQ291bnQgPT0gMCkge1xyXG4gICAgICB0aGlzLmRpc2FibGVCdG4gPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuZGlzYWJsZUJ0biA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5iYXNlUHJpY2luZygpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBub29mc3RvcmVzZGF0YShub29mc3RvcmVzdmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby50b3RhbFN0b3JlcyA9IG5vb2ZzdG9yZXN2YWx1ZTtcclxuICAgIHRoaXMubm9vZnN0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgICB0aGlzLmJhc2VQcmljaW5nKCk7XHJcbiAgfVxyXG4gIEF2Z3N0b3Jlc2RhdGEoQXZnc3RvcmVzdmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdG9yZVNpemUgPSBBdmdzdG9yZXN2YWx1ZTtcclxuICAgIHRoaXMuYmFzZVByaWNpbmcoKTtcclxuICAgIHRoaXMuQXZnc3RvcmVzZHJvcERvd24gPSBmYWxzZTtcclxuICB9XHJcbiAgZ2V0Q29sb3JDbGFzcyh0b29sVGlwOiBzdHJpbmcpIHtcclxuICAgIHN3aXRjaCAodG9vbFRpcCkge1xyXG4gICAgICBjYXNlICdTdWJzY3JpYmVkJzogcmV0dXJuICdiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzIG14LTQnO1xyXG4gICAgICBjYXNlICdUcmlhbCBFeHBpcmVkJzogcmV0dXJuICdiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nIG14LTQnO1xyXG4gICAgICBjYXNlICdPbiBUcmlhbCc6IHJldHVybiAnYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeSBteC00JztcclxuICAgICAgZGVmYXVsdDogcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxyXG4gIG9uRG9jdW1lbnRDbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICB0aGlzLkF2Z3N0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgIHRoaXMubm9vZnN0b3Jlc2Ryb3BEb3duID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzaG93SW5mbyhkYXRhOmFueSkge1xyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKE1vZGFsQ29udGVudENvbXBvbmVudCwge1xyXG4gICAgICBjZW50ZXJlZDogdHJ1ZSwgc2l6ZTogJ2xnJywgc2Nyb2xsYWJsZTogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UudXNlciA9IGRhdGE7XHJcbiAgfVxyXG4gIGNsb3NlUG9wdXBBbmRSZWxvYWREYXRhKCkge1xyXG4gICAgdGhpcy5jbGllbnRCaWxsaW5nSW5mbyh0aGlzLmNsaWVudElkKTtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudHJpZ2dlclJlbG9hZCgpO1xyXG4gICAgdGhpcy5hY3RpdmVNb2RlbC5jbG9zZSgpO1xyXG4gIH1cclxuICBjbGllbnRCaWxsaW5nSW5mbyhpZDogYW55KSB7XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmNsaWVudEJpbGxpbmdJbmZvKGlkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuY2xpZW50aW5mbyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8c2VjdGlvbiAqbmdJZj1cInN1YnNjcmlwdGlvbiA9PT0gJ3ByaWNpbmdwbGFuJ1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dOYXZHcm91cFwiIGNsYXNzPVwibmF2LWdyb3VwIG5hdi1ncm91cC1vdXRsaW5lIG14LWF1dG8gbXQtOCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tY29sb3ItZ3JheS02MDAgYnRuLWFjdGl2ZSBidG4tYWN0aXZlLXNlY29uZGFyeSBweC02IHB5LTMgbWUtMlwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5zdWJzY3JpcHRpb25QZXJpb2QgPT09ICdtb250aGx5JyA/ICdhY3RpdmVQbGFuQnRuJzonaW5hY3RpdmVQbGFuQnRuJ1wiXHJcbiAgICAgICAgZGF0YS1rdC1wbGFuPVwibW9udGhcIiAoY2xpY2spPVwic2VsZWN0UGxhbignbW9udGhseScpXCI+XHJcbiAgICAgICAgTW9udGhseVxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tY29sb3ItZ3JheS02MDAgYnRuLWFjdGl2ZSBidG4tYWN0aXZlLXNlY29uZGFyeSBweC02IHB5LTNcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cImNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uc3Vic2NyaXB0aW9uUGVyaW9kID09PSAncXVhcnRlcmx5Jz8gJ2FjdGl2ZVBsYW5CdG4nOidpbmFjdGl2ZVBsYW5CdG4nXCJcclxuICAgICAgICBkYXRhLWt0LXBsYW49XCJRdWFydGVybHlcIiAoY2xpY2spPVwic2VsZWN0UGxhbigncXVhcnRlcmx5JylcIj5cclxuICAgICAgICBRdWFydGVybHkgLSAxMCVcclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tY29sb3ItZ3JheS02MDAgYnRuLWFjdGl2ZSBidG4tYWN0aXZlLXNlY29uZGFyeSBweC02IHB5LTNcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cImNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uc3Vic2NyaXB0aW9uUGVyaW9kID09PSAnYW5udWFsJz8gJ2FjdGl2ZVBsYW5CdG4nOidpbmFjdGl2ZVBsYW5CdG4nXCJcclxuICAgICAgICBkYXRhLWt0LXBsYW49XCJhbm51YWxcIiAoY2xpY2spPVwic2VsZWN0UGxhbignYW5udWFsJylcIj5cclxuICAgICAgICBBbm51YWwgLSAxNSVcclxuICAgIDwvYnV0dG9uPlxyXG5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwibW9kYWwtYm9keSByb3cgXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTYgcGUtOCB2ZXJ0aWNhbFwiPlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZ2LXJvdyBmdi1wbHVnaW5zLWljb24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0yXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJoZWFkaW5ndGV4dCBtYi0zXCI+Tm8gb2YgU3RvcmVzIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tc2VsZWN0IGRyb3BzZWxlY3QgbGV2ZWx2aWV3dGV4dFwiIGlkPVwiY3VycmVuY3lcIiAoY2xpY2spPVwibm9vZnN0b3Jlc0Ryb3Bkb3duKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiRGVmYXVsdCBzZWxlY3QgZXhhbXBsZVwiPnt7Y2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy50b3RhbFN0b3JlcyB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBub29mc3RvcmVzdHlwZVswXX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vb2ZzdG9yZXNkcm9wRG93blwiIGNsYXNzPVwiY2FyZCBweS0yIHctMTAwIHBvc2l0aW9uLWFic29sdXRlIGVuZC0wIHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IG5vb2ZzdG9yZXMgb2Ygbm9vZnN0b3Jlc3R5cGVcIiBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cImNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8udG90YWxTdG9yZXMgPT09IG5vb2ZzdG9yZXMgPyAnYWN0aXZlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2R1Y3R0ZXh0IHB4LTUgaXRlbXMgY3Vyc29yLXBvaW50ZXIgcHktNFwiIChjbGljayk9XCJub29mc3RvcmVzZGF0YShub29mc3RvcmVzKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG5vb2ZzdG9yZXMgfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTJcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImhlYWRpbmd0ZXh0IG1iLTNcIj5BdmVyYWdlIFNpemUgb2YgU3RvcmVzIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tc2VsZWN0IGRyb3BzZWxlY3QgbGV2ZWx2aWV3dGV4dFwiIGlkPVwiY3VycmVuY3lcIiAoY2xpY2spPVwiQXZnc3RvcmVzRHJvcGRvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJEZWZhdWx0IHNlbGVjdCBleGFtcGxlXCI+e3tjbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LnN0b3JlU2l6ZSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBBdmdzdG9yZXN0eXBlWzBdLnZhbHVlfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiQXZnc3RvcmVzZHJvcERvd25cIiBjbGFzcz1cImNhcmQgcHktMiB3LTEwMCBwb3NpdGlvbi1hYnNvbHV0ZSBlbmQtMCB6LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0Zvcj1cImxldCBBdmdzdG9yZXMgb2YgQXZnc3RvcmVzdHlwZVwiIGNsYXNzPVwibGlzdC11bnN0eWxlZCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5zdG9yZVNpemUgPT09IEF2Z3N0b3JlcyA/ICdhY3RpdmUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCIgKGNsaWNrKT1cIkF2Z3N0b3Jlc2RhdGEoQXZnc3RvcmVzLnZhbHVlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7QXZnc3RvcmVzLm5hbWV9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXhjYW0gbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgTWF4aW11bSB7e2NsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8udG90YWxDYW1lcmF9fSBDYW1lcmFzIGFyZSBwZXJtaXR0ZWQgaW4gc3RvcmVzIHdpdGggc3F1YXJlIGZlZXQgYmV0d2VlbiB7e2NsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8uc3RvcmVTaXplfX0uXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0dGV4dCBteS01IG10LTEyXCI+U2VsZWN0IFByb2R1Y3RzPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHByb2R1Y3RsaXN0IG9mIGNsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJvZHVjdFwiIGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLXN3aXRjaCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtNlwiPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPHNwYW4+PGlucHV0IGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiIHR5cGU9XCJjaGVja2JveFwiIHJvbGU9XCJzd2l0Y2hcIiBpZD1cInRhbmdvcmV2b3BcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInByb2R1Y3RsaXN0LmFjdGl2ZSA9PT0gdHJ1ZVwiIChjaGFuZ2UpPVwidXBkYXRlUHJvZHVjdCgkZXZlbnQscHJvZHVjdGxpc3QucHJvZHVjdE5hbWUpXCIgW2Rpc2FibGVkXT1cInByb2R1Y3RsaXN0LnN0YXR1cyA9PT0gJ2xpdmUnIHx8IHByb2R1Y3RsaXN0LnN0YXR1cyA9PT0gJ3RyaWFsJyBcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZmxleFN3aXRjaENoZWNrRGVmYXVsdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIGhlYWRpbmd0ZXh0IGQtZmxleFwiPnt7cHJvZHVjdGxpc3QuYWxpc2VQcm9kdWN0TmFtZX19IFxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJnZXRDb2xvckNsYXNzKHByb2R1Y3RsaXN0LnRvb2xUaXApXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7cHJvZHVjdGxpc3QudG9vbFRpcH19IDxzcGFuICpuZ0lmPVwiZXhwaXJlZFByb2R1Y3RzLmxlbmd0aCAmJiBwcm9kdWN0bGlzdC5wcm9kdWN0TmFtZS5pbmNsdWRlcyhleHBpcmVkUHJvZHVjdHMpXCI+PGltZyBjbGFzcz1cIm1zLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy9jbG9ja2V4cGlyeS1pY29uLnN2Z1wiIGFsdD1cIlwiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPiA8c3BhbiAqbmdJZj1cInRyaWFscHJvZHVjdHMubGVuZ3RoICYmIHByb2R1Y3RsaXN0LnByb2R1Y3ROYW1lLmluY2x1ZGVzKHRyaWFscHJvZHVjdHMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibXMtMlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL3ByaW1hcnktY2xvY2staWNvbi5zdmdcIiBhbHQ9XCJcIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2aWV3XCIgKGNsaWNrKT1cInNob3dJbmZvKHByb2R1Y3RsaXN0LnByb2R1Y3ROYW1lKVwiPlZpZXcgSW5mbyA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOSA2LjVWOS41QzkgOS43NjUyMiA4Ljg5NDY0IDEwLjAxOTYgOC43MDcxMSAxMC4yMDcxQzguNTE5NTcgMTAuMzk0NiA4LjI2NTIyIDEwLjUgOCAxMC41SDIuNUMyLjIzNDc4IDEwLjUgMS45ODA0MyAxMC4zOTQ2IDEuNzkyODkgMTAuMjA3MUMxLjYwNTM2IDEwLjAxOTYgMS41IDkuNzY1MjIgMS41IDkuNVY0QzEuNSAzLjczNDc4IDEuNjA1MzYgMy40ODA0MyAxLjc5Mjg5IDMuMjkyODlDMS45ODA0MyAzLjEwNTM2IDIuMjM0NzggMyAyLjUgM0g1LjVNNy41IDEuNUgxMC41TTEwLjUgMS41VjQuNU0xMC41IDEuNUw1IDdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDA5QkYzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG5cclxuXHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNiBweC04XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBiLTZcIj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcmljaW5ndGV4dFwiPnt7Y2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5zdWJzY3JpcHRpb25UeXBlIHwgdGl0bGVjYXNlfX08L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZW1pIG10LTJcIj5cclxuICAgICAgICAgICAgICAgIEludGVncmF0ZWQgU29sdXRpb24gZm9yIEdyb3dpbmcgQnVzaW5lc3NcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImQtZmxleFwiPjxzcGFuIGNsYXNzPVwibWUtMyBtdC01XCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMjIzMV80MjM0MilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03Ljk5OTY3IDEwLjY2NzNWOC4wMDA2NU03Ljk5OTY3IDUuMzMzOThIOC4wMDYzNE0xNC42NjYzIDguMDAwNjVDMTQuNjY2MyAxMS42ODI2IDExLjY4MTYgMTQuNjY3MyA3Ljk5OTY3IDE0LjY2NzNDNC4zMTc3OCAxNC42NjczIDEuMzMzMDEgMTEuNjgyNiAxLjMzMzAxIDguMDAwNjVDMS4zMzMwMSA0LjMxODc1IDQuMzE3NzggMS4zMzM5OCA3Ljk5OTY3IDEuMzMzOThDMTEuNjgxNiAxLjMzMzk4IDE0LjY2NjMgNC4zMTg3NSAxNC42NjYzIDguMDAwNjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjQjU0NzA4XCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzIyMzFfNDIzNDJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0ZXh0IG10LTZcIj5Zb3Ugd2lsbCBvbmx5IGJlIGNoYXJnZWQgZm9yIDwgVGFuZ28gVHJhZmZpYyxUYW5nbyA8YnI+Wm9uZSAmIFRhbmdvIFJldk9wcyA+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViMXRleHQgbXQtNVwiPlN0YXJ0cyBmcm9tIDxzcGFuIGNsYXNzPVwiYmlsbGVkdGV4dCBtcy0yXCI+PHM+PHNwYW4gKm5nSWY9XCJjbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LmN1cnJlbmN5VHlwZSA9PT0gJ2lucidcIj7igrk8L3NwYW4+PHNwYW4gKm5nSWY9XCJjbGllbnRJbmZvPy5jdXJyZW50UGxhbkluZm8/LmN1cnJlbmN5VHlwZSA9PT0gJ2RvbGxhcidcIj4kPC9zcGFuPnt7b3JpZ2luYWxQcmljZX19PC9zPjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmlsbGluZ3RleHQgbXMtNFwiPjxzcGFuICpuZ0lmPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5jdXJyZW5jeVR5cGUgPT09ICdpbnInXCI+4oK5PC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2xpZW50SW5mbz8uY3VycmVudFBsYW5JbmZvPy5jdXJyZW5jeVR5cGUgPT09ICdkb2xsYXInXCI+JDwvc3Bhbj57e2NsaWVudEluZm8/LmN1cnJlbnRQbGFuSW5mbz8ucHJpY2UgfHwgMH19PC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ViMXRleHQgbXQtMlwiPlBlciBzdG9yZSBQZXIgbW9udGg8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHN0ZXh0XCI+QmlsbGluZyBEZXRhaWxzPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdWIxdGV4dCBweS00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi00XCI+QnJhbmQgTmFtZToge3tjbGllbnRJbmZvPy5jbGllbnROYW1lfX08L2Rpdj5cclxuICAgICAgICAgICAgPGRpdj5CaWxsaW5nIEFkZHJlc3M6IHt7Y2xpZW50SW5mbz8uYmlsbGluZ0RldGFpbHM/LmJpbGxpbmdBZGRyZXNzIHx8ICctLSd9fTwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBzdWJzY3JpYmVcIj4gXHJcbiAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInVwZGF0ZSgpXCIgdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtcy0yIG5nLXN0YXItaW5zZXJ0ZWQgdy0xMDAgYnRuLWJsb2NrIHRleHQtbm93cmFwXCIgKm5nSWY9XCIhY2xpZW50SW5mbz8uYmlsbGluZ0RldGFpbHM/LmJpbGxpbmdBZGRyZXNzXCI+PHNwYW4gY2xhc3M9XCJzdWJtaXRcIj5FbnRlclxyXG4gICAgICAgICAgICAgICAgICAgIEJpbGxpbmcgRGV0YWlscyA8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImNvbmZpcm1hdGlvbigpXCIgdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiMFwiICpuZ0lmPVwiY2xpZW50SW5mbz8uYmlsbGluZ0RldGFpbHM/LmJpbGxpbmdBZGRyZXNzXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1zLTIgbmctc3Rhci1pbnNlcnRlZCB3LTEwMCBidG4tYmxvY2tcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCIgW2Rpc2FibGVkXT1cImRpc2FibGVCdG5cIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3VibWl0XCI+U3Vic2NyaWJlIE5vdyA8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48L3NlY3Rpb24+XHJcblxyXG48ZGl2ICpuZ0lmPVwic3Vic2NyaXB0aW9uID09PSAnY29uZmlybWF0aW9ubWVzc2FnZSdcIiBjbGFzcz1cIm1vZGFsLWNvbnRlbnQgZ2lmaW1hZ2VcIiA+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC02XCI+XHJcbiAgICAgICAgPGRpdj48aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL2NoZWNrLWljb24uc3ZnXCIgYWx0PVwiXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmcgbXQtNCBtcy0xXCI+VGhhbmtzIGZvciB0aGUgc3Vic2NyaXB0aW9uITwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZnYtcm93IGZ2LXBsdWdpbnMtaWNvbi1jb250YWluZXJcIj5cclxuICAgICAgICBcclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnR0ZXh0IG10LTQgbXgtMlwiPllvdSBoYXZlIHN1Y2Nlc3NmdWxseSBzdWJzY3JpYmVkIHRvIG91ciBwcm9kdWN0cyBcclxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm10LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgY29uZmlybWVkUHJvZHVjdHNcIj57e3Byb2R1Y3R9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0yIHB5LTJcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkIHctMTAwXCIgKGNsaWNrKT1cImNsb3NlUG9wdXBBbmRSZWxvYWREYXRhKClcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN1Ym1pdFwiPk9rYXk8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|