browserclaw-agent 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/skills/fill-iframe-field.d.ts +7 -0
- package/dist/skills/fill-iframe-field.d.ts.map +1 -0
- package/dist/skills/fill-iframe-field.js +42 -0
- package/dist/skills/fill-iframe-field.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ export { defaultAgentConfig } from './config.js';
|
|
|
4
4
|
export type { AgentConfig } from './config.js';
|
|
5
5
|
export { runWithLlmConfig, getTokenUsage } from './llm.js';
|
|
6
6
|
export type { TokenUsage } from './llm.js';
|
|
7
|
+
export { fillIframeFieldByTokens } from './skills/fill-iframe-field.js';
|
|
8
|
+
export type { FillIframeFieldResult } from './skills/fill-iframe-field.js';
|
|
7
9
|
export type { AgentAction, AgentActionType, AgentLoopResult, AgentProgress, AgentStep, CatalogSkill, CreateSessionRequest, DomainLesson, DomainSkillEntry, LlmConfig, LlmProvider, Session, SessionStatus, SkillMetadata, SkillOutput, SkillStep, TaskLesson, UserMessage, } from './types.js';
|
|
8
10
|
export { HttpError, LlmParseError } from './types.js';
|
|
9
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC/F,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAExG,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC3D,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,YAAY,EACV,WAAW,EACX,eAAe,EACf,eAAe,EACf,aAAa,EACb,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,OAAO,EACP,aAAa,EACb,aAAa,EACb,WAAW,EACX,SAAS,EACT,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC/F,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAExG,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC3D,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,YAAY,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,YAAY,EACV,WAAW,EACX,eAAe,EACf,eAAe,EACf,aAAa,EACb,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,OAAO,EACP,aAAa,EACb,aAAa,EACb,WAAW,EACX,SAAS,EACT,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { runAgentLoop, buildInterjectionBlock, shouldCheckTermination } from './agent-loop.js';
|
|
2
2
|
export { defaultAgentConfig } from './config.js';
|
|
3
3
|
export { runWithLlmConfig, getTokenUsage } from './llm.js';
|
|
4
|
+
export { fillIframeFieldByTokens } from './skills/fill-iframe-field.js';
|
|
4
5
|
export { HttpError, LlmParseError } from './types.js';
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAG/F,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAG/F,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAuBxE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CrawlPage } from 'browserclaw';
|
|
2
|
+
export interface FillIframeFieldResult {
|
|
3
|
+
filled: boolean;
|
|
4
|
+
where?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function fillIframeFieldByTokens(page: CrawlPage, tokens: string[], value: string): Promise<FillIframeFieldResult>;
|
|
7
|
+
//# sourceMappingURL=fill-iframe-field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fill-iframe-field.d.ts","sourceRoot":"","sources":["../../src/skills/fill-iframe-field.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,MAAM,EAAE,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,CAAC,CAwChC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export async function fillIframeFieldByTokens(page, tokens, value) {
|
|
2
|
+
const normalized = tokens.map((t) => t.toLowerCase()).filter(Boolean);
|
|
3
|
+
if (normalized.length === 0)
|
|
4
|
+
return { filled: false };
|
|
5
|
+
const script = `(function() {
|
|
6
|
+
var keyTokens = ${JSON.stringify(normalized)};
|
|
7
|
+
var value = ${JSON.stringify(value)};
|
|
8
|
+
var inputs = Array.from(document.querySelectorAll('input, select'));
|
|
9
|
+
for (var i = 0; i < inputs.length; i++) {
|
|
10
|
+
var el = inputs[i];
|
|
11
|
+
if (el.disabled || el.readOnly) continue;
|
|
12
|
+
if (el instanceof window.HTMLInputElement && el.type === 'hidden') continue;
|
|
13
|
+
var attrSource = [
|
|
14
|
+
el.name, el.id,
|
|
15
|
+
el.getAttribute('autocomplete'),
|
|
16
|
+
el.getAttribute('data-field'),
|
|
17
|
+
el.getAttribute('aria-label'),
|
|
18
|
+
el.getAttribute('placeholder'),
|
|
19
|
+
].filter(Boolean).join(' ').toLowerCase();
|
|
20
|
+
var attrTokens = attrSource.split(/[^a-z0-9]+/).filter(Boolean);
|
|
21
|
+
var matchAll = keyTokens.every(function(k) { return attrTokens.indexOf(k) !== -1; });
|
|
22
|
+
if (!matchAll) continue;
|
|
23
|
+
var proto = el instanceof window.HTMLSelectElement
|
|
24
|
+
? window.HTMLSelectElement.prototype
|
|
25
|
+
: window.HTMLInputElement.prototype;
|
|
26
|
+
var setter = Object.getOwnPropertyDescriptor(proto, 'value');
|
|
27
|
+
if (setter && setter.set) { setter.set.call(el, value); }
|
|
28
|
+
else { el.value = value; }
|
|
29
|
+
el.dispatchEvent(new Event('input', { bubbles: true }));
|
|
30
|
+
el.dispatchEvent(new Event('change', { bubbles: true }));
|
|
31
|
+
return el.name || el.id || '?';
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
})()`;
|
|
35
|
+
const results = await page.evaluateInAllFrames(script);
|
|
36
|
+
for (const { result } of results) {
|
|
37
|
+
if (typeof result === 'string')
|
|
38
|
+
return { filled: true, where: result };
|
|
39
|
+
}
|
|
40
|
+
return { filled: false };
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=fill-iframe-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fill-iframe-field.js","sourceRoot":"","sources":["../../src/skills/fill-iframe-field.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAe,EACf,MAAgB,EAChB,KAAa;IAEb,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAEtD,MAAM,MAAM,GAAG;sBACK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;kBAC9B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BhC,CAAC;IAEN,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACvD,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACjC,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACzE,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC"}
|