-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.bundle.js.map
1 lines (1 loc) · 59.6 KB
/
main.bundle.js.map
1
{"version":3,"sources":["./src/$_lazy_route_resource lazy","./src/app/app.component.css","./src/app/app.component.html","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/components/add-client/add-client.component.css","./src/app/components/add-client/add-client.component.html","./src/app/components/add-client/add-client.component.ts","./src/app/components/client-details/client-details.component.css","./src/app/components/client-details/client-details.component.html","./src/app/components/client-details/client-details.component.ts","./src/app/components/clients/clients.component.css","./src/app/components/clients/clients.component.html","./src/app/components/clients/clients.component.ts","./src/app/components/dashboard/dashboard.component.css","./src/app/components/dashboard/dashboard.component.html","./src/app/components/dashboard/dashboard.component.ts","./src/app/components/edit-client/edit-client.component.css","./src/app/components/edit-client/edit-client.component.html","./src/app/components/edit-client/edit-client.component.ts","./src/app/components/login/login.component.css","./src/app/components/login/login.component.html","./src/app/components/login/login.component.ts","./src/app/components/navbar/navbar.component.css","./src/app/components/navbar/navbar.component.html","./src/app/components/navbar/navbar.component.ts","./src/app/components/page-not-found/page-not-found.component.css","./src/app/components/page-not-found/page-not-found.component.html","./src/app/components/page-not-found/page-not-found.component.ts","./src/app/components/register/register.component.css","./src/app/components/register/register.component.html","./src/app/components/register/register.component.ts","./src/app/components/settings/settings.component.css","./src/app/components/settings/settings.component.html","./src/app/components/settings/settings.component.ts","./src/app/components/sidebar/sidebar.component.css","./src/app/components/sidebar/sidebar.component.html","./src/app/components/sidebar/sidebar.component.ts","./src/app/guards/auth.guards.ts","./src/app/guards/register.guard.ts","./src/app/services/auth.service.ts","./src/app/services/client.service.ts","./src/app/services/settings.service.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main.bundle.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncatched exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/$$_lazy_route_resource lazy\n// module id = ./src/$$_lazy_route_resource lazy recursive\n// module chunks = main","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/app.component.css\n// module id = ./src/app/app.component.css\n// module chunks = main","module.exports = \"<app-navbar></app-navbar>\\n<div class=\\\"container\\\">\\n <flash-messages></flash-messages>\\n <router-outlet></router-outlet>\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/app.component.html\n// module id = ./src/app/app.component.html\n// module chunks = main","import { Component } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent {\n title = 'app';\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.component.ts","import { BrowserModule } from \"@angular/platform-browser\";\nimport { NgModule } from \"@angular/core\";\nimport { RouterModule, Routes } from \"@angular/router\";\nimport { HttpClientModule } from \"@angular/common/http\";\nimport { HttpModule } from \"@angular/http\";\nimport { FormsModule} from '@angular/forms';\n\n//flash messages\nimport { FlashMessagesModule } from \"angular2-flash-messages\";\n\n//AngularFire Imports\nimport { AngularFireModule } from \"angularfire2\";\nimport { AngularFireDatabase} from \"angularfire2/database\";\nimport { AngularFireAuth } from \"angularfire2/auth\";\nimport { AngularFirestore } from \"angularfire2/firestore\";\n\n//Component imports\nimport { AppComponent } from \"./app.component\";\nimport { DashboardComponent } from \"./components/dashboard/dashboard.component\";\nimport { ClientsComponent } from \"./components/clients/clients.component\";\nimport { ClientDetailsComponent } from \"./components/client-details/client-details.component\";\nimport { AddClientComponent } from \"./components/add-client/add-client.component\";\nimport { EditClientComponent } from \"./components/edit-client/edit-client.component\";\nimport { NavbarComponent } from \"./components/navbar/navbar.component\";\nimport { SidebarComponent } from \"./components/sidebar/sidebar.component\";\nimport { LoginComponent } from \"./components/login/login.component\";\nimport { RegisterComponent } from \"./components/register/register.component\";\nimport { SettingsComponent } from \"./components/settings/settings.component\";\nimport { PageNotFoundComponent } from \"./components/page-not-found/page-not-found.component\";\n\n//Service Imports\nimport { ClientService } from \"./services/client.service\";\nimport { Path } from \"@firebase/database/dist/esm/src/core/util/Path\";\nimport { AuthService } from \"./services/auth.service\";\nimport { SettingsService } from \"./services/settings.service\";\n\n\n//gurards\nimport { AuthGuard } from \"./guards/auth.guards\";\nimport { RegisterGuard } from './guards/register.guard'\n\nconst appRoutes: Routes = [\n { path: '', component: DashboardComponent, canActivate:[AuthGuard] },\n { path: 'register', component: RegisterComponent, canActivate:[RegisterGuard] },\n { path: 'login', component: LoginComponent },\n { path: 'add-client', component:AddClientComponent, canActivate:[AuthGuard]},\n { path: 'client/:id', component:ClientDetailsComponent, canActivate:[AuthGuard]},\n { path: 'edit-client/:id', component:EditClientComponent, canActivate:[AuthGuard]},\n { path: 'settings', component:SettingsComponent, canActivate:[AuthGuard]},\n { path: '**', component:PageNotFoundComponent}\n];\n\nexport const firebaseConfig = {\n apiKey: \"AIzaSyCi570V1ngrXMUkboK_ZFOXFyEDg1h_laY\",\n authDomain: \"clientpanel-b3cc1.firebaseapp.com\",\n databaseURL: \"https://clientpanel-b3cc1.firebaseio.com\",\n projectId: \"clientpanel-b3cc1\",\n storageBucket: \"clientpanel-b3cc1.appspot.com\",\n messagingSenderId: \"506764353374\"\n};\n\n@NgModule({\n declarations: [\n AppComponent,\n DashboardComponent,\n ClientsComponent,\n ClientDetailsComponent,\n AddClientComponent,\n EditClientComponent,\n NavbarComponent,\n SidebarComponent,\n LoginComponent,\n RegisterComponent,\n SettingsComponent,\n PageNotFoundComponent\n ],\n imports: [\n FlashMessagesModule.forRoot(),\n BrowserModule,\n RouterModule.forRoot(appRoutes),\n AngularFireModule.initializeApp(firebaseConfig),\n FormsModule\n ],\n providers: [\n AngularFirestore,\n AngularFireAuth, \n AngularFireDatabase,\n ClientService,\n AuthService,\n AuthGuard,\n SettingsService,\n RegisterGuard\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/app.module.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/add-client/add-client.component.css\n// module id = ./src/app/components/add-client/add-client.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\n <div class=\\\"col-md-6\\\">\\n <a routerLink=\\\"/\\\" href=\\\"#\\\" class=\\\"btn btn-link\\\">\\n <i class=\\\"fa fa-arrow-circle-o-left\\\" aria-hidden=\\\"true\\\"></i> Back to dashboard</a>\\n </div>\\n <div class=\\\"col-md-6\\\">\\n\\n </div>\\n</div>\\n\\n<div class=\\\"card\\\">\\n <div class=\\\"card-header\\\">\\n Add Client\\n </div>\\n\\n <div class=\\\"card-block\\\">\\n <form novalidate #f=\\\"ngForm\\\" (ngSubmit)=\\\"onSubmit(f)\\\">\\n <div class=\\\"form-group\\\">\\n <label for=\\\"firstName\\\">First Name</label>\\n <input type=\\\"text\\\" name=\\\"firstName\\\" #clientFirstName=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.firstName\\\" minlength=\\\"2\\\"\\n required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientFirstName.errors?.required && clientFirstName.touched\\\"> First name is required</div>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientFirstName.errors?.minlength && clientFirstName.touched\\\"> Must be atleast 2 characters</div>\\n\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"lasttName\\\">Last Name</label>\\n <input type=\\\"text\\\" name=\\\"lastName\\\" #clientLastName=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.lastName\\\" minlength=\\\"2\\\"\\n required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientLastName.errors?.required && clientLastName.touched\\\"> Last name is required</div>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientLastName.errors?.minlength && clientLastName.touched\\\"> Must be atleast 2 characters</div>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"email\\\">Email</label>\\n <input type=\\\"email\\\" name=\\\"email\\\" #clientEmail=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.email\\\" minlength=\\\"2\\\" required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientEmail.errors?.required && clientEmail.touched\\\">Email is required</div>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"phone\\\">Phone</label>\\n <input type=\\\"text\\\" name=\\\"phone\\\" #clientPhone=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.phone\\\" minlength=\\\"10\\\" required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientPhone.errors?.required && clientPhone.touched\\\">Add a valid phone number </div>\\n </div>\\n\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"balance\\\">Balance</label>\\n <input type=\\\"text\\\" name=\\\"balance\\\" #clientBalance=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.balance\\\" minlength=\\\"2\\\"\\n required [disabled]=\\\"disableBalanceOnAdd\\\">\\n </div>\\n\\n <input type=\\\"submit\\\" class=\\\"btn btn-primary btn-block\\\" value=\\\"Submit\\\">\\n </form>\\n</div>\\n</div>\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/add-client/add-client.component.html\n// module id = ./src/app/components/add-client/add-client.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { Client } from '../../models/Client';\nimport { FlashMessagesModule } from \"angular2-flash-messages\";\nimport { FlashMessagesService } from 'angular2-flash-messages/';\nimport { Router} from '@angular/router';\nimport { ClientService } from '../../services/client.service';\nimport { SettingsService } from '../../services/settings.service';\n\n@Component({\n selector: 'app-add-client',\n templateUrl: './add-client.component.html',\n styleUrls: ['./add-client.component.css']\n})\nexport class AddClientComponent implements OnInit {\n\n client:Client = {\n firstName:'',\n lastName:'',\n email:'',\n phone:'',\n balance:0\n }\n disableBalanceOnAdd:boolean = false;\n\n constructor(\n public flashMessageService:FlashMessagesService, \n public router:Router,\n public clientService:ClientService,\n public settingsService:SettingsService\n ) { }\n\n ngOnInit() {\n this.disableBalanceOnAdd = this.settingsService.getSettings().disableBalanceOnAdd\n }\n\n onSubmit({value, valid}: {value:Client, valid:boolean})\n {\n if(this.disableBalanceOnAdd){\n value.balance = 0;\n }\n\n if(!valid){\n this.flashMessageService.show('Please fill in all fields', {cssClass:'alert-danger', timeout: 4000});\n this.router.navigate(['add-client']);\n }else {\n //Add new client\n this.clientService.newClient(value);\n this.flashMessageService.show('New client added', {cssClass:'alert-success', timeout: 4000});\n this.router.navigate(['/']);\n }\n\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/add-client/add-client.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/client-details/client-details.component.css\n// module id = ./src/app/components/client-details/client-details.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\n <div class=\\\"col-md-6\\\">\\n <a routerLink=\\\"/\\\" class=\\\"btn btn-link\\\"><i class=\\\"fa fa-arrow-circle-o-left\\\" aria-hidden=\\\"true\\\"></i> Back to dashboard</a>\\n </div>\\n <div class=\\\"col-md-6\\\">\\n<div class=\\\"btn-group pull-right\\\">\\n <a [routerLink]=\\\"['/edit-client/'+id]\\\" class=\\\"btn btn-secondary\\\">Edit</a>\\n<button type=\\\"button\\\" class=\\\"btn btn-danger\\\" (click)=\\\"onDeleteClick()\\\">Delete</button>\\n</div>\\n </div>\\n</div>\\n<hr>\\n<div *ngIf=\\\"client\\\" class=\\\"card\\\">\\n <h3 class=\\\"card-header\\\">{{ client.firstName}} {{client.lastName}}</h3>\\n<div class=\\\"card-block\\\">\\n <div class=\\\"row\\\">\\n <div class=\\\"col-md-8\\\">\\n<h4>Client ID: {{ id }}</h4>\\n </div>\\n <div class=\\\"col-md-4\\\"> \\n <!-- Balance goes here -->\\n <h3 class=\\\"pull-right\\\">\\n Balance: \\n <span\\n [class.text-danger]=\\\"hasBalance\\\"\\n [class.text-success]=\\\"!hasBalance\\\"\\n > \\n {{ client.balance | currency }}\\n </span>\\n <small>\\n <a (click)=\\\"showBalanceUpdateInput = !showBalanceUpdateInput\\\"><i class=\\\"fa fa-pencil\\\"></i></a>\\n </small>\\n </h3>\\n <div class=\\\"clearfix\\\">\\n <form *ngIf=\\\"showBalanceUpdateInput\\\" (submit)=\\\"updateBalance(id)\\\" class=\\\"form-inline pull-right\\\">\\n <div class=\\\"form-group\\\">\\n <input type=\\\"text\\\" [(ngModel)]=\\\"client.balance\\\" name=\\\"balance\\\" class=\\\"form-control\\\">\\n </div>\\n <button type=\\\"submit\\\" class=\\\"btn btn-primary\\\">Update</button>\\n </form>\\n </div>\\n </div>\\n </div>\\n<hr>\\n <ul class=\\\"list-group\\\">\\n <li class=\\\"list-group-item\\\">Contact Email: {{ client.email }}</li>\\n <li class=\\\"list-group-item\\\">Contact Phone: {{ client.phone }}</li>\\n </ul>\\n</div>\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/client-details/client-details.component.html\n// module id = ./src/app/components/client-details/client-details.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { ClientService } from '../../services/client.service';\nimport { Client } from \"../../models/Client\";\nimport { FlashMessagesService } from 'angular2-flash-messages';\nimport { Router, ActivatedRoute, Params} from '@angular/router';\nimport { AngularFireAction } from 'angularfire2/database';\n\n\n@Component({\n selector: 'app-client-details',\n templateUrl: './client-details.component.html',\n styleUrls: ['./client-details.component.css']\n})\nexport class ClientDetailsComponent implements OnInit {\n id:string;\n client:Client;\n hasBalance:boolean =false;\n showBalanceUpdateInput:boolean = false;\n\n constructor(\n public clientService:ClientService,\n public router:Router,\n public route:ActivatedRoute,\n public flashMessages:FlashMessagesService\n ) { }\n\n ngOnInit() {\n //get id\n this.id = this.route.snapshot.params['id'];\n //get client\n this.clientService.getClient(this.id).valueChanges().subscribe(client => {\n if(client.balance > 0){\n this.hasBalance =true;\n }\n this.client = client;\n });\n }\n\n updateBalance(id:string){\n //updating balance\n this.clientService.updateClient(this.id, this.client);\n this.flashMessages.show('Balance Updated', {cssClass: 'alert-success', timeout: 4000 })\n this.router.navigate(['/client/'+this.id]);\n }\n\n onDeleteClick(){\n if(confirm('Are you sure you want to delete?')){\n this.clientService.deleteClient(this.id);\n this.flashMessages.show('Client deleted', { cssClass: 'alert-success', timeout: 4000 });\n this.router.navigate(['/'])\n } \n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/client-details/client-details.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/clients/clients.component.css\n// module id = ./src/app/components/clients/clients.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\r\\n <div class=\\\"col-md-6\\\">\\r\\n <h2><i class=\\\"fa fa-users\\\"></i> Clients</h2>\\r\\n </div>\\r\\n <div class=\\\"col-md-6\\\">\\r\\n <h5 class=\\\"pull-right text-muted\\\">Total Owed: {{ totalOwed | currency:\\\"USD\\\":true}}</h5>\\r\\n </div>\\r\\n</div>\\r\\n<table *ngIf=\\\"clients?.length > 0; else noClients\\\" class=\\\"table table-striped\\\">\\r\\n <thead class=\\\"thead-inverse\\\">\\r\\n <tr>\\r\\n <th>ID</th>\\r\\n <th>Name</th>\\r\\n <th>Email</th>\\r\\n <th>Balance</th>\\r\\n <th></th>\\r\\n </tr>\\r\\n </thead>\\r\\n <tbody>\\r\\n <tr *ngFor=\\\"let client of clients\\\">\\r\\n <td>{{ client.$key }}</td>\\r\\n <td>{{ client.firstName }} {{ client.lastName }}</td>\\r\\n <td>{{ client.email }}</td>\\r\\n <td>{{ client.balance }}</td>\\r\\n <td><a [routerLink]=\\\"['/client/'+client.$key]\\\" href=\\\"\\\" class=\\\"btn btn-secondary btn-sm\\\"><i class=\\\"fa fa-arrow-circle-o-right\\\" aria-hidden=\\\"true\\\"></i> Details</a></td>\\r\\n </tr>\\r\\n </tbody>\\r\\n</table>\\r\\n\\r\\n\\r\\n<!--<div class=\\\"card\\\">\\r\\n <div class=\\\"card-header\\\" *ngFor=\\\"let client of clients\\\">\\r\\n {{ client.firstName }}\\r\\n </div>\\r\\n</div>-->\\r\\n\\r\\n<ng-template #noClients>\\r\\n <hr>\\r\\n <h5>There are no clients in the system</h5>\\r\\n</ng-template>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/clients/clients.component.html\n// module id = ./src/app/components/clients/clients.component.html\n// module chunks = main","import { Component, OnInit } from \"@angular/core\";\nimport { ClientService } from \"../../services/client.service\";\nimport { Client } from \"../../models/Client\";\n\n@Component({\n selector: \"app-clients\",\n templateUrl: \"./clients.component.html\",\n styleUrls: [\"./clients.component.css\"]\n})\nexport class ClientsComponent implements OnInit {\n clients: any[];\n totalOwed: number;\n\n constructor(public clientService: ClientService) {}\n\n ngOnInit() {\n this.clientService\n .getClients()\n .snapshotChanges()\n .subscribe(client => {\n this.clients = [];\n client.forEach(element => {\n var c = element.payload.toJSON();\n c[\"$key\"] = element.key;\n this.clients.push(c as Client);\n });\n this.getTotalOwed();\n });\n }\n\n getTotalOwed() {\n let total = 0;\n for (let i = 0; i < this.clients.length; i++) {\n total += parseFloat(this.clients[i].balance);\n }\n this.totalOwed = total;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/clients/clients.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/dashboard/dashboard.component.css\n// module id = ./src/app/components/dashboard/dashboard.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\r\\n <div class=\\\"col-md-10\\\">\\r\\n <app-clients></app-clients>\\r\\n </div>\\r\\n <div class=\\\"col-md-2\\\">\\r\\n <app-sidebar></app-sidebar>\\r\\n </div>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/dashboard/dashboard.component.html\n// module id = ./src/app/components/dashboard/dashboard.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-dashboard',\n templateUrl: './dashboard.component.html',\n styleUrls: ['./dashboard.component.css']\n})\nexport class DashboardComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/dashboard/dashboard.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/edit-client/edit-client.component.css\n// module id = ./src/app/components/edit-client/edit-client.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\n <div class=\\\"col-md-6\\\">\\n <a [routerLink]=\\\"['/client/'+id]\\\" href=\\\"#\\\" class=\\\"btn btn-link\\\">\\n <i class=\\\"fa fa-arrow-circle-o-left\\\" aria-hidden=\\\"true\\\"></i> Back to details</a>\\n </div>\\n <hr>\\n <div class=\\\"col-md-6\\\">\\n\\n </div>\\n</div>\\n\\n<div class=\\\"card\\\">\\n <div class=\\\"card-header\\\">\\n Edit Client\\n </div>\\n\\n <div class=\\\"card-block\\\">\\n <form novalidate #f=\\\"ngForm\\\" (ngSubmit)=\\\"onSubmit(f)\\\">\\n <div class=\\\"form-group\\\">\\n <label for=\\\"firstName\\\">First Name</label>\\n <input type=\\\"text\\\" name=\\\"firstName\\\" #clientFirstName=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.firstName\\\" minlength=\\\"2\\\"\\n required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientFirstName.errors?.required && clientFirstName.touched\\\"> First name is required</div>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientFirstName.errors?.minlength && clientFirstName.touched\\\"> Must be atleast 2 characters</div>\\n\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"lasttName\\\">Last Name</label>\\n <input type=\\\"text\\\" name=\\\"lastName\\\" #clientLastName=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.lastName\\\" minlength=\\\"2\\\"\\n required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientLastName.errors?.required && clientLastName.touched\\\"> Last name is required</div>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientLastName.errors?.minlength && clientLastName.touched\\\"> Must be atleast 2 characters</div>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"email\\\">Email</label>\\n <input type=\\\"email\\\" name=\\\"email\\\" #clientEmail=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.email\\\" minlength=\\\"2\\\" required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientEmail.errors?.required && clientEmail.touched\\\">Email is required</div>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"phone\\\">Phone</label>\\n <input type=\\\"text\\\" name=\\\"phone\\\" #clientPhone=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.phone\\\" minlength=\\\"10\\\" required>\\n <div class=\\\"alert alert-danger\\\" *ngIf=\\\"clientPhone.errors?.required && clientPhone.touched\\\">Add a valid phone number </div>\\n </div>\\n\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"balance\\\">Balance</label>\\n <input type=\\\"text\\\" name=\\\"balance\\\" #clientBalance=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"client.balance\\\" minlength=\\\"2\\\"\\n required [disabled]=\\\"disableBalanceOnEdit\\\">\\n </div>\\n\\n <input type=\\\"submit\\\" class=\\\"btn btn-primary btn-block\\\" value=\\\"Submit\\\">\\n </form>\\n</div>\\n</div>\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/edit-client/edit-client.component.html\n// module id = ./src/app/components/edit-client/edit-client.component.html\n// module chunks = main","import { Component, OnInit } from \"@angular/core\";\nimport { ClientService } from \"../../services/client.service\";\nimport { Client } from \"../../models/Client\";\nimport { FlashMessagesService } from \"angular2-flash-messages\";\nimport { Router, ActivatedRoute, Params } from \"@angular/router\";\nimport { AngularFireAction } from \"angularfire2/database\";\nimport { SettingsService } from \"../../services/settings.service\";\n\n@Component({\n selector: \"app-edit-client\",\n templateUrl: \"./edit-client.component.html\",\n styleUrls: [\"./edit-client.component.css\"]\n})\nexport class EditClientComponent implements OnInit {\n id: string;\n client: Client = {\n firstName: \"\",\n lastName: \"\",\n email: \"\",\n phone: \"\",\n balance: 0\n };\n\n disableBalanceOnEdit: boolean = true;\n\n constructor(\n public clientService: ClientService,\n public router: Router,\n public route: ActivatedRoute,\n public settingsService:SettingsService,\n public flashMessageService: FlashMessagesService\n ) {}\n\n ngOnInit() {\n this.id = this.route.snapshot.params[\"id\"];\n this.clientService\n .getClient(this.id)\n .valueChanges()\n .subscribe(client => {this.client = client});\n\n this.disableBalanceOnEdit = this.settingsService.getSettings().disableBalanceOnEdit;\n }\n\n onSubmit({ value, valid }: { value: Client; valid: boolean }) {\n if (!valid) {\n this.flashMessageService.show(\"Please fill in all fields\", {\n cssClass: \"alert-danger\",\n timeout: 4000\n });\n this.router.navigate([\"edit-client/\" + this.id]);\n } else {\n //Update client\n this.clientService.updateClient(this.id, value);\n this.flashMessageService.show(\"Client Updated\", {\n cssClass: \"alert-success\",\n timeout: 4000\n });\n this.router.navigate([\"/client/\" + this.id]);\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/edit-client/edit-client.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/login/login.component.css\n// module id = ./src/app/components/login/login.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\n <div class=\\\"col-md-6 offset-md-3\\\">\\n <div class=\\\"card\\\">\\n <div class=\\\"card-block\\\">\\n <img src=\\\"/assets/img/logo.png\\\" alt=\\\"Logo\\\" class=\\\"mx-auto d-block\\\">\\n <h1 class=\\\"text-center\\\">Login</h1>\\n <hr>\\n <form (submit)=\\\"onSubmit()\\\">\\n <div class=\\\"form-group\\\">\\n <label for=\\\"email\\\">Email</label>\\n <input type=\\\"email\\\" name=\\\"email\\\" [(ngModel)]=\\\"email\\\" class=\\\"form-control\\\" required>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"password\\\">Password</label>\\n <input type=\\\"password\\\" name=\\\"password\\\" [(ngModel)]=\\\"password\\\" class=\\\"form-control\\\" required>\\n </div>\\n <input type=\\\"submit\\\" value=\\\"Submit\\\" class=\\\"btn btn-primary btn-block\\\">\\n </form>\\n </div>\\n </div>\\n </div>\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/login/login.component.html\n// module id = ./src/app/components/login/login.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { FlashMessagesService } from \"angular2-flash-messages\";\nimport { Router } from '@angular/router';\nimport { AuthService } from '../../services/auth.service';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.css']\n})\nexport class LoginComponent implements OnInit {\n email:string;\n password:string;\n\n constructor(\n private authService:AuthService,\n private router:Router,\n private _flashMessages:FlashMessagesService\n ) { }\n\n ngOnInit() {\n }\n \n onSubmit(){\n this.authService.login(this.email, this.password)\n .then((res) => {\n this._flashMessages.show('You are now logged in', { cssClass: \"alert-success\", timeout: 4000});\n this.router.navigate(['/']);\n })\n .catch((err) => {\n this._flashMessages.show(err.message, {cssClass: 'alert-danger', timeout: 4000});\n this.router.navigate(['/login']);\n });\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/login/login.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/navbar/navbar.component.css\n// module id = ./src/app/components/navbar/navbar.component.css\n// module chunks = main","module.exports = \"<nav class=\\\"navbar navbar-toggleable-md navbar-light bg-faded\\\">\\n <div class=\\\"container\\\">\\n <button class=\\\"navbar-toggler navbar-toggler-right\\\" type=\\\"button\\\" data-toggle=\\\"collapse\\\" data-target=\\\"#navbarSupportedContent\\\" aria-controls=\\\"navbarSupportedContent\\\" aria-expanded=\\\"false\\\" aria-label=\\\"Toggle navigation\\\">\\n <span class=\\\"navbar-toggler-icon\\\"></span>\\n </button>\\n <a class=\\\"navbar-brand\\\" href=\\\"#\\\">ClientPanel</a>\\n\\n <div class=\\\"collapse navbar-collapse\\\" id=\\\"navbarSupportedContent\\\">\\n <ul class=\\\"navbar-nav mr-auto\\\">\\n <li *ngIf=\\\"isLoggedIn\\\" class=\\\"nav-item\\\">\\n <a class=\\\"nav-link\\\" href=\\\"#\\\" routerLink=\\\"/\\\">Dashboard</a>\\n </li> \\n </ul>\\n\\n <ul class=\\\"navbar-nav ml-auto\\\">\\n <li *ngIf=\\\"!isLoggedIn && showRegister\\\" class=\\\"nav-item\\\">\\n <a class=\\\"nav-link\\\" href=\\\"#\\\" routerLink=\\\"/register\\\">Register</a>\\n </li>\\n <li class=\\\"nav-item\\\">\\n <a *ngIf=\\\"!isLoggedIn && showRegister\\\" class=\\\"nav-link\\\" href=\\\"#\\\" routerLink=\\\"/login\\\">Login</a>\\n </li>\\n \\n <li class=\\\"nav-item\\\">\\n <a *ngIf=\\\"isLoggedIn\\\" class=\\\"nav-link\\\" href=\\\"#\\\" >Hi, {{ loggedInUser }}</a>\\n </li>\\n\\n <li class=\\\"nav-item\\\">\\n <a *ngIf=\\\"isLoggedIn\\\" class=\\\"nav-link\\\" href=\\\"#\\\" routerLink=\\\"/settings\\\">Settings</a>\\n </li> \\n\\n <li class=\\\"nav-item\\\">\\n <a *ngIf=\\\"isLoggedIn\\\" class=\\\"nav-link\\\" href=\\\"#\\\" (click)=\\\"onLogoutClick()\\\">Log Out</a>\\n </li> \\n </ul>\\n </div>\\n </div>\\n</nav>\\n<br><br>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/navbar/navbar.component.html\n// module id = ./src/app/components/navbar/navbar.component.html\n// module chunks = main","import { Component, OnInit } from \"@angular/core\";\nimport { FlashMessagesService } from \"angular2-flash-messages\";\nimport { Router } from \"@angular/router\";\nimport { AuthService } from \"../../services/auth.service\";\nimport \"rxjs/operator/map\";\nimport { SettingsService } from '../../services/settings.service'; \n\n@Component({\n selector: \"app-navbar\",\n templateUrl: \"./navbar.component.html\",\n styleUrls: [\"./navbar.component.css\"]\n})\nexport class NavbarComponent implements OnInit {\n isLoggedIn: boolean;\n loggedInUser: string;\n showRegister: boolean;\n\n constructor(\n private authService: AuthService,\n private router: Router,\n private settingsService:SettingsService,\n private flashMessagesService: FlashMessagesService\n ) {}\n\n ngOnInit() {\n this.authService.getAuth().subscribe(auth => {\n if (auth) {\n this.isLoggedIn = true;\n this.loggedInUser = auth.email;\n } else {\n this.isLoggedIn = false;\n }\n this.showRegister = this.settingsService.getSettings().allowRegistration;\n });\n }\n\n onLogoutClick() {\n this.authService.logout();\n this.flashMessagesService.show(\"You are logged out\", {\n cssClass: \"alert-success\",\n timeout: 4000\n });\n this.router.navigate([\"/login\"]);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/navbar/navbar.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/page-not-found/page-not-found.component.css\n// module id = ./src/app/components/page-not-found/page-not-found.component.css\n// module chunks = main","module.exports = \"<h1>\\n 404 - PAGE NOT FOUND\\n</h1>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/page-not-found/page-not-found.component.html\n// module id = ./src/app/components/page-not-found/page-not-found.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-page-not-found',\n templateUrl: './page-not-found.component.html',\n styleUrls: ['./page-not-found.component.css']\n})\nexport class PageNotFoundComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/page-not-found/page-not-found.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/register/register.component.css\n// module id = ./src/app/components/register/register.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\n <div class=\\\"col-md-6 offset-md-3\\\">\\n <div class=\\\"card\\\">\\n <div class=\\\"card-block\\\">\\n <img src=\\\"/assets/img/logo.png\\\" alt=\\\"Logo\\\" class=\\\"mx-auto d-block\\\">\\n <h1 class=\\\"text-center\\\">Register</h1>\\n <hr>\\n <form (submit)=\\\"onSubmit()\\\">\\n <div class=\\\"form-group\\\">\\n <label for=\\\"email\\\">Email</label>\\n <input type=\\\"email\\\" name=\\\"email\\\" [(ngModel)]=\\\"email\\\" class=\\\"form-control\\\" required>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"password\\\">Password</label>\\n <input type=\\\"password\\\" name=\\\"password\\\" [(ngModel)]=\\\"password\\\" class=\\\"form-control\\\" required>\\n </div>\\n <input type=\\\"submit\\\" value=\\\"Submit\\\" class=\\\"btn btn-primary btn-block\\\">\\n </form>\\n </div>\\n </div>\\n </div>\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/register/register.component.html\n// module id = ./src/app/components/register/register.component.html\n// module chunks = main","import { Component, OnInit } from \"@angular/core\";\nimport { FlashMessagesService } from \"angular2-flash-messages\";\nimport { Router } from \"@angular/router\";\nimport { AuthService } from \"../../services/auth.service\";\n\n@Component({\n selector: \"app-register\",\n templateUrl: \"./register.component.html\",\n styleUrls: [\"./register.component.css\"]\n})\nexport class RegisterComponent implements OnInit {\n email: string;\n password: string;\n\n constructor(\n private authService: AuthService,\n private router: Router,\n private flashMessagesService: FlashMessagesService\n ) {}\n\n ngOnInit() {}\n\n onSubmit() {\n this.authService\n .register(this.email, this.password)\n .then(res => {\n this.flashMessagesService.show(\"Registration successful\", {\n cssClass: \"alert-success\",\n timeout: 4000\n });\n this.router.navigate(['/']);\n })\n .catch(err => {\n this.flashMessagesService.show(\"Registration could not be completed because \" + err.message, {\n cssClass: \"alert-danger\",\n timeout: 4000\n });\n this.router.navigate(['/register']);\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/register/register.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/settings/settings.component.css\n// module id = ./src/app/components/settings/settings.component.css\n// module chunks = main","module.exports = \"<div class=\\\"row\\\">\\n <div class=\\\"col-md-6\\\">\\n <a routerLink=\\\"/\\\" class=\\\"btn btn-link\\\"><i class=\\\"fa fa-arrow-circle-o-left\\\" aria-hidden=\\\"true\\\"></i> Back to dashboard</a>\\n </div>\\n <div class=\\\"col-md-6\\\">\\n \\n </div>\\n</div>\\n\\n<div class=\\\"card\\\">\\n <h3 class=\\\"card-header\\\">\\n Edit Settings\\n </h3>\\n <div class=\\\"card-block\\\">\\n <form (submit)=\\\"onSubmit()\\\">\\n <div class=\\\"form-group\\\">\\n <label for=\\\"allowRegistration\\\">Allow Registration <input type=\\\"checkbox\\\" [checked]=\\\"settings.allowRegistration\\\" (change)=\\\"settings.allowRegistration = !settings.allowRegistration\\\" name=\\\"allowRegistration\\\" ></label>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"disableBalanceOnAdd\\\">Disable balance on Add <input type=\\\"checkbox\\\" [checked]=\\\"settings.disableBalanceOnAdd\\\" (change)=\\\"settings.disableBalanceOnAdd = !settings.disableBalanceOnAdd\\\" name=\\\"disableBalanceOnAdd\\\" ></label>\\n </div>\\n\\n <div class=\\\"form-group\\\">\\n <label for=\\\"disableBalanceOnEdit\\\">Disable balance on Edit <input type=\\\"checkbox\\\" [checked]=\\\"settings.disableBalanceOnEdit\\\" (change)=\\\"settings.disableBalanceOnEdit = !settings.disableBalanceOnEdit\\\" name=\\\"disableBalanceOnEdit\\\" ></label>\\n </div>\\n\\n <input type=\\\"submit\\\" class=\\\"btn btn-primary btn-block\\\" value=\\\"Submit\\\">\\n </form>\\n </div>\\n</div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/settings/settings.component.html\n// module id = ./src/app/components/settings/settings.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\nimport { SettingsService } from \"../../services/settings.service\";;\nimport { Router } from '@angular/router';\nimport { FlashMessagesService } from 'angular2-flash-messages';\nimport { Settings } from '../../models/Settings';\n\n@Component({\n selector: 'app-settings',\n templateUrl: './settings.component.html',\n styleUrls: ['./settings.component.css']\n})\nexport class SettingsComponent implements OnInit {\n settings:Settings;\n\n constructor(\n public settingsService:SettingsService,\n public flashMessagesService:FlashMessagesService,\n public router:Router\n ) { }\n\n ngOnInit() {\n this.settings = this.settingsService.getSettings();\n }\n\n onSubmit(){\n this.settingsService.changeSettings(this.settings);\n this.flashMessagesService.show('Settings saved', {\n cssClass: 'alert-success', timeout:4000\n });\n this.router.navigate(['/settings']);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/settings/settings.component.ts","module.exports = \"\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/sidebar/sidebar.component.css\n// module id = ./src/app/components/sidebar/sidebar.component.css\n// module chunks = main","module.exports = \"<a routerLink=\\\"/add-client\\\" href=\\\"#\\\" class=\\\"btn btn-success btn-block\\\">\\n<i class=\\\"fa fa-plus\\\"></i> Add new client </a>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/app/components/sidebar/sidebar.component.html\n// module id = ./src/app/components/sidebar/sidebar.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.css']\n})\nexport class SidebarComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/components/sidebar/sidebar.component.ts","import { Injectable } from \"@angular/core\";\r\nimport { CanActivate, Router } from \"@angular/router\";\r\nimport \"rxjs/add/operator/map\";\r\nimport { AngularFireAuth } from \"angularfire2/auth\";\r\nimport { AuthService } from \"../services/auth.service\";\r\nimport { Observable } from \"rxjs/Rx\";\r\n\r\n@Injectable()\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private router: Router, private afAuth: AuthService) {}\r\n\r\n canActivate(): Observable<boolean> {\r\n return this.afAuth.afAuth.authState.map(auth => {\r\n if (!auth) {\r\n this.router.navigate([\"/login\"]);\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n });\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/auth.guards.ts","import { Injectable } from \"@angular/core\";\r\nimport { CanActivate, Router } from \"@angular/router\";\r\nimport { SettingsService } from \"../services/settings.service\";\r\n\r\n@Injectable()\r\nexport class RegisterGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private settingsService: SettingsService\r\n ) {}\r\n\r\n canActivate(): boolean {\r\n if (this.settingsService.getSettings().allowRegistration) {\r\n return true;\r\n } else {\r\n this.router.navigate([\"/login\"]);\r\n return false;\r\n }\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/guards/register.guard.ts","import { Injectable } from \"@angular/core\";\nimport { AngularFireAuth } from \"angularfire2/auth\";\nimport { Observable } from \"rxjs\";\nimport { resolve, reject } from \"q\";\n\n@Injectable()\nexport class AuthService {\n constructor(public afAuth: AngularFireAuth) {}\n\n login(email: string, password: string) {\n return new Promise((resolve, reject) => {\n this.afAuth.auth\n .signInWithEmailAndPassword(email, password)\n .then(userData => resolve(userData), err => reject(err));\n });\n }\n\n //check user status\n getAuth() {\n return this.afAuth.authState.map(auth => auth);\n }\n\n logout(){\n this.afAuth.auth.signOut();\n }\n\n register(email:string, password:string){\n return new Promise((resolve, reject) => {\n this.afAuth.auth.createUserWithEmailAndPassword(email,password)\n .then(userData => resolve(userData), \n err => reject(err));\n })\n\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/auth.service.ts","import { Injectable } from \"@angular/core\";\nimport {\n AngularFireDatabase,\n AngularFireList,\n AngularFireObject\n} from \"angularfire2/database\";\nimport { Observable } from \"rxjs\";\nimport { Client } from \"../models/Client\";\nimport {\n FirebaseListObservable,\n FirebaseObjectObservable\n} from \"angularfire2/database-deprecated\";\n\nimport { AngularFirestore } from \"angularfire2/firestore\";\n\n@Injectable()\nexport class ClientService {\n clients: AngularFireList<any[]>;\n client: AngularFireObject<any>;\n\n constructor(public af: AngularFireDatabase) { }\n\n getClients() {\n this.clients = this.af.list('/clients');\n return this.clients;\n }\n\n newClient(client) {\n this.clients.push(client);\n }\n\n getClient(id:string){\n this.client = this.af.object('/clients/'+id);\n return this.client;\n }\n\n updateClient(id:string,client:Client){\n return this.client.update(client);\n }\n\n deleteClient(id:string){\n return this.clients.remove(id);\n }\n \n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/client.service.ts","import { Injectable } from '@angular/core';\nimport { Settings } from \"../models/Settings\";\nimport { parse } from 'querystring';\n\n@Injectable()\nexport class SettingsService {\n settings:Settings = {\n allowRegistration:true,\n disableBalanceOnAdd:true,\n disableBalanceOnEdit:true\n }\n constructor() { \n if(localStorage.getItem('settings') != null){\n this.settings = JSON.parse(localStorage.getItem('settings'));\n }\n }\n\n getSettings(){\n return this.settings;\n }\n\n changeSettings(settings:Settings)\n {\n localStorage.setItem('settings', JSON.stringify(settings));\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/app/services/settings.service.ts","// The file contents for the current environment will overwrite these during build.\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\n// The list of which env maps to which file can be found in `.angular-cli.json`.\n\nexport const environment = {\n production: false\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/environments/environment.ts","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.log(err));\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.ts"],"sourceRoot":"webpack:///"}