@lifo-sh/core 0.1.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 (305) hide show
  1. package/dist/archive-D220So0m.js +192 -0
  2. package/dist/args-CG6b9cZt.js +43 -0
  3. package/dist/awk-rMPdpM91.js +118 -0
  4. package/dist/basename-C33A_Zse.js +12 -0
  5. package/dist/bc-BYiKVTNg.js +200 -0
  6. package/dist/cal-DPULSAhj.js +56 -0
  7. package/dist/cat-Crmqa4-2.js +29 -0
  8. package/dist/chmod-CcGyvoCX.js +56 -0
  9. package/dist/chown-CErsnGQX.js +28 -0
  10. package/dist/commands/archive/gunzip.d.ts +4 -0
  11. package/dist/commands/archive/gunzip.d.ts.map +1 -0
  12. package/dist/commands/archive/gzip.d.ts +4 -0
  13. package/dist/commands/archive/gzip.d.ts.map +1 -0
  14. package/dist/commands/archive/tar.d.ts +4 -0
  15. package/dist/commands/archive/tar.d.ts.map +1 -0
  16. package/dist/commands/archive/unzip.d.ts +4 -0
  17. package/dist/commands/archive/unzip.d.ts.map +1 -0
  18. package/dist/commands/archive/zip.d.ts +4 -0
  19. package/dist/commands/archive/zip.d.ts.map +1 -0
  20. package/dist/commands/fs/basename.d.ts +4 -0
  21. package/dist/commands/fs/basename.d.ts.map +1 -0
  22. package/dist/commands/fs/cat.d.ts +4 -0
  23. package/dist/commands/fs/cat.d.ts.map +1 -0
  24. package/dist/commands/fs/chmod.d.ts +4 -0
  25. package/dist/commands/fs/chmod.d.ts.map +1 -0
  26. package/dist/commands/fs/chown.d.ts +4 -0
  27. package/dist/commands/fs/chown.d.ts.map +1 -0
  28. package/dist/commands/fs/cp.d.ts +4 -0
  29. package/dist/commands/fs/cp.d.ts.map +1 -0
  30. package/dist/commands/fs/df.d.ts +4 -0
  31. package/dist/commands/fs/df.d.ts.map +1 -0
  32. package/dist/commands/fs/dirname.d.ts +4 -0
  33. package/dist/commands/fs/dirname.d.ts.map +1 -0
  34. package/dist/commands/fs/du.d.ts +4 -0
  35. package/dist/commands/fs/du.d.ts.map +1 -0
  36. package/dist/commands/fs/file.d.ts +4 -0
  37. package/dist/commands/fs/file.d.ts.map +1 -0
  38. package/dist/commands/fs/find.d.ts +4 -0
  39. package/dist/commands/fs/find.d.ts.map +1 -0
  40. package/dist/commands/fs/ln.d.ts +4 -0
  41. package/dist/commands/fs/ln.d.ts.map +1 -0
  42. package/dist/commands/fs/ls.d.ts +4 -0
  43. package/dist/commands/fs/ls.d.ts.map +1 -0
  44. package/dist/commands/fs/mkdir.d.ts +4 -0
  45. package/dist/commands/fs/mkdir.d.ts.map +1 -0
  46. package/dist/commands/fs/mktemp.d.ts +4 -0
  47. package/dist/commands/fs/mktemp.d.ts.map +1 -0
  48. package/dist/commands/fs/mv.d.ts +4 -0
  49. package/dist/commands/fs/mv.d.ts.map +1 -0
  50. package/dist/commands/fs/realpath.d.ts +4 -0
  51. package/dist/commands/fs/realpath.d.ts.map +1 -0
  52. package/dist/commands/fs/rm.d.ts +4 -0
  53. package/dist/commands/fs/rm.d.ts.map +1 -0
  54. package/dist/commands/fs/rmdir.d.ts +4 -0
  55. package/dist/commands/fs/rmdir.d.ts.map +1 -0
  56. package/dist/commands/fs/stat.d.ts +4 -0
  57. package/dist/commands/fs/stat.d.ts.map +1 -0
  58. package/dist/commands/fs/touch.d.ts +4 -0
  59. package/dist/commands/fs/touch.d.ts.map +1 -0
  60. package/dist/commands/fs/tree.d.ts +4 -0
  61. package/dist/commands/fs/tree.d.ts.map +1 -0
  62. package/dist/commands/index.d.ts +3 -0
  63. package/dist/commands/index.d.ts.map +1 -0
  64. package/dist/commands/io/printf.d.ts +4 -0
  65. package/dist/commands/io/printf.d.ts.map +1 -0
  66. package/dist/commands/io/tee.d.ts +4 -0
  67. package/dist/commands/io/tee.d.ts.map +1 -0
  68. package/dist/commands/io/xargs.d.ts +4 -0
  69. package/dist/commands/io/xargs.d.ts.map +1 -0
  70. package/dist/commands/io/yes.d.ts +4 -0
  71. package/dist/commands/io/yes.d.ts.map +1 -0
  72. package/dist/commands/net/curl.d.ts +6 -0
  73. package/dist/commands/net/curl.d.ts.map +1 -0
  74. package/dist/commands/net/dig.d.ts +4 -0
  75. package/dist/commands/net/dig.d.ts.map +1 -0
  76. package/dist/commands/net/ping.d.ts +4 -0
  77. package/dist/commands/net/ping.d.ts.map +1 -0
  78. package/dist/commands/net/wget.d.ts +4 -0
  79. package/dist/commands/net/wget.d.ts.map +1 -0
  80. package/dist/commands/registry.d.ts +13 -0
  81. package/dist/commands/registry.d.ts.map +1 -0
  82. package/dist/commands/system/bc.d.ts +4 -0
  83. package/dist/commands/system/bc.d.ts.map +1 -0
  84. package/dist/commands/system/cal.d.ts +4 -0
  85. package/dist/commands/system/cal.d.ts.map +1 -0
  86. package/dist/commands/system/date.d.ts +4 -0
  87. package/dist/commands/system/date.d.ts.map +1 -0
  88. package/dist/commands/system/env.d.ts +4 -0
  89. package/dist/commands/system/env.d.ts.map +1 -0
  90. package/dist/commands/system/free.d.ts +4 -0
  91. package/dist/commands/system/free.d.ts.map +1 -0
  92. package/dist/commands/system/help.d.ts +4 -0
  93. package/dist/commands/system/help.d.ts.map +1 -0
  94. package/dist/commands/system/hostname.d.ts +4 -0
  95. package/dist/commands/system/hostname.d.ts.map +1 -0
  96. package/dist/commands/system/kill.d.ts +4 -0
  97. package/dist/commands/system/kill.d.ts.map +1 -0
  98. package/dist/commands/system/man.d.ts +4 -0
  99. package/dist/commands/system/man.d.ts.map +1 -0
  100. package/dist/commands/system/node.d.ts +6 -0
  101. package/dist/commands/system/node.d.ts.map +1 -0
  102. package/dist/commands/system/pkg.d.ts +4 -0
  103. package/dist/commands/system/pkg.d.ts.map +1 -0
  104. package/dist/commands/system/ps.d.ts +4 -0
  105. package/dist/commands/system/ps.d.ts.map +1 -0
  106. package/dist/commands/system/sleep.d.ts +4 -0
  107. package/dist/commands/system/sleep.d.ts.map +1 -0
  108. package/dist/commands/system/top.d.ts +4 -0
  109. package/dist/commands/system/top.d.ts.map +1 -0
  110. package/dist/commands/system/uname.d.ts +4 -0
  111. package/dist/commands/system/uname.d.ts.map +1 -0
  112. package/dist/commands/system/uptime.d.ts +4 -0
  113. package/dist/commands/system/uptime.d.ts.map +1 -0
  114. package/dist/commands/system/watch.d.ts +4 -0
  115. package/dist/commands/system/watch.d.ts.map +1 -0
  116. package/dist/commands/system/which.d.ts +4 -0
  117. package/dist/commands/system/which.d.ts.map +1 -0
  118. package/dist/commands/system/whoami.d.ts +4 -0
  119. package/dist/commands/system/whoami.d.ts.map +1 -0
  120. package/dist/commands/text/awk.d.ts +4 -0
  121. package/dist/commands/text/awk.d.ts.map +1 -0
  122. package/dist/commands/text/cut.d.ts +4 -0
  123. package/dist/commands/text/cut.d.ts.map +1 -0
  124. package/dist/commands/text/diff.d.ts +4 -0
  125. package/dist/commands/text/diff.d.ts.map +1 -0
  126. package/dist/commands/text/grep.d.ts +4 -0
  127. package/dist/commands/text/grep.d.ts.map +1 -0
  128. package/dist/commands/text/head.d.ts +4 -0
  129. package/dist/commands/text/head.d.ts.map +1 -0
  130. package/dist/commands/text/nl.d.ts +4 -0
  131. package/dist/commands/text/nl.d.ts.map +1 -0
  132. package/dist/commands/text/rev.d.ts +4 -0
  133. package/dist/commands/text/rev.d.ts.map +1 -0
  134. package/dist/commands/text/sed.d.ts +4 -0
  135. package/dist/commands/text/sed.d.ts.map +1 -0
  136. package/dist/commands/text/sort.d.ts +4 -0
  137. package/dist/commands/text/sort.d.ts.map +1 -0
  138. package/dist/commands/text/tail.d.ts +4 -0
  139. package/dist/commands/text/tail.d.ts.map +1 -0
  140. package/dist/commands/text/tr.d.ts +4 -0
  141. package/dist/commands/text/tr.d.ts.map +1 -0
  142. package/dist/commands/text/uniq.d.ts +4 -0
  143. package/dist/commands/text/uniq.d.ts.map +1 -0
  144. package/dist/commands/text/wc.d.ts +4 -0
  145. package/dist/commands/text/wc.d.ts.map +1 -0
  146. package/dist/commands/types.d.ts +20 -0
  147. package/dist/commands/types.d.ts.map +1 -0
  148. package/dist/cp-CpjwiLUF.js +19 -0
  149. package/dist/cut-GfN8py4j.js +60 -0
  150. package/dist/date-C8NB8v8G.js +86 -0
  151. package/dist/df-CeZb4WOr.js +34 -0
  152. package/dist/diff-2wbVWmCT.js +129 -0
  153. package/dist/dig-BEJ8Ky96.js +69 -0
  154. package/dist/dirname-C5L53RA2.js +13 -0
  155. package/dist/du-B0shJpEL.js +77 -0
  156. package/dist/env-DXzvDKsN.js +9 -0
  157. package/dist/file-C2epVYvH.js +70 -0
  158. package/dist/find-DA-rpvsC.js +36 -0
  159. package/dist/free-DAxE4b2U.js +23 -0
  160. package/dist/grep-Bynq2w2E.js +140 -0
  161. package/dist/gunzip-B9b1Vph1.js +48 -0
  162. package/dist/gzip-CkXnPp5J.js +58 -0
  163. package/dist/head-DZJVLF1k.js +48 -0
  164. package/dist/hostname-BxU2S3nT.js +8 -0
  165. package/dist/index-Be1wosKt.js +6028 -0
  166. package/dist/index.d.ts +25 -0
  167. package/dist/index.d.ts.map +1 -0
  168. package/dist/index.js +51 -0
  169. package/dist/kernel/index.d.ts +25 -0
  170. package/dist/kernel/index.d.ts.map +1 -0
  171. package/dist/kernel/persistence/PersistenceManager.d.ts +10 -0
  172. package/dist/kernel/persistence/PersistenceManager.d.ts.map +1 -0
  173. package/dist/kernel/persistence/serializer.d.ts +13 -0
  174. package/dist/kernel/persistence/serializer.d.ts.map +1 -0
  175. package/dist/kernel/samples.d.ts +3 -0
  176. package/dist/kernel/samples.d.ts.map +1 -0
  177. package/dist/kernel/vfs/VFS.d.ts +36 -0
  178. package/dist/kernel/vfs/VFS.d.ts.map +1 -0
  179. package/dist/kernel/vfs/index.d.ts +4 -0
  180. package/dist/kernel/vfs/index.d.ts.map +1 -0
  181. package/dist/kernel/vfs/providers/DevProvider.d.ts +11 -0
  182. package/dist/kernel/vfs/providers/DevProvider.d.ts.map +1 -0
  183. package/dist/kernel/vfs/providers/ProcProvider.d.ts +14 -0
  184. package/dist/kernel/vfs/providers/ProcProvider.d.ts.map +1 -0
  185. package/dist/kernel/vfs/types.d.ts +43 -0
  186. package/dist/kernel/vfs/types.d.ts.map +1 -0
  187. package/dist/ln-Bf3f3jVA.js +11 -0
  188. package/dist/ls-CSeazevv.js +106 -0
  189. package/dist/man-CJ5pI0_W.js +122 -0
  190. package/dist/mkdir-B7p8krsP.js +27 -0
  191. package/dist/mktemp-88Nhvd7h.js +31 -0
  192. package/dist/mv-DRVvz9oK.js +19 -0
  193. package/dist/nl-G2vK3rR3.js +48 -0
  194. package/dist/node-compat/buffer.d.ts +17 -0
  195. package/dist/node-compat/buffer.d.ts.map +1 -0
  196. package/dist/node-compat/child_process.d.ts +10 -0
  197. package/dist/node-compat/child_process.d.ts.map +1 -0
  198. package/dist/node-compat/console.d.ts +21 -0
  199. package/dist/node-compat/console.d.ts.map +1 -0
  200. package/dist/node-compat/crypto.d.ts +17 -0
  201. package/dist/node-compat/crypto.d.ts.map +1 -0
  202. package/dist/node-compat/events.d.ts +19 -0
  203. package/dist/node-compat/events.d.ts.map +1 -0
  204. package/dist/node-compat/fs.d.ts +113 -0
  205. package/dist/node-compat/fs.d.ts.map +1 -0
  206. package/dist/node-compat/http.d.ts +87 -0
  207. package/dist/node-compat/http.d.ts.map +1 -0
  208. package/dist/node-compat/index.d.ts +19 -0
  209. package/dist/node-compat/index.d.ts.map +1 -0
  210. package/dist/node-compat/os.d.ts +39 -0
  211. package/dist/node-compat/os.d.ts.map +1 -0
  212. package/dist/node-compat/path.d.ts +58 -0
  213. package/dist/node-compat/path.d.ts.map +1 -0
  214. package/dist/node-compat/process.d.ts +62 -0
  215. package/dist/node-compat/process.d.ts.map +1 -0
  216. package/dist/node-compat/stream.d.ts +36 -0
  217. package/dist/node-compat/stream.d.ts.map +1 -0
  218. package/dist/node-compat/timers.d.ts +16 -0
  219. package/dist/node-compat/timers.d.ts.map +1 -0
  220. package/dist/node-compat/url.d.ts +53 -0
  221. package/dist/node-compat/url.d.ts.map +1 -0
  222. package/dist/node-compat/util.d.ts +27 -0
  223. package/dist/node-compat/util.d.ts.map +1 -0
  224. package/dist/ping-DtVEwwda.js +50 -0
  225. package/dist/pkg/PackageManager.d.ts +19 -0
  226. package/dist/pkg/PackageManager.d.ts.map +1 -0
  227. package/dist/pkg/loader.d.ts +4 -0
  228. package/dist/pkg/loader.d.ts.map +1 -0
  229. package/dist/printf-Cc2o7KZx.js +70 -0
  230. package/dist/realpath-C-kisl-F.js +24 -0
  231. package/dist/rev-9puwegeh.js +34 -0
  232. package/dist/rm-BXSq9iqP.js +37 -0
  233. package/dist/rmdir-CWgZ6q8D.js +35 -0
  234. package/dist/sandbox/HeadlessTerminal.d.ts +17 -0
  235. package/dist/sandbox/HeadlessTerminal.d.ts.map +1 -0
  236. package/dist/sandbox/Sandbox.d.ts +36 -0
  237. package/dist/sandbox/Sandbox.d.ts.map +1 -0
  238. package/dist/sandbox/SandboxCommands.d.ts +18 -0
  239. package/dist/sandbox/SandboxCommands.d.ts.map +1 -0
  240. package/dist/sandbox/SandboxFs.d.ts +38 -0
  241. package/dist/sandbox/SandboxFs.d.ts.map +1 -0
  242. package/dist/sandbox/index.d.ts +3 -0
  243. package/dist/sandbox/index.d.ts.map +1 -0
  244. package/dist/sandbox/types.d.ts +72 -0
  245. package/dist/sandbox/types.d.ts.map +1 -0
  246. package/dist/sed-BRxd2DlZ.js +90 -0
  247. package/dist/shell/Shell.d.ts +84 -0
  248. package/dist/shell/Shell.d.ts.map +1 -0
  249. package/dist/shell/completer.d.ts +19 -0
  250. package/dist/shell/completer.d.ts.map +1 -0
  251. package/dist/shell/expander.d.ts +20 -0
  252. package/dist/shell/expander.d.ts.map +1 -0
  253. package/dist/shell/history.d.ts +22 -0
  254. package/dist/shell/history.d.ts.map +1 -0
  255. package/dist/shell/interpreter.d.ts +67 -0
  256. package/dist/shell/interpreter.d.ts.map +1 -0
  257. package/dist/shell/jobs.d.ts +21 -0
  258. package/dist/shell/jobs.d.ts.map +1 -0
  259. package/dist/shell/lexer.d.ts +3 -0
  260. package/dist/shell/lexer.d.ts.map +1 -0
  261. package/dist/shell/parser.d.ts +7 -0
  262. package/dist/shell/parser.d.ts.map +1 -0
  263. package/dist/shell/pipe.d.ts +12 -0
  264. package/dist/shell/pipe.d.ts.map +1 -0
  265. package/dist/shell/terminal-stdin.d.ts +22 -0
  266. package/dist/shell/terminal-stdin.d.ts.map +1 -0
  267. package/dist/shell/test-builtin.d.ts +8 -0
  268. package/dist/shell/test-builtin.d.ts.map +1 -0
  269. package/dist/shell/types.d.ts +109 -0
  270. package/dist/shell/types.d.ts.map +1 -0
  271. package/dist/sleep-B4C3fZiR.js +19 -0
  272. package/dist/sort-B7K83hAD.js +59 -0
  273. package/dist/stat-C0qs7xMV.js +29 -0
  274. package/dist/tail-CYBTYnn3.js +47 -0
  275. package/dist/tar-mMS7gfb-.js +121 -0
  276. package/dist/tee-B8bXFHbI.js +17 -0
  277. package/dist/terminal/Terminal.d.ts +13 -0
  278. package/dist/terminal/Terminal.d.ts.map +1 -0
  279. package/dist/touch-CdAHKfLv.js +23 -0
  280. package/dist/tr-DsCiwSIu.js +60 -0
  281. package/dist/tree-BiWLXiUu.js +46 -0
  282. package/dist/uname-BCn8HlJD.js +37 -0
  283. package/dist/uniq-BZMOwoCc.js +51 -0
  284. package/dist/unzip-DP4I991d.js +82 -0
  285. package/dist/uptime-CgBJegqU.js +8 -0
  286. package/dist/utils/archive.d.ts +22 -0
  287. package/dist/utils/archive.d.ts.map +1 -0
  288. package/dist/utils/args.d.ts +12 -0
  289. package/dist/utils/args.d.ts.map +1 -0
  290. package/dist/utils/colors.d.ts +27 -0
  291. package/dist/utils/colors.d.ts.map +1 -0
  292. package/dist/utils/encoding.d.ts +4 -0
  293. package/dist/utils/encoding.d.ts.map +1 -0
  294. package/dist/utils/glob.d.ts +12 -0
  295. package/dist/utils/glob.d.ts.map +1 -0
  296. package/dist/utils/path.d.ts +12 -0
  297. package/dist/utils/path.d.ts.map +1 -0
  298. package/dist/wc-CpE5K4ZI.js +60 -0
  299. package/dist/wget-DIPI0-I3.js +53 -0
  300. package/dist/which-D3u0cwyh.js +105 -0
  301. package/dist/whoami-B1237V5e.js +8 -0
  302. package/dist/xargs-DfbCRFFd.js +35 -0
  303. package/dist/yes-DXEyHHD2.js +10 -0
  304. package/dist/zip-B_gQ6LXC.js +34 -0
  305. package/package.json +34 -0
@@ -0,0 +1,77 @@
1
+ import { r as y, V as g } from "./index-Be1wosKt.js";
2
+ function u(t) {
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
+ }
5
+ const z = async (t) => {
6
+ let i = !1, l = !1;
7
+ const a = [];
8
+ for (const e of t.args)
9
+ e === "-h" ? i = !0 : e === "-s" ? l = !0 : a.push(e);
10
+ a.length === 0 && a.push(".");
11
+ function d(e) {
12
+ let o = 0;
13
+ try {
14
+ const s = t.vfs.readdir(e);
15
+ for (const n of s) {
16
+ const r = e === "/" ? "/" + n.name : e + "/" + n.name;
17
+ if (n.type === "file") {
18
+ const f = t.vfs.stat(r);
19
+ o += f.size;
20
+ } else
21
+ o += d(r);
22
+ }
23
+ } catch {
24
+ }
25
+ return o;
26
+ }
27
+ function m(e, o) {
28
+ let s = 0;
29
+ try {
30
+ const n = t.vfs.readdir(e);
31
+ for (const r of n) {
32
+ const f = e === "/" ? "/" + r.name : e + "/" + r.name, h = o === "/" ? "/" + r.name : o + "/" + r.name;
33
+ if (r.type === "file") {
34
+ const c = t.vfs.stat(f);
35
+ s += c.size;
36
+ } else {
37
+ const c = m(f, h);
38
+ s += c;
39
+ }
40
+ }
41
+ } catch {
42
+ }
43
+ if (!l) {
44
+ const n = i ? u(s) : String(s);
45
+ t.stdout.write(n + " " + o + `
46
+ `);
47
+ }
48
+ return s;
49
+ }
50
+ let p = 0;
51
+ for (const e of a) {
52
+ const o = y(t.cwd, e);
53
+ try {
54
+ const s = t.vfs.stat(o);
55
+ if (s.type === "file") {
56
+ const n = i ? u(s.size) : String(s.size);
57
+ t.stdout.write(n + " " + e + `
58
+ `);
59
+ } else if (l) {
60
+ const n = d(o), r = i ? u(n) : String(n);
61
+ t.stdout.write(r + " " + e + `
62
+ `);
63
+ } else
64
+ m(o, e);
65
+ } catch (s) {
66
+ if (s instanceof g)
67
+ t.stderr.write(`du: ${e}: ${s.message}
68
+ `), p = 1;
69
+ else
70
+ throw s;
71
+ }
72
+ }
73
+ return p;
74
+ };
75
+ export {
76
+ z as default
77
+ };
@@ -0,0 +1,9 @@
1
+ const o = async (e) => {
2
+ for (const [t, n] of Object.entries(e.env))
3
+ e.stdout.write(`${t}=${n}
4
+ `);
5
+ return 0;
6
+ };
7
+ export {
8
+ o as default
9
+ };
@@ -0,0 +1,70 @@
1
+ import { r as d, e as c, V as f } from "./index-Be1wosKt.js";
2
+ const n = {
3
+ ".txt": "ASCII text",
4
+ ".md": "Markdown text",
5
+ ".js": "JavaScript source",
6
+ ".ts": "TypeScript source",
7
+ ".json": "JSON data",
8
+ ".html": "HTML document",
9
+ ".css": "CSS stylesheet",
10
+ ".sh": "Shell script",
11
+ ".py": "Python script",
12
+ ".xml": "XML document",
13
+ ".yaml": "YAML data",
14
+ ".yml": "YAML data",
15
+ ".csv": "CSV data",
16
+ ".svg": "SVG image",
17
+ ".png": "PNG image data",
18
+ ".jpg": "JPEG image data",
19
+ ".gif": "GIF image data"
20
+ };
21
+ function u(t) {
22
+ for (let s = 0; s < Math.min(t.length, 512); s++) {
23
+ const e = t[s];
24
+ if (!(e === 9 || e === 10 || e === 13) && !(e >= 32 && e <= 126) && !(e >= 128))
25
+ return !1;
26
+ }
27
+ return !0;
28
+ }
29
+ const l = async (t) => {
30
+ if (t.args.length === 0)
31
+ return t.stderr.write(`file: missing operand
32
+ `), 1;
33
+ let s = 0;
34
+ for (const e of t.args) {
35
+ const a = d(t.cwd, e);
36
+ try {
37
+ const r = t.vfs.stat(a);
38
+ if (r.type === "directory") {
39
+ t.stdout.write(`${e}: directory
40
+ `);
41
+ continue;
42
+ }
43
+ if (r.size === 0) {
44
+ t.stdout.write(`${e}: empty
45
+ `);
46
+ continue;
47
+ }
48
+ const i = c(e);
49
+ if (i && n[i]) {
50
+ t.stdout.write(`${e}: ${n[i]}
51
+ `);
52
+ continue;
53
+ }
54
+ const o = t.vfs.readFile(a);
55
+ u(o) ? t.stdout.write(`${e}: ASCII text
56
+ `) : t.stdout.write(`${e}: data
57
+ `);
58
+ } catch (r) {
59
+ if (r instanceof f)
60
+ t.stderr.write(`file: ${e}: ${r.message}
61
+ `), s = 1;
62
+ else
63
+ throw r;
64
+ }
65
+ }
66
+ return s;
67
+ };
68
+ export {
69
+ l as default
70
+ };
@@ -0,0 +1,36 @@
1
+ import { r as m, V as d, g as p } from "./index-Be1wosKt.js";
2
+ const c = async (t) => {
3
+ let f = ".", i = "", a = "", l = 1 / 0;
4
+ for (let e = 0; e < t.args.length; e++) {
5
+ const r = t.args[e];
6
+ r === "-name" && e + 1 < t.args.length ? i = t.args[++e] : r === "-type" && e + 1 < t.args.length ? a = t.args[++e] : r === "-maxdepth" && e + 1 < t.args.length ? l = parseInt(t.args[++e], 10) : r.startsWith("-") || (f = r);
7
+ }
8
+ const o = m(t.cwd, f);
9
+ function g(e, r) {
10
+ if (!(r > l))
11
+ try {
12
+ const h = t.vfs.readdir(e);
13
+ for (const s of h) {
14
+ const y = e === "/" ? "/" + s.name : e + "/" + s.name;
15
+ let n = !0;
16
+ i && (n = p(i, s.name)), a && (a === "f" && s.type !== "file" && (n = !1), a === "d" && s.type !== "directory" && (n = !1)), n && t.stdout.write(y + `
17
+ `), s.type === "directory" && g(y, r + 1);
18
+ }
19
+ } catch {
20
+ }
21
+ }
22
+ try {
23
+ if (t.vfs.stat(o).type !== "directory")
24
+ return t.stdout.write(o + `
25
+ `), 0;
26
+ } catch (e) {
27
+ if (e instanceof d)
28
+ return t.stderr.write(`find: '${f}': ${e.message}
29
+ `), 1;
30
+ throw e;
31
+ }
32
+ return g(o, 1), 0;
33
+ };
34
+ export {
35
+ c as default
36
+ };
@@ -0,0 +1,23 @@
1
+ function o(t) {
2
+ 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";
3
+ }
4
+ const d = async (t) => {
5
+ let i = !1;
6
+ for (const e of t.args)
7
+ e === "-h" && (i = !0);
8
+ const r = performance;
9
+ if (r.memory) {
10
+ const e = r.memory.jsHeapSizeLimit, a = r.memory.usedJSHeapSize, n = e - a;
11
+ i ? (t.stdout.write(` total used free
12
+ `), t.stdout.write(`Mem: ${o(e).padStart(10)} ${o(a).padStart(10)} ${o(n).padStart(10)}
13
+ `)) : (t.stdout.write(` total used free
14
+ `), t.stdout.write(`Mem: ${String(e).padStart(10)} ${String(a).padStart(10)} ${String(n).padStart(10)}
15
+ `));
16
+ } else
17
+ t.stdout.write(`Memory information not available in this browser
18
+ `);
19
+ return 0;
20
+ };
21
+ export {
22
+ d as default
23
+ };
@@ -0,0 +1,140 @@
1
+ import { r as M, V } from "./index-Be1wosKt.js";
2
+ const A = async (r) => {
3
+ const c = r.args;
4
+ let w = !1, y = !1, b = !1, u = !1, k = !1, p = !1, m = !1, o = "";
5
+ const f = [];
6
+ let i = 0;
7
+ for (; i < c.length; ) {
8
+ const e = c[i];
9
+ if (e === "--") {
10
+ i++;
11
+ break;
12
+ }
13
+ if (e.startsWith("-") && e.length > 1 && e[1] !== "-") {
14
+ for (let t = 1; t < e.length; t++)
15
+ switch (e[t]) {
16
+ case "i":
17
+ w = !0;
18
+ break;
19
+ case "v":
20
+ y = !0;
21
+ break;
22
+ case "n":
23
+ b = !0;
24
+ break;
25
+ case "c":
26
+ u = !0;
27
+ break;
28
+ case "l":
29
+ k = !0;
30
+ break;
31
+ case "r":
32
+ p = !0;
33
+ break;
34
+ case "E":
35
+ break;
36
+ // JS regex is already ERE
37
+ case "w":
38
+ m = !0;
39
+ break;
40
+ }
41
+ i++;
42
+ } else if (!o)
43
+ o = e, i++;
44
+ else
45
+ break;
46
+ }
47
+ for (; i < c.length; )
48
+ f.push(c[i++]);
49
+ if (!o)
50
+ return r.stderr.write(`grep: missing pattern
51
+ `), 2;
52
+ let g = o;
53
+ m && (g = `\\b${g}\\b`);
54
+ let v;
55
+ try {
56
+ v = new RegExp(g, w ? "i" : "");
57
+ } catch {
58
+ return r.stderr.write(`grep: invalid regex: ${o}
59
+ `), 2;
60
+ }
61
+ let $ = !1;
62
+ const d = f.length > 1 || p;
63
+ async function h(e, t) {
64
+ let n = 0;
65
+ for (let s = 0; s < e.length; s++) {
66
+ const a = e[s];
67
+ if (v.test(a) !== y) {
68
+ if ($ = !0, n++, k) {
69
+ t && r.stdout.write(t + `
70
+ `);
71
+ return;
72
+ }
73
+ if (!u) {
74
+ let l = "";
75
+ d && t && (l += t + ":"), b && (l += s + 1 + ":"), l += a + `
76
+ `, r.stdout.write(l);
77
+ }
78
+ }
79
+ }
80
+ if (u) {
81
+ let s = "";
82
+ d && t && (s += t + ":"), s += n + `
83
+ `, r.stdout.write(s);
84
+ }
85
+ }
86
+ function F(e) {
87
+ const t = [];
88
+ try {
89
+ const n = r.vfs.readdir(e);
90
+ for (const s of n) {
91
+ const a = e === "/" ? "/" + s.name : e + "/" + s.name;
92
+ s.type === "file" ? t.push(a) : s.type === "directory" && t.push(...F(a));
93
+ }
94
+ } catch {
95
+ }
96
+ return t;
97
+ }
98
+ if (f.length === 0)
99
+ if (r.stdin) {
100
+ const t = (await r.stdin.readAll()).replace(/\n$/, "").split(`
101
+ `);
102
+ await h(t, null);
103
+ } else
104
+ return r.stderr.write(`grep: missing file operand
105
+ `), 2;
106
+ else
107
+ for (const e of f) {
108
+ const t = M(r.cwd, e);
109
+ try {
110
+ if (r.vfs.stat(t).type === "directory") {
111
+ if (p) {
112
+ const E = F(t);
113
+ for (const l of E)
114
+ try {
115
+ const S = r.vfs.readFileString(l).replace(/\n$/, "").split(`
116
+ `);
117
+ await h(S, l);
118
+ } catch {
119
+ }
120
+ } else
121
+ r.stderr.write(`grep: ${e}: Is a directory
122
+ `);
123
+ continue;
124
+ }
125
+ const a = r.vfs.readFileString(t).replace(/\n$/, "").split(`
126
+ `);
127
+ await h(a, d ? e : null);
128
+ } catch (n) {
129
+ if (n instanceof V)
130
+ r.stderr.write(`grep: ${e}: ${n.message}
131
+ `);
132
+ else
133
+ throw n;
134
+ }
135
+ }
136
+ return $ ? 0 : 1;
137
+ };
138
+ export {
139
+ A as default
140
+ };
@@ -0,0 +1,48 @@
1
+ import { r as u, V as d } from "./index-Be1wosKt.js";
2
+ import { d as p } from "./archive-D220So0m.js";
3
+ const w = async (e) => {
4
+ let o = !1;
5
+ const t = [];
6
+ for (const r of e.args)
7
+ switch (r) {
8
+ case "-k":
9
+ case "--keep":
10
+ o = !0;
11
+ break;
12
+ case "--help":
13
+ return e.stdout.write(`Usage: gunzip [-k] file.gz
14
+ `), e.stdout.write(` -k, --keep keep original file
15
+ `), 0;
16
+ default:
17
+ if (r.startsWith("-"))
18
+ return e.stderr.write(`gunzip: unknown option: ${r}
19
+ `), 1;
20
+ t.push(r);
21
+ }
22
+ if (t.length === 0)
23
+ return e.stderr.write(`gunzip: missing file operand
24
+ `), 1;
25
+ let n = 0;
26
+ for (const r of t) {
27
+ const i = u(e.cwd, r);
28
+ try {
29
+ if (!i.endsWith(".gz")) {
30
+ e.stderr.write(`gunzip: ${r}: unknown suffix -- ignored
31
+ `), n = 1;
32
+ continue;
33
+ }
34
+ const s = e.vfs.readFile(i), a = await p(s), f = i.slice(0, -3);
35
+ e.vfs.writeFile(f, a), o || e.vfs.unlink(i);
36
+ } catch (s) {
37
+ if (s instanceof d)
38
+ e.stderr.write(`gunzip: ${r}: ${s.message}
39
+ `), n = 1;
40
+ else
41
+ throw s;
42
+ }
43
+ }
44
+ return n;
45
+ };
46
+ export {
47
+ w as default
48
+ };
@@ -0,0 +1,58 @@
1
+ import { r as p, V as l } from "./index-Be1wosKt.js";
2
+ import { d as u, b as c } from "./archive-D220So0m.js";
3
+ const g = async (e) => {
4
+ let t = !1, d = !1;
5
+ const o = [];
6
+ for (const s of e.args)
7
+ switch (s) {
8
+ case "-k":
9
+ case "--keep":
10
+ t = !0;
11
+ break;
12
+ case "-d":
13
+ case "--decompress":
14
+ d = !0;
15
+ break;
16
+ case "--help":
17
+ return e.stdout.write(`Usage: gzip [-k] [-d] file
18
+ `), e.stdout.write(` -k, --keep keep original file
19
+ `), e.stdout.write(` -d, --decompress decompress
20
+ `), 0;
21
+ default:
22
+ if (s.startsWith("-"))
23
+ return e.stderr.write(`gzip: unknown option: ${s}
24
+ `), 1;
25
+ o.push(s);
26
+ }
27
+ if (o.length === 0)
28
+ return e.stderr.write(`gzip: missing file operand
29
+ `), 1;
30
+ let n = 0;
31
+ for (const s of o) {
32
+ const r = p(e.cwd, s);
33
+ try {
34
+ if (d) {
35
+ if (!r.endsWith(".gz")) {
36
+ e.stderr.write(`gzip: ${s}: unknown suffix -- ignored
37
+ `), n = 1;
38
+ continue;
39
+ }
40
+ const i = e.vfs.readFile(r), a = await u(i), f = r.slice(0, -3);
41
+ e.vfs.writeFile(f, a), t || e.vfs.unlink(r);
42
+ } else {
43
+ const i = e.vfs.readFile(r), a = await c(i);
44
+ e.vfs.writeFile(r + ".gz", a), t || e.vfs.unlink(r);
45
+ }
46
+ } catch (i) {
47
+ if (i instanceof l)
48
+ e.stderr.write(`gzip: ${s}: ${i.message}
49
+ `), n = 1;
50
+ else
51
+ throw i;
52
+ }
53
+ }
54
+ return n;
55
+ };
56
+ export {
57
+ g as default
58
+ };
@@ -0,0 +1,48 @@
1
+ import { r as d, V as f } from "./index-Be1wosKt.js";
2
+ const h = async (e) => {
3
+ let r = 10;
4
+ const i = [];
5
+ for (let t = 0; t < e.args.length; t++) {
6
+ const s = e.args[t];
7
+ if (s === "-n" && t + 1 < e.args.length) {
8
+ if (r = parseInt(e.args[++t], 10), isNaN(r))
9
+ return e.stderr.write(`head: invalid number of lines
10
+ `), 1;
11
+ } else /^-\d+$/.test(s) ? r = parseInt(s.slice(1), 10) : i.push(s);
12
+ }
13
+ async function a(t) {
14
+ const s = t.split(`
15
+ `);
16
+ let o = s.slice(0, r).join(`
17
+ `);
18
+ s.length > r && (o += `
19
+ `), e.stdout.write(o);
20
+ }
21
+ if (i.length === 0) {
22
+ if (e.stdin)
23
+ await a(await e.stdin.readAll());
24
+ else
25
+ return e.stderr.write(`head: missing file operand
26
+ `), 1;
27
+ return 0;
28
+ }
29
+ let l = 0;
30
+ for (const t of i) {
31
+ const s = d(e.cwd, t);
32
+ try {
33
+ const n = e.vfs.readFileString(s);
34
+ i.length > 1 && e.stdout.write(`==> ${t} <==
35
+ `), await a(n);
36
+ } catch (n) {
37
+ if (n instanceof f)
38
+ e.stderr.write(`head: ${t}: ${n.message}
39
+ `), l = 1;
40
+ else
41
+ throw n;
42
+ }
43
+ }
44
+ return l;
45
+ };
46
+ export {
47
+ h as default
48
+ };
@@ -0,0 +1,8 @@
1
+ const o = async (n) => {
2
+ const t = n.env.HOSTNAME || "lifo";
3
+ return n.stdout.write(t + `
4
+ `), 0;
5
+ };
6
+ export {
7
+ o as default
8
+ };