vpn-split 21.0.32 → 21.0.34

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 (80) hide show
  1. package/VERIFIED-BUILD-DATA.jsonc +3 -3
  2. package/browser/package.json +1 -1
  3. package/browser-prod/fesm2022/vpn-split-browser-prod.mjs.map +1 -1
  4. package/browser-prod/package.json +1 -1
  5. package/lib/build-info._auto-generated_.d.ts +1 -1
  6. package/lib/build-info._auto-generated_.js +1 -1
  7. package/lib/package.json +1 -1
  8. package/lib-esm/app.d.ts +3 -0
  9. package/lib-esm/app.electron.d.ts +0 -0
  10. package/lib-esm/app.electron.js +82 -0
  11. package/lib-esm/app.electron.js.map +1 -0
  12. package/lib-esm/app.hosts.d.ts +95 -0
  13. package/lib-esm/app.hosts.js +157 -0
  14. package/lib-esm/app.hosts.js.map +1 -0
  15. package/lib-esm/app.js +204 -0
  16. package/lib-esm/app.js.map +1 -0
  17. package/lib-esm/app.vscode.d.ts +9 -0
  18. package/lib-esm/app.vscode.js +33 -0
  19. package/lib-esm/app.vscode.js.map +1 -0
  20. package/lib-esm/index.d.ts +1 -0
  21. package/lib-esm/index.js +2 -0
  22. package/lib-esm/index.js.map +1 -0
  23. package/lib-esm/lib/build-info._auto-generated_.d.ts +24 -0
  24. package/lib-esm/lib/build-info._auto-generated_.js +27 -0
  25. package/lib-esm/lib/build-info._auto-generated_.js.map +1 -0
  26. package/lib-esm/lib/env/env.angular-node-app.d.ts +66 -0
  27. package/lib-esm/lib/env/env.angular-node-app.js +135 -0
  28. package/lib-esm/lib/env/env.angular-node-app.js.map +1 -0
  29. package/lib-esm/lib/env/env.docs-webapp.d.ts +66 -0
  30. package/lib-esm/lib/env/env.docs-webapp.js +135 -0
  31. package/lib-esm/lib/env/env.docs-webapp.js.map +1 -0
  32. package/lib-esm/lib/env/env.electron-app.d.ts +66 -0
  33. package/lib-esm/lib/env/env.electron-app.js +135 -0
  34. package/lib-esm/lib/env/env.electron-app.js.map +1 -0
  35. package/lib-esm/lib/env/env.mobile-app.d.ts +66 -0
  36. package/lib-esm/lib/env/env.mobile-app.js +135 -0
  37. package/lib-esm/lib/env/env.mobile-app.js.map +1 -0
  38. package/lib-esm/lib/env/env.npm-lib-and-cli-tool.d.ts +66 -0
  39. package/lib-esm/lib/env/env.npm-lib-and-cli-tool.js +135 -0
  40. package/lib-esm/lib/env/env.npm-lib-and-cli-tool.js.map +1 -0
  41. package/lib-esm/lib/env/env.vscode-plugin.d.ts +66 -0
  42. package/lib-esm/lib/env/env.vscode-plugin.js +135 -0
  43. package/lib-esm/lib/env/env.vscode-plugin.js.map +1 -0
  44. package/lib-esm/lib/env/index.d.ts +6 -0
  45. package/lib-esm/lib/env/index.js +7 -0
  46. package/lib-esm/lib/env/index.js.map +1 -0
  47. package/lib-esm/lib/hostile.backend.d.ts +37 -0
  48. package/lib-esm/lib/hostile.backend.js +118 -0
  49. package/lib-esm/lib/hostile.backend.js.map +1 -0
  50. package/lib-esm/lib/index._auto-generated_.d.ts +0 -0
  51. package/lib-esm/lib/index._auto-generated_.js +6 -0
  52. package/lib-esm/lib/index._auto-generated_.js.map +1 -0
  53. package/lib-esm/lib/index.d.ts +2 -0
  54. package/lib-esm/lib/index.js +5 -0
  55. package/lib-esm/lib/index.js.map +1 -0
  56. package/lib-esm/lib/migrations/index.d.ts +1 -0
  57. package/lib-esm/lib/migrations/index.js +3 -0
  58. package/lib-esm/lib/migrations/index.js.map +1 -0
  59. package/lib-esm/lib/migrations/migrations_index._auto-generated_.d.ts +0 -0
  60. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js +4 -0
  61. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js.map +1 -0
  62. package/lib-esm/lib/models.d.ts +61 -0
  63. package/lib-esm/lib/models.js +177 -0
  64. package/lib-esm/lib/models.js.map +1 -0
  65. package/lib-esm/lib/start.backend.d.ts +0 -0
  66. package/lib-esm/lib/start.backend.js +24 -0
  67. package/lib-esm/lib/start.backend.js.map +1 -0
  68. package/lib-esm/lib/vpn-split.backend.d.ts +56 -0
  69. package/lib-esm/lib/vpn-split.backend.js +739 -0
  70. package/lib-esm/lib/vpn-split.backend.js.map +1 -0
  71. package/lib-prod/build-info._auto-generated_.d.ts +1 -1
  72. package/lib-prod/build-info._auto-generated_.js +1 -1
  73. package/lib-prod/models.js.map +1 -1
  74. package/lib-prod/package.json +1 -1
  75. package/lib-prod/vpn-split.backend.js.map +1 -1
  76. package/package.json +1 -1
  77. package/src.js +4 -20
  78. package/websql/package.json +1 -1
  79. package/websql-prod/fesm2022/vpn-split-websql-prod.mjs.map +1 -1
  80. package/websql-prod/package.json +1 -1
@@ -0,0 +1,177 @@
1
+ //#region imports
2
+ import { _, chalk, UtilsNetwork } from 'tnp-core/lib';
3
+ import { HelpersTaon } from 'tnp-helpers/lib';
4
+ export class HostForServer {
5
+ _data;
6
+ clone() {
7
+ return HostForServer.From(this);
8
+ }
9
+ static From(ipOrDomain, name = '', disabled = false) {
10
+ if (!ipOrDomain) {
11
+ return void 0;
12
+ }
13
+ if (_.isObject(ipOrDomain) && ipOrDomain instanceof HostForServer) {
14
+ const dataClone = _.cloneDeep(ipOrDomain._data);
15
+ dataClone.name = name && name.trim() !== '' ? name : dataClone.name;
16
+ if (!_.isBoolean(dataClone.disabled)) {
17
+ dataClone.disabled = disabled;
18
+ }
19
+ return new HostForServer(dataClone);
20
+ }
21
+ if (_.isString(ipOrDomain)) {
22
+ // @ts-ignore
23
+ const parsed = UtilsNetwork.urlParse(ipOrDomain);
24
+ if (parsed) {
25
+ ipOrDomain = parsed;
26
+ }
27
+ }
28
+ if (_.isObject(ipOrDomain) && ipOrDomain instanceof URL) {
29
+ ipOrDomain = ipOrDomain;
30
+ if (UtilsNetwork.isValidIp(ipOrDomain?.host)) {
31
+ return new HostForServer({ ip: ipOrDomain.origin, name, disabled });
32
+ }
33
+ else {
34
+ return new HostForServer({ domain: ipOrDomain.origin, name, disabled });
35
+ }
36
+ }
37
+ else {
38
+ if (_.isString(ipOrDomain)) {
39
+ return new HostForServer({ ipOrDomain, name, disabled });
40
+ }
41
+ else {
42
+ ipOrDomain.name =
43
+ name && name.trim() !== ''
44
+ ? name
45
+ : ipOrDomain.name;
46
+ if (!_.isBoolean(ipOrDomain.disabled)) {
47
+ ipOrDomain.disabled = disabled;
48
+ }
49
+ return new HostForServer(ipOrDomain);
50
+ }
51
+ }
52
+ }
53
+ constructor(data) {
54
+ if (data?.ipOrDomain) {
55
+ if (UtilsNetwork.isValidIp(data.ipOrDomain)) {
56
+ data.ip = data.ipOrDomain;
57
+ }
58
+ else {
59
+ data.domain = data.ipOrDomain;
60
+ }
61
+ }
62
+ if (data && !data.ip) {
63
+ data.ip = '';
64
+ }
65
+ if (data && !data.domain) {
66
+ data.domain = '';
67
+ }
68
+ if (!data) {
69
+ data = {};
70
+ }
71
+ if (_.isString(data?.aliases)) {
72
+ data.aliases = HelpersTaon.strings.splitIfNeed(data.aliases);
73
+ }
74
+ this._data = data;
75
+ }
76
+ get ip() {
77
+ if (this.disabled) {
78
+ return '';
79
+ }
80
+ return this._data.ip;
81
+ }
82
+ set ip(newIpAddress) {
83
+ this._data.ip = newIpAddress;
84
+ }
85
+ get domain() {
86
+ if (this.disabled) {
87
+ return '';
88
+ }
89
+ return this._data.domain;
90
+ }
91
+ get aliases() {
92
+ if (this.disabled) {
93
+ return [];
94
+ }
95
+ if (_.isString(this._data.aliases)) {
96
+ return this._data.aliases.split(' ');
97
+ }
98
+ if (!_.isArray(this._data.aliases)) {
99
+ return [];
100
+ }
101
+ return this._data.aliases;
102
+ }
103
+ get firstAlias() {
104
+ return _.first(this.aliases);
105
+ }
106
+ get name() {
107
+ return this._data.name;
108
+ }
109
+ set name(v) {
110
+ this._data.name = v;
111
+ }
112
+ get originHostname() {
113
+ return this._data.originHostname;
114
+ }
115
+ set originHostname(v) {
116
+ this._data.originHostname = v;
117
+ }
118
+ get disabled() {
119
+ return this._data.disabled;
120
+ }
121
+ get isDefault() {
122
+ return this._data.isDefault;
123
+ }
124
+ get identifier() {
125
+ return _.kebabCase(this._data.name);
126
+ }
127
+ set disabled(v) {
128
+ this._data.disabled = v;
129
+ }
130
+ get environmentName() {
131
+ return this._data.environmentName || '';
132
+ }
133
+ get skipUpdateOfServerEtcHosts() {
134
+ return this._data.skipUpdateOfServerEtcHosts || false;
135
+ }
136
+ set skipUpdateOfServerEtcHosts(v) {
137
+ this._data.skipUpdateOfServerEtcHosts = v;
138
+ }
139
+ get ipOrDomain() {
140
+ if (this.disabled) {
141
+ return '';
142
+ }
143
+ const res = (this.domain ? this.domain : this.ip) || '';
144
+ return res;
145
+ // return res.startsWith('http') ? res : `http://${res}`;
146
+ }
147
+ get ipOrFirstAlias() {
148
+ if (this.disabled) {
149
+ return '';
150
+ }
151
+ const res = (this.firstAlias ? this.firstAlias : this.ip) || '';
152
+ return res;
153
+ // return res.startsWith('http') ? res : `http://${res}`;
154
+ }
155
+ get hostname() {
156
+ // @ts-ignore
157
+ const h = UtilsNetwork.urlParse(this.ipOrFirstAlias, { forceDomain: true });
158
+ return h ? h.hostname : void 0;
159
+ }
160
+ get hostnameFirstAlias() {
161
+ // @ts-ignore
162
+ const h = UtilsNetwork.urlParse(this.firstAlias, { forceDomain: true });
163
+ return h ? h.hostname : void 0;
164
+ }
165
+ get hostnameIp() {
166
+ // @ts-ignore
167
+ const h = UtilsNetwork.urlParse(this.ip);
168
+ return h ? h.hostname : void 0;
169
+ }
170
+ get nameWithIpOrDomain() {
171
+ return chalk.underline(`${this.name} ${this.ipOrDomain}`);
172
+ }
173
+ toString = () => {
174
+ return `[string version] ${this.nameWithIpOrDomain}`;
175
+ };
176
+ }
177
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
File without changes
@@ -0,0 +1,24 @@
1
+ //#region @backend
2
+ // import { Helpers } from 'tnp-helpers';
3
+ // import { VpnSplit } from './vpn-split.backend';
4
+ // import { EtcHosts, HostForServer } from './models.backend';
5
+ // const TO_DELETE = {} as EtcHosts;
6
+ // export async function run(args: string[]) {
7
+ // Helpers.clearConsole();
8
+ // const { local }: { local: boolean } = require('minimist')(args);
9
+ // const saveHostInUserFolder = !!local;
10
+ // args = args.join(' ').replace('--local', '').split(' ');
11
+ // const ins = await VpnSplit.Instance({
12
+ // additionalDefaultHosts: TO_DELETE,
13
+ // allowNotSudo: !!saveHostInUserFolder
14
+ // });
15
+ // if (args.join().trim() === '') {
16
+ // await ins.startServer(saveHostInUserFolder);
17
+ // } else {
18
+ // // await ins.startClient(args.split Helpers.urlParse(args.shift()));
19
+ // await ins.startClient(args.map(arg => Helpers.urlParse(arg)));
20
+ // }
21
+ // process.stdin.resume();
22
+ // }
23
+ //#endregion
24
+ //# sourceMappingURL=start.backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.backend.js","sourceRoot":"","sources":[""],"names":[],"mappings":"AAAA,kBAAkB;AAClB,yCAAyC;AACzC,kDAAkD;AAClD,8DAA8D;AAE9D,oCAAoC;AAEpC,8CAA8C;AAC9C,4BAA4B;AAC5B,qEAAqE;AACrE,0CAA0C;AAC1C,6DAA6D;AAE7D,0CAA0C;AAC1C,yCAAyC;AACzC,2CAA2C;AAC3C,QAAQ;AAER,qCAAqC;AACrC,mDAAmD;AACnD,aAAa;AACb,2EAA2E;AAC3E,qEAAqE;AACrE,MAAM;AAEN,4BAA4B;AAC5B,IAAI;AACJ,YAAY"}
@@ -0,0 +1,56 @@
1
+ import { URL } from 'url';
2
+ import { EtcHosts, HostForServer } from './models';
3
+ export declare class VpnSplit {
4
+ private portsToPass;
5
+ private hosts;
6
+ private cwd;
7
+ get hostsArr(): HostForServer[];
8
+ get hostsArrWithoutDefault(): HostForServer[];
9
+ private get serveKeyName();
10
+ private get serveKeyPath();
11
+ private get serveCertName();
12
+ private get serveCertPath();
13
+ private get serveCertChainName();
14
+ private get serveCertChainPath();
15
+ private readonly __hostile;
16
+ private static _instances;
17
+ private constructor();
18
+ static Instance({ ports, additionalDefaultHosts, cwd, allowNotSudo, }?: {
19
+ ports?: number[];
20
+ additionalDefaultHosts?: EtcHosts;
21
+ cwd?: string;
22
+ allowNotSudo?: boolean;
23
+ }): Promise<VpnSplit>;
24
+ startServer(saveHostInUserFolder?: boolean): Promise<void>;
25
+ applyHosts(hosts: EtcHosts): void;
26
+ applyHostsLocal(hosts: EtcHosts): void;
27
+ startClient(vpnServerTargets: URL[] | URL, options: {
28
+ saveHostInUserFolder?: boolean;
29
+ useHost?: EtcHosts;
30
+ }): Promise<void>;
31
+ private getRemoteHosts;
32
+ private createCertificateIfNotExists;
33
+ private getTarget;
34
+ private getProxyConfig;
35
+ private getNotFoundMsg;
36
+ private getMaybeChangeOriginTrueMsg;
37
+ private filterHeaders;
38
+ private isHttpsPort;
39
+ private serverPassthrough;
40
+ private clientPassthrough;
41
+ /**
42
+ * Start a UDP socket for “server” mode on a given port.
43
+ * This example forwards inbound messages right back to the sender,
44
+ * or you can forward them to an external IP:port if desired.
45
+ */
46
+ private serverUdpPassthrough;
47
+ /**
48
+ * Start a UDP socket for “client” mode on a given port.
49
+ * This example also just does a trivial pass-through or echo,
50
+ * but you can adapt to forward to a remote server.
51
+ */
52
+ private clientUdpPassthrough;
53
+ private getPortFromRequest;
54
+ private ensureMkcertCertificate;
55
+ private preventBadTargetForClient;
56
+ }