master-control 0.3.17 → 0.3.18
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/master-control.component.mjs +2 -2
- package/esm2022/lib/stepper-with-arrow/stepper-with-arrow.component.mjs +179 -9
- package/fesm2022/master-control.mjs +179 -9
- package/fesm2022/master-control.mjs.map +1 -1
- package/lib/stepper-with-arrow/stepper-with-arrow.component.d.ts +18 -2
- package/master-control-0.3.18.tgz +0 -0
- package/package.json +2 -2
- package/master-control-0.3.17.tgz +0 -0
|
@@ -74,7 +74,7 @@ export class MasterControlComponent {
|
|
|
74
74
|
formGroup = new FormGroup({});
|
|
75
75
|
constructor() { }
|
|
76
76
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MasterControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
77
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MasterControlComponent, isStandalone: true, selector: "lib-master-control", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: false, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n @case ('progressBar'){\r\n <lib-progress-bar [field]=\"field()\"/>\r\n }\r\n @case ('accordian'){\r\n <lib-accordian [field]=\"field()\"/>\r\n }\r\n @case ('miscInfo'){\r\n <lib-miscellaneous-info-bar [field]=\"field()\"/>\r\n }\r\n @case ('plainText'){\r\n <lib-plain-text [field]=\"field()\"/>\r\n }\r\n @case ('menu'){\r\n <lib-menu [field]=\"field()\" />\r\n }\r\n @case ('stepperWithArrow') {\r\n <lib-stepper-with-arrow [field]=\"field()\" />\r\n }\r\n @case ('labelWithImage') {\r\n <lib-label-with-image [field]=\"field()\" />\r\n }\r\n}\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: TextboxComponent, selector: "lib-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change"] }, { kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: UploadComponent, selector: "lib-upload", inputs: ["field", "reactiveFormControlobject"], outputs: ["filesChanged", "fileRemoved"] }, { kind: "component", type: DobComponent, selector: "lib-dob", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur", "valueChange", "dateSelected", "invalidDate"] }, { kind: "component", type: MobNumberComponent, selector: "lib-mob-number", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: InfoComponent, selector: "lib-info", inputs: ["field"] }, { kind: "component", type: CheckboxComponent, selector: "lib-checkbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: TextareaComponent, selector: "lib-textarea", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: TabComponent, selector: "lib-tab", inputs: ["field"], outputs: ["selectedIndexChange"] }, { kind: "component", type: AutocompleteComponent, selector: "lib-autocomplete", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur", "selectionChanged", "valueChanged", "optionSelected"] }, { kind: "component", type: MultipleSelectComponent, selector: "lib-multiple-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpTextboxComponent, selector: "lib-otp-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AmountTextboxComponent, selector: "lib-amount-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: SuffixTextboxComponent, selector: "lib-suffix-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpMobNumberComponent, selector: "lib-otp-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: TagMobNumberComponent, selector: "lib-tag-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AgeDateComponent, selector: "lib-age-date", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AdditionButtonComponent, selector: "lib-addition-button", inputs: ["field"] }, { kind: "component", type: InfoTextboxComponent, selector: "lib-info-textbox", inputs: ["field", "reactiveFormControlobject", "fields"], outputs: ["infoClick"] }, { kind: "component", type: TextboxWithImageComponent, selector: "lib-textbox-with-image", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: EmailWithDomainComponent, selector: "lib-email-with-domain", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ImageUploadComponent, selector: "lib-image-upload", inputs: ["field"] }, { kind: "component", type: DownloadDocumentComponent, selector: "lib-download-document", inputs: ["field"] }, { kind: "component", type: AddDocumentComponent, selector: "lib-add-document", inputs: ["field"] }, { kind: "component", type: HyperlinkComponent, selector: "lib-hyperlink", inputs: ["field"] }, { kind: "component", type: TextboxWithUnderscoreComponent, selector: "lib-textbox-with-underscore", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: UnderscoreMobNumberComponent, selector: "lib-underscore-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: ImageComponent, selector: "lib-image", inputs: ["field"] }, { kind: "component", type: StepperComponent, selector: "lib-stepper", inputs: ["field"] }, { kind: "component", type: CardComponent, selector: "lib-card", inputs: ["field"], outputs: ["cardDetailsClicked"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: SearchMultiSelectComponent, selector: "lib-search-multi-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SubscriptTextboxComponent, selector: "lib-subscript-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: LabelComponent, selector: "lib-label", inputs: ["field"] }, { kind: "component", type: SubHeaderComponent, selector: "lib-sub-header", inputs: ["field"] }, { kind: "component", type: HeaderComponent, selector: "lib-header", inputs: ["field"] }, { kind: "component", type: TextboxWithTextComponent, selector: "lib-textbox-with-text", inputs: ["reactiveFormControlobject", "field"], outputs: ["blur"] }, { kind: "component", type: DiscountComponent, selector: "lib-discount", inputs: ["field"] }, { kind: "component", type: BenefitCardComponent, selector: "lib-benefit-card", inputs: ["field"] }, { kind: "component", type: TableComponent, selector: "lib-table", inputs: ["field", "readonly"], outputs: ["actionItemClicked", "tablePaginationClicked"] }, { kind: "component", type: LoaderComponent, selector: "lib-loader", inputs: ["field"] }, { kind: "component", type: WarningSnackbarComponent, selector: "lib-warning-snackbar", inputs: ["field"] }, { kind: "component", type: SuccessSnackbarComponent, selector: "lib-success-snackbar", inputs: ["field"] }, { kind: "component", type: NeutralSnackbarComponent, selector: "lib-neutral-snackbar", inputs: ["field"] }, { kind: "component", type: ErrorSnackbarComponent, selector: "lib-error-snackbar", inputs: ["field"] }, { kind: "component", type: GreyLabelComponent, selector: "lib-grey-label", inputs: ["field"] }, { kind: "component", type: IframeComponent, selector: "lib-iframe", inputs: ["field"] }, { kind: "component", type: ToggleButtonComponent, selector: "lib-toggle-button", inputs: ["reactiveFormControlobject", "field"], outputs: ["selectionChanged", "change"] }, { kind: "component", type: PayGetCardComponent, selector: "lib-pay-get-card", inputs: ["field", "payAmount", "premiumAmount", "ptValue", "years", "frequency"] }, { kind: "component", type: InBuiltBenefitComponent, selector: "lib-in-built-benefit", inputs: ["field", "premiumAmount", "premiumAmountShort"] }, { kind: "component", type: OtherBenefitsComponent, selector: "lib-other-benefits", inputs: ["field"] }, { kind: "component", type: AnnuityRateLogoComponent, selector: "lib-annuity-rate-logo", inputs: ["field", "ratePercent"] }, { kind: "component", type: DiscountV2Component, selector: "lib-discount-v2", inputs: ["field"] }, { kind: "component", type: LabelValueCardComponent, selector: "lib-label-value-card", inputs: ["field"] }, { kind: "component", type: MedialQuestionsComponent, selector: "lib-medial-questions", inputs: ["medialQuestionResponse", "field"] }, { kind: "component", type: PageNudgeComponent, selector: "lib-page-nudge", inputs: ["field"] }, { kind: "component", type: ProgressBarComponent, selector: "lib-progress-bar", inputs: ["field"] }, { kind: "component", type: AccordianComponent, selector: "lib-accordian", inputs: ["field"] }, { kind: "component", type: MiscellaneousInfoBarComponent, selector: "lib-miscellaneous-info-bar", inputs: ["field", "details"] }, { kind: "component", type: PlainTextComponent, selector: "lib-plain-text", inputs: ["field"] }, { kind: "component", type: MenuComponent, selector: "lib-menu", inputs: ["field"] }, { kind: "component", type: StepperWIthArrowComponent, selector: "lib-stepper-with-arrow", inputs: ["field"], outputs: ["selectedStep"] }, { kind: "component", type: LabelWithImageComponent, selector: "lib-label-with-image", inputs: ["field"] }] });
|
|
77
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MasterControlComponent, isStandalone: true, selector: "lib-master-control", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formGroup: { classPropertyName: "formGroup", publicName: "formGroup", isSignal: false, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n @case ('progressBar'){\r\n <lib-progress-bar [field]=\"field()\"/>\r\n }\r\n @case ('accordian'){\r\n <lib-accordian [field]=\"field()\"/>\r\n }\r\n @case ('miscInfo'){\r\n <lib-miscellaneous-info-bar [field]=\"field()\"/>\r\n }\r\n @case ('plainText'){\r\n <lib-plain-text [field]=\"field()\"/>\r\n }\r\n @case ('menu'){\r\n <lib-menu [field]=\"field()\" />\r\n }\r\n @case ('stepperWithArrow') {\r\n <lib-stepper-with-arrow [field]=\"field()\" />\r\n }\r\n @case ('labelWithImage') {\r\n <lib-label-with-image [field]=\"field()\" />\r\n }\r\n}\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: TextboxComponent, selector: "lib-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change"] }, { kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: UploadComponent, selector: "lib-upload", inputs: ["field", "reactiveFormControlobject"], outputs: ["filesChanged", "fileRemoved"] }, { kind: "component", type: DobComponent, selector: "lib-dob", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur", "valueChange", "dateSelected", "invalidDate"] }, { kind: "component", type: MobNumberComponent, selector: "lib-mob-number", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: InfoComponent, selector: "lib-info", inputs: ["field"] }, { kind: "component", type: CheckboxComponent, selector: "lib-checkbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: TextareaComponent, selector: "lib-textarea", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: TabComponent, selector: "lib-tab", inputs: ["field"], outputs: ["selectedIndexChange"] }, { kind: "component", type: AutocompleteComponent, selector: "lib-autocomplete", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur", "selectionChanged", "valueChanged", "optionSelected"] }, { kind: "component", type: MultipleSelectComponent, selector: "lib-multiple-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpTextboxComponent, selector: "lib-otp-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AmountTextboxComponent, selector: "lib-amount-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: SuffixTextboxComponent, selector: "lib-suffix-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: OtpMobNumberComponent, selector: "lib-otp-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: TagMobNumberComponent, selector: "lib-tag-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AgeDateComponent, selector: "lib-age-date", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: AdditionButtonComponent, selector: "lib-addition-button", inputs: ["field"] }, { kind: "component", type: InfoTextboxComponent, selector: "lib-info-textbox", inputs: ["field", "reactiveFormControlobject", "fields"], outputs: ["infoClick"] }, { kind: "component", type: TextboxWithImageComponent, selector: "lib-textbox-with-image", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: EmailWithDomainComponent, selector: "lib-email-with-domain", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ImageUploadComponent, selector: "lib-image-upload", inputs: ["field"] }, { kind: "component", type: DownloadDocumentComponent, selector: "lib-download-document", inputs: ["field"] }, { kind: "component", type: AddDocumentComponent, selector: "lib-add-document", inputs: ["field"] }, { kind: "component", type: HyperlinkComponent, selector: "lib-hyperlink", inputs: ["field"] }, { kind: "component", type: TextboxWithUnderscoreComponent, selector: "lib-textbox-with-underscore", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: UnderscoreMobNumberComponent, selector: "lib-underscore-mob-number", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: ImageComponent, selector: "lib-image", inputs: ["field"] }, { kind: "component", type: StepperComponent, selector: "lib-stepper", inputs: ["field"] }, { kind: "component", type: CardComponent, selector: "lib-card", inputs: ["field"], outputs: ["cardDetailsClicked"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: SearchMultiSelectComponent, selector: "lib-search-multi-select", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: SubscriptTextboxComponent, selector: "lib-subscript-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: LabelComponent, selector: "lib-label", inputs: ["field"] }, { kind: "component", type: SubHeaderComponent, selector: "lib-sub-header", inputs: ["field"] }, { kind: "component", type: HeaderComponent, selector: "lib-header", inputs: ["field"] }, { kind: "component", type: TextboxWithTextComponent, selector: "lib-textbox-with-text", inputs: ["reactiveFormControlobject", "field"], outputs: ["blur"] }, { kind: "component", type: DiscountComponent, selector: "lib-discount", inputs: ["field"] }, { kind: "component", type: BenefitCardComponent, selector: "lib-benefit-card", inputs: ["field"] }, { kind: "component", type: TableComponent, selector: "lib-table", inputs: ["field", "readonly"], outputs: ["actionItemClicked", "tablePaginationClicked"] }, { kind: "component", type: LoaderComponent, selector: "lib-loader", inputs: ["field"] }, { kind: "component", type: WarningSnackbarComponent, selector: "lib-warning-snackbar", inputs: ["field"] }, { kind: "component", type: SuccessSnackbarComponent, selector: "lib-success-snackbar", inputs: ["field"] }, { kind: "component", type: NeutralSnackbarComponent, selector: "lib-neutral-snackbar", inputs: ["field"] }, { kind: "component", type: ErrorSnackbarComponent, selector: "lib-error-snackbar", inputs: ["field"] }, { kind: "component", type: GreyLabelComponent, selector: "lib-grey-label", inputs: ["field"] }, { kind: "component", type: IframeComponent, selector: "lib-iframe", inputs: ["field"] }, { kind: "component", type: ToggleButtonComponent, selector: "lib-toggle-button", inputs: ["reactiveFormControlobject", "field"], outputs: ["selectionChanged", "change"] }, { kind: "component", type: PayGetCardComponent, selector: "lib-pay-get-card", inputs: ["field", "payAmount", "premiumAmount", "ptValue", "years", "frequency"] }, { kind: "component", type: InBuiltBenefitComponent, selector: "lib-in-built-benefit", inputs: ["field", "premiumAmount", "premiumAmountShort"] }, { kind: "component", type: OtherBenefitsComponent, selector: "lib-other-benefits", inputs: ["field"] }, { kind: "component", type: AnnuityRateLogoComponent, selector: "lib-annuity-rate-logo", inputs: ["field", "ratePercent"] }, { kind: "component", type: DiscountV2Component, selector: "lib-discount-v2", inputs: ["field"] }, { kind: "component", type: LabelValueCardComponent, selector: "lib-label-value-card", inputs: ["field"] }, { kind: "component", type: MedialQuestionsComponent, selector: "lib-medial-questions", inputs: ["medialQuestionResponse", "field"] }, { kind: "component", type: PageNudgeComponent, selector: "lib-page-nudge", inputs: ["field"] }, { kind: "component", type: ProgressBarComponent, selector: "lib-progress-bar", inputs: ["field"] }, { kind: "component", type: AccordianComponent, selector: "lib-accordian", inputs: ["field"] }, { kind: "component", type: MiscellaneousInfoBarComponent, selector: "lib-miscellaneous-info-bar", inputs: ["field", "details"] }, { kind: "component", type: PlainTextComponent, selector: "lib-plain-text", inputs: ["field"] }, { kind: "component", type: MenuComponent, selector: "lib-menu", inputs: ["field"] }, { kind: "component", type: StepperWIthArrowComponent, selector: "lib-stepper-with-arrow", inputs: ["field", "currentStepValue", "autoProgress", "autoProgressDelay"], outputs: ["selectedStep"] }, { kind: "component", type: LabelWithImageComponent, selector: "lib-label-with-image", inputs: ["field"] }] });
|
|
78
78
|
}
|
|
79
79
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MasterControlComponent, decorators: [{
|
|
80
80
|
type: Component,
|
|
@@ -153,4 +153,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
153
153
|
}], ctorParameters: () => [], propDecorators: { formGroup: [{
|
|
154
154
|
type: Input
|
|
155
155
|
}] } });
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL21hc3Rlci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFB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d0JBQ3BCLGtCQUFrQjt3QkFDbEIsNkJBQTZCO3dCQUM3QixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IseUJBQXlCO3dCQUN6Qix1QkFBdUI7cUJBQzFCO3dEQU1VLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4vdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL3VwbG9hZC91cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9iQ29tcG9uZW50IH0gZnJvbSAnLi9kb2IvZG9iLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vYk51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vbW9iLW51bWJlci9tb2ItbnVtYmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEluZm9Db21wb25lbnQgfSBmcm9tICcuL2luZm8vaW5mby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYkNvbXBvbmVudCB9IGZyb20gXCIuL3RhYi90YWIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUNvbXBvbmVudCB9IGZyb20gXCIuL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE11bHRpcGxlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSBcIi4vbXVsdGlwbGUtc2VsZWN0L211bHRpcGxlLXNlbGVjdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2VsZWN0VGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LXRleHRib3gvc2VsZWN0LXRleHRib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3RwVGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL290cC10ZXh0Ym94L290cC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBbW91bnRUZXh0Ym94Q29tcG9uZW50IH0gZnJvbSBcIi4vYW1vdW50LXRleHRib3gvYW1vdW50LXRleHRib3guY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFN1ZmZpeFRleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9zdWZmaXgtdGV4dGJveC9zdWZmaXgtdGV4dGJveC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3RwTW9iTnVtYmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vb3RwLW1vYi1udW1iZXIvb3RwLW1vYi1udW1iZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhZ01vYk51bWJlckNvbXBvbmVudCB9IGZyb20gXCIuL3RhZy1tb2ItbnVtYmVyL3RhZy1tb2ItbnVtYmVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZ2VEYXRlQ29tcG9uZW50IH0gZnJvbSBcIi4vYWdlLWRhdGUvYWdlLWRhdGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEFkZGl0aW9uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4vYWRkaXRpb24tYnV0dG9uL2FkZGl0aW9uLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSW5mb1RleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9pbmZvLXRleHRib3gvaW5mby10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aEltYWdlQ29tcG9uZW50IH0gZnJvbSBcIi4vdGV4dGJveC13aXRoLWltYWdlL3RleHRib3gtd2l0aC1pbWFnZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRW1haWxXaXRoRG9tYWluQ29tcG9uZW50IH0gZnJvbSBcIi4vZW1haWwtd2l0aC1kb21haW4vZW1haWwtd2l0aC1kb21haW4uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEltYWdlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSBcIi4vaW1hZ2UtdXBsb2FkL2ltYWdlLXVwbG9hZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRG93bmxvYWREb2N1bWVudENvbXBvbmVudCB9IGZyb20gXCIuL2Rvd25sb2FkLWRvY3VtZW50L2Rvd25sb2FkLWRvY3VtZW50LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZGREb2N1bWVudENvbXBvbmVudCB9IGZyb20gXCIuL2FkZC1kb2N1bWVudC9hZGQtZG9jdW1lbnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEh5cGVybGlua0NvbXBvbmVudCB9IGZyb20gXCIuL2h5cGVybGluay9oeXBlcmxpbmsuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRleHRib3hXaXRoVW5kZXJzY29yZUNvbXBvbmVudCB9IGZyb20gXCIuL3RleHRib3gtd2l0aC11bmRlcnNjb3JlL3RleHRib3gtd2l0aC11bmRlcnNjb3JlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBVbmRlcnNjb3JlTW9iTnVtYmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vdW5kZXJzY29yZS1tb2ItbnVtYmVyL3VuZGVyc2NvcmUtbW9iLW51bWJlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4vaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHBlckNvbXBvbmVudCB9IGZyb20gXCIuL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gXCIuL2NhcmQvY2FyZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSHJMaW5lQ29tcG9uZW50IH0gZnJvbSBcIi4vaHItbGluZS9oci1saW5lLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTZWFyY2hNdWx0aVNlbGVjdENvbXBvbmVudCB9IGZyb20gXCIuL3NlYXJjaC1tdWx0aS1zZWxlY3Qvc2VhcmNoLW11bHRpLXNlbGVjdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL3N1YnNjcmlwdC10ZXh0Ym94L3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBMYWJlbENvbXBvbmVudCB9IGZyb20gXCIuL2xhYmVsL2xhYmVsLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWJIZWFkZXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdWItaGVhZGVyL3N1Yi1oZWFkZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEhlYWRlckNvbXBvbmVudCB9IGZyb20gXCIuL2hlYWRlci9oZWFkZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aFRleHRDb21wb25lbnQgfSBmcm9tIFwiLi90ZXh0Ym94LXdpdGgtdGV4dC90ZXh0Ym94LXdpdGgtdGV4dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGlzY291bnRDb21wb25lbnQgfSBmcm9tIFwiLi9kaXNjb3VudC9kaXNjb3VudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQmVuZWZpdENhcmRDb21wb25lbnQgfSBmcm9tIFwiLi9iZW5lZml0LWNhcmQvYmVuZWZpdC1jYXJkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2FybmluZ1NuYWNrYmFyQ29tcG9uZW50IH0gZnJvbSBcIi4vd2FybmluZy1zbmFja2Jhci93YXJuaW5nLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWNjZXNzU25hY2tiYXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdWNjZXNzLXNuYWNrYmFyL3N1Y2Nlc3Mtc25hY2tiYXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE5ldXRyYWxTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL25ldXRyYWwtc25hY2tiYXIvbmV1dHJhbC1zbmFja2Jhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXJyb3JTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL2Vycm9yLXNuYWNrYmFyL2Vycm9yLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBHcmV5TGFiZWxDb21wb25lbnQgfSBmcm9tIFwiLi9ncmV5LWxhYmVsL2dyZXktbGFiZWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IElmcmFtZUNvbXBvbmVudCB9IGZyb20gXCIuL2lmcmFtZS9pZnJhbWUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL3RvZ2dsZS1idXR0b24vdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGF5R2V0Q2FyZENvbXBvbmVudCB9IGZyb20gXCIuL3BheS1nZXQtY2FyZC9wYXktZ2V0LWNhcmQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEluQnVpbHRCZW5lZml0Q29tcG9uZW50IH0gZnJvbSBcIi4vaW4tYnVpbHQtYmVuZWZpdC9pbi1idWlsdC1iZW5lZml0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPdGhlckJlbmVmaXRzQ29tcG9uZW50IH0gZnJvbSBcIi4vb3RoZXItYmVuZWZpdHMvb3RoZXItYmVuZWZpdHMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEFubnVpdHlSYXRlTG9nb0NvbXBvbmVudCB9IGZyb20gXCIuL2FubnVpdHktcmF0ZS1sb2dvL2FubnVpdHktcmF0ZS1sb2dvLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEaXNjb3VudFYyQ29tcG9uZW50IH0gZnJvbSAnLi9kaXNjb3VudC12Mi9kaXNjb3VudC12Mi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYWJlbFZhbHVlQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vbGFiZWwtdmFsdWUtY2FyZC9sYWJlbC12YWx1ZS1jYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lZGlhbFF1ZXN0aW9uc0NvbXBvbmVudCB9IGZyb20gXCIuL21lZGlhbC1xdWVzdGlvbnMvbWVkaWFsLXF1ZXN0aW9ucy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGFnZU51ZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlLW51ZGdlL3BhZ2UtbnVkZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tIFwiLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBY2NvcmRpYW5Db21wb25lbnQgfSBmcm9tIFwiLi9hY2NvcmRpYW4vYWNjb3JkaWFuLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBNaXNjZWxsYW5lb3VzSW5mb0JhckNvbXBvbmVudCB9IGZyb20gXCIuL21pc2NlbGxhbmVvdXMtaW5mby1iYXIvbWlzY2VsbGFuZW91cy1pbmZvLWJhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGxhaW5UZXh0Q29tcG9uZW50IH0gZnJvbSBcIi4vcGxhaW4tdGV4dC9wbGFpbi10ZXh0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9tZW51L21lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHBlcldJdGhBcnJvd0NvbXBvbmVudCB9IGZyb20gXCIuL3N0ZXBwZXItd2l0aC1hcnJvdy9zdGVwcGVyLXdpdGgtYXJyb3cuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IExhYmVsV2l0aEltYWdlQ29tcG9uZW50IH0gZnJvbSBcIi4vbGFiZWwtd2l0aC1pbWFnZS9sYWJlbC13aXRoLWltYWdlLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbWFzdGVyLWNvbnRyb2wnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgUmFkaW9Db21wb25lbnQsXHJcbiAgICBUb2dnbGVDb21wb25lbnQsXHJcbiAgICBVcGxvYWRDb21wb25lbnQsXHJcbiAgICBEb2JDb21wb25lbnQsXHJcbiAgICBNb2JOdW1iZXJDb21wb25lbnQsXHJcbiAgICBJbmZvQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFRhYkNvbXBvbmVudCxcclxuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcclxuICAgIE11bHRpcGxlU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0VGV4dGJveENvbXBvbmVudCxcclxuICAgIE90cFRleHRib3hDb21wb25lbnQsXHJcbiAgICBBbW91bnRUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgU3VmZml4VGV4dGJveENvbXBvbmVudCxcclxuICAgIE90cE1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIFRhZ01vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEFnZURhdGVDb21wb25lbnQsXHJcbiAgICBBZGRpdGlvbkJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEluZm9UZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhJbWFnZUNvbXBvbmVudCxcclxuICAgIEVtYWlsV2l0aERvbWFpbkNvbXBvbmVudCxcclxuICAgIEltYWdlVXBsb2FkQ29tcG9uZW50LFxyXG4gICAgRG93bmxvYWREb2N1bWVudENvbXBvbmVudCxcclxuICAgIEFkZERvY3VtZW50Q29tcG9uZW50LFxyXG4gICAgSHlwZXJsaW5rQ29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhVbmRlcnNjb3JlQ29tcG9uZW50LFxyXG4gICAgVW5kZXJzY29yZU1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEljb25CdXR0b25Db21wb25lbnQsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgSW1hZ2VDb21wb25lbnQsXHJcbiAgICBTdGVwcGVyQ29tcG9uZW50LFxyXG4gICAgQ2FyZENvbXBvbmVudCxcclxuICAgIEhyTGluZUNvbXBvbmVudCxcclxuICAgIFNlYXJjaE11bHRpU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCxcclxuICAgIExhYmVsQ29tcG9uZW50LFxyXG4gICAgU3ViSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhUZXh0Q29tcG9uZW50LFxyXG4gICAgRGlzY291bnRDb21wb25lbnQsXHJcbiAgICBCZW5lZml0Q2FyZENvbXBvbmVudCxcclxuICAgIFRhYmxlQ29tcG9uZW50LFxyXG4gICAgTG9hZGVyQ29tcG9uZW50LFxyXG4gICAgV2FybmluZ1NuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgU3VjY2Vzc1NuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgTmV1dHJhbFNuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgRXJyb3JTbmFja2JhckNvbXBvbmVudCxcclxuICAgIEdyZXlMYWJlbENvbXBvbmVudCxcclxuICAgIElmcmFtZUNvbXBvbmVudCxcclxuICAgIFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFBheUdldENhcmRDb21wb25lbnQsXHJcbiAgICBJbkJ1aWx0QmVuZWZpdENvbXBvbmVudCxcclxuICAgIE90aGVyQmVuZWZpdHNDb21wb25lbnQsXHJcbiAgICBBbm51aXR5UmF0ZUxvZ29Db21wb25lbnQsXHJcbiAgICBEaXNjb3VudFYyQ29tcG9uZW50LFxyXG4gICAgTGFiZWxWYWx1ZUNhcmRDb21wb25lbnQsXHJcbiAgICBNZWRpYWxRdWVzdGlvbnNDb21wb25lbnQsXHJcbiAgICBQYWdlTnVkZ2VDb21wb25lbnQsXHJcbiAgICBQcm9ncmVzc0JhckNvbXBvbmVudCxcclxuICAgIEFjY29yZGlhbkNvbXBvbmVudCxcclxuICAgIE1pc2NlbGxhbmVvdXNJbmZvQmFyQ29tcG9uZW50LFxyXG4gICAgUGxhaW5UZXh0Q29tcG9uZW50LFxyXG4gICAgTWVudUNvbXBvbmVudCxcclxuICAgIFN0ZXBwZXJXSXRoQXJyb3dDb21wb25lbnQsXHJcbiAgICBMYWJlbFdpdGhJbWFnZUNvbXBvbmVudFxyXG5dLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXN0ZXJDb250cm9sQ29tcG9uZW50IHtcclxuICBmaWVsZDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIEBJbnB1dCgpIGZvcm1Hcm91cDogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG59XHJcbiIsIkBzd2l0Y2ggKGZpZWxkKCk/LmNvbnRyb2xUeXBlKSB7XHJcbiAgQGNhc2UoJ3RleHQnKSB7XHJcbiAgIDxsaWItdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiPjwvbGliLXRleHRib3g+XHJcbiAgfVxyXG4gIEBjYXNlKCdzZWxlY3QnKSB7XHJcbiAgICA8bGliLXNlbGVjdCBbZmllbGRdPVwiZmllbGQoKVwiLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdyYWRpbycpIHtcclxuICAgIDxsaWItcmFkaW8gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ3RvZ2dsZScpIHtcclxuICAgIDxsaWItdG9nZ2xlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdmaWxlJykge1xyXG4gICAgPGxpYi11cGxvYWQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ2RhdGUnKSB7XHJcbiAgICA8bGliLWRvYiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgnbW9iaWxlTnVtYmVyJykge1xyXG4gICAgPGxpYi1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdpbmZvJykge1xyXG4gICAgPGxpYi1pbmZvIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdjaGVja2JveCcpIHtcclxuICAgIDxsaWItY2hlY2tib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ3RleHRhcmVhJykge1xyXG4gICAgPGxpYi10ZXh0YXJlYSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2J1dHRvbicpIHtcclxuICAgIDxsaWItYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGFiJykge1xyXG4gICAgPGxpYi10YWIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhdXRvY29tcGxldGUnKSB7XHJcbiAgICA8bGliLWF1dG9jb21wbGV0ZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ211bHRpcGxlU2VsZWN0Jykge1xyXG4gICAgPGxpYi1tdWx0aXBsZS1zZWxlY3QgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFNlbGVjdCcpIHtcclxuICAgIDxsaWItc2VsZWN0LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdvdHBUZXh0Ym94Jykge1xyXG4gICAgPGxpYi1vdHAtdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2Ftb3VudFRleHRib3gnKSB7XHJcbiAgICA8bGliLWFtb3VudC10ZXh0Ym94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnc3VmZml4VGV4dGJveCcpIHtcclxuICAgIDxsaWItc3VmZml4LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdvdHBNb2JOdW1iZXInKSB7XHJcbiAgICA8bGliLW90cC1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGFnTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi10YWctbW9iLW51bWJlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2RhdGVXaXRoQWdlJykge1xyXG4gICAgIDxsaWItYWdlLWRhdGUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhZGRpdGlvbkJ1dHRvbicpIHtcclxuICAgIDxsaWItYWRkaXRpb24tYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW5mb1RleHRib3gnKSB7XHJcbiAgICA8bGliLWluZm8tdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RleHRib3hXaXRoSW1hZ2UnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC1pbWFnZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2VtYWlsV2l0aERvbWFpbicpIHtcclxuICAgIDxsaWItZW1haWwtd2l0aC1kb21haW4gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdpbWFnZVVwbG9hZCcpIHtcclxuICAgICA8bGliLWltYWdlLXVwbG9hZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2Rvd25sb2FkRG9jdW1lbnQnKSB7XHJcbiAgICAgPGxpYi1kb3dubG9hZC1kb2N1bWVudCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2FkZERvY3VtZW50Jykge1xyXG4gICAgPGxpYi1hZGQtZG9jdW1lbnQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdoeXBlcmxpbmsnKSB7XHJcbiAgICA8bGliLWh5cGVybGluayBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RleHRib3hXaXRoVW5kZXJzY29yZScpIHtcclxuICAgIDxsaWItdGV4dGJveC13aXRoLXVuZGVyc2NvcmUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd1bmRlcnNjb3JlTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi11bmRlcnNjb3JlLW1vYi1udW1iZXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdkb3dubG9hZEljb25CdXR0b24nKSB7XHJcbiAgICA8bGliLWljb24tYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW1hZ2UnKSB7XHJcbiAgICA8bGliLWltYWdlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzdGVwcGVyJykge1xyXG4gICAgPGxpYi1zdGVwcGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgIEBjYXNlICgnY2FyZCcpIHtcclxuICAgIDxsaWItY2FyZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaHJMaW5lJykge1xyXG4gICAgPGxpYi1oci1saW5lIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzZWFyY2hNdWx0aVNlbGVjdCcpIHtcclxuICAgIDxsaWItc2VhcmNoLW11bHRpLXNlbGVjdCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3Vic2NyaXB0VGV4dGJveCcpIHtcclxuICAgIDxsaWItc3Vic2NyaXB0LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2xhYmVsJykge1xyXG4gICAgPGxpYi1sYWJlbCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3ViSGVhZGluZycpIHtcclxuICAgIDxsaWItc3ViLWhlYWRlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaGVhZGluZycpIHtcclxuICAgIDxsaWItaGVhZGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCd0YWJsZScpIHtcclxuICA8bGliLXRhYmxlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFRleHQnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC10ZXh0IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgICBAY2FzZSAoJ2xvYWRlcicpIHtcclxuICAgIDxsaWItbG9hZGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICAgIH1cclxuICBAY2FzZSAoJ2Rpc2NvdW50Jykge1xyXG4gICAgPGxpYi1kaXNjb3VudCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnb3B0aW9uYWxCZW5lZml0Q2FyZCcpIHtcclxuICAgIDxsaWItYmVuZWZpdC1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdlcnJvclNuYWNrYmFyJykge1xyXG4gICAgPGxpYi1lcnJvci1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ3dhcm5pbmdTbmFja2JhcicpIHtcclxuICAgIDxsaWItd2FybmluZy1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ3N1Y2Nlc3NTbmFja2JhcicpIHtcclxuICAgIDxsaWItc3VjY2Vzcy1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ25ldXRyYWxTbmFja2JhcicpIHtcclxuICAgIDxsaWItbmV1dHJhbC1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYm9sZExhYmVsJykge1xyXG4gICAgPGxpYi1ncmV5LWxhYmVsIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdpZnJhbWUnKSB7XHJcbiAgICA8bGliLWlmcmFtZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgndG9nZ2xlQnV0dG9uJykge1xyXG4gICAgPGxpYi10b2dnbGUtYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdwYXlHZXRDYXJkJykge1xyXG4gICAgPGxpYi1wYXktZ2V0LWNhcmQgW2ZpZWxkXT1cImZpZWxkKClcIiAgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdpbkJ1aWx0QmVuZWZpdCcpIHtcclxuICAgIDxsaWItaW4tYnVpbHQtYmVuZWZpdCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnb3RoZXJCZW5lZml0Jykge1xyXG4gICAgPGxpYi1vdGhlci1iZW5lZml0cyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYW5udWl0eVJhdGVMb2dvJykge1xyXG4gICAgPGxpYi1hbm51aXR5LXJhdGUtbG9nbyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnZGlzY291bnRBbm51aXR5Jykge1xyXG4gICAgPGxpYi1kaXNjb3VudC12MiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbGFiZWxWYWx1ZScpe1xyXG4gICAgPGxpYi1sYWJlbC12YWx1ZS1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdtZWRpY2FsUXVlc3Rpb25zJyl7XHJcbiAgICA8bGliLW1lZGlhbC1xdWVzdGlvbnMgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ251ZGdlJyl7XHJcbiAgICA8bGliLXBhZ2UtbnVkZ2UgIFtmaWVsZF09XCJmaWVsZCgpXCIvPlxyXG4gIH1cclxuICBAY2FzZSAoJ3Byb2dyZXNzQmFyJyl7XHJcbiAgICA8bGliLXByb2dyZXNzLWJhciAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYWNjb3JkaWFuJyl7XHJcbiAgICA8bGliLWFjY29yZGlhbiAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbWlzY0luZm8nKXtcclxuICAgIDxsaWItbWlzY2VsbGFuZW91cy1pbmZvLWJhciAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgncGxhaW5UZXh0Jyl7XHJcbiAgICA8bGliLXBsYWluLXRleHQgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbWVudScpe1xyXG4gICAgPGxpYi1tZW51IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzdGVwcGVyV2l0aEFycm93Jykge1xyXG4gICAgPGxpYi1zdGVwcGVyLXdpdGgtYXJyb3cgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2xhYmVsV2l0aEltYWdlJykge1xyXG4gICAgPGxpYi1sYWJlbC13aXRoLWltYWdlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbn1cclxuIl19
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL21hc3Rlci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFB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d0JBQ3BCLGtCQUFrQjt3QkFDbEIsNkJBQTZCO3dCQUM3QixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IseUJBQXlCO3dCQUN6Qix1QkFBdUI7cUJBQzFCO3dEQU1VLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4vdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL3VwbG9hZC91cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9iQ29tcG9uZW50IH0gZnJvbSAnLi9kb2IvZG9iLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vYk51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vbW9iLW51bWJlci9tb2ItbnVtYmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEluZm9Db21wb25lbnQgfSBmcm9tICcuL2luZm8vaW5mby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYkNvbXBvbmVudCB9IGZyb20gXCIuL3RhYi90YWIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUNvbXBvbmVudCB9IGZyb20gXCIuL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE11bHRpcGxlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSBcIi4vbXVsdGlwbGUtc2VsZWN0L211bHRpcGxlLXNlbGVjdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2VsZWN0VGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LXRleHRib3gvc2VsZWN0LXRleHRib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3RwVGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL290cC10ZXh0Ym94L290cC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBbW91bnRUZXh0Ym94Q29tcG9uZW50IH0gZnJvbSBcIi4vYW1vdW50LXRleHRib3gvYW1vdW50LXRleHRib3guY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFN1ZmZpeFRleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9zdWZmaXgtdGV4dGJveC9zdWZmaXgtdGV4dGJveC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3RwTW9iTnVtYmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vb3RwLW1vYi1udW1iZXIvb3RwLW1vYi1udW1iZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhZ01vYk51bWJlckNvbXBvbmVudCB9IGZyb20gXCIuL3RhZy1tb2ItbnVtYmVyL3RhZy1tb2ItbnVtYmVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZ2VEYXRlQ29tcG9uZW50IH0gZnJvbSBcIi4vYWdlLWRhdGUvYWdlLWRhdGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEFkZGl0aW9uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4vYWRkaXRpb24tYnV0dG9uL2FkZGl0aW9uLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSW5mb1RleHRib3hDb21wb25lbnQgfSBmcm9tIFwiLi9pbmZvLXRleHRib3gvaW5mby10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aEltYWdlQ29tcG9uZW50IH0gZnJvbSBcIi4vdGV4dGJveC13aXRoLWltYWdlL3RleHRib3gtd2l0aC1pbWFnZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRW1haWxXaXRoRG9tYWluQ29tcG9uZW50IH0gZnJvbSBcIi4vZW1haWwtd2l0aC1kb21haW4vZW1haWwtd2l0aC1kb21haW4uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEltYWdlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSBcIi4vaW1hZ2UtdXBsb2FkL2ltYWdlLXVwbG9hZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRG93bmxvYWREb2N1bWVudENvbXBvbmVudCB9IGZyb20gXCIuL2Rvd25sb2FkLWRvY3VtZW50L2Rvd25sb2FkLWRvY3VtZW50LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBZGREb2N1bWVudENvbXBvbmVudCB9IGZyb20gXCIuL2FkZC1kb2N1bWVudC9hZGQtZG9jdW1lbnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEh5cGVybGlua0NvbXBvbmVudCB9IGZyb20gXCIuL2h5cGVybGluay9oeXBlcmxpbmsuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRleHRib3hXaXRoVW5kZXJzY29yZUNvbXBvbmVudCB9IGZyb20gXCIuL3RleHRib3gtd2l0aC11bmRlcnNjb3JlL3RleHRib3gtd2l0aC11bmRlcnNjb3JlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBVbmRlcnNjb3JlTW9iTnVtYmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vdW5kZXJzY29yZS1tb2ItbnVtYmVyL3VuZGVyc2NvcmUtbW9iLW51bWJlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4vaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHBlckNvbXBvbmVudCB9IGZyb20gXCIuL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gXCIuL2NhcmQvY2FyZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSHJMaW5lQ29tcG9uZW50IH0gZnJvbSBcIi4vaHItbGluZS9oci1saW5lLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTZWFyY2hNdWx0aVNlbGVjdENvbXBvbmVudCB9IGZyb20gXCIuL3NlYXJjaC1tdWx0aS1zZWxlY3Qvc2VhcmNoLW11bHRpLXNlbGVjdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCB9IGZyb20gXCIuL3N1YnNjcmlwdC10ZXh0Ym94L3N1YnNjcmlwdC10ZXh0Ym94LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBMYWJlbENvbXBvbmVudCB9IGZyb20gXCIuL2xhYmVsL2xhYmVsLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWJIZWFkZXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdWItaGVhZGVyL3N1Yi1oZWFkZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEhlYWRlckNvbXBvbmVudCB9IGZyb20gXCIuL2hlYWRlci9oZWFkZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94V2l0aFRleHRDb21wb25lbnQgfSBmcm9tIFwiLi90ZXh0Ym94LXdpdGgtdGV4dC90ZXh0Ym94LXdpdGgtdGV4dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGlzY291bnRDb21wb25lbnQgfSBmcm9tIFwiLi9kaXNjb3VudC9kaXNjb3VudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQmVuZWZpdENhcmRDb21wb25lbnQgfSBmcm9tIFwiLi9iZW5lZml0LWNhcmQvYmVuZWZpdC1jYXJkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2FybmluZ1NuYWNrYmFyQ29tcG9uZW50IH0gZnJvbSBcIi4vd2FybmluZy1zbmFja2Jhci93YXJuaW5nLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTdWNjZXNzU25hY2tiYXJDb21wb25lbnQgfSBmcm9tIFwiLi9zdWNjZXNzLXNuYWNrYmFyL3N1Y2Nlc3Mtc25hY2tiYXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE5ldXRyYWxTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL25ldXRyYWwtc25hY2tiYXIvbmV1dHJhbC1zbmFja2Jhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXJyb3JTbmFja2JhckNvbXBvbmVudCB9IGZyb20gXCIuL2Vycm9yLXNuYWNrYmFyL2Vycm9yLXNuYWNrYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBHcmV5TGFiZWxDb21wb25lbnQgfSBmcm9tIFwiLi9ncmV5LWxhYmVsL2dyZXktbGFiZWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IElmcmFtZUNvbXBvbmVudCB9IGZyb20gXCIuL2lmcmFtZS9pZnJhbWUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL3RvZ2dsZS1idXR0b24vdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGF5R2V0Q2FyZENvbXBvbmVudCB9IGZyb20gXCIuL3BheS1nZXQtY2FyZC9wYXktZ2V0LWNhcmQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEluQnVpbHRCZW5lZml0Q29tcG9uZW50IH0gZnJvbSBcIi4vaW4tYnVpbHQtYmVuZWZpdC9pbi1idWlsdC1iZW5lZml0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBPdGhlckJlbmVmaXRzQ29tcG9uZW50IH0gZnJvbSBcIi4vb3RoZXItYmVuZWZpdHMvb3RoZXItYmVuZWZpdHMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEFubnVpdHlSYXRlTG9nb0NvbXBvbmVudCB9IGZyb20gXCIuL2FubnVpdHktcmF0ZS1sb2dvL2FubnVpdHktcmF0ZS1sb2dvLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEaXNjb3VudFYyQ29tcG9uZW50IH0gZnJvbSAnLi9kaXNjb3VudC12Mi9kaXNjb3VudC12Mi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYWJlbFZhbHVlQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vbGFiZWwtdmFsdWUtY2FyZC9sYWJlbC12YWx1ZS1jYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lZGlhbFF1ZXN0aW9uc0NvbXBvbmVudCB9IGZyb20gXCIuL21lZGlhbC1xdWVzdGlvbnMvbWVkaWFsLXF1ZXN0aW9ucy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGFnZU51ZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlLW51ZGdlL3BhZ2UtbnVkZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tIFwiLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBY2NvcmRpYW5Db21wb25lbnQgfSBmcm9tIFwiLi9hY2NvcmRpYW4vYWNjb3JkaWFuLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBNaXNjZWxsYW5lb3VzSW5mb0JhckNvbXBvbmVudCB9IGZyb20gXCIuL21pc2NlbGxhbmVvdXMtaW5mby1iYXIvbWlzY2VsbGFuZW91cy1pbmZvLWJhci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGxhaW5UZXh0Q29tcG9uZW50IH0gZnJvbSBcIi4vcGxhaW4tdGV4dC9wbGFpbi10ZXh0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9tZW51L21lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHBlcldJdGhBcnJvd0NvbXBvbmVudCB9IGZyb20gXCIuL3N0ZXBwZXItd2l0aC1hcnJvdy9zdGVwcGVyLXdpdGgtYXJyb3cuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IExhYmVsV2l0aEltYWdlQ29tcG9uZW50IH0gZnJvbSBcIi4vbGFiZWwtd2l0aC1pbWFnZS9sYWJlbC13aXRoLWltYWdlLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbWFzdGVyLWNvbnRyb2wnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgUmFkaW9Db21wb25lbnQsXHJcbiAgICBUb2dnbGVDb21wb25lbnQsXHJcbiAgICBVcGxvYWRDb21wb25lbnQsXHJcbiAgICBEb2JDb21wb25lbnQsXHJcbiAgICBNb2JOdW1iZXJDb21wb25lbnQsXHJcbiAgICBJbmZvQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFRhYkNvbXBvbmVudCxcclxuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcclxuICAgIE11bHRpcGxlU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0VGV4dGJveENvbXBvbmVudCxcclxuICAgIE90cFRleHRib3hDb21wb25lbnQsXHJcbiAgICBBbW91bnRUZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgU3VmZml4VGV4dGJveENvbXBvbmVudCxcclxuICAgIE90cE1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIFRhZ01vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEFnZURhdGVDb21wb25lbnQsXHJcbiAgICBBZGRpdGlvbkJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEluZm9UZXh0Ym94Q29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhJbWFnZUNvbXBvbmVudCxcclxuICAgIEVtYWlsV2l0aERvbWFpbkNvbXBvbmVudCxcclxuICAgIEltYWdlVXBsb2FkQ29tcG9uZW50LFxyXG4gICAgRG93bmxvYWREb2N1bWVudENvbXBvbmVudCxcclxuICAgIEFkZERvY3VtZW50Q29tcG9uZW50LFxyXG4gICAgSHlwZXJsaW5rQ29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhVbmRlcnNjb3JlQ29tcG9uZW50LFxyXG4gICAgVW5kZXJzY29yZU1vYk51bWJlckNvbXBvbmVudCxcclxuICAgIEljb25CdXR0b25Db21wb25lbnQsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgSW1hZ2VDb21wb25lbnQsXHJcbiAgICBTdGVwcGVyQ29tcG9uZW50LFxyXG4gICAgQ2FyZENvbXBvbmVudCxcclxuICAgIEhyTGluZUNvbXBvbmVudCxcclxuICAgIFNlYXJjaE11bHRpU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgU3Vic2NyaXB0VGV4dGJveENvbXBvbmVudCxcclxuICAgIExhYmVsQ29tcG9uZW50LFxyXG4gICAgU3ViSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgVGV4dGJveFdpdGhUZXh0Q29tcG9uZW50LFxyXG4gICAgRGlzY291bnRDb21wb25lbnQsXHJcbiAgICBCZW5lZml0Q2FyZENvbXBvbmVudCxcclxuICAgIFRhYmxlQ29tcG9uZW50LFxyXG4gICAgTG9hZGVyQ29tcG9uZW50LFxyXG4gICAgV2FybmluZ1NuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgU3VjY2Vzc1NuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgTmV1dHJhbFNuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgRXJyb3JTbmFja2JhckNvbXBvbmVudCxcclxuICAgIEdyZXlMYWJlbENvbXBvbmVudCxcclxuICAgIElmcmFtZUNvbXBvbmVudCxcclxuICAgIFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFBheUdldENhcmRDb21wb25lbnQsXHJcbiAgICBJbkJ1aWx0QmVuZWZpdENvbXBvbmVudCxcclxuICAgIE90aGVyQmVuZWZpdHNDb21wb25lbnQsXHJcbiAgICBBbm51aXR5UmF0ZUxvZ29Db21wb25lbnQsXHJcbiAgICBEaXNjb3VudFYyQ29tcG9uZW50LFxyXG4gICAgTGFiZWxWYWx1ZUNhcmRDb21wb25lbnQsXHJcbiAgICBNZWRpYWxRdWVzdGlvbnNDb21wb25lbnQsXHJcbiAgICBQYWdlTnVkZ2VDb21wb25lbnQsXHJcbiAgICBQcm9ncmVzc0JhckNvbXBvbmVudCxcclxuICAgIEFjY29yZGlhbkNvbXBvbmVudCxcclxuICAgIE1pc2NlbGxhbmVvdXNJbmZvQmFyQ29tcG9uZW50LFxyXG4gICAgUGxhaW5UZXh0Q29tcG9uZW50LFxyXG4gICAgTWVudUNvbXBvbmVudCxcclxuICAgIFN0ZXBwZXJXSXRoQXJyb3dDb21wb25lbnQsXHJcbiAgICBMYWJlbFdpdGhJbWFnZUNvbXBvbmVudFxyXG5dLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXN0ZXItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWFzdGVyLWNvbnRyb2wuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXN0ZXJDb250cm9sQ29tcG9uZW50IHtcclxuICBmaWVsZDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIEBJbnB1dCgpIGZvcm1Hcm91cDogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG59XHJcbiIsIkBzd2l0Y2ggKGZpZWxkKCk/LmNvbnRyb2xUeXBlKSB7XHJcbiAgQGNhc2UoJ3RleHQnKSB7XHJcbiAgIDxsaWItdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiPjwvbGliLXRleHRib3g+XHJcbiAgfVxyXG4gIEBjYXNlKCdzZWxlY3QnKSB7XHJcbiAgICA8bGliLXNlbGVjdCBbZmllbGRdPVwiZmllbGQoKVwiLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdyYWRpbycpIHtcclxuICAgIDxsaWItcmFkaW8gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ3RvZ2dsZScpIHtcclxuICAgIDxsaWItdG9nZ2xlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdmaWxlJykge1xyXG4gICAgPGxpYi11cGxvYWQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ2RhdGUnKSB7XHJcbiAgICA8bGliLWRvYiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSgnbW9iaWxlTnVtYmVyJykge1xyXG4gICAgPGxpYi1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdpbmZvJykge1xyXG4gICAgPGxpYi1pbmZvIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlKCdjaGVja2JveCcpIHtcclxuICAgIDxsaWItY2hlY2tib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UoJ3RleHRhcmVhJykge1xyXG4gICAgPGxpYi10ZXh0YXJlYSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2J1dHRvbicpIHtcclxuICAgIDxsaWItYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGFiJykge1xyXG4gICAgPGxpYi10YWIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhdXRvY29tcGxldGUnKSB7XHJcbiAgICA8bGliLWF1dG9jb21wbGV0ZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ211bHRpcGxlU2VsZWN0Jykge1xyXG4gICAgPGxpYi1tdWx0aXBsZS1zZWxlY3QgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFNlbGVjdCcpIHtcclxuICAgIDxsaWItc2VsZWN0LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdvdHBUZXh0Ym94Jykge1xyXG4gICAgPGxpYi1vdHAtdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2Ftb3VudFRleHRib3gnKSB7XHJcbiAgICA8bGliLWFtb3VudC10ZXh0Ym94IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnc3VmZml4VGV4dGJveCcpIHtcclxuICAgIDxsaWItc3VmZml4LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdvdHBNb2JOdW1iZXInKSB7XHJcbiAgICA8bGliLW90cC1tb2ItbnVtYmVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgndGFnTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi10YWctbW9iLW51bWJlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2RhdGVXaXRoQWdlJykge1xyXG4gICAgIDxsaWItYWdlLWRhdGUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdhZGRpdGlvbkJ1dHRvbicpIHtcclxuICAgIDxsaWItYWRkaXRpb24tYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW5mb1RleHRib3gnKSB7XHJcbiAgICA8bGliLWluZm8tdGV4dGJveCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RleHRib3hXaXRoSW1hZ2UnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC1pbWFnZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2VtYWlsV2l0aERvbWFpbicpIHtcclxuICAgIDxsaWItZW1haWwtd2l0aC1kb21haW4gW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdpbWFnZVVwbG9hZCcpIHtcclxuICAgICA8bGliLWltYWdlLXVwbG9hZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2Rvd25sb2FkRG9jdW1lbnQnKSB7XHJcbiAgICAgPGxpYi1kb3dubG9hZC1kb2N1bWVudCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ2FkZERvY3VtZW50Jykge1xyXG4gICAgPGxpYi1hZGQtZG9jdW1lbnQgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdoeXBlcmxpbmsnKSB7XHJcbiAgICA8bGliLWh5cGVybGluayBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG5cclxuICBAY2FzZSAoJ3RleHRib3hXaXRoVW5kZXJzY29yZScpIHtcclxuICAgIDxsaWItdGV4dGJveC13aXRoLXVuZGVyc2NvcmUgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCd1bmRlcnNjb3JlTW9iTnVtYmVyJykge1xyXG4gICAgPGxpYi11bmRlcnNjb3JlLW1vYi1udW1iZXIgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuXHJcbiAgQGNhc2UgKCdkb3dubG9hZEljb25CdXR0b24nKSB7XHJcbiAgICA8bGliLWljb24tYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcblxyXG4gIEBjYXNlICgnaW1hZ2UnKSB7XHJcbiAgICA8bGliLWltYWdlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzdGVwcGVyJykge1xyXG4gICAgPGxpYi1zdGVwcGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgIEBjYXNlICgnY2FyZCcpIHtcclxuICAgIDxsaWItY2FyZCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaHJMaW5lJykge1xyXG4gICAgPGxpYi1oci1saW5lIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzZWFyY2hNdWx0aVNlbGVjdCcpIHtcclxuICAgIDxsaWItc2VhcmNoLW11bHRpLXNlbGVjdCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3Vic2NyaXB0VGV4dGJveCcpIHtcclxuICAgIDxsaWItc3Vic2NyaXB0LXRleHRib3ggW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2xhYmVsJykge1xyXG4gICAgPGxpYi1sYWJlbCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnc3ViSGVhZGluZycpIHtcclxuICAgIDxsaWItc3ViLWhlYWRlciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnaGVhZGluZycpIHtcclxuICAgIDxsaWItaGVhZGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCd0YWJsZScpIHtcclxuICA8bGliLXRhYmxlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCd0ZXh0Ym94V2l0aFRleHQnKSB7XHJcbiAgICA8bGliLXRleHRib3gtd2l0aC10ZXh0IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgICBAY2FzZSAoJ2xvYWRlcicpIHtcclxuICAgIDxsaWItbG9hZGVyIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICAgIH1cclxuICBAY2FzZSAoJ2Rpc2NvdW50Jykge1xyXG4gICAgPGxpYi1kaXNjb3VudCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnb3B0aW9uYWxCZW5lZml0Q2FyZCcpIHtcclxuICAgIDxsaWItYmVuZWZpdC1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdlcnJvclNuYWNrYmFyJykge1xyXG4gICAgPGxpYi1lcnJvci1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ3dhcm5pbmdTbmFja2JhcicpIHtcclxuICAgIDxsaWItd2FybmluZy1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ3N1Y2Nlc3NTbmFja2JhcicpIHtcclxuICAgIDxsaWItc3VjY2Vzcy1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gICBAY2FzZSAoJ25ldXRyYWxTbmFja2JhcicpIHtcclxuICAgIDxsaWItbmV1dHJhbC1zbmFja2JhciBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYm9sZExhYmVsJykge1xyXG4gICAgPGxpYi1ncmV5LWxhYmVsIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdpZnJhbWUnKSB7XHJcbiAgICA8bGliLWlmcmFtZSBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgndG9nZ2xlQnV0dG9uJykge1xyXG4gICAgPGxpYi10b2dnbGUtYnV0dG9uIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdwYXlHZXRDYXJkJykge1xyXG4gICAgPGxpYi1wYXktZ2V0LWNhcmQgW2ZpZWxkXT1cImZpZWxkKClcIiAgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdpbkJ1aWx0QmVuZWZpdCcpIHtcclxuICAgIDxsaWItaW4tYnVpbHQtYmVuZWZpdCBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnb3RoZXJCZW5lZml0Jykge1xyXG4gICAgPGxpYi1vdGhlci1iZW5lZml0cyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYW5udWl0eVJhdGVMb2dvJykge1xyXG4gICAgPGxpYi1hbm51aXR5LXJhdGUtbG9nbyBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnZGlzY291bnRBbm51aXR5Jykge1xyXG4gICAgPGxpYi1kaXNjb3VudC12MiBbZmllbGRdPVwiZmllbGQoKVwiIC8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbGFiZWxWYWx1ZScpe1xyXG4gICAgPGxpYi1sYWJlbC12YWx1ZS1jYXJkIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdtZWRpY2FsUXVlc3Rpb25zJyl7XHJcbiAgICA8bGliLW1lZGlhbC1xdWVzdGlvbnMgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ251ZGdlJyl7XHJcbiAgICA8bGliLXBhZ2UtbnVkZ2UgIFtmaWVsZF09XCJmaWVsZCgpXCIvPlxyXG4gIH1cclxuICBAY2FzZSAoJ3Byb2dyZXNzQmFyJyl7XHJcbiAgICA8bGliLXByb2dyZXNzLWJhciAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnYWNjb3JkaWFuJyl7XHJcbiAgICA8bGliLWFjY29yZGlhbiAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbWlzY0luZm8nKXtcclxuICAgIDxsaWItbWlzY2VsbGFuZW91cy1pbmZvLWJhciAgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgncGxhaW5UZXh0Jyl7XHJcbiAgICA8bGliLXBsYWluLXRleHQgW2ZpZWxkXT1cImZpZWxkKClcIi8+XHJcbiAgfVxyXG4gIEBjYXNlICgnbWVudScpe1xyXG4gICAgPGxpYi1tZW51IFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbiAgQGNhc2UgKCdzdGVwcGVyV2l0aEFycm93Jykge1xyXG4gICAgPGxpYi1zdGVwcGVyLXdpdGgtYXJyb3cgW2ZpZWxkXT1cImZpZWxkKClcIiAvPlxyXG4gIH1cclxuICBAY2FzZSAoJ2xhYmVsV2l0aEltYWdlJykge1xyXG4gICAgPGxpYi1sYWJlbC13aXRoLWltYWdlIFtmaWVsZF09XCJmaWVsZCgpXCIgLz5cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, input, output } from '@angular/core';
|
|
2
|
+
import { Component, input, output, effect } from '@angular/core';
|
|
3
3
|
import { MatStepperModule } from '@angular/material/stepper';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "../master-control.service";
|
|
@@ -8,25 +8,77 @@ import * as i3 from "@angular/common";
|
|
|
8
8
|
export class StepperWIthArrowComponent {
|
|
9
9
|
masterSharedService;
|
|
10
10
|
field = input.required();
|
|
11
|
+
currentStepValue = input(); // Input to receive current step value from parent
|
|
12
|
+
autoProgress = input(false); // Input to enable automatic step progression
|
|
13
|
+
autoProgressDelay = input(3000); // Delay between auto-progression (in ms)
|
|
11
14
|
selectedStep = output();
|
|
12
15
|
masterStepper;
|
|
13
16
|
selectedStepIndex = -1;
|
|
17
|
+
autoProgressTimer;
|
|
14
18
|
constructor(masterSharedService) {
|
|
15
19
|
this.masterSharedService = masterSharedService;
|
|
20
|
+
// Watch for changes in currentStepValue input
|
|
21
|
+
effect(() => {
|
|
22
|
+
const stepValue = this.currentStepValue();
|
|
23
|
+
if (stepValue && this.field()?.editStepper) {
|
|
24
|
+
this.updateStepFromExternal(stepValue);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
16
27
|
}
|
|
17
28
|
ngOnInit() {
|
|
18
29
|
this.field().editStepper = this.field().configData.stepperData ? this.field().configData.stepperData : this.masterSharedService?.configData?.stepper?.stepperData;
|
|
19
30
|
this.initializeStepperState();
|
|
31
|
+
this.emitActiveStepOnLoad();
|
|
32
|
+
// Start auto-progression if enabled
|
|
33
|
+
if (this.autoProgress()) {
|
|
34
|
+
this.startAutoProgression();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
ngOnDestroy() {
|
|
38
|
+
// Clean up timer
|
|
39
|
+
if (this.autoProgressTimer) {
|
|
40
|
+
clearInterval(this.autoProgressTimer);
|
|
41
|
+
}
|
|
20
42
|
}
|
|
21
43
|
initializeStepperState() {
|
|
22
44
|
if (this.field().editStepper) {
|
|
45
|
+
let activeStepIndex = -1;
|
|
46
|
+
// Find the current active step based on step properties or field value
|
|
47
|
+
// Check if any step is already marked as active
|
|
48
|
+
activeStepIndex = this.field().editStepper.findIndex((step) => step.isActive === true);
|
|
49
|
+
// If no active step found, check for current value in field
|
|
50
|
+
if (activeStepIndex === -1 && this.field().value) {
|
|
51
|
+
activeStepIndex = this.field().editStepper.findIndex((step) => step.displayLabel === this.field().value ||
|
|
52
|
+
step.value === this.field().value);
|
|
53
|
+
}
|
|
54
|
+
// If still no active step found, default to first step
|
|
55
|
+
if (activeStepIndex === -1) {
|
|
56
|
+
activeStepIndex = 0;
|
|
57
|
+
}
|
|
23
58
|
this.field().editStepper.forEach((step, index) => {
|
|
24
59
|
// Set default values if not provided
|
|
25
60
|
if (step.isDisplay === undefined) {
|
|
26
61
|
step.isDisplay = true;
|
|
27
62
|
}
|
|
28
|
-
|
|
63
|
+
// Set step states based on the active step logic
|
|
64
|
+
if (index < activeStepIndex) {
|
|
65
|
+
// Steps before active step are completed and enabled
|
|
66
|
+
step.isCompleted = true;
|
|
67
|
+
step.isActive = false;
|
|
68
|
+
step.isDisabled = false; // Completed steps can be clicked
|
|
69
|
+
}
|
|
70
|
+
else if (index === activeStepIndex) {
|
|
71
|
+
// Current active step
|
|
72
|
+
step.isCompleted = false;
|
|
73
|
+
step.isActive = true;
|
|
29
74
|
step.isDisabled = false;
|
|
75
|
+
this.selectedStepIndex = index; // Set as selected
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
// Steps after active step are pending and disabled
|
|
79
|
+
step.isCompleted = false;
|
|
80
|
+
step.isActive = false;
|
|
81
|
+
step.isDisabled = true;
|
|
30
82
|
}
|
|
31
83
|
});
|
|
32
84
|
}
|
|
@@ -52,18 +104,136 @@ export class StepperWIthArrowComponent {
|
|
|
52
104
|
return (this.selectedStepIndex === -1 || this.selectedStepIndex === index) && !this.isStepCompleted(index);
|
|
53
105
|
}
|
|
54
106
|
shouldShowAsDisabled(step, index) {
|
|
55
|
-
// Show as disabled if step is actually disabled
|
|
56
|
-
return step.isDisabled
|
|
107
|
+
// Show as disabled if step is actually disabled
|
|
108
|
+
return step.isDisabled === true;
|
|
57
109
|
}
|
|
58
110
|
isStepCompleted(index) {
|
|
59
|
-
//
|
|
60
|
-
|
|
111
|
+
// Check if step is marked as completed
|
|
112
|
+
if (this.field().editStepper && this.field().editStepper[index]) {
|
|
113
|
+
return this.field().editStepper[index].isCompleted === true;
|
|
114
|
+
}
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
isStepActive(index) {
|
|
118
|
+
// Check if step is marked as active
|
|
119
|
+
if (this.field().editStepper && this.field().editStepper[index]) {
|
|
120
|
+
return this.field().editStepper[index].isActive === true;
|
|
121
|
+
}
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
emitActiveStepOnLoad() {
|
|
125
|
+
// Automatically emit the active step when component loads
|
|
126
|
+
if (this.field().editStepper && this.selectedStepIndex >= 0) {
|
|
127
|
+
const activeStep = this.field().editStepper[this.selectedStepIndex];
|
|
128
|
+
if (activeStep) {
|
|
129
|
+
const stepData = {
|
|
130
|
+
step: activeStep,
|
|
131
|
+
index: this.selectedStepIndex,
|
|
132
|
+
label: activeStep.displayLabel,
|
|
133
|
+
value: activeStep.value || activeStep.displayLabel
|
|
134
|
+
};
|
|
135
|
+
this.selectedStep.emit(stepData);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// Method to programmatically move to the next step
|
|
140
|
+
moveToNextStep() {
|
|
141
|
+
if (this.selectedStepIndex < this.field().editStepper.length - 1) {
|
|
142
|
+
this.moveToStep(this.selectedStepIndex + 1);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
// Method to programmatically move to the previous step
|
|
146
|
+
moveToPreviousStep() {
|
|
147
|
+
if (this.selectedStepIndex > 0) {
|
|
148
|
+
this.moveToStep(this.selectedStepIndex - 1);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// Method to programmatically move to a specific step
|
|
152
|
+
moveToStep(stepIndex) {
|
|
153
|
+
if (stepIndex >= 0 && stepIndex < this.field().editStepper.length) {
|
|
154
|
+
// Update step states
|
|
155
|
+
this.field().editStepper.forEach((step, index) => {
|
|
156
|
+
if (index < stepIndex) {
|
|
157
|
+
// Mark previous steps as completed
|
|
158
|
+
step.isCompleted = true;
|
|
159
|
+
step.isActive = false;
|
|
160
|
+
step.isDisabled = false;
|
|
161
|
+
}
|
|
162
|
+
else if (index === stepIndex) {
|
|
163
|
+
// Mark current step as active
|
|
164
|
+
step.isCompleted = false;
|
|
165
|
+
step.isActive = true;
|
|
166
|
+
step.isDisabled = false;
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
// Mark future steps as pending/disabled
|
|
170
|
+
step.isCompleted = false;
|
|
171
|
+
step.isActive = false;
|
|
172
|
+
step.isDisabled = true;
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
this.selectedStepIndex = stepIndex;
|
|
176
|
+
// Emit the step change
|
|
177
|
+
const stepData = {
|
|
178
|
+
step: this.field().editStepper[stepIndex],
|
|
179
|
+
index: stepIndex,
|
|
180
|
+
label: this.field().editStepper[stepIndex].displayLabel,
|
|
181
|
+
value: this.field().editStepper[stepIndex].value || this.field().editStepper[stepIndex].displayLabel
|
|
182
|
+
};
|
|
183
|
+
this.selectedStep.emit(stepData);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
// Method to complete current step and move to next
|
|
187
|
+
completeCurrentStepAndMoveNext() {
|
|
188
|
+
if (this.selectedStepIndex >= 0 && this.selectedStepIndex < this.field().editStepper.length - 1) {
|
|
189
|
+
// Mark current step as completed
|
|
190
|
+
this.field().editStepper[this.selectedStepIndex].isCompleted = true;
|
|
191
|
+
this.field().editStepper[this.selectedStepIndex].isActive = false;
|
|
192
|
+
// Move to next step
|
|
193
|
+
this.moveToNextStep();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// Method to watch for external step changes (can be called from parent)
|
|
197
|
+
updateStepFromExternal(stepValue) {
|
|
198
|
+
if (this.field().editStepper) {
|
|
199
|
+
const stepIndex = this.field().editStepper.findIndex((step) => step.displayLabel === stepValue || step.value === stepValue);
|
|
200
|
+
if (stepIndex >= 0 && stepIndex !== this.selectedStepIndex) {
|
|
201
|
+
this.moveToStep(stepIndex);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
// Auto-progression methods
|
|
206
|
+
startAutoProgression() {
|
|
207
|
+
if (this.autoProgressTimer) {
|
|
208
|
+
clearInterval(this.autoProgressTimer);
|
|
209
|
+
}
|
|
210
|
+
this.autoProgressTimer = setInterval(() => {
|
|
211
|
+
this.moveToNextStep();
|
|
212
|
+
// Stop auto-progression when reaching the last step
|
|
213
|
+
if (this.selectedStepIndex >= this.field().editStepper.length - 1) {
|
|
214
|
+
this.stopAutoProgression();
|
|
215
|
+
}
|
|
216
|
+
}, this.autoProgressDelay());
|
|
217
|
+
}
|
|
218
|
+
stopAutoProgression() {
|
|
219
|
+
if (this.autoProgressTimer) {
|
|
220
|
+
clearInterval(this.autoProgressTimer);
|
|
221
|
+
this.autoProgressTimer = null;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
// Method to reset stepper to first step
|
|
225
|
+
resetToFirstStep() {
|
|
226
|
+
this.stopAutoProgression();
|
|
227
|
+
this.moveToStep(0);
|
|
228
|
+
if (this.autoProgress()) {
|
|
229
|
+
this.startAutoProgression();
|
|
230
|
+
}
|
|
61
231
|
}
|
|
62
232
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperWIthArrowComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: StepperWIthArrowComponent, isStandalone: true, selector: "lib-stepper-with-arrow", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { selectedStep: "selectedStep" }, ngImport: i0, template: "<div *ngIf=\"field() && field()?.isVisible\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-
|
|
233
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: StepperWIthArrowComponent, isStandalone: true, selector: "lib-stepper-with-arrow", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, currentStepValue: { classPropertyName: "currentStepValue", publicName: "currentStepValue", isSignal: true, isRequired: false, transformFunction: null }, autoProgress: { classPropertyName: "autoProgress", publicName: "autoProgress", isSignal: true, isRequired: false, transformFunction: null }, autoProgressDelay: { classPropertyName: "autoProgressDelay", publicName: "autoProgressDelay", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedStep: "selectedStep" }, ngImport: i0, template: "<div *ngIf=\"field() && field()?.isVisible\" style=\"zoom: 0.85;\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-active]=\"isStepActive(i)\"\r\n [class.step-completed]=\"isStepCompleted(i)\"\r\n [class.step-collapsed]=\"!shouldShowLabel(i)\"\r\n (click)=\"onStepClick(steps, i)\">\r\n <span \r\n class=\"step-circle\"\r\n [class.circle-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.circle-active]=\"isStepActive(i)\"\r\n [class.circle-completed]=\"isStepCompleted(i)\">\r\n {{i + 1}}\r\n </span>\r\n <span \r\n class=\"step-label mx-2\"\r\n [class.label-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.label-active]=\"isStepActive(i)\"\r\n [class.label-completed]=\"isStepCompleted(i)\"\r\n [class.label-hidden]=\"!shouldShowLabel(i)\">\r\n {{steps?.displayLabel}}\r\n </span>\r\n <span \r\n class=\"arrow\" \r\n [class.arrow-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.arrow-active]=\"isStepActive(i)\"\r\n [class.arrow-completed]=\"isStepCompleted(i)\"\r\n *ngIf=\"i < field().editStepper.length - 1\">\r\n </span>\r\n </div>\r\n </ng-template>\r\n </mat-step>\r\n </ng-container>\r\n </mat-stepper>\r\n</div>", styles: ["*{font-family:mulish!important}.step-container{display:flex;align-items:center;cursor:pointer;padding:4px 8px;border-radius:6px;border:none;transition:all .3s ease}.step-container:hover:not(.step-disabled){background-color:#f5f5f5}.step-container.step-selected{border:none}.step-container.step-disabled{cursor:not-allowed;opacity:.6}.step-container.step-collapsed{padding:4px;justify-content:center}.step-circle{width:24px;height:24px;min-width:24px;min-height:24px;border-radius:50%;background:#0bb68b;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-right:8px;transition:all .3s ease;flex-shrink:0;box-sizing:border-box}.step-circle.circle-disabled{background:#999;color:#ccc}.step-circle.circle-selected{background:#0a9c75}.step-circle.circle-completed{background:#0a9c75;color:#fff}.step-label{color:#444;font-size:13px;font-weight:600;transition:color .3s ease}.step-label.label-disabled{color:#999}.step-label.label-selected{color:#444;font-weight:700}.step-label.label-hidden{display:none}.step-label.label-active{color:#0bb68b;font-weight:700}.step-label.label-completed{color:#0a9c75;font-weight:600}.arrow{border:solid #444;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(315deg);margin-left:12px;transition:border-color .3s ease}.arrow.arrow-disabled{border-color:#999}.arrow.arrow-hidden{display:none}.arrow.arrow-active,.arrow.arrow-completed{border-color:#444}::ng-deep .mat-step-icon{display:none}::ng-deep .mat-horizontal-stepper-header-container{background:#fff!important}::ng-deep .mat-stepper-horizontal-line{border-top:1px dashed!important;display:none}::ng-deep .mat-horizontal-content-container{display:none}::ng-deep .mat-horizontal-stepper-header{padding:0 8px!important}::ng-deep .mat-step-header.step-disabled .mat-step-label{pointer-events:none}::ng-deep .mat-step-header{max-height:fit-content!important}\n"], dependencies: [{ kind: "ngmodule", type: MatStepperModule }, { kind: "component", type: i2.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i2.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i2.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
64
234
|
}
|
|
65
235
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperWIthArrowComponent, decorators: [{
|
|
66
236
|
type: Component,
|
|
67
|
-
args: [{ selector: 'lib-stepper-with-arrow', standalone: true, imports: [MatStepperModule, CommonModule], template: "<div *ngIf=\"field() && field()?.isVisible\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-
|
|
237
|
+
args: [{ selector: 'lib-stepper-with-arrow', standalone: true, imports: [MatStepperModule, CommonModule], template: "<div *ngIf=\"field() && field()?.isVisible\" style=\"zoom: 0.85;\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step \r\n *ngIf=\"steps.isDisplay !== false\"\r\n [completed]=\"false\"\r\n [optional]=\"false\">\r\n <ng-template matStepLabel>\r\n <div \r\n class=\"step-container\"\r\n [class.step-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.step-active]=\"isStepActive(i)\"\r\n [class.step-completed]=\"isStepCompleted(i)\"\r\n [class.step-collapsed]=\"!shouldShowLabel(i)\"\r\n (click)=\"onStepClick(steps, i)\">\r\n <span \r\n class=\"step-circle\"\r\n [class.circle-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.circle-active]=\"isStepActive(i)\"\r\n [class.circle-completed]=\"isStepCompleted(i)\">\r\n {{i + 1}}\r\n </span>\r\n <span \r\n class=\"step-label mx-2\"\r\n [class.label-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.label-active]=\"isStepActive(i)\"\r\n [class.label-completed]=\"isStepCompleted(i)\"\r\n [class.label-hidden]=\"!shouldShowLabel(i)\">\r\n {{steps?.displayLabel}}\r\n </span>\r\n <span \r\n class=\"arrow\" \r\n [class.arrow-disabled]=\"shouldShowAsDisabled(steps, i)\"\r\n [class.arrow-active]=\"isStepActive(i)\"\r\n [class.arrow-completed]=\"isStepCompleted(i)\"\r\n *ngIf=\"i < field().editStepper.length - 1\">\r\n </span>\r\n </div>\r\n </ng-template>\r\n </mat-step>\r\n </ng-container>\r\n </mat-stepper>\r\n</div>", styles: ["*{font-family:mulish!important}.step-container{display:flex;align-items:center;cursor:pointer;padding:4px 8px;border-radius:6px;border:none;transition:all .3s ease}.step-container:hover:not(.step-disabled){background-color:#f5f5f5}.step-container.step-selected{border:none}.step-container.step-disabled{cursor:not-allowed;opacity:.6}.step-container.step-collapsed{padding:4px;justify-content:center}.step-circle{width:24px;height:24px;min-width:24px;min-height:24px;border-radius:50%;background:#0bb68b;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-right:8px;transition:all .3s ease;flex-shrink:0;box-sizing:border-box}.step-circle.circle-disabled{background:#999;color:#ccc}.step-circle.circle-selected{background:#0a9c75}.step-circle.circle-completed{background:#0a9c75;color:#fff}.step-label{color:#444;font-size:13px;font-weight:600;transition:color .3s ease}.step-label.label-disabled{color:#999}.step-label.label-selected{color:#444;font-weight:700}.step-label.label-hidden{display:none}.step-label.label-active{color:#0bb68b;font-weight:700}.step-label.label-completed{color:#0a9c75;font-weight:600}.arrow{border:solid #444;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(315deg);margin-left:12px;transition:border-color .3s ease}.arrow.arrow-disabled{border-color:#999}.arrow.arrow-hidden{display:none}.arrow.arrow-active,.arrow.arrow-completed{border-color:#444}::ng-deep .mat-step-icon{display:none}::ng-deep .mat-horizontal-stepper-header-container{background:#fff!important}::ng-deep .mat-stepper-horizontal-line{border-top:1px dashed!important;display:none}::ng-deep .mat-horizontal-content-container{display:none}::ng-deep .mat-horizontal-stepper-header{padding:0 8px!important}::ng-deep .mat-step-header.step-disabled .mat-step-label{pointer-events:none}::ng-deep .mat-step-header{max-height:fit-content!important}\n"] }]
|
|
68
238
|
}], ctorParameters: () => [{ type: i1.MasterControlService }] });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvc3RlcHBlci13aXRoLWFycm93L3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3N0ZXBwZXItd2l0aC1hcnJvdy9zdGVwcGVyLXdpdGgtYXJyb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFVN0QsTUFBTSxPQUFPLHlCQUF5QjtJQU1qQjtJQUxuQixLQUFLLEdBQVEsS0FBSyxDQUFDLFFBQVEsRUFBTyxDQUFDO0lBQ25DLFlBQVksR0FBRyxNQUFNLEVBQU8sQ0FBQztJQUM3QixhQUFhLENBQU07SUFDbkIsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFdkIsWUFBbUIsbUJBQXlDO1FBQXpDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBc0I7SUFBSSxDQUFDO0lBRWpFLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDO1FBQ2xLLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFTLEVBQUUsS0FBYSxFQUFFLEVBQUU7Z0JBQzVELHFDQUFxQztnQkFDckMsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO29CQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztnQkFDeEIsQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUMxQixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFTLEVBQUUsS0FBYTtRQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7WUFDL0IsTUFBTSxRQUFRLEdBQUc7Z0JBQ2YsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUN4QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWTthQUN2QyxDQUFDO1lBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYTtRQUMxQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxLQUFLLENBQUM7SUFDMUMsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLDZFQUE2RTtRQUM3RSxrQ0FBa0M7UUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFTLEVBQUUsS0FBYTtRQUMzQyw4RkFBOEY7UUFDOUYsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWE7UUFDM0IseURBQXlEO1FBQ3pELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDekUsQ0FBQzt3R0ExRFUseUJBQXlCOzRGQUF6Qix5QkFBeUIsZ1FDWnRDLGlsREFzQ00sMHVERDlCTSxnQkFBZ0Isa2hCQUFFLFlBQVk7OzRGQUk3Qix5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0Usd0JBQXdCLGNBQ3RCLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTdGVwcGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc3RlcHBlcic7XHJcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1zdGVwcGVyLXdpdGgtYXJyb3cnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdFN0ZXBwZXJNb2R1bGUsIENvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RlcHBlcldJdGhBcnJvd0NvbXBvbmVudCB7XHJcbiAgZmllbGQ6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxuICBzZWxlY3RlZFN0ZXAgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG1hc3RlclN0ZXBwZXI6IGFueTtcclxuICBzZWxlY3RlZFN0ZXBJbmRleCA9IC0xO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2hhcmVkU2VydmljZTogTWFzdGVyQ29udHJvbFNlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlciA9IHRoaXMuZmllbGQoKS5jb25maWdEYXRhLnN0ZXBwZXJEYXRhID8gdGhpcy5maWVsZCgpLmNvbmZpZ0RhdGEuc3RlcHBlckRhdGEgOiB0aGlzLm1hc3RlclNoYXJlZFNlcnZpY2U/LmNvbmZpZ0RhdGE/LnN0ZXBwZXI/LnN0ZXBwZXJEYXRhO1xyXG4gICAgdGhpcy5pbml0aWFsaXplU3RlcHBlclN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplU3RlcHBlclN0YXRlKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcikge1xyXG4gICAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZm9yRWFjaCgoc3RlcDogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgLy8gU2V0IGRlZmF1bHQgdmFsdWVzIGlmIG5vdCBwcm92aWRlZFxyXG4gICAgICAgIGlmIChzdGVwLmlzRGlzcGxheSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzcGxheSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzdGVwLmlzRGlzYWJsZWQgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgc3RlcC5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IGFueSwgaW5kZXg6IG51bWJlcikge1xyXG4gICAgaWYgKCFzdGVwLmlzRGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9IGluZGV4O1xyXG4gICAgICBjb25zdCBzdGVwRGF0YSA9IHtcclxuICAgICAgICBzdGVwOiBzdGVwLFxyXG4gICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICBsYWJlbDogc3RlcC5kaXNwbGF5TGFiZWwsXHJcbiAgICAgICAgdmFsdWU6IHN0ZXAudmFsdWUgfHwgc3RlcC5kaXNwbGF5TGFiZWxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXAuZW1pdChzdGVwRGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc1N0ZXBTZWxlY3RlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93TGFiZWwoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gU2hvdyBsYWJlbCBvbmx5IGlmIG5vIHN0ZXAgaXMgc2VsZWN0ZWQgT1IgaWYgdGhpcyBzdGVwIGlzIHRoZSBzZWxlY3RlZCBvbmVcclxuICAgIC8vIEhpZGUgbGFiZWxzIGZvciBjb21wbGV0ZWQgc3RlcHNcclxuICAgIHJldHVybiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gLTEgfHwgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXgpICYmICF0aGlzLmlzU3RlcENvbXBsZXRlZChpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwOiBhbnksIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIC8vIFNob3cgYXMgZGlzYWJsZWQgaWYgc3RlcCBpcyBhY3R1YWxseSBkaXNhYmxlZCBPUiBpZiBpdCdzIGFuIHVudmlzaXRlZCBzdGVwIChhZnRlciBzZWxlY3RlZClcclxuICAgIHJldHVybiBzdGVwLmlzRGlzYWJsZWQgfHwgKHRoaXMuc2VsZWN0ZWRTdGVwSW5kZXggIT09IC0xICYmIGluZGV4ID4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCk7XHJcbiAgfVxyXG5cclxuICBpc1N0ZXBDb21wbGV0ZWQoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gU3RlcCBpcyBjb21wbGV0ZWQgaWYgaXQgY29tZXMgYmVmb3JlIHRoZSBzZWxlY3RlZCBzdGVwXHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCAhPT0gLTEgJiYgaW5kZXggPCB0aGlzLnNlbGVjdGVkU3RlcEluZGV4O1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIj5cclxuICA8bWF0LXN0ZXBwZXIgI3N0ZXBwZXJIZWFkZXI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdGVwcyBvZiBmaWVsZCgpLmVkaXRTdGVwcGVyOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgIDxtYXQtc3RlcCBcclxuICAgICAgICAqbmdJZj1cInN0ZXBzLmlzRGlzcGxheSAhPT0gZmFsc2VcIlxyXG4gICAgICAgIFtjb21wbGV0ZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtvcHRpb25hbF09XCJmYWxzZVwiPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBtYXRTdGVwTGFiZWw+XHJcbiAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICBjbGFzcz1cInN0ZXAtY29udGFpbmVyXCJcclxuICAgICAgICAgICAgW2NsYXNzLnN0ZXAtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgW2NsYXNzLnN0ZXAtc2VsZWN0ZWRdPVwiaXNTdGVwU2VsZWN0ZWQoaSlcIlxyXG4gICAgICAgICAgICBbY2xhc3Muc3RlcC1jb2xsYXBzZWRdPVwiIXNob3VsZFNob3dMYWJlbChpKVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblN0ZXBDbGljayhzdGVwcywgaSlcIj5cclxuICAgICAgICAgICAgPHNwYW4gXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzdGVwLWNpcmNsZVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLmNpcmNsZS1kaXNhYmxlZF09XCJzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwcywgaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtc2VsZWN0ZWRdPVwiaXNTdGVwU2VsZWN0ZWQoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtY29tcGxldGVkXT1cImlzU3RlcENvbXBsZXRlZChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7aSArIDF9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1sYWJlbCBteC0yXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtc2VsZWN0ZWRdPVwiaXNTdGVwU2VsZWN0ZWQoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5sYWJlbC1oaWRkZW5dPVwiIXNob3VsZFNob3dMYWJlbChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7c3RlcHM/LmRpc3BsYXlMYWJlbH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhcnJvd1wiIFxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hcnJvdy1kaXNhYmxlZF09XCJzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwcywgaSlcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiaSA8IGZpZWxkKCkuZWRpdFN0ZXBwZXIubGVuZ3RoIC0gMVwiPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L21hdC1zdGVwPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9tYXQtc3RlcHBlcj5cclxuPC9kaXY+Il19
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvc3RlcHBlci13aXRoLWFycm93L3N0ZXBwZXItd2l0aC1hcnJvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3N0ZXBwZXItd2l0aC1hcnJvdy9zdGVwcGVyLXdpdGgtYXJyb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7OztBQVU3RCxNQUFNLE9BQU8seUJBQXlCO0lBVWpCO0lBVG5CLEtBQUssR0FBUSxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDbkMsZ0JBQWdCLEdBQUcsS0FBSyxFQUFVLENBQUMsQ0FBQyxrREFBa0Q7SUFDdEYsWUFBWSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQyxDQUFDLDZDQUE2QztJQUNuRixpQkFBaUIsR0FBRyxLQUFLLENBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUM7SUFDbEYsWUFBWSxHQUFHLE1BQU0sRUFBTyxDQUFDO0lBQzdCLGFBQWEsQ0FBTTtJQUNuQixpQkFBaUIsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNmLGlCQUFpQixDQUFNO0lBRS9CLFlBQW1CLG1CQUF5QztRQUF6Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXNCO1FBQzFELDhDQUE4QztRQUM5QyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxTQUFTLEdBQUcs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LGNBQWMsRUFBRSxDQUFDO1lBRXRCLG9EQUFvRDtZQUNwRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbEUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixhQUFhLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQztJQUVELHdDQUF3QztJQUN4QyxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRW5CLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7d0dBN1BVLHlCQUF5Qjs0RkFBekIseUJBQXlCLGtzQkNadEMsazFEQTBDTSw0N0REbENNLGdCQUFnQixraEJBQUUsWUFBWTs7NEZBSTdCLHlCQUF5QjtrQkFQckMsU0FBUzsrQkFDRSx3QkFBd0IsY0FDdEIsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgb3V0cHV0LCBlZmZlY3QsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFN0ZXBwZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcclxuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXN0ZXBwZXItd2l0aC1hcnJvdycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTWF0U3RlcHBlck1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc3RlcHBlci13aXRoLWFycm93LmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdGVwcGVyV0l0aEFycm93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcbiAgY3VycmVudFN0ZXBWYWx1ZSA9IGlucHV0PHN0cmluZz4oKTsgLy8gSW5wdXQgdG8gcmVjZWl2ZSBjdXJyZW50IHN0ZXAgdmFsdWUgZnJvbSBwYXJlbnRcclxuICBhdXRvUHJvZ3Jlc3MgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7IC8vIElucHV0IHRvIGVuYWJsZSBhdXRvbWF0aWMgc3RlcCBwcm9ncmVzc2lvblxyXG4gIGF1dG9Qcm9ncmVzc0RlbGF5ID0gaW5wdXQ8bnVtYmVyPigzMDAwKTsgLy8gRGVsYXkgYmV0d2VlbiBhdXRvLXByb2dyZXNzaW9uIChpbiBtcylcclxuICBzZWxlY3RlZFN0ZXAgPSBvdXRwdXQ8YW55PigpO1xyXG4gIG1hc3RlclN0ZXBwZXI6IGFueTtcclxuICBzZWxlY3RlZFN0ZXBJbmRleCA9IC0xO1xyXG4gIHByaXZhdGUgYXV0b1Byb2dyZXNzVGltZXI6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIG1hc3RlclNoYXJlZFNlcnZpY2U6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKSB7XHJcbiAgICAvLyBXYXRjaCBmb3IgY2hhbmdlcyBpbiBjdXJyZW50U3RlcFZhbHVlIGlucHV0XHJcbiAgICBlZmZlY3QoKCkgPT4ge1xyXG4gICAgICBjb25zdCBzdGVwVmFsdWUgPSB0aGlzLmN1cnJlbnRTdGVwVmFsdWUoKTtcclxuICAgICAgaWYgKHN0ZXBWYWx1ZSAmJiB0aGlzLmZpZWxkKCk/LmVkaXRTdGVwcGVyKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVTdGVwRnJvbUV4dGVybmFsKHN0ZXBWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIgPSB0aGlzLmZpZWxkKCkuY29uZmlnRGF0YS5zdGVwcGVyRGF0YSA/IHRoaXMuZmllbGQoKS5jb25maWdEYXRhLnN0ZXBwZXJEYXRhIDogdGhpcy5tYXN0ZXJTaGFyZWRTZXJ2aWNlPy5jb25maWdEYXRhPy5zdGVwcGVyPy5zdGVwcGVyRGF0YTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZVN0ZXBwZXJTdGF0ZSgpO1xyXG4gICAgdGhpcy5lbWl0QWN0aXZlU3RlcE9uTG9hZCgpO1xyXG4gICAgXHJcbiAgICAvLyBTdGFydCBhdXRvLXByb2dyZXNzaW9uIGlmIGVuYWJsZWRcclxuICAgIGlmICh0aGlzLmF1dG9Qcm9ncmVzcygpKSB7XHJcbiAgICAgIHRoaXMuc3RhcnRBdXRvUHJvZ3Jlc3Npb24oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgLy8gQ2xlYW4gdXAgdGltZXJcclxuICAgIGlmICh0aGlzLmF1dG9Qcm9ncmVzc1RpbWVyKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5hdXRvUHJvZ3Jlc3NUaW1lcik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplU3RlcHBlclN0YXRlKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcikge1xyXG4gICAgICBsZXQgYWN0aXZlU3RlcEluZGV4ID0gLTE7XHJcbiAgICAgIFxyXG4gICAgICAvLyBGaW5kIHRoZSBjdXJyZW50IGFjdGl2ZSBzdGVwIGJhc2VkIG9uIHN0ZXAgcHJvcGVydGllcyBvciBmaWVsZCB2YWx1ZVxyXG4gICAgICAvLyBDaGVjayBpZiBhbnkgc3RlcCBpcyBhbHJlYWR5IG1hcmtlZCBhcyBhY3RpdmVcclxuICAgICAgYWN0aXZlU3RlcEluZGV4ID0gdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyLmZpbmRJbmRleCgoc3RlcDogYW55KSA9PiBzdGVwLmlzQWN0aXZlID09PSB0cnVlKTtcclxuICAgICAgXHJcbiAgICAgIC8vIElmIG5vIGFjdGl2ZSBzdGVwIGZvdW5kLCBjaGVjayBmb3IgY3VycmVudCB2YWx1ZSBpbiBmaWVsZFxyXG4gICAgICBpZiAoYWN0aXZlU3RlcEluZGV4ID09PSAtMSAmJiB0aGlzLmZpZWxkKCkudmFsdWUpIHtcclxuICAgICAgICBhY3RpdmVTdGVwSW5kZXggPSB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZmluZEluZGV4KChzdGVwOiBhbnkpID0+IFxyXG4gICAgICAgICAgc3RlcC5kaXNwbGF5TGFiZWwgPT09IHRoaXMuZmllbGQoKS52YWx1ZSB8fCBcclxuICAgICAgICAgIHN0ZXAudmFsdWUgPT09IHRoaXMuZmllbGQoKS52YWx1ZVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC8vIElmIHN0aWxsIG5vIGFjdGl2ZSBzdGVwIGZvdW5kLCBkZWZhdWx0IHRvIGZpcnN0IHN0ZXBcclxuICAgICAgaWYgKGFjdGl2ZVN0ZXBJbmRleCA9PT0gLTEpIHtcclxuICAgICAgICBhY3RpdmVTdGVwSW5kZXggPSAwO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZm9yRWFjaCgoc3RlcDogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgLy8gU2V0IGRlZmF1bHQgdmFsdWVzIGlmIG5vdCBwcm92aWRlZFxyXG4gICAgICAgIGlmIChzdGVwLmlzRGlzcGxheSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzcGxheSA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC8vIFNldCBzdGVwIHN0YXRlcyBiYXNlZCBvbiB0aGUgYWN0aXZlIHN0ZXAgbG9naWNcclxuICAgICAgICBpZiAoaW5kZXggPCBhY3RpdmVTdGVwSW5kZXgpIHtcclxuICAgICAgICAgIC8vIFN0ZXBzIGJlZm9yZSBhY3RpdmUgc3RlcCBhcmUgY29tcGxldGVkIGFuZCBlbmFibGVkXHJcbiAgICAgICAgICBzdGVwLmlzQ29tcGxldGVkID0gdHJ1ZTtcclxuICAgICAgICAgIHN0ZXAuaXNBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNEaXNhYmxlZCA9IGZhbHNlOyAvLyBDb21wbGV0ZWQgc3RlcHMgY2FuIGJlIGNsaWNrZWRcclxuICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09PSBhY3RpdmVTdGVwSW5kZXgpIHtcclxuICAgICAgICAgIC8vIEN1cnJlbnQgYWN0aXZlIHN0ZXBcclxuICAgICAgICAgIHN0ZXAuaXNDb21wbGV0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNBY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgc3RlcC5pc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkU3RlcEluZGV4ID0gaW5kZXg7IC8vIFNldCBhcyBzZWxlY3RlZFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBTdGVwcyBhZnRlciBhY3RpdmUgc3RlcCBhcmUgcGVuZGluZyBhbmQgZGlzYWJsZWRcclxuICAgICAgICAgIHN0ZXAuaXNDb21wbGV0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNBY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgIHN0ZXAuaXNEaXNhYmxlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IGFueSwgaW5kZXg6IG51bWJlcikge1xyXG4gICAgaWYgKCFzdGVwLmlzRGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9IGluZGV4O1xyXG4gICAgICBjb25zdCBzdGVwRGF0YSA9IHtcclxuICAgICAgICBzdGVwOiBzdGVwLFxyXG4gICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICBsYWJlbDogc3RlcC5kaXNwbGF5TGFiZWwsXHJcbiAgICAgICAgdmFsdWU6IHN0ZXAudmFsdWUgfHwgc3RlcC5kaXNwbGF5TGFiZWxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXAuZW1pdChzdGVwRGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc1N0ZXBTZWxlY3RlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93TGFiZWwoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gU2hvdyBsYWJlbCBvbmx5IGlmIG5vIHN0ZXAgaXMgc2VsZWN0ZWQgT1IgaWYgdGhpcyBzdGVwIGlzIHRoZSBzZWxlY3RlZCBvbmVcclxuICAgIC8vIEhpZGUgbGFiZWxzIGZvciBjb21wbGV0ZWQgc3RlcHNcclxuICAgIHJldHVybiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gLTEgfHwgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9PT0gaW5kZXgpICYmICF0aGlzLmlzU3RlcENvbXBsZXRlZChpbmRleCk7XHJcbiAgfVxyXG5cclxuICBzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwOiBhbnksIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIC8vIFNob3cgYXMgZGlzYWJsZWQgaWYgc3RlcCBpcyBhY3R1YWxseSBkaXNhYmxlZFxyXG4gICAgcmV0dXJuIHN0ZXAuaXNEaXNhYmxlZCA9PT0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGlzU3RlcENvbXBsZXRlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAvLyBDaGVjayBpZiBzdGVwIGlzIG1hcmtlZCBhcyBjb21wbGV0ZWRcclxuICAgIGlmICh0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIgJiYgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XS5pc0NvbXBsZXRlZCA9PT0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGlzU3RlcEFjdGl2ZShpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAvLyBDaGVjayBpZiBzdGVwIGlzIG1hcmtlZCBhcyBhY3RpdmVcclxuICAgIGlmICh0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIgJiYgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW2luZGV4XS5pc0FjdGl2ZSA9PT0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGVtaXRBY3RpdmVTdGVwT25Mb2FkKCkge1xyXG4gICAgLy8gQXV0b21hdGljYWxseSBlbWl0IHRoZSBhY3RpdmUgc3RlcCB3aGVuIGNvbXBvbmVudCBsb2Fkc1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlciAmJiB0aGlzLnNlbGVjdGVkU3RlcEluZGV4ID49IDApIHtcclxuICAgICAgY29uc3QgYWN0aXZlU3RlcCA9IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlclt0aGlzLnNlbGVjdGVkU3RlcEluZGV4XTtcclxuICAgICAgaWYgKGFjdGl2ZVN0ZXApIHtcclxuICAgICAgICBjb25zdCBzdGVwRGF0YSA9IHtcclxuICAgICAgICAgIHN0ZXA6IGFjdGl2ZVN0ZXAsXHJcbiAgICAgICAgICBpbmRleDogdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCxcclxuICAgICAgICAgIGxhYmVsOiBhY3RpdmVTdGVwLmRpc3BsYXlMYWJlbCxcclxuICAgICAgICAgIHZhbHVlOiBhY3RpdmVTdGVwLnZhbHVlIHx8IGFjdGl2ZVN0ZXAuZGlzcGxheUxhYmVsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkU3RlcC5lbWl0KHN0ZXBEYXRhKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIHByb2dyYW1tYXRpY2FsbHkgbW92ZSB0byB0aGUgbmV4dCBzdGVwXHJcbiAgbW92ZVRvTmV4dFN0ZXAoKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA8IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlci5sZW5ndGggLSAxKSB7XHJcbiAgICAgIHRoaXMubW92ZVRvU3RlcCh0aGlzLnNlbGVjdGVkU3RlcEluZGV4ICsgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBNZXRob2QgdG8gcHJvZ3JhbW1hdGljYWxseSBtb3ZlIHRvIHRoZSBwcmV2aW91cyBzdGVwXHJcbiAgbW92ZVRvUHJldmlvdXNTdGVwKCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRTdGVwSW5kZXggPiAwKSB7XHJcbiAgICAgIHRoaXMubW92ZVRvU3RlcCh0aGlzLnNlbGVjdGVkU3RlcEluZGV4IC0gMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBNZXRob2QgdG8gcHJvZ3JhbW1hdGljYWxseSBtb3ZlIHRvIGEgc3BlY2lmaWMgc3RlcFxyXG4gIG1vdmVUb1N0ZXAoc3RlcEluZGV4OiBudW1iZXIpIHtcclxuICAgIGlmIChzdGVwSW5kZXggPj0gMCAmJiBzdGVwSW5kZXggPCB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIubGVuZ3RoKSB7XHJcbiAgICAgIC8vIFVwZGF0ZSBzdGVwIHN0YXRlc1xyXG4gICAgICB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZm9yRWFjaCgoc3RlcDogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgaWYgKGluZGV4IDwgc3RlcEluZGV4KSB7XHJcbiAgICAgICAgICAvLyBNYXJrIHByZXZpb3VzIHN0ZXBzIGFzIGNvbXBsZXRlZFxyXG4gICAgICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IHRydWU7XHJcbiAgICAgICAgICBzdGVwLmlzQWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09PSBzdGVwSW5kZXgpIHtcclxuICAgICAgICAgIC8vIE1hcmsgY3VycmVudCBzdGVwIGFzIGFjdGl2ZVxyXG4gICAgICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgc3RlcC5pc0FjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICBzdGVwLmlzRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gTWFyayBmdXR1cmUgc3RlcHMgYXMgcGVuZGluZy9kaXNhYmxlZFxyXG4gICAgICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgc3RlcC5pc0FjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgc3RlcC5pc0Rpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA9IHN0ZXBJbmRleDtcclxuICAgICAgXHJcbiAgICAgIC8vIEVtaXQgdGhlIHN0ZXAgY2hhbmdlXHJcbiAgICAgIGNvbnN0IHN0ZXBEYXRhID0ge1xyXG4gICAgICAgIHN0ZXA6IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcltzdGVwSW5kZXhdLFxyXG4gICAgICAgIGluZGV4OiBzdGVwSW5kZXgsXHJcbiAgICAgICAgbGFiZWw6IHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcltzdGVwSW5kZXhdLmRpc3BsYXlMYWJlbCxcclxuICAgICAgICB2YWx1ZTogdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW3N0ZXBJbmRleF0udmFsdWUgfHwgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyW3N0ZXBJbmRleF0uZGlzcGxheUxhYmVsXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRTdGVwLmVtaXQoc3RlcERhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIGNvbXBsZXRlIGN1cnJlbnQgc3RlcCBhbmQgbW92ZSB0byBuZXh0XHJcbiAgY29tcGxldGVDdXJyZW50U3RlcEFuZE1vdmVOZXh0KCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRTdGVwSW5kZXggPj0gMCAmJiB0aGlzLnNlbGVjdGVkU3RlcEluZGV4IDwgdGhpcy5maWVsZCgpLmVkaXRTdGVwcGVyLmxlbmd0aCAtIDEpIHtcclxuICAgICAgLy8gTWFyayBjdXJyZW50IHN0ZXAgYXMgY29tcGxldGVkXHJcbiAgICAgIHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlclt0aGlzLnNlbGVjdGVkU3RlcEluZGV4XS5pc0NvbXBsZXRlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlclt0aGlzLnNlbGVjdGVkU3RlcEluZGV4XS5pc0FjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICBcclxuICAgICAgLy8gTW92ZSB0byBuZXh0IHN0ZXBcclxuICAgICAgdGhpcy5tb3ZlVG9OZXh0U3RlcCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIHdhdGNoIGZvciBleHRlcm5hbCBzdGVwIGNoYW5nZXMgKGNhbiBiZSBjYWxsZWQgZnJvbSBwYXJlbnQpXHJcbiAgdXBkYXRlU3RlcEZyb21FeHRlcm5hbChzdGVwVmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMuZmllbGQoKS5lZGl0U3RlcHBlcikge1xyXG4gICAgICBjb25zdCBzdGVwSW5kZXggPSB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIuZmluZEluZGV4KChzdGVwOiBhbnkpID0+IFxyXG4gICAgICAgIHN0ZXAuZGlzcGxheUxhYmVsID09PSBzdGVwVmFsdWUgfHwgc3RlcC52YWx1ZSA9PT0gc3RlcFZhbHVlXHJcbiAgICAgICk7XHJcbiAgICAgIFxyXG4gICAgICBpZiAoc3RlcEluZGV4ID49IDAgJiYgc3RlcEluZGV4ICE9PSB0aGlzLnNlbGVjdGVkU3RlcEluZGV4KSB7XHJcbiAgICAgICAgdGhpcy5tb3ZlVG9TdGVwKHN0ZXBJbmRleCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEF1dG8tcHJvZ3Jlc3Npb24gbWV0aG9kc1xyXG4gIHN0YXJ0QXV0b1Byb2dyZXNzaW9uKCkge1xyXG4gICAgaWYgKHRoaXMuYXV0b1Byb2dyZXNzVGltZXIpIHtcclxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmF1dG9Qcm9ncmVzc1RpbWVyKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdGhpcy5hdXRvUHJvZ3Jlc3NUaW1lciA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgdGhpcy5tb3ZlVG9OZXh0U3RlcCgpO1xyXG4gICAgICBcclxuICAgICAgLy8gU3RvcCBhdXRvLXByb2dyZXNzaW9uIHdoZW4gcmVhY2hpbmcgdGhlIGxhc3Qgc3RlcFxyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZFN0ZXBJbmRleCA+PSB0aGlzLmZpZWxkKCkuZWRpdFN0ZXBwZXIubGVuZ3RoIC0gMSkge1xyXG4gICAgICAgIHRoaXMuc3RvcEF1dG9Qcm9ncmVzc2lvbigpO1xyXG4gICAgICB9XHJcbiAgICB9LCB0aGlzLmF1dG9Qcm9ncmVzc0RlbGF5KCkpO1xyXG4gIH1cclxuXHJcbiAgc3RvcEF1dG9Qcm9ncmVzc2lvbigpIHtcclxuICAgIGlmICh0aGlzLmF1dG9Qcm9ncmVzc1RpbWVyKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5hdXRvUHJvZ3Jlc3NUaW1lcik7XHJcbiAgICAgIHRoaXMuYXV0b1Byb2dyZXNzVGltZXIgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIHJlc2V0IHN0ZXBwZXIgdG8gZmlyc3Qgc3RlcFxyXG4gIHJlc2V0VG9GaXJzdFN0ZXAoKSB7XHJcbiAgICB0aGlzLnN0b3BBdXRvUHJvZ3Jlc3Npb24oKTtcclxuICAgIHRoaXMubW92ZVRvU3RlcCgwKTtcclxuICAgIFxyXG4gICAgaWYgKHRoaXMuYXV0b1Byb2dyZXNzKCkpIHtcclxuICAgICAgdGhpcy5zdGFydEF1dG9Qcm9ncmVzc2lvbigpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIiBzdHlsZT1cInpvb206IDAuODU7XCI+XHJcbiAgPG1hdC1zdGVwcGVyICNzdGVwcGVySGVhZGVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3RlcHMgb2YgZmllbGQoKS5lZGl0U3RlcHBlcjsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICA8bWF0LXN0ZXAgXHJcbiAgICAgICAgKm5nSWY9XCJzdGVwcy5pc0Rpc3BsYXkgIT09IGZhbHNlXCJcclxuICAgICAgICBbY29tcGxldGVkXT1cImZhbHNlXCJcclxuICAgICAgICBbb3B0aW9uYWxdPVwiZmFsc2VcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbWF0U3RlcExhYmVsPlxyXG4gICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgY2xhc3M9XCJzdGVwLWNvbnRhaW5lclwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5zdGVwLWRpc2FibGVkXT1cInNob3VsZFNob3dBc0Rpc2FibGVkKHN0ZXBzLCBpKVwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5zdGVwLWFjdGl2ZV09XCJpc1N0ZXBBY3RpdmUoaSlcIlxyXG4gICAgICAgICAgICBbY2xhc3Muc3RlcC1jb21wbGV0ZWRdPVwiaXNTdGVwQ29tcGxldGVkKGkpXCJcclxuICAgICAgICAgICAgW2NsYXNzLnN0ZXAtY29sbGFwc2VkXT1cIiFzaG91bGRTaG93TGFiZWwoaSlcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdGVwQ2xpY2soc3RlcHMsIGkpXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1jaXJjbGVcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MuY2lyY2xlLWFjdGl2ZV09XCJpc1N0ZXBBY3RpdmUoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5jaXJjbGUtY29tcGxldGVkXT1cImlzU3RlcENvbXBsZXRlZChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7aSArIDF9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic3RlcC1sYWJlbCBteC0yXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtZGlzYWJsZWRdPVwic2hvdWxkU2hvd0FzRGlzYWJsZWQoc3RlcHMsIGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MubGFiZWwtYWN0aXZlXT1cImlzU3RlcEFjdGl2ZShpKVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLmxhYmVsLWNvbXBsZXRlZF09XCJpc1N0ZXBDb21wbGV0ZWQoaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5sYWJlbC1oaWRkZW5dPVwiIXNob3VsZFNob3dMYWJlbChpKVwiPlxyXG4gICAgICAgICAgICAgIHt7c3RlcHM/LmRpc3BsYXlMYWJlbH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhcnJvd1wiIFxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hcnJvdy1kaXNhYmxlZF09XCJzaG91bGRTaG93QXNEaXNhYmxlZChzdGVwcywgaSlcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hcnJvdy1hY3RpdmVdPVwiaXNTdGVwQWN0aXZlKGkpXCJcclxuICAgICAgICAgICAgICBbY2xhc3MuYXJyb3ctY29tcGxldGVkXT1cImlzU3RlcENvbXBsZXRlZChpKVwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJpIDwgZmllbGQoKS5lZGl0U3RlcHBlci5sZW5ndGggLSAxXCI+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvbWF0LXN0ZXA+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L21hdC1zdGVwcGVyPlxyXG48L2Rpdj4iXX0=
|