{"version":3,"sources":["webpack:///D:/Source Code/Contractor Ui/contractor.ui/node_modules/moment/locale sync ^\\.\\/.*$","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/footer/footer.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/header/header.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/layout/admin/admin.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/modules/unsubscribe/pages/unsubscribe/unsubscribe.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/advance-diagnostic-modal/advance-diagnostic-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alert-discovery-chart/alert-discovery-chart.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alert-discovery-modal/alert-discovery-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alerts-table/alerts-table.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/assign-technician-modal/assign-technician-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/billing/billing.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/button/button.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/change-password/change-password.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/confirmation-modal/confirmation-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/create-contractor/create-contractor.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/datetimepicker/datetimepicker.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/guide-modal/guide-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-comfortbridge-modal/hvac-comfortbridge-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-detail-modal/hvac-detail-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-operations/hvac-operations.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/info-modal/info-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/installation-report/installation-report.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/loading-symbol/loading-symbol.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/maps/maps.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/modal-header/modal-header.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/overlay/overlay.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pagination-limit-dropdown/pagination-limit-dropdown.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pagination/pagination.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/performance-board-details/performance-board-details.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/personal-info-modal/personal-info-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/personal-info-types/personal-info-types.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pre-season-report/pre-season-report.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/read-more-modal/read-more-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/share-alert-modal/share-alert-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/spline-chart/spline-chart.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/subscription/subscription.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/tabs/tabs.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/toaster/toaster.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/transfer-delete-account/transfer-delete-account.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/upload-list-modal/upload-list-modal.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/welcome-screen/welcome-screen.component.html","webpack:///./src/app/app.component.html","webpack:///./src/app/shared-contractor/components/create-customer/create-customer.component.html","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/core.module.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/footer/footer.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/footer/footer.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/guards/auth.guard.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/header/header.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/core/header/header.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/layout/admin/admin.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/layout/admin/admin.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/layout/layout.module.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/modules/auth/services/auth.service.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/modules/meli/services/meli.service.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/modules/technician/services/technician.service.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/modules/unsubscribe/pages/unsubscribe/unsubscribe.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/modules/unsubscribe/pages/unsubscribe/unsubscribe.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/advance-diagnostic-modal/advance-diagnostic-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/advance-diagnostic-modal/advance-diagnostic-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alert-discovery-chart/alert-discovery-chart.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alert-discovery-chart/alert-discovery-chart.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alert-discovery-modal/alert-discovery-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alert-discovery-modal/alert-discovery-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alerts-table/alerts-table.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/alerts-table/alerts-table.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/assign-technician-modal/assign-technician-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/assign-technician-modal/assign-technician-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/billing/billing.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/billing/billing.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/button/button.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/button/button.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/change-password/change-password.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/change-password/change-password.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/confirmation-modal/confirmation-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/confirmation-modal/confirmation-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/create-contractor/create-contractor.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/create-contractor/create-contractor.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/datetimepicker/datetimepicker.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/datetimepicker/datetimepicker.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/guide-modal/guide-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/guide-modal/guide-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-comfortbridge-modal/hvac-comfortbridge-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-comfortbridge-modal/hvac-comfortbridge-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-detail-modal/hvac-detail-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-detail-modal/hvac-detail-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-operations/hvac-operations.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/hvac-operations/hvac-operations.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/info-modal/info-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/info-modal/info-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/installation-report/installation-report.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/installation-report/installation-report.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/loading-symbol/loading-symbol.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/loading-symbol/loading-symbol.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/maps/maps.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/maps/maps.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/modal-header/modal-header.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/modal-header/modal-header.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/overlay/overlay.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/overlay/overlay.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pagination-limit-dropdown/pagination-limit-dropdown.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pagination-limit-dropdown/pagination-limit-dropdown.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pagination/pagination.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pagination/pagination.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/performance-board-details/performance-board-details.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/performance-board-details/performance-board-details.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/personal-info-modal/personal-info-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/personal-info-modal/personal-info-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/personal-info-types/personal-info-types.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/personal-info-types/personal-info-types.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pre-season-report/pre-season-report.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/pre-season-report/pre-season-report.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/read-more-modal/read-more-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/read-more-modal/read-more-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/share-alert-modal/share-alert-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/share-alert-modal/share-alert-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/spline-chart/spline-chart.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/spline-chart/spline-chart.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/subscription/subscription.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/subscription/subscription.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/tabs/tabs.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/tabs/tabs.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/toaster/toaster.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/toaster/toaster.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/transfer-delete-account/transfer-delete-account.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/transfer-delete-account/transfer-delete-account.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/upload-list-modal/upload-list-modal.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/upload-list-modal/upload-list-modal.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/welcome-screen/welcome-screen.component.scss","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/components/welcome-screen/welcome-screen.component.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/api.constant.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/base-url-types.constant.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/commom.constant.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/role.constant.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/site-name.constant.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/sorting-enum.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/svg.constant.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/constants/toaster.enum.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/directives/close-pop-over.directive.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/directives/scroll.directive.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/alerts.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/assest-model.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/auth.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/billingaccount.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/common.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/contractor.modal.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/control.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/customer.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/dataac.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/graph.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/inventory.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/meli.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/preseason.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/properties.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/search.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/models/technician.model.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/pipes/moment-date.pipe.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/pipes/reports-preseason-in-array.pipe.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/pipes/safe-pipe.pipe.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/services/api.service.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/services/helper.service.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/services/shared.service.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/app/shared/shared.module.ts","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/Current-Contractor-Black.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/Current-Contractor-Blue.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/Current-Contractor-White.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/cellExcellent.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/cellFair.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/cellGood.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/cellWeak.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/cellular_exc_icon.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/defaultLogo.png","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/noimage.jpg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_empty_sensor.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_failure.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_incomplete.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_minor_error.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_pass.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_sensor_inactive.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_sensor_notworking.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/report_sensor_working.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/wi-fi_good_icon.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/wifiExcellent.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/wifiFair.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/wifiGood.svg","webpack:///D:/Source Code/Contractor Ui/contractor.ui/src/assets/images/wifiWeak.svg","webpack:///../channel/src/app/shared-channel/constants/api.constants.ts","webpack:///../channel/src/app/shared-channel/services/shared.service.ts","webpack:///../channel/src/environments/environment.ts","webpack:///../channel/src/environments/version.ts","webpack:///../mdu/src/app/shared-mdu/constants/api.constants.ts","webpack:///../mdu/src/environments/environment.ts","webpack:///../mdu/src/environments/version.ts","webpack:///./$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.scss","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/contractor-routing.module.ts","webpack:///./src/app/modules/customer/services/customer.service.ts","webpack:///./src/app/shared-contractor/components/create-customer/create-customer.component.scss","webpack:///./src/app/shared-contractor/components/create-customer/create-customer.component.ts","webpack:///./src/app/shared-contractor/constants/api.constant.ts","webpack:///./src/app/shared-contractor/services/shared.service.ts","webpack:///./src/app/shared-contractor/shared-contractor.module.ts","webpack:///./src/environments/environment.ts","webpack:///./src/environments/version.ts","webpack:///./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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","file":"main.js","sourcesContent":["var map = {\n\t\"./af\": \"../../node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"../../node_modules/moment/locale/af.js\",\n\t\"./ar\": \"../../node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"../../node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"../../node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"../../node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"../../node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"../../node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"../../node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"../../node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"../../node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"../../node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"../../node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"../../node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"../../node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"../../node_modules/moment/locale/ar.js\",\n\t\"./az\": \"../../node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"../../node_modules/moment/locale/az.js\",\n\t\"./be\": \"../../node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"../../node_modules/moment/locale/be.js\",\n\t\"./bg\": \"../../node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"../../node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"../../node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"../../node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"../../node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"../../node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"../../node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"../../node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"../../node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"../../node_modules/moment/locale/bo.js\",\n\t\"./br\": \"../../node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"../../node_modules/moment/locale/br.js\",\n\t\"./bs\": \"../../node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"../../node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"../../node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"../../node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"../../node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"../../node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"../../node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"../../node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"../../node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"../../node_modules/moment/locale/cy.js\",\n\t\"./da\": \"../../node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"../../node_modules/moment/locale/da.js\",\n\t\"./de\": \"../../node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"../../node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"../../node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"../../node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"../../node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"../../node_modules/moment/locale/de.js\",\n\t\"./dv\": \"../../node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"../../node_modules/moment/locale/dv.js\",\n\t\"./el\": \"../../node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"../../node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"../../node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"../../node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"../../node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"../../node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"../../node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"../../node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"../../node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"../../node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"../../node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"../../node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"../../node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"../../node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"../../node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"../../node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"../../node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"../../node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"../../node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"../../node_modules/moment/locale/eo.js\",\n\t\"./es\": \"../../node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"../../node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"../../node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"../../node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"../../node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"../../node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"../../node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"../../node_modules/moment/locale/es.js\",\n\t\"./et\": \"../../node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"../../node_modules/moment/locale/et.js\",\n\t\"./eu\": \"../../node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"../../node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"../../node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"../../node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"../../node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"../../node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"../../node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"../../node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"../../node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"../../node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"../../node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"../../node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"../../node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"../../node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"../../node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"../../node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"../../node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"../../node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"../../node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"../../node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"../../node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"../../node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"../../node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"../../node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"../../node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"../../node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"../../node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"../../node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"../../node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"../../node_modules/moment/locale/gu.js\",\n\t\"./he\": \"../../node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"../../node_modules/moment/locale/he.js\",\n\t\"./hi\": \"../../node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"../../node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"../../node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"../../node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"../../node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"../../node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"../../node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"../../node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"../../node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"../../node_modules/moment/locale/id.js\",\n\t\"./is\": \"../../node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"../../node_modules/moment/locale/is.js\",\n\t\"./it\": \"../../node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"../../node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"../../node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"../../node_modules/moment/locale/it.js\",\n\t\"./ja\": \"../../node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"../../node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"../../node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"../../node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"../../node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"../../node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"../../node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"../../node_modules/moment/locale/kk.js\",\n\t\"./km\": \"../../node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"../../node_modules/moment/locale/km.js\",\n\t\"./kn\": \"../../node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"../../node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"../../node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"../../node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"../../node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"../../node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"../../node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"../../node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"../../node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"../../node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"../../node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"../../node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"../../node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"../../node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"../../node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"../../node_modules/moment/locale/lv.js\",\n\t\"./me\": \"../../node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"../../node_modules/moment/locale/me.js\",\n\t\"./mi\": \"../../node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"../../node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"../../node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"../../node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"../../node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"../../node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"../../node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"../../node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"../../node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"../../node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"../../node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"../../node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"../../node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"../../node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"../../node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"../../node_modules/moment/locale/mt.js\",\n\t\"./my\": \"../../node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"../../node_modules/moment/locale/my.js\",\n\t\"./nb\": \"../../node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"../../node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"../../node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"../../node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"../../node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"../../node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"../../node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"../../node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"../../node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"../../node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"../../node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"../../node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"../../node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"../../node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"../../node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"../../node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"../../node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"../../node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"../../node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"../../node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"../../node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"../../node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"../../node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"../../node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"../../node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"../../node_modules/moment/locale/sd.js\",\n\t\"./se\": \"../../node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"../../node_modules/moment/locale/se.js\",\n\t\"./si\": \"../../node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"../../node_modules/moment/locale/si.js\",\n\t\"./sk\": \"../../node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"../../node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"../../node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"../../node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"../../node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"../../node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"../../node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"../../node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"../../node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"../../node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"../../node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"../../node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"../../node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"../../node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"../../node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"../../node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"../../node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"../../node_modules/moment/locale/ta.js\",\n\t\"./te\": \"../../node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"../../node_modules/moment/locale/te.js\",\n\t\"./tet\": \"../../node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"../../node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"../../node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"../../node_modules/moment/locale/tg.js\",\n\t\"./th\": \"../../node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"../../node_modules/moment/locale/th.js\",\n\t\"./tk\": \"../../node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"../../node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"../../node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"../../node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"../../node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"../../node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"../../node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"../../node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"../../node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"../../node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"../../node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"../../node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"../../node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"../../node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"../../node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"../../node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"../../node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"../../node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"../../node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"../../node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"../../node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"../../node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"../../node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"../../node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"../../node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"../../node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"../../node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"../../node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"../../node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"../../node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"../../node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"../../node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"../../node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"../../node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"../../node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"../../node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"../../node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"../../node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"../../node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","module.exports = \"
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{value.name}} - {{value.store}}\\r\\n
\\r\\n
\\r\\n
\\r\\n No search result found!\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n {{contractorInformation.contractorName}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{userEmail}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{mduInformation.contractorName}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Contractor_Name\\r\\n \\r\\n \\r\\n Admin_User_Name\\r\\n \\r\\n \\r\\n Mdu_User_Name\\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n

\\r\\n My Technicians\\r\\n

\\r\\n

\\r\\n Profile\\r\\n

\\r\\n

Change Password

\\r\\n

\\r\\n Billing

\\r\\n

Transfer/Delete Account

\\r\\n

\\r\\n Support\\r\\n

\\r\\n \\r\\n \\r\\n

\\r\\n Log Out

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

{{firmName}}

\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n

Processing...

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n From:\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n

From Date should be less than or equal to To Date

\\r\\n
\\r\\n
\\r\\n
\\r\\n To: \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
    \\r\\n
  • Overview
  • \\r\\n
  • \\r\\n Max\\r\\n \\r\\n \\r\\n \\r\\n T\\r\\n
  • \\r\\n
  • Daily Runtime
  • \\r\\n\\r\\n
  • Daily Run Cycles
  • \\r\\n\\r\\n
  • Avg Cycle Runtime
  • \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n All\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Fan\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Cooling\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Heating\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n

No data available for Air Temperature.

\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

No data available for Avg ∆T.

\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

No data available for Daily Runtime.

\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

No data available for Daily Run Cycles.

\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

No data available for Avg Cycle Runtime.

\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n \\r\\n
\"","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Technician Remarks\\r\\n \\r\\n Assign/Re-Assign Technician\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{ alert.jobTechnicianInfo.technicianName }}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n No Alerts found!\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n Alert\\r\\n
\\r\\n
\\r\\n \\r\\n Time\\r\\n \\r\\n \\r\\n \\r\\n Resolved Time\\r\\n \\r\\n \\r\\n Alert Discovery\\r\\n \\r\\n \\r\\n
\\r\\n Technician\\r\\n \\r\\n
\\r\\n
\\r\\n {{ alert.alertName }}\\r\\n \\r\\n {{ alert.timeStamp | momentDate: \\\"DD-MMM-YYYY hh:mm:ss A\\\" }}\\r\\n \\r\\n \\r\\n {{\\r\\n alert.jobTechnicianInfo.resolvedTime\\r\\n | momentDate: \\\"DD-MMM-YYYY hh:mm:ss A\\\"\\r\\n }}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n {{ alert.jobTechnicianInfo.remarks }}\\r\\n

\\r\\n \\r\\n \\r\\n (\\r\\n read more ...)\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n (\\r\\n read less )\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Re-Assign\\r\\n \\r\\n\\r\\n \\r\\n Assign\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Board Serial Number:

\\r\\n {{alertItem.meliSerialNo}}\\r\\n
\\r\\n
\\r\\n

Location:

\\r\\n {{boardLocation}}\\r\\n
\\r\\n
\\r\\n

Select Technician:

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
    \\r\\n
  • Credit Card
  • \\r\\n
  • \\r\\n ACH\\r\\n
  • \\r\\n
  • \\r\\n Billing History\\r\\n
  • \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n

You are currently using this credit\\r\\n card\\r\\n as your\\r\\n primary funding source.

\\r\\n

You are currently using a ACH as\\r\\n your\\r\\n funding source.\\r\\n Make\\r\\n this card my primary funding source.\\r\\n

\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Remove This Card

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n

\\r\\n Your card's expiration date is incomplete.\\r\\n

\\r\\n

\\r\\n Your card's expiration year is in the past.\\r\\n

\\r\\n

\\r\\n Your card's expiration month is in the past.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n

\\r\\n Invalid Text\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n

\\r\\n Invalid Text\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

You are currently using ACH as your\\r\\n primary\\r\\n funding\\r\\n source.

\\r\\n

You are currently using a credit card as\\r\\n your funding\\r\\n source. Make\\r\\n ACH\\r\\n my primary funding source.

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Remove Account

\\r\\n

\\r\\n Verify Account

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n {{bill.meliSerialNumber}}\\r\\n

\\r\\n
\\r\\n \\r\\n {{details.timeStamp | momentDate: 'DD/MM/YY hh:mmA'}}\\r\\n
\\r\\n
\\r\\n {{bill.planName}} {{details.reason}}\\r\\n
\\r\\n
{{details.amount}}
\\r\\n
\\r\\n Tx ID:\\r\\n {{details.txId}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n {{bill.meliSerialNumber}}\\r\\n

\\r\\n
\\r\\n
\\r\\n -\\r\\n
\\r\\n
\\r\\n {{bill.planName}}\\r\\n
\\r\\n
\\r\\n -\\r\\n
\\r\\n
\\r\\n Tx ID:\\r\\n -\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n

Stripe sent two micro-deposits to the funding source on Jun 15.

\\r\\n

Please verify both deposit amounts:

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"\\r\\n \\r\\n \\r\\n {{buttonName}}\\r\\n\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n Password must be alphanumeric with min 8 - max 16 characters, 1 uppercase,1 lowercase and a special character.\\r\\n

\\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n Old password and new password cannot be same\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n Password mismatch\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n

{{modalTitle}}

\\r\\n
\\r\\n\\r\\n

\\r\\n {{modalTitle}}\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

\\r\\n {{line1Content}}\\r\\n

\\r\\n

\\r\\n {{line2Content}}\\r\\n

\\r\\n

\\r\\n {{line3Content}}\\r\\n

\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n {{checkboxText}}\\r\\n
\\r\\n\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n {{value.boardSerialNumber }}- {{value.message}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

\\r\\n {{line1Content}} {{count}} {{count>1?'errors':'error'}}\\r\\n (View Error Log)\\r\\n

\\r\\n

\\r\\n {{line2Content}}\\r\\n

\\r\\n

\\r\\n {{line3Content}}\\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n

*Required Field

\\r\\n

\\r\\n Company Details\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Required\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n \\r\\n Invalid Email\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n \\r\\n Invalid Email\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Upload\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\\"logo\\\"\\r\\n \\\"your\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

I would like to recieve:

\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Major Alerts\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n Minor Alerts\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n +\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n -\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n

\\r\\n Other Details\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n = 48\\\"\\r\\n class=\\\"p10 background-color_white-secondary border_transparent_01 outline_none line-height_14 min-height_50 border-radius_5 font-size_13 min-width_270\\\"\\r\\n formControlName=\\\"noOfTechnicians\\\" />\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

Please double-check the email address on file and click here to resend the Keen Home Pro Contractor Portal invitation.

\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n

\\r\\n Guided Tour\\r\\n

\\r\\n
\\r\\n
\\r\\n

{{title}}

\\r\\n

\\r\\n SKIP\\r\\n

\\r\\n
\\r\\n
\\r\\n {{content}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n

System

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Configuration

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Status

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Settings

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n Furnace\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Configuration

\\r\\n \\r\\n

\\r\\n {{config.display_name}}\\r\\n {{config.display_value}} {{config.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Status

\\r\\n \\r\\n

\\r\\n {{status.display_name}}\\r\\n {{status.display_value}} {{status.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Settings

\\r\\n \\r\\n

\\r\\n {{setting.display_name}}\\r\\n {{setting.display_value}} {{setting.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n Heat Pump\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Configuration

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Status

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Settings

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n AC\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Configuration

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Status

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Settings

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n Air Handler\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Configuration

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Status

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Settings

\\r\\n \\r\\n \\r\\n

\\r\\n {{data.display_name}}\\r\\n {{data.display_value}} {{data.unitName ||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

No Data Available

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

System Config:\\r\\n {{hvac.assetModelInfo.systemConfiguration==null?'':hvac.assetModelInfo.systemConfiguration.value}}\\r\\n

\\r\\n
\\r\\n System Config: *\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Zoned\\r\\n System:\\r\\n \\r\\n {{hvac.assetModelInfo.zonedSystem==null?'':hvac.assetModelInfo.zonedSystem.value}}

\\r\\n
\\r\\n\\r\\n Zoned System:\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

Filter Type:\\r\\n {{hvac.assetModelInfo.filterType==null?'':hvac.assetModelInfo.filterType.value}}

\\r\\n\\r\\n
\\r\\n\\r\\n Fiter Type:\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

Filter Length\\r\\n (in):{{hvac.assetModelInfo.filterLength==null?'':hvac.assetModelInfo.filterLength.value}}\\r\\n

\\r\\n
\\r\\n Filter Length\\r\\n (in):\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Filter Width\\r\\n (in):{{hvac.assetModelInfo.filterWidth==null ?'': hvac.assetModelInfo.filterWidth.value}}\\r\\n

\\r\\n
\\r\\n Filter Width\\r\\n (in):\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Filter\\r\\n Thickness\\r\\n (in):{{hvac.assetModelInfo.filterThickness==null?'':hvac.assetModelInfo.filterThickness.value}}\\r\\n

\\r\\n
\\r\\n Filter Thickness\\r\\n (in):\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Fuel Type:\\r\\n {{hvac.assetModelInfo.fuelType==null?'':hvac.assetModelInfo.fuelType.value}}

\\r\\n
\\r\\n\\r\\n Fuel Type:\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

Multi Stage:\\r\\n {{hvac.assetModelInfo.indoorMultiStage==null?'':hvac.assetModelInfo.indoorMultiStage.value}}\\r\\n

\\r\\n
\\r\\n\\r\\n Multi Stage:\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

Location:\\r\\n {{hvac.assetModelInfo.locations==null?'':hvac.assetModelInfo.locations.value}}\\r\\n

\\r\\n
\\r\\n\\r\\n Indoor Unit Location: *\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n {{hvac.assetUnitType|titlecase }} Unit\\r\\n \\r\\n - {{hvac.assetModelInfo.locations.value}}\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n

Performance
Board\\r\\n Serial\\r\\n No:
{{!hvac.meliSerialNumber?\\\"\\\":hvac.meliSerialNumber | uppercase}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

HVAC\\r\\n Serial\\r\\n No: {{hvac.assetUnitSerialNumber?(hvac.assetUnitSerialNumber | uppercase):''}}

\\r\\n
\\r\\n HVAC Serial\\r\\n No:\\r\\n \\r\\n
\\r\\n

Make:\\r\\n {{hvac.assetModelInfo.indoorEquipmentMake==null?'':hvac.assetModelInfo.indoorEquipmentMake.value | uppercase}}\\r\\n

\\r\\n
\\r\\n Make:\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Model\\r\\n No: {{!hvac.assetModelInfo.modelNo?'':hvac.assetModelInfo.modelNo}}

\\r\\n
\\r\\n Model\\r\\n No:\\r\\n \\r\\n
\\r\\n

Type:\\r\\n {{hvac.assetModelInfo.indoorEquipmentType==null?'':hvac.assetModelInfo.indoorEquipmentType.value}}\\r\\n

\\r\\n
\\r\\n Type: *\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n

Heat Type:\\r\\n {{hvac.assetModelInfo.heatType==null?'':hvac.assetModelInfo.heatType.value}}

\\r\\n \\r\\n
\\r\\n \\r\\n Heat Type:\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n

Rated\\r\\n Capacity:\\r\\n {{hvac.assetModelInfo.ratedCapacity==null?'':hvac.assetModelInfo.ratedCapacity.value}}\\r\\n

\\r\\n
\\r\\n\\r\\n Rated Capacity:\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

Rated\\r\\n Electric Strip\\r\\n Capacity:\\r\\n {{hvac.assetModelInfo.ratedElectricStripCapacity==null ||\\r\\n hvac.assetModelInfo.ratedElectricStripCapacity==''?'':hvac.assetModelInfo.ratedElectricStripCapacity}}\\r\\n

\\r\\n
\\r\\n\\r\\n Rated Electric Strip\\r\\n Capacity:\\r\\n \\r\\n\\r\\n
\\r\\n

Is Blower\\r\\n Variable?\\r\\n {{hvac.assetModelInfo.variableSpeedBlower==null?'':hvac.assetModelInfo.variableSpeedBlower.value}}\\r\\n

\\r\\n
\\r\\n\\r\\n Is Blower Variable?\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Comments:\\r\\n {{hvac.report && hvac.report.comments && hvac.report.comments.length==0?'':''}}\\r\\n \\r\\n \\r\\n {{comments}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

HVAC\\r\\n Serial\\r\\n No: {{hvac.assetUnitSerialNumber?(hvac.assetUnitSerialNumber | uppercase) :''}}

\\r\\n
\\r\\n HVAC Serial\\r\\n No:\\r\\n \\r\\n
\\r\\n

Make:\\r\\n {{hvac.assetModelInfo.outdoorEquipmentMake==null?'':hvac.assetModelInfo.outdoorEquipmentMake.value| uppercase}}\\r\\n

\\r\\n
\\r\\n Make:\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Model\\r\\n No: {{!hvac.assetModelInfo.modelNo?'':hvac.assetModelInfo.modelNo}}

\\r\\n
\\r\\n Model\\r\\n No:\\r\\n \\r\\n
\\r\\n \\r\\n

Type:\\r\\n {{hvac.assetModelInfo.outdoorEquipmentType==null?'':hvac.assetModelInfo.outdoorEquipmentType.value}}\\r\\n

\\r\\n
\\r\\n Type: *\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n

Nominal\\r\\n A/C Capacity\\r\\n (Tons):\\r\\n {{hvac.assetModelInfo.outdoorNominalACCapacity==null?'':hvac.assetModelInfo.outdoorNominalACCapacity.value}}\\r\\n

\\r\\n
\\r\\n \\r\\n Nominal A/C Capacity\\r\\n (Tons):\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

SEER:\\r\\n {{hvac.assetModelInfo.outdoorSeer==null ? '':hvac.assetModelInfo.outdoorSeer.value}}

\\r\\n
\\r\\n \\r\\n SEER:\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Inverter\\r\\n Compressor:\\r\\n {{hvac.assetModelInfo.outdoorInverterCompressor==null ?\\r\\n '':hvac.assetModelInfo.outdoorInverterCompressor.value}}

\\r\\n
\\r\\n \\r\\n Inverter Compressor:\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Multi Stage:\\r\\n {{hvac.assetModelInfo.outdoorMultiStage==null ?\\r\\n '':hvac.assetModelInfo.outdoorMultiStage.value}}

\\r\\n
\\r\\n \\r\\n Multi Stage:\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Reversing Valve:\\r\\n {{hvac.assetModelInfo.reversingValve==null ?\\r\\n '':getReversingValue(hvac.assetModelInfo.reversingValve)}}

\\r\\n
\\r\\n Reversing Valve:\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n

No Data Available

\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

{{HVACImageList[currentImageIndex].imageName}}

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n maxZoomout && handleZoomImage(0)\\\" class=\\\"zoom-icon cursor_pointer mr5\\\"\\r\\n [ngClass]=\\\"{'cursor_not-allowed opacity_05': currentZoomSize === maxZoomout}\\\" width=\\\"2.4rem\\\" height=\\\"2.4rem\\\"\\r\\n viewBox=\\\"0 0 24 24\\\" focusable=\\\"false\\\" role=\\\"presentation\\\">\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{customerDetails.contractorName}}\\r\\n \\r\\n

\\r\\n Phone:\\r\\n \\r\\n {{handlePhone(customerDetails.phone, customerDetails.phone[0].type)}}\\r\\n \\r\\n

\\r\\n

\\r\\n Phone:\\r\\n \\r\\n {{handlePhone(customerDetails.phone, customerDetails.phone[0].type)}}\\r\\n \\r\\n

\\r\\n
\\r\\n

\\r\\n Email:\\r\\n \\r\\n {{handleEmail(customerDetails.email, commonConstants.EMAIL_PRIMARY)}}\\r\\n \\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

{{boardsCount}}

\\r\\n {{boardsText}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n

Choose Time Slot

\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

Choose Test Type

\\r\\n
\\r\\n
Heating
\\r\\n
Cooling
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n

Choose Time Slot

\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Contact Information\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Edit\\r\\n \\r\\n

\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

\\r\\n \\r\\n First Name:\\r\\n \\r\\n \\r\\n {{details.firstName}}\\r\\n \\r\\n \\r\\n {{details.technicianFirstName ? details.technicianFirstName : details.technicianName}}\\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Last Name:\\r\\n \\r\\n \\r\\n {{details.lastName}}\\r\\n \\r\\n \\r\\n {{details.technicianLastName}}\\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Primary Email ID:\\r\\n \\r\\n {{details.email[0].email}}\\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Phone Number:\\r\\n \\r\\n \\r\\n

\\r\\n {{phone.countryCode}} {{phone.phoneNumber}} ({{phone.type}})\\r\\n \\r\\n /\\r\\n \\r\\n

\\r\\n
\\r\\n

\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n \\r\\n First Name:\\r\\n \\r\\n \\r\\n {{details.consumerFirstName ? details.consumerFirstName : details.customerFirstName}}\\r\\n \\r\\n \\r\\n {{details.consumerName ? details.consumerName : details.customerName}}\\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Last Name:\\r\\n \\r\\n {{details.consumerLastName ? details.consumerLastName : details.customerLastName}}\\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n

\\r\\n \\r\\n Email(s):\\r\\n \\r\\n \\r\\n

\\r\\n {{email.email}} ({{email.type}})\\r\\n \\r\\n ,\\r\\n \\r\\n

\\r\\n
\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Phone Number(s):\\r\\n \\r\\n \\r\\n

\\r\\n {{phone.phoneNumber}} ({{phone.type}})\\r\\n \\r\\n ,\\r\\n \\r\\n

\\r\\n
\\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n

\\r\\n \\r\\n Service Address:\\r\\n \\r\\n \\r\\n \\r\\n {{handleRemoveAddressLinesCombinator(address.address)}}, {{address.city}},\\r\\n {{address.state}}\\r\\n {{address.zipcode}}\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Billing Address:\\r\\n \\r\\n \\r\\n \\r\\n {{handleRemoveAddressLinesCombinator(address.address)}}, {{address.city}},\\r\\n {{address.state}}\\r\\n {{address.zipcode}}\\r\\n \\r\\n \\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n

\\r\\n \\r\\n Name:\\r\\n \\r\\n {{details.contractorName}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Website:\\r\\n \\r\\n {{details.website}}\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n Company Logo:\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n

\\r\\n {{url}}\\r\\n

\\r\\n ( view )\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n

\\r\\n \\r\\n Contact Person:\\r\\n \\r\\n {{details.contactPerson}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Dealer Type:\\r\\n \\r\\n {{details.dealerType}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Email(s):\\r\\n \\r\\n \\r\\n

\\r\\n {{email.email}} ({{email.type}})\\r\\n \\r\\n ,\\r\\n \\r\\n

\\r\\n
\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Phone Number(s):\\r\\n \\r\\n \\r\\n

\\r\\n {{phone.phoneNumber}} ({{phone.type}})\\r\\n \\r\\n ,\\r\\n \\r\\n

\\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Registered Address:\\r\\n \\r\\n \\r\\n \\r\\n {{handleRemoveAddressLinesCombinator(address.address)}}, {{address.city}},\\r\\n {{address.state}}\\r\\n {{address.zipcode}}\\r\\n \\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Branch Address:\\r\\n \\r\\n \\r\\n \\r\\n {{handleRemoveAddressLinesCombinator(address.address)}}, {{address.city}},\\r\\n {{address.state}}\\r\\n {{address.zipcode}}\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n In Business Since:\\r\\n \\r\\n {{details.operatingSince}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n No. of Technicians:\\r\\n \\r\\n {{details.numOfTechnicians}}\\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\\"logo\\\"\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n System Operating Normally\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Perf Board No:\\r\\n \\r\\n {{installationReport.meliSerialNumber?installationReport.meliSerialNumber:'NA'}}\\r\\n

\\r\\n

\\r\\n \\r\\n Date:\\r\\n \\r\\n {{installationReport.date}}\\r\\n

\\r\\n

\\r\\n \\r\\n Technician:\\r\\n \\r\\n {{installationReport.technician?installationReport.technician:'NA'}}\\r\\n

\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Connectivity:\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Cloud\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Signal Strength:\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n {{installationReport.signalStrength?installationReport.signalStrength:''}}\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Sensors\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

SAT

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

RAT

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

LLT

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

SLT

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

SPD

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

CDS

\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Working\\r\\n

\\r\\n \\r\\n Not Installed\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n CDS Installed\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n ES - CDS Installed\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Comments:\\r\\n

\\r\\n 0\\\">\\r\\n \\r\\n

{{comment}}

\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n No Installation Report Found!\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n \\r\\n \\r\\n
\"","module.exports = \"
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\"","module.exports = \"
\\r\\n \\r\\n {{modalHeaderName}}\\r\\n \\r\\n ('SAVE' to confirm the details, else click on 'EDIT' to make changes)\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n {{rightHeaderName | titlecase}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n\"","module.exports = \"
\\r\\n Show\\r\\n \\r\\n rows\\r\\n
\"","module.exports = \"
\\r\\n\\r\\n 0 && page == 1 && limit < totalCount\\\">\\r\\n {{skip + 1}} - {{limit}} of {{totalCount}}\\r\\n \\r\\n 0 && page == 1 && limit >= totalCount\\\">\\r\\n {{skip + 1}} - {{totalCount}} of {{totalCount}}\\r\\n \\r\\n 0 && page != 1 && page != Math.ceil(totalCount/limit) \\\">\\r\\n {{limit * (page - 1) + 1 }} - {{page * limit}} of {{totalCount}}\\r\\n \\r\\n 0 && page != 1 && page == Math.ceil(totalCount/limit)\\\">\\r\\n {{limit * (page - 1) + 1 }} -\\r\\n \\r\\n {{(page * limit) +(totalCount%limit)}}\\r\\n \\r\\n \\r\\n {{totalCount}}\\r\\n \\r\\n of {{totalCount}}\\r\\n \\r\\n No {{placeHolder}} found.\\r\\n \\r\\n\\r\\n limit\\\">\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n = totalCount\\\">\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n

\\r\\n \\r\\n Serial No.:\\r\\n \\r\\n {{boardDetails && boardDetails.meliSerialNumber}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Installed On:\\r\\n \\r\\n \\r\\n {{boardDetails.installedOn }}\\r\\n \\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Installation Address:\\r\\n \\r\\n {{handleAddressSelection(boardDetails &&\\r\\n boardDetails.consumer && boardDetails.consumer.addresses,\\r\\n commonConstants.ADDRESS_TYPE_SERVICE)}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n HVAC Location:\\r\\n \\r\\n {{boardDetails && boardDetails.indoorHvacLocation }}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Signal Strength:\\r\\n \\r\\n {{signalStrength||''}}\\r\\n

\\r\\n\\r\\n

\\r\\n \\r\\n Connectivity Status:\\r\\n \\r\\n \\r\\n {{connectivityStatus}}\\r\\n \\r\\n \\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n

\\r\\n \\r\\n Firmware Version:\\r\\n \\r\\n {{firmwareVersion}}\\r\\n

\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n {{phone.phoneNumber}} ({{phone.type}})\\r\\n \\r\\n ,\\r\\n \\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n Phone number not found!\\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n {{email.email}} ({{email.type}})\\r\\n \\r\\n ,\\r\\n \\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n Email not found!\\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n {{parsedAddress}}\\r\\n (Can't find address in map)\\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Address not found!\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\"","module.exports = \"\\r\\n \\r\\n\\r\\n\\r\\n\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"logo\\\"\\r\\n

\\r\\n \\\"faliure\\\"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Test Result:\\r\\n \\r\\n \\r\\n {{reportData.testResult}} (See Alerts)\\r\\n \\r\\n {{reportData.testResult}}\\r\\n \\r\\n {{reportData.testResult}} ({{reportData.description}})\\r\\n

\\r\\n
\\r\\n
\\r\\n

\\r\\n {{reportData.testTitle}}

\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Date:\\r\\n \\r\\n {{reportData.date}}\\r\\n

\\r\\n

\\r\\n \\r\\n Test Time:\\r\\n \\r\\n {{reportData.testTime||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Test Type:\\r\\n \\r\\n {{reportData.testType||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Ambient Outdoor Temp:\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Customer Name:\\r\\n \\r\\n {{reportData.customerInfo.customerName||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Perf Board No: \\r\\n {{reportData.hvacInfo.performanceBoard||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n System Type:\\r\\n \\r\\n {{reportData.hvacInfo.systemType||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Installed Location:\\r\\n \\r\\n {{reportData.hvacInfo.location||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Indoor:\\r\\n \\r\\n {{reportData.hvacInfo.indoor&&reportData.hvacInfo.indoor.deviceType||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Make:\\r\\n \\r\\n {{reportData.hvacInfo.indoor&&reportData.hvacInfo.indoor.make||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Model:\\r\\n \\r\\n {{reportData.hvacInfo.indoor&&reportData.hvacInfo.indoor.model||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Serial Number:\\r\\n \\r\\n {{reportData.hvacInfo.indoor&&reportData.hvacInfo.indoor.serialNumber||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Outdoor:\\r\\n \\r\\n {{reportData.hvacInfo.outdoor&&reportData.hvacInfo.outdoor.deviceType||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Make:\\r\\n \\r\\n {{reportData.hvacInfo.outdoor&&reportData.hvacInfo.outdoor.make||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Model:\\r\\n \\r\\n {{reportData.hvacInfo.outdoor&&reportData.hvacInfo.outdoor.model||''}}\\r\\n

\\r\\n

\\r\\n \\r\\n Serial Number:\\r\\n \\r\\n {{reportData.hvacInfo.outdoor&&reportData.hvacInfo.outdoor.serialNumber||''}}\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">\\r\\n
\\r\\n

\\r\\n \\\"faliure\\\"\\r\\n \\r\\n \\r\\n Alerts \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Alert Name :

\\r\\n

\\r\\n

Alert Description :

\\r\\n

\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Equipment Performance Data \\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n All\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Fan\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Cooling\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n Heating\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n Sensor Status:\\r\\n \\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

SAT

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

RAT

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

LLT

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

SLT

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

SPD

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

CDS

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Working\\r\\n

\\r\\n \\r\\n Not Working\\r\\n

\\r\\n

\\r\\n Not Installed\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n SAT: Supply Air Temperature\\r\\n

\\r\\n

\\r\\n RAT: Return Air Temperature\\r\\n

\\r\\n \\r\\n

\\r\\n LLT: Liquid Line Temperature\\r\\n

\\r\\n

\\r\\n SLT: Suction Line Temperature\\r\\n

\\r\\n

\\r\\n SPD: Static Pressure Differential\\r\\n

\\r\\n

\\r\\n CDS: Condensate Safety Switch\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Terms and Conditions:\\r\\n

\\r\\n Data for this Report is generated by certain hardware monitoring devices provided by ConnectM Technology Solutions,\\r\\n Inc., a Delaware corporation (“ConnectM”), installed on your equipment, and any analysis relating to such Data is\\r\\n provided by ConnectM’s platform services for which you may have a subscription. ConnectM makes no recommendations\\r\\n regarding equipment maintenance, repair or replacement or any services related thereto. In the event that you elect to\\r\\n replace, repair or maintain your equipment or to engage a third-party service technician to replace, repair or maintain\\r\\n your equipment or to provide maintenance or other services relating to such equipment, you agree that ConnectM shall\\r\\n have no liability or obligation to you whatsoever, regardless of whether such replacement, repairs, maintenance or other\\r\\n services are performed based upon the any data or analysis provided in this report. Your use of any of the data\\r\\n contained in this report is conditioned upon your agreement to the foregoing statements.\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Tested and Reported By: \\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

This is an automatically generated\\r\\n report\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"logo\\\"\\r\\n
\\r\\n
\\r\\n

Pre-Season\\r\\n Test\\r\\n Reports

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n No Reports found!\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Test Time\\r\\n \\r\\n \\r\\n \\r\\n Season\\r\\n \\r\\n \\r\\n \\r\\n Type \\r\\n \\r\\n \\r\\n Download\\r\\n \\r\\n \\r\\n \\r\\n Share\\r\\n \\r\\n \\r\\n \\r\\n View Report\\r\\n \\r\\n \\r\\n \\r\\n Status\\r\\n \\r\\n
\\r\\n {{ report.testTime }}\\r\\n \\r\\n {{ report.season }}\\r\\n \\r\\n {{ report.type }}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{report.testResult}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n VIEW ALL REPORTS\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

{{modalTitle}}

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\"","module.exports = \"\\r\\n
\\r\\n \\r\\n \\r\\n
\"","module.exports = \"
\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n

Board Serial Number: \\r\\n {{assetDetails && assetDetails.meliSerialNumber}}\\r\\n

\\r\\n\\r\\n
    \\r\\n \\r\\n
  • \\r\\n Cellular Plan\\r\\n
  • \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

{{subscriptionPlan.planSubscriptionName}}

\\r\\n

{{subscriptionPlan.planSubscriptionSubTitle}}

\\r\\n

{{subscriptionPlan.planSubscriptionPeriod}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

{{cellularPlan.title}}

\\r\\n

{{cellularPlan.subTitle}}

\\r\\n \\r\\n

You’re all set!

\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\"","module.exports = \"\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"\\r\\n\\r\\n\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
    \\r\\n
  • Transfer Account
  • \\r\\n
  • \\r\\n Delete Account\\r\\n
  • \\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n To transfer ownership of your account, please enter the recipient’s email below.\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Required\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n \\r\\n Invalid Email\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n \\r\\n Email is Already Registered\\r\\n \\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n Please type the word DELETE below to terminate your account.\\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\"","module.exports = \"
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

{{modalContent}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Download Customer Template\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{uploadCustomerText}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

{{modalContent}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Download Technician Template\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{uploadTechinicanText}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

{{siteHeading}}

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\"","module.exports = \"\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n

*Required Field

\\r\\n

\\r\\n Contact Information\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Individual
\\r\\n
Company
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Required\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n \\r\\n Invalid Email\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n \\r\\n Invalid Email\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n +\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n -\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n Invalid Unit No\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n !\\r\\n \\r\\n \\r\\n Invalid Unit No\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Required\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

Please double-check the email address on file and click here to resend the Keen Home Pro Homeowner app invitation.

\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n// Modules\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\n\r\n// Components\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { FooterComponent } from './footer/footer.component';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\nconst Components = [\r\n HeaderComponent,\r\n FooterComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [ ...Components ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n SharedModule\r\n ],\r\n exports: [ ...Components ],\r\n providers: [\r\n CookieService\r\n ],\r\n})\r\nexport class CoreModule { }\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.footer {\\n height: 4.5rem;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.footer .connectm-logo {\\n height: 2.6rem;\\n width: 17.6rem;\\n}\\n.footer .rights-content {\\n color: #71a8ca;\\n margin-right: 1.5rem;\\n font-size: 1.2rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29yZS9mb290ZXIvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxjb3JlXFxmb290ZXJcXGZvb3Rlci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29yZS9mb290ZXIvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvY29yZS9mb290ZXIvZm9vdGVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNCQUFBO0FDQUEsc0JBQUE7QURFQTtFQUNJLGNBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtBRUNKO0FGQ0k7RUFDSSxjQUFBO0VBQ0EsY0FBQTtBRUNSO0FGVUk7RUFDSSxjQUFBO0VBRUEsb0JBQUE7RUFDQSxpQkFBQTtBRVRSIiwiZmlsZSI6InNyYy9hcHAvY29yZS9mb290ZXIvZm9vdGVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCAnLi4vLi4vLi4vc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG4uZm9vdGVyIHtcclxuICAgIGhlaWdodDogNC41cmVtO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAuY29ubmVjdG0tbG9nbyB7XHJcbiAgICAgICAgaGVpZ2h0OiAyLjZyZW07XHJcbiAgICAgICAgd2lkdGg6MTcuNnJlbTtcclxuICAgICAgICAvLyBtYXJnaW4tbGVmdDogOTMuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAudmVydGljYWwtbGluZSB7XHJcbiAgICAvLyAgICAgd2lkdGg6IDFweDtcclxuICAgIC8vICAgICBoZWlnaHQ6IDI1JTtcclxuICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG4gICAgLy8gICAgIG1hcmdpbjogMCAxcmVtO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC5yaWdodHMtY29udGVudCB7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMTEzLCAxNjgsIDIwMiwgMSk7XHJcbiAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgfVxyXG5cclxufSIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5mb290ZXIge1xuICBoZWlnaHQ6IDQuNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uZm9vdGVyIC5jb25uZWN0bS1sb2dvIHtcbiAgaGVpZ2h0OiAyLjZyZW07XG4gIHdpZHRoOiAxNy42cmVtO1xufVxuLmZvb3RlciAucmlnaHRzLWNvbnRlbnQge1xuICBjb2xvcjogIzcxYThjYTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n contractorLogo = 'https://meli-kit-info-images.s3.us-east-2.amazonaws.com/keenhome_footer.svg';\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Service\r\nimport { AuthService } from 'src/app/modules/auth/services/auth.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\n// Model\r\nimport { LoginResponseDetails } from 'src/app/shared/models/auth.model';\r\n\r\n\r\n// Environment\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService,\r\n private helperService: HelperService,\r\n ) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\r\n return new Promise((resolve) => {\r\n const isRememberMeChecked = localStorage.getItem('isRememberMeChecked');\r\n let token;\r\n // if (isRememberMeChecked === 'true') {\r\n token = localStorage.getItem('token');\r\n // } else {\r\n // token = sessionStorage.getItem('token');\r\n // }\r\n\r\n const autoLogin = next && next.queryParams && next.queryParams.autoLogin &&\r\n JSON.parse(next.queryParams.autoLogin);\r\n\r\n if (autoLogin) {\r\n const payload: any = {\r\n userName: next && next.queryParams && next.queryParams.userName,\r\n password: this.helperService.handleConvertBASE64Encode(\r\n next && next.queryParams && next.queryParams.password\r\n ),\r\n userPoolId: contractorEnvironment.userPoolId,\r\n isContractor: 1\r\n };\r\n \r\n // if (this.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n // payload.isContractor = 1;\r\n // } else if (this.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n // payload.isChannel = 1;\r\n // }\r\n this.authService.handleLogin(payload).subscribe(\r\n (response: LoginResponseDetails) => {\r\n // const isRememberMeChecked = localStorage.getItem('isRememberMeChecked');\r\n // if (isRememberMeChecked === 'true') {\r\n const loginResponse = response && response.responseData;\r\n localStorage.setItem('token', loginResponse && loginResponse.idToken);\r\n // localStorage.setItem('authTime', response.authTime.toString());\r\n localStorage.setItem('userName', loginResponse && loginResponse.userName);\r\n // } else {\r\n // sessionStorage.setItem('token', response.token);\r\n // sessionStorage.setItem('authTime', response.authTime.toString());\r\n // sessionStorage.setItem('userName', response.userName);\r\n // }\r\n // this.router.navigate(['/' + this.routeLink]);\r\n // this.helperService.setSelectedTab(this.routeLink);\r\n // this.isActionBtnLoading = false;\r\n // this.helperService.showToaster(ToasterType.SUCCESS, response.status);\r\n resolve(true);\r\n }, (error) => {\r\n // this.isActionBtnLoading = false;\r\n // const message = error.error && error.error.status;\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n resolve(false);\r\n }\r\n );\r\n } else if (token) {\r\n resolve(true);\r\n } else {\r\n this.router.navigate(['/login']);\r\n resolve(false);\r\n }\r\n });\r\n // return true;\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.header {\\n height: 6.4rem;\\n}\\n.header .header-left .meli-logo {\\n max-height: 5rem;\\n max-width: 20rem;\\n}\\n.header .header-right .search_wrapper .search-icon {\\n top: 0.8rem;\\n left: 0.8rem;\\n}\\n.header .header-right .search_wrapper .search-tag {\\n width: 40rem;\\n height: 3rem;\\n padding: 0.5rem 0.5rem 0.5rem 3rem !important;\\n font-size: 1.1rem;\\n}\\n.header .header-right .search_wrapper .search-tag::-webkit-input-placeholder {\\n color: #979090;\\n font-size: 1.1rem;\\n}\\n.header .header-right .search_wrapper .search-tag::-moz-placeholder {\\n color: #979090;\\n font-size: 1.1rem;\\n}\\n.header .header-right .search_wrapper .search-tag::-ms-input-placeholder {\\n color: #979090;\\n font-size: 1.1rem;\\n}\\n.header .header-right .search_wrapper .search-tag::placeholder {\\n color: #979090;\\n font-size: 1.1rem;\\n}\\n.header .header-right .search_wrapper .guide-modal {\\n top: 4rem;\\n left: 0;\\n}\\n.header .header-right .search_wrapper .search-modal {\\n top: 4rem;\\n left: 0;\\n z-index: 2000;\\n}\\n.header .header-right .profile_wrapper .profile-img {\\n width: 3rem;\\n height: 3rem;\\n border-radius: 50%;\\n}\\n.header .header-right .profile_wrapper .arrow-icon {\\n fill: #141821;\\n}\\n.header .header-right .profile_wrapper .profile-dropdown_wrapper {\\n top: 3rem;\\n right: 0;\\n min-width: 16rem;\\n color: #000000;\\n z-index: 3;\\n font-size: 1.4rem;\\n background: #ffffff;\\n box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.160784);\\n font-family: \\\"SourceSansPro-Regular\\\";\\n}\\n.header .header-right .profile_wrapper .profile-dropdown_wrapper .dropdown-content:hover {\\n background-color: #e9e9f0;\\n}\\n.header .guide-modal {\\n top: 4rem;\\n}\\n.header .listdropdown:hover {\\n background-color: #e9e9f0;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29yZS9oZWFkZXIvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxjb3JlXFxoZWFkZXJcXGhlYWRlci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29yZS9oZWFkZXIvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvY29yZS9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNCQUFBO0FDQUEsc0JBQUE7QURFQTtFQUNFLGNBQUE7QUVDRjtBRkVJO0VBQ0UsZ0JBQUE7RUFDQSxnQkFBQTtBRUFOO0FGTU07RUFDRSxXQUFBO0VBQ0EsWUFBQTtBRUpSO0FGT007RUFDRSxZQUFBO0VBQ0EsWUFBQTtFQUNBLDZDQUFBO0VBQ0EsaUJBQUE7QUVMUjtBRlFNO0VBQ0UsY0NZYTtFRFhiLGlCQUFBO0FFTlI7QUZJTTtFQUNFLGNDWWE7RURYYixpQkFBQTtBRU5SO0FGSU07RUFDRSxjQ1lhO0VEWGIsaUJBQUE7QUVOUjtBRklNO0VBQ0UsY0NZYTtFRFhiLGlCQUFBO0FFTlI7QUZTTTtFQUNFLFNBQUE7RUFDQSxPQUFBO0FFUFI7QUZVTTtFQUNFLFNBQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtBRVJSO0FGYU07RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0FFWFI7QUZjTTtFQUNFLGFBQUE7QUVaUjtBRmVNO0VBQ0UsU0FBQTtFQUNBLFFBQUE7RUFDQSxnQkFBQTtFQUNBLGNDdkRjO0VEd0RkLFVBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQ2xEYztFRG1EZCwrQ0FBQTtFQUNBLG9DQ2lDMEI7QUM5Q2xDO0FGZVE7RUFFRSx5QkNqQmlCO0FDRzNCO0FGb0JFO0VBQ0UsU0FBQTtBRWxCSjtBRm9CRTtFQUNFLHlCQzNCdUI7QUNTM0IiLCJmaWxlIjoic3JjL2FwcC9jb3JlL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0IFwiLi4vLi4vLi4vc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3NcIjtcclxuLmhlYWRlciB7XHJcbiAgaGVpZ2h0OiA2LjRyZW07XHJcblxyXG4gIC5oZWFkZXItbGVmdCB7XHJcbiAgICAubWVsaS1sb2dvIHtcclxuICAgICAgbWF4LWhlaWdodDogNXJlbTtcclxuICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oZWFkZXItcmlnaHQge1xyXG4gICAgLnNlYXJjaF93cmFwcGVyIHtcclxuICAgICAgLnNlYXJjaC1pY29uIHtcclxuICAgICAgICB0b3A6IDAuOHJlbTtcclxuICAgICAgICBsZWZ0OiAwLjhyZW07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWFyY2gtdGFnIHtcclxuICAgICAgICB3aWR0aDogNDByZW07IC8vMzJyZW07IC8vMzdyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDNyZW0gIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlYXJjaC10YWc6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktdGVybmFyeTtcclxuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmd1aWRlLW1vZGFsIHtcclxuICAgICAgICB0b3A6IDRyZW07XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlYXJjaC1tb2RhbCB7XHJcbiAgICAgICAgdG9wOiA0cmVtO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogMjAwMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9maWxlX3dyYXBwZXIge1xyXG4gICAgICAucHJvZmlsZS1pbWcge1xyXG4gICAgICAgIHdpZHRoOiAzcmVtO1xyXG4gICAgICAgIGhlaWdodDogM3JlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hcnJvdy1pY29uIHtcclxuICAgICAgICBmaWxsOiAjMTQxODIxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvZmlsZS1kcm9wZG93bl93cmFwcGVyIHtcclxuICAgICAgICB0b3A6IDNyZW07XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxNnJlbTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTYwNzg0KTtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI7XHJcblxyXG4gICAgICAgIC5kcm9wZG93bi1jb250ZW50OmhvdmVyIHtcclxuICAgICAgICAgIC8vIGNvbG9yOiAkY29sb3ItZ3JheS1wcmltYXJ5O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ndWlkZS1tb2RhbCB7XHJcbiAgICB0b3A6IDRyZW07XHJcbiAgfVxyXG4gIC5saXN0ZHJvcGRvd246aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTtcclxuICB9XHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLmhlYWRlciB7XG4gIGhlaWdodDogNi40cmVtO1xufVxuLmhlYWRlciAuaGVhZGVyLWxlZnQgLm1lbGktbG9nbyB7XG4gIG1heC1oZWlnaHQ6IDVyZW07XG4gIG1heC13aWR0aDogMjByZW07XG59XG4uaGVhZGVyIC5oZWFkZXItcmlnaHQgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2gtaWNvbiB7XG4gIHRvcDogMC44cmVtO1xuICBsZWZ0OiAwLjhyZW07XG59XG4uaGVhZGVyIC5oZWFkZXItcmlnaHQgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2gtdGFnIHtcbiAgd2lkdGg6IDQwcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDNyZW0gIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG4uaGVhZGVyIC5oZWFkZXItcmlnaHQgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2gtdGFnOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTc5MDkwO1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cbi5oZWFkZXIgLmhlYWRlci1yaWdodCAuc2VhcmNoX3dyYXBwZXIgLmd1aWRlLW1vZGFsIHtcbiAgdG9wOiA0cmVtO1xuICBsZWZ0OiAwO1xufVxuLmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoLW1vZGFsIHtcbiAgdG9wOiA0cmVtO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyMDAwO1xufVxuLmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5wcm9maWxlX3dyYXBwZXIgLnByb2ZpbGUtaW1nIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5wcm9maWxlX3dyYXBwZXIgLmFycm93LWljb24ge1xuICBmaWxsOiAjMTQxODIxO1xufVxuLmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5wcm9maWxlX3dyYXBwZXIgLnByb2ZpbGUtZHJvcGRvd25fd3JhcHBlciB7XG4gIHRvcDogM3JlbTtcbiAgcmlnaHQ6IDA7XG4gIG1pbi13aWR0aDogMTZyZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB6LWluZGV4OiAzO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE2MDc4NCk7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xufVxuLmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5wcm9maWxlX3dyYXBwZXIgLnByb2ZpbGUtZHJvcGRvd25fd3JhcHBlciAuZHJvcGRvd24tY29udGVudDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZjA7XG59XG4uaGVhZGVyIC5ndWlkZS1tb2RhbCB7XG4gIHRvcDogNHJlbTtcbn1cbi5oZWFkZXIgLmxpc3Rkcm9wZG93bjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZjA7XG59Il19 */\"","import { Component, OnInit, ElementRef, ViewChild, OnDestroy } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport {\r\n debounceTime,\r\n map,\r\n distinctUntilChanged,\r\n takeUntil,\r\n} from 'rxjs/operators';\r\nimport { fromEvent, Subject, Subscription } from 'rxjs';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n// Enviroment\r\nimport { VERSION as channelVersion } from 'projects/channel/src/environments/version';\r\nimport { VERSION as contractorVersion } from 'projects/contractor/src/environments/version';\r\nimport { VERSION as mduVersion } from 'projects/mdu/src/environments/version';\r\n\r\n// Service\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\n// Models\r\nimport { ContractorDetails, ContractorDetailsResponse } from 'src/app/shared/models/contractor.modal';\r\nimport {\r\n SearchResponse,\r\n SearchResponseDetails,\r\n} from 'src/app/shared/models/search.model';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Constants\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { CHANNEL_API_CONSTANTS } from 'projects/channel/src/app/shared-channel/constants/api.constants';\r\nimport { CONTRACTOR_API_CONSTANTS } from 'projects/contractor/src/app/shared-contractor/constants/api.constant';\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { Customer } from 'src/app/shared/models/inventory.model';\r\nimport { MDU_API_CONSTANTS } from 'projects/mdu/src/app/shared-mdu/constants/api.constants';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { cardDetails } from 'src/app/shared/models/billingaccount.model';\r\nimport { SITE_NAME_CONSTANTS } from 'src/app/shared/constants/site-name.constant';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n})\r\nexport class HeaderComponent implements OnInit, OnDestroy {\r\n\r\n contractorLogoWhite = require('src/assets/images/Current-Contractor-White.svg');\r\n contractorLogoBlue = require('src/assets/images/Current-Contractor-Blue.svg');\r\n currentContractorBlack = require('src/assets/images/Current-Contractor-Black.svg');\r\n defaultLogo = require('src/assets/images/defaultLogo.png');\r\n currentContractorLogo = '';\r\n @ViewChild('search', { static: true }) inputSearch: ElementRef;\r\n isShowProfileDropdown = false;\r\n isShowUploadListModal = false;\r\n isShowGuidePopUp = false;\r\n contractorInformation: ContractorDetails;\r\n mduInformation: Customer;\r\n channelInformation: Customer;\r\n lastSearchedValue: any;\r\n isShowSearchPopUp = false;\r\n searchList: SearchResponseDetails[];\r\n isShowSearchLoading = false;\r\n portalName: string;\r\n searchBoxPlaceholder: string;\r\n roleConstants = ROLE_CONSTANTS;\r\n siteConstants = SITE_NAME_CONSTANTS;\r\n version: string;\r\n // profileImageUrl: string;\r\n isShowPasswordModal = false;\r\n modalTitle: string;\r\n commonConstants = COMMON_CONSTANTS;\r\n siteTourSubscription: Subscription;\r\n searchListSubscription: Subscription;\r\n selectedSearchValue: SearchResponseDetails;\r\n selectedSearchIndex: number = -1;\r\n siteTourTitle: any;\r\n siteTourContent: any;\r\n isShowBillingModal = false;\r\n fromPage: any;\r\n isUpdateCard: boolean = false;\r\n isOnlogin: boolean = false;\r\n res: any;\r\n billingDetails: any;\r\n isUpdateAch: boolean;\r\n url: string;\r\n modaltext: string = \"For the best experience, download the Customer Template and upload your entire customer list. You can always add new customers manually by visiting the Customers tab.\";\r\n isShowTransferOrDeleteAccModal = false;\r\n isConfirmationModalHasYesOrNoButton = false;\r\n confirmationModalLine1Content: string;\r\n confirmationModalEmitterFlag: string;\r\n isShowConfirmationModal = false;\r\n isConfirmationModalActionBtnLoading = false;\r\n isShowWelcomeModal: boolean = false;\r\n siteNameText: any;\r\n isShowCreateContractorModal = false;\r\n contractorDetails: any;\r\n userEmail: string;\r\n helperLogo: Subscription;\r\n // userExist: any = {\r\n // consumerExist: true,\r\n // technicianExist: true,\r\n // sitename: ''\r\n // }\r\n constructor(\r\n private router: Router,\r\n private sharedService: SharedService,\r\n private helperService: HelperService,\r\n private activatedRoute: ActivatedRoute,\r\n private cookieService: CookieService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.userEmail = localStorage.getItem('userName');\r\n const siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n this.siteNameText = siteName;\r\n // if (siteName === SITE_NAME_CONSTANTS.FERGUSON_CONTRACTOR ||\r\n // siteName === SITE_NAME_CONSTANTS.FERGUSON_CHANNEL ||\r\n // siteName === SITE_NAME_CONSTANTS.FERGUSON_MDU) {\r\n // this.currentContractorLogo = this.contractorLogoBlue;\r\n if (siteName === SITE_NAME_CONSTANTS.KEENHOME_CHANNEL) {\r\n this.currentContractorLogo = this.defaultLogo;\r\n }\r\n else if (siteName === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR ||\r\n siteName === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n this.getContractorInformation();\r\n }\r\n // this.getListStatus();\r\n // this.isShowUploadListModal = true;\r\n this.setListenerForWelcomeScreen();\r\n\r\n this.helperService.selectedTab.subscribe(data => {\r\n //this.getFromPage(data);\r\n if (data && !data.includes('meli')) {\r\n let page = data;\r\n this.fromPage = page[0].toUpperCase() + page.substr(1).toLowerCase();\r\n }\r\n console.log(this.fromPage)\r\n })\r\n\r\n this.setListenerForSiteTour();\r\n\r\n fromEvent(this.inputSearch.nativeElement, 'blur').subscribe((event: any) => {\r\n this.inputSearch.nativeElement.value = null;\r\n this.searchListSubscription && this.searchListSubscription.unsubscribe();\r\n this.hideSearchResultsDropdown;\r\n });\r\n\r\n fromEvent(this.inputSearch.nativeElement, 'keyup')\r\n .pipe(\r\n map((event: any) => {\r\n // this.isShowSearchLoading = true;\r\n if (event.keyCode === 13) {\r\n const searchValue = event.target.value;\r\n if (this.selectedSearchIndex >= 0 && this.selectedSearchValue) {\r\n this.navigateToRelaventPage(this.selectedSearchValue);\r\n } else if (searchValue.length > 0) {\r\n // this.isShowRecentSearches = false;\r\n // this.updateRecentSearchesList(searchValue);\r\n this.getSearchResults(searchValue);\r\n // this.emitSaveSearchQuery.emit(searchValue);\r\n // return;\r\n }\r\n } else if (event.keyCode === 40 && this.searchList &&\r\n this.searchList.length) {\r\n if (this.selectedSearchIndex === (this.searchList.length - 1)) {\r\n this.selectedSearchIndex = 0;\r\n } else {\r\n this.selectedSearchIndex += 1;\r\n }\r\n this.selectedSearchValue = this.searchList[this.selectedSearchIndex];\r\n } else if (event.keyCode === 38 && this.searchList &&\r\n this.searchList.length) {\r\n if (this.selectedSearchIndex <= 0) {\r\n this.selectedSearchIndex = (this.searchList.length - 1);\r\n } else {\r\n this.selectedSearchIndex -= 1;\r\n }\r\n this.selectedSearchValue = this.searchList[this.selectedSearchIndex];\r\n } else if (event.keyCode === 27) {\r\n this.selectedSearchIndex = -1;\r\n this.selectedSearchValue = null;\r\n }\r\n return event.target.value;\r\n }, this),\r\n debounceTime(1000),\r\n // distinctUntilChanged()\r\n )\r\n .subscribe((text: string) => {\r\n if (text.length > 0) {\r\n // && !this.isShowRecentSearches\r\n if (this.lastSearchedValue !== text) {\r\n // this.isShowRecentSearches = false;\r\n this.lastSearchedValue = '';\r\n this.getSearchResults(text);\r\n }\r\n } else {\r\n this.lastSearchedValue = '';\r\n this.hideSearchResultsDropdown();\r\n this.helperService.setSelectedSearchData('', 'customer', true);\r\n this.helperService.setSelectedSearchData('', 'technician', true);\r\n this.helperService.setSelectedSearchData('', 'property', true);\r\n // this.isShowRecentSearches = true;\r\n }\r\n });\r\n\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n this.version = contractorVersion.version;\r\n this.searchBoxPlaceholder =\r\n 'Search for Boards, Customers and Technicians';\r\n this.url = 'alerts';\r\n this.setListenerForContractorDetails();\r\n } else if (data.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n this.version = channelVersion.version;\r\n this.searchBoxPlaceholder =\r\n 'Search for Performance Boards or Dealers';\r\n this.url = 'installations';\r\n }\r\n else if (data.portalName === ROLE_CONSTANTS.MDU) {\r\n this.version = mduVersion.version;\r\n this.searchBoxPlaceholder =\r\n 'Search for Performance Boards, Properties, Technicians';\r\n this.url = 'alerts';\r\n this.setListenerForMduDetails();\r\n\r\n }\r\n }\r\n });\r\n\r\n this.helperLogo = this.helperService.setListenerForUploadLogo().subscribe((res)=>{\r\n console.log(res,\"logo\")\r\nif (res==\"true\") {\r\n this.getContractorInformation();\r\n }\r\n })\r\n }\r\n\r\n // getListStatus() {\r\n // this.sharedService.getUserExistStatus().subscribe(\r\n // (response: any) => {\r\n // if (response['responseData']) {\r\n // console.log(response['responseData']);\r\n // this.userExist.consumerExist = response['responseData']['consumerExist'];\r\n // this.userExist.technicianExist = response['responseData']['technicianExist'];\r\n // if (this.userExist.consumerExist == false || this.userExist.technicianExist == false) {\r\n // this.isShowUploadListModal = true\r\n // }\r\n // }\r\n // })\r\n\r\n // }\r\n //get welcomescreen\r\n setListenerForWelcomeScreen(siteName?) {\r\n this.sharedService.setListenerForLastLoginSubject().subscribe(\r\n (response) => {\r\n //this.setListenerForWelcome();\r\n this.helperService.setSiteTourEnableorNot(response);\r\n if (response.responseData && response.responseData.siteTour == 'Enabled') {\r\n this.portalName !== ROLE_CONSTANTS.CHANNEL ? this.setListenerForWelcome() : '';\r\n // this.helperService.setSiteTourEnableorNot(response);\r\n }\r\n // else {\r\n\r\n // this.checkUploadList();\r\n\r\n // }\r\n\r\n\r\n // }\r\n }, (error) => {\r\n\r\n }\r\n );\r\n }\r\n\r\n setListenerForWelcome() {\r\n this.modalTitle = \"Welcome\";\r\n this.toggleWelcomeModal();\r\n }\r\n\r\n checkUploadList() {\r\n if (this.siteNameText !== SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR && this.siteNameText !== SITE_NAME_CONSTANTS.KEENHOME_CHANNEL && this.siteNameText !== SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n if (this.portalName !== ROLE_CONSTANTS.CHANNEL) {\r\n this.checkBillingInformation('fromLogin');\r\n }\r\n // } else if (this.userExist.sitename === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR || this.userExist.sitename === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n //this.getListStatus();\r\n // //this.isShowUploadListModal = true;\r\n // // this.modaltext=\"For the best experience, download the Customer Template and upload your entire customer list. You can always add new customers manually by visiting the Customers tab.\"\r\n //\r\n }\r\n }\r\n getSearchResults(searchText) {\r\n this.selectedSearchIndex = -1;\r\n this.selectedSearchValue = null;\r\n const queryParams = {\r\n key: searchText,\r\n };\r\n\r\n this.isShowSearchLoading = true;\r\n // const urlEndPoint =\r\n // this.portalName === ROLE_CONSTANTS.CONTRACTOR\r\n // ? CONTRACTOR_API_CONSTANTS.GET_SEARCH_LIST\r\n // : CHANNEL_API_CONSTANTS.GET_SEARCH_LIST;\r\n let urlEndPoint;\r\n if (this.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n urlEndPoint = CONTRACTOR_API_CONSTANTS.GET_SEARCH_LIST;\r\n } else if (this.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n urlEndPoint = CHANNEL_API_CONSTANTS.GET_SEARCH_LIST;\r\n } else if (this.portalName === ROLE_CONSTANTS.MDU) {\r\n urlEndPoint = MDU_API_CONSTANTS.GET_SEARCH_LIST;\r\n }\r\n\r\n this.searchListSubscription = this.sharedService.getSearchList(queryParams, urlEndPoint).subscribe(\r\n (response: SearchResponse) => {\r\n if (response.searchList) {\r\n this.searchList = response.searchList;\r\n } else {\r\n this.searchList = [];\r\n const message = response.statusInfo;\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n this.isShowSearchPopUp = true;\r\n this.isShowSearchLoading = false;\r\n },\r\n (error) => {\r\n this.isShowSearchLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n hideSearchResultsDropdown() {\r\n this.isShowSearchPopUp = false;\r\n }\r\n\r\n navigateToRelaventPage(currentValue: SearchResponseDetails) {\r\n if (currentValue.store === 'Customer') {\r\n this.helperService.setSelectedSearchData(currentValue, 'customer', true);\r\n this.router.navigate(['/customers']);\r\n this.helperService.setSelectedTab('customers');\r\n } else if (currentValue.store === 'Technician') {\r\n this.helperService.setSelectedSearchData(\r\n currentValue,\r\n 'technician',\r\n true\r\n );\r\n this.router.navigate(['/technicians']);\r\n this.helperService.setSelectedTab('technicians');\r\n } else if (currentValue.store === 'Performance Board') {\r\n this.helperService.setSelectedSearchData(currentValue, 'meli', true);\r\n // localStorage.setItem('meliSerialNo', currentValue.name);\r\n this.router.navigate(['/meli/' + currentValue.name], { queryParams: { fromPage: this.fromPage, isShowTabs: false } });\r\n this.helperService.setSelectedTab('meli');\r\n } else if (currentValue.store === 'Dealer') {\r\n this.helperService.setSelectedSearchData(\r\n currentValue,\r\n 'contractor',\r\n true\r\n );\r\n this.router.navigate(['/dealers']);\r\n this.helperService.setSelectedTab('dealers');\r\n } else if (currentValue.store === 'Property') {\r\n this.helperService.setSelectedSearchData(currentValue, 'property', true);\r\n this.router.navigate(['/properties']);\r\n this.helperService.setSelectedTab('properties');\r\n }\r\n // this.helperService.setSelectedSearchData(currentValue, true);\r\n this.hideSearchResultsDropdown();\r\n }\r\n\r\n // getContractorInformation() {\r\n // console.log('Cont', 'HEAD')\r\n // this.sharedService.getContractorInformation((response, isError) => {\r\n // if (!isError) {\r\n // this.contractorInformation = response;\r\n // // sessionStorage.setItem('firmname', response.firmName);\r\n // // if (response.logoUrls && response.logoUrls.length) {\r\n // // this.profileImageUrl = response.logoUrls[0];\r\n // // }\r\n // }\r\n // });\r\n // }\r\n\r\n setListenerForContractorDetails() {\r\n this.sharedService.setListenerForContractorDetails().subscribe(\r\n (response: ContractorDetails) => {\r\n this.contractorInformation = response;\r\n }, (error) => {\r\n\r\n }\r\n );\r\n }\r\n\r\n // getMduInformation() {\r\n // this.sharedService.getMduInformation().subscribe((response) => {\r\n // this.mduInformation = response.responseData;\r\n // console.log(this.mduInformation)\r\n // });\r\n // }\r\n\r\n setListenerForMduDetails() {\r\n this.sharedService.setListenerForMduDetails().subscribe(\r\n (response) => {\r\n this.mduInformation = response;\r\n }, (error) => {\r\n\r\n }\r\n );\r\n }\r\n handleRefreshPage(){\r\n // this.getContractorInformation(); \r\n }\r\n getContractorInformation() {\r\n // debugger\r\n this.sharedService.getContractorInformation((response: ContractorDetails, isError) => {\r\n if (!isError) {\r\n this.contractorDetails = response;\r\n console.log(\"logo\", this.contractorDetails);\r\n // this.handleModalType('contractor-profile');\r\n if (response && response.logoUrls && response.logoUrls[0]) {\r\n this.currentContractorLogo = response.logoUrls[0];\r\n }\r\n else {\r\n this.currentContractorLogo = this.defaultLogo;\r\n }\r\n }\r\n\r\n });\r\n }\r\n\r\n handleConfirmationModalEmitter() {\r\n if (this.confirmationModalEmitterFlag === 'logout') {\r\n this.hadleLogout();\r\n }\r\n }\r\n\r\n handleModalType(type: string) {\r\n if (type === 'logout') {\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.modalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `Do you want to logout?`;\r\n this.confirmationModalEmitterFlag = 'logout';\r\n this.toggleConfirmationModal();\r\n } else if (type === 'contractor-profile') {\r\n this.modalTitle = 'Profile';\r\n //this.getContractorInformation();\r\n this.toggleCreateContractorModal();\r\n }\r\n else if (type === 'technicians') {\r\n this.helperService.setSelectedSearchData('', 'technician', true);\r\n }\r\n }\r\n hadleLogout() {\r\n const queryParams = this.helperService.handleParseLogoutQueryParam();\r\n this.isConfirmationModalActionBtnLoading = true;\r\n // this.sharedService.handleLogout(queryParams).subscribe(\r\n // (response) => {\r\n this.helperService.handleLogoutAPISuccessResponse();\r\n this.sharedService.setContractorInformation();\r\n this.isConfirmationModalActionBtnLoading = false;\r\n this.closeConfirmationModal();\r\n // }, (error) => {\r\n // this.isConfirmationModalActionBtnLoading = false;\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n // localStorage.removeItem('token');\r\n // localStorage.removeItem('disableBillingAfterRefresh');\r\n // // sessionStorage.clear();\r\n // this.sharedService.setContractorInformation();\r\n // this.router.navigate(['/login']);\r\n }\r\n\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n }\r\n\r\n toggleWelcomeModal() {\r\n this.isShowWelcomeModal = !this.isShowWelcomeModal;\r\n if (!this.isShowWelcomeModal) {\r\n this.checkUploadList();\r\n }\r\n\r\n\r\n }\r\n\r\n closeConfirmationModal() {\r\n this.isShowConfirmationModal = false;\r\n }\r\n\r\n toggleProfileDropdown(event?: any) {\r\n event && event.preventDefault();\r\n event && event.stopPropagation();\r\n this.isShowProfileDropdown = !this.isShowProfileDropdown;\r\n this.hideSearchResultsDropdown();\r\n\r\n }\r\n\r\n hideProfileDropdown() {\r\n this.isShowProfileDropdown = false;\r\n }\r\n\r\n toggleBillingModal(data) {\r\n this.isShowBillingModal = !this.isShowBillingModal;\r\n if (this.isShowBillingModal) {\r\n this.checkBillingInformation(data)\r\n }\r\n }\r\n toggleUploadListModal() {\r\n this.isShowUploadListModal = !this.isShowUploadListModal;\r\n }\r\n\r\n closeGuidePopUp(type?: string) {\r\n this.isShowGuidePopUp = false;\r\n if (type != 'previous') {\r\n this.helperService.setSiteTourFinised(true);\r\n }\r\n\r\n }\r\n\r\n handleSupport() {\r\n\r\n if (this.siteNameText === SITE_NAME_CONSTANTS.KEENHOME_CHANNEL ||\r\n this.siteNameText === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR ||\r\n this.siteNameText === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n window.open('https://prosupport.keenhome.io');\r\n } else {\r\n window.open('https://coolcloudhvac.zendesk.com/hc/en-us');\r\n }\r\n\r\n }\r\n\r\n togglePasswordModal() {\r\n this.isShowPasswordModal = !this.isShowPasswordModal;\r\n this.modalTitle = 'Change Password';\r\n }\r\n\r\n toggleTransferOrDeleteAccModal() {\r\n this.isShowTransferOrDeleteAccModal = !this.isShowTransferOrDeleteAccModal;\r\n }\r\n\r\n toggleCreateContractorModal() {\r\n this.isShowCreateContractorModal = !this.isShowCreateContractorModal;\r\n }\r\n\r\n handleSiteTourNavigation() {\r\n this.helperService.setSelectedSiteTour('');\r\n this.closeGuidePopUp('previous');\r\n }\r\n\r\n setListenerForSiteTour() {\r\n this.siteTourSubscription = this.helperService.setListenerForSiteTour().subscribe(\r\n (response) => {\r\n console.log(response)\r\n this.siteTourTitle = response['locator'];\r\n this.siteTourContent = response['description'];\r\n this.isShowGuidePopUp = true;\r\n }\r\n );\r\n }\r\n\r\n\r\n //check if card details avaible for the logined in user\r\n checkBillingInformation(fromLogin) {\r\n this.billingDetails = '';\r\n this.isUpdateAch = false;\r\n this.isUpdateCard = false;\r\n fromLogin == \"fromLogin\" ? this.isOnlogin = true : this.isOnlogin = false;\r\n this.sharedService.getBillingDetails().subscribe((result) => {\r\n this.billingDetails = result.responseData;\r\n this.checkBillingValidity(this.billingDetails);\r\n if (this.isOnlogin) {\r\n localStorage.getItem('disableBillingAfterRefresh') == 'true' ? \"\" : this.checkBillingValidityonLogin(this.billingDetails);\r\n localStorage.setItem('disableBillingAfterRefresh', 'true');\r\n }\r\n }, err => {\r\n this.billingDetails = ''\r\n this.isUpdateAch = false;\r\n this.isUpdateCard = false;\r\n this.isShowBillingModal = !this.isShowBillingModal;\r\n })\r\n }\r\n\r\n //checking validity of billing cards on menu click\r\n checkBillingValidity(data) {\r\n this.modalTitle = \"Billing\"\r\n data.forEach(card => {\r\n if (card.type == \"card\") {\r\n this.isUpdateCard = true;\r\n }\r\n else if (card.type == \"account\") {\r\n this.isUpdateAch = true;\r\n }\r\n });\r\n }\r\n //validate the save cards on pageload\r\n checkBillingValidityonLogin(data) {\r\n if (this.billingDetails.length != 0) {\r\n this.modalTitle = \"Billing\"\r\n let date = new Date();\r\n let month = date.getMonth() + 1;\r\n let year = date.getFullYear();\r\n console.log(month, data)\r\n data.forEach(card => {\r\n //card.exp_month < 10 ? month = \"0\" + month : \"\"\r\n if (card.type == \"card\") {\r\n if (card.exp_year < year || (card.exp_year == year && card.exp_month < month)) {\r\n // const message = \"Your card has been expired. Update your card details\"\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n this.isUpdateCard = true;\r\n this.isShowBillingModal = !this.isShowBillingModal;\r\n }\r\n\r\n if (card.type == \"account\") {\r\n this.isUpdateAch = true;\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n this.modalTitle = \"Add Your Billing Info\"\r\n this.isShowBillingModal = !this.isShowBillingModal\r\n }\r\n }\r\n\r\n //redirect to page\r\n redirect() {\r\n if (this.portalName == ROLE_CONSTANTS.CHANNEL) {\r\n this.router.navigate(['/installations']);\r\n }\r\n else {\r\n this.router.navigate(['/alerts']);\r\n }\r\n }\r\n // getFromPage(data) {\r\n // if(data==\"Alerts\")\r\n // }\r\n ngOnDestroy() {\r\n this.helperLogo.unsubscribe()\r\n this.siteTourSubscription.unsubscribe();\r\n\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.wrapper .with_header_footer {\\n min-height: calc(100vh - 6.4rem - 4.5rem);\\n}\\n.wrapper .without_header_footer {\\n min-height: 100vh;\\n padding-top: 5rem;\\n}\\n.wrapper .firm-name {\\n font-size: 1.8rem;\\n font-weight: 600;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0L2FkbWluL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcbGF5b3V0XFxhZG1pblxcYWRtaW4uY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2xheW91dC9hZG1pbi9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9sYXlvdXQvYWRtaW4vYWRtaW4uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREdJO0VBQ0kseUNBQUE7QUVBUjtBRkdJO0VBQ0ksaUJBQUE7RUFDQSxpQkFBQTtBRURSO0FGSUk7RUFDSSxpQkFBQTtFQUVBLGdCQUFBO0FFSFIiLCJmaWxlIjoic3JjL2FwcC9sYXlvdXQvYWRtaW4vYWRtaW4uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICcuLi8uLi8uLi9zdHlsZXNoZWV0cy92YXJpYWJsZXMuc2Nzcyc7XHJcbi53cmFwcGVyIHtcclxuICAgIC53aXRoX2hlYWRlcl9mb290ZXIge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA2LjRyZW0gLSA0LjVyZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIC53aXRob3V0X2hlYWRlcl9mb290ZXIge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5maXJtLW5hbWUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gICAgICAgIC8vIGNvbG9yOiAkY29sb3ItYXRoZW5zZ3JheS0yO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcbn0iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4ud3JhcHBlciAud2l0aF9oZWFkZXJfZm9vdGVyIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDYuNHJlbSAtIDQuNXJlbSk7XG59XG4ud3JhcHBlciAud2l0aG91dF9oZWFkZXJfZm9vdGVyIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xufVxuLndyYXBwZXIgLmZpcm0tbmFtZSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufSJdfQ== */\"","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport * as moment from 'moment';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\n\r\n// Constants\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { SITE_NAME_CONSTANTS } from 'src/app/shared/constants/site-name.constant';\r\n\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\n// Models\r\nimport { ContractorDetails } from 'src/app/shared/models/contractor.modal';\r\nimport { Customer } from 'src/app/shared/models/inventory.model';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n@Component({\r\n selector: 'app-admin',\r\n templateUrl: './admin.component.html',\r\n styleUrls: ['./admin.component.scss']\r\n})\r\nexport class AdminComponent implements OnInit, OnDestroy {\r\n\r\n portalName: string;\r\n idleTime: any;\r\n warningTimeOut: any;\r\n isConfimationModal = false;\r\n modalTitle: string;\r\n confirmationModalLine1Content: string;\r\n isConfirmationModalHasYesOrNoButton = false;\r\n idleTimeSubscription: Subscription;\r\n isShowTabs = true;\r\n isShowHeader = true;\r\n isShowFooter = true;\r\n authTime: string;\r\n firmName: string;\r\n mduInformation: any;\r\n\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private helperService: HelperService,\r\n private sharedService: SharedService,\r\n private router: Router,\r\n private cookieService: CookieService\r\n ) { }\r\n\r\n ngOnInit() {\r\n const siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n\r\n if (siteName === SITE_NAME_CONSTANTS.FERGUSON_CONTRACTOR ||\r\n siteName === SITE_NAME_CONSTANTS.FERGUSON_CHANNEL ||\r\n siteName === SITE_NAME_CONSTANTS.FERGUSON_MDU ||\r\n siteName === SITE_NAME_CONSTANTS.CONNECTM_CONTRACTOR ||\r\n siteName === SITE_NAME_CONSTANTS.CONNECTM_CHANNEL ||\r\n siteName === SITE_NAME_CONSTANTS.CONNECTM_MDU ) {\r\n this.isShowFooter = false;\r\n }\r\n\r\n this.activatedRoute.data.subscribe(data => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n this.getContractorInformation();\r\n }\r\n else if (data.portalName === ROLE_CONSTANTS.MDU) {\r\n this.getMduInformation();\r\n }\r\n }\r\n });\r\n\r\n this.activatedRoute.queryParams.subscribe(\r\n (response) => {\r\n console.log(response)\r\n if (response && response.isShowTabs && !JSON.parse(response.isShowTabs)) {\r\n this.isShowTabs = false;\r\n } else {\r\n this.isShowTabs = true;\r\n }\r\n }\r\n );\r\n\r\n if (this.activatedRoute && this.activatedRoute.snapshot.queryParams &&\r\n this.activatedRoute.snapshot && this.activatedRoute.snapshot.queryParams) {\r\n if (this.activatedRoute.snapshot.queryParams.isShowTabs &&\r\n !JSON.parse(this.activatedRoute.snapshot.queryParams.isShowTabs)) {\r\n this.isShowTabs = false;\r\n }\r\n if (this.activatedRoute.snapshot.queryParams.isShowHeader &&\r\n !JSON.parse(this.activatedRoute.snapshot.queryParams.isShowHeader)) {\r\n this.isShowHeader = false;\r\n }\r\n if (this.activatedRoute.snapshot.queryParams.isShowFooter &&\r\n !JSON.parse(this.activatedRoute.snapshot.queryParams.isShowFooter)) {\r\n this.isShowFooter = false;\r\n }\r\n }\r\n\r\n this.getLastLoggedInTime();\r\n this.helperService.handleStartIdleTime();\r\n this.setListnerForWarningIdleTime();\r\n }\r\n\r\n getMduInformation() {\r\n this.sharedService.getMduInformation((response: Customer, isError) => {\r\n if (!isError) {\r\n this.firmName = response ? response.contractorName : '';\r\n }\r\n });\r\n }\r\n\r\n getContractorInformation() {\r\n this.sharedService.getContractorInformation((response: ContractorDetails, isError) => {\r\n if (!isError) {\r\n this.firmName = response.firmName ? response.firmName : response.contractorName;\r\n // sessionStorage.setItem('firmname', response.firmName);\r\n // if (response.logoUrls && response.logoUrls.length) {\r\n // this.profileImageUrl = response.logoUrls[0];\r\n // }\r\n }\r\n });\r\n }\r\n\r\n getLastLoggedInTime() {\r\n let payload = {};\r\n const isRememberMeChecked = localStorage.getItem('isRememberMeChecked');\r\n if (isRememberMeChecked === 'true') {\r\n payload = {\r\n userName: localStorage.getItem('userName'),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n } else {\r\n payload = {\r\n userName: localStorage.getItem('userName'),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n }\r\n\r\n this.sharedService.getLastLoggedInTime(payload).subscribe(\r\n (response) => {\r\n this.sharedService.setLastLoginDetailsSubject(response);\r\n if (response && response.responseData && response.responseData.lastLoggedInTime) {\r\n this.handleCalculateLastLoggedTime(response.responseData.lastLoggedInTime);\r\n // if (response.responseData.siteTour == 'Enabled') {\r\n // this.setListenerForSiteTour();\r\n // }\r\n }\r\n }, (error) => {\r\n\r\n }\r\n );\r\n }\r\n\r\n handleCalculateLastLoggedTime(time) {\r\n const lastLoggedInTime = moment.utc(time).local();\r\n const currentTime = moment(new Date());\r\n\r\n if (currentTime.diff(lastLoggedInTime, 'years') === 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'years') + ' year';\r\n } else if (currentTime.diff(lastLoggedInTime, 'years') > 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'years') + ' years';\r\n } else if (currentTime.diff(lastLoggedInTime, 'months') === 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'months') + ' month';\r\n } else if (currentTime.diff(lastLoggedInTime, 'months') > 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'months') + ' months';\r\n } else if (currentTime.diff(lastLoggedInTime, 'days') === 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'days') + ' day';\r\n } else if (currentTime.diff(lastLoggedInTime, 'days') > 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'days') + ' days';\r\n } else if (currentTime.diff(lastLoggedInTime, 'hours') === 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'hours') + ' hour';\r\n } else if (currentTime.diff(lastLoggedInTime, 'hours') > 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'hours') + ' hours';\r\n } else if (currentTime.diff(lastLoggedInTime, 'minutes') === 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'minutes') + ' minute';\r\n } else if (currentTime.diff(lastLoggedInTime, 'minutes') > 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'minutes') + ' minutes';\r\n } else if (currentTime.diff(lastLoggedInTime, 'seconds') === 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'seconds') + ' second';\r\n } else if (currentTime.diff(lastLoggedInTime, 'seconds') > 1) {\r\n this.authTime = currentTime.diff(lastLoggedInTime, 'seconds') + ' seconds';\r\n }\r\n }\r\n\r\n handleResetIdleTime() {\r\n if (this.isConfimationModal) {\r\n // this.helperService.handleResetWarningIdleTime();\r\n } else {\r\n this.helperService.handleResetIdleTime();\r\n }\r\n }\r\n\r\n setListnerForWarningIdleTime() {\r\n this.idleTimeSubscription = this.helperService.setListnerForWarningIdleTime().subscribe(\r\n (response) => {\r\n this.handleWarningIdleTime();\r\n }, (error) => {\r\n\r\n }\r\n );\r\n }\r\n\r\n handleWarningIdleTime() {\r\n this.modalTitle = 'Session Time-out';\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.toggleConfirmationModal(true);\r\n this.helperService.handleWarningIdleTime();\r\n }\r\n\r\n handleConfirmationModalEmitter() {\r\n this.handleLogout();\r\n this.toggleConfirmationModal(false);\r\n }\r\n\r\n handleLogout() {\r\n this.helperService.setValueForIsAlreadyIdleTimeRunning(false);\r\n // localStorage.clear();\r\n // // sessionStorage.clear();\r\n // this.router.navigate(['/login']);\r\n const queryParams = this.helperService.handleParseLogoutQueryParam();\r\n // this.sharedService.handleLogout(queryParams).subscribe(\r\n // (response) => {\r\n this.helperService.handleLogoutAPISuccessResponse();\r\n // }, (error) => {\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n }\r\n\r\n toggleConfirmationModal(value: boolean) {\r\n this.isConfimationModal = value;\r\n // if (!value) {\r\n // this.helperService.handleResetIdleTime();\r\n // }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.idleTimeSubscription.unsubscribe();\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n// Modules\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\n\r\n// Components\r\nimport { AdminComponent } from './admin/admin.component';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n\r\nconst Components = [\r\n AdminComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [ Components ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n CoreModule,\r\n SharedModule\r\n ],\r\n exports: [ Components ],\r\n providers: [\r\n CookieService\r\n ],\r\n})\r\nexport class LayoutModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Services\r\nimport { ApiService } from 'src/app/shared/services/api.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\n// Models\r\nimport { LoginResponseDetails, ForgotPasswordResponseDetails, ResetPasswordResponseDetails } from 'src/app/shared/models/auth.model';\r\n\r\n// Constants\r\nimport { API_CONSTANTS } from 'src/app/shared/constants/api.constant';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { CommonSuccessResponse } from 'src/app/shared/models/common.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n\r\n private BASE_URL;\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private helperService: HelperService,\r\n ) {\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.LOGIN);\r\n }\r\n\r\n handleSignUp(payload: object): Observable {\r\n const baseUrl = this.helperService.handleBaseUrl(BASE_URL_TYPES.COMMON_BASE);\r\n const url = baseUrl + API_CONSTANTS.SIGN_UP;\r\n return this.apiService.post(url, payload, {}, false, false).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n handleLogin(payload: object): Observable {\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.LOGIN);\r\n const url = this.BASE_URL + API_CONSTANTS.LOGIN;\r\n return this.apiService.post(url, payload, {}, false, false).pipe(map(response => new LoginResponseDetails(response)));\r\n }\r\n\r\n handleRegistrationStatus(queryParams: object): Observable{\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.COMMON_BASE);\r\n const url = this.BASE_URL + API_CONSTANTS.REGISTRATION_STATUS;\r\n return this.apiService.get(url, queryParams, false, false).pipe(map(response => new LoginResponseDetails(response)));\r\n }\r\n\r\n handleResetPassword(queryParams): Observable {\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.LOGIN);\r\n const url = this.BASE_URL + API_CONSTANTS.RESET_PASSWORD;\r\n return this.apiService.post(url, queryParams, {}, false, false).pipe(map(response => new ResetPasswordResponseDetails(response)));\r\n }\r\n\r\n handleForgotPassword(queryParams): Observable {\r\n // queryParams.userName= encodeURI(queryParams.userName);\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.LOGIN);\r\n const url = this.BASE_URL + API_CONSTANTS.FORGOT_PASSWORD+\"?userName=\"+queryParams.userName+\"&userPoolId=\"+queryParams.userPoolId+\"&userRole=\"+queryParams.userRole;\r\n return this.apiService.get(url, '',false, false).pipe(map(response => new ForgotPasswordResponseDetails(response)));\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Services\r\nimport { ApiService } from 'src/app/shared/services/api.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\n// Constants\r\nimport { API_CONSTANTS } from 'src/app/shared/constants/api.constant';\r\nimport { CONTRACTOR_API_CONSTANTS } from 'projects/contractor/src/app/shared-contractor/constants/api.constant';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\n\r\n// Models\r\nimport { InstallationReportDetails, InstallationReportResponse, InventoryResponse } from 'src/app/shared/models/inventory.model';\r\nimport {\r\n SensorStatusResponse, ScheduleEmergencyShutoffResponse,\r\n EmergencyShutoffStatusResponse,\r\n CanScheduleEmergencyShutoffResponse,\r\n CancelEmergencyShutoffResponse,\r\n SensorCurrentStatusResponse,\r\n HVACStatusResponse\r\n} from 'src/app/shared/models/meli.model';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MeliService {\r\n\r\n private BASE_URL;\r\n private PRE_SEASON_BASE_URL;\r\n private YANTRA_CONSOLE_BASE_URL;\r\n private COMFORTBRIDGE_BASE_URL;\r\n constructor(\r\n private apiService: ApiService,\r\n private helperService: HelperService\r\n ) {\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.COMMON_BASE);\r\n this.PRE_SEASON_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.PRE_SEASON_TEST);\r\n this.YANTRA_CONSOLE_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.UPDATE_RELAY);\r\n\r\n }\r\n\r\n handleSchedulePreSeasonTest(payload: object, isBulk): Observable {\r\n if (isBulk) {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.SCHEDULE_BULK_PRE_SEASON_TEST;\r\n return this.apiService.post(url, payload).pipe(map(response => (response)));\r\n }\r\n else {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.SCHEDULE_PRE_SEASON_TEST;\r\n return this.apiService.post(url, payload).pipe(map(response => (response)));\r\n }\r\n\r\n }\r\n\r\n getSensorCurrentStatus(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_SENSOR_CURRENT_STATUS;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new SensorCurrentStatusResponse(response)));\r\n }\r\n getSensorInstallationStatus(payload: object): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_INSTALLATION_REPORT;\r\n return this.apiService.get(url, payload).pipe(map(response => new InstallationReportResponse(response)));\r\n }\r\n getPreSeasonTestStatus(payload: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.PRE_SEASON_TEST_STATUS;\r\n return this.apiService.get(url, payload).pipe(map(response => (response)));\r\n }\r\n\r\n handleCancelPreSeasonTest(payload: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.CANCEL_PRE_SEASON_TEST;\r\n return this.apiService.get(url, payload).pipe(map(response => (response)));\r\n }\r\n\r\n\r\n\r\n handleScheduleEmergencyShutoff(payload: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.SCHEDULE_EMERGENCY_SHUTOFF;\r\n return this.apiService.post(url, payload).pipe(map(response => new ScheduleEmergencyShutoffResponse(response)));\r\n }\r\n\r\n getEmergencyShutoffStatus(queryParams: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.GET_EMERGENCY_SHUTOFF_STATUS;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new EmergencyShutoffStatusResponse(response)));\r\n }\r\n\r\n getCanScheduleEmergencyShutoff(queryParams: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.CAN_SCHEDULE_EMERGENCY_SHUTOFF;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new CanScheduleEmergencyShutoffResponse(response)));\r\n }\r\n\r\n handleCancelEmergencyShutoff(payload: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + CONTRACTOR_API_CONSTANTS.CANCEL_EMERGENCY_SHUTOFF;\r\n return this.apiService.get(url, payload).pipe(map(response => new CancelEmergencyShutoffResponse(response)));\r\n }\r\n\r\n getHVACStatus(queryParams: object): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_HVAC_STATUS;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new HVACStatusResponse(response)));\r\n }\r\n\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Services\r\nimport { ApiService } from 'src/app/shared/services/api.service';\r\n\r\n// Constants\r\nimport { CONTRACTOR_API_CONSTANTS } from 'projects/contractor/src/app/shared-contractor/constants/api.constant';\r\n\r\n// Models\r\nimport { CreateTechnicianResponse, DeleteTechnicianResponse, EditTechnicianResponse, TechnicianBulkUploadResponse, TechnicianInfo, TechnicianJobHistoryResponse } from 'src/app/shared/models/technician.model';\r\nimport { TechnicianPropertiesResponse, UploadProperyListResponse } from 'src/app/shared/models/properties.model';\r\nimport { MDU_API_CONSTANTS } from 'projects/mdu/src/app/shared-mdu/constants/api.constants';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { API_CONSTANTS } from 'src/app/shared/constants/api.constant';\r\nimport { CommonSuccessResponse } from 'src/app/shared/models/common.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TechnicianService {\r\n\r\n private BASE_URL;\r\n\r\n constructor(\r\n private apiService: ApiService,\r\n private helperService: HelperService\r\n ) {\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.COMMON_BASE);\r\n }\r\n\r\n getTechnicianList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_TECHNICIANS_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new TechnicianInfo(response)));\r\n }\r\n\r\n createTechnician(payload): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.CREATE_TECHNICIAN;\r\n return this.apiService.post(url, payload).pipe(map(response => new CreateTechnicianResponse(response)));\r\n }\r\n\r\n // uploadTechnicianList(payload,filedata) {\r\n // const url = this.BASE_URL + API_CONSTANTS.UPLOAD_TECHNICIAN_LIST;\r\n // return this.apiService.post(url,filedata,payload).pipe(map(response => new UploadProperyListResponse(response)));\r\n // }\r\n\r\n deleteTechnicians(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.DELETE_TECHNICIAN;\r\n return this.apiService.delete(url, queryParams).pipe(map(response => new DeleteTechnicianResponse(response)));\r\n }\r\n\r\n getTechnicianJobHistoryList(queryParams): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.TECHNICIAN_JOB_HISTORY_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new TechnicianJobHistoryResponse(response)));\r\n }\r\n\r\n getTechnicianProperties(queryParams): Observable {\r\n const url = this.BASE_URL + MDU_API_CONSTANTS.GET_TECHNICIAN_PROPERTIES;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new TechnicianPropertiesResponse(response)));\r\n }\r\n\r\n editTechnician(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.EDIT_TECHNICIAN;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new EditTechnicianResponse(response)));\r\n }\r\n\r\n deactivateTechnician(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.DE_ACTIVATE_TECHNICIAN;\r\n return this.apiService.put(url, null, queryParams).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n activateTechnician(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.ACTIVATE_TECHNICIAN;\r\n return this.apiService.put(url, null, queryParams).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n reInviteTechnician(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.RE_INVITE_TECHNICIAN;\r\n return this.apiService.put(url, null, queryParams).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n// uploadCustomerListStatus(queryParams) {\r\n// const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_UPLOAD_STATUS;\r\n// return this.apiService.get(url, queryParams).pipe(map(response => new UploadProperyListResponse(response)));\r\n// }\r\n\r\n// uploadCustomerListStatusReset(queryParams) {\r\n// const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.UPLOAD_STATUS_RESET;\r\n// return this.apiService.put(url, \"\",queryParams).pipe(map(response => new UploadProperyListResponse(response)));\r\n// }\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n.section {\\n width: 100%;\\n height: 100vh;\\n background-color: #e3e3e3;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n font-family: \\\"Lato-Regular\\\";\\n}\\n.section .box {\\n background-color: #ffffff;\\n width: 50%;\\n}\\n.section .body {\\n font-weight: normal;\\n padding: 30px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbW9kdWxlcy91bnN1YnNjcmliZS9wYWdlcy91bnN1YnNjcmliZS9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXG1vZHVsZXNcXHVuc3Vic2NyaWJlXFxwYWdlc1xcdW5zdWJzY3JpYmVcXHVuc3Vic2NyaWJlLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9tb2R1bGVzL3Vuc3Vic2NyaWJlL3BhZ2VzL3Vuc3Vic2NyaWJlL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zdGRpbiIsInNyYy9hcHAvbW9kdWxlcy91bnN1YnNjcmliZS9wYWdlcy91bnN1YnNjcmliZS91bnN1YnNjcmliZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQ0NBO0VBQ0UsV0FBQTtFQUNBLGFBQUE7RUFDQSx5QkR5Q2E7RUN4Q2IsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsbUJBQUE7RUFDQSwyQkQ4RnVCO0FFN0Z6QjtBREFFO0VBQ0UseUJEQ2tCO0VDQWxCLFVBQUE7QUNFSjtBREFFO0VBQ0UsbUJBQUE7RUFDQSxhQUFBO0FDRUoiLCJmaWxlIjoic3JjL2FwcC9tb2R1bGVzL3Vuc3Vic2NyaWJlL3BhZ2VzL3Vuc3Vic2NyaWJlL3Vuc3Vic2NyaWJlLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIkBpbXBvcnQgXCJzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3NcIjtcclxuLnNlY3Rpb24ge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktOTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtTGF0by1SZWd1bGFyO1xyXG4gIC5ib3gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gIH1cclxuICAuYm9keSB7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuICB9XHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5zZWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlM2UzZTM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJMYXRvLVJlZ3VsYXJcIjtcbn1cbi5zZWN0aW9uIC5ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB3aWR0aDogNTAlO1xufVxuLnNlY3Rpb24gLmJvZHkge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAzMHB4O1xufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FormBuilder, FormGroup, FormControl, Validators, FormArray} from '@angular/forms';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n@Component({\r\n selector: 'app-unsubscribe',\r\n templateUrl: './unsubscribe.component.html',\r\n styleUrls: ['./unsubscribe.component.scss']\r\n})\r\nexport class UnsubscribeComponent implements OnInit {\r\nunsubscribeForm: FormGroup;\r\n emailList: any = [];\r\n data: any;\r\n isShowInfoModal: boolean=false;\r\n confirmationModalLine1Content: string=\"\";\r\n isButtonDisabled=false;\r\n confirmationModalLine2Content: string;\r\n isSuccessTosterModal:boolean=false;\r\n modalTitle: string;\r\n show: boolean;\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private router:Router,\r\n private formBuilder: FormBuilder,\r\n private sharedService: SharedService,\r\n private helperService: HelperService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.show=false;\r\n //console.log(this.initNavSettings(history.state.navSettings););\r\n if(localStorage.getItem('unsubscribe'))\r\n {\r\n this.data = JSON.parse(localStorage.getItem('unsubscribe'))\r\n this.show=true;\r\n }\r\n else\r\n {\r\n this.show=false;\r\n this.router.navigate(['/login'])\r\n }\r\n //this.data = JSON.parse(localStorage.getItem('unsubscribe'))\r\n \r\n this.emailList = this.data.email;\r\n this.unsubscribeForm = this.formBuilder.group({\r\n emails: this.formBuilder.array([], [Validators.required])\r\n })\r\n const emails: FormArray = this.unsubscribeForm.get('emails') as FormArray;\r\n this.emailList.forEach(element => {\r\n emails.push(new FormControl(element));\r\n });\r\n\r\n this.submitData();\r\n }\r\n\r\n // onCheckboxChange(e) {\r\n // e.preventDefault();\r\n // const emails: FormArray = this.unsubscribeForm.get('emails') as FormArray;\r\n // if (e.target.checked) {\r\n // emails.push(new FormControl(e.target.value));\r\n // } else {\r\n // const index = emails.controls.findIndex(x => x.value === e.target.value);\r\n // emails.removeAt(index);\r\n // }\r\n // emails.length>0? this.isButtonDisabled=false: this.isButtonDisabled=true;\r\n // }\r\n\r\n toggleunsubscribeModal()\r\n {\r\n this.isShowInfoModal = !this.isShowInfoModal;\r\n }\r\n closeModal()\r\n {\r\n this.helperService.handleLogoutAPISuccessResponse();\r\n this.sharedService.setContractorInformation();\r\n this.router.navigate(['/login'])\r\n }\r\n handleModal(type)\r\n {\r\n if(type==\"showpopup\")\r\n {\r\n this.confirmationModalLine1Content=\"Please confirm that you would like to unsubscribe\";\r\n this.toggleunsubscribeModal();\r\n }\r\n }\r\n submitData(){\r\n let selectedEmail = this.unsubscribeForm.get('emails').value;\r\n selectedEmail.forEach(email => {\r\n let payload: any = {\r\n userId:this.data.userId,\r\n userRole:this.data.userRole, \r\n email:email,\r\n subscription:false\r\n }\r\n\r\n console.log(payload)\r\n this.sharedService.unsubscribeEmail(payload).subscribe(res=>{\r\n this.confirmationModalLine1Content=\"You have successfully unsubscribed from all optional notifications.\";\r\n this.confirmationModalLine2Content=\"Note that all account-related notifications will still continue to be sent.\";\r\n this.isSuccessTosterModal=true;\r\n this.modalTitle=\"Warning\";\r\n this.toggleunsubscribeModal();\r\n },err=>{\r\n if(err.error.statusInfo)\r\n {\r\n this.confirmationModalLine1Content=err.error.statusInfo;\r\n this.confirmationModalLine2Content=\"\";\r\n }\r\n else{\r\n this.confirmationModalLine1Content=\"Issue in unsubscribe\";\r\n this.confirmationModalLine2Content=\"Please try after sometime\";\r\n }\r\n\r\n this.isSuccessTosterModal=false;\r\n this.modalTitle=\"Warning\";\r\n this.toggleunsubscribeModal();\r\n });\r\n \r\n localStorage.removeItem('unsubscribe');\r\n });\r\n \r\n }\r\n \r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.advance-diagnostic-modal_wrapper .modal-content {\\n max-width: 87%;\\n}\\n.advance-diagnostic-modal_wrapper .modal-body {\\n min-height: 45vh;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper {\\n margin-bottom: 0.1rem;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper .navigation_wrapper .tab-item {\\n width: 12.5rem;\\n font-size: 1.4rem;\\n padding: 1rem 0.5rem;\\n text-align: center;\\n list-style: none;\\n cursor: pointer;\\n color: #ffffff;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper .navigation_wrapper .selected-tab {\\n cursor: default;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper .navigation_wrapper .tab-item:not(:last-child) {\\n margin-right: 1px;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper .navigation_wrapper .tab-item:first-child {\\n border-top-left-radius: 3px;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper .navigation_wrapper .tab-item:last-child {\\n border-top-right-radius: 3px;\\n}\\n.advance-diagnostic-modal_wrapper .tabs-checkbox_wrapper .current-tab {\\n color: #71ceca;\\n}\\n.advance-diagnostic-modal_wrapper .from-time_wrapper,\\n.advance-diagnostic-modal_wrapper .to-time_wrapper {\\n width: 20%;\\n}\\n.advance-diagnostic-modal_wrapper .date_wrapper {\\n width: 60%;\\n}\\n.advance-diagnostic-modal_wrapper .height_25 {\\n height: 2.5rem;\\n}\\n.advance-diagnostic-modal_wrapper .no-data-placeholder {\\n margin-top: 4rem;\\n font-weight: 600;\\n text-align: center;\\n font-size: 1.5rem;\\n color: #2a3343;\\n}\\n.advance-diagnostic-modal_wrapper .investigate-wrapper,\\n.advance-diagnostic-modal_wrapper .hvac-cycles-wrapper {\\n min-height: 5rem;\\n position: relative;\\n}\\n.advance-diagnostic-modal_wrapper .plotbands-checkbox_wrapper-disable::before {\\n position: absolute;\\n content: \\\"\\\";\\n inset: 0;\\n z-index: 9999;\\n cursor: not-allowed;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxhZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxcXGFkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXHN0eWxlc2hlZXRzXFxfdmFyaWFibGVzLnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2FkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbC9hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREdFO0VBQ0UsY0FBQTtBRUFKO0FGRUU7RUFDRSxnQkFBQTtBRUFKO0FGR0U7RUFDRSxxQkFBQTtBRURKO0FGSU07RUFDRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtFQUVBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsY0NYYztBQ1F0QjtBRk1NO0VBRUUsZUFBQTtBRUxSO0FGVU07RUFDRSxpQkFBQTtBRVJSO0FGV007RUFDRSwyQkFBQTtBRVRSO0FGWU07RUFDRSw0QkFBQTtBRVZSO0FGY0k7RUFDRSxjQzlCb0I7QUNrQjFCO0FGZ0JFOztFQUdFLFVBQUE7QUVmSjtBRmtCRTtFQUNFLFVBQUE7QUVoQko7QUZrQkU7RUFDRSxjQUFBO0FFaEJKO0FGbUJFO0VBQ0UsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQzlDd0I7QUM2QjVCO0FGb0JFOztFQUVFLGdCQUFBO0VBQ0Esa0JBQUE7QUVsQko7QUZxQkU7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxRQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0FFbkJKIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsL2FkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkBpbXBvcnQgXCJzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3NcIjtcclxuLmFkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbF93cmFwcGVyIHtcclxuICAubW9kYWwtY29udGVudCB7XHJcbiAgICBtYXgtd2lkdGg6IDg3JTtcclxuICB9XHJcbiAgLm1vZGFsLWJvZHkge1xyXG4gICAgbWluLWhlaWdodDogNDV2aDtcclxuICB9XHJcblxyXG4gIC50YWJzLWNoZWNrYm94X3dyYXBwZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC4xcmVtO1xyXG5cclxuICAgIC5uYXZpZ2F0aW9uX3dyYXBwZXIge1xyXG4gICAgICAudGFiLWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMi41cmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMC41cmVtO1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlbGVjdGVkLXRhYiB7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmF2aWdhdGlvbl93cmFwcGVyIHtcclxuICAgICAgLnRhYi1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGFiLWl0ZW06Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRhYi1pdGVtOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY3VycmVudC10YWIge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZyb20tdGltZV93cmFwcGVyLFxyXG4gIC50by10aW1lX3dyYXBwZXIge1xyXG4gICAgLy93aWR0aDogMjVyZW07XHJcbiAgICB3aWR0aDogMjAlO1xyXG4gIH1cclxuXHJcbiAgLmRhdGVfd3JhcHBlciB7XHJcbiAgICB3aWR0aDogNjAlO1xyXG4gIH1cclxuICAuaGVpZ2h0XzI1IHtcclxuICAgIGhlaWdodDogMi41cmVtO1xyXG4gIH1cclxuXHJcbiAgLm5vLWRhdGEtcGxhY2Vob2xkZXIge1xyXG4gICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIGNvbG9yOiAkY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTtcclxuICB9XHJcblxyXG4gIC5pbnZlc3RpZ2F0ZS13cmFwcGVyLFxyXG4gIC5odmFjLWN5Y2xlcy13cmFwcGVyIHtcclxuICAgIG1pbi1oZWlnaHQ6IDVyZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAucGxvdGJhbmRzLWNoZWNrYm94X3dyYXBwZXItZGlzYWJsZTo6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBpbnNldDogMDtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gIH1cclxufVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4uYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDg3JTtcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDQ1dmg7XG59XG4uYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsX3dyYXBwZXIgLnRhYnMtY2hlY2tib3hfd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuMXJlbTtcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAudGFicy1jaGVja2JveF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtIHtcbiAgd2lkdGg6IDEyLjVyZW07XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBwYWRkaW5nOiAxcmVtIDAuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmFkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbF93cmFwcGVyIC50YWJzLWNoZWNrYm94X3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAuc2VsZWN0ZWQtdGFiIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmFkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbF93cmFwcGVyIC50YWJzLWNoZWNrYm94X3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmFkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbF93cmFwcGVyIC50YWJzLWNoZWNrYm94X3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XG59XG4uYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsX3dyYXBwZXIgLnRhYnMtY2hlY2tib3hfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIC50YWItaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAudGFicy1jaGVja2JveF93cmFwcGVyIC5jdXJyZW50LXRhYiB7XG4gIGNvbG9yOiAjNzFjZWNhO1xufVxuLmFkdmFuY2UtZGlhZ25vc3RpYy1tb2RhbF93cmFwcGVyIC5mcm9tLXRpbWVfd3JhcHBlcixcbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAudG8tdGltZV93cmFwcGVyIHtcbiAgd2lkdGg6IDIwJTtcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAuZGF0ZV93cmFwcGVyIHtcbiAgd2lkdGg6IDYwJTtcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAuaGVpZ2h0XzI1IHtcbiAgaGVpZ2h0OiAyLjVyZW07XG59XG4uYWR2YW5jZS1kaWFnbm9zdGljLW1vZGFsX3dyYXBwZXIgLm5vLWRhdGEtcGxhY2Vob2xkZXIge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjb2xvcjogIzJhMzM0Mztcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAuaW52ZXN0aWdhdGUtd3JhcHBlcixcbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAuaHZhYy1jeWNsZXMtd3JhcHBlciB7XG4gIG1pbi1oZWlnaHQ6IDVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hZHZhbmNlLWRpYWdub3N0aWMtbW9kYWxfd3JhcHBlciAucGxvdGJhbmRzLWNoZWNrYm94X3dyYXBwZXItZGlzYWJsZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogOTk5OTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter, OnChanges, SimpleChanges, AfterViewInit } from '@angular/core';\r\nimport * as moment from 'moment';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Models\r\nimport { HVACCycleResponse, Sensor } from 'src/app/shared/models/graph.model';\r\nimport { SITE_NAME_CONSTANTS } from '../../constants/site-name.constant';\r\nimport { BASE_URL_TYPES } from '../../constants/base-url-types.constant';\r\n\r\nimport * as momenttimezone from 'moment-timezone';\r\n@Component({\r\n selector: 'app-advance-diagnostic-modal',\r\n templateUrl: './advance-diagnostic-modal.component.html',\r\n styleUrls: ['./advance-diagnostic-modal.component.scss']\r\n})\r\nexport class AdvanceDiagnosticModalComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n // @Input() chartData: any;\r\n // @Input() advanceDiagnosticSelectedTab: string;\r\n // @Output() emitHandleAdvaceDiagnosticTabOnChange = new EventEmitter();\r\n // @Output() emitHandleDateOnChange = new EventEmitter();\r\n // @Input() isLoading: boolean;\r\n @Input() boardNumber;\r\n @Input() isShowCrossMark = false\r\n @Input() alertFromTime = ''\r\n @Input() alertToTime = ''\r\n @Input() alertspdStatus='';\r\n // @Output() emitHandleTemperatureConvertion = new EventEmitter();\r\n isAllCheckboxChecked = false;\r\n isFanChecked = false;\r\n isCoolingChecked = false;\r\n isHeatingChecked = false;\r\n commonConstants = COMMON_CONSTANTS;\r\n isLoading = false;\r\n chartData: any;\r\n advanceDiagnosticSelectedTab = 'Investigate';\r\n fromTime;\r\n toTime;\r\n currentTemeperatureConvertion = COMMON_CONSTANTS.FAHRENHEIT;\r\n currentPressureConvertion = COMMON_CONSTANTS.WATER_COLUMN;\r\n TemperaturecheckedValue: boolean = false;\r\n PressureCheckedValue: boolean = false;\r\n HVACCycleData: any;\r\n HVACCycleLoading = false;\r\n chartDataLastTime: any;\r\n chartDataFirstTime: any;\r\n defaultFromDate: any;\r\n defaultToDate: any;\r\n // maxDate = moment(new Date()).add(1, 'day').toDate();\r\n maxDate = new Date().setHours(23,59,59,999);\r\n isShowFromDate = false;\r\n isShowToDate = false;\r\n isHVACCycleHasData = true;\r\n siteName: any;\r\n siteConstants = SITE_NAME_CONSTANTS;\r\n @Input() spdStatus :any;\r\n tominDate: any;\r\n tomaxDate:any;\r\n dateError: boolean=true;\r\n hvacFtime: any;\r\n hvacTtime: any;\r\n constructor(\r\n private helperService: HelperService,\r\n private sharedService: SharedService\r\n ) { }\r\n\r\n ngOnInit() {\r\n console.log(this.spdStatus)\r\n let arr=['dat','rat','slt','llt','ambt'];\r\n arr.forEach(ele=>{\r\n localStorage.removeItem(ele);\r\n })\r\n this.siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n if (this.alertFromTime && this.alertToTime) {\r\n this.defaultFromDate = moment(this.alertFromTime).format('MM-DD-YYYY');\r\n this.defaultToDate = moment(this.alertToTime).format('MM-DD-YYYY');\r\n this.fromTime = this.alertFromTime;\r\n this.toTime = this.alertFromTime;\r\n //this.spdStatus = this.alertspdStatus;\r\n console.log(this.spdStatus)\r\n this.getSensorRead(this.alertFromTime, this.alertToTime);\r\n this.handleOnchangeCheckbox('all')\r\n //this.getHVACCycleData(this.alertFromTime, this.alertToTime);\r\n }\r\n else {\r\n this.getSensorCurrentRead();\r\n //this.getHVACCycleData();\r\n }\r\n }\r\n\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n this.handleResetFromAndToDate();\r\n }\r\n\r\n handleTabOnChange(value) {\r\n // this.emitHandleAdvaceDiagnosticTabOnChange.emit(value);\r\n this.advanceDiagnosticSelectedTab = value;\r\n }\r\n\r\n // handleTemperatureConvertion(event: any) {\r\n // this.emitHandleTemperatureConvertion.emit(event);\r\n // }\r\n\r\n getSensorCurrentRead() {\r\n const queryParams = {\r\n meliSerialNo: this.boardNumber,\r\n timeZone:momenttimezone.tz.guess()\r\n };\r\n this.handleResetChartDate();\r\n this.isLoading = true;\r\n this.HVACCycleLoading=true;\r\n this.sharedService.getSensorCurrentRead(queryParams).subscribe(\r\n (response: Sensor) => {\r\n this.isLoading = false;\r\n this.HVACCycleLoading=false;\r\n this.chartData = this.helperService.handleChartData(\r\n response.responseData,\r\n 'advance-diagnostic'\r\n );\r\n this.chartDataFirstTime = response && response.responseData && response.responseData.alerts &&\r\n response.responseData.alerts[0] &&\r\n response.responseData.alerts[0].timeStamp;\r\n this.chartDataFirstTime = moment.utc(this.chartDataFirstTime).toDate();\r\n this.chartDataLastTime = response && response.responseData && response.responseData.alerts &&\r\n response.responseData.alerts.length &&\r\n response.responseData.alerts[(response.responseData.alerts.length - 1)] &&\r\n response.responseData.alerts[(response.responseData.alerts.length - 1)].timeStamp;\r\n this.chartDataLastTime = moment.utc(this.chartDataLastTime).toDate();\r\n this.gethandleTemperatureConvertion();\r\n this.gethandlePressureConvertion();\r\n this.HVACCycleData = this.helperService.handleHVACCycleData(response.responseData.HVACCycleDetails, COMMON_CONSTANTS.FAHRENHEIT);\r\n },\r\n (error) => {\r\n this.isLoading = false;\r\n this.HVACCycleLoading=false;\r\n //this.handleHVACLoading();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n getSensorRead(fromTime, toTime) {\r\n const queryParams = {\r\n meliSerialNo: this.boardNumber,\r\n fromTime,\r\n toTime,\r\n timeZone:momenttimezone.tz.guess()\r\n };\r\n this.chartDataFirstTime = fromTime;\r\n this.chartDataLastTime = toTime;\r\n this.handleResetChartDate();\r\n this.isLoading = true;\r\n this.HVACCycleLoading=true;\r\n this.sharedService.getSensorRead(queryParams).subscribe(\r\n (response: Sensor) => {\r\n this.isLoading = false;\r\n this.HVACCycleLoading=false;\r\n this.chartData = this.helperService.handleChartData(\r\n response.responseData,\r\n 'advance-diagnostic'\r\n );\r\n this.gethandleTemperatureConvertion();\r\n this.gethandlePressureConvertion();\r\n this.HVACCycleData = this.helperService.handleHVACCycleData(response.responseData.HVACCycleDetails, COMMON_CONSTANTS.FAHRENHEIT);\r\n },\r\n (error) => {\r\n this.isLoading = false;\r\n this.HVACCycleLoading=false;\r\n //this.handleHVACLoading();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n getHVACCycleData(fromTime?, toTime?) {\r\n //debugger\r\n // const queryParams = {\r\n // meliSerialNo: this.boardNumber,\r\n // // fromTime,\r\n // // toTime,\r\n // // meliSerialNo: 'CM-MC01-KA2019-01-000097',\r\n // // fromTime : '2020-09-01',\r\n // // toTime: '2020-10-08',\r\n // };\r\n let queryParams;\r\n if (fromTime && toTime) {\r\n // debugger\r\n fromTime = moment(fromTime).format(\r\n 'YYYY-MM-DD'\r\n );\r\n\r\n toTime = moment(toTime).format(\r\n 'YYYY-MM-DD'\r\n );\r\n // debugger\r\n queryParams = {\r\n meliSerialNo: this.boardNumber,\r\n fromTime,\r\n toTime\r\n };\r\n } else {\r\n queryParams = {\r\n meliSerialNo: this.boardNumber\r\n };\r\n }\r\n // this.handleResetChartDate();\r\n this.HVACCycleLoading = true;\r\n this.sharedService.getHVACCycleData(queryParams).subscribe(\r\n (response: HVACCycleResponse) => {\r\n // debugger\r\n // this.HVACCycleLoading = false;\r\n // this.chartData = this.helperService.handleChartData(\r\n // response.responseData,\r\n // 'advance-diagnostic'\r\n // );\r\n // this.gethandleTemperatureConvertion();\r\n // this.gethandlePressureConvertion();\r\n if (!response || !response.HVACCycleDetails || !response.HVACCycleDetails.length) {\r\n this.isHVACCycleHasData = false;\r\n }\r\n this.HVACCycleData = this.helperService.handleHVACCycleData(response.HVACCycleDetails, COMMON_CONSTANTS.FAHRENHEIT);\r\n // debugger\r\n this.handleHVACLoading();\r\n },\r\n (error) => {\r\n this.HVACCycleLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleHVACLoading() {\r\n if (!this.isLoading) {\r\n this.HVACCycleLoading = false;\r\n }\r\n }\r\n\r\n handleTemperatureConvertion(event?: any) {\r\n // this.TemperaturecheckedValue = event == undefined ? false : event.target.checked;\r\n this.TemperaturecheckedValue = !this.TemperaturecheckedValue;\r\n this.gethandleTemperatureConvertion();\r\n }\r\n gethandleTemperatureConvertion() {\r\n if (this.TemperaturecheckedValue) {\r\n this.currentTemeperatureConvertion = COMMON_CONSTANTS.CELCIUS;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.CELCIUS);\r\n this.chartData.temperature = data.temperature.celciusData;\r\n this.HVACCycleData = this.helperService.handleReturnHVACCycleData(COMMON_CONSTANTS.CELCIUS);\r\n this.handleParsePlotBandsData();\r\n } else {\r\n this.currentTemeperatureConvertion = COMMON_CONSTANTS.FAHRENHEIT;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.FAHRENHEIT);\r\n this.chartData.temperature = data.temperature.fahrenheitData;\r\n this.HVACCycleData = this.helperService.handleReturnHVACCycleData(COMMON_CONSTANTS.FAHRENHEIT);\r\n this.handleParsePlotBandsData();\r\n }\r\n }\r\n\r\n handlePressureConvertion(event?: any) {\r\n // this.PressureCheckedValue = event == undefined ? false : event.target.checked;\r\n this.PressureCheckedValue = !this.PressureCheckedValue;\r\n this.gethandlePressureConvertion();\r\n }\r\n gethandlePressureConvertion() {\r\n if (this.PressureCheckedValue) {\r\n this.currentPressureConvertion = COMMON_CONSTANTS.PASCAL;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.PASCAL);\r\n this.chartData.diffStaticPressure = data.diffStaticPressure.pascalData;\r\n this.handleParsePlotBandsData();\r\n } else {\r\n this.currentPressureConvertion = COMMON_CONSTANTS.WATER_COLUMN;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.WATER_COLUMN);\r\n this.chartData.diffStaticPressure = data.diffStaticPressure.waterColumnData;\r\n this.handleParsePlotBandsData();\r\n }\r\n }\r\n\r\n handleParsePlotBandsData() {\r\n console.log(this.chartData)\r\n this.chartData.temperature&&this.chartData.temperature.data.forEach(element => {\r\n if(localStorage.getItem(element.checkBoxClassName))\r\n {\r\n element.selected = localStorage.getItem(element.checkBoxClassName)==\"true\"?true:false\r\n element.visible = localStorage.getItem(element.checkBoxClassName)==\"true\"?true:false\r\n }\r\n });\r\n this.isLoading = true;\r\n this.HVACCycleLoading = true;\r\n if (this.chartData && this.chartData.plotBandsData) {\r\n this.chartData.plotBandsData = [];\r\n }\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.WATER_COLUMN);\r\n const chartData: any = data.thermostatReads;\r\n chartData.plotBandsData = [];\r\n if (this.isFanChecked && chartData.fanSpeed) {\r\n chartData.plotBandsData.push(\r\n ...chartData.fanSpeed\r\n );\r\n }\r\n if (this.isCoolingChecked && chartData.cooling) {\r\n chartData.plotBandsData.push(\r\n ...chartData.cooling\r\n );\r\n }\r\n if (this.isHeatingChecked) {\r\n if (chartData.heatPump) {\r\n chartData.plotBandsData.push(\r\n ...chartData.heatPump\r\n );\r\n }\r\n\r\n if (chartData.heatFurnace) {\r\n chartData.plotBandsData.push(\r\n ...chartData.heatFurnace\r\n );\r\n }\r\n // chartData.plotBandsData.push(\r\n // ...chartData.heatPump, ...chartData.heatFurnace\r\n // );\r\n }\r\n if (this.chartData && this.chartData.plotBandsData) {\r\n this.chartData.plotBandsData = JSON.parse(JSON.stringify(chartData.plotBandsData));\r\n }\r\n setTimeout(() => {\r\n this.isLoading = false;\r\n this.HVACCycleLoading = false;\r\n }, 400);\r\n }\r\n\r\n handleOnchangeCheckbox(flag: string) {\r\n if (flag === 'all') {\r\n this.isAllCheckboxChecked = !this.isAllCheckboxChecked;\r\n this.handleAllCheckboxValue(this.isAllCheckboxChecked);\r\n } else if (flag === 'fan') {\r\n this.isFanChecked = !this.isFanChecked;\r\n } else if (flag === 'cooling') {\r\n this.isCoolingChecked = !this.isCoolingChecked;\r\n } else if (flag === 'heating') {\r\n this.isHeatingChecked = !this.isHeatingChecked;\r\n }\r\n this.handleParsePlotBandsData();\r\n this.isAllCheckboxChecked = this.handleIsAllCheckboxChecked();\r\n }\r\n\r\n handleAllCheckboxValue(value: boolean) {\r\n this.isFanChecked = value;\r\n this.isCoolingChecked = value;\r\n this.isHeatingChecked = value;\r\n }\r\n\r\n handleIsAllCheckboxChecked() {\r\n if (this.isFanChecked && this.isCoolingChecked && this.isHeatingChecked) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n // handleDateOnChange(event: any, type) {\r\n // const data = {\r\n // event,\r\n // type\r\n // };\r\n // // this.emitHandleDateOnChange.emit(data);\r\n // }\r\n\r\n toggleDatePicker(value: boolean, flag: string) {\r\n if (flag === 'from-time') {\r\n this.isShowFromDate = value;\r\n } else if (flag === 'to-time') {\r\n this.isShowToDate = value;\r\n }\r\n }\r\n handleDateOnChange(event: any, type) {\r\n \r\n if (type === 'from-time') {\r\n if (event) {\r\n this.hvacFtime= event;\r\n let Ftime = new Date(event).setHours(0, 0, 0, 0 )\r\n this.fromTime = moment.utc(new Date(Ftime)).format('YYYY-MM-DDTHH:mm:ss');\r\n this.defaultFromDate = moment(event).format('MM-DD-YYYY');\r\n } else {\r\n this.fromTime = undefined;\r\n }\r\n } else if (type === 'to-time') {\r\n if (event) {\r\n this.hvacTtime=event ;\r\n let Ttime = new Date(event).setHours(23, 59, 59, 999 )\r\n this.toTime = moment.utc(new Date(Ttime)).format('YYYY-MM-DDTHH:mm:ss');\r\n this.defaultToDate = moment(event).format('MM-DD-YYYY');\r\n } else {\r\n this.toTime = undefined;\r\n }\r\n }\r\n //console.log(hvacTtime)\r\n // debugger\r\n if (this.fromTime && this.toTime) {\r\n console.log(this.fromTime();\r\n @Input() fromReport: boolean = false;\r\n @ViewChild('chartContainer', { static: true }) chartContainer: ElementRef;\r\n a: any;\r\n options: any;\r\n message: any;\r\n display: boolean=false;\r\n\r\n constructor() {\r\n window.innerWidth<=480?this.display=false:this.display=true;\r\n }\r\n ngOnInit() {\r\n console.log(this.unitName, this.chartData, this.chartCommonData, this.unit);\r\n this.drawSplineChart(this.chartData, this.chartCommonData);\r\n }\r\n\r\n handleExportingButtons(obj, obj1) {\r\n const self = this;\r\n return {\r\n // buttonSpacing: 100,\r\n enabled: true,\r\n buttons: [{\r\n text: obj1 && obj1.convertparam ? obj1.convertparam === 'TEMPERATURE' ? 'Fahrenheit' : '“ WC' : '',\r\n // buttonSpacing: 100,\r\n // selected: true,\r\n // disableHover: true,\r\n onclick: function () {\r\n // alert('clicked');\r\n if (obj1.convertparam === 'TEMPERATURE') {\r\n self.emitHandleConvertion.emit(COMMON_CONSTANTS.FAHRENHEIT);\r\n } else {\r\n self.emitHandleConvertion.emit(COMMON_CONSTANTS.WC);\r\n }\r\n },\r\n x: -70,\r\n // style: {\r\n // fontSize: '100px',\r\n // width: '18px'\r\n // },\r\n theme: {\r\n /* 'stroke-width': 1, */\r\n /* stroke: 'silver', */\r\n fill: obj1 && ((obj1.convertparam === 'TEMPERATURE' && (self.unitName === COMMON_CONSTANTS.FAHRENHEIT || self.unitName == \"null\")) ||\r\n (obj1.convertparam === 'PRESSURE' && (self.unitName === COMMON_CONSTANTS.WC || self.unitName === \"null\"))) ? '#00B7A5' : 'none',\r\n // fill: 'none',\r\n r: 18,\r\n padding: 10,\r\n // width: 60,\r\n // textAlign: 'center',\r\n /* fontSize: '200px', */\r\n style: {\r\n // fontSize: '10px',\r\n color: obj1 && ((obj1.convertparam === 'TEMPERATURE' && (self.unitName === COMMON_CONSTANTS.FAHRENHEIT || self.unitName == \"null\")) ||\r\n (obj1.convertparam === 'PRESSURE' && (self.unitName === COMMON_CONSTANTS.WC || self.unitName == \"null\"))) ? '#242A34' : '#FFFFFF',\r\n fontSize: '1.3rem',\r\n // fontFamily: 'cursive',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontWeight: 700,\r\n // textAlign: 'center',\r\n\r\n // states: {\r\n // hover: {\r\n // // fill: '#a4edba'\r\n // fill: '#71CECA',\r\n // color: '#FFFFFF',\r\n // },\r\n // }\r\n },\r\n /* height: 40, */\r\n /* width: 48,\r\n symbolSize: 24, */\r\n /* textAlign: 'center', */\r\n states: {\r\n hover: {\r\n // fill: '#a4edba'\r\n fill: '#00B7A5',\r\n color: '#FFFFFF',\r\n },\r\n // select: {\r\n // // stroke: '#039',\r\n // // fill: '#a4edba'\r\n // fill: '#71CECA',\r\n // }\r\n }\r\n }\r\n },\r\n {\r\n text: obj1 && obj1.convertparam ? obj1.convertparam === 'TEMPERATURE' ? 'Celsius' : 'Pascal' : '',\r\n onclick: function () {\r\n // alert('clicked');\r\n if (obj1.convertparam === \"TEMPERATURE\") {\r\n self.emitHandleConvertion.emit(COMMON_CONSTANTS.CELCIUS);\r\n } else {\r\n self.emitHandleConvertion.emit(COMMON_CONSTANTS.PASCAL);\r\n }\r\n },\r\n x: -10,\r\n theme: {\r\n /* 'stroke-width': 1, */\r\n /* stroke: 'silver', */\r\n /* fill: '#71CECA', */\r\n padding: 10,\r\n // x: -10,\r\n r: 18,\r\n // margin: '100px',\r\n // color: false ? '#242A34' : '#FFFFFF',\r\n // fill: 'none',\r\n fill: obj1 && ((obj1.convertparam === 'TEMPERATURE' && self.unitName === COMMON_CONSTANTS.CELCIUS) ||\r\n (obj1.convertparam === 'PRESSURE' && self.unitName === COMMON_CONSTANTS.PASCAL)) ? '#00B7A5' : 'none',\r\n style: {\r\n // color: '#FFFFFF',\r\n color: obj1 && ((obj1.convertparam === 'TEMPERATURE' && self.unitName === COMMON_CONSTANTS.CELCIUS) ||\r\n (obj1.convertparam === 'PRESSURE' && self.unitName === COMMON_CONSTANTS.PASCAL)) ? '#242A34' : '#FFFFFF',\r\n // fontSize: '10px',\r\n fontSize: '1.3rem',\r\n // margin: '100px',\r\n // fontFamily: 'cursive',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontWeight: 700,\r\n textAlign: 'center'\r\n },\r\n states: {\r\n hover: {\r\n // fill: '#a4edba'\r\n // fill: 'none'\r\n fill: '#00B7A5',\r\n color: '#FFFFFF',\r\n },\r\n // select: {\r\n // stroke: '#039',\r\n // fill: '#a4edba'\r\n // }\r\n }\r\n }\r\n }\r\n ]\r\n };\r\n }\r\n\r\n drawSplineChart(obj, obj1) {\r\n // let minValue = obj.data[0].data[0][1];\r\n // let maxValue = obj.data[0].data[0][1];\r\n // obj.data[0].data.map((item) => {\r\n // minValue = (item[1] < minValue) ? item[1] : minValue;\r\n // maxValue = (item[1] > maxValue) ? item[1] : maxValue;\r\n // });\r\n\r\n // let maxValue = null;\r\n // let tickInterval = 10;\r\n // if (\r\n // (this.chartData &&\r\n // this.chartData.title &&\r\n // this.chartData.title === 'Cooling') ||\r\n // this.chartData.title === 'Fan/Heat Pump' ||\r\n // this.chartData.title === 'Heating Furnace'\r\n // ) {\r\n // maxValue = 1;\r\n // tickInterval = 1;\r\n // }\r\n\r\n const self = this;\r\n Highcharts.setOptions({\r\n lang: {\r\n thousandsSep: '',\r\n },\r\n time: {\r\n useUTC: false,\r\n },\r\n\r\n });\r\n this.options = {\r\n chart: {\r\n renderTo: 'chart',\r\n type: 'spline',\r\n backgroundColor: '#2A3343',\r\n height: this.heightStyle\r\n\r\n },\r\n\r\n legend: {\r\n itemStyle: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.3rem',\r\n fontWeight: 100\r\n },\r\n\r\n labelFormatter() {\r\n return '' + this.name + '';\r\n\r\n }\r\n },\r\n\r\n credits: {\r\n enabled: false,\r\n },\r\n\r\n title: {\r\n text: obj1.title,\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '2rem',\r\n },\r\n },\r\n subtitle: {\r\n text: '',\r\n },\r\n xAxis: {\r\n // type: 'datetime',\r\n // breaks: [\r\n // {\r\n // from: Highcharts.dateFormat('%H:%M %p', obj.data[3][0]),\r\n // to: Highcharts.dateFormat('%H:%M %p', obj.data[5][0]),\r\n // breakSize: 1,\r\n // },\r\n // ],\r\n\r\n plotBands: obj.bonds,\r\n // plotBands: [\r\n // {\r\n // color: '#FCFFC5',\r\n // from: 3,\r\n // to: 5,\r\n // id: 'plotband-1',\r\n // },\r\n // ],\r\n // lineWidth:1.5,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: 'rgba(255,255,255,0.85)',\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // tickColor: 'black',\r\n tickColor: 'rgba(255,255,255,0.85)',\r\n tickLength: 7,\r\n // categories: obj.xdata,\r\n labels: {\r\n // step: 15,\r\n // step: 30,\r\n\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.1rem',\r\n },\r\n formatter() {\r\n let output = '';\r\n if (this.isFirst) {\r\n output = Highcharts.dateFormat(\r\n '%l:%M %p
%m-%d-%Y',\r\n this.value\r\n );\r\n obj.emptydata = Highcharts.dateFormat(\r\n '%d-%m-%Y',\r\n this.value\r\n ).toString();\r\n } else {\r\n if (Highcharts.dateFormat('%d %m %Y', this.value).toString() === obj.emptydata) {\r\n output = Highcharts.dateFormat('%l:%M %p ', this.value);\r\n } else {\r\n obj.emptydata = Highcharts.dateFormat('%d-%m-%Y', this.value).toString();\r\n output = Highcharts.dateFormat(\r\n '%l:%M %p
%m-%d-%Y',\r\n this.value\r\n );\r\n }\r\n\r\n }\r\n\r\n return output;\r\n },\r\n },\r\n\r\n // dateTimeLabelFormats: { // don't display the dummy year\r\n // hour: '%I %p',\r\n // minute: '%I:%M %p',\r\n // second: '%I:%M:%S %p',\r\n // }\r\n // dateTimeLabelFormats: {\r\n // second: '%Y-%m-%d
%I:%M:%S %p',\r\n // minute: '%Y-%m-%d
%I:%M %p',\r\n // hour: '%Y-%m-%d
%I:%M %p',\r\n // day: '%Y
%m-%d',\r\n // week: '%Y
%m-%d',\r\n // month: '%Y-%m',\r\n // year: '%Y',\r\n // },\r\n title: {\r\n // text: 'Time Duration',\r\n\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n // fontWeight: 'bold',\r\n fontFamily: 'SourceSansPro-Regular',\r\n // fontSize: '1.2rem'\r\n },\r\n },\r\n },\r\n yAxis: {\r\n visible: obj1.yAxisTitle != null ? true : false,\r\n allowDecimals: false,\r\n max: this.unit === '' ? 1 : null,\r\n title: {\r\n text: obj1.yAxisTitle,\r\n useHTML: true,\r\n\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontWeight: 100,\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.3rem',\r\n textAlign: 'center'\r\n },\r\n\r\n },\r\n // min: 0,\r\n // max: maxValue,\r\n // tickInterval: tickInterval,\r\n gridLineWidth: 0, // Hide Horizontal line\r\n // tickColor: 'black',\r\n tickColor: 'rgba(255,255,255,0.85)',\r\n tickLength: 7,\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // lineWidth:1.5,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: 'rgba(255,255,255,0.85)',\r\n tickPosition: 'outside',\r\n\r\n labels: {\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem',\r\n },\r\n },\r\n plotLines: obj.threshold,\r\n },\r\n\r\n // tooltip: {\r\n // headerFormat: '{series.name}
',\r\n // pointFormat: '{point.x:.2f} {point.y:.2f}'\r\n // },\r\n\r\n tooltip: {\r\n //split: false,\r\n //shared: true,\r\n // crosshairs: {\r\n // enabled: false\r\n // },\r\n //useHTML: true,\r\n formatter: function () {\r\n const dateInUTC = Date.UTC(\r\n new Date(this.x).getFullYear(),\r\n new Date(this.x).getMonth(),\r\n new Date(this.x).getDate(),\r\n new Date(this.x).getHours(),\r\n new Date(this.x).getMinutes(),\r\n \r\n );\r\n const date: any = new Date(dateInUTC);\r\n let ambient;\r\n let ambientUnit;\r\n if (this.point.z != null) {\r\n if (self.unit == null || self.unit == \"Pa\" || self.unit == '\"WC' || self.unit == '°C' || self.unit == \"\") {\r\n ambientUnit = '°C'\r\n }\r\n else {\r\n ambientUnit = \"°F\"\r\n }\r\n ambient = this.point.z + '' + ambientUnit\r\n }\r\n else {\r\n ambient = this.point.z\r\n }\r\n if (obj1.convertparam === 'PRESSURE') {\r\n return (\r\n 'Time: ' + Highcharts.dateFormat('%l:%M %p', this.x) +\r\n '
Value: ' + this.y.toFixed(0) + '' +\r\n ' ' + self.unit + '
Ambient Temp: ' + ambient + '' +\r\n '
' +\r\n 'Supply Pressure:' +\r\n '' +\r\n this.point.supply +\r\n '' +\r\n ' ' +\r\n self.unit +\r\n '
' +\r\n 'Return Pressure:' +\r\n '' +\r\n this.point.return +\r\n '' +\r\n ' ' +\r\n self.unit\r\n );\r\n\r\n }\r\n return (\r\n 'Time: ' + Highcharts.dateFormat('%l:%M %p', this.x) +\r\n '
Value: ' + this.y.toFixed(0) + '' +\r\n ' ' + self.unit + '
Ambient Temp: ' + ambient + ''\r\n );\r\n\r\n },\r\n },\r\n\r\n plotOptions: {\r\n series: {\r\n marker: {\r\n enabled: false,\r\n },\r\n },\r\n },\r\n\r\n // colors: [\r\n // '#71CECA',\r\n // '#F89308',\r\n // '#F24766',\r\n // '#529AD5',\r\n // '#06C',\r\n // '#036',\r\n // '#000',\r\n // ],\r\n\r\n // series: [\r\n // {\r\n // name: obj.yAxisTitle,\r\n // data: obj.data[0].data,\r\n // },\r\n // ]\r\n\r\n series: [\r\n {\r\n // data: [\r\n // [1588606630000, 212],\r\n // [1588606570000, 213.8],\r\n // ],\r\n type: obj1.charttype,\r\n data: obj.data,\r\n name: obj1.xAxisTitle,\r\n color: obj1.color,\r\n },\r\n\r\n // {\r\n // type: 'column',\r\n // data: obj.data[0].data,\r\n // color: obj.linecolor,\r\n // },\r\n ],\r\n // exporting: {\r\n // sourceWidth: 1200,\r\n // sourceHeight: 400,\r\n // },\r\n\r\n exporting: this.fromReport||!this.display ? \"\" : this.handleExportingButtons(obj, obj1),\r\n annotations: [\r\n {\r\n labels: [\r\n {\r\n point: {\r\n xAxis: 0,\r\n yAxis: 0,\r\n x: obj.alerttime,\r\n y: obj.alertvalue ? obj.alertvalue : '',\r\n },\r\n text: Highcharts.dateFormat('%d %b %Y %l:%M %p ', obj.alerttime),\r\n height: 250,\r\n width: 10,\r\n backgroundColor: '#2A3343',\r\n color: '#ffffff',\r\n borderColor: '#898989',\r\n },\r\n ],\r\n },\r\n ],\r\n \r\n\r\n // series: [\r\n // obj.data.map((value) => {\r\n // debugger\r\n // return value;\r\n // })\r\n // ]\r\n\r\n // series: obj.supplyAirTemperature\r\n };\r\n if (obj.data.length === 0) {\r\n this.message = (chart) => {\r\n const rec = chart.renderer\r\n .rect(300, 125, 650, 40, 1)\r\n .attr({\r\n 'stroke-width': 1,\r\n stroke: '#898989',\r\n\r\n zIndex: 3,\r\n })\r\n .add();\r\n const text = chart.renderer\r\n .text(\r\n 'No Communication from Static Pressure Differential Sensor for last 48 hours ',\r\n 600,\r\n 150\r\n )\r\n .css({\r\n color: '#ffffffd9',\r\n fontSize: '12px',\r\n lineHeight: 20 * 1.3,\r\n border: '1px solid black',\r\n padding: '5px',\r\n })\r\n .attr({\r\n zIndex: 15,\r\n 'text-anchor': 'middle',\r\n })\r\n .add();\r\n };\r\n } else {\r\n this.message = '';\r\n\r\n }\r\n // Highcharts.chart(obj.element, this.options);\r\n Highcharts.chart(\r\n this.chartContainer.nativeElement,\r\n this.options,\r\n this.message\r\n );\r\n }\r\n}\r\n\r\n// // var supplyAirTemp;\r\n\r\n// drawSupplyAirTemprature(data,fdate,tdate) {\r\n// var supplyAirTemp;\r\n// let supplyAirTemperature=[];\r\n// let returnAirTemp=[];\r\n// data.alerts.forEach(info=>{\r\n// let a={};\r\n// a['x'] = new Date(info.timestamp);\r\n// a['y'] = info.SupplyAirTemp;\r\n// supplyAirTemperature.push(a);\r\n// let b={};\r\n// b['x'] = new Date(info.timestamp);\r\n// b['y']= info.ReturnAirTemp;\r\n// returnAirTemp.push(b);\r\n// })\r\n\r\n// console.log('supp',supplyAirTemperature);\r\n// if(fdate=='empty')\r\n// {\r\n// fdate = this.getYesterdayDate();\r\n// tdate = this.getTodayDate();\r\n// }\r\n// console.log(data,supplyAirTemperature,returnAirTemp);\r\n// supplyAirTemp = new CanvasJS.Chart('supplyAirTemp', {\r\n// theme: 'dark2',\r\n// width: 700,\r\n\r\n// title: {\r\n// text: 'Air Temperature',\r\n// },\r\n// toolTip:{\r\n// \t\t\tcontent: '{x}: {y}°F'\r\n// },\r\n// axisX : {\r\n// title: 'Time(Dated '+fdate+' - '+tdate+')',\r\n// labelangle:90,\r\n// // interval:4,\r\n// //intervalType: 'hour',\r\n// valueFormatString: 'DD MMM,HH:mm',\r\n// },\r\n// zoomEnabled:true,\r\n// axisY : {\r\n// title: 'Temperature',\r\n// suffix: ' °F'\r\n// },\r\n// //xValueType: 'dateTime',\r\n// // xValueFormatString:'DD-MMM hh:mm tt',\r\n// data: [{\r\n// type:'spline',\r\n// name: 'Supply Air Temp',\r\n// showInLegend: true,\r\n// markerSize: 0,\r\n// xValueFormatString: 'YYYY-MM-DD hh:mm:ss',\r\n// dataPoints: supplyAirTemperature\r\n// },\r\n// {\r\n// type: 'spline',\r\n// name: 'Return Air Temp',\r\n// showInLegend: true,\r\n// markerSize: 0,\r\n// // xValueFormatString: 'After',\r\n// // yValueFormatString: '°F',\r\n// xValueFormatString: 'YYYY-MM-DD hh:mm:ss',\r\n// dataPoints: returnAirTemp\r\n// }\r\n// ],\r\n\r\n// });\r\n// supplyAirTemp.render();\r\n// }\r\n","module.exports = \"/* stylelint-disable */\\n.alert-discovery-modal_wrapper .modal-body {\\n min-height: 21rem;\\n overflow: hidden;\\n}\\n.alert-discovery-modal_wrapper .chart-icon {\\n border: 1px solid #efefef;\\n border-radius: 2rem;\\n font-weight: 700;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWxlcnQtZGlzY292ZXJ5LW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxhbGVydC1kaXNjb3ZlcnktbW9kYWxcXGFsZXJ0LWRpc2NvdmVyeS1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWxlcnQtZGlzY292ZXJ5LW1vZGFsL2FsZXJ0LWRpc2NvdmVyeS1tb2RhbC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQU1FO0VBRUUsaUJBQUE7RUFDQSxnQkFBQTtBQ0xKO0FET0U7RUFDRSx5QkFBQTtFQUNBLG1CQUFBO0VBR0EsZ0JBQUE7QUNQSiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2FsZXJ0LWRpc2NvdmVyeS1tb2RhbC9hbGVydC1kaXNjb3ZlcnktbW9kYWwuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyAudGV4dF9jb2xvciB7XHJcbi8vICAgY29sb3I6ICMyYTMzNDM7XHJcbi8vIH1cclxuXHJcbi5hbGVydC1kaXNjb3ZlcnktbW9kYWxfd3JhcHBlciB7XHJcbiAgLm1vZGFsLWJvZHlcclxuICB7XHJcbiAgICBtaW4taGVpZ2h0OiAyMXJlbTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gIC5jaGFydC1pY29uIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XHJcbiAgICBib3JkZXItcmFkaXVzOiAycmVtO1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjojNzFDRUNBO1xyXG4gICAgLy8gY29sb3I6IzI0MkEzNDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAvLyBtaW4taGVpZ2h0OiAxMHJlbTtcclxuICB9XHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5hbGVydC1kaXNjb3ZlcnktbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDIxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmFsZXJ0LWRpc2NvdmVyeS1tb2RhbF93cmFwcGVyIC5jaGFydC1pY29uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbiAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport {\r\n Sensor,\r\n SensorDetails,\r\n RelayStatus,\r\n AlertDiscoverySensor,\r\n} from 'src/app/shared/models/graph.model';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { HelperService } from '../../services/helper.service';\r\nimport { COMMON_CONSTANTS } from '../../constants/commom.constant';\r\nimport * as moment from 'moment';\r\nimport * as momenttimezone from 'moment-timezone';\r\nimport { MeliService } from '../../../modules/meli/services/meli.service';\r\nimport { InstallationReportDetails, InstallationReportResponse } from '../../models/inventory.model';\r\n@Component({\r\n selector: 'app-alert-discovery-modal',\r\n templateUrl: './alert-discovery-modal.component.html',\r\n styleUrls: ['./alert-discovery-modal.component.scss'],\r\n})\r\nexport class AlertDiscoveryModalComponent implements OnInit {\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() showToggleButton: string;\r\n // @Input() chartData: any;\r\n //@Input() isLoading: boolean;\r\n @Output() emitInvestigate = new EventEmitter();\r\n //@Input() chartType: any; // whether temperature or pressure\r\n @Input() isShowCrossMark = false\r\n @Input() details: any;\r\n isLoading = true;\r\n alertDescription: any;\r\n showToggle: any;\r\n chartData: any;\r\n conversion: string = null;\r\n sensorStatus: InstallationReportDetails;\r\n spdStatus: string;\r\n constructor(private sharedService: SharedService, private helperService: HelperService,private meliService: MeliService,) { }\r\n\r\n ngOnInit() {\r\n this.getAlertDiscovery(this.details);\r\n this.getSensorInstalltionStatus(this.details);\r\n }\r\n\r\n\r\n getAlertDiscovery(data) {\r\n console.log(data)\r\n const queryParams = {\r\n pb: data.meliSerialNo,\r\n alerttime: data.timeStamp,\r\n alertcode: data.alertCode,\r\n conversionUnit: this.conversion\r\n\r\n };\r\n this.sharedService.getAlertDiscoverySensorRead(queryParams).subscribe(\r\n (response: AlertDiscoverySensor) => {\r\n this.chartData = '';\r\n this.isLoading = false;\r\n this.alertDescription = response.responseData['alertDetails']['description'];\r\n this.showToggle = response.responseData['alertDetails']['convertParam'];\r\n this.conversion = response.responseData['deltaUnit']\r\n if (response.responseData['deltaUnit'] == null) {\r\n this.conversion = \"null\"\r\n }\r\n this.handleAlertDiscoveryChartData(response.responseData);\r\n },\r\n (error) => {\r\n this.chartData = '';\r\n this.isLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n\r\n }\r\n\r\n getSensorInstalltionStatus(data) {\r\n const queryParams = {\r\n meliSerialNumber: data.meliSerialNo,\r\n timeZone: momenttimezone.tz.guess()\r\n };\r\n this.meliService.getSensorInstallationStatus(queryParams).subscribe(\r\n (response: InstallationReportResponse) => {\r\n this.sensorStatus = response.responseData;\r\n if (this.sensorStatus && this.sensorStatus.spdStatus == \"Not_Installed\") {\r\n this.spdStatus = COMMON_CONSTANTS.SENSOR_STATUS_NOT_INSTALLED;\r\n }\r\n //this.sensorSPDState = COMMON_CONSTANTS.SENSOR_STATUS_NOT_INSTALLED;\r\n //this.spdStatus = this.sensorStatus && this.sensorStatus.spdStatus ;\r\n\r\n }, (error) => {\r\n }\r\n );\r\n }\r\n\r\n handleAlertDiscoveryChartData(response) {\r\n this.chartData = this.helperService.handleAlertDiscoveryChartData(\r\n response,\r\n 'alert-discovery'\r\n );\r\n console.log(this.chartData)\r\n }\r\n\r\n handleTemperatureConvertion(event: any, data) {\r\n this.handleAlertDiscoverTempConvertion({ event, data });\r\n }\r\n\r\n\r\n //convertion data on toggle change\r\n\r\n handleAlertDiscoverTempConvertion(event: any) {\r\n\r\n console.log(event);\r\n this.isLoading = true;\r\n if (event.data === 'temperature') {\r\n if (event.event.target.checked) {\r\n this.conversion = COMMON_CONSTANTS.FAHRENHEIT;\r\n this.getAlertDiscovery(this.details);\r\n // const data = this.helperService.handleReturnAlertDiscoverChartData(\r\n // COMMON_CONSTANTS.CELCIUS, event.data\r\n // );\r\n // this.chartData = data;\r\n\r\n } else {\r\n this.conversion = COMMON_CONSTANTS.CELCIUS;\r\n this.getAlertDiscovery(this.details);\r\n // const data = this.helperService.handleReturnAlertDiscoverChartData(\r\n // COMMON_CONSTANTS.FAHRENHEIT, event.data\r\n // );\r\n\r\n // this.chartData = data;\r\n }\r\n }\r\n else if (event.data === 'pressure') {\r\n if (event.event.target.checked) {\r\n this.conversion = COMMON_CONSTANTS.WC;\r\n this.getAlertDiscovery(this.details);\r\n // const data = this.helperService.handleReturnAlertDiscoverChartData(\r\n // COMMON_CONSTANTS.PASCAL, event.data\r\n // );\r\n // this.chartData = data;\r\n } else {\r\n this.conversion = COMMON_CONSTANTS.PASCAL;\r\n this.getAlertDiscovery(this.details);\r\n // const data = this.helperService.handleReturnAlertDiscoverChartData(\r\n // COMMON_CONSTANTS.WATER_COLUMN, event.data\r\n // );\r\n // this.chartData = data;\r\n }\r\n\r\n }\r\n // setTimeout(() => {\r\n // this.isLoading = false;\r\n // }, 400);\r\n }\r\n\r\n investigateClick(info) {\r\n //console.log(this.chartData);\r\n let fTime:any;\r\n let tTime:any;\r\n if(this.chartData.chartcommondata.alertCode == \"T704\"||this.chartData.chartcommondata.alertCode == \"T804C\"||this.chartData.chartcommondata.alertCode == \"T804H\")\r\n {\r\n console.log(\"dsddsfdsfds\")\r\n fTime = moment(this.details.timeStamp).subtract(25, 'm').toDate();\r\n tTime = moment(this.details.timeStamp).add(25, 'm').toDate();\r\n }\r\n else{\r\n console.log(\"dsddsfdsfds\")\r\nfTime = moment(this.details.timeStamp).subtract(20, 'm').toDate();\r\n tTime = moment(this.details.timeStamp).add(20, 'm').toDate();\r\n }\r\n console.log(fTime)\r\n const event = {\r\n fromdate: fTime,\r\n todate: tTime,\r\n serialnumber: this.chartData.chartcommondata.serialno,\r\n flag: info,\r\n spdStatus:this.spdStatus,\r\n };\r\n this.emitInvestigate.emit(event);\r\n }\r\n\r\n handleTempConvertion(event) {\r\n this.isLoading = true;\r\n this.conversion = event;\r\n this.getAlertDiscovery(this.details);\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.u_position_fixed {\\n position: fixed;\\n}\\n.u_position_absolute {\\n position: absolute;\\n}\\n.u_position_relative {\\n position: relative;\\n}\\n.u_clear_both {\\n clear: both;\\n}\\n.u_float_left {\\n float: left;\\n}\\n.u_float_right {\\n float: right;\\n}\\n.u_text_center {\\n text-align: center;\\n}\\n.u_text_right {\\n text-align: right;\\n}\\n.u_text_left {\\n text-align: left;\\n}\\n.u_text_transform_uppercase {\\n text-transform: uppercase;\\n}\\n.u_text_transform_capitalize {\\n text-transform: capitalize;\\n}\\n.u_text_italic {\\n font-style: italic;\\n}\\n.u_font_weight_bold {\\n font-weight: bold;\\n}\\n.u_margin_auto {\\n margin: 0 auto;\\n}\\n.u_margin_bottom_0 {\\n margin-bottom: 0;\\n}\\n.u_opacity_0 {\\n opacity: 0;\\n}\\n.u_display_block {\\n display: block;\\n}\\n.u_display_inline_block {\\n display: inline-block;\\n}\\n.u_align_vertical_top {\\n vertical-align: top;\\n}\\n.u_align_vertical_middle {\\n vertical-align: middle;\\n}\\n.u_background_none {\\n background: none;\\n}\\n.u_border_none {\\n border: none;\\n}\\n.u_display_none {\\n display: none;\\n}\\n.u_list_style_none {\\n list-style-type: none;\\n}\\n.text-overflow_ellipsis {\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n/* width */\\n::-webkit-scrollbar {\\n width: 1rem;\\n height: 1rem;\\n}\\n/* Track */\\n::-webkit-scrollbar-track {\\n background: #f1f1f1;\\n}\\n/* Handle */\\n::-webkit-scrollbar-thumb {\\n background: #888;\\n}\\n/* Handle on hover */\\n::-webkit-scrollbar-thumb:hover {\\n background: #555;\\n}\\n.display_flex {\\n display: flex;\\n}\\n.flex-direction_row {\\n flex-direction: row;\\n}\\n.align-items_center {\\n align-items: center;\\n}\\n.justify-content_center {\\n justify-content: center;\\n}\\n.justify-content_flex-end {\\n justify-content: flex-end;\\n}\\n.justify-content_space-between {\\n justify-content: space-between;\\n}\\n.justify-content_space-around {\\n justify-content: space-around;\\n}\\n.u_left_20 {\\n left: 2rem;\\n}\\n.u_left_10 {\\n left: 1rem;\\n}\\n.flex_1 {\\n flex: 1;\\n}\\n.pl20 {\\n padding-left: 2rem;\\n}\\n.pr20 {\\n padding-right: 2rem;\\n}\\n.pl40 {\\n padding-left: 4rem;\\n}\\n.pr40 {\\n padding-right: 4rem;\\n}\\n.pr50 {\\n padding-right: 5rem !important;\\n}\\n.p10 {\\n padding: 1rem;\\n}\\n.p30 {\\n padding: 3rem;\\n}\\n.p15 {\\n padding: 1.5rem;\\n}\\n.outline_none {\\n outline: none !important;\\n}\\n.border-radius_50-percent {\\n border-radius: 50%;\\n}\\n.border-radius_100-percent {\\n border-radius: 100%;\\n}\\n.margin-left_auto {\\n margin-left: auto;\\n}\\n.margin-left_5 {\\n margin-left: 0.5rem;\\n}\\n.ml47 {\\n margin-left: 47%;\\n}\\n.ml80 {\\n margin-left: 8rem;\\n}\\n.mr20 {\\n margin-right: 2rem;\\n}\\n.mr41 {\\n margin-right: 4.1rem;\\n}\\n.mr80 {\\n margin-right: 8rem;\\n}\\n.ml20 {\\n margin-left: 2rem;\\n}\\n.mr10 {\\n margin-right: 1rem;\\n}\\n.ml10 {\\n margin-left: 1rem;\\n}\\n.cursor_pointer {\\n cursor: pointer;\\n}\\n.pt20 {\\n padding-top: 2rem;\\n}\\n.pb20 {\\n padding-bottom: 2rem;\\n}\\n.pb40 {\\n padding-bottom: 4rem;\\n}\\n.pt10 {\\n padding-top: 1rem;\\n}\\n.pb10 {\\n padding-bottom: 1rem;\\n}\\n.pl10 {\\n padding-left: 1rem;\\n}\\n.pt5 {\\n padding-top: 0.5rem;\\n}\\n.pb5 {\\n padding-bottom: 0.5rem;\\n}\\n.pl5 {\\n padding-left: 0.5rem;\\n}\\n.pr5 {\\n padding-right: 0.5rem;\\n}\\n.p5 {\\n padding: 0.5rem;\\n}\\n.p20 {\\n padding: 2rem;\\n}\\n.color_white-primary {\\n color: #ffffff;\\n}\\n.color_black-7 {\\n color: #131313;\\n}\\n.p20 {\\n padding: 2rem;\\n}\\n.height_100-percent {\\n height: 100%;\\n}\\n.width_100-percent {\\n width: 100%;\\n}\\n.width_30-percent {\\n width: 30%;\\n}\\n.pl15 {\\n padding-left: 1.5rem;\\n}\\n.pr15 {\\n padding-right: 1.5rem;\\n}\\n.ml15 {\\n margin-left: 1.5rem;\\n}\\n.ml18 {\\n margin-left: 1.8rem;\\n}\\n.mr15 {\\n margin-right: 1.5rem;\\n}\\n.ml5 {\\n margin-left: 0.5rem;\\n}\\n.ml50 {\\n margin-left: 5rem;\\n}\\n.mt20 {\\n margin-top: 2rem;\\n}\\n.mt40 {\\n margin-top: 4rem;\\n}\\n.mt100 {\\n margin-top: 10rem;\\n}\\n.mt50 {\\n margin-top: 5rem;\\n}\\n.pt15 {\\n padding-top: 1.5rem;\\n}\\n.pb15 {\\n padding-bottom: 1.5rem;\\n}\\n.line-height_2 {\\n line-height: 2;\\n}\\n.pr10 {\\n padding-right: 1rem;\\n}\\n.white-space_nowrap {\\n white-space: nowrap;\\n}\\n.overflow_hidden {\\n overflow: hidden;\\n}\\n.mb5 {\\n margin-bottom: 0.5rem;\\n}\\n.mb10 {\\n margin-bottom: 1rem;\\n}\\n.border-radius_3 {\\n border-radius: 3px;\\n}\\n.mb15 {\\n margin-bottom: 1.5rem;\\n}\\n.mt5 {\\n margin-top: 5px;\\n}\\n.mb20 {\\n margin-bottom: 2rem;\\n}\\n.mb30 {\\n margin-bottom: 3rem;\\n}\\n.mb50 {\\n margin-bottom: 5rem;\\n}\\n.mt10 {\\n margin-top: 1rem;\\n}\\n.mt02 {\\n margin-top: 0.2rem;\\n}\\n.max-width_0 {\\n max-width: 0;\\n}\\n.border-radius_5 {\\n border-radius: 0.5rem;\\n}\\n.min-height_100-percent {\\n min-height: 100%;\\n}\\n.width_75-percent {\\n width: 75%;\\n}\\n.width_90-percent {\\n width: 90%;\\n}\\n.flex-direction_column {\\n flex-direction: column;\\n}\\n.text-decoration_underline {\\n text-decoration: underline;\\n}\\n.underline_cadetblue-secondary {\\n -webkit-text-decoration-color: #71ceca;\\n text-decoration-color: #71ceca;\\n}\\n.underline_blue-ternary {\\n -webkit-text-decoration-color: #00b7a5;\\n text-decoration-color: #00b7a5;\\n}\\n.underline_black {\\n -webkit-text-decoration-color: #12161e;\\n text-decoration-color: #12161e;\\n}\\n.pl32 {\\n padding-left: 3.2rem;\\n}\\n.pr32 {\\n padding-right: 3.2rem;\\n}\\n.pr30 {\\n padding-right: 3rem;\\n}\\n.border-radius_50 {\\n border-radius: 5rem;\\n}\\n.font-size_09 {\\n font-size: 0.9rem;\\n}\\n.font-size_10 {\\n font-size: 1rem;\\n}\\n.font-size_11 {\\n font-size: 1.1rem;\\n}\\n.font-size_12 {\\n font-size: 1.2rem;\\n}\\n.font-size_14 {\\n font-size: 1.4rem;\\n}\\n.font-size_13 {\\n font-size: 1.3rem;\\n}\\n.font-size_16 {\\n font-size: 1.6rem;\\n}\\n.font-size_24 {\\n font-size: 2.4rem;\\n}\\n.font-size_20 {\\n font-size: 2rem;\\n}\\n.mr5 {\\n margin-right: 0.5rem;\\n}\\n.opacity_05 {\\n opacity: 0.5;\\n}\\n.color_cadetblue-primary {\\n color: #71ceca;\\n}\\n.color_athensgray-2 {\\n color: #d6d6d6;\\n}\\n.color_blue-2 {\\n color: #4d6698;\\n}\\n.color_blue-3 {\\n color: #033598;\\n}\\n.color_red-secondary {\\n color: #ff7272;\\n}\\n.color_black-4 {\\n color: #070707;\\n}\\ninput::-webkit-input-placeholder {\\n color: #a5a5a5;\\n font-size: 1.3rem;\\n}\\ninput::-moz-placeholder {\\n color: #a5a5a5;\\n font-size: 1.3rem;\\n}\\ninput::-ms-input-placeholder {\\n color: #a5a5a5;\\n font-size: 1.3rem;\\n}\\ninput::placeholder {\\n color: #a5a5a5;\\n font-size: 1.3rem;\\n}\\n.color-cadetblue-secondary {\\n color: #71ceca;\\n}\\n.color-blue-ternary {\\n color: #00b7a5;\\n}\\n.background_color-blue-ternary {\\n background-color: #00b7a5;\\n}\\ntable {\\n width: 100%;\\n border-collapse: collapse;\\n border-radius: 3px;\\n box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);\\n}\\ntable thead {\\n color: #000000;\\n padding: 0rem 1rem;\\n}\\ntable thead th {\\n padding: 1rem;\\n font-size: 1.4rem;\\n text-align: left;\\n text-transform: capitalize;\\n}\\ntable thead th:first-child {\\n padding-left: 2rem;\\n}\\ntable tbody {\\n background-color: #ffffff;\\n color: #000000;\\n font-family: \\\"Lato-Regular\\\";\\n}\\ntable tbody > tr:nth-child(even) {\\n background: #fafafb;\\n}\\ntable tbody > tr:nth-child(odd) {\\n background: #fff;\\n}\\ntable tbody td {\\n padding: 1rem;\\n font-size: 1.2rem;\\n}\\ntable tbody td:first-child {\\n padding-left: 2rem;\\n}\\ntable tbody tr {\\n height: 4.5rem;\\n}\\ntable tbody tr:nth-child(even) {\\n background-color: #fafafb;\\n}\\ntable tbody tr:nth-child(odd) {\\n background-color: #ffffff;\\n}\\n.table-fixed-header {\\n overflow-y: auto;\\n}\\n.table-fixed-header thead th {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1;\\n}\\n.table-fixed-header thead th span {\\n height: 2rem;\\n}\\n.shadow {\\n box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);\\n}\\n.table_count {\\n padding: 8px 12px;\\n background-color: #00b7a5;\\n border-radius: 50%;\\n color: #ffffff;\\n}\\n.list-map_nav-bar.active {\\n border: none;\\n outline: none;\\n padding: 1rem 5rem;\\n font-size: 1.4rem;\\n font-weight: bold;\\n color: #ffffff;\\n margin-right: 0.2rem;\\n}\\n.list-map_nav-bar.inactive {\\n border: none;\\n outline: none;\\n padding: 1rem 5rem;\\n font-size: 1.4rem;\\n font-weight: bold;\\n color: #ffffff;\\n margin-right: 0.2rem;\\n}\\n.circle {\\n width: 2rem;\\n height: 2rem;\\n border-radius: 50%;\\n}\\n.background_orange {\\n background-color: #ffc06a;\\n}\\n.background_orange-secondary {\\n background-color: #ff9c14;\\n}\\n.background_cadetblue {\\n background-color: #71ceca;\\n}\\n.background-color_gray-9 {\\n background-color: #e3e3e3;\\n}\\n.background-color_blue-8 {\\n background-color: #00416b;\\n}\\n.expanded-row {\\n background-color: #e3e3e3 !important;\\n}\\n.color_athensgray-primary {\\n color: #e9e9f0;\\n}\\n.color_athensgray-2 {\\n color: #d6d6d6;\\n}\\n.font-weight_500 {\\n font-weight: 500;\\n}\\n.font-weight_600 {\\n font-weight: 600;\\n}\\n.font-weight_700 {\\n font-weight: 700;\\n}\\n.font-Lato-Regular {\\n font-family: \\\"Lato-Regular\\\";\\n}\\n.color_black-5 {\\n color: rgba(0, 0, 0, 0.8);\\n}\\n.color_gray-primary {\\n color: #898989;\\n}\\n.color_gray-secondary {\\n color: #4d4f5c;\\n}\\n.margin_0 {\\n margin: 0 !important;\\n}\\n.margin_10 {\\n margin: 1rem !important;\\n}\\n.color_violet-primary {\\n color: #43425d;\\n}\\n.color_brown-primary {\\n color: #909090;\\n}\\n.color_black-primary {\\n color: #000000;\\n}\\n.mt30 {\\n margin-top: 3rem;\\n}\\n.mt80 {\\n margin-top: 8rem;\\n}\\n.border-top-left-radius_0 {\\n border-top-left-radius: 0rem !important;\\n}\\n.align-items_flex-end {\\n align-items: flex-end;\\n}\\n.align-items_baseline {\\n align-items: baseline;\\n}\\n.background_athensgray-primary {\\n background-color: #e9e9f0;\\n}\\n.background_light-green-primary {\\n background-color: #9bea4f;\\n}\\n.background_light-green-secondary {\\n background-color: #afd28d;\\n}\\n.color_light-green-secondary {\\n color: #afd28d;\\n}\\n.background_gray-primary {\\n background-color: #898989;\\n}\\n.styled-checkbox {\\n position: absolute;\\n opacity: 0;\\n width: 15px;\\n height: 16px;\\n z-index: 1;\\n cursor: pointer;\\n}\\n.styled-checkbox + .replacement-checkbox, .styled-checkbox + .replacement-checkbox_minus {\\n width: 15px;\\n height: 15px;\\n display: inline-block;\\n cursor: pointer;\\n border-radius: 2px;\\n position: relative;\\n}\\n.styled-checkbox:checked + .dat {\\n background-color: #71ceca !important;\\n}\\n.styled-checkbox:checked + .rat {\\n background-color: #f89409 !important;\\n}\\n.styled-checkbox:checked + .slt {\\n background-color: #d289cc !important;\\n}\\n.styled-checkbox:checked + .llt {\\n background-color: #cee816 !important;\\n}\\n.styled-checkbox:checked + .ambt {\\n background-color: #19e800 !important;\\n}\\n.styled-checkbox:checked + .dat::after, .styled-checkbox:checked + .rat::after, .styled-checkbox:checked + .slt::after, .styled-checkbox:checked + .llt::after, .styled-checkbox:checked + .ambt::after {\\n background-color: #000 !important;\\n box-shadow: 2px 0 0 #000, 4px 0 0 #000, 4px -2px 0 #000, 4px -4px 0 #000, 4px -6px 0 #000, 4px -8px 0 #000 !important;\\n}\\n.styled-checkbox:checked + .replacement-checkbox, .styled-checkbox:checked + .replacement-checkbox_minus {\\n background-color: #43425d;\\n border: none;\\n}\\n.styled-checkbox:checked + .replacement-checkbox-map {\\n background-color: #ffffff;\\n border: none;\\n}\\n.styled-checkbox:checked + .replacement-checkbox::after {\\n content: \\\"\\\";\\n position: absolute;\\n left: 2px;\\n top: 5.5px;\\n background-color: #fff;\\n width: 2px;\\n height: 2px;\\n box-shadow: 2px 0 0 #fff, 4px 0 0 #fff, 4px -2px 0 #fff, 4px -4px 0 #fff, 4px -6px 0 #fff, 4px -8px 0 #fff;\\n -webkit-transform: rotate(45deg);\\n transform: rotate(45deg);\\n}\\n.styled-checkbox:checked + .replacement-checkbox_minus::after {\\n content: \\\"\\\";\\n position: absolute;\\n left: 0;\\n right: 2px;\\n margin: auto;\\n top: 7px;\\n background-color: #fff;\\n width: 6px;\\n height: 2px;\\n box-shadow: 2px 0 0 #fff;\\n}\\n.dat_graph_label {\\n border-bottom: 0.1rem solid #71ceca;\\n}\\n.rat_graph_label {\\n border-bottom: 0.1rem solid #f89409;\\n}\\n.slt_graph_label {\\n border-bottom: 0.1rem solid #d289cc;\\n}\\n.llt_graph_label {\\n border-bottom: 0.1rem solid #fdffec;\\n}\\n.ambt_graph_label {\\n border-bottom: 0.1rem solid #19e800;\\n}\\n.background_white {\\n background-color: #ffffff;\\n}\\n.border_gray-primary_1 {\\n border: 1px solid #898989;\\n}\\n.color_dark-green-primary {\\n color: #136363;\\n}\\n.align-items_flex-start {\\n align-items: flex-start;\\n}\\n.cursor_not-allowed {\\n cursor: not-allowed;\\n}\\n.rotate_180 {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n.transition-duration_025 {\\n transition-duration: 0.25s;\\n}\\n.cursor_default {\\n cursor: default;\\n}\\n.width_max-content {\\n width: -webkit-max-content;\\n width: -moz-max-content;\\n width: max-content;\\n}\\n.width_80-percent {\\n width: 80%;\\n}\\n.width_20-percent {\\n width: 20%;\\n}\\n.custom_anchor_tag {\\n text-decoration: none;\\n color: inherit;\\n}\\n.modal {\\n display: block;\\n position: fixed;\\n z-index: 9999;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n max-height: 100%;\\n overflow-y: auto;\\n}\\n.modal-content {\\n position: relative;\\n top: 5rem;\\n width: 1150px;\\n}\\n.modal-content .modal-body {\\n max-height: calc(90vh - 120px);\\n overflow: auto;\\n padding: 2rem;\\n}\\n.modal-footer {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n padding: 2rem;\\n}\\n.modal-title {\\n font-family: \\\"Lato-Regular\\\";\\n font-weight: 700;\\n}\\n.modal-sub-title {\\n font-size: 1.4rem;\\n font-family: \\\"SourceSansPro-Regular\\\";\\n}\\n.z-index_2000 {\\n z-index: 2000;\\n}\\n.z-index_2020 {\\n z-index: 2020;\\n}\\n.max-width_200 {\\n max-width: 20rem;\\n}\\n.max-width_100 {\\n max-width: 10rem;\\n}\\n.background_red-primary {\\n background-color: #dd4b4b;\\n}\\n.color_red-primary {\\n color: #dd4b4b;\\n}\\n.background_light-green-primary {\\n background-color: #9bea4f;\\n}\\n.color_light-green-primary {\\n color: #9bea4f;\\n}\\n.background_gray-7 {\\n background-color: #aaaaaa;\\n}\\n.color_gray-7 {\\n color: #aaaaaa;\\n}\\n.color_gray-10 {\\n color: #909090;\\n}\\n.max-width_80-percent {\\n max-width: 80%;\\n}\\n.background_dark-blue-primary {\\n background-color: #242a34;\\n}\\n.width_40-percent {\\n width: 40%;\\n}\\n.max-width_40-percent {\\n max-width: 40%;\\n}\\n.max-width_45-percent {\\n max-width: 45%;\\n}\\n.min-width_200 {\\n min-width: 20rem;\\n}\\n.min-width_50 {\\n min-width: 5rem;\\n}\\n.line-height_14 {\\n line-height: 1.4rem;\\n}\\n.line-height_17 {\\n line-height: 1.7rem;\\n}\\n.line-height_18 {\\n line-height: 1.8rem;\\n}\\n.background_violet-primary {\\n background-color: #43425d;\\n}\\n.width_140 {\\n width: 14rem;\\n}\\n.width_300 {\\n width: 30rem;\\n}\\n.z-index_1 {\\n z-index: 1;\\n}\\n.error-text {\\n color: #dd4b4b;\\n}\\n.hint-text {\\n color: #979090;\\n}\\n.toggle-button {\\n position: relative;\\n display: inline-block;\\n width: 2.9rem;\\n height: 1.1rem;\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n.toggle-button input {\\n opacity: 0;\\n width: 0;\\n height: 0;\\n}\\n.toggle-button-slider {\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n transition: 0.4s;\\n}\\n.toggle-button-slider:before {\\n position: absolute;\\n content: \\\"\\\";\\n height: 1.5rem;\\n width: 1.5rem;\\n left: 0;\\n bottom: -0.2rem;\\n background-color: #979797;\\n transition: 0.4s;\\n}\\n.toggle-checkbox:checked + .toggle-button-slider {\\n background-color: #70865a;\\n}\\n.toggle-checkbox:checked + .toggle-button-slider:before {\\n -webkit-transform: translateX(1.5rem);\\n transform: translateX(1.5rem);\\n}\\n/* Rounded sliders */\\n.toggle-button-slider.round {\\n border-radius: 3.4rem;\\n}\\n.toggle-button-slider.round:before {\\n border-radius: 50%;\\n}\\n.assign-meli-btn {\\n width: 3.2rem;\\n height: 3.2rem;\\n}\\n.line-height_15 {\\n line-height: 1.5;\\n}\\n.overflow_scroll {\\n overflow: scroll;\\n}\\n.overflow_scroll_y {\\n overflow-y: scroll;\\n}\\n.overflow_auto {\\n overflow: auto;\\n}\\n.ml30 {\\n margin-left: 3rem;\\n}\\n.mr30 {\\n margin-right: 3rem;\\n}\\n.word-break_break-all {\\n word-break: break-all;\\n}\\n.word-break_break-word {\\n word-break: break-word;\\n}\\n.billing-modal_wrapper .navigation_wrapper,\\n.transfer-delete-account-modal_wrapper .navigation_wrapper {\\n padding-bottom: 1rem;\\n}\\n.billing-modal_wrapper .navigation_wrapper .tab-item,\\n.transfer-delete-account-modal_wrapper .navigation_wrapper .tab-item {\\n width: 10rem;\\n font-size: 1.4rem;\\n padding: 0.7rem 0.5rem;\\n text-align: center;\\n list-style: none;\\n cursor: pointer;\\n}\\n.billing-modal_wrapper .navigation_wrapper .selected-tab,\\n.transfer-delete-account-modal_wrapper .navigation_wrapper .selected-tab {\\n cursor: default;\\n}\\n.billing-modal_wrapper .navigation_wrapper,\\n.transfer-delete-account-modal_wrapper .navigation_wrapper {\\n margin-top: 1rem;\\n}\\n.billing-modal_wrapper .navigation_wrapper .tab-item:not(:last-child),\\n.transfer-delete-account-modal_wrapper .navigation_wrapper .tab-item:not(:last-child) {\\n margin-right: 1px;\\n}\\n.billing-modal_wrapper .navigation_wrapper .tab-item:first-child,\\n.transfer-delete-account-modal_wrapper .navigation_wrapper .tab-item:first-child {\\n border-top-left-radius: 3px;\\n}\\n.billing-modal_wrapper .navigation_wrapper .tab-item:last-child,\\n.transfer-delete-account-modal_wrapper .navigation_wrapper .tab-item:last-child {\\n border-top-right-radius: 3px;\\n}\\n.box-shadow_gray {\\n box-shadow: 1px 3px 5px 0 rgba(0, 0, 0, 0.06);\\n}\\n.border-athensgray-primary_1 {\\n border: 1px solid #e9e9f0;\\n}\\n.border-athensgray-primary_2 {\\n border: 1.5px solid #e9e9f0;\\n}\\n.border-top-athensgray-primary_1 {\\n border-top: 1px solid #e9e9f0;\\n}\\n.border-bottom-athensgray-primary_1 {\\n border-bottom: 1px solid #e9e9f0;\\n}\\n.border-bottom-athensgray-primary_2 {\\n border-bottom: 1.5px solid #e9e9f0;\\n}\\n.font-SourceSansPro-Bold {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n}\\n.font-Roboto-Regular {\\n font-family: \\\"Roboto-Regular\\\";\\n}\\n.font-SourceSansPro-Regular {\\n font-family: \\\"SourceSansPro-Regular\\\";\\n}\\n.banner-title {\\n font-family: \\\"Roboto-Regular\\\";\\n font-weight: 700;\\n font-size: 1.4rem;\\n}\\n.background_red-secondary {\\n background-color: #ff7272;\\n}\\n.width_15_percent {\\n width: 15%;\\n}\\n.width_25_percent {\\n width: 25%;\\n}\\n.width_50-percent {\\n width: 50%;\\n}\\n.width_45-percent {\\n width: 45%;\\n}\\n.width_55-percent {\\n width: 55%;\\n}\\n.width_60-percent {\\n width: 60%;\\n}\\n.width_70-percent {\\n width: 70%;\\n}\\n.width_80-percent {\\n width: 80%;\\n}\\n.max-width_60-percent {\\n max-width: 60%;\\n}\\n.max-width_50-percent {\\n max-width: 50%;\\n}\\n.max-width_45-percent {\\n max-width: 50%;\\n}\\n.max-width_70-percent {\\n max-width: 70%;\\n}\\n.bottom_0 {\\n bottom: 0;\\n}\\n.background_dark-blue-secondary {\\n background-color: #2a3343;\\n}\\n.text-toggle-button {\\n position: relative;\\n display: block;\\n width: 11rem;\\n height: 3rem;\\n border-radius: 1.8rem;\\n cursor: pointer;\\n box-sizing: content-box;\\n}\\n.text-toggle-button-input {\\n position: absolute;\\n top: 0;\\n left: 0;\\n opacity: 0;\\n box-sizing: content-box;\\n}\\n.text-toggle-button-label {\\n position: relative;\\n display: block;\\n height: inherit;\\n font-size: 1.2rem;\\n text-transform: uppercase;\\n background: #898989;\\n border-radius: inherit;\\n box-sizing: content-box;\\n}\\n.text-toggle-button-label:before,\\n.text-toggle-button-label:after {\\n position: absolute;\\n top: 50%;\\n margin-top: -0.6rem;\\n line-height: 1;\\n transition: inherit;\\n box-sizing: content-box;\\n}\\n.text-toggle-button-label:before {\\n content: attr(data-off);\\n right: 1.1rem;\\n color: #ffffff;\\n}\\n.text-toggle-button-label:after {\\n content: attr(data-on);\\n left: 1.1rem;\\n color: #000000;\\n opacity: 0;\\n}\\n.text-toggle-button-input:checked ~ .text-toggle-button-label {\\n background: #afd28d;\\n}\\n.text-toggle-button-input:checked ~ .text-toggle-button-label:before {\\n opacity: 0;\\n}\\n.text-toggle-button-input:checked ~ .text-toggle-button-label:after {\\n opacity: 1;\\n}\\n.text-toggle-button-handle {\\n position: absolute;\\n top: 1px;\\n left: 1px;\\n width: 2.8rem;\\n height: 2.8rem;\\n background: linear-gradient(to bottom, #ffffff 40%, #f0f0f0);\\n border-radius: 100%;\\n}\\n.text-toggle-button-handle:before {\\n content: \\\"\\\";\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -6px 0 0 -6px;\\n width: 1.2rem;\\n height: 1.2rem;\\n background: linear-gradient(to bottom, #eeeeee, #ffffff);\\n border-radius: 6px;\\n}\\n.text-toggle-button-input:checked ~ .text-toggle-button-handle {\\n left: 8.1rem;\\n}\\n/* Transition\\n========================== */\\n.text-toggle-button-label,\\n.text-toggle-button-handle {\\n transition: All 0.3s ease;\\n -webkit-transition: All 0.3s ease;\\n -moz-transition: All 0.3s ease;\\n -o-transition: All 0.3s ease;\\n}\\n.alert-table_details,\\n.cutomer-table_details,\\n.reports-table_details,\\n.controls-table_details {\\n font-family: \\\"SourceSansPro-Regular\\\";\\n font-style: normal;\\n font-weight: 600;\\n font-size: 1.6rem;\\n}\\n.min-width_140 {\\n min-width: 14rem;\\n}\\n.min-width_160 {\\n min-width: 16rem;\\n}\\n.font-size_18 {\\n font-size: 1.8rem;\\n}\\n.background-color_dark-blue-secondary {\\n background-color: #2a3343;\\n}\\n.max-width_150 {\\n max-width: 15rem;\\n}\\n.max-width_140 {\\n max-width: 14rem;\\n}\\n.white-space_unset {\\n white-space: unset;\\n}\\n.max-height_400 {\\n max-height: 40rem;\\n}\\n.max-height_250 {\\n max-height: 25rem;\\n}\\n.color_dark-blue-secondary {\\n color: #2a3343;\\n}\\n.background-color_gray-secondary {\\n background-color: #4d4f5c;\\n}\\n.background-color_white-secondary {\\n background-color: #f4f4f4;\\n}\\n.background-color_white-primary {\\n background-color: #ffffff;\\n}\\n.min-width_270 {\\n min-width: 27rem;\\n}\\n.min-height_50 {\\n min-height: 5rem;\\n}\\nmax-width_270 {\\n max-width: 27rem !important;\\n}\\n.font-size_13 {\\n font-size: 1.3rem;\\n}\\n.border-top_gray-secondar_005 {\\n border-top: 0.05rem solid #898989;\\n}\\n.background-color_light-gray-primary {\\n background-color: #cecece;\\n}\\n.pac-container {\\n z-index: 99999 !important;\\n}\\n.pt30 {\\n padding-top: 3rem;\\n}\\n.pt40 {\\n padding-top: 4rem;\\n}\\n.pt50 {\\n padding-top: 5rem;\\n}\\n.top_0 {\\n top: 0;\\n}\\n.top_10 {\\n top: 1rem;\\n}\\n.top_3 {\\n top: 3rem;\\n}\\n.left_3 {\\n left: 3rem;\\n}\\n.left_15 {\\n left: 15rem;\\n}\\n.bottom_0 {\\n bottom: 0;\\n}\\n.right_10 {\\n right: 1rem;\\n}\\n.right_05 {\\n right: 0.5rem;\\n}\\n.margin_auto {\\n margin: auto;\\n}\\n.margin_min_01 {\\n margin: -1%;\\n}\\n.pr30 {\\n padding-right: 3rem;\\n}\\n.max-width_70 {\\n max-width: 7rem;\\n}\\n.width_70 {\\n width: 7rem;\\n}\\n.primary-action_btn {\\n border: none;\\n outline: none;\\n border-radius: 0.3rem;\\n padding: 1rem;\\n text-transform: uppercase;\\n}\\n.secondary-action_btn {\\n border: none;\\n outline: none;\\n border-radius: 0.3rem;\\n padding: 1rem;\\n text-transform: uppercase;\\n}\\n.grey-action_btn {\\n border: none;\\n outline: none;\\n border-radius: 0.3rem;\\n padding: 1rem;\\n color: #ffffff;\\n background-color: #4d4f5c;\\n text-transform: uppercase;\\n}\\n.dark-green_btn {\\n border: none;\\n outline: none;\\n border-radius: 0.3rem;\\n padding: 1rem;\\n font-size: 1.4rem;\\n color: #ffffff;\\n background-color: #136363;\\n}\\n.invalid-btn {\\n border: none;\\n outline: none;\\n border-radius: 0.3rem;\\n padding: 1rem;\\n color: #2a3343;\\n background-color: #898989;\\n text-transform: uppercase;\\n}\\n.download-template_btn {\\n display: flex;\\n align-items: center;\\n background-color: #464f5d;\\n color: #ffffff;\\n padding: 0.5rem 1rem;\\n border-radius: 5rem;\\n cursor: pointer;\\n}\\n/* Chrome, Safari, Edge, Opera */\\ninput::-webkit-outer-spin-button,\\ninput::-webkit-inner-spin-button {\\n -webkit-appearance: none;\\n margin: 0;\\n}\\n/* Firefox */\\ninput[type=number] {\\n -moz-appearance: textfield;\\n}\\n.font-size_20 {\\n font-size: 2rem;\\n}\\n.color_light-gray-primary {\\n color: #cecece;\\n}\\n.color_light-gray-2 {\\n color: #e6e6e6;\\n}\\n.styled-select {\\n border-radius: 3px;\\n background-color: #f4f4f4;\\n padding: 0.9rem 3rem 0.9rem 0.9rem;\\n font-size: 1.3rem;\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n /* Remove default arrow */\\n background-image: url('arrow-down-gray-sec.svg');\\n /* Add custom arrow */\\n background-repeat: no-repeat;\\n background-position: right 1rem center;\\n background-size: 1rem 0.741rem;\\n border: none;\\n font-family: \\\"SourceSansPro-Regular\\\";\\n max-width: 27rem;\\n}\\n.border_error_01 {\\n border: 0.1rem solid #dd4b4b !important;\\n}\\n.border_transparent_01 {\\n border: 0.1rem solid transparent;\\n}\\n.pl30 {\\n padding-left: 3rem;\\n}\\n.pr30 {\\n padding-right: 3rem;\\n}\\n.text-transform_none {\\n text-transform: none;\\n}\\n.text-transform_upper {\\n text-transform: uppercase;\\n}\\n.align-self_flex-start {\\n align-self: flex-start;\\n}\\n.align-self_flex-end {\\n align-self: flex-end;\\n}\\n.color_light-green-ternary {\\n color: #85c943;\\n}\\n.background-color_light-green-ternary {\\n background-color: #85c943;\\n}\\n.optional_label {\\n font-size: 1.4rem;\\n font-family: \\\"SourceSansPro-Regular\\\";\\n color: #4d4f5c;\\n}\\n.label {\\n font-size: 1.4rem;\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n}\\n.color_orange-orange-primary {\\n color: #ffc06a;\\n}\\n.file-container {\\n position: relative;\\n}\\n.file-container [type=file] {\\n cursor: pointer;\\n display: block;\\n filter: alpha(opacity=0);\\n height: 100%;\\n width: 100%;\\n opacity: 0;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\ninput[type=file]::-webkit-file-upload-button {\\n cursor: pointer;\\n}\\n.min-width_25-percent {\\n min-width: 25%;\\n}\\n.min-width_50-percent {\\n min-width: 50%;\\n}\\n.max-width_40-percent {\\n max-width: 40%;\\n}\\n.min-width_15-percent {\\n min-width: 15%;\\n}\\n.min-width_35-percent {\\n min-width: 35%;\\n}\\n.resize_none {\\n resize: none;\\n}\\n.max-width_75-percent {\\n max-width: 75%;\\n}\\n.border_light-gray-primary_1 {\\n border: 0.1rem solid #cecece;\\n}\\n.mt15 {\\n margin-top: 1.5rem;\\n}\\n.mt20 {\\n margin-top: 2rem;\\n}\\n.mt6 {\\n margin-top: 0.6rem;\\n}\\n.mt0 {\\n margin-top: 0rem;\\n}\\n.highlight-sort-icon::after {\\n content: \\\"\\\";\\n background-color: #12161e;\\n width: 2rem;\\n height: 2rem;\\n border-radius: 50%;\\n}\\n.max-width_100-percent {\\n max-width: 100%;\\n}\\n.background-sort-icon_black::after {\\n content: \\\"\\\";\\n background-image: url('arrow-down_black.svg');\\n margin-left: 1rem;\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: 1rem 0.741rem;\\n width: 1.8rem;\\n height: 0.8rem;\\n transition: 0.25s;\\n}\\n.background-sort-icon_white::after {\\n content: \\\"\\\";\\n background-image: url('arrow-down_white.svg');\\n margin-left: 1rem;\\n background-repeat: no-repeat;\\n background-position: 50% 50%;\\n background-size: 1rem 0.741rem;\\n transition: 0.25s;\\n}\\n.background-sort-icon_black_single::after {\\n content: \\\"\\\";\\n background-image: url('arrow-down_black.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: 1rem 0.741rem;\\n width: 1.8rem;\\n height: 0.8rem;\\n transition: 0.25s;\\n}\\n.background-sort-icon_white_single::after {\\n content: \\\"\\\";\\n background-image: url('arrow-down_white.svg');\\n background-repeat: no-repeat;\\n background-position: 50% 50%;\\n background-size: 1rem 0.741rem;\\n transition: 0.25s;\\n}\\n.rotate_background-sort-icon::after {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n.align-self_center {\\n align-self: center;\\n}\\n.min-width_80 {\\n min-width: 8rem;\\n}\\n.min-width_100 {\\n min-width: 10rem;\\n}\\n.min-width_105 {\\n min-width: 10.5rem;\\n}\\n.min-width_802 {\\n min-width: 82rem;\\n}\\n.pt075 {\\n padding-top: 0.75rem;\\n}\\n.pb075 {\\n padding-bottom: 0.75rem;\\n}\\n.visiblity_hidden {\\n visibility: hidden;\\n}\\n.bootstrap-datetimepicker-widget {\\n width: 25rem !important;\\n background-color: #ffffff;\\n border: 1px solid #cecece;\\n}\\n.bootstrap-datetimepicker-widget .list-unstyled {\\n list-style: none;\\n}\\n.bootstrap-datetimepicker-widget .wider {\\n width: auto !important;\\n}\\n.bootstrap-datetimepicker-widget table {\\n width: auto;\\n border-radius: 0rem !important;\\n}\\n.bootstrap-datetimepicker-widget table thead {\\n background-color: #ffffff !important;\\n}\\n.bootstrap-datetimepicker-widget table th {\\n border-radius: 0rem !important;\\n}\\n.bootstrap-datetimepicker-widget table tbody tr {\\n height: auto !important;\\n}\\n.bootstrap-datetimepicker-widget table tbody tr:nth-child(even) {\\n background-color: #ffffff !important;\\n}\\n.bootstrap-datetimepicker-widget table tbody tr:nth-child(odd) {\\n background-color: #ffffff !important;\\n}\\n.bootstrap-datetimepicker-widget table th {\\n max-width: 2rem !important;\\n height: 2rem;\\n line-height: 2;\\n width: 2rem;\\n}\\n.bootstrap-datetimepicker-widget table th,\\n.bootstrap-datetimepicker-widget td {\\n height: 3.2rem;\\n padding: 0rem;\\n position: relative;\\n z-index: 1;\\n}\\n.bootstrap-datetimepicker-widget table td.active {\\n border-radius: 50% !important;\\n}\\n.bootstrap-datetimepicker-widget table td.day::before {\\n border-radius: 50%;\\n content: \\\"\\\";\\n display: block;\\n height: 2.8rem;\\n position: absolute;\\n right: 0.4rem;\\n top: 0.2rem;\\n width: 2.8rem;\\n z-index: -1;\\n line-height: 2;\\n cursor: pointer;\\n}\\n.bootstrap-datetimepicker-widget .active::before {\\n background-color: #00b7a5 !important;\\n}\\n.bootstrap-datetimepicker-widget .month,\\n.bootstrap-datetimepicker-widget .year,\\n.bootstrap-datetimepicker-widget .decade {\\n position: relative;\\n}\\n.bootstrap-datetimepicker-widget table td span.month::before,\\n.bootstrap-datetimepicker-widget table td span.year::before,\\n.bootstrap-datetimepicker-widget table td span.decade::before {\\n border-radius: 50%;\\n content: \\\"\\\";\\n display: block;\\n height: 5rem;\\n position: absolute;\\n right: 0.2rem;\\n top: 0.2rem;\\n width: 5rem;\\n z-index: -1;\\n line-height: 2;\\n cursor: pointer;\\n}\\n.bootstrap-datetimepicker-widget table td span.decade::before {\\n top: 0rem !important;\\n}\\n.bootstrap-datetimepicker-widget table thead th:first-child {\\n padding-left: 0rem !important;\\n}\\n.bootstrap-datetimepicker-widget table th.disabled,\\n.bootstrap-datetimepicker-widget table th.disabled:hover {\\n opacity: 0.5;\\n cursor: not-allowed;\\n}\\n.bootstrap-datetimepicker-widget .today {\\n font-weight: 700 !important;\\n}\\n.bootstrap-datetimepicker-widget .today::before {\\n background-color: #cecece;\\n border-radius: 50% !important;\\n}\\n.bootstrap-datetimepicker-widget .prev {\\n background-image: url('arrow-down_black.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n.bootstrap-datetimepicker-widget .prev:hover,\\n.bootstrap-datetimepicker-widget .picker-switch:hover,\\n.bootstrap-datetimepicker-widget .next:hover {\\n background-color: #cecece;\\n}\\n.bootstrap-datetimepicker-widget .next {\\n background-image: url('arrow-down_black.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n.bootstrap-datetimepicker-widget .icon-keyboard_arrow_right {\\n display: none !important;\\n}\\n.bootstrap-datetimepicker-widget .disabled {\\n cursor: not-allowed !important;\\n}\\n.bootstrap-datetimepicker-widget .timepicker {\\n background-color: white;\\n}\\n.bootstrap-datetimepicker-widget .collapse {\\n display: none;\\n}\\n.bootstrap-datetimepicker-widget .collapse.in {\\n display: block;\\n}\\n.bootstrap-datetimepicker-widget .fade {\\n opacity: 0;\\n transition: opacity 0.15s linear;\\n}\\n.bootstrap-datetimepicker-widget .fade.in {\\n opacity: 1;\\n}\\n.bootstrap-datetimepicker-widget tr.collapse.in {\\n display: table-row;\\n}\\n.bootstrap-datetimepicker-widget tbody.collapse.in {\\n display: table-row-group;\\n}\\n.bootstrap-datetimepicker-widget .collapsing {\\n position: relative;\\n height: 0;\\n overflow: hidden;\\n transition-timing-function: ease;\\n transition-duration: 0.35s;\\n transition-property: height, visibility;\\n}\\n.bootstrap-datetimepicker-widget .glyphicon-time {\\n background-image: url('time.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: 1.8rem;\\n}\\n.bootstrap-datetimepicker-widget .glyphicon-time:hover {\\n background-image: url('time.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n background-color: #cecece;\\n background-size: 1.8rem;\\n}\\n.bootstrap-datetimepicker-widget .glyphicon-calendar {\\n background-image: url('calendar.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: 1.8rem;\\n}\\n.bootstrap-datetimepicker-widget .glyphicon-calendar:hover {\\n background-image: url('calendar.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n background-color: #cecece;\\n background-size: 1.8rem;\\n}\\n.bootstrap-datetimepicker-widget .glyphicon-chevron-up {\\n background-image: url('arrow-down_black.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n.bootstrap-datetimepicker-widget .glyphicon-chevron-down {\\n background-image: url('arrow-down_black.svg');\\n background-repeat: no-repeat;\\n background-position: center;\\n}\\n.bootstrap-datetimepicker-widget .day:hover::before,\\n.bootstrap-datetimepicker-widget .month:hover::before,\\n.bootstrap-datetimepicker-widget .year:hover::before,\\n.bootstrap-datetimepicker-widget .decade:hover::before {\\n background-color: #cecece;\\n border-radius: 50%;\\n}\\n.bootstrap-datetimepicker-widget .datepicker .datepicker-days .dow {\\n background-color: #eae8f3;\\n font-size: 1.2rem !important;\\n}\\n.bootstrap-datetimepicker-widget .datepicker .datepicker-days table td.day {\\n cursor: pointer;\\n}\\n.bootstrap-datetimepicker-widget .datepicker .datepicker-days table tbody td:first-child {\\n padding-left: 0rem !important;\\n}\\n.bootstrap-datetimepicker-widget .timepicker table td span {\\n width: 2rem;\\n height: 2rem;\\n line-height: 0 !important;\\n}\\n.bootstrap-datetimepicker-widget .circle_tickmark {\\n fill: #71ceca;\\n}\\n.bootstrap-datetimepicker-widget .checkbox_all {\\n color: #cecece;\\n}\\n.bootstrap-datetimepicker-widget .checkbox_critical {\\n color: #dd4b4b;\\n}\\n.bootstrap-datetimepicker-widget .checkbox_faults {\\n color: #ff9c14;\\n}\\n.alertmodal thead {\\n background-color: #cecece;\\n}\\n.alertmodal .graph-icon_orange {\\n fill: #ffc06a;\\n}\\n.alertmodal .graph-icon_light-green-ternary {\\n fill: #85c943;\\n}\\n.alertmodal .graph-icon_red-primary {\\n fill: #dd4b4b;\\n}\\n.alertmodal .tabledata {\\n height: 400px;\\n overflow-y: auto;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWxlcnRzLXRhYmxlL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxhbGVydHMtdGFibGVcXGFsZXJ0cy10YWJsZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWxlcnRzLXRhYmxlL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXHN0eWxlc2hlZXRzXFxfdXRpbGl0aWVzLnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2FsZXJ0cy10YWJsZS9hbGVydHMtdGFibGUuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2FsZXJ0cy10YWJsZS9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3RkaW4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBQUNBO0VBQ0UsZUFBQTtBQ0VGO0FEQUE7RUFDRSxrQkFBQTtBQ0dGO0FEREE7RUFDRSxrQkFBQTtBQ0lGO0FEREE7RUFDRSxXQUFBO0FDSUY7QURGQTtFQUNFLFdBQUE7QUNLRjtBREhBO0VBQ0UsWUFBQTtBQ01GO0FESEE7RUFDRSxrQkFBQTtBQ01GO0FESkE7RUFDRSxpQkFBQTtBQ09GO0FETEE7RUFDRSxnQkFBQTtBQ1FGO0FETEE7RUFDRSx5QkFBQTtBQ1FGO0FETkE7RUFDRSwwQkFBQTtBQ1NGO0FEUEE7RUFDRSxrQkFBQTtBQ1VGO0FEUkE7RUFDRSxpQkFBQTtBQ1dGO0FEUkE7RUFDRSxjQUFBO0FDV0Y7QURUQTtFQUNFLGdCQUFBO0FDWUY7QURWQTtFQUNFLFVBQUE7QUNhRjtBRFZBO0VBQ0UsY0FBQTtBQ2FGO0FEWEE7RUFDRSxxQkFBQTtBQ2NGO0FEWEE7RUFDRSxtQkFBQTtBQ2NGO0FEWkE7RUFDRSxzQkFBQTtBQ2VGO0FEWkE7RUFDRSxnQkFBQTtBQ2VGO0FEYkE7RUFDRSxZQUFBO0FDZ0JGO0FEZEE7RUFDRSxhQUFBO0FDaUJGO0FEZkE7RUFDRSxxQkFBQTtBQ2tCRjtBRGJBO0VBRUUsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0FDZUY7QURSQSxVQUFBO0FBQ0E7RUFDRSxXQUFBO0VBQ0EsWUFBQTtBQ1dGO0FEUkEsVUFBQTtBQUNBO0VBQ0UsbUJBQUE7QUNXRjtBRFJBLFdBQUE7QUFDQTtFQUNFLGdCQUFBO0FDV0Y7QURSQSxvQkFBQTtBQUNBO0VBQ0UsZ0JBQUE7QUNXRjtBRE5BO0VBQ0UsYUFBQTtBQ1NGO0FETkE7RUFDRSxtQkFBQTtBQ1NGO0FETkE7RUFDRSxtQkFBQTtBQ1NGO0FETkE7RUFDRSx1QkFBQTtBQ1NGO0FETkE7RUFDRSx5QkFBQTtBQ1NGO0FETkE7RUFDRSw4QkFBQTtBQ1NGO0FETkE7RUFDRSw2QkFBQTtBQ1NGO0FEUEE7RUFDRSxVQUFBO0FDVUY7QURSQTtFQUNFLFVBQUE7QUNXRjtBRFRBO0VBQ0UsT0FBQTtBQ1lGO0FEVEE7RUFDRSxrQkFBQTtBQ1lGO0FEVEE7RUFDRSxtQkFBQTtBQ1lGO0FEVEE7RUFDRSxrQkFBQTtBQ1lGO0FEVEE7RUFDRSxtQkFBQTtBQ1lGO0FEVkE7RUFDRSw4QkFBQTtBQ2FGO0FEVkE7RUFDRSxhQUFBO0FDYUY7QURYQTtFQUNFLGFBQUE7QUNjRjtBRFpBO0VBQ0UsZUFBQTtBQ2VGO0FEWkE7RUFDRSx3QkFBQTtBQ2VGO0FEWkE7RUFDRSxrQkFBQTtBQ2VGO0FEWkE7RUFDRSxtQkFBQTtBQ2VGO0FEWkE7RUFDRSxpQkFBQTtBQ2VGO0FEWkE7RUFDRSxtQkFBQTtBQ2VGO0FEYkE7RUFDRSxnQkFBQTtBQ2dCRjtBRGJBO0VBQ0UsaUJBQUE7QUNnQkY7QURkQTtFQUNFLGtCQUFBO0FDaUJGO0FEZEE7RUFDRSxvQkFBQTtBQ2lCRjtBRGRBO0VBQ0Usa0JBQUE7QUNpQkY7QURmQTtFQUNFLGlCQUFBO0FDa0JGO0FEZkE7RUFDRSxrQkFBQTtBQ2tCRjtBRGZBO0VBQ0UsaUJBQUE7QUNrQkY7QURmQTtFQUNFLGVBQUE7QUNrQkY7QURmQTtFQUNFLGlCQUFBO0FDa0JGO0FEZkE7RUFDRSxvQkFBQTtBQ2tCRjtBRGZBO0VBQ0Usb0JBQUE7QUNrQkY7QURmQTtFQUNFLGlCQUFBO0FDa0JGO0FEZkE7RUFDRSxvQkFBQTtBQ2tCRjtBRGZBO0VBQ0Usa0JBQUE7QUNrQkY7QURmQTtFQUNFLG1CQUFBO0FDa0JGO0FEZkE7RUFDRSxzQkFBQTtBQ2tCRjtBRGZBO0VBQ0Usb0JBQUE7QUNrQkY7QURmQTtFQUNFLHFCQUFBO0FDa0JGO0FEZkE7RUFDRSxlQUFBO0FDa0JGO0FEZkE7RUFDRSxhQUFBO0FDa0JGO0FEZkE7RUFDRSxjRGxSb0I7QUVvU3RCO0FEaEJBO0VBQ0UsY0R2UmM7QUUwU2hCO0FEaEJBO0VBQ0UsYUFBQTtBQ21CRjtBRGhCQTtFQUNFLFlBQUE7QUNtQkY7QURoQkE7RUFDRSxXQUFBO0FDbUJGO0FEakJBO0VBQ0UsVUFBQTtBQ29CRjtBRGxCQTtFQUNFLG9CQUFBO0FDcUJGO0FEbEJBO0VBQ0UscUJBQUE7QUNxQkY7QURsQkE7RUFDRSxtQkFBQTtBQ3FCRjtBRG5CQTtFQUNFLG1CQUFBO0FDc0JGO0FEcEJBO0VBQ0Usb0JBQUE7QUN1QkY7QURwQkE7RUFDRSxtQkFBQTtBQ3VCRjtBRHJCQTtFQUNFLGlCQUFBO0FDd0JGO0FEckJBO0VBQ0UsZ0JBQUE7QUN3QkY7QURyQkE7RUFDRSxnQkFBQTtBQ3dCRjtBRHRCQTtFQUNFLGlCQUFBO0FDeUJGO0FEdkJBO0VBQ0UsZ0JBQUE7QUMwQkY7QUR4QkE7RUFDRSxtQkFBQTtBQzJCRjtBRHhCQTtFQUNFLHNCQUFBO0FDMkJGO0FEeEJBO0VBQ0UsY0FBQTtBQzJCRjtBRHhCQTtFQUNFLG1CQUFBO0FDMkJGO0FEeEJBO0VBQ0UsbUJBQUE7QUMyQkY7QUR4QkE7RUFDRSxnQkFBQTtBQzJCRjtBRHhCQTtFQUNFLHFCQUFBO0FDMkJGO0FEeEJBO0VBQ0UsbUJBQUE7QUMyQkY7QUR4QkE7RUFDRSxrQkFBQTtBQzJCRjtBRHhCQTtFQUNFLHFCQUFBO0FDMkJGO0FEeEJBO0VBQ0UsZUFBQTtBQzJCRjtBRHhCQTtFQUNFLG1CQUFBO0FDMkJGO0FEekJBO0VBQ0UsbUJBQUE7QUM0QkY7QUQxQkE7RUFDRSxtQkFBQTtBQzZCRjtBRDFCQTtFQUNFLGdCQUFBO0FDNkJGO0FEMUJBO0VBQ0Usa0JBQUE7QUM2QkY7QUQxQkE7RUFDRSxZQUFBO0FDNkJGO0FEMUJBO0VBQ0UscUJBQUE7QUM2QkY7QUQxQkE7RUFDRSxnQkFBQTtBQzZCRjtBRDFCQTtFQUNFLFVBQUE7QUM2QkY7QUQzQkE7RUFDRSxVQUFBO0FDOEJGO0FEM0JBO0VBQ0Usc0JBQUE7QUM4QkY7QUQzQkE7RUFDRSwwQkFBQTtBQzhCRjtBRDNCQTtFQUNFLHNDRGhhMEI7VUNnYTFCLDhCRGhhMEI7QUU4YjVCO0FENUJBO0VBQ0Usc0NEdFhtQjtVQ3NYbkIsOEJEdFhtQjtBRXFackI7QUQ3QkE7RUFDRSxzQ0RuYnNCO1VDbWJ0Qiw4QkRuYnNCO0FFbWR4QjtBRDlCQTtFQUNFLG9CQUFBO0FDaUNGO0FEOUJBO0VBQ0UscUJBQUE7QUNpQ0Y7QUQvQkE7RUFDRSxtQkFBQTtBQ2tDRjtBRGhDQTtFQUNFLG1CQUFBO0FDbUNGO0FEaENBO0VBQ0UsaUJBQUE7QUNtQ0Y7QURoQ0E7RUFDRSxlQUFBO0FDbUNGO0FEaENBO0VBQ0UsaUJBQUE7QUNtQ0Y7QURoQ0E7RUFDRSxpQkFBQTtBQ21DRjtBRGhDQTtFQUNFLGlCQUFBO0FDbUNGO0FEaENBO0VBQ0UsaUJBQUE7QUNtQ0Y7QURoQ0E7RUFDRSxpQkFBQTtBQ21DRjtBRGpDQTtFQUNFLGlCQUFBO0FDb0NGO0FEbENBO0VBQ0UsZUFBQTtBQ3FDRjtBRG5DQTtFQUNFLG9CQUFBO0FDc0NGO0FEbkNBO0VBQ0UsWUFBQTtBQ3NDRjtBRG5DQTtFQUNFLGNEamV3QjtBRXVnQjFCO0FEbkNBO0VBQ0UsY0RsY21CO0FFd2VyQjtBRG5DQTtFQUNFLGNEMWJhO0FFZ2VmO0FEbkNBO0VBQ0UsY0Q3YmE7QUVtZWY7QURuQ0E7RUFDRSxjRHhjb0I7QUU4ZXRCO0FEbkNBO0VBQ0UsY0QvZmM7QUVxaUJoQjtBRG5DQTtFQUNFLGNEL2RhO0VDZ2ViLGlCQUFBO0FDc0NGO0FEeENBO0VBQ0UsY0QvZGE7RUNnZWIsaUJBQUE7QUNzQ0Y7QUR4Q0E7RUFDRSxjRC9kYTtFQ2dlYixpQkFBQTtBQ3NDRjtBRHhDQTtFQUNFLGNEL2RhO0VDZ2ViLGlCQUFBO0FDc0NGO0FEbkNBO0VBQ0UsY0Q3ZjBCO0FFbWlCNUI7QURwQ0E7RUFDRSxjRG5kbUI7QUUwZnJCO0FEckNBO0VBQ0UseUJEdGRtQjtBRThmckI7QURwQ0E7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxrQkFBQTtFQUVBLDJDQUFBO0FDc0NGO0FEbkNBO0VBRUUsY0QvaEJvQjtFQ2dpQnBCLGtCQUFBO0FDcUNGO0FEbENBO0VBQ0UsYUFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBQ3FDRjtBRGxDQTtFQUNFLGtCQUFBO0FDcUNGO0FEbENBO0VBQ0UseUJEdmlCb0I7RUN3aUJwQixjRGhqQm9CO0VDaWpCcEIsMkJEOWN1QjtBRW1mekI7QURsQ0E7RUFDRSxtQkFBQTtBQ3FDRjtBRG5DQTtFQUNFLGdCQUFBO0FDc0NGO0FEbkNBO0VBQ0UsYUFBQTtFQUNBLGlCQUFBO0FDc0NGO0FEbkNBO0VBQ0Usa0JBQUE7QUNzQ0Y7QURuQ0E7RUFDRSxjQUFBO0FDc0NGO0FEbkNBO0VBQ0UseUJBQUE7QUNzQ0Y7QURuQ0E7RUFDRSx5QkFBQTtBQ3NDRjtBRG5DQTtFQUNFLGdCQUFBO0FDc0NGO0FEbkNBO0VBQ0Usd0JBQUE7RUFBQSxnQkFBQTtFQUNBLE1BQUE7RUFDQSxVQUFBO0FDc0NGO0FEbkNBO0VBQ0UsWUFBQTtBQ3NDRjtBRG5DQTtFQUNFLDJDQUFBO0FDc0NGO0FEcENBO0VBQ0UsaUJBQUE7RUFDQSx5QkR4aUJtQjtFQ3lpQm5CLGtCQUFBO0VBQ0EsY0Q3bEJvQjtBRW9vQnRCO0FEbkNBO0VBQ0UsWUFBQTtFQUNBLGFBQUE7RUFFQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxjRHhtQm9CO0VDMG1CcEIsb0JBQUE7QUNvQ0Y7QURqQ0E7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUVBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLGNEcG5Cb0I7RUNzbkJwQixvQkFBQTtBQ2tDRjtBRC9CQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7QUNrQ0Y7QUQvQkE7RUFDRSx5QkQvbUJxQjtBRWlwQnZCO0FEL0JBO0VBQ0UseUJEdmtCdUI7QUV5bUJ6QjtBRC9CQTtFQUNFLHlCRG5vQndCO0FFcXFCMUI7QUQvQkE7RUFDRSx5QkQxbUJhO0FFNG9CZjtBRC9CQTtFQUNFLHlCRGpvQmE7QUVtcUJmO0FEL0JBO0VBQ0Usb0NBQUE7QUNrQ0Y7QUQvQkE7RUFDRSxjRGpuQnlCO0FFbXBCM0I7QUQvQkE7RUFDRSxjRHBuQm1CO0FFc3BCckI7QUQvQkE7RUFDRSxnQkFBQTtBQ2tDRjtBRC9CQTtFQUNFLGdCQUFBO0FDa0NGO0FEL0JBO0VBQ0UsZ0JBQUE7QUNrQ0Y7QUQvQkE7RUFDRSwyQkRqbEJ1QjtBRW1uQnpCO0FEL0JBO0VBQ0UseUJEcHJCYztBRXN0QmhCO0FEL0JBO0VBQ0UsY0QzcEJtQjtBRTZyQnJCO0FEL0JBO0VBQ0UsY0Q3cEJxQjtBRStyQnZCO0FEL0JBO0VBQ0Usb0JBQUE7QUNrQ0Y7QUQvQkE7RUFDRSx1QkFBQTtBQ2tDRjtBRGhDQTtFQUNFLGNEenBCcUI7QUU0ckJ2QjtBRGpDQTtFQUNFLGNBQUE7QUNvQ0Y7QURqQ0E7RUFDRSxjRGx0Qm9CO0FFc3ZCdEI7QURqQ0E7RUFDRSxnQkFBQTtBQ29DRjtBRGxDQTtFQUNFLGdCQUFBO0FDcUNGO0FEbENBO0VBQ0UsdUNBQUE7QUNxQ0Y7QURsQ0E7RUFDRSxxQkFBQTtBQ3FDRjtBRGxDQTtFQUNFLHFCQUFBO0FDcUNGO0FEbENBO0VBQ0UseUJEMXJCeUI7QUUrdEIzQjtBRG5DQTtFQUNFLHlCRGp0QjBCO0FFdXZCNUI7QURuQ0E7RUFDRSx5QkRwdEI0QjtBRTB2QjlCO0FEbkNBO0VB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QUE7VUFBQSx5QkFBQTtBQ3pHSjtBRDRHRTtFQUNFLDZDQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtBQzFHSjtBRDZHRTs7OztFQUlFLHlCRHBtRXVCO0VDcW1FdkIsa0JBQUE7QUMzR0o7QURnSE07RUFDRSx5QkFBQTtFQUNBLDRCQUFBO0FDOUdSO0FEaUhNO0VBTUUsZUFBQTtBQ3BIUjtBRDRITTtFQUNFLDZCQUFBO0FDMUhSO0FEZ0lJO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtBQzlITjtBRGlJRTtFQUNFLGFEMXFFc0I7QUUyaUUxQjtBRGtJRTtFQUNFLGNEL29FdUI7QUUrZ0UzQjtBRGtJRTtFQUNFLGNEem9FZ0I7QUV5Z0VwQjtBRGtJRTtFQUNFLGNENW5FcUI7QUU0L0R6QjtBQ2hrRUk7RUFFSSx5Qkh5Q21CO0FFeWhFM0I7QUNoa0VJO0VBQ0ksYUhtQmU7QUUraUV2QjtBQ2hrRUk7RUFDSSxhSG9Cb0I7QUU4aUU1QjtBQy9qRUk7RUFDSSxhSHdDWTtBRXloRXBCO0FDL2pFQTtFQUVBLGFBQUE7RUFDQSxnQkFBQTtBRGdrRUEiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9hbGVydHMtdGFibGUvYWxlcnRzLXRhYmxlLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi51X3Bvc2l0aW9uX2ZpeGVkIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbn1cclxuLnVfcG9zaXRpb25fYWJzb2x1dGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG4udV9wb3NpdGlvbl9yZWxhdGl2ZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udV9jbGVhcl9ib3RoIHtcclxuICBjbGVhcjogYm90aDtcclxufVxyXG4udV9mbG9hdF9sZWZ0IHtcclxuICBmbG9hdDogbGVmdDtcclxufVxyXG4udV9mbG9hdF9yaWdodCB7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcblxyXG4udV90ZXh0X2NlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi51X3RleHRfcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcbi51X3RleHRfbGVmdCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLnVfdGV4dF90cmFuc2Zvcm1fdXBwZXJjYXNlIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcbi51X3RleHRfdHJhbnNmb3JtX2NhcGl0YWxpemUge1xyXG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG59XHJcbi51X3RleHRfaXRhbGljIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuLnVfZm9udF93ZWlnaHRfYm9sZCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi51X21hcmdpbl9hdXRvIHtcclxuICBtYXJnaW46IDAgYXV0bztcclxufVxyXG4udV9tYXJnaW5fYm90dG9tXzAge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuLnVfb3BhY2l0eV8wIHtcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4udV9kaXNwbGF5X2Jsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4udV9kaXNwbGF5X2lubGluZV9ibG9jayB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4udV9hbGlnbl92ZXJ0aWNhbF90b3Age1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbn1cclxuLnVfYWxpZ25fdmVydGljYWxfbWlkZGxlIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4udV9iYWNrZ3JvdW5kX25vbmUge1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbn1cclxuLnVfYm9yZGVyX25vbmUge1xyXG4gIGJvcmRlcjogbm9uZTtcclxufVxyXG4udV9kaXNwbGF5X25vbmUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLnVfbGlzdF9zdHlsZV9ub25lIHtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbn1cclxuXHJcbi8vIFRleHQgT3ZlcmZsb3cgRWxsaXBzaXMgU3RhcnRcclxuXHJcbi50ZXh0LW92ZXJmbG93X2VsbGlwc2lzIHtcclxuICAvLyBtYXgtd2lkdGg6IDEwMHB4O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gVGV4dCBPdmVyZmxvdyBFbGxpcHNpcyBFbmRcclxuXHJcbi8vIFNjcm9sbCBCYXIgY3NzIHN0YXJ0XHJcblxyXG4vKiB3aWR0aCAqL1xyXG46Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICB3aWR0aDogMXJlbTtcclxuICBoZWlnaHQ6IDFyZW07XHJcbn1cclxuXHJcbi8qIFRyYWNrICovXHJcbjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gIGJhY2tncm91bmQ6ICNmMWYxZjE7XHJcbn1cclxuXHJcbi8qIEhhbmRsZSAqL1xyXG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICBiYWNrZ3JvdW5kOiAjODg4O1xyXG59XHJcblxyXG4vKiBIYW5kbGUgb24gaG92ZXIgKi9cclxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogIzU1NTtcclxufVxyXG5cclxuLy8gU2Nyb2xsIEJhciBjc3MgZW5kXHJcblxyXG4uZGlzcGxheV9mbGV4IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZmxleC1kaXJlY3Rpb25fcm93IHtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG59XHJcblxyXG4uYWxpZ24taXRlbXNfY2VudGVyIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uanVzdGlmeS1jb250ZW50X2NlbnRlciB7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5qdXN0aWZ5LWNvbnRlbnRfZmxleC1lbmQge1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbn1cclxuXHJcbi5qdXN0aWZ5LWNvbnRlbnRfc3BhY2UtYmV0d2VlbiB7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4uanVzdGlmeS1jb250ZW50X3NwYWNlLWFyb3VuZCB7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbn1cclxuLnVfbGVmdF8yMCB7XHJcbiAgbGVmdDogMnJlbTtcclxufVxyXG4udV9sZWZ0XzEwIHtcclxuICBsZWZ0OiAxcmVtO1xyXG59XHJcbi5mbGV4XzEge1xyXG4gIGZsZXg6IDE7XHJcbn1cclxuXHJcbi5wbDIwIHtcclxuICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbn1cclxuXHJcbi5wcjIwIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xyXG59XHJcblxyXG4ucGw0MCB7XHJcbiAgcGFkZGluZy1sZWZ0OiA0cmVtO1xyXG59XHJcblxyXG4ucHI0MCB7XHJcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcclxufVxyXG4ucHI1MCB7XHJcbiAgcGFkZGluZy1yaWdodDogNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucDEwIHtcclxuICBwYWRkaW5nOiAxcmVtO1xyXG59XHJcbi5wMzAge1xyXG4gIHBhZGRpbmc6IDNyZW07XHJcbn1cclxuLnAxNSB7XHJcbiAgcGFkZGluZzogMS41cmVtO1xyXG59XHJcblxyXG4ub3V0bGluZV9ub25lIHtcclxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ib3JkZXItcmFkaXVzXzUwLXBlcmNlbnQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuLmJvcmRlci1yYWRpdXNfMTAwLXBlcmNlbnQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbn1cclxuXHJcbi5tYXJnaW4tbGVmdF9hdXRvIHtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLm1hcmdpbi1sZWZ0XzUge1xyXG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcbn1cclxuLm1sNDcge1xyXG4gIG1hcmdpbi1sZWZ0OiA0NyU7XHJcbn1cclxuXHJcbi5tbDgwIHtcclxuICBtYXJnaW4tbGVmdDogOHJlbTtcclxufVxyXG4ubXIyMCB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xyXG59XHJcblxyXG4ubXI0MSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiA0LjFyZW07XHJcbn1cclxuXHJcbi5tcjgwIHtcclxuICBtYXJnaW4tcmlnaHQ6IDhyZW07XHJcbn1cclxuLm1sMjAge1xyXG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xyXG59XHJcblxyXG4ubXIxMCB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG59XHJcblxyXG4ubWwxMCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XHJcbn1cclxuXHJcbi5jdXJzb3JfcG9pbnRlciB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ucHQyMCB7XHJcbiAgcGFkZGluZy10b3A6IDJyZW07XHJcbn1cclxuXHJcbi5wYjIwIHtcclxuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcclxufVxyXG5cclxuLnBiNDAge1xyXG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xyXG59XHJcblxyXG4ucHQxMCB7XHJcbiAgcGFkZGluZy10b3A6IDFyZW07XHJcbn1cclxuXHJcbi5wYjEwIHtcclxuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnBsMTAge1xyXG4gIHBhZGRpbmctbGVmdDogMXJlbTtcclxufVxyXG5cclxuLnB0NSB7XHJcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcclxufVxyXG5cclxuLnBiNSB7XHJcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcclxufVxyXG5cclxuLnBsNSB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XHJcbn1cclxuXHJcbi5wcjUge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcclxufVxyXG5cclxuLnA1IHtcclxuICBwYWRkaW5nOiAwLjVyZW07XHJcbn1cclxuXHJcbi5wMjAge1xyXG4gIHBhZGRpbmc6IDJyZW07XHJcbn1cclxuXHJcbi5jb2xvcl93aGl0ZS1wcmltYXJ5IHtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbn1cclxuLmNvbG9yX2JsYWNrLTcge1xyXG4gIGNvbG9yOiAkY29sb3ItYmxhY2stNztcclxufVxyXG5cclxuLnAyMCB7XHJcbiAgcGFkZGluZzogMnJlbTtcclxufVxyXG5cclxuLmhlaWdodF8xMDAtcGVyY2VudCB7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4ud2lkdGhfMTAwLXBlcmNlbnQge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi53aWR0aF8zMC1wZXJjZW50IHtcclxuICB3aWR0aDogMzAlO1xyXG59XHJcbi5wbDE1IHtcclxuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcclxufVxyXG5cclxuLnByMTUge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcclxufVxyXG5cclxuLm1sMTUge1xyXG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XHJcbn1cclxuLm1sMTgge1xyXG4gIG1hcmdpbi1sZWZ0OiAxLjhyZW07XHJcbn1cclxuLm1yMTUge1xyXG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xyXG59XHJcblxyXG4ubWw1IHtcclxuICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG59XHJcbi5tbDUwIHtcclxuICBtYXJnaW4tbGVmdDogNXJlbTtcclxufVxyXG5cclxuLm10MjAge1xyXG4gIG1hcmdpbi10b3A6IDJyZW07XHJcbn1cclxuXHJcbi5tdDQwIHtcclxuICBtYXJnaW4tdG9wOiA0cmVtO1xyXG59XHJcbi5tdDEwMCB7XHJcbiAgbWFyZ2luLXRvcDogMTByZW07XHJcbn1cclxuLm10NTAge1xyXG4gIG1hcmdpbi10b3A6IDVyZW07XHJcbn1cclxuLnB0MTUge1xyXG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XHJcbn1cclxuXHJcbi5wYjE1IHtcclxuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xyXG59XHJcblxyXG4ubGluZS1oZWlnaHRfMiB7XHJcbiAgbGluZS1oZWlnaHQ6IDI7XHJcbn1cclxuXHJcbi5wcjEwIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xyXG59XHJcblxyXG4ud2hpdGUtc3BhY2Vfbm93cmFwIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ub3ZlcmZsb3dfaGlkZGVuIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubWI1IHtcclxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbn1cclxuXHJcbi5tYjEwIHtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4uYm9yZGVyLXJhZGl1c18zIHtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbi5tYjE1IHtcclxuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbn1cclxuXHJcbi5tdDUge1xyXG4gIG1hcmdpbi10b3A6IDVweDtcclxufVxyXG5cclxuLm1iMjAge1xyXG4gIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbn1cclxuLm1iMzAge1xyXG4gIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbn1cclxuLm1iNTAge1xyXG4gIG1hcmdpbi1ib3R0b206IDVyZW07XHJcbn1cclxuXHJcbi5tdDEwIHtcclxuICBtYXJnaW4tdG9wOiAxcmVtO1xyXG59XHJcblxyXG4ubXQwMiB7XHJcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xyXG59XHJcblxyXG4ubWF4LXdpZHRoXzAge1xyXG4gIG1heC13aWR0aDogMDtcclxufVxyXG5cclxuLmJvcmRlci1yYWRpdXNfNSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG59XHJcblxyXG4ubWluLWhlaWdodF8xMDAtcGVyY2VudCB7XHJcbiAgbWluLWhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLndpZHRoXzc1LXBlcmNlbnQge1xyXG4gIHdpZHRoOiA3NSU7XHJcbn1cclxuLndpZHRoXzkwLXBlcmNlbnQge1xyXG4gIHdpZHRoOiA5MCU7XHJcbn1cclxuXHJcbi5mbGV4LWRpcmVjdGlvbl9jb2x1bW4ge1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi50ZXh0LWRlY29yYXRpb25fdW5kZXJsaW5lIHtcclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuLnVuZGVybGluZV9jYWRldGJsdWUtc2Vjb25kYXJ5IHtcclxuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5O1xyXG59XHJcbi51bmRlcmxpbmVfYmx1ZS10ZXJuYXJ5IHtcclxuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICRjb2xvci1ibHVlLXRlcm5hcnk7XHJcbn1cclxuLnVuZGVybGluZV9ibGFjayB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAkY29sb3ItYmxhY2stc2Vjb25kYXJ5O1xyXG59XHJcbi5wbDMyIHtcclxuICBwYWRkaW5nLWxlZnQ6IDMuMnJlbTtcclxufVxyXG5cclxuLnByMzIge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDMuMnJlbTtcclxufVxyXG4ucHIzMCB7XHJcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcclxufVxyXG4uYm9yZGVyLXJhZGl1c181MCB7XHJcbiAgYm9yZGVyLXJhZGl1czogNXJlbTtcclxufVxyXG5cclxuLmZvbnQtc2l6ZV8wOSB7XHJcbiAgZm9udC1zaXplOiAwLjlyZW07XHJcbn1cclxuXHJcbi5mb250LXNpemVfMTAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxuLmZvbnQtc2l6ZV8xMSB7XHJcbiAgZm9udC1zaXplOiAxLjFyZW07XHJcbn1cclxuXHJcbi5mb250LXNpemVfMTIge1xyXG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG59XHJcblxyXG4uZm9udC1zaXplXzE0IHtcclxuICBmb250LXNpemU6IDEuNHJlbTtcclxufVxyXG5cclxuLmZvbnQtc2l6ZV8xMyB7XHJcbiAgZm9udC1zaXplOiAxLjNyZW07XHJcbn1cclxuXHJcbi5mb250LXNpemVfMTYge1xyXG4gIGZvbnQtc2l6ZTogMS42cmVtO1xyXG59XHJcbi5mb250LXNpemVfMjQge1xyXG4gIGZvbnQtc2l6ZTogMi40cmVtO1xyXG59XHJcbi5mb250LXNpemVfMjAge1xyXG4gIGZvbnQtc2l6ZTogMnJlbTtcclxufVxyXG4ubXI1IHtcclxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxufVxyXG5cclxuLm9wYWNpdHlfMDUge1xyXG4gIG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLmNvbG9yX2NhZGV0Ymx1ZS1wcmltYXJ5IHtcclxuICBjb2xvcjogJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5O1xyXG59XHJcblxyXG4uY29sb3JfYXRoZW5zZ3JheS0yIHtcclxuICBjb2xvcjogJGNvbG9yLWF0aGVuc2dyYXktMjtcclxufVxyXG5cclxuLmNvbG9yX2JsdWUtMiB7XHJcbiAgY29sb3I6ICRjb2xvci1ibHVlLTI7XHJcbn1cclxuXHJcbi5jb2xvcl9ibHVlLTMge1xyXG4gIGNvbG9yOiAkY29sb3ItYmx1ZS0zO1xyXG59XHJcblxyXG4uY29sb3JfcmVkLXNlY29uZGFyeSB7XHJcbiAgY29sb3I6ICRjb2xvci1yZWQtc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4uY29sb3JfYmxhY2stNCB7XHJcbiAgY29sb3I6ICRjb2xvci1ibGFjay00O1xyXG59XHJcblxyXG5pbnB1dDo6cGxhY2Vob2xkZXIge1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JheS02O1xyXG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG59XHJcblxyXG4uY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeSB7XHJcbiAgY29sb3I6ICRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5O1xyXG59XHJcbi5jb2xvci1ibHVlLXRlcm5hcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItYmx1ZS10ZXJuYXJ5O1xyXG59XHJcbi5iYWNrZ3JvdW5kX2NvbG9yLWJsdWUtdGVybmFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWUtdGVybmFyeTtcclxufVxyXG4vLyBUYWJsZSBDU1MgU3RhcnRcclxuXHJcbnRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJveC1zaGFkb3c6IDBweCA0cHggMjBweCByZ2IoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxudGFibGUgdGhlYWQge1xyXG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbiAgcGFkZGluZzogMHJlbSAxcmVtO1xyXG59XHJcblxyXG50YWJsZSB0aGVhZCB0aCB7XHJcbiAgcGFkZGluZzogMXJlbTtcclxuICBmb250LXNpemU6IDEuNHJlbTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG59XHJcblxyXG50YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xyXG59XHJcblxyXG50YWJsZSB0Ym9keSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgY29sb3I6ICRjb2xvci1ibGFjay1wcmltYXJ5O1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLUxhdG8tUmVndWxhcjtcclxufVxyXG5cclxudGFibGUgdGJvZHkgPiB0cjpudGgtY2hpbGQoZXZlbikge1xyXG4gIGJhY2tncm91bmQ6ICNmYWZhZmI7XHJcbn1cclxudGFibGUgdGJvZHkgPiB0cjpudGgtY2hpbGQob2RkKSB7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxufVxyXG5cclxudGFibGUgdGJvZHkgdGQge1xyXG4gIHBhZGRpbmc6IDFyZW07XHJcbiAgZm9udC1zaXplOiAxLjJyZW07XHJcbn1cclxuXHJcbnRhYmxlIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcclxuICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbn1cclxuXHJcbnRhYmxlIHRib2R5IHRyIHtcclxuICBoZWlnaHQ6IDQuNXJlbTtcclxufVxyXG5cclxudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZiO1xyXG59XHJcblxyXG50YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuLnRhYmxlLWZpeGVkLWhlYWRlciB7XHJcbiAgb3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLnRhYmxlLWZpeGVkLWhlYWRlciB0aGVhZCB0aCB7XHJcbiAgcG9zaXRpb246IHN0aWNreTtcclxuICB0b3A6IDA7XHJcbiAgei1pbmRleDogMTtcclxufVxyXG5cclxuLnRhYmxlLWZpeGVkLWhlYWRlciB0aGVhZCB0aCBzcGFuIHtcclxuICBoZWlnaHQ6IDJyZW07XHJcbn1cclxuXHJcbi5zaGFkb3cge1xyXG4gIGJveC1zaGFkb3c6IDBweCA0cHggMjBweCByZ2IoMCwgMCwgMCwgMC4xKTtcclxufVxyXG4udGFibGVfY291bnQge1xyXG4gIHBhZGRpbmc6IDhweCAxMnB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLXRlcm5hcnk7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxufVxyXG4vLyBUYWJsZSBDU1MgRW5kXHJcblxyXG4ubGlzdC1tYXBfbmF2LWJhci5hY3RpdmUge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIC8vYm9yZGVyLXJhZGl1czogMC4zcmVtO1xyXG4gIHBhZGRpbmc6IDFyZW0gNXJlbTtcclxuICBmb250LXNpemU6IDEuNHJlbTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTtcclxuICBtYXJnaW4tcmlnaHQ6IDAuMnJlbTtcclxufVxyXG5cclxuLmxpc3QtbWFwX25hdi1iYXIuaW5hY3RpdmUge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIC8vIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcclxuICBwYWRkaW5nOiAxcmVtIDVyZW07XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5O1xyXG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XHJcbn1cclxuXHJcbi5jaXJjbGUge1xyXG4gIHdpZHRoOiAycmVtO1xyXG4gIGhlaWdodDogMnJlbTtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kX29yYW5nZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW9yYW5nZS1wcmltYXJ5O1xyXG59XHJcblxyXG4uYmFja2dyb3VuZF9vcmFuZ2Utc2Vjb25kYXJ5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itb3JhbmdlLXNlY29uZGFyeTtcclxufVxyXG5cclxuLmJhY2tncm91bmRfY2FkZXRibHVlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kLWNvbG9yX2dyYXktOSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktOTtcclxufVxyXG5cclxuLmJhY2tncm91bmQtY29sb3JfYmx1ZS04IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZS04O1xyXG59XHJcblxyXG4uZXhwYW5kZWQtcm93IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS05ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2xvcl9hdGhlbnNncmF5LXByaW1hcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG59XHJcblxyXG4uY29sb3JfYXRoZW5zZ3JheS0yIHtcclxuICBjb2xvcjogJGNvbG9yLWF0aGVuc2dyYXktMjtcclxufVxyXG5cclxuLmZvbnQtd2VpZ2h0XzUwMCB7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZvbnQtd2VpZ2h0XzYwMCB7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmZvbnQtd2VpZ2h0XzcwMCB7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLmZvbnQtTGF0by1SZWd1bGFyIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI7XHJcbn1cclxuXHJcbi5jb2xvcl9ibGFjay01IHtcclxuICBjb2xvcjogJGNvbG9yLWJsYWNrLTU7XHJcbn1cclxuXHJcbi5jb2xvcl9ncmF5LXByaW1hcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JheS1wcmltYXJ5O1xyXG59XHJcblxyXG4uY29sb3JfZ3JheS1zZWNvbmRhcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JheS1zZWNvbmRhcnk7XHJcbn1cclxuXHJcbi5tYXJnaW5fMCB7XHJcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tYXJnaW5fMTAge1xyXG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xyXG59XHJcbi5jb2xvcl92aW9sZXQtcHJpbWFyeSB7XHJcbiAgY29sb3I6ICRjb2xvci12aW9sZXQtcHJpbWFyeTtcclxufVxyXG4uY29sb3JfYnJvd24tcHJpbWFyeSB7XHJcbiAgY29sb3I6ICM5MDkwOTA7XHJcbn1cclxuXHJcbi5jb2xvcl9ibGFjay1wcmltYXJ5IHtcclxuICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbn1cclxuXHJcbi5tdDMwIHtcclxuICBtYXJnaW4tdG9wOiAzcmVtO1xyXG59XHJcbi5tdDgwIHtcclxuICBtYXJnaW4tdG9wOiA4cmVtO1xyXG59XHJcblxyXG4uYm9yZGVyLXRvcC1sZWZ0LXJhZGl1c18wIHtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hbGlnbi1pdGVtc19mbGV4LWVuZCB7XHJcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4uYWxpZ24taXRlbXNfYmFzZWxpbmUge1xyXG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxufVxyXG5cclxuLmJhY2tncm91bmRfYXRoZW5zZ3JheS1wcmltYXJ5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG59XHJcbi5iYWNrZ3JvdW5kX2xpZ2h0LWdyZWVuLXByaW1hcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5O1xyXG59XHJcblxyXG4uYmFja2dyb3VuZF9saWdodC1ncmVlbi1zZWNvbmRhcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk7XHJcbn1cclxuXHJcbi5jb2xvcl9saWdodC1ncmVlbi1zZWNvbmRhcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4uYmFja2dyb3VuZF9ncmF5LXByaW1hcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbn1cclxuXHJcbi8vIENoZWNrYm94IENTUyBTdGFydFxyXG5cclxuLnN0eWxlZC1jaGVja2JveCB7XHJcbiAgLy8gQ2hlY2tib3ggQ1NTXHJcblxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHdpZHRoOiAxNXB4O1xyXG4gIGhlaWdodDogMTZweDtcclxuICB6LWluZGV4OiAxO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICAvLyBwYWRkaW5nOiAxcHg7XHJcbiAgLy8gU3BhbiB0YWcgQ1NTLiB0aGlzIHRhZyBhcHBlYXIgbmV4dCBlbGVtZW50IHRvIGNoZWNrYm94XHJcblxyXG4gICYgKyAucmVwbGFjZW1lbnQtY2hlY2tib3gsXHJcbiAgJiArIC5yZXBsYWNlbWVudC1jaGVja2JveF9taW51cyB7XHJcbiAgICB3aWR0aDogMTVweDtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBwYWRkaW5nOiAxcHg7XHJcbiAgfVxyXG5cclxuICAmOmNoZWNrZWQgKyAuZGF0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM3MWNlY2EgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICY6Y2hlY2tlZCArIC5yYXQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4OTQwOSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJjpjaGVja2VkICsgLnNsdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDI4OWNjICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAmOmNoZWNrZWQgKyAubGx0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZWU4MTYgIWltcG9ydGFudDtcclxuICB9XHJcbiAgJjpjaGVja2VkICsgLmFtYnQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE5ZTgwMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgJjpjaGVja2VkICsgLmRhdDo6YWZ0ZXIsXHJcbiAgJjpjaGVja2VkICsgLnJhdDo6YWZ0ZXIsXHJcbiAgJjpjaGVja2VkICsgLnNsdDo6YWZ0ZXIsXHJcbiAgJjpjaGVja2VkICsgLmxsdDo6YWZ0ZXIsXHJcbiAgJjpjaGVja2VkICsgLmFtYnQ6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDJweCAwIDAgIzAwMCwgNHB4IDAgMCAjMDAwLCA0cHggLTJweCAwICMwMDAsIDRweCAtNHB4IDAgIzAwMCxcclxuICAgICAgNHB4IC02cHggMCAjMDAwLCA0cHggLThweCAwICMwMDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC8vIENoYW5naW5nIHNwYW4gdGFnIGNzcyBpZiBjaGVja2JveCBjaGVja2VkXHJcblxyXG4gICY6Y2hlY2tlZCArIC5yZXBsYWNlbWVudC1jaGVja2JveCxcclxuICAmOmNoZWNrZWQgKyAucmVwbGFjZW1lbnQtY2hlY2tib3hfbWludXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXZpb2xldC1wcmltYXJ5O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLy9jaGVja2JveCBjaGVja2VkIGZvciBtYXBcclxuICAmOmNoZWNrZWQgKyAucmVwbGFjZW1lbnQtY2hlY2tib3gtbWFwIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxuICAvLyBDcmVhdGluZyBUSUNLIG1hcmsgY3NzIGluc2lkZSBzcGFuIHRhZywgaWYgY2hlY2tib3ggY2hlY2tlZFxyXG5cclxuICAmOmNoZWNrZWQgKyAucmVwbGFjZW1lbnQtY2hlY2tib3g6OmFmdGVyIHtcclxuICAgIC8vIGNvbnRlbnQ6ICdcXGU4MDAnO1xyXG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDJweDtcclxuICAgIHRvcDogNS41cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgd2lkdGg6IDJweDtcclxuICAgIGhlaWdodDogMnB4O1xyXG4gICAgYm94LXNoYWRvdzogMnB4IDAgMCAjZmZmLCA0cHggMCAwICNmZmYsIDRweCAtMnB4IDAgI2ZmZiwgNHB4IC00cHggMCAjZmZmLFxyXG4gICAgICA0cHggLTZweCAwICNmZmYsIDRweCAtOHB4IDAgI2ZmZjtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICB9XHJcblxyXG4gIC8vIENyZWF0aW5nIE1JTlVTIG1hcmsgY3NzIGluc2lkZSBzcGFuIHRhZywgaWYgY2hlY2tib3ggY2hlY2tlZFxyXG5cclxuICAmOmNoZWNrZWQgKyAucmVwbGFjZW1lbnQtY2hlY2tib3hfbWludXM6OmFmdGVyIHtcclxuICAgIC8vIGNvbnRlbnQ6ICdcXGU4MDAnO1xyXG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMnB4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgdG9wOiA3cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgd2lkdGg6IDZweDtcclxuICAgIGhlaWdodDogMnB4O1xyXG4gICAgYm94LXNoYWRvdzogMnB4IDAgMCAjZmZmO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQ2hlY2tib3ggQ1NTIEVuZFxyXG5cclxuLmRhdF9ncmFwaF9sYWJlbCB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICM3MWNlY2E7XHJcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAjNzFDRUNBICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yYXRfZ3JhcGhfbGFiZWwge1xyXG4gIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZjg5NDA5O1xyXG4gIC8vIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogI0Y4OTQwOSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2x0X2dyYXBoX2xhYmVsIHtcclxuICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgI2QyODljYztcclxuICAvLyB0ZXh0LWRlY29yYXRpb24tY29sb3I6I0QyODlDQyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubGx0X2dyYXBoX2xhYmVsIHtcclxuICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgI2ZkZmZlYztcclxuICAvLyB0ZXh0LWRlY29yYXRpb24tY29sb3I6I0NFRTgxNiAhaW1wb3J0YW50O1xyXG59XHJcbi5hbWJ0X2dyYXBoX2xhYmVsIHtcclxuICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgIzE5ZTgwMDtcclxufVxyXG4uYmFja2dyb3VuZF93aGl0ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbn1cclxuXHJcbi5ib3JkZXJfZ3JheS1wcmltYXJ5XzEge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbn1cclxuXHJcbi5jb2xvcl9kYXJrLWdyZWVuLXByaW1hcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5O1xyXG59XHJcblxyXG4uYWxpZ24taXRlbXNfZmxleC1zdGFydCB7XHJcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi5jdXJzb3Jfbm90LWFsbG93ZWQge1xyXG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbn1cclxuXHJcbi5yb3RhdGVfMTgwIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG59XHJcblxyXG4udHJhbnNpdGlvbi1kdXJhdGlvbl8wMjUge1xyXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xyXG59XHJcblxyXG4uY3Vyc29yX2RlZmF1bHQge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLndpZHRoX21heC1jb250ZW50IHtcclxuICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcbn1cclxuLndpZHRoXzgwLXBlcmNlbnQge1xyXG4gIHdpZHRoOiA4MCU7XHJcbn1cclxuLndpZHRoXzIwLXBlcmNlbnQge1xyXG4gIHdpZHRoOiAyMCU7XHJcbn1cclxuLmN1c3RvbV9hbmNob3JfdGFnIHtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi8vIE1vZGFsIENTUyBTdGFydFxyXG5cclxuLm1vZGFsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgei1pbmRleDogOTk5OTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbWF4LWhlaWdodDogMTAwJTtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIC8vIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjYpO1xyXG59XHJcblxyXG4ubW9kYWwtY29udGVudCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogNXJlbTtcclxuICB3aWR0aDogMTE1MHB4O1xyXG5cclxuICAubW9kYWwtYm9keSB7XHJcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDkwdmggLSAxMjBweCk7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIHBhZGRpbmc6IDJyZW07XHJcbiAgfVxyXG59XHJcblxyXG4ubW9kYWwtZm9vdGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMnJlbTtcclxuICAvLyBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbn1cclxuXHJcbi5tb2RhbC10aXRsZSB7XHJcbiAgLy8gZm9udC1zaXplOiAycmVtO1xyXG4gIC8vIGNvbG9yOiAkY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTtcclxuICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLm1vZGFsLXN1Yi10aXRsZSB7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgLy8gY29sb3I6ICRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5O1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjtcclxufVxyXG5cclxuLy8gTW9kYWwgQ1NTIEVuZFxyXG5cclxuLnotaW5kZXhfMjAwMCB7XHJcbiAgei1pbmRleDogMjAwMDtcclxufVxyXG5cclxuLnotaW5kZXhfMjAyMCB7XHJcbiAgei1pbmRleDogMjAyMDtcclxufVxyXG5cclxuLm1heC13aWR0aF8yMDAge1xyXG4gIG1heC13aWR0aDogMjByZW07XHJcbn1cclxuXHJcbi5tYXgtd2lkdGhfMTAwIHtcclxuICBtYXgtd2lkdGg6IDEwcmVtO1xyXG59XHJcblxyXG4uYmFja2dyb3VuZF9yZWQtcHJpbWFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXJlZC1wcmltYXJ5O1xyXG59XHJcblxyXG4uY29sb3JfcmVkLXByaW1hcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItcmVkLXByaW1hcnk7XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kX2xpZ2h0LWdyZWVuLXByaW1hcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5O1xyXG59XHJcblxyXG4uY29sb3JfbGlnaHQtZ3JlZW4tcHJpbWFyeSB7XHJcbiAgY29sb3I6ICRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5O1xyXG59XHJcblxyXG4uYmFja2dyb3VuZF9ncmF5LTcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LTc7XHJcbn1cclxuXHJcbi5jb2xvcl9ncmF5LTcge1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JheS03O1xyXG59XHJcblxyXG4uY29sb3JfZ3JheS0xMCB7XHJcbiAgY29sb3I6ICRjb2xvci1ncmF5LTEwO1xyXG59XHJcblxyXG4ubWF4LXdpZHRoXzgwLXBlcmNlbnQge1xyXG4gIG1heC13aWR0aDogODAlO1xyXG59XHJcblxyXG4uYmFja2dyb3VuZF9kYXJrLWJsdWUtcHJpbWFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5O1xyXG59XHJcblxyXG4ud2lkdGhfNDAtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDQwJTtcclxufVxyXG5cclxuLm1heC13aWR0aF80MC1wZXJjZW50IHtcclxuICBtYXgtd2lkdGg6IDQwJTtcclxufVxyXG4ubWF4LXdpZHRoXzQ1LXBlcmNlbnQge1xyXG4gIG1heC13aWR0aDogNDUlO1xyXG59XHJcblxyXG4ubWluLXdpZHRoXzIwMCB7XHJcbiAgbWluLXdpZHRoOiAyMHJlbTtcclxufVxyXG5cclxuLm1pbi13aWR0aF81MCB7XHJcbiAgbWluLXdpZHRoOiA1cmVtO1xyXG59XHJcbi5saW5lLWhlaWdodF8xNCB7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNHJlbTtcclxufVxyXG5cclxuLmxpbmUtaGVpZ2h0XzE3IHtcclxuICBsaW5lLWhlaWdodDogMS43cmVtO1xyXG59XHJcblxyXG4ubGluZS1oZWlnaHRfMTgge1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjhyZW07XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kX3Zpb2xldC1wcmltYXJ5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdmlvbGV0LXByaW1hcnk7XHJcbn1cclxuXHJcbi53aWR0aF8xNDAge1xyXG4gIHdpZHRoOiAxNHJlbTtcclxufVxyXG5cclxuLndpZHRoXzMwMCB7XHJcbiAgd2lkdGg6IDMwcmVtO1xyXG59XHJcbi56LWluZGV4XzEge1xyXG4gIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5lcnJvci10ZXh0IHtcclxuICBjb2xvcjogJGNvbG9yLXJlZC1wcmltYXJ5O1xyXG59XHJcblxyXG4uaGludC10ZXh0IHtcclxuICBjb2xvcjogJGNvbG9yLWdyYXktdGVybmFyeTtcclxufVxyXG4vLyBUb2dnbGUgQnV0dG9uIENTUyBTdGFydFxyXG5cclxuLnRvZ2dsZS1idXR0b24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6IDIuOXJlbTtcclxuICBoZWlnaHQ6IDEuMXJlbTtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG59XHJcblxyXG4udG9nZ2xlLWJ1dHRvbiBpbnB1dCB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi50b2dnbGUtYnV0dG9uLXNsaWRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIC8vIGN1cnNvcjogcG9pbnRlcjtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktc2Vjb25kYXJ5O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC40cztcclxuICB0cmFuc2l0aW9uOiAwLjRzO1xyXG59XHJcblxyXG4udG9nZ2xlLWJ1dHRvbi1zbGlkZXI6YmVmb3JlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgY29udGVudDogXCJcIjtcclxuICAvLyBjb250ZW50OiBhdHRyKGRhdGEtYmVmb3JlLWNvbnRlbnQpO1xyXG4gIGhlaWdodDogMS41cmVtO1xyXG4gIHdpZHRoOiAxLjVyZW07XHJcbiAgbGVmdDogMDtcclxuICBib3R0b206IC0wLjJyZW07XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktNDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IDAuNHM7XHJcbiAgdHJhbnNpdGlvbjogMC40cztcclxuICAvLyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgLy8gZm9udC1zaXplOiAxcmVtO1xyXG4gIC8vIGNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAvLyBkaXNwbGF5OiBmbGV4O1xyXG4gIC8vIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50b2dnbGUtY2hlY2tib3g6Y2hlY2tlZCArIC50b2dnbGUtYnV0dG9uLXNsaWRlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDExMiwgMTM0LCA5MCk7XHJcbn1cclxuXHJcbi8vIC50b2dnbGUtY2hlY2tib3g6Zm9jdXMgKyAudG9nZ2xlLWJ1dHRvbi1zbGlkZXIge1xyXG4vLyBcdGJveC1zaGFkb3c6IDAgMCAxcHggIzIxOTZGMztcclxuLy8gfVxyXG5cclxuLnRvZ2dsZS1jaGVja2JveDpjaGVja2VkICsgLnRvZ2dsZS1idXR0b24tc2xpZGVyOmJlZm9yZSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMS41cmVtKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEuNXJlbSk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEuNXJlbSk7XHJcblxyXG4gIC8vIGNvbG9yOiAkY29sb3ItYmxhY2stcHJpbWFyeTtcclxuICAvLyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGVZKC0xLjZyZW0pO1xyXG4gIC8vIC1vLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGVZKC0xLjZyZW0pO1xyXG4gIC8vIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlWSgtMS42cmVtKTtcclxuICAvLyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlWSgtMS42cmVtKTtcclxufVxyXG5cclxuLyogUm91bmRlZCBzbGlkZXJzICovXHJcblxyXG4udG9nZ2xlLWNoZWNrYm94OmNoZWNrZWQgKyAudG9nZ2xlLWJ1dHRvbi1zbGlkZXI6YmVmb3JlIHtcclxuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4udG9nZ2xlLWJ1dHRvbi1zbGlkZXIucm91bmQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDMuNHJlbTtcclxufVxyXG5cclxuLnRvZ2dsZS1idXR0b24tc2xpZGVyLnJvdW5kOmJlZm9yZSB7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4vLyBUb2dnbGUgQnV0dG9uIENTUyBFbmRcclxuXHJcbi5hc3NpZ24tbWVsaS1idG4ge1xyXG4gIHdpZHRoOiAzLjJyZW07XHJcbiAgaGVpZ2h0OiAzLjJyZW07XHJcbn1cclxuXHJcbi5saW5lLWhlaWdodF8xNSB7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuLm92ZXJmbG93X3Njcm9sbCB7XHJcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcclxufVxyXG4ub3ZlcmZsb3dfc2Nyb2xsX3kge1xyXG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcclxufVxyXG4ub3ZlcmZsb3dfYXV0byB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuLm1sMzAge1xyXG4gIG1hcmdpbi1sZWZ0OiAzcmVtO1xyXG59XHJcbi5tcjMwIHtcclxuICBtYXJnaW4tcmlnaHQ6IDNyZW07XHJcbn1cclxuLndvcmQtYnJlYWtfYnJlYWstYWxsIHtcclxuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbn1cclxuXHJcbi53b3JkLWJyZWFrX2JyZWFrLXdvcmQge1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIsXHJcbi50cmFuc2Zlci1kZWxldGUtYWNjb3VudC1tb2RhbF93cmFwcGVyIHtcclxuICAubmF2aWdhdGlvbl93cmFwcGVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG5cclxuICAgIC50YWItaXRlbSB7XHJcbiAgICAgIHdpZHRoOiAxMHJlbTtcclxuICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICAgIHBhZGRpbmc6IDAuN3JlbSAwLjVyZW07XHJcbiAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAvLyBjb2xvcjogJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0ZWQtdGFiIHtcclxuICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTtcclxuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmlnYXRpb25fd3JhcHBlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG5cclxuICAgIC50YWItaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYi1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC50YWItaXRlbTpsYXN0LWNoaWxkIHtcclxuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5ib3gtc2hhZG93X2dyYXkge1xyXG4gIGJveC1zaGFkb3c6IDFweCAzcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxufVxyXG5cclxuLmJvcmRlci1hdGhlbnNncmF5LXByaW1hcnlfMSB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTtcclxufVxyXG5cclxuLmJvcmRlci1hdGhlbnNncmF5LXByaW1hcnlfMiB7XHJcbiAgYm9yZGVyOiAxLjVweCBzb2xpZCAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG59XHJcbi5ib3JkZXItdG9wLWF0aGVuc2dyYXktcHJpbWFyeV8xIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTtcclxufVxyXG5cclxuLmJvcmRlci1ib3R0b20tYXRoZW5zZ3JheS1wcmltYXJ5XzEge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG59XHJcblxyXG4uYm9yZGVyLWJvdHRvbS1hdGhlbnNncmF5LXByaW1hcnlfMiB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMS41cHggc29saWQgJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTtcclxufVxyXG5cclxuLmZvbnQtU291cmNlU2Fuc1Byby1Cb2xkIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ7XHJcbn1cclxuXHJcbi5mb250LVJvYm90by1SZWd1bGFyIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjtcclxufVxyXG5cclxuLmZvbnQtU291cmNlU2Fuc1Byby1SZWd1bGFyIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI7XHJcbn1cclxuXHJcbi5iYW5uZXItdGl0bGUge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVJvYm90by1SZWd1bGFyO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kX3JlZC1zZWNvbmRhcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1yZWQtc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4ud2lkdGhfMTVfcGVyY2VudCB7XHJcbiAgd2lkdGg6IDE1JTtcclxufVxyXG4ud2lkdGhfMjVfcGVyY2VudCB7XHJcbiAgd2lkdGg6IDI1JTtcclxufVxyXG4ud2lkdGhfNTAtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDUwJTtcclxufVxyXG4ud2lkdGhfNDUtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDQ1JTtcclxufVxyXG4ud2lkdGhfNTUtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDU1JTtcclxufVxyXG4ud2lkdGhfNjAtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDYwJTtcclxufVxyXG4ud2lkdGhfNzAtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDcwJTtcclxufVxyXG4ud2lkdGhfODAtcGVyY2VudCB7XHJcbiAgd2lkdGg6IDgwJTtcclxufVxyXG5cclxuLm1heC13aWR0aF82MC1wZXJjZW50IHtcclxuICBtYXgtd2lkdGg6IDYwJTtcclxufVxyXG5cclxuLm1heC13aWR0aF81MC1wZXJjZW50IHtcclxuICBtYXgtd2lkdGg6IDUwJTtcclxufVxyXG5cclxuLm1heC13aWR0aF80NS1wZXJjZW50IHtcclxuICBtYXgtd2lkdGg6IDUwJTtcclxufVxyXG5cclxuLm1heC13aWR0aF83MC1wZXJjZW50IHtcclxuICBtYXgtd2lkdGg6IDcwJTtcclxufVxyXG5cclxuLmJvdHRvbV8wIHtcclxuICBib3R0b206IDA7XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kX2RhcmstYmx1ZS1zZWNvbmRhcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4vLyBUZXh0IFRvZ2dsZSBCdXR0b24gQ1NTIFN0YXJ0XHJcblxyXG4udGV4dC10b2dnbGUtYnV0dG9uIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDExcmVtO1xyXG4gIGhlaWdodDogM3JlbTtcclxuICBib3JkZXItcmFkaXVzOiAxLjhyZW07XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcbi50ZXh0LXRvZ2dsZS1idXR0b24taW5wdXQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcbi50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWwge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JheS1wcmltYXJ5O1xyXG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbn1cclxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1sYWJlbDpiZWZvcmUsXHJcbi50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWw6YWZ0ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBtYXJnaW4tdG9wOiAtMC42cmVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogaW5oZXJpdDtcclxuICAtbW96LXRyYW5zaXRpb246IGluaGVyaXQ7XHJcbiAgLW8tdHJhbnNpdGlvbjogaW5oZXJpdDtcclxuICB0cmFuc2l0aW9uOiBpbmhlcml0O1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcbi50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWw6YmVmb3JlIHtcclxuICBjb250ZW50OiBhdHRyKGRhdGEtb2ZmKTtcclxuICByaWdodDogMS4xcmVtO1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxufVxyXG4udGV4dC10b2dnbGUtYnV0dG9uLWxhYmVsOmFmdGVyIHtcclxuICBjb250ZW50OiBhdHRyKGRhdGEtb24pO1xyXG4gIGxlZnQ6IDEuMXJlbTtcclxuICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbiAgb3BhY2l0eTogMDtcclxufVxyXG4udGV4dC10b2dnbGUtYnV0dG9uLWlucHV0OmNoZWNrZWQgfiAudGV4dC10b2dnbGUtYnV0dG9uLWxhYmVsIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5O1xyXG59XHJcbi50ZXh0LXRvZ2dsZS1idXR0b24taW5wdXQ6Y2hlY2tlZCB+IC50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWw6YmVmb3JlIHtcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcbi50ZXh0LXRvZ2dsZS1idXR0b24taW5wdXQ6Y2hlY2tlZCB+IC50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWw6YWZ0ZXIge1xyXG4gIG9wYWNpdHk6IDE7XHJcbn1cclxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1oYW5kbGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDFweDtcclxuICBsZWZ0OiAxcHg7XHJcbiAgd2lkdGg6IDIuOHJlbTtcclxuICBoZWlnaHQ6IDIuOHJlbTtcclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmZmZmIDQwJSwgI2YwZjBmMCk7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG4udGV4dC10b2dnbGUtYnV0dG9uLWhhbmRsZTpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW46IC02cHggMCAwIC02cHg7XHJcbiAgd2lkdGg6IDEuMnJlbTtcclxuICBoZWlnaHQ6IDEuMnJlbTtcclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWVlZWVlLCAjZmZmZmZmKTtcclxuICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbn1cclxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1pbnB1dDpjaGVja2VkIH4gLnRleHQtdG9nZ2xlLWJ1dHRvbi1oYW5kbGUge1xyXG4gIGxlZnQ6IDguMXJlbTtcclxufVxyXG5cclxuLyogVHJhbnNpdGlvblxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4udGV4dC10b2dnbGUtYnV0dG9uLWxhYmVsLFxyXG4udGV4dC10b2dnbGUtYnV0dG9uLWhhbmRsZSB7XHJcbiAgdHJhbnNpdGlvbjogQWxsIDAuM3MgZWFzZTtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IEFsbCAwLjNzIGVhc2U7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBBbGwgMC4zcyBlYXNlO1xyXG4gIC1vLXRyYW5zaXRpb246IEFsbCAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi8vIFRleHQgVG9nZ2xlIEJ1dHRvbiBDU1MgRW5kXHJcblxyXG4uYWxlcnQtdGFibGVfZGV0YWlscyxcclxuLmN1dG9tZXItdGFibGVfZGV0YWlscyxcclxuLnJlcG9ydHMtdGFibGVfZGV0YWlscyxcclxuLmNvbnRyb2xzLXRhYmxlX2RldGFpbHMge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBmb250LXNpemU6IDEuNnJlbTtcclxufVxyXG5cclxuLm1pbi13aWR0aF8xNDAge1xyXG4gIG1pbi13aWR0aDogMTRyZW07XHJcbn1cclxuLm1pbi13aWR0aF8xNjAge1xyXG4gIG1pbi13aWR0aDogMTZyZW07XHJcbn1cclxuXHJcbi5mb250LXNpemVfMTgge1xyXG4gIGZvbnQtc2l6ZTogMS44cmVtO1xyXG59XHJcblxyXG4uYmFja2dyb3VuZC1jb2xvcl9kYXJrLWJsdWUtc2Vjb25kYXJ5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTtcclxufVxyXG5cclxuLm1heC13aWR0aF8xNTAge1xyXG4gIG1heC13aWR0aDogMTVyZW07XHJcbn1cclxuXHJcbi5tYXgtd2lkdGhfMTQwIHtcclxuICBtYXgtd2lkdGg6IDE0cmVtO1xyXG59XHJcblxyXG4ud2hpdGUtc3BhY2VfdW5zZXQge1xyXG4gIHdoaXRlLXNwYWNlOiB1bnNldDtcclxufVxyXG5cclxuLm1heC1oZWlnaHRfNDAwIHtcclxuICBtYXgtaGVpZ2h0OiA0MHJlbTtcclxufVxyXG5cclxuLm1heC1oZWlnaHRfMjUwIHtcclxuICBtYXgtaGVpZ2h0OiAyNXJlbTtcclxufVxyXG4uY29sb3JfZGFyay1ibHVlLXNlY29uZGFyeSB7XHJcbiAgY29sb3I6ICRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4uYmFja2dyb3VuZC1jb2xvcl9ncmF5LXNlY29uZGFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktc2Vjb25kYXJ5O1xyXG59XHJcblxyXG4uYmFja2dyb3VuZC1jb2xvcl93aGl0ZS1zZWNvbmRhcnkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS1zZWNvbmRhcnk7XHJcbn1cclxuLmJhY2tncm91bmQtY29sb3Jfd2hpdGUtcHJpbWFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbn1cclxuXHJcbi5taW4td2lkdGhfMjcwIHtcclxuICBtaW4td2lkdGg6IDI3cmVtO1xyXG59XHJcbi5taW4taGVpZ2h0XzUwIHtcclxuICBtaW4taGVpZ2h0OiA1cmVtO1xyXG59XHJcbm1heC13aWR0aF8yNzAge1xyXG4gIG1heC13aWR0aDogMjdyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZvbnQtc2l6ZV8xMyB7XHJcbiAgZm9udC1zaXplOiAxLjNyZW07XHJcbn1cclxuXHJcbi5ib3JkZXItdG9wX2dyYXktc2Vjb25kYXJfMDA1IHtcclxuICBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kLWNvbG9yX2xpZ2h0LWdyYXktcHJpbWFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxufVxyXG5cclxuLnBhYy1jb250YWluZXIge1xyXG4gIHotaW5kZXg6IDk5OTk5ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wdDMwIHtcclxuICBwYWRkaW5nLXRvcDogM3JlbTtcclxufVxyXG5cclxuLnB0NDAge1xyXG4gIHBhZGRpbmctdG9wOiA0cmVtO1xyXG59XHJcblxyXG4ucHQ1MCB7XHJcbiAgcGFkZGluZy10b3A6IDVyZW07XHJcbn1cclxuXHJcbi50b3BfMCB7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4udG9wXzEwIHtcclxuICB0b3A6IDFyZW07XHJcbn1cclxuXHJcbi50b3BfMyB7XHJcbiAgdG9wOiAzcmVtO1xyXG59XHJcbi5sZWZ0XzMge1xyXG4gIGxlZnQ6IDNyZW07XHJcbn1cclxuLmxlZnRfMTUge1xyXG4gIGxlZnQ6IDE1cmVtO1xyXG59XHJcbi5ib3R0b21fMCB7XHJcbiAgYm90dG9tOiAwO1xyXG59XHJcblxyXG4ucmlnaHRfMTAge1xyXG4gIHJpZ2h0OiAxcmVtO1xyXG59XHJcblxyXG4ucmlnaHRfMDUge1xyXG4gIHJpZ2h0OiAwLjVyZW07XHJcbn1cclxuXHJcbi5tYXJnaW5fYXV0byB7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG59XHJcblxyXG4ubWFyZ2luX21pbl8wMSB7XHJcbiAgbWFyZ2luOiAtMSU7XHJcbn1cclxuLnByMzAge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XHJcbn1cclxuXHJcbi5tYXgtd2lkdGhfNzAge1xyXG4gIG1heC13aWR0aDogN3JlbTtcclxufVxyXG4ud2lkdGhfNzAge1xyXG4gIHdpZHRoOiA3cmVtO1xyXG59XHJcbi5wcmltYXJ5LWFjdGlvbl9idG4ge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcclxuICBwYWRkaW5nOiAxcmVtO1xyXG4gIC8vIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gIC8vIGNvbG9yOiAkY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTtcclxuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLnNlY29uZGFyeS1hY3Rpb25fYnRuIHtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XHJcbiAgcGFkZGluZzogMXJlbTtcclxuICAvLyBmb250LXNpemU6IDEuNHJlbTtcclxuICAvLyBjb2xvcjogJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uZ3JleS1hY3Rpb25fYnRuIHtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XHJcbiAgcGFkZGluZzogMXJlbTtcclxuICAvLyBmb250LXNpemU6IDEuNHJlbTtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktc2Vjb25kYXJ5O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuLmRhcmstZ3JlZW5fYnRuIHtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XHJcbiAgcGFkZGluZzogMXJlbTtcclxuICBmb250LXNpemU6IDEuNHJlbTtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTtcclxufVxyXG5cclxuLmludmFsaWQtYnRuIHtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XHJcbiAgcGFkZGluZzogMXJlbTtcclxuICAvLyBmb250LXNpemU6IDEuNHJlbTtcclxuICBjb2xvcjogJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktcHJpbWFyeTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uZG93bmxvYWQtdGVtcGxhdGVfYnRuIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWUtNDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XHJcbiAgYm9yZGVyLXJhZGl1czogNXJlbTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8vIEhpZGUgQXJyb3cgQnV0dG9ucyBTVEFSVFxyXG5cclxuLyogQ2hyb21lLCBTYWZhcmksIEVkZ2UsIE9wZXJhICovXHJcbmlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogRmlyZWZveCAqL1xyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxufVxyXG5cclxuLy8gSGlkZSBBcnJvdyBCdXR0b25zIEVORFxyXG5cclxuLmZvbnQtc2l6ZV8yMCB7XHJcbiAgZm9udC1zaXplOiAycmVtO1xyXG59XHJcblxyXG4uY29sb3JfbGlnaHQtZ3JheS1wcmltYXJ5IHtcclxuICBjb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxufVxyXG5cclxuLmNvbG9yX2xpZ2h0LWdyYXktMiB7XHJcbiAgY29sb3I6ICRjb2xvci1saWdodC1ncmF5LTI7XHJcbn1cclxuXHJcbi5zdHlsZWQtc2VsZWN0IHtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuICBwYWRkaW5nOiAwLjlyZW0gM3JlbSAwLjlyZW0gMC45cmVtO1xyXG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgYXBwZWFyYW5jZTogbm9uZTsgLyogUmVtb3ZlIGRlZmF1bHQgYXJyb3cgKi9cclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9hcnJvdy1kb3duLWdyYXktc2VjLnN2Z1wiKTsgLyogQWRkIGN1c3RvbSBhcnJvdyAqL1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMXJlbSBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDAuNzQxcmVtO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI7XHJcbiAgbWF4LXdpZHRoOiAyN3JlbTtcclxufVxyXG5cclxuLmJvcmRlcl9lcnJvcl8wMSB7XHJcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgJGNvbG9yLXJlZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ib3JkZXJfdHJhbnNwYXJlbnRfMDEge1xyXG4gIGJvcmRlcjogMC4xcmVtIHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4ucGwzMCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xyXG59XHJcblxyXG4ucHIzMCB7XHJcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcclxufVxyXG5cclxuLnRleHQtdHJhbnNmb3JtX25vbmUge1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4udGV4dC10cmFuc2Zvcm1fdXBwZXIge1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5hbGlnbi1zZWxmX2ZsZXgtc3RhcnQge1xyXG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi5hbGlnbi1zZWxmX2ZsZXgtZW5kIHtcclxuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcclxufVxyXG5cclxuLmNvbG9yX2xpZ2h0LWdyZWVuLXRlcm5hcnkge1xyXG4gIGNvbG9yOiAkY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTtcclxufVxyXG5cclxuLmJhY2tncm91bmQtY29sb3JfbGlnaHQtZ3JlZW4tdGVybmFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk7XHJcbn1cclxuXHJcbi5vcHRpb25hbF9sYWJlbCB7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyO1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JheS1zZWNvbmRhcnk7XHJcbn1cclxuXHJcbi5sYWJlbCB7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkO1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JheS1zZWNvbmRhcnk7XHJcbn1cclxuXHJcbi5jb2xvcl9vcmFuZ2Utb3JhbmdlLXByaW1hcnkge1xyXG4gIGNvbG9yOiAkY29sb3Itb3JhbmdlLXByaW1hcnk7XHJcbn1cclxuXHJcbi8vIEZpbGUgaW5wdXQgQ1NTIFN0YXJ0XHJcbi5maWxlLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZmlsZS1jb250YWluZXIgW3R5cGU9XCJmaWxlXCJdIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgLy8gZm9udC1zaXplOiA5OTlweDtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSAwKTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgLy8gdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiZmlsZVwiXTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLy8gRmlsZSBpbnB1dCBDU1MgRW5kXHJcblxyXG4ubWluLXdpZHRoXzI1LXBlcmNlbnQge1xyXG4gIG1pbi13aWR0aDogMjUlO1xyXG59XHJcblxyXG4ubWluLXdpZHRoXzUwLXBlcmNlbnQge1xyXG4gIG1pbi13aWR0aDogNTAlO1xyXG59XHJcbi5tYXgtd2lkdGhfNDAtcGVyY2VudCB7XHJcbiAgbWF4LXdpZHRoOiA0MCU7XHJcbn1cclxuXHJcbi5taW4td2lkdGhfMTUtcGVyY2VudCB7XHJcbiAgbWluLXdpZHRoOiAxNSU7XHJcbn1cclxuXHJcbi5taW4td2lkdGhfMzUtcGVyY2VudCB7XHJcbiAgbWluLXdpZHRoOiAzNSU7XHJcbn1cclxuXHJcbi5yZXNpemVfbm9uZSB7XHJcbiAgcmVzaXplOiBub25lO1xyXG59XHJcblxyXG4ubWF4LXdpZHRoXzc1LXBlcmNlbnQge1xyXG4gIG1heC13aWR0aDogNzUlO1xyXG59XHJcblxyXG4uYm9yZGVyX2xpZ2h0LWdyYXktcHJpbWFyeV8xIHtcclxuICBib3JkZXI6IDAuMXJlbSBzb2xpZCAkY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5O1xyXG59XHJcblxyXG4ubXQxNSB7XHJcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xyXG59XHJcbi5tdDIwIHtcclxuICBtYXJnaW4tdG9wOiAycmVtO1xyXG59XHJcblxyXG4ubXQ2IHtcclxuICBtYXJnaW4tdG9wOiAwLjZyZW07XHJcbn1cclxuXHJcbi5tdDAge1xyXG4gIG1hcmdpbi10b3A6IDByZW07XHJcbn1cclxuXHJcbi5oaWdobGlnaHQtc29ydC1pY29uOjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2stc2Vjb25kYXJ5O1xyXG4gIHdpZHRoOiAycmVtO1xyXG4gIGhlaWdodDogMnJlbTtcclxuICAvL3BhZGRpbmc6MXJlbTtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcbi5tYXgtd2lkdGhfMTAwLXBlcmNlbnQge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmJhY2tncm91bmQtc29ydC1pY29uX2JsYWNrOjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9hcnJvdy1kb3duX2JsYWNrLnN2Z1wiKTtcclxuICBtYXJnaW4tbGVmdDogMXJlbTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMC43NDFyZW07XHJcbiAgd2lkdGg6IDEuOHJlbTtcclxuICBoZWlnaHQ6IDAuOHJlbTtcclxuICB0cmFuc2l0aW9uOiAwLjI1cztcclxufVxyXG5cclxuLmJhY2tncm91bmQtc29ydC1pY29uX3doaXRlOjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9hcnJvdy1kb3duX3doaXRlLnN2Z1wiKTtcclxuICBtYXJnaW4tbGVmdDogMXJlbTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDAuNzQxcmVtO1xyXG4gIHRyYW5zaXRpb246IDAuMjVzO1xyXG59XHJcblxyXG4uYmFja2dyb3VuZC1zb3J0LWljb25fYmxhY2tfc2luZ2xlOjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9hcnJvdy1kb3duX2JsYWNrLnN2Z1wiKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMC43NDFyZW07XHJcbiAgd2lkdGg6IDEuOHJlbTtcclxuICBoZWlnaHQ6IDAuOHJlbTtcclxuICB0cmFuc2l0aW9uOiAwLjI1cztcclxufVxyXG5cclxuLmJhY2tncm91bmQtc29ydC1pY29uX3doaXRlX3NpbmdsZTo6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgXCIvYXJyb3ctZG93bl93aGl0ZS5zdmdcIik7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAwLjc0MXJlbTtcclxuICB0cmFuc2l0aW9uOiAwLjI1cztcclxufVxyXG5cclxuLnJvdGF0ZV9iYWNrZ3JvdW5kLXNvcnQtaWNvbjo6YWZ0ZXIge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbn1cclxuXHJcbi5hbGlnbi1zZWxmX2NlbnRlciB7XHJcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG59XHJcblxyXG4ubWluLXdpZHRoXzgwIHtcclxuICBtaW4td2lkdGg6IDhyZW07XHJcbn1cclxuXHJcbi5taW4td2lkdGhfMTAwIHtcclxuICBtaW4td2lkdGg6IDEwcmVtO1xyXG59XHJcbi5taW4td2lkdGhfMTA1IHtcclxuICBtaW4td2lkdGg6IDEwLjVyZW07XHJcbn1cclxuLm1pbi13aWR0aF84MDIge1xyXG4gIG1pbi13aWR0aDogODJyZW07XHJcbn1cclxuXHJcbi5wdDA3NSB7XHJcbiAgcGFkZGluZy10b3A6IDAuNzVyZW07XHJcbn1cclxuXHJcbi5wYjA3NSB7XHJcbiAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XHJcbn1cclxuXHJcbi52aXNpYmxpdHlfaGlkZGVuIHtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQge1xyXG4gIC8vIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICB3aWR0aDogMjVyZW0gIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5O1xyXG5cclxuICAubGlzdC11bnN0eWxlZCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLndpZGVyIHtcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICB0YWJsZSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGJvcmRlci1yYWRpdXM6IDByZW0gIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIHRhYmxlIHRoZWFkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAvLyB0YWJsZSB0ZCwgdGFibGUgdGgge1xyXG4gIC8vICAgYm9yZGVyLXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xyXG4gIC8vIH1cclxuXHJcbiAgdGFibGUgdGgge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgdGFibGUgdGJvZHkgdHIge1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAvLyB0YWJsZSB0Ym9keSB7XHJcbiAgLy8gICBib3JkZXItbGVmdDogMXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAvLyAgIGJvcmRlci1yaWdodDogMXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAvLyB9XHJcblxyXG4gIHRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnkgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIHRhYmxlIHRoIHtcclxuICAgIG1heC13aWR0aDogMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiAycmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI7XHJcbiAgICB3aWR0aDogMnJlbTtcclxuICB9XHJcblxyXG4gIHRhYmxlIHRoLFxyXG4gIHRkIHtcclxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5ICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDMuMnJlbTtcclxuICAgIHBhZGRpbmc6IDByZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgLy8gYm9yZGVyOiAwLjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAvLyBtYXgtd2lkdGg6IDNyZW0gIWltcG9ydGFudDtcclxuICAgIC8vIHdpZHRoOiAzcmVtICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcclxuICAgIC8vIGhlaWdodDogM3JlbSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgdGFibGUgdGQuYWN0aXZlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5ICFpbXBvcnRhbnQ7XHJcbiAgICAvLyB3aWR0aDogMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgLy8gaGVpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICB0YWJsZSB0ZC5kYXk6OmJlZm9yZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDIuOHJlbTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwLjRyZW07XHJcbiAgICB0b3A6IDAuMnJlbTtcclxuICAgIHdpZHRoOiAyLjhyZW07XHJcbiAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICAvLyBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcclxuICAgIC8vIG1heC13aWR0aDogMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgLy8gaGVpZ2h0OiAycmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI7XHJcbiAgICAvLyB3aWR0aDogMnJlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gIC5hY3RpdmU6OmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiN2E1ICFpbXBvcnRhbnQ7XHJcbiAgICAvLyB3aWR0aDogMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgLy8gaGVpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAvLyB0YWJsZSB0ZC5hY3RpdmU6OmJlZm9yZSB7XHJcbiAgLy8gICBjb250ZW50OiAnJztcclxuICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAvLyAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xyXG4gIC8vICAgdG9wOiAwO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gLnRhYmxlIHRkLmRheSB7XHJcbiAgLy8gICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcclxuICAvLyAgIG1heC13aWR0aDogMnJlbSAhaW1wb3J0YW50O1xyXG4gIC8vIH1cclxuXHJcbiAgLm1vbnRoLFxyXG4gIC55ZWFyLFxyXG4gIC5kZWNhZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgdGFibGUgdGQgc3Bhbi5tb250aDo6YmVmb3JlLFxyXG4gIHRhYmxlIHRkIHNwYW4ueWVhcjo6YmVmb3JlLFxyXG4gIHRhYmxlIHRkIHNwYW4uZGVjYWRlOjpiZWZvcmUge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiA1cmVtO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDAuMnJlbTtcclxuICAgIHRvcDogMC4ycmVtO1xyXG4gICAgd2lkdGg6IDVyZW07XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgdGFibGUgdGQgc3Bhbi5kZWNhZGU6OmJlZm9yZSB7XHJcbiAgICB0b3A6IDByZW0gIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIHRhYmxlIHRoZWFkIHRoOmZpcnN0LWNoaWxkIHtcclxuICAgIHBhZGRpbmctbGVmdDogMHJlbSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgdGFibGUgdGguZGlzYWJsZWQsXHJcbiAgdGFibGUgdGguZGlzYWJsZWQ6aG92ZXIge1xyXG4gICAgLy8gYmFja2dyb3VuZDogbm9uZTtcclxuICAgIC8vIGNvbG9yOiAjNzc3Nzc3O1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICB9XHJcblxyXG4gIC8vIHRhYmxlIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcclxuICAvLyAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XHJcbiAgLy8gfVxyXG5cclxuICAudG9kYXkge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnRvZGF5OjpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICAgIC8vIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnByZXYge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgXCIvYXJyb3ctZG93bl9ibGFjay5zdmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gIH1cclxuXHJcbiAgLnByZXY6aG92ZXIsXHJcbiAgLnBpY2tlci1zd2l0Y2g6aG92ZXIsXHJcbiAgLm5leHQ6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICB9XHJcblxyXG4gIC5uZXh0IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArIFwiL2Fycm93LWRvd25fYmxhY2suc3ZnXCIpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XHJcbiAgfVxyXG5cclxuICAuaWNvbi1rZXlib2FyZF9hcnJvd19yaWdodCB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAvLyB9XHJcblxyXG4gIC5kaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAudGltZXBpY2tlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICB9XHJcblxyXG4gIC5jb2xsYXBzZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNvbGxhcHNlLmluIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLmZhZGUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XHJcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xyXG4gIH1cclxuICAuZmFkZS5pbiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdHIuY29sbGFwc2UuaW4ge1xyXG4gICAgZGlzcGxheTogdGFibGUtcm93O1xyXG4gIH1cclxuICB0Ym9keS5jb2xsYXBzZS5pbiB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XHJcbiAgfVxyXG5cclxuICAuY29sbGFwc2luZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuICAgIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMzVzO1xyXG4gICAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1cztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCB2aXNpYmlsaXR5O1xyXG4gICAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCB2aXNpYmlsaXR5O1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCB2aXNpYmlsaXR5O1xyXG4gIH1cclxuXHJcbiAgLmdseXBoaWNvbi10aW1lIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArIFwiL3RpbWUuc3ZnXCIpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIC8vIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEuOHJlbTtcclxuICB9XHJcblxyXG4gIC5nbHlwaGljb24tdGltZTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi90aW1lLnN2Z1wiKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAvLyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMS44cmVtO1xyXG4gIH1cclxuXHJcbiAgLmdseXBoaWNvbi1jYWxlbmRhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9jYWxlbmRhci5zdmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgLy8gdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMS44cmVtO1xyXG4gIH1cclxuXHJcbiAgLmdseXBoaWNvbi1jYWxlbmRhcjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9jYWxlbmRhci5zdmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgLy8gdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1saWdodC1ncmF5LXByaW1hcnk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEuOHJlbTtcclxuICB9XHJcblxyXG4gIC5nbHlwaGljb24tY2hldnJvbi11cCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9hcnJvdy1kb3duX2JsYWNrLnN2Z1wiKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gIH1cclxuXHJcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWRvd24ge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgXCIvYXJyb3ctZG93bl9ibGFjay5zdmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLmRheTpob3Zlcjo6YmVmb3JlLFxyXG4gIC5tb250aDpob3Zlcjo6YmVmb3JlLFxyXG4gIC55ZWFyOmhvdmVyOjpiZWZvcmUsXHJcbiAgLmRlY2FkZTpob3Zlcjo6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1saWdodC1ncmF5LXByaW1hcnk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgfVxyXG5cclxuICAuZGF0ZXBpY2tlciB7XHJcbiAgICAuZGF0ZXBpY2tlci1kYXlzIHtcclxuICAgICAgLmRvdyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZThmMztcclxuICAgICAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0YWJsZSB0ZC5kYXkge1xyXG4gICAgICAgIC8vIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIC8vIG1heC13aWR0aDogMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIC8vIGhlaWdodDogMnJlbTtcclxuICAgICAgICAvLyBsaW5lLWhlaWdodDogMjtcclxuICAgICAgICAvLyB3aWR0aDogMnJlbTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIHRhYmxlIHRkLmRheTpob3ZlciB7XHJcbiAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICAgICAgLy8gICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIC8vIH1cclxuXHJcbiAgICAgIHRhYmxlIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDByZW0gIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRpbWVwaWNrZXIge1xyXG4gICAgdGFibGUgdGQgc3BhbiB7XHJcbiAgICAgIHdpZHRoOiAycmVtO1xyXG4gICAgICBoZWlnaHQ6IDJyZW07XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jaXJjbGVfdGlja21hcmsge1xyXG4gICAgZmlsbDogJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5O1xyXG4gIH1cclxuXHJcbiAgLmNoZWNrYm94X2FsbCB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICB9XHJcbiAgLmNoZWNrYm94X2NyaXRpY2FsIHtcclxuICAgIGNvbG9yOiAkY29sb3ItcmVkLXByaW1hcnk7XHJcbiAgfVxyXG4gIC5jaGVja2JveF9mYXVsdHMge1xyXG4gICAgY29sb3I6ICRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5O1xyXG4gIH1cclxuXHJcbiAgLy8gLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQgc3Bhbjpob3ZlciB7XHJcbiAgLy8gICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xyXG4gIC8vICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgJy9hcnJvdy1kb3duX2JsYWNrLnN2ZycpO1xyXG4gIC8vICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAvLyAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAvLyB9XHJcblxyXG4gIC8vIC5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoOmhvdmVyIHtcclxuICAvLyAgIGJhY2tncm91bmQ6ICNlZWVlZWU7XHJcbiAgLy8gICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyAnL2Fycm93LWRvd25fYmxhY2suc3ZnJyk7XHJcbiAgLy8gICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIC8vICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuZGF5OmhvdmVyLFxyXG4gIC8vIC5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmhvdXI6aG92ZXIsXHJcbiAgLy8gLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQubWludXRlOmhvdmVyLFxyXG4gIC8vIC5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLnNlY29uZDpob3ZlciB7XHJcbiAgLy8gICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xyXG4gIC8vICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIC8vICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgJy9hcnJvdy1kb3duX2JsYWNrLnN2ZycpO1xyXG4gIC8vICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAvLyAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAvLyB9XHJcblxyXG4gIC8vIC5pY29uLWtleWJvYXJkX2Fycm93X3JpZ2h0IHtcclxuICAvLyAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArICcvYXJyb3ctZG93bl9ibGFjay5zdmcnKTtcclxuICAvLyAgICAgLyogbWFyZ2luLWxlZnQ6IDFyZW07ICovXHJcbiAgLy8gICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgLy8gICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAvLyAgICAgLyogYmFja2dyb3VuZC1zaXplOiAxcmVtIDAuNzQxcmVtOyAqL1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGgubmV4dDo6YWZ0ZXIge1xyXG4gIC8vICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgJy9hcnJvdy1kb3duX2JsYWNrLnN2ZycpO1xyXG4gIC8vICAgICAvKiBtYXJnaW4tbGVmdDogMXJlbTsgKi9cclxuICAvLyAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAvLyAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIC8vICAgICAvKiBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMC43NDFyZW07ICovXHJcbiAgLy8gfVxyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLnVfcG9zaXRpb25fZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi51X3Bvc2l0aW9uX2Fic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4udV9wb3NpdGlvbl9yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnVfY2xlYXJfYm90aCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udV9mbG9hdF9sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51X2Zsb2F0X3JpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udV90ZXh0X2NlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVfdGV4dF9yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udV90ZXh0X2xlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udV90ZXh0X3RyYW5zZm9ybV91cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4udV90ZXh0X3RyYW5zZm9ybV9jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi51X3RleHRfaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4udV9mb250X3dlaWdodF9ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi51X21hcmdpbl9hdXRvIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi51X21hcmdpbl9ib3R0b21fMCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51X29wYWNpdHlfMCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi51X2Rpc3BsYXlfYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVfZGlzcGxheV9pbmxpbmVfYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi51X2FsaWduX3ZlcnRpY2FsX3RvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi51X2FsaWduX3ZlcnRpY2FsX21pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi51X2JhY2tncm91bmRfbm9uZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi51X2JvcmRlcl9ub25lIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udV9kaXNwbGF5X25vbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udV9saXN0X3N0eWxlX25vbmUge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi50ZXh0LW92ZXJmbG93X2VsbGlwc2lzIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIHdpZHRoICovXG46Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbn1cblxuLyogVHJhY2sgKi9cbjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xufVxuXG4vKiBIYW5kbGUgKi9cbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICBiYWNrZ3JvdW5kOiAjODg4O1xufVxuXG4vKiBIYW5kbGUgb24gaG92ZXIgKi9cbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNTU1O1xufVxuXG4uZGlzcGxheV9mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmZsZXgtZGlyZWN0aW9uX3JvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5hbGlnbi1pdGVtc19jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uanVzdGlmeS1jb250ZW50X2NlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uanVzdGlmeS1jb250ZW50X2ZsZXgtZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmp1c3RpZnktY29udGVudF9zcGFjZS1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uanVzdGlmeS1jb250ZW50X3NwYWNlLWFyb3VuZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4udV9sZWZ0XzIwIHtcbiAgbGVmdDogMnJlbTtcbn1cblxuLnVfbGVmdF8xMCB7XG4gIGxlZnQ6IDFyZW07XG59XG5cbi5mbGV4XzEge1xuICBmbGV4OiAxO1xufVxuXG4ucGwyMCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxuLnByMjAge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuXG4ucGw0MCB7XG4gIHBhZGRpbmctbGVmdDogNHJlbTtcbn1cblxuLnByNDAge1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xufVxuXG4ucHI1MCB7XG4gIHBhZGRpbmctcmlnaHQ6IDVyZW0gIWltcG9ydGFudDtcbn1cblxuLnAxMCB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5wMzAge1xuICBwYWRkaW5nOiAzcmVtO1xufVxuXG4ucDE1IHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4ub3V0bGluZV9ub25lIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXJhZGl1c181MC1wZXJjZW50IHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uYm9yZGVyLXJhZGl1c18xMDAtcGVyY2VudCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi5tYXJnaW4tbGVmdF9hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5tYXJnaW4tbGVmdF81IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuLm1sNDcge1xuICBtYXJnaW4tbGVmdDogNDclO1xufVxuXG4ubWw4MCB7XG4gIG1hcmdpbi1sZWZ0OiA4cmVtO1xufVxuXG4ubXIyMCB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cblxuLm1yNDEge1xuICBtYXJnaW4tcmlnaHQ6IDQuMXJlbTtcbn1cblxuLm1yODAge1xuICBtYXJnaW4tcmlnaHQ6IDhyZW07XG59XG5cbi5tbDIwIHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG59XG5cbi5tcjEwIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4ubWwxMCB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuXG4uY3Vyc29yX3BvaW50ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wdDIwIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5cbi5wYjIwIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG5cbi5wYjQwIHtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5wdDEwIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi5wYjEwIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi5wbDEwIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuXG4ucHQ1IHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbn1cblxuLnBiNSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbi5wbDUge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLnByNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cblxuLnA1IHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuXG4ucDIwIHtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLmNvbG9yX3doaXRlLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmNvbG9yX2JsYWNrLTcge1xuICBjb2xvcjogIzEzMTMxMztcbn1cblxuLnAyMCB7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi5oZWlnaHRfMTAwLXBlcmNlbnQge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi53aWR0aF8xMDAtcGVyY2VudCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkdGhfMzAtcGVyY2VudCB7XG4gIHdpZHRoOiAzMCU7XG59XG5cbi5wbDE1IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG59XG5cbi5wcjE1IHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xufVxuXG4ubWwxNSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG59XG5cbi5tbDE4IHtcbiAgbWFyZ2luLWxlZnQ6IDEuOHJlbTtcbn1cblxuLm1yMTUge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbn1cblxuLm1sNSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5cbi5tbDUwIHtcbiAgbWFyZ2luLWxlZnQ6IDVyZW07XG59XG5cbi5tdDIwIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLm10NDAge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xufVxuXG4ubXQxMDAge1xuICBtYXJnaW4tdG9wOiAxMHJlbTtcbn1cblxuLm10NTAge1xuICBtYXJnaW4tdG9wOiA1cmVtO1xufVxuXG4ucHQxNSB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG59XG5cbi5wYjE1IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbn1cblxuLmxpbmUtaGVpZ2h0XzIge1xuICBsaW5lLWhlaWdodDogMjtcbn1cblxuLnByMTAge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4ud2hpdGUtc3BhY2Vfbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm92ZXJmbG93X2hpZGRlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tYjUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5tYjEwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmJvcmRlci1yYWRpdXNfMyB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLm1iMTUge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5tdDUge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5tYjIwIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLm1iMzAge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4ubWI1MCB7XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG5cbi5tdDEwIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLm10MDIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG59XG5cbi5tYXgtd2lkdGhfMCB7XG4gIG1heC13aWR0aDogMDtcbn1cblxuLmJvcmRlci1yYWRpdXNfNSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbn1cblxuLm1pbi1oZWlnaHRfMTAwLXBlcmNlbnQge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4ud2lkdGhfNzUtcGVyY2VudCB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi53aWR0aF85MC1wZXJjZW50IHtcbiAgd2lkdGg6IDkwJTtcbn1cblxuLmZsZXgtZGlyZWN0aW9uX2NvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi50ZXh0LWRlY29yYXRpb25fdW5kZXJsaW5lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi51bmRlcmxpbmVfY2FkZXRibHVlLXNlY29uZGFyeSB7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogIzcxY2VjYTtcbn1cblxuLnVuZGVybGluZV9ibHVlLXRlcm5hcnkge1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMwMGI3YTU7XG59XG5cbi51bmRlcmxpbmVfYmxhY2sge1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICMxMjE2MWU7XG59XG5cbi5wbDMyIHtcbiAgcGFkZGluZy1sZWZ0OiAzLjJyZW07XG59XG5cbi5wcjMyIHtcbiAgcGFkZGluZy1yaWdodDogMy4ycmVtO1xufVxuXG4ucHIzMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG59XG5cbi5ib3JkZXItcmFkaXVzXzUwIHtcbiAgYm9yZGVyLXJhZGl1czogNXJlbTtcbn1cblxuLmZvbnQtc2l6ZV8wOSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuXG4uZm9udC1zaXplXzEwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uZm9udC1zaXplXzExIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG5cbi5mb250LXNpemVfMTIge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cblxuLmZvbnQtc2l6ZV8xNCB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uZm9udC1zaXplXzEzIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG59XG5cbi5mb250LXNpemVfMTYge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuLmZvbnQtc2l6ZV8yNCB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xufVxuXG4uZm9udC1zaXplXzIwIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG4ubXI1IHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5vcGFjaXR5XzA1IHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uY29sb3JfY2FkZXRibHVlLXByaW1hcnkge1xuICBjb2xvcjogIzcxY2VjYTtcbn1cblxuLmNvbG9yX2F0aGVuc2dyYXktMiB7XG4gIGNvbG9yOiAjZDZkNmQ2O1xufVxuXG4uY29sb3JfYmx1ZS0yIHtcbiAgY29sb3I6ICM0ZDY2OTg7XG59XG5cbi5jb2xvcl9ibHVlLTMge1xuICBjb2xvcjogIzAzMzU5ODtcbn1cblxuLmNvbG9yX3JlZC1zZWNvbmRhcnkge1xuICBjb2xvcjogI2ZmNzI3Mjtcbn1cblxuLmNvbG9yX2JsYWNrLTQge1xuICBjb2xvcjogIzA3MDcwNztcbn1cblxuaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhNWE1YTU7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuXG4uY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNzFjZWNhO1xufVxuXG4uY29sb3ItYmx1ZS10ZXJuYXJ5IHtcbiAgY29sb3I6ICMwMGI3YTU7XG59XG5cbi5iYWNrZ3JvdW5kX2NvbG9yLWJsdWUtdGVybmFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI3YTU7XG59XG5cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxudGFibGUgdGhlYWQge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgcGFkZGluZzogMHJlbSAxcmVtO1xufVxuXG50YWJsZSB0aGVhZCB0aCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxudGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbnRhYmxlIHRib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG8tUmVndWxhclwiO1xufVxuXG50YWJsZSB0Ym9keSA+IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQ6ICNmYWZhZmI7XG59XG5cbnRhYmxlIHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG50YWJsZSB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG50YWJsZSB0Ym9keSB0ZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxudGFibGUgdGJvZHkgdHIge1xuICBoZWlnaHQ6IDQuNXJlbTtcbn1cblxudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYjtcbn1cblxudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4udGFibGUtZml4ZWQtaGVhZGVyIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnRhYmxlLWZpeGVkLWhlYWRlciB0aGVhZCB0aCB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTtcbn1cblxuLnRhYmxlLWZpeGVkLWhlYWRlciB0aGVhZCB0aCBzcGFuIHtcbiAgaGVpZ2h0OiAycmVtO1xufVxuXG4uc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMHB4IDRweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnRhYmxlX2NvdW50IHtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI3YTU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5saXN0LW1hcF9uYXYtYmFyLmFjdGl2ZSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMXJlbSA1cmVtO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tcmlnaHQ6IDAuMnJlbTtcbn1cblxuLmxpc3QtbWFwX25hdi1iYXIuaW5hY3RpdmUge1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW0gNXJlbTtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG59XG5cbi5jaXJjbGUge1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5iYWNrZ3JvdW5kX29yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMwNmE7XG59XG5cbi5iYWNrZ3JvdW5kX29yYW5nZS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY5YzE0O1xufVxuXG4uYmFja2dyb3VuZF9jYWRldGJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzFjZWNhO1xufVxuXG4uYmFja2dyb3VuZC1jb2xvcl9ncmF5LTkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNlM2UzO1xufVxuXG4uYmFja2dyb3VuZC1jb2xvcl9ibHVlLTgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0MTZiO1xufVxuXG4uZXhwYW5kZWQtcm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UzZTNlMyAhaW1wb3J0YW50O1xufVxuXG4uY29sb3JfYXRoZW5zZ3JheS1wcmltYXJ5IHtcbiAgY29sb3I6ICNlOWU5ZjA7XG59XG5cbi5jb2xvcl9hdGhlbnNncmF5LTIge1xuICBjb2xvcjogI2Q2ZDZkNjtcbn1cblxuLmZvbnQtd2VpZ2h0XzUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5mb250LXdlaWdodF82MDAge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZm9udC13ZWlnaHRfNzAwIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmZvbnQtTGF0by1SZWd1bGFyIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0by1SZWd1bGFyXCI7XG59XG5cbi5jb2xvcl9ibGFjay01IHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLmNvbG9yX2dyYXktcHJpbWFyeSB7XG4gIGNvbG9yOiAjODk4OTg5O1xufVxuXG4uY29sb3JfZ3JheS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzRkNGY1Yztcbn1cblxuLm1hcmdpbl8wIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW5fMTAge1xuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLmNvbG9yX3Zpb2xldC1wcmltYXJ5IHtcbiAgY29sb3I6ICM0MzQyNWQ7XG59XG5cbi5jb2xvcl9icm93bi1wcmltYXJ5IHtcbiAgY29sb3I6ICM5MDkwOTA7XG59XG5cbi5jb2xvcl9ibGFjay1wcmltYXJ5IHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5tdDMwIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cblxuLm10ODAge1xuICBtYXJnaW4tdG9wOiA4cmVtO1xufVxuXG4uYm9yZGVyLXRvcC1sZWZ0LXJhZGl1c18wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXNfZmxleC1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1pdGVtc19iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cblxuLmJhY2tncm91bmRfYXRoZW5zZ3JheS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTlmMDtcbn1cblxuLmJhY2tncm91bmRfbGlnaHQtZ3JlZW4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5YmVhNGY7XG59XG5cbi5iYWNrZ3JvdW5kX2xpZ2h0LWdyZWVuLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZmQyOGQ7XG59XG5cbi5jb2xvcl9saWdodC1ncmVlbi1zZWNvbmRhcnkge1xuICBjb2xvcjogI2FmZDI4ZDtcbn1cblxuLmJhY2tncm91bmRfZ3JheS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg5ODk4OTtcbn1cblxuLnN0eWxlZC1jaGVja2JveCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTZweDtcbiAgei1pbmRleDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN0eWxlZC1jaGVja2JveCArIC5yZXBsYWNlbWVudC1jaGVja2JveCwgLnN0eWxlZC1jaGVja2JveCArIC5yZXBsYWNlbWVudC1jaGVja2JveF9taW51cyB7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5kYXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzFjZWNhICFpbXBvcnRhbnQ7XG59XG4uc3R5bGVkLWNoZWNrYm94OmNoZWNrZWQgKyAucmF0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4OTQwOSAhaW1wb3J0YW50O1xufVxuLnN0eWxlZC1jaGVja2JveDpjaGVja2VkICsgLnNsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMjg5Y2MgIWltcG9ydGFudDtcbn1cbi5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5sbHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VlODE2ICFpbXBvcnRhbnQ7XG59XG4uc3R5bGVkLWNoZWNrYm94OmNoZWNrZWQgKyAuYW1idCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOWU4MDAgIWltcG9ydGFudDtcbn1cbi5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5kYXQ6OmFmdGVyLCAuc3R5bGVkLWNoZWNrYm94OmNoZWNrZWQgKyAucmF0OjphZnRlciwgLnN0eWxlZC1jaGVja2JveDpjaGVja2VkICsgLnNsdDo6YWZ0ZXIsIC5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5sbHQ6OmFmdGVyLCAuc3R5bGVkLWNoZWNrYm94OmNoZWNrZWQgKyAuYW1idDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDJweCAwIDAgIzAwMCwgNHB4IDAgMCAjMDAwLCA0cHggLTJweCAwICMwMDAsIDRweCAtNHB4IDAgIzAwMCwgNHB4IC02cHggMCAjMDAwLCA0cHggLThweCAwICMwMDAgIWltcG9ydGFudDtcbn1cbi5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5yZXBsYWNlbWVudC1jaGVja2JveCwgLnN0eWxlZC1jaGVja2JveDpjaGVja2VkICsgLnJlcGxhY2VtZW50LWNoZWNrYm94X21pbnVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQzNDI1ZDtcbiAgYm9yZGVyOiBub25lO1xufVxuLnN0eWxlZC1jaGVja2JveDpjaGVja2VkICsgLnJlcGxhY2VtZW50LWNoZWNrYm94LW1hcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5yZXBsYWNlbWVudC1jaGVja2JveDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDJweDtcbiAgdG9wOiA1LjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJveC1zaGFkb3c6IDJweCAwIDAgI2ZmZiwgNHB4IDAgMCAjZmZmLCA0cHggLTJweCAwICNmZmYsIDRweCAtNHB4IDAgI2ZmZiwgNHB4IC02cHggMCAjZmZmLCA0cHggLThweCAwICNmZmY7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5zdHlsZWQtY2hlY2tib3g6Y2hlY2tlZCArIC5yZXBsYWNlbWVudC1jaGVja2JveF9taW51czo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAycHg7XG4gIG1hcmdpbjogYXV0bztcbiAgdG9wOiA3cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMnB4O1xuICBib3gtc2hhZG93OiAycHggMCAwICNmZmY7XG59XG5cbi5kYXRfZ3JhcGhfbGFiZWwge1xuICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgIzcxY2VjYTtcbn1cblxuLnJhdF9ncmFwaF9sYWJlbCB7XG4gIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZjg5NDA5O1xufVxuXG4uc2x0X2dyYXBoX2xhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNkMjg5Y2M7XG59XG5cbi5sbHRfZ3JhcGhfbGFiZWwge1xuICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgI2ZkZmZlYztcbn1cblxuLmFtYnRfZ3JhcGhfbGFiZWwge1xuICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgIzE5ZTgwMDtcbn1cblxuLmJhY2tncm91bmRfd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uYm9yZGVyX2dyYXktcHJpbWFyeV8xIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg5ODk4OTtcbn1cblxuLmNvbG9yX2RhcmstZ3JlZW4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjMTM2MzYzO1xufVxuXG4uYWxpZ24taXRlbXNfZmxleC1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uY3Vyc29yX25vdC1hbGxvd2VkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnJvdGF0ZV8xODAge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4udHJhbnNpdGlvbi1kdXJhdGlvbl8wMjUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcbn1cblxuLmN1cnNvcl9kZWZhdWx0IHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ud2lkdGhfbWF4LWNvbnRlbnQge1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG59XG5cbi53aWR0aF84MC1wZXJjZW50IHtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLndpZHRoXzIwLXBlcmNlbnQge1xuICB3aWR0aDogMjAlO1xufVxuXG4uY3VzdG9tX2FuY2hvcl90YWcge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubW9kYWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDVyZW07XG4gIHdpZHRoOiAxMTUwcHg7XG59XG4ubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gIG1heC1oZWlnaHQ6IGNhbGMoOTB2aCAtIDEyMHB4KTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLm1vZGFsLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiTGF0by1SZWd1bGFyXCI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5tb2RhbC1zdWItdGl0bGUge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XG59XG5cbi56LWluZGV4XzIwMDAge1xuICB6LWluZGV4OiAyMDAwO1xufVxuXG4uei1pbmRleF8yMDIwIHtcbiAgei1pbmRleDogMjAyMDtcbn1cblxuLm1heC13aWR0aF8yMDAge1xuICBtYXgtd2lkdGg6IDIwcmVtO1xufVxuXG4ubWF4LXdpZHRoXzEwMCB7XG4gIG1heC13aWR0aDogMTByZW07XG59XG5cbi5iYWNrZ3JvdW5kX3JlZC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkNGI0Yjtcbn1cblxuLmNvbG9yX3JlZC1wcmltYXJ5IHtcbiAgY29sb3I6ICNkZDRiNGI7XG59XG5cbi5iYWNrZ3JvdW5kX2xpZ2h0LWdyZWVuLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWJlYTRmO1xufVxuXG4uY29sb3JfbGlnaHQtZ3JlZW4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjOWJlYTRmO1xufVxuXG4uYmFja2dyb3VuZF9ncmF5LTcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFhYWFhO1xufVxuXG4uY29sb3JfZ3JheS03IHtcbiAgY29sb3I6ICNhYWFhYWE7XG59XG5cbi5jb2xvcl9ncmF5LTEwIHtcbiAgY29sb3I6ICM5MDkwOTA7XG59XG5cbi5tYXgtd2lkdGhfODAtcGVyY2VudCB7XG4gIG1heC13aWR0aDogODAlO1xufVxuXG4uYmFja2dyb3VuZF9kYXJrLWJsdWUtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDJhMzQ7XG59XG5cbi53aWR0aF80MC1wZXJjZW50IHtcbiAgd2lkdGg6IDQwJTtcbn1cblxuLm1heC13aWR0aF80MC1wZXJjZW50IHtcbiAgbWF4LXdpZHRoOiA0MCU7XG59XG5cbi5tYXgtd2lkdGhfNDUtcGVyY2VudCB7XG4gIG1heC13aWR0aDogNDUlO1xufVxuXG4ubWluLXdpZHRoXzIwMCB7XG4gIG1pbi13aWR0aDogMjByZW07XG59XG5cbi5taW4td2lkdGhfNTAge1xuICBtaW4td2lkdGg6IDVyZW07XG59XG5cbi5saW5lLWhlaWdodF8xNCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjRyZW07XG59XG5cbi5saW5lLWhlaWdodF8xNyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjdyZW07XG59XG5cbi5saW5lLWhlaWdodF8xOCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG59XG5cbi5iYWNrZ3JvdW5kX3Zpb2xldC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQzNDI1ZDtcbn1cblxuLndpZHRoXzE0MCB7XG4gIHdpZHRoOiAxNHJlbTtcbn1cblxuLndpZHRoXzMwMCB7XG4gIHdpZHRoOiAzMHJlbTtcbn1cblxuLnotaW5kZXhfMSB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5lcnJvci10ZXh0IHtcbiAgY29sb3I6ICNkZDRiNGI7XG59XG5cbi5oaW50LXRleHQge1xuICBjb2xvcjogIzk3OTA5MDtcbn1cblxuLnRvZ2dsZS1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIuOXJlbTtcbiAgaGVpZ2h0OiAxLjFyZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG59XG5cbi50b2dnbGUtYnV0dG9uIGlucHV0IHtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbn1cblxuLnRvZ2dsZS1idXR0b24tc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC40cztcbiAgdHJhbnNpdGlvbjogMC40cztcbn1cblxuLnRvZ2dsZS1idXR0b24tc2xpZGVyOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHdpZHRoOiAxLjVyZW07XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogLTAuMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk3OTc5NztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjRzO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4udG9nZ2xlLWNoZWNrYm94OmNoZWNrZWQgKyAudG9nZ2xlLWJ1dHRvbi1zbGlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA4NjVhO1xufVxuXG4udG9nZ2xlLWNoZWNrYm94OmNoZWNrZWQgKyAudG9nZ2xlLWJ1dHRvbi1zbGlkZXI6YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMS41cmVtKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxLjVyZW0pO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMS41cmVtKTtcbn1cblxuLyogUm91bmRlZCBzbGlkZXJzICovXG4udG9nZ2xlLWJ1dHRvbi1zbGlkZXIucm91bmQge1xuICBib3JkZXItcmFkaXVzOiAzLjRyZW07XG59XG5cbi50b2dnbGUtYnV0dG9uLXNsaWRlci5yb3VuZDpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5hc3NpZ24tbWVsaS1idG4ge1xuICB3aWR0aDogMy4ycmVtO1xuICBoZWlnaHQ6IDMuMnJlbTtcbn1cblxuLmxpbmUtaGVpZ2h0XzE1IHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLm92ZXJmbG93X3Njcm9sbCB7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi5vdmVyZmxvd19zY3JvbGxfeSB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLm92ZXJmbG93X2F1dG8ge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLm1sMzAge1xuICBtYXJnaW4tbGVmdDogM3JlbTtcbn1cblxuLm1yMzAge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW07XG59XG5cbi53b3JkLWJyZWFrX2JyZWFrLWFsbCB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbn1cblxuLndvcmQtYnJlYWtfYnJlYWstd29yZCB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlcixcbi50cmFuc2Zlci1kZWxldGUtYWNjb3VudC1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW0sXG4udHJhbnNmZXItZGVsZXRlLWFjY291bnQtbW9kYWxfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIC50YWItaXRlbSB7XG4gIHdpZHRoOiAxMHJlbTtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIHBhZGRpbmc6IDAuN3JlbSAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmJpbGxpbmctbW9kYWxfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIC5zZWxlY3RlZC10YWIsXG4udHJhbnNmZXItZGVsZXRlLWFjY291bnQtbW9kYWxfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIC5zZWxlY3RlZC10YWIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uYmlsbGluZy1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIsXG4udHJhbnNmZXItZGVsZXRlLWFjY291bnQtbW9kYWxfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06bm90KDpsYXN0LWNoaWxkKSxcbi50cmFuc2Zlci1kZWxldGUtYWNjb3VudC1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06Zmlyc3QtY2hpbGQsXG4udHJhbnNmZXItZGVsZXRlLWFjY291bnQtbW9kYWxfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIC50YWItaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbn1cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06bGFzdC1jaGlsZCxcbi50cmFuc2Zlci1kZWxldGUtYWNjb3VudC1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xufVxuXG4uYm94LXNoYWRvd19ncmF5IHtcbiAgYm94LXNoYWRvdzogMXB4IDNweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMDYpO1xufVxuXG4uYm9yZGVyLWF0aGVuc2dyYXktcHJpbWFyeV8xIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U5ZTlmMDtcbn1cblxuLmJvcmRlci1hdGhlbnNncmF5LXByaW1hcnlfMiB7XG4gIGJvcmRlcjogMS41cHggc29saWQgI2U5ZTlmMDtcbn1cblxuLmJvcmRlci10b3AtYXRoZW5zZ3JheS1wcmltYXJ5XzEge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZTlmMDtcbn1cblxuLmJvcmRlci1ib3R0b20tYXRoZW5zZ3JheS1wcmltYXJ5XzEge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U5ZTlmMDtcbn1cblxuLmJvcmRlci1ib3R0b20tYXRoZW5zZ3JheS1wcmltYXJ5XzIge1xuICBib3JkZXItYm90dG9tOiAxLjVweCBzb2xpZCAjZTllOWYwO1xufVxuXG4uZm9udC1Tb3VyY2VTYW5zUHJvLUJvbGQge1xuICBmb250LWZhbWlseTogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcbn1cblxuLmZvbnQtUm9ib3RvLVJlZ3VsYXIge1xuICBmb250LWZhbWlseTogXCJSb2JvdG8tUmVndWxhclwiO1xufVxuXG4uZm9udC1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIge1xuICBmb250LWZhbWlseTogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcbn1cblxuLmJhbm5lci10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90by1SZWd1bGFyXCI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uYmFja2dyb3VuZF9yZWQtc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNzI3Mjtcbn1cblxuLndpZHRoXzE1X3BlcmNlbnQge1xuICB3aWR0aDogMTUlO1xufVxuXG4ud2lkdGhfMjVfcGVyY2VudCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi53aWR0aF81MC1wZXJjZW50IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLndpZHRoXzQ1LXBlcmNlbnQge1xuICB3aWR0aDogNDUlO1xufVxuXG4ud2lkdGhfNTUtcGVyY2VudCB7XG4gIHdpZHRoOiA1NSU7XG59XG5cbi53aWR0aF82MC1wZXJjZW50IHtcbiAgd2lkdGg6IDYwJTtcbn1cblxuLndpZHRoXzcwLXBlcmNlbnQge1xuICB3aWR0aDogNzAlO1xufVxuXG4ud2lkdGhfODAtcGVyY2VudCB7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi5tYXgtd2lkdGhfNjAtcGVyY2VudCB7XG4gIG1heC13aWR0aDogNjAlO1xufVxuXG4ubWF4LXdpZHRoXzUwLXBlcmNlbnQge1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLm1heC13aWR0aF80NS1wZXJjZW50IHtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5tYXgtd2lkdGhfNzAtcGVyY2VudCB7XG4gIG1heC13aWR0aDogNzAlO1xufVxuXG4uYm90dG9tXzAge1xuICBib3R0b206IDA7XG59XG5cbi5iYWNrZ3JvdW5kX2RhcmstYmx1ZS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmEzMzQzO1xufVxuXG4udGV4dC10b2dnbGUtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDExcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEuOHJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQ6ICM4OTg5ODk7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4udGV4dC10b2dnbGUtYnV0dG9uLWxhYmVsOmJlZm9yZSxcbi50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWw6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMC42cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBpbmhlcml0O1xuICAtbW96LXRyYW5zaXRpb246IGluaGVyaXQ7XG4gIC1vLXRyYW5zaXRpb246IGluaGVyaXQ7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4udGV4dC10b2dnbGUtYnV0dG9uLWxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1vZmYpO1xuICByaWdodDogMS4xcmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1sYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1vbik7XG4gIGxlZnQ6IDEuMXJlbTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi50ZXh0LXRvZ2dsZS1idXR0b24taW5wdXQ6Y2hlY2tlZCB+IC50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjYWZkMjhkO1xufVxuXG4udGV4dC10b2dnbGUtYnV0dG9uLWlucHV0OmNoZWNrZWQgfiAudGV4dC10b2dnbGUtYnV0dG9uLWxhYmVsOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi50ZXh0LXRvZ2dsZS1idXR0b24taW5wdXQ6Y2hlY2tlZCB+IC50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4udGV4dC10b2dnbGUtYnV0dG9uLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcHg7XG4gIGxlZnQ6IDFweDtcbiAgd2lkdGg6IDIuOHJlbTtcbiAgaGVpZ2h0OiAyLjhyZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmZmZmYgNDAlLCAjZjBmMGYwKTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuLnRleHQtdG9nZ2xlLWJ1dHRvbi1oYW5kbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC02cHggMCAwIC02cHg7XG4gIHdpZHRoOiAxLjJyZW07XG4gIGhlaWdodDogMS4ycmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWVlZWVlLCAjZmZmZmZmKTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG4udGV4dC10b2dnbGUtYnV0dG9uLWlucHV0OmNoZWNrZWQgfiAudGV4dC10b2dnbGUtYnV0dG9uLWhhbmRsZSB7XG4gIGxlZnQ6IDguMXJlbTtcbn1cblxuLyogVHJhbnNpdGlvblxuPT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50ZXh0LXRvZ2dsZS1idXR0b24tbGFiZWwsXG4udGV4dC10b2dnbGUtYnV0dG9uLWhhbmRsZSB7XG4gIHRyYW5zaXRpb246IEFsbCAwLjNzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQWxsIDAuM3MgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBBbGwgMC4zcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBBbGwgMC4zcyBlYXNlO1xufVxuXG4uYWxlcnQtdGFibGVfZGV0YWlscyxcbi5jdXRvbWVyLXRhYmxlX2RldGFpbHMsXG4ucmVwb3J0cy10YWJsZV9kZXRhaWxzLFxuLmNvbnRyb2xzLXRhYmxlX2RldGFpbHMge1xuICBmb250LWZhbWlseTogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuLm1pbi13aWR0aF8xNDAge1xuICBtaW4td2lkdGg6IDE0cmVtO1xufVxuXG4ubWluLXdpZHRoXzE2MCB7XG4gIG1pbi13aWR0aDogMTZyZW07XG59XG5cbi5mb250LXNpemVfMTgge1xuICBmb250LXNpemU6IDEuOHJlbTtcbn1cblxuLmJhY2tncm91bmQtY29sb3JfZGFyay1ibHVlLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYTMzNDM7XG59XG5cbi5tYXgtd2lkdGhfMTUwIHtcbiAgbWF4LXdpZHRoOiAxNXJlbTtcbn1cblxuLm1heC13aWR0aF8xNDAge1xuICBtYXgtd2lkdGg6IDE0cmVtO1xufVxuXG4ud2hpdGUtc3BhY2VfdW5zZXQge1xuICB3aGl0ZS1zcGFjZTogdW5zZXQ7XG59XG5cbi5tYXgtaGVpZ2h0XzQwMCB7XG4gIG1heC1oZWlnaHQ6IDQwcmVtO1xufVxuXG4ubWF4LWhlaWdodF8yNTAge1xuICBtYXgtaGVpZ2h0OiAyNXJlbTtcbn1cblxuLmNvbG9yX2RhcmstYmx1ZS1zZWNvbmRhcnkge1xuICBjb2xvcjogIzJhMzM0Mztcbn1cblxuLmJhY2tncm91bmQtY29sb3JfZ3JheS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZjVjO1xufVxuXG4uYmFja2dyb3VuZC1jb2xvcl93aGl0ZS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xufVxuXG4uYmFja2dyb3VuZC1jb2xvcl93aGl0ZS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLm1pbi13aWR0aF8yNzAge1xuICBtaW4td2lkdGg6IDI3cmVtO1xufVxuXG4ubWluLWhlaWdodF81MCB7XG4gIG1pbi1oZWlnaHQ6IDVyZW07XG59XG5cbm1heC13aWR0aF8yNzAge1xuICBtYXgtd2lkdGg6IDI3cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXNpemVfMTMge1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuLmJvcmRlci10b3BfZ3JheS1zZWNvbmRhcl8wMDUge1xuICBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICM4OTg5ODk7XG59XG5cbi5iYWNrZ3JvdW5kLWNvbG9yX2xpZ2h0LWdyYXktcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWNlY2U7XG59XG5cbi5wYWMtY29udGFpbmVyIHtcbiAgei1pbmRleDogOTk5OTkgIWltcG9ydGFudDtcbn1cblxuLnB0MzAge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbn1cblxuLnB0NDAge1xuICBwYWRkaW5nLXRvcDogNHJlbTtcbn1cblxuLnB0NTAge1xuICBwYWRkaW5nLXRvcDogNXJlbTtcbn1cblxuLnRvcF8wIHtcbiAgdG9wOiAwO1xufVxuXG4udG9wXzEwIHtcbiAgdG9wOiAxcmVtO1xufVxuXG4udG9wXzMge1xuICB0b3A6IDNyZW07XG59XG5cbi5sZWZ0XzMge1xuICBsZWZ0OiAzcmVtO1xufVxuXG4ubGVmdF8xNSB7XG4gIGxlZnQ6IDE1cmVtO1xufVxuXG4uYm90dG9tXzAge1xuICBib3R0b206IDA7XG59XG5cbi5yaWdodF8xMCB7XG4gIHJpZ2h0OiAxcmVtO1xufVxuXG4ucmlnaHRfMDUge1xuICByaWdodDogMC41cmVtO1xufVxuXG4ubWFyZ2luX2F1dG8ge1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5tYXJnaW5fbWluXzAxIHtcbiAgbWFyZ2luOiAtMSU7XG59XG5cbi5wcjMwIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cblxuLm1heC13aWR0aF83MCB7XG4gIG1heC13aWR0aDogN3JlbTtcbn1cblxuLndpZHRoXzcwIHtcbiAgd2lkdGg6IDdyZW07XG59XG5cbi5wcmltYXJ5LWFjdGlvbl9idG4ge1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnNlY29uZGFyeS1hY3Rpb25fYnRuIHtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ncmV5LWFjdGlvbl9idG4ge1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZDRmNWM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5kYXJrLWdyZWVuX2J0biB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMzYzNjM7XG59XG5cbi5pbnZhbGlkLWJ0biB7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogIzJhMzM0MztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg5ODk4OTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmRvd25sb2FkLXRlbXBsYXRlX2J0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NjRmNWQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKiBDaHJvbWUsIFNhZmFyaSwgRWRnZSwgT3BlcmEgKi9cbmlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogRmlyZWZveCAqL1xuaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbi5mb250LXNpemVfMjAge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbi5jb2xvcl9saWdodC1ncmF5LXByaW1hcnkge1xuICBjb2xvcjogI2NlY2VjZTtcbn1cblxuLmNvbG9yX2xpZ2h0LWdyYXktMiB7XG4gIGNvbG9yOiAjZTZlNmU2O1xufVxuXG4uc3R5bGVkLXNlbGVjdCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgcGFkZGluZzogMC45cmVtIDNyZW0gMC45cmVtIDAuOXJlbTtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAvKiBSZW1vdmUgZGVmYXVsdCBhcnJvdyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy9hcnJvdy1kb3duLWdyYXktc2VjLnN2Z1wiKTtcbiAgLyogQWRkIGN1c3RvbSBhcnJvdyAqL1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDAuNzQxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xuICBtYXgtd2lkdGg6IDI3cmVtO1xufVxuXG4uYm9yZGVyX2Vycm9yXzAxIHtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2RkNGI0YiAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyX3RyYW5zcGFyZW50XzAxIHtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5wbDMwIHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xufVxuXG4ucHIzMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG59XG5cbi50ZXh0LXRyYW5zZm9ybV9ub25lIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi50ZXh0LXRyYW5zZm9ybV91cHBlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5hbGlnbi1zZWxmX2ZsZXgtc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZl9mbGV4LWVuZCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4uY29sb3JfbGlnaHQtZ3JlZW4tdGVybmFyeSB7XG4gIGNvbG9yOiAjODVjOTQzO1xufVxuXG4uYmFja2dyb3VuZC1jb2xvcl9saWdodC1ncmVlbi10ZXJuYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg1Yzk0Mztcbn1cblxuLm9wdGlvbmFsX2xhYmVsIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xuICBjb2xvcjogIzRkNGY1Yztcbn1cblxuLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1Yztcbn1cblxuLmNvbG9yX29yYW5nZS1vcmFuZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZjMDZhO1xufVxuXG4uZmlsZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5maWxlLWNvbnRhaW5lciBbdHlwZT1maWxlXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xufVxuXG5pbnB1dFt0eXBlPWZpbGVdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1pbi13aWR0aF8yNS1wZXJjZW50IHtcbiAgbWluLXdpZHRoOiAyNSU7XG59XG5cbi5taW4td2lkdGhfNTAtcGVyY2VudCB7XG4gIG1pbi13aWR0aDogNTAlO1xufVxuXG4ubWF4LXdpZHRoXzQwLXBlcmNlbnQge1xuICBtYXgtd2lkdGg6IDQwJTtcbn1cblxuLm1pbi13aWR0aF8xNS1wZXJjZW50IHtcbiAgbWluLXdpZHRoOiAxNSU7XG59XG5cbi5taW4td2lkdGhfMzUtcGVyY2VudCB7XG4gIG1pbi13aWR0aDogMzUlO1xufVxuXG4ucmVzaXplX25vbmUge1xuICByZXNpemU6IG5vbmU7XG59XG5cbi5tYXgtd2lkdGhfNzUtcGVyY2VudCB7XG4gIG1heC13aWR0aDogNzUlO1xufVxuXG4uYm9yZGVyX2xpZ2h0LWdyYXktcHJpbWFyeV8xIHtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2NlY2VjZTtcbn1cblxuLm10MTUge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG5cbi5tdDIwIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLm10NiB7XG4gIG1hcmdpbi10b3A6IDAuNnJlbTtcbn1cblxuLm10MCB7XG4gIG1hcmdpbi10b3A6IDByZW07XG59XG5cbi5oaWdobGlnaHQtc29ydC1pY29uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjE2MWU7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLm1heC13aWR0aF8xMDAtcGVyY2VudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmJhY2tncm91bmQtc29ydC1pY29uX2JsYWNrOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcInNyYy9hc3NldHMvaW1hZ2VzL2Fycm93LWRvd25fYmxhY2suc3ZnXCIpO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMC43NDFyZW07XG4gIHdpZHRoOiAxLjhyZW07XG4gIGhlaWdodDogMC44cmVtO1xuICB0cmFuc2l0aW9uOiAwLjI1cztcbn1cblxuLmJhY2tncm91bmQtc29ydC1pY29uX3doaXRlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcInNyYy9hc3NldHMvaW1hZ2VzL2Fycm93LWRvd25fd2hpdGUuc3ZnXCIpO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDAuNzQxcmVtO1xuICB0cmFuc2l0aW9uOiAwLjI1cztcbn1cblxuLmJhY2tncm91bmQtc29ydC1pY29uX2JsYWNrX3NpbmdsZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy9hcnJvdy1kb3duX2JsYWNrLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMC43NDFyZW07XG4gIHdpZHRoOiAxLjhyZW07XG4gIGhlaWdodDogMC44cmVtO1xuICB0cmFuc2l0aW9uOiAwLjI1cztcbn1cblxuLmJhY2tncm91bmQtc29ydC1pY29uX3doaXRlX3NpbmdsZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy9hcnJvdy1kb3duX3doaXRlLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDAuNzQxcmVtO1xuICB0cmFuc2l0aW9uOiAwLjI1cztcbn1cblxuLnJvdGF0ZV9iYWNrZ3JvdW5kLXNvcnQtaWNvbjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uYWxpZ24tc2VsZl9jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5cbi5taW4td2lkdGhfODAge1xuICBtaW4td2lkdGg6IDhyZW07XG59XG5cbi5taW4td2lkdGhfMTAwIHtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbn1cblxuLm1pbi13aWR0aF8xMDUge1xuICBtaW4td2lkdGg6IDEwLjVyZW07XG59XG5cbi5taW4td2lkdGhfODAyIHtcbiAgbWluLXdpZHRoOiA4MnJlbTtcbn1cblxuLnB0MDc1IHtcbiAgcGFkZGluZy10b3A6IDAuNzVyZW07XG59XG5cbi5wYjA3NSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xufVxuXG4udmlzaWJsaXR5X2hpZGRlbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQge1xuICB3aWR0aDogMjVyZW0gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlY2VjZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5saXN0LXVuc3R5bGVkIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC53aWRlciB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwcmVtICFpbXBvcnRhbnQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aGVhZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoIHtcbiAgYm9yZGVyLXJhZGl1czogMHJlbSAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGJvZHkgdHIge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGgge1xuICBtYXgtd2lkdGg6IDJyZW0gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAycmVtO1xuICBsaW5lLWhlaWdodDogMjtcbiAgd2lkdGg6IDJyZW07XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aCxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRkIHtcbiAgaGVpZ2h0OiAzLjJyZW07XG4gIHBhZGRpbmc6IDByZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkLmFjdGl2ZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdGFibGUgdGQuZGF5OjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIuOHJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMC40cmVtO1xuICB0b3A6IDAuMnJlbTtcbiAgd2lkdGg6IDIuOHJlbTtcbiAgei1pbmRleDogLTE7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuYWN0aXZlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiN2E1ICFpbXBvcnRhbnQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAubW9udGgsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAueWVhcixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5kZWNhZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBzcGFuLm1vbnRoOjpiZWZvcmUsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0ZCBzcGFuLnllYXI6OmJlZm9yZSxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4uZGVjYWRlOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuMnJlbTtcbiAgdG9wOiAwLjJyZW07XG4gIHdpZHRoOiA1cmVtO1xuICB6LWluZGV4OiAtMTtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRkIHNwYW4uZGVjYWRlOjpiZWZvcmUge1xuICB0b3A6IDByZW0gIWltcG9ydGFudDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoZWFkIHRoOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwcmVtICFpbXBvcnRhbnQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0YWJsZSB0aC5kaXNhYmxlZCxcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IHRhYmxlIHRoLmRpc2FibGVkOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnRvZGF5IHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnRvZGF5OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VjZWNlO1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5wcmV2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwic3JjL2Fzc2V0cy9pbWFnZXMvYXJyb3ctZG93bl9ibGFjay5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnByZXY6aG92ZXIsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAucGlja2VyLXN3aXRjaDpob3Zlcixcbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5uZXh0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlY2VjZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwic3JjL2Fzc2V0cy9pbWFnZXMvYXJyb3ctZG93bl9ibGFjay5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5pY29uLWtleWJvYXJkX2Fycm93X3JpZ2h0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmRpc2FibGVkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnRpbWVwaWNrZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuY29sbGFwc2UuaW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmZhZGUuaW4ge1xuICBvcGFjaXR5OiAxO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgdHIuY29sbGFwc2UuaW4ge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCB0Ym9keS5jb2xsYXBzZS5pbiB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMzVzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgdmlzaWJpbGl0eTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCB2aXNpYmlsaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIHZpc2liaWxpdHk7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuZ2x5cGhpY29uLXRpbWUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy90aW1lLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEuOHJlbTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5nbHlwaGljb24tdGltZTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcInNyYy9hc3NldHMvaW1hZ2VzL3RpbWUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWNlY2U7XG4gIGJhY2tncm91bmQtc2l6ZTogMS44cmVtO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmdseXBoaWNvbi1jYWxlbmRhciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcInNyYy9hc3NldHMvaW1hZ2VzL2NhbGVuZGFyLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEuOHJlbTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5nbHlwaGljb24tY2FsZW5kYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy9jYWxlbmRhci5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlY2VjZTtcbiAgYmFja2dyb3VuZC1zaXplOiAxLjhyZW07XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuZ2x5cGhpY29uLWNoZXZyb24tdXAge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy9hcnJvdy1kb3duX2JsYWNrLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmdseXBoaWNvbi1jaGV2cm9uLWRvd24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJzcmMvYXNzZXRzL2ltYWdlcy9hcnJvdy1kb3duX2JsYWNrLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmRheTpob3Zlcjo6YmVmb3JlLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLm1vbnRoOmhvdmVyOjpiZWZvcmUsXG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAueWVhcjpob3Zlcjo6YmVmb3JlLFxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmRlY2FkZTpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlY2VjZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmRhdGVwaWNrZXIgLmRhdGVwaWNrZXItZGF5cyAuZG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZThmMztcbiAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5kYXRlcGlja2VyIC5kYXRlcGlja2VyLWRheXMgdGFibGUgdGQuZGF5IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmRhdGVwaWNrZXIgLmRhdGVwaWNrZXItZGF5cyB0YWJsZSB0Ym9keSB0ZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMHJlbSAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLnRpbWVwaWNrZXIgdGFibGUgdGQgc3BhbiB7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG4uYm9vdHN0cmFwLWRhdGV0aW1lcGlja2VyLXdpZGdldCAuY2lyY2xlX3RpY2ttYXJrIHtcbiAgZmlsbDogIzcxY2VjYTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5jaGVja2JveF9hbGwge1xuICBjb2xvcjogI2NlY2VjZTtcbn1cbi5ib290c3RyYXAtZGF0ZXRpbWVwaWNrZXItd2lkZ2V0IC5jaGVja2JveF9jcml0aWNhbCB7XG4gIGNvbG9yOiAjZGQ0YjRiO1xufVxuLmJvb3RzdHJhcC1kYXRldGltZXBpY2tlci13aWRnZXQgLmNoZWNrYm94X2ZhdWx0cyB7XG4gIGNvbG9yOiAjZmY5YzE0O1xufVxuXG4uYWxlcnRtb2RhbCB0aGVhZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWNlY2U7XG59XG4uYWxlcnRtb2RhbCAuZ3JhcGgtaWNvbl9vcmFuZ2Uge1xuICBmaWxsOiAjZmZjMDZhO1xufVxuLmFsZXJ0bW9kYWwgLmdyYXBoLWljb25fbGlnaHQtZ3JlZW4tdGVybmFyeSB7XG4gIGZpbGw6ICM4NWM5NDM7XG59XG4uYWxlcnRtb2RhbCAuZ3JhcGgtaWNvbl9yZWQtcHJpbWFyeSB7XG4gIGZpbGw6ICNkZDRiNGI7XG59XG4uYWxlcnRtb2RhbCAudGFibGVkYXRhIHtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn0iLCJAaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdXRpbGl0aWVzLnNjc3MnO1xyXG5cclxuLmFsZXJ0bW9kYWx7XHJcbiAgICB0aGVhZFxyXG4gICAge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeSA7XHJcbiAgICB9XHJcbiAgICAuZ3JhcGgtaWNvbl9vcmFuZ2Uge1xyXG4gICAgICAgIGZpbGw6ICRjb2xvci1vcmFuZ2UtcHJpbWFyeTtcclxuICAgIH1cclxuICAgIC5ncmFwaC1pY29uX2xpZ2h0LWdyZWVuLXRlcm5hcnkge1xyXG4gICAgICAgIGZpbGw6ICRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5O1xyXG4gICAgfVxyXG5cclxuICAgIC5ncmFwaC1pY29uX3JlZC1wcmltYXJ5IHtcclxuICAgICAgICBmaWxsOiAkY29sb3ItcmVkLXByaW1hcnk7XHJcbiAgICB9XHJcbi50YWJsZWRhdGFcclxue1xyXG5oZWlnaHQ6IDQwMHB4O1xyXG5vdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcbn1cclxuIl19 */\"","import { Component, OnInit, Output, Input, EventEmitter, AfterViewInit, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport {\r\n SortingTypes,\r\n AlertSortingKeys,\r\n} from 'src/app/shared/constants/sorting-enum';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport { AlertsResponse } from '../../models/alerts.model';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { COMMON_CONSTANTS } from '../../constants/commom.constant';\r\nimport * as moment from 'moment';\r\nimport * as momenttimezone from 'moment-timezone';\r\n@Component({\r\n selector: 'app-alerts-table',\r\n templateUrl: './alerts-table.component.html',\r\n styleUrls: ['./alerts-table.component.scss']\r\n})\r\nexport class AlertsTableComponent implements OnInit, OnChanges {\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() emitHandleEdit = new EventEmitter();\r\n @Output() emitHandleModalType = new EventEmitter<{ $eventtype, index, value }>();\r\n @Input() modalTitle: string;\r\n @Input() meliSerialNumber: string;\r\n @Input() type: string;\r\n @Input() isShowCrossMark = true;\r\n @Input() portalName: string;\r\n @Input() alertModalRefresh = true;\r\n AlertSkip = 0;\r\n AlertLimit = 50;\r\n AlertPage = 1;\r\n AlertTotalCount = 0;\r\n AlertTotalPage = 0;\r\n paginationFor: string;\r\n AlertsList: any;\r\n placeHolder: string;\r\n roleConstants = ROLE_CONSTANTS;\r\n AlertCurrentSortingField = AlertSortingKeys.TIME;\r\n AlertCurrentSortingType = SortingTypes.DESCENDING;\r\n isShowAlertsLoading: boolean = true;\r\n commonConstants = COMMON_CONSTANTS;\r\n sortingConstants = AlertSortingKeys;\r\n isTimeColumnSort: boolean = false;\r\n sortingTypes = SortingTypes;\r\n constructor(private sharedService: SharedService, private helperService: HelperService) { }\r\n\r\n ngOnInit() {\r\n this.getAlertsList();\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n console.log(this.alertModalRefresh)\r\n if (this.alertModalRefresh == true) {\r\n this.getAlertsList()\r\n }\r\n }\r\n getAlertsList() {\r\n const queryParams: any = {\r\n size: this.AlertLimit,\r\n index: this.AlertPage,\r\n meliSerialNo: this.meliSerialNumber,\r\n type: this.type,\r\n timeZone: momenttimezone.tz.guess()\r\n };\r\n if (this.AlertCurrentSortingField) {\r\n queryParams.sortingField = this.AlertCurrentSortingField;\r\n queryParams.sortingType = this.AlertCurrentSortingType;\r\n }\r\n this.isShowAlertsLoading = true;\r\n this.sharedService.getAlertsList(queryParams).subscribe(\r\n (response: AlertsResponse) => {\r\n this.AlertsList = response.alertsResonse.alertsList;\r\n this.AlertTotalCount = response.alertsResonse.totalNumberOfElements;\r\n this.AlertTotalPage = response.alertsResonse.totalPage;\r\n // this.sharedService.setAlertsList(response.alertsResonse.alertsList);\r\n // this.handleInitialSorting('pastAlert');\r\n this.isShowAlertsLoading = false;\r\n // if (this.pastAlertsList && this.pastAlertsList.length) {\r\n // this.handleCustomerDetails(this.pastAlertsList);\r\n // }\r\n },\r\n (error) => {\r\n this.isShowAlertsLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handlePagination(payload) {\r\n const type = payload.paginationType;\r\n if (type === this.commonConstants.PAGINATION_NEXT) {\r\n this.AlertPage += 1;\r\n this.AlertSkip =\r\n this.AlertPage * this.AlertLimit - this.AlertLimit;\r\n } else if (type === this.commonConstants.PAGINATION_PREVIOUS) {\r\n this.AlertPage -= 1;\r\n this.AlertSkip =\r\n this.AlertPage * this.AlertLimit - this.AlertLimit;\r\n } else if (type === this.commonConstants.PAGINATION_FIRST) {\r\n this.AlertLimit = 50;\r\n this.AlertPage = 1;\r\n this.AlertSkip = 0;\r\n } else if (type === this.commonConstants.PAGINATION_LAST) {\r\n this.AlertPage = this.AlertTotalPage;\r\n this.AlertSkip =\r\n this.AlertPage * this.AlertLimit - this.AlertLimit;\r\n }\r\n this.getAlertsList();\r\n }\r\n handleModelRequest($eventtype: string, index?: number, value?: any) {\r\n console.log({ $eventtype, index, value })\r\n this.emitHandleModalType.emit({ $eventtype, index, value })\r\n }\r\n handleSorting(tableType: string, key: string, key1?: string) {\r\n\r\n if (key === this.sortingConstants.TIME) {\r\n // this.resetPreviousSorting(tableType, key);\r\n this.isTimeColumnSort = !this.isTimeColumnSort;\r\n // this.pastAlertsList = this.helperService.handleDateSorting(this.pastAlertsList,\r\n // this.isPastTimeColumnSort, key);\r\n this.AlertCurrentSortingField = this.sortingConstants.TIME;\r\n this.AlertCurrentSortingType = this.isTimeColumnSort\r\n ? this.sortingTypes.ASCENDING\r\n : this.sortingTypes.DESCENDING;\r\n //this.LastSortedColumn = this.sortingConstants.TIME;\r\n }\r\n\r\n this.getAlertsList();\r\n }\r\n\r\n trackByAlertId(index: number, item: any): string {\r\n return item ? item.alertId : '';\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.assign-technician-modal_wrapper .styled-select {\\n min-width: 25rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYXNzaWduLXRlY2huaWNpYW4tbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXGFzc2lnbi10ZWNobmljaWFuLW1vZGFsXFxhc3NpZ24tdGVjaG5pY2lhbi1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYXNzaWduLXRlY2huaWNpYW4tbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYXNzaWduLXRlY2huaWNpYW4tbW9kYWwvYXNzaWduLXRlY2huaWNpYW4tbW9kYWwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREtJO0VBQ0ksZ0JBQUE7QUVGUiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2Fzc2lnbi10ZWNobmljaWFuLW1vZGFsL2Fzc2lnbi10ZWNobmljaWFuLW1vZGFsLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCAnc3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuXHJcbi5hc3NpZ24tdGVjaG5pY2lhbi1tb2RhbF93cmFwcGVyIHtcclxuICAgIFxyXG4gICAgLnN0eWxlZC1zZWxlY3Qge1xyXG4gICAgICAgIG1pbi13aWR0aDogMjVyZW07XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5hc3NpZ24tdGVjaG5pY2lhbi1tb2RhbF93cmFwcGVyIC5zdHlsZWQtc2VsZWN0IHtcbiAgbWluLXdpZHRoOiAyNXJlbTtcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n// Services\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ContractorSharedService } from 'projects/contractor/src/app/shared-contractor/services/shared.service';\r\n\r\n// Models\r\nimport { Technician, TechnicianInfo } from 'src/app/shared/models/technician.model';\r\nimport { Alert } from 'src/app/shared/models/alerts.model';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { TechnicianService } from 'src/app/modules/technician/services/technician.service';\r\n\r\n@Component({\r\n selector: 'app-assign-technician-modal',\r\n templateUrl: './assign-technician-modal.component.html',\r\n styleUrls: ['./assign-technician-modal.component.scss']\r\n})\r\nexport class AssignTechnicianModalComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() alertItem: Alert;\r\n @Output() emitHandleRefreshPage = new EventEmitter();\r\n\r\n technicianList: Technician[];\r\n selectedTechnician: Technician;\r\n isTechnicianListLoading = false;\r\n isActionBtnLoading = false;\r\n boardLocation: any;\r\n\r\n constructor(\r\n private sharedService: SharedService,\r\n private helperService: HelperService,\r\n private contractorSharedService: ContractorSharedService,\r\n private technicianService: TechnicianService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getTechnicianList();\r\n this.getLocation();\r\n console.log(this.alertItem)\r\n }\r\n\r\n getTechnicianList() {\r\n const queryParams = {\r\n serialNumber: this.alertItem.meliSerialNo\r\n };\r\n this.isTechnicianListLoading = true;\r\n this.technicianService.getTechnicianList(queryParams).subscribe(\r\n (response: TechnicianInfo) => {\r\n this.technicianList = response.responseData.technicianList;\r\n this.isTechnicianListLoading = false;\r\n if (this.technicianList.length > 0) {\r\n //this.selectedTechnician = this.technicianList[0];\r\n this.assignSelectedTechnician();\r\n } else {\r\n const message = 'No Technicians Found!';\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n }, (error) => {\r\n this.isTechnicianListLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n getLocation() {\r\n const queryParams = {\r\n meliSerialNumber: this.alertItem.meliSerialNo\r\n };\r\n\r\n this.sharedService.getLocation(queryParams).subscribe(\r\n (response) => {\r\n this.boardLocation = response.responseData[0].locations.title;\r\n }, (error) => {\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleAssignTechnicianForAlerts() {\r\n console.log(this.selectedTechnician)\r\n const payload = [{\r\n description: '',\r\n technicianId: this.selectedTechnician.technicianId,\r\n meliSerialNumber: this.alertItem.meliSerialNo,\r\n alertId: this.alertItem.alertId,\r\n awsTechnicianId: this.selectedTechnician.awsTechnicianId,\r\n jobType: 'Defective',\r\n jobId: this.alertItem.jobTechnicianInfo && this.alertItem.jobTechnicianInfo.jobId,\r\n alertName: this.alertItem.alertName,\r\n alertTime: this.alertItem.timeStamp\r\n }];\r\n this.isActionBtnLoading = true;\r\n let index = 0;\r\n if (payload[0]['jobId'] != null) {\r\n index = payload[0]['jobId']\r\n }\r\n this.sharedService.assignTechnician(payload).subscribe(\r\n (response) => {\r\n this.isActionBtnLoading = false;\r\n this.closeModal();\r\n this.emitHandleRefreshPage.emit('current-alerts');\r\n this.helperService.showToaster(ToasterType.SUCCESS, response[\"responseData\"][index]);\r\n }, (error) => {\r\n this.isActionBtnLoading = false;\r\n this.closeModal();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n handleOnChangeTechnician(event) {\r\n console.log(event)\r\n const selctedIndex = event.target.selectedIndex;\r\n this.selectedTechnician = this.technicianList[selctedIndex];\r\n }\r\n\r\n assignSelectedTechnician() {\r\n if (this.alertItem && this.alertItem.jobTechnicianInfo) {\r\n this.technicianList.forEach(tech => {\r\n if (this.alertItem.jobTechnicianInfo.technicianId === tech.technicianId) {\r\n return this.selectedTechnician = tech;\r\n }\r\n else {\r\n return null\r\n }\r\n\r\n });\r\n }\r\n return this.selectedTechnician = this.technicianList[0];\r\n }\r\n handleAlreadyAssginedTechnician(currentTechnician: Technician) {\r\n if (this.alertItem && this.alertItem.jobTechnicianInfo) {\r\n if (this.alertItem.jobTechnicianInfo.technicianId === currentTechnician.technicianId) {\r\n return currentTechnician;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n trackByTechnicianId(index: number, item: any): string {\r\n return item ? item.technicianId : '';\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.billing-modal_wrapper .modal-content {\\n width: 700px;\\n}\\n.billing-modal_wrapper .mr80 {\\n margin-right: 8rem;\\n}\\n.billing-modal_wrapper .modal-body {\\n max-height: calc(88vh - 120px);\\n padding: 2rem 4rem;\\n}\\n.billing-modal_wrapper .modal-footer {\\n border-top: 0.05rem solid #707070;\\n padding: 2rem 0rem;\\n margin: 0rem 4rem;\\n}\\n.billing-modal_wrapper .styled-select {\\n padding: 0.8rem 3rem 0.8rem 0.9rem;\\n}\\n.billing-modal_wrapper .error {\\n border: 0.1rem solid #DD4B4B;\\n}\\n.billing-modal_wrapper .error-message {\\n color: #DD4B4B;\\n font-size: 1.3rem;\\n text-align: right;\\n}\\n.billing-modal_wrapper .link {\\n color: #2EAFA5;\\n}\\n.billing-modal_wrapper .mt32 {\\n margin-top: 3.2rem;\\n}\\n.billing-modal_wrapper .borderinfo {\\n border-top: 0.5px solid rgba(112, 112, 112, 0.5);\\n}\\n.billing-modal_wrapper .credit-card_wrapper, .billing-modal_wrapper .billing-history_wrapper {\\n padding: 0.5rem;\\n overflow: auto;\\n}\\n.billing-modal_wrapper .billing-history_wrapper {\\n max-height: 25rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYmlsbGluZy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcYmlsbGluZ1xcYmlsbGluZy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYmlsbGluZy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9iaWxsaW5nL2JpbGxpbmcuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREtJO0VBQ0ksWUFBQTtBRUZSO0FGS0k7RUFDSSxrQkFBQTtBRUhSO0FGTUk7RUFDSSw4QkFBQTtFQUNBLGtCQUFBO0FFSlI7QUZPSTtFQUNJLGlDQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBRUxSO0FGUUk7RUFDSSxrQ0FBQTtBRU5SO0FGU0k7RUFDSSw0QkFBQTtBRVBSO0FGZUk7RUFDSSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtBRWJSO0FGZ0JJO0VBQ0ksY0FBQTtBRWRSO0FGaUJJO0VBQ0ksa0JBQUE7QUVmUjtBRmtCSTtFQUNJLGdEQUFBO0FFaEJSO0FGbUJJO0VBRUksZUFBQTtFQUNBLGNBQUE7QUVsQlI7QUZvQkk7RUFDSSxpQkFBQTtBRWxCUiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2JpbGxpbmcvYmlsbGluZy5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkBpbXBvcnQgJ3NyYy9zdHlsZXNoZWV0cy92YXJpYWJsZXMuc2Nzcyc7XHJcblxyXG4uYmlsbGluZy1tb2RhbF93cmFwcGVyIHtcclxuXHJcbiAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IDcwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tcjgwIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsLWJvZHkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoODh2aCAtIDEyMHB4KTtcclxuICAgICAgICBwYWRkaW5nOiAycmVtIDRyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsLWZvb3RlciB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMC4wNXJlbSBzb2xpZCAkY29sb3ItZ3JheS01O1xyXG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMHJlbTtcclxuICAgICAgICBtYXJnaW46IDByZW0gNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuc3R5bGVkLXNlbGVjdCB7XHJcbiAgICAgICAgcGFkZGluZzogMC44cmVtIDNyZW0gMC44cmVtIDAuOXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuZXJyb3Ige1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNERDRCNEI7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgLmJsYW5rIHtcclxuICAgICAgICBcclxuICAgIH1cclxuXHJcbiAgICAuZXJyb3ItbWVzc2FnZSB7XHJcbiAgICAgICAgY29sb3I6I0RENEI0QjtcclxuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH1cclxuXHJcbiAgICAubGluayB7XHJcbiAgICAgICAgY29sb3I6IzJFQUZBNTtcclxuICAgIH1cclxuXHJcbiAgICAubXQzMiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMy4ycmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5ib3JkZXJpbmZvIHtcclxuICAgICAgICBib3JkZXItdG9wOjAuNXB4IHNvbGlkIHJnYmEoMTEyLCAxMTIsIDExMiwgMC41KTtcclxuICAgIH1cclxuXHJcbiAgICAuY3JlZGl0LWNhcmRfd3JhcHBlciwgLmJpbGxpbmctaGlzdG9yeV93cmFwcGVyIHtcclxuICAgICAgIC8vIG1heC1oZWlnaHQ6IDI1cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcclxuICAgICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIH1cclxuICAgIC5iaWxsaW5nLWhpc3Rvcnlfd3JhcHBlciB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjVyZW07XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNvbnRlbnQge1xuICB3aWR0aDogNzAwcHg7XG59XG4uYmlsbGluZy1tb2RhbF93cmFwcGVyIC5tcjgwIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cmVtO1xufVxuLmJpbGxpbmctbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSB7XG4gIG1heC1oZWlnaHQ6IGNhbGMoODh2aCAtIDEyMHB4KTtcbiAgcGFkZGluZzogMnJlbSA0cmVtO1xufVxuLmJpbGxpbmctbW9kYWxfd3JhcHBlciAubW9kYWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMC4wNXJlbSBzb2xpZCAjNzA3MDcwO1xuICBwYWRkaW5nOiAycmVtIDByZW07XG4gIG1hcmdpbjogMHJlbSA0cmVtO1xufVxuLmJpbGxpbmctbW9kYWxfd3JhcHBlciAuc3R5bGVkLXNlbGVjdCB7XG4gIHBhZGRpbmc6IDAuOHJlbSAzcmVtIDAuOHJlbSAwLjlyZW07XG59XG4uYmlsbGluZy1tb2RhbF93cmFwcGVyIC5lcnJvciB7XG4gIGJvcmRlcjogMC4xcmVtIHNvbGlkICNERDRCNEI7XG59XG4uYmlsbGluZy1tb2RhbF93cmFwcGVyIC5lcnJvci1tZXNzYWdlIHtcbiAgY29sb3I6ICNERDRCNEI7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLmxpbmsge1xuICBjb2xvcjogIzJFQUZBNTtcbn1cbi5iaWxsaW5nLW1vZGFsX3dyYXBwZXIgLm10MzIge1xuICBtYXJnaW4tdG9wOiAzLjJyZW07XG59XG4uYmlsbGluZy1tb2RhbF93cmFwcGVyIC5ib3JkZXJpbmZvIHtcbiAgYm9yZGVyLXRvcDogMC41cHggc29saWQgcmdiYSgxMTIsIDExMiwgMTEyLCAwLjUpO1xufVxuLmJpbGxpbmctbW9kYWxfd3JhcHBlciAuY3JlZGl0LWNhcmRfd3JhcHBlciwgLmJpbGxpbmctbW9kYWxfd3JhcHBlciAuYmlsbGluZy1oaXN0b3J5X3dyYXBwZXIge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuLmJpbGxpbmctbW9kYWxfd3JhcHBlciAuYmlsbGluZy1oaXN0b3J5X3dyYXBwZXIge1xuICBtYXgtaGVpZ2h0OiAyNXJlbTtcbn0iXX0= */\"","import { Component, ElementRef, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n//import { loadStripe } from '@stripe/stripe-js/pure';\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { BillingListResponse, BillingListResponseDetails } from 'src/app/shared/models/customer.model';\r\nimport * as moment from 'moment';\r\nimport { successResponse } from '../../models/billingaccount.model';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { environment as channelEnvironment } from 'projects/channel/src/environments/environment';\r\nimport { environment as mduEnvironment } from 'projects/mdu/src/environments/environment';\r\nimport { ROLE_CONSTANTS } from '../../constants/role.constant';\r\nimport { ActivatedRoute } from '@angular/router';\r\ndeclare var Stripe: any\r\n@Component({\r\n selector: 'app-billing',\r\n templateUrl: './billing.component.html',\r\n styleUrls: ['./billing.component.scss']\r\n})\r\nexport class BillingComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() isUpdateCard = false;\r\n @Input() isUpdateAch = false;\r\n @Input() isOnlogin = false;\r\n @Input() cardDetails;\r\n @Input() modalTitle: string;\r\n stripe: any;\r\n elements: any;\r\n card: any;\r\n selectedBillingTab = 'credit-card';\r\n creditCardForm: FormGroup;\r\n achForm: FormGroup;\r\n editcreditCardForm: FormGroup;\r\n achVerifyForm: FormGroup;\r\n billingAddressForm: FormGroup;\r\n cardNumberValid: boolean = false;\r\n cvcValid: boolean = false;\r\n cardExpiryValid: boolean = false;\r\n postalCodeValid: boolean = false;\r\n isCreditButton: boolean = true;\r\n isAchButton: boolean = false;\r\n isBillingButton: boolean = true\r\n customerKey: any;\r\n isLoading: boolean = false;\r\n billingList: BillingListResponseDetails[];\r\n isBillingTabLoading = false;\r\n editingAccountData: any;\r\n storeCardDetails: any;\r\n storeAchDetails: any;\r\n isCreditCardPrimary: boolean = false;\r\n isAccountPrimary: boolean = false;\r\n billingDetails: any;\r\n isShowConfirmationModal: boolean = false;\r\n confirmationModalLine1Content: string;\r\n operation: any;\r\n cardType: any;\r\n isVerificationModal: boolean = false;\r\n isAchVerified: boolean;\r\n isPrimaryActionBtnLoading: boolean = false;\r\n portalName: any;\r\n stripeKey: any;\r\n isShowCrossMark: any = false;\r\n constructor(private helperService: HelperService, private elementRef: ElementRef,\r\n private sharedService: SharedService, private activatedRoute: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n });\r\n this.creditCardForm = new FormGroup({ cardName: new FormControl('', Validators.required), });\r\n this.editcreditCardForm = new FormGroup({\r\n editcardName: new FormControl({ value: '', disabled: true }, Validators.required,),\r\n editcardNumber: new FormControl({ value: '', disabled: true }, Validators.required),\r\n editcardCvc: new FormControl({ value: '', disabled: true }, Validators.required),\r\n editcardExpiry: new FormControl('', [Validators.required, this.helperService.validateExpiry]),\r\n editcardZipCode: new FormControl({ value: '', disabled: true }, Validators.required)\r\n })\r\n this.billingAddressForm = new FormGroup({\r\n address: new FormControl('', Validators.required),\r\n unitAptNo: new FormControl(''),\r\n city: new FormControl('', [Validators.required, Validators.pattern('^[a-zA-Z \\-\\']+')]),\r\n state: new FormControl('', [Validators.required, Validators.pattern('^[a-zA-Z \\-\\']+')]),\r\n zipcode: new FormControl('', Validators.required),\r\n })\r\n this.achForm = new FormGroup({\r\n accNumber: new FormControl('', Validators.required),\r\n accType: new FormControl('', Validators.required),\r\n routing: new FormControl('', Validators.required),\r\n accHolderName: new FormControl('', Validators.required),\r\n });\r\n\r\n this.achVerifyForm = new FormGroup({\r\n firstDeposit: new FormControl('', Validators.required),\r\n secondDeposit: new FormControl('', Validators.required),\r\n });\r\n if (this.isUpdateCard || this.isUpdateAch) {\r\n this.getCardEdit();\r\n }\r\n this.getClientKey();\r\n this.getBillingList();\r\n //this.editCards();\r\n }\r\n\r\n ngOnChanges() {\r\n if (this.isUpdateCard || this.isUpdateAch) {\r\n this.getCardEdit();\r\n }\r\n\r\n }\r\n ngAfterViewInit() {\r\n this.createCreditCardForm();\r\n }\r\n\r\n handleTabOnChange(value: string) {\r\n this.selectedBillingTab = value;\r\n if (value == 'credit-card') {\r\n this.creditCardForm.reset();\r\n this.isCreditButton = true;\r\n this.isAchButton = false;\r\n setTimeout(() => {\r\n this.createCreditCardForm()\r\n }, 1000)\r\n }\r\n else if (value == 'ach') {\r\n if (!this.isUpdateAch) {\r\n this.achForm.reset();\r\n }\r\n this.isAchButton = true;\r\n this.isCreditButton = false;\r\n }\r\n else if (value == 'billing-history') {\r\n this.isAchButton = false;\r\n this.isCreditButton = false;\r\n }\r\n }\r\n\r\n //create stripe credit card form for creditcard\r\n createCreditCardForm() {\r\n if (this.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n this.stripeKey = contractorEnvironment.stripeKey;\r\n }\r\n if (this.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n this.stripeKey = channelEnvironment.stripeKey;\r\n }\r\n if (this.portalName === ROLE_CONSTANTS.MDU) {\r\n this.stripeKey = mduEnvironment.stripeKey;\r\n }\r\n //loadStripe.setLoadParameters({ advancedFraudSignals: false })\r\n this.stripe = Stripe(this.stripeKey);\r\n //this.stripe = await loadStripe('pk_test_MLqe6uLxvPk209PiEgblk9oq00uyn3cgbJ');\r\n this.elements = this.stripe.elements();\r\n let formClasses = {\r\n base: 'width_100-percent p10 background-color_white-secondary border_transparent_01 outline_none line-height_14 border-radius_5 font-size_13',\r\n invalid: 'error',\r\n }\r\n let style = {\r\n base: {\r\n '::placeholder': {\r\n color: '#A5A5A5',\r\n },\r\n }\r\n }\r\n this.card = this.elements.create('cardNumber', { classes: formClasses, style: style, placeholder: 'XXXX-XXXX-XXXX-2986' });\r\n this.card.mount(\"#cnumber\");\r\n this.card = this.elements.create('cardCvc', { classes: formClasses, style: style, placeholder: 'XXX' });\r\n this.card.mount(\"#cvc\");\r\n this.card = this.elements.create('cardExpiry', { classes: formClasses, style: style, placeholder: '00 / 00' });\r\n this.card.mount(\"#cexpiry\");\r\n // this.card = this.elements.create('postalCode', { classes: formClasses });\r\n // this.card.mount(\"#postalcode\");\r\n this.creditCardEventHandling();\r\n }\r\n\r\n /* event handing for creditcard fields*/\r\n creditCardEventHandling() {\r\n this.elements.getElement('cardNumber').on('change', (event) => {\r\n var displayError = document.getElementById('number-card-error');\r\n console.log(event)\r\n if (event.error) {\r\n displayError.textContent = event.error.message;\r\n } else {\r\n displayError.textContent = '';\r\n this.cardNumberValid = true;\r\n }\r\n });\r\n\r\n this.elements.getElement('cardCvc').on('change', (event) => {\r\n var displayError = document.getElementById('cvc-card-error');\r\n if (event.error) {\r\n displayError.textContent = event.error.message;\r\n } else {\r\n displayError.textContent = '';\r\n this.cvcValid = true;\r\n }\r\n });\r\n\r\n this.elements.getElement('cardExpiry').on('change', (event) => {\r\n var displayError = document.getElementById('expiry-card-error');\r\n if (event.error) {\r\n displayError.textContent = event.error.message;\r\n } else {\r\n displayError.textContent = '';\r\n this.cardExpiryValid = true;\r\n }\r\n });\r\n\r\n // this.elements.getElement('postalCode').on('change', (event) => {\r\n // var displayError = document.getElementById('postal-card-error');\r\n // if (event.error) {\r\n // displayError.textContent = event.error.message;\r\n // } else {\r\n // displayError.textContent = '';\r\n // this.postalCodeValid = true;\r\n // }\r\n // });\r\n\r\n }\r\n\r\n /*Validating the credit card details*/\r\n validateCreditCardForm() {\r\n if (this.isUpdateCard) {\r\n if (this.editcreditCardForm.valid && this.billingAddressForm.valid) {\r\n this.updateCreditCard()\r\n }\r\n else {\r\n this.editcreditCardForm.markAllAsTouched();\r\n this.billingAddressForm.markAllAsTouched();\r\n this.helperService.scrollToFirstInvalidControl(this.editcreditCardForm, this.elementRef.nativeElement);\r\n\r\n }\r\n }\r\n else {\r\n if (this.creditCardForm.valid && this.cardNumberValid && this.cvcValid && this.cardExpiryValid && this.billingAddressForm.valid) {\r\n if (this.customerKey) {\r\n this.submitCreditCard();\r\n }\r\n else {\r\n this.helperService.showToaster(ToasterType.ERROR, 'User key not found');\r\n }\r\n }\r\n else {\r\n this.creditCardForm.markAllAsTouched();\r\n this.billingAddressForm.markAllAsTouched();\r\n this.helperService.scrollToFirstInvalidControl(this.creditCardForm, this.elementRef.nativeElement);\r\n let Errorclasses = {\r\n empty: 'error'\r\n }\r\n if (!this.cardNumberValid) {\r\n this.elements.getElement('cardNumber').update({ classes: Errorclasses });\r\n let displayError = document.getElementById('number-card-error');\r\n displayError.textContent = 'Required'\r\n }\r\n if (!this.cvcValid) {\r\n this.elements.getElement('cardCvc').update({ classes: Errorclasses });\r\n let displayError = document.getElementById('cvc-card-error');\r\n displayError.textContent = 'Required'\r\n }\r\n if (!this.cardExpiryValid) {\r\n this.elements.getElement('cardExpiry').update({ classes: Errorclasses });\r\n let displayError = document.getElementById('expiry-card-error');\r\n displayError.textContent = 'Required'\r\n }\r\n // if (!this.postalCodeValid) {\r\n // this.elements.getElement('postalCode').update({ classes: Errorclasses });\r\n // let displayError = document.getElementById('postal-card-error');\r\n // displayError.textContent = 'Required'\r\n // }\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n //get client Key for creditcard\r\n getClientKey() {\r\n this.sharedService.getCustomerKey().subscribe(res => {\r\n if (res.responseData) {\r\n this.customerKey = res.responseData.clientSecret;\r\n //this.submitCreditCard();\r\n }\r\n }, err => {\r\n // let message= err?err.error.statusInfo:'Client S'\r\n //this.helperService.showToaster(ToasterType.ERROR, err.error.statusInfo);\r\n })\r\n }\r\n\r\n //submitting the creditcard details for stripe account\r\n submitCreditCard() {\r\n this.isLoading = true;\r\n const name = this.creditCardForm.get('cardName').value;\r\n if (this.customerKey) {\r\n this.stripe.confirmCardSetup(this.customerKey, {\r\n payment_method: {\r\n card: this.card,\r\n billing_details: {\r\n name: name,\r\n }\r\n },\r\n }).then((result) => {\r\n if (result) {\r\n console.log(result);\r\n this.sendToken(result);\r\n } else if (result.error) {\r\n console.log(result.error.message);\r\n const message = this.helperService.handleAPIErrors(result.error.message);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n this.isLoading = false;\r\n }\r\n }).catch(error => { console.log(error) });\r\n }\r\n else {\r\n this.isLoading = false;\r\n const message = 'Internal error has been occured .Please try again later';\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n\r\n }\r\n\r\n\r\n sendToken(data) {\r\n let queryparams = {\r\n paymentMethodKey: data.setupIntent.payment_method,\r\n address: this.billingAddressForm.value,\r\n }\r\n this.sharedService.sendCreditCardToken(queryparams).subscribe((res: successResponse) => {\r\n this.helperService.showToaster(ToasterType.SUCCESS, res.responseData);\r\n this.emitCloseModal.emit();\r\n this.isLoading = false;\r\n\r\n }, err => {\r\n this.helperService.showToaster(ToasterType.ERROR, 'Something went wrong');\r\n this.isLoading = false;\r\n })\r\n }\r\n\r\n /*submitting the ach detaisl*/\r\n validateAchForm() {\r\n if (this.achForm.valid) {\r\n this.isUpdateAch ? this.updateAch() : this.submitAchCard();\r\n }\r\n else {\r\n this.achForm.markAllAsTouched();\r\n this.helperService.scrollToFirstInvalidControl(this.achForm, this.elementRef.nativeElement);\r\n\r\n }\r\n }\r\n\r\n submitAchCard() {\r\n this.isLoading = true;\r\n const bankAccountData = {\r\n country: 'us',\r\n currency: 'usd',\r\n account_number: this.achForm.get('accNumber').value,\r\n account_holder_type: this.achForm.get('accType').value,\r\n routing_number: this.achForm.get('routing').value,\r\n account_holder_name: this.achForm.get('accHolderName').value,\r\n };\r\n this.stripe.createToken('bank_account', bankAccountData).then((result) => {\r\n if (result.token) {\r\n console.log(result.token)\r\n const successmessage = result.token.id;\r\n //this.helperService.showToaster(ToasterType.SUCCESS, successmessage);\r\n this.sendAchToken(successmessage);\r\n } else if (result.error) {\r\n // Error creating the token\r\n console.log(result.error.message);\r\n const message = result.error.message;\r\n //this.helperService.handleAPIErrors(result.error.message);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n this.isLoading = false;\r\n }\r\n });\r\n }\r\n\r\n sendAchToken(data) {\r\n let queryparams = {\r\n accountToken: data\r\n }\r\n this.sharedService.sendAchToken(queryparams).subscribe(res => {\r\n this.helperService.showToaster(ToasterType.SUCCESS, res.responseData);\r\n this.emitCloseModal.emit();\r\n this.isLoading = false;\r\n }, err => {\r\n this.helperService.showToaster(ToasterType.ERROR, 'Something went wrong');\r\n this.isLoading = false;\r\n })\r\n\r\n }\r\n\r\n\r\n //validate AChverifyForm\r\n validateAchVerificationForm() {\r\n if (this.achVerifyForm.valid) {\r\n this.submitAchVerification();\r\n }\r\n else {\r\n this.achVerifyForm.markAllAsTouched();\r\n this.helperService.scrollToFirstInvalidControl(this.achVerifyForm, this.elementRef.nativeElement);\r\n }\r\n }\r\n\r\n submitAchVerification() {\r\n this.isLoading = true;\r\n let queryparams = {\r\n paymentMethodId: this.storeAchDetails.db_id,\r\n firstDeposit: this.achVerifyForm.get('firstDeposit').value,\r\n secondDeposit: this.achVerifyForm.get('secondDeposit').value\r\n }\r\n this.sharedService.verifyAch(queryparams).subscribe(res => {\r\n this.helperService.showToaster(ToasterType.SUCCESS, res.responseData);\r\n this.emitCloseModal.emit();\r\n this.isLoading = false;\r\n }, err => {\r\n this.helperService.showToaster(ToasterType.ERROR, err.error.statusInfo);\r\n this.isLoading = false;\r\n })\r\n }\r\n\r\n\r\n // get the creditcard details\r\n getCardEdit() {\r\n let data = this.cardDetails.some(v => v.type == \"card\")\r\n data ? this.handleTabOnChange('credit-card') : this.handleTabOnChange('ach')\r\n this.storeAchDetails = \"\";\r\n this.storeAchDetails = \"\";\r\n console.log(this.cardDetails);\r\n this.cardDetails.forEach(card => {\r\n if (card.type == 'card') {\r\n card.is_default ? this.isCreditCardPrimary = true : this.isCreditCardPrimary = false;\r\n this.storeCardDetails = card;\r\n this.editCards(card);\r\n }\r\n else if (card.type == \"account\") {\r\n card.is_default ? this.isAccountPrimary = true : this.isAccountPrimary = false;\r\n this.storeAchDetails = card;\r\n this.storeAchDetails.verified == 'verified' ? this.isAchVerified = true : this.isAchVerified = false;\r\n this.editAch(card);\r\n }\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n //set the stored values to the form to update\r\n editCards(data) {\r\n\r\n this.editcreditCardForm.patchValue({\r\n editcardName: data.name,\r\n editcardNumber: data.card_number,\r\n editcardCvc: data.security_code,\r\n editcardExipry: '',\r\n editcardZipCode: data.postal_code,\r\n });\r\n\r\n let M = data.exp_month;\r\n let M1 = moment(M, \"MM\");\r\n let M2 = M1.format('MM')\r\n let Y = data.exp_year;\r\n let Y1 = moment(Y, \"YYYY\");\r\n let Y2 = Y1.format('YY')\r\n let fullyear = (M2 + Y2).toString()\r\n console.log(Y2);\r\n this.handleFormatExpiry(fullyear);\r\n\r\n\r\n this.billingAddressForm.patchValue({\r\n address: data.address.address,\r\n unitAptNo: data.address.unitAptNo,\r\n city: data.address.city,\r\n state: data.address.state,\r\n zipcode: data.address.zipcode,\r\n })\r\n }\r\n\r\n editAch(data) {\r\n this.achForm.patchValue({\r\n accNumber: data.account_number,\r\n accType: data.account_holder_type,\r\n routing: data.routing_number,\r\n accHolderName: data.account_holder_name,\r\n });\r\n this.achForm.controls['accNumber'].disable();\r\n this.achForm.controls['routing'].disable();\r\n }\r\n\r\n handleFormatExpiry(phoneNumber: any) {\r\n console.log(phoneNumber)\r\n const number = this.helperService.handleFormatExpiry(phoneNumber);\r\n this.editcreditCardForm.patchValue({\r\n editcardExpiry: number\r\n });\r\n }\r\n handleFormatAmount(amount: any, field) {\r\n const number = this.helperService.validateAmount(amount);\r\n if (field == 'firstfield') {\r\n this.achVerifyForm.patchValue({\r\n firstDeposit: number\r\n });\r\n }\r\n else {\r\n this.achVerifyForm.patchValue({\r\n secondDeposit: number\r\n });\r\n }\r\n }\r\n //updating the ach and credit card\r\n updateCreditCard() {\r\n let date = new Date();\r\n let currentyear = date.getFullYear();\r\n let givenyear = this.editcreditCardForm.get('editcardExpiry').value.split(\"/\");\r\n let year = moment(givenyear[1], \"YY\");\r\n let fullyear = year.format('YYYY');\r\n let updateaddress = this.billingAddressForm.value;\r\n updateaddress.addressId = this.storeCardDetails.address.addressId\r\n\r\n this.isLoading = true;\r\n const creditCardData = {\r\n dbId: this.storeCardDetails.db_id,\r\n expierMonth: givenyear[0],\r\n expierYear: fullyear,\r\n address: updateaddress\r\n };\r\n this.sharedService.updateCreditCard(creditCardData).subscribe((result) => {\r\n this.helperService.showToaster(ToasterType.SUCCESS, result['responseData']);\r\n this.emitCloseModal.emit();\r\n\r\n this.isLoading = false;\r\n }, error => {\r\n let err = error.statusInfo ? error.statusInfo : 'Error';\r\n this.helperService.showToaster(ToasterType.ERROR, err);\r\n this.isLoading = false;\r\n });\r\n }\r\n updateAch() {\r\n this.isLoading = true;\r\n const bankAccountData = {\r\n dbId: this.storeAchDetails.db_id,\r\n accountHolderType: this.achForm.get('accType').value,\r\n accountHolderName: this.achForm.get('accHolderName').value,\r\n };\r\n this.sharedService.updateAch(bankAccountData).subscribe((result) => {\r\n this.helperService.showToaster(ToasterType.SUCCESS, result['responseData']);\r\n this.emitCloseModal.emit();\r\n this.isLoading = false;\r\n }, error => {\r\n //let err = error.statusInfo;\r\n this.helperService.showToaster(ToasterType.ERROR, 'Error');\r\n this.isLoading = false;\r\n });\r\n }\r\n\r\n getBillingList() {\r\n this.isBillingTabLoading = true;\r\n this.sharedService.getBillingList().subscribe(\r\n (response: BillingListResponse) => {\r\n this.billingList = response && response.billingList;\r\n this.isBillingTabLoading = false;\r\n }, (error) => {\r\n this.isBillingTabLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n }\r\n\r\n handleConformation(operation, card) {\r\n if (operation == 'removecard') {\r\n if (card == 'CARD') {\r\n this.confirmationModalLine1Content = 'Do you want to remove Credit Card information?';\r\n this.operation = operation;\r\n this.cardType = card;\r\n } else if (card == 'ACH') {\r\n this.confirmationModalLine1Content = 'Do you want to remove ACH information?';\r\n this.operation = operation;\r\n this.cardType = card;\r\n }\r\n this.toggleConfirmationModal();\r\n }\r\n else if (operation == 'makecardprimary') {\r\n if (card == 'CARD') {\r\n this.confirmationModalLine1Content = 'Do you want to make credit card as your primary funding source?';\r\n this.operation = operation;\r\n this.cardType = card;\r\n } else if (card == 'ACH') {\r\n this.confirmationModalLine1Content = 'Do you want to make ACH as your primary funding source?';\r\n this.operation = operation;\r\n this.cardType = card;\r\n }\r\n this.toggleConfirmationModal();\r\n }\r\n else if (operation == 'verifyaccount') {\r\n this.isVerificationModal = true;\r\n }\r\n }\r\n\r\n handleConfirmationModalEmitter() {\r\n if (this.operation == 'removecard') {\r\n this.removeCard(this.cardType)\r\n }\r\n else if (this.operation = 'makecardprimary') {\r\n this.makeCardPrimary(this.cardType)\r\n }\r\n\r\n }\r\n\r\n removeCard(type: string) {\r\n this.isPrimaryActionBtnLoading = true;\r\n const queryParam = {\r\n paymentMethodId: ''\r\n };\r\n if (type == \"ACH\") {\r\n queryParam.paymentMethodId = this.storeAchDetails.db_id;\r\n }\r\n else if (type == \"CARD\") {\r\n queryParam.paymentMethodId = this.storeCardDetails.db_id;\r\n }\r\n\r\n //this.isBillingTabLoading = true;\r\n this.sharedService.deleteBillingInfo(queryParam).subscribe(\r\n (response) => {\r\n const message = response['responseData'];\r\n this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n this.hideResetForm(type);\r\n this.toggleConfirmationModal();\r\n // this.checkBillingInformation();\r\n this.isPrimaryActionBtnLoading = false;\r\n }, (error) => {\r\n //this.isBillingTabLoading = false;\r\n this.isPrimaryActionBtnLoading = false;\r\n // this.hideResetForm(type);\r\n // this.checkBillingInformation();\r\n this.toggleConfirmationModal();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n hideResetForm(data) {\r\n if (data == 'CARD') {\r\n this.isUpdateCard = false;\r\n this.handleTabOnChange('credit-card');\r\n this.billingAddressForm.reset();\r\n }\r\n else {\r\n this.isUpdateAch = false;\r\n this.achForm.controls['accNumber'].enable();\r\n this.achForm.controls['routing'].enable();\r\n this.handleTabOnChange('ach')\r\n }\r\n\r\n }\r\n\r\n\r\n makeCardPrimary(type) {\r\n this.isPrimaryActionBtnLoading = true;\r\n const queryParam = {\r\n paymentMethodId: ''\r\n };\r\n if (type == \"ACH\") {\r\n queryParam.paymentMethodId = this.storeAchDetails.db_id;\r\n }\r\n else if (type == \"CARD\") {\r\n queryParam.paymentMethodId = this.storeCardDetails.db_id;\r\n }\r\n\r\n //this.isBillingTabLoading = true;\r\n this.sharedService.makeDefaultPayment(queryParam).subscribe(\r\n (response) => {\r\n const message = response.responseData;\r\n this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n this.checkBillingInformation();\r\n this.toggleConfirmationModal();\r\n //this.hideResetForm(type);\r\n // this.checkBillingInformation();\r\n this.isPrimaryActionBtnLoading = false;\r\n\r\n }, (error) => {\r\n //this.isBillingTabLoading = false;\r\n this.isPrimaryActionBtnLoading = false;\r\n\r\n //this.hideResetForm(type);\r\n // this.checkBillingInformation();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n checkBillingInformation() {\r\n this.sharedService.getBillingDetails().subscribe((result) => {\r\n this.cardDetails = result.responseData;\r\n this.getCardEdit()\r\n // this.checkBillingValidity(this.billingDetails);\r\n })\r\n }\r\n\r\n // checkBillingValidity(data) {\r\n // data.forEach(card => {\r\n // if (card.type == \"card\") {\r\n // this.isUpdateCard = true;\r\n // }\r\n // else if (card.type == \"account\") {\r\n // this.isUpdateAch = true;\r\n // }\r\n // });\r\n // }\r\n\r\n handlePlacesAutoComplete(element: ElementRef, type: string, index?: number) {\r\n this.helperService.handleAddress(element, type, index);\r\n const addressListener = this.helperService.setListenerForAddressObject().subscribe(\r\n (response: any) => {\r\n if (response.type === 'billing-address') {\r\n this.billingAddressForm.patchValue({\r\n address: response.street,\r\n city: response.city,\r\n state: response.state,\r\n zipcode: response.zipcode\r\n });\r\n }\r\n addressListener.unsubscribe();\r\n }, (error) => {\r\n addressListener.unsubscribe();\r\n }\r\n );\r\n\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.spinner {\\n /* Spinner size and color */\\n width: 1.4rem;\\n height: 1.4rem;\\n border-top-color: #ffffff;\\n border-left-color: #ffffff;\\n /* Additional spinner styles */\\n -webkit-animation: spinner 400ms linear infinite;\\n animation: spinner 400ms linear infinite;\\n border-bottom-color: transparent;\\n border-right-color: transparent;\\n border-style: solid;\\n border-width: 2px;\\n border-radius: 50%;\\n box-sizing: border-box;\\n display: inline-block;\\n vertical-align: middle;\\n}\\n/* Animation styles */\\n@-webkit-keyframes spinner {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n@keyframes spinner {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYnV0dG9uL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxidXR0b25cXGJ1dHRvbi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYnV0dG9uL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXHN0eWxlc2hlZXRzXFxfdmFyaWFibGVzLnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRGtDQTtFQUNJLDJCQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSx5QkMzQmtCO0VENEJsQiwwQkM1QmtCO0VEOEJsQiw4QkFBQTtFQUNBLGdEQUFBO1VBQUEsd0NBQUE7RUFDQSxnQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0FFaENKO0FGbUNBLHFCQUFBO0FBQ0k7RUFDQTtJQUFLLCtCQUFBO1lBQUEsdUJBQUE7RUUvQlA7RUZnQ0U7SUFBTyxpQ0FBQTtZQUFBLHlCQUFBO0VFN0JUO0FBQ0Y7QUYwQkk7RUFDQTtJQUFLLCtCQUFBO1lBQUEsdUJBQUE7RUUvQlA7RUZnQ0U7SUFBTyxpQ0FBQTtZQUFBLHlCQUFBO0VFN0JUO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCAnc3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuLy8gQGtleWZyYW1lcyBsb2FkZXItYW5pbWF0ZSB7XHJcbi8vICAgICAwJSB7XHJcbi8vICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbi8vICAgICB9XHJcbi8vICAgICA1MCUge1xyXG4vLyAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbi8vICAgICAgICAgLy8gb3BhY2l0eTogLjM1O1xyXG4vLyAgICAgfVxyXG4vLyAgICAgMTAwJSB7XHJcbi8vICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuLy8gICAgIH1cclxuLy8gfVxyXG5cclxuLy8gQGtleWZyYW1lcyBidG4tZG90LWJsaW5rIHtcclxuLy8gICAgIDAlIHtcclxuLy8gICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbi8vICAgICAgIG9wYWNpdHk6IC4yO1xyXG4vLyAgICAgfVxyXG4gIFxyXG4vLyAgICAgNTAlIHtcclxuLy8gICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbi8vICAgICAgIG9wYWNpdHk6IDE7XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgMTAwJSB7XHJcbi8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbi8vICAgICAgICAgb3BhY2l0eTogLjI7XHJcbi8vICAgICB9XHJcbi8vICAgfVxyXG5cclxuXHJcblxyXG4uc3Bpbm5lciB7XHJcbiAgICAvKiBTcGlubmVyIHNpemUgYW5kIGNvbG9yICovXHJcbiAgICB3aWR0aDogMS40cmVtO1xyXG4gICAgaGVpZ2h0OiAxLjRyZW07XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICBcclxuICAgIC8qIEFkZGl0aW9uYWwgc3Bpbm5lciBzdHlsZXMgKi9cclxuICAgIGFuaW1hdGlvbjogc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7ICBcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gc3R5bGVzICovXHJcbiAgICBAa2V5ZnJhbWVzIHNwaW5uZXIge1xyXG4gICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cclxufVxyXG5cclxuXHJcbi8vIC5sb2FkZXItc3ltYm9sIHtcclxuLy8gXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbi8vIFx0d2lkdGg6IDFyZW07XHJcbi8vIFx0aGVpZ2h0OiAxcmVtO1xyXG4vLyAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuLy8gICAgIGFuaW1hdGlvbjogYnRuLWRvdC1ibGluayBpbmZpbml0ZSBsaW5lYXIgMXM7XHJcbi8vICAgICAvKipcclxuLy8gICAgICogVGhpcyBtYWtlcyBzdXJlIHRoYXQgdGhlIHN0YXJ0aW5nIHN0eWxlIChvcGFjaXR5OiAuMilcclxuLy8gICAgICogb2YgdGhlIGFuaW1hdGlvbiBpcyBhcHBsaWVkIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHN0YXJ0cy5cclxuLy8gICAgICogT3RoZXJ3aXNlIHdlIHdvdWxkIHNlZSBhIHNob3J0IGZsYXNoIG9yIHdvdWxkIGhhdmVcclxuLy8gICAgICogdG8gc2V0IHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgdGhlIGRvdHMgdG8gdGhlIHNhbWVcclxuLy8gICAgICogYXMgdGhlIGFuaW1hdGlvbi4gU2FtZSBhcHBsaWVzIGZvciB0aGUgZW5kaW5nIHN0eWxlcy5cclxuLy8gICAgICovXHJcbi8vICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4vLyB9XHJcblxyXG4vLyAubG9hZGVyLXN5bWJvbDpudGgtY2hpbGQoMikge1xyXG4vLyAgICAgLyoqXHJcbi8vICAgICAgKiBTdGFydHMgdGhlIGFuaW1hdGlvbiBvZiB0aGUgdGhpcmQgZG90XHJcbi8vICAgICAgKiB3aXRoIGEgZGVsYXkgb2YgLjJzLCBvdGhlcndpc2UgYWxsIGRvdHNcclxuLy8gICAgICAqIHdvdWxkIGFuaW1hdGUgYXQgdGhlIHNhbWUgdGltZVxyXG4vLyAgICAgICovXHJcbi8vICAgICBhbmltYXRpb24tZGVsYXk6IC4ycztcclxuLy8gICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcbi8vIH1cclxuXHJcbi8vIC5sb2FkZXItc3ltYm9sOm50aC1jaGlsZCgzKSB7XHJcbi8vICAgICAvKipcclxuLy8gICAgICAqIFN0YXJ0cyB0aGUgYW5pbWF0aW9uIG9mIHRoZSB0aGlyZCBkb3RcclxuLy8gICAgICAqIHdpdGggYSBkZWxheSBvZiAuNHMsIG90aGVyd2lzZSBhbGwgZG90c1xyXG4vLyAgICAgICogd291bGQgYW5pbWF0ZSBhdCB0aGUgc2FtZSB0aW1lXHJcbi8vICAgICAgKi9cclxuLy8gICAgIGFuaW1hdGlvbi1kZWxheTogLjRzO1xyXG4vLyAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcclxuLy8gfVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4uc3Bpbm5lciB7XG4gIC8qIFNwaW5uZXIgc2l6ZSBhbmQgY29sb3IgKi9cbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmZmZmO1xuICAvKiBBZGRpdGlvbmFsIHNwaW5uZXIgc3R5bGVzICovXG4gIGFuaW1hdGlvbjogc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIEFuaW1hdGlvbiBzdHlsZXMgKi9cbkBrZXlmcmFtZXMgc3Bpbm5lciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59Il19 */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-button',\r\n templateUrl: './button.component.html',\r\n styleUrls: ['./button.component.scss']\r\n})\r\nexport class ButtonComponent implements OnInit {\r\n\r\n @Input() buttonName: any;\r\n @Input() styleClass: string;\r\n @Input() isButtonDisabled = false;\r\n @Input() toolTip?: any;\r\n @Output() emitHandleButtonAction = new EventEmitter();\r\n @Input() showLoadingSymbol?= false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n console.log(this.buttonName)\r\n if(this.showLoadingSymbol){\r\n this.isButtonDisabled=true;\r\n }\r\n }\r\n\r\n handleButtonAction() {\r\n this.emitHandleButtonAction.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.create-technician-modal_wrapper .modal-content {\\n max-width: 50%;\\n width: 700px;\\n top: 2rem;\\n}\\n.create-technician-modal_wrapper .modal-body label {\\n font-size: 1.4rem;\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n}\\n.create-technician-modal_wrapper .modal-body .info-icon_valid .circle {\\n stroke: #979090;\\n}\\n.create-technician-modal_wrapper .modal-body .info-icon_invalid .circle {\\n stroke: #dd4b4b;\\n}\\n.create-technician-modal_wrapper .modal-body .info-icon_valid .exclamatory {\\n fill: #979090;\\n}\\n.create-technician-modal_wrapper .modal-body .info-icon_invalid .exclamatory {\\n fill: #dd4b4b;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxjaGFuZ2UtcGFzc3dvcmRcXGNoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXHN0eWxlc2hlZXRzXFxfdmFyaWFibGVzLnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRElJO0VBQ0ksY0FBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0FFRFI7QUZRUTtFQUNJLGlCQUFBO0VBQ0EsaUNDbUZtQjtFRGxGbkIsY0NxQlc7QUMzQnZCO0FGU1E7RUFFSSxlQ2lCUztBQ3pCckI7QUZXUTtFQUNJLGVDOEJRO0FDdkNwQjtBRllRO0VBQ0ksYUNTUztBQ25CckI7QUZhUTtFQUNJLGFDc0JRO0FDakNwQiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG4uY3JlYXRlLXRlY2huaWNpYW4tbW9kYWxfd3JhcHBlciB7XHJcblxyXG4gICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgIHdpZHRoOiA3MDBweDtcclxuICAgICAgICB0b3A6IDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsLWJvZHkge1xyXG4gICAgICAgIC8vIG1heC1oZWlnaHQ6IDgwdmg7XHJcbiAgICAgICAgLy8gb3ZlcmZsb3c6IGF1dG87XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmF5LXNlY29uZGFyeTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLWljb25fdmFsaWQgLmNpcmNsZSB7XHJcbiAgICAgICAgICAgIC8vIFtzdHJva2VdPVwiY3JlYXRlTmV3UGFzc3dvcmQuZ2V0KCduZXdQYXNzd29yZCcpLnZhbGlkID8gJyM5NzkwOTAnIDogJyNERDRCNEInXCJcclxuICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3ItZ3JheS10ZXJuYXJ5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmluZm8taWNvbl9pbnZhbGlkIC5jaXJjbGUge1xyXG4gICAgICAgICAgICBzdHJva2U6ICRjb2xvci1yZWQtcHJpbWFyeTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLWljb25fdmFsaWQgLmV4Y2xhbWF0b3J5IHtcclxuICAgICAgICAgICAgZmlsbDogJGNvbG9yLWdyYXktdGVybmFyeTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLWljb25faW52YWxpZCAuZXhjbGFtYXRvcnkge1xyXG4gICAgICAgICAgICBmaWxsOiAkY29sb3ItcmVkLXByaW1hcnk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbn0iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4uY3JlYXRlLXRlY2huaWNpYW4tbW9kYWxfd3JhcHBlciAubW9kYWwtY29udGVudCB7XG4gIG1heC13aWR0aDogNTAlO1xuICB3aWR0aDogNzAwcHg7XG4gIHRvcDogMnJlbTtcbn1cbi5jcmVhdGUtdGVjaG5pY2lhbi1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1Yztcbn1cbi5jcmVhdGUtdGVjaG5pY2lhbi1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IC5pbmZvLWljb25fdmFsaWQgLmNpcmNsZSB7XG4gIHN0cm9rZTogIzk3OTA5MDtcbn1cbi5jcmVhdGUtdGVjaG5pY2lhbi1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IC5pbmZvLWljb25faW52YWxpZCAuY2lyY2xlIHtcbiAgc3Ryb2tlOiAjZGQ0YjRiO1xufVxuLmNyZWF0ZS10ZWNobmljaWFuLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWJvZHkgLmluZm8taWNvbl92YWxpZCAuZXhjbGFtYXRvcnkge1xuICBmaWxsOiAjOTc5MDkwO1xufVxuLmNyZWF0ZS10ZWNobmljaWFuLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWJvZHkgLmluZm8taWNvbl9pbnZhbGlkIC5leGNsYW1hdG9yeSB7XG4gIGZpbGw6ICNkZDRiNGI7XG59Il19 */\"","import { Component, OnInit, EventEmitter, Output, Input } from '@angular/core';\r\nimport { FormArray, FormGroup, Validators, FormControl, FormBuilder } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Constants\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\n\r\n\r\n@Component({\r\n selector: 'app-change-password',\r\n templateUrl: './change-password.component.html',\r\n styleUrls: ['./change-password.component.scss']\r\n})\r\nexport class ChangePasswordComponent implements OnInit {\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n createNewPassword: FormGroup;\r\n infoModalType = '';\r\n infoModalTitle = '';\r\n isShowConfirmationModal = false;\r\n confirmationModalTitle = '';\r\n isConfirmationModalHasYesOrNoButton = false;\r\n confirmationModalLine1Content: any;\r\n confirmationModalLine2Content: any;\r\n isPasswordBtnLoading: boolean;\r\n reEnterNewPasswordFieldType: string = 'password';\r\n newPasswordFieldType: string = 'password';\r\n oldPasswordFieldType: string = 'password';\r\n constructor(private formBuilder: FormBuilder, private sharedService: SharedService, private helperService: HelperService) { }\r\n\r\n ngOnInit() {\r\n this.createNewPassword = this.formBuilder.group(\r\n {\r\n oldPassword: new FormControl(''),\r\n newPassword: new FormControl('', [Validators.required, this.helperService.validateWithOldPassword('oldPassword'),\r\n Validators.minLength(8),\r\n Validators.maxLength(16),\r\n Validators.pattern(/^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\\s).{8,16}$/)]),\r\n confirmPassword: new FormControl(''),\r\n }, {\r\n validator: this.ConfirmedValidator('newPassword', 'confirmPassword')\r\n });\r\n }\r\n\r\n ConfirmedValidator(newPassword: string, confirmPassword: string) {\r\n return (formGroup: FormGroup) => {\r\n const control = formGroup.get('newPassword');\r\n const matchingControl = formGroup.get('confirmPassword');\r\n if (matchingControl.errors && !matchingControl.errors.confirmedValidator) {\r\n return;\r\n }\r\n if (control.value !== matchingControl.value) {\r\n //console.log('Dsff');\r\n matchingControl.setErrors({ confirmedValidator: true });\r\n } else {\r\n //console.log('DSds');\r\n matchingControl.setErrors(null);\r\n }\r\n };\r\n }\r\n\r\n toggleShowOrHidePassword(field, type: string) {\r\n if (field === 'oldPassword') {\r\n this.oldPasswordFieldType = type;\r\n } else if (field === 'newPassword') {\r\n this.newPasswordFieldType = type;\r\n } else if (field === 'confirmPassword') {\r\n this.reEnterNewPasswordFieldType = type;\r\n }\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n handleModalType(type: string) {\r\n this.infoModalType = type;\r\n if (type === 'password-reset') {\r\n this.handlePasswordReset();\r\n } else if (type === 'confirmation-modal') {\r\n if (this.handleIsChangePasswordFormHasValue()) {\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `Entered information will be lost.`;\r\n this.confirmationModalLine2Content = `Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n } else {\r\n this.closeModal();\r\n }\r\n }\r\n }\r\n\r\n handleIsChangePasswordFormHasValue() {\r\n let flag = false;\r\n if (this.createNewPassword.get('oldPassword').value ||\r\n this.createNewPassword.get('newPassword').value ||\r\n this.createNewPassword.get('confirmPassword').value) {\r\n flag = true;\r\n }\r\n\r\n return flag;\r\n }\r\n\r\n\r\n // if press reset button\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n\r\n }\r\n handleInfoModalEmitter() {\r\n if (this.infoModalType === 'confirmation-modal') {\r\n this.handleResetFormFields();\r\n this.toggleConfirmationModal();\r\n this.emitCloseModal.emit();\r\n\r\n }\r\n }\r\n handleResetFormFields() {\r\n this.createNewPassword.patchValue({\r\n oldPassword: '',\r\n newPassword: '',\r\n confirmPassword: '',\r\n });\r\n\r\n }\r\n\r\n // if data submitted\r\n handlePasswordReset() {\r\n const payload = this.handlePasswordPayload();\r\n console.log(payload);\r\n // this.isPasswordBtnLoading = true;\r\n this.sharedService.passwordReset(payload).subscribe(\r\n (response) => {\r\n console.log(response);\r\n const message = response['statusInfo'];\r\n // this.router.navigate(['/technicians']);\r\n // this.helperService.setSelectedTab('technicians');\r\n this.handleResetFormFields();\r\n this.closeModal();\r\n this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n }, (error) => {\r\n // this.closeModal();\r\n console.log(error);\r\n // const message = this.helperService.handleAPIErrors(error);\r\n const message = error ? error.error.statusInfo : '';\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handlePasswordPayload() {\r\n const payload: any = {\r\n userName: localStorage.getItem('userName'),\r\n newPassword: this.createNewPassword.value.newPassword,\r\n oldPassword: this.createNewPassword.value.oldPassword,\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n return payload;\r\n }\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n.confirmation-modal_wrapper .modal-content {\\n width: 600px;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n}\\n.confirmation-modal_wrapper .listdata {\\n font-size: 1.4rem;\\n line-height: 2rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxjb25maXJtYXRpb24tbW9kYWxcXGNvbmZpcm1hdGlvbi1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLW1vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQUdJO0VBQ0ksWUFBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSx3Q0FBQTtVQUFBLGdDQUFBO0FDRFI7QURJSTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7QUNGSiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4uY29uZmlybWF0aW9uLW1vZGFsX3dyYXBwZXIge1xyXG5cclxuICAgIC5tb2RhbC1jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogNjAwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIH1cclxuXHJcbiAgICAubGlzdGRhdGF7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xyXG59XHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5jb25maXJtYXRpb24tbW9kYWxfd3JhcHBlciAubW9kYWwtY29udGVudCB7XG4gIHdpZHRoOiA2MDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbi5jb25maXJtYXRpb24tbW9kYWxfd3JhcHBlciAubGlzdGRhdGEge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG59Il19 */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-confirmation-modal',\r\n templateUrl: './confirmation-modal.component.html',\r\n styleUrls: ['./confirmation-modal.component.scss']\r\n})\r\nexport class ConfirmationModalComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() downloadErrorFile = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() line1Content: any;\r\n @Input() line2Content: any;\r\n @Input() line3Content: any;\r\n @Input() line4Content: any;\r\n @Input() count: any;\r\n @Input() hasYesOrNoButtom = false;\r\n @Output() emitHandleButtonAction = new EventEmitter();\r\n @Input() isPrimaryActionBtnLoading = false;\r\n @Input() hasCommentBox = false;\r\n @Input() isEmergencyShutoff = false;\r\n @Input() isScheduleBoard=false;\r\n @Input() isSuccessToasterModal = false;\r\n @Input() isScheduleError = false;\r\n @Input() primaryButtonName = 'Close';\r\n @Input() isForUploadError = false;\r\n @Input() isForSessionTimeout = false;\r\n @Input() isForBoldTitle = false;\r\n @Input() isDisplayLoop = false;\r\n @Input() isScheduledSuccessInfo=false;\r\n @Input() isEmergencySuccessInfo=false;\r\n checkboxText = \"I am authorized to shut-off this equipment\"\r\n commentBox = new FormControl(null, Validators.required);\r\n checkBox = new FormControl(null, Validators.required);\r\n logoutTimeLeft: number = 60;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n if (this.isForSessionTimeout) {\r\n this.handleSessionTimeoutModal();\r\n }\r\n\r\n if(this.isScheduleBoard)\r\n {\r\n this.checkboxText = \"I am authorized to remotely test this equipment\"\r\n }\r\n }\r\n\r\n handleEmergencyShutoff() {\r\n if (this.checkBox && this.checkBox.valid) {\r\n this.checkBox.reset();\r\n } else {\r\n this.checkBox.patchValue('1');\r\n }\r\n }\r\n\r\n handlePrimaryBtnValidation() {\r\n let flag = true;\r\n if (this.hasCommentBox) {\r\n flag = false;\r\n if (this.commentBox.valid) {\r\n flag = true;\r\n }\r\n } else if (this.isEmergencyShutoff) {\r\n flag = false;\r\n if (this.checkBox.valid) {\r\n flag = true;\r\n }\r\n }\r\n\r\n if (flag) {\r\n return 'primary-action_btn font-size_11 min-width_140 cursor_pointer ml10';\r\n } else {\r\n return 'invalid-btn font-size_11 min-width_140 cursor_pointer ml10';\r\n }\r\n }\r\n\r\n handleSessionTimeoutModal() {\r\n this.line1Content = `You will be logged out in ${this.logoutTimeLeft}s due to inactivity.`;\r\n this.line2Content = `Would you like to continue?`;\r\n setInterval(() => {\r\n this.logoutTimeLeft--;\r\n this.line1Content = `You will be logged out in ${this.logoutTimeLeft}s due to inactivity.`;\r\n }, 1000)\r\n }\r\n\r\n closeModal() {\r\n if ( this.isScheduledSuccessInfo || this.isEmergencySuccessInfo) {\r\n this.emitHandleButtonAction.emit();\r\n } else {\r\n this.emitCloseModal.emit();\r\n }\r\n }\r\n\r\n downloadFile() {\r\n this.emitHandleButtonAction.emit();\r\n }\r\n\r\n handleButtonAction() {\r\n this.emitHandleButtonAction.emit(this.commentBox.value);\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.create-contractor-modal_wrapper primary_email {\\n background-color: white !important;\\n}\\n.create-contractor-modal_wrapper .modal-content {\\n max-width: 90%;\\n top: 2rem;\\n}\\n.create-contractor-modal_wrapper .modal-body {\\n max-height: 80vh;\\n display: flex;\\n flex-direction: column;\\n padding: 0rem;\\n}\\n.create-contractor-modal_wrapper .selected-img_wrapper {\\n position: relative;\\n top: 1rem;\\n background: #ffffff;\\n border: 2px solid #dce5ee;\\n /* padding-left: 0.3rem; */\\n border-radius: 10px;\\n height: 10rem;\\n width: 25rem;\\n /* min-width: 20rem; */\\n /* max-width: 20rem; */\\n justify-content: center;\\n}\\n.create-contractor-modal_wrapper .selected-img_wrapper .image-pre-view {\\n max-width: 100%;\\n height: 100%;\\n border-radius: 10px;\\n}\\n.create-contractor-modal_wrapper .remove-logo-btn {\\n padding: 1rem;\\n margin-top: 2rem;\\n align-items: center;\\n /* color: #dd4b4b; */\\n /* font-size: 1.5rem; */\\n cursor: pointer;\\n display: flex;\\n border-radius: 5px;\\n border: 1px solid #efefef;\\n width: 13rem;\\n background-color: #cecece;\\n}\\n.create-contractor-modal_wrapper .company-logo_upload-btn {\\n width: 14rem;\\n display: flex;\\n align-items: center;\\n padding: 0.6rem 1rem;\\n background-color: #cecece;\\n color: #2a3343;\\n border-radius: 0.5rem;\\n cursor: pointer;\\n box-shadow: 0 5px 5px -2px #979090;\\n min-height: 4.7rem;\\n}\\n.create-contractor-modal_wrapper .company-logo_upload-btn .company-logo_name {\\n max-width: 10rem;\\n}\\n.create-contractor-modal_wrapper .personal-info-type_dropdown {\\n width: 10rem;\\n}\\n.create-contractor-modal_wrapper .document-upload_wrapper {\\n width: 27rem;\\n border: 1px solid #cecece;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n padding: 0.6rem 0.9rem;\\n border-radius: 0.5rem;\\n font-size: 1.1rem;\\n text-decoration: underline;\\n}\\n.create-contractor-modal_wrapper .document-upload_wrapper .document_name {\\n width: 100%;\\n}\\n.create-contractor-modal_wrapper .navigation_wrapper .tab-item {\\n width: 10rem;\\n font-size: 1.4rem;\\n padding: 1rem 0.5rem;\\n background-color: #898989;\\n text-align: center;\\n list-style: none;\\n cursor: pointer;\\n color: #e9e9f0;\\n}\\n.create-contractor-modal_wrapper .navigation_wrapper .selected-tab {\\n background-color: #136363;\\n cursor: default;\\n}\\n.create-contractor-modal_wrapper .navigation_wrapper {\\n margin-top: 1rem;\\n}\\n.create-contractor-modal_wrapper .navigation_wrapper .tab-item:not(:last-child) {\\n margin-right: 1px;\\n}\\n.create-contractor-modal_wrapper .navigation_wrapper .tab-item:first-child {\\n border-top-left-radius: 3px;\\n}\\n.create-contractor-modal_wrapper .navigation_wrapper .tab-item:last-child {\\n border-top-right-radius: 3px;\\n}\\n.create-contractor-modal_wrapper .current-tab {\\n color: #71ceca;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY3JlYXRlLWNvbnRyYWN0b3IvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXGNyZWF0ZS1jb250cmFjdG9yXFxjcmVhdGUtY29udHJhY3Rvci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY3JlYXRlLWNvbnRyYWN0b3IvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY3JlYXRlLWNvbnRyYWN0b3IvY3JlYXRlLWNvbnRyYWN0b3IuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRElFO0VBQ0Usa0NBQUE7QUVESjtBRkdFO0VBQ0UsY0FBQTtFQUNBLFNBQUE7QUVESjtBRklFO0VBQ0UsZ0JBQUE7RUFFQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxhQUFBO0FFSEo7QUZNRTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RUFDQSwwQkFBQTtFQUNBLG1CQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxzQkFBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7QUVKSjtBRk1JO0VBQ0UsZUFBQTtFQUNBLFlBQUE7RUFDQSxtQkFBQTtBRUpOO0FGT0U7RUFhRSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0EsdUJBQUE7RUFDQSxlQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxZQUFBO0VBQ0EseUJDZnVCO0FDRjNCO0FGb0JFO0VBQ0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUVBLG9CQUFBO0VBQ0EseUJDeEJ1QjtFRHlCdkIsY0NsRHdCO0VEbUR4QixxQkFBQTtFQUNBLGVBQUE7RUFDQSxrQ0FBQTtFQUNBLGtCQUFBO0FFbkJKO0FGcUJJO0VBQ0UsZ0JBQUE7QUVuQk47QUZ1QkU7RUFDRSxZQUFBO0FFckJKO0FGd0JFO0VBQ0UsWUFBQTtFQUNBLHlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0VBQ0EsaUJBQUE7RUFDQSwwQkFBQTtBRXRCSjtBRndCSTtFQUNFLFdBQUE7QUV0Qk47QUYyQkk7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLHlCQ3hFZTtFRHlFZixrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGNDOURxQjtBQ3FDM0I7QUY0Qkk7RUFDRSx5QkNsRnFCO0VEbUZyQixlQUFBO0FFMUJOO0FGOEJFO0VBQ0UsZ0JBQUE7QUU1Qko7QUY4Qkk7RUFDRSxpQkFBQTtBRTVCTjtBRitCSTtFQUNFLDJCQUFBO0FFN0JOO0FGZ0NJO0VBQ0UsNEJBQUE7QUU5Qk47QUZrQ0U7RUFDRSxjQzFIc0I7QUMwRjFCIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY3JlYXRlLWNvbnRyYWN0b3IvY3JlYXRlLWNvbnRyYWN0b3IuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0IFwic3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzXCI7XHJcblxyXG4uY3JlYXRlLWNvbnRyYWN0b3ItbW9kYWxfd3JhcHBlciB7XHJcbiAgcHJpbWFyeV9lbWFpbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAubW9kYWwtY29udGVudCB7XHJcbiAgICBtYXgtd2lkdGg6IDkwJTtcclxuICAgIHRvcDogMnJlbTtcclxuICB9XHJcblxyXG4gIC5tb2RhbC1ib2R5IHtcclxuICAgIG1heC1oZWlnaHQ6IDgwdmg7XHJcbiAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBwYWRkaW5nOiAwcmVtO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdGVkLWltZ193cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMXJlbTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZGNlNWVlO1xyXG4gICAgLyogcGFkZGluZy1sZWZ0OiAwLjNyZW07ICovXHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgaGVpZ2h0OiAxMHJlbTtcclxuICAgIHdpZHRoOiAyNXJlbTtcclxuICAgIC8qIG1pbi13aWR0aDogMjByZW07ICovXHJcbiAgICAvKiBtYXgtd2lkdGg6IDIwcmVtOyAqL1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgLmltYWdlLXByZS12aWV3IHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5yZW1vdmUtbG9nby1idG4ge1xyXG4gICAgLy8gLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICAgIC8vIC8vIGJvcmRlci1yYWRpdXM6IDFyZW07XHJcbiAgICAvLyBwYWRkaW5nOiAxLjVyZW07XHJcbiAgICAvLyBtYXJnaW4tbGVmdDogMjByZW07XHJcbiAgICAvLyBtYXJnaW4tdG9wOjhyZW07XHJcbiAgICAvLyAvLyBkaXNwbGF5OiBmbGV4O1xyXG4gICAgLy8gYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC8vIC8vIHdpZHRoOiAxNHJlbTtcclxuICAgIC8vIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICAvLyBjb2xvcjogcmdiYSgyMjEsIDc1LCA3NSwgMSk7XHJcbiAgICAvLyBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIC8vIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC8qIGNvbG9yOiAjZGQ0YjRiOyAqL1xyXG4gICAgLyogZm9udC1zaXplOiAxLjVyZW07ICovXHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiKDIzOSwgMjM5LCAyMzkpO1xyXG4gICAgd2lkdGg6IDEzcmVtO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICB9XHJcblxyXG4gIC5jb21wYW55LWxvZ29fdXBsb2FkLWJ0biB7XHJcbiAgICB3aWR0aDogMTRyZW07XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC8vIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMC42cmVtIDFyZW07XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5O1xyXG4gICAgY29sb3I6ICRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm94LXNoYWRvdzogMCA1cHggNXB4IC0ycHggJGNvbG9yLWdyYXktdGVybmFyeTtcclxuICAgIG1pbi1oZWlnaHQ6IDQuN3JlbTtcclxuXHJcbiAgICAuY29tcGFueS1sb2dvX25hbWUge1xyXG4gICAgICBtYXgtd2lkdGg6IDEwcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBlcnNvbmFsLWluZm8tdHlwZV9kcm9wZG93biB7XHJcbiAgICB3aWR0aDogMTByZW07XHJcbiAgfVxyXG5cclxuICAuZG9jdW1lbnQtdXBsb2FkX3dyYXBwZXIge1xyXG4gICAgd2lkdGg6IDI3cmVtO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjZyZW0gMC45cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgZm9udC1zaXplOiAxLjFyZW07XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcbiAgICAuZG9jdW1lbnRfbmFtZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdmlnYXRpb25fd3JhcHBlciB7XHJcbiAgICAudGFiLWl0ZW0ge1xyXG4gICAgICB3aWR0aDogMTByZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICBwYWRkaW5nOiAxcmVtIDAuNXJlbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktcHJpbWFyeTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RlZC10YWIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5O1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2aWdhdGlvbl93cmFwcGVyIHtcclxuICAgIG1hcmdpbi10b3A6IDFyZW07XHJcblxyXG4gICAgLnRhYi1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLWl0ZW06Zmlyc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYi1pdGVtOmxhc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmN1cnJlbnQtdGFiIHtcclxuICAgIGNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbiAgfVxyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5jcmVhdGUtY29udHJhY3Rvci1tb2RhbF93cmFwcGVyIHByaW1hcnlfZW1haWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDkwJTtcbiAgdG9wOiAycmVtO1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWJvZHkge1xuICBtYXgtaGVpZ2h0OiA4MHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAwcmVtO1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLnNlbGVjdGVkLWltZ193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNkY2U1ZWU7XG4gIC8qIHBhZGRpbmctbGVmdDogMC4zcmVtOyAqL1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBoZWlnaHQ6IDEwcmVtO1xuICB3aWR0aDogMjVyZW07XG4gIC8qIG1pbi13aWR0aDogMjByZW07ICovXG4gIC8qIG1heC13aWR0aDogMjByZW07ICovXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLnNlbGVjdGVkLWltZ193cmFwcGVyIC5pbWFnZS1wcmUtdmlldyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLnJlbW92ZS1sb2dvLWJ0biB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIGNvbG9yOiAjZGQ0YjRiOyAqL1xuICAvKiBmb250LXNpemU6IDEuNXJlbTsgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG4gIHdpZHRoOiAxM3JlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlY2VjZTtcbn1cbi5jcmVhdGUtY29udHJhY3Rvci1tb2RhbF93cmFwcGVyIC5jb21wYW55LWxvZ29fdXBsb2FkLWJ0biB7XG4gIHdpZHRoOiAxNHJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC42cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWNlY2U7XG4gIGNvbG9yOiAjMmEzMzQzO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCA1cHggNXB4IC0ycHggIzk3OTA5MDtcbiAgbWluLWhlaWdodDogNC43cmVtO1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLmNvbXBhbnktbG9nb191cGxvYWQtYnRuIC5jb21wYW55LWxvZ29fbmFtZSB7XG4gIG1heC13aWR0aDogMTByZW07XG59XG4uY3JlYXRlLWNvbnRyYWN0b3ItbW9kYWxfd3JhcHBlciAucGVyc29uYWwtaW5mby10eXBlX2Ryb3Bkb3duIHtcbiAgd2lkdGg6IDEwcmVtO1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLmRvY3VtZW50LXVwbG9hZF93cmFwcGVyIHtcbiAgd2lkdGg6IDI3cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VjZWNlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC42cmVtIDAuOXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uY3JlYXRlLWNvbnRyYWN0b3ItbW9kYWxfd3JhcHBlciAuZG9jdW1lbnQtdXBsb2FkX3dyYXBwZXIgLmRvY3VtZW50X25hbWUge1xuICB3aWR0aDogMTAwJTtcbn1cbi5jcmVhdGUtY29udHJhY3Rvci1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtIHtcbiAgd2lkdGg6IDEwcmVtO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgcGFkZGluZzogMXJlbSAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM4OTg5ODk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2U5ZTlmMDtcbn1cbi5jcmVhdGUtY29udHJhY3Rvci1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnNlbGVjdGVkLXRhYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMzYzNjM7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jcmVhdGUtY29udHJhY3Rvci1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmNyZWF0ZS1jb250cmFjdG9yLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XG59XG4uY3JlYXRlLWNvbnRyYWN0b3ItbW9kYWxfd3JhcHBlciAubmF2aWdhdGlvbl93cmFwcGVyIC50YWItaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbn1cbi5jcmVhdGUtY29udHJhY3Rvci1tb2RhbF93cmFwcGVyIC5jdXJyZW50LXRhYiB7XG4gIGNvbG9yOiAjNzFjZWNhO1xufSJdfQ== */\"","import { Component, OnInit, ViewChild, AfterViewInit, Input, Output, EventEmitter, ElementRef, QueryList } from '@angular/core';\r\nimport { FormArray, FormGroup, Validators, FormControl } from '@angular/forms';\r\n\r\n// Services\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ChannelSharedService } from 'projects/channel/src/app/shared-channel/services/shared.service';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\n\r\n// Models\r\nimport { CreateContractorResponse, ContractorDetails } from 'src/app/shared/models/contractor.modal';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { CommonSuccessResponse, IsEmailAlreadyExistsResponse } from 'src/app/shared/models/common.model';\r\nimport { BASE_URL_TYPES } from '../../constants/base-url-types.constant';\r\n\r\n@Component({\r\n selector: 'app-create-contractor',\r\n templateUrl: './create-contractor.component.html',\r\n styleUrls: ['./create-contractor.component.scss']\r\n})\r\nexport class CreateContractorComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() editContractorData: ContractorDetails;\r\n @Input() isEdit = false;\r\n @Input() isFromChannel = false;\r\n @Input() modalTitle: string;\r\n @Input() primaryEmail: any;\r\n @Output() emitHandleRefreshPage = new EventEmitter();\r\n @Output() emitHandleConfirmationSuccessModal = new EventEmitter();\r\n // @ViewChild('contractorRegisteredStreetAddress', { static: false }) contractorRegisteredStreetAddress: any;\r\n // @ViewChild('contractorBranchStreetAddress', { static: false }) contractorBranchStreetAddress: QueryList;\r\n createContractor: FormGroup;\r\n companyLogoName: string;\r\n selectedCompanyLogo: File;\r\n isCreateContractorBtnLoading = false;\r\n isShowConfirmationModal = false;\r\n isShowContractorInfoModal = false;\r\n infoModalTitle = '';\r\n infoModalType = '';\r\n createContractorPayload: any;\r\n confirmationModalTitle = '';\r\n isConfirmationModalHasYesOrNoButton = false;\r\n confirmationModalLine1Content: any;\r\n confirmationModalLine2Content: any;\r\n document1Name: string;\r\n selectedDocument1: File;\r\n document2Name: string;\r\n selectedDocument2: File;\r\n inBusinessSinceValues = [];\r\n isCreateContractorFormReseted = false;\r\n commonConstants = COMMON_CONSTANTS;\r\n selectedBillingTab = 'credit-card';\r\n portalName: string;\r\n roleConstants = ROLE_CONSTANTS;\r\n isEmailAlreadyExistLoading = false;\r\n isToggleButtons = false;\r\n prevFormValues;\r\n @ViewChild('selectedImage', { static: false }) selectedImage: ElementRef;\r\n isLogoExist: boolean = false;\r\n logoName: any;\r\n isEnableSubmit: boolean=true;\r\n @Input() isFromdeepLink:boolean=false;\r\n isResendBtnLoading: boolean=false;\r\n isMajorChecked: boolean=true;\r\n isMinorChecked: boolean=true;\r\n isEmailChecked:boolean=true;\r\n isSMSChecked:boolean=true;\r\n alertNotification:any={\r\n majorAlertsEmail:true,\r\nmajorAlertsSms:true,\r\nminorAlertsEmail:false,\r\nminorAlertsSms:true\r\n };\r\n constructor(\r\n private sharedService: SharedService,\r\n private helperService: HelperService,\r\n private channelSharedService: ChannelSharedService,\r\n private activatedRoute: ActivatedRoute,\r\n private elementRef: ElementRef\r\n ) { }\r\n\r\n ngOnInit() {\r\n console.log(this.primaryEmail, this.isFromdeepLink,\"email\");\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n\r\n } else if (data.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n } else if (data.portalName === ROLE_CONSTANTS.MDU) {\r\n\r\n }\r\n }\r\n });\r\n this.handleInBusinessSinceArray();\r\n // {\r\n // value: this.primaryEmail ? this.primaryEmail : '',\r\n // disabled: (this.primaryEmail || this.isEdit) ? true : false,\r\n // },\r\n this.createContractor = new FormGroup(\r\n {\r\n contractorName: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n website: new FormControl(''),\r\n companyLogo: new FormControl(''),\r\n primaryEmail: new FormControl('', [Validators.required, this.helperService.validateIsEmail]),\r\n secondaryEmail: new FormControl('', [this.helperService.validateIsEmail]),\r\n contactPerson: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n dealerType: new FormControl(\r\n {\r\n value: this.portalName === ROLE_CONSTANTS.CONTRACTOR ?\r\n ROLE_CONSTANTS.CONTRACTOR : ROLE_CONSTANTS.MDU,\r\n disabled: this.isEdit ? true : false,\r\n },\r\n Validators.required\r\n ),\r\n phone: new FormArray(\r\n [new FormGroup(\r\n {\r\n // countryCode: new FormControl('', Validators.required),\r\n phoneNumber: new FormControl('', [Validators.required, this.helperService.validatePhoneNumber]),\r\n type: new FormControl('Office', Validators.required)\r\n }\r\n )]\r\n ),\r\n notificatonsStatusModel: new FormGroup(\r\n {\r\n majorAlertsEmail:new FormControl(true),\r\n majorAlertsSms:new FormControl(true),\r\n minorAlertsEmail:new FormControl(true),\r\n minorAlertsSms:new FormControl(true)\r\n }\r\n ),\r\n registeredAddress: new FormGroup(\r\n {\r\n addressLine1: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n addressLine2: new FormControl(''),\r\n city: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n state: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n zipcode: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n placeId: new FormControl(''),\r\n formattedAddress: new FormControl(''),\r\n }\r\n ),\r\n branchAddress: new FormArray(\r\n [new FormGroup(\r\n {\r\n addressLine1: new FormControl(''),\r\n addressLine2: new FormControl(''),\r\n city: new FormControl(''),\r\n state: new FormControl(''),\r\n zipcode: new FormControl(''),\r\n placeId: new FormControl(''),\r\n formattedAddress: new FormControl(''),\r\n }\r\n )]\r\n ),\r\n // creditCard: new FormGroup(\r\n // {\r\n // cardName: new FormControl(''),\r\n // cardNumber: new FormControl(''),\r\n // securityCode: new FormControl(''),\r\n // zipcode: new FormControl('')\r\n // }\r\n // ),\r\n // ach: new FormGroup(\r\n // {\r\n // accHolderName: new FormControl(''),\r\n // accType: new FormControl(''),\r\n // routing: new FormControl(''),\r\n // accNumber: new FormControl('')\r\n // }\r\n // ),\r\n inBusinessSince: new FormControl(''),\r\n noOfTechnicians: new FormControl(''),\r\n // document1: new FormControl(''),\r\n // document2: new FormControl('')\r\n }\r\n );\r\n\r\n if (this.isFromChannel) {\r\n this.createContractor.controls.dealerType.setValidators(Validators.required);\r\n }\r\n\r\n if (this.isEdit && this.editContractorData) {\r\n this.handleAutoFillForm();\r\n }\r\n\r\n if(this.isFromdeepLink)\r\n {\r\n if(this.primaryEmail)\r\n this.transferdeeplinkAutoFillForm();\r\n }\r\n else\r\n {\r\n this.primaryEmail=\"\"\r\n }\r\n\r\n if(!this.isEdit)\r\n {\r\nthis.handlePersonalInfoAddButton('phone')\r\n }\r\n }\r\n\r\n transferdeeplinkAutoFillForm()\r\n {\r\n this.createContractor.patchValue({\r\n contractorName:this.primaryEmail.recipientName,\r\n primaryEmail:this.primaryEmail.email.email\r\n })\r\n }\r\n\r\n handleInBusinessSinceArray() {\r\n for (let index = COMMON_CONSTANTS.IN_BUSINESS_SINCE_START_YEAR;\r\n index <= new Date().getFullYear();\r\n index++) {\r\n this.inBusinessSinceValues.push(index);\r\n }\r\n }\r\n\r\n get phone() {\r\n return this.createContractor.get('phone') as FormArray;\r\n }\r\n\r\n get registeredAddress() {\r\n return this.createContractor.get('registeredAddress') as FormGroup;\r\n }\r\n\r\n get branchAddress() {\r\n return this.createContractor.get('branchAddress') as FormArray;\r\n }\r\n\r\n get creditCard() {\r\n return this.createContractor.get('creditCard') as FormGroup;\r\n }\r\n\r\n get ach() {\r\n return this.createContractor.get('ach') as FormGroup;\r\n }\r\n\r\n get notificatonsStatusModel() {\r\n return this.createContractor.get('notificatonsStatusModel') as FormGroup;\r\n }\r\n\r\n // handleTypeOnChange(value) {\r\n // debugger\r\n // }\r\n\r\n handlePersonalInfoAddButton(type: string, defaultValue?: any) {\r\n // debugger\r\n if (type === 'phone') {\r\n console.log(defaultValue)\r\n this.phone.push(new FormGroup({\r\n // countryCode: new FormControl(\r\n // this.helperService.handleSelectDefaultValueForPhoneCodeDropdown(this.selectedCountryForPhoneCode, 'name'),\r\n // Validators.required\r\n // ),\r\n \r\n phoneNumber: new FormControl(\r\n defaultValue && defaultValue.phoneNumber ? defaultValue.phoneNumber : null,[this.helperService.validatePhoneNumber]\r\n ),\r\n type: new FormControl(\r\n 'Mobile',\r\n Validators.required\r\n )\r\n }));\r\n } else if (type === 'branch-address' && this.branchAddress.length < 3) {\r\n let addressLines;\r\n if (defaultValue) {\r\n addressLines = this.helperService.handleAddressLinesSplit(defaultValue.address);\r\n }\r\n this.branchAddress.push(new FormGroup({\r\n addressLine1: new FormControl(\r\n addressLines && addressLines[0] ? addressLines[0] : '',Validators.required\r\n ),\r\n addressLine2: new FormControl(\r\n addressLines && addressLines[1] ? addressLines[1] : ''\r\n ),\r\n city: new FormControl(\r\n defaultValue && defaultValue.city ? defaultValue.city : '',Validators.required\r\n ),\r\n state: new FormControl(\r\n defaultValue && defaultValue.state ? defaultValue.state : '',Validators.required\r\n ),\r\n zipcode: new FormControl(\r\n defaultValue && defaultValue.zipcode ? defaultValue.zipcode : '',Validators.required\r\n ),\r\n placeId: new FormControl(\r\n defaultValue && defaultValue.placeId ? defaultValue.placeId : ''\r\n ),\r\n formattedAddress: new FormControl(\r\n defaultValue && defaultValue.formattedAddress ? defaultValue.formattedAddress : ''\r\n )\r\n }));\r\n this.handleButtonsOnLengthChanges();\r\n }\r\n \r\n }\r\n\r\n handlePersonalInfoDeleteButton(type: string, index?: number, isAll = false) {\r\n if (type === 'phone') {\r\n if (isAll && this.phone) {\r\n this.phone.clear();\r\n this.handlePersonalInfoAddButton('phone');\r\n if (this.editContractorData && this.editContractorData.phone) {\r\n this.editContractorData.phone = [];\r\n }\r\n } else {\r\n this.phone.removeAt(index);\r\n if (this.editContractorData && this.editContractorData.phone) {\r\n this.editContractorData.phone.splice(index, 1);\r\n }\r\n }\r\n } else if (type === 'branch-address') {\r\n if (isAll && this.branchAddress) {\r\n this.branchAddress.clear();\r\n this.handlePersonalInfoAddButton('branch-address');\r\n if (this.editContractorData && this.editContractorData.addresses &&\r\n this.editContractorData.addresses.length) {\r\n this.editContractorData.addresses.map((value, addressIndex) => {\r\n if (value.type === 'branch') {\r\n this.editContractorData.addresses.splice(addressIndex, 1);\r\n }\r\n });\r\n }\r\n } else {\r\n this.branchAddress.removeAt(index);\r\n if (this.editContractorData && this.editContractorData.addresses &&\r\n this.editContractorData.addresses.length) {\r\n this.editContractorData.addresses.splice(index + 1, 1);\r\n }\r\n }\r\n }\r\n this.handleButtonsOnLengthChanges();\r\n }\r\n\r\n handlePatchEmailValues(flag: string) {\r\n let email;\r\n if (this.editContractorData && this.editContractorData.email && this.editContractorData.email.length) {\r\n this.editContractorData.email.find((value) => {\r\n if (value.type === flag) {\r\n email = value.email;\r\n return email;\r\n }\r\n });\r\n }\r\n return email;\r\n }\r\n\r\n\r\n handleAutoFillForm() {\r\n this.createContractor.patchValue({\r\n contractorName: this.editContractorData.contractorName,\r\n website: this.editContractorData.website,\r\n primaryEmail: this.handlePatchEmailValues(COMMON_CONSTANTS.EMAIL_PRIMARY),\r\n secondaryEmail: this.handlePatchEmailValues(COMMON_CONSTANTS.EMAIL_SECONDARY),\r\n contactPerson: this.editContractorData.contactPerson,\r\n dealerType: this.editContractorData.dealerType,\r\n inBusinessSince: this.editContractorData.operatingSince,\r\n noOfTechnicians: this.editContractorData.numOfTechnicians\r\n });\r\n\r\n if (this.editContractorData.logoName && this.editContractorData.logoName.length) {\r\n this.isLogoExist = true;\r\n console.log('patchlogo', this.editContractorData.logoName)\r\n this.logoName = this.editContractorData.logoName\r\n }\r\n if (this.handlePatchEmailValues(COMMON_CONSTANTS.EMAIL_PRIMARY)) {\r\n this.createContractor.controls.primaryEmail.disable();\r\n }\r\n\r\n if (this.editContractorData.phone && this.editContractorData.phone.length) {\r\n if(this.editContractorData.phone.length==1)\r\n {\r\n this.handlePersonalInfoAddButton('phone')\r\n }\r\n this.editContractorData.phone.map((value, index) => {\r\n if (index==1) {\r\n this.handlePersonalInfoAddButton('phone',value)\r\n \r\n } else if(index==0) {\r\n this.phone.patchValue([{\r\n phoneNumber: this.helperService.handleFormatPhoneNumber(value.phoneNumber),\r\n type: value.type\r\n }]);\r\n }\r\n }, this);\r\n }\r\n\r\n if (this.editContractorData.addresses && this.editContractorData.addresses.length) {\r\n this.editContractorData.addresses.map((value, index) => {\r\n if (index > 1) {\r\n this.handlePersonalInfoAddButton('branch-address', value);\r\n } else {\r\n if (value.type === COMMON_CONSTANTS.ADDRESS_TYPE_REGISTERED_CORPORATE) {\r\n \r\n this.registeredAddress.patchValue({\r\n addressLine1:value.address,\r\n addressLine2: value.addressLine2,\r\n city: value.city? value.city : '',\r\n state: value.state ? value.state : '',\r\n zipcode: value.zipcode ? value.zipcode : '' ,\r\n placeId: value.placeId,\r\n formattedAddress: value.formattedAddress,\r\n },);\r\n } else if (value.type === COMMON_CONSTANTS.ADDRESS_TYPE_BRANCH_ADDRESS) {\r\n // const addressLines = this.helperService.handleAddressLinesSplit(value.address);\r\n this.branchAddress.patchValue([{\r\n addressLine1:value.address,\r\n addressLine2: value.addressLine2,\r\n city: value.city ? value.city : '',\r\n state: value.state ? value.state : '',\r\n zipcode: value.zipcode ? value.zipcode : '',\r\n placeId: value.placeId,\r\n formattedAddress: value.formattedAddress,\r\n }]);\r\n }\r\n }\r\n }, this);\r\n }\r\n\r\n if (this.editContractorData && this.editContractorData.logoUrls &&\r\n this.editContractorData.logoUrls.length) {\r\n this.companyLogoName = this.editContractorData.logoUrls[0];\r\n }\r\n\r\n if (this.editContractorData && this.editContractorData.docUrl &&\r\n this.editContractorData.docUrl.length) {\r\n this.document1Name = this.editContractorData.docUrl[0];\r\n this.document2Name = this.editContractorData.docUrl[1] ? this.editContractorData.docUrl[1] : '';\r\n }\r\n\r\n if(this.editContractorData&&this.editContractorData.notificatonsStatusModel)\r\n {\r\n console.log(this.editContractorData)\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:this.editContractorData.notificatonsStatusModel.majorAlertsEmail,\r\n majorAlertsSms:this.editContractorData.notificatonsStatusModel.majorAlertsSms,\r\n minorAlertsEmail:this.editContractorData.notificatonsStatusModel.minorAlertsEmail,\r\n minorAlertsSms:this.editContractorData.notificatonsStatusModel.minorAlertsSms\r\n })\r\n\r\n this.editAlertNotification()\r\n }\r\n\r\n // debugger\r\n this.prevFormValues = this.createContractor.getRawValue();\r\n\r\n }\r\n\r\n // ngAfterViewInit() {\r\n // // this.handlePlacesAutoComplete();\r\n // }\r\n\r\n handlePlacesAutoComplete(element: ElementRef, type: string, index?: number) {\r\n this.helperService.handleAddress(element, type, index);\r\n const addressListener = this.helperService.setListenerForAddressObject().subscribe(\r\n (response: any) => {\r\n if (response.type === 'registered-address') {\r\n this.registeredAddress.patchValue({\r\n addressLine1: response.street,\r\n city: response.city,\r\n state: response.state,\r\n zipcode: response.zipcode,\r\n placeId: response.placeId,\r\n formattedAddress: response.formattedAddress,\r\n });\r\n } else if (response.type === 'branch-address') {\r\n this.branchAddress.at(response.index).patchValue({\r\n addressLine1: response.street,\r\n city: response.city,\r\n state: response.state,\r\n zipcode: response.zipcode,\r\n placeId: response.placeId,\r\n formattedAddress: response.formattedAddress,\r\n });\r\n }\r\n addressListener.unsubscribe();\r\n }, (error) => {\r\n addressListener.unsubscribe();\r\n }\r\n );\r\n\r\n }\r\n\r\n handleOnChangeBranchAddress(currentBranchAddress: FormGroup) {\r\n if (currentBranchAddress.get('addressLine1').value ||\r\n currentBranchAddress.get('addressLine2').value ||\r\n currentBranchAddress.get('city').value ||\r\n currentBranchAddress.get('state').value ||\r\n currentBranchAddress.get('zipcode').value) {\r\n currentBranchAddress.get('addressLine1').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n // currentBranchAddress.get('addressLine2').setValidators(Validators.required);\r\n currentBranchAddress.get('city').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n currentBranchAddress.get('state').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n currentBranchAddress.get('zipcode').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n currentBranchAddress.patchValue({\r\n addressLine1: currentBranchAddress.get('addressLine1').value ? currentBranchAddress.get('addressLine1').value : '',\r\n // addressLine2: currentBranchAddress.get('addressLine2').value ? currentBranchAddress.get('addressLine2').value : '',\r\n city: currentBranchAddress.get('city').value ? currentBranchAddress.get('city').value : '',\r\n state: currentBranchAddress.get('state').value ? currentBranchAddress.get('state').value : '',\r\n zipcode: currentBranchAddress.get('zipcode').value ? currentBranchAddress.get('zipcode').value : ''\r\n });\r\n currentBranchAddress.markAllAsTouched();\r\n } else {\r\n currentBranchAddress.get('addressLine1').clearValidators();\r\n // currentBranchAddress.get('addressLine2').clearValidators();\r\n currentBranchAddress.get('city').clearValidators();\r\n currentBranchAddress.get('state').clearValidators();\r\n currentBranchAddress.get('zipcode').clearValidators();\r\n currentBranchAddress.reset();\r\n }\r\n }\r\n\r\n handleOnSelectFiles(event, flag: string) {\r\n if (flag === 'company-logo') {\r\n this.isLogoExist = false;\r\n // console.log(event.target.files[0].type)\r\n if (event.target.files[0].type === 'image/jpeg' || event.target.files[0].type === 'image/png') {\r\n\r\n this.selectedCompanyLogo = event.target.files[0] as File;\r\n this.companyLogoName = event.target.files[0].name;\r\n\r\n const reader = new FileReader();\r\n\r\n reader.onload = (e) => {\r\n this.selectedImage.nativeElement.src = e && e['target'] && e['target']['result'];\r\n }\r\n reader.readAsDataURL(event.target.files[0]); // convert to base64 string\r\n }\r\n else {\r\n const message = \"Selected image should be PNG/JPEG format\";\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n this.selectedCompanyLogo = null;\r\n this.companyLogoName = '';\r\n this.createContractor.get('companyLogo').patchValue('');\r\n }\r\n\r\n } else if (flag === 'document-1') {\r\n this.selectedDocument1 = event.target.files[0] as File;\r\n this.document1Name = event.target.files[0].name;\r\n } else if (flag === 'document-2') {\r\n this.selectedDocument2 = event.target.files[0] as File;\r\n this.document2Name = event.target.files[0].name;\r\n }\r\n }\r\n\r\n handleRemoveSelectedCompanyLogo() {\r\n if(this.isEdit && this.editContractorData.logoUrls[0]!=null)\r\n {\r\n this.toggleConfirmationModal();\r\n let payload={\r\n contractorId:this.editContractorData.contractorId\r\n }\r\n this.sharedService.deleteLogo(payload).subscribe(\r\n (response: any) => {\r\n \r\n if(this.portalName == ROLE_CONSTANTS.CONTRACTOR)\r\n {\r\n this.sharedService.setContractorInformation();\r\n this.helperService.setUploadLogo(\"true\");\r\n this.selectedCompanyLogo = undefined;\r\n this.companyLogoName = '';\r\n this.createContractor.get('companyLogo').patchValue('');\r\n this.isLogoExist = false;\r\n }\r\n },error=>{\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n })\r\n }\r\n \r\n else{\r\n this.toggleConfirmationModal();\r\n this.selectedCompanyLogo = undefined;\r\n this.companyLogoName = '';\r\n this.createContractor.get('companyLogo').patchValue('');\r\n this.isLogoExist = false;\r\n }\r\n \r\n \r\n \r\n \r\n }\r\n\r\n handleParseAddresses() {\r\n\r\n let registeredAddressId;\r\n let billingAddressId;\r\n if (this.isEdit && this.editContractorData && this.editContractorData.addresses) {\r\n registeredAddressId = this.helperService.handleAddressSelection(\r\n this.editContractorData.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_REGISTERED_CORPORATE);\r\n billingAddressId = this.helperService.handleAddressSelection(\r\n this.editContractorData.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_BILLING);\r\n }\r\n\r\n const address = [];\r\n let badd1 =this.createContractor.value.registeredAddress.addressLine1;\r\n let badd2 = this.createContractor.value.registeredAddress.addressLine2;\r\n let addrLine1=badd1.replace(/,/g, ' ');\r\n let addrLine2=badd2.replace(/,/g, ' ');\r\n address.push({\r\n address:addrLine1,\r\n addressLine2: addrLine2,\r\n city: this.createContractor.value.registeredAddress.city,\r\n state: this.createContractor.value.registeredAddress.state,\r\n zipcode: this.createContractor.value.registeredAddress.zipcode,\r\n type: COMMON_CONSTANTS.ADDRESS_TYPE_REGISTERED_CORPORATE,\r\n addressId: this.isEdit ? registeredAddressId && registeredAddressId.addressId : null,\r\n placeId: this.createContractor.value.registeredAddress.placeId,\r\n formattedAddress: this.createContractor.value.registeredAddress.formattedAddress,\r\n });\r\n\r\n\r\n this.createContractor.value.branchAddress.map((value, index) => {\r\n if (value.addressLine1) {\r\n let badd1 = value.addressLine1;\r\n let badd2 = value.addressLine2;\r\n let addrLine1=badd1.replace(/,/g, ' ');\r\n let addrLine2=badd2.replace(/,/g, ' ');\r\n address.push({\r\n address: addrLine1,\r\n addressLine2: addrLine2,\r\n city: value.city,\r\n state: value.state,\r\n zipcode: value.zipcode,\r\n type: COMMON_CONSTANTS.ADDRESS_TYPE_BRANCH_ADDRESS,\r\n addressId: this.isEdit ? billingAddressId && billingAddressId.addressId : null,\r\n placeId: value.placeId,\r\n formattedAddress: value.formattedAddress,\r\n });\r\n }\r\n });\r\n return address;\r\n }\r\n\r\n handleParseCreateContractorPayload() {\r\n const payload: any = {\r\n contractorName: this.createContractor.value.contractorName && this.createContractor.value.contractorName.trim(),\r\n website: this.createContractor.value.website,\r\n contactPerson: this.createContractor.value.contactPerson && this.createContractor.value.contactPerson.trim(),\r\n permissionTypeId: 1,\r\n resourceTypeId: 1,\r\n // dealerType: this.portalName === ROLE_CONSTANTS.CONTRACTOR ? 'contractor': 'mdu',\r\n dealerType: this.createContractor.get('dealerType') &&\r\n this.createContractor.get('dealerType').value,\r\n // role: this.portalName === ROLE_CONSTANTS.CONTRACTOR ? 'contractor': 'mdu',\r\n addresses: this.handleParseAddresses(),\r\n email: [\r\n {\r\n email: this.createContractor.get('primaryEmail') &&\r\n this.createContractor.get('primaryEmail').value,\r\n type: COMMON_CONSTANTS.EMAIL_PRIMARY\r\n }\r\n ],\r\n phone: this.createContractor.value.phone,\r\n notificatonsStatusModel:this.createContractor.value.notificatonsStatusModel,\r\n operatingSince: this.createContractor.value.inBusinessSince,\r\n numOfTechnicians: this.createContractor.value.noOfTechnicians\r\n };\r\n\r\n if (!this.isFromChannel) {\r\n payload.role = this.portalName === ROLE_CONSTANTS.CONTRACTOR ?\r\n ROLE_CONSTANTS.CONTRACTOR : ROLE_CONSTANTS.MDU;\r\n }\r\n\r\n // if (this.isFromChannel) {\r\n // payload.dealerType = this.createContractor.get('dealerType') &&\r\n // this.createContractor.get('dealerType').value;\r\n // } else {\r\n // payload.dealerType = this.portalName === ROLE_CONSTANTS.CONTRACTOR ?\r\n // ROLE_CONSTANTS.CONTRACTOR : ROLE_CONSTANTS.MDU;\r\n // payload.role = this.portalName === ROLE_CONSTANTS.CONTRACTOR ?\r\n // ROLE_CONSTANTS.CONTRACTOR : ROLE_CONSTANTS.MDU;\r\n // }\r\n\r\n if (this.createContractor.value.secondaryEmail) {\r\n payload.email.push(\r\n {\r\n email: this.createContractor.value.secondaryEmail,\r\n type: COMMON_CONSTANTS.EMAIL_SECONDARY\r\n }\r\n );\r\n }\r\n if (this.isEdit && this.editContractorData) {\r\n payload.awsContractorId = this.editContractorData.awsContractorId;\r\n payload.contractorId = this.editContractorData.contractorId;\r\n \r\n\r\n if (this.editContractorData.phone && this.editContractorData.phone.length) {\r\n this.editContractorData.phone.map((value, index) => {\r\n // payload.phone[index].id = this.editContractorData.phone[index].id;\r\n // payload.phone[index].countryCode = this.editContractorData.phone[index].countryCode;\r\n if(index!==2)\r\n {\r\n payload.phone[index].phoneId = this.editContractorData.phone[index].phoneId;\r\n }\r\n \r\n });\r\n }\r\n\r\n const primaryEmailId = this.helperService.handleEmailSelection(\r\n this.editContractorData && this.editContractorData.email, COMMON_CONSTANTS.EMAIL_PRIMARY);\r\n\r\n const secondaryEmailId = this.helperService.handleEmailSelection(\r\n this.editContractorData && this.editContractorData.email, COMMON_CONSTANTS.EMAIL_SECONDARY);\r\n\r\n if (payload && payload.email && payload.email.length) {\r\n payload.email.map((value, index) => {\r\n if (value.type === COMMON_CONSTANTS.EMAIL_PRIMARY && primaryEmailId && primaryEmailId.emailId) {\r\n payload.email[index].emailId = primaryEmailId.emailId;\r\n } else if (value.type === COMMON_CONSTANTS.EMAIL_SECONDARY && secondaryEmailId && secondaryEmailId.emailId) {\r\n payload.email[index].emailId = secondaryEmailId.emailId;\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n this.createContractorPayload = JSON.parse(JSON.stringify(payload));\r\n this.createContractorPayload.logoUrls = [];\r\n this.createContractorPayload.logoUrls.push(this.createContractor.value.companyLogo);\r\n this.createContractorPayload.docUrl = [];\r\n this.createContractorPayload.docUrl.push(this.createContractor.value.document1,\r\n this.createContractor.value.document2);\r\n\r\n if (!this.selectedCompanyLogo && !this.isCreateContractorFormReseted\r\n && this.editContractorData) {\r\n this.createContractorPayload.logoUrls = this.editContractorData.logoUrls;\r\n }\r\n\r\n if (!this.selectedDocument1 && !this.isCreateContractorFormReseted\r\n && this.editContractorData && this.editContractorData.docUrl) {\r\n this.createContractorPayload.docUrl[0] = this.editContractorData.docUrl[0] ?\r\n this.editContractorData.docUrl[0] : null;\r\n }\r\n\r\n if (!this.selectedDocument2 && !this.isCreateContractorFormReseted\r\n && this.editContractorData && this.editContractorData.docUrl) {\r\n this.createContractorPayload.docUrl[1] = this.editContractorData.docUrl[1] ?\r\n this.editContractorData.docUrl[1] : null;\r\n }\r\n\r\n return payload;\r\n }\r\n\r\n handleCreateContractor() {\r\n const payload = this.handleParseCreateContractorPayload();\r\n this.isCreateContractorBtnLoading = true;\r\n this.sharedService.createContractor(payload, this.isFromChannel).subscribe(\r\n (response: CreateContractorResponse) => {\r\n this.sharedService.setContractorInformation()\r\n this.closeModal();\r\n \r\n \r\n // if (this.selectedCompanyLogo || this.selectedDocument1 || this.selectedDocument2)\r\n if (this.selectedCompanyLogo) {\r\n this.handleButtonsOnChanges();\r\n this.closeModal();\r\n // if (this.companyLogoName) {\r\n // this.uploadFile(response.createContractorResponse.contractorId, 'company-logo');\r\n // }\r\n // if (this.document1Name) {\r\n // this.uploadFile(response.createContractorResponse.contractorId, 'document-1');\r\n // }\r\n // if (this.document2Name) {\r\n // this.uploadFile(response.createContractorResponse.contractorId, 'document-2');\r\n this.uploadFile(response);\r\n // }\r\n } else {\r\n if(this.portalName == ROLE_CONSTANTS.CONTRACTOR)\r\n {\r\n this.helperService.setUploadLogo(\"true\");\r\n }\r\n this.handleButtonsOnChanges();\r\n this.closeModal();\r\n // if(this.isEdit){\r\n // this.isCreateContractorBtnLoading = false;\r\n // }\r\n \r\n if (!this.isEdit) { \r\n \r\n this.emitHandleConfirmationSuccessModal.emit(this.helperService.handleEmailSelection(\r\n response.requestData && response.requestData.email, COMMON_CONSTANTS.EMAIL_PRIMARY\r\n ));\r\n this.isCreateContractorBtnLoading = false;\r\n this.closeModal();\r\n }\r\n else {\r\n this.isCreateContractorBtnLoading = false;\r\n const message = response.createContractorResponse.msg;\r\n this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n \r\n this.closeModal();\r\n \r\n }\r\n // const message = response.createContractorResponse.msg;\r\n // this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n }\r\n this.emitHandleRefreshPage.emit();\r\n }, (error) => {\r\n this.isCreateContractorBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n uploadFile(createContractorRes) {\r\n const queryParams = {\r\n contractorId: createContractorRes.createContractorResponse.contractorId\r\n };\r\n const filedata = new FormData();\r\n // if (flag === 'company-logo') {\r\n // const imageName = COMMON_CONSTANTS.COMPANY_LOGO_COMMON_NAME +\r\n // this.selectedCompanyLogo.name.substr(\r\n // this.selectedCompanyLogo.name.lastIndexOf('.')\r\n // );\r\n // filedata.append('logo', this.selectedCompanyLogo, imageName);\r\n // } else if (flag === 'document-1') {\r\n // filedata.append('documents', this.selectedDocument1);\r\n // } else if (flag === 'document-2') {\r\n // filedata.append('documents', this.selectedDocument2);\r\n // }\r\n\r\n if (this.selectedCompanyLogo) {\r\n const imageName = COMMON_CONSTANTS.COMPANY_LOGO_COMMON_NAME +\r\n this.selectedCompanyLogo.name.substr(\r\n this.selectedCompanyLogo.name.lastIndexOf('.')\r\n );\r\n filedata.append('logo', this.selectedCompanyLogo, imageName);\r\n }\r\n // if (this.selectedDocument1) {\r\n // filedata.append('documents', this.selectedDocument1);\r\n // }\r\n // if (this.selectedDocument2) {\r\n // filedata.append('documents', this.selectedDocument2);\r\n // }\r\n this.sharedService.uploadCompanyLogo(filedata, queryParams, false).subscribe(\r\n (response) => {\r\n this.closeModal();\r\n this.isCreateContractorBtnLoading = false;\r\n if (!this.isEdit) {\r\n this.emitHandleConfirmationSuccessModal.emit(this.helperService.handleEmailSelection(\r\n createContractorRes.requestData && createContractorRes.requestData.email, COMMON_CONSTANTS.EMAIL_PRIMARY\r\n ));\r\n } else {\r\n const message = createContractorRes.createContractorResponse.msg;\r\n this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n }\r\n // this.helperService.showToaster(ToasterType.SUCCESS, 'Contractor created successfully');\r\n if(this.portalName == ROLE_CONSTANTS.CONTRACTOR)\r\n {\r\n this.helperService.setUploadLogo(\"true\");\r\n }\r\n \r\n },\r\n (error) => {\r\n this.isCreateContractorBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleFormValidation(flag: string) {\r\n \r\n console.log(this.isEnableSubmit,\"submit\")\r\n if (flag === 'create-contractor' && this.isEnableSubmit) {\r\n\r\n if (this.createContractor.valid) {\r\n this.isEnableSubmit=false\r\n if (this.createContractor && this.createContractor.get('primaryEmail') &&\r\n this.createContractor.get('primaryEmail').value &&\r\n this.createContractor.get('primaryEmail').value.trim()) {\r\n if (this.isEdit && this.editContractorData && this.editContractorData.email &&\r\n this.editContractorData.email.length && this.editContractorData.email[0].email ===\r\n this.createContractor.get('primaryEmail').value) {\r\n if(this.createContractor.get('secondaryEmail').value && this.createContractor.get('secondaryEmail').value==this.createContractor.get('primaryEmail').value)\r\n // this.handleModalType('contractor-profile');\r\n {\r\n this.isEnableSubmit=true\r\n this.handleModalType('contractor-emails-same');\r\n }else{\r\n this.handleCreateContractor();\r\n }\r\n \r\n } \r\n else {\r\n if(this.createContractor.get('secondaryEmail').value && this.createContractor.get('secondaryEmail').value==this.createContractor.get('primaryEmail').value)\r\n {\r\n this.isEnableSubmit=true\r\n this.handleModalType('contractor-emails-same');}\r\n else{ \r\n let queryParams = {\r\n email: this.createContractor.get('primaryEmail').value.trim(),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n this.sharedService.checkIsEmailAlreadyExists(queryParams).subscribe(\r\n (response: IsEmailAlreadyExistsResponse) => {\r\n this.isCreateContractorBtnLoading = true;\r\n if (response && response.isEmailAlreadyExistsResponseDetails &&\r\n response.isEmailAlreadyExistsResponseDetails.isExists) {\r\n this.isCreateContractorBtnLoading = false;\r\n this.isEnableSubmit=true;\r\n this.handleModalType('contractor-exist-confimation');\r\n } else {\r\n // this.handleModalType('contractor-profile');\r\n \r\n this.handleCreateContractor();\r\n\r\n }\r\n // this.isCreateContractorBtnLoading = false;\r\n }, (error) => {\r\n this.isCreateContractorBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n \r\n }\r\n }\r\n } else {\r\n this.createContractor.markAllAsTouched();\r\n this.helperService.scrollToFirstInvalidControl(this.createContractor, this.elementRef.nativeElement);\r\n }\r\n \r\n }\r\n }\r\n\r\n handleCreateContractorForm() {\r\n let flag = false;\r\n if (this.isEdit) {\r\n let currentFormValues = this.createContractor.getRawValue();\r\n console.log(JSON.stringify(currentFormValues),JSON.stringify(this.prevFormValues))\r\n if (JSON.stringify(currentFormValues) !== JSON.stringify(this.prevFormValues)) {\r\n\r\n flag = true;\r\n }\r\n }\r\n else {\r\n if (this.createContractor.get('contractorName').value ||\r\n this.createContractor.get('primaryEmail').value ||\r\n this.createContractor.get('secondaryEmail').value ||\r\n this.createContractor.get('website').value ||\r\n this.createContractor.get('companyLogo').value ||\r\n this.createContractor.get('inBusinessSince').value ||\r\n this.createContractor.get('noOfTechnicians').value ||\r\n (this.createContractor.get('document1') && this.createContractor.get('document1').value) ||\r\n (this.createContractor.get('document2') && this.createContractor.get('document2').value)) {\r\n flag = true;\r\n }\r\n\r\n this.phone.controls.map((value, index) => {\r\n if (value && value.value && value.value.phoneNumber) {\r\n flag = true;\r\n }\r\n });\r\n\r\n this.branchAddress.controls.map((value, index) => {\r\n if (value.get('addressLine1').value ||\r\n value.get('addressLine2').value ||\r\n value.get('city').value ||\r\n value.get('state').value ||\r\n value.get('zipcode').value) {\r\n flag = true;\r\n }\r\n });\r\n\r\n if (this.registeredAddress.get('addressLine1').value ||\r\n this.registeredAddress.get('addressLine2').value ||\r\n this.registeredAddress.get('city').value ||\r\n this.registeredAddress.get('state').value ||\r\n this.registeredAddress.get('zipcode').value) {\r\n flag = true;\r\n }\r\n }\r\n\r\n if (this.createContractor && !this.createContractor.dirty) {\r\n flag = false;\r\n }\r\n\r\n return flag;\r\n }\r\n\r\n handleTabOnChange(value: string) {\r\n this.selectedBillingTab = value;\r\n }\r\n\r\n handleRadioBtnValue(value: any) {\r\n this.createContractor.controls.dealerType.patchValue(value);\r\n }\r\n\r\n handleModalType(type: string) {\r\n // this.infoModalType = type;\r\n if (type === 'contractor-profile') {\r\n this.infoModalTitle = 'Dealer Profile';\r\n this.handleParseCreateContractorPayload();\r\n this.toggleContractorInformationModal();\r\n } else if (type === 'confirmation-modal') {\r\n if (this.handleCreateContractorForm()) {\r\n this.infoModalType = 'close-create-contractor-modal';\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `Entered information will be lost.`;\r\n this.confirmationModalLine2Content = `Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n } else {\r\n this.closeModal();\r\n }\r\n } else if (type === 'contractor-exist-confimation') {\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = 'Email address already exists. Please enter a different email or contact Support at +1 (833) 543-0107.';\r\n // this.confirmationModalLine2Content = `Are you sure you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.toggleConfirmationModal();\r\n }else if (type=== 'contractor-emails-same'){\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = 'Secondary email address cannot be the same as primary. Please enter a different email or contact Support at +1 (833) 543-0107.';\r\n // this.confirmationModalLine2Content = `Are you sure you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.toggleConfirmationModal();\r\n }\r\n else if(type=='resend-invitation')\r\n {\r\n this.reInviteContractor()\r\n }\r\n else if(type=='remove-logo')\r\n {\r\n this.infoModalType = 'remove-logo';\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = 'Are you sure you want to continue?';\r\n // this.confirmationModalLine2Content = `Are you sure you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n }\r\n }\r\n\r\n\r\n \r\nreInviteContractor() {\r\n const queryParams = {\r\n contractorId: this.editContractorData.contractorId\r\n };\r\n this.isResendBtnLoading=true;\r\n this.sharedService.activateContractor(queryParams).subscribe(\r\n (response: CommonSuccessResponse) => {\r\n this.isResendBtnLoading=false;\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.statusInfo);\r\n this.closeModal()\r\n this.emitHandleRefreshPage.emit();\r\n }, (error) => {\r\n this.closeModal()\r\n this.emitHandleRefreshPage.emit();\r\n this.isResendBtnLoading=false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n )\r\n }\r\n handleButtonsOnChanges() {\r\n if (this.handleCreateContractorForm()) {\r\n this.isToggleButtons = true;\r\n } else {\r\n this.isToggleButtons = false;\r\n }\r\n // if(this.branchAddress.length !== this.prevFormValues&&this.prevFormValues.branchAddress&&this.prevFormValues.branchAddress.length)\r\n // {\r\n\r\n // }\r\n }\r\n\r\n handleButtonsOnLengthChanges() {\r\n console.log(this.phone)\r\n this.isToggleButtons = false;\r\n if ((this.phone.length !== this.prevFormValues.phone.length || this.handleCreateContractorForm())\r\n || (this.branchAddress.length !== this.prevFormValues.branchAddress.length || this.handleCreateContractorForm())) {\r\n this.isToggleButtons = true;\r\n }\r\n }\r\n\r\n handleFormatPhoneNumber(phoneGroup: FormGroup, phoneNumber: any) {\r\n const number = this.helperService.handleFormatPhoneNumber(phoneNumber);\r\n phoneGroup.patchValue({\r\n phoneNumber: number?number:null\r\n });\r\n }\r\n\r\n //handlealerts enable or disable\r\n handleAlerts(data)\r\n {\r\n if(data=='major')\r\n {\r\n this.isMajorChecked= !this.isMajorChecked\r\n this.handleScreen();\r\n this.handleFormData();\r\n }\r\n else if(data=='minor')\r\n {\r\n this.isMinorChecked = !this.isMinorChecked \r\n this.handleScreen(); \r\n this.handleFormData();\r\n \r\n }\r\n else if(data=='email')\r\n {\r\n this.isEmailChecked=!this.isEmailChecked\r\n console.log(this.isEmailChecked)\r\n this.handleToggleScreen();\r\n this.handleFormData();\r\n }\r\n else if(data=='sms')\r\n {\r\n this.isSMSChecked=!this.isSMSChecked\r\n this.handleToggleScreen();\r\n this.handleFormData();\r\n }\r\n\r\n }\r\n\r\n handleScreen()\r\n {\r\n if(!this.isMajorChecked&&!this.isMinorChecked)\r\n {\r\n this.isSMSChecked=this.isEmailChecked=false;\r\n }\r\n else if(this.isMajorChecked||this.isMinorChecked)\r\n {\r\n this.isSMSChecked = this.isSMSChecked\r\n this.isEmailChecked=this.isEmailChecked\r\n if(!this.isEmailChecked&&!this.isSMSChecked)\r\n {\r\n this.isEmailChecked=this.isSMSChecked=true;\r\n }\r\n }\r\n }\r\n handleToggleScreen()\r\n {\r\n if(!this.isEmailChecked&&!this.isSMSChecked)\r\n {\r\n this.isMinorChecked=this.isMajorChecked=false;\r\n }\r\n else if(this.isEmailChecked||this.isSMSChecked)\r\n {\r\n this.isMinorChecked= this.isMinorChecked;\r\n this.isMajorChecked=this.isMajorChecked;\r\n if(!this.isMajorChecked&&!this.isMinorChecked)\r\n {\r\n this.isMinorChecked=this.isMajorChecked=true;\r\n }\r\n }\r\n \r\n }\r\n handleFormData()\r\n {\r\n if(this.isEdit)\r\n {\r\n this.createContractor.markAsDirty();\r\n }\r\n \r\n if((!this.isMajorChecked && !this.isMinorChecked && !this.isSMSChecked && !this.isEmailChecked)||\r\n (!this.isMajorChecked && !this.isMinorChecked && this.isSMSChecked && this.isEmailChecked)||\r\n (this.isMajorChecked && this.isMinorChecked && !this.isSMSChecked && !this.isEmailChecked)||\r\n (!this.isMajorChecked && !this.isMinorChecked && this.isSMSChecked && !this.isEmailChecked)||\r\n (!this.isMajorChecked && !this.isMinorChecked && !this.isSMSChecked && this.isEmailChecked)||\r\n (!this.isMajorChecked && this.isMinorChecked && !this.isSMSChecked && !this.isEmailChecked)||\r\n (this.isMajorChecked && !this.isMinorChecked && !this.isSMSChecked && !this.isEmailChecked)){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:false,\r\n majorAlertsSms:false,\r\n minorAlertsEmail:false,\r\n minorAlertsSms:false\r\n })\r\n }\r\n \r\n else if(this.isMajorChecked && this.isMinorChecked && this.isSMSChecked && this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:true,\r\n majorAlertsSms:true,\r\n minorAlertsEmail:true,\r\n minorAlertsSms:true\r\n })\r\n }\r\n else if(this.isMajorChecked && this.isMinorChecked && this.isSMSChecked && !this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:false,\r\n majorAlertsSms:true,\r\n minorAlertsEmail:false,\r\n minorAlertsSms:true\r\n })\r\n }\r\n else if(this.isMajorChecked && this.isMinorChecked && !this.isSMSChecked && this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:true,\r\n majorAlertsSms:false,\r\n minorAlertsEmail:true,\r\n minorAlertsSms:false\r\n })\r\n }\r\n else if(!this.isMajorChecked && this.isMinorChecked && this.isSMSChecked && this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:false,\r\n majorAlertsSms:false,\r\n minorAlertsEmail:true,\r\n minorAlertsSms:true\r\n })\r\n }\r\n else if(!this.isMajorChecked && this.isMinorChecked && !this.isSMSChecked && this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:false,\r\n majorAlertsSms:false,\r\n minorAlertsEmail:true,\r\n minorAlertsSms:false\r\n })\r\n }\r\n\r\n else if(!this.isMajorChecked && this.isMinorChecked && this.isSMSChecked && !this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:false,\r\n majorAlertsSms:false,\r\n minorAlertsEmail:false,\r\n minorAlertsSms:true\r\n })\r\n }\r\n else if(this.isMajorChecked && !this.isMinorChecked && this.isSMSChecked && this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:true,\r\n majorAlertsSms:true,\r\n minorAlertsEmail:false,\r\n minorAlertsSms:false\r\n })\r\n }\r\n else if(this.isMajorChecked && !this.isMinorChecked && !this.isSMSChecked && this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:true,\r\n majorAlertsSms:false,\r\n minorAlertsEmail:false,\r\n minorAlertsSms:false\r\n })\r\n }\r\n else if(this.isMajorChecked && !this.isMinorChecked && this.isSMSChecked && !this.isEmailChecked){\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:false,\r\n majorAlertsSms:true,\r\n minorAlertsEmail:false,\r\n minorAlertsSms:false\r\n })\r\n }\r\n\r\n // console.log(\"majoremail\",this.notificatonsStatusModel.get('majorAlertsEmail').value.value);\r\n // console.log(\"majorsms\",this.notificatonsStatusModel.get('majorAlertsSms').value.value);\r\n // console.log(\"minoremail\",this.notificatonsStatusModel.get('minorAlertsEmail').value.value);\r\n // console.log(\"minorsms\",this.notificatonsStatusModel.get('minorAlertsSms').value.value);\r\n this.alertNotification.majorAlertsEmail=this.notificatonsStatusModel.get('majorAlertsEmail').value.value;\r\n this.alertNotification.majorAlertsSms=this.notificatonsStatusModel.get('majorAlertsSms').value.value;\r\n this.alertNotification.minorAlertsEmail=this.notificatonsStatusModel.get('minorAlertsEmail').value.value;\r\n this.alertNotification.minorAlertsSms=this.notificatonsStatusModel.get('minorAlertsSms').value.value;\r\n \r\n // if(this.isMajorChecked && this.isMinorChecked && !this.isSMSChecked && this.isEmailChecked){\r\n // this.notificatonsStatusModel.patchValue({\r\n // majorAlertsEmail:new FormControl(true),\r\n // majorAlertsSms:new FormControl(false),\r\n // minorAlertsEmail:new FormControl(true),\r\n // minorAlertsSms:new FormControl(false)\r\n // })\r\n // }\r\n // if(this.isMajorChecked && this.isMinorChecked && this.isSMSChecked && !this.isEmailChecked){\r\n // this.notificatonsStatusModel.patchValue({\r\n // majorAlertsEmail:new FormControl(false),\r\n // majorAlertsSms:new FormControl(true),\r\n // minorAlertsEmail:new FormControl(false),\r\n // minorAlertsSms:new FormControl(true)\r\n // })\r\n // }\r\n // if(this.isMajorChecked && this.isMinorChecked && !this.isSMSChecked && !this.isEmailChecked){\r\n // this.notificatonsStatusModel.patchValue({\r\n // majorAlertsEmail:new FormControl(false),\r\n // majorAlertsSms:new FormControl(false),\r\n // minorAlertsEmail:new FormControl(false),\r\n // minorAlertsSms:new FormControl(false)\r\n // })\r\n // }\r\n \r\n // // if{\r\n // // this.notificatonsStatusModel.patchValue({\r\n // // majorAlertsEmail:new FormControl(false),\r\n // // majorAlertsSms:new FormControl(false),\r\n // // minorAlertsEmail:new FormControl(false),\r\n // // minorAlertsSms:new FormControl(false)\r\n // // })\r\n // // }\r\n\r\n\r\n // // else if(!this.isMajorChecked && this.isMinorChecked)\r\n // // {\r\n // // this.notificatonsStatusModel.patchValue({\r\n // // majorAlertsEmail:new FormControl(false),\r\n // // majorAlertsSms:new FormControl(false),\r\n // // minorAlertsEmail:new FormControl(true),\r\n // // minorAlertsSms:new FormControl(true)\r\n // // })\r\n // // this.isSMSChecked=true;\r\n // // this.isEmailChecked=true;\r\n // // }\r\n // // else if(!this.isMajorChecked && !this.isMinorChecked){\r\n // // this.notificatonsStatusModel.patchValue({\r\n // // majorAlertsEmail:new FormControl(true),\r\n // // majorAlertsSms:new FormControl(true),\r\n // // minorAlertsEmail:new FormControl(true),\r\n // // minorAlertsSms:new FormControl(true)\r\n // // })\r\n // // this.isSMSChecked=false;\r\n // // this.isEmailChecked=false;\r\n // // }\r\n // // if(this.isMajorChecked && this.isMinorChecked)\r\n // // {\r\n // // console.log(this.notificatonsStatusModel.value)\r\n // // this.notificatonsStatusModel.patchValue({\r\n // // majorAlertsEmail:new FormControl(true),\r\n // // majorAlertsSms:new FormControl(true),\r\n // // minorAlertsEmail:new FormControl(true),\r\n // // minorAlertsSms:new FormControl(true)\r\n // // })\r\n // // this.isSMSChecked=this.isSMSChecked?this.isSMSChecked:!this.isSMSChecked;\r\n // // this.isEmailChecked=this.isEmailChecked?this.isEmailChecked:!this.isEmailChecked;\r\n // // }\r\n }\r\n\r\n editAlertNotification()\r\n \r\n {\r\n //console.log(this.editContractorData.notificatonsStatusModel)\r\n if(this.editContractorData.notificatonsStatusModel.majorAlertsEmail||this.editContractorData.notificatonsStatusModel.majorAlertsSms)\r\n {\r\n this.isMajorChecked=true;\r\n }\r\n if(!this.editContractorData.notificatonsStatusModel.majorAlertsEmail&&!this.editContractorData.notificatonsStatusModel.majorAlertsSms)\r\n {this.isMajorChecked=false;\r\n }\r\n if(this.editContractorData.notificatonsStatusModel.minorAlertsEmail||this.editContractorData.notificatonsStatusModel.minorAlertsSms)\r\n {\r\n this.isMinorChecked=true;\r\n }\r\n if(!this.editContractorData.notificatonsStatusModel.minorAlertsEmail&&!this.editContractorData.notificatonsStatusModel.minorAlertsSms)\r\n {\r\n this.isMinorChecked=false;\r\n }\r\n if(this.editContractorData.notificatonsStatusModel.majorAlertsEmail||this.editContractorData.notificatonsStatusModel.minorAlertsEmail)\r\n {\r\n this.isEmailChecked=true;\r\n }\r\n if(!this.editContractorData.notificatonsStatusModel.majorAlertsEmail&&!this.editContractorData.notificatonsStatusModel.minorAlertsEmail)\r\n {\r\n this.isEmailChecked=false;\r\n }\r\n if(this.editContractorData.notificatonsStatusModel.majorAlertsSms||this.editContractorData.notificatonsStatusModel.minorAlertsSms)\r\n {\r\n this.isSMSChecked=true;\r\n }\r\n if(!this.editContractorData.notificatonsStatusModel.majorAlertsSms&&!this.editContractorData.notificatonsStatusModel.minorAlertsSms)\r\n {\r\n this.isSMSChecked=false;\r\n }\r\n\r\n \r\n\r\n\r\n }\r\n\r\n onEditProfile()\r\n {\r\n\r\n }\r\n handleAlertToggle()\r\n {\r\n if(!this.isEmailChecked&&!this.isSMSChecked)\r\n {\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:new FormControl(false),\r\n majorAlertsSms:new FormControl(false),\r\n minorAlertsEmail:new FormControl(false),\r\n minorAlertsSms:new FormControl(false)\r\n })\r\n this.isMajorChecked=false\r\n this.isMinorChecked=false\r\n }\r\n else if(this.isEmailChecked && this.isSMSChecked)\r\n {\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:new FormControl(true),\r\n minorAlertsEmail:new FormControl(true),\r\n majorAlertsSms:new FormControl(true),\r\n minorAlertsSms:new FormControl(true)\r\n })\r\n \r\n }\r\n else if(!this.isEmailChecked && this.isSMSChecked)\r\n {\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:new FormControl(false),\r\n minorAlertsEmail:new FormControl(false),\r\n majorAlertsSms:new FormControl(true),\r\n minorAlertsSms:new FormControl(true)\r\n })\r\n }\r\n \r\n else if(!this.isSMSChecked&&this.isEmailChecked)\r\n {\r\n this.notificatonsStatusModel.patchValue({\r\n majorAlertsEmail:new FormControl(true),\r\n minorAlertsEmail:new FormControl(true),\r\n majorAlertsSms:new FormControl(false),\r\n minorAlertsSms:new FormControl(false)\r\n })\r\n }\r\n\r\n }\r\n\r\n handleConfirmationModalEmitter() {\r\n if (this.infoModalType === 'close-create-contractor-modal') {\r\n this.closeModal();\r\n }\r\n if(this.infoModalType==\"remove-logo\")\r\n {\r\n this.handleRemoveSelectedCompanyLogo()\r\n }\r\n }\r\n\r\n handleResetFormFields() {\r\n // this.isCreateContractorFormReseted = true;\r\n // this.createContractor.reset();\r\n // this.companyLogoName = null;\r\n // this.document1Name = null;\r\n // this.document2Name = null;\r\n // this.selectedCompanyLogo = null;\r\n // this.selectedDocument1 = null;\r\n // this.selectedDocument2 = null;\r\n // if (this.isEdit) {\r\n // this.createContractor.patchValue({\r\n // primaryEmail: this.handlePatchEmailValues(COMMON_CONSTANTS.EMAIL_PRIMARY)\r\n // });\r\n // }\r\n // this.handlePersonalInfoDeleteButton('phone', null, true);\r\n // this.handlePersonalInfoDeleteButton('branch-address', null, true);\r\n // this.phone.patchValue([{\r\n // type: 'Mobile'\r\n // }]);\r\n // this.createContractor.patchValue({\r\n // inBusinessSince: ''\r\n // });\r\n }\r\n\r\n toggleContractorInformationModal() {\r\n this.isShowContractorInfoModal = !this.isShowContractorInfoModal;\r\n }\r\n\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","module.exports = \".arrow-date-picker {\\n position: absolute;\\n top: calc(50% - 14px / 2 + 5px);\\n border-left: 6px solid transparent;\\n border-right: 6px solid transparent;\\n border-top: 8px solid #000000;\\n cursor: pointer;\\n right: 2rem;\\n z-index: 2;\\n}\\n\\n.right15 {\\n right: 5.4rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvZGF0ZXRpbWVwaWNrZXIvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXGRhdGV0aW1lcGlja2VyXFxkYXRldGltZXBpY2tlci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvZGF0ZXRpbWVwaWNrZXIvZGF0ZXRpbWVwaWNrZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxrQkFBQTtFQUNBLCtCQUFBO0VBQ0Esa0NBQUE7RUFDQSxtQ0FBQTtFQUNBLDZCQUFBO0VBQ0EsZUFBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9kYXRldGltZXBpY2tlci9kYXRldGltZXBpY2tlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5hcnJvdy1kYXRlLXBpY2tlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogY2FsYyg1MCUgLSAxNHB4IC8gMiArIDVweCk7XHJcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItdG9wOiA4cHggc29saWQgIzAwMDAwMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgcmlnaHQ6IDJyZW07XHJcbiAgei1pbmRleDogMjtcclxufVxyXG5cclxuLnJpZ2h0MTUge1xyXG4gIHJpZ2h0OiA1LjRyZW07XHJcbn1cclxuIiwiLmFycm93LWRhdGUtcGlja2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoNTAlIC0gMTRweCAvIDIgKyA1cHgpO1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICMwMDAwMDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcmlnaHQ6IDJyZW07XG4gIHotaW5kZXg6IDI7XG59XG5cbi5yaWdodDE1IHtcbiAgcmlnaHQ6IDUuNHJlbTtcbn0iXX0= */\"","import { Component, OnInit, Input, AfterViewInit, Output, EventEmitter, OnDestroy, OnChanges } from '@angular/core';\r\nimport * as moment_ from 'moment';\r\n\r\nconst moment = moment_;\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-datetimepicker',\r\n templateUrl: './datetimepicker.component.html',\r\n styleUrls: ['./datetimepicker.component.scss']\r\n})\r\nexport class DatetimepickerComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges {\r\n\r\n @Input() placeholder = '';\r\n @Input() elementId = 'default';\r\n @Input() disableInput = false;\r\n @Input() isResetField = false;\r\n @Input() format = 'YYYY-MM-DD HH:mm:ss A';\r\n @Output() handleSelectedDate = new EventEmitter();\r\n @Output() emitCloseScheduling = new EventEmitter();\r\n @Input() defaultDate;\r\n @Input() minDate: Date;\r\n @Input() maxDate = '';\r\n @Input() iconClassName: string;\r\n @Input() datePickerClassName: string;\r\n @Input() datePickerInputClassName = 'font-regular font-15 header-no-dark';\r\n @Input() defaultOpen = false;\r\n @Input() closeOnChange = false;\r\n @Input() endDate = Date();\r\n @Input() disabledHours = false;\r\n @Input() rightArrow = false;\r\n @Input() showArrow = false;\r\n currentDate = new Date();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n console.log(this.minDate)\r\n if (!this.datePickerClassName) {\r\n this.datePickerClassName = 'date-picker';\r\n }\r\n if (!this.iconClassName) {\r\n this.iconClassName = 'icon-calendar font-16';\r\n }\r\n\r\n }\r\n\r\n ngOnChanges(SimpleChanges) {\r\n\r\n if (this.isResetField) {\r\n this.initializeDatePicker('clear_end_date');\r\n }\r\n\r\n if (SimpleChanges.isResetField) { }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initializeDatePicker(this.defaultDate);\r\n }\r\n\r\n ngOnDestroy() {\r\n const elementId = '#' + this.elementId;\r\n if ($(elementId) && $(elementId).data('DateTimePicker')) {\r\n $(elementId).data('DateTimePicker').hide();\r\n }\r\n }\r\n\r\n initializeDatePicker(defaultDate) {\r\n const elementId = '#' + this.elementId;\r\n const self = this;\r\n let maxDate: any = this.maxDate;\r\n if (!maxDate) {\r\n maxDate = new Date((this.currentDate.getFullYear()) + 1,\r\n this.currentDate.getMonth(),\r\n this.currentDate.getDate());\r\n }\r\n\r\n // moment.updateLocale('en', {\r\n // weekdaysMin : [\"S\", \"M\", \"T\", \"W\", \"T\", \"F\", \"S\"]\r\n // });\r\n // debugger\r\n const minDate: any = this.minDate;\r\n // const minDate: any = new Date();\r\n\r\n $(elementId).datetimepicker({\r\n // container: $(elementId).parent(),\r\n // icons: {\r\n // time: 'icon-timer',\r\n // previous: 'icon-keyboard_arrow_left',\r\n // next: 'icon-keyboard_arrow_right',\r\n // date: 'icon-date_range',\r\n // up: 'icon-keyboard_arrow_up',\r\n // down: 'icon-keyboard_arrow_down',\r\n // today: 'icon-today',\r\n // clear: 'icon-close1',\r\n // close: 'icon-close1'\r\n // },\r\n format: this.format,\r\n defaultDate,\r\n maxDate,\r\n minDate,\r\n keepOpen: true,\r\n useCurrent: false,\r\n ignoreReadonly: true,\r\n // disabledHours: this.disabledHours,\r\n // inline: true,\r\n // sideBySide: true,\r\n debug: true,\r\n // pickTime: false\r\n });\r\n\r\n // if (defaultDate === 'clear_end_date') {\r\n // $(elementId).val('');\r\n // }\r\n if (this.defaultOpen) {\r\n $(elementId).data('DateTimePicker').show();\r\n }\r\n $(elementId).on('dp.change', (e) => {\r\n self.handleDatePickerChange(e);\r\n if (this.closeOnChange) {\r\n $(elementId).data('DateTimePicker').hide();\r\n }\r\n });\r\n // $(elementId).on('dp.hide', (e) => {\r\n // if (elementId === '#schedule_date') {\r\n // self.handleDatePickerChange(e);\r\n // }\r\n // });\r\n }\r\n\r\n handleDatePickerChange(e) {\r\n const date = e.date ? moment(e.date).format('YYYY-MM-DDTHH:mm:ssZ') : '';\r\n this.handleSelectedDate.emit(date);\r\n }\r\n\r\n closeScheduleLater() {\r\n this.emitCloseScheduling.emit();\r\n }\r\n\r\n closeDateTimePicker() {\r\n const elementId = '#' + this.elementId;\r\n $(elementId).data('DateTimePicker').hide();\r\n }\r\n\r\n openDateTimePicker() {\r\n const elementId = '#' + this.elementId;\r\n $(elementId).data('DateTimePicker').show();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.guide-content_wrapper {\\n width: auto;\\n color: #000000;\\n font-weight: normal;\\n}\\n.guide-content_wrapper .guide-body {\\n width: 22rem;\\n min-height: 20rem;\\n background-color: #ffffff;\\n margin-top: 0.5rem;\\n padding: 1.6rem;\\n border-radius: 2px;\\n display: flex;\\n flex-direction: column;\\n font-family: \\\"Roboto-Regular\\\";\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvZ3VpZGUtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXGd1aWRlLW1vZGFsXFxndWlkZS1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvZ3VpZGUtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvZ3VpZGUtbW9kYWwvZ3VpZGUtbW9kYWwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREVBO0VBRUksV0FBQTtFQUNBLGNDRmtCO0VER2xCLG1CQUFBO0FFQUo7QUZFSTtFQUNJLFlBQUE7RUFDQSxpQkFBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSw2QkN3Rm1CO0FDeEYzQiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2d1aWRlLW1vZGFsL2d1aWRlLW1vZGFsLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCAnc3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuLmd1aWRlLWNvbnRlbnRfd3JhcHBlciB7XHJcblxyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG5cclxuICAgIC5ndWlkZS1ib2R5IHtcclxuICAgICAgICB3aWR0aDogMjJyZW07XHJcbiAgICAgICAgbWluLWhlaWdodDogMjByZW07XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVJvYm90by1SZWd1bGFyO1xyXG4gICAgfVxyXG59IiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLmd1aWRlLWNvbnRlbnRfd3JhcHBlciB7XG4gIHdpZHRoOiBhdXRvO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi5ndWlkZS1jb250ZW50X3dyYXBwZXIgLmd1aWRlLWJvZHkge1xuICB3aWR0aDogMjJyZW07XG4gIG1pbi1oZWlnaHQ6IDIwcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIHBhZGRpbmc6IDEuNnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LWZhbWlseTogXCJSb2JvdG8tUmVndWxhclwiO1xufSJdfQ== */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\n\r\n@Component({\r\n selector: 'app-guide-modal',\r\n templateUrl: './guide-modal.component.html',\r\n styleUrls: ['./guide-modal.component.scss']\r\n})\r\nexport class GuideModalComponent implements OnInit {\r\n\r\n @Input() title: string;\r\n @Input() content: string;\r\n @Input() isFirstSiteTour: boolean;\r\n @Input() isLastSiteTour: boolean;\r\n @Output() emitHandleSiteTourAction = new EventEmitter();\r\n @Output() emitCloseModal = new EventEmitter();\r\n commonConstants = COMMON_CONSTANTS;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n handleSiteTourAction(type: string) {\r\n this.emitHandleSiteTourAction.emit(type);\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n.hvac-detail-modal_wrapper .modal-content {\\n width: 800px;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .heading {\\n font-size: 1.6rem;\\n font-family: \\\"SourceSansPro-Regular\\\";\\n font-weight: bold;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .subheading {\\n font-weight: 400;\\n text-transform: uppercase;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .bottomline {\\n border-bottom: 1px solid #dad9d9;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .topline {\\n border-top: 1px solid #dad9d9;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .line {\\n border-top: 1px solid #dad9d9;\\n border-bottom: 1px solid #dad9d9;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .hvac-detail {\\n margin: 2rem 0rem;\\n word-break: break-all;\\n display: flex;\\n font-size: 1.3rem;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .hvac-detail .hvac-detail-label {\\n font-size: 1.3rem;\\n font-family: \\\"SourceSansPro-Regular\\\";\\n min-width: 18rem;\\n max-width: 25rem;\\n font-weight: bold;\\n}\\n.hvac-detail-modal_wrapper .systemsettings .hvac-detail .ml47 {\\n margin-left: 47% !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1jb21mb3J0YnJpZGdlLW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxodmFjLWNvbWZvcnRicmlkZ2UtbW9kYWxcXGh2YWMtY29tZm9ydGJyaWRnZS1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1jb21mb3J0YnJpZGdlLW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zdGRpbiIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1jb21mb3J0YnJpZGdlLW1vZGFsL2h2YWMtY29tZm9ydGJyaWRnZS1tb2RhbC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQ0lJO0VBQ0ksWUFBQTtBQ0ZSO0FETVE7RUFHSSxpQkFBQTtFQUNBLG9DRG1Gc0I7RUNsRnRCLGlCQUFBO0FDTlo7QURRUTtFQUVJLGdCQUFBO0VBQ0EseUJBQUE7QUNQWjtBRFNRO0VBRUksZ0NBQUE7QUNSWjtBRFVRO0VBQ0ksNkJBQUE7QUNSWjtBRFVRO0VBQ0ksNkJBQUE7RUFDQSxnQ0FBQTtBQ1JaO0FEVVE7RUFDSSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtFQUNBLGlCQUFBO0FDUlo7QURTWTtFQUNJLGlCQUFBO0VBQ0Esb0NEeURrQjtFQ3hEbEIsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0FDUGhCO0FEVVk7RUFDSSwyQkFBQTtBQ1JoQiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2h2YWMtY29tZm9ydGJyaWRnZS1tb2RhbC9odmFjLWNvbWZvcnRicmlkZ2UtbW9kYWwuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiQGltcG9ydCAnc3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuXHJcbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIHtcclxuXHJcbiAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IDgwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zeXN0ZW1zZXR0aW5nc3tcclxuICAgICAgICAuaGVhZGluZ1xyXG4gICAgICAgIHtcclxuICAgICAgICBcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdWJoZWFkaW5nXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYm90dG9tbGluZVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkYWQ5ZDk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50b3BsaW5le1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZDlkOTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpbmV7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGFkOWQ5O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RhZDlkOTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmh2YWMtZGV0YWlsIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDByZW07XHJcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICAgICAgICAgIC5odmFjLWRldGFpbC1sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMThyZW07XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI1cmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tbDQ3e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ3JSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5tb2RhbC1jb250ZW50IHtcbiAgd2lkdGg6IDgwMHB4O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLnN5c3RlbXNldHRpbmdzIC5oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5zeXN0ZW1zZXR0aW5ncyAuc3ViaGVhZGluZyB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuc3lzdGVtc2V0dGluZ3MgLmJvdHRvbWxpbmUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RhZDlkOTtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5zeXN0ZW1zZXR0aW5ncyAudG9wbGluZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGFkOWQ5O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLnN5c3RlbXNldHRpbmdzIC5saW5lIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkYWQ5ZDk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGFkOWQ5O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLnN5c3RlbXNldHRpbmdzIC5odmFjLWRldGFpbCB7XG4gIG1hcmdpbjogMnJlbSAwcmVtO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLnN5c3RlbXNldHRpbmdzIC5odmFjLWRldGFpbCAuaHZhYy1kZXRhaWwtbGFiZWwge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XG4gIG1pbi13aWR0aDogMThyZW07XG4gIG1heC13aWR0aDogMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLnN5c3RlbXNldHRpbmdzIC5odmFjLWRldGFpbCAubWw0NyB7XG4gIG1hcmdpbi1sZWZ0OiA0NyUgIWltcG9ydGFudDtcbn0iXX0= */\"","import { Component, OnInit, Output, Input, EventEmitter } from '@angular/core';\r\nimport { AssetDetail, AssetModelInfo } from '../../models/customer.model';\r\nimport { SystemObject, ACObject, HEATPUMPObject, GasFurnaceObject } from '../../models/dataac.model';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport { HelperService } from '../../services/helper.service';\r\nimport { HVAC_ID } from '../../constants/commom.constant';\r\n@Component({\r\n selector: 'app-hvac-comfortbridge-modal',\r\n templateUrl: './hvac-comfortbridge-modal.component.html',\r\n styleUrls: ['./hvac-comfortbridge-modal.component.scss']\r\n})\r\nexport class HvacComfortbridgeModalComponent implements OnInit {\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() hvacDetails: AssetDetail;\r\n @Input() statusMessage: any;\r\n @Input() isShowRightHeader: boolean;\r\n @Input() isShowCrossMark: boolean;\r\n @Input() isLoading = true;\r\n systemInfo: any;\r\n acInfo: any;\r\n hpInfo: any;\r\n gfInfo: any;\r\n TypeId: any;\r\n readonly HVAC_ID = HVAC_ID;\r\n airHandlerInfo: any;\r\n constructor(private sharedService: SharedService, private helperService: HelperService) { }\r\n ngOnInit() {\r\n console.log(this.hvacDetails)\r\n this.isLoading = true;\r\n this.getComfortBridgeData(this.hvacDetails.meliSerialNumber);\r\n this.TypeId = this.hvacDetails.assetModelInfo.indoorEquipmentType.id;\r\n // this.TypeId=2;\r\n console.log(this.TypeId);\r\n }\r\n getComfortBridgeData(data) {\r\n this.isLoading = true;\r\n this.sharedService.getComfortbridgeData(data).subscribe(\r\n (response) => {\r\n console.log(response)\r\n this.systemInfo = response.responseData['system'] ? response.responseData['system'] : null;\r\n this.gfInfo = response.responseData['furnace'] ? response.responseData['furnace'] : null;\r\n this.acInfo = response.responseData['ac'] ? response.responseData['ac'] : null;\r\n this.hpInfo = response.responseData['heatPump'] ? response.responseData['heatPump'] : null;\r\n this.airHandlerInfo = response.responseData['airHandler'] ? response.responseData['airHandler'] : null;\r\n this.isLoading = false;\r\n console.log(this.systemInfo)\r\n },\r\n (error) => {\r\n }\r\n );\r\n\r\n }\r\n // getSystemData(data) {\r\n // this.sharedService.getSystemSetting(data).subscribe(\r\n // (response) => {\r\n\r\n // this.systemInfo = response.responseData;\r\n // },\r\n // (error) => {\r\n // }\r\n // );\r\n // this.getFuranceData(this.hvacDetails.meliSerialNumber);\r\n // }\r\n // getFuranceData(data) {\r\n // this.sharedService.getFuranceInfo(data).subscribe(\r\n // (response) => {\r\n // this.gfInfo = response.responseData;\r\n // },\r\n // (error) => {\r\n // }\r\n // );\r\n // this.getAcData(this.hvacDetails.meliSerialNumber);\r\n // }\r\n // getAcData(data) {\r\n // this.sharedService.getAcInfo(data).subscribe(\r\n // (response) => {\r\n // this.acInfo = response.responseData;\r\n // },\r\n // (error) => {\r\n // }\r\n // );\r\n // this.getHpData(this.hvacDetails.meliSerialNumber);\r\n // }\r\n // getHpData(data) {\r\n // this.sharedService.getHpInfo(data).subscribe(\r\n // (response) => {\r\n // this.hpInfo = response.responseData;\r\n // this.isLoading = false;\r\n // },\r\n // (error) => {\r\n // this.isLoading = false;\r\n // }\r\n // );\r\n // }\r\n closeModal() {\r\n this.emitCloseModal.emit()\r\n }\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.hvac-detail-modal_wrapper .modal-content {\\n width: 650px;\\n}\\n.hvac-detail-modal_wrapper .banner-title {\\n margin: 0 1rem auto;\\n}\\n.hvac-detail-modal_wrapper .hvac_body {\\n font-weight: 400 !important;\\n color: #4D4F5C !important;\\n font-size: 1.3rem !important;\\n}\\n.hvac-detail-modal_wrapper .hvac-detail {\\n margin: 1.5rem 1.5rem;\\n word-break: break-all;\\n display: flex;\\n font-size: 1.3rem !important;\\n align-items: center;\\n color: #4D4F5C;\\n}\\n.hvac-detail-modal_wrapper .hvac-detail .hvac-detail-label {\\n font-size: 1.3rem;\\n font-weight: 700;\\n min-width: 16rem;\\n max-width: 16rem;\\n color: #4D4F5C;\\n padding-right: 30px;\\n}\\n.hvac-detail-modal_wrapper .hvac-detail-click {\\n margin: 0.5rem 1.5rem;\\n}\\n.hvac-detail-modal_wrapper hr {\\n background-color: #d9d9d9;\\n border: 1px solid #f1f1f1;\\n}\\n.hvac-detail-modal_wrapper .icon_display {\\n margin-top: 2rem;\\n}\\n.hvac-detail-modal_wrapper .enabled_background {\\n background-color: #4d4f50;\\n border-radius: 50%;\\n /* padding: 3%; */\\n /* margin: 7px; */\\n width: 20px;\\n height: 20px;\\n padding: 5px;\\n align-items: center;\\n}\\n.hvac-detail-modal_wrapper .disabled_background {\\n background-color: #e9e9f0;\\n border-radius: 50%;\\n /* padding: 3%; */\\n /* margin: 7px; */\\n width: 20px;\\n height: 20px;\\n padding: 5px;\\n align-items: center;\\n}\\n.hvac-detail-modal_wrapper .sliderimg {\\n height: 11rem;\\n width: 18rem;\\n margin: 15px 20px;\\n}\\n.hvac-detail-modal_wrapper .btn_comfort {\\n background-color: #136363 !important;\\n color: #ffffff;\\n border: 1px solid #136363 !important;\\n height: 4rem;\\n padding: 1rem 2rem;\\n margin-top: 1rem;\\n border-radius: 3px;\\n}\\n.hvac-detail-modal_wrapper .enlarge {\\n background-color: #4d4f50;\\n height: 200%;\\n width: 200%;\\n margin: 0px !important;\\n}\\n.hvac-detail-modal_wrapper .overla {\\n z-index: 0 !important;\\n}\\n.hvac-detail-modal_wrapper .modal-footer {\\n margin-top: 4px !important;\\n}\\n.hvac-detail-modal_wrapper .close_div {\\n display: flex !important;\\n justify-content: flex-end !important;\\n background-color: #000000 !important;\\n}\\n.hvac-detail-modal_wrapper .modal-close-image {\\n background-color: #ffffff !important;\\n padding: 0.5rem !important;\\n border-radius: 50% !important;\\n height: 35px !important;\\n width: 35px !important;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper {\\n width: 100%;\\n height: 100%;\\n background-color: #1b2638;\\n color: #b8c7e0;\\n font-family: \\\"SourceSansPro-Regular\\\";\\n font-size: 1.5rem;\\n overflow: hidden;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .header_wrapper {\\n position: absolute;\\n top: 0;\\n width: 100%;\\n height: 10rem;\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 2rem;\\n background-image: linear-gradient(#0e1624, rgba(14, 22, 36, 0));\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .header_wrapper .image-avatar-icon {\\n color: #ffc400;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .header_wrapper .image-name {\\n font-weight: 500;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .header_wrapper .close-btn:hover {\\n background: #313d52;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .hvac-image_wrapper {\\n height: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow-x: auto;\\n overflow-y: auto;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .hvac-image_wrapper .hvac-img-tag {\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n -ms-interpolation-mode: nearest-neighbor;\\n image-rendering: -moz-crisp-edges;\\n image-rendering: pixelated;\\n margin: auto;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .left-arrow-icon_wrapper {\\n position: absolute;\\n top: 50%;\\n left: 0;\\n margin-left: 2rem;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .right-arrow-icon_wrapper {\\n position: absolute;\\n top: 50%;\\n right: 0;\\n margin-right: 2rem;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .footer_wrapper {\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n height: 10rem;\\n padding: 2rem;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n background-image: linear-gradient(to top, #0e1624, rgba(14, 22, 36, 0));\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .footer_wrapper .zoom-icon:hover {\\n background: #313d52;\\n}\\n.hvac-detail-modal_wrapper .enlarged-image_wrapper .transition-opacity-03-ease-0 {\\n transition: opacity 0.3s ease 0s;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1kZXRhaWwtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXGh2YWMtZGV0YWlsLW1vZGFsXFxodmFjLWRldGFpbC1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1kZXRhaWwtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1kZXRhaWwtbW9kYWwvaHZhYy1kZXRhaWwtbW9kYWwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRElJO0VBQ0ksWUFBQTtBRURSO0FGSUE7RUFFSSxtQkFBQTtBRUhKO0FGS0c7RUFDQywyQkFBQTtFQUNBLHlCQUFBO0VBQ0EsNEJBQUE7QUVISjtBRktJO0VBQ0kscUJBQUE7RUFDQSxxQkFBQTtFQUNBLGFBQUE7RUFDQSw0QkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBRUhSO0FGSVE7RUFDSSxpQkFBQTtFQUNBLGdCQUFBO0VBRUEsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtBRUhaO0FGZUk7RUFDSSxxQkFBQTtBRWJSO0FGZUk7RUFDSSx5QkFBQTtFQUNBLHlCQUFBO0FFYlI7QUZlSTtFQUVJLGdCQUFBO0FFZFI7QUZnQkk7RUFFSSx5QkFBQTtFQUNKLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0FFZko7QUZpQkk7RUFFSSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0FFaEJSO0FGa0JJO0VBRUksYUFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtBRWpCUjtBRm1CSTtFQUNJLG9DQUFBO0VBQ0osY0FBQTtFQUNBLG9DQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBRWpCSjtBRm1CSTtFQUVJLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxzQkFBQTtBRWxCUjtBRm9CSTtFQUNJLHFCQUFBO0FFbEJSO0FGb0JJO0VBQ0ksMEJBQUE7QUVsQlI7QUZvQkk7RUFDSSx3QkFBQTtFQUNKLG9DQUFBO0VBQ0Esb0NBQUE7QUVsQko7QUZxQkk7RUFDSSxvQ0FBQTtFQUNKLDBCQUFBO0VBQ0EsNkJBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0FFbkJKO0FGdUJJO0VBQ0ksV0FBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtFQUNBLGNBQUE7RUFDQSxvQ0M1QjBCO0VENkIxQixpQkFBQTtFQUNBLGdCQUFBO0FFckJSO0FGdUJRO0VBRUksa0JBQUE7RUFDQSxNQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSw4QkFBQTtFQUNBLGFBQUE7RUFDQSwrREFBQTtBRXRCWjtBRnlCWTtFQUNJLGNBQUE7QUV2QmhCO0FGMEJZO0VBQ0ksZ0JBQUE7QUV4QmhCO0FGMkJZO0VBQ0ksbUJBQUE7QUV6QmhCO0FGNkJRO0VBQ0ksWUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtBRTNCWjtBRjhCWTtFQUNJLHlCQUFBO0tBQUEsc0JBQUE7TUFBQSxxQkFBQTtVQUFBLGlCQUFBO0VBQ0Esd0NBQUE7TUFBQSxpQ0FBQTtNQUFBLDBCQUFBO0VBQ0EsWUFBQTtBRTVCaEI7QUZvQ1E7RUFDSSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0VBQ0EsaUJBQUE7QUVsQ1o7QUZxQ1E7RUFDSSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxRQUFBO0VBQ0Esa0JBQUE7QUVuQ1o7QUZzQ1E7RUFDSSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLGFBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLHVFQUFBO0FFcENaO0FGc0NZO0VBQ0ksbUJBQUE7QUVwQ2hCO0FGd0NRO0VBQ0ksZ0NBQUE7QUV0Q1oiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9odmFjLWRldGFpbC1tb2RhbC9odmFjLWRldGFpbC1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkBpbXBvcnQgJ3NyYy9zdHlsZXNoZWV0cy92YXJpYWJsZXMuc2Nzcyc7XHJcbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIHtcclxuXHJcbiAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IDY1MHB4O1xyXG4gICAgfVxyXG4gICAgXHJcbi5iYW5uZXItdGl0bGVcclxue1xyXG4gICAgbWFyZ2luOiAwIDFyZW0gYXV0bztcclxufVxyXG4gICAuaHZhY19ib2R5e1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICM0RDRGNUMgIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogMS4zcmVtICFpbXBvcnRhbnQ7XHJcbiAgIH1cclxuICAgIC5odmFjLWRldGFpbCB7XHJcbiAgICAgICAgbWFyZ2luOiAxLjVyZW0gMS41cmVtO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjojNEQ0RjVDO1xyXG4gICAgICAgIC5odmFjLWRldGFpbC1sYWJlbCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAvLyBmb250LWZhbWlseTogUm9ib3RvO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDE2cmVtO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE2cmVtO1xyXG4gICAgICAgICAgICBjb2xvcjogIzRENEY1QztcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgICAgICAgICAgXHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gLmh2YWMtZGV0YWlsLWxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAvLyAgICAgY29udGVudDogJzonO1xyXG4gICAgICAgIC8vICAgICByaWdodDogMDtcclxuICAgICAgICAvLyAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xyXG4gICAgICAgIC8vIH1cclxuICAgIH1cclxuICAgIC5odmFjLWRldGFpbC1jbGlja3tcclxuICAgICAgICBtYXJnaW46IDAuNXJlbSAxLjVyZW07XHJcbiAgICB9XHJcbiAgICBocntcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYxZjE7XHJcbiAgICB9XHJcbiAgICAuaWNvbl9kaXNwbGF5XHJcbiAgICB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIH1cclxuICAgIC5lbmFibGVkX2JhY2tncm91bmRcclxuICAgIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZjUwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgLyogcGFkZGluZzogMyU7ICovXHJcbiAgICAvKiBtYXJnaW46IDdweDsgKi9cclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5kaXNhYmxlZF9iYWNrZ3JvdW5kXHJcbiAgICB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTlmMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgLyogcGFkZGluZzogMyU7ICovXHJcbiAgICAgICAgLyogbWFyZ2luOiA3cHg7ICovXHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlcmltZ1xyXG4gICAge1xyXG4gICAgICAgIGhlaWdodDogMTFyZW07XHJcbiAgICAgICAgd2lkdGg6MThyZW07XHJcbiAgICAgICAgbWFyZ2luOiAxNXB4IDIwcHg7XHJcbiAgICB9XHJcbiAgICAuYnRuX2NvbWZvcnR7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEzNjM2MyAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMTM2MzYzICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDRyZW07XHJcbiAgICBwYWRkaW5nOiAxcmVtIDJyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgfVxyXG4gICAgLmVubGFyZ2VcclxuICAgIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZjUwO1xyXG4gICAgICAgIGhlaWdodDoyMDAlO1xyXG4gICAgICAgIHdpZHRoOjIwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5vdmVybGF7XHJcbiAgICAgICAgei1pbmRleDowICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAubW9kYWwtZm9vdGVye1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDRweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmNsb3NlX2RpdntcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsLWNsb3NlLWltYWdle1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDM1cHggIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAzNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5lbmxhcmdlZC1pbWFnZV93cmFwcGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI3LCAzOCwgNTYpO1xyXG4gICAgICAgIGNvbG9yOiByZ2IoMTg0LCAxOTksIDIyNCk7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgIC5oZWFkZXJfd3JhcHBlciB7XHJcblxyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTByZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgcGFkZGluZzogMnJlbTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHJnYigxNCwgMjIsIDM2KSwgcmdiYSgxNCwgMjIsIDM2LCAwKSk7XHJcbiAgICAgICAgICAgIC8vIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICAgICAuaW1hZ2UtYXZhdGFyLWljb24ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYigyNTUsIDE5NiwgMCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jbG9zZS1idG46aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDQ5LCA2MSwgODIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaHZhYy1pbWFnZV93cmFwcGVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgLmh2YWMtaW1nLXRhZyB7XHJcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgICAgICAgIGltYWdlLXJlbmRlcmluZzogcGl4ZWxhdGVkO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgLy8gdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgLy8gbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5sZWZ0LWFycm93LWljb25fd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnJpZ2h0LWFycm93LWljb25fd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyX3dyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTByZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2IoMTQsIDIyLCAzNiksIHJnYmEoMTQsIDIyLCAzNiwgMCkpO1xyXG5cclxuICAgICAgICAgICAgLnpvb20taWNvbjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoNDksIDYxLCA4Mik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50cmFuc2l0aW9uLW9wYWNpdHktMDMtZWFzZS0wIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcblxyXG59IiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNvbnRlbnQge1xuICB3aWR0aDogNjUwcHg7XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuYmFubmVyLXRpdGxlIHtcbiAgbWFyZ2luOiAwIDFyZW0gYXV0bztcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5odmFjX2JvZHkge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNEQ0RjVDICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS4zcmVtICFpbXBvcnRhbnQ7XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuaHZhYy1kZXRhaWwge1xuICBtYXJnaW46IDEuNXJlbSAxLjVyZW07XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxLjNyZW0gIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICM0RDRGNUM7XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuaHZhYy1kZXRhaWwgLmh2YWMtZGV0YWlsLWxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1pbi13aWR0aDogMTZyZW07XG4gIG1heC13aWR0aDogMTZyZW07XG4gIGNvbG9yOiAjNEQ0RjVDO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmh2YWMtZGV0YWlsLWNsaWNrIHtcbiAgbWFyZ2luOiAwLjVyZW0gMS41cmVtO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgaHIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjFmMWYxO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmljb25fZGlzcGxheSB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuZW5hYmxlZF9iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRkNGY1MDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAvKiBwYWRkaW5nOiAzJTsgKi9cbiAgLyogbWFyZ2luOiA3cHg7ICovXG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5kaXNhYmxlZF9iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTlmMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAvKiBwYWRkaW5nOiAzJTsgKi9cbiAgLyogbWFyZ2luOiA3cHg7ICovXG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5zbGlkZXJpbWcge1xuICBoZWlnaHQ6IDExcmVtO1xuICB3aWR0aDogMThyZW07XG4gIG1hcmdpbjogMTVweCAyMHB4O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmJ0bl9jb21mb3J0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEzNjM2MyAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzEzNjM2MyAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDRyZW07XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmVubGFyZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ0ZjUwO1xuICBoZWlnaHQ6IDIwMCU7XG4gIHdpZHRoOiAyMDAlO1xuICBtYXJnaW46IDBweCAhaW1wb3J0YW50O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLm92ZXJsYSB7XG4gIHotaW5kZXg6IDAgIWltcG9ydGFudDtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5tb2RhbC1mb290ZXIge1xuICBtYXJnaW4tdG9wOiA0cHggIWltcG9ydGFudDtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5jbG9zZV9kaXYge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNsb3NlLWltYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMzVweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMzVweCAhaW1wb3J0YW50O1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmVubGFyZ2VkLWltYWdlX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIyNjM4O1xuICBjb2xvcjogI2I4YzdlMDtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmVubGFyZ2VkLWltYWdlX3dyYXBwZXIgLmhlYWRlcl93cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjMGUxNjI0LCByZ2JhKDE0LCAyMiwgMzYsIDApKTtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5lbmxhcmdlZC1pbWFnZV93cmFwcGVyIC5oZWFkZXJfd3JhcHBlciAuaW1hZ2UtYXZhdGFyLWljb24ge1xuICBjb2xvcjogI2ZmYzQwMDtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5lbmxhcmdlZC1pbWFnZV93cmFwcGVyIC5oZWFkZXJfd3JhcHBlciAuaW1hZ2UtbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuZW5sYXJnZWQtaW1hZ2Vfd3JhcHBlciAuaGVhZGVyX3dyYXBwZXIgLmNsb3NlLWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzMTNkNTI7XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuZW5sYXJnZWQtaW1hZ2Vfd3JhcHBlciAuaHZhYy1pbWFnZV93cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5lbmxhcmdlZC1pbWFnZV93cmFwcGVyIC5odmFjLWltYWdlX3dyYXBwZXIgLmh2YWMtaW1nLXRhZyB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmVubGFyZ2VkLWltYWdlX3dyYXBwZXIgLmxlZnQtYXJyb3ctaWNvbl93cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG59XG4uaHZhYy1kZXRhaWwtbW9kYWxfd3JhcHBlciAuZW5sYXJnZWQtaW1hZ2Vfd3JhcHBlciAucmlnaHQtYXJyb3ctaWNvbl93cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbi5odmFjLWRldGFpbC1tb2RhbF93cmFwcGVyIC5lbmxhcmdlZC1pbWFnZV93cmFwcGVyIC5mb290ZXJfd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMHJlbTtcbiAgcGFkZGluZzogMnJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICMwZTE2MjQsIHJnYmEoMTQsIDIyLCAzNiwgMCkpO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmVubGFyZ2VkLWltYWdlX3dyYXBwZXIgLmZvb3Rlcl93cmFwcGVyIC56b29tLWljb246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzEzZDUyO1xufVxuLmh2YWMtZGV0YWlsLW1vZGFsX3dyYXBwZXIgLmVubGFyZ2VkLWltYWdlX3dyYXBwZXIgLnRyYW5zaXRpb24tb3BhY2l0eS0wMy1lYXNlLTAge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSAwcztcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter, OnChanges, ViewChild, ElementRef } from '@angular/core';\r\n\r\n// Models\r\n//import { MeliAssetInfo } from 'src/app/shared/models/meli.model';\r\nimport { AssetDetail, AssetModelInfo, HVACInformation, HVACInformationResponse, TypeList } from '../../models/customer.model';\r\nimport { HVAC_ID } from \"../../constants/commom.constant\";\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport * as moment from 'moment';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ContractorSharedService } from 'projects/contractor/src/app/shared-contractor/services/shared.service';\r\nimport { ToasterType } from '../../constants/toaster.enum';\r\nimport { HelperService } from '../../services/helper.service';\r\nimport { arrayMax } from 'highcharts';\r\n// import { Event } from 'rxjs';\r\n@Component({\r\n selector: 'app-hvac-detail-modal',\r\n templateUrl: './hvac-detail-modal.component.html',\r\n styleUrls: ['./hvac-detail-modal.component.scss']\r\n})\r\nexport class HvacDetailModalComponent implements OnInit, OnChanges {\r\n\r\n @ViewChild('hvacImageTag', { static: false }) hvacImageTag: ElementRef;\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() emitHandleDeleteHavac = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() hvacDetail: AssetDetail[];\r\n @Input() statusMessage: any;\r\n @Input() isShowRightHeader: boolean;\r\n @Input() isShowCrossMark: boolean;\r\n @Input() isLoading = true;\r\n @Input() showDeleteButton : boolean;\r\n @Output() emitHandleRefreshPage = new EventEmitter();\r\n portalName: string;\r\n roleConstants = ROLE_CONSTANTS;\r\n isHVACLoading = true;\r\n hvacDetailCopy:AssetDetail[]=[];\r\n HVACInformationList: HVACInformation;\r\n assetModelInfo: AssetModelInfo;\r\n editHVAC: FormGroup;\r\n indoorEquipment: FormGroup;\r\n outdoorEquipment: FormGroup;\r\n assetUnitType: any;\r\n nextDisabled = false;\r\n prevDisabled = true;\r\n readonly HVAC_ID = HVAC_ID;\r\n isShowHVACComfortModal = false;\r\n isShowComfortBridgeButton = false;\r\n HVACDetails: any;\r\n isChannel:any;\r\n HVACImageList = [];\r\n currentImageIndex = 0;\r\n isShowEnlargedImage = false;\r\n currentZoomSize = 0;\r\n currentImageWidth = 0;\r\n currentImageHeight = 0;\r\n defaultImageWidth = 0;\r\n defaultImageHeight = 0;\r\n maxZoomout = -4;\r\n maxZoomin = 5;\r\n showImageOptions = true;\r\n imageIdleTime;\r\n isEdit = false;\r\n count = 0;\r\n prevGroup;\r\n prevIndex;\r\n isToggleButtons = true;\r\n prevHVACInfo;\r\n infoModalType: string;\r\n confirmationModalTitle: string;\r\n confirmationModalLine2Content: string;\r\n isConfirmationModalHasYesOrNoButton: boolean;\r\n isShowConfirmationModal: boolean=false;\r\n confirmationModalLine1Content: string;\r\n tempHVACInformationList: HVACInformation;\r\nSELECTED_ID1:number;\r\nSELECTED_ID2:number;\r\n preSeasonTestResponseDetails: any;\r\n constructor(private SharedService: SharedService,\r\n private router: Router,\r\n private helperService: HelperService,\r\n private contractorSharedService: ContractorSharedService,\r\n private elementRef: ElementRef,\r\n private activatedRoute: ActivatedRoute\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.isHVACLoading = true;\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n if (this.portalName === this.roleConstants.CHANNEL) {\r\n this.isEdit = true;\r\n }\r\n }\r\n });\r\n \r\n // this.getDropdownData();\r\n this.HVACImageList = this.hvacDetail && this.hvacDetail.length &&\r\n this.hvacDetail[0] && this.hvacDetail[0].images;\r\n // this.hvacDetail.map(hvacDetail => {\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n let portalName = data.portalName;\r\n if (data.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n this.isChannel=true;\r\n }\r\n } \r\n });\r\n this.editHVAC = new FormGroup(\r\n {\r\n systemConfiguration: new FormControl(\r\n '', [Validators.required]),\r\n zonedSystem: new FormControl('', ),\r\n filterType: new FormControl('', ),\r\n filterLength: new FormControl('', ),\r\n filterWidth: new FormControl('',),\r\n filterThickness: new FormControl('', ),\r\n heatType: new FormControl('', ),\r\n fuelType: new FormControl('', ),\r\n indoorMultiStage: new FormControl('', ),\r\n locations: new FormControl('',[Validators.required] ),\r\n indoorAssetUnitSerialNumber: new FormControl('', ),\r\n indoorEquipmentMake: new FormControl('', ),\r\n indoorModelNo: new FormControl('', ),\r\n indoorEquipmentType: new FormControl('', [Validators.required]),\r\n indoorEquipmentHeatType:new FormControl('',),\r\n ratedCapacity: new FormControl('', ),\r\n ratedElectricStripCapacity: new FormControl('', ),\r\n variableSpeedBlower: new FormControl('', ),\r\n outdoorAssetUnitSerialNumber: new FormControl('', ),\r\n outdoorEquipmentMake: new FormControl('', ),\r\n outdoorModelNo: new FormControl('', ),\r\n outdoorEquipmentType: new FormControl('', [Validators.required]),\r\n outdoorNominalACCapacity: new FormControl('', ),\r\n outdoorSeer: new FormControl('', ),\r\n outdoorInverterCompressor: new FormControl('', ),\r\n outdoorMultiStage: new FormControl('', ),\r\n reversingValve:new FormControl('',),\r\n heatSourceValue:new FormControl(false)\r\n });\r\n\r\n // }, this);\r\n this.handleHVACdata();\r\n\r\n \r\n\r\n \r\n }\r\n handleHVACdata(){\r\n let isIndoorDataPushed = false;\r\n let hvac1:AssetDetail;\r\n if(this.hvacDetail){\r\n this.hvacDetail.forEach(hvac => {\r\n if(hvac.assetUnitType=='indoor' && !isIndoorDataPushed){\r\n this.hvacDetailCopy.push(hvac);\r\n isIndoorDataPushed=true;\r\n }\r\n else if(hvac.assetUnitType=='outdoor' && isIndoorDataPushed){\r\n this.hvacDetailCopy.push(hvac);\r\n }\r\n else{\r\n hvac1=hvac\r\n }\r\n \r\n });\r\n \r\n if(hvac1){\r\n this.hvacDetailCopy.push(hvac1);\r\n }\r\n \r\n this.hvacDetail=this.hvacDetailCopy\r\n \r\n this.getDropdownData(this.hvacDetail);\r\n }\r\n \r\n }\r\n handleModelOnChange(flag: string, event: number, e?) {\r\n console.log(flag,event)\r\n if(e)\r\n {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }\r\n \r\n if (this.prevIndex !== event) {\r\n this.count = 0;\r\n }\r\n if (this.count === 0) {\r\n this.prevGroup = this.editHVAC.getRawValue();\r\n }\r\n else {\r\n if (event === 1) {\r\n this.editHVAC.addControl('fuelType', new FormControl(this.prevGroup.fuelType,));\r\n //this.editHVAC.addControl('heatType', new FormControl(this.prevGroup.heatType,));\r\n this.editHVAC.addControl('ratedElectricStripCapacity', new FormControl(this.prevGroup.ratedElectricStripCapacity,));\r\n } else if(event === HVAC_ID.ID2 || event==HVAC_ID.ID1){\r\n this.editHVAC.addControl('outdoorAssetUnitSerialNumber', new FormControl(this.prevGroup.outdoorAssetUnitSerialNumber));\r\n this.editHVAC.addControl('outdoorEquipmentMake', new FormControl(this.prevGroup.outdoorEquipmentMake));\r\n this.editHVAC.addControl('outdoorModelNo', new FormControl(this.prevGroup.outdoorModelNo));\r\n this.editHVAC.addControl('outdoorSeer', new FormControl(this.prevGroup.outdoorSeer));\r\n this.editHVAC.addControl('outdoorInverterCompressor', new FormControl(this.prevGroup.outdoorInverterCompressor));\r\n this.editHVAC.addControl('outdoorMultiStage', new FormControl(this.prevGroup.outdoorMultiStage));\r\n this.editHVAC.addControl('ratedCapacity', new FormControl(this.prevGroup.ratedCapacity));\r\n }\r\n }\r\n if (flag === 'deviceType') {\r\n if(event===2) {\r\n if (this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID2.toString())\r\n {\r\n let arr=[];\r\n let arrout=[];\r\n this.tempHVACInformationList.indoorEquipmentTypeList.forEach(d=>{\r\n d.id!=3?arr.push(d):'';\r\n })\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id!=1?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.indoorEquipmentTypeList=arr;\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n //console.log( this.tempHVACInformationList.indoorEquipmentTypeList, this.HVACInformationList.indoorEquipmentTypeList)\r\n // this.editHVAC.get('outdoorEquipmentType').value = data['id']\r\n this.editHVAC.removeControl('outdoorAssetUnitSerialNumber');\r\n this.editHVAC.removeControl('outdoorEquipmentMake');\r\n this.editHVAC.removeControl('outdoorModelNo');\r\n this.editHVAC.removeControl('outdoorSeer');\r\n this.editHVAC.removeControl('outdoorInverterCompressor');\r\n this.editHVAC.removeControl('outdoorMultiStage');\r\n // this.editHVAC.patchValue({\r\n // outdoorEquipmentType:data[0]['id']})\r\n }\r\n else if (this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID3.toString())\r\n {\r\n let arr=[];\r\n let arrout=[];\r\n this.tempHVACInformationList.indoorEquipmentTypeList.forEach(d=>{\r\n d.id==2?arr.push(d):'';\r\n })\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id!=3?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.indoorEquipmentTypeList=arr;\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n }\r\n else {\r\n let arrout=[];\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id!=3?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n this.HVACInformationList.indoorEquipmentTypeList=this.tempHVACInformationList.indoorEquipmentTypeList;\r\n this.editHVAC.addControl('outdoorAssetUnitSerialNumber', new FormControl(''));\r\n this.editHVAC.addControl('outdoorEquipmentMake', new FormControl(''));\r\n this.editHVAC.addControl('outdoorModelNo', new FormControl(''));\r\n this.editHVAC.addControl('outdoorSeer', new FormControl(''));\r\n this.editHVAC.addControl('outdoorInverterCompressor', new FormControl(''));\r\n this.editHVAC.addControl('outdoorMultiStage', new FormControl(''));\r\n }\r\n this.handleOutdoorDropDownValues();\r\n this.handleheatSourceValue(e);\r\n // if(e)\r\n // {\r\n // this.handleEmptyDropdown(event)\r\n // }\r\n }\r\n if (event === 1) {\r\n if (this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_FURNACE.toString() ) \r\n {\r\n this.editHVAC.removeControl('ratedElectricStripCapacity');\r\n this.editHVAC.addControl('fuelType', new FormControl(''));\r\n //this.editHVAC.addControl('heatType', new FormControl(''));\r\n } \r\n else if (this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString()) \r\n {\r\n this.editHVAC.removeControl('fuelType');\r\n //this.editHVAC.removeControl('heatType');\r\n this.editHVAC.removeControl('ratedElectricStripCapacity');\r\n } \r\n else if (\r\n this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER_WITH_ELEC_STRIP.toString()\r\n ) \r\n {\r\n this.editHVAC.removeControl('fuelType');\r\n //this.editHVAC.removeControl('heatType');\r\n this.editHVAC.addControl('ratedElectricStripCapacity', new FormControl(''));\r\n }\r\n this.handleOutdoorDropDownValues();\r\n this.handleheatSourceValue(e);\r\n // if(e)\r\n // {\r\n // this.handleEmptyDropdown(event)\r\n // }\r\n } \r\n if(event===3) {\r\n let data = this.HVACInformationList.outdoorEquipmentTypeList.filter((dataa)=>dataa.id==HVAC_ID.ID2)\r\n console.log(this.editHVAC.get('outdoorEquipmentType').value)\r\n if (this.editHVAC.get('outdoorEquipmentType').value === HVAC_ID.ID2.toString()||this.editHVAC.get('outdoorEquipmentType').value === HVAC_ID.ID4.toString())\r\n {\r\n this.editHVAC.addControl('reversingValve', new FormControl('O TERMINAL'));\r\n }\r\n else {\r\n this.editHVAC.removeControl('reversingValve');\r\n }\r\n this.handleheatSourceValue(e);\r\n }\r\n }\r\n this.count++;\r\n this.prevIndex = event;\r\n // this.prevHVACInfo = this.editHVAC.getRawValue();\r\n }\r\n\r\n handleheatSourceValue(e?)\r\n {\r\n if(e)\r\n {\r\n if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID1.toString()&&\r\n this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString()\r\n &&this.editHVAC.get('outdoorEquipmentType').value === HVAC_ID.ID1.toString()){\r\n this.editHVAC.addControl('heatSourceValue',new FormControl(''));\r\n }\r\n else\r\n {\r\n this.editHVAC.removeControl('heatSourceValue');\r\n }\r\n }\r\n else\r\n {\r\n\r\n if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID1.toString()&&\r\n this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString()\r\n &&this.editHVAC.get('outdoorEquipmentType').value === HVAC_ID.ID1.toString()){\r\n let a = this.hvacDetail[0].assetModelInfo.heatSource==true?true:false;\r\n console.log(this.prevGroup)\r\nthis.editHVAC.addControl('heatSourceValue',new FormControl(a));\r\n }\r\n else\r\n {\r\n this.editHVAC.removeControl('heatSourceValue');\r\n }\r\n \r\n }\r\n \r\n }\r\nhandleOutdoorDropDownValues()\r\n{\r\n if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID2.toString()&&this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_FURNACE.toString())\r\n {\r\n let arrout=[];\r\n\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id==3?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n }\r\n else if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID2.toString()&&this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString())\r\n {\r\n let arr=[];\r\n let arrout=[];\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id==2?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n }\r\n else if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID1.toString()&&(this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_FURNACE.toString()||this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER_WITH_ELEC_STRIP.toString()))\r\n {\r\n let arr=[];\r\n let arrout=[];\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id!=3?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n }\r\n else if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID1.toString()&&this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString())\r\n {\r\n let arr=[];\r\n let arrout=[];\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id!=3?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n }\r\n else if(this.editHVAC.get('systemConfiguration').value === HVAC_ID.ID3.toString()&&this.editHVAC.get('indoorEquipmentType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString())\r\n {\r\n let arrout=[];\r\n this.tempHVACInformationList.outdoorEquipmentTypeList.forEach(d=>{\r\n d.id!=3?arrout.push(d):'';\r\n })\r\n this.HVACInformationList.outdoorEquipmentTypeList=arrout;\r\n }\r\n}\r\nhandleEmptyDropdown(dropdownevent)\r\n{\r\n if(dropdownevent==2)\r\n {\r\n this.editHVAC.patchValue({\r\n indoorEquipmentType:this.HVACInformationList.indoorEquipmentTypeList[0].id,\r\n outdoorEquipmentType:this.HVACInformationList.outdoorEquipmentTypeList[0].id\r\n })\r\n }\r\n else\r\n {\r\n this.editHVAC.patchValue({\r\n outdoorEquipmentType:this.HVACInformationList.outdoorEquipmentTypeList[0].id\r\n })\r\n \r\n }\r\n}\r\n\r\n updateCheckBoxVal(eve) {\r\n this.editHVAC.patchValue({\r\n heatSourceValue:eve.target.checked}\r\n );\r\n this.handleButtonsOnChanges();\r\n }\r\n\r\n handleFetchValueFromId(key: string, id: any) {\r\n let selectedValue;\r\n if (this.HVACInformationList && this.HVACInformationList[key] &&\r\n this.HVACInformationList[key].length) {\r\n selectedValue = this.HVACInformationList[key].find((currentValue: TypeList) => currentValue.id.toString() === (id && id.toString()));\r\n }\r\n return selectedValue;\r\n }\r\n\r\n checkValidation()\r\n {\r\n if(this.editHVAC.valid)\r\n {\r\n this.checkPreseasonStatus();\r\n }\r\n else\r\n {\r\n console.log(this.editHVAC);\r\n this.editHVAC.markAllAsTouched();\r\n }\r\n }\r\n\r\n checkPreseasonStatus()\r\n {\r\n \r\n const queryParams = {\r\n boardSerialNumber: this.hvacDetail[0].meliSerialNumber,\r\n };\r\n this.SharedService.getPreSeasonTestStatus(queryParams).subscribe(\r\n (response) => {\r\n //et sdate = response.scheduleTime;\r\n this.preSeasonTestResponseDetails = response;\r\n if (response.responseData.status == 'SCHEDULED') {\r\n this.handleModalType('preseasoncheck')\r\n }\r\n else if (response.responseData.status == 'RUNNING') {\r\n this.handleModalType('preseasoncheck')\r\n }\r\n }, (error) => {\r\n this.editHvacData();\r\n }\r\n );\r\n }\r\n\r\n handleCancelPreSeasonTest() {\r\n const queryParams = {\r\n boardSerialNumber: this.hvacDetail[0].meliSerialNumber,\r\n\r\n };\r\n this.SharedService.handleCancelPreSeasonTest(queryParams).subscribe(\r\n (response) => {\r\n this.editHvacData();\r\n }, (error) => {\r\n this.editHvacData();\r\n }\r\n );\r\n }\r\n editHvacData() {\r\n //console.log(this.editHVAC.get('heatSourceValue')?this.editHVAC.get('heatSourceValue').value:'')\r\n let payload = [];\r\n let indoor = {\r\n assetModelInfo: {}\r\n };\r\n let outdoor = {\r\n assetModelInfo: {}\r\n };\r\n this.hvacDetail.forEach(hvac => {\r\n if (hvac.assetUnitType == 'indoor') {\r\n console.log(this.editHVAC)\r\n const deviceTypeValue = this.handleFetchValueFromId('indoorEquipmentTypeList', this.editHVAC.get('indoorEquipmentType').value);\r\n indoor['assetUnitTypeId'] = hvac.assetUnitTypeId ? hvac.assetUnitTypeId : null;\r\n indoor['assetUnitName'] = hvac.assetUnitName ? hvac.assetUnitName : null\r\n indoor['assetUnitType'] = hvac.assetUnitType ? hvac.assetUnitType : null\r\n // indoor['assetUnitSerialNumber'] = hvac.assetUnitSerialNumber ? hvac.assetUnitSerialNumber : null\r\n indoor['assetUnitUniqueId'] = hvac.assetUnitUniqueId ? hvac.assetUnitUniqueId : null\r\n indoor['assetModelInfo']['systemConfigurationId'] = this.editHVAC.get('systemConfiguration').value == \"\" ? null : parseInt(this.editHVAC.get('systemConfiguration').value)\r\n indoor['assetModelInfo']['assetModelInfoId'] = hvac.assetModelInfo.assetModelInfoId ? hvac.assetModelInfo.assetModelInfoId : null\r\n indoor['assetModelInfo']['meteringDeviceId'] = hvac.assetModelInfo.meteringDevice ? hvac.assetModelInfo.meteringDevice.id : null\r\n indoor['assetModelInfo']['isEquipmentId'] = hvac.assetModelInfo.equipmentIs ? hvac.assetModelInfo.equipmentIs.id : null\r\n indoor['assetModelInfo']['zonedSystemId'] = this.editHVAC.get('zonedSystem').value == \"\" ? null : parseInt(this.editHVAC.get('zonedSystem').value)\r\n indoor['assetModelInfo']['filterTypeId'] = this.editHVAC.get('filterType').value == \"\" ? null : parseInt(this.editHVAC.get('filterType').value)\r\n indoor['assetModelInfo']['filterLengthId'] = this.editHVAC.get('filterLength').value == \"\" ? null : parseInt(this.editHVAC.get('filterLength').value)\r\n indoor['assetModelInfo']['filterWidthId'] = this.editHVAC.get('filterWidth').value == \"\" ? null : parseInt(this.editHVAC.get('filterWidth').value)\r\n indoor['assetModelInfo']['filterThicknessId'] = this.editHVAC.get('filterThickness').value == \"\" ? null : parseInt(this.editHVAC.get('filterThickness').value)\r\n indoor['assetModelInfo']['heatingTypeId'] = this.editHVAC.get('heatType')?this.editHVAC.get('heatType').value&&this.editHVAC.get('heatType').value == \"\" ? null : parseInt(this.editHVAC.get('heatType').value):null\r\n indoor['assetModelInfo']['fuelTypeId'] = this.editHVAC.get('fuelType')?this.editHVAC.get('fuelType').value&&this.editHVAC.get('fuelType').value == \"\" ? null : parseInt(this.editHVAC.get('fuelType').value):null\r\n indoor['assetModelInfo']['indoorMultiStageId'] = this.editHVAC.get('indoorMultiStage').value == \"\" ? null : parseInt(this.editHVAC.get('indoorMultiStage').value)\r\n indoor['assetModelInfo']['locationId'] = this.editHVAC.get('locations').value == \"\" ? null : parseInt(this.editHVAC.get('locations').value)\r\n indoor['assetUnitSerialNumber'] = this.editHVAC.get('indoorAssetUnitSerialNumber').value == \"\" ? hvac.assetUnitSerialNumber : this.editHVAC.get('indoorAssetUnitSerialNumber').value.toUpperCase()\r\n indoor['assetModelInfo']['indoorEquipmentMakeId'] = this.editHVAC.get('indoorEquipmentMake').value == \"\" ? null : parseInt(this.editHVAC.get('indoorEquipmentMake').value.toUpperCase())\r\n indoor['assetModelInfo']['modelNo'] = this.editHVAC.get('indoorModelNo').value == \"NA\" ? null : this.editHVAC.get('indoorModelNo').value.toUpperCase()\r\n indoor['assetModelInfo']['indoorEquipmentTypeId'] = this.editHVAC.get('indoorEquipmentType').value == \"\" ? \"\" : parseInt(this.editHVAC.get('indoorEquipmentType').value)\r\n indoor['assetModelInfo']['ratedCapacityId'] = this.editHVAC.get('ratedCapacity').value == \"\" ? null : parseInt(this.editHVAC.get('ratedCapacity').value)\r\n indoor['assetModelInfo']['ratedElectricStripCapacity'] = this.editHVAC.get('ratedElectricStripCapacity')?this.editHVAC.get('ratedElectricStripCapacity').value&&this.editHVAC.get('ratedElectricStripCapacity').value == \"\" ? null : this.editHVAC.get('ratedElectricStripCapacity').value:null\r\n indoor['assetModelInfo']['variableSpeedBlowerId'] = this.editHVAC.get('variableSpeedBlower').value == \"\" ? null : parseInt(this.editHVAC.get('variableSpeedBlower').value)\r\n indoor['assetModelInfo']['outdoorEquipmentMakeId'] = null\r\n indoor['assetModelInfo']['outdoorEquipmentTypeId'] = \"\"\r\n indoor['assetModelInfo']['outdoorMultiStageId'] = null\r\n indoor['assetModelInfo']['nomicalAcCapacityId'] = null\r\n indoor['assetModelInfo']['isOutdoorInverterId'] = null\r\n indoor['assetModelInfo']['seerId'] = null\r\n indoor['assetModelInfo']['deviceType'] = deviceTypeValue && deviceTypeValue.value?deviceTypeValue.value:\"\"\r\n indoor['assetModelInfo']['reversingValve']='O TERMINAL'\r\n indoor['assetModelInfo']['heatSource']=(this.editHVAC.get('heatType').value==\"\" || this.editHVAC.get('heatType').value!=9) ?false:true\r\n\r\n }\r\n else if (hvac.assetUnitType == \"outdoor\") {\r\n const deviceTypeValue = this.handleFetchValueFromId('outdoorEquipmentTypeList', this.editHVAC.get('outdoorEquipmentType').value);\r\n outdoor['assetUnitTypeId'] = hvac.assetUnitTypeId ? hvac.assetUnitTypeId : null;\r\n outdoor['assetUnitName'] = hvac.assetUnitName ? hvac.assetUnitName : null\r\n outdoor['assetUnitType'] = hvac.assetUnitType ? hvac.assetUnitType : null\r\n // outdoor['assetUnitSerialNumber'] = hvac.assetUnitSerialNumber ? hvac.assetUnitSerialNumber : null\r\n outdoor['assetUnitUniqueId'] = hvac.assetUnitUniqueId ? hvac.assetUnitUniqueId : null\r\n outdoor['assetModelInfo']['assetModelInfoId'] = hvac.assetModelInfo.assetModelInfoId ? hvac.assetModelInfo.assetModelInfoId : null\r\n outdoor['assetModelInfo']['meteringDeviceId'] = hvac.assetModelInfo.meteringDevice ? hvac.assetModelInfo.meteringDevice.id : null\r\n outdoor['assetModelInfo']['isEquipmentId'] = hvac.assetModelInfo.equipmentIs ? hvac.assetModelInfo.equipmentIs.id : null\r\n outdoor['assetModelInfo']['systemConfigurationId'] = null\r\n outdoor['assetModelInfo']['zonedSystemId'] = null\r\n outdoor['assetModelInfo']['filterTypeId'] = null\r\n outdoor['assetModelInfo']['filterLengthId'] = null\r\n outdoor['assetModelInfo']['filterWidthId'] = null\r\n outdoor['assetModelInfo']['filterThicknessId'] = null\r\n outdoor['assetModelInfo']['heatingTypeId'] = null\r\n outdoor['assetModelInfo']['fuelTypeId'] = null\r\n outdoor['assetModelInfo']['indoorMultiStageId'] = null\r\n outdoor['assetModelInfo']['locationId'] = null\r\n outdoor['assetUnitSerialNumber'] = this.editHVAC.get('outdoorAssetUnitSerialNumber')?(this.editHVAC.get('outdoorAssetUnitSerialNumber').value == \"\" ? hvac.assetUnitSerialNumber : this.editHVAC.get('outdoorAssetUnitSerialNumber').value.toUpperCase()):hvac.assetUnitSerialNumber\r\n outdoor['assetModelInfo']['indoorEquipmentMakeId'] = null\r\n outdoor['assetModelInfo']['modelNo'] = this.editHVAC.get('outdoorModelNo')?(this.editHVAC.get('outdoorModelNo').value == \"\" ? null : this.editHVAC.get('outdoorModelNo').value.toUpperCase()):null\r\n outdoor['assetModelInfo']['indoorEquipmentTypeId'] = \"\"\r\n outdoor['assetModelInfo']['ratedCapacityId'] = null\r\n outdoor['assetModelInfo']['ratedElectricStripCapacity'] = null\r\n outdoor['assetModelInfo']['variableSpeedBlowerId'] = null\r\n outdoor['assetModelInfo']['outdoorEquipmentMakeId'] = this.editHVAC.get('outdoorEquipmentMake')?(this.editHVAC.get('outdoorEquipmentMake').value == \"\" ? null : parseInt(this.editHVAC.get('outdoorEquipmentMake').value.toUpperCase())):null\r\n outdoor['assetModelInfo']['outdoorEquipmentTypeId'] = this.editHVAC.get('outdoorEquipmentType')?(this.editHVAC.get('outdoorEquipmentType').value == \"\" ? \"\" : parseInt(this.editHVAC.get('outdoorEquipmentType').value)):null\r\n outdoor['assetModelInfo']['outdoorMultiStageId'] = this.editHVAC.get('outdoorMultiStage')?(this.editHVAC.get('outdoorMultiStage').value == \"\" ? null : parseInt(this.editHVAC.get('outdoorMultiStage').value)):null\r\n outdoor['assetModelInfo']['nomicalAcCapacityId'] = this.editHVAC.get('outdoorNominalACCapacity').value == \"\" ? null : parseInt(this.editHVAC.get('outdoorNominalACCapacity').value)\r\n outdoor['assetModelInfo']['isOutdoorInverterId'] = this.editHVAC.get('outdoorInverterCompressor')?(this.editHVAC.get('outdoorInverterCompressor').value == \"\" ? null : parseInt(this.editHVAC.get('outdoorInverterCompressor').value)):null\r\n outdoor['assetModelInfo']['seerId'] = this.editHVAC.get('outdoorSeer')?(this.editHVAC.get('outdoorSeer').value == \"\" ? null : parseInt(this.editHVAC.get('outdoorSeer').value)):null\r\n outdoor['assetModelInfo']['deviceType'] = deviceTypeValue && deviceTypeValue.value ? deviceTypeValue.value : \"\"\r\n outdoor['assetModelInfo']['reversingValve']=this.editHVAC.get('reversingValve')?this.editHVAC.get('reversingValve').value==\"\"?\"O TERMINAL\":this.editHVAC.get('reversingValve').value:'O TERMINAL'\r\n outdoor['assetModelInfo']['heatSource']=(this.editHVAC.get('heatType').value==\"\" || this.editHVAC.get('heatType').value!=9) ?false:true\r\n }\r\n })\r\n payload.push(indoor);\r\n payload.push(outdoor);\r\n let querParams =\r\n {\r\n assetId: this.hvacDetail[0]['assetId']\r\n }\r\n\r\n this.SharedService.editHvac(payload, querParams).subscribe(\r\n (response) => {\r\n // console.log(response);\r\n this.helperService.showToaster(ToasterType.SUCCESS, \"Equipment info successfully updated\");\r\n this.emitHandleRefreshPage.emit();\r\n this.closeModal();\r\n }, (error) => {\r\n\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n })\r\n // console.log(payload)\r\n }\r\n\r\n getDropdownData(hvacDetail) {\r\n // this.isHVACLoading = true;\r\n \r\n if(this.hvacDetail){\r\n\r\n this.SharedService.getHVACInformationList().subscribe(\r\n (response: HVACInformationResponse) => {\r\n // this.isHVACLoading = false;\r\n this.tempHVACInformationList= {...response.HVACInformation};\r\n this.HVACInformationList = response.HVACInformation;\r\n // this.handleAutoFillForm();\r\n //console.log('hvacInfo', this.HVACInformationList);\r\n //console.log('hvacDetail', this.hvacDetail);\r\n this.handleAutoFillForm();\r\n this.isHVACLoading = false;\r\n }, (error) => {\r\n this.isHVACLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n \r\n }\r\n\r\n handleDeleteHavac() {\r\n \r\n this.emitHandleDeleteHavac.emit();\r\n }\r\n\r\n ///////////////check whether the form info is changed or not if it is changed then updtae the flasg so the submit buttons will be togled///////////////////////////////////\r\n handleHVACForm() {\r\n let flag = true;\r\n let currentHVACInfo = this.editHVAC.getRawValue();\r\n //console.log(JSON.stringify(currentHVACInfo) !== JSON.stringify(this.prevHVACInfo))\r\n if (JSON.stringify(currentHVACInfo) == JSON.stringify(this.prevHVACInfo)) {\r\n // if((this.editHVAC.get('systemConfiguration').value != \"\"||this.editHVAC.get('systemConfiguration').value != null)&&(this.editHVAC.get('indoorEquipmentType').value != \"\"||this.editHVAC.get('indoorEquipmentType').value != null)&&(this.editHVAC.get('outdoorEquipmentType').value != \"\"||this.editHVAC.get('outdoorEquipmentType').value != null)){\r\n // }\r\n flag = true;\r\n }\r\n else{flag=false}\r\n console.log(this.editHVAC)\r\n // if((this.editHVAC.get('systemConfiguration').value != \"\"||\r\n // this.editHVAC.get('systemConfiguration').value != null)&&\r\n // (this.editHVAC.get('indoorEquipmentType').value != \"\"||\r\n // this.editHVAC.get('indoorEquipmentType').value != null)&&\r\n // (this.editHVAC.get('outdoorEquipmentType').value != \"\"||\r\n // this.editHVAC.get('outdoorEquipmentType').value != null)){\r\n // flag = true;\r\n // }\r\n // else\r\n // {\r\n // flag=false;\r\n // }\r\n // if (this.editHVAC && !this.editHVAC.valid) {\r\n // flag = false;\r\n // }\r\n // if(this.editHVAC && this.editHVAC.valid){\r\n // flag = true;\r\n // }\r\n return flag;\r\n }\r\n//////////////////////////////display submit or ok buttons based on the data change//////////////////////////////////////////\r\n handleButtonsOnChanges() {\r\n if (this.handleHVACForm()) {\r\n this.isToggleButtons = true;\r\n } else {\r\n this.isToggleButtons = false;\r\n }\r\n }\r\n\r\n //////////////////handle Validation /////////////////////////////////////////////////////////////\r\n handleValidation()\r\n {\r\n let flag = true;\r\n if((this.editHVAC.get('systemConfiguration').value != \"\"||\r\n this.editHVAC.get('systemConfiguration').value != null)&&\r\n (this.editHVAC.get('indoorEquipmentType').value != \"\"||\r\n this.editHVAC.get('indoorEquipmentType').value != null)&&\r\n (this.editHVAC.get('outdoorEquipmentType').value != \"\"||\r\n this.editHVAC.get('outdoorEquipmentType').value != null)){\r\n flag = true;\r\n }\r\n else\r\n {\r\n flag=false;\r\n }\r\n if (this.editHVAC && !this.editHVAC.valid) {\r\n flag = false;\r\n }\r\n if(this.editHVAC && this.editHVAC.valid){\r\n flag = true;\r\n }\r\n return flag;\r\n }\r\n \r\n////////////////handlemodal type //////////////////////////////////////////////////////////////////\r\nhandleModalType(type)\r\n{\r\n if (type === 'cancel') {\r\n if (!this.handleHVACForm() ) {\r\n this.infoModalType = 'close-create-customer-modal';\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `Entered information will be lost.`;\r\n this.confirmationModalLine2Content = `Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n } else {\r\n this.closeModal();\r\n }\r\n }\r\n if(type==\"preseasoncheck\")\r\n {\r\n this.infoModalType = 'preseasoncheck-modal';\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `Scheduled Pre-Season test will be cancelled.`;\r\n this.confirmationModalLine2Content = `Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n }\r\n}\r\n\r\nhandleAction()\r\n{\r\n if(this.infoModalType == 'close-create-customer-modal')\r\n {\r\n this.closeModal()\r\n\r\n }\r\n else if(this.infoModalType == 'preseasoncheck-modal')\r\n {\r\nthis.handleCancelPreSeasonTest()\r\n }\r\n}\r\n\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal\r\n }\r\n\r\n handleAutoFillForm() {\r\n if (this.hvacDetail) {\r\n this.hvacDetail.forEach(hvac => {\r\n if (hvac.assetUnitType == 'indoor') {\r\n this.editHVAC.patchValue({\r\n systemConfiguration: hvac.assetModelInfo.systemConfiguration == null ? '' : hvac.assetModelInfo.systemConfiguration.id.toString(),\r\n zonedSystem: hvac.assetModelInfo.zonedSystem ? hvac.assetModelInfo.zonedSystem.id.toString() : '',\r\n filterType: hvac.assetModelInfo.filterType ? hvac.assetModelInfo.filterType.id.toString() : '',\r\n filterLength: hvac.assetModelInfo.filterLength ? hvac.assetModelInfo.filterLength.id.toString() : '',\r\n filterWidth: hvac.assetModelInfo.filterWidth ? hvac.assetModelInfo.filterWidth.id.toString() : '',\r\n filterThickness: hvac.assetModelInfo.filterThickness ? hvac.assetModelInfo.filterThickness.id.toString() : '',\r\n heatType: hvac.assetModelInfo.heatType ? hvac.assetModelInfo.heatType.id.toString() : '',\r\n fuelType: hvac.assetModelInfo.fuelType ? hvac.assetModelInfo.fuelType.id.toString() : '',\r\n indoorMultiStage: hvac.assetModelInfo.indoorMultiStage ? hvac.assetModelInfo.indoorMultiStage.id.toString() : '',\r\n locations: hvac.assetModelInfo.locations ? hvac.assetModelInfo.locations.id.toString() : '',\r\n indoorAssetUnitSerialNumber: hvac.assetUnitSerialNumber ? hvac.assetUnitSerialNumber.toUpperCase() : '',\r\n indoorEquipmentMake: hvac.assetModelInfo.indoorEquipmentMake ? hvac.assetModelInfo.indoorEquipmentMake.id.toString() : '',\r\n indoorModelNo: hvac.assetModelInfo.modelNo == null ? '' : hvac.assetModelInfo.modelNo.toUpperCase(),\r\n indoorEquipmentType: hvac.assetModelInfo.indoorEquipmentType == null ? '' : hvac.assetModelInfo.indoorEquipmentType.id.toString(),\r\n ratedCapacity: hvac.assetModelInfo.ratedCapacity == null ? '' : hvac.assetModelInfo.ratedCapacity.id.toString(),\r\n ratedElectricStripCapacity: hvac.assetModelInfo.ratedElectricStripCapacity == null ? '' : hvac.assetModelInfo.ratedElectricStripCapacity,\r\n variableSpeedBlower: hvac.assetModelInfo.variableSpeedBlower == null ? '' : hvac.assetModelInfo.variableSpeedBlower.id.toString(),\r\n heatSourceValue:hvac.assetModelInfo.heatSource==true?true:false\r\n })\r\n this.handleModelOnChange(\"deviceType\",1)\r\n }\r\n if (hvac.assetUnitType == 'outdoor') {\r\n this.editHVAC.patchValue({\r\n outdoorAssetUnitSerialNumber: hvac.assetUnitSerialNumber ? hvac.assetUnitSerialNumber.toUpperCase() : '',\r\n outdoorModelNo: hvac.assetModelInfo.modelNo == null ? \"\" : hvac.assetModelInfo.modelNo.toUpperCase(),\r\n outdoorEquipmentMake: hvac.assetModelInfo.outdoorEquipmentMake == null ? '' : hvac.assetModelInfo.outdoorEquipmentMake.id.toString(),\r\n outdoorEquipmentType: hvac.assetModelInfo.outdoorEquipmentType == null ? '' : hvac.assetModelInfo.outdoorEquipmentType.id.toString(),\r\n outdoorMultiStage: hvac.assetModelInfo.outdoorMultiStage == null ? '' : hvac.assetModelInfo.outdoorMultiStage.id.toString(),\r\n outdoorNominalACCapacity: hvac.assetModelInfo.outdoorNominalACCapacity == null ? '' : hvac.assetModelInfo.outdoorNominalACCapacity.id.toString(),\r\n outdoorSeer: hvac.assetModelInfo.outdoorSeer == null ? '' : hvac.assetModelInfo.outdoorSeer.id.toString(),\r\n outdoorInverterCompressor: hvac.assetModelInfo.outdoorInverterCompressor == null ? '' : hvac.assetModelInfo.outdoorInverterCompressor.id.toString(),\r\n reversingValve:hvac.assetModelInfo.reversingValve==null?'O TERMINAL':hvac.assetModelInfo.reversingValve,\r\n \r\n })\r\n console.log(this.editHVAC);\r\n this.handleModelOnChange(\"deviceType\",3)\r\n }\r\n });\r\n this.prevHVACInfo = this.editHVAC.getRawValue();\r\n\r\n //\r\n this.handleModelOnChange(\"deviceType\",2)\r\n }\r\n\r\n }\r\n handleStartIdleTime() {\r\n this.imageIdleTime = setTimeout(\r\n () => {\r\n this.showImageOptions = false;\r\n }, 2000\r\n );\r\n }\r\n\r\n handleResetImageIdleTime() {\r\n clearTimeout(this.imageIdleTime);\r\n this.showImageOptions = true;\r\n this.handleStartIdleTime();\r\n }\r\n\r\n showEnlargedImageWindow() {\r\n this.isShowEnlargedImage = !this.isShowEnlargedImage;\r\n }\r\n\r\n handleZoomImage(isZoomIn: number) {\r\n if (!this.currentZoomSize) {\r\n this.defaultImageHeight = this.hvacImageTag && this.hvacImageTag.nativeElement &&\r\n this.hvacImageTag.nativeElement.clientHeight;\r\n this.defaultImageWidth = this.hvacImageTag && this.hvacImageTag.nativeElement &&\r\n this.hvacImageTag.nativeElement.clientWidth;\r\n\r\n this.currentImageHeight = this.defaultImageHeight;\r\n this.currentImageWidth = this.defaultImageWidth;\r\n }\r\n\r\n if (isZoomIn) {\r\n this.currentZoomSize += 1;\r\n if (this.currentZoomSize <= 2) {\r\n this.currentImageHeight += (this.currentImageHeight / 4);\r\n this.currentImageWidth += (this.currentImageWidth / 4);\r\n } else {\r\n this.currentImageHeight += (this.currentImageHeight / 2);\r\n this.currentImageWidth += (this.currentImageWidth / 2);\r\n }\r\n\r\n } else {\r\n this.currentZoomSize -= 1;\r\n if (this.currentZoomSize >= -2) {\r\n this.currentImageHeight -= (this.currentImageHeight / 4);\r\n this.currentImageWidth -= (this.currentImageWidth / 4);\r\n } else {\r\n this.currentImageHeight -= (this.currentImageHeight / 2);\r\n this.currentImageWidth -= (this.currentImageWidth / 2);\r\n }\r\n\r\n if (this.currentImageHeight < 10 || this.currentImageWidth < 10) {\r\n this.currentImageHeight = 10;\r\n this.currentImageWidth = 10;\r\n this.maxZoomout = this.currentZoomSize;\r\n }\r\n }\r\n }\r\n\r\n resetImageSize() {\r\n this.currentZoomSize = 0;\r\n this.currentImageHeight = 0;\r\n this.currentImageWidth = 0;\r\n }\r\n\r\n showPreviousImage() {\r\n this.resetImageSize();\r\n this.currentImageIndex -= 1;\r\n }\r\n\r\n showNextImage() {\r\n this.resetImageSize();\r\n this.currentImageIndex += 1;\r\n }\r\n\r\n closeImageModal() {\r\n this.resetImageSize();\r\n this.isShowEnlargedImage = false;\r\n }\r\n\r\n // comfortbridgeButtonStatus() {\r\n // let model = this.hvacDetail[0]['assetModelInfo']['modelNo'];\r\n // // let model=this.hvacDetail\r\n // const queryParams: any = {\r\n // modelNumber: model\r\n // }\r\n // // console.log(model);\r\n // this.SharedService.getComfortBridgeStatus(queryParams).subscribe(\r\n // (response) => {\r\n // // console.log(response['responseData']['comfortbridge']);\r\n // if (response['responseData']['comfortbridge']) {\r\n // this.isShowComfortBridgeButton = response['responseData']['comfortbridge'];\r\n\r\n // }\r\n // });\r\n\r\n // }\r\n getReversingValue(data)\r\n {\r\n if(data =='O TERMINAL')\r\n {\r\n return ('Engaged with Cooling (O)')\r\n }\r\n else if(data=='B TERMINAL')\r\n {\r\n return 'Engaged with Heating (B)';\r\n }\r\n else if(data=='W TERMINAL')\r\n {\r\n return 'Engaged by Equipment (W)'\r\n }\r\n else \r\n {\r\n return ' '\r\n }\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n trackByAssetUnitTypeId(index: number, item: any): string {\r\n return item ? item.assetUnitTypeId : '';\r\n }\r\n\r\n editHvacButtonAction() {\r\n this.isEdit = !this.isEdit;\r\n }\r\n\r\n toggleHVACDetailModal() {\r\n this.isShowHVACComfortModal = !this.isShowHVACComfortModal\r\n }\r\n\r\n openModal(Info) {\r\n this.HVACDetails = Info;\r\n this.toggleHVACDetailModal();\r\n }\r\n\r\n ngOnChanges() {\r\n // console.log(this.hvacDetail)\r\n // if (this.hvacDetail) {\r\n // this.comfortbridgeButtonStatus();\r\n // }\r\n //this.assetModelInfo = this.hvacDetail ? this.hvacDetail.assetModelInfo : this.assetModelInfo;\r\n //this.assetUnitType = this.hvacDetail && this.hvacDetail.assetUnitType && this.hvacDetail.assetUnitType == null ? '-' : this.hvacDetail.assetUnitType + ' Unit';\r\n //this.hvacDetail.assetModelInfo.filterWidth == null ? this.hvacDetail.assetModelInfo.filterWidth.value = '-' : this.hvacDetail.assetModelInfo.filterWidth.value = this.hvacDetail.assetModelInfo.filterWidth.value;\r\n }\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.hvac-operations_wrapper {\\n scroll-behavior: smooth;\\n width: 30rem;\\n background-color: #ffffff;\\n color: #000000;\\n font-size: 1.4rem;\\n overflow: auto;\\n}\\n.hvac-operations_wrapper .type_wrapper {\\n position: relative;\\n height: auto;\\n overflow: auto;\\n}\\n.hvac-operations_wrapper .toggle {\\n border: 1px solid #6e6c6c;\\n}\\n.hvac-operations_wrapper .heating {\\n float: left;\\n border-radius: 0.7rem 0rem 0rem 0.7rem;\\n width: 50%;\\n padding: 0.7rem;\\n text-align: center;\\n border-top: 1px solid #6e6c6c;\\n border-bottom: 1px solid #6e6c6c;\\n border-left: 1px solid #6e6c6c;\\n cursor: pointer;\\n}\\n.hvac-operations_wrapper .cooling {\\n cursor: pointer;\\n float: left;\\n border-radius: 0rem 0.7rem 0.7rem 0rem;\\n width: 50%;\\n padding: 0.7rem;\\n text-align: center;\\n border-top: 1px solid #6e6c6c;\\n border-bottom: 1px solid #6e6c6c;\\n border-right: 1px solid #6e6c6c;\\n}\\n.hvac-operations_wrapper .count {\\n padding: 0.3rem;\\n color: #ffffff;\\n height: 2.5rem;\\n width: 2.5rem;\\n float: left;\\n text-align: center;\\n justify-content: center;\\n align-items: center;\\n}\\n.hvac-operations_wrapper .content_wrapper {\\n padding: 1rem 2rem;\\n}\\n.hvac-operations_wrapper .content_wrapper .customer-details .customer-name {\\n max-width: 10rem;\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #000000;\\n}\\n.hvac-operations_wrapper .content_wrapper .hvac-operations-select {\\n width: 100%;\\n border: 1px solid #898989;\\n border-radius: 0.7rem;\\n margin-top: 0.5rem;\\n background-color: #ffffff;\\n background-image: url('downFilled.svg');\\n}\\n.hvac-operations_wrapper .content_wrapper .hvac-operations-footer {\\n padding: 3rem 0rem 1rem 0rem;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.height_400 {\\n height: 40rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1vcGVyYXRpb25zL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxodmFjLW9wZXJhdGlvbnNcXGh2YWMtb3BlcmF0aW9ucy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaHZhYy1vcGVyYXRpb25zL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXHN0eWxlc2hlZXRzXFxfdmFyaWFibGVzLnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2h2YWMtb3BlcmF0aW9ucy9odmFjLW9wZXJhdGlvbnMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREVBO0VBQ0UsdUJBQUE7RUFDQSxZQUFBO0VBQ0EseUJDTW9CO0VESnBCLGNDSm9CO0VES3BCLGlCQUFBO0VBRUEsY0FBQTtBRURGO0FGRUU7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0FFQUo7QUZFRTtFQUNFLHlCQUFBO0FFQUo7QUZFRTtFQUNFLFdBQUE7RUFDQSxzQ0FBQTtFQUNBLFVBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtFQUNBLGdDQUFBO0VBQ0EsOEJBQUE7RUFDQSxlQUFBO0FFQUo7QUZFRTtFQUNFLGVBQUE7RUFDQSxXQUFBO0VBQ0Esc0NBQUE7RUFDQSxVQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQ0FBQTtFQUNBLCtCQUFBO0FFQUo7QUZFRTtFQUNFLGVBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGFBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0FFQUo7QUZFRTtFQUNFLGtCQUFBO0FFQUo7QUZHTTtFQUNFLGdCQUFBO0VBQ0EsaUNDMEN1QjtFRHpDdkIsY0N2RGM7QUNzRHRCO0FGS0k7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJDeERnQjtFRHlEaEIsdUNBQUE7QUVITjtBRk1JO0VBQ0UsNEJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtBRUpOO0FGU0E7RUFDRSxhQUFBO0FFTkYiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9odmFjLW9wZXJhdGlvbnMvaHZhYy1vcGVyYXRpb25zLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCBcInNyYy9zdHlsZXNoZWV0cy92YXJpYWJsZXMuc2Nzc1wiO1xyXG4uaHZhYy1vcGVyYXRpb25zX3dyYXBwZXIge1xyXG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG4gIHdpZHRoOiAzMHJlbTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAvLyB0b3A6IDAgIWltcG9ydGFudDtcclxuICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgLy8gaGVpZ2h0OiA0MHJlbTtcclxuICBvdmVyZmxvdzogYXV0bztcclxuICAudHlwZV93cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gIH1cclxuICAudG9nZ2xlIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM2ZTZjNmM7XHJcbiAgfVxyXG4gIC5oZWF0aW5nIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC43cmVtIDByZW0gMHJlbSAwLjdyZW07XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgcGFkZGluZzogMC43cmVtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2ZTZjNmM7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzZlNmM2YztcclxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzZlNmM2YztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgLmNvb2xpbmcge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwcmVtIDAuN3JlbSAwLjdyZW0gMHJlbTtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICBwYWRkaW5nOiAwLjdyZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzZlNmM2YztcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNmU2YzZjO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzZlNmM2YztcclxuICB9XHJcbiAgLmNvdW50IHtcclxuICAgIHBhZGRpbmc6IDAuM3JlbTtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgaGVpZ2h0OiAyLjVyZW07XHJcbiAgICB3aWR0aDogMi41cmVtO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5jb250ZW50X3dyYXBwZXIge1xyXG4gICAgcGFkZGluZzogMXJlbSAycmVtO1xyXG5cclxuICAgIC5jdXN0b21lci1kZXRhaWxzIHtcclxuICAgICAgLmN1c3RvbWVyLW5hbWUge1xyXG4gICAgICAgIG1heC13aWR0aDogMTByZW07XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2stcHJpbWFyeTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5odmFjLW9wZXJhdGlvbnMtc2VsZWN0IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmF5LXByaW1hcnk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuN3JlbTtcclxuICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZS1wYXRoICsgXCIvZG93bkZpbGxlZC5zdmdcIik7XHJcbiAgICB9XHJcblxyXG4gICAgLmh2YWMtb3BlcmF0aW9ucy1mb290ZXIge1xyXG4gICAgICBwYWRkaW5nOiAzcmVtIDByZW0gMXJlbSAwcmVtO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5oZWlnaHRfNDAwIHtcclxuICBoZWlnaHQ6IDQwcmVtO1xyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5odmFjLW9wZXJhdGlvbnNfd3JhcHBlciB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB3aWR0aDogMzByZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG4uaHZhYy1vcGVyYXRpb25zX3dyYXBwZXIgLnR5cGVfd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5odmFjLW9wZXJhdGlvbnNfd3JhcHBlciAudG9nZ2xlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzZlNmM2Yztcbn1cbi5odmFjLW9wZXJhdGlvbnNfd3JhcHBlciAuaGVhdGluZyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItcmFkaXVzOiAwLjdyZW0gMHJlbSAwcmVtIDAuN3JlbTtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMC43cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNmU2YzZjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzZlNmM2YztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNmU2YzZjO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaHZhYy1vcGVyYXRpb25zX3dyYXBwZXIgLmNvb2xpbmcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItcmFkaXVzOiAwcmVtIDAuN3JlbSAwLjdyZW0gMHJlbTtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMC43cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNmU2YzZjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzZlNmM2YztcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzZlNmM2Yztcbn1cbi5odmFjLW9wZXJhdGlvbnNfd3JhcHBlciAuY291bnQge1xuICBwYWRkaW5nOiAwLjNyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaHZhYy1vcGVyYXRpb25zX3dyYXBwZXIgLmNvbnRlbnRfd3JhcHBlciB7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbn1cbi5odmFjLW9wZXJhdGlvbnNfd3JhcHBlciAuY29udGVudF93cmFwcGVyIC5jdXN0b21lci1kZXRhaWxzIC5jdXN0b21lci1uYW1lIHtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuLmh2YWMtb3BlcmF0aW9uc193cmFwcGVyIC5jb250ZW50X3dyYXBwZXIgLmh2YWMtb3BlcmF0aW9ucy1zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg5ODk4OTtcbiAgYm9yZGVyLXJhZGl1czogMC43cmVtO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcInNyYy9hc3NldHMvaW1hZ2VzL2Rvd25GaWxsZWQuc3ZnXCIpO1xufVxuLmh2YWMtb3BlcmF0aW9uc193cmFwcGVyIC5jb250ZW50X3dyYXBwZXIgLmh2YWMtb3BlcmF0aW9ucy1mb290ZXIge1xuICBwYWRkaW5nOiAzcmVtIDByZW0gMXJlbSAwcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmhlaWdodF80MDAge1xuICBoZWlnaHQ6IDQwcmVtO1xufSJdfQ== */\"","import { Component, OnInit, Input, Output, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport * as moment_ from 'moment';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { MeliService } from 'src/app/modules/meli/services/meli.service';\r\n\r\n// Models\r\nimport { Inventory, Customer } from 'src/app/shared/models/inventory.model';\r\nimport { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS, PRESEASON_STATUS } from 'src/app/shared/constants/commom.constant';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { ScheduleEmergencyShutoffResponse } from 'src/app/shared/models/meli.model';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport { ContractorDetails } from '../../models/contractor.modal';\r\nimport { SITE_NAME_CONSTANTS } from '../../constants/site-name.constant';\r\nimport { BASE_URL_TYPES } from '../../constants/base-url-types.constant';\r\nconst moment = moment_;\r\n\r\n@Component({\r\n selector: 'app-hvac-operations',\r\n templateUrl: './hvac-operations.component.html',\r\n styleUrls: ['./hvac-operations.component.scss']\r\n})\r\nexport class HvacOperationsComponent implements OnInit {\r\n @ViewChild('scrollMe',{static:false}) private myScrollContainer: ElementRef;\r\n @Input() customerDetails: Customer;\r\n @Input() inventoryDetails: Inventory;\r\n @Input() currentHVACOperation: string;\r\n @Input() preSeasonTestDetails: any;\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() refreshPreSeasonTest = new EventEmitter();\r\n @Output() refreshEmergencyShutoffStatus = new EventEmitter();\r\n preSeasonTestForm: FormGroup;\r\n emergencyShutoffForm: FormGroup;\r\n commonConstants = COMMON_CONSTANTS;\r\n isActionBtnLoading = false;\r\n minDate = new Date();\r\n hasYesOrNoButtom: boolean = false;\r\n boardsCount: any;\r\n roleConstants = ROLE_CONSTANTS;\r\n scheduleResponseData: any[] = [];\r\n isShowWarningSymbol: boolean = false;\r\n confirmationModalLine4Content: any[];\r\n isShowLoopInformation: boolean = false;\r\n //for bulk preseason schedule data\r\n @Input() boardsListArray: any[] = [];\r\n @Input() isBulkSchedule: boolean = false;\r\nisHeating:boolean=true;\r\n preSeasonTimeSlotValues = [\r\n '12 AM - 12:30 AM',\r\n '12:30 AM - 1 AM',\r\n '1 AM - 1:30 AM',\r\n '1:30 AM - 2 AM',\r\n '2 AM - 2:30 AM',\r\n '2:30 AM - 3 AM',\r\n '3 AM - 3:30 AM',\r\n '3:30 AM - 4 AM',\r\n '4 AM - 4:30 AM',\r\n '4:30 AM - 5 AM',\r\n '5 AM - 5:30 AM',\r\n '5:30 AM - 6 AM',\r\n '6 AM - 6:30 AM',\r\n '6:30 AM - 7 AM',\r\n '7 AM - 7:30 AM',\r\n '7:30 AM - 8 AM',\r\n '8 AM - 8:30 AM',\r\n '8:30 AM - 9 AM',\r\n '9 AM - 9:30 AM',\r\n '9:30 AM - 10 AM',\r\n '10 AM - 10:30 AM',\r\n '10:30 AM - 11 AM',\r\n '11 AM - 11:30 AM',\r\n '11:30 AM - 12 PM',\r\n '12 PM - 12:30 PM',\r\n '12:30 PM - 1 PM',\r\n '1 PM - 1:30 PM',\r\n '1:30 PM - 2 PM',\r\n '2 PM - 2:30 PM',\r\n '2:30 PM - 3 PM',\r\n '3 PM - 3:30 PM',\r\n '3:30 PM - 4 PM',\r\n '4 PM - 4:30 PM',\r\n '4:30 PM - 5 PM',\r\n '5 PM - 5:30 PM',\r\n '5:30 PM - 6 PM',\r\n '6 PM - 6:30 PM',\r\n '6:30 PM - 7 PM',\r\n '7 PM - 7:30 PM',\r\n '7:30 PM - 8 PM',\r\n '8 PM - 8:30 PM',\r\n '8:30 PM - 9 PM',\r\n '9 PM - 9:30 PM',\r\n '9:30 PM - 10 PM',\r\n '10 PM - 10:30 PM',\r\n '10:30 PM - 11 PM',\r\n '11 PM - 11:30 PM',\r\n '11:30 PM - 12 AM',\r\n ];\r\n emergencyShutoffTimeSlotValues = [\r\n '1 AM',\r\n '2 AM',\r\n '3 AM',\r\n '4 AM',\r\n '5 AM',\r\n '6 AM',\r\n '7 AM',\r\n '8 AM',\r\n '9 AM',\r\n '10 AM',\r\n '11 AM',\r\n '12 PM',\r\n '1 PM',\r\n '2 PM',\r\n '3 PM',\r\n '4 PM',\r\n '5 PM',\r\n '6 PM',\r\n '7 PM',\r\n '8 PM',\r\n '9 PM',\r\n '10 PM',\r\n '11 PM',\r\n '12 AM',\r\n ];\r\n isShowConfirmationModal = false;\r\n confirmationModalLine1Content: string;\r\n confirmationModalLine2Content: string;\r\n confirmationModalLine3Content: string;\r\n boardsText: any;\r\n portalName: any;\r\n confirmationModalTitle: string = \"Warning\";\r\n storeResponse: any;\r\n isBulkScheduleError: boolean;\r\n isEmergencyShutoffConfirmationModal: boolean;\r\n isScheduleConfirmationModal: boolean;\r\n confirmationModalPrimaryButtonName: string;\r\n contractorDetails: any;\r\n isSuccessToasterModal: boolean;\r\n scheduleModalEmitterFlag:boolean;\r\n swtichoffModalEmitterFlag: boolean;\r\n\r\n constructor(\r\n private helperService: HelperService,\r\n private meliService: MeliService,\r\n private activatedRoute: ActivatedRoute,\r\n private sharedService: SharedService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n console.log(this.customerDetails)\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n })\r\n this.boardsCount = this.boardsListArray && this.boardsListArray.length;\r\n this.boardsCount > 1 ? this.boardsText = 'Boards Being Scheduled' : this.boardsText = 'Board Being Scheduled';\r\n let currentTime = moment(new Date()).format('hh:mm A');\r\n currentTime = currentTime && currentTime.toString();\r\n this.preSeasonTestForm = new FormGroup(\r\n {\r\n scheduleDate: new FormControl('', Validators.required),\r\n time: new FormControl('', Validators.required),\r\n //type: new FormControl('', Validators.required)\r\n }\r\n );\r\n\r\n this.emergencyShutoffForm = new FormGroup(\r\n {\r\n scheduleDate: new FormControl('', Validators.required),\r\n time: new FormControl('', Validators.required)\r\n }\r\n );\r\n\r\n if (this.currentHVACOperation) {\r\n if (this.currentHVACOperation === COMMON_CONSTANTS.EMERGENCY_SHUTOFF) {\r\n const date = moment(this.minDate).add(3, 'days');\r\n this.minDate = date && date.toDate();\r\n }\r\n \r\n }\r\n\r\n // // debugger\r\n\r\n // // let time = moment(new Date()).format('HH:mm A');\r\n // let time = moment(new Date(), 'hh:mm A');\r\n\r\n // time.set({ hour: 8, minute: 0, second: 0, millisecond: 0 });\r\n\r\n // // if (time.hour() >= 8 && (time.hour() + time.minute()) <= 6.30) {\r\n\r\n // // }\r\n\r\n // if (time.format('hh:mm A') >= moment('08:00 AM', 'hh:mm A').format('hh:mm A') &&\r\n // time.format('hh:mm A') <= moment('06:30 PM', 'hh:mm A').format('hh:mm A')) {\r\n\r\n // }\r\n\r\n // // debugger\r\n const siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n if (siteName === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR ||\r\n siteName === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n this.getContractorInformation();\r\n }\r\n \r\n\r\n }\r\n//////get contractor details\r\ngetContractorInformation() {\r\n // debugger\r\n this.sharedService.getContractorInformation((response: ContractorDetails, isError) => {\r\n if (!isError) {\r\n this.contractorDetails = response;\r\n }\r\n\r\n });\r\n }\r\n\r\n handleSelectedDate(event: any) {\r\n // clearing time value to reduce the error, otherwise this leads to selection of past time\r\n if (this.currentHVACOperation &&\r\n this.currentHVACOperation === COMMON_CONSTANTS.PRE_SEASON_TEST) {\r\n this.preSeasonTestForm.patchValue({\r\n scheduleDate: event\r\n });\r\n } else if (this.currentHVACOperation &&\r\n this.currentHVACOperation === COMMON_CONSTANTS.EMERGENCY_SHUTOFF) {\r\n this.emergencyShutoffForm.patchValue({\r\n scheduleDate: event,\r\n time: ''\r\n });\r\n }\r\n }\r\n\r\n handleTimeSlotValue(times: any) {\r\n // let times = this.preSeasonTestForm.value.time;\r\n times = times.split('-');\r\n if (times && times.length >= 2) {\r\n return [times[0].trim(), times[1].trim()];\r\n } else if (times && times.length === 1) {\r\n return [times[0].trim()];\r\n }\r\n }\r\n\r\n handleTestType(data:any)\r\n {\r\n if(data==\"heating\")\r\n {\r\nthis.isHeating=true\r\n\r\n }\r\n else{\r\nthis.isHeating=false\r\n }\r\n }\r\n\r\n //function to schedule the preseasontest \r\n handleSchedulePreSeasonTest() {\r\n const fromToTimes = this.handleTimeSlotValue(this.preSeasonTestForm.value.time);\r\n const date = moment(this.preSeasonTestForm.value.scheduleDate).format('YYYY-MM-DD');\r\n let startTime = date + ' ' + moment(fromToTimes[0], 'hh:mm A').format('hh:mm:ss A');\r\n let completeTime = moment(startTime).add(30, 'minute').toDate()\r\n let payload = {};\r\n if (this.isBulkSchedule) {\r\n payload = {\r\n boards: this.boardsListArray,\r\n scheduleTime: startTime,\r\n completionTime: completeTime,\r\n testType: this.isHeating?\"heat-test\":\"cool-test\",\r\n user: localStorage.getItem('userName')\r\n };\r\n }\r\n else {\r\n payload = {\r\n boardSerialNumber: this.inventoryDetails && this.inventoryDetails.meliSerialNumber,\r\n deviceType: this.inventoryDetails && this.inventoryDetails.deviceType,\r\n scheduleTime: startTime,\r\n completionTime: completeTime,\r\n testType: this.isHeating?\"heat-test\":\"cool-test\",\r\n user: this.portalName == this.roleConstants.MDU ?\r\n this.customerDetails && this.customerDetails.email ? this.customerDetails.email[0].email : localStorage.getItem('userName')\r\n : this.customerDetails.email[0].email,\r\n };\r\n }\r\n this.isActionBtnLoading = true;\r\n this.meliService.handleSchedulePreSeasonTest(payload, this.isBulkSchedule).subscribe(\r\n (response) => {\r\n this.storeResponse = response;\r\n this.isActionBtnLoading = false;\r\n // this.closeModal();\r\n //this.storeResponse = response;\r\n //let day = moment.utc(response.responseData.scheduleTime).local().format('MM/DD/YY hh:mm A');\r\n if (this.isBulkSchedule) {\r\n let res = response.responseData;\r\n if (res) {\r\n res.forEach(info => {\r\n if (info.statusCode === \"4444\") {\r\n this.scheduleResponseData.push(info);\r\n }\r\n });\r\n if (this.scheduleResponseData.length > 0) {\r\n this.toggleConfirmationModal();\r\n this.confirmationModalTitle = \"Warning\";\r\n let test = this.scheduleResponseData.length > 1 ? 'tests' : 'test';\r\n let reason = this.scheduleResponseData.length>1?'reason':'reasons';\r\n this.confirmationModalLine1Content = `${this.scheduleResponseData.length} Pre-Season ${test} could not be scheduled for the following ${reason}:`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\";\r\n this.hasYesOrNoButtom = false;\r\n this.isShowWarningSymbol = false;\r\n this.isShowLoopInformation = true;\r\n this.confirmationModalLine4Content = this.scheduleResponseData;\r\n this.isBulkScheduleError=true;\r\n this.confirmationModalPrimaryButtonName=\"OK\"\r\n \r\n }\r\n else {\r\n //this.refreshPreSeasonTest.emit(response.responseData);\r\n // this.closeModal();\r\n //this.helperService.showToaster(ToasterType.SUCCESS, \"Pre-Season test scheduled successfully\");\r\n this.hasYesOrNoButtom = false;\r\n this.confirmationModalTitle = \"\";\r\n this.confirmationModalLine1Content = `Pre-Season Test has been scheduled. An email will be sent to the customer.`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\"; \r\n this.isShowWarningSymbol = true;\r\n this.isShowLoopInformation = false;\r\n this.confirmationModalPrimaryButtonName=\"OK\";\r\n this.isSuccessToasterModal=true;\r\n this.scheduleModalEmitterFlag = true;\r\n this.toggleConfirmationModal();\r\n }\r\n }\r\n }\r\n else {\r\n //this.refreshPreSeasonTest.emit(response.responseData);\r\n //this.closeModal();\r\n\r\n //let res = response.responseData.message + \" on \" + moment.utc(response.responseData.scheduleTime).format('MM-DD-YYYY h:mm A');\r\n //console.log(res)\r\n //this.helperService.showToaster(ToasterType.SUCCESS, res);\r\n \r\n this.hasYesOrNoButtom = false;\r\n this.confirmationModalTitle = \"\";\r\n this.confirmationModalLine1Content = `Pre-Season Test has been scheduled. An email will be sent to the customer.`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\"; \r\n this.isShowWarningSymbol = true;\r\n this.isShowLoopInformation = false;\r\n this.confirmationModalPrimaryButtonName=\"OK\";\r\n this.isSuccessToasterModal=true;\r\n this.scheduleModalEmitterFlag = true;\r\n this.toggleConfirmationModal();\r\n }\r\n }, (error) => {\r\n this.isActionBtnLoading = false;\r\n this.closeModal();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n\r\n }\r\n\r\n handleIsPreSeasonScheduled() {\r\n const preSeasonTime = moment.utc(this.preSeasonTestDetails && this.preSeasonTestDetails.responseData &&\r\n this.preSeasonTestDetails.responseData.scheduleTime).local().format('YYYY-MM-DD hh:mm A');\r\n\r\n const time = this.handleTimeSlotValue(this.emergencyShutoffForm.value.time);\r\n const date = moment(this.emergencyShutoffForm.value.scheduleDate).format('YYYY-MM-DD');\r\n const emergencyShutoffTime = date + ' ' + moment(time[0], 'hh:mm A').format('hh:mm A');\r\n if (preSeasonTime === emergencyShutoffTime) {\r\n this.hasYesOrNoButtom = false;\r\n this.confirmationModalTitle = \"Warning\";\r\n this.confirmationModalLine1Content = `A Pre-season Test has been scheduled for this time. \r\n Please cancel the Pre-Season Test before proceeding to schedule an Emergency Shut-off.`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\";\r\n this.isShowWarningSymbol = false;\r\n this.isShowLoopInformation = false;\r\n this.toggleConfirmationModal();\r\n } else {\r\n this.handleScheduleEmergencyShutoff();\r\n }\r\n }\r\n\r\n handleScheduleEmergencyShutoff() {\r\n\r\n const time = this.handleTimeSlotValue(this.emergencyShutoffForm.value.time);\r\n const date = moment(this.emergencyShutoffForm.value.scheduleDate).format('YYYY-MM-DD');\r\n let startTime = date + ' ' + moment(time[0], 'hh:mm A').format('hh:mm:ss A');\r\n const scheduledTime = moment(new Date(startTime)).format(\"YYYY-MM-DD hh:mm:ss A\");\r\n const payload = {\r\n boardSerialNumber: this.inventoryDetails && this.inventoryDetails.meliSerialNumber,\r\n scheduleTime: scheduledTime\r\n };\r\n this.isActionBtnLoading = true;\r\n this.meliService.handleScheduleEmergencyShutoff(payload).subscribe(\r\n (response: ScheduleEmergencyShutoffResponse) => {\r\n this.refreshEmergencyShutoffStatus.emit();\r\n this.isActionBtnLoading = false;\r\n //this.closeModal();\r\n const day = moment(\r\n response.scheduleEmergencyShutoffResponseDetails &&\r\n response.scheduleEmergencyShutoffResponseDetails.scheduleTime\r\n ).local().format('MM-DD-YYYY h:mm A');\r\n //const res = response.scheduleEmergencyShutoffResponseDetails &&\r\n //response.scheduleEmergencyShutoffResponseDetails.message + \" on \" + day;\r\n //this.helperService.showToaster(ToasterType.SUCCESS, res);\r\n this.hasYesOrNoButtom = false;\r\n this.confirmationModalTitle = \"\";\r\n this.confirmationModalLine1Content = `Shut-off has been scheduled. An email will be sent to the customer.`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\"; \r\n this.isShowWarningSymbol = true;\r\n this.isShowLoopInformation = false;\r\n this.confirmationModalPrimaryButtonName=\"OK\";\r\n this.isSuccessToasterModal=true;\r\n this.swtichoffModalEmitterFlag = true;\r\n this.toggleConfirmationModal();\r\n }, (error) => {\r\n this.isActionBtnLoading = false;\r\n this.closeModal();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n\r\n }\r\n\r\n handleValidateTime(form: FormGroup, time: any) {\r\n // checking date is selected or not. If not, then time slot is disabled.\r\n if (form && form.get('scheduleDate') && form.get('scheduleDate').valid) {\r\n // If selected date is > today's date then, enabled all time slots.\r\n\r\n if (Date.parse((form.value && form.value.scheduleDate)) <=\r\n Date.parse(new Date().toString())) {\r\n\r\n let startTime: any = this.handleTimeSlotValue(time);\r\n\r\n if (startTime && startTime.length) {\r\n startTime = moment(new Date()).format('YYYY-MM-DD') + ' ' +\r\n moment(startTime[0], 'hh:mm A').format('hh:mm:ss A');\r\n }\r\n\r\n if (Date.parse(startTime) <\r\n Date.parse(moment(new Date()).format('YYYY-MM-DD hh:mm:ss A'))) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n\r\n } else {\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n\r\n }\r\n\r\n handleActionBtnValidation() {\r\n if (this.currentHVACOperation) {\r\n if (this.currentHVACOperation === COMMON_CONSTANTS.PRE_SEASON_TEST) {\r\n if (this.preSeasonTestForm.valid) {\r\n return true;\r\n }\r\n } else if (this.currentHVACOperation === COMMON_CONSTANTS.EMERGENCY_SHUTOFF) {\r\n if (this.emergencyShutoffForm.valid) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n }\r\n\r\n\r\n handleActionBtn() {\r\n if (this.currentHVACOperation) {\r\n if (this.currentHVACOperation === COMMON_CONSTANTS.PRE_SEASON_TEST) {\r\n\r\n if (this.isBulkSchedule) {\r\n let getStatus = this.getScheduledStatus();\r\n console.log(getStatus)\r\n if (getStatus) {\r\n if(this.boardsCount==1){\r\n this.confirmationModalLine1Content = 'There are previously scheduled Pre-Season Test in this selection.';\r\n this.confirmationModalLine2Content = 'This action will overwrite any previously scheduled test.';\r\n this.confirmationModalLine3Content = `Are you sure you want to schedule ${this.boardsCount} Pre-Season Test?`;\r\n }\r\n else if(this.boardsCount>1){\r\n this.confirmationModalLine1Content = 'There are previously scheduled Pre-Season Tests in this selection.';\r\n this.confirmationModalLine2Content = 'This action will overwrite any previously scheduled tests.';\r\n this.confirmationModalLine3Content = `Are you sure you want to batch schedule ${this.boardsCount} Pre-Season Tests?`;\r\n }\r\n \r\n }\r\n else {\r\n if(this.boardsCount==1){\r\n this.confirmationModalLine1Content = `Are you sure you want to schedule ${this.boardsCount} Pre-Season Test?`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\";\r\n }\r\n else if(this.boardsCount>1){\r\n this.confirmationModalLine1Content = `Are you sure you want to batch schedule ${this.boardsCount} Pre-Season Tests?`;\r\n this.confirmationModalLine2Content=\"\";\r\n this.confirmationModalLine3Content =\"\";\r\n }\r\n \r\n }\r\n this.hasYesOrNoButtom = true;\r\n this.confirmationModalTitle = \"Warning\";\r\n this.isShowWarningSymbol = false;\r\n this.isShowLoopInformation = false;\r\n this.toggleConfirmationModal();\r\n }\r\n else {\r\n this.handleSchedulePreSeasonTest();\r\n }\r\n \r\n } else if (this.currentHVACOperation === COMMON_CONSTANTS.EMERGENCY_SHUTOFF) {\r\n // if (this.emergencyShutoffForm.valid) {\r\n // return true;\r\n // }\r\n this.handleIsPreSeasonScheduled();\r\n }\r\n }\r\n }\r\n\r\n //get the status whether any of the selected board is scheduled previously or not\r\n\r\n getScheduledStatus() {\r\n console.log(this.boardsListArray)\r\n let isScheduledData;\r\n this.boardsListArray.forEach(data => {\r\n if (data.scheduled != PRESEASON_STATUS.CRIICAL_FAULTS_DETECTED &&\r\n data.scheduled != PRESEASON_STATUS.FAULTS_DETECTED &&\r\n data.scheduled != PRESEASON_STATUS.NOT_SCHEDULED &&\r\n data.scheduled != PRESEASON_STATUS.PASS && data.scheduled != PRESEASON_STATUS.TEST_INCOMPLETE && data.scheduled != PRESEASON_STATUS.TEST_DIDNOT_RUN) {\r\n isScheduledData = true;\r\n }\r\n else {\r\n isScheduledData = false;\r\n }\r\n });\r\n return isScheduledData\r\n }\r\n handleSelectedTime(event) {\r\n this.preSeasonTestForm.patchValue({\r\n time: event && moment(event).format('hh:mm A')\r\n });\r\n }\r\n\r\n handleEmail(emailList: Email[], requiredType: string) {\r\n const email = this.helperService.handleEmailSelection(emailList, requiredType);\r\n return email && email.email;\r\n }\r\n\r\n handlePhone(phoneList: Phone[], requiredType: string) {\r\n const phone = this.helperService.handlePhoneSelection(phoneList, requiredType);\r\n return phone && this.helperService.handleFormatPhoneNumber(phone.phoneNumber);\r\n console.log(phone.phoneNumber)\r\n }\r\n\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n if (this.isBulkScheduleError) {\r\n this.closeModal();\r\n this.refreshPreSeasonTest.emit([]);\r\n }\r\n \r\n\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n handleConfirmationModalEmitter(data) {\r\n this.toggleConfirmationModal();\r\n if(!this.swtichoffModalEmitterFlag && !this.scheduleModalEmitterFlag)\r\n {\r\n this.handleSchedulePreSeasonTest();\r\n }\r\n \r\n if(this.scheduleModalEmitterFlag)\r\n {\r\n this.closeModal();\r\n this.scheduleModalEmitterFlag=false;\r\n this.refreshPreSeasonTest.emit(this.storeResponse.responseData);\r\n }\r\n if(this.swtichoffModalEmitterFlag)\r\n {\r\n this.closeModal();\r\n this.swtichoffModalEmitterFlag=false;\r\n //this.refreshEmergencyShutoffStatus.emit();\r\n //this.refreshPreSeasonTest.emit(this.storeResponse.responseData);\r\n }\r\n \r\n }\r\n\r\n\r\n scrolldown()\r\n {\r\n console.log(\"scrolldown\");\r\n try {\r\n this.myScrollContainer.nativeElement.scrollTop = this.myScrollContainer.nativeElement.scrollHeight;\r\n } catch(err) { } \r\n }\r\n\r\n}\r\n\r\n//const b=moment(new Date(moment.utc(scheduleTime).valueOf())).format();\r\n // const scheduledTime = new Date(startTime).format(\"YYYY-MM-DD hh:mm:ss A\");\r\n //const completedTime = new Date(completeTime).format(\"YYYY-MM-DD hh:mm:ss A\");\r\n // let completeTime = date + ' ' + moment(fromToTimes[1], 'hh:mm A').format('hh:mm:ss A');\r\n\r\n // thingName: this.inventoryDetails.thingName,\r\n // thingName:'CM-MW01-KA2019-01-000098',","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.info-modal_wrapper .detail {\\n margin: 1rem 0;\\n word-break: break-all;\\n display: flex;\\n}\\n.info-modal_wrapper .detail .detail-label {\\n font-size: 1.4rem;\\n font-family: \\\"Roboto-Regular\\\";\\n font-weight: bold;\\n color: #000000;\\n min-width: 18rem;\\n}\\n.info-modal_wrapper .detail .view-url {\\n min-width: 5rem;\\n color: #71ceca;\\n}\\n.info-modal_wrapper .location-select {\\n padding: 0.2rem 3rem 0.2rem 0.2rem !important;\\n font-size: 1.2rem !important;\\n}\\n.info-modal_wrapper .hvac-wrapper {\\n width: 95%;\\n border: 1px solid transparent;\\n border-top: none;\\n}\\n.info-modal_wrapper .hvac-wrapper_border {\\n border: 1px solid #cecece;\\n border-top: none;\\n border-top-left-radius: 0.5rem;\\n border-top-right-radius: 0.5rem;\\n}\\n.info-modal_wrapper .hvac-info_header-left {\\n flex: 1.2;\\n}\\n.info-modal_wrapper .equipment_label {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n font-size: 1.5rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaW5mby1tb2RhbC9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcaW5mby1tb2RhbFxcaW5mby1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaW5mby1tb2RhbC9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9pbmZvLW1vZGFsL2luZm8tbW9kYWwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRElJO0VBQ0ksY0FBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtBRURSO0FGR1E7RUFDSSxpQkFBQTtFQUNBLDZCQzhGZTtFRDdGZixpQkFBQTtFQUNBLGNDVlU7RURXVixnQkFBQTtBRURaO0FGV1E7RUFDSSxlQUFBO0VBQ0EsY0NWYztBQ0MxQjtBRmFJO0VBQ0ksNkNBQUE7RUFDQSw0QkFBQTtBRVhSO0FGY0k7RUFDSSxVQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQkFBQTtBRVpSO0FGZUk7RUFDSSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsOEJBQUE7RUFDQSwrQkFBQTtBRWJSO0FGZ0JJO0VBQ0ksU0FBQTtBRWRSO0FGaUJJO0VBQ0ksaUNDOEN1QjtFRDdDdkIsY0NoQmU7RURpQmYsaUJBQUE7QUVmUiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2luZm8tbW9kYWwvaW5mby1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkBpbXBvcnQgJy4uLy4uLy4uLy4uL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuLmluZm8tbW9kYWxfd3JhcHBlciB7XHJcblxyXG4gICAgLmRldGFpbCB7XHJcbiAgICAgICAgbWFyZ2luOiAxcmVtIDA7XHJcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIC5kZXRhaWwtbGFiZWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrLXByaW1hcnk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMThyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyAuZGV0YWlsLWxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAvLyAgICAgY29udGVudDogJzonO1xyXG4gICAgICAgIC8vICAgICByaWdodDogMDtcclxuICAgICAgICAvLyAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcclxuICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgIC52aWV3LXVybCB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogNXJlbTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvY2F0aW9uLXNlbGVjdCB7XHJcbiAgICAgICAgcGFkZGluZzogMC4ycmVtIDNyZW0gMC4ycmVtIDAuMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmh2YWMtd3JhcHBlciB7XHJcbiAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5odmFjLXdyYXBwZXJfYm9yZGVyIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5O1xyXG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC41cmVtO1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmh2YWMtaW5mb19oZWFkZXItbGVmdCB7XHJcbiAgICAgICAgZmxleDogMS4yO1xyXG4gICAgfVxyXG5cclxuICAgIC5lcXVpcG1lbnRfbGFiZWwge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXktc2Vjb25kYXJ5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5O1xyXG4gICAgfVxyXG5cclxufSIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5pbmZvLW1vZGFsX3dyYXBwZXIgLmRldGFpbCB7XG4gIG1hcmdpbjogMXJlbSAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaW5mby1tb2RhbF93cmFwcGVyIC5kZXRhaWwgLmRldGFpbC1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LWZhbWlseTogXCJSb2JvdG8tUmVndWxhclwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG1pbi13aWR0aDogMThyZW07XG59XG4uaW5mby1tb2RhbF93cmFwcGVyIC5kZXRhaWwgLnZpZXctdXJsIHtcbiAgbWluLXdpZHRoOiA1cmVtO1xuICBjb2xvcjogIzcxY2VjYTtcbn1cbi5pbmZvLW1vZGFsX3dyYXBwZXIgLmxvY2F0aW9uLXNlbGVjdCB7XG4gIHBhZGRpbmc6IDAuMnJlbSAzcmVtIDAuMnJlbSAwLjJyZW0gIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcbn1cbi5pbmZvLW1vZGFsX3dyYXBwZXIgLmh2YWMtd3JhcHBlciB7XG4gIHdpZHRoOiA5NSU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLmluZm8tbW9kYWxfd3JhcHBlciAuaHZhYy13cmFwcGVyX2JvcmRlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWNlY2U7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuNXJlbTtcbn1cbi5pbmZvLW1vZGFsX3dyYXBwZXIgLmh2YWMtaW5mb19oZWFkZXItbGVmdCB7XG4gIGZsZXg6IDEuMjtcbn1cbi5pbmZvLW1vZGFsX3dyYXBwZXIgLmVxdWlwbWVudF9sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1YztcbiAgZm9udC1zaXplOiAxLjVyZW07XG59Il19 */\"","import { Component, OnInit, Input, Output, EventEmitter, SimpleChanges, OnChanges } from '@angular/core';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\n\r\n@Component({\r\n selector: 'app-info-modal',\r\n templateUrl: './info-modal.component.html',\r\n styleUrls: ['./info-modal.component.scss']\r\n})\r\nexport class InfoModalComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() emitHandlePrimaryActionButton = new EventEmitter();\r\n @Output() emitHandleSecondaryActionButton = new EventEmitter();\r\n @Output() emitHandleEdit = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() modalType: string;\r\n @Input() details: any;\r\n @Input() isModalFromCreatePage = false;\r\n @Input() isLoading = false;\r\n @Input() isActionButtonLoading = false;\r\n @Input() isActionButtonDisabled = false;\r\n @Input() isShowDelete = true;\r\n @Input() isSHowEdit = true;\r\n @Input() isShowCrossMark = true;\r\n @Input() portalName: string;\r\n commonConstants = COMMON_CONSTANTS;\r\n roleConstants = ROLE_CONSTANTS;\r\n currentHVACInfoViewIndex: number;\r\n\r\n constructor(\r\n private helperService: HelperService\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handleHVACInfoView(index: number) {\r\n this.currentHVACInfoViewIndex = index;\r\n }\r\n\r\n handleHVACIndex(index: number, arr: Array) {\r\n const array = JSON.parse(JSON.stringify(arr));\r\n const splitArray = array.splice(0, (index + 1));\r\n const count = splitArray.filter(value => value['assetUnitType'] === 'indoor').length;\r\n\r\n return count;\r\n }\r\n\r\n handlePrimaryActionButton() {\r\n this.emitHandlePrimaryActionButton.emit();\r\n }\r\n\r\n handleSecondaryActionButton() {\r\n this.emitHandleSecondaryActionButton.emit();\r\n }\r\n\r\n handleEdit() {\r\n // debugger\r\n this.emitHandleEdit.emit();\r\n // this.emitHandleEdit.emit(this.isSHowEdit);\r\n }\r\n\r\n handleRemoveAddressLinesCombinator(address: string) {\r\n return this.helperService.handleRemoveAddressLinesCombinator(address);\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n trackByAssetUnitTypeId(index: number, item: any): string {\r\n return item ? item.assetUnitTypeId : '';\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.installation-report-modal_wrapper .modal-content {\\n min-height: 10rem;\\n overflow: auto;\\n width: 47%;\\n}\\n.installation-report-modal_wrapper .width_42-percent {\\n width: 47%;\\n}\\n.installation-report-modal_wrapper .width_21-percent {\\n width: 21%;\\n}\\n.installation-report-modal_wrapper .width_37-percent {\\n width: 34%;\\n}\\n.installation-report-modal_wrapper .contractorlogo {\\n max-width: 15rem;\\n max-height: 6rem;\\n}\\n.installation-report-modal_wrapper .detail-list {\\n font-size: 1.3rem;\\n margin: 0 1rem;\\n padding: 1rem;\\n}\\n.installation-report-modal_wrapper .detail-list .list {\\n margin: 0.4rem 0;\\n word-break: break-all;\\n display: flex;\\n}\\n.installation-report-modal_wrapper .detail-list .sublist1 {\\n margin: 0rem 0rem 0.4rem 0rem;\\n word-break: break-all;\\n display: flex;\\n}\\n.installation-report-modal_wrapper .detail-list .sublist {\\n margin: 0rem 0;\\n word-break: break-all;\\n display: flex;\\n}\\n.installation-report-modal_wrapper .detail-list .list-label {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n margin-right: 0.3rem;\\n}\\n.installation-report-modal_wrapper .installation-report-detail {\\n word-break: break-all;\\n}\\n.installation-report-modal_wrapper .installation-report-detail .label {\\n min-width: 15rem;\\n}\\n.installation-report-modal_wrapper hr {\\n border: 0.02rem solid #909090;\\n margin-top: 1rem;\\n margin-bottom: 2rem;\\n}\\n.installation-report-modal_wrapper .background_light_grey {\\n background-color: #f8f8f8;\\n}\\n.installation-report-modal_wrapper .comment-wrapper {\\n min-height: 7rem;\\n}\\n.installation-report-modal_wrapper .sensor-active {\\n fill: #00b7a5;\\n}\\n.installation-report-modal_wrapper .sensor-error {\\n fill: #dd4b4b;\\n}\\n.installation-report-modal_wrapper .sensor_not-installed {\\n fill: none;\\n stroke: #cecece;\\n stroke-miterlimit: 10;\\n stroke-width: 1;\\n}\\n.installation-report-modal_wrapper .sensor-circle::before {\\n position: absolute;\\n content: \\\"\\\";\\n width: 1rem;\\n height: 1rem;\\n border-radius: 50%;\\n left: 0;\\n margin-left: -1.5rem;\\n}\\n.installation-report-modal_wrapper .working::before {\\n background-color: #00b7a5;\\n}\\n.installation-report-modal_wrapper .not-working::before {\\n background-color: #dd4b4b;\\n}\\n.installation-report-modal_wrapper .not-installed::before {\\n background-color: none;\\n border: 1px solid #707070;\\n}\\n.installation-report-modal_wrapper .imageslist {\\n max-height: 11rem;\\n overflow-y: auto;\\n}\\n.installation-report-modal_wrapper .comments {\\n font-size: 14px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaW5zdGFsbGF0aW9uLXJlcG9ydC9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcaW5zdGFsbGF0aW9uLXJlcG9ydFxcaW5zdGFsbGF0aW9uLXJlcG9ydC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvaW5zdGFsbGF0aW9uLXJlcG9ydC9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9pbnN0YWxsYXRpb24tcmVwb3J0L2luc3RhbGxhdGlvbi1yZXBvcnQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRE1FO0VBQ0UsaUJBQUE7RUFDQSxjQUFBO0VBQ0EsVUFBQTtBRUhKO0FGS0U7RUFDRSxVQUFBO0FFSEo7QUZLRTtFQUNFLFVBQUE7QUVISjtBRktFO0VBQ0UsVUFBQTtBRUhKO0FGS0U7RUFDRSxnQkFBQTtFQUNBLGdCQUFBO0FFSEo7QUZLRTtFQUNFLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLGFBQUE7QUVISjtBRklJO0VBQ0UsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLGFBQUE7QUVGTjtBRklJO0VBQ0UsNkJBQUE7RUFDQSxxQkFBQTtFQUNBLGFBQUE7QUVGTjtBRklJO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtBRUZOO0FGSUk7RUFDRSxpQ0N1RHlCO0VEdER6QixjQ1BpQjtFRFFqQixvQkFBQTtBRUZOO0FGS0U7RUFFRSxxQkFBQTtBRUpKO0FGT0k7RUFHRSxnQkFBQTtBRVBOO0FGaUJFO0VBR0UsNkJBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FFakJKO0FGbUJFO0VBQ0UseUJBQUE7QUVqQko7QUZtQkU7RUFHRSxnQkFBQTtBRW5CSjtBRnVCRTtFQUNFLGFDdkJpQjtBQ0VyQjtBRndCRTtFQUNFLGFDakNnQjtBQ1dwQjtBRnlCRTtFQUNFLFVBQUE7RUFDQSxlQUFBO0VBQ0EscUJBQUE7RUFDQSxlQUFBO0FFdkJKO0FGeUJFO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxvQkFBQTtBRXZCSjtBRjBCRTtFQUNFLHlCQy9DaUI7QUN1QnJCO0FGMkJFO0VBQ0UseUJDekRnQjtBQ2dDcEI7QUYyQkU7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0FFekJKO0FGMkJFO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtBRXpCSjtBRjJCRTtFQUNFLGVBQUE7QUV6QkoiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9pbnN0YWxsYXRpb24tcmVwb3J0L2luc3RhbGxhdGlvbi1yZXBvcnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0IFwic3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzXCI7XHJcbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIge1xyXG4gIC8vIC5tb2RhbC1jb250ZW50IHtcclxuICAvLyAgICAgd2lkdGg6IDcwMHB4O1xyXG4gIC8vIH1cclxuICAubW9kYWwtY29udGVudCB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMHJlbTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgd2lkdGg6IDQ3JTtcclxuICB9XHJcbiAgLndpZHRoXzQyLXBlcmNlbnQge1xyXG4gICAgd2lkdGg6IDQ3JTtcclxuICB9XHJcbiAgLndpZHRoXzIxLXBlcmNlbnQge1xyXG4gICAgd2lkdGg6IDIxJTtcclxuICB9XHJcbiAgLndpZHRoXzM3LXBlcmNlbnQge1xyXG4gICAgd2lkdGg6IDM0JTtcclxuICB9XHJcbiAgLmNvbnRyYWN0b3Jsb2dvIHtcclxuICAgIG1heC13aWR0aDogMTVyZW07XHJcbiAgICBtYXgtaGVpZ2h0OiA2cmVtO1xyXG4gIH1cclxuICAuZGV0YWlsLWxpc3Qge1xyXG4gICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICBtYXJnaW46IDAgMXJlbTtcclxuICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAubGlzdCB7XHJcbiAgICAgIG1hcmdpbjogMC40cmVtIDA7XHJcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgIC5zdWJsaXN0MSB7XHJcbiAgICAgIG1hcmdpbjogMHJlbSAwcmVtIDAuNHJlbSAwcmVtO1xyXG4gICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAuc3VibGlzdCB7XHJcbiAgICAgIG1hcmdpbjogMHJlbSAwO1xyXG4gICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAubGlzdC1sYWJlbCB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDtcclxuICAgICAgY29sb3I6ICRjb2xvci1ncmF5LXNlY29uZGFyeTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjNyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pbnN0YWxsYXRpb24tcmVwb3J0LWRldGFpbCB7XHJcbiAgICAvL21hcmdpbjogMXJlbSAwO1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgLy8gZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAubGFiZWwge1xyXG4gICAgICAvLyBmb250LXNpemU6IDEuNnJlbTtcclxuICAgICAgLy8gZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkO1xyXG4gICAgICBtaW4td2lkdGg6IDE1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIC5pbnN0YWxsYXRpb24tcmVwb3J0LWRldGFpbC1sYWJlbDo6YWZ0ZXIge1xyXG4gICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIC8vICAgICBjb250ZW50OiAnOic7XHJcbiAgICAvLyAgICAgcmlnaHQ6IDA7XHJcbiAgICAvLyAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcclxuICAgIC8vIH1cclxuICB9XHJcbiAgaHIge1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2Q5ZDlkOTtcclxuICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkICNmMWYxZjE7XHJcbiAgICBib3JkZXI6IDAuMDJyZW0gc29saWQgIzkwOTA5MDtcclxuICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gIH1cclxuICAuYmFja2dyb3VuZF9saWdodF9ncmV5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XHJcbiAgfVxyXG4gIC5jb21tZW50LXdyYXBwZXIge1xyXG4gICAgLy9tYXJnaW46IDNyZW07XHJcbiAgICAvL3BhZGRpbmc6IDAuNXJlbTtcclxuICAgIG1pbi1oZWlnaHQ6IDdyZW07XHJcbiAgICAvL2JvcmRlcjogMC4wMnJlbSBzb2xpZCAkY29sb3ItZ3JheS01O1xyXG4gIH1cclxuXHJcbiAgLnNlbnNvci1hY3RpdmUge1xyXG4gICAgZmlsbDogJGNvbG9yLWJsdWUtdGVybmFyeTtcclxuICB9XHJcblxyXG4gIC5zZW5zb3ItZXJyb3Ige1xyXG4gICAgZmlsbDogJGNvbG9yLXJlZC1wcmltYXJ5O1xyXG4gIH1cclxuXHJcbiAgLnNlbnNvcl9ub3QtaW5zdGFsbGVkIHtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgICBzdHJva2U6ICNjZWNlY2U7XHJcbiAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICBzdHJva2Utd2lkdGg6IDE7XHJcbiAgfVxyXG4gIC5zZW5zb3ItY2lyY2xlOjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHdpZHRoOiAxcmVtO1xyXG4gICAgaGVpZ2h0OiAxcmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xyXG4gIH1cclxuXHJcbiAgLndvcmtpbmc6OmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZS10ZXJuYXJ5O1xyXG4gIH1cclxuXHJcbiAgLm5vdC13b3JraW5nOjpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXJlZC1wcmltYXJ5O1xyXG4gIH1cclxuICAubm90LWluc3RhbGxlZDo6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzA3MDcwO1xyXG4gIH1cclxuICAuaW1hZ2VzbGlzdCB7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMXJlbTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgfVxyXG4gIC5jb21tZW50cyB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAvL2JvcmRlcjogMXB4IHNvbGlkICNkMmNmY2Y7XHJcbiAgICAvL3BhZGRpbmc6IDFyZW07XHJcbiAgICAvL2ZvbnQtZmFtaWx5OiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyO1xyXG4gIH1cclxufVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5tb2RhbC1jb250ZW50IHtcbiAgbWluLWhlaWdodDogMTByZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aWR0aDogNDclO1xufVxuLmluc3RhbGxhdGlvbi1yZXBvcnQtbW9kYWxfd3JhcHBlciAud2lkdGhfNDItcGVyY2VudCB7XG4gIHdpZHRoOiA0NyU7XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC53aWR0aF8yMS1wZXJjZW50IHtcbiAgd2lkdGg6IDIxJTtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLndpZHRoXzM3LXBlcmNlbnQge1xuICB3aWR0aDogMzQlO1xufVxuLmluc3RhbGxhdGlvbi1yZXBvcnQtbW9kYWxfd3JhcHBlciAuY29udHJhY3RvcmxvZ28ge1xuICBtYXgtd2lkdGg6IDE1cmVtO1xuICBtYXgtaGVpZ2h0OiA2cmVtO1xufVxuLmluc3RhbGxhdGlvbi1yZXBvcnQtbW9kYWxfd3JhcHBlciAuZGV0YWlsLWxpc3Qge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgbWFyZ2luOiAwIDFyZW07XG4gIHBhZGRpbmc6IDFyZW07XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5kZXRhaWwtbGlzdCAubGlzdCB7XG4gIG1hcmdpbjogMC40cmVtIDA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLmRldGFpbC1saXN0IC5zdWJsaXN0MSB7XG4gIG1hcmdpbjogMHJlbSAwcmVtIDAuNHJlbSAwcmVtO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5kZXRhaWwtbGlzdCAuc3VibGlzdCB7XG4gIG1hcmdpbjogMHJlbSAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5kZXRhaWwtbGlzdCAubGlzdC1sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1YztcbiAgbWFyZ2luLXJpZ2h0OiAwLjNyZW07XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5pbnN0YWxsYXRpb24tcmVwb3J0LWRldGFpbCB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLmluc3RhbGxhdGlvbi1yZXBvcnQtZGV0YWlsIC5sYWJlbCB7XG4gIG1pbi13aWR0aDogMTVyZW07XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIGhyIHtcbiAgYm9yZGVyOiAwLjAycmVtIHNvbGlkICM5MDkwOTA7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5iYWNrZ3JvdW5kX2xpZ2h0X2dyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xufVxuLmluc3RhbGxhdGlvbi1yZXBvcnQtbW9kYWxfd3JhcHBlciAuY29tbWVudC13cmFwcGVyIHtcbiAgbWluLWhlaWdodDogN3JlbTtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLnNlbnNvci1hY3RpdmUge1xuICBmaWxsOiAjMDBiN2E1O1xufVxuLmluc3RhbGxhdGlvbi1yZXBvcnQtbW9kYWxfd3JhcHBlciAuc2Vuc29yLWVycm9yIHtcbiAgZmlsbDogI2RkNGI0Yjtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLnNlbnNvcl9ub3QtaW5zdGFsbGVkIHtcbiAgZmlsbDogbm9uZTtcbiAgc3Ryb2tlOiAjY2VjZWNlO1xuICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XG4gIHN0cm9rZS13aWR0aDogMTtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLnNlbnNvci1jaXJjbGU6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLndvcmtpbmc6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI3YTU7XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5ub3Qtd29ya2luZzo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkNGI0Yjtcbn1cbi5pbnN0YWxsYXRpb24tcmVwb3J0LW1vZGFsX3dyYXBwZXIgLm5vdC1pbnN0YWxsZWQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3MDcwNzA7XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5pbWFnZXNsaXN0IHtcbiAgbWF4LWhlaWdodDogMTFyZW07XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4uaW5zdGFsbGF0aW9uLXJlcG9ydC1tb2RhbF93cmFwcGVyIC5jb21tZW50cyB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n// Services\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS, BOARDTYPES ,SIGNAL_STRENGTH_STATUS} from 'src/app/shared/constants/commom.constant';\r\n\r\n// Models\r\n\r\nimport { FormBuilder, FormGroup, FormControl } from '@angular/forms';\r\nimport * as moment from 'moment';\r\nimport { InstallationReportDetails } from 'src/app/shared/models/inventory.model';\r\nimport { BoardTypeCount } from 'src/app/shared/models/common.model';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from '../../constants/toaster.enum';\r\nimport { ContractorDetails } from '../../models/contractor.modal';\r\n\r\n@Component({\r\n selector: 'app-installation-report',\r\n templateUrl: './installation-report.component.html',\r\n styleUrls: ['./installation-report.component.scss']\r\n})\r\nexport class InstallationReportComponent implements OnInit {\r\n @Output() emitConfirmationModal = new EventEmitter();\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() emitHandleAction = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() isLoading: boolean;\r\n @Input() installationReport: InstallationReportDetails;\r\n @Input() reportSubmitFormat:any;\r\n @Input() isShowCrossMark = false;\r\n @Input() isPendingReportModal: boolean;\r\n @Input() connectivity: boolean;\r\n @Input() awsTechnicianId: string;\r\n installationReportForm: FormGroup;\r\n infoModalType = '';\r\n infoModalTitle = '';\r\n isShowConfirmationModal = false;\r\n confirmationModalTitle = '';\r\n isConfirmationModalHasYesOrNoButton = false;\r\n confirmationModalLine1Content: any;\r\n resolvedTime: any;\r\n @Input() boardTypeInfo: string;\r\n skip = 0;\r\n limit = 1;\r\n page = 1;\r\n totalCount = 0;\r\n commonConstants = COMMON_CONSTANTS;\r\n Cellular = BOARDTYPES.Celluar;\r\n Wifi = BOARDTYPES.Wi_Fi;\r\n currentInstallationReport: InstallationReportDetails;\r\n emptyimage = require('src/assets/images/noimage.jpg');\r\n cclogo = require('src/assets/images/defaultLogo.png');\r\n wifiWeak = require('src/assets/images/wifiWeak.svg');\r\n wifiFair = require('src/assets/images/wifiFair.svg');\r\n wifiGood = require('src/assets/images/wifiGood.svg');\r\n wifiExcellent = require('src/assets/images/wifiExcellent.svg');\r\n cellWeak = require('src/assets/images/cellWeak.svg');\r\n cellFair = require('src/assets/images/cellFair.svg');\r\n cellGood = require('src/assets/images/cellGood.svg');\r\n cellExcellent = require('src/assets/images/cellExcellent.svg');\r\n imagePath:any='';\r\n // defaultLogo = require('src/assets/images/defaultLogo.png');\r\n // imagess = ['https://homepages.cae.wisc.edu/~ece533/images/airplane.png', 'https://homepages.cae.wisc.edu/~ece533/images/cat.png']\r\n\r\n //imagess1 = [];\r\n //prevclick = 2;\r\n isChecked:boolean=false;\r\n \r\n contractorLogo: string | string[];\r\n isShowButton: boolean;\r\n isCheckedES: any;\r\n isBtnLoading: boolean;\r\n constructor(\r\n private sharedService: SharedService,\r\n private helperService: HelperService,\r\n private formBuilder: FormBuilder,\r\n ) { }\r\n\r\n ngOnInit() {\r\n console.log(this.installationReport)\r\n this.resolvedTime = moment().format('YYYY-MM-DD hh:mm:ss'); //2020-09-08 18:31:08\r\n this.installationReportForm = this.formBuilder.group(\r\n {\r\n comments: new FormControl('')\r\n });\r\n // this.imagePath=this.boardTypeInfo==this.Cellular?this.cellGood:this.wifiGood;\r\n this.connectivity = this.installationReport.connectivity;\r\n this.isChecked = this.installationReport.CDSStatus;\r\n this.isCheckedES =this.installationReport.esActivationSwitch;\r\n // this.connectivity=true;\r\n // if (this.installationReportList && this.installationReportList.length) {\r\n // this.totalCount = this.installationReportList.length;\r\n // this.installationReportList = this.installationReportList.reverse();\r\n // }\r\n // this.handleCurrentInstallationReport();\r\n console.log(this.boardTypeInfo);\r\n // this.imagess.forEach((element, i) => {\r\n // if (i <= 2) {\r\n // this.imagess1.push(element);\r\n // }\r\n // });\r\n this.handleImage();\r\n this.getContractorInformation();\r\n }\r\nhandleImage(){\r\n if(this.boardTypeInfo==this.Cellular){\r\n if(this.installationReport.signalStrength.includes('Excellent')){\r\n this.imagePath=this.cellExcellent;\r\n }else if(this.installationReport.signalStrength.includes('Good')){\r\n this.imagePath=this.cellGood;\r\n }else if(this.installationReport.signalStrength.includes('Fair')){\r\n this.imagePath=this.cellFair;\r\n }else if(this.installationReport.signalStrength.includes('Weak')){\r\n this.imagePath=this.cellWeak;\r\n }else if(this.installationReport.signalStrength.includes('Poor')){\r\n this.imagePath=this.cellWeak;\r\n }\r\n }else if(this.boardTypeInfo==this.Wifi){\r\n if(this.installationReport.signalStrength.includes('Excellent')){\r\n this.imagePath=this.wifiExcellent;\r\n }else if(this.installationReport.signalStrength.includes('Good')){\r\n this.imagePath=this.wifiGood;\r\n }else if(this.installationReport.signalStrength.includes('Fair')){\r\n this.imagePath=this.wifiFair;\r\n }else if(this.installationReport.signalStrength.includes('Weak')){\r\n this.imagePath=this.wifiWeak;\r\n }else if(this.installationReport.signalStrength.includes('Poor')){\r\n this.imagePath=this.wifiWeak;\r\n }\r\n }\r\n}\r\n getContractorInformation() {\r\n this.sharedService.getContractorInformation((response: ContractorDetails, isError) => {\r\n if (!isError) {\r\n console.log(response)\r\n this.contractorLogo = response.logoUrls ? response.logoUrls : '';\r\n if (this.contractorLogo.length > 0) {\r\n this.cclogo = this.contractorLogo[0]\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n handleStarCount(comments) {\r\n if (comments != null && comments.length) {\r\n let lastValue = comments[(comments.length - 1)];\r\n if (lastValue != null) {\r\n lastValue = lastValue.substr(lastValue.length - 1);\r\n return Number(lastValue);\r\n }\r\n\r\n\r\n }\r\n return 0;\r\n }\r\n\r\n starArray(n: number): any[] {\r\n return Array(n);\r\n }\r\n\r\n handleRemoveStarCountInComments(comments) {\r\n let value = comments && comments.toString();\r\n value = value && value.substring(0, value.length - 2);\r\n return value;\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n refreshList()\r\n {\r\n this.emitHandleAction.emit();\r\n }\r\n\r\n\r\n handleModalType(type: string) {\r\n this.infoModalType = type;\r\n if (type === 'confirmation-modal') {\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `This completes the Installation process without capturing any HVAC images. Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n }\r\n }\r\n // toggleConfirmModal(){\r\n // this.emitConfirmationModal.emit();\r\n // }\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n }\r\n\r\n handleCompleteInstallation() {\r\n let comments = this.installationReportForm.value;\r\n\r\n let payload = [{\r\n jobId: this.installationReport.jobId,\r\n jobStateId: 4,\r\n jobType: \"Installation\",\r\n comments: this.installationReportForm.controls[\"comments\"].value,\r\n resolvedTime: this.resolvedTime,\r\n awsTechnicianId: this.awsTechnicianId\r\n }]\r\n console.log(payload);\r\n\r\n this.sharedService.updateInstallationReport(payload).subscribe(\r\n (response) => {\r\n console.log(response);\r\n const successMessage = \"Board installed successfully!\";\r\n\r\n // const message = response['statusInfo'][this.installationReport.jobId];\r\n // this.router.navigate(['/technicians']);\r\n // this.helperService.setSelectedTab('technicians');\r\n this.closeModal();\r\n this.helperService.showToaster(ToasterType.SUCCESS, successMessage);\r\n }, (error) => {\r\n // this.closeModal();\r\n console.log(error);\r\n const failureMessage = \"Failed to install board!\";\r\n // const message = this.helperService.handleAPIErrors(error);\r\n const message = error ? error.error.status : '';\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n\r\n }\r\n\r\n changeReport(value,value1)\r\n {\r\n if(value1 == 'cds')\r\n {\r\n this.isChecked=value;\r\n value==false?this.isCheckedES=value:'';\r\n console.log(this.isChecked,this.isCheckedES)\r\n }\r\n else if(value1=='es')\r\n {\r\n this.isCheckedES=value\r\n value==true?this.isChecked=value:'';\r\n console.log(this.isChecked,this.isCheckedES)\r\n }\r\n if(this.installationReport.CDSStatus !== this.isChecked || this.installationReport.esActivationSwitch!==this.isCheckedES)\r\n {\r\n this.isShowButton=true;\r\n }else{\r\n this.isShowButton=false;\r\n }\r\n //console.log(this.installationReport)\r\n //this.isChecked = value;\r\n }\r\n\r\n updateData()\r\n {\r\n // if(this.isChecked==false)\r\n // {\r\n // this.reportSubmitFormat.cdsStatus = \"Not_Installed\";\r\n // this.reportSubmitFormat.condensateSwitch=false\r\n // }\r\n // else if(this.isChecked==true)\r\n // {\r\n // this.reportSubmitFormat.cdsStatus = \"Installed\";\r\n // this.reportSubmitFormat.condensateSwitch=true\r\n // }\r\n\r\n // let date = moment.utc(new Date(this.reportSubmitFormat.reportedTime)).format('YYYY-MM-DD HH:mm:ss')\r\n // console.log(date);\r\n \r\n // this.reportSubmitFormat.reportedTime = date;\r\n this.submitData();\r\n }\r\n submitData()\r\n {\r\n this.isBtnLoading=true;\r\n let queryparams={\r\n jobId :this.reportSubmitFormat.jobId,\r\n cdsSwitch:this.isChecked,\r\n esActivationSwitch:this.isCheckedES\r\n\r\n };\r\n\r\n this.sharedService.updateInstallationCDS(queryparams).subscribe((res)=>{\r\n const successMessage = \"updated successfully!\";\r\n this.closeModal();\r\n this.refreshList();\r\n this.helperService.showToaster(ToasterType.SUCCESS, successMessage);\r\n this.isBtnLoading=false;\r\n }, (error) => {\r\n const failureMessage = \"Failed to update!\";\r\n // const message = this.helperService.handleAPIErrors(error);\r\n const message = error ? error.error.status : 'Failed to update!';\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\nthis.isBtnLoading=false;\r\n });\r\n }\r\n // handlePagination(payload) {\r\n // const type = payload.paginationType;\r\n // if (type === this.commonConstants.PAGINATION_NEXT) {\r\n // this.page += 1;\r\n // this.skip = (this.page * this.limit) - this.limit;\r\n // } else {\r\n // this.page -= 1;\r\n // this.skip = (this.page * this.limit) - this.limit;\r\n // }\r\n // this.handleCurrentInstallationReport();\r\n // }\r\n\r\n // handleCurrentInstallationReport() {\r\n // if (this.installationReportList && this.installationReportList.length) {\r\n // this.currentInstallationReport = this.installationReportList[(this.page - 1)] &&\r\n // this.installationReportList[(this.page - 1)];\r\n // }\r\n // }\r\n\r\n // handleImage(data) {\r\n // if (data == 'next') {\r\n // console.log(this.prevclick)\r\n // if (this.prevclick + 1 < this.imagess.length) {\r\n // this.prevclick = this.prevclick + 1;\r\n // this.imagess1.shift()\r\n // this.imagess1.push(this.imagess[this.prevclick])\r\n // }\r\n\r\n // }\r\n\r\n\r\n // if (data == 'prev') {\r\n // console.log(this.prevclick, this.imagess.length)\r\n // if (this.prevclick + 1 <= this.imagess.length) {\r\n // this.prevclick = this.prevclick - 1;\r\n // this.imagess1.pop()\r\n // this.imagess1.push(this.imagess[this.prevclick])\r\n // }\r\n\r\n\r\n // }\r\n\r\n // }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n@-webkit-keyframes dot-blink {\\n 0% {\\n background-color: #71ceca;\\n opacity: 0.2;\\n }\\n 50% {\\n background-color: #71ceca;\\n opacity: 1;\\n }\\n 100% {\\n background-color: #71ceca;\\n opacity: 0.2;\\n }\\n}\\n@keyframes dot-blink {\\n 0% {\\n background-color: #71ceca;\\n opacity: 0.2;\\n }\\n 50% {\\n background-color: #71ceca;\\n opacity: 1;\\n }\\n 100% {\\n background-color: #71ceca;\\n opacity: 0.2;\\n }\\n}\\n@-webkit-keyframes dot-blink_white {\\n 0% {\\n background-color: #ffffff;\\n opacity: 0.2;\\n }\\n 50% {\\n background-color: #ffffff;\\n opacity: 1;\\n }\\n 100% {\\n background-color: #ffffff;\\n opacity: 0.2;\\n }\\n}\\n@keyframes dot-blink_white {\\n 0% {\\n background-color: #ffffff;\\n opacity: 0.2;\\n }\\n 50% {\\n background-color: #ffffff;\\n opacity: 1;\\n }\\n 100% {\\n background-color: #ffffff;\\n opacity: 0.2;\\n }\\n}\\n.loader_wrapper {\\n position: absolute;\\n top: 4.5rem;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n width: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n /* Animation styles */\\n}\\n.loader_wrapper .spinner {\\n /* Spinner size and color */\\n width: 3rem;\\n height: 3rem;\\n /* Additional spinner styles */\\n -webkit-animation: spinner 400ms linear infinite;\\n animation: spinner 400ms linear infinite;\\n border-bottom-color: transparent;\\n border-right-color: transparent;\\n border-style: solid;\\n border-width: 2px;\\n border-radius: 50%;\\n box-sizing: border-box;\\n display: inline-block;\\n vertical-align: middle;\\n}\\n@-webkit-keyframes spinner {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n@keyframes spinner {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n.loader_wrapper .animation {\\n border-top-color: #71ceca;\\n border-left-color: #71ceca;\\n}\\n.loader_wrapper .animation_white {\\n border-top-color: #ffffff;\\n border-left-color: #ffffff;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbG9hZGluZy1zeW1ib2wvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXGxvYWRpbmctc3ltYm9sXFxsb2FkaW5nLXN5bWJvbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbG9hZGluZy1zeW1ib2wvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbG9hZGluZy1zeW1ib2wvbG9hZGluZy1zeW1ib2wuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREdBO0VBQ0k7SUFDSSx5QkNXa0I7SURWbEIsWUFBQTtFRUFOO0VGR0U7SUFDSSx5QkNNa0I7SURMbEIsVUFBQTtFRUROO0VGSUU7SUFDSSx5QkNDa0I7SURBbEIsWUFBQTtFRUZOO0FBQ0Y7QUZaQTtFQUNJO0lBQ0kseUJDV2tCO0lEVmxCLFlBQUE7RUVBTjtFRkdFO0lBQ0kseUJDTWtCO0lETGxCLFVBQUE7RUVETjtFRklFO0lBQ0kseUJDQ2tCO0lEQWxCLFlBQUE7RUVGTjtBQUNGO0FGS0E7RUFDSTtJQUNJLHlCQ1hjO0lEWWQsWUFBQTtFRUhOO0VGTUU7SUFDSSx5QkNoQmM7SURpQmQsVUFBQTtFRUpOO0VGT0U7SUFDSSx5QkNyQmM7SURzQmQsWUFBQTtFRUxOO0FBQ0Y7QUZUQTtFQUNJO0lBQ0kseUJDWGM7SURZZCxZQUFBO0VFSE47RUZNRTtJQUNJLHlCQ2hCYztJRGlCZCxVQUFBO0VFSk47RUZPRTtJQUNJLHlCQ3JCYztJRHNCZCxZQUFBO0VFTE47QUFDRjtBRlFBO0VBQ0ksa0JBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBc0JBLHFCQUFBO0FFM0JKO0FGT0k7RUFDSSwyQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBS0EsOEJBQUE7RUFDQSxnREFBQTtVQUFBLHdDQUFBO0VBQ0EsZ0NBQUE7RUFDQSwrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtBRVRSO0FGYUk7RUFDSTtJQUFLLCtCQUFBO1lBQUEsdUJBQUE7RUVWWDtFRldNO0lBQU8saUNBQUE7WUFBQSx5QkFBQTtFRVJiO0FBQ0Y7QUZLSTtFQUNJO0lBQUssK0JBQUE7WUFBQSx1QkFBQTtFRVZYO0VGV007SUFBTyxpQ0FBQTtZQUFBLHlCQUFBO0VFUmI7QUFDRjtBRlVJO0VBQ0kseUJDM0RrQjtFRDREbEIsMEJDNURrQjtBQ29EMUI7QUZXSTtFQUNJLHlCQ3JFYztFRHNFZCwwQkN0RWM7QUM2RHRCIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbG9hZGluZy1zeW1ib2wvbG9hZGluZy1zeW1ib2wuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG5cclxuQGtleWZyYW1lcyBkb3QtYmxpbmsge1xyXG4gICAgMCUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgICBvcGFjaXR5OiAuMjtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgICBvcGFjaXR5OiAuMjtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBkb3QtYmxpbmtfd2hpdGUge1xyXG4gICAgMCUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5O1xyXG4gICAgICAgIG9wYWNpdHk6IC4yO1xyXG4gICAgfVxyXG5cclxuICAgIDUwJSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAxMDAlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgICAgICBvcGFjaXR5OiAuMjtcclxuICAgIH1cclxufVxyXG5cclxuLmxvYWRlcl93cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNC41cmVtO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgLy8gcGFkZGluZy1ib3R0b206IDIuNXJlbTtcclxuICAgIC5zcGlubmVyIHtcclxuICAgICAgICAvKiBTcGlubmVyIHNpemUgYW5kIGNvbG9yICovXHJcbiAgICAgICAgd2lkdGg6IDNyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xyXG5cclxuICAgICAgICAvLyBib3JkZXItdG9wLWNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbiAgICAgICAgLy8gYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgXHJcbiAgICAgICAgLyogQWRkaXRpb25hbCBzcGlubmVyIHN0eWxlcyAqL1xyXG4gICAgICAgIGFuaW1hdGlvbjogc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgIFxyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC8qIEFuaW1hdGlvbiBzdHlsZXMgKi9cclxuICAgIEBrZXlmcmFtZXMgc3Bpbm5lciB7XHJcbiAgICAgICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFuaW1hdGlvbiB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5O1xyXG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbiAgICB9XHJcblxyXG4gICAgLmFuaW1hdGlvbl93aGl0ZSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yLXdoaXRlLXByaW1hcnk7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5O1xyXG4gICAgfVxyXG4gICAgICBcclxuXHJcbiAgICAvLyAubG9hZGVyLXN5bWJvbCB7XHJcbiAgICAvLyAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgLy8gICAgIHdpZHRoOiAxcmVtO1xyXG4gICAgLy8gICAgIGhlaWdodDogMXJlbTtcclxuICAgIC8vICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgLy8gICAgIC8vIGFuaW1hdGlvbjogZG90LWJsaW5rIGluZmluaXRlIGxpbmVhciAxcztcclxuICAgIC8vICAgICAvKipcclxuICAgIC8vICAgICAqIFRoaXMgbWFrZXMgc3VyZSB0aGF0IHRoZSBzdGFydGluZyBzdHlsZSAob3BhY2l0eTogLjIpXHJcbiAgICAvLyAgICAgKiBvZiB0aGUgYW5pbWF0aW9uIGlzIGFwcGxpZWQgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzLlxyXG4gICAgLy8gICAgICogT3RoZXJ3aXNlIHdlIHdvdWxkIHNlZSBhIHNob3J0IGZsYXNoIG9yIHdvdWxkIGhhdmVcclxuICAgIC8vICAgICAqIHRvIHNldCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIHRoZSBkb3RzIHRvIHRoZSBzYW1lXHJcbiAgICAvLyAgICAgKiBhcyB0aGUgYW5pbWF0aW9uLiBTYW1lIGFwcGxpZXMgZm9yIHRoZSBlbmRpbmcgc3R5bGVzLlxyXG4gICAgLy8gICAgICovXHJcbiAgICAvLyAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuICAgIC8vIH1cclxuXHJcbiAgICAvLyAuYW5pbWF0aW9uIHtcclxuICAgIC8vICAgICBhbmltYXRpb246IGRvdC1ibGluayBpbmZpbml0ZSBsaW5lYXIgMXM7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gLmFuaW1hdGlvbjpudGgtY2hpbGQoMikge1xyXG4gICAgLy8gICAgIC8qKlxyXG4gICAgLy8gICAgICogU3RhcnRzIHRoZSBhbmltYXRpb24gb2YgdGhlIHRoaXJkIGRvdFxyXG4gICAgLy8gICAgICogd2l0aCBhIGRlbGF5IG9mIC4ycywgb3RoZXJ3aXNlIGFsbCBkb3RzXHJcbiAgICAvLyAgICAgKiB3b3VsZCBhbmltYXRlIGF0IHRoZSBzYW1lIHRpbWVcclxuICAgIC8vICAgICAqL1xyXG4gICAgLy8gICAgIGFuaW1hdGlvbi1kZWxheTogLjJzO1xyXG4gICAgLy8gICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gLmFuaW1hdGlvbjpudGgtY2hpbGQoMykge1xyXG4gICAgLy8gICAgIC8qKlxyXG4gICAgLy8gICAgICogU3RhcnRzIHRoZSBhbmltYXRpb24gb2YgdGhlIHRoaXJkIGRvdFxyXG4gICAgLy8gICAgICogd2l0aCBhIGRlbGF5IG9mIC40cywgb3RoZXJ3aXNlIGFsbCBkb3RzXHJcbiAgICAvLyAgICAgKiB3b3VsZCBhbmltYXRlIGF0IHRoZSBzYW1lIHRpbWVcclxuICAgIC8vICAgICAqL1xyXG4gICAgLy8gICAgIGFuaW1hdGlvbi1kZWxheTogLjRzO1xyXG4gICAgLy8gICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gLmFuaW1hdGlvbl93aGl0ZSB7XHJcbiAgICAvLyAgICAgYW5pbWF0aW9uOiBkb3QtYmxpbmtfd2hpdGUgaW5maW5pdGUgbGluZWFyIDFzO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIC5hbmltYXRpb25fd2hpdGU6bnRoLWNoaWxkKDIpIHtcclxuICAgIC8vICAgICBhbmltYXRpb24tZGVsYXk6IC4ycztcclxuICAgIC8vICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIC5hbmltYXRpb25fd2hpdGU6bnRoLWNoaWxkKDMpIHtcclxuICAgIC8vICAgICBhbmltYXRpb24tZGVsYXk6IC40cztcclxuICAgIC8vICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xyXG4gICAgLy8gfVxyXG5cclxufVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5Aa2V5ZnJhbWVzIGRvdC1ibGluayB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzFjZWNhO1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxuICA1MCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3MWNlY2E7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzFjZWNhO1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxufVxuQGtleWZyYW1lcyBkb3QtYmxpbmtfd2hpdGUge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbiAgNTAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbn1cbi5sb2FkZXJfd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0LjVyZW07XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLyogQW5pbWF0aW9uIHN0eWxlcyAqL1xufVxuLmxvYWRlcl93cmFwcGVyIC5zcGlubmVyIHtcbiAgLyogU3Bpbm5lciBzaXplIGFuZCBjb2xvciAqL1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICAvKiBBZGRpdGlvbmFsIHNwaW5uZXIgc3R5bGVzICovXG4gIGFuaW1hdGlvbjogc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5Aa2V5ZnJhbWVzIHNwaW5uZXIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLmxvYWRlcl93cmFwcGVyIC5hbmltYXRpb24ge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNzFjZWNhO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzcxY2VjYTtcbn1cbi5sb2FkZXJfd3JhcHBlciAuYW5pbWF0aW9uX3doaXRlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmZmZmZmY7XG59Il19 */\"","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loading-symbol',\r\n templateUrl: './loading-symbol.component.html',\r\n styleUrls: ['./loading-symbol.component.scss']\r\n})\r\nexport class LoadingSymbolComponent implements OnInit {\r\n\r\n @Input() style: string;\r\n @Input() animation: string;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n // debugger;\r\n }\r\n\r\n}\r\n","module.exports = \"#mapContainer {\\n width: 100%;\\n height: 70vh;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup {\\n min-width: 260px !important;\\n min-width: 270px !important;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content {\\n padding: 0;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .default {\\n padding: 10px 15px;\\n border: 2px solid #71CECA;\\n min-height: 2rem;\\n max-height: 20rem;\\n overflow: auto;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .Major {\\n padding: 10px 10px 15px;\\n border: 2px solid #DD4B4B;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .Minor {\\n padding: 10px 10px 15px;\\n border: 2px solid #FF9C14;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .critical {\\n padding: 10px 10px 15px;\\n border: 2px solid #DD4B4B;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .fault {\\n padding: 10px 10px 15px;\\n border: 2px solid #FF9C14;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .Critical {\\n padding: 10px 10px 15px;\\n border: 2px solid #DD4B4B;\\n}\\n\\n:host ::ng-deep .mapboxgl-popup-content .Fault {\\n padding: 10px 10px 15px;\\n border: 2px solid #FF9C14;\\n}\\n\\n:host ::ng-deep .mapbox-improve-map {\\n display: none;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbWFwcy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcbWFwc1xcbWFwcy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbWFwcy9tYXBzLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksV0FBQTtFQUNBLFlBQUE7QUNDSjs7QURFQTtFQUVJLDJCQUFBO0VBQ0EsMkJBQUE7QUNBSjs7QURFQTtFQUVJLFVBQUE7QUNBSjs7QURHQTtFQUVJLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsY0FBQTtBQ0RKOztBRElBO0VBRUksdUJBQUE7RUFDQSx5QkFBQTtBQ0ZKOztBRElBO0VBRUksdUJBQUE7RUFDQSx5QkFBQTtBQ0ZKOztBREtBO0VBRUksdUJBQUE7RUFDQSx5QkFBQTtBQ0hKOztBREtBO0VBRUksdUJBQUE7RUFDQSx5QkFBQTtBQ0hKOztBREtBO0VBRUksdUJBQUE7RUFDQSx5QkFBQTtBQ0hKOztBREtBO0VBRUksdUJBQUE7RUFDQSx5QkFBQTtBQ0hKOztBREtBO0VBQXNDLGFBQUE7QUNEdEMiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9tYXBzL21hcHMuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIjbWFwQ29udGFpbmVye1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6NzB2aDtcclxufVxyXG5cclxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cFxyXG57XHJcbiAgICBtaW4td2lkdGg6IDI2MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtaW4td2lkdGg6IDI3MHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50XHJcbntcclxuICAgIHBhZGRpbmc6MDtcclxufVxyXG5cclxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50IC5kZWZhdWx0XHJcbntcclxuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgIGJvcmRlcjoycHggc29saWQgIzcxQ0VDQTtcclxuICAgIG1pbi1oZWlnaHQ6MnJlbTtcclxuICAgIG1heC1oZWlnaHQ6IDIwcmVtO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbjpob3N0IDo6bmctZGVlcCAubWFwYm94Z2wtcG9wdXAtY29udGVudCAuTWFqb3Jcclxue1xyXG4gICAgcGFkZGluZzogMTBweCAxMHB4IDE1cHg7XHJcbiAgICBib3JkZXI6MnB4IHNvbGlkICNERDRCNEI7XHJcbn1cclxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50IC5NaW5vclxyXG57XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweDtcclxuICAgIGJvcmRlcjoycHggc29saWQgI0ZGOUMxNDtcclxufVxyXG5cclxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50IC5jcml0aWNhbFxyXG57XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweDtcclxuICAgIGJvcmRlcjoycHggc29saWQgI0RENEI0QjtcclxufVxyXG46aG9zdCA6Om5nLWRlZXAgLm1hcGJveGdsLXBvcHVwLWNvbnRlbnQgLmZhdWx0XHJcbntcclxuICAgIHBhZGRpbmc6IDEwcHggMTBweCAxNXB4O1xyXG4gICAgYm9yZGVyOjJweCBzb2xpZCAjRkY5QzE0O1xyXG59XHJcbjpob3N0IDo6bmctZGVlcCAubWFwYm94Z2wtcG9wdXAtY29udGVudCAuQ3JpdGljYWxcclxue1xyXG4gICAgcGFkZGluZzogMTBweCAxMHB4IDE1cHg7XHJcbiAgICBib3JkZXI6MnB4IHNvbGlkICNERDRCNEI7XHJcbn1cclxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50IC5GYXVsdFxyXG57XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweDtcclxuICAgIGJvcmRlcjoycHggc29saWQgI0ZGOUMxNDtcclxufVxyXG46aG9zdCA6Om5nLWRlZXAgLm1hcGJveC1pbXByb3ZlLW1hcCB7IGRpc3BsYXk6IG5vbmU7IH0iLCIjbWFwQ29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNzB2aDtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cCB7XG4gIG1pbi13aWR0aDogMjYwcHggIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAyNzBweCAhaW1wb3J0YW50O1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLm1hcGJveGdsLXBvcHVwLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLm1hcGJveGdsLXBvcHVwLWNvbnRlbnQgLmRlZmF1bHQge1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM3MUNFQ0E7XG4gIG1pbi1oZWlnaHQ6IDJyZW07XG4gIG1heC1oZWlnaHQ6IDIwcmVtO1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50IC5NYWpvciB7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxNXB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjREQ0QjRCO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLm1hcGJveGdsLXBvcHVwLWNvbnRlbnQgLk1pbm9yIHtcbiAgcGFkZGluZzogMTBweCAxMHB4IDE1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRjlDMTQ7XG59XG5cbjpob3N0IDo6bmctZGVlcCAubWFwYm94Z2wtcG9wdXAtY29udGVudCAuY3JpdGljYWwge1xuICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweDtcbiAgYm9yZGVyOiAycHggc29saWQgI0RENEI0Qjtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3hnbC1wb3B1cC1jb250ZW50IC5mYXVsdCB7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAxNXB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkY5QzE0O1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLm1hcGJveGdsLXBvcHVwLWNvbnRlbnQgLkNyaXRpY2FsIHtcbiAgcGFkZGluZzogMTBweCAxMHB4IDE1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNERDRCNEI7XG59XG5cbjpob3N0IDo6bmctZGVlcCAubWFwYm94Z2wtcG9wdXAtY29udGVudCAuRmF1bHQge1xuICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweDtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGOUMxNDtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5tYXBib3gtaW1wcm92ZS1tYXAge1xuICBkaXNwbGF5OiBub25lO1xufSJdfQ== */\"","import { Component, Input, OnInit } from '@angular/core';\r\n//import { environment as mduEnvironment } from 'projects/mdu/src/environments/environment';\r\nimport * as mapboxgl from 'mapbox-gl';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from '../../constants/toaster.enum';\r\nimport { COMMON_CONSTANTS, MAP_STATUS } from '../../constants/commom.constant';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Alert, JobTechnicianInfo } from 'src/app/shared/models/alerts.model';\r\nimport { ROLE_CONSTANTS } from '../../constants/role.constant';\r\nimport * as momenttimezone from 'moment-timezone';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { environment as channelEnvironment } from 'projects/channel/src/environments/environment';\r\nimport { environment as mduEnvironment } from 'projects/mdu/src/environments/environment';\r\nimport { InstallationReportDetails, InstallationReportResponse } from '../../models/inventory.model';\r\nimport * as moment from 'moment';\r\n@Component({\r\n selector: 'app-maps',\r\n templateUrl: './maps.component.html',\r\n styleUrls: ['./maps.component.scss']\r\n})\r\nexport class MapsComponent implements OnInit {\r\n map: mapboxgl.Map;\r\n @Input() mapAddress: any; //getting the value from which page we are sending like alerts ,controls,properties\r\n @Input() checkedValue: any; //getting values based on checkbox clicked in alert and control pages\r\n geojson = {\r\n \"type\": \"FeatureCollection\",\r\n \"features\": []\r\n };\r\n markers: any = [];\r\n tempdata: any;\r\n point: any = \"points\"\r\n mouse: any;\r\n isShowAssignTechnicianModal: boolean;\r\n isShowReportViewModal: boolean;\r\n modalTitle: string;\r\n alertItem: Alert;\r\n preseasonViewId: any;\r\n installationReportDetails: InstallationReportDetails;\r\n isInstallationReportModal: boolean;\r\n portalName: string;\r\n roleConstants = ROLE_CONSTANTS;\r\n mapinfo: any;\r\n boardTypeInfo: any;\r\n isShowLoading: boolean;\r\n isShowPerformanceBoardDetailsModal: boolean;\r\n meliSerialNo: any;\r\n constructor(private sharedService: SharedService, public helperService: HelperService, private router: Router, private activatedRoute: ActivatedRoute) { }\r\n ngOnInit() {\r\n\r\n this.getAddressForMap();\r\n this.isShowLoading=true;\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n });\r\n if (this.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n mapboxgl.accessToken = contractorEnvironment.mapboxKey\r\n }\r\n else if (this.portalName === ROLE_CONSTANTS.CHANNEL)\r\n {\r\n mapboxgl.accessToken = channelEnvironment.mapboxKey\r\n }\r\n else if (this.portalName === ROLE_CONSTANTS.MDU)\r\n {\r\n mapboxgl.accessToken = mduEnvironment.mapboxKey\r\n }\r\n this.map = new mapboxgl.Map({\r\n container: 'mapContainer',\r\n style: 'mapbox://styles/mapbox/streets-v11',\r\n center: [-100.5635578, 36.2104063],\r\n zoom: 4\r\n });\r\n this.map.on('load', this.showMapdata);\r\n this.map.addControl(new mapboxgl.NavigationControl());\r\n }\r\n\r\n //on changing the checkbox value the function will be called and excuted for the related checkbox value sent from alert page or from controlpage\r\n ngOnChanges() {\r\n console.log(this.checkedValue)\r\n this.geojson.features = [];\r\n let a = [];\r\n let copy = JSON.parse(this.tempdata);\r\n this.mapinfo = copy;\r\n console.log(copy)\r\n if (this.checkedValue == MAP_STATUS.ALL) {\r\n if (this.portalName == ROLE_CONSTANTS.CONTRACTOR && this.mapAddress == \"alerts\") {\r\n this.mapinfo.features.forEach(data => {\r\n data.properties = {}\r\n data.properties.data = [];\r\n data.propertiesList.forEach(element => {\r\n data.properties.data.push(element);\r\n });\r\n });\r\n this.geojson.features = this.mapinfo.features\r\n }\r\n else {\r\n this.geojson.features = this.mapinfo ? this.mapinfo.features : [];\r\n }\r\n this.updateMap();\r\n }\r\n else if (this.checkedValue == MAP_STATUS.MINOR) {\r\n if (this.portalName == ROLE_CONSTANTS.CONTRACTOR && this.mapAddress == \"alerts\") {\r\n for (let i in this.mapinfo.features) {\r\n const allEqual = this.mapinfo.features[i].propertiesList.every(v => v.type === \"Major\")\r\n if (allEqual) {\r\n this.mapinfo.features[i].propertiesList = []\r\n }\r\n if (this.mapinfo.features[i].propertiesList.length == 0) {\r\n this.mapinfo.features[i] = []\r\n }\r\n }\r\n console.log(this.mapinfo)\r\n this.mapinfo.features.forEach(data => {\r\n data.properties = {}\r\n data.properties.data = [];\r\n data.alertTypeIcon = \"Minor\"\r\n data.propertiesList && data.propertiesList.forEach(element => {\r\n if (element.type == MAP_STATUS.MINOR || element.type == MAP_STATUS.FAULTS_DETECTED) {\r\n data.properties.data.push(element);\r\n }\r\n });\r\n });\r\n this.geojson.features = this.mapinfo.features\r\n }\r\n else if (this.portalName == ROLE_CONSTANTS.MDU && this.mapAddress == \"alerts\") {\r\n this.mapinfo.features.forEach(data => {\r\n if (data.properties.minorAlertCount != 0) {\r\n data.properties.type = \"Minor\";\r\n data.properties.count = data.properties.minorAlertCount\r\n data.properties.description = `${data.properties.minorAlertCount} Minor Alerts`\r\n a.push(data);\r\n }\r\n });\r\n this.geojson.features = a ? a : []\r\n }\r\n else {\r\n this.mapinfo.features.forEach(data => {\r\n if (data.properties.type == MAP_STATUS.MINOR || data.properties.type == MAP_STATUS.FAULTS_DETECTED) {\r\n a.push(data);\r\n }\r\n });\r\n this.geojson.features = a ? a : []\r\n }\r\n this.updateMap();\r\n }\r\n else if (this.checkedValue == MAP_STATUS.MAJOR) {\r\n if (this.portalName == ROLE_CONSTANTS.CONTRACTOR && this.mapAddress == \"alerts\") {\r\n var index = this.mapinfo.features.findIndex(function (o) {\r\n return o.alertTypeIcon === 'Minor';\r\n })\r\n if (index !== -1) this.mapinfo.features.splice(index, 1);\r\n //console.log(this.mapinfo)\r\n this.mapinfo.features.forEach(data => {\r\n data.properties = {}\r\n data.properties.data = [];\r\n if (data.alertTypeIcon != \"Minor\") {\r\n data.alertTypeIcon = \"Major\"\r\n data.propertiesList.forEach(element => {\r\n if (element.type == MAP_STATUS.MAJOR || element.type == MAP_STATUS.CRIICAL_FAULTS_DETECTED) {\r\n data.properties.data.push(element);\r\n }\r\n });\r\n }\r\n\r\n });\r\n this.geojson.features = this.mapinfo.features;\r\n //console.log(this.geojson.features)\r\n }\r\n else if (this.portalName == ROLE_CONSTANTS.MDU && this.mapAddress == \"alerts\") {\r\n this.mapinfo.features.forEach(data => {\r\n if (data.properties.majorAlertCount != 0) {\r\n data.properties.type = \"Major\";\r\n data.properties.count = data.properties.majorAlertCount\r\n data.properties.description = `${data.properties.majorAlertCount} Major Alerts`\r\n a.push(data);\r\n }\r\n });\r\n this.geojson.features = a ? a : []\r\n }\r\n else {\r\n this.mapinfo.features.forEach(data => {\r\n if (data.properties.type == MAP_STATUS.MAJOR || data.properties.type == MAP_STATUS.CRIICAL_FAULTS_DETECTED) {\r\n a.push(data);\r\n }\r\n });\r\n this.geojson.features = a ? a : [];\r\n }\r\n this.updateMap();\r\n\r\n }\r\n\r\n else {\r\n this.geojson.features = [];\r\n this.updateMap();\r\n\r\n }\r\n }\r\n\r\n //function to get the map data and assign it to the variable as geojson format for the map \r\n getAddressForMap() {\r\n let queryParams: any = {\r\n type: this.mapAddress,\r\n timeZone: momenttimezone.tz.guess()\r\n };\r\n this.sharedService.mapList(queryParams).subscribe(res => {\r\n //console.log(res);\r\n this.isShowLoading=false;\r\n this.tempdata = JSON.stringify(res.responseData);\r\n if (res.responseData.features.length > 0) {\r\n res.responseData.features.forEach(element => {\r\n if (this.portalName == ROLE_CONSTANTS.CONTRACTOR) {\r\n if ((this.mapAddress == \"alerts\" || this.mapAddress ==\"customers\") && element.geometry && element.alertTypeIcon != null) {\r\n element.propertiesList.forEach(edata => {\r\n });\r\n element.properties = {}\r\n element.properties.data = element.propertiesList\r\n }\r\n }\r\n });\r\n }\r\n this.geojson.features = res.responseData.features;\r\n this.showMapdata();\r\n }, (error) => {\r\n //this.showMap();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n });\r\n }\r\n\r\n //function to create a map and display a blank map without any data\r\n // showMap() {\r\n // mapboxgl.accessToken = 'pk.eyJ1IjoidmVtdWxha2lzaGFua3VtYXIiLCJhIjoiY2tmcGhkZDZqMGw5ZTJwbGgzdGF5cWM5dyJ9.83dEdQ52eWr30X0rRoUcsA';\r\n // this.map = new mapboxgl.Map({\r\n // container: 'mapContainer',\r\n // style: 'mapbox://styles/mapbox/streets-v11',\r\n // center: [-100.5635578, 36.2104063],\r\n // zoom: 4\r\n // });\r\n // this.map.on('load', this.showMapdata);\r\n // }\r\n\r\n //function to create a layers on the map and creating mouse hover an mouse leave effects on the mapicon on hover\r\n showMapdata() {\r\n this.map.addSource('points', {\r\n type: 'geojson',\r\n data: this.geojson,\r\n generateId: true\r\n })\r\n this.map.addLayer({\r\n 'id': \"points-azx\",\r\n 'type': 'circle',\r\n 'source': 'points',\r\n 'paint': {\r\n 'circle-stroke-color': '#000',\r\n 'circle-stroke-width': 1,\r\n 'circle-color': '#000'\r\n }\r\n });\r\n this.showIcon()\r\n this.mouse = new mapboxgl.Popup({\r\n closeButton: false,\r\n closeOnClick: false,\r\n offset: 25,\r\n className: 'popups'\r\n })\r\n this.map.on('mousemove', \"points-azx\", (e) => {\r\n //console.log(e)\r\n //let result = this.map.queryRenderedFeatures(e.point, { layers: [\"points\"] })\r\n //console.log(result, e.features)\r\n this.map.getCanvas().style.cursor = 'pointer';\r\n var coordinates = e.features[0].geometry.coordinates.slice();\r\n while (Math.abs(e.lngLat.lng - coordinates[0]) > 180) {\r\n coordinates[0] += e.lngLat.lng > coordinates[0] ? 360 : -360;\r\n }\r\n if (e.features && this.mapAddress !== 'installation') {\r\n const text = this.getPopupInfo(e.features)\r\n this.mouse.setLngLat(e.lngLat).setHTML(text).addTo(this.map)\r\n this.getClicked(e.features);\r\n }\r\n })\r\n }\r\n showIcon() {\r\n console.log(this.geojson)\r\n this.markers = []\r\n this.geojson.features.forEach(element => {\r\n if ((element.alertTypeIcon != null || element.properties.type != null) && element.geometry != null) {\r\n let icon = 'url(../../assets/images/mapicon_property.png)'\r\n if (element.alertTypeIcon == MAP_STATUS.CRIICAL_FAULTS_DETECTED || \r\n element.alertTypeIcon == MAP_STATUS.MAJOR || \r\n element.properties&&element.properties.type == MAP_STATUS.CRIICAL_FAULTS_DETECTED ||\r\n element.properties&&element.properties.type == MAP_STATUS.MAJOR) {\r\n console.log(element.properties)\r\n if(element.properties.data.some(value => value.meliType=='Cellular'))\r\n {\r\n if(element.properties.data[0].signalStrength=='BAD')\r\n {icon = 'url(../../assets/images/mapicon_cellular_critical_low.png)'\r\n }\r\n // else if(element.properties.data[0].signalStrength.includes('Excellent'))\r\n // {icon = 'url(../../assets/images/mapicon_cellular_critical_excellent.png)'\r\n // }\r\n else if(element.properties.data[0].signalStrength=='GOOD')\r\n {icon = 'url(../../assets/images/mapicon_cellular_critical_excellent.png)'\r\n }\r\n else\r\n {icon = 'url(../../assets/images/mapicon_cellular_critical_low.png)'}\r\n }\r\n else{\r\n icon = 'url(../../assets/images/mapicon_criticals.png)'\r\n }\r\n \r\n }\r\n else if (element.alertTypeIcon == MAP_STATUS.FAULTS_DETECTED || \r\n element.alertTypeIcon == MAP_STATUS.MINOR || \r\n element.properties&&element.properties.type == MAP_STATUS.FAULTS_DETECTED || \r\n element.properties&&element.properties.type == MAP_STATUS.MINOR) {\r\n if(element.properties.data.some(value => value.meliType=='Cellular'))\r\n {\r\n if(element.properties.data[0].signalStrength=='BAD')\r\n {icon = 'url(../../assets/images/mapicon_cellular_critical_low.png)'\r\n }\r\n // else if(element.properties.data[0].signalStrength.includes('Excellent'))\r\n // {icon = 'url(../../assets/images/mapicon_cellular_critical_excellent.png)'\r\n // }\r\n else if(element.properties.data[0].signalStrength=='GOOD')\r\n {icon = 'url(../../assets/images/mapicon_cellular_critical_excellent.png)'\r\n }\r\n else\r\n {icon = 'url(../../assets/images/mapicon_cellular_critical_low.png)'}\r\n }\r\n else{\r\n icon = 'url(../../assets/images/mapicon_fault.png)'\r\n }\r\n }\r\n else if(element.alertTypeIcon == MAP_STATUS.DEFAULT)\r\n {\r\n if(this.mapAddress=='customers')\r\n {\r\n if(element.propertiesList[0].meliType=='Cellular'&& element.propertiesList[0].signalStrength=='GOOD'){\r\n icon = 'url(../../assets/images/mapicon_excellent.png)'\r\n }\r\n // if(element.propertiesList[0].meliType=='Cellular'&& element.propertiesList[0].signalStrength.includes('Good')){\r\n // icon = 'url(../../assets/images/mapicon_good.png)'\r\n // }\r\n if(element.propertiesList[0].meliType=='Cellular'&& (element.propertiesList[0].signalStrength=='BAD'||element.propertiesList[0].signalStrength==''||element.propertiesList[0].signalStrength==null)){\r\n icon = 'url(../../assets/images/mapicon_weak.png)'\r\n }\r\n }\r\n }\r\n const el = document.createElement('div');\r\n el.className = 'marker';\r\n el.style.backgroundImage = icon;\r\n el.style.textAlign = 'center';\r\n if (this.mapAddress == 'installation' || this.mapAddress == 'properties' || (this.mapAddress == 'alerts' && this.portalName != this.roleConstants.CONTRACTOR)) {\r\n el.style.marginTop = \"10px\"\r\n el.innerHTML = \"

\" + element.properties.count + \"

\";\r\n }\r\n if ((this.mapAddress == \"alerts\" && this.portalName == ROLE_CONSTANTS.CONTRACTOR)|| this.mapAddress==\"customers\") {\r\n el.style.width = element.propertiesList[0].iconSize[0] + 'px';\r\n el.style.height = element.propertiesList[0].iconSize[1] + 'px';\r\n }\r\n else {\r\n el.style.width = element.properties.iconSize[0] + 'px';\r\n el.style.height = element.properties.iconSize[1] + 'px';\r\n }\r\n let marker = new mapboxgl.Marker(el)\r\n .setLngLat(element.geometry.coordinates)\r\n .addTo(this.map);\r\n this.markers.push(marker);\r\n }\r\n });\r\n }\r\n\r\n //updating the map based on the checkbox values\r\n updateMap() {\r\n console.log(this.markers);\r\n if (this.markers) {\r\n for (let i = this.markers.length - 1; i >= 0; i--) {\r\n this.markers[i].remove();\r\n this.mouse.remove();\r\n this.map.getSource(\"points\").setData(this.geojson);\r\n }\r\n }\r\n this.showIcon();\r\n }\r\n\r\n //getclick \r\n getClicked(data) {\r\n if (this.mapAddress == 'alerts') {\r\n if (this.portalName == ROLE_CONSTANTS.CONTRACTOR) {\r\n let clickdata = JSON.parse(data[0].properties.data);\r\n clickdata.forEach((info, index) => {\r\n document.getElementById('view-dashboard' + index).addEventListener('click', () => {\r\n this.navigateToRelaventPage(info.meliSerialNumber)\r\n })\r\n document.getElementById('view-dashboard' + index).addEventListener('click', () => {\r\n this.navigateToRelaventPage(info.meliSerialNumber)\r\n })\r\n document.getElementById('view-dashboards' + index).addEventListener('click', () => {\r\n //this.navigateToRelaventPage(info.meliSerialNumber)\r\n this.handleModalType('boardInfo', info.meliSerialNumber)\r\n })\r\n // document.getElementById('assign-tech' + index).addEventListener('click', () => {\r\n // this.handleModalType('assign-technician', info)\r\n // })\r\n })\r\n\r\n }\r\n }\r\n else if (this.mapAddress == 'reports') {\r\n document.getElementById('test-report').addEventListener('click', () => {\r\n this.handleModalType('test-report', data)\r\n })\r\n document.getElementById('view-dashboard').addEventListener('click', () => {\r\n this.navigateToRelaventPage(data[0].properties.meliSerialNumber)\r\n })\r\n document.getElementById('install-report').addEventListener('click', () => {\r\n this.handleModalType('installation-report', data)\r\n })\r\n }\r\n else if (this.mapAddress == 'customers') {\r\n let clickdata = JSON.parse(data[0].properties.data);\r\n clickdata.forEach((info, index) => {\r\n document.getElementById('view-dashboard'+index).addEventListener('click', () => {\r\n this.navigateToRelaventPage(info.meliSerialNumber)\r\n })\r\n // document.getElementById('un-assign').addEventListener('click', () => {\r\n // this.handleModalType('un-assign', info)\r\n // })\r\n })\r\n }\r\n\r\n\r\n }\r\n\r\n //get relavent popup information based on the pages\r\n getPopupInfo(result) {\r\n console.log(\"ds\", result)\r\n if (this.mapAddress == \"alerts\") {\r\n\r\n \r\n if (this.portalName == ROLE_CONSTANTS.CONTRACTOR) {\r\n \r\n let popupdata = JSON.parse(result[0].properties.data);\r\n console.log(popupdata);\r\n let data = `
`;\r\n popupdata.forEach((info, index) => {\r\n let icon='';\r\n if(info.meliType=='Cellular'&& info.signalStrength=='GOOD'){\r\n icon=\"\";\r\n }\r\n // if(info.meliType=='Cellular'&& info.signalStrength.includes('Good')){\r\n // icon = \"\";\r\n // }\r\n if(info.meliType=='Cellular'&& (info.signalStrength=='BAD'||info.signalStrength==''||info.signalStrength==null)){\r\n icon = \"\"\r\n }\r\n data += `

${info.description} \r\n ${info.displayTime}

\r\n

${info.meliSerialNumber}

\r\n
\r\n

Dashboard

\r\n ${icon}\r\n
`\r\n });\r\n data += \"
\"\r\n //console.log(data)\r\n //

Re/Asssign Techinician

`;\r\n\r\n return data;\r\n }\r\n else {\r\n return `

${result[0].properties.description}

\r\n

${result[0].properties.propertyName}

`\r\n }\r\n\r\n }\r\n else if (this.mapAddress == 'reports') {\r\n //

Test Report

-- add this to 487 line when preseason is enabled\r\n return `

${result[0].properties.description}

\r\n

${result[0].properties.meliSerialNumber}

\r\n
\r\n \r\n

Installation Report

`;\r\n }\r\n else if (this.mapAddress == 'customers') {\r\n \r\n let popupdata = JSON.parse(result[0].properties.data);\r\n let data=`
`;\r\n popupdata.forEach((info, index) => {\r\n let icon='';\r\n if(info.meliType=='Cellular'&& info.signalStrength=='GOOD'){\r\n icon=\"\";\r\n }\r\n // if(info.meliType=='Cellular'&& info.signalStrength.includes('Good')){\r\n // icon = \"\";\r\n // }\r\n if(info.meliType=='Cellular'&& (info.signalStrength=='BAD'||info.signalStrength==''|| info.signalStrength==null)){\r\n icon = \"\"\r\n }\r\n data += `

${info.description}

\r\n

Installed: ${info.installedTime || '-'}

\r\n

\r\n ${info.meliSerialNumber}\r\n ${icon}\r\n

`;\r\n });\r\n data +=\"
\"\r\n // if (result[0].properties.installedTime != null) {\r\n // data += `

Un-Asssign Board

`;\r\n // }\r\n\r\n return data;\r\n }\r\n\r\n else if (this.mapAddress == 'properties') {\r\n return `

${result[0].properties.propertyName}

`\r\n }\r\n\r\n else if (this.mapAddress == 'installation') {\r\n return '';\r\n }\r\n else {\r\n return `

${result[0].properties.description}

\r\n

${result[0].properties.propertyName}

`\r\n }\r\n }\r\n\r\n //redirect to relavent page on click of dashboard \r\n navigateToRelaventPage = (value) => {\r\n const meliSerialNo = value;\r\n localStorage.setItem('meliSerialNo', meliSerialNo);\r\n if (this.mapAddress == 'alerts') {\r\n this.router.navigate(['/meli/' + meliSerialNo], { queryParams: { fromPage: 'Alerts', isShowTabs: false } });\r\n }\r\n else {\r\n this.router.navigate(['/meli/' + meliSerialNo], { queryParams: { fromPage: 'Customers', isShowTabs: false } });\r\n }\r\n\r\n }\r\n\r\n //assign reassign fnctionality for alerts\r\n\r\n\r\n\r\n\r\n //togglefunctions for all\r\n toggleAssignTechnicianModal() {\r\n this.isShowAssignTechnicianModal = !this.isShowAssignTechnicianModal;\r\n }\r\n toggleReportViewModal() {\r\n this.isShowReportViewModal = !this.isShowReportViewModal;\r\n }\r\n toggleInstallationReportModal() {\r\n this.isInstallationReportModal = !this.isInstallationReportModal;\r\n }\r\n togglePerformanceBoardDetailsModal()\r\n {\r\n this.isShowPerformanceBoardDetailsModal=!this.isShowPerformanceBoardDetailsModal \r\n }\r\n\r\n //handle functions\r\n handleModalType(type: string, value?: any) {\r\n if (type === 'assign-technician') {\r\n this.modalTitle = 'Assign Technician';\r\n\r\n let jobinfo = new JobTechnicianInfo(value);\r\n jobinfo.jobId = value.jobId;\r\n let data = new Alert(value);\r\n data.meliSerialNo = value.meliSerialNumber;\r\n data.alertId = value.alertId;\r\n data.timeStamp = value.timestamp;\r\n data.jobTechnicianInfo = jobinfo\r\n this.alertItem = data;\r\n console.log(this.alertItem)\r\n this.toggleAssignTechnicianModal();\r\n }\r\n else if (type === 'test-report') {\r\n this.preseasonViewId = value[0].properties.indoorEquipmentId;\r\n console.log(this.preseasonViewId)\r\n this.toggleReportViewModal();\r\n }\r\n else if (type === 'installation-report') {\r\n this.modalTitle = 'Installation Report';\r\n this.getInstallationReport(value);\r\n }\r\n else if(type ==\"boardInfo\")\r\n {\r\n this.meliSerialNo = value;\r\n this.togglePerformanceBoardDetailsModal()\r\n }\r\n else if (type == 'un-assign') {\r\n this.unAssignBoard(value)\r\n }\r\n }\r\n\r\n\r\n //call installationreport api\r\n getInstallationReport(info) {\r\n let queryParams = { meliSerialNumber: info[0].properties.meliSerialNumber,timeZone: momenttimezone.tz.guess() }\r\n this.sharedService.getInstallationReport(queryParams).subscribe(\r\n (res:InstallationReportResponse) => {\r\n this.installationReportDetails = res.responseData;\r\n if(this.installationReportDetails.meliType)\r\n {\r\n this.boardTypeInfo = this.installationReportDetails.meliType\r\n }\r\n else{\r\n if(this.installationReportDetails.wifiModel)\r\n {\r\n this.installationReportDetails.wifiModel.ssid?this.boardTypeInfo = 'Wi-Fi':this.boardTypeInfo=\"Cellular\";\r\n }\r\n else{\r\n this.boardTypeInfo=\"Cellular\"\r\n }\r\n }\r\n console.log(this.installationReportDetails);\r\n this.toggleInstallationReportModal();\r\n }\r\n ), (error) => {\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n }\r\n\r\n unAssignBoard(info) {\r\n this.helperService.setUnassignBoard(info);\r\n }\r\n\r\n}\r\n\r\n\r\n //this.map.removeLayer(\"points\");\r\n //this.map.removeSource(\"points\");\r\n //\"points\" = Math.random().toString(5);\r\n // this.map.addControl(\r\n // new MapboxGeocoder({\r\n // accessToken: mapboxgl.accessToken,\r\n // mapboxgl: mapboxgl\r\n // })\r\n // );\r\n //img_p = require('src/assets/images/mapicon_property.png');\r\n // img_c = require('src/assets/images/mapicon_critical.png');\r\n //img_f = require('src/assets/images/mapicon_fault.png');\r\n\r\n\r\n //code for normal map\r\n // var mapboxClient = mapboxSdk({ accessToken: mapboxgl.accessToken });\r\n // this.geojson.forEach(element => {\r\n // mapboxClient.geocoding.forwardGeocode({\r\n // query: element,\r\n // autocomplete: false,\r\n // limit: 1\r\n // }).send().then((response) => {\r\n // if (\r\n // response &&\r\n // response.body &&\r\n // response.body.features &&\r\n // response.body.features.length\r\n // ) {\r\n\r\n // let feature = response.body.features[0];\r\n // new mapboxgl.Marker().setLngLat(feature.center).addTo(this.map);\r\n // }\r\n\r\n // });\r\n // });\r\n\r\n // type: 'FeatureCollection',\r\n // features: [\r\n // {\r\n\r\n // properties: {\r\n // description: '3 Critical Faults Detected',\r\n // iconSize: [32, 44],\r\n // count: '3',\r\n // type: 'critical'\r\n // },\r\n // geometry: {\r\n // type: 'Point',\r\n // coordinates: [-66.324462890625, -16.024695711685304]\r\n // }\r\n // },\r\n // {\r\n\r\n // properties: {\r\n // description: '39 Fault Detected',\r\n // iconSize: [32, 44],\r\n // count: '39',\r\n // type: 'fault'\r\n // },\r\n // geometry: {\r\n // type: 'Point',\r\n // coordinates: [-61.2158203125, -15.97189158092897]\r\n // }\r\n // },\r\n // {\r\n\r\n // properties: {\r\n // description: '22 Critical Faults Detected',\r\n // iconSize: [32, 44],\r\n // count: '22',\r\n // type: 'critical'\r\n // },\r\n // geometry: {\r\n // type: 'Point',\r\n // coordinates: [-63.29223632812499, -18.28151823530889]\r\n // }\r\n // }\r\n // ]\r\n // };\r\n\r\n // this.mapAddress = [];\r\n // this.propertiesList.forEach(element => {\r\n // let address = this.handleAddressSelection(element.addresses, this.commonConstants.ADDRESS_TYPE_SERVICE, 'address');\r\n // let info = address + ',' + element.addresses.city + ',' + element.addresses.state + ',' + element.addresses.zipcode\r\n // this.mapAddress.push(info)\r\n // });","module.exports = \"/* stylelint-disable */\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvbW9kYWwtaGVhZGVyL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxtb2RhbC1oZWFkZXJcXG1vZGFsLWhlYWRlci5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQSIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL21vZGFsLWhlYWRlci9tb2RhbC1oZWFkZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqLyJdfQ== */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-modal-header',\r\n templateUrl: './modal-header.component.html',\r\n styleUrls: ['./modal-header.component.scss']\r\n})\r\nexport class ModalHeaderComponent implements OnInit {\r\n\r\n @Input() modalHeaderName: string;\r\n @Input() isShowSubTitle = false;\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() rightHeaderName: string;\r\n @Input() isShowRightHeader = false;\r\n @Input() isShowCrossMark = true;\r\n @Input() isPendingReportModal:boolean;\r\n @Input() connectivity:boolean;\r\n \r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n \r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n \r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.overlay {\\n width: 100%;\\n height: 100%;\\n z-index: 1059;\\n top: 0;\\n left: 0;\\n position: fixed;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvb3ZlcmxheS9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcb3ZlcmxheVxcb3ZlcmxheS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvb3ZlcmxheS9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREVBO0VBSUksV0FBQTtFQUNBLFlBQUE7RUFFQSxhQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxlQUFBO0FFSEoiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG4ub3ZlcmxheSB7XHJcbiAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNjk4MDM5KTs7XHJcbiAgICAvLyBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2stcHJpbWFyeTtcclxuICAgIC8vIG9wYWNpdHk6IDAuNTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgLy8gei1pbmRleCBmb3IgbW9kYWwgMTA1MCBzbyBvdmVybGF5IHotaW5kZXggc2hvdWxkIG1vcmUgdGhhbiBtb2RhbCB6LWluZGV4IFxyXG4gICAgei1pbmRleDogMTA1OTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbn0iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4ub3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwNTk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xufSJdfQ== */\"","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-overlay',\r\n templateUrl: './overlay.component.html',\r\n styleUrls: ['./overlay.component.scss']\r\n})\r\nexport class OverlayComponent implements OnInit {\r\n\r\n @Output() emitClosePopOver = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n closePopOver() {\r\n this.emitClosePopOver.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.limit-dropdown_wrapper select {\\n width: 4rem;\\n border-radius: 3px;\\n background-color: #f4f4f4;\\n padding: 0.4rem;\\n font-size: 1.1rem;\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n /* Remove default arrow */\\n background-image: url('downFilled.svg');\\n /* Add custom arrow */\\n background-repeat: no-repeat;\\n background-position: right 0.5rem center;\\n background-size: 0.9rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1saW1pdC1kcm9wZG93bi9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xccGFnaW5hdGlvbi1saW1pdC1kcm9wZG93blxccGFnaW5hdGlvbi1saW1pdC1kcm9wZG93bi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1saW1pdC1kcm9wZG93bi9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9wYWdpbmF0aW9uLWxpbWl0LWRyb3Bkb3duL3BhZ2luYXRpb24tbGltaXQtZHJvcGRvd24uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRElJO0VBQ0ksV0FBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSx3QkFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFBd0IseUJBQUE7RUFDeEIsdUNBQUE7RUFBMEQscUJBQUE7RUFDMUQsNEJBQUE7RUFDQSx3Q0FBQTtFQUNBLHVCQUFBO0FFQ1IiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9wYWdpbmF0aW9uLWxpbWl0LWRyb3Bkb3duL3BhZ2luYXRpb24tbGltaXQtZHJvcGRvd24uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG4ubGltaXQtZHJvcGRvd25fd3JhcHBlciB7XHJcblxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgICB3aWR0aDogNHJlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuICAgICAgICBwYWRkaW5nOiAwLjRyZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XHJcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICBhcHBlYXJhbmNlOiBub25lOyAgICAgICAvKiBSZW1vdmUgZGVmYXVsdCBhcnJvdyAqL1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArICcvZG93bkZpbGxlZC5zdmcnKTsgICAvKiBBZGQgY3VzdG9tIGFycm93ICovXHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjVyZW0gY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMC45cmVtO1xyXG4gICAgICAgIC8vIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxufVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4ubGltaXQtZHJvcGRvd25fd3JhcHBlciBzZWxlY3Qge1xuICB3aWR0aDogNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICBwYWRkaW5nOiAwLjRyZW07XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogUmVtb3ZlIGRlZmF1bHQgYXJyb3cgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwic3JjL2Fzc2V0cy9pbWFnZXMvZG93bkZpbGxlZC5zdmdcIik7XG4gIC8qIEFkZCBjdXN0b20gYXJyb3cgKi9cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC41cmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjlyZW07XG59Il19 */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-pagination-limit-dropdown',\r\n templateUrl: './pagination-limit-dropdown.component.html',\r\n styleUrls: ['./pagination-limit-dropdown.component.scss']\r\n})\r\nexport class PaginationLimitDropdownComponent implements OnInit {\r\n\r\n @Input() limit: any;\r\n @Input() isLightBackground = false;\r\n @Output() emitHandleLimitOnChange = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handleLimitOnChange(selectedLimit: any) {\r\n this.emitHandleLimitOnChange.emit(selectedLimit);\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xccGFnaW5hdGlvblxccGFnaW5hdGlvbi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNCQUFBO0FDQUEsc0JBQUEiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG4vLyAucGFnaW5hdGlvbiB7XHJcblxyXG4vLyAgICAgLmxpZ2h0LWJhY2tncm91bmQge1xyXG4vLyAgICAgICAgIGZpbGw6ICM2YTZhNmE7XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgLmxpZ2h0LWJhY2tncm91bmRfZGlzYWJsZWQge1xyXG4vLyAgICAgICAgIGZpbGw6ICNiZmMwYzI7XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgLmRhcmstYmFja2dyb3VuZCB7XHJcbi8vICAgICAgICAgZmlsbDogI2JmYzBjMjtcclxuLy8gICAgIH1cclxuXHJcbi8vICAgICAuZGFyay1iYWNrZ3JvdW5kX2Rpc2FibGVkIHtcclxuLy8gICAgICAgICBmaWxsOiAjNmE2YTZhO1xyXG4vLyAgICAgfVxyXG4vLyB9XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\n\r\n@Component({\r\n selector: 'app-pagination',\r\n templateUrl: './pagination.component.html',\r\n styleUrls: ['./pagination.component.scss']\r\n})\r\nexport class PaginationComponent implements OnInit {\r\n\r\n @Input() skip: number;\r\n @Input() limit: number;\r\n @Input() page: number;\r\n @Input() totalCount: number;\r\n @Input() paginationFor: string;\r\n @Input() placeHolder: string;\r\n @Input() isLightBackground = false;\r\n @Output() emitHandlePagination = new EventEmitter();\r\n\r\n Math: any;\r\n commonConstants = COMMON_CONSTANTS;\r\n\r\n constructor() {\r\n this.Math = Math;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n handlePagination(flag: string) {\r\n const payload = {\r\n paginationType: flag,\r\n paginationFor: this.paginationFor\r\n };\r\n this.emitHandlePagination.emit(payload);\r\n }\r\n\r\n}\r\n","module.exports = \".performance-board-details-modal_wrapper .modal-content {\\n width: 800px;\\n}\\n.performance-board-details-modal_wrapper .modal-body {\\n padding: 4rem 7rem 2rem 7rem;\\n}\\n.performance-board-details-modal_wrapper .modal-body .label {\\n min-width: 20rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyZm9ybWFuY2UtYm9hcmQtZGV0YWlscy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xccGVyZm9ybWFuY2UtYm9hcmQtZGV0YWlsc1xccGVyZm9ybWFuY2UtYm9hcmQtZGV0YWlscy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyZm9ybWFuY2UtYm9hcmQtZGV0YWlscy9wZXJmb3JtYW5jZS1ib2FyZC1kZXRhaWxzLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVJO0VBQ0ksWUFBQTtBQ0RSO0FESUk7RUFDSSw0QkFBQTtBQ0ZSO0FESVE7RUFDSSxnQkFBQTtBQ0ZaIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyZm9ybWFuY2UtYm9hcmQtZGV0YWlscy9wZXJmb3JtYW5jZS1ib2FyZC1kZXRhaWxzLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnBlcmZvcm1hbmNlLWJvYXJkLWRldGFpbHMtbW9kYWxfd3JhcHBlciB7XHJcblxyXG4gICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgIHdpZHRoOiA4MDBweDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogNHJlbSA3cmVtIDJyZW0gN3JlbTtcclxuXHJcbiAgICAgICAgLmxhYmVsIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyMHJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnBlcmZvcm1hbmNlLWJvYXJkLWRldGFpbHMtbW9kYWxfd3JhcHBlciAubW9kYWwtY29udGVudCB7XG4gIHdpZHRoOiA4MDBweDtcbn1cbi5wZXJmb3JtYW5jZS1ib2FyZC1kZXRhaWxzLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiA0cmVtIDdyZW0gMnJlbSA3cmVtO1xufVxuLnBlcmZvcm1hbmNlLWJvYXJkLWRldGFpbHMtbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSAubGFiZWwge1xuICBtaW4td2lkdGg6IDIwcmVtO1xufSJdfQ== */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { BoardResponseDetails, Customer, InstallationReportResponse, Inventory, meliBoardResponse } from 'src/app/shared/models/inventory.model';\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { Address } from 'src/app/shared/models/common.model';\r\nimport { ROLE_CONSTANTS } from '../../constants/role.constant';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { FirmwareResponse, SensorCurrentStatusResponse } from '../../models/meli.model';\r\nimport * as moment from 'moment';\r\nimport * as momenttimezone from 'moment-timezone';\r\nimport { ToasterType } from '../../constants/toaster.enum';\r\n@Component({\r\n selector: 'app-performance-board-details',\r\n templateUrl: './performance-board-details.component.html',\r\n styleUrls: ['./performance-board-details.component.scss']\r\n})\r\nexport class PerformanceBoardDetailsComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n boardDetails: BoardResponseDetails;\r\n @Input() fromMeliPage = false;\r\n firmwareVersion:any;\r\n @Input() connectivityStatus:any;\r\n signalStrength:any;\r\n @Input() meliSerialNo:any;\r\n commonConstants = COMMON_CONSTANTS;\r\n roleConstants = ROLE_CONSTANTS\r\n portalName: any;\r\n loading: boolean;\r\n equipmentId: number;\r\n selectedInventoryDetails: BoardResponseDetails;\r\n customerDetails: Customer;\r\n constructor(\r\n private helperService: HelperService,\r\n private activatedRoute: ActivatedRoute,\r\n private sharedService: SharedService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n });\r\n this.getInventoryDetails();\r\n this.getFirmwareVersion();\r\n this.getSensorCurrentStatus();\r\n this.getSensorInstalltionStatus()\r\n\r\n console.log(this.boardDetails)\r\n }\r\n\r\n //get board details\r\n getInventoryDetails() {\r\n const queryParams = {\r\n meliSerialNumber: this.meliSerialNo,\r\n timeZone: momenttimezone.tz.guess()\r\n };\r\n this.loading = true;\r\n this.sharedService.getBoardInformation(queryParams).subscribe(\r\n (response: meliBoardResponse) => {\r\n if (response && response.responseData) {\r\n this.boardDetails = response.responseData;\r\n }\r\n this.loading = false;\r\n }, (error) => {\r\n this.loading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n //get firmaware information\r\n getFirmwareVersion() {\r\n const queryParams = { meliSerialNumber: this.meliSerialNo };\r\n this.sharedService.getFirmware(queryParams).subscribe(\r\n (response: FirmwareResponse) => {\r\n if (response && response.responseData &&\r\n response.responseData.firmwareVersion) {\r\n this.firmwareVersion = response.responseData.firmwareVersion;\r\n }\r\n });\r\n }\r\n\r\n //connectivity status\r\n getSensorCurrentStatus() {\r\n const queryParams = {\r\n meliSerialNumber: this.meliSerialNo\r\n };\r\n this.loading = true;\r\n this.sharedService.getSensorCurrentStatus(queryParams).subscribe(\r\n (response: SensorCurrentStatusResponse) => {\r\n this.loading = false;\r\n this.connectivityStatus = response.responseData[0].status;\r\n }, (error) => {\r\n this.loading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n )\r\n }\r\n\r\n getSensorInstalltionStatus() {\r\n this.loading = true;\r\n const queryParams = {\r\n meliSerialNumber: this.meliSerialNo,\r\n timeZone: momenttimezone.tz.guess()\r\n };\r\n this.sharedService.getSensorInstallationStatus(queryParams).subscribe(\r\n (response: InstallationReportResponse) => {\r\n this.signalStrength = response.responseData.signalStrength;\r\n this.loading = false;\r\n }, (error) => {\r\n this.loading = false;\r\n }\r\n );\r\n }\r\n\r\n handleAddressSelection(addressList: Address[], requiredType: string) {\r\n let address = this.helperService.handleAddressSelection(addressList, requiredType);\r\n if (address) {\r\n if (this.portalName == this.roleConstants.CHANNEL) {\r\n let fullAddress = address.city ? address.city + ', ' : null;\r\n fullAddress += address.zipcode ? address.zipcode : null;\r\n return fullAddress;\r\n }\r\n let fullAddress = this.helperService.handleRemoveAddressLinesCombinator(address && address.address) + ', ';\r\n fullAddress += address.city ? address.city + ', ' : null;\r\n fullAddress += address.stateCode ? address.stateCode + ' ' : null;\r\n fullAddress += address.zipcode ? address.zipcode : null;\r\n return fullAddress;\r\n }\r\n return null;\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n.iframe-map {\\n height: 40rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyc29uYWwtaW5mby1tb2RhbC9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xccGVyc29uYWwtaW5mby1tb2RhbFxccGVyc29uYWwtaW5mby1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyc29uYWwtaW5mby1tb2RhbC9wZXJzb25hbC1pbmZvLW1vZGFsLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNCQUFBO0FBQ0E7RUFDSSxhQUFBO0FDQ0oiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9wZXJzb25hbC1pbmZvLW1vZGFsL3BlcnNvbmFsLWluZm8tbW9kYWwuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4uaWZyYW1lLW1hcCB7XHJcbiAgICBoZWlnaHQ6IDQwcmVtO1xyXG59IiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5pZnJhbWUtbWFwIHtcbiAgaGVpZ2h0OiA0MHJlbTtcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter, ViewChild, ElementRef, AfterViewInit } from '@angular/core';\r\n// import { } from '@types/googlemaps';\r\n// import {google} from 'googlemaps';\r\nimport { Subject } from 'rxjs';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\n// Models\r\nimport { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\nimport { Customer } from 'src/app/shared/models/inventory.model';\r\nimport { COMMON_CONSTANTS } from '../../constants/commom.constant';\r\nimport { ROLE_CONSTANTS } from '../../constants/role.constant';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\ndeclare const google: any;\r\n@Component({\r\n selector: 'app-personal-info-modal',\r\n templateUrl: './personal-info-modal.component.html',\r\n styleUrls: ['./personal-info-modal.component.scss']\r\n})\r\nexport class PersonalInfoModalComponent implements OnInit, AfterViewInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalType: string;\r\n @Input() modalTitle: string;\r\n @Input() customerDetails: Customer;\r\n @ViewChild('mapContainer', { static: false }) gmapElement: ElementRef;\r\n map: any;\r\n address: Subject = new Subject();\r\n hasAddress = true;\r\n isMapLoading = false;\r\n\r\n currentLocation: any;\r\n parsedAddress: any;\r\n portalName: any;\r\n isdisableDoubleClick: boolean = false;\r\n\r\n constructor(\r\n private helperService: HelperService,\r\n private activatedRoute: ActivatedRoute,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n });\r\n let address: Address;\r\n this.setListenerForAddress();\r\n if (this.customerDetails && this.customerDetails.addresses\r\n && this.customerDetails.addresses.length) {\r\n address = this.handleAddressSelection(this.customerDetails.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_SERVICE);\r\n }\r\n\r\n if (address) {\r\n if (this.portalName != ROLE_CONSTANTS.CHANNEL) {\r\n this.parsedAddress = this.handleRemoveAddressLinesCombinator(address.address) + ', ' +\r\n address.city + ', ' + address.stateCode + ' ' + address.zipcode;\r\n }\r\n else {\r\n this.parsedAddress = address.city + ', ' + address.stateCode + ' ' + address.zipcode;\r\n this.isdisableDoubleClick = true;\r\n }\r\n\r\n }\r\n }\r\n\r\n setListenerForAddress() {\r\n return this.address.asObservable();\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.modalType === 'map') {\r\n this.generateAddress();\r\n }\r\n }\r\n\r\n handleRemoveAddressLinesCombinator(address: string) {\r\n return this.helperService.handleRemoveAddressLinesCombinator(address);\r\n }\r\n\r\n handleAddressSelection(addressList: Address[], requiredType: string) {\r\n return this.helperService.handleAddressSelection(addressList, requiredType);\r\n }\r\n\r\n\r\n generateAddress() {\r\n\r\n // if (this.customerDetails && this.customerDetails.length) {\r\n // addresses = this.handleRemoveAddressLinesCombinator(this.customerDetails[0].address) + ',' +\r\n // this.customerDetails[0].city + ',' + this.customerDetails[0].state + ',' +\r\n // this.customerDetails[0].zipcode;\r\n // }\r\n\r\n this.isMapLoading = true;\r\n const geocoder = new google.maps.Geocoder();\r\n geocoder.geocode({\r\n address: this.parsedAddress\r\n }, (results, status) => {\r\n this.isMapLoading = false;\r\n if (status === google.maps.GeocoderStatus.OK) {\r\n this.address.next(results);\r\n } else {\r\n this.hasAddress = false;\r\n }\r\n }, this);\r\n\r\n this.setListenerForAddress().subscribe(\r\n (response) => {\r\n this.isMapLoading = false;\r\n const myOptions = {\r\n zoom: 8,\r\n center: response[0].geometry.location,\r\n mapTypeId: google.maps.MapTypeId.ROADMAP,\r\n position: response[0].geometry.location,\r\n };\r\n\r\n const contentString = '
' +\r\n this.parsedAddress +\r\n '
';\r\n\r\n const infowindow = new google.maps.InfoWindow({\r\n content: contentString\r\n });\r\n\r\n const map = new google.maps.Map(this.gmapElement.nativeElement, myOptions);\r\n const marker = new google.maps.Marker({\r\n position: response[0].geometry.location,\r\n map\r\n });\r\n\r\n this.map = marker;\r\n infowindow.open(map, marker);\r\n marker.addListener('click', () => {\r\n infowindow.open(map, marker);\r\n });\r\n map.setOptions({ disableDoubleClickZoom: this.isdisableDoubleClick });\r\n }\r\n );\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.personal-info-types_dropdown {\\n width: 10rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyc29uYWwtaW5mby10eXBlcy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xccGVyc29uYWwtaW5mby10eXBlc1xccGVyc29uYWwtaW5mby10eXBlcy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyc29uYWwtaW5mby10eXBlcy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9wZXJzb25hbC1pbmZvLXR5cGVzL3BlcnNvbmFsLWluZm8tdHlwZXMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREdBO0VBQ0ksWUFBQTtBRUFKIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcGVyc29uYWwtaW5mby10eXBlcy9wZXJzb25hbC1pbmZvLXR5cGVzLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCAnc3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuXHJcbi5wZXJzb25hbC1pbmZvLXR5cGVzX2Ryb3Bkb3duIHtcclxuICAgIHdpZHRoOiAxMHJlbTtcclxufVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4ucGVyc29uYWwtaW5mby10eXBlc19kcm9wZG93biB7XG4gIHdpZHRoOiAxMHJlbTtcbn0iXX0= */\"","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-personal-info-types',\r\n templateUrl: './personal-info-types.component.html',\r\n styleUrls: ['./personal-info-types.component.scss']\r\n})\r\nexport class PersonalInfoTypesComponent implements OnInit {\r\n\r\n @Input() groupName: FormGroup;\r\n @Input() typeControlName: string;\r\n @Input() forEmail = false;\r\n @Input() forPhone = false;\r\n @Input() isDisabled = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n.modal-content .modal-body {\\n max-height: 80vh;\\n overflow: auto;\\n}\\n.modal-body {\\n min-height: 20vh;\\n display: flex;\\n flex-direction: column;\\n padding: 0rem;\\n}\\n.modal-footer {\\n display: block;\\n}\\n.preseasontest {\\n font-size: 14px;\\n}\\n.preseasontest .contractorlogo {\\n max-width: 50%;\\n max-height: 6rem;\\n}\\n.preseasontest .sideheader1 {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n margin-right: 0.3rem;\\n}\\n.preseasontest .preseason-test-title {\\n padding: 1rem 4rem;\\n color: #ffffff;\\n font-size: 20px;\\n}\\n.preseasontest .detail {\\n margin: 1rem 0;\\n word-break: break-all;\\n display: flex;\\n font-size: 14px;\\n}\\n.preseasontest .detail .detail-label {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n min-width: 7.5rem;\\n}\\n.preseasontest .detail .detail-label-right {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n}\\n.preseasontest .detail-list {\\n font-size: 16px;\\n}\\n.preseasontest .detail-list .sublist {\\n margin: 0rem 0;\\n word-break: break-all;\\n display: flex;\\n}\\n.preseasontest .detail-list .list {\\n margin: 0 0 0.7rem 0;\\n word-break: break-all;\\n display: flex;\\n font-size: 14px;\\n}\\n.preseasontest .detail-list .list-label {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n margin-right: 0.3rem;\\n}\\n.preseasontest .hrwidth {\\n width: 98%;\\n margin: auto;\\n}\\n.preseasontest .hrwidth hr {\\n background: #efefef;\\n color: #efefef;\\n border: 1px solid #efefef;\\n}\\n.preseasontest .sensors {\\n height: 4rem;\\n width: 4rem;\\n}\\n.preseasontest .icon {\\n height: 3rem;\\n width: 3rem;\\n}\\n.preseasontest .p51 {\\n padding: 0.5rem 1rem;\\n}\\n.preseasontest .background_light_grey {\\n background-color: #f8f8f8;\\n}\\n.preseasontest .p01 {\\n padding: 0rem 1rem;\\n}\\n.preseasontest .p06 {\\n padding: 0.6rem 1rem;\\n}\\n.preseasontest .heading {\\n font-size: 3rem;\\n font-weight: bold;\\n color: #0ebaf9;\\n font-variant: unicase;\\n}\\n.preseasontest .subheading {\\n font-size: 2.2rem;\\n color: #0ebaf9;\\n font: caption;\\n}\\n.preseasontest .sensor-active {\\n fill: #85c943;\\n}\\n.preseasontest .sensor-error {\\n fill: #dd4b4b;\\n}\\n.preseasontest .sensor-circle::before {\\n position: absolute;\\n content: \\\"\\\";\\n width: 1.5rem;\\n height: 1.5rem;\\n border-radius: 50%;\\n left: 0;\\n margin-left: -2rem;\\n}\\n.preseasontest .working::before {\\n background-color: #00b7a5;\\n}\\n.preseasontest .not-working::before {\\n background-color: #dd4b4b;\\n}\\n.preseasontest .not-installed::before {\\n border: 1.4px solid #707070;\\n}\\n.preseasontest .page-break {\\n -webkit-column-break-before: page;\\n -moz-column-break-before: page;\\n break-before: page;\\n}\\n.download-btn,\\n.mail-btn,\\n.view-all-reports-btn {\\n border: none;\\n outline: none;\\n border-radius: 0.3rem;\\n padding: 1rem;\\n text-transform: uppercase;\\n}\\n.font_14 {\\n font-size: 14px;\\n}\\n.font_12 {\\n font-size: 12px;\\n}\\n.font_16 {\\n font-size: 16px;\\n}\\n.font_18 {\\n font-size: 18px;\\n}\\n.font_20 {\\n font-size: 20px;\\n}\\n.mtb10 {\\n margin: 1rem 0;\\n}\\n.mr3 {\\n margin-right: 0.3rem;\\n}\\n.mb1 {\\n margin: 0rem 0rem 0.4rem 0rem;\\n}\\n.text-primary-red {\\n color: #dd4b4b;\\n}\\n.text-secondary-orange {\\n color: #ff9c14;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcHJlLXNlYXNvbi1yZXBvcnQvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXHByZS1zZWFzb24tcmVwb3J0XFxwcmUtc2Vhc29uLXJlcG9ydC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcHJlLXNlYXNvbi1yZXBvcnQvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3N0ZGluIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9wcmUtc2Vhc29uLXJlcG9ydC9wcmUtc2Vhc29uLXJlcG9ydC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQ0NBO0VBQ0UsZ0JBQUE7RUFFQSxjQUFBO0FDQUY7QURJQTtFQUNFLGdCQUFBO0VBRUEsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsYUFBQTtBQ0ZGO0FESUE7RUFDRSxjQUFBO0FDREY7QURHQTtFQUNFLGVBQUE7QUNBRjtBRENFO0VBRUUsY0FBQTtFQUNBLGdCQUFBO0FDQUo7QURFRTtFQUNFLGlDRHlFMkI7RUN4RTNCLGNEV21CO0VDVm5CLG9CQUFBO0FDQUo7QURFRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7QUNBSjtBREdFO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QUNESjtBREdJO0VBQ0UsaUNEd0R5QjtFQ3ZEekIsY0ROaUI7RUNPakIsaUJBQUE7QUNETjtBREdJO0VBQ0UsaUNEbUR5QjtFQ2xEekIsY0RYaUI7QUVVdkI7QURLRTtFQUNFLGVBQUE7QUNISjtBRElJO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtBQ0ZOO0FESUk7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QUNGTjtBRElJO0VBQ0UsaUNEZ0N5QjtFQy9CekIsY0Q5QmlCO0VDK0JqQixvQkFBQTtBQ0ZOO0FES0U7RUFDRSxVQUFBO0VBQ0EsWUFBQTtBQ0hKO0FESUk7RUFDRSxtQkFBQTtFQUNBLGNBQUE7RUFDQSx5QkFBQTtBQ0ZOO0FES0U7RUFDRSxZQUFBO0VBQ0EsV0FBQTtBQ0hKO0FES0U7RUFDRSxZQUFBO0VBQ0EsV0FBQTtBQ0hKO0FETUU7RUFDRSxvQkFBQTtBQ0pKO0FETUU7RUFDRSx5QkFBQTtBQ0pKO0FET0U7RUFDRSxrQkFBQTtBQ0xKO0FET0U7RUFDRSxvQkFBQTtBQ0xKO0FET0U7RUFDRSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxjRDFCUztFQzJCVCxxQkFBQTtBQ0xKO0FET0U7RUFDRSxpQkFBQTtFQUNBLGNEL0JTO0VDZ0NULGFBQUE7QUNMSjtBRFFFO0VBQ0UsYURwRndCO0FFOEU1QjtBRFNFO0VBQ0UsYURoRWdCO0FFeURwQjtBRFNFO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtBQ1BKO0FEU0U7RUFDRSx5QkR0RWlCO0FFK0RyQjtBRFVFO0VBQ0UseUJEaEZnQjtBRXdFcEI7QURVRTtFQUNFLDJCQUFBO0FDUko7QURVRTtFQUNFLGlDQUFBO0tBQUEsOEJBQUE7VUFBQSxrQkFBQTtBQ1JKO0FEWUE7OztFQUdFLFlBQUE7RUFDQSxhQUFBO0VBQ0EscUJBQUE7RUFDQSxhQUFBO0VBQ0EseUJBQUE7QUNURjtBRFlBO0VBQ0UsZUFBQTtBQ1RGO0FEV0E7RUFDRSxlQUFBO0FDUkY7QURVQTtFQUNFLGVBQUE7QUNQRjtBRFNBO0VBQ0UsZUFBQTtBQ05GO0FEUUE7RUFDRSxlQUFBO0FDTEY7QURPQTtFQUNFLGNBQUE7QUNKRjtBRE1BO0VBQ0Usb0JBQUE7QUNIRjtBREtBO0VBQ0UsNkJBQUE7QUNGRjtBRElBO0VBQ0UsY0Q3SGtCO0FFNEhwQjtBREdBO0VBQ0UsY0RoSHVCO0FFZ0h6QiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL3ByZS1zZWFzb24tcmVwb3J0L3ByZS1zZWFzb24tcmVwb3J0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIkBpbXBvcnQgXCJzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3NcIjtcclxuLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xyXG4gIG1heC1oZWlnaHQ6IDgwdmg7XHJcbiAgLy9taW4taGVpZ2h0OiAxMHZoO1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG4gIC8vIHBhZGRpbmc6IDJyZW07XHJcbn1cclxuXHJcbi5tb2RhbC1ib2R5IHtcclxuICBtaW4taGVpZ2h0OiAyMHZoO1xyXG4gIC8vIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIHBhZGRpbmc6IDByZW07XHJcbn1cclxuLm1vZGFsLWZvb3RlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLnByZXNlYXNvbnRlc3Qge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICAuY29udHJhY3RvcmxvZ28ge1xyXG4gICAgLy8gd2lkdGg6IDM1JTtcclxuICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgbWF4LWhlaWdodDogNnJlbTtcclxuICB9XHJcbiAgLnNpZGVoZWFkZXIxIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JheS1zZWNvbmRhcnk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDAuM3JlbTtcclxuICB9XHJcbiAgLnByZXNlYXNvbi10ZXN0LXRpdGxlIHtcclxuICAgIHBhZGRpbmc6IDFyZW0gNHJlbTtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLmRldGFpbCB7XHJcbiAgICBtYXJnaW46IDFyZW0gMDtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcblxyXG4gICAgLmRldGFpbC1sYWJlbCB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDtcclxuICAgICAgY29sb3I6ICRjb2xvci1ncmF5LXNlY29uZGFyeTtcclxuICAgICAgbWluLXdpZHRoOiA3LjVyZW07XHJcbiAgICB9XHJcbiAgICAuZGV0YWlsLWxhYmVsLXJpZ2h0IHtcclxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWdyYXktc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRldGFpbC1saXN0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIC5zdWJsaXN0IHtcclxuICAgICAgbWFyZ2luOiAwcmVtIDA7XHJcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgIC5saXN0IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMC43cmVtIDA7XHJcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG4gICAgLmxpc3QtbGFiZWwge1xyXG4gICAgICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItZ3JheS1zZWNvbmRhcnk7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAuaHJ3aWR0aCB7XHJcbiAgICB3aWR0aDogOTglO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgaHIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xyXG4gICAgICBjb2xvcjogI2VmZWZlZjtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcclxuICAgIH1cclxuICB9XHJcbiAgLnNlbnNvcnMge1xyXG4gICAgaGVpZ2h0OiA0cmVtO1xyXG4gICAgd2lkdGg6IDRyZW07XHJcbiAgfVxyXG4gIC5pY29uIHtcclxuICAgIGhlaWdodDogM3JlbTtcclxuICAgIHdpZHRoOiAzcmVtO1xyXG4gIH1cclxuXHJcbiAgLnA1MSB7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuICB9XHJcbiAgLmJhY2tncm91bmRfbGlnaHRfZ3JleSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xyXG4gIH1cclxuXHJcbiAgLnAwMSB7XHJcbiAgICBwYWRkaW5nOiAwcmVtIDFyZW07XHJcbiAgfVxyXG4gIC5wMDYge1xyXG4gICAgcGFkZGluZzogMC42cmVtIDFyZW07XHJcbiAgfVxyXG4gIC5oZWFkaW5nIHtcclxuICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgZm9udC12YXJpYW50OiB1bmljYXNlO1xyXG4gIH1cclxuICAuc3ViaGVhZGluZyB7XHJcbiAgICBmb250LXNpemU6IDIuMnJlbTtcclxuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgIGZvbnQ6IGNhcHRpb247XHJcbiAgfVxyXG5cclxuICAuc2Vuc29yLWFjdGl2ZSB7XHJcbiAgICBmaWxsOiAkY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTtcclxuICB9XHJcblxyXG4gIC5zZW5zb3ItZXJyb3Ige1xyXG4gICAgZmlsbDogJGNvbG9yLXJlZC1wcmltYXJ5O1xyXG4gIH1cclxuICAuc2Vuc29yLWNpcmNsZTo6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB3aWR0aDogMS41cmVtO1xyXG4gICAgaGVpZ2h0OiAxLjVyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0ycmVtO1xyXG4gIH1cclxuICAud29ya2luZzo6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLXRlcm5hcnk7XHJcbiAgfVxyXG5cclxuICAubm90LXdvcmtpbmc6OmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcmVkLXByaW1hcnk7XHJcbiAgfVxyXG4gIC5ub3QtaW5zdGFsbGVkOjpiZWZvcmUge1xyXG4gICAgYm9yZGVyOiAxLjRweCBzb2xpZCAjNzA3MDcwO1xyXG4gIH1cclxuICAucGFnZS1icmVhayB7XHJcbiAgICBicmVhay1iZWZvcmU6IHBhZ2U7XHJcbiAgfVxyXG59XHJcblxyXG4uZG93bmxvYWQtYnRuLFxyXG4ubWFpbC1idG4sXHJcbi52aWV3LWFsbC1yZXBvcnRzLWJ0biB7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xyXG4gIHBhZGRpbmc6IDFyZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLmZvbnRfMTQge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG4uZm9udF8xMiB7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG59XHJcbi5mb250XzE2IHtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbn1cclxuLmZvbnRfMTgge1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxufVxyXG4uZm9udF8yMCB7XHJcbiAgZm9udC1zaXplOiAyMHB4O1xyXG59XHJcbi5tdGIxMCB7XHJcbiAgbWFyZ2luOiAxcmVtIDA7XHJcbn1cclxuLm1yMyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwLjNyZW07XHJcbn1cclxuLm1iMSB7XHJcbiAgbWFyZ2luOiAwcmVtIDByZW0gMC40cmVtIDByZW07XHJcbn1cclxuLnRleHQtcHJpbWFyeS1yZWQge1xyXG4gIGNvbG9yOiAkY29sb3ItcmVkLXByaW1hcnk7XHJcbn1cclxuLnRleHQtc2Vjb25kYXJ5LW9yYW5nZSB7XHJcbiAgY29sb3I6ICRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5O1xyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4ubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gIG1heC1oZWlnaHQ6IDgwdmg7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4ubW9kYWwtYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDIwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDByZW07XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnByZXNlYXNvbnRlc3Qge1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ucHJlc2Vhc29udGVzdCAuY29udHJhY3RvcmxvZ28ge1xuICBtYXgtd2lkdGg6IDUwJTtcbiAgbWF4LWhlaWdodDogNnJlbTtcbn1cbi5wcmVzZWFzb250ZXN0IC5zaWRlaGVhZGVyMSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1YztcbiAgbWFyZ2luLXJpZ2h0OiAwLjNyZW07XG59XG4ucHJlc2Vhc29udGVzdCAucHJlc2Vhc29uLXRlc3QtdGl0bGUge1xuICBwYWRkaW5nOiAxcmVtIDRyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDIwcHg7XG59XG4ucHJlc2Vhc29udGVzdCAuZGV0YWlsIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLnByZXNlYXNvbnRlc3QgLmRldGFpbCAuZGV0YWlsLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XG4gIGNvbG9yOiAjNGQ0ZjVjO1xuICBtaW4td2lkdGg6IDcuNXJlbTtcbn1cbi5wcmVzZWFzb250ZXN0IC5kZXRhaWwgLmRldGFpbC1sYWJlbC1yaWdodCB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1Yztcbn1cbi5wcmVzZWFzb250ZXN0IC5kZXRhaWwtbGlzdCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cbi5wcmVzZWFzb250ZXN0IC5kZXRhaWwtbGlzdCAuc3VibGlzdCB7XG4gIG1hcmdpbjogMHJlbSAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ucHJlc2Vhc29udGVzdCAuZGV0YWlsLWxpc3QgLmxpc3Qge1xuICBtYXJnaW46IDAgMCAwLjdyZW0gMDtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ucHJlc2Vhc29udGVzdCAuZGV0YWlsLWxpc3QgLmxpc3QtbGFiZWwge1xuICBmb250LWZhbWlseTogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcbiAgY29sb3I6ICM0ZDRmNWM7XG4gIG1hcmdpbi1yaWdodDogMC4zcmVtO1xufVxuLnByZXNlYXNvbnRlc3QgLmhyd2lkdGgge1xuICB3aWR0aDogOTglO1xuICBtYXJnaW46IGF1dG87XG59XG4ucHJlc2Vhc29udGVzdCAuaHJ3aWR0aCBociB7XG4gIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gIGNvbG9yOiAjZWZlZmVmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuLnByZXNlYXNvbnRlc3QgLnNlbnNvcnMge1xuICBoZWlnaHQ6IDRyZW07XG4gIHdpZHRoOiA0cmVtO1xufVxuLnByZXNlYXNvbnRlc3QgLmljb24ge1xuICBoZWlnaHQ6IDNyZW07XG4gIHdpZHRoOiAzcmVtO1xufVxuLnByZXNlYXNvbnRlc3QgLnA1MSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xufVxuLnByZXNlYXNvbnRlc3QgLmJhY2tncm91bmRfbGlnaHRfZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG59XG4ucHJlc2Vhc29udGVzdCAucDAxIHtcbiAgcGFkZGluZzogMHJlbSAxcmVtO1xufVxuLnByZXNlYXNvbnRlc3QgLnAwNiB7XG4gIHBhZGRpbmc6IDAuNnJlbSAxcmVtO1xufVxuLnByZXNlYXNvbnRlc3QgLmhlYWRpbmcge1xuICBmb250LXNpemU6IDNyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzBlYmFmOTtcbiAgZm9udC12YXJpYW50OiB1bmljYXNlO1xufVxuLnByZXNlYXNvbnRlc3QgLnN1YmhlYWRpbmcge1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgY29sb3I6ICMwZWJhZjk7XG4gIGZvbnQ6IGNhcHRpb247XG59XG4ucHJlc2Vhc29udGVzdCAuc2Vuc29yLWFjdGl2ZSB7XG4gIGZpbGw6ICM4NWM5NDM7XG59XG4ucHJlc2Vhc29udGVzdCAuc2Vuc29yLWVycm9yIHtcbiAgZmlsbDogI2RkNGI0Yjtcbn1cbi5wcmVzZWFzb250ZXN0IC5zZW5zb3ItY2lyY2xlOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMnJlbTtcbn1cbi5wcmVzZWFzb250ZXN0IC53b3JraW5nOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiN2E1O1xufVxuLnByZXNlYXNvbnRlc3QgLm5vdC13b3JraW5nOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0YjRiO1xufVxuLnByZXNlYXNvbnRlc3QgLm5vdC1pbnN0YWxsZWQ6OmJlZm9yZSB7XG4gIGJvcmRlcjogMS40cHggc29saWQgIzcwNzA3MDtcbn1cbi5wcmVzZWFzb250ZXN0IC5wYWdlLWJyZWFrIHtcbiAgYnJlYWstYmVmb3JlOiBwYWdlO1xufVxuXG4uZG93bmxvYWQtYnRuLFxuLm1haWwtYnRuLFxuLnZpZXctYWxsLXJlcG9ydHMtYnRuIHtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mb250XzE0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uZm9udF8xMiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmZvbnRfMTYge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5mb250XzE4IHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4uZm9udF8yMCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLm10YjEwIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG59XG5cbi5tcjMge1xuICBtYXJnaW4tcmlnaHQ6IDAuM3JlbTtcbn1cblxuLm1iMSB7XG4gIG1hcmdpbjogMHJlbSAwcmVtIDAuNHJlbSAwcmVtO1xufVxuXG4udGV4dC1wcmltYXJ5LXJlZCB7XG4gIGNvbG9yOiAjZGQ0YjRiO1xufVxuXG4udGV4dC1zZWNvbmRhcnktb3JhbmdlIHtcbiAgY29sb3I6ICNmZjljMTQ7XG59Il19 */\"","import { Component, OnInit, Input, Output, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { ROLE_CONSTANTS } from '../../constants/role.constant';\r\nimport { PreSeasonSortingKeys, SortingTypes, AlertSortingKeys } from '../../constants/sorting-enum';\r\nimport { COMMON_CONSTANTS, PRESEASON_STATUS, REPORTSTATUS } from '../../constants/commom.constant';\r\nimport { HelperService } from '../../services/helper.service';\r\nimport { SharedService } from '../../services/shared.service';\r\nimport { ToasterType } from '../../constants/toaster.enum';\r\nimport { PreSeasonListResponse, PreSeasonDetail, PreSeasonResponse, emailResponse, PreSeasonResponseData } from '../../models/preseason.model';\r\n//import * as html2pdf from 'html2pdf.js';\r\nimport { SensorDetails } from '../../models/graph.model';\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\nimport * as moment from 'moment';\r\nimport { Address } from 'src/app/shared/models/common.model';\r\nimport { ContractorDetails } from '../../models/contractor.modal';\r\ndeclare const html2pdf: any;\r\n@Component({\r\n selector: 'app-pre-season-report',\r\n templateUrl: './pre-season-report.component.html',\r\n styleUrls: ['./pre-season-report.component.scss']\r\n})\r\nexport class PreSeasonReportComponent implements OnInit {\r\n @Input() meliSerialNumber: string;\r\n @Output() emitCloseModal = new EventEmitter();\r\n showReport: boolean = true;\r\n showReportList: boolean = false;\r\n\r\n //reportlist\r\n ListSkip = 0;\r\n ListLimit = 10;\r\n ListPage = 1;\r\n ListTotalCount = 0;\r\n ListTotalPage = 0;\r\n paginationFor: string;\r\n Lists: any;\r\n placeHolder: string;\r\n sortingConstants = PreSeasonSortingKeys;\r\n CurrentSortingField = PreSeasonSortingKeys.TEST_TIME;\r\n sortingTypes = SortingTypes;\r\n CurrentSortingType = SortingTypes.DESCENDING;\r\n isShowListsLoading: boolean = true;\r\n commonConstants = COMMON_CONSTANTS;\r\n isTestTimeColumnSort: boolean = false;\r\n isSeasonColumnSort: boolean = false;\r\n isTypeColumnSort: boolean = false;\r\n reportStatus = REPORTSTATUS;\r\n defaultFile = require('src/assets/images/defaultLogo.png');\r\n cclogo = require('src/assets/images/defaultLogo.png');\r\n erroricon = require('src/assets/images/report_failure.svg');\r\n minorerroricon = require('src/assets/images/report_minor_error.svg');\r\n successicon = require('src/assets/images/report_pass.svg');\r\n incompleteicon = require('src/assets/images/report_incomplete.svg');\r\n sensorworking = require('src/assets/images/report_sensor_working.svg');\r\n sensorfailure = require('src/assets/images/report_sensor_notworking.svg');\r\n cellularicon = require('src/assets/images/cellular_exc_icon.svg');\r\n wifiicon = require('src/assets/images/wi-fi_good_icon.svg');\r\n inactivesensoricon = require('src/assets/images/report_sensor_inactive.svg');\r\n emptysensoricon = require('src/assets/images/report_empty_sensor.svg');\r\n\r\n isShowLoading: boolean = false;\r\n isShowReportLoading: boolean = true;\r\n @ViewChild('htmlData', { static: false }) htmlData: ElementRef;\r\n reportData: PreSeasonDetail;\r\n chartDataInfo: any[] = [];\r\n chartHeight: any = '300px';\r\n InvestigatechartData: any;\r\n download: any;\r\n pdfConversion: any = '';\r\n reportId: any;\r\n isDat: boolean;\r\n isRat: boolean;\r\n isSlt: boolean;\r\n isSpd: boolean;\r\n isLlt: boolean;\r\n isCds:boolean;\r\n isReport: boolean = true;\r\n conversion: string = null;\r\n isLoading: boolean;\r\n reportLink: string;\r\n @Input() equipmentIds: number;\r\n\r\n isAllCheckboxChecked = true;\r\n isFanChecked = true;\r\n isCoolingChecked = true;\r\n isHeatingChecked = true;\r\n // commonConstants = COMMON_CONSTANTS;\r\n // isLoading = false;\r\n currentTemeperatureConvertion = COMMON_CONSTANTS.FAHRENHEIT;\r\n currentPressureConvertion = COMMON_CONSTANTS.WATER_COLUMN;\r\n TemperaturecheckedValue: boolean = false;\r\n PressureCheckedValue: boolean = false;\r\n contractorLogo: any;\r\npreseasonStatus = PRESEASON_STATUS;\r\n constructor(private sharedService: SharedService, private helperService: HelperService) { }\r\n\r\n ngOnInit() {\r\n this.getReportInformation('FromReport');\r\n this.getReportList();\r\n this.getContractorInformation();\r\n }\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n getContractorInformation() {\r\n this.sharedService.getContractorInformation((response: ContractorDetails, isError) => {\r\n if (!isError) {\r\n console.log(response)\r\n this.contractorLogo = response.logoUrls ? response.logoUrls : '';\r\n if (this.contractorLogo.length > 0) {\r\n this.cclogo = this.contractorLogo[0]\r\n }\r\n\r\n }\r\n });\r\n }\r\n showHideData(data) {\r\n if (data == 'report') {\r\n this.showReportList = false;\r\n this.showReport = true;\r\n }\r\n if (data == 'reportList') {\r\n this.showReport = false;\r\n this.showReportList = true;\r\n }\r\n\r\n }\r\n //reportlist code\r\n\r\n getReportList() {\r\n const queryParams: any = {\r\n size: this.ListLimit,\r\n page: this.ListPage - 1,\r\n equipmentId: this.equipmentIds\r\n //boardSerialNumber: this.meliSerialNumber,\r\n };\r\n if (this.CurrentSortingField) {\r\n queryParams.sortingField = this.CurrentSortingField;\r\n queryParams.sortingType = this.CurrentSortingType;\r\n }\r\n this.isShowLoading = true;\r\n this.sharedService.getPreSeasonList(queryParams).subscribe(\r\n (response: PreSeasonListResponse) => {\r\n this.Lists = response.ReportListResponse.preseasonsList;\r\n this.ListTotalCount = response.ReportListResponse.totalNumberOfElements;\r\n this.ListTotalPage = response.ReportListResponse.totalPage;\r\n this.isShowLoading = false;\r\n console.log(this.Lists)\r\n },\r\n (error) => {\r\n this.isShowLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n\r\n //dropdown select \r\n handleLimitOnChange(selectedLimit: any) {\r\n this.handleResetPagination();\r\n if (selectedLimit === 'all') {\r\n this.ListLimit = this.ListTotalCount;\r\n } else {\r\n this.ListLimit = selectedLimit;\r\n }\r\n this.getReportList();\r\n }\r\n\r\n handleResetPagination() {\r\n this.ListSkip = 0;\r\n this.ListPage = 1;\r\n\r\n }\r\n //handlepagination\r\n handlePagination(payload) {\r\n const type = payload.paginationType;\r\n if (type === this.commonConstants.PAGINATION_NEXT) {\r\n this.ListPage += 1;\r\n this.ListSkip =\r\n this.ListPage * this.ListLimit - this.ListLimit;\r\n } else if (type === this.commonConstants.PAGINATION_PREVIOUS) {\r\n this.ListPage -= 1;\r\n this.ListSkip =\r\n this.ListPage * this.ListLimit - this.ListLimit;\r\n } else if (type === this.commonConstants.PAGINATION_FIRST) {\r\n\r\n } else if (type === this.commonConstants.PAGINATION_LAST) {\r\n this.ListPage = this.ListTotalPage;\r\n this.ListSkip =\r\n this.ListPage * this.ListLimit - this.ListLimit;\r\n }\r\n this.getReportList();\r\n }\r\n\r\n handleSorting(key: string) {\r\n\r\n if (key === this.sortingConstants.TEST_TIME) {\r\n this.isTestTimeColumnSort = !this.isTestTimeColumnSort;\r\n this.CurrentSortingField = this.sortingConstants.TEST_TIME;\r\n this.CurrentSortingType = this.isTestTimeColumnSort\r\n ? this.sortingTypes.ASCENDING\r\n : this.sortingTypes.DESCENDING;\r\n }\r\n if (key === this.sortingConstants.SEASON) {\r\n this.isSeasonColumnSort = !this.isSeasonColumnSort;\r\n this.CurrentSortingField = this.sortingConstants.SEASON;\r\n this.CurrentSortingType = this.isSeasonColumnSort\r\n ? this.sortingTypes.ASCENDING\r\n : this.sortingTypes.DESCENDING;\r\n }\r\n if (key === this.sortingConstants.TYPE) {\r\n this.isTypeColumnSort = !this.isTypeColumnSort;\r\n this.CurrentSortingField = this.sortingConstants.TYPE;\r\n this.CurrentSortingType = this.isTypeColumnSort\r\n ? this.sortingTypes.ASCENDING\r\n : this.sortingTypes.DESCENDING;\r\n }\r\n\r\n this.getReportList();\r\n }\r\n\r\n downloadReport(id) {\r\n //console.log(\"Sdds\")\r\n // let downloadName = this.reportData && this.reportData.date ? 'pre-season-report_' + this.getDate(this.reportData.date) : 'pre-season-report' + '.pdf';\r\n // console.log(downloadName)\r\n // const options = {\r\n // margin: 2,\r\n // filename: downloadName,\r\n // image: { type: 'jpeg', },\r\n // html2canvas: { scale: 4 },\r\n // jsPDF: {\r\n // unit: 'mm', format: 'a3', orientation: 'portrait', putOnlyUsedFonts: true,\r\n // floatPrecision: 16,\r\n // fontStyle: 'SourceSansPro-Regular'\r\n // },\r\n // pageBreak: { mode: 'css', before: '.break-page' }\r\n\r\n // }\r\n // var element: Element = document.getElementById('htmlData');\r\n // this.download = new html2pdf().from(element).set(options).save()\r\n\r\n let queryParams = {\r\n filename: id\r\n }\r\n this.sharedService.downloadPreseasonReport(queryParams).subscribe(data => {\r\n console.log(data.size);\r\n // //const message = data;\r\n // //this.helperService.showToaster(ToasterType.SUCCESS, message)\r\n if (data.size == 120) {\r\n const message = 'No Reports Found';\r\n this.helperService.showToaster(ToasterType.ERROR, message)\r\n }\r\n else {\r\n const bloba = new Blob([data], { type: 'application/pdf' });\r\n const a: any = document.createElement('a');\r\n document.body.appendChild(a);\r\n a.style = 'display: none';\r\n const url = window.URL.createObjectURL(bloba);\r\n a.href = url;\r\n a.download = id;\r\n a.click();\r\n window.URL.revokeObjectURL(url);\r\n }\r\n\r\n // var mediaType = 'application/zip';\r\n // let blobaa: Blob = data.blob();\r\n // window['saveAs'](blob, 'sample.zip');\r\n\r\n }, (error) => {\r\n console.log(error);\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n )\r\n }\r\n\r\n // reportConversion() {\r\n\r\n // let downloadName = this.reportData && this.reportData.date ? 'pre-season-report_' + this.getDate(this.reportData.date) : 'pre-season-report' + '.pdf';\r\n // console.log(downloadName)\r\n // const options = {\r\n // margin: 2,\r\n // filename: downloadName,\r\n // image: { type: 'jpeg', },\r\n // html2canvas: { scale: 4 },\r\n // jsPDF: {\r\n // unit: 'mm', format: 'a3', orientation: 'portrait', putOnlyUsedFonts: true,\r\n // floatPrecision: 16,\r\n // fontStyle: 'SourceSansPro-Regular'\r\n // },\r\n // pageBreak: { mode: 'css', before: '.break-page' }\r\n // }\r\n // var element: Element = document.getElementById('htmlData');\r\n // html2pdf().from(element).set(options).toPdf().output('datauristring').then((pdfAsString) => {\r\n // // The PDF has been converted to a Data URI string and passed to this function.\r\n // // Use pdfAsString however you like (send as email, etc)! For instance:\r\n // //console.log(pdfAsString);\r\n // this.pdfConversion = pdfAsString;\r\n // this.sendMail();\r\n // });\r\n\r\n // //return this.pdfConversion;\r\n // }\r\n\r\n\r\n //get single report data\r\n getReportInformation(data, id?) {\r\n let queryParams: any = '';\r\n if (data == 'FromReport') {\r\n queryParams = {\r\n equipmentId: this.equipmentIds,\r\n //boardSerialNumber: this.meliSerialNumber,\r\n };\r\n this.getPreseasonreport(queryParams)\r\n }\r\n else if (data == 'FromList') {\r\n queryParams = {\r\n reportId: id,\r\n };\r\n this.getPreseasonreport(queryParams)\r\n }\r\n else if (data == 'FromDownload') {\r\n this.downloadReport(id);\r\n }\r\n else if (data == 'FromMail') {\r\n this.sendMail(id);\r\n }\r\n }\r\n\r\n getPreseasonreport(queryParams) {\r\n this.isShowReportLoading = true;\r\n this.sharedService.getPreSeasonReport(queryParams).subscribe(\r\n (response: PreSeasonResponse) => {\r\n console.log(response)\r\n this.reportData = response.Response.reportData;\r\n this.reportId = response.Response.reportId;\r\n this.reportLink = response.Response.reportLink;\r\n console.log(this.reportData);\r\n \r\n if (this.reportData.installedSensors && this.reportData.installedSensors.length != 0) {\r\n let sensor = this.reportData.installedSensors;\r\n sensor.includes('DAT') ? this.isDat = true : this.isDat = false;\r\n sensor.includes('RAT') ? this.isRat = true : this.isRat = false;\r\n sensor.includes('SLT') ? this.isSlt = true : this.isSlt = false;\r\n sensor.includes('LLT') ? this.isLlt = true : this.isLlt = false;\r\n sensor.includes('SDP') ? this.isSpd = true : this.isSpd = false;\r\n sensor.includes('CDS') ? this.isCds = true : this.isCds = false;\r\n //this.isCds = true;\r\n }\r\n if (this.reportData.alerts) {\r\n this.conversion = this.reportData.alerts[0].deltaUnit;\r\n if (this.reportData.alerts[0].deltaUnit == null) {\r\n this.conversion = \"null\"\r\n }\r\n this.handleAlertDiscoveryChartData(this.reportData.alerts);\r\n }\r\n if (this.reportData.investigateData) {\r\n this.handleAlertInvestigationChartData(this.reportData.investigateData)\r\n }\r\n this.showHideData('report')\r\n \r\n this.isShowReportLoading = false;\r\n },\r\n (error) => {\r\n this.isShowReportLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n handleAlertDiscoveryChartData(response) {\r\n this.chartDataInfo = [];\r\n response.forEach(alert => {\r\n let data = this.helperService.handleAlertDiscoveryChartData(\r\n alert,\r\n 'alert-discovery'\r\n );\r\n data['alertName'] = alert.alertDetails.alertName;\r\n data['alertDescription'] = alert.alertDetails.description;\r\n this.chartDataInfo.push(data);\r\n console.log(this.chartDataInfo)\r\n });\r\n\r\n //console.log(this.chartDataInfo);\r\n }\r\n\r\n handleAlertInvestigationChartData(response: SensorDetails) {\r\n let responseInfo = new SensorDetails(response);\r\n this.InvestigatechartData = this.helperService.handleChartData(\r\n responseInfo,\r\n 'advance-diagnostic'\r\n );\r\n this.handleParsePlotBandsData()\r\n }\r\n\r\n handleTemperatureConvertion(event?: any) {\r\n // this.TemperaturecheckedValue = event == undefined ? false : event.target.checked;\r\n this.TemperaturecheckedValue = !this.TemperaturecheckedValue;\r\n this.gethandleTemperatureConvertion();\r\n }\r\n gethandleTemperatureConvertion() {\r\n if (this.TemperaturecheckedValue) {\r\n this.currentTemeperatureConvertion = COMMON_CONSTANTS.CELCIUS;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.CELCIUS);\r\n this.InvestigatechartData.temperature = data.temperature.celciusData;\r\n // this.HVACCycleData = this.helperService.handleReturnHVACCycleData(COMMON_CONSTANTS.CELCIUS);\r\n this.handleParsePlotBandsData();\r\n } else {\r\n this.currentTemeperatureConvertion = COMMON_CONSTANTS.FAHRENHEIT;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.FAHRENHEIT);\r\n this.InvestigatechartData.temperature = data.temperature.fahrenheitData;\r\n // this.HVACCycleData = this.helperService.handleReturnHVACCycleData(COMMON_CONSTANTS.FAHRENHEIT);\r\n this.handleParsePlotBandsData();\r\n }\r\n }\r\n\r\n handlePressureConvertion(event?: any) {\r\n // this.PressureCheckedValue = event == undefined ? false : event.target.checked;\r\n this.PressureCheckedValue = !this.PressureCheckedValue;\r\n this.gethandlePressureConvertion();\r\n }\r\n gethandlePressureConvertion() {\r\n if (this.PressureCheckedValue) {\r\n this.currentPressureConvertion = COMMON_CONSTANTS.PASCAL;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.PASCAL);\r\n this.InvestigatechartData.diffStaticPressure = data.diffStaticPressure.pascalData;\r\n this.handleParsePlotBandsData();\r\n } else {\r\n this.currentPressureConvertion = COMMON_CONSTANTS.WATER_COLUMN;\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.WATER_COLUMN);\r\n this.InvestigatechartData.diffStaticPressure = data.diffStaticPressure.waterColumnData;\r\n this.handleParsePlotBandsData();\r\n }\r\n }\r\n\r\n handleParsePlotBandsData() {\r\n this.isLoading = true;\r\n // this.HVACCycleLoading = true;\r\n if (this.InvestigatechartData && this.InvestigatechartData.plotBandsData) {\r\n this.InvestigatechartData.plotBandsData = [];\r\n }\r\n const data = this.helperService.handleReturnChartData(COMMON_CONSTANTS.WATER_COLUMN);\r\n const chartData: any = data.thermostatReads;\r\n chartData.plotBandsData = [];\r\n if (this.isFanChecked && chartData.fanSpeed) {\r\n chartData.plotBandsData.push(\r\n ...chartData.fanSpeed\r\n );\r\n }\r\n if (this.isCoolingChecked && chartData.cooling) {\r\n chartData.plotBandsData.push(\r\n ...chartData.cooling\r\n );\r\n }\r\n if (this.isHeatingChecked) {\r\n if (chartData.heatPump) {\r\n chartData.plotBandsData.push(\r\n ...chartData.heatPump\r\n );\r\n }\r\n\r\n if (chartData.heatFurnace) {\r\n chartData.plotBandsData.push(\r\n ...chartData.heatFurnace\r\n );\r\n }\r\n // chartData.plotBandsData.push(\r\n // ...chartData.heatPump, ...chartData.heatFurnace\r\n // );\r\n }\r\n if (this.InvestigatechartData && this.InvestigatechartData.plotBandsData) {\r\n this.InvestigatechartData.plotBandsData = JSON.parse(JSON.stringify(chartData.plotBandsData));\r\n }\r\n setTimeout(() => {\r\n this.isLoading = false;\r\n // this.HVACCycleLoading = false;\r\n }, 400);\r\n }\r\n\r\n handleOnchangeCheckbox(flag: string) {\r\n if (flag === 'all') {\r\n this.isAllCheckboxChecked = !this.isAllCheckboxChecked;\r\n this.handleAllCheckboxValue(this.isAllCheckboxChecked);\r\n } else if (flag === 'fan') {\r\n this.isFanChecked = !this.isFanChecked;\r\n } else if (flag === 'cooling') {\r\n this.isCoolingChecked = !this.isCoolingChecked;\r\n } else if (flag === 'heating') {\r\n this.isHeatingChecked = !this.isHeatingChecked;\r\n }\r\n this.handleParsePlotBandsData();\r\n this.isAllCheckboxChecked = this.handleIsAllCheckboxChecked();\r\n }\r\n\r\n handleAllCheckboxValue(value: boolean) {\r\n this.isFanChecked = value;\r\n this.isCoolingChecked = value;\r\n this.isHeatingChecked = value;\r\n }\r\n\r\n handleIsAllCheckboxChecked() {\r\n if (this.isFanChecked && this.isCoolingChecked && this.isHeatingChecked) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n\r\n trackByReportId(index: number, item: any): string {\r\n return item ? item.reportId : '';\r\n }\r\n getDate(val) {\r\n let date = moment(val).format('MM-DD-YYYY');\r\n return date;\r\n }\r\n\r\n sendMail(reportId) {\r\n let emails = this.reportData.customerInfo.email;\r\n // debugger\r\n let queryParams = {\r\n boardSerialNumber: this.reportData.hvacInfo.performanceBoard,\r\n //scheduledTime: this.reportData.testTime,\r\n email: emails,\r\n \r\n consumer:this.reportData && this.reportData.customerInfo && this.reportData.customerInfo.customerFirstName?this.reportData.customerInfo.customerFirstName:this.reportData.customerInfo.customerName,\r\n data: this.pdfConversion,\r\n reportId: reportId,\r\n channelName:this.reportData.channelName,\r\n consumerId:this.reportData.customerInfo.customerId\r\n }\r\n this.isShowLoading = true;\r\n this.sharedService.sendAttachmentMail(queryParams).subscribe(\r\n (response: emailResponse) => {\r\n this.isShowLoading = false;\r\n this.helperService.showToaster(ToasterType.SUCCESS, \"Report has been Sent Successfully\");\r\n },\r\n (error) => {\r\n this.isShowLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n\r\n }\r\n\r\n handleAddressSelection(addressList: Address[], requiredType: string) {\r\n let a = [];\r\n a.push(addressList);\r\n let address = this.helperService.handleAddressSelection(a, requiredType);\r\n if (address) {\r\n let fullAddress = this.helperService.handleRemoveAddressLinesCombinator(address && address.address) + ', ';\r\n fullAddress += address.city ? address.city + ', ' : null;\r\n fullAddress += address.state ? address.state + ' ' : null;\r\n fullAddress += address.zipcode ? address.zipcode : null;\r\n return fullAddress;\r\n }\r\n return null;\r\n }\r\n\r\n handleTempConvertion(event) {\r\n // this.isLoading = true;\r\n // this.conversion = event;\r\n // this.getAlertDiscovery(this.details);\r\n }\r\n\r\n}\r\n","module.exports = \".readMore-modal_wrapper .modal-content {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcmVhZC1tb3JlLW1vZGFsL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxyZWFkLW1vcmUtbW9kYWxcXHJlYWQtbW9yZS1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvcmVhZC1tb3JlLW1vZGFsL3JlYWQtbW9yZS1tb2RhbC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFSTtFQUNJLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSx3Q0FBQTtVQUFBLGdDQUFBO0FDRFIiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9yZWFkLW1vcmUtbW9kYWwvcmVhZC1tb3JlLW1vZGFsLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnJlYWRNb3JlLW1vZGFsX3dyYXBwZXIge1xyXG5cclxuICAgIC5tb2RhbC1jb250ZW50IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgfVxyXG59IiwiLnJlYWRNb3JlLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufSJdfQ== */\"","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FormControl, Validators } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-read-more-modal',\r\n templateUrl: './read-more-modal.component.html',\r\n styleUrls: ['./read-more-modal.component.scss']\r\n})\r\nexport class ReadMoreModalComponent implements OnInit {\r\n\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() line1Content: any;\r\n @Input() readMoreData:any;\r\n time:string;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n console.log(this.readMoreData);\r\n this.time=this.readMoreData.readMore.updatedTime.toString();\r\n this.time=this.time.substring(2,10);\r\n console.log(this.time);\r\n }\r\nngOnChange(){\r\n console.log(this.readMoreData);\r\n}\r\n\r\n closeModal() {\r\n // if (this.isEmergencyShutoff) {\r\n // this.emitHandleButtonAction.emit();\r\n // } else {\r\n this.emitCloseModal.emit();\r\n // }\r\n }\r\n\r\n \r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.sharealert .graph-icon_orange {\\n fill: #ffc06a;\\n}\\n.sharealert .graph-icon_light-green-ternary {\\n fill: #85c943;\\n}\\n.sharealert .graph-icon_red-primary {\\n fill: #dd4b4b;\\n}\\n.sharealert .reception-button_wrapper {\\n display: flex;\\n align-items: center;\\n padding: 0.6rem 1rem;\\n font-size: 1.2rem;\\n font-weight: bold;\\n border-radius: 5rem;\\n cursor: pointer;\\n margin-right: 1rem;\\n}\\n.sharealert .reception-button_wrapper {\\n width: 14rem;\\n}\\n.sharealert .reception-button_wrapper .investigate-icon {\\n margin-right: 0.7rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc2hhcmUtYWxlcnQtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXHNoYXJlLWFsZXJ0LW1vZGFsXFxzaGFyZS1hbGVydC1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc2hhcmUtYWxlcnQtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc2hhcmUtYWxlcnQtbW9kYWwvc2hhcmUtYWxlcnQtbW9kYWwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREdFO0VBQ0UsYUN3Qm1CO0FDeEJ2QjtBRkdFO0VBQ0UsYUN3QndCO0FDekI1QjtBRklFO0VBQ0UsYUM0Q2dCO0FDOUNwQjtBRktFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7RUFFQSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7QUVKSjtBRk9FO0VBQ0UsWUFBQTtBRUxKO0FGT0k7RUFDRSxvQkFBQTtBRUxOIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc2hhcmUtYWxlcnQtbW9kYWwvc2hhcmUtYWxlcnQtbW9kYWwuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0IFwic3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzXCI7XHJcbi5zaGFyZWFsZXJ0IHtcclxuICAuZ3JhcGgtaWNvbl9vcmFuZ2Uge1xyXG4gICAgZmlsbDogJGNvbG9yLW9yYW5nZS1wcmltYXJ5O1xyXG4gIH1cclxuXHJcbiAgLmdyYXBoLWljb25fbGlnaHQtZ3JlZW4tdGVybmFyeSB7XHJcbiAgICBmaWxsOiAkY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTtcclxuICB9XHJcblxyXG4gIC5ncmFwaC1pY29uX3JlZC1wcmltYXJ5IHtcclxuICAgIGZpbGw6ICRjb2xvci1yZWQtcHJpbWFyeTtcclxuICB9XHJcblxyXG4gIC5yZWNlcHRpb24tYnV0dG9uX3dyYXBwZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjZyZW0gMXJlbTtcclxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cmVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG4gIH1cclxuXHJcbiAgLnJlY2VwdGlvbi1idXR0b25fd3JhcHBlciB7XHJcbiAgICB3aWR0aDogMTRyZW07XHJcblxyXG4gICAgLmludmVzdGlnYXRlLWljb24ge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuN3JlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLnNoYXJlYWxlcnQgLmdyYXBoLWljb25fb3JhbmdlIHtcbiAgZmlsbDogI2ZmYzA2YTtcbn1cbi5zaGFyZWFsZXJ0IC5ncmFwaC1pY29uX2xpZ2h0LWdyZWVuLXRlcm5hcnkge1xuICBmaWxsOiAjODVjOTQzO1xufVxuLnNoYXJlYWxlcnQgLmdyYXBoLWljb25fcmVkLXByaW1hcnkge1xuICBmaWxsOiAjZGQ0YjRiO1xufVxuLnNoYXJlYWxlcnQgLnJlY2VwdGlvbi1idXR0b25fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNnJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1yYWRpdXM6IDVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnNoYXJlYWxlcnQgLnJlY2VwdGlvbi1idXR0b25fd3JhcHBlciB7XG4gIHdpZHRoOiAxNHJlbTtcbn1cbi5zaGFyZWFsZXJ0IC5yZWNlcHRpb24tYnV0dG9uX3dyYXBwZXIgLmludmVzdGlnYXRlLWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDAuN3JlbTtcbn0iXX0= */\"","\r\nimport { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { SharedService } from '../../services/shared.service';\r\n// Constants\r\nimport {\r\n COMMON_CONSTANTS, DOWNLOAD_TEMPLATE_FILE_NAME,\r\n TECHNICIAN_STATUS,\r\n UPLOAD_TEMPLATE_NAMES,CUSTOMER_TYPES\r\n} from 'src/app/shared/constants/commom.constant';\r\nimport { Alert } from '../../models/alerts.model';\r\nimport { Technician, TechnicianInfo } from '../../models/technician.model';\r\nimport { SortingTypes } from '../../constants/sorting-enum';\r\nimport { SortingConstants } from '../../constants/sorting-enum';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { API_CONSTANTS } from '../../constants/api.constant';\r\nimport { ContractorDetails } from '../../models/contractor.modal';\r\n@Component({\r\n selector: 'app-share-alert-modal',\r\n templateUrl: './share-alert-modal.component.html',\r\n styleUrls: ['./share-alert-modal.component.scss']\r\n})\r\nexport class ShareAlertModalComponent implements OnInit {\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Output() emitInvestigate = new EventEmitter();\r\n @Input() details: Alert;\r\n technicianList: Technician[];\r\n commonConstants = COMMON_CONSTANTS;\r\n Math: any;\r\n skip = 0;\r\n limit = COMMON_CONSTANTS.INITIAL_TABLE_ROW_COUNT;\r\n page = 1;\r\n totalCount = 0;\r\n totalPage = 0;\r\n isShowLoading = false;\r\n sortingTypes = SortingTypes;\r\n sortingConstants = SortingConstants;\r\n lastSortedColumn = SortingConstants.TECHNICIAN;\r\n currentSortingField = SortingConstants.TECHNICIAN;\r\n currentSortingType = SortingTypes.ASCENDING;\r\n customerConstants= CUSTOMER_TYPES;\r\n noOfElementsInCurrentPage: number;\r\n isTechnicianNameColumnSort = false;\r\n isStatusColumnSort = false;\r\n tags=[];\r\n private BASE_URL;\r\n isshareBtnLoading:boolean=false;\r\n //shortLink:any='';\r\n removeLastOnBackspace:boolean=true;\r\n isCopy:boolean=false;\r\n isShowCrossMark:boolean=true;\r\n @ViewChild('tableWrapperHeight', { static: false }) tableWrapperHeight: ElementRef;\r\n contractorDetails: ContractorDetails;\r\n constructor(private sharedService: SharedService, private helperService: HelperService) { \r\n this.Math = Math;\r\n this.BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.COMMON_BASE);}\r\n\r\n ngOnInit() {\r\n console.log(this.details)\r\n this.helperService.customerPersonalInformation\r\n //this.getAlertLink();\r\n this.getContractorInformation();\r\n }\r\n ngAfterViewInit() {\r\n this.getTableHeight(true);\r\n }\r\n\r\n getTableHeight(isinitialCall?: boolean) {\r\n if (this.tableWrapperHeight && this.tableWrapperHeight.nativeElement &&\r\n this.tableWrapperHeight.nativeElement.offsetHeight) {\r\n this.limit = Math.round(this.tableWrapperHeight.nativeElement.offsetHeight / COMMON_CONSTANTS.TABLE_TR_HEIGHT) + 2;\r\n if (this.limit < 10) {\r\n this.limit = 10;\r\n }\r\n }\r\n\r\n if (isinitialCall) {\r\n this.getTechnicianList();\r\n }\r\n }\r\n\r\n getContractorInformation() {\r\n this.sharedService.getContractorInformation((response: ContractorDetails, isError) => {\r\n if (!isError) {\r\n console.log(response);\r\n this.contractorDetails = response;\r\n }\r\n });\r\n }\r\n getTechnicianList(isInfiniteScroll = false, query?: any) {\r\n if (!isInfiniteScroll) {\r\n this.handleResetPagination();\r\n }\r\n let queryParams: any = {\r\n page: this.page - 1,\r\n size: this.limit\r\n };\r\n if (query) {\r\n queryParams = query;\r\n }\r\n if (this.currentSortingField && !query) {\r\n queryParams.sortingField = this.currentSortingField;\r\n queryParams.sortingType = this.currentSortingType;\r\n }\r\n this.isShowLoading = true;\r\n\r\n this.sharedService.getTechnicianList(queryParams).subscribe(\r\n (response: TechnicianInfo) => {\r\n if (response) {\r\n if (this.technicianList && this.technicianList.length && isInfiniteScroll) {\r\n this.technicianList.push(...response.responseData.technicianList);\r\n } else {\r\n this.technicianList = response.responseData && response.responseData.technicianList;\r\n }\r\n this.totalCount = response.responseData && response.responseData.totalNumberOfElements;\r\n this.noOfElementsInCurrentPage = response.responseData && response.responseData.noOfElementsInCurrentPage;\r\n this.totalPage = response.responseData.totalPage;\r\n }\r\n this.isShowLoading = false;\r\n this.handleTechniciankey()\r\n }, (error) => {\r\n this.isShowLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n\r\n }\r\n\r\n \r\n handleSorting(key: string) {\r\n this.getTableHeight();\r\n if (key === this.sortingConstants.TECHNICIAN) {\r\n this.resetPreviousSorting(key);\r\n // this.customerList = this.helperService.handleDateSorting(this.customerList, this.isInstalledOnColumnSort, key);\r\n this.currentSortingField = this.sortingConstants.TECHNICIAN;\r\n this.currentSortingType = this.isTechnicianNameColumnSort ? this.sortingTypes.ASCENDING : this.sortingTypes.DESCENDING;\r\n this.isTechnicianNameColumnSort = !this.isTechnicianNameColumnSort;\r\n this.getTechnicianList();\r\n this.lastSortedColumn = this.sortingConstants.TECHNICIAN;\r\n }\r\n }\r\n\r\n resetPreviousSorting(currentSort) {\r\n if (this.lastSortedColumn !== currentSort) {\r\n if (this.lastSortedColumn === this.sortingConstants.TECHNICIAN) {\r\n this.isTechnicianNameColumnSort = false;\r\n }\r\n else if (this.lastSortedColumn === this.sortingConstants.STATUS) {\r\n this.isStatusColumnSort = false;\r\n }\r\n }\r\n }\r\n \r\n handleResetPagination() {\r\n this.skip = 0;\r\n this.page = 1;\r\n }\r\n\r\n handleTechniciankey()\r\n {\r\n this.technicianList.map((data)=>{\r\n data['click']=false\r\n })\r\n }\r\n\r\n onTagsChanged(event)\r\n {\r\n console.log(this.tags)\r\n }\r\n\r\n\r\n handleAddRecipient(type:string,data:Technician)\r\n \r\n {\r\n //console.log(type,data);\r\n if(type==\"add\")\r\n {\r\nthis.tags.push({'displayValue':data.technicianName, 'value':data.email[0].email})\r\n let obj = this.technicianList.find((o, i) => {\r\n if (o.technicianId === data.technicianId) {\r\n this.technicianList[i]['click']=true;\r\n return true; // stop searching\r\n }\r\n console.log(this.technicianList)\r\n});\r\n }\r\n else if(type==\"remove\")\r\n {\r\n //console.log(this.tags)\r\n const index = this.tags.findIndex((v:any)=>v.value === data.email[0].email);\r\n //console.log(index)\r\n this.tags.splice(index,1)\r\nlet obj = this.technicianList.find((o, i) => {\r\n if (o.technicianId === data.technicianId) {\r\n this.technicianList[i]['click']=false;\r\n return true; // stop searching\r\n }\r\n //console.log(this.technicianList)\r\n});\r\n }\r\n \r\n\r\n }\r\n\r\n //function to get the alert short link\r\n // getAlertLink()\r\n // {\r\n // const url = this.BASE_URL + API_CONSTANTS.ALERT_DISCOVERY_READ+'?pb='+this.details.meliSerialNo+'&alerttime='+this.details.timeStamp+'&alertcode='+this.details.alertCode+'&conversionUnit=null';\r\n // let obj={longUrl:url}\r\n // this.sharedService.getAlertShortLink(obj).subscribe((res)=>{\r\n // this.shortLink = res.responseData.shortLink\r\n // })\r\n // }\r\n\r\n //copy to clipboard\r\n copy(val:any) {\r\n\r\n let selBox = document.createElement('textarea');\r\n selBox.style.position = 'fixed';\r\n selBox.style.left = '0';\r\n selBox.style.top = '0';\r\n selBox.style.opacity = '0';\r\n selBox.value = val!=''?val:' ';\r\n document.body.appendChild(selBox);\r\n selBox.focus();\r\n selBox.select();\r\n document.execCommand('copy');\r\n document.body.removeChild(selBox);\r\n console.log(selBox,this.details.shortLink);\r\n// this.isCopy=true;\r\n// setTimeout(()=>{\r\n// this.isCopy=false\r\n// },5000)\r\n\r\n this.helperService.showToaster(ToasterType.SUCCESS, 'Alert Link Copied');\r\n}\r\n\r\n//shareAlert\r\nshareAlert()\r\n{\r\n if(this.tags.length==0)\r\n {\r\n this.helperService.showToaster(ToasterType.ERROR, 'Please add atleast one recipient');\r\n }\r\n else\r\n {\r\n \r\n let emails=[];\r\n this.tags.map((data=>{\r\n data.value?emails.push(data.value):emails.push(data.displayValue);\r\n }))\r\n \r\n if(this.validateEmails(emails))\r\n {\r\n let obj={\r\n meliSerialNo:this.details.meliSerialNo,\r\n shortLink:this.details.shortLink,\r\n alarmOccureTime:this.details.timeStamp,\r\n severity:this.details.priority,\r\n contractorId:this.contractorDetails.contractorId,\r\n contractorName:this.contractorDetails.contractorName,\r\n consumerId:this.details.consumer.customerId,\r\n consumerName:this.details.consumer.customerName,\r\n companyName:this.details.consumer.companyName,\r\n consumerType:this.details.consumer.consumerType,\r\n consumerAddressFirstLine:this.details.consumer.addresses[0].address,\r\n consumerAddressCity:this.details.consumer.addresses[0].city,\r\n channelName:this.contractorDetails.channelName,\r\n userEmails: [],\r\n }\r\n obj.userEmails=emails;\r\n this.isshareBtnLoading=true;\r\n this.sharedService.shareAlerttoEmails(obj).subscribe((res)=>{\r\n if(res)\r\n {\r\n const message = res.statusInfo;\r\n this.helperService.showToaster(ToasterType.SUCCESS, message);\r\n this.closeModal()\r\n }\r\n },(error)=>{\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }) \r\n }\r\n else\r\n {\r\n this.helperService.showToaster(ToasterType.ERROR, 'Please enter valid recipient email');\r\n }\r\n}\r\n\r\n}\r\nvalidateEmails(emails)\r\n{\r\nlet val = emails.every(d=>{\r\n if(!d.match('[A-Za-z0-9._%-]+@[A-Za-z0-9._%-]+\\\\.[a-z]{2,3}'))\r\n {\r\n return false;\r\n }\r\n return true;\r\n })\r\n return val;\r\n}\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc3BsaW5lLWNoYXJ0L0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxzcGxpbmUtY2hhcnRcXHNwbGluZS1jaGFydC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQSIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL3NwbGluZS1jaGFydC9zcGxpbmUtY2hhcnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyAubGVnZW5kX3dyYXBwZXIge1xyXG4vLyAgICAgZGlzcGxheTogZmxleDtcclxuLy8gICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4vLyAgICAgLnJlcGxhY2VtZW50LWNoZWNrYm94IHtcclxuLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuLy8gICAgICAgICBib3JkZXI6IG5vbmU7XHJcbi8vICAgICB9XHJcbi8vIH1cclxuIl19 */\"","/* tslint:disable */\r\nimport { Component, OnInit, Input, ViewChild, ElementRef, OnChanges, SimpleChanges, Output, EventEmitter, HostListener } from '@angular/core';\r\nimport * as Highcharts from 'highcharts';\r\nimport AnnotationModule from 'highcharts/modules/annotations';\r\nimport Breaks from 'highcharts/modules/broken-axis';\r\nimport highchartsTreemap from 'highcharts/modules/treemap';\r\nimport * as Highstock from 'highcharts/highstock';\r\nimport exporting from 'highcharts/modules/exporting';\r\nimport { SITE_NAME_CONSTANTS } from 'src/app/shared/constants/site-name.constant';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nhighchartsTreemap(Highcharts);\r\nAnnotationModule(Highcharts);\r\nBreaks(Highcharts);\r\nexporting(Highcharts);\r\nAnnotationModule(Highstock);\r\nexporting(Highstock);\r\n\r\n// import HC_exportData from 'highcharts/modules/export-data';\r\n// HC_exportData(Highcharts);\r\n// import HC_exporting from 'highcharts/modules/exporting';\r\n// HC_exporting(Highcharts);\r\n// HC_exporting(Highstock);\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS, CHART_TYPES, CHART_UNIT_TYPES } from 'src/app/shared/constants/commom.constant';\r\n// import { first } from 'rxjs/operators';\r\n\r\n\r\n@Component({\r\n selector: 'app-spline-chart',\r\n templateUrl: './spline-chart.component.html',\r\n styleUrls: ['./spline-chart.component.scss']\r\n})\r\nexport class SplineChartComponent implements OnInit, OnChanges {\r\n\r\n @Input() chartData: any;\r\n @Input() plotBandsData: any;\r\n @Input() isFahrenheit: boolean;\r\n @Input() isPascal: boolean;\r\n @Input() heightStyle: any;\r\n @Input() chartType = CHART_TYPES.SPLINE;\r\n @Input() HVACCycleData: any;\r\n @Output() emitHandleTemperatureConvertion = new EventEmitter();\r\n @Output() emitHandleOnClickNextBtn = new EventEmitter();\r\n @Output() emitHandleOnClickPrevBtn = new EventEmitter();\r\n @Output() emitHandlePressureConvertion = new EventEmitter();\r\n @Input() fromReport: boolean = false;\r\n @ViewChild('chartContainer', { static: true }) chartContainer: ElementRef;\r\n\r\n options: any;\r\n siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n primaryColor: string = '';\r\n display:boolean=true;\r\n constructor(\r\n private helperService: HelperService,\r\n ) { \r\n window.innerWidth<=480?this.display=false:this.display=true;\r\n }\r\n\r\n// @HostListener('window:resize', ['$event'])\r\n// onResize(event) {\r\n// if(window.innerWidth<=480)\r\n// {\r\n// this.display=false;\r\n// console.log(this.display, window.innerWidth,\"width dddddddddddddddddddd\")\r\n// //alert(window.innerWidth)\r\n// } \r\n// else\r\n// {\r\n// this.display=true\r\n// }\r\n// }\r\n ngOnInit() {\r\n // debugger\r\n \r\n if(this.siteName === SITE_NAME_CONSTANTS.KEENHOME_CHANNEL ||\r\n this.siteName === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR ||\r\n this.siteName === SITE_NAME_CONSTANTS.KEENHOME_MDU){\r\n this.primaryColor = '#00B7A5';\r\n } else {\r\n this.primaryColor = '#71CECA';\r\n }\r\n\r\n if (this.chartType === CHART_TYPES.SPLINE) {\r\n this.drawSplineChart(this.chartData);\r\n // console.log(\"chart\",this.chartData);\r\n } else if (this.chartType === CHART_TYPES.COLUMN) {\r\n this.drawColumnChart(this.HVACCycleData);\r\n } else if (this.chartType === CHART_TYPES.LINE) {\r\n this.drawLineChart(this.HVACCycleData);\r\n }\r\n\r\n \r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n // debugger\r\n // if (changes && changes.chartType && !changes.chartType.firstChange) {\r\n // if (this.chartType === CHART_TYPES.SPLINE) {\r\n // this.drawSplineChart(this.chartData);\r\n // } else if (this.chartType === CHART_TYPES.COLUMN) {\r\n // this.drawColumnChart(this.HVACCycleData);\r\n // } else if (this.chartType === CHART_TYPES.LINE) {\r\n // this.drawLineChart(this.HVACCycleData);\r\n // }\r\n // }\r\n }\r\n\r\n handleExportingButtons(obj) {\r\n const self = this;\r\n return {\r\n // buttonSpacing: 100,\r\n enabled: true,\r\n buttons: [{\r\n text: obj && obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE ? 'Fahrenheit' : '“ WC',\r\n // buttonSpacing: 100,\r\n // selected: true,\r\n // disableHover: true,\r\n onclick: function () {\r\n // alert('clicked');\r\n if (obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE) {\r\n self.emitHandleTemperatureConvertion.emit();\r\n } else {\r\n self.emitHandlePressureConvertion.emit();\r\n }\r\n },\r\n x: -70,\r\n // style: {\r\n // fontSize: '100px',\r\n // width: '18px'\r\n // },\r\n theme: {\r\n class: \"myButton highcharts-button highcharts-button-normal\",\r\n /* 'stroke-width': 1, */\r\n /* stroke: 'silver', */\r\n fill: obj && ((obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE && obj.unit === COMMON_CONSTANTS.FAHRENHEIT) ||\r\n (obj.chartUnitType === CHART_UNIT_TYPES.PRESSURE && obj.unit === COMMON_CONSTANTS.WATER_COLUMN)) ? this.primaryColor : 'none',\r\n // fill: 'none',\r\n r: 18,\r\n padding: 10,\r\n // width: 60,\r\n // textAlign: 'center',\r\n /* fontSize: '200px', */\r\n style: {\r\n // fontSize: '10px',\r\n color: obj && ((obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE && obj.unit === COMMON_CONSTANTS.FAHRENHEIT) ||\r\n (obj.chartUnitType === CHART_UNIT_TYPES.PRESSURE && obj.unit === COMMON_CONSTANTS.WATER_COLUMN)) ? '#242A34' : '#FFFFFF',\r\n fontSize: '1.3rem',\r\n // fontFamily: 'cursive',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontWeight: 700,\r\n //display:,\r\n // textAlign: 'center',\r\n\r\n // states: {\r\n // hover: {\r\n // // fill: '#a4edba'\r\n // fill: '#71CECA',\r\n // color: '#FFFFFF',\r\n // },\r\n // }\r\n },\r\n /* height: 40, */\r\n /* width: 48,\r\n symbolSize: 24, */\r\n /* textAlign: 'center', */\r\n states: {\r\n hover: {\r\n fill: this.primaryColor\r\n } \r\n \r\n // hover: {\r\n // // fill: '#a4edba'\r\n // fill: '#71CECA',\r\n // // color: '#FFFFFF',\r\n // },\r\n // select: {\r\n // // stroke: '#039',\r\n // // fill: '#a4edba'\r\n // fill: '#71CECA',\r\n // }\r\n }\r\n }\r\n },\r\n {\r\n text: obj && obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE ? 'Celsius' : 'Pascal',\r\n onclick: function () {\r\n // alert('clicked');\r\n if (obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE) {\r\n self.emitHandleTemperatureConvertion.emit();\r\n } else {\r\n self.emitHandlePressureConvertion.emit();\r\n }\r\n },\r\n x: -10,\r\n theme: {\r\n /* 'stroke-width': 1, */\r\n /* stroke: 'silver', */\r\n /* fill: '#71CECA', */\r\n padding: 10,\r\n // x: -10,\r\n r: 18,\r\n // margin: '100px',\r\n // color: false ? '#242A34' : '#FFFFFF',\r\n // fill: 'none',\r\n fill: obj && ((obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE && obj.unit === COMMON_CONSTANTS.CELCIUS) ||\r\n (obj.chartUnitType === CHART_UNIT_TYPES.PRESSURE && obj.unit === COMMON_CONSTANTS.PASCAL)) ? this.primaryColor : 'none',\r\n style: {\r\n // color: '#FFFFFF',\r\n color: obj && ((obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE && obj.unit === COMMON_CONSTANTS.CELCIUS) ||\r\n (obj.chartUnitType === CHART_UNIT_TYPES.PRESSURE && obj.unit === COMMON_CONSTANTS.PASCAL)) ? '#242A34' : '#FFFFFF',\r\n // fontSize: '10px',\r\n fontSize: '1.3rem',\r\n // margin: '100px',\r\n // fontFamily: 'cursive',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontWeight: 700,\r\n textAlign: 'center'\r\n },\r\n states: {\r\n hover: {\r\n fill: this.primaryColor\r\n } \r\n // select: {\r\n // stroke: '#039',\r\n // fill: '#a4edba'\r\n // }\r\n }\r\n }\r\n },\r\n // obj && obj.chartName === 'investigate-overview' ? {\r\n // // text: `
\r\n // // \r\n // //
`,\r\n // text: '>',\r\n // // useHTML: true,\r\n // // contextButton: {\r\n // // useHTML: true,\r\n // // symbol: '>',\r\n // // // symbol: 'url(../../../../assets/images/arrow_right.svg)'\r\n // // },\r\n // onclick: function () {\r\n // // alert('clicked');\r\n // // if (obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE) {\r\n // self.emitHandleOnClickNextBtn.emit();\r\n // // } else {\r\n // // self.emitHandlePressureConvertion.emit();\r\n // // }\r\n // },\r\n // x: 0,\r\n // y: 90,\r\n // // navigation: {\r\n // // buttonOptions: {\r\n // // verticalAlign: 'middle',\r\n // // y: -20,\r\n // // align: 'center'\r\n // // }\r\n // // },\r\n // theme: {\r\n // /* 'stroke-width': 1, */\r\n // /* stroke: 'silver', */\r\n // /* fill: '#71CECA', */\r\n // // width: 20,\r\n // // height: 20,\r\n // height: 25,\r\n // padding: 10,\r\n // // x: -10,\r\n // r: 50,\r\n // // x: 15,\r\n // // y: 30,\r\n // // top: -10,\r\n // // left: 10,\r\n // // margin: '100px',\r\n // // color: false ? '#242A34' : '#FFFFFF',\r\n // // fill: 'none',\r\n // fill: '#71CECA',\r\n // style: {\r\n // // color: '#FFFFFF',\r\n // color: '#242A34',\r\n // // fontSize: '10px',\r\n // fontSize: '2.4rem',\r\n // // margin: '100px',\r\n // // fontFamily: 'cursive',\r\n // fontFamily: 'Lato-Regular',\r\n // fontWeight: 700,\r\n // // textAlign: 'center',\r\n // // verticalAlign: 'middle',\r\n // // x: 15,\r\n // // y: 30,\r\n // // top: -10,\r\n // // left: 10,\r\n // // padding: 10\r\n // },\r\n // states: {\r\n // hover: {\r\n // // fill: '#a4edba'\r\n // // fill: 'none'\r\n // fill: '#71CECA',\r\n // },\r\n // // select: {\r\n // // stroke: '#039',\r\n // // fill: '#a4edba'\r\n // // }\r\n // }\r\n // }\r\n // } : null,\r\n // obj && obj.chartName === 'investigate-overview' ? {\r\n // text: '<',\r\n // // useHTML: true,\r\n // // contextButton: {\r\n // // symbol: 'url(https://lh3.google.com/u/0/ogw/ADGmqu-9P3qi_PkkS3kHm9KtQ1XkRATArPPY123ULOno=s64-c-mo)'\r\n // // },\r\n // // navigation: {\r\n // // buttonOptions: {\r\n // // verticalAlign: 'middle',\r\n // // y: -20,\r\n // // align: 'center'\r\n // // }\r\n // // },\r\n // onclick: function () {\r\n // // alert('clicked');\r\n // // if (obj.chartUnitType === CHART_UNIT_TYPES.TEMPERATURE) {\r\n // // self.emitHandleTemperatureConvertion.emit();\r\n // // } else {\r\n // // self.emitHandlePressureConvertion.emit();\r\n // // }\r\n // self.emitHandleOnClickPrevBtn.emit();\r\n // },\r\n // x: '-0%',\r\n // y: 90,\r\n // theme: {\r\n // /* 'stroke-width': 1, */\r\n // /* stroke: 'silver', */\r\n // /* fill: '#71CECA', */\r\n // // width: 20,\r\n // height: 25,\r\n // padding: 10,\r\n // // x: -10,\r\n // r: 50,\r\n // // x: 15,\r\n // // y: 30,\r\n // // top: -10,\r\n // // left: 10,\r\n // // margin: '100px',\r\n // // color: false ? '#242A34' : '#FFFFFF',\r\n // // fill: 'none',\r\n // fill: '#71CECA',\r\n // style: {\r\n // // color: '#FFFFFF',\r\n // color: '#242A34',\r\n // // fontSize: '10px',\r\n // fontSize: '2.4rem',\r\n // // margin: '100px',\r\n // // fontFamily: 'cursive',\r\n // fontFamily: 'Lato-Regular',\r\n // fontWeight: 700,\r\n // // textAlign: 'center',\r\n // // verticalAlign: 'middle',\r\n // // x: 15,\r\n // // y: 30,\r\n // // top: -10,\r\n // // left: 10,\r\n // // padding: 10\r\n // },\r\n // states: {\r\n // hover: {\r\n // // fill: '#a4edba'\r\n // // fill: 'none'\r\n // fill: '#71CECA',\r\n // },\r\n // // select: {\r\n // // stroke: '#039',\r\n // // fill: '#a4edba'\r\n // // }\r\n // }\r\n // }\r\n // } : null\r\n ]\r\n }; \r\n }\r\n\r\n handleNotchDisplay(obj)\r\n {\r\n console.log(obj,\"annobj\")\r\n let info=[];\r\n if(obj!=undefined)\r\n {\r\n obj.forEach(ele => {\r\n let data = {point: {\r\n xAxis: 0,\r\n yAxis: 0,\r\n x: ele.alerttime,\r\n y: 0,\r\n },\r\n text: Highcharts.dateFormat('%d %b %Y %l:%M %p ', ele.alerttime),\r\n height: 250,\r\n width: 10,\r\n backgroundColor: '#2A3343',\r\n color: '#ffffff',\r\n borderColor: '#898989',\r\n }\r\n\r\n info.push(data)\r\n });\r\n\r\n console.log(\"inof\",info)\r\n return info\r\n }\r\n \r\n }\r\n drawSplineChart(obj) {\r\n console.log(\"obj\",obj)\r\n //debugger\r\n // const plotBandsData = this.plotBandsData;\r\n // debugger\r\n // // obj.chartData && obj.chartData.plotBandsData;\r\n // let minValue = obj.data[0].data[0][1];\r\n // let maxValue = obj.data[0].data[0][1];\r\n // obj.data[0].data.map((item) => {\r\n // minValue = (item[1] < minValue) ? item[1] : minValue;\r\n // maxValue = (item[1] > maxValue) ? item[1] : maxValue;\r\n // });\r\n let maxValue = null;\r\n let tickInterval = null;\r\n if (this.chartData && this.chartData.title &&\r\n this.chartData.title === 'Cooling' ||\r\n this.chartData.title === 'Fan/Heat Pump' ||\r\n this.chartData.title === 'Heating Furnace') {\r\n maxValue = 1;\r\n tickInterval = 1;\r\n }\r\n\r\n const self = this;\r\n Highcharts.setOptions({\r\n lang: {\r\n thousandsSep: '',\r\n },\r\n time: {\r\n useUTC: false,\r\n },\r\n });\r\n this.options = {\r\n\r\n chart: {\r\n type: 'spline',\r\n backgroundColor: '#2A3343',\r\n // zoomEnabled: true,\r\n height: this.heightStyle\r\n },\r\n exporting: this.display?this.handleExportingButtons(obj):'',\r\n\r\n legend: {\r\n enabled: true,\r\n itemStyle: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontWeight: 100,\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.3rem',\r\n },\r\n itemHoverStyle: {\r\n color: 'rgba(255,255,255,0.85)'\r\n },\r\n itemHiddenStyle: {\r\n color: 'rgba(255,255,255,0.85)'\r\n },\r\n useHTML: true,\r\n symbolWidth: 0,\r\n labelFormatter: function () {\r\n // console.log(\"Z\", this.name , '=', this.selected);\r\n // debugger\r\n // this.selected = !this.selected;\r\n // return '' + this.name\r\n return `
\r\n \r\n \r\n \r\n ${this.name}\r\n \r\n
`;\r\n },\r\n // events: {\r\n // labelFormatter: function (event){\r\n // debugger\r\n // }\r\n // }\r\n },\r\n\r\n credits: {\r\n enabled: false\r\n },\r\n\r\n title: {\r\n text: obj.title,\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '2rem'\r\n },\r\n },\r\n subtitle: {\r\n text: ''\r\n },\r\n xAxis: {\r\n //type: 'datetime',\r\n // lineWidth:1.5,\r\n // startOnTick: true,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: 'rgba(255,255,255,0.85)',\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // tickColor: 'black',\r\n tickColor: 'rgba(255,255,255,0.85)',\r\n tickLength: 7,\r\n\r\n labels: {\r\n\r\n // step: 15,\r\n // step: 30,\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n formatter: function () {\r\n // debugger\r\n // console.log(\"value\", this.value)\r\n var output = ''\r\n if (this.isFirst) {\r\n output = Highcharts.dateFormat(\r\n '%l:%M%p
%m-%d-%Y',\r\n this.value\r\n );\r\n obj.emptydata1 = Highcharts.dateFormat(\r\n '%d-%m-%Y',\r\n this.value\r\n ).toString()\r\n // console.log(obj.emptydata1)\r\n\r\n }\r\n else {\r\n if (Highcharts.dateFormat('%d-%m-%Y', this.value).toString() === obj.emptydata1) {\r\n output = Highcharts.dateFormat('%l:%M%p', this.value);\r\n }\r\n else {\r\n // console.log(obj.emptydata1)\r\n obj.emptydata1 = Highcharts.dateFormat('%d-%m-%Y', this.value).toString();\r\n output = Highcharts.dateFormat(\r\n '%l:%M%p
%m-%d-%Y',\r\n this.value\r\n );\r\n }\r\n\r\n }\r\n // console.log('AAAAAAAAAA', output);\r\n return output;\r\n },\r\n },\r\n\r\n // dateTimeLabelFormats: {\r\n // second: '%Y-%m-%d
%I:%M:%S %p',\r\n // minute: '%Y-%m-%d
%I:%M %p',\r\n // hour: '%Y-%m-%d
%I:%M %p',\r\n // day: '%Y
%m-%d',\r\n // week: '%Y
%m-%d',\r\n // month: '%Y-%m',\r\n // year: '%Y'\r\n // },\r\n title: {\r\n // text: 'Time Duration',\r\n\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n // fontWeight: 'bold',\r\n fontFamily: 'SourceSansPro-Regular',\r\n // fontSize: '1.2rem'\r\n },\r\n },\r\n\r\n\r\n allowDecimals: false,\r\n // tickInterval: 5000 * 1000\r\n\r\n // tickInterval: Math.ceil(tickIntervalValue),\r\n // tickInterval: 500 * 1000,\r\n // tickPositioner: function () {\r\n // var positions = [],\r\n // min = Math.floor(this.min),\r\n // max = Math.ceil(this.max),\r\n // tick = min,\r\n // increment = Math.ceil((max - min) / 10);\r\n\r\n // for (; tick < max; tick += increment) {\r\n // positions.push(tick);\r\n // }\r\n // positions.push(max);\r\n // return positions;\r\n // },\r\n plotBands: self.plotBandsData,\r\n // crosshair: false\r\n\r\n },\r\n yAxis: {\r\n title: {\r\n text: obj.yAxisTitle,\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontWeight: 100,\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.3rem',\r\n },\r\n },\r\n opposite: false,\r\n min: null,\r\n max: maxValue,\r\n tickInterval: tickInterval,\r\n gridLineWidth: 0, // Hide Horizontal line\r\n // tickColor: 'black',\r\n tickColor: 'rgba(255,255,255,0.85)',\r\n tickLength: 7,\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // lineWidth:1.5,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: 'rgba(255,255,255,0.85)',\r\n tickPosition: 'outside',\r\n\r\n labels: {\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n },\r\n\r\n },\r\n // tooltip: {\r\n // headerFormat: '{series.name}
',\r\n // pointFormat: '{point.x:.2f} {point.y:.2f}'\r\n // },\r\n\r\n // tooltip: {\r\n // split: false,\r\n // shared: true,\r\n // crosshairs: {\r\n // enabled: false\r\n // },\r\n // // formatter: function() {\r\n // // debugger\r\n // // }\r\n // },\r\n\r\n tooltip: {\r\n split: false,\r\n shared: true,\r\n // crosshairs: {\r\n // enabled: false\r\n // },\r\n useHTML: true,\r\n formatter: function () {\r\n // debugger54%\r\n // debugger\r\n const dateInUTC = Date.UTC(\r\n new Date(this.x).getFullYear(),\r\n new Date(this.x).getMonth(),\r\n new Date(this.x).getDate(),\r\n new Date(this.x).getHours(),\r\n new Date(this.x).getMinutes(),\r\n new Date(this.x).getSeconds()\r\n );\r\n // let date: any = new Date(dateInUTC);\r\n let toolTipUnit = obj.unit === COMMON_CONSTANTS.FAHRENHEIT ? '°F' : '°C';\r\n let supplyValue: any = '-';\r\n let returnValue: any = '-';\r\n // if (this.series && this.series.userOptions && this.series.userOptions.name &&\r\n // this.series.userOptions.name === 'Cooling' ||\r\n // this.series.userOptions.name === 'Fan' ||\r\n // this.series.userOptions.name === 'Heat Pump' ||\r\n // this.series.userOptions.name === 'Heating Furnace') {\r\n // const binaryState = this.y ? 'ON' : 'OFF';\r\n // return ' Time: ' + Highcharts.dateFormat('%I:%M %p', this.x) + '
' + binaryState + '
';\r\n\r\n // } else {\r\n if (this.points && this.points.length && this.points[0].series &&\r\n this.points[0].series.userOptions && this.points[0].series.userOptions.name &&\r\n this.points[0].series.userOptions.name === 'Total Static Pressure') {\r\n toolTipUnit = obj.unit === COMMON_CONSTANTS.PASCAL ? 'Pa' : '\"WC';\r\n supplyValue = this.points[0].point.s != null ? (this.points[0].point.s).toFixed(0) + ' ' + toolTipUnit : 'NA';\r\n returnValue = this.points[0].point.r != null ? (this.points[0].point.r).toFixed(0) + ' ' + toolTipUnit : 'NA';\r\n // if (this.points[0].point.s != null || this.points[0].point.r != null) {\r\n return ' Time: ' + Highcharts.dateFormat('%l:%M %p', this.x) + '
' +\r\n 'Value: ' + (this.y).toFixed(0) + ' ' + toolTipUnit + '

' +\r\n 'Supply Pressure: ' + supplyValue + '
' +\r\n 'Return Pressure: ' + returnValue + '
';\r\n // }\r\n }\r\n // if (this.series && this.series.userOptions && this.series.userOptions.name && this.series.userOptions.name === 'Differential Static Pressure' ||\r\n // this.series.userOptions.name === 'Supply/Return Static Pressure Difference') {\r\n // toolTipUnit = obj.unit === COMMON_CONSTANTS.PASCAL ? 'Pa' : '\"WC';\r\n // return 'Time: ' + '' + Highcharts.dateFormat('%I:%M %p', this.x) + '
' +\r\n // 'Value: ' + (this.y).toFixed(2) + ' ' + toolTipUnit + '
';\r\n\r\n // }\r\n // if (this.series && this.series.userOptions && this.series.userOptions.name &&\r\n // this.series.userOptions.name === 'Discharge Air Temperature' || this.series.userOptions.name === 'Return Air Temperature') {\r\n // return 'Time: ' + Highcharts.dateFormat('%I:%M %p', this.x) + '
' +\r\n // 'Value: ' + (this.y).toFixed(2) + ' ' + toolTipUnit + '
' +\r\n // 'Delta: ' + (this.point.z).toFixed(2) + ' ' + toolTipUnit + '
';\r\n // }\r\n // else {\r\n // return 'Time: ' + Highcharts.dateFormat('%I:%M %p', this.x) + '
' +\r\n // 'Value: ' + (this.y).toFixed(2) + ' ' + toolTipUnit + \"
\";\r\n // }\r\n\r\n // }\r\n\r\n let tooltipValue = 'Time:' + '' +\r\n Highcharts.dateFormat('%l:%M%p', this.x) + '' + '
';\r\n this.points && this.points.length && this.points.map((value, index) => {\r\n if (value.series && value.series.userOptions && value.series.userOptions.name &&\r\n (value.series.userOptions.name === 'Total Static Pressure' ||\r\n value.series.userOptions.name === 'Differential Static Pressure')) {\r\n toolTipUnit = obj.unit === COMMON_CONSTANTS.PASCAL ? 'Pa' : '\"WC';\r\n }\r\n\r\n tooltipValue += '
' +\r\n value.series.userOptions.name + ':' +\r\n '' + (value.y).toFixed(0) + ' ' + toolTipUnit + '' + '
';\r\n\r\n if (value.series.userOptions.name === 'Supply Air Temperature') {\r\n tooltipValue += 'Delta:' + '' +\r\n (value.point && value.point.z ? value.point.z.toFixed(0) : '') +\r\n ' ' + toolTipUnit + '' + '
';\r\n // tooltipValue += 'Ambient Temp:' + '' +\r\n // (value.point && value.point.z1 ? value.point.z1.toFixed(2) : '') +\r\n // ' ' + toolTipUnit + '' + '
';\r\n }\r\n });\r\n return tooltipValue;\r\n }\r\n },\r\n\r\n plotOptions: {\r\n spline: {\r\n marker: {\r\n enabled: false\r\n }\r\n },\r\n series: {\r\n gapSize: 10,\r\n gapUnit: \"relative\",\r\n // showCheckbox: true,\r\n connectNulls: false, // by default\r\n // visible: false,\r\n events: {\r\n checkboxClick: function (event) {\r\n // debugger \r\n // console.log(\"Z-\", this)\r\n if (!event.checked) {\r\n // event.target.userOptions.visible = false;\r\n // // this.legendSymbol.hide();\r\n // this.update({\r\n // // dataLabels:{\r\n // // enabled: true\r\n // // },\r\n // // series: {\r\n // // visible: false\r\n // // }\r\n // });\r\n this.hide();\r\n this.selected = false;\r\n } else {\r\n this.selected = true;\r\n this.show();\r\n }\r\n },\r\n legendItemClick: function () {\r\n console.log(this.userOptions.checkBoxClassName,\"checkbox\")\r\n if(localStorage.getItem(this.checkBoxClassName))\r\n {\r\n this.selected = !this.selected;\r\n this.selected == true? localStorage.setItem(this.userOptions.checkBoxClassName,\"true\"):localStorage.setItem(this.userOptions.checkBoxClassName,\"false\")\r\n }\r\n else\r\n {\r\n this.selected = !this.selected;\r\n this.selected == true? localStorage.setItem(this.userOptions.checkBoxClassName,\"true\"):localStorage.setItem(this.userOptions.checkBoxClassName,\"false\")\r\n }\r\n \r\n }\r\n }\r\n },\r\n // line: {\r\n // events: {\r\n // checkboxClick: function (event){\r\n // debugger \r\n // if(event.checked) {\r\n \r\n // }\r\n // }\r\n // }\r\n // }\r\n },\r\n\r\n rangeSelector: {\r\n // inputEnabled: false,\r\n enabled: false\r\n },\r\n\r\n // colors: ['#71CECA', '#F89308', '#F24766', '#529AD5', '#06C', '#036', '#000'],\r\n\r\n // series: [\r\n // {\r\n // name: obj.yAxisTitle,\r\n // data: obj.data[0].data,\r\n // },\r\n // ]\r\n\r\n series: obj.data,\r\n\r\n // series: [\r\n // obj.data.map((value) => {\r\n // debugger\r\n // return value;\r\n // })\r\n // ]\r\n\r\n // series: obj.supplyAirTemperature\r\n\r\n navigator: {\r\n xAxis: {\r\n labels: {\r\n\r\n // step: 15,\r\n // step: 30,\r\n style: {\r\n color: '#FFFFFF',\r\n fontWeight: 'bold',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n formatter: function () {\r\n // debugger\r\n // console.log(\"value\", this.value)\r\n var output = ''\r\n if (this.isFirst) {\r\n output = Highcharts.dateFormat(\r\n '%l:%M%p',\r\n this.value\r\n );\r\n obj.emptydata1 = Highcharts.dateFormat(\r\n '%d-%m-%Y',\r\n this.value\r\n ).toString()\r\n // console.log(obj.emptydata1)\r\n\r\n }\r\n else {\r\n if (Highcharts.dateFormat('%d-%m-%Y', this.value).toString() === obj.emptydata1) {\r\n output = Highcharts.dateFormat('%l:%M%p', this.value);\r\n }\r\n else {\r\n // console.log(obj.emptydata1)\r\n obj.emptydata1 = Highcharts.dateFormat('%d-%m-%Y', this.value).toString();\r\n output = Highcharts.dateFormat(\r\n '%l:%M%p',\r\n this.value\r\n );\r\n }\r\n\r\n }\r\n // console.log('AAAAAAAAAA', output);\r\n return output;\r\n },\r\n },\r\n \r\n },\r\n \r\n },\r\n\r\n annotations: [\r\n {\r\n labels: this.handleNotchDisplay(obj.annotation)\r\n },\r\n ],\r\n }\r\n \r\n \r\n // Highstock.chart(obj.element, this.options);\r\n this.fromReport ? Highcharts.chart(this.chartContainer.nativeElement, this.options) : Highstock.stockChart(this.chartContainer.nativeElement, this.options);\r\n\r\n }\r\n\r\n drawColumnChart(obj) {\r\n console.log(obj)\r\n // debugger\r\n this.options = {\r\n chart: {\r\n type: 'column',\r\n backgroundColor: '#2A3343',\r\n },\r\n exporting: this.display?this.handleExportingButtons(obj):'',\r\n title: {\r\n // text: 'Step line types, with null values in the series'\r\n text: obj.title,\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '2rem'\r\n },\r\n },\r\n legend: {\r\n enabled: true,\r\n symbolHeight: 0,\r\n symbolWidth: 0,\r\n symbolRadius: 0,\r\n squareSymbol: false,\r\n useHTML: true,\r\n \r\n labelFormatter: function () {\r\n let name = this.name==\"Hour(s)\"?\"Hours\":this.name;\r\n return '
' +\r\n '
' +\r\n '
' + name + '
' +\r\n '
';\r\n },\r\n itemStyle: {\r\n color: '#DFE1E3',\r\n fontWeight: 100,\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.4rem',\r\n },\r\n itemHoverStyle: {\r\n color: '#DFE1E3'\r\n },\r\n itemHiddenStyle: {\r\n color: '#DFE1E3'\r\n },\r\n // symbolHeight: 10,\r\n // symbolWidth: 10,\r\n // symbolRadius: 10\r\n legendSymbol: 'line',\r\n },\r\n tooltip: {\r\n xDateFormat: '%m-%d-%y',\r\n\r\n },\r\n xAxis: {\r\n type: 'datetime',\r\n // categories: ['Device 1', 'Device 2', 'Device 3', 'Device 4', 'Device 5', 'Device 6'],\r\n // categories: [\r\n // 1601918538000,\r\n // 1601918598000,\r\n // 1601918658000,\r\n // 1601918718000,\r\n // 1601918778000,\r\n // 1601918838000,\r\n // 1601918898000,\r\n // 1601918958000,\r\n // 1601919018000,\r\n // 1601919078000\r\n // ],\r\n categories: obj.categoriesData,\r\n labels: {\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n formatter: function () {\r\n // debugger\r\n var output = ''\r\n // if (this.isFirst) {\r\n output = Highcharts.dateFormat(\r\n '%m-%d-%y',\r\n this.value\r\n );\r\n // obj.emptydata1 = Highcharts.dateFormat(\r\n // '%d-%m-%Y',\r\n // this.value\r\n // ).toString()\r\n // console.log(obj.emptydata1)\r\n\r\n // }\r\n\r\n // console.log('AAAAAAAAAA', output);\r\n return output;\r\n },\r\n },\r\n },\r\n\r\n yAxis: {\r\n title: {\r\n text: obj.yAxisTitle,\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.4rem'\r\n },\r\n },\r\n min: 0,\r\n minRange: 2,\r\n gridLineWidth: 0,// Hide Horizontal line\r\n // tickColor: 'black',\r\n tickColor: '#DFE1E3',\r\n tickLength: 7,\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // lineWidth:1.5,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: '#DFE1E3',\r\n tickPosition: 'outside',\r\n\r\n labels: {\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n },\r\n\r\n },\r\n\r\n plotOptions: {\r\n column: {\r\n grouping: false\r\n },\r\n legend: {\r\n cursor: 'default',\r\n useHTML: true,\r\n labelFormatter: function () {\r\n return '' + this.name + '';\r\n }\r\n /* itemStyle: {\r\n color: '#ff0000'\r\n },\r\n itemHoverStyle: {\r\n color: null\r\n },\r\n itemHiddenStyle: {\r\n color: '#0000ff'\r\n } */\r\n },\r\n\r\n series: {\r\n borderWidth: 0,\r\n dataLabels: {\r\n enabled: true,\r\n crop: false,\r\n overflow: 'none',\r\n style: {\r\n // fontWeight: 'bold',\r\n color: '#FFC06A',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.4rem',\r\n // stroke: '#FFC06A'\r\n // borderWidth: 0,\r\n textOutline: 0\r\n },\r\n formatter: function () {\r\n if(this.point&&this.point.t){\r\n parseInt(this.point.t).toFixed(0);\r\n }\r\n return this.point.t;\r\n }\r\n },\r\n events: {\r\n legendItemClick: function () {\r\n return false;\r\n }\r\n },\r\n states: {\r\n inactive: {\r\n opacity: 1\r\n }\r\n }\r\n }\r\n },\r\n\r\n /* xAxis: {\r\n \r\n title: {\r\n text: `Avg \r\n \r\n \r\n T`,\r\n useHTML: true,\r\n \r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontWeight: 100,\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.3rem',\r\n textAlign: 'center'\r\n },\r\n \r\n }\r\n }, */\r\n\r\n // series: [{\r\n // data: [\r\n // { y: 29.9, t: \"12:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" }\r\n // ]\r\n // },\r\n // {\r\n // name: `Avg \r\n // `,\r\n // color: '#71CECA',\r\n // /* visible: false,*/\r\n // /* data: [\r\n // {y:29.9,t:\"12:45\"}, \r\n // {y:71.5,t:\"14:45\"}\r\n // ] */\r\n // }\r\n // ]\r\n\r\n series: obj.data,\r\n credits: {\r\n enabled: false\r\n },\r\n }\r\n \r\n Highcharts.chart(this.chartContainer.nativeElement, this.options);\r\n }\r\n\r\n drawLineChart(obj) {\r\n // debugger\r\n // Highcharts.setOptions({\r\n // lang: {\r\n // thousandsSep: '',\r\n // },\r\n // time: {\r\n // useUTC: false,\r\n // },\r\n // });\r\n\r\n this.options = {\r\n chart: {\r\n type: 'line',\r\n backgroundColor: '#2A3343',\r\n },\r\n exporting: this.display?this.handleExportingButtons(obj):'',\r\n title: {\r\n // text: 'Step line types, with null values in the series'\r\n text: obj.title,\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '2rem'\r\n },\r\n },\r\n legend: {\r\n enabled: true,\r\n symbolHeight: 0,\r\n symbolWidth: 0,\r\n symbolRadius: 0,\r\n squareSymbol: true,\r\n useHTML: true,\r\n labelFormatter: function () {\r\n return '
' +\r\n '
' +\r\n '
' + this.name + '
' +\r\n '
';\r\n },\r\n itemStyle: {\r\n color: '#DFE1E3',\r\n fontWeight: 100,\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.4rem',\r\n },\r\n itemHoverStyle: {\r\n color: '#DFE1E3'\r\n },\r\n itemHiddenStyle: {\r\n color: '#DFE1E3'\r\n }\r\n },\r\n tooltip: {\r\n xDateFormat: '%m-%d-%y',\r\n valueSuffix: obj.unit == COMMON_CONSTANTS.CELCIUS?'°C':'°F'\r\n },\r\n plotOptions: {\r\n series: {\r\n marker: {\r\n enabled: true\r\n },\r\n connectNulls: false\r\n }\r\n },\r\n xAxis: {\r\n type: 'datetime',\r\n tickColor: '#DFE1E3',\r\n tickLength: 7,\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // lineWidth:1.5,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: '#DFE1E3',\r\n labels: {\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n formatter: function () {\r\n // debugger\r\n return Highcharts.dateFormat('%m-%d-%y', this.value);\r\n }\r\n },\r\n // dateTimeLabelFormats: {\r\n // second: '%Y-%m-%d
%I:%M:%S %p',\r\n // minute: '%Y-%m-%d
%I:%M %p',\r\n // hour: '%Y-%m-%d
%I:%M %p',\r\n // day: '%Y
%m-%d',\r\n // week: '%Y
%m-%d',\r\n // month: '%Y-%m',\r\n // year: '%Y'\r\n // },\r\n // categories: [\r\n // 1601918538000,\r\n // 1601918598000,\r\n // 1601918658000,\r\n // 1601918718000,\r\n // 1601918778000,\r\n // 1601918838000,\r\n // 1601918898000,\r\n // 1601918958000,\r\n // 1601919018000,\r\n // 1601919078000\r\n // ]\r\n // categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']\r\n },\r\n yAxis: {\r\n title: {\r\n text: obj.yAxisTitle,\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.4rem'\r\n },\r\n },\r\n gridLineWidth: 0,// Hide Horizontal line\r\n // tickColor: 'black',\r\n tickColor: '#DFE1E3',\r\n tickLength: 7,\r\n // tickWidth: 1.5,\r\n tickWidth: 1,\r\n // lineWidth:1.5,\r\n lineWidth: 1,\r\n // lineColor:'black',\r\n lineColor: '#DFE1E3',\r\n tickPosition: 'outside',\r\n\r\n labels: {\r\n style: {\r\n color: '#DFE1E3',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem'\r\n },\r\n },\r\n\r\n },\r\n // series: [{\r\n // marker: {\r\n // fillColor: '#FFFFFF',\r\n // /* lineColor: null // inherit from series */\r\n // },\r\n // /* data: [1, 3, 2.5, 4, 3.5, 6, 7, 6.5, 9], */\r\n // // data: [['Jan', 1], ['Feb', 3], ['Mar', 2.5], ['Apr', 4], ['May', 3.5], ['Jun', 6], ['Jul', 7], ['Aug', 6.5], ['Sep', 9]],\r\n // /* step: 'right', */\r\n // // data:[\r\n // // 22.4,\r\n // // 23.9,\r\n // // 22.3,\r\n // // 22.2,\r\n // // 23.1,\r\n // // 22.9,\r\n // // 23.7,\r\n // // 23.6,\r\n // // 22.6,\r\n // // 22.5\r\n // // ], \r\n // data:[\r\n // [1601918538000, 22.4],\r\n // [1601918598000, 23.9],\r\n // [1601918658000, 22.3],\r\n // [1601918718000, 22.2],\r\n // [1601918778000, 23.1],\r\n // [1601918838000, 22.9],\r\n // [1601918898000, 23.7],\r\n // [1601918958000, 23.6],\r\n // [1601919018000, 22.6],\r\n // [1601919078000, 22.5]\r\n // ],\r\n // name: 'Right'\r\n // },\r\n // /* {\r\n // data: [5, 6, 7, 8, null, 10, 11, null, 13],\r\n // step: 'center',\r\n // name: 'Center'\r\n // }, {\r\n // data: [9, 10, 11, 12, null, 14, 15, null, 17],\r\n // step: 'left',\r\n // name: 'Left'\r\n // } */\r\n // ],\r\n series: obj.data,\r\n credits: {\r\n enabled: false\r\n },\r\n }\r\n \r\n Highcharts.chart(this.chartContainer.nativeElement, this.options);\r\n }\r\n\r\n}\r\n\r\n// // var supplyAirTemp;\r\n\r\n// drawSupplyAirTemprature(data,fdate,tdate) {\r\n// var supplyAirTemp;\r\n// let supplyAirTemperature=[];\r\n// let returnAirTemp=[];\r\n// data.alerts.forEach(info=>{\r\n// let a={};\r\n// a['x'] = new Date(info.timestamp);\r\n// a['y'] = info.SupplyAirTemp;\r\n// supplyAirTemperature.push(a);\r\n// let b={};\r\n// b['x'] = new Date(info.timestamp);\r\n// b['y']= info.ReturnAirTemp;\r\n// returnAirTemp.push(b);\r\n// })\r\n\r\n// console.log(\"supp\",supplyAirTemperature);\r\n// if(fdate==\"empty\")\r\n// {\r\n// fdate = this.getYesterdayDate();\r\n// tdate = this.getTodayDate();\r\n// }\r\n// console.log(data,supplyAirTemperature,returnAirTemp);\r\n// supplyAirTemp = new CanvasJS.Chart(\"supplyAirTemp\", { \r\n// theme: 'dark2',\r\n// width: 700,\r\n\r\n// title: {\r\n// text: \"Air Temperature\",\r\n// },\r\n// toolTip:{ \r\n// \t\t\tcontent: \"{x}: {y}°F\" \r\n// },\r\n// axisX : {\r\n// title: 'Time(Dated '+fdate+' - '+tdate+')',\r\n// labelangle:90,\r\n// // interval:4, \r\n// //intervalType: \"hour\", \r\n// valueFormatString: \"DD MMM,HH:mm\", \r\n// },\r\n// zoomEnabled:true,\r\n// axisY : {\r\n// title: 'Temperature',\r\n// suffix: \" °F\"\r\n// },\r\n// //xValueType: \"dateTime\",\r\n// // xValueFormatString:\"DD-MMM hh:mm tt\",\r\n// data: [{\r\n// type:\"spline\",\r\n// name: \"Supply Air Temp\",\r\n// showInLegend: true,\r\n// markerSize: 0,\r\n// xValueFormatString: \"YYYY-MM-DD hh:mm:ss\",\r\n// dataPoints: supplyAirTemperature\r\n// },\r\n// {\r\n// type: \"spline\",\r\n// name: \"Return Air Temp\",\r\n// showInLegend: true,\r\n// markerSize: 0,\r\n// // xValueFormatString: \"After\",\r\n// // yValueFormatString: \"°F\",\r\n// xValueFormatString: \"YYYY-MM-DD hh:mm:ss\",\r\n// dataPoints: returnAirTemp\r\n// }\r\n// ],\r\n\r\n// });\r\n// supplyAirTemp.render();\t\r\n// }\r\n\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.subscription-modal_wrapper .modal-content {\\n width: 700px;\\n}\\n.subscription-modal_wrapper .modal-body {\\n padding: 2rem 3rem 3rem 3rem;\\n}\\n.subscription-modal_wrapper .modal-footer {\\n margin: 0 3rem;\\n padding-top: 3rem;\\n border-top: 0.05rem solid #707070;\\n}\\n.subscription-modal_wrapper .navigation_wrapper {\\n padding-bottom: 1rem;\\n}\\n.subscription-modal_wrapper .navigation_wrapper .tab-item {\\n width: 12rem;\\n font-size: 1.4rem;\\n padding: 0.7rem 0.5rem;\\n background-color: #898989;\\n text-align: center;\\n list-style: none;\\n cursor: pointer;\\n color: #e9e9f0;\\n}\\n.subscription-modal_wrapper .navigation_wrapper .selected-tab {\\n background-color: #00b7a5;\\n cursor: default;\\n color: #ffffff;\\n}\\n.subscription-modal_wrapper .navigation_wrapper {\\n margin-top: 1rem;\\n}\\n.subscription-modal_wrapper .navigation_wrapper .tab-item:not(:last-child) {\\n margin-right: 1px;\\n}\\n.subscription-modal_wrapper .navigation_wrapper .tab-item:first-child {\\n border-top-left-radius: 3px;\\n}\\n.subscription-modal_wrapper .navigation_wrapper .tab-item:last-child {\\n border-top-right-radius: 3px;\\n}\\n.subscription-modal_wrapper .subscription-card:first-child,\\n.subscription-modal_wrapper .subscription-card_active:first-child {\\n margin-right: 1rem;\\n}\\n.subscription-modal_wrapper .subscription-card:last-child,\\n.subscription-modal_wrapper .subscription-card_active:last-child {\\n margin-left: 1rem;\\n}\\n.subscription-modal_wrapper .subscription-card,\\n.subscription-modal_wrapper .subscription-card_active,\\n.subscription-modal_wrapper .cellular-plan-card,\\n.subscription-modal_wrapper .cellular-plan-card_active {\\n background-color: #ffffff;\\n border: 0.1rem solid #1d355c;\\n border-radius: 0.6rem;\\n min-height: 14rem;\\n width: 24rem;\\n padding: 1rem;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n}\\n.subscription-modal_wrapper .cellular-plan-card,\\n.subscription-modal_wrapper .cellular-plan-card_active {\\n min-height: 11rem;\\n width: 18rem;\\n}\\n.subscription-modal_wrapper .subscription-card_active,\\n.subscription-modal_wrapper .cellular-plan-card_active {\\n border: 0.2rem solid #82c542;\\n box-sizing: border-box;\\n box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);\\n cursor: default;\\n}\\n.subscription-modal_wrapper .circle {\\n width: 5rem;\\n height: 5rem;\\n border-radius: 50%;\\n background-color: #c4c4c4;\\n}\\n.subscription-modal_wrapper .subscription-title {\\n font-family: \\\"Roboto-Regular\\\";\\n font-weight: bold;\\n font-size: 1.6rem;\\n color: #3e3e3e;\\n}\\n.subscription-modal_wrapper .subscription-sub-title {\\n font-family: \\\"Roboto-Regular\\\";\\n font-size: 1.1rem;\\n color: #727272;\\n line-height: 1.6rem;\\n}\\n.subscription-modal_wrapper .annual-subscription-title {\\n font-family: \\\"Roboto-Regular\\\";\\n font-size: 1.1rem;\\n color: #82c542;\\n line-height: 1.6rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9uL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXGFwcFxcc2hhcmVkXFxjb21wb25lbnRzXFxzdWJzY3JpcHRpb25cXHN1YnNjcmlwdGlvbi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9uL0Q6XFxTb3VyY2UgQ29kZVxcQ29udHJhY3RvciBVaVxcY29udHJhY3Rvci51aS9zcmNcXHN0eWxlc2hlZXRzXFxfdmFyaWFibGVzLnNjc3MiLCJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL3N1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRElFO0VBQ0UsWUFBQTtBRURKO0FGSUU7RUFDRSw0QkFBQTtBRUZKO0FGS0U7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQ0FBQTtBRUhKO0FGTUU7RUFDRSxvQkFBQTtBRUpKO0FGTUk7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQ1dlO0VEVmYsa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQ3FCcUI7QUN6QjNCO0FGT0k7RUFDRSx5QkM2QmU7RUQ1QmYsZUFBQTtFQUNBLGNDeEJnQjtBQ21CdEI7QUZTRTtFQUNFLGdCQUFBO0FFUEo7QUZTSTtFQUNFLGlCQUFBO0FFUE47QUZVSTtFQUNFLDJCQUFBO0FFUk47QUZXSTtFQUNFLDRCQUFBO0FFVE47QUZhRTs7RUFFRSxrQkFBQTtBRVhKO0FGY0U7O0VBRUUsaUJBQUE7QUVaSjtBRmVFOzs7O0VBSUUseUJDMURrQjtFRDJEbEIsNEJBQUE7RUFDQSxxQkFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFFQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSx1QkFBQTtBRWRKO0FGaUJFOztFQUVFLGlCQUFBO0VBQ0EsWUFBQTtBRWZKO0FGa0JFOztFQUVFLDRCQUFBO0VBQ0Esc0JBQUE7RUFDQSwyQ0FBQTtFQUNBLGVBQUE7QUVoQko7QUZtQkU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EseUJDdkRXO0FDc0NmO0FGb0JFO0VBQ0UsNkJDRXVCO0VERHZCLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0FFbEJKO0FGcUJFO0VBQ0UsNkJDTHVCO0VETXZCLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0FFbkJKO0FGc0JFO0VBQ0UsNkJDWnVCO0VEYXZCLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0FFcEJKIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkBpbXBvcnQgXCJzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3NcIjtcclxuXHJcbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciB7XHJcbiAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgd2lkdGg6IDcwMHB4O1xyXG4gIH1cclxuXHJcbiAgLm1vZGFsLWJvZHkge1xyXG4gICAgcGFkZGluZzogMnJlbSAzcmVtIDNyZW0gM3JlbTtcclxuICB9XHJcblxyXG4gIC5tb2RhbC1mb290ZXIge1xyXG4gICAgbWFyZ2luOiAwIDNyZW07XHJcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcclxuICAgIGJvcmRlci10b3A6IDAuMDVyZW0gc29saWQgJGNvbG9yLWdyYXktNTtcclxuICB9XHJcblxyXG4gIC5uYXZpZ2F0aW9uX3dyYXBwZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XHJcblxyXG4gICAgLnRhYi1pdGVtIHtcclxuICAgICAgd2lkdGg6IDEycmVtO1xyXG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgcGFkZGluZzogMC43cmVtIDAuNXJlbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktcHJpbWFyeTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RlZC10YWIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZS10ZXJuYXJ5O1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZpZ2F0aW9uX3dyYXBwZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMXJlbTtcclxuXHJcbiAgICAudGFiLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC50YWItaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLWl0ZW06bGFzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc3Vic2NyaXB0aW9uLWNhcmQ6Zmlyc3QtY2hpbGQsXHJcbiAgLnN1YnNjcmlwdGlvbi1jYXJkX2FjdGl2ZTpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XHJcbiAgfVxyXG5cclxuICAuc3Vic2NyaXB0aW9uLWNhcmQ6bGFzdC1jaGlsZCxcclxuICAuc3Vic2NyaXB0aW9uLWNhcmRfYWN0aXZlOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XHJcbiAgfVxyXG5cclxuICAuc3Vic2NyaXB0aW9uLWNhcmQsXHJcbiAgLnN1YnNjcmlwdGlvbi1jYXJkX2FjdGl2ZSxcclxuICAuY2VsbHVsYXItcGxhbi1jYXJkLFxyXG4gIC5jZWxsdWxhci1wbGFuLWNhcmRfYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS1wcmltYXJ5O1xyXG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgIzFkMzU1YztcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcclxuICAgIG1pbi1oZWlnaHQ6IDE0cmVtO1xyXG4gICAgd2lkdGg6IDI0cmVtO1xyXG4gICAgcGFkZGluZzogMXJlbTtcclxuICAgIC8vIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuY2VsbHVsYXItcGxhbi1jYXJkLFxyXG4gIC5jZWxsdWxhci1wbGFuLWNhcmRfYWN0aXZlIHtcclxuICAgIG1pbi1oZWlnaHQ6IDExcmVtO1xyXG4gICAgd2lkdGg6IDE4cmVtO1xyXG4gIH1cclxuXHJcbiAgLnN1YnNjcmlwdGlvbi1jYXJkX2FjdGl2ZSxcclxuICAuY2VsbHVsYXItcGxhbi1jYXJkX2FjdGl2ZSB7XHJcbiAgICBib3JkZXI6IDAuMnJlbSBzb2xpZCAjODJjNTQyO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICAuY2lyY2xlIHtcclxuICAgIHdpZHRoOiA1cmVtO1xyXG4gICAgaGVpZ2h0OiA1cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktODtcclxuICB9XHJcblxyXG4gIC5zdWJzY3JpcHRpb24tdGl0bGUge1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xyXG4gICAgY29sb3I6ICMzZTNlM2U7XHJcbiAgfVxyXG5cclxuICAuc3Vic2NyaXB0aW9uLXN1Yi10aXRsZSB7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjtcclxuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG4gICAgY29sb3I6ICM3MjcyNzI7XHJcbiAgICBsaW5lLWhlaWdodDogMS42cmVtO1xyXG4gIH1cclxuXHJcbiAgLmFubnVhbC1zdWJzY3JpcHRpb24tdGl0bGUge1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI7XHJcbiAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgIGNvbG9yOiAjODJjNTQyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcclxuICB9XHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5tb2RhbC1jb250ZW50IHtcbiAgd2lkdGg6IDcwMHB4O1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IHtcbiAgcGFkZGluZzogMnJlbSAzcmVtIDNyZW0gM3JlbTtcbn1cbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciAubW9kYWwtZm9vdGVyIHtcbiAgbWFyZ2luOiAwIDNyZW07XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICM3MDcwNzA7XG59XG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtIHtcbiAgd2lkdGg6IDEycmVtO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgcGFkZGluZzogMC43cmVtIDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg5ODk4OTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZTllOWYwO1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnNlbGVjdGVkLXRhYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI3YTU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLm5hdmlnYXRpb25fd3JhcHBlciAudGFiLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5zdWJzY3JpcHRpb24tY2FyZDpmaXJzdC1jaGlsZCxcbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciAuc3Vic2NyaXB0aW9uLWNhcmRfYWN0aXZlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5zdWJzY3JpcHRpb24tY2FyZDpsYXN0LWNoaWxkLFxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5zdWJzY3JpcHRpb24tY2FyZF9hY3RpdmU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5zdWJzY3JpcHRpb24tY2FyZCxcbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciAuc3Vic2NyaXB0aW9uLWNhcmRfYWN0aXZlLFxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5jZWxsdWxhci1wbGFuLWNhcmQsXG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLmNlbGx1bGFyLXBsYW4tY2FyZF9hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjMWQzNTVjO1xuICBib3JkZXItcmFkaXVzOiAwLjZyZW07XG4gIG1pbi1oZWlnaHQ6IDE0cmVtO1xuICB3aWR0aDogMjRyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5jZWxsdWxhci1wbGFuLWNhcmQsXG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLmNlbGx1bGFyLXBsYW4tY2FyZF9hY3RpdmUge1xuICBtaW4taGVpZ2h0OiAxMXJlbTtcbiAgd2lkdGg6IDE4cmVtO1xufVxuLnN1YnNjcmlwdGlvbi1tb2RhbF93cmFwcGVyIC5zdWJzY3JpcHRpb24tY2FyZF9hY3RpdmUsXG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLmNlbGx1bGFyLXBsYW4tY2FyZF9hY3RpdmUge1xuICBib3JkZXI6IDAuMnJlbSBzb2xpZCAjODJjNTQyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2hhZG93OiAwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uc3Vic2NyaXB0aW9uLW1vZGFsX3dyYXBwZXIgLmNpcmNsZSB7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M0YzRjNDtcbn1cbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciAuc3Vic2NyaXB0aW9uLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogIzNlM2UzZTtcbn1cbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciAuc3Vic2NyaXB0aW9uLXN1Yi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90by1SZWd1bGFyXCI7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogIzcyNzI3MjtcbiAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcbn1cbi5zdWJzY3JpcHRpb24tbW9kYWxfd3JhcHBlciAuYW5udWFsLXN1YnNjcmlwdGlvbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90by1SZWd1bGFyXCI7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogIzgyYzU0MjtcbiAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcbn0iXX0= */\"","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n// Constants\r\nimport { BOARDTYPES, SUBSCRIPTION_PLAN_ID } from 'src/app/shared/constants/commom.constant';\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\n\r\n// Enums\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\n\r\n// Models\r\nimport {\r\n AssetDetail,\r\n SubscriptionPlanListResponse,\r\n SubscriptionPlanListResponseDetails, Customer, CellularPlanListResponse, CellularPlansStatusList, CurrentCellularStatusResponse\r\n} from 'src/app/shared/models/customer.model';\r\n\r\n@Component({\r\n selector: 'app-subscription',\r\n templateUrl: './subscription.component.html',\r\n styleUrls: ['./subscription.component.scss']\r\n})\r\nexport class SubscriptionComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() emitHandleRefreshPage = new EventEmitter();\r\n @Input() isSubscriptionPlan: boolean;\r\n @Input() assetDetails: AssetDetail;\r\n @Input() customerDetails: Customer;\r\n subscriptionModalTitle: string;\r\n selectedSubscriptionTab = 'subsciption-plan';\r\n selectedSubscriptionType: string;\r\n boardTypes = BOARDTYPES;\r\n roleConstants = ROLE_CONSTANTS;\r\n subscriptionPlanList: SubscriptionPlanListResponseDetails[];\r\n isSubscriptionPlanLoading = false;\r\n currentSelectedPlanId: any;\r\n currentSelectedPlanName: any;\r\n currentSelectedPlanNameCopy: any;\r\n currentSelectedPlanIdCopy: any;\r\n isActionBtnLoading = false;\r\n modalType: string;\r\n modalTitle: string;\r\n confirmationModalLine1Content: string;\r\n confirmationModalLine2Content: string;\r\n confirmationModalFlag: string;\r\n isConfirmationModalHasYesOrNoButton: boolean;\r\n isShowConfirmationModal = false;\r\n isCellularPlanLoading = false;\r\n cellularPlanList: any;\r\n defaultCellularPlan: number;\r\n currentSelectedCellularPlan: number;\r\n currentSelectedCellularPlanCopy: number;\r\n portalName: string;\r\n subscriptionPlanId = SUBSCRIPTION_PLAN_ID;\r\n currentSelectedCellularStatus: any;\r\n\r\n constructor(\r\n private sharedService: SharedService,\r\n private helperService: HelperService,\r\n private activatedRoute: ActivatedRoute,\r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n this.cellularPlanList = [\r\n {\r\n title: 'Active',\r\n subTitle: 'Currently Sending Data'\r\n },\r\n // {\r\n // title: 'Suspend',\r\n // subTitle: 'Put Data Activity On Hold'\r\n // },\r\n // {\r\n // title: 'Deactivate',\r\n // subTitle: 'De-activate This Plan'\r\n // }\r\n ]\r\n\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n });\r\n if (this.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n this.getSubscriptionPlanList();\r\n this.subscriptionModalTitle = (this.customerDetails &&\r\n this.customerDetails.customerName ? this.customerDetails.customerName :\r\n this.customerDetails.customerFirstName + ' ' + this.customerDetails.customerLastName) + `'s ` + 'Subscription';\r\n } else {\r\n this.subscriptionModalTitle = 'Cellular Plan';\r\n }\r\n // this.getCellularPlanList();\r\n if (!this.isSubscriptionPlan &&\r\n (this.assetDetails && this.assetDetails.deviceType === BOARDTYPES.Celluar)) {\r\n this.selectedSubscriptionTab = 'cellular-plan';\r\n }\r\n if (this.assetDetails && this.assetDetails.deviceType === BOARDTYPES.Celluar) {\r\n this.getCurrentCellularStatus();\r\n\r\n }\r\n }\r\n\r\n getSubscriptionPlanList() {\r\n const queryParams = {\r\n category: this.assetDetails && this.assetDetails.deviceType\r\n };\r\n this.isSubscriptionPlanLoading = true;\r\n this.sharedService.getSubscriptionPlanList(queryParams).subscribe(\r\n (response: SubscriptionPlanListResponse) => {\r\n this.isSubscriptionPlanLoading = false;\r\n this.subscriptionPlanList = response && response.subscriptionPlanList;\r\n }, (error) => {\r\n this.isSubscriptionPlanLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n // getCellularPlanList() {\r\n // const queryParams = {\r\n // meliSerialNumber: this.assetDetails && this.assetDetails.meliSerialNumber\r\n // };\r\n\r\n // this.isCellularPlanLoading = true;\r\n // this.sharedService.getCellularPlanList(queryParams).subscribe(\r\n // (response: CellularPlanListResponse) => {\r\n // this.isCellularPlanLoading = false;\r\n // this.cellularPlanList = response && response.cellularPlanDetails && \r\n // response.cellularPlanDetails.cellularPlanList;\r\n // this.defaultCellularPlan = response && response.cellularPlanDetails.currecntcellularPlan;\r\n // }, (error) => {\r\n // this.isCellularPlanLoading = false;\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n // }\r\n\r\n getCurrentCellularStatus() {\r\n const boardSerialNumber = this.assetDetails && this.assetDetails.meliSerialNumber;\r\n\r\n this.isCellularPlanLoading = true;\r\n this.sharedService.getCurrentCellularStatus(boardSerialNumber).subscribe(\r\n (response: CurrentCellularStatusResponse) => {\r\n this.currentSelectedCellularStatus = response.responseData && response.responseData.simCardStatus;\r\n\r\n if (this.currentSelectedCellularStatus === 'ACTIVE') {\r\n this.currentSelectedCellularStatus = 'Active';\r\n } else if (this.currentSelectedCellularStatus === 'SUSPENDED') {\r\n this.currentSelectedCellularStatus = 'Suspend';\r\n } else {\r\n this.currentSelectedCellularStatus = 'Deactivate';\r\n }\r\n\r\n this.isCellularPlanLoading = false;\r\n }, (error) => {\r\n this.isCellularPlanLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n )\r\n }\r\n\r\n updateSubscriptionPlan() {\r\n const queryParams = {\r\n meliSerialNumber: this.assetDetails && this.assetDetails.meliSerialNumber,\r\n subscriptionPlanId: this.currentSelectedPlanId\r\n };\r\n\r\n this.isActionBtnLoading = true;\r\n this.sharedService.updateSubscriptionPlan(queryParams).subscribe(\r\n (response) => {\r\n this.isActionBtnLoading = false;\r\n this.handleRefreshPage();\r\n this.closeModal();\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.responseData);\r\n }, (error) => {\r\n this.isActionBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n updateCellularPlan() {\r\n const queryParams = {\r\n meliSerialNumber: this.assetDetails && this.assetDetails.meliSerialNumber,\r\n subscriptionPlanStatusId: this.currentSelectedCellularPlan\r\n };\r\n\r\n this.isActionBtnLoading = true;\r\n this.sharedService.updateCellularPlan(queryParams).subscribe(\r\n (response) => {\r\n this.isActionBtnLoading = false;\r\n this.handleRefreshPage();\r\n this.closeModal();\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.responseData);\r\n }, (error) => {\r\n this.isActionBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleSubscriptionModalActionBtn() {\r\n if (this.confirmationModalFlag === 'upgrade-subscription') {\r\n this.updateSubscriptionPlan();\r\n } else if (this.confirmationModalFlag === 'change-cellular-plan') {\r\n this.updateCellularPlan();\r\n }\r\n }\r\n\r\n handleConfirmationModalAction() {\r\n if (this.confirmationModalFlag === 'upgrade-subscription') {\r\n this.currentSelectedPlanId = this.currentSelectedPlanIdCopy;\r\n this.currentSelectedPlanName = this.currentSelectedPlanNameCopy;\r\n this.closeConfirmationModal();\r\n } else if (this.confirmationModalFlag === 'change-cellular-plan') {\r\n this.currentSelectedCellularPlan = this.currentSelectedCellularPlanCopy;\r\n this.closeConfirmationModal();\r\n }\r\n }\r\n\r\n handleModalType(type: string, confirmationFlag?: string, value?: any) {\r\n this.modalType = type;\r\n if (type === 'confirmation-modal') {\r\n this.modalTitle = 'Warning!';\r\n if (confirmationFlag === 'change-subscription') {\r\n this.confirmationModalFlag = 'upgrade-subscription';\r\n this.confirmationModalLine1Content = `Are you sure you want to \r\n ${value && value.planSubscriptionName === SUBSCRIPTION_PLAN_ID.PREMIUM_ID ? 'downgrade' : 'upgrade'} \r\n the subscription plan for ${(this.customerDetails &&\r\n this.customerDetails.customerName ? this.customerDetails.customerName :\r\n this.customerDetails.customerFirstName + ' ' + this.customerDetails.customerLastName)}?`;\r\n this.confirmationModalLine2Content = `This \r\n ${value && value.planSubscriptionName === SUBSCRIPTION_PLAN_ID.PREMIUM_ID ? 'downgrade' : 'upgrade'} will begin a new 12 month subscription period.`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.currentSelectedPlanNameCopy = value.planSubscriptionName;\r\n this.currentSelectedPlanIdCopy = value.subscriptionPlanId;\r\n } else if (confirmationFlag === 'change-cellular-plan') {\r\n this.confirmationModalFlag = 'change-cellular-plan';\r\n this.confirmationModalLine1Content = `Are you sure you want to change \r\n the cellular plan for ${(this.customerDetails &&\r\n this.customerDetails.customerName ? this.customerDetails.customerName :\r\n this.customerDetails.customerFirstName + ' ' + this.customerDetails.customerLastName)}?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.currentSelectedCellularPlanCopy = value;\r\n }\r\n this.showConfirmationModal();\r\n }\r\n }\r\n\r\n showConfirmationModal() {\r\n this.isShowConfirmationModal = true;\r\n }\r\n\r\n closeConfirmationModal() {\r\n this.isShowConfirmationModal = false;\r\n }\r\n\r\n handleTabOnChange(value: string) {\r\n this.selectedSubscriptionTab = value;\r\n }\r\n\r\n handleRefreshPage() {\r\n this.emitHandleRefreshPage.emit();\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.tab-menus {\\n display: flex;\\n}\\n.tab-menus .tab-item {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n list-style: none;\\n font-size: 1.3rem;\\n font-weight: 600;\\n min-width: 15rem;\\n height: 4rem;\\n}\\n.tab-menus .tab-item .tab-item_content {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n height: 100%;\\n width: 100%;\\n cursor: pointer;\\n padding: 0rem 1.5rem;\\n}\\n.tab-menus .ta {\\n justify-content: left !important;\\n}\\n.tab-menus .tab-item:first-child .tab-item_content {\\n border-top-left-radius: 5rem;\\n border-bottom-left-radius: 5rem;\\n}\\n.tab-menus .tab-item:last-child .tab-item_content {\\n border-bottom-right-radius: 5rem;\\n border-top-right-radius: 5rem;\\n}\\n.tab-menus .selected-tab {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n cursor: default;\\n}\\n.tab-menus .guide-modal {\\n top: 5rem;\\n left: 0;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdGFicy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcdGFic1xcdGFicy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdGFicy9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy90YWJzL3RhYnMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREVBO0VBRUksYUFBQTtBRUFKO0FGRUk7RUFJSSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0VBR0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsWUFBQTtBRUxSO0FGT1E7RUFDSSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0FFTFo7QUZjSTtFQUNJLGdDQUFBO0FFWlI7QUZnQlE7RUFDSSw0QkFBQTtFQUNBLCtCQUFBO0FFZFo7QUZxQlE7RUFDSSxnQ0FBQTtFQUNBLDZCQUFBO0FFbkJaO0FGdUJJO0VBSUksYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxlQUFBO0FFeEJSO0FGK0JJO0VBQ0ksU0FBQTtFQUNBLE9BQUE7QUU3QlIiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy90YWJzL3RhYnMuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG4udGFiLW1lbnVzIHtcclxuICAgIC8vIGNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgIC50YWItaXRlbSB7XHJcbiAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5O1xyXG4gICAgICAgIC8vIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICAvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgLy8gcGFkZGluZzogMXJlbSAxLjVyZW07XHJcbiAgICAgICAgLy8gY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxNXJlbTtcclxuICAgICAgICBoZWlnaHQ6IDRyZW07XHJcblxyXG4gICAgICAgIC50YWItaXRlbV9jb250ZW50IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMHJlbSAxLjVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBcclxuXHJcbiAgICAgICAgLy8gLnRhYi1pY29uIHtcclxuICAgICAgICAvLyAgICAgZmlsbDogJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5O1xyXG4gICAgICAgIC8vIH1cclxuICAgIH1cclxuICAgIC50YSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAudGFiLWl0ZW06Zmlyc3QtY2hpbGQge1xyXG5cclxuICAgICAgICAudGFiLWl0ZW1fY29udGVudCB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVyZW07XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWItaXRlbTpsYXN0LWNoaWxkIHtcclxuICAgICAgICAvLyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcblxyXG4gICAgICAgIC50YWItaXRlbV9jb250ZW50IHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVyZW07XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0ZWQtdGFiIHtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItY2FkZXRibHVlLXByaW1hcnk7XHJcbiAgICAgICAgLy8gY29sb3I6ICRjb2xvci1ibGFjay1wcmltYXJ5O1xyXG4gICAgICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkICM3MUNFQ0E7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICBcclxuICAgICAgICAvLyAudGFiLWljb24ge1xyXG4gICAgICAgIC8vICAgICBmaWxsOiAkY29sb3ItYmxhY2stcHJpbWFyeTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5ndWlkZS1tb2RhbCB7XHJcbiAgICAgICAgdG9wOiA1cmVtO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbn0iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4udGFiLW1lbnVzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi50YWItbWVudXMgLnRhYi1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtaW4td2lkdGg6IDE1cmVtO1xuICBoZWlnaHQ6IDRyZW07XG59XG4udGFiLW1lbnVzIC50YWItaXRlbSAudGFiLWl0ZW1fY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDByZW0gMS41cmVtO1xufVxuLnRhYi1tZW51cyAudGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQgIWltcG9ydGFudDtcbn1cbi50YWItbWVudXMgLnRhYi1pdGVtOmZpcnN0LWNoaWxkIC50YWItaXRlbV9jb250ZW50IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXJlbTtcbn1cbi50YWItbWVudXMgLnRhYi1pdGVtOmxhc3QtY2hpbGQgLnRhYi1pdGVtX2NvbnRlbnQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVyZW07XG59XG4udGFiLW1lbnVzIC5zZWxlY3RlZC10YWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnRhYi1tZW51cyAuZ3VpZGUtbW9kYWwge1xuICB0b3A6IDVyZW07XG4gIGxlZnQ6IDA7XG59Il19 */\"","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\r\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport * as moment from 'moment';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { SharedService } from '../../services/shared.service';\r\n\r\n// Constants\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\nimport { BASE_URL_TYPES } from '../../constants/base-url-types.constant';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { SITE_NAME_CONSTANTS } from '../../constants/site-name.constant';\r\n\r\n@Component({\r\n selector: 'app-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.scss']\r\n})\r\nexport class TabsComponent implements OnInit, OnDestroy {\r\n\r\n @Input() currentPortal: string;\r\n selectedTab: string;\r\n // authTime: string;\r\n isShowGuidePopUp = false;\r\n roleConstants = ROLE_CONSTANTS;\r\n // firmName: string;\r\n siteTourTitle: string;\r\n siteTourContent: string;\r\n isFirstSiteTour = false;\r\n siteTourSlideNumber = 0;\r\n siteTourSubscription: Subscription;\r\n siteTourEnd: Subscription;\r\n showAlertIcon = false;\r\n siteTourData: any = [];\r\n sequence: any;\r\n searchCount = 5;\r\n SiteTourEnableorNot: Subscription;\r\n companyname: any;\r\n isShowUploadListModal = false;\r\n userExist: any = {\r\n consumerExist: true,\r\n technicianExist: true,\r\n sitename: ''\r\n }\r\n constructor(\r\n private router: Router,\r\n private helperService: HelperService,\r\n private sharedService: SharedService,\r\n private activatedRoute: ActivatedRoute,\r\n private cookieService: CookieService,\r\n ) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n const siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n this.userExist.sitename = siteName;\r\n if (siteName === SITE_NAME_CONSTANTS.KEENHOME_CHANNEL ||\r\n siteName === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR ||\r\n siteName === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n this.companyname = 'keenhome';\r\n }\r\n else {\r\n this.companyname = \"goodman\"\r\n }\r\n this.SiteTourEnableorNot = this.helperService.setListenerForSiteTourEnableorNot().subscribe(\r\n (response) => {\r\n console.log(\"k\")\r\n if (response.responseData && response.responseData.siteTour == 'Enabled') {\r\n this.setListenerForSiteTour();\r\n }\r\n else {\r\n this.checkUploadList()\r\n }\r\n }\r\n );\r\n\r\n this.helperService.setListenerForSelectedTab().subscribe(\r\n (data) => {\r\n this.selectedTab = data;\r\n }\r\n );\r\n\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.helperService.setSelectedTab(event && event.url && event.url.slice(1));\r\n }\r\n });\r\n\r\n // this.handleSiteTourNavigation();\r\n this.helperService.setSelectedTab(this.router.url.slice(1));\r\n //this.setListenerForLastLoginSubject();\r\n\r\n // this.activatedRoute.data.subscribe((data) => {\r\n // if (data) {\r\n // if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n // this.getContractorInformation();\r\n // }\r\n // }\r\n // });\r\n // this.getContractorInformation();\r\n this.getAlertNotifications();\r\n this.siteTourSubscription = this.helperService.setListenerForSiteTour().subscribe(\r\n (response) => {\r\n console.log(response);\r\n this.siteTourSlideNumber = this.siteTourData.length - 2;\r\n this.handleSiteTourNavigation();\r\n }\r\n );\r\n\r\n this.siteTourEnd = this.helperService.setListenerForSiteTourFinised().subscribe(response => {\r\n console.log(response)\r\n if (response == true) {\r\n this.closeGuidePopUp();\r\n }\r\n })\r\n this.helperService.BulkUploadPopupDisplay(\"true\");\r\n }\r\n getAlertNotifications() {\r\n this.helperService.setListnerForAlertNotification().subscribe(data => {\r\n this.showAlertIcon = data\r\n })\r\n }\r\n // getContractorInformation() {\r\n // this.sharedService.getContractorInformation((response, isError) => {\r\n // if (!isError) {\r\n // this.firmName = response.firmName ? response.firmName : response.contractorName;\r\n // // sessionStorage.setItem('firmname', response.firmName);\r\n // // if (response.logoUrls && response.logoUrls.length) {\r\n // // this.profileImageUrl = response.logoUrls[0];\r\n // // }\r\n // }\r\n // });\r\n // }\r\n handleTabOnChange(value: string) {\r\n // this.selectedTab = value;\r\n if (value === 'customers') {\r\n this.helperService.setSelectedSearchData('', 'customer', true);\r\n } else if (value === 'technicians') {\r\n this.helperService.setSelectedSearchData('', 'technician', true);\r\n } else if (value === 'installations') {\r\n this.helperService.setSelectedSearchData('', 'meli', true);\r\n } else if (value === 'dealers') {\r\n this.helperService.setSelectedSearchData('', 'contractor', true);\r\n } else if (value === 'properties') {\r\n this.helperService.setSelectedSearchData('', 'property', true);\r\n }\r\n this.helperService.setSelectedTab(value);\r\n // this.router.navigate(['/' + value]);\r\n }\r\n\r\n setListenerForLastLoginSubject() {\r\n\r\n this.sharedService.setListenerForLastLoginSubject().subscribe(\r\n (response) => {\r\n // if (response && response.responseData && response.responseData.lastLoggedInTime) {\r\n // this.handleCalculateLastLoggedTime(response.responseData.lastLoggedInTime);\r\n //this.setListenerForSiteTour();\r\n console.log(response)\r\n if (response.responseData && response.responseData.siteTour == 'Enabled') {\r\n this.setListenerForSiteTour();\r\n }\r\n // }\r\n }, (error) => {\r\n\r\n }\r\n );\r\n }\r\n\r\n // handleCalculateLastLoggedTime(time) {\r\n // const lastLoggedInTime = moment.utc(time).local();\r\n // const currentTime = moment(new Date());\r\n\r\n // if (currentTime.diff(lastLoggedInTime, 'years') === 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'years') + ' year';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'years') > 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'years') + ' years';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'months') === 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'months') + ' month';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'months') > 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'months') + ' months';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'days') === 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'days') + ' day';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'days') > 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'days') + ' days';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'hours') === 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'hours') + ' hour';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'hours') > 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'hours') + ' hours';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'minutes') === 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'minutes') + ' minute';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'minutes') > 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'minutes') + ' minutes';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'seconds') === 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'seconds') + ' second';\r\n // } else if (currentTime.diff(lastLoggedInTime, 'seconds') > 1) {\r\n // this.authTime = currentTime.diff(lastLoggedInTime, 'seconds') + ' seconds';\r\n // }\r\n // }\r\n\r\n handleSiteTourNavigation(type?: string) {\r\n if (type && type === COMMON_CONSTANTS.PAGINATION_PREVIOUS) {\r\n this.siteTourSlideNumber -= 1;\r\n } else if (type && type === COMMON_CONSTANTS.PAGINATION_NEXT) {\r\n this.siteTourSlideNumber += 1;\r\n }\r\n this.isShowGuidePopUp = true;\r\n this.isFirstSiteTour = false;\r\n //console.log(this.siteTourData[this.siteTourSlideNumber])\r\n this.siteTourTitle = this.siteTourData[this.siteTourSlideNumber].locator;\r\n this.siteTourContent = this.siteTourData[this.siteTourSlideNumber].description;\r\n this.sequence = this.siteTourData[this.siteTourSlideNumber].sequence;\r\n if (this.sequence == this.searchCount) {\r\n this.helperService.setSelectedSiteTour(this.siteTourData[this.siteTourSlideNumber]);\r\n this.closeGuidePopUp('next');\r\n }\r\n else if (this.sequence != this.searchCount) {\r\n let pageName = this.siteTourTitle.toLowerCase();\r\n this.handleTabOnChange(pageName);\r\n if (this.siteTourTitle == 'Alerts' || this.siteTourTitle == 'Installations') { this.isFirstSiteTour = true; }\r\n }\r\n\r\n\r\n\r\n // if (this.siteTourSlideNumber === 1) {\r\n // this.siteTourTitle = 'Alerts';\r\n // this.siteTourContent = COMMON_CONSTANTS.ALERTS_SITE_TOUR;\r\n // this.isFirstSiteTour = true;\r\n // this.handleTabOnChange('alerts');\r\n // } else if (this.siteTourSlideNumber === 2) {\r\n // this.siteTourTitle = 'Customers';\r\n // this.siteTourContent = COMMON_CONSTANTS.CUSTOMERS_SITE_TOUR;\r\n // this.handleTabOnChange('customers');\r\n // } else if (this.siteTourSlideNumber === 3) {\r\n // this.siteTourTitle = 'Inventory';\r\n // this.siteTourContent = COMMON_CONSTANTS.INVENTORY_SITE_TOUR;\r\n // this.handleTabOnChange('inventory');\r\n // } else if (this.siteTourSlideNumber === 4) {\r\n // this.siteTourTitle = 'Technicians';\r\n // this.siteTourContent = COMMON_CONSTANTS.TECHNICIANS_SITE_TOUR;\r\n // this.handleTabOnChange('technicians');\r\n // } else if (this.siteTourSlideNumber === 5) {\r\n // this.helperService.setSelectedSiteTour('Search');\r\n // this.closeGuidePopUp();\r\n // }\r\n\r\n\r\n\r\n\r\n }\r\n\r\n setListenerForSiteTour() {\r\n let payload = {};\r\n const isRememberMeChecked = localStorage.getItem('isRememberMeChecked');\r\n\r\n\r\n // if (isRememberMeChecked === 'true') {\r\n // payload = {\r\n // userName: this.cookieService.get('username'),\r\n // userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID),\r\n // portalTypeId: this.helperService.handlePortalType(),\r\n // brandName: this.companyname\r\n // };\r\n // } else {\r\n payload = {\r\n userName: localStorage.getItem('userName'),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID),\r\n portalTypeId: this.helperService.handlePortalType(),\r\n brandName: this.companyname\r\n\r\n };\r\n // }\r\n this.sharedService.getSiteTourData(payload).subscribe(\r\n (response) => {\r\n this.siteTourData = response.responseData;\r\n this.handleSiteTourNavigation();\r\n this.searchCount = this.siteTourData.length;\r\n //console.log(this.searchCount)\r\n });\r\n }\r\n // setListenerForSiteTour() {\r\n // this.siteTourSubscription = this.helperService.setListenerForSiteTour().subscribe(\r\n // (response) => {\r\n // console.log(response)\r\n // debugger\r\n // this.isShowGuidePopUp = true;\r\n // this.siteTourSlideNumber = 4;\r\n // this.handleSiteTourNavigation();\r\n // }\r\n // );\r\n // }\r\n\r\n closeGuidePopUp(type?: string) {\r\n if (type != 'next') {\r\n const payload = {\r\n userName: localStorage.getItem('userName'),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n this.sharedService.SiteTourComplete(payload).subscribe(\r\n response => {\r\n console.log(response);\r\n if (this.currentPortal == ROLE_CONSTANTS.CHANNEL) {\r\n this.helperService.setSelectedTab('installations');\r\n this.router.navigate(['/installations']);\r\n }\r\n else {\r\n this.helperService.setSelectedTab('alerts');\r\n this.router.navigate(['/alerts']);\r\n }\r\n\r\n }\r\n );\r\n this.checkUploadList();\r\n }\r\n\r\n this.isShowGuidePopUp = false;\r\n\r\n }\r\n\r\n toggleUploadListModal() {\r\n this.isShowUploadListModal = !this.isShowUploadListModal;\r\n if(this.isShowUploadListModal)\r\n {\r\n this.helperService.BulkUploadPopupDisplay(\"true\");\r\n }\r\n else\r\n {\r\n this.helperService.BulkUploadPopupDisplay(\"false\");\r\n\r\n }\r\n }\r\n\r\n checkUploadList() {\r\n if (this.userExist.sitename === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR || this.userExist.sitename === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n this.getListStatus();\r\n //this.isShowUploadListModal = true;\r\n // this.modaltext=\"For the best experience, download the Customer Template and upload your entire customer list. You can always add new customers manually by visiting the Customers tab.\"\r\n }\r\n }\r\n\r\n\r\n getListStatus() {\r\n this.sharedService.getUserExistStatus().subscribe(\r\n (response: any) => {\r\n if (response['responseData']) {\r\n console.log(response['responseData']);\r\n this.userExist.consumerExist = response['responseData']['consumerExist'];\r\n this.userExist.technicianExist = response['responseData']['technicianExist'];\r\n if (this.userExist.consumerExist == false || this.userExist.technicianExist == false) {\r\n this.isShowUploadListModal = true\r\n this.helperService.BulkUploadPopupDisplay(\"true\");\r\n }\r\n else\r\n {\r\n this.helperService.BulkUploadPopupDisplay(\"false\");\r\n }\r\n }\r\n })\r\n\r\n }\r\n ngOnDestroy() {\r\n this.siteTourSubscription.unsubscribe();\r\n this.siteTourEnd.unsubscribe();\r\n this.SiteTourEnableorNot.unsubscribe();\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.toaster {\\n position: absolute;\\n top: 5rem;\\n left: 0;\\n right: 0;\\n width: -webkit-max-content;\\n width: -moz-max-content;\\n width: max-content;\\n max-width: 50%;\\n text-align: center;\\n padding: 0.7rem 1rem;\\n margin: auto;\\n z-index: 99999999;\\n border-radius: 3px;\\n color: #000000;\\n font-size: 1.6rem;\\n word-break: break-word;\\n}\\n.toaster_success {\\n background-color: #9bea4f;\\n}\\n.toaster_warning {\\n background-color: #ffc06a;\\n}\\n.toaster_error {\\n background-color: #dd4b4b;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdG9hc3Rlci9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxhcHBcXHNoYXJlZFxcY29tcG9uZW50c1xcdG9hc3RlclxcdG9hc3Rlci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdG9hc3Rlci9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvc3JjXFxzdHlsZXNoZWV0c1xcX3ZhcmlhYmxlcy5zY3NzIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy90b2FzdGVyL3RvYXN0ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREVBO0VBQ0ksa0JBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSwwQkFBQTtFQUFBLHVCQUFBO0VBQUEsa0JBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsY0NYa0I7RURZbEIsaUJBQUE7RUFDQSxzQkFBQTtBRUNKO0FGQ0k7RUFDSSx5QkNXb0I7QUNWNUI7QUZFSTtFQUNJLHlCQ0tlO0FDTHZCO0FGR0k7RUFDSSx5QkM2Qlk7QUM5QnBCIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdG9hc3Rlci90b2FzdGVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuQGltcG9ydCAnc3JjL3N0eWxlc2hlZXRzL3ZhcmlhYmxlcy5zY3NzJztcclxuLnRvYXN0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1cmVtO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHotaW5kZXg6IDk5OTk5OTk5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgY29sb3I6ICRjb2xvci1ibGFjay1wcmltYXJ5O1xyXG4gICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG5cclxuICAgICZfc3VjY2VzcyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk7XHJcbiAgICB9XHJcblxyXG4gICAgJl93YXJuaW5nIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itb3JhbmdlLXByaW1hcnk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9lcnJvciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXJlZC1wcmltYXJ5O1xyXG4gICAgICAgIC8vIGNvbG9yOiAkY29sb3Itd2hpdGUtcHJpbWFyeTtcclxuICAgIH1cclxufSIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi50b2FzdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDVyZW07XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDk5OTk5OTk5O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cbi50b2FzdGVyX3N1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWJlYTRmO1xufVxuLnRvYXN0ZXJfd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMwNmE7XG59XG4udG9hc3Rlcl9lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDRiNGI7XG59Il19 */\"","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-toaster',\r\n templateUrl: './toaster.component.html',\r\n styleUrls: ['./toaster.component.scss']\r\n})\r\nexport class ToasterComponent implements OnInit {\r\n\r\n @Input() type: string;\r\n @Input() message: string;\r\n // showToaster = true;\r\n toasterClass = 'toaster_success';\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n // const self = this;\r\n\r\n if (this.type === 'success') {\r\n this.toasterClass = 'toaster_success';\r\n } else if (this.type === 'warning') {\r\n this.toasterClass = 'toaster_warning';\r\n } else if (this.type === 'error') {\r\n this.toasterClass = 'toaster_error';\r\n }\r\n\r\n // setTimeout(() => {\r\n // self.showToaster = false;\r\n // }, 5000);\r\n }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.transfer-delete-account-modal_wrapper .modal-content {\\n width: 700px;\\n}\\n.transfer-delete-account-modal_wrapper .mr80 {\\n margin-right: 8rem;\\n}\\n.transfer-delete-account-modal_wrapper .modal-body {\\n padding: 2rem 4rem;\\n}\\n.transfer-delete-account-modal_wrapper .modal-footer {\\n border-top: 0.05rem solid #707070;\\n padding: 2rem 0rem;\\n margin: 0rem 4rem;\\n}\\n.transfer-delete-account-modal_wrapper .navigation_wrapper .tab-item {\\n width: 12rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdHJhbnNmZXItZGVsZXRlLWFjY291bnQvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXHRyYW5zZmVyLWRlbGV0ZS1hY2NvdW50XFx0cmFuc2Zlci1kZWxldGUtYWNjb3VudC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdHJhbnNmZXItZGVsZXRlLWFjY291bnQvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdHJhbnNmZXItZGVsZXRlLWFjY291bnQvdHJhbnNmZXItZGVsZXRlLWFjY291bnQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBREtJO0VBQ0ksWUFBQTtBRUZSO0FGS0k7RUFDSSxrQkFBQTtBRUhSO0FGTUk7RUFDSSxrQkFBQTtBRUpSO0FGT0k7RUFDSSxpQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QUVMUjtBRlVRO0VBQ0UsWUFBQTtBRVJWIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdHJhbnNmZXItZGVsZXRlLWFjY291bnQvdHJhbnNmZXItZGVsZXRlLWFjY291bnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AaW1wb3J0ICdzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3MnO1xyXG5cclxuLnRyYW5zZmVyLWRlbGV0ZS1hY2NvdW50LW1vZGFsX3dyYXBwZXIge1xyXG5cclxuICAgIC5tb2RhbC1jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogNzAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1yODAge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogOHJlbTtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogMnJlbSA0cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5tb2RhbC1mb290ZXIge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDAuMDVyZW0gc29saWQgJGNvbG9yLWdyYXktNTtcclxuICAgICAgICBwYWRkaW5nOiAycmVtIDByZW07XHJcbiAgICAgICAgbWFyZ2luOiAwcmVtIDRyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmlnYXRpb25fd3JhcHBlciB7XHJcbiAgICBcclxuICAgICAgICAudGFiLWl0ZW0ge1xyXG4gICAgICAgICAgd2lkdGg6IDEycmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLnRyYW5zZmVyLWRlbGV0ZS1hY2NvdW50LW1vZGFsX3dyYXBwZXIgLm1vZGFsLWNvbnRlbnQge1xuICB3aWR0aDogNzAwcHg7XG59XG4udHJhbnNmZXItZGVsZXRlLWFjY291bnQtbW9kYWxfd3JhcHBlciAubXI4MCB7XG4gIG1hcmdpbi1yaWdodDogOHJlbTtcbn1cbi50cmFuc2Zlci1kZWxldGUtYWNjb3VudC1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IHtcbiAgcGFkZGluZzogMnJlbSA0cmVtO1xufVxuLnRyYW5zZmVyLWRlbGV0ZS1hY2NvdW50LW1vZGFsX3dyYXBwZXIgLm1vZGFsLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDAuMDVyZW0gc29saWQgIzcwNzA3MDtcbiAgcGFkZGluZzogMnJlbSAwcmVtO1xuICBtYXJnaW46IDByZW0gNHJlbTtcbn1cbi50cmFuc2Zlci1kZWxldGUtYWNjb3VudC1tb2RhbF93cmFwcGVyIC5uYXZpZ2F0aW9uX3dyYXBwZXIgLnRhYi1pdGVtIHtcbiAgd2lkdGg6IDEycmVtO1xufSJdfQ== */\"","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Model\r\nimport { CommonSuccessResponse, IsEmailAlreadyExistsResponse } from 'src/app/shared/models/common.model';\r\nimport { Router } from '@angular/router';\r\nimport { window } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-transfer-delete-account',\r\n templateUrl: './transfer-delete-account.component.html',\r\n styleUrls: ['./transfer-delete-account.component.scss']\r\n})\r\nexport class TransferDeleteAccountComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n transferAccForm: FormGroup;\r\n deleteAccForm: FormGroup;\r\n selectedTab = 'transfer-account';\r\n isTransferAccLoading = false;\r\n isDeleteAccLoading = false;\r\n isShowEmailAlreadyExistsMsg = false;\r\n\r\n constructor(\r\n private helperService: HelperService,\r\n private sharedService: SharedService,\r\n private router: Router,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.transferAccForm = new FormGroup(\r\n {\r\n reciepientsName: new FormControl('', Validators.required),\r\n reciepientsEmail: new FormControl('', [Validators.required, this.helperService.validateIsEmail]),\r\n }\r\n );\r\n this.deleteAccForm = new FormGroup(\r\n {\r\n confirmDelete: new FormControl(''),\r\n }\r\n );\r\n }\r\n\r\n handleTransferAccount() {\r\n const queryParam = {\r\n email: this.transferAccForm.get('reciepientsEmail') &&\r\n this.transferAccForm.get('reciepientsEmail').value,\r\n recipientName: this.transferAccForm.get('reciepientsName') &&\r\n this.transferAccForm.get('reciepientsName').value,\r\n };\r\n this.isTransferAccLoading = true;\r\n this.sharedService.transferAccount(queryParam).subscribe(\r\n (response: IsEmailAlreadyExistsResponse) => {\r\n this.isTransferAccLoading = false;\r\n if (response && response.isEmailAlreadyExistsResponseDetails &&\r\n response.isEmailAlreadyExistsResponseDetails.isExists) {\r\n this.isShowEmailAlreadyExistsMsg = true;\r\n } else {\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.statusInfo);\r\n this.closeModal();\r\n this.handleLogout();\r\n }\r\n }, (error) => {\r\n this.isTransferAccLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleDeleteAccount() {\r\n this.isDeleteAccLoading = true;\r\n this.sharedService.deleteAccount().subscribe(\r\n (response: CommonSuccessResponse) => {\r\n this.isDeleteAccLoading = false;\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.statusInfo);\r\n this.closeModal();\r\n this.handleLogout();\r\n }, (error) => {\r\n this.isDeleteAccLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleLogout() {\r\n this.helperService.setValueForIsAlreadyIdleTimeRunning(false);\r\n // localStorage.clear();\r\n // this.router.navigate(['/login']);\r\n // const queryParams = {};\r\n const queryParams = this.helperService.handleParseLogoutQueryParam();\r\n // this.sharedService.handleLogout(queryParams).subscribe(\r\n // (response) => {\r\n this.helperService.handleLogoutAPISuccessResponse();\r\n // }, (error) => {\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n }\r\n\r\n resetEmailErrorMsg() {\r\n this.isShowEmailAlreadyExistsMsg = false;\r\n }\r\n\r\n handleTabOnChange(value: string) {\r\n this.selectedTab = value;\r\n }\r\n\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n\r\n","module.exports = \"/* stylelint-disable */\\n.uploadList-modal_wrapper .modal-content {\\n width: 700px;\\n margin: 0 auto;\\n top: 25%;\\n margin-top: 12%;\\n}\\n.uploadList-modal_wrapper .download-template_btn {\\n font-size: 12px;\\n margin-top: 1.5rem;\\n width: -webkit-fit-content;\\n width: -moz-fit-content;\\n width: fit-content;\\n display: flex;\\n align-items: center;\\n padding: 0.8rem 2rem;\\n border-radius: 5rem;\\n margin-right: 1rem;\\n cursor: pointer;\\n}\\n.uploadList-modal_wrapper .upload-customer-file-btn {\\n font-size: 12px;\\n margin-top: 1.5rem;\\n display: flex;\\n width: -webkit-fit-content;\\n width: -moz-fit-content;\\n width: fit-content;\\n align-items: center;\\n padding: 0.8rem 2rem;\\n border-radius: 5rem;\\n}\\n.uploadList-modal_wrapper .app-modal-header {\\n color: #E1E5E9 !important;\\n}\\n.uploadList-modal_wrapper .mr80 {\\n margin-right: 8rem;\\n}\\n.uploadList-modal_wrapper .modal-body {\\n margin-left: 3rem;\\n margin-right: 3rem;\\n padding: 2rem 4rem;\\n}\\n.uploadList-modal_wrapper .modal-footer {\\n border-top: 0.05rem solid #707070;\\n padding: 2rem 0rem;\\n margin: 0rem 4rem;\\n}\\n.uploadList-modal_wrapper .styled-select {\\n padding: 0.8rem 3rem 0.8rem 0.9rem;\\n}\\n.uploadList-modal_wrapper .error {\\n border: 0.1rem solid #DD4B4B;\\n}\\n.uploadList-modal_wrapper .error-message {\\n color: #DD4B4B;\\n font-size: 1.3rem;\\n text-align: right;\\n}\\n.uploadList-modal_wrapper .link {\\n color: #E1E5E9;\\n}\\n.uploadList-modal_wrapper .mt32 {\\n margin-top: 3.2rem;\\n}\\n.uploadList-modal_wrapper .borderinfo {\\n border-top: 0.5px solid rgba(112, 112, 112, 0.5);\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdXBsb2FkLWxpc3QtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXHVwbG9hZC1saXN0LW1vZGFsXFx1cGxvYWQtbGlzdC1tb2RhbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvdXBsb2FkLWxpc3QtbW9kYWwvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3N0ZGluIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy91cGxvYWQtbGlzdC1tb2RhbC91cGxvYWQtbGlzdC1tb2RhbC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQ0lHO0VBQ0ssWUFBQTtFQUNBLGNBQUE7RUFDSixRQUFBO0VBQ0EsZUFBQTtBQ0ZKO0FES1E7RUFDSSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSwwQkFBQTtFQUFBLHVCQUFBO0VBQUEsa0JBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFFQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0FDSlo7QURPUTtFQUNJLGVBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSwwQkFBQTtFQUFBLHVCQUFBO0VBQUEsa0JBQUE7RUFDQSxtQkFBQTtFQUVBLG9CQUFBO0VBQ0EsbUJBQUE7QUNOWjtBRFVBO0VBQ0kseUJBQUE7QUNSSjtBRFdJO0VBQ0ksa0JBQUE7QUNUUjtBRFlJO0VBQ0ksaUJBQUE7RUFDSixrQkFBQTtFQUNJLGtCQUFBO0FDVlI7QURhSztFQUNHLGlDQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBQ1hSO0FEY0k7RUFDSSxrQ0FBQTtBQ1pSO0FEZUk7RUFDSSw0QkFBQTtBQ2JSO0FEcUJJO0VBQ0ksY0FBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7QUNuQlI7QURzQkk7RUFDSSxjQUFBO0FDcEJSO0FEd0JJO0VBQ0ksa0JBQUE7QUN0QlI7QUR5Qkk7RUFDSSxnREFBQTtBQ3ZCUiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL3VwbG9hZC1saXN0LW1vZGFsL3VwbG9hZC1saXN0LW1vZGFsLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cclxuLy8gY29sb3JzXHJcblxyXG4kY29sb3ItYmxhY2stcHJpbWFyeTogIzAwMDAwMDtcclxuJGNvbG9yLWJsYWNrLXNlY29uZGFyeTogIzEyMTYxZTtcclxuJGNvbG9yLWJsYWNrLTM6ICMxNjFhMjE7XHJcbiRjb2xvci1ibGFjay00OiAjMDcwNzA3O1xyXG4kY29sb3ItYmxhY2stNTogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kY29sb3ItYmxhY2stNjogIzE0MTgyMTtcclxuJGNvbG9yLWJsYWNrLTc6ICMxMzEzMTM7XHJcblxyXG4kY29sb3Itd2hpdGUtcHJpbWFyeTogI2ZmZmZmZjtcclxuJGNvbG9yLXdoaXRlLXNlY29uZGFyeTogI2Y0ZjRmNDtcclxuJGNvbG9yLXdoaXRlLTM6ICNmNmY4ZmI7XHJcbiRjb2xvci13aGl0ZS00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcwNTg4KTtcclxuXHJcbiRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS1zZWNvbmRhcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtMzogIzg0YzRiZjtcclxuJGNvbG9yLWNhZGV0Ymx1ZS00OiAjNWRkYWQxO1xyXG5cclxuJGNvbG9yLWRhcmstYmx1ZS1wcmltYXJ5OiAjMjQyYTM0O1xyXG4kY29sb3ItZGFyay1ibHVlLXNlY29uZGFyeTogIzJhMzM0MztcclxuXHJcbiRjb2xvci1ibHVlLXNlY29uZGFyeTogIzAwMzM1OTtcclxuJGNvbG9yLWJsdWUtNDogIzQ2NGY1ZDtcclxuJGNvbG9yLWJsdWUtODogIzAwNDE2YjtcclxuXHJcbiRjb2xvci1vcmFuZ2UtcHJpbWFyeTogI2ZmYzA2YTtcclxuXHJcbiRjb2xvci1saWdodC1ncmVlbi1wcmltYXJ5OiAjOWJlYTRmO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tc2Vjb25kYXJ5OiAjYWZkMjhkO1xyXG4kY29sb3ItbGlnaHQtZ3JlZW4tdGVybmFyeTogIzg1Yzk0MztcclxuXHJcbiRjb2xvci1kYXJrLWdyZWVuLXByaW1hcnk6ICMxMzYzNjM7XHJcblxyXG4kY29sb3ItZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZGFyay1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1ncmF5LXNlY29uZGFyeTogIzRkNGY1YztcclxuJGNvbG9yLWdyYXktdGVybmFyeTogIzk3OTA5MDtcclxuJGNvbG9yLWdyYXktNDogIzk3OTc5NztcclxuJGNvbG9yLWdyYXktNTogIzcwNzA3MDtcclxuJGNvbG9yLWdyYXktNjogI2E1YTVhNTtcclxuJGNvbG9yLWdyYXktNzogI2FhYWFhYTtcclxuJGNvbG9yLWdyYXktODogI2M0YzRjNDtcclxuJGNvbG9yLWdyYXktOTogI2UzZTNlMztcclxuJGNvbG9yLWdyYXktMTA6ICM5MDkwOTA7XHJcbiRjb2xvci1saWdodC1ncmF5LXByaW1hcnk6ICNjZWNlY2U7XHJcbiRjb2xvci1saWdodC1ncmF5LTI6ICNlNmU2ZTY7XHJcblxyXG4kY29sb3ItYXRoZW5zZ3JheS1wcmltYXJ5OiAjZTllOWYwO1xyXG4kY29sb3ItYXRoZW5zZ3JheS0yOiAjZDZkNmQ2O1xyXG5cclxuJGNvbG9yLXZpb2xldC1wcmltYXJ5OiAjNDM0MjVkO1xyXG4kY29sb3ItdmlvbGV0LTI6ICNiY2JjY2I7XHJcblxyXG4kY29sb3ItcmVkLXByaW1hcnk6ICNkZDRiNGI7XHJcbiRjb2xvci1yZWQtc2Vjb25kYXJ5OiAjZmY3MjcyO1xyXG5cclxuJGNvbG9yLXBpbmstcHJpbWFyeTogI2YyNDc2NjtcclxuXHJcbiRjb2xvci1ibHVlLXByaW1hcnk6ICMyNjk5ZmI7XHJcbiRjb2xvci1ibHVlLXRlcm5hcnk6ICMwMGI3YTU7XHJcbiRjb2xvci1ibHVlLTI6ICM0ZDY2OTg7XHJcbiRjb2xvci1ibHVlLTM6ICMwMzM1OTg7XHJcbiRjb2xvci1ibHVlLTU6ICMwMDMzOTU7XHJcbiRjb2xvci1ibHVlLTY6ICM5MGM1ZTY7XHJcbiRjb2xvci1ibHVlLTc6ICNkY2U1ZWU7XHJcbiRjb2xvci1ibHVlLTk6ICM5MGM1ZTc7XHJcbiRjb2xvci1ibHVlLTEwOiAjMDBhNmUyO1xyXG5cclxuJGNvbG9yLXllbGxvdy1wcmltYXJ5OiAjZjg5MzA4O1xyXG4kY29sb3Itb3JhbmdlLXNlY29uZGFyeTogI2ZmOWMxNDtcclxuXHJcbi8vIHRoZW1lXHJcblxyXG4kY29sb3ItY3JpbXNvbjogI2Y5MWIwZTtcclxuJGNvbG9yLXBpbms6ICNmZjY3YTE7XHJcbiRjb2xvci12aW9sZXQ6ICNiNzAwZTk7XHJcbiRjb2xvci1pbmRpZ286ICM4NzIyZmY7XHJcbiRjb2xvci1ibHVlOiAjMGViYWY5O1xyXG4kY29sb3ItZm9yZXN0OiAjMDBhNzRhO1xyXG4kY29sb3ItZ3JlZW46ICM1OWNmMDA7XHJcbiRjb2xvci1nb2xkOiAjZmZkMjAyO1xyXG4kY29sb3Itb3JhbmdlOiAjZmY4NzA2O1xyXG5cclxuLy8gZm9udHNcclxuXHJcbiRmb250LXBhdGg6IFwic3JjL2Fzc2V0cy9mb250c1wiO1xyXG5cclxuJGZvbnQtbmFtZS1vcGVuc2FuczogXCJvcGVuc2Fuc1wiO1xyXG4kZm9udC1uYW1lLW9wZW5zYW5zLWxpZ2h0OiBcIm9wZW5zYW5zLWxpZ2h0XCI7XHJcblxyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2FuczogJy9vcGVuc2Fucy1yZWd1bGFyLnR0Zic7XHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zLWxpZ2h0OiAnL29wZW5zYW5zLWxpZ2h0LnR0Zic7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCJTb3VyY2VTYW5zUHJvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIi9Tb3VyY2VTYW5zUHJvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCJTb3VyY2VTYW5zUHJvLUJvbGRcIjtcclxuJGZvbnQtZmlsZW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIi9Tb3VyY2VTYW5zUHJvLUJvbGQudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLUxhdG8tUmVndWxhcjogXCJMYXRvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtTGF0by1SZWd1bGFyOiBcIi9MYXRvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1uYW1lLVJvYm90by1SZWd1bGFyOiBcIlJvYm90by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVJvYm90by1SZWd1bGFyOiBcIi9Sb2JvdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LXNpemUtZGVmYXVsdDogMS42cmVtO1xyXG4kZm9udC1zaXplLWhlYWRpbmc6IDEuNXJlbTtcclxuJGZvbnQtc2l6ZS10YWJzOiAxLjRyZW07XHJcbiRmb250LXNpemUtc3VidGl0bGU6IDJyZW07XHJcblxyXG4vLyBpbWFnZXNcclxuXHJcbiRpbWFnZS1wYXRoOiBcInNyYy9hc3NldHMvaW1hZ2VzXCI7XHJcbiIsIkBpbXBvcnQgJ3NyYy9zdHlsZXNoZWV0cy92YXJpYWJsZXMuc2Nzcyc7XHJcblxyXG4udXBsb2FkTGlzdC1tb2RhbF93cmFwcGVyIHtcclxuXHJcbiAgIC5tb2RhbC1jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogNzAwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB0b3A6IDI1JTtcclxuICAgIG1hcmdpbi10b3A6IDEyJTtcclxuICAgIH1cclxuXHJcbiAgICAgICAgLmRvd25sb2FkLXRlbXBsYXRlX2J0biB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xyXG4gICAgICAgICAgICB3aWR0aCA6Zml0LWNvbnRlbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgICAgICAgcGFkZGluZzogMC44cmVtIDJyZW07XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnVwbG9hZC1jdXN0b21lci1maWxlLWJ0biB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB3aWR0aCA6Zml0LWNvbnRlbnQ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jYWRldGJsdWUtcHJpbWFyeTtcclxuICAgICAgICAgICAgcGFkZGluZzogMC44cmVtIDJyZW07XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVyZW07XHJcbiAgICAgICAgICAgIC8vIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4uYXBwLW1vZGFsLWhlYWRlcntcclxuICAgIGNvbG9yOiAjRTFFNUU5ICFpbXBvcnRhbnQ7XHJcbiAgICBcclxufVxyXG4gICAgLm1yODAge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogOHJlbTtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtYm9keSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDNyZW07XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW07XHJcbiAgICAgICAgcGFkZGluZzogMnJlbSA0cmVtO1xyXG4gICAgfVxyXG5cclxuICAgICAubW9kYWwtZm9vdGVyIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICRjb2xvci1ncmF5LTU7XHJcbiAgICAgICAgcGFkZGluZzogMnJlbSAwcmVtO1xyXG4gICAgICAgIG1hcmdpbjogMHJlbSA0cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdHlsZWQtc2VsZWN0IHtcclxuICAgICAgICBwYWRkaW5nOiAwLjhyZW0gM3JlbSAwLjhyZW0gMC45cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5lcnJvciB7XHJcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI0RENEI0QjtcclxuICAgICAgICBcclxuICAgIH1cclxuXHJcbiAgICAuYmxhbmsge1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIC5lcnJvci1tZXNzYWdlIHtcclxuICAgICAgICBjb2xvcjojREQ0QjRCO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC5saW5rIHtcclxuICAgICAgICBjb2xvcjojRTFFNUU5O1xyXG4gICAgICAgIDtcclxuICAgIH1cclxuXHJcbiAgICAubXQzMiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMy4ycmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5ib3JkZXJpbmZvIHtcclxuICAgICAgICBib3JkZXItdG9wOjAuNXB4IHNvbGlkIHJnYmEoMTEyLCAxMTIsIDExMiwgMC41KTtcclxuICAgIH1cclxufSIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4udXBsb2FkTGlzdC1tb2RhbF93cmFwcGVyIC5tb2RhbC1jb250ZW50IHtcbiAgd2lkdGg6IDcwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdG9wOiAyNSU7XG4gIG1hcmdpbi10b3A6IDEyJTtcbn1cbi51cGxvYWRMaXN0LW1vZGFsX3dyYXBwZXIgLmRvd25sb2FkLXRlbXBsYXRlX2J0biB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOHJlbSAycmVtO1xuICBib3JkZXItcmFkaXVzOiA1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi51cGxvYWRMaXN0LW1vZGFsX3dyYXBwZXIgLnVwbG9hZC1jdXN0b21lci1maWxlLWJ0biB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOHJlbSAycmVtO1xuICBib3JkZXItcmFkaXVzOiA1cmVtO1xufVxuLnVwbG9hZExpc3QtbW9kYWxfd3JhcHBlciAuYXBwLW1vZGFsLWhlYWRlciB7XG4gIGNvbG9yOiAjRTFFNUU5ICFpbXBvcnRhbnQ7XG59XG4udXBsb2FkTGlzdC1tb2RhbF93cmFwcGVyIC5tcjgwIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cmVtO1xufVxuLnVwbG9hZExpc3QtbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDNyZW07XG4gIHBhZGRpbmc6IDJyZW0gNHJlbTtcbn1cbi51cGxvYWRMaXN0LW1vZGFsX3dyYXBwZXIgLm1vZGFsLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDAuMDVyZW0gc29saWQgIzcwNzA3MDtcbiAgcGFkZGluZzogMnJlbSAwcmVtO1xuICBtYXJnaW46IDByZW0gNHJlbTtcbn1cbi51cGxvYWRMaXN0LW1vZGFsX3dyYXBwZXIgLnN0eWxlZC1zZWxlY3Qge1xuICBwYWRkaW5nOiAwLjhyZW0gM3JlbSAwLjhyZW0gMC45cmVtO1xufVxuLnVwbG9hZExpc3QtbW9kYWxfd3JhcHBlciAuZXJyb3Ige1xuICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjREQ0QjRCO1xufVxuLnVwbG9hZExpc3QtbW9kYWxfd3JhcHBlciAuZXJyb3ItbWVzc2FnZSB7XG4gIGNvbG9yOiAjREQ0QjRCO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4udXBsb2FkTGlzdC1tb2RhbF93cmFwcGVyIC5saW5rIHtcbiAgY29sb3I6ICNFMUU1RTk7XG59XG4udXBsb2FkTGlzdC1tb2RhbF93cmFwcGVyIC5tdDMyIHtcbiAgbWFyZ2luLXRvcDogMy4ycmVtO1xufVxuLnVwbG9hZExpc3QtbW9kYWxfd3JhcHBlciAuYm9yZGVyaW5mbyB7XG4gIGJvcmRlci10b3A6IDAuNXB4IHNvbGlkIHJnYmEoMTEyLCAxMTIsIDExMiwgMC41KTtcbn0iXX0= */\"","import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild, OnDestroy } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport * as moment from 'moment';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { environment as channelEnvironment } from 'projects/channel/src/environments/environment';\r\nimport { environment as mduEnvironment } from 'projects/mdu/src/environments/environment';\r\nimport { ROLE_CONSTANTS } from '../../constants/role.constant';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { COMMON_CONSTANTS, DOWNLOAD_TEMPLATE_FILE_NAME, UPLOAD_TEMPLATE_NAMES } from '../../constants/commom.constant';\r\nimport { CustomerService } from 'projects/contractor/src/app/modules/customer/services/customer.service';\r\nimport { ContractorSharedService } from 'projects/contractor/src/app/shared-contractor/services/shared.service';\r\nimport { UploadProperyListResponse, uploadSuccessResponse } from '../../models/properties.model';\r\nimport { TechnicianService } from 'src/app/modules/technician/services/technician.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-upload-list-modal',\r\n templateUrl: './upload-list-modal.component.html',\r\n styleUrls: ['./upload-list-modal.component.scss']\r\n})\r\nexport class UploadListModalComponent implements OnInit {\r\n @ViewChild('customerBulkUpload', { static: false }) customerBulkUpload: ElementRef;\r\n @ViewChild('technicianBulkUpload', { static: false }) technicianBulkUpload: ElementRef;\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() modalInfo: any;\r\n isTechModal = false;\r\n errorFileName: string;\r\n selectedFile: any;\r\n fileType: any;\r\n uploadCustomerFileLoading: boolean = false;\r\n uploadTechnicianFileLoading: boolean = false;\r\n modalType: string;\r\n confirmationModalLine1Content: any;\r\n confirmationModalLine2Content: any;\r\n confirmationModalLine3Content: any;\r\n errorCount: number;\r\n confirmationModalEmitterFlag: any;\r\n isConfirmationModalHasYesOrNoButton: boolean;\r\n isSuccessToasterModal: boolean;\r\n isForUploadError: boolean;\r\n isShowInfoModal: any[]=[];\r\n data: any = {};\r\n custModal: boolean = false;\r\n techModal: boolean = false;\r\n modalContent: string;\r\n portalName: any;\r\n uploadStatusTimeInterval: NodeJS.Timer;\r\n uploadTechStatusTimeInterval: any;\r\n arraytemplate: any[]=[];\r\n uploadCustomerText = \"Upload Customer File\";\r\n uploadTechinicanText = \"Upload Technician File\";\r\n constructor(\r\n private router: Router,\r\n private customerService: CustomerService,\r\n private technicianService: TechnicianService,\r\n private helperService: HelperService,\r\n private contractorSharedService: ContractorSharedService,\r\n private activatedRoute: ActivatedRoute,\r\n private sharedService: SharedService\r\n ) { }\r\n\r\n ngOnInit() {\r\n //console.log(this.router.url)\r\n this.arraytemplate=[];\r\n this.activatedRoute.data.subscribe((data) => {\r\n if (data) {\r\n this.portalName = data.portalName;\r\n }\r\n });\r\n\r\n if (this.modalInfo.sitename == 'keenhome-contractor') {\r\n if (this.modalInfo.consumerExist == false) {\r\n this.custModal = true;\r\n this.modalTitle = \"Upload Your Customer List\"\r\n this.modalContent = \"For the best experience, download the Customer Template and upload your entire customer list. You can always add new customers manually by visiting the Customers tab.\";\r\n this.fetchuploadStatus(\"cust\",UPLOAD_TEMPLATE_NAMES.CONSUMER);\r\n }\r\n else if (this.modalInfo.consumerExist == true) {\r\n this.onNextButtonClick();\r\n\r\n //this.fetchuploadStatus(\"cust\",UPLOAD_TEMPLATE_NAMES.CONTRACTOR_TECHNICIAN);\r\n }\r\n \r\n }\r\n\r\n else if (this.modalInfo.sitename == 'keenhome-mdu') {\r\n if (this.modalInfo.technicianExist == false) {\r\n this.custModal = false;\r\n this.techModal = true;\r\n this.modalTitle = \"Upload Your Technician List\"\r\n this.modalContent = \"Upload your technician CSV or add technicians manually by visiting your technicians list.\";\r\n this.fetchuploadStatus(\"cust\",UPLOAD_TEMPLATE_NAMES.MDU_TECHNICIAN);\r\n }\r\n else {\r\n this.closeModal()\r\n }\r\n }\r\n\r\n }\r\n onNextButtonClick() {\r\n if (this.modalInfo.technicianExist == false) {\r\n this.custModal = false;\r\n this.techModal = true;\r\n this.modalTitle = \"Upload Your Technician List\"\r\n this.modalContent = \"For the best experience, download the Technicians Template and upload your company’s technicians. You can always add new technicians manually by visiting the Technicians tab.\";\r\n this.fetchuploadStatus(\"tech\",UPLOAD_TEMPLATE_NAMES.CONTRACTOR_TECHNICIAN);\r\n }\r\n else {\r\n this.closeModal()\r\n }\r\n\r\n\r\n }\r\n handleButton(type, value?) {\r\n if (type == \"customer_template\") {\r\n this.downloadTemplate()\r\n }\r\n else if (type == \"technician_template\") {\r\n this.downloadTechnicianTemplate()\r\n }\r\n else if (type == \"nextbutton\") {\r\n this.onNextButtonClick();\r\n }\r\n else if (type == \"skipbutton\") {\r\n //this.onNextButtonClick();\r\n this.closeModal();\r\n }\r\n }\r\n\r\n\r\n downloadTemplate() {\r\n const queryParams = {\r\n filename: DOWNLOAD_TEMPLATE_FILE_NAME.CUSTOMER\r\n };\r\n this.sharedService.downloadTemplate(queryParams).subscribe(\r\n (response) => {\r\n const blob = new Blob([response], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,' });\r\n const a: any = document.createElement('a');\r\n document.body.appendChild(a);\r\n a.style = 'display: none';\r\n const url = window.URL.createObjectURL(blob);\r\n a.href = url;\r\n a.download = \"customer-template.xlsx\";\r\n a.click();\r\n window.URL.revokeObjectURL(url);\r\n }, (error) => {\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n downloadTechnicianTemplate() {\r\n const queryParams = {\r\n filename: this.modalInfo.sitename == 'keenhome-contractor' ? DOWNLOAD_TEMPLATE_FILE_NAME.CONTRACTOR_TECHNICIAN : DOWNLOAD_TEMPLATE_FILE_NAME.MDU_TECHNICIAN\r\n };\r\n this.sharedService.downloadTemplate(queryParams).subscribe(\r\n (response) => {\r\n const blob = new Blob([response], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,' });\r\n const a: any = document.createElement('a');\r\n document.body.appendChild(a);\r\n a.style = 'display: none';\r\n const url = window.URL.createObjectURL(blob);\r\n a.href = url;\r\n a.download = \"technician-template.xlsx\";\r\n a.click();\r\n window.URL.revokeObjectURL(url);\r\n }, (error) => {\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n downloadErrorFileInfo(value) {\r\n window.open(value);\r\n // let queryParams = {\r\n // filename: this.errorFileName\r\n // }\r\n // this.sharedService.downloadErrorTemplateFile(queryParams).subscribe((response) => {\r\n // const blob = new Blob([response], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,' });\r\n // const a: any = document.createElement('a');\r\n // document.body.appendChild(a);\r\n // a.style = 'display: none';\r\n // const url = window.URL.createObjectURL(blob);\r\n // a.href = url;\r\n // a.download = \"ErrorInformation.xlsx\";\r\n // a.click();\r\n // window.URL.revokeObjectURL(url);\r\n // }, (error) => {\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // })\r\n }\r\n\r\n handleOnSelectFiles(event, modalType) {\r\n //console.log('Z', event.target.files[0].name.split('.'))\r\n if (event.target && event.target.files && event.target.files[0] &&\r\n event.target.files[0].name) {\r\n const names = event.target.files[0].name.split('.');\r\n if (names && names.length && (names[names.length - 1] == 'xlsx' ||\r\n names[names.length - 1] == 'csv')) {\r\n // this.selectedCompanyLogo = event.target.files[0] as File;\r\n // this.companyLogoName = event.target.files[0].name;\r\n this.selectedFile = event.target.files[0] as File;\r\n this.fileType = names[names.length - 1].toUpperCase()\r\n // let companyLogoName = event.target.files[0].name;\r\n if (modalType == 'cust') {\r\n this.uploadCustomerText = \"Customer Upload is in Progress\"\r\n let templateName = UPLOAD_TEMPLATE_NAMES.CONSUMER;\r\n this.uploadFile(this.selectedFile, (names[names.length - 1]).toUpperCase(), templateName,modalType);\r\n }\r\n if (modalType == 'tech') {\r\n this.uploadTechinicanText = \"Technician Upload is in Progress\"\r\n let templateName= this.portalName === ROLE_CONSTANTS.CONTRACTOR?UPLOAD_TEMPLATE_NAMES.CONTRACTOR_TECHNICIAN:UPLOAD_TEMPLATE_NAMES.MDU_TECHNICIAN;\r\n this.uploadFile(this.selectedFile, (names[names.length - 1]).toUpperCase(),templateName,modalType);\r\n }\r\n } else {\r\n const message = \"Selected file should be xlsx/csv format\";\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n }\r\n }\r\n handleInfoModalEmitter(value1,value2) {\r\n if (value1=== 'show-error-file') {\r\n this.downloadErrorFileInfo(value2)\r\n }\r\n }\r\n // uploadTechnicianFile(selectedDocument, fileType) {\r\n // const filedata = new FormData();\r\n // if (selectedDocument) {\r\n // filedata.append('file', selectedDocument);\r\n // filedata.append('fileType', fileType);\r\n // }\r\n // const queryParams = {\r\n // templateName: this.portalName === ROLE_CONSTANTS.CONTRACTOR?UPLOAD_TEMPLATE_NAMES.CONTRACTOR_TECHNICIAN:UPLOAD_TEMPLATE_NAMES.MDU_TECHNICIAN, };\r\n // this.uploadTechnicianFileLoading = true;\r\n // this.technicianService.uploadTechnicianList(queryParams,filedata).subscribe(\r\n // (response: UploadProperyListResponse) => {\r\n // this.uploadTechnicianFileLoading = false;\r\n // if (response.responseData.in_valid_records_count > 0) {\r\n // this.handleModalType('uploaderror', response)\r\n\r\n // }\r\n // else {\r\n // this.helperService.showToaster(ToasterType.SUCCESS, response && response.responseData.Message);\r\n // }\r\n\r\n // // this.helperService.showToaster(ToasterType.SUCCESS, response && response.technicianBulkUploadResponseDetails &&\r\n // //response.technicianBulkUploadResponseDetails.message);\r\n // this.handleResetBulkUpload();\r\n // },\r\n // (error) => {\r\n // this.uploadTechnicianFileLoading = false;\r\n // this.handleResetBulkUpload();\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n // }\r\n \r\n\r\n uploadFile(selectedDocument, fileType,templateName,uploadType) {\r\n //console.log(uploadType)\r\n const filedata = new FormData();\r\n if (selectedDocument) {\r\n filedata.append('file', selectedDocument);\r\n filedata.append('fileType', fileType);\r\n }\r\n const queryParams = {\r\n templateName: templateName\r\n };\r\n this.uploadCustomerFileLoading = true;\r\n this.handleLoadingTrue(uploadType);\r\n this.sharedService.uploadExcelList(queryParams,filedata).subscribe(\r\n (response: UploadProperyListResponse) => {\r\n this.handleLoadingTrue(uploadType);\r\n this.fetchuploadStatus(uploadType,templateName);\r\n },\r\n (error) => {\r\n this.handleLoadingFalse(uploadType);\r\n this.handleResetBulkUpload();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n uploadFileStatus(type,template?)\r\n {\r\n const queryParams = {\r\n templateName:template,\r\n };\r\n this.sharedService.uploadExcelListStatus(queryParams).subscribe(\r\n (response)=>{\r\n //console.log(response)\r\n if(response.statusInfo==\"Completed\" && response.responseData.isSeen !=true)\r\n { this.handleLoadingFalse(type);\r\n this.clearuploadInterval(type);\r\n if (response.responseData.in_valid_records_count > 0 ) {\r\n this.handleModalType('uploaderror', response ,template)}\r\n \r\n else {\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.responseData.message)\r\n this.uploadFileStatusReset(template);\r\n //console.log(this.modalInfo.technicianExist,this.techModal)\r\n if(!this.modalInfo.technicianExist&& template==\"CONSUMER\")\r\n {\r\n this.onNextButtonClick();\r\n }\r\n else if(!this.modalInfo.technicianExist&& template==\"CONTRACTOR_TECHNICIAN\")\r\n {this.closeModal();}\r\n else if(this.modalInfo.technicianExist && template==\"CONSUMER\")\r\n {this.closeModal();}\r\n \r\n }\r\n }\r\n else if((response.statusInfo==\"Completed\" && response.responseData.isSeen ==true) || response.statusInfo==\"No result found\")\r\n { this.handleLoadingFalse(type); }\r\n else\r\n { this.handleLoadingTrue(type); }\r\n },(error)=>{\r\n this.clearuploadInterval(type);\r\n this.handleLoadingFalse(type);\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n uploadFileStatusReset(template,index?)\r\n {\r\n const queryParams = {\r\n templateName:template,\r\n };\r\n this.sharedService.uploadExcelListStatusReset(queryParams).subscribe(response=>{ \r\n this.handleResetBulkUpload(); \r\n },err=>{\r\n this.handleResetBulkUpload();\r\n });\r\n }\r\n fetchuploadStatus(type,template?)\r\n {\r\n //console.log(\"statusssssssssssssssssssssssssss\")\r\n this.uploadFileStatus(type,template);\r\n if(type==\"cust\")\r\n {\r\n this.uploadStatusTimeInterval = setInterval(()=>{\r\n this.uploadFileStatus(type,template);\r\n },30000) \r\n }\r\n else{\r\n this.uploadTechStatusTimeInterval = setInterval(()=>{\r\n this.uploadFileStatus(type,template);\r\n },30000) \r\n }\r\n \r\n }\r\n clearuploadInterval(type?)\r\n {\r\n if(type == 'cust')\r\n {\r\n if (this.uploadStatusTimeInterval) {\r\n clearInterval(this.uploadStatusTimeInterval);\r\n }\r\n }\r\n else\r\n {\r\n if (this.uploadTechStatusTimeInterval) {\r\n clearInterval(this.uploadTechStatusTimeInterval);\r\n }\r\n }\r\n }\r\n handleResetBulkUpload() {\r\n if (this.customerBulkUpload && this.customerBulkUpload.nativeElement) {\r\n this.customerBulkUpload.nativeElement.value = null;\r\n }\r\n if (this.technicianBulkUpload && this.technicianBulkUpload.nativeElement) {\r\n this.technicianBulkUpload.nativeElement.value = null;\r\n }\r\n }\r\n\r\n handleLoadingFalse(type)\r\n {\r\n if(type==\"cust\")\r\n {\r\n this.uploadCustomerFileLoading = false;\r\n this.uploadCustomerText = \"Upload Customer List File\";\r\n }\r\n else \r\n {this.uploadTechnicianFileLoading = false;\r\n this.uploadTechinicanText = \"Upload Technician List File\";\r\n }\r\n }\r\n handleLoadingTrue(type)\r\n {\r\n type==\"cust\"?this.uploadCustomerFileLoading = true:this.uploadTechnicianFileLoading = true;\r\n }\r\n handleModalType(type: string, value?: any, value2?: any, value3?: any) {\r\n this.modalType = type;\r\n this.confirmationModalLine1Content = null;\r\n this.confirmationModalLine2Content = null;\r\n this.confirmationModalLine3Content = null;\r\n this.errorCount = 0;\r\n this.errorFileName = null;\r\n this.confirmationModalEmitterFlag = null;\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.isSuccessToasterModal = false;\r\n this.isForUploadError = false;\r\n if (type === 'uploaderror') {\r\n this.confirmationModalLine1Content = \"Your file has been uploaded successfully but with \"\r\n this.confirmationModalLine2Content = \"You may continue or correct the errors and re-upload.\"\r\n //this.confirmationModalLine3Content = \"Your existing technicians will not be duplicated.\"\r\n // this.errorCount = value.responseData.in_valid_records_count;\r\n // this.errorFileName = value.responseData.invalidDataFileLinkUrl;\r\n this.confirmationModalEmitterFlag = 'show-error-file';\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.isSuccessToasterModal = true;\r\n this.isForUploadError = true;\r\n //this.arraytemplate.push(value2);\r\n \r\n this.showConfirmationModal(value,value2);\r\n }\r\n }\r\n\r\n showConfirmationModal(value,value2) {\r\n //console.log(value2)\r\n value2 == (UPLOAD_TEMPLATE_NAMES.CONTRACTOR_TECHNICIAN || UPLOAD_TEMPLATE_NAMES.MDU_TECHNICIAN)?\r\n this.confirmationModalLine3Content = \"Your existing technicians will not be duplicated.\":\r\n this.confirmationModalLine3Content = \"Your existing Customers will not be duplicated.\";\r\n let d = {\r\n status:true,\r\n errorCount:value.responseData.in_valid_records_count,\r\n errorFileName:value.responseData.invalidDataFileLinkUrl,\r\n confirmationModalLine3Content:this.confirmationModalLine3Content,\r\n template:value2\r\n }\r\n this.isShowInfoModal.push(d)\r\n }\r\n closeConfirmationModal(index,template)\r\n {\r\n this.isShowInfoModal[index]=false;\r\n this.uploadFileStatusReset(template,index);\r\n let removeData = this.isShowInfoModal.findIndex( item => item.template === template );\r\n this.isShowInfoModal.splice( removeData, 1 );\r\n //removeByAttr(this.isShowInfoModal,\"template\",template)\r\n //console.log(this.isShowInfoModal)\r\n }\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n ngOnDestroy() {\r\n if (this.uploadStatusTimeInterval) {\r\n clearInterval(this.uploadStatusTimeInterval);\r\n }\r\n if (this.uploadTechStatusTimeInterval) {\r\n clearInterval(this.uploadTechStatusTimeInterval);\r\n }\r\n }\r\n}\r\n\r\n\r\n","module.exports = \"/* stylelint-disable */\\n.welcome-modal_wrapper .modal-content {\\n width: 700px;\\n margin: 0 auto;\\n top: 25%;\\n margin-top: 14%;\\n}\\n.welcome-modal_wrapper .modal-body {\\n padding: 2rem 4rem;\\n display: flex;\\n flex-direction: column;\\n}\\n.welcome-modal_wrapper .modal-body .meli-logo {\\n max-width: 20rem;\\n margin: 0 auto;\\n margin-top: 4rem;\\n margin-bottom: 4rem;\\n}\\n.welcome-modal_wrapper .modal-footer {\\n border-top: 0.05rem solid #707070;\\n padding: 2rem 0rem;\\n margin: 0rem 4rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvd2VsY29tZS1zY3JlZW4vRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcYXBwXFxzaGFyZWRcXGNvbXBvbmVudHNcXHdlbGNvbWUtc2NyZWVuXFx3ZWxjb21lLXNjcmVlbi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvd2VsY29tZS1zY3JlZW4vRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3N0ZGluIiwic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy93ZWxjb21lLXNjcmVlbi93ZWxjb21lLXNjcmVlbi5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBQTtBQ0lJO0VBQ0ksWUFBQTtFQUNHLGNBQUE7RUFDUCxRQUFBO0VBQ0EsZUFBQTtBQ0ZKO0FES0M7RUFDTyxrQkFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtBQ0hSO0FESVE7RUFDSSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FDRlo7QURNSTtFQUNJLGlDQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBQ0pSIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvd2VsY29tZS1zY3JlZW4vd2VsY29tZS1zY3JlZW4uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG4vLyBjb2xvcnNcclxuXHJcbiRjb2xvci1ibGFjay1wcmltYXJ5OiAjMDAwMDAwO1xyXG4kY29sb3ItYmxhY2stc2Vjb25kYXJ5OiAjMTIxNjFlO1xyXG4kY29sb3ItYmxhY2stMzogIzE2MWEyMTtcclxuJGNvbG9yLWJsYWNrLTQ6ICMwNzA3MDc7XHJcbiRjb2xvci1ibGFjay01OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ibGFjay02OiAjMTQxODIxO1xyXG4kY29sb3ItYmxhY2stNzogIzEzMTMxMztcclxuXHJcbiRjb2xvci13aGl0ZS1wcmltYXJ5OiAjZmZmZmZmO1xyXG4kY29sb3Itd2hpdGUtc2Vjb25kYXJ5OiAjZjRmNGY0O1xyXG4kY29sb3Itd2hpdGUtMzogI2Y2ZjhmYjtcclxuJGNvbG9yLXdoaXRlLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NzA1ODgpO1xyXG5cclxuJGNvbG9yLWNhZGV0Ymx1ZS1wcmltYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLXNlY29uZGFyeTogIzcxY2VjYTtcclxuJGNvbG9yLWNhZGV0Ymx1ZS0zOiAjODRjNGJmO1xyXG4kY29sb3ItY2FkZXRibHVlLTQ6ICM1ZGRhZDE7XHJcblxyXG4kY29sb3ItZGFyay1ibHVlLXByaW1hcnk6ICMyNDJhMzQ7XHJcbiRjb2xvci1kYXJrLWJsdWUtc2Vjb25kYXJ5OiAjMmEzMzQzO1xyXG5cclxuJGNvbG9yLWJsdWUtc2Vjb25kYXJ5OiAjMDAzMzU5O1xyXG4kY29sb3ItYmx1ZS00OiAjNDY0ZjVkO1xyXG4kY29sb3ItYmx1ZS04OiAjMDA0MTZiO1xyXG5cclxuJGNvbG9yLW9yYW5nZS1wcmltYXJ5OiAjZmZjMDZhO1xyXG5cclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXByaW1hcnk6ICM5YmVhNGY7XHJcbiRjb2xvci1saWdodC1ncmVlbi1zZWNvbmRhcnk6ICNhZmQyOGQ7XHJcbiRjb2xvci1saWdodC1ncmVlbi10ZXJuYXJ5OiAjODVjOTQzO1xyXG5cclxuJGNvbG9yLWRhcmstZ3JlZW4tcHJpbWFyeTogIzEzNjM2MztcclxuXHJcbiRjb2xvci1ncmF5LXByaW1hcnk6ICM4OTg5ODk7XHJcbiRjb2xvci1kYXJrLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWdyYXktc2Vjb25kYXJ5OiAjNGQ0ZjVjO1xyXG4kY29sb3ItZ3JheS10ZXJuYXJ5OiAjOTc5MDkwO1xyXG4kY29sb3ItZ3JheS00OiAjOTc5Nzk3O1xyXG4kY29sb3ItZ3JheS01OiAjNzA3MDcwO1xyXG4kY29sb3ItZ3JheS02OiAjYTVhNWE1O1xyXG4kY29sb3ItZ3JheS03OiAjYWFhYWFhO1xyXG4kY29sb3ItZ3JheS04OiAjYzRjNGM0O1xyXG4kY29sb3ItZ3JheS05OiAjZTNlM2UzO1xyXG4kY29sb3ItZ3JheS0xMDogIzkwOTA5MDtcclxuJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTogI2NlY2VjZTtcclxuJGNvbG9yLWxpZ2h0LWdyYXktMjogI2U2ZTZlNjtcclxuXHJcbiRjb2xvci1hdGhlbnNncmF5LXByaW1hcnk6ICNlOWU5ZjA7XHJcbiRjb2xvci1hdGhlbnNncmF5LTI6ICNkNmQ2ZDY7XHJcblxyXG4kY29sb3ItdmlvbGV0LXByaW1hcnk6ICM0MzQyNWQ7XHJcbiRjb2xvci12aW9sZXQtMjogI2JjYmNjYjtcclxuXHJcbiRjb2xvci1yZWQtcHJpbWFyeTogI2RkNGI0YjtcclxuJGNvbG9yLXJlZC1zZWNvbmRhcnk6ICNmZjcyNzI7XHJcblxyXG4kY29sb3ItcGluay1wcmltYXJ5OiAjZjI0NzY2O1xyXG5cclxuJGNvbG9yLWJsdWUtcHJpbWFyeTogIzI2OTlmYjtcclxuJGNvbG9yLWJsdWUtdGVybmFyeTogIzAwYjdhNTtcclxuJGNvbG9yLWJsdWUtMjogIzRkNjY5ODtcclxuJGNvbG9yLWJsdWUtMzogIzAzMzU5ODtcclxuJGNvbG9yLWJsdWUtNTogIzAwMzM5NTtcclxuJGNvbG9yLWJsdWUtNjogIzkwYzVlNjtcclxuJGNvbG9yLWJsdWUtNzogI2RjZTVlZTtcclxuJGNvbG9yLWJsdWUtOTogIzkwYzVlNztcclxuJGNvbG9yLWJsdWUtMTA6ICMwMGE2ZTI7XHJcblxyXG4kY29sb3IteWVsbG93LXByaW1hcnk6ICNmODkzMDg7XHJcbiRjb2xvci1vcmFuZ2Utc2Vjb25kYXJ5OiAjZmY5YzE0O1xyXG5cclxuLy8gdGhlbWVcclxuXHJcbiRjb2xvci1jcmltc29uOiAjZjkxYjBlO1xyXG4kY29sb3ItcGluazogI2ZmNjdhMTtcclxuJGNvbG9yLXZpb2xldDogI2I3MDBlOTtcclxuJGNvbG9yLWluZGlnbzogIzg3MjJmZjtcclxuJGNvbG9yLWJsdWU6ICMwZWJhZjk7XHJcbiRjb2xvci1mb3Jlc3Q6ICMwMGE3NGE7XHJcbiRjb2xvci1ncmVlbjogIzU5Y2YwMDtcclxuJGNvbG9yLWdvbGQ6ICNmZmQyMDI7XHJcbiRjb2xvci1vcmFuZ2U6ICNmZjg3MDY7XHJcblxyXG4vLyBmb250c1xyXG5cclxuJGZvbnQtcGF0aDogXCJzcmMvYXNzZXRzL2ZvbnRzXCI7XHJcblxyXG4kZm9udC1uYW1lLW9wZW5zYW5zOiBcIm9wZW5zYW5zXCI7XHJcbiRmb250LW5hbWUtb3BlbnNhbnMtbGlnaHQ6IFwib3BlbnNhbnMtbGlnaHRcIjtcclxuXHJcbi8vICRmb250LWZpbGVuYW1lLW9wZW5zYW5zOiAnL29wZW5zYW5zLXJlZ3VsYXIudHRmJztcclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnMtbGlnaHQ6ICcvb3BlbnNhbnMtbGlnaHQudHRmJztcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1SZWd1bGFyOiBcIlNvdXJjZVNhbnNQcm8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiL1NvdXJjZVNhbnNQcm8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkOiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xyXG4kZm9udC1maWxlbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiL1NvdXJjZVNhbnNQcm8tQm9sZC50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtTGF0by1SZWd1bGFyOiBcIkxhdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1MYXRvLVJlZ3VsYXI6IFwiL0xhdG8tUmVndWxhci50dGZcIjtcclxuXHJcbiRmb250LW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiUm9ib3RvLVJlZ3VsYXJcIjtcclxuJGZvbnQtZmlsZW5hbWUtUm9ib3RvLVJlZ3VsYXI6IFwiL1JvYm90by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAxLjZyZW07XHJcbiRmb250LXNpemUtaGVhZGluZzogMS41cmVtO1xyXG4kZm9udC1zaXplLXRhYnM6IDEuNHJlbTtcclxuJGZvbnQtc2l6ZS1zdWJ0aXRsZTogMnJlbTtcclxuXHJcbi8vIGltYWdlc1xyXG5cclxuJGltYWdlLXBhdGg6IFwic3JjL2Fzc2V0cy9pbWFnZXNcIjtcclxuIiwiIEBpbXBvcnQgJ3NyYy9zdHlsZXNoZWV0cy92YXJpYWJsZXMuc2Nzcyc7XHJcbiAud2VsY29tZS1tb2RhbF93cmFwcGVyXHJcbiB7XHJcblxyXG4gICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgIHdpZHRoOiA3MDBweDtcclxuICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHRvcDogMjUlO1xyXG4gICAgbWFyZ2luLXRvcDogMTQlO1xyXG4gICAgfVxyXG5cclxuIC5tb2RhbC1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiAycmVtIDRyZW07XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIC5tZWxpLWxvZ297XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjByZW07XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtZm9vdGVyIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICRjb2xvci1ncmF5LTU7XHJcbiAgICAgICAgcGFkZGluZzogMnJlbSAwcmVtO1xyXG4gICAgICAgIG1hcmdpbjogMHJlbSA0cmVtO1xyXG4gICAgfVxyXG4gfVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLndlbGNvbWUtbW9kYWxfd3JhcHBlciAubW9kYWwtY29udGVudCB7XG4gIHdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRvcDogMjUlO1xuICBtYXJnaW4tdG9wOiAxNCU7XG59XG4ud2VsY29tZS1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IHtcbiAgcGFkZGluZzogMnJlbSA0cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLndlbGNvbWUtbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSAubWVsaS1sb2dvIHtcbiAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG4ud2VsY29tZS1tb2RhbF93cmFwcGVyIC5tb2RhbC1mb290ZXIge1xuICBib3JkZXItdG9wOiAwLjA1cmVtIHNvbGlkICM3MDcwNzA7XG4gIHBhZGRpbmc6IDJyZW0gMHJlbTtcbiAgbWFyZ2luOiAwcmVtIDRyZW07XG59Il19 */\"","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { BASE_URL_TYPES } from '../../constants/base-url-types.constant';\r\nimport { SITE_NAME_CONSTANTS } from '../../constants/site-name.constant';\r\nimport { HelperService } from '../../services/helper.service';\r\n\r\n@Component({\r\n selector: 'app-welcome-screen',\r\n templateUrl: './welcome-screen.component.html',\r\n styleUrls: ['./welcome-screen.component.scss']\r\n})\r\nexport class WelcomeScreenComponent implements OnInit {\r\n @Output() emitCloseModal = new EventEmitter();\r\n contractorLogoBlack = require('src/assets/images/Current-Contractor-Black.svg');\r\n siteName: any;\r\n siteHeading: any;\r\n showLogoImage: boolean;\r\n constructor(private helperService: HelperService) { }\r\n\r\n ngOnInit() {\r\n this.siteName = this.helperService.handleBaseUrl(BASE_URL_TYPES.SITE_NAME);\r\n if (this.siteName === SITE_NAME_CONSTANTS.KEENHOME_CHANNEL ||\r\n this.siteName === SITE_NAME_CONSTANTS.KEENHOME_CONTRACTOR) {\r\n this.showLogoImage = false;\r\n this.siteHeading = \"Welcome to your Keen Home Pro Portal! From here, you'll be able to view equipment alerts, run Pre-Season Tests, and generate valuable reports. To get started, please upload your customer list.\"\r\n }\r\n else if (this.siteName === SITE_NAME_CONSTANTS.KEENHOME_MDU) {\r\n this.showLogoImage = false;\r\n this.siteHeading = \"Welcome to your Keen Home Pro MDU Portal! From here, you'll be able to view equipment alerts, run Pre-Season Tests, and generate valuable reports. To get started, please enter your billing info.\"\r\n }\r\n else {\r\n this.showLogoImage = true;\r\n this.siteHeading = \"Welcome to your CoolCloud Portal! From here, you'll be able to view equipment alerts, run Pre-Season Tests, and generate valuable reports.To get started, please enter your billing info.\"\r\n }\r\n\r\n }\r\n closeModal() {\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n}\r\n","export const API_CONSTANTS = {\r\n SIGN_UP: '/dealer/signup',\r\n LOGIN: '/login',\r\n REGISTRATION_STATUS:'/getUserSelfRegisteredStatus',\r\n FORGOT_PASSWORD: '/forgotPassword',\r\n LOGOUT: '/logout',\r\n RESET_PASSWORD: '/resetPassword',\r\n GET_CONTRACTOR_INFORMATION: '/contractor',\r\n GET_MDU_INFORMATION: '/mdu/profile',\r\n GET_SEARCH_LIST: '/search',\r\n ALERTS_LIST: '/alerts',\r\n FIRMWARE_VERSION: '/boardFWversion',\r\n SENSOR_CURRENT_READ: '/sensorcurrentread',\r\n SENSOR_READ: '/sensorread',\r\n ALERT_DISCOVERY_READ: '/alertconfigbyapi',\r\n GET_MELI_ASSET_INFO: '/assetdetails',\r\n CHANGE_PASSWORD: '/changePassword',\r\n GET_INVENTORY_LIST: '/melidetails',\r\n GET_BOARDDATA_LIST:'/boardPerformanceInfo',\r\n CUSTOMER_LIST: '/v1/consumers',\r\n HVAC_ASSET_LIST: '/v1/assetdetails',\r\n GET_SENSOR_STATUS: '/getSensorInstallStatus',\r\n UPDATE_MELI_STATUS: '/contractor/meli/updateStatus',\r\n GET_LAST_LOGGED_IN: '/getlastlogintime',\r\n GET_SITE_TOUR_DATA: '/getsitetourinfo',\r\n COMPLETE_SITE_TOUR: '/completesitetour',\r\n PRESEASON_LIST: '/preseasonreports',\r\n PRESEASON_REPORT: '/report',\r\n SEND_PRESEASON_REPORT_MAIL: '/sendReport',\r\n UPDATE_INSTALL_REPORT: '/jobs',\r\n COMFORTT_BRIDGE_INFO: '/dataacinfo',\r\n SYSTEM_INFO: '/systemInfo',\r\n GAS_FURANCE_INFO: '/gasFurnaceInfo',\r\n AC_INFO: '/acInfo',\r\n HEAT_PUMP_INFO: '/heatPumpInfo',\r\n GET_HVAC_CYCLE_DATA: '/hvacCycleData',\r\n GET_PROPERTIES_MAP_LIST: '/maps',\r\n GET_TECHNICIANS_LIST: '/technician',\r\n DELETE_TECHNICIAN: '/technician',\r\n EDIT_TECHNICIAN: '/technicianForEdit',\r\n CHECK_EMAIL: '/checkEmail',\r\n UPLOAD_TECHNICIAN_LIST: '/uploadUserRecord',\r\n DOWNLOAD_TEMPLATE: '/getTemplate',\r\n GET_COMFORTBRIDGE_STATUS: '/comfortbrige/status',\r\n GET_ASSET_UNITLOCATION: '/assetUnitLocation',\r\n GET_CONTROL_LIST: '/mdu/controls',\r\n GET_CONTRACTOR_CONTROL_LIST: '/cp/reports',\r\n CANCEL_PRE_SEASON_TEST: '/cancelTest',\r\n DOWNLOAD_BULK_PRESEASON_REPORTS: '/downloadEquipmentTestReportZip',\r\n DOWNLOAD_PRESEASON_REPORT: '/downloadTestReport',\r\n DOWNLOAD_BULK_INSTALLATION_REPORT: '/ir/downloadTestReportZip',\r\n CREATE_CONTRACTOR: '/dealer',\r\n GET_INSTALLATION_REPORT: '/installationsReport',\r\n ASSIGN_TECHNICIAN: '/jobs',\r\n CREATE_TECHNICIAN: '/technician',\r\n GET_CUSTOMER_SECRETKEY: '/clientSecrete',\r\n SEND_CARD_TOKEN: '/assignCardToCustomer',\r\n SEND_ACH_TOKEN: '/assignAchtoCustomer',\r\n SUBSCRIPTION_PLAN: '/plansSubscription',\r\n UPDATE_SUBSCRIPTION_PLAN: '/changeSubscriptionPlan',\r\n // GET_CELLULAR_PLAN_LIST: '/subscriptionPlanStatus',\r\n GET_CELLULAR_CURRENT_STATUS: '/simcard/currentStatus',\r\n UPDATE_CELLULAR_PLAN: '/changeSubscriptionPlanStatus',\r\n IS_CARD_AVAILABLE: '/isBillingInfoFound',\r\n GET_BILLING_LIST: '/billingInfo',\r\n UPDATE_CREDIT_CARD: '/updateCard',\r\n UPDATE_ACH: '/updateACH',\r\n DELETE_BILLING_INFO: '/deletePaymentMethod',\r\n MAKE_DEFAULT_PAYMENT_METHOD: '/makeDefaultPayment',\r\n VERIFY_ACH: '/verifyACH',\r\n GET_UPLOAD_ERROR_FILE: '/getUploadErrorFile',\r\n ACTIVATE_TECHNICIAN: '/technician/activate',\r\n DE_ACTIVATE_TECHNICIAN: '/technician/deactivate',\r\n RE_INVITE_TECHNICIAN: '/resendInvitationToTechnician',\r\n TRANSFER_ACCOUNT: '/transferdealer',\r\n DELETE_ACCOUNT: '/dealer',\r\n GET_SENSOR_CURRENT_STATUS: '/boardDeviceStatus',\r\n GET_HVAC_STATUS: '/boardOnlineOffline',\r\n USER_EXIST: '/userExist',\r\n EDIT_ASSET_UNIT: '/addAssetUnit',\r\n DELETE_LOGO:'/contractorLogo',\r\n UPLOAD_CUSTOMER_LIST:'/uploadUserRecord',\r\n GET_UPLOAD_STATUS:'/getUploadFileStatus',\r\n UPLOAD_STATUS_RESET:'/userDataReport',\r\n GET_HVAC_INFORMATION:'/getAllMakeModel',\r\n UNSUBSCRIBE:'/emailSubscription',\r\n ACTIVATE_CONTRACTOR:'/resendInvitationToDealer',\r\n UPDATESWITCH:'/updateSwitch',\r\n GET_CUSTOMER_COUNT:'/boardTypeCount',\r\n PRE_SEASON_TEST_STATUS: '/scheduledTestStatus',\r\n RESOLVE_ALERT:'/alarmStatus',\r\n GENERATE_SHORT_LINK:'/generateShortLink',\r\n SHARE_ALERT:'/shareAlert',\r\n IS_PRESEASON_ENABLE:'/isTestEnable'\r\n};\r\n","export const BASE_URL_TYPES = {\r\n LOGIN: 'login',\r\n COMMON_BASE: 'common-base',\r\n UPDATE_RELAY: 'update-relay',\r\n USER_POOL_ID: 'user-pool-id',\r\n PRE_SEASON_TEST: 'pre-season-test',\r\n LAMBDA: 'lambda',\r\n COMFORTBRIDGE:'comfortbridge',\r\n SITE_NAME: 'site-name'\r\n};\r\n","export const COMMON_CONSTANTS = {\r\n PAGINATION_NEXT: 'NEXT',\r\n PAGINATION_PREVIOUS: 'PREVIOUS',\r\n PAGINATION_FIRST: 'FIRST',\r\n PAGINATION_LAST: 'LAST',\r\n ADDRESS_LINES_COMBINATOR: '---',\r\n COMPANY_LOGO_COMMON_NAME: 'primary',\r\n EMAIL_PRIMARY: 'primary',\r\n EMAIL_SECONDARY: 'secondary',\r\n IN_BUSINESS_SINCE_START_YEAR: 1900,\r\n FAHRENHEIT: 'fahrenheit',\r\n CELCIUS: 'celsius',\r\n PASCAL: 'pascal',\r\n WATER_COLUMN: 'water-column',\r\n WC: 'wc',\r\n ADDRESS_TYPE_SERVICE: 'service-address',\r\n ADDRESS_TYPE_BILLING: 'billing-address',\r\n ADDRESS_TYPE_REGISTERED_CORPORATE: 'registered-corporate',\r\n ADDRESS_TYPE_BRANCH_ADDRESS: 'branch-office',\r\n SENSOR_STATUS_WORKING: 'working',\r\n SENSOR_STATUS_NOT_WORKING: 'not-working',\r\n SENSOR_STATUS_INACTIVE: 'inactive',\r\n SENSOR_STATUS_NOT_INSTALLED: 'Not Installed',\r\n SENSOR_STATUS_INSTALLED: 'Installed',\r\n DISCHARGE_AIR_TEMPERATURE: 'Discharge Air Temperature',\r\n SUPPLY_AIR_TEMPERATURE: 'Supply Air Temperature',\r\n RETURN_AIR_TEMPERATURE: 'Return Air Temperature',\r\n SUCTION_LINE_TEMPERATURE: 'Suction Line Temperature',\r\n LIQUID_LINE_TEMPERATURE: 'Liquid Line Temperature',\r\n RETURN_PRESSURE: 'Return Pressure',\r\n SUPPLY_PRESSURE: 'Supply Pressure',\r\n AMBIENT_LINE_TEMPERATURE: 'Ambient Temperature',\r\n DELTA: 'DAT-RAT',\r\n SUPPLY_AND_RETURN_AIR_STATIC_PRESSURE_DIFFERENCE: 'Supply And Return Air Static Pressure Difference',\r\n CONDENSATE_SWITCH: 'Condensate Switch',\r\n DISCHARGE_AIR_TEMPERATURE_COLOR: '#71CECA',\r\n RETURN_AIR_TEMPERATURE_COLOR: '#F89409',\r\n SUCTION_LINE_TEMPERATURE_COLOR: '#D289CC',\r\n LIQUID_LINE_TEMPERATURE_COLOR: '#CEE816',\r\n AMBIENT_LINE_TEMPERATURE_COLOR: '#19e800',\r\n SUPPLY_AND_RETURN_AIR_STATIC_PRESSURE_DIFFERENCE_COLOR: '#FFC6C6',\r\n AVG_DELTA_T: '#00B7A5',\r\n DELTA_COLOR: '#F4C2B7',\r\n PRIORITY_MINOR: 'Minor',\r\n PRIORITY_MAJOR: 'Major',\r\n INDOOR_EQUIPMENT: 'indoor',\r\n OUTDOOR_EQUIPMENT: 'outdoor',\r\n AIR_CONDITIONER: 'Air Conditioner',\r\n GAS_FURNACE: 'Gas Furnace',\r\n HEAT_PUMP: 'Heat Pump',\r\n HEAT_PUMP_WITH_ELEC_STRIP: 'Heat Pump w/ Elec Strip',\r\n PRE_SEASON_TEST: 'pre-season-test',\r\n EMERGENCY_SHUTOFF: 'emergency-shutoff',\r\n ALERTS_SITE_TOUR: `The Alerts tab is a sortable view of the current alerts across\r\n every installed ComfortHome board.`,\r\n CUSTOMERS_SITE_TOUR: `The Customers tab allows you to conveniently communicate directly\r\n with the customer and a get quick view of customer installations.`,\r\n INVENTORY_SITE_TOUR: `The Inventory tab shows all the Performance Board units in your \r\n possession, installed in customer's homes, or in the RMA process.`,\r\n TECHNICIANS_SITE_TOUR: `The Technicians tab allows you to view all your technicians, their\r\n job status and job history.`,\r\n SEARCH_SITE_TOUR: `The search bar allows you to search of specific Performance Boards, \r\n customers, and technicians. Enter all or part of the search term to search.`,\r\n PHONE_NUMBERS_COUNT_MAX: 2,\r\n INFINITE_SCROLL_THROTTLE: 200,\r\n INFINITE_SCROLL_DISTANCE: 2,\r\n INITIAL_TABLE_ROW_COUNT: 10,\r\n SCROLL_TABLE_ROW_COUNT: 10,\r\n TABLE_TR_HEIGHT: 45,\r\n TRUE: true,\r\n FALSE: false,\r\n SENSOR_INSTALLED: 'Installed',\r\n SENSOR_NOT_INSTALLED: 'Not_Installed',\r\n};\r\n\r\nexport const HVAC_ID = {\r\n ID1: 1,\r\n ID2: 2,\r\n ID3: 3,\r\n ID4:4,\r\n FUEL_TYPE_ELECTRIC: 4,\r\n \r\n INDOOR_EQUIP_TYPE_AIR_HANDLER: 2,\r\n INDOOR_EQUIP_TYPE_AIR_HANDLER_WITH_ELEC_STRIP: 3,\r\n INDOOR_EQUIP_TYPE_HEAT_PUMP: 4,\r\n INDOOR_EQUIP_TYPE_HEAT_PUMP_WITH_ELEC_STRIP: 5,\r\n INDOOR_EQUIP_TYPE_FURNACE: 1,\r\n}\r\n\r\nexport const BOARDTYPES = {\r\n Celluar: 'Cellular',\r\n Wi_Fi: 'Wi-Fi',\r\n}\r\n\r\nexport const REPORTSTATUS = {\r\n Pass: 'Pass',\r\n Fault_Detected: 'Faults Detected',\r\n Critical_Fault: 'Critical Faults Detected',\r\n Incomplete: 'Test Incomplete',\r\n Test_Didnot_Run: 'Test Did Not Run',\r\n Heating_Failed: 'Heating Test Failed',\r\n Cooling_Failed: 'Cooling Test Failed'\r\n}\r\n\r\nexport const CHART_TYPES = {\r\n SPLINE: 'spline',\r\n LINE: 'line',\r\n COLUMN: 'column'\r\n}\r\n\r\nexport const CHART_UNIT_TYPES = {\r\n TEMPERATURE: 'temperature',\r\n PRESSURE: 'pressure'\r\n}\r\n\r\nexport const TABS_CONSTANTS = {\r\n Table: 'table',\r\n Map: 'map'\r\n}\r\n\r\nexport const COLUMN_SEARCH_CONSTANTS = {\r\n PROPERTYNAME: 'propertyName',\r\n PROPERTYUNIT: 'propertyUnitNumber',\r\n ADDRESS: 'streetAddress',\r\n CITY: 'city',\r\n STATE: 'state',\r\n PRESEASONTESTSTATUS: 'preseasonTestStatus',\r\n PRESEASONTESTDATE: 'preseasonTestDate',\r\n INSTALLED_ON: 'installedOn',\r\n\r\n}\r\n\r\nexport const PRESEASON_STATUS = {\r\n PASS: 'Pass',\r\n NOT_SCHEDULED: 'Not Scheduled',\r\n FAULTS_DETECTED: 'Faults Detected',\r\n CRIICAL_FAULTS_DETECTED: 'Critical Faults Detected',\r\n TEST_INCOMPLETE: 'Test Incomplete',\r\n TEST_DIDNOT_RUN: \"Test Did Not Run\",\r\n TEST_FAILED_TO_RUN: \"Test Failed To Run\",\r\n HEATING_FAILED: 'Heating Test Failed',\r\n COOLING_FAILED: 'Cooling Test Failed',\r\n SCHEDULED: 'SCHEDULED',\r\n RUNNING:'RUNNING'\r\n}\r\n\r\nexport const DOWNLOAD_TEMPLATE_FILE_NAME = {\r\n CONTRACTOR_TECHNICIAN: 'ContractorTechnicianSheet.xlsx',\r\n MDU_TECHNICIAN: 'MDUTechnicianSheet.xlsx',\r\n MDU_PROPERTY: 'MDUPropertySheet.xlsx',\r\n CHANNEL_DEALER: 'DealerInfoSheet.xlsx',\r\n CUSTOMER: 'ConsumerInfoSheet.xlsx'\r\n}\r\n\r\nexport const MAP_STATUS = {\r\n ALL: 'all',\r\n MINOR: 'Minor',\r\n MAJOR: 'Major',\r\n FAULTS_DETECTED: 'fault',\r\n CRIICAL_FAULTS_DETECTED: 'critical',\r\n DEFAULT:'default'\r\n}\r\n\r\nexport const SUBSCRIPTION_PLAN_ID = {\r\n PREMIUM_ID: 'Premium',\r\n PREMIUM_PLUS_ID: 'Premium+'\r\n}\r\n\r\nexport const TECHNICIAN_STATUS = {\r\n PENDING: 'Pending',\r\n ACTIVE: 'Active',\r\n DE_ACTIVATED: 'De-Activated'\r\n}\r\n\r\nexport const SIGNAL_STRENGTH_STATUS = {\r\n WEAK :'Weak ( -70 dBm to -100 dBm )',\r\n FAIR :'Fair ( -60 dBm to -70 dBm )',\r\n GOOD :'Good ( -50 dBm to -60 dBm )',\r\n EXELLENT :'Excellent ( 0 dBm to -50 dBm )',\r\n POOR:'Poor (0 to 15dBm)'\r\n}\r\n\r\nexport const UPLOAD_TEMPLATE_NAMES={\r\n CONSUMER:'CONSUMER',\r\n CONTRACTOR_TECHNICIAN:'CONTRACTOR_TECHNICIAN',\r\n MDU_TECHNICIAN:'MDU_TECHNICIAN',\r\n MDU_PROPERTY:'MDU_PROPERTY',\r\n DEALER:'DEALER',\r\n}\r\n\r\nexport const CUSTOMER_TYPES={\r\n RESIDENTIAL:\"RESIDENTIAL\",\r\n COMPANY:'COMPANY'\r\n}","export const ROLE_CONSTANTS = {\r\n CHANNEL: 'channel',\r\n CONTRACTOR: 'contractor',\r\n MDU: 'mdu'\r\n};\r\n","export const SITE_NAME_CONSTANTS = {\r\n GOODMAN_CHANNEL: 'goodman-channel',\r\n GOODMAN_CONTRACTOR: 'goodman-contractor',\r\n GOODMAN_MDU: 'goodman-mdu',\r\n FERGUSON_CHANNEL: 'ferguson-channel',\r\n FERGUSON_CONTRACTOR: 'ferguson-contractor',\r\n FERGUSON_MDU: 'ferguson-mdu',\r\n UTEC_CHANNEL: 'utec-channel',\r\n UTEC_CONTRACTOR: 'utec-contractor',\r\n UTEC_MDU: 'utec-mdu',\r\n CONNECTM_CHANNEL: 'connectm-channel',\r\n CONNECTM_CONTRACTOR: 'connectm-contractor',\r\n CONNECTM_MDU: 'connectm-mdu',\r\n KEENHOME_CHANNEL: 'keenhome-channel',\r\n KEENHOME_CONTRACTOR: 'keenhome-contractor',\r\n KEENHOME_MDU: 'keenhome-mdu',\r\n\r\n};\r\n","export enum SortingTypes {\r\n ASCENDING = 'ASC',\r\n DESCENDING = 'DESC'\r\n}\r\n\r\nexport enum AlertSortingKeys {\r\n RESOLVED_TIME = 'RESOLVED_TIME',\r\n ALERT_TYPE = 'ALERT_TYPE',\r\n ALERT_NAME = 'ALERT_SEVERITY',\r\n TIME = 'OCCURED_TIME',\r\n STREET = 'ADDRESS',\r\n CITY = 'CITY',\r\n STATE = 'STATE_CODE',\r\n ASSIGN = 'JOB_ID',\r\n TECHNICIAN_NAME = 'TECHNICIAN_NAME'\r\n}\r\n\r\nexport enum AlertSortingKeysMDU {\r\n RESOLVED_TIME = 'CLEARED_TIME',\r\n ALERT_TYPE = 'ALERT_TYPE',\r\n ALERT_NAME = 'ALERT_NAME',\r\n TIME = 'OCCURED_TIME',\r\n STREET = 'STREET',\r\n CITY = 'CITY',\r\n STATE = 'STATE',\r\n ASSIGN = 'ASSIGN'\r\n}\r\n\r\nexport enum InvestigateSortingKeys {\r\n SERIAL_NUMBER = 'meli_serial_number',\r\n INSTALLED_ON = 'j.resolved_time',\r\n STATUS = 'ms.status',\r\n IN_INVENTORY_DATE = 'in_inventory_date',\r\n ASSIGNED_ON = 'created_time',\r\n TYPE = 'type'\r\n}\r\n\r\nexport enum InstallationSortingKeys {\r\n SERIAL_NUMBER = 'meli_serial_number',\r\n INSTALLED_ON = 'j.resolved_time',\r\n STATUS = 'ms.status',\r\n TYPE = 'meli_type',\r\n CITY = 'ads.city',\r\n STATE = 'ads.state'\r\n}\r\n\r\nexport enum PreSeasonSortingKeys {\r\n TEST_TIME = 'testScheduledTime',\r\n SEASON = 'season',\r\n TYPE = 'testType',\r\n}\r\n\r\nexport enum propertySortingKeys {\r\n PROPERTY_NAME = \"h.home_name\",\r\n STREET = 'address',\r\n UNIT = 'unit_number',\r\n CITY = 'city',\r\n STATE = 'state_code',\r\n TYPE = 'm.meli_type',\r\n INSTALLED_ON = 'asm.installed_date',\r\n HVAC_INFO = 'ami.device_type',\r\n STATUS = 'STATUS',\r\n}\r\n\r\nexport enum controlSortingKeys {\r\n PROPERTY_NAME = 'home_name',\r\n STREET = 'address',\r\n UNIT = 'unit_number',\r\n CITY = 'city',\r\n STATE = 'state_code',\r\n TEST_DATE = 'pre_season_test_date',\r\n TEST_STATUS = 'pre_season_test_result'\r\n}\r\n\r\nexport enum MDUSortingKeys {\r\n TEST = 'test',\r\n TIME = 'OCCURED_TIME',\r\n RESOLVED_TIME = 'CLEARED_TIME',\r\n STREET = 'STREET',\r\n CITY = 'CITY',\r\n STATE = 'STATE',\r\n INSTALLED_ON = 'INSTALLED_ON'\r\n\r\n}\r\n\r\nexport enum reportSortingKeys {\r\n PROPERTY_NAME = 'home_name',\r\n STREET = 'address',\r\n UNIT = 'unit_number',\r\n CITY = 'city',\r\n STATE = 'state_code',\r\n INSTALLED_ON = 'installed_date',\r\n TEST_DATE = 'pre_season_test_date',\r\n TEST_STATUS = 'pre_season_test_result',\r\n CUSTOMER = 'consumer_name'\r\n}\r\n\r\nexport enum SortingConstants {\r\n TECHNICIAN = 'technician_name',\r\n STATUS = 'status'\r\n}","export const deltaSVG = {\r\n DELTA: '' +\r\n '',\r\n};\r\n\r\nexport const cellularSignal={\r\n GOOD_SIGNAL:'',\r\n BAD_SIGNAL:'',\r\n FAIR_SIGNAL:''\r\n}","export enum ToasterType {\r\n SUCCESS = 'success',\r\n ERROR = 'error'\r\n}\r\n","import { Directive, ElementRef, Output, EventEmitter, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appClosePopOver]'\r\n})\r\nexport class ClosePopOverDirective {\r\n\r\n @Output() public closePopOver = new EventEmitter();\r\n\r\n constructor(\r\n private elementRef: ElementRef\r\n ) { }\r\n\r\n @HostListener('document:click', ['$event', '$event.target'])\r\n public onClick(event: MouseEvent, targetElement: HTMLElement): void {\r\n if (!targetElement) {\r\n return;\r\n }\r\n\r\n const clickedInside = this.elementRef.nativeElement.contains(targetElement);\r\n if (!clickedInside) {\r\n this.closePopOver.emit(event);\r\n }\r\n }\r\n\r\n}\r\n","import { Directive, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appScroll]'\r\n})\r\nexport class ScrollDirective {\r\n\r\n constructor() { }\r\n\r\n @HostListener('document:click')\r\n public onClick(): void {\r\n\r\n const htmlCollection = document.getElementsByClassName('modal');\r\n if (htmlCollection && htmlCollection.length) {\r\n document.body.setAttribute('class', 'overflow_hidden');\r\n } else {\r\n document.body.removeAttribute('class');\r\n }\r\n\r\n }\r\n\r\n}\r\n","import { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\nexport class JobTechnicianInfo {\r\n alertId: string;\r\n meliSerialNo: string;\r\n contractorId: number;\r\n technicianId: number;\r\n technicianName: string;\r\n revenueTag?: string;\r\n jobId: number;\r\n resolvedStatus: boolean;\r\n resolvedTime?: string;\r\n remarks?: any;\r\n\r\n constructor(data) {\r\n this.alertId = data.alertId;\r\n this.meliSerialNo = data.meliSerialNo;\r\n this.contractorId = data.contractorId;\r\n this.technicianId = data.technicianId;\r\n this.technicianName = data.technicianName;\r\n this.revenueTag = data.revenueTag;\r\n this.jobId = data.jobId;\r\n this.resolvedStatus = data.resolvedStatus;\r\n this.resolvedTime = data.resolvedTime;\r\n this.remarks = data.remarks;\r\n }\r\n}\r\nexport class ReadMore {\r\n alertId: string;\r\n comment: string;\r\n commentdId: number;\r\n createdTime: string;\r\n technicianAwsId: string;\r\n updatedTime: string;\r\n\r\n constructor(data) {\r\n this.alertId = data.alertId;\r\n this.comment = data.comment;\r\n this.commentdId = data.commentdId;\r\n this.createdTime = data.createdTime;\r\n this.technicianAwsId = data.technicianAwsId;\r\n this.updatedTime = data.updatedTime\r\n }\r\n}\r\n\r\nexport class PhoneAndEmail {\r\n mobile: any[];\r\n home: any[];\r\n office: string[];\r\n\r\n constructor(data) {\r\n this.mobile = data.mobile;\r\n this.home = data.home;\r\n this.office = data.office;\r\n }\r\n}\r\n\r\nexport class Consumer {\r\n customerId: number;\r\n customerName: string;\r\n addresses: Address[];\r\n phone: Phone[];\r\n email: Email[];\r\n consumerType:string;\r\n companyName:string;\r\n\r\n\r\n constructor(data) {\r\n this.customerId = data.customerId;\r\n this.customerName = data.customerName;\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value) => new Address(value));\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value) => new Email(value));\r\n this.consumerType=data.consumerType;\r\n this.companyName= data.companyName;\r\n }\r\n}\r\n\r\nexport class Alert {\r\n alertId?: string;\r\n alertCode?: string;\r\n alertName: string;\r\n alertStatus: string;\r\n deviceId: string;\r\n meliSerialNo?: string;\r\n meliStatus?: any;\r\n priority: string;\r\n boardType: string;\r\n timeStamp: string;\r\n displayTime: string;\r\n clearedTimestamp: string;\r\n consumer: Consumer;\r\n jobTechnicianInfo?: JobTechnicianInfo;\r\n readMore: ReadMore;\r\n minorAlerts: number;\r\n majorAlerts: number;\r\n indoorEquipmentLocation:string;\r\n shortLink:string;\r\n\r\n constructor(data) {\r\n this.alertId = data.alertId;\r\n this.alertCode = data.alertCode;\r\n this.alertName = data.alertName;\r\n this.alertStatus = data.alertStatus;\r\n this.deviceId = data.deviceId;\r\n this.meliSerialNo = data.meliSerialNo;\r\n this.meliStatus = data.meliStatus;\r\n this.priority = data.priority;\r\n this.boardType = data.boardtype;\r\n this.timeStamp = data.timestamp;\r\n this.displayTime = data.displayTime;\r\n this.clearedTimestamp = data.clearedTimestamp;\r\n this.consumer = data.consumer && new Consumer(data.consumer);\r\n this.jobTechnicianInfo =\r\n data.jobTechnicianInfo && new JobTechnicianInfo(data.jobTechnicianInfo);\r\n this.readMore = data.readMore && new ReadMore(data.readMore);\r\n this.minorAlerts = data.minorAlerts;\r\n this.majorAlerts = data.majorAlerts;\r\n this.indoorEquipmentLocation=data.indoorEquipmentLocation;\r\n this.shortLink=data.shortLink;\r\n }\r\n}\r\n\r\nexport class AlertsDetail {\r\n page: number;\r\n size: number;\r\n alertsList: Alert[];\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.alertsList =\r\n data.content &&\r\n data.content.length &&\r\n data.content.map((value) => new Alert(value));\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class AlertsResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n alertsResonse: AlertsDetail;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.alertsResonse =\r\n data.responseData && new AlertsDetail(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","export class AssetModel {\r\n id: number;\r\n modelNo: string;\r\n deviceType: string;\r\n brochureLink: string;\r\n\r\n constructor(data) {\r\n this.id = data.id;\r\n this.modelNo = data.modelNo;\r\n this.deviceType = data.deviceType;\r\n this.brochureLink = data.brochureLink;\r\n }\r\n}\r\n\r\nexport class AssetModelResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n AssetModelList: AssetModel[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.AssetModelList = data.responseData && data.responseData.length &&\r\n data.responseData.map((value) => new AssetModel(value));\r\n }\r\n}\r\n\r\nexport class CreateAssetModelResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n AssetModelList: AssetModel[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.AssetModelList = data.responseData && data.responseData.length &&\r\n data.responseData.map((value) => new AssetModel(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","export class LoginResponse {\r\n userName: string;\r\n idToken: string;\r\n accessToken: string;\r\n refreshToken: string;\r\n expiresIn: number;\r\n authTime: number;\r\n status: string;\r\n\r\n constructor(data) {\r\n this.userName = data.userName;\r\n this.idToken = data.idToken;\r\n this.accessToken = data.accessToken;\r\n this.refreshToken = data.refreshToken;\r\n this.expiresIn = data.expiresIn;\r\n this.authTime = data.authTime;\r\n this.status = data.status;\r\n }\r\n}\r\n\r\nexport class LoginResponseDetails {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: LoginResponse;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new LoginResponse(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\nexport class ForgotPasswordResponseDetails {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo: string;\r\n responseData?: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class ResetPasswordResponseDetails {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo: string;\r\n responseData?: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","export class cardDetails {\r\n card_number: string\r\n exp_month: number\r\n exp_year: number\r\n name: string\r\n postal_code: string\r\n security_code: string\r\n constructor(data) {\r\n this.card_number = data.card_number;\r\n this.exp_month = data.exp_month;\r\n this.exp_year = data.exp_year\r\n this.name = data.name\r\n this.postal_code = data.postal_code\r\n this.security_code = data.security_code\r\n\r\n }\r\n}\r\n\r\nexport class bankDetails {\r\n account_holder_name: string\r\n account_holder_type: string\r\n account_number: string\r\n routing_number: string\r\n constructor(data) {\r\n this.account_holder_name = data.account_holder_name;\r\n this.account_holder_type = data.account_holder_type;\r\n this.account_number = data.account_number\r\n this.routing_number = data.routing_number\r\n }\r\n}\r\n\r\n\r\n\r\nexport class accountDetails {\r\n cardDetails: cardDetails\r\n bankDetails: bankDetails\r\n constructor(data) {\r\n this.cardDetails = data.cardDetails && new cardDetails(data.cardDetails);\r\n this.bankDetails = data.bankDetails && new bankDetails(data.bankDetails);;\r\n }\r\n}\r\n\r\n\r\nexport class BillingCardResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: accountDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData =\r\n data.responseData && new accountDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\n\r\nexport class successResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}","export class Email {\r\n emailId: number;\r\n email: string;\r\n type: string;\r\n\r\n constructor(data) {\r\n this.emailId = data.emailId;\r\n this.email = data.email;\r\n this.type = data.type;\r\n }\r\n}\r\n\r\nexport class Phone {\r\n phoneId: number;\r\n phoneNumber: string;\r\n type: string;\r\n countryCode?: any;\r\n\r\n constructor(data) {\r\n this.phoneId = data.phoneId;\r\n this.phoneNumber = data.phoneNumber;\r\n this.type = data.type;\r\n this.countryCode = data.countryCode;\r\n }\r\n}\r\n\r\nexport class Address {\r\n addressId: number;\r\n address: string;\r\n addressLine2: string;\r\n city: string;\r\n state: string;\r\n stateCode: string;\r\n zipcode: any;\r\n type: string;\r\n placeId: string;\r\n formattedAddress: string;\r\n propertyUnitLocation:string;\r\n latitude:any;\r\n longitude:any;\r\n propertyName:string;\r\n unitAptNo:any;\r\n\r\n constructor(data) {\r\n this.addressId = data.addressId;\r\n this.address = data.address;\r\n this.addressLine2 = data.addressLine2;\r\n this.city = data.city;\r\n this.state = data.state;\r\n this.stateCode = data.stateCode;\r\n this.zipcode = data.zipcode;\r\n this.type = data.type;\r\n this.placeId = data.placeId;\r\n this.formattedAddress = data.formattedAddress;\r\n this.propertyUnitLocation= data.propertyUnitLocation;\r\n this.latitude= data.latitude;\r\n this.longitude= data.longitude;\r\n this.propertyName= data.propertyName;\r\n this.unitAptNo= data.unitAptNo;\r\n }\r\n}\r\n\r\nexport class IsEmailAlreadyExistsResponseDetails {\r\n isExists: boolean;\r\n\r\n constructor(data) {\r\n this.isExists = data.isExists || data.emailExist;\r\n }\r\n\r\n}\r\n\r\nexport class IsEmailAlreadyExistsResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n isEmailAlreadyExistsResponseDetails: IsEmailAlreadyExistsResponseDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.isEmailAlreadyExistsResponseDetails = data.responseData &&\r\n new IsEmailAlreadyExistsResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n\r\n}\r\n\r\nexport class CommonSuccessResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo: string;\r\n responseData?: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CommonSuccessResponseList {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo: string;\r\n responseData?: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new BoardTypeCount(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class BoardTypeCount {\r\n cellular: number;\r\n wifi: number;\r\n\r\n constructor(data) {\r\n this.cellular = data.Cellular;\r\n this.wifi = data['Wi-Fi'];\r\n }\r\n\r\n}\r\n","\r\nimport { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\n\r\nexport class ContractorDetails {\r\n contractorId: number;\r\n awsContractorId: string;\r\n contractorName: string;\r\n contactPerson: string;\r\n logoUrls: string[];\r\n logoName: string[];\r\n docUrl: any[];\r\n docName: any[];\r\n firmName?: string;\r\n website?: string;\r\n phone: Phone[];\r\n email: Email[];\r\n addresses: Address[];\r\n permissionId: number;\r\n permissionType?: any;\r\n resourceTypeId: number;\r\n resourceType: boolean;\r\n totalMelis: number;\r\n totalCustomers: number;\r\n operatingSince: number;\r\n numOfTechnicians: number;\r\n dealerType: string;\r\n notificatonsStatusModel:Notifications;\r\n channelId:string;\r\n channelName:string;\r\n constructor(data) {\r\n this.contractorId = data.contractorId;\r\n this.awsContractorId = data.awsContractorId;\r\n this.contractorName = data.contractorName;\r\n this.contactPerson = data.contactPerson;\r\n this.logoUrls = data.logoUrl;\r\n this.logoName = data.logoName;\r\n this.docName = data.docName;\r\n this.docUrl = data.docUrl;\r\n this.firmName = data.firmName;\r\n this.website = data.website;\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value, index) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value, index) => new Email(value));\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value, index) => new Address(value));\r\n this.permissionId = data.permissionId;\r\n this.permissionType = data.permissionType;\r\n this.resourceTypeId = data.resourceTypeId;\r\n this.resourceType = data.resourceType;\r\n this.totalMelis = data.totalMelis;\r\n this.totalCustomers = data.totalConsumers;\r\n this.operatingSince = data.operatingSince;\r\n this.numOfTechnicians = data.numOfTechnicians;\r\n this.dealerType = data.dealerType;\r\n this.notificatonsStatusModel=data.notificatonsStatusModel&& new Notifications(data.notificatonsStatusModel);\r\n this.channelId= data.channelId;\r\n this.channelName=data.channelName;\r\n }\r\n}\r\n\r\nexport class Notifications{\r\n majorAlertsEmail:boolean;\r\n majorAlertsSms:boolean;\r\n minorAlertsEmail:boolean;\r\n minorAlertsSms:boolean;\r\n\r\n constructor(data)\r\n {\r\n this.majorAlertsEmail=data.majorAlertsEmail;\r\n this.majorAlertsSms=data.majorAlertsSms;\r\n this.minorAlertsEmail=data.minorAlertsEmail;\r\n this.minorAlertsSms=data.minorAlertsSms;\r\n }\r\n}\r\n\r\nexport class ContractorDetailsResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: ContractorDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new ContractorDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class ContractorListResponseDetails {\r\n page: number;\r\n size: number;\r\n contractorList: ContractorDetails[];\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.contractorList = data.content && data.content.length &&\r\n data.content.map((value, index) => new ContractorDetails(value));\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class ContractorListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n contractorListResponse: ContractorListResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.contractorListResponse = data.responseData &&\r\n new ContractorListResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CreateContractorDetails {\r\n msg: string;\r\n role: string;\r\n awsContractorId: string;\r\n contractorId: string;\r\n\r\n constructor(data) {\r\n this.msg = data.msg;\r\n this.role = data.role;\r\n this.awsContractorId = data.awsContractorId;\r\n this.contractorId = data.contractorId;\r\n }\r\n}\r\n\r\nexport class CreateContractorResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n createContractorResponse: CreateContractorDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.createContractorResponse = data.responseData &&\r\n new CreateContractorDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class Dealer {\r\n dealer: string;\r\n dealerId: number;\r\n noCustomerOrTenant: string;\r\n isMdu: string;\r\n installedBoards: string;\r\n city: string;\r\n state?: any;\r\n\r\n constructor(data) {\r\n this.dealer = data.dealer;\r\n this.dealerId = data.dealerId;\r\n this.noCustomerOrTenant = data.no_customer_or_tenant;\r\n this.isMdu = data.isMdu;\r\n this.installedBoards = data.installedBoards;\r\n this.city = data.city;\r\n this.state = data.state;\r\n }\r\n}\r\n\r\nexport class DealerListResponseDetails {\r\n page: number;\r\n size: number;\r\n dealerList: Dealer[];\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.dealerList = data.content && data.content.length &&\r\n data.content.map((value, index) => new Dealer(value));\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class DealerListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: DealerListResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new DealerListResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class BulkDealerUploadInfo {\r\n rowNumber: number;\r\n message: string;\r\n\r\n constructor(data) {\r\n this.rowNumber = data.rowNumber;\r\n this.message = data.message;\r\n }\r\n}\r\n\r\n\r\nexport class BulkDealerUploadResponseDetails {\r\n message: string;\r\n validRecordsCount: number;\r\n inValidRecordsCount: number;\r\n info: BulkDealerUploadInfo[];\r\n\r\n constructor(data) {\r\n this.message = data.Message;\r\n this.validRecordsCount = data.valid_records_count;\r\n this.inValidRecordsCount = data.in_valid_records_count;\r\n this.info = data.info && data.info.length &&\r\n data.info.map((value, index) => new BulkDealerUploadInfo(value));\r\n }\r\n}\r\n\r\nexport class BulkDealerUploadResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: BulkDealerUploadResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new BulkDealerUploadResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","import { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\nimport { AssetDetail } from 'src/app/shared/models/customer.model';\r\nimport { InstallationReportDetails } from './inventory.model';\r\nimport { PreSeasonDetail } from './preseason.model';\r\nexport class MduControlAddress {\r\n addressId: number;\r\n address: string;\r\n city: string;\r\n state: string;\r\n stateCode: string;\r\n zipcode: any;\r\n type: string;\r\n boardSerialNumber: string;\r\n deviceType: string;\r\n propertyName: string;\r\n consumerName?: string;\r\n propertyUnitLocation: string;\r\n unitAptNo: string;\r\n consumerId: string;\r\n constructor(data) {\r\n this.consumerId = data.consumerId;\r\n this.addressId = data.addressId;\r\n this.address = data.address;\r\n this.city = data.city;\r\n this.state = data.state;\r\n this.stateCode = data.stateCode;\r\n this.zipcode = data.zipcode;\r\n this.type = data.type;\r\n this.boardSerialNumber = data.boardSerialNumber;\r\n this.deviceType = data.deviceType;\r\n this.propertyName = data.propertyName;\r\n this.consumerName = data.consumerName;\r\n this.propertyUnitLocation = data.propertyUnitLocation;\r\n this.unitAptNo = data.unitAptNo;\r\n }\r\n}\r\n\r\nexport class PreseasonInfo {\r\n report: PreSeasonDetail;\r\n status: string;\r\n preseasonTestDate: string;\r\n preseasonTestStatus: string;\r\n equipmentId: string;\r\n testEnabled:boolean\r\n constructor(data) {\r\n this.report = data.report && new PreSeasonDetail(data.report);\r\n this.status = data.status;\r\n this.preseasonTestDate = data.preseasonTestDate;\r\n this.preseasonTestStatus = data.preseasonTestStatus\r\n this.equipmentId = data.equipmentId;\r\n this.testEnabled=data.testEnabled;\r\n }\r\n}\r\nexport class meliInfo {\r\n meliId: number;\r\n meliSerialNumber: string;\r\n meliType: string;\r\n deviceType: string;\r\n installedOn: string;\r\n installationReport?: InstallationReportDetails;\r\n submitinstallationReport?:any;\r\n preseason: PreseasonInfo;\r\n constructor(data) {\r\n this.meliId = data.meliId;\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.meliType = data.meliType;\r\n this.deviceType = data.deviceType;\r\n this.installedOn = data.installedOn;\r\n this.installationReport = data.installationReport && new InstallationReportDetails(data.installationReport);\r\n this.submitinstallationReport = data.installationReport ;\r\n this.preseason = data.preseason && new PreseasonInfo(data.preseason);\r\n }\r\n\r\n}\r\nexport class Info {\r\n consumerId: number;\r\n consumerName: string;\r\n companyName:string;\r\n consumerType:string;\r\n propertyModel: MduControlAddress;\r\n meliList: meliInfo[];\r\n addresses: string;\r\n\r\n constructor(data) {\r\n this.consumerId = data.consumerId;\r\n this.consumerName = data.consumerName;\r\n this.companyName=data.companyName;\r\n this.consumerType=data.consumerType;\r\n this.propertyModel = data.propertyModel && new MduControlAddress(data.propertyModel);\r\n this.meliList = data.meliList && data.meliList.length && data.meliList.map((value) => new meliInfo(value));\r\n\r\n }\r\n}\r\nexport class Control {\r\n consumerId: number;\r\n consumerName: string;\r\n info: Info[];\r\n criticalFaultsDetected?: number;\r\n faultsDetected?: number;\r\n passed?: number;\r\n\r\n constructor(data) {\r\n this.consumerId = data.consumerId;\r\n this.consumerName = data.consumerName;\r\n this.info = data.info && data.info.length && data.info.map((value) => new Info(value));\r\n this.criticalFaultsDetected = data.criticalFaultsDetected;\r\n this.faultsDetected = data.faultsDetected;\r\n this.passed = data.passed;\r\n\r\n }\r\n}\r\n\r\nexport class ControlListResponseDetails {\r\n page: number;\r\n size: number;\r\n content: Control;\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n this.content = data.content && new Control(data.content);\r\n\r\n }\r\n}\r\n\r\nexport class ControlListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: ControlListResponseDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new ControlListResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n","import { Email, Phone, Address, BoardTypeCount } from 'src/app/shared/models/common.model';\r\nimport { InstallationReportDetails } from './inventory.model';\r\n\r\n// export class PhoneAndEmail {\r\n// mobile: string[];\r\n// home: string[];\r\n// office: string[];\r\n\r\n// constructor(data) {\r\n// this.mobile = data.mobile;\r\n// this.home = data.home;\r\n// this.office = data.office;\r\n// }\r\n// }\r\n\r\nexport class ModelInfo {\r\n id: number;\r\n modelNo: string;\r\n deviceType: string;\r\n brochureLink: string;\r\n\r\n constructor(data) {\r\n this.id = data.id;\r\n this.modelNo = data.modelNo;\r\n this.deviceType = data.deviceType;\r\n this.brochureLink = data.brochureLink;\r\n }\r\n}\r\n\r\nexport class AssetUnitParameter {\r\n unitParameterId: number;\r\n unitParameterName: string;\r\n unitParameterValue: string;\r\n\r\n constructor(data) {\r\n this.unitParameterId = data.unitParameterId;\r\n this.unitParameterName = data.unitParameterName;\r\n this.unitParameterValue = data.unitParameterValue;\r\n }\r\n}\r\n\r\nexport class AssetModelInfo {\r\n modelNo: string;\r\n ratedElectricStripCapacity?: string;\r\n equipment: TypeList;\r\n indoorEquipmentType: TypeList;\r\n outdoorEquipmentType: TypeList;\r\n filterLength: TypeList;\r\n filterThickness: TypeList;\r\n filterType: TypeList;\r\n filterWidth: TypeList;\r\n fuelType: TypeList;\r\n heatType: TypeList;\r\n indoorEquipmentMake: TypeList;\r\n meteringDevice: TypeList;\r\n indoorMultiStage: TypeList;\r\n outdoorEquipmentMake: TypeList;\r\n outdoorMultiStage: TypeList;\r\n outdoorNominalACCapacity: TypeList;\r\n outdoorSeer: TypeList;\r\n ratedCapacity: TypeList;\r\n \r\n refigerantType: TypeList;\r\n systemConfiguration: TypeList;\r\n variableSpeedBlower: TypeList;\r\n locations: TypeList;\r\n zonedSystem: TypeList;\r\n assetModelInfoId: number;\r\n reversingValve:Text;\r\n heatSource:boolean;\r\n equipmentIs: TypeList;\r\n outdoorInverterCompressor: TypeList;\r\n\r\n constructor(data) {\r\n this.modelNo = data.modelNo;\r\n this.assetModelInfoId = data.assetModelInfoId;\r\n this.reversingValve=data.reversingValve;\r\n this.heatSource = data.heatSource;\r\n this.ratedElectricStripCapacity = data.ratedElectricStripCapacity;\r\n this.equipment = data.equipment && new TypeList(data.equipment);\r\n this.indoorEquipmentType = data.indoorEquipmentType && new TypeList(data.indoorEquipmentType);\r\n this.outdoorEquipmentType = data.outdoorEquipmentType && new TypeList(data.outdoorEquipmentType);\r\n this.filterLength = data.filterLength && new TypeList(data.filterLength);\r\n this.filterThickness = data.filterThickness && new TypeList(data.filterThickness);\r\n this.filterType = data.filterType && new TypeList(data.filterType);\r\n this.filterWidth = data.filterWidth && new TypeList(data.filterWidth);\r\n this.fuelType = data.fuelType && new TypeList(data.fuelType);\r\n this.heatType = data.heatType && new TypeList(data.heatType);\r\n this.indoorEquipmentMake = data.indoorEquipmentMake && new TypeList(data.indoorEquipmentMake);\r\n this.meteringDevice = data.meteringDevice && new TypeList(data.meteringDevice);\r\n this.indoorMultiStage = data.indoorMultiStage && new TypeList(data.indoorMultiStage);\r\n this.outdoorEquipmentMake = data.outdoorEquipmentMake && new TypeList(data.outdoorEquipmentMake);\r\n this.outdoorMultiStage = data.outdoorMultistage && new TypeList(data.outdoorMultistage);\r\n this.outdoorNominalACCapacity = data.outdoorNominalACCapacity && new TypeList(data.outdoorNominalACCapacity);\r\n this.outdoorSeer = data.outdoorSeer && new TypeList(data.outdoorSeer);\r\n this.ratedCapacity = data.ratedCapacity && new TypeList(data.ratedCapacity);\r\n this.refigerantType = data.refigerantType && new TypeList(data.refigerantType);\r\n this.systemConfiguration = data.systemConfiguration && new TypeList(data.systemConfiguration);\r\n this.variableSpeedBlower = data.variableSpeedBlower && new TypeList(data.variableSpeedBlower);\r\n this.zonedSystem = data.zonedSystem && new TypeList(data.zonedSystem);\r\n this.locations = data.locations && new TypeList(data.locations);\r\n this.equipmentIs = data.isEquipment && new TypeList(data.isEquipment);\r\n this.outdoorInverterCompressor = data.isOutdoorInverter && new TypeList(data.isOutdoorInverter)\r\n\r\n }\r\n}\r\n\r\nexport class Report {\r\n comments:[];\r\n constructor(data) {\r\n this.comments=data.comments;\r\n }\r\n\r\n}\r\n\r\nexport class AssetDetail {\r\n assetUnitTypeId: number;\r\n assetId:number;\r\n assetUnitComments: any[];\r\n assetUnitName: string;\r\n assetUnitType: string;\r\n assetUnitSerialNumber: string;\r\n assetUnitUniqueId?: any;\r\n inInventoryDate: string;\r\n installedOn?: string;\r\n meliId: number;\r\n meliSerialNumber?: string;\r\n meliStatus?: string;\r\n // manufacturerId: number;\r\n // manufacturerName: string;\r\n // modelInfo: ModelInfo;\r\n assetModelInfo: AssetModelInfo;\r\n images: any[];\r\n boardConnectivityStatus?: string;\r\n connectivityStatus?: string;\r\n subscriptionPlanName?: any;\r\n subscriptionPlanId: number;\r\n deviceType?: any;\r\n report?: Report;\r\nsignalStrength:string;\r\n constructor(data) {\r\n this.assetUnitTypeId = data.assetUnitTypeId;\r\n this.assetUnitName = data.assetUnitName;\r\n this.assetUnitComments = data.assetUnitComments;\r\n this.assetUnitType = data.assetUnitType;\r\n this.assetUnitSerialNumber = data.assetUnitSerialNumber;\r\n this.assetUnitUniqueId = data.assetUnitUniqueId;\r\n this.installedOn = data.installedOn;\r\n this.inInventoryDate = data.inInventoryDate;\r\n this.meliId = data.meliId;\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.meliStatus = data.meliStatus;\r\n this.assetId = data.assetId;\r\n //this.modelInfo = new ModelInfo(data.modelInfo);\r\n this.assetModelInfo = data.assetModelInfo && new AssetModelInfo(data.assetModelInfo);\r\n this.report = data.report && new Report(data.report)\r\n this.images = data.images;\r\n this.boardConnectivityStatus = data.boardConnectivityStatus;\r\n this.connectivityStatus = data.connectivityStatus;\r\n this.subscriptionPlanName = data.subscriptionPlanName;\r\n this.subscriptionPlanId = data.subscriptionPlanId;\r\n this.deviceType = data.deviceType;\r\n this.signalStrength=data.signalStrength;\r\n }\r\n}\r\n\r\nexport class Customer {\r\n customerId: number;\r\n customerName: string;\r\n customerFirstName: string;\r\n customerLastName: string;\r\n addresses: Address[];\r\n phone?: Phone[];\r\n email?: Email[];\r\n assetId: number;\r\n assetName: string;\r\n assetDetails: AssetDetail[];\r\n awsConsumerId:number;\r\n companyName?:string;\r\n consumerType?:string;\r\n\r\n constructor(data) {\r\n this.customerId = data.consumerId;\r\n this.customerName = data.consumerName;\r\n this.customerFirstName = data.consumerFirstName;\r\n this.customerLastName = data.consumerLastName;\r\n this.companyName= data.companyName;\r\n this.consumerType=data.consumerType;\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value, index) => new Address(value));\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value, index) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value, index) => new Email(value));\r\n this.assetId = data.assetId;\r\n this.assetName = data.assetName;\r\n this.assetDetails = data.assetDetails && data.assetDetails.length &&\r\n data.assetDetails.map((value, index) => new AssetDetail(value));\r\n this.awsConsumerId=data.awsConsumerId;\r\n }\r\n}\r\n\r\nexport class CustomerListResponseDetails {\r\n page: number;\r\n size: number;\r\n customers: Customer[];\r\n boardCount: BoardTypeCount;\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.customers = data.content && data.content.consumerList && data.content.consumerList.length &&\r\n data.content.consumerList.map((value) => new Customer(value));\r\n this.boardCount = data.content && data.content.boardCount && new BoardTypeCount(data.content.boardCount);\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class CustomerListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: CustomerListResponseDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new CustomerListResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\n\r\nexport class CustomerListCount {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: CustomerListCountDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new CustomerListCountDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\nexport class CustomerListCountDetails\r\n{\r\nCellular: number;\r\n WiFi: number;\r\n\r\n constructor(data) {\r\n this.Cellular= data.Cellular\r\n this.WiFi = data['Wi-Fi']\r\n }\r\n}\r\n\r\n\r\n\r\n\r\nexport class AssetDetailResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: AssetDetail;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new AssetDetail(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n// export class UnassignedCustomerDetail {\r\n// customerId: number;\r\n// customerName: string;\r\n\r\n// constructor(data) {\r\n// this.customerId = data.consumerId;\r\n// this.customerName = data.consumerName;\r\n// }\r\n// }\r\n\r\nexport class UnassignedCustomersListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n unassignedCustomersList: Customer[];\r\n requestData: number;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.unassignedCustomersList = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new Customer(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class Model {\r\n assetModelInfoId: number;\r\n modelNo: string;\r\n\r\n constructor(data) {\r\n this.assetModelInfoId = data.assetModelInfoId;\r\n this.modelNo = data.modelNo;\r\n }\r\n}\r\n\r\n// export class Phone {\r\n// id?: any;\r\n// type: string;\r\n// phone: string;\r\n// }\r\n\r\n// export class Email {\r\n// id?: any;\r\n// type: string;\r\n// email: string;\r\n// }\r\n\r\n// export class Address {\r\n// addressId?: any;\r\n// addressType?: any;\r\n// street: string;\r\n// city: string;\r\n// state: string;\r\n// zipcode: string;\r\n// }\r\n\r\nexport class CreateCustomerDetails {\r\n customerId?: any;\r\n customerName: string;\r\n assetId?: any;\r\n assetName?: any;\r\n phone: Phone[];\r\n email: Email[];\r\n addresses: Address[];\r\n assetDetails: AssetDetail[];\r\n\r\n constructor(data) {\r\n this.customerName = data.consumerName;\r\n this.customerId = data.consumerId;\r\n this.assetId = data.assetId;\r\n this.assetName = data.assetName;\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value, index) => new Address(value));\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value, index) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value, index) => new Email(value));\r\n this.assetDetails = data.assetDetails && data.assetDetails.length &&\r\n data.assetDetails.map((value, index) => new AssetDetail(value));\r\n }\r\n}\r\n\r\nexport class CreateCustomer {\r\n customerId: number;\r\n customerName: string;\r\n awsConsumerId: string;\r\n assetId: number;\r\n assetName?: any;\r\n addresses: any[];\r\n phone: any[];\r\n email: any[];\r\n homeId: number;\r\n assetDetails: any[];\r\n\r\n constructor(data) {\r\n this.customerId = data.consumerId;\r\n this.customerName = data.consumerName;\r\n this.awsConsumerId = data.awsConsumerId;\r\n this.assetId = data.assetId;\r\n this.assetName = data.assetName;\r\n this.addresses = data.addresses;\r\n this.phone = data.phone;\r\n this.email = data.email;\r\n this.homeId = data.homeId;\r\n this.assetDetails = data.assetDetails;\r\n }\r\n}\r\n\r\nexport class CreateCustomerResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n createCustomer: CreateCustomer;\r\n createCustomerDetails: CreateCustomerDetails;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.createCustomer = data.responseData && new CreateCustomer(data.responseData);\r\n this.createCustomerDetails = data.requestData && new CreateCustomerDetails(data.requestData);\r\n }\r\n}\r\n\r\nexport class DeleteCustomerResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData?: any;\r\n requestData: number[];\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class UnassignCustomerFromMeliDetails {\r\n meliId: number;\r\n assetId: number;\r\n consumerId: number;\r\n\r\n constructor(data) {\r\n this.meliId = data.meliId;\r\n this.assetId = data.assetId;\r\n this.consumerId = data.consumerId;\r\n }\r\n}\r\n\r\nexport class UnassignCustomerFromMeliResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: string;\r\n requestData: UnassignCustomerFromMeliDetails;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData && new UnassignCustomerFromMeliDetails(data.requestData);\r\n }\r\n}\r\n\r\nexport class TypeList {\r\n id: number;\r\n value: any;\r\n\r\n constructor(data) {\r\n this.id = data.id;\r\n this.value = data.value || data.title;\r\n }\r\n}\r\n\r\nexport class HVACInformation {\r\n typeList: TypeList[];\r\n equipmentList: TypeList[];\r\n filterLenghtList: TypeList[];\r\n filterThicknessList: TypeList[];\r\n filterTypeList: TypeList[];\r\n filterWidthList: TypeList[];\r\n indoorFuelTypeList: TypeList[];\r\n indoorHeatTypeList: TypeList[];\r\n indoorEquipmentMakeList: TypeList[];\r\n meteringDeviceList: TypeList[];\r\n indoorMultiStageList: TypeList[];\r\n outdoorEquipmentMakeList: TypeList[];\r\n outdoorMultistageList: TypeList[];\r\n outdoorNominalACCapacityList: TypeList[];\r\n outdoorSeerList: TypeList[];\r\n indoorRatedCapacityList: TypeList[];\r\n ratedElectricStripCapacityList: TypeList[];\r\n indoorRefigerantTypeList: TypeList[];\r\n systemConfigurationList: TypeList[];\r\n variableSpeedBlowerList: TypeList[];\r\n zonedSystemList: TypeList[];\r\n locationsList: TypeList[];\r\n indoorEquipmentTypeList: TypeList[];\r\n outdoorEquipmentTypeList: TypeList[];\r\n isEquipmentList: TypeList[];\r\n outdoorInverterCompressorList: TypeList[];\r\n\r\n constructor(data) {\r\n this.typeList = data.typeList && data.typeList.length &&\r\n data.typeList.map((value) => new TypeList(value));\r\n this.equipmentList = data.equipmentList && data.equipmentList.length &&\r\n data.equipmentList.map((value) => new TypeList(value));\r\n this.filterLenghtList = data.filterLenghtList && data.filterLenghtList.length &&\r\n data.filterLenghtList.map((value) => new TypeList(value));\r\n this.filterThicknessList = data.filterThicknessList && data.filterThicknessList.length &&\r\n data.filterThicknessList.map((value) => new TypeList(value));\r\n this.filterTypeList = data.filterTypeList && data.filterTypeList.length &&\r\n data.filterTypeList.map((value) => new TypeList(value));\r\n this.filterWidthList = data.filterWidthList && data.filterWidthList.length &&\r\n data.filterWidthList.map((value) => new TypeList(value));\r\n this.indoorFuelTypeList = data.fuelTypeList && data.fuelTypeList.length &&\r\n data.fuelTypeList.map((value) => new TypeList(value));\r\n this.indoorHeatTypeList = data.heatTypeList && data.heatTypeList.length &&\r\n data.heatTypeList.map((value) => new TypeList(value));\r\n this.indoorEquipmentMakeList = data.indoorEquipmentMakeList && data.indoorEquipmentMakeList.length &&\r\n data.indoorEquipmentMakeList.map((value) => new TypeList(value));\r\n this.meteringDeviceList = data.meteringDeviceList && data.meteringDeviceList.length &&\r\n data.meteringDeviceList.map((value) => new TypeList(value));\r\n this.indoorMultiStageList = data.indoorMultiStageList && data.indoorMultiStageList.length &&\r\n data.indoorMultiStageList.map((value) => new TypeList(value));\r\n this.outdoorEquipmentMakeList = data.outdoorEquipmentMakeList && data.outdoorEquipmentMakeList.length &&\r\n data.outdoorEquipmentMakeList.map((value) => new TypeList(value));\r\n this.outdoorMultistageList = data.outdoorMultistageList && data.outdoorMultistageList.length &&\r\n data.outdoorMultistageList.map((value) => new TypeList(value));\r\n this.outdoorNominalACCapacityList = data.outdoorNominalACCapacityList && data.outdoorNominalACCapacityList.length &&\r\n data.outdoorNominalACCapacityList.map((value) => new TypeList(value));\r\n this.outdoorSeerList = data.outdoorSeerList && data.outdoorSeerList.length &&\r\n data.outdoorSeerList.map((value) => new TypeList(value));\r\n this.indoorRatedCapacityList = data.ratedCapacityList && data.ratedCapacityList.length &&\r\n data.ratedCapacityList.map((value) => new TypeList(value));\r\n this.ratedElectricStripCapacityList = data.ratedElectricStripCapacityList && data.ratedElectricStripCapacityList.length &&\r\n data.ratedElectricStripCapacityList.map((value) => new TypeList(value));\r\n this.indoorRefigerantTypeList = data.refigerantTypeList && data.refigerantTypeList.length &&\r\n data.refigerantTypeList.map((value) => new TypeList(value));\r\n this.systemConfigurationList = data.systemConfigurationList && data.systemConfigurationList.length &&\r\n data.systemConfigurationList.map((value) => new TypeList(value));\r\n this.variableSpeedBlowerList = data.variableSpeedBlowerList && data.variableSpeedBlowerList.length &&\r\n data.variableSpeedBlowerList.map((value) => new TypeList(value));\r\n this.zonedSystemList = data.zonedSystemList && data.zonedSystemList.length &&\r\n data.zonedSystemList.map((value) => new TypeList(value));\r\n this.locationsList = data.locationsList && data.locationsList.length &&\r\n data.locationsList.map((value) => new TypeList(value));\r\n this.indoorEquipmentTypeList = data.indoorEquipmentTypeList && data.indoorEquipmentTypeList.length &&\r\n data.indoorEquipmentTypeList.map((value) => new TypeList(value));\r\n this.outdoorEquipmentTypeList = data.outdoorEquipmentTypeList && data.outdoorEquipmentTypeList.length &&\r\n data.outdoorEquipmentTypeList.map((value) => new TypeList(value));\r\n this.isEquipmentList = data.isEquipmentList && data.isEquipmentList.length &&\r\n data.isEquipmentList.map((value) => new TypeList(value));\r\n this.outdoorInverterCompressorList = data.isOutdoorInverterList && data.isOutdoorInverterList.length &&\r\n data.isOutdoorInverterList.map((value) => new TypeList(value));\r\n }\r\n}\r\n\r\nexport class HVACInformationResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n HVACInformation: HVACInformation;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.HVACInformation = data.responseData && new HVACInformation(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class SubscriptionPlanListResponseDetails {\r\n subscriptionPlanId: number;\r\n planSubscriptionName: string;\r\n planSubscriptionSubTitle: string;\r\n planSubscriptionPeriod: string;\r\n\r\n constructor(data) {\r\n this.subscriptionPlanId = data.planSubscriptionId;\r\n this.planSubscriptionName = data.planSubscriptionName;\r\n this.planSubscriptionSubTitle = data.planSubscriptionSubTitle;\r\n this.planSubscriptionPeriod = data.planSubscriptionPeriod;\r\n }\r\n}\r\n\r\nexport class SubscriptionPlanListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n subscriptionPlanList: SubscriptionPlanListResponseDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.subscriptionPlanList = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new SubscriptionPlanListResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CellularPlansStatusList {\r\n meliCellularPlanStatusId: number;\r\n meliCellularPlanStatusName: string;\r\n meliCellularPlanStatusSubTitle: string;\r\n\r\n constructor(data) {\r\n this.meliCellularPlanStatusId = data.meliSubscriptionPlanStatusId;\r\n this.meliCellularPlanStatusName = data.meliSubscriptionPlanStatusName;\r\n this.meliCellularPlanStatusSubTitle = data.meliSubscriptionPlanStatusSubTitle;\r\n }\r\n}\r\n\r\nexport class CellularPlanListResponseDetails {\r\n currecntcellularPlan: number;\r\n cellularPlanList: CellularPlansStatusList[];\r\n\r\n constructor(data) {\r\n this.currecntcellularPlan = data.currecntSubscriptionPlanStatus;\r\n this.cellularPlanList = data.allSubscriptionPlansStatusList && data.allSubscriptionPlansStatusList.length &&\r\n data.allSubscriptionPlansStatusList.map((value, index) => new CellularPlansStatusList(value));\r\n }\r\n}\r\n\r\nexport class CellularPlanListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n cellularPlanDetails: CellularPlanListResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.cellularPlanDetails = data.responseData && new CellularPlanListResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class OtherDetails {\r\n timeStamp: string;\r\n reason: string;\r\n amount: string;\r\n txId: string;\r\n\r\n constructor(data) {\r\n this.timeStamp = data.timeStamp;\r\n this.reason = data.reason;\r\n this.amount = data.amount;\r\n this.txId = data.txId;\r\n }\r\n}\r\n\r\nexport class BillingListResponseDetails {\r\n meliSerialNumber: string;\r\n planName: string;\r\n otherDetails: OtherDetails[];\r\n\r\n constructor(data) {\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.planName = data.planName;\r\n this.otherDetails = data.others && data.others.length &&\r\n data.others.map((value, index) => new OtherDetails(value));\r\n }\r\n}\r\n\r\nexport class BillingListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n billingList: BillingListResponseDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.billingList = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new BillingListResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CurrentCellularStatusResponseDetails {\r\n simCardNumber: string;\r\n simSubscriptionStatus: string;\r\n simCardStatus: string;\r\n\r\n constructor(data) {\r\n this.simCardNumber = data.simCardNumber;\r\n this.simSubscriptionStatus = data.simSubscriptionStatus;\r\n this.simCardStatus = data.simCardStatus;\r\n }\r\n}\r\n\r\nexport class CurrentCellularStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: CurrentCellularStatusResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new CurrentCellularStatusResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","export class ComfortbridgeObject {\r\n ac: ACObject;\r\n system: SystemObject;\r\n furnace: GasFurnaceObject;\r\n heatPump: HEATPUMPObject;\r\n constructor(data) {\r\n this.ac = data.ac && new ACObject(data.ac);\r\n this.system = data.system && new SystemObject(data.system);\r\n this.furnace = data.furnace && new GasFurnaceObject(data.furnace);\r\n this.heatPump = data.heatPump && new HEATPUMPObject(data.heatPump);\r\n }\r\n}\r\nexport class SystemObject {\r\n config: Config;\r\n status: Status;\r\n constructor(data) {\r\n this.config = data.config && new Config(data.config);\r\n this.status = data.status && new Status(data.status)\r\n }\r\n}\r\n\r\nexport class Status {\r\n HVACOperationMode: string;\r\n heatVentMode: string;\r\n tstat24Wterminal: string;\r\n tstat24Yterminal: string;\r\n tstat24Gterminal: string;\r\n constructor(data) {\r\n this.HVACOperationMode = data.HVACOperationMode;\r\n this.heatVentMode = data.heatVentMode;\r\n this.tstat24Wterminal = data.tstat24Wterminal;\r\n this.tstat24Yterminal = data.tstat24Yterminal;\r\n this.tstat24Gterminal = data.tstat24Gterminal;\r\n }\r\n}\r\n\r\nexport class Config {\r\n compressorHeatLockout: number;\r\n setPointSafetyRate: number;\r\n customTargetRange: number;\r\n customStageUpPercentage: number;\r\n customStageDownPercentage: number;\r\n constructor(data) {\r\n this.compressorHeatLockout = data.compressorHeatLockout;\r\n this.setPointSafetyRate = data.setPointSafetyRate;\r\n this.customTargetRange = data.customTargetRange;\r\n this.customStageUpPercentage = data.customStageUpPercentage;\r\n this.customStageDownPercentage = data.customStageDownPercentage;\r\n }\r\n}\r\n\r\nexport class GasFurnaceObject {\r\n config: GF_Config;\r\n status: GF_Status;\r\n constructor(data) {\r\n this.config = data.config && new GF_Config(data.config);\r\n this.status = data.status && new GF_Status(data.status)\r\n }\r\n}\r\n\r\nexport class GF_Status {\r\n constantFanAirFlowMultiplier: string;\r\n gasHeatAirFlowTrim: string;\r\n airFlowForHighStageGasHeat: string;\r\n airFlowForLowStageGasHeat: string;\r\n gasHeatOnDelay: string;\r\n HVACOperationMode: string;\r\n accessoryDeviceOperatingMode: string;\r\n tstat24Wterminal: string;\r\n tstat24Yterminal: string;\r\n tstat24Gterminal: string;\r\n tstat24DHY2Terminal: string;\r\n gasHeatDevicePercentage: string;\r\n currentAirFlow: string;\r\n hvacoperationMode: string;\r\n\r\n constructor(data) {\r\n this.constantFanAirFlowMultiplier = data.constantFanAirFlowMultiplier;\r\n this.gasHeatAirFlowTrim = data.gasHeatAirFlowTrim;\r\n this.airFlowForHighStageGasHeat = data.airFlowForHighStageGasHeat;\r\n this.airFlowForLowStageGasHeat = data.airFlowForLowStageGasHeat;\r\n this.gasHeatOnDelay = data.gasHeatOnDelay;\r\n this.HVACOperationMode = data.HVACOperationMode;\r\n this.accessoryDeviceOperatingMode = data.accessoryDeviceOperatingMode;\r\n this.tstat24Wterminal = data.tstat24Wterminal;\r\n this.tstat24Yterminal = data.tstat24Yterminal;\r\n this.tstat24Gterminal = data.tstat24Gterminal;\r\n this.tstat24DHY2Terminal = data.tstat24DHY2Terminal;\r\n this.gasHeatDevicePercentage = data.gasHeatDevicePercentage;\r\n this.currentAirFlow = data.currentAirFlow;\r\n this.hvacoperationMode = data.hvacoperationMode;\r\n }\r\n\r\n\r\n}\r\n\r\nexport class GF_Config {\r\n firmware: string;\r\n sharedDataVersion: string;\r\n blowerMotorHorsePower: string;\r\n maxAirFlow: string;\r\n furnaceModelNumber: string;\r\n constructor(data) {\r\n this.firmware = data.firmware;\r\n this.sharedDataVersion = data.sharedDataVersion;\r\n this.blowerMotorHorsePower = data.blowerMotorHorsePower;\r\n this.maxAirFlow = data.maxAirFlow;\r\n this.furnaceModelNumber = data.furnaceModelNumber;\r\n\r\n }\r\n}\r\n\r\n\r\nexport class ACObject {\r\n config: AC_Config;\r\n status: AC_Status;\r\n constructor(data) {\r\n this.config = data.config && new AC_Config(data.config);\r\n this.status = data.status && new AC_Status(data.status)\r\n }\r\n}\r\n\r\nexport class AC_Status {\r\n coolCapacityRequest: string;\r\n dehumdificationRequest: string;\r\n outdoorFanSpeed: string;\r\n reportedAirFlow: string;\r\n constructor(data) {\r\n this.coolCapacityRequest = data.coolCapacityRequest;\r\n this.dehumdificationRequest = data.dehumdificationRequest;\r\n this.outdoorFanSpeed = data.outdoorFanSpeed;\r\n this.reportedAirFlow = data.reportedAirFlow;\r\n }\r\n}\r\n\r\nexport class AC_Config {\r\n firmware: string;\r\n serialNumber: string;\r\n coolTrimFactorHigh: string;\r\n coolingAirflowProfile: string;\r\n blowerOnDelayCooling: string;\r\n blowerOffDelayCooling: string;\r\n dehumdificationEnable: string;\r\n acModelNumber: string;\r\n\r\n constructor(data) {\r\n this.firmware = data.firmware;\r\n this.serialNumber = data.serialNumber;\r\n this.coolTrimFactorHigh = data.coolTrimFactorHigh;\r\n this.coolingAirflowProfile = data.coolingAirflowProfile;\r\n this.blowerOnDelayCooling = data.blowerOnDelayCooling;\r\n this.blowerOffDelayCooling = data.blowerOffDelayCooling;\r\n this.dehumdificationEnable = data.dehumdificationEnable;\r\n this.acModelNumber = data.acModelNumber;\r\n }\r\n}\r\n\r\n\r\nexport class HEATPUMPObject {\r\n config: HP_Config;\r\n status: HP_Status;\r\n constructor(data) {\r\n this.config = data.config && new HP_Config(data.config);\r\n this.status = data.status && new HP_Status(data.status)\r\n }\r\n}\r\n\r\nexport class HP_Status {\r\n heatCapacityRequest: string;\r\n coolCapacityRequest: string;\r\n heatCapacityRequestDuringDefrost: string;\r\n dehumidificationRequest: string;\r\n reversingValue: string;\r\n outdoorFanSpeed: string;\r\n reportedAirFlow: string;\r\n constructor(data) {\r\n this.heatCapacityRequest = data.heatCapacityRequest;\r\n this.coolCapacityRequest = data.coolCapacityRequest;\r\n this.heatCapacityRequestDuringDefrost = data.heatCapacityRequestDuringDefrost;\r\n this.dehumidificationRequest = data.dehumidificationRequest;\r\n this.reversingValue = data.reversingValue;\r\n this.outdoorFanSpeed = data.outdoorFanSpeed;\r\n this.reportedAirFlow = data.reportedAirFlow;\r\n }\r\n}\r\n\r\nexport class HP_Config {\r\n outdoorTemperature: number;\r\n coilTemperature: number;\r\n liquidLineTemperature: number;\r\n dischargeTemperature: number;\r\n defrostSensorTemperature: number;\r\n suctionPressure: number;\r\n heatPumpModelNumber: string;\r\n constructor(data) {\r\n this.outdoorTemperature = data.outdoorTemperature;\r\n this.coilTemperature = data.coilTemperature;\r\n this.liquidLineTemperature = data.liquidLineTemperature;\r\n this.dischargeTemperature = data.dischargeTemperature;\r\n this.defrostSensorTemperature = data.defrostSensorTemperature;\r\n this.suctionPressure = data.suctionPressure;\r\n this.heatPumpModelNumber = data.heatPumpModelNumber;\r\n }\r\n}\r\nexport class ComfortBridgeResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: ComfortbridgeObject;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new ComfortbridgeObject(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class SystemResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: SystemObject;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new SystemObject(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\nexport class GFResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: GasFurnaceObject;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new GasFurnaceObject(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\nexport class ACResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: ACObject;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new ACObject(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\nexport class HPResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: HEATPUMPObject;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new HEATPUMPObject(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}","export class RelayStatus {\r\n relay1: boolean;\r\n relay2: boolean;\r\n relay3: boolean;\r\n relay4: boolean;\r\n\r\n constructor(data) {\r\n this.relay1 = data.relay1;\r\n this.relay2 = data.relay2;\r\n this.relay3 = data.relay3;\r\n this.relay4 = data.relay4;\r\n }\r\n}\r\n\r\nexport class CommonDetailsForModes {\r\n startTime: string;\r\n endTime: string;\r\n mode: string;\r\n\r\n constructor(data) {\r\n this.startTime = data[0];\r\n this.endTime = data[1];\r\n this.mode = data[2];\r\n }\r\n}\r\n\r\nexport class ModeDetails {\r\n ac: CommonDetailsForModes[];\r\n fan: CommonDetailsForModes[];\r\n heatPump: CommonDetailsForModes[];\r\n heatFurnance: CommonDetailsForModes[];\r\n\r\n constructor(data) {\r\n this.ac = data.ac && data.ac.length && data.ac.map((value, index) =>\r\n new CommonDetailsForModes(value));\r\n this.fan = data.fan && data.fan.length && data.fan.map((value, index) =>\r\n new CommonDetailsForModes(value));\r\n this.heatPump = data.heatpump && data.heatpump.length && data.heatpump.map((value, index) =>\r\n new CommonDetailsForModes(value));\r\n this.heatFurnance = data.heatfurnance && data.heatfurnance.length && data.heatfurnance.map((value, index) =>\r\n new CommonDetailsForModes(value));\r\n }\r\n}\r\n\r\nexport class UnitDetails {\r\n data: number;\r\n unit: string;\r\n\r\n constructor(data) {\r\n this.data = data.data;\r\n this.unit = data.unit;\r\n }\r\n}\r\n\r\nexport class PressureUnits {\r\n pascal: UnitDetails;\r\n wc: UnitDetails;\r\n\r\n constructor(data) {\r\n this.pascal = {data: data!=null?data * 249:null, unit: 'pascal'};\r\n this.wc = {data: data, unit: 'wc'};\r\n }\r\n}\r\n\r\nexport class TemperatureUnits {\r\n celsius: UnitDetails;\r\n fahrenheit: UnitDetails;\r\n\r\n constructor(data) {\r\n this.celsius = {data: data, unit: 'celsius'}\r\n this.fahrenheit = {data: data==null?null:(data*1.8)+32, unit: 'fahrenheit'}\r\n }\r\n}\r\n\r\nexport class DeltaUnits {\r\n celsius: UnitDetails;\r\n fahrenheit: UnitDetails;\r\n\r\n constructor(data) {\r\n this.celsius = {data: data[0], unit: 'celsius'}\r\n this.fahrenheit = {data: data[1], unit: 'fahrenheit'}\r\n }\r\n}\r\n\r\nexport class Alert {\r\n deviceId?: string;\r\n pbSerialNumber?: string;\r\n timeStamp: string;\r\n suctionAirTemperature: TemperatureUnits;\r\n dischargeAirTemperature: TemperatureUnits;\r\n returnAirtemperature: TemperatureUnits;\r\n liquidLineTemperature: TemperatureUnits;\r\n pressure: PressureUnits;\r\n outsideTemperature: TemperatureUnits;\r\n ac?: string;\r\n fan?: string;\r\n heatingFurnance?: string;\r\n heatPump?: string;\r\n meliStatus?: any;\r\n delta: DeltaUnits;\r\n supplyPressure: PressureUnits;\r\n returnPressure: PressureUnits;\r\n\r\n constructor(data) {\r\n this.deviceId = data['101'];\r\n this.timeStamp = data['1'];\r\n this.heatingFurnance = data.heatingFurnance;\r\n this.heatPump = data.heatPump;\r\n this.suctionAirTemperature = data['2'] &&\r\n new TemperatureUnits(data['2']);\r\n this.dischargeAirTemperature = data['3'] &&\r\n new TemperatureUnits(data['3']);\r\n this.returnAirtemperature = data['4'] &&\r\n new TemperatureUnits(data['4']);\r\n this.liquidLineTemperature = data['5'] &&\r\n new TemperatureUnits(data['5']);\r\n this.pressure = data['9'] && new PressureUnits(data['9']);\r\n this.outsideTemperature = (data['10'] || data['10']==0) && new TemperatureUnits(data['10']);\r\n this.ac = data.ac;\r\n this.fan = data['113'];\r\n this.meliStatus = data['117'];\r\n this.delta = data['6'] && new DeltaUnits(data['6']);\r\n this.supplyPressure = data['7'] && new PressureUnits(data['7']);\r\n this.returnPressure = data['8'] && new PressureUnits(data['8']);\r\n }\r\n}\r\n\r\nexport class InActiveValueDetails {\r\n suctionAirTemp: any[];\r\n delta: any[];\r\n liquidLineTemperature: any[];\r\n dischargeAirTemp: any[];\r\n returnAirTemp: any[];\r\n\r\n constructor(data) {\r\n this.suctionAirTemp = data.suctionairtemp;\r\n this.delta = data.delta;\r\n this.liquidLineTemperature = data.liquidlinetemperature;\r\n this.dischargeAirTemp = data.dischargeairtemp;\r\n this.returnAirTemp = data.returnairtemp;\r\n }\r\n}\r\nexport class SensorLastActiveInfo{\r\n sensorName:string;\r\n sensorStatus:string;\r\n sensorValue:number;\r\n timestamp:string;\r\n\r\n constructor(data){\r\n this.sensorName=data.sensorName;\r\n this.sensorStatus=data.sensorStatus;\r\n this.sensorValue=data.sensorValue;\r\n this.timestamp=data.timestamp;\r\n }\r\n}\r\n\r\nexport class SensorDetails {\r\n alerts: Alert[];\r\n relayStatus: RelayStatus;\r\n modeDetails: ModeDetails;\r\n inActiveValueDetails: InActiveValueDetails;\r\n sensorLastActiveInfo:SensorLastActiveInfo[];\r\n sensorType: string;\r\n HVACCycleDetails: HVACCycleResponseDetails[];\r\n alarmDataList:any[];\r\n\r\n constructor(data) {\r\n this.alerts = data.alerts && data.alerts.length &&\r\n data.alerts.map((value) => new Alert(value));\r\n this.relayStatus = data.relayStatus && new RelayStatus(data.relayStatus);\r\n this.modeDetails = data.modeDetails && new ModeDetails(data.modeDetails);\r\n this.inActiveValueDetails = data.inActiveValueDetails &&\r\n new InActiveValueDetails(data.inActiveValueDetails);\r\n this.sensorLastActiveInfo = data.sensorLastActiveInfo && data.sensorLastActiveInfo.length &&\r\n data.sensorLastActiveInfo.map((value) => new SensorLastActiveInfo(value));\r\n this.HVACCycleDetails = data.cycleDataDetails && data.cycleDataDetails.length &&\r\n data.cycleDataDetails.map((value, index) => new HVACCycleResponseDetails(value));\r\n this.alarmDataList = data.alarmDataList;\r\n this.sensorType = data.sensorType;\r\n }\r\n}\r\n\r\nexport class AlertDiscoveySensorDetails {\r\n alertCode: string;\r\n alertName: string;\r\n alertOccuredTime: string;\r\n applicableSensor: string;\r\n baseLine: number;\r\n color: string;\r\n dectection: string;\r\n deltaInfo: any[];\r\n description: string;\r\n deviceId: string;\r\n graphType: string;\r\n max: number;\r\n min: number;\r\n mode: string;\r\n pb: string;\r\n priority: string;\r\n thermostateInput: number;\r\n threshold: number;\r\n title: string;\r\n xAxis: string;\r\n yAxis: string;\r\n\r\n constructor(data) {\r\n this.alertCode = data.alertCode;\r\n this.alertName = data.alertName;\r\n this.alertOccuredTime = data.alertOccuredTime;\r\n this.applicableSensor = data.applicableSensor;\r\n this.baseLine = data.baseLine;\r\n this.color = data.color;\r\n this.dectection = data.dectection;\r\n this.deltaInfo = data.deltaInfo;\r\n this.description = data.description;\r\n this.deviceId = data.deviceId;\r\n this.graphType = data.graphType;\r\n this.max = data.max;\r\n this.min = data.min;\r\n this.mode = data.mode;\r\n this.pb = data.pb;\r\n this.priority = data.priority;\r\n this.thermostateInput = data.thermostateInput;\r\n this.threshold = data.threshold;\r\n this.title = data.title;\r\n this.xAxis = data.xAxis;\r\n this.yAxis = data.yAxis;\r\n }\r\n}\r\n\r\nexport class Sensor {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: SensorDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData =\r\n data.responseData && new SensorDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class AlertDiscoverySensor {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: AlertDiscoveySensorDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class HVACCycleResponseDetails {\r\n meliSerialNo: string;\r\n deviceId: string;\r\n timeStamp: string;\r\n totalRunTimeInHrs: number;\r\n totalRunCycles: number;\r\n avgCycleRunTimeInMin: number;\r\n avgTempSplitInCelcius: number;\r\n avgTempSplitInFahrenheit: number;\r\n outsideTempInCelcius: number;\r\n outsideTempInFahrenheit: number;\r\n\r\n constructor(data) {\r\n this.meliSerialNo = data['201'];\r\n this.deviceId = data['202'];\r\n this.timeStamp = data['0'];\r\n this.totalRunTimeInHrs = data['1'];\r\n this.totalRunCycles = data['2'];\r\n this.avgCycleRunTimeInMin = data['4'];\r\n this.avgTempSplitInCelcius = data['5'];\r\n this.avgTempSplitInFahrenheit = data['6'];\r\n this.outsideTempInCelcius = data['7'];\r\n this.outsideTempInFahrenheit = data['8'];\r\n }\r\n}\r\n\r\nexport class HVACCycleResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n HVACCycleDetails: HVACCycleResponseDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.HVACCycleDetails = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new HVACCycleResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","import { Email, Phone, Address, BoardTypeCount } from 'src/app/shared/models/common.model';\r\nimport { AssetModelInfo } from 'src/app/shared/models/customer.model';\r\n\r\nexport class Customer {\r\n customerFirstName: string;\r\n customerLastName: string;\r\n contractorName: string;\r\n consumerId: number;\r\n addresses: Address[];\r\n email: Email[];\r\n phone: Phone[];\r\n companyName:string;\r\n consumerType:String;\r\nawsConsumerId:string;\r\n constructor(data) {\r\n this.customerFirstName = data.firstName;\r\n this.customerLastName = data.lastName;\r\n this.contractorName = data.contractorName || data.consumerName;\r\n this.consumerId = data.consumerId;\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value, index) => new Address(value));\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value, index) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value, index) => new Email(value));\r\n this.awsConsumerId=data.awsConsumerId;\r\n this.companyName=data.companyName;\r\n this.consumerType=data.consumerType;\r\n\r\n }\r\n}\r\n\r\nexport class RelayStatus {\r\n relay1: boolean;\r\n relay2: boolean;\r\n relay3: boolean;\r\n relay4: boolean;\r\n\r\n constructor(data) {\r\n this.relay1 = data.relay1;\r\n this.relay2 = data.relay2;\r\n this.relay3 = data.relay3;\r\n this.relay4 = data.relay4;\r\n }\r\n}\r\n\r\nexport class Missingpart {\r\n part: string;\r\n\r\n constructor(data) {\r\n this.part = data.part;\r\n }\r\n}\r\n\r\n// export class BoardTypeCount {\r\n// cellular: number;\r\n// wifi: number;\r\n\r\n// constructor(data) {\r\n// this.cellular = data.Cellular;\r\n// this.wifi = data['Wi-Fi'];\r\n// }\r\n\r\n// }\r\n\r\nexport class wifiModel{\r\n password: string;\r\nsecurityMode: string;\r\nssid: string;\r\nconstructor(data) {\r\n this.password = data.password;\r\n this.securityMode = data.securityMode;\r\n this.ssid = data.ssid;}\r\n}\r\n\r\nexport class InstallationReportDetails {\r\n jobId: number;\r\n meliSerialNumber: string;\r\n date: string;\r\n comments: string;\r\n datStatus: string;\r\n DATStatus: boolean;\r\n ratStatus: string;\r\n RATStatus: boolean;\r\n sltStatus: string;\r\n SLTStatus: boolean;\r\n lltStatus: string;\r\n LLTStatus: boolean;\r\n spdStatus: string;\r\n SPDStatus: boolean;\r\n cdsStatus: string;\r\n CDSStatus: boolean;\r\n heating: boolean;\r\n cooling: boolean;\r\n technician: string;\r\n timeTaken: number;\r\n missingPart: Missingpart[];\r\n connectivity: boolean;\r\n signalStrength: string;\r\n relayFunctionality: string;\r\n numAlarmAtInstallation: number;\r\n images: [];\r\n isComfortBridge: boolean;\r\n sensorStatus: boolean;\r\n meliType?:any;\r\n wifiModel?:wifiModel;\r\n esActivationSwitch?:boolean;\r\n\r\n constructor(data) {\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.date = data.reportedTime;\r\n this.comments = data.comments;\r\n this.datStatus = data['datStatus'];\r\n this.DATStatus = data['deltaAirTemperature'];\r\n this.ratStatus = data['ratStatus'];\r\n this.RATStatus = data['returnAirTemperature'];\r\n this.sltStatus = data['sltStatus'];\r\n this.SLTStatus = data['suctionAirTemperature'] || data['suctionLineTemperature'];\r\n this.lltStatus = data['lltStatus'];\r\n this.LLTStatus = data['liquidAirTemperature'];\r\n this.spdStatus = data['spdStatus'];\r\n this.SPDStatus = data['staticPressureDifference'];\r\n this.cdsStatus = data['cdsStatus'];\r\n this.CDSStatus = data['condensateSwitch'];\r\n this.heating = data.heatingTest;\r\n this.cooling = data.coolingTest;\r\n this.technician = data.technicianName;\r\n this.timeTaken = data.time_taken;\r\n this.missingPart = data.missing_part && data.missing_part.length &&\r\n data.missing_part.map((value, index) => new Missingpart(value));\r\n this.connectivity = data.connectivity;\r\n this.signalStrength = data.signalStrength;\r\n this.relayFunctionality = data.relay_functionality;\r\n this.numAlarmAtInstallation = data.numAlarmAtInstallation;\r\n this.images = data.images;\r\n this.jobId = data.jobId;\r\n this.isComfortBridge = data.isComfortBridge;\r\n this.sensorStatus = data.sensorStatus;\r\n this.meliType=data.meliType;\r\n this.wifiModel=data.wifiModel;\r\n this.esActivationSwitch = data.esActivationSwitch\r\n }\r\n}\r\n\r\nexport class InstallationReportResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: InstallationReportDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new InstallationReportDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class Inventory {\r\n meliId: number;\r\n meliSerialNumber: string;\r\n contractorId: number;\r\n awsContractorId: string;\r\n awsTechnicianId: string;\r\n contractorName: string;\r\n assetId: number;\r\n assetName?: string;\r\n assetUnitTypeId: number;\r\n assetModelInfo: AssetModelInfo;\r\n boardStatus: string;\r\n type: string;\r\n firmware: string;\r\n installedDate?: string;\r\n inInventoryDate: string;\r\n assignedOn?: string;\r\n status: string;\r\n installationReport?: InstallationReportDetails;\r\n jobState?: string;\r\n technicianName?: string;\r\n boardType: string[];\r\n sensors: string[];\r\n relayStatus: RelayStatus;\r\n alertsCount: number;\r\n deviceType: string;\r\n thingName: string;\r\n consumer: Customer;\r\n remarks?: string;\r\n dealerType: string;\r\n connectivityStatus?: string;\r\n\r\n constructor(data) {\r\n this.meliId = data.meliId;\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.contractorId = data.contractorId;\r\n this.awsContractorId = data.awsContractorId;\r\n this.awsTechnicianId = data.awsTechnicianId;\r\n this.contractorName = data.contractorName;\r\n this.assetId = data.assetId;\r\n this.assetName = data.assetName;\r\n this.assetUnitTypeId = data.assetUnitTypeId;\r\n this.assetModelInfo = data.assetModelInfo && new AssetModelInfo(data.assetModelInfo);\r\n this.boardStatus = data.boardStatus;\r\n this.type = data.type;\r\n this.firmware = data.firmware;\r\n this.installedDate = data.installedDate;\r\n this.inInventoryDate = data.inInventoryDate;\r\n this.assignedOn = data.assignedOn;\r\n this.status = data.status;\r\n this.installationReport = data.report && new InstallationReportDetails(data.report);\r\n this.jobState = data.jobState;\r\n this.technicianName = data.technicianName;\r\n this.boardType = data.boardType;\r\n this.sensors = data.sensors;\r\n this.relayStatus = data.relayStatus && new RelayStatus(data.relayStatus);\r\n this.alertsCount = data.alertsCount;\r\n this.deviceType = data.deviceType;\r\n this.thingName = data.thingName;\r\n this.consumer = data.consumer && new Customer(data.consumer);\r\n this.remarks = data.remarks;\r\n this.connectivityStatus = data.connectivityStatus;\r\n this.dealerType = data.dealerType;\r\n }\r\n}\r\n\r\nexport class InventoryContentDetails {\r\n channelId: number;\r\n awsChannelId: string;\r\n channelName: string;\r\n firmName: string;\r\n tag: string;\r\n contactPerson: string;\r\n operatingSince: number;\r\n website: string;\r\n inventory: Inventory[];\r\n boardTypeCount: BoardTypeCount;\r\n defective?: any;\r\n notAssigned: string;\r\n notInstalled?: any;\r\n installed?: any;\r\n\r\n constructor(data) {\r\n this.channelId = data.channelId;\r\n this.awsChannelId = data.awsChannelId;\r\n this.channelName = data.channelName;\r\n this.firmName = data.firmName;\r\n this.tag = data.tag;\r\n this.contactPerson = data.contactPerson;\r\n this.operatingSince = data.operatingSince;\r\n this.website = data.website;\r\n this.inventory = data.melis && data.melis.length\r\n && data.melis.map((value) => new Inventory(value));\r\n this.boardTypeCount = data.boardTypeCount && new BoardTypeCount(data.boardTypeCount);\r\n this.defective = data.Defective;\r\n this.notAssigned = data.Not_Assigned;\r\n this.notInstalled = data.Not_Installed;\r\n this.installed = data.Installed;\r\n }\r\n}\r\n\r\nexport class InventoryResponseDetails {\r\n page: number;\r\n size: number;\r\n inventoryContentDetails: InventoryContentDetails;\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.inventoryContentDetails = data.content && new InventoryContentDetails(data.content);\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class InventoryResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: InventoryResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new InventoryResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\n\r\n//\r\n\r\nexport class BoardResponseDetails {\r\n assetId: number;\r\n assetIndoorUnitInfoId:number;\r\n channelId: number;\r\n consumer: Customer;\r\n channelName: number;\r\n dealerId: number;\r\ndealerName: string;\r\ndealerType: string;\r\nindoorEquipmentType: string;\r\nindoorHvacLocation: string;\r\noutdoorEquipmentType:string;\r\ninstalledOn: string;\r\nmeliId: number;\r\nmeliSerialNumber: string;\r\nmeliType: string;\r\nmeliStatus:string;\r\n\r\n constructor(data) {\r\n this.assetId = data.assetId;\r\n this.assetIndoorUnitInfoId=data.assetIndoorUnitInfoId;\r\n this.channelId = data.channelId;\r\n this.consumer = data.consumer && new Customer(data.consumer);\r\n this.channelName = data.channelName;\r\n this.dealerId= data.dealerId;\r\nthis.dealerName= data.dealerName;\r\nthis.dealerType= data.dealerType;\r\nthis.indoorEquipmentType= data.indoorEquipmentType;\r\nthis.indoorHvacLocation= data.indoorHvacLocation;\r\nthis.outdoorEquipmentType=data.outdoorEquipmentType;\r\nthis.installedOn= data.installedOn;\r\nthis.meliId= data.meliId;\r\nthis.meliSerialNumber= data.meliSerialNumber;\r\nthis.meliType= data.meliType;\r\nthis.meliStatus=data.meliStatus;\r\n }\r\n}\r\n\r\n\r\nexport class meliBoardResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: BoardResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new BoardResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class AssignMeliToCustomerDetails {\r\n consumerId: number;\r\n consumerName: string;\r\n assetName: string;\r\n description: string;\r\n meliSerialNumber: string;\r\n\r\n constructor(data) {\r\n this.consumerId = data.consumer_id;\r\n this.consumerName = data.consumer_name;\r\n this.assetName = data.asset_name;\r\n this.description = data.description;\r\n this.meliSerialNumber = data.meli_serial_number;\r\n }\r\n}\r\n\r\nexport class AssignMeliToCustomerDetailsNew {\r\n\r\n consumerName: string;\r\n assetName?: string;\r\n description: string;\r\n meliSerialNumber: string;\r\n status: boolean;\r\n\r\n constructor(data) {\r\n\r\n this.consumerName = data.consumerName;\r\n // this.assetName = data.asset_name;\r\n this.description = data.description;\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.status = data.status;\r\n }\r\n}\r\nexport class AssignMeliToCustomerResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo: AssignMeliToCustomerDetailsNew;\r\n assignMeliToCustomerDetails: AssignMeliToCustomerDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.assignMeliToCustomerDetails = data.responseData\r\n && new AssignMeliToCustomerDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class AssignMeliToContractorDetails {\r\n meliSerialNumber: string;\r\n description: string;\r\n status: boolean;\r\n\r\n constructor(data) {\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.description = data.description;\r\n this.status = data.status;\r\n }\r\n}\r\n\r\nexport class AssignMeliToContractorResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n assignMeliToContractorDetails: AssignMeliToContractorDetails[];\r\n responseData: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.responseData = data.responseData;\r\n this.assignMeliToContractorDetails = data.statusInfo && data.statusInfo.length &&\r\n data.statusInfo.map((value, index) => new AssignMeliToContractorDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class ConsumerResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n assignMeliToContractorDetails: Customer;\r\n responseData: any;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.responseData = data.responseData && new Customer(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}","export class MeliAssetInfo {\r\n meliSerialNumber: string;\r\n modelNo: string;\r\n deviceType: string;\r\n brochureLink: string;\r\n assetSerialNumber: string;\r\n assetId: number;\r\n\r\n constructor(data) {\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.modelNo = data.modelNo;\r\n this.deviceType = data.deviceType;\r\n this.brochureLink = data.brochureLink;\r\n this.assetSerialNumber = data.assetSerialNumber;\r\n this.assetId = data.assetId;\r\n }\r\n}\r\n\r\nexport class MeliAssetInfoResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n MeliAssetInfoResponse: MeliAssetInfo;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.MeliAssetInfoResponse = data.responseData && new MeliAssetInfo(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class AddMeliToContractorDetails {\r\n meliSerialNumber: string;\r\n description: string;\r\n status: boolean;\r\n\r\n constructor(data) {\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.description = data.description;\r\n this.status = data.status;\r\n }\r\n}\r\n\r\nexport class AddMeliToContractorResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n AddMeliToContractorDetails: AddMeliToContractorDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.AddMeliToContractorDetails = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new AddMeliToContractorDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class UpdateRelayStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: string;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class DeleteMeliResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n deleteMeliDetails: string;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.deleteMeliDetails = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class UpdateMeliStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: string;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\nexport class FirmwareResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: FirmwareResponseDetail;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData &&\r\n new FirmwareResponseDetail(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\nexport class FirmwareResponseDetail{\r\n meliSerialNumber?: any;\r\n firmwareVersion?:any;\r\n\r\nconstructor(data){\r\n this.meliSerialNumber=data.meliSerialNumber;\r\n this.firmwareVersion=data.firmwareVersion;\r\n}}\r\n// export class SensorStatus {\r\n// sensorInstallStatusId: number;\r\n// DATStatus?: any;\r\n// RATStatus?: any;\r\n// SLTStatus?: any;\r\n// LLTStatus?: any;\r\n// SPDStatus?: any;\r\n// CDSStatus?: any;\r\n// serialNumber?: any;\r\n\r\n// constructor(data) {\r\n// this.sensorInstallStatusId = data.sensorInstallStatusId;\r\n// this.DATStatus = data.datStatus;\r\n// this.RATStatus = data.ratStatus;\r\n// this.SLTStatus = data.sltStatus;\r\n// this.SPDStatus = data.spdStatus;\r\n// this.CDSStatus = data.cdsStatus;\r\n// this.serialNumber = data.serialNumber;\r\n// }\r\n// }\r\n\r\nexport class CommandValueList {\r\n command: string;\r\n value: number;\r\n\r\n constructor(data) {\r\n this.command = data.command;\r\n this.value = data.value;\r\n }\r\n}\r\n\r\nexport class SensorStatus {\r\n boardSensorTypeId: number;\r\n status: string;\r\n sensorType?: string;\r\n commandValueList: CommandValueList[];\r\n\r\n constructor(data) {\r\n this.boardSensorTypeId = data.boardSensorTypeId;\r\n this.status = data.status;\r\n this.sensorType = data.sensorType;\r\n this.commandValueList = data.commandValueList && data.commandValueList.length &&\r\n data.commandValueList.map((value, index) => new CommandValueList(value));\r\n }\r\n}\r\n\r\nexport class SensorStatusResponseDetail {\r\n type: string;\r\n sensorStatus: SensorStatus[];\r\n\r\n constructor(data) {\r\n this.type = data.type;\r\n this.sensorStatus = data.info && data.info.length &&\r\n data.info.map((value, index) => new SensorStatus(value));\r\n }\r\n}\r\n\r\nexport class SensorStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n sensorStatusResponseDetail: SensorStatusResponseDetail[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.sensorStatusResponseDetail = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new SensorStatusResponseDetail(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class ScheduleEmergencyShutoffResponseDetails {\r\n scheduleTime: string;\r\n boardSerialNumber: string;\r\n message: string;\r\n status: string;\r\n\r\n constructor(data) {\r\n this.scheduleTime = data.scheduleTime;\r\n this.boardSerialNumber = data.boardSerialNumber;\r\n this.message = data.message;\r\n this.status = data.status;\r\n }\r\n}\r\n\r\nexport class ScheduleEmergencyShutoffResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n scheduleEmergencyShutoffResponseDetails: ScheduleEmergencyShutoffResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusInfo = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.scheduleEmergencyShutoffResponseDetails = data.responseData &&\r\n new ScheduleEmergencyShutoffResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class EmergencyShutoffStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n emergencyShutoffStatusResponse: ScheduleEmergencyShutoffResponseDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.emergencyShutoffStatusResponse = data.responseData &&\r\n new ScheduleEmergencyShutoffResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CanScheduleEmergencyShutoffResponseDetails {\r\n boardSerialNumber: string;\r\n message: string;\r\n status: boolean;\r\n\r\n constructor(data) {\r\n this.boardSerialNumber = data.boardSerialNumber;\r\n this.message = data.message;\r\n this.status = data.status;\r\n }\r\n}\r\n\r\nexport class CanScheduleEmergencyShutoffResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n canScheduleEmergencyShutoffResponse: CanScheduleEmergencyShutoffResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.canScheduleEmergencyShutoffResponse = data.responseData &&\r\n new CanScheduleEmergencyShutoffResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CancelEmergencyShutoffResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n cancelEmergencyShutoffResponse: ScheduleEmergencyShutoffResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.cancelEmergencyShutoffResponse = data.responseData &&\r\n new ScheduleEmergencyShutoffResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class SensorLastActiveInfo {\r\n sensorName: string;\r\n sensorStatus: string;\r\n sensorValue: number;\r\n timestamp: string;\r\n\r\n constructor(data) {\r\n this.sensorName = data.sensorName;\r\n this.sensorStatus = data.sensorStatus;\r\n this.sensorValue = data.sensorValue;\r\n this.timestamp = data.timestamp;\r\n }\r\n}\r\n\r\nexport class SensorCurrentStatusResponseDetails {\r\n //sensorLastActiveInfo: SensorLastActiveInfo[];\r\n datTimestamp: string;\r\n dischargeAirTemperature: string\r\n fanStatus: string\r\n liquidLineTemperature: string\r\n lltTimestamp: string\r\n meliSerialNumber: string\r\n pressure: string\r\n ratTimestamp: string\r\n returnAirTemperature: string\r\n sltTimestamp: string\r\n spdTimestamp: string\r\n status: string\r\n suctionLineTemperature: string\r\n\r\n constructor(data) {\r\n //this.sensorLastActiveInfo = data.sensorLastActiveInfo && data.sensorLastActiveInfo.length &&\r\n // data.sensorLastActiveInfo.map((value, index) => new SensorLastActiveInfo(value));\r\n\r\n this.dischargeAirTemperature = data.dischargeAirTemperature;\r\n this.datTimestamp = data.datTimestamp;\r\n this.returnAirTemperature = data.returnAirTemperature;\r\n this.ratTimestamp = data.ratTimestamp;\r\n this.suctionLineTemperature = data.suctionLineTemperature;\r\n this.sltTimestamp = data.sltTimestamp;\r\n this.liquidLineTemperature = data.liquidLineTemperature;\r\n this.lltTimestamp = data.lltTimestamp;\r\n this.pressure = data.pressure;\r\n this.spdTimestamp = data.spdTimestamp;\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.status = data.status;\r\n this.fanStatus = data.fanStatus;\r\n\r\n }\r\n}\r\n\r\nexport class SensorCurrentStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: SensorCurrentStatusResponseDetails[];\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new SensorCurrentStatusResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class HVACStatusResponseDetails {\r\n meliSerialNumber: string;\r\n status: string;\r\n\r\n constructor(data) {\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.status = data.status;\r\n }\r\n}\r\n\r\nexport class HVACStatusResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: HVACStatusResponseDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new HVACStatusResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","import { Customer } from './inventory.model';\r\nimport { HVACInformation } from './customer.model';\r\n\r\nexport class PreSeasonList {\r\n reportId: string;\r\n reportLink: String;\r\n testTime: string;\r\n season: string;\r\n type: string;\r\n testResult:string;\r\n constructor(data) {\r\n this.reportId = data.reportId;\r\n this.reportLink = data.reportLink;\r\n this.testTime = data.testTime;\r\n this.season = data.season;\r\n this.type = data.type;\r\n this.testResult=data.testResult;\r\n }\r\n}\r\nexport class PreSeasonListDetail {\r\n page: number;\r\n size: number;\r\n preseasonsList: PreSeasonList[];\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.preseasonsList =\r\n data.content &&\r\n data.content.length &&\r\n data.content.map((value) => new PreSeasonList(value));\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\nexport class PreSeasonListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n ReportListResponse: PreSeasonListDetail;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.ReportListResponse =\r\n data.responseData && new PreSeasonListDetail(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n//report detail\r\nexport class CustomerInfo {\r\n customerName: string;\r\n customerFirstName: string;\r\n customerLastName:string;\r\n serviceAddress: string;\r\n phoneNumber: string;\r\n email: string;\r\n customerId?:number;\r\n constructor(data) {\r\n this.customerName = data.customerName;\r\n this.customerFirstName = data.customerFirstName;\r\n this.customerLastName = data.customerLastName;\r\n this.serviceAddress = data.serviceAddress;\r\n this.phoneNumber = data.phoneNumber;\r\n this.email = data.email;\r\n this.customerId=data.customerId;\r\n }\r\n}\r\nexport class Indoor {\r\n deviceType: string;\r\n make: string;\r\n model: string;\r\n serialNumber: string;\r\n unit: string;\r\n constructor(data) {\r\n this.deviceType = data.deviceType;\r\n this.make = data.make;\r\n this.model = data.model;\r\n this.serialNumber = data.serialNumber;\r\n this.unit = data.unit;\r\n }\r\n}\r\nexport class Outdoor {\r\n deviceType: string;\r\n make: string;\r\n model: string;\r\n serialNumber: string;\r\n unit: string;\r\n constructor(data) {\r\n this.deviceType = data.deviceType;\r\n this.make = data.make;\r\n this.model = data.model;\r\n this.serialNumber = data.serialNumber;\r\n this.unit = data.unit;\r\n }\r\n}\r\nexport class hvacInfo {\r\n performanceBoard: string;\r\n makeModel: string;\r\n serialNo: string;\r\n location: string;\r\n indoor: Indoor;\r\n outdoor: Outdoor;\r\n systemType: string;\r\n constructor(data) {\r\n this.performanceBoard = data.performanceBoard;\r\n this.makeModel = data.makeModel;\r\n this.serialNo = data.serialNo;\r\n this.location = data.installedLocation;\r\n this.indoor = data.indoor && new Indoor(data.indoor);\r\n this.outdoor = data.outdoor && new Outdoor(data.outdoor);\r\n this.systemType = data.systemType;\r\n }\r\n}\r\nexport class sensorInfo {\r\n cdsSwitch: boolean;\r\n cooling: boolean;\r\n dat: boolean;\r\n fan: boolean;\r\n heating: boolean;\r\n llt: boolean;\r\n rat: boolean;\r\n signalStrength: string;\r\n slt: boolean;\r\n spd: boolean;\r\n totalStaticPressure: string;\r\n boardType: string;\r\n constructor(data) {\r\n this.cdsSwitch = data.cdsSwitch;\r\n this.cooling = data.cooling;\r\n this.dat = data.dat;\r\n this.fan = data.fan;\r\n this.heating = data.heating;\r\n this.llt = data.llt;\r\n this.rat = data.rat;\r\n this.signalStrength = data.signalStrength;\r\n this.slt = data.slt;\r\n this.spd = data.spd;\r\n this.totalStaticPressure = data.totalStaticPressure;\r\n this.boardType = data.boardType;\r\n\r\n\r\n }\r\n}\r\n\r\nexport class PreSeasonDetail {\r\n testTitle: string;\r\n date: string;\r\n description: String;\r\n testType: string;\r\n testTime: string;\r\n ambientOutdoorTemp: string;\r\n ambientOutdoorTempF: string;\r\n testResult: string;\r\n customerInfo: CustomerInfo;\r\n hvacInfo: hvacInfo;\r\n installedSensors: any\r\n sensorInfo: any;\r\n alerts?: any;\r\n investigateData?: any;\r\n termsAndCondition: string;\r\n testedAndReportedBy: string;\r\n testCompletionTime: string;\r\n channelName:string;\r\n\r\n\r\n constructor(data) {\r\n this.testTitle = data.testTitle;\r\n this.date = data.date;\r\n this.description = data.description;\r\n this.testType = data.testType;\r\n this.testTime = data.testTime;\r\n this.ambientOutdoorTemp = data.ambientOutdoorTemp;\r\n this.ambientOutdoorTempF = data.ambientOutdoorTempF;\r\n this.testResult = data.testResult;\r\n this.customerInfo = data.customerInfo&&new CustomerInfo(data.customerInfo);\r\n this.hvacInfo = data.hvacInfo && new hvacInfo(data.hvacInfo);\r\n this.installedSensors = data.installedSensors;\r\n this.sensorInfo = data.sesorInfo;\r\n this.alerts = data.alerts;\r\n this.investigateData = data.investigateData;\r\n this.termsAndCondition = data.termsAndCondition;\r\n this.testedAndReportedBy = data.testedAndReportedBy;\r\n this.testCompletionTime = data.testCompletionTime;\r\n this.channelName=data.channelName;\r\n\r\n\r\n }\r\n}\r\n\r\nexport class PreSeasonResponseData {\r\n reportId: any;\r\n reportData: any;\r\n reportLink: string;\r\n constructor(data) {\r\n this.reportId = data.reportId;\r\n this.reportLink = data.reportLink;\r\n this.reportData = data.reportData && new PreSeasonDetail(data.reportData);\r\n }\r\n}\r\n\r\nexport class PreSeasonResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n Response: PreSeasonResponseData;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.Response = data.responseData && new PreSeasonResponseData(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class emailResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n Response: PreSeasonDetail;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.Response = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","import { Content } from '@angular/compiler/src/render3/r3_ast';\r\nimport { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\nimport { AssetDetail, HVACInformation, AssetModelInfo } from 'src/app/shared/models/customer.model';\r\n\r\nexport class typeInfo {\r\n id: boolean\r\n title: string\r\n constructor(data) {\r\n this.id = data.id;\r\n this.title = data.title;\r\n\r\n }\r\n}\r\n// export class HVACDetails {\r\n// boardSerialNo: string\r\n// connectivity: boolean\r\n// installedOn: string\r\n// type: typeInfo\r\n// assetInfo: AssetDetail\r\n// constructor(data) {\r\n// this.boardSerialNo = data.boardSerialNo;\r\n// this.connectivity = data.connectivity;\r\n// this.installedOn = data.installedOn;\r\n// this.type = data.type && new typeInfo(data.type);\r\n// this.assetInfo = data.assetInfo && new AssetDetail(data.assetInfo);\r\n// }\r\n\r\n// }\r\n\r\nexport class propertyAddress {\r\n addressId: number;\r\n address: string;\r\n city: string;\r\n state: string;\r\n stateCode: string;\r\n zipcode: any;\r\n type: string;\r\n propertyName: string;\r\n propertyUnitLocation: string;\r\n boardSerialNumber?: any;\r\n deviceType?: any;\r\n unitAptNo: string;\r\n constructor(data) {\r\n this.addressId = data.addressId;\r\n this.address = data.address;\r\n this.city = data.city;\r\n this.state = data.state;\r\n this.stateCode = data.stateCode;\r\n this.zipcode = data.zipcode;\r\n this.type = data.type;\r\n this.propertyName = data.propertyName;\r\n this.propertyUnitLocation = data.propertyUnitLocation;\r\n this.boardSerialNumber = data.boardSerialNumber;\r\n this.deviceType = data.deviceType;\r\n this.unitAptNo = data.unitAptNo;\r\n }\r\n}\r\n\r\nexport class propertiesInfo {\r\n addresses: propertyAddress;\r\n hvac: AssetDetail[];\r\n propertyName: string;\r\n propertyUnitLocation: string;\r\n constructor(data) {\r\n this.addresses = data.addresses && new propertyAddress(data.addresses);\r\n this.hvac = data.hvac && data.hvac.length &&\r\n data.hvac.map((value) => new AssetDetail(value));\r\n this.propertyName = data.propertyName;\r\n this.propertyUnitLocation = data.propertyUnitLocation;\r\n }\r\n}\r\n\r\nexport class PropertiesContent {\r\n consumerId: number\r\n consumerName: string\r\n equipments?: number\r\n properties?: number\r\n propertiesInfo: propertiesInfo[];\r\n\r\n constructor(data) {\r\n this.consumerId = data.consumerId;\r\n this.consumerName = data.consumerName;\r\n this.equipments = data.equipments;\r\n this.properties = data.properties;\r\n this.propertiesInfo = data.propertiesInfo && data.propertiesInfo.length && data.propertiesInfo.map((value) => new propertiesInfo(value));\r\n }\r\n}\r\n\r\nexport class PropertiesListResponseDetails {\r\n page: number;\r\n size: number;\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n content: PropertiesContent;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n this.content = data.content && new PropertiesContent(data.content);\r\n }\r\n}\r\n\r\nexport class PropertiesListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: PropertiesListResponseDetails;\r\n requestData: string;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new PropertiesListResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\n\r\nexport class uploadSuccessResponse {\r\n\r\n invalidDataFileLink: string;\r\n message: string;\r\n valid_records_count: number;\r\n in_valid_records_count: number;\r\n errorDescriptionFileLink: string;\r\n info: any;\r\n isSeen: boolean;\r\n constructor(data) {\r\n this.invalidDataFileLink = data.invalidDataFileLink;\r\n this.message = data.message;\r\n this.valid_records_count = data.valid_records_count;\r\n this.in_valid_records_count = data.in_valid_records_count;\r\n this.errorDescriptionFileLink = data.errorDescriptionFileLink;\r\n this.info = data.info;\r\n this.isSeen = data.isSeen\r\n }\r\n}\r\n\r\nexport class UploadProperyListResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: uploadSuccessResponse;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData;\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class MakeModelLocationInfo {\r\n boardSerialNumber: string;\r\n assetModelInfo: AssetModelInfo;\r\n\r\n constructor(data) {\r\n this.boardSerialNumber = data.boardSerialNumber;\r\n this.assetModelInfo = data.assetModelInfo && new AssetModelInfo(data.assetModelInfo);\r\n }\r\n\r\n}\r\n\r\nexport class TechnicianPropertiesResponseDetails {\r\n propertyAddress: propertyAddress;\r\n hvac: any[];\r\n makeModelLocationInfo: MakeModelLocationInfo[];\r\n\r\n constructor(data) {\r\n this.propertyAddress = data.addresses && new propertyAddress(data.addresses);\r\n this.hvac = data.hvac;\r\n this.makeModelLocationInfo = data.makeModelLocationInfo && data.makeModelLocationInfo.length &&\r\n data.makeModelLocationInfo.map((value, index) => new MakeModelLocationInfo(value));\r\n }\r\n}\r\n\r\nexport class TechnicianPropertiesResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n technicianPropertiesDetails: TechnicianPropertiesResponseDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.technicianPropertiesDetails = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new TechnicianPropertiesResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n\r\n}\r\n\r\n\r\n","export class QueryParameter {\r\n size: number;\r\n index: number;\r\n id: number;\r\n\r\n constructor(data) {\r\n this.size = data.size;\r\n this.index = data.index;\r\n this.id = data.id;\r\n }\r\n}\r\n\r\nexport class ApiDetails {\r\n endPoint: string;\r\n queryParameter: QueryParameter;\r\n\r\n constructor(data) {\r\n this.endPoint = data.endPoint;\r\n this.queryParameter = new QueryParameter(data.queryParameter);\r\n }\r\n}\r\n\r\nexport class SearchResponseDetails {\r\n name: string;\r\n store: string;\r\n apiDetails: ApiDetails;\r\n\r\n constructor(data) {\r\n this.name = data.name;\r\n this.store = data.store;\r\n this.apiDetails = new ApiDetails(data.api);\r\n }\r\n}\r\n\r\nexport class SearchResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n searchList: SearchResponseDetails[];\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.searchList = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new SearchResponseDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n","import { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\nimport { InstallationReportDetails } from 'src/app/shared/models/inventory.model';\r\nimport { Context } from 'vm';\r\nimport { meliInfo } from 'src/app/shared/models/control.model';\r\n// export class Address {\r\n// addressId: number;\r\n// addressType: string;\r\n// street: string;\r\n// city: string;\r\n// state: string;\r\n// zipcode: string;\r\n// constructor(data) {\r\n// this.addressId = data.addressId;\r\n// this.addressType = data.addressType;\r\n// this.street = data.street;\r\n// this.city = data.city;\r\n// this.state = data.state;\r\n// this.zipcode = data.zipcode;\r\n// }\r\n// }\r\n\r\n// export class PhoneAndEmail {\r\n// mobile: any[];\r\n// home: any[];\r\n// office: string[];\r\n\r\n// constructor(data) {\r\n// this.mobile = data.mobile;\r\n// this.home = data.home;\r\n// this.office = data.office;\r\n// }\r\n// }\r\n\r\nexport class Meli {\r\n meliSerialNumbers: string;\r\n\r\n constructor(data) {\r\n this.meliSerialNumbers = data.meliSerialNumbers;\r\n }\r\n}\r\n\r\nexport class Technician {\r\n technicianId: number;\r\n awsTechnicianId: string;\r\n technicianName?: any;\r\n technicianFirstName?: any;\r\n technicianLastName?: any;\r\n status: string;\r\n melis: Meli[];\r\n phone: Phone[];\r\n email: Email[];\r\n addresses: Address[];\r\n\r\n constructor(data) {\r\n this.technicianId = data.technicianId;\r\n this.awsTechnicianId = data.awsTechnicianId;\r\n this.technicianName = data.technicianName;\r\n this.technicianFirstName = data.firstName;\r\n this.technicianLastName = data.lastName;\r\n this.status = data.status;\r\n this.melis = data.melis && data.melis.length\r\n && data.melis.map((value) => new Meli(value));\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value, index) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value, index) => new Email(value));\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value, index) => new Address(value));\r\n }\r\n}\r\n\r\nexport class TechniciansDetail {\r\n page: number;\r\n size: number;\r\n technicianList: Technician[];\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.technicianList = data.content && data.content.length\r\n && data.content.map((value) => new Technician(value));\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class TechnicianInfo {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n responseData: TechniciansDetail;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.responseData = data.responseData && new TechniciansDetail(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class DeleteTechnicianDetails {\r\n technicianId: number;\r\n technicianName: string;\r\n status: string;\r\n description: string;\r\n\r\n constructor(data) {\r\n this.technicianId = data.tech_id;\r\n this.technicianName = data.tech_name;\r\n this.status = data.status;\r\n this.description = data.desc;\r\n }\r\n}\r\n\r\nexport class DeleteTechnicianResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n deleteTechnicianDetails: DeleteTechnicianDetails[];\r\n requestData: number[];\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.deleteTechnicianDetails = data.responseData && data.responseData.length &&\r\n data.responseData.map((value, index) => new DeleteTechnicianDetails(value));\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class CreateTechnicianDetails {\r\n message: string;\r\n role: string;\r\n id: string;\r\n awsTechnicianId: string;\r\n\r\n constructor(data) {\r\n this.message = data.msg;\r\n this.role = data.role;\r\n this.id = data.id;\r\n this.awsTechnicianId = data.aws_technician_id;\r\n }\r\n}\r\n\r\nexport class CreateTechnicianResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n createTechnicianDetails: CreateTechnicianDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.createTechnicianDetails = data.responseData && new CreateTechnicianDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class JobDetails {\r\n jobId: number;\r\n jobType: string;\r\n jobDescription?: string;\r\n jobState: string;\r\n jobProgress: number;\r\n creationTime: string;\r\n resolvedTime?: string;\r\n alertId?: string;\r\n alertName?: string;\r\n alertTime?: string;\r\n meliSerialNumber: string;\r\n technician: string;\r\n contractor: string;\r\n consumer?: string;\r\n consumerAddress?: string;\r\n phone?: Phone;\r\n email?: Email;\r\n comments: string[];\r\n context:string;\r\n installationReports: InstallationReportDetails;\r\n submitinstallationReport?:any;\r\n totalCompletedJobs: number;\r\n totalInstalledJobs: number;\r\n totalAlertInvestigationJobs: number;\r\n constructor(data) {\r\n this.jobId = data.job_id;\r\n this.jobType = data.jobType;\r\n this.jobDescription = data.job_description;\r\n this.jobState = data.job_state;\r\n this.jobProgress = data.jobProgress;\r\n this.creationTime = data.creation_time;\r\n this.resolvedTime = data.resolved_time;\r\n this.alertId = data.alert_id;\r\n this.alertName = data.alert_name;\r\n this.alertTime = data.alert_time;\r\n this.meliSerialNumber = data.meliSerialNumber;\r\n this.technician = data.technician;\r\n this.contractor = data.contractor;\r\n this.consumer = data.consumer;\r\n this.consumerAddress = data.consumer_address;\r\n this.phone = data.phone && new Phone(data.phone);\r\n this.email = data.email && new Email(data.email);\r\n this.context=data.context && data.context.meliInfo && data.context.meliInfo.meliType;\r\n this.comments = data.comments;\r\n this.installationReports = data.installationReport && new InstallationReportDetails(data.installationReport);\r\n this.submitinstallationReport = data.installationReport ;\r\n this.totalCompletedJobs = data.totalCompletedJobs;\r\n this.totalInstalledJobs = data.totalInstalledJobs;\r\n this.totalAlertInvestigationJobs = data.totalAlertInvestigationJobs;\r\n }\r\n}\r\n\r\nexport class TechnicianJobHistoryDetails {\r\n page: number;\r\n size: number;\r\n jobList: JobDetails[];\r\n currentPageNumber: number;\r\n noOfElementsInCurrentPage: number;\r\n totalPage: number;\r\n totalNumberOfElements: number;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.jobList = data.content && data.content.length &&\r\n data.content.map((value, index) => new JobDetails(value));\r\n this.currentPageNumber = data.currentPageNumber;\r\n this.noOfElementsInCurrentPage = data.noOfElementsInCurrentPage;\r\n this.totalPage = data.totalPage;\r\n this.totalNumberOfElements = data.totalNumberOfElements;\r\n }\r\n}\r\n\r\nexport class TechnicianJobHistoryRequestData {\r\n page: number;\r\n size: number;\r\n technicianId: string;\r\n status?: any;\r\n fromDate?: any;\r\n toDate?: any;\r\n\r\n constructor(data) {\r\n this.page = data.page;\r\n this.size = data.size;\r\n this.technicianId = data.technicianId;\r\n this.status = data.status;\r\n this.fromDate = data.fromDate;\r\n this.toDate = data.toDate;\r\n }\r\n}\r\n\r\nexport class TechnicianJobHistoryResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n technicianJobHistoryDetails: TechnicianJobHistoryDetails;\r\n technicianJobHistoryRequestData: TechnicianJobHistoryRequestData;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.technicianJobHistoryDetails = data.responseData && new TechnicianJobHistoryDetails(data.responseData);\r\n this.technicianJobHistoryRequestData = data.requestData && new TechnicianJobHistoryRequestData(data.requestData);\r\n }\r\n}\r\n\r\n// export class Email {\r\n// id: number;\r\n// type: string;\r\n// email: string;\r\n\r\n// constructor(data) {\r\n// this.id = data.id;\r\n// this.type = data.type;\r\n// this.email = data.email;\r\n// }\r\n// }\r\n\r\n// export class Phone {\r\n// id: number;\r\n// type: string;\r\n// phone: string;\r\n// countryCode?: any;\r\n\r\n// constructor(data) {\r\n// this.id = data.id;\r\n// this.type = data.type;\r\n// this.phone = data.phone;\r\n// this.countryCode = data.countryCode;\r\n// }\r\n// }\r\n\r\nexport class EditTechnicianDetails {\r\n technicianId: number;\r\n awsTechnicianId: string;\r\n technicianName: string;\r\n technicianFirstName?: any;\r\n technicianLastName?: any;\r\n melis: any[];\r\n phone: Phone[];\r\n email: Email[];\r\n addresses: any[];\r\n\r\n constructor(data) {\r\n this.technicianId = data.technicianId;\r\n this.awsTechnicianId = data.awsTechnicianId;\r\n this.technicianName = data.technicianName;\r\n this.technicianFirstName = data.firstName;\r\n this.technicianLastName = data.lastName;\r\n this.melis = data.melis;\r\n this.phone = data.phone && data.phone.length &&\r\n data.phone.map((value, index) => new Phone(value));\r\n this.email = data.email && data.email.length &&\r\n data.email.map((value, index) => new Email(value));\r\n this.addresses = data.addresses && data.addresses.length &&\r\n data.addresses.map((value, index) => new Address(value));\r\n }\r\n}\r\n\r\nexport class EditTechnicianResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n editTechnicianResponse: EditTechnicianDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.editTechnicianResponse = new EditTechnicianDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n}\r\n\r\nexport class TechnicianBulkUploadResponseDetails {\r\n message: string;\r\n validRecordsCount: number;\r\n inValidRecordsCount: number;\r\n info: any[];\r\n\r\n constructor(data) {\r\n this.message = data.Message;\r\n this.validRecordsCount = data.valid_records_count;\r\n this.inValidRecordsCount = data.in_valid_records_count;\r\n this.info = data.info;\r\n }\r\n\r\n}\r\n\r\nexport class TechnicianBulkUploadResponse {\r\n statusCode: string;\r\n statusMessage: string;\r\n statusInfo?: any;\r\n technicianBulkUploadResponseDetails: TechnicianBulkUploadResponseDetails;\r\n requestData?: any;\r\n\r\n constructor(data) {\r\n this.statusCode = data.statusCode;\r\n this.statusMessage = data.statusMessage;\r\n this.statusInfo = data.statusInfo;\r\n this.technicianBulkUploadResponseDetails = data.responseData && \r\n new TechnicianBulkUploadResponseDetails(data.responseData);\r\n this.requestData = data.requestData;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as moment_ from 'moment';\r\n\r\nconst moment = moment_;\r\n\r\n@Pipe({\r\n name: 'momentDate'\r\n})\r\nexport class MomentDatePipe implements PipeTransform {\r\n\r\n transform(dateString: string, format: string): any {\r\n let formatToConvert = format;\r\n if (!format) {\r\n formatToConvert = 'DD-MMM-YYYY hh:mm:ss A';\r\n }\r\n\r\n // const date = moment.utc(dateString).format(formatToConvert);\r\n const stillUtc = moment.utc(dateString).toDate();\r\n const formatedDate = moment(stillUtc).local().format(formatToConvert);\r\n\r\n return formatedDate;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'reportsPreseasonInArray'\r\n})\r\nexport class ReportsPreseasonInArrayPipe implements PipeTransform {\r\n\r\n transform(preseasonScheduledArr: any, currentValue): any {\r\n //console.log(currentValue)\r\n let flag = false;\r\n flag = preseasonScheduledArr.includes(currentValue)\r\n return flag;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safePipe'\r\n})\r\nexport class SafePipePipe implements PipeTransform {\r\n\r\n constructor(\r\n private domSanitizer: DomSanitizer\r\n ) {}\r\n\r\n transform(url): any {\r\n return this.domSanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApiService {\r\n\r\n token: any;\r\n headers: HttpHeaders;\r\n\r\n constructor(\r\n private httpClient: HttpClient\r\n ) { }\r\n\r\n handleHeaders() {\r\n // const isRememberMeChecked = localStorage.getItem('isRememberMeChecked');\r\n // if (isRememberMeChecked === 'true') {\r\n this.token = localStorage.getItem('token');\r\n // } else {\r\n // this.token = sessionStorage.getItem('token');\r\n // }\r\n this.headers = new HttpHeaders().append('Authorization', this.token);\r\n\r\n if (!this.token) {\r\n window.location.reload();\r\n }\r\n\r\n }\r\n\r\n get(url: string, params: any = {}, useRawParams: boolean = false, hasHeader: boolean = true): Observable {\r\n let httpParams: HttpParams = new HttpParams();\r\n\r\n if (!useRawParams) {\r\n\r\n // let httpParams: HttpParams = new HttpParams();\r\n Object.keys(params).forEach(key => {\r\n httpParams = httpParams.append(key, params[key]);\r\n });\r\n\r\n params = httpParams;\r\n }\r\n\r\n if (hasHeader) {\r\n this.handleHeaders();\r\n return this.httpClient.get(url, { params, headers: this.headers });\r\n } else {\r\n return this.httpClient.get(url, { params });\r\n }\r\n }\r\n\r\n post(url: string, payload, params: any = {}, useRawParams: boolean = false, hasHeader: boolean = true) {\r\n let httpParams: HttpParams = new HttpParams();\r\n if (!useRawParams) {\r\n Object.keys(params).forEach(key => {\r\n httpParams = httpParams.append(key, params[key]);\r\n });\r\n params = httpParams;\r\n }\r\n\r\n if (hasHeader) {\r\n this.handleHeaders();\r\n return this.httpClient.post(url, payload, { params, headers: this.headers });\r\n } else {\r\n return this.httpClient.post(url, payload, { params });\r\n }\r\n }\r\n\r\n put(url: string, payload, params: any = {}, useRawParams: boolean = false, hasHeader: boolean = true) {\r\n let httpParams: HttpParams = new HttpParams();\r\n if (!useRawParams) {\r\n Object.keys(params).forEach(key => {\r\n httpParams = httpParams.append(key, params[key]);\r\n });\r\n params = httpParams;\r\n }\r\n\r\n if (hasHeader) {\r\n this.handleHeaders();\r\n return this.httpClient.put(url, payload, { params, headers: this.headers });\r\n } else {\r\n return this.httpClient.put(url, payload, { params });\r\n }\r\n }\r\n\r\n delete(url: string, params: any = {}, useRawParams: boolean = false, hasHeader: boolean = true) {\r\n let httpParams: HttpParams = new HttpParams();\r\n if (!useRawParams) {\r\n Object.keys(params).forEach(key => {\r\n httpParams = httpParams.append(key, params[key]);\r\n });\r\n params = httpParams;\r\n }\r\n\r\n if (hasHeader) {\r\n this.handleHeaders();\r\n return this.httpClient.delete(url, { params, headers: this.headers });\r\n } else {\r\n return this.httpClient.delete(url, { params });\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as moment from 'moment';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\nimport { AbstractControl, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Params, RoutesRecognized } from '@angular/router';\r\nimport * as momenttimezone from 'moment-timezone';\r\n\r\n// Services\r\n// import { SharedService } from 'src/app/shared/services/shared.service';\r\n\r\n// Environment\r\n// import { environment } from 'src/environments/environment';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { environment as channelEnvironment } from 'projects/channel/src/environments/environment';\r\nimport { environment as mduEnvironment } from 'projects/mdu/src/environments/environment';\r\n\r\n// Models\r\nimport { Customer } from 'src/app/shared/models/customer.model';\r\n// import { PhoneAndEmail } from 'src/app/shared/models/alerts.model';\r\nimport { Toaster } from 'src/app/shared/models/toaster.model';\r\nimport { SensorDetails, ModeDetails, HVACCycleResponseDetails } from 'src/app/shared/models/graph.model';\r\nimport { SearchResponseDetails } from 'src/app/shared/models/search.model';\r\nimport { Email, Phone, Address } from 'src/app/shared/models/common.model';\r\n\r\n// Constants\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { CHART_UNIT_TYPES, COMMON_CONSTANTS } from 'src/app/shared/constants/commom.constant';\r\nimport { deltaSVG } from 'src/app/shared/constants/svg.constant';\r\nimport { dateFormat } from 'highcharts';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { ParsedProperty } from '@angular/compiler';\r\nimport * as Highcharts from 'highcharts';\r\n\r\ndeclare const google: any;\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class HelperService {\r\n customerPersonalInformation = {\r\n email: '',\r\n phone: '',\r\n address: '',\r\n };\r\n toasterSubject: Subject = new Subject();\r\n selectedTab: Subject = new Subject();\r\n addressObject: Subject = new Subject();\r\n selectedSearchData: any;\r\n listenerForTechnicianSearchChange: Subject<\r\n SearchResponseDetails\r\n > = new Subject();\r\n selectedSiteTour: Subject = new Subject();\r\n listenerForCustomerSearchChange: Subject<\r\n SearchResponseDetails\r\n > = new Subject();\r\n listenerForMeliSearchChange: Subject = new Subject();\r\n listenerForContractorSearchChange: Subject<\r\n SearchResponseDetails\r\n > = new Subject();\r\n listenerForPropertySearchChange: Subject = new Subject();\r\n\r\n listenerForAlertChange = new Subject()\r\n\r\n listenerForUnassignBoard = new Subject();\r\n // advanceDiagnosticChartDataFarenheit: any = {\r\n // isFahrenheit: true,\r\n // // isPascal: false\r\n // // airTemperature: {},\r\n // // airStaticPressure: {},\r\n // // suctionLineTemperature: {},\r\n // // thermostatReads: {\r\n // // cooling: {},\r\n // // fanSpeed: {},\r\n // // heatPump: {},\r\n // // heatingFurnace: {}\r\n // // }\r\n // };\r\n // advanceDiagnosticChartDataCelcius: any = {\r\n // isFahrenheit: false,\r\n // // isPascal: true\r\n // // airTemperature: {},\r\n // // airStaticPressure: {},\r\n // // suctionLineTemperature: {},\r\n // // thermostatReads: {\r\n // // cooling: {},\r\n // // fanSpeed: {},\r\n // // heatPump: {},\r\n // // heatingFurnace: {}\r\n // // }\r\n // };\r\n\r\n diffStaticPressure = {\r\n pascalData: {},\r\n waterColumnData: {},\r\n };\r\n\r\n temperature = {\r\n celciusData: {},\r\n fahrenheitData: {},\r\n };\r\n\r\n thermostatReads = {\r\n fanSpeed: null,\r\n cooling: null,\r\n heatPump: null,\r\n heatFurnace: null,\r\n };\r\n\r\n\r\n alertDiscoveryChartData = {\r\n chartdata: {},\r\n chartcommondata: {},\r\n unit: '',\r\n };\r\n\r\n alertDiscoveryChartDataFahrenheit = {\r\n chartdata: {},\r\n chartcommondata: {},\r\n unit: '°F',\r\n };\r\n\r\n alertDiscoveryChartDataCelcius = {\r\n chartdata: {},\r\n chartcommondata: {},\r\n unit: '°C',\r\n };\r\n\r\n alertDiscoveryChartDataPascal = {\r\n chartdata: {},\r\n chartcommondata: {},\r\n unit: 'Pa'\r\n };\r\n alertDiscoveryChartDataWc = {\r\n chartdata: {},\r\n chartcommondata: {},\r\n unit: '\"WC',\r\n };\r\n alertDiscoveryChartDataFan = {\r\n chartdata: {},\r\n chartcommondata: {},\r\n unit: '',\r\n };\r\n // check whether it is temperature or pressure\r\n\r\n phoneCodesList = [];\r\n idleTime: any;\r\n warningIdleTime: any;\r\n warningIdleTimeSubject: Subject = new Subject();\r\n isAlreadyWarningIdleTimeRunning = false;\r\n SiteTourFinised: Subject = new Subject();\r\n uploadLogoData:Subject = new Subject();\r\n BulkUploadPopupData:Subject=new BehaviorSubject(\"false\");\r\n HVACCycleDetails = {\r\n fahrenheitData: {},\r\n celciusData: {}\r\n };\r\n sitetourEnableData: Subject = new Subject();\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n private cookieService: CookieService,\r\n private activatedRoute: ActivatedRoute // private sharedService: SharedService,\r\n ) { }\r\n\r\n handleBaseUrl(flag) {\r\n let url;\r\n // this.activatedRoute.data.subscribe(data => {\r\n // if (data) {\r\n // if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n // if (flag === BASE_URL_TYPES.LOGIN) {\r\n // url = contractorEnvironment.loginBaseUrl;\r\n // } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n // url = contractorEnvironment.baseUrl;\r\n // } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n // url = contractorEnvironment.updateRelayBaseUrl;\r\n // }\r\n // } else if (data.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n // if (flag === BASE_URL_TYPES.LOGIN) {\r\n // url = channelEnvironment.loginBaseUrl;\r\n // } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n // url = channelEnvironment.baseUrl;\r\n // } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n // url = channelEnvironment.updateRelayBaseUrl;\r\n // }\r\n // }\r\n // }\r\n // });\r\n\r\n let portalName = localStorage.getItem('portalName');\r\n // this.activatedRoute.data.subscribe(data => {\r\n // if (data && data.portalName) {\r\n // portalName = data.portalName;\r\n // }\r\n // });\r\n\r\n let route = this.router.routerState.root;\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n // this.router.events.subscribe(val => {\r\n // if (val instanceof RoutesRecognized) {\r\n // if (val.state.root.firstChild.data) {\r\n // portalName = val.state.root.firstChild.data.portalName;\r\n // }\r\n // }\r\n // });\r\n\r\n if (route.snapshot && route.snapshot.data && route.snapshot.data.portalName) {\r\n portalName = route.snapshot.data.portalName;\r\n }\r\n\r\n // console.log(\r\n // 'localStorage.setItem(portalName, data.portalName);',\r\n // localStorage.getItem('portalName'));\r\nconsole.log(portalName)\r\n if (portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n if (flag === BASE_URL_TYPES.LOGIN) {\r\n url = contractorEnvironment.loginBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n url = contractorEnvironment.baseUrl;\r\n } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n url = contractorEnvironment.updateRelayBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.USER_POOL_ID) {\r\n url = contractorEnvironment.userPoolId;\r\n } else if (flag === BASE_URL_TYPES.PRE_SEASON_TEST) {\r\n url = contractorEnvironment.preSeasonTestBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.LAMBDA) {\r\n url = contractorEnvironment.lambdaBaseUrl;\r\n }\r\n else if (flag === BASE_URL_TYPES.COMFORTBRIDGE) {\r\n url = contractorEnvironment.comfortBridgeUrl;\r\n } else if (flag === BASE_URL_TYPES.SITE_NAME) {\r\n url = contractorEnvironment.siteName;\r\n }\r\n } else if (portalName === ROLE_CONSTANTS.CHANNEL) {\r\n if (flag === BASE_URL_TYPES.LOGIN) {\r\n url = channelEnvironment.loginBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n url = channelEnvironment.baseUrl;\r\n } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n url = channelEnvironment.updateRelayBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.USER_POOL_ID) {\r\n url = channelEnvironment.userPoolId;\r\n } else if (flag === BASE_URL_TYPES.LAMBDA) {\r\n url = channelEnvironment.lambdaBaseUrl;\r\n }\r\n else if (flag === BASE_URL_TYPES.COMFORTBRIDGE) {\r\n url = channelEnvironment.comfortBridgeUrl;\r\n } else if (flag === BASE_URL_TYPES.SITE_NAME) {\r\n url = channelEnvironment.siteName;\r\n }\r\n } else if (portalName === ROLE_CONSTANTS.MDU) {\r\n if (flag === BASE_URL_TYPES.LOGIN) {\r\n url = mduEnvironment.loginBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n url = mduEnvironment.baseUrl;\r\n } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n url = mduEnvironment.updateRelayBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.USER_POOL_ID) {\r\n url = mduEnvironment.userPoolId;\r\n } else if (flag === BASE_URL_TYPES.PRE_SEASON_TEST) {\r\n url = mduEnvironment.preSeasonTestBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.LAMBDA) {\r\n url = mduEnvironment.lambdaBaseUrl;\r\n }\r\n else if (flag === BASE_URL_TYPES.COMFORTBRIDGE) {\r\n url = mduEnvironment.comfortBridgeUrl;\r\n } else if (flag === BASE_URL_TYPES.SITE_NAME) {\r\n url = mduEnvironment.siteName;\r\n }\r\n\r\n }\r\n\r\n /*\r\n let route = this.router.routerState.root;\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n // console.log('return ',route.snapshot.data);\r\n // let data = route.snapshot.data;\r\n if (route.snapshot && route.snapshot.data) {\r\n let data = route.snapshot.data;\r\n if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n if (flag === BASE_URL_TYPES.LOGIN) {\r\n url = contractorEnvironment.loginBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n url = contractorEnvironment.baseUrl;\r\n } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n url = contractorEnvironment.updateRelayBaseUrl;\r\n }\r\n } else if (data.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n if (flag === BASE_URL_TYPES.LOGIN) {\r\n url = channelEnvironment.loginBaseUrl;\r\n } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n url = channelEnvironment.baseUrl;\r\n } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n url = channelEnvironment.updateRelayBaseUrl;\r\n }\r\n }\r\n }\r\n */\r\n // this.router.events.subscribe(val => {\r\n // debugger\r\n // if (val instanceof RoutesRecognized) {\r\n\r\n // if (val.state.root.firstChild.data) {\r\n // const data = val.state.root.firstChild.data;\r\n // if (data.portalName === ROLE_CONSTANTS.CONTRACTOR) {\r\n // if (flag === BASE_URL_TYPES.LOGIN) {\r\n // url = contractorEnvironment.loginBaseUrl;\r\n // } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n // url = contractorEnvironment.baseUrl;\r\n // } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n // url = contractorEnvironment.updateRelayBaseUrl;\r\n // }\r\n // } else if (data.portalName === ROLE_CONSTANTS.CHANNEL) {\r\n // if (flag === BASE_URL_TYPES.LOGIN) {\r\n // url = channelEnvironment.loginBaseUrl;\r\n // } else if (flag === BASE_URL_TYPES.COMMON_BASE) {\r\n // url = channelEnvironment.baseUrl;\r\n // } else if (flag === BASE_URL_TYPES.UPDATE_RELAY) {\r\n // url = channelEnvironment.updateRelayBaseUrl;\r\n // }\r\n // console.log(url);\r\n // }\r\n // console.log(url);\r\n // }\r\n\r\n // console.log(val.state.root.firstChild.data.portalName);\r\n // return url;\r\n\r\n // }\r\n // });\r\n return url;\r\n }\r\n\r\n handlePortalType() {\r\n let portalId = null;\r\n let portalName = localStorage.getItem('portalName');\r\n if (portalName == ROLE_CONSTANTS.CONTRACTOR) {\r\n return portalId = 1;\r\n }\r\n else if (portalName == ROLE_CONSTANTS.MDU) {\r\n return portalId = 2\r\n }\r\n else if (portalName == ROLE_CONSTANTS.CHANNEL) {\r\n return portalId = 3\r\n }\r\n }\r\n // handleAuthTime() {\r\n // const authTime: Date = new Date(+localStorage.getItem('authTime'));\r\n // if (authTime) {\r\n // return moment(authTime).format('hh:mm A');\r\n // }\r\n // }\r\n\r\n handleIsSessionTimeOutApplicable() {\r\n let route = this.router.routerState.root;\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n\r\n if (route.snapshot && route.snapshot.queryParams &&\r\n route.snapshot.queryParams.sessionTimeout === 'false') {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n handleStartIdleTime() {\r\n this.idleTime = setTimeout(\r\n () => {\r\n if (this.router.url !== '/login' && !this.isAlreadyWarningIdleTimeRunning &&\r\n this.handleIsSessionTimeOutApplicable()) {\r\n this.setValueForWarningIdleTime();\r\n }\r\n }, 29 * 60000\r\n );\r\n }\r\n\r\n handleResetIdleTime() {\r\n this.handleClearTimeOut(this.idleTime);\r\n this.handleClearTimeOut(this.warningIdleTime);\r\n this.handleStartIdleTime();\r\n }\r\n\r\n handleResetWarningIdleTime() {\r\n this.handleClearTimeOut(this.idleTime);\r\n this.handleClearTimeOut(this.warningIdleTime);\r\n // this.handleWarningIdleTime();\r\n }\r\n\r\n setListnerForWarningIdleTime() {\r\n return this.warningIdleTimeSubject.asObservable();\r\n }\r\n\r\n setValueForWarningIdleTime() {\r\n // debugger\r\n // if (!this.isAlreadyWarningIdleTimeRunning) {\r\n this.warningIdleTimeSubject.next(true);\r\n // }\r\n }\r\n\r\n handleWarningIdleTime() {\r\n // this.setValueForIsAlreadyIdleTimeRunning(true);\r\n // this.handleClearTimeOut(this.idleTime);\r\n this.warningIdleTime = setTimeout(() => {\r\n this.handleClearTimeOut(this.idleTime);\r\n this.isAlreadyWarningIdleTimeRunning = true;\r\n this.handleAutoLogout();\r\n }, 60000);\r\n }\r\n\r\n setValueForIsAlreadyIdleTimeRunning(value: boolean) {\r\n // this.isAlreadyWarningIdleTimeRunning = value;\r\n }\r\n\r\n handleClearTimeOut(time) {\r\n clearTimeout(time);\r\n }\r\n\r\n handleParseLogoutQueryParam() {\r\n let userName;\r\n // if (isRememberMeChecked === 'true') {\r\n // userName = this.cookieService.get('username');\r\n // } else {\r\n userName = localStorage.getItem('userName');\r\n // }\r\n return {\r\n userName,\r\n userPoolId: this.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n }\r\n\r\n handleAutoLogout() {\r\n // localStorage.removeItem('token')\r\n // // localStorage.clear();\r\n // // sessionStorage.clear();\r\n // this.router.navigate(['/login']);\r\n // const queryParams = {};\r\n // // this.sharedService.handleLogout(queryParams).subscribe(\r\n // // (response) => {\r\n\r\n // // }, (error) => {\r\n\r\n // // }\r\n // // );\r\n this.handleLogoutAPISuccessResponse();\r\n localStorage.setItem('isAutoLogout', 'true');\r\n this.isAlreadyWarningIdleTimeRunning = false;\r\n }\r\n\r\n handleLogoutAPISuccessResponse() {\r\n // localStorage.removeItem('token');\r\n // localStorage.removeItem('disableBillingAfterRefresh');\r\n const isRememberMeChecked = localStorage.getItem('isRememberMeChecked');\r\n const isUsername = localStorage.getItem('userName');\r\n const isPassword = localStorage.getItem('password');\r\n localStorage.clear();\r\n localStorage.setItem('isRememberMeChecked', isRememberMeChecked);\r\n if(localStorage.getItem('isRememberMeChecked')==\"true\")\r\n {\r\n localStorage.setItem('userName',isUsername);\r\n localStorage.setItem('password',isPassword)\r\n }\r\n // sessionStorage.clear();\r\n window.location.reload();\r\n // this.router.navigate(['/login']);\r\n }\r\n\r\n handleConvertBASE64Encode(value: any) {\r\n return btoa(value);\r\n }\r\n\r\n // handleEmailSelection(emailList: PhoneAndEmail) {\r\n // if (emailList && emailList.home && emailList.home.length) {\r\n // return emailList.home[0];\r\n // } else if (emailList && emailList.office && emailList.office.length) {\r\n // return emailList.office[0];\r\n // } else if (emailList && emailList.mobile && emailList.mobile.length) {\r\n // return emailList.mobile[0];\r\n // } else {\r\n // return null;\r\n // }\r\n // }\r\n\r\n handleEmailSelection(emailList: Email[], requiredType: string) {\r\n let selctedemail: Email;\r\n if (emailList && emailList.length) {\r\n selctedemail = emailList.find(currentValue => currentValue.type === requiredType);\r\n // return emailList.home[0];\r\n }\r\n // if (selctedemail && selctedemail.email) {\r\n // selctedemail = selctedemail.email;\r\n // }\r\n return selctedemail;\r\n // else if (emailList && emailList.office && emailList.office.length) {\r\n // return emailList.office[0];\r\n // } else if (emailList && emailList.mobile && emailList.mobile.length) {\r\n // return emailList.mobile[0];\r\n // } else {\r\n // return null;\r\n // }\r\n }\r\n\r\n // handlePhoneSelection(phoneList: PhoneAndEmail) {\r\n // if (phoneList && phoneList.home && phoneList.home.length) {\r\n // return phoneList.home[0];\r\n // } else if (phoneList && phoneList.office && phoneList.office.length) {\r\n // return phoneList.office[0];\r\n // } else if (phoneList && phoneList.mobile && phoneList.mobile.length) {\r\n // return phoneList.mobile[0];\r\n // } else {\r\n // return null;\r\n // }\r\n // }\r\n\r\n handlePhoneSelection(phoneList: Phone[], requiredType: string) {\r\n let selectedPhone: Phone;\r\n if (phoneList && phoneList.length) {\r\n selectedPhone = phoneList.find(currentValue => currentValue.type === requiredType);\r\n // return phoneList.home[0];\r\n }\r\n // if (selectedPhone && selectedPhone.phoneNumber) {\r\n // selectedPhone = selectedPhone.phoneNumber;\r\n // }\r\n return selectedPhone;\r\n // else if (phoneList && phoneList.office && phoneList.office.length) {\r\n // return phoneList.office[0];\r\n // } else if (phoneList && phoneList.mobile && phoneList.mobile.length) {\r\n // return phoneList.mobile[0];\r\n // } else {\r\n // return null;\r\n // }\r\n }\r\n\r\n handleAddressSelection(addressList: Address[], requiredType: string) {\r\n let selectedPhone: Address;\r\n if (addressList && addressList.length) {\r\n selectedPhone = addressList.find(currentValue => currentValue.type === requiredType);\r\n // return phoneList.home[0];\r\n }\r\n return selectedPhone;\r\n }\r\n\r\n handleFormatPhoneNumber(phoneNumber: any) {\r\n let number, zip, middle, last;\r\n if (phoneNumber) {\r\n phoneNumber = phoneNumber.replace(/\\s+/g, '');\r\n number = phoneNumber.match(/\\d+/g);\r\n }\r\n if (number && number.length) {\r\n number = number.join('');\r\n zip = number.slice(0, 3);\r\n middle = number.slice(3, 6);\r\n last = number.slice(6, 10);\r\n\r\n if (number.length > 6) {\r\n number = `(${zip}) ${middle}-${last}`;\r\n } else if (number.length > 3) {\r\n number = `(${zip}) ${middle}`;\r\n } else if (number.length > 0) {\r\n number = `(${zip}`;\r\n }\r\n }\r\n return number;\r\n }\r\n\r\n handleFormatExpiry(phoneNumber: any) {\r\n let number, month, year;\r\n if (phoneNumber) {\r\n phoneNumber = phoneNumber.replace(/\\s+/g, '');\r\n number = phoneNumber.match(/\\d+/g);\r\n }\r\n if (number && number.length) {\r\n number = number.join('');\r\n month = number.slice(0, 2);\r\n year = number.slice(2, 4);\r\n\r\n if (number.length > 2) {\r\n number = `${month}/${year}`;\r\n } else if (number.length > 0) {\r\n number = `${month}`;\r\n }\r\n }\r\n return number;\r\n }\r\n\r\n validateExpiry(control: AbstractControl) {\r\n\r\n const value = control.value;\r\n const regexp = new RegExp(/^\\([0-9]{3}\\) [0-9]{3}-[0-9]{4}$/);\r\n if (value) {\r\n if (value.length < 5) {\r\n return { invalidFormat: true };\r\n }\r\n else {\r\n let date = new Date();\r\n let currentyear = date.getFullYear();\r\n let currentmonth = date.getMonth();\r\n let givenyear = value.split(\"/\");\r\n let year = moment(givenyear[1], \"YY\");\r\n let fullyear = parseInt(year.format('YYYY'));\r\n let month = moment(givenyear[0], \"MM\");\r\n let fullmonth = parseInt(month.format('MM'));\r\n if (fullyear < currentyear) {\r\n return { invalidYear: true }\r\n }\r\n else if (fullyear == currentyear) {\r\n if (fullmonth < currentmonth + 1) {\r\n // console.log(fullmonth, currentmonth + 1);\r\n return { invalidMonth: true }\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n validateAmount(amount: any) {\r\n let before, after, number\r\n if (amount) {\r\n amount = amount.replace(/\\s+/g, '');\r\n number = amount.match(/\\d+/g);\r\n }\r\n if (number && number.length) {\r\n number = number.join('');\r\n before = number.slice(0, 1);\r\n after = number.slice(1, 3)\r\n if (number.length > 1) {\r\n number = `${before}.${after}`;\r\n }\r\n }\r\n return number;\r\n }\r\n\r\n\r\n handleCustomerDetails(emails, phones, address) {\r\n // this.customerPersonalInformation.email = this.handleEmailSelection(emails);\r\n\r\n // this.customerPersonalInformation.phone = this.handlePhoneSelection(phones);\r\n\r\n if (address && address.length) {\r\n this.customerPersonalInformation.address = address[0];\r\n }\r\n // }\r\n\r\n return this.customerPersonalInformation;\r\n }\r\n\r\n handleRemoveAddressLinesCombinator(address: string) {\r\n if (address) {\r\n const splitAddress = address.split(COMMON_CONSTANTS.ADDRESS_LINES_COMBINATOR);\r\n if (splitAddress[0] && splitAddress[1]) {\r\n return splitAddress[0] + ',' + splitAddress[1];\r\n } else if (splitAddress[0]) {\r\n return splitAddress[0];\r\n } else {\r\n return '';\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n navigateToRelaventPage(url: string, queryParams?: any) {\r\n if (queryParams) {\r\n this.router.navigate([url], { queryParams: queryParams });\r\n } else {\r\n this.router.navigate([url]);\r\n }\r\n }\r\n\r\n setListenerForToaster() {\r\n return this.toasterSubject.asObservable();\r\n }\r\n\r\n setListenerForSiteTourEnableorNot() {\r\n return this.sitetourEnableData.asObservable();\r\n }\r\n\r\n setSiteTourEnableorNot(value) {\r\n this.sitetourEnableData.next(value);\r\n\r\n }\r\n\r\n \r\n setListenerForUploadLogo() {\r\n return this.uploadLogoData.asObservable();\r\n }\r\n\r\n setUploadLogo(value) {\r\n this.uploadLogoData.next(value);\r\n\r\n }\r\n\r\n setListenerForBulkUploadPopupDisplay()\r\n {\r\n return this.BulkUploadPopupData.asObservable();\r\n }\r\n\r\n BulkUploadPopupDisplay(value)\r\n {\r\n this.BulkUploadPopupData.next(value)\r\n }\r\n\r\n setListenerForSelectedTab() {\r\n return this.selectedTab.asObservable();\r\n }\r\n\r\n setSelectedTab(value: string) {\r\n console.log(value)\r\n if (value.includes('?')) {\r\n value = value.substring(0, value.indexOf('?'));\r\n }\r\n this.selectedTab.next(value);\r\n }\r\n\r\n showToaster(type, message) {\r\n const toasterContent = {\r\n type,\r\n message,\r\n };\r\n this.toasterSubject.next(toasterContent);\r\n }\r\n\r\n setSelectedSearchData(data: any, page, flag?: boolean) {\r\n this.selectedSearchData = data;\r\n if (flag && page === 'technician') {\r\n this.listenerForTechnicianSearchChange.next(data);\r\n } else if (flag && page === 'customer') {\r\n this.listenerForCustomerSearchChange.next(data);\r\n } else if (flag && page === 'meli') {\r\n this.listenerForMeliSearchChange.next(data);\r\n } else if (flag && page === 'contractor') {\r\n this.listenerForContractorSearchChange.next(data);\r\n } else if (flag && page === 'property') {\r\n this.listenerForPropertySearchChange.next(data);\r\n }\r\n }\r\n\r\n getSelectedSearchData() {\r\n return this.selectedSearchData;\r\n }\r\n\r\n setListenerForTechnicianSearchChange() {\r\n return this.listenerForTechnicianSearchChange.asObservable();\r\n }\r\n\r\n setListenerForCustomerSearchChange() {\r\n return this.listenerForCustomerSearchChange.asObservable();\r\n }\r\n\r\n setListenerForMeliSearchChange() {\r\n return this.listenerForMeliSearchChange.asObservable();\r\n }\r\n\r\n setListenerForContractorSearchChange() {\r\n return this.listenerForContractorSearchChange.asObservable();\r\n }\r\n\r\n setListenerForPropertySearchChange() {\r\n return this.listenerForPropertySearchChange.asObservable();\r\n }\r\n\r\n\r\n setListenerForSiteTour() {\r\n return this.selectedSiteTour.asObservable();\r\n }\r\n\r\n setSelectedSiteTour(value: string) {\r\n this.selectedSiteTour.next(value);\r\n }\r\n\r\n\r\n setListenerForSiteTourFinised() {\r\n return this.SiteTourFinised.asObservable();\r\n }\r\n\r\n setSiteTourFinised(value: boolean) {\r\n this.SiteTourFinised.next(value);\r\n }\r\n handleAPIErrors(err) {\r\n let message;\r\n // message = err.error.status;\r\n message = 'Error';\r\n\r\n // if (err.status === 400 || err.status === 403) {\r\n // message = err.error && err.error.message ?\r\n // err.error[0].message : 'Not Found';\r\n // } else if (err.status === 404) {\r\n // message = 'Detail not found';\r\n // } else if (err.status === 500) {\r\n // message = err.error;\r\n // } else if (err.status === 0) {\r\n // message = err.statusText;\r\n // }\r\n if (\r\n err.error &&\r\n (err.error.statusCode === '4444' || err.error.statusMessage === 'ERROR')\r\n ) {\r\n return err.error.statusInfo ? err.error.statusInfo : 'Error';\r\n } else if (err.status === 400) {\r\n return 'Not Found';\r\n }\r\n else if(err.name===\"HttpErrorResponse\")\r\n {\r\n return 'Something went wrong, please try again';\r\n }\r\n return message;\r\n }\r\n\r\n validateIsEmail(control: AbstractControl) {\r\n const value = control.value;\r\n /*\r\n (?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|'\r\n (?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x\r\n 0b\\x0c\\x0e-\\x7f])*')@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-\r\n 9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-\r\n 9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9\r\n ]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0\r\n b\\x0c\\x0e-\\x7f])+)\\])\r\n */\r\n\r\n // tslint:disable:max-line-length\r\n // const regexp = new RegExp(\r\n // /^(([^<>()\\[\\]\\\\.,;:\\s@']+(\\.[^<>()\\[\\]\\\\.,;:\\s@']+)*)|('.+'))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\r\n // );\r\n const regexp = new RegExp(\r\n \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,3}$\"\r\n );\r\n // tslint:enable:max-line-length\r\n if (value) {\r\n if (!regexp.test(value)) {\r\n return { invalidEmail: true };\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n\r\n validateOnlySpaces(control: AbstractControl) {\r\n const value = control.value;\r\n // debugger\r\n if (value && !value.trim().length) {\r\n return { isOnlyWhiteSpaces: true };\r\n }\r\n return null;\r\n }\r\n\r\n validateAlteastOneCharacter(control: AbstractControl)\r\n {\r\n const value = control.value;\r\n if(value && value.trim().length){\r\n const regexp = new RegExp(/[a-zA-Z]/);\r\n if(!regexp.test(value))\r\n {\r\n return { isOnlyWhiteSpaces: true };\r\n }\r\n }\r\n }\r\n\r\n validatePhoneNumber(control: AbstractControl) {\r\n const value = control.value;\r\n const regexp = new RegExp(/^\\([0-9]{3}\\) [0-9]{3}-[0-9]{4}$/);\r\n if (value) {\r\n if (!regexp.test(value)) {\r\n return { invalidPhoneNumber: true };\r\n }\r\n return null;\r\n }\r\n return null;\r\n }\r\n validateWithOldPassword(oldpassword) {\r\n return (control: AbstractControl): { [key: string]: boolean } | null => {\r\n console.log(control.value, oldpassword)\r\n if (control.value) {\r\n if (control.value === control.parent.get(oldpassword).value) {\r\n return { passwordMatch: true };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n handleAddressLinesCombination(addressLine1: string, addressLine2: string) {\r\n return (\r\n addressLine1 + COMMON_CONSTANTS.ADDRESS_LINES_COMBINATOR + addressLine2\r\n );\r\n }\r\n\r\n handleAddressLinesSplit(address: string) {\r\n if (address) {\r\n return address.split(COMMON_CONSTANTS.ADDRESS_LINES_COMBINATOR);\r\n }\r\n return '';\r\n }\r\n\r\n handleDateSorting(list: any, sortingType: any, key: string, key1?: string) {\r\n if (list && list.length) {\r\n list.sort((a, b) => {\r\n let date1: any;\r\n let date2: any;\r\n if (!key1) {\r\n date1 = new Date(a[key]);\r\n date2 = new Date(b[key]);\r\n } else {\r\n if (a[key]) {\r\n date1 = new Date(a[key][key1]);\r\n }\r\n if (b[key]) {\r\n date2 = new Date(b[key][key1]);\r\n }\r\n }\r\n if (!sortingType) {\r\n // Ascending\r\n return date2 - date1;\r\n } else if (sortingType) {\r\n // Descending\r\n // list.reverse();\r\n return date1 - date2;\r\n }\r\n });\r\n }\r\n return list;\r\n }\r\n\r\n handleAlphabetSorting(\r\n list: any,\r\n sortingType: any,\r\n key: string,\r\n key1?: string\r\n ) {\r\n if (list && list.length) {\r\n list.sort((a, b) => {\r\n if (!sortingType) {\r\n // Ascending\r\n\r\n if (!key1) {\r\n if (a[key] < b[key]) {\r\n return -1;\r\n }\r\n if (a[key] > b[key]) {\r\n return 1;\r\n }\r\n return 0;\r\n } else {\r\n if (a[key] && b[key] && a[key][key1] < b[key][key1]) {\r\n return -1;\r\n }\r\n if (a[key] && b[key] && a[key][key1] > b[key][key1]) {\r\n return 1;\r\n }\r\n return 0;\r\n }\r\n } else if (sortingType) {\r\n // Descending\r\n // list.reverse();\r\n\r\n if (!key1) {\r\n if (a[key] < b[key]) {\r\n return 1;\r\n }\r\n if (a[key] > b[key]) {\r\n return -1;\r\n }\r\n return 0;\r\n } else {\r\n if (a[key] && b[key] && a[key][key1] < b[key][key1]) {\r\n return 1;\r\n }\r\n if (a[key] && b[key] && a[key][key1] > b[key][key1]) {\r\n return -1;\r\n }\r\n return 0;\r\n }\r\n }\r\n });\r\n }\r\n return list;\r\n }\r\n\r\n handlePhoneCodes(response) {\r\n const phonesCodes = [];\r\n if (response && response.length) {\r\n response.map((value, index) => {\r\n if (\r\n value.name &&\r\n value.callingCodes &&\r\n value.callingCodes.length &&\r\n value.callingCodes[0]\r\n ) {\r\n phonesCodes.push({\r\n name: value.name,\r\n code: value.callingCodes[0],\r\n });\r\n }\r\n }, this);\r\n }\r\n this.phoneCodesList = phonesCodes;\r\n return phonesCodes;\r\n }\r\n\r\n handleSelectDefaultValueForPhoneCodeDropdown(\r\n selectedCountryForPhoneCode,\r\n flag\r\n ) {\r\n let selectedCountry;\r\n if (this.phoneCodesList && this.phoneCodesList.length) {\r\n this.phoneCodesList.map((value, index) => {\r\n if (value.name === selectedCountryForPhoneCode) {\r\n if (flag === 'name') {\r\n selectedCountry = value.name;\r\n } else {\r\n selectedCountry = value.code;\r\n }\r\n }\r\n });\r\n }\r\n return selectedCountry;\r\n }\r\n\r\n setListenerForAddressObject() {\r\n return this.addressObject.asObservable();\r\n }\r\n\r\n handleAddress(htmlElement, type?: string, index?: number) {\r\n const autocomplete = new google.maps.places.Autocomplete(htmlElement, {\r\n types: ['geocode'],\r\n });\r\n autocomplete.setFields(['address_component', 'place_id', 'formatted_address']);\r\n // autocomplete.setFields([\"place_id\", \"geometry\", \"name\"]);\r\n\r\n let place;\r\n let street = '';\r\n let city;\r\n let state;\r\n let zipcode;\r\n\r\n google.maps.event.addListener(autocomplete, 'place_changed', () => {\r\n place = autocomplete.getPlace();\r\n const placeId = place.place_id;\r\n const formattedAddress = place.formatted_address;\r\n\r\n const componentForm = {\r\n street_number: '',\r\n street_address: '',\r\n route: '',\r\n neighborhood: '',\r\n premise: '',\r\n sublocality_level_3: '',\r\n sublocality_level_2: '',\r\n sublocality_level_1: '',\r\n locality: '', // City\r\n administrative_area_level_2: '',\r\n administrative_area_level_1: '', // State\r\n // country: 'long_name',\r\n postal_code: '',\r\n };\r\n\r\n const keys = Object.keys(componentForm);\r\n // for (let i = 0; i < place.address_components.length; i++) {\r\n // const addressType = place.address_components[i].types[0];\r\n // if (keys.includes(addressType)) {\r\n // // var val = place.address_components[i][componentForm[addressType]];\r\n // componentForm[addressType] = place.address_components[i].long_name;\r\n // }\r\n // }\r\n\r\n // if (place.address_components && place.address_components.length) {\r\n // place.address_components.map((value, index) => {\r\n // const addressType = value.types[0];\r\n // if (keys.includes(addressType)) {\r\n // // var val = place.address_components[i][componentForm[addressType]];\r\n // componentForm[addressType] = value.long_name;\r\n // }\r\n // });\r\n // }\r\n\r\n if (keys && keys.length) {\r\n keys.map((value, keysIndex) => {\r\n if (place.address_components && place.address_components.length) {\r\n place.address_components.map((placeValue, placeIndex) => {\r\n if (placeValue.types.includes(value)) {\r\n componentForm[value] = placeValue.long_name;\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n street = '';\r\n if (componentForm.street_number) {\r\n street += componentForm.street_number + ' ';\r\n }\r\n\r\n if (componentForm.street_address) {\r\n street += componentForm.street_address + ' ';\r\n }\r\n\r\n if (componentForm.route) {\r\n street += componentForm.route + ' ';\r\n }\r\n\r\n if (componentForm.premise) {\r\n street += componentForm.premise + ' ';\r\n }\r\n\r\n if (componentForm.neighborhood) {\r\n street += componentForm.neighborhood + ' ';\r\n }\r\n\r\n if (componentForm.sublocality_level_3) {\r\n street += componentForm.sublocality_level_3 + ' ';\r\n }\r\n\r\n if (componentForm.sublocality_level_2) {\r\n street += componentForm.sublocality_level_2 + ' ';\r\n }\r\n\r\n if (componentForm.sublocality_level_1) {\r\n street += componentForm.sublocality_level_1 + ',';\r\n }\r\n if (\r\n street != null &&\r\n street.length > 0 &&\r\n street.charAt(street.length - 1) === ','\r\n ) {\r\n street = street.substring(0, street.length - 1);\r\n }\r\n\r\n if (componentForm.locality) {\r\n city = componentForm.locality;\r\n } else {\r\n city = componentForm.administrative_area_level_2;\r\n }\r\n\r\n // city = componentForm.locality ? componentForm.locality : componentForm.administrative_area_level_2;\r\n\r\n state = componentForm.administrative_area_level_1;\r\n\r\n zipcode = componentForm.postal_code;\r\n\r\n const payload = {\r\n street,\r\n city,\r\n state,\r\n zipcode,\r\n type,\r\n index,\r\n placeId,\r\n formattedAddress,\r\n };\r\n this.addressObject.next(payload);\r\n });\r\n }\r\n\r\n scrollToFirstInvalidControl(form: FormGroup, nativeElemnt) {\r\n\r\n for (const key of Object.keys(form.controls)) {\r\n\r\n if (form.controls[key].invalid && nativeElemnt) {\r\n // const invalidControl = nativeElemnt.querySelector('[formcontrolname=\"' + key + '\"]');\r\n let invalidControl = nativeElemnt.querySelector(\r\n \"form .ng-invalid\"\r\n );\r\n if (invalidControl && invalidControl.hasChildNodes() &&\r\n (invalidControl.tagName && invalidControl.tagName.toLowerCase() !== 'select')) {\r\n invalidControl = invalidControl.querySelector('[formcontrolname=\"' + key + '\"]');\r\n }\r\n if (invalidControl) {\r\n invalidControl.focus();\r\n } else if (form.controls[key]['controls'] && form.controls[key]['controls'].length) {\r\n const firstInvalidControl: HTMLElement = nativeElemnt.querySelector(\r\n \"form .ng-invalid\"\r\n );\r\n form.controls[key]['controls'].map((value: FormGroup, index) => {\r\n this.scrollToFirstInvalidControl(value, firstInvalidControl);\r\n })\r\n } else if (form.controls[key]['controls'] && Object.keys(form.controls[key]['controls']) &&\r\n Object.keys(form.controls[key]['controls']).length) {\r\n const firstInvalidControl: HTMLElement = nativeElemnt.querySelector(\r\n \"form .ng-invalid\"\r\n );\r\n this.scrollToFirstInvalidControl(form.controls[key] as FormGroup, firstInvalidControl);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n // const firstInvalidControl: HTMLElement = this.el.nativeElement.querySelector(\r\n // \"form .ng-invalid\"\r\n // );\r\n\r\n // firstInvalidControl.scrollIntoView({ behavior: 'smooth' });\r\n\r\n // // firstInvalidControl.focus(); //without smooth behavior\r\n }\r\n\r\n handleConvertDateToUTCFormat(timeStamp) {\r\n const date = new Date(timeStamp);\r\n\r\n const dateInUTC = Date.UTC(\r\n new Date(date).getFullYear(),\r\n new Date(date).getMonth(),\r\n new Date(date).getDate(),\r\n new Date(date).getHours(),\r\n new Date(date).getMinutes(),\r\n new Date(date).getSeconds()\r\n );\r\n\r\n return dateInUTC;\r\n }\r\n\r\n\r\n\r\n handleThermostatReading(modeDetails: ModeDetails) {\r\n const coolingArray = [];\r\n\r\n const fanSpeedArray = [];\r\n\r\n const heatPumpArray = [];\r\n\r\n const heatingFurnaceArray = [];\r\n\r\n if (modeDetails && modeDetails.ac && modeDetails.ac.length) {\r\n modeDetails.ac.map((value, index) => {\r\n if (value.mode === 'ON') {\r\n coolingArray.push({\r\n color: 'rgba(0, 113, 188, 0.5)',\r\n from: this.handleConvertDateToUTCFormat(value.startTime),\r\n to: this.handleConvertDateToUTCFormat(value.endTime),\r\n\r\n });\r\n }\r\n });\r\n }\r\n\r\n if (modeDetails && modeDetails.fan && modeDetails.fan.length) {\r\n modeDetails.fan.map((value, index) => {\r\n if (value.mode === 'ON') {\r\n fanSpeedArray.push({\r\n color: 'rgba(255, 255, 255, 0.5)',\r\n from: this.handleConvertDateToUTCFormat(value.startTime),\r\n to: this.handleConvertDateToUTCFormat(value.endTime),\r\n });\r\n }\r\n });\r\n }\r\n\r\n if (modeDetails && modeDetails.heatPump && modeDetails.heatPump.length) {\r\n modeDetails.heatPump.map((value, index) => {\r\n if (value.mode === 'ON') {\r\n heatPumpArray.push({\r\n color: 'rgba(251, 176, 59, 0.5)',\r\n from: this.handleConvertDateToUTCFormat(value.startTime),\r\n to: this.handleConvertDateToUTCFormat(value.endTime),\r\n });\r\n }\r\n });\r\n }\r\n\r\n if (\r\n modeDetails &&\r\n modeDetails.heatFurnance &&\r\n modeDetails.heatFurnance.length\r\n ) {\r\n modeDetails.heatFurnance.map((value, index) => {\r\n if (value.mode === 'ON') {\r\n heatingFurnaceArray.push({\r\n color: 'rgba(251, 176, 59, 0.5)',\r\n from: this.handleConvertDateToUTCFormat(value.startTime),\r\n to: this.handleConvertDateToUTCFormat(value.endTime),\r\n });\r\n }\r\n });\r\n }\r\n\r\n return {\r\n cooling: coolingArray,\r\n fanSpeed: fanSpeedArray,\r\n heatPump: heatPumpArray,\r\n heatFurnace: heatingFurnaceArray,\r\n };\r\n }\r\n\r\n farenheitConvertion(data) {\r\n return data * (9 / 5) + 32;\r\n }\r\n\r\n handleChartData(response: SensorDetails, flag) {\r\n // this.advanceDiagnosticChartData.airTemperature['supplyAirTemperature'] = [];\r\n // this.advanceDiagnosticChartData.airTemperature['returnAirTemperature'] = [];\r\n console.log(response);\r\n if (response.alerts && response.alerts.length) {\r\n const supplyArray = [];\r\n\r\n const returnArray = [];\r\n\r\n const coilAirTemperatureArray = [];\r\n\r\n const filterStaticPressureArray = [];\r\n\r\n const deltaDataArray = [];\r\n\r\n\r\n // const coolingArray = [];\r\n\r\n // const fanSpeedArray = [];\r\n\r\n // const heatPumpArray = [];\r\n\r\n // const heatingFurnaceArray = [];\r\n\r\n const liquidLineTemperatureArray = [];\r\n\r\n const supplyArrayFarenheit = [];\r\n\r\n const returnArrayFarenheit = [];\r\n\r\n const filterStaticPressureArrayWaterColumn = [];\r\n\r\n const coilAirTemperatureArrayFarenheit = [];\r\n\r\n const liquidLineTemperatureFarenheit = [];\r\n\r\n const deltaDataArrayFarenheit = [];\r\n\r\n const ambientTemperature = [];\r\n\r\n const ambientTemperatureFarenheit = [];\r\n\r\n const returnPressureWC = [];\r\n\r\n const returnPressurePascal = [];\r\n\r\n const supplyPressureWC = [];\r\n\r\n const supplyPressurePascal = [];\r\n const annotationF=[];\r\n const annotationC=[];\r\n\r\n response.alarmDataList&&response.alarmDataList.map((data)=>{\r\nannotationF.push({alerttime:this.timeConversion(data['46'].x),alertvalue:parseInt(data['46'].y)})\r\nannotationC.push({alerttime:this.timeConversion(data['45'].x),alertvalue:parseInt(data['45'].y)})\r\n });\r\n //const alertoccuredtime = this.timeConversion(response.notch.x);\r\n //const alertoccuredvalue = response.notch.y;\r\n //annotationC = response.notchInCelciusList;\r\n response.alerts.map((value, index) => {\r\n //console.log(value);\r\n // value.dischargeAirTemperature = indedx + 100;\r\n // const date = new Date(value.timeStamp);\r\n\r\n // const dateInUTC = Date.UTC(\r\n // new Date(date).getFullYear(),\r\n // new Date(date).getMonth(),\r\n // new Date(date).getDate(),\r\n // new Date(date).getHours(),\r\n // new Date(date).getMinutes(),\r\n // new Date(date).getSeconds()\r\n // );\r\n\r\n //const dateInUTC = new Date(value.timeStamp).getTime();\r\n const date = new Date(value.timeStamp);\r\n const dateInUTC = Date.UTC(\r\n new Date(date).getFullYear(),\r\n new Date(date).getMonth(),\r\n new Date(date).getDate(),\r\n new Date(date).getHours(),\r\n new Date(date).getMinutes(),\r\n new Date(date).getSeconds()\r\n );\r\n supplyArray.push([\r\n // date.getTime(),\r\n dateInUTC,\r\n value.dischargeAirTemperature && value.dischargeAirTemperature.celsius &&\r\n value.dischargeAirTemperature.celsius.data,\r\n value.delta && value.delta.celsius &&\r\n value.delta.celsius.data,\r\n // value.outsideTemperature && value.outsideTemperature.celsius &&\r\n // value.outsideTemperature.celsius.data\r\n // value.dischargeAirTemperature,\r\n // value.delta\r\n ]);\r\n\r\n if (value.dischargeAirTemperature !== null) {\r\n supplyArrayFarenheit.push([\r\n // date.getTime(),\r\n dateInUTC,\r\n value.dischargeAirTemperature && value.dischargeAirTemperature.fahrenheit &&\r\n value.dischargeAirTemperature.fahrenheit.data,\r\n value.delta && value.delta.fahrenheit &&\r\n value.delta.fahrenheit.data,\r\n // value.outsideTemperature && value.outsideTemperature.fahrenheit &&\r\n // value.outsideTemperature.fahrenheit.data\r\n // (this.farenheitConvertion(value.dischargeAirTemperature)),\r\n // (this.farenheitConvertion(value.delta)),\r\n ]);\r\n } else {\r\n supplyArrayFarenheit.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n if (value.outsideTemperature !== null) {\r\n ambientTemperature.push([\r\n // date.getTime(),\r\n dateInUTC,\r\n value.outsideTemperature && value.outsideTemperature.celsius &&\r\n value.outsideTemperature.celsius.data\r\n // (this.farenheitConvertion(value.dischargeAirTemperature)),\r\n // (this.farenheitConvertion(value.delta)),\r\n ]);\r\n } else {\r\n ambientTemperature.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n if (value.outsideTemperature !== null) {\r\n ambientTemperatureFarenheit.push([\r\n // date.getTime(),\r\n dateInUTC,\r\n value.outsideTemperature && value.outsideTemperature.fahrenheit &&\r\n value.outsideTemperature.fahrenheit.data\r\n // (this.farenheitConvertion(value.dischargeAirTemperature)),\r\n // (this.farenheitConvertion(value.delta)),\r\n ]);\r\n } else {\r\n ambientTemperatureFarenheit.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n returnArray.push([\r\n // date.getTime(),\r\n dateInUTC,\r\n value.returnAirtemperature && value.returnAirtemperature.celsius &&\r\n value.returnAirtemperature.celsius.data,\r\n value.delta && value.delta.celsius &&\r\n value.delta.celsius.data\r\n // value.returnAirtemperature,\r\n // value.delta\r\n ]);\r\n\r\n if (value.returnAirtemperature !== null) {\r\n returnArrayFarenheit.push([\r\n // date.getTime(),\r\n dateInUTC,\r\n value.returnAirtemperature && value.returnAirtemperature.fahrenheit &&\r\n value.returnAirtemperature.fahrenheit.data,\r\n value.delta && value.delta.fahrenheit &&\r\n value.delta.fahrenheit.data\r\n // (this.farenheitConvertion(value.returnAirtemperature)),\r\n // (this.farenheitConvertion(value.delta)),\r\n ]);\r\n } else {\r\n returnArrayFarenheit.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n\r\n // deltaDataArray.push([\r\n // dateInUTC,\r\n // value.delta,\r\n // ])\r\n // if (value.delta !== null) {\r\n // deltaDataArrayFarenheit.push([\r\n // // date.getTime(),\r\n // dateInUTC,\r\n // ((value.dischargeAirTemperature * 9) / 5 + 32) - ((value.returnAirtemperature * 9) / 5 + 32),\r\n // ]);\r\n // } else {\r\n // deltaDataArrayFarenheit.push([\r\n // dateInUTC,\r\n // null\r\n // ]);\r\n // }\r\n\r\n coilAirTemperatureArray.push([\r\n dateInUTC,\r\n value.suctionAirTemperature && value.suctionAirTemperature.celsius &&\r\n value.suctionAirTemperature.celsius.data,\r\n value.delta && value.delta.celsius &&\r\n value.delta.celsius.data\r\n // value.suctionAirTemperature\r\n ]);\r\n\r\n if (value.suctionAirTemperature !== null) {\r\n coilAirTemperatureArrayFarenheit.push([\r\n dateInUTC,\r\n value.suctionAirTemperature && value.suctionAirTemperature.fahrenheit &&\r\n value.suctionAirTemperature.fahrenheit.data,\r\n // (this.farenheitConvertion(value.suctionAirTemperature)),\r\n ]);\r\n } else {\r\n coilAirTemperatureArrayFarenheit.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n filterStaticPressureArrayWaterColumn.push([\r\n dateInUTC,\r\n value.pressure && value.pressure.wc && value.pressure.wc.data,\r\n value.supplyPressure && value.supplyPressure.wc && value.supplyPressure.wc.data,\r\n value.returnPressure && value.returnPressure.wc && value.returnPressure.wc.data\r\n // value.pressure / 249,\r\n // value.supplyPressure ? value.supplyPressure / 249 : value.supplyPressure,\r\n // value.returnPressure ? value.returnPressure / 249 : value.returnPressure\r\n ]);\r\n\r\n if (value.pressure !== null) {\r\n filterStaticPressureArray.push([\r\n dateInUTC,\r\n value.pressure && value.pressure.pascal && value.pressure.pascal.data,\r\n value.supplyPressure && value.supplyPressure.pascal && value.supplyPressure.pascal.data,\r\n value.returnPressure && value.returnPressure.pascal && value.returnPressure.pascal.data\r\n // value.pressure,\r\n // value.supplyPressure,\r\n // value.returnPressure\r\n ]);\r\n } else {\r\n filterStaticPressureArray.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n if (value.returnPressure !== null) {\r\n returnPressureWC.push([\r\n dateInUTC,\r\n value.returnPressure && value.returnPressure.wc && value.returnPressure.wc.data,\r\n ]);\r\n } else {\r\n returnPressureWC.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n if (value.returnPressure !== null) {\r\n returnPressurePascal.push([\r\n dateInUTC,\r\n value.returnPressure && value.returnPressure.pascal && value.returnPressure.pascal.data,\r\n ]);\r\n } else {\r\n returnPressurePascal.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n if (value.supplyPressure !== null) {\r\n supplyPressureWC.push([\r\n dateInUTC,\r\n value.supplyPressure && value.supplyPressure.wc && value.supplyPressure.wc.data,\r\n ]);\r\n } else {\r\n supplyPressureWC.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n if (value.supplyPressure !== null) {\r\n supplyPressurePascal.push([\r\n dateInUTC,\r\n value.supplyPressure && value.supplyPressure.pascal && value.supplyPressure.pascal.data,\r\n ]);\r\n } else {\r\n supplyPressurePascal.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n\r\n // coolingArray.push([\r\n // dateInUTC,\r\n // value.cooling\r\n // ]);\r\n\r\n // if (value.cooling) {\r\n // coolingArray.push({\r\n // color: '#3e4c66',\r\n // from: dateInUTC,\r\n // to: dateInUTC,\r\n // });\r\n // }\r\n\r\n // fanSpeedArray.push([\r\n // dateInUTC,\r\n // value.fanSpeed\r\n // ]);\r\n\r\n // if (value.fanSpeed) {\r\n // fanSpeedArray.push({\r\n // color: '#3e4c66',\r\n // from: dateInUTC,\r\n // to: dateInUTC,\r\n // });\r\n // }\r\n\r\n // heatPumpArray.push([\r\n // dateInUTC,\r\n // value.heatPump\r\n // ]);\r\n\r\n // if (value.heatPump) {\r\n // heatPumpArray.push({\r\n // color: '#532d3a',\r\n // from: dateInUTC,\r\n // to: dateInUTC,\r\n // });\r\n // }\r\n\r\n // heatingFurnaceArray.push([\r\n // dateInUTC,\r\n // value.heatingFurnance\r\n // ]);\r\n\r\n // if (value.heatingFurnance) {\r\n // heatingFurnaceArray.push({\r\n // color: '#532d3a',\r\n // from: dateInUTC,\r\n // to: dateInUTC,\r\n // });\r\n // }\r\n\r\n liquidLineTemperatureArray.push([\r\n dateInUTC,\r\n value.liquidLineTemperature && value.liquidLineTemperature.celsius &&\r\n value.liquidLineTemperature.celsius.data,\r\n // value.liquidLineTemperature\r\n ]);\r\n\r\n if (value.liquidLineTemperature !== null) {\r\n liquidLineTemperatureFarenheit.push([\r\n dateInUTC,\r\n value.liquidLineTemperature && value.liquidLineTemperature.fahrenheit &&\r\n value.liquidLineTemperature.fahrenheit.data,\r\n // (this.farenheitConvertion(value.liquidLineTemperature)),\r\n ]);\r\n } else {\r\n liquidLineTemperatureFarenheit.push([\r\n dateInUTC,\r\n null\r\n ]);\r\n }\r\n });\r\n // debugger\r\n const thermostatData = this.handleThermostatReading(response.modeDetails);\r\n this.thermostatReads.fanSpeed = thermostatData.fanSpeed;\r\n this.thermostatReads.cooling = thermostatData.cooling;\r\n this.thermostatReads.heatPump = thermostatData.heatPump;\r\n this.thermostatReads.heatFurnace = thermostatData.heatFurnace;\r\n\r\n // this.advanceDiagnosticChartDataCelcius.fanSpeed = fanSpeedArray;\r\n // this.advanceDiagnosticChartDataCelcius.cooling = coolingArray;\r\n // this.advanceDiagnosticChartDataCelcius.heatPump = heatPumpArray;\r\n // this.advanceDiagnosticChartDataCelcius.heatingFurnace = heatingFurnaceArray;\r\n\r\n // this.advanceDiagnosticChartDataFarenheit.fanSpeed = fanSpeedArray;\r\n // this.advanceDiagnosticChartDataFarenheit.cooling = coolingArray;\r\n // this.advanceDiagnosticChartDataFarenheit.heatPump = heatPumpArray;\r\n // this.advanceDiagnosticChartDataFarenheit.heatingFurnace = heatingFurnaceArray;\r\n\r\n if (flag === 'advance-diagnostic') {\r\n this.temperature.celciusData = {\r\n unit: COMMON_CONSTANTS.CELCIUS,\r\n title: 'Temperature',\r\n yAxisTitle: 'Temperature',\r\n emptydata1: '',\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n chartName: 'investigate-overview',\r\n annotation:annotationC,\r\n data: [\r\n {\r\n name: COMMON_CONSTANTS.SUPPLY_AIR_TEMPERATURE,\r\n data: supplyArray,\r\n color: COMMON_CONSTANTS.DISCHARGE_AIR_TEMPERATURE_COLOR,\r\n keys: ['x', 'y', 'z', 'z1'],\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'dat'\r\n },\r\n {\r\n name: COMMON_CONSTANTS.RETURN_AIR_TEMPERATURE,\r\n data: returnArray,\r\n color: COMMON_CONSTANTS.RETURN_AIR_TEMPERATURE_COLOR,\r\n keys: ['x', 'y', 'z'],\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'rat'\r\n },\r\n {\r\n name: COMMON_CONSTANTS.LIQUID_LINE_TEMPERATURE,\r\n data: liquidLineTemperatureArray,\r\n color: COMMON_CONSTANTS.LIQUID_LINE_TEMPERATURE_COLOR,\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'llt'\r\n },\r\n {\r\n name: COMMON_CONSTANTS.SUCTION_LINE_TEMPERATURE,\r\n data: coilAirTemperatureArray,\r\n color: COMMON_CONSTANTS.SUCTION_LINE_TEMPERATURE_COLOR,\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'slt'\r\n },\r\n \r\n {\r\n name: COMMON_CONSTANTS.AMBIENT_LINE_TEMPERATURE,\r\n data: ambientTemperature,\r\n color: COMMON_CONSTANTS.AMBIENT_LINE_TEMPERATURE_COLOR,\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'ambt'\r\n },\r\n // {\r\n // name: COMMON_CONSTANTS.DELTA,\r\n // data: deltaDataArray,\r\n // color: COMMON_CONSTANTS.DELTA_COLOR,\r\n // },\r\n ],\r\n };\r\n\r\n /*\r\n\r\n this.advanceDiagnosticChartDataCelcius.airTemperature = {\r\n title: 'Air Temperature',\r\n yAxisTitle: 'Temperature',\r\n\r\n data: [\r\n {\r\n name: COMMON_CONSTANTS.DISCHARGE_AIR_TEMPERATURE,\r\n data: supplyArray,\r\n },\r\n {\r\n name: COMMON_CONSTANTS.RETURN_AIR_TEMPERATURE,\r\n data: returnArray,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataCelcius.airStaticPressure = {\r\n title: 'Differential Static Pressure',\r\n yAxisTitle: 'Pressure',\r\n\r\n data: [\r\n {\r\n name: 'Differential Static Pressure',\r\n data: filterStaticPressureArray,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataCelcius.suctionLineTemperature = {\r\n title: 'Suction & Liquid Line Temperature',\r\n yAxisTitle: 'Temperature',\r\n\r\n data: [\r\n {\r\n name: COMMON_CONSTANTS.SUCTION_LINE_TEMPERATURE,\r\n data: coilAirTemperatureArray,\r\n },\r\n {\r\n name: COMMON_CONSTANTS.LIQUID_LINE_TEMPERATURE,\r\n data: liquidLineTemperature,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataCelcius.thermostatReads.cooling = {\r\n title: 'Cooling',\r\n yAxisTitle: 'Cooling',\r\n\r\n data: [\r\n {\r\n name: 'Cooling',\r\n data: coolingArray,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataCelcius.thermostatReads.fanSpeed = {\r\n title: 'Fan/Heat Pump',\r\n yAxisTitle: 'Fan/Heat Pump',\r\n\r\n data: [\r\n {\r\n name: 'Fan',\r\n data: fanSpeedArray,\r\n },\r\n {\r\n name: 'Heat Pump',\r\n data: heatPumpArray,\r\n },\r\n ],\r\n };\r\n\r\n // this.advanceDiagnosticChartDataCelcius.thermostatReads.heatPump = {\r\n // title: 'Heat Pump',\r\n // yAxisTitle: 'Heat Pump',\r\n\r\n // data: [\r\n // {\r\n // name: 'Heat Pump',\r\n // data: heatPumpArray,\r\n // }\r\n // ]\r\n // };\r\n\r\n this.advanceDiagnosticChartDataCelcius.thermostatReads.heatingFurnace = {\r\n title: 'Heating Furnace',\r\n yAxisTitle: 'Heating Furnace',\r\n\r\n data: [\r\n {\r\n name: 'Heating Furnace',\r\n data: heatingFurnaceArray,\r\n },\r\n ],\r\n };\r\n\r\n */\r\n\r\n // Fahrenheit\r\n\r\n this.temperature.fahrenheitData = {\r\n unit: COMMON_CONSTANTS.FAHRENHEIT,\r\n title: 'Temperature',\r\n yAxisTitle: 'Temperature',\r\n emptydata1: '',\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n chartName: 'investigate-overview',\r\n annotation:annotationF,\r\n data: [\r\n {\r\n name: COMMON_CONSTANTS.SUPPLY_AIR_TEMPERATURE,\r\n data: supplyArrayFarenheit,\r\n color: COMMON_CONSTANTS.DISCHARGE_AIR_TEMPERATURE_COLOR,\r\n keys: ['x', 'y', 'z', 'z1'],\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'dat'\r\n },\r\n {\r\n name: COMMON_CONSTANTS.RETURN_AIR_TEMPERATURE,\r\n data: returnArrayFarenheit,\r\n color: COMMON_CONSTANTS.RETURN_AIR_TEMPERATURE_COLOR,\r\n keys: ['x', 'y', 'z'],\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'rat',\r\n id: 'dataseries'\r\n },\r\n {\r\n name: COMMON_CONSTANTS.LIQUID_LINE_TEMPERATURE,\r\n data: liquidLineTemperatureFarenheit,\r\n color: COMMON_CONSTANTS.LIQUID_LINE_TEMPERATURE_COLOR,\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'llt'\r\n },\r\n {\r\n name: COMMON_CONSTANTS.SUCTION_LINE_TEMPERATURE,\r\n data: coilAirTemperatureArrayFarenheit,\r\n color: COMMON_CONSTANTS.SUCTION_LINE_TEMPERATURE_COLOR,\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'slt'\r\n },\r\n \r\n {\r\n name: COMMON_CONSTANTS.AMBIENT_LINE_TEMPERATURE,\r\n data: ambientTemperatureFarenheit,\r\n color: COMMON_CONSTANTS.AMBIENT_LINE_TEMPERATURE_COLOR,\r\n selected: true,\r\n visible:true,\r\n checkBoxClassName: 'ambt'\r\n },\r\n // {\r\n // name: COMMON_CONSTANTS.DELTA,\r\n //data: deltaDataArrayFarenheit,\r\n // color: COMMON_CONSTANTS.DELTA_COLOR,\r\n // },\r\n ],\r\n };\r\n\r\n // Water Column\r\n\r\n this.diffStaticPressure.waterColumnData = {\r\n unit: COMMON_CONSTANTS.WATER_COLUMN,\r\n title: response.sensorType,\r\n yAxisTitle: 'Pressure',\r\n chartUnitType: CHART_UNIT_TYPES.PRESSURE,\r\n\r\n data: [\r\n {\r\n name: response.sensorType,\r\n data: filterStaticPressureArrayWaterColumn,\r\n color: COMMON_CONSTANTS.SUPPLY_AND_RETURN_AIR_STATIC_PRESSURE_DIFFERENCE_COLOR,\r\n keys: ['x', 'y', 's', 'r'],\r\n selected: true\r\n },\r\n ],\r\n };\r\n\r\n // if (response && response.sensorType === 'Total Static Pressure') {\r\n // this.diffStaticPressure.waterColumnData['data'].push(\r\n // {\r\n // name: COMMON_CONSTANTS.RETURN_PRESSURE,\r\n // data: returnPressureWC,\r\n // color: '#cecece',\r\n // selected: true\r\n // },\r\n // {\r\n // name: COMMON_CONSTANTS.SUPPLY_PRESSURE,\r\n // data: supplyPressureWC,\r\n // color: '#cecece',\r\n // selected: true\r\n // }\r\n // )\r\n // }\r\n\r\n // Pascal\r\n\r\n this.diffStaticPressure.pascalData = {\r\n unit: COMMON_CONSTANTS.PASCAL,\r\n title: response.sensorType,\r\n yAxisTitle: 'Pressure',\r\n chartUnitType: CHART_UNIT_TYPES.PRESSURE,\r\n\r\n data: [\r\n {\r\n name: response.sensorType,\r\n data: filterStaticPressureArray,\r\n color: COMMON_CONSTANTS.SUPPLY_AND_RETURN_AIR_STATIC_PRESSURE_DIFFERENCE_COLOR,\r\n keys: ['x', 'y', 's', 'r'],\r\n selected: true\r\n },\r\n ],\r\n };\r\n\r\n // if (response && response.sensorType === 'Total Static Pressure') {\r\n // this.diffStaticPressure.pascalData['data'].push(\r\n // {\r\n // name: COMMON_CONSTANTS.RETURN_PRESSURE,\r\n // data: returnPressurePascal,\r\n // color: '#cecece',\r\n // selected: true\r\n // },\r\n // {\r\n // name: COMMON_CONSTANTS.SUPPLY_PRESSURE,\r\n // data: supplyPressurePascal,\r\n // color: '#cecece',\r\n // selected: true\r\n // }\r\n // )\r\n // }\r\n\r\n /*\r\n\r\n this.advanceDiagnosticChartDataFarenheit.airTemperature = {\r\n title: 'Air Temperature',\r\n yAxisTitle: 'Temperature',\r\n\r\n data: [\r\n {\r\n name: COMMON_CONSTANTS.DISCHARGE_AIR_TEMPERATURE,\r\n data: supplyArrayFarenheit,\r\n },\r\n {\r\n name: COMMON_CONSTANTS.RETURN_AIR_TEMPERATURE,\r\n data: returnArrayFarenheit,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataFarenheit.airStaticPressure = {\r\n title: 'Differential Static Pressure',\r\n yAxisTitle: 'Pressure',\r\n\r\n data: [\r\n {\r\n name: 'Differential Static Pressure',\r\n data: filterStaticPressureArray,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataFarenheit.suctionLineTemperature = {\r\n title: 'Suction & Liquid Line Temperature',\r\n yAxisTitle: 'Temperature',\r\n\r\n data: [\r\n {\r\n name: COMMON_CONSTANTS.SUCTION_LINE_TEMPERATURE,\r\n data: coilAirTemperatureArrayFarenheit,\r\n },\r\n {\r\n name: COMMON_CONSTANTS.LIQUID_LINE_TEMPERATURE,\r\n data: liquidLineTemperatureFarenheit,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataFarenheit.thermostatReads.cooling = {\r\n title: 'Cooling',\r\n yAxisTitle: 'Cooling',\r\n\r\n data: [\r\n {\r\n name: 'Cooling',\r\n data: coolingArray,\r\n },\r\n ],\r\n };\r\n\r\n this.advanceDiagnosticChartDataFarenheit.thermostatReads.fanSpeed = {\r\n title: 'Fan/Heat Pump',\r\n yAxisTitle: 'Fan/Heat Pump',\r\n\r\n data: [\r\n {\r\n name: 'Fan',\r\n data: fanSpeedArray,\r\n },\r\n {\r\n name: 'Heat Pump',\r\n data: heatPumpArray,\r\n },\r\n ],\r\n };\r\n\r\n // this.advanceDiagnosticChartDataFarenheit.thermostatReads.heatPump = {\r\n // title: 'Heat Pump',\r\n // yAxisTitle: 'Heat Pump',\r\n\r\n // data: [\r\n // {\r\n // name: 'Heat Pump',\r\n // data: heatPumpArray,\r\n // }\r\n // ]\r\n // };\r\n\r\n this.advanceDiagnosticChartDataFarenheit.thermostatReads.heatingFurnace = {\r\n title: 'Heating Furnace',\r\n yAxisTitle: 'Heating Furnace',\r\n\r\n data: [\r\n {\r\n name: 'Heating Furnace',\r\n data: heatingFurnaceArray,\r\n },\r\n ],\r\n };\r\n\r\n */\r\n\r\n // this.advanceDiagnosticChartDataCelcius = JSON.parse(JSON.stringify(this.advanceDiagnosticChartData));\r\n // this.advanceDiagnosticChartData = JSON.parse(JSON.stringify(this.advanceDiagnosticChartDataFarenheit));\r\n // return this.advanceDiagnosticChartDataFarenheit;\r\n return {\r\n temperature: this.temperature.fahrenheitData,\r\n diffStaticPressure: this.diffStaticPressure.waterColumnData,\r\n thermostatReads: this.thermostatReads,\r\n plotBandsData: [],\r\n \r\n };\r\n }\r\n\r\n // if (flag === 'alert-discovery') {\r\n // this.alertDiscoveryChartDataCelcius.temperature = {\r\n // title: 'Air Temperature',\r\n // yAxisTitle: 'Temperature',\r\n // data: [\r\n // {\r\n // name: 'Supply',\r\n // data: supplyArray,\r\n // },\r\n // ],\r\n // };\r\n\r\n // // this.alertDiscoveryChartDataCelcius.pressure = {\r\n // // title: 'Supply/Return Static Pressure Difference',\r\n // // yAxisTitle: 'Pressure',\r\n\r\n // // data: [\r\n // // {\r\n // // name: 'Supply/Return Static Pressure Difference',\r\n // // data: filterStaticPressureArray,\r\n // // },\r\n // // ],\r\n // // };\r\n\r\n // this.temperature.fahrenheitData = {\r\n // title: 'Air Temperature',\r\n // yAxisTitle: 'Temperature',\r\n\r\n // data: [\r\n // {\r\n // name: 'Supply',\r\n // data: supplyArrayFarenheit,\r\n // },\r\n // ],\r\n // };\r\n\r\n // // this.alertDiscoveryChartDataFahrenheit.pressure = {\r\n // // title: 'Supply/Return Static Pressure Difference',\r\n // // yAxisTitle: 'Pressure',\r\n\r\n // // data: [\r\n // // {\r\n // // name: 'Supply/Return Static Pressure Difference',\r\n // // data: filterStaticPressureArray,\r\n // // },\r\n // // ],\r\n // // };\r\n\r\n // // this.alertDiscoveryChartDataCelcius = JSON.parse(JSON.stringify(this.alertDiscoveryChartData));\r\n // // this.alertDiscoveryChartData = JSON.parse(JSON.stringify(this.alertDiscoveryChartDataFahrenheit));\r\n // return this.alertDiscoveryChartDataFahrenheit;\r\n // }\r\n }\r\n\r\n // return [\r\n // this.advanceDiagnosticChartDataFarenheit,\r\n // this.alertDiscoveryChartDataFahrenheit\r\n // ];\r\n }\r\n\r\n handleHVACCycleData(response: HVACCycleResponseDetails[], unitType: string) {\r\n //debugger\r\n var avgDeltaTFahrenheitValues = [];\r\n var avgDeltaTCelciusValues = [];\r\n var dailyRunTimeFahrenheitValues = [];\r\n var dailyRunTimeCelciusValues = [];\r\n var categoriesValues = [];\r\n var dailyRunCyclesFahrenheitValues = [];\r\n var dailyRunCyclesCelciusValues = [];\r\n var avgCycleRunTimeFahrenheitValues = [];\r\n var avgCycleRunTimeCelciusValues = [];\r\n\r\n response && response.length && response.map((value: HVACCycleResponseDetails, index) => {\r\n // const date = new Date(value.timeStamp);\r\n\r\n let dateInUTC: any = moment(value.timeStamp).toDate();\r\n\r\n // let dateInUTC = Date.UTC(\r\n // new Date(a).getFullYear(),\r\n // new Date(a).getMonth(),\r\n // new Date(a).getDate(),\r\n // // new Date(date).getHours(),\r\n // // new Date(date).getMinutes(),\r\n // // new Date(date).getSeconds()\r\n // );\r\n\r\n // debugger\r\n\r\n dateInUTC = new Date(dateInUTC).setHours(0, 0, 0, 0);\r\n avgDeltaTFahrenheitValues.push([\r\n dateInUTC,\r\n value.avgTempSplitInFahrenheit!=null?parseFloat(value.avgTempSplitInFahrenheit.toFixed(0)):value.avgTempSplitInFahrenheit\r\n ]);\r\n console.log(avgDeltaTFahrenheitValues)\r\n avgDeltaTCelciusValues.push([\r\n dateInUTC,\r\n value.avgTempSplitInCelcius!=null?parseFloat(value.avgTempSplitInCelcius.toFixed(0)):value.avgTempSplitInCelcius\r\n ]);\r\n\r\n dailyRunTimeFahrenheitValues.push({\r\n y: value.totalRunTimeInHrs,\r\n t: value.outsideTempInFahrenheit!=null?value.outsideTempInFahrenheit.toFixed(0) + '°F':value.outsideTempInFahrenheit+'°F'\r\n });\r\n\r\n dailyRunTimeCelciusValues.push({\r\n y: value.totalRunTimeInHrs,\r\n t: value.outsideTempInCelcius!=null?value.outsideTempInCelcius.toFixed(0) + '°C':value.outsideTempInCelcius+'°C'\r\n });\r\n\r\n categoriesValues.push(\r\n dateInUTC\r\n );\r\n\r\n dailyRunCyclesFahrenheitValues.push({\r\n y: value.totalRunCycles,\r\n t: value.outsideTempInFahrenheit!=null?value.outsideTempInFahrenheit.toFixed(0) + '°F':value.outsideTempInFahrenheit + '°F'\r\n });\r\n\r\n dailyRunCyclesCelciusValues.push({\r\n y: value.totalRunCycles,\r\n t: value.outsideTempInCelcius!=null?value.outsideTempInCelcius.toFixed(0) + '°C':value.outsideTempInCelcius+ '°C'\r\n });\r\n\r\n avgCycleRunTimeFahrenheitValues.push({\r\n y: value.avgCycleRunTimeInMin,\r\n t: value.outsideTempInFahrenheit!=null?value.outsideTempInFahrenheit.toFixed(0) + '°F':value.outsideTempInFahrenheit+ '°F'\r\n });\r\n\r\n avgCycleRunTimeCelciusValues.push({\r\n y: value.avgCycleRunTimeInMin,\r\n t: value.outsideTempInCelcius!=null?value.outsideTempInCelcius.toFixed(0) + '°C':value.outsideTempInCelcius + '°C'\r\n });\r\n\r\n });\r\n\r\n this.HVACCycleDetails.fahrenheitData = {\r\n avgDeltaT: {\r\n unit: COMMON_CONSTANTS.FAHRENHEIT,\r\n title: 'Temperature',\r\n yAxisTitle: 'Max ∆T',\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n\r\n data: [\r\n {\r\n name: 'Max ∆T',\r\n data: avgDeltaTFahrenheitValues,\r\n color: COMMON_CONSTANTS.AVG_DELTA_T,\r\n marker: {\r\n fillColor: '#FFFFFF'\r\n },\r\n }\r\n ],\r\n },\r\n\r\n dailyRunTime: {\r\n unit: COMMON_CONSTANTS.FAHRENHEIT,\r\n title: 'Daily Runtime',\r\n yAxisTitle: 'Hours',\r\n categoriesData: categoriesValues,\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n data: [\r\n {\r\n name: 'Hour(s)',\r\n data: dailyRunTimeFahrenheitValues,\r\n color:'#00B7A5'\r\n },\r\n {\r\n name: 'Avg Ambient Temp',\r\n color: '#FFC06A',\r\n }\r\n ],\r\n },\r\n\r\n dailyRunCycles: {\r\n unit: COMMON_CONSTANTS.FAHRENHEIT,\r\n title: 'Run Cycles',\r\n yAxisTitle: 'Run Cycles',\r\n categoriesData: categoriesValues,\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n data: [\r\n {\r\n name: 'Daily Run Cycles',\r\n data: dailyRunCyclesFahrenheitValues,\r\n color:'#00B7A5'\r\n },\r\n {\r\n name: 'Avg Ambient Temp',\r\n color: '#FFC06A',\r\n }\r\n ],\r\n },\r\n\r\n avgCycleRunTime: {\r\n unit: COMMON_CONSTANTS.FAHRENHEIT,\r\n title: 'Cycle Runtime',\r\n yAxisTitle: 'Minutes',\r\n categoriesData: categoriesValues,\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n data: [\r\n {\r\n name: 'Avg Cycle Runtime',\r\n data: avgCycleRunTimeFahrenheitValues,\r\n color:'#00B7A5'\r\n },\r\n {\r\n name: 'Avg Ambient Temp',\r\n color: '#FFC06A',\r\n }\r\n ],\r\n }\r\n\r\n\r\n // series: [{\r\n // data: [\r\n // { y: 29.9, t: \"12:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" },\r\n // { y: 71.5, t: \"14:45\" }\r\n // ]\r\n // },\r\n // {\r\n // name: `Avg \r\n // `,\r\n // color: '#71CECA',\r\n // /* visible: false,*/\r\n // /* data: [\r\n // {y:29.9,t:\"12:45\"}, \r\n // {y:71.5,t:\"14:45\"}\r\n // ] */\r\n // }\r\n // ]\r\n }\r\n\r\n this.HVACCycleDetails.celciusData = {\r\n\r\n avgDeltaT: {\r\n unit: COMMON_CONSTANTS.CELCIUS,\r\n title: 'Temperature',\r\n yAxisTitle: 'Max ∆T',\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n\r\n data: [\r\n {\r\n name: 'Max ∆T',\r\n data: avgDeltaTCelciusValues,\r\n color: COMMON_CONSTANTS.AVG_DELTA_T,\r\n marker: {\r\n fillColor: '#FFFFFF'\r\n },\r\n }\r\n ],\r\n },\r\n\r\n dailyRunTime: {\r\n unit: COMMON_CONSTANTS.CELCIUS,\r\n title: 'Daily Runtime',\r\n yAxisTitle: 'Hours',\r\n categoriesData: categoriesValues,\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n data: [\r\n {\r\n name: 'Hours',\r\n data: dailyRunTimeCelciusValues,\r\n color:'#00B7A5'\r\n },\r\n {\r\n name: 'Avg Ambient Temp',\r\n color: '#FFC06A',\r\n }\r\n ],\r\n },\r\n\r\n dailyRunCycles: {\r\n unit: COMMON_CONSTANTS.CELCIUS,\r\n title: 'Run Cycles',\r\n yAxisTitle: 'Run Cycles',\r\n categoriesData: categoriesValues,\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n data: [\r\n {\r\n name: 'Daily Run Cycles',\r\n data: dailyRunCyclesCelciusValues,\r\n color:'#00B7A5'\r\n },\r\n {\r\n name: 'Avg Ambient Temp',\r\n color: '#FFC06A',\r\n }\r\n ],\r\n },\r\n\r\n avgCycleRunTime: {\r\n unit: COMMON_CONSTANTS.CELCIUS,\r\n title: 'Cycle Runtime',\r\n yAxisTitle: 'Minutes',\r\n categoriesData: categoriesValues,\r\n chartUnitType: CHART_UNIT_TYPES.TEMPERATURE,\r\n data: [\r\n {\r\n name: 'Avg Cycle Runtime',\r\n data: avgCycleRunTimeCelciusValues,\r\n color:'#00B7A5'\r\n },\r\n {\r\n name: 'Avg Ambient Temp',\r\n color: '#FFC06A',\r\n }\r\n ],\r\n }\r\n\r\n }\r\n\r\n // return this.HVACCycleDetails;\r\n return this.handleReturnHVACCycleData(unitType);\r\n }\r\n\r\n handleReturnHVACCycleData(unitType: string) {\r\n // debugger\r\n if (unitType === COMMON_CONSTANTS.FAHRENHEIT) {\r\n return this.HVACCycleDetails.fahrenheitData;\r\n } else {\r\n return this.HVACCycleDetails.celciusData;\r\n }\r\n }\r\n\r\n getThresholdData(value, name,type) {\r\n let obj = {\r\n value: value,\r\n color: '#808080',\r\n width: 2,\r\n zIndex: 4,\r\n dashStyle: 'ShortDash',\r\n label: {\r\n text: value + type+' ' + name,\r\n style: {\r\n color: 'rgba(255,255,255,0.85)',\r\n fontFamily: 'SourceSansPro-Regular',\r\n fontSize: '1.2rem',\r\n }\r\n },\r\n }\r\n return obj;\r\n }\r\n handleAlertDiscoveryChartData(responsedata, flag) {\r\n console.log(responsedata);\r\n const response = responsedata.alertDetails;\r\n const invalidresponse = responsedata.inActiveValues;\r\n if (\r\n response.alerts &&\r\n response.alerts.length\r\n ) {\r\n const DataArray = [];\r\n let DataObject = {};\r\n //const DataArrayFarenheit = [];\r\n //const DataArrayPascal = [];\r\n\r\n const ThresholdArray = [];\r\n const ThresholdArrayFarenheit = [];\r\n const ThresholdArrayPascal = [];\r\n\r\n const bondsArray = [];\r\n const DataTimeArray = [];\r\n // check alert code type\r\n // const codetype = response.alertCode;\r\n const alertcodetype = response.convertParam;\r\n\r\n // console.log(alertcodetype);\r\n response.alerts.map((value, indedx) => {\r\n const date = new Date(value.timestamp);\r\n const dateInUTC = Date.UTC(\r\n new Date(date).getFullYear(),\r\n new Date(date).getMonth(),\r\n new Date(date).getDate(),\r\n new Date(date).getHours(),\r\n new Date(date).getMinutes(),\r\n new Date(date).getSeconds()\r\n );\r\n DataTimeArray.push(dateInUTC);\r\n let obj = {};\r\n obj['x'] = dateInUTC;\r\n obj['y'] = value.delta;\r\n obj['z'] = value.outsideTemperature;\r\n if (alertcodetype == 'PRESSURE') {\r\n obj['supply'] = value.supplyPressure;\r\n obj['return'] = value.returnPressure;\r\n }\r\n obj['color']=value.delta==0.3?response.shortCycleOffColor:''\r\n DataArray.push(obj);\r\n // DataObject = {\r\n // data: DataArray,\r\n // keys: ['x', 'y', 'z']\r\n // }\r\n // DataArrayFarenheit.push([dateInUTC, value.delta != null ? (this.farenheitConvertion(value.delta)) : value.delta]);\r\n //DataArrayPascal.push([dateInUTC, value.delta != null ? value.delta * 249 : value.delta]);\r\n\r\n });\r\n\r\n // invalid data format\r\n invalidresponse.map((value) => {\r\n const fromtime = this.timeConversion(value.startTime);\r\n const totime = this.timeConversion(value.endTime);\r\n bondsArray.push({\r\n color: value.color,\r\n from: fromtime,\r\n to: totime,\r\n\r\n // zIndex: 5,\r\n });\r\n });\r\n\r\n /*for threshold value */\r\n if (response.threshold) {\r\n if (response.convertParam == 'TEMPERATURE' && (responsedata.deltaUnit == \"null\" || responsedata.deltaUnit == 'fahrenheit')) {\r\n response.threshold.fahrenheit && response.threshold.fahrenheit.map((value, index) => {\r\n let fahrenheitThreshold = this.getThresholdData(value.value, value.name, ' °F')\r\n ThresholdArray.push(fahrenheitThreshold);\r\n });\r\n }\r\n else {\r\n response.threshold.celsius && response.threshold.celsius.map((value, index) => {\r\n // for wc and celsius type\r\n let celsiusThreshold = this.getThresholdData(value.value, value.name,' °C')\r\n ThresholdArray.push(celsiusThreshold);\r\n });\r\n\r\n }\r\n if (response.convertParam == 'PRESSURE' && (responsedata.deltaUnit == \"null\" || responsedata.deltaUnit == 'wc')) {\r\n response.threshold.wc && response.threshold.wc.map((value, index) => {\r\n // for wc and celsius type\r\n let wcThreshold = this.getThresholdData(value.value, value.name,' \"WC')\r\n ThresholdArray.push(wcThreshold);\r\n });\r\n }\r\n else {\r\n response.threshold.pascal && response.threshold.pascal.map((value, index) => {\r\n let pascalThreshold = this.getThresholdData(value.value, value.name,' Pa')\r\n ThresholdArray.push(pascalThreshold);\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n\r\n }\r\n\r\n this.alertDiscoveryChartData.chartcommondata = {\r\n title: response.title,\r\n yAxisTitle: response.isDelta ? deltaSVG.DELTA + ' ' + response.yAxis : response.yAxis,\r\n xAxisTitle: response.xAxis,\r\n xdata: DataTimeArray,\r\n color: response.color,\r\n charttype: response.graphType,\r\n fromtime: response.alerts[0].timestamp,\r\n totime:\r\n response.alerts[\r\n response.alerts.length - 1\r\n ].timestamp,\r\n serialno: response.pb,\r\n emptydata: '',\r\n convertparam: response.convertParam,\r\n alertCode:response.alertCode\r\n\r\n };\r\n\r\n // alert occured time convertion\r\n const alertoccuredtime = this.timeConversion(response.notch.x);\r\n const alertoccuredvalue = response.notch.y;\r\n\r\n this.alertDiscoveryChartData.chartdata = {\r\n threshold: ThresholdArray,\r\n data: DataArray,\r\n alerttime: alertoccuredtime,\r\n alertvalue: alertoccuredvalue ? alertoccuredvalue : 0,\r\n bonds: bondsArray,\r\n\r\n };\r\n\r\n if (response.convertParam == 'TEMPERATURE') {\r\n\r\n (responsedata.deltaUnit == \"null\" || responsedata.deltaUnit == 'fahrenheit') ?\r\n this.alertDiscoveryChartData.unit = '°F' : this.alertDiscoveryChartData.unit = '°C';\r\n }\r\n else if (response.convertParam == 'PRESSURE') {\r\n (responsedata.deltaUnit == \"null\" || responsedata.deltaUnit == 'wc') ?\r\n this.alertDiscoveryChartData.unit = '\"WC' : this.alertDiscoveryChartData.unit = 'Pa'\r\n\r\n } else if (response.convertParam == '' || response.convertParam == null) {\r\n this.alertDiscoveryChartData.unit = ''\r\n }\r\n\r\n\r\n\r\n\r\n\r\n // this.alertDiscoveryChartData.chartcommondata = this.alertDiscoveryChartDataCelcius.chartcommondata =\r\n // this.alertDiscoveryChartDataFahrenheit.chartcommondata =\r\n // this.alertDiscoveryChartDataPascal.chartcommondata =\r\n // this.alertDiscoveryChartDataWc.chartcommondata =\r\n // this.alertDiscoveryChartDataFan.chartcommondata = {\r\n // title: response.title,\r\n // yAxisTitle: response.isDelta ? deltaSVG.DELTA + ' ' + response.yAxis : response.yAxis,\r\n // xAxisTitle: response.xAxis,\r\n // xdata: DataTimeArray,\r\n // color: response.color,\r\n // charttype: response.graphType,\r\n // fromtime: response.alerts[0].timestamp,\r\n // totime:\r\n // response.alerts[\r\n // response.alerts.length - 1\r\n // ].timestamp,\r\n // serialno: response.pb,\r\n // emptydata: '',\r\n // convertparam: response.convertParam\r\n\r\n // };\r\n\r\n // this.alertDiscoveryChartDataCelcius.chartdata = this.alertDiscoveryChartDataWc.chartdata =\r\n // this.alertDiscoveryChartDataFan.chartdata = {\r\n // threshold: ThresholdArray,\r\n // data: DataArray,\r\n // alerttime: alertoccuredtime,\r\n // alertvalue: alertoccuredvalue ? alertoccuredvalue : 0,\r\n // bonds: bondsArray,\r\n // };\r\n\r\n // this.alertDiscoveryChartDataFahrenheit.chartdata = {\r\n // threshold: ThresholdArrayFarenheit,\r\n // data: DataArrayFarenheit,\r\n // alerttime: alertoccuredtime,\r\n // alertvalue: alertoccuredvalue ? (this.farenheitConvertion(alertoccuredvalue)) : 0,\r\n // bonds: bondsArray,\r\n // };\r\n // this.alertDiscoveryChartDataPascal.chartdata = {\r\n // threshold: ThresholdArrayPascal,\r\n // data: DataArrayPascal,\r\n // alerttime: alertoccuredtime,\r\n // alertvalue: alertoccuredvalue ? (alertoccuredvalue * 249) : 0,\r\n // bonds: bondsArray,\r\n // };\r\n // if (alertcodetype === 'p' || alertcodetype === 'P') {\r\n // return this.alertDiscoveryChartDataWc;\r\n // }\r\n // else\r\n // if (response.convertParam === 'TEMPERATURE') {\r\n // return this.alertDiscoveryChartDataCelcius;\r\n // } else if (response.convertParam === 'PRESSURE') {\r\n // return this.alertDiscoveryChartDataWc;\r\n // } else {\r\n // return this.alertDiscoveryChartDataFan;\r\n // }\r\n return this.alertDiscoveryChartData;\r\n\r\n }\r\n }\r\n\r\n // timeconvertion\r\n timeConversion(timevalue) {\r\n const time = new Date(timevalue);\r\n const timeUTC = Date.UTC(\r\n new Date(time).getFullYear(),\r\n new Date(time).getMonth(),\r\n new Date(time).getDate(),\r\n new Date(time).getHours(),\r\n new Date(time).getMinutes(),\r\n new Date(time).getSeconds()\r\n );\r\n return timeUTC;\r\n }\r\n handleReturnChartData(flag: string) {\r\n const temperature = this.temperature;\r\n const thermostatReads = this.thermostatReads;\r\n const diffStaticPressure = this.diffStaticPressure;\r\n const plotBandsData = [];\r\n return {\r\n temperature,\r\n thermostatReads,\r\n diffStaticPressure,\r\n plotBandsData,\r\n };\r\n }\r\n\r\n handleReturnAlertDiscoverChartData(flag: string, type: string) {\r\n console.log(flag, type);\r\n if (flag === COMMON_CONSTANTS.FAHRENHEIT && type === 'temperature') {\r\n return this.alertDiscoveryChartDataFahrenheit;\r\n } else if (flag === COMMON_CONSTANTS.CELCIUS && type === 'temperature') {\r\n return this.alertDiscoveryChartDataCelcius;\r\n } else if (flag === COMMON_CONSTANTS.WATER_COLUMN && type === 'pressure') {\r\n return this.alertDiscoveryChartDataWc;\r\n } else if (flag === COMMON_CONSTANTS.PASCAL && type === 'pressure') {\r\n return this.alertDiscoveryChartDataPascal;\r\n }\r\n\r\n }\r\n\r\n\r\n //setalertnotifcation\r\n setListnerForAlertNotification() {\r\n return this.listenerForAlertChange.asObservable();\r\n }\r\n\r\n setAlertNotification(data) {\r\n\r\n this.listenerForAlertChange.next(data);\r\n\r\n }\r\n\r\n\r\n setUnassignBoard(value: string) {\r\n this.listenerForUnassignBoard.next(value); //it is publishing this value to all the subscribers that have already subscribed to this message\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from 'projects/contractor/src/environments/environment';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n// Services\r\nimport { HelperService } from './helper.service';\r\nimport { ApiService } from './api.service';\r\n\r\n// Constants\r\nimport { API_CONSTANTS } from 'src/app/shared/constants/api.constant';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\n\r\n// Models\r\nimport { AlertsResponse } from 'src/app/shared/models/alerts.model';\r\nimport {\r\n Sensor,\r\n AlertDiscoverySensor, HVACCycleResponse\r\n} from 'src/app/shared/models/graph.model';\r\nimport {\r\n ContractorDetails,\r\n ContractorDetailsResponse,\r\n CreateContractorResponse,\r\n} from 'src/app/shared/models/contractor.modal';\r\nimport { FirmwareResponse, MeliAssetInfoResponse, SensorCurrentStatusResponse, UpdateMeliStatusResponse } from 'src/app/shared/models/meli.model';\r\nimport { SearchResponse } from 'src/app/shared/models/search.model';\r\nimport { CustomerListResponse, AssetDetail, AssetDetailResponse, SubscriptionPlanListResponse, CellularPlanListResponse, BillingListResponse, CurrentCellularStatusResponse, HVACInformationResponse } from 'src/app/shared/models/customer.model';\r\nimport { ConsumerResponse, Customer, InstallationReportResponse, InventoryResponse, meliBoardResponse } from 'src/app/shared/models/inventory.model';\r\nimport { SystemResponse, GFResponse, ACResponse, HPResponse, ComfortBridgeResponse } from 'src/app/shared/models/dataac.model';\r\n\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { PreSeasonListResponse, PreSeasonResponse, emailResponse } from '../models/preseason.model';\r\nimport { env } from 'process';\r\nimport { CommonSuccessResponse, CommonSuccessResponseList, IsEmailAlreadyExistsResponse } from '../models/common.model';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { ControlListResponse } from '../models/control.model';\r\nimport { CHANNEL_API_CONSTANTS } from 'projects/channel/src/app/shared-channel/constants/api.constants';\r\nimport { successResponse } from 'src/app/shared/models/billingaccount.model';\r\nimport { UploadProperyListResponse } from '../models/properties.model';\r\nimport { TechnicianBulkUploadResponse, TechnicianInfo, TechnicianJobHistoryResponse } from 'src/app/shared/models/technician.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SharedService {\r\n // private BASE_URL = environment.baseUrl;\r\n // private PHONE_CODES_REST_API_BASE_URL = environment.phoneCodesRestAPIBaseUrl;\r\n // private AUTH_BASE_URL = environment.loginBaseUrl;\r\n private BASE_URL;\r\n private PHONE_CODES_REST_API_BASE_URL = environment.phoneCodesRestAPIBaseUrl;\r\n private AUTH_BASE_URL;\r\n contractorInfo: ContractorDetails;\r\n mduInfo: Customer;\r\n phoneCodesList: any;\r\n private PASSWORD_BASE_URL = environment.loginBaseUrl;\r\n private RELAY_BASE_URL;\r\n private LAMBDA_BASE_URL;\r\n private PRE_SEASON_BASE_URL;\r\n private COMFORTBRIDGE_BASE_URL;\r\n private PRESEASON_URL;\r\n private UPDATE_RELAY_BASE_URL;\r\n contractorDetailsSubject: Subject = new Subject();\r\n mduDetailsSubject: Subject = new Subject();\r\n lastLoginDetailsSubject: Subject = new Subject();\r\n constructor(\r\n private helperService: HelperService,\r\n private apiService: ApiService,\r\n private httpClient: HttpClient\r\n ) {\r\n this.BASE_URL = this.helperService.handleBaseUrl(\r\n BASE_URL_TYPES.COMMON_BASE\r\n );\r\n this.AUTH_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.LOGIN);\r\n this.LAMBDA_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.LAMBDA);\r\n this.PRE_SEASON_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.PRE_SEASON_TEST);\r\n this.RELAY_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.UPDATE_RELAY);\r\n this.COMFORTBRIDGE_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.COMFORTBRIDGE);\r\n this.PRESEASON_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.PRE_SEASON_TEST);\r\n this.UPDATE_RELAY_BASE_URL = this.helperService.handleBaseUrl(BASE_URL_TYPES.UPDATE_RELAY);\r\n }\r\n\r\n getAlertsList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.ALERTS_LIST;\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => new AlertsResponse(response)));\r\n }\r\n getUserExistStatus(): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.USER_EXIST;\r\n return this.apiService\r\n .get(url)\r\n .pipe(map(response => response));\r\n }\r\n getAlertsListMDU(queryParams): Observable {\r\n const url = this.BASE_URL + '/mdu/alerts';\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => new AlertsResponse(response)));\r\n }\r\n getConsumerData(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.CUSTOMER_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new CustomerListResponse(response)));\r\n\r\n }\r\n getFirmware(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.FIRMWARE_VERSION;\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => new FirmwareResponse(response)));\r\n }\r\n // // setAlertsList(data) {\r\n // // this.alertsList = data;\r\n // // }\r\n\r\n // // getAlertsListLocal() {\r\n // // return this.alertsList;\r\n // // }\r\n\r\n getSensorCurrentRead(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.SENSOR_CURRENT_READ;\r\n return this.apiService\r\n .get(url, queryParams,false,false)\r\n .pipe(map((response) => new Sensor(response)));\r\n }\r\n\r\n getSensorRead(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.SENSOR_READ;\r\n return this.apiService\r\n .get(url, queryParams,false,false)\r\n .pipe(map((response) => new Sensor(response)));\r\n }\r\n getComfortBridgeStatus(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_COMFORTBRIDGE_STATUS;\r\n return this.apiService.get(url, queryParams).pipe(map(response => (response)));\r\n }\r\n getHVACCycleData(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_HVAC_CYCLE_DATA;\r\n return this.apiService.get(url, queryParams).pipe(map((response) => new HVACCycleResponse(response)));\r\n }\r\n\r\n getAlertDiscoverySensorRead(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.ALERT_DISCOVERY_READ;\r\n return this.apiService\r\n .get(url, queryParams, false,false)\r\n .pipe(map((response) => new AlertDiscoverySensor(response)));\r\n }\r\n\r\n setContractorInformation() {\r\n this.contractorInfo = null;\r\n this.mduInfo = null;\r\n }\r\n\r\n getMduInformation(callback) {\r\n if (this.mduInfo) {\r\n callback(this.mduInfo, false);\r\n return;\r\n }\r\n\r\n this.getMduInformationAPI().subscribe(\r\n (response) => {\r\n this.mduInfo = response.responseData;\r\n this.mduDetailsSubject.next(response.responseData);\r\n callback(response.responseData, false);\r\n },\r\n (error) => {\r\n callback(null, true);\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n getMduInformationAPI(): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_MDU_INFORMATION;\r\n return this.apiService.get(url).pipe(map((response) => new ConsumerResponse(response)));\r\n }\r\n\r\n setListenerForMduDetails() {\r\n return this.mduDetailsSubject.asObservable();\r\n }\r\n\r\n getContractorInformation(callback) {\r\n if (this.contractorInfo) {\r\n callback(this.contractorInfo, false);\r\n return;\r\n }\r\n\r\n this.getContractorInformationAPI().subscribe(\r\n (response: ContractorDetailsResponse) => {\r\n this.contractorInfo = response.responseData;\r\n this.contractorDetailsSubject.next(response.responseData);\r\n callback(response.responseData, false);\r\n },\r\n (error) => {\r\n callback(null, true);\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n getContractorInformationAPI(\r\n queryParams?: any\r\n ): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_CONTRACTOR_INFORMATION;\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => new ContractorDetailsResponse(response)));\r\n }\r\n\r\n setListenerForContractorDetails() {\r\n return this.contractorDetailsSubject.asObservable();\r\n }\r\n\r\n getMeliAssetInfo(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_MELI_ASSET_INFO;\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => new MeliAssetInfoResponse(response)));\r\n }\r\n\r\n // getPhoneCodesList(callback) {\r\n // if (this.phoneCodesList) {\r\n // return callback(this.phoneCodesList, false);\r\n // } else {\r\n // this.getPhoneCodesListAPI().subscribe(\r\n // (response) => {\r\n // this.phoneCodesList = response;\r\n // callback(response, false);\r\n // }, (error) => {\r\n // callback(null, true);\r\n // const message = `Error in getting phone codes`;\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n // }\r\n // }\r\n\r\n // getPhoneCodesListAPI() {\r\n // const url = this.PHONE_CODES_REST_API_BASE_URL;\r\n // return this.apiService.get(url, {}, false, false).pipe(map(response => response));\r\n // }\r\n\r\n // // getInstallationReport(queryParams) {\r\n // // const url = this.BASE_URL + API_CONSTANTS.INSTALLATION_REPORT;\r\n // // return this.apiService.get(url, queryParams).pipe(map(response => new InstallationReportResponse(response)));\r\n // // }\r\n\r\n handleLogout(queryParams) {\r\n const url = this.AUTH_BASE_URL + API_CONSTANTS.LOGOUT;\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => response));\r\n }\r\n\r\n getSearchList(queryParams, urlEndPoint): Observable {\r\n const url = this.BASE_URL + urlEndPoint;\r\n return this.apiService\r\n .get(url, queryParams)\r\n .pipe(map((response) => new SearchResponse(response)));\r\n }\r\n\r\n getCustomerList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.CUSTOMER_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new CustomerListResponse(response)));\r\n }\r\n\r\n passwordReset(queryParams) {\r\n const url = this.AUTH_BASE_URL + API_CONSTANTS.CHANGE_PASSWORD;\r\n return this.apiService.post(url, queryParams);\r\n\r\n }\r\n\r\n getHvacList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.HVAC_ASSET_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new AssetDetailResponse(response)));\r\n }\r\n\r\n getInventoryList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_INVENTORY_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new InventoryResponse(response)));\r\n }\r\n\r\n getBoardInformation(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_BOARDDATA_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new meliBoardResponse(response)));\r\n }\r\n\r\n updateMeliStatus(payload): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATE_MELI_STATUS;\r\n return this.apiService.post(url, payload).pipe(map(response => new UpdateMeliStatusResponse(response)));\r\n }\r\n updateInstallationReport(payload): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATE_INSTALL_REPORT;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n\r\n getLastLoggedInTime(payload): Observable {\r\n const url = this.LAMBDA_BASE_URL + API_CONSTANTS.GET_LAST_LOGGED_IN;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n\r\n setLastLoginDetailsSubject(value) {\r\n this.lastLoginDetailsSubject.next(value);\r\n }\r\n\r\n setListenerForLastLoginSubject() {\r\n return this.lastLoginDetailsSubject.asObservable();\r\n }\r\n\r\n getSiteTourData(payload): Observable {\r\n const url = this.LAMBDA_BASE_URL + API_CONSTANTS.GET_SITE_TOUR_DATA;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n SiteTourComplete(payload): Observable {\r\n const url = this.LAMBDA_BASE_URL + API_CONSTANTS.COMPLETE_SITE_TOUR;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n\r\n getPreSeasonList(queryParams): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.PRESEASON_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new PreSeasonListResponse(response)));\r\n\r\n }\r\n getPreSeasonReport(queryParams): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.PRESEASON_REPORT;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new PreSeasonResponse(response)));\r\n }\r\n sendAttachmentMail(queryParams): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.SEND_PRESEASON_REPORT_MAIL;\r\n return this.apiService.post(url, queryParams).pipe(map(response => new emailResponse(response)));\r\n }\r\n getComfortbridgeData(id) {\r\n const url = this.RELAY_BASE_URL + API_CONSTANTS.COMFORTT_BRIDGE_INFO + '/' + id;\r\n return this.apiService.get(url).pipe(map(response => (response)));\r\n }\r\n\r\n getSystemSetting(id): Observable {\r\n const url = this.RELAY_BASE_URL + API_CONSTANTS.SYSTEM_INFO + '/' + id;\r\n return this.apiService.get(url).pipe(map(response => new SystemResponse(response)));\r\n }\r\n\r\n getFuranceInfo(id): Observable {\r\n const url = this.RELAY_BASE_URL + API_CONSTANTS.GAS_FURANCE_INFO + '/' + id;\r\n return this.apiService.get(url).pipe(map(response => new GFResponse(response)));\r\n }\r\n getAcInfo(id): Observable {\r\n const url = this.RELAY_BASE_URL + API_CONSTANTS.AC_INFO + '/' + id;\r\n return this.apiService.get(url).pipe(map(response => new ACResponse(response)));\r\n }\r\n getHpInfo(id): Observable {\r\n const url = this.RELAY_BASE_URL + API_CONSTANTS.HEAT_PUMP_INFO + '/' + id;\r\n return this.apiService.get(url).pipe(map(response => new HPResponse(response)));\r\n }\r\n mapList(payload) {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_PROPERTIES_MAP_LIST;\r\n return this.apiService.get(url, payload).pipe(map(response => (response)));\r\n }\r\n\r\n checkIsEmailAlreadyExists(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.CHECK_EMAIL;\r\n return this.apiService.get(url, queryParams, false, false).pipe(map(response => new IsEmailAlreadyExistsResponse(response)));\r\n }\r\n\r\n createContractor(payload, isFromChannel): Observable {\r\n const endPoint = isFromChannel ? CHANNEL_API_CONSTANTS.ADD_DEALER : API_CONSTANTS.CREATE_CONTRACTOR;\r\n const hasHeader = isFromChannel ? true : false;\r\n const url = this.BASE_URL + endPoint;\r\n return this.apiService.post(url, payload, {}, false, hasHeader).pipe(map(response => new CreateContractorResponse(response)));\r\n }\r\n\r\n deleteLogo(payload){\r\nconst url = this.BASE_URL + API_CONSTANTS.DELETE_LOGO;\r\n return this.apiService.delete(url,payload).pipe(map(response => response));\r\n }\r\n editHvac(payload, queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.EDIT_ASSET_UNIT;\r\n return this.apiService.post(url, payload, queryParams).pipe(map(response => response));\r\n }\r\n\r\n downloadTemplate(queryParams) {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n });\r\n const url = this.BASE_URL + API_CONSTANTS.DOWNLOAD_TEMPLATE;\r\n return this.httpClient.get(url, { params: queryParams, headers: headers, responseType: 'blob' }).pipe(map(response => response));\r\n }\r\n\r\n getLocation(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_ASSET_UNITLOCATION;\r\n return this.apiService.get(url, queryParams).pipe(map(response => (response)));\r\n }\r\n\r\n getControlList(queryParams, isContractorPortal?): Observable {\r\n let url;\r\n if (isContractorPortal) {\r\n url = this.BASE_URL + API_CONSTANTS.GET_CONTRACTOR_CONTROL_LIST;\r\n } else {\r\n url = this.BASE_URL + API_CONSTANTS.GET_CONTROL_LIST;\r\n }\r\n return this.apiService.get(url, queryParams).pipe(map(response => new ControlListResponse(response)));\r\n }\r\n\r\n downloadPreseasonReports(payload) {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n const url = this.PRESEASON_URL + API_CONSTANTS.DOWNLOAD_BULK_PRESEASON_REPORTS;\r\n //return this.apiService.post(url, payload,{}).pipe(map(response => (response)));\r\n return this.httpClient.post(url, payload, { headers: headers, responseType: 'blob' }).pipe(map(response => (response)));\r\n }\r\n\r\n\r\n downloadInstallationReports(payload) {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n const url = this.BASE_URL + API_CONSTANTS.DOWNLOAD_BULK_INSTALLATION_REPORT;\r\n return this.httpClient.post(url, payload, { headers: headers, responseType: 'blob' }).pipe(map(response => (response)));\r\n }\r\n\r\n cancelPreseasonTest(payload) {\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.CANCEL_PRE_SEASON_TEST;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n getInstallationReport(payload):Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_INSTALLATION_REPORT;\r\n return this.apiService.get(url, payload).pipe(map(response => new InstallationReportResponse(response)));\r\n }\r\n\r\n assignTechnician(payload): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.ASSIGN_TECHNICIAN;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n getCustomerKey() {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_CUSTOMER_SECRETKEY;\r\n return this.apiService.get(url).pipe(map(response => response));\r\n }\r\n getSubscriptionPlanList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.SUBSCRIPTION_PLAN;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new SubscriptionPlanListResponse(response)));\r\n }\r\n\r\n updateSubscriptionPlan(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATE_SUBSCRIPTION_PLAN;\r\n return this.apiService.get(url, queryParams).pipe(map(response => (response)));\r\n }\r\n\r\n // getCellularPlanList(queryParams): Observable {\r\n // const url = this.BASE_URL + API_CONSTANTS.GET_CELLULAR_PLAN_LIST;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => new CellularPlanListResponse(response)));\r\n // }\r\n\r\n getCurrentCellularStatus(boardSerialNumber): Observable {\r\n const url = this.RELAY_BASE_URL + API_CONSTANTS.GET_CELLULAR_CURRENT_STATUS + `/${boardSerialNumber}`;\r\n return this.apiService.get(url).pipe(map(response => new CurrentCellularStatusResponse(response)));\r\n }\r\n\r\n updateCellularPlan(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATE_CELLULAR_PLAN;\r\n return this.apiService.get(url, queryParams).pipe(map(response => (response)));\r\n }\r\n sendCreditCardToken(payload): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.SEND_CARD_TOKEN;\r\n return this.apiService.post(url, payload).pipe(map(response => new successResponse(response)));\r\n }\r\n sendAchToken(payload) {\r\n const url = this.BASE_URL + API_CONSTANTS.SEND_ACH_TOKEN;\r\n return this.apiService.get(url, payload).pipe(map(response => response));\r\n }\r\n getBillingDetails() {\r\n const url = this.BASE_URL + API_CONSTANTS.IS_CARD_AVAILABLE;\r\n return this.apiService.get(url).pipe(map(response => response));\r\n }\r\n updateCreditCard(payload) {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATE_CREDIT_CARD;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n updateAch(payload) {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATE_ACH;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n getBillingList(): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_BILLING_LIST;\r\n return this.apiService.get(url).pipe(map(response => new BillingListResponse(response)));\r\n }\r\n\r\n deleteBillingInfo(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.DELETE_BILLING_INFO;\r\n return this.apiService.delete(url, queryParams).pipe(map(response => response));\r\n }\r\n makeDefaultPayment(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.MAKE_DEFAULT_PAYMENT_METHOD;\r\n return this.apiService.get(url, queryParams).pipe(map(response => response));\r\n }\r\n verifyAch(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.VERIFY_ACH;\r\n return this.apiService.get(url, queryParams).pipe(map(response => response));\r\n }\r\n\r\n transferAccount(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.TRANSFER_ACCOUNT;\r\n return this.apiService.post(url, null, queryParams).pipe(map(response => new IsEmailAlreadyExistsResponse(response)));\r\n }\r\n\r\n deleteAccount(): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.DELETE_ACCOUNT;\r\n return this.apiService.delete(url).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n downloadErrorTemplateFile(queryParams) {\r\n // const headers = new HttpHeaders({\r\n // 'Content-Type': 'application/json'\r\n // });\r\n const url = this.BASE_URL + API_CONSTANTS.GET_UPLOAD_ERROR_FILE;\r\n return this.httpClient.get(url, { params: queryParams, responseType: 'blob' }).pipe(map(response => response));\r\n }\r\n\r\n downloadPreseasonReport(queryParams) {\r\n const headers = new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n const url = this.PRESEASON_URL + API_CONSTANTS.DOWNLOAD_PRESEASON_REPORT;\r\n //return this.apiService.post(url, payload,{}).pipe(map(response => (response)));\r\n return this.httpClient.get(url, { params: queryParams, headers: headers, responseType: 'blob' }).pipe(map(response => (response)));\r\n }\r\n\r\n uploadCompanyLogo(payload, queryParams, hasHeader = true) {\r\n const url = this.BASE_URL + CHANNEL_API_CONSTANTS.CONTRACTOR_LOGO;\r\n return this.apiService.post(url, payload, queryParams, false, hasHeader).pipe(map(response => response));\r\n }\r\n\r\n uploadExcelList(payload,filedata) {\r\n const url = this.BASE_URL + API_CONSTANTS.UPLOAD_CUSTOMER_LIST;\r\n return this.apiService.post(url,filedata, payload).pipe(map(response => new UploadProperyListResponse(response)));\r\n }\r\n\r\n uploadExcelListStatus(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_UPLOAD_STATUS;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new UploadProperyListResponse(response)));\r\n }\r\n\r\n uploadExcelListStatusReset(queryParams) {\r\n const url = this.BASE_URL + API_CONSTANTS.UPLOAD_STATUS_RESET;\r\n return this.apiService.put(url, \"\",queryParams).pipe(map(response => new UploadProperyListResponse(response)));\r\n }\r\n\r\n getHVACInformationList(): Observable {\r\n const url = this.UPDATE_RELAY_BASE_URL + API_CONSTANTS.GET_HVAC_INFORMATION;\r\n return this.apiService.get(url).pipe(map(response => new HVACInformationResponse(response)));\r\n }\r\n\r\n unsubscribeEmail(payload): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.UNSUBSCRIBE;\r\n return this.apiService.put(url,payload,{}, false, false).pipe(map(response => response));\r\n }\r\n\r\n activateContractor(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.ACTIVATE_CONTRACTOR;\r\n return this.apiService.put(url, null, queryParams).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n activateTechnician(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.RE_INVITE_TECHNICIAN;\r\n return this.apiService.put(url, null, queryParams).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n updateInstallationCDS(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.UPDATESWITCH;\r\n return this.apiService.put(url, '',queryParams).pipe(map(response => response));\r\n }\r\n\r\n getCustomerCount():Observable{\r\n const url = this.BASE_URL + API_CONSTANTS.GET_CUSTOMER_COUNT;\r\n return this.apiService.get(url).pipe(map(response => new CommonSuccessResponseList(response)));\r\n\r\n }\r\n getSensorInstallationStatus(payload: object): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_INSTALLATION_REPORT;\r\n return this.apiService.get(url, payload).pipe(map(response => new InstallationReportResponse(response)));\r\n }\r\n getSensorCurrentStatus(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_SENSOR_CURRENT_STATUS;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new SensorCurrentStatusResponse(response)));\r\n }\r\n getPreSeasonTestStatus(payload: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.PRE_SEASON_TEST_STATUS;\r\n return this.apiService.get(url, payload).pipe(map(response => (response)));\r\n }\r\n handleCancelPreSeasonTest(payload: object): Observable {\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.CANCEL_PRE_SEASON_TEST;\r\n return this.apiService.get(url, payload).pipe(map(response => (response)));\r\n }\r\n\r\n resloveAlert(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.RESOLVE_ALERT;\r\n return this.apiService.put(url,queryParams,'').pipe(map(response => response));\r\n }\r\n\r\n getTechnicianList(queryParams): Observable {\r\n const url = this.BASE_URL + API_CONSTANTS.GET_TECHNICIANS_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new TechnicianInfo(response)));\r\n }\r\n getAlertShortLink(payload:any):Observable{\r\n const url = this.BASE_URL + API_CONSTANTS.GENERATE_SHORT_LINK;\r\n return this.apiService.get(url, payload).pipe(map(response => (response)));\r\n }\r\n shareAlerttoEmails(payload:any):Observable{\r\n const url = this.BASE_URL + API_CONSTANTS.SHARE_ALERT;\r\n return this.apiService.post(url, payload).pipe(map(response => (response)));\r\n }\r\n\r\n preSeasonEnable(queryParams:any): Observable {\r\n console.log(queryParams)\r\n const url = this.PRE_SEASON_BASE_URL + API_CONSTANTS.IS_PRESEASON_ENABLE;\r\n return this.apiService.get(url,queryParams).pipe(map(response => (response)));\r\n\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { InfiniteScrollModule } from 'ngx-infinite-scroll';\r\n\r\n\r\n// Directives\r\nimport { ClosePopOverDirective } from 'src/app/shared/directives/close-pop-over.directive';\r\nimport { ScrollDirective } from './directives/scroll.directive';\r\n\r\n// Pipes\r\nimport { MomentDatePipe } from './pipes/moment-date.pipe';\r\nimport { SafePipePipe } from './pipes/safe-pipe.pipe';\r\nimport { ReportsPreseasonInArrayPipe } from './pipes/reports-preseason-in-array.pipe';\r\n\r\n// Components\r\nimport { TabsComponent } from './components/tabs/tabs.component';\r\nimport { GuideModalComponent } from './components/guide-modal/guide-modal.component';\r\nimport { OverlayComponent } from './components/overlay/overlay.component';\r\nimport { SplineChartComponent } from './components/spline-chart/spline-chart.component';\r\nimport { AdvanceDiagnosticModalComponent } from './components/advance-diagnostic-modal/advance-diagnostic-modal.component';\r\nimport { ModalHeaderComponent } from './components/modal-header/modal-header.component';\r\nimport { ButtonComponent } from './components/button/button.component';\r\nimport { AlertDiscoveryModalComponent } from './components/alert-discovery-modal/alert-discovery-modal.component';\r\nimport { InfoModalComponent } from './components/info-modal/info-modal.component';\r\nimport { HvacDetailModalComponent } from './components/hvac-detail-modal/hvac-detail-modal.component';\r\nimport { ToasterComponent } from './components/toaster/toaster.component';\r\nimport { LoadingSymbolComponent } from './components/loading-symbol/loading-symbol.component';\r\nimport { PaginationComponent } from './components/pagination/pagination.component';\r\nimport { InstallationReportComponent } from './components/installation-report/installation-report.component';\r\nimport { ConfirmationModalComponent } from './components/confirmation-modal/confirmation-modal.component';\r\nimport { PaginationLimitDropdownComponent } from './components/pagination-limit-dropdown/pagination-limit-dropdown.component';\r\nimport { PersonalInfoTypesComponent } from './components/personal-info-types/personal-info-types.component';\r\nimport { AlertDiscoveryChartComponent } from './components/alert-discovery-chart/alert-discovery-chart.component';\r\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\r\nimport { DatetimepickerComponent } from './components/datetimepicker/datetimepicker.component';\r\nimport { PersonalInfoModalComponent } from './components/personal-info-modal/personal-info-modal.component';\r\nimport { AlertsTableComponent } from './components/alerts-table/alerts-table.component';\r\nimport { PreSeasonReportComponent } from './components/pre-season-report/pre-season-report.component';\r\nimport { HvacComfortbridgeModalComponent } from './components/hvac-comfortbridge-modal/hvac-comfortbridge-modal.component';\r\nimport { MapsComponent } from './components/maps/maps.component';\r\nimport { PerformanceBoardDetailsComponent } from './components/performance-board-details/performance-board-details.component';\r\nimport { ReadMoreModalComponent } from './components/read-more-modal/read-more-modal.component';\r\nimport { HvacOperationsComponent } from './components/hvac-operations/hvac-operations.component';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { CreateContractorComponent } from './components/create-contractor/create-contractor.component';\r\nimport { BillingComponent } from './components/billing/billing.component';\r\nimport { AssignTechnicianModalComponent } from './components/assign-technician-modal/assign-technician-modal.component';\r\nimport { SubscriptionComponent } from './components/subscription/subscription.component';\r\nimport { TransferDeleteAccountComponent } from './components/transfer-delete-account/transfer-delete-account.component';\r\nimport { WelcomeScreenComponent } from './components/welcome-screen/welcome-screen.component';\r\nimport { UploadListModalComponent } from './components/upload-list-modal/upload-list-modal.component';\r\nimport { ShareAlertModalComponent } from './components/share-alert-modal/share-alert-modal.component';\r\nimport { NgxTagsInputModule } from 'ngx-tags-input';\r\nconst Components = [\r\n TabsComponent,\r\n ClosePopOverDirective,\r\n GuideModalComponent,\r\n OverlayComponent,\r\n SplineChartComponent,\r\n AdvanceDiagnosticModalComponent,\r\n ModalHeaderComponent,\r\n ButtonComponent,\r\n AlertDiscoveryModalComponent,\r\n InfoModalComponent,\r\n HvacDetailModalComponent,\r\n ToasterComponent,\r\n LoadingSymbolComponent,\r\n ScrollDirective,\r\n PaginationComponent,\r\n InstallationReportComponent,\r\n ConfirmationModalComponent,\r\n ReadMoreModalComponent,\r\n PaginationLimitDropdownComponent,\r\n PersonalInfoTypesComponent,\r\n AlertDiscoveryChartComponent,\r\n ChangePasswordComponent,\r\n DatetimepickerComponent,\r\n PersonalInfoModalComponent,\r\n AlertsTableComponent,\r\n PreSeasonReportComponent,\r\n HvacComfortbridgeModalComponent,\r\n MapsComponent,\r\n PerformanceBoardDetailsComponent,\r\n HvacOperationsComponent,\r\n CreateContractorComponent,\r\n BillingComponent,\r\n AssignTechnicianModalComponent,\r\n SubscriptionComponent,\r\n TransferDeleteAccountComponent,\r\n WelcomeScreenComponent,\r\n UploadListModalComponent,\r\n ShareAlertModalComponent\r\n];\r\n\r\nconst Pipes = [MomentDatePipe, SafePipePipe, ReportsPreseasonInArrayPipe];\r\n\r\n@NgModule({\r\n declarations: [...Components, ...Pipes],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n InfiniteScrollModule,\r\n NgxTagsInputModule\r\n ],\r\n exports: [...Components, ...Pipes],\r\n providers: [\r\n CookieService\r\n ],\r\n})\r\nexport class SharedModule { }\r\n","module.exports = __webpack_public_path__ + \"Current-Contractor-Black.svg\";","module.exports = __webpack_public_path__ + \"Current-Contractor-Blue.svg\";","module.exports = __webpack_public_path__ + \"Current-Contractor-White.svg\";","module.exports = __webpack_public_path__ + \"cellExcellent.svg\";","module.exports = __webpack_public_path__ + \"cellFair.svg\";","module.exports = __webpack_public_path__ + \"cellGood.svg\";","module.exports = __webpack_public_path__ + \"cellWeak.svg\";","module.exports = __webpack_public_path__ + \"cellular_exc_icon.svg\";","module.exports = __webpack_public_path__ + \"defaultLogo.png\";","module.exports = __webpack_public_path__ + \"noimage.jpg\";","module.exports = __webpack_public_path__ + \"report_empty_sensor.svg\";","module.exports = __webpack_public_path__ + \"report_failure.svg\";","module.exports = __webpack_public_path__ + \"report_incomplete.svg\";","module.exports = __webpack_public_path__ + \"report_minor_error.svg\";","module.exports = __webpack_public_path__ + \"report_pass.svg\";","module.exports = __webpack_public_path__ + \"report_sensor_inactive.svg\";","module.exports = __webpack_public_path__ + \"report_sensor_notworking.svg\";","module.exports = __webpack_public_path__ + \"report_sensor_working.svg\";","module.exports = __webpack_public_path__ + \"wi-fi_good_icon.svg\";","module.exports = __webpack_public_path__ + \"wifiExcellent.svg\";","module.exports = __webpack_public_path__ + \"wifiFair.svg\";","module.exports = __webpack_public_path__ + \"wifiGood.svg\";","module.exports = __webpack_public_path__ + \"wifiWeak.svg\";","export const CHANNEL_API_CONSTANTS = {\r\n ADD_MELI_TO_CHANNEL: '/channel/melis',\r\n ASSIGN_MELI_TO_CONTRACTOR: '/channel/contractor/melis',\r\n GET_CONTRACTOR_LIST: '/contractors',\r\n GET_CHANNEL_INVENTORY_LIST: '/melidetails',\r\n CONTRACTOR_LOGO: '/contractorLogo',\r\n UNASSIGN_MELI_FROM_CONTRACTOR: '/unAssignMeliFromContractor',\r\n GET_SEARCH_LIST: '/channel/search',\r\n ADD_DEALER: '/addDealer',\r\n GET_INSTALLATION_LIST: '/melidetails',\r\n GET_DEALER_LIST: '/getDealer',\r\n UPLOAD_DEALER_LIST: '/uploadDealerData'\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment as channelEnvironment } from 'projects/channel/src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ApiService } from 'src/app/shared/services/api.service';\r\n\r\n// Constants\r\nimport { CHANNEL_API_CONSTANTS } from 'projects/channel/src/app/shared-channel/constants/api.constants';\r\n\r\n// Models\r\nimport {\r\n BulkDealerUploadResponse, ContractorListResponse,\r\n CreateContractorResponse,\r\n DealerListResponse\r\n} from 'src/app/shared/models/contractor.modal';\r\nimport { InventoryResponse } from 'src/app/shared/models/inventory.model';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { UploadProperyListResponse } from 'src/app/shared/models/properties.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ChannelSharedService {\r\n\r\n private BASE_URL = channelEnvironment.baseUrl;\r\n\r\n constructor(\r\n private helperService: HelperService,\r\n private apiService: ApiService\r\n ) { }\r\n\r\n getContractorsList(queryParams): Observable {\r\n const url = this.BASE_URL + CHANNEL_API_CONSTANTS.GET_CONTRACTOR_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new ContractorListResponse(response)));\r\n }\r\n\r\n getDealerList(queryParams): Observable {\r\n const url = this.BASE_URL + CHANNEL_API_CONSTANTS.GET_DEALER_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new DealerListResponse(response)));\r\n }\r\n\r\n getInventoryList(queryParams): Observable {\r\n const url = this.BASE_URL + CHANNEL_API_CONSTANTS.GET_CHANNEL_INVENTORY_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new InventoryResponse(response)));\r\n }\r\n\r\n uploadCompanyLogo(payload, queryParams, hasHeader = true) {\r\n const url = this.BASE_URL + CHANNEL_API_CONSTANTS.CONTRACTOR_LOGO;\r\n return this.apiService.post(url, payload, queryParams, false, hasHeader).pipe(map(response => response));\r\n }\r\n\r\n // createContractor(payload): Observable {\r\n // const url = this.BASE_URL + CHANNEL_API_CONSTANTS.CREATE_CONTRACTOR;\r\n // return this.apiService.post(url, payload).pipe(map(response => new CreateContractorResponse(response)));\r\n // }\r\n\r\n uploadDealerList(payload): Observable {\r\n const url = this.BASE_URL + CHANNEL_API_CONSTANTS.UPLOAD_DEALER_LIST;\r\n return this.apiService.post(url, payload).pipe(map(response => new UploadProperyListResponse(response)));\r\n }\r\n\r\n}\r\n","export const environment = {\r\n production: false,\r\n loginBaseUrl: 'http://18.116.149.129:8080/cognito' ||\r\n 'https://k2zn8ojkke.execute-api.us-east-2.amazonaws.com/v1',\r\n baseUrl: 'http://18.116.149.129:8081/yantra' || 'https://prod-cpgoodman.ihvac.io/yantra',\r\n updateRelayBaseUrl: 'http://18.216.111.167:8088/yantra' || 'https://prod-yantraconsole.ihvac.io/yantra',\r\n phoneCodesRestAPIBaseUrl: 'https://restcountries.eu/rest/v2/all',\r\n lambdaBaseUrl: 'https://ohfvsknqw1.execute-api.us-east-2.amazonaws.com/dev',\r\n comfortBridgeUrl: 'https://n0korjfy58.execute-api.us-east-2.amazonaws.com/v1/model',\r\n userPoolId: 'us-east-2_vfhbHVuAz' || 'us-east-2_DSgKB2NiH',\r\n minCelciusValue: -18 || -18,\r\n maxCelciusValue: 93 || 93,\r\n minWaterColumnValue: 0 || 0,\r\n maxWaterColumnValue: 0.9 || 0.9,\r\n sensorMaxNegativeValue: -150 || -150,\r\n sensorMaxPositiveValue: 150 || 150,\r\n theme: 'keenhome-theme' || 'keenhome-theme',\r\n siteName: 'keenhome-channel',\r\n mapboxKey: 'pk.eyJ1IjoiY29ubmVjdG0iLCJhIjoiY2tmOG9xMzhmMGVlODJ5bzBrZGM3dzNpeSJ9.gZfzhnzROQ_NDyJSCR_8Xg',\r\n stripeKey: 'pk_test_MLqe6uLxvPk209PiEgblk9oq00uyn3cgbJ',\r\n branchKey: 'key_test_ee8Fm0vzc9rXRmGaNH5rhochwEcwLlq0',\r\n termsOfUse: 'https://keenhome.io/pages/terms' || 'https://www.coolcloudhvac.com/terms-of-use',\r\n privacyPolicy: 'https://keenhome.io/pages/privacy' || 'https://www.coolcloudhvac.com/privacy-policy'\r\n};\r\n\r\n\r\n\r\n\r\n// CODES DEFAULTLY PRESENT IN ENVIRONMENT.TS file under environments folder.\r\n\r\n\r\n\r\n// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\n// export const environment = {\r\n// production: false,\r\n// baseUrl: 'https://cp-goodman.ihvac.io/yantra',\r\n// // baseUrl: 'http://18.189.81.204:8081/yantra',\r\n// loginBaseUrl: 'https://q1w3ryo4sc.execute-api.us-east-2.amazonaws.com/dev/',\r\n// updateRelayBaseUrl: 'http://3.19.77.212:8088/yantra'\r\n// };\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n\r\n","export const VERSION = {\r\n version: '1.0.9.0'\r\n};\r\n","export const MDU_API_CONSTANTS = {\r\n GET_PROPERTIES_LIST: '/mdu/properties',\r\n UPLOAD_PROPERTY_LIST: '/uploadMduData',\r\n // UPLOAD_TECHNICIAN_LIST: '/uploadTechnicianData',\r\n GET_SEARCH_LIST: '/mdu/search',\r\n GET_TECHNICIAN_PROPERTIES: '/mdu/technicianProperties',\r\n\r\n};\r\n","export const environment = {\r\n production: false,\r\n loginBaseUrl: 'http://18.116.149.129:8080/cognito' ||\r\n 'https://k2zn8ojkke.execute-api.us-east-2.amazonaws.com/v1',\r\n baseUrl: 'http://18.116.149.129:8081/yantra' || 'https://prod-cpgoodman.ihvac.io/yantra',\r\n updateRelayBaseUrl: 'https://dev-yantraconsole.ihvac.io/yantra' || 'https://prod-yantraconsole.ihvac.io/yantra',\r\n preSeasonTestBaseUrl: 'http://3.142.107.142:8092/preseason' || 'https://preseason.ihvac.io/preseason',\r\n phoneCodesRestAPIBaseUrl: 'https://restcountries.eu/rest/v2/all',\r\n lambdaBaseUrl: 'https://ohfvsknqw1.execute-api.us-east-2.amazonaws.com/dev',\r\n comfortBridgeUrl: 'https://n0korjfy58.execute-api.us-east-2.amazonaws.com/v1/model',\r\n userPoolId: 'us-east-2_vfhbHVuAz' || 'us-east-2_DSgKB2NiH',\r\n minCelciusValue: -18 || -18,\r\n maxCelciusValue: 93 || 93,\r\n minWaterColumnValue: 0 || 0,\r\n maxWaterColumnValue: 0.9 || 0.9,\r\n sensorMaxNegativeValue: -150 || -150,\r\n sensorMaxPositiveValue: 150 || 150,\r\n theme: 'keenhome-theme' || 'keenhome-theme',\r\n siteName: 'keenhome-mdu',\r\n mapboxKey: 'pk.eyJ1IjoiY29ubmVjdG0iLCJhIjoiY2tmOG9xMzhmMGVlODJ5bzBrZGM3dzNpeSJ9.gZfzhnzROQ_NDyJSCR_8Xg',\r\n stripeKey: 'pk_test_MLqe6uLxvPk209PiEgblk9oq00uyn3cgbJ',\r\n branchKey: 'key_test_ee8Fm0vzc9rXRmGaNH5rhochwEcwLlq0',\r\n termsOfUse: 'https://www.coolcloudhvac.com/terms-of-use',\r\n privacyPolicy: 'https://www.coolcloudhvac.com/privacy-policy'\r\n};\r\n\r\n\r\n\r\n\r\n\r\n// CODES DEFAULTLY PRESENT IN ENVIRONMENT.TS file under environments folder.\r\n\r\n\r\n\r\n// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\n// export const environment = {\r\n// production: false,\r\n// baseUrl: 'https://cp-goodman.ihvac.io/yantra',\r\n// // baseUrl: 'http://18.189.81.204:8081/yantra',\r\n// loginBaseUrl: 'https://q1w3ryo4sc.execute-api.us-east-2.amazonaws.com/dev/',\r\n// updateRelayBaseUrl: 'https://dev-yantraconsole.ihvac.io/yantra'\r\n// };\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n\r\n","export const VERSION = {\r\n version: '1.0.9.0'\r\n};\r\n","var map = {\n\t\"./modules/customer/customer.module\": [\n\t\t\"./src/app/modules/customer/customer.module.ts\",\n\t\t\"common\",\n\t\t\"modules-customer-customer-module\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";\nmodule.exports = webpackAsyncContext;","module.exports = \"/* stylelint-disable */\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInByb2plY3RzL2NvbnRyYWN0b3Ivc3JjL2FwcC9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvcHJvamVjdHNcXGNvbnRyYWN0b3JcXHNyY1xcYXBwXFxhcHAuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUEiLCJmaWxlIjoicHJvamVjdHMvY29udHJhY3Rvci9zcmMvYXBwL2FwcC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovIl19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\n\r\ndeclare const branch:any;\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit {\r\n\r\n isShowToaster = false;\r\n toasterDetails = {\r\n type: '',\r\n message: ''\r\n };\r\n theme = contractorEnvironment.theme;\r\n\r\n constructor(\r\n private helperService: HelperService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.setListenerForToaster();\r\n // load Branch\r\n (function(b,r,a,n,c,h,_,s,d,k){if(!b[n]||!b[n]._q){for(;s<_.length;)c(h,_[s++]);d=r.createElement(a);d.async=1;d.src=\"https://cdn.branch.io/branch-latest.min.js\";k=r.getElementsByTagName(a)[0];k.parentNode.insertBefore(d,k);b[n]=h}})(window,document,\"script\",\"branch\",function(b,r){b[r]=function(){b._q.push([r,arguments])}},{_q:[],_v:1},\"addListener applyCode autoAppIndex banner closeBanner closeJourney creditHistory credits data deepview deepviewCta first getCode init link logout redeem referrals removeListener sendSMS setBranchViewData setIdentity track validateCode trackCommerceEvent logEvent disableTracking\".split(\" \"), 0);\r\n // init Branch\r\n branch.init(`${contractorEnvironment.branchKey}`);\r\n }\r\n\r\n setListenerForToaster() {\r\n this.helperService.setListenerForToaster().subscribe(\r\n (data) => {\r\n this.showToaster(data.type, data.message);\r\n }\r\n );\r\n }\r\n\r\n showToaster(type: string, message: string) {\r\n this.isShowToaster = true;\r\n this.toasterDetails = {\r\n type,\r\n message\r\n };\r\n\r\n setTimeout(() => {\r\n this.isShowToaster = false;\r\n }, 5000);\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\nimport { AppComponent } from './app.component';\r\n\r\n// Modules\r\nimport { CoreModule } from 'src/app/core/core.module';\r\nimport { LayoutModule } from 'src/app/layout/layout.module';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\nimport { SharedContractorModule } from 'projects/contractor/src/app/shared-contractor/shared-contractor.module';\r\n\r\n// Router\r\nimport { ContractorRoutingModule } from './contractor-routing.module';\r\nimport { UnsubscribeComponent } from 'src/app/modules/unsubscribe/pages/unsubscribe/unsubscribe.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n UnsubscribeComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n HttpClientModule,\r\n ContractorRoutingModule,\r\n CoreModule,\r\n LayoutModule,\r\n SharedModule,\r\n SharedContractorModule\r\n ],\r\n providers: [],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\n// Guards\r\nimport { AuthGuard } from 'src/app/core/guards/auth.guard';\r\n\r\n// Components\r\nimport { AdminComponent } from 'src/app/layout/admin/admin.component';\r\n//import { AdvancediagnosticComponent } from 'src/app/modules/alertdiscovery/pages/advancediagnostic/advancediagnostic.component';\r\nimport { UnsubscribeComponent } from 'src/app/modules/unsubscribe/pages/unsubscribe/unsubscribe.component';\r\n\r\n// Constants\r\nimport { ROLE_CONSTANTS } from 'src/app/shared/constants/role.constant';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: '/alerts',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'unsubscribe',\r\n component:UnsubscribeComponent,\r\n //loadChildren: () => import('src/app/modules/unsubscribe/unsubscribe.module').then(m => m.UnsubscribeModule),\r\n //loadChildren: './modules/auth/auth.module#AuthModule'\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n {\r\n path: '',\r\n component: AdminComponent,\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR },\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: 'alerts',\r\n loadChildren: () => import('src/app/modules/alerts/alerts.module').then(m => m.AlertsModule),\r\n //loadChildren: './modules/alerts/alerts.module#AlertsModule',\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n // {\r\n // path: 'inventory',\r\n // loadChildren: './modules/inventory/inventory.module#InventoryModule',\r\n // data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n // },\r\n {\r\n path: 'customers',\r\n loadChildren: './modules/customer/customer.module#CustomerModule',\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n {\r\n path: 'technicians',\r\n loadChildren: () => import('src/app/modules/technician/technician.module').then(m => m.TechnicianModule),\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n {\r\n path: 'meli/:meliSerialNumber',\r\n loadChildren: () => import('src/app/modules/meli/meli.module').then(m => m.MeliModule),\r\n //loadChildren:'src/app/modules/meli/meli.module#MeliModule',\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n // {\r\n // path: 'inventory',\r\n // loadChildren: () => import('src/app/modules/inventory/inventory.module').then(m => m.InventoryModule),\r\n // data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n // },\r\n {\r\n path: 'reports',\r\n loadChildren: () => import('src/app/modules/reports/reports.module').then(m => m.ReportsModule),\r\n //loadChildren: './modules/alerts/alerts.module#AlertsModule',\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n }\r\n ]\r\n },\r\n {\r\n path: 'login',\r\n loadChildren: () => import('src/app/modules/auth/auth.module').then(m => m.AuthModule),\r\n //loadChildren: './modules/auth/auth.module#AuthModule'\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n {\r\n path: 'alertdiscovery',\r\n loadChildren: () => import('src/app/modules/alertdiscovery/alertdiscovery.module').then(m => m.AlertdiscoveryModule),\r\n //loadChildren: './modules/auth/auth.module#AuthModule'\r\n data: { portalName: ROLE_CONSTANTS.CONTRACTOR }\r\n },\r\n \r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)], // available app routes\r\n // exporting RouterModule makes router directives available for use in the AppModule components\r\n exports: [RouterModule]\r\n})\r\nexport class ContractorRoutingModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Services\r\nimport { ApiService } from 'src/app/shared/services/api.service';\r\n\r\n// Constants\r\nimport { CONTRACTOR_API_CONSTANTS } from 'projects/contractor/src/app/shared-contractor/constants/api.constant';\r\n\r\n// Models\r\nimport { DeleteCustomerResponse } from 'src/app/shared/models/customer.model';\r\nimport { UploadProperyListResponse } from 'src/app/shared/models/properties.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CustomerService {\r\n\r\n private BASE_URL = contractorEnvironment.baseUrl;\r\n\r\n constructor(\r\n private apiService: ApiService\r\n ) { }\r\n\r\n deleteCustomers(queryParams): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.DELETE_CUSTOMER;\r\n return this.apiService.delete(url, queryParams).pipe(map(response => new DeleteCustomerResponse(response)));\r\n }\r\n\r\n // uploadCustomerList(payload,filedata) {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.UPLOAD_CUSTOMER_LIST;\r\n // return this.apiService.post(url,filedata, payload).pipe(map(response => new UploadProperyListResponse(response)));\r\n // }\r\n\r\n // uploadCustomerListStatus(queryParams) {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_UPLOAD_STATUS;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => new UploadProperyListResponse(response)));\r\n // }\r\n\r\n // uploadCustomerListStatusReset(queryParams) {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.UPLOAD_STATUS_RESET;\r\n // return this.apiService.put(url, \"\",queryParams).pipe(map(response => new UploadProperyListResponse(response)));\r\n // }\r\n\r\n}\r\n","module.exports = \"/* stylelint-disable */\\n/* stylelint-disable */\\n.create-customer-modal_wrapper .modal-content {\\n max-width: 90%;\\n top: 2rem;\\n}\\n.create-customer-modal_wrapper .modal-body {\\n max-height: 82vh;\\n display: flex;\\n flex-direction: column;\\n padding: 0rem;\\n}\\n.create-customer-modal_wrapper .modal-body label {\\n font-size: 1.4rem;\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n}\\n.create-customer-modal_wrapper .modal-body select {\\n border-radius: 3px;\\n background-color: #f4f4f4;\\n padding: 0.9rem 3rem 0.9rem 0.9rem;\\n font-size: 1.3rem;\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n /* Remove default arrow */\\n background-image: url('arrow-down-gray-sec.svg');\\n /* Add custom arrow */\\n background-repeat: no-repeat;\\n background-position: right 1rem center;\\n background-size: 1rem;\\n}\\n.create-customer-modal_wrapper .location-select {\\n padding: 0.2rem 3rem 0.2rem 0.2rem !important;\\n font-size: 1.2rem !important;\\n}\\n.create-customer-modal_wrapper .hvac-wrapper {\\n width: 100%;\\n border: 1px solid transparent;\\n border-top: none;\\n padding-bottom: 1rem;\\n}\\n.create-customer-modal_wrapper .hvac-wrapper_border {\\n border: 1px solid #cecece;\\n border-top: none;\\n border-top-left-radius: 0.5rem;\\n border-top-right-radius: 0.5rem;\\n}\\n.create-customer-modal_wrapper .indoor-equipment_block {\\n flex: 1.2;\\n}\\n.create-customer-modal_wrapper .hvac-info_header-left {\\n flex: 1.2;\\n}\\n.create-customer-modal_wrapper .equipment_label {\\n font-family: \\\"SourceSansPro-Bold\\\";\\n color: #4d4f5c;\\n font-size: 1.6rem;\\n}\\n.create-customer-modal_wrapper .sub_text {\\n font-size: 1.2rem !important;\\n}\\n.create-customer-modal_wrapper .min-width_200 {\\n min-width: 20rem;\\n}\\n.create-customer-modal_wrapper .max-width_150 {\\n max-width: 12rem;\\n}\\n.create-customer-modal_wrapper .hvac-equipment-field {\\n top: 0;\\n width: 100%;\\n}\\n.create-customer-modal_wrapper .horiontal-line {\\n height: 0.05rem;\\n background-color: #707070;\\n flex: 1;\\n}\\n.create-customer-modal_wrapper .type_wrapper {\\n position: relative;\\n height: auto;\\n overflow: auto;\\n}\\n.create-customer-modal_wrapper .toggle {\\n border: 1px solid #6e6c6c;\\n}\\n.create-customer-modal_wrapper .individual {\\n float: left;\\n border-radius: 0.7rem 0rem 0rem 0.7rem;\\n width: 50%;\\n padding: 0.7rem;\\n text-align: center;\\n border-top: 1px solid #6e6c6c;\\n border-bottom: 1px solid #6e6c6c;\\n border-left: 1px solid #6e6c6c;\\n cursor: pointer;\\n}\\n.create-customer-modal_wrapper .company {\\n cursor: pointer;\\n float: left;\\n border-radius: 0rem 0.7rem 0.7rem 0rem;\\n width: 50%;\\n padding: 0.7rem;\\n text-align: center;\\n border-top: 1px solid #6e6c6c;\\n border-bottom: 1px solid #6e6c6c;\\n border-right: 1px solid #6e6c6c;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInByb2plY3RzL2NvbnRyYWN0b3Ivc3JjL2FwcC9zaGFyZWQtY29udHJhY3Rvci9jb21wb25lbnRzL2NyZWF0ZS1jdXN0b21lci9EOlxcU291cmNlIENvZGVcXENvbnRyYWN0b3IgVWlcXGNvbnRyYWN0b3IudWkvcHJvamVjdHNcXGNvbnRyYWN0b3JcXHNyY1xcYXBwXFxzaGFyZWQtY29udHJhY3RvclxcY29tcG9uZW50c1xcY3JlYXRlLWN1c3RvbWVyXFxjcmVhdGUtY3VzdG9tZXIuY29tcG9uZW50LnNjc3MiLCJwcm9qZWN0cy9jb250cmFjdG9yL3NyYy9hcHAvc2hhcmVkLWNvbnRyYWN0b3IvY29tcG9uZW50cy9jcmVhdGUtY3VzdG9tZXIvRDpcXFNvdXJjZSBDb2RlXFxDb250cmFjdG9yIFVpXFxjb250cmFjdG9yLnVpL3NyY1xcc3R5bGVzaGVldHNcXF92YXJpYWJsZXMuc2NzcyIsInByb2plY3RzL2NvbnRyYWN0b3Ivc3JjL2FwcC9zaGFyZWQtY29udHJhY3Rvci9jb21wb25lbnRzL2NyZWF0ZS1jdXN0b21lci9jcmVhdGUtY3VzdG9tZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUNBQSxzQkFBQTtBRFNFO0VBQ0UsY0FBQTtFQUNBLFNBQUE7QUVOSjtBRlNFO0VBQ0UsZ0JBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxhQUFBO0FFUEo7QUZVSTtFQUNFLGlCQUFBO0VBQ0EsaUNDNEV5QjtFRDNFekIsY0NjaUI7QUN0QnZCO0FGV0k7RUFDRSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0Esa0NBQUE7RUFDQSxpQkFBQTtFQUNBLHdCQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUFrQix5QkFBQTtFQUNsQixnREFBQTtFQUFpRSxxQkFBQTtFQUNqRSw0QkFBQTtFQUNBLHNDQUFBO0VBQ0EscUJBQUE7QUVQTjtBRllFO0VBQ0UsNkNBQUE7RUFDQSw0QkFBQTtBRVZKO0FGYUU7RUFDRSxXQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0FFWEo7QUZjRTtFQUNFLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSw4QkFBQTtFQUNBLCtCQUFBO0FFWko7QUZlRTtFQUNFLFNBQUE7QUViSjtBRmdCRTtFQUNFLFNBQUE7QUVkSjtBRmlCRTtFQUNFLGlDQzRCMkI7RUQzQjNCLGNDbENtQjtFRG1DbkIsaUJBQUE7QUVmSjtBRm1CRTtFQUNFLDRCQUFBO0FFakJKO0FGb0JFO0VBQ0UsZ0JBQUE7QUVsQko7QUZvQkU7RUFDRSxnQkFBQTtBRWxCSjtBRnFCRTtFQUNFLE1BQUE7RUFDQSxXQUFBO0FFbkJKO0FGc0JFO0VBQ0UsZUFBQTtFQUNBLHlCQUFBO0VBQ0EsT0FBQTtBRXBCSjtBRnVCRTtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7QUVyQko7QUZ1QkU7RUFDRSx5QkFBQTtBRXJCSjtBRnVCRTtFQUNFLFdBQUE7RUFDQSxzQ0FBQTtFQUNBLFVBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtFQUNBLGdDQUFBO0VBQ0EsOEJBQUE7RUFDQSxlQUFBO0FFckJKO0FGdUJFO0VBQ0UsZUFBQTtFQUNBLFdBQUE7RUFDQSxzQ0FBQTtFQUNBLFVBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtFQUNBLGdDQUFBO0VBQ0EsK0JBQUE7QUVyQkoiLCJmaWxlIjoicHJvamVjdHMvY29udHJhY3Rvci9zcmMvYXBwL3NoYXJlZC1jb250cmFjdG9yL2NvbXBvbmVudHMvY3JlYXRlLWN1c3RvbWVyL2NyZWF0ZS1jdXN0b21lci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkBpbXBvcnQgXCJzcmMvc3R5bGVzaGVldHMvdmFyaWFibGVzLnNjc3NcIjtcclxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIHtcclxuICAvLyAubGFiZWw6OmFmdGVyIHtcclxuICAvLyAgICAgY29udGVudDogJzonO1xyXG4gIC8vICAgICByaWdodDogMDtcclxuICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIC8vIH1cclxuXHJcbiAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgICB0b3A6IDJyZW07XHJcbiAgfVxyXG5cclxuICAubW9kYWwtYm9keSB7XHJcbiAgICBtYXgtaGVpZ2h0OiA4MnZoO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBwYWRkaW5nOiAwcmVtO1xyXG4gICAgLy8gb3ZlcmZsb3c6IGF1dG87XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LW5hbWUtU291cmNlU2Fuc1Byby1Cb2xkO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWdyYXktc2Vjb25kYXJ5O1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuICAgICAgcGFkZGluZzogMC45cmVtIDNyZW0gMC45cmVtIDAuOXJlbTtcclxuICAgICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICBhcHBlYXJhbmNlOiBub25lOyAvKiBSZW1vdmUgZGVmYXVsdCBhcnJvdyAqL1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLXBhdGggKyBcIi9hcnJvdy1kb3duLWdyYXktc2VjLnN2Z1wiKTsgLyogQWRkIGN1c3RvbSBhcnJvdyAqL1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxcmVtIGNlbnRlcjtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxcmVtO1xyXG4gICAgICAvLyBtaW4td2lkdGg6IDIwcmVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmxvY2F0aW9uLXNlbGVjdCB7XHJcbiAgICBwYWRkaW5nOiAwLjJyZW0gM3JlbSAwLjJyZW0gMC4ycmVtICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmh2YWMtd3JhcHBlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG4gIH1cclxuXHJcbiAgLmh2YWMtd3JhcHBlcl9ib3JkZXIge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWxpZ2h0LWdyYXktcHJpbWFyeTtcclxuICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjVyZW07XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC41cmVtO1xyXG4gIH1cclxuXHJcbiAgLmluZG9vci1lcXVpcG1lbnRfYmxvY2sge1xyXG4gICAgZmxleDogMS4yO1xyXG4gIH1cclxuXHJcbiAgLmh2YWMtaW5mb19oZWFkZXItbGVmdCB7XHJcbiAgICBmbGV4OiAxLjI7XHJcbiAgfVxyXG5cclxuICAuZXF1aXBtZW50X2xhYmVsIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1uYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JheS1zZWNvbmRhcnk7XHJcbiAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5O1xyXG4gIH1cclxuXHJcbiAgLnN1Yl90ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMS4ycmVtICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAubWluLXdpZHRoXzIwMCB7XHJcbiAgICBtaW4td2lkdGg6IDIwcmVtO1xyXG4gIH1cclxuICAubWF4LXdpZHRoXzE1MCB7XHJcbiAgICBtYXgtd2lkdGg6IDEycmVtO1xyXG4gIH1cclxuXHJcbiAgLmh2YWMtZXF1aXBtZW50LWZpZWxkIHtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLmhvcmlvbnRhbC1saW5lIHtcclxuICAgIGhlaWdodDogMC4wNXJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM3MDcwNzA7XHJcbiAgICBmbGV4OiAxO1xyXG4gIH1cclxuXHJcbiAgLnR5cGVfd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICB9XHJcbiAgLnRvZ2dsZSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNmU2YzZjO1xyXG4gIH1cclxuICAuaW5kaXZpZHVhbCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuN3JlbSAwcmVtIDByZW0gMC43cmVtO1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIHBhZGRpbmc6IDAuN3JlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNmU2YzZjO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2ZTZjNmM7XHJcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM2ZTZjNmM7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG4gIC5jb21wYW55IHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHJlbSAwLjdyZW0gMC43cmVtIDByZW07XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgcGFkZGluZzogMC43cmVtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2ZTZjNmM7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzZlNmM2YztcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM2ZTZjNmM7XHJcbiAgfVxyXG4gIC8vIC5pbmRvb3ItZXF1aXBtZW50LCAub3V0ZG9vci1lcXVpcG1lbnQge1xyXG4gIC8vICAgICBtaW4taGVpZ2h0OiAxMTVyZW07XHJcbiAgLy8gfVxyXG59XHJcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbi8vIGNvbG9yc1xyXG5cclxuJGNvbG9yLWJsYWNrLXByaW1hcnk6ICMwMDAwMDA7XHJcbiRjb2xvci1ibGFjay1zZWNvbmRhcnk6ICMxMjE2MWU7XHJcbiRjb2xvci1ibGFjay0zOiAjMTYxYTIxO1xyXG4kY29sb3ItYmxhY2stNDogIzA3MDcwNztcclxuJGNvbG9yLWJsYWNrLTU6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuJGNvbG9yLWJsYWNrLTY6ICMxNDE4MjE7XHJcbiRjb2xvci1ibGFjay03OiAjMTMxMzEzO1xyXG5cclxuJGNvbG9yLXdoaXRlLXByaW1hcnk6ICNmZmZmZmY7XHJcbiRjb2xvci13aGl0ZS1zZWNvbmRhcnk6ICNmNGY0ZjQ7XHJcbiRjb2xvci13aGl0ZS0zOiAjZjZmOGZiO1xyXG4kY29sb3Itd2hpdGUtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3MDU4OCk7XHJcblxyXG4kY29sb3ItY2FkZXRibHVlLXByaW1hcnk6ICM3MWNlY2E7XHJcbiRjb2xvci1jYWRldGJsdWUtc2Vjb25kYXJ5OiAjNzFjZWNhO1xyXG4kY29sb3ItY2FkZXRibHVlLTM6ICM4NGM0YmY7XHJcbiRjb2xvci1jYWRldGJsdWUtNDogIzVkZGFkMTtcclxuXHJcbiRjb2xvci1kYXJrLWJsdWUtcHJpbWFyeTogIzI0MmEzNDtcclxuJGNvbG9yLWRhcmstYmx1ZS1zZWNvbmRhcnk6ICMyYTMzNDM7XHJcblxyXG4kY29sb3ItYmx1ZS1zZWNvbmRhcnk6ICMwMDMzNTk7XHJcbiRjb2xvci1ibHVlLTQ6ICM0NjRmNWQ7XHJcbiRjb2xvci1ibHVlLTg6ICMwMDQxNmI7XHJcblxyXG4kY29sb3Itb3JhbmdlLXByaW1hcnk6ICNmZmMwNmE7XHJcblxyXG4kY29sb3ItbGlnaHQtZ3JlZW4tcHJpbWFyeTogIzliZWE0ZjtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXNlY29uZGFyeTogI2FmZDI4ZDtcclxuJGNvbG9yLWxpZ2h0LWdyZWVuLXRlcm5hcnk6ICM4NWM5NDM7XHJcblxyXG4kY29sb3ItZGFyay1ncmVlbi1wcmltYXJ5OiAjMTM2MzYzO1xyXG5cclxuJGNvbG9yLWdyYXktcHJpbWFyeTogIzg5ODk4OTtcclxuJGNvbG9yLWRhcmstZ3JheS1wcmltYXJ5OiAjODk4OTg5O1xyXG4kY29sb3ItZ3JheS1zZWNvbmRhcnk6ICM0ZDRmNWM7XHJcbiRjb2xvci1ncmF5LXRlcm5hcnk6ICM5NzkwOTA7XHJcbiRjb2xvci1ncmF5LTQ6ICM5Nzk3OTc7XHJcbiRjb2xvci1ncmF5LTU6ICM3MDcwNzA7XHJcbiRjb2xvci1ncmF5LTY6ICNhNWE1YTU7XHJcbiRjb2xvci1ncmF5LTc6ICNhYWFhYWE7XHJcbiRjb2xvci1ncmF5LTg6ICNjNGM0YzQ7XHJcbiRjb2xvci1ncmF5LTk6ICNlM2UzZTM7XHJcbiRjb2xvci1ncmF5LTEwOiAjOTA5MDkwO1xyXG4kY29sb3ItbGlnaHQtZ3JheS1wcmltYXJ5OiAjY2VjZWNlO1xyXG4kY29sb3ItbGlnaHQtZ3JheS0yOiAjZTZlNmU2O1xyXG5cclxuJGNvbG9yLWF0aGVuc2dyYXktcHJpbWFyeTogI2U5ZTlmMDtcclxuJGNvbG9yLWF0aGVuc2dyYXktMjogI2Q2ZDZkNjtcclxuXHJcbiRjb2xvci12aW9sZXQtcHJpbWFyeTogIzQzNDI1ZDtcclxuJGNvbG9yLXZpb2xldC0yOiAjYmNiY2NiO1xyXG5cclxuJGNvbG9yLXJlZC1wcmltYXJ5OiAjZGQ0YjRiO1xyXG4kY29sb3ItcmVkLXNlY29uZGFyeTogI2ZmNzI3MjtcclxuXHJcbiRjb2xvci1waW5rLXByaW1hcnk6ICNmMjQ3NjY7XHJcblxyXG4kY29sb3ItYmx1ZS1wcmltYXJ5OiAjMjY5OWZiO1xyXG4kY29sb3ItYmx1ZS10ZXJuYXJ5OiAjMDBiN2E1O1xyXG4kY29sb3ItYmx1ZS0yOiAjNGQ2Njk4O1xyXG4kY29sb3ItYmx1ZS0zOiAjMDMzNTk4O1xyXG4kY29sb3ItYmx1ZS01OiAjMDAzMzk1O1xyXG4kY29sb3ItYmx1ZS02OiAjOTBjNWU2O1xyXG4kY29sb3ItYmx1ZS03OiAjZGNlNWVlO1xyXG4kY29sb3ItYmx1ZS05OiAjOTBjNWU3O1xyXG4kY29sb3ItYmx1ZS0xMDogIzAwYTZlMjtcclxuXHJcbiRjb2xvci15ZWxsb3ctcHJpbWFyeTogI2Y4OTMwODtcclxuJGNvbG9yLW9yYW5nZS1zZWNvbmRhcnk6ICNmZjljMTQ7XHJcblxyXG4vLyB0aGVtZVxyXG5cclxuJGNvbG9yLWNyaW1zb246ICNmOTFiMGU7XHJcbiRjb2xvci1waW5rOiAjZmY2N2ExO1xyXG4kY29sb3ItdmlvbGV0OiAjYjcwMGU5O1xyXG4kY29sb3ItaW5kaWdvOiAjODcyMmZmO1xyXG4kY29sb3ItYmx1ZTogIzBlYmFmOTtcclxuJGNvbG9yLWZvcmVzdDogIzAwYTc0YTtcclxuJGNvbG9yLWdyZWVuOiAjNTljZjAwO1xyXG4kY29sb3ItZ29sZDogI2ZmZDIwMjtcclxuJGNvbG9yLW9yYW5nZTogI2ZmODcwNjtcclxuXHJcbi8vIGZvbnRzXHJcblxyXG4kZm9udC1wYXRoOiBcInNyYy9hc3NldHMvZm9udHNcIjtcclxuXHJcbiRmb250LW5hbWUtb3BlbnNhbnM6IFwib3BlbnNhbnNcIjtcclxuJGZvbnQtbmFtZS1vcGVuc2Fucy1saWdodDogXCJvcGVuc2Fucy1saWdodFwiO1xyXG5cclxuLy8gJGZvbnQtZmlsZW5hbWUtb3BlbnNhbnM6ICcvb3BlbnNhbnMtcmVndWxhci50dGYnO1xyXG4vLyAkZm9udC1maWxlbmFtZS1vcGVuc2Fucy1saWdodDogJy9vcGVuc2Fucy1saWdodC50dGYnO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLVJlZ3VsYXI6IFwiU291cmNlU2Fuc1Byby1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tUmVndWxhcjogXCIvU291cmNlU2Fuc1Byby1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Tb3VyY2VTYW5zUHJvLUJvbGQ6IFwiU291cmNlU2Fuc1Byby1Cb2xkXCI7XHJcbiRmb250LWZpbGVuYW1lLVNvdXJjZVNhbnNQcm8tQm9sZDogXCIvU291cmNlU2Fuc1Byby1Cb2xkLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1MYXRvLVJlZ3VsYXI6IFwiTGF0by1SZWd1bGFyXCI7XHJcbiRmb250LWZpbGVuYW1lLUxhdG8tUmVndWxhcjogXCIvTGF0by1SZWd1bGFyLnR0ZlwiO1xyXG5cclxuJGZvbnQtbmFtZS1Sb2JvdG8tUmVndWxhcjogXCJSb2JvdG8tUmVndWxhclwiO1xyXG4kZm9udC1maWxlbmFtZS1Sb2JvdG8tUmVndWxhcjogXCIvUm9ib3RvLVJlZ3VsYXIudHRmXCI7XHJcblxyXG4kZm9udC1zaXplLWRlZmF1bHQ6IDEuNnJlbTtcclxuJGZvbnQtc2l6ZS1oZWFkaW5nOiAxLjVyZW07XHJcbiRmb250LXNpemUtdGFiczogMS40cmVtO1xyXG4kZm9udC1zaXplLXN1YnRpdGxlOiAycmVtO1xyXG5cclxuLy8gaW1hZ2VzXHJcblxyXG4kaW1hZ2UtcGF0aDogXCJzcmMvYXNzZXRzL2ltYWdlc1wiO1xyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5jcmVhdGUtY3VzdG9tZXItbW9kYWxfd3JhcHBlciAubW9kYWwtY29udGVudCB7XG4gIG1heC13aWR0aDogOTAlO1xuICB0b3A6IDJyZW07XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLm1vZGFsLWJvZHkge1xuICBtYXgtaGVpZ2h0OiA4MnZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAwcmVtO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5tb2RhbC1ib2R5IGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1Yztcbn1cbi5jcmVhdGUtY3VzdG9tZXItbW9kYWxfd3JhcHBlciAubW9kYWwtYm9keSBzZWxlY3Qge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIHBhZGRpbmc6IDAuOXJlbSAzcmVtIDAuOXJlbSAwLjlyZW07XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogUmVtb3ZlIGRlZmF1bHQgYXJyb3cgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwic3JjL2Fzc2V0cy9pbWFnZXMvYXJyb3ctZG93bi1ncmF5LXNlYy5zdmdcIik7XG4gIC8qIEFkZCBjdXN0b20gYXJyb3cgKi9cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbTtcbn1cbi5jcmVhdGUtY3VzdG9tZXItbW9kYWxfd3JhcHBlciAubG9jYXRpb24tc2VsZWN0IHtcbiAgcGFkZGluZzogMC4ycmVtIDNyZW0gMC4ycmVtIDAuMnJlbSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5odmFjLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5odmFjLXdyYXBwZXJfYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlY2VjZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC41cmVtO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC41cmVtO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5pbmRvb3ItZXF1aXBtZW50X2Jsb2NrIHtcbiAgZmxleDogMS4yO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5odmFjLWluZm9faGVhZGVyLWxlZnQge1xuICBmbGV4OiAxLjI7XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLmVxdWlwbWVudF9sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZVNhbnNQcm8tQm9sZFwiO1xuICBjb2xvcjogIzRkNGY1YztcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLnN1Yl90ZXh0IHtcbiAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcbn1cbi5jcmVhdGUtY3VzdG9tZXItbW9kYWxfd3JhcHBlciAubWluLXdpZHRoXzIwMCB7XG4gIG1pbi13aWR0aDogMjByZW07XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLm1heC13aWR0aF8xNTAge1xuICBtYXgtd2lkdGg6IDEycmVtO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5odmFjLWVxdWlwbWVudC1maWVsZCB7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLmhvcmlvbnRhbC1saW5lIHtcbiAgaGVpZ2h0OiAwLjA1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwO1xuICBmbGV4OiAxO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC50eXBlX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLnRvZ2dsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2ZTZjNmM7XG59XG4uY3JlYXRlLWN1c3RvbWVyLW1vZGFsX3dyYXBwZXIgLmluZGl2aWR1YWwge1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXJhZGl1czogMC43cmVtIDByZW0gMHJlbSAwLjdyZW07XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDAuN3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzZlNmM2YztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2ZTZjNmM7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzZlNmM2YztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNyZWF0ZS1jdXN0b21lci1tb2RhbF93cmFwcGVyIC5jb21wYW55IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXJhZGl1czogMHJlbSAwLjdyZW0gMC43cmVtIDByZW07XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDAuN3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzZlNmM2YztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2ZTZjNmM7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM2ZTZjNmM7XG59Il19 */\"","\r\n\r\nimport { Component, OnInit, ViewChild, AfterViewInit, Input, Output, EventEmitter, ElementRef } from '@angular/core';\r\nimport { FormArray, FormGroup, Validators, FormControl, AbstractControl, Form } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ContractorSharedService } from 'projects/contractor/src/app/shared-contractor/services/shared.service';\r\n\r\n// Models\r\nimport { AssetModelResponse, AssetModel, CreateAssetModelResponse } from 'src/app/shared/models/assest-model.model';\r\nimport { CreateCustomerResponse, HVACInformationResponse, HVACInformation, Customer, TypeList } from 'src/app/shared/models/customer.model';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\n\r\n// Constants\r\nimport { COMMON_CONSTANTS, HVAC_ID, CUSTOMER_TYPES } from 'src/app/shared/constants/commom.constant';\r\nimport { SharedService } from 'src/app/shared/services/shared.service';\r\nimport { BASE_URL_TYPES } from 'src/app/shared/constants/base-url-types.constant';\r\nimport { CommonSuccessResponse, IsEmailAlreadyExistsResponse } from 'src/app/shared/models/common.model';\r\n\r\n@Component({\r\n selector: 'app-create-customer',\r\n templateUrl: './create-customer.component.html',\r\n styleUrls: ['./create-customer.component.scss']\r\n})\r\nexport class CreateCustomerComponent implements OnInit {\r\n\r\n @Output() emitCloseModal = new EventEmitter();\r\n @Output() emitHandleDeleteCustomer = new EventEmitter();\r\n @Input() modalTitle: string;\r\n @Input() isEdit = false;\r\n @Input() isDelete:boolean;\r\n @Input() editCustomerData: any;\r\n @Input() assetId:any;\r\n @Output() emitHandleRefreshPage = new EventEmitter();\r\n @ViewChild('customerStreetAddress', { static: false }) customerStreetAddress: any;\r\n createConsumer: FormGroup;\r\n prevFormValues;\r\n assetModelList: AssetModel[];\r\n selectedIndoorAssetModel: AssetModel;\r\n selectedOutdoorAssetModel: AssetModel;\r\n isIndoorEquipmentCustomModal = false;\r\n isOutdoorEquipmentCustomModal = false;\r\n phonesCodesList: any;\r\n isShowIndoorEquipmentCustomField = false;\r\n isShowOutdoorEquipmentCustomField = false;\r\n createIndoorEquipmentCustomFields: FormControl;\r\n createOutdoorEquipmentCustomFields: FormControl;\r\n indoorCustomFieldsList = [];\r\n outdoorCustomFieldsList = [];\r\n isIndoorFieldAlreadyExist = false;\r\n isOutdoorFieldAlreadyExist = false;\r\n selectedCountryForPhoneCode = 'United States of America';\r\n infoModalType: any;\r\n infoModalTitle: any;\r\n confirmationModalTitle: any;\r\n confirmationModalLine1Content: any;\r\n isConfirmationModalHasYesOrNoButton = false;\r\n isShowCustomerInfoModal = false;\r\n isShowConfirmationModal = false;\r\n createCustomerPayload: any;\r\n isCreateCustomerBtnLoading = false;\r\n isResendBtnLoading=false;\r\n deviceTypeList = [];\r\n commonConstants = COMMON_CONSTANTS;\r\n HVACInformationList: HVACInformation;\r\n confirmationModalLine2Content: any;\r\n isShowIndoorField = false;\r\n editCustomerDataCopy: any;\r\n currentHVACInfoViewIndex: number;\r\n hvacDeleteIndex: number;\r\n isActionBtnLoading = false;\r\n createCustomerSubscription: Subscription;\r\n currentCustomerId: any;\r\n currentAwsCustomerId: any;\r\n isHVACInformationListLoading = false;\r\n isSHowEdit: boolean = false;\r\n isToggleButtons = false;\r\n count = 0;\r\n prevGroup;\r\n prevIndex = 0;\r\nisIndividual:boolean=true;\r\n customerType: string=CUSTOMER_TYPES.RESIDENTIAL;\r\n constructor(\r\n private router: Router,\r\n private helperService: HelperService,\r\n private contractorSharedService: ContractorSharedService,\r\n private elementRef: ElementRef,\r\n private sharedService: SharedService\r\n ) { }\r\n\r\n ngOnInit() {\r\n // this.getAssetModalList();\r\n // this.getHVACInformationList();\r\n this.createConsumer = new FormGroup(\r\n {\r\n consumerFirstName: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces,this.helperService.validateAlteastOneCharacter]),\r\n consumerLastName: new FormControl('', [this.helperService.validateOnlySpaces,this.helperService.validateAlteastOneCharacter]),\r\n companyName: new FormControl('', [Validators.required,this.helperService.validateOnlySpaces,this.helperService.validateAlteastOneCharacter]),\r\n primaryEmail: new FormControl('', [this.helperService.validateIsEmail]),\r\n secondaryEmail: new FormControl('', [this.helperService.validateIsEmail]),\r\n phone: new FormArray(\r\n [new FormGroup(\r\n {\r\n // countryCode: new FormControl('', Validators.required),\r\n phoneNumber: new FormControl('', [this.helperService.validatePhoneNumber]),\r\n type: new FormControl('Home')\r\n }\r\n )]\r\n ),\r\n serviceAddress: new FormGroup(\r\n {\r\n addressLine1: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n addressLine2: new FormControl(''),\r\n unitNo: new FormControl('',[Validators.pattern(/^(?:[a-zA-Z0-9\\s]+)?$/)]),\r\n city: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n state: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n zipcode: new FormControl('', [Validators.required, this.helperService.validateOnlySpaces]),\r\n placeId: new FormControl(''),\r\n formattedAddress: new FormControl(''),\r\n }\r\n ),\r\n billingAddress: new FormGroup(\r\n {\r\n addressLine1: new FormControl(''),\r\n addressLine2: new FormControl(''),\r\n unitNo: new FormControl('',[Validators.pattern(/^(?:[a-zA-Z0-9\\s]+)?$/)]),\r\n city: new FormControl(''),\r\n state: new FormControl(''),\r\n zipcode: new FormControl(''),\r\n placeId: new FormControl(''),\r\n formattedAddress: new FormControl(''),\r\n }\r\n ),\r\n // serialNumber: new FormControl('', Validators.required),\r\n // assetName: new FormControl('', Validators.required),\r\n\r\n // hvacEquipments: new FormArray([\r\n // // new FormArray([\r\n // // new FormGroup({\r\n // // deviceType: new FormControl('', Validators.required),\r\n // // make: new FormControl('', Validators.required),\r\n // // serialNumber: new FormControl('', Validators.required),\r\n // // modelNo: new FormControl('', Validators.required),\r\n // // variableSpeedBlower: new FormControl(''),\r\n // // zonedSystem: new FormControl(''),\r\n // // filterType: new FormControl(''),\r\n // // filterLength: new FormControl(''),\r\n // // filterWidth: new FormControl(''),\r\n // // filterThickness: new FormControl(''),\r\n // // meteringDevice: new FormControl(''),\r\n // // systemConfiguration: new FormControl('', Validators.required),\r\n // // multiStage: new FormControl(''),\r\n // // ratedElectricStripCapacity: new FormControl(''),\r\n // // ratedCapacity: new FormControl(''),\r\n // // heatType: new FormControl(''),\r\n // // fuelType: new FormControl(''),\r\n // // refigerantType: new FormControl('', Validators.required)\r\n // // }),\r\n // // new FormGroup({\r\n // // deviceType: new FormControl('', Validators.required),\r\n // // make: new FormControl('', Validators.required),\r\n // // serialNumber: new FormControl('', Validators.required),\r\n // // modelNo: new FormControl('', Validators.required),\r\n // // nominalACCapacity: new FormControl(''),\r\n // // seer: new FormControl(''),\r\n // // multiStage: new FormControl(''),\r\n // // })\r\n // // ])\r\n // ]),\r\n\r\n // indoorEquipment: new FormArray(\r\n // [new FormGroup({\r\n // serialNumber: new FormControl(''),\r\n // // assetUnitName: new FormControl('', Validators.required),\r\n // // fuel: new FormControl('', Validators.required),\r\n // // coilOrHeatKit: new FormControl('', Validators.required),\r\n // // meteringDevice: new FormControl('', Validators.required),\r\n // // type: new FormControl({ value: '', disabled: true }, Validators.required),\r\n // // equipment: new FormControl('', Validators.required),\r\n // // make: new FormControl('', Validators.required),\r\n // make: new FormControl(''),\r\n // deviceType: new FormControl(''),\r\n // // systemConfiguration: new FormControl('', Validators.required),\r\n // // zonedSystem: new FormControl('', Validators.required),\r\n // // variableSpeedBlower: new FormControl('', Validators.required),\r\n // // filterType: new FormControl('', Validators.required),\r\n // // filterLength: new FormControl('', Validators.required),\r\n // // filterWidth: new FormControl('', Validators.required),\r\n // // filterThickness: new FormControl('', Validators.required),\r\n // // // refigerantType: new FormControl('', Validators.required),\r\n // // meteringDevice: new FormControl('', Validators.required),\r\n // // heatType: new FormControl('', Validators.required),\r\n // // fuelType: new FormControl('', Validators.required),\r\n // // multiStage: new FormControl('', Validators.required),\r\n // // ratedCapacity: new FormControl('', Validators.required),\r\n // // ratedElectricStripCapacity: new FormControl('', Validators.required),\r\n // })\r\n // ]),\r\n // outdoorEquipment: new FormArray(\r\n // [\r\n // // new FormGroup({\r\n // // // serialNumber: new FormControl('', Validators.required),\r\n // // // assetUnitName: new FormControl('', Validators.required),\r\n // // // tonnage: new FormControl('', Validators.required),\r\n // // // type: new FormControl({ value: '', disabled: true }, Validators.required),\r\n // // deviceType: new FormControl(COMMON_CONSTANTS.AIR_CONDITIONER, Validators.required),\r\n // // // equipment: new FormControl('', Validators.required),\r\n // // make: new FormControl('', Validators.required),\r\n // // nominalACCapacity: new FormControl('', Validators.required),\r\n // // seer: new FormControl('', Validators.required),\r\n // // // multiStage: new FormControl('', Validators.required),\r\n // // refigerantType: new FormControl('', Validators.required),\r\n // // })\r\n // ]),\r\n\r\n // model: new FormControl(''),\r\n // brochureLink: new FormControl(''),\r\n // deviceType: new FormControl(''),\r\n // modelNo: new FormControl(''),\r\n }\r\n );\r\n // this.handleFormValidators('initial-render');\r\n\r\n this.createIndoorEquipmentCustomFields = new FormControl('', Validators.required);\r\n this.createOutdoorEquipmentCustomFields = new FormControl('', Validators.required);\r\n this.handleCustomerType(CUSTOMER_TYPES.RESIDENTIAL)\r\n // this.getPhoneCodesList();\r\n if (this.isEdit && this.editCustomerData) {\r\n // this.getHVACInformationList();\r\n this.editCustomerDataCopy = this.editCustomerData;\r\n this.handleAutoFillForm();\r\n }\r\n // this.handleAutoSaveCustomer();\r\n console.log(this.editCustomerData)\r\n }\r\n\r\n handleCustomerType(data:any)\r\n {\r\n console.log(data)\r\n this.customerType = data;\r\n if(data==CUSTOMER_TYPES.RESIDENTIAL){\r\n \r\n this.createConsumer.get('companyName').clearValidators();\r\n this.createConsumer.get('companyName').updateValueAndValidity();\r\n this.createConsumer.get('consumerFirstName').setValidators([Validators.required, this.helperService.validateOnlySpaces,this.helperService.validateAlteastOneCharacter])\r\n this.isIndividual=true;\r\n }\r\n else\r\n {\r\n this.createConsumer.get('consumerFirstName').clearValidators();\r\n this.createConsumer.get('consumerFirstName').updateValueAndValidity();\r\n this.createConsumer.get('companyName').setValidators([Validators.required, this.helperService.validateOnlySpaces,this.helperService.validateAlteastOneCharacter])\r\n\r\n this.isIndividual=false;\r\n console.log(this.createConsumer.get('consumerFirstName'))\r\n }\r\n \r\n }\r\n\r\n getHVACInformationList() {\r\n this.isHVACInformationListLoading = true;\r\n this.sharedService.getHVACInformationList().subscribe(\r\n (response: HVACInformationResponse) => {\r\n this.isHVACInformationListLoading = false;\r\n this.HVACInformationList = response.HVACInformation;\r\n if (this.isEdit && this.editCustomerData) {\r\n // setTimeout(() => {\r\n this.handleAutoFillForm();\r\n // },3000);\r\n // this.handleAutoFillForm();\r\n }\r\n }, (error) => {\r\n this.isHVACInformationListLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleAutoSelectTypeForOutdoor() {\r\n // if (this.HVACInformationList && this.HVACInformationList.typeList &&\r\n // this.HVACInformationList.typeList.length) {\r\n // this.HVACInformationList.typeList.map((value, index) => {\r\n // if (value.value === COMMON_CONSTANTS.AIR_CONDITIONER) {\r\n // this.outdoorEquipment.controls[0].patchValue({\r\n // deviceType: value.id\r\n // });\r\n // }\r\n // });\r\n // }\r\n }\r\n\r\n getPhoneCodesList() {\r\n this.contractorSharedService.getPhoneCodesList(\r\n (response: any, isError) => {\r\n if (!isError) {\r\n // const phonesCodes = [];\r\n // if (response && response.length) {\r\n // response.map((value, index) => {\r\n // if (value.name && value.callingCodes && value.callingCodes.length) {\r\n // phonesCodes.push(\r\n // {\r\n // name: value.name,\r\n // code: value.callingCodes[0]\r\n // }\r\n // );\r\n // }\r\n // }, this);\r\n // this.phonesCodesList = phonesCodes;\r\n // }\r\n this.phonesCodesList = this.helperService.handlePhoneCodes(response);\r\n this.handlePatchPhoneCodeDropdown();\r\n }\r\n }\r\n );\r\n }\r\n\r\n handleUpdateEmailFieldStatus(emailType: string) {\r\n if (emailType === 'primaryEmail') {\r\n this.createConsumer.get('primaryEmail').disable();\r\n }\r\n }\r\n\r\n handleAutoFillForm() {\r\n console.log(\"DFsfds\", this.editCustomerData)\r\n // this.editCustomerData.propertyUnitLocation=;\r\n const primaryEmail = this.helperService.handleEmailSelection(\r\n this.editCustomerData && this.editCustomerData.email, COMMON_CONSTANTS.EMAIL_PRIMARY);\r\n const secondaryEmail = this.helperService.handleEmailSelection(\r\n this.editCustomerData && this.editCustomerData.email, COMMON_CONSTANTS.EMAIL_SECONDARY);\r\n\r\n if (primaryEmail && primaryEmail.email) {\r\n this.handleUpdateEmailFieldStatus('primaryEmail');\r\n }\r\n\r\n this.handleCustomerType(this.editCustomerData.consumerType)\r\n\r\n this.createConsumer.patchValue({\r\n consumerFirstName: this.editCustomerData.customerFirstName ?\r\n this.editCustomerData.customerFirstName :\r\n this.editCustomerData.customerName,\r\n consumerLastName: this.editCustomerData.customerLastName,\r\n companyName:this.editCustomerData.companyName,\r\n primaryEmail: primaryEmail && primaryEmail.email ? primaryEmail.email : '',\r\n secondaryEmail: secondaryEmail && secondaryEmail.email ? secondaryEmail.email : '',\r\n });\r\n\r\n if (this.editCustomerData.phone && this.editCustomerData.phone.length) {\r\n this.editCustomerData.phone.map((value, index) => {\r\n if (index) {\r\n this.handleAddFormFields('phone', value);\r\n } else {\r\n this.phone.patchValue([{\r\n phoneNumber: this.helperService.handleFormatPhoneNumber(value.phoneNumber),\r\n type: value.type\r\n }]);\r\n }\r\n }, this);\r\n }\r\n\r\n\r\n const serviceAddress = this.helperService.handleAddressSelection(\r\n this.editCustomerData && this.editCustomerData.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_SERVICE);\r\n // let addressLines = this.helperService.handleAddressLinesSplit(serviceAddress && serviceAddress.address);\r\n // let line2:any;\r\n // if(serviceAddress &&serviceAddress.addressLine2!=null){\r\n // line2=serviceAddress.propertyUnitLocation?'Unit No.'+(serviceAddress.propertyUnitLocation + ',' + serviceAddress.addressLine2):serviceAddress.addressLine2; \r\n // }\r\n // else if(serviceAddress && serviceAddress.propertyUnitLocation&&serviceAddress.addressLine2==null){\r\n // line2='Unit No.'+serviceAddress.propertyUnitLocation + ',';\r\n // }\r\n\r\n//console.log(\"DFsfds\",line2) \r\nthis.serviceAddress.patchValue({\r\n city: serviceAddress && serviceAddress.city,\r\n state: serviceAddress && serviceAddress.state,\r\n addressLine1: serviceAddress && serviceAddress.address,\r\n addressLine2: serviceAddress && serviceAddress.addressLine2,\r\n unitNo: serviceAddress && serviceAddress.propertyUnitLocation,\r\n zipcode: serviceAddress && serviceAddress.zipcode,\r\n placeId: serviceAddress && serviceAddress.placeId,\r\n formattedAddress: serviceAddress && serviceAddress.formattedAddress,\r\n });\r\n\r\n const billingAddress = this.helperService.handleAddressSelection(\r\n this.editCustomerData && this.editCustomerData.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_BILLING);\r\n // addressLines = this.helperService.handleAddressLinesSplit(billingAddress && billingAddress.address);\r\n\r\n this.billingAddress.patchValue({\r\n city: billingAddress && billingAddress.city ? billingAddress.city : '',\r\n state: billingAddress && billingAddress.state ? billingAddress.state : '',\r\n addressLine1:billingAddress && billingAddress.address?billingAddress.address:'',\r\n addressLine2:billingAddress && billingAddress.addressLine2?billingAddress.addressLine2:'',\r\n unitNo: billingAddress && billingAddress.propertyUnitLocation?billingAddress.propertyUnitLocation:'',\r\n zipcode: billingAddress && billingAddress.zipcode ? billingAddress.zipcode : '',\r\n placeId: billingAddress && billingAddress.placeId ? billingAddress.placeId : '',\r\n formattedAddress: billingAddress && billingAddress.formattedAddress,\r\n });\r\n\r\n if (this.editCustomerData && this.editCustomerData.assetDetails &&\r\n this.editCustomerData.assetDetails.length) {\r\n\r\n this.editCustomerData.assetDetails.map((value, index) => {\r\n if (value.assetUnitType === 'indoor') {\r\n let selectedOutdoorValue = this.editCustomerData.assetDetails.find(currentValue =>\r\n currentValue.assetUnitType === 'outdoor' &&\r\n currentValue.assetUnitUniqueId === value.assetUnitUniqueId\r\n );\r\n this.handleAddHVACInformation(value, selectedOutdoorValue);\r\n }\r\n });\r\n\r\n // if (this.editCustomerData.assetDetails.length === 1) {\r\n // this.handleAddHVACInformation(this.editCustomerData.assetDetails[0]);\r\n // } else if (this.editCustomerData.assetDetails.length > 1) {\r\n // this.handleAddHVACInformation(this.editCustomerData.assetDetails[0], this.editCustomerData.assetDetails[1]);\r\n // }\r\n }\r\n // this.indoorEquipment.controls.map((value: FormGroup, index) => {\r\n // value.patchValue({\r\n // serialNumber: this.editCustomerData.assetDetails &&\r\n // this.editCustomerData.assetDetails.length &&\r\n // this.editCustomerData.assetDetails[0].assetUnitSerialNumber,\r\n // make: this.editCustomerData.assetDetails &&\r\n // this.editCustomerData.assetDetails.length &&\r\n // this.editCustomerData.assetDetails[0].assetModelInfo &&\r\n // this.editCustomerData.assetDetails[0].assetModelInfo.indoorEquipmentMake &&\r\n // this.editCustomerData.assetDetails[0].assetModelInfo.indoorEquipmentMake.id,\r\n // deviceType: this.editCustomerData.assetDetails &&\r\n // this.editCustomerData.assetDetails.length &&\r\n // this.editCustomerData.assetDetails[0].assetModelInfo &&\r\n // this.editCustomerData.assetDetails[0].assetModelInfo.type &&\r\n // this.editCustomerData.assetDetails[0].assetModelInfo.type.id,\r\n // });\r\n\r\n // this.handleTypeOnChange(value, 'deviceType', 1, this.editCustomerData.assetDetails[0]);\r\n // });\r\n\r\n if (this.editCustomerData && this.editCustomerData.assetDetails\r\n && this.editCustomerData.assetDetails[1]) {\r\n this.handleAddFormFields('outdoorEquipment', this.editCustomerData.assetDetails[1]);\r\n }\r\n this.prevFormValues = this.createConsumer.getRawValue();\r\n // this.indoorEquipment.controls[0].patchValue({\r\n // make: this.HVACInformationList.indoorEquipmentMakeList[2],\r\n // // deviceType: this.editCustomerData.assetDetails[0].assetModelInfo.type\r\n // });\r\n // this.indoorEquipment.controls[0].get('make').patchValue(\r\n // this.editCustomerData.assetDetails[0].assetModelInfo.indoorEquipmentMake.id\r\n // )\r\n // this.indoorEquipment.controls[0].get('make').updateValueAndValidity()\r\n }\r\n\r\n handleTypeOnChange(group: FormGroup, formControlName: string, index: number, defaultValue?: any) {\r\n // this.handleOnChangeIndoorEquipment(group);\r\n // let value = group.get(formControlName).value;\r\n // // value = value && value.value;\r\n // this.isShowIndoorField = true;\r\n // group.addControl('modelNo', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.modelNo ?\r\n // defaultValue.assetModelInfo.modelNo : '')\r\n // );\r\n // group.addControl('variableSpeedBlower', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.variableSpeedBlower && defaultValue.assetModelInfo.variableSpeedBlower.id ?\r\n // defaultValue.assetModelInfo.variableSpeedBlower.id : '')\r\n // );\r\n // group.addControl('zonedSystem', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.zonedSystem && defaultValue.assetModelInfo.zonedSystem.id ?\r\n // defaultValue.assetModelInfo.zonedSystem.id : '')\r\n // );\r\n // group.addControl('filterType', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.filterType && defaultValue.assetModelInfo.filterType.id ?\r\n // defaultValue.assetModelInfo.filterType.id : '')\r\n // );\r\n // group.addControl('filterLength', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.filterLength && defaultValue.assetModelInfo.filterLength.id ?\r\n // defaultValue.assetModelInfo.filterLength.id : '')\r\n // );\r\n // group.addControl('filterWidth', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.filterWidth && defaultValue.assetModelInfo.filterWidth.id ?\r\n // defaultValue.assetModelInfo.filterWidth.id : '')\r\n // );\r\n // group.addControl('filterThickness', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.filterThickness && defaultValue.assetModelInfo.filterThickness.id ?\r\n // defaultValue.assetModelInfo.filterThickness.id : '')\r\n // );\r\n // group.addControl('meteringDevice', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.meteringDevice && defaultValue.assetModelInfo.meteringDevice.id ?\r\n // defaultValue.assetModelInfo.meteringDevice.id : '')\r\n // );\r\n // group.addControl('systemConfiguration', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.systemConfiguration && defaultValue.assetModelInfo.systemConfiguration.id ?\r\n // defaultValue.assetModelInfo.systemConfiguration.id : '')\r\n // );\r\n\r\n // group.addControl('multiStage', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.indoorMultiStage && defaultValue.assetModelInfo.indoorMultiStage.id ?\r\n // defaultValue.assetModelInfo.indoorMultiStage.id : '')\r\n // );\r\n\r\n // // This condition won't occur because we hided type field in outdoor equipment so IF condition is commented\r\n // if (value === COMMON_CONSTANTS.AIR_CONDITIONER) {\r\n // // group.addControl('nominalACCapacity', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // // defaultValue.assetModelInfo.outdoorNominalACCapacity && defaultValue.assetModelInfo.outdoorNominalACCapacity.id ?\r\n // // defaultValue.assetModelInfo.outdoorNominalACCapacity.id : '')\r\n // // );\r\n // // group.addControl('seer', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // // defaultValue.assetModelInfo.outdoorSeer && defaultValue.assetModelInfo.outdoorSeer.id ?\r\n // // defaultValue.assetModelInfo.outdoorSeer.id : '')\r\n // // );\r\n // // group.addControl('refigerantType', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // // defaultValue.assetModelInfo.refigerantType && defaultValue.assetModelInfo.refigerantType.id ?\r\n // // defaultValue.assetModelInfo.refigerantType.id : '')\r\n // // );\r\n // // // Remove Air Handler Fields\r\n // // group.removeControl('heatType');\r\n // // group.removeControl('fuelType');\r\n // // group.removeControl('ratedCapacity');\r\n // // group.removeControl('ratedElectricStripCapacity');\r\n // } else {\r\n // group.addControl('heatType', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.heatType && defaultValue.assetModelInfo.heatType.id ?\r\n // defaultValue.assetModelInfo.heatType.id : '')\r\n // );\r\n // group.addControl('fuelType', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.fuelType && defaultValue.assetModelInfo.fuelType.id ?\r\n // defaultValue.assetModelInfo.fuelType.id : '')\r\n // );\r\n // group.addControl('ratedCapacity', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.ratedCapacity && defaultValue.assetModelInfo.ratedCapacity.id ?\r\n // defaultValue.assetModelInfo.ratedCapacity.id : '')\r\n // );\r\n // group.addControl('ratedElectricStripCapacity', new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.ratedElectricStripCapacity ?\r\n // defaultValue.assetModelInfo.ratedElectricStripCapacity : '')\r\n // );\r\n // // Remove Furnace Fields\r\n // group.removeControl('nominalACCapacity');\r\n // group.removeControl('seer');\r\n // group.removeControl('refigerantType');\r\n // }\r\n\r\n }\r\n\r\n // ngAfterViewInit() {\r\n // this.handlePlacesAutoComplete();\r\n // }\r\n\r\n\r\n // handlePlacesAutoComplete() {\r\n\r\n // this.helperService.handleAddress(this.customerStreetAddress.nativeElement);\r\n\r\n // this.helperService.setListenerForAddressObject().subscribe(\r\n // (response: any) => {\r\n // this.createConsumer.patchValue({\r\n // addresses: {\r\n // addressLine1: response.street,\r\n // city: response.city,\r\n // state: response.state,\r\n // zipcode: response.zipcode\r\n // }\r\n // });\r\n // }, (error) => {\r\n\r\n // }\r\n // );\r\n\r\n // }\r\n\r\n handlePlacesAutoComplete(element: ElementRef, type: string, index?: number) {\r\n this.helperService.handleAddress(element, type, index);\r\n const addressListener = this.helperService.setListenerForAddressObject().subscribe(\r\n (response: any) => {\r\n console.log(response)\r\n if (response.type === COMMON_CONSTANTS.ADDRESS_TYPE_SERVICE) {\r\n this.serviceAddress.patchValue({\r\n addressLine1: response.street,\r\n city: response.city,\r\n state: response.state,\r\n zipcode: response.zipcode,\r\n placeId: response.placeId,\r\n formattedAddress: response.formattedAddress,\r\n });\r\n } else if (response.type === COMMON_CONSTANTS.ADDRESS_TYPE_BILLING) {\r\n this.billingAddress.patchValue({\r\n addressLine1: response.street,\r\n city: response.city,\r\n state: response.state,\r\n zipcode: response.zipcode,\r\n placeId: response.placeId,\r\n formattedAddress: response.formattedAddress,\r\n });\r\n }\r\n addressListener.unsubscribe();\r\n }, (error) => {\r\n addressListener.unsubscribe();\r\n }\r\n );\r\n\r\n }\r\n\r\n handleAddFormFields(type: string, defaultValue?: any) {\r\n if (type === 'phone' && this.phone.length < COMMON_CONSTANTS.PHONE_NUMBERS_COUNT_MAX) {\r\n this.phone.push(new FormGroup({\r\n // countryCode: new FormControl(\r\n // this.helperService.handleSelectDefaultValueForPhoneCodeDropdown(this.selectedCountryForPhoneCode, 'name'),\r\n // Validators.required\r\n // ),\r\n phoneNumber: new FormControl(\r\n defaultValue && defaultValue.phoneNumber ? defaultValue.phoneNumber : '',\r\n [this.helperService.validatePhoneNumber]\r\n ),\r\n type: new FormControl(\r\n defaultValue && defaultValue.type ? defaultValue.type : 'Home'\r\n \r\n )\r\n }));\r\n //this.handleButtonsOnLengthChanges();\r\n // } else if (type === 'indoorEquipment') {\r\n // this.indoorEquipment.push(new FormGroup({\r\n // serialNumber: new FormControl('', Validators.required),\r\n // modelNo: new FormControl('', Validators.required),\r\n // deviceType: new FormControl('', Validators.required),\r\n // // equipment: new FormControl('', Validators.required),\r\n // // make: new FormControl('', Validators.required),\r\n // // systemConfiguration: new FormControl('', Validators.required),\r\n // // zonedSystem: new FormControl('', Validators.required),\r\n // // variableSpeedBlower: new FormControl('', Validators.required),\r\n // // filterType: new FormControl('', Validators.required),\r\n // // filterLength: new FormControl('', Validators.required),\r\n // // filterWidth: new FormControl('', Validators.required),\r\n // // filterThickness: new FormControl('', Validators.required),\r\n // // // refigerantType: new FormControl('', Validators.required),\r\n // // meteringDevice: new FormControl('', Validators.required),\r\n // // heatType: new FormControl('', Validators.required),\r\n // // fuelType: new FormControl('', Validators.required),\r\n // // multiStage: new FormControl('', Validators.required),\r\n // // ratedCapacity: new FormControl('', Validators.required),\r\n // // ratedElectricStripCapacity: new FormControl('', Validators.required),\r\n // }));\r\n // } else if (type === 'outdoorEquipment') {\r\n // this.outdoorEquipment.push(new FormGroup({\r\n // // equipment: new FormControl('', Validators.required),\r\n // deviceType: new FormControl('', Validators.required),\r\n // make: new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.outdoorEquipmentMake && defaultValue.assetModelInfo.outdoorEquipmentMake.id ?\r\n // defaultValue.assetModelInfo.outdoorEquipmentMake.id : ''),\r\n // nominalACCapacity: new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.outdoorNominalACCapacity && defaultValue.assetModelInfo.outdoorNominalACCapacity.id ?\r\n // defaultValue.assetModelInfo.outdoorNominalACCapacity.id : ''),\r\n // seer: new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.outdoorSeer && defaultValue.assetModelInfo.outdoorSeer.id ?\r\n // defaultValue.assetModelInfo.outdoorSeer.id : ''),\r\n // // multiStage: new FormControl('', Validators.required),\r\n // refigerantType: new FormControl(defaultValue && defaultValue.assetModelInfo &&\r\n // defaultValue.assetModelInfo.refigerantType && defaultValue.assetModelInfo.refigerantType.id ?\r\n // defaultValue.assetModelInfo.refigerantType.id : ''),\r\n // }));\r\n // this.handleAutoSelectTypeForOutdoor();\r\n }\r\n }\r\n\r\n handleRemoveFormFields(type: string, index: number, isAll = false) {\r\n if (type === 'phone') {\r\n if (isAll && this.phone) {\r\n this.phone.clear();\r\n this.handleAddFormFields('phone');\r\n if (this.editCustomerData && this.editCustomerData.phone) {\r\n this.editCustomerData.phone = [];\r\n }\r\n } else {\r\n this.phone.removeAt(index);\r\n if (this.editCustomerData && this.editCustomerData.phone) {\r\n this.editCustomerData.phone.splice(index, 1);\r\n }\r\n this.handleButtonsOnLengthChanges();\r\n }\r\n // } else if (type === 'indoorEquipment') {\r\n // if (isAll && this.phone) {\r\n // this.indoorEquipment.clear();\r\n // this.handleAddFormFields('indoorEquipment');\r\n // } else {\r\n // this.indoorEquipment.removeAt(index);\r\n // }\r\n // } else if (type === 'outdoorEquipment') {\r\n // if (isAll && this.phone) {\r\n // this.outdoorEquipment.clear();\r\n // this.handleAddFormFields('outdoorEquipment');\r\n // } else {\r\n // this.outdoorEquipment.removeAt(index);\r\n // }\r\n }\r\n }\r\n\r\n handleFormatPhoneNumber(phoneGroup: FormGroup, phoneNumber: any) {\r\n const number = this.helperService.handleFormatPhoneNumber(phoneNumber);\r\n phoneGroup.patchValue({\r\n phoneNumber: number\r\n });\r\n }\r\n\r\n get phone() {\r\n return this.createConsumer.get('phone') as FormArray;\r\n }\r\n\r\n get serviceAddress() {\r\n return this.createConsumer.get('serviceAddress') as FormGroup;\r\n }\r\n\r\n get billingAddress() {\r\n return this.createConsumer.get('billingAddress') as FormGroup;\r\n }\r\n\r\n // get indoorEquipment() {\r\n // return this.createConsumer.get('indoorEquipment') as FormArray;\r\n // }\r\n\r\n // get outdoorEquipment() {\r\n // return this.createConsumer.get('outdoorEquipment') as FormArray;\r\n // }\r\n\r\n get hvacEquipments() {\r\n return this.createConsumer.get('hvacEquipments') ? this.createConsumer.get('hvacEquipments') as FormArray : new FormArray([]);\r\n }\r\n\r\n handleHVACInfoView(index: number) {\r\n this.currentHVACInfoViewIndex = index;\r\n }\r\n\r\n handleAddHVACInformation(defaultIndoorValue?: any, defaultOutdoorValue?: any) {\r\n this.hvacEquipments.push(\r\n new FormArray([\r\n new FormGroup({\r\n location: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.locations &&\r\n defaultIndoorValue.assetModelInfo.locations.id ?\r\n defaultIndoorValue.assetModelInfo.locations.id : ''),\r\n deviceType: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.indoorEquipmentType &&\r\n defaultIndoorValue.assetModelInfo.indoorEquipmentType.id ?\r\n defaultIndoorValue.assetModelInfo.indoorEquipmentType.id : '', Validators.required),\r\n make: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.indoorEquipmentMake &&\r\n defaultIndoorValue.assetModelInfo.indoorEquipmentMake.id ?\r\n defaultIndoorValue.assetModelInfo.indoorEquipmentMake.id : ''),\r\n serialNumber: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetUnitSerialNumber ?\r\n defaultIndoorValue.assetUnitSerialNumber : ''),\r\n modelNo: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.modelNo ?\r\n defaultIndoorValue.assetModelInfo.modelNo : ''),\r\n variableSpeedBlower: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.variableSpeedBlower &&\r\n defaultIndoorValue.assetModelInfo.variableSpeedBlower.id ?\r\n defaultIndoorValue.assetModelInfo.variableSpeedBlower.id : ''),\r\n zonedSystem: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.zonedSystem &&\r\n defaultIndoorValue.assetModelInfo.zonedSystem.id ?\r\n defaultIndoorValue.assetModelInfo.zonedSystem.id : ''),\r\n filterType: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.filterType &&\r\n defaultIndoorValue.assetModelInfo.filterType.id ?\r\n defaultIndoorValue.assetModelInfo.filterType.id : ''),\r\n filterLength: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.filterLength &&\r\n defaultIndoorValue.assetModelInfo.filterLength.id ?\r\n defaultIndoorValue.assetModelInfo.filterLength.id : ''),\r\n filterWidth: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.filterWidth &&\r\n defaultIndoorValue.assetModelInfo.filterWidth.id ?\r\n defaultIndoorValue.assetModelInfo.filterWidth.id : ''),\r\n filterThickness: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.filterThickness &&\r\n defaultIndoorValue.assetModelInfo.filterThickness.id ?\r\n defaultIndoorValue.assetModelInfo.filterThickness.id : ''),\r\n meteringDevice: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.meteringDevice &&\r\n defaultIndoorValue.assetModelInfo.meteringDevice.id ?\r\n defaultIndoorValue.assetModelInfo.meteringDevice.id : ''),\r\n systemConfiguration: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.systemConfiguration &&\r\n defaultIndoorValue.assetModelInfo.systemConfiguration.id ?\r\n defaultIndoorValue.assetModelInfo.systemConfiguration.id : '', Validators.required),\r\n multiStage: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.indoorMultiStage &&\r\n defaultIndoorValue.assetModelInfo.indoorMultiStage.id ?\r\n defaultIndoorValue.assetModelInfo.indoorMultiStage.id : ''),\r\n ratedElectricStripCapacity: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.ratedElectricStripCapacity ?\r\n defaultIndoorValue.assetModelInfo.ratedElectricStripCapacity : ''),\r\n ratedCapacity: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.ratedCapacity && defaultIndoorValue.assetModelInfo.ratedCapacity.id ?\r\n defaultIndoorValue.assetModelInfo.ratedCapacity.id : ''),\r\n heatType: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.heatType && defaultIndoorValue.assetModelInfo.heatType.id ?\r\n defaultIndoorValue.assetModelInfo.heatType.id : ''),\r\n fuelType: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.fuelType && defaultIndoorValue.assetModelInfo.fuelType.id ?\r\n defaultIndoorValue.assetModelInfo.fuelType.id : ''),\r\n refigerantType: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.refigerantType &&\r\n defaultIndoorValue.assetModelInfo.refigerantType.id ?\r\n defaultIndoorValue.assetModelInfo.refigerantType.id : ''),\r\n unitTypeId: new FormControl(\r\n defaultIndoorValue &&\r\n defaultIndoorValue.assetUnitTypeId ?\r\n defaultIndoorValue.assetUnitTypeId : null),\r\n assetModelInfoId: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.assetModelInfoId ?\r\n defaultIndoorValue.assetModelInfo.assetModelInfoId : null),\r\n assetUnitUniqueId: new FormControl(\r\n defaultIndoorValue &&\r\n defaultIndoorValue.assetUnitUniqueId ?\r\n defaultIndoorValue.assetUnitUniqueId : null),\r\n equipmentIs: new FormControl(\r\n defaultIndoorValue && defaultIndoorValue.assetModelInfo &&\r\n defaultIndoorValue.assetModelInfo.equipmentIs && defaultIndoorValue.assetModelInfo.equipmentIs.id ?\r\n defaultIndoorValue.assetModelInfo.equipmentIs.id : '', Validators.required),\r\n }),\r\n new FormGroup({\r\n deviceType: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.outdoorEquipmentType &&\r\n defaultOutdoorValue.assetModelInfo.outdoorEquipmentType.id ?\r\n defaultOutdoorValue.assetModelInfo.outdoorEquipmentType.id : '', Validators.required),\r\n make: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.outdoorEquipmentMake &&\r\n defaultOutdoorValue.assetModelInfo.outdoorEquipmentMake.id ?\r\n defaultOutdoorValue.assetModelInfo.outdoorEquipmentMake.id : ''),\r\n serialNumber: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetUnitSerialNumber ?\r\n defaultOutdoorValue.assetUnitSerialNumber : ''),\r\n modelNo: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.modelNo ?\r\n defaultOutdoorValue.assetModelInfo.modelNo : ''),\r\n nominalACCapacity: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.outdoorNominalACCapacity &&\r\n defaultOutdoorValue.assetModelInfo.outdoorNominalACCapacity.id ?\r\n defaultOutdoorValue.assetModelInfo.outdoorNominalACCapacity.id : ''),\r\n seer: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.outdoorSeer &&\r\n defaultOutdoorValue.assetModelInfo.outdoorSeer.id ?\r\n defaultOutdoorValue.assetModelInfo.outdoorSeer.id : ''),\r\n multiStage: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.outdoorMultiStage &&\r\n defaultOutdoorValue.assetModelInfo.outdoorMultiStage.id ?\r\n defaultOutdoorValue.assetModelInfo.outdoorMultiStage.id : ''),\r\n unitTypeId: new FormControl(\r\n defaultOutdoorValue &&\r\n defaultOutdoorValue.assetUnitTypeId ?\r\n defaultOutdoorValue.assetUnitTypeId : null),\r\n assetModelInfoId: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.assetModelInfoId ?\r\n defaultOutdoorValue.assetModelInfo.assetModelInfoId : null),\r\n inverterCompresser: new FormControl(\r\n defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n defaultOutdoorValue.assetModelInfo.outdoorInverterCompressor &&\r\n defaultOutdoorValue.assetModelInfo.outdoorInverterCompressor.id ?\r\n defaultOutdoorValue.assetModelInfo.outdoorInverterCompressor.id : ''),\r\n // equipmentIs: new FormControl(\r\n // defaultOutdoorValue && defaultOutdoorValue.assetModelInfo &&\r\n // defaultOutdoorValue.assetModelInfo.equipmentIs && defaultOutdoorValue.assetModelInfo.equipmentIs.id ?\r\n // defaultOutdoorValue.assetModelInfo.equipmentIs.id : ''),\r\n })\r\n ])\r\n );\r\n this.handleHVACInfoView(this.hvacEquipments.controls && (this.hvacEquipments.controls.length - 1));\r\n }\r\n\r\n handleSystemConfigOnchange(group: FormArray) {\r\n // System config-Indoor Equipment-Outdoor Equipment Mapping\r\n if (group.controls && group.controls[0] &&\r\n group.controls[0].get('systemConfiguration') &&\r\n group.controls[0].get('systemConfiguration').value === '2') {\r\n // Heat only = Furnace = None\r\n group.controls[0].get('deviceType').patchValue('1');\r\n group.controls[1].get('deviceType').patchValue('3');\r\n } else if (group.controls && group.controls[0] &&\r\n group.controls[0].get('systemConfiguration') &&\r\n group.controls[0].get('systemConfiguration').value === '3') {\r\n // AC only = Air handler\r\n group.controls[0].get('deviceType').patchValue('2');\r\n group.controls[1].get('deviceType').reset();\r\n } else {\r\n group.controls[0].get('deviceType').reset();\r\n group.controls[1].get('deviceType').reset();\r\n }\r\n }\r\n\r\n\r\n handleModelOnChange(flag: string, group: FormGroup, i: number) {\r\n if (this.prevIndex !== i) {\r\n this.count = 0;\r\n }\r\n if (this.count === 0) {\r\n this.prevGroup = group.getRawValue();\r\n } else {\r\n group.addControl('fuelType', new FormControl(this.prevGroup.fuelType));\r\n group.addControl('heatType', new FormControl(this.prevGroup.heatType));\r\n group.addControl('ratedElectricStripCapacity', new FormControl(this.prevGroup.ratedElectricStripCapacity));\r\n }\r\n if (flag === 'deviceType') {\r\n if (group.get('deviceType') && group.get('deviceType').value) {\r\n if (group.get('deviceType').value === HVAC_ID.INDOOR_EQUIP_TYPE_FURNACE.toString()) {\r\n group.removeControl('ratedElectricStripCapacity');\r\n } else if (group.get('deviceType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString()) {\r\n group.removeControl('fuelType');\r\n group.removeControl('heatType');\r\n group.removeControl('ratedElectricStripCapacity');\r\n } else if (group.get('deviceType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER_WITH_ELEC_STRIP.toString()) {\r\n group.removeControl('fuelType');\r\n group.removeControl('heatType');\r\n }\r\n }\r\n // (group.get('deviceType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER.toString() ||\r\n // group.get('deviceType').value === HVAC_ID.INDOOR_EQUIP_TYPE_AIR_HANDLER_WITH_ELEC_STRIP.toString())) {\r\n // group.get('fuelType') && group.get('fuelType').patchValue(HVAC_ID.FUEL_TYPE_ELECTRIC);\r\n\r\n } else {\r\n group.get('fuelType') && group.get('fuelType').patchValue('');\r\n }\r\n this.count++;\r\n this.prevIndex = i;\r\n }\r\n\r\n handleDeleteHVACInformation(index: number) {\r\n this.isActionBtnLoading = true;\r\n if (this.hvacEquipments && this.hvacEquipments.controls &&\r\n this.hvacEquipments.controls.length && this.hvacEquipments.controls[index]) {\r\n if (this.hvacEquipments.controls[index].value[0].unitTypeId ||\r\n this.hvacEquipments.controls[index].value[1].unitTypeId) {\r\n this.handleDeleteHVAC([this.hvacEquipments.controls[index].value[0].unitTypeId,\r\n this.hvacEquipments.controls[index].value[1].unitTypeId], index);\r\n } else {\r\n this.hvacEquipments.removeAt(index);\r\n this.isActionBtnLoading = false;\r\n this.toggleConfirmationModal();\r\n }\r\n }\r\n }\r\n\r\n handleDeleteHVAC(ids: Array, index: number) {\r\n const queryParams = {\r\n assetUnitTypeId: [...ids]\r\n };\r\n this.contractorSharedService.handleDeleteHVACUnit(queryParams).subscribe(\r\n (response) => {\r\n this.emitHandleRefreshPage.emit();\r\n this.hvacEquipments.removeAt(index);\r\n this.isActionBtnLoading = false;\r\n this.toggleConfirmationModal();\r\n this.helperService.showToaster(ToasterType.SUCCESS, response.statusInfo);\r\n }, (error) => {\r\n this.isActionBtnLoading = false;\r\n this.toggleConfirmationModal();\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n\r\n handleRadioBtnValue(form: FormGroup, controlName: string, value: any) {\r\n // form.patchValue({\r\n // controlName: value\r\n // });\r\n form.controls[controlName].patchValue(value.id);\r\n }\r\n\r\n // handleFormValidators(flag?: string) {\r\n\r\n // if (!this.isIndoorEquipmentCustomModal) {\r\n // // const abstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (this.indoorEquipment) {\r\n // (this.indoorEquipment).addControl('model', new FormControl(''));\r\n // (this.indoorEquipment).addControl('deviceType', new FormControl('', Validators.required));\r\n // // (this.indoorEquipment).removeControl('brochureLink');\r\n // // (this.indoorEquipment).removeControl('deviceType');\r\n // (this.indoorEquipment).removeControl('modelNo');\r\n // }\r\n // } else if (this.isIndoorEquipmentCustomModal) {\r\n // // const abstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (this.indoorEquipment) {\r\n // // (this.indoorEquipment).addControl('brochureLink', new FormControl('', Validators.required));\r\n // // (this.indoorEquipment).addControl('deviceType', new FormControl('', Validators.required));\r\n // (this.indoorEquipment).addControl('modelNo', new FormControl('', Validators.required));\r\n // }\r\n // }\r\n\r\n // if (!this.isOutdoorEquipmentCustomModal) {\r\n // // const abstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (this.outdoorEquipment) {\r\n // (this.outdoorEquipment).addControl('model', new FormControl(''));\r\n // (this.outdoorEquipment).addControl('deviceType', new FormControl('', Validators.required));\r\n // // (this.outdoorEquipment).removeControl('brochureLink');\r\n // // (this.outdoorEquipment).removeControl('deviceType');\r\n // (this.outdoorEquipment).removeControl('modelNo');\r\n // }\r\n // } else if (this.isOutdoorEquipmentCustomModal) {\r\n // // const abstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (this.outdoorEquipment) {\r\n // // (this.outdoorEquipment).addControl('brochureLink', new FormControl('', Validators.required));\r\n // // (this.outdoorEquipment).addControl('deviceType', new FormControl('', Validators.required));\r\n // (this.outdoorEquipment).addControl('modelNo', new FormControl('', Validators.required));\r\n // }\r\n // }\r\n\r\n // if (flag === 'initial-render') {\r\n // this.setDefaultValueForModel(this.assetModelList);\r\n // }\r\n\r\n // }\r\n\r\n // setTypeAndModelValue(flag: string) {\r\n // if (flag === 'indoorEquipment') {\r\n // // const indoorAbstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (!this.isIndoorEquipmentCustomModal) {\r\n // if (this.indoorEquipment) {\r\n // (this.indoorEquipment).controls.deviceType.patchValue(this.selectedIndoorAssetModel.deviceType);\r\n // // (this.indoorEquipment).controls.make.patchValue(this.selectedIndoorAssetModel.deviceType);\r\n // }\r\n // } else {\r\n // if (this.indoorEquipment) {\r\n // (this.indoorEquipment).controls.deviceType.patchValue('');\r\n // // (this.indoorEquipment).controls.make.patchValue('');\r\n // }\r\n // }\r\n // } else if (flag === 'outdoorEquipment') {\r\n // // const indoorAbstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (!this.isOutdoorEquipmentCustomModal) {\r\n // if (this.outdoorEquipment) {\r\n // (this.outdoorEquipment).controls.deviceType.patchValue(this.selectedOutdoorAssetModel.deviceType);\r\n // // (this.outdoorEquipment).controls.make.patchValue(this.selectedOutdoorAssetModel.deviceType);\r\n // }\r\n // } else {\r\n // if (this.outdoorEquipment) {\r\n // (this.outdoorEquipment).controls.deviceType.patchValue('');\r\n // // (this.outdoorEquipment).controls.make.patchValue('');\r\n // }\r\n // }\r\n // }\r\n // }\r\n\r\n handleOnChangeIndoorEquipment(group: FormGroup) {\r\n\r\n if (group.get('serialNumber').value ||\r\n group.get('make').value ||\r\n group.get('deviceType').value) {\r\n group.get('serialNumber').setValidators(Validators.required);\r\n // group.get('make').setValidators(Validators.required);\r\n group.get('deviceType').setValidators(Validators.required);\r\n } else {\r\n group.get('serialNumber').clearValidators();\r\n // group.get('make').clearValidators();\r\n group.get('deviceType').clearValidators();\r\n }\r\n\r\n group.get('serialNumber').updateValueAndValidity();\r\n // group.get('make').updateValueAndValidity();\r\n group.get('deviceType').updateValueAndValidity();\r\n }\r\n\r\n handleOnChangeBillingAddress(currentBillingAddress: FormGroup) {\r\n if (currentBillingAddress.get('addressLine1').value ||\r\n currentBillingAddress.get('addressLine2').value ||\r\n currentBillingAddress.get('city').value ||\r\n currentBillingAddress.get('state').value ||\r\n currentBillingAddress.get('zipcode').value||\r\n currentBillingAddress.get('unitNo').value) {\r\n currentBillingAddress.get('addressLine1').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n // currentBillingAddress.get('addressLine2').setValidators(Validators.required);\r\n currentBillingAddress.get('city').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n currentBillingAddress.get('state').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n currentBillingAddress.get('zipcode').setValidators([Validators.required, this.helperService.validateOnlySpaces]);\r\n currentBillingAddress.get('unitNo')\r\n currentBillingAddress.patchValue({\r\n addressLine1: currentBillingAddress.get('addressLine1').value ? currentBillingAddress.get('addressLine1').value : '',\r\n // addressLine2: currentBillingAddress.get('addressLine2').value ? currentBillingAddress.get('addressLine2').value : '',\r\n city: currentBillingAddress.get('city').value ? currentBillingAddress.get('city').value : '',\r\n state: currentBillingAddress.get('state').value ? currentBillingAddress.get('state').value : '',\r\n zipcode: currentBillingAddress.get('zipcode').value ? currentBillingAddress.get('zipcode').value : '',\r\n unitNo: currentBillingAddress.get('unitNo').value ? currentBillingAddress.get('unitNo').value : ''\r\n\r\n });\r\n currentBillingAddress.markAllAsTouched();\r\n } else {\r\n currentBillingAddress.get('addressLine1').clearValidators();\r\n // currentBillingAddress.get('addressLine2').clearValidators();\r\n currentBillingAddress.get('city').clearValidators();\r\n currentBillingAddress.get('state').clearValidators();\r\n currentBillingAddress.get('zipcode').clearValidators();\r\n currentBillingAddress.reset();\r\n }\r\n }\r\n\r\n handleParseAddresses() {\r\n let serviceAddressId;\r\n let billingAddressId;\r\n //let unit:any;\r\n let addressLine2:String;\r\n if (this.isEdit && this.editCustomerData && this.editCustomerData.addresses) {\r\n serviceAddressId = this.helperService.handleAddressSelection(\r\n this.editCustomerData.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_SERVICE);\r\n \r\n billingAddressId = this.helperService.handleAddressSelection(\r\n this.editCustomerData.addresses, COMMON_CONSTANTS.ADDRESS_TYPE_BILLING);\r\n }\r\n// if(serviceAddressId && serviceAddressId.propertyUnitLocation){\r\n// // unit= String(this.serviceAddress.value.addressLine2).split(',');\r\n// String(this.serviceAddress.value.addressLine2).substr(0,String(this.serviceAddress.value.addressLine2).indexOf(',')); // \"72\"\r\n// unit = String(this.serviceAddress.value.addressLine2).substr(String(this.serviceAddress.value.addressLine2).indexOf(',')+1);\r\n// }\r\n// else{\r\n// unit=String(this.serviceAddress.value.addressLine2)\r\n// }\r\n const address = [];\r\n address.push({\r\n address: this.serviceAddress.value.addressLine1,\r\n addressLine2:this.serviceAddress.value.addressLine2,\r\n city: this.serviceAddress.value.city,\r\n state: this.serviceAddress.value.state,\r\n zipcode: this.serviceAddress.value.zipcode,\r\n type: COMMON_CONSTANTS.ADDRESS_TYPE_SERVICE,\r\n addressId: this.isEdit ? serviceAddressId && serviceAddressId.addressId : null,\r\n placeId: this.serviceAddress.value.placeId,\r\n formattedAddress: this.serviceAddress.value.formattedAddress,\r\n propertyUnitLocation:this.serviceAddress.value.unitNo,\r\n });\r\n\r\n if (this.billingAddress.value.addressLine1) {\r\n address.push({\r\n address: this.billingAddress.value.addressLine1,\r\n addressLine2: this.billingAddress.value.addressLine2,\r\n city: this.billingAddress.value.city,\r\n state: this.billingAddress.value.state,\r\n zipcode: this.billingAddress.value.zipcode,\r\n type: COMMON_CONSTANTS.ADDRESS_TYPE_BILLING,\r\n addressId: this.isEdit ? billingAddressId && billingAddressId.addressId : null,\r\n placeId: this.billingAddress.value.placeId,\r\n formattedAddress: this.billingAddress.value.formattedAddress,\r\n propertyUnitLocation:this.billingAddress.value.unitNo,\r\n });\r\n }\r\n return address;\r\n }\r\n\r\n handleFetchValueFromId(key: string, id: any) {\r\n let selectedValue;\r\n if (this.HVACInformationList && this.HVACInformationList[key] &&\r\n this.HVACInformationList[key].length) {\r\n selectedValue = this.HVACInformationList[key].find((currentValue: TypeList) => currentValue.id.toString() === (id && id.toString()));\r\n }\r\n return selectedValue;\r\n }\r\n\r\n handleParseIndoorEquipment(isEditPayload: boolean, indoorValue, index) {\r\n let indoorList;\r\n // if (this.indoorEquipment && this.indoorEquipment.value &&\r\n // this.indoorEquipment.value.length) {\r\n // this.indoorEquipment.value.map((indoorValue, index) => {\r\n // if (indoorValue.serialNumber) {\r\n if (isEditPayload) {\r\n indoorList =\r\n {\r\n // assetUnitName: this.indoorEquipment && value.assetUnitName,\r\n assetUnitType: 'indoor',\r\n assetUnitSerialNumber: indoorValue.serialNumber,\r\n // manufacturerId: 2,\r\n // assetUnitModel: {\r\n // assetModelInfoId: null,\r\n // modelNo: null\r\n // },\r\n index: index + 1,\r\n assetModelInfo: {\r\n locations: this.handleFetchValueFromId('locationsList', indoorValue.location),\r\n modelNo: indoorValue.modelNo,\r\n ratedElectricStripCapacity: indoorValue.ratedElectricStripCapacity,\r\n // equipmentId: indoorValue.equipment.value,\r\n indoorEquipmentType: this.handleFetchValueFromId('indoorEquipmentTypeList', indoorValue.deviceType),\r\n systemConfiguration: this.handleFetchValueFromId('systemConfigurationList', indoorValue.systemConfiguration),\r\n indoorEquipmentMake: this.handleFetchValueFromId('indoorEquipmentMakeList', indoorValue.make),\r\n variableSpeedBlower: this.handleFetchValueFromId('variableSpeedBlowerList', indoorValue.variableSpeedBlower),\r\n zonedSystem: this.handleFetchValueFromId('zonedSystemList', indoorValue.zonedSystem),\r\n filterType: this.handleFetchValueFromId('filterTypeList', indoorValue.filterType),\r\n filterLength: this.handleFetchValueFromId('filterLenghtList', indoorValue.filterLength),\r\n filterWidth: this.handleFetchValueFromId('filterWidthList', indoorValue.filterWidth),\r\n filterThickness: this.handleFetchValueFromId('filterThicknessList', indoorValue.filterThickness),\r\n meteringDevice: this.handleFetchValueFromId('meteringDeviceList', indoorValue.meteringDevice),\r\n // nomicalAcCapacityId: value.,\r\n indoorMultiStage: this.handleFetchValueFromId('indoorMultiStageList', indoorValue.multiStage),\r\n refigerantType: this.handleFetchValueFromId('indoorRefigerantTypeList', indoorValue.refigerantType),\r\n // seerId: value.,\r\n heatType: this.handleFetchValueFromId('indoorHeatTypeList', indoorValue.heatType),\r\n fuelType: this.handleFetchValueFromId('indoorFuelTypeList', indoorValue.fuelType),\r\n ratedCapacity: this.handleFetchValueFromId('indoorRatedCapacityList', indoorValue.ratedCapacity),\r\n equipmentIs: this.handleFetchValueFromId('isEquipmentList',\r\n indoorValue.equipmentIs),\r\n },\r\n // assetUnitParameters: [\r\n // // {\r\n // // unitParameterName:Fuel,\r\n // // unitParameterValue:78\r\n // // },\r\n // // {\r\n // // unitParameterName:Metering Device,\r\n // // unitParameterValue:78\r\n // // }\r\n // ]\r\n }\r\n\r\n } else {\r\n // let assetUnitTypeId;\r\n // let assetModelInfoId;\r\n // if (this.isEdit && this.editCustomerData && this.editCustomerData.assetDetails &&\r\n // this.editCustomerData.assetDetails.length) {\r\n // assetUnitTypeId = this.editCustomerData.assetDetails[0].assetUnitTypeId;\r\n // assetModelInfoId = this.editCustomerData.assetDetails[0].assetModelInfo.assetModelInfoId;\r\n // }\r\n const deviceTypeValue = this.handleFetchValueFromId('indoorEquipmentTypeList', indoorValue.deviceType);\r\n indoorList =\r\n {\r\n // assetUnitName: this.indoorEquipment && indoorValue.assetUnitName,\r\n assetUnitType: 'indoor',\r\n assetUnitSerialNumber: indoorValue.serialNumber,\r\n // manufacturerId: 2,\r\n // assetUnitModel: {\r\n // assetModelInfoId: null,\r\n // modelNo: null\r\n // },\r\n assetUnitTypeId: this.isEdit ? indoorValue && indoorValue.unitTypeId : null,\r\n assetUnitUniqueId: this.isEdit ? indoorValue && indoorValue.assetUnitUniqueId : null,\r\n assetModelInfo: {\r\n locationId: indoorValue.location,\r\n assetModelInfoId: this.isEdit ? indoorValue && indoorValue.assetModelInfoId : null,\r\n modelNo: indoorValue.modelNo,\r\n ratedElectricStripCapacity: indoorValue.ratedElectricStripCapacity,\r\n // equipmentId: indoorValue.equipment.id,\r\n indoorEquipmentTypeId: indoorValue.deviceType,\r\n systemConfigurationId: indoorValue.systemConfiguration,\r\n indoorEquipmentMakeId: indoorValue.make,\r\n variableSpeedBlowerId: indoorValue.variableSpeedBlower,\r\n zonedSystemId: indoorValue.zonedSystem,\r\n filterTypeId: indoorValue.filterType,\r\n filterLengthId: indoorValue.filterLength,\r\n filterWidthId: indoorValue.filterWidth,\r\n filterThicknessId: indoorValue.filterThickness,\r\n meteringDeviceId: indoorValue.meteringDevice,\r\n // nomicalAcCapacityId: indoorValue.,\r\n indoorMultiStageId: indoorValue.multiStage,\r\n refigerantTypeId: indoorValue.refigerantType,\r\n // seerId: indoorValue.,\r\n heatingTypeId: indoorValue.heatType,\r\n fuelTypeId: indoorValue.fuelType,\r\n ratedCapacityId: indoorValue.ratedCapacity,\r\n isEquipmentId: indoorValue.equipmentIs,\r\n deviceType: deviceTypeValue && deviceTypeValue.value\r\n },\r\n // assetUnitParameters: [\r\n // // {\r\n // // unitParameterName:Fuel,\r\n // // unitParameterValue:78\r\n // // },\r\n // // {\r\n // // unitParameterName:Metering Device,\r\n // // unitParameterValue:78\r\n // // }\r\n // ]\r\n }\r\n\r\n }\r\n // }\r\n // });\r\n // }\r\n\r\n return indoorList;\r\n }\r\n\r\n handleParseOutdoorEquipment(isEditPayload: boolean, outdoorValue, indoorValue, index) {\r\n let oudoorList;\r\n // if (this.outdoorEquipment && this.outdoorEquipment.value &&\r\n // this.outdoorEquipment.value.length) {\r\n // this.outdoorEquipment.value.map((outdoorValue, index) => {\r\n if (isEditPayload) {\r\n oudoorList =\r\n {\r\n // assetUnitName: this.outdoorEquipment && value.assetUnitName,\r\n assetUnitType: 'outdoor',\r\n assetUnitSerialNumber: outdoorValue.serialNumber,\r\n // assetUnitSerialNumber: this.outdoorEquipment && value.serialNumber,\r\n // manufacturerId: 2,\r\n // assetUnitModel: {\r\n // assetModelInfoId: null,\r\n // modelNo: null\r\n // },\r\n index: index + 1,\r\n assetModelInfo: {\r\n // equipmentId: this.indoorEquipment.value[index].equipment.value,\r\n outdoorEquipmentMake: this.handleFetchValueFromId('outdoorEquipmentMakeList',\r\n outdoorValue.make),\r\n modelNo: outdoorValue.modelNo,\r\n // variableSpeedBlower: this.handleFetchValueFromId('variableSpeedBlowerList',\r\n // this.indoorEquipment.value[index].variableSpeedBlower),\r\n // zonedSystem: this.handleFetchValueFromId('zonedSystemList',\r\n // this.indoorEquipment.value[index].zonedSystem),\r\n // filterType: this.handleFetchValueFromId('filterTypeList',\r\n // this.indoorEquipment.value[index].filterType),\r\n // filterLength: this.handleFetchValueFromId('filterLenghtList',\r\n // this.indoorEquipment.value[index].filterLength),\r\n // filterWidth: this.handleFetchValueFromId('filterWidthList',\r\n // this.indoorEquipment.value[index].filterWidth),\r\n // filterThickness: this.handleFetchValueFromId('filterThicknessList',\r\n // this.indoorEquipment.value[index].filterThickness),\r\n // meteringDevice: this.handleFetchValueFromId('meteringDeviceList',\r\n // this.indoorEquipment.value[index].meteringDevice),\r\n outdoorNominalACCapacity: this.handleFetchValueFromId('outdoorNominalACCapacityList',\r\n outdoorValue.nominalACCapacity),\r\n outdoorMultiStage: this.handleFetchValueFromId('outdoorMultistageList',\r\n outdoorValue.multiStage),\r\n // refigerantType: this.handleFetchValueFromId('indoorRefigerantTypeList',\r\n // outdoorValue.refigerantType),\r\n outdoorSeer: this.handleFetchValueFromId('outdoorSeerList',\r\n outdoorValue.seer),\r\n outdoorEquipmentType: this.handleFetchValueFromId('outdoorEquipmentTypeList',\r\n outdoorValue.deviceType),\r\n equipmentIs: this.handleFetchValueFromId('isEquipmentList',\r\n outdoorValue.equipmentIs),\r\n outdoorInverterCompressor: this.handleFetchValueFromId('outdoorInverterCompressorList',\r\n outdoorValue.inverterCompresser),\r\n },\r\n // assetUnitParameters: [\r\n // // {\r\n // // unitParameterName:Tonnage,\r\n // // unitParameterValue:100\r\n // // },\r\n // // {\r\n // // unitParameterName:CustomLabel,\r\n // // unitParameterValue:CustomValue\r\n // // }\r\n // ]\r\n }\r\n\r\n } else {\r\n // let assetUnitTypeId;\r\n // let assetModelInfoId;\r\n // if (this.isEdit && this.editCustomerData && this.editCustomerData.assetDetails &&\r\n // this.editCustomerData.assetDetails.length >= 2) {\r\n // assetUnitTypeId = this.editCustomerData.assetDetails[1].assetUnitTypeId;\r\n // assetModelInfoId = this.editCustomerData.assetDetails[1].assetModelInfo.assetModelInfoId;\r\n // }\r\n const deviceTypeValue = this.handleFetchValueFromId('typeList', outdoorValue.deviceType);\r\n oudoorList =\r\n {\r\n // assetUnitName: this.outdoorEquipment && value.assetUnitName,\r\n assetUnitType: 'outdoor',\r\n assetUnitSerialNumber: outdoorValue.serialNumber,\r\n // manufacturerId: 2,\r\n // assetUnitModel: {\r\n // assetModelInfoId: null,\r\n // modelNo: null\r\n // },\r\n assetUnitTypeId: this.isEdit ? outdoorValue && outdoorValue.unitTypeId : null,\r\n assetUnitUniqueId: this.isEdit ? indoorValue && indoorValue.assetUnitUniqueId : null,\r\n assetModelInfo: {\r\n locationId: indoorValue.location,\r\n assetModelInfoId: this.isEdit ? outdoorValue && outdoorValue.assetModelInfoId : null,\r\n modelNo: outdoorValue.modelNo,\r\n // equipmentId: this.indoorEquipment.value[index].equipment,\r\n outdoorEquipmentMakeId: outdoorValue.make,\r\n // variableSpeedBlowerId: this.indoorEquipment.value[index].variableSpeedBlower,\r\n // zonedSystemId: this.indoorEquipment.value[index].zonedSystem,\r\n // filterTypeId: this.indoorEquipment.value[index].filterType,\r\n // filterLengthId: this.indoorEquipment.value[index].filterLength,\r\n // filterWidthId: this.indoorEquipment.value[index].filterWidth,\r\n // filterThicknessId: this.indoorEquipment.value[index].filterThickness,\r\n // meteringDeviceId: this.indoorEquipment.value[index].meteringDevice,\r\n nomicalAcCapacityId: outdoorValue.nominalACCapacity,\r\n outdoorMultiStageId: outdoorValue.multiStage,\r\n // refigerantTypeId: outdoorValue.refigerantType,\r\n seerId: outdoorValue.seer,\r\n outdoorEquipmentTypeId: outdoorValue.deviceType,\r\n isEquipmentId: outdoorValue.equipmentIs,\r\n deviceType: deviceTypeValue && deviceTypeValue.value,\r\n isOutdoorInverterId: outdoorValue.inverterCompresser\r\n },\r\n // assetUnitParameters: [\r\n // // {\r\n // // unitParameterName:Tonnage,\r\n // // unitParameterValue:100\r\n // // },\r\n // // {\r\n // // unitParameterName:CustomLabel,\r\n // // unitParameterValue:CustomValue\r\n // // }\r\n // ]\r\n }\r\n\r\n }\r\n // });\r\n // }\r\n\r\n return oudoorList;\r\n }\r\n\r\n\r\n handleParseHVACEquipment(isCreateButtonClicked: boolean) {\r\n let equipmentList = [];\r\n if (this.hvacEquipments && this.hvacEquipments.value &&\r\n this.hvacEquipments.value.length) {\r\n this.hvacEquipments.value.map((value, index) => {\r\n if (value && value.length) {\r\n equipmentList.push(this.handleParseIndoorEquipment(isCreateButtonClicked, value[0], index));\r\n }\r\n if (value && value.length > 1) {\r\n equipmentList.push(this.handleParseOutdoorEquipment(isCreateButtonClicked, value[1], value[0], index));\r\n }\r\n });\r\n }\r\n return equipmentList;\r\n }\r\n\r\n handleHasCustomerId() {\r\n \r\n if (this.isEdit) {\r\n if(this.editCustomerData && this.editCustomerData.consumerId){\r\n return this.editCustomerData && this.editCustomerData.consumerId;\r\n }\r\n \r\n if(this.editCustomerData && this.editCustomerData.customerId){\r\n return this.editCustomerData && this.editCustomerData.customerId;\r\n }\r\n } else if (this.currentCustomerId) {\r\n return this.currentCustomerId;\r\n }\r\n return null;\r\n }\r\n\r\n handleHasAwsCustomerId() {\r\n if (this.isEdit) {\r\n return this.editCustomerData && this.editCustomerData.awsConsumerId;\r\n } else if (this.currentAwsCustomerId) {\r\n return this.currentAwsCustomerId;\r\n }\r\n return null;\r\n }\r\n handleAssetId(){\r\n // debugger\r\n if (this.isEdit) {\r\n \r\n return this.editCustomerData && this.editCustomerData.assetId?this.editCustomerData.assetId:this.assetId; \r\n \r\n \r\n }\r\n return null;\r\n \r\n }\r\n parseCreateCustomerPayload(isCreateButtonClicked: boolean, isModalNeedToBeClosed?: boolean) {\r\n const hvacData = this.handleParseHVACEquipment(!isCreateButtonClicked);\r\n // const indoorList = this.handleParseIndoorEquipment(!isCreateButtonClicked);\r\n // const outdoorList = this.handleParseOutdoorEquipment(!isCreateButtonClicked);\r\n\r\n // const indoorAbstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // const outdoorAbstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n const payload: any = {\r\n addresses: this.handleParseAddresses(),\r\n consumerFirstName: this.customerType==CUSTOMER_TYPES.RESIDENTIAL?this.createConsumer.value.consumerFirstName && this.createConsumer.value.consumerFirstName.trim():null,\r\n consumerLastName: this.customerType==CUSTOMER_TYPES.RESIDENTIAL?this.createConsumer.value.consumerLastName && this.createConsumer.value.consumerLastName.trim():null,\r\n companyName:this.customerType==CUSTOMER_TYPES.COMPANY?this.createConsumer.value.companyName&& this.createConsumer.value.companyName.trim():null,\r\n consumerType:this.customerType?this.customerType:CUSTOMER_TYPES.RESIDENTIAL,\r\n // email: [\r\n // {\r\n // email: this.createConsumer.getRawValue().primaryEmail,\r\n // type: COMMON_CONSTANTS.EMAIL_PRIMARY\r\n // }\r\n // ],\r\n phone: this.createConsumer.value.phone,\r\n // serialNo: this.createConsumer.value.serialNumber,\r\n // assetName: this.createConsumer.value.assetName,\r\n // model: {\r\n // assetModelInfoId: null,\r\n // modelNo: null\r\n // }\r\n consumerId: this.handleHasCustomerId(),\r\n awsConsumerId: this.handleHasAwsCustomerId(),\r\n assetId: this.handleAssetId(),\r\n assetDetails: [\r\n // ...indoorList,\r\n // ...outdoorList\r\n ...hvacData\r\n ]\r\n\r\n };\r\n\r\n if (this.createConsumer.getRawValue().primaryEmail) {\r\n if (payload && payload.email) {\r\n payload.email.push(\r\n {\r\n email: this.createConsumer.getRawValue().primaryEmail,\r\n type: COMMON_CONSTANTS.EMAIL_PRIMARY\r\n }\r\n );\r\n } else {\r\n payload['email'] = [\r\n {\r\n email: this.createConsumer.getRawValue().primaryEmail,\r\n type: COMMON_CONSTANTS.EMAIL_PRIMARY\r\n }\r\n ];\r\n }\r\n }\r\n\r\n if (this.createConsumer.value.secondaryEmail) {\r\n if (payload && payload.email) {\r\n payload.email.push(\r\n {\r\n email: this.createConsumer.value.secondaryEmail,\r\n type: COMMON_CONSTANTS.EMAIL_SECONDARY\r\n }\r\n );\r\n } else {\r\n payload['email'] = [\r\n {\r\n email: this.createConsumer.value.secondaryEmail,\r\n type: COMMON_CONSTANTS.EMAIL_SECONDARY\r\n }\r\n ];\r\n }\r\n }\r\n\r\n if (this.isEdit) {\r\n\r\n if (this.editCustomerData.phone && this.editCustomerData.phone.length) {\r\n this.editCustomerData.phone.map((value, index) => {\r\n // payload.phone[index].id = this.editCustomerData.phone[index].id;\r\n // payload.phone[index].countryCode = this.editCustomerData.phone[index].countryCode;\r\n payload.phone[index].phoneId = this.editCustomerData.phone[index].phoneId;\r\n });\r\n }\r\n\r\n const primaryEmailId = this.helperService.handleEmailSelection(\r\n this.editCustomerData && this.editCustomerData.email, COMMON_CONSTANTS.EMAIL_PRIMARY);\r\n\r\n const secondaryEmailId = this.helperService.handleEmailSelection(\r\n this.editCustomerData && this.editCustomerData.email, COMMON_CONSTANTS.EMAIL_SECONDARY);\r\n\r\n if (payload && payload.email && payload.email.length) {\r\n payload.email.map((value, index) => {\r\n if (value.type === COMMON_CONSTANTS.EMAIL_PRIMARY && primaryEmailId && primaryEmailId.emailId) {\r\n payload.email[index].emailId = primaryEmailId.emailId;\r\n } else if (value.type === COMMON_CONSTANTS.EMAIL_SECONDARY && secondaryEmailId && secondaryEmailId.emailId) {\r\n payload.email[index].emailId = secondaryEmailId.emailId;\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n // payload.assetDetails[0].assetUnitParameters.push(\r\n // {\r\n // unitParameterName: 'fuel',\r\n // unitParameterValue: this.indoorEquipment.value.fuel\r\n // },\r\n // {\r\n // unitParameterName: 'coilOrHeatKit',\r\n // unitParameterValue: this.indoorEquipment.value.coilOrHeatKit\r\n // },\r\n // {\r\n // unitParameterName: 'meteringDevice',\r\n // unitParameterValue: this.indoorEquipment.value.meteringDevice\r\n // },\r\n // {\r\n // unitParameterName: 'type',\r\n // // unitParameterValue: this.indoorEquipment.getRawValue().deviceType\r\n // },\r\n // {\r\n // unitParameterName: 'make',\r\n // unitParameterValue: this.indoorEquipment.value.make\r\n // }\r\n // );\r\n\r\n // if (this.indoorCustomFieldsList && this.indoorCustomFieldsList.length) {\r\n\r\n // this.indoorCustomFieldsList.map((keyName, index) => {\r\n // payload.assetDetails[0].assetUnitParameters.push({\r\n // unitParameterName: keyName,\r\n // unitParameterValue: this.indoorEquipment.value[keyName]\r\n // });\r\n // });\r\n // }\r\n\r\n // payload.assetDetails[1].assetUnitParameters.push(\r\n // {\r\n // unitParameterName: 'tonnage',\r\n // unitParameterValue: this.outdoorEquipment.value.tonnage\r\n // },\r\n // {\r\n // unitParameterName: 'type',\r\n // // unitParameterValue: this.outdoorEquipment.getRawValue().deviceType\r\n // },\r\n // {\r\n // unitParameterName: 'make',\r\n // unitParameterValue: this.outdoorEquipment.value.make\r\n // }\r\n // );\r\n\r\n // if (this.outdoorCustomFieldsList && this.outdoorCustomFieldsList.length) {\r\n\r\n // this.outdoorCustomFieldsList.map((keyName, index) => {\r\n // payload.assetDetails[1].assetUnitParameters.push({\r\n // unitParameterName: keyName,\r\n // unitParameterValue: this.outdoorEquipment.value[keyName]\r\n // });\r\n // });\r\n // }\r\n\r\n // this.handleParsePhonePayload(this.createConsumer.value.phone)\r\n\r\n // if (this.isIndoorEquipmentCustomModal || this.isOutdoorEquipmentCustomModal) {\r\n // if (this.isIndoorEquipmentCustomModal) {\r\n\r\n // const assetModelPayload = [\r\n // {\r\n // // brochureLink: this.createConsumer.value.brochureLink,\r\n // deviceType: this.indoorEquipment && this.indoorEquipment.value.deviceType,\r\n // modelNo: this.indoorEquipment && this.indoorEquipment.value.modelNo\r\n // }\r\n // ];\r\n // // this.createAssetModel(assetModelPayload, payload);\r\n // }\r\n\r\n // if (this.isOutdoorEquipmentCustomModal) {\r\n\r\n // const assetModelPayload = [\r\n // {\r\n // // brochureLink: this.createConsumer.value.brochureLink,\r\n // deviceType: this.outdoorEquipment && this.outdoorEquipment.value.deviceType,\r\n // modelNo: this.outdoorEquipment && this.outdoorEquipment.value.modelNo\r\n // }\r\n // ];\r\n // // this.createAssetModel(assetModelPayload, payload);\r\n // }\r\n // } else {\r\n // payload.assetDetails[0].assetUnitModel.assetModelInfoId =\r\n // this.selectedIndoorAssetModel && this.selectedIndoorAssetModel.id ?\r\n // this.selectedIndoorAssetModel.id : '';\r\n // payload.assetDetails[0].assetUnitModel.modelNo = this.selectedIndoorAssetModel &&\r\n // this.selectedIndoorAssetModel.modelNo;\r\n\r\n // payload.assetDetails[1].assetUnitModel.assetModelInfoId =\r\n // this.selectedOutdoorAssetModel && this.selectedOutdoorAssetModel.id ?\r\n // this.selectedOutdoorAssetModel.id : '';\r\n // payload.assetDetails[1].assetUnitModel.modelNo = this.selectedOutdoorAssetModel &&\r\n // this.selectedOutdoorAssetModel.modelNo;\r\n\r\n\r\n if (!isCreateButtonClicked) {\r\n this.editCustomerDataCopy = payload;\r\n }\r\n\r\n if (isCreateButtonClicked) {\r\n this.createCustomer(payload, isModalNeedToBeClosed);\r\n }\r\n // }\r\n\r\n this.createCustomerPayload = payload;\r\n }\r\n\r\n handleFormValidation(flag: string) {\r\n if (flag === 'create-customer') {\r\n // if (this.createConsumer.valid) {\r\n // this.handleModalType('customer-profile');\r\n // // this.createCustomer();\r\n // } else {\r\n // this.createConsumer.markAllAsTouched();\r\n // this.helperService.scrollToFirstInvalidControl(this.createConsumer, this.elementRef.nativeElement);\r\n // }\r\n \r\n if (this.createConsumer.valid) {\r\n // this.isEnableSubmit=false\r\n if (this.createConsumer && this.createConsumer.get('primaryEmail') &&\r\n this.createConsumer.get('primaryEmail').value &&\r\n this.createConsumer.get('primaryEmail').value.trim()) {\r\n if (this.isEdit && this.editCustomerData && this.editCustomerData.email &&\r\n this.editCustomerData.email.length && this.editCustomerData.email[0].email ===\r\n this.createConsumer.get('primaryEmail').value) {\r\n if(this.createConsumer.get('secondaryEmail').value && this.createConsumer.get('secondaryEmail').value==this.createConsumer.get('primaryEmail').value)\r\n {\r\n this.handleModalType('customer-emails-same');\r\n }else{\r\n this.handleModalType('customer-profile');\r\n }\r\n \r\n } else {\r\n if(this.createConsumer.get('secondaryEmail').value!=\"\" && this.createConsumer.get('secondaryEmail').value==this.createConsumer.get('primaryEmail').value)\r\n {\r\n this.handleModalType('customer-emails-same');\r\n }\r\n else\r\n {\r\n let queryParams = {\r\n email: this.createConsumer.get('primaryEmail').value.trim(),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n \r\n this.sharedService.checkIsEmailAlreadyExists(queryParams).subscribe(\r\n (response: IsEmailAlreadyExistsResponse) => {\r\n this.isCreateCustomerBtnLoading = true;\r\n if (response && response.isEmailAlreadyExistsResponseDetails &&\r\n response.isEmailAlreadyExistsResponseDetails.isExists) {\r\n this.isCreateCustomerBtnLoading = false;\r\n this.handleModalType('customer-exist-confimation');\r\n } else {\r\n // this.handleModalType('contractor-profile');\r\n \r\n this.handleModalType('customer-profile');\r\n\r\n }\r\n // this.isCreateCustomerBtnLoading = false;\r\n }, (error) => {\r\n this.isCreateCustomerBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n }\r\n }\r\n else\r\n {\r\n this.handleModalType('customer-profile');\r\n }\r\n } else {\r\n this.createConsumer.markAllAsTouched();\r\n this.helperService.scrollToFirstInvalidControl(this.createConsumer, this.elementRef.nativeElement);\r\n }\r\n }\r\n }\r\n\r\n handleAutoSaveCustomer() {\r\n if (this.createConsumer.get('consumerFirstName').valid &&\r\n this.createConsumer.get('consumerLastName').valid &&\r\n this.createConsumer.get('primaryEmail').valid &&\r\n this.createConsumer.get('secondaryEmail').valid &&\r\n this.phone.valid && this.serviceAddress.valid &&\r\n this.billingAddress.valid\r\n ) {\r\n this.parseCreateCustomerPayload(true);\r\n }\r\n }\r\n\r\n handleCancelCreateCustomer() {\r\n if (this.createCustomerSubscription) {\r\n this.createCustomerSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n handleResetCustomerId() {\r\n this.currentCustomerId = null;\r\n }\r\nhandleEmailValidity(){\r\n \r\n}\r\n createCustomer(payload, isModalNeedToBeClosed?: boolean) {\r\n this.handleCancelCreateCustomer();\r\n this.isCreateCustomerBtnLoading = true;\r\n let queryParams = {\r\n email: this.createConsumer.get('primaryEmail').value.trim(),\r\n userPoolId: this.helperService.handleBaseUrl(BASE_URL_TYPES.USER_POOL_ID)\r\n };\r\n this.createCustomerSubscription = this.contractorSharedService.createConsumer(payload).subscribe(\r\n (response: CreateCustomerResponse) => {\r\n // this.router.navigate(['/customers']);\r\n // this.helperService.setSelectedTab('customers');\r\n this.isCreateCustomerBtnLoading = false;\r\n if (this.currentCustomerId || this.isEdit || isModalNeedToBeClosed) {\r\n this.closeModal();\r\n }\r\n this.currentCustomerId = response && response.createCustomer &&\r\n response.createCustomer.customerId;\r\n this.currentAwsCustomerId = response && response.createCustomer &&\r\n response.createCustomer.awsConsumerId;\r\n this.helperService.showToaster(ToasterType.SUCCESS, response.statusInfo);\r\n this.emitHandleRefreshPage.emit();\r\n }, (error) => {\r\n // this.closeModal();\r\n this.isCreateCustomerBtnLoading = false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n \r\n }\r\n\r\n createAssetModel(payload, createCustomerPayload) {\r\n // this.contractorSharedService.createAssetModel(payload).subscribe(\r\n // (response: CreateAssetModelResponse) => {\r\n // createCustomerPayload.model.assetModelInfoId = response.AssetModelList[0].id;\r\n // createCustomerPayload.model.modelNo = response.AssetModelList[0].modelNo;\r\n // this.createCustomerPayload = createCustomerPayload;\r\n // this.createCustomer(createCustomerPayload);\r\n // }, (error) => {\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n }\r\n\r\n getAssetModalList() {\r\n // this.contractorSharedService.getAssetModalList().subscribe(\r\n // (response: AssetModelResponse) => {\r\n // this.assetModelList = response.AssetModelList;\r\n // // this.setDefaultValueForModel(response.AssetModelList);\r\n // this.handleDeviceTypeList();\r\n // }, (error) => {\r\n\r\n // }\r\n // );\r\n }\r\n\r\n handleDeviceTypeList() {\r\n // if (this.assetModelList && this.assetModelList.length) {\r\n // this.assetModelList.map((value, index) => {\r\n // if (this.deviceTypeList.indexOf(value.deviceType) === -1) {\r\n // this.deviceTypeList.push(value.deviceType);\r\n // }\r\n // });\r\n // }\r\n }\r\n\r\n // setDefaultValueForModel(assetModelList: AssetModel[]) {\r\n\r\n // if (assetModelList && assetModelList.length) {\r\n // // const indoorAbstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (this.indoorEquipment) {\r\n // (this.indoorEquipment).controls.model.setValue(assetModelList[0].id);\r\n // (this.indoorEquipment).controls.deviceType.setValue(assetModelList[0].deviceType);\r\n // // (this.indoorEquipment).controls.make.setValue(assetModelList[0].deviceType);\r\n // }\r\n // this.selectedIndoorAssetModel = assetModelList[0];\r\n\r\n // // const outdoorAbstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (this.outdoorEquipment) {\r\n // (this.outdoorEquipment).controls.model.setValue(assetModelList[0].id);\r\n // (this.outdoorEquipment).controls.deviceType.setValue(assetModelList[0].deviceType);\r\n // // (this.outdoorEquipment).controls.make.setValue(assetModelList[0].deviceType);\r\n // }\r\n // this.selectedOutdoorAssetModel = assetModelList[0];\r\n // }\r\n // }\r\n\r\n // handleModelOnChange(flag: string) {\r\n\r\n // if (flag === 'indoorEquipment') {\r\n // const selectedAssetModelId = this.createConsumer.value.indoorEquipment.model;\r\n // if (selectedAssetModelId !== 'Custom' && this.assetModelList && this.assetModelList.length) {\r\n // this.assetModelList.map((value, index) => {\r\n // if (value.id.toString() === selectedAssetModelId) {\r\n // this.selectedIndoorAssetModel = value;\r\n // }\r\n // });\r\n // this.isIndoorEquipmentCustomModal = false;\r\n // this.handleFormValidators();\r\n // } else if (selectedAssetModelId) {\r\n // this.isIndoorEquipmentCustomModal = true;\r\n // this.selectedIndoorAssetModel = null;\r\n // this.handleFormValidators();\r\n // }\r\n // } else if (flag === 'outdoorEquipment') {\r\n // const selectedAssetModelId = this.createConsumer.value.outdoorEquipment.model;\r\n // if (selectedAssetModelId !== 'Custom' && this.assetModelList && this.assetModelList.length) {\r\n // this.assetModelList.map((value, index) => {\r\n // if (value.id.toString() === selectedAssetModelId) {\r\n // this.selectedOutdoorAssetModel = value;\r\n // }\r\n // });\r\n // this.isOutdoorEquipmentCustomModal = false;\r\n // this.handleFormValidators();\r\n // } else if (selectedAssetModelId) {\r\n // this.isOutdoorEquipmentCustomModal = true;\r\n // this.selectedOutdoorAssetModel = null;\r\n // this.handleFormValidators();\r\n // }\r\n\r\n // }\r\n\r\n // this.setTypeAndModelValue(flag);\r\n\r\n // }\r\n\r\n\r\n handleAddCustomFieldsButton(flag: string) {\r\n\r\n // if (flag === 'indoorEquipment') {\r\n // this.toggleIndoorEquipmentCustomField();\r\n // } else if (flag === 'outdoorEquipment') {\r\n // this.toggleOutdoorEquipmentCustomField();\r\n // }\r\n\r\n }\r\n\r\n // handleCreateCustomFields(flag: string) {\r\n\r\n // if (flag === 'indoorEquipment') {\r\n // const isExist = this.handleIsAlreadyFieldExist(flag, this.createIndoorEquipmentCustomFields.value);\r\n // if (!isExist) {\r\n // this.toggleIndoorEquipmentCustomField();\r\n\r\n // // const indoorAbstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (this.indoorEquipment) {\r\n // (this.indoorEquipment).addControl(this.createIndoorEquipmentCustomFields.value,\r\n // new FormControl('', Validators.required));\r\n // }\r\n\r\n // const controlName = this.createIndoorEquipmentCustomFields.value;\r\n // this.indoorCustomFieldsList.push(controlName);\r\n // this.isIndoorFieldAlreadyExist = false;\r\n // this.handleClearCreateIndoorEquipmentCustomFieldValue();\r\n // }\r\n // } else if (flag === 'outdoorEquipment') {\r\n // const isExist = this.handleIsAlreadyFieldExist(flag, this.createOutdoorEquipmentCustomFields.value);\r\n // if (!isExist) {\r\n // this.toggleOutdoorEquipmentCustomField();\r\n\r\n // // const outdoorAbstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (this.outdoorEquipment) {\r\n // (this.outdoorEquipment ).addControl(this.createOutdoorEquipmentCustomFields.value,\r\n // new FormControl('', Validators.required));\r\n // }\r\n\r\n // const controlName = this.createOutdoorEquipmentCustomFields.value;\r\n // this.outdoorCustomFieldsList.push(controlName);\r\n // this.isOutdoorFieldAlreadyExist = false;\r\n // this.handleClearCreateOutdoorEquipmentCustomFieldValue();\r\n // }\r\n // }\r\n // }\r\n\r\n\r\n // handleDeleteCustomFields(flag: string, index: number) {\r\n // if (flag === 'indoorEquipment' && this.indoorCustomFieldsList && this.indoorCustomFieldsList.length) {\r\n // const name = this.indoorCustomFieldsList[index];\r\n // this.indoorCustomFieldsList.splice(index, 1);\r\n // if (name) {\r\n // // const indoorAbstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (this.indoorEquipment) {\r\n // (this.indoorEquipment ).removeControl(name);\r\n // }\r\n // }\r\n // } else if (flag === 'outdoorEquipment' && this.outdoorCustomFieldsList && this.outdoorCustomFieldsList.length) {\r\n // const name = this.outdoorCustomFieldsList[index];\r\n // this.outdoorCustomFieldsList.splice(index, 1);\r\n // if (name) {\r\n // // const outdoorAbstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (this.outdoorEquipment) {\r\n // (this.outdoorEquipment ).removeControl(name);\r\n // }\r\n // }\r\n // }\r\n // }\r\n\r\n handleIsAlreadyFieldExist(flag: string, currentFieldName) {\r\n // if (flag === 'indoorEquipment') {\r\n // // const indoorAbstractControl: AbstractControl = this.createConsumer.get('indoorEquipment');\r\n // if (this.indoorEquipment) {\r\n // let keys = Object.keys((this.indoorEquipment).value);\r\n // keys = keys.map((value) => value.toLowerCase());\r\n // if (keys.includes(currentFieldName.toLowerCase())) {\r\n // this.isIndoorFieldAlreadyExist = true;\r\n // return true;\r\n // }\r\n // }\r\n // } else if (flag === 'outdoorEquipment') {\r\n // // const outdoorAbstractControl: AbstractControl = this.createConsumer.get('outdoorEquipment');\r\n // if (this.outdoorEquipment) {\r\n // let keys = Object.keys((this.outdoorEquipment).value);\r\n // keys = keys.map((value) => value.toLowerCase());\r\n // if (keys.includes(currentFieldName.toLowerCase())) {\r\n // this.isOutdoorFieldAlreadyExist = true;\r\n // return true;\r\n // }\r\n // }\r\n // }\r\n // return false;\r\n }\r\n\r\n handleOnchangeCustomField(flag: string) {\r\n // if (flag === 'indoorEquipment') {\r\n // this.isIndoorFieldAlreadyExist = false;\r\n // } else if (flag === 'outdoorEquipment') {\r\n // this.isOutdoorFieldAlreadyExist = false;\r\n // }\r\n }\r\n\r\n toggleIndoorEquipmentCustomField() {\r\n this.isShowIndoorEquipmentCustomField = !this.isShowIndoorEquipmentCustomField;\r\n }\r\n\r\n handleClearCreateIndoorEquipmentCustomFieldValue() {\r\n this.createIndoorEquipmentCustomFields.patchValue('');\r\n }\r\n\r\n toggleOutdoorEquipmentCustomField() {\r\n this.isShowOutdoorEquipmentCustomField = !this.isShowOutdoorEquipmentCustomField;\r\n }\r\n\r\n handleClearCreateOutdoorEquipmentCustomFieldValue() {\r\n this.createOutdoorEquipmentCustomFields.patchValue('');\r\n }\r\n\r\n handlePatchPhoneCodeDropdown() {\r\n this.createConsumer.patchValue({\r\n phone: [{\r\n countryCode: this.helperService.handleSelectDefaultValueForPhoneCodeDropdown(this.selectedCountryForPhoneCode, 'name')\r\n }]\r\n });\r\n }\r\n\r\n\r\n handleParsePhonePayload(phoneFormData) {\r\n // const payload = [];\r\n // if (phoneFormData && phoneFormData.length) {\r\n // phoneFormData.map((value, index) => {\r\n // payload.push({\r\n // phone: this.helperService.handleSelectDefaultValueForPhoneCodeDropdown(value.countryCode, 'code') + '-' + value.phone,\r\n // type: value.type\r\n // });\r\n // });\r\n // }\r\n // return payload;\r\n }\r\n\r\n handlePatchEmailValues(flag: string) {\r\n // let email;\r\n // this.editConsumerData.email.find((value, index) => {\r\n // if (value.type === flag) {\r\n // email = value.email;\r\n // return email;\r\n // }\r\n // });\r\n // return email;\r\n }\r\n\r\n handleResetFormFields() {\r\n this.billingAddress.get('addressLine1').clearValidators();\r\n // this.billingAddress.get('addressLine2').clearValidators();\r\n this.billingAddress.get('city').clearValidators();\r\n this.billingAddress.get('state').clearValidators();\r\n this.billingAddress.get('zipcode').clearValidators();\r\n this.createConsumer.reset();\r\n this.hvacEquipments.clear();\r\n // this.outdoorEquipment.clear();\r\n // if (this.indoorEquipment && this.indoorEquipment.length) {\r\n // this.indoorEquipment.controls.map((value: FormGroup, index) => {\r\n // this.handleOnChangeIndoorEquipment(value);\r\n // });\r\n // }\r\n // this.indoorEquipment.clear();\r\n // // this.createConsumer.patchValue({\r\n // // consumerName: '',\r\n // // assetName: ''\r\n // // });\r\n // this.createConsumer.reset();\r\n // if (this.isEdit) {\r\n // this.createConsumer.patchValue({\r\n // primaryEmail: this.handlePatchEmailValues(COMMON_CONSTANTS.EMAIL_PRIMARY)\r\n // });\r\n // }\r\n // this.handleRemoveFormFields('phone', null, true);\r\n // // this.address.patchValue({\r\n // // street: '',\r\n // // city: '',\r\n // // state: '',\r\n // // zipcode: ''\r\n // // });\r\n // // this.indoorEquipment.patchValue({\r\n // // serialNumber: '',\r\n // // assetUnitName: '',\r\n // // fuel: '',\r\n // // coilOrHeatKit: '',\r\n // // meteringDevice: ''\r\n // // });\r\n // // this.outdoorEquipment.patchValue({\r\n // // serialNumber: '',\r\n // // assetUnitName: '',\r\n // // tonnage: ''\r\n // // });\r\n // this.setDefaultValueForModel(this.assetModelList);\r\n // this.isIndoorEquipmentCustomModal = false;\r\n // this.isOutdoorEquipmentCustomModal = false;\r\n // if (this.indoorCustomFieldsList && this.indoorCustomFieldsList.length) {\r\n // this.indoorCustomFieldsList.map((value, index) => {\r\n // this.indoorEquipment.removeControl(value);\r\n // });\r\n // }\r\n // this.indoorCustomFieldsList = [];\r\n // if (this.outdoorCustomFieldsList && this.outdoorCustomFieldsList.length) {\r\n // this.outdoorCustomFieldsList.map((value, index) => {\r\n // this.outdoorEquipment.removeControl(value);\r\n // });\r\n // }\r\n // this.outdoorCustomFieldsList = [];\r\n // // this.handleFormValidators('initial-render');\r\n // // this.createIndoorEquipmentCustomFields = new FormControl('', Validators.required);\r\n // // this.createOutdoorEquipmentCustomFields = new FormControl('', Validators.required);\r\n }\r\n\r\n handleCreateCustomerForm() {\r\n let flag = false;\r\n if (this.isEdit) {\r\n let currentFormValues = this.createConsumer.getRawValue();\r\n console.log( this.prevFormValues)\r\n if (JSON.stringify(currentFormValues) !== JSON.stringify(this.prevFormValues)) {\r\n flag = true;\r\n }\r\n } else {\r\n if (this.createConsumer.get('consumerFirstName').value ||\r\n this.createConsumer.get('consumerLastName').value ||\r\n this.createConsumer.get('primaryEmail').value ||\r\n this.createConsumer.get('secondaryEmail').value) {\r\n flag = true;\r\n }\r\n\r\n if (this.billingAddress.get('addressLine1').value ||\r\n this.billingAddress.get('addressLine2').value ||\r\n this.billingAddress.get('city').value ||\r\n this.billingAddress.get('state').value ||\r\n this.billingAddress.get('zipcode').value) {\r\n flag = true;\r\n }\r\n\r\n if (this.serviceAddress.get('addressLine1').value ||\r\n this.serviceAddress.get('addressLine2').value ||\r\n this.serviceAddress.get('city').value ||\r\n this.serviceAddress.get('state').value ||\r\n this.serviceAddress.get('zipcode').value) {\r\n flag = true;\r\n }\r\n }\r\n\r\n if (this.createConsumer && !this.createConsumer.dirty) {\r\n flag = false;\r\n }\r\n\r\n return flag;\r\n }\r\n\r\n handleModalType(type: string, index?: number) {\r\n this.infoModalType = type;\r\n if (type === 'customer-profile') {\r\n this.infoModalTitle = 'Customer Profile';\r\n this.parseCreateCustomerPayload(true, true);\r\n } else if (type === 'close-modal') {\r\n if (this.handleCreateCustomerForm()) {\r\n this.infoModalType = 'close-create-customer-modal';\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `Entered information will be lost.`;\r\n this.confirmationModalLine2Content = `Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.toggleConfirmationModal();\r\n } else {\r\n this.closeModal();\r\n }\r\n } else if (type === 'delete-hvac') {\r\n this.infoModalType = 'delet-hvac';\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = `This will permanently delete the \r\n equipment currently assigned to a customer.`;\r\n this.confirmationModalLine2Content = `Do you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = true;\r\n this.hvacDeleteIndex = index;\r\n this.toggleConfirmationModal();\r\n } else if (type === 'delete-customer') {\r\n this.emitHandleDeleteCustomer.emit();\r\n } else if (type === 'customer-exist-confimation') {\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = 'Email address already exists. Please enter a different email or contact Support at +1 (833) 543-0107.';\r\n // this.confirmationModalLine2Content = `Are you sure you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.toggleConfirmationModal();\r\n }else if (type=== 'customer-emails-same'){\r\n this.confirmationModalTitle = 'Warning!';\r\n this.confirmationModalLine1Content = 'Secondary email address cannot be the same as primary. Please enter a different email or contact Support at +1 (833) 543-0107.';\r\n // this.confirmationModalLine2Content = `Are you sure you want to continue?`;\r\n this.isConfirmationModalHasYesOrNoButton = false;\r\n this.toggleConfirmationModal();\r\n }\r\n else if(type===\"resend-invitation\")\r\n {\r\n this.reInviteCustomer()\r\n }\r\n }\r\n\r\n\r\nreInviteCustomer() {\r\n \r\n let message = 'Please add the primary email and save to resend the email invitation'\r\n if(this.editCustomerData.email.length<=0 || this.editCustomerData.email==0)\r\n {\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n else{\r\n let email = this.editCustomerData.email.length>0&&this.editCustomerData.email.find(data=>data.type==\"primary\");\r\n console.log(email)\r\n if(email==undefined)\r\n {\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n else{\r\n const queryParams = {\r\n consumerId: this.editCustomerData.customerId?this.editCustomerData.customerId:this.editCustomerData.consumerId\r\n };\r\n this.isResendBtnLoading=true;\r\n this.contractorSharedService.activateCustomer(queryParams).subscribe(\r\n (response: CommonSuccessResponse) => {\r\n this.helperService.showToaster(ToasterType.SUCCESS, response && response.statusInfo);\r\n this.closeModal()\r\n this.emitHandleRefreshPage.emit();\r\n this.isResendBtnLoading=false;\r\n }, (error) => {\r\n this.closeModal()\r\n this.emitHandleRefreshPage.emit();\r\n this.isResendBtnLoading=false;\r\n const message = this.helperService.handleAPIErrors(error);\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n )\r\n }}\r\n }\r\n handleButtonsOnChanges() {\r\n if (this.handleCreateCustomerForm()) {\r\n this.isToggleButtons = true;\r\n } else {\r\n this.isToggleButtons = false;\r\n }\r\n }\r\n\r\n handleButtonsOnLengthChanges() {\r\n this.isToggleButtons = false;\r\n if (this.prevFormValues && (this.phone.length !== this.prevFormValues.phone.length || this.handleCreateCustomerForm())) {\r\n this.isToggleButtons = true;\r\n }\r\n }\r\n\r\n handleInfoModalEmitter() {\r\n if (this.infoModalType === 'close-create-customer-modal') {\r\n this.closeModal();\r\n } else if (this.infoModalType === 'delet-hvac') {\r\n this.handleDeleteHVACInformation(this.hvacDeleteIndex);\r\n }\r\n }\r\n\r\n toggleCustomerInformationModal() {\r\n this.isShowCustomerInfoModal = !this.isShowCustomerInfoModal;\r\n }\r\n\r\n // isEditModal(isEdit){\r\n // this.isSHowEdit = isEdit;\r\n // }\r\n\r\n toggleConfirmationModal() {\r\n this.isShowConfirmationModal = !this.isShowConfirmationModal;\r\n }\r\n\r\n closeModal() {\r\n this.handleResetCustomerId();\r\n this.emitCloseModal.emit();\r\n }\r\n\r\n trackById(index: number, item: any): string {\r\n return item ? item.id : '';\r\n }\r\n\r\n}\r\n","export const CONTRACTOR_API_CONSTANTS = {\r\n // CUSTOMER_LIST: '/v1/consumers',\r\n GET_CONTRACTOR_INFORMATION: '/contractor',\r\n // GET_TECHNICIANS_LIST: '/technician',\r\n GET_MELIS_DETAIL: '/melidetails',\r\n GET_ASSEST_MODEL_LIST: '/model',\r\n CREATE_CONSUMER: '/consumer',\r\n // CREATE_TECHNICIAN: '/technician',\r\n ASSIGN_TECHNICIAN: '/jobs',\r\n ASSIGN_CUSTOMER: '/consumer/meli',\r\n ACTIVATE_CUSTOMER:'/resendInvitationToConsumer',\r\n UNASSIGN_MELI: '/consumer/unAssignMeli',\r\n CREATE_ASSETS_MODEL: '/model',\r\n UPDATE_MELI_STATUS: '/contractor/meli/updateStatus',\r\n DELETE_CUSTOMER: '/consumer',\r\n ADD_MELI_TO_CONTRACTOR: '/contractor/melis',\r\n DELETE_MELI_FROM_CONTRACTOR: '/contractor/melis',\r\n GET_UNASSIGNED_CUSTOMER_LIST: '/consumer/unAssigned',\r\n UPDATE_RELAY_STATUS: '/relay',\r\n // DELETE_TECHNICIAN: '/technician',\r\n TECHNICIAN_JOB_HISTORY_LIST: '/jobs',\r\n INSTALLATION_REPORT: '/installationsReport',\r\n GET_SEARCH_LIST: '/search',\r\n // EDIT_TECHNICIAN: '/technicianForEdit',\r\n SCHEDULE_PRE_SEASON_TEST: '/scheduleTest',\r\n SCHEDULE_BULK_PRE_SEASON_TEST: '/scheduleTests',\r\n PRE_SEASON_TEST_STATUS: '/scheduledTestStatus',\r\n CANCEL_PRE_SEASON_TEST: '/cancelTest',\r\n //GET_HVAC_INFORMATION: '/getAllMakeModel',\r\n DELETE_HVAC_UNIT: '/assetUnit',\r\n GET_ALL_TECHNICIAN_NAMES: '/technicianNames',\r\n SCHEDULE_EMERGENCY_SHUTOFF: '/emergencyshutoff/schedule',\r\n CANCEL_EMERGENCY_SHUTOFF: '/emergencyshutoff/cancel',\r\n CAN_SCHEDULE_EMERGENCY_SHUTOFF: '/emergencyshutoff/canSchedule',\r\n GET_EMERGENCY_SHUTOFF_STATUS: '/emergencyshutoff/scheduleStatus',\r\n //UPLOAD_CUSTOMER_LIST: '/uploadConsumerData',\r\n // UPLOAD_CUSTOMER_LIST:'/uploadUserRecord',\r\n // GET_UPLOAD_STATUS:'/getUploadFileStatus',\r\n // UPLOAD_STATUS_RESET:'/userDataReport',\r\n\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment as contractorEnvironment } from 'projects/contractor/src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\n\r\n// Services\r\nimport { HelperService } from 'src/app/shared/services/helper.service';\r\nimport { ApiService } from 'src/app/shared/services/api.service';\r\n\r\n// Constants\r\nimport { CONTRACTOR_API_CONSTANTS } from 'projects/contractor/src/app/shared-contractor/constants/api.constant';\r\n\r\n// Models\r\nimport { Alert, AlertsResponse } from 'src/app/shared/models/alerts.model';\r\nimport { Sensor } from 'src/app/shared/models/graph.model';\r\nimport {\r\n CustomerListResponse, UnassignedCustomersListResponse,\r\n CreateCustomerResponse, UnassignCustomerFromMeliResponse,\r\n HVACInformationResponse\r\n} from 'src/app/shared/models/customer.model';\r\nimport { ContractorDetails, ContractorDetailsResponse } from 'src/app/shared/models/contractor.modal';\r\nimport {\r\n TechnicianInfo, CreateTechnicianResponse,\r\n EditTechnicianResponse\r\n} from 'src/app/shared/models/technician.model';\r\nimport { AssetModelResponse, CreateAssetModelResponse } from 'src/app/shared/models/assest-model.model';\r\n\r\nimport { InventoryResponse, AssignMeliToCustomerResponse } from 'src/app/shared/models/inventory.model';\r\nimport { MeliAssetInfoResponse, UpdateMeliStatusResponse } from 'src/app/shared/models/meli.model';\r\nimport { SearchResponse } from 'src/app/shared/models/search.model';\r\n\r\n// Enum\r\nimport { ToasterType } from 'src/app/shared/constants/toaster.enum';\r\nimport { CommonSuccessResponse } from 'src/app/shared/models/common.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContractorSharedService {\r\n\r\n private BASE_URL = contractorEnvironment.baseUrl;\r\n private UPDATE_RELAY_BASE_URL = contractorEnvironment.updateRelayBaseUrl;\r\n private PHONE_CODES_REST_API_BASE_URL = contractorEnvironment.phoneCodesRestAPIBaseUrl;\r\n private AUTH_BASE_URL = contractorEnvironment.loginBaseUrl;\r\n alertsList: Alert[];\r\n contractorInfo: ContractorDetails;\r\n phoneCodesList: any;\r\n\r\n constructor(\r\n private helperService: HelperService,\r\n private apiService: ApiService\r\n ) { }\r\n\r\n // getCustomerList(queryParams): Observable {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.CUSTOMER_LIST;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => new CustomerListResponse(response)));\r\n // }\r\n\r\n // getContractorInformation(callback) {\r\n // if (this.contractorInfo) {\r\n // callback(this.contractorInfo, false);\r\n // return;\r\n // }\r\n\r\n // this.getContractorInformationAPI().subscribe(\r\n // (response: ContractorDetailsResponse) => {\r\n // this.contractorInfo = response.responseData;\r\n // callback(response.responseData, false);\r\n // }, (error) => {\r\n // callback(null, true);\r\n // const message = this.helperService.handleAPIErrors(error);\r\n // this.helperService.showToaster(ToasterType.ERROR, message);\r\n // }\r\n // );\r\n // }\r\n\r\n // getContractorInformationAPI(): Observable {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_CONTRACTOR_INFORMATION;\r\n // return this.apiService.get(url).pipe(map(response => new ContractorDetailsResponse(response)));\r\n // }\r\n\r\n // getTechnicianList(queryParams): Observable {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_TECHNICIANS_LIST;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => new TechnicianInfo(response)));\r\n // }\r\n\r\n getInventoryList(queryParams): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_MELIS_DETAIL;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new InventoryResponse(response)));\r\n }\r\n\r\n getAssetModalList(): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_ASSEST_MODEL_LIST;\r\n return this.apiService.get(url).pipe(map(response => new AssetModelResponse(response)));\r\n }\r\n\r\n createConsumer(payload): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.CREATE_CONSUMER;\r\n return this.apiService.post(url, payload).pipe(map(response => new CreateCustomerResponse(response)));\r\n }\r\n\r\n updateConsumer(payload): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.CREATE_CONSUMER;\r\n return this.apiService.put(url, payload).pipe(map(response => new CreateCustomerResponse(response)));\r\n }\r\n\r\n activateCustomer(queryParams): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.ACTIVATE_CUSTOMER;\r\n return this.apiService.put(url, null, queryParams).pipe(map(response => new CommonSuccessResponse(response)));\r\n }\r\n\r\n // createTechnician(payload): Observable {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.CREATE_TECHNICIAN;\r\n // return this.apiService.post(url, payload).pipe(map(response => new CreateTechnicianResponse(response)));\r\n // }\r\n\r\n assignTechnician(payload): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.ASSIGN_TECHNICIAN;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n\r\n assignCustomer(payload): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.ASSIGN_CUSTOMER;\r\n return this.apiService.post(url, payload).pipe(map(response => new AssignMeliToCustomerResponse(response)));\r\n }\r\n\r\n unAssignMeli(payload): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.UNASSIGN_MELI;\r\n return this.apiService.post(url, payload).pipe(map(response => new UnassignCustomerFromMeliResponse(response)));\r\n }\r\n\r\n createAssetModel(payload): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.CREATE_ASSETS_MODEL;\r\n return this.apiService.post(url, payload).pipe(map(response => new CreateAssetModelResponse(response)));\r\n }\r\n\r\n getUnassignedCustomerList(): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_UNASSIGNED_CUSTOMER_LIST;\r\n return this.apiService.get(url).pipe(map(response => new UnassignedCustomersListResponse(response)));\r\n }\r\n\r\n // updateMeliStatus(payload): Observable {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.UPDATE_MELI_STATUS;\r\n // return this.apiService.post(url, payload).pipe(map(response => new UpdateMeliStatusResponse(response)));\r\n // }\r\n\r\n updateRelayStatus(payload) {\r\n const url = this.UPDATE_RELAY_BASE_URL + CONTRACTOR_API_CONSTANTS.UPDATE_RELAY_STATUS;\r\n return this.apiService.post(url, payload).pipe(map(response => response));\r\n }\r\n\r\n getPhoneCodesList(callback) {\r\n if (this.phoneCodesList) {\r\n return callback(this.phoneCodesList, false);\r\n } else {\r\n this.getPhoneCodesListAPI().subscribe(\r\n (response) => {\r\n this.phoneCodesList = response;\r\n callback(response, false);\r\n }, (error) => {\r\n callback(null, true);\r\n const message = `Error in getting phone codes`;\r\n this.helperService.showToaster(ToasterType.ERROR, message);\r\n }\r\n );\r\n }\r\n }\r\n\r\n getPhoneCodesListAPI() {\r\n const url = this.PHONE_CODES_REST_API_BASE_URL;\r\n return this.apiService.get(url, {}, false, false).pipe(map(response => response));\r\n }\r\n\r\n // getInstallationReport(queryParams) {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.INSTALLATION_REPORT;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => new InstallationReportResponse(response)));\r\n // }\r\n\r\n // handleLogout(queryParams) {\r\n // const url = this.AUTH_BASE_URL + CONTRACTOR_API_CONSTANTS.LOGOUT;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => response));\r\n // }\r\n\r\n getSearchList(queryParams): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_SEARCH_LIST;\r\n return this.apiService.get(url, queryParams).pipe(map(response => new SearchResponse(response)));\r\n }\r\n\r\n // editTechnician(queryParams): Observable {\r\n // const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.EDIT_TECHNICIAN;\r\n // return this.apiService.get(url, queryParams).pipe(map(response => new EditTechnicianResponse(response)));\r\n // }\r\n\r\n // getHVACInformationList(): Observable {\r\n // const url = this.UPDATE_RELAY_BASE_URL + CONTRACTOR_API_CONSTANTS.GET_HVAC_INFORMATION;\r\n // return this.apiService.get(url).pipe(map(response => new HVACInformationResponse(response)));\r\n // }\r\n\r\n handleDeleteHVACUnit(queryParams): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.DELETE_HVAC_UNIT;\r\n return this.apiService.delete(url, queryParams).pipe(map(response => (response)));\r\n }\r\n\r\n getAllTechniciansNames(): Observable {\r\n const url = this.BASE_URL + CONTRACTOR_API_CONSTANTS.GET_ALL_TECHNICIAN_NAMES;\r\n return this.apiService.get(url).pipe(map(response => (response)));\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\n// Modules\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\n\r\n// Components\r\n// import { AssignCustomerModalComponent } from './components/assign-customer-modal/assign-customer-modal.component';\r\n//import { AssignTechnicianModalComponent } from './components/assign-technician-modal/assign-technician-modal.component';\r\nimport { CreateCustomerComponent } from './components/create-customer/create-customer.component';\r\n// import { CreateTechnicianComponent } from './components/create-technician/create-technician.component';\r\n\r\nconst Components = [\r\n // AssignCustomerModalComponent,\r\n //AssignTechnicianModalComponent,\r\n CreateCustomerComponent,\r\n // CreateTechnicianComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [...Components],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n SharedModule\r\n ],\r\n exports: [...Components]\r\n})\r\nexport class SharedContractorModule { }\r\n","export const environment = {\r\n production: false,\r\n loginBaseUrl: 'https://coreservices.aurai.io/cognito' || 'https://k2zn8ojkke.execute-api.us-east-2.amazonaws.com/v1',\r\n baseUrl: 'https://cpservices.aurai.io/yantra' || 'https://prod-cpgoodman.ihvac.io/yantra',\r\n updateRelayBaseUrl: 'https://comfort-yantraconsole.aurai.io/yantra' || 'https://prod-yantraconsole.ihvac.io/yantra',\r\n preSeasonTestBaseUrl: 'https://comfort-preseason.aurai.io/preseason' || 'https://k2zn8ojkke.execute-api.us-east-2.amazonaws.com/v1/pre-season',\r\n phoneCodesRestAPIBaseUrl: 'https://restcountries.eu/rest/v2/all',\r\n lambdaBaseUrl: 'https://vs9m4h1zac.execute-api.us-east-2.amazonaws.com/finalprod' || 'https://io4muk95w9.execute-api.us-east-2.amazonaws.com/prod',\r\n comfortBridgeUrl: 'https://n0korjfy58.execute-api.us-east-2.amazonaws.com/v1/model' || 'https://n0korjfy58.execute-api.us-east-2.amazonaws.com/v1/model',\r\n userPoolId: 'us-east-2_mxAxkLlLk' || 'us-east-2_DSgKB2NiH',\r\n minCelciusValue: '-18' || -18,\r\n maxCelciusValue: '93' || 93,\r\n minWaterColumnValue: '0' || 0,\r\n maxWaterColumnValue: '0.9' || 0.9,\r\n sensorMaxNegativeValue: '' || -150,\r\n sensorMaxPositiveValue: '' || 150,\r\n theme: 'keenhome-theme' || 'dark-theme',\r\n siteName: 'keenhome-contractor' || 'goodman-contractor',\r\n mapboxKey: ''||'pk.eyJ1IjoiY29ubmVjdG0iLCJhIjoiY2tmOG9xMzhmMGVlODJ5bzBrZGM3dzNpeSJ9.gZfzhnzROQ_NDyJSCR_8Xg',\r\n stripeKey: 'pk_live_enRMLdXYcDBFlPCEcU10zDBm00P8z9P2RU' || 'pk_test_MLqe6uLxvPk209PiEgblk9oq00uyn3cgbJ',\r\n branchKey: 'key_live_lkXyoXwwo4t4QkMdKQB03jnauseCLmwI' || 'key_test_bbHWNWSbngfXUlnt51YrwpakwwkscjMs',\r\n termsOfUse: '' || 'https://keenhome.io/pages/terms',\r\n privacyPolicy: '' || 'https://keenhome.io/pages/privacy'\r\n};\r\n\r\n\r\n\r\n\r\n// CODES DEFAULTLY PRESENT IN ENVIRONMENT.TS file under environments folder.\r\n\r\n\r\n\r\n// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\n// export const environment = {\r\n// production: false,\r\n// baseUrl: 'https://cp-goodman.ihvac.io/yantra',\r\n// // baseUrl: 'http://18.189.81.204:8081/yantra',\r\n// loginBaseUrl: 'https://q1w3ryo4sc.execute-api.us-east-2.amazonaws.com/dev/',\r\n// updateRelayBaseUrl: 'http://3.19.77.212:8088/yantra'\r\n// };\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n\r\n","export const VERSION = {\r\n version: 'v1.0.56'\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""}