@lifo-sh/core 0.5.0 → 0.5.5

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 (172) hide show
  1. package/README.md +7 -3
  2. package/dist/{awk-CC_Qo0hQ.js → awk-Bhywv7pU.js} +1 -1
  3. package/dist/{base64-BBckAmkE.js → base64-ncdb27yL.js} +1 -1
  4. package/dist/{basename-BIICW06y.js → basename-D-_r1VN_.js} +1 -1
  5. package/dist/browser-Bymgnrli.js +35 -0
  6. package/dist/{cat-Jv35D4BV.js → cat-DSe6FHma.js} +1 -1
  7. package/dist/{chmod-Bh-u8XOr.js → chmod-BZIlNR2-.js} +1 -1
  8. package/dist/{chown-Dv7xfl2a.js → chown-BAOEOuMn.js} +1 -1
  9. package/dist/commands/net/curl.d.ts +2 -2
  10. package/dist/commands/net/curl.d.ts.map +1 -1
  11. package/dist/commands/net/forward.d.ts +14 -0
  12. package/dist/commands/net/forward.d.ts.map +1 -0
  13. package/dist/commands/net/host.d.ts +14 -0
  14. package/dist/commands/net/host.d.ts.map +1 -0
  15. package/dist/commands/net/ifconfig.d.ts +8 -0
  16. package/dist/commands/net/ifconfig.d.ts.map +1 -0
  17. package/dist/commands/net/ip.d.ts +14 -0
  18. package/dist/commands/net/ip.d.ts.map +1 -0
  19. package/dist/commands/net/netstat.d.ts +8 -0
  20. package/dist/commands/net/netstat.d.ts.map +1 -0
  21. package/dist/commands/net/ports.d.ts +8 -0
  22. package/dist/commands/net/ports.d.ts.map +1 -0
  23. package/dist/commands/net/route.d.ts +8 -0
  24. package/dist/commands/net/route.d.ts.map +1 -0
  25. package/dist/commands/net/test-registry.d.ts +8 -0
  26. package/dist/commands/net/test-registry.d.ts.map +1 -0
  27. package/dist/commands/net/tunnel-v2.d.ts +4 -0
  28. package/dist/commands/net/tunnel-v2.d.ts.map +1 -0
  29. package/dist/commands/net/tunnel.d.ts +6 -0
  30. package/dist/commands/net/tunnel.d.ts.map +1 -0
  31. package/dist/commands/registry.d.ts +1 -0
  32. package/dist/commands/registry.d.ts.map +1 -1
  33. package/dist/commands/system/kill.d.ts +2 -2
  34. package/dist/commands/system/kill.d.ts.map +1 -1
  35. package/dist/commands/system/lifo.d.ts +17 -0
  36. package/dist/commands/system/lifo.d.ts.map +1 -1
  37. package/dist/commands/system/newtab.d.ts +8 -0
  38. package/dist/commands/system/newtab.d.ts.map +1 -0
  39. package/dist/commands/system/node.d.ts +2 -2
  40. package/dist/commands/system/node.d.ts.map +1 -1
  41. package/dist/commands/system/npm.d.ts +20 -7
  42. package/dist/commands/system/npm.d.ts.map +1 -1
  43. package/dist/commands/system/ps.d.ts +3 -2
  44. package/dist/commands/system/ps.d.ts.map +1 -1
  45. package/dist/commands/system/systemctl.d.ts +4 -0
  46. package/dist/commands/system/systemctl.d.ts.map +1 -0
  47. package/dist/commands/system/top.d.ts +2 -2
  48. package/dist/commands/system/top.d.ts.map +1 -1
  49. package/dist/commands/system/whoami.d.ts.map +1 -1
  50. package/dist/{cp-CB-sGTRH.js → cp-DOXzF2_m.js} +1 -1
  51. package/dist/{cut-B79kgCm4.js → cut-B4rQvMRc.js} +1 -1
  52. package/dist/{diff-D5Ej-JEe.js → diff-BndHU0Ne.js} +1 -1
  53. package/dist/{dirname-w2Y6csox.js → dirname-wtPE8QZ6.js} +1 -1
  54. package/dist/{du-UupzdKc_.js → du-BLkl3BkN.js} +1 -1
  55. package/dist/{file-DOl4Wjtc.js → file-DfmI5Gyk.js} +1 -1
  56. package/dist/{find-C0T-P7sl.js → find-Wdkys9OU.js} +1 -1
  57. package/dist/{grep-Blwrv9k5.js → grep-xmx3I05f.js} +1 -1
  58. package/dist/{gunzip-R7EtgP15.js → gunzip-Dbr2fm5t.js} +1 -1
  59. package/dist/{gzip-BxF7M1np.js → gzip-D1GwSnNe.js} +1 -1
  60. package/dist/{head-CJwcsX18.js → head-DUXuKw3m.js} +1 -1
  61. package/dist/index-Djm2onjx.js +13915 -0
  62. package/dist/index.d.ts +27 -2
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +88 -64
  65. package/dist/kernel/ServiceManager.d.ts +51 -0
  66. package/dist/kernel/ServiceManager.d.ts.map +1 -0
  67. package/dist/kernel/index.d.ts +11 -0
  68. package/dist/kernel/index.d.ts.map +1 -1
  69. package/dist/kernel/network/Bridge.d.ts +110 -0
  70. package/dist/kernel/network/Bridge.d.ts.map +1 -0
  71. package/dist/kernel/network/DNSResolver.d.ts +55 -0
  72. package/dist/kernel/network/DNSResolver.d.ts.map +1 -0
  73. package/dist/kernel/network/NetworkInterface.d.ts +83 -0
  74. package/dist/kernel/network/NetworkInterface.d.ts.map +1 -0
  75. package/dist/kernel/network/NetworkNamespace.d.ts +98 -0
  76. package/dist/kernel/network/NetworkNamespace.d.ts.map +1 -0
  77. package/dist/kernel/network/NetworkStack.d.ts +178 -0
  78. package/dist/kernel/network/NetworkStack.d.ts.map +1 -0
  79. package/dist/kernel/network/NetworkStack.example.d.ts +8 -0
  80. package/dist/kernel/network/NetworkStack.example.d.ts.map +1 -0
  81. package/dist/kernel/network/NetworkStack.test.d.ts +2 -0
  82. package/dist/kernel/network/NetworkStack.test.d.ts.map +1 -0
  83. package/dist/kernel/network/PortBridge.d.ts +49 -0
  84. package/dist/kernel/network/PortBridge.d.ts.map +1 -0
  85. package/dist/kernel/network/RoutingTable.d.ts +55 -0
  86. package/dist/kernel/network/RoutingTable.d.ts.map +1 -0
  87. package/dist/kernel/network/Socket.d.ts +65 -0
  88. package/dist/kernel/network/Socket.d.ts.map +1 -0
  89. package/dist/kernel/network/index.d.ts +11 -0
  90. package/dist/kernel/network/index.d.ts.map +1 -0
  91. package/dist/kernel/network/tunnel/BaseTunnel.d.ts +55 -0
  92. package/dist/kernel/network/tunnel/BaseTunnel.d.ts.map +1 -0
  93. package/dist/kernel/network/tunnel/VETHPair.d.ts +71 -0
  94. package/dist/kernel/network/tunnel/VETHPair.d.ts.map +1 -0
  95. package/dist/kernel/network/tunnel/WebSocketTunnel.d.ts +89 -0
  96. package/dist/kernel/network/tunnel/WebSocketTunnel.d.ts.map +1 -0
  97. package/dist/kernel/network/types.d.ts +159 -0
  98. package/dist/kernel/network/types.d.ts.map +1 -0
  99. package/dist/kernel/storage/ContentStore.d.ts +3 -1
  100. package/dist/kernel/storage/ContentStore.d.ts.map +1 -1
  101. package/dist/kernel/unit-parser.d.ts +22 -0
  102. package/dist/kernel/unit-parser.d.ts.map +1 -0
  103. package/dist/{less-B0gFLJ_7.js → less-VW-Lb-t9.js} +1 -1
  104. package/dist/{ls-YnhMRefh.js → ls-DjuSFYCA.js} +1 -1
  105. package/dist/{mkdir-DY1P3Jxj.js → mkdir-qMgrbMfK.js} +1 -1
  106. package/dist/{mktemp-BRzo2c8y.js → mktemp-BNrdUgqA.js} +1 -1
  107. package/dist/{mv-bH08L-F_.js → mv-DxovuvmA.js} +1 -1
  108. package/dist/{nano-CueO2oS0.js → nano-CVa6vpFX.js} +1 -1
  109. package/dist/{nl-D26SSOD4.js → nl-E4qmf3dZ.js} +1 -1
  110. package/dist/node-compat/crypto.d.ts +8 -1
  111. package/dist/node-compat/crypto.d.ts.map +1 -1
  112. package/dist/node-compat/dns.d.ts +117 -0
  113. package/dist/node-compat/dns.d.ts.map +1 -0
  114. package/dist/node-compat/esbuild.d.ts +10 -0
  115. package/dist/node-compat/esbuild.d.ts.map +1 -0
  116. package/dist/node-compat/fs.d.ts +25 -5
  117. package/dist/node-compat/fs.d.ts.map +1 -1
  118. package/dist/node-compat/http.d.ts +54 -9
  119. package/dist/node-compat/http.d.ts.map +1 -1
  120. package/dist/node-compat/index.d.ts.map +1 -1
  121. package/dist/node-compat/module.d.ts +55 -0
  122. package/dist/node-compat/module.d.ts.map +1 -0
  123. package/dist/node-compat/path.d.ts +28 -0
  124. package/dist/node-compat/path.d.ts.map +1 -1
  125. package/dist/node-compat/process.d.ts +67 -2
  126. package/dist/node-compat/process.d.ts.map +1 -1
  127. package/dist/node-compat/readline.d.ts +79 -0
  128. package/dist/node-compat/readline.d.ts.map +1 -0
  129. package/dist/node-compat/rimraf.d.ts +23 -0
  130. package/dist/node-compat/rimraf.d.ts.map +1 -0
  131. package/dist/node-compat/tty.d.ts +32 -0
  132. package/dist/node-compat/tty.d.ts.map +1 -0
  133. package/dist/node-compat/url.d.ts +4 -0
  134. package/dist/node-compat/url.d.ts.map +1 -1
  135. package/dist/node-compat/util.d.ts +21 -1
  136. package/dist/node-compat/util.d.ts.map +1 -1
  137. package/dist/{realpath-BH29Lem_.js → realpath-BaYc6QSr.js} +1 -1
  138. package/dist/{rev-ySwmRf_K.js → rev-CtqOEUEH.js} +1 -1
  139. package/dist/{rm-D7iWUUE2.js → rm-DtLSFhWn.js} +1 -1
  140. package/dist/{rmdir-BLtdNjt1.js → rmdir-k65U0Fef.js} +1 -1
  141. package/dist/sandbox/Sandbox.d.ts.map +1 -1
  142. package/dist/sandbox/types.d.ts +2 -2
  143. package/dist/sandbox/types.d.ts.map +1 -1
  144. package/dist/{sed-DwBPYYFb.js → sed-BpypU_CO.js} +1 -1
  145. package/dist/{sha256sum-DED6ePiU.js → sha256sum-x-mlDY9n.js} +1 -1
  146. package/dist/shell/ProcessRegistry.d.ts +144 -0
  147. package/dist/shell/ProcessRegistry.d.ts.map +1 -0
  148. package/dist/shell/ProcessRegistry.example.d.ts +8 -0
  149. package/dist/shell/ProcessRegistry.example.d.ts.map +1 -0
  150. package/dist/shell/ProcessRegistry.test.d.ts +2 -0
  151. package/dist/shell/ProcessRegistry.test.d.ts.map +1 -0
  152. package/dist/shell/Shell.d.ts +9 -2
  153. package/dist/shell/Shell.d.ts.map +1 -1
  154. package/dist/shell/interpreter.d.ts +4 -0
  155. package/dist/shell/interpreter.d.ts.map +1 -1
  156. package/dist/{sort-OXqZY83v.js → sort-C1n7kWmJ.js} +1 -1
  157. package/dist/{stat-BvwNpE5B.js → stat-Co_5pgto.js} +1 -1
  158. package/dist/{strings-BesRwUt_.js → strings-tFgYFAvp.js} +1 -1
  159. package/dist/{tac-D4BMSdj9.js → tac-BQvVvnoM.js} +1 -1
  160. package/dist/{tail-xVmLkzJK.js → tail-CLWVwfZD.js} +1 -1
  161. package/dist/{tar-BHRJ0-4j.js → tar-wo7UUSK5.js} +1 -1
  162. package/dist/{tee-DxygINEJ.js → tee-DlyeS1Yd.js} +1 -1
  163. package/dist/{touch-DCb9Qn5q.js → touch-DVzPgqSy.js} +1 -1
  164. package/dist/{tree-4QpgsnA0.js → tree-DHBQhXD7.js} +1 -1
  165. package/dist/{uniq-xmgE0zRj.js → uniq-CmmP6k_t.js} +1 -1
  166. package/dist/{unzip-CDKcoB0B.js → unzip-BIOvH2jT.js} +1 -1
  167. package/dist/{wc-B-jNRfLa.js → wc-DfI1Q3lo.js} +1 -1
  168. package/dist/{wget-CO-45JoL.js → wget-Dd25MxcO.js} +1 -1
  169. package/dist/{whoami-Y18wqme3.js → whoami-C_q-p-Vo.js} +7 -7
  170. package/dist/{zip-Cu1DzbAu.js → zip-Cc3IoNSB.js} +1 -1
  171. package/package.json +5 -2
  172. package/dist/index-BjKSFBDg.js +0 -8640
package/README.md CHANGED
@@ -30,11 +30,12 @@ console.log(content); // "Hi there"
30
30
  ### Browser with Terminal UI
31
31
 
32
32
  ```typescript
33
+ import { Terminal } from '@lifo-sh/ui';
33
34
  import { Sandbox } from '@lifo-sh/core';
34
35
 
35
- // Requires @lifo-sh/ui as an optional peer dependency
36
+ const terminal = new Terminal(document.getElementById('terminal'));
36
37
  const sandbox = await Sandbox.create({
37
- terminal: '#terminal-container',
38
+ terminal,
38
39
  persist: true,
39
40
  });
40
41
  ```
@@ -43,7 +44,8 @@ const sandbox = await Sandbox.create({
43
44
 
44
45
  - **Kernel** -- virtual filesystem (VFS), virtual `/proc` and `/dev` providers, IndexedDB persistence
45
46
  - **Shell** -- bash-like interpreter with pipes, redirects, globs, variables, job control, tab completion, history
46
- - **60+ commands** -- `ls`, `grep`, `awk`, `sed`, `curl`, `node`, `tar`, `find`, and more
47
+ - **60+ commands** -- `ls`, `grep`, `awk`, `sed`, `curl`, `node`, `npm`, `tar`, `find`, and more
48
+ - **`lifo` package manager** -- install WebAssembly packages with `lifo install` (e.g. ffmpeg, python, sqlite)
47
49
  - **Sandbox API** -- high-level `commands.run()` and `fs.*` for programmatic use
48
50
  - **Node.js compat layer** -- run JS files with `node script.js` using shimmed `fs`, `path`, `http`, etc.
49
51
 
@@ -54,6 +56,8 @@ const sandbox = await Sandbox.create({
54
56
  | **@lifo-sh/core** | Kernel, shell, commands, sandbox API |
55
57
  | [@lifo-sh/ui](https://www.npmjs.com/package/@lifo-sh/ui) | Terminal UI (xterm.js wrapper) |
56
58
  | [lifo-sh](https://www.npmjs.com/package/lifo-sh) | CLI -- run Lifo in your terminal |
59
+ | [lifo-pkg-git](https://www.npmjs.com/package/lifo-pkg-git) | Git command (isomorphic-git) |
60
+ | [lifo-pkg-ffmpeg](https://www.npmjs.com/package/lifo-pkg-ffmpeg) | FFmpeg command (Wasm) |
57
61
 
58
62
  ## Links
59
63
 
@@ -1,4 +1,4 @@
1
- import { r as E, i as N, c as S, V as $ } from "./index-BjKSFBDg.js";
1
+ import { r as E, i as N, c as S, V as $ } from "./index-Djm2onjx.js";
2
2
  function W(e) {
3
3
  const o = [];
4
4
  let t = e.trim();
@@ -1,4 +1,4 @@
1
- import { r as l, V as f } from "./index-BjKSFBDg.js";
1
+ import { r as l, V as f } from "./index-Djm2onjx.js";
2
2
  function g(e) {
3
3
  let i = "";
4
4
  for (let s = 0; s < e.length; s++)
@@ -1,4 +1,4 @@
1
- import { b as a } from "./index-BjKSFBDg.js";
1
+ import { b as a } from "./index-Djm2onjx.js";
2
2
  const t = async (s) => {
3
3
  if (s.args.length === 0)
4
4
  return s.stderr.write(`basename: missing operand
@@ -0,0 +1,35 @@
1
+ function f(e, u) {
2
+ for (var o = 0; o < u.length; o++) {
3
+ const r = u[o];
4
+ if (typeof r != "string" && !Array.isArray(r)) {
5
+ for (const t in r)
6
+ if (t !== "default" && !(t in e)) {
7
+ const n = Object.getOwnPropertyDescriptor(r, t);
8
+ n && Object.defineProperty(e, t, n.get ? n : {
9
+ enumerable: !0,
10
+ get: () => r[t]
11
+ });
12
+ }
13
+ }
14
+ }
15
+ return Object.freeze(Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }));
16
+ }
17
+ function i(e) {
18
+ return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
19
+ }
20
+ var s, a;
21
+ function l() {
22
+ return a || (a = 1, s = function() {
23
+ throw new Error(
24
+ "ws does not work in the browser. Browser clients must use the native WebSocket object"
25
+ );
26
+ }), s;
27
+ }
28
+ var c = l();
29
+ const b = /* @__PURE__ */ i(c), w = /* @__PURE__ */ f({
30
+ __proto__: null,
31
+ default: b
32
+ }, [c]);
33
+ export {
34
+ w as b
35
+ };
@@ -1,4 +1,4 @@
1
- import { r as o, V as a } from "./index-BjKSFBDg.js";
1
+ import { r as o, V as a } from "./index-Djm2onjx.js";
2
2
  const d = async (r) => {
3
3
  if (r.args.length === 0) {
4
4
  if (r.stdin) {
@@ -1,4 +1,4 @@
1
- import { r as u, V as l } from "./index-BjKSFBDg.js";
1
+ import { r as u, V as l } from "./index-Djm2onjx.js";
2
2
  function h(t, d) {
3
3
  if (/^[0-7]+$/.test(t))
4
4
  return parseInt(t, 8);
@@ -1,5 +1,5 @@
1
1
  import { p as i } from "./args-CG6b9cZt.js";
2
- import { r as c, V as f } from "./index-BjKSFBDg.js";
2
+ import { r as c, V as f } from "./index-Djm2onjx.js";
3
3
  const l = {
4
4
  recursive: { type: "boolean", short: "R" }
5
5
  }, d = async (s) => {
@@ -1,6 +1,6 @@
1
1
  import { Command } from '../types.js';
2
- import { VirtualRequestHandler } from '../../kernel/index.js';
3
- export declare function createCurlCommand(portRegistry: Map<number, VirtualRequestHandler>): Command;
2
+ import { Kernel } from '../../kernel/index.js';
3
+ export declare function createCurlCommand(kernel: Kernel): Command;
4
4
  declare const command: Command;
5
5
  export default command;
6
6
  //# sourceMappingURL=curl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../../../src/commands/net/curl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AA2KnE,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,OAAO,CAE3F;AAGD,QAAA,MAAM,OAAO,EAAE,OAA0B,CAAC;AAE1C,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../../../src/commands/net/curl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAiMpD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzD;AAGD,QAAA,MAAM,OAAO,EAAE,OAA0B,CAAC;AAE1C,eAAe,OAAO,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * forward - Forward a virtual port to the host browser
5
+ * Usage: forward <port>
6
+ * Example: forward 3000
7
+ */
8
+ export declare function createForwardCommand(kernel: Kernel): Command;
9
+ /**
10
+ * unforward - Stop forwarding a virtual port
11
+ * Usage: unforward <port>
12
+ */
13
+ export declare function createUnforwardCommand(kernel: Kernel): Command;
14
+ //# sourceMappingURL=forward.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forward.d.ts","sourceRoot":"","sources":["../../../src/commands/net/forward.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAqD5D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAsB9D"}
@@ -0,0 +1,14 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * host - DNS lookup and /etc/hosts management
5
+ *
6
+ * Usage:
7
+ * host <hostname> - DNS lookup
8
+ * host list - List /etc/hosts entries
9
+ * host add <hostname> <ip> - Add entry to /etc/hosts
10
+ * host remove <hostname> - Remove entry from /etc/hosts
11
+ * host reload - Reload /etc/hosts into DNS
12
+ */
13
+ export declare function createHostCommand(kernel: Kernel): Command;
14
+ //# sourceMappingURL=host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/commands/net/host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAwKzD"}
@@ -0,0 +1,8 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * ifconfig - Configure network interfaces
5
+ * Usage: ifconfig [interface] [options]
6
+ */
7
+ export declare function createIfconfigCommand(kernel: Kernel): Command;
8
+ //# sourceMappingURL=ifconfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ifconfig.d.ts","sourceRoot":"","sources":["../../../src/commands/net/ifconfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA8F7D"}
@@ -0,0 +1,14 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * ip - Modern Linux network configuration tool
5
+ *
6
+ * Subcommands:
7
+ * ip link - Manage network interfaces
8
+ * ip addr - Manage IP addresses
9
+ * ip route - Manage routing table
10
+ * ip tunnel - Manage tunnels
11
+ * ip netns - Manage network namespaces
12
+ */
13
+ export declare function createIPCommand(kernel: Kernel): Command;
14
+ //# sourceMappingURL=ip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ip.d.ts","sourceRoot":"","sources":["../../../src/commands/net/ip.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA4CvD"}
@@ -0,0 +1,8 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * netstat - Print network connections, routing tables, interface statistics
5
+ * Usage: netstat [-r] [-i] [-a]
6
+ */
7
+ export declare function createNetstatCommand(kernel: Kernel): Command;
8
+ //# sourceMappingURL=netstat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"netstat.d.ts","sourceRoot":"","sources":["../../../src/commands/net/netstat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAkG5D"}
@@ -0,0 +1,8 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * ports - List all ports in the portRegistry with details
5
+ * Usage: ports
6
+ */
7
+ export declare function createPortsCommand(kernel: Kernel): Command;
8
+ //# sourceMappingURL=ports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../../src/commands/net/ports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAqC1D"}
@@ -0,0 +1,8 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * route - Show/manipulate IP routing table
5
+ * Usage: route [-n] [add|del] [destination] [gw gateway] [dev interface]
6
+ */
7
+ export declare function createRouteCommand(kernel: Kernel): Command;
8
+ //# sourceMappingURL=route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/commands/net/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA0B1D"}
@@ -0,0 +1,8 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ /**
4
+ * test-registry - Test command to verify portRegistry is shared between tabs
5
+ * Usage: test-registry [set|get]
6
+ */
7
+ export declare function createTestRegistryCommand(kernel: Kernel): Command;
8
+ //# sourceMappingURL=test-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-registry.d.ts","sourceRoot":"","sources":["../../../src/commands/net/test-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAqCjE"}
@@ -0,0 +1,4 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ export declare function createTunnelCommandV2(kernel: Kernel): Command;
4
+ //# sourceMappingURL=tunnel-v2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tunnel-v2.d.ts","sourceRoot":"","sources":["../../../src/commands/net/tunnel-v2.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AA8CpD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAqJ7D"}
@@ -0,0 +1,6 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ export declare function createTunnelCommand(kernel: Kernel): Command;
4
+ declare const command: Command;
5
+ export default command;
6
+ //# sourceMappingURL=tunnel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../../../src/commands/net/tunnel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AA8RpD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE3D;AAGD,QAAA,MAAM,OAAO,EAAE,OAA4B,CAAC;AAE5C,eAAe,OAAO,CAAC"}
@@ -8,6 +8,7 @@ export declare class CommandRegistry {
8
8
  }>): void;
9
9
  unregister(name: string): void;
10
10
  resolve(name: string): Promise<Command | undefined>;
11
+ has(name: string): boolean;
11
12
  list(): string[];
12
13
  }
13
14
  export declare function createDefaultRegistry(): CommandRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,IAAI,CAA0D;IAEtE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,IAAI;IAI7E,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKxB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAezD,IAAI,IAAI,MAAM,EAAE;CAIjB;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CA8FvD"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/commands/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,IAAI,CAA0D;IAEtE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,IAAI;IAI7E,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKxB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAezD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,IAAI,IAAI,MAAM,EAAE;CAIjB;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CA8FvD"}
@@ -1,4 +1,4 @@
1
1
  import { Command } from '../types.js';
2
- import { JobTable } from '../../shell/jobs.js';
3
- export declare function createKillCommand(jobTable: JobTable): Command;
2
+ import { ProcessRegistry } from '../../shell/ProcessRegistry.js';
3
+ export declare function createKillCommand(processRegistry: ProcessRegistry): Command;
4
4
  //# sourceMappingURL=kill.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kill.d.ts","sourceRoot":"","sources":["../../../src/commands/system/kill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAWpD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAuF7D"}
1
+ {"version":3,"file":"kill.d.ts","sourceRoot":"","sources":["../../../src/commands/system/kill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAWtE,wBAAgB,iBAAiB,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CA4F3E"}
@@ -7,5 +7,22 @@ export declare function createLifoPkgCommand(registry: CommandRegistry, _shellEx
7
7
  * Boot-time loader: restores dev-linked commands + re-registers
8
8
  * installed lifo packages with the lifo runtime.
9
9
  */
10
+ /**
11
+ * Re-register all globally installed packages into the command registry.
12
+ *
13
+ * Handles two kinds of packages:
14
+ * - lifo packages (have a lifo.json manifest) → registered via the lifo runtime
15
+ * - regular npm packages (have a "bin" field in package.json) → registered via node runner
16
+ *
17
+ * Called on every daemon boot so that packages installed via `npm install -g`
18
+ * or `lifo install` are available as shell commands, including after a snapshot
19
+ * restore where the VFS has the files but the registry is freshly created.
20
+ *
21
+ * Also restores dev-linked packages.
22
+ *
23
+ * Safe to call on a fresh VM — it is a no-op when /usr/lib/node_modules is empty.
24
+ */
25
+ export declare function rehydrateGlobalPackages(vfs: VFS, registry: CommandRegistry): void;
26
+ /** @deprecated Use rehydrateGlobalPackages() instead. */
10
27
  export declare function bootLifoPackages(vfs: VFS, registry: CommandRegistry): void;
11
28
  //# sourceMappingURL=lifo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lifo.d.ts","sourceRoot":"","sources":["../../../src/commands/system/lifo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAuC,MAAM,aAAa,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAwY/C,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,eAAe,EACzB,aAAa,CAAC,EAAE,cAAc,GAC7B,OAAO,CAmCT;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAkC1E"}
1
+ {"version":3,"file":"lifo.d.ts","sourceRoot":"","sources":["../../../src/commands/system/lifo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAuC,MAAM,aAAa,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAwY/C,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,eAAe,EACzB,aAAa,CAAC,EAAE,cAAc,GAC7B,OAAO,CAmCT;AAED;;;GAGG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAkDjF;AAED,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAE1E"}
@@ -0,0 +1,8 @@
1
+ import { Command } from '../types.js';
2
+ /**
3
+ * newtab - Add a new tab to the current session
4
+ * Usage: newtab [label]
5
+ * Note: Only works in browser environments with window.addHttpTab exposed
6
+ */
7
+ export declare function createNewtabCommand(): Command;
8
+ //# sourceMappingURL=newtab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"newtab.d.ts","sourceRoot":"","sources":["../../../src/commands/system/newtab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAoB7C"}
@@ -1,6 +1,6 @@
1
1
  import { Command } from '../types.js';
2
- import { VirtualRequestHandler } from '../../kernel/index.js';
3
- export declare function createNodeCommand(portRegistry: Map<number, VirtualRequestHandler>): Command;
2
+ import { Kernel } from '../../kernel/index.js';
3
+ export declare function createNodeCommand(kernel: Kernel): Command;
4
4
  declare const command: Command;
5
5
  export default command;
6
6
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/commands/system/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAS3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AA2ZnE,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,OAAO,CAE3F;AAGD,QAAA,MAAM,OAAO,EAAE,OAA0B,CAAC;AAE1C,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/commands/system/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAS3C,OAAO,KAAK,EAAyB,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAowC3E,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzD;AAID,QAAA,MAAM,OAAO,EAAE,OAA6C,CAAC;AAE7D,eAAe,OAAO,CAAC"}
@@ -1,12 +1,25 @@
1
1
  import { Command, CommandContext } from '../types.js';
2
2
  import { CommandRegistry } from '../registry.js';
3
+ import { Kernel } from '../../kernel/index.js';
4
+ interface PackageJson {
5
+ name?: string;
6
+ version?: string;
7
+ description?: string;
8
+ main?: string;
9
+ bin?: string | Record<string, string>;
10
+ scripts?: Record<string, string>;
11
+ dependencies?: Record<string, string>;
12
+ devDependencies?: Record<string, string>;
13
+ license?: string;
14
+ author?: string | {
15
+ name: string;
16
+ };
17
+ }
3
18
  export type ShellExecuteFn = (cmd: string, ctx: CommandContext) => Promise<number>;
4
- export declare function createNpmCommand(registry: CommandRegistry, shellExecute?: ShellExecuteFn): Command;
5
- /**
6
- * Install a single npm package globally into the VFS.
7
- *
8
- * Called directly by `lifo install` to avoid the shell.execute()
9
- * round-trip which can silently swallow output and errors.
10
- */
19
+ export declare function getBinEntries(pkg: PackageJson): Record<string, string>;
20
+ export declare function registerBinCommand(registry: CommandRegistry, binName: string, scriptPath: string, kernel?: Kernel): void;
21
+ export declare function createNpmCommand(registry: CommandRegistry, shellExecute?: ShellExecuteFn, kernel?: Kernel): Command;
22
+ export declare function createNpxCommand(registry: CommandRegistry, shellExecute?: ShellExecuteFn): Command;
11
23
  export declare function npmInstallGlobal(packageName: string, ctx: CommandContext, registry: CommandRegistry): Promise<number>;
24
+ export {};
12
25
  //# sourceMappingURL=npm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"npm.d.ts","sourceRoot":"","sources":["../../../src/commands/system/npm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAuB,MAAM,aAAa,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAyCtD,MAAM,MAAM,cAAc,GAAG,CAC3B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,cAAc,KAChB,OAAO,CAAC,MAAM,CAAC,CAAC;AA2sBrB,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,cAAc,GAAG,OAAO,CA+ClG;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,MAAM,CAAC,CA2BjB"}
1
+ {"version":3,"file":"npm.d.ts","sourceRoot":"","sources":["../../../src/commands/system/npm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAuB,MAAM,aAAa,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAWpD,UAAU,WAAW;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AAkBD,MAAM,MAAM,cAAc,GAAG,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,cAAc,KACf,OAAO,CAAC,MAAM,CAAC,CAAC;AAoNrB,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMtE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAaxH;AA8jBD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CA+CnH;AAiCD,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,eAAe,EACzB,YAAY,CAAC,EAAE,cAAc,GAC3B,OAAO,CAyGT;AAED,wBAAsB,gBAAgB,CACrC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,eAAe,GACvB,OAAO,CAAC,MAAM,CAAC,CA2BjB"}
@@ -1,4 +1,5 @@
1
1
  import { Command } from '../types.js';
2
- import { JobTable } from '../../shell/jobs.js';
3
- export declare function createPsCommand(jobTable: JobTable): Command;
2
+ import { ProcessRegistry } from '../../shell/ProcessRegistry.js';
3
+ export declare function createPsCommand(processRegistry: ProcessRegistry): Command;
4
+ export declare function createPsCommandFromJobTable(jobTable: any): Command;
4
5
  //# sourceMappingURL=ps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../../src/commands/system/ps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAuB3D"}
1
+ {"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../../src/commands/system/ps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEtE,wBAAgB,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAgBzE;AAGD,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAuBlE"}
@@ -0,0 +1,4 @@
1
+ import { Command } from '../types.js';
2
+ import { Kernel } from '../../kernel/index.js';
3
+ export declare function createSystemctlCommand(kernal: Kernel): Command;
4
+ //# sourceMappingURL=systemctl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"systemctl.d.ts","sourceRoot":"","sources":["../../../src/commands/system/systemctl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAe/C,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA8J9D"}
@@ -1,4 +1,4 @@
1
1
  import { Command } from '../types.js';
2
- import { JobTable } from '../../shell/jobs.js';
3
- export declare function createTopCommand(jobTable: JobTable): Command;
2
+ import { ProcessRegistry } from '../../shell/ProcessRegistry.js';
3
+ export declare function createTopCommand(processRegistry: ProcessRegistry): Command;
4
4
  //# sourceMappingURL=top.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"top.d.ts","sourceRoot":"","sources":["../../../src/commands/system/top.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAiD5D"}
1
+ {"version":3,"file":"top.d.ts","sourceRoot":"","sources":["../../../src/commands/system/top.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEtE,wBAAgB,gBAAgB,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CA0C1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/commands/system/whoami.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAI3C,QAAA,MAAM,OAAO,EAAE,OAwBd,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/commands/system/whoami.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAK3C,QAAA,MAAM,OAAO,EAAE,OAwBd,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -1,4 +1,4 @@
1
- import { r as t, b as n, V as o } from "./index-BjKSFBDg.js";
1
+ import { r as t, b as n, V as o } from "./index-Djm2onjx.js";
2
2
  const f = async (s) => {
3
3
  if (s.args.length < 2)
4
4
  return s.stderr.write(`cp: missing operand
@@ -1,4 +1,4 @@
1
- import { r as d, i as c, c as u, V as g } from "./index-BjKSFBDg.js";
1
+ import { r as d, i as c, c as u, V as g } from "./index-Djm2onjx.js";
2
2
  function h(e) {
3
3
  const i = [];
4
4
  for (const r of e.split(",")) {
@@ -1,5 +1,5 @@
1
1
  import { p as k } from "./args-CG6b9cZt.js";
2
- import { r as g, i as m, c as C, V as y } from "./index-BjKSFBDg.js";
2
+ import { r as g, i as m, c as C, V as y } from "./index-Djm2onjx.js";
3
3
  const S = {
4
4
  unified: { type: "boolean", short: "u" }
5
5
  };
@@ -1,4 +1,4 @@
1
- import { k as a } from "./index-BjKSFBDg.js";
1
+ import { k as a } from "./index-Djm2onjx.js";
2
2
  const s = async (r) => {
3
3
  if (r.args.length === 0)
4
4
  return r.stderr.write(`dirname: missing operand
@@ -1,4 +1,4 @@
1
- import { r as y, V as g } from "./index-BjKSFBDg.js";
1
+ import { r as y, V as g } from "./index-Djm2onjx.js";
2
2
  function u(t) {
3
3
  return t < 1024 ? t + "B" : t < 1024 * 1024 ? (t / 1024).toFixed(1) + "K" : t < 1024 * 1024 * 1024 ? (t / (1024 * 1024)).toFixed(1) + "M" : (t / (1024 * 1024 * 1024)).toFixed(1) + "G";
4
4
  }
@@ -1,4 +1,4 @@
1
- import { r as d, e as c, V as f } from "./index-BjKSFBDg.js";
1
+ import { r as d, e as c, V as f } from "./index-Djm2onjx.js";
2
2
  const n = {
3
3
  ".txt": "ASCII text",
4
4
  ".md": "Markdown text",
@@ -1,4 +1,4 @@
1
- import { r as m, V as d, g as p } from "./index-BjKSFBDg.js";
1
+ import { r as m, V as d, g as p } from "./index-Djm2onjx.js";
2
2
  const c = async (t) => {
3
3
  let f = ".", i = "", a = "", l = 1 / 0;
4
4
  for (let e = 0; e < t.args.length; e++) {
@@ -1,4 +1,4 @@
1
- import { r as W, i as E, c as S, V as j } from "./index-BjKSFBDg.js";
1
+ import { r as W, i as E, c as S, V as j } from "./index-Djm2onjx.js";
2
2
  const C = async (r) => {
3
3
  const c = r.args;
4
4
  let w = !1, y = !1, b = !1, u = !1, k = !1, p = !1, m = !1, o = "";
@@ -1,4 +1,4 @@
1
- import { r as u, j as d, V as l } from "./index-BjKSFBDg.js";
1
+ import { r as u, j as d, V as l } from "./index-Djm2onjx.js";
2
2
  const g = async (e) => {
3
3
  let o = !1;
4
4
  const t = [];
@@ -1,4 +1,4 @@
1
- import { r as p, j as l, h as u, V as c } from "./index-BjKSFBDg.js";
1
+ import { r as p, j as l, h as u, V as c } from "./index-Djm2onjx.js";
2
2
  const g = async (e) => {
3
3
  let t = !1, d = !1;
4
4
  const o = [];
@@ -1,4 +1,4 @@
1
- import { r as d, i as f, c as g, V as h } from "./index-BjKSFBDg.js";
1
+ import { r as d, i as f, c as g, V as h } from "./index-Djm2onjx.js";
2
2
  const p = async (e) => {
3
3
  let n = 10;
4
4
  const r = [];