{"version":3,"sources":["C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src async","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/address/address.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/address/address.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/address/address.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/alias/alias.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/alias/alias.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/alias/alias.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app-routing.module.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.component.scss","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.module.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/dateofbirth/dateofbirth.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/dateofbirth/dateofbirth.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/dateofbirth/dateofbirth.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/models/GroupedResult.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/models/SearchResult.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/regime/regime.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/regime/regime.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/regime/regime.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/sanction/sanction.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/sanction/sanction.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/sanction/sanction.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/search.service.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/searchresults.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/searchresults.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/searchresults.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/odata/odata.service.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/odata/odata.serviceProvider.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/service.model.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/session/session.service.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/suspect/suspect.component.css","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/suspect/suspect.component.html","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/suspect/suspect.component.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/environments/environment.ts","C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/main.ts"],"names":[],"mappings":"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","file":"main.bundle.js","sourcesContent":["function webpackEmptyContext(req) {\n\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nmodule.exports = webpackEmptyContext;\nwebpackEmptyContext.id = \"../../../../../src async recursive\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src async\n// module id = ../../../../../src async recursive\n// module chunks = 1","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".button-group {\\r\\n    margin-top: 22px;\\r\\n}\\r\\n.btn-warning {\\r\\n     color: #fff;\\r\\n     background-color: #f0ad4e;\\r\\n     border-color: #eea236;\\r\\n     margin-bottom: 18px !important;\\r\\n }\\r\\n.btn-warning:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n.col-sm-4{\\r\\n    padding-left: 0px !important;\\r\\n    padding-right: 0px !important;\\r\\n}\\r\\n.rowUnderline{\\r\\n    border-bottom: 1px solid #ccc;\\r\\n    float: left;\\r\\n    margin-bottom: 18px !important;\\r\\n}\\r\\n.required {\\r\\n    color: #cc0000;\\r\\n    font-weight: bold;\\r\\n    font-size: 13px;\\r\\n}\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/address/address.component.css\n// module id = ../../../../../src/app/address/address.component.css\n// module chunks = 1","module.exports = \"<div [formGroup]=\\\"addressForm\\\" class=\\\"rowUnderline\\\">\\r\\n    <input type=\\\"hidden\\\" class=\\\"form-control\\\" formControlName=\\\"id\\\"/>\\r\\n        <div class=\\\"col-sm-4\\\">\\r\\n            <div class=\\\"form-group col-md-4\\\">\\r\\n              <label>Address 1</label>\\r\\n              <input type=\\\"hidden\\\" formControlName=\\\"id\\\">\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"address1\\\">              \\r\\n            </div>\\r\\n            <div class=\\\"form-group col-md-4\\\">\\r\\n              <label>Address 2</label>\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"address2\\\">             \\r\\n            </div>\\r\\n          <div class=\\\"form-group col-md-4\\\">\\r\\n            <label>Address 3</label>\\r\\n            <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"address3\\\">\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"col-sm-4\\\">\\r\\n            <div class=\\\"form-group col-md-4\\\">\\r\\n              <label>Address 4</label>\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"address4\\\">\\r\\n            </div>\\r\\n            <div class=\\\"form-group col-md-4\\\">\\r\\n              <label>Address 5</label>\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"address5\\\">\\r\\n            </div>\\r\\n          <div class=\\\"form-group col-md-4\\\">\\r\\n            <label>Address 6</label>\\r\\n            <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"address6\\\">\\r\\n          </div>\\r\\n        </div>\\r\\n        <div class=\\\"col-sm-4\\\">\\r\\n            <div class=\\\"form-group col-md-4\\\">\\r\\n              <label>Country</label>\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"country\\\">            \\r\\n            </div>\\r\\n            <div class=\\\"form-group col-md-4\\\">\\r\\n              <label>Post Code</label>\\r\\n              <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"postcode\\\">\\r\\n            </div>         \\r\\n        </div>\\r\\n    </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/address/address.component.html\n// module id = ../../../../../src/app/address/address.component.html\n// module chunks = 1","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n  moduleId: module.id,\r\n  selector: 'app-address',\r\n  templateUrl: './address.component.html',\r\n  styleUrls: ['./address.component.css']\r\n})\r\nexport class AddressComponent {\r\n  @Input('addressForm')\r\n  public addressForm: FormGroup;\r\n  @Input('index') index: number;\r\n\r\n  constructor(){\r\n  }\r\n  \r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/address/address.component.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".button-group {\\r\\n    margin-top: 22px;\\r\\n}\\r\\n.btn-warning {\\r\\n     color: #fff;\\r\\n     background-color: #f0ad4e;\\r\\n     border-color: #eea236;\\r\\n     margin-bottom: 18px !important;\\r\\n }\\r\\n.btn-warning:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n.col-sm-4{\\r\\n    padding-left: 0px !important;\\r\\n    padding-right: 0px !important;\\r\\n}\\r\\n.rowUnderline{\\r\\n    border-bottom: 1px solid #ccc;\\r\\n    float: left;\\r\\n    margin-bottom: 18px !important;\\r\\n}\\r\\n.required {\\r\\n    color: #cc0000;\\r\\n    font-weight: bold;\\r\\n    font-size: 13px;\\r\\n}\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/alias/alias.component.css\n// module id = ../../../../../src/app/alias/alias.component.css\n// module chunks = 1","module.exports = \"<div [formGroup]=\\\"aliasForm\\\" class=\\\"rowUnderline\\\">\\r\\n  <div class=\\\"col-sm-12\\\">\\r\\n  <div class=\\\"col-sm-4\\\">\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>Alias Type<span class=\\\"required\\\"> *</span></label>\\r\\n          <input type=\\\"hidden\\\" formControlName=\\\"id\\\">\\r\\n          <select class=\\\"form-control\\\" id=\\\"aliasType\\\" formControlName=\\\"aliasType\\\" [(ngModel)]=\\\"selectedAliasType\\\">\\r\\n        <option value=\\\"\\\">Please select an alias type</option>\\r\\n        <option *ngFor=\\\"let at of aliasTypes\\\" [value]=\\\"at.AliasTypeId\\\">{{at.AliasTypeName}}</option>\\r\\n      </select>\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n        <label>Alias Quality<span class=\\\"required\\\"> *</span></label>\\r\\n        <input type=\\\"hidden\\\" formControlName=\\\"id\\\">\\r\\n        <select class=\\\"form-control\\\" id=\\\"aliasQuality\\\" formControlName=\\\"aliasQuality\\\" [(ngModel)]=\\\"selectedAliasQuality\\\">\\r\\n      <option value=\\\"\\\">Please select the alias quality </option>\\r\\n      <option *ngFor=\\\"let aq of aliasQualities\\\" [value]=\\\"aq.AliasQualityId\\\">{{aq.AliasQualityName}}</option>\\r\\n      </select>\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>Surname/Org (Name 6)<span class=\\\"required\\\"> *</span></label>\\r\\n          <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"surName\\\">\\r\\n      </div>\\r\\n  </div>\\r\\n  <div class=\\\"col-sm-4\\\">\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n        <label>Title</label>\\r\\n        <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"nameTitle\\\">\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>Name 1</label>\\r\\n          <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"name1\\\">\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>Name 2</label>\\r\\n          <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"name2\\\">\\r\\n      </div>\\r\\n  </div>\\r\\n  <div class=\\\"col-sm-4\\\">\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n      <label>Name 3</label>\\r\\n      <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"name3\\\">\\r\\n     </div>\\r\\n        <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>Name 4</label>\\r\\n          <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"name4\\\">\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>Name 5</label>\\r\\n          <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"name5\\\">\\r\\n      </div>\\r\\n    </div>\\r\\n  </div>\\r\\n  <div class=\\\"col-sm-12\\\">\\r\\n    <div class=\\\"col-sm-4\\\">\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n        <label>Name Non Latin Script</label>\\r\\n        <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"NameNonLatinScript\\\">\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n        <label>Non Latin Script Type</label>\\r\\n        <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"NonLatinScriptType\\\">\\r\\n      </div>\\r\\n      <div class=\\\"form-group col-md-4\\\">\\r\\n        <label>Non Latin Script Language</label>\\r\\n        <input type=\\\"text\\\" class=\\\"form-control\\\" formControlName=\\\"NonLatinScriptLanguage\\\">\\r\\n    </div>\\r\\n  </div>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/alias/alias.component.html\n// module id = ../../../../../src/app/alias/alias.component.html\n// module chunks = 1","import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n\r\n@Component({\r\n  selector: 'app-alias',\r\n  templateUrl: './alias.component.html',\r\n  styleUrls: ['./alias.component.css']\r\n})\r\nexport class AliasComponent implements OnInit {\r\n  @Input('aliasTypes')\r\n  public aliasTypes: any;\r\n  @Input('aliasQualities')\r\n  public aliasQualities: any;\r\n  public selectedAliasType = '';\r\n  public selectedAliasQuality = '';\r\n  @Input('aliasForm')\r\n  public aliasForm: FormGroup;\r\n  @Input('index') index: number;\r\n\r\n\r\n  constructor() {\r\n  }\r\n\r\n\r\n  ngOnInit() {\r\n\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/alias/alias.component.ts","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { SearchresultsComponent } from './searchresults/searchresults.component';\r\nimport { SuspectComponent } from './suspect/suspect.component';\r\n\r\nconst routes: Routes = [\r\n  {path: '', component: SearchresultsComponent},\r\n  { path: 'search', component: SearchresultsComponent},\r\n  { path: 'suspect/:id', component: SuspectComponent},\r\n];\r\n\r\n@NgModule({\r\n  imports: [RouterModule.forRoot(routes)],\r\n  exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app-routing.module.ts","module.exports = \"<div class=\\\"container-fluid\\\">\\r\\n    <div class=\\\"row\\\">\\r\\n        <div class=\\\"col-md-12\\\">\\r\\n            <div class=\\\"header clearfix\\\">\\r\\n                <!--logo-->\\r\\n                <div class=\\\"pull-left\\\">\\r\\n                    <a href=\\\"#\\\">\\r\\n                        <img id=\\\"siteLogo\\\" alt=\\\"OFSI Consolidated List Search\\\" src=\\\"../assets/img/logo.png\\\">\\r\\n                    </a>\\r\\n                </div>\\r\\n                <div class=\\\"pull-right\\\" style=\\\"padding-bottom:15px\\\">\\r\\n                    <h1>OFSI Consolidated List Search</h1>\\r\\n                    <!--<strong><code class=\\\"well well-sm\\\">{{environment.toUpperCase()}} <span><i>v0.1.2</i></span></code></strong>-->\\r\\n                </div>\\r\\n\\r\\n            </div>\\r\\n        </div>\\r\\n    </div>\\r\\n    <router-outlet></router-outlet>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.component.html\n// module id = ../../../../../src/app/app.component.html\n// module chunks = 1","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#siteLogo {\\n  height: 128px; }\\n\\n.pull-right h1 {\\n  padding: 20px 10px 0px 0px; }\\n\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.component.scss\n// module id = ../../../../../src/app/app.component.scss\n// module chunks = 1","import { Component } from '@angular/core';\r\nimport {environment } from '../environments/environment';\r\n\r\n@Component({\r\n  selector: 'ofsi-root',\r\n  templateUrl: './app.component.html',\r\n  styleUrls: ['./app.component.scss']\r\n})\r\n\r\nexport class AppComponent {\r\n  title = 'ofsi';\r\n  environment = environment.name;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.component.ts","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { HttpModule, Http} from '@angular/http';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { SearchresultsComponent } from './searchresults/searchresults.component';\r\nimport { provideODataService } from './services/odata/odata.serviceProvider';\r\nimport { OdataService } from './services/odata/odata.service';\r\nimport { SessionService } from './services/session/session.service';\r\n\r\nimport { SuspectComponent } from './suspect/suspect.component';\r\nimport { AddressComponent } from './address/address.component';\r\nimport { AliasComponent } from './alias/alias.component';\r\nimport { RegimeComponent } from './regime/regime.component';\r\nimport { DateofbirthComponent } from './dateofbirth/dateofbirth.component';\r\nimport { SanctionComponent } from './sanction/sanction.component';\r\n\r\n@NgModule({\r\n  declarations: [\r\n    AppComponent,\r\n    SearchresultsComponent,\r\n    SuspectComponent,\r\n    AddressComponent,\r\n    AliasComponent,\r\n    RegimeComponent,\r\n    DateofbirthComponent,\r\n    SanctionComponent\r\n],\r\n  imports: [\r\n    BrowserModule,\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    HttpModule,\r\n    AppRoutingModule\r\n  ],\r\n  providers: [\r\n    {\r\n      provide: OdataService, useFactory: provideODataService, deps: [Http]\r\n    },\r\n    SessionService\r\n  ],\r\n  bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/app.module.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".button-group {\\r\\n    margin-top: 22px;\\r\\n}\\r\\n.btn-warning {\\r\\n     color: #fff;\\r\\n     background-color: #f0ad4e;\\r\\n     border-color: #eea236;\\r\\n     margin-bottom: 18px !important;\\r\\n }\\r\\n.btn-warning:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n.col-sm-4{\\r\\n    padding-left: 0px !important;\\r\\n    padding-right: 0px !important;\\r\\n}\\r\\n.rowUnderline{\\r\\n    border-bottom: 1px solid #ccc;\\r\\n    float: left;\\r\\n    margin-bottom: 18px !important;\\r\\n    width: 100%;\\r\\n}\\r\\n.required {\\r\\n    color: #cc0000;\\r\\n    font-weight: bold;\\r\\n    font-size: 13px;\\r\\n}\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/dateofbirth/dateofbirth.component.css\n// module id = ../../../../../src/app/dateofbirth/dateofbirth.component.css\n// module chunks = 1","module.exports = \"<div [formGroup]=\\\"dobForm\\\" class=\\\"rowUnderline\\\">\\r\\n    <div class=\\\"col-sm-12\\\">\\r\\n        <div class=\\\"form-group col-md-3\\\">\\r\\n          <label>Day of birth</label>\\r\\n          <input type=\\\"hidden\\\" formControlName=\\\"id\\\"/>\\r\\n          <input type=\\\"number\\\" min=\\\"0\\\" step=\\\"1\\\" max=\\\"31\\\" class=\\\"form-control\\\" formControlName=\\\"dayOfBirth\\\"/>\\r\\n        </div>\\r\\n        <div class=\\\"form-group col-md-3\\\">\\r\\n          <label>Month of birth</label>\\r\\n          <input type=\\\"number\\\" min=\\\"0\\\" step=\\\"1\\\" max=\\\"12\\\" class=\\\"form-control\\\" formControlName=\\\"monthOfBirth\\\"/>\\r\\n        </div>\\r\\n        <div class=\\\"form-group col-md-3\\\">\\r\\n          <label>Year of birth</label>\\r\\n          <input type=\\\"number\\\" min=\\\"1900\\\" step=\\\"1\\\" max=\\\"2050\\\" class=\\\"form-control\\\" formControlName=\\\"yearOfBirth\\\"/>          \\r\\n        </div>       \\r\\n    </div>\\r\\n  </div>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/dateofbirth/dateofbirth.component.html\n// module id = ../../../../../src/app/dateofbirth/dateofbirth.component.html\n// module chunks = 1","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-dateofbirth',\r\n  templateUrl: './dateofbirth.component.html',\r\n  styleUrls: ['./dateofbirth.component.css']\r\n})\r\nexport class DateofbirthComponent {\r\n  @Input('dobForm')\r\n  public dobForm: FormGroup;\r\n  @Input('index') index: number;  \r\n\r\n  constructor() {\r\n   }\r\n\r\n   \r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/dateofbirth/dateofbirth.component.ts","import {SearchResult} from './SearchResult';\r\n\r\nexport class GroupedResult{\r\n    value: number;\r\n    count: number;\r\n    primary : SearchResult;\r\n    entities: Array<SearchResult>;\r\n}\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/models/GroupedResult.ts","\r\nexport class SearchResult{\r\n    GroupID: number;\r\n    name1: string;\r\n    name2: string;\r\n    name3: string;\r\n    name4: string;\r\n    name5: string;\r\n    Name6: string;\r\n    RegimeName: string;\r\n    GroupStatus: string;\r\n    GroupTypeDescription: string;\r\n    Nationality: string;\r\n    address1: string;\r\n    address2: string;\r\n    address3: string;\r\n    address4: string;\r\n    address5: string;\r\n    address6: string;\r\n    PostCode: string;\r\n    Country: string;\r\n    DateOfBirth: string;\r\n    TownOfBirth: string;\r\n    CountryOfBirth: string;\r\n    Position: string;\r\n    PassportDetails: string;\r\n    NationalIdNumber: string;\r\n    DateListed: string;\r\n    LastUpdated: string;\r\n    OtherInformation: string;\r\n    NameTitle: string;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/models/SearchResult.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".button-group {\\r\\n    margin-top: 22px;\\r\\n}\\r\\n.btn-warning {\\r\\n     color: #fff;\\r\\n     background-color: #f0ad4e;\\r\\n     border-color: #eea236;\\r\\n     margin-bottom: 18px !important;\\r\\n }\\r\\n.btn-warning:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n.col-sm-4{\\r\\n    padding-left: 0px !important;\\r\\n    padding-right: 0px !important;\\r\\n}\\r\\n.rowUnderline{\\r\\n    border-bottom: 1px solid #ccc;\\r\\n    float: left;\\r\\n    margin-bottom: 18px !important;\\r\\n    width: 100%;\\r\\n}\\r\\n.required {\\r\\n    color: #cc0000;\\r\\n    font-weight: bold;\\r\\n    font-size: 13px;\\r\\n}\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/regime/regime.component.css\n// module id = ../../../../../src/app/regime/regime.component.css\n// module chunks = 1","module.exports = \"<div [formGroup]=\\\"regimeForm\\\" class=\\\"rowUnderline\\\">\\r\\n    <div class=\\\"col-sm-12\\\">\\r\\n        <div class=\\\"form-group col-md-3\\\">\\r\\n          <label>Regime</label>\\r\\n          <input type=\\\"hidden\\\" formControlName=\\\"id\\\">\\r\\n          <select class=\\\"form-control\\\" id=\\\"regimeSelect\\\" formControlName=\\\"regime\\\" [(ngModel)]=\\\"selectedRegime\\\">\\r\\n            <option value=\\\"\\\">Please select a regime</option>\\r\\n            <option *ngFor=\\\"let r of regimes\\\" [value]=\\\"r.RegimeId\\\">{{r.RegimeName}}</option>\\r\\n          </select>\\r\\n        </div>\\r\\n        <div class=\\\"form-group col-md-3\\\">\\r\\n          <label>Date Listed</label>\\r\\n          <input type=\\\"date\\\" min=\\\"2000-01-01\\\" max=\\\"2050-01-01\\\" class=\\\"form-control\\\" formControlName=\\\"dateListed\\\">\\r\\n        </div>\\r\\n        <div class=\\\"form-group col-md-4\\\">\\r\\n          <label>UK Sanctions List Date Designated</label>\\r\\n          <input type=\\\"date\\\" min=\\\"2000-01-01\\\" max=\\\"2050-01-01\\\" class=\\\"form-control\\\" formControlName=\\\"dateDesignated\\\">\\r\\n        </div>\\r\\n    </div>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/regime/regime.component.html\n// module id = ../../../../../src/app/regime/regime.component.html\n// module chunks = 1","import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n  selector: 'app-regime',\r\n  templateUrl: './regime.component.html',\r\n  styleUrls: ['./regime.component.css']\r\n})\r\nexport class RegimeComponent implements OnInit {\r\n  @Input('regimes')\r\n  public regimes: any;\r\n  public selectedRegime = '';\r\n  @Input('regimeForm')\r\n  public regimeForm: FormGroup;\r\n  @Input('index') index: number;\r\n\r\n  constructor() { }\r\n\r\n  ngOnInit() {\r\n    // const urlOptions: IUrlOptions = <IUrlOptions>{};\r\n    // urlOptions.restOfUrl = 'regimes?$filter=RegimeDisabled eq false&$select=RegimeId,RegimeName&$orderby=RegimeName';\r\n    // this.odata.Request(RequestTypes.get, urlOptions).subscribe(\r\n    //   data => this.regimes = data['value'],\r\n    //   error => console.error(error)\r\n    // );\r\n  } \r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/regime/regime.component.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".button-group {\\r\\n  margin-top: 22px;\\r\\n}\\r\\n.btn-warning {\\r\\n   color: #fff;\\r\\n   background-color: #f0ad4e;\\r\\n   border-color: #eea236;\\r\\n   margin-bottom: 18px !important;\\r\\n}\\r\\n.btn-warning:hover {\\r\\n  background-color: #ec971f;\\r\\n}\\r\\n.col-sm-4{\\r\\n  padding-left: 0px !important;\\r\\n  padding-right: 0px !important;\\r\\n}\\r\\n.rowUnderline{\\r\\n  border-bottom: 1px solid #ccc;\\r\\n  float: left;\\r\\n  margin-bottom: 18px !important;\\r\\n  width: 100%;\\r\\n}\\r\\n.required {\\r\\n  color: #cc0000;\\r\\n  font-weight: bold;\\r\\n  font-size: 13px;\\r\\n}\\r\\n\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/sanction/sanction.component.css\n// module id = ../../../../../src/app/sanction/sanction.component.css\n// module chunks = 1","module.exports = \"<div [formGroup]=\\\"sanctionForm\\\" class=\\\"rowUnderline\\\">\\r\\n  <div class=\\\"col-sm-12\\\">\\r\\n      <div class=\\\"form-group col-md-8\\\">\\r\\n          <label>Sanction</label>\\r\\n          <input type=\\\"hidden\\\" formControlName=\\\"id\\\">\\r\\n          <select class=\\\"form-control\\\" id=\\\"sanctionSelect\\\" formControlName=\\\"sanction\\\" [(ngModel)]=\\\"selectedSanction\\\">\\r\\n            <option value=\\\"\\\">Please select additional sanction</option>\\r\\n            <option *ngFor=\\\"let s of sanctionTypes\\\" [value]=\\\"s.ID\\\">{{s.SanctionType1}}</option>\\r\\n          </select>\\r\\n      </div>\\r\\n  </div>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/sanction/sanction.component.html\n// module id = ../../../../../src/app/sanction/sanction.component.html\n// module chunks = 1","import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n\r\n@Component({\r\n  selector: 'app-sanction',\r\n  templateUrl: './sanction.component.html',\r\n  styleUrls: ['./sanction.component.css']\r\n})\r\nexport class SanctionComponent implements OnInit {\r\n  @Input('sanctionTypes')\r\n  public sanctionTypes: any;\r\n  public selectedSanction = '';\r\n  @Input('sanctionForm')\r\n  public sanctionForm: FormGroup;\r\n  @Input('index') index: number;\r\n\r\n  constructor() {}\r\n\r\n  ngOnInit() {\r\n\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/sanction/sanction.component.ts","import { Injectable } from '@angular/core';\r\nimport { Http, Response, Headers, RequestOptions } from '@angular/http';\r\nimport { Observable } from 'rxjs/Rx';\r\nimport 'rxjs/add/operator/map';\r\nimport 'rxjs/add/operator/do';\r\nimport 'rxjs/add/operator/catch';\r\nimport {environment} from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class SearchService {\r\n\r\nconstructor(private _http: Http) { }\r\n\r\npublic getResults<T>(q : string, grouped: boolean) : Observable<T> {\r\n\r\n    const headers : Headers = new Headers();\r\n    headers.append('api-key', environment.searchApiKey);\r\n\r\n\r\n    let requestOptions = new RequestOptions( {headers : headers} );\r\n\r\n    const api = grouped ? environment.searchApiGrouped : environment.searchApi;\r\n\r\n    return this._http.get(api + q, requestOptions)\r\n    .map((response: Response) => <T>response.json())\r\n    .do(data => console.log(\"results\"))\r\n    .catch(this.handleError);\r\n\r\n\r\n\r\n}\r\n\r\nprivate handleError<T>(err: any, caught: Observable<T>): Observable<T>{\r\n //console.log(err);\r\n return caught;\r\n}\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/search.service.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".odd {\\r\\n    background-color: #e9e9e9;\\r\\n}\\r\\n\\r\\n.even {\\r\\n    background-color: #FFF;\\r\\n}\\r\\n\\r\\n.odd td,\\r\\n.even td {\\r\\n    white-space: normal;\\r\\n}\\r\\n\\r\\n.table-heading {\\r\\n    background: #337ab7;\\r\\n    color: #fff;\\r\\n}\\r\\n\\r\\n.table-headinggrouped {\\r\\n    background: #d9534f;\\r\\n    color: #fff;\\r\\n}\\r\\n\\r\\n.btn-primary {\\r\\n    background: #41cac0 !Important;\\r\\n    border: 0px !Important;\\r\\n    color: #fff !Important;\\r\\n    width: 100px;\\r\\n    font-size: 16px;\\r\\n    font-weight: bold;\\r\\n}\\r\\n\\r\\n.btn-primary:hover {\\r\\n    background: #39b2a9 !Important;\\r\\n}\\r\\n\\r\\n.btn-default {\\r\\n    color: #fff;\\r\\n    background-color: #f0ad4e;\\r\\n    border-color: #eea236;\\r\\n    width: 100px;\\r\\n    font-size: 16px;\\r\\n    font-weight: bold;\\r\\n}\\r\\n\\r\\n.btn-default:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n\\r\\n.panel-primary {\\r\\n    border-color: #2980b9 !Important;\\r\\n}\\r\\n\\r\\n.panel-heading {\\r\\n    font-size: 18px;\\r\\n    font-weight: bold;\\r\\n}\\r\\n\\r\\n.checkbox, .radio {\\r\\n    position: relative;\\r\\n    display: block;\\r\\n    margin-top: 30px;\\r\\n    margin-bottom: 10px;\\r\\n}\\r\\n.checkbox label{\\r\\n    font-weight: bold;\\r\\n}\\r\\n.groupresultcell{\\r\\n    padding-left: 0px;\\r\\n    padding-top: 0px;\\r\\n}\\r\\n\\r\\n.fuzzyoption {\\r\\n    position: relative;\\r\\n    display: block;\\r\\n    margin-top: 10px;\\r\\n    margin-bottom: 10px;\\r\\n}\\r\\n.fuzzyoption label{\\r\\n    font-weight: bold;\\r\\n}\\r\\n.disclaimer{\\r\\n    border-bottom: #ddd 1px solid;\\r\\n}\\r\\n\\r\\n.fuzzyPanel{\\r\\n    margin: 15px;\\r\\n}\\r\\n\\r\\n.fuzzyPanelHeading{\\r\\n    font-size: 14px;\\r\\n}\\r\\n.fuzzysearchOn{\\r\\n    color:#fff;\\r\\n    padding:5px;\\r\\n    background-color: #d9534f;\\r\\n}\\r\\n.fuzzysearchOff{\\r\\n    color:rgb(51, 51, 51);\\r\\n    padding:5px;\\r\\n    background-color: #f0ad4e;\\r\\n}\\r\\n\\r\\n.vdp{\\r\\n  float: right;\\r\\n}\\r\\n\\r\\n.vdpbutton{\\r\\n  width: 100%;\\r\\n}\\r\\n\\r\\n.bs-callout {\\r\\n  padding-left: 10px;\\r\\n  padding-top: 5px;\\r\\n  padding-bottom: 5px;\\r\\n  margin: 10px 0;\\r\\n  border: 1px solid #eee;\\r\\n  border-left-width: 5px;\\r\\n  border-radius: 3px;\\r\\n}\\r\\n\\r\\n.bs-callout-info {\\r\\n  border-left-color: #1b809e;\\r\\n}\\r\\n\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/searchresults.component.css\n// module id = ../../../../../src/app/searchresults/searchresults.component.css\n// module chunks = 1","module.exports = \"<div class=\\\"panel panel-default\\\">\\r\\n    <div class=\\\"panel-heading\\\">Financial Sanctions Search</div>\\r\\n    <div class=\\\"panel-body disclaimer\\\">\\r\\n        <em>\\r\\n            The consolidated list of financial sanctions targets search enables users to find information relating to asset freeze and investment ban targets across all financial sanctions regimes implemented in the UK. Use of the search function does not remove an individual or entity’s obligation to undertake appropriate due diligence in respect of financial sanctions targets. Reliance on, or use of, the information contained in the search results does not limit any criminal or civil liability for any act undertaken by an individual or entity. Please see the Consolidated List Format guide found on <a href=\\\"https://www.gov.uk/government/publications/financial-sanctions-consolidated-list-of-targets\\\" target=\\\"_blank\\\">this page</a> or <a href=\\\"https://www.gov.uk/government/publications/financial-sanctions-faqs\\\" target=\\\"_blank\\\" >OFSI’s general guidance</a> for more information on the consolidated list.\\r\\n            <br/>\\r\\n            If you have feedback on this search tool, please contact us by email at <a href=\\\"mailto:OFSI@hmtreasury.gov.uk\\\">OFSI@hmtreasury.gov.uk</a>, including relevant information or screenshots as necessary.\\r\\n        </em>\\r\\n    </div>\\r\\n    <div class=\\\"panel-body\\\">\\r\\n        <form [formGroup]=\\\"searchForm\\\" (ngSubmit)=\\\"clearResults(false);onSubmit()\\\">\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"form-group col-md-6 col-sm-6\\\">\\r\\n                    <label for=\\\"exampleInputEmail1\\\">Search for</label>\\r\\n                    <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"txtSearch\\\" name=\\\"txtSearch\\\" placeholder=\\\"Enter search term\\\" formControlName=\\\"searchTerm\\\" />\\r\\n                </div>\\r\\n                <div class=\\\"form-group col-md-3 col-sm-3\\\">\\r\\n                    <div class=\\\"checkbox\\\">\\r\\n                      <label><input type=\\\"checkbox\\\" formControlName=\\\"groupResults\\\" [(ngModel)]=\\\"groupResults\\\" (change)=\\\"clearResults(false);onSubmit()\\\"> Group results by Group ID</label>\\r\\n                    </div>\\r\\n                  </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"panel panel-default fuzzyPanel\\\">\\r\\n                  <div class=\\\"panel-heading fuzzyPanelHeading\\\">\\r\\n                      Fuzzy Search is <span [ngClass]=\\\"fuzzySearch?'fuzzysearchOn':'fuzzysearchOff'\\\">{{fuzzySearch?\\\"ON\\\": \\\"OFF\\\"}}</span>\\r\\n                  </div>\\r\\n                  <div class=\\\"panel-body disclaimer\\\">\\r\\n                        <em>Enabling Fuzzy search will find matches even when users misspell search terms or enter in only partial words for the search. <p></p>Increasing the optional Fuzzy Distance will increase the matches but may make the results less relevant. Increase the Fuzzy Distance in case the exact spelling of the search term is not known.</em>\\r\\n                    </div>\\r\\n                  <div class=\\\"panel-body\\\">\\r\\n                    <div class=\\\"col-sm-2\\\">\\r\\n                        <div class=\\\"fuzzyoption\\\">\\r\\n                            <label><input type=\\\"checkbox\\\" formControlName=\\\"fuzzySearch\\\" [(ngModel)]='fuzzySearch' (change)=\\\"clearResults(false);onSubmit()\\\"> Fuzzy Search</label>\\r\\n                        </div>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-sm-1 fuzzyoption\\\" *ngIf=\\\"fuzzySearch\\\" >\\r\\n                        <label>Fuzzy Distance</label>\\r\\n                    </div>\\r\\n                    <div class=\\\"col-sm-1 fuzzyoption\\\" *ngIf=\\\"fuzzySearch\\\">\\r\\n                        <input type=\\\"range\\\" formControlName=\\\"DLDistance\\\" [(ngModel)]='DLDistance' max=\\\"2\\\" min=\\\"0\\\" step=\\\"1\\\" (change)=\\\"clearResults(false);onSubmit()\\\" />\\r\\n                    </div>\\r\\n                </div>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"row\\\">\\r\\n                <div class=\\\"form-group col-md-4 col-sm-4\\\">\\r\\n                    <label for=\\\"choiceRegimes\\\">Regime</label>\\r\\n                    <select class=\\\"form-control\\\" id=\\\"choiceRegimes\\\" name=\\\"choiceRegimes\\\" formControlName=\\\"regime\\\" [(ngModel)]=\\\"selectedRegime\\\">\\r\\n                  <option value=\\\"\\\">- Any regime -</option>\\r\\n                  <option *ngFor=\\\"let r of regimes\\\" [ngValue]=\\\"r.RegimeName\\\">{{r.RegimeName}}</option>\\r\\n                </select>\\r\\n                </div>\\r\\n                <div class=\\\"form-group col-md-4 col-sm-4\\\">\\r\\n                    <label for=\\\"choiceGroupType\\\">Group Type</label>\\r\\n                    <select class=\\\"form-control\\\" id=\\\"choiceGroupType\\\" name=\\\"choiceGroupType\\\" formControlName=\\\"groupType\\\" [(ngModel)]=\\\"selectedGroupType\\\">\\r\\n                  <option value=\\\"\\\">- Any group type -</option>\\r\\n                  <option *ngFor=\\\"let gt of groupTypes\\\" [ngValue]=\\\"gt.GroupTypeDescription\\\">{{gt.GroupTypeDescription}}</option>\\r\\n                </select>\\r\\n                </div>\\r\\n                <div class=\\\"form-group col-md-4 col-sm-4\\\">\\r\\n                    <label for=\\\"choiceGroupStatus\\\">Group Status</label>\\r\\n                    <select class=\\\"form-control\\\" id=\\\"choiceGroupStatus\\\" name=\\\"choiceGroupStatus\\\" formControlName=\\\"groupStatus\\\" [(ngModel)]=\\\"selectedGroupStatus\\\">\\r\\n                  <option value=\\\"\\\">- Any group status -</option>\\r\\n                  <option *ngFor=\\\"let gs of groupStatuses\\\" [ngValue]=\\\"gs.GrpStatus\\\">{{gs.Description}}</option>\\r\\n                </select>\\r\\n                </div>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <button type=\\\"submit\\\" id=\\\"btnSearch\\\" class=\\\"btn btn-primary\\\" [disabled]=\\\"isSearching\\\">Search</button>\\r\\n                <button type=\\\"default\\\" id=\\\"btnClear\\\" class=\\\"btn btn-default\\\" (click)=\\\"clearResults(true)\\\"> Clear </button>\\r\\n                <span *ngIf='isSearching'><img id=\\\"loadingSearch\\\" alt=\\\"Loading Search Results\\\" src=\\\"../assets/img/progress.gif\\\"></span>\\r\\n            </div>\\r\\n        </form>\\r\\n    </div>\\r\\n</div>\\r\\n<h2 *ngIf=\\\"results && results.length === 0 && !isSearching\\\">No results found. Please try a different search term or increase the fuzzy distance of your search.</h2>\\r\\n<h2 *ngIf=\\\"noCriteria\\\">Please enter a search criteria.</h2>\\r\\n\\r\\n<div *ngIf=\\\"!groupResults && results && results.length > 0\\\">\\r\\n    <h2>Showing page {{currPage}} of {{totalPages}} pages, {{((currPage-1) * pagingSize) + 1}} - {{(currPage-1) * pagingSize + results.length}} of {{count}} results.\\r\\n        <span class=\\\"btn-group\\\" aria-label=\\\"nextpreviousbuttongroup\\\">\\r\\n            <button *ngIf=\\\"currPage > 1\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Previous\\\" (click)=\\\"prevResult()\\\" [disabled]=\\\"isSearching\\\"><span class=\\\"glyphicon glyphicon-chevron-left\\\" aria-hidden=\\\"true\\\"></span> Previous results</button>\\r\\n        <button *ngIf=\\\"currPage < totalPages\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Next\\\" (click)=\\\"nextResult()\\\" [disabled]=\\\"isSearching\\\">Next results <span class=\\\"glyphicon glyphicon-chevron-right\\\" aria-hidden=\\\"true\\\"></span></button>\\r\\n        <select  class=\\\"btn btn-link\\\" *ngIf=\\\"pages.length > 0\\\" id=\\\"selectPage\\\" name=\\\"selectPage\\\" class=\\\"form-control\\\" style=\\\"width:auto;\\\" [value]=\\\"currPage\\\" (change)=\\\"gotoPage($event.target.value)\\\">\\r\\n            <option value=\\\"1\\\">Go to page</option>\\r\\n             <option *ngFor=\\\"let p of pages\\\" [ngValue]=\\\"p\\\">{{p}}</option>\\r\\n         </select>\\r\\n       </span>\\r\\n    </h2>\\r\\n</div>\\r\\n<div *ngIf=\\\"groupResults && results && results.length > 0\\\">\\r\\n    <h2>Showing page {{currPage}} of {{totalPages}} pages, {{results.length}} groups, {{((currPage-1) * pagingSize) + 1}} - {{(currPage-1) * pagingSize + entitiesCount}} of {{count}} results.\\r\\n     <span class=\\\"btn-group\\\" aria-label=\\\"nextpreviousbuttongroup\\\">\\r\\n      <button *ngIf=\\\"currPage > 1\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Previous\\\" (click)=\\\"prevResult()\\\" [disabled]=\\\"isSearching\\\"><span class=\\\"glyphicon glyphicon-chevron-left\\\" aria-hidden=\\\"true\\\"></span> Previous results</button>\\r\\n      <button *ngIf=\\\"currPage < totalPages\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Next\\\" (click)=\\\"nextResult()\\\" [disabled]=\\\"isSearching\\\">Next results <span class=\\\"glyphicon glyphicon-chevron-right\\\" aria-hidden=\\\"true\\\"></span></button>\\r\\n      <select  class=\\\"btn btn-link\\\" *ngIf=\\\"pages.length > 0\\\" id=\\\"selectPage\\\" name=\\\"selectPage\\\" class=\\\"form-control\\\" style=\\\"width:auto;\\\" [value]=\\\"currPage\\\" (change)=\\\"gotoPage($event.target.value)\\\">\\r\\n          <option value=\\\"1\\\">Go to page</option>\\r\\n           <option *ngFor=\\\"let p of pages\\\" [ngValue]=\\\"p\\\">{{p}}</option>\\r\\n       </select>\\r\\n    </span>\\r\\n  </h2>\\r\\n  </div>\\r\\n<div *ngIf=\\\"!groupResults\\\" class=\\\"panel panel-primary\\\" [hidden]=\\\"!results||results.length === 0\\\">\\r\\n    <table class=\\\"table table-bordered table-hover table-sm table-responsive\\\" id=\\\"table\\\">\\r\\n        <thead class=\\\"table-heading\\\">\\r\\n            <tr>\\r\\n                <th>Group ID</th>\\r\\n                <th>Name</th>\\r\\n                <th>Regime</th>\\r\\n                <th>Status</th>\\r\\n                <th>Type</th>\\r\\n                <th>Nationality</th>\\r\\n                <th>Address</th>\\r\\n                <th>Post Zip Code</th>\\r\\n                <th>Country</th>\\r\\n                <th>Date of Birth</th>\\r\\n                <th>Town of Birth</th>\\r\\n                <th>Country of Birth</th>\\r\\n                <th>Position</th>\\r\\n                <th>Passport Details</th>\\r\\n                <th>National Identification Number</th>\\r\\n                <th>Date Listed</th>\\r\\n                <th>Group Last Updated</th>\\r\\n                <th>Other Information</th>\\r\\n            </tr>\\r\\n        </thead>\\r\\n        <tbody>\\r\\n            <tr *ngFor=\\\"let res of results;let index =index;let isOdd=odd;let isEven=even\\\" [class.odd]=\\\"isOdd\\\" [class.even]=\\\"isEven\\\">\\r\\n                <td>{{res.GroupID}}</td>\\r\\n                <td><a [routerLink]=\\\"'/suspect/' + res.GroupID\\\">{{res.NameTitle}} {{res.Name6}} {{res.name1}} {{res.name2}} {{res.name3}} {{res.name4}} {{res.name5}}</a></td>\\r\\n                <td>{{res.RegimeName}}</td>\\r\\n                <td>{{res.GroupStatus}}</td>\\r\\n                <td>{{res.GroupTypeDescription}}</td>\\r\\n                <td>{{res.Nationality}}</td>\\r\\n                <td>{{res.address1}} {{res.address2}} {{res.address3}} {{res.address4}} {{res.address5}} {{res.address6}}</td>\\r\\n                <td>{{res.PostCode}}</td>\\r\\n                <td>{{res.Country}}</td>\\r\\n                <td>{{res.DOB}}</td>\\r\\n                <td>{{res.TownOfBirth}}</td>\\r\\n                <td>{{res.CountryOfBirth}}</td>\\r\\n                <td>{{res.Position}}</td>\\r\\n                <td>{{res.PassportDetails}}</td>\\r\\n                <td>{{res.NationalIdNumber}}</td>\\r\\n                <td>{{res.DateListed | date: 'dd/MM/yyyy'}}</td>\\r\\n                <td>{{res.LastUpdated | date: 'dd/MM/yyyy'}}</td>\\r\\n                <td>{{res.OtherInformation}}</td>\\r\\n            </tr>\\r\\n        </tbody>\\r\\n    </table>\\r\\n</div>\\r\\n<div *ngIf=\\\"groupResults\\\" class=\\\"\\\" [hidden]=\\\"!results||results.length === 0\\\">\\r\\n    <div class=\\\"col-md-12 bg-primary\\\">\\r\\n      <div class=\\\"col-md-1 strong\\\"><span class=\\\"strong\\\">Group Count</span></div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Group ID</div>\\r\\n      <div class=\\\"col-md-2 strong\\\">Name</div>\\r\\n      <div class=\\\"col-md-2 strong\\\">Regime</div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Status</div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Type</div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Nationality</div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Country</div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Date of Birth</div>\\r\\n      <div class=\\\"col-md-1 strong\\\">Date Listed</div>\\r\\n    </div>\\r\\n    <div *ngFor=\\\"let res of results;let index =index;let isOdd=odd;let isEven=even\\\" class=\\\"col-md-12\\\" [class.odd]=\\\"isOdd\\\" [class.even]=\\\"isEven\\\">\\r\\n            <div class=\\\"col-md-1 groupresultcell\\\"><button data-toggle=\\\"collapse\\\" class=\\\"btn btn-link groupresultcell\\\" [attr.data-target]=\\\"'#group' + res.value\\\">Show {{res.entities.length}} of {{res.count}} groups</button></div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.value}}</div>\\r\\n             <div class=\\\"col-md-2\\\"><a [routerLink]=\\\"'/suspect/' + res.primary.GroupID\\\">{{res.primary.NameTitle}} {{res.primary.Name6}} {{res.primary.name1}} {{res.primary.name2}} {{res.primary.name3}} {{res.primary.name4}} {{res.primary.name5}}</a></div>\\r\\n             <div class=\\\"col-md-2\\\">{{res.primary.RegimeName}}</div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.primary.GroupStatus}}</div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.primary.GroupTypeDescription}}</div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.primary.Nationality}}</div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.primary.Country}}</div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.primary.DateOfBirth}}</div>\\r\\n             <div class=\\\"col-md-1\\\">{{res.primary.DateListed | date: 'dd/MM/yyyy'}}</div>\\r\\n             <div class=\\\"col-md-12\\\" [attr.id]=\\\"'group' + res.value\\\" class=\\\"collapse\\\">\\r\\n               <table class=\\\"table table-bordered table-hover table-sm table-responsive\\\">\\r\\n                   <thead class=\\\"table-headinggrouped\\\">\\r\\n                     <tr>\\r\\n                       <th>Group ID</th>\\r\\n                       <th>Name</th>\\r\\n                       <th>Regime</th>\\r\\n                       <th>Status</th>\\r\\n                       <th>Type</th>\\r\\n                       <th>Nationality</th>\\r\\n                       <th>Address</th>\\r\\n                       <th>Post Zip Code</th>\\r\\n                       <th>Country</th>\\r\\n                       <th>Date of Birth</th>\\r\\n                       <th>Town of Birth</th>\\r\\n                       <th>Country of Birth</th>\\r\\n                       <th>Position</th>\\r\\n                       <th>Passport Details</th>\\r\\n                       <th>National Identification Number</th>\\r\\n                       <th>Date Listed</th>\\r\\n                       <th>Group Last Updated</th>\\r\\n                       <th>Other Information</th>\\r\\n                     </tr>\\r\\n                   </thead>\\r\\n                   <tbody>\\r\\n                     <tr *ngFor=\\\"let ent of res.entities;let index = index;let isOdd=odd;let isEven=even\\\" [class.odd]=\\\"isOdd\\\" [class.even]=\\\"isEven\\\">\\r\\n                       <td>{{ent.GroupID}}</td>\\r\\n                       <td><a [routerLink]=\\\"'/suspect/' + ent.GroupID\\\">{{ent.NameTitle}} {{ent.Name6}} {{ent.name1}} {{ent.name2}} {{ent.name3}} {{ent.name4}} {{ent.name5}}</a></td>\\r\\n                       <td>{{ent.RegimeName}}</td>\\r\\n                       <td>{{ent.GroupStatus}}</td>\\r\\n                       <td>{{ent.GroupTypeDescription}}</td>\\r\\n                       <td>{{ent.Nationality}}</td>\\r\\n                       <td>{{ent.address1}} {{ent.address2}} {{ent.address3}} {{ent.address4}} {{ent.address5}} {{ent.address6}}</td>\\r\\n                       <td>{{ent.PostCode}}</td>\\r\\n                       <td>{{ent.Country}}</td>\\r\\n                       <td>{{ent.DateOfBirth}}</td>\\r\\n                       <td>{{ent.TownOfBirth}}</td>\\r\\n                       <td>{{ent.CountryOfBirth}}</td>\\r\\n                       <td>{{ent.Position}}</td>\\r\\n                       <td>{{ent.PassportDetails}}</td>\\r\\n                       <td>{{ent.NationalIdNumber}}</td>\\r\\n                       <td>{{ent.DateListed | date: 'dd/MM/yyyy'}}</td>\\r\\n                       <td>{{ent.LastUpdated | date: 'dd/MM/yyyy'}}</td>\\r\\n                       <td>{{ent.OtherInformation}}</td>\\r\\n                     </tr>\\r\\n                   </tbody>\\r\\n                 </table>\\r\\n               </div>\\r\\n     </div>\\r\\n   </div>\\r\\n<div *ngIf=\\\"!groupResults && results && results.length > 0\\\">\\r\\n    <h2>Showing page {{currPage}} of {{totalPages}} pages, {{((currPage-1) * pagingSize) + 1}} - {{(currPage-1) * pagingSize + results.length}} of {{count}} results.\\r\\n        <span class=\\\"btn-group\\\" aria-label=\\\"nextpreviousbuttongroup\\\">\\r\\n            <button *ngIf=\\\"currPage > 1\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Previous\\\" (click)=\\\"prevResult()\\\" [disabled]=\\\"isSearching\\\"><span class=\\\"glyphicon glyphicon-chevron-left\\\" aria-hidden=\\\"true\\\"></span> Previous results</button>\\r\\n        <button *ngIf=\\\"currPage < totalPages\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Next\\\" (click)=\\\"nextResult()\\\" [disabled]=\\\"isSearching\\\">Next results <span class=\\\"glyphicon glyphicon-chevron-right\\\" aria-hidden=\\\"true\\\"></span></button>\\r\\n        <select  class=\\\"btn btn-link\\\" *ngIf=\\\"pages.length > 0\\\" id=\\\"selectPage\\\" name=\\\"selectPage\\\" class=\\\"form-control\\\" style=\\\"width:auto;\\\" [value]=\\\"currPage\\\" (change)=\\\"gotoPage($event.target.value)\\\">\\r\\n            <option value=\\\"1\\\">Go to page</option>\\r\\n             <option *ngFor=\\\"let p of pages\\\" [ngValue]=\\\"p\\\">{{p}}</option>\\r\\n         </select>\\r\\n       </span>\\r\\n    </h2>\\r\\n</div>\\r\\n<div *ngIf=\\\"groupResults && results && results.length > 0\\\">\\r\\n    <h2>Showing page {{currPage}} of {{totalPages}} pages, {{results.length}} groups, {{((currPage-1) * pagingSize) + 1}} - {{(currPage-1) * pagingSize + entitiesCount}} of {{count}} results.\\r\\n     <span class=\\\"btn-group\\\" aria-label=\\\"nextpreviousbuttongroup\\\">\\r\\n      <button *ngIf=\\\"currPage > 1\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Previous\\\" (click)=\\\"prevResult()\\\" [disabled]=\\\"isSearching\\\"><span class=\\\"glyphicon glyphicon-chevron-left\\\" aria-hidden=\\\"true\\\"></span> Previous results</button>\\r\\n      <button *ngIf=\\\"currPage < totalPages\\\" type=\\\"button\\\" class=\\\"btn btn-link\\\" id=\\\"Next\\\" (click)=\\\"nextResult()\\\" [disabled]=\\\"isSearching\\\">Next results <span class=\\\"glyphicon glyphicon-chevron-right\\\" aria-hidden=\\\"true\\\"></span></button>\\r\\n      <select  class=\\\"btn btn-link\\\" *ngIf=\\\"pages.length > 0\\\" id=\\\"selectPage\\\" name=\\\"selectPage\\\" class=\\\"form-control\\\" style=\\\"width:auto;\\\" [value]=\\\"currPage\\\" (change)=\\\"gotoPage($event.target.value)\\\">\\r\\n          <option value=\\\"1\\\">Go to page</option>\\r\\n           <option *ngFor=\\\"let p of pages\\\" [ngValue]=\\\"p\\\">{{p}}</option>\\r\\n       </select>\\r\\n    </span>\\r\\n  </h2>\\r\\n  </div>\\r\\n<div class=\\\"row\\\">\\r\\n  <div class=\\\"col-md-2 vdp\\\">\\r\\n    <!-- Large modal -->\\r\\n    <button type=\\\"button\\\" class=\\\"btn btn-primary vdpbutton\\\" data-toggle=\\\"modal\\\" data-target=\\\".vdpmodal\\\">Report a vulnerability</button>\\r\\n    <div class=\\\"modal fade vdpmodal\\\" tabindex=\\\"-1\\\" role=\\\"dialog\\\" aria-labelledby=\\\"vdpmodal\\\">\\r\\n      <div class=\\\"modal-dialog modal-lg\\\" role=\\\"document\\\">\\r\\n        <div class=\\\"modal-content\\\">\\r\\n          <div class=\\\"modal-header\\\">\\r\\n            <button type=\\\"button\\\" class=\\\"close\\\" data-dismiss=\\\"modal\\\" aria-label=\\\"Close\\\">\\r\\n              <span aria-hidden=\\\"true\\\">&times;</span>\\r\\n            </button>\\r\\n            <h3 class=\\\"modal-title\\\">Report a security vulnerability</h3>\\r\\n          </div>\\r\\n          <div class=\\\"modal-body\\\">\\r\\n            <div class=\\\"bs-callout bs-callout-info\\\">\\r\\n              <h4>Introduction</h4>\\r\\n            </div>\\r\\n            <div>\\r\\n              <p>\\r\\n              HM Treasury is the government's economic and finance ministry. We maintain control over public spending, set the direction of the UK's economic policy and work to achieve strong and sustainable economic growth.\\r\\n              Read more about what we do on <a target=\\\"_blank\\\" href=\\\"https://www.gov.uk/government/organisations/hm-treasury/about\\\">GOV.UK.</a>\\r\\n              </p>\\r\\n              <p>\\r\\n              This vulnerability disclosure policy applies to any vulnerabilities you are considering reporting to us (the \\\"Organisation\\\").  We recommend reading this vulnerability disclosure policy fully before you report a vulnerability and always acting in compliance with it.\\r\\n              </p>\\r\\n              <p>\\r\\n              We value those who take the time and effort to report security vulnerabilities according to this policy. However, we do not offer monetary rewards for vulnerability disclosures.\\r\\n              </p>\\r\\n            </div>\\r\\n            <div class=\\\"bs-callout bs-callout-info\\\">\\r\\n              <h4>Reporting </h4>\\r\\n            </div>\\r\\n            <div>\\r\\n              <p>\\r\\n                If you believe you have found a security vulnerability, please submit your report to us using the following link:\\r\\n              </p>\\r\\n              <p>\\r\\n                <a target=\\\"_blank\\\" href=\\\"https://hackerone.com/5b00200a-bbcf-444b-bb29-dee4869a4e55/embedded_submissions/new\\\">https://hackerone.com/5b00200a-bbcf-444b-bb29-dee4869a4e55/embedded_submissions/new</a>\\r\\n              </p>\\r\\n                In your report please include details of:\\r\\n                <ul>\\r\\n                  <li>The website, IP or page where the vulnerability can be observed.</li>\\r\\n                  <li>A brief description of the type of vulnerability, for example; \\\"XSS vulnerability\\\".</li>\\r\\n                  <li>Steps to reproduce. These should be a benign, non-destructive, proof of concept. This helps to ensure that the report can be triaged quickly and accurately. It also reduces the likelihood of duplicate reports, or malicious exploitation of some vulnerabilities, such as sub-domain takeovers.</li>\\r\\n                </ul>\\r\\n            </div>\\r\\n            <div class=\\\"bs-callout bs-callout-info\\\">\\r\\n              <h4>What to expect </h4>\\r\\n            </div>\\r\\n            <div>\\r\\n              <p>\\r\\n              After you have submitted your report, we will respond to your report within 5 working days and aim to triage your report within 10 working days. We’ll also aim to keep you informed of our progress.\\r\\n              <p>\\r\\n              <p>\\r\\n              Priority for remediation is assessed by looking at the impact, severity and exploit complexity. Vulnerability reports might take some time to triage or address. You are welcome to enquire on the status but should avoid doing so more than once every 14 days. This allows our teams to focus on the remediation.\\r\\n              </p>\\r\\n              <p>\\r\\n              We will notify you when the reported vulnerability is remediated, and you may be invited to confirm that the solution covers the vulnerability adequately.\\r\\n              </p>\\r\\n              <p>\\r\\n              Once your vulnerability has been resolved, we welcome requests to disclose your report. We’d like to unify guidance to affected users, so please do continue to coordinate public release with us.\\r\\n              </p>\\r\\n            </div>\\r\\n            <div class=\\\"bs-callout bs-callout-info\\\">\\r\\n              <h4>Guidance </h4>\\r\\n            </div>\\r\\n            <div>\\r\\n              <p>\\r\\n                You must NOT:\\r\\n              </p>\\r\\n                <ul>\\r\\n                  <li>Break any applicable law or regulations.</li>\\r\\n                  <li>Access unnecessary, excessive or significant amounts of data. </li>\\r\\n                  <li>Modify data in the Organisation's systems or services. </li>\\r\\n                  <li>Use high-intensity invasive or destructive scanning tools to find vulnerabilities. </li>\\r\\n                  <li>Attempt or report any form of denial of service, e.g. overwhelming a service with a high volume of requests. </li>\\r\\n                  <li>Disrupt the Organisation's services or systems. </li>\\r\\n                  <li>Submit reports detailing non-exploitable vulnerabilities, or reports indicating that the services do not fully align with \\\"best practice\\\", for example missing security headers. </li>\\r\\n                  <li>Submit reports detailing TLS configuration weaknesses, for example “weak” cipher suite support or the presence of TLS1.0 support. </li>\\r\\n                  <li>Communicate any vulnerabilities or associated details other than by means described in the published security.txt. </li>\\r\\n                  <li>Social engineer, ‘phish’ or physically attack the Organisation's staff or infrastructure. </li>\\r\\n                  <li>Demand financial compensation in order to disclose any vulnerabilities. </li>\\r\\n                </ul>\\r\\n                <p>\\r\\n                  You must:\\r\\n                </p>\\r\\n                  <ul>\\r\\n                    <li>Always comply with data protection rules and must not violate the privacy of the Organisation’s users, staff, contractors, services or systems. You must not, for example, share, redistribute or fail to properly secure data retrieved from the systems or services.</li>\\r\\n                    <li>Securely delete all data retrieved during your research as soon as it is no longer required or within 1 month of the vulnerability being resolved, whichever occurs first (or as otherwise required by data protection law).</li>\\r\\n                  </ul>\\r\\n            </div>\\r\\n            <div class=\\\"bs-callout bs-callout-info\\\">\\r\\n              <h4>Legalities</h4>\\r\\n            </div>\\r\\n            <div>\\r\\n              <p>\\r\\n              You are solely responsible for your own compliance with law.  Complying with this policy is not intended to provide you with any protection if you breach the law, nor does this policy give you permission to act in any manner that is inconsistent with the law as it applies to you or the Organisation.\\r\\n              </p>\\r\\n              <p>\\r\\n              However, if legal action is initiated by a third party against you and you have complied with this policy, we can take steps to make it known that your actions were conducted in compliance with this policy.\\r\\n              </p>\\r\\n            </div>\\r\\n          </div>\\r\\n        </div>\\r\\n      </div>\\r\\n    </div>\\r\\n  </div>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/searchresults.component.html\n// module id = ../../../../../src/app/searchresults/searchresults.component.html\n// module chunks = 1","import { Component, OnInit, ViewContainerRef, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormControl, FormBuilder, Validators  } from '@angular/forms';\r\nimport { SearchService } from '../searchresults/search.service';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport { OdataService } from '../services/odata/odata.service';\r\nimport { RequestTypes, IUrlOptions } from '../services/service.model';\r\nimport { SessionService } from '../services/session/session.service';\r\nimport { GroupedResult } from '../models/GroupedResult';\r\nimport { SearchResult } from '../models/SearchResult';\r\n\r\n@Component({\r\n  selector: 'ofsi-searchresults',\r\n  templateUrl: './searchresults.component.html',\r\n  styleUrls: ['./searchresults.component.css'],\r\n  providers : [ SearchService ]\r\n})\r\nexport class SearchresultsComponent implements OnInit {\r\n\r\n  public pagingSize = 100;\r\n  public totalPages = 0;\r\n  public currPage = 1;\r\n  public pages: Array<number> = [];\r\n  public results: any;\r\n  public entitiesCount: number = 0;\r\n  public groupCount: number = 0;\r\n  public count : number;\r\n  public regimes: any;\r\n  public groupTypes: any;\r\n  public groupStatuses: any;\r\n  public selectedRegime: string;\r\n  public selectedGroupType: string;\r\n  public selectedGroupStatus: string;\r\n  public title : string = '';\r\n  public searchTerm : string = ''\r\n  public fuzzySearch  : boolean = false;\r\n  public DLDistance : number = 0;\r\n  public isSearching : boolean = false;\r\n  public noCriteria : boolean = false;\r\n  public groupResults: boolean = false;\r\n\r\n\r\n\r\n  public searchForm = new FormGroup({\r\n    searchTerm : new FormControl(),\r\n    groupResults : new FormControl(),\r\n    fuzzySearch : new FormControl(),\r\n    DLDistance : new FormControl(),\r\n    regime: new FormControl(),\r\n    groupType: new FormControl(),\r\n    groupStatus: new FormControl()\r\n  });\r\n\r\n\r\n  constructor(private _searchService: SearchService, private odata: OdataService, private session: SessionService){\r\n    this.DLDistance = 0;\r\n    this.selectedRegime = '';\r\n    this.selectedGroupType = '';\r\n    this.selectedGroupStatus = '';\r\n  }\r\n\r\n  ngOnInit() {\r\n    //this.search();\r\n    let urlOptions: IUrlOptions = <IUrlOptions>{};\r\n    urlOptions.restOfUrl = 'regimes?$filter=RegimeDisabled eq false&$select=RegimeId,RegimeName&$orderby=RegimeName';\r\n    this.odata.Request(RequestTypes.get, urlOptions).subscribe(\r\n      data => this.regimes = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    urlOptions.restOfUrl = 'grouptypes?$select=GroupTypeId,GroupTypeDescription&$orderby=GroupTypeDescription';\r\n    this.odata.Request(RequestTypes.get, urlOptions).subscribe(\r\n      data => this.groupTypes = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    urlOptions.restOfUrl = \"groupstatus?$filter=GrpStatus eq 'A' or GrpStatus eq 'I'&$select=GrpStatus,Description&$orderby=GrpStatus\";\r\n    this.odata.Request(RequestTypes.get, urlOptions).subscribe(\r\n      data => this.groupStatuses = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.getSessionValues();\r\n  }\r\n\r\n  clearResults(resetForm: boolean = true){\r\n    this.results = undefined;\r\n    this.currPage = 1;\r\n    this.totalPages = 0;\r\n    this.pages = [];\r\n    this.isSearching = false;\r\n    this.resetSessionValues();\r\n    if(resetForm){\r\n      this.resetForm();\r\n    }\r\n  }\r\n\r\n  onSubmit(){\r\n    //console.log('Regime:' + this.selectedRegime);\r\n    //console.log('GroupType:' +  this.selectedGroupType);\r\n    //console.log('GroupStatus:' + this.selectedGroupStatus);\r\n    //console.log('searchTerm:' + this.searchForm.value.searchTerm);\r\n    if (this.searchForm.value.searchTerm && this.searchForm.value.searchTerm.trim().length > 0){\r\n        //console.log('searchTerm:' + this.searchForm.value.searchTerm);\r\n        this.isSearching = true;\r\n        this.noCriteria = false;\r\n        if(this.currPage === undefined){\r\n          this.currPage = 1;\r\n        }\r\n        const skip : number = this.currPage === 1 ? 0 : this.pagingSize * (this.currPage - 1);\r\n\r\n        let luceneSearch : string = '';\r\n        if (this.searchForm.value.fuzzySearch) {\r\n            luceneSearch = this.searchForm.value.searchTerm.trim();\r\n            if(!this.searchForm.value.DLDistance){\r\n              this.searchForm.value.DLDistance = 0;\r\n            }\r\n            luceneSearch += '~' + this.searchForm.value.DLDistance.toString() + \"&queryType=full\";\r\n        }else{\r\n            luceneSearch = encodeURIComponent(this.searchForm.value.searchTerm.trim());\r\n        }\r\n\r\n        let filterString: string = '&$filter=';\r\n\r\n        if(this.selectedRegime || this.selectedGroupType) {\r\n          if (this.selectedRegime) {\r\n            filterString += 'RegimeName eq \\'' + this.selectedRegime.replace('\\'', '\\'\\'') + '\\'';\r\n           }\r\n           if (this.selectedGroupType) {\r\n             if (!filterString.endsWith(`&$filter=`)) {\r\n              filterString += ' and ';\r\n             }\r\n             filterString += 'GroupTypeDescription eq \\'' + this.selectedGroupType.replace('\\'', '\\'\\'') + '\\'';\r\n           }\r\n          }\r\n          if (this.selectedGroupStatus) {\r\n             if (!filterString.endsWith(`&$filter=`)) {\r\n              filterString += ' and ';\r\n             }\r\n             filterString += 'GrpStatus eq \\'' + this.selectedGroupStatus.replace('\\'', '\\'\\'') + '\\'';\r\n           }else{\r\n            if (!filterString.endsWith(`&$filter=`)) {\r\n              filterString += ' and ';\r\n             }\r\n             filterString += '(GrpStatus eq \\'' + 'A' + '\\'' + ' or ' + 'GrpStatus eq \\'' + 'I' + '\\')';\r\n           }\r\n\r\n           luceneSearch += filterString;\r\n\r\n           if(luceneSearch.length > 0){\r\n            luceneSearch += '&';\r\n            }\r\n            luceneSearch += '$top=' + this.pagingSize + '&$skip=' + skip.toString() + '&$count=true';\r\n            luceneSearch += '&$orderby=search.score() desc,Name6,name1,name2,name3';\r\n            if(this.searchForm.value.groupResults){\r\n              luceneSearch += '&facet=GroupID,count:20000';\r\n            }\r\n            //console.log(\"search: \" + luceneSearch);\r\n            this._searchService.getResults(luceneSearch, this.searchForm.value.groupResults).subscribe\r\n            (\r\n              data => {\r\n                this.onSearchSuccess(data);\r\n                }, this.errorReturned\r\n            );\r\n     }else{\r\n      this.noCriteria = true;\r\n     }\r\n }\r\n\r\n onSearchSuccess(data: any){\r\n\r\n  if(this.searchForm.value.groupResults){\r\n    //console.log(data['@search.facets'].GroupID.length);\r\n    this.count = parseInt(data['@odata.count']);\r\n    this.entitiesCount = 0;\r\n    this.groupCount = data['@search.facets'].GroupID.length;\r\n    let tempResult = data['@search.facets'].GroupID;\r\n    let tempEntities : Array<SearchResult> = data['value'];\r\n    let groupedResults = new Array<GroupedResult>();\r\n    tempResult.forEach(element => {\r\n      const groupedResult : GroupedResult = new GroupedResult();\r\n      groupedResult.value = element.value;\r\n      groupedResult.count = element.count;\r\n      let filteredEntities = tempEntities.filter(g => g.GroupID === element.value);\r\n      if(filteredEntities.length > 0){\r\n        this.entitiesCount += filteredEntities.length;\r\n        groupedResult.entities = filteredEntities;\r\n        let result = new SearchResult();\r\n        result.address1 = filteredEntities[0].address1;\r\n        result.address2 = filteredEntities[0].address2;\r\n        result.address3 = filteredEntities[0].address3;\r\n        result.address4 = filteredEntities[0].address4;\r\n        result.address5 = filteredEntities[0].address5;\r\n        result.address6 = filteredEntities[0].address6;\r\n        result.Country = filteredEntities[0].Country;\r\n        result.CountryOfBirth = filteredEntities[0].CountryOfBirth;\r\n        result.DateListed = filteredEntities[0].DateListed;\r\n        result.DateOfBirth = filteredEntities[0].DateOfBirth;\r\n        result.GroupID = filteredEntities[0].GroupID;\r\n        result.GroupTypeDescription = filteredEntities[0].GroupTypeDescription;\r\n        result.GroupStatus = filteredEntities[0].GroupStatus;\r\n        result.LastUpdated = filteredEntities[0].LastUpdated;\r\n        result.name1 = filteredEntities[0].name1;\r\n        result.name2 = filteredEntities[0].name2;\r\n        result.name3 = filteredEntities[0].name3;\r\n        result.name4 = filteredEntities[0].name4;\r\n        result.name5 = filteredEntities[0].name5;\r\n        result.Name6 = filteredEntities[0].Name6;\r\n        result.Nationality = filteredEntities[0].Nationality;\r\n        result.NationalIdNumber = filteredEntities[0].NationalIdNumber;\r\n        result.OtherInformation = filteredEntities[0].OtherInformation;\r\n        result.PassportDetails = filteredEntities[0].PassportDetails;\r\n        result.PostCode = filteredEntities[0].PostCode;\r\n        result.RegimeName = filteredEntities[0].RegimeName;\r\n        result.TownOfBirth = filteredEntities[0].TownOfBirth;\r\n\r\n        groupedResult.primary = result;\r\n\r\n        groupedResults.push(groupedResult);\r\n      }\r\n    });\r\n    this.results = groupedResults;\r\n    //console.log(\"result\");\r\n    //console.log(this.results);\r\n\r\n  }else{\r\n    this.results = new Array<SearchResult>();\r\n    this.results = data['value'];\r\n    /*\r\n    data['value'].forEach(element => {\r\n      let res = <ISearchResult>element;\r\n      res.score = element[\"@search.score\"];\r\n      this.results.push(res);\r\n    });\r\n    */\r\n  }\r\n  this.count = parseInt(data['@odata.count']);\r\n  this.totalPages = this.count > 0 ? Math.floor(this.count / this.pagingSize) + 1: 1;\r\n  this.pages = [];\r\n  if(this.totalPages > 1){\r\n    for(let x=0 ; x < this.totalPages; x++){\r\n      this.pages.push(x+1);\r\n    }\r\n  }\r\n  this.updateSessionValues();\r\n  this.isSearching = false;\r\n\r\n }\r\n\r\n nextResult(){\r\n  this.currPage++;\r\n  this.onSubmit();\r\n\r\n}\r\n\r\nprevResult(){\r\n  this.currPage--;\r\n  this.onSubmit();\r\n}\r\n\r\ngotoPage(pageNum: number){\r\n  this.currPage = pageNum;\r\n  this.onSubmit();\r\n}\r\n\r\nupdateSessionValues(){\r\n  this.session.searchTerm = this.searchForm.value.searchTerm;\r\n  this.session.fuzzySearch = this.searchForm.value.fuzzySearch;\r\n  this.session.DLDistance = this.searchForm.value.DLDistance;\r\n  this.session.selectedGroupStatus = this.selectedGroupStatus;\r\n  this.session.selectedGroupType = this.selectedGroupType;\r\n  this.session.selectedRegime = this.selectedRegime;\r\n  this.session.results = this.results;\r\n  this.session.count = this.count;\r\n  this.session.currPage = this.currPage;\r\n  this.session.totalPages = this.totalPages;\r\n  this.session.pages = this.pages;\r\n  this.session.entitiesCount = this.entitiesCount;\r\n  this.session.groupCount = this.groupCount;\r\n  this.session.groupResults = this.searchForm.value.groupResults;\r\n}\r\n\r\nresetSessionValues(){\r\n  //console.log('resetting session values');\r\n  this.session.searchTerm = '';\r\n  this.session.fuzzySearch = false;\r\n  this.session.DLDistance = 0;\r\n  this.session.selectedGroupStatus = '';\r\n  this.session.selectedGroupType = '';\r\n  this.session.selectedRegime = '';\r\n  this.session.results = undefined;\r\n  this.session.count = 0;\r\n  this.session.totalPages = 0;\r\n  this.session.currPage = 1;\r\n  this.session.pages = [];\r\n  this.session.entitiesCount = 0;\r\n  this.session.groupCount = 0;\r\n  this.session.groupResults = false;\r\n}\r\n\r\nresetForm(){\r\n  this.searchForm.setValue({\r\n    searchTerm : '',\r\n    fuzzySearch : false,\r\n    DLDistance : 0,\r\n    regime: '',\r\n    groupType : '',\r\n    groupStatus : '',\r\n    groupResults : false\r\n  });\r\n}\r\n\r\ngetSessionValues(){\r\n\r\n  if(this.session.searchTerm){\r\n    this.searchForm.setValue({\r\n      searchTerm : this.session.searchTerm,\r\n      fuzzySearch : this.session.fuzzySearch,\r\n      DLDistance : this.session.DLDistance,\r\n      regime: this.session.selectedRegime,\r\n      groupType : this.session.selectedGroupType,\r\n      groupStatus : this.session.selectedGroupStatus,\r\n      groupResults : this.session.groupResults\r\n    });\r\n\r\n    this.fuzzySearch = this.session.fuzzySearch;\r\n    //this.DLDistance = this.session.DLDistance;\r\n    this.selectedRegime = this.session.selectedRegime;\r\n    this.selectedGroupType = this.session.selectedGroupType;\r\n    this.selectedGroupStatus = this.session.selectedGroupStatus;\r\n\r\n    this.fuzzySearch = this.session.fuzzySearch;\r\n    this.results = this.session.results;\r\n    this.count = this.session.count;\r\n    this.currPage = this.session.currPage;\r\n    this.totalPages = this.session.totalPages;\r\n    this.pages = this.session.pages;\r\n    this.entitiesCount = this.session.entitiesCount;\r\n    this.groupCount = this.session.groupCount;\r\n    this.groupResults = this.session.groupResults;\r\n  }\r\n}\r\n\r\n  errorReturned(err : any) {\r\n     //console.log(err);\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/searchresults/searchresults.component.ts","import { Injectable } from '@angular/core';\r\nimport {Http, RequestOptionsArgs, Response} from \"@angular/http\";\r\nimport {Observable} from 'rxjs/Rx';\r\nimport {RequestTypes, IUrlOptions, ServiceBase} from '../../services/service.model';\r\n\r\n@Injectable()\r\nexport class OdataService extends  ServiceBase {\r\n    constructor( protected host: string, protected http: Http) { super(host, http) } \r\n}\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/odata/odata.service.ts","import {Http} from '@angular/http';\r\nimport {OdataService} from './odata.service';\r\nimport {environment} from '../../../environments/environment';\r\n\r\nexport function provideODataService(http: Http){\r\n    return new OdataService(environment.odataApi, http);\r\n}\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/odata/odata.serviceProvider.ts","import { Http, RequestOptionsArgs, Response, Headers } from '@angular/http';\r\nimport { Observable } from 'rxjs/Rx';\r\n\r\n\r\nexport enum RequestTypes {\r\n    get,\r\n    post,\r\n    put,\r\n    delete,\r\n    patch,\r\n    head,\r\n    options\r\n}\r\nexport interface IUrlOptions {\r\n    restOfUrl: string;\r\n}\r\n\r\nexport class ServiceBase{\r\n\r\n    constructor(protected host: string,\r\n        protected http: Http) { }\r\n\r\n    private constructUrl(urlOptions: IUrlOptions): string {\r\n            return this.host + urlOptions.restOfUrl;\r\n    }\r\n\r\n    // T specifies a generic output of function\r\n    public Request<T>(requestType: RequestTypes, urlOptions: IUrlOptions, body?: any, options?: RequestOptionsArgs): Observable<T> {\r\n        let response: Observable<Response>;\r\n        // True in case of post, put and patch\r\n        // True in case of post, put and patch if options is empty\r\n        // True in case of get, delete, head and options\r\n        // True in case of get, delete, head and options, if options is empty\r\n        if (body && options) {\r\n        response = this.http[RequestTypes[requestType]](\r\n            this.constructUrl(urlOptions),\r\n            body,\r\n            options);\r\n        } else if (body) {\r\n        response = this.http[RequestTypes[requestType]](\r\n            this.constructUrl(urlOptions),\r\n            body);\r\n        } else if (options) {\r\n        response = this.http[RequestTypes[requestType]](\r\n            this.constructUrl(urlOptions),\r\n            options);\r\n        } else {\r\n        response = this.http[RequestTypes[requestType]](\r\n            this.constructUrl(urlOptions),\r\n            options);\r\n        }\r\n\r\n        return response.map((res) => <T>res.json());\r\n    }\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/service.model.ts","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class SessionService {\r\n\r\n    searchTerm: string = '';\r\n    fuzzySearch  : boolean = false;\r\n    groupResults: boolean = false;\r\n    DLDistance : number = 0;\r\n    selectedRegime: string;\r\n    selectedGroupType: string;\r\n    selectedGroupStatus: string;\r\n    results: any;\r\n    count: number;\r\n    currPage: number;\r\n    totalPages: number;\r\n    pages: Array<number> = [];\r\n    entitiesCount: number;\r\n    groupCount: number;\r\n    constructor() { }  \r\n}\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/services/session/session.service.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".button-align {\\r\\n    text-align: right;\\r\\n    margin-bottom: 20px !important;\\r\\n }\\r\\n #s4-workspace {\\r\\n     background: #fff;\\r\\n }\\r\\n #tabstrip h2 {\\r\\n     font-weight: lighter;\\r\\n     font-size: 5em;\\r\\n     line-height: 1;\\r\\n     padding: 0 0 0 30px;\\r\\n     margin: 0;\\r\\n }\\r\\n#tabstrip h2 span {\\r\\n    background: none;\\r\\n    padding-left: 5px;\\r\\n    font-size: .3em;\\r\\n    vertical-align: top;\\r\\n}\\r\\n #tabstrip p {\\r\\n     margin: 0;\\r\\n     padding: 10px 0px 0px 0px;\\r\\n }\\r\\n .row-height {\\r\\n     padding: 15px;\\r\\n }\\r\\n .confirm {\\r\\n     padding-top: 1em;\\r\\n }\\r\\n .valid {\\r\\n     color: green;\\r\\n }\\r\\n .invalid {\\r\\n     color: red;\\r\\n }\\r\\n span.k-widget.k-tooltip-validation {\\r\\n     display: inline-block;\\r\\n     width: 160px;\\r\\n     text-align: left;\\r\\n     border: 0;\\r\\n     padding: 0;\\r\\n     margin: 0;\\r\\n     background: none;\\r\\n     box-shadow: none;\\r\\n     color: red;\\r\\n }\\r\\n .k-tooltip-validation .k-warning {\\r\\n     display: none;\\r\\n }\\r\\n #mainBody {\\r\\n     width: 995px;\\r\\n     margin-left: 0px;\\r\\n     background: #fff;\\r\\n }\\r\\n .k-widget.k-calendar .k-nav-fast {\\r\\n     background: #41cac0 !Important;\\r\\n }\\r\\n .k-autocomplete.k-state-default, .k-dropdown-wrap.k-state-default, .k-numeric-wrap.k-state-default, .k-picker-wrap.k-state-default {\\r\\n     border-color: #fff;\\r\\n }\\r\\n .tabstrip-items .k-block, .k-button, .k-draghandle, .k-grid-header, .k-grouping-header, .k-header, .k-pager-wrap, .k-toolbar, .k-treemap-tile, html .km-pane-wrapper .k-header {\\r\\n     background-color: #fff;\\r\\n     border-bottom: #fff;\\r\\n }\\r\\n .tabstrip-items .k-autocomplete, .k-button, .k-draghandle, .k-dropdown-wrap, .k-grid-header, .k-grouping-header, .k-header, .k-numeric-wrap, .k-pager-wrap, .k-panelbar .k-tabstrip-items .k-item, .k-picker-wrap, .k-progressbar, .k-state-highlight, .k-tabstrip-items .k-item, .k-textbox, .k-toolbar, .km-pane-wrapper > .km-pane > .km-view > .km-content {\\r\\n     background-image: none;\\r\\n     background-position: 50% 50%;\\r\\n     background-color: #fff;\\r\\n }\\r\\n .tabstrip-items .k-panelbar > li.k-state-default > .k-link, .k-tabstrip-items .k-state-default .k-link {\\r\\n     color: #444 !Important;\\r\\n }\\r\\n .tabstrip-items .k-panelbar .k-tabstrip-items .k-state-active, .k-tabstrip-items .k-state-active {\\r\\n     background-color: #fff;\\r\\n     background-image: none;\\r\\n     border-color: #00b0ff;\\r\\n     border-top: #666 solid 2px;\\r\\n     border-bottom: 0;\\r\\n }\\r\\n li.k-item.k-state-hover {\\r\\n     background: #f8f9f9 !Important;\\r\\n     border-bottom: 0 !Important;\\r\\n }\\r\\n .k-tabstrip-items .k-items.k-state-hover {\\r\\n     border-top: 3px solid #CCC;\\r\\n     border-bottom: 0px;\\r\\n }\\r\\n li.k-state-active.k-item.k-tab-on-top.k-state-default.k-first {\\r\\n     border-top: 3px solid #2980b9;\\r\\n     border-right: #eee solid 1px;\\r\\n     border-bottom: 0px;\\r\\n     border-left: 0 !Important;\\r\\n }\\r\\n .tabstrip-items .k-panelbar .k-tabstrip-items .k-state-active, .k-tabstrip-items .k-state-active {\\r\\n     border-top: 3px solid #2980b9 !Important;\\r\\n     border-left: #eee solid 1px !Important;\\r\\n     border-right: #eee solid 1px !Important;\\r\\n     border-bottom: 0px !Important;\\r\\n }\\r\\n .k-tabstrip .k-tabstrip-items {\\r\\n     border-bottom: #eee solid 1px !Important;\\r\\n }\\r\\n .tabstrip_ts_active {\\r\\n     border: 0;\\r\\n }\\r\\n .k-autocomplete.k-state-default, .k-dropdown-wrap.k-state-default, .k-numeric-wrap.k-state-default, .k-picker-wrap.k-state-default {\\r\\n     border-color: #ccc;\\r\\n     background: #fff;\\r\\n }\\r\\n .k-input, .k-multiselect-wrap, .k-textbox > input, input.k-textbox, input.k-textbox:hover, textarea.k-textbox, textarea.k-textbox:hover {\\r\\n     background-color: #fafafa;\\r\\n }\\r\\n .k-autocomplete .k-input, .k-dropdown-wrap .k-input, .k-numeric-wrap .k-input, .k-picker-wrap .k-input, .k-selectbox .k-input, .k-textbox > input {\\r\\n     background-color: #fafafa;\\r\\n     border-color: #ccc;\\r\\n }\\r\\n input[type=password], input[type=text], input[type=file], select, textarea, .sp-peoplepicker-topLevel, .sp-peoplepicker-topLevelDisabled, .sp-peoplepicker-autoFillContainer, .ms-inputBox {\\r\\n     background-color: #fafafa;\\r\\n     border-color: #ccc;\\r\\n     border-radius: 1px 0 0 1px;\\r\\n     padding: 0;\\r\\n     text-indent: 10px;\\r\\n }\\r\\n.k-input, .k-multiselect-wrap, .k-textbox > input, input.k-textbox, input.k-textbox:hover, textarea.k-textbox, textarea.k-textbox:hover {\\r\\n    background-color: #fafafa;\\r\\n    border: 1px solid #ccc;\\r\\n}\\r\\n input, k-multiselect-wrap k-floatwrap {\\r\\n     height: 2.394em;\\r\\n     padding: 5px 10px;\\r\\n     border-radius: 1px 0 0 1px;\\r\\n     border: 1px solid #ccc;\\r\\n }\\r\\n textarea.k-textbox, textarea {\\r\\n     height: 6em;\\r\\n     padding-top: 10px;\\r\\n }\\r\\n input.k-textbox {\\r\\n     border-bottom: 1px solid #ccc !Important;\\r\\n }\\r\\n .btn-primary {\\r\\n    background: #41cac0 !Important;\\r\\n    border: 0px !Important;\\r\\n    color: #fff !Important;\\r\\n    margin-bottom: 18px;\\r\\n }\\r\\n.btn-primary:hover {\\r\\n    background: #39b2a9 !Important;\\r\\n}\\r\\n.btn-submit {\\r\\n    background: #41cac0 !Important;\\r\\n    border: 0px !Important;\\r\\n    color: #fff !Important;\\r\\n    width: 100px;\\r\\n    font-size: 16px;\\r\\n    height: 40px;\\r\\n }\\r\\n.btn-submit:hover {\\r\\n    background: #39b2a9 !Important;\\r\\n}\\r\\n .k-widget.k-calendar .k-nav-fast {\\r\\n     background: #39b2a9 !Important;\\r\\n }\\r\\n .btn-block + .btn-block {\\r\\n     margin-top: 5px;\\r\\n }\\r\\n /*.btn-warning {\\r\\n     background-color: #f1c500;\\r\\n     border-color: #f1c500;\\r\\n     color: #FFFFFF;\\r\\n    margin-bottom: 20px;\\r\\n }*/\\r\\n .btn-lg {\\r\\n     padding: 10px 16px;\\r\\n     font-size: 18px;\\r\\n     line-height: 1.3333333;\\r\\n     border-radius: 6px;\\r\\n }\\r\\n .btn-warning {\\r\\n     color: #fff;\\r\\n     background-color: #f0ad4e;\\r\\n     border-color: #eea236;\\r\\n     margin-bottom: 20px !important;\\r\\n }\\r\\n.btn-warning:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n.btn-cancel {\\r\\n    color: #fff;\\r\\n    background-color: #f0ad4e;\\r\\n    border-color: #eea236;\\r\\n    width: 100px;\\r\\n    font-size: 16px;\\r\\n    height: 40px;\\r\\n }\\r\\n.btn-cancel:hover {\\r\\n    background-color: #ec971f;\\r\\n}\\r\\n .transact {\\r\\n     padding: 10px 10px 10px 0;\\r\\n     width: 13%;\\r\\n }\\r\\n .transact-extra {\\r\\n     padding: 10px 10px 10px 0;\\r\\n     width: 20%;\\r\\n }\\r\\n .totals {\\r\\n     font-size: 18px;\\r\\n }\\r\\n .address-table {\\r\\n     margin-top: 20px;\\r\\n }\\r\\n .alias-table {\\r\\n     margin-top: 20px;\\r\\n }\\r\\n .buttonrow {\\r\\n     padding: 10px 0 10px 0;\\r\\n     width: 12%;\\r\\n }\\r\\n #grandTotalContainerDiv {\\r\\n     font-size: 15px;\\r\\n }\\r\\n #currencyTotalContainerDiv {\\r\\n     margin-bottom: 20px;\\r\\n }\\r\\n #currencyTotalContainerDiv > tr {\\r\\n     border-bottom: 1px solid #ccc;\\r\\n }\\r\\n .s4-wpcell-plain .ms-webpartzone-cell .ms-webpart-cell-vertical .ms-fullWidth {\\r\\n     border: 0 !IMPORTANT;\\r\\n }\\r\\n .ms-webpartzone-cell {\\r\\n     box-shadow: none;\\r\\n }\\r\\n input[type='radio'], input[type='checkbox'] {\\r\\n     border: none;\\r\\n }\\r\\n span.k-widget.k-tooltip-validation {\\r\\n     width: 100%;\\r\\n     color: #cc0000;\\r\\n     font-size: 14px;\\r\\n     padding: 5px 0;\\r\\n     border-top: 3px solid #cc0000;\\r\\n     border-radius: 0;\\r\\n }\\r\\n .curved-topper {\\r\\n     -webkit-border-top-left-radius: 5px;\\r\\n     -webkit-border-top-right-radius: 5px;\\r\\n     -moz-border-radius-topleft: 5px;\\r\\n     -moz-border-radius-topright: 5px;\\r\\n     border-top-left-radius: 5px;\\r\\n     border-top-right-radius: 5px;\\r\\n     background-color: #666;\\r\\n     font-weight: bold;\\r\\n     font-size: 13px;\\r\\n }\\r\\n .dropdown-header{\\r\\n     padding-top: 7px;\\r\\n     padding-bottom: 7px;\\r\\n }\\r\\n .required {\\r\\n     color: #cc0000;\\r\\n     font-weight: bold;\\r\\n     font-size: 13px;\\r\\n }    \\r\\n .rowUnderline {\\r\\n     border-bottom: 1px solid #ccc;\\r\\n }\\r\\n .media-left{\\r\\n     text-align:left;\\r\\n     width:90px;\\r\\n }\\r\\nselect, select option {\\r\\n    height: 2.394em;\\r\\n}\\r\\ninput {\\r\\n    vertical-align: middle;\\r\\n}\\r\\nselect, textarea, input[type='text']{\\r\\n    width:100%;\\r\\n}\\r\\n.checkbox-group {\\r\\n    height: 59px;\\r\\n}\\r\\n.checkbox-formlabel {\\r\\n    display: table-cell;\\r\\n}\\r\\n.nav-tabs>li>a, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover {\\r\\n    border: none;\\r\\n    margin-right: 0px;\\r\\n}\\r\\n.nav-tabs>li:not(.active) {\\r\\n    border-top: 1px solid #2980b9 !Important;\\r\\n    border-bottom: 0px !Important;\\r\\n}\\r\\n.nav-tabs>li:not(.active)>a:hover {\\r\\n    border-top: 1px solid #2980b9 !Important;\\r\\n}\\r\\n.nav-tabs>li.active {\\r\\n     border-top: 3px solid #2980b9 !Important;\\r\\n     border-left: 1px solid #eee !Important;\\r\\n     border-right: 1px solid #eee !Important;\\r\\n     border-bottom: 0px transparent !Important;\\r\\n}\\r\\n.topBorder{\\r\\n    border-top: 1px solid #ccc;\\r\\n    padding-top: 10px !important;\\r\\n}\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/suspect/suspect.component.css\n// module id = ../../../../../src/app/suspect/suspect.component.css\n// module chunks = 1","module.exports = \"<h1>\\r\\n  Group ID: {{this.groupId > 0 ? this.groupId : \\\"To Be Generated\\\"}}\\r\\n</h1>\\r\\n\\r\\n<div id=\\\"groupForm\\\">\\r\\n  <div style=\\\"border:1px solid #ccc\\\">\\r\\n    <ul class=\\\"nav nav-tabs\\\">\\r\\n      <li class=\\\"active\\\"><a data-toggle=\\\"tab\\\" href=\\\"#groupDetails\\\">\\r\\n                Group Details</a>\\r\\n      </li>\\r\\n      <li *ngIf=ShowIndividual><a data-toggle=\\\"tab\\\" href=\\\"#individualDetails\\\">\\r\\n          Individual</a>\\r\\n      </li>\\r\\n      <li *ngIf=ShowOrg><a data-toggle=\\\"tab\\\" href=\\\"#orgDetails\\\">\\r\\n          Entity</a>\\r\\n      </li>\\r\\n\\r\\n      <li *ngIf=ShowVessel><a data-toggle=\\\"tab\\\" href=\\\"#vesselDetails\\\">\\r\\n          Ship</a>\\r\\n      </li>\\r\\n\\r\\n      <li><a data-toggle=\\\"tab\\\" href=\\\"#Addresses\\\">\\r\\n                Addresses</a>\\r\\n      </li>\\r\\n      <li><a data-toggle=\\\"tab\\\" href=\\\"#Alias\\\">\\r\\n                Aliases</a>\\r\\n      </li>\\r\\n      <li><a data-toggle=\\\"tab\\\" href=\\\"#Regimes\\\">\\r\\n                Regimes and Date of Births</a>\\r\\n      </li>\\r\\n      <li><a data-toggle=\\\"tab\\\" href=\\\"#AdditionalSanctions\\\">\\r\\n        Additional Financial Sanctions</a>\\r\\n      </li>\\r\\n    </ul>\\r\\n    <div class=\\\"tab-content\\\">\\r\\n      <!--Group Details-->\\r\\n      <div id=\\\"groupDetails\\\" class=\\\"tab-pane fade in active\\\">\\r\\n        <form [formGroup]=\\\"groupDetailsForm\\\" novalidate>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-3 col-sm-3\\\">\\r\\n              <label for=\\\"groupId\\\">Group ID</label>\\r\\n              <input id=\\\"groupId\\\" type=\\\"text\\\" readonly=\\\"readonly\\\" formControlName=\\\"groupId\\\" placeholder=\\\"Group ID to be generated\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-2 col-sm-2\\\">\\r\\n              <label for=\\\"fCOId\\\">UK Sanctions List Ref</label>\\r\\n              <input type=\\\"text\\\" id=\\\"fCOId\\\" formControlName=\\\"fCOId\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-2 col-sm-2\\\">\\r\\n              <label for=\\\"unRef\\\">UN Ref</label>\\r\\n              <input type=\\\"text\\\" id=\\\"unRef\\\" formControlName=\\\"unRef\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-3 col-sm-3 checkbox-group\\\">\\r\\n              <label for=\\\"disabled\\\" class=\\\"checkbox-formlabel\\\">Disabled ?</label>\\r\\n              <input type=\\\"checkbox\\\" id=\\\"disabled\\\" formControlName=\\\"disabled\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-2\\\">\\r\\n              <label>Last Updated Date<span class=\\\"required\\\"> *</span></label>\\r\\n              <input type=\\\"date\\\" min=\\\"2000-01-01\\\" max=\\\"2050-01-01\\\" class=\\\"form-control\\\" formControlName=\\\"dateUpdated\\\" placeholder=\\\"yyyy-mm-dd\\\">\\r\\n            </div>\\r\\n      </div>\\r\\n        <div class=\\\"row row-height\\\">\\r\\n          <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n            <label for=\\\"groupType\\\">Group Type</label><span class=\\\"required\\\"> *</span>\\r\\n            <select id=\\\"groupType\\\" formControlName=\\\"groupType\\\" [(ngModel)]=\\\"selectedGroupType\\\">\\r\\n              <option value=\\\"\\\">Please select a group type</option>\\r\\n              <option *ngFor=\\\"let gt of groupTypes\\\" [value]=\\\"gt.GroupTypeId\\\">{{gt.GroupTypeDescription}}</option>\\r\\n            </select>\\r\\n            <div class=\\\"alert alert-danger\\\" *ngIf=\\\"groupTypeMessage\\\">\\r\\n                  {{groupTypeMessage}}\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n            <label for=\\\"groupStatus\\\">Group Status</label><span class=\\\"required\\\"> *</span>\\r\\n            <select id=\\\"groupStatus\\\" formControlName=\\\"groupStatus\\\" [(ngModel)]=\\\"selectedGroupStatus\\\">\\r\\n              <option value=\\\"\\\">Please select a group status</option>\\r\\n              <option *ngFor=\\\"let gs of groupStatuses\\\" [value]=\\\"gs.GrpStatus\\\">{{gs.Description}}</option>\\r\\n            </select>\\r\\n            <div class=\\\"alert alert-danger\\\" *ngIf=\\\"groupStatusMessage\\\">\\r\\n                  {{groupStatusMessage}}\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n            <label for=\\\"listingType\\\">Listing Type</label>\\r\\n            <select id=\\\"listingType\\\" formControlName=\\\"listingType\\\" [(ngModel)]=\\\"selectedListingType\\\">\\r\\n              <option value=\\\"\\\">Please select a listing type</option>\\r\\n              <option *ngFor=\\\"let lt of listingTypes\\\" [value]=\\\"lt.ID\\\">{{lt.ListingType1}}</option>\\r\\n            </select>\\r\\n          </div>\\r\\n\\r\\n       </div>\\r\\n\\r\\n          <div class=\\\"row row-height\\\">\\r\\n\\r\\n            <div class=\\\"col-md-4 col-sm-3\\\">\\r\\n                <label for=\\\"phoneNumber\\\">Phone Number</label>\\r\\n                <input type=\\\"text\\\" id=\\\"phoneNumber\\\" formControlName=\\\"phoneNumber\\\"/>\\r\\n              </div>\\r\\n\\r\\n              <div class=\\\"col-md-4 col-sm-3\\\">\\r\\n                <label for=\\\"website\\\">Web Site</label>\\r\\n                <input type=\\\"text\\\" id=\\\"website\\\" formControlName=\\\"website\\\"/>\\r\\n              </div>\\r\\n\\r\\n              <div class=\\\"col-md-4 col-sm-3\\\">\\r\\n                <label for=\\\"emailAddress\\\">Email Address</label>\\r\\n                <input type=\\\"text\\\" id=\\\"emailAddress\\\" formControlName=\\\"emailAddress\\\"/>\\r\\n              </div>\\r\\n\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"otherInformation\\\">Other Information</label>\\r\\n                <textarea id=\\\"otherInformation\\\" formControlName=\\\"otherInformation\\\"></textarea>\\r\\n              </div>\\r\\n              <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"uKStatementOfReasons\\\">UK Statement Of Reasons</label>\\r\\n                <textarea id=\\\"uKStatementOfReasons\\\" formControlName=\\\"uKStatementOfReasons\\\" rows=\\\"10\\\"></textarea>\\r\\n              </div>\\r\\n          </div>\\r\\n\\r\\n        </form>\\r\\n      </div>\\r\\n      <!--Individual Details-->\\r\\n      <div id=\\\"individualDetails\\\" class=\\\"tab-pane fade\\\">\\r\\n        <form [formGroup]=\\\"groupDetailsForm\\\" novalidate>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"position\\\">Position</label>\\r\\n                <input id=\\\"position\\\" type=\\\"text\\\" formControlName=\\\"position\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-3 col-sm-3\\\">\\r\\n                <label for=\\\"nationality\\\">Nationality</label>\\r\\n                <input id=\\\"nationality\\\" type=\\\"text\\\" formControlName=\\\"nationality\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-3 col-sm-3\\\">\\r\\n              <label for=\\\"gender\\\">Gender</label>\\r\\n              <input type=\\\"text\\\" id=\\\"gender\\\" formControlName=\\\"gender\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                  <label for=\\\"townOfBirth\\\">Town Of Birth</label>\\r\\n                  <input type=\\\"text\\\" id=\\\"townOfBirth\\\" formControlName=\\\"townOfBirth\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <label for=\\\"countryOfBirth\\\">Country Of Birth</label>\\r\\n              <input type=\\\"text\\\" id=\\\"countryOfBirth\\\" formControlName=\\\"countryOfBirth\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <label for=\\\"nationalIdNumber\\\">National ID Number</label>\\r\\n              <input id=\\\"nationalIdNumber\\\" type=\\\"text\\\" formControlName=\\\"nationalIdNumber\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <label for=\\\"passportNumber\\\">Passport Number</label>\\r\\n              <input id=\\\"passportNumber\\\" type=\\\"text\\\" formControlName=\\\"passportNumber\\\"/>\\r\\n             </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <label for=\\\"nationalIdDetails\\\">National ID Details</label>\\r\\n              <textarea id=\\\"nationalIdDetails\\\" formControlName=\\\"nationalIdDetails\\\"></textarea>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <label for=\\\"passportDetails\\\">Passport Details</label>\\r\\n              <textarea id=\\\"passportDetails\\\" formControlName=\\\"passportDetails\\\"></textarea>\\r\\n            </div>\\r\\n          </div>\\r\\n        </form>\\r\\n      </div>\\r\\n\\r\\n      <!--Org Details-->\\r\\n       <div id=\\\"orgDetails\\\" class=\\\"tab-pane fade\\\">\\r\\n        <form [formGroup]=\\\"groupDetailsForm\\\" novalidate>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"orgType\\\">Type of Entity</label>\\r\\n                <input id=\\\"orgType\\\" type=\\\"text\\\" formControlName=\\\"orgType\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"businessRegNumber\\\">Business Registration Number</label>\\r\\n                <input id=\\\"businessRegNumber\\\" type=\\\"text\\\" formControlName=\\\"businessRegNumber\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"parentCompany\\\">Parent Company</label>\\r\\n                <textarea id=\\\"parentCompany\\\" formControlName=\\\"parentCompany\\\"></textarea>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n                <label for=\\\"subsidiaries\\\">Subsidiaries</label>\\r\\n                <textarea id=\\\"subsidiaries\\\" formControlName=\\\"subsidiaries\\\"></textarea>\\r\\n            </div>\\r\\n          </div>\\r\\n        </form>\\r\\n      </div>\\r\\n\\r\\n      <!--Vessel Details-->\\r\\n      <div id=\\\"vesselDetails\\\" class=\\\"tab-pane fade\\\">\\r\\n        <form [formGroup]=\\\"groupDetailsForm\\\" novalidate>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"imoNumber\\\">IMO Number</label>\\r\\n                <input id=\\\"imoNumber\\\" type=\\\"text\\\" formControlName=\\\"imoNumber\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"currentOwners\\\">Current Owners</label>\\r\\n                <input id=\\\"currentOwners\\\" type=\\\"text\\\" formControlName=\\\"currentOwners\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n              <label for=\\\"previousOwners\\\">Previous Owners</label>\\r\\n              <input id=\\\"previousOwners\\\" type=\\\"text\\\" formControlName=\\\"previousOwners\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"flagOfVessel\\\">Flag Of Ship</label>\\r\\n                <input id=\\\"flagOfVessel\\\" type=\\\"text\\\" formControlName=\\\"flagOfVessel\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"previousFlags\\\">Previous Flags</label>\\r\\n                <input id=\\\"previousFlags\\\" type=\\\"text\\\" formControlName=\\\"previousFlags\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n              <label for=\\\"typeOfVessel\\\">Type Of Ship</label>\\r\\n              <input id=\\\"typeOfVessel\\\" type=\\\"text\\\" formControlName=\\\"typeOfVessel\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"tonnageOfVessel\\\">Tonnage Of Ship</label>\\r\\n                <input id=\\\"tonnageOfVessel\\\" type=\\\"text\\\" formControlName=\\\"tonnageOfVessel\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"lengthOfVessel\\\">Length Of Ship</label>\\r\\n                <input id=\\\"lengthOfVessel\\\" type=\\\"text\\\" formControlName=\\\"lengthOfVessel\\\" />\\r\\n            </div>\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n              <label for=\\\"yearBuilt\\\">Year Built</label>\\r\\n              <input id=\\\"yearBuilt\\\" type=\\\"text\\\" formControlName=\\\"yearBuilt\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-4 col-sm-4\\\">\\r\\n                <label for=\\\"hin\\\">Hull Identification Number</label>\\r\\n                <input id=\\\"hin\\\" type=\\\"text\\\" formControlName=\\\"hin\\\" />\\r\\n            </div>\\r\\n          </div>\\r\\n        </form>\\r\\n      </div>\\r\\n\\r\\n      <!--Addresses-->\\r\\n      <div id=\\\"Addresses\\\" class=\\\"tab-pane fade\\\">\\r\\n        <form [formGroup]=\\\"groupAddressForm\\\" novalidate>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-12 col-sm-12\\\">\\r\\n              <div formArrayName=\\\"addresses\\\" class=\\\"topBorder\\\">\\r\\n                <div *ngFor=\\\"let address of groupAddressForm.controls.addresses.controls; let i=index\\\" class=\\\"\\\">\\r\\n                  <div class=\\\"\\\" [formGroupName]=\\\"i\\\">\\r\\n                    <app-address [addressForm]=\\\"groupAddressForm.controls.addresses.controls[i]\\\" [index]=\\\"i\\\" ></app-address>\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <div class=\\\"clearfix spacer\\\"></div>\\r\\n            </div>\\r\\n          </div>\\r\\n        </form>\\r\\n      </div>\\r\\n      <!--Alias-->\\r\\n      <div id=\\\"Alias\\\" class=\\\"tab-pane fade\\\">\\r\\n        <form [formGroup]=\\\"groupAliasForm\\\" novalidate>\\r\\n          <div class=\\\"row row-height\\\">\\r\\n            <div class=\\\"col-md-12 col-sm-12\\\">\\r\\n              <div formArrayName=\\\"aliases\\\" class=\\\"topBorder\\\">\\r\\n                <div *ngFor=\\\"let alias of groupAliasForm.controls.aliases.controls; let i=index\\\" class=\\\"\\\">\\r\\n                  <div class=\\\"\\\" [formGroupName]=\\\"i\\\">\\r\\n                    <app-alias [aliasForm]=\\\"groupAliasForm.controls.aliases.controls[i]\\\" [index]=\\\"i\\\" [aliasTypes]=\\\"aliasTypes\\\" [aliasQualities]=\\\"aliasQualities\\\"></app-alias>\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <div class=\\\"clearfix spacer\\\"></div>\\r\\n            </div>\\r\\n          </div>\\r\\n        </form>\\r\\n      </div>\\r\\n      <!--Regimes and Date of Birth-->\\r\\n      <div id=\\\"Regimes\\\" class=\\\"tab-pane fade\\\">\\r\\n        <div class=\\\"row row-height\\\">\\r\\n          <form [formGroup]=\\\"groupRegimeDOBForm\\\" novalidate>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <div formArrayName=\\\"regimes\\\" class=\\\"topBorder\\\">\\r\\n                <div *ngFor=\\\"let regime of groupRegimeDOBForm.controls.regimes.controls; let i=index\\\" class=\\\"\\\">\\r\\n                  <div class=\\\"\\\" [formGroupName]=\\\"i\\\">\\r\\n                    <app-regime [regimeForm]=\\\"groupRegimeDOBForm.controls.regimes.controls[i]\\\" [index]=\\\"i\\\" [regimes]=\\\"regimes\\\"></app-regime>\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <div class=\\\"clearfix spacer\\\"></div>\\r\\n            </div>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <div formArrayName=\\\"dateofbirths\\\" class=\\\"topBorder\\\">\\r\\n                <div *ngFor=\\\"let dob of groupRegimeDOBForm.controls.dateofbirths.controls; let i=index\\\" class=\\\"\\\">\\r\\n                  <div class=\\\"\\\" [formGroupName]=\\\"i\\\">\\r\\n                    <app-dateofbirth [dobForm]=\\\"groupRegimeDOBForm.controls.dateofbirths.controls[i]\\\" [index]=\\\"i\\\"></app-dateofbirth>\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <div class=\\\"clearfix spacer\\\"></div>\\r\\n            </div>\\r\\n          </form>\\r\\n        </div>\\r\\n      </div>\\r\\n      <!--Additional Financial sanctions imposed -->\\r\\n      <div id=\\\"AdditionalSanctions\\\" class=\\\"tab-pane fade\\\">\\r\\n        <div class=\\\"row row-height\\\">\\r\\n          <form [formGroup]=\\\"groupAdditionalSanctionsForm\\\" novalidate>\\r\\n            <div class=\\\"col-md-6 col-sm-6\\\">\\r\\n              <div formArrayName=\\\"sanctions\\\" class=\\\"topBorder\\\">\\r\\n                <div *ngFor=\\\"let sanction of groupAdditionalSanctionsForm.controls.sanctions.controls; let i=index\\\" class=\\\"\\\">\\r\\n                  <div class=\\\"\\\" [formGroupName]=\\\"i\\\">\\r\\n                    <app-sanction [sanctionForm]=\\\"groupAdditionalSanctionsForm.controls.sanctions.controls[i]\\\" [index]=\\\"i\\\" [sanctionTypes]=\\\"sanctionTypes\\\"></app-sanction>\\r\\n                  </div>\\r\\n                </div>\\r\\n              </div>\\r\\n              <div class=\\\"clearfix spacer\\\"></div>\\r\\n            </div>\\r\\n          </form>\\r\\n          <form [formGroup]=\\\"groupDetailsForm\\\">\\r\\n            <div class=\\\"col-md-2 col-sm-2 pull-right\\\">\\r\\n              <div class=\\\"topBorder\\\">\\r\\n                <label>Date trust services sanctions imposed</label>\\r\\n                <input type=\\\"date\\\" min=\\\"2000-01-01\\\" max=\\\"2050-01-01\\\" class=\\\"form-control\\\" formControlName=\\\"dateAdditionalSanctions\\\" placeholder=\\\"yyyy-mm-dd\\\">\\r\\n              </div>\\r\\n              <div class=\\\"clearfix spacer\\\"></div>\\r\\n            </div>\\r\\n          </form>\\r\\n        </div>\\r\\n      </div>\\r\\n    </div>\\r\\n  </div>\\r\\n  <ul id=\\\"errors\\\" class=\\\"required\\\"></ul>\\r\\n  <p class=\\\"button-align\\\">\\r\\n    <button type=\\\"button\\\" class=\\\"k-button btn btn-cancel\\\" id=\\\"cancel\\\" (click)=\\\"goBack()\\\"><span class=\\\"glyphicon glyphicon-remove-sign\\\" aria-hidden=\\\"true\\\"></span> Cancel</button>\\r\\n  </p>\\r\\n</div>\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/suspect/suspect.component.html\n// module id = ../../../../../src/app/suspect/suspect.component.html\n// module chunks = 1","import { Component, OnInit, ElementRef, ViewContainerRef, ViewChild } from '@angular/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { Location } from '@angular/common';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { ReactiveFormsModule, AbstractControl, FormGroup, FormArray, FormControl, FormBuilder, Validators } from '@angular/forms';\r\nimport { RequestOptions, RequestMethod, RequestOptionsArgs, Http, Headers } from '@angular/http';\r\nimport { OdataService } from '../services/odata/odata.service';\r\nimport { RequestTypes, IUrlOptions } from '../services/service.model';\r\nimport { IGroup } from '../models/IGroup';\r\nimport { IAddress } from '../models/IAddress';\r\nimport { IAlias } from '../models/IAlias';\r\nimport { IGroupRegimeLink } from '../models/IGroupRegimeLink';\r\nimport { IDateOfBirth } from '../models/IDateofBirth';\r\nimport { IGroupSanction } from '../models/IGroupSanction';\r\n\r\n\r\n@Component({\r\n  moduleId: module.id,\r\n  templateUrl: './suspect.component.html',\r\n  styleUrls: ['./suspect.component.css']\r\n})\r\nexport class SuspectComponent implements OnInit {\r\n  public groupTypes: any;\r\n  public groupStatuses: any;\r\n  public listingTypes: any;\r\n  public group: IGroup;\r\n  public addresses: any;\r\n  public aliases: any;\r\n  public dateofbirths: any;\r\n  public groupRegimeLinks: any;\r\n  public selectedGroupType: string;\r\n  public selectedGroupStatus: string;\r\n  public selectedListingType: string;\r\n  public isSaving: boolean = false;\r\n  public groupId: number;\r\n  public groupDetailsForm: FormGroup;\r\n  public groupAddressForm: FormGroup;\r\n  public groupAliasForm: FormGroup;\r\n  public groupRegimeDOBForm: FormGroup;\r\n  private groupAdditionalSanctionsForm: FormGroup;\r\n  public aliasTypes: any;\r\n  public aliasQualities: any;\r\n  public regimes: any;\r\n  public urlOptions: IUrlOptions;\r\n  public addressIds: number[] = [];\r\n\r\n  public sanctionTypes: any;\r\n  public groupSanctions: any;\r\n\r\n\r\n  //Validation messages\r\n  private validationMessages= {\r\n    groupTypeMessage: {\r\n      required: \"Group Type is required\"\r\n    },\r\n    groupStatusMessage: {\r\n      required: \"Group Status is required\"\r\n    }\r\n  }\r\n\r\n  //Validation message properties\r\n  public groupTypeMessage: string = \"\";\r\n  public groupStatusMessage: string = \"\";\r\n\r\n\r\n\r\n  constructor(private odata: OdataService, private location: Location,\r\n   private route: ActivatedRoute, private router: Router, private fb: FormBuilder, private elements: ElementRef ) {\r\n\r\n  }\r\n\r\n  setValidationMessages(c: AbstractControl, messageProperty: string): void{\r\n    this[messageProperty] = \"\"\r\n    if((c.touched || c.dirty) && c.errors){\r\n      this[messageProperty] = Object.keys(c.errors).map(key =>\r\n        this.validationMessages[messageProperty][key]).\r\n        join('; ');\r\n      console.log(this[messageProperty]);\r\n    }\r\n\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.urlOptions = <IUrlOptions>{};\r\n\r\n    // get data for the child components\r\n    this.urlOptions.restOfUrl = 'aliastypes?$select=AliasTypeId,AliasTypeName&$orderby=AliasTypeName';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.aliasTypes = data['value'];\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = '/aliasqualities?$select=AliasQualityId,AliasQualityName&$orderby=AliasQualityName';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.aliasQualities = data['value'];\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = 'regimes?$filter=RegimeDisabled eq false&$select=RegimeId,RegimeName&$orderby=RegimeName';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => this.regimes = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    // get data to prepopulate parent form controls\r\n    this.urlOptions.restOfUrl = 'grouptypes?$select=GroupTypeId,GroupTypeDescription&$orderby=GroupTypeDescription';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => this.groupTypes = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = 'groupstatus?$select=GrpStatus,Description&$orderby=GrpStatus';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => this.groupStatuses = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = 'listingtypes?$select=ID,ListingType1&$orderby=ListingType1';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => this.listingTypes = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = '/SanctionTypes?$select=ID,SanctionType1&$orderby=ID';\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => this.sanctionTypes = data['value'],\r\n      error => console.error(error)\r\n    );\r\n\r\n    // intialising the forms in each bootstrap tab\r\n    this.groupDetailsForm = new FormGroup({\r\n\r\n          groupId: new FormControl({value: '', disabled: true}),\r\n          disabled: new FormControl({value: '', disabled: true}),\r\n          dateUpdated: new FormControl({value: '', disabled: true}, [Validators.required]),\r\n          groupType: new FormControl({value: '', disabled: true}, [ Validators.required]),\r\n          position: new FormControl({value: '', disabled: true}),\r\n          groupStatus: new FormControl({value: '', disabled: true}, [ Validators.required]),\r\n          listingType: new FormControl({value: '', disabled: true}),\r\n          townOfBirth: new FormControl({value: '', disabled: true}),\r\n          countryOfBirth: new FormControl({value: '', disabled: true}),\r\n          nationality: new FormControl({value: '', disabled: true}),\r\n          nationalIdNumber: new FormControl({value: '', disabled: true}),\r\n          passportDetails: new FormControl({value: '', disabled: true}),\r\n          otherInformation: new FormControl({value: '', disabled: true}),\r\n\r\n          fCOId: new FormControl({value: '', disabled: true}),\r\n          uKStatementOfReasons: new FormControl({value: '', disabled: true}),\r\n          phoneNumber: new FormControl({value: '', disabled: true}),\r\n          website: new FormControl({value: '', disabled: true}),\r\n          emailAddress: new FormControl({value: '', disabled: true}),\r\n          gender: new FormControl({value: '', disabled: true}),\r\n          orgType: new FormControl({value: '', disabled: true}),\r\n          subsidiaries: new FormControl({value: '', disabled: true}),\r\n          parentCompany: new FormControl({value: '', disabled: true}),\r\n          businessRegNumber: new FormControl({value: '', disabled: true}),\r\n          imoNumber: new FormControl({value: '', disabled: true}),\r\n          currentOwners: new FormControl({value: '', disabled: true}),\r\n          previousOwners: new FormControl({value: '', disabled: true}),\r\n          flagOfVessel: new FormControl({value: '', disabled: true}),\r\n          previousFlags: new FormControl({value: '', disabled: true}),\r\n          typeOfVessel: new FormControl({value: '', disabled: true}),\r\n          tonnageOfVessel: new FormControl({value: '', disabled: true}),\r\n          lengthOfVessel: new FormControl({value: '', disabled: true}),\r\n          yearBuilt: new FormControl({value: '', disabled: true}),\r\n          hin: new FormControl({value: '', disabled: true}),\r\n\r\n          passportNumber: new FormControl({value: '', disabled: true}),\r\n          nationalIdDetails: new FormControl({value: '', disabled: true}),\r\n          unRef: new FormControl({value: '', disabled: true}),\r\n          dateAdditionalSanctions:  new FormControl({value: '', disabled: true}),\r\n          sanctionTypes:  new FormControl({value: '', disabled: true}),\r\n    });\r\n\r\n    this.groupAddressForm = this.fb.group({\r\n            addresses: this.fb.array([])\r\n    });\r\n\r\n    this.groupAliasForm = this.fb.group({\r\n            aliases: this.fb.array([])\r\n    });\r\n\r\n    this.groupRegimeDOBForm = this.fb.group({\r\n            regimes: this.fb.array([]),\r\n            dateofbirths: this.fb.array([])\r\n    });\r\n\r\n    this.groupAdditionalSanctionsForm = this.fb.group({\r\n      sanctions: this.fb.array([])\r\n    });\r\n\r\n    // add address component row\r\n    this.addAddress();\r\n\r\n    // add alias component row\r\n    this.addAlias();\r\n\r\n    // add regime component row\r\n    this.addRegime();\r\n\r\n    // add regime component row\r\n    this.addDOB();\r\n\r\n     //add sanction component row\r\n     this.addSanction();\r\n\r\n    this.route.params.subscribe(params => {\r\n      this.groupId = +params['id'];\r\n\r\n      // check if form is on edit mode\r\n      if (this.groupId > 0) {\r\n        this.populateFormOnEdit(this.groupId);\r\n      } else {\r\n        this.group = <IGroup>new Object();\r\n      }\r\n    });\r\n\r\n    //validation rules\r\n    this.groupDetailsForm.get('groupType').valueChanges\r\n          .subscribe(value => console.log(JSON.stringify(value)));\r\n    //controls and groups for validation\r\n    const groupTypeControl = this.groupDetailsForm.get('groupType');\r\n    const groupStatusControl = this.groupDetailsForm.get('groupStatus');\r\n\r\n    groupTypeControl.valueChanges.subscribe(value =>\r\n      this.setValidationMessages(groupTypeControl, \"groupTypeMessage\"));\r\n\r\n    groupStatusControl.valueChanges.subscribe(value =>\r\n      this.setValidationMessages(groupStatusControl, \"groupStatusMessage\"));\r\n\r\n  }\r\n\r\n  public get ShowIndividual(): boolean{\r\n    if (this.groupTypes && this.groupDetailsForm.value.groupType) {\r\n      const ind = this.groupTypes.filter(g => (g.GroupTypeDescription === 'Individual'));\r\n      if (ind && this.groupDetailsForm.value.groupType.toString() === ind[0].GroupTypeId.toString()) {\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n   }\r\n\r\n   public get ShowOrg(): boolean{\r\n    if (this.groupTypes && this.groupDetailsForm.value.groupType) {\r\n      const ind = this.groupTypes.filter(g => (g.GroupTypeDescription === 'Entity'));\r\n      if (ind && this.groupDetailsForm.value.groupType.toString() === ind[0].GroupTypeId.toString()) {\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n   }\r\n\r\n   public get ShowVessel(): boolean{\r\n    if (this.groupTypes && this.groupDetailsForm.value.groupType) {\r\n      const ind = this.groupTypes.filter(g => (g.GroupTypeDescription === 'Ship'));\r\n      if (ind && this.groupDetailsForm.value.groupType.toString() === ind[0].GroupTypeId.toString()) {\r\n        return true;\r\n      }\r\n      return false;\r\n    }\r\n   }\r\n\r\n  // methods to support adding, innitialising  and removing addresses on the form.\r\n  initAddress() {\r\n    return this.fb.group({\r\n      id: [-1],\r\n      address1: [{value: '', disabled: true}, Validators.required],\r\n      address2: [{value: '', disabled: true}, Validators.required],\r\n      address3: [{value: '', disabled: true}],\r\n      address4: [{value: '', disabled: true}],\r\n      address5: [{value: '', disabled: true}],\r\n      address6: [{value: '', disabled: true}],\r\n      country: [{value: '', disabled: true}, Validators.required],\r\n      postcode: [{value: '', disabled: true}]\r\n    });\r\n}\r\n\r\naddAddress() {\r\n    const control = <FormArray>this.groupAddressForm.controls['addresses'];\r\n    const addrCtrl = this.initAddress();\r\n    control.push(addrCtrl);\r\n    /* subscribe to individual address value changes */\r\n    // addrCtrl.valueChanges.subscribe(x => {\r\n    //   console.log(x);y\r\n    // })\r\n}\r\n\r\n// methods to support adding, innitialising  and removing aliases on the form.\r\n  initAlias() {\r\n    return this.fb.group({\r\n      id: [-1],\r\n      aliasType: [{value: '', disabled: true}, Validators.required],\r\n      aliasQuality: [{value: '', disabled: true}, Validators.required],\r\n      surName: [{value: '', disabled: true}, Validators.required],\r\n      nameTitle: [{value: '', disabled: true}],\r\n      name1: [{value: '', disabled: true}],\r\n      name2: [{value: '', disabled: true}],\r\n      name3: [{value: '', disabled: true}],\r\n      name4: [{value: '', disabled: true}],\r\n      name5: [{value: '', disabled: true}],\r\n      NameNonLatinScript: [{value: '', disabled: true}],\r\n      NonLatinScriptType: [{value: '', disabled: true}],\r\n      NonLatinScriptLanguage: [{value: '', disabled: true}]\r\n    });\r\n}\r\n\r\naddAlias() {\r\n  const control = <FormArray>this.groupAliasForm.controls['aliases'];\r\n  const addrCtrl = this.initAlias();\r\n  control.push(addrCtrl);\r\n  /* subscribe to individual address value changes */\r\n  // addrCtrl.valueChanges.subscribe(x => {\r\n  //   console.log(x);\r\n  // })\r\n}\r\n\r\n  // methods to support adding, innitialising  and removing regimes on the form.\r\ninitRegime() {\r\n    return this.fb.group({\r\n      id: [-1],\r\n      regime: [{value: '', disabled: true}, Validators.required],\r\n      dateListed: [{value: '', disabled: true}, Validators.required],\r\n      dateDesignated: [{value: null, disabled: true}]\r\n    });\r\n}\r\n\r\naddRegime() {\r\n  const control = <FormArray>this.groupRegimeDOBForm.controls['regimes'];\r\n  const addrCtrl = this.initRegime();\r\n  control.push(addrCtrl);\r\n  /* subscribe to individual address value changes */\r\n  // addrCtrl.valueChanges.subscribe(x => {\r\n  //   console.log(x);\r\n  // })\r\n}\r\n\r\n// methods to support adding, innitialising  and removing regimes on the form.\r\ninitSanction() {\r\n  return this.fb.group({\r\n    id: [-1],\r\n    sanction:[{value: '', disabled: true}, Validators.required]\r\n  });\r\n}\r\n\r\naddSanction() {\r\n  const control = <FormArray>this.groupAdditionalSanctionsForm.controls['sanctions'];\r\n  const addrCtrl = this.initSanction();\r\n  control.push(addrCtrl);\r\n  /* subscribe to individual address value changes */\r\n  // addrCtrl.valueChanges.subscribe(x => {\r\n  //   console.log(x);\r\n  // })\r\n}\r\n\r\n  // methods to support adding, innitialising  and removing date of births on the form.\r\n  initDOB() {\r\n    return this.fb.group({\r\n      id: [-1],\r\n      dayOfBirth: [{value: '', disabled: true}],\r\n      monthOfBirth: [{value: '', disabled: true}],\r\n      yearOfBirth: [{value: '', disabled: true}, Validators.required]\r\n    });\r\n}\r\n\r\naddDOB() {\r\n  const control = <FormArray>this.groupRegimeDOBForm.controls['dateofbirths'];\r\n  const addrCtrl = this.initDOB();\r\n  control.push(addrCtrl);\r\n  /* subscribe to individual address value changes */\r\n  // addrCtrl.valueChanges.subscribe(x => {\r\n  //   console.log(x);\r\n  // })\r\n}\r\n\r\n\r\n // populates the forms on edit mode(i.e., when groupId > 0)\r\npopulateFormOnEdit(groupId: number){\r\n  this.urlOptions.restOfUrl = '/groups?$select=*&$filter=GroupId eq ' + this.groupId;\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.group = data['value'][0];\r\n\r\n        let dt = null;\r\n        let dtSanctions = null;\r\n\r\n        if (this.group.LastUpdatedYear && this.group.LastUpdatedMonth && this.group.LastUpdatedDay) {\r\n          dt = new Date(this.group.LastUpdatedYear, this.group.LastUpdatedMonth - 1, this.group.LastUpdatedDay);\r\n          dt.setMinutes(dt.getMinutes() - dt.getTimezoneOffset());\r\n        }\r\n\r\n        if (this.group.AdditionalSanctionsYear && this.group.AdditionalSanctionsMonth && this.group.AdditionalSanctionsDay) {\r\n          dtSanctions = new Date(this.group.AdditionalSanctionsYear, this.group.AdditionalSanctionsMonth - 1, this.group.AdditionalSanctionsDay);\r\n          dtSanctions.setMinutes(dtSanctions.getMinutes() - dtSanctions.getTimezoneOffset());\r\n        }\r\n\r\n        let desigDt = null;\r\n\r\n\r\n        this.groupDetailsForm.setValue({\r\n          groupId: this.group.GroupId,\r\n          disabled: this.group.disabled,\r\n          dateUpdated: dt ? dt.toISOString().substring(0, 10) : null,\r\n          groupType: this.group.fkGroupTypeId ? this.group.fkGroupTypeId : '',\r\n          position: this.group.position,\r\n          groupStatus: this.group.GroupStatus ? this.group.GroupStatus : '',\r\n          listingType: this.group.ListingTypeID ? this.group.ListingTypeID : '' ,\r\n          townOfBirth: this.group.TownOfBirth,\r\n          countryOfBirth: this.group.CountryOfBirth,\r\n          nationality: this.group.nationality,\r\n          nationalIdNumber: this.group.NationalIdNumber,\r\n          passportDetails: this.group.PassportDetails,\r\n          otherInformation: this.group.OtherInformation,\r\n\r\n          fCOId: this.group.FCOId,\r\n          uKStatementOfReasons: this.group.UKStatementOfReasons,\r\n          phoneNumber: this.group.PhoneNumber,\r\n          website: this.group.Website,\r\n          emailAddress: this.group.EmailAddress,\r\n          gender: this.group.Gender,\r\n          orgType: this.group.OrgType,\r\n          subsidiaries: this.group.Subsidiaries,\r\n          parentCompany: this.group.ParentCompany,\r\n          businessRegNumber: this.group.BusinessRegNumber,\r\n          imoNumber: this.group.IMONumber,\r\n          currentOwners: this.group.CurrentOwners,\r\n          previousOwners: this.group.PreviousOwners,\r\n          flagOfVessel: this.group.FlagOfVessel,\r\n          previousFlags: this.group.PreviousFlags,\r\n          typeOfVessel: this.group.TypeOfVessel,\r\n          tonnageOfVessel: this.group.TonnageOfVessel,\r\n          lengthOfVessel: this.group.LengthOfVessel,\r\n          yearBuilt: this.group.YearBuilt,\r\n          hin: this.group.HIN,\r\n\r\n          passportNumber: this.group.PassportNumber,\r\n          nationalIdDetails: this.group.NationalIdDetails,\r\n          unRef: this.group.UNRef,\r\n\r\n          dateAdditionalSanctions: dtSanctions ? dtSanctions.toISOString().substring(0, 10) : null,\r\n          sanctionTypes: '',\r\n\r\n        });\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = '/addresses?$select=*&$filter=fkGroupId eq ' + this.groupId;\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.addresses = data['value'];\r\n\r\n        let index = 0;\r\n        for(let addr of this.addresses){\r\n          this.addressIds.push(addr.AddressId);\r\n          let control = <FormArray>this.groupAddressForm.controls['addresses'];\r\n          if(index !== 0 && control.length >= 1) {\r\n            this.addAddress();\r\n          }\r\n\r\n          let grp = <FormGroup>control.controls[index];\r\n          grp.setValue({\r\n            id: addr.AddressId,\r\n            address1: addr.address1,\r\n            address2: addr.address2,\r\n            address3: addr.address3,\r\n            address4: addr.address4,\r\n            address5: addr.address5,\r\n            address6: addr.address6,\r\n            country: addr.country,\r\n            postcode: addr.PostCode\r\n          });\r\n          index++;\r\n        }\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = '/aliases?$select=*&$filter=fkGroupId eq ' + this.groupId;\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.aliases = data['value'];\r\n        let index = 0;\r\n        for(let alias of this.aliases){\r\n          let control = <FormArray>this.groupAliasForm.controls['aliases'];\r\n          if(index !== 0 && control.length >= 1) {\r\n            this.addAlias();\r\n          }\r\n\r\n          let grp = <FormGroup>control.controls[index];\r\n          // A slight delay found in getting the child component fully loaded\r\n          // when the child component binds dynamic data to the control during it's initialisation\r\n          // Applying a timeout of a second to overcome this till I have found a solid solution to the problem.\r\n          setTimeout(function(){\r\n            grp.setValue({\r\n              id: alias.AliasId,\r\n              aliasType: alias.fkAliasTypeId,\r\n              aliasQuality: alias.fkAliasQualityId,\r\n              surName: alias.SurnameOrOrgName,\r\n              nameTitle: alias.NameTitle,\r\n              name1: alias.name1,\r\n              name2: alias.name2,\r\n              name3: alias.name3,\r\n              name4: alias.name4,\r\n              name5: alias.name5,\r\n              NameNonLatinScript: alias.NameNonLatinScript,\r\n              NonLatinScriptType: alias.NonLatinScriptType,\r\n              NonLatinScriptLanguage: alias.NonLatinScriptLanguage\r\n            });\r\n        }, 1000);\r\n          index++;\r\n        }\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = '/datesofbirths?$select=*&$filter=fkGroupId eq ' + this.groupId;\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.dateofbirths = data['value'];\r\n        let index = 0;\r\n        for(let dateofbirth of this.dateofbirths){\r\n          let control = <FormArray>this.groupRegimeDOBForm.controls['dateofbirths'];\r\n          if(index !== 0 && control.length >= 1) {\r\n            this.addDOB();\r\n          }\r\n\r\n          let grp = <FormGroup>control.controls[index];\r\n          grp.setValue({\r\n            id: dateofbirth.DateOfBirthId,\r\n            dayOfBirth: dateofbirth.DayOfBirth,\r\n            monthOfBirth: dateofbirth.MonthOfBirth,\r\n            yearOfBirth: dateofbirth.YearOfBirth\r\n          });\r\n          index++;\r\n        }\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n    this.urlOptions.restOfUrl = '/groupregimelinks?$select=*&$filter=fkGroupId eq ' + this.groupId;\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.groupRegimeLinks = data['value'];\r\n        let index = 0;\r\n        for(let groupRegimeLink of this.groupRegimeLinks){\r\n          let control = <FormArray>this.groupRegimeDOBForm.controls['regimes'];\r\n          if(index !== 0 && control.length >= 1) {\r\n            this.addRegime();\r\n          }\r\n\r\n          let grp = <FormGroup>control.controls[index];\r\n          setTimeout(function(){\r\n\r\n          const dt = new Date(groupRegimeLink.DateListedYear, groupRegimeLink.DateListedMonth - 1, groupRegimeLink.DateListedDay);\r\n          dt.setMinutes(dt.getMinutes() - dt.getTimezoneOffset());\r\n\r\n          let dt1: Date = null;\r\n\r\n          if(groupRegimeLink.DateDesignatedYear && groupRegimeLink.DateDesignatedMonth && groupRegimeLink.DateDesignatedDay)\r\n          {\r\n            dt1 = new Date(groupRegimeLink.DateDesignatedYear, groupRegimeLink.DateDesignatedMonth - 1, groupRegimeLink.DateDesignatedDay);\r\n            dt1.setMinutes(dt1.getMinutes() - dt1.getTimezoneOffset());\r\n\r\n          }\r\n\r\n          grp.setValue({\r\n            id: groupRegimeLink.ID,\r\n            regime: groupRegimeLink.fkRegimeId,\r\n            dateListed: dt.toISOString().substring(0, 10),\r\n            dateDesignated:dt1 ? dt1.toISOString().substring(0, 10): null\r\n          });\r\n        }, 1000);\r\n          index++;\r\n        }\r\n      },\r\n      error => console.error(error)\r\n    );\r\n\r\n\r\n    this.urlOptions.restOfUrl = '/GroupSanctions?$select=*&$filter=GroupId eq ' + this.groupId;\r\n    this.odata.Request(RequestTypes.get, this.urlOptions).subscribe(\r\n      data => {\r\n        this.groupSanctions = data['value'];\r\n        let index = 0;\r\n        for(let groupSanction of this.groupSanctions){\r\n          let control = <FormArray>this.groupAdditionalSanctionsForm.controls['sanctions'];\r\n          if(index !== 0 && control.length >= 1) {\r\n            this.addSanction();\r\n          }\r\n\r\n          let grp = <FormGroup>control.controls[index];\r\n          setTimeout(function(){\r\n\r\n          grp.setValue({\r\n            id: groupSanction.ID,\r\n            sanction: groupSanction.SanctionTypeId\r\n          });\r\n        }, 1000);\r\n          index++;\r\n        }\r\n      },\r\n      error => console.error(error)\r\n    );\r\n}\r\n\r\n\r\n  goBack() {\r\n    this.location.back();\r\n  }\r\n\r\n\r\n  newGroup(){\r\n\r\n  }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/app/suspect/suspect.component.ts","export const environment = {\r\n  production: true,\r\n  name: 'live',\r\n  odataApi: \"https://sanctionssearchapp.ofsi.hmtreasury.gov.uk/odata/\",\r\n  searchApi: \"https://ofsiconlistsearch.search.windows.net/indexes/livesearch/docs?api-version=2021-04-30-Preview&search=\",\r\n  searchApiGrouped: \"https://ofsiconlistsearch.search.windows.net/indexes/livesearch/docs?api-version=2021-04-30-Preview&search=\",\r\n  searchApiKey: \"Pxja1OS8r5bjQElByZahu5Fqzc6ufTMRyS2RPxXh3YAzSeC2rN3n\",\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/environments/environment.ts","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\n/*\r\nif (environment.production) {\r\n  enableProdMode();\r\n}\r\n*/\r\n\r\nenableProdMode();\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule);\r\n\n\n\n// WEBPACK FOOTER //\n// C:/Dev/HMT.Azure.OFSI/OFSI.Conlist.Search/ofsisearch/src/main.ts"],"sourceRoot":"webpack:///"}