@hasna/browser 0.0.2 → 0.0.3
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/cli/index.js +1410 -307
- package/dist/index.js +387 -150
- package/dist/lib/actions-ref.test.d.ts +2 -0
- package/dist/lib/actions-ref.test.d.ts.map +1 -0
- package/dist/lib/actions.d.ts +12 -0
- package/dist/lib/actions.d.ts.map +1 -1
- package/dist/lib/annotate.d.ts +18 -0
- package/dist/lib/annotate.d.ts.map +1 -0
- package/dist/lib/annotate.test.d.ts +2 -0
- package/dist/lib/annotate.test.d.ts.map +1 -0
- package/dist/lib/dialogs.d.ts +15 -0
- package/dist/lib/dialogs.d.ts.map +1 -0
- package/dist/lib/profiles.d.ts +23 -0
- package/dist/lib/profiles.d.ts.map +1 -0
- package/dist/lib/session-v3.test.d.ts +2 -0
- package/dist/lib/session-v3.test.d.ts.map +1 -0
- package/dist/lib/session.d.ts +5 -0
- package/dist/lib/session.d.ts.map +1 -1
- package/dist/lib/snapshot-diff.test.d.ts +2 -0
- package/dist/lib/snapshot-diff.test.d.ts.map +1 -0
- package/dist/lib/snapshot.d.ts +33 -0
- package/dist/lib/snapshot.d.ts.map +1 -0
- package/dist/lib/snapshot.test.d.ts +2 -0
- package/dist/lib/snapshot.test.d.ts.map +1 -0
- package/dist/lib/stealth.d.ts +5 -0
- package/dist/lib/stealth.d.ts.map +1 -0
- package/dist/lib/stealth.test.d.ts +2 -0
- package/dist/lib/stealth.test.d.ts.map +1 -0
- package/dist/lib/tabs.d.ts +18 -0
- package/dist/lib/tabs.d.ts.map +1 -0
- package/dist/mcp/index.js +1452 -359
- package/dist/server/index.js +309 -166
- package/dist/types/index.d.ts +35 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/server/index.js
CHANGED
|
@@ -7072,6 +7072,273 @@ function selectEngine(useCase, explicit) {
|
|
|
7072
7072
|
return preferred;
|
|
7073
7073
|
}
|
|
7074
7074
|
|
|
7075
|
+
// src/db/network-log.ts
|
|
7076
|
+
init_schema();
|
|
7077
|
+
import { randomUUID as randomUUID2 } from "crypto";
|
|
7078
|
+
function logRequest(data) {
|
|
7079
|
+
const db = getDatabase();
|
|
7080
|
+
const id = randomUUID2();
|
|
7081
|
+
db.prepare(`INSERT INTO network_log (id, session_id, method, url, status_code, request_headers,
|
|
7082
|
+
response_headers, request_body, body_size, duration_ms, resource_type)
|
|
7083
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(id, data.session_id, data.method, data.url, data.status_code ?? null, data.request_headers ?? null, data.response_headers ?? null, data.request_body ?? null, data.body_size ?? null, data.duration_ms ?? null, data.resource_type ?? null);
|
|
7084
|
+
return getNetworkRequest(id);
|
|
7085
|
+
}
|
|
7086
|
+
function getNetworkRequest(id) {
|
|
7087
|
+
const db = getDatabase();
|
|
7088
|
+
return db.query("SELECT * FROM network_log WHERE id = ?").get(id) ?? null;
|
|
7089
|
+
}
|
|
7090
|
+
function getNetworkLog(sessionId) {
|
|
7091
|
+
const db = getDatabase();
|
|
7092
|
+
return db.query("SELECT * FROM network_log WHERE session_id = ? ORDER BY timestamp ASC").all(sessionId);
|
|
7093
|
+
}
|
|
7094
|
+
function clearNetworkLog(sessionId) {
|
|
7095
|
+
const db = getDatabase();
|
|
7096
|
+
db.prepare("DELETE FROM network_log WHERE session_id = ?").run(sessionId);
|
|
7097
|
+
}
|
|
7098
|
+
|
|
7099
|
+
// src/lib/network.ts
|
|
7100
|
+
function enableNetworkLogging(page, sessionId) {
|
|
7101
|
+
const requestStart = new Map;
|
|
7102
|
+
const onRequest = (req) => {
|
|
7103
|
+
requestStart.set(req.url(), Date.now());
|
|
7104
|
+
};
|
|
7105
|
+
const onResponse = (res) => {
|
|
7106
|
+
const start = requestStart.get(res.url()) ?? Date.now();
|
|
7107
|
+
const duration = Date.now() - start;
|
|
7108
|
+
const req = res.request();
|
|
7109
|
+
try {
|
|
7110
|
+
logRequest({
|
|
7111
|
+
session_id: sessionId,
|
|
7112
|
+
method: req.method(),
|
|
7113
|
+
url: res.url(),
|
|
7114
|
+
status_code: res.status(),
|
|
7115
|
+
request_headers: JSON.stringify(req.headers()),
|
|
7116
|
+
response_headers: JSON.stringify(res.headers()),
|
|
7117
|
+
body_size: res.headers()["content-length"] != null ? parseInt(res.headers()["content-length"]) : undefined,
|
|
7118
|
+
duration_ms: duration,
|
|
7119
|
+
resource_type: req.resourceType()
|
|
7120
|
+
});
|
|
7121
|
+
} catch {}
|
|
7122
|
+
};
|
|
7123
|
+
page.on("request", onRequest);
|
|
7124
|
+
page.on("response", onResponse);
|
|
7125
|
+
return () => {
|
|
7126
|
+
page.off("request", onRequest);
|
|
7127
|
+
page.off("response", onResponse);
|
|
7128
|
+
};
|
|
7129
|
+
}
|
|
7130
|
+
function startHAR(page) {
|
|
7131
|
+
const entries = [];
|
|
7132
|
+
const requestStart = new Map;
|
|
7133
|
+
const onRequest = (req) => {
|
|
7134
|
+
requestStart.set(req.url() + req.method(), {
|
|
7135
|
+
time: Date.now(),
|
|
7136
|
+
method: req.method(),
|
|
7137
|
+
headers: req.headers(),
|
|
7138
|
+
postData: req.postData() ?? undefined
|
|
7139
|
+
});
|
|
7140
|
+
};
|
|
7141
|
+
const onResponse = async (res) => {
|
|
7142
|
+
const key = res.url() + res.request().method();
|
|
7143
|
+
const start = requestStart.get(key);
|
|
7144
|
+
if (!start)
|
|
7145
|
+
return;
|
|
7146
|
+
const duration = Date.now() - start.time;
|
|
7147
|
+
const entry = {
|
|
7148
|
+
startedDateTime: new Date(start.time).toISOString(),
|
|
7149
|
+
time: duration,
|
|
7150
|
+
request: {
|
|
7151
|
+
method: start.method,
|
|
7152
|
+
url: res.url(),
|
|
7153
|
+
headers: Object.entries(start.headers).map(([name, value]) => ({ name, value })),
|
|
7154
|
+
postData: start.postData ? { text: start.postData } : undefined
|
|
7155
|
+
},
|
|
7156
|
+
response: {
|
|
7157
|
+
status: res.status(),
|
|
7158
|
+
statusText: res.statusText(),
|
|
7159
|
+
headers: Object.entries(res.headers()).map(([name, value]) => ({ name, value })),
|
|
7160
|
+
content: {
|
|
7161
|
+
size: parseInt(res.headers()["content-length"] ?? "0") || 0,
|
|
7162
|
+
mimeType: res.headers()["content-type"] ?? "application/octet-stream"
|
|
7163
|
+
}
|
|
7164
|
+
},
|
|
7165
|
+
timings: { send: 0, wait: duration, receive: 0 }
|
|
7166
|
+
};
|
|
7167
|
+
entries.push(entry);
|
|
7168
|
+
requestStart.delete(key);
|
|
7169
|
+
};
|
|
7170
|
+
page.on("request", onRequest);
|
|
7171
|
+
page.on("response", onResponse);
|
|
7172
|
+
return {
|
|
7173
|
+
entries,
|
|
7174
|
+
stop: () => {
|
|
7175
|
+
page.off("request", onRequest);
|
|
7176
|
+
page.off("response", onResponse);
|
|
7177
|
+
return {
|
|
7178
|
+
log: {
|
|
7179
|
+
version: "1.2",
|
|
7180
|
+
creator: { name: "@hasna/browser", version: "0.0.1" },
|
|
7181
|
+
entries
|
|
7182
|
+
}
|
|
7183
|
+
};
|
|
7184
|
+
}
|
|
7185
|
+
};
|
|
7186
|
+
}
|
|
7187
|
+
|
|
7188
|
+
// src/db/console-log.ts
|
|
7189
|
+
init_schema();
|
|
7190
|
+
import { randomUUID as randomUUID3 } from "crypto";
|
|
7191
|
+
function logConsoleMessage(data) {
|
|
7192
|
+
const db = getDatabase();
|
|
7193
|
+
const id = randomUUID3();
|
|
7194
|
+
db.prepare("INSERT INTO console_log (id, session_id, level, message, source, line_number) VALUES (?, ?, ?, ?, ?, ?)").run(id, data.session_id, data.level, data.message, data.source ?? null, data.line_number ?? null);
|
|
7195
|
+
return getConsoleMessage(id);
|
|
7196
|
+
}
|
|
7197
|
+
function getConsoleMessage(id) {
|
|
7198
|
+
const db = getDatabase();
|
|
7199
|
+
return db.query("SELECT * FROM console_log WHERE id = ?").get(id) ?? null;
|
|
7200
|
+
}
|
|
7201
|
+
function getConsoleLog(sessionId, level) {
|
|
7202
|
+
const db = getDatabase();
|
|
7203
|
+
if (level) {
|
|
7204
|
+
return db.query("SELECT * FROM console_log WHERE session_id = ? AND level = ? ORDER BY timestamp ASC").all(sessionId, level);
|
|
7205
|
+
}
|
|
7206
|
+
return db.query("SELECT * FROM console_log WHERE session_id = ? ORDER BY timestamp ASC").all(sessionId);
|
|
7207
|
+
}
|
|
7208
|
+
|
|
7209
|
+
// src/lib/console.ts
|
|
7210
|
+
function enableConsoleCapture(page, sessionId) {
|
|
7211
|
+
const onConsole = (msg) => {
|
|
7212
|
+
const levelMap = {
|
|
7213
|
+
log: "log",
|
|
7214
|
+
warn: "warn",
|
|
7215
|
+
error: "error",
|
|
7216
|
+
debug: "debug",
|
|
7217
|
+
info: "info",
|
|
7218
|
+
warning: "warn"
|
|
7219
|
+
};
|
|
7220
|
+
const level = levelMap[msg.type()] ?? "log";
|
|
7221
|
+
const location = msg.location();
|
|
7222
|
+
try {
|
|
7223
|
+
logConsoleMessage({
|
|
7224
|
+
session_id: sessionId,
|
|
7225
|
+
level,
|
|
7226
|
+
message: msg.text(),
|
|
7227
|
+
source: location.url || undefined,
|
|
7228
|
+
line_number: location.lineNumber || undefined
|
|
7229
|
+
});
|
|
7230
|
+
} catch {}
|
|
7231
|
+
};
|
|
7232
|
+
page.on("console", onConsole);
|
|
7233
|
+
return () => page.off("console", onConsole);
|
|
7234
|
+
}
|
|
7235
|
+
|
|
7236
|
+
// src/lib/stealth.ts
|
|
7237
|
+
var REALISTIC_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36";
|
|
7238
|
+
var STEALTH_SCRIPT = `
|
|
7239
|
+
// \u2500\u2500 1. Remove navigator.webdriver flag \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
|
|
7240
|
+
Object.defineProperty(navigator, 'webdriver', {
|
|
7241
|
+
get: () => false,
|
|
7242
|
+
configurable: true,
|
|
7243
|
+
});
|
|
7244
|
+
|
|
7245
|
+
// \u2500\u2500 2. Override navigator.plugins to show typical Chrome plugins \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
|
|
7246
|
+
Object.defineProperty(navigator, 'plugins', {
|
|
7247
|
+
get: () => {
|
|
7248
|
+
const plugins = [
|
|
7249
|
+
{ name: 'Chrome PDF Plugin', filename: 'internal-pdf-viewer', description: 'Portable Document Format', length: 1 },
|
|
7250
|
+
{ name: 'Chrome PDF Viewer', filename: 'mhjfbmdgcfjbbpaeojofohoefgiehjai', description: '', length: 1 },
|
|
7251
|
+
{ name: 'Native Client', filename: 'internal-nacl-plugin', description: '', length: 2 },
|
|
7252
|
+
];
|
|
7253
|
+
// Mimic PluginArray interface
|
|
7254
|
+
const pluginArray = Object.create(PluginArray.prototype);
|
|
7255
|
+
plugins.forEach((p, i) => {
|
|
7256
|
+
const plugin = Object.create(Plugin.prototype);
|
|
7257
|
+
Object.defineProperties(plugin, {
|
|
7258
|
+
name: { value: p.name, enumerable: true },
|
|
7259
|
+
filename: { value: p.filename, enumerable: true },
|
|
7260
|
+
description: { value: p.description, enumerable: true },
|
|
7261
|
+
length: { value: p.length, enumerable: true },
|
|
7262
|
+
});
|
|
7263
|
+
pluginArray[i] = plugin;
|
|
7264
|
+
});
|
|
7265
|
+
Object.defineProperty(pluginArray, 'length', { value: plugins.length });
|
|
7266
|
+
pluginArray.item = (i) => pluginArray[i] || null;
|
|
7267
|
+
pluginArray.namedItem = (name) => plugins.find(p => p.name === name) ? pluginArray[plugins.findIndex(p => p.name === name)] : null;
|
|
7268
|
+
pluginArray.refresh = () => {};
|
|
7269
|
+
return pluginArray;
|
|
7270
|
+
},
|
|
7271
|
+
configurable: true,
|
|
7272
|
+
});
|
|
7273
|
+
|
|
7274
|
+
// \u2500\u2500 3. Override navigator.languages \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
|
|
7275
|
+
Object.defineProperty(navigator, 'languages', {
|
|
7276
|
+
get: () => ['en-US', 'en'],
|
|
7277
|
+
configurable: true,
|
|
7278
|
+
});
|
|
7279
|
+
|
|
7280
|
+
// \u2500\u2500 4. Override chrome.runtime to appear like real Chrome \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
|
|
7281
|
+
if (!window.chrome) {
|
|
7282
|
+
window.chrome = {};
|
|
7283
|
+
}
|
|
7284
|
+
if (!window.chrome.runtime) {
|
|
7285
|
+
window.chrome.runtime = {
|
|
7286
|
+
connect: function() { return { onMessage: { addListener: function() {} }, postMessage: function() {} }; },
|
|
7287
|
+
sendMessage: function() {},
|
|
7288
|
+
onMessage: { addListener: function() {}, removeListener: function() {} },
|
|
7289
|
+
id: undefined,
|
|
7290
|
+
};
|
|
7291
|
+
}
|
|
7292
|
+
`;
|
|
7293
|
+
async function applyStealthPatches(page) {
|
|
7294
|
+
await page.context().addInitScript(STEALTH_SCRIPT);
|
|
7295
|
+
await page.context().setExtraHTTPHeaders({
|
|
7296
|
+
"User-Agent": REALISTIC_USER_AGENT
|
|
7297
|
+
});
|
|
7298
|
+
}
|
|
7299
|
+
|
|
7300
|
+
// src/lib/dialogs.ts
|
|
7301
|
+
var pendingDialogs = new Map;
|
|
7302
|
+
var AUTO_DISMISS_MS = 5000;
|
|
7303
|
+
function setupDialogHandler(page, sessionId) {
|
|
7304
|
+
const onDialog = (dialog) => {
|
|
7305
|
+
const info = {
|
|
7306
|
+
type: dialog.type(),
|
|
7307
|
+
message: dialog.message(),
|
|
7308
|
+
default_value: dialog.defaultValue(),
|
|
7309
|
+
timestamp: new Date().toISOString()
|
|
7310
|
+
};
|
|
7311
|
+
const autoTimer = setTimeout(() => {
|
|
7312
|
+
try {
|
|
7313
|
+
dialog.dismiss().catch(() => {});
|
|
7314
|
+
} catch {}
|
|
7315
|
+
const list = pendingDialogs.get(sessionId);
|
|
7316
|
+
if (list) {
|
|
7317
|
+
const idx = list.findIndex((p) => p.dialog === dialog);
|
|
7318
|
+
if (idx >= 0)
|
|
7319
|
+
list.splice(idx, 1);
|
|
7320
|
+
if (list.length === 0)
|
|
7321
|
+
pendingDialogs.delete(sessionId);
|
|
7322
|
+
}
|
|
7323
|
+
}, AUTO_DISMISS_MS);
|
|
7324
|
+
const pending = { dialog, info, autoTimer };
|
|
7325
|
+
if (!pendingDialogs.has(sessionId)) {
|
|
7326
|
+
pendingDialogs.set(sessionId, []);
|
|
7327
|
+
}
|
|
7328
|
+
pendingDialogs.get(sessionId).push(pending);
|
|
7329
|
+
};
|
|
7330
|
+
page.on("dialog", onDialog);
|
|
7331
|
+
return () => {
|
|
7332
|
+
page.off("dialog", onDialog);
|
|
7333
|
+
const list = pendingDialogs.get(sessionId);
|
|
7334
|
+
if (list) {
|
|
7335
|
+
for (const p of list)
|
|
7336
|
+
clearTimeout(p.autoTimer);
|
|
7337
|
+
pendingDialogs.delete(sessionId);
|
|
7338
|
+
}
|
|
7339
|
+
};
|
|
7340
|
+
}
|
|
7341
|
+
|
|
7075
7342
|
// src/lib/session.ts
|
|
7076
7343
|
var handles = new Map;
|
|
7077
7344
|
async function createSession2(opts = {}) {
|
|
@@ -7098,13 +7365,33 @@ async function createSession2(opts = {}) {
|
|
|
7098
7365
|
engine: resolvedEngine,
|
|
7099
7366
|
projectId: opts.projectId,
|
|
7100
7367
|
agentId: opts.agentId,
|
|
7101
|
-
startUrl: opts.startUrl
|
|
7368
|
+
startUrl: opts.startUrl,
|
|
7369
|
+
name: opts.name ?? (opts.startUrl ? new URL(opts.startUrl).hostname : undefined)
|
|
7102
7370
|
});
|
|
7103
|
-
|
|
7371
|
+
if (opts.stealth) {
|
|
7372
|
+
try {
|
|
7373
|
+
await applyStealthPatches(page);
|
|
7374
|
+
} catch {}
|
|
7375
|
+
}
|
|
7376
|
+
const cleanups = [];
|
|
7377
|
+
if (opts.captureNetwork !== false) {
|
|
7378
|
+
try {
|
|
7379
|
+
cleanups.push(enableNetworkLogging(page, session.id));
|
|
7380
|
+
} catch {}
|
|
7381
|
+
}
|
|
7382
|
+
if (opts.captureConsole !== false) {
|
|
7383
|
+
try {
|
|
7384
|
+
cleanups.push(enableConsoleCapture(page, session.id));
|
|
7385
|
+
} catch {}
|
|
7386
|
+
}
|
|
7387
|
+
try {
|
|
7388
|
+
cleanups.push(setupDialogHandler(page, session.id));
|
|
7389
|
+
} catch {}
|
|
7390
|
+
handles.set(session.id, { browser, page, engine: resolvedEngine, cleanups, tokenBudget: { total: 0, used: 0 } });
|
|
7104
7391
|
if (opts.startUrl) {
|
|
7105
7392
|
try {
|
|
7106
7393
|
await page.goto(opts.startUrl, { waitUntil: "domcontentloaded" });
|
|
7107
|
-
} catch
|
|
7394
|
+
} catch {}
|
|
7108
7395
|
}
|
|
7109
7396
|
return { session, page };
|
|
7110
7397
|
}
|
|
@@ -7112,11 +7399,22 @@ function getSessionPage(sessionId) {
|
|
|
7112
7399
|
const handle = handles.get(sessionId);
|
|
7113
7400
|
if (!handle)
|
|
7114
7401
|
throw new SessionNotFoundError(sessionId);
|
|
7402
|
+
try {
|
|
7403
|
+
handle.page.url();
|
|
7404
|
+
} catch {
|
|
7405
|
+
handles.delete(sessionId);
|
|
7406
|
+
throw new SessionNotFoundError(sessionId);
|
|
7407
|
+
}
|
|
7115
7408
|
return handle.page;
|
|
7116
7409
|
}
|
|
7117
7410
|
async function closeSession2(sessionId) {
|
|
7118
7411
|
const handle = handles.get(sessionId);
|
|
7119
7412
|
if (handle) {
|
|
7413
|
+
for (const cleanup of handle.cleanups) {
|
|
7414
|
+
try {
|
|
7415
|
+
cleanup();
|
|
7416
|
+
} catch {}
|
|
7417
|
+
}
|
|
7120
7418
|
try {
|
|
7121
7419
|
await handle.page.context().close();
|
|
7122
7420
|
} catch {}
|
|
@@ -7133,6 +7431,12 @@ function listSessions2(filter) {
|
|
|
7133
7431
|
|
|
7134
7432
|
// src/lib/actions.ts
|
|
7135
7433
|
init_types();
|
|
7434
|
+
|
|
7435
|
+
// src/lib/snapshot.ts
|
|
7436
|
+
var lastSnapshots = new Map;
|
|
7437
|
+
var sessionRefMaps = new Map;
|
|
7438
|
+
|
|
7439
|
+
// src/lib/actions.ts
|
|
7136
7440
|
async function click(page, selector, opts) {
|
|
7137
7441
|
try {
|
|
7138
7442
|
await page.click(selector, {
|
|
@@ -7264,7 +7568,7 @@ import { homedir as homedir2 } from "os";
|
|
|
7264
7568
|
|
|
7265
7569
|
// src/db/gallery.ts
|
|
7266
7570
|
init_schema();
|
|
7267
|
-
import { randomUUID as
|
|
7571
|
+
import { randomUUID as randomUUID4 } from "crypto";
|
|
7268
7572
|
function deserialize(row) {
|
|
7269
7573
|
return {
|
|
7270
7574
|
id: row.id,
|
|
@@ -7288,7 +7592,7 @@ function deserialize(row) {
|
|
|
7288
7592
|
}
|
|
7289
7593
|
function createEntry(data) {
|
|
7290
7594
|
const db = getDatabase();
|
|
7291
|
-
const id =
|
|
7595
|
+
const id = randomUUID4();
|
|
7292
7596
|
db.prepare(`
|
|
7293
7597
|
INSERT INTO gallery_entries
|
|
7294
7598
|
(id, session_id, project_id, url, title, path, thumbnail_path, format,
|
|
@@ -7508,119 +7812,6 @@ async function takeScreenshot(page, opts) {
|
|
|
7508
7812
|
}
|
|
7509
7813
|
}
|
|
7510
7814
|
|
|
7511
|
-
// src/db/network-log.ts
|
|
7512
|
-
init_schema();
|
|
7513
|
-
import { randomUUID as randomUUID3 } from "crypto";
|
|
7514
|
-
function logRequest(data) {
|
|
7515
|
-
const db = getDatabase();
|
|
7516
|
-
const id = randomUUID3();
|
|
7517
|
-
db.prepare(`INSERT INTO network_log (id, session_id, method, url, status_code, request_headers,
|
|
7518
|
-
response_headers, request_body, body_size, duration_ms, resource_type)
|
|
7519
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(id, data.session_id, data.method, data.url, data.status_code ?? null, data.request_headers ?? null, data.response_headers ?? null, data.request_body ?? null, data.body_size ?? null, data.duration_ms ?? null, data.resource_type ?? null);
|
|
7520
|
-
return getNetworkRequest(id);
|
|
7521
|
-
}
|
|
7522
|
-
function getNetworkRequest(id) {
|
|
7523
|
-
const db = getDatabase();
|
|
7524
|
-
return db.query("SELECT * FROM network_log WHERE id = ?").get(id) ?? null;
|
|
7525
|
-
}
|
|
7526
|
-
function getNetworkLog(sessionId) {
|
|
7527
|
-
const db = getDatabase();
|
|
7528
|
-
return db.query("SELECT * FROM network_log WHERE session_id = ? ORDER BY timestamp ASC").all(sessionId);
|
|
7529
|
-
}
|
|
7530
|
-
function clearNetworkLog(sessionId) {
|
|
7531
|
-
const db = getDatabase();
|
|
7532
|
-
db.prepare("DELETE FROM network_log WHERE session_id = ?").run(sessionId);
|
|
7533
|
-
}
|
|
7534
|
-
|
|
7535
|
-
// src/lib/network.ts
|
|
7536
|
-
function enableNetworkLogging(page, sessionId) {
|
|
7537
|
-
const requestStart = new Map;
|
|
7538
|
-
const onRequest = (req) => {
|
|
7539
|
-
requestStart.set(req.url(), Date.now());
|
|
7540
|
-
};
|
|
7541
|
-
const onResponse = (res) => {
|
|
7542
|
-
const start = requestStart.get(res.url()) ?? Date.now();
|
|
7543
|
-
const duration = Date.now() - start;
|
|
7544
|
-
const req = res.request();
|
|
7545
|
-
try {
|
|
7546
|
-
logRequest({
|
|
7547
|
-
session_id: sessionId,
|
|
7548
|
-
method: req.method(),
|
|
7549
|
-
url: res.url(),
|
|
7550
|
-
status_code: res.status(),
|
|
7551
|
-
request_headers: JSON.stringify(req.headers()),
|
|
7552
|
-
response_headers: JSON.stringify(res.headers()),
|
|
7553
|
-
body_size: res.headers()["content-length"] != null ? parseInt(res.headers()["content-length"]) : undefined,
|
|
7554
|
-
duration_ms: duration,
|
|
7555
|
-
resource_type: req.resourceType()
|
|
7556
|
-
});
|
|
7557
|
-
} catch {}
|
|
7558
|
-
};
|
|
7559
|
-
page.on("request", onRequest);
|
|
7560
|
-
page.on("response", onResponse);
|
|
7561
|
-
return () => {
|
|
7562
|
-
page.off("request", onRequest);
|
|
7563
|
-
page.off("response", onResponse);
|
|
7564
|
-
};
|
|
7565
|
-
}
|
|
7566
|
-
function startHAR(page) {
|
|
7567
|
-
const entries = [];
|
|
7568
|
-
const requestStart = new Map;
|
|
7569
|
-
const onRequest = (req) => {
|
|
7570
|
-
requestStart.set(req.url() + req.method(), {
|
|
7571
|
-
time: Date.now(),
|
|
7572
|
-
method: req.method(),
|
|
7573
|
-
headers: req.headers(),
|
|
7574
|
-
postData: req.postData() ?? undefined
|
|
7575
|
-
});
|
|
7576
|
-
};
|
|
7577
|
-
const onResponse = async (res) => {
|
|
7578
|
-
const key = res.url() + res.request().method();
|
|
7579
|
-
const start = requestStart.get(key);
|
|
7580
|
-
if (!start)
|
|
7581
|
-
return;
|
|
7582
|
-
const duration = Date.now() - start.time;
|
|
7583
|
-
const entry = {
|
|
7584
|
-
startedDateTime: new Date(start.time).toISOString(),
|
|
7585
|
-
time: duration,
|
|
7586
|
-
request: {
|
|
7587
|
-
method: start.method,
|
|
7588
|
-
url: res.url(),
|
|
7589
|
-
headers: Object.entries(start.headers).map(([name, value]) => ({ name, value })),
|
|
7590
|
-
postData: start.postData ? { text: start.postData } : undefined
|
|
7591
|
-
},
|
|
7592
|
-
response: {
|
|
7593
|
-
status: res.status(),
|
|
7594
|
-
statusText: res.statusText(),
|
|
7595
|
-
headers: Object.entries(res.headers()).map(([name, value]) => ({ name, value })),
|
|
7596
|
-
content: {
|
|
7597
|
-
size: parseInt(res.headers()["content-length"] ?? "0") || 0,
|
|
7598
|
-
mimeType: res.headers()["content-type"] ?? "application/octet-stream"
|
|
7599
|
-
}
|
|
7600
|
-
},
|
|
7601
|
-
timings: { send: 0, wait: duration, receive: 0 }
|
|
7602
|
-
};
|
|
7603
|
-
entries.push(entry);
|
|
7604
|
-
requestStart.delete(key);
|
|
7605
|
-
};
|
|
7606
|
-
page.on("request", onRequest);
|
|
7607
|
-
page.on("response", onResponse);
|
|
7608
|
-
return {
|
|
7609
|
-
entries,
|
|
7610
|
-
stop: () => {
|
|
7611
|
-
page.off("request", onRequest);
|
|
7612
|
-
page.off("response", onResponse);
|
|
7613
|
-
return {
|
|
7614
|
-
log: {
|
|
7615
|
-
version: "1.2",
|
|
7616
|
-
creator: { name: "@hasna/browser", version: "0.0.1" },
|
|
7617
|
-
entries
|
|
7618
|
-
}
|
|
7619
|
-
};
|
|
7620
|
-
}
|
|
7621
|
-
};
|
|
7622
|
-
}
|
|
7623
|
-
|
|
7624
7815
|
// src/engines/cdp.ts
|
|
7625
7816
|
init_types();
|
|
7626
7817
|
|
|
@@ -7768,54 +7959,6 @@ async function getPerformanceMetrics(page) {
|
|
|
7768
7959
|
};
|
|
7769
7960
|
}
|
|
7770
7961
|
|
|
7771
|
-
// src/db/console-log.ts
|
|
7772
|
-
init_schema();
|
|
7773
|
-
import { randomUUID as randomUUID4 } from "crypto";
|
|
7774
|
-
function logConsoleMessage(data) {
|
|
7775
|
-
const db = getDatabase();
|
|
7776
|
-
const id = randomUUID4();
|
|
7777
|
-
db.prepare("INSERT INTO console_log (id, session_id, level, message, source, line_number) VALUES (?, ?, ?, ?, ?, ?)").run(id, data.session_id, data.level, data.message, data.source ?? null, data.line_number ?? null);
|
|
7778
|
-
return getConsoleMessage(id);
|
|
7779
|
-
}
|
|
7780
|
-
function getConsoleMessage(id) {
|
|
7781
|
-
const db = getDatabase();
|
|
7782
|
-
return db.query("SELECT * FROM console_log WHERE id = ?").get(id) ?? null;
|
|
7783
|
-
}
|
|
7784
|
-
function getConsoleLog(sessionId, level) {
|
|
7785
|
-
const db = getDatabase();
|
|
7786
|
-
if (level) {
|
|
7787
|
-
return db.query("SELECT * FROM console_log WHERE session_id = ? AND level = ? ORDER BY timestamp ASC").all(sessionId, level);
|
|
7788
|
-
}
|
|
7789
|
-
return db.query("SELECT * FROM console_log WHERE session_id = ? ORDER BY timestamp ASC").all(sessionId);
|
|
7790
|
-
}
|
|
7791
|
-
|
|
7792
|
-
// src/lib/console.ts
|
|
7793
|
-
function enableConsoleCapture(page, sessionId) {
|
|
7794
|
-
const onConsole = (msg) => {
|
|
7795
|
-
const levelMap = {
|
|
7796
|
-
log: "log",
|
|
7797
|
-
warn: "warn",
|
|
7798
|
-
error: "error",
|
|
7799
|
-
debug: "debug",
|
|
7800
|
-
info: "info",
|
|
7801
|
-
warning: "warn"
|
|
7802
|
-
};
|
|
7803
|
-
const level = levelMap[msg.type()] ?? "log";
|
|
7804
|
-
const location = msg.location();
|
|
7805
|
-
try {
|
|
7806
|
-
logConsoleMessage({
|
|
7807
|
-
session_id: sessionId,
|
|
7808
|
-
level,
|
|
7809
|
-
message: msg.text(),
|
|
7810
|
-
source: location.url || undefined,
|
|
7811
|
-
line_number: location.lineNumber || undefined
|
|
7812
|
-
});
|
|
7813
|
-
} catch {}
|
|
7814
|
-
};
|
|
7815
|
-
page.on("console", onConsole);
|
|
7816
|
-
return () => page.off("console", onConsole);
|
|
7817
|
-
}
|
|
7818
|
-
|
|
7819
7962
|
// src/lib/crawler.ts
|
|
7820
7963
|
init_types();
|
|
7821
7964
|
|
package/dist/types/index.d.ts
CHANGED
|
@@ -56,12 +56,16 @@ export interface SessionOptions {
|
|
|
56
56
|
projectId?: string;
|
|
57
57
|
agentId?: string;
|
|
58
58
|
startUrl?: string;
|
|
59
|
+
name?: string;
|
|
59
60
|
headless?: boolean;
|
|
60
61
|
viewport?: {
|
|
61
62
|
width: number;
|
|
62
63
|
height: number;
|
|
63
64
|
};
|
|
64
65
|
userAgent?: string;
|
|
66
|
+
captureNetwork?: boolean;
|
|
67
|
+
captureConsole?: boolean;
|
|
68
|
+
stealth?: boolean;
|
|
65
69
|
}
|
|
66
70
|
export interface Snapshot {
|
|
67
71
|
id: string;
|
|
@@ -344,6 +348,37 @@ export interface PDFResult {
|
|
|
344
348
|
size_bytes: number;
|
|
345
349
|
page_count?: number;
|
|
346
350
|
}
|
|
351
|
+
export interface RefInfo {
|
|
352
|
+
role: string;
|
|
353
|
+
name: string;
|
|
354
|
+
description?: string;
|
|
355
|
+
visible: boolean;
|
|
356
|
+
enabled: boolean;
|
|
357
|
+
value?: string;
|
|
358
|
+
checked?: boolean;
|
|
359
|
+
}
|
|
360
|
+
export interface SnapshotResult {
|
|
361
|
+
tree: string;
|
|
362
|
+
refs: Record<string, RefInfo>;
|
|
363
|
+
interactive_count: number;
|
|
364
|
+
}
|
|
365
|
+
export interface SnapshotDiff {
|
|
366
|
+
added: Array<{
|
|
367
|
+
ref: string;
|
|
368
|
+
info: RefInfo;
|
|
369
|
+
}>;
|
|
370
|
+
removed: Array<{
|
|
371
|
+
ref: string;
|
|
372
|
+
info: RefInfo;
|
|
373
|
+
}>;
|
|
374
|
+
modified: Array<{
|
|
375
|
+
ref: string;
|
|
376
|
+
before: RefInfo;
|
|
377
|
+
after: RefInfo;
|
|
378
|
+
}>;
|
|
379
|
+
url_changed: boolean;
|
|
380
|
+
title_changed: boolean;
|
|
381
|
+
}
|
|
347
382
|
export interface BrowserConfig {
|
|
348
383
|
default_engine: BrowserEngine;
|
|
349
384
|
headless: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hasna/browser",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "General-purpose browser agent toolkit — Playwright, Chrome DevTools Protocol, Lightpanda with auto engine selection. CLI + MCP + REST + SDK.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|