donobu
Version:
Create browser automations with an LLM agent and replay them as Playwright scripts.
23 lines • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.HoverOverElementTool = void 0;
const ToolSchema_1 = require("../models/ToolSchema");
const TargetUtils_1 = require("../utils/TargetUtils");
const ReplayableInteraction_1 = require("./ReplayableInteraction");
class HoverOverElementTool extends ReplayableInteraction_1.ReplayableInteraction {
constructor() {
super(HoverOverElementTool.NAME, 'Hover the mouse over a specified element on a webpage.', ToolSchema_1.NoArgsSchema, ReplayableInteraction_1.SelectorBasedSchema, ReplayableInteraction_1.AnnotationBasedSchema);
}
async invoke(context, _parameters, handles) {
const element = handles.label ?? handles.target;
const page = (0, TargetUtils_1.webPage)(context);
await element.hover({ timeout: 3000 });
await context.interactionVisualizer.pointAt(page, element);
await page.waitForTimeout(HoverOverElementTool.HOVER_DURATION_MS);
return 'Hovered over: ';
}
}
exports.HoverOverElementTool = HoverOverElementTool;
HoverOverElementTool.NAME = 'hoverOverElement';
HoverOverElementTool.HOVER_DURATION_MS = 1000;
//# sourceMappingURL=HoverOverElementTool.js.map