@adlfe/campaign-management-library 2.9.21 → 2.10.0
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/{campaign-management-library.metadata.json → adlfe-campaign-management-library.metadata.json} +1 -1
- package/bundles/{campaign-management-library.umd.js → adlfe-campaign-management-library.umd.js} +47 -56
- package/bundles/adlfe-campaign-management-library.umd.js.map +1 -0
- package/bundles/adlfe-campaign-management-library.umd.min.js +16 -0
- package/bundles/adlfe-campaign-management-library.umd.min.js.map +1 -0
- package/esm2015/adlfe-campaign-management-library.js +29 -0
- package/esm2015/environments/environment.js +3 -1
- package/esm2015/lib/adl-campaign-management-library-internal.component.js +1 -1
- package/esm2015/lib/adl-campaign-management-library-internal.module.js +1 -1
- package/esm2015/lib/campaign-management/campaign-management.component.js +1 -1
- package/esm2015/lib/campaign-management/campaign-management.module.js +1 -1
- package/esm2015/lib/campaign-management/models/campaign-count-final-response-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/models/contact-category-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/models/failover-req.model.js +1 -1
- package/esm2015/lib/campaign-management/models/general-information-wa-req.model.js +1 -3
- package/esm2015/lib/campaign-management/models/index.js +1 -1
- package/esm2015/lib/campaign-management/models/scheduler-req.model.js +1 -1
- package/esm2015/lib/campaign-management/models/template-wa.model.js +1 -1
- package/esm2015/lib/campaign-management/models/whatsapp-account.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/campaign-index.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/campaign-index.module.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.js +2 -2
- package/esm2015/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/campaign-response-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/client-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/conversation-chart-response-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/performance-chart-response-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/performance-chart-sereies-response-dto.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/campaign-index/models/table.model.js +1 -1
- package/esm2015/lib/campaign-management/modules/dashboard/dashboard.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/dashboard/dashboard.module.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-email/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-line/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-sms/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.js +3 -15
- package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-wa/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/failover-mechanism/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/general-information/general-information.component.js +2 -2
- package/esm2015/lib/campaign-management/modules/new-campaign/general-information/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/new-campaign.component.js +1 -4
- package/esm2015/lib/campaign-management/modules/new-campaign/new-number-bases/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.js +29 -24
- package/esm2015/lib/campaign-management/modules/new-campaign/scheduler/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/summary/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/new-campaign/summary/summary.component.js +1 -1
- package/esm2015/lib/campaign-management/modules/wizard/index.js +1 -1
- package/esm2015/lib/campaign-management/modules/wizard/wizard.component.js +1 -1
- package/esm2015/lib/campaign-management/util/enums.js +1 -1
- package/esm2015/lib/core/const/constants.const.js +1 -1
- package/esm2015/lib/core/const/create-package-service.const.js +1 -1
- package/esm2015/lib/core/const/failover.const.js +1 -1
- package/esm2015/lib/core/const/form-validators.js +1 -1
- package/esm2015/lib/core/const/index.js +1 -1
- package/esm2015/lib/core/const/rate-card-table-config.js +1 -1
- package/esm2015/lib/core/const/validation-message.const.js +1 -1
- package/esm2015/lib/core/directives/index.js +1 -1
- package/esm2015/lib/core/directives/mat-select-infinite-scroll.js +1 -1
- package/esm2015/lib/core/enums/constant.enum.js +1 -1
- package/esm2015/lib/core/enums/http-verb.enum.js +1 -1
- package/esm2015/lib/core/enums/index.js +1 -1
- package/esm2015/lib/core/enums/main-area.enum.js +1 -1
- package/esm2015/lib/core/models/Package.js +1 -1
- package/esm2015/lib/core/models/base-option.model.js +1 -1
- package/esm2015/lib/core/models/billing-param-req.component.js +1 -1
- package/esm2015/lib/core/models/country.model.js +1 -1
- package/esm2015/lib/core/models/create-package-param.model.js +1 -1
- package/esm2015/lib/core/models/http-body-resp.model.js +1 -1
- package/esm2015/lib/core/models/index.js +1 -1
- package/esm2015/lib/core/models/util/api-adapter-service-models/index.js +1 -1
- package/esm2015/lib/core/models/util/api-adapter-service-models/parameter.model.js +1 -1
- package/esm2015/lib/core/models/util/api-adapter-service-models/server-in-built-error.model.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/request-models/app-request.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/response-models/app-response-adl.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/response-models/app-response.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/response-models/error.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/response-models/index.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/response-models/meta.js +1 -1
- package/esm2015/lib/core/models/util/api-dto/response-models/paging.js +1 -1
- package/esm2015/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.js +1 -1
- package/esm2015/lib/core/models/util/http-body-req/http-body-req-pagination.model.js +1 -1
- package/esm2015/lib/core/models/util/http-body-req/index.js +1 -1
- package/esm2015/lib/core/models/util/index.js +1 -1
- package/esm2015/lib/core/services/api-adapter-service.service.js +13 -13
- package/esm2015/lib/core/services/index.js +1 -1
- package/esm2015/lib/core/util/custom-paginator.js +1 -1
- package/esm2015/lib/core/util/download-blob-file.js +1 -1
- package/esm2015/lib/core/util/enum-to-option-generator.js +1 -1
- package/esm2015/lib/core/util/http-param-generator.js +1 -1
- package/esm2015/lib/core/util/index.js +1 -1
- package/esm2015/lib/global/confirmation/confirmation/confirmation.component.js +1 -1
- package/esm2015/lib/global/confirmation/confirmation/index.js +1 -1
- package/esm2015/lib/global/confirmation/confirmation.module.js +1 -1
- package/esm2015/lib/global/confirmation/shared/model/confirmation.model.js +1 -1
- package/esm2015/lib/global/confirmation/shared/model/index.js +1 -1
- package/esm2015/lib/global/confirmation/shared/shared-services.service.js +1 -1
- package/esm2015/lib/global/search/search/search.component.js +1 -1
- package/esm2015/lib/global/search/search.module.js +1 -1
- package/esm2015/public-api.js +1 -1
- package/esm5/adlfe-campaign-management-library.js +29 -0
- package/esm5/environments/environment.js +3 -1
- package/esm5/lib/adl-campaign-management-library-internal.component.js +1 -1
- package/esm5/lib/adl-campaign-management-library-internal.module.js +1 -1
- package/esm5/lib/campaign-management/campaign-management.component.js +1 -1
- package/esm5/lib/campaign-management/campaign-management.module.js +1 -1
- package/esm5/lib/campaign-management/models/campaign-count-final-response-dto.model.js +1 -1
- package/esm5/lib/campaign-management/models/contact-category-dto.model.js +1 -1
- package/esm5/lib/campaign-management/models/failover-req.model.js +1 -1
- package/esm5/lib/campaign-management/models/general-information-wa-req.model.js +1 -3
- package/esm5/lib/campaign-management/models/index.js +1 -1
- package/esm5/lib/campaign-management/models/scheduler-req.model.js +1 -1
- package/esm5/lib/campaign-management/models/template-wa.model.js +1 -1
- package/esm5/lib/campaign-management/models/whatsapp-account.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/campaign-index.component.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/campaign-index.module.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.js +2 -2
- package/esm5/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/index.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/index.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/index.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/campaign-response-dto.model.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/client-dto.model.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/conversation-chart-response-dto.model.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/index.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/performance-chart-response-dto.model.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/performance-chart-sereies-response-dto.model.js +1 -1
- package/esm5/lib/campaign-management/modules/campaign-index/models/table.model.js +1 -1
- package/esm5/lib/campaign-management/modules/dashboard/dashboard.component.js +1 -1
- package/esm5/lib/campaign-management/modules/dashboard/dashboard.module.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-email/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-line/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-sms/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.js +3 -15
- package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-wa/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/failover-mechanism/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/general-information/general-information.component.js +2 -2
- package/esm5/lib/campaign-management/modules/new-campaign/general-information/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/new-campaign.component.js +1 -4
- package/esm5/lib/campaign-management/modules/new-campaign/new-number-bases/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.js +30 -24
- package/esm5/lib/campaign-management/modules/new-campaign/scheduler/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/summary/index.js +1 -1
- package/esm5/lib/campaign-management/modules/new-campaign/summary/summary.component.js +1 -1
- package/esm5/lib/campaign-management/modules/wizard/index.js +1 -1
- package/esm5/lib/campaign-management/modules/wizard/wizard.component.js +1 -1
- package/esm5/lib/campaign-management/util/enums.js +1 -1
- package/esm5/lib/core/const/constants.const.js +1 -1
- package/esm5/lib/core/const/create-package-service.const.js +1 -1
- package/esm5/lib/core/const/failover.const.js +1 -1
- package/esm5/lib/core/const/form-validators.js +1 -1
- package/esm5/lib/core/const/index.js +1 -1
- package/esm5/lib/core/const/rate-card-table-config.js +1 -1
- package/esm5/lib/core/const/validation-message.const.js +1 -1
- package/esm5/lib/core/directives/index.js +1 -1
- package/esm5/lib/core/directives/mat-select-infinite-scroll.js +1 -1
- package/esm5/lib/core/enums/constant.enum.js +1 -1
- package/esm5/lib/core/enums/http-verb.enum.js +1 -1
- package/esm5/lib/core/enums/index.js +1 -1
- package/esm5/lib/core/enums/main-area.enum.js +1 -1
- package/esm5/lib/core/models/Package.js +1 -1
- package/esm5/lib/core/models/base-option.model.js +1 -1
- package/esm5/lib/core/models/billing-param-req.component.js +1 -1
- package/esm5/lib/core/models/country.model.js +1 -1
- package/esm5/lib/core/models/create-package-param.model.js +1 -1
- package/esm5/lib/core/models/http-body-resp.model.js +1 -1
- package/esm5/lib/core/models/index.js +1 -1
- package/esm5/lib/core/models/util/api-adapter-service-models/index.js +1 -1
- package/esm5/lib/core/models/util/api-adapter-service-models/parameter.model.js +1 -1
- package/esm5/lib/core/models/util/api-adapter-service-models/server-in-built-error.model.js +1 -1
- package/esm5/lib/core/models/util/api-dto/request-models/app-request.js +1 -1
- package/esm5/lib/core/models/util/api-dto/response-models/app-response-adl.js +1 -1
- package/esm5/lib/core/models/util/api-dto/response-models/app-response.js +1 -1
- package/esm5/lib/core/models/util/api-dto/response-models/error.js +1 -1
- package/esm5/lib/core/models/util/api-dto/response-models/index.js +1 -1
- package/esm5/lib/core/models/util/api-dto/response-models/meta.js +1 -1
- package/esm5/lib/core/models/util/api-dto/response-models/paging.js +1 -1
- package/esm5/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.js +1 -1
- package/esm5/lib/core/models/util/http-body-req/http-body-req-pagination.model.js +1 -1
- package/esm5/lib/core/models/util/http-body-req/index.js +1 -1
- package/esm5/lib/core/models/util/index.js +1 -1
- package/esm5/lib/core/services/api-adapter-service.service.js +11 -11
- package/esm5/lib/core/services/index.js +1 -1
- package/esm5/lib/core/util/custom-paginator.js +1 -1
- package/esm5/lib/core/util/download-blob-file.js +1 -1
- package/esm5/lib/core/util/enum-to-option-generator.js +1 -1
- package/esm5/lib/core/util/http-param-generator.js +1 -1
- package/esm5/lib/core/util/index.js +1 -1
- package/esm5/lib/global/confirmation/confirmation/confirmation.component.js +1 -1
- package/esm5/lib/global/confirmation/confirmation/index.js +1 -1
- package/esm5/lib/global/confirmation/confirmation.module.js +1 -1
- package/esm5/lib/global/confirmation/shared/model/confirmation.model.js +1 -1
- package/esm5/lib/global/confirmation/shared/model/index.js +1 -1
- package/esm5/lib/global/confirmation/shared/shared-services.service.js +1 -1
- package/esm5/lib/global/search/search/search.component.js +1 -1
- package/esm5/lib/global/search/search.module.js +1 -1
- package/esm5/public-api.js +1 -1
- package/fesm2015/{campaign-management-library.js → adlfe-campaign-management-library.js} +46 -56
- package/fesm2015/adlfe-campaign-management-library.js.map +1 -0
- package/fesm5/{campaign-management-library.js → adlfe-campaign-management-library.js} +45 -54
- package/fesm5/adlfe-campaign-management-library.js.map +1 -0
- package/lib/campaign-management/models/general-information-wa-req.model.d.ts +0 -1
- package/lib/campaign-management/models/template-wa.model.d.ts +0 -1
- package/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.d.ts +0 -6
- package/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.d.ts +3 -2
- package/lib/core/services/api-adapter-service.service.d.ts +1 -0
- package/package.json +11 -20
- package/bundles/campaign-management-library.umd.js.map +0 -1
- package/bundles/campaign-management-library.umd.min.js +0 -16
- package/bundles/campaign-management-library.umd.min.js.map +0 -1
- package/esm2015/campaign-management-library.js +0 -29
- package/esm5/campaign-management-library.js +0 -29
- package/fesm2015/campaign-management-library.js.map +0 -1
- package/fesm5/campaign-management-library.js.map +0 -1
- /package/{campaign-management-library.d.ts → adlfe-campaign-management-library.d.ts} +0 -0
|
@@ -343,4 +343,4 @@ var FailoverMechanismComponent = /** @class */ (function () {
|
|
|
343
343
|
return FailoverMechanismComponent;
|
|
344
344
|
}());
|
|
345
345
|
export { FailoverMechanismComponent };
|
|
346
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbG92ZXItbWVjaGFuaXNtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2NhbXBhaWduLW1hbmFnZW1lbnQtbGlicmFyeS8iLCJzb3VyY2VzIjpbImxpYi9jYW1wYWlnbi1tYW5hZ2VtZW50L21vZHVsZXMvbmV3LWNhbXBhaWduL2ZhaWxvdmVyLW1lY2hhbmlzbS9mYWlsb3Zlci1tZWNoYW5pc20uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFL0UsT0FBTyxFQUNOLGdDQUFnQyxFQUNoQyxtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixVQUFVLEVBQ1YsWUFBWSxHQUNaLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHL0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFRckU7SUFvQkMsb0NBQW9CLGlCQUEyQztRQUEzQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO1FBYnhELDZCQUF3QixnQkFBUSxnQkFBZ0IsRUFBRztRQUNuRCw0QkFBdUIsZ0JBQVEsZUFBZSxFQUFHO1FBQ2pELG1CQUFjLGdCQUFRLFVBQVUsRUFBRztRQUNuQywyQkFBc0IsZ0JBQVEsZUFBZSxFQUFHO1FBQ2hELDRCQUF1QixnQkFBUSxnQkFBZ0IsRUFBRztRQUNsRCxrQkFBYSxnQkFBUSxVQUFVLEVBQUc7UUFFakMsZ0JBQVcsR0FBbUIsRUFBRSxDQUFDO1FBQ2pDLHlCQUFvQixnQkFBUSxZQUFZ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O0lBQ3RELENBQUM7O2dCQWxac0Msd0JBQXdCOztJQWxCL0Q7UUFEQyxNQUFNLEVBQUU7Z0VBQ2dDO0lBZ0JoQztRQUFSLEtBQUssRUFBRTtzRUFBZ0M7SUFsQjVCLDBCQUEwQjtRQUx0QyxTQUFTLENBQUM7WUFDVixRQUFRLEVBQUUsd0JBQXdCO1lBQ2xDLHkvVkFBa0Q7O1NBRWxELENBQUM7T0FDVywwQkFBMEIsQ0F1YXRDO0lBQUQsaUNBQUM7Q0FBQSxBQXZhRCxJQXVhQztTQXZhWSwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbnB1dCxcclxuXHRPbkRlc3Ryb3ksXHJcblx0T25Jbml0LFxyXG5cdE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuXHRGYWlsb3Zlck1lY2hhbmlzbVZhbGlkYXRpb25Db25zdCxcclxuXHRQbGF0Zm9ybU9wdGlvbkNvbnN0LFxyXG5cdGlzSGF2ZU5leHRPcHRpb24sXHJcblx0aXNMb2FkaW5nT3B0aW9uLFxyXG5cdG9wdGlvbkxpc3QsXHJcblx0cGFnZU5vT3B0aW9uLFxyXG59IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvY29uc3QnO1xyXG5pbXBvcnQgeyBpbnRlcnZhbFRpbWVWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2NvbnN0L2Zvcm0tdmFsaWRhdG9ycyc7XHJcbmltcG9ydCB7IFBhcmFtZXRlciB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvbW9kZWxzL3V0aWwvYXBpLWFkYXB0ZXItc2VydmljZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBBcHBSZXNwb25zZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvbW9kZWxzL3V0aWwvYXBpLWR0by9yZXNwb25zZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBBcGlBZGFwdGVyU2VydmljZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVGVtcGxhdGVXQU1vZGVsLCBXaGF0c0FwcEFjY291bnREdG8gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdsaWItZmFpbG92ZXItbWVjaGFuaXNtJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vZmFpbG92ZXItbWVjaGFuaXNtLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9mYWlsb3Zlci1tZWNoYW5pc20uY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEZhaWxvdmVyTWVjaGFuaXNtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cdEBPdXRwdXQoKVxyXG5cdHB1YmxpYyBmYWlsb3ZlcjogRXZlbnRFbWl0dGVyPEZvcm1Hcm91cD47XHJcblxyXG5cdHB1YmxpYyBmb3JtOiBGb3JtR3JvdXA7XHJcblx0cHVibGljIGNoYW5uZWxPcHRpb246IGFueTtcclxuXHRwdWJsaWMgdmFsaWRhdGlvbk1lc3NhZ2VzOiBhbnk7XHJcblx0cHVibGljIGlzSGF2ZU5leHRUZW1wbGF0ZU9wdGlvbiA9IHsgLi4uaXNIYXZlTmV4dE9wdGlvbiB9O1xyXG5cdHB1YmxpYyBpc0xvYWRpbmdUZW1wbGF0ZU9wdGlvbiA9IHsgLi4uaXNMb2FkaW5nT3B0aW9uIH07XHJcblx0cHVibGljIHRlbXBsYXRlT3B0aW9uID0geyAuLi5vcHRpb25MaXN0IH07XHJcblx0cHVibGljIGlzTG9hZGluZ0FjY291bnRPcHRpb24gPSB7IC4uLmlzTG9hZGluZ09wdGlvbiB9O1xyXG5cdHB1YmxpYyBpc0hhdmVOZXh0QWNjb3VudE9wdGlvbiA9IHsgLi4uaXNIYXZlTmV4dE9wdGlvbiB9O1xyXG5cdHB1YmxpYyBhY2NvdW50T3B0aW9uID0geyAuLi5vcHRpb25MaXN0IH07XHJcblxyXG5cdHByaXZhdGUgc3Vic2NyaWJlcnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblx0cHJpdmF0ZSBwYWdlTm9UZW1wbGF0ZU9wdGlvbiA9IHsgLi4ucGFnZU5vT3B0aW9uIH07XHJcblx0cHJpdmF0ZSBwYWdlTm9BY2NvdW50T3B0aW9uID0geyAuLi5wYWdlTm9PcHRpb24gfTtcclxuXHJcblx0QElucHV0KCkgcHVibGljIGlzUmVhZE9ubHlNb2RlOiBib29sZWFuO1xyXG5cclxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaUFkYXB0ZXJTZXJ2aWNlOiBBcGlBZGFwdGVyU2VydmljZVNlcnZpY2UpIHtcclxuXHRcdHRoaXMuZmFpbG92ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdHRoaXMudmFsaWRhdGlvbk1lc3NhZ2VzID0gRmFpbG92ZXJNZWNoYW5pc21WYWxpZGF0aW9uQ29uc3Q7XHJcblx0XHR0aGlzLmNoYW5uZWxPcHRpb24gPSBbXHJcblx0XHRcdC4uLlBsYXRmb3JtT3B0aW9uQ29uc3QsXHJcblx0XHRcdC8qIHtcclxuICAgICAgICBpY29uOiAnJyxcclxuICAgICAgICBpbnB1dFN2Z0ljb246ICdpY29uLXZvaWNlLWdyYXknLFxyXG4gICAgICAgIGltYWdlOiAnbGluZS5wbmcnLFxyXG4gICAgICAgIGxhYmVsOiAnVm9pY2UnLFxyXG4gICAgICAgIHZhbHVlOiAnVk9JQ0UnLFxyXG4gICAgICB9LCAqL1xyXG5cdFx0XS5maWx0ZXIoXHJcblx0XHRcdHQgPT5cclxuXHRcdFx0XHQhW1xyXG5cdFx0XHRcdFx0J0xJTkUnLFxyXG5cdFx0XHRcdFx0dGhpcy5nZXRDYW1wYWlnblN0b3JhZ2U/LmdlbmVyYWxJbmZvcm1hdGlvbj8uZm9ybT8ubWVkaXVtLFxyXG5cdFx0XHRcdF0uaW5jbHVkZXModC52YWx1ZSlcclxuXHRcdCk7XHJcblxyXG5cdFx0dGhpcy5pbml0Rm9ybSgpO1xyXG5cdFx0dGhpcy5pbml0RGlzYWJsZSgpO1xyXG5cdFx0dGhpcy5pbml0RWRpdCgpO1xyXG5cdFx0dGhpcy5mYWlsb3Zlci5lbWl0KHRoaXMuZm9ybSk7XHJcblx0fVxyXG5cclxuXHRnZXQgZ2V0Q2FtcGFpZ25TdG9yYWdlKCk6IGFueSB7XHJcblx0XHRyZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3RlbGluLmNhbXBhaWduJylcclxuXHRcdFx0PyBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd0ZWxpbi5jYW1wYWlnbicpKVxyXG5cdFx0XHQ6IHt9O1xyXG5cdH1cclxuXHJcblx0Z2V0IGludGVydmFsKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuZm9ybS5nZXQoJ2ludGVydmFsJyk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRGb3JtKCk6IHZvaWQge1xyXG5cdFx0dGhpcy5mb3JtID0gbmV3IEZvcm1Hcm91cCh7XHJcblx0XHRcdGFjdGl2ZTogbmV3IEZvcm1Db250cm9sKGZhbHNlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuXHRcdFx0dHlwZTogbmV3IEZvcm1Db250cm9sKCcnKSxcclxuXHRcdFx0aW50ZXJ2YWw6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuXHRcdFx0YWNjb3VudHM6IG5ldyBGb3JtQXJyYXkoW10pLFxyXG5cdFx0fSk7XHJcblxyXG5cdFx0dGhpcy5mb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xyXG5cdFx0XHRpZiAodGhpcy5pbnRlcnZhbC50b3VjaGVkICYmIHRoaXMuaW50ZXJ2YWwudmFsdWUgPT09IDApIHtcclxuXHRcdFx0XHR0aGlzLmZvcm0uZ2V0KCdpbnRlcnZhbCcpLnNldEVycm9ycyh7IGludGVydmFsVGltZTogdHJ1ZSB9KTtcclxuXHRcdFx0fVxyXG5cdFx0XHR0aGlzLmZhaWxvdmVyLmVtaXQodGhpcy5mb3JtKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0RGlzYWJsZSgpOiB2b2lkIHtcclxuXHRcdGlmICghdGhpcy5pc1JlYWRPbmx5TW9kZSkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0dGhpcy5mb3JtLmRpc2FibGUoKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdEVkaXQoKTogdm9pZCB7XHJcblx0XHRpZiAoXHJcblx0XHRcdE9iamVjdC5lbnRyaWVzKHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlKS5sZW5ndGggPT09IDAgfHxcclxuXHRcdFx0IXRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5mYWlsb3ZlclxyXG5cdFx0KVxyXG5cdFx0XHRyZXR1cm47XHJcblxyXG5cdFx0dGhpcy5mb3JtXHJcblx0XHRcdC5nZXQoJ2FjdGl2ZScpXHJcblx0XHRcdC5zZXRWYWx1ZSh0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZmFpbG92ZXI/LmFjdGl2ZSk7XHJcblx0XHR0aGlzLmZvcm1cclxuXHRcdFx0LmdldCgndHlwZScpXHJcblx0XHRcdC5zZXRWYWx1ZSh0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZmFpbG92ZXI/LnR5cGUgPz8gJycpO1xyXG5cdFx0dGhpcy5mb3JtXHJcblx0XHRcdC5nZXQoJ2ludGVydmFsJylcclxuXHRcdFx0LnNldFZhbHVlKHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5mYWlsb3Zlcj8uaW50ZXJ2YWwgPz8gbnVsbCk7XHJcblxyXG5cdFx0dGhpcy5hY3RpdmVDaGFuZ2UodGhpcy5nZXRDYW1wYWlnblN0b3JhZ2U/LmZhaWxvdmVyPy5hY3RpdmUpO1xyXG5cdFx0dGhpcy52YWxpZGF0aW9uQWNjb3VudCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0QWNjb3VudChkYXRhOiBhbnkgPSBudWxsLCBfY2hhbm5lbDogYW55ID0gbnVsbCk6IEZvcm1Hcm91cCB7XHJcblx0XHRjb25zdCBmb3JtID0gbmV3IEZvcm1Hcm91cCh7XHJcblx0XHRcdGNoYW5uZWw6IG5ldyBGb3JtQ29udHJvbChfY2hhbm5lbCksXHJcblx0XHRcdHBsYXRmb3JtOiBuZXcgRm9ybUNvbnRyb2woX2NoYW5uZWw/LnZhbHVlKSxcclxuXHRcdFx0YWNjb3VudElkOiBuZXcgRm9ybUNvbnRyb2woXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0dmFsdWU6XHJcblx0XHRcdFx0XHRcdGRhdGE/LmFjY291bnRJZCAmJiB0eXBlb2YgZGF0YT8uYWNjb3VudElkID09PSAnc3RyaW5nJ1xyXG5cdFx0XHRcdFx0XHRcdD8ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRpZDogZGF0YT8uYWNjb3VudElkLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRuYW1lOiBkYXRhPy5hY2NvdW50TmFtZSxcclxuXHRcdFx0XHRcdFx0XHQgIH1cclxuXHRcdFx0XHRcdFx0XHQ6IGRhdGE/LmFjY291bnRJZCA/PyAnJyxcclxuXHRcdFx0XHRcdGRpc2FibGVkOiB0aGlzLmlzUmVhZE9ubHlNb2RlLFxyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0VmFsaWRhdG9ycy5yZXF1aXJlZFxyXG5cdFx0XHQpLFxyXG5cdFx0XHRhY2NvdW50TmFtZTogbmV3IEZvcm1Db250cm9sKGRhdGE/LmFjY291bnROYW1lID8/ICcnKSxcclxuXHRcdFx0c3ViamVjdDogbmV3IEZvcm1Db250cm9sKHtcclxuXHRcdFx0XHR2YWx1ZTogZGF0YT8uc3ViamVjdCA/PyAnJyxcclxuXHRcdFx0XHRkaXNhYmxlZDogdGhpcy5pc1JlYWRPbmx5TW9kZSxcclxuXHRcdFx0fSksXHJcblx0XHRcdHRlbXBsYXRlOiBuZXcgRm9ybUNvbnRyb2woe1xyXG5cdFx0XHRcdHZhbHVlOiBkYXRhPy50ZW1wbGF0ZSA/PyAnJyxcclxuXHRcdFx0XHRkaXNhYmxlZDogdGhpcy5pc1JlYWRPbmx5TW9kZSxcclxuXHRcdFx0fSksXHJcblx0XHRcdHBhcmFtQm9keTogbmV3IEZvcm1BcnJheShbXSksXHJcblx0XHR9KTtcclxuXHJcblx0XHRyZXR1cm4gZm9ybTtcclxuXHR9XHJcblxyXG5cdGdldCBnZXRBY2NvdW50KCk6IEZvcm1Hcm91cFtdIHtcclxuXHRcdHJldHVybiAodGhpcy5mb3JtLmdldCgnYWNjb3VudHMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGFkZEFjY291bnQoZGF0YTogYW55ID0gbnVsbCwgY2hhbm5lbDogYW55ID0gbnVsbCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgZm9ybSA9IHRoaXMuaW5pdEFjY291bnQoZGF0YSwgY2hhbm5lbCk7XHJcblx0XHQodGhpcy5mb3JtLmdldCgnYWNjb3VudHMnKSBhcyBGb3JtQXJyYXkpLnB1c2goZm9ybSk7XHJcblxyXG5cdFx0dGhpcy5nZXRBY2NvdW50T3B0aW9uU2VydmljZShjaGFubmVsPy52YWx1ZSwgZGF0YT8uYWNjb3VudE5hbWUgPz8gJycpO1xyXG5cdFx0dGhpcy5nZXRUZW1wbGF0ZU9wdGlvblNlcnZpY2UoY2hhbm5lbD8udmFsdWUsIHt9LCBkYXRhPy50ZW1wbGF0ZT8ubmFtZSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRQYXJhbWV0ZXIoKTogRm9ybUdyb3VwIHtcclxuXHRcdGNvbnN0IGZvcm0gPSBuZXcgRm9ybUdyb3VwKHtcclxuXHRcdFx0bmFtZTogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuXHRcdH0pO1xyXG5cclxuXHRcdHJldHVybiBmb3JtO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldFBhcmFtQm9keShhY2NvdW50OiBGb3JtR3JvdXApOiBGb3JtR3JvdXBbXSB7XHJcblx0XHRyZXR1cm4gKGFjY291bnQuZ2V0KCdwYXJhbUJvZHknKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGFkZFBhcmFtQm9keShhY2NvdW50OiBGb3JtR3JvdXApOiB2b2lkIHtcclxuXHRcdGNvbnN0IGZvcm0gPSB0aGlzLmluaXRQYXJhbWV0ZXIoKTtcclxuXHRcdChhY2NvdW50LmdldCgncGFyYW1Cb2R5JykgYXMgRm9ybUFycmF5KS5wdXNoKGZvcm0pO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGRlbGV0ZVBhcmFtQm9keShhY2NvdW50OiBGb3JtR3JvdXAsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuXHRcdChhY2NvdW50LmdldCgncGFyYW1Cb2R5JykgYXMgRm9ybUFycmF5KS5yZW1vdmVBdChpbmRleCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRQYXJhbShfbmFtZTogc3RyaW5nLCBfdmFsdWU6IGFueSwgX3R5cGU6IHN0cmluZyk6IFBhcmFtZXRlciB7XHJcblx0XHRyZXR1cm4ge1xyXG5cdFx0XHRuYW1lOiBfbmFtZSxcclxuXHRcdFx0dmFsdWU6IF92YWx1ZSxcclxuXHRcdFx0aW46ICdxdWVyeScsXHJcblx0XHRcdHR5cGU6IF90eXBlLFxyXG5cdFx0fTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0QWNjb3VudE9wdGlvblNlcnZpY2UoXHJcblx0XHRwbGF0Zm9ybTogc3RyaW5nLFxyXG5cdFx0ZmlsdGVyOiBzdHJpbmcgPSAnJyxcclxuXHRcdGlzSW5maW5pdGU6IGJvb2xlYW4gPSBmYWxzZVxyXG5cdCk6IHZvaWQge1xyXG5cdFx0dGhpcy5pc0xvYWRpbmdBY2NvdW50T3B0aW9uW3BsYXRmb3JtXSA9IHRydWU7XHJcblxyXG5cdFx0Y29uc3QgcGFyYW1ldGVyTGlzdDogQXJyYXk8UGFyYW1ldGVyPiA9IFtcclxuXHRcdFx0dGhpcy5pbml0UGFyYW0oXHJcblx0XHRcdFx0J3BhZ2VObycsXHJcblx0XHRcdFx0dGhpcy5wYWdlTm9BY2NvdW50T3B0aW9uW3BsYXRmb3JtXSxcclxuXHRcdFx0XHQnbnVtYmVyJ1xyXG5cdFx0XHQpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgncm93UGVyUGFnZScsIDIwLCAnbnVtYmVyJyksXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKCdzdGF0dXMnLCAnQVBQUk9WRUQnLCAnc3RyaW5nJyksXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKCdwbGF0Zm9ybScsIHBsYXRmb3JtLCAnc3RyaW5nJyksXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKCdmaWx0ZXInLCBmaWx0ZXIsICdzdHJpbmcnKSxcclxuXHRcdF07XHJcblxyXG5cdFx0Y29uc3Qgc3VicyA9IHRoaXMuYXBpQWRhcHRlclNlcnZpY2VcclxuXHRcdFx0LmV4ZWN1dGVBcGlSZXF1ZXN0KHBhcmFtZXRlckxpc3QsICcvYWRtaW4vYWNjb3VudCcsICdHRVQnKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChyZXNwOiBBcHBSZXNwb25zZTxXaGF0c0FwcEFjY291bnREdG9bXT4pID0+IHtcclxuXHRcdFx0XHRpZiAoIXJlc3AuZGF0YSkgcmV0dXJuO1xyXG5cclxuXHRcdFx0XHR0aGlzLmFjY291bnRPcHRpb25bcGxhdGZvcm1dID0gaXNJbmZpbml0ZVxyXG5cdFx0XHRcdFx0PyBbLi4udGhpcy5hY2NvdW50T3B0aW9uW3BsYXRmb3JtXSwgLi4ucmVzcC5kYXRhXVxyXG5cdFx0XHRcdFx0OiByZXNwLmRhdGE7XHJcblxyXG5cdFx0XHRcdHRoaXMuaXNIYXZlTmV4dEFjY291bnRPcHRpb25bcGxhdGZvcm1dID0gcmVzcC5oYXZlTmV4dDtcclxuXHRcdFx0XHR0aGlzLmlzTG9hZGluZ0FjY291bnRPcHRpb25bcGxhdGZvcm1dID0gZmFsc2U7XHJcblx0XHRcdH0pO1xyXG5cclxuXHRcdHRoaXMuc3Vic2NyaWJlcnMucHVzaChzdWJzKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBnZXRUZW1wbGF0ZU9wdGlvblNlcnZpY2UoXHJcblx0XHRwbGF0Zm9ybTogc3RyaW5nLFxyXG5cdFx0YWNjb3VudDogYW55LFxyXG5cdFx0ZmlsdGVyOiBzdHJpbmcgPSAnJyxcclxuXHRcdGlzSW5maW5pdGU6IGJvb2xlYW4gPSBmYWxzZVxyXG5cdCk6IHZvaWQge1xyXG5cdFx0dGhpcy5pc0xvYWRpbmdUZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0gPSB0cnVlO1xyXG5cclxuXHRcdGNvbnN0IHBhcmFtZXRlckxpc3Q6IEFycmF5PFBhcmFtZXRlcj4gPSBbXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKFxyXG5cdFx0XHRcdCdwYWdlTm8nLFxyXG5cdFx0XHRcdHRoaXMucGFnZU5vVGVtcGxhdGVPcHRpb25bcGxhdGZvcm1dLFxyXG5cdFx0XHRcdCdudW1iZXInXHJcblx0XHRcdCksXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKCdyb3dQZXJQYWdlJywgMjAsICdudW1iZXInKSxcclxuXHRcdFx0dGhpcy5pbml0UGFyYW0oJ3BsYXRmb3JtJywgcGxhdGZvcm0sICdzdHJpbmcnKSxcclxuXHRcdFx0dGhpcy5pbml0UGFyYW0oJ2ZpbHRlcicsIGZpbHRlciwgJ3N0cmluZycpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgnY2xpZW50SWQnLCBhY2NvdW50Py5jbGllbnRJZCA/PyAnJywgJ3N0cmluZycpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgnd2FiYUlkJywgYWNjb3VudD8ud2FiYUlkID8/ICcnLCAnc3RyaW5nJyksXHJcblx0XHRdO1xyXG5cclxuXHRcdGlmIChwbGF0Zm9ybSA9PT0gJ1dBJylcclxuXHRcdFx0cGFyYW1ldGVyTGlzdC5wdXNoKHRoaXMuaW5pdFBhcmFtKCdzdGF0dXMnLCAnQVBQUk9WRUQnLCAnc3RyaW5nJykpO1xyXG5cclxuXHRcdGNvbnN0IHN1YnMgPSB0aGlzLmFwaUFkYXB0ZXJTZXJ2aWNlXHJcblx0XHRcdC5leGVjdXRlQXBpUmVxdWVzdChwYXJhbWV0ZXJMaXN0LCAnL21lc3NhZ2UvdGVtcGxhdGUnLCAnR0VUJylcclxuXHRcdFx0LnN1YnNjcmliZSgocmVzcDogQXBwUmVzcG9uc2U8VGVtcGxhdGVXQU1vZGVsW10+KSA9PiB7XHJcblx0XHRcdFx0dGhpcy50ZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0gPSBpc0luZmluaXRlXHJcblx0XHRcdFx0XHQ/IFsuLi50aGlzLnRlbXBsYXRlT3B0aW9uW3BsYXRmb3JtXSwgLi4ucmVzcC5kYXRhXVxyXG5cdFx0XHRcdFx0OiByZXNwLmRhdGE7XHJcblxyXG5cdFx0XHRcdHRoaXMuaXNIYXZlTmV4dFRlbXBsYXRlT3B0aW9uW3BsYXRmb3JtXSA9IHJlc3AuaGF2ZU5leHQ7XHJcblx0XHRcdFx0dGhpcy5pc0xvYWRpbmdUZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0gPSBmYWxzZTtcclxuXHRcdFx0fSk7XHJcblxyXG5cdFx0dGhpcy5zdWJzY3JpYmVycy5wdXNoKHN1YnMpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldE5leHRBY2NvdW50QmF0Y2gocGxhdGZvcm06IHN0cmluZykge1xyXG5cdFx0aWYgKCF0aGlzLmlzSGF2ZU5leHRBY2NvdW50T3B0aW9uW3BsYXRmb3JtXSkgcmV0dXJuO1xyXG5cclxuXHRcdHRoaXMucGFnZU5vQWNjb3VudE9wdGlvbltwbGF0Zm9ybV0gKz0gMTtcclxuXHRcdHRoaXMuZ2V0QWNjb3VudE9wdGlvblNlcnZpY2UocGxhdGZvcm0sICcnLCB0cnVlKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBhY2NvdW50U2VsZWN0ZWREaXNwbGF5KFxyXG5cdFx0YXR0cmlidXRlMTogV2hhdHNBcHBBY2NvdW50RHRvLFxyXG5cdFx0YXR0cmlidXRlMjogV2hhdHNBcHBBY2NvdW50RHRvXHJcblx0KTogc3RyaW5nIHtcclxuXHRcdHJldHVybiBhdHRyaWJ1dGUxICYmIGF0dHJpYnV0ZTIgJiYgYXR0cmlidXRlMS5pZCA9PSBhdHRyaWJ1dGUyLmlkXHJcblx0XHRcdD8gYCR7YXR0cmlidXRlMS5uYW1lfSAoJHthdHRyaWJ1dGUxLmFjY291bnROb30pYFxyXG5cdFx0XHQ6ICcnO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHRlbXBsYXRlU2VsZWN0ZWREaXNwbGF5KFxyXG5cdFx0YXR0cmlidXRlMTogVGVtcGxhdGVXQU1vZGVsLFxyXG5cdFx0YXR0cmlidXRlMjogVGVtcGxhdGVXQU1vZGVsXHJcblx0KTogc3RyaW5nIHtcclxuXHRcdHJldHVybiBhdHRyaWJ1dGUxICYmIGF0dHJpYnV0ZTIgJiYgYXR0cmlidXRlMS5uYW1lID09IGF0dHJpYnV0ZTIubmFtZVxyXG5cdFx0XHQ/IGAke2F0dHJpYnV0ZTEubmFtZX1gXHJcblx0XHRcdDogJyc7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0TmV4dFRlbXBsYXRlQmF0Y2gocGxhdGZvcm06IHN0cmluZywgYWNjb3VudDogYW55KSB7XHJcblx0XHRpZiAoIXRoaXMuaXNIYXZlTmV4dFRlbXBsYXRlT3B0aW9uW3BsYXRmb3JtXSkgcmV0dXJuO1xyXG5cclxuXHRcdHRoaXMucGFnZU5vVGVtcGxhdGVPcHRpb25bcGxhdGZvcm1dICs9IDE7XHJcblx0XHR0aGlzLmdldFRlbXBsYXRlT3B0aW9uU2VydmljZShwbGF0Zm9ybSwgYWNjb3VudCwgJycsIHRydWUpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHVwZGF0ZVNlYXJjaChcclxuXHRcdHNlYXJjaFZhbHVlOiBzdHJpbmcsXHJcblx0XHRwbGF0Zm9ybTogc3RyaW5nLFxyXG5cdFx0YWNjb3VudDogYW55XHJcblx0KTogdm9pZCB7XHJcblx0XHR0aGlzLnBhZ2VOb1RlbXBsYXRlT3B0aW9uW3BsYXRmb3JtXSA9IDE7XHJcblx0XHR0aGlzLmdldFRlbXBsYXRlT3B0aW9uU2VydmljZShwbGF0Zm9ybSwgYWNjb3VudCwgc2VhcmNoVmFsdWUpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHVwZGF0ZVNlYXJjaEFjY291bnQoc2VhcmNoVmFsdWU6IHN0cmluZywgcGxhdGZvcm06IHN0cmluZyk6IHZvaWQge1xyXG5cdFx0dGhpcy5wYWdlTm9BY2NvdW50T3B0aW9uW3BsYXRmb3JtXSA9IDE7XHJcblx0XHR0aGlzLmdldEFjY291bnRPcHRpb25TZXJ2aWNlKHBsYXRmb3JtLCBzZWFyY2hWYWx1ZSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgYWN0aXZlQ2hhbmdlKF9hY3RpdmU6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHRcdHRoaXMuZm9ybVxyXG5cdFx0XHQuZ2V0KCd0eXBlJylcclxuXHRcdFx0LnNldFZhbHVlKHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5mYWlsb3Zlcj8udHlwZSA/PyAnJyk7XHJcblx0XHR0aGlzLmZvcm0uZ2V0KCd0eXBlJykuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuXHRcdHRoaXMuZm9ybS5nZXQoJ3R5cGUnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcblxyXG5cdFx0aWYgKF9hY3RpdmUpIHtcclxuXHRcdFx0Y29uc3QgYWNjb3VudHMgPVxyXG5cdFx0XHRcdHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5mYWlsb3Zlcj8uYWNjb3VudHM/LmZpbHRlcihcclxuXHRcdFx0XHRcdCh0OiBhbnkpID0+XHJcblx0XHRcdFx0XHRcdHQucGxhdGZvcm0gIT09XHJcblx0XHRcdFx0XHRcdHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5nZW5lcmFsSW5mb3JtYXRpb24/LmZvcm1cclxuXHRcdFx0XHRcdFx0XHQ/Lm1lZGl1bVxyXG5cdFx0XHRcdCk7XHJcblxyXG5cdFx0XHRpZiAoYWNjb3VudHMpIHtcclxuXHRcdFx0XHRhY2NvdW50cy5tYXAoYWNjb3VudCA9PlxyXG5cdFx0XHRcdFx0dGhpcy5hZGRBY2NvdW50KFxyXG5cdFx0XHRcdFx0XHRhY2NvdW50LFxyXG5cdFx0XHRcdFx0XHR0aGlzLmNoYW5uZWxPcHRpb24uZmluZChcclxuXHRcdFx0XHRcdFx0XHQodDogYW55KSA9PiB0LnZhbHVlID09PSBhY2NvdW50LnBsYXRmb3JtXHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdClcclxuXHRcdFx0XHQpO1xyXG5cclxuXHRcdFx0XHR0aGlzLmNoYW5uZWxPcHRpb25cclxuXHRcdFx0XHRcdC5maWx0ZXIoKHQ6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gIWFjY291bnRzLmZpbmQoKGFjY291bnQ6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdHJldHVybiBhY2NvdW50LnBsYXRmb3JtID09PSB0LnZhbHVlO1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHQubWFwKGNoYW5uZWwgPT4gdGhpcy5hZGRBY2NvdW50KHt9LCBjaGFubmVsKSk7XHJcblx0XHRcdFx0cmV0dXJuO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHR0aGlzLmNoYW5uZWxPcHRpb24ubWFwKGNoYW5uZWwgPT4gdGhpcy5hZGRBY2NvdW50KHt9LCBjaGFubmVsKSk7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLmZvcm0uZ2V0KCd0eXBlJykuY2xlYXJWYWxpZGF0b3JzKCk7XHJcblx0XHR0aGlzLmZvcm0uZ2V0KCd0eXBlJykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG5cdFx0KHRoaXMuZm9ybS5nZXQoJ2FjY291bnRzJykgYXMgRm9ybUFycmF5KS5jb250cm9scyA9IFtdO1xyXG5cdFx0KHRoaXMuZm9ybS5nZXQoJ2FjY291bnRzJykgYXMgRm9ybUFycmF5KS5yZXNldCgpO1xyXG5cdFx0dGhpcy5mb3JtLmdldCgnYWNjb3VudHMnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcblxyXG5cdFx0dGhpcy50eXBlQ2hhbmdlKCdTdGF0dXMnKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB0eXBlQ2hhbmdlKF90eXBlOiBzdHJpbmcpOiB2b2lkIHtcclxuXHRcdGlmIChfdHlwZSA9PT0gJ1RpbWUnKSB7XHJcblx0XHRcdHRoaXMuZm9ybVxyXG5cdFx0XHRcdC5nZXQoJ2ludGVydmFsJylcclxuXHRcdFx0XHQuc2V0VmFsdWUodGhpcy5nZXRDYW1wYWlnblN0b3JhZ2U/LmZhaWxvdmVyPy5pbnRlcnZhbCA/PyBudWxsKTtcclxuXHRcdFx0dGhpcy5mb3JtXHJcblx0XHRcdFx0LmdldCgnaW50ZXJ2YWwnKVxyXG5cdFx0XHRcdC5zZXRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBpbnRlcnZhbFRpbWVWYWxpZGF0b3IoKV0pO1xyXG5cdFx0XHR0aGlzLmZvcm0uZ2V0KCdpbnRlcnZhbCcpLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuZm9ybS5nZXQoJ2ludGVydmFsJykuY2xlYXJWYWxpZGF0b3JzKCk7XHJcblx0XHR0aGlzLmZvcm0uZ2V0KCdpbnRlcnZhbCcpLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB2YWxpZGF0aW9uQWNjb3VudChcclxuXHRcdGFjY291bnQ6IFdoYXRzQXBwQWNjb3VudER0byA9IG51bGwsXHJcblx0XHRhY2NvdW50Q29udHJvbDogRm9ybUdyb3VwID0gbnVsbFxyXG5cdCk6IHZvaWQge1xyXG5cdFx0YWNjb3VudENvbnRyb2xcclxuXHRcdFx0Py5nZXQoJ2FjY291bnROYW1lJylcclxuXHRcdFx0LnNldFZhbHVlKFxyXG5cdFx0XHRcdHRoaXMuYWNjb3VudE9wdGlvblthY2NvdW50Q29udHJvbC5nZXQoJ3BsYXRmb3JtJykudmFsdWVdLmZpbmQoXHJcblx0XHRcdFx0XHR0ID0+IHQuaWQgPT09IGFjY291bnQ/LmlkXHJcblx0XHRcdFx0KT8ubmFtZSA/PyAnJ1xyXG5cdFx0XHQpO1xyXG5cclxuXHRcdGNvbnN0IGlzQ2hvb3NlQWNjb3VudCA9IHRoaXMuZ2V0QWNjb3VudC5maWx0ZXIoXHJcblx0XHRcdGNvbnRyb2wgPT4gY29udHJvbC5nZXQoJ2FjY291bnRJZCcpLnZhbHVlXHJcblx0XHQpO1xyXG5cclxuXHRcdHRoaXMuZ2V0QWNjb3VudC5mb3JFYWNoKGNvbnRyb2wgPT4ge1xyXG5cdFx0XHRjb250cm9sLmdldCgnYWNjb3VudElkJykuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuXHRcdFx0Y29udHJvbC5nZXQoJ3N1YmplY3QnKS5zZXRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG5cdFx0XHRjb250cm9sLmdldCgndGVtcGxhdGUnKS5zZXRWYWxpZGF0b3JzKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG5cclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdCFjb250cm9sLmdldCgnYWNjb3VudElkJykudmFsdWUgJiZcclxuXHRcdFx0XHRpc0Nob29zZUFjY291bnQ/Lmxlbmd0aCA+IDBcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0Y29udHJvbC5nZXQoJ2FjY291bnRJZCcpLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cdFx0XHRcdGNvbnRyb2wuZ2V0KCdzdWJqZWN0Jykuc2V0VmFsdWUoJycpO1xyXG5cdFx0XHRcdGNvbnRyb2wuZ2V0KCdzdWJqZWN0JykuY2xlYXJWYWxpZGF0b3JzKCk7XHJcblx0XHRcdFx0Y29udHJvbC5nZXQoJ3RlbXBsYXRlJykuc2V0VmFsdWUoJycpO1xyXG5cdFx0XHRcdGNvbnRyb2wuZ2V0KCd0ZW1wbGF0ZScpLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cdFx0XHR9IGVsc2UgaWYgKFxyXG5cdFx0XHRcdFsnV0EnLCAnU01TJywgJ1ZPSUNFJ10uaW5jbHVkZXMoY29udHJvbC5nZXQoJ3BsYXRmb3JtJykudmFsdWUpXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdGNvbnRyb2wuZ2V0KCdzdWJqZWN0JykuY2xlYXJWYWxpZGF0b3JzKCk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGNvbnRyb2wuZ2V0KCdhY2NvdW50SWQnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcblx0XHRcdGNvbnRyb2wuZ2V0KCdzdWJqZWN0JykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG5cdFx0XHRjb250cm9sLmdldCgndGVtcGxhdGUnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcblx0XHR9KTtcclxuXHJcblx0XHRpZiAoYWNjb3VudENvbnRyb2wpXHJcblx0XHRcdHRoaXMuZ2V0VGVtcGxhdGVPcHRpb25TZXJ2aWNlKFxyXG5cdFx0XHRcdGFjY291bnRDb250cm9sLmdldCgncGxhdGZvcm0nKS52YWx1ZSxcclxuXHRcdFx0XHRhY2NvdW50Q29udHJvbC5nZXQoJ2FjY291bnRJZCcpLnZhbHVlXHJcblx0XHRcdCk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8YW55W10+KSB7XHJcblx0XHRtb3ZlSXRlbUluQXJyYXkoXHJcblx0XHRcdHRoaXMuZ2V0QWNjb3VudCxcclxuXHRcdFx0ZXZlbnQucHJldmlvdXNJbmRleCxcclxuXHRcdFx0ZXZlbnQuY3VycmVudEluZGV4XHJcblx0XHQpO1xyXG5cclxuXHRcdHRoaXMuZmFpbG92ZXIuZW1pdCh0aGlzLmZvcm0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHR0aGlzLnN1YnNjcmliZXJzLmZvckVhY2goZWFjaCA9PiBlYWNoLnVuc3Vic2NyaWJlKCkpO1xyXG5cdH1cclxufVxyXG4iXX0=
|
|
346
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbG92ZXItbWVjaGFuaXNtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhZGxmZS9jYW1wYWlnbi1tYW5hZ2VtZW50LWxpYnJhcnkvIiwic291cmNlcyI6WyJsaWIvY2FtcGFpZ24tbWFuYWdlbWVudC9tb2R1bGVzL25ldy1jYW1wYWlnbi9mYWlsb3Zlci1tZWNoYW5pc20vZmFpbG92ZXItbWVjaGFuaXNtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9FLE9BQU8sRUFDTixnQ0FBZ0MsRUFDaEMsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksR0FDWixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRy9FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXJFO0lBb0JDLG9DQUFvQixpQkFBMkM7UUFBM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtRQWJ4RCw2QkFBd0IsZ0JBQVEsZ0JBQWdCLEVBQUc7UUFDbkQsNEJBQXVCLGdCQUFRLGVBQWUsRUFBRztRQUNqRCxtQkFBYyxnQkFBUSxVQUFVLEVBQUc7UUFDbkMsMkJBQXNCLGdCQUFRLGVBQWUsRUFBRztRQUNoRCw0QkFBdUIsZ0JBQVEsZ0JBQWdCLEVBQUc7UUFDbEQsa0JBQWEsZ0JBQVEsVUFBVSxFQUFHO1FBRWpDLGdCQUFXLEdBQW1CLEVBQUUsQ0FBQztRQUNqQyx5QkFBb0IsZ0JB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QUMsQ0FBQztJQUN0RCxDQUFDOztnQkFsWnNDLHdCQUF3Qjs7SUFsQi9EO1FBREMsTUFBTSxFQUFFO2dFQUNnQztJQWdCaEM7UUFBUixLQUFLLEVBQUU7c0VBQWdDO0lBbEI1QiwwQkFBMEI7UUFMdEMsU0FBUyxDQUFDO1lBQ1YsUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyx5L1ZBQWtEOztTQUVsRCxDQUFDO09BQ1csMEJBQTBCLENBdWF0QztJQUFELGlDQUFDO0NBQUEsQUF2YUQsSUF1YUM7U0F2YVksMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQge1xyXG5cdENvbXBvbmVudCxcclxuXHRFdmVudEVtaXR0ZXIsXHJcblx0SW5wdXQsXHJcblx0T25EZXN0cm95LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcblx0RmFpbG92ZXJNZWNoYW5pc21WYWxpZGF0aW9uQ29uc3QsXHJcblx0UGxhdGZvcm1PcHRpb25Db25zdCxcclxuXHRpc0hhdmVOZXh0T3B0aW9uLFxyXG5cdGlzTG9hZGluZ09wdGlvbixcclxuXHRvcHRpb25MaXN0LFxyXG5cdHBhZ2VOb09wdGlvbixcclxufSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2NvbnN0JztcclxuaW1wb3J0IHsgaW50ZXJ2YWxUaW1lVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9jb25zdC9mb3JtLXZhbGlkYXRvcnMnO1xyXG5pbXBvcnQgeyBQYXJhbWV0ZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL21vZGVscy91dGlsL2FwaS1hZGFwdGVyLXNlcnZpY2UtbW9kZWxzJztcclxuaW1wb3J0IHsgQXBwUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL21vZGVscy91dGlsL2FwaS1kdG8vcmVzcG9uc2UtbW9kZWxzJztcclxuaW1wb3J0IHsgQXBpQWRhcHRlclNlcnZpY2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFRlbXBsYXRlV0FNb2RlbCwgV2hhdHNBcHBBY2NvdW50RHRvIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnbGliLWZhaWxvdmVyLW1lY2hhbmlzbScsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2ZhaWxvdmVyLW1lY2hhbmlzbS5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vZmFpbG92ZXItbWVjaGFuaXNtLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGYWlsb3Zlck1lY2hhbmlzbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHRAT3V0cHV0KClcclxuXHRwdWJsaWMgZmFpbG92ZXI6IEV2ZW50RW1pdHRlcjxGb3JtR3JvdXA+O1xyXG5cclxuXHRwdWJsaWMgZm9ybTogRm9ybUdyb3VwO1xyXG5cdHB1YmxpYyBjaGFubmVsT3B0aW9uOiBhbnk7XHJcblx0cHVibGljIHZhbGlkYXRpb25NZXNzYWdlczogYW55O1xyXG5cdHB1YmxpYyBpc0hhdmVOZXh0VGVtcGxhdGVPcHRpb24gPSB7IC4uLmlzSGF2ZU5leHRPcHRpb24gfTtcclxuXHRwdWJsaWMgaXNMb2FkaW5nVGVtcGxhdGVPcHRpb24gPSB7IC4uLmlzTG9hZGluZ09wdGlvbiB9O1xyXG5cdHB1YmxpYyB0ZW1wbGF0ZU9wdGlvbiA9IHsgLi4ub3B0aW9uTGlzdCB9O1xyXG5cdHB1YmxpYyBpc0xvYWRpbmdBY2NvdW50T3B0aW9uID0geyAuLi5pc0xvYWRpbmdPcHRpb24gfTtcclxuXHRwdWJsaWMgaXNIYXZlTmV4dEFjY291bnRPcHRpb24gPSB7IC4uLmlzSGF2ZU5leHRPcHRpb24gfTtcclxuXHRwdWJsaWMgYWNjb3VudE9wdGlvbiA9IHsgLi4ub3B0aW9uTGlzdCB9O1xyXG5cclxuXHRwcml2YXRlIHN1YnNjcmliZXJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cdHByaXZhdGUgcGFnZU5vVGVtcGxhdGVPcHRpb24gPSB7IC4uLnBhZ2VOb09wdGlvbiB9O1xyXG5cdHByaXZhdGUgcGFnZU5vQWNjb3VudE9wdGlvbiA9IHsgLi4ucGFnZU5vT3B0aW9uIH07XHJcblxyXG5cdEBJbnB1dCgpIHB1YmxpYyBpc1JlYWRPbmx5TW9kZTogYm9vbGVhbjtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSBhcGlBZGFwdGVyU2VydmljZTogQXBpQWRhcHRlclNlcnZpY2VTZXJ2aWNlKSB7XHJcblx0XHR0aGlzLmZhaWxvdmVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLnZhbGlkYXRpb25NZXNzYWdlcyA9IEZhaWxvdmVyTWVjaGFuaXNtVmFsaWRhdGlvbkNvbnN0O1xyXG5cdFx0dGhpcy5jaGFubmVsT3B0aW9uID0gW1xyXG5cdFx0XHQuLi5QbGF0Zm9ybU9wdGlvbkNvbnN0LFxyXG5cdFx0XHQvKiB7XHJcbiAgICAgICAgaWNvbjogJycsXHJcbiAgICAgICAgaW5wdXRTdmdJY29uOiAnaWNvbi12b2ljZS1ncmF5JyxcclxuICAgICAgICBpbWFnZTogJ2xpbmUucG5nJyxcclxuICAgICAgICBsYWJlbDogJ1ZvaWNlJyxcclxuICAgICAgICB2YWx1ZTogJ1ZPSUNFJyxcclxuICAgICAgfSwgKi9cclxuXHRcdF0uZmlsdGVyKFxyXG5cdFx0XHR0ID0+XHJcblx0XHRcdFx0IVtcclxuXHRcdFx0XHRcdCdMSU5FJyxcclxuXHRcdFx0XHRcdHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5nZW5lcmFsSW5mb3JtYXRpb24/LmZvcm0/Lm1lZGl1bSxcclxuXHRcdFx0XHRdLmluY2x1ZGVzKHQudmFsdWUpXHJcblx0XHQpO1xyXG5cclxuXHRcdHRoaXMuaW5pdEZvcm0oKTtcclxuXHRcdHRoaXMuaW5pdERpc2FibGUoKTtcclxuXHRcdHRoaXMuaW5pdEVkaXQoKTtcclxuXHRcdHRoaXMuZmFpbG92ZXIuZW1pdCh0aGlzLmZvcm0pO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldENhbXBhaWduU3RvcmFnZSgpOiBhbnkge1xyXG5cdFx0cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd0ZWxpbi5jYW1wYWlnbicpXHJcblx0XHRcdD8gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndGVsaW4uY2FtcGFpZ24nKSlcclxuXHRcdFx0OiB7fTtcclxuXHR9XHJcblxyXG5cdGdldCBpbnRlcnZhbCgpIHtcclxuXHRcdHJldHVybiB0aGlzLmZvcm0uZ2V0KCdpbnRlcnZhbCcpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0Rm9ybSgpOiB2b2lkIHtcclxuXHRcdHRoaXMuZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xyXG5cdFx0XHRhY3RpdmU6IG5ldyBGb3JtQ29udHJvbChmYWxzZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcblx0XHRcdHR5cGU6IG5ldyBGb3JtQ29udHJvbCgnJyksXHJcblx0XHRcdGludGVydmFsOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcblx0XHRcdGFjY291bnRzOiBuZXcgRm9ybUFycmF5KFtdKSxcclxuXHRcdH0pO1xyXG5cclxuXHRcdHRoaXMuZm9ybS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuaW50ZXJ2YWwudG91Y2hlZCAmJiB0aGlzLmludGVydmFsLnZhbHVlID09PSAwKSB7XHJcblx0XHRcdFx0dGhpcy5mb3JtLmdldCgnaW50ZXJ2YWwnKS5zZXRFcnJvcnMoeyBpbnRlcnZhbFRpbWU6IHRydWUgfSk7XHJcblx0XHRcdH1cclxuXHRcdFx0dGhpcy5mYWlsb3Zlci5lbWl0KHRoaXMuZm9ybSk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdERpc2FibGUoKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMuaXNSZWFkT25seU1vZGUpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuZm9ybS5kaXNhYmxlKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRFZGl0KCk6IHZvaWQge1xyXG5cdFx0aWYgKFxyXG5cdFx0XHRPYmplY3QuZW50cmllcyh0aGlzLmdldENhbXBhaWduU3RvcmFnZSkubGVuZ3RoID09PSAwIHx8XHJcblx0XHRcdCF0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZmFpbG92ZXJcclxuXHRcdClcclxuXHRcdFx0cmV0dXJuO1xyXG5cclxuXHRcdHRoaXMuZm9ybVxyXG5cdFx0XHQuZ2V0KCdhY3RpdmUnKVxyXG5cdFx0XHQuc2V0VmFsdWUodGhpcy5nZXRDYW1wYWlnblN0b3JhZ2U/LmZhaWxvdmVyPy5hY3RpdmUpO1xyXG5cdFx0dGhpcy5mb3JtXHJcblx0XHRcdC5nZXQoJ3R5cGUnKVxyXG5cdFx0XHQuc2V0VmFsdWUodGhpcy5nZXRDYW1wYWlnblN0b3JhZ2U/LmZhaWxvdmVyPy50eXBlID8/ICcnKTtcclxuXHRcdHRoaXMuZm9ybVxyXG5cdFx0XHQuZ2V0KCdpbnRlcnZhbCcpXHJcblx0XHRcdC5zZXRWYWx1ZSh0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZmFpbG92ZXI/LmludGVydmFsID8/IG51bGwpO1xyXG5cclxuXHRcdHRoaXMuYWN0aXZlQ2hhbmdlKHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5mYWlsb3Zlcj8uYWN0aXZlKTtcclxuXHRcdHRoaXMudmFsaWRhdGlvbkFjY291bnQoKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdEFjY291bnQoZGF0YTogYW55ID0gbnVsbCwgX2NoYW5uZWw6IGFueSA9IG51bGwpOiBGb3JtR3JvdXAge1xyXG5cdFx0Y29uc3QgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xyXG5cdFx0XHRjaGFubmVsOiBuZXcgRm9ybUNvbnRyb2woX2NoYW5uZWwpLFxyXG5cdFx0XHRwbGF0Zm9ybTogbmV3IEZvcm1Db250cm9sKF9jaGFubmVsPy52YWx1ZSksXHJcblx0XHRcdGFjY291bnRJZDogbmV3IEZvcm1Db250cm9sKFxyXG5cdFx0XHRcdHtcclxuXHRcdFx0XHRcdHZhbHVlOlxyXG5cdFx0XHRcdFx0XHRkYXRhPy5hY2NvdW50SWQgJiYgdHlwZW9mIGRhdGE/LmFjY291bnRJZCA9PT0gJ3N0cmluZydcclxuXHRcdFx0XHRcdFx0XHQ/IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0aWQ6IGRhdGE/LmFjY291bnRJZCxcclxuXHRcdFx0XHRcdFx0XHRcdFx0bmFtZTogZGF0YT8uYWNjb3VudE5hbWUsXHJcblx0XHRcdFx0XHRcdFx0ICB9XHJcblx0XHRcdFx0XHRcdFx0OiBkYXRhPy5hY2NvdW50SWQgPz8gJycsXHJcblx0XHRcdFx0XHRkaXNhYmxlZDogdGhpcy5pc1JlYWRPbmx5TW9kZSxcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdFZhbGlkYXRvcnMucmVxdWlyZWRcclxuXHRcdFx0KSxcclxuXHRcdFx0YWNjb3VudE5hbWU6IG5ldyBGb3JtQ29udHJvbChkYXRhPy5hY2NvdW50TmFtZSA/PyAnJyksXHJcblx0XHRcdHN1YmplY3Q6IG5ldyBGb3JtQ29udHJvbCh7XHJcblx0XHRcdFx0dmFsdWU6IGRhdGE/LnN1YmplY3QgPz8gJycsXHJcblx0XHRcdFx0ZGlzYWJsZWQ6IHRoaXMuaXNSZWFkT25seU1vZGUsXHJcblx0XHRcdH0pLFxyXG5cdFx0XHR0ZW1wbGF0ZTogbmV3IEZvcm1Db250cm9sKHtcclxuXHRcdFx0XHR2YWx1ZTogZGF0YT8udGVtcGxhdGUgPz8gJycsXHJcblx0XHRcdFx0ZGlzYWJsZWQ6IHRoaXMuaXNSZWFkT25seU1vZGUsXHJcblx0XHRcdH0pLFxyXG5cdFx0XHRwYXJhbUJvZHk6IG5ldyBGb3JtQXJyYXkoW10pLFxyXG5cdFx0fSk7XHJcblxyXG5cdFx0cmV0dXJuIGZvcm07XHJcblx0fVxyXG5cclxuXHRnZXQgZ2V0QWNjb3VudCgpOiBGb3JtR3JvdXBbXSB7XHJcblx0XHRyZXR1cm4gKHRoaXMuZm9ybS5nZXQoJ2FjY291bnRzJykgYXMgRm9ybUFycmF5KS5jb250cm9scyBhcyBGb3JtR3JvdXBbXTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBhZGRBY2NvdW50KGRhdGE6IGFueSA9IG51bGwsIGNoYW5uZWw6IGFueSA9IG51bGwpOiB2b2lkIHtcclxuXHRcdGNvbnN0IGZvcm0gPSB0aGlzLmluaXRBY2NvdW50KGRhdGEsIGNoYW5uZWwpO1xyXG5cdFx0KHRoaXMuZm9ybS5nZXQoJ2FjY291bnRzJykgYXMgRm9ybUFycmF5KS5wdXNoKGZvcm0pO1xyXG5cclxuXHRcdHRoaXMuZ2V0QWNjb3VudE9wdGlvblNlcnZpY2UoY2hhbm5lbD8udmFsdWUsIGRhdGE/LmFjY291bnROYW1lID8/ICcnKTtcclxuXHRcdHRoaXMuZ2V0VGVtcGxhdGVPcHRpb25TZXJ2aWNlKGNoYW5uZWw/LnZhbHVlLCB7fSwgZGF0YT8udGVtcGxhdGU/Lm5hbWUpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0UGFyYW1ldGVyKCk6IEZvcm1Hcm91cCB7XHJcblx0XHRjb25zdCBmb3JtID0gbmV3IEZvcm1Hcm91cCh7XHJcblx0XHRcdG5hbWU6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcblx0XHR9KTtcclxuXHJcblx0XHRyZXR1cm4gZm9ybTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBnZXRQYXJhbUJvZHkoYWNjb3VudDogRm9ybUdyb3VwKTogRm9ybUdyb3VwW10ge1xyXG5cdFx0cmV0dXJuIChhY2NvdW50LmdldCgncGFyYW1Cb2R5JykgYXMgRm9ybUFycmF5KS5jb250cm9scyBhcyBGb3JtR3JvdXBbXTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBhZGRQYXJhbUJvZHkoYWNjb3VudDogRm9ybUdyb3VwKTogdm9pZCB7XHJcblx0XHRjb25zdCBmb3JtID0gdGhpcy5pbml0UGFyYW1ldGVyKCk7XHJcblx0XHQoYWNjb3VudC5nZXQoJ3BhcmFtQm9keScpIGFzIEZvcm1BcnJheSkucHVzaChmb3JtKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBkZWxldGVQYXJhbUJvZHkoYWNjb3VudDogRm9ybUdyb3VwLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcblx0XHQoYWNjb3VudC5nZXQoJ3BhcmFtQm9keScpIGFzIEZvcm1BcnJheSkucmVtb3ZlQXQoaW5kZXgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0UGFyYW0oX25hbWU6IHN0cmluZywgX3ZhbHVlOiBhbnksIF90eXBlOiBzdHJpbmcpOiBQYXJhbWV0ZXIge1xyXG5cdFx0cmV0dXJuIHtcclxuXHRcdFx0bmFtZTogX25hbWUsXHJcblx0XHRcdHZhbHVlOiBfdmFsdWUsXHJcblx0XHRcdGluOiAncXVlcnknLFxyXG5cdFx0XHR0eXBlOiBfdHlwZSxcclxuXHRcdH07XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGdldEFjY291bnRPcHRpb25TZXJ2aWNlKFxyXG5cdFx0cGxhdGZvcm06IHN0cmluZyxcclxuXHRcdGZpbHRlcjogc3RyaW5nID0gJycsXHJcblx0XHRpc0luZmluaXRlOiBib29sZWFuID0gZmFsc2VcclxuXHQpOiB2b2lkIHtcclxuXHRcdHRoaXMuaXNMb2FkaW5nQWNjb3VudE9wdGlvbltwbGF0Zm9ybV0gPSB0cnVlO1xyXG5cclxuXHRcdGNvbnN0IHBhcmFtZXRlckxpc3Q6IEFycmF5PFBhcmFtZXRlcj4gPSBbXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKFxyXG5cdFx0XHRcdCdwYWdlTm8nLFxyXG5cdFx0XHRcdHRoaXMucGFnZU5vQWNjb3VudE9wdGlvbltwbGF0Zm9ybV0sXHJcblx0XHRcdFx0J251bWJlcidcclxuXHRcdFx0KSxcclxuXHRcdFx0dGhpcy5pbml0UGFyYW0oJ3Jvd1BlclBhZ2UnLCAyMCwgJ251bWJlcicpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgnc3RhdHVzJywgJ0FQUFJPVkVEJywgJ3N0cmluZycpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgncGxhdGZvcm0nLCBwbGF0Zm9ybSwgJ3N0cmluZycpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgnZmlsdGVyJywgZmlsdGVyLCAnc3RyaW5nJyksXHJcblx0XHRdO1xyXG5cclxuXHRcdGNvbnN0IHN1YnMgPSB0aGlzLmFwaUFkYXB0ZXJTZXJ2aWNlXHJcblx0XHRcdC5leGVjdXRlQXBpUmVxdWVzdChwYXJhbWV0ZXJMaXN0LCAnL2FkbWluL2FjY291bnQnLCAnR0VUJylcclxuXHRcdFx0LnN1YnNjcmliZSgocmVzcDogQXBwUmVzcG9uc2U8V2hhdHNBcHBBY2NvdW50RHRvW10+KSA9PiB7XHJcblx0XHRcdFx0aWYgKCFyZXNwLmRhdGEpIHJldHVybjtcclxuXHJcblx0XHRcdFx0dGhpcy5hY2NvdW50T3B0aW9uW3BsYXRmb3JtXSA9IGlzSW5maW5pdGVcclxuXHRcdFx0XHRcdD8gWy4uLnRoaXMuYWNjb3VudE9wdGlvbltwbGF0Zm9ybV0sIC4uLnJlc3AuZGF0YV1cclxuXHRcdFx0XHRcdDogcmVzcC5kYXRhO1xyXG5cclxuXHRcdFx0XHR0aGlzLmlzSGF2ZU5leHRBY2NvdW50T3B0aW9uW3BsYXRmb3JtXSA9IHJlc3AuaGF2ZU5leHQ7XHJcblx0XHRcdFx0dGhpcy5pc0xvYWRpbmdBY2NvdW50T3B0aW9uW3BsYXRmb3JtXSA9IGZhbHNlO1xyXG5cdFx0XHR9KTtcclxuXHJcblx0XHR0aGlzLnN1YnNjcmliZXJzLnB1c2goc3Vicyk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgZ2V0VGVtcGxhdGVPcHRpb25TZXJ2aWNlKFxyXG5cdFx0cGxhdGZvcm06IHN0cmluZyxcclxuXHRcdGFjY291bnQ6IGFueSxcclxuXHRcdGZpbHRlcjogc3RyaW5nID0gJycsXHJcblx0XHRpc0luZmluaXRlOiBib29sZWFuID0gZmFsc2VcclxuXHQpOiB2b2lkIHtcclxuXHRcdHRoaXMuaXNMb2FkaW5nVGVtcGxhdGVPcHRpb25bcGxhdGZvcm1dID0gdHJ1ZTtcclxuXHJcblx0XHRjb25zdCBwYXJhbWV0ZXJMaXN0OiBBcnJheTxQYXJhbWV0ZXI+ID0gW1xyXG5cdFx0XHR0aGlzLmluaXRQYXJhbShcclxuXHRcdFx0XHQncGFnZU5vJyxcclxuXHRcdFx0XHR0aGlzLnBhZ2VOb1RlbXBsYXRlT3B0aW9uW3BsYXRmb3JtXSxcclxuXHRcdFx0XHQnbnVtYmVyJ1xyXG5cdFx0XHQpLFxyXG5cdFx0XHR0aGlzLmluaXRQYXJhbSgncm93UGVyUGFnZScsIDIwLCAnbnVtYmVyJyksXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKCdwbGF0Zm9ybScsIHBsYXRmb3JtLCAnc3RyaW5nJyksXHJcblx0XHRcdHRoaXMuaW5pdFBhcmFtKCdmaWx0ZXInLCBmaWx0ZXIsICdzdHJpbmcnKSxcclxuXHRcdFx0dGhpcy5pbml0UGFyYW0oJ2NsaWVudElkJywgYWNjb3VudD8uY2xpZW50SWQgPz8gJycsICdzdHJpbmcnKSxcclxuXHRcdFx0dGhpcy5pbml0UGFyYW0oJ3dhYmFJZCcsIGFjY291bnQ/LndhYmFJZCA/PyAnJywgJ3N0cmluZycpLFxyXG5cdFx0XTtcclxuXHJcblx0XHRpZiAocGxhdGZvcm0gPT09ICdXQScpXHJcblx0XHRcdHBhcmFtZXRlckxpc3QucHVzaCh0aGlzLmluaXRQYXJhbSgnc3RhdHVzJywgJ0FQUFJPVkVEJywgJ3N0cmluZycpKTtcclxuXHJcblx0XHRjb25zdCBzdWJzID0gdGhpcy5hcGlBZGFwdGVyU2VydmljZVxyXG5cdFx0XHQuZXhlY3V0ZUFwaVJlcXVlc3QocGFyYW1ldGVyTGlzdCwgJy9tZXNzYWdlL3RlbXBsYXRlJywgJ0dFVCcpXHJcblx0XHRcdC5zdWJzY3JpYmUoKHJlc3A6IEFwcFJlc3BvbnNlPFRlbXBsYXRlV0FNb2RlbFtdPikgPT4ge1xyXG5cdFx0XHRcdHRoaXMudGVtcGxhdGVPcHRpb25bcGxhdGZvcm1dID0gaXNJbmZpbml0ZVxyXG5cdFx0XHRcdFx0PyBbLi4udGhpcy50ZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0sIC4uLnJlc3AuZGF0YV1cclxuXHRcdFx0XHRcdDogcmVzcC5kYXRhO1xyXG5cclxuXHRcdFx0XHR0aGlzLmlzSGF2ZU5leHRUZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0gPSByZXNwLmhhdmVOZXh0O1xyXG5cdFx0XHRcdHRoaXMuaXNMb2FkaW5nVGVtcGxhdGVPcHRpb25bcGxhdGZvcm1dID0gZmFsc2U7XHJcblx0XHRcdH0pO1xyXG5cclxuXHRcdHRoaXMuc3Vic2NyaWJlcnMucHVzaChzdWJzKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBnZXROZXh0QWNjb3VudEJhdGNoKHBsYXRmb3JtOiBzdHJpbmcpIHtcclxuXHRcdGlmICghdGhpcy5pc0hhdmVOZXh0QWNjb3VudE9wdGlvbltwbGF0Zm9ybV0pIHJldHVybjtcclxuXHJcblx0XHR0aGlzLnBhZ2VOb0FjY291bnRPcHRpb25bcGxhdGZvcm1dICs9IDE7XHJcblx0XHR0aGlzLmdldEFjY291bnRPcHRpb25TZXJ2aWNlKHBsYXRmb3JtLCAnJywgdHJ1ZSk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgYWNjb3VudFNlbGVjdGVkRGlzcGxheShcclxuXHRcdGF0dHJpYnV0ZTE6IFdoYXRzQXBwQWNjb3VudER0byxcclxuXHRcdGF0dHJpYnV0ZTI6IFdoYXRzQXBwQWNjb3VudER0b1xyXG5cdCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gYXR0cmlidXRlMSAmJiBhdHRyaWJ1dGUyICYmIGF0dHJpYnV0ZTEuaWQgPT0gYXR0cmlidXRlMi5pZFxyXG5cdFx0XHQ/IGAke2F0dHJpYnV0ZTEubmFtZX0gKCR7YXR0cmlidXRlMS5hY2NvdW50Tm99KWBcclxuXHRcdFx0OiAnJztcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB0ZW1wbGF0ZVNlbGVjdGVkRGlzcGxheShcclxuXHRcdGF0dHJpYnV0ZTE6IFRlbXBsYXRlV0FNb2RlbCxcclxuXHRcdGF0dHJpYnV0ZTI6IFRlbXBsYXRlV0FNb2RlbFxyXG5cdCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gYXR0cmlidXRlMSAmJiBhdHRyaWJ1dGUyICYmIGF0dHJpYnV0ZTEubmFtZSA9PSBhdHRyaWJ1dGUyLm5hbWVcclxuXHRcdFx0PyBgJHthdHRyaWJ1dGUxLm5hbWV9YFxyXG5cdFx0XHQ6ICcnO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGdldE5leHRUZW1wbGF0ZUJhdGNoKHBsYXRmb3JtOiBzdHJpbmcsIGFjY291bnQ6IGFueSkge1xyXG5cdFx0aWYgKCF0aGlzLmlzSGF2ZU5leHRUZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0pIHJldHVybjtcclxuXHJcblx0XHR0aGlzLnBhZ2VOb1RlbXBsYXRlT3B0aW9uW3BsYXRmb3JtXSArPSAxO1xyXG5cdFx0dGhpcy5nZXRUZW1wbGF0ZU9wdGlvblNlcnZpY2UocGxhdGZvcm0sIGFjY291bnQsICcnLCB0cnVlKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB1cGRhdGVTZWFyY2goXHJcblx0XHRzZWFyY2hWYWx1ZTogc3RyaW5nLFxyXG5cdFx0cGxhdGZvcm06IHN0cmluZyxcclxuXHRcdGFjY291bnQ6IGFueVxyXG5cdCk6IHZvaWQge1xyXG5cdFx0dGhpcy5wYWdlTm9UZW1wbGF0ZU9wdGlvbltwbGF0Zm9ybV0gPSAxO1xyXG5cdFx0dGhpcy5nZXRUZW1wbGF0ZU9wdGlvblNlcnZpY2UocGxhdGZvcm0sIGFjY291bnQsIHNlYXJjaFZhbHVlKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyB1cGRhdGVTZWFyY2hBY2NvdW50KHNlYXJjaFZhbHVlOiBzdHJpbmcsIHBsYXRmb3JtOiBzdHJpbmcpOiB2b2lkIHtcclxuXHRcdHRoaXMucGFnZU5vQWNjb3VudE9wdGlvbltwbGF0Zm9ybV0gPSAxO1xyXG5cdFx0dGhpcy5nZXRBY2NvdW50T3B0aW9uU2VydmljZShwbGF0Zm9ybSwgc2VhcmNoVmFsdWUpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGFjdGl2ZUNoYW5nZShfYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XHJcblx0XHR0aGlzLmZvcm1cclxuXHRcdFx0LmdldCgndHlwZScpXHJcblx0XHRcdC5zZXRWYWx1ZSh0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZmFpbG92ZXI/LnR5cGUgPz8gJycpO1xyXG5cdFx0dGhpcy5mb3JtLmdldCgndHlwZScpLnNldFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcblx0XHR0aGlzLmZvcm0uZ2V0KCd0eXBlJykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG5cclxuXHRcdGlmIChfYWN0aXZlKSB7XHJcblx0XHRcdGNvbnN0IGFjY291bnRzID1cclxuXHRcdFx0XHR0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZmFpbG92ZXI/LmFjY291bnRzPy5maWx0ZXIoXHJcblx0XHRcdFx0XHQodDogYW55KSA9PlxyXG5cdFx0XHRcdFx0XHR0LnBsYXRmb3JtICE9PVxyXG5cdFx0XHRcdFx0XHR0aGlzLmdldENhbXBhaWduU3RvcmFnZT8uZ2VuZXJhbEluZm9ybWF0aW9uPy5mb3JtXHJcblx0XHRcdFx0XHRcdFx0Py5tZWRpdW1cclxuXHRcdFx0XHQpO1xyXG5cclxuXHRcdFx0aWYgKGFjY291bnRzKSB7XHJcblx0XHRcdFx0YWNjb3VudHMubWFwKGFjY291bnQgPT5cclxuXHRcdFx0XHRcdHRoaXMuYWRkQWNjb3VudChcclxuXHRcdFx0XHRcdFx0YWNjb3VudCxcclxuXHRcdFx0XHRcdFx0dGhpcy5jaGFubmVsT3B0aW9uLmZpbmQoXHJcblx0XHRcdFx0XHRcdFx0KHQ6IGFueSkgPT4gdC52YWx1ZSA9PT0gYWNjb3VudC5wbGF0Zm9ybVxyXG5cdFx0XHRcdFx0XHQpXHJcblx0XHRcdFx0XHQpXHJcblx0XHRcdFx0KTtcclxuXHJcblx0XHRcdFx0dGhpcy5jaGFubmVsT3B0aW9uXHJcblx0XHRcdFx0XHQuZmlsdGVyKCh0OiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuICFhY2NvdW50cy5maW5kKChhY2NvdW50OiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRyZXR1cm4gYWNjb3VudC5wbGF0Zm9ybSA9PT0gdC52YWx1ZTtcclxuXHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0Lm1hcChjaGFubmVsID0+IHRoaXMuYWRkQWNjb3VudCh7fSwgY2hhbm5lbCkpO1xyXG5cdFx0XHRcdHJldHVybjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0dGhpcy5jaGFubmVsT3B0aW9uLm1hcChjaGFubmVsID0+IHRoaXMuYWRkQWNjb3VudCh7fSwgY2hhbm5lbCkpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0dGhpcy5mb3JtLmdldCgndHlwZScpLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cdFx0dGhpcy5mb3JtLmdldCgndHlwZScpLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuXHRcdCh0aGlzLmZvcm0uZ2V0KCdhY2NvdW50cycpIGFzIEZvcm1BcnJheSkuY29udHJvbHMgPSBbXTtcclxuXHRcdCh0aGlzLmZvcm0uZ2V0KCdhY2NvdW50cycpIGFzIEZvcm1BcnJheSkucmVzZXQoKTtcclxuXHRcdHRoaXMuZm9ybS5nZXQoJ2FjY291bnRzJykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG5cclxuXHRcdHRoaXMudHlwZUNoYW5nZSgnU3RhdHVzJyk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgdHlwZUNoYW5nZShfdHlwZTogc3RyaW5nKTogdm9pZCB7XHJcblx0XHRpZiAoX3R5cGUgPT09ICdUaW1lJykge1xyXG5cdFx0XHR0aGlzLmZvcm1cclxuXHRcdFx0XHQuZ2V0KCdpbnRlcnZhbCcpXHJcblx0XHRcdFx0LnNldFZhbHVlKHRoaXMuZ2V0Q2FtcGFpZ25TdG9yYWdlPy5mYWlsb3Zlcj8uaW50ZXJ2YWwgPz8gbnVsbCk7XHJcblx0XHRcdHRoaXMuZm9ybVxyXG5cdFx0XHRcdC5nZXQoJ2ludGVydmFsJylcclxuXHRcdFx0XHQuc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZCwgaW50ZXJ2YWxUaW1lVmFsaWRhdG9yKCldKTtcclxuXHRcdFx0dGhpcy5mb3JtLmdldCgnaW50ZXJ2YWwnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLmZvcm0uZ2V0KCdpbnRlcnZhbCcpLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cdFx0dGhpcy5mb3JtLmdldCgnaW50ZXJ2YWwnKS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgdmFsaWRhdGlvbkFjY291bnQoXHJcblx0XHRhY2NvdW50OiBXaGF0c0FwcEFjY291bnREdG8gPSBudWxsLFxyXG5cdFx0YWNjb3VudENvbnRyb2w6IEZvcm1Hcm91cCA9IG51bGxcclxuXHQpOiB2b2lkIHtcclxuXHRcdGFjY291bnRDb250cm9sXHJcblx0XHRcdD8uZ2V0KCdhY2NvdW50TmFtZScpXHJcblx0XHRcdC5zZXRWYWx1ZShcclxuXHRcdFx0XHR0aGlzLmFjY291bnRPcHRpb25bYWNjb3VudENvbnRyb2wuZ2V0KCdwbGF0Zm9ybScpLnZhbHVlXS5maW5kKFxyXG5cdFx0XHRcdFx0dCA9PiB0LmlkID09PSBhY2NvdW50Py5pZFxyXG5cdFx0XHRcdCk/Lm5hbWUgPz8gJydcclxuXHRcdFx0KTtcclxuXHJcblx0XHRjb25zdCBpc0Nob29zZUFjY291bnQgPSB0aGlzLmdldEFjY291bnQuZmlsdGVyKFxyXG5cdFx0XHRjb250cm9sID0+IGNvbnRyb2wuZ2V0KCdhY2NvdW50SWQnKS52YWx1ZVxyXG5cdFx0KTtcclxuXHJcblx0XHR0aGlzLmdldEFjY291bnQuZm9yRWFjaChjb250cm9sID0+IHtcclxuXHRcdFx0Y29udHJvbC5nZXQoJ2FjY291bnRJZCcpLnNldFZhbGlkYXRvcnMoVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcblx0XHRcdGNvbnRyb2wuZ2V0KCdzdWJqZWN0Jykuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuXHRcdFx0Y29udHJvbC5nZXQoJ3RlbXBsYXRlJykuc2V0VmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuXHJcblx0XHRcdGlmIChcclxuXHRcdFx0XHQhY29udHJvbC5nZXQoJ2FjY291bnRJZCcpLnZhbHVlICYmXHJcblx0XHRcdFx0aXNDaG9vc2VBY2NvdW50Py5sZW5ndGggPiAwXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdGNvbnRyb2wuZ2V0KCdhY2NvdW50SWQnKS5jbGVhclZhbGlkYXRvcnMoKTtcclxuXHRcdFx0XHRjb250cm9sLmdldCgnc3ViamVjdCcpLnNldFZhbHVlKCcnKTtcclxuXHRcdFx0XHRjb250cm9sLmdldCgnc3ViamVjdCcpLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cdFx0XHRcdGNvbnRyb2wuZ2V0KCd0ZW1wbGF0ZScpLnNldFZhbHVlKCcnKTtcclxuXHRcdFx0XHRjb250cm9sLmdldCgndGVtcGxhdGUnKS5jbGVhclZhbGlkYXRvcnMoKTtcclxuXHRcdFx0fSBlbHNlIGlmIChcclxuXHRcdFx0XHRbJ1dBJywgJ1NNUycsICdWT0lDRSddLmluY2x1ZGVzKGNvbnRyb2wuZ2V0KCdwbGF0Zm9ybScpLnZhbHVlKVxyXG5cdFx0XHQpIHtcclxuXHRcdFx0XHRjb250cm9sLmdldCgnc3ViamVjdCcpLmNsZWFyVmFsaWRhdG9ycygpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRjb250cm9sLmdldCgnYWNjb3VudElkJykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG5cdFx0XHRjb250cm9sLmdldCgnc3ViamVjdCcpLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuXHRcdFx0Y29udHJvbC5nZXQoJ3RlbXBsYXRlJykudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG5cdFx0fSk7XHJcblxyXG5cdFx0aWYgKGFjY291bnRDb250cm9sKVxyXG5cdFx0XHR0aGlzLmdldFRlbXBsYXRlT3B0aW9uU2VydmljZShcclxuXHRcdFx0XHRhY2NvdW50Q29udHJvbC5nZXQoJ3BsYXRmb3JtJykudmFsdWUsXHJcblx0XHRcdFx0YWNjb3VudENvbnRyb2wuZ2V0KCdhY2NvdW50SWQnKS52YWx1ZVxyXG5cdFx0XHQpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPGFueVtdPikge1xyXG5cdFx0bW92ZUl0ZW1JbkFycmF5KFxyXG5cdFx0XHR0aGlzLmdldEFjY291bnQsXHJcblx0XHRcdGV2ZW50LnByZXZpb3VzSW5kZXgsXHJcblx0XHRcdGV2ZW50LmN1cnJlbnRJbmRleFxyXG5cdFx0KTtcclxuXHJcblx0XHR0aGlzLmZhaWxvdmVyLmVtaXQodGhpcy5mb3JtKTtcclxuXHR9XHJcblxyXG5cdG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zdWJzY3JpYmVycy5mb3JFYWNoKGVhY2ggPT4gZWFjaC51bnN1YnNjcmliZSgpKTtcclxuXHR9XHJcbn1cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './failover-mechanism.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWRsZmUvY2FtcGFpZ24tbWFuYWdlbWVudC1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL2NhbXBhaWduLW1hbmFnZW1lbnQvbW9kdWxlcy9uZXctY2FtcGFpZ24vZmFpbG92ZXItbWVjaGFuaXNtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZhaWxvdmVyLW1lY2hhbmlzbS5jb21wb25lbnQnO1xyXG4iXX0=
|
|
@@ -230,10 +230,10 @@ var GeneralInformationComponent = /** @class */ (function () {
|
|
|
230
230
|
Component({
|
|
231
231
|
selector: 'lib-new-campaign-general-information',
|
|
232
232
|
template: "<form autocomplete=\"off\"\r\n\t[formGroup]=\"form\">\r\n\t<div class=\"campaign-info\">\r\n\t\t<div class=\"campaign-info-child\">\r\n\t\t\t<mat-card>\r\n\t\t\t\t<mat-card-content>\r\n\t\t\t\t\t<h3 class=\"font-22px font-PoppinsBold mb-4\">General Information</h3>\r\n\r\n\t\t\t\t\t<div class=\"form-group\">\r\n\t\t\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\t\t\tclass=\"w-100\">\r\n\t\t\t\t\t\t\t<mat-label class=\"asterix--after\">Broadcast Name</mat-label>\r\n\r\n\t\t\t\t\t\t\t<input matInput\r\n\t\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\t\tformControlName=\"campaignName\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"Enter Broadcast name\">\r\n\r\n\t\t\t\t\t\t</mat-form-field>\r\n\r\n\t\t\t\t\t\t<div class=\"d-flex justify-content-between align-items-center w-100\">\r\n\t\t\t\t\t\t\t<mat-hint align=\"start\">\r\n\t\t\t\t\t\t\t\t{{form.get('campaignName').value?.length || 0}}/100\r\n\t\t\t\t\t\t\t</mat-hint>\r\n\r\n\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t<mat-error align=\"end\"\r\n\t\t\t\t\t\t\t\t\t*ngFor=\"let validation of validationMessages.campaignName\">\r\n\t\t\t\t\t\t\t\t\t<p class=\"font-12px mb-0\"\r\n\t\t\t\t\t\t\t\t\t\t*ngIf=\"form.get('campaignName').touched\r\n\t\t\t\t\t\t\t\t\t\t&& form.get('campaignName').hasError(validation.type)\">\r\n\t\t\t\t\t\t\t\t\t\t{{ validation.message }}\r\n\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t</mat-error>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"form-group\">\r\n\t\t\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\t\t\tclass=\"w-100\">\r\n\t\t\t\t\t\t\t<mat-label class=\"asterix--after\">Channel</mat-label>\r\n\r\n\t\t\t\t\t\t\t<mat-select placeholder=\"Select channel\"\r\n\t\t\t\t\t\t\t\tformControlName=\"medium\">\r\n\t\t\t\t\t\t\t\t<mat-option *ngFor=\"let option of channelOption\"\r\n\t\t\t\t\t\t\t\t\t[value]=\"option.value\">\r\n\t\t\t\t\t\t\t\t\t{{ option.label }}\r\n\t\t\t\t\t\t\t\t</mat-option>\r\n\t\t\t\t\t\t\t</mat-select>\r\n\t\t\t\t\t\t</mat-form-field>\r\n\r\n\t\t\t\t\t\t<mat-error align=\"end\"\r\n\t\t\t\t\t\t\t*ngFor=\"let validation of validationMessages.medium\">\r\n\t\t\t\t\t\t\t<p class=\"font-12px mb-0\"\r\n\t\t\t\t\t\t\t\t*ngIf=\"form.get('medium').touched\r\n\t\t\t\t\t\t\t\t\t\t&& form.get('medium').hasError(validation.type)\">\r\n\t\t\t\t\t\t\t\t{{ validation.message }}\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t</mat-error>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<ng-container *ngIf=\"form.get('medium').value === 'WA'\">\r\n\t\t\t\t\t\t<lib-general-information-wa [isTouchedForm]=\"isTouchedWAForm\"\r\n\t\t\t\t\t\t\t[isReadOnlyMode]=\"isReadOnlyMode\"\r\n\t\t\t\t\t\t\t(updateGeneralInformationForm)=\"updateGeneralInformationForm($event)\"></lib-general-information-wa>\r\n\t\t\t\t\t</ng-container>\r\n\r\n\t\t\t\t\t<ng-container *ngIf=\"form.get('medium').value === 'LINE'\">\r\n\t\t\t\t\t\t<lib-general-information-line [isTouchedForm]=\"isTouchedSMSForm\"\r\n\t\t\t\t\t\t\t[isReadOnlyMode]=\"isReadOnlyMode\"\r\n\t\t\t\t\t\t\t(updateGeneralInformationForm)=\"updateGeneralInformationForm($event)\"></lib-general-information-line>\r\n\t\t\t\t\t</ng-container>\r\n\r\n\t\t\t\t\t<ng-container *ngIf=\"form.get('medium').value === 'SMS'\">\r\n\t\t\t\t\t\t<lib-general-information-sms [isTouchedForm]=\"isTouchedSMSForm\"\r\n\t\t\t\t\t\t\t[isReadOnlyMode]=\"isReadOnlyMode\"\r\n\t\t\t\t\t\t\t(updateGeneralInformationForm)=\"updateGeneralInformationForm($event)\"></lib-general-information-sms>\r\n\t\t\t\t\t</ng-container>\r\n\r\n\t\t\t\t\t<ng-container *ngIf=\"form.get('medium').value === 'EMAIL'\">\r\n\t\t\t\t\t\t<lib-general-information-email [isTouchedForm]=\"isTouchedEmailForm\"\r\n\t\t\t\t\t\t\t[isReadOnlyMode]=\"isReadOnlyMode\"\r\n\t\t\t\t\t\t\t(updateGeneralInformationForm)=\"updateGeneralInformationForm($event)\"></lib-general-information-email>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t</mat-card-content>\r\n\t\t\t</mat-card>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"campaign-info-child pl-20px\">\r\n\t\t\t<h3 class=\"font-22px font-PoppinsBold\">Broadcast Content</h3>\r\n\r\n\t\t\t<div\r\n\t\t\t\t[ngClass]=\"form.get('medium').value === 'SMS' || form.get('medium').value === 'EMAIL' ? 'campaign-border-preview' : 'campaign-preview'\">\r\n\t\t\t\t<section *ngIf=\"form.get('medium').value === 'SMS' || form.get('medium').value === 'EMAIL'\">\r\n\t\t\t\t\t<p *ngIf=\"getBody\"\r\n\t\t\t\t\t\tclass=\"body my-2\"\r\n\t\t\t\t\t\tstyle=\"max-width: 500px;word-wrap: break-word;\"\r\n\t\t\t\t\t\t[innerHTML]=\"getBody\"></p>\r\n\t\t\t\t</section>\r\n\r\n\t\t\t\t<section *ngIf=\"form.get('medium').value === 'WA'\"\r\n\t\t\t\t\tclass=\"campaign-preview__wa\">\r\n\t\t\t\t\t<div class=\"header-preview\">\r\n\t\t\t\t\t\t<div class=\"heading\">\r\n\t\t\t\t\t\t\t{{ getHeader }}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"body-preview\">\r\n\t\t\t\t\t\t<section *ngIf=\"getBody || getMedia || displayFile\">\r\n\t\t\t\t\t\t\t<div class=\"chat\"\r\n\t\t\t\t\t\t\t\t[ngClass]=\"{'no-bottom-border': getTemplate?.buttons?.length > 0}\">\r\n\t\t\t\t\t\t\t\t<img *ngIf=\"(getMedia === 'IMAGE' || getTemplate?.header?.type?.toLowerCase() === 'image') && displayFile\"\r\n\t\t\t\t\t\t\t\t\tstyle=\"max-width: 100%;\"\r\n\t\t\t\t\t\t\t\t\talt=\"image\"\r\n\t\t\t\t\t\t\t\t\t[src]=\"displayFile\" />\r\n\r\n\t\t\t\t\t\t\t\t<video\r\n\t\t\t\t\t\t\t\t\t*ngIf=\"(getMedia === 'VIDEO' || getTemplate?.header?.type?.toLowerCase() === 'video') && displayFile\"\r\n\t\t\t\t\t\t\t\t\tid=\"video\"\r\n\t\t\t\t\t\t\t\t\tstyle=\"width: 100%;\"\r\n\t\t\t\t\t\t\t\t\t[src]=\"displayFile\"\r\n\t\t\t\t\t\t\t\t\tcontrols></video>\r\n\r\n\t\t\t\t\t\t\t\t<div *ngIf=\"getMedia === 'DOCUMENT'\"\r\n\t\t\t\t\t\t\t\t\tstyle=\"display: flex;\">\r\n\t\t\t\t\t\t\t\t\t<img style=\"width: 13px; height: 18px;\"\r\n\t\t\t\t\t\t\t\t\t\talt=\"document\"\r\n\t\t\t\t\t\t\t\t\t\tsrc=\"../../../../../assets/images/icon-file.png\">\r\n\r\n\t\t\t\t\t\t\t\t\t<span style=\"margin-left: 10px;\">Document</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"getMedia === 'LOCATION'\">\r\n\t\t\t\t\t\t\t\t\t<agm-map style=\"width:100%;height:200px;\"\r\n\t\t\t\t\t\t\t\t\t\t[disableDefaultUI]=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t[latitude]=\"maps.latitude\"\r\n\t\t\t\t\t\t\t\t\t\t[longitude]=\"maps.longitude\"\r\n\t\t\t\t\t\t\t\t\t\t[zoom]=\"maps.zoom\">\r\n\t\t\t\t\t\t\t\t\t\t<agm-marker [latitude]=\"maps.latitude\"\r\n\t\t\t\t\t\t\t\t\t\t\t[longitude]=\"maps.longitude\"\r\n\t\t\t\t\t\t\t\t\t\t\t[markerDraggable]=\"false\"></agm-marker>\r\n\t\t\t\t\t\t\t\t\t</agm-map>\r\n\t\t\t\t\t\t\t\t\t<a\r\n\t\t\t\t\t\t\t\t\t\t[href]=\"'https://www.google.com/maps/search/?api=1&query='+ maps.latitude + ',' + maps.longitude\">\r\n\t\t\t\t\t\t\t\t\t\thttps://www.google.com/maps/search/?api=1&query={{maps.latitude}},{{maps.longitude}}\r\n\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t</ng-container>\r\n\r\n\t\t\t\t\t\t\t\t<p *ngIf=\"getBody\"\r\n\t\t\t\t\t\t\t\t\tclass=\"body my-2\"\r\n\t\t\t\t\t\t\t\t\t[innerHTML]=\"getBody\"></p>\r\n\r\n\t\t\t\t\t\t\t\t<p *ngIf=\"getTemplate?.footer\"\r\n\t\t\t\t\t\t\t\t\tclass=\"mb-2\"\r\n\t\t\t\t\t\t\t\t\tstyle=\"color: rgb(160, 160, 160);\">\r\n\t\t\t\t\t\t\t\t\t{{ getTemplate.footer }}\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</section>\r\n\t\t\t\t\t\t<section *ngIf=\"getTemplate?.buttons?.length > 0\">\r\n\t\t\t\t\t\t\t<div *ngFor=\"let button of getTemplateButton\"\r\n\t\t\t\t\t\t\t\tclass=\"params-btn pb-0 pointer\">\r\n\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\t{{ button?.text || button?.type }}\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div *ngIf=\"getTemplate?.buttons?.length > 3\"\r\n\t\t\t\t\t\t\t\tclass=\"params-btn pb-0 pointer\"\r\n\t\t\t\t\t\t\t\t(click)=\"isShowMore = !isShowMore\">\r\n\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\t<mat-icon>list</mat-icon> See all options\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</section>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</section>\r\n\r\n\t\t\t\t<section *ngIf=\"form.get('medium').value === 'LINE'\"\r\n\t\t\t\t\tclass=\"campaign-preview__line\">\r\n\t\t\t\t\t<div class=\"header-preview\">\r\n\t\t\t\t\t\t<div class=\"heading\">\r\n\t\t\t\t\t\t\t{{ getHeader }}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"body-preview\">\r\n\t\t\t\t\t\t<!-- Template Line Text -->\r\n\t\t\t\t\t\t<section *ngIf=\"isText || !isJSON\"\r\n\t\t\t\t\t\t\tclass=\"chat\">\r\n\t\t\t\t\t\t\t<p class=\"body my-2\"\r\n\t\t\t\t\t\t\t\t[innerHTML]=\"getBody\"></p>\r\n\t\t\t\t\t\t</section>\r\n\r\n\t\t\t\t\t\t<!-- Template Line Button | Confirmation -->\r\n\t\t\t\t\t\t<section *ngIf=\"['buttons', 'confirm'].includes(getTemplateLine?.type)\"\r\n\t\t\t\t\t\t\tclass=\"chat\"\r\n\t\t\t\t\t\t\t[ngClass]=\"{'no-bottom-border': getTemplateLine?.actions?.length > 0}\">\r\n\t\t\t\t\t\t\t<img *ngIf=\"getTemplateLine?.thumbnailImageUrl\"\r\n\t\t\t\t\t\t\t\tstyle=\"max-width: 100%;\"\r\n\t\t\t\t\t\t\t\tclass=\"mb-1\"\r\n\t\t\t\t\t\t\t\t[src]=\"getTemplateLine?.thumbnailImageUrl\" />\r\n\r\n\t\t\t\t\t\t\t<p *ngIf=\"getTemplateLine?.title\"\r\n\t\t\t\t\t\t\t\tclass=\"font-PoppinsBold mb-1\"\r\n\t\t\t\t\t\t\t\t[innerHTML]=\"getTemplateLine?.title\"> </p>\r\n\r\n\t\t\t\t\t\t\t<p *ngIf=\"getTemplateLine?.text\"\r\n\t\t\t\t\t\t\t\tclass=\"mb-0\"\r\n\t\t\t\t\t\t\t\t[innerHTML]=\"getTemplateLine?.text\"> </p>\r\n\t\t\t\t\t\t</section>\r\n\r\n\t\t\t\t\t\t<!-- Template Line Carousel -->\r\n\t\t\t\t\t\t<div *ngIf=\"['carousel'].includes(getTemplateLine?.type)\"\r\n\t\t\t\t\t\t\tclass=\"d-flex gap-2 overflow-auto\">\r\n\t\t\t\t\t\t\t<div *ngFor=\"let column of getTemplateLine?.columns\">\r\n\t\t\t\t\t\t\t\t<section class=\"chat w-100\"\r\n\t\t\t\t\t\t\t\t\t[ngClass]=\"{'no-bottom-border': column?.actions?.length > 0}\">\r\n\t\t\t\t\t\t\t\t\t<img *ngIf=\"column.thumbnailImageUrl\"\r\n\t\t\t\t\t\t\t\t\t\tstyle=\"max-width: 100%;\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"mb-1\"\r\n\t\t\t\t\t\t\t\t\t\t[src]=\"column.thumbnailImageUrl\" />\r\n\r\n\t\t\t\t\t\t\t\t\t<p *ngIf=\"column.title\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"font-PoppinsBold mb-1\"\r\n\t\t\t\t\t\t\t\t\t\t[innerHTML]=\"column.title\"> </p>\r\n\r\n\t\t\t\t\t\t\t\t\t<p *ngIf=\"column.text\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"mb-0\"\r\n\t\t\t\t\t\t\t\t\t\t[innerHTML]=\"column.text\"> </p>\r\n\t\t\t\t\t\t\t\t</section>\r\n\t\t\t\t\t\t\t\t<section *ngIf=\"column?.actions?.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<div *ngFor=\"let button of column?.actions\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"params-btn mw-100 pb-0 pointer\">\r\n\t\t\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\t\t\t{{ button?.text }}\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</section>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<!-- Template Line Image Carousel -->\r\n\t\t\t\t\t\t<div *ngIf=\"['image_carousel'].includes(getTemplateLine?.type)\"\r\n\t\t\t\t\t\t\tclass=\"d-flex gap-2 overflow-auto\">\r\n\t\t\t\t\t\t\t<div *ngFor=\"let column of getTemplateLine?.columns\">\r\n\t\t\t\t\t\t\t\t<div class=\"image-container\">\r\n\t\t\t\t\t\t\t\t\t<img [src]=\"column.imageUrl\"\r\n\t\t\t\t\t\t\t\t\t\talt=\"image\">\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"d-flex justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<p class=\"font-13px overlay-text\">{{ column.action.label }}</p>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<!-- Button Line -->\r\n\t\t\t\t\t\t<section *ngIf=\"getTemplateLine?.type !== 'confirm' && getTemplateLine?.actions?.length > 0\">\r\n\t\t\t\t\t\t\t<div *ngFor=\"let button of getTemplateLine?.actions\"\r\n\t\t\t\t\t\t\t\tclass=\"params-btn pb-0 pointer\">\r\n\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\t{{ button?.text }}\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</section>\r\n\t\t\t\t\t\t<section *ngIf=\"getTemplateLine?.type === 'confirm' && getTemplateLine?.actions?.length > 0\"\r\n\t\t\t\t\t\t\tclass=\"d-flex justify-content-around mw-70 bg-white\">\r\n\t\t\t\t\t\t\t<div *ngFor=\"let button of getTemplateLine?.actions\"\r\n\t\t\t\t\t\t\t\tclass=\"params-btn flex pb-0 pointer\">\r\n\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\t{{ button?.text }}\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</section>\r\n\t\t\t\t\t\t<!-- ./ Button Line -->\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</section>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"d-flex\"\r\n\t\t\t\tstyle=\"flex-direction: column;\">\r\n\t\t\t\t<span *ngIf=\"form.get('medium').value === 'SMS'\"\r\n\t\t\t\t\tstyle=\"text-align: right;width: 100%;\">\r\n\t\t\t\t\t{{ twilioResultCounter.fulltext }}\r\n\t\t\t\t</span>\r\n\t\t\t\t<span style=\"text-align: right;width: 100%;color: red\"\r\n\t\t\t\t\t*ngIf=\"twilioResultCounter.segments > 10 && form.get('medium').value === 'SMS'\">\r\n\t\t\t\t\tMaximum Segment is 10\r\n\t\t\t\t</span>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n\r\n<ng-template #isSpinner>\r\n\t<div class=\"text-center my-auto\">\r\n\t\t<img src=\"../../../../../assets/images/spinner.svg\">\r\n\t</div>\r\n</ng-template>\r\n",
|
|
233
|
-
styles: [".campaign-info{display:flex}.campaign-info-child{flex:1}.campaign-info .asterix--after:after{content:\"*\";color:red}.campaign-info .pl-20px{padding-left:20px}.campaign-info .mw-70{max-width:70%}.campaign-info .campaign-preview{width:75%}.campaign-info .campaign-preview .header-preview{padding:15px;min-height:60px;border-radius:10px 10px 0 0}.campaign-info .campaign-preview .header-preview .heading{width:100%;color:#e0e0e0;margin-left:5px;font-size:20px}.campaign-info .campaign-preview .body-preview{padding:15px;min-height:470px}.campaign-info .campaign-preview .body-preview .chat{width:70%;padding:11px;font-size:14px;line-height:22px;color:#494949;border-radius:8px;background:#fff;overflow-wrap:break-word;white-space:pre-line;box-shadow:12px 12px 20px rgba(44,59,113,.04)}.campaign-info .campaign-preview .body-preview .chat .body{max-height:400px;overflow-y:auto;overscroll-behavior-y:contain}.campaign-info .campaign-preview .body-preview .chat.no-bottom-border{border-bottom-left-radius:0;border-bottom-right-radius:0}.campaign-info .campaign-preview__wa .header-preview{background:#065f54}.campaign-info .campaign-preview__wa .body-preview{border-bottom-left-radius:8px;border-bottom-right-radius:8px;background-image:url(
|
|
233
|
+
styles: [".campaign-info{display:flex}.campaign-info-child{flex:1}.campaign-info .asterix--after:after{content:\"*\";color:red}.campaign-info .pl-20px{padding-left:20px}.campaign-info .mw-70{max-width:70%}.campaign-info .campaign-preview{width:75%}.campaign-info .campaign-preview .header-preview{padding:15px;min-height:60px;border-radius:10px 10px 0 0}.campaign-info .campaign-preview .header-preview .heading{width:100%;color:#e0e0e0;margin-left:5px;font-size:20px}.campaign-info .campaign-preview .body-preview{padding:15px;min-height:470px}.campaign-info .campaign-preview .body-preview .chat{width:70%;padding:11px;font-size:14px;line-height:22px;color:#494949;border-radius:8px;background:#fff;overflow-wrap:break-word;white-space:pre-line;box-shadow:12px 12px 20px rgba(44,59,113,.04)}.campaign-info .campaign-preview .body-preview .chat .body{max-height:400px;overflow-y:auto;overscroll-behavior-y:contain}.campaign-info .campaign-preview .body-preview .chat.no-bottom-border{border-bottom-left-radius:0;border-bottom-right-radius:0}.campaign-info .campaign-preview__wa .header-preview{background:#065f54}.campaign-info .campaign-preview__wa .body-preview{border-bottom-left-radius:8px;border-bottom-right-radius:8px;background-image:url(../../../../assets/svg/whatsapp-bg.svg);background-position:center;background-repeat:no-repeat;background-size:cover}.campaign-info .campaign-preview__wa .body-preview .params-btn{width:auto;max-width:70%;color:#34b7f1;background:#fff;box-shadow:12px 12px 20px rgba(44,59,113,.04);border-radius:0;font-size:16px;line-height:43px;padding:0;text-align:center;font-family:Poppins;overflow-wrap:break-word}.campaign-info .campaign-preview__wa .body-preview .params-btn b{font-family:PoppinsBold}.campaign-info .campaign-preview__line .header-preview{background:#273046}.campaign-info .campaign-preview__line .body-preview{background:#7692bf;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.campaign-info .campaign-preview__line .body-preview .params-btn{width:auto;max-width:70%;color:#34b7f1;background:#fff;box-shadow:12px 12px 20px rgba(44,59,113,.04);border-radius:0;font-size:16px;line-height:43px;padding:0;text-align:center;font-family:Poppins;overflow-wrap:break-word}.campaign-info .campaign-preview__line .body-preview .params-btn b{font-family:PoppinsBold}.campaign-info .campaign-preview__line .body-preview .image-container{position:relative;width:200px;height:200px}.campaign-info .campaign-preview__line .body-preview .image-container img{display:block;width:100%;height:100%}.campaign-info .campaign-preview__line .body-preview .image-container .overlay-text{top:170px;position:absolute;padding:2px 5px;color:#fff;background-color:rgba(49,57,60,.62);border-radius:10px}.campaign-info .campaign-border-preview{width:100%;min-height:100px;padding:32px;border:1px solid #e2e2e2;border-radius:8px}"]
|
|
234
234
|
})
|
|
235
235
|
], GeneralInformationComponent);
|
|
236
236
|
return GeneralInformationComponent;
|
|
237
237
|
}());
|
|
238
238
|
export { GeneralInformationComponent };
|
|
239
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhbC1pbmZvcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9jYW1wYWlnbi1tYW5hZ2VtZW50LWxpYnJhcnkvIiwic291cmNlcyI6WyJsaWIvY2FtcGFpZ24tbWFuYWdlbWVudC9tb2R1bGVzL25ldy1jYW1wYWlnbi9nZW5lcmFsLWluZm9ybWF0aW9uL2dlbmVyYWwtaW5mb3JtYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQ04sd0NBQXdDLEVBQ3hDLG1CQUFtQixHQUNuQixNQUFNLHdCQUF3QixDQUFDO0FBZWhDO0lBeUJDLHFDQUFvQixTQUF1QjtRQUEzQyxpQkFFQztRQUZtQixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBZnBDLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBQ2pDLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDcEMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUc1Qix3QkFBbUIsR0FBRztZQUM1QixRQUFRLEVBQUUsQ0FBQztZQUNYLFVBQVUsRUFBRSxDQUFDO1lBQ2IsUUFBUSxFQUFFLEVBQUU7WUFDWixRQUFRLEVBQUUsZ0NBQWdDO1NBQzFDLENBQUM7UUFxTEsseUJBQW9CLEdBQUc7O1lBQzdCLElBQU0sYUFBYSxTQUFHLEtBQUksQ0FBQyxzQkFBc0IsMENBQUUsV0FBVyxFQUFFLENBQUM7WUFDakUsSUFBSSxPQUFBLGFB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QUksQ0FBQyxRQUFRLGVBQ2pCLElBQUksQ0FBQyxzQkFBc0IsMENBQUUsV0FBVyw0Q0FBSSxRQUFRLENBQUM7UUFDdEQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLGVBQ2xCLElBQUksQ0FBQyxzQkFBc0IsMENBQUUsV0FBVyw0Q0FBSSxTQUFTLENBQUM7SUFDeEQsQ0FBQztJQUVPLHNEQUFnQixHQUF4QixVQUF5QixVQUFVO1FBQ2xDLE9BQU8sVUFBVTthQUNmLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLENBQUM7YUFDN0MsVUFBVSxDQUFDLHNCQUFzQixFQUFFLHFCQUFxQixDQUFDO2FBQ3pELFVBQVUsQ0FBQyxnQ0FBZ0MsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDOztnQkEvSzhCLFlBQVk7O0lBdkIzQztRQURDLE1BQU0sRUFBRTsyRUFJTjtJQWtCTTtRQUFSLEtBQUssRUFBRTt1RUFBZ0M7SUF2QjVCLDJCQUEyQjtRQUx2QyxTQUFTLENBQUM7WUFDVixRQUFRLEVBQUUsc0NBQXNDO1lBQ2hELHE2WkFBbUQ7O1NBRW5ELENBQUM7T0FDVywyQkFBMkIsQ0ErT3ZDO0lBQUQsa0NBQUM7Q0FBQSxBQS9PRCxJQStPQztTQS9PWSwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBTZWdtZW50ZWRNZXNzYWdlIH0gZnJvbSAnc21zLXNlZ21lbnRzLWNhbGN1bGF0b3InO1xyXG5pbXBvcnQge1xyXG5cdEdlbmVyYWxJbmZvcm1hdGlvbk1lc3NhZ2VWYWxpZGF0aW9uQ29uc3QsXHJcblx0UGxhdGZvcm1PcHRpb25Db25zdCxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2NvbnN0JztcclxuXHJcbmludGVyZmFjZSBJTWFwcyB7XHJcblx0em9vbTogbnVtYmVyO1xyXG5cdGxhdGl0dWRlOiBudW1iZXI7XHJcblx0bG9uZ2l0dWRlOiBudW1iZXI7XHJcblx0aXNEcmFnZ2FibGU6IGJvb2xlYW47XHJcblx0aXNEb3VibGVDbGlja1pvb206IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnbGliLW5ldy1jYW1wYWlnbi1nZW5lcmFsLWluZm9ybWF0aW9uJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vZ2VuZXJhbC1pbmZvcm1hdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vZ2VuZXJhbC1pbmZvcm1hdGlvbi5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgR2VuZXJhbEluZm9ybWF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRAT3V0cHV0KClcclxuXHRwdWJsaWMgZ2VuZXJhbEluZm9ybWF0aW9uOiBFdmVudEVtaXR0ZXI8e1xyXG5cdFx0cGFyZW50OiBGb3JtR3JvdXA7XHJcblx0XHRjaGlsZDogRm9ybUdyb3VwO1xyXG5cdH0+O1xyXG5cclxuXHRwdWJsaWMgZm9ybTogRm9ybUdyb3VwO1xyXG5cdHB1YmxpYyBjaGFubmVsT3B0aW9uOiBhbnlbXTtcclxuXHRwdWJsaWMgZ2VuZXJhbEluZm9ybWF0aW9uRm9ybTogRm9ybUdyb3VwO1xyXG5cdHB1YmxpYyBpc1RvdWNoZWRXQUZvcm06IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRwdWJsaWMgaXNUb3VjaGVkU01TRm9ybTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdHB1YmxpYyBpc1RvdWNoZWRFbWFpbEZvcm06IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRwdWJsaWMgaXNTaG93TW9yZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdHB1YmxpYyB2YWxpZGF0aW9uTWVzc2FnZXM6IGFueTtcclxuXHRwdWJsaWMgbWFwczogSU1hcHM7XHJcblx0cHVibGljIHR3aWxpb1Jlc3VsdENvdW50ZXIgPSB7XHJcblx0XHRzZWdtZW50czogMCxcclxuXHRcdGNoYXJhY3RlcnM6IDAsXHJcblx0XHRlbmNvZGluZzogJycsXHJcblx0XHRmdWxsdGV4dDogYEVuY29kZSAtIC8gQ2hhcnMgMCAvIFNlZ21lbnQgMWAsXHJcblx0fTtcclxuXHJcblx0QElucHV0KCkgcHVibGljIGlzUmVhZE9ubHlNb2RlOiBib29sZWFuO1xyXG5cclxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XHJcblx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5jaGFubmVsT3B0aW9uID0gUGxhdGZvcm1PcHRpb25Db25zdDtcclxuXHRcdHRoaXMudmFsaWRhdGlvbk1lc3NhZ2VzID0gR2VuZXJhbEluZm9ybWF0aW9uTWVzc2FnZVZhbGlkYXRpb25Db25zdDtcclxuXHRcdHRoaXMubWFwcyA9IHtcclxuXHRcdFx0em9vbTogMTUsXHJcblx0XHRcdGxhdGl0dWRlOiBudWxsLFxyXG5cdFx0XHRsb25naXR1ZGU6IG51bGwsXHJcblx0XHRcdGlzRHJhZ2dhYmxlOiB0cnVlLFxyXG5cdFx0XHRpc0RvdWJsZUNsaWNrWm9vbTogdHJ1ZSxcclxuXHRcdH07XHJcblxyXG5cdFx0dGhpcy5pbml0Rm9ybSgpO1xyXG5cdFx0dGhpcy5pbml0RWRpdCgpO1xyXG5cdFx0dGhpcy5pbml0RGlzYWJsZSgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0Rm9ybSgpOiB2b2lkIHtcclxuXHRcdHRoaXMuZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xyXG5cdFx0XHRpZDogbmV3IEZvcm1Db250cm9sKG51bGwpLFxyXG5cdFx0XHRjYW1wYWlnbk5hbWU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBbXHJcblx0XHRcdFx0VmFsaWRhdG9ycy5yZXF1aXJlZCxcclxuXHRcdFx0XHRWYWxpZGF0b3JzLm1heExlbmd0aCgxMDApLFxyXG5cdFx0XHRdKSxcclxuXHRcdFx0bWVkaXVtOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcclxuXHRcdH0pO1xyXG5cclxuXHRcdHRoaXMuZm9ybS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuXHRcdFx0dGhpcy5pc1RvdWNoZWRXQUZvcm0gPSAhdGhpcy5pc1RvdWNoZWRXQUZvcm07XHJcblx0XHRcdHRoaXMuaXNUb3VjaGVkU01TRm9ybSA9ICF0aGlzLmlzVG91Y2hlZFNNU0Zvcm07XHJcblx0XHRcdHRoaXMuaXNUb3VjaGVkRW1haWxGb3JtID0gIXRoaXMuaXNUb3VjaGVkRW1haWxGb3JtO1xyXG5cclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb24uZW1pdCh7XHJcblx0XHRcdFx0cGFyZW50OiB0aGlzLmZvcm0sXHJcblx0XHRcdFx0Y2hpbGQ6IHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybSxcclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHRcdHNldEludGVydmFsKCgpID0+IHtcclxuXHRcdFx0dGhpcy5vbkNoZWNrVHdpbGlvQ291bnRlcigpO1xyXG5cdFx0fSwgNDAwKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdEVkaXQoKTogdm9pZCB7XHJcblx0XHRjb25zdCBjYW1wYWlnbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd0ZWxpbi5jYW1wYWlnbicpXHJcblx0XHRcdD8gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndGVsaW4uY2FtcGFpZ24nKSlcclxuXHRcdFx0OiB7fTtcclxuXHJcblx0XHRpZiAoT2JqZWN0LmVudHJpZXMoY2FtcGFpZ24pLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xyXG5cclxuXHRcdHRoaXMuZm9ybS5nZXQoJ2lkJykuc2V0VmFsdWUoY2FtcGFpZ24/LmdlbmVyYWxJbmZvcm1hdGlvbj8uaWQpO1xyXG5cdFx0dGhpcy5mb3JtXHJcblx0XHRcdC5nZXQoJ2NhbXBhaWduTmFtZScpXHJcblx0XHRcdC5zZXRWYWx1ZShjYW1wYWlnbj8uZ2VuZXJhbEluZm9ybWF0aW9uPy5mb3JtLmNhbXBhaWduTmFtZSk7XHJcblx0XHR0aGlzLmZvcm1cclxuXHRcdFx0LmdldCgnbWVkaXVtJylcclxuXHRcdFx0LnNldFZhbHVlKGNhbXBhaWduPy5nZW5lcmFsSW5mb3JtYXRpb24/LmZvcm0ubWVkaXVtKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdERpc2FibGUoKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMuaXNSZWFkT25seU1vZGUpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuZm9ybS5kaXNhYmxlKCk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgdXBkYXRlR2VuZXJhbEluZm9ybWF0aW9uRm9ybShmb3JtOiBGb3JtR3JvdXApOiB2b2lkIHtcclxuXHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybSA9IGZvcm07XHJcblx0XHR0aGlzLmlzU2hvd01vcmUgPSBmYWxzZTtcclxuXHJcblx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbi5lbWl0KHtcclxuXHRcdFx0cGFyZW50OiB0aGlzLmZvcm0sXHJcblx0XHRcdGNoaWxkOiB0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0sXHJcblx0XHR9KTtcclxuXHJcblx0XHRpZiAodGhpcy5nZXRNZWRpYSA9PT0gJ0xPQ0FUSU9OJykgdGhpcy5nZXRMb2NhdGlvbigpO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldEhlYWRlcigpOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuIHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8uZnJvbT8ubmFtZSB8fCAnJztcclxuXHR9XHJcblxyXG5cdGdldCBnZXRCb2R5U3RyaW5nKCk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBib2R5ID1cclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50ZXh0IHx8XHJcblx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGVtcGxhdGU/LmJvZHk/LnRleHQgfHxcclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5ib2R5Py50ZXh0O1xyXG5cclxuXHRcdHJldHVybiAoXHJcblx0XHRcdGJvZHlcclxuXHRcdFx0XHQ/LnNwbGl0KC9cXFxcbnxcXG4vKVxyXG5cdFx0XHRcdC5qb2luKCc8YnIgLz4nKVxyXG5cdFx0XHRcdC5zcGxpdCgvXFxcXHR8XFx0LylcclxuXHRcdFx0XHQuam9pbignICAgICcpID8/ICcnXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldEJvZHkoKTogYW55IHtcclxuXHRcdGNvbnN0IGJvZHkgPVxyXG5cdFx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LnRleHQgfHxcclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50ZW1wbGF0ZT8uYm9keT8udGV4dCB8fFxyXG5cdFx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LmJvZHk/LnRleHQ7XHJcblxyXG5cdFx0cmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKFxyXG5cdFx0XHR0aGlzLmZpeEdlbmVyYXRlZEh0bWwoXHJcblx0XHRcdFx0Ym9keVxyXG5cdFx0XHRcdFx0Py5zcGxpdCgvXFxcXG58XFxuLylcclxuXHRcdFx0XHRcdC5qb2luKCc8YnIgLz4nKVxyXG5cdFx0XHRcdFx0LnNwbGl0KC9cXFxcdHxcXHQvKVxyXG5cdFx0XHRcdFx0LmpvaW4oJyAgICAnKSA/PyAnJ1xyXG5cdFx0XHQpXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldE1lZGlhKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gdGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5tZWRpYSB8fCAnJztcclxuXHR9XHJcblxyXG5cdGdldCBnZXRUZW1wbGF0ZSgpOiBhbnkge1xyXG5cdFx0cmV0dXJuIHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGVtcGxhdGUgfHwge307XHJcblx0fVxyXG5cclxuXHRnZXQgZ2V0VGVtcGxhdGVCdXR0b24oKTogYW55IHtcclxuXHRcdGNvbnN0IGxpbWl0ID1cclxuXHRcdFx0IXRoaXMuaXNTaG93TW9yZSAmJiB0aGlzLmdldFRlbXBsYXRlPy5idXR0b25zPy5sZW5ndGggPiAzXHJcblx0XHRcdFx0PyAyXHJcblx0XHRcdFx0OiB0aGlzLmdldFRlbXBsYXRlPy5idXR0b25zPy5sZW5ndGg7XHJcblxyXG5cdFx0cmV0dXJuIFsuLi50aGlzLmdldFRlbXBsYXRlPy5idXR0b25zXS5zcGxpY2UoMCwgbGltaXQpIHx8IFtdO1xyXG5cdH1cclxuXHJcblx0Z2V0IGRpc3BsYXlGaWxlKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gKFxyXG5cdFx0XHQoXHJcblx0XHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50YXJnZXRVUkwgfHxcclxuXHRcdFx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LnRlbXBsYXRlPy5oZWFkZXJcclxuXHRcdFx0XHRcdD8udXJsXHJcblx0XHRcdCk/LnJlcGxhY2UoJ2FkbHNhbmRib3guY29tJywgJ2FkbHNhbmRib3gubmV0JykgPz8gJydcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiBMSU5FICovXHJcblx0Z2V0IGlzVGV4dCgpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LmNoYW5uZWwgPT09ICdURVhUJztcclxuXHR9XHJcblxyXG5cdGdldCBpc0pTT04oKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5pc0pTT047XHJcblx0fVxyXG5cclxuXHRnZXQgZ2V0VGVtcGxhdGVMaW5lKCk6IGFueSB7XHJcblx0XHRyZXR1cm4gdGhpcy5pc0pTT05cclxuXHRcdFx0PyBKU09OLnBhcnNlKFxyXG5cdFx0XHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50ZW1wbGF0ZT8uYm9keVxyXG5cdFx0XHRcdFx0XHQ/LnRleHRcclxuXHRcdFx0ICApXHJcblx0XHRcdDogdGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50ZW1wbGF0ZT8uYm9keT8udGV4dDtcclxuXHR9XHJcblx0LyogLi8gTElORSAqL1xyXG5cclxuXHRwcml2YXRlIGdldExvY2F0aW9uKCk6IHZvaWQge1xyXG5cdFx0dGhpcy5tYXBzLmxhdGl0dWRlID1cclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5sYXRpdHVkZTtcclxuXHRcdHRoaXMubWFwcy5sb25naXR1ZGUgPVxyXG5cdFx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LmxvbmdpdHVkZTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZml4R2VuZXJhdGVkSHRtbChodG1sU3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gaHRtbFN0cmluZ1xyXG5cdFx0XHQucmVwbGFjZUFsbCgvZGl2IHNyYz1cImh0dHAvZywgJ2ltZyBzcmM9XCJodHRwJylcclxuXHRcdFx0LnJlcGxhY2VBbGwoL2RpdiBzcmM9XCJkYXRhOmltYWdlL2csICdpbWcgc3JjPVwiZGF0YTppbWFnZScpXHJcblx0XHRcdC5yZXBsYWNlQWxsKC9EcmFnIGFuZCBkcm9wIHlvdXIgaW1hZ2UgaGVyZS9nLCAnJyk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgb25DaGVja1R3aWxpb0NvdW50ZXIgPSAoKTogdm9pZCA9PiB7XHJcblx0XHRjb25zdCB2YWx1ZXNHZW5lcmFsID0gdGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpO1xyXG5cdFx0aWYgKHZhbHVlc0dlbmVyYWw/LmNoYW5uZWwgPT09ICdURVhUJykge1xyXG5cdFx0XHRjb25zdCBzZWdtZW50ZWRNZXNzYWdlID0gbmV3IFNlZ21lbnRlZE1lc3NhZ2UodGhpcy5nZXRCb2R5U3RyaW5nKTtcclxuXHRcdFx0Y29uc3QgcmVzdWx0ID0ge1xyXG5cdFx0XHRcdHNlZ21lbnRzOiBzZWdtZW50ZWRNZXNzYWdlLnNlZ21lbnRzQ291bnQsXHJcblx0XHRcdFx0ZW5jb2Rpbmc6IHNlZ21lbnRlZE1lc3NhZ2UuZW5jb2RpbmdOYW1lLFxyXG5cdFx0XHRcdGNoYXJhY3RlcnM6IHNlZ21lbnRlZE1lc3NhZ2UubnVtYmVyT2ZVbmljb2RlU2NhbGFycyxcclxuXHRcdFx0fTtcclxuXHJcblx0XHRcdHRoaXMudHdpbGlvUmVzdWx0Q291bnRlciA9IHtcclxuXHRcdFx0XHQuLi5yZXN1bHQsXHJcblx0XHRcdFx0ZnVsbHRleHQ6IGBFbmNvZGUgJHtyZXN1bHQuZW5jb2Rpbmd9IC8gQ2hhcnMgJHtyZXN1bHQuY2hhcmFjdGVyc30gLyBTZWdtZW50ICR7cmVzdWx0LnNlZ21lbnRzfWAsXHJcblx0XHRcdH07XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRsZXQgdmFsdWVSZXN1bHQgPSB0aGlzLmdldEJvZHlTdHJpbmc7XHJcblx0XHRcdEFycmF5LmZyb20odmFsdWVzR2VuZXJhbD8udGVtcGxhdGU/LmJvZHk/LmV4YW1wbGVzIHx8IFtdKS5tYXAoXHJcblx0XHRcdFx0KGVudHJ5LCBpbmRleCkgPT4ge1xyXG5cdFx0XHRcdFx0Y29uc3QgcGxhY2Vob2xkZXIgPSBge3ske2VudHJ5fX19YDtcclxuXHRcdFx0XHRcdGNvbnN0IHZhbHVlID0gdmFsdWVzR2VuZXJhbC5wYXJhbUJvZHlbaW5kZXhdPy5uYW1lO1xyXG5cdFx0XHRcdFx0dmFsdWVSZXN1bHQgPSB2YWx1ZVJlc3VsdC5zcGxpdChwbGFjZWhvbGRlcikuam9pbih2YWx1ZSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQpO1xyXG5cclxuXHRcdFx0Y29uc3Qgc2VnbWVudGVkTWVzc2FnZSA9IG5ldyBTZWdtZW50ZWRNZXNzYWdlKHZhbHVlUmVzdWx0KTtcclxuXHRcdFx0Y29uc3QgcmVzdWx0ID0ge1xyXG5cdFx0XHRcdHNlZ21lbnRzOiBzZWdtZW50ZWRNZXNzYWdlLnNlZ21lbnRzQ291bnQsXHJcblx0XHRcdFx0ZW5jb2Rpbmc6IHNlZ21lbnRlZE1lc3NhZ2UuZW5jb2RpbmdOYW1lLFxyXG5cdFx0XHRcdGNoYXJhY3RlcnM6IHNlZ21lbnRlZE1lc3NhZ2UubnVtYmVyT2ZVbmljb2RlU2NhbGFycyxcclxuXHRcdFx0fTtcclxuXHJcblx0XHRcdHRoaXMudHdpbGlvUmVzdWx0Q291bnRlciA9IHtcclxuXHRcdFx0XHQuLi5yZXN1bHQsXHJcblx0XHRcdFx0ZnVsbHRleHQ6IGBFbmNvZGUgJHtyZXN1bHQuZW5jb2Rpbmd9IC8gQ2hhcnMgJHtyZXN1bHQuY2hhcmFjdGVyc30gLyBTZWdtZW50ICR7cmVzdWx0LnNlZ21lbnRzfWAsXHJcblx0XHRcdH07XHJcblx0XHR9XHJcblx0fTtcclxufVxyXG4iXX0=
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhbC1pbmZvcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWRsZmUvY2FtcGFpZ24tbWFuYWdlbWVudC1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL2NhbXBhaWduLW1hbmFnZW1lbnQvbW9kdWxlcy9uZXctY2FtcGFpZ24vZ2VuZXJhbC1pbmZvcm1hdGlvbi9nZW5lcmFsLWluZm9ybWF0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUNOLHdDQUF3QyxFQUN4QyxtQkFBbUIsR0FDbkIsTUFBTSx3QkFBd0IsQ0FBQztBQWVoQztJQXlCQyxxQ0FBb0IsU0FBdUI7UUFBM0MsaUJBRUM7UUFGbUIsY0FBUyxHQUFULFNBQVMsQ0FBYztRQWZwQyxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUNqQyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFHNUIsd0JBQW1CLEdBQUc7WUFDNUIsUUFBUSxFQUFFLENBQUM7WUFDWCxVQUFVLEVBQUUsQ0FBQztZQUNiLFFBQVEsRUFBRSxFQUFFO1lBQ1osUUFBUSxFQUFFLGdDQUFnQztTQUMxQyxDQUFDO1FBcUxLLHlCQUFvQixHQUFHOztZQUM3QixJQUFNLGFBQWEsU0FBRyxLQUFJLENBQUMsc0JBQXNCLDBDQUFFLFdBQVcsRUFBRSxDQUFDO1lBQ2pFLElBQUks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Q0FBQyxJQUFJLENBQUMsUUFBUSxlQUNqQixJQUFJLENBQUMsc0JBQXNCLDBDQUFFLFdBQVcsNENBQUksUUFBUSxDQUFDO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxlQUNsQixJQUFJLENBQUMsc0JBQXNCLDBDQUFFLFdBQVcsNENBQUksU0FBUyxDQUFDO0lBQ3hELENBQUM7SUFFTyxzREFBZ0IsR0FBeEIsVUFBeUIsVUFBVTtRQUNsQyxPQUFPLFVBQVU7YUFDZixVQUFVLENBQUMsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDO2FBQzdDLFVBQVUsQ0FBQyxzQkFBc0IsRUFBRSxxQkFBcUIsQ0FBQzthQUN6RCxVQUFVLENBQUMsZ0NBQWdDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7Z0JBL0s4QixZQUFZOztJQXZCM0M7UUFEQyxNQUFNLEVBQUU7MkVBSU47SUFrQk07UUFBUixLQUFLLEVBQUU7dUVBQWdDO0lBdkI1QiwyQkFBMkI7UUFMdkMsU0FBUyxDQUFDO1lBQ1YsUUFBUSxFQUFFLHNDQUFzQztZQUNoRCxxNlpBQW1EOztTQUVuRCxDQUFDO09BQ1csMkJBQTJCLENBK092QztJQUFELGtDQUFDO0NBQUEsQUEvT0QsSUErT0M7U0EvT1ksMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgU2VnbWVudGVkTWVzc2FnZSB9IGZyb20gJ3Ntcy1zZWdtZW50cy1jYWxjdWxhdG9yJztcclxuaW1wb3J0IHtcclxuXHRHZW5lcmFsSW5mb3JtYXRpb25NZXNzYWdlVmFsaWRhdGlvbkNvbnN0LFxyXG5cdFBsYXRmb3JtT3B0aW9uQ29uc3QsXHJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9jb25zdCc7XHJcblxyXG5pbnRlcmZhY2UgSU1hcHMge1xyXG5cdHpvb206IG51bWJlcjtcclxuXHRsYXRpdHVkZTogbnVtYmVyO1xyXG5cdGxvbmdpdHVkZTogbnVtYmVyO1xyXG5cdGlzRHJhZ2dhYmxlOiBib29sZWFuO1xyXG5cdGlzRG91YmxlQ2xpY2tab29tOiBib29sZWFuO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2xpYi1uZXctY2FtcGFpZ24tZ2VuZXJhbC1pbmZvcm1hdGlvbicsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2dlbmVyYWwtaW5mb3JtYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL2dlbmVyYWwtaW5mb3JtYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEdlbmVyYWxJbmZvcm1hdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblx0QE91dHB1dCgpXHJcblx0cHVibGljIGdlbmVyYWxJbmZvcm1hdGlvbjogRXZlbnRFbWl0dGVyPHtcclxuXHRcdHBhcmVudDogRm9ybUdyb3VwO1xyXG5cdFx0Y2hpbGQ6IEZvcm1Hcm91cDtcclxuXHR9PjtcclxuXHJcblx0cHVibGljIGZvcm06IEZvcm1Hcm91cDtcclxuXHRwdWJsaWMgY2hhbm5lbE9wdGlvbjogYW55W107XHJcblx0cHVibGljIGdlbmVyYWxJbmZvcm1hdGlvbkZvcm06IEZvcm1Hcm91cDtcclxuXHRwdWJsaWMgaXNUb3VjaGVkV0FGb3JtOiBib29sZWFuID0gZmFsc2U7XHJcblx0cHVibGljIGlzVG91Y2hlZFNNU0Zvcm06IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRwdWJsaWMgaXNUb3VjaGVkRW1haWxGb3JtOiBib29sZWFuID0gZmFsc2U7XHJcblx0cHVibGljIGlzU2hvd01vcmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRwdWJsaWMgdmFsaWRhdGlvbk1lc3NhZ2VzOiBhbnk7XHJcblx0cHVibGljIG1hcHM6IElNYXBzO1xyXG5cdHB1YmxpYyB0d2lsaW9SZXN1bHRDb3VudGVyID0ge1xyXG5cdFx0c2VnbWVudHM6IDAsXHJcblx0XHRjaGFyYWN0ZXJzOiAwLFxyXG5cdFx0ZW5jb2Rpbmc6ICcnLFxyXG5cdFx0ZnVsbHRleHQ6IGBFbmNvZGUgLSAvIENoYXJzIDAgLyBTZWdtZW50IDFgLFxyXG5cdH07XHJcblxyXG5cdEBJbnB1dCgpIHB1YmxpYyBpc1JlYWRPbmx5TW9kZTogYm9vbGVhbjtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xyXG5cdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdHRoaXMuY2hhbm5lbE9wdGlvbiA9IFBsYXRmb3JtT3B0aW9uQ29uc3Q7XHJcblx0XHR0aGlzLnZhbGlkYXRpb25NZXNzYWdlcyA9IEdlbmVyYWxJbmZvcm1hdGlvbk1lc3NhZ2VWYWxpZGF0aW9uQ29uc3Q7XHJcblx0XHR0aGlzLm1hcHMgPSB7XHJcblx0XHRcdHpvb206IDE1LFxyXG5cdFx0XHRsYXRpdHVkZTogbnVsbCxcclxuXHRcdFx0bG9uZ2l0dWRlOiBudWxsLFxyXG5cdFx0XHRpc0RyYWdnYWJsZTogdHJ1ZSxcclxuXHRcdFx0aXNEb3VibGVDbGlja1pvb206IHRydWUsXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuaW5pdEZvcm0oKTtcclxuXHRcdHRoaXMuaW5pdEVkaXQoKTtcclxuXHRcdHRoaXMuaW5pdERpc2FibGUoKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdEZvcm0oKTogdm9pZCB7XHJcblx0XHR0aGlzLmZvcm0gPSBuZXcgRm9ybUdyb3VwKHtcclxuXHRcdFx0aWQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuXHRcdFx0Y2FtcGFpZ25OYW1lOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgW1xyXG5cdFx0XHRcdFZhbGlkYXRvcnMucmVxdWlyZWQsXHJcblx0XHRcdFx0VmFsaWRhdG9ycy5tYXhMZW5ndGgoMTAwKSxcclxuXHRcdFx0XSksXHJcblx0XHRcdG1lZGl1bTogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcblx0XHR9KTtcclxuXHJcblx0XHR0aGlzLmZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcblx0XHRcdHRoaXMuaXNUb3VjaGVkV0FGb3JtID0gIXRoaXMuaXNUb3VjaGVkV0FGb3JtO1xyXG5cdFx0XHR0aGlzLmlzVG91Y2hlZFNNU0Zvcm0gPSAhdGhpcy5pc1RvdWNoZWRTTVNGb3JtO1xyXG5cdFx0XHR0aGlzLmlzVG91Y2hlZEVtYWlsRm9ybSA9ICF0aGlzLmlzVG91Y2hlZEVtYWlsRm9ybTtcclxuXHJcblx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uLmVtaXQoe1xyXG5cdFx0XHRcdHBhcmVudDogdGhpcy5mb3JtLFxyXG5cdFx0XHRcdGNoaWxkOiB0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0sXHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0XHRzZXRJbnRlcnZhbCgoKSA9PiB7XHJcblx0XHRcdHRoaXMub25DaGVja1R3aWxpb0NvdW50ZXIoKTtcclxuXHRcdH0sIDQwMCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRFZGl0KCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgY2FtcGFpZ24gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndGVsaW4uY2FtcGFpZ24nKVxyXG5cdFx0XHQ/IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3RlbGluLmNhbXBhaWduJykpXHJcblx0XHRcdDoge307XHJcblxyXG5cdFx0aWYgKE9iamVjdC5lbnRyaWVzKGNhbXBhaWduKS5sZW5ndGggPT09IDApIHJldHVybjtcclxuXHJcblx0XHR0aGlzLmZvcm0uZ2V0KCdpZCcpLnNldFZhbHVlKGNhbXBhaWduPy5nZW5lcmFsSW5mb3JtYXRpb24/LmlkKTtcclxuXHRcdHRoaXMuZm9ybVxyXG5cdFx0XHQuZ2V0KCdjYW1wYWlnbk5hbWUnKVxyXG5cdFx0XHQuc2V0VmFsdWUoY2FtcGFpZ24/LmdlbmVyYWxJbmZvcm1hdGlvbj8uZm9ybS5jYW1wYWlnbk5hbWUpO1xyXG5cdFx0dGhpcy5mb3JtXHJcblx0XHRcdC5nZXQoJ21lZGl1bScpXHJcblx0XHRcdC5zZXRWYWx1ZShjYW1wYWlnbj8uZ2VuZXJhbEluZm9ybWF0aW9uPy5mb3JtLm1lZGl1bSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXREaXNhYmxlKCk6IHZvaWQge1xyXG5cdFx0aWYgKCF0aGlzLmlzUmVhZE9ubHlNb2RlKSB7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLmZvcm0uZGlzYWJsZSgpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHVwZGF0ZUdlbmVyYWxJbmZvcm1hdGlvbkZvcm0oZm9ybTogRm9ybUdyb3VwKTogdm9pZCB7XHJcblx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0gPSBmb3JtO1xyXG5cdFx0dGhpcy5pc1Nob3dNb3JlID0gZmFsc2U7XHJcblxyXG5cdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb24uZW1pdCh7XHJcblx0XHRcdHBhcmVudDogdGhpcy5mb3JtLFxyXG5cdFx0XHRjaGlsZDogdGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtLFxyXG5cdFx0fSk7XHJcblxyXG5cdFx0aWYgKHRoaXMuZ2V0TWVkaWEgPT09ICdMT0NBVElPTicpIHRoaXMuZ2V0TG9jYXRpb24oKTtcclxuXHR9XHJcblxyXG5cdGdldCBnZXRIZWFkZXIoKTogc3RyaW5nIHtcclxuXHRcdHJldHVybiB0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LmZyb20/Lm5hbWUgfHwgJyc7XHJcblx0fVxyXG5cclxuXHRnZXQgZ2V0Qm9keVN0cmluZygpOiBzdHJpbmcge1xyXG5cdFx0Y29uc3QgYm9keSA9XHJcblx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGV4dCB8fFxyXG5cdFx0XHR0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LnRlbXBsYXRlPy5ib2R5Py50ZXh0IHx8XHJcblx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8uYm9keT8udGV4dDtcclxuXHJcblx0XHRyZXR1cm4gKFxyXG5cdFx0XHRib2R5XHJcblx0XHRcdFx0Py5zcGxpdCgvXFxcXG58XFxuLylcclxuXHRcdFx0XHQuam9pbignPGJyIC8+JylcclxuXHRcdFx0XHQuc3BsaXQoL1xcXFx0fFxcdC8pXHJcblx0XHRcdFx0LmpvaW4oJyAgICAnKSA/PyAnJ1xyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldCBnZXRCb2R5KCk6IGFueSB7XHJcblx0XHRjb25zdCBib2R5ID1cclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50ZXh0IHx8XHJcblx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGVtcGxhdGU/LmJvZHk/LnRleHQgfHxcclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5ib2R5Py50ZXh0O1xyXG5cclxuXHRcdHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChcclxuXHRcdFx0dGhpcy5maXhHZW5lcmF0ZWRIdG1sKFxyXG5cdFx0XHRcdGJvZHlcclxuXHRcdFx0XHRcdD8uc3BsaXQoL1xcXFxufFxcbi8pXHJcblx0XHRcdFx0XHQuam9pbignPGJyIC8+JylcclxuXHRcdFx0XHRcdC5zcGxpdCgvXFxcXHR8XFx0LylcclxuXHRcdFx0XHRcdC5qb2luKCcgICAgJykgPz8gJydcclxuXHRcdFx0KVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldCBnZXRNZWRpYSgpOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuIHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8ubWVkaWEgfHwgJyc7XHJcblx0fVxyXG5cclxuXHRnZXQgZ2V0VGVtcGxhdGUoKTogYW55IHtcclxuXHRcdHJldHVybiB0aGlzLmdlbmVyYWxJbmZvcm1hdGlvbkZvcm0/LmdldFJhd1ZhbHVlKCk/LnRlbXBsYXRlIHx8IHt9O1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldFRlbXBsYXRlQnV0dG9uKCk6IGFueSB7XHJcblx0XHRjb25zdCBsaW1pdCA9XHJcblx0XHRcdCF0aGlzLmlzU2hvd01vcmUgJiYgdGhpcy5nZXRUZW1wbGF0ZT8uYnV0dG9ucz8ubGVuZ3RoID4gM1xyXG5cdFx0XHRcdD8gMlxyXG5cdFx0XHRcdDogdGhpcy5nZXRUZW1wbGF0ZT8uYnV0dG9ucz8ubGVuZ3RoO1xyXG5cclxuXHRcdHJldHVybiBbLi4udGhpcy5nZXRUZW1wbGF0ZT8uYnV0dG9uc10uc3BsaWNlKDAsIGxpbWl0KSB8fCBbXTtcclxuXHR9XHJcblxyXG5cdGdldCBkaXNwbGF5RmlsZSgpOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuIChcclxuXHRcdFx0KFxyXG5cdFx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGFyZ2V0VVJMIHx8XHJcblx0XHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy50ZW1wbGF0ZT8uaGVhZGVyXHJcblx0XHRcdFx0XHQ/LnVybFxyXG5cdFx0XHQpPy5yZXBsYWNlKCdhZGxzYW5kYm94LmNvbScsICdhZGxzYW5kYm94Lm5ldCcpID8/ICcnXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyogTElORSAqL1xyXG5cdGdldCBpc1RleHQoKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5jaGFubmVsID09PSAnVEVYVCc7XHJcblx0fVxyXG5cclxuXHRnZXQgaXNKU09OKCk6IGJvb2xlYW4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8uaXNKU09OO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldFRlbXBsYXRlTGluZSgpOiBhbnkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaXNKU09OXHJcblx0XHRcdD8gSlNPTi5wYXJzZShcclxuXHRcdFx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGVtcGxhdGU/LmJvZHlcclxuXHRcdFx0XHRcdFx0Py50ZXh0XHJcblx0XHRcdCAgKVxyXG5cdFx0XHQ6IHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8udGVtcGxhdGU/LmJvZHk/LnRleHQ7XHJcblx0fVxyXG5cdC8qIC4vIExJTkUgKi9cclxuXHJcblx0cHJpdmF0ZSBnZXRMb2NhdGlvbigpOiB2b2lkIHtcclxuXHRcdHRoaXMubWFwcy5sYXRpdHVkZSA9XHJcblx0XHRcdHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKT8ubGF0aXR1ZGU7XHJcblx0XHR0aGlzLm1hcHMubG9uZ2l0dWRlID1cclxuXHRcdFx0dGhpcy5nZW5lcmFsSW5mb3JtYXRpb25Gb3JtPy5nZXRSYXdWYWx1ZSgpPy5sb25naXR1ZGU7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGZpeEdlbmVyYXRlZEh0bWwoaHRtbFN0cmluZykge1xyXG5cdFx0cmV0dXJuIGh0bWxTdHJpbmdcclxuXHRcdFx0LnJlcGxhY2VBbGwoL2RpdiBzcmM9XCJodHRwL2csICdpbWcgc3JjPVwiaHR0cCcpXHJcblx0XHRcdC5yZXBsYWNlQWxsKC9kaXYgc3JjPVwiZGF0YTppbWFnZS9nLCAnaW1nIHNyYz1cImRhdGE6aW1hZ2UnKVxyXG5cdFx0XHQucmVwbGFjZUFsbCgvRHJhZyBhbmQgZHJvcCB5b3VyIGltYWdlIGhlcmUvZywgJycpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIG9uQ2hlY2tUd2lsaW9Db3VudGVyID0gKCk6IHZvaWQgPT4ge1xyXG5cdFx0Y29uc3QgdmFsdWVzR2VuZXJhbCA9IHRoaXMuZ2VuZXJhbEluZm9ybWF0aW9uRm9ybT8uZ2V0UmF3VmFsdWUoKTtcclxuXHRcdGlmICh2YWx1ZXNHZW5lcmFsPy5jaGFubmVsID09PSAnVEVYVCcpIHtcclxuXHRcdFx0Y29uc3Qgc2VnbWVudGVkTWVzc2FnZSA9IG5ldyBTZWdtZW50ZWRNZXNzYWdlKHRoaXMuZ2V0Qm9keVN0cmluZyk7XHJcblx0XHRcdGNvbnN0IHJlc3VsdCA9IHtcclxuXHRcdFx0XHRzZWdtZW50czogc2VnbWVudGVkTWVzc2FnZS5zZWdtZW50c0NvdW50LFxyXG5cdFx0XHRcdGVuY29kaW5nOiBzZWdtZW50ZWRNZXNzYWdlLmVuY29kaW5nTmFtZSxcclxuXHRcdFx0XHRjaGFyYWN0ZXJzOiBzZWdtZW50ZWRNZXNzYWdlLm51bWJlck9mVW5pY29kZVNjYWxhcnMsXHJcblx0XHRcdH07XHJcblxyXG5cdFx0XHR0aGlzLnR3aWxpb1Jlc3VsdENvdW50ZXIgPSB7XHJcblx0XHRcdFx0Li4ucmVzdWx0LFxyXG5cdFx0XHRcdGZ1bGx0ZXh0OiBgRW5jb2RlICR7cmVzdWx0LmVuY29kaW5nfSAvIENoYXJzICR7cmVzdWx0LmNoYXJhY3RlcnN9IC8gU2VnbWVudCAke3Jlc3VsdC5zZWdtZW50c31gLFxyXG5cdFx0XHR9O1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0bGV0IHZhbHVlUmVzdWx0ID0gdGhpcy5nZXRCb2R5U3RyaW5nO1xyXG5cdFx0XHRBcnJheS5mcm9tKHZhbHVlc0dlbmVyYWw/LnRlbXBsYXRlPy5ib2R5Py5leGFtcGxlcyB8fCBbXSkubWFwKFxyXG5cdFx0XHRcdChlbnRyeSwgaW5kZXgpID0+IHtcclxuXHRcdFx0XHRcdGNvbnN0IHBsYWNlaG9sZGVyID0gYHt7JHtlbnRyeX19fWA7XHJcblx0XHRcdFx0XHRjb25zdCB2YWx1ZSA9IHZhbHVlc0dlbmVyYWwucGFyYW1Cb2R5W2luZGV4XT8ubmFtZTtcclxuXHRcdFx0XHRcdHZhbHVlUmVzdWx0ID0gdmFsdWVSZXN1bHQuc3BsaXQocGxhY2Vob2xkZXIpLmpvaW4odmFsdWUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0KTtcclxuXHJcblx0XHRcdGNvbnN0IHNlZ21lbnRlZE1lc3NhZ2UgPSBuZXcgU2VnbWVudGVkTWVzc2FnZSh2YWx1ZVJlc3VsdCk7XHJcblx0XHRcdGNvbnN0IHJlc3VsdCA9IHtcclxuXHRcdFx0XHRzZWdtZW50czogc2VnbWVudGVkTWVzc2FnZS5zZWdtZW50c0NvdW50LFxyXG5cdFx0XHRcdGVuY29kaW5nOiBzZWdtZW50ZWRNZXNzYWdlLmVuY29kaW5nTmFtZSxcclxuXHRcdFx0XHRjaGFyYWN0ZXJzOiBzZWdtZW50ZWRNZXNzYWdlLm51bWJlck9mVW5pY29kZVNjYWxhcnMsXHJcblx0XHRcdH07XHJcblxyXG5cdFx0XHR0aGlzLnR3aWxpb1Jlc3VsdENvdW50ZXIgPSB7XHJcblx0XHRcdFx0Li4ucmVzdWx0LFxyXG5cdFx0XHRcdGZ1bGx0ZXh0OiBgRW5jb2RlICR7cmVzdWx0LmVuY29kaW5nfSAvIENoYXJzICR7cmVzdWx0LmNoYXJhY3RlcnN9IC8gU2VnbWVudCAke3Jlc3VsdC5zZWdtZW50c31gLFxyXG5cdFx0XHR9O1xyXG5cdFx0fVxyXG5cdH07XHJcbn1cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './general-information.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWRsZmUvY2FtcGFpZ24tbWFuYWdlbWVudC1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL2NhbXBhaWduLW1hbmFnZW1lbnQvbW9kdWxlcy9uZXctY2FtcGFpZ24vZ2VuZXJhbC1pbmZvcm1hdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZW5lcmFsLWluZm9ybWF0aW9uLmNvbXBvbmVudCc7XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './new-campaign.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWRsZmUvY2FtcGFpZ24tbWFuYWdlbWVudC1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL2NhbXBhaWduLW1hbmFnZW1lbnQvbW9kdWxlcy9uZXctY2FtcGFpZ24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbmV3LWNhbXBhaWduLmNvbXBvbmVudCc7XHJcbiJdfQ==
|