@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.
- package/dist/archive-D220So0m.js +192 -0
- package/dist/args-CG6b9cZt.js +43 -0
- package/dist/awk-rMPdpM91.js +118 -0
- package/dist/basename-C33A_Zse.js +12 -0
- package/dist/bc-BYiKVTNg.js +200 -0
- package/dist/cal-DPULSAhj.js +56 -0
- package/dist/cat-Crmqa4-2.js +29 -0
- package/dist/chmod-CcGyvoCX.js +56 -0
- package/dist/chown-CErsnGQX.js +28 -0
- package/dist/commands/archive/gunzip.d.ts +4 -0
- package/dist/commands/archive/gunzip.d.ts.map +1 -0
- package/dist/commands/archive/gzip.d.ts +4 -0
- package/dist/commands/archive/gzip.d.ts.map +1 -0
- package/dist/commands/archive/tar.d.ts +4 -0
- package/dist/commands/archive/tar.d.ts.map +1 -0
- package/dist/commands/archive/unzip.d.ts +4 -0
- package/dist/commands/archive/unzip.d.ts.map +1 -0
- package/dist/commands/archive/zip.d.ts +4 -0
- package/dist/commands/archive/zip.d.ts.map +1 -0
- package/dist/commands/fs/basename.d.ts +4 -0
- package/dist/commands/fs/basename.d.ts.map +1 -0
- package/dist/commands/fs/cat.d.ts +4 -0
- package/dist/commands/fs/cat.d.ts.map +1 -0
- package/dist/commands/fs/chmod.d.ts +4 -0
- package/dist/commands/fs/chmod.d.ts.map +1 -0
- package/dist/commands/fs/chown.d.ts +4 -0
- package/dist/commands/fs/chown.d.ts.map +1 -0
- package/dist/commands/fs/cp.d.ts +4 -0
- package/dist/commands/fs/cp.d.ts.map +1 -0
- package/dist/commands/fs/df.d.ts +4 -0
- package/dist/commands/fs/df.d.ts.map +1 -0
- package/dist/commands/fs/dirname.d.ts +4 -0
- package/dist/commands/fs/dirname.d.ts.map +1 -0
- package/dist/commands/fs/du.d.ts +4 -0
- package/dist/commands/fs/du.d.ts.map +1 -0
- package/dist/commands/fs/file.d.ts +4 -0
- package/dist/commands/fs/file.d.ts.map +1 -0
- package/dist/commands/fs/find.d.ts +4 -0
- package/dist/commands/fs/find.d.ts.map +1 -0
- package/dist/commands/fs/ln.d.ts +4 -0
- package/dist/commands/fs/ln.d.ts.map +1 -0
- package/dist/commands/fs/ls.d.ts +4 -0
- package/dist/commands/fs/ls.d.ts.map +1 -0
- package/dist/commands/fs/mkdir.d.ts +4 -0
- package/dist/commands/fs/mkdir.d.ts.map +1 -0
- package/dist/commands/fs/mktemp.d.ts +4 -0
- package/dist/commands/fs/mktemp.d.ts.map +1 -0
- package/dist/commands/fs/mv.d.ts +4 -0
- package/dist/commands/fs/mv.d.ts.map +1 -0
- package/dist/commands/fs/realpath.d.ts +4 -0
- package/dist/commands/fs/realpath.d.ts.map +1 -0
- package/dist/commands/fs/rm.d.ts +4 -0
- package/dist/commands/fs/rm.d.ts.map +1 -0
- package/dist/commands/fs/rmdir.d.ts +4 -0
- package/dist/commands/fs/rmdir.d.ts.map +1 -0
- package/dist/commands/fs/stat.d.ts +4 -0
- package/dist/commands/fs/stat.d.ts.map +1 -0
- package/dist/commands/fs/touch.d.ts +4 -0
- package/dist/commands/fs/touch.d.ts.map +1 -0
- package/dist/commands/fs/tree.d.ts +4 -0
- package/dist/commands/fs/tree.d.ts.map +1 -0
- package/dist/commands/index.d.ts +3 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/io/printf.d.ts +4 -0
- package/dist/commands/io/printf.d.ts.map +1 -0
- package/dist/commands/io/tee.d.ts +4 -0
- package/dist/commands/io/tee.d.ts.map +1 -0
- package/dist/commands/io/xargs.d.ts +4 -0
- package/dist/commands/io/xargs.d.ts.map +1 -0
- package/dist/commands/io/yes.d.ts +4 -0
- package/dist/commands/io/yes.d.ts.map +1 -0
- package/dist/commands/net/curl.d.ts +6 -0
- package/dist/commands/net/curl.d.ts.map +1 -0
- package/dist/commands/net/dig.d.ts +4 -0
- package/dist/commands/net/dig.d.ts.map +1 -0
- package/dist/commands/net/ping.d.ts +4 -0
- package/dist/commands/net/ping.d.ts.map +1 -0
- package/dist/commands/net/wget.d.ts +4 -0
- package/dist/commands/net/wget.d.ts.map +1 -0
- package/dist/commands/registry.d.ts +13 -0
- package/dist/commands/registry.d.ts.map +1 -0
- package/dist/commands/system/bc.d.ts +4 -0
- package/dist/commands/system/bc.d.ts.map +1 -0
- package/dist/commands/system/cal.d.ts +4 -0
- package/dist/commands/system/cal.d.ts.map +1 -0
- package/dist/commands/system/date.d.ts +4 -0
- package/dist/commands/system/date.d.ts.map +1 -0
- package/dist/commands/system/env.d.ts +4 -0
- package/dist/commands/system/env.d.ts.map +1 -0
- package/dist/commands/system/free.d.ts +4 -0
- package/dist/commands/system/free.d.ts.map +1 -0
- package/dist/commands/system/help.d.ts +4 -0
- package/dist/commands/system/help.d.ts.map +1 -0
- package/dist/commands/system/hostname.d.ts +4 -0
- package/dist/commands/system/hostname.d.ts.map +1 -0
- package/dist/commands/system/kill.d.ts +4 -0
- package/dist/commands/system/kill.d.ts.map +1 -0
- package/dist/commands/system/man.d.ts +4 -0
- package/dist/commands/system/man.d.ts.map +1 -0
- package/dist/commands/system/node.d.ts +6 -0
- package/dist/commands/system/node.d.ts.map +1 -0
- package/dist/commands/system/pkg.d.ts +4 -0
- package/dist/commands/system/pkg.d.ts.map +1 -0
- package/dist/commands/system/ps.d.ts +4 -0
- package/dist/commands/system/ps.d.ts.map +1 -0
- package/dist/commands/system/sleep.d.ts +4 -0
- package/dist/commands/system/sleep.d.ts.map +1 -0
- package/dist/commands/system/top.d.ts +4 -0
- package/dist/commands/system/top.d.ts.map +1 -0
- package/dist/commands/system/uname.d.ts +4 -0
- package/dist/commands/system/uname.d.ts.map +1 -0
- package/dist/commands/system/uptime.d.ts +4 -0
- package/dist/commands/system/uptime.d.ts.map +1 -0
- package/dist/commands/system/watch.d.ts +4 -0
- package/dist/commands/system/watch.d.ts.map +1 -0
- package/dist/commands/system/which.d.ts +4 -0
- package/dist/commands/system/which.d.ts.map +1 -0
- package/dist/commands/system/whoami.d.ts +4 -0
- package/dist/commands/system/whoami.d.ts.map +1 -0
- package/dist/commands/text/awk.d.ts +4 -0
- package/dist/commands/text/awk.d.ts.map +1 -0
- package/dist/commands/text/cut.d.ts +4 -0
- package/dist/commands/text/cut.d.ts.map +1 -0
- package/dist/commands/text/diff.d.ts +4 -0
- package/dist/commands/text/diff.d.ts.map +1 -0
- package/dist/commands/text/grep.d.ts +4 -0
- package/dist/commands/text/grep.d.ts.map +1 -0
- package/dist/commands/text/head.d.ts +4 -0
- package/dist/commands/text/head.d.ts.map +1 -0
- package/dist/commands/text/nl.d.ts +4 -0
- package/dist/commands/text/nl.d.ts.map +1 -0
- package/dist/commands/text/rev.d.ts +4 -0
- package/dist/commands/text/rev.d.ts.map +1 -0
- package/dist/commands/text/sed.d.ts +4 -0
- package/dist/commands/text/sed.d.ts.map +1 -0
- package/dist/commands/text/sort.d.ts +4 -0
- package/dist/commands/text/sort.d.ts.map +1 -0
- package/dist/commands/text/tail.d.ts +4 -0
- package/dist/commands/text/tail.d.ts.map +1 -0
- package/dist/commands/text/tr.d.ts +4 -0
- package/dist/commands/text/tr.d.ts.map +1 -0
- package/dist/commands/text/uniq.d.ts +4 -0
- package/dist/commands/text/uniq.d.ts.map +1 -0
- package/dist/commands/text/wc.d.ts +4 -0
- package/dist/commands/text/wc.d.ts.map +1 -0
- package/dist/commands/types.d.ts +20 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/cp-CpjwiLUF.js +19 -0
- package/dist/cut-GfN8py4j.js +60 -0
- package/dist/date-C8NB8v8G.js +86 -0
- package/dist/df-CeZb4WOr.js +34 -0
- package/dist/diff-2wbVWmCT.js +129 -0
- package/dist/dig-BEJ8Ky96.js +69 -0
- package/dist/dirname-C5L53RA2.js +13 -0
- package/dist/du-B0shJpEL.js +77 -0
- package/dist/env-DXzvDKsN.js +9 -0
- package/dist/file-C2epVYvH.js +70 -0
- package/dist/find-DA-rpvsC.js +36 -0
- package/dist/free-DAxE4b2U.js +23 -0
- package/dist/grep-Bynq2w2E.js +140 -0
- package/dist/gunzip-B9b1Vph1.js +48 -0
- package/dist/gzip-CkXnPp5J.js +58 -0
- package/dist/head-DZJVLF1k.js +48 -0
- package/dist/hostname-BxU2S3nT.js +8 -0
- package/dist/index-Be1wosKt.js +6028 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +51 -0
- package/dist/kernel/index.d.ts +25 -0
- package/dist/kernel/index.d.ts.map +1 -0
- package/dist/kernel/persistence/PersistenceManager.d.ts +10 -0
- package/dist/kernel/persistence/PersistenceManager.d.ts.map +1 -0
- package/dist/kernel/persistence/serializer.d.ts +13 -0
- package/dist/kernel/persistence/serializer.d.ts.map +1 -0
- package/dist/kernel/samples.d.ts +3 -0
- package/dist/kernel/samples.d.ts.map +1 -0
- package/dist/kernel/vfs/VFS.d.ts +36 -0
- package/dist/kernel/vfs/VFS.d.ts.map +1 -0
- package/dist/kernel/vfs/index.d.ts +4 -0
- package/dist/kernel/vfs/index.d.ts.map +1 -0
- package/dist/kernel/vfs/providers/DevProvider.d.ts +11 -0
- package/dist/kernel/vfs/providers/DevProvider.d.ts.map +1 -0
- package/dist/kernel/vfs/providers/ProcProvider.d.ts +14 -0
- package/dist/kernel/vfs/providers/ProcProvider.d.ts.map +1 -0
- package/dist/kernel/vfs/types.d.ts +43 -0
- package/dist/kernel/vfs/types.d.ts.map +1 -0
- package/dist/ln-Bf3f3jVA.js +11 -0
- package/dist/ls-CSeazevv.js +106 -0
- package/dist/man-CJ5pI0_W.js +122 -0
- package/dist/mkdir-B7p8krsP.js +27 -0
- package/dist/mktemp-88Nhvd7h.js +31 -0
- package/dist/mv-DRVvz9oK.js +19 -0
- package/dist/nl-G2vK3rR3.js +48 -0
- package/dist/node-compat/buffer.d.ts +17 -0
- package/dist/node-compat/buffer.d.ts.map +1 -0
- package/dist/node-compat/child_process.d.ts +10 -0
- package/dist/node-compat/child_process.d.ts.map +1 -0
- package/dist/node-compat/console.d.ts +21 -0
- package/dist/node-compat/console.d.ts.map +1 -0
- package/dist/node-compat/crypto.d.ts +17 -0
- package/dist/node-compat/crypto.d.ts.map +1 -0
- package/dist/node-compat/events.d.ts +19 -0
- package/dist/node-compat/events.d.ts.map +1 -0
- package/dist/node-compat/fs.d.ts +113 -0
- package/dist/node-compat/fs.d.ts.map +1 -0
- package/dist/node-compat/http.d.ts +87 -0
- package/dist/node-compat/http.d.ts.map +1 -0
- package/dist/node-compat/index.d.ts +19 -0
- package/dist/node-compat/index.d.ts.map +1 -0
- package/dist/node-compat/os.d.ts +39 -0
- package/dist/node-compat/os.d.ts.map +1 -0
- package/dist/node-compat/path.d.ts +58 -0
- package/dist/node-compat/path.d.ts.map +1 -0
- package/dist/node-compat/process.d.ts +62 -0
- package/dist/node-compat/process.d.ts.map +1 -0
- package/dist/node-compat/stream.d.ts +36 -0
- package/dist/node-compat/stream.d.ts.map +1 -0
- package/dist/node-compat/timers.d.ts +16 -0
- package/dist/node-compat/timers.d.ts.map +1 -0
- package/dist/node-compat/url.d.ts +53 -0
- package/dist/node-compat/url.d.ts.map +1 -0
- package/dist/node-compat/util.d.ts +27 -0
- package/dist/node-compat/util.d.ts.map +1 -0
- package/dist/ping-DtVEwwda.js +50 -0
- package/dist/pkg/PackageManager.d.ts +19 -0
- package/dist/pkg/PackageManager.d.ts.map +1 -0
- package/dist/pkg/loader.d.ts +4 -0
- package/dist/pkg/loader.d.ts.map +1 -0
- package/dist/printf-Cc2o7KZx.js +70 -0
- package/dist/realpath-C-kisl-F.js +24 -0
- package/dist/rev-9puwegeh.js +34 -0
- package/dist/rm-BXSq9iqP.js +37 -0
- package/dist/rmdir-CWgZ6q8D.js +35 -0
- package/dist/sandbox/HeadlessTerminal.d.ts +17 -0
- package/dist/sandbox/HeadlessTerminal.d.ts.map +1 -0
- package/dist/sandbox/Sandbox.d.ts +36 -0
- package/dist/sandbox/Sandbox.d.ts.map +1 -0
- package/dist/sandbox/SandboxCommands.d.ts +18 -0
- package/dist/sandbox/SandboxCommands.d.ts.map +1 -0
- package/dist/sandbox/SandboxFs.d.ts +38 -0
- package/dist/sandbox/SandboxFs.d.ts.map +1 -0
- package/dist/sandbox/index.d.ts +3 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/types.d.ts +72 -0
- package/dist/sandbox/types.d.ts.map +1 -0
- package/dist/sed-BRxd2DlZ.js +90 -0
- package/dist/shell/Shell.d.ts +84 -0
- package/dist/shell/Shell.d.ts.map +1 -0
- package/dist/shell/completer.d.ts +19 -0
- package/dist/shell/completer.d.ts.map +1 -0
- package/dist/shell/expander.d.ts +20 -0
- package/dist/shell/expander.d.ts.map +1 -0
- package/dist/shell/history.d.ts +22 -0
- package/dist/shell/history.d.ts.map +1 -0
- package/dist/shell/interpreter.d.ts +67 -0
- package/dist/shell/interpreter.d.ts.map +1 -0
- package/dist/shell/jobs.d.ts +21 -0
- package/dist/shell/jobs.d.ts.map +1 -0
- package/dist/shell/lexer.d.ts +3 -0
- package/dist/shell/lexer.d.ts.map +1 -0
- package/dist/shell/parser.d.ts +7 -0
- package/dist/shell/parser.d.ts.map +1 -0
- package/dist/shell/pipe.d.ts +12 -0
- package/dist/shell/pipe.d.ts.map +1 -0
- package/dist/shell/terminal-stdin.d.ts +22 -0
- package/dist/shell/terminal-stdin.d.ts.map +1 -0
- package/dist/shell/test-builtin.d.ts +8 -0
- package/dist/shell/test-builtin.d.ts.map +1 -0
- package/dist/shell/types.d.ts +109 -0
- package/dist/shell/types.d.ts.map +1 -0
- package/dist/sleep-B4C3fZiR.js +19 -0
- package/dist/sort-B7K83hAD.js +59 -0
- package/dist/stat-C0qs7xMV.js +29 -0
- package/dist/tail-CYBTYnn3.js +47 -0
- package/dist/tar-mMS7gfb-.js +121 -0
- package/dist/tee-B8bXFHbI.js +17 -0
- package/dist/terminal/Terminal.d.ts +13 -0
- package/dist/terminal/Terminal.d.ts.map +1 -0
- package/dist/touch-CdAHKfLv.js +23 -0
- package/dist/tr-DsCiwSIu.js +60 -0
- package/dist/tree-BiWLXiUu.js +46 -0
- package/dist/uname-BCn8HlJD.js +37 -0
- package/dist/uniq-BZMOwoCc.js +51 -0
- package/dist/unzip-DP4I991d.js +82 -0
- package/dist/uptime-CgBJegqU.js +8 -0
- package/dist/utils/archive.d.ts +22 -0
- package/dist/utils/archive.d.ts.map +1 -0
- package/dist/utils/args.d.ts +12 -0
- package/dist/utils/args.d.ts.map +1 -0
- package/dist/utils/colors.d.ts +27 -0
- package/dist/utils/colors.d.ts.map +1 -0
- package/dist/utils/encoding.d.ts +4 -0
- package/dist/utils/encoding.d.ts.map +1 -0
- package/dist/utils/glob.d.ts +12 -0
- package/dist/utils/glob.d.ts.map +1 -0
- package/dist/utils/path.d.ts +12 -0
- package/dist/utils/path.d.ts.map +1 -0
- package/dist/wc-CpE5K4ZI.js +60 -0
- package/dist/wget-DIPI0-I3.js +53 -0
- package/dist/which-D3u0cwyh.js +105 -0
- package/dist/whoami-B1237V5e.js +8 -0
- package/dist/xargs-DfbCRFFd.js +35 -0
- package/dist/yes-DXEyHHD2.js +10 -0
- package/dist/zip-B_gQ6LXC.js +34 -0
- package/package.json +34 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
declare const _URL: {
|
|
2
|
+
new (url: string | URL, base?: string | URL): URL;
|
|
3
|
+
prototype: URL;
|
|
4
|
+
canParse(url: string | URL, base?: string | URL): boolean;
|
|
5
|
+
createObjectURL(obj: Blob | MediaSource): string;
|
|
6
|
+
parse(url: string | URL, base?: string | URL): URL | null;
|
|
7
|
+
revokeObjectURL(url: string): void;
|
|
8
|
+
};
|
|
9
|
+
declare const _URLSearchParams: {
|
|
10
|
+
new (init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
|
|
11
|
+
prototype: URLSearchParams;
|
|
12
|
+
};
|
|
13
|
+
export { _URL as URL, _URLSearchParams as URLSearchParams };
|
|
14
|
+
export declare function parse(urlString: string): {
|
|
15
|
+
protocol: string | null;
|
|
16
|
+
hostname: string | null;
|
|
17
|
+
port: string | null;
|
|
18
|
+
pathname: string;
|
|
19
|
+
search: string | null;
|
|
20
|
+
hash: string | null;
|
|
21
|
+
host: string | null;
|
|
22
|
+
href: string;
|
|
23
|
+
path: string;
|
|
24
|
+
query: string | null;
|
|
25
|
+
};
|
|
26
|
+
export declare function format(urlObj: {
|
|
27
|
+
protocol?: string;
|
|
28
|
+
hostname?: string;
|
|
29
|
+
port?: string | number;
|
|
30
|
+
pathname?: string;
|
|
31
|
+
search?: string;
|
|
32
|
+
hash?: string;
|
|
33
|
+
}): string;
|
|
34
|
+
export declare function resolve(from: string, to: string): string;
|
|
35
|
+
declare const _default: {
|
|
36
|
+
URL: {
|
|
37
|
+
new (url: string | URL, base?: string | URL): URL;
|
|
38
|
+
prototype: URL;
|
|
39
|
+
canParse(url: string | URL, base?: string | URL): boolean;
|
|
40
|
+
createObjectURL(obj: Blob | MediaSource): string;
|
|
41
|
+
parse(url: string | URL, base?: string | URL): URL | null;
|
|
42
|
+
revokeObjectURL(url: string): void;
|
|
43
|
+
};
|
|
44
|
+
URLSearchParams: {
|
|
45
|
+
new (init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
|
|
46
|
+
prototype: URLSearchParams;
|
|
47
|
+
};
|
|
48
|
+
parse: typeof parse;
|
|
49
|
+
format: typeof format;
|
|
50
|
+
resolve: typeof resolve;
|
|
51
|
+
};
|
|
52
|
+
export default _default;
|
|
53
|
+
//# sourceMappingURL=url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/node-compat/url.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;;;;;;;CAAiB,CAAC;AAC5B,QAAA,MAAM,gBAAgB;;;CAA6B,CAAC;AAEpD,OAAO,EAAE,IAAI,IAAI,GAAG,EAAE,gBAAgB,IAAI,eAAe,EAAE,CAAC;AAE5D,wBAAgB,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG;IACxC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CA6BA;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAS1J;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAExD;;;;;;;;;;;;;;;;;;AAED,wBAAgE"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare function format(fmt: string, ...args: unknown[]): string;
|
|
2
|
+
export declare function inspect(obj: unknown, opts?: {
|
|
3
|
+
depth?: number;
|
|
4
|
+
colors?: boolean;
|
|
5
|
+
}): string;
|
|
6
|
+
export declare function promisify<T>(fn: (...args: [...unknown[], (err: unknown, result: T) => void]) => void): (...args: unknown[]) => Promise<T>;
|
|
7
|
+
export declare function inherits(ctor: {
|
|
8
|
+
prototype: object;
|
|
9
|
+
}, superCtor: {
|
|
10
|
+
prototype: object;
|
|
11
|
+
}): void;
|
|
12
|
+
export declare function deprecate<T extends (...args: unknown[]) => unknown>(fn: T, msg: string): T;
|
|
13
|
+
export declare function types(): {
|
|
14
|
+
isDate: (v: unknown) => v is Date;
|
|
15
|
+
isRegExp: (v: unknown) => v is RegExp;
|
|
16
|
+
isArray: (arg: any) => arg is any[];
|
|
17
|
+
};
|
|
18
|
+
declare const _default: {
|
|
19
|
+
format: typeof format;
|
|
20
|
+
inspect: typeof inspect;
|
|
21
|
+
promisify: typeof promisify;
|
|
22
|
+
inherits: typeof inherits;
|
|
23
|
+
deprecate: typeof deprecate;
|
|
24
|
+
types: typeof types;
|
|
25
|
+
};
|
|
26
|
+
export default _default;
|
|
27
|
+
//# sourceMappingURL=util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/node-compat/util.ts"],"names":[],"mappings":"AAAA,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CA2B9D;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAGzF;AAqCD,wBAAgB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAOzI;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,SAAS,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAE5F;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAS1F;AAED,wBAAgB,KAAK;gBAEL,OAAO;kBACL,OAAO;;EAGxB;;;;;;;;;AAED,wBAA0E"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
const h = async (t) => {
|
|
2
|
+
let n = 4, r;
|
|
3
|
+
const m = t.args;
|
|
4
|
+
for (let e = 0; e < m.length; e++) {
|
|
5
|
+
const i = m[e];
|
|
6
|
+
i === "-c" ? (n = parseInt(m[++e] ?? "4", 10), (isNaN(n) || n < 1) && (n = 4)) : i.startsWith("-") || (r = i);
|
|
7
|
+
}
|
|
8
|
+
if (!r)
|
|
9
|
+
return t.stderr.write(`ping: missing host
|
|
10
|
+
`), t.stderr.write(`Usage: ping [-c count] host
|
|
11
|
+
`), 1;
|
|
12
|
+
let a = r;
|
|
13
|
+
!a.startsWith("http://") && !a.startsWith("https://") && (a = "https://" + a), t.stdout.write(`PING ${r}: ${n} requests
|
|
14
|
+
`);
|
|
15
|
+
const o = [];
|
|
16
|
+
let d = 0;
|
|
17
|
+
for (let e = 0; e < n && !t.signal.aborted; e++) {
|
|
18
|
+
const i = performance.now();
|
|
19
|
+
try {
|
|
20
|
+
await fetch(a, { method: "HEAD", mode: "no-cors", signal: t.signal });
|
|
21
|
+
const s = performance.now() - i;
|
|
22
|
+
o.push(s), t.stdout.write(`Response from ${r}: time=${s.toFixed(1)}ms
|
|
23
|
+
`);
|
|
24
|
+
} catch {
|
|
25
|
+
const s = performance.now() - i;
|
|
26
|
+
if (t.signal.aborted) break;
|
|
27
|
+
d++, t.stdout.write(`Request to ${r}: timeout (${s.toFixed(1)}ms)
|
|
28
|
+
`);
|
|
29
|
+
}
|
|
30
|
+
e < n - 1 && !t.signal.aborted && await new Promise((s) => {
|
|
31
|
+
const c = setTimeout(s, 1e3), g = () => {
|
|
32
|
+
clearTimeout(c), s();
|
|
33
|
+
};
|
|
34
|
+
t.signal.addEventListener("abort", g, { once: !0 });
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
const l = o.length + d, u = l > 0 ? (d / l * 100).toFixed(0) : "0";
|
|
38
|
+
if (t.stdout.write(`
|
|
39
|
+
--- ${r} ping statistics ---
|
|
40
|
+
`), t.stdout.write(`${l} packets transmitted, ${o.length} received, ${u}% packet loss
|
|
41
|
+
`), o.length > 0) {
|
|
42
|
+
const e = Math.min(...o), i = Math.max(...o), s = o.reduce((c, g) => c + g, 0) / o.length;
|
|
43
|
+
t.stdout.write(`rtt min/avg/max = ${e.toFixed(1)}/${s.toFixed(1)}/${i.toFixed(1)} ms
|
|
44
|
+
`);
|
|
45
|
+
}
|
|
46
|
+
return d === l ? 1 : 0;
|
|
47
|
+
};
|
|
48
|
+
export {
|
|
49
|
+
h as default
|
|
50
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { VFS } from '../kernel/vfs/index.js';
|
|
2
|
+
export interface PackageInfo {
|
|
3
|
+
name: string;
|
|
4
|
+
url: string;
|
|
5
|
+
installedAt: number;
|
|
6
|
+
size: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class PackageManager {
|
|
9
|
+
private vfs;
|
|
10
|
+
constructor(vfs: VFS);
|
|
11
|
+
private readMetadata;
|
|
12
|
+
private writeMetadata;
|
|
13
|
+
private ensureDirs;
|
|
14
|
+
install(url: string, name?: string): Promise<PackageInfo>;
|
|
15
|
+
remove(name: string): boolean;
|
|
16
|
+
list(): PackageInfo[];
|
|
17
|
+
info(name: string): PackageInfo | null;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=PackageManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PackageManager.d.ts","sourceRoot":"","sources":["../../src/pkg/PackageManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAMlD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAMD,qBAAa,cAAc;IACb,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,GAAG;IAE5B,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,UAAU;IAKZ,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoC/D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAqB7B,IAAI,IAAI,WAAW,EAAE;IAKrB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;CAIvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/pkg/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAM/D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAyB/E"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
function i(e, t) {
|
|
2
|
+
let s = "", n = 0, r = 0;
|
|
3
|
+
for (; r < e.length; )
|
|
4
|
+
if (e[r] === "\\") {
|
|
5
|
+
if (r++, r < e.length) {
|
|
6
|
+
switch (e[r]) {
|
|
7
|
+
case "n":
|
|
8
|
+
s += `
|
|
9
|
+
`;
|
|
10
|
+
break;
|
|
11
|
+
case "t":
|
|
12
|
+
s += " ";
|
|
13
|
+
break;
|
|
14
|
+
case "\\":
|
|
15
|
+
s += "\\";
|
|
16
|
+
break;
|
|
17
|
+
case "r":
|
|
18
|
+
s += "\r";
|
|
19
|
+
break;
|
|
20
|
+
case "0":
|
|
21
|
+
s += "\0";
|
|
22
|
+
break;
|
|
23
|
+
default:
|
|
24
|
+
s += "\\" + e[r];
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
r++;
|
|
28
|
+
}
|
|
29
|
+
} else if (e[r] === "%") {
|
|
30
|
+
if (r++, r >= e.length) break;
|
|
31
|
+
if (e[r] === "%") {
|
|
32
|
+
s += "%", r++;
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const a = t[n++] || "";
|
|
36
|
+
switch (e[r]) {
|
|
37
|
+
case "s":
|
|
38
|
+
s += a;
|
|
39
|
+
break;
|
|
40
|
+
case "d":
|
|
41
|
+
s += String(parseInt(a, 10) || 0);
|
|
42
|
+
break;
|
|
43
|
+
case "f":
|
|
44
|
+
s += String(parseFloat(a) || 0);
|
|
45
|
+
break;
|
|
46
|
+
case "x":
|
|
47
|
+
s += (parseInt(a, 10) || 0).toString(16);
|
|
48
|
+
break;
|
|
49
|
+
case "o":
|
|
50
|
+
s += (parseInt(a, 10) || 0).toString(8);
|
|
51
|
+
break;
|
|
52
|
+
default:
|
|
53
|
+
s += "%" + e[r];
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
r++;
|
|
57
|
+
} else
|
|
58
|
+
s += e[r], r++;
|
|
59
|
+
return s;
|
|
60
|
+
}
|
|
61
|
+
const c = async (e) => {
|
|
62
|
+
if (e.args.length === 0)
|
|
63
|
+
return e.stderr.write(`printf: missing format string
|
|
64
|
+
`), 1;
|
|
65
|
+
const t = e.args[0], s = e.args.slice(1), n = i(t, s);
|
|
66
|
+
return e.stdout.write(n), 0;
|
|
67
|
+
};
|
|
68
|
+
export {
|
|
69
|
+
c as default
|
|
70
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { r as o, V as n } from "./index-Be1wosKt.js";
|
|
2
|
+
const d = async (r) => {
|
|
3
|
+
if (r.args.length === 0)
|
|
4
|
+
return r.stderr.write(`realpath: missing operand
|
|
5
|
+
`), 1;
|
|
6
|
+
let s = 0;
|
|
7
|
+
for (const t of r.args) {
|
|
8
|
+
const a = o(r.cwd, t);
|
|
9
|
+
try {
|
|
10
|
+
r.vfs.stat(a), r.stdout.write(a + `
|
|
11
|
+
`);
|
|
12
|
+
} catch (e) {
|
|
13
|
+
if (e instanceof n)
|
|
14
|
+
r.stderr.write(`realpath: ${t}: ${e.message}
|
|
15
|
+
`), s = 1;
|
|
16
|
+
else
|
|
17
|
+
throw e;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return s;
|
|
21
|
+
};
|
|
22
|
+
export {
|
|
23
|
+
d as default
|
|
24
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { r as i, V as a } from "./index-Be1wosKt.js";
|
|
2
|
+
function s(r) {
|
|
3
|
+
return r.split(`
|
|
4
|
+
`).map((n) => [...n].reverse().join("")).join(`
|
|
5
|
+
`);
|
|
6
|
+
}
|
|
7
|
+
const f = async (r) => {
|
|
8
|
+
if (r.args.length === 0) {
|
|
9
|
+
if (r.stdin) {
|
|
10
|
+
const t = await r.stdin.readAll();
|
|
11
|
+
return r.stdout.write(s(t)), 0;
|
|
12
|
+
}
|
|
13
|
+
return r.stderr.write(`rev: missing operand
|
|
14
|
+
`), 1;
|
|
15
|
+
}
|
|
16
|
+
let n = 0;
|
|
17
|
+
for (const t of r.args) {
|
|
18
|
+
const o = i(r.cwd, t);
|
|
19
|
+
try {
|
|
20
|
+
const e = r.vfs.readFileString(o);
|
|
21
|
+
r.stdout.write(s(e));
|
|
22
|
+
} catch (e) {
|
|
23
|
+
if (e instanceof a)
|
|
24
|
+
r.stderr.write(`rev: ${t}: ${e.message}
|
|
25
|
+
`), n = 1;
|
|
26
|
+
else
|
|
27
|
+
throw e;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return n;
|
|
31
|
+
};
|
|
32
|
+
export {
|
|
33
|
+
f as default
|
|
34
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { p as f } from "./args-CG6b9cZt.js";
|
|
2
|
+
import { r as m, V as p } from "./index-Be1wosKt.js";
|
|
3
|
+
const l = {
|
|
4
|
+
recursive: { type: "boolean", short: "r" },
|
|
5
|
+
Recursive: { type: "boolean", short: "R" },
|
|
6
|
+
force: { type: "boolean", short: "f" }
|
|
7
|
+
}, v = async (r) => {
|
|
8
|
+
const { flags: s, positional: i } = f(r.args, l), a = s.recursive || s.Recursive, c = s.force;
|
|
9
|
+
if (i.length === 0)
|
|
10
|
+
return r.stderr.write(`rm: missing operand
|
|
11
|
+
`), 1;
|
|
12
|
+
let o = 0;
|
|
13
|
+
for (const t of i) {
|
|
14
|
+
const n = m(r.cwd, t);
|
|
15
|
+
try {
|
|
16
|
+
if (r.vfs.stat(n).type === "directory") {
|
|
17
|
+
if (!a) {
|
|
18
|
+
r.stderr.write(`rm: cannot remove '${t}': Is a directory
|
|
19
|
+
`), o = 1;
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
r.vfs.rmdirRecursive(n);
|
|
23
|
+
} else
|
|
24
|
+
r.vfs.unlink(n);
|
|
25
|
+
} catch (e) {
|
|
26
|
+
if (e instanceof p)
|
|
27
|
+
c || (r.stderr.write(`rm: ${t}: ${e.message}
|
|
28
|
+
`), o = 1);
|
|
29
|
+
else
|
|
30
|
+
throw e;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return o;
|
|
34
|
+
};
|
|
35
|
+
export {
|
|
36
|
+
v as default
|
|
37
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { p } from "./args-CG6b9cZt.js";
|
|
2
|
+
import { r as d, d as n, V as m } from "./index-Be1wosKt.js";
|
|
3
|
+
const f = {
|
|
4
|
+
parents: { type: "boolean", short: "p" }
|
|
5
|
+
}, g = async (e) => {
|
|
6
|
+
const { flags: i, positional: s } = p(e.args, f);
|
|
7
|
+
if (s.length === 0)
|
|
8
|
+
return e.stderr.write(`rmdir: missing operand
|
|
9
|
+
`), 1;
|
|
10
|
+
let t = 0;
|
|
11
|
+
for (const a of s) {
|
|
12
|
+
const o = d(e.cwd, a);
|
|
13
|
+
try {
|
|
14
|
+
if (e.vfs.rmdir(o), i.parents) {
|
|
15
|
+
let r = n(o);
|
|
16
|
+
for (; r !== "/" && r !== "."; )
|
|
17
|
+
try {
|
|
18
|
+
e.vfs.rmdir(r), r = n(r);
|
|
19
|
+
} catch {
|
|
20
|
+
break;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
} catch (r) {
|
|
24
|
+
if (r instanceof m)
|
|
25
|
+
e.stderr.write(`rmdir: ${a}: ${r.message}
|
|
26
|
+
`), t = 1;
|
|
27
|
+
else
|
|
28
|
+
throw r;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return t;
|
|
32
|
+
};
|
|
33
|
+
export {
|
|
34
|
+
g as default
|
|
35
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A Terminal-shaped class that captures output without xterm.js.
|
|
3
|
+
* Used for headless/programmatic Sandbox usage (AI agents, tests, etc.)
|
|
4
|
+
*/
|
|
5
|
+
export declare class HeadlessTerminal {
|
|
6
|
+
private dataCallback;
|
|
7
|
+
write(_data: string): void;
|
|
8
|
+
writeln(_data: string): void;
|
|
9
|
+
onData(cb: (data: string) => void): void;
|
|
10
|
+
get cols(): number;
|
|
11
|
+
get rows(): number;
|
|
12
|
+
focus(): void;
|
|
13
|
+
clear(): void;
|
|
14
|
+
/** Send data as if typed on keyboard (used internally for stdin) */
|
|
15
|
+
sendData(data: string): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=HeadlessTerminal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeadlessTerminal.d.ts","sourceRoot":"","sources":["../../src/sandbox/HeadlessTerminal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAyC;IAE7D,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI1B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5B,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIxC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,KAAK,IAAI,IAAI;IAEb,KAAK,IAAI,IAAI;IAEb,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAG7B"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Kernel } from '../kernel/index.js';
|
|
2
|
+
import { Shell } from '../shell/Shell.js';
|
|
3
|
+
import { SandboxOptions, SandboxCommands, SandboxFs } from './types.js';
|
|
4
|
+
export declare class Sandbox {
|
|
5
|
+
/** Programmatic command execution */
|
|
6
|
+
readonly commands: SandboxCommands;
|
|
7
|
+
/** Filesystem operations */
|
|
8
|
+
readonly fs: SandboxFs;
|
|
9
|
+
/** Environment variables */
|
|
10
|
+
readonly env: Record<string, string>;
|
|
11
|
+
readonly kernel: Kernel;
|
|
12
|
+
readonly shell: Shell;
|
|
13
|
+
private _destroyed;
|
|
14
|
+
private constructor();
|
|
15
|
+
/** Current working directory */
|
|
16
|
+
get cwd(): string;
|
|
17
|
+
set cwd(path: string);
|
|
18
|
+
/**
|
|
19
|
+
* Create a new Sandbox instance.
|
|
20
|
+
* Orchestrates all boot steps: Kernel, VFS, Registry, Shell, config sourcing.
|
|
21
|
+
*/
|
|
22
|
+
static create(options?: SandboxOptions): Promise<Sandbox>;
|
|
23
|
+
/**
|
|
24
|
+
* Attach a headless sandbox to a DOM element, enabling visual mode.
|
|
25
|
+
*/
|
|
26
|
+
attach(container: HTMLElement): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Detach from visual mode.
|
|
29
|
+
*/
|
|
30
|
+
detach(): void;
|
|
31
|
+
/**
|
|
32
|
+
* Destroy the sandbox, releasing all resources.
|
|
33
|
+
*/
|
|
34
|
+
destroy(): void;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=Sandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sandbox.d.ts","sourceRoot":"","sources":["../../src/sandbox/Sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAY1C,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAK7E,qBAAa,OAAO;IAClB,qCAAqC;IACrC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAEtB,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO;IAcP,gCAAgC;IAChC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAEnB;IAED;;;OAGG;WACU,MAAM,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IA6E/D;;OAEG;IACG,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnD;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;OAEG;IACH,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Shell } from '../shell/Shell.js';
|
|
2
|
+
import { CommandRegistry } from '../commands/registry.js';
|
|
3
|
+
import { Command } from '../commands/types.js';
|
|
4
|
+
import { SandboxCommands as ISandboxCommands, RunOptions, CommandResult } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Wraps Shell.execute() and serializes concurrent calls.
|
|
7
|
+
* Concurrent commands.run() calls are queued (matches real shell behavior).
|
|
8
|
+
*/
|
|
9
|
+
export declare class SandboxCommandsImpl implements ISandboxCommands {
|
|
10
|
+
private shell;
|
|
11
|
+
private registry;
|
|
12
|
+
private queue;
|
|
13
|
+
constructor(shell: Shell, registry: CommandRegistry);
|
|
14
|
+
run(cmd: string, options?: RunOptions): Promise<CommandResult>;
|
|
15
|
+
register(name: string, handler: Command): void;
|
|
16
|
+
private executeWithOptions;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=SandboxCommands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SandboxCommands.d.ts","sourceRoot":"","sources":["../../src/sandbox/SandboxCommands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEjG;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,gBAAgB;IAIxD,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;IAJlB,OAAO,CAAC,KAAK,CAAoC;gBAGvC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe;IAGnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAe9D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;YAIhC,kBAAkB;CAqCjC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { VFS } from '../kernel/vfs/index.js';
|
|
2
|
+
import { SandboxFs as ISandboxFs } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Async wrapper around VFS that matches the industry-standard filesystem API.
|
|
5
|
+
* Sync VFS behind async interface future-proofs for async persistence.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SandboxFsImpl implements ISandboxFs {
|
|
8
|
+
private vfs;
|
|
9
|
+
private getCwd;
|
|
10
|
+
constructor(vfs: VFS, getCwd: () => string);
|
|
11
|
+
private resolvePath;
|
|
12
|
+
readFile(path: string): Promise<string>;
|
|
13
|
+
readFile(path: string, encoding: null): Promise<Uint8Array>;
|
|
14
|
+
writeFile(path: string, content: string | Uint8Array): Promise<void>;
|
|
15
|
+
readdir(path: string): Promise<Array<{
|
|
16
|
+
name: string;
|
|
17
|
+
type: 'file' | 'directory';
|
|
18
|
+
}>>;
|
|
19
|
+
stat(path: string): Promise<{
|
|
20
|
+
type: 'file' | 'directory';
|
|
21
|
+
size: number;
|
|
22
|
+
mtime: number;
|
|
23
|
+
}>;
|
|
24
|
+
mkdir(path: string, options?: {
|
|
25
|
+
recursive?: boolean;
|
|
26
|
+
}): Promise<void>;
|
|
27
|
+
rm(path: string, options?: {
|
|
28
|
+
recursive?: boolean;
|
|
29
|
+
}): Promise<void>;
|
|
30
|
+
exists(path: string): Promise<boolean>;
|
|
31
|
+
rename(oldPath: string, newPath: string): Promise<void>;
|
|
32
|
+
cp(src: string, dest: string): Promise<void>;
|
|
33
|
+
writeFiles(files: Array<{
|
|
34
|
+
path: string;
|
|
35
|
+
content: string | Uint8Array;
|
|
36
|
+
}>): Promise<void>;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=SandboxFs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SandboxFs.d.ts","sourceRoot":"","sources":["../../src/sandbox/SandboxFs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D;;;GAGG;AACH,qBAAa,aAAc,YAAW,UAAU;IAE5C,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;gBADN,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,MAAM;IAG9B,OAAO,CAAC,WAAW;IAInB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IASrD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;KAAE,CAAC,CAAC;IAKnF,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAMxF,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAclE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKtC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAK9F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EACV,cAAc,EACd,UAAU,EACV,aAAa,EACb,eAAe,EACf,SAAS,GACV,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Command } from '../commands/types.js';
|
|
2
|
+
import { Kernel } from '../kernel/index.js';
|
|
3
|
+
import { Shell } from '../shell/Shell.js';
|
|
4
|
+
export interface SandboxOptions {
|
|
5
|
+
/** Enable IndexedDB persistence (default: false) */
|
|
6
|
+
persist?: boolean;
|
|
7
|
+
/** Extra environment variables (merged with defaults) */
|
|
8
|
+
env?: Record<string, string>;
|
|
9
|
+
/** Initial working directory (default: /home/user) */
|
|
10
|
+
cwd?: string;
|
|
11
|
+
/** Pre-populate files: path → content */
|
|
12
|
+
files?: Record<string, string | Uint8Array>;
|
|
13
|
+
/** Attach to a DOM element for visual mode (CSS selector or element) */
|
|
14
|
+
terminal?: string | HTMLElement;
|
|
15
|
+
}
|
|
16
|
+
export interface RunOptions {
|
|
17
|
+
/** Working directory for this command */
|
|
18
|
+
cwd?: string;
|
|
19
|
+
/** Extra environment variables for this command */
|
|
20
|
+
env?: Record<string, string>;
|
|
21
|
+
/** Abort signal to cancel the command */
|
|
22
|
+
signal?: AbortSignal;
|
|
23
|
+
/** Timeout in milliseconds */
|
|
24
|
+
timeout?: number;
|
|
25
|
+
/** Streaming stdout callback */
|
|
26
|
+
onStdout?: (data: string) => void;
|
|
27
|
+
/** Streaming stderr callback */
|
|
28
|
+
onStderr?: (data: string) => void;
|
|
29
|
+
/** Provide stdin content */
|
|
30
|
+
stdin?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface CommandResult {
|
|
33
|
+
stdout: string;
|
|
34
|
+
stderr: string;
|
|
35
|
+
exitCode: number;
|
|
36
|
+
}
|
|
37
|
+
export interface SandboxCommands {
|
|
38
|
+
run(cmd: string, options?: RunOptions): Promise<CommandResult>;
|
|
39
|
+
register(name: string, handler: Command): void;
|
|
40
|
+
}
|
|
41
|
+
export interface SandboxFs {
|
|
42
|
+
readFile(path: string): Promise<string>;
|
|
43
|
+
readFile(path: string, encoding: null): Promise<Uint8Array>;
|
|
44
|
+
writeFile(path: string, content: string | Uint8Array): Promise<void>;
|
|
45
|
+
readdir(path: string): Promise<Array<{
|
|
46
|
+
name: string;
|
|
47
|
+
type: 'file' | 'directory';
|
|
48
|
+
}>>;
|
|
49
|
+
stat(path: string): Promise<{
|
|
50
|
+
type: 'file' | 'directory';
|
|
51
|
+
size: number;
|
|
52
|
+
mtime: number;
|
|
53
|
+
}>;
|
|
54
|
+
mkdir(path: string, options?: {
|
|
55
|
+
recursive?: boolean;
|
|
56
|
+
}): Promise<void>;
|
|
57
|
+
rm(path: string, options?: {
|
|
58
|
+
recursive?: boolean;
|
|
59
|
+
}): Promise<void>;
|
|
60
|
+
exists(path: string): Promise<boolean>;
|
|
61
|
+
rename(oldPath: string, newPath: string): Promise<void>;
|
|
62
|
+
cp(src: string, dest: string): Promise<void>;
|
|
63
|
+
writeFiles(files: Array<{
|
|
64
|
+
path: string;
|
|
65
|
+
content: string | Uint8Array;
|
|
66
|
+
}>): Promise<void>;
|
|
67
|
+
}
|
|
68
|
+
export interface SandboxInternals {
|
|
69
|
+
kernel: Kernel;
|
|
70
|
+
shell: Shell;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sandbox/types.ts"],"names":[],"mappings":"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"}
|