pro-xy-ui 0.5.8 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/.esformatter +28 -28
  2. package/.eslintrc +15 -15
  3. package/bin/pro-xy-ui +25 -27
  4. package/index.html +38 -38
  5. package/lib/app/_common/app-menu.js +42 -42
  6. package/lib/app/_common/app-menu.ts +41 -41
  7. package/lib/app/_common/patchResize.js +33 -33
  8. package/lib/app/_common/patchResize.ts +32 -32
  9. package/lib/app/_common/pipes.js +33 -33
  10. package/lib/app/_common/pipes.ts +21 -21
  11. package/lib/app/_common/rxjs-extensions.js +20 -20
  12. package/lib/app/_common/rxjs-extensions.ts +21 -21
  13. package/lib/app/app.component.css +39 -39
  14. package/lib/app/app.component.html +35 -35
  15. package/lib/app/app.module.js +92 -92
  16. package/lib/app/app.module.ts +89 -89
  17. package/lib/app/main.js +11 -11
  18. package/lib/app/main.ts +11 -11
  19. package/lib/app/model/config.js +69 -69
  20. package/lib/app/model/config.ts +79 -79
  21. package/lib/app/model/http.js +116 -116
  22. package/lib/app/service/config.defaultConfig.js +74 -74
  23. package/lib/app/service/config.defaultConfig.ts +72 -72
  24. package/lib/app/service/config.service.js +44 -44
  25. package/lib/app/service/config.service.ts +39 -39
  26. package/lib/app/service/socket.service.js +109 -109
  27. package/lib/app/service/socket.service.ts +131 -131
  28. package/lib/app/service/traffic.service.js +98 -98
  29. package/lib/app/views/auto-responder/auto-responder.component.css +37 -37
  30. package/lib/app/views/auto-responder/auto-responder.component.html +41 -41
  31. package/lib/app/views/auto-responder/auto-responder.component.js +102 -102
  32. package/lib/app/views/auto-responder/auto-responder.component.ts +110 -110
  33. package/lib/app/views/composer/composer.component.css +7 -7
  34. package/lib/app/views/composer/composer.component.html +9 -9
  35. package/lib/app/views/composer/composer.component.js +147 -147
  36. package/lib/app/views/composer/composer.component.ts +148 -148
  37. package/lib/app/views/config/config.component.css +13 -13
  38. package/lib/app/views/config/config.component.html +14 -14
  39. package/lib/app/views/config/config.component.js +163 -163
  40. package/lib/app/views/config/diff.dialog.html +3 -3
  41. package/lib/app/views/config/diff.dialog.js +29 -29
  42. package/lib/app/views/config/diff.dialog.ts +17 -17
  43. package/lib/app/views/config/plugins.dialog.html +17 -17
  44. package/lib/app/views/config/plugins.dialog.js +29 -29
  45. package/lib/app/views/config/plugins.dialog.ts +17 -17
  46. package/lib/app/views/config-list-base.js +44 -44
  47. package/lib/app/views/config-list-base.ts +66 -66
  48. package/lib/app/views/connection/connection.component.html +9 -9
  49. package/lib/app/views/connection/connection.component.js +87 -89
  50. package/lib/app/views/connection/connection.component.ts +83 -85
  51. package/lib/app/views/delay/delay.component.css +23 -23
  52. package/lib/app/views/delay/delay.component.html +35 -35
  53. package/lib/app/views/delay/delay.component.js +34 -34
  54. package/lib/app/views/find/find.component.css +30 -30
  55. package/lib/app/views/find/find.component.html +10 -10
  56. package/lib/app/views/find/find.component.js +113 -113
  57. package/lib/app/views/find/find.component.ts +111 -111
  58. package/lib/app/views/inspector/inspector.component.css +14 -14
  59. package/lib/app/views/inspector/inspector.component.html +17 -17
  60. package/lib/app/views/inspector/inspector.component.js +64 -64
  61. package/lib/app/views/inspector/inspector.component.ts +54 -54
  62. package/lib/app/views/logs/logs.component.css +7 -7
  63. package/lib/app/views/logs/logs.component.html +13 -13
  64. package/lib/app/views/logs/logs.component.js +56 -56
  65. package/lib/app/views/logs/logs.component.ts +46 -46
  66. package/lib/app/views/requests/request-row.component.css +15 -15
  67. package/lib/app/views/requests/request-row.component.html +7 -7
  68. package/lib/app/views/requests/request-row.component.js +68 -68
  69. package/lib/app/views/requests/request.bodyMenu.js +41 -41
  70. package/lib/app/views/requests/request.bodyMenu.ts +61 -61
  71. package/lib/app/views/requests/request.headMenu.js +25 -25
  72. package/lib/app/views/requests/requests.component.css +49 -49
  73. package/lib/app/views/requests/requests.component.html +33 -33
  74. package/lib/app/views/requests/requests.component.js +127 -127
  75. package/lib/app/views/status/status.component.css +18 -18
  76. package/lib/app/views/status/status.component.html +8 -8
  77. package/lib/app/views/status/status.component.js +49 -49
  78. package/lib/app/views/status/status.component.ts +45 -45
  79. package/lib/app/views/url-replace/url-replace.component.css +32 -32
  80. package/lib/app/views/url-replace/url-replace.component.html +36 -36
  81. package/lib/app/views/url-replace/url-replace.component.js +34 -34
  82. package/lib/index.js +23 -23
  83. package/lib/lib.d.ts +2 -2
  84. package/lib/style.css +100 -100
  85. package/lib/systemjs.config.js +75 -75
  86. package/package.json +64 -64
  87. package/readme.md +5 -5
  88. package/tsconfig.json +23 -23
  89. package/typings.json +11 -11
  90. package/npm-shrinkwrap.json +0 -2568
@@ -1,109 +1,109 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- 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;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const core_1 = require("@angular/core");
13
- const Observable_1 = require("rxjs/Observable");
14
- const ReplaySubject_1 = require("rxjs/ReplaySubject");
15
- const config_1 = require("../model/config");
16
- const config_service_1 = require("./config.service");
17
- const io = require("socket.io-client");
18
- var url = nw.require("url");
19
- let SocketService = class SocketService {
20
- constructor(configService) {
21
- this.configService = configService;
22
- this.logsObservable = new ReplaySubject_1.ReplaySubject(20);
23
- var socket = this.socket = this.connect(this._getSocketPath());
24
- this.configObservable = Observable_1.Observable.fromEvent(socket, "config").map(c => new config_1.Config(c)).publishBehavior(new config_1.Config());
25
- this.reqObservable = Observable_1.Observable.fromEvent(socket, "request");
26
- this.resObservable = Observable_1.Observable.fromEvent(socket, "response");
27
- this.reqBodyChunkObservable = Observable_1.Observable.fromEvent(socket, "request-body-chunk");
28
- this.resBodyChunkObservable = Observable_1.Observable.fromEvent(socket, "response-body-chunk");
29
- this.reqBodyEndObservable = Observable_1.Observable.fromEvent(socket, "request-body-end");
30
- this.resBodyEndObservable = Observable_1.Observable.fromEvent(socket, "response-body-end");
31
- this.connectStatusObservable = Observable_1.Observable.merge(Observable_1.Observable.fromEvent(socket, "connect", () => true), Observable_1.Observable.fromEvent(socket, "disconnect", () => false)).publishBehavior(false);
32
- this.connectConnectables([
33
- this.configObservable,
34
- this.connectStatusObservable
35
- ]);
36
- this.configObservable.subscribe((conf) => conf && this.log(`new config received`));
37
- }
38
- connectConnectables(observables) {
39
- observables.forEach(c => c.connect());
40
- }
41
- log(str) {
42
- this.logsObservable.next(str);
43
- }
44
- connect(socketPath) {
45
- this.log(`trying to connect to ${socketPath}`);
46
- var _socket = io.connect(socketPath, {
47
- reconnectionAttempts: 2,
48
- transports: ["websocket"]
49
- });
50
- _socket.on("connect", () => this.log(`connected`));
51
- _socket.on("disconnect", (reason) => this.log(`disconnect: ${reason}`));
52
- _socket.on("connect_error", (err) => this.log(`connect_error: ${err}`));
53
- _socket.on("connect_timeout", (err) => this.log(`connect_timeout: ${err}`));
54
- _socket.on("reconnect_error", (err) => this.log(`reconnect_error: ${err}`));
55
- _socket.on("reconnecting", (err) => this.log(`reconnecting: ${err}`));
56
- _socket.on("reconnect_failed", (err) => {
57
- this.log(`reconnect_failed: ${err}`);
58
- _socket.io.uri = this._getSocketPath();
59
- this.log(`trying to connect to ${_socket.io.uri}`);
60
- _socket.io.connect();
61
- });
62
- return _socket;
63
- }
64
- getPort() {
65
- var defPort = this.configService.DEFAULT_PORT;
66
- try {
67
- return this.configService.getConfig().port || defPort;
68
- }
69
- catch (err) {
70
- this.log(err.message);
71
- return defPort;
72
- }
73
- }
74
- _getSocketPath() {
75
- return url.format({
76
- hostname: "localhost",
77
- protocol: "http",
78
- port: this.getPort()
79
- });
80
- }
81
- updateConfig(config) {
82
- //will be mixin to current config in pro-xy-ws-api
83
- this.log(`sendending config update`);
84
- this.socket.emit("configupdate", config);
85
- }
86
- replaceConfig(config) {
87
- this.log(`sendending config replace`);
88
- this.socket.emit("configreplace", config);
89
- }
90
- sendKillSignal() {
91
- this.socket.emit("kill");
92
- }
93
- connectToRemote() {
94
- var path = prompt("Remote path (e.g. http://server:8000)");
95
- if (!path) {
96
- return;
97
- }
98
- this.socket.io.close();
99
- this.socket.io.uri = path;
100
- this.socket.io.skipReconnect = false;
101
- this.log(`trying to connect to ${path}`);
102
- this.socket.io.reconnect();
103
- }
104
- };
105
- SocketService = __decorate([
106
- core_1.Injectable(),
107
- __metadata("design:paramtypes", [config_service_1.ConfigService])
108
- ], SocketService);
109
- exports.SocketService = SocketService;
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const core_1 = require("@angular/core");
13
+ const Observable_1 = require("rxjs/Observable");
14
+ const ReplaySubject_1 = require("rxjs/ReplaySubject");
15
+ const config_1 = require("../model/config");
16
+ const config_service_1 = require("./config.service");
17
+ const io = require("socket.io-client");
18
+ var url = nw.require("url");
19
+ let SocketService = class SocketService {
20
+ constructor(configService) {
21
+ this.configService = configService;
22
+ this.logsObservable = new ReplaySubject_1.ReplaySubject(20);
23
+ var socket = this.socket = this.connect(this._getSocketPath());
24
+ this.configObservable = Observable_1.Observable.fromEvent(socket, "config").map(c => new config_1.Config(c)).publishBehavior(new config_1.Config());
25
+ this.reqObservable = Observable_1.Observable.fromEvent(socket, "request");
26
+ this.resObservable = Observable_1.Observable.fromEvent(socket, "response");
27
+ this.reqBodyChunkObservable = Observable_1.Observable.fromEvent(socket, "request-body-chunk");
28
+ this.resBodyChunkObservable = Observable_1.Observable.fromEvent(socket, "response-body-chunk");
29
+ this.reqBodyEndObservable = Observable_1.Observable.fromEvent(socket, "request-body-end");
30
+ this.resBodyEndObservable = Observable_1.Observable.fromEvent(socket, "response-body-end");
31
+ this.connectStatusObservable = Observable_1.Observable.merge(Observable_1.Observable.fromEvent(socket, "connect", () => true), Observable_1.Observable.fromEvent(socket, "disconnect", () => false)).publishBehavior(false);
32
+ this.connectConnectables([
33
+ this.configObservable,
34
+ this.connectStatusObservable
35
+ ]);
36
+ this.configObservable.subscribe((conf) => conf && this.log(`new config received`));
37
+ }
38
+ connectConnectables(observables) {
39
+ observables.forEach(c => c.connect());
40
+ }
41
+ log(str) {
42
+ this.logsObservable.next(str);
43
+ }
44
+ connect(socketPath) {
45
+ this.log(`trying to connect to ${socketPath}`);
46
+ var _socket = io.connect(socketPath, {
47
+ reconnectionAttempts: 2,
48
+ transports: ["websocket"]
49
+ });
50
+ _socket.on("connect", () => this.log(`connected`));
51
+ _socket.on("disconnect", (reason) => this.log(`disconnect: ${reason}`));
52
+ _socket.on("connect_error", (err) => this.log(`connect_error: ${err}`));
53
+ _socket.on("connect_timeout", (err) => this.log(`connect_timeout: ${err}`));
54
+ _socket.on("reconnect_error", (err) => this.log(`reconnect_error: ${err}`));
55
+ _socket.on("reconnecting", (err) => this.log(`reconnecting: ${err}`));
56
+ _socket.on("reconnect_failed", (err) => {
57
+ this.log(`reconnect_failed: ${err}`);
58
+ _socket.io.uri = this._getSocketPath();
59
+ this.log(`trying to connect to ${_socket.io.uri}`);
60
+ _socket.io.connect();
61
+ });
62
+ return _socket;
63
+ }
64
+ getPort() {
65
+ var defPort = this.configService.DEFAULT_PORT;
66
+ try {
67
+ return this.configService.getConfig().port || defPort;
68
+ }
69
+ catch (err) {
70
+ this.log(err.message);
71
+ return defPort;
72
+ }
73
+ }
74
+ _getSocketPath() {
75
+ return url.format({
76
+ hostname: "localhost",
77
+ protocol: "http",
78
+ port: this.getPort()
79
+ });
80
+ }
81
+ updateConfig(config) {
82
+ //will be mixin to current config in pro-xy-ws-api
83
+ this.log(`sendending config update`);
84
+ this.socket.emit("configupdate", config);
85
+ }
86
+ replaceConfig(config) {
87
+ this.log(`sendending config replace`);
88
+ this.socket.emit("configreplace", config);
89
+ }
90
+ sendKillSignal() {
91
+ this.socket.emit("kill");
92
+ }
93
+ connectToRemote() {
94
+ var path = prompt("Remote path (e.g. http://server:8000)");
95
+ if (!path) {
96
+ return;
97
+ }
98
+ this.socket.io.close();
99
+ this.socket.io.uri = path;
100
+ this.socket.io.skipReconnect = false;
101
+ this.log(`trying to connect to ${path}`);
102
+ this.socket.io.reconnect();
103
+ }
104
+ };
105
+ SocketService = __decorate([
106
+ core_1.Injectable(),
107
+ __metadata("design:paramtypes", [config_service_1.ConfigService])
108
+ ], SocketService);
109
+ exports.SocketService = SocketService;
@@ -1,131 +1,131 @@
1
- import { Injectable } from "@angular/core";
2
- import { Observable } from 'rxjs/Observable';
3
- import { BehaviorSubject } from 'rxjs/BehaviorSubject';
4
- import { Subject } from 'rxjs/Subject';
5
- import { ReplaySubject } from 'rxjs/ReplaySubject';
6
- import { ConnectableObservable } from 'rxjs/observable/ConnectableObservable';
7
- import { Req, Res } from '../model/http';
8
- import { Config } from '../model/config';
9
- import { ConfigService } from './config.service';
10
- import * as io from "socket.io-client";
11
-
12
- var url = nw.require("url");
13
-
14
- @Injectable()
15
- export class SocketService {
16
-
17
- private socket: any
18
-
19
- logsObservable: Observable<string>
20
- configObservable: Observable<Config>
21
- connectStatusObservable: Observable<boolean>
22
-
23
- reqObservable: Observable<Req>
24
- resObservable: Observable<Res>
25
- reqBodyChunkObservable: Observable<any>
26
- resBodyChunkObservable: Observable<any>
27
- reqBodyEndObservable: Observable<any>
28
- resBodyEndObservable: Observable<any>
29
-
30
- constructor(private configService: ConfigService) {
31
-
32
- this.logsObservable = new ReplaySubject(20);
33
-
34
- var socket = this.socket = this.connect(this._getSocketPath());
35
- this.configObservable = Observable.fromEvent(socket, "config").map(c => new Config(c)).publishBehavior(new Config());
36
- this.reqObservable = Observable.fromEvent(socket, "request");
37
- this.resObservable = Observable.fromEvent(socket, "response");
38
-
39
- this.reqBodyChunkObservable = Observable.fromEvent(socket, "request-body-chunk");
40
- this.resBodyChunkObservable = Observable.fromEvent(socket, "response-body-chunk");
41
- this.reqBodyEndObservable = Observable.fromEvent(socket, "request-body-end");
42
- this.resBodyEndObservable = Observable.fromEvent(socket, "response-body-end");
43
-
44
- this.connectStatusObservable = Observable.merge(
45
- Observable.fromEvent(socket, "connect", () => true),
46
- Observable.fromEvent(socket, "disconnect", () => false)
47
- ).publishBehavior(false);
48
-
49
- this.connectConnectables([
50
- this.configObservable,
51
- this.connectStatusObservable
52
- ]);
53
-
54
- this.configObservable.subscribe((conf) => conf && this.log(`new config received`));
55
- }
56
-
57
- private connectConnectables(observables: any[]) {
58
- (<ConnectableObservable<any>[]>observables).forEach(c => c.connect());
59
- }
60
-
61
- private log(str) {
62
- (<Subject<string>>this.logsObservable).next(str);
63
- }
64
-
65
- private connect(socketPath) {
66
- this.log(`trying to connect to ${socketPath}`);
67
- var _socket = io.connect(socketPath, {
68
- reconnectionAttempts: 2,
69
- transports: ["websocket"]
70
- });
71
-
72
- _socket.on("connect", () => this.log(`connected`));
73
- _socket.on("disconnect", (reason) => this.log(`disconnect: ${reason}`));
74
- _socket.on("connect_error", (err) => this.log(`connect_error: ${err}`));
75
- _socket.on("connect_timeout", (err) => this.log(`connect_timeout: ${err}`));
76
- _socket.on("reconnect_error", (err) => this.log(`reconnect_error: ${err}`));
77
- _socket.on("reconnecting", (err) => this.log(`reconnecting: ${err}`));
78
- _socket.on("reconnect_failed", (err) => {
79
- this.log(`reconnect_failed: ${err}`);
80
- _socket.io.uri = this._getSocketPath();
81
- this.log(`trying to connect to ${_socket.io.uri}`);
82
- _socket.io.connect();
83
- });
84
-
85
- return _socket;
86
- }
87
-
88
- private getPort() {
89
- var defPort = this.configService.DEFAULT_PORT;
90
-
91
- try {
92
- return this.configService.getConfig().port || defPort;
93
- } catch (err) {
94
- this.log(err.message);
95
- return defPort;
96
- }
97
- }
98
-
99
- private _getSocketPath() {
100
- return url.format({
101
- hostname: "localhost",
102
- protocol: "http",
103
- port: this.getPort()
104
- });
105
- }
106
-
107
- updateConfig(config) {
108
- //will be mixin to current config in pro-xy-ws-api
109
- this.log(`sendending config update`);
110
- this.socket.emit("configupdate", config);
111
- }
112
-
113
- replaceConfig(config) {
114
- this.log(`sendending config replace`);
115
- this.socket.emit("configreplace", config);
116
- }
117
-
118
- sendKillSignal() {
119
- this.socket.emit("kill");
120
- }
121
-
122
- connectToRemote() {
123
- var path = prompt("Remote path (e.g. http://server:8000)");
124
- if (!path) { return; }
125
- this.socket.io.close();
126
- this.socket.io.uri = path;
127
- this.socket.io.skipReconnect = false;
128
- this.log(`trying to connect to ${path}`);
129
- this.socket.io.reconnect();
130
- }
131
- }
1
+ import { Injectable } from "@angular/core";
2
+ import { Observable } from 'rxjs/Observable';
3
+ import { BehaviorSubject } from 'rxjs/BehaviorSubject';
4
+ import { Subject } from 'rxjs/Subject';
5
+ import { ReplaySubject } from 'rxjs/ReplaySubject';
6
+ import { ConnectableObservable } from 'rxjs/observable/ConnectableObservable';
7
+ import { Req, Res } from '../model/http';
8
+ import { Config } from '../model/config';
9
+ import { ConfigService } from './config.service';
10
+ import * as io from "socket.io-client";
11
+
12
+ var url = nw.require("url");
13
+
14
+ @Injectable()
15
+ export class SocketService {
16
+
17
+ private socket: any
18
+
19
+ logsObservable: Observable<string>
20
+ configObservable: Observable<Config>
21
+ connectStatusObservable: Observable<boolean>
22
+
23
+ reqObservable: Observable<Req>
24
+ resObservable: Observable<Res>
25
+ reqBodyChunkObservable: Observable<any>
26
+ resBodyChunkObservable: Observable<any>
27
+ reqBodyEndObservable: Observable<any>
28
+ resBodyEndObservable: Observable<any>
29
+
30
+ constructor(private configService: ConfigService) {
31
+
32
+ this.logsObservable = new ReplaySubject(20);
33
+
34
+ var socket = this.socket = this.connect(this._getSocketPath());
35
+ this.configObservable = Observable.fromEvent(socket, "config").map(c => new Config(c)).publishBehavior(new Config());
36
+ this.reqObservable = Observable.fromEvent(socket, "request");
37
+ this.resObservable = Observable.fromEvent(socket, "response");
38
+
39
+ this.reqBodyChunkObservable = Observable.fromEvent(socket, "request-body-chunk");
40
+ this.resBodyChunkObservable = Observable.fromEvent(socket, "response-body-chunk");
41
+ this.reqBodyEndObservable = Observable.fromEvent(socket, "request-body-end");
42
+ this.resBodyEndObservable = Observable.fromEvent(socket, "response-body-end");
43
+
44
+ this.connectStatusObservable = Observable.merge(
45
+ Observable.fromEvent(socket, "connect", () => true),
46
+ Observable.fromEvent(socket, "disconnect", () => false)
47
+ ).publishBehavior(false);
48
+
49
+ this.connectConnectables([
50
+ this.configObservable,
51
+ this.connectStatusObservable
52
+ ]);
53
+
54
+ this.configObservable.subscribe((conf) => conf && this.log(`new config received`));
55
+ }
56
+
57
+ private connectConnectables(observables: any[]) {
58
+ (<ConnectableObservable<any>[]>observables).forEach(c => c.connect());
59
+ }
60
+
61
+ private log(str) {
62
+ (<Subject<string>>this.logsObservable).next(str);
63
+ }
64
+
65
+ private connect(socketPath) {
66
+ this.log(`trying to connect to ${socketPath}`);
67
+ var _socket = io.connect(socketPath, {
68
+ reconnectionAttempts: 2,
69
+ transports: ["websocket"]
70
+ });
71
+
72
+ _socket.on("connect", () => this.log(`connected`));
73
+ _socket.on("disconnect", (reason) => this.log(`disconnect: ${reason}`));
74
+ _socket.on("connect_error", (err) => this.log(`connect_error: ${err}`));
75
+ _socket.on("connect_timeout", (err) => this.log(`connect_timeout: ${err}`));
76
+ _socket.on("reconnect_error", (err) => this.log(`reconnect_error: ${err}`));
77
+ _socket.on("reconnecting", (err) => this.log(`reconnecting: ${err}`));
78
+ _socket.on("reconnect_failed", (err) => {
79
+ this.log(`reconnect_failed: ${err}`);
80
+ _socket.io.uri = this._getSocketPath();
81
+ this.log(`trying to connect to ${_socket.io.uri}`);
82
+ _socket.io.connect();
83
+ });
84
+
85
+ return _socket;
86
+ }
87
+
88
+ private getPort() {
89
+ var defPort = this.configService.DEFAULT_PORT;
90
+
91
+ try {
92
+ return this.configService.getConfig().port || defPort;
93
+ } catch (err) {
94
+ this.log(err.message);
95
+ return defPort;
96
+ }
97
+ }
98
+
99
+ private _getSocketPath() {
100
+ return url.format({
101
+ hostname: "localhost",
102
+ protocol: "http",
103
+ port: this.getPort()
104
+ });
105
+ }
106
+
107
+ updateConfig(config) {
108
+ //will be mixin to current config in pro-xy-ws-api
109
+ this.log(`sendending config update`);
110
+ this.socket.emit("configupdate", config);
111
+ }
112
+
113
+ replaceConfig(config) {
114
+ this.log(`sendending config replace`);
115
+ this.socket.emit("configreplace", config);
116
+ }
117
+
118
+ sendKillSignal() {
119
+ this.socket.emit("kill");
120
+ }
121
+
122
+ connectToRemote() {
123
+ var path = prompt("Remote path (e.g. http://server:8000)");
124
+ if (!path) { return; }
125
+ this.socket.io.close();
126
+ this.socket.io.uri = path;
127
+ this.socket.io.skipReconnect = false;
128
+ this.log(`trying to connect to ${path}`);
129
+ this.socket.io.reconnect();
130
+ }
131
+ }