@vrowser/node-polyfill 0.0.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/LICENSE +20 -0
- package/README.md +121 -0
- package/dist/crypto.d.ts +48 -0
- package/dist/crypto.d.ts.map +1 -0
- package/dist/crypto.js +232 -0
- package/dist/crypto.js.map +1 -0
- package/dist/dns.d.ts +74 -0
- package/dist/dns.d.ts.map +1 -0
- package/dist/dns.js +172 -0
- package/dist/dns.js.map +1 -0
- package/dist/dns_promises.d.ts +2 -0
- package/dist/dns_promises.js +3 -0
- package/dist/events.d.ts +99 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +480 -0
- package/dist/events.js.map +1 -0
- package/dist/module.d.ts +40 -0
- package/dist/module.d.ts.map +1 -0
- package/dist/module.js +72 -0
- package/dist/module.js.map +1 -0
- package/dist/net.d.ts +38 -0
- package/dist/net.d.ts.map +1 -0
- package/dist/net.js +53 -0
- package/dist/net.js.map +1 -0
- package/dist/os.d.ts +96 -0
- package/dist/os.d.ts.map +1 -0
- package/dist/os.js +140 -0
- package/dist/os.js.map +1 -0
- package/dist/perf_hooks.d.ts +124 -0
- package/dist/perf_hooks.d.ts.map +1 -0
- package/dist/perf_hooks.js +105 -0
- package/dist/perf_hooks.js.map +1 -0
- package/dist/process.d.ts +147 -0
- package/dist/process.d.ts.map +1 -0
- package/dist/process.js +209 -0
- package/dist/process.js.map +1 -0
- package/dist/readline.d.ts +93 -0
- package/dist/readline.d.ts.map +1 -0
- package/dist/readline.js +268 -0
- package/dist/readline.js.map +1 -0
- package/dist/timers.d.ts +36 -0
- package/dist/timers.d.ts.map +1 -0
- package/dist/timers.js +54 -0
- package/dist/timers.js.map +1 -0
- package/dist/timers_promises.d.ts +22 -0
- package/dist/timers_promises.d.ts.map +1 -0
- package/dist/timers_promises.js +102 -0
- package/dist/timers_promises.js.map +1 -0
- package/dist/tty.d.ts +48 -0
- package/dist/tty.d.ts.map +1 -0
- package/dist/tty.js +67 -0
- package/dist/tty.js.map +1 -0
- package/dist/url.d.ts +39 -0
- package/dist/url.d.ts.map +1 -0
- package/dist/url.js +41 -0
- package/dist/url.js.map +1 -0
- package/dist/util.d.ts +66 -0
- package/dist/util.d.ts.map +1 -0
- package/dist/util.js +117 -0
- package/dist/util.js.map +1 -0
- package/package.json +125 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
//#region src/process.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* `node:process` compatible entry point
|
|
4
|
+
*
|
|
5
|
+
* Based on rollup-plugin-polyfill-node process-es6.js polyfill, enhanced
|
|
6
|
+
* with Node.js APIs. Browser-implementable APIs use real browser APIs
|
|
7
|
+
* where possible. Node.js-specific APIs are provided as stubs.
|
|
8
|
+
*
|
|
9
|
+
* @module process
|
|
10
|
+
*/
|
|
11
|
+
declare function nextTick(fn: Function, ...args: unknown[]): void;
|
|
12
|
+
declare function cwd(): string;
|
|
13
|
+
declare function chdir(directory: string): void;
|
|
14
|
+
declare function umask(_mask?: number): number;
|
|
15
|
+
declare function binding(_name: string): never;
|
|
16
|
+
declare function hrtime(time?: [number, number]): [number, number];
|
|
17
|
+
declare namespace hrtime {
|
|
18
|
+
var bigint: () => bigint;
|
|
19
|
+
}
|
|
20
|
+
declare function uptime(): number;
|
|
21
|
+
declare const stdout: {
|
|
22
|
+
isTTY: boolean;
|
|
23
|
+
rows: number;
|
|
24
|
+
columns: number;
|
|
25
|
+
write: (..._args: unknown[]) => void;
|
|
26
|
+
on: (..._args: unknown[]) => void;
|
|
27
|
+
once: (..._args: unknown[]) => void;
|
|
28
|
+
off: (..._args: unknown[]) => void;
|
|
29
|
+
end: (..._args: unknown[]) => void;
|
|
30
|
+
};
|
|
31
|
+
declare const stderr: {
|
|
32
|
+
isTTY: boolean;
|
|
33
|
+
rows: number;
|
|
34
|
+
columns: number;
|
|
35
|
+
write: (..._args: unknown[]) => void;
|
|
36
|
+
on: (..._args: unknown[]) => void;
|
|
37
|
+
once: (..._args: unknown[]) => void;
|
|
38
|
+
off: (..._args: unknown[]) => void;
|
|
39
|
+
end: (..._args: unknown[]) => void;
|
|
40
|
+
};
|
|
41
|
+
declare const stdin: {
|
|
42
|
+
isTTY: boolean;
|
|
43
|
+
on: (..._args: unknown[]) => void;
|
|
44
|
+
once: (..._args: unknown[]) => void;
|
|
45
|
+
off: (..._args: unknown[]) => void;
|
|
46
|
+
resume: (..._args: unknown[]) => void;
|
|
47
|
+
pause: (..._args: unknown[]) => void;
|
|
48
|
+
};
|
|
49
|
+
declare function memoryUsage(): {
|
|
50
|
+
rss: number;
|
|
51
|
+
heapTotal: number;
|
|
52
|
+
heapUsed: number;
|
|
53
|
+
external: number;
|
|
54
|
+
arrayBuffers: number;
|
|
55
|
+
};
|
|
56
|
+
declare namespace memoryUsage {
|
|
57
|
+
var rss: () => number;
|
|
58
|
+
}
|
|
59
|
+
declare function cpuUsage(): {
|
|
60
|
+
user: number;
|
|
61
|
+
system: number;
|
|
62
|
+
};
|
|
63
|
+
declare function resourceUsage(): Record<string, number>;
|
|
64
|
+
declare function emitWarning(message: string, _type?: string): void;
|
|
65
|
+
declare const process: {
|
|
66
|
+
title: string;
|
|
67
|
+
browser: boolean;
|
|
68
|
+
platform: string;
|
|
69
|
+
env: Record<string, string | undefined>;
|
|
70
|
+
argv: string[];
|
|
71
|
+
version: string;
|
|
72
|
+
versions: Record<string, string>;
|
|
73
|
+
release: Record<string, string>;
|
|
74
|
+
config: Record<string, unknown>;
|
|
75
|
+
nextTick: typeof nextTick;
|
|
76
|
+
cwd: typeof cwd;
|
|
77
|
+
chdir: typeof chdir;
|
|
78
|
+
umask: typeof umask;
|
|
79
|
+
binding: typeof binding;
|
|
80
|
+
hrtime: typeof hrtime;
|
|
81
|
+
uptime: typeof uptime;
|
|
82
|
+
on: (..._args: unknown[]) => void;
|
|
83
|
+
once: (..._args: unknown[]) => void;
|
|
84
|
+
off: (..._args: unknown[]) => void;
|
|
85
|
+
emit: (..._args: unknown[]) => void;
|
|
86
|
+
addListener: (..._args: unknown[]) => void;
|
|
87
|
+
removeListener: (..._args: unknown[]) => void;
|
|
88
|
+
removeAllListeners: (..._args: unknown[]) => void;
|
|
89
|
+
prependListener: (..._args: unknown[]) => void;
|
|
90
|
+
prependOnceListener: (..._args: unknown[]) => void;
|
|
91
|
+
listeners: () => never[];
|
|
92
|
+
listenerCount: () => number;
|
|
93
|
+
pid: number;
|
|
94
|
+
ppid: number;
|
|
95
|
+
exitCode: number | undefined;
|
|
96
|
+
argv0: string;
|
|
97
|
+
execPath: string;
|
|
98
|
+
execArgv: string[];
|
|
99
|
+
arch: string;
|
|
100
|
+
stdout: {
|
|
101
|
+
isTTY: boolean;
|
|
102
|
+
rows: number;
|
|
103
|
+
columns: number;
|
|
104
|
+
write: (..._args: unknown[]) => void;
|
|
105
|
+
on: (..._args: unknown[]) => void;
|
|
106
|
+
once: (..._args: unknown[]) => void;
|
|
107
|
+
off: (..._args: unknown[]) => void;
|
|
108
|
+
end: (..._args: unknown[]) => void;
|
|
109
|
+
};
|
|
110
|
+
stderr: {
|
|
111
|
+
isTTY: boolean;
|
|
112
|
+
rows: number;
|
|
113
|
+
columns: number;
|
|
114
|
+
write: (..._args: unknown[]) => void;
|
|
115
|
+
on: (..._args: unknown[]) => void;
|
|
116
|
+
once: (..._args: unknown[]) => void;
|
|
117
|
+
off: (..._args: unknown[]) => void;
|
|
118
|
+
end: (..._args: unknown[]) => void;
|
|
119
|
+
};
|
|
120
|
+
stdin: {
|
|
121
|
+
isTTY: boolean;
|
|
122
|
+
on: (..._args: unknown[]) => void;
|
|
123
|
+
once: (..._args: unknown[]) => void;
|
|
124
|
+
off: (..._args: unknown[]) => void;
|
|
125
|
+
resume: (..._args: unknown[]) => void;
|
|
126
|
+
pause: (..._args: unknown[]) => void;
|
|
127
|
+
};
|
|
128
|
+
exit: (..._args: unknown[]) => void;
|
|
129
|
+
kill: (..._args: unknown[]) => void;
|
|
130
|
+
abort: (..._args: unknown[]) => void;
|
|
131
|
+
memoryUsage: typeof memoryUsage;
|
|
132
|
+
cpuUsage: typeof cpuUsage;
|
|
133
|
+
resourceUsage: typeof resourceUsage;
|
|
134
|
+
emitWarning: typeof emitWarning;
|
|
135
|
+
getuid: () => number;
|
|
136
|
+
getgid: () => number;
|
|
137
|
+
getgroups: () => number[];
|
|
138
|
+
debugPort: number;
|
|
139
|
+
allowedNodeEnvironmentFlags: Set<string>;
|
|
140
|
+
features: Record<string, boolean>;
|
|
141
|
+
noDeprecation: boolean;
|
|
142
|
+
throwDeprecation: boolean;
|
|
143
|
+
traceDeprecation: boolean;
|
|
144
|
+
};
|
|
145
|
+
//#endregion
|
|
146
|
+
export { binding, chdir, cpuUsage, cwd, process as default, emitWarning, hrtime, memoryUsage, nextTick, resourceUsage, stderr, stdin, stdout, umask, uptime };
|
|
147
|
+
//# sourceMappingURL=process.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.d.ts","names":[],"sources":["../src/process.ts"],"sourcesContent":[],"mappings":";;;AAsC8B;AAOlB;AAIE;AAeA;AAIE;AAID;AAAA;AAmBA,iBArDN,QAAA,CAkER,EAAA,EAlEqB,QAkErB,EAAA,GAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA;AAAA,iBA3DQ,GAAA,CAAA,CAsER,EAAA,MAAA;AAAA,iBAlEQ,KAAA,CA2ER,SAAA,EAAA,MAAA,CAAA,EAAA,IAAA;AAAA,iBA5DQ,KAAA,CA8DW,KAAA,CAAA,EAAA,MAAA,CAAA,EAAA,MAAA;AAAA,iBA1DX,OAAA,CA0DW,KAAA,EAAA,MAAA,CAAA,EAAA,KAAA;AAAA,iBAtDX,MAAA,CAgFQ,IAAA,CAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,CAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA;AAAA,kBAhFR,MAAA,CAoFa;EAqBb,IAAA,MAAA,EAAA,GAAW,GAAA,MAAA;AAAA;iBAtFX,MAAA,CAAA,CAiGI,EAAA,MAAA;cA7FP,MAgGY,EAAA;EACD,KAAA,EAAA,OAAA;EACD,IAAA,EAAA,MAAA;;;;;;;;cAvFV;;;;;EAkIY,EAAA,EAAA,CAAA,GAAA,KAAA,EAAA,OAAA,EAAA,EAAA,GAAA,IAAA;EAAM,IAAA,EAAA,CAAA,GAAA,KAAA,EAAA,OAAA,EAAA,EAAA,GAAA,IAAA;;;;cAvHlB;;;;;;;;iBASG,WAAA,CAAA;;;;;;;kBAAA,WAAA;;;iBA0BA,QAAA,CAAA;;;;iBAIA,aAAA,CAAA,GAAiB;iBAqBjB,WAAA;cAMH;;;;OAKO;;;YAGK;WACD;UACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2CE"}
|
package/dist/process.js
ADDED
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
//#region src/process.ts
|
|
2
|
+
/**
|
|
3
|
+
* `node:process` compatible entry point
|
|
4
|
+
*
|
|
5
|
+
* Based on rollup-plugin-polyfill-node process-es6.js polyfill, enhanced
|
|
6
|
+
* with Node.js APIs. Browser-implementable APIs use real browser APIs
|
|
7
|
+
* where possible. Node.js-specific APIs are provided as stubs.
|
|
8
|
+
*
|
|
9
|
+
* @module process
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Forked from:
|
|
13
|
+
* - rollup-plugin-polyfill-node (https://github.com/nicolo-ribaudo/rollup-plugin-polyfill-node)
|
|
14
|
+
* - node:process (https://github.com/nodejs/node)
|
|
15
|
+
* @author kazuya kawaguchi (a.k.a. kazupon)
|
|
16
|
+
* @license MIT
|
|
17
|
+
*/
|
|
18
|
+
const _noop = (..._args) => {};
|
|
19
|
+
const _startTime = Date.now();
|
|
20
|
+
const _queue = [];
|
|
21
|
+
let _draining = false;
|
|
22
|
+
function _drainQueue() {
|
|
23
|
+
if (_draining) return;
|
|
24
|
+
_draining = true;
|
|
25
|
+
let item = _queue.shift();
|
|
26
|
+
while (item) {
|
|
27
|
+
item.fn(...item.args);
|
|
28
|
+
item = _queue.shift();
|
|
29
|
+
}
|
|
30
|
+
_draining = false;
|
|
31
|
+
}
|
|
32
|
+
function nextTick(fn, ...args) {
|
|
33
|
+
_queue.push({
|
|
34
|
+
fn,
|
|
35
|
+
args
|
|
36
|
+
});
|
|
37
|
+
queueMicrotask(_drainQueue);
|
|
38
|
+
}
|
|
39
|
+
let _cwd = "/";
|
|
40
|
+
function cwd() {
|
|
41
|
+
return _cwd;
|
|
42
|
+
}
|
|
43
|
+
function chdir(directory) {
|
|
44
|
+
if (typeof directory !== "string") throw new TypeError(`The "directory" argument must be of type string. Received type ${typeof directory}`);
|
|
45
|
+
if (directory.startsWith("/")) _cwd = directory;
|
|
46
|
+
else _cwd = _cwd === "/" ? `/${directory}` : `${_cwd}/${directory}`;
|
|
47
|
+
_cwd = _cwd.replace(/\/+/g, "/").replace(/\/$/, "") || "/";
|
|
48
|
+
}
|
|
49
|
+
function umask(_mask) {
|
|
50
|
+
return 0;
|
|
51
|
+
}
|
|
52
|
+
function binding(_name) {
|
|
53
|
+
throw new Error("process.binding is not supported in browser");
|
|
54
|
+
}
|
|
55
|
+
function hrtime(time) {
|
|
56
|
+
const now = performance.now() * .001;
|
|
57
|
+
let s = Math.floor(now);
|
|
58
|
+
let ns = Math.round(now % 1 * 1e9);
|
|
59
|
+
if (time) {
|
|
60
|
+
s -= time[0];
|
|
61
|
+
ns -= time[1];
|
|
62
|
+
if (ns < 0) {
|
|
63
|
+
s--;
|
|
64
|
+
ns += 1e9;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return [s, ns];
|
|
68
|
+
}
|
|
69
|
+
hrtime.bigint = () => {
|
|
70
|
+
return BigInt(Math.round(performance.now() * 1e6));
|
|
71
|
+
};
|
|
72
|
+
function uptime() {
|
|
73
|
+
return (Date.now() - _startTime) / 1e3;
|
|
74
|
+
}
|
|
75
|
+
const stdout = {
|
|
76
|
+
isTTY: false,
|
|
77
|
+
rows: 0,
|
|
78
|
+
columns: 0,
|
|
79
|
+
write: _noop,
|
|
80
|
+
on: _noop,
|
|
81
|
+
once: _noop,
|
|
82
|
+
off: _noop,
|
|
83
|
+
end: _noop
|
|
84
|
+
};
|
|
85
|
+
const stderr = {
|
|
86
|
+
isTTY: false,
|
|
87
|
+
rows: 0,
|
|
88
|
+
columns: 0,
|
|
89
|
+
write: _noop,
|
|
90
|
+
on: _noop,
|
|
91
|
+
once: _noop,
|
|
92
|
+
off: _noop,
|
|
93
|
+
end: _noop
|
|
94
|
+
};
|
|
95
|
+
const stdin = {
|
|
96
|
+
isTTY: false,
|
|
97
|
+
on: _noop,
|
|
98
|
+
once: _noop,
|
|
99
|
+
off: _noop,
|
|
100
|
+
resume: _noop,
|
|
101
|
+
pause: _noop
|
|
102
|
+
};
|
|
103
|
+
function memoryUsage() {
|
|
104
|
+
const mem = performance.memory;
|
|
105
|
+
if (mem) return {
|
|
106
|
+
rss: mem.usedJSHeapSize,
|
|
107
|
+
heapTotal: mem.totalJSHeapSize,
|
|
108
|
+
heapUsed: mem.usedJSHeapSize,
|
|
109
|
+
external: 0,
|
|
110
|
+
arrayBuffers: 0
|
|
111
|
+
};
|
|
112
|
+
return {
|
|
113
|
+
rss: 0,
|
|
114
|
+
heapTotal: 0,
|
|
115
|
+
heapUsed: 0,
|
|
116
|
+
external: 0,
|
|
117
|
+
arrayBuffers: 0
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
memoryUsage.rss = () => 0;
|
|
121
|
+
function cpuUsage() {
|
|
122
|
+
return {
|
|
123
|
+
user: 0,
|
|
124
|
+
system: 0
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
function resourceUsage() {
|
|
128
|
+
return {
|
|
129
|
+
userCPUTime: 0,
|
|
130
|
+
systemCPUTime: 0,
|
|
131
|
+
maxRSS: 0,
|
|
132
|
+
sharedMemorySize: 0,
|
|
133
|
+
unsharedDataSize: 0,
|
|
134
|
+
unsharedStackSize: 0,
|
|
135
|
+
minorPageFault: 0,
|
|
136
|
+
majorPageFault: 0,
|
|
137
|
+
swappedOut: 0,
|
|
138
|
+
fsRead: 0,
|
|
139
|
+
fsWrite: 0,
|
|
140
|
+
ipcSent: 0,
|
|
141
|
+
ipcReceived: 0,
|
|
142
|
+
signalsCount: 0,
|
|
143
|
+
voluntaryContextSwitches: 0,
|
|
144
|
+
involuntaryContextSwitches: 0
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
function emitWarning(message, _type) {
|
|
148
|
+
if (typeof console !== "undefined" && console.warn) console.warn(message);
|
|
149
|
+
}
|
|
150
|
+
const process = {
|
|
151
|
+
title: "browser",
|
|
152
|
+
browser: true,
|
|
153
|
+
platform: "browser",
|
|
154
|
+
env: {},
|
|
155
|
+
argv: [],
|
|
156
|
+
version: "",
|
|
157
|
+
versions: {},
|
|
158
|
+
release: {},
|
|
159
|
+
config: {},
|
|
160
|
+
nextTick,
|
|
161
|
+
cwd,
|
|
162
|
+
chdir,
|
|
163
|
+
umask,
|
|
164
|
+
binding,
|
|
165
|
+
hrtime,
|
|
166
|
+
uptime,
|
|
167
|
+
on: _noop,
|
|
168
|
+
once: _noop,
|
|
169
|
+
off: _noop,
|
|
170
|
+
emit: _noop,
|
|
171
|
+
addListener: _noop,
|
|
172
|
+
removeListener: _noop,
|
|
173
|
+
removeAllListeners: _noop,
|
|
174
|
+
prependListener: _noop,
|
|
175
|
+
prependOnceListener: _noop,
|
|
176
|
+
listeners: () => [],
|
|
177
|
+
listenerCount: () => 0,
|
|
178
|
+
pid: 0,
|
|
179
|
+
ppid: 0,
|
|
180
|
+
exitCode: void 0,
|
|
181
|
+
argv0: "",
|
|
182
|
+
execPath: "",
|
|
183
|
+
execArgv: [],
|
|
184
|
+
arch: "javascript",
|
|
185
|
+
stdout,
|
|
186
|
+
stderr,
|
|
187
|
+
stdin,
|
|
188
|
+
exit: _noop,
|
|
189
|
+
kill: _noop,
|
|
190
|
+
abort: _noop,
|
|
191
|
+
memoryUsage,
|
|
192
|
+
cpuUsage,
|
|
193
|
+
resourceUsage,
|
|
194
|
+
emitWarning,
|
|
195
|
+
getuid: () => -1,
|
|
196
|
+
getgid: () => -1,
|
|
197
|
+
getgroups: () => [],
|
|
198
|
+
debugPort: 9229,
|
|
199
|
+
allowedNodeEnvironmentFlags: /* @__PURE__ */ new Set(),
|
|
200
|
+
features: {},
|
|
201
|
+
noDeprecation: false,
|
|
202
|
+
throwDeprecation: false,
|
|
203
|
+
traceDeprecation: false
|
|
204
|
+
};
|
|
205
|
+
var process_default = process;
|
|
206
|
+
|
|
207
|
+
//#endregion
|
|
208
|
+
export { binding, chdir, cpuUsage, cwd, process_default as default, emitWarning, hrtime, memoryUsage, nextTick, resourceUsage, stderr, stdin, stdout, umask, uptime };
|
|
209
|
+
//# sourceMappingURL=process.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.js","names":["_queue: Array<{ fn: Function; args: unknown[] }>"],"sources":["../src/process.ts"],"sourcesContent":["/**\n * `node:process` compatible entry point\n *\n * Based on rollup-plugin-polyfill-node process-es6.js polyfill, enhanced\n * with Node.js APIs. Browser-implementable APIs use real browser APIs\n * where possible. Node.js-specific APIs are provided as stubs.\n *\n * @module process\n */\n\n/**\n * Forked from:\n * - rollup-plugin-polyfill-node (https://github.com/nicolo-ribaudo/rollup-plugin-polyfill-node)\n * - node:process (https://github.com/nodejs/node)\n * @author kazuya kawaguchi (a.k.a. kazupon)\n * @license MIT\n */\n\nconst _noop = (..._args: unknown[]): void => {}\nconst _startTime = Date.now()\n\nconst _queue: Array<{ fn: Function; args: unknown[] }> = []\nlet _draining = false\n\nfunction _drainQueue(): void {\n if (_draining) {\n return\n }\n _draining = true\n let item = _queue.shift()\n while (item) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call -- ignore for polyfill\n item.fn(...item.args)\n item = _queue.shift()\n }\n _draining = false\n}\n\nfunction nextTick(fn: Function, ...args: unknown[]): void {\n _queue.push({ fn, args })\n queueMicrotask(_drainQueue)\n}\n\nlet _cwd = '/'\n\nfunction cwd(): string {\n return _cwd\n}\n\nfunction chdir(directory: string): void {\n if (typeof directory !== 'string') {\n throw new TypeError(\n `The \"directory\" argument must be of type string. Received type ${typeof directory}`\n )\n }\n if (directory.startsWith('/')) {\n _cwd = directory\n } else {\n _cwd = _cwd === '/' ? `/${directory}` : `${_cwd}/${directory}`\n }\n // Normalize: remove trailing slash (except root), resolve . and ..\n _cwd = _cwd.replace(/\\/+/g, '/').replace(/\\/$/, '') || '/'\n}\n\nfunction umask(_mask?: number): number {\n return 0\n}\n\nfunction binding(_name: string): never {\n throw new Error('process.binding is not supported in browser')\n}\n\nfunction hrtime(time?: [number, number]): [number, number] {\n const now = performance.now() * 1e-3\n let s = Math.floor(now)\n let ns = Math.round((now % 1) * 1e9)\n if (time) {\n s -= time[0]\n ns -= time[1]\n if (ns < 0) {\n s--\n ns += 1e9\n }\n }\n return [s, ns]\n}\n\nhrtime.bigint = (): bigint => {\n return BigInt(Math.round(performance.now() * 1e6))\n}\n\nfunction uptime(): number {\n return (Date.now() - _startTime) / 1000\n}\n\nconst stdout = {\n isTTY: false,\n rows: 0,\n columns: 0,\n write: _noop,\n on: _noop,\n once: _noop,\n off: _noop,\n end: _noop\n}\n\nconst stderr = {\n isTTY: false,\n rows: 0,\n columns: 0,\n write: _noop,\n on: _noop,\n once: _noop,\n off: _noop,\n end: _noop\n}\n\nconst stdin = {\n isTTY: false,\n on: _noop,\n once: _noop,\n off: _noop,\n resume: _noop,\n pause: _noop\n}\n\nfunction memoryUsage(): {\n rss: number\n heapTotal: number\n heapUsed: number\n external: number\n arrayBuffers: number\n} {\n const mem = (\n performance as unknown as {\n memory?: { usedJSHeapSize: number; totalJSHeapSize: number; jsHeapSizeLimit: number }\n }\n ).memory\n if (mem) {\n return {\n rss: mem.usedJSHeapSize,\n heapTotal: mem.totalJSHeapSize,\n heapUsed: mem.usedJSHeapSize,\n external: 0,\n arrayBuffers: 0\n }\n }\n return { rss: 0, heapTotal: 0, heapUsed: 0, external: 0, arrayBuffers: 0 }\n}\n\nmemoryUsage.rss = (): number => 0\n\nfunction cpuUsage(): { user: number; system: number } {\n return { user: 0, system: 0 }\n}\n\nfunction resourceUsage(): Record<string, number> {\n return {\n userCPUTime: 0,\n systemCPUTime: 0,\n maxRSS: 0,\n sharedMemorySize: 0,\n unsharedDataSize: 0,\n unsharedStackSize: 0,\n minorPageFault: 0,\n majorPageFault: 0,\n swappedOut: 0,\n fsRead: 0,\n fsWrite: 0,\n ipcSent: 0,\n ipcReceived: 0,\n signalsCount: 0,\n voluntaryContextSwitches: 0,\n involuntaryContextSwitches: 0\n }\n}\n\nfunction emitWarning(message: string, _type?: string): void {\n if (typeof console !== 'undefined' && console.warn) {\n console.warn(message)\n }\n}\n\nconst process = {\n // rollup polyfill base\n title: 'browser',\n browser: true,\n platform: 'browser',\n env: {} as Record<string, string | undefined>,\n argv: [] as string[],\n version: '',\n versions: {} as Record<string, string>,\n release: {} as Record<string, string>,\n config: {} as Record<string, unknown>,\n nextTick,\n cwd,\n chdir,\n umask,\n binding,\n hrtime,\n uptime,\n on: _noop,\n once: _noop,\n off: _noop,\n emit: _noop,\n addListener: _noop,\n removeListener: _noop,\n removeAllListeners: _noop,\n prependListener: _noop,\n prependOnceListener: _noop,\n listeners: () => [],\n listenerCount: () => 0,\n\n // Node.js additions\n pid: 0,\n ppid: 0,\n exitCode: undefined as number | undefined,\n argv0: '',\n execPath: '',\n execArgv: [] as string[],\n arch: 'javascript',\n stdout,\n stderr,\n stdin,\n exit: _noop,\n kill: _noop,\n abort: _noop,\n memoryUsage,\n cpuUsage,\n resourceUsage,\n emitWarning,\n getuid: () => -1,\n getgid: () => -1,\n getgroups: () => [] as number[],\n debugPort: 9229,\n allowedNodeEnvironmentFlags: new Set<string>(),\n features: {} as Record<string, boolean>,\n noDeprecation: false,\n throwDeprecation: false,\n traceDeprecation: false\n}\n\nexport default process\nexport {\n binding,\n chdir,\n cpuUsage,\n cwd,\n emitWarning,\n hrtime,\n memoryUsage,\n nextTick,\n resourceUsage,\n stderr,\n stdin,\n stdout,\n umask,\n uptime\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { EventEmitter } from "./events.js";
|
|
2
|
+
|
|
3
|
+
//#region src/readline.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Forked from:
|
|
6
|
+
* - node:readline (https://github.com/nodejs/node)
|
|
7
|
+
* - node:internal/readline/callbacks.js
|
|
8
|
+
* - node:internal/readline/utils.js
|
|
9
|
+
* @author kazuya kawaguchi (a.k.a. kazupon)
|
|
10
|
+
* @license MIT
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
type WritableStream = {
|
|
14
|
+
write: (data: string, cb?: () => void) => boolean;
|
|
15
|
+
};
|
|
16
|
+
declare function clearLine(stream: WritableStream | null | undefined, dir: number, cb?: () => void): boolean;
|
|
17
|
+
declare function clearScreenDown(stream: WritableStream | null | undefined, cb?: () => void): boolean;
|
|
18
|
+
declare function cursorTo(stream: WritableStream | null | undefined, x: number, y?: number | (() => void), cb?: () => void): boolean;
|
|
19
|
+
declare function moveCursor(stream: WritableStream | null | undefined, dx: number, dy: number, cb?: () => void): boolean;
|
|
20
|
+
declare function emitKeypressEvents(_stream: unknown, _iface?: unknown): void;
|
|
21
|
+
interface InterfaceOptions {
|
|
22
|
+
input?: unknown;
|
|
23
|
+
output?: WritableStream | null;
|
|
24
|
+
completer?: Function;
|
|
25
|
+
terminal?: boolean;
|
|
26
|
+
history?: string[];
|
|
27
|
+
historySize?: number;
|
|
28
|
+
prompt?: string;
|
|
29
|
+
crlfDelay?: number;
|
|
30
|
+
escapeCodeTimeout?: number;
|
|
31
|
+
tabSize?: number;
|
|
32
|
+
signal?: AbortSignal;
|
|
33
|
+
}
|
|
34
|
+
declare class Interface extends EventEmitter {
|
|
35
|
+
#private;
|
|
36
|
+
terminal: boolean;
|
|
37
|
+
input: unknown;
|
|
38
|
+
output: WritableStream | null;
|
|
39
|
+
constructor(inputOrOptions?: InterfaceOptions, output?: WritableStream | null);
|
|
40
|
+
get line(): string;
|
|
41
|
+
get cursor(): number;
|
|
42
|
+
get closed(): boolean;
|
|
43
|
+
setPrompt(prompt: string): void;
|
|
44
|
+
getPrompt(): string;
|
|
45
|
+
prompt(_preserveCursor?: boolean): void;
|
|
46
|
+
question(query: string, optionsOrCb?: {
|
|
47
|
+
signal?: AbortSignal;
|
|
48
|
+
} | Function, cb?: Function): void;
|
|
49
|
+
write(data: string | null, _key?: {
|
|
50
|
+
ctrl?: boolean;
|
|
51
|
+
meta?: boolean;
|
|
52
|
+
shift?: boolean;
|
|
53
|
+
name?: string;
|
|
54
|
+
}): void;
|
|
55
|
+
pause(): this;
|
|
56
|
+
resume(): this;
|
|
57
|
+
close(): void;
|
|
58
|
+
[Symbol.asyncIterator](): AsyncIterableIterator<string>;
|
|
59
|
+
}
|
|
60
|
+
declare function createInterface(inputOrOptions?: InterfaceOptions, output?: WritableStream | null): Interface;
|
|
61
|
+
declare class PromiseInterface extends Interface {
|
|
62
|
+
question(query: string, options?: {
|
|
63
|
+
signal?: AbortSignal;
|
|
64
|
+
}): Promise<string>;
|
|
65
|
+
}
|
|
66
|
+
declare class Readline {
|
|
67
|
+
#private;
|
|
68
|
+
constructor(stream: WritableStream);
|
|
69
|
+
cursorTo(x: number, y?: number): this;
|
|
70
|
+
moveCursor(dx: number, dy: number): this;
|
|
71
|
+
clearLine(dir: number): this;
|
|
72
|
+
clearScreenDown(): this;
|
|
73
|
+
commit(): Promise<void>;
|
|
74
|
+
rollback(): this;
|
|
75
|
+
}
|
|
76
|
+
declare const readline: {
|
|
77
|
+
clearLine: typeof clearLine;
|
|
78
|
+
clearScreenDown: typeof clearScreenDown;
|
|
79
|
+
cursorTo: typeof cursorTo;
|
|
80
|
+
moveCursor: typeof moveCursor;
|
|
81
|
+
emitKeypressEvents: typeof emitKeypressEvents;
|
|
82
|
+
Interface: typeof Interface;
|
|
83
|
+
createInterface: typeof createInterface;
|
|
84
|
+
promises: unknown;
|
|
85
|
+
};
|
|
86
|
+
declare const promises: {
|
|
87
|
+
createInterface(inputOrOptions?: InterfaceOptions, output?: WritableStream | null): PromiseInterface;
|
|
88
|
+
Readline: typeof Readline;
|
|
89
|
+
Interface: typeof PromiseInterface;
|
|
90
|
+
};
|
|
91
|
+
//#endregion
|
|
92
|
+
export { Interface, clearLine, clearScreenDown, createInterface, cursorTo, readline as default, emitKeypressEvents, moveCursor, promises };
|
|
93
|
+
//# sourceMappingURL=readline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readline.d.ts","names":[],"sources":["../src/readline.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;KAqBK,cAAA,GAsFM;EACG,KAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,EAAA,GAAA,GAAA,IAAA,EAAA,GAAA,OAAA;CAQH;AAAW,iBAvFN,SAAA,CAuFM,MAAA,EAtFZ,cAsFY,GAAA,IAAA,GAAA,SAAA,EAAA,GAAA,EAAA,MAAA,EAAA,EAAA,CAAA,EAAA,GAAA,GAAA,IAAA,CAAA,EAAA,OAAA;AAGT,iBA3EG,eAAA,CA2EO,MAAA,EA1Eb,cA0Ea,GAAA,IAAA,GAAA,SAAA,EAAA,EAAA,CAAA,EAAA,GAAA,GAAA,IAAA,CAAA,EAAA,OAAA;AAGb,iBAjEM,QAAA,CAiEN,MAAA,EAhEA,cAgEA,GAAA,IAAA,GAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA,EAAA,MAAA,GAAA,CAAA,GAAA,GAAA,IAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,GAAA,IAAA,CAAA,EAAA,OAAA;AAMqB,iBAnDf,UAAA,CAmDe,MAAA,EAlDrB,cAkDqB,GAAA,IAAA,GAAA,SAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,EAAA,GAAA,GAAA,IAAA,CAAA,EAAA,OAAA;AAA2B,iBAzB1C,kBAAA,CAyB0C,OAAA,EAAA,OAAA,EAAA,MAAA,CAAA,EAAA,OAAA,CAAA,EAAA,IAAA;UAvBhD,gBAAA,CAsEyC;EAAgB,KAAA,CAAA,EAAA,OAAA;EAAe,MAAA,CAAA,EApEvE,cAoEuE,GAAA,IAAA;EAgEtD,SAAA,CAAA,EAnId,QAmIc;EAAzB,QAAO,CAAA,EAAA,OAAA;EAxHqB,OAAA,CAAA,EAAA,MAAA,EAAA;EAAY,WAAA,CAAA,EAAA,MAAA;EAmK3B,MAAA,CAAA,EAAA,MAAA;EACG,SAAA,CAAA,EAAA,MAAA;EACR,iBAAA,CAAA,EAAA,MAAA;EACR,OAAA,CAAA,EAAA,MAAA;EAAS,MAAA,CAAA,EAzKD,WAyKC;AAEX;AAI8C,cA5KlC,SAAA,SAAkB,YAAA,CA4KgB;EAAgB,CAAA,OAAA;EAFhC,QAAA,EAAA,OAAA;EAAS,KAAA,EAAA,OAAA;EA2BlC,MAAA,EAlMI,cAkMI,GAIQ,IAAA;EAoDhB,WASL,CAAA,cAAA,CAAA,EA7P8B,gBA6P9B,EAAA,MAAA,CAAA,EA7PyD,cA6PzD,GAAA,IAAA;;;;;;;qCAaA;aA3NkD;EAkNtC,CAAA,GAlNsD,QA2NlE,EAAA,EAAA,CAAA,EA3NiF,QA2NjF,CAAA,EAAA,IAAA;EAPoB,KAAA,CAAA,IAAA,EAAA,MAAA,GAAA,IAAA,EAAA,KAAA,EAAA;IACR,IAAA,CAAA,EAAA,OAAA;IACR,IAAA,CAAA,EAAA,OAAA;;;;;;;GAtJF,MAAA,CAAO,aAAA,KAAkB;;iBA2CZ,eAAA,kBACG,2BACR,wBACR;cAIG,gBAAA,SAAyB,SAAA;;aAEgB;MAAgB;;cAyBzD,QAAA;;sBAIgB;;;;;YAuCV;;;cAaN;;;;;;;;;;cAaO;mCAEQ,2BACR,wBACR"}
|