\\n \\n \"\n }), \n __metadata('design:paramtypes', [])\n ], TabsComponent
);\n return TabsComponent;\n var _a;\n}());\n//# sourceMappingURL=/Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/tabs.component.js.map\n\n/***/ },\n\n/***/ 452:\n/***/ function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);\n/* harmony export (binding) */ __webpack_require__.d(exports, \"a\", function() { return XmlPipe; });\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.define
Property(target, key, r), r;\n};\nvar __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\nvar XmlPipe = (function () {\n function XmlPipe() {\n }\n XmlPipe.prototype.transform = function (value) {\n return vkbeautify.xml(value);\n };\n XmlPipe = __decorate([\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__angular_core__[\"Pipe\"])({ name: 'xml' }), \n __metadata('design:paramtypes', [])\n ], XmlPipe);\n return XmlPipe;\n}());\n//# sourceMappingURL=/Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/xml.pipe.js.map\n\n/***/ },\n\n/***/ 453:\n/***/ function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(exports, \"a\", function() { return environment; });\n/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor
license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nvar environment = {\n production: true\n};\n//# sourceMappingURL=/Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/environment.prod.js.map\n\n/***/ },\n\n/***/ 454:\n/***/ function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* harmony impor
t */ var __WEBPACK_IMPORTED_MODULE_0_core_js_es6_symbol__ = __webpack_require__(471);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_core_js_es6_symbol___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_core_js_es6_symbol__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_core_js_es6_object__ = __webpack_require__(464);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_core_js_es6_object___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_core_js_es6_object__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_core_js_es6_function__ = __webpack_require__(460);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_core_js_es6_function___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_core_js_es6_function__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_core_js_es6_parse_int__ = __webpack_require__(466);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_core_js_es6_parse_int___default = __webpack_require__.n(__WEBPACK
_IMPORTED_MODULE_3_core_js_es6_parse_int__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_core_js_es6_parse_float__ = __webpack_require__(465);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_core_js_es6_parse_float___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_core_js_es6_parse_float__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_core_js_es6_number__ = __webpack_require__(463);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_core_js_es6_number___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_core_js_es6_number__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_core_js_es6_math__ = __webpack_require__(462);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_core_js_es6_math___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_core_js_es6_math__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_core_js_es6_string__ = __webpack_require__(470);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_cor
e_js_es6_string___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_core_js_es6_string__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_core_js_es6_date__ = __webpack_require__(459);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_core_js_es6_date___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_core_js_es6_date__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_core_js_es6_array__ = __webpack_require__(458);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_core_js_es6_array___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_core_js_es6_array__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_core_js_es6_regexp__ = __webpack_require__(468);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10_core_js_es6_regexp___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10_core_js_es6_regexp__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11_core_js_es6_map__ = __webpack_require__(461);\n/* harmony import
*/ var __WEBPACK_IMPORTED_MODULE_11_core_js_es6_map___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11_core_js_es6_map__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_core_js_es6_set__ = __webpack_require__(469);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_core_js_es6_set___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_core_js_es6_set__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_core_js_es6_reflect__ = __webpack_require__(467);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_core_js_es6_reflect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_core_js_es6_reflect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_core_js_es7_reflect__ = __webpack_require__(472);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_core_js_es7_reflect___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_core_js_es7_reflect__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_zone_js_dist_zone
__ = __webpack_require__(628);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15_zone_js_dist_zone___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15_zone_js_dist_zone__);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n//# sourceMappingURL=/Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/polyfills.js.map\n\n/***/ },\n\n/***/ 629:\n/***/ function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(345);\n\n\n/***/ }\n\n},[629]);\n\n\n// WEBPACK FOOTER //\n// main.806d67070af66e18c2fc.bundle.js","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.or
g/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Injectable } from '@angular/core';\nimport { Headers, Http } from '@angular/http';\n\nimport 'rxjs/add/operator/toPromise';\nimport { Subject } from 'rxjs/Subject';\nimport { Observable } from 'rxjs/Observable';\n\nimport { Topology } from './topology';\n\n@Injectable()\nexport class TopologyService {\n\n apiUrl = '/gateway/manager/api/v1/';\n topologiesUrl = this.apiUrl + 'topologies';\n selectedTopologySource = new Subject();\n selectedTopology$ = this.selectedTopologySource.asObservable();\n changedTopologySource = new Subject();\n changedTopology$ = this.changedTopologySo
urce.asObservable();\n\n constructor(private http: Http) { }\n\n getTopologies(): Promise {\n let headers = new Headers();\n this.addJsonHeaders(headers);\n return this.http.get(this.topologiesUrl, {\n headers: headers\n } )\n .toPromise()\n .then(response => response.json().topologies.topology as Topology[])\n .catch(this.handleError);\n }\n\n getTopology(href : string): Promise {\n let headers = new Headers();\n this.addXmlHeaders(headers);\n return this.http.get(href, {\n headers: headers\n } )\n .toPromise()\n .then(response => response.text())\n .catch(this.handleError);\n\n }\n\n saveTopology(url: string, xml : string): Promise {\n let xheaders = new Headers();\n this.addXmlHeaders(xheaders);\n this.addCsrfHeaders(xheaders);\n return this.http\n .put(u
rl, xml, {headers: xheaders})\n .toPromise()\n .then(() => xml)\n .catch(this.handleError);\n\n }\n\n createTopology(name: string, xml : string): Promise {\n let xheaders = new Headers();\n this.addXmlHeaders(xheaders);\n this.addCsrfHeaders(xheaders);\n let url = this.topologiesUrl + \"/\" + name;\n return this.http\n .put(url, xml, {headers: xheaders})\n .toPromise()\n .then(() => xml)\n .catch(this.handleError);\n }\n\n deleteTopology(href: string): Promise {\n let headers = new Headers();\n this.addJsonHeaders(headers);\n this.addCsrfHeaders(headers);\n return this.http.delete(href, {\n headers: headers\n } )\n .toPromise()\n .then(response => response.text())\n .catch(this.handleError);\n }\n\n addJsonHeaders(headers: Headers) {\n headers.append('Acc
ept', 'application/json');\n headers.append('Content-Type', 'application/json');\n }\n\n addXmlHeaders(headers: Headers) {\n headers.append('Accept', 'application/xml');\n headers.append('Content-Type', 'application/xml');\n }\n\n addCsrfHeaders(headers: Headers) {\n headers.append('X-XSRF-Header', 'admin-ui');\n }\n\n selectedTopology(value: Topology) {\n this.selectedTopologySource.next(value);\n }\n\n changedTopology(value: string) {\n this.changedTopologySource.next(value);\n }\n\n\n private handleError(error: any): Promise {\n console.error('An error occurred', error); // for demo purposes only\n return Promise.reject(error.message || error);\n }\n}\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/topology.service.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file
distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Component } from '@angular/core';\nimport {TopologyService} from \"./topology.service\";\n\n@Component({\n selector: 'topology-management',\n template: `\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n `,\n providers: [TopologyService]\n})\n\nexport class AppComponent {\n constructor(private topologyService : TopologyService) {\n }\n}\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/app.component.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is
distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Injectable } from '@angular/core';\nimport { Headers, Http } from '@angular/http';\n\nimport 'rxjs/add/operator/toPromise';\n\nimport { GatewayVersion } from './gateway-version';\n\n@Injectable()\nexport class GatewayVersionService {\n\n private apiUrl = '/gateway/manager/api/v1/version';\n\n constructor(private http: Http) { }\n\n getVersion(): Promise {\n let headers = new Headers();\n this.addHeaders(headers);\n return this.http.get(this.apiUrl, {\n headers: headers\n } )\n .toPromise()\n .then(response => response.json().ServerVersion as GatewayVersion)\n .catch(this.handleError);\n }\n\n addHeaders(headers: Headers) {\n headers.append('
Accept', 'application/json');\n headers.append('Content-Type', 'application/json');\n }\n\n private handleError(error: any): Promise {\n console.error('An error occurred', error); // for demo purposes only\n return Promise.reject(error.message || error);\n }\n}\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/gateway-version.service.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under t
he License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'tab',\n styles: [`\n .pane{\n padding: 1em;\n }\n `],\n template: `\n
\n
\n `\n})\nexport class TabComponent {\n @Input('tabTitle') title: string;\n @Input() active = false;\n}\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/utils/tab.component.ts","function webpackEmptyContext(req) {\n\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nmodule.exports = webpackEmptyContext;\nwebpackEmptyContext.id = 344;\n\n\n\n//////////////////\n// WEBPACK FOO
TER\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src async\n// module id = 344\n// module chunks = 0","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport './polyfills.ts';\n\nimport { platformBrowserDynamic } f
rom '@angular/platform-browser-dynamic';\nimport { enableProdMode } from '@angular/core';\nimport { environment } from './environments/environment';\nimport { AppModule } from './app/';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule);\n\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/main.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distr
ibuted on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { HttpModule } from '@angular/http';\nimport { FormsModule } from '@angular/forms';\n\nimport { AppComponent } from './app.component';\nimport {TopologyService} from \"./topology.service\";\nimport {GatewayVersionService} from \"./gateway-version.service\";\nimport {GatewayVersionComponent} from \"./gateway-version.component\";\nimport {TopologyComponent} from \"./topology.component\";\nimport {TopologyDetailComponent} from \"./topology-detail.component\";\nimport {XmlPipe} from \"./utils/xml.pipe\";\nimport {JsonPrettyPipe} from \"./utils/json-pretty.pipe\";\nimport { TabComponent } from './utils/tab.component';\nimport { TabsComponent } from './uti
ls/tabs.component';\n\nimport { AceEditorDirective } from 'ng2-ace-editor'; \nimport { Ng2Bs3ModalModule } from 'ng2-bs3-modal/ng2-bs3-modal'\n\n@NgModule({\n imports: [ BrowserModule,\n HttpModule,\n FormsModule,\n Ng2Bs3ModalModule\n ],\n declarations: [ AppComponent,\n TopologyComponent,\n TopologyDetailComponent,\n GatewayVersionComponent,\n AceEditorDirective,\n XmlPipe,\n JsonPrettyPipe,\n TabsComponent,\n TabComponent ],\n providers: [ TopologyService,\n GatewayVersionService ],\n bootstrap: [ AppComponent,\n GatewayVersionComponent]\n})\nexport class AppModule { }\n\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/app.module.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under
the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport {Component, OnInit} from '@angular/core';\nimport {GatewayVersion} from './gateway-version';\nimport {GatewayVersionService} from \"./gateway-version.service\";\n\n\n@Component({\n selector: 'gateway-version',\n template: `\n
\n Knox Gateway Version {{this.gatewayVersion.version}}\n Hash {
{this.gatewayVersion.hash}}\n
`,\n providers: [GatewayVersionService]\n})\n\nexport class GatewayVersionComponent implements OnInit {\n\n gatewayVersion : GatewayVersion;\n\n constructor(private gatewayVersionService : GatewayVersionService) {\n }\n\n getVersion(): void {\n this.gatewayVersionService.getVersion().then( gatewayVersion => this.gatewayVersion = gatewayVersion);\n }\n\n ngOnInit(): void {\n this.getVersion();\n }\n\n\n}\n\n\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/gateway-version.component.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License.
You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nexport * from './app.component';\nexport * from './app.module';\n\n\n\n// WEBPACK FOOTER //\n// /Users/sumit.gupta/Projects/knox/gateway-admin-ui/src/app/index.ts","/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements. See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License. You may
obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Component, OnInit, ViewChild, ViewEncapsulation} from '@angular/core';\nimport { Topology } from './topology';\nimport {TopologyService} from \"./topology.service\";\nimport { ModalComponent } from 'ng2-bs3-modal/ng2-bs3-modal';\n\n@Component({\n selector: 'topology-detail',\n template: `\n