surrge 0.11.4 → 0.11.6
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/dashboard/index.d.ts.map +1 -1
- package/dist/index.js +25 -13
- package/dist/loader.js +25 -13
- package/dist/register.js +25 -13
- package/package.json +1 -1
- package/dist/scripts/postinstall.js +0 -38
- package/dist/src/cli.js +0 -53
- package/dist/src/hooks.js +0 -148
- package/dist/src/index.js +0 -26073
- package/dist/src/loader.js +0 -26194
- package/dist/src/register.js +0 -26068
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dashboard/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dashboard/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AA2C5B,KAAK,SAAS,GAAG;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,UAAU,MAAM,KACf,IAAI,CAAC;IAAE,SAAS,EAAE,SAAS,CAAA;CAAE,CA8c/B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -399,7 +399,7 @@ var require_sqlite_error = __commonJS((exports, module) => {
|
|
|
399
399
|
|
|
400
400
|
// node_modules/libsql/index.js
|
|
401
401
|
var require_libsql = __commonJS((exports, module) => {
|
|
402
|
-
var __dirname = "/
|
|
402
|
+
var __dirname = "/home/blakbelt78/Work/surrge/node_modules/libsql";
|
|
403
403
|
var { load, currentTarget } = require_dist();
|
|
404
404
|
var { familySync, GLIBC } = require_detect_libc();
|
|
405
405
|
function requireNative() {
|
|
@@ -14857,7 +14857,7 @@ var require_cjs5 = __commonJS((exports) => {
|
|
|
14857
14857
|
// package.json
|
|
14858
14858
|
var package_default = {
|
|
14859
14859
|
name: "surrge",
|
|
14860
|
-
version: "0.11.
|
|
14860
|
+
version: "0.11.6",
|
|
14861
14861
|
description: "One-line observability + analytics for Node.js/Bun",
|
|
14862
14862
|
type: "module",
|
|
14863
14863
|
exports: {
|
|
@@ -26134,9 +26134,18 @@ Please change the parent <Route path="\${E}"> to <Route path="\${E==="/"?"*":\`\
|
|
|
26134
26134
|
|
|
26135
26135
|
// src/dashboard/index.ts
|
|
26136
26136
|
var SESSION_MAX_AGE = 30 * 24 * 60 * 60;
|
|
26137
|
+
var decodeBase64URL = (str) => {
|
|
26138
|
+
const padding = "=".repeat((4 - str.length % 4) % 4);
|
|
26139
|
+
const base642 = str.replace(/-/g, "+").replace(/_/g, "/") + padding;
|
|
26140
|
+
return Buffer.from(base642, "base64").toString("utf-8");
|
|
26141
|
+
};
|
|
26137
26142
|
var origin = (c) => {
|
|
26143
|
+
const originHeader = c.req.header("Origin");
|
|
26144
|
+
if (originHeader)
|
|
26145
|
+
return originHeader;
|
|
26138
26146
|
const url = new URL(c.req.url);
|
|
26139
|
-
|
|
26147
|
+
const proto = c.req.header("X-Forwarded-Proto") || url.protocol.replace(":", "");
|
|
26148
|
+
return `${proto}://${url.host}`;
|
|
26140
26149
|
};
|
|
26141
26150
|
var hostname = (c) => {
|
|
26142
26151
|
const url = new URL(c.req.url);
|
|
@@ -26310,20 +26319,23 @@ var createDashboard = (basePath) => {
|
|
|
26310
26319
|
if (!user) {
|
|
26311
26320
|
return c.json({ error: "Unknown credential" }, 401);
|
|
26312
26321
|
}
|
|
26313
|
-
|
|
26314
|
-
|
|
26315
|
-
|
|
26316
|
-
|
|
26317
|
-
|
|
26318
|
-
|
|
26319
|
-
|
|
26320
|
-
}
|
|
26322
|
+
let expectedChallenge;
|
|
26323
|
+
if (cred.response?.clientDataJSON) {
|
|
26324
|
+
try {
|
|
26325
|
+
const clientDataStr = decodeBase64URL(cred.response.clientDataJSON);
|
|
26326
|
+
const clientData = JSON.parse(clientDataStr);
|
|
26327
|
+
expectedChallenge = clientData.challenge;
|
|
26328
|
+
} catch {}
|
|
26321
26329
|
}
|
|
26322
|
-
|
|
26330
|
+
const challenge2 = expectedChallenge && challenges.get(expectedChallenge);
|
|
26331
|
+
if (!challenge2) {
|
|
26323
26332
|
return c.json({ error: "Challenge expired" }, 400);
|
|
26324
26333
|
}
|
|
26334
|
+
if (expectedChallenge) {
|
|
26335
|
+
challenges.delete(expectedChallenge);
|
|
26336
|
+
}
|
|
26325
26337
|
try {
|
|
26326
|
-
const auth2 = await authenticate(user, credential, challenge2
|
|
26338
|
+
const auth2 = await authenticate(user, credential, challenge2, origin(c), hostname(c));
|
|
26327
26339
|
await touch(user.username, auth2.counter);
|
|
26328
26340
|
const token = create(user.username);
|
|
26329
26341
|
setCookie(c, "session", token, {
|
package/dist/loader.js
CHANGED
|
@@ -399,7 +399,7 @@ var require_sqlite_error = __commonJS((exports, module) => {
|
|
|
399
399
|
|
|
400
400
|
// node_modules/libsql/index.js
|
|
401
401
|
var require_libsql = __commonJS((exports, module) => {
|
|
402
|
-
var __dirname = "/
|
|
402
|
+
var __dirname = "/home/blakbelt78/Work/surrge/node_modules/libsql";
|
|
403
403
|
var { load, currentTarget } = require_dist();
|
|
404
404
|
var { familySync, GLIBC } = require_detect_libc();
|
|
405
405
|
function requireNative() {
|
|
@@ -14857,7 +14857,7 @@ var require_cjs5 = __commonJS((exports) => {
|
|
|
14857
14857
|
// package.json
|
|
14858
14858
|
var package_default = {
|
|
14859
14859
|
name: "surrge",
|
|
14860
|
-
version: "0.11.
|
|
14860
|
+
version: "0.11.6",
|
|
14861
14861
|
description: "One-line observability + analytics for Node.js/Bun",
|
|
14862
14862
|
type: "module",
|
|
14863
14863
|
exports: {
|
|
@@ -26134,9 +26134,18 @@ Please change the parent <Route path="\${E}"> to <Route path="\${E==="/"?"*":\`\
|
|
|
26134
26134
|
|
|
26135
26135
|
// src/dashboard/index.ts
|
|
26136
26136
|
var SESSION_MAX_AGE = 30 * 24 * 60 * 60;
|
|
26137
|
+
var decodeBase64URL = (str) => {
|
|
26138
|
+
const padding = "=".repeat((4 - str.length % 4) % 4);
|
|
26139
|
+
const base642 = str.replace(/-/g, "+").replace(/_/g, "/") + padding;
|
|
26140
|
+
return Buffer.from(base642, "base64").toString("utf-8");
|
|
26141
|
+
};
|
|
26137
26142
|
var origin = (c) => {
|
|
26143
|
+
const originHeader = c.req.header("Origin");
|
|
26144
|
+
if (originHeader)
|
|
26145
|
+
return originHeader;
|
|
26138
26146
|
const url = new URL(c.req.url);
|
|
26139
|
-
|
|
26147
|
+
const proto = c.req.header("X-Forwarded-Proto") || url.protocol.replace(":", "");
|
|
26148
|
+
return `${proto}://${url.host}`;
|
|
26140
26149
|
};
|
|
26141
26150
|
var hostname = (c) => {
|
|
26142
26151
|
const url = new URL(c.req.url);
|
|
@@ -26310,20 +26319,23 @@ var createDashboard = (basePath) => {
|
|
|
26310
26319
|
if (!user) {
|
|
26311
26320
|
return c.json({ error: "Unknown credential" }, 401);
|
|
26312
26321
|
}
|
|
26313
|
-
|
|
26314
|
-
|
|
26315
|
-
|
|
26316
|
-
|
|
26317
|
-
|
|
26318
|
-
|
|
26319
|
-
|
|
26320
|
-
}
|
|
26322
|
+
let expectedChallenge;
|
|
26323
|
+
if (cred.response?.clientDataJSON) {
|
|
26324
|
+
try {
|
|
26325
|
+
const clientDataStr = decodeBase64URL(cred.response.clientDataJSON);
|
|
26326
|
+
const clientData = JSON.parse(clientDataStr);
|
|
26327
|
+
expectedChallenge = clientData.challenge;
|
|
26328
|
+
} catch {}
|
|
26321
26329
|
}
|
|
26322
|
-
|
|
26330
|
+
const challenge2 = expectedChallenge && challenges.get(expectedChallenge);
|
|
26331
|
+
if (!challenge2) {
|
|
26323
26332
|
return c.json({ error: "Challenge expired" }, 400);
|
|
26324
26333
|
}
|
|
26334
|
+
if (expectedChallenge) {
|
|
26335
|
+
challenges.delete(expectedChallenge);
|
|
26336
|
+
}
|
|
26325
26337
|
try {
|
|
26326
|
-
const auth2 = await authenticate(user, credential, challenge2
|
|
26338
|
+
const auth2 = await authenticate(user, credential, challenge2, origin(c), hostname(c));
|
|
26327
26339
|
await touch(user.username, auth2.counter);
|
|
26328
26340
|
const token = create(user.username);
|
|
26329
26341
|
setCookie(c, "session", token, {
|
package/dist/register.js
CHANGED
|
@@ -399,7 +399,7 @@ var require_sqlite_error = __commonJS((exports, module) => {
|
|
|
399
399
|
|
|
400
400
|
// node_modules/libsql/index.js
|
|
401
401
|
var require_libsql = __commonJS((exports, module) => {
|
|
402
|
-
var __dirname = "/
|
|
402
|
+
var __dirname = "/home/blakbelt78/Work/surrge/node_modules/libsql";
|
|
403
403
|
var { load, currentTarget } = require_dist();
|
|
404
404
|
var { familySync, GLIBC } = require_detect_libc();
|
|
405
405
|
function requireNative() {
|
|
@@ -14857,7 +14857,7 @@ var require_cjs5 = __commonJS((exports) => {
|
|
|
14857
14857
|
// package.json
|
|
14858
14858
|
var package_default = {
|
|
14859
14859
|
name: "surrge",
|
|
14860
|
-
version: "0.11.
|
|
14860
|
+
version: "0.11.6",
|
|
14861
14861
|
description: "One-line observability + analytics for Node.js/Bun",
|
|
14862
14862
|
type: "module",
|
|
14863
14863
|
exports: {
|
|
@@ -26134,9 +26134,18 @@ Please change the parent <Route path="\${E}"> to <Route path="\${E==="/"?"*":\`\
|
|
|
26134
26134
|
|
|
26135
26135
|
// src/dashboard/index.ts
|
|
26136
26136
|
var SESSION_MAX_AGE = 30 * 24 * 60 * 60;
|
|
26137
|
+
var decodeBase64URL = (str) => {
|
|
26138
|
+
const padding = "=".repeat((4 - str.length % 4) % 4);
|
|
26139
|
+
const base642 = str.replace(/-/g, "+").replace(/_/g, "/") + padding;
|
|
26140
|
+
return Buffer.from(base642, "base64").toString("utf-8");
|
|
26141
|
+
};
|
|
26137
26142
|
var origin = (c) => {
|
|
26143
|
+
const originHeader = c.req.header("Origin");
|
|
26144
|
+
if (originHeader)
|
|
26145
|
+
return originHeader;
|
|
26138
26146
|
const url = new URL(c.req.url);
|
|
26139
|
-
|
|
26147
|
+
const proto = c.req.header("X-Forwarded-Proto") || url.protocol.replace(":", "");
|
|
26148
|
+
return `${proto}://${url.host}`;
|
|
26140
26149
|
};
|
|
26141
26150
|
var hostname = (c) => {
|
|
26142
26151
|
const url = new URL(c.req.url);
|
|
@@ -26310,20 +26319,23 @@ var createDashboard = (basePath) => {
|
|
|
26310
26319
|
if (!user) {
|
|
26311
26320
|
return c.json({ error: "Unknown credential" }, 401);
|
|
26312
26321
|
}
|
|
26313
|
-
|
|
26314
|
-
|
|
26315
|
-
|
|
26316
|
-
|
|
26317
|
-
|
|
26318
|
-
|
|
26319
|
-
|
|
26320
|
-
}
|
|
26322
|
+
let expectedChallenge;
|
|
26323
|
+
if (cred.response?.clientDataJSON) {
|
|
26324
|
+
try {
|
|
26325
|
+
const clientDataStr = decodeBase64URL(cred.response.clientDataJSON);
|
|
26326
|
+
const clientData = JSON.parse(clientDataStr);
|
|
26327
|
+
expectedChallenge = clientData.challenge;
|
|
26328
|
+
} catch {}
|
|
26321
26329
|
}
|
|
26322
|
-
|
|
26330
|
+
const challenge2 = expectedChallenge && challenges.get(expectedChallenge);
|
|
26331
|
+
if (!challenge2) {
|
|
26323
26332
|
return c.json({ error: "Challenge expired" }, 400);
|
|
26324
26333
|
}
|
|
26334
|
+
if (expectedChallenge) {
|
|
26335
|
+
challenges.delete(expectedChallenge);
|
|
26336
|
+
}
|
|
26325
26337
|
try {
|
|
26326
|
-
const auth2 = await authenticate(user, credential, challenge2
|
|
26338
|
+
const auth2 = await authenticate(user, credential, challenge2, origin(c), hostname(c));
|
|
26327
26339
|
await touch(user.username, auth2.counter);
|
|
26328
26340
|
const token = create(user.username);
|
|
26329
26341
|
setCookie(c, "session", token, {
|
package/package.json
CHANGED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
// scripts/postinstall.ts
|
|
2
|
-
import { scryptSync, randomBytes } from "node:crypto";
|
|
3
|
-
import { readFileSync, writeFileSync, existsSync } from "node:fs";
|
|
4
|
-
import { join } from "node:path";
|
|
5
|
-
var projectRoot = process.env.INIT_CWD;
|
|
6
|
-
if (!projectRoot) {
|
|
7
|
-
process.exit(0);
|
|
8
|
-
}
|
|
9
|
-
var pkgPath = join(projectRoot, "package.json");
|
|
10
|
-
if (!existsSync(pkgPath)) {
|
|
11
|
-
process.exit(0);
|
|
12
|
-
}
|
|
13
|
-
var pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
|
|
14
|
-
if (pkg.surrge?.setup) {
|
|
15
|
-
console.log("[surrge] Setup code already exists in package.json");
|
|
16
|
-
process.exit(0);
|
|
17
|
-
}
|
|
18
|
-
var code = String(Math.floor(1e5 + Math.random() * 900000));
|
|
19
|
-
var salt = randomBytes(16).toString("hex");
|
|
20
|
-
var hash = scryptSync(code, salt, 64).toString("hex");
|
|
21
|
-
var stored = `${salt}:${hash}`;
|
|
22
|
-
pkg.surrge = { ...pkg.surrge, setup: stored };
|
|
23
|
-
writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + `
|
|
24
|
-
`);
|
|
25
|
-
console.log(`
|
|
26
|
-
┌───────────────────────────────────────┐
|
|
27
|
-
│ SURRGE SETUP CODE │
|
|
28
|
-
├───────────────────────────────────────┤
|
|
29
|
-
│ │
|
|
30
|
-
│ ${code} │
|
|
31
|
-
│ │
|
|
32
|
-
│ Save this 6-digit code! │
|
|
33
|
-
│ You'll need it to create your │
|
|
34
|
-
│ admin account on first login. │
|
|
35
|
-
│ │
|
|
36
|
-
│ This code will not be shown again. │
|
|
37
|
-
└───────────────────────────────────────┘
|
|
38
|
-
`);
|
package/dist/src/cli.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
// src/cli.ts
|
|
4
|
-
import { spawn, spawnSync } from "node:child_process";
|
|
5
|
-
import { dirname, resolve } from "node:path";
|
|
6
|
-
import { fileURLToPath } from "node:url";
|
|
7
|
-
var args = process.argv.slice(2);
|
|
8
|
-
if (args.length === 0) {
|
|
9
|
-
console.log("Usage: surrge [options] <script> [args...]");
|
|
10
|
-
console.log(" surrge node [options] <script> [args...]");
|
|
11
|
-
console.log(" surrge bun [options] <script> [args...]");
|
|
12
|
-
console.log("");
|
|
13
|
-
console.log("Options are passed through to the runtime (e.g., --hot, --watch)");
|
|
14
|
-
process.exit(1);
|
|
15
|
-
}
|
|
16
|
-
var loaderPath = resolve(dirname(fileURLToPath(import.meta.url)), "loader.js");
|
|
17
|
-
var hasBun = () => {
|
|
18
|
-
const result = spawnSync("bun", ["--version"], { stdio: "ignore" });
|
|
19
|
-
return result.status === 0;
|
|
20
|
-
};
|
|
21
|
-
var runtime;
|
|
22
|
-
var remaining;
|
|
23
|
-
if (args[0] === "node" || args[0] === "bun") {
|
|
24
|
-
runtime = args[0];
|
|
25
|
-
remaining = args.slice(1);
|
|
26
|
-
} else {
|
|
27
|
-
runtime = hasBun() ? "bun" : "node";
|
|
28
|
-
remaining = args;
|
|
29
|
-
}
|
|
30
|
-
var runtimeFlags = [];
|
|
31
|
-
var scriptIndex = 0;
|
|
32
|
-
for (let i = 0;i < remaining.length; i++) {
|
|
33
|
-
if (remaining[i].startsWith("-")) {
|
|
34
|
-
runtimeFlags.push(remaining[i]);
|
|
35
|
-
} else {
|
|
36
|
-
scriptIndex = i;
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
var scriptArgs = remaining.slice(scriptIndex);
|
|
41
|
-
if (scriptArgs.length === 0) {
|
|
42
|
-
console.log("Error: No script specified");
|
|
43
|
-
process.exit(1);
|
|
44
|
-
}
|
|
45
|
-
var flag = runtime === "bun" ? "--preload" : "--import";
|
|
46
|
-
var child = spawn(runtime, [flag, loaderPath, ...runtimeFlags, ...scriptArgs], {
|
|
47
|
-
stdio: "inherit",
|
|
48
|
-
cwd: process.cwd(),
|
|
49
|
-
env: process.env
|
|
50
|
-
});
|
|
51
|
-
child.on("close", (code) => {
|
|
52
|
-
process.exit(code ?? 0);
|
|
53
|
-
});
|
package/dist/src/hooks.js
DELETED
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
4
|
-
var __defProp = Object.defineProperty;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __toESM = (mod, isNodeMode, target) => {
|
|
8
|
-
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
9
|
-
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
10
|
-
for (let key of __getOwnPropNames(mod))
|
|
11
|
-
if (!__hasOwnProp.call(to, key))
|
|
12
|
-
__defProp(to, key, {
|
|
13
|
-
get: () => mod[key],
|
|
14
|
-
enumerable: true
|
|
15
|
-
});
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
19
|
-
var __export = (target, all) => {
|
|
20
|
-
for (var name in all)
|
|
21
|
-
__defProp(target, name, {
|
|
22
|
-
get: all[name],
|
|
23
|
-
enumerable: true,
|
|
24
|
-
configurable: true,
|
|
25
|
-
set: (newValue) => all[name] = () => newValue
|
|
26
|
-
});
|
|
27
|
-
};
|
|
28
|
-
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
29
|
-
|
|
30
|
-
// src/hooks.ts
|
|
31
|
-
import fs from "node:fs";
|
|
32
|
-
import { createRequire as createRequire2 } from "node:module";
|
|
33
|
-
var STDOUT_FD = 1;
|
|
34
|
-
var buffer = "";
|
|
35
|
-
var originalWriteSync = fs.writeSync;
|
|
36
|
-
var originalWrite = fs.write;
|
|
37
|
-
var logQueue = [];
|
|
38
|
-
globalThis.__surrge_log_queue = logQueue;
|
|
39
|
-
var normalizeLevel = (level) => {
|
|
40
|
-
if (typeof level === "number") {
|
|
41
|
-
if (level >= 50)
|
|
42
|
-
return "error";
|
|
43
|
-
if (level >= 40)
|
|
44
|
-
return "warn";
|
|
45
|
-
if (level >= 30)
|
|
46
|
-
return "info";
|
|
47
|
-
return "debug";
|
|
48
|
-
}
|
|
49
|
-
if (typeof level === "string") {
|
|
50
|
-
const lower = level.toLowerCase();
|
|
51
|
-
if (["error", "err"].includes(lower))
|
|
52
|
-
return "error";
|
|
53
|
-
if (["warn", "warning"].includes(lower))
|
|
54
|
-
return "warn";
|
|
55
|
-
return lower;
|
|
56
|
-
}
|
|
57
|
-
return "info";
|
|
58
|
-
};
|
|
59
|
-
var captureOutput = (chunk) => {
|
|
60
|
-
const text = typeof chunk === "string" ? chunk : Buffer.isBuffer(chunk) ? chunk.toString() : new TextDecoder().decode(chunk);
|
|
61
|
-
buffer += text;
|
|
62
|
-
const lines = buffer.split(`
|
|
63
|
-
`);
|
|
64
|
-
buffer = lines.pop() ?? "";
|
|
65
|
-
for (const line of lines) {
|
|
66
|
-
if (!line.trim() || !line.startsWith("{"))
|
|
67
|
-
continue;
|
|
68
|
-
try {
|
|
69
|
-
const parsed = JSON.parse(line);
|
|
70
|
-
const level = normalizeLevel(parsed.level ?? parsed.severity ?? "info");
|
|
71
|
-
const message = String(parsed.msg ?? parsed.message ?? line);
|
|
72
|
-
const { level: _, msg: __, message: ___, ...metadata } = parsed;
|
|
73
|
-
logQueue.push({
|
|
74
|
-
level,
|
|
75
|
-
message,
|
|
76
|
-
metadata: Object.keys(metadata).length > 0 ? metadata : undefined
|
|
77
|
-
});
|
|
78
|
-
} catch {}
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
var require2 = createRequire2(import.meta.url);
|
|
82
|
-
var cjsFs = require2("node:fs");
|
|
83
|
-
fs.writeSync = (fd, data, ...args) => {
|
|
84
|
-
if (fd === STDOUT_FD && (typeof data === "string" || Buffer.isBuffer(data))) {
|
|
85
|
-
captureOutput(data);
|
|
86
|
-
}
|
|
87
|
-
return originalWriteSync(fd, data, ...args);
|
|
88
|
-
};
|
|
89
|
-
fs.write = (fd, data, ...args) => {
|
|
90
|
-
if (fd === STDOUT_FD && (typeof data === "string" || Buffer.isBuffer(data))) {
|
|
91
|
-
captureOutput(data);
|
|
92
|
-
}
|
|
93
|
-
return originalWrite(fd, data, ...args);
|
|
94
|
-
};
|
|
95
|
-
var cjsOriginalWriteSync = cjsFs.writeSync;
|
|
96
|
-
var cjsOriginalWrite = cjsFs.write;
|
|
97
|
-
cjsFs.writeSync = (fd, data, ...args) => {
|
|
98
|
-
if (fd === STDOUT_FD && (typeof data === "string" || Buffer.isBuffer(data))) {
|
|
99
|
-
captureOutput(data);
|
|
100
|
-
}
|
|
101
|
-
return cjsOriginalWriteSync(fd, data, ...args);
|
|
102
|
-
};
|
|
103
|
-
cjsFs.write = (fd, data, ...args) => {
|
|
104
|
-
if (fd === STDOUT_FD && (typeof data === "string" || Buffer.isBuffer(data))) {
|
|
105
|
-
captureOutput(data);
|
|
106
|
-
}
|
|
107
|
-
return cjsOriginalWrite(fd, data, ...args);
|
|
108
|
-
};
|
|
109
|
-
var originalStdoutWrite = process.stdout.write.bind(process.stdout);
|
|
110
|
-
process.stdout.write = (chunk, encodingOrCallback, callback) => {
|
|
111
|
-
if (typeof chunk === "string" || chunk instanceof Uint8Array) {
|
|
112
|
-
captureOutput(chunk);
|
|
113
|
-
}
|
|
114
|
-
if (typeof encodingOrCallback === "function") {
|
|
115
|
-
return originalStdoutWrite(chunk, encodingOrCallback);
|
|
116
|
-
}
|
|
117
|
-
return originalStdoutWrite(chunk, encodingOrCallback, callback);
|
|
118
|
-
};
|
|
119
|
-
var Bun = globalThis.Bun;
|
|
120
|
-
var BunStdout = Bun?.stdout;
|
|
121
|
-
if (Bun?.write) {
|
|
122
|
-
const originalBunWrite = Bun.write;
|
|
123
|
-
Bun.write = (dest, data, ...args) => {
|
|
124
|
-
const isStdout = dest === STDOUT_FD || dest === process.stdout || dest === BunStdout;
|
|
125
|
-
if (isStdout && (typeof data === "string" || data instanceof Uint8Array)) {
|
|
126
|
-
captureOutput(data);
|
|
127
|
-
}
|
|
128
|
-
return originalBunWrite(dest, data, ...args);
|
|
129
|
-
};
|
|
130
|
-
}
|
|
131
|
-
var bunStdout = BunStdout;
|
|
132
|
-
if (bunStdout?.write) {
|
|
133
|
-
const originalBunStdoutWrite = bunStdout.write.bind(bunStdout);
|
|
134
|
-
bunStdout.write = (data) => {
|
|
135
|
-
captureOutput(data);
|
|
136
|
-
return originalBunStdoutWrite(data);
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
var resolve = async (specifier, context, nextResolve) => {
|
|
140
|
-
return nextResolve(specifier, context);
|
|
141
|
-
};
|
|
142
|
-
var load = async (url, context, nextLoad) => {
|
|
143
|
-
return nextLoad(url, context);
|
|
144
|
-
};
|
|
145
|
-
export {
|
|
146
|
-
resolve,
|
|
147
|
-
load
|
|
148
|
-
};
|