zan-browser 1.3.17 → 1.3.19
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/ai.d.ts.map +1 -1
- package/dist/ai.js +13 -23
- package/dist/ai.js.map +1 -1
- package/dist/browser.d.ts +0 -1
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +4 -42
- package/dist/browser.js.map +1 -1
- package/dist/interceptor.d.ts.map +1 -1
- package/dist/interceptor.js +1 -48
- package/dist/interceptor.js.map +1 -1
- package/dist/observer.d.ts +4 -0
- package/dist/observer.d.ts.map +1 -1
- package/dist/observer.js +24 -3
- package/dist/observer.js.map +1 -1
- package/dist/session.d.ts +2 -8
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +32 -67
- package/dist/session.js.map +1 -1
- package/dist/types.d.ts +0 -6
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/ai.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAMrE,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,EAAE,MAAM,EAAE,KAAK,SAAgB;IAM3C,qBAAqB,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAMrE,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,EAAE,MAAM,EAAE,KAAK,SAAgB;IAM3C,qBAAqB,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;IAmDjB,oBAAoB,CACxB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;IA6DvB,OAAO,CAAC,WAAW;CA6BpB"}
|
package/dist/ai.js
CHANGED
|
@@ -32,23 +32,20 @@ ${historyText}${seedContext}
|
|
|
32
32
|
CURRENT PAGE STATE:
|
|
33
33
|
${observation.text}
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
Do not wait passively. Do not return "done" before using available input fields when INPUT VALUES are provided.
|
|
35
|
+
IMPORTANT RULES:
|
|
36
|
+
- Always dismiss cookie banners first if hasCookieBanner=true
|
|
37
|
+
- If a modal is open, interact with it first
|
|
38
|
+
- If the page is loading, return a wait action
|
|
39
|
+
- Take the minimum actions needed — stop as soon as the goal is achievable
|
|
40
|
+
- If INPUT VALUES are provided above, use them when filling search boxes or input fields
|
|
41
|
+
- If you cannot achieve the goal, return "impossible"
|
|
42
|
+
- If the goal is achieved, return "done"
|
|
45
43
|
|
|
46
44
|
Respond with a JSON object (no markdown):
|
|
47
45
|
{
|
|
48
|
-
"type": "click" | "fill" | "
|
|
46
|
+
"type": "click" | "fill" | "scroll" | "wait" | "navigate" | "screenshot" | "done" | "impossible",
|
|
49
47
|
"elementId": "@B3" (required for click/fill),
|
|
50
48
|
"value": "text to type" (required for fill),
|
|
51
|
-
"key": "Enter" (required for pressKey — use after filling a search box to submit it),
|
|
52
49
|
"direction": "up" | "down" (required for scroll),
|
|
53
50
|
"amount": 300 (optional for scroll, pixels),
|
|
54
51
|
"ms": 1000 (required for wait),
|
|
@@ -63,8 +60,6 @@ Respond with a JSON object (no markdown):
|
|
|
63
60
|
const text = response.content[0].type === "text" ? response.content[0].text : "";
|
|
64
61
|
return this.parseAction(text);
|
|
65
62
|
}
|
|
66
|
-
// Vision fallback — only called when observe() returns ambiguous state
|
|
67
|
-
// e.g. canvas-rendered UI, complex dynamic content
|
|
68
63
|
async decideFromScreenshot(goal, screenshotBase64, history, seedValues) {
|
|
69
64
|
const historyText = history.length > 0
|
|
70
65
|
? `\nPREVIOUS STEPS:\n${history.slice(-3).join("\n")}`
|
|
@@ -79,18 +74,15 @@ Decide the SINGLE next action.
|
|
|
79
74
|
GOAL: ${goal}
|
|
80
75
|
${historyText}${seedContext}
|
|
81
76
|
|
|
82
|
-
RULES:
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
3. If hasCookieBanner or modal → dismiss first
|
|
86
|
-
4. Return "done" when goal is achievable, "impossible" if it cannot be done
|
|
77
|
+
RULES: Take minimum actions needed. Return "done" when goal is achievable.
|
|
78
|
+
If INPUT VALUES are provided above, use them when filling search boxes or input fields.
|
|
79
|
+
Return "impossible" if it cannot be done.
|
|
87
80
|
|
|
88
81
|
Respond with JSON (no markdown):
|
|
89
82
|
{
|
|
90
|
-
"type": "click" | "fill" | "
|
|
83
|
+
"type": "click" | "fill" | "scroll" | "wait" | "navigate" | "screenshot" | "done" | "impossible",
|
|
91
84
|
"elementId": "describe the element visually if no ID available",
|
|
92
85
|
"value": "text to type" (for fill),
|
|
93
|
-
"key": "Enter" (for pressKey),
|
|
94
86
|
"direction": "up" | "down" (for scroll),
|
|
95
87
|
"ms": 1000 (for wait),
|
|
96
88
|
"url": "https://..." (for navigate),
|
|
@@ -129,8 +121,6 @@ Respond with JSON (no markdown):
|
|
|
129
121
|
return { type: "click", elementId: parsed.elementId ?? "", reason: parsed.reason ?? "" };
|
|
130
122
|
case "fill":
|
|
131
123
|
return { type: "fill", elementId: parsed.elementId ?? "", value: parsed.value ?? "", reason: parsed.reason ?? "" };
|
|
132
|
-
case "pressKey":
|
|
133
|
-
return { type: "pressKey", key: parsed.key ?? "Enter", reason: parsed.reason ?? "" };
|
|
134
124
|
case "scroll":
|
|
135
125
|
return { type: "scroll", direction: parsed.direction ?? "down", amount: parsed.amount, reason: parsed.reason ?? "" };
|
|
136
126
|
case "wait":
|
package/dist/ai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA0C;AAG1C,MAAM,aAAa,GAAG,2BAA2B,CAAC;AAElD,mEAAmE;AACnE,sCAAsC;AACtC,MAAa,QAAQ;IACX,MAAM,CAAY;IAClB,KAAK,CAAS;IAEtB,YAAY,MAAc,EAAE,KAAK,GAAG,aAAa;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,qBAAqB,CACzB,IAAY,EACZ,WAA0B,EAC1B,OAAiB,EACjB,UAAwB;QAExB,MAAM,WAAW,GACf,OAAO,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,sBAAsB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,WAAW,GACf,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,CAAC,2BAA2B,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,WAAW,WAAW,CAAC,CAAC,YAAY,yCAAyC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnK,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,MAAM,GAAG;;;QAGX,IAAI;EACV,WAAW,GAAG,WAAW;;;EAGzB,WAAW,CAAC,IAAI
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
|
package/dist/browser.d.ts
CHANGED
package/dist/browser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAAW;gBAET,MAAM,EAAE,aAAa;IAQ3B,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,EAAE,CAAW;gBAET,MAAM,EAAE,aAAa;IAQ3B,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;YA6CtB,wBAAwB;CAoCvC"}
|
package/dist/browser.js
CHANGED
|
@@ -18,35 +18,20 @@ class RensanBrowser {
|
|
|
18
18
|
const { proxy, viewport, timeout } = this.config.session;
|
|
19
19
|
let wsEndpoint;
|
|
20
20
|
let viewerUrl;
|
|
21
|
-
let useCDP = false;
|
|
22
21
|
if (this.config.session.browserbase) {
|
|
23
22
|
const bb = await this.createBrowserbaseSession(this.config.session.browserbase);
|
|
24
23
|
wsEndpoint = bb.connectUrl;
|
|
25
24
|
viewerUrl = bb.viewerUrl;
|
|
26
|
-
useCDP = true; // Browserbase uses CDP
|
|
27
|
-
}
|
|
28
|
-
else if (this.config.session.cdpEndpoint) {
|
|
29
|
-
// browserless, local Chrome with --remote-debugging-port, etc.
|
|
30
|
-
// If the endpoint is HTTP, resolve the actual WebSocket URL and rewrite any
|
|
31
|
-
// internal address (0.0.0.0, localhost) to the real external host so
|
|
32
|
-
// Playwright can connect from a different machine.
|
|
33
|
-
const raw = this.config.session.cdpEndpoint;
|
|
34
|
-
if (raw.startsWith("http://") || raw.startsWith("https://")) {
|
|
35
|
-
wsEndpoint = await this.resolveWebSocketUrl(raw);
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
wsEndpoint = raw; // already a ws:// URL — connect directly
|
|
39
|
-
}
|
|
40
|
-
useCDP = true;
|
|
41
25
|
}
|
|
42
26
|
else if (this.config.session.wsEndpoint) {
|
|
43
27
|
wsEndpoint = this.config.session.wsEndpoint;
|
|
44
|
-
useCDP = false; // Playwright Wire Protocol
|
|
45
28
|
}
|
|
46
29
|
else {
|
|
47
|
-
throw new Error("BrowserConfig requires wsEndpoint
|
|
30
|
+
throw new Error("BrowserConfig requires either wsEndpoint or browserbase config");
|
|
48
31
|
}
|
|
49
|
-
|
|
32
|
+
// Browserbase returns a CDP endpoint → connectOverCDP
|
|
33
|
+
// Self-hosted playwright run-server → connect (Playwright Wire Protocol)
|
|
34
|
+
const browser = this.config.session.browserbase
|
|
50
35
|
? await playwright_1.chromium.connectOverCDP(wsEndpoint)
|
|
51
36
|
: await playwright_1.chromium.connect(wsEndpoint);
|
|
52
37
|
const contextOptions = {
|
|
@@ -66,29 +51,6 @@ class RensanBrowser {
|
|
|
66
51
|
const page = await context.newPage();
|
|
67
52
|
return new session_1.Session(page, browser, this.ai, timeout, viewerUrl);
|
|
68
53
|
}
|
|
69
|
-
// ─── CDP WebSocket URL resolution ─────────────────────────────────────────────
|
|
70
|
-
// Fetches /json/version from an HTTP CDP endpoint and rewrites any 0.0.0.0 /
|
|
71
|
-
// internal address in the returned webSocketDebuggerUrl with the real external host.
|
|
72
|
-
async resolveWebSocketUrl(httpEndpoint) {
|
|
73
|
-
const base = new URL(httpEndpoint);
|
|
74
|
-
const versionUrl = `${base.protocol}//${base.host}/json/version${base.search}`;
|
|
75
|
-
const res = await fetch(versionUrl, { signal: AbortSignal.timeout(5000) });
|
|
76
|
-
if (!res.ok)
|
|
77
|
-
throw new Error(`CDP version endpoint returned ${res.status}`);
|
|
78
|
-
const json = await res.json();
|
|
79
|
-
let wsUrl = json.webSocketDebuggerUrl;
|
|
80
|
-
if (!wsUrl)
|
|
81
|
-
throw new Error("CDP endpoint did not return webSocketDebuggerUrl");
|
|
82
|
-
// Rewrite internal addresses (0.0.0.0, ::, localhost) to the real external host
|
|
83
|
-
const internal = /^(0\.0\.0\.0|::|\[::\]|localhost)/;
|
|
84
|
-
const parsed = new URL(wsUrl);
|
|
85
|
-
if (internal.test(parsed.hostname)) {
|
|
86
|
-
parsed.hostname = base.hostname;
|
|
87
|
-
parsed.port = base.port;
|
|
88
|
-
wsUrl = parsed.toString();
|
|
89
|
-
}
|
|
90
|
-
return wsUrl;
|
|
91
|
-
}
|
|
92
54
|
// ─── Browserbase session creation ─────────────────────────────────────────────
|
|
93
55
|
async createBrowserbaseSession(config) {
|
|
94
56
|
const response = await fetch("https://www.browserbase.com/v1/sessions", {
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAEtC,uCAAoC;AACpC,6BAAgC;AAEhC,MAAa,aAAa;IAChB,MAAM,CAAgB;IACtB,EAAE,CAAW;IAErB,YAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,GAAG,IAAI,aAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,gCAAgC;IAChC,2EAA2E;IAC3E,oEAAoE;IACpE,KAAK,CAAC,UAAU;QACd,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACzD,IAAI,UAAkB,CAAC;QACvB,IAAI,SAA6B,CAAC;QAElC,IAAI,
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,IAAI,EAAqB,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAmD/C,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,mBAAmB,CAAK;gBAEpB,IAAI,EAAE,IAAI;IAMtB,KAAK,IAAI,IAAI;IASb,IAAI,IAAI,IAAI;IASZ,MAAM,IAAI,eAAe,EAAE;IAK3B,SAAS,CAAC,QAAQ,SAAI,GAAG,eAAe,EAAE;IAM1C,KAAK,IAAI,IAAI;IAOb,mBAAmB,IAAI,IAAI;IAK3B,kBAAkB,IAAI,eAAe,EAAE;IAMvC,OAAO,CAAC,SAAS,CA0Bf;IAEF,OAAO,CAAC,UAAU,CA6ChB;IAEF,OAAO,CAAC,eAAe,CASrB;IAIF,OAAO,CAAC,YAAY;IA8DpB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,OAAO;IASf,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,mBAAmB;CAG5B"}
|
package/dist/interceptor.js
CHANGED
|
@@ -43,41 +43,6 @@ const USEFUL_CONTENT_TYPES = [
|
|
|
43
43
|
"text/plain",
|
|
44
44
|
"application/x-www-form-urlencoded",
|
|
45
45
|
];
|
|
46
|
-
// Domains that are always noise — never contain real data APIs
|
|
47
|
-
const NOISE_DOMAINS = [
|
|
48
|
-
'doubleclick.net', 'googlesyndication.com', 'googletagmanager.com', 'googletagservices.com',
|
|
49
|
-
'google-analytics.com', 'googleadservices.com', 'googlesyndication.com',
|
|
50
|
-
'facebook.net', 'connect.facebook.net', 'fbcdn.net',
|
|
51
|
-
'segment.io', 'segment.com', 'cdn.segment.com',
|
|
52
|
-
'mixpanel.com', 'amplitude.com', 'heap.io', 'hotjar.com', 'fullstory.com',
|
|
53
|
-
'intercom.io', 'intercomcdn.com', 'newrelic.com', 'nr-data.net',
|
|
54
|
-
'sentry.io', 'ingest.sentry.io', 'datadog-logs-us.datadoghq.com',
|
|
55
|
-
'adsystem.amazon.com', 'amazon-adsystem.com',
|
|
56
|
-
'rubiconproject.com', 'pubmatic.com', 'openx.net', 'criteo.com', 'criteo.net',
|
|
57
|
-
'taboola.com', 'outbrain.com', 'moatads.com',
|
|
58
|
-
'id5-sync.com', 'id5.io',
|
|
59
|
-
'prebid.org', 'prebid.io',
|
|
60
|
-
'bidswitch.net', 'adnxs.com', 'smartadserver.com', 'spotxchange.com',
|
|
61
|
-
'liveramp.com', 'liveramp.net', 'rlcdn.com',
|
|
62
|
-
'quantserve.com', 'scorecardresearch.com', 'comscore.com',
|
|
63
|
-
'cloudflareinsights.com',
|
|
64
|
-
'hcaptcha.com', 'recaptcha.net',
|
|
65
|
-
'cookielaw.org', 'onetrust.com',
|
|
66
|
-
];
|
|
67
|
-
// URL path substrings that are always noise regardless of domain
|
|
68
|
-
const NOISE_PATH_SUBSTRINGS = [
|
|
69
|
-
'/openrtb', '/prebid', '/rtb/', '/hb/', '/vast', '/adserver', '/gpt/',
|
|
70
|
-
'/adsid/', '/pagead/', '/gampad',
|
|
71
|
-
'/cdn-cgi/challenge', '/cdn-cgi/rum',
|
|
72
|
-
'/beacon', '/collect', '/ping', '/tr?', '/pixel',
|
|
73
|
-
'/cookie_sync', '/cnsync/', '/usersync',
|
|
74
|
-
'/getconfig/sodar', '/sodar/',
|
|
75
|
-
'/webevents/', '/analytics/',
|
|
76
|
-
'/aircraft-icons/', '/site-svg', '/sprite',
|
|
77
|
-
'currency-file', '/agrp/prod/model_',
|
|
78
|
-
'/.hot-update.', '/_next/static/',
|
|
79
|
-
'/khaos.json',
|
|
80
|
-
];
|
|
81
46
|
// Window (ms) after a user action during which requests are considered action-triggered
|
|
82
47
|
const ACTION_CORRELATION_WINDOW_MS = 2000;
|
|
83
48
|
class Interceptor extends events_1.EventEmitter {
|
|
@@ -269,19 +234,7 @@ class Interceptor extends events_1.EventEmitter {
|
|
|
269
234
|
}
|
|
270
235
|
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
271
236
|
shouldIgnore(url) {
|
|
272
|
-
|
|
273
|
-
return true;
|
|
274
|
-
try {
|
|
275
|
-
const parsed = new URL(url);
|
|
276
|
-
const host = parsed.hostname.toLowerCase();
|
|
277
|
-
if (NOISE_DOMAINS.some(d => host === d || host.endsWith('.' + d)))
|
|
278
|
-
return true;
|
|
279
|
-
const full = (parsed.pathname + parsed.search).toLowerCase();
|
|
280
|
-
if (NOISE_PATH_SUBSTRINGS.some(p => full.includes(p)))
|
|
281
|
-
return true;
|
|
282
|
-
}
|
|
283
|
-
catch { /* ignore */ }
|
|
284
|
-
return false;
|
|
237
|
+
return url.startsWith("data:") || url.startsWith("blob:");
|
|
285
238
|
}
|
|
286
239
|
isAsset(url) {
|
|
287
240
|
try {
|
package/dist/interceptor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AAGtC,mCAAoC;AAEpC,kDAAkD;AAClD,MAAM,iBAAiB,GAAG;IACxB,UAAU;IACV,WAAW;IACX,YAAY;IACZ,WAAW;IACX,WAAW;IACX,SAAS;IACT,WAAW;IACX,UAAU;CACX,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B,aAAa;IACb,aAAa;IACb,YAAY;IACZ,WAAW;IACX,UAAU;IACV,YAAY;IACZ,UAAU;CACX,CAAC;AAEF,mCAAmC;AACnC,MAAM,eAAe,GAAG;IACtB,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU;IACrE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ;CACrD,CAAC;AAEF,wCAAwC;AACxC,MAAM,gBAAgB,GAAG;IACvB,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAC/D,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAClE,MAAM,EAAE,MAAM;CACf,CAAC;AAEF,8BAA8B;AAC9B,MAAM,oBAAoB,GAAG;IAC3B,kBAAkB;IAClB,iBAAiB;IACjB,UAAU;IACV,qBAAqB;IACrB,YAAY;IACZ,mCAAmC;CACpC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"interceptor.js","sourceRoot":"","sources":["../src/interceptor.ts"],"names":[],"mappings":"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"}
|
package/dist/observer.d.ts
CHANGED
package/dist/observer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAmB,aAAa,EAAe,MAAM,SAAS,CAAC;AAc3E,qBAAa,QAAQ;IACnB,OAAO,CAAC,IAAI,CAAO;gBAEP,IAAI,EAAE,IAAI;IAMhB,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAmB,aAAa,EAAe,MAAM,SAAS,CAAC;AAc3E,qBAAa,QAAQ;IACnB,OAAO,CAAC,IAAI,CAAO;gBAEP,IAAI,EAAE,IAAI;IAMhB,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAwLjC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA2B5E,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,uBAAuB;CAkChC"}
|
package/dist/observer.js
CHANGED
|
@@ -146,13 +146,11 @@ class Observer {
|
|
|
146
146
|
const typedElements = [];
|
|
147
147
|
for (const raw of result.elements) {
|
|
148
148
|
const type = this.resolveType(raw.tag, raw.type);
|
|
149
|
-
|
|
150
|
-
counters[type] = prevCount + 1;
|
|
149
|
+
counters[type] = (counters[type] ?? 0) + 1;
|
|
151
150
|
const id = `@${PREFIX[type]}${counters[type]}`;
|
|
152
151
|
typedElements.push({
|
|
153
152
|
id,
|
|
154
153
|
type,
|
|
155
|
-
nthIndex: prevCount, // 0-based — used for direct Playwright locator (page.locator(selector).nth(nthIndex))
|
|
156
154
|
text: raw.text || undefined,
|
|
157
155
|
placeholder: raw.placeholder,
|
|
158
156
|
href: raw.href,
|
|
@@ -172,6 +170,29 @@ class Observer {
|
|
|
172
170
|
text,
|
|
173
171
|
};
|
|
174
172
|
}
|
|
173
|
+
// Find an element by ID (@B3, @I1, etc.) and return its locator
|
|
174
|
+
async resolveElementId(id) {
|
|
175
|
+
const elements = await this.observe();
|
|
176
|
+
const el = elements.elements.find((e) => e.id === id);
|
|
177
|
+
if (!el)
|
|
178
|
+
return null;
|
|
179
|
+
// Get coordinates by re-querying the DOM
|
|
180
|
+
return await this.page.evaluate((targetText) => {
|
|
181
|
+
const all = document.querySelectorAll("button, input, a, select, textarea, [role='button']");
|
|
182
|
+
for (const el of Array.from(all)) {
|
|
183
|
+
const text = (el.textContent ?? "").replace(/\s+/g, " ").trim();
|
|
184
|
+
const aria = el.getAttribute("aria-label") ?? "";
|
|
185
|
+
if (text.includes(targetText) || aria.includes(targetText)) {
|
|
186
|
+
const rect = el.getBoundingClientRect();
|
|
187
|
+
return {
|
|
188
|
+
x: rect.left + rect.width / 2,
|
|
189
|
+
y: rect.top + rect.height / 2,
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
return null;
|
|
194
|
+
}, el.text ?? el.placeholder ?? "");
|
|
195
|
+
}
|
|
175
196
|
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
176
197
|
resolveType(tag, inputType) {
|
|
177
198
|
if (tag === "button")
|
package/dist/observer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.js","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"observer.js","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":";;;AAGA,6BAA6B;AAC7B,MAAM,MAAM,GAAgC;IAC1C,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,GAAG;CACX,CAAC;AAEF,MAAa,QAAQ;IACX,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,sEAAsE;IACtE,oDAAoD;IACpD,KAAK,CAAC,OAAO;QACX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YAC3C,MAAM,QAAQ,GAWT,EAAE,CAAC;YAER,MAAM,SAAS,GAAG,CAAC,EAAW,EAAW,EAAE;gBACzC,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;gBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBAC1C,OAAO,CACL,IAAI,CAAC,KAAK,GAAG,CAAC;oBACd,IAAI,CAAC,MAAM,GAAG,CAAC;oBACf,KAAK,CAAC,OAAO,KAAK,MAAM;oBACxB,KAAK,CAAC,UAAU,KAAK,QAAQ;oBAC7B,KAAK,CAAC,OAAO,KAAK,GAAG,CACtB,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,CAAC,EAAW,EAAU,EAAE;gBACtC,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;gBAC3C,IAAI,IAAI;oBAAE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBACvC,IAAI,KAAK;oBAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC/B,OAAO,CAAC,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC1E,CAAC,CAAC;YAEF,UAAU;YACV,QAAQ,CAAC,gBAAgB,CAAC,qEAAqE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9G,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBACjB,QAAQ,EAAG,EAAwB,CAAC,QAAQ,IAAI,KAAK;oBACrD,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;oBACtB,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,SAAS;iBACtD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,SAAS;YACT,QAAQ,CAAC,gBAAgB,CAAC,iHAAiH,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC1J,MAAM,KAAK,GAAG,EAAsB,CAAC;gBACrC,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,OAAO;oBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBACjB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,SAAS;oBAC3C,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS;oBAC/B,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ;YACR,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBAClD,MAAM,MAAM,GAAG,EAAuB,CAAC;gBACvC,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;gBACzB,IAAI,CAAC,IAAI;oBAAE,OAAO,CAAC,mBAAmB;gBACtC,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,MAAM;oBACX,IAAI;oBACJ,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,UAAU;YACV,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBACjD,MAAM,MAAM,GAAG,EAAuB,CAAC;gBACvC,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBACjB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,SAAS;oBAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,YAAY;YACZ,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBACnD,MAAM,QAAQ,GAAG,EAAyB,CAAC;gBAC3C,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,UAAU;oBACf,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBACjB,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,SAAS;oBAC9C,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,SAAS;oBAClC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,sBAAsB;YACtB,QAAQ,CAAC,gBAAgB,CAAC,6CAA6C,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBACtF,MAAM,KAAK,GAAG,EAAsB,CAAC;gBACrC,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,KAAK,CAAC,IAAI;oBACf,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBACjB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;oBAC9C,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,kBAAkB;YAClB,MAAM,cAAc,GAAG;gBACrB,iBAAiB;gBACjB,sBAAsB;gBACtB,QAAQ;gBACR,UAAU;gBACV,qBAAqB;aACtB,CAAC;YACF,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,CAC1C,CAAC;YAEF,0BAA0B;YAC1B,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YACvD,MAAM,eAAe,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAEzE,oBAAoB;YACpB,MAAM,gBAAgB,GAAG;gBACvB,oBAAoB;gBACpB,UAAU;gBACV,UAAU;gBACV,sBAAsB;aACvB,CAAC;YACF,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,CAC1C,CAAC;YAEF,OAAO;gBACL,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;gBACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,QAAQ;gBACR,QAAQ;gBACR,eAAe;gBACf,SAAS;aACV,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,uCAAuC;QACvC,MAAM,QAAQ,GAAyC,EAAE,CAAC;QAC1D,MAAM,aAAa,GAAsB,EAAE,CAAC;QAE5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAE/C,aAAa,CAAC,IAAI,CAAC;gBACjB,EAAE;gBACF,IAAI;gBACJ,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,SAAS;gBAC3B,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAEjE,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ,EAAE,aAAa;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI;SACL,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,gBAAgB,CAAC,EAAU;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QAErB,yCAAyC;QACzC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAkB,EAAE,EAAE;YACrD,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CACnC,qDAAqD,CACtD,CAAC;YACF,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChE,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBACjD,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC3D,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;oBACxC,OAAO;wBACL,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC;wBAC7B,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;qBAC9B,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,gFAAgF;IAExE,WAAW,CAAC,GAAW,EAAE,SAAkB;QACjD,IAAI,GAAG,KAAK,QAAQ;YAAE,OAAO,QAAQ,CAAC;QACtC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,IAAI,SAAS,KAAK,UAAU;gBAAE,OAAO,UAAU,CAAC;YAChD,IAAI,SAAS,KAAK,OAAO;gBAAE,OAAO,OAAO,CAAC;YAC1C,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAClC,IAAI,GAAG,KAAK,QAAQ;YAAE,OAAO,QAAQ,CAAC;QACtC,IAAI,GAAG,KAAK,UAAU;YAAE,OAAO,UAAU,CAAC;QAC1C,IAAI,GAAG,KAAK,UAAU;YAAE,OAAO,UAAU,CAAC;QAC1C,IAAI,GAAG,KAAK,OAAO;YAAE,OAAO,OAAO,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,uBAAuB,CAC7B,QAA2B,EAC3B,IAAqG;QAErG,MAAM,KAAK,GAAa;YACtB,SAAS,IAAI,CAAC,KAAK,EAAE;YACrB,QAAQ,IAAI,CAAC,GAAG,EAAE;SACnB,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC9E,IAAI,IAAI,CAAC,eAAe;YAAE,KAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAEpF,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,uBAAuB,CAAC,CAAC;QAExC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;QAE3D,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACzB,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,GAAG,CAAC;YACrC,IAAI,EAAE,CAAC,IAAI;gBAAE,IAAI,IAAI,KAAK,EAAE,CAAC,IAAI,GAAG,CAAC;YACrC,IAAI,EAAE,CAAC,WAAW;gBAAE,IAAI,IAAI,iBAAiB,EAAE,CAAC,WAAW,GAAG,CAAC;YAC/D,IAAI,EAAE,CAAC,KAAK;gBAAE,IAAI,IAAI,WAAW,EAAE,CAAC,KAAK,GAAG,CAAC;YAC7C,IAAI,EAAE,CAAC,IAAI;gBAAE,IAAI,IAAI,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YAClD,IAAI,EAAE,CAAC,QAAQ;gBAAE,IAAI,IAAI,aAAa,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,MAAM,kBAAkB,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CACF;AA7QD,4BA6QC"}
|
package/dist/session.d.ts
CHANGED
|
@@ -15,14 +15,8 @@ export declare class Session {
|
|
|
15
15
|
get url(): string;
|
|
16
16
|
observe(): Promise<ObserveResult>;
|
|
17
17
|
screenshot(): Promise<Screenshot>;
|
|
18
|
-
clickById(elementId: string
|
|
19
|
-
fillById(elementId: string, value: string
|
|
20
|
-
private resolveLocator;
|
|
21
|
-
getCookies(): Promise<Array<{
|
|
22
|
-
name: string;
|
|
23
|
-
value: string;
|
|
24
|
-
domain: string;
|
|
25
|
-
}>>;
|
|
18
|
+
clickById(elementId: string): Promise<void>;
|
|
19
|
+
fillById(elementId: string, value: string): Promise<void>;
|
|
26
20
|
getCapturedRequests(): CapturedRequest[];
|
|
27
21
|
getUsefulRequests(minScore?: number): CapturedRequest[];
|
|
28
22
|
getActionTriggeredRequests(): CapturedRequest[];
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,cAAc,EAEd,UAAU,EACV,SAAS,EACV,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,cAAc,CAAS;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGrC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE,QAAQ,EACZ,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM;IAkBd,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBhC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAIK,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAMjC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAYjC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3C,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/D,mBAAmB,IAAI,eAAe,EAAE;IAKxC,iBAAiB,CAAC,QAAQ,SAAI,GAAG,eAAe,EAAE;IAKlD,0BAA0B,IAAI,eAAe,EAAE;IAK/C,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,GAAG,IAAI;IAMlD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAiD9E,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAexF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAOjB,aAAa;CA8C5B"}
|
package/dist/session.js
CHANGED
|
@@ -3,18 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Session = void 0;
|
|
4
4
|
const interceptor_1 = require("./interceptor");
|
|
5
5
|
const observer_1 = require("./observer");
|
|
6
|
-
// Maps each ElementType to the CSS selector used to find all elements of that type in order.
|
|
7
|
-
// This MUST match the query order in observer.ts so nthIndex is consistent.
|
|
8
|
-
const TYPE_SELECTOR = {
|
|
9
|
-
button: "button, [role='button'], input[type='submit'], input[type='button']",
|
|
10
|
-
input: "input:not([type='submit']):not([type='button']):not([type='hidden']):not([type='checkbox']):not([type='radio'])",
|
|
11
|
-
link: "a[href]",
|
|
12
|
-
select: "select",
|
|
13
|
-
textarea: "textarea",
|
|
14
|
-
checkbox: "input[type='checkbox']",
|
|
15
|
-
radio: "input[type='radio']",
|
|
16
|
-
other: "[role='button']",
|
|
17
|
-
};
|
|
18
6
|
class Session {
|
|
19
7
|
page;
|
|
20
8
|
browser;
|
|
@@ -41,6 +29,16 @@ class Session {
|
|
|
41
29
|
waitUntil: "domcontentloaded",
|
|
42
30
|
timeout: this.defaultTimeout,
|
|
43
31
|
});
|
|
32
|
+
// Wait for network to go idle — catches XHR that SPAs fire after DOM is parsed.
|
|
33
|
+
// Wrapped in try/catch because pages with background polling never reach networkidle.
|
|
34
|
+
try {
|
|
35
|
+
await this.page.waitForLoadState("networkidle", { timeout: 8_000 });
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
// networkidle timed out — page likely has background polling, continue anyway
|
|
39
|
+
}
|
|
40
|
+
// Minimum 800ms after networkidle (or timeout) — some SPAs fire XHR slightly after idle
|
|
41
|
+
await this.page.waitForTimeout(800);
|
|
44
42
|
}
|
|
45
43
|
async wait(ms) {
|
|
46
44
|
await this.page.waitForTimeout(ms);
|
|
@@ -63,36 +61,20 @@ class Session {
|
|
|
63
61
|
}
|
|
64
62
|
// ─── Interaction ──────────────────────────────────────────────────────────────
|
|
65
63
|
// Click by element ID from observe() (e.g. @B3)
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (!locator)
|
|
64
|
+
async clickById(elementId) {
|
|
65
|
+
const coords = await this.observer.resolveElementId(elementId);
|
|
66
|
+
if (!coords)
|
|
70
67
|
throw new Error(`Element ${elementId} not found in DOM`);
|
|
71
|
-
await
|
|
68
|
+
await this.page.mouse.click(coords.x, coords.y);
|
|
72
69
|
}
|
|
73
70
|
// Fill input by element ID from observe()
|
|
74
|
-
async fillById(elementId, value
|
|
75
|
-
const
|
|
76
|
-
if (!
|
|
71
|
+
async fillById(elementId, value) {
|
|
72
|
+
const coords = await this.observer.resolveElementId(elementId);
|
|
73
|
+
if (!coords)
|
|
77
74
|
throw new Error(`Element ${elementId} not found in DOM`);
|
|
78
|
-
await
|
|
79
|
-
await
|
|
80
|
-
|
|
81
|
-
// Resolve an element ID to a Playwright Locator using nth-index (no re-observe needed).
|
|
82
|
-
// Falls back to a fresh observe() only if no cached observation is provided.
|
|
83
|
-
async resolveLocator(elementId, observation) {
|
|
84
|
-
const obs = observation ?? await this.observer.observe();
|
|
85
|
-
const el = obs.elements.find(e => e.id === elementId);
|
|
86
|
-
if (!el)
|
|
87
|
-
return null;
|
|
88
|
-
const selector = TYPE_SELECTOR[el.type];
|
|
89
|
-
if (!selector)
|
|
90
|
-
return null;
|
|
91
|
-
return this.page.locator(selector).nth(el.nthIndex);
|
|
92
|
-
}
|
|
93
|
-
// ─── Cookies ──────────────────────────────────────────────────────────────────
|
|
94
|
-
async getCookies() {
|
|
95
|
-
return this.page.context().cookies();
|
|
75
|
+
await this.page.mouse.click(coords.x, coords.y);
|
|
76
|
+
await this.page.keyboard.press("Control+a");
|
|
77
|
+
await this.page.keyboard.type(value);
|
|
96
78
|
}
|
|
97
79
|
// ─── Captured requests ────────────────────────────────────────────────────────
|
|
98
80
|
// All captured requests sorted by relevance score
|
|
@@ -120,17 +102,12 @@ class Session {
|
|
|
120
102
|
const observation = await this.observe();
|
|
121
103
|
let action;
|
|
122
104
|
let usedScreenshot = false;
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
const hasDoneFilledYet = steps.some((s) => s.action.type === "fill");
|
|
126
|
-
// If there are seed values and no fill has happened yet and no visible input detected,
|
|
127
|
-
// switch to screenshot — the search box might be a custom component not in the DOM observer.
|
|
128
|
-
const needsScreenshot = visibleElements.length === 0 ||
|
|
129
|
-
(seedValues?.length && !hasDoneFilledYet && visibleInputs.length === 0);
|
|
130
|
-
if (!needsScreenshot) {
|
|
105
|
+
// If observe() gives us enough elements, use text-based decision
|
|
106
|
+
if (observation.elements.filter((e) => e.visible).length > 0) {
|
|
131
107
|
action = await this.ai.decideFromObservation(goal, observation, history, seedValues);
|
|
132
108
|
}
|
|
133
109
|
else {
|
|
110
|
+
// Fallback: page has no readable elements (canvas, iframe, etc.) → screenshot
|
|
134
111
|
const shot = await this.screenshot();
|
|
135
112
|
action = await this.ai.decideFromScreenshot(goal, shot.base64, history, seedValues);
|
|
136
113
|
usedScreenshot = true;
|
|
@@ -144,8 +121,8 @@ class Session {
|
|
|
144
121
|
if (action.type === "impossible") {
|
|
145
122
|
return { success: false, steps, finalUrl: this.url, reason: action.reason };
|
|
146
123
|
}
|
|
147
|
-
// Execute action
|
|
148
|
-
await this.executeAction(action
|
|
124
|
+
// Execute action
|
|
125
|
+
await this.executeAction(action);
|
|
149
126
|
// Short wait after interactions for page to settle
|
|
150
127
|
await this.page.waitForTimeout(500);
|
|
151
128
|
}
|
|
@@ -160,8 +137,7 @@ class Session {
|
|
|
160
137
|
// seedValues: concrete example inputs to use during discovery (e.g. what to type in a search box)
|
|
161
138
|
async findData(goal, maxSteps = 15, seedValues) {
|
|
162
139
|
// Do NOT clear — requests captured during goto() (t=0) are valuable.
|
|
163
|
-
//
|
|
164
|
-
await this.page.waitForTimeout(500);
|
|
140
|
+
// goto() already waits for networkidle + 800ms minimum, so no additional delay needed here.
|
|
165
141
|
const actResult = await this.act(goal, maxSteps, seedValues);
|
|
166
142
|
const capturedRequests = this.interceptor.getUseful();
|
|
167
143
|
return {
|
|
@@ -179,32 +155,21 @@ class Session {
|
|
|
179
155
|
await this.browser.close();
|
|
180
156
|
}
|
|
181
157
|
// ─── Execute action ───────────────────────────────────────────────────────────
|
|
182
|
-
async executeAction(action
|
|
158
|
+
async executeAction(action) {
|
|
183
159
|
switch (action.type) {
|
|
184
160
|
case "click":
|
|
185
161
|
this.interceptor.markActionTimestamp();
|
|
186
|
-
await this.clickById(action.elementId
|
|
187
|
-
//
|
|
188
|
-
|
|
189
|
-
if (text)
|
|
190
|
-
await this.page.getByText(text).first().click({ timeout: 3000 }).catch(() => { });
|
|
162
|
+
await this.clickById(action.elementId).catch(async () => {
|
|
163
|
+
// If ID resolution fails, try clicking by text content
|
|
164
|
+
await this.page.getByText(action.elementId).first().click();
|
|
191
165
|
});
|
|
192
166
|
break;
|
|
193
167
|
case "fill":
|
|
194
168
|
this.interceptor.markActionTimestamp();
|
|
195
|
-
await this.fillById(action.elementId, action.value
|
|
196
|
-
|
|
197
|
-
await this.page.getByRole("textbox").first().fill(action.value).catch(() => { });
|
|
169
|
+
await this.fillById(action.elementId, action.value).catch(async () => {
|
|
170
|
+
await this.page.getByRole("textbox").first().fill(action.value);
|
|
198
171
|
});
|
|
199
172
|
break;
|
|
200
|
-
case "pressKey":
|
|
201
|
-
this.interceptor.markActionTimestamp();
|
|
202
|
-
await this.page.keyboard.press(action.key).catch(() => { });
|
|
203
|
-
// After Enter (form submit / search), wait longer for XHR to fire
|
|
204
|
-
if (action.key === "Enter") {
|
|
205
|
-
await this.page.waitForTimeout(1500);
|
|
206
|
-
}
|
|
207
|
-
break;
|
|
208
173
|
case "scroll":
|
|
209
174
|
this.interceptor.markActionTimestamp();
|
|
210
175
|
await this.page.evaluate(({ direction, amount }) => {
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ export type ElementType = "button" | "input" | "link" | "select" | "textarea" |
|
|
|
2
2
|
export interface ObservedElement {
|
|
3
3
|
id: string;
|
|
4
4
|
type: ElementType;
|
|
5
|
-
nthIndex: number;
|
|
6
5
|
text?: string;
|
|
7
6
|
placeholder?: string;
|
|
8
7
|
href?: string;
|
|
@@ -49,10 +48,6 @@ export type AgentAction = {
|
|
|
49
48
|
elementId: string;
|
|
50
49
|
value: string;
|
|
51
50
|
reason: string;
|
|
52
|
-
} | {
|
|
53
|
-
type: "pressKey";
|
|
54
|
-
key: string;
|
|
55
|
-
reason: string;
|
|
56
51
|
} | {
|
|
57
52
|
type: "scroll";
|
|
58
53
|
direction: "up" | "down";
|
|
@@ -95,7 +90,6 @@ export interface SessionConfig {
|
|
|
95
90
|
apiKey: string;
|
|
96
91
|
projectId: string;
|
|
97
92
|
};
|
|
98
|
-
cdpEndpoint?: string;
|
|
99
93
|
proxy?: {
|
|
100
94
|
server: string;
|
|
101
95
|
username?: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,OAAO,GACP,MAAM,GACN,QAAQ,GACR,UAAU,GACV,UAAU,GACV,OAAO,GACP,OAAO,CAAC;AAEZ,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|