@akala/pm 5.2.29 → 5.2.30

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 (175) hide show
  1. package/changelog.md +2 -3
  2. package/dist/cjs/akala.d.mts +2 -0
  3. package/dist/cjs/akala.mjs +439 -0
  4. package/dist/cjs/akala.mjs.map +1 -0
  5. package/dist/cjs/cli-helper.d.ts +1 -1
  6. package/dist/cjs/cli-helper.js +1 -1
  7. package/dist/cjs/cli.d.ts +2 -0
  8. package/dist/cjs/cli.js +371 -0
  9. package/dist/cjs/cli.js.map +1 -0
  10. package/dist/cjs/commands/$init.d.ts +1 -1
  11. package/dist/cjs/commands/$init.js +109 -95
  12. package/dist/cjs/commands/$init.js.map +1 -1
  13. package/dist/cjs/commands/bridge.d.ts +1 -1
  14. package/dist/cjs/commands/bridge.js +1 -1
  15. package/dist/cjs/commands/config.d.ts +1 -1
  16. package/dist/cjs/commands/config.js +26 -15
  17. package/dist/cjs/commands/config.js.map +1 -1
  18. package/dist/cjs/commands/connect.d.ts +1 -1
  19. package/dist/cjs/commands/connect.js +31 -20
  20. package/dist/cjs/commands/connect.js.map +1 -1
  21. package/dist/cjs/commands/discover.d.ts +1 -1
  22. package/dist/cjs/commands/discover.js +70 -59
  23. package/dist/cjs/commands/discover.js.map +1 -1
  24. package/dist/cjs/commands/install.d.ts +1 -1
  25. package/dist/cjs/commands/install.js +20 -9
  26. package/dist/cjs/commands/install.js.map +1 -1
  27. package/dist/cjs/commands/link.d.ts +1 -1
  28. package/dist/cjs/commands/link.js +17 -6
  29. package/dist/cjs/commands/link.js.map +1 -1
  30. package/dist/cjs/commands/log.d.ts +1 -1
  31. package/dist/cjs/commands/log.js +3 -2
  32. package/dist/cjs/commands/log.js.map +1 -1
  33. package/dist/cjs/commands/ls.d.ts +1 -1
  34. package/dist/cjs/commands/ls.js +1 -1
  35. package/dist/cjs/commands/map.d.ts +1 -1
  36. package/dist/cjs/commands/map.js +17 -6
  37. package/dist/cjs/commands/map.js.map +1 -1
  38. package/dist/cjs/commands/name.d.ts +1 -1
  39. package/dist/cjs/commands/name.js +1 -1
  40. package/dist/cjs/commands/plugin/add.d.ts +1 -1
  41. package/dist/cjs/commands/plugin/add.js +1 -1
  42. package/dist/cjs/commands/plugin/remove.d.ts +1 -1
  43. package/dist/cjs/commands/plugin/remove.js +1 -1
  44. package/dist/cjs/commands/proxy.d.ts +1 -1
  45. package/dist/cjs/commands/proxy.js +25 -14
  46. package/dist/cjs/commands/proxy.js.map +1 -1
  47. package/dist/cjs/commands/ready.d.ts +1 -1
  48. package/dist/cjs/commands/ready.js +31 -19
  49. package/dist/cjs/commands/ready.js.map +1 -1
  50. package/dist/cjs/commands/reload-metadata.d.ts +1 -1
  51. package/dist/cjs/commands/reload-metadata.js +15 -4
  52. package/dist/cjs/commands/reload-metadata.js.map +1 -1
  53. package/dist/cjs/commands/restart.d.ts +1 -1
  54. package/dist/cjs/commands/restart.js +14 -3
  55. package/dist/cjs/commands/restart.js.map +1 -1
  56. package/dist/cjs/commands/start.d.ts +1 -1
  57. package/dist/cjs/commands/start.js +133 -121
  58. package/dist/cjs/commands/start.js.map +1 -1
  59. package/dist/cjs/commands/status.d.ts +1 -1
  60. package/dist/cjs/commands/status.js +1 -1
  61. package/dist/cjs/commands/stop.d.ts +1 -1
  62. package/dist/cjs/commands/stop.js +37 -26
  63. package/dist/cjs/commands/stop.js.map +1 -1
  64. package/dist/cjs/commands/update.d.ts +1 -1
  65. package/dist/cjs/commands/update.js +22 -11
  66. package/dist/cjs/commands/update.js.map +1 -1
  67. package/dist/cjs/commands/version.d.ts +1 -1
  68. package/dist/cjs/commands/version.js +21 -10
  69. package/dist/cjs/commands/version.js.map +1 -1
  70. package/dist/cjs/container.d.ts +1 -1
  71. package/dist/cjs/container.js +1 -1
  72. package/dist/cjs/fork.d.ts +2 -0
  73. package/dist/cjs/fork.js +157 -0
  74. package/dist/cjs/fork.js.map +1 -0
  75. package/dist/cjs/index.d.ts +1 -1
  76. package/dist/cjs/index.js +31 -18
  77. package/dist/cjs/index.js.map +1 -1
  78. package/dist/cjs/ipc-adapter.d.ts +1 -1
  79. package/dist/cjs/ipc-adapter.js +1 -1
  80. package/dist/cjs/new-line-prefixer.d.ts +1 -1
  81. package/dist/cjs/new-line-prefixer.js +2 -2
  82. package/dist/cjs/new-line-prefixer.js.map +1 -1
  83. package/dist/cjs/npm-helper.d.ts +1 -1
  84. package/dist/cjs/npm-helper.js +21 -6
  85. package/dist/cjs/npm-helper.js.map +1 -1
  86. package/dist/cjs/sidecar.d.ts +1 -1
  87. package/dist/cjs/sidecar.js +17 -8
  88. package/dist/cjs/sidecar.js.map +1 -1
  89. package/dist/cjs/standalone.d.ts +1 -1
  90. package/dist/cjs/standalone.js +22 -13
  91. package/dist/cjs/standalone.js.map +1 -1
  92. package/dist/cjs/state.d.ts +1 -1
  93. package/dist/cjs/state.js +1 -1
  94. package/dist/cjs/test/pwet.d.ts +1 -1
  95. package/dist/cjs/test/pwet.js +15 -4
  96. package/dist/cjs/test/pwet.js.map +1 -1
  97. package/dist/cjs/yarn-helper.d.ts +1 -1
  98. package/dist/cjs/yarn-helper.js +21 -6
  99. package/dist/cjs/yarn-helper.js.map +1 -1
  100. package/dist/esm/akala.d.mts +1 -1
  101. package/dist/esm/akala.mjs +1 -1
  102. package/dist/esm/cli-helper.d.ts +1 -1
  103. package/dist/esm/cli-helper.js +1 -1
  104. package/dist/esm/cli.d.ts +1 -1
  105. package/dist/esm/cli.js +1 -1
  106. package/dist/esm/commands/$init.d.ts +1 -1
  107. package/dist/esm/commands/$init.js +1 -1
  108. package/dist/esm/commands/bridge.d.ts +1 -1
  109. package/dist/esm/commands/bridge.js +1 -1
  110. package/dist/esm/commands/config.d.ts +1 -1
  111. package/dist/esm/commands/config.js +1 -1
  112. package/dist/esm/commands/connect.d.ts +1 -1
  113. package/dist/esm/commands/connect.js +1 -1
  114. package/dist/esm/commands/discover.d.ts +1 -1
  115. package/dist/esm/commands/discover.js +1 -1
  116. package/dist/esm/commands/install.d.ts +1 -1
  117. package/dist/esm/commands/install.js +1 -1
  118. package/dist/esm/commands/link.d.ts +1 -1
  119. package/dist/esm/commands/link.js +1 -1
  120. package/dist/esm/commands/log.d.ts +1 -1
  121. package/dist/esm/commands/log.js +1 -1
  122. package/dist/esm/commands/ls.d.ts +1 -1
  123. package/dist/esm/commands/ls.js +1 -1
  124. package/dist/esm/commands/map.d.ts +1 -1
  125. package/dist/esm/commands/map.js +1 -1
  126. package/dist/esm/commands/name.d.ts +1 -1
  127. package/dist/esm/commands/name.js +1 -1
  128. package/dist/esm/commands/plugin/add.d.ts +1 -1
  129. package/dist/esm/commands/plugin/add.js +1 -1
  130. package/dist/esm/commands/plugin/remove.d.ts +1 -1
  131. package/dist/esm/commands/plugin/remove.js +1 -1
  132. package/dist/esm/commands/proxy.d.ts +1 -1
  133. package/dist/esm/commands/proxy.js +1 -1
  134. package/dist/esm/commands/ready.d.ts +1 -1
  135. package/dist/esm/commands/ready.js +1 -1
  136. package/dist/esm/commands/reload-metadata.d.ts +1 -1
  137. package/dist/esm/commands/reload-metadata.js +1 -1
  138. package/dist/esm/commands/restart.d.ts +1 -1
  139. package/dist/esm/commands/restart.js +1 -1
  140. package/dist/esm/commands/start.d.ts +1 -1
  141. package/dist/esm/commands/start.js +1 -1
  142. package/dist/esm/commands/status.d.ts +1 -1
  143. package/dist/esm/commands/status.js +1 -1
  144. package/dist/esm/commands/stop.d.ts +1 -1
  145. package/dist/esm/commands/stop.js +1 -1
  146. package/dist/esm/commands/update.d.ts +1 -1
  147. package/dist/esm/commands/update.js +1 -1
  148. package/dist/esm/commands/version.d.ts +1 -1
  149. package/dist/esm/commands/version.js +1 -1
  150. package/dist/esm/container.d.ts +1 -1
  151. package/dist/esm/container.js +1 -1
  152. package/dist/esm/fork.d.ts +1 -1
  153. package/dist/esm/fork.js +1 -1
  154. package/dist/esm/index.d.ts +1 -1
  155. package/dist/esm/index.js +1 -1
  156. package/dist/esm/ipc-adapter.d.ts +1 -1
  157. package/dist/esm/ipc-adapter.js +1 -1
  158. package/dist/esm/new-line-prefixer.d.ts +1 -1
  159. package/dist/esm/new-line-prefixer.js +1 -1
  160. package/dist/esm/npm-helper.d.ts +1 -1
  161. package/dist/esm/npm-helper.js +1 -1
  162. package/dist/esm/sidecar.d.ts +1 -1
  163. package/dist/esm/sidecar.js +1 -1
  164. package/dist/esm/standalone.d.ts +1 -1
  165. package/dist/esm/standalone.js +1 -1
  166. package/dist/esm/state.d.ts +1 -1
  167. package/dist/esm/state.js +1 -1
  168. package/dist/esm/test/pwet.d.ts +1 -1
  169. package/dist/esm/test/pwet.js +1 -1
  170. package/dist/esm/yarn-helper.d.ts +1 -1
  171. package/dist/esm/yarn-helper.js +1 -1
  172. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  173. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  174. package/package.json +6 -6
  175. package/tsconfig.cjs.json +0 -5
@@ -0,0 +1,371 @@
1
+ #!/usr/bin/env node
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
+ import * as path from 'path';
12
+ import { Processors, NetSocketAdapter, Metadata, proxy, Triggers, Cli } from '@akala/commands';
13
+ import { Socket } from 'net';
14
+ import { TLSSocket } from 'tls';
15
+ import { platform, homedir } from 'os';
16
+ import start from './commands/start.js';
17
+ import { Readable } from 'stream';
18
+ import { program, buildCliContextFromProcess, ErrorMessage } from '@akala/cli';
19
+ import { Binding } from '@akala/core';
20
+ const tableChars = {
21
+ 'top': '─',
22
+ 'top-mid': '┬',
23
+ 'top-left': '┌',
24
+ 'top-right': '┐',
25
+ 'bottom': '─',
26
+ 'bottom-mid': '┴',
27
+ 'bottom-left': '└',
28
+ 'bottom-right': '┘',
29
+ 'left': '│',
30
+ 'left-mid': '├',
31
+ 'mid': '─',
32
+ 'mid-mid': '┼',
33
+ 'right': '│',
34
+ 'right-mid': '┤',
35
+ 'middle': '│'
36
+ };
37
+ const truncate = '…';
38
+ function requireOrImportJson(path) {
39
+ if (require)
40
+ return Promise.resolve(require(path));
41
+ else
42
+ //@ts-ignore
43
+ return import(path, { assert: { type: 'json' } }).then(i => i.default);
44
+ }
45
+ const cli = program.options({ output: { aliases: ['o'], needsValue: true, doc: 'output as `table` if array otherwise falls back to standard node output' }, verbose: { aliases: ['v'] }, tls: { doc: "enables tls connection to the `pmSock`" }, pmSock: { aliases: ['pm-sock'], needsValue: true, doc: "path to the unix socket or destination in the form host:port" }, help: { doc: "displays this help message" } });
46
+ cli.command('start pm')
47
+ .option('inspect', { doc: "starts the process with --inspect-brk parameter to help debugging" })
48
+ .option('keepAttached', { doc: "keeps the process attached" })
49
+ .action(c => {
50
+ c.options['name'] = 'pm';
51
+ c.options['program'] = new URL('../../commands.json', import.meta.url).toString();
52
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
+ return start.call({}, null, 'pm', c);
54
+ });
55
+ let socket;
56
+ let processor;
57
+ let metaContainer;
58
+ let container;
59
+ cli.preAction((c) => __awaiter(void 0, void 0, void 0, function* () {
60
+ process.stdin.pause();
61
+ process.stdin.setEncoding('utf8');
62
+ if (!socket) {
63
+ const netsocket = socket = new Socket();
64
+ if (c.options.tls) {
65
+ socket = new TLSSocket(netsocket, {});
66
+ }
67
+ yield new Promise((resolve, reject) => {
68
+ if (c.options.pmSock) {
69
+ if (typeof (c.options.pmSock) == 'string') {
70
+ const indexOfColon = c.options.pmSock.indexOf(':');
71
+ if (indexOfColon > -1)
72
+ netsocket.connect(Number(c.options.pmSock.substring(indexOfColon + 1)), c.options.pmSock.substring(0, indexOfColon));
73
+ else
74
+ netsocket.connect(c.options.pmSock);
75
+ }
76
+ else
77
+ netsocket.connect(c.options.pmSock);
78
+ }
79
+ else if (platform() == 'win32')
80
+ netsocket.connect('\\\\?\\pipe\\pm');
81
+ else {
82
+ try {
83
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
84
+ import(path.join(homedir(), './.pm.config.json'), { assert: { type: 'json' } }).then(config => netsocket.connect(config.default.mapping.pm.connect.socket[0]));
85
+ }
86
+ catch (e) {
87
+ if (e.code != 'MODULE_NOT_FOUND')
88
+ reject(e);
89
+ else {
90
+ e.code = 'ENOENT';
91
+ socket.destroy(e);
92
+ }
93
+ }
94
+ }
95
+ if (c.options.tls) {
96
+ // socket.on('data', function (e) { console.log(e) });
97
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
98
+ socket.connect({});
99
+ netsocket.on('error', function (e) {
100
+ console.log(e);
101
+ });
102
+ socket.on('error', function (e) {
103
+ console.log(e);
104
+ });
105
+ }
106
+ socket.on('connect', function () {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ resolve();
109
+ socket.setEncoding('utf-8');
110
+ });
111
+ });
112
+ socket.on('error', (e) => __awaiter(void 0, void 0, void 0, function* () {
113
+ if (c.options.help)
114
+ resolve();
115
+ else {
116
+ if (e.code === 'ENOENT') {
117
+ // return tryLocalProcessing(c).catch(() =>
118
+ // {
119
+ resolve();
120
+ // reject(new Error('pm is not started'));
121
+ // });
122
+ }
123
+ else
124
+ reject(e);
125
+ }
126
+ }));
127
+ });
128
+ }
129
+ if (socket.readyState == 'open') {
130
+ if (!processor)
131
+ processor = new Processors.JsonRpc(Processors.JsonRpc.getConnection(new NetSocketAdapter(socket)));
132
+ if (!metaContainer)
133
+ metaContainer = (yield import(new URL('../../commands.json', import.meta.url).toString(), { assert: { type: 'json' } })).default;
134
+ if (!container) {
135
+ container = proxy(metaContainer, processor);
136
+ container.unregister(Cli.Metadata.name);
137
+ container.register(Metadata.extractCommandMetadata(Cli.Metadata));
138
+ yield container.attach(Triggers.cli, cli);
139
+ }
140
+ }
141
+ })).
142
+ // cli.
143
+ // useMiddleware(null, handle).
144
+ useError((err, args) => __awaiter(void 0, void 0, void 0, function* () {
145
+ if (err.code === 'INTERACT') {
146
+ console.log(err.message);
147
+ const value = yield readLine();
148
+ if (typeof err.as == 'string') {
149
+ const indexOfDot = err.as.indexOf('.');
150
+ if (indexOfDot > 0) {
151
+ Binding.getSetter(args.options, err.as)(value);
152
+ }
153
+ args.options[err.as] = value;
154
+ }
155
+ else
156
+ args.args.push(value);
157
+ return yield cli.process(args);
158
+ }
159
+ throw err;
160
+ }));
161
+ // handle.action(async args =>
162
+ // {
163
+ // try
164
+ // {
165
+ // const cmdName = args.args[0].toString();
166
+ // if (cmdName == '$metadata')
167
+ // return formatResult(metaContainer, args.options.output);
168
+ // else
169
+ // {
170
+ // const cmd = metaContainer.commands.find(c => c.name === cmdName);
171
+ // await tryRun(processor, cmd, args, false);
172
+ // }
173
+ // await new Promise<void>((resolve) => socket.end(resolve));
174
+ // }
175
+ // catch (e)
176
+ // {
177
+ // if (e.code == 'INTERACT')
178
+ // {
179
+ // console.log(e.message);
180
+ // const value = await readLine();
181
+ // if (e.as)
182
+ // args.options[e] = value;
183
+ // else
184
+ // args.args.push(value);
185
+ // return handle.handle(args).then(e => { if (e) throw e }, res => res);
186
+ // }
187
+ // if (args.options.verbose)
188
+ // console.log(e);
189
+ // else
190
+ // console.log(e.message)
191
+ // await new Promise<void>((resolve) => socket.end(resolve));
192
+ // }
193
+ // });
194
+ cli.format((result, context) => formatResult(result, context.options.output));
195
+ program.useError((err, context) => {
196
+ if (context.options.verbose)
197
+ console.error(err);
198
+ else if (err instanceof ErrorMessage)
199
+ console.log(err.message);
200
+ else
201
+ console.error('Error: ' + err.message);
202
+ return Promise.reject(err);
203
+ });
204
+ program.process(buildCliContextFromProcess()).then(result => {
205
+ if (result instanceof Readable) {
206
+ result.pipe(process.stdout);
207
+ return;
208
+ }
209
+ if (socket)
210
+ socket.end();
211
+ }, err => {
212
+ if (err && !(err instanceof ErrorMessage))
213
+ console.error(err);
214
+ process.exit(err && err.statusCode || 50);
215
+ });
216
+ function formatResult(result, outputFormat) {
217
+ if (typeof result == 'undefined')
218
+ return;
219
+ if (result instanceof Readable) {
220
+ return result;
221
+ }
222
+ switch (outputFormat) {
223
+ case 'table':
224
+ {
225
+ const columnNames = [];
226
+ const columns = {};
227
+ if (Array.isArray(result)) {
228
+ for (const r of result) {
229
+ Object.keys(r).forEach(k => {
230
+ if (columnNames.indexOf(k) == -1)
231
+ columnNames.push(k);
232
+ });
233
+ }
234
+ columnNames.forEach(c => {
235
+ columns[c] = { maxWidthContent: 0, maxWidth: c.length + 2, values: [] };
236
+ for (const r of result) {
237
+ if (typeof (r[c]) == 'undefined' || typeof r[c] == 'string' && r[c].length == 0)
238
+ columns[c].values.push('');
239
+ else if (r[c] == null) {
240
+ columns[c].values.push('-');
241
+ columns[c].maxWidthContent = Math.max(columns[c].maxWidthContent, 1);
242
+ }
243
+ else {
244
+ columns[c].values.push(r[c].toString());
245
+ columns[c].maxWidthContent = Math.max(columns[c].maxWidthContent, r[c].toString().length);
246
+ }
247
+ columns[c].maxWidth = Math.max(columns[c].maxWidthContent, columns[c].maxWidth);
248
+ }
249
+ });
250
+ let columnNamesForDisplay = columnNames.slice(0);
251
+ let width = columnNamesForDisplay.reduce((length, c, i) => columns[columnNames[i]].maxWidth + length, 0) + columnNamesForDisplay.length + 1;
252
+ if (process.stdout.columns < width) {
253
+ for (const c of columnNames) {
254
+ if (columns[c].maxWidthContent == 0)
255
+ columnNamesForDisplay = columnNamesForDisplay.splice(columnNamesForDisplay.indexOf(c), 1);
256
+ }
257
+ width = columnNamesForDisplay.reduce((length, c, i) => columns[columnNames[i]].maxWidth + length, 0) + columnNamesForDisplay.length + 1;
258
+ }
259
+ if (process.stdout.columns < width) {
260
+ columnNamesForDisplay = columnNamesForDisplay.map(c => {
261
+ if (c.length > 8 + truncate.length) {
262
+ const newName = c.substring(0, 8) + truncate;
263
+ columns[c].maxWidth = Math.max(columns[c].maxWidthContent, newName.length);
264
+ return newName;
265
+ }
266
+ return c;
267
+ });
268
+ width = columnNamesForDisplay.reduce((length, c, i) => columns[columnNames[i]].maxWidth + length, 0) + columnNamesForDisplay.length + 1;
269
+ }
270
+ if (process.stdout.columns < width) {
271
+ columnNamesForDisplay.forEach(c => {
272
+ columns[c].maxWidth = Math.max(columns[c].maxWidthContent, c.length);
273
+ });
274
+ width = columnNamesForDisplay.reduce((length, c, i) => columns[columnNames[i]].maxWidth + length, 0) + columnNamesForDisplay.length + 1;
275
+ }
276
+ if (process.stdout.columns >= width) {
277
+ process.stdout.write(tableChars["top-left"]);
278
+ columnNamesForDisplay.forEach((c, i) => {
279
+ for (let j = 0; j < columns[columnNames[i]].maxWidth; j++)
280
+ process.stdout.write(tableChars["top"]);
281
+ if (i == columnNames.length - 1)
282
+ process.stdout.write(tableChars["top-right"]);
283
+ else
284
+ process.stdout.write(tableChars["top-mid"]);
285
+ });
286
+ process.stdout.write('\n');
287
+ process.stdout.write(tableChars["left"]);
288
+ columnNamesForDisplay.forEach((c, i) => {
289
+ let pad;
290
+ for (pad = 0; pad < (columns[columnNames[i]].maxWidth - c.length) / 2; pad++)
291
+ process.stdout.write(' ');
292
+ process.stdout.write(c);
293
+ for (pad += c.length; pad < columns[columnNames[i]].maxWidth; pad++)
294
+ process.stdout.write(' ');
295
+ if (i == columnNames.length - 1)
296
+ process.stdout.write(tableChars["right"]);
297
+ else
298
+ process.stdout.write(tableChars["middle"]);
299
+ });
300
+ process.stdout.write('\n');
301
+ process.stdout.write(tableChars["left-mid"]);
302
+ columnNamesForDisplay.forEach((c, i) => {
303
+ for (let j = 0; j < columns[columnNames[i]].maxWidth; j++)
304
+ process.stdout.write(tableChars["mid"]);
305
+ if (i == columnNames.length - 1)
306
+ process.stdout.write(tableChars["right-mid"]);
307
+ else
308
+ process.stdout.write(tableChars["mid-mid"]);
309
+ });
310
+ process.stdout.write('\n');
311
+ for (let r = 0; r < result.length; r++) {
312
+ process.stdout.write(tableChars["left"]);
313
+ columnNamesForDisplay.forEach((c, i) => {
314
+ const value = columns[columnNames[i]].values[r];
315
+ let pad;
316
+ for (pad = 0; pad < Math.floor((columns[columnNames[i]].maxWidth - value.length) / 2); pad++)
317
+ process.stdout.write(' ');
318
+ process.stdout.write(value);
319
+ for (pad += value.length; pad < columns[columnNames[i]].maxWidth; pad++)
320
+ process.stdout.write(' ');
321
+ if (i == columnNames.length - 1)
322
+ process.stdout.write(tableChars["right"]);
323
+ else
324
+ process.stdout.write(tableChars["middle"]);
325
+ });
326
+ process.stdout.write('\n');
327
+ }
328
+ process.stdout.write(tableChars["bottom-left"]);
329
+ columnNamesForDisplay.forEach((c, i) => {
330
+ for (let j = 0; j < columns[columnNames[i]].maxWidth; j++)
331
+ process.stdout.write(tableChars["bottom"]);
332
+ if (i == columnNames.length - 1)
333
+ process.stdout.write(tableChars["bottom-right"]);
334
+ else
335
+ process.stdout.write(tableChars["bottom-mid"]);
336
+ });
337
+ process.stdout.write('\n');
338
+ return;
339
+ }
340
+ }
341
+ }
342
+ // eslint-disable-next-line no-fallthrough
343
+ default:
344
+ console.log(result);
345
+ break;
346
+ }
347
+ }
348
+ let stdinBuffer = '';
349
+ function readLine() {
350
+ process.stdin.pause();
351
+ return new Promise((resolve) => {
352
+ process.stdin.on('data', function processChunk(chunk) {
353
+ const indexOfNewLine = stdinBuffer.length + chunk.indexOf('\n');
354
+ stdinBuffer += chunk;
355
+ if (indexOfNewLine > -1) {
356
+ process.stdin.pause();
357
+ process.stdin.removeListener('data', processChunk);
358
+ if (indexOfNewLine < stdinBuffer.length - 1) {
359
+ resolve(stdinBuffer.substr(0, indexOfNewLine));
360
+ stdinBuffer = stdinBuffer.substr(indexOfNewLine + 1);
361
+ }
362
+ else {
363
+ resolve(stdinBuffer);
364
+ stdinBuffer = '';
365
+ }
366
+ }
367
+ });
368
+ process.stdin.resume();
369
+ });
370
+ }
371
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import State, { RunningContainer } from '../state.js';
1
+ import State, { RunningContainer } from '../state.js';
2
2
  import pmContainer from '../container.js';
3
3
  import { Container, Metadata } from '@akala/commands';
4
4
  import { CliContext } from '@akala/cli';
@@ -1,3 +1,12 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  import { homedir } from 'os';
2
11
  import fs from 'fs/promises';
3
12
  import { join } from 'path';
@@ -5,33 +14,35 @@ import { Container, Metadata, ignoredCommands, configure, SelfDefinedCommand } f
5
14
  import { PassThrough } from 'stream';
6
15
  import { EventEmitter } from 'events';
7
16
  import { Configuration } from '@akala/config';
8
- export async function metadata(container, deep) {
9
- const metacontainer = { name: container.name || 'unnamed', commands: [] };
10
- await Promise.all(container.keys().map(async (key) => {
11
- if (key === '$injector' || key === '$state' || key === '$container' || ignoredCommands.indexOf(key) > -1 || key == '$init' || key == '$stop')
12
- return;
13
- const cmd = container.resolve(key);
14
- if (cmd && cmd.name && Metadata.isCommand(cmd) && ignoredCommands.indexOf(cmd.name) == -1)
15
- metacontainer.commands.push({ name: cmd.name, config: cmd.config });
16
- else if (cmd instanceof Container && deep) {
17
- if (!isRunningContainer(cmd) || !cmd.running && !cmd.stateless)
17
+ export function metadata(container, deep) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ const metacontainer = { name: container.name || 'unnamed', commands: [] };
20
+ yield Promise.all(container.keys().map((key) => __awaiter(this, void 0, void 0, function* () {
21
+ if (key === '$injector' || key === '$state' || key === '$container' || ignoredCommands.indexOf(key) > -1 || key == '$init' || key == '$stop')
18
22
  return;
19
- try {
20
- const subContainer = await cmd.dispatch('$metadata', deep);
21
- console.log(subContainer);
22
- if (subContainer && subContainer.commands) {
23
- subContainer.commands.forEach(c => c.name = key + '.' + c.name);
24
- metacontainer.commands.push(...subContainer.commands.filter(c => c.name !== key + '.$init' && c.name !== key + '.$stop'));
25
- }
26
- }
27
- catch (e) {
28
- if (!e || e.statusCode == 404)
23
+ const cmd = container.resolve(key);
24
+ if (cmd && cmd.name && Metadata.isCommand(cmd) && ignoredCommands.indexOf(cmd.name) == -1)
25
+ metacontainer.commands.push({ name: cmd.name, config: cmd.config });
26
+ else if (cmd instanceof Container && deep) {
27
+ if (!isRunningContainer(cmd) || !cmd.running && !cmd.stateless)
29
28
  return;
30
- throw e;
29
+ try {
30
+ const subContainer = yield cmd.dispatch('$metadata', deep);
31
+ console.log(subContainer);
32
+ if (subContainer && subContainer.commands) {
33
+ subContainer.commands.forEach(c => c.name = key + '.' + c.name);
34
+ metacontainer.commands.push(...subContainer.commands.filter(c => c.name !== key + '.$init' && c.name !== key + '.$stop'));
35
+ }
36
+ }
37
+ catch (e) {
38
+ if (!e || e.statusCode == 404)
39
+ return;
40
+ throw e;
41
+ }
31
42
  }
32
- }
33
- }));
34
- return metacontainer;
43
+ })));
44
+ return metacontainer;
45
+ });
35
46
  }
36
47
  export function isRunningContainer(c) {
37
48
  return 'running' in c;
@@ -43,78 +54,81 @@ function requireOrImportJson(path) {
43
54
  //@ts-ignore
44
55
  return import(path, { assert: { type: 'json' } }).then(i => i.default);
45
56
  }
46
- export default async function (container, context) {
47
- this.isDaemon = true;
48
- this.processes = {};
49
- this.bridges = {};
50
- const stderr = process.stderr.write;
51
- const stderrPT = new PassThrough();
52
- process.stderr.write = function (...args) {
53
- stderr.call(process.stderr, ...args);
54
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
55
- return stderrPT.write(...args);
56
- };
57
- const stdout = process.stdout.write;
58
- const stdoutPT = new PassThrough();
59
- process.stdout.write = function (...args) {
60
- stdout.call(process.stdout, ...args);
61
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
62
- return stdoutPT.write(...args);
63
- };
64
- container.process = Object.assign(new EventEmitter(), {
65
- stdout: stdoutPT, stderr: stderrPT, stdio: null, stdin: process.stdin, pid: process.pid, connected: false,
66
- exitCode: undefined,
67
- signalCode: undefined,
68
- spawnargs: process.argv,
69
- spawnfile: null,
70
- kill: process.exit.bind(process),
71
- send: null,
72
- disconnect: null,
73
- unref: null,
74
- ref: null,
75
- killed: false
76
- });
77
- const configPath = context.options.config || join(homedir(), './.pm.config.json');
78
- this.config = await Configuration.load(configPath, true);
79
- if (this.config?.mapping?.pm) {
80
- if (this.config.mapping.pm.cwd)
81
- process.chdir(this.config.mapping.pm.cwd);
82
- }
83
- else
84
- this.config = Configuration.new(configPath, {
85
- containers: { pm: { commandable: true, stateless: false, path: await requireOrImportJson('../../../commands.json') } },
86
- mapping: { pm: { cwd: process.cwd(), container: 'pm' } },
87
- plugins: []
88
- });
89
- if (context && context.args.length)
90
- await container.dispatch('connect', 'pm', context);
91
- else {
92
- await container.dispatch('connect', 'pm').catch(async (e) => {
93
- if (e && e.statusCode == 404)
94
- await container.dispatch('connect', 'pm', { args: ['local'] });
57
+ export default function (container, context) {
58
+ var _a, _b;
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ this.isDaemon = true;
61
+ this.processes = {};
62
+ this.bridges = {};
63
+ const stderr = process.stderr.write;
64
+ const stderrPT = new PassThrough();
65
+ process.stderr.write = function (...args) {
66
+ stderr.call(process.stderr, ...args);
67
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
68
+ return stderrPT.write(...args);
69
+ };
70
+ const stdout = process.stdout.write;
71
+ const stdoutPT = new PassThrough();
72
+ process.stdout.write = function (...args) {
73
+ stdout.call(process.stdout, ...args);
74
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
75
+ return stdoutPT.write(...args);
76
+ };
77
+ container.process = Object.assign(new EventEmitter(), {
78
+ stdout: stdoutPT, stderr: stderrPT, stdio: null, stdin: process.stdin, pid: process.pid, connected: false,
79
+ exitCode: undefined,
80
+ signalCode: undefined,
81
+ spawnargs: process.argv,
82
+ spawnfile: null,
83
+ kill: process.exit.bind(process),
84
+ send: null,
85
+ disconnect: null,
86
+ unref: null,
87
+ ref: null,
88
+ killed: false
95
89
  });
96
- }
97
- await this.config.commit();
98
- container.name = 'pm';
99
- const config = container.resolve('$metadata.config');
100
- container.unregister('$metadata');
101
- container.register(configure(config)(new SelfDefinedCommand(metadata, '$metadata', ['$container', 'param.0'])));
102
- this.processes[container.name] = container;
103
- container.running = true;
104
- try {
105
- await fs.unlink('./pm.sock');
106
- }
107
- catch (e) {
108
- if (e.code !== 'ENOENT')
109
- console.warn(e);
110
- }
111
- // var stop = await serve(container as Container<any>, serveMetadata(container.name, options || { _: ['local'] }));
112
- if (process.disconnect) {
113
- if (!context.options.keepAttached) {
114
- if (process.send)
115
- process.send('disconnecting daemon');
116
- process.disconnect();
90
+ const configPath = context.options.config || join(homedir(), './.pm.config.json');
91
+ this.config = yield Configuration.load(configPath, true);
92
+ if ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.mapping) === null || _b === void 0 ? void 0 : _b.pm) {
93
+ if (this.config.mapping.pm.cwd)
94
+ process.chdir(this.config.mapping.pm.cwd);
95
+ }
96
+ else
97
+ this.config = Configuration.new(configPath, {
98
+ containers: { pm: { commandable: true, stateless: false, path: yield requireOrImportJson('../../../commands.json') } },
99
+ mapping: { pm: { cwd: process.cwd(), container: 'pm' } },
100
+ plugins: []
101
+ });
102
+ if (context && context.args.length)
103
+ yield container.dispatch('connect', 'pm', context);
104
+ else {
105
+ yield container.dispatch('connect', 'pm').catch((e) => __awaiter(this, void 0, void 0, function* () {
106
+ if (e && e.statusCode == 404)
107
+ yield container.dispatch('connect', 'pm', { args: ['local'] });
108
+ }));
109
+ }
110
+ yield this.config.commit();
111
+ container.name = 'pm';
112
+ const config = container.resolve('$metadata.config');
113
+ container.unregister('$metadata');
114
+ container.register(configure(config)(new SelfDefinedCommand(metadata, '$metadata', ['$container', 'param.0'])));
115
+ this.processes[container.name] = container;
116
+ container.running = true;
117
+ try {
118
+ yield fs.unlink('./pm.sock');
117
119
  }
118
- }
120
+ catch (e) {
121
+ if (e.code !== 'ENOENT')
122
+ console.warn(e);
123
+ }
124
+ // var stop = await serve(container as Container<any>, serveMetadata(container.name, options || { _: ['local'] }));
125
+ if (process.disconnect) {
126
+ if (!context.options.keepAttached) {
127
+ if (process.send)
128
+ process.send('disconnecting daemon');
129
+ process.disconnect();
130
+ }
131
+ }
132
+ });
119
133
  }
120
134
  //# sourceMappingURL=$init.js.map