browser-use-typescript
Version:
A TypeScript-based browser automation framework
80 lines • 2.65 kB
JavaScript
import { z } from "zod";
// Action Input Models as zod schemas
export const SearchGoogleActionSchema = z.object({
query: z.string(),
});
export const ClickElementBySelectorActionSchema = z.object({
css_selector: z.string(),
});
export const ClickElementByTextActionSchema = z.object({
text: z.string(),
nth: z.number().optional(),
});
export const GroupTabsActionSchema = z.object({
tab_ids: z.array(z.number()),
title: z.string(),
color: z.optional(z.object({
color: z.string().default("blue"),
description: z.string().describe("Color for the group (grey/blue/red/yellow/green/pink/purple/cyan)")
}))
});
export const UngroupTabsActionSchema = z.object({
tab_ids: z.array(z.number()).describe("List of tab IDs to ungroup")
});
export const ClickElementByXpathActionSchema = z.object({
xpath: z.string(),
});
export const GoToUrlActionSchema = z.object({
url: z.string(),
});
export const ScrolltoTextActionSchema = z.object({
text: z.string(),
});
export const ClickElementActionSchema = z.object({
index: z.number(),
xpath: z.string().optional(), // Optional[str] in Python
});
export const InputTextActionSchema = z.object({
index: z.number(),
text: z.string(),
xpath: z.string().optional(), // Optional[str] in Python
});
export const DoneActionSchema = z.object({
text: z.string(),
success: z.boolean(),
});
export const SwitchTabActionSchema = z.object({
page_id: z.number(),
});
export const OpenTabActionSchema = z.object({
url: z.string(),
});
export const ScrollActionSchema = z.object({
amount: z.number().optional(), // Optional[int] in Python
});
export const SendKeysActionSchema = z.object({
keys: z.string(),
});
export const ExtractPageContentActionSchema = z.object({
value: z.string(),
});
// NoParamsAction in Python discards all inputs
export const NoParamsActionSchema = z.object({});
// Union type for all possible actions
// Action type discriminator
export var ActionType;
(function (ActionType) {
ActionType["SEARCH_GOOGLE"] = "SEARCH_GOOGLE";
ActionType["GO_TO_URL"] = "GO_TO_URL";
ActionType["CLICK_ELEMENT"] = "CLICK_ELEMENT";
ActionType["INPUT_TEXT"] = "INPUT_TEXT";
ActionType["DONE"] = "DONE";
ActionType["SWITCH_TAB"] = "SWITCH_TAB";
ActionType["OPEN_TAB"] = "OPEN_TAB";
ActionType["SCROLL"] = "SCROLL";
ActionType["SEND_KEYS"] = "SEND_KEYS";
ActionType["EXTRACT_PAGE_CONTENT"] = "EXTRACT_PAGE_CONTENT";
ActionType["NO_PARAMS"] = "NO_PARAMS";
})(ActionType || (ActionType = {}));
// Action with type for discriminated union
//# sourceMappingURL=types.js.map