@akala/pm 5.0.1 → 5.2.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 (169) hide show
  1. package/changelog.md +14 -1
  2. package/commands.json +22 -22
  3. package/dist/cli.js +4 -4
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/install.js +5 -5
  6. package/dist/commands/install.js.map +1 -1
  7. package/dist/commands/link.js +5 -5
  8. package/dist/commands/link.js.map +1 -1
  9. package/dist/commands/plugin/add.d.ts +2 -2
  10. package/dist/commands/plugin/remove.d.ts +2 -2
  11. package/dist/commands/start.js +4 -4
  12. package/dist/commands/start.js.map +1 -1
  13. package/dist/commands/update.js +5 -5
  14. package/dist/commands/update.js.map +1 -1
  15. package/dist/{cli-helper.d.ts → esm/cli-helper.d.ts} +1 -1
  16. package/dist/esm/cli-helper.js +17 -0
  17. package/dist/esm/cli-helper.js.map +1 -0
  18. package/dist/{cli.d.ts → esm/cli.d.ts} +0 -0
  19. package/dist/esm/cli.js +423 -0
  20. package/dist/esm/cli.js.map +1 -0
  21. package/dist/{commands → esm/commands}/$init.d.ts +2 -2
  22. package/dist/esm/commands/$init.js +113 -0
  23. package/dist/esm/commands/$init.js.map +1 -0
  24. package/dist/{commands → esm/commands}/bridge.d.ts +1 -1
  25. package/dist/esm/commands/bridge.js +11 -0
  26. package/dist/esm/commands/bridge.js.map +1 -0
  27. package/dist/{commands → esm/commands}/config.d.ts +1 -1
  28. package/dist/esm/commands/config.js +20 -0
  29. package/dist/esm/commands/config.js.map +1 -0
  30. package/dist/{commands → esm/commands}/connect.d.ts +1 -1
  31. package/dist/esm/commands/connect.js +26 -0
  32. package/dist/esm/commands/connect.js.map +1 -0
  33. package/dist/{commands → esm/commands}/discover.d.ts +3 -3
  34. package/dist/esm/commands/discover.js +72 -0
  35. package/dist/esm/commands/discover.js.map +1 -0
  36. package/dist/{commands → esm/commands}/install.d.ts +2 -2
  37. package/dist/esm/commands/install.js +13 -0
  38. package/dist/esm/commands/install.js.map +1 -0
  39. package/dist/{commands → esm/commands}/link.d.ts +2 -2
  40. package/dist/esm/commands/link.js +11 -0
  41. package/dist/esm/commands/link.js.map +1 -0
  42. package/dist/{commands → esm/commands}/log.d.ts +2 -2
  43. package/dist/esm/commands/log.js +15 -0
  44. package/dist/esm/commands/log.js.map +1 -0
  45. package/dist/{commands → esm/commands}/ls.d.ts +1 -1
  46. package/dist/esm/commands/ls.js +4 -0
  47. package/dist/esm/commands/ls.js.map +1 -0
  48. package/dist/{commands → esm/commands}/map.d.ts +1 -1
  49. package/dist/esm/commands/map.js +9 -0
  50. package/dist/esm/commands/map.js.map +1 -0
  51. package/dist/{commands → esm/commands}/name.d.ts +0 -0
  52. package/dist/esm/commands/name.js +604 -0
  53. package/dist/esm/commands/name.js.map +1 -0
  54. package/dist/esm/commands/plugin/add.d.ts +2 -0
  55. package/dist/esm/commands/plugin/add.js +5 -0
  56. package/dist/esm/commands/plugin/add.js.map +1 -0
  57. package/dist/esm/commands/plugin/remove.d.ts +2 -0
  58. package/dist/esm/commands/plugin/remove.js +7 -0
  59. package/dist/esm/commands/plugin/remove.js.map +1 -0
  60. package/dist/{commands → esm/commands}/proxy.d.ts +1 -1
  61. package/dist/esm/commands/proxy.js +19 -0
  62. package/dist/esm/commands/proxy.js.map +1 -0
  63. package/dist/{commands → esm/commands}/ready.d.ts +2 -2
  64. package/dist/esm/commands/ready.js +22 -0
  65. package/dist/esm/commands/ready.js.map +1 -0
  66. package/dist/{commands → esm/commands}/reload-metadata.d.ts +0 -0
  67. package/dist/esm/commands/reload-metadata.js +7 -0
  68. package/dist/esm/commands/reload-metadata.js.map +1 -0
  69. package/dist/{commands → esm/commands}/restart.d.ts +2 -2
  70. package/dist/esm/commands/restart.js +5 -0
  71. package/dist/esm/commands/restart.js.map +1 -0
  72. package/dist/{commands → esm/commands}/start.d.ts +3 -3
  73. package/dist/esm/commands/start.js +139 -0
  74. package/dist/esm/commands/start.js.map +1 -0
  75. package/dist/{commands → esm/commands}/status.d.ts +1 -1
  76. package/dist/esm/commands/status.js +7 -0
  77. package/dist/esm/commands/status.js.map +1 -0
  78. package/dist/{commands → esm/commands}/stop.d.ts +1 -1
  79. package/dist/esm/commands/stop.js +33 -0
  80. package/dist/esm/commands/stop.js.map +1 -0
  81. package/dist/{commands → esm/commands}/update.d.ts +1 -1
  82. package/dist/esm/commands/update.js +15 -0
  83. package/dist/esm/commands/update.js.map +1 -0
  84. package/dist/{commands → esm/commands}/version.d.ts +1 -1
  85. package/dist/esm/commands/version.js +14 -0
  86. package/dist/esm/commands/version.js.map +1 -0
  87. package/dist/esm/container.d.ts +48 -0
  88. package/dist/esm/container.js +2 -0
  89. package/dist/esm/container.js.map +1 -0
  90. package/dist/{fork.d.ts → esm/fork.d.ts} +0 -0
  91. package/dist/esm/fork.js +146 -0
  92. package/dist/esm/fork.js.map +1 -0
  93. package/dist/{index.d.ts → esm/index.d.ts} +4 -4
  94. package/dist/esm/index.js +43 -0
  95. package/dist/esm/index.js.map +1 -0
  96. package/dist/{ipc-adapter.d.ts → esm/ipc-adapter.d.ts} +2 -2
  97. package/dist/esm/ipc-adapter.js +60 -0
  98. package/dist/esm/ipc-adapter.js.map +1 -0
  99. package/dist/{new-line-prefixer.d.ts → esm/new-line-prefixer.d.ts} +2 -2
  100. package/dist/esm/new-line-prefixer.js +39 -0
  101. package/dist/esm/new-line-prefixer.js.map +1 -0
  102. package/dist/{npm-helper.d.ts → esm/npm-helper.d.ts} +0 -0
  103. package/dist/esm/npm-helper.js +20 -0
  104. package/dist/esm/npm-helper.js.map +1 -0
  105. package/dist/{sidecar.d.ts → esm/sidecar.d.ts} +2 -2
  106. package/dist/esm/sidecar.js +45 -0
  107. package/dist/esm/sidecar.js.map +1 -0
  108. package/dist/esm/standalone.d.ts +2 -0
  109. package/dist/esm/standalone.js +80 -0
  110. package/dist/esm/standalone.js.map +1 -0
  111. package/dist/{state.d.ts → esm/state.d.ts} +1 -1
  112. package/dist/esm/state.js +2 -0
  113. package/dist/esm/state.js.map +1 -0
  114. package/dist/{test → esm/test}/pwet.d.ts +0 -0
  115. package/dist/esm/test/pwet.js +7 -0
  116. package/dist/esm/test/pwet.js.map +1 -0
  117. package/dist/{yarn-helper.d.ts → esm/yarn-helper.d.ts} +0 -0
  118. package/dist/esm/yarn-helper.js +26 -0
  119. package/dist/esm/yarn-helper.js.map +1 -0
  120. package/dist/fork.js +8 -5
  121. package/dist/fork.js.map +1 -1
  122. package/dist/index.js +5 -5
  123. package/dist/index.js.map +1 -1
  124. package/dist/npm-helper.js +4 -4
  125. package/dist/npm-helper.js.map +1 -1
  126. package/dist/sidecar.js +4 -4
  127. package/dist/sidecar.js.map +1 -1
  128. package/dist/standalone.js +108 -0
  129. package/dist/standalone.js.map +1 -0
  130. package/dist/test/pwet.js +2 -2
  131. package/dist/test/pwet.js.map +1 -1
  132. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  133. package/dist/yarn-helper.js +4 -4
  134. package/dist/yarn-helper.js.map +1 -1
  135. package/package.json +24 -12
  136. package/src/cli.ts +4 -4
  137. package/src/commands/$init.ts +2 -2
  138. package/src/commands/bridge.ts +1 -1
  139. package/src/commands/config.ts +1 -1
  140. package/src/commands/connect.ts +1 -1
  141. package/src/commands/discover.ts +3 -3
  142. package/src/commands/install.ts +4 -4
  143. package/src/commands/link.ts +4 -4
  144. package/src/commands/log.ts +1 -1
  145. package/src/commands/ls.ts +1 -1
  146. package/src/commands/map.ts +1 -1
  147. package/src/commands/plugin/add.ts +1 -1
  148. package/src/commands/plugin/remove.ts +1 -1
  149. package/src/commands/proxy.ts +1 -1
  150. package/src/commands/ready.ts +2 -2
  151. package/src/commands/restart.ts +1 -1
  152. package/src/commands/start.ts +4 -4
  153. package/src/commands/status.ts +1 -1
  154. package/src/commands/stop.ts +1 -1
  155. package/src/commands/update.ts +3 -3
  156. package/src/commands/version.ts +1 -1
  157. package/src/container.ts +41 -41
  158. package/src/fork.ts +8 -4
  159. package/src/index.ts +4 -4
  160. package/src/npm-helper.ts +1 -1
  161. package/src/sidecar.ts +2 -2
  162. package/src/standalone.ts +106 -0
  163. package/src/test/pwet.ts +1 -1
  164. package/src/yarn-helper.ts +1 -1
  165. package/tsconfig.cjs.json +22 -0
  166. package/tsconfig.esm.json +22 -0
  167. package/tsconfig.tsbuildinfo +1 -1
  168. package/yarn-error.log +11177 -0
  169. package/dist/container.d.ts +0 -48
@@ -0,0 +1,146 @@
1
+ #!/usr/bin/env node
2
+ import sms from 'source-map-support';
3
+ sms.install();
4
+ import * as path from 'path';
5
+ import * as ac from '@akala/commands';
6
+ import { lstat } from 'fs/promises';
7
+ import { IpcAdapter } from "./ipc-adapter.js";
8
+ import { logger, MiddlewareComposite, module as coreModule } from '@akala/core';
9
+ import program, { buildCliContextFromProcess, ErrorMessage, NamespaceMiddleware } from '@akala/cli';
10
+ import { registerCommands, SelfDefinedCommand, parseMetadata } from '@akala/commands';
11
+ var isPm = false;
12
+ program.option('help');
13
+ let folderOrFile;
14
+ let cliContainer;
15
+ let processor;
16
+ let log;
17
+ const logMiddleware = new NamespaceMiddleware(null).option('verbose', { aliases: ['v',] });
18
+ logMiddleware.preAction(async (c) => {
19
+ if (c.options.verbose)
20
+ processor = new ac.Processors.LogProcessor(processor, (cmd, params) => {
21
+ log.verbose({ cmd, params });
22
+ return Promise.resolve();
23
+ });
24
+ await ac.Processors.FileSystem.discoverCommands(c.options.program, cliContainer, { processor: processor, isDirectory: folderOrFile.isDirectory() });
25
+ });
26
+ let initMiddleware = new NamespaceMiddleware(null);
27
+ const controller = new AbortController();
28
+ program.option('program', { needsValue: true, normalize: true }).
29
+ option('name', { needsValue: true }).
30
+ option('tls', { needsValue: false }).
31
+ options({
32
+ port: { needsValue: true, doc: 'http/ws port\n(default: 80 if http, 443 is certificate and key are provided)', aliases: ['p'], optional: true, caseSensitive: false },
33
+ tcpPort: { needsValue: true, doc: 'tcp port', aliases: ['tcp-port'], optional: true, caseSensitive: false },
34
+ cert: { needsValue: true, doc: 'public certificate', aliases: ['certificate'], optional: true, caseSensitive: false },
35
+ key: { needsValue: true, doc: 'private certificate key. Requires public certificate', aliases: ['certificate-key'], optional: true, caseSensitive: false }
36
+ }).
37
+ preAction(async (c) => //If pure js file
38
+ {
39
+ folderOrFile = await lstat(c.options.program);
40
+ if (folderOrFile.isFile() && path.extname(c.options.program) === '.js')
41
+ return require(c.options.program);
42
+ log = logger(c.options.name);
43
+ cliContainer = new ac.Container('cli', {});
44
+ if (folderOrFile.isFile())
45
+ processor = new ac.Processors.FileSystem(path.dirname(c.options.program));
46
+ else
47
+ processor = new ac.Processors.FileSystem(c.options.program);
48
+ }).
49
+ useMiddleware(null, MiddlewareComposite.new(logMiddleware, {
50
+ handle: async (c) => {
51
+ cliContainer.name = c.options.name;
52
+ isPm = c.options.name === 'pm' && c.options.program === require.resolve('../commands.json');
53
+ const init = cliContainer.resolve('$init');
54
+ if (init && init.config && init.config.cli && init.config.cli.options) {
55
+ if (init.config.cli.usage)
56
+ initMiddleware = initMiddleware.command(init.config.cli.usage, init.config?.doc?.description);
57
+ ac.Triggers.addCliOptions(init, initMiddleware);
58
+ }
59
+ process.on('unhandledRejection', (x) => {
60
+ controller.abort(x);
61
+ return false;
62
+ });
63
+ process.on('uncaughtException', (x) => {
64
+ controller.abort(x);
65
+ return false;
66
+ });
67
+ process.on('SIGINT', () => controller.abort(null));
68
+ initMiddleware.option('pmSocket', { aliases: ['pm-socket', 'pm-sock'], needsValue: true }).action(async (c) => {
69
+ let pm;
70
+ let pmConnectInfo;
71
+ if (!isPm) {
72
+ //eslint-disable-next-line @typescript-eslint/no-var-requires
73
+ const pmMeta = require('../commands.json');
74
+ if (process.connected) {
75
+ pm = new ac.Container('pm', null, new ac.Processors.JsonRpc(ac.Processors.JsonRpc.getConnection(new IpcAdapter(process), cliContainer), true));
76
+ registerCommands(pmMeta.commands, null, pm);
77
+ }
78
+ else {
79
+ if (c.options.pmSocket)
80
+ pmConnectInfo = parseMetadata(c.options.pmSocket, c.options.tls);
81
+ else
82
+ pmConnectInfo = ac.serveMetadata('pm', { args: ['local'], options: {} });
83
+ const x = await ac.connectByPreference(pmConnectInfo, { metadata: pmMeta, container: cliContainer });
84
+ pm = x.container;
85
+ pm.processor.useMiddleware(20, x.processor);
86
+ const connect = pm.resolve('connect');
87
+ pm.unregister('connect');
88
+ pm.register(new SelfDefinedCommand((name, param) => {
89
+ if (name == 'pm')
90
+ return pmConnectInfo;
91
+ return x.processor.handle(pm, connect, param).then(e => { throw e; }, r => r);
92
+ }, 'connect', [
93
+ "param.0",
94
+ "$param"
95
+ ]));
96
+ }
97
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
98
+ pm.unregister(ac.Cli.Metadata.name);
99
+ pm.register(ac.Metadata.extractCommandMetadata(ac.Cli.Metadata));
100
+ }
101
+ else
102
+ pm = cliContainer;
103
+ coreModule('@akala/pm').register('container', pm);
104
+ cliContainer.register(new SelfDefinedCommand(async (connectionId) => {
105
+ if (!pmConnectInfo)
106
+ pmConnectInfo = await pm.dispatch('connect', 'pm');
107
+ var pm2 = await ac.connectByPreference(pmConnectInfo, { container: cliContainer });
108
+ pm2.container.processor.useMiddleware(20, pm2.processor);
109
+ pm2.container.unregister(ac.Cli.Metadata.name);
110
+ pm2.container.register(ac.Metadata.extractCommandMetadata(ac.Cli.Metadata));
111
+ pm2.container.register(ac.Metadata.extractCommandMetadata(pm.resolve('bridge')));
112
+ if (await pm2.container.dispatch('bridge', connectionId))
113
+ throw undefined;
114
+ }, '$bridge'));
115
+ if (init) {
116
+ await cliContainer.dispatch(init, { options: c.options, param: c.args, _trigger: 'cli', pm: pm, context: c, signal: controller.signal });
117
+ }
118
+ try {
119
+ const serveArgs = await pm.dispatch('connect', c.options.name);
120
+ serveArgs.signal = controller.signal;
121
+ await cliContainer.dispatch('$serve', serveArgs);
122
+ }
123
+ catch (e) {
124
+ if (!e || e.statusCode !== 404)
125
+ throw e;
126
+ console.warn(e.message);
127
+ }
128
+ if (pm !== cliContainer)
129
+ await pm.dispatch('ready');
130
+ });
131
+ }
132
+ }, initMiddleware));
133
+ controller.signal.addEventListener('abort', function () {
134
+ if (this.reason) {
135
+ process.exitCode = 1;
136
+ if (this.reason instanceof ErrorMessage)
137
+ console.error(this.reason.message);
138
+ else
139
+ console.error(this.reason);
140
+ }
141
+ });
142
+ if (require.main == module)
143
+ program.process(buildCliContextFromProcess()).catch(e => {
144
+ setImmediate(() => controller.abort(e));
145
+ });
146
+ //# sourceMappingURL=fork.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fork.js","sourceRoot":"","sources":["../../src/fork.ts"],"names":[],"mappings":";AACA,OAAO,GAAG,MAAM,oBAAoB,CAAA;AACpC,GAAG,CAAC,OAAO,EAAE,CAAC;AACd,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAU,mBAAmB,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,OAAO,EAAE,EAAE,0BAA0B,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEpG,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AAE5G,IAAI,IAAI,GAAG,KAAK,CAAC;AAEjB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AACtB,IAAI,YAAmB,CAAC;AACxB,IAAI,YAAmC,CAAC;AACxC,IAAI,SAA8B,CAAC;AACnC,IAAI,GAAW,CAAC;AAChB,MAAM,aAAa,GAAG,IAAI,mBAAmB,CAAkD,IAAI,CAAC,CAAC,MAAM,CAAoB,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC/J,aAAa,CAAC,SAAS,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;IAE9B,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,SAAS,GAAG,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YAElE,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;IAEP,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACxJ,CAAC,CAAC,CAAC;AACH,IAAI,cAAc,GAAG,IAAI,mBAAmB,CAAkD,IAAI,CAAC,CAAC;AACpG,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;AAEzC,OAAO,CAAC,MAAM,CAAoB,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC/E,MAAM,CAAiB,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACpD,MAAM,CAAiB,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACpD,OAAO,CAKJ;IACC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,8EAA8E,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;IACrK,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;IAC3G,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;IACrH,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,sDAAsD,EAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;CAC7J,CAAC;IACF,SAAS,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE,CAAC,iBAAiB;;IAElC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,YAAY,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK;QAClE,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7B,YAAY,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE3C,IAAI,YAAY,CAAC,MAAM,EAAE;QACrB,SAAS,GAAG,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;;QAE1E,SAAS,GAAG,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACpE,CAAC,CAAC;IACF,aAAa,CAAC,IAAI,EAAE,mBAAmB,CAAC,GAAG,CAAC,aAAa,EACrD;IACI,MAAM,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;QAEd,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACnC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5F,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EACrE;YACI,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK;gBACrB,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,CAAC,CAAA;YACjG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;SACnD;QAED,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE;YAEnC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACnB,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE;YAElC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACnB,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAEnD,cAAc,CAAC,MAAM,CAAqB,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YAE5H,IAAI,EAA2C,CAAC;YAChD,IAAI,aAA+B,CAAC;YAEpC,IAAI,CAAC,IAAI,EACT;gBACI,6DAA6D;gBAC7D,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;gBAC3C,IAAI,OAAO,CAAC,SAAS,EACrB;oBACI,EAAE,GAAG,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAA4C,CAAC;oBAC1L,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;iBAC/C;qBAED;oBACI,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ;wBAClB,aAAa,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;;wBAEjE,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;oBAC5E,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,mBAAmB,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC;oBACrG,EAAE,GAAG,CAAC,CAAC,SAAoD,CAAC;oBAC5D,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;oBAC5C,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACtC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oBACzB,EAAE,CAAC,QAAQ,CAAC,IAAI,kBAAkB,CAAC,CAAC,IAAY,EAAE,KAAsC,EAAE,EAAE;wBAExF,IAAI,IAAI,IAAI,IAAI;4BACZ,OAAO,aAAa,CAAC;wBACzB,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAA,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACjF,CAAC,EAAE,SAAS,EAAE;wBACV,SAAS;wBACT,QAAQ;qBACX,CAAC,CAAC,CAAC;iBACP;gBACD,8DAA8D;gBAC9D,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACpC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;aACpE;;gBAEG,EAAE,GAAG,YAAuD,CAAC;YAEjE,UAAU,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAElD,YAAY,CAAC,QAAQ,CAAC,IAAI,kBAAkB,CAAC,KAAK,EAAE,YAAoB,EAAE,EAAE;gBAExE,IAAI,CAAC,aAAa;oBACd,aAAa,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,GAAG,GAAG,MAAM,EAAE,CAAC,mBAAmB,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC;gBACnF,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBACzD,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC/C,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC5E,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjF,IAAI,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;oBACpD,MAAM,SAAS,CAAC;YACxB,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;YAEf,IAAI,IAAI,EACR;gBACI,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;aAC5I;YAGD,IACA;gBACI,MAAM,SAAS,GAA+B,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC3F,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;gBACrC,MAAM,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;aACpD;YACD,OAAO,CAAC,EACR;gBACI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK,GAAG;oBAC1B,MAAM,CAAC,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAC3B;YAED,IAAI,EAAE,KAAK,YAAY;gBACnB,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,EACD,cAAc,CAAC,CAAC,CAAC;AAEzB,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE;IAExC,IAAI,IAAI,CAAC,MAAM,EACf;QACI,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,IAAI,IAAI,CAAC,MAAM,YAAY,YAAY;YACnC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;;YAEnC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAClC;AACL,CAAC,CAAC,CAAA;AAEF,IAAI,OAAO,CAAC,IAAI,IAAI,MAAM;IACtB,OAAO,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QAEpD,YAAY,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { Container, Metadata, ServeMetadata, ConnectionPreference } from "@akala/commands";
2
- import definition from './container';
2
+ import definition from './container.js';
3
3
  type pmContainer = definition.container;
4
4
  export { pmContainer as Container };
5
- import State from './state';
5
+ import State from './state.js';
6
6
  export { State };
7
7
  export declare class InteractError extends Error {
8
8
  as?: string;
@@ -32,7 +32,7 @@ export interface SidecarMap {
32
32
  [key: string]: ContainerLite;
33
33
  pm: pmContainer;
34
34
  }
35
- import getRandomName from './commands/name';
36
- import sidecarSingleton, { sidecar } from "./sidecar";
35
+ import getRandomName from './commands/name.js';
36
+ import sidecarSingleton, { sidecar } from "./sidecar.js";
37
37
  export { sidecar, sidecarSingleton };
38
38
  export { getRandomName };
@@ -0,0 +1,43 @@
1
+ import { Container, NetSocketAdapter, Processors, registerCommands, Cli } from "@akala/commands";
2
+ import { Socket } from "net";
3
+ import { module } from "@akala/core";
4
+ export class InteractError extends Error {
5
+ as;
6
+ code = 'INTERACT';
7
+ constructor(message, as) {
8
+ super(message);
9
+ this.as = as;
10
+ }
11
+ toJSON() {
12
+ return { code: this.code, message: this.message, as: this.as };
13
+ }
14
+ }
15
+ export default function interact(message, as) {
16
+ throw new InteractError(message, as);
17
+ }
18
+ export async function pm(socketPath) {
19
+ if (socketPath) {
20
+ const pmSocket = new Socket();
21
+ const pm = new Container('pm', null, new Processors.JsonRpc(Processors.JsonRpc.getConnection(new NetSocketAdapter(pmSocket)), true));
22
+ pmSocket.connect(socketPath);
23
+ const metaContainer = await pm.handle(pm, Cli.Metadata, { param: [] }).then(err => { throw err; }, res => res);
24
+ registerCommands(metaContainer.commands, null, pm);
25
+ return pm;
26
+ }
27
+ return new Container('pm', {});
28
+ }
29
+ export async function connect(name, container) {
30
+ container = container || module('@akala/pm').resolve('container');
31
+ if (name === 'pm') {
32
+ const metaContainer = await container.dispatch('$metadata');
33
+ return { connect: container.dispatch('connect', name), container: metaContainer };
34
+ }
35
+ const metaContainer = await container.dispatch('$metadata', true);
36
+ return { connect: container.dispatch('connect', name), container: { name, commands: metaContainer.commands.filter(c => c.name.startsWith(name + '.')).map(c => ({ name: c.name.substring(name.length + 1), config: c.config })) } };
37
+ }
38
+ export const defaultOrders = ['ssocket', 'socket', 'wss', 'ws'];
39
+ import getRandomName from './commands/name.js';
40
+ import sidecarSingleton, { sidecar } from "./sidecar.js";
41
+ export { sidecar, sidecarSingleton };
42
+ export { getRandomName };
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  /// <reference types="webpack-env" />
3
- /// <reference types="node" />
3
+ /// <reference types="node" resolution-mode="require"/>
4
4
  import { ChildProcess } from "child_process";
5
5
  import * as jsonrpc from '@akala/json-rpc-ws';
6
6
  import { SocketAdapterEventMap } from "@akala/json-rpc-ws";
@@ -0,0 +1,60 @@
1
+ export class IpcAdapter {
2
+ cp;
3
+ get open() { return !!this.cp.pid; }
4
+ pipe(socket) {
5
+ this.on('message', (message) => socket.send(message));
6
+ this.on('close', () => socket.close());
7
+ }
8
+ close() {
9
+ this.cp.disconnect();
10
+ }
11
+ send(data) {
12
+ if (this.cp.send)
13
+ this.cp.send(data + '\n');
14
+ else
15
+ console.warn(`process ${this.cp.pid} does not support send over IPC`);
16
+ }
17
+ off(event, handler) {
18
+ switch (event) {
19
+ case 'message':
20
+ this.cp.off('message', handler);
21
+ break;
22
+ case 'open':
23
+ handler(null);
24
+ break;
25
+ case 'close':
26
+ this.cp.off('disconnect', handler);
27
+ break;
28
+ }
29
+ }
30
+ on(event, handler) {
31
+ switch (event) {
32
+ case 'message':
33
+ this.cp.on('message', handler);
34
+ break;
35
+ case 'open':
36
+ handler(null);
37
+ break;
38
+ case 'close':
39
+ this.cp.on('disconnect', handler);
40
+ break;
41
+ }
42
+ }
43
+ once(event, handler) {
44
+ switch (event) {
45
+ case 'message':
46
+ this.cp.once('message', handler);
47
+ break;
48
+ case 'open':
49
+ handler(null);
50
+ break;
51
+ case 'close':
52
+ this.cp.once('disconnect', () => handler(null));
53
+ break;
54
+ }
55
+ }
56
+ constructor(cp) {
57
+ this.cp = cp;
58
+ }
59
+ }
60
+ //# sourceMappingURL=ipc-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ipc-adapter.js","sourceRoot":"","sources":["../../src/ipc-adapter.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,UAAU;IAsEC;IApEpB,IAAI,IAAI,KAAc,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAG7C,IAAI,CAAC,MAAsC;QAEvC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK;QAED,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IACzB,CAAC;IACD,IAAI,CAAC,IAAY;QAEb,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI;YACZ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;;YAG1B,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,GAAG,iCAAiC,CAAC,CAAC;IAC9E,CAAC;IACD,GAAG,CAAwC,KAAQ,EAAE,OAA+C;QAEhG,QAAQ,KAAK,EACb;YACI,KAAK,SAAS;gBACV,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAChC,MAAM;YACV,KAAK,MAAM;gBACP,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBACnC,MAAM;SACb;IACL,CAAC;IACD,EAAE,CAAwC,KAAQ,EAAE,OAA+C;QAE/F,QAAQ,KAAK,EACb;YACI,KAAK,SAAS;gBACV,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC/B,MAAM;YACV,KAAK,MAAM;gBACP,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAClC,MAAM;SACb;IACL,CAAC;IAED,IAAI,CAAwC,KAAQ,EAAE,OAA+C;QAEjG,QAAQ,KAAK,EACb;YACI,KAAK,SAAS;gBACV,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACjC,MAAM;YACV,KAAK,MAAM;gBACP,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBAChD,MAAM;SACb;IACL,CAAC;IAED,YAAoB,EAAiC;QAAjC,OAAE,GAAF,EAAE,CAA+B;IAErD,CAAC;CAEJ"}
@@ -1,5 +1,5 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ /// <reference types="node" resolution-mode="require"/>
3
3
  import { Transform, TransformCallback } from "stream";
4
4
  interface Options {
5
5
  useColors?: boolean;
@@ -0,0 +1,39 @@
1
+ import { Transform } from "stream";
2
+ const colors = [6, 2, 3, 4, 5, 1];
3
+ function selectColor(namespace) {
4
+ let hash = 0;
5
+ for (let i = 0; i < namespace.length; i++) {
6
+ hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
7
+ hash |= 0; // Convert to 32bit integer
8
+ }
9
+ return colors[Math.abs(hash) % colors.length];
10
+ }
11
+ export class NewLinePrefixer extends Transform {
12
+ prefix;
13
+ constructor(prefix, options) {
14
+ super();
15
+ this.prefix = prefix;
16
+ this.setDefaultEncoding('utf8');
17
+ this.setEncoding('utf8');
18
+ if (options?.useColors) {
19
+ const c = selectColor(prefix);
20
+ const colorCode = '\u001B[3' + (c < 8 ? c : '8;5;' + c);
21
+ this.prefix = ` ${colorCode};1m${prefix} \u001B[0m`;
22
+ }
23
+ }
24
+ blankNewLine = true;
25
+ _transform(chunk, encoding, callback) {
26
+ if (Buffer.isBuffer(chunk)) {
27
+ if (encoding == 'buffer')
28
+ encoding = 'utf8';
29
+ chunk = chunk.toString(encoding || 'utf8');
30
+ }
31
+ if (typeof chunk != 'string')
32
+ throw new Error(`Unsupported chunk type ${typeof chunk}`);
33
+ if (this.blankNewLine)
34
+ chunk = this.prefix + chunk;
35
+ this.blankNewLine = /\n$/.test(chunk);
36
+ callback(null, chunk.replace(/\n([^$])/g, `\n${this.prefix}$1`));
37
+ }
38
+ }
39
+ //# sourceMappingURL=new-line-prefixer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new-line-prefixer.js","sourceRoot":"","sources":["../../src/new-line-prefixer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,QAAQ,CAAC;AAOtD,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAElC,SAAS,WAAW,CAAC,SAAS;IAE1B,IAAI,IAAI,GAAG,CAAC,CAAC;IAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EACzC;QACI,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,CAAC,CAAC,2BAA2B;KACzC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAEtB;IAApB,YAAoB,MAAc,EAAE,OAAiB;QAEjD,KAAK,EAAE,CAAC;QAFQ,WAAM,GAAN,MAAM,CAAQ;QAG9B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,OAAO,EAAE,SAAS,EACtB;YACI,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,SAAS,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,GAAG,KAAK,SAAS,MAAM,MAAM,YAAY,CAAC;SACxD;IACL,CAAC;IAEO,YAAY,GAAG,IAAI,CAAC;IAE5B,UAAU,CAAC,KAAsB,EAAE,QAAmC,EAAE,QAA2B;QAE/F,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC1B;YACI,IAAI,QAAQ,IAAI,QAAQ;gBACpB,QAAQ,GAAG,MAAM,CAAC;YACtB,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;SAC9C;QAED,IAAI,OAAO,KAAK,IAAI,QAAQ;YACxB,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,KAAK,EAAE,CAAC,CAAA;QAE7D,IAAI,IAAI,CAAC,YAAY;YACjB,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEhC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEtC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;IAEpE,CAAC;CACJ"}
File without changes
@@ -0,0 +1,20 @@
1
+ import { platform } from "os";
2
+ import { spawnAsync } from './cli-helper.js';
3
+ // if (typeof (process.versions.pnp) != 'undefined')
4
+ // {
5
+ // }
6
+ let npm = 'npm';
7
+ if (platform() == 'win32')
8
+ npm = 'npm.cmd';
9
+ export default {
10
+ async install(packageName, path) {
11
+ await spawnAsync(npm, {}, 'i', packageName, '--prefix', path || process.cwd(), '--production');
12
+ },
13
+ async update(packageName, path) {
14
+ await spawnAsync(npm, {}, 'up', packageName, '--prefix', path || process.cwd(), '--production');
15
+ },
16
+ async link(packageName, path) {
17
+ await spawnAsync(npm, { cwd: path || process.cwd() }, 'link', packageName);
18
+ }
19
+ };
20
+ //# sourceMappingURL=npm-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-helper.js","sourceRoot":"","sources":["../../src/npm-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,oDAAoD;AACpD,IAAI;AAEJ,IAAI;AAEJ,IAAI,GAAG,GAAG,KAAK,CAAC;AAChB,IAAI,QAAQ,EAAE,IAAI,OAAO;IACrB,GAAG,GAAG,SAAS,CAAC;AAEpB,eACI;IACI,KAAK,CAAC,OAAO,CAAC,WAAmB,EAAE,IAAa;QAE5C,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;IACnG,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,WAAmB,EAAE,IAAa;QAE3C,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;IACpG,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,IAAa;QAEzC,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;IAC9E,CAAC;CACJ,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { ConnectionPreference, Container } from "@akala/commands";
2
- import { SideCarConnectionPreference, Sidecar } from "./index";
3
- import pm from './container';
2
+ import { SideCarConnectionPreference, Sidecar } from "./index.js";
3
+ import pm from './container.js';
4
4
  export default function (options?: {
5
5
  pm?: pm.container & Container<void>;
6
6
  } & (Omit<ConnectionPreference, 'metadata'> | SideCarConnectionPreference | Omit<ConnectionPreference, 'metadata'> & SideCarConnectionPreference), noCache?: boolean): Sidecar;
@@ -0,0 +1,45 @@
1
+ import { connectByPreference, updateCommands } from "@akala/commands";
2
+ import { defaultOrders, connect } from "./index.js";
3
+ import * as ac from '@akala/commands';
4
+ let instance;
5
+ export default function (options, noCache) {
6
+ return instance || (instance = sidecar(options, noCache));
7
+ }
8
+ export function sidecar(options, noCache) {
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ return new Proxy({}, {
11
+ get(target, property) {
12
+ if (typeof (property) !== 'string')
13
+ return Reflect.get(target, property);
14
+ const orders = options && options[property] && options[property].orders || defaultOrders;
15
+ if (!options)
16
+ options = {};
17
+ if (typeof options.preferRemote == 'undefined')
18
+ options.preferRemote = !process.connected;
19
+ if (noCache || typeof (target[property]) == 'undefined')
20
+ Object.defineProperty(target, property, {
21
+ value: connect(property, options.pm).then(async (meta) => {
22
+ try {
23
+ const c = await connectByPreference(await meta.connect, Object.assign({ metadata: meta.container }, options, options && options[property]), ...orders);
24
+ return c.container;
25
+ }
26
+ catch (e) {
27
+ if (e && e.statusCode == 404 || !meta.connect) {
28
+ return await connect('pm', options.pm).then(async (meta) => {
29
+ const c = await connectByPreference(await meta.connect, Object.assign({ metadata: meta.container }, options, options && options[property]), ...orders);
30
+ await c.container.dispatch('proxy', property);
31
+ c.container.unregister(ac.Cli.Metadata.name);
32
+ c.container.register(Object.assign(ac.Metadata.extractCommandMetadata(ac.Cli.Metadata), { processor: c.processor }));
33
+ updateCommands((await c.container.dispatch('$metadata', true)).commands, c.processor, c.container);
34
+ return c.container;
35
+ });
36
+ }
37
+ throw e;
38
+ }
39
+ })
40
+ });
41
+ return target[property];
42
+ }
43
+ });
44
+ }
45
+ //# sourceMappingURL=sidecar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidecar.js","sourceRoot":"","sources":["../../src/sidecar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAmC,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAAwC,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1F,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAGrC,IAAI,QAAiB,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,OAAiM,EAAE,OAAiB;IAEzO,OAAO,QAAQ,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAiM,EAAE,OAAiB;IAExO,8DAA8D;IAC9D,OAAO,IAAI,KAAK,CAAU,EAAS,EAAE;QACjC,GAAG,CAAC,MAAM,EAAE,QAAQ;YAEhB,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,QAAQ;gBAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,aAAa,CAAC;YACzF,IAAI,CAAC,OAAO;gBACR,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,OAAO,OAAO,CAAC,YAAY,IAAI,WAAW;gBAC1C,OAAO,CAAC,YAAY,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC;YAC9C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,WAAW;gBACnD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE;oBACpC,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;wBAErD,IACA;4BACI,MAAM,CAAC,GAAG,MAAM,mBAAmB,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;4BACvJ,OAAO,CAAC,CAAC,SAAS,CAAC;yBACtB;wBACD,OAAO,CAAC,EACR;4BACI,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAC7C;gCACI,OAAO,MAAM,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oCAEvD,MAAM,CAAC,GAAG,MAAM,mBAAmB,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;oCACvJ,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;oCAC9C,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oCAC7C,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;oCACrH,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;oCACnG,OAAO,CAAC,CAAC,SAAS,CAAC;gCACvB,CAAC,CAAC,CAAC;6BACN;4BACD,MAAM,CAAC,CAAC;yBACX;oBACL,CAAC,CAAC;iBACL,CAAC,CAAC;YACP,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;KACJ,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,80 @@
1
+ #!/usr/bin/env node
2
+ import sms from 'source-map-support';
3
+ sms.install();
4
+ import * as path from 'path';
5
+ import * as ac from '@akala/commands';
6
+ import { lstat } from 'fs/promises';
7
+ import { logger, MiddlewareComposite } from '@akala/core';
8
+ import program, { buildCliContextFromProcess, ErrorMessage, NamespaceMiddleware } from '@akala/cli';
9
+ program.option('help');
10
+ let folderOrFile;
11
+ let cliContainer;
12
+ let processor;
13
+ let log;
14
+ const logMiddleware = new NamespaceMiddleware(null).option('verbose', { aliases: ['v',] });
15
+ logMiddleware.preAction(async (c) => {
16
+ if (c.options.verbose)
17
+ processor = new ac.Processors.LogProcessor(processor, (cmd, params) => {
18
+ log.verbose({ cmd, params });
19
+ return Promise.resolve();
20
+ });
21
+ await ac.Processors.FileSystem.discoverCommands(c.options.program, cliContainer, { processor: processor, isDirectory: folderOrFile.isDirectory() });
22
+ });
23
+ const initMiddleware = new NamespaceMiddleware(null);
24
+ const controller = new AbortController();
25
+ program.option('program', { needsValue: true, normalize: true }).
26
+ option('name', { needsValue: true }).
27
+ option('tls', { needsValue: false }).
28
+ options({
29
+ port: { needsValue: true, doc: 'http/ws port\n(default: 80 if http, 443 is certificate and key are provided)', aliases: ['p'], optional: true, caseSensitive: false },
30
+ tcpPort: { needsValue: true, doc: 'tcp port', aliases: ['tcp-port'], optional: true, caseSensitive: false },
31
+ cert: { needsValue: true, doc: 'public certificate', aliases: ['certificate'], optional: true, caseSensitive: false },
32
+ key: { needsValue: true, doc: 'private certificate key. Requires public certificate', aliases: ['certificate-key'], optional: true, caseSensitive: false }
33
+ }).
34
+ preAction(async (c) => //If pure js file
35
+ {
36
+ folderOrFile = await lstat(c.options.program);
37
+ if (folderOrFile.isFile() && path.extname(c.options.program) === '.js')
38
+ return require(c.options.program);
39
+ log = logger(c.options.name);
40
+ cliContainer = new ac.Container('cli', {});
41
+ if (folderOrFile.isFile())
42
+ processor = new ac.Processors.FileSystem(path.dirname(c.options.program));
43
+ else
44
+ processor = new ac.Processors.FileSystem(c.options.program);
45
+ }).
46
+ useMiddleware(null, MiddlewareComposite.new(logMiddleware, {
47
+ handle: async (c) => {
48
+ cliContainer.name = c.options.name;
49
+ const init = cliContainer.resolve('$init');
50
+ if (init && init.config && init.config.cli && init.config.cli.options)
51
+ ac.Triggers.addCliOptions(init, initMiddleware);
52
+ process.on('unhandledRejection', (x) => {
53
+ controller.abort(x);
54
+ return false;
55
+ });
56
+ process.on('uncaughtException', (x) => {
57
+ controller.abort(x);
58
+ return false;
59
+ });
60
+ process.on('SIGINT', () => controller.abort(null));
61
+ initMiddleware.action(async (c) => {
62
+ if (init)
63
+ await cliContainer.dispatch(init, { options: c.options, param: c.args, _trigger: 'cli', context: c });
64
+ });
65
+ }
66
+ }, initMiddleware));
67
+ controller.signal.addEventListener('abort', function () {
68
+ if (this.reason) {
69
+ process.exitCode = 1;
70
+ if (this.reason instanceof ErrorMessage)
71
+ console.error(this.reason.message);
72
+ else
73
+ console.error(this.reason);
74
+ }
75
+ });
76
+ if (require.main == module)
77
+ program.process(buildCliContextFromProcess()).catch(e => {
78
+ setImmediate(() => controller.abort(e));
79
+ });
80
+ //# sourceMappingURL=standalone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../src/standalone.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  import { Container } from "@akala/commands";
3
3
  import { ChildProcess } from "child_process";
4
4
  import { Deferred, SerializableObject } from "@akala/core";
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":""}
File without changes
@@ -0,0 +1,7 @@
1
+ import interact from "../index.js";
2
+ export default async function pwet(a) {
3
+ if (!a)
4
+ interact('please specify a');
5
+ console.log(a);
6
+ }
7
+ //# sourceMappingURL=pwet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pwet.js","sourceRoot":"","sources":["../../../src/test/pwet.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,CAAS;IAExC,IAAI,CAAC,CAAC;QACF,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IAChC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC"}
File without changes
@@ -0,0 +1,26 @@
1
+ import { platform } from "os";
2
+ import { stat } from 'fs';
3
+ import { promisify } from 'util';
4
+ import { spawnAsync } from './cli-helper.js';
5
+ import { join } from 'path';
6
+ // if (typeof (process.versions.pnp) != 'undefined')
7
+ // {
8
+ // }
9
+ export function hasYarn(path) {
10
+ return promisify(stat)(join(path || process.cwd(), './yarn.lock')).then(f => f.isFile());
11
+ }
12
+ let npm = 'yarn';
13
+ if (platform() == 'win32')
14
+ npm = 'yarn.cmd';
15
+ export default {
16
+ async install(packageName, path) {
17
+ await spawnAsync(npm, { cwd: path }, 'add', packageName, '--production');
18
+ },
19
+ async update(packageName, path) {
20
+ await spawnAsync(npm, { cwd: path }, 'upgrade', packageName, '--production');
21
+ },
22
+ async link(packageName, path) {
23
+ await spawnAsync(npm, { cwd: path }, 'link', packageName, '--production');
24
+ }
25
+ };
26
+ //# sourceMappingURL=yarn-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yarn-helper.js","sourceRoot":"","sources":["../../src/yarn-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,oDAAoD;AACpD,IAAI;AAEJ,IAAI;AAEJ,MAAM,UAAU,OAAO,CAAC,IAAa;IAEjC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;AAC5F,CAAC;AAED,IAAI,GAAG,GAAG,MAAM,CAAC;AACjB,IAAI,QAAQ,EAAE,IAAI,OAAO;IACrB,GAAG,GAAG,UAAU,CAAC;AAErB,eACI;IACI,KAAK,CAAC,OAAO,CAAC,WAAmB,EAAE,IAAa;QAE5C,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,CAAC,CAAA;IAC5E,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,WAAmB,EAAE,IAAa;QAE3C,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,CAAC,CAAA;IAChF,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,IAAa;QAEzC,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAA;IAC7E,CAAC;CACJ,CAAA"}