{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.css","webpack:///./src/app/app.component.html","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/models/address.ts","webpack:///./src/app/models/inspection-upload.ts","webpack:///./src/app/models/new-entity.ts","webpack:///./src/app/models/new-policy.ts","webpack:///./src/app/models/order-summary.ts","webpack:///./src/app/models/plan.ts","webpack:///./src/app/models/work-order-summary.ts","webpack:///./src/app/pages/coverage-maps/coverage-maps.component.css","webpack:///./src/app/pages/coverage-maps/coverage-maps.component.html","webpack:///./src/app/pages/coverage-maps/coverage-maps.component.ts","webpack:///./src/app/pages/federated-login/federated-login.component.css","webpack:///./src/app/pages/federated-login/federated-login.component.html","webpack:///./src/app/pages/federated-login/federated-login.component.ts","webpack:///./src/app/pages/home/home.component.css","webpack:///./src/app/pages/home/home.component.html","webpack:///./src/app/pages/home/home.component.ts","webpack:///./src/app/pages/log-in/log-in.component.css","webpack:///./src/app/pages/log-in/log-in.component.html","webpack:///./src/app/pages/log-in/log-in.component.ts","webpack:///./src/app/pages/log-out/log-out.component.css","webpack:///./src/app/pages/log-out/log-out.component.html","webpack:///./src/app/pages/log-out/log-out.component.ts","webpack:///./src/app/pages/metrics/metrics.component.css","webpack:///./src/app/pages/metrics/metrics.component.html","webpack:///./src/app/pages/metrics/metrics.component.ts","webpack:///./src/app/pages/order/order.component.css","webpack:///./src/app/pages/order/order.component.html","webpack:///./src/app/pages/order/order.component.ts","webpack:///./src/app/pages/orders/orders.component.css","webpack:///./src/app/pages/orders/orders.component.html","webpack:///./src/app/pages/orders/orders.component.ts","webpack:///./src/app/pages/policies/policies.component.css","webpack:///./src/app/pages/policies/policies.component.html","webpack:///./src/app/pages/policies/policies.component.ts","webpack:///./src/app/pages/quote/quote.component.css","webpack:///./src/app/pages/quote/quote.component.html","webpack:///./src/app/pages/quote/quote.component.ts","webpack:///./src/app/pages/quotes/quotes.component.css","webpack:///./src/app/pages/quotes/quotes.component.html","webpack:///./src/app/pages/quotes/quotes.component.ts","webpack:///./src/app/pages/register/register.component.css","webpack:///./src/app/pages/register/register.component.html","webpack:///./src/app/pages/register/register.component.ts","webpack:///./src/app/pages/reset-password/reset-password.component.css","webpack:///./src/app/pages/reset-password/reset-password.component.html","webpack:///./src/app/pages/reset-password/reset-password.component.ts","webpack:///./src/app/pages/settings/settings.component.css","webpack:///./src/app/pages/settings/settings.component.html","webpack:///./src/app/pages/settings/settings.component.ts","webpack:///./src/app/pages/view-quote/view-quote.component.css","webpack:///./src/app/pages/view-quote/view-quote.component.html","webpack:///./src/app/pages/view-quote/view-quote.component.ts","webpack:///./src/app/pages/warranty-link/warranty-link.component.css","webpack:///./src/app/pages/warranty-link/warranty-link.component.html","webpack:///./src/app/pages/warranty-link/warranty-link.component.ts","webpack:///./src/app/parts/dialog/alert-dialog/alert-dialog.component.css","webpack:///./src/app/parts/dialog/alert-dialog/alert-dialog.component.html","webpack:///./src/app/parts/dialog/alert-dialog/alert-dialog.component.ts","webpack:///./src/app/parts/dialog/confirm-dialog/confirm-dialog.component.ts","webpack:///./src/app/parts/mobile-wizard-progress-indicator/mobile-wizard-progress-indicator.component.css","webpack:///./src/app/parts/mobile-wizard-progress-indicator/mobile-wizard-progress-indicator.component.html","webpack:///./src/app/parts/mobile-wizard-progress-indicator/mobile-wizard-progress-indicator.component.ts","webpack:///./src/app/parts/plan-selection/extended-area/extended-area.component.css","webpack:///./src/app/parts/plan-selection/extended-area/extended-area.component.html","webpack:///./src/app/parts/plan-selection/extended-area/extended-area.component.ts","webpack:///./src/app/parts/plan-selection/plan-selection.component.css","webpack:///./src/app/parts/plan-selection/plan-selection.component.html","webpack:///./src/app/parts/plan-selection/plan-selection.component.ts","webpack:///./src/app/parts/plan-selection/view-coverage/view-coverage.component.css","webpack:///./src/app/parts/plan-selection/view-coverage/view-coverage.component.html","webpack:///./src/app/parts/plan-selection/view-coverage/view-coverage.component.ts","webpack:///./src/app/parts/toast-success/toast-success.component.css","webpack:///./src/app/parts/toast-success/toast-success.component.html","webpack:///./src/app/parts/toast-success/toast-success.component.ts","webpack:///./src/app/services/dialog.service.ts","webpack:///./src/app/services/network/api-access.service.ts","webpack:///./src/app/services/network/realtor-portal.service.ts","webpack:///./src/app/services/utilities.service.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error('Cannot find module \"' + req + '\".');\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","module.exports = \"mat-sidenav {\\r\\n min-width: 350px;\\r\\n }\\r\\n \\r\\n .header-logo {\\r\\n height: 40px;\\r\\n margin-top: 10px;\\r\\n }\\r\\n \\r\\n .side-nav-toggle-button {\\r\\n vertical-align: top;\\r\\n margin-top: 15px;\\r\\n }\\r\\n \\r\\n .side-menu-button {\\r\\n text-align: left;\\r\\n border-bottom: 1px dotted rgba(0,0,0,0.3);\\r\\n }\\r\\n \\r\\n #appHeader {\\r\\n position: fixed;\\r\\n z-index: 10;\\r\\n width: 100%;\\r\\n transition: background-color .5s ease-out;\\r\\n background-color: rgb(238, 240, 241);\\r\\n padding-bottom: 7px;\\r\\n border-bottom: 2px solid rgb(89, 109, 130);\\r\\n top: 0;\\r\\n padding-top: 10px;\\r\\n }\\r\\n \\r\\n #appHeader.is-scrolled {\\r\\n background-color: rgb(89, 109, 130);\\r\\n border-bottom: 1px solid transparent;\\r\\n box-shadow: 0px 3px 11px 0px rgba(97,97,97,1);\\r\\n }\\r\\n \\r\\n #appHeader.is-login-page {\\r\\n background-color: transparent;\\r\\n border-bottom: 2px solid transparent;\\r\\n }\\r\\n \\r\\n #appHeader.is-clear {\\r\\n background-color: transparent;\\r\\n border-bottom: 0px;\\r\\n }\\r\\n \\r\\n @-webkit-keyframes slide-in {\\r\\n from {\\r\\n -webkit-transform: translateX(-100%);\\r\\n transform: translateX(-100%)\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateX(0);\\r\\n transform: translateX(0)\\r\\n }\\r\\n }\\r\\n \\r\\n @keyframes slide-in {\\r\\n from {\\r\\n -webkit-transform: translateX(-100%);\\r\\n transform: translateX(-100%)\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateX(0);\\r\\n transform: translateX(0)\\r\\n }\\r\\n }\\r\\n \\r\\n @-webkit-keyframes slide-down {\\r\\n from {\\r\\n -webkit-transform: translateY(-5%) scale(.85);\\r\\n transform: translateY(-5%) scale(.85);\\r\\n opacity: 0;\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateY(0) scale(1);\\r\\n transform: translateY(0) scale(1);\\r\\n opacity: 1;\\r\\n }\\r\\n }\\r\\n \\r\\n @keyframes slide-down {\\r\\n from {\\r\\n -webkit-transform: translateY(-5%) scale(.85);\\r\\n transform: translateY(-5%) scale(.85);\\r\\n opacity: 0;\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateY(0) scale(1);\\r\\n transform: translateY(0) scale(1);\\r\\n opacity: 1;\\r\\n }\\r\\n }\\r\\n \\r\\n #app-content.entering {\\r\\n -webkit-animation: slide-down .5s ease-out;\\r\\n animation: slide-down .5s ease-out;\\r\\n }\\r\\n \\r\\n #side-nav {\\r\\n position: fixed;\\r\\n height: 100%;\\r\\n width: 250px;\\r\\n z-index: 20;\\r\\n top: 0;\\r\\n background-color: #fff;\\r\\n -webkit-animation-name: slide-in;\\r\\n animation-name: slide-in;\\r\\n -webkit-animation-duration: .5s;\\r\\n animation-duration: .5s;\\r\\n box-shadow: 10px 0px 10px -2px rgba(0, 0, 0, 0.3);\\r\\n padding: 10px;\\r\\n }\\r\\n \\r\\n #back-drop {\\r\\n position: fixed;\\r\\n height: 100%;\\r\\n width: 100%;\\r\\n z-index: 19;\\r\\n background-color: rgba(0, 0, 0, .5);\\r\\n }\\r\\n \\r\\n .is-scrolled button,\\r\\n .is-white button {\\r\\n color: #fff;\\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

Options

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n dashboard Home\\r\\n \\r\\n \\r\\n \\r\\n assignment Quotes\\r\\n \\r\\n \\r\\n insert_drive_file Orders\\r\\n \\r\\n \\r\\n \\r\\n map\\r\\n Coverage Maps\\r\\n \\r\\n \\r\\n settings My Settings\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n lock 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\"","import {Component, HostListener} from '@angular/core';\r\nimport {Router, ActivatedRoute, NavigationEnd} from '@angular/router';\r\nimport {filter} from 'rxjs/operators';\r\nimport {ApiAccessService} from './services/network/api-access.service';\r\nimport {RealtorPortalService} from './services/network/realtor-portal.service';\r\nimport 'rxjs/add/operator/filter';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n\r\n isScrolled = false;\r\n sideNavOpen = false;\r\n isLoginPage = false;\r\n isLoggedIn = true;\r\n isHomePage = false;\r\n isWarrantyPage = false;\r\n\r\n myDebug = localStorage.getItem('login-info');\r\n unsecuredUrls = [\r\n '/log-in',\r\n '/log-out',\r\n '/reset-password',\r\n '/register',\r\n '/federated-login',\r\n '/warranty-link'\r\n ];\r\n\r\n enteringAnimation = false;\r\n\r\n constructor(private router: Router, private route: ActivatedRoute,\r\n private realtorPortalService: RealtorPortalService) {\r\n this.isHomePage = router.url === '/home' || router.url === '/';\r\n this.router.events.filter(event => event instanceof NavigationEnd)\r\n .subscribe(event => {\r\n\r\n\r\n const myEvent: any = event;\r\n\r\n this.isLoginPage = myEvent.url === '/log-in';\r\n this.isHomePage = myEvent.url === '/home' || myEvent.url === '/';\r\n\r\n\r\n if (myEvent && myEvent.url && myEvent.url.indexOf('#') === -1) {\r\n this.enteringAnimation = true;\r\n }\r\n\r\n setTimeout(() => this.enteringAnimation = false, 750);\r\n\r\n this.isLoggedIn = ApiAccessService.isLoggedIn;\r\n\r\n\r\n if (this.isLoginPage) {\r\n // document.getElementsByTagName('body')[0].classList.add('login-bg');\r\n } else {\r\n // document.getElementsByTagName('body')[0].classList.remove(\r\n // 'login-bg');\r\n }\r\n\r\n if (myEvent.url.indexOf('/warranty-link') === 0) {\r\n myEvent.url = '/warranty-link';\r\n this.isWarrantyPage = true;\r\n document.body.style.backgroundImage = '';\r\n } else {\r\n document.body.style.backgroundImage = 'url(https://common.oneguardhomewarranty.com/cdn/images/og-bg.png)';\r\n }\r\n\r\n if (!ApiAccessService.isLoggedIn &&\r\n this.unsecuredUrls.indexOf(myEvent.url) === -1) {\r\n this.router.navigateByUrl('/log-in');\r\n } else if (ApiAccessService.isLoggedIn &&\r\n !ApiAccessService.fromFederatedLogin &&\r\n this.unsecuredUrls.indexOf(myEvent.url) === -1) {\r\n // realtorPortalService.authenticate(ApiAccessService.userName,\r\n // ApiAccessService.password)\r\n // .then(result => {\r\n // if (!result) {\r\n // this.router.navigateByUrl('/log-in');\r\n // }\r\n // });\r\n }\r\n\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth',\r\n });\r\n });\r\n\r\n if (ApiAccessService.isLoggedIn && !ApiAccessService.fromFederatedLogin) {\r\n realtorPortalService.authenticateUser({\r\n UserName: ApiAccessService.userName,\r\n Password: ApiAccessService.password\r\n }).then(results => {\r\n if (!results && !ApiAccessService.fromFederatedLogin) {\r\n router.navigateByUrl('/log-in');\r\n }\r\n });\r\n }\r\n }\r\n\r\n goBack() {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth',\r\n });\r\n\r\n window.history.back();\r\n }\r\n\r\n get showWhite() {\r\n return this.isScrolled || this.isLoginPage ||\r\n (this.isHomePage );\r\n }\r\n\r\n get isClear() {\r\n return this.isHomePage && window.scrollY === 0;\r\n }\r\n\r\n @HostListener('window:scroll', [])\r\n onWindowScroll() {\r\n this.isScrolled = window.scrollY > 0;\r\n }\r\n\r\n @HostListener('window:beforeunload', ['$event'])\r\n beforeunloadHandler(event) {\r\n // ApiAccessService.clearLoginInfo();\r\n }\r\n}\r\n","import {BrowserModule} from '@angular/platform-browser';\r\nimport {NgModule} from '@angular/core';\r\nimport {BrowserAnimationsModule} from '@angular/platform-browser/animations';\r\nimport {AppComponent} from './app.component';\r\nimport {RouterModule, Routes} from '@angular/router';\r\nimport {\r\n MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatDatepickerModule,\r\n MatInputModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatSliderModule,\r\n MatSlideToggleModule,\r\n MatMenuModule,\r\n MatSidenavModule,\r\n MatToolbarModule,\r\n MatListModule,\r\n MatGridListModule,\r\n MatCardModule,\r\n MatStepperModule,\r\n MatTabsModule,\r\n MatExpansionModule,\r\n MatButtonModule,\r\n MatButtonToggleModule,\r\n MatChipsModule,\r\n MatIconModule,\r\n MatProgressSpinnerModule,\r\n MatProgressBarModule,\r\n MatDialogModule,\r\n MatTooltipModule,\r\n MatSnackBarModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatPaginatorModule,\r\n MatNativeDateModule\r\n} from '@angular/material';\r\nimport {FormsModule} from '@angular/forms';\r\nimport {HttpModule} from '@angular/http';\r\nimport {HomeComponent} from './pages/home/home.component';\r\nimport {Observable} from 'rxjs';\r\nimport {ApiAccessService} from './services/network/api-access.service';\r\nimport {DialogsService} from './services/dialog.service';\r\nimport {\r\n ConfirmDialogComponent\r\n} from './parts/dialog/confirm-dialog/confirm-dialog.component';\r\nimport {\r\n AlertDialogComponent\r\n} from './parts/dialog/alert-dialog/alert-dialog.component';\r\nimport {\r\n ToastSuccessComponent\r\n} from './parts/toast-success/toast-success.component';\r\nimport {SettingsComponent} from './pages/settings/settings.component';\r\nimport {LogInComponent} from './pages/log-in/log-in.component';\r\nimport {RealtorPortalService} from './services/network/realtor-portal.service';\r\nimport {QuoteComponent} from './pages/quote/quote.component';\r\nimport {\r\n PlanSelectionComponent\r\n} from './parts/plan-selection/plan-selection.component';\r\nimport {\r\n MobileWizardProgressIndicatorComponent\r\n} from './parts/mobile-wizard-progress-indicator/mobile-wizard-progress-indicator.component';\r\nimport {\r\n ViewCoverageDialogComponent\r\n} from './parts/plan-selection/view-coverage/view-coverage.component';\r\nimport {\r\n ExtendedAreaDialogComponent\r\n} from './parts/plan-selection/extended-area/extended-area.component';\r\nimport {PoliciesComponent} from './pages/policies/policies.component';\r\nimport {QuotesComponent} from './pages/quotes/quotes.component';\r\nimport {\r\n CoverageMapsComponent\r\n} from './pages/coverage-maps/coverage-maps.component';\r\nimport {LogOutComponent} from './pages/log-out/log-out.component';\r\nimport {OrdersComponent} from './pages/orders/orders.component';\r\nimport {MetricsComponent} from './pages/metrics/metrics.component';\r\nimport {OrderComponent} from './pages/order/order.component';\r\nimport {ViewQuoteComponent} from './pages/view-quote/view-quote.component';\r\nimport {RegisterComponent} from './pages/register/register.component';\r\nimport {NgxMaskModule} from 'ngx-mask';\r\nimport {\r\n ResetPasswordComponent\r\n} from './pages/reset-password/reset-password.component';\r\nimport {\r\n FederatedLoginComponent\r\n} from './pages/federated-login/federated-login.component';\r\nimport { WLComponent } from './pages/warranty-link/warranty-link.component';\r\n\r\nconst appRoutes: Routes = [\r\n {path: 'home', component: HomeComponent, data: {title: 'Home'}},\r\n {path: 'settings', component: SettingsComponent},\r\n {path: 'log-in', component: LogInComponent},\r\n {path: 'quote', component: QuoteComponent},\r\n {path: 'service-contracts', component: PoliciesComponent},\r\n {path: 'quotes', component: QuotesComponent},\r\n {path: 'coverage-maps', component: CoverageMapsComponent},\r\n {path: 'log-out', component: LogOutComponent},\r\n {path: 'orders', component: OrdersComponent},\r\n {path: 'metrics', component: MetricsComponent},\r\n {path: 'order/:id', component: OrderComponent},\r\n {path: 'view-quote/:id', component: ViewQuoteComponent},\r\n {path: 'register', component: RegisterComponent},\r\n {\r\n path: 'federated-login/:key',\r\n component: FederatedLoginComponent,\r\n },\r\n {path: 'order-quote/:quoteId', component: QuoteComponent},\r\n {path: 'reset-password', component: ResetPasswordComponent},\r\n {path: 'warranty-link/:policyId', component: WLComponent},\r\n {path: 'warranty-link/:brand/:policyId', component: WLComponent},\r\n {path: '', redirectTo: '/home', pathMatch: 'full'},\r\n\r\n];\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomeComponent,\r\n AlertDialogComponent,\r\n ToastSuccessComponent,\r\n ConfirmDialogComponent,\r\n SettingsComponent,\r\n LogInComponent,\r\n QuoteComponent,\r\n PlanSelectionComponent,\r\n MobileWizardProgressIndicatorComponent,\r\n ViewCoverageDialogComponent,\r\n ExtendedAreaDialogComponent,\r\n PoliciesComponent,\r\n QuotesComponent,\r\n CoverageMapsComponent,\r\n LogOutComponent,\r\n OrdersComponent,\r\n MetricsComponent,\r\n OrderComponent,\r\n ViewQuoteComponent,\r\n RegisterComponent,\r\n ResetPasswordComponent,\r\n ResetPasswordComponent,\r\n FederatedLoginComponent,\r\n WLComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n RouterModule.forRoot(appRoutes),\r\n NgxMaskModule.forRoot(),\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n HttpModule,\r\n MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatDatepickerModule,\r\n MatInputModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatSliderModule,\r\n MatSlideToggleModule,\r\n MatMenuModule,\r\n MatSidenavModule,\r\n MatToolbarModule,\r\n MatListModule,\r\n MatGridListModule,\r\n MatCardModule,\r\n MatStepperModule,\r\n MatTabsModule,\r\n MatExpansionModule,\r\n MatButtonModule,\r\n MatButtonToggleModule,\r\n MatChipsModule,\r\n MatIconModule,\r\n MatProgressSpinnerModule,\r\n MatProgressBarModule,\r\n MatDialogModule,\r\n MatTooltipModule,\r\n MatSnackBarModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatPaginatorModule,\r\n MatNativeDateModule,\r\n [BrowserAnimationsModule],\r\n ],\r\n providers: [\r\n ApiAccessService,\r\n DialogsService,\r\n RealtorPortalService,\r\n ],\r\n entryComponents: [\r\n ConfirmDialogComponent,\r\n AlertDialogComponent,\r\n ToastSuccessComponent,\r\n ViewCoverageDialogComponent,\r\n ExtendedAreaDialogComponent\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n}\r\n","export class Address {\r\n Address1: string;\r\n City: string;\r\n State: string;\r\n Zip: string;\r\n DwellingType: string;\r\n YearBuilt: number;\r\n SquareFootage: number;\r\n Id: string;\r\n Country: string;\r\n Tenant: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n","export class InspectionUploadArgs {\r\n PolicyId: string;\r\n FileName: string;\r\n Attachment: string;\r\n TenantId: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n","export class NewEntity {\r\n Id: string;\r\n Name: string;\r\n StreetAddress: string;\r\n City: string;\r\n State: string;\r\n ZipCode: string;\r\n Phone: string;\r\n Fax: string;\r\n Email: string;\r\n LicenseNumber: string;\r\n EntityType: string;\r\n ParentId: string;\r\n TenantId: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n","import {CreditCard} from './credit-card';\r\nimport {UtilitiesService} from '../services/utilities.service';\r\n\r\nexport class NewPolicy {\r\n Id: string;\r\n PlanId: string;\r\n CreditCard: CreditCard;\r\n ElectronicCheck: CreditCard;\r\n Options: OptionalItemInfo[];\r\n EmailOrderTo: string;\r\n IsMonthly: boolean;\r\n CouponCode: string;\r\n CreditCardId: string;\r\n Property: PropertySummary;\r\n CancellationDate: Date;\r\n CancellationPolicyId: string;\r\n CoverageLength: number;\r\n MarketingSourceId: string;\r\n WebUserId: string;\r\n ShowAdminFee: boolean;\r\n ReferralName: string;\r\n CustomerId: string;\r\n OriginalPolicyId: string;\r\n Buyer: CustomerSummary;\r\n Seller: CustomerSummary;\r\n EscrowOfficerId: string;\r\n EstimatedClosingDate: Date;\r\n EscrowResponsibleParty: string;\r\n EscrowNumber: string;\r\n AdditionalNotes: string;\r\n PreferredContactMethod = 'Phone';\r\n PlanName: string;\r\n PlanPrice: number;\r\n InitiatingAgentType = 'Selling';\r\n SellersCoverage = false;\r\n BuyersAgentId: string;\r\n Tenant: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n\r\n\r\n constructor() {\r\n this.Id = UtilitiesService.newid();\r\n this.Property = new PropertySummary();\r\n this.Options = [];\r\n this.Buyer = new CustomerSummary();\r\n this.Seller = new CustomerSummary();\r\n }\r\n}\r\n\r\nexport class CustomerSummary {\r\n FirstName: string;\r\n LastName: string;\r\n MailingAddress: string;\r\n MailingCity: string;\r\n MailingState: string;\r\n MailingZip: string;\r\n MailingCountry: string;\r\n HomePhone: string;\r\n CellPhone: string;\r\n Email: string;\r\n Tenant: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n\r\nexport class PropertySummary {\r\n Address: string;\r\n City: string;\r\n State: string;\r\n Zip: string;\r\n SquareFootage: number;\r\n DwellingType: string;\r\n YearBuilt: number;\r\n Country: string;\r\n Tenant: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n\r\nexport class OptionalItemInfo {\r\n Id: string;\r\n Name: string;\r\n Sort: number;\r\n FullPrice: number;\r\n MonthPrice: number;\r\n AllowMultiple: boolean;\r\n SalesItemCoverageId: string;\r\n InSelectAreas: boolean;\r\n SalesItemId: string;\r\n OptionalItemId: string;\r\n Tenant: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n","export class OrderSummary {\r\n CanCancelOrder: boolean;\r\n CanInitiateClaim: boolean;\r\n CanUpdateClosingDate: boolean;\r\n CustomerName: string;\r\n DateString: string;\r\n EstimatedClosingDate: Date;\r\n EstimatedClosingDateString: string;\r\n Id: string;\r\n OrderDate: Date;\r\n PlanName: string;\r\n PropertyAddress: string;\r\n PropertyCity: string;\r\n PropertyState: string;\r\n PropertyZip: string;\r\n SellersCoverage: boolean;\r\n Status: string;\r\n Tenant: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n}\r\n","export class PlanModel {\r\n name: string;\r\n price: number;\r\n priceRecurring: number;\r\n summary: string;\r\n serviceFee: number;\r\n id: string;\r\n isRealEstateCoverage: boolean;\r\n isHomeownerCoverage: boolean;\r\n isRenewalCoverage: boolean;\r\n activeDateStart?: any;\r\n activeDateEnd?: any;\r\n isSingleFamily: boolean;\r\n isCondo: boolean;\r\n isDuplex: boolean;\r\n isTriplex: boolean;\r\n isFourplex: boolean;\r\n showOnWeb: boolean;\r\n squareFootageAdjustmentId: string;\r\n ageOfHomeAdjustmentId: string;\r\n renewalProfitabilityAdjustmentId: string;\r\n coverageTypeAdjustmentId: string;\r\n coverageLength: number;\r\n dwellingTypeAdjustmentId: string;\r\n monthlyProcessingFee: number;\r\n planColor: string;\r\n termsAndLimitationId: string;\r\n contractTemplateName: string;\r\n renewalPlanId: string;\r\n recallPeriod: number;\r\n cancelationFee: number;\r\n areaAdjustmentId: string;\r\n\r\n // Non-persisted properties\r\n standardItems: SalesItemModel[] = [];\r\n optionalItems: SalesItemModel[] = [];\r\n removing = false;\r\n\r\n // planStandardItems: PlanItemSummaryModel[] = [];\r\n // planOptionalItems: PlanItemSummaryModel[] = [];\r\n\r\n selected: boolean;\r\n isBestValue: boolean;\r\n}\r\n\r\nexport class SalesItemModel {\r\n constructor(public name = '', public category = '', public price = 0,\r\n public priceRecurring = 0, public allowQuantity = false,\r\n public selected = false, public quantity = 1,\r\n public planItemId: string = null,\r\n public salesItemCoverageId: string = null,\r\n public inSelectAreas: boolean = false,\r\n public requirements: any = null,\r\n public salesItemId: string = null) {}\r\n unique = false;\r\n}\r\n\r\n\r\nexport class PlanGridModel {\r\n plans: PlanModel[];\r\n categories: PlanGridCategoryModel[] = [];\r\n\r\n public static getPlanGridModel(plans: PlanModel[]): PlanGridModel {\r\n const planGridModel = new PlanGridModel();\r\n\r\n planGridModel.plans = plans;\r\n\r\n plans.forEach(plan => {\r\n\r\n plan.standardItems.forEach(standardItem => {\r\n\r\n let category = planGridModel.categories.filter(\r\n i => i.categoryName === standardItem.category)[0];\r\n if (!category) {\r\n category = new PlanGridCategoryModel();\r\n category.categoryName = standardItem.category;\r\n planGridModel.categories.push(category);\r\n }\r\n\r\n let item = category.items.filter(i => i.salesItemName ===\r\n standardItem.name)[0];\r\n if (!item) {\r\n item = new PlanGridItemModel();\r\n item.salesItemName = standardItem.name;\r\n item.planItemId = standardItem.planItemId;\r\n item.salesItemCoverageId = standardItem.salesItemCoverageId;\r\n item.inSelectAreas = standardItem.inSelectAreas;\r\n category.items.push(item);\r\n }\r\n\r\n let i = item.planAvailability.length;\r\n const planCount = plans.indexOf(plan);\r\n\r\n while (i < planCount) {\r\n item.planAvailability.push(new PlanGridItemAvailabilityModel(false));\r\n i++;\r\n }\r\n item.planAvailability.push(\r\n new PlanGridItemAvailabilityModel(true, plan));\r\n });\r\n\r\n });\r\n\r\n planGridModel.categories.forEach(category => {\r\n category.items.forEach(item => {\r\n for (let i = item.planAvailability.length; i < plans.length; i++) {\r\n item.planAvailability.push(new PlanGridItemAvailabilityModel(false));\r\n }\r\n });\r\n });\r\n\r\n planGridModel.plans.forEach(p => p.selected = true);\r\n return planGridModel;\r\n }\r\n}\r\n\r\nexport class PlanGridCategoryModel {\r\n categoryName: string;\r\n items: PlanGridItemModel[] = [];\r\n}\r\n\r\nexport class PlanGridItemModel {\r\n salesItemName: string;\r\n inSelectAreas: boolean;\r\n planAvailability: PlanGridItemAvailabilityModel[] = [];\r\n planItemId: string;\r\n salesItemCoverageId: string;\r\n\r\n}\r\n\r\nexport class PlanGridItemAvailabilityModel {\r\n constructor(public available: boolean, public plan: PlanModel = null) {}\r\n}\r\n","import { UtilitiesService } from '../services/utilities.service';\r\n\r\nexport class WorkOrderSummary {\r\n Date: Date;\r\n Id: string;\r\n Status: string;\r\n WorkOrderItem: string;\r\n WorkOrderNumber: number;\r\n Type: string;\r\n EstimatedRetailCost: number;\r\n ContractorName: string;\r\n PropertyId: string;\r\n\r\n get streetViewUrl(): string {\r\n return UtilitiesService.baseAPIUrl + 'address/' + this.PropertyId + '/StreetView';\r\n }\r\n}\r\n","module.exports = \"#map_canvas {\\r\\n width: 100%;\\r\\n height: 700px;\\r\\n margin-top: 20px;\\r\\n}\\r\\n\\r\\nmat-radio-button {\\r\\n display: inline-block;\\r\\n margin-right: 20px;\\r\\n}\\r\\n\\r\\nmat-form-field {\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.radio-button {\\r\\n min-width: 180px;\\r\\n}\"","module.exports = \"
\\r\\n

Coverage\\r\\n Maps\\r\\n

\\r\\n\\r\\n \\r\\n {{marketArea.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
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit, NgZone} from '@angular/core';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {DialogsService} from '../../services/dialog.service';\r\ndeclare var google: any;\r\n\r\n@Component({\r\n selector: 'app-coverage-maps',\r\n templateUrl: './coverage-maps.component.html',\r\n styleUrls: ['./coverage-maps.component.css']\r\n})\r\nexport class CoverageMapsComponent implements OnInit {\r\n marketAreas: any[] = [];\r\n selectedMarketAreaId: string;\r\n addressToSearchFor: string;\r\n addressMarker: any;\r\n map: any;\r\n geoCoding = false;\r\n autocomplete;\r\n\r\n constructor(private realtorPortalService: RealtorPortalService,\r\n private dialogService: DialogsService, private zone: NgZone) {}\r\n\r\n ngOnInit() {\r\n this.realtorPortalService.getMarketStatesAndAreas().then(statesAndAreas => {\r\n console.log(statesAndAreas);\r\n statesAndAreas.forEach(state => {\r\n state.MarketAreas.forEach(area => this.marketAreas.push(area));\r\n });\r\n });\r\n }\r\n\r\n geoLocate() {\r\n this.initAutocomplete();\r\n // bias toward az locations\r\n const geolocation = {lat: 33.6816772, lng: -112.1103491};\r\n const circle = new google.maps.Circle({\r\n center: geolocation,\r\n radius: 1000,\r\n });\r\n this.autocomplete.setBounds(circle.getBounds());\r\n }\r\n\r\n initAutocomplete() {\r\n this.autocomplete = new google.maps.places.Autocomplete(\r\n document.getElementById('search_address'), {types: ['geocode']});\r\n\r\n this.autocomplete.addListener('place_changed', () => this.fillInAddress());\r\n }\r\n\r\n fillInAddress() {\r\n\r\n }\r\n\r\n search() {\r\n this.geoCoding = true;\r\n const geocoder = new google.maps.Geocoder();\r\n geocoder.geocode(\r\n {'address': this.addressToSearchFor}, (results, status) => {\r\n\r\n this.zone.run(() => this.geoCoding = false);\r\n if (status === google.maps.GeocoderStatus.OK) {\r\n const loc = results[0].geometry.location;\r\n\r\n if (this.addressMarker != null) {\r\n this.addressMarker.setMap(null);\r\n }\r\n\r\n const marker = new google.maps.Marker({\r\n position: loc,\r\n });\r\n\r\n this.addressMarker = marker;\r\n this.addressMarker.setMap(this.map);\r\n\r\n } else {\r\n // alert(\"Not found: \" + status);\r\n this.dialogService.alert(\r\n 'Not Found', 'Sorry, we could not locate that address.');\r\n }\r\n });\r\n }\r\n\r\n setMap() {\r\n setTimeout(() => {\r\n\r\n\r\n const kmlUrl = 'https://reports.oneguard.net/kml/' +\r\n this.selectedMarketAreaId + '.kml';\r\n const map_canvas = document.getElementById('map_canvas');\r\n const map_options = {\r\n center: new google.maps.LatLng(\r\n 33.661938, -112.110003), // OneGuard office coordinates, setting as\r\n // default in case of missing kml\r\n zoom: 8,\r\n mapTypeId: google.maps.MapTypeId.ROADMAP\r\n };\r\n\r\n const map = new google.maps.Map(map_canvas, map_options);\r\n const kmlOptions = {\r\n suppressInfoWindows: true,\r\n preserveViewport: false,\r\n map: map\r\n };\r\n\r\n this.map = map;\r\n // self.marketAreaMap(map);\r\n\r\n new google.maps.KmlLayer(kmlUrl, kmlOptions);\r\n });\r\n }\r\n}\r\n","module.exports = \"\"","module.exports = \"

\\r\\n federated-login works!\\r\\n

\\r\\n\"","import {Component, OnInit} from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {ApiAccessService} from '../../services/network/api-access.service';\r\n\r\n@Component({\r\n selector: 'app-federated-login',\r\n templateUrl: './federated-login.component.html',\r\n styleUrls: ['./federated-login.component.css'],\r\n})\r\nexport class FederatedLoginComponent implements OnInit {\r\n constructor(private route: ActivatedRoute, private router :Router) {\r\n this.route.params.subscribe(params => {\r\n const key: string = params['key'];\r\n\r\n const underscoreIndex = key.indexOf('_');\r\n\r\n const webUserId = key.substring(0, underscoreIndex);\r\n const integrationCode = key.substring(underscoreIndex + 1, key.length);\r\n\r\n ApiAccessService.fromFederatedLogin = true;\r\n ApiAccessService.setLoginInfo(webUserId, integrationCode);\r\n\r\n router.navigateByUrl('/home');\r\n });\r\n }\r\n\r\n ngOnInit() {}\r\n}\r\n","module.exports = \".home-icon {\\r\\n height: 100px;\\r\\n}\\r\\n\\r\\nmat-spinner {\\r\\n display: inline-block;\\r\\n}\\r\\n\\r\\n#recent-quote-spinner {\\r\\n margin-top: -150px;\\r\\n position: absolute;\\r\\n margin-left: -50px;\\r\\n}\\r\\n\\r\\n#recent-order-spinner {\\r\\n margin-top: -150px;\\r\\n position: absolute;\\r\\n margin-left: -50px;\\r\\n}\\r\\n\\r\\n#total-savings-spinner {\\r\\n margin-top: -150px;\\r\\n position: absolute;\\r\\n margin-left: -50px;\\r\\n}\\r\\n\\r\\na h3 {\\r\\n text-transform: none;\\r\\n font-size: 20px;\\r\\n}\\r\\n\\r\\n.aside {\\r\\n position: absolute;\\r\\n right: 10px;\\r\\n top: 10px;\\r\\n text-align: center;\\r\\n}\\r\\n\\r\\n.aside h1 {\\r\\n background-color: rgb(88,88,88);\\r\\n border-radius: 10px;\\r\\n text-align: center;\\r\\n font-size: 22px;\\r\\n display: inline-block;\\r\\n padding: 3px 10px;\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n#mobile-version {\\r\\n visibility: hidden;\\r\\n display:none;\\r\\n}\\r\\n\\r\\n#right-column {\\r\\n border-left: 1px dotted;\\r\\n margin-left: 0;\\r\\n}\\r\\n\\r\\n#desktop-body-content-container {\\r\\n margin-bottom: 20px;\\r\\n margin-top: 20px;\\r\\n border-top: 1px dotted;\\r\\n}\\r\\n\\r\\n.header {\\r\\n border-bottom: 4px solid rgb(89, 109, 130);\\r\\n}\\r\\n\\r\\n#desktop-version>.header, #mobile-version>.header {\\r\\n margin-top: -75px;\\r\\n padding-top: 85px;\\r\\n}\\r\\n\\r\\n#desktop-version>.header h1, #desktop-version>.header p, #mobile-version>.header h1, #mobile-version>.header p {\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n#desktop-version>.header h1.big-data, #mobile-version>.header h1.big-data {\\r\\n text-shadow: 2px 2px 2px rgba(0, 0, 0, .6);\\r\\n font-size: 64px;\\r\\n}\\r\\n\\r\\n@media (max-width: 960px) {\\r\\n\\r\\n #desktop-version {\\r\\n visibility: hidden;\\r\\n display:none;\\r\\n }\\r\\n\\r\\n #mobile-version {\\r\\n visibility: visible;\\r\\n display: block;\\r\\n max-width: 100%;\\r\\n margin-top:-1px;\\r\\n }\\r\\n\\r\\n #mobile-version>.header h1.big-data {\\r\\n font-size: 44px;\\r\\n }\\r\\n\\r\\n #mobile-version>.header {\\r\\n height: 300px;\\r\\n }\\r\\n }\"","module.exports = \"
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

No Record Attached

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

It looks like we don't have your real estate information associated with this account.

\\r\\n\\r\\n Create the association\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n

Welcome

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

{{sidebar.Name}}

\\r\\n

To the OneGuard Home Warranty Real Estate Portal

\\r\\n\\r\\n
\\r\\n New Quote\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n

Total\\r\\n Savings\\r\\n

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

{{totalSavings | currency: 'USD': 'symbol-narrow' : '1.0-0'}} *

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

* The estimated retail cost your clients have saved by having a OneGuard Home Warranty

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

Recent\\r\\n Orders\\r\\n

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

{{orders.length}}

\\r\\n
Orders
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Nothing Here Yet

\\r\\n

You can order a OneGuard Warranty in just a few minutes.

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

\\r\\n Coverage\\r\\n Areas\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n We offer coverage in Arizona and Texas\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

Recent\\r\\n Quotes\\r\\n

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

{{quotes.length}}

\\r\\n
Active Quotes
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Nothing Here Yet

\\r\\n

Creating a quote is simple and easy.

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

Account\\r\\n Executive\\r\\n

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

{{sidebar.AccountExecutiveName}}

\\r\\n {{sidebar.AccountExecutivePhone}}\\r\\n
\\r\\n {{sidebar.AccountExecutiveEmail}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

Downloadable\\r\\n Resources\\r\\n

\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n Arizona\\r\\n \\r\\n Texas\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n

Welcome

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

{{sidebar.Name}}

\\r\\n

To the OneGuard Home Warranty Real Estate Portal

\\r\\n\\r\\n
\\r\\n New Quote\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n

Total\\r\\n Savings\\r\\n

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

{{totalSavings | currency: 'USD': 'symbol-narrow' : '1.0-0'}} *

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

* The estimated retail cost your clients have saved by having a OneGuard Home Warranty

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

Recent\\r\\n Quotes\\r\\n

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

{{quotes.length}}

\\r\\n
Active Quotes
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Nothing Here Yet

\\r\\n

Creating a quote is simple and easy.

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

Recent\\r\\n Orders\\r\\n

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

{{orders.length}}

\\r\\n
Orders
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Nothing Here Yet

\\r\\n

You can order a OneGuard Warranty in just a few minutes.

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

Account\\r\\n Executive\\r\\n

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

{{sidebar.AccountExecutiveName}}

\\r\\n {{sidebar.AccountExecutivePhone}}\\r\\n
\\r\\n {{sidebar.AccountExecutiveEmail}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Coverage\\r\\n Areas\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n We offer coverage in Arizona, Texas and Nevada\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

Downloadable\\r\\n Resources\\r\\n

\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n Arizona\\r\\n Nevada\\r\\n Texas\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n {{document.DocumentName}}\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Arizona Home Warranty Brochure\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Arizona Home Warranty Brochure - Spanish\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certificate of Compliance\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certificate Table Tent\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Mechanical Inspection Form\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certified Pre-Owned Home Flyer\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Sample Certified Pre-Owned Home Brochure\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Nevada Home Warranty Brochure\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certificate of Compliance\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certificate Table Tent\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Mechanical Inspection Form\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certified Pre-Owned Home Flyer\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Sample Certified Pre-Owned Home Brochure\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Texas Home Warranty Brochure\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Texas Home Warranty Brochure - Spanish\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certificate of Compliance\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certificate Table Tent\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Mechanical Inspection Form\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Certified Pre-Owned Home Flyer\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n cloud_download\\r\\n Sample Certified Pre-Owned Home Brochure\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit, AfterViewInit} from '@angular/core';\r\nimport {DialogsService} from '../../services/dialog.service';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class HomeComponent implements OnInit,\r\n AfterViewInit {\r\n quotes: any[];\r\n recentQuotes: any[];\r\n orders: any[];\r\n recentOrders: any[];\r\n privateLabelDocuments: any[];\r\n sidebar: any;\r\n\r\n totalSavings = 0;\r\n loadingOrders = false;\r\n loadingQuotes = false;\r\n loadingTotalSavings = false;\r\n noRecordAttached = false;\r\n selectedState = 'AZ';\r\n\r\n isBeforeCutoffDate = true;\r\n\r\n constructor(private dialogService: DialogsService,\r\n private realtorPortalService: RealtorPortalService) {}\r\n\r\n ngOnInit() {\r\n var today = new Date();\r\n var cutoff = new Date(2023, 1, 1);\r\n\r\n if (today >= cutoff)\r\n this.isBeforeCutoffDate = false;\r\n\r\n this.loadingQuotes = true;\r\n this.realtorPortalService.getQuotes().then(quotes => {\r\n this.quotes = quotes;\r\n if (quotes.length <= 3) {\r\n this.recentQuotes = quotes;\r\n } else {\r\n this.recentQuotes = [];\r\n for (let i = 0; i < 3; i++) {\r\n this.recentQuotes.push(quotes[i]);\r\n }\r\n }\r\n this.doSetup();\r\n this.loadingQuotes = false;\r\n });\r\n\r\n this.loadingOrders = true;\r\n this.realtorPortalService.getOrders().then(orders => {\r\n this.orders = orders;\r\n this.doSetup();\r\n this.loadingOrders = false;\r\n\r\n if (orders.length <= 3) {\r\n this.recentOrders = orders;\r\n } else {\r\n this.recentOrders = [];\r\n for (let i = 0; i < 3; i++) {\r\n this.recentOrders.push(orders[i]);\r\n }\r\n }\r\n });\r\n\r\n this.loadingTotalSavings = true;\r\n this.realtorPortalService.getTotalSavingsByTrade().then(savingsByTrade => {\r\n if (savingsByTrade && savingsByTrade.length > 0) {\r\n this.totalSavings = savingsByTrade.map(i => i.EstimatedRetailCost)\r\n .reduce((a, b) => a + b);\r\n }\r\n this.loadingTotalSavings = false;\r\n });\r\n\r\n this.realtorPortalService.getSideBarInfo().then(sidebar => {\r\n this.sidebar = sidebar;\r\n this.selectedState = sidebar.State;\r\n this.doSetup();\r\n if (!sidebar.WebUserId) {\r\n this.noRecordAttached = true;\r\n } \r\n });\r\n\r\n this.realtorPortalService.getPrivateLabelDocuments().then(documents => {\r\n console.log(documents);\r\n this.privateLabelDocuments = documents;\r\n });\r\n }\r\n\r\n ngAfterViewInit() {}\r\n\r\n get baseUrl(): string { return UtilitiesService.baseAPIUrl; }\r\n\r\n doSetup() {\r\n if (this.orders && this.quotes && this.sidebar) {\r\n setTimeout(UtilitiesService.setupDocumentForAnimation(), 100);\r\n }\r\n }\r\n}\r\n","module.exports = \"mat-form-field {\\r\\n display: block;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\nmat-form-field input {\\r\\n display: block;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.do-bg-animate {\\r\\n -webkit-transform: translateX(-50px) translateY(-30px);\\r\\n transform: translateX(-50px) translateY(-30px);\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n@-webkit-keyframes slide-up {\\r\\n from {\\r\\n -webkit-transform: translateY(100%);\\r\\n transform: translateY(100%)\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateX(0);\\r\\n transform: translateX(0)\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n@keyframes slide-up {\\r\\n from {\\r\\n -webkit-transform: translateY(100%);\\r\\n transform: translateY(100%)\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateX(0);\\r\\n transform: translateX(0)\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n#authentication-failed {\\r\\n -webkit-animation: slide-up .7s ease-out;\\r\\n animation: slide-up .7s ease-out;\\r\\n margin-top: 30px;\\r\\n border-left: 7px solid #b76717;\\r\\n padding-left: 10px;\\r\\n border-radius: 3px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n#back-drop {\\r\\n margin-top: -120px;\\r\\n z-index: 2000;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.login-header {\\r\\n text-align: center;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n@media (max-width: 960px) {\\r\\n .spacer {\\r\\n height: 0;\\r\\n }\\r\\n mat-card {\\r\\n background-color: rgba(0, 0, 0, .3);\\r\\n box-shadow: none;\\r\\n }\\r\\n #authentication-failed {\\r\\n color: rgba(255, 255, 255, .8);\\r\\n }\\r\\n .dark-band {\\r\\n background-color: rgba(0, 0, 0, .7);\\r\\n margin-left: -20px;\\r\\n margin-right: -20px;\\r\\n padding-left: 20px;\\r\\n padding-right: 20px;\\r\\n padding-top: 10px;\\r\\n padding-bottom: 10px;\\r\\n margin-top: 10px;\\r\\n }\\r\\n mat-card input {\\r\\n color: rgba(255, 255, 255, .8);\\r\\n caret-color: rgba(255, 255, 255, .8);\\r\\n }\\r\\n mat-card button,\\r\\n mat-card a {\\r\\n color: rgba(255, 255, 255, .8);\\r\\n }\\r\\n mat-card i {\\r\\n color: rgba(255, 255, 255, .8);\\r\\n }\\r\\n .my-input-container {\\r\\n border: 1px solid rgba(255, 255, 255, .8);\\r\\n margin-bottom: 10px;\\r\\n border-radius: 5px;\\r\\n height: 50px;\\r\\n }\\r\\n button[disabled] {\\r\\n background-color: #939393 !important;\\r\\n }\\r\\n .show-background {\\r\\n margin-left: 0 !important;\\r\\n margin-right: 0 !important;\\r\\n padding-top: 100px;\\r\\n }\\r\\n .min-height-100 {\\r\\n min-height: 100%;\\r\\n height: 100%;\\r\\n }\\r\\n input:-webkit-autofill,\\r\\n input:-webkit-autofill:hover,\\r\\n input:-webkit-autofill:focus input:-webkit-autofill,\\r\\n textarea:-webkit-autofill,\\r\\n textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,\\r\\n select:-webkit-autofill,\\r\\n select:-webkit-autofill:hover,\\r\\n select:-webkit-autofill:focus {\\r\\n border: none;\\r\\n -webkit-text-fill-color: #fff;\\r\\n -webkit-box-shadow: 0 0 0px 1000px #000 inset;\\r\\n transition: background-color 5000s ease-in-out 0s;\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.login-icon {\\r\\n font-size: 28px;\\r\\n margin-top: 10px;\\r\\n margin-right: -10px;\\r\\n color: rgba(0, 0, 0, .7);\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n@media (max-width: 425px) {\\r\\n .a-flex-container.not-always {\\r\\n display: block !important;\\r\\n }\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n@media (min-width: 961px) {\\r\\n mat-card {\\r\\n display: inline-block;\\r\\n max-width: 400px;\\r\\n width: 100%;\\r\\n margin-top: 160px;\\r\\n }\\r\\n [flex] {\\r\\n display: flex;\\r\\n }\\r\\n [flex]>div {\\r\\n margin-left: 20px;\\r\\n flex: 1;\\r\\n }\\r\\n .welcome-container {\\r\\n vertical-align: bottom;\\r\\n color: #fff;\\r\\n text-align: right;\\r\\n }\\r\\n .welcome-container h1 {\\r\\n color: #fff;\\r\\n font-size: 84px;\\r\\n }\\r\\n .info-container {\\r\\n text-shadow: 2px 2px 2px rgba(0, 0, 0, .6);\\r\\n background-color: rgba(0, 0, 0, .6);\\r\\n padding: 20px;\\r\\n margin-left: -60px;\\r\\n margin-right: -30px;\\r\\n font-family: 'Open Sans';\\r\\n }\\r\\n\\r\\n input:-webkit-autofill,\\r\\n input:-webkit-autofill:hover,\\r\\n input:-webkit-autofill:focus input:-webkit-autofill,\\r\\n textarea:-webkit-autofill,\\r\\n textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,\\r\\n select:-webkit-autofill,\\r\\n select:-webkit-autofill:hover,\\r\\n select:-webkit-autofill:focus {\\r\\n border: none;\\r\\n -webkit-text-fill-color: rgb(0,0,0);\\r\\n -webkit-box-shadow: 0 0 0px 1000px rgb(255,255,255) inset;\\r\\n transition: background-color 5000s ease-in-out 0s;\\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

Welcome

\\r\\n

Thank you for visiting the OneGuard Real Estate Portal.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n person\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n lock\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n Sorry, we could not find match that login information. Please check you login information and try again.\\r\\n
\\r\\n\\r\\n
\\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 {Component, OnInit} from '@angular/core';\r\n\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\nimport {ApiAccessService} from '../../services/network/api-access.service';\r\nimport {Router} from '@angular/router';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-log-in',\r\n templateUrl: './log-in.component.html',\r\n styleUrls: ['./log-in.component.css'],\r\n})\r\nexport class LogInComponent implements OnInit {\r\n userName: string;\r\n password: string;\r\n authenticationFailed = false;\r\n authenticating = false;\r\n doBgAnimate = false;\r\n\r\n constructor(private realtorPortalService: RealtorPortalService,\r\n private router: Router) {}\r\n\r\n ngOnInit() {\r\n document.body.style.overflowX = 'hidden';\r\n document.body.style.overflowY = 'hidden';\r\n document.getElementsByTagName('html')[0].style.overflow = 'hidden';\r\n document.getElementById('login-bg').style.height =\r\n (window.innerHeight + 100) + 'px';\r\n setTimeout(() => { this.doBgAnimate = true; }, 1000);\r\n\r\n if (ApiAccessService.isLoggedIn && ApiAccessService.userName != null &&\r\n UtilitiesService.isEmailValid(ApiAccessService.userName)) {\r\n this.userName = ApiAccessService.userName;\r\n this.password = ApiAccessService.password;\r\n }\r\n }\r\n\r\n get canLogIn() { return this.userName && this.password; }\r\n\r\n logIn() {\r\n UtilitiesService.useTestEndpoint = this.userName === 'testuser@test.com';\r\n\r\n this.authenticating = true;\r\n this.authenticationFailed = false;\r\n this.realtorPortalService.authenticateUser({\r\n UserName: this.userName,\r\n Password: this.password\r\n }).then(result => {\r\n if (result) {\r\n this.realtorPortalService.clearSideBarInfo();\r\n document.body.style.overflowX = '';\r\n document.getElementsByTagName('html')[0].style.overflow = '';\r\n ApiAccessService.setLoginInfo(this.userName, this.password);\r\n this.router.navigateByUrl('/home');\r\n } else {\r\n this.authenticationFailed = true;\r\n }\r\n this.authenticating = false;\r\n });\r\n }\r\n}\r\n","module.exports = \"#log-out-container {\\r\\n display: table;\\r\\n margin: 0 auto;\\r\\n padding-top: 30px;\\r\\n}\\r\\n\\r\\n#log-out-container mat-card {\\r\\n text-align: center;\\r\\n}\\r\\n\\r\\n.thank-you-icon {\\r\\n width: 150px;\\r\\n}\"","module.exports = \"
\\r\\n \\r\\n
\\r\\n \\r\\n

Logged\\r\\n Out\\r\\n

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

You have been successfully logged out

\\r\\n\\r\\n\\r\\n \\r\\n lock_open Log In\\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit} from '@angular/core';\r\nimport {ApiAccessService} from '../../services/network/api-access.service';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\n\r\n@Component({\r\n selector: 'app-log-out',\r\n templateUrl: './log-out.component.html',\r\n styleUrls: ['./log-out.component.css']\r\n})\r\nexport class LogOutComponent implements OnInit {\r\n constructor(private realtorPortalService: RealtorPortalService) {}\r\n\r\n ngOnInit() {\r\n ApiAccessService.clearLoginInfo();\r\n this.realtorPortalService.clearSideBarInfo();\r\n }\r\n}\r\n","module.exports = \".data-box {\\r\\n color: #fff;\\r\\n text-align: center;\\r\\n padding: 10px;\\r\\n}\\r\\n\\r\\n.data-box h1 {\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.data-box i {\\r\\n /* color: #fff; */\\r\\n font-size: 48px;\\r\\n}\\r\\n\\r\\n.data-box.chill {\\r\\n background-color: #AED9DA;\\r\\n}\\r\\n\\r\\n.data-box.bondi {\\r\\n background-color: #2A93D5;\\r\\n}\\r\\n\\r\\n.data-box.marina {\\r\\n background-color: #135589;\\r\\n}\\r\\n\\r\\n.data-box.glass {\\r\\n background-color: #EDFAFD;\\r\\n color: rgba(0, 0, 0, 0.75);\\r\\n}\\r\\n\\r\\n.data-box.glass h1 {\\r\\n color: rgba(0, 0, 0, 0.75);\\r\\n}\\r\\n\\r\\n.a-flex-container>div:not(:first-child), .flex-container>div:not(:first-child) {\\r\\n margin-left: 0;\\r\\n}\\r\\n\\r\\n.left {\\r\\n text-align: left;\\r\\n}\\r\\n\\r\\n.data-bar {\\r\\n background-color: #fff;\\r\\n height: 25px;\\r\\n border-radius: 2px;\\r\\n color: #000;\\r\\n padding: 3px;\\r\\n font-size: 13px;\\r\\n transition: all .5s ease-out;\\r\\n}\"","module.exports = \"
\\r\\n\\r\\n
\\r\\n \\r\\n

Facts\\r\\n & Figures\\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n description\\r\\n \\r\\n
Active Contracts
\\r\\n

{{activePolicyCount}}

\\r\\n
\\r\\n
\\r\\n \\r\\n build\\r\\n \\r\\n
\\r\\n Claims\\r\\n
\\r\\n

{{claimsCount}}

\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n monetization_on\\r\\n \\r\\n
Total Savings
\\r\\n

{{totalSavings | currency: 'USD': 'symbol-narrow' : '1.0-0'}}

\\r\\n
\\r\\n
\\r\\n
Savings By Trade
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit} from '@angular/core';\r\nimport {CostByTrade} from '../../models/cost-by-trade';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\ndeclare var Chart: any;\r\n\r\n@Component({\r\n selector: 'app-metrics',\r\n templateUrl: './metrics.component.html',\r\n styleUrls: ['./metrics.component.css']\r\n})\r\nexport class MetricsComponent implements OnInit {\r\n costsByTrade: CostByTrade[] = [];\r\n totalSavings = 0;\r\n claimsCount = 0;\r\n activePolicyCount = 0;\r\n\r\n constructor(private realtorPortalService: RealtorPortalService) {}\r\n\r\n ngOnInit() {\r\n this.realtorPortalService.getTotalSavingsByTrade().then(costsByTrade => {\r\n this.costsByTrade = costsByTrade;\r\n this.setupExpensesByTradeChart();\r\n this.totalSavings =\r\n costsByTrade.map(i => i.EstimatedRetailCost).reduce((a, b) => a + b);\r\n this.claimsCount = costsByTrade.map(i => i.Count).reduce((a, b) => a + b);\r\n });\r\n\r\n this.realtorPortalService.getOrders().then(orders => {\r\n this.activePolicyCount =\r\n orders.filter(i => i.Status === 'Active' || i.Status === 'Pending' ||\r\n i.Status === 'Suspended')\r\n .length;\r\n });\r\n }\r\n\r\n setupExpensesByTradeChart() {\r\n if (!document.getElementById('expenses-by-trade-canvas')) {\r\n setTimeout(() => this.setupExpensesByTradeChart(), 500);\r\n return;\r\n }\r\n\r\n\r\n const config = {\r\n type: 'doughnut',\r\n data: {\r\n datasets: [\r\n {\r\n data: this.costsByTrade.map(i => i.EstimatedRetailCost),\r\n backgroundColor: [\r\n '#1b81ac',\r\n '#759422',\r\n '#dd8e07',\r\n '#69767c',\r\n '#a71926',\r\n 'yellow',\r\n 'pink',\r\n 'blue',\r\n 'red',\r\n 'brown',\r\n ],\r\n label: 'Dataset 1'\r\n }\r\n ],\r\n labels: this.costsByTrade.map(i => i.TradeName)\r\n },\r\n options: {\r\n responsive: true,\r\n legend:\r\n {position: 'right', enabled: true, labels: {fontColor: '#ffffff'}},\r\n animation: {animateScale: true, animateRotate: true}\r\n }\r\n };\r\n\r\n const d: any = document;\r\n const ctx = d.getElementById('expenses-by-trade-canvas').getContext('2d');\r\n new Chart(ctx, config);\r\n }\r\n}\r\n","module.exports = \"#property-image-container {\\r\\n max-height: 300px;\\r\\n overflow: hidden;\\r\\n position: absolute;\\r\\n width: 100%;\\r\\n }\\r\\n \\r\\n #property-image-container img {\\r\\n width: 100%;\\r\\n margin-top: -20%;\\r\\n -webkit-filter: blur(3px);\\r\\n filter: blur(3px);\\r\\n }\\r\\n \\r\\n .container {\\r\\n position: relative;\\r\\n min-height: 300px;\\r\\n box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.2);\\r\\n background-color: #fff;\\r\\n }\\r\\n \\r\\n #policy-id-container {\\r\\n position: relative;\\r\\n margin-bottom: 20px;\\r\\n color: #fff;\\r\\n background-color: rgba(0, 0, 0, .5);\\r\\n border-radius: 5px 0 0 5px;\\r\\n margin-top: 20px;\\r\\n min-width: 150px;\\r\\n padding-left: 30px;\\r\\n padding-top: 10px;\\r\\n padding-bottom: 10px;\\r\\n }\\r\\n \\r\\n #resend-panel {\\r\\n position: absolute;\\r\\n padding: 20px;\\r\\n background-color: #fff;\\r\\n box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.35);\\r\\n border: 1px solid rgba(0,0,0,.1);\\r\\n width: 100%;\\r\\n max-width: 400px;\\r\\n z-index: 2;\\r\\n }\\r\\n \\r\\n #resend-panel mat-form-field {\\r\\n display: block;\\r\\n width: 100%;\\r\\n }\\r\\n \\r\\n #policy-id-container h3 {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n #address-container {\\r\\n position: relative;\\r\\n margin-bottom: 20px;\\r\\n color: #fff;\\r\\n background-color: rgba(0, 0, 0, .5);\\r\\n border-radius: 0 5px 5px 0;\\r\\n margin-top: 20px;\\r\\n min-width: 150px;\\r\\n padding-left: 30px;\\r\\n padding-top: 10px;\\r\\n padding-bottom: 10px;\\r\\n padding-right: 30px;\\r\\n }\\r\\n \\r\\n #address-container h3 {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n li {\\r\\n font-size: 12px;\\r\\n display: inline-block;\\r\\n width: 50%;\\r\\n }\\r\\n \\r\\n .cc-logo {\\r\\n height: 30px;\\r\\n float: left;\\r\\n margin-right: 10px;\\r\\n }\\r\\n \\r\\n .property-button {\\r\\n display: block;\\r\\n width: 100%;\\r\\n text-align: left;\\r\\n padding: 3px 5px;\\r\\n white-space: normal;\\r\\n }\\r\\n \\r\\n .property-button p {\\r\\n line-height: 20px;\\r\\n margin: 0;\\r\\n text-transform: none;\\r\\n }\\r\\n \\r\\n .property-button h3 {\\r\\n line-height: 18px;\\r\\n font-size: 18px;\\r\\n text-transform: none;\\r\\n }\\r\\n \\r\\n .property-street-view {\\r\\n /* border-radius: 5px; */\\r\\n box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.75);\\r\\n }\\r\\n \\r\\n .mobile-toolbar {\\r\\n display: none;\\r\\n }\\r\\n \\r\\n .mobile-toolbar button {\\r\\n padding: 0 5px;\\r\\n border-bottom: 2px solid transparent;\\r\\n outline: none;\\r\\n }\\r\\n \\r\\n .selected {\\r\\n border-bottom: 2px solid #637283 !important;\\r\\n }\\r\\n \\r\\n #renewal-call-out {\\r\\n background-color: rgb(228, 108, 0);\\r\\n color: #fff;\\r\\n text-align: center;\\r\\n padding: 10px;\\r\\n padding-bottom: 10px;\\r\\n margin: 10px;\\r\\n border-radius: 3px;\\r\\n font-size: 14px;\\r\\n display: table;\\r\\n width: calc(100% - 40px);\\r\\n max-width: 980px;\\r\\n margin: 0 auto;\\r\\n margin-bottom: 10px;\\r\\n }\\r\\n \\r\\n #renewal-call-out a {\\r\\n color: rgb(228, 108, 0);\\r\\n }\\r\\n \\r\\n .tenant-item {\\r\\n border-bottom: 1px dotted rgba(0, 0, 0, .5);\\r\\n padding-top: 20px;\\r\\n position: relative;\\r\\n }\\r\\n \\r\\n .remove-button {\\r\\n position: absolute;\\r\\n right: 0;\\r\\n z-index: 2;\\r\\n min-width: 44px;\\r\\n }\\r\\n \\r\\n #add-new-tenant-button {\\r\\n border: 4px dashed rgba(234,97,33,.1);\\r\\n margin-top: 10px;\\r\\n }\\r\\n \\r\\n .document-button {\\r\\n display: inline-block;\\r\\n width: 171px;\\r\\n vertical-align: top;\\r\\n margin-bottom: 20px;\\r\\n }\\r\\n \\r\\n .document-button>button, .document-button>a {\\r\\n width: 100%;\\r\\n display: block;\\r\\n }\\r\\n \\r\\n #header-spacer-div {\\r\\n height: 300px;\\r\\n }\\r\\n \\r\\n @media (max-width: 960px) {\\r\\n #address-container {\\r\\n display: inline-block;\\r\\n margin-top: 100px;\\r\\n }\\r\\n #policy-id-container {\\r\\n position: absolute;\\r\\n right: calc(50% - 105px);\\r\\n margin-top: 0;\\r\\n border-radius: 0 0 5px 5px;\\r\\n padding-right: 30px;\\r\\n min-width: 0;\\r\\n width: 150px;\\r\\n text-align: center;\\r\\n }\\r\\n .dotted-left {\\r\\n border-left: none !important;\\r\\n border-top: 1px dotted rgba(0, 0, 0, .5);\\r\\n }\\r\\n .mobile-toolbar {\\r\\n display: flex;\\r\\n margin-bottom: 5px;\\r\\n }\\r\\n \\r\\n #non-picture-container {\\r\\n margin-top: 20px;\\r\\n }\\r\\n\\r\\n #header-spacer-div {\\r\\n height: 196px;\\r\\n }\\r\\n }\\r\\n \\r\\n @media(max-width: 700px) {\\r\\n #resend-panel {\\r\\n left: 0;\\r\\n max-width: calc(100% - 50px);\\r\\n }\\r\\n }\\r\\n \"","module.exports = \"
\\r\\n
\\r\\n Loading Coverage Information...\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{policySummary.PolicySummary.Status}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Policy #\\r\\n

-1\\\">{{policySummary.PolicySummary.PolicyNumber}}\\r\\n

\\r\\n

Coming Soon

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

{{policySummary.PolicySummary.PropertyAddress}}

\\r\\n
{{policySummary.PolicySummary.PropertyCity}}, {{policySummary.PolicySummary.PropertyState}} {{policySummary.PolicySummary.PropertyZip}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
Estimated Closing Date
\\r\\n
Escrow #
\\r\\n
\\r\\n
\\r\\n
{{policySummary.PolicySummary.EstimatedClosingDate | date: 'shortDate'}}
\\r\\n
-
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{policySummary.PolicySummary.EscrowNumber}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n today\\r\\n \\r\\n Effective Date\\r\\n
{{policySummary.PolicySummary.EffectiveDate | date: 'shortDate'}} - {{policySummary.PolicySummary.ExpirationDate | date: 'shortDate'}}\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

{{policySummary.PolicySummary.PlanName}}

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

Standard Items

\\r\\n
    \\r\\n
  • {{standardItem.SalesItemName}}
  • \\r\\n
\\r\\n\\r\\n
0\\\">\\r\\n

Options

\\r\\n
    \\r\\n
  • {{optionalItem.SalesItemName}}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

Service Requests

\\r\\n
\\r\\n
\\r\\n \\r\\n add\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n Loading History\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{workOrder.WorkOrderNumber}} - {{workOrder.WorkOrderItem}}

\\r\\n

\\r\\n {{workOrder.ContractorName}}\\r\\n
{{workOrder.Date | date: 'shortDate'}} - {{workOrder.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
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

Documents

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\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 {Component, OnInit, HostListener} from '@angular/core';\r\nimport {ActivatedRoute} from '@angular/router';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {WorkOrderSummary} from '../../models/work-order-summary';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\nimport {MatSnackBar} from '@angular/material';\r\nimport {InspectionUploadArgs} from '../../models/inspection-upload';\r\nimport {\r\n ToastSuccessComponent\r\n} from '../../parts/toast-success/toast-success.component';\r\n\r\n@Component({\r\n selector: 'app-order',\r\n templateUrl: './order.component.html',\r\n styleUrls: ['./order.component.css']\r\n})\r\nexport class OrderComponent implements OnInit {\r\n policyId: string;\r\n policySummary: any;\r\n workOrders: WorkOrderSummary[] = [];\r\n loadingMoreHistory = false;\r\n loadingHistory = false;\r\n hasMoreHistory = false;\r\n mobileIndex = 0;\r\n canRenew = false;\r\n private swipeCoord?:[number, number];\r\n private swipeTime?: number;\r\n loadingPolicy = false;\r\n loadingInspection = false;\r\n emailToSendTo = '';\r\n showResendConfirmation = false;\r\n resendingQuote = false;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private realtorPortalService: RealtorPortalService,\r\n private snakbar: MatSnackBar) {}\r\n\r\n get baseUrl() { return UtilitiesService.baseAPIUrl; }\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n this.policyId = params['id'];\r\n\r\n\r\n\r\n this.loadingPolicy = true;\r\n this.realtorPortalService.getPolicySummaryById(this.policyId)\r\n .then(ps => {\r\n\r\n if (ps && ps.PolicySummary &&\r\n ps.PolicySummary.EstimatedClosingDate) {\r\n ps.PolicySummary.EstimatedClosingDate =\r\n new Date(ps.PolicySummary.EstimatedClosingDate);\r\n }\r\n\r\n this.policySummary = ps;\r\n\r\n this.loadingPolicy = false;\r\n\r\n let daysTillExpiration = 0;\r\n if (this.policySummary.PolicySummary.ExpirationDate) {\r\n const oneDay = 24 * 60 * 60 * 1000;\r\n daysTillExpiration = Math.round(Math.abs(\r\n (new Date().getTime() -\r\n new Date(this.policySummary.PolicySummary.ExpirationDate)\r\n .getTime()) /\r\n (oneDay)));\r\n }\r\n\r\n setTimeout(() => this.canRenew =\r\n this.policySummary.PolicySummary.CanRenew &&\r\n daysTillExpiration < 45,\r\n 1000);\r\n\r\n this.realtorPortalService.getClaimHistoryByPolicyId(this.policyId,\r\n null, 10)\r\n .then(items => {\r\n this.hasMoreHistory = items.length === 10;\r\n this.workOrders = items;\r\n });\r\n });\r\n\r\n this.realtorPortalService.getSideBarInfo().then(\r\n sideBar => { this.emailToSendTo = sideBar.Email; });\r\n });\r\n }\r\n\r\n @HostListener('window:hashchange', ['$event'])\r\n watchUrlHash(event) {\r\n const hash = window.location.hash;\r\n\r\n if (hash === '#Home') {\r\n this.mobileIndex = 0;\r\n } else if (hash === '#Documents') {\r\n this.mobileIndex = 1;\r\n } else {\r\n this.mobileIndex = 0;\r\n }\r\n }\r\n\r\n estimatedClosingDateChanged(e) {\r\n const date: Date = e;\r\n if (date.getFullYear() >= new Date().getFullYear()) {\r\n this.realtorPortalService.updateEstimatedClosingDate(this.policyId, e);\r\n }\r\n }\r\n\r\n get canResendOrderConfirmation() {\r\n return this.emailToSendTo &&\r\n UtilitiesService.isEmailValid(this.emailToSendTo);\r\n }\r\n\r\n onStepChange() {\r\n if (this.mobileIndex === 0) {\r\n window.location.hash = 'Home';\r\n } else if (this.mobileIndex === 1) {\r\n window.location.hash = 'Documents';\r\n }\r\n }\r\n\r\n loadMoreHistory() {\r\n this.loadingMoreHistory = true;\r\n const lastItemDate = this.workOrders[this.workOrders.length - 1].Date;\r\n\r\n lastItemDate.setSeconds(lastItemDate.getSeconds());\r\n\r\n this.realtorPortalService.getClaimHistoryByPolicyId(this.policyId,\r\n lastItemDate, 10)\r\n .then(moreHistory => {\r\n moreHistory.forEach(item => {\r\n this.workOrders.push(item);\r\n this.loadingMoreHistory = false;\r\n this.hasMoreHistory = moreHistory.length === 10;\r\n });\r\n });\r\n }\r\n\r\n resendQuote() {\r\n this.resendingQuote = true;\r\n this.realtorPortalService.resendOrderConfirmation(this.policyId,\r\n this.emailToSendTo)\r\n .then(() => {\r\n\r\n this.resendingQuote = false;\r\n this.showResendConfirmation = false;\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n data: 'The order confirmation has been sent.',\r\n duration: 10000,\r\n panelClass: ['success-toast']\r\n });\r\n });\r\n }\r\n\r\n showFileUpload() { document.getElementById('fileToUpload1').click(); }\r\n\r\n handleFileUpload(evt) { this.handleFiles(evt); }\r\n\r\n handleFiles(files) {\r\n if (files.srcElement) {\r\n files = files.srcElement.files;\r\n }\r\n for (let i = 0; i < files.length; i++) {\r\n const file = files[i];\r\n const reader = new FileReader();\r\n\r\n const loadIt = (base64, fileName) => {\r\n this.loadingInspection = true;\r\n const inspectionUploadArgs = new InspectionUploadArgs();\r\n inspectionUploadArgs.PolicyId = this.policyId;\r\n inspectionUploadArgs.FileName = fileName;\r\n inspectionUploadArgs.Attachment = base64;\r\n\r\n\r\n this.realtorPortalService.uploadInspection(inspectionUploadArgs)\r\n .then(result => {\r\n this.loadingInspection = false;\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n data: 'Your inspection has been uploaded. Thank You.',\r\n duration: 10000,\r\n panelClass: ['success-toast']\r\n });\r\n });\r\n };\r\n\r\n reader.onload = (function(fileName) {\r\n return function(e) {\r\n this.dragTargetActive = false;\r\n loadIt(e.target.result, fileName);\r\n\r\n };\r\n })(file.name);\r\n\r\n reader.readAsDataURL(file);\r\n }\r\n }\r\n\r\n swipe(e: TouchEvent, when: string): void {\r\n if (this.policySummary &&\r\n this.policySummary.PolicySummary.PolicyNumber === -1) {\r\n return;\r\n }\r\n\r\n const coord:[number, number] =\r\n [e.changedTouches[0].pageX, e.changedTouches[0].pageY];\r\n const time = new Date().getTime();\r\n\r\n if (when === 'start') {\r\n this.swipeCoord = coord;\r\n this.swipeTime = time;\r\n } else if (when === 'end') {\r\n const direction =\r\n [coord[0] - this.swipeCoord[0], coord[1] - this.swipeCoord[1]];\r\n const duration = time - this.swipeTime;\r\n\r\n if (duration < 1000 && Math.abs(direction[0]) > 60 &&\r\n Math.abs(direction[0]) > Math.abs(direction[1] * 3)) {\r\n const swipe = direction[0] < 0 ? 'next' : 'previous';\r\n if (swipe === 'next') {\r\n if (this.mobileIndex < 3) {\r\n this.mobileIndex++;\r\n window.scrollTo({\r\n left: 0,\r\n top: 0,\r\n behavior: 'smooth',\r\n });\r\n }\r\n } else {\r\n if (this.mobileIndex !== 0) {\r\n this.mobileIndex--;\r\n window.scrollTo({\r\n left: 0,\r\n top: 0,\r\n behavior: 'smooth',\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","module.exports = \"mat-spinner {\\r\\n display: inline-block;\\r\\n margin-bottom: 30px;\\r\\n}\"","module.exports = \"
\\r\\n\\r\\n \\r\\n
\\r\\n Loading Orders...\\r\\n
\\r\\n 0\\\">\\r\\n
\\r\\n \\r\\n

All\\r\\n Orders\\r\\n

\\r\\n
\\r\\n New Order\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

Nothing Here Yet

\\r\\n

You can order a OneGuard Warranty in just a few minutes.

\\r\\n New Order\\r\\n
\\r\\n
\\r\\n \\r\\n

Nothing Here

\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit} from '@angular/core';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport { UtilitiesService } from '../../services/utilities.service';\r\n\r\n@Component({\r\n selector: 'app-orders',\r\n templateUrl: './orders.component.html',\r\n styleUrls: ['./orders.component.css']\r\n})\r\nexport class OrdersComponent implements OnInit {\r\n orders: any[];\r\n isBeforeCutoffDate = true;\r\n\r\n constructor(private realtorPortalService: RealtorPortalService) {}\r\n\r\n ngOnInit() {\r\n this.realtorPortalService.getOrders().then(orders => this.orders = orders);\r\n\r\n var today = new Date();\r\n var cutoff = new Date(2023, 1, 1);\r\n\r\n if (today >= cutoff)\r\n this.isBeforeCutoffDate = false;\r\n }\r\n\r\n get baseUrl(): string { return UtilitiesService.baseAPIUrl; }\r\n}\r\n","module.exports = \"\"","module.exports = \"

\\r\\n policies works!\\r\\n

\\r\\n\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-policies',\r\n templateUrl: './policies.component.html',\r\n styleUrls: ['./policies.component.css']\r\n})\r\nexport class PoliciesComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","module.exports = \".table {\\r\\n margin-top: 30px;\\r\\n}\\r\\n\\r\\n.table {\\r\\n width: 100%;\\r\\n max-width: 100%;\\r\\n margin-bottom: 20px;\\r\\n}\\r\\n\\r\\n.dotted-bottom {\\r\\n border-bottom: 1px dotted rgba(0, 0, 0, .3);\\r\\n padding-bottom: 20px;\\r\\n}\\r\\n\\r\\n.undo-button {\\r\\n position: absolute;\\r\\n right: 20px;\\r\\n top: 20px;\\r\\n}\\r\\n\\r\\n.qty-column {\\r\\n width: 80px;\\r\\n flex: none;\\r\\n text-align: right;\\r\\n}\\r\\n\\r\\nbutton.text-left {\\r\\n white-space: normal;\\r\\n line-height: 20px;\\r\\n text-transform: none;\\r\\n margin-top: 20px;\\r\\n}\\r\\n\\r\\ndiv.table-header {\\r\\n display: flex;\\r\\n border-bottom: 3px solid #0d47a1;\\r\\n}\\r\\n\\r\\n.agent-breadcrumb button[mat-button] {\\r\\n padding: 0;\\r\\n min-width: 0;\\r\\n}\\r\\n\\r\\n.table-header>div {\\r\\n flex: 1;\\r\\n padding: 10px 5px;\\r\\n color: rgba(0, 0, 0, .5);\\r\\n text-transform: uppercase;\\r\\n font-size: 12px;\\r\\n font-weight: 700;\\r\\n}\\r\\n\\r\\n.table-row {\\r\\n border-bottom: 1px solid #0d47a1;\\r\\n color: rgba(0, 0, 0, .5);\\r\\n display: flex;\\r\\n}\\r\\n\\r\\n.table-row>div {\\r\\n padding: 10px 5px;\\r\\n flex: 1;\\r\\n overflow: hidden;\\r\\n white-space: nowrap;\\r\\n text-overflow: ellipsis;\\r\\n min-height: 36px;\\r\\n}\\r\\n\\r\\n[flex3] {\\r\\n flex: 3 !important;\\r\\n}\\r\\n\\r\\n.quantity-select {\\r\\n display: block;\\r\\n width: 100%;\\r\\n margin-top: -24px;\\r\\n}\\r\\n\\r\\n.plan-quantity-select {\\r\\n display: block;\\r\\n width: 50%;\\r\\n margin-top: -20px;\\r\\n}\\r\\n\\r\\n.quantity-select mat-select {\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n.full-progress-container {\\r\\n max-width: 300px;\\r\\n padding: 20px;\\r\\n}\\r\\n\\r\\n.full-start-cap {\\r\\n background-color: #CCCC;\\r\\n width: 5px;\\r\\n height: 10px;\\r\\n margin-left: 11px;\\r\\n border-radius: 2px 2px 0 0;\\r\\n}\\r\\n\\r\\n.full-dot-container {\\r\\n display: flex;\\r\\n}\\r\\n\\r\\n.full-dot-container>div {\\r\\n flex: 1;\\r\\n}\\r\\n\\r\\n.full-dot {\\r\\n flex: none !important;\\r\\n border-radius: 100%;\\r\\n background-color: #ccc;\\r\\n height: 25px;\\r\\n width: 25px;\\r\\n transition: all 1s ease-out;\\r\\n}\\r\\n\\r\\n.full-dot i {\\r\\n visibility: hidden;\\r\\n transition: all 1s ease-out;\\r\\n color: green;\\r\\n}\\r\\n\\r\\n.full-dot.complete i {\\r\\n visibility: visible;\\r\\n color: green;\\r\\n margin-top: -5px;\\r\\n margin-left: 5px;\\r\\n}\\r\\n\\r\\n.step-heading {\\r\\n /* color: #ea6121; */\\r\\n margin-left: 10px;\\r\\n font-size: 18px;\\r\\n}\\r\\n\\r\\n.step-heading>h3 {\\r\\n flex: 1;\\r\\n font-size: 15px;\\r\\n}\\r\\n\\r\\n.scroll-fixed {\\r\\n position: fixed;\\r\\n top: 60px;\\r\\n}\\r\\n\\r\\n.full-step-link-container {\\r\\n display: flex;\\r\\n margin-top: -2px;\\r\\n}\\r\\n\\r\\n.full-step-link-container>div {\\r\\n flex: 1;\\r\\n}\\r\\n\\r\\n.full-step-link {\\r\\n background-color: #CCCC;\\r\\n width: 5px;\\r\\n flex: none !important;\\r\\n margin-left: 11px;\\r\\n transition: all 1s ease-out;\\r\\n margin-bottom: 10px;\\r\\n}\\r\\n\\r\\n.step-description-full {\\r\\n margin-left: 20px;\\r\\n padding-top: 10px;\\r\\n padding-bottom: 25px;\\r\\n font-size: 14px;\\r\\n}\\r\\n\\r\\n.complete {\\r\\n background-color: rgb(140, 199, 115);\\r\\n}\\r\\n\\r\\n.current {\\r\\n background-color: #CD5360;\\r\\n}\\r\\n\\r\\n.full-dot.current {\\r\\n -webkit-transform: scale(1.3);\\r\\n transform: scale(1.3);\\r\\n}\\r\\n\\r\\n.status-add-info {\\r\\n font-style: italic;\\r\\n margin-left: 10px;\\r\\n}\\r\\n\\r\\n.cost-line-item {\\r\\n border-bottom: 1px dotted rgba(0, 0, 0, .5);\\r\\n font-size: 13px;\\r\\n padding-top: 2px;\\r\\n padding-bottom: 2px;\\r\\n}\\r\\n\\r\\n.order-total-line {\\r\\n font-size: 16px;\\r\\n padding-top: 5px;\\r\\n}\\r\\n\\r\\nmat-form-field {\\r\\n display: block;\\r\\n}\\r\\n\\r\\n.desktop-status-pane {\\r\\n width: 341px;\\r\\n background-color: rgba(0, 0, 0, .06);\\r\\n}\\r\\n\\r\\n#completion-step h3 {\\r\\n font-size: 20px;\\r\\n line-height: 24px;\\r\\n}\\r\\n\\r\\n@media (max-width: 960px) {\\r\\n mat-card {\\r\\n box-shadow: none !important;\\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 Your\\r\\n Progress\\r\\n

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

Property Selection

\\r\\n
0\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
1\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

Plan Selection

\\r\\n
1\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
2\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

Options

\\r\\n
2\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
2\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

Review

\\r\\n
3\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
3\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

{{order.SellersCoverage ? 'Seller\\\\'s' : 'Buyer\\\\'s'}} Info

\\r\\n
4\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
4\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

Title Company

\\r\\n
4\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
5\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

Closing Info

\\r\\n
5\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
6\\\">\\r\\n check\\r\\n
\\r\\n
\\r\\n

Submit Order

\\r\\n
6\\\" class=\\\"no-grow\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n Property\\r\\n Address\\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n {{ms.StateFullName}}\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n Single Family\\r\\n Condo/Townhouse\\r\\n Duplex\\r\\n Triplex\\r\\n Fourplex\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
* Indicates a mandatory field
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

\\r\\n We're Getting Your Personalized Plan Selection\\r\\n

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

\\r\\n Plan\\r\\n Selection\\r\\n

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

\\r\\n Options\\r\\n Selection\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Price Per Month\\r\\n Price Per Year\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Item
\\r\\n
Qty
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{option.name}}\\r\\n
\\r\\n {{option.price| currency:'USD':'symbol-narrow':'1.2-2'}}\\r\\n {{option.priceRecurring| currency:'USD':'symbol-narrow':'1.2-2'}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n 1\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{ number }}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

\\r\\n Order\\r\\n Summary\\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{selectedPlan.name}}
\\r\\n
{{basePrice | currency: 'USD': 'symbol-narrow'}}
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{option.name}}
\\r\\n
{{option.price | currency : 'USD' : 'symbol-narrow'}}
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{promotionObj.Description}}
\\r\\n
\\r\\n {{promotionObj.Amount | currency: 'USD' : 'symbol-narrow'}}\\r\\n {{promotionObj.MonthlyAmount | currency: 'USD' : 'symbol-narrow'}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Order Total\\r\\n\\r\\n
\\r\\n
{{yearlyTotal | currency : 'USD' : 'symbol-narrow'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n / Month\\r\\n / Year\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n 1\\r\\n 2\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n First Payment *\\r\\n
\\r\\n
\\r\\n {{firstPayment | currency : 'USD' : 'symbol-narrow'}}\\r\\n
\\r\\n
* Includes 1st and last month's payments
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Total Payment\\r\\n
\\r\\n
\\r\\n {{orderTotal | currency : 'USD' : 'symbol-narrow'}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
- OR -
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

\\r\\n {{order.SellersCoverage ? 'Seller\\\\'s' : 'Buyer\\\\'s'}}\\r\\n Information\\r\\n

\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n The mailing address is not the property address\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n United States\\r\\n Canada\\r\\n Mexico\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n

\\r\\n Title\\r\\n Search\\r\\n

\\r\\n

Enter the title company name and city or the phone number in the box provided below and we will try and locate your information.

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
-OR -
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n Search\\r\\n Results\\r\\n

\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
Selected Escrow Company
\\r\\n\\r\\n
\\r\\n
\\r\\n

{{selectedTitleCompany.Name}}

\\r\\n
{{selectedTitleCompany.StreetAddress}} {{selectedTitleCompany.City}}, {{selectedTitleCompany.State}} {{selectedTitleCompany.Zip}}
\\r\\n\\r\\n
Phone: {{selectedTitleCompany.Phone}}
\\r\\n
Fax: {{selectedTitleCompany.Fax}}
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
Closing Officer
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{closingOfficer.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
\\r\\n
Buyer's Agent
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Buyer's Agent
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{agent.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\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n

\\r\\n Agent\\r\\n Search\\r\\n

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

Enter the name or license number in the box provided below and we will try and locate your information in our existing realtor database.

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
- OR -
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n Branch\\r\\n Search\\r\\n

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

Enter the name or license number in the box provided below and we will try and locate your information in our existing realtor database.

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

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n New\\r\\n Branch\\r\\n

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

Please provide the contact information for your real estate branch.

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

\\r\\n Create\\r\\n Record\\r\\n

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

\\r\\n New\\r\\n Title Company\\r\\n

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

Please provide the contact information for your title company

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

\\r\\n Closing\\r\\n Info\\r\\n

\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n Buyer\\r\\n Seller\\r\\n Seller/Buyer\\r\\n Buyer's Agent\\r\\n Listing Agent\\r\\n 50/50 Agent Split\\r\\n Unknown\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Order\\r\\n Review\\r\\n

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

Please review the home warranty order. If everything is correct, press 'Submit' to complete the order.

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

Covered Property

\\r\\n
\\r\\n {{order.Property.Address}}\\r\\n
{{order.Property.City}}, {{order.Property.State}} {{order.Property.Zip}}\\r\\n
{{order.Property.DwellingType}}\\r\\n
\\r\\n\\r\\n

Selected Coverage

\\r\\n
\\r\\n
{{selectedPlan.name}}
\\r\\n
{{basePrice | currency: 'USD': 'symbol-narrow'}}
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{option.name}}
\\r\\n
{{option.price | currency : 'USD' : 'symbol-narrow'}}
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{promotionObj.Description}}
\\r\\n
\\r\\n {{promotionObj.Amount | currency: 'USD' : 'symbol-narrow'}}\\r\\n {{promotionObj.MonthlyAmount | currency: 'USD' : 'symbol-narrow'}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Total({{coverageLength}})\\r\\n\\r\\n
\\r\\n
\\r\\n {{yearlyTotal | currency : 'USD' : 'symbol-narrow'}}\\r\\n / Month\\r\\n / Year\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n First Payment *\\r\\n
\\r\\n
\\r\\n {{firstPayment | currency : 'USD' : 'symbol-narrow'}}\\r\\n
\\r\\n
* Includes 1st and last month's payments
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Total Payment\\r\\n
\\r\\n
\\r\\n {{orderTotal | currency : 'USD' : 'symbol-narrow'}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Buyer Information

\\r\\n
\\r\\n {{order.Buyer.FirstName}}\\r\\n
Home Phone: {{order.Buyer.HomePhone}}\\r\\n
Mobile Phone: {{order.Buyer.CellPhone}}\\r\\n
{{order.Buyer.Email}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Seller Information

\\r\\n
\\r\\n {{order.Seller.FirstName}}\\r\\n
Home Phone: {{order.Seller.HomePhone}}\\r\\n
Mobile Phone: {{order.Seller.CellPhone}}\\r\\n
{{order.Seller.Email}}\\r\\n
\\r\\n
\\r\\n\\r\\n

Title Company

\\r\\n
\\r\\n {{selectedTitleCompany.Name}}\\r\\n
{{selectedTitleCompany.StreetAddress}} {{selectedTitleCompany.City}}, {{selectedTitleCompany.State}} {{selectedTitleCompany.ZipCode}}\\r\\n
Phone: {{selectedTitleCompany.Phone}} Fax: {{selectedTitleCompany.Fax}}\\r\\n
\\r\\n
{{selectedClosingOfficerName}}\\r\\n
\\r\\n\\r\\n
\\r\\n

Buyer's Agent

\\r\\n
\\r\\n {{selectedBuyersAgent.Name}}\\r\\n
{{selectedBuyerBranch.Name}}
\\r\\n
\\r\\n
\\r\\n\\r\\n

Escrow Information

\\r\\n
\\r\\n Escrow #: {{order.EscrowNumber}}\\r\\n
Estimated Closing Date: {{order.EstimatedClosingDate | date: 'shortDate'}}\\r\\n
Responsible Party: {{order.EscrowResponsibleParty}}\\r\\n
\\r\\n\\r\\n

Additional Items

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

\\r\\n Send\\r\\n Quote\\r\\n

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

We're loading your quote

\\r\\n This shouldn't take long.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\"","import {Component, OnInit, HostListener, NgZone} from '@angular/core';\r\nimport {Address} from '../../models/address';\r\nimport {CreditCard} from '../../models/credit-card';\r\nimport {PlanModel, SalesItemModel} from '../../models/plan';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {DialogsService} from '../../services/dialog.service';\r\nimport {MatSnackBar, MatDialog} from '@angular/material';\r\nimport {Router, ActivatedRoute} from '@angular/router';\r\nimport {\r\n NewPolicy,\r\n OptionalItemInfo,\r\n CustomerSummary\r\n} from '../../models/new-policy';\r\nimport {ApiAccessService} from '../../services/network/api-access.service';\r\nimport {\r\n ToastSuccessComponent\r\n} from '../../parts/toast-success/toast-success.component';\r\nimport {Observable} from 'rxjs/Observable';\r\nimport {Http, Response} from '@angular/http';\r\nimport {\r\n ViewCoverageDialogComponent\r\n} from '../../parts/plan-selection/view-coverage/view-coverage.component';\r\nimport {\r\n ExtendedAreaDialogComponent\r\n} from '../../parts/plan-selection/extended-area/extended-area.component';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\nimport {NewEntity} from '../../models/new-entity';\r\ndeclare var google: any;\r\n\r\n@Component({\r\n selector: 'app-quote',\r\n templateUrl: './quote.component.html',\r\n styleUrls: ['./quote.component.css']\r\n})\r\nexport class QuoteComponent implements OnInit {\r\n // address: Address = new Address();\r\n validatingProperty = false;\r\n selectedIndex = 0;\r\n gettingPlanSelection = false;\r\n planSelection: any;\r\n plans: PlanModel[];\r\n marketStates: any[] = [];\r\n selectedPlan: PlanModel;\r\n isMonthly = false;\r\n coverageLengths = [1, 2];\r\n numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8];\r\n promotionCode: string;\r\n promotionObj: any;\r\n submittingOrder = false;\r\n shouldBeFixed = false;\r\n isOrdering = false;\r\n isSavingQuote = false;\r\n savingQuote = false;\r\n sideBar: any;\r\n isMultiYear = false;\r\n\r\n showBuyersMailingAddress = false;\r\n order: NewPolicy = new NewPolicy();\r\n\r\n titleSearchResultVisible = false;\r\n addTitleOfficeVisible = false;\r\n titleNameSearch = '';\r\n titleCitySearch = '';\r\n titlePhoneSearch = '';\r\n searchingForTitleCompany = false;\r\n titleCompanies: any[];\r\n newTitleCompany: NewEntity = new NewEntity();\r\n savingTitleCompany = false;\r\n selectedTitleCompany: any;\r\n CLOSING_DETAILS_STEP = 6;\r\n SUBMIT_ORDER_STEP = 7;\r\n escrowOfficers: any[];\r\n showClosingOfficers = false;\r\n addingNewEscrowOfficer = false;\r\n addingNewAgent = false;\r\n newClosingOfficerName = '';\r\n showingFindBuyersAgent = false;\r\n\r\n agentFirstName = '';\r\n agentLastName = '';\r\n agentLicenseNumber = '';\r\n agents: any[];\r\n newPerson: NewEntity = new NewEntity();\r\n branches: any[];\r\n findingAgents = false;\r\n agentSearchResultsVisible = false;\r\n branchSearchName = '';\r\n branchSearchCity = '';\r\n searchingForBranch = false;\r\n branchSearchResultVisible = false;\r\n addOfficeVisible = false;\r\n newBranch: NewEntity = new NewEntity();\r\n savingBranch = false;\r\n showAgentSearch = true;\r\n showBranchSearch = false;\r\n selectedBuyersAgent: any;\r\n showCreateAgentRecord = false;\r\n selectedBuyerBranch: any;\r\n savingPerson = false;\r\n\r\n loadingQuoteInformation = false;\r\n fromExistingQuote = false;\r\n isRealEstateCoordinator = false;\r\n quoteName: string;\r\n\r\n isEscrowUser = false;\r\n\r\n autocomplete;\r\n componentForm = {\r\n street_number: 'short_name',\r\n route: 'long_name',\r\n locality: 'long_name',\r\n administrative_area_level_1: 'short_name',\r\n country: 'long_name',\r\n postal_code: 'short_name'\r\n };\r\n\r\n @HostListener('window:hashchange', ['$event'])\r\n watchUrlHash(event) {\r\n const hash = window.location.hash;\r\n\r\n if (hash === '#Property') {\r\n this.selectedIndex = 0;\r\n } else if (hash === '#Plan') {\r\n this.selectedIndex = 1;\r\n } else if (hash === '#Options') {\r\n this.selectedIndex = 2;\r\n } else if (hash === '#Review') {\r\n this.selectedIndex = 3;\r\n } else if (hash === '#buyersinfo') {\r\n this.selectedIndex = 4;\r\n } else if (hash === '#title') {\r\n this.selectedIndex = 5;\r\n } else if (hash === '#closing') {\r\n this.selectedIndex = 6;\r\n } else if (hash === '#submit') {\r\n this.selectedIndex = 7;\r\n } else {\r\n this.selectedIndex = 0;\r\n }\r\n }\r\n\r\n constructor(private realtorPortalService: RealtorPortalService,\r\n private dialogService: DialogsService,\r\n private snackBar: MatSnackBar, private router: Router,\r\n private dialog: MatDialog, private zone: NgZone,\r\n private route: ActivatedRoute, private snakbar: MatSnackBar) {\r\n\r\n if (!this.coverageLength) {\r\n this.coverageLength = this.realtorPortalService.getCoverageLength();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n\r\n var today = new Date();\r\n var cutoff = new Date(2023, 1, 1);\r\n\r\n if (today >= cutoff) {\r\n window.location.href = \"https://www.ahs.com/home-warranty/oneguard-american-home-shield-partnership/\";\r\n }\r\n\r\n this.order.Property.DwellingType = 'Single_Family';\r\n this.realtorPortalService.getSideBarInfo().then(sideBar => {\r\n this.sideBar = sideBar;\r\n this.order.EmailOrderTo = sideBar.Email;\r\n this.quoteName = sideBar.Name;\r\n\r\n if (sideBar.EntityType === 'Closing_Officer' || sideBar.EntityType === 'Closing_Officer_Coordinator') {\r\n this.isEscrowUser = true;\r\n this.order.EscrowOfficerId = sideBar.EntityId;\r\n\r\n this.realtorPortalService.findTitleCompanyById(sideBar.ParentEntityId)\r\n .then(titleCompanies => {\r\n this.titleCompanies = titleCompanies;\r\n this.selectedTitleCompany = titleCompanies[0];\r\n this.showClosingOfficers = true;\r\n });\r\n\r\n this.realtorPortalService.getEscrowOfficersForTitleCompany(\r\n sideBar.ParentEntityId)\r\n .then(escrowOfficers => { this.escrowOfficers = escrowOfficers; });\r\n } else if (sideBar.EntityType === 'Closing_Officer_Coordinator') {\r\n this.realtorPortalService.getEscrowOfficersForTitleCompany(\r\n sideBar.ParentEntityId)\r\n .then(escrowOfficers => { this.escrowOfficers = escrowOfficers; });\r\n this.isEscrowUser = true;\r\n this.realtorPortalService.findTitleCompanyById(sideBar.ParentEntityId)\r\n .then(titleCompanies => {\r\n console.log(titleCompanies);\r\n this.titleCompanies = titleCompanies;\r\n this.selectedTitleCompany = titleCompanies[0];\r\n this.showClosingOfficers = true;\r\n });\r\n } else if (sideBar.EntityType === 'Real_Estate_Office_Coordinator') {\r\n this.realtorPortalService.findRealEstateBranchById(\r\n sideBar.ParentEntityId)\r\n .then(branches => {\r\n this.selectedBuyerBranch = branches[0];\r\n if (this.selectedBuyerBranch) {\r\n this.realtorPortalService.getAgentsForBranch(\r\n this.selectedBuyerBranch.Id)\r\n .then(agents => { this.agents = agents; });\r\n\r\n this.isRealEstateCoordinator = true;\r\n }\r\n });\r\n }\r\n });\r\n this.realtorPortalService.getMarketStates().then(\r\n marketStates => { this.marketStates = marketStates; });\r\n\r\n\r\n\r\n this.route.params.subscribe(params => {\r\n // this.quoteId = params['id'];\r\n if (params['quoteId']) {\r\n this.loadingQuoteInformation = true;\r\n this.fromExistingQuote = true;\r\n this.realtorPortalService.getWebQuote(params['quoteId'])\r\n .then(webQuote => {\r\n\r\n this.order = webQuote;\r\n\r\n console.log(this.order);\r\n\r\n this.isMonthly = this.order.IsMonthly;\r\n\r\n if (this.sideBar && !this.order.EmailOrderTo) {\r\n this.order.EmailOrderTo = this.sideBar.Email;\r\n }\r\n\r\n this.getPlanSelection(() => {\r\n this.selectedPlan =\r\n this.plans.filter(i => i.id === webQuote.PlanId)[0];\r\n\r\n\r\n if (this.selectedPlan) {\r\n this.isOrdering = true;\r\n this.selectedIndex = 3;\r\n if (webQuote.Options) {\r\n webQuote.Options.forEach(option => {\r\n const oi = this.selectedPlan.optionalItems.filter(\r\n i => i.planItemId === option.Id)[0];\r\n if (oi) {\r\n if (oi.selected) {\r\n oi.quantity++;\r\n } else {\r\n oi.selected = true;\r\n }\r\n }\r\n });\r\n }\r\n\r\n if (webQuote.CouponCode) {\r\n this.promotionCode = webQuote.CouponCode;\r\n this.loadPromotionCode(\r\n () => { this.loadingQuoteInformation = false; });\r\n } else {\r\n this.loadingQuoteInformation = false;\r\n }\r\n } else {\r\n // The plan the originally chose is no longer valid\r\n this.selectedIndex = 1;\r\n this.loadingQuoteInformation = false;\r\n }\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n onStepChange() {\r\n if (this.selectedIndex === 0) {\r\n window.location.hash = 'Property';\r\n } else if (this.selectedIndex === 1) {\r\n window.location.hash = 'Plan';\r\n } else if (this.selectedIndex === 2) {\r\n window.location.hash = 'Options';\r\n } else if (this.selectedIndex === 3) {\r\n window.location.hash = 'Review';\r\n } else if (this.selectedIndex === 4) {\r\n window.location.hash = 'buyersinfo';\r\n } else if (this.selectedIndex === 5) {\r\n window.location.hash = 'title';\r\n } else if (this.selectedIndex === 6) {\r\n window.location.hash = 'closing';\r\n } else if (this.selectedIndex === 7) {\r\n window.location.hash = 'submit';\r\n }\r\n\r\n this.showingFindBuyersAgent = false;\r\n this.showAgentSearch = true;\r\n this.agentSearchResultsVisible = false;\r\n this.showBranchSearch = false;\r\n this.branchSearchResultVisible = false;\r\n this.addOfficeVisible = false;\r\n this.showCreateAgentRecord = false;\r\n }\r\n\r\n @HostListener('window:scroll', [])\r\n onWindowScroll() {\r\n // this.shouldBeFixed = window.scrollY > 1;\r\n }\r\n\r\n get selectedOptions() {\r\n const results = [];\r\n\r\n if (this.selectedPlan) {\r\n this.selectedPlan.optionalItems.forEach(oi => {\r\n if (oi.selected) {\r\n for (let i = 0; i < oi.quantity; i++) {\r\n results.push({\r\n name: oi.name,\r\n price: this.isMonthly ? oi.priceRecurring : oi.price,\r\n planItemId: oi.planItemId,\r\n fullPrice: oi.price,\r\n priceRecurring: oi.priceRecurring,\r\n });\r\n }\r\n }\r\n });\r\n }\r\n return results;\r\n }\r\n\r\n get basePrice() {\r\n if (!this.selectedPlan) {\r\n return 0;\r\n }\r\n return this.isMonthly ? this.selectedPlan.priceRecurring :\r\n this.selectedPlan.price;\r\n }\r\n\r\n get canSearchForTitleCompany() {\r\n return (this.titleNameSearch && this.titleCitySearch) ||\r\n (this.titlePhoneSearch &&\r\n UtilitiesService.isValidPhoneNumber(this.titlePhoneSearch));\r\n }\r\n\r\n get canSaveTitleCompany() {\r\n return this.newTitleCompany.Name && this.newTitleCompany.StreetAddress &&\r\n this.newTitleCompany.City && this.newTitleCompany.State &&\r\n this.newTitleCompany.ZipCode && this.newTitleCompany.Phone &&\r\n UtilitiesService.isValidPhoneNumber(this.newTitleCompany.Phone);\r\n }\r\n\r\n get selectedClosingOfficer() {\r\n if (!this.escrowOfficers) {\r\n return null;\r\n }\r\n\r\n return this.escrowOfficers.filter(i => i.Id ===\r\n this.order.EscrowOfficerId)[0];\r\n }\r\n\r\n get selectedClosingOfficerName() {\r\n const ci = this.selectedClosingOfficer;\r\n return ci == null ? null : ci.Name;\r\n }\r\n\r\n get canGoToClosingInfo() { return this.order.EscrowOfficerId; }\r\n\r\n\r\n\r\n get canSearchForAgent() {\r\n return this.agentLicenseNumber ||\r\n (this.agentFirstName && this.agentLastName);\r\n }\r\n\r\n get canSearchForBranch() {\r\n return this.branchSearchName && this.branchSearchCity;\r\n }\r\n\r\n get canSaveBranch() {\r\n return this.newBranch.Name && this.newBranch.StreetAddress &&\r\n this.newBranch.City && this.newBranch.State &&\r\n this.newBranch.ZipCode && this.newBranch.Phone &&\r\n UtilitiesService.isValidPhoneNumber(this.newBranch.Phone);\r\n }\r\n\r\n searchForAgent() {\r\n this.findingAgents = true;\r\n this.realtorPortalService.findAgentByName(this.agentFirstName,\r\n this.agentLastName,\r\n this.agentLicenseNumber)\r\n .then(agents => {\r\n\r\n this.findingAgents = false;\r\n this.agents = agents;\r\n this.agentSearchResultsVisible = true;\r\n this.showAgentSearch = false;\r\n });\r\n }\r\n\r\n searchForBranch() {\r\n this.searchingForBranch = true;\r\n this.realtorPortalService.findBranchByNameAndCity(this.branchSearchName,\r\n this.branchSearchCity)\r\n .then(branches => {\r\n this.searchingForBranch = false;\r\n this.branches = branches;\r\n this.branchSearchResultVisible = true;\r\n this.showBranchSearch = false;\r\n });\r\n }\r\n\r\n saveNewBranch() {\r\n this.savingBranch = true;\r\n this.realtorPortalService.saveNewBranch(this.newBranch)\r\n .then(result => {\r\n this.setRealEstateBranch(this.newBranch);\r\n this.savingBranch = false;\r\n this.addOfficeVisible = false;\r\n });\r\n }\r\n\r\n setRealEstateBranch(realEstateBranch) {\r\n this.showCreateAgentRecord = true;\r\n this.selectedBuyerBranch = realEstateBranch;\r\n this.branchSearchResultVisible = false;\r\n }\r\n\r\n setAgent(agent) {\r\n this.order.BuyersAgentId = agent.Id;\r\n this.selectedBuyersAgent = agent;\r\n this.showingFindBuyersAgent = false;\r\n this.selectedIndex++;\r\n }\r\n\r\n get canSavePerson() { return this.newPerson.Name; }\r\n\r\n savePerson() {\r\n this.savingPerson = true;\r\n this.newPerson.ParentId = this.selectedBuyerBranch.Id;\r\n this.realtorPortalService.saveAgent(this.newPerson)\r\n .then(() => {\r\n this.setAgent(this.newPerson);\r\n this.savingPerson = false;\r\n });\r\n }\r\n\r\n\r\n\r\n addNewClosingOfficer() {\r\n const newEntity = new NewEntity();\r\n newEntity.Id = UtilitiesService.newid();\r\n newEntity.Name = this.newClosingOfficerName;\r\n newEntity.ParentId = this.selectedTitleCompany.Id;\r\n\r\n if (this.addingNewAgent) {\r\n newEntity.ParentId = this.selectedBuyerBranch.Id;\r\n this.realtorPortalService.saveAgent(newEntity).then(() => {\r\n this.escrowOfficers.push(newEntity);\r\n this.order.BuyersAgentId = newEntity.Id;\r\n this.addingNewEscrowOfficer = false;\r\n this.addingNewAgent = false;\r\n this.agents.push(newEntity);\r\n this.selectedBuyersAgent = newEntity;\r\n });\r\n } else {\r\n this.realtorPortalService.saveClosingOfficer(newEntity).then(() => {\r\n this.escrowOfficers.push(newEntity);\r\n this.order.EscrowOfficerId = newEntity.Id;\r\n this.addingNewEscrowOfficer = false;\r\n this.addingNewAgent = false;\r\n });\r\n }\r\n }\r\n\r\n saveNewTitleCompany() {\r\n this.savingTitleCompany = true;\r\n this.realtorPortalService.saveNewTitleCompany(this.newTitleCompany)\r\n .then(result => {\r\n this.setTitleCompany(this.newTitleCompany);\r\n this.savingTitleCompany = false;\r\n\r\n });\r\n }\r\n\r\n setTitleCompany(titleCompany) {\r\n this.selectedTitleCompany = titleCompany;\r\n this.addTitleOfficeVisible = false;\r\n // this.selectedIndex = this.CLOSING_DETAILS_STEP;\r\n this.realtorPortalService.getEscrowOfficersForTitleCompany(titleCompany.Id)\r\n .then(escrowOfficers => {\r\n this.escrowOfficers = escrowOfficers;\r\n this.showClosingOfficers = true;\r\n });\r\n }\r\n\r\n searchForTitleCompany() {\r\n this.searchingForTitleCompany = true;\r\n\r\n if (this.titleNameSearch && this.titleCitySearch) {\r\n this.realtorPortalService.findTitleCompanyByNameAndCity(\r\n this.titleNameSearch, this.titleCitySearch)\r\n .then(titleCompanies => {\r\n this.searchingForTitleCompany = false;\r\n this.titleCompanies = titleCompanies;\r\n this.titleSearchResultVisible = true;\r\n });\r\n } else {\r\n this.realtorPortalService.findTitleCompanyByPhone(this.titlePhoneSearch)\r\n .then(titleCompanies => {\r\n this.searchingForTitleCompany = false;\r\n this.titleCompanies = titleCompanies;\r\n this.titleSearchResultVisible = true;\r\n });\r\n }\r\n }\r\n\r\n get orderTotal(): number {\r\n if (!this.selectedPlan) {\r\n return 0;\r\n }\r\n\r\n let price = this.basePrice;\r\n\r\n if (this.promotionObj) {\r\n price += this.isMonthly ? this.promotionObj.MonthlyAmount :\r\n this.promotionObj.Amount;\r\n }\r\n\r\n this.selectedOptions.forEach(si => { price += si.price; });\r\n if (!this.isMonthly)\r\n price *= this.coverageLength;\r\n\r\n return price;\r\n }\r\n\r\n get yearlyTotal(): number {\r\n if (!this.selectedPlan) {\r\n return 0;\r\n }\r\n\r\n let price = this.basePrice;\r\n\r\n if (this.promotionObj) {\r\n price += this.isMonthly ? this.promotionObj.MonthlyAmount :\r\n this.promotionObj.Amount;\r\n }\r\n\r\n this.selectedOptions.forEach(si => { price += si.price; });\r\n\r\n return price;\r\n }\r\n\r\n get firstPayment(): number {\r\n if (!this.isMonthly) {\r\n return 0;\r\n }\r\n\r\n return this.orderTotal * 2;\r\n }\r\n\r\n get canSubmitOrder() { return this.selectedPlan; }\r\n\r\n get buyerCanGoNextStep() {\r\n return this.customer.FirstName && this.customer.Email &&\r\n UtilitiesService.isEmailValid(this.customer.Email) &&\r\n UtilitiesService.isValidPhoneNumber(this.customer.HomePhone) &&\r\n (!this.showBuyersMailingAddress ||\r\n (\r\n\r\n this.customer.MailingAddress && this.customer.MailingCity &&\r\n this.customer.MailingState && this.customer.MailingZip));\r\n }\r\n\r\n get closingCanGoNextStep() {\r\n return this.order.EscrowResponsibleParty\r\n }\r\n\r\n startOrderProcess() {\r\n this.isOrdering = true;\r\n this.isSavingQuote = false;\r\n this.selectedIndex = 4;\r\n }\r\n\r\n startSaveQuote() {\r\n this.isOrdering = false;\r\n this.isSavingQuote = true;\r\n this.selectedIndex = 4;\r\n }\r\n\r\n private saveOptionsToOrder() {\r\n const results = [];\r\n\r\n if (this.selectedPlan) {\r\n this.order.PlanId = this.selectedPlan.id;\r\n this.order.PlanName = this.selectedPlan.name;\r\n this.order.PlanPrice = this.basePrice;\r\n this.order.IsMonthly = this.isMonthly;\r\n\r\n this.selectedPlan.optionalItems.forEach(oi => {\r\n if (oi.selected) {\r\n for (let i = 0; i < oi.quantity; i++) {\r\n const optionalItem = new OptionalItemInfo();\r\n\r\n optionalItem.Name = oi.name;\r\n optionalItem.AllowMultiple = oi.allowQuantity;\r\n optionalItem.FullPrice = oi.price;\r\n optionalItem.Id = oi.planItemId;\r\n optionalItem.MonthPrice = oi.priceRecurring;\r\n optionalItem.Name = oi.name;\r\n optionalItem.SalesItemCoverageId = oi.salesItemCoverageId;\r\n optionalItem.InSelectAreas = oi.inSelectAreas;\r\n optionalItem.SalesItemId = oi.salesItemId;\r\n\r\n\r\n results.push(optionalItem);\r\n }\r\n }\r\n });\r\n if (this.promotionObj) {\r\n this.order.CouponCode = this.promotionObj.code;\r\n const couponItem = new OptionalItemInfo();\r\n couponItem.Name = this.promotionObj.Description;\r\n couponItem.FullPrice = this.promotionObj.Amount;\r\n couponItem.MonthPrice = this.promotionObj.MonthlyAmount;\r\n results.push(couponItem);\r\n }\r\n }\r\n\r\n this.order.Options = results;\r\n }\r\n\r\n saveWebQuote() {\r\n this.saveOptionsToOrder();\r\n this.savingQuote = true;\r\n this.realtorPortalService.saveWebQuote(this.order)\r\n .then(results => {\r\n this.router.navigateByUrl('/home');\r\n this.savingQuote = false;\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n data: 'Your quote has been saved. Thank You.',\r\n duration: 10000,\r\n panelClass: ['success-toast']\r\n });\r\n });\r\n }\r\n\r\n get customer(): CustomerSummary {\r\n return this.order.SellersCoverage ? this.order.Seller : this.order.Buyer;\r\n }\r\n\r\n submitOrder() {\r\n this.saveOptionsToOrder();\r\n this.submittingOrder = true;\r\n const newPolicy = this.order;\r\n\r\n if (!this.order.BuyersAgentId) {\r\n\r\n if (this.selectedBuyersAgent && this.selectedBuyersAgent.Id) {\r\n\r\n this.order.BuyersAgentId = this.selectedBuyersAgent.Id;\r\n\r\n }\r\n else if (this.sideBar.EntityType === 'Agent' && !this.order.SellersCoverage) {\r\n newPolicy.BuyersAgentId = this.sideBar.EntityId;\r\n }\r\n else {\r\n this.order.BuyersAgentId = null;\r\n }\r\n }\r\n\r\n this.order.SellersCoverage ? newPolicy.InitiatingAgentType = 'Listing' :\r\n newPolicy.InitiatingAgentType = 'Selling';\r\n\r\n newPolicy.IsMonthly = this.isMonthly;\r\n newPolicy.Options = this.selectedOptions.map(o => {\r\n const oi = new OptionalItemInfo();\r\n oi.FullPrice = o.fullPrice;\r\n oi.MonthPrice = o.priceRecurring;\r\n oi.Id = o.planItemId;\r\n oi.Name = o.name;\r\n return oi;\r\n });\r\n\r\n newPolicy.PlanId = this.selectedPlan.id;\r\n newPolicy.CoverageLength = this.coverageLength;\r\n\r\n this.realtorPortalService.saveNewPolicy(newPolicy).then(result => {\r\n this.submittingOrder = false;\r\n this.router.navigateByUrl('/order/' + result);\r\n });\r\n }\r\n\r\n loadPromotionCode(callback: any = null) {\r\n this.realtorPortalService.getPromotion(this.promotionCode)\r\n .then(promotion => {\r\n\r\n if (promotion) {\r\n this.promotionObj = promotion;\r\n this.promotionObj.code = this.promotionCode;\r\n this.promotionCode = '';\r\n } else {\r\n this.dialogService.alert(\r\n 'Not Found', 'Sorry, we could not find that promotion code.');\r\n }\r\n if (callback) {\r\n callback();\r\n }\r\n });\r\n }\r\n\r\n selectedPlanChange() {\r\n this.selectedIndex = 2;\r\n if (this.selectedPlan) {\r\n this.order.PlanId = this.selectedPlan.id;\r\n this.selectedPlan.coverageLength = this.coverageLength;\r\n }\r\n }\r\n\r\n goToReview() { this.selectedIndex = 3; }\r\n\r\n get canGoNextPropertyStep() {\r\n return this.order.Property.Address && this.order.Property.City &&\r\n this.order.Property.State && this.order.Property.Zip &&\r\n this.order.Property.DwellingType;\r\n }\r\n\r\n showCoverage(item) {\r\n this.dialog.open(ViewCoverageDialogComponent,\r\n {data: item.salesItemCoverageId});\r\n }\r\n\r\n showExtendedArea(state) {\r\n this.dialog.open(ExtendedAreaDialogComponent,\r\n { data: state });\r\n }\r\n\r\n propertyNext() {\r\n this.validatingProperty = true;\r\n this.realtorPortalService.validateAddress(this.order.Property)\r\n .then(results => {\r\n console.log(results);\r\n this.validatingProperty = false;\r\n if (!results.IsValid) {\r\n if (results.Message === 'NOT_FOUND') {\r\n this.dialogService.alert(\r\n 'Not Found',\r\n 'Sorry, the address you provided was either not found or outside of our service area.');\r\n } else if (results.Message === 'ADDRESS_EXISTS') {\r\n this.dialogService.alert(\r\n 'Address Exists',\r\n 'It looks like there is already active OneGuard coverage for that property.

Please give us a call at 888.896.0014.');\r\n }\r\n } else {\r\n this.selectedIndex = 1;\r\n\r\n this.gettingPlanSelection = true;\r\n this.order.Property.SquareFootage = results.SquareFootage;\r\n this.order.Property.YearBuilt = results.YearBuilt;\r\n if (!this.order.Property.SquareFootage) {\r\n this.order.Property.SquareFootage = 1;\r\n }\r\n if (!this.order.Property.YearBuilt) {\r\n this.order.Property.YearBuilt = new Date().getFullYear();\r\n }\r\n this.getPlanSelection();\r\n }\r\n });\r\n }\r\n\r\n toggleSellersCoveragePlans() {\r\n this.order.SellersCoverage = !this.order.SellersCoverage;\r\n this.gettingPlanSelection = true;\r\n this.getPlanSelection(() => this.gettingPlanSelection = false);\r\n }\r\n\r\n private getPlanSelection(callback: any = null) {\r\n const transformedPlans = [];\r\n\r\n const planColors = ['#286DA8', '#CD5360', '#B37D4E', '#438496', 'violet', 'orange'];\r\n this.realtorPortalService.getPlanSelection(this.order.Property,\r\n this.order.SellersCoverage)\r\n .then(planSelection => {\r\n console.log(planSelection);\r\n if (planSelection.Error) {\r\n const ref =\r\n this.dialogService.alert('Cannot Order', planSelection.Error);\r\n\r\n ref.subscribe(() => {\r\n this.gettingPlanSelection = false;\r\n this.selectedIndex = 0;\r\n });\r\n\r\n return;\r\n }\r\n planSelection.Plans = planSelection.Plans.sort(\r\n (a, b) => a.FullPrice > a.FullPrice ? 0 : 1);\r\n this.gettingPlanSelection = false;\r\n this.planSelection = planSelection;\r\n planSelection.Plans.forEach(plan => {\r\n const planModel = new PlanModel();\r\n planModel.id = plan.PlanId;\r\n planModel.monthlyProcessingFee = plan.MonthlyCCFee;\r\n planModel.name = plan.Name;\r\n planModel.optionalItems = [];\r\n\r\n planModel.planColor = planColors[planSelection.Plans.indexOf(plan)];\r\n planModel.price = plan.FullPrice;\r\n planModel.priceRecurring = plan.MonthlyPrice;\r\n planModel.serviceFee = plan.ServiceFee;\r\n planModel.standardItems = [];\r\n\r\n if (planModel.name.indexOf('Guardian') > -1) {\r\n planModel.summary =\r\n 'Comprehensive Coverage
+ Preferred Upgrade
+ Washer/Dryer, Fridge';\r\n planModel.isBestValue = true;\r\n } else if (planModel.name.indexOf('Centurion') > -1) {\r\n planModel.summary =\r\n 'Comprehensive Coverage
+ Preferred Upgrade';\r\n } else if (planModel.name.indexOf('Sentinel') > -1) {\r\n planModel.summary = 'Comprehensive Coverage';\r\n }\r\n\r\n plan.StandardItems.forEach(si => {\r\n const newSalesItem = new SalesItemModel();\r\n newSalesItem.allowQuantity = si.AllowMultiple;\r\n newSalesItem.category = si.Category;\r\n newSalesItem.name = si.Name;\r\n newSalesItem.planItemId = si.Id;\r\n newSalesItem.price = si.FullPrice;\r\n newSalesItem.priceRecurring = si.MonthPrice;\r\n newSalesItem.salesItemCoverageId = si.SalesItemCoverageId;\r\n newSalesItem.inSelectAreas = si.InSelectAreas;\r\n newSalesItem.salesItemId = si.SalesItemId;\r\n\r\n planModel.standardItems.push(newSalesItem);\r\n });\r\n\r\n plan.OptionalItems.forEach(si => {\r\n const newSalesItem = new SalesItemModel();\r\n newSalesItem.allowQuantity = si.AllowMultiple;\r\n newSalesItem.category = si.Category;\r\n newSalesItem.name = si.Name;\r\n newSalesItem.planItemId = si.Id;\r\n newSalesItem.price = si.FullPrice;\r\n newSalesItem.priceRecurring = si.MonthPrice;\r\n newSalesItem.salesItemCoverageId = si.SalesItemCoverageId;\r\n newSalesItem.inSelectAreas = si.InSelectAreas;\r\n newSalesItem.salesItemId = si.SalesItemId;\r\n newSalesItem.requirements = si.Requirements;\r\n\r\n planModel.optionalItems.push(newSalesItem);\r\n });\r\n\r\n transformedPlans.push(planModel);\r\n });\r\n\r\n this.plans = transformedPlans;\r\n\r\n if (callback) {\r\n callback();\r\n }\r\n\r\n });\r\n }\r\n\r\n areRequirementsMet(item) {\r\n if (!item.requirements) {\r\n return true;\r\n }\r\n\r\n const results = this.checkRequirement(item.requirements);\r\n\r\n if (!results) {\r\n item.selected = false;\r\n }\r\n return results;\r\n }\r\n\r\n checkRequirement(requirement) {\r\n try {\r\n if (requirement.Operator) {\r\n if (requirement.Operator.toUpperCase() === 'OR') {\r\n for (let i = 0; i < requirement.Operands.length; i++) {\r\n const result1 = this.checkRequirement(requirement.Operands[i]);\r\n if (result1) {\r\n return true;\r\n }\r\n }\r\n } else if (requirement.Operator.toUpperCase() === 'AND') {\r\n for (let i = 0; i < requirement.Operands.length; i++) {\r\n const result1 = this.checkRequirement(requirement.Operands[i]);\r\n if (!result1) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n } else {\r\n alert('Requirements Operator ' + requirement.Operator.toUpperCase() +\r\n ' has not been implemented.');\r\n return false;\r\n }\r\n } else if (requirement.SalesItemId) {\r\n for (let i2 = 0; i2 < this.selectedPlan.standardItems.length; i2++) {\r\n if (this.selectedPlan.standardItems[i2].salesItemId ===\r\n requirement.SalesItemId) {\r\n return true;\r\n }\r\n }\r\n\r\n for (let i = 0; i < this.selectedPlan.optionalItems.length; i++) {\r\n const oi = this.selectedPlan.optionalItems[i];\r\n if (oi.selected && oi.salesItemId === requirement.SalesItemId) {\r\n return true;\r\n }\r\n }\r\n } else {\r\n alert(\r\n 'Requirement exists that does not include an Operator or a SalesItemId');\r\n return false;\r\n }\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n\r\n checkZipCode() {\r\n setTimeout(() => {\r\n if (this.order.Property.Zip != null &&\r\n this.order.Property.Zip.length === 5) {\r\n this.realtorPortalService.getZipCodeInfo(this.order.Property.Zip)\r\n .then(data => {\r\n if (data.status === 'OK' && data.results.length > 0) {\r\n const result = data.results[0];\r\n\r\n for (let i = 0; i < result.address_components.length; i++) {\r\n const component = result.address_components[i];\r\n if (component.types.indexOf('locality') > -1) {\r\n this.order.Property.City = component.long_name;\r\n }\r\n if (component.types.indexOf('administrative_area_level_1') >\r\n -1) {\r\n const selectedState = this.marketStates.filter(\r\n ii => ii.StateAbbreviation === component.short_name)[0];\r\n if (selectedState != null) {\r\n this.order.Property.State = component.short_name;\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n private extractData(res: Response) {\r\n const body = res.json();\r\n return body.results || {};\r\n }\r\n\r\n private _coverageLength: any;\r\n get coverageLength(): any { return this._coverageLength; }\r\n set coverageLength(value) {\r\n this._coverageLength = value;\r\n if (!this.coverageLength)\r\n return;\r\n }\r\n\r\n private handleError(error: Response | any) {\r\n // In a real world app, we might use a remote logging infrastructure\r\n let errMsg: string;\r\n if (error instanceof Response) {\r\n const body = error.json() || '';\r\n const err = body.error || JSON.stringify(body);\r\n errMsg = `${error.status} - ${error.statusText || ''} ${err}`;\r\n } else {\r\n errMsg = error.message ? error.message : error.toString();\r\n }\r\n return Observable.throw(errMsg);\r\n }\r\n\r\n geoLocate() {\r\n this.initAutocomplete();\r\n // bias toward az locations\r\n const geolocation = {lat: 33.6816772, lng: -112.1103491};\r\n const circle = new google.maps.Circle({\r\n center: geolocation,\r\n radius: 1000,\r\n });\r\n this.autocomplete.setBounds(circle.getBounds());\r\n }\r\n\r\n initAutocomplete() {\r\n this.autocomplete = new google.maps.places.Autocomplete(\r\n document.getElementById('autocomplete'), {types: ['geocode']});\r\n\r\n this.autocomplete.addListener('place_changed', () => this.fillInAddress());\r\n }\r\n\r\n fillInAddress() {\r\n const place = this.autocomplete.getPlace();\r\n if (!place) {\r\n return;\r\n }\r\n this.zone.run(() => {\r\n let street = '';\r\n let route = '';\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 (addressType === 'street_number') {\r\n street = place.address_components[i][this.componentForm[addressType]];\r\n } else if (addressType === 'route') {\r\n route = place.address_components[i][this.componentForm[addressType]];\r\n } else if (addressType === 'locality') {\r\n this.order.Property.City =\r\n place.address_components[i][this.componentForm[addressType]];\r\n } else if (addressType === 'administrative_area_level_1') {\r\n this.order.Property.State =\r\n place.address_components[i][this.componentForm[addressType]];\r\n } else if (addressType === 'country') {\r\n this.order.Property.Country =\r\n place.address_components[i][this.componentForm[addressType]];\r\n } else if (addressType === 'postal_code') {\r\n this.order.Property.Zip =\r\n place.address_components[i][this.componentForm[addressType]];\r\n }\r\n }\r\n\r\n // Clearing and resetting the address fixes a small rendering bug with the\r\n // google address suggestion\r\n this.order.Property.Address = '';\r\n setTimeout(() => { this.order.Property.Address = street + ' ' + route; });\r\n });\r\n }\r\n}\r\n","module.exports = \"\"","module.exports = \"
\\r\\n \\r\\n\\r\\n
0\\\">\\r\\n
\\r\\n \\r\\n

\\r\\n All\\r\\n Quotes\\r\\n

\\r\\n
\\r\\n New Quote\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n

Nothing Here Yet

\\r\\n

Creating a quote is simple and easy.

\\r\\n New Quote\\r\\n
\\r\\n
\\r\\n \\r\\n

Nothing Here

\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit} from '@angular/core';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\n\r\n@Component({\r\n selector: 'app-quotes',\r\n templateUrl: './quotes.component.html',\r\n styleUrls: ['./quotes.component.css']\r\n})\r\nexport class QuotesComponent implements OnInit {\r\n quotes: any[];\r\n isBeforeCutoffDate = true;\r\n\r\n constructor(private realtorPortalService: RealtorPortalService) {}\r\n\r\n ngOnInit() {\r\n this.realtorPortalService.getQuotes().then(\r\n quotes => { this.quotes = quotes; });\r\n\r\n var today = new Date();\r\n var cutoff = new Date(2023, 1, 1);\r\n\r\n if (today >= cutoff)\r\n this.isBeforeCutoffDate = false;\r\n }\r\n\r\n\r\n get baseUrl(): string { return UtilitiesService.baseAPIUrl; }\r\n}\r\n","module.exports = \"mat-radio-button {\\r\\n display: block;\\r\\n margin-bottom: 20px;\\r\\n}\\r\\n\\r\\nmat-radio-button h3 {\\r\\n text-transform: none;\\r\\n}\\r\\n\\r\\nmat-form-field {\\r\\n display: block;\\r\\n}\\r\\n\\r\\nbutton.text-left {\\r\\n white-space: normal;\\r\\n line-height: 20px;\\r\\n text-transform: none;\\r\\n margin-top: 20px;\\r\\n}\\r\\n\\r\\nmat-form-field {\\r\\n display: block;\\r\\n width: 100%;\\r\\n }\\r\\n\\r\\n#acceptable-check {\\r\\n position: absolute;\\r\\n right: 10px;\\r\\n color: green;\\r\\n top: 0;\\r\\n font-size: 36px;\\r\\n }\\r\\n\\r\\n#unacceptable-warning {\\r\\n position: absolute;\\r\\n right: 10px;\\r\\n color: orange;\\r\\n top: 0;\\r\\n font-size: 36px;\\r\\n }\\r\\n\\r\\n.warning {\\r\\n color: orange;\\r\\n margin-top:-17px;\\r\\n }\\r\\n\\r\\nbutton.selected {\\r\\n border-bottom: 2px solid #637283 !important;\\r\\n }\\r\\n\\r\\nmat-radio-button {\\r\\n display: block;\\r\\n margin-bottom: 20px;\\r\\n margin-left: 40px;\\r\\n }\\r\\n\\r\\n.indent {\\r\\n margin-left: 40px;\\r\\n }\\r\\n\\r\\n.no-match {\\r\\n position: absolute;\\r\\n right: 23px;\\r\\n margin-top: -47px;\\r\\n color: orange;\\r\\n }\\r\\n\\r\\n@media (max-width: 960px) {\\r\\n mat-card {\\r\\n box-shadow: none !important;\\r\\n }\\r\\n\\r\\n mat-radio-button {\\r\\n margin-left: 0;\\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 Create\\r\\n User\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n check\\r\\n warning\\r\\n\\r\\n
That email has already been registered
\\r\\n
That email address doesn't appear to be correctly formed
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n warning\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n lock Log In\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

\\r\\n Your\\r\\n Role\\r\\n

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

Real Estate Agent

\\r\\n
I am a licensed real estate agent
\\r\\n
\\r\\n \\r\\n

Real Estate Transaction Coordinator

\\r\\n I am a real estate coordinator for my office and I facilitate transactions on behalf of real estate agents in my office.\\r\\n\\r\\n
\\r\\n \\r\\n

Closing Officer

\\r\\n
I am a closing officer for a title company
\\r\\n
\\r\\n \\r\\n

Closing Officer Coordinator

\\r\\n
I am a closing officer coordinator for my office and I facilitate transactions on behalf of closing officers in my office.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

\\r\\n Agent\\r\\n Search\\r\\n

\\r\\n

Enter your company office number in the box provided below and we will try and locate your information in our existing realtor database.

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

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n Branch\\r\\n Search\\r\\n

\\r\\n

Your company name and city and we will try and locate it in our database.

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

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n New\\r\\n Branch\\r\\n

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

Please provide the contact information for your real estate branch.

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

\\r\\n Escrow Officer\\r\\n Search\\r\\n

\\r\\n

Enter your company officer number in the box provided below and we will try and locate your information.

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

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n Closing Officer Coordinator\\r\\n Search\\r\\n

\\r\\n

Enter your company office number in the box provided below and we will try and locate your information in our existing realtor database.

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

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n Create\\r\\n Record\\r\\n

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

Please provide your contact information

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

\\r\\n Title\\r\\n Search\\r\\n

\\r\\n

Enter your name and city in the box provided below and we will try and locate your information.

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

\\r\\n Search\\r\\n Results\\r\\n

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

\\r\\n New\\r\\n Title Company\\r\\n

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

Please provide the contact information for your title company

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

\\r\\n Real Estate Transaction Coordinator\\r\\n Search\\r\\n

\\r\\n

Enter your company office number in the box provided below and we will try and locate your information in our existing realtor database.

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

\\r\\n Search\\r\\n Results\\r\\n

\\r\\n\\r\\n \\r\\n\\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 {Component, OnInit} from '@angular/core';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {Router} from '@angular/router';\r\nimport {\r\n ToastSuccessComponent\r\n} from '../../parts/toast-success/toast-success.component';\r\nimport {MatSnackBar} from '@angular/material';\r\nimport {NewEntity} from '../../models/new-entity';\r\nimport {ApiAccessService} from '../../services/network/api-access.service';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\nimport { DialogsService } from 'src/app/services/dialog.service';\r\n\r\nenum EntityType {\r\n Agent = 1,\r\n Coordinator = 2,\r\n ClosingOfficer = 3,\r\n ClosingOfficerCoordinator = 4\r\n}\r\n\r\n@Component({\r\n selector: 'app-register',\r\n templateUrl: './register.component.html',\r\n styleUrls: ['./register.component.css']\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n isLoggedIn = false;\r\n displayName: string;\r\n emailAddress: string;\r\n password: string;\r\n emailAddressAcceptable = false;\r\n passwordConfirm: string;\r\n emailAddressUnacceptable = false;\r\n creatingWebUser = false;\r\n emailAddressTaken = false;\r\n emailAddressMalformed = false;\r\n\r\n\r\n savingPerson = false;\r\n\r\n selectedIndex = 0;\r\n agentFirstName = '';\r\n agentLastName = '';\r\n agentLicenseNumber = '';\r\n phoneNumber = '';\r\n agents: any[];\r\n newPerson: NewEntity = new NewEntity();\r\n\r\n branches: any[];\r\n findingAgents = false;\r\n agentSearchResultsVisible = false;\r\n branchSearchName = '';\r\n branchSearchCity = '';\r\n searchingForBranch = false;\r\n branchSearchResultVisible = false;\r\n addOfficeVisible = false;\r\n newBranch: NewEntity = new NewEntity();\r\n savingBranch = false;\r\n\r\n entityType: number;\r\n selectedParent: any;\r\n\r\n titleSearchResultVisible = false;\r\n addTitleOfficeVisible = false;\r\n titleNameSearch = '';\r\n titleCitySearch = '';\r\n searchingForTitleCompany = false;\r\n titleCompanies: any[];\r\n newTitleCompany: NewEntity = new NewEntity();\r\n savingTitleCompany = false;\r\n addEscrowOfficerVisible = false;\r\n\r\n escrowOfficerFirstNameSearch = '';\r\n escrowOfficerLastNameSearch = '';\r\n escrowOfficerSearchResultVisible = false;\r\n escrowOfficers: any[];\r\n searchingForEscrowOfficer = false;\r\n\r\n\r\n findingClosingOfficerCoordinator = false;\r\n closingOfficerCoordinator: any[];\r\n closingOfficerCoordinatorResultVisible = false;\r\n closingOfficerCoordinatorFirstName = '';\r\n closingOffcierCoordinatorLastName = '';\r\n\r\n findingRealEstateTransactionCoordinator = false;\r\n realEstateTransactionCoordinator: any[];\r\n realEstateTransactionCoordinatorResultVisible = false;\r\n\r\n\r\n\r\n private CREATE_USER_STEP = 6;\r\n FIND_BRANCH_STEP = 3;\r\n TITLE_COMPANY_SEARCH_STEP = 5;\r\n FIND_TITLE_COMPANY_SEARCH_STEP = 7;\r\n\r\n\r\n constructor(private realtorPortalService: RealtorPortalService,\r\n private dialogService: DialogsService,\r\n private router: Router, private snakbar: MatSnackBar) {\r\n this.isLoggedIn = ApiAccessService.isLoggedIn;\r\n if (this.isLoggedIn) {\r\n this.CREATE_USER_STEP = 5;\r\n this.FIND_BRANCH_STEP = 2;\r\n this.TITLE_COMPANY_SEARCH_STEP = 4;\r\n this.FIND_TITLE_COMPANY_SEARCH_STEP = 6;\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.realtorPortalService.getWebUserInfo().then(sideBar=> {\r\n console.log(sideBar);\r\n this.newPerson.Name = sideBar.DisplayName;\r\n this.newPerson.Email = sideBar.UserId;\r\n });\r\n }\r\n\r\n get canCreateWebUser() {\r\n return this.emailAddress &&\r\n UtilitiesService.isEmailValid(this.emailAddress) &&\r\n this.emailAddressAcceptable && this.password &&\r\n this.password === this.passwordConfirm && this.displayName;\r\n }\r\n\r\n createWebUser() {\r\n this.creatingWebUser = true;\r\n\r\n this.realtorPortalService.saveWebUser({\r\n Email: this.emailAddress,\r\n Password: this.password,\r\n PasswordConfirm: this.passwordConfirm,\r\n DisplayName: this.displayName,\r\n })\r\n .then(savedUser => {\r\n this.creatingWebUser = false;\r\n this.selectedIndex = 1;\r\n ApiAccessService.setLoginInfo(this.emailAddress, this.password);\r\n });\r\n }\r\n\r\n doEmailAddressCheck() {\r\n console.log('checking');\r\n this.emailAddressAcceptable = false;\r\n this.emailAddressUnacceptable = false;\r\n this.emailAddressMalformed = false;\r\n this.emailAddressTaken = false;\r\n if (this.emailAddress && UtilitiesService.isEmailValid(this.emailAddress)) {\r\n this.realtorPortalService.getWebUserIdExists(this.emailAddress)\r\n .then(exists => {\r\n this.emailAddressAcceptable = !exists;\r\n this.emailAddressUnacceptable = exists;\r\n this.emailAddressTaken = true;\r\n\r\n console.log(exists);\r\n });\r\n } else if (!UtilitiesService.isEmailValid(this.emailAddress)) {\r\n this.emailAddressAcceptable = false;\r\n this.emailAddressMalformed = true;\r\n }\r\n }\r\n\r\n get canSearchForAgent() {\r\n return this.phoneNumber \r\n }\r\n\r\n get canSearchForBranch() {\r\n return this.branchSearchName && this.branchSearchCity;\r\n }\r\n\r\n get canSearchForTitleCompany() {\r\n return this.titleNameSearch && this.titleCitySearch;\r\n }\r\n\r\n get canSearchForEscrowOfficer() {\r\n return this.phoneNumber;\r\n }\r\n\r\n get canSearchForClosingOfficerCoordinator() {\r\n return this.phoneNumber;\r\n }\r\n get canSearchForRealEstateTransactionCoordinator() {\r\n return this.phoneNumber;\r\n }\r\n\r\n get canSaveBranch() {\r\n return this.newBranch.Name && this.newBranch.StreetAddress &&\r\n this.newBranch.City && this.newBranch.State &&\r\n this.newBranch.ZipCode && this.newBranch.Phone &&\r\n UtilitiesService.isValidPhoneNumber(this.newBranch.Phone);\r\n }\r\n\r\n get canSaveTitleCompany() {\r\n return this.newTitleCompany.Name && this.newTitleCompany.StreetAddress &&\r\n this.newTitleCompany.City && this.newTitleCompany.State &&\r\n this.newTitleCompany.ZipCode && this.newTitleCompany.Phone &&\r\n UtilitiesService.isValidPhoneNumber(this.newTitleCompany.Phone);\r\n }\r\n\r\n get canSavePerson() {\r\n return this.newPerson.Name && this.newPerson.StreetAddress &&\r\n this.newPerson.City && this.newPerson.State &&\r\n this.newPerson.ZipCode && this.newPerson.Phone &&\r\n this.newPerson.Email &&\r\n UtilitiesService.isEmailValid(this.newPerson.Email);\r\n }\r\n\r\n get canGoToSecondStep() { return this.entityType > 0; }\r\n\r\n searchForAgent() {\r\n this.findingAgents = true;\r\n this.realtorPortalService.findAgentByName(this.agentFirstName,\r\n this.agentLastName,\r\n this.agentLicenseNumber)\r\n .then(agents => {\r\n\r\n this.findingAgents = false;\r\n this.agents = agents;\r\n this.agentSearchResultsVisible = true;\r\n });\r\n }\r\n searchForAgentByPhone() {\r\n this.findingAgents = true;\r\n this.realtorPortalService.findAgentByPhone(this.phoneNumber)\r\n .then(agents => {\r\n\r\n this.findingAgents = false;\r\n this.agents = agents;\r\n this.agentSearchResultsVisible = true;\r\n });\r\n }\r\n goToSecondStep() {\r\n let index = 0;\r\n if (this.entityType === EntityType.Agent) {\r\n index = 2;\r\n } else if (this.entityType === EntityType.Coordinator) {\r\n index = 8;\r\n } else if (this.entityType === EntityType.ClosingOfficerCoordinator) {\r\n index = 5;\r\n } else if (this.entityType === EntityType.ClosingOfficer) {\r\n index = 4;\r\n }\r\n\r\n if (this.isLoggedIn) {\r\n index--;\r\n }\r\n\r\n this.selectedIndex = index;\r\n }\r\n\r\n searchForBranch() {\r\n this.searchingForBranch = true;\r\n this.realtorPortalService.findBranchByNameAndCity(this.branchSearchName,\r\n this.branchSearchCity)\r\n .then(branches => {\r\n this.searchingForBranch = false;\r\n this.branches = branches;\r\n this.branchSearchResultVisible = true;\r\n });\r\n }\r\n\r\n saveNewBranch() {\r\n this.savingBranch = true;\r\n this.realtorPortalService.saveNewBranch(this.newBranch)\r\n .then(result => {\r\n this.setRealEstateBranch(this.newBranch);\r\n this.savingBranch = false;\r\n });\r\n }\r\n\r\n saveNewTitleCompany() {\r\n this.savingTitleCompany = true;\r\n this.realtorPortalService.saveNewTitleCompany(this.newTitleCompany)\r\n .then(result => {\r\n this.setRealEstateBranch(this.newTitleCompany);\r\n this.savingTitleCompany = false;\r\n });\r\n }\r\n\r\n savePerson() {\r\n this.savingPerson = true;\r\n this.newPerson.ParentId = this.selectedParent.Id;\r\n\r\n if (this.entityType === EntityType.Agent) {\r\n this.realtorPortalService.saveAgent(this.newPerson)\r\n .then((result) => {\r\n if (result == false) {\r\n this.dialogService.alert('Existing Agent', 'An agent already exists with the same license number.');\r\n }\r\n this.setAgent(this.newPerson);\r\n this.savingPerson = false;\r\n });\r\n } else if (this.entityType === EntityType.Coordinator) {\r\n this.realtorPortalService.saveCoordinator(this.newPerson)\r\n .then(() => {\r\n this.setAgent(this.newPerson);\r\n this.savingPerson = false;\r\n });\r\n } else if (this.entityType === EntityType.ClosingOfficer) {\r\n this.realtorPortalService.saveClosingOfficer(this.newPerson)\r\n .then(() => {\r\n this.setAgent(this.newPerson);\r\n this.savingPerson = false;\r\n });\r\n } else if (this.entityType === EntityType.ClosingOfficerCoordinator) {\r\n this.realtorPortalService.saveClosingOfficerCoordinator(this.newPerson)\r\n .then(() => {\r\n this.setAgent(this.newPerson);\r\n this.savingPerson = false;\r\n });\r\n }\r\n }\r\n\r\n searchForEscrowOfficer() {\r\n this.searchingForEscrowOfficer = true;\r\n this.realtorPortalService.findEscrowOfficerByName(\r\n this.escrowOfficerFirstNameSearch,\r\n this.escrowOfficerLastNameSearch)\r\n .then(escrowOfficers => {\r\n this.searchingForEscrowOfficer = false;\r\n this.escrowOfficers = escrowOfficers;\r\n this.escrowOfficerSearchResultVisible = true;\r\n });\r\n }\r\n\r\n searchForEscrowOfficerByPhone() {\r\n this.searchingForEscrowOfficer = true;\r\n this.realtorPortalService.findEscrowOfficerByPhone(this.phoneNumber)\r\n .then(escrowOfficers => {\r\n this.searchingForEscrowOfficer = false;\r\n this.escrowOfficers = escrowOfficers;\r\n this.escrowOfficerSearchResultVisible = true;\r\n });\r\n }\r\n\r\n searchForClosingOfficerCoordinator() {\r\n this.findingClosingOfficerCoordinator = true;\r\n this.realtorPortalService.findClosingOfficerCoordinatorByPhone(this.phoneNumber)\r\n .then(closingOfficerCoordinator => {\r\n this.findingClosingOfficerCoordinator = false;\r\n this.closingOfficerCoordinator = closingOfficerCoordinator;\r\n this.closingOfficerCoordinatorResultVisible = true;\r\n\r\n });\r\n }\r\n\r\n searchForRealEstateTransactionCoordinator() {\r\n this.findingRealEstateTransactionCoordinator = true;\r\n this.realtorPortalService.findRealEstateTransactionCoordinatorByPhone(this.phoneNumber)\r\n .then(realEstateTransactionCoordinator => {\r\n this.findingRealEstateTransactionCoordinator = false;\r\n this.realEstateTransactionCoordinator = realEstateTransactionCoordinator;\r\n this.realEstateTransactionCoordinatorResultVisible = true;\r\n });\r\n }\r\n\r\n searchForTitleCompany() {\r\n this.searchingForTitleCompany = true;\r\n this.realtorPortalService.findTitleCompanyByNameAndCity(\r\n this.titleNameSearch, this.titleCitySearch)\r\n .then(titleCompanies => {\r\n this.searchingForTitleCompany = false;\r\n this.titleCompanies = titleCompanies;\r\n this.titleSearchResultVisible = true;\r\n });\r\n }\r\n\r\n setTitleCompany(titleCompany) {\r\n this.selectedParent = titleCompany;\r\n this.selectedIndex = this.CREATE_USER_STEP;\r\n }\r\n\r\n setRealEstateBranch(realEstateBranch) {\r\n this.selectedParent = realEstateBranch;\r\n this.selectedIndex = this.CREATE_USER_STEP;\r\n }\r\n\r\n escrowOfficer(escrowOfficer) { throw 'TODO: implement this'; }\r\n\r\n setAgent(agent) {\r\n this.realtorPortalService.attachEntityToWebUser(agent.Id)\r\n .then(() => { this.completeRegistration(); });\r\n }\r\n\r\n setClosingOfficerCoordinator(closingOfficerCoordinator) {\r\n this.realtorPortalService.attachEntityToWebUser(closingOfficerCoordinator.Id)\r\n .then(() => { this.completeRegistration(); })\r\n }\r\n\r\n private completeRegistration() {\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n data: 'Your real estate information has been successfully attached.',\r\n duration: 10000,\r\n panelClass: ['success-toast']\r\n });\r\n this.router.navigateByUrl('/home');\r\n //Clear the cached side-bar info\r\n this.realtorPortalService.getSideBarInfo(true).then(()=> {});\r\n }\r\n}\r\n","module.exports = \"mat-form-field {\\r\\n display: inline-block;\\r\\n max-width: 400px;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n.container {\\r\\n max-width: 500px;\\r\\n}\"","module.exports = \"
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

Password\\r\\n Reset\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n lock Log In\\r\\n
\\r\\n
\\r\\n\"","import {Component, OnInit} from '@angular/core';\r\nimport {Router} from '@angular/router';\r\nimport {\r\n ToastSuccessComponent\r\n} from '../../parts/toast-success/toast-success.component';\r\nimport {MatSnackBar} from '@angular/material';\r\nimport {DialogsService} from '../../services/dialog.service';\r\nimport { RealtorPortalService } from '../../services/network/realtor-portal.service';\r\n\r\n@Component({\r\n selector: 'app-reset-password',\r\n templateUrl: './reset-password.component.html',\r\n styleUrls: ['./reset-password.component.css'],\r\n})\r\nexport class ResetPasswordComponent implements OnInit {\r\n emailAddress: string;\r\n resettingEmail = false;\r\n\r\n constructor(private realtorPortalService: RealtorPortalService,\r\n private router: Router, private snackBar: MatSnackBar,\r\n private dialogService: DialogsService) {}\r\n\r\n ngOnInit() {}\r\n\r\n get canResetEmail() { return this.emailAddress; }\r\n\r\n reset() {\r\n this.dialogService.confirm('Confirm',\r\n 'Are you sure you want to reset your password?')\r\n .subscribe(result => {\r\n if (!result) {\r\n return;\r\n }\r\n this.resettingEmail = true;\r\n\r\n\r\n this.realtorPortalService.sendResetRequest(this.emailAddress)\r\n .then(() => {\r\n this.resettingEmail = false;\r\n\r\n this.snackBar.openFromComponent(ToastSuccessComponent, {\r\n data: 'Password Reset. Check your email for the new password.',\r\n duration: 10000,\r\n panelClass: ['success-toast']\r\n });\r\n this.router.navigateByUrl('/log-in');\r\n });\r\n });\r\n }\r\n}\r\n","module.exports = \"mat-form-field {\\r\\n display:block;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n.no-match {\\r\\n position: absolute;\\r\\n right: 23px;\\r\\n margin-top: -47px;\\r\\n color: orange;\\r\\n}\\r\\n\\r\\n#agent-image {\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\nbutton.text-left {\\r\\n white-space: normal;\\r\\n line-height: 20px;\\r\\n text-transform: none;\\r\\n margin-top: 20px;\\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

Account\\r\\n Information\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n Name\\r\\n
\\r\\n
\\r\\n {{webUserInfo.DisplayName}}\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n Login Email\\r\\n
\\r\\n
\\r\\n {{webUserInfo.UserId}}\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n warning\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n

Real Estate\\r\\n Information\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
Name
\\r\\n\\r\\n\\r\\n
\\r\\n
{{entity.Name}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
License #
\\r\\n
{{entity.LicenseNumber}}
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Company
\\r\\n
\\r\\n
{{entity.ParentName}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Company Address
\\r\\n
{{entity.StreetAddress}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

It looks like we don't have your account linked to your professional real estate information.

\\r\\n \\r\\n \\r\\n account_box\\r\\n Link Your Account\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

Update\\r\\n Contact\\r\\n

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

Branch\\r\\n Search\\r\\n

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

Enter the name or license number in the box provided below and we will try and locate your information in our existing realtor database.

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

Search\\r\\n Results\\r\\n

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

New\\r\\n Branch\\r\\n

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

Please provide the contact information for your real estate branch.

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\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 {Component, OnInit} from '@angular/core';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {ApiAccessService} from '../../services/network/api-access.service';\r\nimport {\r\n ToastSuccessComponent\r\n} from '../../parts/toast-success/toast-success.component';\r\nimport {MatSnackBar} from '@angular/material';\r\nimport {DialogsService} from '../../services/dialog.service';\r\nimport {NewEntity} from '../../models/new-entity';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\n\r\n@Component({\r\n selector: 'app-settings',\r\n templateUrl: './settings.component.html',\r\n styleUrls: ['./settings.component.css']\r\n})\r\nexport class SettingsComponent implements OnInit {\r\n resetPasswordVisible = false;\r\n password: string;\r\n passwordConfirm: string;\r\n oldPassword: string;\r\n changingPassword = false;\r\n webUserInfo: any;\r\n entity: any;\r\n loadingEntity = true;\r\n selectedIndex = 0;\r\n agentInfo: any;\r\n savingAgentInfo = false;\r\n\r\n branchSearchName: string;\r\n branchSearchCity: string;\r\n searchingForBranch = false;\r\n branches: any[];\r\n branchSearchResultVisible = false;\r\n showBranchSearch = true;\r\n addOfficeVisible = false;\r\n newBranch: NewEntity = new NewEntity();\r\n savingBranch = false;\r\n\r\n isTitleEntity = false;\r\n\r\n\r\n constructor(private realtorPortalService: RealtorPortalService,\r\n private snakbar: MatSnackBar,\r\n private dialogService: DialogsService) {}\r\n\r\n ngOnInit() { this.refresh(); }\r\n\r\n private refresh(callback: any = null) {\r\n this.realtorPortalService.getWebUserInfo().then(\r\n webUserInfo => { this.webUserInfo = webUserInfo; });\r\n\r\n this.realtorPortalService.getWebUserEntityRecord().then(entity => {\r\n this.entity = entity;\r\n this.loadingEntity = false;\r\n });\r\n\r\n this.realtorPortalService.getWebUserExInfo().then(info => {\r\n this.agentInfo = info;\r\n if (info) {\r\n this.isTitleEntity = info.EntityType === 'Closing_Officer' ||\r\n info.EntityType === 'Closing_Officer_Coordinator';\r\n }\r\n if (callback) {\r\n callback();\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n get canSearchForBranch() {\r\n return this.branchSearchName && this.branchSearchCity;\r\n }\r\n\r\n get canSaveBranch() {\r\n return this.newBranch.Name && this.newBranch.StreetAddress &&\r\n this.newBranch.City && this.newBranch.State &&\r\n this.newBranch.ZipCode && this.newBranch.Phone &&\r\n UtilitiesService.isValidPhoneNumber(this.newBranch.Phone);\r\n }\r\n\r\n\r\n saveNewBranch() {\r\n this.savingBranch = true;\r\n this.newBranch.Id = UtilitiesService.newid();\r\n\r\n if (this.isTitleEntity) {\r\n this.realtorPortalService.saveNewTitleCompany(this.newBranch)\r\n .then(result => {\r\n this.setRealEstateBranch(this.newBranch, () => {\r\n this.savingBranch = false;\r\n this.newBranch = new NewEntity();\r\n });\r\n });\r\n } else {\r\n this.realtorPortalService.saveNewBranch(this.newBranch)\r\n .then(result => {\r\n this.setRealEstateBranch(this.newBranch, () => {\r\n this.savingBranch = false;\r\n this.newBranch = new NewEntity();\r\n });\r\n });\r\n }\r\n }\r\n\r\n\r\n createNewBranch() {\r\n this.showBranchSearch = false;\r\n this.addOfficeVisible = true;\r\n this.newBranch.Name = this.branchSearchName;\r\n this.newBranch.City = this.branchSearchCity;\r\n }\r\n\r\n setRealEstateBranch(realEstateBranch, callback: any = null) {\r\n this.agentInfo.ParentId = realEstateBranch.Id;\r\n this.saveAgentInfo(callback);\r\n }\r\n\r\n onStepChange() {\r\n this.showBranchSearch = true;\r\n this.branchSearchResultVisible = false;\r\n this.addOfficeVisible = false;\r\n }\r\n\r\n searchForBranch() {\r\n this.searchingForBranch = true;\r\n\r\n if (this.isTitleEntity) {\r\n this.realtorPortalService.findTitleCompanyByNameAndCity(\r\n this.branchSearchName, this.branchSearchCity)\r\n .then(branches => {\r\n this.searchingForBranch = false;\r\n this.branches = branches;\r\n this.branchSearchResultVisible = true;\r\n this.showBranchSearch = false;\r\n\r\n });\r\n } else {\r\n this.realtorPortalService.findBranchByNameAndCity(this.branchSearchName,\r\n this.branchSearchCity)\r\n .then(branches => {\r\n this.searchingForBranch = false;\r\n this.branches = branches;\r\n this.branchSearchResultVisible = true;\r\n this.showBranchSearch = false;\r\n });\r\n }\r\n }\r\n\r\n get passwordMatches() {\r\n if (!this.password) {\r\n return false;\r\n }\r\n\r\n if (!this.oldPassword) {\r\n return false;\r\n }\r\n\r\n return this.password === this.passwordConfirm;\r\n }\r\n\r\n get showPasswordMismatchIndicator() {\r\n return this.password && this.passwordConfirm &&\r\n this.password !== this.passwordConfirm;\r\n }\r\n\r\n editContactInformation() { this.selectedIndex = 1; }\r\n\r\n editParent() { this.selectedIndex = 2; }\r\n\r\n unlinkEntities() {\r\n this.dialogService\r\n .confirm(\r\n 'Confirm',\r\n 'Are you sure you want to unlink this real estate record from your login?')\r\n .subscribe(result => {\r\n if (result) {\r\n this.realtorPortalService.unlinkEntities().then(() => {\r\n this.entity = null;\r\n this.realtorPortalService.getSideBarInfo(true).then(sidebar => {\r\n\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n saveAgentInfo(callback: any = null) {\r\n this.savingAgentInfo = true;\r\n this.realtorPortalService.saveWebUserExInfo(this.agentInfo)\r\n .then((result) => {\r\n if (result == false) {\r\n this.dialogService.alert('Existing Agent', 'An agent already exists with the same license number.');\r\n }\r\n this.savingAgentInfo = false;\r\n this.selectedIndex = 0;\r\n this.refresh(callback);\r\n this.realtorPortalService.getSideBarInfo(true).then(() => {});\r\n });\r\n }\r\n\r\n changePassword() {\r\n this.changingPassword = true;\r\n\r\n this.realtorPortalService.changePassword(this.oldPassword, this.password,\r\n this.passwordConfirm)\r\n .then(results => {\r\n if (results.Success) {\r\n this.resetPasswordVisible = false;\r\n ApiAccessService.setLoginInfo(ApiAccessService.userName,\r\n this.password);\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n duration: 1000,\r\n data: 'Password Updated',\r\n panelClass: ['success-toast']\r\n });\r\n\r\n } else {\r\n this.dialogService.alert('Could Not Change', results.Message);\r\n }\r\n this.changingPassword = false;\r\n });\r\n }\r\n}\r\n","module.exports = \"#property-image-container {\\r\\n max-height: 300px;\\r\\n overflow: hidden;\\r\\n position: absolute;\\r\\n width: 100%;\\r\\n }\\r\\n \\r\\n #property-image-container img {\\r\\n width: 100%;\\r\\n margin-top: -20%;\\r\\n -webkit-filter: blur(3px);\\r\\n filter: blur(3px);\\r\\n }\\r\\n \\r\\n .container {\\r\\n position: relative;\\r\\n min-height: 300px;\\r\\n box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.2);\\r\\n background-color: #fff;\\r\\n }\\r\\n \\r\\n #policy-id-container {\\r\\n position: relative;\\r\\n margin-bottom: 20px;\\r\\n color: #fff;\\r\\n background-color: rgba(0, 0, 0, .5);\\r\\n border-radius: 5px 0 0 5px;\\r\\n margin-top: 20px;\\r\\n min-width: 150px;\\r\\n padding-left: 30px;\\r\\n padding-top: 10px;\\r\\n padding-bottom: 10px;\\r\\n }\\r\\n \\r\\n #policy-id-container h3 {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n #address-container {\\r\\n position: relative;\\r\\n margin-bottom: 20px;\\r\\n color: #fff;\\r\\n background-color: rgba(0, 0, 0, .5);\\r\\n border-radius: 0 5px 5px 0;\\r\\n margin-top: 20px;\\r\\n min-width: 150px;\\r\\n padding-left: 30px;\\r\\n padding-top: 10px;\\r\\n padding-bottom: 10px;\\r\\n padding-right: 30px;\\r\\n }\\r\\n \\r\\n #address-container h3 {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n #non-picture-container {\\r\\n margin-top: 80px;\\r\\n padding: 10px;\\r\\n }\\r\\n \\r\\n li {\\r\\n font-size: 12px;\\r\\n display: inline-block;\\r\\n width: 33%;\\r\\n }\\r\\n \\r\\n .cc-logo {\\r\\n height: 30px;\\r\\n float: left;\\r\\n margin-right: 10px;\\r\\n }\\r\\n \\r\\n .property-button {\\r\\n display: block;\\r\\n width: 100%;\\r\\n text-align: left;\\r\\n padding: 3px 5px;\\r\\n white-space: normal;\\r\\n }\\r\\n \\r\\n .property-button p {\\r\\n line-height: 20px;\\r\\n margin: 0;\\r\\n text-transform: none;\\r\\n }\\r\\n \\r\\n .property-button h3 {\\r\\n line-height: 18px;\\r\\n font-size: 18px;\\r\\n text-transform: none;\\r\\n }\\r\\n \\r\\n .property-street-view {\\r\\n /* border-radius: 5px; */\\r\\n box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.75);\\r\\n }\\r\\n \\r\\n .mobile-toolbar {\\r\\n display: none;\\r\\n }\\r\\n \\r\\n .mobile-toolbar button {\\r\\n padding: 0 5px;\\r\\n border-bottom: 2px solid transparent;\\r\\n outline: none;\\r\\n }\\r\\n \\r\\n .selected {\\r\\n border-bottom: 2px solid #637283 !important;\\r\\n }\\r\\n \\r\\n #resend-panel {\\r\\n position: absolute;\\r\\n padding: 20px;\\r\\n background-color: #fff;\\r\\n box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.35);\\r\\n border: 1px solid rgba(0,0,0,.1);\\r\\n width: 100%;\\r\\n max-width: 400px;\\r\\n z-index: 2;\\r\\n }\\r\\n \\r\\n #resend-panel mat-form-field {\\r\\n display: block;\\r\\n width: 100%;\\r\\n }\\r\\n \\r\\n #renewal-call-out {\\r\\n background-color: rgb(228, 108, 0);\\r\\n color: #fff;\\r\\n text-align: center;\\r\\n padding: 10px;\\r\\n padding-bottom: 10px;\\r\\n margin: 10px;\\r\\n border-radius: 3px;\\r\\n font-size: 14px;\\r\\n display: table;\\r\\n width: calc(100% - 40px);\\r\\n max-width: 980px;\\r\\n margin: 0 auto;\\r\\n margin-bottom: 10px;\\r\\n }\\r\\n \\r\\n #renewal-call-out a {\\r\\n color: rgb(228, 108, 0);\\r\\n }\\r\\n \\r\\n .tenant-item {\\r\\n border-bottom: 1px dotted rgba(0, 0, 0, .5);\\r\\n padding-top: 20px;\\r\\n position: relative;\\r\\n }\\r\\n \\r\\n .remove-button {\\r\\n position: absolute;\\r\\n right: 0;\\r\\n z-index: 2;\\r\\n min-width: 44px;\\r\\n }\\r\\n \\r\\n #add-new-tenant-button {\\r\\n border: 4px dashed rgba(234,97,33,.1);\\r\\n margin-top: 10px;\\r\\n }\\r\\n \\r\\n .document-button {\\r\\n display: inline-block;\\r\\n width: 171px;\\r\\n vertical-align: top;\\r\\n margin-bottom: 20px;\\r\\n }\\r\\n \\r\\n .document-button>button, .document-button>a {\\r\\n width: 100%;\\r\\n display: block;\\r\\n }\\r\\n \\r\\n #options-label {\\r\\n margin-top: 20px;\\r\\n border-bottom: 1px dotted;\\r\\n padding-bottom: 10px;\\r\\n }\\r\\n \\r\\n @media (max-width: 960px) {\\r\\n #address-container {\\r\\n display: inline-block;\\r\\n margin-top: 100px;\\r\\n }\\r\\n #policy-id-container {\\r\\n position: absolute;\\r\\n right: calc(50% - 105px);\\r\\n margin-top: 0;\\r\\n border-radius: 0 0 5px 5px;\\r\\n padding-right: 30px;\\r\\n min-width: 0;\\r\\n width: 150px;\\r\\n text-align: center;\\r\\n }\\r\\n .dotted-left {\\r\\n border-left: none !important;\\r\\n border-top: 1px dotted rgba(0, 0, 0, .5);\\r\\n }\\r\\n .mobile-toolbar {\\r\\n display: flex;\\r\\n margin-bottom: 5px;\\r\\n }\\r\\n \\r\\n #non-picture-container {\\r\\n margin-top: 20px;\\r\\n }\\r\\n \\r\\n ul {\\r\\n padding-left: 20px;\\r\\n }\\r\\n\\r\\n li {\\r\\n display: block;\\r\\n width: 100%;\\r\\n font-size: 14px;\\r\\n line-height: 24px;\\r\\n }\\r\\n\\r\\n #button-group a, #button-group button {\\r\\n text-align: left;\\r\\n margin-top: 10px;\\r\\n }\\r\\n\\r\\n #resend-panel {\\r\\n width: calc(100% - 60px);\\r\\n left: 10px;\\r\\n }\\r\\n }\\r\\n \"","module.exports = \"
\\r\\n
\\r\\n Loading Coverage Information...\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{quoteSummary.PolicySummary.Status}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Quote

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

{{quoteSummary.PolicySummary.PropertyAddress}}

\\r\\n
{{quoteSummary.PolicySummary.PropertyCity}}, {{quoteSummary.PolicySummary.PropertyState}} {{quoteSummary.PolicySummary.PropertyZip}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
Total Price
\\r\\n

{{quoteSummary.PolicySummary.TotalPlanPrice | currency}}

\\r\\n
\\r\\n\\r\\n
\\r\\n
Monthly Price
\\r\\n

{{quoteSummary.PolicySummary.TotalPlanPriceRecurring | currency}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n Order Now\\r\\n
\\r\\n\\r\\n
Options
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

{{quoteSummary.PolicySummary.PlanName}}

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

Standard Items

\\r\\n
    \\r\\n
  • {{standardItem.SalesItemName}}
  • \\r\\n
\\r\\n\\r\\n
0\\\">\\r\\n

Options

\\r\\n
    \\r\\n
  • {{optionalItem.SalesItemName}}
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n

Documents

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\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 {Component, OnInit} from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\nimport {UtilitiesService} from '../../services/utilities.service';\r\nimport {DialogsService} from '../../services/dialog.service';\r\nimport {\r\n ToastSuccessComponent\r\n} from '../../parts/toast-success/toast-success.component';\r\nimport {MatSnackBar} from '@angular/material';\r\n\r\n@Component({\r\n selector: 'app-view-quote',\r\n templateUrl: './view-quote.component.html',\r\n styleUrls: ['./view-quote.component.css']\r\n})\r\nexport class ViewQuoteComponent implements OnInit {\r\n quoteId: string;\r\n loadingPolicy: boolean;\r\n quoteSummary: any;\r\n showResendQuote = false;\r\n sendTo: string;\r\n resendingQuote = false;\r\n\r\n constructor(private route: ActivatedRoute,\r\n private customerPortalService: RealtorPortalService,\r\n private dialogService: DialogsService, private router: Router,\r\n private snakbar: MatSnackBar) {}\r\n\r\n ngOnInit() {\r\n this.route.params.subscribe(params => {\r\n this.quoteId = params['id'];\r\n\r\n this.loadingPolicy = true;\r\n\r\n this.customerPortalService.getSideBarInfo().then(sidebar=> {\r\n this.sendTo = sidebar.Email;\r\n });\r\n this.customerPortalService.getPolicySummaryById(this.quoteId)\r\n .then(ps => {\r\n this.quoteSummary = ps;\r\n this.loadingPolicy = false;\r\n });\r\n });\r\n }\r\n\r\n deleteQuote() {\r\n this.dialogService.confirm('Confirm',\r\n 'Are you sure you want to delete this quote?')\r\n .subscribe(result => {\r\n if (result) {\r\n this.customerPortalService.deleteQuote(this.quoteId)\r\n .then(() => {\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n data: 'Your quote has been deleted.',\r\n duration: 6000,\r\n panelClass: ['success-toast']\r\n });\r\n\r\n this.router.navigateByUrl('/home');\r\n });\r\n }\r\n });\r\n }\r\n\r\n get canResendQuote() {\r\n return UtilitiesService.isEmailValid(this.sendTo);\r\n }\r\n\r\n resendQuote() {\r\n this.resendingQuote = true;\r\n\r\n this.customerPortalService.resendQuote(this.quoteId,this.sendTo).then(()=> {\r\n this.resendingQuote = false;\r\n this.showResendQuote = false;\r\n this.snakbar.openFromComponent(ToastSuccessComponent, {\r\n data: 'Your quote has re-sent.',\r\n duration: 6000,\r\n panelClass: ['success-toast']\r\n });\r\n });\r\n }\r\n\r\n get baseUrl() { return UtilitiesService.baseAPIUrl; }\r\n}\r\n","module.exports = \"\"","module.exports = \"\\r\\n
\\r\\n\"","import { Component, OnChanges, AfterViewInit, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport * as React from 'react';\r\nimport * as ReactDOM from 'react-dom';\r\nimport { RealtorPortalService } from 'src/app/services/network/realtor-portal.service';\r\nimport { WarrantyLinkComponent } from '@ftdr/warranty-link';\r\n\r\n@Component({\r\n selector: 'app-warranty-link',\r\n templateUrl: './warranty-link.component.html',\r\n styleUrls: ['./warranty-link.component.css']\r\n})\r\nexport class WLComponent implements OnChanges, AfterViewInit {\r\n\r\n public rootId = 'warranty-link-root';\r\n private hasViewLoaded = false;\r\n policyId: string;\r\n apiUrl: string;\r\n brand: string;\r\n\r\n constructor(private route: ActivatedRoute, private realtorPortalService: RealtorPortalService) {}\r\n\r\n// tslint:disable-next-line:typedef\r\n public ngOnChanges() {\r\n this.renderComponent();\r\n }\r\n// tslint:disable-next-line:typedef\r\n public ngAfterViewInit() {\r\n this.hasViewLoaded = true;\r\n this.route.params.subscribe(params => {\r\n if (params['brand']) {\r\n this.brand = params['brand'];\r\n } else {\r\n this.brand = 'og';\r\n }\r\n if (params['policyId']) {\r\n this.policyId = params['policyId'];\r\n this.apiUrl = this.realtorPortalService.getWarrantyLinkUrl();\r\n this.renderComponent();\r\n }\r\n });\r\n }\r\n\r\n // tslint:disable-next-line:typedef\r\n private renderComponent() {\r\n if (!this.hasViewLoaded) {\r\n return;\r\n }\r\n\r\n ReactDOM.render(\r\n React.createElement(WarrantyLinkComponent, {brand: this.brand ,\r\n apiurl: this.apiUrl, policyid: this.policyId} ),\r\n document.getElementById(this.rootId)\r\n );\r\n }\r\n\r\n}\r\n","module.exports = \"mat-dialog-content {\\r\\n min-width: 300px;\\r\\n}\\r\\nmat-dialog-actions {\\r\\n text-align: right;\\r\\n}\\r\\n[matDialogTitle] {\\r\\n padding-bottom: 20px;\\r\\n border-bottom: 1px solid rgba(0,0,0,.2);\\r\\n margin-bottom: 10px;\\r\\n}\\r\\n.big-icon {\\r\\n font-size: 64px;\\r\\n color: rgba(0,0,0,.2);\\r\\n}\\r\\n@media all and (max-width: 960px) {\\r\\n .big-icon {\\r\\n font-size: 34px;\\r\\n }\\r\\n}\"","module.exports = \"

{{ title }}

\\r\\n\\r\\n
\\r\\n
\\r\\n info_outline\\r\\n
\\r\\n
\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\"","import { MatDialogRef } from '@angular/material';\r\nimport { Component } from '@angular/core';\r\n\r\n@Component({\r\n templateUrl: './alert-dialog.component.html',\r\n styleUrls: ['./alert-dialog.component.css']\r\n})\r\nexport class AlertDialogComponent {\r\n\r\n public title: string;\r\n public message: string;\r\n\r\n constructor(public dialogRef: MatDialogRef) { }\r\n}\r\n","import { MatDialogRef } from '@angular/material';\r\nimport { Component } from '@angular/core';\r\n\r\n@Component({\r\n template: `\r\n

{{ title }}

\r\n

\r\n \r\n \r\n `,\r\n})\r\nexport class ConfirmDialogComponent {\r\n\r\n public title: string;\r\n public message: string;\r\n\r\n constructor(public dialogRef: MatDialogRef) {\r\n\r\n }\r\n}\r\n","module.exports = \".step-outer-container {\\r\\n min-height: 30px; \\r\\n position: fixed;\\r\\n bottom: -15px; \\r\\n width: 100%;\\r\\n display: flex;\\r\\n z-index: 2;\\r\\n }\\r\\n \\r\\n .step-outer-container>.flex-spacer {\\r\\n flex: 1;\\r\\n }\\r\\n \\r\\n .step-outer-container>.end-cap {\\r\\n width: 5px;\\r\\n background-color: gray; \\r\\n height: 2px;\\r\\n margin-top: 3px;\\r\\n }\\r\\n \\r\\n .step-outer-container .step {\\r\\n background-color: rgb(150,150,150);\\r\\n height: 7px;\\r\\n width: 7px;\\r\\n border-radius: 100%;\\r\\n transition: all ease-out .7s;\\r\\n }\\r\\n \\r\\n .step-outer-container .step-link {\\r\\n width: 7px;\\r\\n background-color: gray;\\r\\n height: 2px;\\r\\n margin-top: 3px;\\r\\n transition: all ease-out .7s;\\r\\n }\\r\\n \\r\\n .step-outer-container .completed {\\r\\n background-color: #66AB8C;\\r\\n }\\r\\n \\r\\n .step-outer-container .current {\\r\\n -webkit-transform: scale(1.5);\\r\\n transform: scale(1.5);\\r\\n background-color: #CD5360;\\r\\n }\\r\\n \\r\\n .step-container {\\r\\n display: flex;\\r\\n }\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\" [class.completed]=\\\"step < currentStep\\\">
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n SimpleChanges,\r\n OnChanges\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-mobile-wizard-progress-indicator',\r\n templateUrl: './mobile-wizard-progress-indicator.component.html',\r\n styleUrls: ['./mobile-wizard-progress-indicator.component.css']\r\n})\r\nexport class MobileWizardProgressIndicatorComponent implements OnInit,\r\n OnChanges {\r\n @Input() currentStep = 0;\r\n @Input() numberOfSteps = 0;\r\n\r\n steps: number[];\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (this.numberOfSteps) {\r\n this.steps = [];\r\n for (let i = 0; i < this.numberOfSteps; i++) {\r\n this.steps.push(i);\r\n }\r\n }\r\n }\r\n}\r\n","module.exports = \"mat-dialog-content {\\r\\n width: 600px;\\r\\n max-width: 100%;\\r\\n}\\r\\n\\r\\n.language-text {\\r\\n font-size: 14px;\\r\\n padding-left: 5px;\\r\\n margin-bottom: 20px;\\r\\n}\\r\\n\\r\\ndiv.sub-heading {\\r\\n font-size: 18px;\\r\\n color: rgba(0,0,0,.5);\\r\\n}\\r\\n\\r\\n@media (max-width: 960px) {\\r\\n h1 {\\r\\n font-size: 24px;\\r\\n }\\r\\n }\"","module.exports = \"\\r\\n
\\r\\n

{{Title}}

\\r\\n

\\r\\n {{ExtendedLanguage}}\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\"","import {\r\n Component,\r\n NgZone,\r\n Input,\r\n SimpleChanges,\r\n Output,\r\n EventEmitter,\r\n Inject\r\n} from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog } from '@angular/material';\r\nimport {\r\n RealtorPortalService\r\n} from '../../../services/network/realtor-portal.service';\r\n\r\n\r\n\r\n@Component({\r\n templateUrl: './extended-area.component.html',\r\n styleUrls: ['./extended-area.component.css'],\r\n})\r\nexport class ExtendedAreaDialogComponent {\r\n planDetail: any;\r\n Title: string;\r\n ExtendedLanguage: string;\r\n DocumentURL: string;\r\n DocumentName: string;\r\n\r\n\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any,\r\n public dialog: MatDialog,\r\n private customerPortalService: RealtorPortalService) {\r\n const state: string = data;\r\n\r\n this.DocumentURL = \"https://common.oneguardhomewarranty.com/RealEstate/Content/images/SampleContracts/ExtendedArea/\" + state.toLowerCase() + \".pdf\";\r\n this.DocumentName = \"SampleContract.pdf\";\r\n\r\n if (state == 'AZ') {\r\n this.Title = \"Arizona Disclaimer\";\r\n this.ExtendedLanguage = \"Noted services are available in Phoenix and Tucson metropolitan areas. Click below to see our extended area sample contract.For more specifics, please reach out to our sales team at 888-896-0014.\";\r\n \r\n }\r\n else if (state == 'TX') {\r\n this.Title = \"Texas Disclaimer\";\r\n this.ExtendedLanguage = \"Noted services are available in Dallas/Fort Worth, Houston, Austin, and San Antonio metropolitan areas.Click below to see our extended area sample contract. For more specifics, please reach out to our sales team at 888-896-0014.\";\r\n }\r\n else {\r\n this.Title = \"No Contract Avaliable\";\r\n this.ExtendedLanguage = \"There are currently no sample contracts avaliable for your selected state.\";\r\n }\r\n\r\n }\r\n\r\n}\r\n","module.exports = \".category {\\r\\n /*background-color: orange;*/\\r\\n border-bottom: 2px solid #565695;\\r\\n text-transform: uppercase;\\r\\n color: rgba(0, 0, 0, .6);\\r\\n font-weight: bold;\\r\\n font-size: 12px;\\r\\n}\\r\\n\\r\\n.unique {\\r\\n font-weight: bold;\\r\\n color: rgba(0,0,0,1);\\r\\n font-size: 12px !important;\\r\\n}\\r\\n\\r\\n/*\\r\\n.category:first-child {\\r\\n background-color: none !important;\\r\\n}*/\\r\\n\\r\\n.available-box {\\r\\n text-align: center;\\r\\n background-color: rgba(0, 0, 0, .05);\\r\\n}\\r\\n\\r\\n.available-box-1 {\\r\\n background-color: rgba(0, 0, 0, .01);\\r\\n}\\r\\n\\r\\n.available-box-2 {\\r\\n background-color: rgba(0, 0, 0, .03);\\r\\n}\\r\\n\\r\\n.available-box-3 {\\r\\n background-color: rgba(0, 0, 0, .06);\\r\\n}\\r\\n\\r\\n.plan-header {\\r\\n text-align: center;\\r\\n overflow: hidden;\\r\\n}\\r\\n\\r\\n.pad-top {\\r\\n padding-top: 20px;\\r\\n}\\r\\n\\r\\n#planGrid div[flex]>*:not(:first-child) {\\r\\n margin-left: 0;\\r\\n}\\r\\n\\r\\n.ribbon {\\r\\n position: absolute;\\r\\n right: -15px;\\r\\n top: -15px;\\r\\n z-index: 1;\\r\\n overflow: hidden;\\r\\n width: 75px;\\r\\n height: 85px;\\r\\n text-align: right;\\r\\n}\\r\\n\\r\\n.ribbon span {\\r\\n font-size: 10px;\\r\\n font-weight: bold;\\r\\n color: #FFF;\\r\\n text-transform: uppercase;\\r\\n text-align: center;\\r\\n line-height: 20px;\\r\\n -webkit-transform: rotate(45deg);\\r\\n transform: rotate(45deg);\\r\\n width: 100px;\\r\\n display: block;\\r\\n background: #79A70A;\\r\\n background: linear-gradient(#9BC90D 0%, #79A70A 100%);\\r\\n box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 1);\\r\\n position: absolute;\\r\\n top: 34px;\\r\\n right: -24px;\\r\\n z-index: 10;\\r\\n}\\r\\n\\r\\n.ribbon-star span {\\r\\n background: #79A70A;\\r\\n background: linear-gradient(#05EFF7 0%, #087F8F 100%);\\r\\n}\\r\\n\\r\\n.plan-header-info-container {\\r\\n position: relative;\\r\\n padding: 20px;\\r\\n padding-bottom: 0;\\r\\n}\\r\\n\\r\\n.data-label {\\r\\n font-size: 16px;\\r\\n /* font-style: italic; */\\r\\n /* font-weight: bold; */\\r\\n font-family: 'Open Sans';\\r\\n border-bottom: 1px dotted rgba(0, 0, 0, .5);\\r\\n padding-bottom: 5px;\\r\\n}\\r\\n\\r\\n.plan-footer {\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.plan-header button {\\r\\n white-space: normal;\\r\\n line-height: 20px;\\r\\n height: 100%;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n.selected-plan {\\r\\n position: absolute;\\r\\n font-size: 130px;\\r\\n color: rgba(37, 114, 48, .4);\\r\\n margin: 0 auto;\\r\\n left: 0;\\r\\n right: 0;\\r\\n}\\r\\n\\r\\n.not-selected-checkbox {\\r\\n color: rgba(0, 0, 0, .6);\\r\\n transition: all 5s ease;\\r\\n}\\r\\n\\r\\n.selected-checkbox {\\r\\n color: rgb(37, 114, 28);\\r\\n -webkit-transform: scale(1.2);\\r\\n transform: scale(1.2);\\r\\n}\\r\\n\\r\\n.mobile-square {\\r\\n min-height: 190px;\\r\\n text-align: center;\\r\\n margin: 0 !important;\\r\\n}\\r\\n\\r\\n.left-square {\\r\\n color: #fff;\\r\\n padding-top: 30px;\\r\\n padding-left: 5px;\\r\\n padding-right: 5px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n.left-square h2 {\\r\\n color: #fff;\\r\\n margin-bottom: 10px;\\r\\n line-height: 26px;\\r\\n text-transform: none;\\r\\n}\\r\\n\\r\\n.left-square button {\\r\\n color: #fff;\\r\\n}\\r\\n\\r\\n.right-square {\\r\\n border-bottom: 1px dotted rgba(0, 0, 0, .3);\\r\\n padding: 10px;\\r\\n padding-top: 30px;\\r\\n border-right: 1px dotted rgba(0, 0, 0, .3);\\r\\n}\\r\\n\\r\\n.right-square.first-item {\\r\\n border-top: 1px dotted rgba(0, 0, 0, .3);\\r\\n}\\r\\n\\r\\n.small {\\r\\n font-size: 11px;\\r\\n}\\r\\n\\r\\n.plan-description {\\r\\n font-size: 15px;\\r\\n font-style: italic;\\r\\n}\\r\\n\\r\\n.transform {\\r\\n transition: all .5s ease-out;\\r\\n}\\r\\n\\r\\n.rotated {\\r\\n -webkit-transform: rotate(180deg);\\r\\n transform: rotate(180deg);\\r\\n}\\r\\n\\r\\n@-webkit-keyframes expand-in {\\r\\n from {\\r\\n -webkit-transform: translateY(0);\\r\\n transform: translateY(0);\\r\\n opacity: 0;\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateY(-20px);\\r\\n transform: translateY(-20px);\\r\\n opacity: 1;\\r\\n }\\r\\n}\\r\\n\\r\\n@keyframes expand-in {\\r\\n from {\\r\\n -webkit-transform: translateY(0);\\r\\n transform: translateY(0);\\r\\n opacity: 0;\\r\\n }\\r\\n to {\\r\\n -webkit-transform: translateY(-20px);\\r\\n transform: translateY(-20px);\\r\\n opacity: 1;\\r\\n }\\r\\n}\\r\\n\\r\\n.mobile-standard-items-list {\\r\\n overflow: hidden;\\r\\n padding-left: 10px;\\r\\n}\\r\\n\\r\\n.mobile-standard-items-list li {\\r\\n overflow: hidden;\\r\\n}\\r\\n\\r\\n.mobile-standard-items-list li button {\\r\\n white-space: normal;\\r\\n text-align: left;\\r\\n}\\r\\n\\r\\n.items-container {\\r\\n -webkit-animation: expand-in .5s ease-out;\\r\\n animation: expand-in .5s ease-out;\\r\\n -webkit-transform: translateY(-20px);\\r\\n transform: translateY(-20px);\\r\\n background-color: #eee;\\r\\n border: 1px solid rgba(0, 0, 0, .2);\\r\\n margin: 10px;\\r\\n padding: 10px;\\r\\n /* margin-top: -20px; */\\r\\n}\\r\\n\\r\\n.compare-container {\\r\\n transition: all .5s ease-out;\\r\\n}\\r\\n\\r\\n.compare-container>* {\\r\\n margin-left: 0 !important;\\r\\n}\\r\\n\\r\\n.compare-column {\\r\\n padding: 5px;\\r\\n}\\r\\n\\r\\n.data-label1 {\\r\\n font-size: 13px;\\r\\n}\\r\\n\\r\\n.compare-prev-button {\\r\\n position: fixed;\\r\\n top: calc(50% - 100px);\\r\\n background-color: rgba(0, 0, 0, .1);\\r\\n min-width: 50px;\\r\\n z-index: 2;\\r\\n}\\r\\n\\r\\n.compare-next-button {\\r\\n position: fixed;\\r\\n top: calc(50% - 100px);\\r\\n background-color: rgba(0, 0, 0, .1);\\r\\n min-width: 50px;\\r\\n z-index: 2;\\r\\n right: 0;\\r\\n}\\r\\n\\r\\ndiv[flex],\\r\\ndiv[aflex] {\\r\\n display: flex;\\r\\n}\\r\\n\\r\\ndiv[flex]>*,\\r\\ndiv[aflex]>* {\\r\\n flex: auto;\\r\\n}\\r\\n\\r\\ndiv[flex]>*[nogrow],\\r\\ndiv[aflex]>*[nogrow] {\\r\\n flex: none !important;\\r\\n}\\r\\n\\r\\n[nogrow] {\\r\\n flex: none !important;\\r\\n}\\r\\n\\r\\ndiv[flex]>*:not(:first-child),\\r\\ndiv[aflex]>*:not(:first-child) {\\r\\n margin-left: 20px;\\r\\n}\\r\\n\\r\\n*[flex1] {\\r\\n flex: 1 !important;\\r\\n}\\r\\n\\r\\n*[flex2] {\\r\\n flex: 2 !important;\\r\\n}\\r\\n\\r\\n*[flex3] {\\r\\n flex: 3 !important;\\r\\n}\\r\\n\\r\\n*[flex4] {\\r\\n flex: 4 !important;\\r\\n}\\r\\n\\r\\n*[flex15] {\\r\\n flex: 1.5 !important;\\r\\n}\\r\\n\\r\\n.item-compare-item {\\r\\n margin-bottom: 10px;\\r\\n font-size: 11px;\\r\\n}\\r\\n\\r\\n.compare-order-button {\\r\\n margin: 20px 10px;\\r\\n width: calc(100% - 20px);\\r\\n}\\r\\n\\r\\n.wrap-button {\\r\\n line-height: 24px;\\r\\n white-space: normal;\\r\\n}\\r\\n\\r\\n@-webkit-keyframes collapse {\\r\\n from,\\r\\n 0%,\\r\\n to {\\r\\n opacity: 1;\\r\\n -webkit-transform: scale(1);\\r\\n transform: scale(1);\\r\\n -webkit-transform-origin: 50% 50%;\\r\\n transform-origin: 50% 50%;\\r\\n }\\r\\n 100% {\\r\\n opacity: 0;\\r\\n -webkit-transform: scale(.5);\\r\\n transform: scale(.5);\\r\\n -webkit-transform-origin: 50% 50%;\\r\\n transform-origin: 50% 50%;\\r\\n }\\r\\n}\\r\\n\\r\\n@keyframes collapse {\\r\\n from,\\r\\n 0%,\\r\\n to {\\r\\n opacity: 1;\\r\\n -webkit-transform: scale(1);\\r\\n transform: scale(1);\\r\\n -webkit-transform-origin: 50% 50%;\\r\\n transform-origin: 50% 50%;\\r\\n }\\r\\n 100% {\\r\\n opacity: 0;\\r\\n -webkit-transform: scale(.5);\\r\\n transform: scale(.5);\\r\\n -webkit-transform-origin: 50% 50%;\\r\\n transform-origin: 50% 50%;\\r\\n }\\r\\n}\\r\\n\\r\\n.removing {\\r\\n -webkit-animation: collapse .5s ease-out;\\r\\n animation: collapse .5s ease-out;\\r\\n -webkit-transform-origin: 50% 50%;\\r\\n transform-origin: 50% 50%;\\r\\n}\\r\\n\\r\\n@media(max-width: 768px) {\\r\\n .ribbon span {\\r\\n top: 19px;\\r\\n }\\r\\n}\\r\\n\"","module.exports = \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

{{planGridItem.name}}

\\r\\n

\\r\\n\\r\\n
\\r\\n Best Value\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Plans Starting at

\\r\\n

\\r\\n {{planGridItem.price | currency:'USD':'symbol-narrow'}}\\r\\n /year\\r\\n

\\r\\n

\\r\\n

\\r\\n or\\r\\n {{planGridItem.priceRecurring + planGridItem.monthlyProcessingFee | currency:'USD':'symbol-narrow'}}\\r\\n /month\\r\\n

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

{{planGridItem.name}} Standard Items

\\r\\n
    \\r\\n
  • \\r\\n\\r\\n \\r\\n
    \\r\\n {{item.name}}\\r\\n
    \\r\\n
  • \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n description\\r\\n Sample Contract\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

{{planGridItem.name}}\\r\\n X\\r\\n

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

Plans Starting at

\\r\\n

\\r\\n\\r\\n {{planGridItem.price | currency:'USD':'symbol-narrow'}}\\r\\n /yr\\r\\n

\\r\\n

\\r\\n or {{planGridItem.priceRecurring + planGridItem.monthlyProcessingFee | currency:'USD':'symbol-narrow'}}\\r\\n /mo\\r\\n

\\r\\n
\\r\\n \\r\\n\\r\\n
Standard Items
\\r\\n
    \\r\\n
  • \\r\\n {{item.name}}\\r\\n
  • \\r\\n
\\r\\n
Optional Items
\\r\\n
    \\r\\n
  • \\r\\n {{item.name}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n

Select Plans to Compare

\\r\\n
\\r\\n {{planGridItem.name}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Show Monthly Prices\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{category.categoryName}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{item.salesItemName}} *\\r\\n \\r\\n
\\r\\n
\\r\\n check\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Service Fee
\\r\\n
\\r\\n {{plan.serviceFee| currency:'USD':'symbol-narrow'}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Show Monthly Prices\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n OnChanges,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport {PlanModel, PlanGridModel} from '../../models/plan';\r\nimport {MatDialog} from '@angular/material';\r\nimport {\r\n ViewCoverageDialogComponent\r\n} from './view-coverage/view-coverage.component';\r\nimport {\r\n ExtendedAreaDialogComponent\r\n} from './extended-area/extended-area.component';\r\nimport {\r\n RealtorPortalService\r\n} from '../../services/network/realtor-portal.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-plan-selection',\r\n templateUrl: './plan-selection.component.html',\r\n styleUrls: ['./plan-selection.component.css']\r\n})\r\nexport class PlanSelectionComponent implements OnChanges {\r\n @Input() plans: PlanModel[];\r\n @Input() selectedPlan: PlanModel;\r\n @Input() useMonthly: boolean;\r\n @Input() selectDelay = 750;\r\n @Input() zipCode: string;\r\n @Input() state: string;\r\n\r\n @Output() selectedPlanChange: EventEmitter;\r\n @Output() useMonthlyChange: EventEmitter;\r\n\r\n mobileCompareVisible = false;\r\n currentMobileCompareSlide = 0;\r\n planGrid: PlanGridModel;\r\n\r\n private swipeCoord?:[number, number];\r\n private swipeTime?: number;\r\n\r\n compareMobile() {\r\n this.mobileCompareVisible = !this.mobileCompareVisible;\r\n\r\n if (this.mobileCompareVisible) {\r\n this.updateWidths();\r\n this.setUniqueStandardItems();\r\n }\r\n }\r\n\r\n get outerContainerWidth() { return window.outerWidth + 'px'; }\r\n\r\n updateWidths() {\r\n setTimeout(() => {\r\n const width = (window.outerWidth / 2) - 11;\r\n\r\n const elements = document.getElementsByClassName('compare-column');\r\n for (let i = 0; i < elements.length; i++) {\r\n const element: any = elements[i];\r\n element.style.width = width + 'px';\r\n }\r\n\r\n const buttonLoc = window.innerHeight / 2;\r\n\r\n document.getElementById('comparePrev').style.top = buttonLoc + 'px';\r\n document.getElementById('compareNext').style.top = buttonLoc + 'px';\r\n });\r\n }\r\n\r\n swipe(e: TouchEvent, when: string): void {\r\n const coord:[number, number] =\r\n [e.changedTouches[0].pageX, e.changedTouches[0].pageY];\r\n const time = new Date().getTime();\r\n\r\n if (when === 'start') {\r\n this.swipeCoord = coord;\r\n this.swipeTime = time;\r\n } else if (when === 'end') {\r\n const direction =\r\n [coord[0] - this.swipeCoord[0], coord[1] - this.swipeCoord[1]];\r\n const duration = time - this.swipeTime;\r\n\r\n if (duration < 1000 && Math.abs(direction[0]) > 60 &&\r\n Math.abs(direction[0]) > Math.abs(direction[1] * 3)) {\r\n const swipe = direction[0] < 0 ? 'next' : 'previous';\r\n if (swipe === 'next') {\r\n this.nextCompareSlide();\r\n } else {\r\n this.prevCompareSlide();\r\n }\r\n }\r\n }\r\n }\r\n\r\n updateWidthsAndPerserveScroll() {\r\n this.updateWidths();\r\n this.currentMobileCompareSlide = this.mobileCompareSlides;\r\n this.setUniqueStandardItemsDelayed();\r\n }\r\n\r\n get mobileCompareSlides(): number {\r\n if (!this.planGrid) {\r\n return 0;\r\n }\r\n\r\n let num = Math.ceil((this.selectedPlans.length + 1) / 2);\r\n if (this.selectedPlans.length % 2 === 0) {\r\n num--;\r\n }\r\n return num;\r\n }\r\n\r\n get mobileSlideTranslate(): string {\r\n if (!document.getElementById('measureContainer')) {\r\n return;\r\n }\r\n\r\n const width = window.outerWidth / 2;\r\n return 'translate(' + (-(this.currentMobileCompareSlide * width)) +\r\n 'px, 0px)';\r\n }\r\n\r\n removePlanComparisonItem(item: PlanModel) {\r\n item.removing = true;\r\n setTimeout(() => {\r\n item.removing = false;\r\n item.selected = false;\r\n console.log(this.selectedPlans);\r\n this.setUniqueStandardItems();\r\n }, 500);\r\n }\r\n\r\n nextCompareSlide() {\r\n if (this.currentMobileCompareSlide < this.mobileCompareSlides) {\r\n this.currentMobileCompareSlide++;\r\n }\r\n }\r\n\r\n prevCompareSlide() {\r\n if (this.currentMobileCompareSlide > 0) {\r\n this.currentMobileCompareSlide--;\r\n }\r\n }\r\n\r\n showCoverage(item) {\r\n this.dialog.open(ViewCoverageDialogComponent,\r\n {data: item.salesItemCoverageId});\r\n }\r\n\r\n showExtendedArea(state) {\r\n this.dialog.open(ExtendedAreaDialogComponent,\r\n { data: state });\r\n }\r\n\r\n constructor(public dialog: MatDialog,\r\n private customerPortalService: RealtorPortalService) {\r\n this.selectedPlanChange = new EventEmitter();\r\n this.useMonthlyChange = new EventEmitter();\r\n }\r\n\r\n selectPlan(plan: PlanModel) {\r\n this.selectedPlan = plan;\r\n\r\n this.selectedPlanChange.emit(plan);\r\n }\r\n\r\n selectPlanDelayed(plan: PlanModel) {\r\n this.selectedPlan = plan;\r\n setTimeout(() => this.selectPlan(plan), this.selectDelay);\r\n }\r\n\r\n updateMonthly($event) { this.useMonthlyChange.emit($event); }\r\n\r\n get selectedPlans(): PlanModel[] {\r\n return this.planGrid.plans.filter(i => i.selected);\r\n }\r\n\r\n setUniqueStandardItemsDelayed() {\r\n setTimeout(() => this.setUniqueStandardItems());\r\n }\r\n\r\n setUniqueStandardItems() {\r\n let index = 0;\r\n this.selectedPlans.forEach(plan => {\r\n\r\n // const otherPlan = this.selectedPlans[index + 1];\r\n // if (otherPlan != null) {\r\n // plan.standardItems.forEach(si => {\r\n // let wasMatched = false;\r\n\r\n // const matchedItem = otherPlan.standardItems.filter(\r\n // osi => osi.salesItemId === si.salesItemId ||\r\n // osi.name === si.name)[0];\r\n // if (matchedItem != null) {\r\n // wasMatched = true;\r\n // }\r\n\r\n // si.unique = !wasMatched;\r\n // });\r\n // }\r\n\r\n const otherPlans = this.selectedPlans.filter(\r\n i => i !== plan);\r\n plan.standardItems.forEach(si => {\r\n let wasMatched = false;\r\n\r\n\r\n otherPlans.forEach(otherPlan => {\r\n const matchedItem = otherPlan.standardItems.filter(\r\n osi => osi.salesItemId === si.salesItemId ||\r\n osi.name === si.name)[0];\r\n if (matchedItem != null) {\r\n wasMatched = true;\r\n }\r\n });\r\n si.unique = !wasMatched;\r\n });\r\n index++;\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (this.plans) {\r\n this.planGrid = PlanGridModel.getPlanGridModel(this.plans);\r\n }\r\n }\r\n}\r\n","module.exports = \"mat-dialog-content {\\r\\n width: 600px;\\r\\n max-width: 100%;\\r\\n}\\r\\n\\r\\n.language-text {\\r\\n font-size: 14px;\\r\\n padding-left: 5px;\\r\\n margin-bottom: 20px;\\r\\n}\\r\\n\\r\\ndiv.sub-heading {\\r\\n font-size: 18px;\\r\\n color: rgba(0,0,0,.5);\\r\\n}\\r\\n\\r\\n@media (max-width: 960px) {\\r\\n h1 {\\r\\n font-size: 24px;\\r\\n }\\r\\n }\"","module.exports = \"\\r\\n
\\r\\n
\\r\\n

{{planDetail.Title}}

\\r\\n\\r\\n
Covered
\\r\\n
\\r\\n\\r\\n
Not Covered
\\r\\n
\\r\\n\\r\\n
Limits
\\r\\n
\\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 {\r\n Component,\r\n NgZone,\r\n Input,\r\n SimpleChanges,\r\n Output,\r\n EventEmitter,\r\n Inject\r\n} from '@angular/core';\r\nimport {MAT_DIALOG_DATA, MatDialog} from '@angular/material';\r\nimport {\r\n RealtorPortalService\r\n} from '../../../services/network/realtor-portal.service';\r\n\r\n\r\n\r\n@Component({\r\n templateUrl: './view-coverage.component.html',\r\n styleUrls: ['./view-coverage.component.css'],\r\n})\r\nexport class ViewCoverageDialogComponent {\r\n planDetail: any;\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any,\r\n public dialog: MatDialog,\r\n private customerPortalService: RealtorPortalService) {\r\n const planItemId: string = data;\r\n\r\n\r\n this.customerPortalService.getContractLanguage(planItemId)\r\n .then(detail => {\r\n this.planDetail = detail;\r\n this.htmlFormatLanguage();\r\n });\r\n }\r\n\r\n private htmlFormatLanguage() {\r\n this.planDetail.CoveredLanguage =\r\n this.replaceAll(this.planDetail.CoveredLanguage, '\\n', '
');\r\n this.planDetail.CoveredLanguage =\r\n this.replaceAll(this.planDetail.CoveredLanguage, '',\r\n '     ');\r\n\r\n this.planDetail.NotCoveredLanguage =\r\n this.replaceAll(this.planDetail.NotCoveredLanguage, '\\n', '
');\r\n this.planDetail.NotCoveredLanguage =\r\n this.replaceAll(this.planDetail.NotCoveredLanguage, '',\r\n '     ');\r\n\r\n this.planDetail.LimitsLanguage =\r\n this.replaceAll(this.planDetail.LimitsLanguage, '\\n', '
');\r\n this.planDetail.LimitsLanguage =\r\n this.replaceAll(this.planDetail.LimitsLanguage, '',\r\n '     ');\r\n }\r\n\r\n private escapeRegExp(str) {\r\n return str.replace(/([.*+?^=!:${}()|\\[\\]\\/\\\\])/g, '\\\\$1');\r\n }\r\n\r\n private replaceAll(str, find, replace) {\r\n if (str == null) {\r\n str = '';\r\n }\r\n return str.replace(new RegExp(this.escapeRegExp(find), 'g'), replace);\r\n }\r\n}\r\n","module.exports = \"h1 {\\r\\n color: #fff;\\r\\n}\\r\\np {\\r\\n color: #fff;\\r\\n}\\r\\ni {\\r\\n font-size: 42px;\\r\\n}\"","module.exports = \"
\\r\\n
\\r\\n check_circle\\r\\n
\\r\\n
\\r\\n

Success

\\r\\n

{{data}}

\\r\\n
\\r\\n
\\r\\n\"","import { Component, Inject } from '@angular/core';\r\nimport { MAT_SNACK_BAR_DATA } from '@angular/material';\r\n\r\n@Component({\r\n templateUrl: './toast-success.component.html',\r\n styleUrls: ['./toast-success.component.css']\r\n })\r\nexport class ToastSuccessComponent {\r\n constructor(@Inject(MAT_SNACK_BAR_DATA) public data: any) {}\r\n}\r\n","\r\nimport { Observable } from 'rxjs/rx';\r\nimport { MatDialogRef, MatDialog, MatDialogConfig } from '@angular/material';\r\nimport { Injectable, ViewContainerRef } from '@angular/core';\r\nimport { ConfirmDialogComponent } from '../parts/dialog/confirm-dialog/confirm-dialog.component';\r\nimport { AlertDialogComponent } from '../parts/dialog/alert-dialog/alert-dialog.component';\r\n\r\n@Injectable()\r\nexport class DialogsService {\r\n\r\n constructor(private dialog: MatDialog) { }\r\n\r\n public confirm(title: string, message: string, viewContainerRef: ViewContainerRef = null): Observable {\r\n\r\n let dialogRef: MatDialogRef;\r\n const config = new MatDialogConfig();\r\n config.viewContainerRef = viewContainerRef;\r\n\r\n dialogRef = this.dialog.open(ConfirmDialogComponent, config);\r\n\r\n dialogRef.componentInstance.title = title;\r\n dialogRef.componentInstance.message = message;\r\n\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n public alert(title: string, message: string, viewContainerRef: ViewContainerRef = null): Observable {\r\n\r\n let dialogRef: MatDialogRef;\r\n const config = new MatDialogConfig();\r\n config.viewContainerRef = viewContainerRef;\r\n\r\n dialogRef = this.dialog.open(AlertDialogComponent, config);\r\n\r\n dialogRef.componentInstance.title = title;\r\n dialogRef.componentInstance.message = message;\r\n\r\n return dialogRef.afterClosed();\r\n\r\n }\r\n}\r\n","/*tslint:disable:no-bitwise */\r\nimport {Component, NgZone, Injectable} from '@angular/core';\r\nimport {\r\n Http,\r\n Response,\r\n RequestOptionsArgs,\r\n RequestOptions,\r\n Headers\r\n} from '@angular/http';\r\nimport { map } from 'rxjs/operators';\r\nimport {UtilitiesService} from '../utilities.service';\r\nimport { Observable } from 'rxjs';\r\nimport 'rxjs/add/operator/map';\r\nimport { RealtorPortalService } from './realtor-portal.service';\r\n\r\n@Injectable()\r\nexport class ApiAccessService {\r\n static authenicationInformation: any;\r\n static fromFederatedLogin = false;\r\n\r\n private static Base64 = {\r\n _keyStr:\r\n 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\r\n encode: function(input) {\r\n let output = '';\r\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\r\n let i = 0;\r\n input = ApiAccessService.Base64._utf8_encode(input);\r\n while (i < input.length) {\r\n chr1 = input.charCodeAt(i++);\r\n chr2 = input.charCodeAt(i++);\r\n chr3 = input.charCodeAt(i++);\r\n enc1 = chr1 >> 2;\r\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\r\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\r\n enc4 = chr3 & 63;\r\n if (isNaN(chr2)) {\r\n enc3 = enc4 = 64;\r\n } else if (isNaN(chr3)) {\r\n enc4 = 64;\r\n }\r\n output = output + this._keyStr.charAt(enc1) +\r\n this._keyStr.charAt(enc2) + this._keyStr.charAt(enc3) +\r\n this._keyStr.charAt(enc4);\r\n }\r\n return output;\r\n },\r\n _utf8_encode: function(string) {\r\n string = string.replace(/\\r\\n/g, '\\n');\r\n let utftext = '';\r\n for (let n = 0; n < string.length; n++) {\r\n const c = string.charCodeAt(n);\r\n if (c < 128) {\r\n utftext += String.fromCharCode(c);\r\n } else if ((c > 127) && (c < 2048)) {\r\n utftext += String.fromCharCode((c >> 6) | 192);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n } else {\r\n utftext += String.fromCharCode((c >> 12) | 224);\r\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n }\r\n return utftext;\r\n },\r\n };\r\n\r\n static clearLoginInfo() { localStorage.removeItem('login-info'); }\r\n\r\n static get isLoggedIn() {\r\n try {\r\n if (localStorage.getItem('login-info')) {\r\n const loginInfo = JSON.parse(localStorage.getItem('login-info'));\r\n if (loginInfo && loginInfo.userName && loginInfo.password) {\r\n return true;\r\n }\r\n }\r\n } catch (e) {\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public static get userName() {\r\n try {\r\n if (localStorage.getItem('login-info')) {\r\n const loginInfo = JSON.parse(localStorage.getItem('login-info'));\r\n if (loginInfo && loginInfo.userName && loginInfo.password) {\r\n return loginInfo.userName;\r\n }\r\n }\r\n } catch (e) {\r\n }\r\n\r\n return null\r\n }\r\n\r\n public static get password() {\r\n try {\r\n if (localStorage.getItem('login-info')) {\r\n const loginInfo = JSON.parse(localStorage.getItem('login-info'));\r\n if (loginInfo && loginInfo.userName && loginInfo.password) {\r\n return loginInfo.password;\r\n }\r\n }\r\n } catch (e) {\r\n }\r\n\r\n return null\r\n }\r\n\r\n static setLoginInfo(userName: string, password: string) {\r\n localStorage.setItem(\r\n 'login-info', JSON.stringify({userName: userName, password: password}));\r\n }\r\n\r\n constructor(private http: Http) {}\r\n\r\n private serializeDate(date: Date): string {\r\n let hour = date.getHours().toString();\r\n if (hour.length === 1) {\r\n hour = '0' + hour;\r\n }\r\n let min = date.getMinutes().toString();\r\n if (min.length === 1) {\r\n min = '0' + min;\r\n }\r\n let sec = date.getSeconds().toString();\r\n if (sec.length === 1) {\r\n sec = '0' + sec;\r\n }\r\n\r\n return date.getFullYear() + '-' + (date.getMonth() + 1) + '-' +\r\n date.getDate() + ' ' + hour + ':' + min + ':' + sec + '.000';\r\n }\r\n\r\n\r\n\r\n private getRequestOptionsArgs(): RequestOptions {\r\n const headers = new Headers();\r\n if (localStorage.getItem('login-info')) {\r\n const loginInfo = JSON.parse(localStorage.getItem('login-info'));\r\n headers.append('Authorization',\r\n 'Basic ' +\r\n ApiAccessService.Base64.encode(\r\n loginInfo.userName + ':' + loginInfo.password));\r\n } else if (sessionStorage.getItem('login-info')) {\r\n const loginInfo = JSON.parse(sessionStorage.getItem('login-info'));\r\n headers.append('Authorization',\r\n 'Basic ' +\r\n ApiAccessService.Base64.encode(\r\n loginInfo.userName + ':' + loginInfo.password));\r\n }\r\n return new RequestOptions({headers: headers});\r\n }\r\n\r\n delete (parameters: ApiAccessParameters): Promise {\r\n return new Promise((resolve, reject) => {\r\n let url = UtilitiesService.baseAPIUrl + parameters.url;\r\n if (parameters.parameters) {\r\n let first = true;\r\n for (const property in parameters.parameters) {\r\n if (parameters.parameters.hasOwnProperty(property)) {\r\n url += first ? '?' : '&';\r\n first = false;\r\n if (parameters.parameters[property] &&\r\n parameters.parameters[property].toUTCString) {\r\n // Remove time zone information from the date before sending as a\r\n // query string parameter\r\n url += property + '=' + encodeURIComponent(this.serializeDate(\r\n parameters.parameters[property]));\r\n } else {\r\n url += property + '=' +\r\n encodeURIComponent(parameters.parameters[property]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.http.delete(url, this.getRequestOptionsArgs())\r\n .map(res => res.text() ? res.json() : {})\r\n .subscribe(\r\n results => resolve(results),\r\n error => this.logError(error, 'DELETE', parameters, reject));\r\n });\r\n }\r\n\r\n getByUrl(url: string, parameters: any = null): Promise {\r\n return this.get(new ApiAccessParameters(url, parameters));\r\n }\r\n\r\n undoDelete(url: string): Promise {\r\n return this.patch(new ApiAccessParameters(url, {deleteddate: null}));\r\n }\r\n\r\n get(parameters: ApiAccessParameters): Promise {\r\n return new Promise((resolve, reject) => {\r\n let url = '';\r\n let isApiEndpoint = true;\r\n if (parameters.url.toLowerCase().indexOf('https://') === -1) {\r\n url = UtilitiesService.baseAPIUrl + parameters.url;\r\n } else {\r\n url = parameters.url;\r\n isApiEndpoint = false;\r\n }\r\n if (parameters.parameters) {\r\n let first = true;\r\n for (const property in parameters.parameters) {\r\n if (parameters.parameters.hasOwnProperty(property)) {\r\n url += first ? '?' : '&';\r\n first = false;\r\n if (parameters.parameters[property] &&\r\n parameters.parameters[property].toUTCString) {\r\n // Remove time zone information from the date before sending as a\r\n // query string parameter\r\n url += property + '=' + encodeURIComponent(this.serializeDate(\r\n parameters.parameters[property]));\r\n } else {\r\n url += property + '=' +\r\n encodeURIComponent(parameters.parameters[property]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.http.get(url, isApiEndpoint ? this.getRequestOptionsArgs() : null)\r\n .map(res => res.json())\r\n .subscribe(results => {\r\n this.mapResults(results, parameters, resolve);\r\n }, error => this.logError(error, 'GET', parameters, reject));\r\n });\r\n }\r\n\r\n private logError(error, method: string, parameters: ApiAccessParameters, reject) {\r\n if (!parameters.surpressApiError) {\r\n // TODO: log this somehow\r\n }\r\n if (reject) {\r\n reject(error);\r\n }\r\n }\r\n\r\n convertToModelType(typeCreator: () => any, source: any) {\r\n const dateExpression = /^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?$/;\r\n const shapedResult = typeCreator();\r\n for (const key in source) {\r\n if (dateExpression.test(source[key])) {\r\n shapedResult[key] = new Date(source[key]);\r\n } else {\r\n shapedResult[key] = source[key];\r\n }\r\n }\r\n\r\n return shapedResult;\r\n }\r\n\r\n private mapResults(results, parameters: ApiAccessParameters, resolve) {\r\n if (!results) {\r\n resolve(results);\r\n return;\r\n }\r\n\r\n if (parameters.typeCreator == null) {\r\n resolve(results);\r\n } else {\r\n // We want to convert this data from the wire into the actual types the\r\n // client is expecting.\r\n if (results.forEach) { // It's an array\r\n const shapedResults = [];\r\n results.forEach(item => {\r\n const shapedResult =\r\n this.convertToModelType(parameters.typeCreator, item);\r\n shapedResults.push(shapedResult);\r\n });\r\n resolve(shapedResults);\r\n } else {\r\n const shapedResult =\r\n this.convertToModelType(parameters.typeCreator, results);\r\n resolve(shapedResult);\r\n }\r\n }\r\n }\r\n\r\n getHtml(parameters: ApiAccessParameters): Promise {\r\n return new Promise((resolve, reject) => {\r\n let url = '';\r\n\r\n if (parameters.url.indexOf('http://') === -1 &&\r\n parameters.url.indexOf('https://') === -1) {\r\n url = UtilitiesService.baseAPIUrl + parameters.url;\r\n } else {\r\n url = parameters.url;\r\n }\r\n\r\n if (parameters.parameters) {\r\n let first = true;\r\n for (const property in parameters.parameters) {\r\n if (parameters.parameters.hasOwnProperty(property)) {\r\n url += first ? '?' : '&';\r\n first = false;\r\n url += property + '=' +\r\n encodeURIComponent(parameters.parameters[property]);\r\n }\r\n }\r\n }\r\n\r\n this.http.get(url, this.getRequestOptionsArgs())\r\n .map(res => res.text())\r\n .subscribe(results => { resolve(results); },\r\n error => this.logError(error, 'GET', parameters, reject));\r\n });\r\n }\r\n\r\n post(parameters: ApiAccessParameters): Promise {\r\n const url = UtilitiesService.baseAPIUrl + parameters.url;\r\n\r\n return new Promise((resolve, reject) => {\r\n const objectToPost = parameters.parameters;\r\n\r\n if (objectToPost.hasOwnProperty('length')) {\r\n objectToPost.forEach(obj => this.initializeCommonProperties(obj));\r\n } else {\r\n this.initializeCommonProperties(objectToPost);\r\n }\r\n\r\n this.http.post(url, objectToPost, this.getRequestOptionsArgs())\r\n .map(res => res.text() ? res.json() : null)\r\n .subscribe(results => {\r\n this.mapResults(results, parameters, resolve);\r\n }, error => this.logError(error, 'POST', parameters, reject));\r\n });\r\n }\r\n\r\n private initializeCommonProperties(objectToPost: any) {\r\n if (objectToPost.hasOwnProperty('createdDate') &&\r\n !objectToPost.createdDate) {\r\n objectToPost.createdDate = new Date();\r\n }\r\n\r\n if (objectToPost.hasOwnProperty('id') && !objectToPost.id) {\r\n objectToPost.id = UtilitiesService.newid();\r\n }\r\n\r\n if (objectToPost.hasOwnProperty('createdById') &&\r\n !objectToPost.createdById) {\r\n objectToPost.createdById = ApiAccessService.authenicationInformation.id;\r\n }\r\n\r\n // Recursively search the object tree for properties to populate\r\n for (const prop in objectToPost) {\r\n if (objectToPost.hasOwnProperty(prop) && objectToPost[prop] != null &&\r\n typeof objectToPost[prop] === 'object') {\r\n this.initializeCommonProperties(objectToPost[prop]);\r\n } else if (objectToPost[prop] == null) {\r\n delete objectToPost[prop];\r\n }\r\n }\r\n }\r\n\r\n patch(parameters: ApiAccessParameters): Promise {\r\n const url = UtilitiesService.baseAPIUrl + parameters.url;\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.patch(url, parameters.parameters, this.getRequestOptionsArgs())\r\n .map(res => res.text() ? res.json() : null)\r\n .subscribe(results => {\r\n this.mapResults(results, parameters, resolve);\r\n }, error => this.logError(error, 'PATCH', parameters, reject));\r\n });\r\n }\r\n\r\n\r\n put(parameters: ApiAccessParameters): Promise {\r\n const url = UtilitiesService.baseAPIUrl + parameters.url;\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.put(url, parameters.parameters, this.getRequestOptionsArgs())\r\n .subscribe(results => { resolve(results); });\r\n });\r\n }\r\n}\r\n\r\nexport class ApiAccessParameters {\r\n constructor(public url = '', public parameters: any = null,\r\n public typeCreator: () => any = null,\r\n public surpressApiError = false) {}\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {ApiAccessService, ApiAccessParameters} from './api-access.service';\r\nimport {NewPolicy, PropertySummary} from '../../models/new-policy';\r\nimport {Address} from '../../models/address';\r\nimport {OrderSummary} from '../../models/order-summary';\r\nimport {WorkOrderSummary} from '../../models/work-order-summary';\r\nimport {InspectionUploadArgs} from '../../models/inspection-upload';\r\nimport {NewEntity} from '../../models/new-entity';\r\nimport {UtilitiesService} from '../utilities.service';\r\n\r\n@Injectable()\r\nexport class RealtorPortalService {\r\n private ogTenantId: string = \"5EA8C224-B3FF-4F11-B09F-5EC0C65266EC\";\r\n private lmTenantId: string = \"\";\r\n private sidebarInfo;\r\n constructor(private apiAccess: ApiAccessService) {}\r\n\r\n getCoverageLength() {\r\n return 1;\r\n }\r\n\r\n saveNewPolicy(newPolicy: NewPolicy) {\r\n // throw new Error( 'Not Implemented');\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('WebQuote/convert', newPolicy));\r\n }\r\n\r\n authenticate(userName: string, password: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'WebUser/Authenticate', {userName: userName, password: password}));\r\n }\r\n\r\n authenticateUser(webUserArgs: WebUserCredentials) {\r\n return this.apiAccess.post(new ApiAccessParameters(\r\n 'WebUser/AuthenticateUser',\r\n { UserName: webUserArgs.UserName, Password: webUserArgs.Password }));\r\n }\r\n\r\n getPromotion(code: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('CouponCode', { code: code, tenantId: this.ogTenantId}));\r\n }\r\n\r\n getMarketStatesAndAreas() {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('MarketState/states-and-areas', { tenantId: this.ogTenantId}));\r\n }\r\n\r\n validateAddress(address: PropertySummary) {\r\n const addressObj = new Address();\r\n addressObj.Address1 = address.Address;\r\n addressObj.City = address.City;\r\n addressObj.Country = address.Country;\r\n addressObj.DwellingType = address.DwellingType;\r\n addressObj.SquareFootage = address.SquareFootage;\r\n addressObj.State = address.State;\r\n addressObj.YearBuilt = address.YearBuilt;\r\n addressObj.Zip = address.Zip;\r\n\r\n\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('/address/validate', addressObj));\r\n }\r\n\r\n saveWebUser(webUser) {\r\n return this.apiAccess.post(new ApiAccessParameters('WebUser', webUser));\r\n }\r\n\r\n saveWebQuote(quote: NewPolicy) {\r\n return this.apiAccess.post(new ApiAccessParameters('WebQuote', quote));\r\n }\r\n\r\n\r\n\r\n getWebUserIdExists(userName: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('WebUser/Exists', {userName: userName}));\r\n }\r\n\r\n\r\n getZipCodeInfo(zipCode: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'https://maps.googleapis.com/maps/api/geocode/json?address=' + zipCode +\r\n '&sensor=true&key=AIzaSyBqGIEvh3555HP37ZIc0qlfxI2EwDQibC4'));\r\n }\r\n\r\n\r\n getWebUserInfo(): Promise {\r\n return this.apiAccess.get(new ApiAccessParameters('WebUser/GetUserInfo'));\r\n }\r\n\r\n getWebUserEntityRecord(): Promise {\r\n return this.apiAccess.get(new ApiAccessParameters('WebUser/entity'));\r\n }\r\n\r\n unlinkEntities(): Promise {\r\n return this.apiAccess.patch(\r\n new ApiAccessParameters('WebUser/unlink-entities'));\r\n }\r\n\r\n changePassword(oldPassword: string, password: string,\r\n passwordConfirm: string) {\r\n return this.apiAccess.patch(\r\n new ApiAccessParameters('WebUser/ChangePassword', {\r\n OldPassword: oldPassword,\r\n NewPassword: password,\r\n NewPasswordConfirm: passwordConfirm\r\n }));\r\n }\r\n\r\n sendResetRequest(email: string) {\r\n return this.apiAccess.patch(\r\n new ApiAccessParameters('/WebUser/ResetPassword', {Email: email}));\r\n }\r\n\r\n getContractLanguage(salesItemCoverageId: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('ContractLanguage/BySaleItemCoverageId',\r\n {salesItemCoverageId: salesItemCoverageId}));\r\n }\r\n\r\n getQuotes() { return this.apiAccess.get(new ApiAccessParameters('Quotes')); }\r\n\r\n getOrders() {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'RealEstateOrder', null, () => new OrderSummary()));\r\n }\r\n\r\n getMarketStates() {\r\n return this.apiAccess.get(new ApiAccessParameters('MarketState', { tenantId: this.ogTenantId} ));\r\n }\r\n\r\n getOrderDetail(orderId) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('RealEstateOrder/' + orderId + '/Detail'));\r\n }\r\n\r\n getPolicySummaryById(id: string) {\r\n return this.apiAccess.get(new ApiAccessParameters('policy', {id: id}));\r\n }\r\n\r\n updateEstimatedClosingDate(orderId: string, estimatedClosingDate: Date) {\r\n return this.apiAccess.patch(new ApiAccessParameters(\r\n 'RealEstateOrder/' + orderId + '/update-estimated-closing-date',\r\n {estimatedClosingDate: estimatedClosingDate}));\r\n }\r\n\r\n getClaimHistoryByPolicyId(policyId: string, endDate: Date = null, take = 5) {\r\n // ClaimHistory/by-policy-number\r\n if (!endDate) {\r\n endDate = new Date();\r\n }\r\n\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('ClaimHistory/by-policy-id',\r\n {id: policyId, endDate: endDate, take: take},\r\n () => new WorkOrderSummary()));\r\n }\r\n\r\n uploadInspection(inspectionUpload: InspectionUploadArgs) {\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('policy/upload-inspection', inspectionUpload));\r\n }\r\n\r\n getPlanSelection(address: PropertySummary, sellersCoverage: boolean) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('PlanSelection/Realestate', {\r\n address: address.Address,\r\n city: address.City,\r\n state: address.State,\r\n zip: address.Zip,\r\n dwellingType: address.DwellingType,\r\n squareFootage: address.SquareFootage,\r\n sellersCoverage: sellersCoverage,\r\n yearBuilt: address.YearBuilt,\r\n tenantId: this.ogTenantId\r\n }));\r\n }\r\n\r\n findBranchByNameAndCity(name: string, city: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'RealEstateBranch/find/by-name-and-city', {name: name, city: city}));\r\n }\r\n\r\n findTitleCompanyByNameAndCity(name: string, city: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'TitleCompany/find/by-name-and-city', {name: name, city: city}));\r\n }\r\n\r\n findTitleCompanyByPhone(phoneNumber: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'TitleCompany/find/by-phone', {phoneNumber: phoneNumber}));\r\n }\r\n\r\n findTitleCompanyById(id: string) {\r\n return this.apiAccess.get(new ApiAccessParameters('TitleCompany/' + id));\r\n }\r\n\r\n getPrivateLabelDocuments() {\r\n return this.apiAccess.get(new ApiAccessParameters('PrivateLabelDocument'));\r\n }\r\n\r\n findRealEstateBranchById(id: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('RealEstateBranch/' + id));\r\n }\r\n\r\n findBranchByPhone(phone: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'RealEstateBranch/find/by-phone', {phone: phone}));\r\n }\r\n\r\n findAgentByName(firstName: string, lastName: string, licenseNumber: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('RealEstateAgent/find-by-name', {\r\n firstName: firstName,\r\n lastName: lastName,\r\n licenseNumber: licenseNumber,\r\n }));\r\n }\r\n\r\n\r\n findAgentByPhone(phoneNumber: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('RealEstateAgent/find-by-phone', {\r\n phone: phoneNumber,\r\n tenantId: this.ogTenantId\r\n }));\r\n }\r\n\r\n findEscrowOfficerByName(firstName: string, lastName: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('EscrowOfficer/find/by-name', {\r\n firstName: firstName,\r\n lastName: lastName,\r\n }));\r\n }\r\n findEscrowOfficerByPhone(phoneNumber: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('EscrowOfficer/find-by-phone', {\r\n phoneNumber: phoneNumber,\r\n tenant: this.ogTenantId\r\n }));\r\n }\r\n findRealEstateTransactionCoordinatorByPhone(phoneNumber: string) {\r\n return this.apiAccess.get(new ApiAccessParameters('RealEstateCoordinator/find-by-phone', {\r\n phoneNumber: phoneNumber,\r\n tenantId: this.ogTenantId\r\n }));\r\n }\r\n\r\n findClosingOfficerCoordinatorByPhone(phoneNumber: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('ClosingOfficerCoordinator/find-by-phone', { phoneNumber: phoneNumber, tenant: this.ogTenantId }));\r\n }\r\n getAgentsForBranch(branchId: string) {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('RealEstateBranch/' + branchId + '/agents'));\r\n }\r\n\r\n resendOrderConfirmation(webPolicyId: string, email: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'WebQuote/' + webPolicyId + '/resend-confirmation', {email: email}));\r\n }\r\n\r\n attachEntityToWebUser(entityId: string) {\r\n return this.apiAccess.patch(\r\n new ApiAccessParameters('WebUser/attach-entity/' + entityId));\r\n }\r\n\r\n saveNewBranch(branch: NewEntity) {\r\n if (!branch.Id) {\r\n branch.Id = UtilitiesService.newid();\r\n }\r\n\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('RealEstateBranch', branch));\r\n }\r\n\r\n saveNewTitleCompany(titleCompany: NewEntity) {\r\n if (!titleCompany.Id) {\r\n titleCompany.Id = UtilitiesService.newid();\r\n }\r\n\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('TitleCompany', titleCompany));\r\n }\r\n\r\n saveAgent(agent: NewEntity) {\r\n if (!agent.Id) {\r\n agent.Id = UtilitiesService.newid();\r\n }\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('RealEstateAgent', agent));\r\n }\r\n\r\n saveCoordinator(coordinator: NewEntity) {\r\n if (!coordinator.Id) {\r\n coordinator.Id = UtilitiesService.newid();\r\n }\r\n\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('RealEstateCoordinator', coordinator));\r\n }\r\n\r\n saveClosingOfficer(closingOfficer: NewEntity) {\r\n if (!closingOfficer.Id) {\r\n closingOfficer.Id = UtilitiesService.newid();\r\n }\r\n\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('EscrowOfficer', closingOfficer));\r\n }\r\n\r\n saveClosingOfficerCoordinator(closingOfficerCoordinator: NewEntity) {\r\n if (!closingOfficerCoordinator.Id) {\r\n closingOfficerCoordinator.Id = UtilitiesService.newid();\r\n }\r\n\r\n return this.apiAccess.post(new ApiAccessParameters(\r\n 'ClosingOfficerCoordinator', closingOfficerCoordinator));\r\n }\r\n\r\n getTotalSavingsByTrade() {\r\n return this.apiAccess.get(\r\n new ApiAccessParameters('real-estate/total-savings-by-trade'));\r\n }\r\n\r\n getWebUserExInfo() {\r\n return this.apiAccess.get(new ApiAccessParameters('WebUser/agent-info'));\r\n }\r\n\r\n saveWebUserExInfo(agent: any) {\r\n return this.apiAccess.post(\r\n new ApiAccessParameters('WebUser/agent-info', agent));\r\n }\r\n\r\n clearSideBarInfo() {\r\n this.sidebarInfo = null;\r\n }\r\n\r\n getSideBarInfo(clear = false): Promise {\r\n if (clear) {\r\n this.sidebarInfo = null;\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n if (this.sidebarInfo) {\r\n resolve(this.sidebarInfo);\r\n } else {\r\n this.apiAccess.get(new ApiAccessParameters(\r\n 'real-estate/get-sidebar-info'))\r\n .then(sideBarInfo => {\r\n this.sidebarInfo = sideBarInfo;\r\n resolve(this.sidebarInfo);\r\n });\r\n }\r\n });\r\n }\r\n\r\n getEscrowOfficersForTitleCompany(titleCompanyId: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'TitleCompany/' + titleCompanyId + '/escrow-officers'));\r\n }\r\n\r\n deleteQuote(quoteId: string) {\r\n return this.apiAccess.delete(\r\n new ApiAccessParameters('WebQuote/' + quoteId));\r\n }\r\n\r\n resendQuote(quoteId: string, sendTo: string) {\r\n return this.apiAccess.get(new ApiAccessParameters(\r\n 'WebQuote/' + quoteId + '/resend', {email: sendTo}));\r\n }\r\n\r\n getWebQuote(quoteId: string) {\r\n return this.apiAccess.get(new ApiAccessParameters('WebQuote/' + quoteId));\r\n }\r\n\r\n getWarrantyLinkUrl() {\r\n return UtilitiesService.baseAPIUrl + 'RealEstateOrder/WarrantyLink';\r\n }\r\n\r\n}\r\n\r\ninterface WebUserCredentials {\r\n UserName: string;\r\n Password: string;\r\n}\r\n","/*tslint:disable:no-bitwise */\r\nimport {Injectable} from '@angular/core';\r\ndeclare var jQuery: any;\r\ndeclare var $: any;\r\n\r\n@Injectable()\r\nexport class UtilitiesService {\r\n static useTestEndpoint = false;\r\n public static get baseAPIUrl(): string {\r\n const nav: any = navigator;\r\n\r\n if (window.location.hostname === 'localhost' && !(window as any).isIOS && (!nav || !nav.camera)) {\r\n return 'http://localhost:5529/api/';\r\n } else if (UtilitiesService.useTestEndpoint ||\r\n window.location.hostname.toLowerCase().indexOf(\r\n 'azurewebsites.net') > -1) {\r\n return 'https://dev-api.oneguard.net/api/';\r\n } else if (window.location.hostname.toLowerCase().indexOf(\r\n 'homeowner.oneguardhomewarranty.com') > -1) {\r\n return 'https://api.oneguard.net/api/';\r\n }\r\n\r\n return 'https://api.oneguard.net/api/';\r\n }\r\n\r\n public static get isLocalHost(): boolean {\r\n return window.location.hostname === 'localhost';\r\n }\r\n\r\n public static get isCustomerApp(): boolean {\r\n const nav: any = navigator;\r\n\r\n return nav.camera != null;\r\n }\r\n\r\n public static newid() {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\r\n const r = Math.random() * 16 | 0, v = c === 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n\r\n public static isCreditCardNumberValid(creditCardNumber) {\r\n let regex = new RegExp('^[0-9]{16}$');\r\n if (!regex.test(creditCardNumber)) {\r\n regex = new RegExp('^[0-9]{15}$');\r\n if (!regex.test(creditCardNumber)) {\r\n return false;\r\n }\r\n }\r\n\r\n const lunCheckResult = UtilitiesService.luhnCheck(creditCardNumber);\r\n\r\n return lunCheckResult;\r\n }\r\n\r\n public static isEmailValid(emailToTest: string): boolean {\r\n const re =\r\n /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n\r\n return re.test(String(emailToTest).toLowerCase());\r\n }\r\n\r\n public static isValidPhoneNumber(phoneNumberToTest: string): boolean {\r\n const re = /^[\\+]?[(]?[0-9]{3}[)]?[-\\s\\.]?[0-9]{3}[-\\s\\.]?[0-9]{4,6}$/im;\r\n\r\n return re.test(String(phoneNumberToTest).toLowerCase());\r\n }\r\n\r\n private static luhnCheck(val) {\r\n // let sum = 0;\r\n // for (let i = 0; i < val.length; i++) {\r\n // let intVal = parseInt(val.substr(i, 1), 10);\r\n // if (i % 2 === 0) {\r\n // intVal *= 2;\r\n // if (intVal > 9) {\r\n // intVal = 1 + (intVal % 10);\r\n // }\r\n // }\r\n // sum += intVal;\r\n // }\r\n // return (sum % 10) === 0;\r\n\r\n // accept only digits, dashes or spaces\r\n if (/[^0-9-\\s]+/.test(val)) return false;\r\n\r\n // The Luhn Algorithm. It's so pretty.\r\n var nCheck = 0, nDigit = 0, bEven = false;\r\n const value = val.replace(/\\D/g, '');\r\n\r\n for (let n = val.length - 1; n >= 0; n--) {\r\n var cDigit = val.charAt(n), nDigit = parseInt(cDigit, 10);\r\n\r\n if (bEven) {\r\n if ((nDigit *= 2) > 9) nDigit -= 9;\r\n }\r\n\r\n nCheck += nDigit;\r\n bEven = !bEven;\r\n }\r\n\r\n return (nCheck % 10) == 0;\r\n }\r\n\r\n public static setupDocumentForAnimation() {\r\n $.fn.visible = function(partial) {\r\n\r\n var $t = $(this), $w = $(window), viewTop = $w.scrollTop(),\r\n viewBottom = viewTop + $w.height(), _top = $t.offset().top,\r\n _bottom = _top + $t.height(),\r\n compareTop = partial === true ? _bottom : _top,\r\n compareBottom = partial === true ? _top : _bottom;\r\n\r\n return ((compareBottom <= viewBottom) && (compareTop >= viewTop));\r\n\r\n };\r\n\r\n var win = $(window);\r\n\r\n var allMods = $(\".animated\");\r\n\r\n allMods.each(function(i, el) {\r\n var el = $(el);\r\n if (el.visible(true)) {\r\n el.addClass(\"already-visible\");\r\n }\r\n });\r\n\r\n win.scroll(function(event) {\r\n var allMods = $(\".animated\");\r\n allMods.each(function(i, el) {\r\n var el = $(el);\r\n if (el.visible(true)) {\r\n el.addClass(\"come-in\");\r\n }\r\n });\r\n\r\n });\r\n }\r\n\r\n constructor() {}\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\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\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.log(err));\r\n"],"sourceRoot":""}