verteilen-core 1.2.4 → 1.2.7

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 (142) hide show
  1. package/dist/client/analysis.d.ts +35 -0
  2. package/dist/client/analysis.js +382 -0
  3. package/dist/client/client.d.ts +25 -0
  4. package/dist/client/client.js +227 -0
  5. package/dist/client/cluster.d.ts +1 -0
  6. package/dist/{src/client → client}/cluster.js +1 -2
  7. package/dist/client/database.d.ts +13 -0
  8. package/dist/client/database.js +37 -0
  9. package/dist/client/execute.d.ts +24 -0
  10. package/dist/{src/client → client}/execute.js +61 -51
  11. package/dist/client/http.d.ts +7 -0
  12. package/dist/client/http.js +40 -0
  13. package/dist/client/javascript.d.ts +47 -0
  14. package/dist/{src/client → client}/javascript.js +110 -136
  15. package/dist/client/job_database.d.ts +10 -0
  16. package/dist/client/job_database.js +34 -0
  17. package/dist/client/job_execute.d.ts +20 -0
  18. package/dist/client/job_execute.js +173 -0
  19. package/dist/client/os.d.ts +29 -0
  20. package/dist/client/os.js +197 -0
  21. package/dist/client/resource.d.ts +7 -0
  22. package/dist/client/resource.js +107 -0
  23. package/dist/client/shell.d.ts +16 -0
  24. package/dist/client/shell.js +122 -0
  25. package/dist/computed.d.ts +13 -0
  26. package/dist/index.d.ts +3 -0
  27. package/dist/index.js +3 -3
  28. package/dist/interface/base.d.ts +70 -0
  29. package/dist/interface/bus.d.ts +90 -0
  30. package/dist/interface/enum.d.ts +143 -0
  31. package/dist/interface/execute.d.ts +20 -0
  32. package/dist/interface/record.d.ts +93 -0
  33. package/dist/interface/server.d.ts +76 -0
  34. package/dist/interface/struct.d.ts +182 -0
  35. package/dist/interface/table.d.ts +20 -0
  36. package/dist/interface/ui.d.ts +29 -0
  37. package/dist/interface.d.ts +29 -0
  38. package/dist/plugins/i18n.d.ts +1666 -0
  39. package/dist/script/console_manager.d.ts +18 -0
  40. package/dist/script/console_manager.js +131 -0
  41. package/dist/script/console_server_manager.d.ts +13 -0
  42. package/dist/script/console_server_manager.js +40 -0
  43. package/dist/script/execute/base.d.ts +45 -0
  44. package/dist/script/execute/base.js +200 -0
  45. package/dist/script/execute/feedback.d.ts +12 -0
  46. package/dist/script/execute/feedback.js +179 -0
  47. package/dist/script/execute/interface.d.ts +8 -0
  48. package/dist/script/execute/region_job.d.ts +5 -0
  49. package/dist/{src/script → script}/execute/region_job.js +1 -0
  50. package/dist/script/execute/region_project.d.ts +10 -0
  51. package/dist/{src/script → script}/execute/region_project.js +4 -0
  52. package/dist/script/execute/region_subtask.d.ts +5 -0
  53. package/dist/{src/script → script}/execute/region_subtask.js +1 -0
  54. package/dist/script/execute/region_task.d.ts +10 -0
  55. package/dist/{src/script → script}/execute/region_task.js +4 -0
  56. package/dist/script/execute/runner.d.ts +14 -0
  57. package/dist/script/execute/runner.js +264 -0
  58. package/dist/script/execute/util_parser.d.ts +14 -0
  59. package/dist/script/execute/util_parser.js +135 -0
  60. package/dist/script/execute_manager.d.ts +25 -0
  61. package/dist/script/execute_manager.js +297 -0
  62. package/dist/script/socket_manager.d.ts +31 -0
  63. package/dist/script/socket_manager.js +263 -0
  64. package/dist/script/webhook_manager.d.ts +3 -0
  65. package/dist/script/webhook_server_manager.d.ts +13 -0
  66. package/dist/script/webhook_server_manager.js +133 -0
  67. package/dist/server/detail.d.ts +72 -0
  68. package/dist/server/detail.js +451 -0
  69. package/dist/server/io.d.ts +46 -0
  70. package/dist/{src/server → server}/io.js +42 -51
  71. package/dist/server/plugin.d.ts +18 -0
  72. package/dist/{src/server → server}/plugin.js +45 -54
  73. package/dist/server/server.d.ts +27 -0
  74. package/dist/server/server.js +53 -0
  75. package/dist/server.d.ts +4 -0
  76. package/dist/util/console_handle.d.ts +20 -0
  77. package/dist/util/console_handle.js +244 -0
  78. package/dist/util/log_handle.d.ts +23 -0
  79. package/dist/util/log_handle.js +224 -0
  80. package/index.ts +1 -6
  81. package/package.json +1 -1
  82. package/src/index.ts +6 -0
  83. package/test/TEST.d.ts +1 -0
  84. package/test/TEST.js +88 -0
  85. package/test/client/execute.test.d.ts +1 -0
  86. package/{dist/test → test}/client/execute.test.js +6 -15
  87. package/test/client/javascript.test.d.ts +1 -0
  88. package/{dist/test → test}/client/javascript.test.js +21 -30
  89. package/test/client/server.test.d.ts +1 -0
  90. package/test/client/task.test.d.ts +1 -0
  91. package/{dist/test → test}/client/task.test.js +1 -1
  92. package/test/script/parser.test.d.ts +1 -0
  93. package/test/script/socket.test.d.ts +1 -0
  94. package/tsconfig.json +8 -4
  95. package/dist/jest.config.js +0 -8
  96. package/dist/src/client/analysis.js +0 -383
  97. package/dist/src/client/client.js +0 -233
  98. package/dist/src/client/database.js +0 -36
  99. package/dist/src/client/http.js +0 -37
  100. package/dist/src/client/job_database.js +0 -36
  101. package/dist/src/client/job_execute.js +0 -171
  102. package/dist/src/client/job_parameter.js +0 -36
  103. package/dist/src/client/os.js +0 -202
  104. package/dist/src/client/parameter.js +0 -36
  105. package/dist/src/client/resource.js +0 -118
  106. package/dist/src/client/shell.js +0 -118
  107. package/dist/src/script/console_manager.js +0 -125
  108. package/dist/src/script/console_server_manager.js +0 -37
  109. package/dist/src/script/execute/base.js +0 -197
  110. package/dist/src/script/execute/feedback.js +0 -188
  111. package/dist/src/script/execute/runner.js +0 -274
  112. package/dist/src/script/execute/util_parser.js +0 -137
  113. package/dist/src/script/execute_manager.js +0 -309
  114. package/dist/src/script/socket_manager.js +0 -260
  115. package/dist/src/script/webhook_server_manager.js +0 -140
  116. package/dist/src/server/detail.js +0 -428
  117. package/dist/src/server/server.js +0 -51
  118. package/dist/src/util/console_handle.js +0 -248
  119. package/dist/src/util/log_handle.js +0 -230
  120. package/dist/src/util/server/console_handle.js +0 -248
  121. package/dist/src/util/server/log_handle.js +0 -230
  122. package/dist/test/TEST.js +0 -105
  123. /package/dist/{src/computed.js → computed.js} +0 -0
  124. /package/dist/{src/interface → interface}/base.js +0 -0
  125. /package/dist/{src/interface → interface}/bus.js +0 -0
  126. /package/dist/{src/interface → interface}/enum.js +0 -0
  127. /package/dist/{src/interface → interface}/execute.js +0 -0
  128. /package/dist/{src/interface → interface}/record.js +0 -0
  129. /package/dist/{src/interface → interface}/server.js +0 -0
  130. /package/dist/{src/interface → interface}/struct.js +0 -0
  131. /package/dist/{src/interface → interface}/table.js +0 -0
  132. /package/dist/{src/interface → interface}/ui.js +0 -0
  133. /package/dist/{src/interface.js → interface.js} +0 -0
  134. /package/dist/{src/lan → lan}/en.json +0 -0
  135. /package/dist/{src/lan → lan}/zh_TW.json +0 -0
  136. /package/dist/{src/plugins → plugins}/i18n.js +0 -0
  137. /package/dist/{src/script → script}/execute/interface.js +0 -0
  138. /package/dist/{src/script → script}/webhook_manager.js +0 -0
  139. /package/dist/{src/server.js → server.js} +0 -0
  140. /package/{dist/test → test}/client/server.test.js +0 -0
  141. /package/{dist/test → test}/script/parser.test.js +0 -0
  142. /package/{dist/test → test}/script/socket.test.js +0 -0
@@ -1,202 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
- return new (P || (P = Promise))(function (resolve, reject) {
38
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
- step((generator = generator.apply(thisArg, _arguments || [])).next());
42
- });
43
- };
44
- var __importDefault = (this && this.__importDefault) || function (mod) {
45
- return (mod && mod.__esModule) ? mod : { "default": mod };
46
- };
47
- Object.defineProperty(exports, "__esModule", { value: true });
48
- exports.ClientOS = void 0;
49
- const child_process_1 = require("child_process");
50
- const tree_kill_1 = __importDefault(require("tree-kill"));
51
- const fs = __importStar(require("fs"));
52
- const path = __importStar(require("path"));
53
- const os = __importStar(require("os"));
54
- const interface_1 = require("../interface");
55
- class ClientOS {
56
- constructor(_tag, _runtime, _messager, _messager_log) {
57
- this.children = [];
58
- this.file_copy = (data) => {
59
- this.messager(`[OS Action] File copy, ${data.from} => ${data.to}`, this.tag());
60
- fs.copyFileSync(data.from, data.to);
61
- };
62
- this.dir_copy = (data) => {
63
- this.messager(`[OS Action] Folder copy, ${data.from} => ${data.to}`, this.tag());
64
- fs.cpSync(data.from, data.to, { recursive: true, force: true });
65
- };
66
- this.file_delete = (data) => {
67
- this.messager(`[OS Action] File delete, ${data.path}`, this.tag());
68
- fs.rmSync(data.path);
69
- };
70
- this.dir_delete = (data) => {
71
- this.messager(`[OS Action] Folder delete, ${data.path}`, this.tag());
72
- fs.rmSync(data.path, { recursive: true, force: true });
73
- };
74
- this.rename = (data) => {
75
- this.messager(`[OS Action] File or dir rename, ${data.from} => ${data.to}`, this.tag());
76
- fs.renameSync(data.from, data.to);
77
- };
78
- this.fs_exist = (data) => {
79
- const v = fs.existsSync(data.path);
80
- this.messager(`[OS Action] Check path exists, ${data.path}`, this.tag());
81
- return v;
82
- };
83
- this.fs_dir_exist = (data) => {
84
- const p = this.fs_exist(data);
85
- if (!p)
86
- return false;
87
- const stat = fs.statSync(data.path);
88
- return stat.isDirectory();
89
- };
90
- this.fs_file_exist = (data) => {
91
- const p = this.fs_exist(data);
92
- if (!p)
93
- return false;
94
- const stat = fs.statSync(data.path);
95
- return stat.isFile();
96
- };
97
- this.dir_files = (data) => {
98
- const r = fs.readdirSync(data.path, { withFileTypes: true }).filter(x => x.isFile()).map(x => x.name);
99
- return r;
100
- };
101
- this.dir_dirs = (data) => {
102
- const r = fs.readdirSync(data.path, { withFileTypes: true }).filter(x => x.isDirectory()).map(x => x.name);
103
- return r;
104
- };
105
- this.dir_create = (data) => {
106
- this.messager(`[OS Action] Create folder, ${data.path}`, this.tag());
107
- fs.mkdirSync(data.path, { recursive: true });
108
- };
109
- this.file_write = (data) => {
110
- this.messager(`[OS Action] Create file, ${data.from}`, this.tag());
111
- fs.writeFileSync(data.from, data.to);
112
- };
113
- this.file_read = (data) => {
114
- return fs.readFileSync(data.path).toString();
115
- };
116
- this.stopall = () => {
117
- this.children.forEach(x => {
118
- x.stdin.write('q');
119
- x.stdin.end();
120
- (0, tree_kill_1.default)(x.pid, 'SIGKILL');
121
- });
122
- this.children = [];
123
- };
124
- this.lib_command = (command, args) => __awaiter(this, void 0, void 0, function* () {
125
- const cc = process.platform == "win32" ? command : "./" + command;
126
- return this.command(cc, args, path.join(os.homedir(), interface_1.DATA_FOLDER, "exe"));
127
- });
128
- this.command = (command, args, cwd) => __awaiter(this, void 0, void 0, function* () {
129
- this.messager_log(`[OS Action] Command cwd: ${cwd}`, this.tag());
130
- this.messager_log(`[OS Action] Command command: ${command}`, this.tag());
131
- this.messager_log(`[OS Action] Command args: ${args}`, this.tag());
132
- return new Promise((resolve, reject) => {
133
- const child = (0, child_process_1.spawn)(command, args.split(' '), {
134
- cwd: cwd,
135
- shell: true,
136
- stdio: ['pipe', 'pipe', 'pipe']
137
- });
138
- child.stdin.setDefaultEncoding('utf8');
139
- child.on('spawn', () => {
140
- this.children.push(child);
141
- this.messager_log(`[Command] Spawn process`, this.tag());
142
- });
143
- child.on('error', (err) => {
144
- this.messager_log(`[Command] Error: ${err}`, this.tag());
145
- reject(`Error ${err}`);
146
- });
147
- child.on('exit', (code, signal) => {
148
- this.messager_log(`[Command] Process Exit: ${code}`, this.tag());
149
- });
150
- child.on('message', (message, sendHandle) => {
151
- this.messager_log(`[Command] : ${message.toString()}`, this.tag());
152
- });
153
- child.on('close', (code, signal) => {
154
- this.messager_log(`[Command] Process Close: ${code}`, this.tag());
155
- const index = this.children.findIndex(x => x.pid == child.pid);
156
- if (index != -1)
157
- this.children.splice(index, 1);
158
- resolve(`Successfully ${code}`);
159
- });
160
- child.stdout.setEncoding('utf8');
161
- child.stdout.on('data', (chunk) => {
162
- this.messager_log(`[Command Info] : ${chunk.toString()}`, this.tag());
163
- });
164
- child.stderr.setEncoding('utf8');
165
- child.stderr.on('data', (chunk) => {
166
- this.messager_log(`[Command Error] : ${chunk.toString()}`, this.tag());
167
- });
168
- });
169
- });
170
- this.command_sync = (command, args, cwd) => __awaiter(this, void 0, void 0, function* () {
171
- return this.command(command, args, cwd);
172
- });
173
- this.command_exec = (command, args, cwd) => {
174
- this.messager_log(`[OS Action] Command cwd: ${cwd}`, this.tag());
175
- this.messager_log(`[OS Action] Command command: ${command}`, this.tag());
176
- this.messager_log(`[OS Action] Command args: ${args}`, this.tag());
177
- const child = (0, child_process_1.exec)(`${command} ${args}`, {
178
- cwd: cwd
179
- });
180
- child.on('spawn', () => {
181
- this.messager_log(`[Command] Spawn process`, this.tag());
182
- });
183
- child.on('error', (err) => {
184
- this.messager_log(`[Command] Error: ${err}`, this.tag());
185
- });
186
- child.on('exit', (code, signal) => {
187
- this.messager_log(`[Command] Process Exit: ${code}`, this.tag());
188
- });
189
- child.on('message', (message, sendHandle) => {
190
- this.messager_log(`[Command] : ${message.toString()}`, this.tag());
191
- });
192
- child.on('close', (code, signal) => {
193
- this.messager_log(`[Command] Process Close: ${code}`, this.tag());
194
- });
195
- };
196
- this.tag = _tag;
197
- this.runtime = _runtime;
198
- this.messager = _messager;
199
- this.messager_log = _messager_log;
200
- }
201
- }
202
- exports.ClientOS = ClientOS;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClientParameter = void 0;
4
- class ClientParameter {
5
- constructor(_source) {
6
- this.feedbacknumber = (data) => {
7
- this.feedback("feedback_number", data);
8
- };
9
- this.feedbackboolean = (data) => {
10
- this.feedback("feedback_boolean", data);
11
- };
12
- this.feedbackstring = (data) => {
13
- this.feedback("feedback_string", data);
14
- };
15
- this.feedbackobject = (data) => {
16
- this.feedback("feedback_object", data);
17
- };
18
- this.feedbacklist = (data) => {
19
- this.feedback("feedback_list", data);
20
- };
21
- this.feedbackselect = (data) => {
22
- this.feedback("feedback_select", data);
23
- };
24
- this.feedback = (title, data) => {
25
- if (this.source == undefined)
26
- return;
27
- const p = {
28
- name: title,
29
- data: data
30
- };
31
- this.source.send(JSON.stringify(p, null, 2));
32
- };
33
- this.source = _source;
34
- }
35
- }
36
- exports.ClientParameter = ClientParameter;
@@ -1,118 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.ClientResource = void 0;
16
- const systeminformation_1 = __importDefault(require("systeminformation"));
17
- const interface_1 = require("../interface");
18
- class ClientResource {
19
- constructor() {
20
- this.is_query = false;
21
- this.Query = (...args_1) => __awaiter(this, [...args_1], void 0, function* (src = undefined, type = interface_1.ResourceType.ALL) {
22
- this.is_query = true;
23
- const result = src != undefined ? src : this.create_new();
24
- const _system = (type & interface_1.ResourceType.SYSTEM) == interface_1.ResourceType.SYSTEM ? systeminformation_1.default.system() : undefined;
25
- const _cpu = systeminformation_1.default.cpu();
26
- const _ram = systeminformation_1.default.mem();
27
- const _battery = systeminformation_1.default.battery();
28
- const _load = systeminformation_1.default.currentLoad();
29
- const _os = systeminformation_1.default.osInfo();
30
- const _gpu = systeminformation_1.default.graphics();
31
- const _disk = systeminformation_1.default.fsSize();
32
- const _net = systeminformation_1.default.networkStats();
33
- this.is_query = false;
34
- return yield Promise.all([_system, _cpu, _ram, _battery, _load, _os, _gpu, _disk, _net]).then(x => {
35
- const system = x[0];
36
- const cpu = x[1];
37
- const ram = x[2];
38
- const battery = x[3];
39
- const load = x[4];
40
- const os = x[5];
41
- const gpu = x[6];
42
- const disk = x[7];
43
- const net = x[8];
44
- if (system != undefined) {
45
- result.system_name = `${system.manufacturer} ${system.model}`;
46
- result.virtual = system.virtual;
47
- }
48
- if (os != undefined) {
49
- result.platform = process.platform;
50
- result.arch = process.arch;
51
- result.hostname = os.hostname;
52
- }
53
- if (cpu != undefined) {
54
- result.cpu_name = `${cpu.manufacturer} ${cpu.brand} ${cpu.speed}`;
55
- result.cpu_core = cpu.cores;
56
- }
57
- if (load != undefined) {
58
- result.cpu_usage = load.currentLoadGuest + load.currentLoadIrq + load.currentLoadSystem + load.currentLoad + load.currentLoadSteal + load.currentLoadNice;
59
- }
60
- if (ram != undefined) {
61
- result.ram_usage = ram.used;
62
- result.ram_free = ram.free;
63
- result.ram_total = ram.total;
64
- }
65
- if (battery != undefined) {
66
- result.battery = battery.hasBattery ? battery.percent : 1;
67
- result.charging = battery.isCharging;
68
- }
69
- if (gpu != undefined) {
70
- result.gpu = gpu.controllers.map(x => ({
71
- gpu_name: `${x.vendor} ${x.model}`
72
- }));
73
- }
74
- if (disk != undefined) {
75
- result.disk = disk.map(x => ({
76
- disk_name: x.fs,
77
- disk_type: x.type,
78
- disk_free: x.available,
79
- disk_total: x.size,
80
- disk_usage: x.used,
81
- disk_percentage: x.use,
82
- }));
83
- }
84
- if (net != undefined) {
85
- result.net = net.map(x => ({
86
- net_name: x.iface,
87
- download: x.rx_sec,
88
- upload: x.tx_sec
89
- }));
90
- }
91
- result.pid_usage = process.pid;
92
- return result;
93
- });
94
- });
95
- this.create_new = () => {
96
- return {
97
- system_name: '',
98
- virtual: false,
99
- platform: '',
100
- arch: '',
101
- hostname: '',
102
- cpu_name: '',
103
- cpu_core: 0,
104
- cpu_usage: 0,
105
- ram_usage: 0,
106
- ram_free: 0,
107
- ram_total: 0,
108
- battery: 0,
109
- charging: false,
110
- gpu: [],
111
- disk: [],
112
- net: [],
113
- pid_usage: 0
114
- };
115
- };
116
- }
117
- }
118
- exports.ClientResource = ClientResource;
@@ -1,118 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClientShell = void 0;
4
- const child_process_1 = require("child_process");
5
- const os_1 = require("./os");
6
- class ClientShell {
7
- constructor(_messager, _messager_log, _client) {
8
- this.shell_workers = [];
9
- this.open_shell = (data, source) => {
10
- if (this.shell_workers.find(x => x[0] == source)) {
11
- this.messager_log(`[Shell] Error the source already open the shell`);
12
- return;
13
- }
14
- const program = process.platform === "win32" ? 'cmd' : 'bash';
15
- const child = (0, child_process_1.spawn)(program, [], {
16
- stdio: ['pipe', 'pipe', 'pipe'],
17
- shell: true,
18
- windowsHide: true,
19
- env: Object.assign({}, process.env)
20
- });
21
- this.shell_workers.push([source, child]);
22
- let t = "";
23
- const workerFeedback = (str) => {
24
- for (let i = 0; i < str.length; i++) {
25
- if (str[i] == '\n') {
26
- const data = {
27
- data: t
28
- };
29
- const d = {
30
- name: "shell_reply",
31
- data: data
32
- };
33
- source.send(JSON.stringify(d));
34
- t = "";
35
- }
36
- else {
37
- t += str[i];
38
- }
39
- }
40
- };
41
- child.on('exit', (code, signal) => {
42
- const index = this.shell_workers.findIndex(x => x[0] == source);
43
- if (index != -1)
44
- this.shell_workers.splice(index, 1);
45
- });
46
- child.on('message', (message, sendHandle) => {
47
- workerFeedback(message.toString());
48
- });
49
- child.stdout.setEncoding('utf8');
50
- child.stdout.on('data', (chunk) => {
51
- workerFeedback(chunk.toString());
52
- });
53
- child.stderr.setEncoding('utf8');
54
- child.stderr.on('data', (chunk) => {
55
- workerFeedback(chunk.toString());
56
- });
57
- };
58
- this.enter_shell = (input, source) => {
59
- var _a, _b, _c;
60
- const p = this.shell_workers.find(x => x[0] == source);
61
- if (p == undefined) {
62
- this.messager_log(`[Shell] Cannot find shell instance`);
63
- return;
64
- }
65
- (_a = p[1].stdin) === null || _a === void 0 ? void 0 : _a.write(input + '\n');
66
- if (process.platform == 'win32')
67
- (_b = p[1].stdin) === null || _b === void 0 ? void 0 : _b.write("echo %cd%" + '\n');
68
- else
69
- (_c = p[1].stdin) === null || _c === void 0 ? void 0 : _c.write("pwd" + '\n');
70
- };
71
- this.close_shell = (data, source) => {
72
- const p = this.shell_workers.find(x => x[0] == source);
73
- if (p == undefined) {
74
- this.messager_log(`[Shell] Cannot find shell instance`);
75
- return;
76
- }
77
- p[1].kill();
78
- };
79
- this.close_shell_all = (data) => {
80
- this.shell_workers.forEach(p => {
81
- if (p == undefined) {
82
- this.messager_log(`[Shell] Cannot find shell instance`);
83
- return;
84
- }
85
- p[1].kill();
86
- });
87
- };
88
- this.shell_folder = (data, source) => {
89
- if (data.length == 0) {
90
- data = process.cwd();
91
- }
92
- if (!this.os.fs_dir_exist({ path: data })) {
93
- data = process.cwd();
94
- }
95
- const d = {
96
- path: data,
97
- cwd: process.cwd(),
98
- folders: this.os.dir_dirs({ path: data }),
99
- files: this.os.dir_files({ path: data })
100
- };
101
- const h = {
102
- name: "shell_folder_reply",
103
- data: d
104
- };
105
- source.send(JSON.stringify(h));
106
- };
107
- this.disconnect = (source) => {
108
- const p = this.shell_workers.find(x => x[0] == source);
109
- if (p == undefined)
110
- return;
111
- p[1].kill();
112
- };
113
- this.os = new os_1.ClientOS(() => "SHELL", () => "", _messager, _messager_log);
114
- this.messager = _messager;
115
- this.messager_log = _messager_log;
116
- }
117
- }
118
- exports.ClientShell = ClientShell;
@@ -1,125 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConsoleManager = void 0;
4
- class ConsoleManager {
5
- constructor(_url, _messager_log, _emitter) {
6
- this.buffer = [];
7
- this.on = (channel, listener) => {
8
- const index = this.events.findIndex(x => x[0] == channel);
9
- if (index == -1) {
10
- this.events.push([channel, [listener]]);
11
- }
12
- else {
13
- this.events[index][1].push(listener);
14
- }
15
- };
16
- this.once = (channel, listener) => {
17
- const index = this.events.findIndex(x => x[0] == channel);
18
- if (index == -1) {
19
- this.events_once.push([channel, [listener]]);
20
- }
21
- else {
22
- this.events_once[index][1].push(listener);
23
- }
24
- };
25
- this.off = (channel, listener) => {
26
- const index = this.events.findIndex(x => x[0] == channel);
27
- if (index == -1) {
28
- return;
29
- }
30
- else {
31
- const index2 = this.events[index][1].findIndex(x => x == listener);
32
- if (index2 != -1)
33
- this.events[index][1].splice(index2, 1);
34
- }
35
- };
36
- this.send = (data) => {
37
- const d = {
38
- name: data.name,
39
- token: data.token,
40
- data: data.data
41
- };
42
- if (this.ws.readyState !== WebSocket.OPEN) {
43
- this.buffer.push(d);
44
- }
45
- else {
46
- this.ws.send(JSON.stringify(d));
47
- }
48
- };
49
- this.received = (h) => {
50
- if (h == undefined) {
51
- this.messager_log('[Source Analysis] Analysis Failed, Value is undefined');
52
- return;
53
- }
54
- if (h.message != undefined && h.message.length > 0) {
55
- this.messager_log(`[Source Analysis] ${h.message}`);
56
- }
57
- if (h.data == undefined)
58
- return;
59
- const index = this.events.findIndex(x => x[0] == h.name);
60
- const index2 = this.events_once.findIndex(x => x[0] == h.name);
61
- let p = false;
62
- if (index != -1) {
63
- const castingFunc = this.events[index][1];
64
- castingFunc.forEach(x => {
65
- if (h.data instanceof Array) {
66
- if (h.data.length == 1)
67
- x(h.data[0]);
68
- else
69
- x(...h.data);
70
- }
71
- else {
72
- x(h.data);
73
- }
74
- });
75
- p = true;
76
- }
77
- if (index2 != -1) {
78
- const castingFunc = this.events_once[index2][1];
79
- castingFunc.forEach(x => {
80
- if (h.data instanceof Array) {
81
- if (h.data.length == 1)
82
- x(h.data[0]);
83
- else
84
- x(...h.data);
85
- }
86
- else {
87
- x(h.data);
88
- }
89
- });
90
- this.events_once.splice(index2, 1);
91
- p = true;
92
- }
93
- if (!p) {
94
- this.messager_log(`[Source Analysis] Analysis Failed, Unknowed header, name: ${h.name}, meta: ${h.meta}`);
95
- }
96
- };
97
- this.messager_log = _messager_log;
98
- this.url = _url;
99
- this.emitter = _emitter;
100
- this.events = [];
101
- this.events_once = [];
102
- this.ws = new WebSocket(this.url);
103
- this.ws.onerror = (err) => {
104
- this.messager_log(`[Error] Express Connection failed ${this.url}`);
105
- };
106
- this.ws.onclose = (ev) => {
107
- this.messager_log(`[Close] Express Client close, ${ev.code}, ${ev.reason}`);
108
- this.buffer = [];
109
- };
110
- this.ws.onopen = () => {
111
- this.messager_log('[Connection] Express New Connection !');
112
- for (let i = 0; i < this.buffer.length; i++) {
113
- this.ws.send(JSON.stringify(this.buffer[i]));
114
- }
115
- this.buffer = [];
116
- };
117
- this.ws.onmessage = (ev) => {
118
- this.received(JSON.parse(ev.data.toString()));
119
- };
120
- }
121
- get connected() {
122
- return this.ws.readyState === 1;
123
- }
124
- }
125
- exports.ConsoleManager = ConsoleManager;
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConsoleServerManager = void 0;
4
- class ConsoleServerManager {
5
- constructor(_ws, _messager_log, _typeMap) {
6
- this.Analysis = (h) => {
7
- if (h == undefined) {
8
- this.messager_log('[Source Analysis] Failed, Get a undefined value');
9
- return;
10
- }
11
- if (h.message != undefined && h.message.length > 0) {
12
- this.messager_log(`[Source Analysis] ${h.message}`);
13
- }
14
- if (h.data == undefined)
15
- return;
16
- if (this.typeMap.hasOwnProperty(h.name)) {
17
- const castingFunc = this.typeMap[h.name];
18
- if (h.data instanceof Array) {
19
- if (h.data.length == 1)
20
- castingFunc(this.ws, h.data[0]);
21
- else
22
- castingFunc(this.ws, ...h.data);
23
- }
24
- else {
25
- castingFunc(this.ws, h.data);
26
- }
27
- }
28
- else {
29
- this.messager_log(`[Source Analysis] Failed, Unknown, name: ${h.name}, meta: ${h.meta}`);
30
- }
31
- };
32
- this.messager_log = _messager_log;
33
- this.ws = _ws;
34
- this.typeMap = _typeMap;
35
- }
36
- }
37
- exports.ConsoleServerManager = ConsoleServerManager;